diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 3267f946a625..90cfff5147be 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -18,6 +18,7 @@ /azure-mgmt-datalake-store/ @ro-joowan /azure-mgmt-datamigration/ @vchske /azure-mgmt-eventgrid/ @kalyanaj +/azure-mgmt-hdinsight/ @wawon-msft /azure-mgmt-keyvault/ @schaabs /azure-mgmt-machinelearningcompute/ @shutchings /azure-mgmt-recoveryservices/ @DheerendraRathor diff --git a/.gitignore b/.gitignore index aeac92c5b51b..1d6c04b9bc2f 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,8 @@ __pycache__/ *.pyc .pytest_cache +.mypy_cache +.cache # Virtual environment env*/ @@ -26,7 +28,7 @@ build/ # Test results TestResults/ -# Credentials +# Credentials credentials_real.json testsettings_local.json testsettings_local.cfg @@ -66,4 +68,6 @@ src/build *.pubxml # [begoldsm] ignore virtual env if it exists. -adlEnv/ \ No newline at end of file +adlEnv/ + +code_reports \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index a9b7cdab7c52..b4b95fca3b1d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,7 +23,7 @@ matrix: python: "pypy3.5-5.8.0" dist: trusty - os: osx - osx_image: xcode7.3 + osx_image: xcode9.4 language: generic allow_failures: - os: osx @@ -34,7 +34,6 @@ matrix: # Perform the manual steps on osx to install python3 and activate venv before_install: - if [[ -n "$TRAVIS_TAG" && "$TRAVIS_PYTHON_VERSION" != "3.6" ]]; then travis_terminate 0; fi; # Deploy on 3.6 - - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew upgrade python; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then python3 -m venv venv; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then source venv/bin/activate; fi diff --git a/.vscode/settings.json b/.vscode/settings.json index 86be745c112b..e8c154f4987c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,4 +2,4 @@ "git.ignoreLimitWarning": true, "python.unitTest.pyTestArgs": [], "python.unitTest.pyTestEnabled": true -} \ No newline at end of file +} diff --git a/azure-applicationinsights/MANIFEST.in b/azure-applicationinsights/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-applicationinsights/MANIFEST.in +++ b/azure-applicationinsights/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-applicationinsights/README.rst b/azure-applicationinsights/README.rst index 47d9a1fe69b3..01181cde9839 100644 --- a/azure-applicationinsights/README.rst +++ b/azure-applicationinsights/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Application Insights Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-applicationinsights/azure/__init__.py b/azure-applicationinsights/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-applicationinsights/azure/__init__.py +++ b/azure-applicationinsights/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-applicationinsights/azure_bdist_wheel.py b/azure-applicationinsights/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-applicationinsights/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-applicationinsights/setup.cfg b/azure-applicationinsights/setup.cfg index 669e94e63df3..3c6e79cf31da 100644 --- a/azure-applicationinsights/setup.cfg +++ b/azure-applicationinsights/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-nspkg \ No newline at end of file diff --git a/azure-applicationinsights/setup.py b/azure-applicationinsights/setup.py index ea6a093aaec1..80142e19f197 100644 --- a/azure-applicationinsights/setup.py +++ b/azure-applicationinsights/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-applicationinsights" @@ -76,10 +70,16 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + ]), install_requires=[ - 'msrest>=0.5.4,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-nspkg'], + } ) diff --git a/azure-batch/HISTORY.rst b/azure-batch/HISTORY.rst index 37d849dc4c0e..ab4b9acd14f6 100644 --- a/azure-batch/HISTORY.rst +++ b/azure-batch/HISTORY.rst @@ -3,6 +3,44 @@ Release History =============== +5.1.1 (2018-10-16) +++++++++++++++++++ + +**Bugfixes** + +- Fix authentication class to allow HTTP session to be re-used + +**Note** + +- azure-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + +5.1.0 (2018-08-28) +++++++++++++++++++ + +- Update operation TaskOperations.add_collection with the following added functionality: + - Retry server side errors. + - Automatically chunk lists of more than 100 tasks to multiple requests. + - If tasks are too large to be submitted in chunks of 100, reduces number of tasks per request. + - Add a parameter to specify number of threads to use when submitting tasks. + +5.0.0 (2018-08-24) +++++++++++++++++++ + +- Using REST API version 2018-08-01.7.0. + - Added `node_agent_info` in ComputeNode to return the node agent information + - **Breaking** Removed the `validation_status` property from `TaskCounts`. + - **Breaking** The default caching type for `DataDisk` and `OSDisk` is now `read_write` instead of `none`. +- `BatchServiceClient` can be used as a context manager to keep the underlying HTTP session open for performance. +- **Breaking** Model signatures are now using only keywords-arguments syntax. Each positional argument must be rewritten as a keyword argument. +- **Breaking** The following operations signatures are changed: + - Operation PoolOperations.enable_auto_scale + - Operation TaskOperations.update + - Operation ComputeNodeOperations.reimage + - Operation ComputeNodeOperations.disable_scheduling + - Operation ComputeNodeOperations.reboot + - Operation JobOperations.terminate +- Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered. + 4.1.3 (2018-04-24) ++++++++++++++++++ @@ -36,10 +74,10 @@ Release History - Using REST API version 2017-09-01.6.0. - Added the ability to get a discount on Windows VM pricing if you have on-premises licenses for the OS SKUs you are deploying, via `license_type` on `VirtualMachineConfiguration`. - Added support for attaching empty data drives to `VirtualMachineConfiguration` based pools, via the new `data_disks` attribute on `VirtualMachineConfiguration`. -- [Breaking] Custom images must now be deployed using a reference to an ARM Image, instead of pointing to .vhd files in blobs directly. +- **Breaking** Custom images must now be deployed using a reference to an ARM Image, instead of pointing to .vhd files in blobs directly. - The new `virtual_machine_image_id` property on `ImageReference` contains the reference to the ARM Image, and `OSDisk.image_uris` no longer exists. - Because of this, `image_reference` is now a required attribute of `VirtualMachineConfiguration`. -- [Breaking] Multi-instance tasks (created using `MultiInstanceSettings`) must now specify a `coordination_commandLine`, and `number_of_instances` is now optional and defaults to 1. +- **Breaking** Multi-instance tasks (created using `MultiInstanceSettings`) must now specify a `coordination_commandLine`, and `number_of_instances` is now optional and defaults to 1. - Added support for tasks run using Docker containers. To run a task using a Docker container you must specify a `container_configuration` on the `VirtualMachineConfiguration` for a pool, and then add `container_settings` on the Task. 3.1.0 (2017-07-24) @@ -60,16 +98,16 @@ Release History - Added a new `allow_low_priority_node` property to `JobManagerTask`, which if `true` allows the `JobManagerTask` to run on a low-priority compute node. - `PoolResizeParameter` now takes two optional parameters, `target_dedicated_nodes` and `target_low_priority_nodes`, instead of one required parameter `target_dedicated`. At least one of these two parameters must be specified. -- Added support for uploading task output files to persistent storage, via the `OutputFiles` property on `CloudTask` and `JobManagerTask`. -- Added support for specifying actions to take based on a task's output file upload status, via the `file_upload_error` property on `ExitConditions`. +- Added support for uploading task output files to persistent storage, via the `OutputFiles` property on `CloudTask` and `JobManagerTask`. +- Added support for specifying actions to take based on a task's output file upload status, via the `file_upload_error` property on `ExitConditions`. - Added support for determining if a task was a success or a failure via the new `result` property on all task execution information objects. - Renamed `scheduling_error` on all task execution information objects to `failure_information`. `TaskFailureInformation` replaces `TaskSchedulingError` and is returned any - time there is a task failure. This includes all previous scheduling error cases, as well as nonzero task exit codes, and file upload failures from the new output files feature. + time there is a task failure. This includes all previous scheduling error cases, as well as nonzero task exit codes, and file upload failures from the new output files feature. - Renamed `SchedulingErrorCategory` enum to `ErrorCategory`. - Renamed `scheduling_error` on `ExitConditions` to `pre_processing_error` to more clearly clarify when the error took place in the task life-cycle. - Added support for provisioning application licenses to your pool, via a new `application_licenses` property on `PoolAddParameter`, `CloudPool` and `PoolSpecification`. Please note that this feature is in gated public preview, and you must request access to it via a support ticket. -- The `ssh_private_key` attribute of a `UserAccount` object has been replaced with an expanded `LinuxUserConfiguration` object with additional settings for a user ID and group ID of the +- The `ssh_private_key` attribute of a `UserAccount` object has been replaced with an expanded `LinuxUserConfiguration` object with additional settings for a user ID and group ID of the user account. - Removed `unmapped` enum state from `AddTaskStatus`, `CertificateFormat`, `CertificateVisibility`, `CertStoreLocation`, `ComputeNodeFillType`, `OSType`, and `PoolLifetimeOption` as they were not ever used. - Improved and clarified documentation. @@ -106,7 +144,7 @@ Release History - Added support for joining a CloudPool to a virtual network on using the network_configuration property. - Added support for application package references on CloudTask and JobManagerTask. -- Added support for automatically terminating jobs when all tasks complete or when a task fails, via the on_all_tasks_complete property and +- Added support for automatically terminating jobs when all tasks complete or when a task fails, via the on_all_tasks_complete property and the CloudTask exit_conditions property. 0.30.0rc5 diff --git a/azure-batch/MANIFEST.in b/azure-batch/MANIFEST.in index 9ecaeb15de50..73ef117329e5 100644 --- a/azure-batch/MANIFEST.in +++ b/azure-batch/MANIFEST.in @@ -1,2 +1,3 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py + diff --git a/azure-batch/README.rst b/azure-batch/README.rst index 3af1361da978..37197b4c9e8a 100644 --- a/azure-batch/README.rst +++ b/azure-batch/README.rst @@ -3,7 +3,9 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Batch Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. Compatibility @@ -28,14 +30,13 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `the Batch samples repo +For code examples, see `the Batch samples repo `__ on GitHub or see `Batch `__ on docs.microsoft.com. - Provide Feedback ================ diff --git a/azure-batch/azure/__init__.py b/azure-batch/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-batch/azure/__init__.py +++ b/azure-batch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-batch/azure/batch/batch_auth.py b/azure-batch/azure/batch/batch_auth.py index 088ae905cc47..928a3c15f846 100644 --- a/azure-batch/azure/batch/batch_auth.py +++ b/azure-batch/azure/batch/batch_auth.py @@ -53,8 +53,6 @@ def __call__(self, request): url = urlparse(request.url) uri_path = url.path - uri_path = uri_path.replace('%5C', '/') - uri_path = uri_path.replace('%2F', '/') # method to sign string_to_sign = request.method + '\n' @@ -118,10 +116,10 @@ def __init__(self, account_name, key): super(SharedKeyCredentials, self).__init__() self.auth = SharedKeyAuth(self.header, account_name, key) - def signed_session(self): + def signed_session(self, session=None): - session = super(SharedKeyCredentials, self).signed_session() + session = super(SharedKeyCredentials, self).signed_session(session=session) session.auth = self.auth return session - \ No newline at end of file + diff --git a/azure-batch/azure/batch/batch_service_client.py b/azure-batch/azure/batch/batch_service_client.py index 4a632937d3d2..bf0d624c9c47 100644 --- a/azure-batch/azure/batch/batch_service_client.py +++ b/azure-batch/azure/batch/batch_service_client.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.service_client import ServiceClient +from msrest.service_client import SDKClient from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION @@ -23,6 +23,7 @@ from .operations.task_operations import TaskOperations from .operations.compute_node_operations import ComputeNodeOperations from . import models +from .custom.patch import patch_client class BatchServiceClientConfiguration(AzureConfiguration): @@ -46,13 +47,13 @@ def __init__( super(BatchServiceClientConfiguration, self).__init__(base_url) - self.add_user_agent('batchserviceclient/{}'.format(VERSION)) + self.add_user_agent('azure-batch/{}'.format(VERSION)) self.add_user_agent('Azure-SDK-For-Python') self.credentials = credentials -class BatchServiceClient(object): +class BatchServiceClient(SDKClient): """A client for issuing REST requests to the Azure Batch service. :ivar config: Configuration for client. @@ -87,10 +88,10 @@ def __init__( self, credentials, base_url=None): self.config = BatchServiceClientConfiguration(credentials, base_url) - self._client = ServiceClient(self.config.credentials, self.config) + super(BatchServiceClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '2018-03-01.6.1' + self.api_version = '2018-08-01.7.0' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) @@ -112,3 +113,6 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.compute_node = ComputeNodeOperations( self._client, self.config, self._serialize, self._deserialize) + + +patch_client() diff --git a/azure-keyvault/azure/keyvault/custom/__init__.py b/azure-batch/azure/batch/custom/__init__.py similarity index 100% rename from azure-keyvault/azure/keyvault/custom/__init__.py rename to azure-batch/azure/batch/custom/__init__.py diff --git a/azure-batch/azure/batch/custom/custom_errors.py b/azure-batch/azure/batch/custom/custom_errors.py new file mode 100644 index 000000000000..17da723515f3 --- /dev/null +++ b/azure-batch/azure/batch/custom/custom_errors.py @@ -0,0 +1,19 @@ +# -------------------------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# -------------------------------------------------------------------------------------------- + + +class CreateTasksErrorException(Exception): + """ Aggregate Exception containing details for any failures from a task add operation. + + :param str message: Error message describing exit reason + :param [~TaskAddParameter] pending_task_list: List of tasks remaining to be submitted. + :param [~TaskAddResult] failure_tasks: List of tasks which failed to add + :param [~Exception] errors: List of unknown errors forcing early termination + """ + def __init__(self, message, pending_task_list=None, failure_tasks=None, errors=None): + self.message = message + self.pending_tasks = list(pending_task_list) + self.failure_tasks = list(failure_tasks) + self.errors = list(errors) diff --git a/azure-batch/azure/batch/custom/patch.py b/azure-batch/azure/batch/custom/patch.py new file mode 100644 index 000000000000..7fc04b15a898 --- /dev/null +++ b/azure-batch/azure/batch/custom/patch.py @@ -0,0 +1,301 @@ +import collections +import importlib +import logging +import threading +import types +import sys + +from ..models import BatchErrorException, TaskAddCollectionResult, TaskAddStatus +from ..custom.custom_errors import CreateTasksErrorException +from ..operations.task_operations import TaskOperations + +MAX_TASKS_PER_REQUEST = 100 +_LOGGER = logging.getLogger(__name__) + +class _TaskWorkflowManager(object): + """Worker class for one add_collection request + + :param ~TaskOperations task_operations: Parent object which instantiated this + :param str job_id: The ID of the job to which the task collection is to be + added. + :param tasks_to_add: The collection of tasks to add. + :type tasks_to_add: list of :class:`TaskAddParameter + ` + :param task_add_collection_options: Additional parameters for the + operation + :type task_add_collection_options: :class:`TaskAddCollectionOptions + ` + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + """ + + def __init__( + self, + client, + original_add_collection, + job_id, + tasks_to_add, + task_add_collection_options=None, + custom_headers=None, + raw=False, + **kwargs): + # Append operations thread safe - Only read once all threads have completed + # List of tasks which failed to add due to a returned client error + self._failure_tasks = collections.deque() + # List of unknown exceptions which occurred during requests. + self._errors = collections.deque() + + # synchronized through lock variables + self.error = None # Only written once all threads have completed + self._max_tasks_per_request = MAX_TASKS_PER_REQUEST + self._tasks_to_add = collections.deque(tasks_to_add) + + self._error_lock = threading.Lock() + self._max_tasks_lock = threading.Lock() + self._pending_queue_lock = threading.Lock() + + # Variables to be used for task add_collection requests + self._client = client + self._original_add_collection = original_add_collection + self._job_id = job_id + self._task_add_collection_options = task_add_collection_options + self._custom_headers = custom_headers + self._raw = raw + self._kwargs = dict(**kwargs) + + def _bulk_add_tasks(self, results_queue, chunk_tasks_to_add): + """Adds a chunk of tasks to the job + + Retry chunk if body exceeds the maximum request size and retry tasks + if failed due to server errors. + + :param results_queue: Queue to place the return value of the request + :type results_queue: collections.deque + :param chunk_tasks_to_add: Chunk of at most 100 tasks with retry details + :type chunk_tasks_to_add: list[~TrackedCloudTask] + """ + + try: + add_collection_response = self._original_add_collection( + self._client, + self._job_id, + chunk_tasks_to_add, + self._task_add_collection_options, + self._custom_headers, + self._raw) + except BatchErrorException as e: + # In case of a chunk exceeding the MaxMessageSize split chunk in half + # and resubmit smaller chunk requests + # TODO: Replace string with constant variable once available in SDK + if e.error.code == "RequestBodyTooLarge": # pylint: disable=no-member + # In this case the task is misbehaved and will not be able to be added due to: + # 1) The task exceeding the max message size + # 2) A single cell of the task exceeds the per-cell limit, or + # 3) Sum of all cells exceeds max row limit + if len(chunk_tasks_to_add) == 1: + failed_task = chunk_tasks_to_add.pop() + self._errors.appendleft(e) + _LOGGER.error("Failed to add task with ID %s due to the body" + " exceeding the maximum request size", failed_task.id) + else: + # Assumption: Tasks are relatively close in size therefore if one batch exceeds size limit + # we should decrease the initial task collection size to avoid repeating the error + # Midpoint is lower bounded by 1 due to above base case + midpoint = int(len(chunk_tasks_to_add) / 2) + # Restrict one thread at a time to do this compare and set, + # therefore forcing max_tasks_per_request to be strictly decreasing + with self._max_tasks_lock: + if midpoint < self._max_tasks_per_request: + self._max_tasks_per_request = midpoint + _LOGGER.info("Amount of tasks per request reduced from %s to %s due to the" + " request body being too large", str(self._max_tasks_per_request), + str(midpoint)) + + # Not the most efficient solution for all cases, but the goal of this is to handle this + # exception and have it work in all cases where tasks are well behaved + # Behavior retries as a smaller chunk and + # appends extra tasks to queue to be picked up by another thread . + self._tasks_to_add.extendleft(chunk_tasks_to_add[midpoint:]) + self._bulk_add_tasks(results_queue, chunk_tasks_to_add[:midpoint]) + # Retry server side errors + elif 500 <= e.response.status_code <= 599: + self._tasks_to_add.extendleft(chunk_tasks_to_add) + else: + # Re-add to pending queue as unknown status / don't have result + self._tasks_to_add.extendleft(chunk_tasks_to_add) + # Unknown State - don't know if tasks failed to add or were successful + self._errors.appendleft(e) + except Exception as e: # pylint: disable=broad-except + # Re-add to pending queue as unknown status / don't have result + self._tasks_to_add.extendleft(chunk_tasks_to_add) + # Unknown State - don't know if tasks failed to add or were successful + self._errors.appendleft(e) + else: + try: + add_collection_response = add_collection_response.output + except AttributeError: + pass + + for task_result in add_collection_response.value: # pylint: disable=no-member + if task_result.status == TaskAddStatus.server_error: + # Server error will be retried + with self._pending_queue_lock: + for task in chunk_tasks_to_add: + if task.id == task_result.task_id: + self._tasks_to_add.appendleft(task) + elif (task_result.status == TaskAddStatus.client_error + and not task_result.error.code == "TaskExists"): + # Client error will be recorded unless Task already exists + self._failure_tasks.appendleft(task_result) + else: + results_queue.appendleft(task_result) + + def task_collection_thread_handler(self, results_queue): + """Main method for worker to run + + Pops a chunk of tasks off the collection of pending tasks to be added and submits them to be added. + + :param collections.deque results_queue: Queue for worker to output results to + """ + # Add tasks until either we run out or we run into an unexpected error + while self._tasks_to_add and not self._errors: + max_tasks = self._max_tasks_per_request # local copy + chunk_tasks_to_add = [] + with self._pending_queue_lock: + while len(chunk_tasks_to_add) < max_tasks and self._tasks_to_add: + chunk_tasks_to_add.append(self._tasks_to_add.pop()) + + if chunk_tasks_to_add: + self._bulk_add_tasks(results_queue, chunk_tasks_to_add) + + # Only define error if all threads have finished and there were failures + with self._error_lock: + if threading.active_count() == 1 and (self._failure_tasks or self._errors): + self.error = CreateTasksErrorException( + "One or more tasks failed to be added", + self._failure_tasks, + self._tasks_to_add, + self._errors) + + +def _handle_output(results_queue): + """Scan output for exceptions + + If there is an output from an add task collection call add it to the results. + + :param results_queue: Queue containing results of attempted add_collection's + :type results_queue: collections.deque + :return: list of TaskAddResults + :rtype: list[~TaskAddResult] + """ + results = [] + while results_queue: + queue_item = results_queue.pop() + results.append(queue_item) + return results + + +def build_new_add_collection(original_add_collection): + def bulk_add_collection( + self, + job_id, + value, + task_add_collection_options=None, + custom_headers=None, + raw=False, + threads=0, + **operation_config): + """Adds a collection of tasks to the specified job. + + Note that each task must have a unique ID. The Batch service may not + return the results for each task in the same order the tasks were + submitted in this request. If the server times out or the connection is + closed during the request, the request may have been partially or fully + processed, or not at all. In such cases, the user should re-issue the + request. Note that it is up to the user to correctly handle failures + when re-issuing a request. For example, you should use the same task + IDs during a retry so that if the prior operation succeeded, the retry + will not create extra tasks unexpectedly. If the response contains any + tasks which failed to add, a client can retry the request. In a retry, + it is most efficient to resubmit only tasks that failed to add, and to + omit tasks that were successfully added on the first attempt. + + :param job_id: The ID of the job to which the task collection is to be + added. + :type job_id: str + :param value: The collection of tasks to add. The total serialized + size of this collection must be less than 4MB. If it is greater than + 4MB (for example if each task has 100's of resource files or + environment variables), the request will fail with code + 'RequestBodyTooLarge' and should be retried again with fewer tasks. + :type value: list of :class:`TaskAddParameter + ` + :param task_add_collection_options: Additional parameters for the + operation + :type task_add_collection_options: :class:`TaskAddCollectionOptions + ` + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param int threads: number of threads to use in parallel when adding tasks. If specified + and greater than 0, will start additional threads to submit requests and wait for them to finish. + Otherwise will submit add_collection requests sequentially on main thread + :return: :class:`TaskAddCollectionResult + ` or + :class:`ClientRawResponse` if + raw=true + :rtype: :class:`TaskAddCollectionResult + ` or + :class:`ClientRawResponse` + :raises: + :class:`CreateTasksErrorException` + """ + + results_queue = collections.deque() # deque operations(append/pop) are thread-safe + task_workflow_manager = _TaskWorkflowManager( + self, + original_add_collection, + job_id, + value, + task_add_collection_options, + custom_headers, + raw, + **operation_config) + + # multi-threaded behavior + if threads: + if threads < 0: + raise ValueError("Threads must be positive or 0") + + active_threads = [] + for i in range(threads): + active_threads.append(threading.Thread( + target=task_workflow_manager.task_collection_thread_handler, + args=(results_queue,))) + active_threads[-1].start() + for thread in active_threads: + thread.join() + # single-threaded behavior + else: + task_workflow_manager.task_collection_thread_handler(results_queue) + + if task_workflow_manager.error: + raise task_workflow_manager.error # pylint: disable=raising-bad-type + else: + submitted_tasks = _handle_output(results_queue) + return TaskAddCollectionResult(value=submitted_tasks) + bulk_add_collection.metadata = {'url': '/jobs/{jobId}/addtaskcollection'} + return bulk_add_collection + + +def patch_client(): + try: + models = sys.modules['azure.batch.models'] + except KeyError: + models = importlib.import_module('azure.batch.models') + setattr(models, 'CreateTasksErrorException', CreateTasksErrorException) + sys.modules['azure.batch.models'] = models + + operations_modules = importlib.import_module('azure.batch.operations') + operations_modules.TaskOperations.add_collection = build_new_add_collection(operations_modules.TaskOperations.add_collection) diff --git a/azure-batch/azure/batch/models/__init__.py b/azure-batch/azure/batch/models/__init__.py index 5aa5587c2ab9..5ffc99a73460 100644 --- a/azure-batch/azure/batch/models/__init__.py +++ b/azure-batch/azure/batch/models/__init__.py @@ -9,206 +9,410 @@ # regenerated. # -------------------------------------------------------------------------- -from .pool_usage_metrics import PoolUsageMetrics -from .image_reference import ImageReference -from .node_agent_sku import NodeAgentSku -from .authentication_token_settings import AuthenticationTokenSettings -from .usage_statistics import UsageStatistics -from .resource_statistics import ResourceStatistics -from .pool_statistics import PoolStatistics -from .job_statistics import JobStatistics -from .name_value_pair import NameValuePair -from .delete_certificate_error import DeleteCertificateError -from .certificate import Certificate -from .application_package_reference import ApplicationPackageReference -from .application_summary import ApplicationSummary -from .certificate_add_parameter import CertificateAddParameter -from .file_properties import FileProperties -from .node_file import NodeFile -from .schedule import Schedule -from .job_constraints import JobConstraints -from .container_registry import ContainerRegistry -from .task_container_settings import TaskContainerSettings -from .resource_file import ResourceFile -from .environment_setting import EnvironmentSetting -from .exit_options import ExitOptions -from .exit_code_mapping import ExitCodeMapping -from .exit_code_range_mapping import ExitCodeRangeMapping -from .exit_conditions import ExitConditions -from .auto_user_specification import AutoUserSpecification -from .user_identity import UserIdentity -from .linux_user_configuration import LinuxUserConfiguration -from .user_account import UserAccount -from .task_constraints import TaskConstraints -from .output_file_blob_container_destination import OutputFileBlobContainerDestination -from .output_file_destination import OutputFileDestination -from .output_file_upload_options import OutputFileUploadOptions -from .output_file import OutputFile -from .job_manager_task import JobManagerTask -from .job_preparation_task import JobPreparationTask -from .job_release_task import JobReleaseTask -from .task_scheduling_policy import TaskSchedulingPolicy -from .start_task import StartTask -from .certificate_reference import CertificateReference -from .metadata_item import MetadataItem -from .cloud_service_configuration import CloudServiceConfiguration -from .os_disk import OSDisk -from .windows_configuration import WindowsConfiguration -from .data_disk import DataDisk -from .container_configuration import ContainerConfiguration -from .virtual_machine_configuration import VirtualMachineConfiguration -from .network_security_group_rule import NetworkSecurityGroupRule -from .inbound_nat_pool import InboundNATPool -from .pool_endpoint_configuration import PoolEndpointConfiguration -from .network_configuration import NetworkConfiguration -from .pool_specification import PoolSpecification -from .auto_pool_specification import AutoPoolSpecification -from .pool_information import PoolInformation -from .job_specification import JobSpecification -from .recent_job import RecentJob -from .job_schedule_execution_information import JobScheduleExecutionInformation -from .job_schedule_statistics import JobScheduleStatistics -from .cloud_job_schedule import CloudJobSchedule -from .job_schedule_add_parameter import JobScheduleAddParameter -from .job_scheduling_error import JobSchedulingError -from .job_execution_information import JobExecutionInformation -from .cloud_job import CloudJob -from .job_add_parameter import JobAddParameter -from .task_container_execution_information import TaskContainerExecutionInformation -from .task_failure_information import TaskFailureInformation -from .job_preparation_task_execution_information import JobPreparationTaskExecutionInformation -from .job_release_task_execution_information import JobReleaseTaskExecutionInformation -from .job_preparation_and_release_task_execution_information import JobPreparationAndReleaseTaskExecutionInformation -from .task_counts import TaskCounts -from .auto_scale_run_error import AutoScaleRunError -from .auto_scale_run import AutoScaleRun -from .resize_error import ResizeError -from .cloud_pool import CloudPool -from .pool_add_parameter import PoolAddParameter -from .affinity_information import AffinityInformation -from .task_execution_information import TaskExecutionInformation -from .compute_node_information import ComputeNodeInformation -from .multi_instance_settings import MultiInstanceSettings -from .task_statistics import TaskStatistics -from .task_id_range import TaskIdRange -from .task_dependencies import TaskDependencies -from .cloud_task import CloudTask -from .task_add_parameter import TaskAddParameter -from .task_add_collection_parameter import TaskAddCollectionParameter -from .error_message import ErrorMessage -from .batch_error_detail import BatchErrorDetail -from .batch_error import BatchError, BatchErrorException -from .task_add_result import TaskAddResult -from .task_add_collection_result import TaskAddCollectionResult -from .subtask_information import SubtaskInformation -from .cloud_task_list_subtasks_result import CloudTaskListSubtasksResult -from .task_information import TaskInformation -from .start_task_information import StartTaskInformation -from .compute_node_error import ComputeNodeError -from .inbound_endpoint import InboundEndpoint -from .compute_node_endpoint_configuration import ComputeNodeEndpointConfiguration -from .compute_node import ComputeNode -from .compute_node_user import ComputeNodeUser -from .compute_node_get_remote_login_settings_result import ComputeNodeGetRemoteLoginSettingsResult -from .job_schedule_patch_parameter import JobSchedulePatchParameter -from .job_schedule_update_parameter import JobScheduleUpdateParameter -from .job_disable_parameter import JobDisableParameter -from .job_terminate_parameter import JobTerminateParameter -from .job_patch_parameter import JobPatchParameter -from .job_update_parameter import JobUpdateParameter -from .pool_enable_auto_scale_parameter import PoolEnableAutoScaleParameter -from .pool_evaluate_auto_scale_parameter import PoolEvaluateAutoScaleParameter -from .pool_resize_parameter import PoolResizeParameter -from .pool_update_properties_parameter import PoolUpdatePropertiesParameter -from .pool_upgrade_os_parameter import PoolUpgradeOSParameter -from .pool_patch_parameter import PoolPatchParameter -from .task_update_parameter import TaskUpdateParameter -from .node_update_user_parameter import NodeUpdateUserParameter -from .node_reboot_parameter import NodeRebootParameter -from .node_reimage_parameter import NodeReimageParameter -from .node_disable_scheduling_parameter import NodeDisableSchedulingParameter -from .node_remove_parameter import NodeRemoveParameter -from .upload_batch_service_logs_configuration import UploadBatchServiceLogsConfiguration -from .upload_batch_service_logs_result import UploadBatchServiceLogsResult -from .node_counts import NodeCounts -from .pool_node_counts import PoolNodeCounts -from .application_list_options import ApplicationListOptions -from .application_get_options import ApplicationGetOptions -from .pool_list_usage_metrics_options import PoolListUsageMetricsOptions -from .pool_get_all_lifetime_statistics_options import PoolGetAllLifetimeStatisticsOptions -from .pool_add_options import PoolAddOptions -from .pool_list_options import PoolListOptions -from .pool_delete_options import PoolDeleteOptions -from .pool_exists_options import PoolExistsOptions -from .pool_get_options import PoolGetOptions -from .pool_patch_options import PoolPatchOptions -from .pool_disable_auto_scale_options import PoolDisableAutoScaleOptions -from .pool_enable_auto_scale_options import PoolEnableAutoScaleOptions -from .pool_evaluate_auto_scale_options import PoolEvaluateAutoScaleOptions -from .pool_resize_options import PoolResizeOptions -from .pool_stop_resize_options import PoolStopResizeOptions -from .pool_update_properties_options import PoolUpdatePropertiesOptions -from .pool_upgrade_os_options import PoolUpgradeOsOptions -from .pool_remove_nodes_options import PoolRemoveNodesOptions -from .account_list_node_agent_skus_options import AccountListNodeAgentSkusOptions -from .account_list_pool_node_counts_options import AccountListPoolNodeCountsOptions -from .job_get_all_lifetime_statistics_options import JobGetAllLifetimeStatisticsOptions -from .job_delete_options import JobDeleteOptions -from .job_get_options import JobGetOptions -from .job_patch_options import JobPatchOptions -from .job_update_options import JobUpdateOptions -from .job_disable_options import JobDisableOptions -from .job_enable_options import JobEnableOptions -from .job_terminate_options import JobTerminateOptions -from .job_add_options import JobAddOptions -from .job_list_options import JobListOptions -from .job_list_from_job_schedule_options import JobListFromJobScheduleOptions -from .job_list_preparation_and_release_task_status_options import JobListPreparationAndReleaseTaskStatusOptions -from .job_get_task_counts_options import JobGetTaskCountsOptions -from .certificate_add_options import CertificateAddOptions -from .certificate_list_options import CertificateListOptions -from .certificate_cancel_deletion_options import CertificateCancelDeletionOptions -from .certificate_delete_options import CertificateDeleteOptions -from .certificate_get_options import CertificateGetOptions -from .file_delete_from_task_options import FileDeleteFromTaskOptions -from .file_get_from_task_options import FileGetFromTaskOptions -from .file_get_properties_from_task_options import FileGetPropertiesFromTaskOptions -from .file_delete_from_compute_node_options import FileDeleteFromComputeNodeOptions -from .file_get_from_compute_node_options import FileGetFromComputeNodeOptions -from .file_get_properties_from_compute_node_options import FileGetPropertiesFromComputeNodeOptions -from .file_list_from_task_options import FileListFromTaskOptions -from .file_list_from_compute_node_options import FileListFromComputeNodeOptions -from .job_schedule_exists_options import JobScheduleExistsOptions -from .job_schedule_delete_options import JobScheduleDeleteOptions -from .job_schedule_get_options import JobScheduleGetOptions -from .job_schedule_patch_options import JobSchedulePatchOptions -from .job_schedule_update_options import JobScheduleUpdateOptions -from .job_schedule_disable_options import JobScheduleDisableOptions -from .job_schedule_enable_options import JobScheduleEnableOptions -from .job_schedule_terminate_options import JobScheduleTerminateOptions -from .job_schedule_add_options import JobScheduleAddOptions -from .job_schedule_list_options import JobScheduleListOptions -from .task_add_options import TaskAddOptions -from .task_list_options import TaskListOptions -from .task_add_collection_options import TaskAddCollectionOptions -from .task_delete_options import TaskDeleteOptions -from .task_get_options import TaskGetOptions -from .task_update_options import TaskUpdateOptions -from .task_list_subtasks_options import TaskListSubtasksOptions -from .task_terminate_options import TaskTerminateOptions -from .task_reactivate_options import TaskReactivateOptions -from .compute_node_add_user_options import ComputeNodeAddUserOptions -from .compute_node_delete_user_options import ComputeNodeDeleteUserOptions -from .compute_node_update_user_options import ComputeNodeUpdateUserOptions -from .compute_node_get_options import ComputeNodeGetOptions -from .compute_node_reboot_options import ComputeNodeRebootOptions -from .compute_node_reimage_options import ComputeNodeReimageOptions -from .compute_node_disable_scheduling_options import ComputeNodeDisableSchedulingOptions -from .compute_node_enable_scheduling_options import ComputeNodeEnableSchedulingOptions -from .compute_node_get_remote_login_settings_options import ComputeNodeGetRemoteLoginSettingsOptions -from .compute_node_get_remote_desktop_options import ComputeNodeGetRemoteDesktopOptions -from .compute_node_upload_batch_service_logs_options import ComputeNodeUploadBatchServiceLogsOptions -from .compute_node_list_options import ComputeNodeListOptions +try: + from .pool_usage_metrics_py3 import PoolUsageMetrics + from .image_reference_py3 import ImageReference + from .node_agent_sku_py3 import NodeAgentSku + from .authentication_token_settings_py3 import AuthenticationTokenSettings + from .usage_statistics_py3 import UsageStatistics + from .resource_statistics_py3 import ResourceStatistics + from .pool_statistics_py3 import PoolStatistics + from .job_statistics_py3 import JobStatistics + from .name_value_pair_py3 import NameValuePair + from .delete_certificate_error_py3 import DeleteCertificateError + from .certificate_py3 import Certificate + from .application_package_reference_py3 import ApplicationPackageReference + from .application_summary_py3 import ApplicationSummary + from .certificate_add_parameter_py3 import CertificateAddParameter + from .file_properties_py3 import FileProperties + from .node_file_py3 import NodeFile + from .schedule_py3 import Schedule + from .job_constraints_py3 import JobConstraints + from .container_registry_py3 import ContainerRegistry + from .task_container_settings_py3 import TaskContainerSettings + from .resource_file_py3 import ResourceFile + from .environment_setting_py3 import EnvironmentSetting + from .exit_options_py3 import ExitOptions + from .exit_code_mapping_py3 import ExitCodeMapping + from .exit_code_range_mapping_py3 import ExitCodeRangeMapping + from .exit_conditions_py3 import ExitConditions + from .auto_user_specification_py3 import AutoUserSpecification + from .user_identity_py3 import UserIdentity + from .linux_user_configuration_py3 import LinuxUserConfiguration + from .user_account_py3 import UserAccount + from .task_constraints_py3 import TaskConstraints + from .output_file_blob_container_destination_py3 import OutputFileBlobContainerDestination + from .output_file_destination_py3 import OutputFileDestination + from .output_file_upload_options_py3 import OutputFileUploadOptions + from .output_file_py3 import OutputFile + from .job_manager_task_py3 import JobManagerTask + from .job_preparation_task_py3 import JobPreparationTask + from .job_release_task_py3 import JobReleaseTask + from .task_scheduling_policy_py3 import TaskSchedulingPolicy + from .start_task_py3 import StartTask + from .certificate_reference_py3 import CertificateReference + from .metadata_item_py3 import MetadataItem + from .cloud_service_configuration_py3 import CloudServiceConfiguration + from .os_disk_py3 import OSDisk + from .windows_configuration_py3 import WindowsConfiguration + from .data_disk_py3 import DataDisk + from .container_configuration_py3 import ContainerConfiguration + from .virtual_machine_configuration_py3 import VirtualMachineConfiguration + from .network_security_group_rule_py3 import NetworkSecurityGroupRule + from .inbound_nat_pool_py3 import InboundNATPool + from .pool_endpoint_configuration_py3 import PoolEndpointConfiguration + from .network_configuration_py3 import NetworkConfiguration + from .pool_specification_py3 import PoolSpecification + from .auto_pool_specification_py3 import AutoPoolSpecification + from .pool_information_py3 import PoolInformation + from .job_specification_py3 import JobSpecification + from .recent_job_py3 import RecentJob + from .job_schedule_execution_information_py3 import JobScheduleExecutionInformation + from .job_schedule_statistics_py3 import JobScheduleStatistics + from .cloud_job_schedule_py3 import CloudJobSchedule + from .job_schedule_add_parameter_py3 import JobScheduleAddParameter + from .job_scheduling_error_py3 import JobSchedulingError + from .job_execution_information_py3 import JobExecutionInformation + from .cloud_job_py3 import CloudJob + from .job_add_parameter_py3 import JobAddParameter + from .task_container_execution_information_py3 import TaskContainerExecutionInformation + from .task_failure_information_py3 import TaskFailureInformation + from .job_preparation_task_execution_information_py3 import JobPreparationTaskExecutionInformation + from .job_release_task_execution_information_py3 import JobReleaseTaskExecutionInformation + from .job_preparation_and_release_task_execution_information_py3 import JobPreparationAndReleaseTaskExecutionInformation + from .task_counts_py3 import TaskCounts + from .auto_scale_run_error_py3 import AutoScaleRunError + from .auto_scale_run_py3 import AutoScaleRun + from .resize_error_py3 import ResizeError + from .cloud_pool_py3 import CloudPool + from .pool_add_parameter_py3 import PoolAddParameter + from .affinity_information_py3 import AffinityInformation + from .task_execution_information_py3 import TaskExecutionInformation + from .compute_node_information_py3 import ComputeNodeInformation + from .node_agent_information_py3 import NodeAgentInformation + from .multi_instance_settings_py3 import MultiInstanceSettings + from .task_statistics_py3 import TaskStatistics + from .task_id_range_py3 import TaskIdRange + from .task_dependencies_py3 import TaskDependencies + from .cloud_task_py3 import CloudTask + from .task_add_parameter_py3 import TaskAddParameter + from .task_add_collection_parameter_py3 import TaskAddCollectionParameter + from .error_message_py3 import ErrorMessage + from .batch_error_detail_py3 import BatchErrorDetail + from .batch_error_py3 import BatchError, BatchErrorException + from .task_add_result_py3 import TaskAddResult + from .task_add_collection_result_py3 import TaskAddCollectionResult + from .subtask_information_py3 import SubtaskInformation + from .cloud_task_list_subtasks_result_py3 import CloudTaskListSubtasksResult + from .task_information_py3 import TaskInformation + from .start_task_information_py3 import StartTaskInformation + from .compute_node_error_py3 import ComputeNodeError + from .inbound_endpoint_py3 import InboundEndpoint + from .compute_node_endpoint_configuration_py3 import ComputeNodeEndpointConfiguration + from .compute_node_py3 import ComputeNode + from .compute_node_user_py3 import ComputeNodeUser + from .compute_node_get_remote_login_settings_result_py3 import ComputeNodeGetRemoteLoginSettingsResult + from .job_schedule_patch_parameter_py3 import JobSchedulePatchParameter + from .job_schedule_update_parameter_py3 import JobScheduleUpdateParameter + from .job_disable_parameter_py3 import JobDisableParameter + from .job_terminate_parameter_py3 import JobTerminateParameter + from .job_patch_parameter_py3 import JobPatchParameter + from .job_update_parameter_py3 import JobUpdateParameter + from .pool_enable_auto_scale_parameter_py3 import PoolEnableAutoScaleParameter + from .pool_evaluate_auto_scale_parameter_py3 import PoolEvaluateAutoScaleParameter + from .pool_resize_parameter_py3 import PoolResizeParameter + from .pool_update_properties_parameter_py3 import PoolUpdatePropertiesParameter + from .pool_upgrade_os_parameter_py3 import PoolUpgradeOSParameter + from .pool_patch_parameter_py3 import PoolPatchParameter + from .task_update_parameter_py3 import TaskUpdateParameter + from .node_update_user_parameter_py3 import NodeUpdateUserParameter + from .node_reboot_parameter_py3 import NodeRebootParameter + from .node_reimage_parameter_py3 import NodeReimageParameter + from .node_disable_scheduling_parameter_py3 import NodeDisableSchedulingParameter + from .node_remove_parameter_py3 import NodeRemoveParameter + from .upload_batch_service_logs_configuration_py3 import UploadBatchServiceLogsConfiguration + from .upload_batch_service_logs_result_py3 import UploadBatchServiceLogsResult + from .node_counts_py3 import NodeCounts + from .pool_node_counts_py3 import PoolNodeCounts + from .application_list_options_py3 import ApplicationListOptions + from .application_get_options_py3 import ApplicationGetOptions + from .pool_list_usage_metrics_options_py3 import PoolListUsageMetricsOptions + from .pool_get_all_lifetime_statistics_options_py3 import PoolGetAllLifetimeStatisticsOptions + from .pool_add_options_py3 import PoolAddOptions + from .pool_list_options_py3 import PoolListOptions + from .pool_delete_options_py3 import PoolDeleteOptions + from .pool_exists_options_py3 import PoolExistsOptions + from .pool_get_options_py3 import PoolGetOptions + from .pool_patch_options_py3 import PoolPatchOptions + from .pool_disable_auto_scale_options_py3 import PoolDisableAutoScaleOptions + from .pool_enable_auto_scale_options_py3 import PoolEnableAutoScaleOptions + from .pool_evaluate_auto_scale_options_py3 import PoolEvaluateAutoScaleOptions + from .pool_resize_options_py3 import PoolResizeOptions + from .pool_stop_resize_options_py3 import PoolStopResizeOptions + from .pool_update_properties_options_py3 import PoolUpdatePropertiesOptions + from .pool_upgrade_os_options_py3 import PoolUpgradeOsOptions + from .pool_remove_nodes_options_py3 import PoolRemoveNodesOptions + from .account_list_node_agent_skus_options_py3 import AccountListNodeAgentSkusOptions + from .account_list_pool_node_counts_options_py3 import AccountListPoolNodeCountsOptions + from .job_get_all_lifetime_statistics_options_py3 import JobGetAllLifetimeStatisticsOptions + from .job_delete_options_py3 import JobDeleteOptions + from .job_get_options_py3 import JobGetOptions + from .job_patch_options_py3 import JobPatchOptions + from .job_update_options_py3 import JobUpdateOptions + from .job_disable_options_py3 import JobDisableOptions + from .job_enable_options_py3 import JobEnableOptions + from .job_terminate_options_py3 import JobTerminateOptions + from .job_add_options_py3 import JobAddOptions + from .job_list_options_py3 import JobListOptions + from .job_list_from_job_schedule_options_py3 import JobListFromJobScheduleOptions + from .job_list_preparation_and_release_task_status_options_py3 import JobListPreparationAndReleaseTaskStatusOptions + from .job_get_task_counts_options_py3 import JobGetTaskCountsOptions + from .certificate_add_options_py3 import CertificateAddOptions + from .certificate_list_options_py3 import CertificateListOptions + from .certificate_cancel_deletion_options_py3 import CertificateCancelDeletionOptions + from .certificate_delete_options_py3 import CertificateDeleteOptions + from .certificate_get_options_py3 import CertificateGetOptions + from .file_delete_from_task_options_py3 import FileDeleteFromTaskOptions + from .file_get_from_task_options_py3 import FileGetFromTaskOptions + from .file_get_properties_from_task_options_py3 import FileGetPropertiesFromTaskOptions + from .file_delete_from_compute_node_options_py3 import FileDeleteFromComputeNodeOptions + from .file_get_from_compute_node_options_py3 import FileGetFromComputeNodeOptions + from .file_get_properties_from_compute_node_options_py3 import FileGetPropertiesFromComputeNodeOptions + from .file_list_from_task_options_py3 import FileListFromTaskOptions + from .file_list_from_compute_node_options_py3 import FileListFromComputeNodeOptions + from .job_schedule_exists_options_py3 import JobScheduleExistsOptions + from .job_schedule_delete_options_py3 import JobScheduleDeleteOptions + from .job_schedule_get_options_py3 import JobScheduleGetOptions + from .job_schedule_patch_options_py3 import JobSchedulePatchOptions + from .job_schedule_update_options_py3 import JobScheduleUpdateOptions + from .job_schedule_disable_options_py3 import JobScheduleDisableOptions + from .job_schedule_enable_options_py3 import JobScheduleEnableOptions + from .job_schedule_terminate_options_py3 import JobScheduleTerminateOptions + from .job_schedule_add_options_py3 import JobScheduleAddOptions + from .job_schedule_list_options_py3 import JobScheduleListOptions + from .task_add_options_py3 import TaskAddOptions + from .task_list_options_py3 import TaskListOptions + from .task_add_collection_options_py3 import TaskAddCollectionOptions + from .task_delete_options_py3 import TaskDeleteOptions + from .task_get_options_py3 import TaskGetOptions + from .task_update_options_py3 import TaskUpdateOptions + from .task_list_subtasks_options_py3 import TaskListSubtasksOptions + from .task_terminate_options_py3 import TaskTerminateOptions + from .task_reactivate_options_py3 import TaskReactivateOptions + from .compute_node_add_user_options_py3 import ComputeNodeAddUserOptions + from .compute_node_delete_user_options_py3 import ComputeNodeDeleteUserOptions + from .compute_node_update_user_options_py3 import ComputeNodeUpdateUserOptions + from .compute_node_get_options_py3 import ComputeNodeGetOptions + from .compute_node_reboot_options_py3 import ComputeNodeRebootOptions + from .compute_node_reimage_options_py3 import ComputeNodeReimageOptions + from .compute_node_disable_scheduling_options_py3 import ComputeNodeDisableSchedulingOptions + from .compute_node_enable_scheduling_options_py3 import ComputeNodeEnableSchedulingOptions + from .compute_node_get_remote_login_settings_options_py3 import ComputeNodeGetRemoteLoginSettingsOptions + from .compute_node_get_remote_desktop_options_py3 import ComputeNodeGetRemoteDesktopOptions + from .compute_node_upload_batch_service_logs_options_py3 import ComputeNodeUploadBatchServiceLogsOptions + from .compute_node_list_options_py3 import ComputeNodeListOptions +except (SyntaxError, ImportError): + from .pool_usage_metrics import PoolUsageMetrics + from .image_reference import ImageReference + from .node_agent_sku import NodeAgentSku + from .authentication_token_settings import AuthenticationTokenSettings + from .usage_statistics import UsageStatistics + from .resource_statistics import ResourceStatistics + from .pool_statistics import PoolStatistics + from .job_statistics import JobStatistics + from .name_value_pair import NameValuePair + from .delete_certificate_error import DeleteCertificateError + from .certificate import Certificate + from .application_package_reference import ApplicationPackageReference + from .application_summary import ApplicationSummary + from .certificate_add_parameter import CertificateAddParameter + from .file_properties import FileProperties + from .node_file import NodeFile + from .schedule import Schedule + from .job_constraints import JobConstraints + from .container_registry import ContainerRegistry + from .task_container_settings import TaskContainerSettings + from .resource_file import ResourceFile + from .environment_setting import EnvironmentSetting + from .exit_options import ExitOptions + from .exit_code_mapping import ExitCodeMapping + from .exit_code_range_mapping import ExitCodeRangeMapping + from .exit_conditions import ExitConditions + from .auto_user_specification import AutoUserSpecification + from .user_identity import UserIdentity + from .linux_user_configuration import LinuxUserConfiguration + from .user_account import UserAccount + from .task_constraints import TaskConstraints + from .output_file_blob_container_destination import OutputFileBlobContainerDestination + from .output_file_destination import OutputFileDestination + from .output_file_upload_options import OutputFileUploadOptions + from .output_file import OutputFile + from .job_manager_task import JobManagerTask + from .job_preparation_task import JobPreparationTask + from .job_release_task import JobReleaseTask + from .task_scheduling_policy import TaskSchedulingPolicy + from .start_task import StartTask + from .certificate_reference import CertificateReference + from .metadata_item import MetadataItem + from .cloud_service_configuration import CloudServiceConfiguration + from .os_disk import OSDisk + from .windows_configuration import WindowsConfiguration + from .data_disk import DataDisk + from .container_configuration import ContainerConfiguration + from .virtual_machine_configuration import VirtualMachineConfiguration + from .network_security_group_rule import NetworkSecurityGroupRule + from .inbound_nat_pool import InboundNATPool + from .pool_endpoint_configuration import PoolEndpointConfiguration + from .network_configuration import NetworkConfiguration + from .pool_specification import PoolSpecification + from .auto_pool_specification import AutoPoolSpecification + from .pool_information import PoolInformation + from .job_specification import JobSpecification + from .recent_job import RecentJob + from .job_schedule_execution_information import JobScheduleExecutionInformation + from .job_schedule_statistics import JobScheduleStatistics + from .cloud_job_schedule import CloudJobSchedule + from .job_schedule_add_parameter import JobScheduleAddParameter + from .job_scheduling_error import JobSchedulingError + from .job_execution_information import JobExecutionInformation + from .cloud_job import CloudJob + from .job_add_parameter import JobAddParameter + from .task_container_execution_information import TaskContainerExecutionInformation + from .task_failure_information import TaskFailureInformation + from .job_preparation_task_execution_information import JobPreparationTaskExecutionInformation + from .job_release_task_execution_information import JobReleaseTaskExecutionInformation + from .job_preparation_and_release_task_execution_information import JobPreparationAndReleaseTaskExecutionInformation + from .task_counts import TaskCounts + from .auto_scale_run_error import AutoScaleRunError + from .auto_scale_run import AutoScaleRun + from .resize_error import ResizeError + from .cloud_pool import CloudPool + from .pool_add_parameter import PoolAddParameter + from .affinity_information import AffinityInformation + from .task_execution_information import TaskExecutionInformation + from .compute_node_information import ComputeNodeInformation + from .node_agent_information import NodeAgentInformation + from .multi_instance_settings import MultiInstanceSettings + from .task_statistics import TaskStatistics + from .task_id_range import TaskIdRange + from .task_dependencies import TaskDependencies + from .cloud_task import CloudTask + from .task_add_parameter import TaskAddParameter + from .task_add_collection_parameter import TaskAddCollectionParameter + from .error_message import ErrorMessage + from .batch_error_detail import BatchErrorDetail + from .batch_error import BatchError, BatchErrorException + from .task_add_result import TaskAddResult + from .task_add_collection_result import TaskAddCollectionResult + from .subtask_information import SubtaskInformation + from .cloud_task_list_subtasks_result import CloudTaskListSubtasksResult + from .task_information import TaskInformation + from .start_task_information import StartTaskInformation + from .compute_node_error import ComputeNodeError + from .inbound_endpoint import InboundEndpoint + from .compute_node_endpoint_configuration import ComputeNodeEndpointConfiguration + from .compute_node import ComputeNode + from .compute_node_user import ComputeNodeUser + from .compute_node_get_remote_login_settings_result import ComputeNodeGetRemoteLoginSettingsResult + from .job_schedule_patch_parameter import JobSchedulePatchParameter + from .job_schedule_update_parameter import JobScheduleUpdateParameter + from .job_disable_parameter import JobDisableParameter + from .job_terminate_parameter import JobTerminateParameter + from .job_patch_parameter import JobPatchParameter + from .job_update_parameter import JobUpdateParameter + from .pool_enable_auto_scale_parameter import PoolEnableAutoScaleParameter + from .pool_evaluate_auto_scale_parameter import PoolEvaluateAutoScaleParameter + from .pool_resize_parameter import PoolResizeParameter + from .pool_update_properties_parameter import PoolUpdatePropertiesParameter + from .pool_upgrade_os_parameter import PoolUpgradeOSParameter + from .pool_patch_parameter import PoolPatchParameter + from .task_update_parameter import TaskUpdateParameter + from .node_update_user_parameter import NodeUpdateUserParameter + from .node_reboot_parameter import NodeRebootParameter + from .node_reimage_parameter import NodeReimageParameter + from .node_disable_scheduling_parameter import NodeDisableSchedulingParameter + from .node_remove_parameter import NodeRemoveParameter + from .upload_batch_service_logs_configuration import UploadBatchServiceLogsConfiguration + from .upload_batch_service_logs_result import UploadBatchServiceLogsResult + from .node_counts import NodeCounts + from .pool_node_counts import PoolNodeCounts + from .application_list_options import ApplicationListOptions + from .application_get_options import ApplicationGetOptions + from .pool_list_usage_metrics_options import PoolListUsageMetricsOptions + from .pool_get_all_lifetime_statistics_options import PoolGetAllLifetimeStatisticsOptions + from .pool_add_options import PoolAddOptions + from .pool_list_options import PoolListOptions + from .pool_delete_options import PoolDeleteOptions + from .pool_exists_options import PoolExistsOptions + from .pool_get_options import PoolGetOptions + from .pool_patch_options import PoolPatchOptions + from .pool_disable_auto_scale_options import PoolDisableAutoScaleOptions + from .pool_enable_auto_scale_options import PoolEnableAutoScaleOptions + from .pool_evaluate_auto_scale_options import PoolEvaluateAutoScaleOptions + from .pool_resize_options import PoolResizeOptions + from .pool_stop_resize_options import PoolStopResizeOptions + from .pool_update_properties_options import PoolUpdatePropertiesOptions + from .pool_upgrade_os_options import PoolUpgradeOsOptions + from .pool_remove_nodes_options import PoolRemoveNodesOptions + from .account_list_node_agent_skus_options import AccountListNodeAgentSkusOptions + from .account_list_pool_node_counts_options import AccountListPoolNodeCountsOptions + from .job_get_all_lifetime_statistics_options import JobGetAllLifetimeStatisticsOptions + from .job_delete_options import JobDeleteOptions + from .job_get_options import JobGetOptions + from .job_patch_options import JobPatchOptions + from .job_update_options import JobUpdateOptions + from .job_disable_options import JobDisableOptions + from .job_enable_options import JobEnableOptions + from .job_terminate_options import JobTerminateOptions + from .job_add_options import JobAddOptions + from .job_list_options import JobListOptions + from .job_list_from_job_schedule_options import JobListFromJobScheduleOptions + from .job_list_preparation_and_release_task_status_options import JobListPreparationAndReleaseTaskStatusOptions + from .job_get_task_counts_options import JobGetTaskCountsOptions + from .certificate_add_options import CertificateAddOptions + from .certificate_list_options import CertificateListOptions + from .certificate_cancel_deletion_options import CertificateCancelDeletionOptions + from .certificate_delete_options import CertificateDeleteOptions + from .certificate_get_options import CertificateGetOptions + from .file_delete_from_task_options import FileDeleteFromTaskOptions + from .file_get_from_task_options import FileGetFromTaskOptions + from .file_get_properties_from_task_options import FileGetPropertiesFromTaskOptions + from .file_delete_from_compute_node_options import FileDeleteFromComputeNodeOptions + from .file_get_from_compute_node_options import FileGetFromComputeNodeOptions + from .file_get_properties_from_compute_node_options import FileGetPropertiesFromComputeNodeOptions + from .file_list_from_task_options import FileListFromTaskOptions + from .file_list_from_compute_node_options import FileListFromComputeNodeOptions + from .job_schedule_exists_options import JobScheduleExistsOptions + from .job_schedule_delete_options import JobScheduleDeleteOptions + from .job_schedule_get_options import JobScheduleGetOptions + from .job_schedule_patch_options import JobSchedulePatchOptions + from .job_schedule_update_options import JobScheduleUpdateOptions + from .job_schedule_disable_options import JobScheduleDisableOptions + from .job_schedule_enable_options import JobScheduleEnableOptions + from .job_schedule_terminate_options import JobScheduleTerminateOptions + from .job_schedule_add_options import JobScheduleAddOptions + from .job_schedule_list_options import JobScheduleListOptions + from .task_add_options import TaskAddOptions + from .task_list_options import TaskListOptions + from .task_add_collection_options import TaskAddCollectionOptions + from .task_delete_options import TaskDeleteOptions + from .task_get_options import TaskGetOptions + from .task_update_options import TaskUpdateOptions + from .task_list_subtasks_options import TaskListSubtasksOptions + from .task_terminate_options import TaskTerminateOptions + from .task_reactivate_options import TaskReactivateOptions + from .compute_node_add_user_options import ComputeNodeAddUserOptions + from .compute_node_delete_user_options import ComputeNodeDeleteUserOptions + from .compute_node_update_user_options import ComputeNodeUpdateUserOptions + from .compute_node_get_options import ComputeNodeGetOptions + from .compute_node_reboot_options import ComputeNodeRebootOptions + from .compute_node_reimage_options import ComputeNodeReimageOptions + from .compute_node_disable_scheduling_options import ComputeNodeDisableSchedulingOptions + from .compute_node_enable_scheduling_options import ComputeNodeEnableSchedulingOptions + from .compute_node_get_remote_login_settings_options import ComputeNodeGetRemoteLoginSettingsOptions + from .compute_node_get_remote_desktop_options import ComputeNodeGetRemoteDesktopOptions + from .compute_node_upload_batch_service_logs_options import ComputeNodeUploadBatchServiceLogsOptions + from .compute_node_list_options import ComputeNodeListOptions from .application_summary_paged import ApplicationSummaryPaged from .pool_usage_metrics_paged import PoolUsageMetricsPaged from .cloud_pool_paged import CloudPoolPaged @@ -247,7 +451,6 @@ JobPreparationTaskState, TaskExecutionResult, JobReleaseTaskState, - TaskCountValidationStatus, PoolState, AllocationState, TaskState, @@ -343,6 +546,7 @@ 'AffinityInformation', 'TaskExecutionInformation', 'ComputeNodeInformation', + 'NodeAgentInformation', 'MultiInstanceSettings', 'TaskStatistics', 'TaskIdRange', @@ -501,7 +705,6 @@ 'JobPreparationTaskState', 'TaskExecutionResult', 'JobReleaseTaskState', - 'TaskCountValidationStatus', 'PoolState', 'AllocationState', 'TaskState', diff --git a/azure-batch/azure/batch/models/account_list_node_agent_skus_options.py b/azure-batch/azure/batch/models/account_list_node_agent_skus_options.py index e0b13f9f29b3..6cc1c050b3fb 100644 --- a/azure-batch/azure/batch/models/account_list_node_agent_skus_options.py +++ b/azure-batch/azure/batch/models/account_list_node_agent_skus_options.py @@ -38,11 +38,20 @@ class AccountListNodeAgentSkusOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(AccountListNodeAgentSkusOptions, self).__init__() - self.filter = filter - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(AccountListNodeAgentSkusOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/account_list_node_agent_skus_options_py3.py b/azure-batch/azure/batch/models/account_list_node_agent_skus_options_py3.py new file mode 100644 index 000000000000..01d06fb1eecf --- /dev/null +++ b/azure-batch/azure/batch/models/account_list_node_agent_skus_options_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccountListNodeAgentSkusOptions(Model): + """Additional parameters for list_node_agent_skus operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-node-agent-skus. + :type filter: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 results will be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(AccountListNodeAgentSkusOptions, self).__init__(**kwargs) + self.filter = filter + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/account_list_pool_node_counts_options.py b/azure-batch/azure/batch/models/account_list_pool_node_counts_options.py index 3ee7f8744f45..4ad2da01f3b0 100644 --- a/azure-batch/azure/batch/models/account_list_pool_node_counts_options.py +++ b/azure-batch/azure/batch/models/account_list_pool_node_counts_options.py @@ -15,7 +15,9 @@ class AccountListPoolNodeCountsOptions(Model): """Additional parameters for list_pool_node_counts operation. - :param filter: An OData $filter clause. + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch. :type filter: str :param max_results: The maximum number of items to return in the response. Default value: 10 . @@ -36,11 +38,20 @@ class AccountListPoolNodeCountsOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, max_results=10, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(AccountListPoolNodeCountsOptions, self).__init__() - self.filter = filter - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(AccountListPoolNodeCountsOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.max_results = kwargs.get('max_results', 10) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/account_list_pool_node_counts_options_py3.py b/azure-batch/azure/batch/models/account_list_pool_node_counts_options_py3.py new file mode 100644 index 000000000000..e9f0d02bec64 --- /dev/null +++ b/azure-batch/azure/batch/models/account_list_pool_node_counts_options_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccountListPoolNodeCountsOptions(Model): + """Additional parameters for list_pool_node_counts operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch. + :type filter: str + :param max_results: The maximum number of items to return in the response. + Default value: 10 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, max_results: int=10, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(AccountListPoolNodeCountsOptions, self).__init__(**kwargs) + self.filter = filter + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/affinity_information.py b/azure-batch/azure/batch/models/affinity_information.py index 0745761d1343..206608f1f9f2 100644 --- a/azure-batch/azure/batch/models/affinity_information.py +++ b/azure-batch/azure/batch/models/affinity_information.py @@ -16,8 +16,10 @@ class AffinityInformation(Model): """A locality hint that can be used by the Batch service to select a compute node on which to start a task. - :param affinity_id: An opaque string representing the location of a - compute node or a task that has run previously. You can pass the + All required parameters must be populated in order to send to Azure. + + :param affinity_id: Required. An opaque string representing the location + of a compute node or a task that has run previously. You can pass the affinityId of a compute node to indicate that this task needs to run on that compute node. Note that this is just a soft affinity. If the target node is busy or unavailable at the time the task is scheduled, then the @@ -33,6 +35,6 @@ class AffinityInformation(Model): 'affinity_id': {'key': 'affinityId', 'type': 'str'}, } - def __init__(self, affinity_id): - super(AffinityInformation, self).__init__() - self.affinity_id = affinity_id + def __init__(self, **kwargs): + super(AffinityInformation, self).__init__(**kwargs) + self.affinity_id = kwargs.get('affinity_id', None) diff --git a/azure-batch/azure/batch/models/affinity_information_py3.py b/azure-batch/azure/batch/models/affinity_information_py3.py new file mode 100644 index 000000000000..fcf8d04b8010 --- /dev/null +++ b/azure-batch/azure/batch/models/affinity_information_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AffinityInformation(Model): + """A locality hint that can be used by the Batch service to select a compute + node on which to start a task. + + All required parameters must be populated in order to send to Azure. + + :param affinity_id: Required. An opaque string representing the location + of a compute node or a task that has run previously. You can pass the + affinityId of a compute node to indicate that this task needs to run on + that compute node. Note that this is just a soft affinity. If the target + node is busy or unavailable at the time the task is scheduled, then the + task will be scheduled elsewhere. + :type affinity_id: str + """ + + _validation = { + 'affinity_id': {'required': True}, + } + + _attribute_map = { + 'affinity_id': {'key': 'affinityId', 'type': 'str'}, + } + + def __init__(self, *, affinity_id: str, **kwargs) -> None: + super(AffinityInformation, self).__init__(**kwargs) + self.affinity_id = affinity_id diff --git a/azure-batch/azure/batch/models/application_get_options.py b/azure-batch/azure/batch/models/application_get_options.py index 35498bc6a5b1..038c5421e4ee 100644 --- a/azure-batch/azure/batch/models/application_get_options.py +++ b/azure-batch/azure/batch/models/application_get_options.py @@ -31,9 +31,16 @@ class ApplicationGetOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ApplicationGetOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ApplicationGetOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/application_get_options_py3.py b/azure-batch/azure/batch/models/application_get_options_py3.py new file mode 100644 index 000000000000..3c9d5c0ad7b8 --- /dev/null +++ b/azure-batch/azure/batch/models/application_get_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGetOptions(Model): + """Additional parameters for get operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ApplicationGetOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/application_list_options.py b/azure-batch/azure/batch/models/application_list_options.py index b1eb2c54642e..bc3ddb366801 100644 --- a/azure-batch/azure/batch/models/application_list_options.py +++ b/azure-batch/azure/batch/models/application_list_options.py @@ -34,10 +34,18 @@ class ApplicationListOptions(Model): :type ocp_date: datetime """ - def __init__(self, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ApplicationListOptions, self).__init__() - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ApplicationListOptions, self).__init__(**kwargs) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/application_list_options_py3.py b/azure-batch/azure/batch/models/application_list_options_py3.py new file mode 100644 index 000000000000..445de51eccb1 --- /dev/null +++ b/azure-batch/azure/batch/models/application_list_options_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationListOptions(Model): + """Additional parameters for list operation. + + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 applications can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ApplicationListOptions, self).__init__(**kwargs) + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/application_package_reference.py b/azure-batch/azure/batch/models/application_package_reference.py index bea904d8bad3..0867361760c1 100644 --- a/azure-batch/azure/batch/models/application_package_reference.py +++ b/azure-batch/azure/batch/models/application_package_reference.py @@ -15,7 +15,9 @@ class ApplicationPackageReference(Model): """A reference to an application package to be deployed to compute nodes. - :param application_id: The ID of the application to deploy. + All required parameters must be populated in order to send to Azure. + + :param application_id: Required. The ID of the application to deploy. :type application_id: str :param version: The version of the application to deploy. If omitted, the default version is deployed. If this is omitted on a pool, and no default @@ -35,7 +37,7 @@ class ApplicationPackageReference(Model): 'version': {'key': 'version', 'type': 'str'}, } - def __init__(self, application_id, version=None): - super(ApplicationPackageReference, self).__init__() - self.application_id = application_id - self.version = version + def __init__(self, **kwargs): + super(ApplicationPackageReference, self).__init__(**kwargs) + self.application_id = kwargs.get('application_id', None) + self.version = kwargs.get('version', None) diff --git a/azure-batch/azure/batch/models/application_package_reference_py3.py b/azure-batch/azure/batch/models/application_package_reference_py3.py new file mode 100644 index 000000000000..dd81226b51e8 --- /dev/null +++ b/azure-batch/azure/batch/models/application_package_reference_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationPackageReference(Model): + """A reference to an application package to be deployed to compute nodes. + + All required parameters must be populated in order to send to Azure. + + :param application_id: Required. The ID of the application to deploy. + :type application_id: str + :param version: The version of the application to deploy. If omitted, the + default version is deployed. If this is omitted on a pool, and no default + version is specified for this application, the request fails with the + error code InvalidApplicationPackageReferences and HTTP status code 409. + If this is omitted on a task, and no default version is specified for this + application, the task fails with a pre-processing error. + :type version: str + """ + + _validation = { + 'application_id': {'required': True}, + } + + _attribute_map = { + 'application_id': {'key': 'applicationId', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, *, application_id: str, version: str=None, **kwargs) -> None: + super(ApplicationPackageReference, self).__init__(**kwargs) + self.application_id = application_id + self.version = version diff --git a/azure-batch/azure/batch/models/application_summary.py b/azure-batch/azure/batch/models/application_summary.py index 5eba58b8ab31..4a65a11f24f8 100644 --- a/azure-batch/azure/batch/models/application_summary.py +++ b/azure-batch/azure/batch/models/application_summary.py @@ -15,12 +15,15 @@ class ApplicationSummary(Model): """Contains information about an application in an Azure Batch account. - :param id: A string that uniquely identifies the application within the - account. + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the application + within the account. :type id: str - :param display_name: The display name for the application. + :param display_name: Required. The display name for the application. :type display_name: str - :param versions: The list of available versions of the application. + :param versions: Required. The list of available versions of the + application. :type versions: list[str] """ @@ -36,8 +39,8 @@ class ApplicationSummary(Model): 'versions': {'key': 'versions', 'type': '[str]'}, } - def __init__(self, id, display_name, versions): - super(ApplicationSummary, self).__init__() - self.id = id - self.display_name = display_name - self.versions = versions + def __init__(self, **kwargs): + super(ApplicationSummary, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.versions = kwargs.get('versions', None) diff --git a/azure-batch/azure/batch/models/application_summary_py3.py b/azure-batch/azure/batch/models/application_summary_py3.py new file mode 100644 index 000000000000..68c838e88391 --- /dev/null +++ b/azure-batch/azure/batch/models/application_summary_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationSummary(Model): + """Contains information about an application in an Azure Batch account. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the application + within the account. + :type id: str + :param display_name: Required. The display name for the application. + :type display_name: str + :param versions: Required. The list of available versions of the + application. + :type versions: list[str] + """ + + _validation = { + 'id': {'required': True}, + 'display_name': {'required': True}, + 'versions': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'versions': {'key': 'versions', 'type': '[str]'}, + } + + def __init__(self, *, id: str, display_name: str, versions, **kwargs) -> None: + super(ApplicationSummary, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.versions = versions diff --git a/azure-batch/azure/batch/models/authentication_token_settings.py b/azure-batch/azure/batch/models/authentication_token_settings.py index 22d4bd0b0525..fd05e87bf82c 100644 --- a/azure-batch/azure/batch/models/authentication_token_settings.py +++ b/azure-batch/azure/batch/models/authentication_token_settings.py @@ -28,6 +28,6 @@ class AuthenticationTokenSettings(Model): 'access': {'key': 'access', 'type': '[AccessScope]'}, } - def __init__(self, access=None): - super(AuthenticationTokenSettings, self).__init__() - self.access = access + def __init__(self, **kwargs): + super(AuthenticationTokenSettings, self).__init__(**kwargs) + self.access = kwargs.get('access', None) diff --git a/azure-batch/azure/batch/models/authentication_token_settings_py3.py b/azure-batch/azure/batch/models/authentication_token_settings_py3.py new file mode 100644 index 000000000000..23dde60ca771 --- /dev/null +++ b/azure-batch/azure/batch/models/authentication_token_settings_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthenticationTokenSettings(Model): + """The settings for an authentication token that the task can use to perform + Batch service operations. + + :param access: The Batch resources to which the token grants access. The + authentication token grants access to a limited set of Batch service + operations. Currently the only supported value for the access property is + 'job', which grants access to all operations related to the job which + contains the task. + :type access: list[str or ~azure.batch.models.AccessScope] + """ + + _attribute_map = { + 'access': {'key': 'access', 'type': '[AccessScope]'}, + } + + def __init__(self, *, access=None, **kwargs) -> None: + super(AuthenticationTokenSettings, self).__init__(**kwargs) + self.access = access diff --git a/azure-batch/azure/batch/models/auto_pool_specification.py b/azure-batch/azure/batch/models/auto_pool_specification.py index 2fde2b2e55d0..7383a65a5f78 100644 --- a/azure-batch/azure/batch/models/auto_pool_specification.py +++ b/azure-batch/azure/batch/models/auto_pool_specification.py @@ -16,15 +16,17 @@ class AutoPoolSpecification(Model): """Specifies characteristics for a temporary 'auto pool'. The Batch service will create this auto pool when the job is submitted. + All required parameters must be populated in order to send to Azure. + :param auto_pool_id_prefix: A prefix to be added to the unique identifier when a pool is automatically created. The Batch service assigns each auto pool a unique identifier on creation. To distinguish between pools created for different purposes, you can specify this element to add a prefix to the ID that is assigned. The prefix can be up to 20 characters long. :type auto_pool_id_prefix: str - :param pool_lifetime_option: The minimum lifetime of created auto pools, - and how multiple jobs on a schedule are assigned to pools. Possible values - include: 'jobSchedule', 'job' + :param pool_lifetime_option: Required. The minimum lifetime of created + auto pools, and how multiple jobs on a schedule are assigned to pools. + Possible values include: 'jobSchedule', 'job' :type pool_lifetime_option: str or ~azure.batch.models.PoolLifetimeOption :param keep_alive: Whether to keep an auto pool alive after its lifetime expires. If false, the Batch service deletes the pool once its lifetime @@ -48,9 +50,9 @@ class AutoPoolSpecification(Model): 'pool': {'key': 'pool', 'type': 'PoolSpecification'}, } - def __init__(self, pool_lifetime_option, auto_pool_id_prefix=None, keep_alive=None, pool=None): - super(AutoPoolSpecification, self).__init__() - self.auto_pool_id_prefix = auto_pool_id_prefix - self.pool_lifetime_option = pool_lifetime_option - self.keep_alive = keep_alive - self.pool = pool + def __init__(self, **kwargs): + super(AutoPoolSpecification, self).__init__(**kwargs) + self.auto_pool_id_prefix = kwargs.get('auto_pool_id_prefix', None) + self.pool_lifetime_option = kwargs.get('pool_lifetime_option', None) + self.keep_alive = kwargs.get('keep_alive', None) + self.pool = kwargs.get('pool', None) diff --git a/azure-batch/azure/batch/models/auto_pool_specification_py3.py b/azure-batch/azure/batch/models/auto_pool_specification_py3.py new file mode 100644 index 000000000000..4b07e831afa1 --- /dev/null +++ b/azure-batch/azure/batch/models/auto_pool_specification_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutoPoolSpecification(Model): + """Specifies characteristics for a temporary 'auto pool'. The Batch service + will create this auto pool when the job is submitted. + + All required parameters must be populated in order to send to Azure. + + :param auto_pool_id_prefix: A prefix to be added to the unique identifier + when a pool is automatically created. The Batch service assigns each auto + pool a unique identifier on creation. To distinguish between pools created + for different purposes, you can specify this element to add a prefix to + the ID that is assigned. The prefix can be up to 20 characters long. + :type auto_pool_id_prefix: str + :param pool_lifetime_option: Required. The minimum lifetime of created + auto pools, and how multiple jobs on a schedule are assigned to pools. + Possible values include: 'jobSchedule', 'job' + :type pool_lifetime_option: str or ~azure.batch.models.PoolLifetimeOption + :param keep_alive: Whether to keep an auto pool alive after its lifetime + expires. If false, the Batch service deletes the pool once its lifetime + (as determined by the poolLifetimeOption setting) expires; that is, when + the job or job schedule completes. If true, the Batch service does not + delete the pool automatically. It is up to the user to delete auto pools + created with this option. + :type keep_alive: bool + :param pool: The pool specification for the auto pool. + :type pool: ~azure.batch.models.PoolSpecification + """ + + _validation = { + 'pool_lifetime_option': {'required': True}, + } + + _attribute_map = { + 'auto_pool_id_prefix': {'key': 'autoPoolIdPrefix', 'type': 'str'}, + 'pool_lifetime_option': {'key': 'poolLifetimeOption', 'type': 'PoolLifetimeOption'}, + 'keep_alive': {'key': 'keepAlive', 'type': 'bool'}, + 'pool': {'key': 'pool', 'type': 'PoolSpecification'}, + } + + def __init__(self, *, pool_lifetime_option, auto_pool_id_prefix: str=None, keep_alive: bool=None, pool=None, **kwargs) -> None: + super(AutoPoolSpecification, self).__init__(**kwargs) + self.auto_pool_id_prefix = auto_pool_id_prefix + self.pool_lifetime_option = pool_lifetime_option + self.keep_alive = keep_alive + self.pool = pool diff --git a/azure-batch/azure/batch/models/auto_scale_run.py b/azure-batch/azure/batch/models/auto_scale_run.py index 49ab7487f00f..06b0d4fef216 100644 --- a/azure-batch/azure/batch/models/auto_scale_run.py +++ b/azure-batch/azure/batch/models/auto_scale_run.py @@ -15,8 +15,10 @@ class AutoScaleRun(Model): """The results and errors from an execution of a pool autoscale formula. - :param timestamp: The time at which the autoscale formula was last - evaluated. + All required parameters must be populated in order to send to Azure. + + :param timestamp: Required. The time at which the autoscale formula was + last evaluated. :type timestamp: datetime :param results: The final values of all variables used in the evaluation of the autoscale formula. Each variable value is returned in the form @@ -37,8 +39,8 @@ class AutoScaleRun(Model): 'error': {'key': 'error', 'type': 'AutoScaleRunError'}, } - def __init__(self, timestamp, results=None, error=None): - super(AutoScaleRun, self).__init__() - self.timestamp = timestamp - self.results = results - self.error = error + def __init__(self, **kwargs): + super(AutoScaleRun, self).__init__(**kwargs) + self.timestamp = kwargs.get('timestamp', None) + self.results = kwargs.get('results', None) + self.error = kwargs.get('error', None) diff --git a/azure-batch/azure/batch/models/auto_scale_run_error.py b/azure-batch/azure/batch/models/auto_scale_run_error.py index 92f766150652..d0d7b1631076 100644 --- a/azure-batch/azure/batch/models/auto_scale_run_error.py +++ b/azure-batch/azure/batch/models/auto_scale_run_error.py @@ -33,8 +33,8 @@ class AutoScaleRunError(Model): 'values': {'key': 'values', 'type': '[NameValuePair]'}, } - def __init__(self, code=None, message=None, values=None): - super(AutoScaleRunError, self).__init__() - self.code = code - self.message = message - self.values = values + def __init__(self, **kwargs): + super(AutoScaleRunError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.values = kwargs.get('values', None) diff --git a/azure-batch/azure/batch/models/auto_scale_run_error_py3.py b/azure-batch/azure/batch/models/auto_scale_run_error_py3.py new file mode 100644 index 000000000000..8ffa9805d52d --- /dev/null +++ b/azure-batch/azure/batch/models/auto_scale_run_error_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutoScaleRunError(Model): + """An error that occurred when executing or evaluating a pool autoscale + formula. + + :param code: An identifier for the autoscale error. Codes are invariant + and are intended to be consumed programmatically. + :type code: str + :param message: A message describing the autoscale error, intended to be + suitable for display in a user interface. + :type message: str + :param values: A list of additional error details related to the autoscale + error. + :type values: list[~azure.batch.models.NameValuePair] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[NameValuePair]'}, + } + + def __init__(self, *, code: str=None, message: str=None, values=None, **kwargs) -> None: + super(AutoScaleRunError, self).__init__(**kwargs) + self.code = code + self.message = message + self.values = values diff --git a/azure-batch/azure/batch/models/auto_scale_run_py3.py b/azure-batch/azure/batch/models/auto_scale_run_py3.py new file mode 100644 index 000000000000..9f58e936bacc --- /dev/null +++ b/azure-batch/azure/batch/models/auto_scale_run_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutoScaleRun(Model): + """The results and errors from an execution of a pool autoscale formula. + + All required parameters must be populated in order to send to Azure. + + :param timestamp: Required. The time at which the autoscale formula was + last evaluated. + :type timestamp: datetime + :param results: The final values of all variables used in the evaluation + of the autoscale formula. Each variable value is returned in the form + $variable=value, and variables are separated by semicolons. + :type results: str + :param error: Details of the error encountered evaluating the autoscale + formula on the pool, if the evaluation was unsuccessful. + :type error: ~azure.batch.models.AutoScaleRunError + """ + + _validation = { + 'timestamp': {'required': True}, + } + + _attribute_map = { + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'results': {'key': 'results', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'AutoScaleRunError'}, + } + + def __init__(self, *, timestamp, results: str=None, error=None, **kwargs) -> None: + super(AutoScaleRun, self).__init__(**kwargs) + self.timestamp = timestamp + self.results = results + self.error = error diff --git a/azure-batch/azure/batch/models/auto_user_specification.py b/azure-batch/azure/batch/models/auto_user_specification.py index c211e5fd2d66..60127c74cafe 100644 --- a/azure-batch/azure/batch/models/auto_user_specification.py +++ b/azure-batch/azure/batch/models/auto_user_specification.py @@ -29,7 +29,7 @@ class AutoUserSpecification(Model): 'elevation_level': {'key': 'elevationLevel', 'type': 'ElevationLevel'}, } - def __init__(self, scope=None, elevation_level=None): - super(AutoUserSpecification, self).__init__() - self.scope = scope - self.elevation_level = elevation_level + def __init__(self, **kwargs): + super(AutoUserSpecification, self).__init__(**kwargs) + self.scope = kwargs.get('scope', None) + self.elevation_level = kwargs.get('elevation_level', None) diff --git a/azure-batch/azure/batch/models/auto_user_specification_py3.py b/azure-batch/azure/batch/models/auto_user_specification_py3.py new file mode 100644 index 000000000000..bc590d2cea96 --- /dev/null +++ b/azure-batch/azure/batch/models/auto_user_specification_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutoUserSpecification(Model): + """Specifies the parameters for the auto user that runs a task on the Batch + service. + + :param scope: The scope for the auto user. The default value is task. + Possible values include: 'task', 'pool' + :type scope: str or ~azure.batch.models.AutoUserScope + :param elevation_level: The elevation level of the auto user. The default + value is nonAdmin. Possible values include: 'nonAdmin', 'admin' + :type elevation_level: str or ~azure.batch.models.ElevationLevel + """ + + _attribute_map = { + 'scope': {'key': 'scope', 'type': 'AutoUserScope'}, + 'elevation_level': {'key': 'elevationLevel', 'type': 'ElevationLevel'}, + } + + def __init__(self, *, scope=None, elevation_level=None, **kwargs) -> None: + super(AutoUserSpecification, self).__init__(**kwargs) + self.scope = scope + self.elevation_level = elevation_level diff --git a/azure-batch/azure/batch/models/batch_error.py b/azure-batch/azure/batch/models/batch_error.py index e96a5aaf91f9..3857ac960880 100644 --- a/azure-batch/azure/batch/models/batch_error.py +++ b/azure-batch/azure/batch/models/batch_error.py @@ -33,11 +33,11 @@ class BatchError(Model): 'values': {'key': 'values', 'type': '[BatchErrorDetail]'}, } - def __init__(self, code=None, message=None, values=None): - super(BatchError, self).__init__() - self.code = code - self.message = message - self.values = values + def __init__(self, **kwargs): + super(BatchError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.values = kwargs.get('values', None) class BatchErrorException(HttpOperationError): diff --git a/azure-batch/azure/batch/models/batch_error_detail.py b/azure-batch/azure/batch/models/batch_error_detail.py index 91f5ac2abe27..a892678ce2f7 100644 --- a/azure-batch/azure/batch/models/batch_error_detail.py +++ b/azure-batch/azure/batch/models/batch_error_detail.py @@ -27,7 +27,7 @@ class BatchErrorDetail(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, key=None, value=None): - super(BatchErrorDetail, self).__init__() - self.key = key - self.value = value + def __init__(self, **kwargs): + super(BatchErrorDetail, self).__init__(**kwargs) + self.key = kwargs.get('key', None) + self.value = kwargs.get('value', None) diff --git a/azure-batch/azure/batch/models/batch_error_detail_py3.py b/azure-batch/azure/batch/models/batch_error_detail_py3.py new file mode 100644 index 000000000000..8aa8a85bc0d6 --- /dev/null +++ b/azure-batch/azure/batch/models/batch_error_detail_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BatchErrorDetail(Model): + """An item of additional information included in an Azure Batch error + response. + + :param key: An identifier specifying the meaning of the Value property. + :type key: str + :param value: The additional information included with the error response. + :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(BatchErrorDetail, self).__init__(**kwargs) + self.key = key + self.value = value diff --git a/azure-batch/azure/batch/models/batch_error_py3.py b/azure-batch/azure/batch/models/batch_error_py3.py new file mode 100644 index 000000000000..a6e49569fd10 --- /dev/null +++ b/azure-batch/azure/batch/models/batch_error_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class BatchError(Model): + """An error response received from the Azure Batch service. + + :param code: An identifier for the error. Codes are invariant and are + intended to be consumed programmatically. + :type code: str + :param message: A message describing the error, intended to be suitable + for display in a user interface. + :type message: ~azure.batch.models.ErrorMessage + :param values: A collection of key-value pairs containing additional + details about the error. + :type values: list[~azure.batch.models.BatchErrorDetail] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'ErrorMessage'}, + 'values': {'key': 'values', 'type': '[BatchErrorDetail]'}, + } + + def __init__(self, *, code: str=None, message=None, values=None, **kwargs) -> None: + super(BatchError, self).__init__(**kwargs) + self.code = code + self.message = message + self.values = values + + +class BatchErrorException(HttpOperationError): + """Server responsed with exception of type: 'BatchError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(BatchErrorException, self).__init__(deserialize, response, 'BatchError', *args) diff --git a/azure-batch/azure/batch/models/batch_service_client_enums.py b/azure-batch/azure/batch/models/batch_service_client_enums.py index 4a55803fa08c..c2775616ecb6 100644 --- a/azure-batch/azure/batch/models/batch_service_client_enums.py +++ b/azure-batch/azure/batch/models/batch_service_client_enums.py @@ -12,125 +12,125 @@ from enum import Enum -class OSType(Enum): +class OSType(str, Enum): linux = "linux" #: The Linux operating system. windows = "windows" #: The Windows operating system. -class AccessScope(Enum): +class AccessScope(str, Enum): job = "job" #: Grants access to perform all operations on the job containing the task. -class CertificateState(Enum): +class CertificateState(str, Enum): active = "active" #: The certificate is available for use in pools. deleting = "deleting" #: The user has requested that the certificate be deleted, but the delete operation has not yet completed. You may not reference the certificate when creating or updating pools. delete_failed = "deletefailed" #: The user requested that the certificate be deleted, but there are pools that still have references to the certificate, or it is still installed on one or more compute nodes. (The latter can occur if the certificate has been removed from the pool, but the node has not yet restarted. Nodes refresh their certificates only when they restart.) You may use the cancel certificate delete operation to cancel the delete, or the delete certificate operation to retry the delete. -class CertificateFormat(Enum): +class CertificateFormat(str, Enum): pfx = "pfx" #: The certificate is a PFX (PKCS#12) formatted certificate or certificate chain. cer = "cer" #: The certificate is a base64-encoded X.509 certificate. -class JobAction(Enum): +class JobAction(str, Enum): none = "none" #: Take no action. disable = "disable" #: Disable the job. This is equivalent to calling the disable job API, with a disableTasks value of requeue. terminate = "terminate" #: Terminate the job. The terminateReason in the job's executionInfo is set to "TaskFailed". -class DependencyAction(Enum): +class DependencyAction(str, Enum): satisfy = "satisfy" #: Satisfy the task's dependencies. block = "block" #: Block the task's dependencies. -class AutoUserScope(Enum): +class AutoUserScope(str, Enum): task = "task" #: Specifies that the service should create a new user for the task. pool = "pool" #: Specifies that the task runs as the common auto user account which is created on every node in a pool. -class ElevationLevel(Enum): +class ElevationLevel(str, Enum): non_admin = "nonadmin" #: The user is a standard user without elevated access. admin = "admin" #: The user is a user with elevated access and operates with full Administrator permissions. -class OutputFileUploadCondition(Enum): +class OutputFileUploadCondition(str, Enum): task_success = "tasksuccess" #: Upload the file(s) only after the task process exits with an exit code of 0. task_failure = "taskfailure" #: Upload the file(s) only after the task process exits with a nonzero exit code. task_completion = "taskcompletion" #: Upload the file(s) after the task process exits, no matter what the exit code was. -class ComputeNodeFillType(Enum): +class ComputeNodeFillType(str, Enum): spread = "spread" #: Tasks should be assigned evenly across all nodes in the pool. pack = "pack" #: As many tasks as possible (maxTasksPerNode) should be assigned to each node in the pool before any tasks are assigned to the next node in the pool. -class CertificateStoreLocation(Enum): +class CertificateStoreLocation(str, Enum): current_user = "currentuser" #: Certificates should be installed to the CurrentUser certificate store. local_machine = "localmachine" #: Certificates should be installed to the LocalMachine certificate store. -class CertificateVisibility(Enum): +class CertificateVisibility(str, Enum): start_task = "starttask" #: The certificate should be visible to the user account under which the start task is run. task = "task" #: The certificate should be visibile to the user accounts under which job tasks are run. remote_user = "remoteuser" #: The certificate should be visibile to the user accounts under which users remotely access the node. -class CachingType(Enum): +class CachingType(str, Enum): none = "none" #: The caching mode for the disk is not enabled. read_only = "readonly" #: The caching mode for the disk is read only. read_write = "readwrite" #: The caching mode for the disk is read and write. -class StorageAccountType(Enum): +class StorageAccountType(str, Enum): standard_lrs = "standard_lrs" #: The data disk should use standard locally redundant storage. premium_lrs = "premium_lrs" #: The data disk should use premium locally redundant storage. -class InboundEndpointProtocol(Enum): +class InboundEndpointProtocol(str, Enum): tcp = "tcp" #: Use TCP for the endpoint. udp = "udp" #: Use UDP for the endpoint. -class NetworkSecurityGroupRuleAccess(Enum): +class NetworkSecurityGroupRuleAccess(str, Enum): allow = "allow" #: Allow access. deny = "deny" #: Deny access. -class PoolLifetimeOption(Enum): +class PoolLifetimeOption(str, Enum): job_schedule = "jobschedule" #: The pool exists for the lifetime of the job schedule. The Batch Service creates the pool when it creates the first job on the schedule. You may apply this option only to job schedules, not to jobs. job = "job" #: The pool exists for the lifetime of the job to which it is dedicated. The Batch service creates the pool when it creates the job. If the 'job' option is applied to a job schedule, the Batch service creates a new auto pool for every job created on the schedule. -class OnAllTasksComplete(Enum): +class OnAllTasksComplete(str, Enum): no_action = "noaction" #: Do nothing. The job remains active unless terminated or disabled by some other means. terminate_job = "terminatejob" #: Terminate the job. The job's terminateReason is set to 'AllTasksComplete'. -class OnTaskFailure(Enum): +class OnTaskFailure(str, Enum): no_action = "noaction" #: Do nothing. The job remains active unless terminated or disabled by some other means. perform_exit_options_job_action = "performexitoptionsjobaction" #: Take the action associated with the task exit condition in the task's exitConditions collection. (This may still result in no action being taken, if that is what the task specifies.) -class JobScheduleState(Enum): +class JobScheduleState(str, Enum): active = "active" #: The job schedule is active and will create jobs as per its schedule. completed = "completed" #: The schedule has terminated, either by reaching its end time or by the user terminating it explicitly. @@ -139,13 +139,13 @@ class JobScheduleState(Enum): deleting = "deleting" #: The user has requested that the schedule be deleted, but the delete operation is still in progress. The scheduler will not initiate any new jobs for this schedule, and will delete any existing jobs and tasks under the schedule, including any active job. The schedule will be deleted when all jobs and tasks under the schedule have been deleted. -class ErrorCategory(Enum): +class ErrorCategory(str, Enum): user_error = "usererror" #: The error is due to a user issue, such as misconfiguration. server_error = "servererror" #: The error is due to an internal server issue. -class JobState(Enum): +class JobState(str, Enum): active = "active" #: The job is available to have tasks scheduled. disabling = "disabling" #: A user has requested that the job be disabled, but the disable operation is still in progress (for example, waiting for tasks to terminate). @@ -156,45 +156,39 @@ class JobState(Enum): deleting = "deleting" #: A user has requested that the job be deleted, but the delete operation is still in progress (for example, because the system is still terminating running tasks). -class JobPreparationTaskState(Enum): +class JobPreparationTaskState(str, Enum): running = "running" #: The task is currently running (including retrying). completed = "completed" #: The task has exited with exit code 0, or the task has exhausted its retry limit, or the Batch service was unable to start the task due to task preparation errors (such as resource file download failures). -class TaskExecutionResult(Enum): +class TaskExecutionResult(str, Enum): success = "success" #: The task ran successfully. failure = "failure" #: There was an error during processing of the task. The failure may have occurred before the task process was launched, while the task process was executing, or after the task process exited. -class JobReleaseTaskState(Enum): +class JobReleaseTaskState(str, Enum): running = "running" #: The task is currently running (including retrying). completed = "completed" #: The task has exited with exit code 0, or the task has exhausted its retry limit, or the Batch service was unable to start the task due to task preparation errors (such as resource file download failures). -class TaskCountValidationStatus(Enum): - - validated = "validated" #: The Batch service has validated the state counts against the task states as reported in the List Tasks API. - unvalidated = "unvalidated" #: The Batch service has not been able to check state counts against the task states as reported in the List Tasks API. The validationStatus may be unvalidated if the job contains more than 200,000 tasks. - - -class PoolState(Enum): +class PoolState(str, Enum): active = "active" #: The pool is available to run tasks subject to the availability of compute nodes. deleting = "deleting" #: The user has requested that the pool be deleted, but the delete operation has not yet completed. upgrading = "upgrading" #: The user has requested that the operating system of the pool's nodes be upgraded, but the upgrade operation has not yet completed (that is, some nodes in the pool have not yet been upgraded). While upgrading, the pool may be able to run tasks (with reduced capacity) but this is not guaranteed. -class AllocationState(Enum): +class AllocationState(str, Enum): steady = "steady" #: The pool is not resizing. There are no changes to the number of nodes in the pool in progress. A pool enters this state when it is created and when no operations are being performed on the pool to change the number of nodes. resizing = "resizing" #: The pool is resizing; that is, compute nodes are being added to or removed from the pool. stopping = "stopping" #: The pool was resizing, but the user has requested that the resize be stopped, but the stop request has not yet been completed. -class TaskState(Enum): +class TaskState(str, Enum): active = "active" #: The task is queued and able to run, but is not currently assigned to a compute node. A task enters this state when it is created, when it is enabled after being disabled, or when it is awaiting a retry after a failed run. preparing = "preparing" #: The task has been assigned to a compute node, but is waiting for a required Job Preparation task to complete on the node. If the Job Preparation task succeeds, the task will move to running. If the Job Preparation task fails, the task will return to active and will be eligible to be assigned to a different node. @@ -202,27 +196,27 @@ class TaskState(Enum): completed = "completed" #: The task is no longer eligible to run, usually because the task has finished successfully, or the task has finished unsuccessfully and has exhausted its retry limit. A task is also marked as completed if an error occurred launching the task, or when the task has been terminated. -class TaskAddStatus(Enum): +class TaskAddStatus(str, Enum): success = "success" #: The task was added successfully. client_error = "clienterror" #: The task failed to add due to a client error and should not be retried without modifying the request as appropriate. server_error = "servererror" #: Task failed to add due to a server error and can be retried without modification. -class SubtaskState(Enum): +class SubtaskState(str, Enum): preparing = "preparing" #: The task has been assigned to a compute node, but is waiting for a required Job Preparation task to complete on the node. If the Job Preparation task succeeds, the task will move to running. If the Job Preparation task fails, the task will return to active and will be eligible to be assigned to a different node. running = "running" #: The task is running on a compute node. This includes task-level preparation such as downloading resource files or deploying application packages specified on the task - it does not necessarily mean that the task command line has started executing. completed = "completed" #: The task is no longer eligible to run, usually because the task has finished successfully, or the task has finished unsuccessfully and has exhausted its retry limit. A task is also marked as completed if an error occurred launching the task, or when the task has been terminated. -class StartTaskState(Enum): +class StartTaskState(str, Enum): running = "running" #: The start task is currently running. completed = "completed" #: The start task has exited with exit code 0, or the start task has failed and the retry limit has reached, or the start task process did not run due to task preparation errors (such as resource file download failures). -class ComputeNodeState(Enum): +class ComputeNodeState(str, Enum): idle = "idle" #: The node is not currently running a task. rebooting = "rebooting" #: The node is rebooting. @@ -239,20 +233,20 @@ class ComputeNodeState(Enum): preempted = "preempted" #: The low-priority node has been preempted. Tasks which were running on the node when it was pre-empted will be rescheduled when another node becomes available. -class SchedulingState(Enum): +class SchedulingState(str, Enum): enabled = "enabled" #: Tasks can be scheduled on the node. disabled = "disabled" #: No new tasks will be scheduled on the node. Tasks already running on the node may still run to completion. All nodes start with scheduling enabled. -class DisableJobOption(Enum): +class DisableJobOption(str, Enum): requeue = "requeue" #: Terminate running tasks and requeue them. The tasks will run again when the job is enabled. terminate = "terminate" #: Terminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. wait = "wait" #: Allow currently running tasks to complete. -class ComputeNodeDeallocationOption(Enum): +class ComputeNodeDeallocationOption(str, Enum): requeue = "requeue" #: Terminate running task processes and requeue the tasks. The tasks will run again when a node is available. Remove nodes as soon as tasks have been terminated. terminate = "terminate" #: Terminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove nodes as soon as tasks have been terminated. @@ -260,7 +254,7 @@ class ComputeNodeDeallocationOption(Enum): retained_data = "retaineddata" #: Allow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Remove nodes when all task retention periods have expired. -class ComputeNodeRebootOption(Enum): +class ComputeNodeRebootOption(str, Enum): requeue = "requeue" #: Terminate running task processes and requeue the tasks. The tasks will run again when a node is available. Restart the node as soon as tasks have been terminated. terminate = "terminate" #: Terminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Restart the node as soon as tasks have been terminated. @@ -268,7 +262,7 @@ class ComputeNodeRebootOption(Enum): retained_data = "retaineddata" #: Allow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Restart the node when all task retention periods have expired. -class ComputeNodeReimageOption(Enum): +class ComputeNodeReimageOption(str, Enum): requeue = "requeue" #: Terminate running task processes and requeue the tasks. The tasks will run again when a node is available. Reimage the node as soon as tasks have been terminated. terminate = "terminate" #: Terminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Reimage the node as soon as tasks have been terminated. @@ -276,7 +270,7 @@ class ComputeNodeReimageOption(Enum): retained_data = "retaineddata" #: Allow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Reimage the node when all task retention periods have expired. -class DisableComputeNodeSchedulingOption(Enum): +class DisableComputeNodeSchedulingOption(str, Enum): requeue = "requeue" #: Terminate running task processes and requeue the tasks. The tasks may run again on other compute nodes, or when task scheduling is re-enabled on this node. Enter offline state as soon as tasks have been terminated. terminate = "terminate" #: Terminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Enter offline state as soon as tasks have been terminated. diff --git a/azure-batch/azure/batch/models/certificate.py b/azure-batch/azure/batch/models/certificate.py index bc846599f802..e44c3f85ac6a 100644 --- a/azure-batch/azure/batch/models/certificate.py +++ b/azure-batch/azure/batch/models/certificate.py @@ -58,14 +58,14 @@ class Certificate(Model): 'delete_certificate_error': {'key': 'deleteCertificateError', 'type': 'DeleteCertificateError'}, } - def __init__(self, thumbprint=None, thumbprint_algorithm=None, url=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, public_data=None, delete_certificate_error=None): - super(Certificate, self).__init__() - self.thumbprint = thumbprint - self.thumbprint_algorithm = thumbprint_algorithm - self.url = url - self.state = state - self.state_transition_time = state_transition_time - self.previous_state = previous_state - self.previous_state_transition_time = previous_state_transition_time - self.public_data = public_data - self.delete_certificate_error = delete_certificate_error + def __init__(self, **kwargs): + super(Certificate, self).__init__(**kwargs) + self.thumbprint = kwargs.get('thumbprint', None) + self.thumbprint_algorithm = kwargs.get('thumbprint_algorithm', None) + self.url = kwargs.get('url', None) + self.state = kwargs.get('state', None) + self.state_transition_time = kwargs.get('state_transition_time', None) + self.previous_state = kwargs.get('previous_state', None) + self.previous_state_transition_time = kwargs.get('previous_state_transition_time', None) + self.public_data = kwargs.get('public_data', None) + self.delete_certificate_error = kwargs.get('delete_certificate_error', None) diff --git a/azure-batch/azure/batch/models/certificate_add_options.py b/azure-batch/azure/batch/models/certificate_add_options.py index de7ad03c9480..f2c8d5bbe9af 100644 --- a/azure-batch/azure/batch/models/certificate_add_options.py +++ b/azure-batch/azure/batch/models/certificate_add_options.py @@ -31,9 +31,16 @@ class CertificateAddOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(CertificateAddOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(CertificateAddOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/certificate_add_options_py3.py b/azure-batch/azure/batch/models/certificate_add_options_py3.py new file mode 100644 index 000000000000..c7d61b365e8a --- /dev/null +++ b/azure-batch/azure/batch/models/certificate_add_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateAddOptions(Model): + """Additional parameters for add operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(CertificateAddOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/certificate_add_parameter.py b/azure-batch/azure/batch/models/certificate_add_parameter.py index 305e32912e8f..809efd6602d1 100644 --- a/azure-batch/azure/batch/models/certificate_add_parameter.py +++ b/azure-batch/azure/batch/models/certificate_add_parameter.py @@ -16,15 +16,17 @@ class CertificateAddParameter(Model): """A certificate that can be installed on compute nodes and can be used to authenticate operations on the machine. - :param thumbprint: The X.509 thumbprint of the certificate. This is a - sequence of up to 40 hex digits (it may include spaces but these are + All required parameters must be populated in order to send to Azure. + + :param thumbprint: Required. The X.509 thumbprint of the certificate. This + is a sequence of up to 40 hex digits (it may include spaces but these are removed). :type thumbprint: str - :param thumbprint_algorithm: The algorithm used to derive the thumbprint. - This must be sha1. + :param thumbprint_algorithm: Required. The algorithm used to derive the + thumbprint. This must be sha1. :type thumbprint_algorithm: str - :param data: The base64-encoded contents of the certificate. The maximum - size is 10KB. + :param data: Required. The base64-encoded contents of the certificate. The + maximum size is 10KB. :type data: str :param certificate_format: The format of the certificate data. Possible values include: 'pfx', 'cer' @@ -49,10 +51,10 @@ class CertificateAddParameter(Model): 'password': {'key': 'password', 'type': 'str'}, } - def __init__(self, thumbprint, thumbprint_algorithm, data, certificate_format=None, password=None): - super(CertificateAddParameter, self).__init__() - self.thumbprint = thumbprint - self.thumbprint_algorithm = thumbprint_algorithm - self.data = data - self.certificate_format = certificate_format - self.password = password + def __init__(self, **kwargs): + super(CertificateAddParameter, self).__init__(**kwargs) + self.thumbprint = kwargs.get('thumbprint', None) + self.thumbprint_algorithm = kwargs.get('thumbprint_algorithm', None) + self.data = kwargs.get('data', None) + self.certificate_format = kwargs.get('certificate_format', None) + self.password = kwargs.get('password', None) diff --git a/azure-batch/azure/batch/models/certificate_add_parameter_py3.py b/azure-batch/azure/batch/models/certificate_add_parameter_py3.py new file mode 100644 index 000000000000..2a560b2b1810 --- /dev/null +++ b/azure-batch/azure/batch/models/certificate_add_parameter_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateAddParameter(Model): + """A certificate that can be installed on compute nodes and can be used to + authenticate operations on the machine. + + All required parameters must be populated in order to send to Azure. + + :param thumbprint: Required. The X.509 thumbprint of the certificate. This + is a sequence of up to 40 hex digits (it may include spaces but these are + removed). + :type thumbprint: str + :param thumbprint_algorithm: Required. The algorithm used to derive the + thumbprint. This must be sha1. + :type thumbprint_algorithm: str + :param data: Required. The base64-encoded contents of the certificate. The + maximum size is 10KB. + :type data: str + :param certificate_format: The format of the certificate data. Possible + values include: 'pfx', 'cer' + :type certificate_format: str or ~azure.batch.models.CertificateFormat + :param password: The password to access the certificate's private key. + This is required if the certificate format is pfx. It should be omitted if + the certificate format is cer. + :type password: str + """ + + _validation = { + 'thumbprint': {'required': True}, + 'thumbprint_algorithm': {'required': True}, + 'data': {'required': True}, + } + + _attribute_map = { + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + 'thumbprint_algorithm': {'key': 'thumbprintAlgorithm', 'type': 'str'}, + 'data': {'key': 'data', 'type': 'str'}, + 'certificate_format': {'key': 'certificateFormat', 'type': 'CertificateFormat'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, *, thumbprint: str, thumbprint_algorithm: str, data: str, certificate_format=None, password: str=None, **kwargs) -> None: + super(CertificateAddParameter, self).__init__(**kwargs) + self.thumbprint = thumbprint + self.thumbprint_algorithm = thumbprint_algorithm + self.data = data + self.certificate_format = certificate_format + self.password = password diff --git a/azure-batch/azure/batch/models/certificate_cancel_deletion_options.py b/azure-batch/azure/batch/models/certificate_cancel_deletion_options.py index 9ae407b47fe3..5c7c936ca603 100644 --- a/azure-batch/azure/batch/models/certificate_cancel_deletion_options.py +++ b/azure-batch/azure/batch/models/certificate_cancel_deletion_options.py @@ -31,9 +31,16 @@ class CertificateCancelDeletionOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(CertificateCancelDeletionOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(CertificateCancelDeletionOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/certificate_cancel_deletion_options_py3.py b/azure-batch/azure/batch/models/certificate_cancel_deletion_options_py3.py new file mode 100644 index 000000000000..8afbcf2419d9 --- /dev/null +++ b/azure-batch/azure/batch/models/certificate_cancel_deletion_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateCancelDeletionOptions(Model): + """Additional parameters for cancel_deletion operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(CertificateCancelDeletionOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/certificate_delete_options.py b/azure-batch/azure/batch/models/certificate_delete_options.py index 71247ccdd83f..5ff7ee832ac7 100644 --- a/azure-batch/azure/batch/models/certificate_delete_options.py +++ b/azure-batch/azure/batch/models/certificate_delete_options.py @@ -31,9 +31,16 @@ class CertificateDeleteOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(CertificateDeleteOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(CertificateDeleteOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/certificate_delete_options_py3.py b/azure-batch/azure/batch/models/certificate_delete_options_py3.py new file mode 100644 index 000000000000..47f91b10421a --- /dev/null +++ b/azure-batch/azure/batch/models/certificate_delete_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateDeleteOptions(Model): + """Additional parameters for delete operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(CertificateDeleteOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/certificate_get_options.py b/azure-batch/azure/batch/models/certificate_get_options.py index fef7dee344c1..2b474c17c435 100644 --- a/azure-batch/azure/batch/models/certificate_get_options.py +++ b/azure-batch/azure/batch/models/certificate_get_options.py @@ -33,10 +33,18 @@ class CertificateGetOptions(Model): :type ocp_date: datetime """ - def __init__(self, select=None, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(CertificateGetOptions, self).__init__() - self.select = select - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(CertificateGetOptions, self).__init__(**kwargs) + self.select = kwargs.get('select', None) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/certificate_get_options_py3.py b/azure-batch/azure/batch/models/certificate_get_options_py3.py new file mode 100644 index 000000000000..4bd6bb7003ee --- /dev/null +++ b/azure-batch/azure/batch/models/certificate_get_options_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateGetOptions(Model): + """Additional parameters for get operation. + + :param select: An OData $select clause. + :type select: str + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, select: str=None, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(CertificateGetOptions, self).__init__(**kwargs) + self.select = select + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/certificate_list_options.py b/azure-batch/azure/batch/models/certificate_list_options.py index 77c102e12ca5..cb3134afdf8c 100644 --- a/azure-batch/azure/batch/models/certificate_list_options.py +++ b/azure-batch/azure/batch/models/certificate_list_options.py @@ -40,12 +40,22 @@ class CertificateListOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, select=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(CertificateListOptions, self).__init__() - self.filter = filter - self.select = select - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(CertificateListOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.select = kwargs.get('select', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/certificate_list_options_py3.py b/azure-batch/azure/batch/models/certificate_list_options_py3.py new file mode 100644 index 000000000000..461b80444208 --- /dev/null +++ b/azure-batch/azure/batch/models/certificate_list_options_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateListOptions(Model): + """Additional parameters for list operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-certificates. + :type filter: str + :param select: An OData $select clause. + :type select: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 certificates can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, select: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(CertificateListOptions, self).__init__(**kwargs) + self.filter = filter + self.select = select + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/certificate_py3.py b/azure-batch/azure/batch/models/certificate_py3.py new file mode 100644 index 000000000000..4e0b71c5f8f1 --- /dev/null +++ b/azure-batch/azure/batch/models/certificate_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Certificate(Model): + """A certificate that can be installed on compute nodes and can be used to + authenticate operations on the machine. + + :param thumbprint: The X.509 thumbprint of the certificate. This is a + sequence of up to 40 hex digits. + :type thumbprint: str + :param thumbprint_algorithm: The algorithm used to derive the thumbprint. + :type thumbprint_algorithm: str + :param url: The URL of the certificate. + :type url: str + :param state: The current state of the certificate. Possible values + include: 'active', 'deleting', 'deleteFailed' + :type state: str or ~azure.batch.models.CertificateState + :param state_transition_time: The time at which the certificate entered + its current state. + :type state_transition_time: datetime + :param previous_state: The previous state of the certificate. This + property is not set if the certificate is in its initial active state. + Possible values include: 'active', 'deleting', 'deleteFailed' + :type previous_state: str or ~azure.batch.models.CertificateState + :param previous_state_transition_time: The time at which the certificate + entered its previous state. This property is not set if the certificate is + in its initial Active state. + :type previous_state_transition_time: datetime + :param public_data: The public part of the certificate as a base-64 + encoded .cer file. + :type public_data: str + :param delete_certificate_error: The error that occurred on the last + attempt to delete this certificate. This property is set only if the + certificate is in the DeleteFailed state. + :type delete_certificate_error: ~azure.batch.models.DeleteCertificateError + """ + + _attribute_map = { + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + 'thumbprint_algorithm': {'key': 'thumbprintAlgorithm', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'CertificateState'}, + 'state_transition_time': {'key': 'stateTransitionTime', 'type': 'iso-8601'}, + 'previous_state': {'key': 'previousState', 'type': 'CertificateState'}, + 'previous_state_transition_time': {'key': 'previousStateTransitionTime', 'type': 'iso-8601'}, + 'public_data': {'key': 'publicData', 'type': 'str'}, + 'delete_certificate_error': {'key': 'deleteCertificateError', 'type': 'DeleteCertificateError'}, + } + + def __init__(self, *, thumbprint: str=None, thumbprint_algorithm: str=None, url: str=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, public_data: str=None, delete_certificate_error=None, **kwargs) -> None: + super(Certificate, self).__init__(**kwargs) + self.thumbprint = thumbprint + self.thumbprint_algorithm = thumbprint_algorithm + self.url = url + self.state = state + self.state_transition_time = state_transition_time + self.previous_state = previous_state + self.previous_state_transition_time = previous_state_transition_time + self.public_data = public_data + self.delete_certificate_error = delete_certificate_error diff --git a/azure-batch/azure/batch/models/certificate_reference.py b/azure-batch/azure/batch/models/certificate_reference.py index 6d808a5d7b46..976c19086631 100644 --- a/azure-batch/azure/batch/models/certificate_reference.py +++ b/azure-batch/azure/batch/models/certificate_reference.py @@ -15,10 +15,12 @@ class CertificateReference(Model): """A reference to a certificate to be installed on compute nodes in a pool. - :param thumbprint: The thumbprint of the certificate. + All required parameters must be populated in order to send to Azure. + + :param thumbprint: Required. The thumbprint of the certificate. :type thumbprint: str - :param thumbprint_algorithm: The algorithm with which the thumbprint is - associated. This must be sha1. + :param thumbprint_algorithm: Required. The algorithm with which the + thumbprint is associated. This must be sha1. :type thumbprint_algorithm: str :param store_location: The location of the certificate store on the compute node into which to install the certificate. The default value is @@ -59,10 +61,10 @@ class CertificateReference(Model): 'visibility': {'key': 'visibility', 'type': '[CertificateVisibility]'}, } - def __init__(self, thumbprint, thumbprint_algorithm, store_location=None, store_name=None, visibility=None): - super(CertificateReference, self).__init__() - self.thumbprint = thumbprint - self.thumbprint_algorithm = thumbprint_algorithm - self.store_location = store_location - self.store_name = store_name - self.visibility = visibility + def __init__(self, **kwargs): + super(CertificateReference, self).__init__(**kwargs) + self.thumbprint = kwargs.get('thumbprint', None) + self.thumbprint_algorithm = kwargs.get('thumbprint_algorithm', None) + self.store_location = kwargs.get('store_location', None) + self.store_name = kwargs.get('store_name', None) + self.visibility = kwargs.get('visibility', None) diff --git a/azure-batch/azure/batch/models/certificate_reference_py3.py b/azure-batch/azure/batch/models/certificate_reference_py3.py new file mode 100644 index 000000000000..46e52e27581d --- /dev/null +++ b/azure-batch/azure/batch/models/certificate_reference_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateReference(Model): + """A reference to a certificate to be installed on compute nodes in a pool. + + All required parameters must be populated in order to send to Azure. + + :param thumbprint: Required. The thumbprint of the certificate. + :type thumbprint: str + :param thumbprint_algorithm: Required. The algorithm with which the + thumbprint is associated. This must be sha1. + :type thumbprint_algorithm: str + :param store_location: The location of the certificate store on the + compute node into which to install the certificate. The default value is + currentuser. This property is applicable only for pools configured with + Windows nodes (that is, created with cloudServiceConfiguration, or with + virtualMachineConfiguration using a Windows image reference). For Linux + compute nodes, the certificates are stored in a directory inside the task + working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is + supplied to the task to query for this location. For certificates with + visibility of 'remoteUser', a 'certs' directory is created in the user's + home directory (e.g., /home/{user-name}/certs) and certificates are placed + in that directory. Possible values include: 'currentUser', 'localMachine' + :type store_location: str or ~azure.batch.models.CertificateStoreLocation + :param store_name: The name of the certificate store on the compute node + into which to install the certificate. This property is applicable only + for pools configured with Windows nodes (that is, created with + cloudServiceConfiguration, or with virtualMachineConfiguration using a + Windows image reference). Common store names include: My, Root, CA, Trust, + Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but + any custom store name can also be used. The default value is My. + :type store_name: str + :param visibility: Which user accounts on the compute node should have + access to the private data of the certificate. You can specify more than + one visibility in this collection. The default is all accounts. + :type visibility: list[str or ~azure.batch.models.CertificateVisibility] + """ + + _validation = { + 'thumbprint': {'required': True}, + 'thumbprint_algorithm': {'required': True}, + } + + _attribute_map = { + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + 'thumbprint_algorithm': {'key': 'thumbprintAlgorithm', 'type': 'str'}, + 'store_location': {'key': 'storeLocation', 'type': 'CertificateStoreLocation'}, + 'store_name': {'key': 'storeName', 'type': 'str'}, + 'visibility': {'key': 'visibility', 'type': '[CertificateVisibility]'}, + } + + def __init__(self, *, thumbprint: str, thumbprint_algorithm: str, store_location=None, store_name: str=None, visibility=None, **kwargs) -> None: + super(CertificateReference, self).__init__(**kwargs) + self.thumbprint = thumbprint + self.thumbprint_algorithm = thumbprint_algorithm + self.store_location = store_location + self.store_name = store_name + self.visibility = visibility diff --git a/azure-batch/azure/batch/models/cloud_job.py b/azure-batch/azure/batch/models/cloud_job.py index c65d96612358..4e6cafbf48d9 100644 --- a/azure-batch/azure/batch/models/cloud_job.py +++ b/azure-batch/azure/batch/models/cloud_job.py @@ -131,28 +131,28 @@ class CloudJob(Model): 'stats': {'key': 'stats', 'type': 'JobStatistics'}, } - def __init__(self, id=None, display_name=None, uses_task_dependencies=None, url=None, e_tag=None, last_modified=None, creation_time=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, priority=None, constraints=None, job_manager_task=None, job_preparation_task=None, job_release_task=None, common_environment_settings=None, pool_info=None, on_all_tasks_complete=None, on_task_failure=None, metadata=None, execution_info=None, stats=None): - super(CloudJob, self).__init__() - self.id = id - self.display_name = display_name - self.uses_task_dependencies = uses_task_dependencies - self.url = url - self.e_tag = e_tag - self.last_modified = last_modified - self.creation_time = creation_time - self.state = state - self.state_transition_time = state_transition_time - self.previous_state = previous_state - self.previous_state_transition_time = previous_state_transition_time - self.priority = priority - self.constraints = constraints - self.job_manager_task = job_manager_task - self.job_preparation_task = job_preparation_task - self.job_release_task = job_release_task - self.common_environment_settings = common_environment_settings - self.pool_info = pool_info - self.on_all_tasks_complete = on_all_tasks_complete - self.on_task_failure = on_task_failure - self.metadata = metadata - self.execution_info = execution_info - self.stats = stats + def __init__(self, **kwargs): + super(CloudJob, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.uses_task_dependencies = kwargs.get('uses_task_dependencies', None) + self.url = kwargs.get('url', None) + self.e_tag = kwargs.get('e_tag', None) + self.last_modified = kwargs.get('last_modified', None) + self.creation_time = kwargs.get('creation_time', None) + self.state = kwargs.get('state', None) + self.state_transition_time = kwargs.get('state_transition_time', None) + self.previous_state = kwargs.get('previous_state', None) + self.previous_state_transition_time = kwargs.get('previous_state_transition_time', None) + self.priority = kwargs.get('priority', None) + self.constraints = kwargs.get('constraints', None) + self.job_manager_task = kwargs.get('job_manager_task', None) + self.job_preparation_task = kwargs.get('job_preparation_task', None) + self.job_release_task = kwargs.get('job_release_task', None) + self.common_environment_settings = kwargs.get('common_environment_settings', None) + self.pool_info = kwargs.get('pool_info', None) + self.on_all_tasks_complete = kwargs.get('on_all_tasks_complete', None) + self.on_task_failure = kwargs.get('on_task_failure', None) + self.metadata = kwargs.get('metadata', None) + self.execution_info = kwargs.get('execution_info', None) + self.stats = kwargs.get('stats', None) diff --git a/azure-batch/azure/batch/models/cloud_job_py3.py b/azure-batch/azure/batch/models/cloud_job_py3.py new file mode 100644 index 000000000000..226cb3bb7cc3 --- /dev/null +++ b/azure-batch/azure/batch/models/cloud_job_py3.py @@ -0,0 +1,158 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CloudJob(Model): + """An Azure Batch job. + + :param id: A string that uniquely identifies the job within the account. + The ID is case-preserving and case-insensitive (that is, you may not have + two IDs within an account that differ only by case). + :type id: str + :param display_name: The display name for the job. + :type display_name: str + :param uses_task_dependencies: Whether tasks in the job can define + dependencies on each other. The default is false. + :type uses_task_dependencies: bool + :param url: The URL of the job. + :type url: str + :param e_tag: The ETag of the job. This is an opaque string. You can use + it to detect whether the job has changed between requests. In particular, + you can be pass the ETag when updating a job to specify that your changes + should take effect only if nobody else has modified the job in the + meantime. + :type e_tag: str + :param last_modified: The last modified time of the job. This is the last + time at which the job level data, such as the job state or priority, + changed. It does not factor in task-level changes such as adding new tasks + or tasks changing state. + :type last_modified: datetime + :param creation_time: The creation time of the job. + :type creation_time: datetime + :param state: The current state of the job. Possible values include: + 'active', 'disabling', 'disabled', 'enabling', 'terminating', 'completed', + 'deleting' + :type state: str or ~azure.batch.models.JobState + :param state_transition_time: The time at which the job entered its + current state. + :type state_transition_time: datetime + :param previous_state: The previous state of the job. This property is not + set if the job is in its initial Active state. Possible values include: + 'active', 'disabling', 'disabled', 'enabling', 'terminating', 'completed', + 'deleting' + :type previous_state: str or ~azure.batch.models.JobState + :param previous_state_transition_time: The time at which the job entered + its previous state. This property is not set if the job is in its initial + Active state. + :type previous_state_transition_time: datetime + :param priority: The priority of the job. Priority values can range from + -1000 to 1000, with -1000 being the lowest priority and 1000 being the + highest priority. The default value is 0. + :type priority: int + :param constraints: The execution constraints for the job. + :type constraints: ~azure.batch.models.JobConstraints + :param job_manager_task: Details of a Job Manager task to be launched when + the job is started. + :type job_manager_task: ~azure.batch.models.JobManagerTask + :param job_preparation_task: The Job Preparation task. The Job Preparation + task is a special task run on each node before any other task of the job. + :type job_preparation_task: ~azure.batch.models.JobPreparationTask + :param job_release_task: The Job Release task. The Job Release task is a + special task run at the end of the job on each node that has run any other + task of the job. + :type job_release_task: ~azure.batch.models.JobReleaseTask + :param common_environment_settings: The list of common environment + variable settings. These environment variables are set for all tasks in + the job (including the Job Manager, Job Preparation and Job Release + tasks). Individual tasks can override an environment setting specified + here by specifying the same setting name with a different value. + :type common_environment_settings: + list[~azure.batch.models.EnvironmentSetting] + :param pool_info: The pool settings associated with the job. + :type pool_info: ~azure.batch.models.PoolInformation + :param on_all_tasks_complete: The action the Batch service should take + when all tasks in the job are in the completed state. The default is + noaction. Possible values include: 'noAction', 'terminateJob' + :type on_all_tasks_complete: str or ~azure.batch.models.OnAllTasksComplete + :param on_task_failure: The action the Batch service should take when any + task in the job fails. A task is considered to have failed if has a + failureInfo. A failureInfo is set if the task completes with a non-zero + exit code after exhausting its retry count, or if there was an error + starting the task, for example due to a resource file download error. The + default is noaction. Possible values include: 'noAction', + 'performExitOptionsJobAction' + :type on_task_failure: str or ~azure.batch.models.OnTaskFailure + :param metadata: A list of name-value pairs associated with the job as + metadata. The Batch service does not assign any meaning to metadata; it is + solely for the use of user code. + :type metadata: list[~azure.batch.models.MetadataItem] + :param execution_info: The execution information for the job. + :type execution_info: ~azure.batch.models.JobExecutionInformation + :param stats: Resource usage statistics for the entire lifetime of the + job. The statistics may not be immediately available. The Batch service + performs periodic roll-up of statistics. The typical delay is about 30 + minutes. + :type stats: ~azure.batch.models.JobStatistics + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'uses_task_dependencies': {'key': 'usesTaskDependencies', 'type': 'bool'}, + 'url': {'key': 'url', 'type': 'str'}, + 'e_tag': {'key': 'eTag', 'type': 'str'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'creation_time': {'key': 'creationTime', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'JobState'}, + 'state_transition_time': {'key': 'stateTransitionTime', 'type': 'iso-8601'}, + 'previous_state': {'key': 'previousState', 'type': 'JobState'}, + 'previous_state_transition_time': {'key': 'previousStateTransitionTime', 'type': 'iso-8601'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'constraints': {'key': 'constraints', 'type': 'JobConstraints'}, + 'job_manager_task': {'key': 'jobManagerTask', 'type': 'JobManagerTask'}, + 'job_preparation_task': {'key': 'jobPreparationTask', 'type': 'JobPreparationTask'}, + 'job_release_task': {'key': 'jobReleaseTask', 'type': 'JobReleaseTask'}, + 'common_environment_settings': {'key': 'commonEnvironmentSettings', 'type': '[EnvironmentSetting]'}, + 'pool_info': {'key': 'poolInfo', 'type': 'PoolInformation'}, + 'on_all_tasks_complete': {'key': 'onAllTasksComplete', 'type': 'OnAllTasksComplete'}, + 'on_task_failure': {'key': 'onTaskFailure', 'type': 'OnTaskFailure'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + 'execution_info': {'key': 'executionInfo', 'type': 'JobExecutionInformation'}, + 'stats': {'key': 'stats', 'type': 'JobStatistics'}, + } + + def __init__(self, *, id: str=None, display_name: str=None, uses_task_dependencies: bool=None, url: str=None, e_tag: str=None, last_modified=None, creation_time=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, priority: int=None, constraints=None, job_manager_task=None, job_preparation_task=None, job_release_task=None, common_environment_settings=None, pool_info=None, on_all_tasks_complete=None, on_task_failure=None, metadata=None, execution_info=None, stats=None, **kwargs) -> None: + super(CloudJob, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.uses_task_dependencies = uses_task_dependencies + self.url = url + self.e_tag = e_tag + self.last_modified = last_modified + self.creation_time = creation_time + self.state = state + self.state_transition_time = state_transition_time + self.previous_state = previous_state + self.previous_state_transition_time = previous_state_transition_time + self.priority = priority + self.constraints = constraints + self.job_manager_task = job_manager_task + self.job_preparation_task = job_preparation_task + self.job_release_task = job_release_task + self.common_environment_settings = common_environment_settings + self.pool_info = pool_info + self.on_all_tasks_complete = on_all_tasks_complete + self.on_task_failure = on_task_failure + self.metadata = metadata + self.execution_info = execution_info + self.stats = stats diff --git a/azure-batch/azure/batch/models/cloud_job_schedule.py b/azure-batch/azure/batch/models/cloud_job_schedule.py index f72555b7e4d8..1a2a33fda27d 100644 --- a/azure-batch/azure/batch/models/cloud_job_schedule.py +++ b/azure-batch/azure/batch/models/cloud_job_schedule.py @@ -88,20 +88,20 @@ class CloudJobSchedule(Model): 'stats': {'key': 'stats', 'type': 'JobScheduleStatistics'}, } - def __init__(self, id=None, display_name=None, url=None, e_tag=None, last_modified=None, creation_time=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, schedule=None, job_specification=None, execution_info=None, metadata=None, stats=None): - super(CloudJobSchedule, self).__init__() - self.id = id - self.display_name = display_name - self.url = url - self.e_tag = e_tag - self.last_modified = last_modified - self.creation_time = creation_time - self.state = state - self.state_transition_time = state_transition_time - self.previous_state = previous_state - self.previous_state_transition_time = previous_state_transition_time - self.schedule = schedule - self.job_specification = job_specification - self.execution_info = execution_info - self.metadata = metadata - self.stats = stats + def __init__(self, **kwargs): + super(CloudJobSchedule, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.url = kwargs.get('url', None) + self.e_tag = kwargs.get('e_tag', None) + self.last_modified = kwargs.get('last_modified', None) + self.creation_time = kwargs.get('creation_time', None) + self.state = kwargs.get('state', None) + self.state_transition_time = kwargs.get('state_transition_time', None) + self.previous_state = kwargs.get('previous_state', None) + self.previous_state_transition_time = kwargs.get('previous_state_transition_time', None) + self.schedule = kwargs.get('schedule', None) + self.job_specification = kwargs.get('job_specification', None) + self.execution_info = kwargs.get('execution_info', None) + self.metadata = kwargs.get('metadata', None) + self.stats = kwargs.get('stats', None) diff --git a/azure-batch/azure/batch/models/cloud_job_schedule_py3.py b/azure-batch/azure/batch/models/cloud_job_schedule_py3.py new file mode 100644 index 000000000000..1542fe56acbe --- /dev/null +++ b/azure-batch/azure/batch/models/cloud_job_schedule_py3.py @@ -0,0 +1,107 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CloudJobSchedule(Model): + """A job schedule that allows recurring jobs by specifying when to run jobs + and a specification used to create each job. + + :param id: A string that uniquely identifies the schedule within the + account. + :type id: str + :param display_name: The display name for the schedule. + :type display_name: str + :param url: The URL of the job schedule. + :type url: str + :param e_tag: The ETag of the job schedule. This is an opaque string. You + can use it to detect whether the job schedule has changed between + requests. In particular, you can be pass the ETag with an Update Job + Schedule request to specify that your changes should take effect only if + nobody else has modified the schedule in the meantime. + :type e_tag: str + :param last_modified: The last modified time of the job schedule. This is + the last time at which the schedule level data, such as the job + specification or recurrence information, changed. It does not factor in + job-level changes such as new jobs being created or jobs changing state. + :type last_modified: datetime + :param creation_time: The creation time of the job schedule. + :type creation_time: datetime + :param state: The current state of the job schedule. Possible values + include: 'active', 'completed', 'disabled', 'terminating', 'deleting' + :type state: str or ~azure.batch.models.JobScheduleState + :param state_transition_time: The time at which the job schedule entered + the current state. + :type state_transition_time: datetime + :param previous_state: The previous state of the job schedule. This + property is not present if the job schedule is in its initial active + state. Possible values include: 'active', 'completed', 'disabled', + 'terminating', 'deleting' + :type previous_state: str or ~azure.batch.models.JobScheduleState + :param previous_state_transition_time: The time at which the job schedule + entered its previous state. This property is not present if the job + schedule is in its initial active state. + :type previous_state_transition_time: datetime + :param schedule: The schedule according to which jobs will be created. + :type schedule: ~azure.batch.models.Schedule + :param job_specification: The details of the jobs to be created on this + schedule. + :type job_specification: ~azure.batch.models.JobSpecification + :param execution_info: Information about jobs that have been and will be + run under this schedule. + :type execution_info: ~azure.batch.models.JobScheduleExecutionInformation + :param metadata: A list of name-value pairs associated with the schedule + as metadata. The Batch service does not assign any meaning to metadata; it + is solely for the use of user code. + :type metadata: list[~azure.batch.models.MetadataItem] + :param stats: The lifetime resource usage statistics for the job schedule. + The statistics may not be immediately available. The Batch service + performs periodic roll-up of statistics. The typical delay is about 30 + minutes. + :type stats: ~azure.batch.models.JobScheduleStatistics + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'e_tag': {'key': 'eTag', 'type': 'str'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'creation_time': {'key': 'creationTime', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'JobScheduleState'}, + 'state_transition_time': {'key': 'stateTransitionTime', 'type': 'iso-8601'}, + 'previous_state': {'key': 'previousState', 'type': 'JobScheduleState'}, + 'previous_state_transition_time': {'key': 'previousStateTransitionTime', 'type': 'iso-8601'}, + 'schedule': {'key': 'schedule', 'type': 'Schedule'}, + 'job_specification': {'key': 'jobSpecification', 'type': 'JobSpecification'}, + 'execution_info': {'key': 'executionInfo', 'type': 'JobScheduleExecutionInformation'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + 'stats': {'key': 'stats', 'type': 'JobScheduleStatistics'}, + } + + def __init__(self, *, id: str=None, display_name: str=None, url: str=None, e_tag: str=None, last_modified=None, creation_time=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, schedule=None, job_specification=None, execution_info=None, metadata=None, stats=None, **kwargs) -> None: + super(CloudJobSchedule, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.url = url + self.e_tag = e_tag + self.last_modified = last_modified + self.creation_time = creation_time + self.state = state + self.state_transition_time = state_transition_time + self.previous_state = previous_state + self.previous_state_transition_time = previous_state_transition_time + self.schedule = schedule + self.job_specification = job_specification + self.execution_info = execution_info + self.metadata = metadata + self.stats = stats diff --git a/azure-batch/azure/batch/models/cloud_pool.py b/azure-batch/azure/batch/models/cloud_pool.py index 24076aaadd84..8d85502dba7f 100644 --- a/azure-batch/azure/batch/models/cloud_pool.py +++ b/azure-batch/azure/batch/models/cloud_pool.py @@ -54,18 +54,9 @@ class CloudPool(Model): :type allocation_state_transition_time: datetime :param vm_size: The size of virtual machines in the pool. All virtual machines in a pool are the same size. For information about available - sizes of virtual machines for Cloud Services pools (pools created with - cloudServiceConfiguration), see Sizes for Cloud Services - (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). - Batch supports all Cloud Services VM sizes except ExtraSmall, A1V2 and - A2V2. For information about available VM sizes for pools using images from - the Virtual Machines Marketplace (pools created with - virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) - (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) - or Sizes for Virtual Machines (Windows) - (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). - Batch supports all Azure VM sizes except STANDARD_A0 and those with - premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). + sizes of virtual machines in pools, see Choose a VM size for compute nodes + in an Azure Batch pool + (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). :type vm_size: str :param cloud_service_configuration: The cloud service configuration for the pool. This property and virtualMachineConfiguration are mutually @@ -208,39 +199,39 @@ class CloudPool(Model): 'stats': {'key': 'stats', 'type': 'PoolStatistics'}, } - def __init__(self, id=None, display_name=None, url=None, e_tag=None, last_modified=None, creation_time=None, state=None, state_transition_time=None, allocation_state=None, allocation_state_transition_time=None, vm_size=None, cloud_service_configuration=None, virtual_machine_configuration=None, resize_timeout=None, resize_errors=None, current_dedicated_nodes=None, current_low_priority_nodes=None, target_dedicated_nodes=None, target_low_priority_nodes=None, enable_auto_scale=None, auto_scale_formula=None, auto_scale_evaluation_interval=None, auto_scale_run=None, enable_inter_node_communication=None, network_configuration=None, start_task=None, certificate_references=None, application_package_references=None, application_licenses=None, max_tasks_per_node=None, task_scheduling_policy=None, user_accounts=None, metadata=None, stats=None): - super(CloudPool, self).__init__() - self.id = id - self.display_name = display_name - self.url = url - self.e_tag = e_tag - self.last_modified = last_modified - self.creation_time = creation_time - self.state = state - self.state_transition_time = state_transition_time - self.allocation_state = allocation_state - self.allocation_state_transition_time = allocation_state_transition_time - self.vm_size = vm_size - self.cloud_service_configuration = cloud_service_configuration - self.virtual_machine_configuration = virtual_machine_configuration - self.resize_timeout = resize_timeout - self.resize_errors = resize_errors - self.current_dedicated_nodes = current_dedicated_nodes - self.current_low_priority_nodes = current_low_priority_nodes - self.target_dedicated_nodes = target_dedicated_nodes - self.target_low_priority_nodes = target_low_priority_nodes - self.enable_auto_scale = enable_auto_scale - self.auto_scale_formula = auto_scale_formula - self.auto_scale_evaluation_interval = auto_scale_evaluation_interval - self.auto_scale_run = auto_scale_run - self.enable_inter_node_communication = enable_inter_node_communication - self.network_configuration = network_configuration - self.start_task = start_task - self.certificate_references = certificate_references - self.application_package_references = application_package_references - self.application_licenses = application_licenses - self.max_tasks_per_node = max_tasks_per_node - self.task_scheduling_policy = task_scheduling_policy - self.user_accounts = user_accounts - self.metadata = metadata - self.stats = stats + def __init__(self, **kwargs): + super(CloudPool, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.url = kwargs.get('url', None) + self.e_tag = kwargs.get('e_tag', None) + self.last_modified = kwargs.get('last_modified', None) + self.creation_time = kwargs.get('creation_time', None) + self.state = kwargs.get('state', None) + self.state_transition_time = kwargs.get('state_transition_time', None) + self.allocation_state = kwargs.get('allocation_state', None) + self.allocation_state_transition_time = kwargs.get('allocation_state_transition_time', None) + self.vm_size = kwargs.get('vm_size', None) + self.cloud_service_configuration = kwargs.get('cloud_service_configuration', None) + self.virtual_machine_configuration = kwargs.get('virtual_machine_configuration', None) + self.resize_timeout = kwargs.get('resize_timeout', None) + self.resize_errors = kwargs.get('resize_errors', None) + self.current_dedicated_nodes = kwargs.get('current_dedicated_nodes', None) + self.current_low_priority_nodes = kwargs.get('current_low_priority_nodes', None) + self.target_dedicated_nodes = kwargs.get('target_dedicated_nodes', None) + self.target_low_priority_nodes = kwargs.get('target_low_priority_nodes', None) + self.enable_auto_scale = kwargs.get('enable_auto_scale', None) + self.auto_scale_formula = kwargs.get('auto_scale_formula', None) + self.auto_scale_evaluation_interval = kwargs.get('auto_scale_evaluation_interval', None) + self.auto_scale_run = kwargs.get('auto_scale_run', None) + self.enable_inter_node_communication = kwargs.get('enable_inter_node_communication', None) + self.network_configuration = kwargs.get('network_configuration', None) + self.start_task = kwargs.get('start_task', None) + self.certificate_references = kwargs.get('certificate_references', None) + self.application_package_references = kwargs.get('application_package_references', None) + self.application_licenses = kwargs.get('application_licenses', None) + self.max_tasks_per_node = kwargs.get('max_tasks_per_node', None) + self.task_scheduling_policy = kwargs.get('task_scheduling_policy', None) + self.user_accounts = kwargs.get('user_accounts', None) + self.metadata = kwargs.get('metadata', None) + self.stats = kwargs.get('stats', None) diff --git a/azure-batch/azure/batch/models/cloud_pool_py3.py b/azure-batch/azure/batch/models/cloud_pool_py3.py new file mode 100644 index 000000000000..b1166d42dc01 --- /dev/null +++ b/azure-batch/azure/batch/models/cloud_pool_py3.py @@ -0,0 +1,237 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CloudPool(Model): + """A pool in the Azure Batch service. + + :param id: A string that uniquely identifies the pool within the account. + The ID can contain any combination of alphanumeric characters including + hyphens and underscores, and cannot contain more than 64 characters. The + ID is case-preserving and case-insensitive (that is, you may not have two + IDs within an account that differ only by case). + :type id: str + :param display_name: The display name for the pool. The display name need + not be unique and can contain any Unicode characters up to a maximum + length of 1024. + :type display_name: str + :param url: The URL of the pool. + :type url: str + :param e_tag: The ETag of the pool. This is an opaque string. You can use + it to detect whether the pool has changed between requests. In particular, + you can be pass the ETag when updating a pool to specify that your changes + should take effect only if nobody else has modified the pool in the + meantime. + :type e_tag: str + :param last_modified: The last modified time of the pool. This is the last + time at which the pool level data, such as the targetDedicatedNodes or + enableAutoscale settings, changed. It does not factor in node-level + changes such as a compute node changing state. + :type last_modified: datetime + :param creation_time: The creation time of the pool. + :type creation_time: datetime + :param state: The current state of the pool. Possible values include: + 'active', 'deleting', 'upgrading' + :type state: str or ~azure.batch.models.PoolState + :param state_transition_time: The time at which the pool entered its + current state. + :type state_transition_time: datetime + :param allocation_state: Whether the pool is resizing. Possible values + include: 'steady', 'resizing', 'stopping' + :type allocation_state: str or ~azure.batch.models.AllocationState + :param allocation_state_transition_time: The time at which the pool + entered its current allocation state. + :type allocation_state_transition_time: datetime + :param vm_size: The size of virtual machines in the pool. All virtual + machines in a pool are the same size. For information about available + sizes of virtual machines in pools, see Choose a VM size for compute nodes + in an Azure Batch pool + (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). + :type vm_size: str + :param cloud_service_configuration: The cloud service configuration for + the pool. This property and virtualMachineConfiguration are mutually + exclusive and one of the properties must be specified. This property + cannot be specified if the Batch account was created with its + poolAllocationMode property set to 'UserSubscription'. + :type cloud_service_configuration: + ~azure.batch.models.CloudServiceConfiguration + :param virtual_machine_configuration: The virtual machine configuration + for the pool. This property and cloudServiceConfiguration are mutually + exclusive and one of the properties must be specified. + :type virtual_machine_configuration: + ~azure.batch.models.VirtualMachineConfiguration + :param resize_timeout: The timeout for allocation of compute nodes to the + pool. This is the timeout for the most recent resize operation. (The + initial sizing when the pool is created counts as a resize.) The default + value is 15 minutes. + :type resize_timeout: timedelta + :param resize_errors: A list of errors encountered while performing the + last resize on the pool. This property is set only if one or more errors + occurred during the last pool resize, and only when the pool + allocationState is Steady. + :type resize_errors: list[~azure.batch.models.ResizeError] + :param current_dedicated_nodes: The number of dedicated compute nodes + currently in the pool. + :type current_dedicated_nodes: int + :param current_low_priority_nodes: The number of low-priority compute + nodes currently in the pool. Low-priority compute nodes which have been + preempted are included in this count. + :type current_low_priority_nodes: int + :param target_dedicated_nodes: The desired number of dedicated compute + nodes in the pool. + :type target_dedicated_nodes: int + :param target_low_priority_nodes: The desired number of low-priority + compute nodes in the pool. + :type target_low_priority_nodes: int + :param enable_auto_scale: Whether the pool size should automatically + adjust over time. If false, at least one of targetDedicateNodes and + targetLowPriorityNodes must be specified. If true, the autoScaleFormula + property is required and the pool automatically resizes according to the + formula. The default value is false. + :type enable_auto_scale: bool + :param auto_scale_formula: A formula for the desired number of compute + nodes in the pool. This property is set only if the pool automatically + scales, i.e. enableAutoScale is true. + :type auto_scale_formula: str + :param auto_scale_evaluation_interval: The time interval at which to + automatically adjust the pool size according to the autoscale formula. + This property is set only if the pool automatically scales, i.e. + enableAutoScale is true. + :type auto_scale_evaluation_interval: timedelta + :param auto_scale_run: The results and errors from the last execution of + the autoscale formula. This property is set only if the pool automatically + scales, i.e. enableAutoScale is true. + :type auto_scale_run: ~azure.batch.models.AutoScaleRun + :param enable_inter_node_communication: Whether the pool permits direct + communication between nodes. This imposes restrictions on which nodes can + be assigned to the pool. Specifying this value can reduce the chance of + the requested number of nodes to be allocated in the pool. + :type enable_inter_node_communication: bool + :param network_configuration: The network configuration for the pool. + :type network_configuration: ~azure.batch.models.NetworkConfiguration + :param start_task: A task specified to run on each compute node as it + joins the pool. + :type start_task: ~azure.batch.models.StartTask + :param certificate_references: The list of certificates to be installed on + each compute node in the pool. For Windows compute nodes, the Batch + service installs the certificates to the specified certificate store and + location. For Linux compute nodes, the certificates are stored in a + directory inside the task working directory and an environment variable + AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this + location. For certificates with visibility of 'remoteUser', a 'certs' + directory is created in the user's home directory (e.g., + /home/{user-name}/certs) and certificates are placed in that directory. + :type certificate_references: + list[~azure.batch.models.CertificateReference] + :param application_package_references: The list of application packages to + be installed on each compute node in the pool. + :type application_package_references: + list[~azure.batch.models.ApplicationPackageReference] + :param application_licenses: The list of application licenses the Batch + service will make available on each compute node in the pool. The list of + application licenses must be a subset of available Batch service + application licenses. If a license is requested which is not supported, + pool creation will fail. + :type application_licenses: list[str] + :param max_tasks_per_node: The maximum number of tasks that can run + concurrently on a single compute node in the pool. + :type max_tasks_per_node: int + :param task_scheduling_policy: How tasks are distributed across compute + nodes in a pool. + :type task_scheduling_policy: ~azure.batch.models.TaskSchedulingPolicy + :param user_accounts: The list of user accounts to be created on each node + in the pool. + :type user_accounts: list[~azure.batch.models.UserAccount] + :param metadata: A list of name-value pairs associated with the pool as + metadata. + :type metadata: list[~azure.batch.models.MetadataItem] + :param stats: Utilization and resource usage statistics for the entire + lifetime of the pool. The statistics may not be immediately available. The + Batch service performs periodic roll-up of statistics. The typical delay + is about 30 minutes. + :type stats: ~azure.batch.models.PoolStatistics + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'e_tag': {'key': 'eTag', 'type': 'str'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'creation_time': {'key': 'creationTime', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'PoolState'}, + 'state_transition_time': {'key': 'stateTransitionTime', 'type': 'iso-8601'}, + 'allocation_state': {'key': 'allocationState', 'type': 'AllocationState'}, + 'allocation_state_transition_time': {'key': 'allocationStateTransitionTime', 'type': 'iso-8601'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'cloud_service_configuration': {'key': 'cloudServiceConfiguration', 'type': 'CloudServiceConfiguration'}, + 'virtual_machine_configuration': {'key': 'virtualMachineConfiguration', 'type': 'VirtualMachineConfiguration'}, + 'resize_timeout': {'key': 'resizeTimeout', 'type': 'duration'}, + 'resize_errors': {'key': 'resizeErrors', 'type': '[ResizeError]'}, + 'current_dedicated_nodes': {'key': 'currentDedicatedNodes', 'type': 'int'}, + 'current_low_priority_nodes': {'key': 'currentLowPriorityNodes', 'type': 'int'}, + 'target_dedicated_nodes': {'key': 'targetDedicatedNodes', 'type': 'int'}, + 'target_low_priority_nodes': {'key': 'targetLowPriorityNodes', 'type': 'int'}, + 'enable_auto_scale': {'key': 'enableAutoScale', 'type': 'bool'}, + 'auto_scale_formula': {'key': 'autoScaleFormula', 'type': 'str'}, + 'auto_scale_evaluation_interval': {'key': 'autoScaleEvaluationInterval', 'type': 'duration'}, + 'auto_scale_run': {'key': 'autoScaleRun', 'type': 'AutoScaleRun'}, + 'enable_inter_node_communication': {'key': 'enableInterNodeCommunication', 'type': 'bool'}, + 'network_configuration': {'key': 'networkConfiguration', 'type': 'NetworkConfiguration'}, + 'start_task': {'key': 'startTask', 'type': 'StartTask'}, + 'certificate_references': {'key': 'certificateReferences', 'type': '[CertificateReference]'}, + 'application_package_references': {'key': 'applicationPackageReferences', 'type': '[ApplicationPackageReference]'}, + 'application_licenses': {'key': 'applicationLicenses', 'type': '[str]'}, + 'max_tasks_per_node': {'key': 'maxTasksPerNode', 'type': 'int'}, + 'task_scheduling_policy': {'key': 'taskSchedulingPolicy', 'type': 'TaskSchedulingPolicy'}, + 'user_accounts': {'key': 'userAccounts', 'type': '[UserAccount]'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + 'stats': {'key': 'stats', 'type': 'PoolStatistics'}, + } + + def __init__(self, *, id: str=None, display_name: str=None, url: str=None, e_tag: str=None, last_modified=None, creation_time=None, state=None, state_transition_time=None, allocation_state=None, allocation_state_transition_time=None, vm_size: str=None, cloud_service_configuration=None, virtual_machine_configuration=None, resize_timeout=None, resize_errors=None, current_dedicated_nodes: int=None, current_low_priority_nodes: int=None, target_dedicated_nodes: int=None, target_low_priority_nodes: int=None, enable_auto_scale: bool=None, auto_scale_formula: str=None, auto_scale_evaluation_interval=None, auto_scale_run=None, enable_inter_node_communication: bool=None, network_configuration=None, start_task=None, certificate_references=None, application_package_references=None, application_licenses=None, max_tasks_per_node: int=None, task_scheduling_policy=None, user_accounts=None, metadata=None, stats=None, **kwargs) -> None: + super(CloudPool, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.url = url + self.e_tag = e_tag + self.last_modified = last_modified + self.creation_time = creation_time + self.state = state + self.state_transition_time = state_transition_time + self.allocation_state = allocation_state + self.allocation_state_transition_time = allocation_state_transition_time + self.vm_size = vm_size + self.cloud_service_configuration = cloud_service_configuration + self.virtual_machine_configuration = virtual_machine_configuration + self.resize_timeout = resize_timeout + self.resize_errors = resize_errors + self.current_dedicated_nodes = current_dedicated_nodes + self.current_low_priority_nodes = current_low_priority_nodes + self.target_dedicated_nodes = target_dedicated_nodes + self.target_low_priority_nodes = target_low_priority_nodes + self.enable_auto_scale = enable_auto_scale + self.auto_scale_formula = auto_scale_formula + self.auto_scale_evaluation_interval = auto_scale_evaluation_interval + self.auto_scale_run = auto_scale_run + self.enable_inter_node_communication = enable_inter_node_communication + self.network_configuration = network_configuration + self.start_task = start_task + self.certificate_references = certificate_references + self.application_package_references = application_package_references + self.application_licenses = application_licenses + self.max_tasks_per_node = max_tasks_per_node + self.task_scheduling_policy = task_scheduling_policy + self.user_accounts = user_accounts + self.metadata = metadata + self.stats = stats diff --git a/azure-batch/azure/batch/models/cloud_service_configuration.py b/azure-batch/azure/batch/models/cloud_service_configuration.py index bc2ed7e51205..d86bae4012d8 100644 --- a/azure-batch/azure/batch/models/cloud_service_configuration.py +++ b/azure-batch/azure/batch/models/cloud_service_configuration.py @@ -19,12 +19,15 @@ class CloudServiceConfiguration(Model): Variables are only populated by the server, and will be ignored when sending a request. - :param os_family: The Azure Guest OS family to be installed on the virtual - machines in the pool. Possible values are: 2 - OS Family 2, equivalent to - Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server - 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family - 5, equivalent to Windows Server 2016. For more information, see Azure - Guest OS Releases + All required parameters must be populated in order to send to Azure. + + :param os_family: Required. The Azure Guest OS family to be installed on + the virtual machines in the pool. Possible values are: + 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. + 3 - OS Family 3, equivalent to Windows Server 2012. + 4 - OS Family 4, equivalent to Windows Server 2012 R2. + 5 - OS Family 5, equivalent to Windows Server 2016. For more information, + see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases). :type os_family: str :param target_os_version: The Azure Guest OS version to be installed on @@ -51,8 +54,8 @@ class CloudServiceConfiguration(Model): 'current_os_version': {'key': 'currentOSVersion', 'type': 'str'}, } - def __init__(self, os_family, target_os_version=None): - super(CloudServiceConfiguration, self).__init__() - self.os_family = os_family - self.target_os_version = target_os_version + def __init__(self, **kwargs): + super(CloudServiceConfiguration, self).__init__(**kwargs) + self.os_family = kwargs.get('os_family', None) + self.target_os_version = kwargs.get('target_os_version', None) self.current_os_version = None diff --git a/azure-batch/azure/batch/models/cloud_service_configuration_py3.py b/azure-batch/azure/batch/models/cloud_service_configuration_py3.py new file mode 100644 index 000000000000..eb53f78f23d2 --- /dev/null +++ b/azure-batch/azure/batch/models/cloud_service_configuration_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CloudServiceConfiguration(Model): + """The configuration for nodes in a pool based on the Azure Cloud Services + platform. + + 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 os_family: Required. The Azure Guest OS family to be installed on + the virtual machines in the pool. Possible values are: + 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. + 3 - OS Family 3, equivalent to Windows Server 2012. + 4 - OS Family 4, equivalent to Windows Server 2012 R2. + 5 - OS Family 5, equivalent to Windows Server 2016. For more information, + see Azure Guest OS Releases + (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases). + :type os_family: str + :param target_os_version: The Azure Guest OS version to be installed on + the virtual machines in the pool. The default value is * which specifies + the latest operating system version for the specified OS family. + :type target_os_version: str + :ivar current_os_version: The Azure Guest OS Version currently installed + on the virtual machines in the pool. This may differ from targetOSVersion + if the pool state is Upgrading. In this case some virtual machines may be + on the targetOSVersion and some may be on the currentOSVersion during the + upgrade process. Once all virtual machines have upgraded, currentOSVersion + is updated to be the same as targetOSVersion. + :vartype current_os_version: str + """ + + _validation = { + 'os_family': {'required': True}, + 'current_os_version': {'readonly': True}, + } + + _attribute_map = { + 'os_family': {'key': 'osFamily', 'type': 'str'}, + 'target_os_version': {'key': 'targetOSVersion', 'type': 'str'}, + 'current_os_version': {'key': 'currentOSVersion', 'type': 'str'}, + } + + def __init__(self, *, os_family: str, target_os_version: str=None, **kwargs) -> None: + super(CloudServiceConfiguration, self).__init__(**kwargs) + self.os_family = os_family + self.target_os_version = target_os_version + self.current_os_version = None diff --git a/azure-batch/azure/batch/models/cloud_task.py b/azure-batch/azure/batch/models/cloud_task.py index 7948d2b02146..df9e36778267 100644 --- a/azure-batch/azure/batch/models/cloud_task.py +++ b/azure-batch/azure/batch/models/cloud_task.py @@ -87,7 +87,12 @@ class CloudTask(Model): :param resource_files: A list of files that the Batch service will download to the compute node before running the command line. For multi-instance tasks, the resource files will only be downloaded to the - compute node on which the primary task is executed. + compute node on which the primary task is executed. There is a maximum + size for the list of resource files. When the max size is exceeded, the + request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. :type resource_files: list[~azure.batch.models.ResourceFile] :param output_files: A list of files that the Batch service will upload from the compute node after running the command line. For multi-instance @@ -173,31 +178,31 @@ class CloudTask(Model): 'authentication_token_settings': {'key': 'authenticationTokenSettings', 'type': 'AuthenticationTokenSettings'}, } - def __init__(self, id=None, display_name=None, url=None, e_tag=None, last_modified=None, creation_time=None, exit_conditions=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, command_line=None, container_settings=None, resource_files=None, output_files=None, environment_settings=None, affinity_info=None, constraints=None, user_identity=None, execution_info=None, node_info=None, multi_instance_settings=None, stats=None, depends_on=None, application_package_references=None, authentication_token_settings=None): - super(CloudTask, self).__init__() - self.id = id - self.display_name = display_name - self.url = url - self.e_tag = e_tag - self.last_modified = last_modified - self.creation_time = creation_time - self.exit_conditions = exit_conditions - self.state = state - self.state_transition_time = state_transition_time - self.previous_state = previous_state - self.previous_state_transition_time = previous_state_transition_time - self.command_line = command_line - self.container_settings = container_settings - self.resource_files = resource_files - self.output_files = output_files - self.environment_settings = environment_settings - self.affinity_info = affinity_info - self.constraints = constraints - self.user_identity = user_identity - self.execution_info = execution_info - self.node_info = node_info - self.multi_instance_settings = multi_instance_settings - self.stats = stats - self.depends_on = depends_on - self.application_package_references = application_package_references - self.authentication_token_settings = authentication_token_settings + def __init__(self, **kwargs): + super(CloudTask, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.url = kwargs.get('url', None) + self.e_tag = kwargs.get('e_tag', None) + self.last_modified = kwargs.get('last_modified', None) + self.creation_time = kwargs.get('creation_time', None) + self.exit_conditions = kwargs.get('exit_conditions', None) + self.state = kwargs.get('state', None) + self.state_transition_time = kwargs.get('state_transition_time', None) + self.previous_state = kwargs.get('previous_state', None) + self.previous_state_transition_time = kwargs.get('previous_state_transition_time', None) + self.command_line = kwargs.get('command_line', None) + self.container_settings = kwargs.get('container_settings', None) + self.resource_files = kwargs.get('resource_files', None) + self.output_files = kwargs.get('output_files', None) + self.environment_settings = kwargs.get('environment_settings', None) + self.affinity_info = kwargs.get('affinity_info', None) + self.constraints = kwargs.get('constraints', None) + self.user_identity = kwargs.get('user_identity', None) + self.execution_info = kwargs.get('execution_info', None) + self.node_info = kwargs.get('node_info', None) + self.multi_instance_settings = kwargs.get('multi_instance_settings', None) + self.stats = kwargs.get('stats', None) + self.depends_on = kwargs.get('depends_on', None) + self.application_package_references = kwargs.get('application_package_references', None) + self.authentication_token_settings = kwargs.get('authentication_token_settings', None) diff --git a/azure-batch/azure/batch/models/cloud_task_list_subtasks_result.py b/azure-batch/azure/batch/models/cloud_task_list_subtasks_result.py index 5370b5047e2c..c592b3489bcf 100644 --- a/azure-batch/azure/batch/models/cloud_task_list_subtasks_result.py +++ b/azure-batch/azure/batch/models/cloud_task_list_subtasks_result.py @@ -23,6 +23,6 @@ class CloudTaskListSubtasksResult(Model): 'value': {'key': 'value', 'type': '[SubtaskInformation]'}, } - def __init__(self, value=None): - super(CloudTaskListSubtasksResult, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(CloudTaskListSubtasksResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-batch/azure/batch/models/cloud_task_list_subtasks_result_py3.py b/azure-batch/azure/batch/models/cloud_task_list_subtasks_result_py3.py new file mode 100644 index 000000000000..f21e726050a1 --- /dev/null +++ b/azure-batch/azure/batch/models/cloud_task_list_subtasks_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CloudTaskListSubtasksResult(Model): + """The result of listing the subtasks of a task. + + :param value: The list of subtasks. + :type value: list[~azure.batch.models.SubtaskInformation] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[SubtaskInformation]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(CloudTaskListSubtasksResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-batch/azure/batch/models/cloud_task_py3.py b/azure-batch/azure/batch/models/cloud_task_py3.py new file mode 100644 index 000000000000..9592854467ad --- /dev/null +++ b/azure-batch/azure/batch/models/cloud_task_py3.py @@ -0,0 +1,208 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CloudTask(Model): + """An Azure Batch task. + + Batch will retry tasks when a recovery operation is triggered on a compute + node. Examples of recovery operations include (but are not limited to) when + an unhealthy compute node is rebooted or a compute node disappeared due to + host failure. Retries due to recovery operations are independent of and are + not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is + 0, an internal retry due to a recovery operation may occur. Because of + this, all tasks should be idempotent. This means tasks need to tolerate + being interrupted and restarted without causing any corruption or duplicate + data. The best practice for long running tasks is to use some form of + checkpointing. + + :param id: A string that uniquely identifies the task within the job. The + ID can contain any combination of alphanumeric characters including + hyphens and underscores, and cannot contain more than 64 characters. + :type id: str + :param display_name: A display name for the task. The display name need + not be unique and can contain any Unicode characters up to a maximum + length of 1024. + :type display_name: str + :param url: The URL of the task. + :type url: str + :param e_tag: The ETag of the task. This is an opaque string. You can use + it to detect whether the task has changed between requests. In particular, + you can be pass the ETag when updating a task to specify that your changes + should take effect only if nobody else has modified the task in the + meantime. + :type e_tag: str + :param last_modified: The last modified time of the task. + :type last_modified: datetime + :param creation_time: The creation time of the task. + :type creation_time: datetime + :param exit_conditions: How the Batch service should respond when the task + completes. + :type exit_conditions: ~azure.batch.models.ExitConditions + :param state: The current state of the task. Possible values include: + 'active', 'preparing', 'running', 'completed' + :type state: str or ~azure.batch.models.TaskState + :param state_transition_time: The time at which the task entered its + current state. + :type state_transition_time: datetime + :param previous_state: The previous state of the task. This property is + not set if the task is in its initial Active state. Possible values + include: 'active', 'preparing', 'running', 'completed' + :type previous_state: str or ~azure.batch.models.TaskState + :param previous_state_transition_time: The time at which the task entered + its previous state. This property is not set if the task is in its initial + Active state. + :type previous_state_transition_time: datetime + :param command_line: The command line of the task. For multi-instance + tasks, the command line is executed as the primary task, after the primary + task and all subtasks have finished executing the coordination command + line. The command line does not run under a shell, and therefore cannot + take advantage of shell features such as environment variable expansion. + If you want to take advantage of such features, you should invoke the + shell in the command line, for example using "cmd /c MyCommand" in Windows + or "/bin/sh -c MyCommand" in Linux. If the command line refers to file + paths, it should use a relative path (relative to the task working + directory), or use the Batch provided environment variable + (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). + :type command_line: str + :param container_settings: The settings for the container under which the + task runs. If the pool that will run this task has containerConfiguration + set, this must be set as well. If the pool that will run this task doesn't + have containerConfiguration set, this must not be set. When this is + specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR + (the root of Azure Batch directories on the node) are mapped into the + container, all task environment variables are mapped into the container, + and the task command line is executed in the container. + :type container_settings: ~azure.batch.models.TaskContainerSettings + :param resource_files: A list of files that the Batch service will + download to the compute node before running the command line. For + multi-instance tasks, the resource files will only be downloaded to the + compute node on which the primary task is executed. There is a maximum + size for the list of resource files. When the max size is exceeded, the + request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. + :type resource_files: list[~azure.batch.models.ResourceFile] + :param output_files: A list of files that the Batch service will upload + from the compute node after running the command line. For multi-instance + tasks, the files will only be uploaded from the compute node on which the + primary task is executed. + :type output_files: list[~azure.batch.models.OutputFile] + :param environment_settings: A list of environment variable settings for + the task. + :type environment_settings: list[~azure.batch.models.EnvironmentSetting] + :param affinity_info: A locality hint that can be used by the Batch + service to select a compute node on which to start the new task. + :type affinity_info: ~azure.batch.models.AffinityInformation + :param constraints: The execution constraints that apply to this task. + :type constraints: ~azure.batch.models.TaskConstraints + :param user_identity: The user identity under which the task runs. If + omitted, the task runs as a non-administrative user unique to the task. + :type user_identity: ~azure.batch.models.UserIdentity + :param execution_info: Information about the execution of the task. + :type execution_info: ~azure.batch.models.TaskExecutionInformation + :param node_info: Information about the compute node on which the task + ran. + :type node_info: ~azure.batch.models.ComputeNodeInformation + :param multi_instance_settings: An object that indicates that the task is + a multi-instance task, and contains information about how to run the + multi-instance task. + :type multi_instance_settings: ~azure.batch.models.MultiInstanceSettings + :param stats: Resource usage statistics for the task. + :type stats: ~azure.batch.models.TaskStatistics + :param depends_on: The tasks that this task depends on. This task will not + be scheduled until all tasks that it depends on have completed + successfully. If any of those tasks fail and exhaust their retry counts, + this task will never be scheduled. + :type depends_on: ~azure.batch.models.TaskDependencies + :param application_package_references: A list of application packages that + the Batch service will deploy to the compute node before running the + command line. Application packages are downloaded and deployed to a shared + directory, not the task working directory. Therefore, if a referenced + package is already on the compute node, and is up to date, then it is not + re-downloaded; the existing copy on the compute node is used. If a + referenced application package cannot be installed, for example because + the package has been deleted or because download failed, the task fails. + :type application_package_references: + list[~azure.batch.models.ApplicationPackageReference] + :param authentication_token_settings: The settings for an authentication + token that the task can use to perform Batch service operations. If this + property is set, the Batch service provides the task with an + authentication token which can be used to authenticate Batch service + operations without requiring an account access key. The token is provided + via the AZ_BATCH_AUTHENTICATION_TOKEN environment variable. The operations + that the task can carry out using the token depend on the settings. For + example, a task can request job permissions in order to add other tasks to + the job, or check the status of the job or of other tasks under the job. + :type authentication_token_settings: + ~azure.batch.models.AuthenticationTokenSettings + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'e_tag': {'key': 'eTag', 'type': 'str'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'creation_time': {'key': 'creationTime', 'type': 'iso-8601'}, + 'exit_conditions': {'key': 'exitConditions', 'type': 'ExitConditions'}, + 'state': {'key': 'state', 'type': 'TaskState'}, + 'state_transition_time': {'key': 'stateTransitionTime', 'type': 'iso-8601'}, + 'previous_state': {'key': 'previousState', 'type': 'TaskState'}, + 'previous_state_transition_time': {'key': 'previousStateTransitionTime', 'type': 'iso-8601'}, + 'command_line': {'key': 'commandLine', 'type': 'str'}, + 'container_settings': {'key': 'containerSettings', 'type': 'TaskContainerSettings'}, + 'resource_files': {'key': 'resourceFiles', 'type': '[ResourceFile]'}, + 'output_files': {'key': 'outputFiles', 'type': '[OutputFile]'}, + 'environment_settings': {'key': 'environmentSettings', 'type': '[EnvironmentSetting]'}, + 'affinity_info': {'key': 'affinityInfo', 'type': 'AffinityInformation'}, + 'constraints': {'key': 'constraints', 'type': 'TaskConstraints'}, + 'user_identity': {'key': 'userIdentity', 'type': 'UserIdentity'}, + 'execution_info': {'key': 'executionInfo', 'type': 'TaskExecutionInformation'}, + 'node_info': {'key': 'nodeInfo', 'type': 'ComputeNodeInformation'}, + 'multi_instance_settings': {'key': 'multiInstanceSettings', 'type': 'MultiInstanceSettings'}, + 'stats': {'key': 'stats', 'type': 'TaskStatistics'}, + 'depends_on': {'key': 'dependsOn', 'type': 'TaskDependencies'}, + 'application_package_references': {'key': 'applicationPackageReferences', 'type': '[ApplicationPackageReference]'}, + 'authentication_token_settings': {'key': 'authenticationTokenSettings', 'type': 'AuthenticationTokenSettings'}, + } + + def __init__(self, *, id: str=None, display_name: str=None, url: str=None, e_tag: str=None, last_modified=None, creation_time=None, exit_conditions=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, command_line: str=None, container_settings=None, resource_files=None, output_files=None, environment_settings=None, affinity_info=None, constraints=None, user_identity=None, execution_info=None, node_info=None, multi_instance_settings=None, stats=None, depends_on=None, application_package_references=None, authentication_token_settings=None, **kwargs) -> None: + super(CloudTask, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.url = url + self.e_tag = e_tag + self.last_modified = last_modified + self.creation_time = creation_time + self.exit_conditions = exit_conditions + self.state = state + self.state_transition_time = state_transition_time + self.previous_state = previous_state + self.previous_state_transition_time = previous_state_transition_time + self.command_line = command_line + self.container_settings = container_settings + self.resource_files = resource_files + self.output_files = output_files + self.environment_settings = environment_settings + self.affinity_info = affinity_info + self.constraints = constraints + self.user_identity = user_identity + self.execution_info = execution_info + self.node_info = node_info + self.multi_instance_settings = multi_instance_settings + self.stats = stats + self.depends_on = depends_on + self.application_package_references = application_package_references + self.authentication_token_settings = authentication_token_settings diff --git a/azure-batch/azure/batch/models/compute_node.py b/azure-batch/azure/batch/models/compute_node.py index b26cba8361a7..444598f9e5cd 100644 --- a/azure-batch/azure/batch/models/compute_node.py +++ b/azure-batch/azure/batch/models/compute_node.py @@ -53,19 +53,9 @@ class ComputeNode(Model): task is scheduled, then the task will be scheduled elsewhere. :type affinity_id: str :param vm_size: The size of the virtual machine hosting the compute node. - For information about available sizes of virtual machines for Cloud - Services pools (pools created with cloudServiceConfiguration), see Sizes - for Cloud Services - (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). - Batch supports all Cloud Services VM sizes except ExtraSmall, A1V2 and - A2V2. For information about available VM sizes for pools using images from - the Virtual Machines Marketplace (pools created with - virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) - (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) - or Sizes for Virtual Machines (Windows) - (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). - Batch supports all Azure VM sizes except STANDARD_A0 and those with - premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). + For information about available sizes of virtual machines in pools, see + Choose a VM size for compute nodes in an Azure Batch pool + (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). :type vm_size: str :param total_tasks_run: The total number of job tasks completed on the compute node. This includes Job Manager tasks and normal tasks, but not @@ -111,6 +101,9 @@ class ComputeNode(Model): node. :type endpoint_configuration: ~azure.batch.models.ComputeNodeEndpointConfiguration + :param node_agent_info: Information about the node agent version and the + time the node upgraded to a new version. + :type node_agent_info: ~azure.batch.models.NodeAgentInformation """ _attribute_map = { @@ -134,27 +127,29 @@ class ComputeNode(Model): 'errors': {'key': 'errors', 'type': '[ComputeNodeError]'}, 'is_dedicated': {'key': 'isDedicated', 'type': 'bool'}, 'endpoint_configuration': {'key': 'endpointConfiguration', 'type': 'ComputeNodeEndpointConfiguration'}, + 'node_agent_info': {'key': 'nodeAgentInfo', 'type': 'NodeAgentInformation'}, } - def __init__(self, id=None, url=None, state=None, scheduling_state=None, state_transition_time=None, last_boot_time=None, allocation_time=None, ip_address=None, affinity_id=None, vm_size=None, total_tasks_run=None, running_tasks_count=None, total_tasks_succeeded=None, recent_tasks=None, start_task=None, start_task_info=None, certificate_references=None, errors=None, is_dedicated=None, endpoint_configuration=None): - super(ComputeNode, self).__init__() - self.id = id - self.url = url - self.state = state - self.scheduling_state = scheduling_state - self.state_transition_time = state_transition_time - self.last_boot_time = last_boot_time - self.allocation_time = allocation_time - self.ip_address = ip_address - self.affinity_id = affinity_id - self.vm_size = vm_size - self.total_tasks_run = total_tasks_run - self.running_tasks_count = running_tasks_count - self.total_tasks_succeeded = total_tasks_succeeded - self.recent_tasks = recent_tasks - self.start_task = start_task - self.start_task_info = start_task_info - self.certificate_references = certificate_references - self.errors = errors - self.is_dedicated = is_dedicated - self.endpoint_configuration = endpoint_configuration + def __init__(self, **kwargs): + super(ComputeNode, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.url = kwargs.get('url', None) + self.state = kwargs.get('state', None) + self.scheduling_state = kwargs.get('scheduling_state', None) + self.state_transition_time = kwargs.get('state_transition_time', None) + self.last_boot_time = kwargs.get('last_boot_time', None) + self.allocation_time = kwargs.get('allocation_time', None) + self.ip_address = kwargs.get('ip_address', None) + self.affinity_id = kwargs.get('affinity_id', None) + self.vm_size = kwargs.get('vm_size', None) + self.total_tasks_run = kwargs.get('total_tasks_run', None) + self.running_tasks_count = kwargs.get('running_tasks_count', None) + self.total_tasks_succeeded = kwargs.get('total_tasks_succeeded', None) + self.recent_tasks = kwargs.get('recent_tasks', None) + self.start_task = kwargs.get('start_task', None) + self.start_task_info = kwargs.get('start_task_info', None) + self.certificate_references = kwargs.get('certificate_references', None) + self.errors = kwargs.get('errors', None) + self.is_dedicated = kwargs.get('is_dedicated', None) + self.endpoint_configuration = kwargs.get('endpoint_configuration', None) + self.node_agent_info = kwargs.get('node_agent_info', None) diff --git a/azure-batch/azure/batch/models/compute_node_add_user_options.py b/azure-batch/azure/batch/models/compute_node_add_user_options.py index f591d4ec6d56..89020475f3ef 100644 --- a/azure-batch/azure/batch/models/compute_node_add_user_options.py +++ b/azure-batch/azure/batch/models/compute_node_add_user_options.py @@ -31,9 +31,16 @@ class ComputeNodeAddUserOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeAddUserOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeAddUserOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_add_user_options_py3.py b/azure-batch/azure/batch/models/compute_node_add_user_options_py3.py new file mode 100644 index 000000000000..dab4040b9533 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_add_user_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeAddUserOptions(Model): + """Additional parameters for add_user operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeAddUserOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_delete_user_options.py b/azure-batch/azure/batch/models/compute_node_delete_user_options.py index b3c3aa016ec2..4874a98a9fb1 100644 --- a/azure-batch/azure/batch/models/compute_node_delete_user_options.py +++ b/azure-batch/azure/batch/models/compute_node_delete_user_options.py @@ -31,9 +31,16 @@ class ComputeNodeDeleteUserOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeDeleteUserOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeDeleteUserOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_delete_user_options_py3.py b/azure-batch/azure/batch/models/compute_node_delete_user_options_py3.py new file mode 100644 index 000000000000..88217b9392bd --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_delete_user_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeDeleteUserOptions(Model): + """Additional parameters for delete_user operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeDeleteUserOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_disable_scheduling_options.py b/azure-batch/azure/batch/models/compute_node_disable_scheduling_options.py index fe55e5fef1ca..92bf29119369 100644 --- a/azure-batch/azure/batch/models/compute_node_disable_scheduling_options.py +++ b/azure-batch/azure/batch/models/compute_node_disable_scheduling_options.py @@ -31,9 +31,16 @@ class ComputeNodeDisableSchedulingOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeDisableSchedulingOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeDisableSchedulingOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_disable_scheduling_options_py3.py b/azure-batch/azure/batch/models/compute_node_disable_scheduling_options_py3.py new file mode 100644 index 000000000000..0432c5dba480 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_disable_scheduling_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeDisableSchedulingOptions(Model): + """Additional parameters for disable_scheduling operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeDisableSchedulingOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_enable_scheduling_options.py b/azure-batch/azure/batch/models/compute_node_enable_scheduling_options.py index 713b13b1e2f5..905e3e343cee 100644 --- a/azure-batch/azure/batch/models/compute_node_enable_scheduling_options.py +++ b/azure-batch/azure/batch/models/compute_node_enable_scheduling_options.py @@ -31,9 +31,16 @@ class ComputeNodeEnableSchedulingOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeEnableSchedulingOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeEnableSchedulingOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_enable_scheduling_options_py3.py b/azure-batch/azure/batch/models/compute_node_enable_scheduling_options_py3.py new file mode 100644 index 000000000000..4ef5d9adef40 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_enable_scheduling_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeEnableSchedulingOptions(Model): + """Additional parameters for enable_scheduling operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeEnableSchedulingOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_endpoint_configuration.py b/azure-batch/azure/batch/models/compute_node_endpoint_configuration.py index 96231abc759f..922c5c104e4a 100644 --- a/azure-batch/azure/batch/models/compute_node_endpoint_configuration.py +++ b/azure-batch/azure/batch/models/compute_node_endpoint_configuration.py @@ -15,7 +15,9 @@ class ComputeNodeEndpointConfiguration(Model): """The endpoint configuration for the compute node. - :param inbound_endpoints: The list of inbound endpoints that are + All required parameters must be populated in order to send to Azure. + + :param inbound_endpoints: Required. The list of inbound endpoints that are accessible on the compute node. :type inbound_endpoints: list[~azure.batch.models.InboundEndpoint] """ @@ -28,6 +30,6 @@ class ComputeNodeEndpointConfiguration(Model): 'inbound_endpoints': {'key': 'inboundEndpoints', 'type': '[InboundEndpoint]'}, } - def __init__(self, inbound_endpoints): - super(ComputeNodeEndpointConfiguration, self).__init__() - self.inbound_endpoints = inbound_endpoints + def __init__(self, **kwargs): + super(ComputeNodeEndpointConfiguration, self).__init__(**kwargs) + self.inbound_endpoints = kwargs.get('inbound_endpoints', None) diff --git a/azure-batch/azure/batch/models/compute_node_endpoint_configuration_py3.py b/azure-batch/azure/batch/models/compute_node_endpoint_configuration_py3.py new file mode 100644 index 000000000000..72dc202e63f7 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_endpoint_configuration_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeEndpointConfiguration(Model): + """The endpoint configuration for the compute node. + + All required parameters must be populated in order to send to Azure. + + :param inbound_endpoints: Required. The list of inbound endpoints that are + accessible on the compute node. + :type inbound_endpoints: list[~azure.batch.models.InboundEndpoint] + """ + + _validation = { + 'inbound_endpoints': {'required': True}, + } + + _attribute_map = { + 'inbound_endpoints': {'key': 'inboundEndpoints', 'type': '[InboundEndpoint]'}, + } + + def __init__(self, *, inbound_endpoints, **kwargs) -> None: + super(ComputeNodeEndpointConfiguration, self).__init__(**kwargs) + self.inbound_endpoints = inbound_endpoints diff --git a/azure-batch/azure/batch/models/compute_node_error.py b/azure-batch/azure/batch/models/compute_node_error.py index e374103b1e47..e02a668195a4 100644 --- a/azure-batch/azure/batch/models/compute_node_error.py +++ b/azure-batch/azure/batch/models/compute_node_error.py @@ -32,8 +32,8 @@ class ComputeNodeError(Model): 'error_details': {'key': 'errorDetails', 'type': '[NameValuePair]'}, } - def __init__(self, code=None, message=None, error_details=None): - super(ComputeNodeError, self).__init__() - self.code = code - self.message = message - self.error_details = error_details + def __init__(self, **kwargs): + super(ComputeNodeError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.error_details = kwargs.get('error_details', None) diff --git a/azure-batch/azure/batch/models/compute_node_error_py3.py b/azure-batch/azure/batch/models/compute_node_error_py3.py new file mode 100644 index 000000000000..53a6871bfbae --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_error_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeError(Model): + """An error encountered by a compute node. + + :param code: An identifier for the compute node error. Codes are invariant + and are intended to be consumed programmatically. + :type code: str + :param message: A message describing the compute node error, intended to + be suitable for display in a user interface. + :type message: str + :param error_details: The list of additional error details related to the + compute node error. + :type error_details: list[~azure.batch.models.NameValuePair] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'error_details': {'key': 'errorDetails', 'type': '[NameValuePair]'}, + } + + def __init__(self, *, code: str=None, message: str=None, error_details=None, **kwargs) -> None: + super(ComputeNodeError, self).__init__(**kwargs) + self.code = code + self.message = message + self.error_details = error_details diff --git a/azure-batch/azure/batch/models/compute_node_get_options.py b/azure-batch/azure/batch/models/compute_node_get_options.py index e6e1d051a583..6218d444f803 100644 --- a/azure-batch/azure/batch/models/compute_node_get_options.py +++ b/azure-batch/azure/batch/models/compute_node_get_options.py @@ -33,10 +33,18 @@ class ComputeNodeGetOptions(Model): :type ocp_date: datetime """ - def __init__(self, select=None, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeGetOptions, self).__init__() - self.select = select - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeGetOptions, self).__init__(**kwargs) + self.select = kwargs.get('select', None) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_get_options_py3.py b/azure-batch/azure/batch/models/compute_node_get_options_py3.py new file mode 100644 index 000000000000..de6284b3ce29 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_get_options_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeGetOptions(Model): + """Additional parameters for get operation. + + :param select: An OData $select clause. + :type select: str + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, select: str=None, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeGetOptions, self).__init__(**kwargs) + self.select = select + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_get_remote_desktop_options.py b/azure-batch/azure/batch/models/compute_node_get_remote_desktop_options.py index 02f3411ecf7b..20af5558734f 100644 --- a/azure-batch/azure/batch/models/compute_node_get_remote_desktop_options.py +++ b/azure-batch/azure/batch/models/compute_node_get_remote_desktop_options.py @@ -31,9 +31,16 @@ class ComputeNodeGetRemoteDesktopOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeGetRemoteDesktopOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeGetRemoteDesktopOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_get_remote_desktop_options_py3.py b/azure-batch/azure/batch/models/compute_node_get_remote_desktop_options_py3.py new file mode 100644 index 000000000000..d79ce622b6ff --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_get_remote_desktop_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeGetRemoteDesktopOptions(Model): + """Additional parameters for get_remote_desktop operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeGetRemoteDesktopOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_options.py b/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_options.py index fe2243b6b6d5..9c01ed5f1ba9 100644 --- a/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_options.py +++ b/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_options.py @@ -31,9 +31,16 @@ class ComputeNodeGetRemoteLoginSettingsOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeGetRemoteLoginSettingsOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeGetRemoteLoginSettingsOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_options_py3.py b/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_options_py3.py new file mode 100644 index 000000000000..2d7987ab9f30 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeGetRemoteLoginSettingsOptions(Model): + """Additional parameters for get_remote_login_settings operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeGetRemoteLoginSettingsOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_result.py b/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_result.py index 5aa87fcfb846..2d4e378c0c90 100644 --- a/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_result.py +++ b/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_result.py @@ -15,11 +15,13 @@ class ComputeNodeGetRemoteLoginSettingsResult(Model): """The remote login settings for a compute node. - :param remote_login_ip_address: The IP address used for remote login to - the compute node. + All required parameters must be populated in order to send to Azure. + + :param remote_login_ip_address: Required. The IP address used for remote + login to the compute node. :type remote_login_ip_address: str - :param remote_login_port: The port used for remote login to the compute - node. + :param remote_login_port: Required. The port used for remote login to the + compute node. :type remote_login_port: int """ @@ -33,7 +35,7 @@ class ComputeNodeGetRemoteLoginSettingsResult(Model): 'remote_login_port': {'key': 'remoteLoginPort', 'type': 'int'}, } - def __init__(self, remote_login_ip_address, remote_login_port): - super(ComputeNodeGetRemoteLoginSettingsResult, self).__init__() - self.remote_login_ip_address = remote_login_ip_address - self.remote_login_port = remote_login_port + def __init__(self, **kwargs): + super(ComputeNodeGetRemoteLoginSettingsResult, self).__init__(**kwargs) + self.remote_login_ip_address = kwargs.get('remote_login_ip_address', None) + self.remote_login_port = kwargs.get('remote_login_port', None) diff --git a/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_result_py3.py b/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_result_py3.py new file mode 100644 index 000000000000..c13ace1ccd87 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_get_remote_login_settings_result_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeGetRemoteLoginSettingsResult(Model): + """The remote login settings for a compute node. + + All required parameters must be populated in order to send to Azure. + + :param remote_login_ip_address: Required. The IP address used for remote + login to the compute node. + :type remote_login_ip_address: str + :param remote_login_port: Required. The port used for remote login to the + compute node. + :type remote_login_port: int + """ + + _validation = { + 'remote_login_ip_address': {'required': True}, + 'remote_login_port': {'required': True}, + } + + _attribute_map = { + 'remote_login_ip_address': {'key': 'remoteLoginIPAddress', 'type': 'str'}, + 'remote_login_port': {'key': 'remoteLoginPort', 'type': 'int'}, + } + + def __init__(self, *, remote_login_ip_address: str, remote_login_port: int, **kwargs) -> None: + super(ComputeNodeGetRemoteLoginSettingsResult, self).__init__(**kwargs) + self.remote_login_ip_address = remote_login_ip_address + self.remote_login_port = remote_login_port diff --git a/azure-batch/azure/batch/models/compute_node_information.py b/azure-batch/azure/batch/models/compute_node_information.py index ce252eaaac93..9c6a342179b1 100644 --- a/azure-batch/azure/batch/models/compute_node_information.py +++ b/azure-batch/azure/batch/models/compute_node_information.py @@ -42,11 +42,11 @@ class ComputeNodeInformation(Model): 'task_root_directory_url': {'key': 'taskRootDirectoryUrl', 'type': 'str'}, } - def __init__(self, affinity_id=None, node_url=None, pool_id=None, node_id=None, task_root_directory=None, task_root_directory_url=None): - super(ComputeNodeInformation, self).__init__() - self.affinity_id = affinity_id - self.node_url = node_url - self.pool_id = pool_id - self.node_id = node_id - self.task_root_directory = task_root_directory - self.task_root_directory_url = task_root_directory_url + def __init__(self, **kwargs): + super(ComputeNodeInformation, self).__init__(**kwargs) + self.affinity_id = kwargs.get('affinity_id', None) + self.node_url = kwargs.get('node_url', None) + self.pool_id = kwargs.get('pool_id', None) + self.node_id = kwargs.get('node_id', None) + self.task_root_directory = kwargs.get('task_root_directory', None) + self.task_root_directory_url = kwargs.get('task_root_directory_url', None) diff --git a/azure-batch/azure/batch/models/compute_node_information_py3.py b/azure-batch/azure/batch/models/compute_node_information_py3.py new file mode 100644 index 000000000000..7c82bde1b755 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_information_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeInformation(Model): + """Information about the compute node on which a task ran. + + :param affinity_id: An identifier for the compute node on which the task + ran, which can be passed when adding a task to request that the task be + scheduled on this compute node. + :type affinity_id: str + :param node_url: The URL of the node on which the task ran. . + :type node_url: str + :param pool_id: The ID of the pool on which the task ran. + :type pool_id: str + :param node_id: The ID of the node on which the task ran. + :type node_id: str + :param task_root_directory: The root directory of the task on the compute + node. + :type task_root_directory: str + :param task_root_directory_url: The URL to the root directory of the task + on the compute node. + :type task_root_directory_url: str + """ + + _attribute_map = { + 'affinity_id': {'key': 'affinityId', 'type': 'str'}, + 'node_url': {'key': 'nodeUrl', 'type': 'str'}, + 'pool_id': {'key': 'poolId', 'type': 'str'}, + 'node_id': {'key': 'nodeId', 'type': 'str'}, + 'task_root_directory': {'key': 'taskRootDirectory', 'type': 'str'}, + 'task_root_directory_url': {'key': 'taskRootDirectoryUrl', 'type': 'str'}, + } + + def __init__(self, *, affinity_id: str=None, node_url: str=None, pool_id: str=None, node_id: str=None, task_root_directory: str=None, task_root_directory_url: str=None, **kwargs) -> None: + super(ComputeNodeInformation, self).__init__(**kwargs) + self.affinity_id = affinity_id + self.node_url = node_url + self.pool_id = pool_id + self.node_id = node_id + self.task_root_directory = task_root_directory + self.task_root_directory_url = task_root_directory_url diff --git a/azure-batch/azure/batch/models/compute_node_list_options.py b/azure-batch/azure/batch/models/compute_node_list_options.py index a3cd62f3c6aa..b3cf782fbe5b 100644 --- a/azure-batch/azure/batch/models/compute_node_list_options.py +++ b/azure-batch/azure/batch/models/compute_node_list_options.py @@ -40,12 +40,22 @@ class ComputeNodeListOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, select=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeListOptions, self).__init__() - self.filter = filter - self.select = select - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeListOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.select = kwargs.get('select', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_list_options_py3.py b/azure-batch/azure/batch/models/compute_node_list_options_py3.py new file mode 100644 index 000000000000..e046429dcf15 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_list_options_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeListOptions(Model): + """Additional parameters for list operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool. + :type filter: str + :param select: An OData $select clause. + :type select: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 nodes can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, select: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeListOptions, self).__init__(**kwargs) + self.filter = filter + self.select = select + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_py3.py b/azure-batch/azure/batch/models/compute_node_py3.py new file mode 100644 index 000000000000..1b5d7405a981 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_py3.py @@ -0,0 +1,155 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNode(Model): + """A compute node in the Batch service. + + :param id: The ID of the compute node. Every node that is added to a pool + is assigned a unique ID. Whenever a node is removed from a pool, all of + its local files are deleted, and the ID is reclaimed and could be reused + for new nodes. + :type id: str + :param url: The URL of the compute node. + :type url: str + :param state: The current state of the compute node. The low-priority node + has been preempted. Tasks which were running on the node when it was + pre-empted will be rescheduled when another node becomes available. + Possible values include: 'idle', 'rebooting', 'reimaging', 'running', + 'unusable', 'creating', 'starting', 'waitingForStartTask', + 'startTaskFailed', 'unknown', 'leavingPool', 'offline', 'preempted' + :type state: str or ~azure.batch.models.ComputeNodeState + :param scheduling_state: Whether the compute node is available for task + scheduling. Possible values include: 'enabled', 'disabled' + :type scheduling_state: str or ~azure.batch.models.SchedulingState + :param state_transition_time: The time at which the compute node entered + its current state. + :type state_transition_time: datetime + :param last_boot_time: The time at which the compute node was started. + This property may not be present if the node state is unusable. + :type last_boot_time: datetime + :param allocation_time: The time at which this compute node was allocated + to the pool. + :type allocation_time: datetime + :param ip_address: The IP address that other compute nodes can use to + communicate with this compute node. Every node that is added to a pool is + assigned a unique IP address. Whenever a node is removed from a pool, all + of its local files are deleted, and the IP address is reclaimed and could + be reused for new nodes. + :type ip_address: str + :param affinity_id: An identifier which can be passed when adding a task + to request that the task be scheduled on this node. Note that this is just + a soft affinity. If the target node is busy or unavailable at the time the + task is scheduled, then the task will be scheduled elsewhere. + :type affinity_id: str + :param vm_size: The size of the virtual machine hosting the compute node. + For information about available sizes of virtual machines in pools, see + Choose a VM size for compute nodes in an Azure Batch pool + (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). + :type vm_size: str + :param total_tasks_run: The total number of job tasks completed on the + compute node. This includes Job Manager tasks and normal tasks, but not + Job Preparation, Job Release or Start tasks. + :type total_tasks_run: int + :param running_tasks_count: The total number of currently running job + tasks on the compute node. This includes Job Manager tasks and normal + tasks, but not Job Preparation, Job Release or Start tasks. + :type running_tasks_count: int + :param total_tasks_succeeded: The total number of job tasks which + completed successfully (with exitCode 0) on the compute node. This + includes Job Manager tasks and normal tasks, but not Job Preparation, Job + Release or Start tasks. + :type total_tasks_succeeded: int + :param recent_tasks: A list of tasks whose state has recently changed. + This property is present only if at least one task has run on this node + since it was assigned to the pool. + :type recent_tasks: list[~azure.batch.models.TaskInformation] + :param start_task: The task specified to run on the compute node as it + joins the pool. + :type start_task: ~azure.batch.models.StartTask + :param start_task_info: Runtime information about the execution of the + start task on the compute node. + :type start_task_info: ~azure.batch.models.StartTaskInformation + :param certificate_references: The list of certificates installed on the + compute node. For Windows compute nodes, the Batch service installs the + certificates to the specified certificate store and location. For Linux + compute nodes, the certificates are stored in a directory inside the task + working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is + supplied to the task to query for this location. For certificates with + visibility of 'remoteUser', a 'certs' directory is created in the user's + home directory (e.g., /home/{user-name}/certs) and certificates are placed + in that directory. + :type certificate_references: + list[~azure.batch.models.CertificateReference] + :param errors: The list of errors that are currently being encountered by + the compute node. + :type errors: list[~azure.batch.models.ComputeNodeError] + :param is_dedicated: Whether this compute node is a dedicated node. If + false, the node is a low-priority node. + :type is_dedicated: bool + :param endpoint_configuration: The endpoint configuration for the compute + node. + :type endpoint_configuration: + ~azure.batch.models.ComputeNodeEndpointConfiguration + :param node_agent_info: Information about the node agent version and the + time the node upgraded to a new version. + :type node_agent_info: ~azure.batch.models.NodeAgentInformation + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'ComputeNodeState'}, + 'scheduling_state': {'key': 'schedulingState', 'type': 'SchedulingState'}, + 'state_transition_time': {'key': 'stateTransitionTime', 'type': 'iso-8601'}, + 'last_boot_time': {'key': 'lastBootTime', 'type': 'iso-8601'}, + 'allocation_time': {'key': 'allocationTime', 'type': 'iso-8601'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'affinity_id': {'key': 'affinityId', 'type': 'str'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'total_tasks_run': {'key': 'totalTasksRun', 'type': 'int'}, + 'running_tasks_count': {'key': 'runningTasksCount', 'type': 'int'}, + 'total_tasks_succeeded': {'key': 'totalTasksSucceeded', 'type': 'int'}, + 'recent_tasks': {'key': 'recentTasks', 'type': '[TaskInformation]'}, + 'start_task': {'key': 'startTask', 'type': 'StartTask'}, + 'start_task_info': {'key': 'startTaskInfo', 'type': 'StartTaskInformation'}, + 'certificate_references': {'key': 'certificateReferences', 'type': '[CertificateReference]'}, + 'errors': {'key': 'errors', 'type': '[ComputeNodeError]'}, + 'is_dedicated': {'key': 'isDedicated', 'type': 'bool'}, + 'endpoint_configuration': {'key': 'endpointConfiguration', 'type': 'ComputeNodeEndpointConfiguration'}, + 'node_agent_info': {'key': 'nodeAgentInfo', 'type': 'NodeAgentInformation'}, + } + + def __init__(self, *, id: str=None, url: str=None, state=None, scheduling_state=None, state_transition_time=None, last_boot_time=None, allocation_time=None, ip_address: str=None, affinity_id: str=None, vm_size: str=None, total_tasks_run: int=None, running_tasks_count: int=None, total_tasks_succeeded: int=None, recent_tasks=None, start_task=None, start_task_info=None, certificate_references=None, errors=None, is_dedicated: bool=None, endpoint_configuration=None, node_agent_info=None, **kwargs) -> None: + super(ComputeNode, self).__init__(**kwargs) + self.id = id + self.url = url + self.state = state + self.scheduling_state = scheduling_state + self.state_transition_time = state_transition_time + self.last_boot_time = last_boot_time + self.allocation_time = allocation_time + self.ip_address = ip_address + self.affinity_id = affinity_id + self.vm_size = vm_size + self.total_tasks_run = total_tasks_run + self.running_tasks_count = running_tasks_count + self.total_tasks_succeeded = total_tasks_succeeded + self.recent_tasks = recent_tasks + self.start_task = start_task + self.start_task_info = start_task_info + self.certificate_references = certificate_references + self.errors = errors + self.is_dedicated = is_dedicated + self.endpoint_configuration = endpoint_configuration + self.node_agent_info = node_agent_info diff --git a/azure-batch/azure/batch/models/compute_node_reboot_options.py b/azure-batch/azure/batch/models/compute_node_reboot_options.py index e1e18dfd8644..182c563e08ea 100644 --- a/azure-batch/azure/batch/models/compute_node_reboot_options.py +++ b/azure-batch/azure/batch/models/compute_node_reboot_options.py @@ -31,9 +31,16 @@ class ComputeNodeRebootOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeRebootOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeRebootOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_reboot_options_py3.py b/azure-batch/azure/batch/models/compute_node_reboot_options_py3.py new file mode 100644 index 000000000000..97e8cb414166 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_reboot_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeRebootOptions(Model): + """Additional parameters for reboot operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeRebootOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_reimage_options.py b/azure-batch/azure/batch/models/compute_node_reimage_options.py index 8cfe73e5c026..8ec6e55ff6c0 100644 --- a/azure-batch/azure/batch/models/compute_node_reimage_options.py +++ b/azure-batch/azure/batch/models/compute_node_reimage_options.py @@ -31,9 +31,16 @@ class ComputeNodeReimageOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeReimageOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeReimageOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_reimage_options_py3.py b/azure-batch/azure/batch/models/compute_node_reimage_options_py3.py new file mode 100644 index 000000000000..dcff3ee86f32 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_reimage_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeReimageOptions(Model): + """Additional parameters for reimage operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeReimageOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_update_user_options.py b/azure-batch/azure/batch/models/compute_node_update_user_options.py index ac9d7cf9d4a2..ed1f9548c53c 100644 --- a/azure-batch/azure/batch/models/compute_node_update_user_options.py +++ b/azure-batch/azure/batch/models/compute_node_update_user_options.py @@ -31,9 +31,16 @@ class ComputeNodeUpdateUserOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeUpdateUserOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeUpdateUserOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_update_user_options_py3.py b/azure-batch/azure/batch/models/compute_node_update_user_options_py3.py new file mode 100644 index 000000000000..81e45b6cae69 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_update_user_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeUpdateUserOptions(Model): + """Additional parameters for update_user operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeUpdateUserOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_upload_batch_service_logs_options.py b/azure-batch/azure/batch/models/compute_node_upload_batch_service_logs_options.py index f2dd5e775e7e..071b712e9894 100644 --- a/azure-batch/azure/batch/models/compute_node_upload_batch_service_logs_options.py +++ b/azure-batch/azure/batch/models/compute_node_upload_batch_service_logs_options.py @@ -31,9 +31,16 @@ class ComputeNodeUploadBatchServiceLogsOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(ComputeNodeUploadBatchServiceLogsOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(ComputeNodeUploadBatchServiceLogsOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/compute_node_upload_batch_service_logs_options_py3.py b/azure-batch/azure/batch/models/compute_node_upload_batch_service_logs_options_py3.py new file mode 100644 index 000000000000..bac1dad58c36 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_upload_batch_service_logs_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeUploadBatchServiceLogsOptions(Model): + """Additional parameters for upload_batch_service_logs operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(ComputeNodeUploadBatchServiceLogsOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/compute_node_user.py b/azure-batch/azure/batch/models/compute_node_user.py index 453d46c32344..495b246e2988 100644 --- a/azure-batch/azure/batch/models/compute_node_user.py +++ b/azure-batch/azure/batch/models/compute_node_user.py @@ -15,7 +15,9 @@ class ComputeNodeUser(Model): """A user account for RDP or SSH access on a compute node. - :param name: The user name of the account. + All required parameters must be populated in order to send to Azure. + + :param name: Required. The user name of the account. :type name: str :param is_admin: Whether the account should be an administrator on the compute node. The default value is false. @@ -51,10 +53,10 @@ class ComputeNodeUser(Model): 'ssh_public_key': {'key': 'sshPublicKey', 'type': 'str'}, } - def __init__(self, name, is_admin=None, expiry_time=None, password=None, ssh_public_key=None): - super(ComputeNodeUser, self).__init__() - self.name = name - self.is_admin = is_admin - self.expiry_time = expiry_time - self.password = password - self.ssh_public_key = ssh_public_key + def __init__(self, **kwargs): + super(ComputeNodeUser, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.is_admin = kwargs.get('is_admin', None) + self.expiry_time = kwargs.get('expiry_time', None) + self.password = kwargs.get('password', None) + self.ssh_public_key = kwargs.get('ssh_public_key', None) diff --git a/azure-batch/azure/batch/models/compute_node_user_py3.py b/azure-batch/azure/batch/models/compute_node_user_py3.py new file mode 100644 index 000000000000..a88a6ab29950 --- /dev/null +++ b/azure-batch/azure/batch/models/compute_node_user_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeNodeUser(Model): + """A user account for RDP or SSH access on a compute node. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The user name of the account. + :type name: str + :param is_admin: Whether the account should be an administrator on the + compute node. The default value is false. + :type is_admin: bool + :param expiry_time: The time at which the account should expire. If + omitted, the default is 1 day from the current time. For Linux compute + nodes, the expiryTime has a precision up to a day. + :type expiry_time: datetime + :param password: The password of the account. The password is required for + Windows nodes (those created with 'cloudServiceConfiguration', or created + with 'virtualMachineConfiguration' using a Windows image reference). For + Linux compute nodes, the password can optionally be specified along with + the sshPublicKey property. + :type password: str + :param ssh_public_key: The SSH public key that can be used for remote + login to the compute node. The public key should be compatible with + OpenSSH encoding and should be base 64 encoded. This property can be + specified only for Linux nodes. If this is specified for a Windows node, + then the Batch service rejects the request; if you are calling the REST + API directly, the HTTP status code is 400 (Bad Request). + :type ssh_public_key: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'is_admin': {'key': 'isAdmin', 'type': 'bool'}, + 'expiry_time': {'key': 'expiryTime', 'type': 'iso-8601'}, + 'password': {'key': 'password', 'type': 'str'}, + 'ssh_public_key': {'key': 'sshPublicKey', 'type': 'str'}, + } + + def __init__(self, *, name: str, is_admin: bool=None, expiry_time=None, password: str=None, ssh_public_key: str=None, **kwargs) -> None: + super(ComputeNodeUser, self).__init__(**kwargs) + self.name = name + self.is_admin = is_admin + self.expiry_time = expiry_time + self.password = password + self.ssh_public_key = ssh_public_key diff --git a/azure-batch/azure/batch/models/container_configuration.py b/azure-batch/azure/batch/models/container_configuration.py index 5efa779fc582..f4b932c4a257 100644 --- a/azure-batch/azure/batch/models/container_configuration.py +++ b/azure-batch/azure/batch/models/container_configuration.py @@ -18,8 +18,10 @@ class ContainerConfiguration(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar type: The container technology to be used. Default value: "docker" - . + All required parameters must be populated in order to send to Azure. + + :ivar type: Required. The container technology to be used. Default value: + "dockerCompatible" . :vartype type: str :param container_image_names: The collection of container image names. This is the full image reference, as would be specified to "docker pull". @@ -43,9 +45,9 @@ class ContainerConfiguration(Model): 'container_registries': {'key': 'containerRegistries', 'type': '[ContainerRegistry]'}, } - type = "docker" + type = "dockerCompatible" - def __init__(self, container_image_names=None, container_registries=None): - super(ContainerConfiguration, self).__init__() - self.container_image_names = container_image_names - self.container_registries = container_registries + def __init__(self, **kwargs): + super(ContainerConfiguration, self).__init__(**kwargs) + self.container_image_names = kwargs.get('container_image_names', None) + self.container_registries = kwargs.get('container_registries', None) diff --git a/azure-batch/azure/batch/models/container_configuration_py3.py b/azure-batch/azure/batch/models/container_configuration_py3.py new file mode 100644 index 000000000000..f65b047ea4dc --- /dev/null +++ b/azure-batch/azure/batch/models/container_configuration_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerConfiguration(Model): + """The configuration for container-enabled pools. + + 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 type: Required. The container technology to be used. Default value: + "dockerCompatible" . + :vartype type: str + :param container_image_names: The collection of container image names. + This is the full image reference, as would be specified to "docker pull". + An image will be sourced from the default Docker registry unless the image + is fully qualified with an alternative registry. + :type container_image_names: list[str] + :param container_registries: Additional private registries from which + containers can be pulled. If any images must be downloaded from a private + registry which requires credentials, then those credentials must be + provided here. + :type container_registries: list[~azure.batch.models.ContainerRegistry] + """ + + _validation = { + 'type': {'required': True, 'constant': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'container_image_names': {'key': 'containerImageNames', 'type': '[str]'}, + 'container_registries': {'key': 'containerRegistries', 'type': '[ContainerRegistry]'}, + } + + type = "dockerCompatible" + + def __init__(self, *, container_image_names=None, container_registries=None, **kwargs) -> None: + super(ContainerConfiguration, self).__init__(**kwargs) + self.container_image_names = container_image_names + self.container_registries = container_registries diff --git a/azure-batch/azure/batch/models/container_registry.py b/azure-batch/azure/batch/models/container_registry.py index 235caef875b2..1820319652d0 100644 --- a/azure-batch/azure/batch/models/container_registry.py +++ b/azure-batch/azure/batch/models/container_registry.py @@ -15,12 +15,14 @@ class ContainerRegistry(Model): """A private container registry. + All required parameters must be populated in order to send to Azure. + :param registry_server: The registry URL. If omitted, the default is "docker.io". :type registry_server: str - :param user_name: The user name to log into the registry server. + :param user_name: Required. The user name to log into the registry server. :type user_name: str - :param password: The password to log into the registry server. + :param password: Required. The password to log into the registry server. :type password: str """ @@ -35,8 +37,8 @@ class ContainerRegistry(Model): 'password': {'key': 'password', 'type': 'str'}, } - def __init__(self, user_name, password, registry_server=None): - super(ContainerRegistry, self).__init__() - self.registry_server = registry_server - self.user_name = user_name - self.password = password + def __init__(self, **kwargs): + super(ContainerRegistry, self).__init__(**kwargs) + self.registry_server = kwargs.get('registry_server', None) + self.user_name = kwargs.get('user_name', None) + self.password = kwargs.get('password', None) diff --git a/azure-batch/azure/batch/models/container_registry_py3.py b/azure-batch/azure/batch/models/container_registry_py3.py new file mode 100644 index 000000000000..eb47f9e5dc4c --- /dev/null +++ b/azure-batch/azure/batch/models/container_registry_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerRegistry(Model): + """A private container registry. + + All required parameters must be populated in order to send to Azure. + + :param registry_server: The registry URL. If omitted, the default is + "docker.io". + :type registry_server: str + :param user_name: Required. The user name to log into the registry server. + :type user_name: str + :param password: Required. The password to log into the registry server. + :type password: str + """ + + _validation = { + 'user_name': {'required': True}, + 'password': {'required': True}, + } + + _attribute_map = { + 'registry_server': {'key': 'registryServer', 'type': 'str'}, + 'user_name': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, *, user_name: str, password: str, registry_server: str=None, **kwargs) -> None: + super(ContainerRegistry, self).__init__(**kwargs) + self.registry_server = registry_server + self.user_name = user_name + self.password = password diff --git a/azure-batch/azure/batch/models/data_disk.py b/azure-batch/azure/batch/models/data_disk.py index 46954f4cadbd..d2f80dadf964 100644 --- a/azure-batch/azure/batch/models/data_disk.py +++ b/azure-batch/azure/batch/models/data_disk.py @@ -16,17 +16,19 @@ class DataDisk(Model): """Settings which will be used by the data disks associated to compute nodes in the pool. - :param lun: The logical unit number. The lun is used to uniquely identify - each data disk. If attaching multiple disks, each should have a distinct - lun. + All required parameters must be populated in order to send to Azure. + + :param lun: Required. The logical unit number. The lun is used to uniquely + identify each data disk. If attaching multiple disks, each should have a + distinct lun. :type lun: int :param caching: The type of caching to be enabled for the data disks. The - default value for caching is none. For information about the caching + default value for caching is readwrite. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. Possible values include: 'none', 'readOnly', 'readWrite' :type caching: str or ~azure.batch.models.CachingType - :param disk_size_gb: The initial disk size in gigabytes. + :param disk_size_gb: Required. The initial disk size in gigabytes. :type disk_size_gb: int :param storage_account_type: The storage account type to be used for the data disk. If omitted, the default is "standard_lrs". Possible values @@ -46,9 +48,9 @@ class DataDisk(Model): 'storage_account_type': {'key': 'storageAccountType', 'type': 'StorageAccountType'}, } - def __init__(self, lun, disk_size_gb, caching=None, storage_account_type=None): - super(DataDisk, self).__init__() - self.lun = lun - self.caching = caching - self.disk_size_gb = disk_size_gb - self.storage_account_type = storage_account_type + def __init__(self, **kwargs): + super(DataDisk, self).__init__(**kwargs) + self.lun = kwargs.get('lun', None) + self.caching = kwargs.get('caching', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.storage_account_type = kwargs.get('storage_account_type', None) diff --git a/azure-batch/azure/batch/models/data_disk_py3.py b/azure-batch/azure/batch/models/data_disk_py3.py new file mode 100644 index 000000000000..2af0ce19fb72 --- /dev/null +++ b/azure-batch/azure/batch/models/data_disk_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DataDisk(Model): + """Settings which will be used by the data disks associated to compute nodes + in the pool. + + All required parameters must be populated in order to send to Azure. + + :param lun: Required. The logical unit number. The lun is used to uniquely + identify each data disk. If attaching multiple disks, each should have a + distinct lun. + :type lun: int + :param caching: The type of caching to be enabled for the data disks. The + default value for caching is readwrite. For information about the caching + options see: + https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. + Possible values include: 'none', 'readOnly', 'readWrite' + :type caching: str or ~azure.batch.models.CachingType + :param disk_size_gb: Required. The initial disk size in gigabytes. + :type disk_size_gb: int + :param storage_account_type: The storage account type to be used for the + data disk. If omitted, the default is "standard_lrs". Possible values + include: 'StandardLRS', 'PremiumLRS' + :type storage_account_type: str or ~azure.batch.models.StorageAccountType + """ + + _validation = { + 'lun': {'required': True}, + 'disk_size_gb': {'required': True}, + } + + _attribute_map = { + 'lun': {'key': 'lun', 'type': 'int'}, + 'caching': {'key': 'caching', 'type': 'CachingType'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'StorageAccountType'}, + } + + def __init__(self, *, lun: int, disk_size_gb: int, caching=None, storage_account_type=None, **kwargs) -> None: + super(DataDisk, self).__init__(**kwargs) + self.lun = lun + self.caching = caching + self.disk_size_gb = disk_size_gb + self.storage_account_type = storage_account_type diff --git a/azure-batch/azure/batch/models/delete_certificate_error.py b/azure-batch/azure/batch/models/delete_certificate_error.py index 444daaea0e77..dbb14c3ca4a1 100644 --- a/azure-batch/azure/batch/models/delete_certificate_error.py +++ b/azure-batch/azure/batch/models/delete_certificate_error.py @@ -35,8 +35,8 @@ class DeleteCertificateError(Model): 'values': {'key': 'values', 'type': '[NameValuePair]'}, } - def __init__(self, code=None, message=None, values=None): - super(DeleteCertificateError, self).__init__() - self.code = code - self.message = message - self.values = values + def __init__(self, **kwargs): + super(DeleteCertificateError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.values = kwargs.get('values', None) diff --git a/azure-batch/azure/batch/models/delete_certificate_error_py3.py b/azure-batch/azure/batch/models/delete_certificate_error_py3.py new file mode 100644 index 000000000000..246a12a07edd --- /dev/null +++ b/azure-batch/azure/batch/models/delete_certificate_error_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeleteCertificateError(Model): + """An error encountered by the Batch service when deleting a certificate. + + :param code: An identifier for the certificate deletion error. Codes are + invariant and are intended to be consumed programmatically. + :type code: str + :param message: A message describing the certificate deletion error, + intended to be suitable for display in a user interface. + :type message: str + :param values: A list of additional error details related to the + certificate deletion error. This list includes details such as the active + pools and nodes referencing this certificate. However, if a large number + of resources reference the certificate, the list contains only about the + first hundred. + :type values: list[~azure.batch.models.NameValuePair] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[NameValuePair]'}, + } + + def __init__(self, *, code: str=None, message: str=None, values=None, **kwargs) -> None: + super(DeleteCertificateError, self).__init__(**kwargs) + self.code = code + self.message = message + self.values = values diff --git a/azure-batch/azure/batch/models/environment_setting.py b/azure-batch/azure/batch/models/environment_setting.py index e4c1489bd9e5..e46a6e5ec33e 100644 --- a/azure-batch/azure/batch/models/environment_setting.py +++ b/azure-batch/azure/batch/models/environment_setting.py @@ -15,7 +15,9 @@ class EnvironmentSetting(Model): """An environment variable to be set on a task process. - :param name: The name of the environment variable. + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the environment variable. :type name: str :param value: The value of the environment variable. :type value: str @@ -30,7 +32,7 @@ class EnvironmentSetting(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, name, value=None): - super(EnvironmentSetting, self).__init__() - self.name = name - self.value = value + def __init__(self, **kwargs): + super(EnvironmentSetting, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-batch/azure/batch/models/environment_setting_py3.py b/azure-batch/azure/batch/models/environment_setting_py3.py new file mode 100644 index 000000000000..facb8f442be2 --- /dev/null +++ b/azure-batch/azure/batch/models/environment_setting_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EnvironmentSetting(Model): + """An environment variable to be set on a task process. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the environment variable. + :type name: str + :param value: The value of the environment variable. + :type value: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, name: str, value: str=None, **kwargs) -> None: + super(EnvironmentSetting, self).__init__(**kwargs) + self.name = name + self.value = value diff --git a/azure-batch/azure/batch/models/error_message.py b/azure-batch/azure/batch/models/error_message.py index 18cc2136d4f9..bbdf64f1d551 100644 --- a/azure-batch/azure/batch/models/error_message.py +++ b/azure-batch/azure/batch/models/error_message.py @@ -26,7 +26,7 @@ class ErrorMessage(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, lang=None, value=None): - super(ErrorMessage, self).__init__() - self.lang = lang - self.value = value + def __init__(self, **kwargs): + super(ErrorMessage, self).__init__(**kwargs) + self.lang = kwargs.get('lang', None) + self.value = kwargs.get('value', None) diff --git a/azure-batch/azure/batch/models/error_message_py3.py b/azure-batch/azure/batch/models/error_message_py3.py new file mode 100644 index 000000000000..a84934fc27c3 --- /dev/null +++ b/azure-batch/azure/batch/models/error_message_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorMessage(Model): + """An error message received in an Azure Batch error response. + + :param lang: The language code of the error message. + :type lang: str + :param value: The text of the message. + :type value: str + """ + + _attribute_map = { + 'lang': {'key': 'lang', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, lang: str=None, value: str=None, **kwargs) -> None: + super(ErrorMessage, self).__init__(**kwargs) + self.lang = lang + self.value = value diff --git a/azure-batch/azure/batch/models/exit_code_mapping.py b/azure-batch/azure/batch/models/exit_code_mapping.py index 1ae0c1355218..57977e3db851 100644 --- a/azure-batch/azure/batch/models/exit_code_mapping.py +++ b/azure-batch/azure/batch/models/exit_code_mapping.py @@ -16,10 +16,12 @@ class ExitCodeMapping(Model): """How the Batch service should respond if a task exits with a particular exit code. - :param code: A process exit code. + All required parameters must be populated in order to send to Azure. + + :param code: Required. A process exit code. :type code: int - :param exit_options: How the Batch service should respond if the task - exits with this exit code. + :param exit_options: Required. How the Batch service should respond if the + task exits with this exit code. :type exit_options: ~azure.batch.models.ExitOptions """ @@ -33,7 +35,7 @@ class ExitCodeMapping(Model): 'exit_options': {'key': 'exitOptions', 'type': 'ExitOptions'}, } - def __init__(self, code, exit_options): - super(ExitCodeMapping, self).__init__() - self.code = code - self.exit_options = exit_options + def __init__(self, **kwargs): + super(ExitCodeMapping, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.exit_options = kwargs.get('exit_options', None) diff --git a/azure-batch/azure/batch/models/exit_code_mapping_py3.py b/azure-batch/azure/batch/models/exit_code_mapping_py3.py new file mode 100644 index 000000000000..5a5176bbe903 --- /dev/null +++ b/azure-batch/azure/batch/models/exit_code_mapping_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExitCodeMapping(Model): + """How the Batch service should respond if a task exits with a particular exit + code. + + All required parameters must be populated in order to send to Azure. + + :param code: Required. A process exit code. + :type code: int + :param exit_options: Required. How the Batch service should respond if the + task exits with this exit code. + :type exit_options: ~azure.batch.models.ExitOptions + """ + + _validation = { + 'code': {'required': True}, + 'exit_options': {'required': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'int'}, + 'exit_options': {'key': 'exitOptions', 'type': 'ExitOptions'}, + } + + def __init__(self, *, code: int, exit_options, **kwargs) -> None: + super(ExitCodeMapping, self).__init__(**kwargs) + self.code = code + self.exit_options = exit_options diff --git a/azure-batch/azure/batch/models/exit_code_range_mapping.py b/azure-batch/azure/batch/models/exit_code_range_mapping.py index a7485882980b..999272ae7c97 100644 --- a/azure-batch/azure/batch/models/exit_code_range_mapping.py +++ b/azure-batch/azure/batch/models/exit_code_range_mapping.py @@ -16,12 +16,14 @@ class ExitCodeRangeMapping(Model): """A range of exit codes and how the Batch service should respond to exit codes within that range. - :param start: The first exit code in the range. + All required parameters must be populated in order to send to Azure. + + :param start: Required. The first exit code in the range. :type start: int - :param end: The last exit code in the range. + :param end: Required. The last exit code in the range. :type end: int - :param exit_options: How the Batch service should respond if the task - exits with an exit code in the range start to end (inclusive). + :param exit_options: Required. How the Batch service should respond if the + task exits with an exit code in the range start to end (inclusive). :type exit_options: ~azure.batch.models.ExitOptions """ @@ -37,8 +39,8 @@ class ExitCodeRangeMapping(Model): 'exit_options': {'key': 'exitOptions', 'type': 'ExitOptions'}, } - def __init__(self, start, end, exit_options): - super(ExitCodeRangeMapping, self).__init__() - self.start = start - self.end = end - self.exit_options = exit_options + def __init__(self, **kwargs): + super(ExitCodeRangeMapping, self).__init__(**kwargs) + self.start = kwargs.get('start', None) + self.end = kwargs.get('end', None) + self.exit_options = kwargs.get('exit_options', None) diff --git a/azure-batch/azure/batch/models/exit_code_range_mapping_py3.py b/azure-batch/azure/batch/models/exit_code_range_mapping_py3.py new file mode 100644 index 000000000000..9a3da0bd9907 --- /dev/null +++ b/azure-batch/azure/batch/models/exit_code_range_mapping_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExitCodeRangeMapping(Model): + """A range of exit codes and how the Batch service should respond to exit + codes within that range. + + All required parameters must be populated in order to send to Azure. + + :param start: Required. The first exit code in the range. + :type start: int + :param end: Required. The last exit code in the range. + :type end: int + :param exit_options: Required. How the Batch service should respond if the + task exits with an exit code in the range start to end (inclusive). + :type exit_options: ~azure.batch.models.ExitOptions + """ + + _validation = { + 'start': {'required': True}, + 'end': {'required': True}, + 'exit_options': {'required': True}, + } + + _attribute_map = { + 'start': {'key': 'start', 'type': 'int'}, + 'end': {'key': 'end', 'type': 'int'}, + 'exit_options': {'key': 'exitOptions', 'type': 'ExitOptions'}, + } + + def __init__(self, *, start: int, end: int, exit_options, **kwargs) -> None: + super(ExitCodeRangeMapping, self).__init__(**kwargs) + self.start = start + self.end = end + self.exit_options = exit_options diff --git a/azure-batch/azure/batch/models/exit_conditions.py b/azure-batch/azure/batch/models/exit_conditions.py index 8ad98d230ba8..c368f4a16f25 100644 --- a/azure-batch/azure/batch/models/exit_conditions.py +++ b/azure-batch/azure/batch/models/exit_conditions.py @@ -48,10 +48,10 @@ class ExitConditions(Model): 'default': {'key': 'default', 'type': 'ExitOptions'}, } - def __init__(self, exit_codes=None, exit_code_ranges=None, pre_processing_error=None, file_upload_error=None, default=None): - super(ExitConditions, self).__init__() - self.exit_codes = exit_codes - self.exit_code_ranges = exit_code_ranges - self.pre_processing_error = pre_processing_error - self.file_upload_error = file_upload_error - self.default = default + def __init__(self, **kwargs): + super(ExitConditions, self).__init__(**kwargs) + self.exit_codes = kwargs.get('exit_codes', None) + self.exit_code_ranges = kwargs.get('exit_code_ranges', None) + self.pre_processing_error = kwargs.get('pre_processing_error', None) + self.file_upload_error = kwargs.get('file_upload_error', None) + self.default = kwargs.get('default', None) diff --git a/azure-batch/azure/batch/models/exit_conditions_py3.py b/azure-batch/azure/batch/models/exit_conditions_py3.py new file mode 100644 index 000000000000..f0630c7fecc2 --- /dev/null +++ b/azure-batch/azure/batch/models/exit_conditions_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExitConditions(Model): + """Specifies how the Batch service should respond when the task completes. + + :param exit_codes: A list of individual task exit codes and how the Batch + service should respond to them. + :type exit_codes: list[~azure.batch.models.ExitCodeMapping] + :param exit_code_ranges: A list of task exit code ranges and how the Batch + service should respond to them. + :type exit_code_ranges: list[~azure.batch.models.ExitCodeRangeMapping] + :param pre_processing_error: How the Batch service should respond if the + task fails to start due to an error. + :type pre_processing_error: ~azure.batch.models.ExitOptions + :param file_upload_error: How the Batch service should respond if a file + upload error occurs. If the task exited with an exit code that was + specified via exitCodes or exitCodeRanges, and then encountered a file + upload error, then the action specified by the exit code takes precedence. + :type file_upload_error: ~azure.batch.models.ExitOptions + :param default: How the Batch service should respond if the task fails + with an exit condition not covered by any of the other properties. This + value is used if the task exits with any nonzero exit code not listed in + the exitCodes or exitCodeRanges collection, with a pre-processing error if + the preProcessingError property is not present, or with a file upload + error if the fileUploadError property is not present. If you want + non-default behaviour on exit code 0, you must list it explicitly using + the exitCodes or exitCodeRanges collection. + :type default: ~azure.batch.models.ExitOptions + """ + + _attribute_map = { + 'exit_codes': {'key': 'exitCodes', 'type': '[ExitCodeMapping]'}, + 'exit_code_ranges': {'key': 'exitCodeRanges', 'type': '[ExitCodeRangeMapping]'}, + 'pre_processing_error': {'key': 'preProcessingError', 'type': 'ExitOptions'}, + 'file_upload_error': {'key': 'fileUploadError', 'type': 'ExitOptions'}, + 'default': {'key': 'default', 'type': 'ExitOptions'}, + } + + def __init__(self, *, exit_codes=None, exit_code_ranges=None, pre_processing_error=None, file_upload_error=None, default=None, **kwargs) -> None: + super(ExitConditions, self).__init__(**kwargs) + self.exit_codes = exit_codes + self.exit_code_ranges = exit_code_ranges + self.pre_processing_error = pre_processing_error + self.file_upload_error = file_upload_error + self.default = default diff --git a/azure-batch/azure/batch/models/exit_options.py b/azure-batch/azure/batch/models/exit_options.py index 02ce3ab662bf..f7f5e7b10578 100644 --- a/azure-batch/azure/batch/models/exit_options.py +++ b/azure-batch/azure/batch/models/exit_options.py @@ -41,7 +41,7 @@ class ExitOptions(Model): 'dependency_action': {'key': 'dependencyAction', 'type': 'DependencyAction'}, } - def __init__(self, job_action=None, dependency_action=None): - super(ExitOptions, self).__init__() - self.job_action = job_action - self.dependency_action = dependency_action + def __init__(self, **kwargs): + super(ExitOptions, self).__init__(**kwargs) + self.job_action = kwargs.get('job_action', None) + self.dependency_action = kwargs.get('dependency_action', None) diff --git a/azure-batch/azure/batch/models/exit_options_py3.py b/azure-batch/azure/batch/models/exit_options_py3.py new file mode 100644 index 000000000000..0867bbea15a8 --- /dev/null +++ b/azure-batch/azure/batch/models/exit_options_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExitOptions(Model): + """Specifies how the Batch service responds to a particular exit condition. + + :param job_action: An action to take on the job containing the task, if + the task completes with the given exit condition and the job's + onTaskFailed property is 'performExitOptionsJobAction'. The default is + none for exit code 0 and terminate for all other exit conditions. If the + job's onTaskFailed property is noaction, then specifying this property + returns an error and the add task request fails with an invalid property + value error; if you are calling the REST API directly, the HTTP status + code is 400 (Bad Request). Possible values include: 'none', 'disable', + 'terminate' + :type job_action: str or ~azure.batch.models.JobAction + :param dependency_action: An action that the Batch service performs on + tasks that depend on this task. The default is 'satisfy' for exit code 0, + and 'block' for all other exit conditions. If the job's + usesTaskDependencies property is set to false, then specifying the + dependencyAction property returns an error and the add task request fails + with an invalid property value error; if you are calling the REST API + directly, the HTTP status code is 400 (Bad Request). Possible values + include: 'satisfy', 'block' + :type dependency_action: str or ~azure.batch.models.DependencyAction + """ + + _attribute_map = { + 'job_action': {'key': 'jobAction', 'type': 'JobAction'}, + 'dependency_action': {'key': 'dependencyAction', 'type': 'DependencyAction'}, + } + + def __init__(self, *, job_action=None, dependency_action=None, **kwargs) -> None: + super(ExitOptions, self).__init__(**kwargs) + self.job_action = job_action + self.dependency_action = dependency_action diff --git a/azure-batch/azure/batch/models/file_delete_from_compute_node_options.py b/azure-batch/azure/batch/models/file_delete_from_compute_node_options.py index 1e800b2e1c11..7522e8063b26 100644 --- a/azure-batch/azure/batch/models/file_delete_from_compute_node_options.py +++ b/azure-batch/azure/batch/models/file_delete_from_compute_node_options.py @@ -31,9 +31,16 @@ class FileDeleteFromComputeNodeOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(FileDeleteFromComputeNodeOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(FileDeleteFromComputeNodeOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/file_delete_from_compute_node_options_py3.py b/azure-batch/azure/batch/models/file_delete_from_compute_node_options_py3.py new file mode 100644 index 000000000000..62291d142fa7 --- /dev/null +++ b/azure-batch/azure/batch/models/file_delete_from_compute_node_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileDeleteFromComputeNodeOptions(Model): + """Additional parameters for delete_from_compute_node operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(FileDeleteFromComputeNodeOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/file_delete_from_task_options.py b/azure-batch/azure/batch/models/file_delete_from_task_options.py index 085e9168b773..054babe83ab2 100644 --- a/azure-batch/azure/batch/models/file_delete_from_task_options.py +++ b/azure-batch/azure/batch/models/file_delete_from_task_options.py @@ -31,9 +31,16 @@ class FileDeleteFromTaskOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(FileDeleteFromTaskOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(FileDeleteFromTaskOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/file_delete_from_task_options_py3.py b/azure-batch/azure/batch/models/file_delete_from_task_options_py3.py new file mode 100644 index 000000000000..7d783006c7c0 --- /dev/null +++ b/azure-batch/azure/batch/models/file_delete_from_task_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileDeleteFromTaskOptions(Model): + """Additional parameters for delete_from_task operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(FileDeleteFromTaskOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/file_get_from_compute_node_options.py b/azure-batch/azure/batch/models/file_get_from_compute_node_options.py index 343eff9c5932..9a6e3fb706cb 100644 --- a/azure-batch/azure/batch/models/file_get_from_compute_node_options.py +++ b/azure-batch/azure/batch/models/file_get_from_compute_node_options.py @@ -43,12 +43,22 @@ class FileGetFromComputeNodeOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, ocp_range=None, if_modified_since=None, if_unmodified_since=None): - super(FileGetFromComputeNodeOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.ocp_range = ocp_range - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'ocp_range': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(FileGetFromComputeNodeOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.ocp_range = kwargs.get('ocp_range', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/file_get_from_compute_node_options_py3.py b/azure-batch/azure/batch/models/file_get_from_compute_node_options_py3.py new file mode 100644 index 000000000000..ab3dc34f2ba4 --- /dev/null +++ b/azure-batch/azure/batch/models/file_get_from_compute_node_options_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileGetFromComputeNodeOptions(Model): + """Additional parameters for get_from_compute_node operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param ocp_range: The byte range to be retrieved. The default is to + retrieve the entire file. The format is bytes=startRange-endRange. + :type ocp_range: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'ocp_range': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, ocp_range: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(FileGetFromComputeNodeOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.ocp_range = ocp_range + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/file_get_from_task_options.py b/azure-batch/azure/batch/models/file_get_from_task_options.py index 85bda95e8c55..19bd5cde36f7 100644 --- a/azure-batch/azure/batch/models/file_get_from_task_options.py +++ b/azure-batch/azure/batch/models/file_get_from_task_options.py @@ -43,12 +43,22 @@ class FileGetFromTaskOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, ocp_range=None, if_modified_since=None, if_unmodified_since=None): - super(FileGetFromTaskOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.ocp_range = ocp_range - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'ocp_range': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(FileGetFromTaskOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.ocp_range = kwargs.get('ocp_range', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/file_get_from_task_options_py3.py b/azure-batch/azure/batch/models/file_get_from_task_options_py3.py new file mode 100644 index 000000000000..30ec65839bcd --- /dev/null +++ b/azure-batch/azure/batch/models/file_get_from_task_options_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileGetFromTaskOptions(Model): + """Additional parameters for get_from_task operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param ocp_range: The byte range to be retrieved. The default is to + retrieve the entire file. The format is bytes=startRange-endRange. + :type ocp_range: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'ocp_range': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, ocp_range: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(FileGetFromTaskOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.ocp_range = ocp_range + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/file_get_properties_from_compute_node_options.py b/azure-batch/azure/batch/models/file_get_properties_from_compute_node_options.py index d571bb08e2cb..bf283d1d08e0 100644 --- a/azure-batch/azure/batch/models/file_get_properties_from_compute_node_options.py +++ b/azure-batch/azure/batch/models/file_get_properties_from_compute_node_options.py @@ -40,11 +40,20 @@ class FileGetPropertiesFromComputeNodeOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_modified_since=None, if_unmodified_since=None): - super(FileGetPropertiesFromComputeNodeOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(FileGetPropertiesFromComputeNodeOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/file_get_properties_from_compute_node_options_py3.py b/azure-batch/azure/batch/models/file_get_properties_from_compute_node_options_py3.py new file mode 100644 index 000000000000..69a901845c5c --- /dev/null +++ b/azure-batch/azure/batch/models/file_get_properties_from_compute_node_options_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileGetPropertiesFromComputeNodeOptions(Model): + """Additional parameters for get_properties_from_compute_node operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(FileGetPropertiesFromComputeNodeOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/file_get_properties_from_task_options.py b/azure-batch/azure/batch/models/file_get_properties_from_task_options.py index 8b4fea682d38..836387d32cca 100644 --- a/azure-batch/azure/batch/models/file_get_properties_from_task_options.py +++ b/azure-batch/azure/batch/models/file_get_properties_from_task_options.py @@ -40,11 +40,20 @@ class FileGetPropertiesFromTaskOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_modified_since=None, if_unmodified_since=None): - super(FileGetPropertiesFromTaskOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(FileGetPropertiesFromTaskOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/file_get_properties_from_task_options_py3.py b/azure-batch/azure/batch/models/file_get_properties_from_task_options_py3.py new file mode 100644 index 000000000000..739968950e4a --- /dev/null +++ b/azure-batch/azure/batch/models/file_get_properties_from_task_options_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileGetPropertiesFromTaskOptions(Model): + """Additional parameters for get_properties_from_task operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(FileGetPropertiesFromTaskOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/file_list_from_compute_node_options.py b/azure-batch/azure/batch/models/file_list_from_compute_node_options.py index 743a4cbea4c3..dc32df46952e 100644 --- a/azure-batch/azure/batch/models/file_list_from_compute_node_options.py +++ b/azure-batch/azure/batch/models/file_list_from_compute_node_options.py @@ -38,11 +38,20 @@ class FileListFromComputeNodeOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(FileListFromComputeNodeOptions, self).__init__() - self.filter = filter - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(FileListFromComputeNodeOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/file_list_from_compute_node_options_py3.py b/azure-batch/azure/batch/models/file_list_from_compute_node_options_py3.py new file mode 100644 index 000000000000..e475dcde1242 --- /dev/null +++ b/azure-batch/azure/batch/models/file_list_from_compute_node_options_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileListFromComputeNodeOptions(Model): + """Additional parameters for list_from_compute_node operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files. + :type filter: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 files can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(FileListFromComputeNodeOptions, self).__init__(**kwargs) + self.filter = filter + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/file_list_from_task_options.py b/azure-batch/azure/batch/models/file_list_from_task_options.py index f9dd62d25254..86728b259518 100644 --- a/azure-batch/azure/batch/models/file_list_from_task_options.py +++ b/azure-batch/azure/batch/models/file_list_from_task_options.py @@ -38,11 +38,20 @@ class FileListFromTaskOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(FileListFromTaskOptions, self).__init__() - self.filter = filter - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(FileListFromTaskOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/file_list_from_task_options_py3.py b/azure-batch/azure/batch/models/file_list_from_task_options_py3.py new file mode 100644 index 000000000000..354c48696129 --- /dev/null +++ b/azure-batch/azure/batch/models/file_list_from_task_options_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileListFromTaskOptions(Model): + """Additional parameters for list_from_task operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-task-files. + :type filter: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 files can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(FileListFromTaskOptions, self).__init__(**kwargs) + self.filter = filter + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/file_properties.py b/azure-batch/azure/batch/models/file_properties.py index a2e73ec5bae1..3cef000070f1 100644 --- a/azure-batch/azure/batch/models/file_properties.py +++ b/azure-batch/azure/batch/models/file_properties.py @@ -15,12 +15,15 @@ class FileProperties(Model): """The properties of a file on a compute node. + All required parameters must be populated in order to send to Azure. + :param creation_time: The file creation time. The creation time is not returned for files on Linux compute nodes. :type creation_time: datetime - :param last_modified: The time at which the file was last modified. + :param last_modified: Required. The time at which the file was last + modified. :type last_modified: datetime - :param content_length: The length of the file. + :param content_length: Required. The length of the file. :type content_length: long :param content_type: The content type of the file. :type content_type: str @@ -42,10 +45,10 @@ class FileProperties(Model): 'file_mode': {'key': 'fileMode', 'type': 'str'}, } - def __init__(self, last_modified, content_length, creation_time=None, content_type=None, file_mode=None): - super(FileProperties, self).__init__() - self.creation_time = creation_time - self.last_modified = last_modified - self.content_length = content_length - self.content_type = content_type - self.file_mode = file_mode + def __init__(self, **kwargs): + super(FileProperties, self).__init__(**kwargs) + self.creation_time = kwargs.get('creation_time', None) + self.last_modified = kwargs.get('last_modified', None) + self.content_length = kwargs.get('content_length', None) + self.content_type = kwargs.get('content_type', None) + self.file_mode = kwargs.get('file_mode', None) diff --git a/azure-batch/azure/batch/models/file_properties_py3.py b/azure-batch/azure/batch/models/file_properties_py3.py new file mode 100644 index 000000000000..71c2a8e68290 --- /dev/null +++ b/azure-batch/azure/batch/models/file_properties_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileProperties(Model): + """The properties of a file on a compute node. + + All required parameters must be populated in order to send to Azure. + + :param creation_time: The file creation time. The creation time is not + returned for files on Linux compute nodes. + :type creation_time: datetime + :param last_modified: Required. The time at which the file was last + modified. + :type last_modified: datetime + :param content_length: Required. The length of the file. + :type content_length: long + :param content_type: The content type of the file. + :type content_type: str + :param file_mode: The file mode attribute in octal format. The file mode + is returned only for files on Linux compute nodes. + :type file_mode: str + """ + + _validation = { + 'last_modified': {'required': True}, + 'content_length': {'required': True}, + } + + _attribute_map = { + 'creation_time': {'key': 'creationTime', 'type': 'iso-8601'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'content_length': {'key': 'contentLength', 'type': 'long'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'file_mode': {'key': 'fileMode', 'type': 'str'}, + } + + def __init__(self, *, last_modified, content_length: int, creation_time=None, content_type: str=None, file_mode: str=None, **kwargs) -> None: + super(FileProperties, self).__init__(**kwargs) + self.creation_time = creation_time + self.last_modified = last_modified + self.content_length = content_length + self.content_type = content_type + self.file_mode = file_mode diff --git a/azure-batch/azure/batch/models/image_reference.py b/azure-batch/azure/batch/models/image_reference.py index 67bdf1b8343c..41fb7fbcc9a8 100644 --- a/azure-batch/azure/batch/models/image_reference.py +++ b/azure-batch/azure/batch/models/image_reference.py @@ -51,10 +51,10 @@ class ImageReference(Model): 'virtual_machine_image_id': {'key': 'virtualMachineImageId', 'type': 'str'}, } - def __init__(self, publisher=None, offer=None, sku=None, version=None, virtual_machine_image_id=None): - super(ImageReference, self).__init__() - self.publisher = publisher - self.offer = offer - self.sku = sku - self.version = version - self.virtual_machine_image_id = virtual_machine_image_id + def __init__(self, **kwargs): + super(ImageReference, self).__init__(**kwargs) + self.publisher = kwargs.get('publisher', None) + self.offer = kwargs.get('offer', None) + self.sku = kwargs.get('sku', None) + self.version = kwargs.get('version', None) + self.virtual_machine_image_id = kwargs.get('virtual_machine_image_id', None) diff --git a/azure-batch/azure/batch/models/image_reference_py3.py b/azure-batch/azure/batch/models/image_reference_py3.py new file mode 100644 index 000000000000..7471294d297b --- /dev/null +++ b/azure-batch/azure/batch/models/image_reference_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageReference(Model): + """A reference to an Azure Virtual Machines Marketplace image or a custom + Azure Virtual Machine image. To get the list of all Azure Marketplace image + references verified by Azure Batch, see the 'List node agent SKUs' + operation. + + :param publisher: The publisher of the Azure Virtual Machines Marketplace + image. For example, Canonical or MicrosoftWindowsServer. + :type publisher: str + :param offer: The offer type of the Azure Virtual Machines Marketplace + image. For example, UbuntuServer or WindowsServer. + :type offer: str + :param sku: The SKU of the Azure Virtual Machines Marketplace image. For + example, 14.04.0-LTS or 2012-R2-Datacenter. + :type sku: str + :param version: The version of the Azure Virtual Machines Marketplace + image. A value of 'latest' can be specified to select the latest version + of an image. If omitted, the default is 'latest'. + :type version: str + :param virtual_machine_image_id: The ARM resource identifier of the + virtual machine image. Computes nodes of the pool will be created using + this custom image. This is of the form + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}. + This property is mutually exclusive with other ImageReference properties. + The virtual machine image must be in the same region and subscription as + the Azure Batch account. For information about the firewall settings for + the Batch node agent to communicate with the Batch service see + https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. + :type virtual_machine_image_id: str + """ + + _attribute_map = { + 'publisher': {'key': 'publisher', 'type': 'str'}, + 'offer': {'key': 'offer', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + 'virtual_machine_image_id': {'key': 'virtualMachineImageId', 'type': 'str'}, + } + + def __init__(self, *, publisher: str=None, offer: str=None, sku: str=None, version: str=None, virtual_machine_image_id: str=None, **kwargs) -> None: + super(ImageReference, self).__init__(**kwargs) + self.publisher = publisher + self.offer = offer + self.sku = sku + self.version = version + self.virtual_machine_image_id = virtual_machine_image_id diff --git a/azure-batch/azure/batch/models/inbound_endpoint.py b/azure-batch/azure/batch/models/inbound_endpoint.py index f65d5d6fe771..8fd064a95724 100644 --- a/azure-batch/azure/batch/models/inbound_endpoint.py +++ b/azure-batch/azure/batch/models/inbound_endpoint.py @@ -15,19 +15,22 @@ class InboundEndpoint(Model): """An inbound endpoint on a compute node. - :param name: The name of the endpoint. + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the endpoint. :type name: str - :param protocol: The protocol of the endpoint. Possible values include: - 'tcp', 'udp' + :param protocol: Required. The protocol of the endpoint. Possible values + include: 'tcp', 'udp' :type protocol: str or ~azure.batch.models.InboundEndpointProtocol - :param public_ip_address: The public IP address of the compute node. - :type public_ip_address: str - :param public_fqdn: The public fully qualified domain name for the compute + :param public_ip_address: Required. The public IP address of the compute node. + :type public_ip_address: str + :param public_fqdn: Required. The public fully qualified domain name for + the compute node. :type public_fqdn: str - :param frontend_port: The public port number of the endpoint. + :param frontend_port: Required. The public port number of the endpoint. :type frontend_port: int - :param backend_port: The backend port number of the endpoint. + :param backend_port: Required. The backend port number of the endpoint. :type backend_port: int """ @@ -49,11 +52,11 @@ class InboundEndpoint(Model): 'backend_port': {'key': 'backendPort', 'type': 'int'}, } - def __init__(self, name, protocol, public_ip_address, public_fqdn, frontend_port, backend_port): - super(InboundEndpoint, self).__init__() - self.name = name - self.protocol = protocol - self.public_ip_address = public_ip_address - self.public_fqdn = public_fqdn - self.frontend_port = frontend_port - self.backend_port = backend_port + def __init__(self, **kwargs): + super(InboundEndpoint, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol = kwargs.get('protocol', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.public_fqdn = kwargs.get('public_fqdn', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.backend_port = kwargs.get('backend_port', None) diff --git a/azure-batch/azure/batch/models/inbound_endpoint_py3.py b/azure-batch/azure/batch/models/inbound_endpoint_py3.py new file mode 100644 index 000000000000..004e15779741 --- /dev/null +++ b/azure-batch/azure/batch/models/inbound_endpoint_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InboundEndpoint(Model): + """An inbound endpoint on a compute node. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the endpoint. + :type name: str + :param protocol: Required. The protocol of the endpoint. Possible values + include: 'tcp', 'udp' + :type protocol: str or ~azure.batch.models.InboundEndpointProtocol + :param public_ip_address: Required. The public IP address of the compute + node. + :type public_ip_address: str + :param public_fqdn: Required. The public fully qualified domain name for + the compute node. + :type public_fqdn: str + :param frontend_port: Required. The public port number of the endpoint. + :type frontend_port: int + :param backend_port: Required. The backend port number of the endpoint. + :type backend_port: int + """ + + _validation = { + 'name': {'required': True}, + 'protocol': {'required': True}, + 'public_ip_address': {'required': True}, + 'public_fqdn': {'required': True}, + 'frontend_port': {'required': True}, + 'backend_port': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'InboundEndpointProtocol'}, + 'public_ip_address': {'key': 'publicIPAddress', 'type': 'str'}, + 'public_fqdn': {'key': 'publicFQDN', 'type': 'str'}, + 'frontend_port': {'key': 'frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'backendPort', 'type': 'int'}, + } + + def __init__(self, *, name: str, protocol, public_ip_address: str, public_fqdn: str, frontend_port: int, backend_port: int, **kwargs) -> None: + super(InboundEndpoint, self).__init__(**kwargs) + self.name = name + self.protocol = protocol + self.public_ip_address = public_ip_address + self.public_fqdn = public_fqdn + self.frontend_port = frontend_port + self.backend_port = backend_port diff --git a/azure-batch/azure/batch/models/inbound_nat_pool.py b/azure-batch/azure/batch/models/inbound_nat_pool.py index 61e2f507de29..bf3209e992a0 100644 --- a/azure-batch/azure/batch/models/inbound_nat_pool.py +++ b/azure-batch/azure/batch/models/inbound_nat_pool.py @@ -16,30 +16,32 @@ class InboundNATPool(Model): """A inbound NAT pool that can be used to address specific ports on compute nodes in a Batch pool externally. - :param name: The name of the endpoint. The name must be unique within a - Batch pool, can contain letters, numbers, underscores, periods, and - hyphens. Names must start with a letter or number, must end with a letter, - number, or underscore, and cannot exceed 77 characters. If any invalid - values are provided the request fails with HTTP status code 400. + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the endpoint. The name must be unique + within a Batch pool, can contain letters, numbers, underscores, periods, + and hyphens. Names must start with a letter or number, must end with a + letter, number, or underscore, and cannot exceed 77 characters. If any + invalid values are provided the request fails with HTTP status code 400. :type name: str - :param protocol: The protocol of the endpoint. Possible values include: - 'tcp', 'udp' + :param protocol: Required. The protocol of the endpoint. Possible values + include: 'tcp', 'udp' :type protocol: str or ~azure.batch.models.InboundEndpointProtocol - :param backend_port: The port number on the compute node. This must be - unique within a Batch pool. Acceptable values are between 1 and 65535 - except for 22, 3389, 29876 and 29877 as these are reserved. If any + :param backend_port: Required. The port number on the compute node. This + must be unique within a Batch pool. Acceptable values are between 1 and + 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400. :type backend_port: int - :param frontend_port_range_start: The first port number in the range of - external ports that will be used to provide inbound access to the + :param frontend_port_range_start: Required. The first port number in the + range of external ports that will be used to provide inbound access to the backendPort on individual compute nodes. Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. Each range must contain at least 40 ports. If any reserved or overlapping values are provided the request fails with HTTP status code 400. :type frontend_port_range_start: int - :param frontend_port_range_end: The last port number in the range of - external ports that will be used to provide inbound access to the + :param frontend_port_range_end: Required. The last port number in the + range of external ports that will be used to provide inbound access to the backendPort on individual compute nodes. Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. @@ -74,11 +76,11 @@ class InboundNATPool(Model): 'network_security_group_rules': {'key': 'networkSecurityGroupRules', 'type': '[NetworkSecurityGroupRule]'}, } - def __init__(self, name, protocol, backend_port, frontend_port_range_start, frontend_port_range_end, network_security_group_rules=None): - super(InboundNATPool, self).__init__() - self.name = name - self.protocol = protocol - self.backend_port = backend_port - self.frontend_port_range_start = frontend_port_range_start - self.frontend_port_range_end = frontend_port_range_end - self.network_security_group_rules = network_security_group_rules + def __init__(self, **kwargs): + super(InboundNATPool, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol = kwargs.get('protocol', None) + self.backend_port = kwargs.get('backend_port', None) + self.frontend_port_range_start = kwargs.get('frontend_port_range_start', None) + self.frontend_port_range_end = kwargs.get('frontend_port_range_end', None) + self.network_security_group_rules = kwargs.get('network_security_group_rules', None) diff --git a/azure-batch/azure/batch/models/inbound_nat_pool_py3.py b/azure-batch/azure/batch/models/inbound_nat_pool_py3.py new file mode 100644 index 000000000000..ed91e3733983 --- /dev/null +++ b/azure-batch/azure/batch/models/inbound_nat_pool_py3.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InboundNATPool(Model): + """A inbound NAT pool that can be used to address specific ports on compute + nodes in a Batch pool externally. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the endpoint. The name must be unique + within a Batch pool, can contain letters, numbers, underscores, periods, + and hyphens. Names must start with a letter or number, must end with a + letter, number, or underscore, and cannot exceed 77 characters. If any + invalid values are provided the request fails with HTTP status code 400. + :type name: str + :param protocol: Required. The protocol of the endpoint. Possible values + include: 'tcp', 'udp' + :type protocol: str or ~azure.batch.models.InboundEndpointProtocol + :param backend_port: Required. The port number on the compute node. This + must be unique within a Batch pool. Acceptable values are between 1 and + 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any + reserved values are provided the request fails with HTTP status code 400. + :type backend_port: int + :param frontend_port_range_start: Required. The first port number in the + range of external ports that will be used to provide inbound access to the + backendPort on individual compute nodes. Acceptable values range between 1 + and 65534 except ports from 50000 to 55000 which are reserved. All ranges + within a pool must be distinct and cannot overlap. Each range must contain + at least 40 ports. If any reserved or overlapping values are provided the + request fails with HTTP status code 400. + :type frontend_port_range_start: int + :param frontend_port_range_end: Required. The last port number in the + range of external ports that will be used to provide inbound access to the + backendPort on individual compute nodes. Acceptable values range between 1 + and 65534 except ports from 50000 to 55000 which are reserved by the Batch + service. All ranges within a pool must be distinct and cannot overlap. + Each range must contain at least 40 ports. If any reserved or overlapping + values are provided the request fails with HTTP status code 400. + :type frontend_port_range_end: int + :param network_security_group_rules: A list of network security group + rules that will be applied to the endpoint. The maximum number of rules + that can be specified across all the endpoints on a Batch pool is 25. If + no network security group rules are specified, a default rule will be + created to allow inbound access to the specified backendPort. If the + maximum number of network security group rules is exceeded the request + fails with HTTP status code 400. + :type network_security_group_rules: + list[~azure.batch.models.NetworkSecurityGroupRule] + """ + + _validation = { + 'name': {'required': True}, + 'protocol': {'required': True}, + 'backend_port': {'required': True}, + 'frontend_port_range_start': {'required': True}, + 'frontend_port_range_end': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'InboundEndpointProtocol'}, + 'backend_port': {'key': 'backendPort', 'type': 'int'}, + 'frontend_port_range_start': {'key': 'frontendPortRangeStart', 'type': 'int'}, + 'frontend_port_range_end': {'key': 'frontendPortRangeEnd', 'type': 'int'}, + 'network_security_group_rules': {'key': 'networkSecurityGroupRules', 'type': '[NetworkSecurityGroupRule]'}, + } + + def __init__(self, *, name: str, protocol, backend_port: int, frontend_port_range_start: int, frontend_port_range_end: int, network_security_group_rules=None, **kwargs) -> None: + super(InboundNATPool, self).__init__(**kwargs) + self.name = name + self.protocol = protocol + self.backend_port = backend_port + self.frontend_port_range_start = frontend_port_range_start + self.frontend_port_range_end = frontend_port_range_end + self.network_security_group_rules = network_security_group_rules diff --git a/azure-batch/azure/batch/models/job_add_options.py b/azure-batch/azure/batch/models/job_add_options.py index 68e4a54ec20c..bdcf79691d86 100644 --- a/azure-batch/azure/batch/models/job_add_options.py +++ b/azure-batch/azure/batch/models/job_add_options.py @@ -31,9 +31,16 @@ class JobAddOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(JobAddOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobAddOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/job_add_options_py3.py b/azure-batch/azure/batch/models/job_add_options_py3.py new file mode 100644 index 000000000000..9633e748c18a --- /dev/null +++ b/azure-batch/azure/batch/models/job_add_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobAddOptions(Model): + """Additional parameters for add operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(JobAddOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/job_add_parameter.py b/azure-batch/azure/batch/models/job_add_parameter.py index 403155f951be..f79558f4fa6d 100644 --- a/azure-batch/azure/batch/models/job_add_parameter.py +++ b/azure-batch/azure/batch/models/job_add_parameter.py @@ -15,11 +15,13 @@ class JobAddParameter(Model): """An Azure Batch job to add. - :param id: A string that uniquely identifies the job within the account. - The ID can contain any combination of alphanumeric characters including - hyphens and underscores, and cannot contain more than 64 characters. The - ID is case-preserving and case-insensitive (that is, you may not have two - IDs within an account that differ only by case). + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the job within the + account. The ID can contain any combination of alphanumeric characters + including hyphens and underscores, and cannot contain more than 64 + characters. The ID is case-preserving and case-insensitive (that is, you + may not have two IDs within an account that differ only by case). :type id: str :param display_name: The display name for the job. The display name need not be unique and can contain any Unicode characters up to a maximum @@ -64,8 +66,8 @@ class JobAddParameter(Model): here by specifying the same setting name with a different value. :type common_environment_settings: list[~azure.batch.models.EnvironmentSetting] - :param pool_info: The pool on which the Batch service runs the job's - tasks. + :param pool_info: Required. The pool on which the Batch service runs the + job's tasks. :type pool_info: ~azure.batch.models.PoolInformation :param on_all_tasks_complete: The action the Batch service should take when all tasks in the job are in the completed state. Note that if a job @@ -115,18 +117,18 @@ class JobAddParameter(Model): 'uses_task_dependencies': {'key': 'usesTaskDependencies', 'type': 'bool'}, } - def __init__(self, id, pool_info, display_name=None, priority=None, constraints=None, job_manager_task=None, job_preparation_task=None, job_release_task=None, common_environment_settings=None, on_all_tasks_complete=None, on_task_failure=None, metadata=None, uses_task_dependencies=None): - super(JobAddParameter, self).__init__() - self.id = id - self.display_name = display_name - self.priority = priority - self.constraints = constraints - self.job_manager_task = job_manager_task - self.job_preparation_task = job_preparation_task - self.job_release_task = job_release_task - self.common_environment_settings = common_environment_settings - self.pool_info = pool_info - self.on_all_tasks_complete = on_all_tasks_complete - self.on_task_failure = on_task_failure - self.metadata = metadata - self.uses_task_dependencies = uses_task_dependencies + def __init__(self, **kwargs): + super(JobAddParameter, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.priority = kwargs.get('priority', None) + self.constraints = kwargs.get('constraints', None) + self.job_manager_task = kwargs.get('job_manager_task', None) + self.job_preparation_task = kwargs.get('job_preparation_task', None) + self.job_release_task = kwargs.get('job_release_task', None) + self.common_environment_settings = kwargs.get('common_environment_settings', None) + self.pool_info = kwargs.get('pool_info', None) + self.on_all_tasks_complete = kwargs.get('on_all_tasks_complete', None) + self.on_task_failure = kwargs.get('on_task_failure', None) + self.metadata = kwargs.get('metadata', None) + self.uses_task_dependencies = kwargs.get('uses_task_dependencies', None) diff --git a/azure-batch/azure/batch/models/job_add_parameter_py3.py b/azure-batch/azure/batch/models/job_add_parameter_py3.py new file mode 100644 index 000000000000..e09577550b8b --- /dev/null +++ b/azure-batch/azure/batch/models/job_add_parameter_py3.py @@ -0,0 +1,134 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobAddParameter(Model): + """An Azure Batch job to add. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the job within the + account. The ID can contain any combination of alphanumeric characters + including hyphens and underscores, and cannot contain more than 64 + characters. The ID is case-preserving and case-insensitive (that is, you + may not have two IDs within an account that differ only by case). + :type id: str + :param display_name: The display name for the job. The display name need + not be unique and can contain any Unicode characters up to a maximum + length of 1024. + :type display_name: str + :param priority: The priority of the job. Priority values can range from + -1000 to 1000, with -1000 being the lowest priority and 1000 being the + highest priority. The default value is 0. + :type priority: int + :param constraints: The execution constraints for the job. + :type constraints: ~azure.batch.models.JobConstraints + :param job_manager_task: Details of a Job Manager task to be launched when + the job is started. If the job does not specify a Job Manager task, the + user must explicitly add tasks to the job. If the job does specify a Job + Manager task, the Batch service creates the Job Manager task when the job + is created, and will try to schedule the Job Manager task before + scheduling other tasks in the job. The Job Manager task's typical purpose + is to control and/or monitor job execution, for example by deciding what + additional tasks to run, determining when the work is complete, etc. + (However, a Job Manager task is not restricted to these activities - it is + a fully-fledged task in the system and perform whatever actions are + required for the job.) For example, a Job Manager task might download a + file specified as a parameter, analyze the contents of that file and + submit additional tasks based on those contents. + :type job_manager_task: ~azure.batch.models.JobManagerTask + :param job_preparation_task: The Job Preparation task. If a job has a Job + Preparation task, the Batch service will run the Job Preparation task on a + compute node before starting any tasks of that job on that compute node. + :type job_preparation_task: ~azure.batch.models.JobPreparationTask + :param job_release_task: The Job Release task. A Job Release task cannot + be specified without also specifying a Job Preparation task for the job. + The Batch service runs the Job Release task on the compute nodes that have + run the Job Preparation task. The primary purpose of the Job Release task + is to undo changes to compute nodes made by the Job Preparation task. + Example activities include deleting local files, or shutting down services + that were started as part of job preparation. + :type job_release_task: ~azure.batch.models.JobReleaseTask + :param common_environment_settings: The list of common environment + variable settings. These environment variables are set for all tasks in + the job (including the Job Manager, Job Preparation and Job Release + tasks). Individual tasks can override an environment setting specified + here by specifying the same setting name with a different value. + :type common_environment_settings: + list[~azure.batch.models.EnvironmentSetting] + :param pool_info: Required. The pool on which the Batch service runs the + job's tasks. + :type pool_info: ~azure.batch.models.PoolInformation + :param on_all_tasks_complete: The action the Batch service should take + when all tasks in the job are in the completed state. Note that if a job + contains no tasks, then all tasks are considered complete. This option is + therefore most commonly used with a Job Manager task; if you want to use + automatic job termination without a Job Manager, you should initially set + onAllTasksComplete to noaction and update the job properties to set + onAllTasksComplete to terminatejob once you have finished adding tasks. + The default is noaction. Possible values include: 'noAction', + 'terminateJob' + :type on_all_tasks_complete: str or ~azure.batch.models.OnAllTasksComplete + :param on_task_failure: The action the Batch service should take when any + task in the job fails. A task is considered to have failed if has a + failureInfo. A failureInfo is set if the task completes with a non-zero + exit code after exhausting its retry count, or if there was an error + starting the task, for example due to a resource file download error. The + default is noaction. Possible values include: 'noAction', + 'performExitOptionsJobAction' + :type on_task_failure: str or ~azure.batch.models.OnTaskFailure + :param metadata: A list of name-value pairs associated with the job as + metadata. The Batch service does not assign any meaning to metadata; it is + solely for the use of user code. + :type metadata: list[~azure.batch.models.MetadataItem] + :param uses_task_dependencies: Whether tasks in the job can define + dependencies on each other. The default is false. + :type uses_task_dependencies: bool + """ + + _validation = { + 'id': {'required': True}, + 'pool_info': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'constraints': {'key': 'constraints', 'type': 'JobConstraints'}, + 'job_manager_task': {'key': 'jobManagerTask', 'type': 'JobManagerTask'}, + 'job_preparation_task': {'key': 'jobPreparationTask', 'type': 'JobPreparationTask'}, + 'job_release_task': {'key': 'jobReleaseTask', 'type': 'JobReleaseTask'}, + 'common_environment_settings': {'key': 'commonEnvironmentSettings', 'type': '[EnvironmentSetting]'}, + 'pool_info': {'key': 'poolInfo', 'type': 'PoolInformation'}, + 'on_all_tasks_complete': {'key': 'onAllTasksComplete', 'type': 'OnAllTasksComplete'}, + 'on_task_failure': {'key': 'onTaskFailure', 'type': 'OnTaskFailure'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + 'uses_task_dependencies': {'key': 'usesTaskDependencies', 'type': 'bool'}, + } + + def __init__(self, *, id: str, pool_info, display_name: str=None, priority: int=None, constraints=None, job_manager_task=None, job_preparation_task=None, job_release_task=None, common_environment_settings=None, on_all_tasks_complete=None, on_task_failure=None, metadata=None, uses_task_dependencies: bool=None, **kwargs) -> None: + super(JobAddParameter, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.priority = priority + self.constraints = constraints + self.job_manager_task = job_manager_task + self.job_preparation_task = job_preparation_task + self.job_release_task = job_release_task + self.common_environment_settings = common_environment_settings + self.pool_info = pool_info + self.on_all_tasks_complete = on_all_tasks_complete + self.on_task_failure = on_task_failure + self.metadata = metadata + self.uses_task_dependencies = uses_task_dependencies diff --git a/azure-batch/azure/batch/models/job_constraints.py b/azure-batch/azure/batch/models/job_constraints.py index a3fc325384e2..070a37aefbfb 100644 --- a/azure-batch/azure/batch/models/job_constraints.py +++ b/azure-batch/azure/batch/models/job_constraints.py @@ -39,7 +39,7 @@ class JobConstraints(Model): 'max_task_retry_count': {'key': 'maxTaskRetryCount', 'type': 'int'}, } - def __init__(self, max_wall_clock_time=None, max_task_retry_count=None): - super(JobConstraints, self).__init__() - self.max_wall_clock_time = max_wall_clock_time - self.max_task_retry_count = max_task_retry_count + def __init__(self, **kwargs): + super(JobConstraints, self).__init__(**kwargs) + self.max_wall_clock_time = kwargs.get('max_wall_clock_time', None) + self.max_task_retry_count = kwargs.get('max_task_retry_count', None) diff --git a/azure-batch/azure/batch/models/job_constraints_py3.py b/azure-batch/azure/batch/models/job_constraints_py3.py new file mode 100644 index 000000000000..06340ebed94f --- /dev/null +++ b/azure-batch/azure/batch/models/job_constraints_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobConstraints(Model): + """The execution constraints for a job. + + :param max_wall_clock_time: The maximum elapsed time that the job may run, + measured from the time the job is created. If the job does not complete + within the time limit, the Batch service terminates it and any tasks that + are still running. In this case, the termination reason will be + MaxWallClockTimeExpiry. If this property is not specified, there is no + time limit on how long the job may run. + :type max_wall_clock_time: timedelta + :param max_task_retry_count: The maximum number of times each task may be + retried. The Batch service retries a task if its exit code is nonzero. + Note that this value specifically controls the number of retries. The + Batch service will try each task once, and may then retry up to this + limit. For example, if the maximum retry count is 3, Batch tries a task up + to 4 times (one initial try and 3 retries). If the maximum retry count is + 0, the Batch service does not retry tasks. If the maximum retry count is + -1, the Batch service retries tasks without limit. The default value is 0 + (no retries). + :type max_task_retry_count: int + """ + + _attribute_map = { + 'max_wall_clock_time': {'key': 'maxWallClockTime', 'type': 'duration'}, + 'max_task_retry_count': {'key': 'maxTaskRetryCount', 'type': 'int'}, + } + + def __init__(self, *, max_wall_clock_time=None, max_task_retry_count: int=None, **kwargs) -> None: + super(JobConstraints, self).__init__(**kwargs) + self.max_wall_clock_time = max_wall_clock_time + self.max_task_retry_count = max_task_retry_count diff --git a/azure-batch/azure/batch/models/job_delete_options.py b/azure-batch/azure/batch/models/job_delete_options.py index 73e96fe91923..a537b55e907a 100644 --- a/azure-batch/azure/batch/models/job_delete_options.py +++ b/azure-batch/azure/batch/models/job_delete_options.py @@ -50,13 +50,24 @@ class JobDeleteOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobDeleteOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobDeleteOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_delete_options_py3.py b/azure-batch/azure/batch/models/job_delete_options_py3.py new file mode 100644 index 000000000000..821db0e8c2df --- /dev/null +++ b/azure-batch/azure/batch/models/job_delete_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobDeleteOptions(Model): + """Additional parameters for delete operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobDeleteOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_disable_options.py b/azure-batch/azure/batch/models/job_disable_options.py index b818e4e7692d..c669451674e5 100644 --- a/azure-batch/azure/batch/models/job_disable_options.py +++ b/azure-batch/azure/batch/models/job_disable_options.py @@ -50,13 +50,24 @@ class JobDisableOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobDisableOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobDisableOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_disable_options_py3.py b/azure-batch/azure/batch/models/job_disable_options_py3.py new file mode 100644 index 000000000000..4b077714d764 --- /dev/null +++ b/azure-batch/azure/batch/models/job_disable_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobDisableOptions(Model): + """Additional parameters for disable operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobDisableOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_disable_parameter.py b/azure-batch/azure/batch/models/job_disable_parameter.py index 6d5d488d520c..d86c965f3458 100644 --- a/azure-batch/azure/batch/models/job_disable_parameter.py +++ b/azure-batch/azure/batch/models/job_disable_parameter.py @@ -15,8 +15,10 @@ class JobDisableParameter(Model): """Options when disabling a job. - :param disable_tasks: What to do with active tasks associated with the - job. Possible values include: 'requeue', 'terminate', 'wait' + All required parameters must be populated in order to send to Azure. + + :param disable_tasks: Required. What to do with active tasks associated + with the job. Possible values include: 'requeue', 'terminate', 'wait' :type disable_tasks: str or ~azure.batch.models.DisableJobOption """ @@ -28,6 +30,6 @@ class JobDisableParameter(Model): 'disable_tasks': {'key': 'disableTasks', 'type': 'DisableJobOption'}, } - def __init__(self, disable_tasks): - super(JobDisableParameter, self).__init__() - self.disable_tasks = disable_tasks + def __init__(self, **kwargs): + super(JobDisableParameter, self).__init__(**kwargs) + self.disable_tasks = kwargs.get('disable_tasks', None) diff --git a/azure-batch/azure/batch/models/job_disable_parameter_py3.py b/azure-batch/azure/batch/models/job_disable_parameter_py3.py new file mode 100644 index 000000000000..fd99f78e1edf --- /dev/null +++ b/azure-batch/azure/batch/models/job_disable_parameter_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobDisableParameter(Model): + """Options when disabling a job. + + All required parameters must be populated in order to send to Azure. + + :param disable_tasks: Required. What to do with active tasks associated + with the job. Possible values include: 'requeue', 'terminate', 'wait' + :type disable_tasks: str or ~azure.batch.models.DisableJobOption + """ + + _validation = { + 'disable_tasks': {'required': True}, + } + + _attribute_map = { + 'disable_tasks': {'key': 'disableTasks', 'type': 'DisableJobOption'}, + } + + def __init__(self, *, disable_tasks, **kwargs) -> None: + super(JobDisableParameter, self).__init__(**kwargs) + self.disable_tasks = disable_tasks diff --git a/azure-batch/azure/batch/models/job_enable_options.py b/azure-batch/azure/batch/models/job_enable_options.py index d8cb4a4a43db..182f2b040999 100644 --- a/azure-batch/azure/batch/models/job_enable_options.py +++ b/azure-batch/azure/batch/models/job_enable_options.py @@ -50,13 +50,24 @@ class JobEnableOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobEnableOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobEnableOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_enable_options_py3.py b/azure-batch/azure/batch/models/job_enable_options_py3.py new file mode 100644 index 000000000000..47695f3753a6 --- /dev/null +++ b/azure-batch/azure/batch/models/job_enable_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobEnableOptions(Model): + """Additional parameters for enable operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobEnableOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_execution_information.py b/azure-batch/azure/batch/models/job_execution_information.py index cf924ab798c3..28f5a31d2669 100644 --- a/azure-batch/azure/batch/models/job_execution_information.py +++ b/azure-batch/azure/batch/models/job_execution_information.py @@ -16,8 +16,10 @@ class JobExecutionInformation(Model): """Contains information about the execution of a job in the Azure Batch service. - :param start_time: The start time of the job. This is the time at which - the job was created. + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The start time of the job. This is the time + at which the job was created. :type start_time: datetime :param end_time: The completion time of the job. This property is set only if the job is in the completed state. @@ -62,10 +64,10 @@ class JobExecutionInformation(Model): 'terminate_reason': {'key': 'terminateReason', 'type': 'str'}, } - def __init__(self, start_time, end_time=None, pool_id=None, scheduling_error=None, terminate_reason=None): - super(JobExecutionInformation, self).__init__() - self.start_time = start_time - self.end_time = end_time - self.pool_id = pool_id - self.scheduling_error = scheduling_error - self.terminate_reason = terminate_reason + def __init__(self, **kwargs): + super(JobExecutionInformation, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.pool_id = kwargs.get('pool_id', None) + self.scheduling_error = kwargs.get('scheduling_error', None) + self.terminate_reason = kwargs.get('terminate_reason', None) diff --git a/azure-batch/azure/batch/models/job_execution_information_py3.py b/azure-batch/azure/batch/models/job_execution_information_py3.py new file mode 100644 index 000000000000..436d2990c247 --- /dev/null +++ b/azure-batch/azure/batch/models/job_execution_information_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobExecutionInformation(Model): + """Contains information about the execution of a job in the Azure Batch + service. + + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The start time of the job. This is the time + at which the job was created. + :type start_time: datetime + :param end_time: The completion time of the job. This property is set only + if the job is in the completed state. + :type end_time: datetime + :param pool_id: The ID of the pool to which this job is assigned. This + element contains the actual pool where the job is assigned. When you get + job details from the service, they also contain a poolInfo element, which + contains the pool configuration data from when the job was added or + updated. That poolInfo element may also contain a poolId element. If it + does, the two IDs are the same. If it does not, it means the job ran on an + auto pool, and this property contains the ID of that auto pool. + :type pool_id: str + :param scheduling_error: Details of any error encountered by the service + in starting the job. This property is not set if there was no error + starting the job. + :type scheduling_error: ~azure.batch.models.JobSchedulingError + :param terminate_reason: A string describing the reason the job ended. + This property is set only if the job is in the completed state. If the + Batch service terminates the job, it sets the reason as follows: + JMComplete - the Job Manager task completed, and killJobOnCompletion was + set to true. MaxWallClockTimeExpiry - the job reached its maxWallClockTime + constraint. TerminateJobSchedule - the job ran as part of a schedule, and + the schedule terminated. AllTasksComplete - the job's onAllTasksComplete + attribute is set to terminatejob, and all tasks in the job are complete. + TaskFailed - the job's onTaskFailure attribute is set to + performExitOptionsJobAction, and a task in the job failed with an exit + condition that specified a jobAction of terminatejob. Any other string is + a user-defined reason specified in a call to the 'Terminate a job' + operation. + :type terminate_reason: str + """ + + _validation = { + 'start_time': {'required': True}, + } + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'pool_id': {'key': 'poolId', 'type': 'str'}, + 'scheduling_error': {'key': 'schedulingError', 'type': 'JobSchedulingError'}, + 'terminate_reason': {'key': 'terminateReason', 'type': 'str'}, + } + + def __init__(self, *, start_time, end_time=None, pool_id: str=None, scheduling_error=None, terminate_reason: str=None, **kwargs) -> None: + super(JobExecutionInformation, self).__init__(**kwargs) + self.start_time = start_time + self.end_time = end_time + self.pool_id = pool_id + self.scheduling_error = scheduling_error + self.terminate_reason = terminate_reason diff --git a/azure-batch/azure/batch/models/job_get_all_lifetime_statistics_options.py b/azure-batch/azure/batch/models/job_get_all_lifetime_statistics_options.py index 25c7153d11a7..a8f7e8494ab8 100644 --- a/azure-batch/azure/batch/models/job_get_all_lifetime_statistics_options.py +++ b/azure-batch/azure/batch/models/job_get_all_lifetime_statistics_options.py @@ -31,9 +31,16 @@ class JobGetAllLifetimeStatisticsOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(JobGetAllLifetimeStatisticsOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobGetAllLifetimeStatisticsOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/job_get_all_lifetime_statistics_options_py3.py b/azure-batch/azure/batch/models/job_get_all_lifetime_statistics_options_py3.py new file mode 100644 index 000000000000..2092bbd8b6d8 --- /dev/null +++ b/azure-batch/azure/batch/models/job_get_all_lifetime_statistics_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobGetAllLifetimeStatisticsOptions(Model): + """Additional parameters for get_all_lifetime_statistics operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(JobGetAllLifetimeStatisticsOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/job_get_options.py b/azure-batch/azure/batch/models/job_get_options.py index 12a52bd4231a..62d479597094 100644 --- a/azure-batch/azure/batch/models/job_get_options.py +++ b/azure-batch/azure/batch/models/job_get_options.py @@ -54,15 +54,28 @@ class JobGetOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, select=None, expand=None, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobGetOptions, self).__init__() - self.select = select - self.expand = expand - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobGetOptions, self).__init__(**kwargs) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_get_options_py3.py b/azure-batch/azure/batch/models/job_get_options_py3.py new file mode 100644 index 000000000000..9ed21fc3ee3a --- /dev/null +++ b/azure-batch/azure/batch/models/job_get_options_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobGetOptions(Model): + """Additional parameters for get operation. + + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, select: str=None, expand: str=None, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobGetOptions, self).__init__(**kwargs) + self.select = select + self.expand = expand + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_get_task_counts_options.py b/azure-batch/azure/batch/models/job_get_task_counts_options.py index 753f314a4a3a..603d79ce144e 100644 --- a/azure-batch/azure/batch/models/job_get_task_counts_options.py +++ b/azure-batch/azure/batch/models/job_get_task_counts_options.py @@ -31,9 +31,16 @@ class JobGetTaskCountsOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(JobGetTaskCountsOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobGetTaskCountsOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/job_get_task_counts_options_py3.py b/azure-batch/azure/batch/models/job_get_task_counts_options_py3.py new file mode 100644 index 000000000000..b109e59e8754 --- /dev/null +++ b/azure-batch/azure/batch/models/job_get_task_counts_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobGetTaskCountsOptions(Model): + """Additional parameters for get_task_counts operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(JobGetTaskCountsOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/job_list_from_job_schedule_options.py b/azure-batch/azure/batch/models/job_list_from_job_schedule_options.py index 0c1ba3f21b35..7f95aaf745cc 100644 --- a/azure-batch/azure/batch/models/job_list_from_job_schedule_options.py +++ b/azure-batch/azure/batch/models/job_list_from_job_schedule_options.py @@ -42,13 +42,24 @@ class JobListFromJobScheduleOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, select=None, expand=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(JobListFromJobScheduleOptions, self).__init__() - self.filter = filter - self.select = select - self.expand = expand - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobListFromJobScheduleOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/job_list_from_job_schedule_options_py3.py b/azure-batch/azure/batch/models/job_list_from_job_schedule_options_py3.py new file mode 100644 index 000000000000..eb60647820e1 --- /dev/null +++ b/azure-batch/azure/batch/models/job_list_from_job_schedule_options_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobListFromJobScheduleOptions(Model): + """Additional parameters for list_from_job_schedule operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule. + :type filter: str + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 jobs can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, select: str=None, expand: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(JobListFromJobScheduleOptions, self).__init__(**kwargs) + self.filter = filter + self.select = select + self.expand = expand + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/job_list_options.py b/azure-batch/azure/batch/models/job_list_options.py index 0f6fa7ba937d..b9d34191e43c 100644 --- a/azure-batch/azure/batch/models/job_list_options.py +++ b/azure-batch/azure/batch/models/job_list_options.py @@ -42,13 +42,24 @@ class JobListOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, select=None, expand=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(JobListOptions, self).__init__() - self.filter = filter - self.select = select - self.expand = expand - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobListOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/job_list_options_py3.py b/azure-batch/azure/batch/models/job_list_options_py3.py new file mode 100644 index 000000000000..f7787cd7e4bd --- /dev/null +++ b/azure-batch/azure/batch/models/job_list_options_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobListOptions(Model): + """Additional parameters for list operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-jobs. + :type filter: str + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 jobs can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, select: str=None, expand: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(JobListOptions, self).__init__(**kwargs) + self.filter = filter + self.select = select + self.expand = expand + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/job_list_preparation_and_release_task_status_options.py b/azure-batch/azure/batch/models/job_list_preparation_and_release_task_status_options.py index 83f6e0cc92f3..443ebba59203 100644 --- a/azure-batch/azure/batch/models/job_list_preparation_and_release_task_status_options.py +++ b/azure-batch/azure/batch/models/job_list_preparation_and_release_task_status_options.py @@ -41,12 +41,22 @@ class JobListPreparationAndReleaseTaskStatusOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, select=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(JobListPreparationAndReleaseTaskStatusOptions, self).__init__() - self.filter = filter - self.select = select - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobListPreparationAndReleaseTaskStatusOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.select = kwargs.get('select', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/job_list_preparation_and_release_task_status_options_py3.py b/azure-batch/azure/batch/models/job_list_preparation_and_release_task_status_options_py3.py new file mode 100644 index 000000000000..a735362968b8 --- /dev/null +++ b/azure-batch/azure/batch/models/job_list_preparation_and_release_task_status_options_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobListPreparationAndReleaseTaskStatusOptions(Model): + """Additional parameters for list_preparation_and_release_task_status + operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status. + :type filter: str + :param select: An OData $select clause. + :type select: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 tasks can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, select: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(JobListPreparationAndReleaseTaskStatusOptions, self).__init__(**kwargs) + self.filter = filter + self.select = select + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/job_manager_task.py b/azure-batch/azure/batch/models/job_manager_task.py index 6315b17e8785..38d54ac0ee91 100644 --- a/azure-batch/azure/batch/models/job_manager_task.py +++ b/azure-batch/azure/batch/models/job_manager_task.py @@ -39,23 +39,25 @@ class JobManagerTask(Model): data. The best practice for long running tasks is to use some form of checkpointing. - :param id: A string that uniquely identifies the Job Manager task within - the job. The ID can contain any combination of alphanumeric characters - including hyphens and underscores and cannot contain more than 64 - characters. + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the Job Manager + task within the job. The ID can contain any combination of alphanumeric + characters including hyphens and underscores and cannot contain more than + 64 characters. :type id: str :param display_name: The display name of the Job Manager task. It need not be unique and can contain any Unicode characters up to a maximum length of 1024. :type display_name: str - :param command_line: The command line of the Job Manager task. The command - line does not run under a shell, and therefore cannot take advantage of - shell features such as environment variable expansion. If you want to take - advantage of such features, you should invoke the shell in the command - line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c - MyCommand" in Linux. If the command line refers to file paths, it should - use a relative path (relative to the task working directory), or use the - Batch provided environment variable + :param command_line: Required. The command line of the Job Manager task. + The command line does not run under a shell, and therefore cannot take + advantage of shell features such as environment variable expansion. If you + want to take advantage of such features, you should invoke the shell in + the command line, for example using "cmd /c MyCommand" in Windows or + "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, + it should use a relative path (relative to the task working directory), or + use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). :type command_line: str :param container_settings: The settings for the container under which the @@ -70,7 +72,12 @@ class JobManagerTask(Model): :type container_settings: ~azure.batch.models.TaskContainerSettings :param resource_files: A list of files that the Batch service will download to the compute node before running the command line. Files listed - under this element are located in the task's working directory. + under this element are located in the task's working directory. There is a + maximum size for the list of resource files. When the max size is + exceeded, the request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. :type resource_files: list[~azure.batch.models.ResourceFile] :param output_files: A list of files that the Batch service will upload from the compute node after running the command line. For multi-instance @@ -157,19 +164,19 @@ class JobManagerTask(Model): 'allow_low_priority_node': {'key': 'allowLowPriorityNode', 'type': 'bool'}, } - def __init__(self, id, command_line, display_name=None, container_settings=None, resource_files=None, output_files=None, environment_settings=None, constraints=None, kill_job_on_completion=None, user_identity=None, run_exclusive=None, application_package_references=None, authentication_token_settings=None, allow_low_priority_node=None): - super(JobManagerTask, self).__init__() - self.id = id - self.display_name = display_name - self.command_line = command_line - self.container_settings = container_settings - self.resource_files = resource_files - self.output_files = output_files - self.environment_settings = environment_settings - self.constraints = constraints - self.kill_job_on_completion = kill_job_on_completion - self.user_identity = user_identity - self.run_exclusive = run_exclusive - self.application_package_references = application_package_references - self.authentication_token_settings = authentication_token_settings - self.allow_low_priority_node = allow_low_priority_node + def __init__(self, **kwargs): + super(JobManagerTask, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.command_line = kwargs.get('command_line', None) + self.container_settings = kwargs.get('container_settings', None) + self.resource_files = kwargs.get('resource_files', None) + self.output_files = kwargs.get('output_files', None) + self.environment_settings = kwargs.get('environment_settings', None) + self.constraints = kwargs.get('constraints', None) + self.kill_job_on_completion = kwargs.get('kill_job_on_completion', None) + self.user_identity = kwargs.get('user_identity', None) + self.run_exclusive = kwargs.get('run_exclusive', None) + self.application_package_references = kwargs.get('application_package_references', None) + self.authentication_token_settings = kwargs.get('authentication_token_settings', None) + self.allow_low_priority_node = kwargs.get('allow_low_priority_node', None) diff --git a/azure-batch/azure/batch/models/job_manager_task_py3.py b/azure-batch/azure/batch/models/job_manager_task_py3.py new file mode 100644 index 000000000000..668b182b3b55 --- /dev/null +++ b/azure-batch/azure/batch/models/job_manager_task_py3.py @@ -0,0 +1,182 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobManagerTask(Model): + """Specifies details of a Job Manager task. + + The Job Manager task is automatically started when the job is created. The + Batch service tries to schedule the Job Manager task before any other tasks + in the job. When shrinking a pool, the Batch service tries to preserve + compute nodes where Job Manager tasks are running for as long as possible + (that is, nodes running 'normal' tasks are removed before nodes running Job + Manager tasks). When a Job Manager task fails and needs to be restarted, + the system tries to schedule it at the highest priority. If there are no + idle nodes available, the system may terminate one of the running tasks in + the pool and return it to the queue in order to make room for the Job + Manager task to restart. Note that a Job Manager task in one job does not + have priority over tasks in other jobs. Across jobs, only job level + priorities are observed. For example, if a Job Manager in a priority 0 job + needs to be restarted, it will not displace tasks of a priority 1 job. + Batch will retry tasks when a recovery operation is triggered on a compute + node. Examples of recovery operations include (but are not limited to) when + an unhealthy compute node is rebooted or a compute node disappeared due to + host failure. Retries due to recovery operations are independent of and are + not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is + 0, an internal retry due to a recovery operation may occur. Because of + this, all tasks should be idempotent. This means tasks need to tolerate + being interrupted and restarted without causing any corruption or duplicate + data. The best practice for long running tasks is to use some form of + checkpointing. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the Job Manager + task within the job. The ID can contain any combination of alphanumeric + characters including hyphens and underscores and cannot contain more than + 64 characters. + :type id: str + :param display_name: The display name of the Job Manager task. It need not + be unique and can contain any Unicode characters up to a maximum length of + 1024. + :type display_name: str + :param command_line: Required. The command line of the Job Manager task. + The command line does not run under a shell, and therefore cannot take + advantage of shell features such as environment variable expansion. If you + want to take advantage of such features, you should invoke the shell in + the command line, for example using "cmd /c MyCommand" in Windows or + "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, + it should use a relative path (relative to the task working directory), or + use the Batch provided environment variable + (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). + :type command_line: str + :param container_settings: The settings for the container under which the + Job Manager task runs. If the pool that will run this task has + containerConfiguration set, this must be set as well. If the pool that + will run this task doesn't have containerConfiguration set, this must not + be set. When this is specified, all directories recursively below the + AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) + are mapped into the container, all task environment variables are mapped + into the container, and the task command line is executed in the + container. + :type container_settings: ~azure.batch.models.TaskContainerSettings + :param resource_files: A list of files that the Batch service will + download to the compute node before running the command line. Files listed + under this element are located in the task's working directory. There is a + maximum size for the list of resource files. When the max size is + exceeded, the request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. + :type resource_files: list[~azure.batch.models.ResourceFile] + :param output_files: A list of files that the Batch service will upload + from the compute node after running the command line. For multi-instance + tasks, the files will only be uploaded from the compute node on which the + primary task is executed. + :type output_files: list[~azure.batch.models.OutputFile] + :param environment_settings: A list of environment variable settings for + the Job Manager task. + :type environment_settings: list[~azure.batch.models.EnvironmentSetting] + :param constraints: Constraints that apply to the Job Manager task. + :type constraints: ~azure.batch.models.TaskConstraints + :param kill_job_on_completion: Whether completion of the Job Manager task + signifies completion of the entire job. If true, when the Job Manager task + completes, the Batch service marks the job as complete. If any tasks are + still running at this time (other than Job Release), those tasks are + terminated. If false, the completion of the Job Manager task does not + affect the job status. In this case, you should either use the + onAllTasksComplete attribute to terminate the job, or have a client or + user terminate the job explicitly. An example of this is if the Job + Manager creates a set of tasks but then takes no further role in their + execution. The default value is true. If you are using the + onAllTasksComplete and onTaskFailure attributes to control job lifetime, + and using the Job Manager task only to create the tasks for the job (not + to monitor progress), then it is important to set killJobOnCompletion to + false. + :type kill_job_on_completion: bool + :param user_identity: The user identity under which the Job Manager task + runs. If omitted, the task runs as a non-administrative user unique to the + task. + :type user_identity: ~azure.batch.models.UserIdentity + :param run_exclusive: Whether the Job Manager task requires exclusive use + of the compute node where it runs. If true, no other tasks will run on the + same compute node for as long as the Job Manager is running. If false, + other tasks can run simultaneously with the Job Manager on a compute node. + The Job Manager task counts normally against the node's concurrent task + limit, so this is only relevant if the node allows multiple concurrent + tasks. The default value is true. + :type run_exclusive: bool + :param application_package_references: A list of application packages that + the Batch service will deploy to the compute node before running the + command line. Application packages are downloaded and deployed to a shared + directory, not the task working directory. Therefore, if a referenced + package is already on the compute node, and is up to date, then it is not + re-downloaded; the existing copy on the compute node is used. If a + referenced application package cannot be installed, for example because + the package has been deleted or because download failed, the task fails. + :type application_package_references: + list[~azure.batch.models.ApplicationPackageReference] + :param authentication_token_settings: The settings for an authentication + token that the task can use to perform Batch service operations. If this + property is set, the Batch service provides the task with an + authentication token which can be used to authenticate Batch service + operations without requiring an account access key. The token is provided + via the AZ_BATCH_AUTHENTICATION_TOKEN environment variable. The operations + that the task can carry out using the token depend on the settings. For + example, a task can request job permissions in order to add other tasks to + the job, or check the status of the job or of other tasks under the job. + :type authentication_token_settings: + ~azure.batch.models.AuthenticationTokenSettings + :param allow_low_priority_node: Whether the Job Manager task may run on a + low-priority compute node. The default value is true. + :type allow_low_priority_node: bool + """ + + _validation = { + 'id': {'required': True}, + 'command_line': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'command_line': {'key': 'commandLine', 'type': 'str'}, + 'container_settings': {'key': 'containerSettings', 'type': 'TaskContainerSettings'}, + 'resource_files': {'key': 'resourceFiles', 'type': '[ResourceFile]'}, + 'output_files': {'key': 'outputFiles', 'type': '[OutputFile]'}, + 'environment_settings': {'key': 'environmentSettings', 'type': '[EnvironmentSetting]'}, + 'constraints': {'key': 'constraints', 'type': 'TaskConstraints'}, + 'kill_job_on_completion': {'key': 'killJobOnCompletion', 'type': 'bool'}, + 'user_identity': {'key': 'userIdentity', 'type': 'UserIdentity'}, + 'run_exclusive': {'key': 'runExclusive', 'type': 'bool'}, + 'application_package_references': {'key': 'applicationPackageReferences', 'type': '[ApplicationPackageReference]'}, + 'authentication_token_settings': {'key': 'authenticationTokenSettings', 'type': 'AuthenticationTokenSettings'}, + 'allow_low_priority_node': {'key': 'allowLowPriorityNode', 'type': 'bool'}, + } + + def __init__(self, *, id: str, command_line: str, display_name: str=None, container_settings=None, resource_files=None, output_files=None, environment_settings=None, constraints=None, kill_job_on_completion: bool=None, user_identity=None, run_exclusive: bool=None, application_package_references=None, authentication_token_settings=None, allow_low_priority_node: bool=None, **kwargs) -> None: + super(JobManagerTask, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.command_line = command_line + self.container_settings = container_settings + self.resource_files = resource_files + self.output_files = output_files + self.environment_settings = environment_settings + self.constraints = constraints + self.kill_job_on_completion = kill_job_on_completion + self.user_identity = user_identity + self.run_exclusive = run_exclusive + self.application_package_references = application_package_references + self.authentication_token_settings = authentication_token_settings + self.allow_low_priority_node = allow_low_priority_node diff --git a/azure-batch/azure/batch/models/job_patch_options.py b/azure-batch/azure/batch/models/job_patch_options.py index d51bac7a0df4..9fdbb4f3aa4e 100644 --- a/azure-batch/azure/batch/models/job_patch_options.py +++ b/azure-batch/azure/batch/models/job_patch_options.py @@ -50,13 +50,24 @@ class JobPatchOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobPatchOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobPatchOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_patch_options_py3.py b/azure-batch/azure/batch/models/job_patch_options_py3.py new file mode 100644 index 000000000000..586e381d316e --- /dev/null +++ b/azure-batch/azure/batch/models/job_patch_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobPatchOptions(Model): + """Additional parameters for patch operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobPatchOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_patch_parameter.py b/azure-batch/azure/batch/models/job_patch_parameter.py index 90c7a87813e8..2088a145c6e7 100644 --- a/azure-batch/azure/batch/models/job_patch_parameter.py +++ b/azure-batch/azure/batch/models/job_patch_parameter.py @@ -52,10 +52,10 @@ class JobPatchParameter(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, priority=None, on_all_tasks_complete=None, constraints=None, pool_info=None, metadata=None): - super(JobPatchParameter, self).__init__() - self.priority = priority - self.on_all_tasks_complete = on_all_tasks_complete - self.constraints = constraints - self.pool_info = pool_info - self.metadata = metadata + def __init__(self, **kwargs): + super(JobPatchParameter, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.on_all_tasks_complete = kwargs.get('on_all_tasks_complete', None) + self.constraints = kwargs.get('constraints', None) + self.pool_info = kwargs.get('pool_info', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/job_patch_parameter_py3.py b/azure-batch/azure/batch/models/job_patch_parameter_py3.py new file mode 100644 index 000000000000..af6da2aaa60b --- /dev/null +++ b/azure-batch/azure/batch/models/job_patch_parameter_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobPatchParameter(Model): + """The set of changes to be made to a job. + + :param priority: The priority of the job. Priority values can range from + -1000 to 1000, with -1000 being the lowest priority and 1000 being the + highest priority. If omitted, the priority of the job is left unchanged. + :type priority: int + :param on_all_tasks_complete: The action the Batch service should take + when all tasks in the job are in the completed state. If omitted, the + completion behavior is left unchanged. You may not change the value from + terminatejob to noaction - that is, once you have engaged automatic job + termination, you cannot turn it off again. If you try to do this, the + request fails with an 'invalid property value' error response; if you are + calling the REST API directly, the HTTP status code is 400 (Bad Request). + Possible values include: 'noAction', 'terminateJob' + :type on_all_tasks_complete: str or ~azure.batch.models.OnAllTasksComplete + :param constraints: The execution constraints for the job. If omitted, the + existing execution constraints are left unchanged. + :type constraints: ~azure.batch.models.JobConstraints + :param pool_info: The pool on which the Batch service runs the job's + tasks. You may change the pool for a job only when the job is disabled. + The Patch Job call will fail if you include the poolInfo element and the + job is not disabled. If you specify an autoPoolSpecification specification + in the poolInfo, only the keepAlive property can be updated, and then only + if the auto pool has a poolLifetimeOption of job. If omitted, the job + continues to run on its current pool. + :type pool_info: ~azure.batch.models.PoolInformation + :param metadata: A list of name-value pairs associated with the job as + metadata. If omitted, the existing job metadata is left unchanged. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _attribute_map = { + 'priority': {'key': 'priority', 'type': 'int'}, + 'on_all_tasks_complete': {'key': 'onAllTasksComplete', 'type': 'OnAllTasksComplete'}, + 'constraints': {'key': 'constraints', 'type': 'JobConstraints'}, + 'pool_info': {'key': 'poolInfo', 'type': 'PoolInformation'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, priority: int=None, on_all_tasks_complete=None, constraints=None, pool_info=None, metadata=None, **kwargs) -> None: + super(JobPatchParameter, self).__init__(**kwargs) + self.priority = priority + self.on_all_tasks_complete = on_all_tasks_complete + self.constraints = constraints + self.pool_info = pool_info + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/job_preparation_and_release_task_execution_information.py b/azure-batch/azure/batch/models/job_preparation_and_release_task_execution_information.py index 10d214c33812..443564605242 100644 --- a/azure-batch/azure/batch/models/job_preparation_and_release_task_execution_information.py +++ b/azure-batch/azure/batch/models/job_preparation_and_release_task_execution_information.py @@ -41,10 +41,10 @@ class JobPreparationAndReleaseTaskExecutionInformation(Model): 'job_release_task_execution_info': {'key': 'jobReleaseTaskExecutionInfo', 'type': 'JobReleaseTaskExecutionInformation'}, } - def __init__(self, pool_id=None, node_id=None, node_url=None, job_preparation_task_execution_info=None, job_release_task_execution_info=None): - super(JobPreparationAndReleaseTaskExecutionInformation, self).__init__() - self.pool_id = pool_id - self.node_id = node_id - self.node_url = node_url - self.job_preparation_task_execution_info = job_preparation_task_execution_info - self.job_release_task_execution_info = job_release_task_execution_info + def __init__(self, **kwargs): + super(JobPreparationAndReleaseTaskExecutionInformation, self).__init__(**kwargs) + self.pool_id = kwargs.get('pool_id', None) + self.node_id = kwargs.get('node_id', None) + self.node_url = kwargs.get('node_url', None) + self.job_preparation_task_execution_info = kwargs.get('job_preparation_task_execution_info', None) + self.job_release_task_execution_info = kwargs.get('job_release_task_execution_info', None) diff --git a/azure-batch/azure/batch/models/job_preparation_and_release_task_execution_information_py3.py b/azure-batch/azure/batch/models/job_preparation_and_release_task_execution_information_py3.py new file mode 100644 index 000000000000..3552070200aa --- /dev/null +++ b/azure-batch/azure/batch/models/job_preparation_and_release_task_execution_information_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobPreparationAndReleaseTaskExecutionInformation(Model): + """The status of the Job Preparation and Job Release tasks on a compute node. + + :param pool_id: The ID of the pool containing the compute node to which + this entry refers. + :type pool_id: str + :param node_id: The ID of the compute node to which this entry refers. + :type node_id: str + :param node_url: The URL of the compute node to which this entry refers. + :type node_url: str + :param job_preparation_task_execution_info: Information about the + execution status of the Job Preparation task on this compute node. + :type job_preparation_task_execution_info: + ~azure.batch.models.JobPreparationTaskExecutionInformation + :param job_release_task_execution_info: Information about the execution + status of the Job Release task on this compute node. This property is set + only if the Job Release task has run on the node. + :type job_release_task_execution_info: + ~azure.batch.models.JobReleaseTaskExecutionInformation + """ + + _attribute_map = { + 'pool_id': {'key': 'poolId', 'type': 'str'}, + 'node_id': {'key': 'nodeId', 'type': 'str'}, + 'node_url': {'key': 'nodeUrl', 'type': 'str'}, + 'job_preparation_task_execution_info': {'key': 'jobPreparationTaskExecutionInfo', 'type': 'JobPreparationTaskExecutionInformation'}, + 'job_release_task_execution_info': {'key': 'jobReleaseTaskExecutionInfo', 'type': 'JobReleaseTaskExecutionInformation'}, + } + + def __init__(self, *, pool_id: str=None, node_id: str=None, node_url: str=None, job_preparation_task_execution_info=None, job_release_task_execution_info=None, **kwargs) -> None: + super(JobPreparationAndReleaseTaskExecutionInformation, self).__init__(**kwargs) + self.pool_id = pool_id + self.node_id = node_id + self.node_url = node_url + self.job_preparation_task_execution_info = job_preparation_task_execution_info + self.job_release_task_execution_info = job_release_task_execution_info diff --git a/azure-batch/azure/batch/models/job_preparation_task.py b/azure-batch/azure/batch/models/job_preparation_task.py index 751ebbcabaf8..1987aed378bc 100644 --- a/azure-batch/azure/batch/models/job_preparation_task.py +++ b/azure-batch/azure/batch/models/job_preparation_task.py @@ -44,6 +44,8 @@ class JobPreparationTask(Model): data. The best practice for long running tasks is to use some form of checkpointing. + All required parameters must be populated in order to send to Azure. + :param id: A string that uniquely identifies the Job Preparation task within the job. The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than @@ -54,14 +56,14 @@ class JobPreparationTask(Model): TaskIdSameAsJobPreparationTask; if you are calling the REST API directly, the HTTP status code is 409 (Conflict). :type id: str - :param command_line: The command line of the Job Preparation task. The - command line does not run under a shell, and therefore cannot take - advantage of shell features such as environment variable expansion. If you - want to take advantage of such features, you should invoke the shell in - the command line, for example using "cmd /c MyCommand" in Windows or - "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, - it should use a relative path (relative to the task working directory), or - use the Batch provided environment variable + :param command_line: Required. The command line of the Job Preparation + task. The command line does not run under a shell, and therefore cannot + take advantage of shell features such as environment variable expansion. + If you want to take advantage of such features, you should invoke the + shell in the command line, for example using "cmd /c MyCommand" in Windows + or "/bin/sh -c MyCommand" in Linux. If the command line refers to file + paths, it should use a relative path (relative to the task working + directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). :type command_line: str :param container_settings: The settings for the container under which the @@ -73,7 +75,12 @@ class JobPreparationTask(Model): :type container_settings: ~azure.batch.models.TaskContainerSettings :param resource_files: A list of files that the Batch service will download to the compute node before running the command line. Files listed - under this element are located in the task's working directory. + under this element are located in the task's working directory. There is + a maximum size for the list of resource files. When the max size is + exceeded, the request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. :type resource_files: list[~azure.batch.models.ResourceFile] :param environment_settings: A list of environment variable settings for the Job Preparation task. @@ -126,14 +133,14 @@ class JobPreparationTask(Model): 'rerun_on_node_reboot_after_success': {'key': 'rerunOnNodeRebootAfterSuccess', 'type': 'bool'}, } - def __init__(self, command_line, id=None, container_settings=None, resource_files=None, environment_settings=None, constraints=None, wait_for_success=None, user_identity=None, rerun_on_node_reboot_after_success=None): - super(JobPreparationTask, self).__init__() - self.id = id - self.command_line = command_line - self.container_settings = container_settings - self.resource_files = resource_files - self.environment_settings = environment_settings - self.constraints = constraints - self.wait_for_success = wait_for_success - self.user_identity = user_identity - self.rerun_on_node_reboot_after_success = rerun_on_node_reboot_after_success + def __init__(self, **kwargs): + super(JobPreparationTask, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.command_line = kwargs.get('command_line', None) + self.container_settings = kwargs.get('container_settings', None) + self.resource_files = kwargs.get('resource_files', None) + self.environment_settings = kwargs.get('environment_settings', None) + self.constraints = kwargs.get('constraints', None) + self.wait_for_success = kwargs.get('wait_for_success', None) + self.user_identity = kwargs.get('user_identity', None) + self.rerun_on_node_reboot_after_success = kwargs.get('rerun_on_node_reboot_after_success', None) diff --git a/azure-batch/azure/batch/models/job_preparation_task_execution_information.py b/azure-batch/azure/batch/models/job_preparation_task_execution_information.py index 0cce4605e82d..f51b95a1301b 100644 --- a/azure-batch/azure/batch/models/job_preparation_task_execution_information.py +++ b/azure-batch/azure/batch/models/job_preparation_task_execution_information.py @@ -16,15 +16,17 @@ class JobPreparationTaskExecutionInformation(Model): """Contains information about the execution of a Job Preparation task on a compute node. - :param start_time: The time at which the task started running. If the task - has been restarted or retried, this is the most recent time at which the - task started running. + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The time at which the task started running. + If the task has been restarted or retried, this is the most recent time at + which the task started running. :type start_time: datetime :param end_time: The time at which the Job Preparation task completed. This property is set only if the task is in the Completed state. :type end_time: datetime - :param state: The current state of the Job Preparation task on the compute - node. Possible values include: 'running', 'completed' + :param state: Required. The current state of the Job Preparation task on + the compute node. Possible values include: 'running', 'completed' :type state: str or ~azure.batch.models.JobPreparationTaskState :param task_root_directory: The root directory of the Job Preparation task on the compute node. You can use this path to retrieve files created by @@ -51,14 +53,14 @@ class JobPreparationTaskExecutionInformation(Model): property is set only if the task is in the completed state and encountered a failure. :type failure_info: ~azure.batch.models.TaskFailureInformation - :param retry_count: The number of times the task has been retried by the - Batch service. Task application failures (non-zero exit code) are retried, - pre-processing errors (the task could not be run) and file upload errors - are not retried. The Batch service will retry the task up to the limit - specified by the constraints. Task application failures (non-zero exit + :param retry_count: Required. The number of times the task has been + retried by the Batch service. Task application failures (non-zero exit code) are retried, pre-processing errors (the task could not be run) and file upload errors are not retried. The Batch service will retry the task - up to the limit specified by the constraints. + up to the limit specified by the constraints. Task application failures + (non-zero exit code) are retried, pre-processing errors (the task could + not be run) and file upload errors are not retried. The Batch service will + retry the task up to the limit specified by the constraints. :type retry_count: int :param last_retry_time: The most recent time at which a retry of the Job Preparation task started running. This property is set only if the task @@ -94,16 +96,16 @@ class JobPreparationTaskExecutionInformation(Model): 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, } - def __init__(self, start_time, state, retry_count, end_time=None, task_root_directory=None, task_root_directory_url=None, exit_code=None, container_info=None, failure_info=None, last_retry_time=None, result=None): - super(JobPreparationTaskExecutionInformation, self).__init__() - self.start_time = start_time - self.end_time = end_time - self.state = state - self.task_root_directory = task_root_directory - self.task_root_directory_url = task_root_directory_url - self.exit_code = exit_code - self.container_info = container_info - self.failure_info = failure_info - self.retry_count = retry_count - self.last_retry_time = last_retry_time - self.result = result + def __init__(self, **kwargs): + super(JobPreparationTaskExecutionInformation, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.state = kwargs.get('state', None) + self.task_root_directory = kwargs.get('task_root_directory', None) + self.task_root_directory_url = kwargs.get('task_root_directory_url', None) + self.exit_code = kwargs.get('exit_code', None) + self.container_info = kwargs.get('container_info', None) + self.failure_info = kwargs.get('failure_info', None) + self.retry_count = kwargs.get('retry_count', None) + self.last_retry_time = kwargs.get('last_retry_time', None) + self.result = kwargs.get('result', None) diff --git a/azure-batch/azure/batch/models/job_preparation_task_execution_information_py3.py b/azure-batch/azure/batch/models/job_preparation_task_execution_information_py3.py new file mode 100644 index 000000000000..36bd33f7068b --- /dev/null +++ b/azure-batch/azure/batch/models/job_preparation_task_execution_information_py3.py @@ -0,0 +1,111 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobPreparationTaskExecutionInformation(Model): + """Contains information about the execution of a Job Preparation task on a + compute node. + + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The time at which the task started running. + If the task has been restarted or retried, this is the most recent time at + which the task started running. + :type start_time: datetime + :param end_time: The time at which the Job Preparation task completed. + This property is set only if the task is in the Completed state. + :type end_time: datetime + :param state: Required. The current state of the Job Preparation task on + the compute node. Possible values include: 'running', 'completed' + :type state: str or ~azure.batch.models.JobPreparationTaskState + :param task_root_directory: The root directory of the Job Preparation task + on the compute node. You can use this path to retrieve files created by + the task, such as log files. + :type task_root_directory: str + :param task_root_directory_url: The URL to the root directory of the Job + Preparation task on the compute node. + :type task_root_directory_url: str + :param exit_code: The exit code of the program specified on the task + command line. This parameter is returned only if the task is in the + completed state. The exit code for a process reflects the specific + convention implemented by the application developer for that process. If + you use the exit code value to make decisions in your code, be sure that + you know the exit code convention used by the application process. Note + that the exit code may also be generated by the compute node operating + system, such as when a process is forcibly terminated. + :type exit_code: int + :param container_info: Information about the container under which the + task is executing. This property is set only if the task runs in a + container context. + :type container_info: + ~azure.batch.models.TaskContainerExecutionInformation + :param failure_info: Information describing the task failure, if any. This + property is set only if the task is in the completed state and encountered + a failure. + :type failure_info: ~azure.batch.models.TaskFailureInformation + :param retry_count: Required. The number of times the task has been + retried by the Batch service. Task application failures (non-zero exit + code) are retried, pre-processing errors (the task could not be run) and + file upload errors are not retried. The Batch service will retry the task + up to the limit specified by the constraints. Task application failures + (non-zero exit code) are retried, pre-processing errors (the task could + not be run) and file upload errors are not retried. The Batch service will + retry the task up to the limit specified by the constraints. + :type retry_count: int + :param last_retry_time: The most recent time at which a retry of the Job + Preparation task started running. This property is set only if the task + was retried (i.e. retryCount is nonzero). If present, this is typically + the same as startTime, but may be different if the task has been restarted + for reasons other than retry; for example, if the compute node was + rebooted during a retry, then the startTime is updated but the + lastRetryTime is not. + :type last_retry_time: datetime + :param result: The result of the task execution. If the value is 'failed', + then the details of the failure can be found in the failureInfo property. + Possible values include: 'success', 'failure' + :type result: str or ~azure.batch.models.TaskExecutionResult + """ + + _validation = { + 'start_time': {'required': True}, + 'state': {'required': True}, + 'retry_count': {'required': True}, + } + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'JobPreparationTaskState'}, + 'task_root_directory': {'key': 'taskRootDirectory', 'type': 'str'}, + 'task_root_directory_url': {'key': 'taskRootDirectoryUrl', 'type': 'str'}, + 'exit_code': {'key': 'exitCode', 'type': 'int'}, + 'container_info': {'key': 'containerInfo', 'type': 'TaskContainerExecutionInformation'}, + 'failure_info': {'key': 'failureInfo', 'type': 'TaskFailureInformation'}, + 'retry_count': {'key': 'retryCount', 'type': 'int'}, + 'last_retry_time': {'key': 'lastRetryTime', 'type': 'iso-8601'}, + 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, + } + + def __init__(self, *, start_time, state, retry_count: int, end_time=None, task_root_directory: str=None, task_root_directory_url: str=None, exit_code: int=None, container_info=None, failure_info=None, last_retry_time=None, result=None, **kwargs) -> None: + super(JobPreparationTaskExecutionInformation, self).__init__(**kwargs) + self.start_time = start_time + self.end_time = end_time + self.state = state + self.task_root_directory = task_root_directory + self.task_root_directory_url = task_root_directory_url + self.exit_code = exit_code + self.container_info = container_info + self.failure_info = failure_info + self.retry_count = retry_count + self.last_retry_time = last_retry_time + self.result = result diff --git a/azure-batch/azure/batch/models/job_preparation_task_py3.py b/azure-batch/azure/batch/models/job_preparation_task_py3.py new file mode 100644 index 000000000000..d1bb21ed384c --- /dev/null +++ b/azure-batch/azure/batch/models/job_preparation_task_py3.py @@ -0,0 +1,146 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobPreparationTask(Model): + """A Job Preparation task to run before any tasks of the job on any given + compute node. + + You can use Job Preparation to prepare a compute node to run tasks for the + job. Activities commonly performed in Job Preparation include: Downloading + common resource files used by all the tasks in the job. The Job Preparation + task can download these common resource files to the shared location on the + compute node. (AZ_BATCH_NODE_ROOT_DIR\shared), or starting a local service + on the compute node so that all tasks of that job can communicate with it. + If the Job Preparation task fails (that is, exhausts its retry count before + exiting with exit code 0), Batch will not run tasks of this job on the + compute node. The node remains ineligible to run tasks of this job until it + is reimaged. The node remains active and can be used for other jobs. The + Job Preparation task can run multiple times on the same compute node. + Therefore, you should write the Job Preparation task to handle + re-execution. If the compute node is rebooted, the Job Preparation task is + run again on the node before scheduling any other task of the job, if + rerunOnNodeRebootAfterSuccess is true or if the Job Preparation task did + not previously complete. If the compute node is reimaged, the Job + Preparation task is run again before scheduling any task of the job. Batch + will retry tasks when a recovery operation is triggered on a compute node. + Examples of recovery operations include (but are not limited to) when an + unhealthy compute node is rebooted or a compute node disappeared due to + host failure. Retries due to recovery operations are independent of and are + not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is + 0, an internal retry due to a recovery operation may occur. Because of + this, all tasks should be idempotent. This means tasks need to tolerate + being interrupted and restarted without causing any corruption or duplicate + data. The best practice for long running tasks is to use some form of + checkpointing. + + All required parameters must be populated in order to send to Azure. + + :param id: A string that uniquely identifies the Job Preparation task + within the job. The ID can contain any combination of alphanumeric + characters including hyphens and underscores and cannot contain more than + 64 characters. If you do not specify this property, the Batch service + assigns a default value of 'jobpreparation'. No other task in the job can + have the same ID as the Job Preparation task. If you try to submit a task + with the same id, the Batch service rejects the request with error code + TaskIdSameAsJobPreparationTask; if you are calling the REST API directly, + the HTTP status code is 409 (Conflict). + :type id: str + :param command_line: Required. The command line of the Job Preparation + task. The command line does not run under a shell, and therefore cannot + take advantage of shell features such as environment variable expansion. + If you want to take advantage of such features, you should invoke the + shell in the command line, for example using "cmd /c MyCommand" in Windows + or "/bin/sh -c MyCommand" in Linux. If the command line refers to file + paths, it should use a relative path (relative to the task working + directory), or use the Batch provided environment variable + (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). + :type command_line: str + :param container_settings: The settings for the container under which the + Job Preparation task runs. When this is specified, all directories + recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch + directories on the node) are mapped into the container, all task + environment variables are mapped into the container, and the task command + line is executed in the container. + :type container_settings: ~azure.batch.models.TaskContainerSettings + :param resource_files: A list of files that the Batch service will + download to the compute node before running the command line. Files listed + under this element are located in the task's working directory. There is + a maximum size for the list of resource files. When the max size is + exceeded, the request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. + :type resource_files: list[~azure.batch.models.ResourceFile] + :param environment_settings: A list of environment variable settings for + the Job Preparation task. + :type environment_settings: list[~azure.batch.models.EnvironmentSetting] + :param constraints: Constraints that apply to the Job Preparation task. + :type constraints: ~azure.batch.models.TaskConstraints + :param wait_for_success: Whether the Batch service should wait for the Job + Preparation task to complete successfully before scheduling any other + tasks of the job on the compute node. A Job Preparation task has completed + successfully if it exits with exit code 0. If true and the Job Preparation + task fails on a compute node, the Batch service retries the Job + Preparation task up to its maximum retry count (as specified in the + constraints element). If the task has still not completed successfully + after all retries, then the Batch service will not schedule tasks of the + job to the compute node. The compute node remains active and eligible to + run tasks of other jobs. If false, the Batch service will not wait for the + Job Preparation task to complete. In this case, other tasks of the job can + start executing on the compute node while the Job Preparation task is + still running; and even if the Job Preparation task fails, new tasks will + continue to be scheduled on the node. The default value is true. + :type wait_for_success: bool + :param user_identity: The user identity under which the Job Preparation + task runs. If omitted, the task runs as a non-administrative user unique + to the task on Windows nodes, or a a non-administrative user unique to the + pool on Linux nodes. + :type user_identity: ~azure.batch.models.UserIdentity + :param rerun_on_node_reboot_after_success: Whether the Batch service + should rerun the Job Preparation task after a compute node reboots. The + Job Preparation task is always rerun if a compute node is reimaged, or if + the Job Preparation task did not complete (e.g. because the reboot + occurred while the task was running). Therefore, you should always write a + Job Preparation task to be idempotent and to behave correctly if run + multiple times. The default value is true. + :type rerun_on_node_reboot_after_success: bool + """ + + _validation = { + 'command_line': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'command_line': {'key': 'commandLine', 'type': 'str'}, + 'container_settings': {'key': 'containerSettings', 'type': 'TaskContainerSettings'}, + 'resource_files': {'key': 'resourceFiles', 'type': '[ResourceFile]'}, + 'environment_settings': {'key': 'environmentSettings', 'type': '[EnvironmentSetting]'}, + 'constraints': {'key': 'constraints', 'type': 'TaskConstraints'}, + 'wait_for_success': {'key': 'waitForSuccess', 'type': 'bool'}, + 'user_identity': {'key': 'userIdentity', 'type': 'UserIdentity'}, + 'rerun_on_node_reboot_after_success': {'key': 'rerunOnNodeRebootAfterSuccess', 'type': 'bool'}, + } + + def __init__(self, *, command_line: str, id: str=None, container_settings=None, resource_files=None, environment_settings=None, constraints=None, wait_for_success: bool=None, user_identity=None, rerun_on_node_reboot_after_success: bool=None, **kwargs) -> None: + super(JobPreparationTask, self).__init__(**kwargs) + self.id = id + self.command_line = command_line + self.container_settings = container_settings + self.resource_files = resource_files + self.environment_settings = environment_settings + self.constraints = constraints + self.wait_for_success = wait_for_success + self.user_identity = user_identity + self.rerun_on_node_reboot_after_success = rerun_on_node_reboot_after_success diff --git a/azure-batch/azure/batch/models/job_release_task.py b/azure-batch/azure/batch/models/job_release_task.py index 964f6fc48b31..cb91dd91ebf8 100644 --- a/azure-batch/azure/batch/models/job_release_task.py +++ b/azure-batch/azure/batch/models/job_release_task.py @@ -33,6 +33,8 @@ class JobReleaseTask(Model): It does not occupy a scheduling slot; that is, it does not count towards the maxTasksPerNode limit specified on the pool. + All required parameters must be populated in order to send to Azure. + :param id: A string that uniquely identifies the Job Release task within the job. The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than 64 @@ -43,14 +45,14 @@ class JobReleaseTask(Model): TaskIdSameAsJobReleaseTask; if you are calling the REST API directly, the HTTP status code is 409 (Conflict). :type id: str - :param command_line: The command line of the Job Release task. The command - line does not run under a shell, and therefore cannot take advantage of - shell features such as environment variable expansion. If you want to take - advantage of such features, you should invoke the shell in the command - line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c - MyCommand" in Linux. If the command line refers to file paths, it should - use a relative path (relative to the task working directory), or use the - Batch provided environment variable + :param command_line: Required. The command line of the Job Release task. + The command line does not run under a shell, and therefore cannot take + advantage of shell features such as environment variable expansion. If you + want to take advantage of such features, you should invoke the shell in + the command line, for example using "cmd /c MyCommand" in Windows or + "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, + it should use a relative path (relative to the task working directory), or + use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). :type command_line: str :param container_settings: The settings for the container under which the @@ -61,8 +63,13 @@ class JobReleaseTask(Model): the container. :type container_settings: ~azure.batch.models.TaskContainerSettings :param resource_files: A list of files that the Batch service will - download to the compute node before running the command line. Files listed - under this element are located in the task's working directory. + download to the compute node before running the command line. There is a + maximum size for the list of resource files. When the max size is + exceeded, the request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. Files listed under this + element are located in the task's working directory. :type resource_files: list[~azure.batch.models.ResourceFile] :param environment_settings: A list of environment variable settings for the Job Release task. @@ -102,13 +109,13 @@ class JobReleaseTask(Model): 'user_identity': {'key': 'userIdentity', 'type': 'UserIdentity'}, } - def __init__(self, command_line, id=None, container_settings=None, resource_files=None, environment_settings=None, max_wall_clock_time=None, retention_time=None, user_identity=None): - super(JobReleaseTask, self).__init__() - self.id = id - self.command_line = command_line - self.container_settings = container_settings - self.resource_files = resource_files - self.environment_settings = environment_settings - self.max_wall_clock_time = max_wall_clock_time - self.retention_time = retention_time - self.user_identity = user_identity + def __init__(self, **kwargs): + super(JobReleaseTask, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.command_line = kwargs.get('command_line', None) + self.container_settings = kwargs.get('container_settings', None) + self.resource_files = kwargs.get('resource_files', None) + self.environment_settings = kwargs.get('environment_settings', None) + self.max_wall_clock_time = kwargs.get('max_wall_clock_time', None) + self.retention_time = kwargs.get('retention_time', None) + self.user_identity = kwargs.get('user_identity', None) diff --git a/azure-batch/azure/batch/models/job_release_task_execution_information.py b/azure-batch/azure/batch/models/job_release_task_execution_information.py index 5867a1d33c09..0ccb4f64ff90 100644 --- a/azure-batch/azure/batch/models/job_release_task_execution_information.py +++ b/azure-batch/azure/batch/models/job_release_task_execution_information.py @@ -16,15 +16,17 @@ class JobReleaseTaskExecutionInformation(Model): """Contains information about the execution of a Job Release task on a compute node. - :param start_time: The time at which the task started running. If the task - has been restarted or retried, this is the most recent time at which the - task started running. + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The time at which the task started running. + If the task has been restarted or retried, this is the most recent time at + which the task started running. :type start_time: datetime :param end_time: The time at which the Job Release task completed. This property is set only if the task is in the Completed state. :type end_time: datetime - :param state: The current state of the Job Release task on the compute - node. Possible values include: 'running', 'completed' + :param state: Required. The current state of the Job Release task on the + compute node. Possible values include: 'running', 'completed' :type state: str or ~azure.batch.models.JobReleaseTaskState :param task_root_directory: The root directory of the Job Release task on the compute node. You can use this path to retrieve files created by the @@ -74,14 +76,14 @@ class JobReleaseTaskExecutionInformation(Model): 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, } - def __init__(self, start_time, state, end_time=None, task_root_directory=None, task_root_directory_url=None, exit_code=None, container_info=None, failure_info=None, result=None): - super(JobReleaseTaskExecutionInformation, self).__init__() - self.start_time = start_time - self.end_time = end_time - self.state = state - self.task_root_directory = task_root_directory - self.task_root_directory_url = task_root_directory_url - self.exit_code = exit_code - self.container_info = container_info - self.failure_info = failure_info - self.result = result + def __init__(self, **kwargs): + super(JobReleaseTaskExecutionInformation, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.state = kwargs.get('state', None) + self.task_root_directory = kwargs.get('task_root_directory', None) + self.task_root_directory_url = kwargs.get('task_root_directory_url', None) + self.exit_code = kwargs.get('exit_code', None) + self.container_info = kwargs.get('container_info', None) + self.failure_info = kwargs.get('failure_info', None) + self.result = kwargs.get('result', None) diff --git a/azure-batch/azure/batch/models/job_release_task_execution_information_py3.py b/azure-batch/azure/batch/models/job_release_task_execution_information_py3.py new file mode 100644 index 000000000000..ed08089b3cce --- /dev/null +++ b/azure-batch/azure/batch/models/job_release_task_execution_information_py3.py @@ -0,0 +1,89 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobReleaseTaskExecutionInformation(Model): + """Contains information about the execution of a Job Release task on a compute + node. + + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The time at which the task started running. + If the task has been restarted or retried, this is the most recent time at + which the task started running. + :type start_time: datetime + :param end_time: The time at which the Job Release task completed. This + property is set only if the task is in the Completed state. + :type end_time: datetime + :param state: Required. The current state of the Job Release task on the + compute node. Possible values include: 'running', 'completed' + :type state: str or ~azure.batch.models.JobReleaseTaskState + :param task_root_directory: The root directory of the Job Release task on + the compute node. You can use this path to retrieve files created by the + task, such as log files. + :type task_root_directory: str + :param task_root_directory_url: The URL to the root directory of the Job + Release task on the compute node. + :type task_root_directory_url: str + :param exit_code: The exit code of the program specified on the task + command line. This parameter is returned only if the task is in the + completed state. The exit code for a process reflects the specific + convention implemented by the application developer for that process. If + you use the exit code value to make decisions in your code, be sure that + you know the exit code convention used by the application process. Note + that the exit code may also be generated by the compute node operating + system, such as when a process is forcibly terminated. + :type exit_code: int + :param container_info: Information about the container under which the + task is executing. This property is set only if the task runs in a + container context. + :type container_info: + ~azure.batch.models.TaskContainerExecutionInformation + :param failure_info: Information describing the task failure, if any. This + property is set only if the task is in the completed state and encountered + a failure. + :type failure_info: ~azure.batch.models.TaskFailureInformation + :param result: The result of the task execution. If the value is 'failed', + then the details of the failure can be found in the failureInfo property. + Possible values include: 'success', 'failure' + :type result: str or ~azure.batch.models.TaskExecutionResult + """ + + _validation = { + 'start_time': {'required': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'state': {'key': 'state', 'type': 'JobReleaseTaskState'}, + 'task_root_directory': {'key': 'taskRootDirectory', 'type': 'str'}, + 'task_root_directory_url': {'key': 'taskRootDirectoryUrl', 'type': 'str'}, + 'exit_code': {'key': 'exitCode', 'type': 'int'}, + 'container_info': {'key': 'containerInfo', 'type': 'TaskContainerExecutionInformation'}, + 'failure_info': {'key': 'failureInfo', 'type': 'TaskFailureInformation'}, + 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, + } + + def __init__(self, *, start_time, state, end_time=None, task_root_directory: str=None, task_root_directory_url: str=None, exit_code: int=None, container_info=None, failure_info=None, result=None, **kwargs) -> None: + super(JobReleaseTaskExecutionInformation, self).__init__(**kwargs) + self.start_time = start_time + self.end_time = end_time + self.state = state + self.task_root_directory = task_root_directory + self.task_root_directory_url = task_root_directory_url + self.exit_code = exit_code + self.container_info = container_info + self.failure_info = failure_info + self.result = result diff --git a/azure-batch/azure/batch/models/job_release_task_py3.py b/azure-batch/azure/batch/models/job_release_task_py3.py new file mode 100644 index 000000000000..e8febe4c39eb --- /dev/null +++ b/azure-batch/azure/batch/models/job_release_task_py3.py @@ -0,0 +1,121 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobReleaseTask(Model): + """A Job Release task to run on job completion on any compute node where the + job has run. + + The Job Release task runs when the job ends, because of one of the + following: The user calls the Terminate Job API, or the Delete Job API + while the job is still active, the job's maximum wall clock time constraint + is reached, and the job is still active, or the job's Job Manager task + completed, and the job is configured to terminate when the Job Manager + completes. The Job Release task runs on each compute node where tasks of + the job have run and the Job Preparation task ran and completed. If you + reimage a compute node after it has run the Job Preparation task, and the + job ends without any further tasks of the job running on that compute node + (and hence the Job Preparation task does not re-run), then the Job Release + task does not run on that node. If a compute node reboots while the Job + Release task is still running, the Job Release task runs again when the + compute node starts up. The job is not marked as complete until all Job + Release tasks have completed. The Job Release task runs in the background. + It does not occupy a scheduling slot; that is, it does not count towards + the maxTasksPerNode limit specified on the pool. + + All required parameters must be populated in order to send to Azure. + + :param id: A string that uniquely identifies the Job Release task within + the job. The ID can contain any combination of alphanumeric characters + including hyphens and underscores and cannot contain more than 64 + characters. If you do not specify this property, the Batch service assigns + a default value of 'jobrelease'. No other task in the job can have the + same ID as the Job Release task. If you try to submit a task with the same + id, the Batch service rejects the request with error code + TaskIdSameAsJobReleaseTask; if you are calling the REST API directly, the + HTTP status code is 409 (Conflict). + :type id: str + :param command_line: Required. The command line of the Job Release task. + The command line does not run under a shell, and therefore cannot take + advantage of shell features such as environment variable expansion. If you + want to take advantage of such features, you should invoke the shell in + the command line, for example using "cmd /c MyCommand" in Windows or + "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, + it should use a relative path (relative to the task working directory), or + use the Batch provided environment variable + (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). + :type command_line: str + :param container_settings: The settings for the container under which the + Job Release task runs. When this is specified, all directories recursively + below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on + the node) are mapped into the container, all task environment variables + are mapped into the container, and the task command line is executed in + the container. + :type container_settings: ~azure.batch.models.TaskContainerSettings + :param resource_files: A list of files that the Batch service will + download to the compute node before running the command line. There is a + maximum size for the list of resource files. When the max size is + exceeded, the request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. Files listed under this + element are located in the task's working directory. + :type resource_files: list[~azure.batch.models.ResourceFile] + :param environment_settings: A list of environment variable settings for + the Job Release task. + :type environment_settings: list[~azure.batch.models.EnvironmentSetting] + :param max_wall_clock_time: The maximum elapsed time that the Job Release + task may run on a given compute node, measured from the time the task + starts. If the task does not complete within the time limit, the Batch + service terminates it. The default value is 15 minutes. You may not + specify a timeout longer than 15 minutes. If you do, the Batch service + rejects it with an error; if you are calling the REST API directly, the + HTTP status code is 400 (Bad Request). + :type max_wall_clock_time: timedelta + :param retention_time: The minimum time to retain the task directory for + the Job Release task on the compute node. After this time, the Batch + service may delete the task directory and all its contents. The default is + infinite, i.e. the task directory will be retained until the compute node + is removed or reimaged. + :type retention_time: timedelta + :param user_identity: The user identity under which the Job Release task + runs. If omitted, the task runs as a non-administrative user unique to the + task. + :type user_identity: ~azure.batch.models.UserIdentity + """ + + _validation = { + 'command_line': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'command_line': {'key': 'commandLine', 'type': 'str'}, + 'container_settings': {'key': 'containerSettings', 'type': 'TaskContainerSettings'}, + 'resource_files': {'key': 'resourceFiles', 'type': '[ResourceFile]'}, + 'environment_settings': {'key': 'environmentSettings', 'type': '[EnvironmentSetting]'}, + 'max_wall_clock_time': {'key': 'maxWallClockTime', 'type': 'duration'}, + 'retention_time': {'key': 'retentionTime', 'type': 'duration'}, + 'user_identity': {'key': 'userIdentity', 'type': 'UserIdentity'}, + } + + def __init__(self, *, command_line: str, id: str=None, container_settings=None, resource_files=None, environment_settings=None, max_wall_clock_time=None, retention_time=None, user_identity=None, **kwargs) -> None: + super(JobReleaseTask, self).__init__(**kwargs) + self.id = id + self.command_line = command_line + self.container_settings = container_settings + self.resource_files = resource_files + self.environment_settings = environment_settings + self.max_wall_clock_time = max_wall_clock_time + self.retention_time = retention_time + self.user_identity = user_identity diff --git a/azure-batch/azure/batch/models/job_schedule_add_options.py b/azure-batch/azure/batch/models/job_schedule_add_options.py index cdaf8e0e0857..6c03aaff2373 100644 --- a/azure-batch/azure/batch/models/job_schedule_add_options.py +++ b/azure-batch/azure/batch/models/job_schedule_add_options.py @@ -31,9 +31,16 @@ class JobScheduleAddOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(JobScheduleAddOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleAddOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/job_schedule_add_options_py3.py b/azure-batch/azure/batch/models/job_schedule_add_options_py3.py new file mode 100644 index 000000000000..fe7b76cc4861 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_add_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleAddOptions(Model): + """Additional parameters for add operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(JobScheduleAddOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/job_schedule_add_parameter.py b/azure-batch/azure/batch/models/job_schedule_add_parameter.py index 985f3bc7248f..e0d8d724120f 100644 --- a/azure-batch/azure/batch/models/job_schedule_add_parameter.py +++ b/azure-batch/azure/batch/models/job_schedule_add_parameter.py @@ -16,8 +16,10 @@ class JobScheduleAddParameter(Model): """A job schedule that allows recurring jobs by specifying when to run jobs and a specification used to create each job. - :param id: A string that uniquely identifies the schedule within the - account. The ID can contain any combination of alphanumeric characters + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the schedule within + the account. The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters. The ID is case-preserving and case-insensitive (that is, you may not have two IDs within an account that differ only by case). @@ -26,10 +28,11 @@ class JobScheduleAddParameter(Model): need not be unique and can contain any Unicode characters up to a maximum length of 1024. :type display_name: str - :param schedule: The schedule according to which jobs will be created. + :param schedule: Required. The schedule according to which jobs will be + created. :type schedule: ~azure.batch.models.Schedule - :param job_specification: The details of the jobs to be created on this - schedule. + :param job_specification: Required. The details of the jobs to be created + on this schedule. :type job_specification: ~azure.batch.models.JobSpecification :param metadata: A list of name-value pairs associated with the schedule as metadata. The Batch service does not assign any meaning to metadata; it @@ -51,10 +54,10 @@ class JobScheduleAddParameter(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, id, schedule, job_specification, display_name=None, metadata=None): - super(JobScheduleAddParameter, self).__init__() - self.id = id - self.display_name = display_name - self.schedule = schedule - self.job_specification = job_specification - self.metadata = metadata + def __init__(self, **kwargs): + super(JobScheduleAddParameter, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.schedule = kwargs.get('schedule', None) + self.job_specification = kwargs.get('job_specification', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/job_schedule_add_parameter_py3.py b/azure-batch/azure/batch/models/job_schedule_add_parameter_py3.py new file mode 100644 index 000000000000..9281c765682e --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_add_parameter_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleAddParameter(Model): + """A job schedule that allows recurring jobs by specifying when to run jobs + and a specification used to create each job. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the schedule within + the account. The ID can contain any combination of alphanumeric characters + including hyphens and underscores, and cannot contain more than 64 + characters. The ID is case-preserving and case-insensitive (that is, you + may not have two IDs within an account that differ only by case). + :type id: str + :param display_name: The display name for the schedule. The display name + need not be unique and can contain any Unicode characters up to a maximum + length of 1024. + :type display_name: str + :param schedule: Required. The schedule according to which jobs will be + created. + :type schedule: ~azure.batch.models.Schedule + :param job_specification: Required. The details of the jobs to be created + on this schedule. + :type job_specification: ~azure.batch.models.JobSpecification + :param metadata: A list of name-value pairs associated with the schedule + as metadata. The Batch service does not assign any meaning to metadata; it + is solely for the use of user code. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _validation = { + 'id': {'required': True}, + 'schedule': {'required': True}, + 'job_specification': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'schedule': {'key': 'schedule', 'type': 'Schedule'}, + 'job_specification': {'key': 'jobSpecification', 'type': 'JobSpecification'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, id: str, schedule, job_specification, display_name: str=None, metadata=None, **kwargs) -> None: + super(JobScheduleAddParameter, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.schedule = schedule + self.job_specification = job_specification + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/job_schedule_delete_options.py b/azure-batch/azure/batch/models/job_schedule_delete_options.py index e4f274f50496..a7e01118576e 100644 --- a/azure-batch/azure/batch/models/job_schedule_delete_options.py +++ b/azure-batch/azure/batch/models/job_schedule_delete_options.py @@ -50,13 +50,24 @@ class JobScheduleDeleteOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobScheduleDeleteOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleDeleteOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_schedule_delete_options_py3.py b/azure-batch/azure/batch/models/job_schedule_delete_options_py3.py new file mode 100644 index 000000000000..89ae99869173 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_delete_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleDeleteOptions(Model): + """Additional parameters for delete operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobScheduleDeleteOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_schedule_disable_options.py b/azure-batch/azure/batch/models/job_schedule_disable_options.py index 27cc851f9f65..9384c1fbc154 100644 --- a/azure-batch/azure/batch/models/job_schedule_disable_options.py +++ b/azure-batch/azure/batch/models/job_schedule_disable_options.py @@ -50,13 +50,24 @@ class JobScheduleDisableOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobScheduleDisableOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleDisableOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_schedule_disable_options_py3.py b/azure-batch/azure/batch/models/job_schedule_disable_options_py3.py new file mode 100644 index 000000000000..83adbe53a6b2 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_disable_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleDisableOptions(Model): + """Additional parameters for disable operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobScheduleDisableOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_schedule_enable_options.py b/azure-batch/azure/batch/models/job_schedule_enable_options.py index 45cf182c0969..a296d5307ac5 100644 --- a/azure-batch/azure/batch/models/job_schedule_enable_options.py +++ b/azure-batch/azure/batch/models/job_schedule_enable_options.py @@ -50,13 +50,24 @@ class JobScheduleEnableOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobScheduleEnableOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleEnableOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_schedule_enable_options_py3.py b/azure-batch/azure/batch/models/job_schedule_enable_options_py3.py new file mode 100644 index 000000000000..daa4d0871468 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_enable_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleEnableOptions(Model): + """Additional parameters for enable operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobScheduleEnableOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_schedule_execution_information.py b/azure-batch/azure/batch/models/job_schedule_execution_information.py index fb2a297d2f27..b79a4e81abb6 100644 --- a/azure-batch/azure/batch/models/job_schedule_execution_information.py +++ b/azure-batch/azure/batch/models/job_schedule_execution_information.py @@ -37,8 +37,8 @@ class JobScheduleExecutionInformation(Model): 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, } - def __init__(self, next_run_time=None, recent_job=None, end_time=None): - super(JobScheduleExecutionInformation, self).__init__() - self.next_run_time = next_run_time - self.recent_job = recent_job - self.end_time = end_time + def __init__(self, **kwargs): + super(JobScheduleExecutionInformation, self).__init__(**kwargs) + self.next_run_time = kwargs.get('next_run_time', None) + self.recent_job = kwargs.get('recent_job', None) + self.end_time = kwargs.get('end_time', None) diff --git a/azure-batch/azure/batch/models/job_schedule_execution_information_py3.py b/azure-batch/azure/batch/models/job_schedule_execution_information_py3.py new file mode 100644 index 000000000000..6afcaa3853b4 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_execution_information_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleExecutionInformation(Model): + """Contains information about jobs that have been and will be run under a job + schedule. + + :param next_run_time: The next time at which a job will be created under + this schedule. This property is meaningful only if the schedule is in the + active state when the time comes around. For example, if the schedule is + disabled, no job will be created at nextRunTime unless the job is enabled + before then. + :type next_run_time: datetime + :param recent_job: Information about the most recent job under the job + schedule. This property is present only if the at least one job has run + under the schedule. + :type recent_job: ~azure.batch.models.RecentJob + :param end_time: The time at which the schedule ended. This property is + set only if the job schedule is in the completed state. + :type end_time: datetime + """ + + _attribute_map = { + 'next_run_time': {'key': 'nextRunTime', 'type': 'iso-8601'}, + 'recent_job': {'key': 'recentJob', 'type': 'RecentJob'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, next_run_time=None, recent_job=None, end_time=None, **kwargs) -> None: + super(JobScheduleExecutionInformation, self).__init__(**kwargs) + self.next_run_time = next_run_time + self.recent_job = recent_job + self.end_time = end_time diff --git a/azure-batch/azure/batch/models/job_schedule_exists_options.py b/azure-batch/azure/batch/models/job_schedule_exists_options.py index 5596ab256886..c4f228d77b22 100644 --- a/azure-batch/azure/batch/models/job_schedule_exists_options.py +++ b/azure-batch/azure/batch/models/job_schedule_exists_options.py @@ -50,13 +50,24 @@ class JobScheduleExistsOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobScheduleExistsOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleExistsOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_schedule_exists_options_py3.py b/azure-batch/azure/batch/models/job_schedule_exists_options_py3.py new file mode 100644 index 000000000000..da8e15d205ee --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_exists_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleExistsOptions(Model): + """Additional parameters for exists operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobScheduleExistsOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_schedule_get_options.py b/azure-batch/azure/batch/models/job_schedule_get_options.py index 4bbdc741ca01..434b0ab1a1ea 100644 --- a/azure-batch/azure/batch/models/job_schedule_get_options.py +++ b/azure-batch/azure/batch/models/job_schedule_get_options.py @@ -54,15 +54,28 @@ class JobScheduleGetOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, select=None, expand=None, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobScheduleGetOptions, self).__init__() - self.select = select - self.expand = expand - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleGetOptions, self).__init__(**kwargs) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_schedule_get_options_py3.py b/azure-batch/azure/batch/models/job_schedule_get_options_py3.py new file mode 100644 index 000000000000..11ee540ffacd --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_get_options_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleGetOptions(Model): + """Additional parameters for get operation. + + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, select: str=None, expand: str=None, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobScheduleGetOptions, self).__init__(**kwargs) + self.select = select + self.expand = expand + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_schedule_list_options.py b/azure-batch/azure/batch/models/job_schedule_list_options.py index f48fa4957d19..28af39456b6d 100644 --- a/azure-batch/azure/batch/models/job_schedule_list_options.py +++ b/azure-batch/azure/batch/models/job_schedule_list_options.py @@ -42,13 +42,24 @@ class JobScheduleListOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, select=None, expand=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(JobScheduleListOptions, self).__init__() - self.filter = filter - self.select = select - self.expand = expand - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleListOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/job_schedule_list_options_py3.py b/azure-batch/azure/batch/models/job_schedule_list_options_py3.py new file mode 100644 index 000000000000..017cdb10d98b --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_list_options_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleListOptions(Model): + """Additional parameters for list operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-job-schedules. + :type filter: str + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 job schedules can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, select: str=None, expand: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(JobScheduleListOptions, self).__init__(**kwargs) + self.filter = filter + self.select = select + self.expand = expand + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/job_schedule_patch_options.py b/azure-batch/azure/batch/models/job_schedule_patch_options.py index c0a154fca53e..841e56e91bf1 100644 --- a/azure-batch/azure/batch/models/job_schedule_patch_options.py +++ b/azure-batch/azure/batch/models/job_schedule_patch_options.py @@ -50,13 +50,24 @@ class JobSchedulePatchOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobSchedulePatchOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobSchedulePatchOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_schedule_patch_options_py3.py b/azure-batch/azure/batch/models/job_schedule_patch_options_py3.py new file mode 100644 index 000000000000..06e4f626c614 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_patch_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobSchedulePatchOptions(Model): + """Additional parameters for patch operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobSchedulePatchOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_schedule_patch_parameter.py b/azure-batch/azure/batch/models/job_schedule_patch_parameter.py index 10c1ec9a3889..24a074bf667a 100644 --- a/azure-batch/azure/batch/models/job_schedule_patch_parameter.py +++ b/azure-batch/azure/batch/models/job_schedule_patch_parameter.py @@ -35,8 +35,8 @@ class JobSchedulePatchParameter(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, schedule=None, job_specification=None, metadata=None): - super(JobSchedulePatchParameter, self).__init__() - self.schedule = schedule - self.job_specification = job_specification - self.metadata = metadata + def __init__(self, **kwargs): + super(JobSchedulePatchParameter, self).__init__(**kwargs) + self.schedule = kwargs.get('schedule', None) + self.job_specification = kwargs.get('job_specification', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/job_schedule_patch_parameter_py3.py b/azure-batch/azure/batch/models/job_schedule_patch_parameter_py3.py new file mode 100644 index 000000000000..4102022b19d3 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_patch_parameter_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobSchedulePatchParameter(Model): + """The set of changes to be made to a job schedule. + + :param schedule: The schedule according to which jobs will be created. If + you do not specify this element, the existing schedule is left unchanged. + :type schedule: ~azure.batch.models.Schedule + :param job_specification: The details of the jobs to be created on this + schedule. Updates affect only jobs that are started after the update has + taken place. Any currently active job continues with the older + specification. + :type job_specification: ~azure.batch.models.JobSpecification + :param metadata: A list of name-value pairs associated with the job + schedule as metadata. If you do not specify this element, existing + metadata is left unchanged. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _attribute_map = { + 'schedule': {'key': 'schedule', 'type': 'Schedule'}, + 'job_specification': {'key': 'jobSpecification', 'type': 'JobSpecification'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, schedule=None, job_specification=None, metadata=None, **kwargs) -> None: + super(JobSchedulePatchParameter, self).__init__(**kwargs) + self.schedule = schedule + self.job_specification = job_specification + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/job_schedule_statistics.py b/azure-batch/azure/batch/models/job_schedule_statistics.py index 85ed5e2ad63b..ebf2e3e2058e 100644 --- a/azure-batch/azure/batch/models/job_schedule_statistics.py +++ b/azure-batch/azure/batch/models/job_schedule_statistics.py @@ -15,59 +15,62 @@ class JobScheduleStatistics(Model): """Resource usage statistics for a job schedule. - :param url: The URL of the statistics. + All required parameters must be populated in order to send to Azure. + + :param url: Required. The URL of the statistics. :type url: str - :param start_time: The start time of the time range covered by the - statistics. + :param start_time: Required. The start time of the time range covered by + the statistics. :type start_time: datetime - :param last_update_time: The time at which the statistics were last - updated. All statistics are limited to the range between startTime and - lastUpdateTime. + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. :type last_update_time: datetime - :param user_cpu_time: The total user mode CPU time (summed across all - cores and all compute nodes) consumed by all tasks in all jobs created - under the schedule. + :param user_cpu_time: Required. The total user mode CPU time (summed + across all cores and all compute nodes) consumed by all tasks in all jobs + created under the schedule. :type user_cpu_time: timedelta - :param kernel_cpu_time: The total kernel mode CPU time (summed across all - cores and all compute nodes) consumed by all tasks in all jobs created - under the schedule. + :param kernel_cpu_time: Required. The total kernel mode CPU time (summed + across all cores and all compute nodes) consumed by all tasks in all jobs + created under the schedule. :type kernel_cpu_time: timedelta - :param wall_clock_time: The total wall clock time of all the tasks in all - the jobs created under the schedule. The wall clock time is the elapsed - time from when the task started running on a compute node to when it - finished (or to the last time the statistics were updated, if the task had - not finished by then). If a task was retried, this includes the wall clock - time of all the task retries. + :param wall_clock_time: Required. The total wall clock time of all the + tasks in all the jobs created under the schedule. The wall clock time is + the elapsed time from when the task started running on a compute node to + when it finished (or to the last time the statistics were updated, if the + task had not finished by then). If a task was retried, this includes the + wall clock time of all the task retries. :type wall_clock_time: timedelta - :param read_iops: The total number of disk read operations made by all - tasks in all jobs created under the schedule. + :param read_iops: Required. The total number of disk read operations made + by all tasks in all jobs created under the schedule. :type read_iops: long - :param write_iops: The total number of disk write operations made by all - tasks in all jobs created under the schedule. + :param write_iops: Required. The total number of disk write operations + made by all tasks in all jobs created under the schedule. :type write_iops: long - :param read_io_gi_b: The total gibibytes read from disk by all tasks in - all jobs created under the schedule. + :param read_io_gi_b: Required. The total gibibytes read from disk by all + tasks in all jobs created under the schedule. :type read_io_gi_b: float - :param write_io_gi_b: The total gibibytes written to disk by all tasks in - all jobs created under the schedule. + :param write_io_gi_b: Required. The total gibibytes written to disk by all + tasks in all jobs created under the schedule. :type write_io_gi_b: float - :param num_succeeded_tasks: The total number of tasks successfully - completed during the given time range in jobs created under the schedule. - A task completes successfully if it returns exit code 0. + :param num_succeeded_tasks: Required. The total number of tasks + successfully completed during the given time range in jobs created under + the schedule. A task completes successfully if it returns exit code 0. :type num_succeeded_tasks: long - :param num_failed_tasks: The total number of tasks that failed during the - given time range in jobs created under the schedule. A task fails if it - exhausts its maximum retry count without returning exit code 0. + :param num_failed_tasks: Required. The total number of tasks that failed + during the given time range in jobs created under the schedule. A task + fails if it exhausts its maximum retry count without returning exit code + 0. :type num_failed_tasks: long - :param num_task_retries: The total number of retries during the given time - range on all tasks in all jobs created under the schedule. + :param num_task_retries: Required. The total number of retries during the + given time range on all tasks in all jobs created under the schedule. :type num_task_retries: long - :param wait_time: The total wait time of all tasks in all jobs created - under the schedule. The wait time for a task is defined as the elapsed - time between the creation of the task and the start of task execution. (If - the task is retried due to failures, the wait time is the time to the most - recent task execution.). This value is only reported in the account - lifetime statistics; it is not included in the job statistics. + :param wait_time: Required. The total wait time of all tasks in all jobs + created under the schedule. The wait time for a task is defined as the + elapsed time between the creation of the task and the start of task + execution. (If the task is retried due to failures, the wait time is the + time to the most recent task execution.). This value is only reported in + the account lifetime statistics; it is not included in the job statistics. :type wait_time: timedelta """ @@ -105,19 +108,19 @@ class JobScheduleStatistics(Model): 'wait_time': {'key': 'waitTime', 'type': 'duration'}, } - def __init__(self, url, start_time, last_update_time, user_cpu_time, kernel_cpu_time, wall_clock_time, read_iops, write_iops, read_io_gi_b, write_io_gi_b, num_succeeded_tasks, num_failed_tasks, num_task_retries, wait_time): - super(JobScheduleStatistics, self).__init__() - self.url = url - self.start_time = start_time - self.last_update_time = last_update_time - self.user_cpu_time = user_cpu_time - self.kernel_cpu_time = kernel_cpu_time - self.wall_clock_time = wall_clock_time - self.read_iops = read_iops - self.write_iops = write_iops - self.read_io_gi_b = read_io_gi_b - self.write_io_gi_b = write_io_gi_b - self.num_succeeded_tasks = num_succeeded_tasks - self.num_failed_tasks = num_failed_tasks - self.num_task_retries = num_task_retries - self.wait_time = wait_time + def __init__(self, **kwargs): + super(JobScheduleStatistics, self).__init__(**kwargs) + self.url = kwargs.get('url', None) + self.start_time = kwargs.get('start_time', None) + self.last_update_time = kwargs.get('last_update_time', None) + self.user_cpu_time = kwargs.get('user_cpu_time', None) + self.kernel_cpu_time = kwargs.get('kernel_cpu_time', None) + self.wall_clock_time = kwargs.get('wall_clock_time', None) + self.read_iops = kwargs.get('read_iops', None) + self.write_iops = kwargs.get('write_iops', None) + self.read_io_gi_b = kwargs.get('read_io_gi_b', None) + self.write_io_gi_b = kwargs.get('write_io_gi_b', None) + self.num_succeeded_tasks = kwargs.get('num_succeeded_tasks', None) + self.num_failed_tasks = kwargs.get('num_failed_tasks', None) + self.num_task_retries = kwargs.get('num_task_retries', None) + self.wait_time = kwargs.get('wait_time', None) diff --git a/azure-batch/azure/batch/models/job_schedule_statistics_py3.py b/azure-batch/azure/batch/models/job_schedule_statistics_py3.py new file mode 100644 index 000000000000..d335aa94c675 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_statistics_py3.py @@ -0,0 +1,126 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleStatistics(Model): + """Resource usage statistics for a job schedule. + + All required parameters must be populated in order to send to Azure. + + :param url: Required. The URL of the statistics. + :type url: str + :param start_time: Required. The start time of the time range covered by + the statistics. + :type start_time: datetime + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. + :type last_update_time: datetime + :param user_cpu_time: Required. The total user mode CPU time (summed + across all cores and all compute nodes) consumed by all tasks in all jobs + created under the schedule. + :type user_cpu_time: timedelta + :param kernel_cpu_time: Required. The total kernel mode CPU time (summed + across all cores and all compute nodes) consumed by all tasks in all jobs + created under the schedule. + :type kernel_cpu_time: timedelta + :param wall_clock_time: Required. The total wall clock time of all the + tasks in all the jobs created under the schedule. The wall clock time is + the elapsed time from when the task started running on a compute node to + when it finished (or to the last time the statistics were updated, if the + task had not finished by then). If a task was retried, this includes the + wall clock time of all the task retries. + :type wall_clock_time: timedelta + :param read_iops: Required. The total number of disk read operations made + by all tasks in all jobs created under the schedule. + :type read_iops: long + :param write_iops: Required. The total number of disk write operations + made by all tasks in all jobs created under the schedule. + :type write_iops: long + :param read_io_gi_b: Required. The total gibibytes read from disk by all + tasks in all jobs created under the schedule. + :type read_io_gi_b: float + :param write_io_gi_b: Required. The total gibibytes written to disk by all + tasks in all jobs created under the schedule. + :type write_io_gi_b: float + :param num_succeeded_tasks: Required. The total number of tasks + successfully completed during the given time range in jobs created under + the schedule. A task completes successfully if it returns exit code 0. + :type num_succeeded_tasks: long + :param num_failed_tasks: Required. The total number of tasks that failed + during the given time range in jobs created under the schedule. A task + fails if it exhausts its maximum retry count without returning exit code + 0. + :type num_failed_tasks: long + :param num_task_retries: Required. The total number of retries during the + given time range on all tasks in all jobs created under the schedule. + :type num_task_retries: long + :param wait_time: Required. The total wait time of all tasks in all jobs + created under the schedule. The wait time for a task is defined as the + elapsed time between the creation of the task and the start of task + execution. (If the task is retried due to failures, the wait time is the + time to the most recent task execution.). This value is only reported in + the account lifetime statistics; it is not included in the job statistics. + :type wait_time: timedelta + """ + + _validation = { + 'url': {'required': True}, + 'start_time': {'required': True}, + 'last_update_time': {'required': True}, + 'user_cpu_time': {'required': True}, + 'kernel_cpu_time': {'required': True}, + 'wall_clock_time': {'required': True}, + 'read_iops': {'required': True}, + 'write_iops': {'required': True}, + 'read_io_gi_b': {'required': True}, + 'write_io_gi_b': {'required': True}, + 'num_succeeded_tasks': {'required': True}, + 'num_failed_tasks': {'required': True}, + 'num_task_retries': {'required': True}, + 'wait_time': {'required': True}, + } + + _attribute_map = { + 'url': {'key': 'url', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_update_time': {'key': 'lastUpdateTime', 'type': 'iso-8601'}, + 'user_cpu_time': {'key': 'userCPUTime', 'type': 'duration'}, + 'kernel_cpu_time': {'key': 'kernelCPUTime', 'type': 'duration'}, + 'wall_clock_time': {'key': 'wallClockTime', 'type': 'duration'}, + 'read_iops': {'key': 'readIOps', 'type': 'long'}, + 'write_iops': {'key': 'writeIOps', 'type': 'long'}, + 'read_io_gi_b': {'key': 'readIOGiB', 'type': 'float'}, + 'write_io_gi_b': {'key': 'writeIOGiB', 'type': 'float'}, + 'num_succeeded_tasks': {'key': 'numSucceededTasks', 'type': 'long'}, + 'num_failed_tasks': {'key': 'numFailedTasks', 'type': 'long'}, + 'num_task_retries': {'key': 'numTaskRetries', 'type': 'long'}, + 'wait_time': {'key': 'waitTime', 'type': 'duration'}, + } + + def __init__(self, *, url: str, start_time, last_update_time, user_cpu_time, kernel_cpu_time, wall_clock_time, read_iops: int, write_iops: int, read_io_gi_b: float, write_io_gi_b: float, num_succeeded_tasks: int, num_failed_tasks: int, num_task_retries: int, wait_time, **kwargs) -> None: + super(JobScheduleStatistics, self).__init__(**kwargs) + self.url = url + self.start_time = start_time + self.last_update_time = last_update_time + self.user_cpu_time = user_cpu_time + self.kernel_cpu_time = kernel_cpu_time + self.wall_clock_time = wall_clock_time + self.read_iops = read_iops + self.write_iops = write_iops + self.read_io_gi_b = read_io_gi_b + self.write_io_gi_b = write_io_gi_b + self.num_succeeded_tasks = num_succeeded_tasks + self.num_failed_tasks = num_failed_tasks + self.num_task_retries = num_task_retries + self.wait_time = wait_time diff --git a/azure-batch/azure/batch/models/job_schedule_terminate_options.py b/azure-batch/azure/batch/models/job_schedule_terminate_options.py index 29d20b98fd0b..32a6f0d78912 100644 --- a/azure-batch/azure/batch/models/job_schedule_terminate_options.py +++ b/azure-batch/azure/batch/models/job_schedule_terminate_options.py @@ -50,13 +50,24 @@ class JobScheduleTerminateOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobScheduleTerminateOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleTerminateOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_schedule_terminate_options_py3.py b/azure-batch/azure/batch/models/job_schedule_terminate_options_py3.py new file mode 100644 index 000000000000..547898763101 --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_terminate_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleTerminateOptions(Model): + """Additional parameters for terminate operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobScheduleTerminateOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_schedule_update_options.py b/azure-batch/azure/batch/models/job_schedule_update_options.py index 092d42c581da..ca3de8988302 100644 --- a/azure-batch/azure/batch/models/job_schedule_update_options.py +++ b/azure-batch/azure/batch/models/job_schedule_update_options.py @@ -50,13 +50,24 @@ class JobScheduleUpdateOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobScheduleUpdateOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobScheduleUpdateOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_schedule_update_options_py3.py b/azure-batch/azure/batch/models/job_schedule_update_options_py3.py new file mode 100644 index 000000000000..aee92988fa4d --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_update_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleUpdateOptions(Model): + """Additional parameters for update operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobScheduleUpdateOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_schedule_update_parameter.py b/azure-batch/azure/batch/models/job_schedule_update_parameter.py index 14afe643aacd..757ef299ac9c 100644 --- a/azure-batch/azure/batch/models/job_schedule_update_parameter.py +++ b/azure-batch/azure/batch/models/job_schedule_update_parameter.py @@ -15,13 +15,15 @@ class JobScheduleUpdateParameter(Model): """The set of changes to be made to a job schedule. - :param schedule: The schedule according to which jobs will be created. If - you do not specify this element, it is equivalent to passing the default - schedule: that is, a single job scheduled to run immediately. + All required parameters must be populated in order to send to Azure. + + :param schedule: Required. The schedule according to which jobs will be + created. If you do not specify this element, it is equivalent to passing + the default schedule: that is, a single job scheduled to run immediately. :type schedule: ~azure.batch.models.Schedule - :param job_specification: Details of the jobs to be created on this - schedule. Updates affect only jobs that are started after the update has - taken place. Any currently active job continues with the older + :param job_specification: Required. Details of the jobs to be created on + this schedule. Updates affect only jobs that are started after the update + has taken place. Any currently active job continues with the older specification. :type job_specification: ~azure.batch.models.JobSpecification :param metadata: A list of name-value pairs associated with the job @@ -42,8 +44,8 @@ class JobScheduleUpdateParameter(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, schedule, job_specification, metadata=None): - super(JobScheduleUpdateParameter, self).__init__() - self.schedule = schedule - self.job_specification = job_specification - self.metadata = metadata + def __init__(self, **kwargs): + super(JobScheduleUpdateParameter, self).__init__(**kwargs) + self.schedule = kwargs.get('schedule', None) + self.job_specification = kwargs.get('job_specification', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/job_schedule_update_parameter_py3.py b/azure-batch/azure/batch/models/job_schedule_update_parameter_py3.py new file mode 100644 index 000000000000..b3b216ee873f --- /dev/null +++ b/azure-batch/azure/batch/models/job_schedule_update_parameter_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobScheduleUpdateParameter(Model): + """The set of changes to be made to a job schedule. + + All required parameters must be populated in order to send to Azure. + + :param schedule: Required. The schedule according to which jobs will be + created. If you do not specify this element, it is equivalent to passing + the default schedule: that is, a single job scheduled to run immediately. + :type schedule: ~azure.batch.models.Schedule + :param job_specification: Required. Details of the jobs to be created on + this schedule. Updates affect only jobs that are started after the update + has taken place. Any currently active job continues with the older + specification. + :type job_specification: ~azure.batch.models.JobSpecification + :param metadata: A list of name-value pairs associated with the job + schedule as metadata. If you do not specify this element, it takes the + default value of an empty list; in effect, any existing metadata is + deleted. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _validation = { + 'schedule': {'required': True}, + 'job_specification': {'required': True}, + } + + _attribute_map = { + 'schedule': {'key': 'schedule', 'type': 'Schedule'}, + 'job_specification': {'key': 'jobSpecification', 'type': 'JobSpecification'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, schedule, job_specification, metadata=None, **kwargs) -> None: + super(JobScheduleUpdateParameter, self).__init__(**kwargs) + self.schedule = schedule + self.job_specification = job_specification + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/job_scheduling_error.py b/azure-batch/azure/batch/models/job_scheduling_error.py index 246950dea272..1869114d5321 100644 --- a/azure-batch/azure/batch/models/job_scheduling_error.py +++ b/azure-batch/azure/batch/models/job_scheduling_error.py @@ -15,8 +15,10 @@ class JobSchedulingError(Model): """An error encountered by the Batch service when scheduling a job. - :param category: The category of the job scheduling error. Possible values - include: 'userError', 'serverError' + All required parameters must be populated in order to send to Azure. + + :param category: Required. The category of the job scheduling error. + Possible values include: 'userError', 'serverError' :type category: str or ~azure.batch.models.ErrorCategory :param code: An identifier for the job scheduling error. Codes are invariant and are intended to be consumed programmatically. @@ -40,9 +42,9 @@ class JobSchedulingError(Model): 'details': {'key': 'details', 'type': '[NameValuePair]'}, } - def __init__(self, category, code=None, message=None, details=None): - super(JobSchedulingError, self).__init__() - self.category = category - self.code = code - self.message = message - self.details = details + def __init__(self, **kwargs): + super(JobSchedulingError, self).__init__(**kwargs) + self.category = kwargs.get('category', None) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.details = kwargs.get('details', None) diff --git a/azure-batch/azure/batch/models/job_scheduling_error_py3.py b/azure-batch/azure/batch/models/job_scheduling_error_py3.py new file mode 100644 index 000000000000..c12cb3393c81 --- /dev/null +++ b/azure-batch/azure/batch/models/job_scheduling_error_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobSchedulingError(Model): + """An error encountered by the Batch service when scheduling a job. + + All required parameters must be populated in order to send to Azure. + + :param category: Required. The category of the job scheduling error. + Possible values include: 'userError', 'serverError' + :type category: str or ~azure.batch.models.ErrorCategory + :param code: An identifier for the job scheduling error. Codes are + invariant and are intended to be consumed programmatically. + :type code: str + :param message: A message describing the job scheduling error, intended to + be suitable for display in a user interface. + :type message: str + :param details: A list of additional error details related to the + scheduling error. + :type details: list[~azure.batch.models.NameValuePair] + """ + + _validation = { + 'category': {'required': True}, + } + + _attribute_map = { + 'category': {'key': 'category', 'type': 'ErrorCategory'}, + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[NameValuePair]'}, + } + + def __init__(self, *, category, code: str=None, message: str=None, details=None, **kwargs) -> None: + super(JobSchedulingError, self).__init__(**kwargs) + self.category = category + self.code = code + self.message = message + self.details = details diff --git a/azure-batch/azure/batch/models/job_specification.py b/azure-batch/azure/batch/models/job_specification.py index b6a8af098e91..5ff5a6b0c937 100644 --- a/azure-batch/azure/batch/models/job_specification.py +++ b/azure-batch/azure/batch/models/job_specification.py @@ -15,6 +15,8 @@ class JobSpecification(Model): """Specifies details of the jobs to be created on a schedule. + All required parameters must be populated in order to send to Azure. + :param priority: The priority of jobs created under this schedule. Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. The default value is 0. This @@ -79,8 +81,8 @@ class JobSpecification(Model): different value. :type common_environment_settings: list[~azure.batch.models.EnvironmentSetting] - :param pool_info: The pool on which the Batch service runs the tasks of - jobs created under this schedule. + :param pool_info: Required. The pool on which the Batch service runs the + tasks of jobs created under this schedule. :type pool_info: ~azure.batch.models.PoolInformation :param metadata: A list of name-value pairs associated with each job created under this schedule as metadata. The Batch service does not assign @@ -107,17 +109,17 @@ class JobSpecification(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, pool_info, priority=None, display_name=None, uses_task_dependencies=None, on_all_tasks_complete=None, on_task_failure=None, constraints=None, job_manager_task=None, job_preparation_task=None, job_release_task=None, common_environment_settings=None, metadata=None): - super(JobSpecification, self).__init__() - self.priority = priority - self.display_name = display_name - self.uses_task_dependencies = uses_task_dependencies - self.on_all_tasks_complete = on_all_tasks_complete - self.on_task_failure = on_task_failure - self.constraints = constraints - self.job_manager_task = job_manager_task - self.job_preparation_task = job_preparation_task - self.job_release_task = job_release_task - self.common_environment_settings = common_environment_settings - self.pool_info = pool_info - self.metadata = metadata + def __init__(self, **kwargs): + super(JobSpecification, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.display_name = kwargs.get('display_name', None) + self.uses_task_dependencies = kwargs.get('uses_task_dependencies', None) + self.on_all_tasks_complete = kwargs.get('on_all_tasks_complete', None) + self.on_task_failure = kwargs.get('on_task_failure', None) + self.constraints = kwargs.get('constraints', None) + self.job_manager_task = kwargs.get('job_manager_task', None) + self.job_preparation_task = kwargs.get('job_preparation_task', None) + self.job_release_task = kwargs.get('job_release_task', None) + self.common_environment_settings = kwargs.get('common_environment_settings', None) + self.pool_info = kwargs.get('pool_info', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/job_specification_py3.py b/azure-batch/azure/batch/models/job_specification_py3.py new file mode 100644 index 000000000000..09484bf88c66 --- /dev/null +++ b/azure-batch/azure/batch/models/job_specification_py3.py @@ -0,0 +1,125 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobSpecification(Model): + """Specifies details of the jobs to be created on a schedule. + + All required parameters must be populated in order to send to Azure. + + :param priority: The priority of jobs created under this schedule. + Priority values can range from -1000 to 1000, with -1000 being the lowest + priority and 1000 being the highest priority. The default value is 0. This + priority is used as the default for all jobs under the job schedule. You + can update a job's priority after it has been created using by using the + update job API. + :type priority: int + :param display_name: The display name for jobs created under this + schedule. The name need not be unique and can contain any Unicode + characters up to a maximum length of 1024. + :type display_name: str + :param uses_task_dependencies: Whether tasks in the job can define + dependencies on each other. The default is false. + :type uses_task_dependencies: bool + :param on_all_tasks_complete: The action the Batch service should take + when all tasks in a job created under this schedule are in the completed + state. Note that if a job contains no tasks, then all tasks are considered + complete. This option is therefore most commonly used with a Job Manager + task; if you want to use automatic job termination without a Job Manager, + you should initially set onAllTasksComplete to noaction and update the job + properties to set onAllTasksComplete to terminatejob once you have + finished adding tasks. The default is noaction. Possible values include: + 'noAction', 'terminateJob' + :type on_all_tasks_complete: str or ~azure.batch.models.OnAllTasksComplete + :param on_task_failure: The action the Batch service should take when any + task fails in a job created under this schedule. A task is considered to + have failed if it have failed if has a failureInfo. A failureInfo is set + if the task completes with a non-zero exit code after exhausting its retry + count, or if there was an error starting the task, for example due to a + resource file download error. The default is noaction. Possible values + include: 'noAction', 'performExitOptionsJobAction' + :type on_task_failure: str or ~azure.batch.models.OnTaskFailure + :param constraints: The execution constraints for jobs created under this + schedule. + :type constraints: ~azure.batch.models.JobConstraints + :param job_manager_task: The details of a Job Manager task to be launched + when a job is started under this schedule. If the job does not specify a + Job Manager task, the user must explicitly add tasks to the job using the + Task API. If the job does specify a Job Manager task, the Batch service + creates the Job Manager task when the job is created, and will try to + schedule the Job Manager task before scheduling other tasks in the job. + :type job_manager_task: ~azure.batch.models.JobManagerTask + :param job_preparation_task: The Job Preparation task for jobs created + under this schedule. If a job has a Job Preparation task, the Batch + service will run the Job Preparation task on a compute node before + starting any tasks of that job on that compute node. + :type job_preparation_task: ~azure.batch.models.JobPreparationTask + :param job_release_task: The Job Release task for jobs created under this + schedule. The primary purpose of the Job Release task is to undo changes + to compute nodes made by the Job Preparation task. Example activities + include deleting local files, or shutting down services that were started + as part of job preparation. A Job Release task cannot be specified without + also specifying a Job Preparation task for the job. The Batch service runs + the Job Release task on the compute nodes that have run the Job + Preparation task. + :type job_release_task: ~azure.batch.models.JobReleaseTask + :param common_environment_settings: A list of common environment variable + settings. These environment variables are set for all tasks in jobs + created under this schedule (including the Job Manager, Job Preparation + and Job Release tasks). Individual tasks can override an environment + setting specified here by specifying the same setting name with a + different value. + :type common_environment_settings: + list[~azure.batch.models.EnvironmentSetting] + :param pool_info: Required. The pool on which the Batch service runs the + tasks of jobs created under this schedule. + :type pool_info: ~azure.batch.models.PoolInformation + :param metadata: A list of name-value pairs associated with each job + created under this schedule as metadata. The Batch service does not assign + any meaning to metadata; it is solely for the use of user code. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _validation = { + 'pool_info': {'required': True}, + } + + _attribute_map = { + 'priority': {'key': 'priority', 'type': 'int'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'uses_task_dependencies': {'key': 'usesTaskDependencies', 'type': 'bool'}, + 'on_all_tasks_complete': {'key': 'onAllTasksComplete', 'type': 'OnAllTasksComplete'}, + 'on_task_failure': {'key': 'onTaskFailure', 'type': 'OnTaskFailure'}, + 'constraints': {'key': 'constraints', 'type': 'JobConstraints'}, + 'job_manager_task': {'key': 'jobManagerTask', 'type': 'JobManagerTask'}, + 'job_preparation_task': {'key': 'jobPreparationTask', 'type': 'JobPreparationTask'}, + 'job_release_task': {'key': 'jobReleaseTask', 'type': 'JobReleaseTask'}, + 'common_environment_settings': {'key': 'commonEnvironmentSettings', 'type': '[EnvironmentSetting]'}, + 'pool_info': {'key': 'poolInfo', 'type': 'PoolInformation'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, pool_info, priority: int=None, display_name: str=None, uses_task_dependencies: bool=None, on_all_tasks_complete=None, on_task_failure=None, constraints=None, job_manager_task=None, job_preparation_task=None, job_release_task=None, common_environment_settings=None, metadata=None, **kwargs) -> None: + super(JobSpecification, self).__init__(**kwargs) + self.priority = priority + self.display_name = display_name + self.uses_task_dependencies = uses_task_dependencies + self.on_all_tasks_complete = on_all_tasks_complete + self.on_task_failure = on_task_failure + self.constraints = constraints + self.job_manager_task = job_manager_task + self.job_preparation_task = job_preparation_task + self.job_release_task = job_release_task + self.common_environment_settings = common_environment_settings + self.pool_info = pool_info + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/job_statistics.py b/azure-batch/azure/batch/models/job_statistics.py index c1ce4d1d98e8..ca95a31dba53 100644 --- a/azure-batch/azure/batch/models/job_statistics.py +++ b/azure-batch/azure/batch/models/job_statistics.py @@ -15,56 +15,59 @@ class JobStatistics(Model): """Resource usage statistics for a job. - :param url: The URL of the statistics. + All required parameters must be populated in order to send to Azure. + + :param url: Required. The URL of the statistics. :type url: str - :param start_time: The start time of the time range covered by the - statistics. + :param start_time: Required. The start time of the time range covered by + the statistics. :type start_time: datetime - :param last_update_time: The time at which the statistics were last - updated. All statistics are limited to the range between startTime and - lastUpdateTime. + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. :type last_update_time: datetime - :param user_cpu_time: The total user mode CPU time (summed across all - cores and all compute nodes) consumed by all tasks in the job. + :param user_cpu_time: Required. The total user mode CPU time (summed + across all cores and all compute nodes) consumed by all tasks in the job. :type user_cpu_time: timedelta - :param kernel_cpu_time: The total kernel mode CPU time (summed across all - cores and all compute nodes) consumed by all tasks in the job. + :param kernel_cpu_time: Required. The total kernel mode CPU time (summed + across all cores and all compute nodes) consumed by all tasks in the job. :type kernel_cpu_time: timedelta - :param wall_clock_time: The total wall clock time of all tasks in the job. - The wall clock time is the elapsed time from when the task started running - on a compute node to when it finished (or to the last time the statistics - were updated, if the task had not finished by then). If a task was - retried, this includes the wall clock time of all the task retries. + :param wall_clock_time: Required. The total wall clock time of all tasks + in the job. The wall clock time is the elapsed time from when the task + started running on a compute node to when it finished (or to the last time + the statistics were updated, if the task had not finished by then). If a + task was retried, this includes the wall clock time of all the task + retries. :type wall_clock_time: timedelta - :param read_iops: The total number of disk read operations made by all - tasks in the job. + :param read_iops: Required. The total number of disk read operations made + by all tasks in the job. :type read_iops: long - :param write_iops: The total number of disk write operations made by all - tasks in the job. + :param write_iops: Required. The total number of disk write operations + made by all tasks in the job. :type write_iops: long - :param read_io_gi_b: The total amount of data in GiB read from disk by all - tasks in the job. + :param read_io_gi_b: Required. The total amount of data in GiB read from + disk by all tasks in the job. :type read_io_gi_b: float - :param write_io_gi_b: The total amount of data in GiB written to disk by - all tasks in the job. + :param write_io_gi_b: Required. The total amount of data in GiB written to + disk by all tasks in the job. :type write_io_gi_b: float - :param num_succeeded_tasks: The total number of tasks successfully - completed in the job during the given time range. A task completes - successfully if it returns exit code 0. + :param num_succeeded_tasks: Required. The total number of tasks + successfully completed in the job during the given time range. A task + completes successfully if it returns exit code 0. :type num_succeeded_tasks: long - :param num_failed_tasks: The total number of tasks in the job that failed - during the given time range. A task fails if it exhausts its maximum retry - count without returning exit code 0. + :param num_failed_tasks: Required. The total number of tasks in the job + that failed during the given time range. A task fails if it exhausts its + maximum retry count without returning exit code 0. :type num_failed_tasks: long - :param num_task_retries: The total number of retries on all the tasks in - the job during the given time range. + :param num_task_retries: Required. The total number of retries on all the + tasks in the job during the given time range. :type num_task_retries: long - :param wait_time: The total wait time of all tasks in the job. The wait - time for a task is defined as the elapsed time between the creation of the - task and the start of task execution. (If the task is retried due to - failures, the wait time is the time to the most recent task execution.) - This value is only reported in the account lifetime statistics; it is not - included in the job statistics. + :param wait_time: Required. The total wait time of all tasks in the job. + The wait time for a task is defined as the elapsed time between the + creation of the task and the start of task execution. (If the task is + retried due to failures, the wait time is the time to the most recent task + execution.) This value is only reported in the account lifetime + statistics; it is not included in the job statistics. :type wait_time: timedelta """ @@ -102,19 +105,19 @@ class JobStatistics(Model): 'wait_time': {'key': 'waitTime', 'type': 'duration'}, } - def __init__(self, url, start_time, last_update_time, user_cpu_time, kernel_cpu_time, wall_clock_time, read_iops, write_iops, read_io_gi_b, write_io_gi_b, num_succeeded_tasks, num_failed_tasks, num_task_retries, wait_time): - super(JobStatistics, self).__init__() - self.url = url - self.start_time = start_time - self.last_update_time = last_update_time - self.user_cpu_time = user_cpu_time - self.kernel_cpu_time = kernel_cpu_time - self.wall_clock_time = wall_clock_time - self.read_iops = read_iops - self.write_iops = write_iops - self.read_io_gi_b = read_io_gi_b - self.write_io_gi_b = write_io_gi_b - self.num_succeeded_tasks = num_succeeded_tasks - self.num_failed_tasks = num_failed_tasks - self.num_task_retries = num_task_retries - self.wait_time = wait_time + def __init__(self, **kwargs): + super(JobStatistics, self).__init__(**kwargs) + self.url = kwargs.get('url', None) + self.start_time = kwargs.get('start_time', None) + self.last_update_time = kwargs.get('last_update_time', None) + self.user_cpu_time = kwargs.get('user_cpu_time', None) + self.kernel_cpu_time = kwargs.get('kernel_cpu_time', None) + self.wall_clock_time = kwargs.get('wall_clock_time', None) + self.read_iops = kwargs.get('read_iops', None) + self.write_iops = kwargs.get('write_iops', None) + self.read_io_gi_b = kwargs.get('read_io_gi_b', None) + self.write_io_gi_b = kwargs.get('write_io_gi_b', None) + self.num_succeeded_tasks = kwargs.get('num_succeeded_tasks', None) + self.num_failed_tasks = kwargs.get('num_failed_tasks', None) + self.num_task_retries = kwargs.get('num_task_retries', None) + self.wait_time = kwargs.get('wait_time', None) diff --git a/azure-batch/azure/batch/models/job_statistics_py3.py b/azure-batch/azure/batch/models/job_statistics_py3.py new file mode 100644 index 000000000000..2f55b15aca3f --- /dev/null +++ b/azure-batch/azure/batch/models/job_statistics_py3.py @@ -0,0 +1,123 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobStatistics(Model): + """Resource usage statistics for a job. + + All required parameters must be populated in order to send to Azure. + + :param url: Required. The URL of the statistics. + :type url: str + :param start_time: Required. The start time of the time range covered by + the statistics. + :type start_time: datetime + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. + :type last_update_time: datetime + :param user_cpu_time: Required. The total user mode CPU time (summed + across all cores and all compute nodes) consumed by all tasks in the job. + :type user_cpu_time: timedelta + :param kernel_cpu_time: Required. The total kernel mode CPU time (summed + across all cores and all compute nodes) consumed by all tasks in the job. + :type kernel_cpu_time: timedelta + :param wall_clock_time: Required. The total wall clock time of all tasks + in the job. The wall clock time is the elapsed time from when the task + started running on a compute node to when it finished (or to the last time + the statistics were updated, if the task had not finished by then). If a + task was retried, this includes the wall clock time of all the task + retries. + :type wall_clock_time: timedelta + :param read_iops: Required. The total number of disk read operations made + by all tasks in the job. + :type read_iops: long + :param write_iops: Required. The total number of disk write operations + made by all tasks in the job. + :type write_iops: long + :param read_io_gi_b: Required. The total amount of data in GiB read from + disk by all tasks in the job. + :type read_io_gi_b: float + :param write_io_gi_b: Required. The total amount of data in GiB written to + disk by all tasks in the job. + :type write_io_gi_b: float + :param num_succeeded_tasks: Required. The total number of tasks + successfully completed in the job during the given time range. A task + completes successfully if it returns exit code 0. + :type num_succeeded_tasks: long + :param num_failed_tasks: Required. The total number of tasks in the job + that failed during the given time range. A task fails if it exhausts its + maximum retry count without returning exit code 0. + :type num_failed_tasks: long + :param num_task_retries: Required. The total number of retries on all the + tasks in the job during the given time range. + :type num_task_retries: long + :param wait_time: Required. The total wait time of all tasks in the job. + The wait time for a task is defined as the elapsed time between the + creation of the task and the start of task execution. (If the task is + retried due to failures, the wait time is the time to the most recent task + execution.) This value is only reported in the account lifetime + statistics; it is not included in the job statistics. + :type wait_time: timedelta + """ + + _validation = { + 'url': {'required': True}, + 'start_time': {'required': True}, + 'last_update_time': {'required': True}, + 'user_cpu_time': {'required': True}, + 'kernel_cpu_time': {'required': True}, + 'wall_clock_time': {'required': True}, + 'read_iops': {'required': True}, + 'write_iops': {'required': True}, + 'read_io_gi_b': {'required': True}, + 'write_io_gi_b': {'required': True}, + 'num_succeeded_tasks': {'required': True}, + 'num_failed_tasks': {'required': True}, + 'num_task_retries': {'required': True}, + 'wait_time': {'required': True}, + } + + _attribute_map = { + 'url': {'key': 'url', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_update_time': {'key': 'lastUpdateTime', 'type': 'iso-8601'}, + 'user_cpu_time': {'key': 'userCPUTime', 'type': 'duration'}, + 'kernel_cpu_time': {'key': 'kernelCPUTime', 'type': 'duration'}, + 'wall_clock_time': {'key': 'wallClockTime', 'type': 'duration'}, + 'read_iops': {'key': 'readIOps', 'type': 'long'}, + 'write_iops': {'key': 'writeIOps', 'type': 'long'}, + 'read_io_gi_b': {'key': 'readIOGiB', 'type': 'float'}, + 'write_io_gi_b': {'key': 'writeIOGiB', 'type': 'float'}, + 'num_succeeded_tasks': {'key': 'numSucceededTasks', 'type': 'long'}, + 'num_failed_tasks': {'key': 'numFailedTasks', 'type': 'long'}, + 'num_task_retries': {'key': 'numTaskRetries', 'type': 'long'}, + 'wait_time': {'key': 'waitTime', 'type': 'duration'}, + } + + def __init__(self, *, url: str, start_time, last_update_time, user_cpu_time, kernel_cpu_time, wall_clock_time, read_iops: int, write_iops: int, read_io_gi_b: float, write_io_gi_b: float, num_succeeded_tasks: int, num_failed_tasks: int, num_task_retries: int, wait_time, **kwargs) -> None: + super(JobStatistics, self).__init__(**kwargs) + self.url = url + self.start_time = start_time + self.last_update_time = last_update_time + self.user_cpu_time = user_cpu_time + self.kernel_cpu_time = kernel_cpu_time + self.wall_clock_time = wall_clock_time + self.read_iops = read_iops + self.write_iops = write_iops + self.read_io_gi_b = read_io_gi_b + self.write_io_gi_b = write_io_gi_b + self.num_succeeded_tasks = num_succeeded_tasks + self.num_failed_tasks = num_failed_tasks + self.num_task_retries = num_task_retries + self.wait_time = wait_time diff --git a/azure-batch/azure/batch/models/job_terminate_options.py b/azure-batch/azure/batch/models/job_terminate_options.py index 63689889ef70..b858c4045284 100644 --- a/azure-batch/azure/batch/models/job_terminate_options.py +++ b/azure-batch/azure/batch/models/job_terminate_options.py @@ -50,13 +50,24 @@ class JobTerminateOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobTerminateOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobTerminateOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_terminate_options_py3.py b/azure-batch/azure/batch/models/job_terminate_options_py3.py new file mode 100644 index 000000000000..77173bcc4971 --- /dev/null +++ b/azure-batch/azure/batch/models/job_terminate_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobTerminateOptions(Model): + """Additional parameters for terminate operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobTerminateOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_terminate_parameter.py b/azure-batch/azure/batch/models/job_terminate_parameter.py index 1fe22775e9fd..4be6eaac6509 100644 --- a/azure-batch/azure/batch/models/job_terminate_parameter.py +++ b/azure-batch/azure/batch/models/job_terminate_parameter.py @@ -24,6 +24,6 @@ class JobTerminateParameter(Model): 'terminate_reason': {'key': 'terminateReason', 'type': 'str'}, } - def __init__(self, terminate_reason=None): - super(JobTerminateParameter, self).__init__() - self.terminate_reason = terminate_reason + def __init__(self, **kwargs): + super(JobTerminateParameter, self).__init__(**kwargs) + self.terminate_reason = kwargs.get('terminate_reason', None) diff --git a/azure-batch/azure/batch/models/job_terminate_parameter_py3.py b/azure-batch/azure/batch/models/job_terminate_parameter_py3.py new file mode 100644 index 000000000000..4a4965552291 --- /dev/null +++ b/azure-batch/azure/batch/models/job_terminate_parameter_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobTerminateParameter(Model): + """Options when terminating a job. + + :param terminate_reason: The text you want to appear as the job's + TerminateReason. The default is 'UserTerminate'. + :type terminate_reason: str + """ + + _attribute_map = { + 'terminate_reason': {'key': 'terminateReason', 'type': 'str'}, + } + + def __init__(self, *, terminate_reason: str=None, **kwargs) -> None: + super(JobTerminateParameter, self).__init__(**kwargs) + self.terminate_reason = terminate_reason diff --git a/azure-batch/azure/batch/models/job_update_options.py b/azure-batch/azure/batch/models/job_update_options.py index f01a8853bbce..a11f18ab4d33 100644 --- a/azure-batch/azure/batch/models/job_update_options.py +++ b/azure-batch/azure/batch/models/job_update_options.py @@ -50,13 +50,24 @@ class JobUpdateOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(JobUpdateOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(JobUpdateOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/job_update_options_py3.py b/azure-batch/azure/batch/models/job_update_options_py3.py new file mode 100644 index 000000000000..61a47c218b78 --- /dev/null +++ b/azure-batch/azure/batch/models/job_update_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobUpdateOptions(Model): + """Additional parameters for update operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(JobUpdateOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/job_update_parameter.py b/azure-batch/azure/batch/models/job_update_parameter.py index 07be542de7bf..35f830630d8c 100644 --- a/azure-batch/azure/batch/models/job_update_parameter.py +++ b/azure-batch/azure/batch/models/job_update_parameter.py @@ -15,6 +15,8 @@ class JobUpdateParameter(Model): """The set of changes to be made to a job. + All required parameters must be populated in order to send to Azure. + :param priority: The priority of the job. Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. If omitted, it is set to the default value 0. @@ -22,12 +24,13 @@ class JobUpdateParameter(Model): :param constraints: The execution constraints for the job. If omitted, the constraints are cleared. :type constraints: ~azure.batch.models.JobConstraints - :param pool_info: The pool on which the Batch service runs the job's - tasks. You may change the pool for a job only when the job is disabled. - The Update Job call will fail if you include the poolInfo element and the - job is not disabled. If you specify an autoPoolSpecification specification - in the poolInfo, only the keepAlive property can be updated, and then only - if the auto pool has a poolLifetimeOption of job. + :param pool_info: Required. The pool on which the Batch service runs the + job's tasks. You may change the pool for a job only when the job is + disabled. The Update Job call will fail if you include the poolInfo + element and the job is not disabled. If you specify an + autoPoolSpecification specification in the poolInfo, only the keepAlive + property can be updated, and then only if the auto pool has a + poolLifetimeOption of job. :type pool_info: ~azure.batch.models.PoolInformation :param metadata: A list of name-value pairs associated with the job as metadata. If omitted, it takes the default value of an empty list; in @@ -60,10 +63,10 @@ class JobUpdateParameter(Model): 'on_all_tasks_complete': {'key': 'onAllTasksComplete', 'type': 'OnAllTasksComplete'}, } - def __init__(self, pool_info, priority=None, constraints=None, metadata=None, on_all_tasks_complete=None): - super(JobUpdateParameter, self).__init__() - self.priority = priority - self.constraints = constraints - self.pool_info = pool_info - self.metadata = metadata - self.on_all_tasks_complete = on_all_tasks_complete + def __init__(self, **kwargs): + super(JobUpdateParameter, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.constraints = kwargs.get('constraints', None) + self.pool_info = kwargs.get('pool_info', None) + self.metadata = kwargs.get('metadata', None) + self.on_all_tasks_complete = kwargs.get('on_all_tasks_complete', None) diff --git a/azure-batch/azure/batch/models/job_update_parameter_py3.py b/azure-batch/azure/batch/models/job_update_parameter_py3.py new file mode 100644 index 000000000000..9dce5ea1ff94 --- /dev/null +++ b/azure-batch/azure/batch/models/job_update_parameter_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JobUpdateParameter(Model): + """The set of changes to be made to a job. + + All required parameters must be populated in order to send to Azure. + + :param priority: The priority of the job. Priority values can range from + -1000 to 1000, with -1000 being the lowest priority and 1000 being the + highest priority. If omitted, it is set to the default value 0. + :type priority: int + :param constraints: The execution constraints for the job. If omitted, the + constraints are cleared. + :type constraints: ~azure.batch.models.JobConstraints + :param pool_info: Required. The pool on which the Batch service runs the + job's tasks. You may change the pool for a job only when the job is + disabled. The Update Job call will fail if you include the poolInfo + element and the job is not disabled. If you specify an + autoPoolSpecification specification in the poolInfo, only the keepAlive + property can be updated, and then only if the auto pool has a + poolLifetimeOption of job. + :type pool_info: ~azure.batch.models.PoolInformation + :param metadata: A list of name-value pairs associated with the job as + metadata. If omitted, it takes the default value of an empty list; in + effect, any existing metadata is deleted. + :type metadata: list[~azure.batch.models.MetadataItem] + :param on_all_tasks_complete: The action the Batch service should take + when all tasks in the job are in the completed state. If omitted, the + completion behavior is set to noaction. If the current value is + terminatejob, this is an error because a job's completion behavior may not + be changed from terminatejob to noaction. You may not change the value + from terminatejob to noaction - that is, once you have engaged automatic + job termination, you cannot turn it off again. If you try to do this, the + request fails and Batch returns status code 400 (Bad Request) and an + 'invalid property value' error response. If you do not specify this + element in a PUT request, it is equivalent to passing noaction. This is an + error if the current value is terminatejob. Possible values include: + 'noAction', 'terminateJob' + :type on_all_tasks_complete: str or ~azure.batch.models.OnAllTasksComplete + """ + + _validation = { + 'pool_info': {'required': True}, + } + + _attribute_map = { + 'priority': {'key': 'priority', 'type': 'int'}, + 'constraints': {'key': 'constraints', 'type': 'JobConstraints'}, + 'pool_info': {'key': 'poolInfo', 'type': 'PoolInformation'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + 'on_all_tasks_complete': {'key': 'onAllTasksComplete', 'type': 'OnAllTasksComplete'}, + } + + def __init__(self, *, pool_info, priority: int=None, constraints=None, metadata=None, on_all_tasks_complete=None, **kwargs) -> None: + super(JobUpdateParameter, self).__init__(**kwargs) + self.priority = priority + self.constraints = constraints + self.pool_info = pool_info + self.metadata = metadata + self.on_all_tasks_complete = on_all_tasks_complete diff --git a/azure-batch/azure/batch/models/linux_user_configuration.py b/azure-batch/azure/batch/models/linux_user_configuration.py index 0bfab5417eaf..6ba1218254d1 100644 --- a/azure-batch/azure/batch/models/linux_user_configuration.py +++ b/azure-batch/azure/batch/models/linux_user_configuration.py @@ -40,8 +40,8 @@ class LinuxUserConfiguration(Model): 'ssh_private_key': {'key': 'sshPrivateKey', 'type': 'str'}, } - def __init__(self, uid=None, gid=None, ssh_private_key=None): - super(LinuxUserConfiguration, self).__init__() - self.uid = uid - self.gid = gid - self.ssh_private_key = ssh_private_key + def __init__(self, **kwargs): + super(LinuxUserConfiguration, self).__init__(**kwargs) + self.uid = kwargs.get('uid', None) + self.gid = kwargs.get('gid', None) + self.ssh_private_key = kwargs.get('ssh_private_key', None) diff --git a/azure-batch/azure/batch/models/linux_user_configuration_py3.py b/azure-batch/azure/batch/models/linux_user_configuration_py3.py new file mode 100644 index 000000000000..cb35b4c40a9f --- /dev/null +++ b/azure-batch/azure/batch/models/linux_user_configuration_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LinuxUserConfiguration(Model): + """Properties used to create a user account on a Linux node. + + :param uid: The user ID of the user account. The uid and gid properties + must be specified together or not at all. If not specified the underlying + operating system picks the uid. + :type uid: int + :param gid: The group ID for the user account. The uid and gid properties + must be specified together or not at all. If not specified the underlying + operating system picks the gid. + :type gid: int + :param ssh_private_key: The SSH private key for the user account. The + private key must not be password protected. The private key is used to + automatically configure asymmetric-key based authentication for SSH + between nodes in a Linux pool when the pool's enableInterNodeCommunication + property is true (it is ignored if enableInterNodeCommunication is false). + It does this by placing the key pair into the user's .ssh directory. If + not specified, password-less SSH is not configured between nodes (no + modification of the user's .ssh directory is done). + :type ssh_private_key: str + """ + + _attribute_map = { + 'uid': {'key': 'uid', 'type': 'int'}, + 'gid': {'key': 'gid', 'type': 'int'}, + 'ssh_private_key': {'key': 'sshPrivateKey', 'type': 'str'}, + } + + def __init__(self, *, uid: int=None, gid: int=None, ssh_private_key: str=None, **kwargs) -> None: + super(LinuxUserConfiguration, self).__init__(**kwargs) + self.uid = uid + self.gid = gid + self.ssh_private_key = ssh_private_key diff --git a/azure-batch/azure/batch/models/metadata_item.py b/azure-batch/azure/batch/models/metadata_item.py index c290040874cf..d1d203e892b5 100644 --- a/azure-batch/azure/batch/models/metadata_item.py +++ b/azure-batch/azure/batch/models/metadata_item.py @@ -18,9 +18,11 @@ class MetadataItem(Model): The Batch service does not assign any meaning to this metadata; it is solely for the use of user code. - :param name: The name of the metadata item. + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the metadata item. :type name: str - :param value: The value of the metadata item. + :param value: Required. The value of the metadata item. :type value: str """ @@ -34,7 +36,7 @@ class MetadataItem(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, name, value): - super(MetadataItem, self).__init__() - self.name = name - self.value = value + def __init__(self, **kwargs): + super(MetadataItem, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-batch/azure/batch/models/metadata_item_py3.py b/azure-batch/azure/batch/models/metadata_item_py3.py new file mode 100644 index 000000000000..3d127cd16290 --- /dev/null +++ b/azure-batch/azure/batch/models/metadata_item_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetadataItem(Model): + """A name-value pair associated with a Batch service resource. + + The Batch service does not assign any meaning to this metadata; it is + solely for the use of user code. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the metadata item. + :type name: str + :param value: Required. The value of the metadata item. + :type value: str + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, name: str, value: str, **kwargs) -> None: + super(MetadataItem, self).__init__(**kwargs) + self.name = name + self.value = value diff --git a/azure-batch/azure/batch/models/multi_instance_settings.py b/azure-batch/azure/batch/models/multi_instance_settings.py index 7485dce25d5b..1fad0897388d 100644 --- a/azure-batch/azure/batch/models/multi_instance_settings.py +++ b/azure-batch/azure/batch/models/multi_instance_settings.py @@ -17,14 +17,16 @@ class MultiInstanceSettings(Model): Multi-instance tasks are commonly used to support MPI tasks. + All required parameters must be populated in order to send to Azure. + :param number_of_instances: The number of compute nodes required by the task. If omitted, the default is 1. :type number_of_instances: int - :param coordination_command_line: The command line to run on all the - compute nodes to enable them to coordinate when the primary runs the main - task command. A typical coordination command line launches a background - service and verifies that the service is ready to process inter-node - messages. + :param coordination_command_line: Required. The command line to run on all + the compute nodes to enable them to coordinate when the primary runs the + main task command. A typical coordination command line launches a + background service and verifies that the service is ready to process + inter-node messages. :type coordination_command_line: str :param common_resource_files: A list of files that the Batch service will download before running the coordination command line. The difference @@ -33,7 +35,11 @@ class MultiInstanceSettings(Model): whereas task resource files are downloaded only for the primary. Also note that these resource files are not downloaded to the task working directory, but instead are downloaded to the task root directory (one - directory above the working directory). + directory above the working directory). There is a maximum size for the + list of resource files. When the max size is exceeded, the request will + fail and the response error code will be RequestEntityTooLarge. If this + occurs, the collection of ResourceFiles must be reduced in size. This can + be achieved using .zip files, Application Packages, or Docker Containers. :type common_resource_files: list[~azure.batch.models.ResourceFile] """ @@ -47,8 +53,8 @@ class MultiInstanceSettings(Model): 'common_resource_files': {'key': 'commonResourceFiles', 'type': '[ResourceFile]'}, } - def __init__(self, coordination_command_line, number_of_instances=None, common_resource_files=None): - super(MultiInstanceSettings, self).__init__() - self.number_of_instances = number_of_instances - self.coordination_command_line = coordination_command_line - self.common_resource_files = common_resource_files + def __init__(self, **kwargs): + super(MultiInstanceSettings, self).__init__(**kwargs) + self.number_of_instances = kwargs.get('number_of_instances', None) + self.coordination_command_line = kwargs.get('coordination_command_line', None) + self.common_resource_files = kwargs.get('common_resource_files', None) diff --git a/azure-batch/azure/batch/models/multi_instance_settings_py3.py b/azure-batch/azure/batch/models/multi_instance_settings_py3.py new file mode 100644 index 000000000000..0ea3de8e31ed --- /dev/null +++ b/azure-batch/azure/batch/models/multi_instance_settings_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MultiInstanceSettings(Model): + """Settings which specify how to run a multi-instance task. + + Multi-instance tasks are commonly used to support MPI tasks. + + All required parameters must be populated in order to send to Azure. + + :param number_of_instances: The number of compute nodes required by the + task. If omitted, the default is 1. + :type number_of_instances: int + :param coordination_command_line: Required. The command line to run on all + the compute nodes to enable them to coordinate when the primary runs the + main task command. A typical coordination command line launches a + background service and verifies that the service is ready to process + inter-node messages. + :type coordination_command_line: str + :param common_resource_files: A list of files that the Batch service will + download before running the coordination command line. The difference + between common resource files and task resource files is that common + resource files are downloaded for all subtasks including the primary, + whereas task resource files are downloaded only for the primary. Also note + that these resource files are not downloaded to the task working + directory, but instead are downloaded to the task root directory (one + directory above the working directory). There is a maximum size for the + list of resource files. When the max size is exceeded, the request will + fail and the response error code will be RequestEntityTooLarge. If this + occurs, the collection of ResourceFiles must be reduced in size. This can + be achieved using .zip files, Application Packages, or Docker Containers. + :type common_resource_files: list[~azure.batch.models.ResourceFile] + """ + + _validation = { + 'coordination_command_line': {'required': True}, + } + + _attribute_map = { + 'number_of_instances': {'key': 'numberOfInstances', 'type': 'int'}, + 'coordination_command_line': {'key': 'coordinationCommandLine', 'type': 'str'}, + 'common_resource_files': {'key': 'commonResourceFiles', 'type': '[ResourceFile]'}, + } + + def __init__(self, *, coordination_command_line: str, number_of_instances: int=None, common_resource_files=None, **kwargs) -> None: + super(MultiInstanceSettings, self).__init__(**kwargs) + self.number_of_instances = number_of_instances + self.coordination_command_line = coordination_command_line + self.common_resource_files = common_resource_files diff --git a/azure-batch/azure/batch/models/name_value_pair.py b/azure-batch/azure/batch/models/name_value_pair.py index 34db94e4d198..d2775a33c3be 100644 --- a/azure-batch/azure/batch/models/name_value_pair.py +++ b/azure-batch/azure/batch/models/name_value_pair.py @@ -26,7 +26,7 @@ class NameValuePair(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, name=None, value=None): - super(NameValuePair, self).__init__() - self.name = name - self.value = value + def __init__(self, **kwargs): + super(NameValuePair, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-batch/azure/batch/models/name_value_pair_py3.py b/azure-batch/azure/batch/models/name_value_pair_py3.py new file mode 100644 index 000000000000..9e508e565226 --- /dev/null +++ b/azure-batch/azure/batch/models/name_value_pair_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameValuePair(Model): + """Represents a name-value pair. + + :param name: The name in the name-value pair. + :type name: str + :param value: The value in the name-value pair. + :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 diff --git a/azure-batch/azure/batch/models/network_configuration.py b/azure-batch/azure/batch/models/network_configuration.py index afd49f02b004..2bb54a8e3f64 100644 --- a/azure-batch/azure/batch/models/network_configuration.py +++ b/azure-batch/azure/batch/models/network_configuration.py @@ -54,7 +54,7 @@ class NetworkConfiguration(Model): 'endpoint_configuration': {'key': 'endpointConfiguration', 'type': 'PoolEndpointConfiguration'}, } - def __init__(self, subnet_id=None, endpoint_configuration=None): - super(NetworkConfiguration, self).__init__() - self.subnet_id = subnet_id - self.endpoint_configuration = endpoint_configuration + def __init__(self, **kwargs): + super(NetworkConfiguration, self).__init__(**kwargs) + self.subnet_id = kwargs.get('subnet_id', None) + self.endpoint_configuration = kwargs.get('endpoint_configuration', None) diff --git a/azure-batch/azure/batch/models/network_configuration_py3.py b/azure-batch/azure/batch/models/network_configuration_py3.py new file mode 100644 index 000000000000..475d1adcabda --- /dev/null +++ b/azure-batch/azure/batch/models/network_configuration_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfiguration(Model): + """The network configuration for a pool. + + :param subnet_id: The ARM resource identifier of the virtual network + subnet which the compute nodes of the pool will join. This is of the form + /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. + The virtual network must be in the same region and subscription as the + Azure Batch account. The specified subnet should have enough free IP + addresses to accommodate the number of nodes in the pool. If the subnet + doesn't have enough free IP addresses, the pool will partially allocate + compute nodes, and a resize error will occur. The 'MicrosoftAzureBatch' + service principal must have the 'Classic Virtual Machine Contributor' + Role-Based Access Control (RBAC) role for the specified VNet. The + specified subnet must allow communication from the Azure Batch service to + be able to schedule tasks on the compute nodes. This can be verified by + checking if the specified VNet has any associated Network Security Groups + (NSG). If communication to the compute nodes in the specified subnet is + denied by an NSG, then the Batch service will set the state of the compute + nodes to unusable. For pools created with virtualMachineConfiguration only + ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported, + but for pools created with cloudServiceConfiguration both ARM and classic + virtual networks are supported. If the specified VNet has any associated + Network Security Groups (NSG), then a few reserved system ports must be + enabled for inbound communication. For pools created with a virtual + machine configuration, enable ports 29876 and 29877, as well as port 22 + for Linux and port 3389 for Windows. For pools created with a cloud + service configuration, enable ports 10100, 20100, and 30100. Also enable + outbound connections to Azure Storage on port 443. For more details see: + https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration + :type subnet_id: str + :param endpoint_configuration: The configuration for endpoints on compute + nodes in the Batch pool. Pool endpoint configuration is only supported on + pools with the virtualMachineConfiguration property. + :type endpoint_configuration: + ~azure.batch.models.PoolEndpointConfiguration + """ + + _attribute_map = { + 'subnet_id': {'key': 'subnetId', 'type': 'str'}, + 'endpoint_configuration': {'key': 'endpointConfiguration', 'type': 'PoolEndpointConfiguration'}, + } + + def __init__(self, *, subnet_id: str=None, endpoint_configuration=None, **kwargs) -> None: + super(NetworkConfiguration, self).__init__(**kwargs) + self.subnet_id = subnet_id + self.endpoint_configuration = endpoint_configuration diff --git a/azure-batch/azure/batch/models/network_security_group_rule.py b/azure-batch/azure/batch/models/network_security_group_rule.py index b119cded8261..569693bf55ed 100644 --- a/azure-batch/azure/batch/models/network_security_group_rule.py +++ b/azure-batch/azure/batch/models/network_security_group_rule.py @@ -15,21 +15,24 @@ class NetworkSecurityGroupRule(Model): """A network security group rule to apply to an inbound endpoint. - :param priority: The priority for this rule. Priorities within a pool must - be unique and are evaluated in order of priority. The lower the number the - higher the priority. For example, rules could be specified with order - numbers of 150, 250, and 350. The rule with the order number of 150 takes - precedence over the rule that has an order of 250. Allowed priorities are - 150 to 3500. If any reserved or duplicate values are provided the request - fails with HTTP status code 400. + All required parameters must be populated in order to send to Azure. + + :param priority: Required. The priority for this rule. Priorities within a + pool must be unique and are evaluated in order of priority. The lower the + number the higher the priority. For example, rules could be specified with + order numbers of 150, 250, and 350. The rule with the order number of 150 + takes precedence over the rule that has an order of 250. Allowed + priorities are 150 to 3500. If any reserved or duplicate values are + provided the request fails with HTTP status code 400. :type priority: int - :param access: The action that should be taken for a specified IP address, - subnet range or tag. Possible values include: 'allow', 'deny' + :param access: Required. The action that should be taken for a specified + IP address, subnet range or tag. Possible values include: 'allow', 'deny' :type access: str or ~azure.batch.models.NetworkSecurityGroupRuleAccess - :param source_address_prefix: The source address prefix or tag to match - for the rule. Valid values are a single IP address (i.e. 10.10.10.10), IP - subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If - any other values are provided the request fails with HTTP status code 400. + :param source_address_prefix: Required. The source address prefix or tag + to match for the rule. Valid values are a single IP address (i.e. + 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all + addresses). If any other values are provided the request fails with HTTP + status code 400. :type source_address_prefix: str """ @@ -45,8 +48,8 @@ class NetworkSecurityGroupRule(Model): 'source_address_prefix': {'key': 'sourceAddressPrefix', 'type': 'str'}, } - def __init__(self, priority, access, source_address_prefix): - super(NetworkSecurityGroupRule, self).__init__() - self.priority = priority - self.access = access - self.source_address_prefix = source_address_prefix + def __init__(self, **kwargs): + super(NetworkSecurityGroupRule, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.access = kwargs.get('access', None) + self.source_address_prefix = kwargs.get('source_address_prefix', None) diff --git a/azure-batch/azure/batch/models/network_security_group_rule_py3.py b/azure-batch/azure/batch/models/network_security_group_rule_py3.py new file mode 100644 index 000000000000..9fec92baec7a --- /dev/null +++ b/azure-batch/azure/batch/models/network_security_group_rule_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityGroupRule(Model): + """A network security group rule to apply to an inbound endpoint. + + All required parameters must be populated in order to send to Azure. + + :param priority: Required. The priority for this rule. Priorities within a + pool must be unique and are evaluated in order of priority. The lower the + number the higher the priority. For example, rules could be specified with + order numbers of 150, 250, and 350. The rule with the order number of 150 + takes precedence over the rule that has an order of 250. Allowed + priorities are 150 to 3500. If any reserved or duplicate values are + provided the request fails with HTTP status code 400. + :type priority: int + :param access: Required. The action that should be taken for a specified + IP address, subnet range or tag. Possible values include: 'allow', 'deny' + :type access: str or ~azure.batch.models.NetworkSecurityGroupRuleAccess + :param source_address_prefix: Required. The source address prefix or tag + to match for the rule. Valid values are a single IP address (i.e. + 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all + addresses). If any other values are provided the request fails with HTTP + status code 400. + :type source_address_prefix: str + """ + + _validation = { + 'priority': {'required': True}, + 'access': {'required': True}, + 'source_address_prefix': {'required': True}, + } + + _attribute_map = { + 'priority': {'key': 'priority', 'type': 'int'}, + 'access': {'key': 'access', 'type': 'NetworkSecurityGroupRuleAccess'}, + 'source_address_prefix': {'key': 'sourceAddressPrefix', 'type': 'str'}, + } + + def __init__(self, *, priority: int, access, source_address_prefix: str, **kwargs) -> None: + super(NetworkSecurityGroupRule, self).__init__(**kwargs) + self.priority = priority + self.access = access + self.source_address_prefix = source_address_prefix diff --git a/azure-batch/azure/batch/models/node_agent_information.py b/azure-batch/azure/batch/models/node_agent_information.py new file mode 100644 index 000000000000..0d61a707c779 --- /dev/null +++ b/azure-batch/azure/batch/models/node_agent_information.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeAgentInformation(Model): + """Information about the node agent. + + The Batch node agent is a program that runs on each node in the pool and + provides Batch capability on the compute node. + + All required parameters must be populated in order to send to Azure. + + :param version: Required. The version of the Batch node agent running on + the compute node. This version number can be checked against the node + agent release notes located at + https://github.com/Azure/Batch/blob/master/changelogs/nodeagent/CHANGELOG.md. + :type version: str + :param last_update_time: Required. The time when the node agent was + updated on the compute node. This is the most recent time that the node + agent was updated to a new version. + :type last_update_time: datetime + """ + + _validation = { + 'version': {'required': True}, + 'last_update_time': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'last_update_time': {'key': 'lastUpdateTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(NodeAgentInformation, self).__init__(**kwargs) + self.version = kwargs.get('version', None) + self.last_update_time = kwargs.get('last_update_time', None) diff --git a/azure-batch/azure/batch/models/node_agent_information_py3.py b/azure-batch/azure/batch/models/node_agent_information_py3.py new file mode 100644 index 000000000000..770e3ca529ce --- /dev/null +++ b/azure-batch/azure/batch/models/node_agent_information_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeAgentInformation(Model): + """Information about the node agent. + + The Batch node agent is a program that runs on each node in the pool and + provides Batch capability on the compute node. + + All required parameters must be populated in order to send to Azure. + + :param version: Required. The version of the Batch node agent running on + the compute node. This version number can be checked against the node + agent release notes located at + https://github.com/Azure/Batch/blob/master/changelogs/nodeagent/CHANGELOG.md. + :type version: str + :param last_update_time: Required. The time when the node agent was + updated on the compute node. This is the most recent time that the node + agent was updated to a new version. + :type last_update_time: datetime + """ + + _validation = { + 'version': {'required': True}, + 'last_update_time': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'last_update_time': {'key': 'lastUpdateTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, version: str, last_update_time, **kwargs) -> None: + super(NodeAgentInformation, self).__init__(**kwargs) + self.version = version + self.last_update_time = last_update_time diff --git a/azure-batch/azure/batch/models/node_agent_sku.py b/azure-batch/azure/batch/models/node_agent_sku.py index ddd46e3c2644..dac567dd5a5b 100644 --- a/azure-batch/azure/batch/models/node_agent_sku.py +++ b/azure-batch/azure/batch/models/node_agent_sku.py @@ -38,8 +38,8 @@ class NodeAgentSku(Model): 'os_type': {'key': 'osType', 'type': 'OSType'}, } - def __init__(self, id=None, verified_image_references=None, os_type=None): - super(NodeAgentSku, self).__init__() - self.id = id - self.verified_image_references = verified_image_references - self.os_type = os_type + def __init__(self, **kwargs): + super(NodeAgentSku, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.verified_image_references = kwargs.get('verified_image_references', None) + self.os_type = kwargs.get('os_type', None) diff --git a/azure-batch/azure/batch/models/node_agent_sku_py3.py b/azure-batch/azure/batch/models/node_agent_sku_py3.py new file mode 100644 index 000000000000..29475f4004aa --- /dev/null +++ b/azure-batch/azure/batch/models/node_agent_sku_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeAgentSku(Model): + """A node agent SKU supported by the Batch service. + + The Batch node agent is a program that runs on each node in the pool, and + provides the command-and-control interface between the node and the Batch + service. There are different implementations of the node agent, known as + SKUs, for different operating systems. + + :param id: The ID of the node agent SKU. + :type id: str + :param verified_image_references: The list of Azure Marketplace images + verified to be compatible with this node agent SKU. This collection is not + exhaustive (the node agent may be compatible with other images). + :type verified_image_references: list[~azure.batch.models.ImageReference] + :param os_type: The type of operating system (e.g. Windows or Linux) + compatible with the node agent SKU. Possible values include: 'linux', + 'windows' + :type os_type: str or ~azure.batch.models.OSType + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'verified_image_references': {'key': 'verifiedImageReferences', 'type': '[ImageReference]'}, + 'os_type': {'key': 'osType', 'type': 'OSType'}, + } + + def __init__(self, *, id: str=None, verified_image_references=None, os_type=None, **kwargs) -> None: + super(NodeAgentSku, self).__init__(**kwargs) + self.id = id + self.verified_image_references = verified_image_references + self.os_type = os_type diff --git a/azure-batch/azure/batch/models/node_counts.py b/azure-batch/azure/batch/models/node_counts.py index ae2ec0e7fd79..de54c0c01b1c 100644 --- a/azure-batch/azure/batch/models/node_counts.py +++ b/azure-batch/azure/batch/models/node_counts.py @@ -15,35 +15,38 @@ class NodeCounts(Model): """The number of nodes in each node state. - :param creating: The number of nodes in the creating state. + All required parameters must be populated in order to send to Azure. + + :param creating: Required. The number of nodes in the creating state. :type creating: int - :param idle: The number of nodes in the idle state. + :param idle: Required. The number of nodes in the idle state. :type idle: int - :param offline: The number of nodes in the offline state. + :param offline: Required. The number of nodes in the offline state. :type offline: int - :param preempted: The number of nodes in the preempted state. + :param preempted: Required. The number of nodes in the preempted state. :type preempted: int - :param rebooting: The count of nodes in the rebooting state. + :param rebooting: Required. The count of nodes in the rebooting state. :type rebooting: int - :param reimaging: The number of nodes in the reimaging state. + :param reimaging: Required. The number of nodes in the reimaging state. :type reimaging: int - :param running: The number of nodes in the running state. + :param running: Required. The number of nodes in the running state. :type running: int - :param starting: The number of nodes in the starting state. + :param starting: Required. The number of nodes in the starting state. :type starting: int - :param start_task_failed: The number of nodes in the startTaskFailed - state. + :param start_task_failed: Required. The number of nodes in the + startTaskFailed state. :type start_task_failed: int - :param leaving_pool: The number of nodes in the leavingPool state. + :param leaving_pool: Required. The number of nodes in the leavingPool + state. :type leaving_pool: int - :param unknown: The number of nodes in the unknown state. + :param unknown: Required. The number of nodes in the unknown state. :type unknown: int - :param unusable: The number of nodes in the unusable state. + :param unusable: Required. The number of nodes in the unusable state. :type unusable: int - :param waiting_for_start_task: The number of nodes in the + :param waiting_for_start_task: Required. The number of nodes in the waitingForStartTask state. :type waiting_for_start_task: int - :param total: The total number of nodes. + :param total: Required. The total number of nodes. :type total: int """ @@ -81,19 +84,19 @@ class NodeCounts(Model): 'total': {'key': 'total', 'type': 'int'}, } - def __init__(self, creating, idle, offline, preempted, rebooting, reimaging, running, starting, start_task_failed, leaving_pool, unknown, unusable, waiting_for_start_task, total): - super(NodeCounts, self).__init__() - self.creating = creating - self.idle = idle - self.offline = offline - self.preempted = preempted - self.rebooting = rebooting - self.reimaging = reimaging - self.running = running - self.starting = starting - self.start_task_failed = start_task_failed - self.leaving_pool = leaving_pool - self.unknown = unknown - self.unusable = unusable - self.waiting_for_start_task = waiting_for_start_task - self.total = total + def __init__(self, **kwargs): + super(NodeCounts, self).__init__(**kwargs) + self.creating = kwargs.get('creating', None) + self.idle = kwargs.get('idle', None) + self.offline = kwargs.get('offline', None) + self.preempted = kwargs.get('preempted', None) + self.rebooting = kwargs.get('rebooting', None) + self.reimaging = kwargs.get('reimaging', None) + self.running = kwargs.get('running', None) + self.starting = kwargs.get('starting', None) + self.start_task_failed = kwargs.get('start_task_failed', None) + self.leaving_pool = kwargs.get('leaving_pool', None) + self.unknown = kwargs.get('unknown', None) + self.unusable = kwargs.get('unusable', None) + self.waiting_for_start_task = kwargs.get('waiting_for_start_task', None) + self.total = kwargs.get('total', None) diff --git a/azure-batch/azure/batch/models/node_counts_py3.py b/azure-batch/azure/batch/models/node_counts_py3.py new file mode 100644 index 000000000000..bfeca712f86b --- /dev/null +++ b/azure-batch/azure/batch/models/node_counts_py3.py @@ -0,0 +1,102 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeCounts(Model): + """The number of nodes in each node state. + + All required parameters must be populated in order to send to Azure. + + :param creating: Required. The number of nodes in the creating state. + :type creating: int + :param idle: Required. The number of nodes in the idle state. + :type idle: int + :param offline: Required. The number of nodes in the offline state. + :type offline: int + :param preempted: Required. The number of nodes in the preempted state. + :type preempted: int + :param rebooting: Required. The count of nodes in the rebooting state. + :type rebooting: int + :param reimaging: Required. The number of nodes in the reimaging state. + :type reimaging: int + :param running: Required. The number of nodes in the running state. + :type running: int + :param starting: Required. The number of nodes in the starting state. + :type starting: int + :param start_task_failed: Required. The number of nodes in the + startTaskFailed state. + :type start_task_failed: int + :param leaving_pool: Required. The number of nodes in the leavingPool + state. + :type leaving_pool: int + :param unknown: Required. The number of nodes in the unknown state. + :type unknown: int + :param unusable: Required. The number of nodes in the unusable state. + :type unusable: int + :param waiting_for_start_task: Required. The number of nodes in the + waitingForStartTask state. + :type waiting_for_start_task: int + :param total: Required. The total number of nodes. + :type total: int + """ + + _validation = { + 'creating': {'required': True}, + 'idle': {'required': True}, + 'offline': {'required': True}, + 'preempted': {'required': True}, + 'rebooting': {'required': True}, + 'reimaging': {'required': True}, + 'running': {'required': True}, + 'starting': {'required': True}, + 'start_task_failed': {'required': True}, + 'leaving_pool': {'required': True}, + 'unknown': {'required': True}, + 'unusable': {'required': True}, + 'waiting_for_start_task': {'required': True}, + 'total': {'required': True}, + } + + _attribute_map = { + 'creating': {'key': 'creating', 'type': 'int'}, + 'idle': {'key': 'idle', 'type': 'int'}, + 'offline': {'key': 'offline', 'type': 'int'}, + 'preempted': {'key': 'preempted', 'type': 'int'}, + 'rebooting': {'key': 'rebooting', 'type': 'int'}, + 'reimaging': {'key': 'reimaging', 'type': 'int'}, + 'running': {'key': 'running', 'type': 'int'}, + 'starting': {'key': 'starting', 'type': 'int'}, + 'start_task_failed': {'key': 'startTaskFailed', 'type': 'int'}, + 'leaving_pool': {'key': 'leavingPool', 'type': 'int'}, + 'unknown': {'key': 'unknown', 'type': 'int'}, + 'unusable': {'key': 'unusable', 'type': 'int'}, + 'waiting_for_start_task': {'key': 'waitingForStartTask', 'type': 'int'}, + 'total': {'key': 'total', 'type': 'int'}, + } + + def __init__(self, *, creating: int, idle: int, offline: int, preempted: int, rebooting: int, reimaging: int, running: int, starting: int, start_task_failed: int, leaving_pool: int, unknown: int, unusable: int, waiting_for_start_task: int, total: int, **kwargs) -> None: + super(NodeCounts, self).__init__(**kwargs) + self.creating = creating + self.idle = idle + self.offline = offline + self.preempted = preempted + self.rebooting = rebooting + self.reimaging = reimaging + self.running = running + self.starting = starting + self.start_task_failed = start_task_failed + self.leaving_pool = leaving_pool + self.unknown = unknown + self.unusable = unusable + self.waiting_for_start_task = waiting_for_start_task + self.total = total diff --git a/azure-batch/azure/batch/models/node_disable_scheduling_parameter.py b/azure-batch/azure/batch/models/node_disable_scheduling_parameter.py index c08b8ee63f9a..e92b0262792e 100644 --- a/azure-batch/azure/batch/models/node_disable_scheduling_parameter.py +++ b/azure-batch/azure/batch/models/node_disable_scheduling_parameter.py @@ -27,6 +27,6 @@ class NodeDisableSchedulingParameter(Model): 'node_disable_scheduling_option': {'key': 'nodeDisableSchedulingOption', 'type': 'DisableComputeNodeSchedulingOption'}, } - def __init__(self, node_disable_scheduling_option=None): - super(NodeDisableSchedulingParameter, self).__init__() - self.node_disable_scheduling_option = node_disable_scheduling_option + def __init__(self, **kwargs): + super(NodeDisableSchedulingParameter, self).__init__(**kwargs) + self.node_disable_scheduling_option = kwargs.get('node_disable_scheduling_option', None) diff --git a/azure-batch/azure/batch/models/node_disable_scheduling_parameter_py3.py b/azure-batch/azure/batch/models/node_disable_scheduling_parameter_py3.py new file mode 100644 index 000000000000..d6de68c56102 --- /dev/null +++ b/azure-batch/azure/batch/models/node_disable_scheduling_parameter_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeDisableSchedulingParameter(Model): + """Options for disabling scheduling on a compute node. + + :param node_disable_scheduling_option: What to do with currently running + tasks when disabling task scheduling on the compute node. The default + value is requeue. Possible values include: 'requeue', 'terminate', + 'taskCompletion' + :type node_disable_scheduling_option: str or + ~azure.batch.models.DisableComputeNodeSchedulingOption + """ + + _attribute_map = { + 'node_disable_scheduling_option': {'key': 'nodeDisableSchedulingOption', 'type': 'DisableComputeNodeSchedulingOption'}, + } + + def __init__(self, *, node_disable_scheduling_option=None, **kwargs) -> None: + super(NodeDisableSchedulingParameter, self).__init__(**kwargs) + self.node_disable_scheduling_option = node_disable_scheduling_option diff --git a/azure-batch/azure/batch/models/node_file.py b/azure-batch/azure/batch/models/node_file.py index 3b997849d181..93fa29d61733 100644 --- a/azure-batch/azure/batch/models/node_file.py +++ b/azure-batch/azure/batch/models/node_file.py @@ -32,9 +32,9 @@ class NodeFile(Model): 'properties': {'key': 'properties', 'type': 'FileProperties'}, } - def __init__(self, name=None, url=None, is_directory=None, properties=None): - super(NodeFile, self).__init__() - self.name = name - self.url = url - self.is_directory = is_directory - self.properties = properties + def __init__(self, **kwargs): + super(NodeFile, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.url = kwargs.get('url', None) + self.is_directory = kwargs.get('is_directory', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-batch/azure/batch/models/node_file_py3.py b/azure-batch/azure/batch/models/node_file_py3.py new file mode 100644 index 000000000000..410f310d3751 --- /dev/null +++ b/azure-batch/azure/batch/models/node_file_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeFile(Model): + """Information about a file or directory on a compute node. + + :param name: The file path. + :type name: str + :param url: The URL of the file. + :type url: str + :param is_directory: Whether the object represents a directory. + :type is_directory: bool + :param properties: The file properties. + :type properties: ~azure.batch.models.FileProperties + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'is_directory': {'key': 'isDirectory', 'type': 'bool'}, + 'properties': {'key': 'properties', 'type': 'FileProperties'}, + } + + def __init__(self, *, name: str=None, url: str=None, is_directory: bool=None, properties=None, **kwargs) -> None: + super(NodeFile, self).__init__(**kwargs) + self.name = name + self.url = url + self.is_directory = is_directory + self.properties = properties diff --git a/azure-batch/azure/batch/models/node_reboot_parameter.py b/azure-batch/azure/batch/models/node_reboot_parameter.py index 6536d4ee5035..10e13ad753fd 100644 --- a/azure-batch/azure/batch/models/node_reboot_parameter.py +++ b/azure-batch/azure/batch/models/node_reboot_parameter.py @@ -26,6 +26,6 @@ class NodeRebootParameter(Model): 'node_reboot_option': {'key': 'nodeRebootOption', 'type': 'ComputeNodeRebootOption'}, } - def __init__(self, node_reboot_option=None): - super(NodeRebootParameter, self).__init__() - self.node_reboot_option = node_reboot_option + def __init__(self, **kwargs): + super(NodeRebootParameter, self).__init__(**kwargs) + self.node_reboot_option = kwargs.get('node_reboot_option', None) diff --git a/azure-batch/azure/batch/models/node_reboot_parameter_py3.py b/azure-batch/azure/batch/models/node_reboot_parameter_py3.py new file mode 100644 index 000000000000..0c21c6d1c19e --- /dev/null +++ b/azure-batch/azure/batch/models/node_reboot_parameter_py3.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeRebootParameter(Model): + """Options for rebooting a compute node. + + :param node_reboot_option: When to reboot the compute node and what to do + with currently running tasks. The default value is requeue. Possible + values include: 'requeue', 'terminate', 'taskCompletion', 'retainedData' + :type node_reboot_option: str or + ~azure.batch.models.ComputeNodeRebootOption + """ + + _attribute_map = { + 'node_reboot_option': {'key': 'nodeRebootOption', 'type': 'ComputeNodeRebootOption'}, + } + + def __init__(self, *, node_reboot_option=None, **kwargs) -> None: + super(NodeRebootParameter, self).__init__(**kwargs) + self.node_reboot_option = node_reboot_option diff --git a/azure-batch/azure/batch/models/node_reimage_parameter.py b/azure-batch/azure/batch/models/node_reimage_parameter.py index c2da4dc0905d..aa51f1413afd 100644 --- a/azure-batch/azure/batch/models/node_reimage_parameter.py +++ b/azure-batch/azure/batch/models/node_reimage_parameter.py @@ -26,6 +26,6 @@ class NodeReimageParameter(Model): 'node_reimage_option': {'key': 'nodeReimageOption', 'type': 'ComputeNodeReimageOption'}, } - def __init__(self, node_reimage_option=None): - super(NodeReimageParameter, self).__init__() - self.node_reimage_option = node_reimage_option + def __init__(self, **kwargs): + super(NodeReimageParameter, self).__init__(**kwargs) + self.node_reimage_option = kwargs.get('node_reimage_option', None) diff --git a/azure-batch/azure/batch/models/node_reimage_parameter_py3.py b/azure-batch/azure/batch/models/node_reimage_parameter_py3.py new file mode 100644 index 000000000000..7af3930561bb --- /dev/null +++ b/azure-batch/azure/batch/models/node_reimage_parameter_py3.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeReimageParameter(Model): + """Options for reimaging a compute node. + + :param node_reimage_option: When to reimage the compute node and what to + do with currently running tasks. The default value is requeue. Possible + values include: 'requeue', 'terminate', 'taskCompletion', 'retainedData' + :type node_reimage_option: str or + ~azure.batch.models.ComputeNodeReimageOption + """ + + _attribute_map = { + 'node_reimage_option': {'key': 'nodeReimageOption', 'type': 'ComputeNodeReimageOption'}, + } + + def __init__(self, *, node_reimage_option=None, **kwargs) -> None: + super(NodeReimageParameter, self).__init__(**kwargs) + self.node_reimage_option = node_reimage_option diff --git a/azure-batch/azure/batch/models/node_remove_parameter.py b/azure-batch/azure/batch/models/node_remove_parameter.py index 7835d4002fb8..f997671b2b46 100644 --- a/azure-batch/azure/batch/models/node_remove_parameter.py +++ b/azure-batch/azure/batch/models/node_remove_parameter.py @@ -15,8 +15,10 @@ class NodeRemoveParameter(Model): """Options for removing compute nodes from a pool. - :param node_list: A list containing the IDs of the compute nodes to be - removed from the specified pool. + All required parameters must be populated in order to send to Azure. + + :param node_list: Required. A list containing the IDs of the compute nodes + to be removed from the specified pool. :type node_list: list[str] :param resize_timeout: The timeout for removal of compute nodes to the pool. The default value is 15 minutes. The minimum value is 5 minutes. If @@ -42,8 +44,8 @@ class NodeRemoveParameter(Model): 'node_deallocation_option': {'key': 'nodeDeallocationOption', 'type': 'ComputeNodeDeallocationOption'}, } - def __init__(self, node_list, resize_timeout=None, node_deallocation_option=None): - super(NodeRemoveParameter, self).__init__() - self.node_list = node_list - self.resize_timeout = resize_timeout - self.node_deallocation_option = node_deallocation_option + def __init__(self, **kwargs): + super(NodeRemoveParameter, self).__init__(**kwargs) + self.node_list = kwargs.get('node_list', None) + self.resize_timeout = kwargs.get('resize_timeout', None) + self.node_deallocation_option = kwargs.get('node_deallocation_option', None) diff --git a/azure-batch/azure/batch/models/node_remove_parameter_py3.py b/azure-batch/azure/batch/models/node_remove_parameter_py3.py new file mode 100644 index 000000000000..b9dbbc4e55a7 --- /dev/null +++ b/azure-batch/azure/batch/models/node_remove_parameter_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeRemoveParameter(Model): + """Options for removing compute nodes from a pool. + + All required parameters must be populated in order to send to Azure. + + :param node_list: Required. A list containing the IDs of the compute nodes + to be removed from the specified pool. + :type node_list: list[str] + :param resize_timeout: The timeout for removal of compute nodes to the + pool. The default value is 15 minutes. The minimum value is 5 minutes. If + you specify a value less than 5 minutes, the Batch service returns an + error; if you are calling the REST API directly, the HTTP status code is + 400 (Bad Request). + :type resize_timeout: timedelta + :param node_deallocation_option: Determines what to do with a node and its + running task(s) after it has been selected for deallocation. The default + value is requeue. Possible values include: 'requeue', 'terminate', + 'taskCompletion', 'retainedData' + :type node_deallocation_option: str or + ~azure.batch.models.ComputeNodeDeallocationOption + """ + + _validation = { + 'node_list': {'required': True, 'max_items': 100}, + } + + _attribute_map = { + 'node_list': {'key': 'nodeList', 'type': '[str]'}, + 'resize_timeout': {'key': 'resizeTimeout', 'type': 'duration'}, + 'node_deallocation_option': {'key': 'nodeDeallocationOption', 'type': 'ComputeNodeDeallocationOption'}, + } + + def __init__(self, *, node_list, resize_timeout=None, node_deallocation_option=None, **kwargs) -> None: + super(NodeRemoveParameter, self).__init__(**kwargs) + self.node_list = node_list + self.resize_timeout = resize_timeout + self.node_deallocation_option = node_deallocation_option diff --git a/azure-batch/azure/batch/models/node_update_user_parameter.py b/azure-batch/azure/batch/models/node_update_user_parameter.py index 4a15b1d9cbe3..02df471c8df2 100644 --- a/azure-batch/azure/batch/models/node_update_user_parameter.py +++ b/azure-batch/azure/batch/models/node_update_user_parameter.py @@ -41,8 +41,8 @@ class NodeUpdateUserParameter(Model): 'ssh_public_key': {'key': 'sshPublicKey', 'type': 'str'}, } - def __init__(self, password=None, expiry_time=None, ssh_public_key=None): - super(NodeUpdateUserParameter, self).__init__() - self.password = password - self.expiry_time = expiry_time - self.ssh_public_key = ssh_public_key + def __init__(self, **kwargs): + super(NodeUpdateUserParameter, self).__init__(**kwargs) + self.password = kwargs.get('password', None) + self.expiry_time = kwargs.get('expiry_time', None) + self.ssh_public_key = kwargs.get('ssh_public_key', None) diff --git a/azure-batch/azure/batch/models/node_update_user_parameter_py3.py b/azure-batch/azure/batch/models/node_update_user_parameter_py3.py new file mode 100644 index 000000000000..3ff93927ae88 --- /dev/null +++ b/azure-batch/azure/batch/models/node_update_user_parameter_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NodeUpdateUserParameter(Model): + """The set of changes to be made to a user account on a node. + + :param password: The password of the account. The password is required for + Windows nodes (those created with 'cloudServiceConfiguration', or created + with 'virtualMachineConfiguration' using a Windows image reference). For + Linux compute nodes, the password can optionally be specified along with + the sshPublicKey property. If omitted, any existing password is removed. + :type password: str + :param expiry_time: The time at which the account should expire. If + omitted, the default is 1 day from the current time. For Linux compute + nodes, the expiryTime has a precision up to a day. + :type expiry_time: datetime + :param ssh_public_key: The SSH public key that can be used for remote + login to the compute node. The public key should be compatible with + OpenSSH encoding and should be base 64 encoded. This property can be + specified only for Linux nodes. If this is specified for a Windows node, + then the Batch service rejects the request; if you are calling the REST + API directly, the HTTP status code is 400 (Bad Request). If omitted, any + existing SSH public key is removed. + :type ssh_public_key: str + """ + + _attribute_map = { + 'password': {'key': 'password', 'type': 'str'}, + 'expiry_time': {'key': 'expiryTime', 'type': 'iso-8601'}, + 'ssh_public_key': {'key': 'sshPublicKey', 'type': 'str'}, + } + + def __init__(self, *, password: str=None, expiry_time=None, ssh_public_key: str=None, **kwargs) -> None: + super(NodeUpdateUserParameter, self).__init__(**kwargs) + self.password = password + self.expiry_time = expiry_time + self.ssh_public_key = ssh_public_key diff --git a/azure-batch/azure/batch/models/os_disk.py b/azure-batch/azure/batch/models/os_disk.py index ddd159087dbc..08916fa20048 100644 --- a/azure-batch/azure/batch/models/os_disk.py +++ b/azure-batch/azure/batch/models/os_disk.py @@ -16,7 +16,8 @@ class OSDisk(Model): """Settings for the operating system disk of the virtual machine. :param caching: The type of caching to enable for the OS disk. The default - value for caching is none. For information about the caching options see: + value for caching is readwrite. For information about the caching options + see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. Possible values include: 'none', 'readOnly', 'readWrite' :type caching: str or ~azure.batch.models.CachingType @@ -26,6 +27,6 @@ class OSDisk(Model): 'caching': {'key': 'caching', 'type': 'CachingType'}, } - def __init__(self, caching=None): - super(OSDisk, self).__init__() - self.caching = caching + def __init__(self, **kwargs): + super(OSDisk, self).__init__(**kwargs) + self.caching = kwargs.get('caching', None) diff --git a/azure-batch/azure/batch/models/os_disk_py3.py b/azure-batch/azure/batch/models/os_disk_py3.py new file mode 100644 index 000000000000..4780c4fa1443 --- /dev/null +++ b/azure-batch/azure/batch/models/os_disk_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OSDisk(Model): + """Settings for the operating system disk of the virtual machine. + + :param caching: The type of caching to enable for the OS disk. The default + value for caching is readwrite. For information about the caching options + see: + https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. + Possible values include: 'none', 'readOnly', 'readWrite' + :type caching: str or ~azure.batch.models.CachingType + """ + + _attribute_map = { + 'caching': {'key': 'caching', 'type': 'CachingType'}, + } + + def __init__(self, *, caching=None, **kwargs) -> None: + super(OSDisk, self).__init__(**kwargs) + self.caching = caching diff --git a/azure-batch/azure/batch/models/output_file.py b/azure-batch/azure/batch/models/output_file.py index 14b9ccb8089b..b16fa5929a46 100644 --- a/azure-batch/azure/batch/models/output_file.py +++ b/azure-batch/azure/batch/models/output_file.py @@ -16,28 +16,31 @@ class OutputFile(Model): """A specification for uploading files from an Azure Batch node to another location after the Batch service has finished executing the task process. - :param file_pattern: A pattern indicating which file(s) to upload. Both - relative and absolute paths are supported. Relative paths are relative to - the task working directory. The following wildcards are supported: * - matches 0 or more characters (for example pattern abc* would match abc or - abcdef), ** matches any directory, ? matches any single character, [abc] - matches one character in the brackets, and [a-c] matches one character in - the range. Brackets can include a negation to match any character not - specified (for example [!abc] matches any character but a, b, or c). If a - file name starts with "." it is ignored by default but may be matched by - specifying it explicitly (for example *.gif will not match .a.gif, but - .*.gif will). A simple example: **\\*.txt matches any file that does not - start in '.' and ends with .txt in the task working directory or any - subdirectory. If the filename contains a wildcard character it can be - escaped using brackets (for example abc[*] would match a file named abc*). - Note that both \\ and / are treated as directory separators on Windows, - but only / is on Linux. Environment variables (%var% on Windows or $var on - Linux) are expanded prior to the pattern being applied. + All required parameters must be populated in order to send to Azure. + + :param file_pattern: Required. A pattern indicating which file(s) to + upload. Both relative and absolute paths are supported. Relative paths are + relative to the task working directory. The following wildcards are + supported: * matches 0 or more characters (for example pattern abc* would + match abc or abcdef), ** matches any directory, ? matches any single + character, [abc] matches one character in the brackets, and [a-c] matches + one character in the range. Brackets can include a negation to match any + character not specified (for example [!abc] matches any character but a, + b, or c). If a file name starts with "." it is ignored by default but may + be matched by specifying it explicitly (for example *.gif will not match + .a.gif, but .*.gif will). A simple example: **\\*.txt matches any file + that does not start in '.' and ends with .txt in the task working + directory or any subdirectory. If the filename contains a wildcard + character it can be escaped using brackets (for example abc[*] would match + a file named abc*). Note that both \\ and / are treated as directory + separators on Windows, but only / is on Linux. Environment variables + (%var% on Windows or $var on Linux) are expanded prior to the pattern + being applied. :type file_pattern: str - :param destination: The destination for the output file(s). + :param destination: Required. The destination for the output file(s). :type destination: ~azure.batch.models.OutputFileDestination - :param upload_options: Additional options for the upload operation, - including under what conditions to perform the upload. + :param upload_options: Required. Additional options for the upload + operation, including under what conditions to perform the upload. :type upload_options: ~azure.batch.models.OutputFileUploadOptions """ @@ -53,8 +56,8 @@ class OutputFile(Model): 'upload_options': {'key': 'uploadOptions', 'type': 'OutputFileUploadOptions'}, } - def __init__(self, file_pattern, destination, upload_options): - super(OutputFile, self).__init__() - self.file_pattern = file_pattern - self.destination = destination - self.upload_options = upload_options + def __init__(self, **kwargs): + super(OutputFile, self).__init__(**kwargs) + self.file_pattern = kwargs.get('file_pattern', None) + self.destination = kwargs.get('destination', None) + self.upload_options = kwargs.get('upload_options', None) diff --git a/azure-batch/azure/batch/models/output_file_blob_container_destination.py b/azure-batch/azure/batch/models/output_file_blob_container_destination.py index 1a03909e1e22..ee86a5896023 100644 --- a/azure-batch/azure/batch/models/output_file_blob_container_destination.py +++ b/azure-batch/azure/batch/models/output_file_blob_container_destination.py @@ -15,6 +15,8 @@ class OutputFileBlobContainerDestination(Model): """Specifies a file upload destination within an Azure blob storage container. + All required parameters must be populated in order to send to Azure. + :param path: The destination blob or virtual directory within the Azure Storage container. If filePattern refers to a specific file (i.e. contains no wildcards), then path is the name of the blob to which to upload that @@ -24,9 +26,9 @@ class OutputFileBlobContainerDestination(Model): omitted, file(s) are uploaded to the root of the container with a blob name matching their file name. :type path: str - :param container_url: The URL of the container within Azure Blob Storage - to which to upload the file(s). The URL must include a Shared Access - Signature (SAS) granting write permissions to the container. + :param container_url: Required. The URL of the container within Azure Blob + Storage to which to upload the file(s). The URL must include a Shared + Access Signature (SAS) granting write permissions to the container. :type container_url: str """ @@ -39,7 +41,7 @@ class OutputFileBlobContainerDestination(Model): 'container_url': {'key': 'containerUrl', 'type': 'str'}, } - def __init__(self, container_url, path=None): - super(OutputFileBlobContainerDestination, self).__init__() - self.path = path - self.container_url = container_url + def __init__(self, **kwargs): + super(OutputFileBlobContainerDestination, self).__init__(**kwargs) + self.path = kwargs.get('path', None) + self.container_url = kwargs.get('container_url', None) diff --git a/azure-batch/azure/batch/models/output_file_blob_container_destination_py3.py b/azure-batch/azure/batch/models/output_file_blob_container_destination_py3.py new file mode 100644 index 000000000000..3f0c9ce020f3 --- /dev/null +++ b/azure-batch/azure/batch/models/output_file_blob_container_destination_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OutputFileBlobContainerDestination(Model): + """Specifies a file upload destination within an Azure blob storage container. + + All required parameters must be populated in order to send to Azure. + + :param path: The destination blob or virtual directory within the Azure + Storage container. If filePattern refers to a specific file (i.e. contains + no wildcards), then path is the name of the blob to which to upload that + file. If filePattern contains one or more wildcards (and therefore may + match multiple files), then path is the name of the blob virtual directory + (which is prepended to each blob name) to which to upload the file(s). If + omitted, file(s) are uploaded to the root of the container with a blob + name matching their file name. + :type path: str + :param container_url: Required. The URL of the container within Azure Blob + Storage to which to upload the file(s). The URL must include a Shared + Access Signature (SAS) granting write permissions to the container. + :type container_url: str + """ + + _validation = { + 'container_url': {'required': True}, + } + + _attribute_map = { + 'path': {'key': 'path', 'type': 'str'}, + 'container_url': {'key': 'containerUrl', 'type': 'str'}, + } + + def __init__(self, *, container_url: str, path: str=None, **kwargs) -> None: + super(OutputFileBlobContainerDestination, self).__init__(**kwargs) + self.path = path + self.container_url = container_url diff --git a/azure-batch/azure/batch/models/output_file_destination.py b/azure-batch/azure/batch/models/output_file_destination.py index 9a3e996c3dce..1033743cb4f5 100644 --- a/azure-batch/azure/batch/models/output_file_destination.py +++ b/azure-batch/azure/batch/models/output_file_destination.py @@ -24,6 +24,6 @@ class OutputFileDestination(Model): 'container': {'key': 'container', 'type': 'OutputFileBlobContainerDestination'}, } - def __init__(self, container=None): - super(OutputFileDestination, self).__init__() - self.container = container + def __init__(self, **kwargs): + super(OutputFileDestination, self).__init__(**kwargs) + self.container = kwargs.get('container', None) diff --git a/azure-batch/azure/batch/models/output_file_destination_py3.py b/azure-batch/azure/batch/models/output_file_destination_py3.py new file mode 100644 index 000000000000..e7c652b6aed6 --- /dev/null +++ b/azure-batch/azure/batch/models/output_file_destination_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OutputFileDestination(Model): + """The destination to which a file should be uploaded. + + :param container: A location in Azure blob storage to which files are + uploaded. + :type container: ~azure.batch.models.OutputFileBlobContainerDestination + """ + + _attribute_map = { + 'container': {'key': 'container', 'type': 'OutputFileBlobContainerDestination'}, + } + + def __init__(self, *, container=None, **kwargs) -> None: + super(OutputFileDestination, self).__init__(**kwargs) + self.container = container diff --git a/azure-batch/azure/batch/models/output_file_py3.py b/azure-batch/azure/batch/models/output_file_py3.py new file mode 100644 index 000000000000..fee0d5022126 --- /dev/null +++ b/azure-batch/azure/batch/models/output_file_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OutputFile(Model): + """A specification for uploading files from an Azure Batch node to another + location after the Batch service has finished executing the task process. + + All required parameters must be populated in order to send to Azure. + + :param file_pattern: Required. A pattern indicating which file(s) to + upload. Both relative and absolute paths are supported. Relative paths are + relative to the task working directory. The following wildcards are + supported: * matches 0 or more characters (for example pattern abc* would + match abc or abcdef), ** matches any directory, ? matches any single + character, [abc] matches one character in the brackets, and [a-c] matches + one character in the range. Brackets can include a negation to match any + character not specified (for example [!abc] matches any character but a, + b, or c). If a file name starts with "." it is ignored by default but may + be matched by specifying it explicitly (for example *.gif will not match + .a.gif, but .*.gif will). A simple example: **\\*.txt matches any file + that does not start in '.' and ends with .txt in the task working + directory or any subdirectory. If the filename contains a wildcard + character it can be escaped using brackets (for example abc[*] would match + a file named abc*). Note that both \\ and / are treated as directory + separators on Windows, but only / is on Linux. Environment variables + (%var% on Windows or $var on Linux) are expanded prior to the pattern + being applied. + :type file_pattern: str + :param destination: Required. The destination for the output file(s). + :type destination: ~azure.batch.models.OutputFileDestination + :param upload_options: Required. Additional options for the upload + operation, including under what conditions to perform the upload. + :type upload_options: ~azure.batch.models.OutputFileUploadOptions + """ + + _validation = { + 'file_pattern': {'required': True}, + 'destination': {'required': True}, + 'upload_options': {'required': True}, + } + + _attribute_map = { + 'file_pattern': {'key': 'filePattern', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'OutputFileDestination'}, + 'upload_options': {'key': 'uploadOptions', 'type': 'OutputFileUploadOptions'}, + } + + def __init__(self, *, file_pattern: str, destination, upload_options, **kwargs) -> None: + super(OutputFile, self).__init__(**kwargs) + self.file_pattern = file_pattern + self.destination = destination + self.upload_options = upload_options diff --git a/azure-batch/azure/batch/models/output_file_upload_options.py b/azure-batch/azure/batch/models/output_file_upload_options.py index c79f5703ac64..c626a355339e 100644 --- a/azure-batch/azure/batch/models/output_file_upload_options.py +++ b/azure-batch/azure/batch/models/output_file_upload_options.py @@ -16,9 +16,12 @@ class OutputFileUploadOptions(Model): """Details about an output file upload operation, including under what conditions to perform the upload. - :param upload_condition: The conditions under which the task output file - or set of files should be uploaded. The default is taskcompletion. - Possible values include: 'taskSuccess', 'taskFailure', 'taskCompletion' + All required parameters must be populated in order to send to Azure. + + :param upload_condition: Required. The conditions under which the task + output file or set of files should be uploaded. The default is + taskcompletion. Possible values include: 'taskSuccess', 'taskFailure', + 'taskCompletion' :type upload_condition: str or ~azure.batch.models.OutputFileUploadCondition """ @@ -31,6 +34,6 @@ class OutputFileUploadOptions(Model): 'upload_condition': {'key': 'uploadCondition', 'type': 'OutputFileUploadCondition'}, } - def __init__(self, upload_condition): - super(OutputFileUploadOptions, self).__init__() - self.upload_condition = upload_condition + def __init__(self, **kwargs): + super(OutputFileUploadOptions, self).__init__(**kwargs) + self.upload_condition = kwargs.get('upload_condition', None) diff --git a/azure-batch/azure/batch/models/output_file_upload_options_py3.py b/azure-batch/azure/batch/models/output_file_upload_options_py3.py new file mode 100644 index 000000000000..628d8794e03c --- /dev/null +++ b/azure-batch/azure/batch/models/output_file_upload_options_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OutputFileUploadOptions(Model): + """Details about an output file upload operation, including under what + conditions to perform the upload. + + All required parameters must be populated in order to send to Azure. + + :param upload_condition: Required. The conditions under which the task + output file or set of files should be uploaded. The default is + taskcompletion. Possible values include: 'taskSuccess', 'taskFailure', + 'taskCompletion' + :type upload_condition: str or + ~azure.batch.models.OutputFileUploadCondition + """ + + _validation = { + 'upload_condition': {'required': True}, + } + + _attribute_map = { + 'upload_condition': {'key': 'uploadCondition', 'type': 'OutputFileUploadCondition'}, + } + + def __init__(self, *, upload_condition, **kwargs) -> None: + super(OutputFileUploadOptions, self).__init__(**kwargs) + self.upload_condition = upload_condition diff --git a/azure-batch/azure/batch/models/pool_add_options.py b/azure-batch/azure/batch/models/pool_add_options.py index 99940fc149c4..04d968a84494 100644 --- a/azure-batch/azure/batch/models/pool_add_options.py +++ b/azure-batch/azure/batch/models/pool_add_options.py @@ -31,9 +31,16 @@ class PoolAddOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(PoolAddOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolAddOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/pool_add_options_py3.py b/azure-batch/azure/batch/models/pool_add_options_py3.py new file mode 100644 index 000000000000..62b3e62b2bbc --- /dev/null +++ b/azure-batch/azure/batch/models/pool_add_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolAddOptions(Model): + """Additional parameters for add operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(PoolAddOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/pool_add_parameter.py b/azure-batch/azure/batch/models/pool_add_parameter.py index 46ced65611e8..7d21c67bc843 100644 --- a/azure-batch/azure/batch/models/pool_add_parameter.py +++ b/azure-batch/azure/batch/models/pool_add_parameter.py @@ -15,20 +15,22 @@ class PoolAddParameter(Model): """A pool in the Azure Batch service to add. - :param id: A string that uniquely identifies the pool within the account. - The ID can contain any combination of alphanumeric characters including - hyphens and underscores, and cannot contain more than 64 characters. The - ID is case-preserving and case-insensitive (that is, you may not have two - pool IDs within an account that differ only by case). + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the pool within the + account. The ID can contain any combination of alphanumeric characters + including hyphens and underscores, and cannot contain more than 64 + characters. The ID is case-preserving and case-insensitive (that is, you + may not have two pool IDs within an account that differ only by case). :type id: str :param display_name: The display name for the pool. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. :type display_name: str - :param vm_size: The size of virtual machines in the pool. All virtual - machines in a pool are the same size. For information about available - sizes of virtual machines for Cloud Services pools (pools created with - cloudServiceConfiguration), see Sizes for Cloud Services + :param vm_size: Required. The size of virtual machines in the pool. All + virtual machines in a pool are the same size. For information about + available sizes of virtual machines for Cloud Services pools (pools + created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall, A1V2 and A2V2. For information about available VM sizes for pools using images from @@ -170,26 +172,26 @@ class PoolAddParameter(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, id, vm_size, display_name=None, cloud_service_configuration=None, virtual_machine_configuration=None, resize_timeout=None, target_dedicated_nodes=None, target_low_priority_nodes=None, enable_auto_scale=None, auto_scale_formula=None, auto_scale_evaluation_interval=None, enable_inter_node_communication=None, network_configuration=None, start_task=None, certificate_references=None, application_package_references=None, application_licenses=None, max_tasks_per_node=None, task_scheduling_policy=None, user_accounts=None, metadata=None): - super(PoolAddParameter, self).__init__() - self.id = id - self.display_name = display_name - self.vm_size = vm_size - self.cloud_service_configuration = cloud_service_configuration - self.virtual_machine_configuration = virtual_machine_configuration - self.resize_timeout = resize_timeout - self.target_dedicated_nodes = target_dedicated_nodes - self.target_low_priority_nodes = target_low_priority_nodes - self.enable_auto_scale = enable_auto_scale - self.auto_scale_formula = auto_scale_formula - self.auto_scale_evaluation_interval = auto_scale_evaluation_interval - self.enable_inter_node_communication = enable_inter_node_communication - self.network_configuration = network_configuration - self.start_task = start_task - self.certificate_references = certificate_references - self.application_package_references = application_package_references - self.application_licenses = application_licenses - self.max_tasks_per_node = max_tasks_per_node - self.task_scheduling_policy = task_scheduling_policy - self.user_accounts = user_accounts - self.metadata = metadata + def __init__(self, **kwargs): + super(PoolAddParameter, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.vm_size = kwargs.get('vm_size', None) + self.cloud_service_configuration = kwargs.get('cloud_service_configuration', None) + self.virtual_machine_configuration = kwargs.get('virtual_machine_configuration', None) + self.resize_timeout = kwargs.get('resize_timeout', None) + self.target_dedicated_nodes = kwargs.get('target_dedicated_nodes', None) + self.target_low_priority_nodes = kwargs.get('target_low_priority_nodes', None) + self.enable_auto_scale = kwargs.get('enable_auto_scale', None) + self.auto_scale_formula = kwargs.get('auto_scale_formula', None) + self.auto_scale_evaluation_interval = kwargs.get('auto_scale_evaluation_interval', None) + self.enable_inter_node_communication = kwargs.get('enable_inter_node_communication', None) + self.network_configuration = kwargs.get('network_configuration', None) + self.start_task = kwargs.get('start_task', None) + self.certificate_references = kwargs.get('certificate_references', None) + self.application_package_references = kwargs.get('application_package_references', None) + self.application_licenses = kwargs.get('application_licenses', None) + self.max_tasks_per_node = kwargs.get('max_tasks_per_node', None) + self.task_scheduling_policy = kwargs.get('task_scheduling_policy', None) + self.user_accounts = kwargs.get('user_accounts', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/pool_add_parameter_py3.py b/azure-batch/azure/batch/models/pool_add_parameter_py3.py new file mode 100644 index 000000000000..170963fa94ce --- /dev/null +++ b/azure-batch/azure/batch/models/pool_add_parameter_py3.py @@ -0,0 +1,197 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolAddParameter(Model): + """A pool in the Azure Batch service to add. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the pool within the + account. The ID can contain any combination of alphanumeric characters + including hyphens and underscores, and cannot contain more than 64 + characters. The ID is case-preserving and case-insensitive (that is, you + may not have two pool IDs within an account that differ only by case). + :type id: str + :param display_name: The display name for the pool. The display name need + not be unique and can contain any Unicode characters up to a maximum + length of 1024. + :type display_name: str + :param vm_size: Required. The size of virtual machines in the pool. All + virtual machines in a pool are the same size. For information about + available sizes of virtual machines for Cloud Services pools (pools + created with cloudServiceConfiguration), see Sizes for Cloud Services + (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). + Batch supports all Cloud Services VM sizes except ExtraSmall, A1V2 and + A2V2. For information about available VM sizes for pools using images from + the Virtual Machines Marketplace (pools created with + virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) + (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) + or Sizes for Virtual Machines (Windows) + (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). + Batch supports all Azure VM sizes except STANDARD_A0 and those with + premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). + :type vm_size: str + :param cloud_service_configuration: The cloud service configuration for + the pool. This property and virtualMachineConfiguration are mutually + exclusive and one of the properties must be specified. This property + cannot be specified if the Batch account was created with its + poolAllocationMode property set to 'UserSubscription'. + :type cloud_service_configuration: + ~azure.batch.models.CloudServiceConfiguration + :param virtual_machine_configuration: The virtual machine configuration + for the pool. This property and cloudServiceConfiguration are mutually + exclusive and one of the properties must be specified. + :type virtual_machine_configuration: + ~azure.batch.models.VirtualMachineConfiguration + :param resize_timeout: The timeout for allocation of compute nodes to the + pool. This timeout applies only to manual scaling; it has no effect when + enableAutoScale is set to true. The default value is 15 minutes. The + minimum value is 5 minutes. If you specify a value less than 5 minutes, + the Batch service returns an error; if you are calling the REST API + directly, the HTTP status code is 400 (Bad Request). + :type resize_timeout: timedelta + :param target_dedicated_nodes: The desired number of dedicated compute + nodes in the pool. This property must not be specified if enableAutoScale + is set to true. If enableAutoScale is set to false, then you must set + either targetDedicatedNodes, targetLowPriorityNodes, or both. + :type target_dedicated_nodes: int + :param target_low_priority_nodes: The desired number of low-priority + compute nodes in the pool. This property must not be specified if + enableAutoScale is set to true. If enableAutoScale is set to false, then + you must set either targetDedicatedNodes, targetLowPriorityNodes, or both. + :type target_low_priority_nodes: int + :param enable_auto_scale: Whether the pool size should automatically + adjust over time. If false, at least one of targetDedicateNodes and + targetLowPriorityNodes must be specified. If true, the autoScaleFormula + property is required and the pool automatically resizes according to the + formula. The default value is false. + :type enable_auto_scale: bool + :param auto_scale_formula: A formula for the desired number of compute + nodes in the pool. This property must not be specified if enableAutoScale + is set to false. It is required if enableAutoScale is set to true. The + formula is checked for validity before the pool is created. If the formula + is not valid, the Batch service rejects the request with detailed error + information. For more information about specifying this formula, see + 'Automatically scale compute nodes in an Azure Batch pool' + (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/). + :type auto_scale_formula: str + :param auto_scale_evaluation_interval: The time interval at which to + automatically adjust the pool size according to the autoscale formula. The + default value is 15 minutes. The minimum and maximum value are 5 minutes + and 168 hours respectively. If you specify a value less than 5 minutes or + greater than 168 hours, the Batch service returns an error; if you are + calling the REST API directly, the HTTP status code is 400 (Bad Request). + :type auto_scale_evaluation_interval: timedelta + :param enable_inter_node_communication: Whether the pool permits direct + communication between nodes. Enabling inter-node communication limits the + maximum size of the pool due to deployment restrictions on the nodes of + the pool. This may result in the pool not reaching its desired size. The + default value is false. + :type enable_inter_node_communication: bool + :param network_configuration: The network configuration for the pool. + :type network_configuration: ~azure.batch.models.NetworkConfiguration + :param start_task: A task specified to run on each compute node as it + joins the pool. The task runs when the node is added to the pool or when + the node is restarted. + :type start_task: ~azure.batch.models.StartTask + :param certificate_references: The list of certificates to be installed on + each compute node in the pool. For Windows compute nodes, the Batch + service installs the certificates to the specified certificate store and + location. For Linux compute nodes, the certificates are stored in a + directory inside the task working directory and an environment variable + AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this + location. For certificates with visibility of 'remoteUser', a 'certs' + directory is created in the user's home directory (e.g., + /home/{user-name}/certs) and certificates are placed in that directory. + :type certificate_references: + list[~azure.batch.models.CertificateReference] + :param application_package_references: The list of application packages to + be installed on each compute node in the pool. + :type application_package_references: + list[~azure.batch.models.ApplicationPackageReference] + :param application_licenses: The list of application licenses the Batch + service will make available on each compute node in the pool. The list of + application licenses must be a subset of available Batch service + application licenses. If a license is requested which is not supported, + pool creation will fail. + :type application_licenses: list[str] + :param max_tasks_per_node: The maximum number of tasks that can run + concurrently on a single compute node in the pool. The default value is 1. + The maximum value of this setting depends on the size of the compute nodes + in the pool (the vmSize setting). + :type max_tasks_per_node: int + :param task_scheduling_policy: How tasks are distributed across compute + nodes in a pool. + :type task_scheduling_policy: ~azure.batch.models.TaskSchedulingPolicy + :param user_accounts: The list of user accounts to be created on each node + in the pool. + :type user_accounts: list[~azure.batch.models.UserAccount] + :param metadata: A list of name-value pairs associated with the pool as + metadata. The Batch service does not assign any meaning to metadata; it is + solely for the use of user code. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _validation = { + 'id': {'required': True}, + 'vm_size': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'cloud_service_configuration': {'key': 'cloudServiceConfiguration', 'type': 'CloudServiceConfiguration'}, + 'virtual_machine_configuration': {'key': 'virtualMachineConfiguration', 'type': 'VirtualMachineConfiguration'}, + 'resize_timeout': {'key': 'resizeTimeout', 'type': 'duration'}, + 'target_dedicated_nodes': {'key': 'targetDedicatedNodes', 'type': 'int'}, + 'target_low_priority_nodes': {'key': 'targetLowPriorityNodes', 'type': 'int'}, + 'enable_auto_scale': {'key': 'enableAutoScale', 'type': 'bool'}, + 'auto_scale_formula': {'key': 'autoScaleFormula', 'type': 'str'}, + 'auto_scale_evaluation_interval': {'key': 'autoScaleEvaluationInterval', 'type': 'duration'}, + 'enable_inter_node_communication': {'key': 'enableInterNodeCommunication', 'type': 'bool'}, + 'network_configuration': {'key': 'networkConfiguration', 'type': 'NetworkConfiguration'}, + 'start_task': {'key': 'startTask', 'type': 'StartTask'}, + 'certificate_references': {'key': 'certificateReferences', 'type': '[CertificateReference]'}, + 'application_package_references': {'key': 'applicationPackageReferences', 'type': '[ApplicationPackageReference]'}, + 'application_licenses': {'key': 'applicationLicenses', 'type': '[str]'}, + 'max_tasks_per_node': {'key': 'maxTasksPerNode', 'type': 'int'}, + 'task_scheduling_policy': {'key': 'taskSchedulingPolicy', 'type': 'TaskSchedulingPolicy'}, + 'user_accounts': {'key': 'userAccounts', 'type': '[UserAccount]'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, id: str, vm_size: str, display_name: str=None, cloud_service_configuration=None, virtual_machine_configuration=None, resize_timeout=None, target_dedicated_nodes: int=None, target_low_priority_nodes: int=None, enable_auto_scale: bool=None, auto_scale_formula: str=None, auto_scale_evaluation_interval=None, enable_inter_node_communication: bool=None, network_configuration=None, start_task=None, certificate_references=None, application_package_references=None, application_licenses=None, max_tasks_per_node: int=None, task_scheduling_policy=None, user_accounts=None, metadata=None, **kwargs) -> None: + super(PoolAddParameter, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.vm_size = vm_size + self.cloud_service_configuration = cloud_service_configuration + self.virtual_machine_configuration = virtual_machine_configuration + self.resize_timeout = resize_timeout + self.target_dedicated_nodes = target_dedicated_nodes + self.target_low_priority_nodes = target_low_priority_nodes + self.enable_auto_scale = enable_auto_scale + self.auto_scale_formula = auto_scale_formula + self.auto_scale_evaluation_interval = auto_scale_evaluation_interval + self.enable_inter_node_communication = enable_inter_node_communication + self.network_configuration = network_configuration + self.start_task = start_task + self.certificate_references = certificate_references + self.application_package_references = application_package_references + self.application_licenses = application_licenses + self.max_tasks_per_node = max_tasks_per_node + self.task_scheduling_policy = task_scheduling_policy + self.user_accounts = user_accounts + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/pool_delete_options.py b/azure-batch/azure/batch/models/pool_delete_options.py index 887a2c4c63ac..622241dc3594 100644 --- a/azure-batch/azure/batch/models/pool_delete_options.py +++ b/azure-batch/azure/batch/models/pool_delete_options.py @@ -50,13 +50,24 @@ class PoolDeleteOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolDeleteOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolDeleteOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_delete_options_py3.py b/azure-batch/azure/batch/models/pool_delete_options_py3.py new file mode 100644 index 000000000000..7ca41443a137 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_delete_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolDeleteOptions(Model): + """Additional parameters for delete operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolDeleteOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_disable_auto_scale_options.py b/azure-batch/azure/batch/models/pool_disable_auto_scale_options.py index 3413357b222f..96b0bc7c88f1 100644 --- a/azure-batch/azure/batch/models/pool_disable_auto_scale_options.py +++ b/azure-batch/azure/batch/models/pool_disable_auto_scale_options.py @@ -31,9 +31,16 @@ class PoolDisableAutoScaleOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(PoolDisableAutoScaleOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolDisableAutoScaleOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/pool_disable_auto_scale_options_py3.py b/azure-batch/azure/batch/models/pool_disable_auto_scale_options_py3.py new file mode 100644 index 000000000000..4a069bd0bf26 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_disable_auto_scale_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolDisableAutoScaleOptions(Model): + """Additional parameters for disable_auto_scale operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(PoolDisableAutoScaleOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/pool_enable_auto_scale_options.py b/azure-batch/azure/batch/models/pool_enable_auto_scale_options.py index 9ada604e2365..dd77582f25cd 100644 --- a/azure-batch/azure/batch/models/pool_enable_auto_scale_options.py +++ b/azure-batch/azure/batch/models/pool_enable_auto_scale_options.py @@ -50,13 +50,24 @@ class PoolEnableAutoScaleOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolEnableAutoScaleOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolEnableAutoScaleOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_enable_auto_scale_options_py3.py b/azure-batch/azure/batch/models/pool_enable_auto_scale_options_py3.py new file mode 100644 index 000000000000..507bd7022974 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_enable_auto_scale_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolEnableAutoScaleOptions(Model): + """Additional parameters for enable_auto_scale operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolEnableAutoScaleOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_enable_auto_scale_parameter.py b/azure-batch/azure/batch/models/pool_enable_auto_scale_parameter.py index e832aa0268a4..793c71c54d9f 100644 --- a/azure-batch/azure/batch/models/pool_enable_auto_scale_parameter.py +++ b/azure-batch/azure/batch/models/pool_enable_auto_scale_parameter.py @@ -41,7 +41,7 @@ class PoolEnableAutoScaleParameter(Model): 'auto_scale_evaluation_interval': {'key': 'autoScaleEvaluationInterval', 'type': 'duration'}, } - def __init__(self, auto_scale_formula=None, auto_scale_evaluation_interval=None): - super(PoolEnableAutoScaleParameter, self).__init__() - self.auto_scale_formula = auto_scale_formula - self.auto_scale_evaluation_interval = auto_scale_evaluation_interval + def __init__(self, **kwargs): + super(PoolEnableAutoScaleParameter, self).__init__(**kwargs) + self.auto_scale_formula = kwargs.get('auto_scale_formula', None) + self.auto_scale_evaluation_interval = kwargs.get('auto_scale_evaluation_interval', None) diff --git a/azure-batch/azure/batch/models/pool_enable_auto_scale_parameter_py3.py b/azure-batch/azure/batch/models/pool_enable_auto_scale_parameter_py3.py new file mode 100644 index 000000000000..1c0019e4b390 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_enable_auto_scale_parameter_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolEnableAutoScaleParameter(Model): + """Options for enabling automatic scaling on a pool. + + :param auto_scale_formula: The formula for the desired number of compute + nodes in the pool. The formula is checked for validity before it is + applied to the pool. If the formula is not valid, the Batch service + rejects the request with detailed error information. For more information + about specifying this formula, see Automatically scale compute nodes in an + Azure Batch pool + (https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling). + :type auto_scale_formula: str + :param auto_scale_evaluation_interval: The time interval at which to + automatically adjust the pool size according to the autoscale formula. The + default value is 15 minutes. The minimum and maximum value are 5 minutes + and 168 hours respectively. If you specify a value less than 5 minutes or + greater than 168 hours, the Batch service rejects the request with an + invalid property value error; if you are calling the REST API directly, + the HTTP status code is 400 (Bad Request). If you specify a new interval, + then the existing autoscale evaluation schedule will be stopped and a new + autoscale evaluation schedule will be started, with its starting time + being the time when this request was issued. + :type auto_scale_evaluation_interval: timedelta + """ + + _attribute_map = { + 'auto_scale_formula': {'key': 'autoScaleFormula', 'type': 'str'}, + 'auto_scale_evaluation_interval': {'key': 'autoScaleEvaluationInterval', 'type': 'duration'}, + } + + def __init__(self, *, auto_scale_formula: str=None, auto_scale_evaluation_interval=None, **kwargs) -> None: + super(PoolEnableAutoScaleParameter, self).__init__(**kwargs) + self.auto_scale_formula = auto_scale_formula + self.auto_scale_evaluation_interval = auto_scale_evaluation_interval diff --git a/azure-batch/azure/batch/models/pool_endpoint_configuration.py b/azure-batch/azure/batch/models/pool_endpoint_configuration.py index b9611dc55282..97859ff2bcb8 100644 --- a/azure-batch/azure/batch/models/pool_endpoint_configuration.py +++ b/azure-batch/azure/batch/models/pool_endpoint_configuration.py @@ -15,11 +15,13 @@ class PoolEndpointConfiguration(Model): """The endpoint configuration for a pool. - :param inbound_nat_pools: A list of inbound NAT pools that can be used to - address specific ports on an individual compute node externally. The - maximum number of inbound NAT pools per Batch pool is 5. If the maximum - number of inbound NAT pools is exceeded the request fails with HTTP status - code 400. + All required parameters must be populated in order to send to Azure. + + :param inbound_nat_pools: Required. A list of inbound NAT pools that can + be used to address specific ports on an individual compute node + externally. The maximum number of inbound NAT pools per Batch pool is 5. + If the maximum number of inbound NAT pools is exceeded the request fails + with HTTP status code 400. :type inbound_nat_pools: list[~azure.batch.models.InboundNATPool] """ @@ -31,6 +33,6 @@ class PoolEndpointConfiguration(Model): 'inbound_nat_pools': {'key': 'inboundNATPools', 'type': '[InboundNATPool]'}, } - def __init__(self, inbound_nat_pools): - super(PoolEndpointConfiguration, self).__init__() - self.inbound_nat_pools = inbound_nat_pools + def __init__(self, **kwargs): + super(PoolEndpointConfiguration, self).__init__(**kwargs) + self.inbound_nat_pools = kwargs.get('inbound_nat_pools', None) diff --git a/azure-batch/azure/batch/models/pool_endpoint_configuration_py3.py b/azure-batch/azure/batch/models/pool_endpoint_configuration_py3.py new file mode 100644 index 000000000000..95788b53078a --- /dev/null +++ b/azure-batch/azure/batch/models/pool_endpoint_configuration_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolEndpointConfiguration(Model): + """The endpoint configuration for a pool. + + All required parameters must be populated in order to send to Azure. + + :param inbound_nat_pools: Required. A list of inbound NAT pools that can + be used to address specific ports on an individual compute node + externally. The maximum number of inbound NAT pools per Batch pool is 5. + If the maximum number of inbound NAT pools is exceeded the request fails + with HTTP status code 400. + :type inbound_nat_pools: list[~azure.batch.models.InboundNATPool] + """ + + _validation = { + 'inbound_nat_pools': {'required': True}, + } + + _attribute_map = { + 'inbound_nat_pools': {'key': 'inboundNATPools', 'type': '[InboundNATPool]'}, + } + + def __init__(self, *, inbound_nat_pools, **kwargs) -> None: + super(PoolEndpointConfiguration, self).__init__(**kwargs) + self.inbound_nat_pools = inbound_nat_pools diff --git a/azure-batch/azure/batch/models/pool_evaluate_auto_scale_options.py b/azure-batch/azure/batch/models/pool_evaluate_auto_scale_options.py index 0ad965181bfc..5fbb7ad3fbd2 100644 --- a/azure-batch/azure/batch/models/pool_evaluate_auto_scale_options.py +++ b/azure-batch/azure/batch/models/pool_evaluate_auto_scale_options.py @@ -31,9 +31,16 @@ class PoolEvaluateAutoScaleOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(PoolEvaluateAutoScaleOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolEvaluateAutoScaleOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/pool_evaluate_auto_scale_options_py3.py b/azure-batch/azure/batch/models/pool_evaluate_auto_scale_options_py3.py new file mode 100644 index 000000000000..a2f09b9dd6ee --- /dev/null +++ b/azure-batch/azure/batch/models/pool_evaluate_auto_scale_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolEvaluateAutoScaleOptions(Model): + """Additional parameters for evaluate_auto_scale operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(PoolEvaluateAutoScaleOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/pool_evaluate_auto_scale_parameter.py b/azure-batch/azure/batch/models/pool_evaluate_auto_scale_parameter.py index bfa49f8aa63c..c74cfac21768 100644 --- a/azure-batch/azure/batch/models/pool_evaluate_auto_scale_parameter.py +++ b/azure-batch/azure/batch/models/pool_evaluate_auto_scale_parameter.py @@ -15,10 +15,12 @@ class PoolEvaluateAutoScaleParameter(Model): """Options for evaluating an automatic scaling formula on a pool. - :param auto_scale_formula: The formula for the desired number of compute - nodes in the pool. The formula is validated and its results calculated, - but it is not applied to the pool. To apply the formula to the pool, - 'Enable automatic scaling on a pool'. For more information about + All required parameters must be populated in order to send to Azure. + + :param auto_scale_formula: Required. The formula for the desired number of + compute nodes in the pool. The formula is validated and its results + calculated, but it is not applied to the pool. To apply the formula to the + pool, 'Enable automatic scaling on a pool'. For more information about specifying this formula, see Automatically scale compute nodes in an Azure Batch pool (https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling). @@ -33,6 +35,6 @@ class PoolEvaluateAutoScaleParameter(Model): 'auto_scale_formula': {'key': 'autoScaleFormula', 'type': 'str'}, } - def __init__(self, auto_scale_formula): - super(PoolEvaluateAutoScaleParameter, self).__init__() - self.auto_scale_formula = auto_scale_formula + def __init__(self, **kwargs): + super(PoolEvaluateAutoScaleParameter, self).__init__(**kwargs) + self.auto_scale_formula = kwargs.get('auto_scale_formula', None) diff --git a/azure-batch/azure/batch/models/pool_evaluate_auto_scale_parameter_py3.py b/azure-batch/azure/batch/models/pool_evaluate_auto_scale_parameter_py3.py new file mode 100644 index 000000000000..5102b28e41bd --- /dev/null +++ b/azure-batch/azure/batch/models/pool_evaluate_auto_scale_parameter_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolEvaluateAutoScaleParameter(Model): + """Options for evaluating an automatic scaling formula on a pool. + + All required parameters must be populated in order to send to Azure. + + :param auto_scale_formula: Required. The formula for the desired number of + compute nodes in the pool. The formula is validated and its results + calculated, but it is not applied to the pool. To apply the formula to the + pool, 'Enable automatic scaling on a pool'. For more information about + specifying this formula, see Automatically scale compute nodes in an Azure + Batch pool + (https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling). + :type auto_scale_formula: str + """ + + _validation = { + 'auto_scale_formula': {'required': True}, + } + + _attribute_map = { + 'auto_scale_formula': {'key': 'autoScaleFormula', 'type': 'str'}, + } + + def __init__(self, *, auto_scale_formula: str, **kwargs) -> None: + super(PoolEvaluateAutoScaleParameter, self).__init__(**kwargs) + self.auto_scale_formula = auto_scale_formula diff --git a/azure-batch/azure/batch/models/pool_exists_options.py b/azure-batch/azure/batch/models/pool_exists_options.py index edbde4a4a1b4..feffd1c91596 100644 --- a/azure-batch/azure/batch/models/pool_exists_options.py +++ b/azure-batch/azure/batch/models/pool_exists_options.py @@ -50,13 +50,24 @@ class PoolExistsOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolExistsOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolExistsOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_exists_options_py3.py b/azure-batch/azure/batch/models/pool_exists_options_py3.py new file mode 100644 index 000000000000..de152edb3231 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_exists_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolExistsOptions(Model): + """Additional parameters for exists operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolExistsOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_get_all_lifetime_statistics_options.py b/azure-batch/azure/batch/models/pool_get_all_lifetime_statistics_options.py index 3b2254c68365..dbbbcf45e91c 100644 --- a/azure-batch/azure/batch/models/pool_get_all_lifetime_statistics_options.py +++ b/azure-batch/azure/batch/models/pool_get_all_lifetime_statistics_options.py @@ -31,9 +31,16 @@ class PoolGetAllLifetimeStatisticsOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(PoolGetAllLifetimeStatisticsOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolGetAllLifetimeStatisticsOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/pool_get_all_lifetime_statistics_options_py3.py b/azure-batch/azure/batch/models/pool_get_all_lifetime_statistics_options_py3.py new file mode 100644 index 000000000000..0fc18020b72c --- /dev/null +++ b/azure-batch/azure/batch/models/pool_get_all_lifetime_statistics_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolGetAllLifetimeStatisticsOptions(Model): + """Additional parameters for get_all_lifetime_statistics operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(PoolGetAllLifetimeStatisticsOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/pool_get_options.py b/azure-batch/azure/batch/models/pool_get_options.py index 0d34b2553406..a629c21e20c4 100644 --- a/azure-batch/azure/batch/models/pool_get_options.py +++ b/azure-batch/azure/batch/models/pool_get_options.py @@ -54,15 +54,28 @@ class PoolGetOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, select=None, expand=None, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolGetOptions, self).__init__() - self.select = select - self.expand = expand - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolGetOptions, self).__init__(**kwargs) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_get_options_py3.py b/azure-batch/azure/batch/models/pool_get_options_py3.py new file mode 100644 index 000000000000..c0b04bd53d29 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_get_options_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolGetOptions(Model): + """Additional parameters for get operation. + + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, select: str=None, expand: str=None, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolGetOptions, self).__init__(**kwargs) + self.select = select + self.expand = expand + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_information.py b/azure-batch/azure/batch/models/pool_information.py index e23b3e31aa00..132e32bbe90e 100644 --- a/azure-batch/azure/batch/models/pool_information.py +++ b/azure-batch/azure/batch/models/pool_information.py @@ -41,7 +41,7 @@ class PoolInformation(Model): 'auto_pool_specification': {'key': 'autoPoolSpecification', 'type': 'AutoPoolSpecification'}, } - def __init__(self, pool_id=None, auto_pool_specification=None): - super(PoolInformation, self).__init__() - self.pool_id = pool_id - self.auto_pool_specification = auto_pool_specification + def __init__(self, **kwargs): + super(PoolInformation, self).__init__(**kwargs) + self.pool_id = kwargs.get('pool_id', None) + self.auto_pool_specification = kwargs.get('auto_pool_specification', None) diff --git a/azure-batch/azure/batch/models/pool_information_py3.py b/azure-batch/azure/batch/models/pool_information_py3.py new file mode 100644 index 000000000000..6fc8d2cefc46 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_information_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolInformation(Model): + """Specifies how a job should be assigned to a pool. + + :param pool_id: The ID of an existing pool. All the tasks of the job will + run on the specified pool. You must ensure that the pool referenced by + this property exists. If the pool does not exist at the time the Batch + service tries to schedule a job, no tasks for the job will run until you + create a pool with that id. Note that the Batch service will not reject + the job request; it will simply not run tasks until the pool exists. You + must specify either the pool ID or the auto pool specification, but not + both. + :type pool_id: str + :param auto_pool_specification: Characteristics for a temporary 'auto + pool'. The Batch service will create this auto pool when the job is + submitted. If auto pool creation fails, the Batch service moves the job to + a completed state, and the pool creation error is set in the job's + scheduling error property. The Batch service manages the lifetime (both + creation and, unless keepAlive is specified, deletion) of the auto pool. + Any user actions that affect the lifetime of the auto pool while the job + is active will result in unexpected behavior. You must specify either the + pool ID or the auto pool specification, but not both. + :type auto_pool_specification: ~azure.batch.models.AutoPoolSpecification + """ + + _attribute_map = { + 'pool_id': {'key': 'poolId', 'type': 'str'}, + 'auto_pool_specification': {'key': 'autoPoolSpecification', 'type': 'AutoPoolSpecification'}, + } + + def __init__(self, *, pool_id: str=None, auto_pool_specification=None, **kwargs) -> None: + super(PoolInformation, self).__init__(**kwargs) + self.pool_id = pool_id + self.auto_pool_specification = auto_pool_specification diff --git a/azure-batch/azure/batch/models/pool_list_options.py b/azure-batch/azure/batch/models/pool_list_options.py index 81f293aef929..1b37afe66b52 100644 --- a/azure-batch/azure/batch/models/pool_list_options.py +++ b/azure-batch/azure/batch/models/pool_list_options.py @@ -42,13 +42,24 @@ class PoolListOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, select=None, expand=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(PoolListOptions, self).__init__() - self.filter = filter - self.select = select - self.expand = expand - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolListOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/pool_list_options_py3.py b/azure-batch/azure/batch/models/pool_list_options_py3.py new file mode 100644 index 000000000000..5cc33a41e41d --- /dev/null +++ b/azure-batch/azure/batch/models/pool_list_options_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolListOptions(Model): + """Additional parameters for list operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-pools. + :type filter: str + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 pools can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, select: str=None, expand: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(PoolListOptions, self).__init__(**kwargs) + self.filter = filter + self.select = select + self.expand = expand + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/pool_list_usage_metrics_options.py b/azure-batch/azure/batch/models/pool_list_usage_metrics_options.py index bb8d7c8d6286..5b52f71aa07d 100644 --- a/azure-batch/azure/batch/models/pool_list_usage_metrics_options.py +++ b/azure-batch/azure/batch/models/pool_list_usage_metrics_options.py @@ -48,13 +48,24 @@ class PoolListUsageMetricsOptions(Model): :type ocp_date: datetime """ - def __init__(self, start_time=None, end_time=None, filter=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(PoolListUsageMetricsOptions, self).__init__() - self.start_time = start_time - self.end_time = end_time - self.filter = filter - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'start_time': {'key': '', 'type': 'iso-8601'}, + 'end_time': {'key': '', 'type': 'iso-8601'}, + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolListUsageMetricsOptions, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.filter = kwargs.get('filter', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/pool_list_usage_metrics_options_py3.py b/azure-batch/azure/batch/models/pool_list_usage_metrics_options_py3.py new file mode 100644 index 000000000000..2141cfa500f9 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_list_usage_metrics_options_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolListUsageMetricsOptions(Model): + """Additional parameters for list_usage_metrics operation. + + :param start_time: The earliest time from which to include metrics. This + must be at least two and a half hours before the current time. If not + specified this defaults to the start time of the last aggregation interval + currently available. + :type start_time: datetime + :param end_time: The latest time from which to include metrics. This must + be at least two hours before the current time. If not specified this + defaults to the end time of the last aggregation interval currently + available. + :type end_time: datetime + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics. + :type filter: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 results will be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'start_time': {'key': '', 'type': 'iso-8601'}, + 'end_time': {'key': '', 'type': 'iso-8601'}, + 'filter': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, start_time=None, end_time=None, filter: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(PoolListUsageMetricsOptions, self).__init__(**kwargs) + self.start_time = start_time + self.end_time = end_time + self.filter = filter + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/pool_node_counts.py b/azure-batch/azure/batch/models/pool_node_counts.py index bddf61e3cf79..0430b0af4fc8 100644 --- a/azure-batch/azure/batch/models/pool_node_counts.py +++ b/azure-batch/azure/batch/models/pool_node_counts.py @@ -15,7 +15,9 @@ class PoolNodeCounts(Model): """The number of nodes in each state for a pool. - :param pool_id: The ID of the pool. + All required parameters must be populated in order to send to Azure. + + :param pool_id: Required. The ID of the pool. :type pool_id: str :param dedicated: The number of dedicated nodes in each state. :type dedicated: ~azure.batch.models.NodeCounts @@ -33,8 +35,8 @@ class PoolNodeCounts(Model): 'low_priority': {'key': 'lowPriority', 'type': 'NodeCounts'}, } - def __init__(self, pool_id, dedicated=None, low_priority=None): - super(PoolNodeCounts, self).__init__() - self.pool_id = pool_id - self.dedicated = dedicated - self.low_priority = low_priority + def __init__(self, **kwargs): + super(PoolNodeCounts, self).__init__(**kwargs) + self.pool_id = kwargs.get('pool_id', None) + self.dedicated = kwargs.get('dedicated', None) + self.low_priority = kwargs.get('low_priority', None) diff --git a/azure-batch/azure/batch/models/pool_node_counts_py3.py b/azure-batch/azure/batch/models/pool_node_counts_py3.py new file mode 100644 index 000000000000..63ef08249e62 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_node_counts_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolNodeCounts(Model): + """The number of nodes in each state for a pool. + + All required parameters must be populated in order to send to Azure. + + :param pool_id: Required. The ID of the pool. + :type pool_id: str + :param dedicated: The number of dedicated nodes in each state. + :type dedicated: ~azure.batch.models.NodeCounts + :param low_priority: The number of low priority nodes in each state. + :type low_priority: ~azure.batch.models.NodeCounts + """ + + _validation = { + 'pool_id': {'required': True}, + } + + _attribute_map = { + 'pool_id': {'key': 'poolId', 'type': 'str'}, + 'dedicated': {'key': 'dedicated', 'type': 'NodeCounts'}, + 'low_priority': {'key': 'lowPriority', 'type': 'NodeCounts'}, + } + + def __init__(self, *, pool_id: str, dedicated=None, low_priority=None, **kwargs) -> None: + super(PoolNodeCounts, self).__init__(**kwargs) + self.pool_id = pool_id + self.dedicated = dedicated + self.low_priority = low_priority diff --git a/azure-batch/azure/batch/models/pool_patch_options.py b/azure-batch/azure/batch/models/pool_patch_options.py index 7e90942cbd6a..82b54aef4320 100644 --- a/azure-batch/azure/batch/models/pool_patch_options.py +++ b/azure-batch/azure/batch/models/pool_patch_options.py @@ -50,13 +50,24 @@ class PoolPatchOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolPatchOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolPatchOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_patch_options_py3.py b/azure-batch/azure/batch/models/pool_patch_options_py3.py new file mode 100644 index 000000000000..ff9f10f09236 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_patch_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolPatchOptions(Model): + """Additional parameters for patch operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolPatchOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_patch_parameter.py b/azure-batch/azure/batch/models/pool_patch_parameter.py index ebfb0afec1d9..b78ca4969660 100644 --- a/azure-batch/azure/batch/models/pool_patch_parameter.py +++ b/azure-batch/azure/batch/models/pool_patch_parameter.py @@ -58,9 +58,9 @@ class PoolPatchParameter(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, start_task=None, certificate_references=None, application_package_references=None, metadata=None): - super(PoolPatchParameter, self).__init__() - self.start_task = start_task - self.certificate_references = certificate_references - self.application_package_references = application_package_references - self.metadata = metadata + def __init__(self, **kwargs): + super(PoolPatchParameter, self).__init__(**kwargs) + self.start_task = kwargs.get('start_task', None) + self.certificate_references = kwargs.get('certificate_references', None) + self.application_package_references = kwargs.get('application_package_references', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/pool_patch_parameter_py3.py b/azure-batch/azure/batch/models/pool_patch_parameter_py3.py new file mode 100644 index 000000000000..6fb389e8ea51 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_patch_parameter_py3.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolPatchParameter(Model): + """The set of changes to be made to a pool. + + :param start_task: A task to run on each compute node as it joins the + pool. The task runs when the node is added to the pool or when the node is + restarted. If this element is present, it overwrites any existing start + task. If omitted, any existing start task is left unchanged. + :type start_task: ~azure.batch.models.StartTask + :param certificate_references: A list of certificates to be installed on + each compute node in the pool. If this element is present, it replaces any + existing certificate references configured on the pool. If omitted, any + existing certificate references are left unchanged. For Windows compute + nodes, the Batch service installs the certificates to the specified + certificate store and location. For Linux compute nodes, the certificates + are stored in a directory inside the task working directory and an + environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to + query for this location. For certificates with visibility of 'remoteUser', + a 'certs' directory is created in the user's home directory (e.g., + /home/{user-name}/certs) and certificates are placed in that directory. + :type certificate_references: + list[~azure.batch.models.CertificateReference] + :param application_package_references: A list of application packages to + be installed on each compute node in the pool. Changes to application + package references affect all new compute nodes joining the pool, but do + not affect compute nodes that are already in the pool until they are + rebooted or reimaged. If this element is present, it replaces any existing + application package references. If you specify an empty collection, then + all application package references are removed from the pool. If omitted, + any existing application package references are left unchanged. + :type application_package_references: + list[~azure.batch.models.ApplicationPackageReference] + :param metadata: A list of name-value pairs associated with the pool as + metadata. If this element is present, it replaces any existing metadata + configured on the pool. If you specify an empty collection, any metadata + is removed from the pool. If omitted, any existing metadata is left + unchanged. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _attribute_map = { + 'start_task': {'key': 'startTask', 'type': 'StartTask'}, + 'certificate_references': {'key': 'certificateReferences', 'type': '[CertificateReference]'}, + 'application_package_references': {'key': 'applicationPackageReferences', 'type': '[ApplicationPackageReference]'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, start_task=None, certificate_references=None, application_package_references=None, metadata=None, **kwargs) -> None: + super(PoolPatchParameter, self).__init__(**kwargs) + self.start_task = start_task + self.certificate_references = certificate_references + self.application_package_references = application_package_references + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/pool_remove_nodes_options.py b/azure-batch/azure/batch/models/pool_remove_nodes_options.py index beaa734ea509..14be8ddd200d 100644 --- a/azure-batch/azure/batch/models/pool_remove_nodes_options.py +++ b/azure-batch/azure/batch/models/pool_remove_nodes_options.py @@ -50,13 +50,24 @@ class PoolRemoveNodesOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolRemoveNodesOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolRemoveNodesOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_remove_nodes_options_py3.py b/azure-batch/azure/batch/models/pool_remove_nodes_options_py3.py new file mode 100644 index 000000000000..1fe5eb974b24 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_remove_nodes_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolRemoveNodesOptions(Model): + """Additional parameters for remove_nodes operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolRemoveNodesOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_resize_options.py b/azure-batch/azure/batch/models/pool_resize_options.py index 14fce92a01e2..e83a7cccfb65 100644 --- a/azure-batch/azure/batch/models/pool_resize_options.py +++ b/azure-batch/azure/batch/models/pool_resize_options.py @@ -50,13 +50,24 @@ class PoolResizeOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolResizeOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolResizeOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_resize_options_py3.py b/azure-batch/azure/batch/models/pool_resize_options_py3.py new file mode 100644 index 000000000000..ef457e811516 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_resize_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolResizeOptions(Model): + """Additional parameters for resize operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolResizeOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_resize_parameter.py b/azure-batch/azure/batch/models/pool_resize_parameter.py index aae5abad46f6..e37a88c8b189 100644 --- a/azure-batch/azure/batch/models/pool_resize_parameter.py +++ b/azure-batch/azure/batch/models/pool_resize_parameter.py @@ -42,9 +42,9 @@ class PoolResizeParameter(Model): 'node_deallocation_option': {'key': 'nodeDeallocationOption', 'type': 'ComputeNodeDeallocationOption'}, } - def __init__(self, target_dedicated_nodes=None, target_low_priority_nodes=None, resize_timeout=None, node_deallocation_option=None): - super(PoolResizeParameter, self).__init__() - self.target_dedicated_nodes = target_dedicated_nodes - self.target_low_priority_nodes = target_low_priority_nodes - self.resize_timeout = resize_timeout - self.node_deallocation_option = node_deallocation_option + def __init__(self, **kwargs): + super(PoolResizeParameter, self).__init__(**kwargs) + self.target_dedicated_nodes = kwargs.get('target_dedicated_nodes', None) + self.target_low_priority_nodes = kwargs.get('target_low_priority_nodes', None) + self.resize_timeout = kwargs.get('resize_timeout', None) + self.node_deallocation_option = kwargs.get('node_deallocation_option', None) diff --git a/azure-batch/azure/batch/models/pool_resize_parameter_py3.py b/azure-batch/azure/batch/models/pool_resize_parameter_py3.py new file mode 100644 index 000000000000..6aff469f7765 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_resize_parameter_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolResizeParameter(Model): + """Options for changing the size of a pool. + + :param target_dedicated_nodes: The desired number of dedicated compute + nodes in the pool. + :type target_dedicated_nodes: int + :param target_low_priority_nodes: The desired number of low-priority + compute nodes in the pool. + :type target_low_priority_nodes: int + :param resize_timeout: The timeout for allocation of compute nodes to the + pool or removal of compute nodes from the pool. The default value is 15 + minutes. The minimum value is 5 minutes. If you specify a value less than + 5 minutes, the Batch service returns an error; if you are calling the REST + API directly, the HTTP status code is 400 (Bad Request). + :type resize_timeout: timedelta + :param node_deallocation_option: Determines what to do with a node and its + running task(s) if the pool size is decreasing. The default value is + requeue. Possible values include: 'requeue', 'terminate', + 'taskCompletion', 'retainedData' + :type node_deallocation_option: str or + ~azure.batch.models.ComputeNodeDeallocationOption + """ + + _attribute_map = { + 'target_dedicated_nodes': {'key': 'targetDedicatedNodes', 'type': 'int'}, + 'target_low_priority_nodes': {'key': 'targetLowPriorityNodes', 'type': 'int'}, + 'resize_timeout': {'key': 'resizeTimeout', 'type': 'duration'}, + 'node_deallocation_option': {'key': 'nodeDeallocationOption', 'type': 'ComputeNodeDeallocationOption'}, + } + + def __init__(self, *, target_dedicated_nodes: int=None, target_low_priority_nodes: int=None, resize_timeout=None, node_deallocation_option=None, **kwargs) -> None: + super(PoolResizeParameter, self).__init__(**kwargs) + self.target_dedicated_nodes = target_dedicated_nodes + self.target_low_priority_nodes = target_low_priority_nodes + self.resize_timeout = resize_timeout + self.node_deallocation_option = node_deallocation_option diff --git a/azure-batch/azure/batch/models/pool_specification.py b/azure-batch/azure/batch/models/pool_specification.py index a49acc6d198b..465157cbe90f 100644 --- a/azure-batch/azure/batch/models/pool_specification.py +++ b/azure-batch/azure/batch/models/pool_specification.py @@ -15,24 +15,17 @@ class PoolSpecification(Model): """Specification for creating a new pool. + All required parameters must be populated in order to send to Azure. + :param display_name: The display name for the pool. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. :type display_name: str - :param vm_size: The size of the virtual machines in the pool. All virtual - machines in a pool are the same size. For information about available - sizes of virtual machines for Cloud Services pools (pools created with - cloudServiceConfiguration), see Sizes for Cloud Services - (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). - Batch supports all Cloud Services VM sizes except ExtraSmall, A1V2 and - A2V2. For information about available VM sizes for pools using images from - the Virtual Machines Marketplace (pools created with - virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) - (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) - or Sizes for Virtual Machines (Windows) - (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). - Batch supports all Azure VM sizes except STANDARD_A0 and those with - premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). + :param vm_size: Required. The size of the virtual machines in the pool. + All virtual machines in a pool are the same size. For information about + available sizes of virtual machines in pools, see Choose a VM size for + compute nodes in an Azure Batch pool + (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). :type vm_size: str :param cloud_service_configuration: The cloud service configuration for the pool. This property must be specified if the pool needs to be created @@ -129,7 +122,9 @@ class PoolSpecification(Model): service will make available on each compute node in the pool. The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, - pool creation will fail. + pool creation will fail. The permitted licenses available on the pool are + 'maya', 'vray', '3dsmax', 'arnold'. An additional charge applies for each + application license added to the pool. :type application_licenses: list[str] :param user_accounts: The list of user accounts to be created on each node in the pool. @@ -167,25 +162,25 @@ class PoolSpecification(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, vm_size, display_name=None, cloud_service_configuration=None, virtual_machine_configuration=None, max_tasks_per_node=None, task_scheduling_policy=None, resize_timeout=None, target_dedicated_nodes=None, target_low_priority_nodes=None, enable_auto_scale=None, auto_scale_formula=None, auto_scale_evaluation_interval=None, enable_inter_node_communication=None, network_configuration=None, start_task=None, certificate_references=None, application_package_references=None, application_licenses=None, user_accounts=None, metadata=None): - super(PoolSpecification, self).__init__() - self.display_name = display_name - self.vm_size = vm_size - self.cloud_service_configuration = cloud_service_configuration - self.virtual_machine_configuration = virtual_machine_configuration - self.max_tasks_per_node = max_tasks_per_node - self.task_scheduling_policy = task_scheduling_policy - self.resize_timeout = resize_timeout - self.target_dedicated_nodes = target_dedicated_nodes - self.target_low_priority_nodes = target_low_priority_nodes - self.enable_auto_scale = enable_auto_scale - self.auto_scale_formula = auto_scale_formula - self.auto_scale_evaluation_interval = auto_scale_evaluation_interval - self.enable_inter_node_communication = enable_inter_node_communication - self.network_configuration = network_configuration - self.start_task = start_task - self.certificate_references = certificate_references - self.application_package_references = application_package_references - self.application_licenses = application_licenses - self.user_accounts = user_accounts - self.metadata = metadata + def __init__(self, **kwargs): + super(PoolSpecification, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.vm_size = kwargs.get('vm_size', None) + self.cloud_service_configuration = kwargs.get('cloud_service_configuration', None) + self.virtual_machine_configuration = kwargs.get('virtual_machine_configuration', None) + self.max_tasks_per_node = kwargs.get('max_tasks_per_node', None) + self.task_scheduling_policy = kwargs.get('task_scheduling_policy', None) + self.resize_timeout = kwargs.get('resize_timeout', None) + self.target_dedicated_nodes = kwargs.get('target_dedicated_nodes', None) + self.target_low_priority_nodes = kwargs.get('target_low_priority_nodes', None) + self.enable_auto_scale = kwargs.get('enable_auto_scale', None) + self.auto_scale_formula = kwargs.get('auto_scale_formula', None) + self.auto_scale_evaluation_interval = kwargs.get('auto_scale_evaluation_interval', None) + self.enable_inter_node_communication = kwargs.get('enable_inter_node_communication', None) + self.network_configuration = kwargs.get('network_configuration', None) + self.start_task = kwargs.get('start_task', None) + self.certificate_references = kwargs.get('certificate_references', None) + self.application_package_references = kwargs.get('application_package_references', None) + self.application_licenses = kwargs.get('application_licenses', None) + self.user_accounts = kwargs.get('user_accounts', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/pool_specification_py3.py b/azure-batch/azure/batch/models/pool_specification_py3.py new file mode 100644 index 000000000000..7f7587526c5b --- /dev/null +++ b/azure-batch/azure/batch/models/pool_specification_py3.py @@ -0,0 +1,186 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolSpecification(Model): + """Specification for creating a new pool. + + All required parameters must be populated in order to send to Azure. + + :param display_name: The display name for the pool. The display name need + not be unique and can contain any Unicode characters up to a maximum + length of 1024. + :type display_name: str + :param vm_size: Required. The size of the virtual machines in the pool. + All virtual machines in a pool are the same size. For information about + available sizes of virtual machines in pools, see Choose a VM size for + compute nodes in an Azure Batch pool + (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). + :type vm_size: str + :param cloud_service_configuration: The cloud service configuration for + the pool. This property must be specified if the pool needs to be created + with Azure PaaS VMs. This property and virtualMachineConfiguration are + mutually exclusive and one of the properties must be specified. If neither + is specified then the Batch service returns an error; if you are calling + the REST API directly, the HTTP status code is 400 (Bad Request). This + property cannot be specified if the Batch account was created with its + poolAllocationMode property set to 'UserSubscription'. + :type cloud_service_configuration: + ~azure.batch.models.CloudServiceConfiguration + :param virtual_machine_configuration: The virtual machine configuration + for the pool. This property must be specified if the pool needs to be + created with Azure IaaS VMs. This property and cloudServiceConfiguration + are mutually exclusive and one of the properties must be specified. If + neither is specified then the Batch service returns an error; if you are + calling the REST API directly, the HTTP status code is 400 (Bad Request). + :type virtual_machine_configuration: + ~azure.batch.models.VirtualMachineConfiguration + :param max_tasks_per_node: The maximum number of tasks that can run + concurrently on a single compute node in the pool. The default value is 1. + The maximum value of this setting depends on the size of the compute nodes + in the pool (the vmSize setting). + :type max_tasks_per_node: int + :param task_scheduling_policy: How tasks are distributed across compute + nodes in a pool. + :type task_scheduling_policy: ~azure.batch.models.TaskSchedulingPolicy + :param resize_timeout: The timeout for allocation of compute nodes to the + pool. This timeout applies only to manual scaling; it has no effect when + enableAutoScale is set to true. The default value is 15 minutes. The + minimum value is 5 minutes. If you specify a value less than 5 minutes, + the Batch service rejects the request with an error; if you are calling + the REST API directly, the HTTP status code is 400 (Bad Request). + :type resize_timeout: timedelta + :param target_dedicated_nodes: The desired number of dedicated compute + nodes in the pool. This property must not be specified if enableAutoScale + is set to true. If enableAutoScale is set to false, then you must set + either targetDedicatedNodes, targetLowPriorityNodes, or both. + :type target_dedicated_nodes: int + :param target_low_priority_nodes: The desired number of low-priority + compute nodes in the pool. This property must not be specified if + enableAutoScale is set to true. If enableAutoScale is set to false, then + you must set either targetDedicatedNodes, targetLowPriorityNodes, or both. + :type target_low_priority_nodes: int + :param enable_auto_scale: Whether the pool size should automatically + adjust over time. If false, at least one of targetDedicateNodes and + targetLowPriorityNodes must be specified. If true, the autoScaleFormula + element is required. The pool automatically resizes according to the + formula. The default value is false. + :type enable_auto_scale: bool + :param auto_scale_formula: The formula for the desired number of compute + nodes in the pool. This property must not be specified if enableAutoScale + is set to false. It is required if enableAutoScale is set to true. The + formula is checked for validity before the pool is created. If the formula + is not valid, the Batch service rejects the request with detailed error + information. + :type auto_scale_formula: str + :param auto_scale_evaluation_interval: The time interval at which to + automatically adjust the pool size according to the autoscale formula. The + default value is 15 minutes. The minimum and maximum value are 5 minutes + and 168 hours respectively. If you specify a value less than 5 minutes or + greater than 168 hours, the Batch service rejects the request with an + invalid property value error; if you are calling the REST API directly, + the HTTP status code is 400 (Bad Request). + :type auto_scale_evaluation_interval: timedelta + :param enable_inter_node_communication: Whether the pool permits direct + communication between nodes. Enabling inter-node communication limits the + maximum size of the pool due to deployment restrictions on the nodes of + the pool. This may result in the pool not reaching its desired size. The + default value is false. + :type enable_inter_node_communication: bool + :param network_configuration: The network configuration for the pool. + :type network_configuration: ~azure.batch.models.NetworkConfiguration + :param start_task: A task to run on each compute node as it joins the + pool. The task runs when the node is added to the pool or when the node is + restarted. + :type start_task: ~azure.batch.models.StartTask + :param certificate_references: A list of certificates to be installed on + each compute node in the pool. For Windows compute nodes, the Batch + service installs the certificates to the specified certificate store and + location. For Linux compute nodes, the certificates are stored in a + directory inside the task working directory and an environment variable + AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this + location. For certificates with visibility of 'remoteUser', a 'certs' + directory is created in the user's home directory (e.g., + /home/{user-name}/certs) and certificates are placed in that directory. + :type certificate_references: + list[~azure.batch.models.CertificateReference] + :param application_package_references: The list of application packages to + be installed on each compute node in the pool. + :type application_package_references: + list[~azure.batch.models.ApplicationPackageReference] + :param application_licenses: The list of application licenses the Batch + service will make available on each compute node in the pool. The list of + application licenses must be a subset of available Batch service + application licenses. If a license is requested which is not supported, + pool creation will fail. The permitted licenses available on the pool are + 'maya', 'vray', '3dsmax', 'arnold'. An additional charge applies for each + application license added to the pool. + :type application_licenses: list[str] + :param user_accounts: The list of user accounts to be created on each node + in the pool. + :type user_accounts: list[~azure.batch.models.UserAccount] + :param metadata: A list of name-value pairs associated with the pool as + metadata. The Batch service does not assign any meaning to metadata; it is + solely for the use of user code. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _validation = { + 'vm_size': {'required': True}, + } + + _attribute_map = { + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'cloud_service_configuration': {'key': 'cloudServiceConfiguration', 'type': 'CloudServiceConfiguration'}, + 'virtual_machine_configuration': {'key': 'virtualMachineConfiguration', 'type': 'VirtualMachineConfiguration'}, + 'max_tasks_per_node': {'key': 'maxTasksPerNode', 'type': 'int'}, + 'task_scheduling_policy': {'key': 'taskSchedulingPolicy', 'type': 'TaskSchedulingPolicy'}, + 'resize_timeout': {'key': 'resizeTimeout', 'type': 'duration'}, + 'target_dedicated_nodes': {'key': 'targetDedicatedNodes', 'type': 'int'}, + 'target_low_priority_nodes': {'key': 'targetLowPriorityNodes', 'type': 'int'}, + 'enable_auto_scale': {'key': 'enableAutoScale', 'type': 'bool'}, + 'auto_scale_formula': {'key': 'autoScaleFormula', 'type': 'str'}, + 'auto_scale_evaluation_interval': {'key': 'autoScaleEvaluationInterval', 'type': 'duration'}, + 'enable_inter_node_communication': {'key': 'enableInterNodeCommunication', 'type': 'bool'}, + 'network_configuration': {'key': 'networkConfiguration', 'type': 'NetworkConfiguration'}, + 'start_task': {'key': 'startTask', 'type': 'StartTask'}, + 'certificate_references': {'key': 'certificateReferences', 'type': '[CertificateReference]'}, + 'application_package_references': {'key': 'applicationPackageReferences', 'type': '[ApplicationPackageReference]'}, + 'application_licenses': {'key': 'applicationLicenses', 'type': '[str]'}, + 'user_accounts': {'key': 'userAccounts', 'type': '[UserAccount]'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, vm_size: str, display_name: str=None, cloud_service_configuration=None, virtual_machine_configuration=None, max_tasks_per_node: int=None, task_scheduling_policy=None, resize_timeout=None, target_dedicated_nodes: int=None, target_low_priority_nodes: int=None, enable_auto_scale: bool=None, auto_scale_formula: str=None, auto_scale_evaluation_interval=None, enable_inter_node_communication: bool=None, network_configuration=None, start_task=None, certificate_references=None, application_package_references=None, application_licenses=None, user_accounts=None, metadata=None, **kwargs) -> None: + super(PoolSpecification, self).__init__(**kwargs) + self.display_name = display_name + self.vm_size = vm_size + self.cloud_service_configuration = cloud_service_configuration + self.virtual_machine_configuration = virtual_machine_configuration + self.max_tasks_per_node = max_tasks_per_node + self.task_scheduling_policy = task_scheduling_policy + self.resize_timeout = resize_timeout + self.target_dedicated_nodes = target_dedicated_nodes + self.target_low_priority_nodes = target_low_priority_nodes + self.enable_auto_scale = enable_auto_scale + self.auto_scale_formula = auto_scale_formula + self.auto_scale_evaluation_interval = auto_scale_evaluation_interval + self.enable_inter_node_communication = enable_inter_node_communication + self.network_configuration = network_configuration + self.start_task = start_task + self.certificate_references = certificate_references + self.application_package_references = application_package_references + self.application_licenses = application_licenses + self.user_accounts = user_accounts + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/pool_statistics.py b/azure-batch/azure/batch/models/pool_statistics.py index cbeb803bcd2f..297e40d5d450 100644 --- a/azure-batch/azure/batch/models/pool_statistics.py +++ b/azure-batch/azure/batch/models/pool_statistics.py @@ -16,14 +16,16 @@ class PoolStatistics(Model): """Contains utilization and resource usage statistics for the lifetime of a pool. - :param url: The URL for the statistics. + All required parameters must be populated in order to send to Azure. + + :param url: Required. The URL for the statistics. :type url: str - :param start_time: The start time of the time range covered by the - statistics. + :param start_time: Required. The start time of the time range covered by + the statistics. :type start_time: datetime - :param last_update_time: The time at which the statistics were last - updated. All statistics are limited to the range between startTime and - lastUpdateTime. + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. :type last_update_time: datetime :param usage_stats: Statistics related to pool usage, such as the amount of core-time used. @@ -47,10 +49,10 @@ class PoolStatistics(Model): 'resource_stats': {'key': 'resourceStats', 'type': 'ResourceStatistics'}, } - def __init__(self, url, start_time, last_update_time, usage_stats=None, resource_stats=None): - super(PoolStatistics, self).__init__() - self.url = url - self.start_time = start_time - self.last_update_time = last_update_time - self.usage_stats = usage_stats - self.resource_stats = resource_stats + def __init__(self, **kwargs): + super(PoolStatistics, self).__init__(**kwargs) + self.url = kwargs.get('url', None) + self.start_time = kwargs.get('start_time', None) + self.last_update_time = kwargs.get('last_update_time', None) + self.usage_stats = kwargs.get('usage_stats', None) + self.resource_stats = kwargs.get('resource_stats', None) diff --git a/azure-batch/azure/batch/models/pool_statistics_py3.py b/azure-batch/azure/batch/models/pool_statistics_py3.py new file mode 100644 index 000000000000..f79e93b80cf9 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_statistics_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolStatistics(Model): + """Contains utilization and resource usage statistics for the lifetime of a + pool. + + All required parameters must be populated in order to send to Azure. + + :param url: Required. The URL for the statistics. + :type url: str + :param start_time: Required. The start time of the time range covered by + the statistics. + :type start_time: datetime + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. + :type last_update_time: datetime + :param usage_stats: Statistics related to pool usage, such as the amount + of core-time used. + :type usage_stats: ~azure.batch.models.UsageStatistics + :param resource_stats: Statistics related to resource consumption by + compute nodes in the pool. + :type resource_stats: ~azure.batch.models.ResourceStatistics + """ + + _validation = { + 'url': {'required': True}, + 'start_time': {'required': True}, + 'last_update_time': {'required': True}, + } + + _attribute_map = { + 'url': {'key': 'url', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_update_time': {'key': 'lastUpdateTime', 'type': 'iso-8601'}, + 'usage_stats': {'key': 'usageStats', 'type': 'UsageStatistics'}, + 'resource_stats': {'key': 'resourceStats', 'type': 'ResourceStatistics'}, + } + + def __init__(self, *, url: str, start_time, last_update_time, usage_stats=None, resource_stats=None, **kwargs) -> None: + super(PoolStatistics, self).__init__(**kwargs) + self.url = url + self.start_time = start_time + self.last_update_time = last_update_time + self.usage_stats = usage_stats + self.resource_stats = resource_stats diff --git a/azure-batch/azure/batch/models/pool_stop_resize_options.py b/azure-batch/azure/batch/models/pool_stop_resize_options.py index 887dc52a647c..ab8fec735f61 100644 --- a/azure-batch/azure/batch/models/pool_stop_resize_options.py +++ b/azure-batch/azure/batch/models/pool_stop_resize_options.py @@ -50,13 +50,24 @@ class PoolStopResizeOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolStopResizeOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolStopResizeOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_stop_resize_options_py3.py b/azure-batch/azure/batch/models/pool_stop_resize_options_py3.py new file mode 100644 index 000000000000..d5cc404e03c2 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_stop_resize_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolStopResizeOptions(Model): + """Additional parameters for stop_resize operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolStopResizeOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_update_properties_options.py b/azure-batch/azure/batch/models/pool_update_properties_options.py index e4cab02081be..ca7f97cbdf2f 100644 --- a/azure-batch/azure/batch/models/pool_update_properties_options.py +++ b/azure-batch/azure/batch/models/pool_update_properties_options.py @@ -31,9 +31,16 @@ class PoolUpdatePropertiesOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(PoolUpdatePropertiesOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolUpdatePropertiesOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/pool_update_properties_options_py3.py b/azure-batch/azure/batch/models/pool_update_properties_options_py3.py new file mode 100644 index 000000000000..edf5065c50e0 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_update_properties_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolUpdatePropertiesOptions(Model): + """Additional parameters for update_properties operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(PoolUpdatePropertiesOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/pool_update_properties_parameter.py b/azure-batch/azure/batch/models/pool_update_properties_parameter.py index d356dae1808c..bbc35acc119d 100644 --- a/azure-batch/azure/batch/models/pool_update_properties_parameter.py +++ b/azure-batch/azure/batch/models/pool_update_properties_parameter.py @@ -15,39 +15,41 @@ class PoolUpdatePropertiesParameter(Model): """The set of changes to be made to a pool. + All required parameters must be populated in order to send to Azure. + :param start_task: A task to run on each compute node as it joins the pool. The task runs when the node is added to the pool or when the node is restarted. If this element is present, it overwrites any existing start task. If omitted, any existing start task is removed from the pool. :type start_task: ~azure.batch.models.StartTask - :param certificate_references: A list of certificates to be installed on - each compute node in the pool. This list replaces any existing certificate - references configured on the pool. If you specify an empty collection, any - existing certificate references are removed from the pool. For Windows - compute nodes, the Batch service installs the certificates to the - specified certificate store and location. For Linux compute nodes, the - certificates are stored in a directory inside the task working directory - and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the - task to query for this location. For certificates with visibility of - 'remoteUser', a 'certs' directory is created in the user's home directory - (e.g., /home/{user-name}/certs) and certificates are placed in that - directory. + :param certificate_references: Required. A list of certificates to be + installed on each compute node in the pool. This list replaces any + existing certificate references configured on the pool. If you specify an + empty collection, any existing certificate references are removed from the + pool. For Windows compute nodes, the Batch service installs the + certificates to the specified certificate store and location. For Linux + compute nodes, the certificates are stored in a directory inside the task + working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is + supplied to the task to query for this location. For certificates with + visibility of 'remoteUser', a 'certs' directory is created in the user's + home directory (e.g., /home/{user-name}/certs) and certificates are placed + in that directory. :type certificate_references: list[~azure.batch.models.CertificateReference] - :param application_package_references: A list of application packages to - be installed on each compute node in the pool. The list replaces any - existing application package references on the pool. Changes to - application package references affect all new compute nodes joining the + :param application_package_references: Required. A list of application + packages to be installed on each compute node in the pool. The list + replaces any existing application package references on the pool. Changes + to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. If omitted, or if you specify an empty collection, any existing application packages references are removed from the pool. :type application_package_references: list[~azure.batch.models.ApplicationPackageReference] - :param metadata: A list of name-value pairs associated with the pool as - metadata. This list replaces any existing metadata configured on the pool. - If omitted, or if you specify an empty collection, any existing metadata - is removed from the pool. + :param metadata: Required. A list of name-value pairs associated with the + pool as metadata. This list replaces any existing metadata configured on + the pool. If omitted, or if you specify an empty collection, any existing + metadata is removed from the pool. :type metadata: list[~azure.batch.models.MetadataItem] """ @@ -64,9 +66,9 @@ class PoolUpdatePropertiesParameter(Model): 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, } - def __init__(self, certificate_references, application_package_references, metadata, start_task=None): - super(PoolUpdatePropertiesParameter, self).__init__() - self.start_task = start_task - self.certificate_references = certificate_references - self.application_package_references = application_package_references - self.metadata = metadata + def __init__(self, **kwargs): + super(PoolUpdatePropertiesParameter, self).__init__(**kwargs) + self.start_task = kwargs.get('start_task', None) + self.certificate_references = kwargs.get('certificate_references', None) + self.application_package_references = kwargs.get('application_package_references', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-batch/azure/batch/models/pool_update_properties_parameter_py3.py b/azure-batch/azure/batch/models/pool_update_properties_parameter_py3.py new file mode 100644 index 000000000000..20457439a19f --- /dev/null +++ b/azure-batch/azure/batch/models/pool_update_properties_parameter_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolUpdatePropertiesParameter(Model): + """The set of changes to be made to a pool. + + All required parameters must be populated in order to send to Azure. + + :param start_task: A task to run on each compute node as it joins the + pool. The task runs when the node is added to the pool or when the node is + restarted. If this element is present, it overwrites any existing start + task. If omitted, any existing start task is removed from the pool. + :type start_task: ~azure.batch.models.StartTask + :param certificate_references: Required. A list of certificates to be + installed on each compute node in the pool. This list replaces any + existing certificate references configured on the pool. If you specify an + empty collection, any existing certificate references are removed from the + pool. For Windows compute nodes, the Batch service installs the + certificates to the specified certificate store and location. For Linux + compute nodes, the certificates are stored in a directory inside the task + working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is + supplied to the task to query for this location. For certificates with + visibility of 'remoteUser', a 'certs' directory is created in the user's + home directory (e.g., /home/{user-name}/certs) and certificates are placed + in that directory. + :type certificate_references: + list[~azure.batch.models.CertificateReference] + :param application_package_references: Required. A list of application + packages to be installed on each compute node in the pool. The list + replaces any existing application package references on the pool. Changes + to application package references affect all new compute nodes joining the + pool, but do not affect compute nodes that are already in the pool until + they are rebooted or reimaged. If omitted, or if you specify an empty + collection, any existing application packages references are removed from + the pool. + :type application_package_references: + list[~azure.batch.models.ApplicationPackageReference] + :param metadata: Required. A list of name-value pairs associated with the + pool as metadata. This list replaces any existing metadata configured on + the pool. If omitted, or if you specify an empty collection, any existing + metadata is removed from the pool. + :type metadata: list[~azure.batch.models.MetadataItem] + """ + + _validation = { + 'certificate_references': {'required': True}, + 'application_package_references': {'required': True}, + 'metadata': {'required': True}, + } + + _attribute_map = { + 'start_task': {'key': 'startTask', 'type': 'StartTask'}, + 'certificate_references': {'key': 'certificateReferences', 'type': '[CertificateReference]'}, + 'application_package_references': {'key': 'applicationPackageReferences', 'type': '[ApplicationPackageReference]'}, + 'metadata': {'key': 'metadata', 'type': '[MetadataItem]'}, + } + + def __init__(self, *, certificate_references, application_package_references, metadata, start_task=None, **kwargs) -> None: + super(PoolUpdatePropertiesParameter, self).__init__(**kwargs) + self.start_task = start_task + self.certificate_references = certificate_references + self.application_package_references = application_package_references + self.metadata = metadata diff --git a/azure-batch/azure/batch/models/pool_upgrade_os_options.py b/azure-batch/azure/batch/models/pool_upgrade_os_options.py index 19197471bf85..fbdfdf91e457 100644 --- a/azure-batch/azure/batch/models/pool_upgrade_os_options.py +++ b/azure-batch/azure/batch/models/pool_upgrade_os_options.py @@ -50,13 +50,24 @@ class PoolUpgradeOsOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(PoolUpgradeOsOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(PoolUpgradeOsOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/pool_upgrade_os_options_py3.py b/azure-batch/azure/batch/models/pool_upgrade_os_options_py3.py new file mode 100644 index 000000000000..67884745c1c4 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_upgrade_os_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolUpgradeOsOptions(Model): + """Additional parameters for upgrade_os operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(PoolUpgradeOsOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/pool_upgrade_os_parameter.py b/azure-batch/azure/batch/models/pool_upgrade_os_parameter.py index b26210f6a04d..17141ac0e652 100644 --- a/azure-batch/azure/batch/models/pool_upgrade_os_parameter.py +++ b/azure-batch/azure/batch/models/pool_upgrade_os_parameter.py @@ -15,8 +15,10 @@ class PoolUpgradeOSParameter(Model): """Options for upgrading the operating system of compute nodes in a pool. - :param target_os_version: The Azure Guest OS version to be installed on - the virtual machines in the pool. + All required parameters must be populated in order to send to Azure. + + :param target_os_version: Required. The Azure Guest OS version to be + installed on the virtual machines in the pool. :type target_os_version: str """ @@ -28,6 +30,6 @@ class PoolUpgradeOSParameter(Model): 'target_os_version': {'key': 'targetOSVersion', 'type': 'str'}, } - def __init__(self, target_os_version): - super(PoolUpgradeOSParameter, self).__init__() - self.target_os_version = target_os_version + def __init__(self, **kwargs): + super(PoolUpgradeOSParameter, self).__init__(**kwargs) + self.target_os_version = kwargs.get('target_os_version', None) diff --git a/azure-batch/azure/batch/models/pool_upgrade_os_parameter_py3.py b/azure-batch/azure/batch/models/pool_upgrade_os_parameter_py3.py new file mode 100644 index 000000000000..de2169d028da --- /dev/null +++ b/azure-batch/azure/batch/models/pool_upgrade_os_parameter_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolUpgradeOSParameter(Model): + """Options for upgrading the operating system of compute nodes in a pool. + + All required parameters must be populated in order to send to Azure. + + :param target_os_version: Required. The Azure Guest OS version to be + installed on the virtual machines in the pool. + :type target_os_version: str + """ + + _validation = { + 'target_os_version': {'required': True}, + } + + _attribute_map = { + 'target_os_version': {'key': 'targetOSVersion', 'type': 'str'}, + } + + def __init__(self, *, target_os_version: str, **kwargs) -> None: + super(PoolUpgradeOSParameter, self).__init__(**kwargs) + self.target_os_version = target_os_version diff --git a/azure-batch/azure/batch/models/pool_usage_metrics.py b/azure-batch/azure/batch/models/pool_usage_metrics.py index 73e62c9b187e..93cfa03f6d8f 100644 --- a/azure-batch/azure/batch/models/pool_usage_metrics.py +++ b/azure-batch/azure/batch/models/pool_usage_metrics.py @@ -15,38 +15,31 @@ class PoolUsageMetrics(Model): """Usage metrics for a pool across an aggregation interval. - :param pool_id: The ID of the pool whose metrics are aggregated in this - entry. + All required parameters must be populated in order to send to Azure. + + :param pool_id: Required. The ID of the pool whose metrics are aggregated + in this entry. :type pool_id: str - :param start_time: The start time of the aggregation interval covered by - this entry. + :param start_time: Required. The start time of the aggregation interval + covered by this entry. :type start_time: datetime - :param end_time: The end time of the aggregation interval covered by this - entry. + :param end_time: Required. The end time of the aggregation interval + covered by this entry. :type end_time: datetime - :param vm_size: The size of virtual machines in the pool. All VMs in a - pool are the same size. For information about available sizes of virtual - machines in pools, see Choose a VM size for compute nodes in an Azure - Batch pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). - Batch supports all Cloud Services VM sizes except ExtraSmall, - STANDARD_A1_V2 and STANDARD_A2_V2. For information about available VM - sizes for pools using images from the Virtual Machines Marketplace (pools - created with virtualMachineConfiguration) see Sizes for Virtual Machines - (Linux) - (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) - or Sizes for Virtual Machines (Windows) - (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). - Batch supports all Azure VM sizes except STANDARD_A0 and those with - premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). + :param vm_size: Required. The size of virtual machines in the pool. All + VMs in a pool are the same size. For information about available sizes of + virtual machines in pools, see Choose a VM size for compute nodes in an + Azure Batch pool + (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). :type vm_size: str - :param total_core_hours: The total core hours used in the pool during this - aggregation interval. + :param total_core_hours: Required. The total core hours used in the pool + during this aggregation interval. :type total_core_hours: float - :param data_ingress_gi_b: The cross data center network ingress to the - pool during this interval, in GiB. + :param data_ingress_gi_b: Required. The cross data center network ingress + to the pool during this interval, in GiB. :type data_ingress_gi_b: float - :param data_egress_gi_b: The cross data center network egress from the - pool during this interval, in GiB. + :param data_egress_gi_b: Required. The cross data center network egress + from the pool during this interval, in GiB. :type data_egress_gi_b: float """ @@ -70,12 +63,12 @@ class PoolUsageMetrics(Model): 'data_egress_gi_b': {'key': 'dataEgressGiB', 'type': 'float'}, } - def __init__(self, pool_id, start_time, end_time, vm_size, total_core_hours, data_ingress_gi_b, data_egress_gi_b): - super(PoolUsageMetrics, self).__init__() - self.pool_id = pool_id - self.start_time = start_time - self.end_time = end_time - self.vm_size = vm_size - self.total_core_hours = total_core_hours - self.data_ingress_gi_b = data_ingress_gi_b - self.data_egress_gi_b = data_egress_gi_b + def __init__(self, **kwargs): + super(PoolUsageMetrics, self).__init__(**kwargs) + self.pool_id = kwargs.get('pool_id', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.vm_size = kwargs.get('vm_size', None) + self.total_core_hours = kwargs.get('total_core_hours', None) + self.data_ingress_gi_b = kwargs.get('data_ingress_gi_b', None) + self.data_egress_gi_b = kwargs.get('data_egress_gi_b', None) diff --git a/azure-batch/azure/batch/models/pool_usage_metrics_py3.py b/azure-batch/azure/batch/models/pool_usage_metrics_py3.py new file mode 100644 index 000000000000..5c7ea9ebdf73 --- /dev/null +++ b/azure-batch/azure/batch/models/pool_usage_metrics_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PoolUsageMetrics(Model): + """Usage metrics for a pool across an aggregation interval. + + All required parameters must be populated in order to send to Azure. + + :param pool_id: Required. The ID of the pool whose metrics are aggregated + in this entry. + :type pool_id: str + :param start_time: Required. The start time of the aggregation interval + covered by this entry. + :type start_time: datetime + :param end_time: Required. The end time of the aggregation interval + covered by this entry. + :type end_time: datetime + :param vm_size: Required. The size of virtual machines in the pool. All + VMs in a pool are the same size. For information about available sizes of + virtual machines in pools, see Choose a VM size for compute nodes in an + Azure Batch pool + (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). + :type vm_size: str + :param total_core_hours: Required. The total core hours used in the pool + during this aggregation interval. + :type total_core_hours: float + :param data_ingress_gi_b: Required. The cross data center network ingress + to the pool during this interval, in GiB. + :type data_ingress_gi_b: float + :param data_egress_gi_b: Required. The cross data center network egress + from the pool during this interval, in GiB. + :type data_egress_gi_b: float + """ + + _validation = { + 'pool_id': {'required': True}, + 'start_time': {'required': True}, + 'end_time': {'required': True}, + 'vm_size': {'required': True}, + 'total_core_hours': {'required': True}, + 'data_ingress_gi_b': {'required': True}, + 'data_egress_gi_b': {'required': True}, + } + + _attribute_map = { + 'pool_id': {'key': 'poolId', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + 'total_core_hours': {'key': 'totalCoreHours', 'type': 'float'}, + 'data_ingress_gi_b': {'key': 'dataIngressGiB', 'type': 'float'}, + 'data_egress_gi_b': {'key': 'dataEgressGiB', 'type': 'float'}, + } + + def __init__(self, *, pool_id: str, start_time, end_time, vm_size: str, total_core_hours: float, data_ingress_gi_b: float, data_egress_gi_b: float, **kwargs) -> None: + super(PoolUsageMetrics, self).__init__(**kwargs) + self.pool_id = pool_id + self.start_time = start_time + self.end_time = end_time + self.vm_size = vm_size + self.total_core_hours = total_core_hours + self.data_ingress_gi_b = data_ingress_gi_b + self.data_egress_gi_b = data_egress_gi_b diff --git a/azure-batch/azure/batch/models/recent_job.py b/azure-batch/azure/batch/models/recent_job.py index f4aa8661a8a4..11d430a5393a 100644 --- a/azure-batch/azure/batch/models/recent_job.py +++ b/azure-batch/azure/batch/models/recent_job.py @@ -26,7 +26,7 @@ class RecentJob(Model): 'url': {'key': 'url', 'type': 'str'}, } - def __init__(self, id=None, url=None): - super(RecentJob, self).__init__() - self.id = id - self.url = url + def __init__(self, **kwargs): + super(RecentJob, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.url = kwargs.get('url', None) diff --git a/azure-batch/azure/batch/models/recent_job_py3.py b/azure-batch/azure/batch/models/recent_job_py3.py new file mode 100644 index 000000000000..94b133aeab05 --- /dev/null +++ b/azure-batch/azure/batch/models/recent_job_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecentJob(Model): + """Information about the most recent job to run under the job schedule. + + :param id: The ID of the job. + :type id: str + :param url: The URL of the job. + :type url: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, url: str=None, **kwargs) -> None: + super(RecentJob, self).__init__(**kwargs) + self.id = id + self.url = url diff --git a/azure-batch/azure/batch/models/resize_error.py b/azure-batch/azure/batch/models/resize_error.py index 7ed9f536d320..8d166d81a8c3 100644 --- a/azure-batch/azure/batch/models/resize_error.py +++ b/azure-batch/azure/batch/models/resize_error.py @@ -32,8 +32,8 @@ class ResizeError(Model): 'values': {'key': 'values', 'type': '[NameValuePair]'}, } - def __init__(self, code=None, message=None, values=None): - super(ResizeError, self).__init__() - self.code = code - self.message = message - self.values = values + def __init__(self, **kwargs): + super(ResizeError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.values = kwargs.get('values', None) diff --git a/azure-batch/azure/batch/models/resize_error_py3.py b/azure-batch/azure/batch/models/resize_error_py3.py new file mode 100644 index 000000000000..9e400e601df5 --- /dev/null +++ b/azure-batch/azure/batch/models/resize_error_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResizeError(Model): + """An error that occurred when resizing a pool. + + :param code: An identifier for the pool resize error. Codes are invariant + and are intended to be consumed programmatically. + :type code: str + :param message: A message describing the pool resize error, intended to be + suitable for display in a user interface. + :type message: str + :param values: A list of additional error details related to the pool + resize error. + :type values: list[~azure.batch.models.NameValuePair] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[NameValuePair]'}, + } + + def __init__(self, *, code: str=None, message: str=None, values=None, **kwargs) -> None: + super(ResizeError, self).__init__(**kwargs) + self.code = code + self.message = message + self.values = values diff --git a/azure-batch/azure/batch/models/resource_file.py b/azure-batch/azure/batch/models/resource_file.py index d5178c66d6f6..f7a04764b4a3 100644 --- a/azure-batch/azure/batch/models/resource_file.py +++ b/azure-batch/azure/batch/models/resource_file.py @@ -15,15 +15,17 @@ class ResourceFile(Model): """A file to be downloaded from Azure blob storage to a compute node. - :param blob_source: The URL of the file within Azure Blob Storage. This - URL must be readable using anonymous access; that is, the Batch service - does not present any credentials when downloading the blob. There are two - ways to get such a URL for a blob in Azure storage: include a Shared - Access Signature (SAS) granting read permissions on the blob, or set the - ACL for the blob or its container to allow public access. + All required parameters must be populated in order to send to Azure. + + :param blob_source: Required. The URL of the file within Azure Blob + Storage. This URL must be readable using anonymous access; that is, the + Batch service does not present any credentials when downloading the blob. + There are two ways to get such a URL for a blob in Azure storage: include + a Shared Access Signature (SAS) granting read permissions on the blob, or + set the ACL for the blob or its container to allow public access. :type blob_source: str - :param file_path: The location on the compute node to which to download - the file, relative to the task's working directory. + :param file_path: Required. The location on the compute node to which to + download the file, relative to the task's working directory. :type file_path: str :param file_mode: The file permission mode attribute in octal format. This property applies only to files being downloaded to Linux compute nodes. It @@ -44,8 +46,8 @@ class ResourceFile(Model): 'file_mode': {'key': 'fileMode', 'type': 'str'}, } - def __init__(self, blob_source, file_path, file_mode=None): - super(ResourceFile, self).__init__() - self.blob_source = blob_source - self.file_path = file_path - self.file_mode = file_mode + def __init__(self, **kwargs): + super(ResourceFile, self).__init__(**kwargs) + self.blob_source = kwargs.get('blob_source', None) + self.file_path = kwargs.get('file_path', None) + self.file_mode = kwargs.get('file_mode', None) diff --git a/azure-batch/azure/batch/models/resource_file_py3.py b/azure-batch/azure/batch/models/resource_file_py3.py new file mode 100644 index 000000000000..b7c792e7b587 --- /dev/null +++ b/azure-batch/azure/batch/models/resource_file_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceFile(Model): + """A file to be downloaded from Azure blob storage to a compute node. + + All required parameters must be populated in order to send to Azure. + + :param blob_source: Required. The URL of the file within Azure Blob + Storage. This URL must be readable using anonymous access; that is, the + Batch service does not present any credentials when downloading the blob. + There are two ways to get such a URL for a blob in Azure storage: include + a Shared Access Signature (SAS) granting read permissions on the blob, or + set the ACL for the blob or its container to allow public access. + :type blob_source: str + :param file_path: Required. The location on the compute node to which to + download the file, relative to the task's working directory. + :type file_path: str + :param file_mode: The file permission mode attribute in octal format. This + property applies only to files being downloaded to Linux compute nodes. It + will be ignored if it is specified for a resourceFile which will be + downloaded to a Windows node. If this property is not specified for a + Linux node, then a default value of 0770 is applied to the file. + :type file_mode: str + """ + + _validation = { + 'blob_source': {'required': True}, + 'file_path': {'required': True}, + } + + _attribute_map = { + 'blob_source': {'key': 'blobSource', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + 'file_mode': {'key': 'fileMode', 'type': 'str'}, + } + + def __init__(self, *, blob_source: str, file_path: str, file_mode: str=None, **kwargs) -> None: + super(ResourceFile, self).__init__(**kwargs) + self.blob_source = blob_source + self.file_path = file_path + self.file_mode = file_mode diff --git a/azure-batch/azure/batch/models/resource_statistics.py b/azure-batch/azure/batch/models/resource_statistics.py index 39548f017071..5e861d9ef830 100644 --- a/azure-batch/azure/batch/models/resource_statistics.py +++ b/azure-batch/azure/batch/models/resource_statistics.py @@ -15,45 +15,47 @@ class ResourceStatistics(Model): """Statistics related to resource consumption by compute nodes in a pool. - :param start_time: The start time of the time range covered by the - statistics. + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The start time of the time range covered by + the statistics. :type start_time: datetime - :param last_update_time: The time at which the statistics were last - updated. All statistics are limited to the range between startTime and - lastUpdateTime. + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. :type last_update_time: datetime - :param avg_cpu_percentage: The average CPU usage across all nodes in the - pool (percentage per node). + :param avg_cpu_percentage: Required. The average CPU usage across all + nodes in the pool (percentage per node). :type avg_cpu_percentage: float - :param avg_memory_gi_b: The average memory usage in GiB across all nodes - in the pool. + :param avg_memory_gi_b: Required. The average memory usage in GiB across + all nodes in the pool. :type avg_memory_gi_b: float - :param peak_memory_gi_b: The peak memory usage in GiB across all nodes in - the pool. + :param peak_memory_gi_b: Required. The peak memory usage in GiB across all + nodes in the pool. :type peak_memory_gi_b: float - :param avg_disk_gi_b: The average used disk space in GiB across all nodes - in the pool. + :param avg_disk_gi_b: Required. The average used disk space in GiB across + all nodes in the pool. :type avg_disk_gi_b: float - :param peak_disk_gi_b: The peak used disk space in GiB across all nodes in - the pool. + :param peak_disk_gi_b: Required. The peak used disk space in GiB across + all nodes in the pool. :type peak_disk_gi_b: float - :param disk_read_iops: The total number of disk read operations across all - nodes in the pool. + :param disk_read_iops: Required. The total number of disk read operations + across all nodes in the pool. :type disk_read_iops: long - :param disk_write_iops: The total number of disk write operations across - all nodes in the pool. + :param disk_write_iops: Required. The total number of disk write + operations across all nodes in the pool. :type disk_write_iops: long - :param disk_read_gi_b: The total amount of data in GiB of disk reads - across all nodes in the pool. + :param disk_read_gi_b: Required. The total amount of data in GiB of disk + reads across all nodes in the pool. :type disk_read_gi_b: float - :param disk_write_gi_b: The total amount of data in GiB of disk writes - across all nodes in the pool. + :param disk_write_gi_b: Required. The total amount of data in GiB of disk + writes across all nodes in the pool. :type disk_write_gi_b: float - :param network_read_gi_b: The total amount of data in GiB of network reads - across all nodes in the pool. + :param network_read_gi_b: Required. The total amount of data in GiB of + network reads across all nodes in the pool. :type network_read_gi_b: float - :param network_write_gi_b: The total amount of data in GiB of network - writes across all nodes in the pool. + :param network_write_gi_b: Required. The total amount of data in GiB of + network writes across all nodes in the pool. :type network_write_gi_b: float """ @@ -89,18 +91,18 @@ class ResourceStatistics(Model): 'network_write_gi_b': {'key': 'networkWriteGiB', 'type': 'float'}, } - def __init__(self, start_time, last_update_time, avg_cpu_percentage, avg_memory_gi_b, peak_memory_gi_b, avg_disk_gi_b, peak_disk_gi_b, disk_read_iops, disk_write_iops, disk_read_gi_b, disk_write_gi_b, network_read_gi_b, network_write_gi_b): - super(ResourceStatistics, self).__init__() - self.start_time = start_time - self.last_update_time = last_update_time - self.avg_cpu_percentage = avg_cpu_percentage - self.avg_memory_gi_b = avg_memory_gi_b - self.peak_memory_gi_b = peak_memory_gi_b - self.avg_disk_gi_b = avg_disk_gi_b - self.peak_disk_gi_b = peak_disk_gi_b - self.disk_read_iops = disk_read_iops - self.disk_write_iops = disk_write_iops - self.disk_read_gi_b = disk_read_gi_b - self.disk_write_gi_b = disk_write_gi_b - self.network_read_gi_b = network_read_gi_b - self.network_write_gi_b = network_write_gi_b + def __init__(self, **kwargs): + super(ResourceStatistics, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.last_update_time = kwargs.get('last_update_time', None) + self.avg_cpu_percentage = kwargs.get('avg_cpu_percentage', None) + self.avg_memory_gi_b = kwargs.get('avg_memory_gi_b', None) + self.peak_memory_gi_b = kwargs.get('peak_memory_gi_b', None) + self.avg_disk_gi_b = kwargs.get('avg_disk_gi_b', None) + self.peak_disk_gi_b = kwargs.get('peak_disk_gi_b', None) + self.disk_read_iops = kwargs.get('disk_read_iops', None) + self.disk_write_iops = kwargs.get('disk_write_iops', None) + self.disk_read_gi_b = kwargs.get('disk_read_gi_b', None) + self.disk_write_gi_b = kwargs.get('disk_write_gi_b', None) + self.network_read_gi_b = kwargs.get('network_read_gi_b', None) + self.network_write_gi_b = kwargs.get('network_write_gi_b', None) diff --git a/azure-batch/azure/batch/models/resource_statistics_py3.py b/azure-batch/azure/batch/models/resource_statistics_py3.py new file mode 100644 index 000000000000..bcf0830f444a --- /dev/null +++ b/azure-batch/azure/batch/models/resource_statistics_py3.py @@ -0,0 +1,108 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceStatistics(Model): + """Statistics related to resource consumption by compute nodes in a pool. + + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The start time of the time range covered by + the statistics. + :type start_time: datetime + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. + :type last_update_time: datetime + :param avg_cpu_percentage: Required. The average CPU usage across all + nodes in the pool (percentage per node). + :type avg_cpu_percentage: float + :param avg_memory_gi_b: Required. The average memory usage in GiB across + all nodes in the pool. + :type avg_memory_gi_b: float + :param peak_memory_gi_b: Required. The peak memory usage in GiB across all + nodes in the pool. + :type peak_memory_gi_b: float + :param avg_disk_gi_b: Required. The average used disk space in GiB across + all nodes in the pool. + :type avg_disk_gi_b: float + :param peak_disk_gi_b: Required. The peak used disk space in GiB across + all nodes in the pool. + :type peak_disk_gi_b: float + :param disk_read_iops: Required. The total number of disk read operations + across all nodes in the pool. + :type disk_read_iops: long + :param disk_write_iops: Required. The total number of disk write + operations across all nodes in the pool. + :type disk_write_iops: long + :param disk_read_gi_b: Required. The total amount of data in GiB of disk + reads across all nodes in the pool. + :type disk_read_gi_b: float + :param disk_write_gi_b: Required. The total amount of data in GiB of disk + writes across all nodes in the pool. + :type disk_write_gi_b: float + :param network_read_gi_b: Required. The total amount of data in GiB of + network reads across all nodes in the pool. + :type network_read_gi_b: float + :param network_write_gi_b: Required. The total amount of data in GiB of + network writes across all nodes in the pool. + :type network_write_gi_b: float + """ + + _validation = { + 'start_time': {'required': True}, + 'last_update_time': {'required': True}, + 'avg_cpu_percentage': {'required': True}, + 'avg_memory_gi_b': {'required': True}, + 'peak_memory_gi_b': {'required': True}, + 'avg_disk_gi_b': {'required': True}, + 'peak_disk_gi_b': {'required': True}, + 'disk_read_iops': {'required': True}, + 'disk_write_iops': {'required': True}, + 'disk_read_gi_b': {'required': True}, + 'disk_write_gi_b': {'required': True}, + 'network_read_gi_b': {'required': True}, + 'network_write_gi_b': {'required': True}, + } + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_update_time': {'key': 'lastUpdateTime', 'type': 'iso-8601'}, + 'avg_cpu_percentage': {'key': 'avgCPUPercentage', 'type': 'float'}, + 'avg_memory_gi_b': {'key': 'avgMemoryGiB', 'type': 'float'}, + 'peak_memory_gi_b': {'key': 'peakMemoryGiB', 'type': 'float'}, + 'avg_disk_gi_b': {'key': 'avgDiskGiB', 'type': 'float'}, + 'peak_disk_gi_b': {'key': 'peakDiskGiB', 'type': 'float'}, + 'disk_read_iops': {'key': 'diskReadIOps', 'type': 'long'}, + 'disk_write_iops': {'key': 'diskWriteIOps', 'type': 'long'}, + 'disk_read_gi_b': {'key': 'diskReadGiB', 'type': 'float'}, + 'disk_write_gi_b': {'key': 'diskWriteGiB', 'type': 'float'}, + 'network_read_gi_b': {'key': 'networkReadGiB', 'type': 'float'}, + 'network_write_gi_b': {'key': 'networkWriteGiB', 'type': 'float'}, + } + + def __init__(self, *, start_time, last_update_time, avg_cpu_percentage: float, avg_memory_gi_b: float, peak_memory_gi_b: float, avg_disk_gi_b: float, peak_disk_gi_b: float, disk_read_iops: int, disk_write_iops: int, disk_read_gi_b: float, disk_write_gi_b: float, network_read_gi_b: float, network_write_gi_b: float, **kwargs) -> None: + super(ResourceStatistics, self).__init__(**kwargs) + self.start_time = start_time + self.last_update_time = last_update_time + self.avg_cpu_percentage = avg_cpu_percentage + self.avg_memory_gi_b = avg_memory_gi_b + self.peak_memory_gi_b = peak_memory_gi_b + self.avg_disk_gi_b = avg_disk_gi_b + self.peak_disk_gi_b = peak_disk_gi_b + self.disk_read_iops = disk_read_iops + self.disk_write_iops = disk_write_iops + self.disk_read_gi_b = disk_read_gi_b + self.disk_write_gi_b = disk_write_gi_b + self.network_read_gi_b = network_read_gi_b + self.network_write_gi_b = network_write_gi_b diff --git a/azure-batch/azure/batch/models/schedule.py b/azure-batch/azure/batch/models/schedule.py index 4070986b8f9a..e6339eb98840 100644 --- a/azure-batch/azure/batch/models/schedule.py +++ b/azure-batch/azure/batch/models/schedule.py @@ -66,9 +66,9 @@ class Schedule(Model): 'recurrence_interval': {'key': 'recurrenceInterval', 'type': 'duration'}, } - def __init__(self, do_not_run_until=None, do_not_run_after=None, start_window=None, recurrence_interval=None): - super(Schedule, self).__init__() - self.do_not_run_until = do_not_run_until - self.do_not_run_after = do_not_run_after - self.start_window = start_window - self.recurrence_interval = recurrence_interval + def __init__(self, **kwargs): + super(Schedule, self).__init__(**kwargs) + self.do_not_run_until = kwargs.get('do_not_run_until', None) + self.do_not_run_after = kwargs.get('do_not_run_after', None) + self.start_window = kwargs.get('start_window', None) + self.recurrence_interval = kwargs.get('recurrence_interval', None) diff --git a/azure-batch/azure/batch/models/schedule_py3.py b/azure-batch/azure/batch/models/schedule_py3.py new file mode 100644 index 000000000000..66ab18a44f61 --- /dev/null +++ b/azure-batch/azure/batch/models/schedule_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Schedule(Model): + """The schedule according to which jobs will be created. + + :param do_not_run_until: The earliest time at which any job may be created + under this job schedule. If you do not specify a doNotRunUntil time, the + schedule becomes ready to create jobs immediately. + :type do_not_run_until: datetime + :param do_not_run_after: A time after which no job will be created under + this job schedule. The schedule will move to the completed state as soon + as this deadline is past and there is no active job under this job + schedule. If you do not specify a doNotRunAfter time, and you are creating + a recurring job schedule, the job schedule will remain active until you + explicitly terminate it. + :type do_not_run_after: datetime + :param start_window: The time interval, starting from the time at which + the schedule indicates a job should be created, within which a job must be + created. If a job is not created within the startWindow interval, then the + 'opportunity' is lost; no job will be created until the next recurrence of + the schedule. If the schedule is recurring, and the startWindow is longer + than the recurrence interval, then this is equivalent to an infinite + startWindow, because the job that is 'due' in one recurrenceInterval is + not carried forward into the next recurrence interval. The default is + infinite. The minimum value is 1 minute. If you specify a lower value, the + Batch service rejects the schedule with an error; if you are calling the + REST API directly, the HTTP status code is 400 (Bad Request). + :type start_window: timedelta + :param recurrence_interval: The time interval between the start times of + two successive jobs under the job schedule. A job schedule can have at + most one active job under it at any given time. Because a job schedule can + have at most one active job under it at any given time, if it is time to + create a new job under a job schedule, but the previous job is still + running, the Batch service will not create the new job until the previous + job finishes. If the previous job does not finish within the startWindow + period of the new recurrenceInterval, then no new job will be scheduled + for that interval. For recurring jobs, you should normally specify a + jobManagerTask in the jobSpecification. If you do not use jobManagerTask, + you will need an external process to monitor when jobs are created, add + tasks to the jobs and terminate the jobs ready for the next recurrence. + The default is that the schedule does not recur: one job is created, + within the startWindow after the doNotRunUntil time, and the schedule is + complete as soon as that job finishes. The minimum value is 1 minute. If + you specify a lower value, the Batch service rejects the schedule with an + error; if you are calling the REST API directly, the HTTP status code is + 400 (Bad Request). + :type recurrence_interval: timedelta + """ + + _attribute_map = { + 'do_not_run_until': {'key': 'doNotRunUntil', 'type': 'iso-8601'}, + 'do_not_run_after': {'key': 'doNotRunAfter', 'type': 'iso-8601'}, + 'start_window': {'key': 'startWindow', 'type': 'duration'}, + 'recurrence_interval': {'key': 'recurrenceInterval', 'type': 'duration'}, + } + + def __init__(self, *, do_not_run_until=None, do_not_run_after=None, start_window=None, recurrence_interval=None, **kwargs) -> None: + super(Schedule, self).__init__(**kwargs) + self.do_not_run_until = do_not_run_until + self.do_not_run_after = do_not_run_after + self.start_window = start_window + self.recurrence_interval = recurrence_interval diff --git a/azure-batch/azure/batch/models/start_task.py b/azure-batch/azure/batch/models/start_task.py index b455e0106e09..9f0ad707b635 100644 --- a/azure-batch/azure/batch/models/start_task.py +++ b/azure-batch/azure/batch/models/start_task.py @@ -27,14 +27,16 @@ class StartTask(Model): data. The best practice for long running tasks is to use some form of checkpointing. - :param command_line: The command line of the start task. The command line - does not run under a shell, and therefore cannot take advantage of shell - features such as environment variable expansion. If you want to take - advantage of such features, you should invoke the shell in the command - line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c - MyCommand" in Linux. If the command line refers to file paths, it should - use a relative path (relative to the task working directory), or use the - Batch provided environment variable + All required parameters must be populated in order to send to Azure. + + :param command_line: Required. The command line of the start task. The + command line does not run under a shell, and therefore cannot take + advantage of shell features such as environment variable expansion. If you + want to take advantage of such features, you should invoke the shell in + the command line, for example using "cmd /c MyCommand" in Windows or + "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, + it should use a relative path (relative to the task working directory), or + use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). :type command_line: str :param container_settings: The settings for the container under which the @@ -45,8 +47,13 @@ class StartTask(Model): container. :type container_settings: ~azure.batch.models.TaskContainerSettings :param resource_files: A list of files that the Batch service will - download to the compute node before running the command line. Files listed - under this element are located in the task's working directory. + download to the compute node before running the command line. There is a + maximum size for the list of resource files. When the max size is + exceeded, the request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. Files listed under this + element are located in the task's working directory. :type resource_files: list[~azure.batch.models.ResourceFile] :param environment_settings: A list of environment variable settings for the start task. @@ -92,12 +99,12 @@ class StartTask(Model): 'wait_for_success': {'key': 'waitForSuccess', 'type': 'bool'}, } - def __init__(self, command_line, container_settings=None, resource_files=None, environment_settings=None, user_identity=None, max_task_retry_count=None, wait_for_success=None): - super(StartTask, self).__init__() - self.command_line = command_line - self.container_settings = container_settings - self.resource_files = resource_files - self.environment_settings = environment_settings - self.user_identity = user_identity - self.max_task_retry_count = max_task_retry_count - self.wait_for_success = wait_for_success + def __init__(self, **kwargs): + super(StartTask, self).__init__(**kwargs) + self.command_line = kwargs.get('command_line', None) + self.container_settings = kwargs.get('container_settings', None) + self.resource_files = kwargs.get('resource_files', None) + self.environment_settings = kwargs.get('environment_settings', None) + self.user_identity = kwargs.get('user_identity', None) + self.max_task_retry_count = kwargs.get('max_task_retry_count', None) + self.wait_for_success = kwargs.get('wait_for_success', None) diff --git a/azure-batch/azure/batch/models/start_task_information.py b/azure-batch/azure/batch/models/start_task_information.py index 79f320658714..e8b68b0812df 100644 --- a/azure-batch/azure/batch/models/start_task_information.py +++ b/azure-batch/azure/batch/models/start_task_information.py @@ -15,12 +15,15 @@ class StartTaskInformation(Model): """Information about a start task running on a compute node. - :param state: The state of the start task on the compute node. Possible - values include: 'running', 'completed' + All required parameters must be populated in order to send to Azure. + + :param state: Required. The state of the start task on the compute node. + Possible values include: 'running', 'completed' :type state: str or ~azure.batch.models.StartTaskState - :param start_time: The time at which the start task started running. This - value is reset every time the task is restarted or retried (that is, this - is the most recent time at which the start task started running). + :param start_time: Required. The time at which the start task started + running. This value is reset every time the task is restarted or retried + (that is, this is the most recent time at which the start task started + running). :type start_time: datetime :param end_time: The time at which the start task stopped running. This is the end time of the most recent run of the start task, if that run has @@ -46,11 +49,11 @@ class StartTaskInformation(Model): property is set only if the task is in the completed state and encountered a failure. :type failure_info: ~azure.batch.models.TaskFailureInformation - :param retry_count: The number of times the task has been retried by the - Batch service. Task application failures (non-zero exit code) are retried, - pre-processing errors (the task could not be run) and file upload errors - are not retried. The Batch service will retry the task up to the limit - specified by the constraints. + :param retry_count: Required. The number of times the task has been + retried by the Batch service. Task application failures (non-zero exit + code) are retried, pre-processing errors (the task could not be run) and + file upload errors are not retried. The Batch service will retry the task + up to the limit specified by the constraints. :type retry_count: int :param last_retry_time: The most recent time at which a retry of the task started running. This element is present only if the task was retried @@ -83,14 +86,14 @@ class StartTaskInformation(Model): 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, } - def __init__(self, state, start_time, retry_count, end_time=None, exit_code=None, container_info=None, failure_info=None, last_retry_time=None, result=None): - super(StartTaskInformation, self).__init__() - self.state = state - self.start_time = start_time - self.end_time = end_time - self.exit_code = exit_code - self.container_info = container_info - self.failure_info = failure_info - self.retry_count = retry_count - self.last_retry_time = last_retry_time - self.result = result + def __init__(self, **kwargs): + super(StartTaskInformation, self).__init__(**kwargs) + self.state = kwargs.get('state', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.exit_code = kwargs.get('exit_code', None) + self.container_info = kwargs.get('container_info', None) + self.failure_info = kwargs.get('failure_info', None) + self.retry_count = kwargs.get('retry_count', None) + self.last_retry_time = kwargs.get('last_retry_time', None) + self.result = kwargs.get('result', None) diff --git a/azure-batch/azure/batch/models/start_task_information_py3.py b/azure-batch/azure/batch/models/start_task_information_py3.py new file mode 100644 index 000000000000..cb434ab21729 --- /dev/null +++ b/azure-batch/azure/batch/models/start_task_information_py3.py @@ -0,0 +1,99 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StartTaskInformation(Model): + """Information about a start task running on a compute node. + + All required parameters must be populated in order to send to Azure. + + :param state: Required. The state of the start task on the compute node. + Possible values include: 'running', 'completed' + :type state: str or ~azure.batch.models.StartTaskState + :param start_time: Required. The time at which the start task started + running. This value is reset every time the task is restarted or retried + (that is, this is the most recent time at which the start task started + running). + :type start_time: datetime + :param end_time: The time at which the start task stopped running. This is + the end time of the most recent run of the start task, if that run has + completed (even if that run failed and a retry is pending). This element + is not present if the start task is currently running. + :type end_time: datetime + :param exit_code: The exit code of the program specified on the start task + command line. This property is set only if the start task is in the + completed state. In general, the exit code for a process reflects the + specific convention implemented by the application developer for that + process. If you use the exit code value to make decisions in your code, be + sure that you know the exit code convention used by the application + process. However, if the Batch service terminates the start task (due to + timeout, or user termination via the API) you may see an operating + system-defined exit code. + :type exit_code: int + :param container_info: Information about the container under which the + task is executing. This property is set only if the task runs in a + container context. + :type container_info: + ~azure.batch.models.TaskContainerExecutionInformation + :param failure_info: Information describing the task failure, if any. This + property is set only if the task is in the completed state and encountered + a failure. + :type failure_info: ~azure.batch.models.TaskFailureInformation + :param retry_count: Required. The number of times the task has been + retried by the Batch service. Task application failures (non-zero exit + code) are retried, pre-processing errors (the task could not be run) and + file upload errors are not retried. The Batch service will retry the task + up to the limit specified by the constraints. + :type retry_count: int + :param last_retry_time: The most recent time at which a retry of the task + started running. This element is present only if the task was retried + (i.e. retryCount is nonzero). If present, this is typically the same as + startTime, but may be different if the task has been restarted for reasons + other than retry; for example, if the compute node was rebooted during a + retry, then the startTime is updated but the lastRetryTime is not. + :type last_retry_time: datetime + :param result: The result of the task execution. If the value is 'failed', + then the details of the failure can be found in the failureInfo property. + Possible values include: 'success', 'failure' + :type result: str or ~azure.batch.models.TaskExecutionResult + """ + + _validation = { + 'state': {'required': True}, + 'start_time': {'required': True}, + 'retry_count': {'required': True}, + } + + _attribute_map = { + 'state': {'key': 'state', 'type': 'StartTaskState'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'exit_code': {'key': 'exitCode', 'type': 'int'}, + 'container_info': {'key': 'containerInfo', 'type': 'TaskContainerExecutionInformation'}, + 'failure_info': {'key': 'failureInfo', 'type': 'TaskFailureInformation'}, + 'retry_count': {'key': 'retryCount', 'type': 'int'}, + 'last_retry_time': {'key': 'lastRetryTime', 'type': 'iso-8601'}, + 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, + } + + def __init__(self, *, state, start_time, retry_count: int, end_time=None, exit_code: int=None, container_info=None, failure_info=None, last_retry_time=None, result=None, **kwargs) -> None: + super(StartTaskInformation, self).__init__(**kwargs) + self.state = state + self.start_time = start_time + self.end_time = end_time + self.exit_code = exit_code + self.container_info = container_info + self.failure_info = failure_info + self.retry_count = retry_count + self.last_retry_time = last_retry_time + self.result = result diff --git a/azure-batch/azure/batch/models/start_task_py3.py b/azure-batch/azure/batch/models/start_task_py3.py new file mode 100644 index 000000000000..7fb958151b3e --- /dev/null +++ b/azure-batch/azure/batch/models/start_task_py3.py @@ -0,0 +1,110 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StartTask(Model): + """A task which is run when a compute node joins a pool in the Azure Batch + service, or when the compute node is rebooted or reimaged. + + Batch will retry tasks when a recovery operation is triggered on a compute + node. Examples of recovery operations include (but are not limited to) when + an unhealthy compute node is rebooted or a compute node disappeared due to + host failure. Retries due to recovery operations are independent of and are + not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is + 0, an internal retry due to a recovery operation may occur. Because of + this, all tasks should be idempotent. This means tasks need to tolerate + being interrupted and restarted without causing any corruption or duplicate + data. The best practice for long running tasks is to use some form of + checkpointing. + + All required parameters must be populated in order to send to Azure. + + :param command_line: Required. The command line of the start task. The + command line does not run under a shell, and therefore cannot take + advantage of shell features such as environment variable expansion. If you + want to take advantage of such features, you should invoke the shell in + the command line, for example using "cmd /c MyCommand" in Windows or + "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, + it should use a relative path (relative to the task working directory), or + use the Batch provided environment variable + (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). + :type command_line: str + :param container_settings: The settings for the container under which the + start task runs. When this is specified, all directories recursively below + the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the + node) are mapped into the container, all task environment variables are + mapped into the container, and the task command line is executed in the + container. + :type container_settings: ~azure.batch.models.TaskContainerSettings + :param resource_files: A list of files that the Batch service will + download to the compute node before running the command line. There is a + maximum size for the list of resource files. When the max size is + exceeded, the request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. Files listed under this + element are located in the task's working directory. + :type resource_files: list[~azure.batch.models.ResourceFile] + :param environment_settings: A list of environment variable settings for + the start task. + :type environment_settings: list[~azure.batch.models.EnvironmentSetting] + :param user_identity: The user identity under which the start task runs. + If omitted, the task runs as a non-administrative user unique to the task. + :type user_identity: ~azure.batch.models.UserIdentity + :param max_task_retry_count: The maximum number of times the task may be + retried. The Batch service retries a task if its exit code is nonzero. + Note that this value specifically controls the number of retries. The + Batch service will try the task once, and may then retry up to this limit. + For example, if the maximum retry count is 3, Batch tries the task up to 4 + times (one initial try and 3 retries). If the maximum retry count is 0, + the Batch service does not retry the task. If the maximum retry count is + -1, the Batch service retries the task without limit. + :type max_task_retry_count: int + :param wait_for_success: Whether the Batch service should wait for the + start task to complete successfully (that is, to exit with exit code 0) + before scheduling any tasks on the compute node. If true and the start + task fails on a compute node, the Batch service retries the start task up + to its maximum retry count (maxTaskRetryCount). If the task has still not + completed successfully after all retries, then the Batch service marks the + compute node unusable, and will not schedule tasks to it. This condition + can be detected via the node state and failure info details. If false, the + Batch service will not wait for the start task to complete. In this case, + other tasks can start executing on the compute node while the start task + is still running; and even if the start task fails, new tasks will + continue to be scheduled on the node. The default is false. + :type wait_for_success: bool + """ + + _validation = { + 'command_line': {'required': True}, + } + + _attribute_map = { + 'command_line': {'key': 'commandLine', 'type': 'str'}, + 'container_settings': {'key': 'containerSettings', 'type': 'TaskContainerSettings'}, + 'resource_files': {'key': 'resourceFiles', 'type': '[ResourceFile]'}, + 'environment_settings': {'key': 'environmentSettings', 'type': '[EnvironmentSetting]'}, + 'user_identity': {'key': 'userIdentity', 'type': 'UserIdentity'}, + 'max_task_retry_count': {'key': 'maxTaskRetryCount', 'type': 'int'}, + 'wait_for_success': {'key': 'waitForSuccess', 'type': 'bool'}, + } + + def __init__(self, *, command_line: str, container_settings=None, resource_files=None, environment_settings=None, user_identity=None, max_task_retry_count: int=None, wait_for_success: bool=None, **kwargs) -> None: + super(StartTask, self).__init__(**kwargs) + self.command_line = command_line + self.container_settings = container_settings + self.resource_files = resource_files + self.environment_settings = environment_settings + self.user_identity = user_identity + self.max_task_retry_count = max_task_retry_count + self.wait_for_success = wait_for_success diff --git a/azure-batch/azure/batch/models/subtask_information.py b/azure-batch/azure/batch/models/subtask_information.py index 48ff530ae8d6..dbbff70448ec 100644 --- a/azure-batch/azure/batch/models/subtask_information.py +++ b/azure-batch/azure/batch/models/subtask_information.py @@ -81,17 +81,17 @@ class SubtaskInformation(Model): 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, } - def __init__(self, id=None, node_info=None, start_time=None, end_time=None, exit_code=None, container_info=None, failure_info=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, result=None): - super(SubtaskInformation, self).__init__() - self.id = id - self.node_info = node_info - self.start_time = start_time - self.end_time = end_time - self.exit_code = exit_code - self.container_info = container_info - self.failure_info = failure_info - self.state = state - self.state_transition_time = state_transition_time - self.previous_state = previous_state - self.previous_state_transition_time = previous_state_transition_time - self.result = result + def __init__(self, **kwargs): + super(SubtaskInformation, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.node_info = kwargs.get('node_info', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.exit_code = kwargs.get('exit_code', None) + self.container_info = kwargs.get('container_info', None) + self.failure_info = kwargs.get('failure_info', None) + self.state = kwargs.get('state', None) + self.state_transition_time = kwargs.get('state_transition_time', None) + self.previous_state = kwargs.get('previous_state', None) + self.previous_state_transition_time = kwargs.get('previous_state_transition_time', None) + self.result = kwargs.get('result', None) diff --git a/azure-batch/azure/batch/models/subtask_information_py3.py b/azure-batch/azure/batch/models/subtask_information_py3.py new file mode 100644 index 000000000000..1399c8660186 --- /dev/null +++ b/azure-batch/azure/batch/models/subtask_information_py3.py @@ -0,0 +1,97 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubtaskInformation(Model): + """Information about an Azure Batch subtask. + + :param id: The ID of the subtask. + :type id: int + :param node_info: Information about the compute node on which the subtask + ran. + :type node_info: ~azure.batch.models.ComputeNodeInformation + :param start_time: The time at which the subtask started running. If the + subtask has been restarted or retried, this is the most recent time at + which the subtask started running. + :type start_time: datetime + :param end_time: The time at which the subtask completed. This property is + set only if the subtask is in the Completed state. + :type end_time: datetime + :param exit_code: The exit code of the program specified on the subtask + command line. This property is set only if the subtask is in the completed + state. In general, the exit code for a process reflects the specific + convention implemented by the application developer for that process. If + you use the exit code value to make decisions in your code, be sure that + you know the exit code convention used by the application process. + However, if the Batch service terminates the subtask (due to timeout, or + user termination via the API) you may see an operating system-defined exit + code. + :type exit_code: int + :param container_info: Information about the container under which the + task is executing. This property is set only if the task runs in a + container context. + :type container_info: + ~azure.batch.models.TaskContainerExecutionInformation + :param failure_info: Information describing the task failure, if any. This + property is set only if the task is in the completed state and encountered + a failure. + :type failure_info: ~azure.batch.models.TaskFailureInformation + :param state: The current state of the subtask. Possible values include: + 'preparing', 'running', 'completed' + :type state: str or ~azure.batch.models.SubtaskState + :param state_transition_time: The time at which the subtask entered its + current state. + :type state_transition_time: datetime + :param previous_state: The previous state of the subtask. This property is + not set if the subtask is in its initial running state. Possible values + include: 'preparing', 'running', 'completed' + :type previous_state: str or ~azure.batch.models.SubtaskState + :param previous_state_transition_time: The time at which the subtask + entered its previous state. This property is not set if the subtask is in + its initial running state. + :type previous_state_transition_time: datetime + :param result: The result of the task execution. If the value is 'failed', + then the details of the failure can be found in the failureInfo property. + Possible values include: 'success', 'failure' + :type result: str or ~azure.batch.models.TaskExecutionResult + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'node_info': {'key': 'nodeInfo', 'type': 'ComputeNodeInformation'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'exit_code': {'key': 'exitCode', 'type': 'int'}, + 'container_info': {'key': 'containerInfo', 'type': 'TaskContainerExecutionInformation'}, + 'failure_info': {'key': 'failureInfo', 'type': 'TaskFailureInformation'}, + 'state': {'key': 'state', 'type': 'SubtaskState'}, + 'state_transition_time': {'key': 'stateTransitionTime', 'type': 'iso-8601'}, + 'previous_state': {'key': 'previousState', 'type': 'SubtaskState'}, + 'previous_state_transition_time': {'key': 'previousStateTransitionTime', 'type': 'iso-8601'}, + 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, + } + + def __init__(self, *, id: int=None, node_info=None, start_time=None, end_time=None, exit_code: int=None, container_info=None, failure_info=None, state=None, state_transition_time=None, previous_state=None, previous_state_transition_time=None, result=None, **kwargs) -> None: + super(SubtaskInformation, self).__init__(**kwargs) + self.id = id + self.node_info = node_info + self.start_time = start_time + self.end_time = end_time + self.exit_code = exit_code + self.container_info = container_info + self.failure_info = failure_info + self.state = state + self.state_transition_time = state_transition_time + self.previous_state = previous_state + self.previous_state_transition_time = previous_state_transition_time + self.result = result diff --git a/azure-batch/azure/batch/models/task_add_collection_options.py b/azure-batch/azure/batch/models/task_add_collection_options.py index d74fafab7c08..f0622c9c6dfc 100644 --- a/azure-batch/azure/batch/models/task_add_collection_options.py +++ b/azure-batch/azure/batch/models/task_add_collection_options.py @@ -31,9 +31,16 @@ class TaskAddCollectionOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(TaskAddCollectionOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskAddCollectionOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/task_add_collection_options_py3.py b/azure-batch/azure/batch/models/task_add_collection_options_py3.py new file mode 100644 index 000000000000..634f522c04f0 --- /dev/null +++ b/azure-batch/azure/batch/models/task_add_collection_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskAddCollectionOptions(Model): + """Additional parameters for add_collection operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(TaskAddCollectionOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/task_add_collection_parameter.py b/azure-batch/azure/batch/models/task_add_collection_parameter.py index bfa88fff8419..56b615c4a7a1 100644 --- a/azure-batch/azure/batch/models/task_add_collection_parameter.py +++ b/azure-batch/azure/batch/models/task_add_collection_parameter.py @@ -15,11 +15,13 @@ class TaskAddCollectionParameter(Model): """A collection of Azure Batch tasks to add. - :param value: The collection of tasks to add. The total serialized size of - this collection must be less than 4MB. If it is greater than 4MB (for - example if each task has 100's of resource files or environment - variables), the request will fail with code 'RequestBodyTooLarge' and - should be retried again with fewer tasks. + All required parameters must be populated in order to send to Azure. + + :param value: Required. The collection of tasks to add. The maximum count + of tasks is 100. The total serialized size of this collection must be less + than 1MB. If it is greater than 1MB (for example if each task has 100's of + resource files or environment variables), the request will fail with code + 'RequestBodyTooLarge' and should be retried again with fewer tasks. :type value: list[~azure.batch.models.TaskAddParameter] """ @@ -31,6 +33,6 @@ class TaskAddCollectionParameter(Model): 'value': {'key': 'value', 'type': '[TaskAddParameter]'}, } - def __init__(self, value): - super(TaskAddCollectionParameter, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(TaskAddCollectionParameter, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-batch/azure/batch/models/task_add_collection_parameter_py3.py b/azure-batch/azure/batch/models/task_add_collection_parameter_py3.py new file mode 100644 index 000000000000..bfeaf536c43a --- /dev/null +++ b/azure-batch/azure/batch/models/task_add_collection_parameter_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskAddCollectionParameter(Model): + """A collection of Azure Batch tasks to add. + + All required parameters must be populated in order to send to Azure. + + :param value: Required. The collection of tasks to add. The maximum count + of tasks is 100. The total serialized size of this collection must be less + than 1MB. If it is greater than 1MB (for example if each task has 100's of + resource files or environment variables), the request will fail with code + 'RequestBodyTooLarge' and should be retried again with fewer tasks. + :type value: list[~azure.batch.models.TaskAddParameter] + """ + + _validation = { + 'value': {'required': True, 'max_items': 100}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[TaskAddParameter]'}, + } + + def __init__(self, *, value, **kwargs) -> None: + super(TaskAddCollectionParameter, self).__init__(**kwargs) + self.value = value diff --git a/azure-batch/azure/batch/models/task_add_collection_result.py b/azure-batch/azure/batch/models/task_add_collection_result.py index 8811388c8e3e..0dbc142075ad 100644 --- a/azure-batch/azure/batch/models/task_add_collection_result.py +++ b/azure-batch/azure/batch/models/task_add_collection_result.py @@ -23,6 +23,6 @@ class TaskAddCollectionResult(Model): 'value': {'key': 'value', 'type': '[TaskAddResult]'}, } - def __init__(self, value=None): - super(TaskAddCollectionResult, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(TaskAddCollectionResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-batch/azure/batch/models/task_add_collection_result_py3.py b/azure-batch/azure/batch/models/task_add_collection_result_py3.py new file mode 100644 index 000000000000..06cde63a9c5a --- /dev/null +++ b/azure-batch/azure/batch/models/task_add_collection_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskAddCollectionResult(Model): + """The result of adding a collection of tasks to a job. + + :param value: The results of the add task collection operation. + :type value: list[~azure.batch.models.TaskAddResult] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[TaskAddResult]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(TaskAddCollectionResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-batch/azure/batch/models/task_add_options.py b/azure-batch/azure/batch/models/task_add_options.py index 53482e408885..667cc19d1208 100644 --- a/azure-batch/azure/batch/models/task_add_options.py +++ b/azure-batch/azure/batch/models/task_add_options.py @@ -31,9 +31,16 @@ class TaskAddOptions(Model): :type ocp_date: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(TaskAddOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskAddOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/task_add_options_py3.py b/azure-batch/azure/batch/models/task_add_options_py3.py new file mode 100644 index 000000000000..da9c6a8c3e46 --- /dev/null +++ b/azure-batch/azure/batch/models/task_add_options_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskAddOptions(Model): + """Additional parameters for add operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(TaskAddOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/task_add_parameter.py b/azure-batch/azure/batch/models/task_add_parameter.py index cf752aefd842..c0ac69877a6d 100644 --- a/azure-batch/azure/batch/models/task_add_parameter.py +++ b/azure-batch/azure/batch/models/task_add_parameter.py @@ -26,26 +26,28 @@ class TaskAddParameter(Model): data. The best practice for long running tasks is to use some form of checkpointing. - :param id: A string that uniquely identifies the task within the job. The - ID can contain any combination of alphanumeric characters including - hyphens and underscores, and cannot contain more than 64 characters. The - ID is case-preserving and case-insensitive (that is, you may not have two - IDs within a job that differ only by case). + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the task within the + job. The ID can contain any combination of alphanumeric characters + including hyphens and underscores, and cannot contain more than 64 + characters. The ID is case-preserving and case-insensitive (that is, you + may not have two IDs within a job that differ only by case). :type id: str :param display_name: A display name for the task. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. :type display_name: str - :param command_line: The command line of the task. For multi-instance - tasks, the command line is executed as the primary task, after the primary - task and all subtasks have finished executing the coordination command - line. The command line does not run under a shell, and therefore cannot - take advantage of shell features such as environment variable expansion. - If you want to take advantage of such features, you should invoke the - shell in the command line, for example using "cmd /c MyCommand" in Windows - or "/bin/sh -c MyCommand" in Linux. If the command line refers to file - paths, it should use a relative path (relative to the task working - directory), or use the Batch provided environment variable + :param command_line: Required. The command line of the task. For + multi-instance tasks, the command line is executed as the primary task, + after the primary task and all subtasks have finished executing the + coordination command line. The command line does not run under a shell, + and therefore cannot take advantage of shell features such as environment + variable expansion. If you want to take advantage of such features, you + should invoke the shell in the command line, for example using "cmd /c + MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command + line refers to file paths, it should use a relative path (relative to the + task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). :type command_line: str :param container_settings: The settings for the container under which the @@ -63,7 +65,12 @@ class TaskAddParameter(Model): :param resource_files: A list of files that the Batch service will download to the compute node before running the command line. For multi-instance tasks, the resource files will only be downloaded to the - compute node on which the primary task is executed. + compute node on which the primary task is executed. There is a maximum + size for the list of resource files. When the max size is exceeded, the + request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. :type resource_files: list[~azure.batch.models.ResourceFile] :param output_files: A list of files that the Batch service will upload from the compute node after running the command line. For multi-instance @@ -141,20 +148,20 @@ class TaskAddParameter(Model): 'authentication_token_settings': {'key': 'authenticationTokenSettings', 'type': 'AuthenticationTokenSettings'}, } - def __init__(self, id, command_line, display_name=None, container_settings=None, exit_conditions=None, resource_files=None, output_files=None, environment_settings=None, affinity_info=None, constraints=None, user_identity=None, multi_instance_settings=None, depends_on=None, application_package_references=None, authentication_token_settings=None): - super(TaskAddParameter, self).__init__() - self.id = id - self.display_name = display_name - self.command_line = command_line - self.container_settings = container_settings - self.exit_conditions = exit_conditions - self.resource_files = resource_files - self.output_files = output_files - self.environment_settings = environment_settings - self.affinity_info = affinity_info - self.constraints = constraints - self.user_identity = user_identity - self.multi_instance_settings = multi_instance_settings - self.depends_on = depends_on - self.application_package_references = application_package_references - self.authentication_token_settings = authentication_token_settings + def __init__(self, **kwargs): + super(TaskAddParameter, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.command_line = kwargs.get('command_line', None) + self.container_settings = kwargs.get('container_settings', None) + self.exit_conditions = kwargs.get('exit_conditions', None) + self.resource_files = kwargs.get('resource_files', None) + self.output_files = kwargs.get('output_files', None) + self.environment_settings = kwargs.get('environment_settings', None) + self.affinity_info = kwargs.get('affinity_info', None) + self.constraints = kwargs.get('constraints', None) + self.user_identity = kwargs.get('user_identity', None) + self.multi_instance_settings = kwargs.get('multi_instance_settings', None) + self.depends_on = kwargs.get('depends_on', None) + self.application_package_references = kwargs.get('application_package_references', None) + self.authentication_token_settings = kwargs.get('authentication_token_settings', None) diff --git a/azure-batch/azure/batch/models/task_add_parameter_py3.py b/azure-batch/azure/batch/models/task_add_parameter_py3.py new file mode 100644 index 000000000000..31f571e71d31 --- /dev/null +++ b/azure-batch/azure/batch/models/task_add_parameter_py3.py @@ -0,0 +1,167 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskAddParameter(Model): + """An Azure Batch task to add. + + Batch will retry tasks when a recovery operation is triggered on a compute + node. Examples of recovery operations include (but are not limited to) when + an unhealthy compute node is rebooted or a compute node disappeared due to + host failure. Retries due to recovery operations are independent of and are + not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is + 0, an internal retry due to a recovery operation may occur. Because of + this, all tasks should be idempotent. This means tasks need to tolerate + being interrupted and restarted without causing any corruption or duplicate + data. The best practice for long running tasks is to use some form of + checkpointing. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. A string that uniquely identifies the task within the + job. The ID can contain any combination of alphanumeric characters + including hyphens and underscores, and cannot contain more than 64 + characters. The ID is case-preserving and case-insensitive (that is, you + may not have two IDs within a job that differ only by case). + :type id: str + :param display_name: A display name for the task. The display name need + not be unique and can contain any Unicode characters up to a maximum + length of 1024. + :type display_name: str + :param command_line: Required. The command line of the task. For + multi-instance tasks, the command line is executed as the primary task, + after the primary task and all subtasks have finished executing the + coordination command line. The command line does not run under a shell, + and therefore cannot take advantage of shell features such as environment + variable expansion. If you want to take advantage of such features, you + should invoke the shell in the command line, for example using "cmd /c + MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command + line refers to file paths, it should use a relative path (relative to the + task working directory), or use the Batch provided environment variable + (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). + :type command_line: str + :param container_settings: The settings for the container under which the + task runs. If the pool that will run this task has containerConfiguration + set, this must be set as well. If the pool that will run this task doesn't + have containerConfiguration set, this must not be set. When this is + specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR + (the root of Azure Batch directories on the node) are mapped into the + container, all task environment variables are mapped into the container, + and the task command line is executed in the container. + :type container_settings: ~azure.batch.models.TaskContainerSettings + :param exit_conditions: How the Batch service should respond when the task + completes. + :type exit_conditions: ~azure.batch.models.ExitConditions + :param resource_files: A list of files that the Batch service will + download to the compute node before running the command line. For + multi-instance tasks, the resource files will only be downloaded to the + compute node on which the primary task is executed. There is a maximum + size for the list of resource files. When the max size is exceeded, the + request will fail and the response error code will be + RequestEntityTooLarge. If this occurs, the collection of ResourceFiles + must be reduced in size. This can be achieved using .zip files, + Application Packages, or Docker Containers. + :type resource_files: list[~azure.batch.models.ResourceFile] + :param output_files: A list of files that the Batch service will upload + from the compute node after running the command line. For multi-instance + tasks, the files will only be uploaded from the compute node on which the + primary task is executed. + :type output_files: list[~azure.batch.models.OutputFile] + :param environment_settings: A list of environment variable settings for + the task. + :type environment_settings: list[~azure.batch.models.EnvironmentSetting] + :param affinity_info: A locality hint that can be used by the Batch + service to select a compute node on which to start the new task. + :type affinity_info: ~azure.batch.models.AffinityInformation + :param constraints: The execution constraints that apply to this task. If + you do not specify constraints, the maxTaskRetryCount is the + maxTaskRetryCount specified for the job, and the maxWallClockTime and + retentionTime are infinite. + :type constraints: ~azure.batch.models.TaskConstraints + :param user_identity: The user identity under which the task runs. If + omitted, the task runs as a non-administrative user unique to the task. + :type user_identity: ~azure.batch.models.UserIdentity + :param multi_instance_settings: An object that indicates that the task is + a multi-instance task, and contains information about how to run the + multi-instance task. + :type multi_instance_settings: ~azure.batch.models.MultiInstanceSettings + :param depends_on: The tasks that this task depends on. This task will not + be scheduled until all tasks that it depends on have completed + successfully. If any of those tasks fail and exhaust their retry counts, + this task will never be scheduled. If the job does not have + usesTaskDependencies set to true, and this element is present, the request + fails with error code TaskDependenciesNotSpecifiedOnJob. + :type depends_on: ~azure.batch.models.TaskDependencies + :param application_package_references: A list of application packages that + the Batch service will deploy to the compute node before running the + command line. Application packages are downloaded and deployed to a shared + directory, not the task working directory. Therefore, if a referenced + package is already on the compute node, and is up to date, then it is not + re-downloaded; the existing copy on the compute node is used. If a + referenced application package cannot be installed, for example because + the package has been deleted or because download failed, the task fails. + :type application_package_references: + list[~azure.batch.models.ApplicationPackageReference] + :param authentication_token_settings: The settings for an authentication + token that the task can use to perform Batch service operations. If this + property is set, the Batch service provides the task with an + authentication token which can be used to authenticate Batch service + operations without requiring an account access key. The token is provided + via the AZ_BATCH_AUTHENTICATION_TOKEN environment variable. The operations + that the task can carry out using the token depend on the settings. For + example, a task can request job permissions in order to add other tasks to + the job, or check the status of the job or of other tasks under the job. + :type authentication_token_settings: + ~azure.batch.models.AuthenticationTokenSettings + """ + + _validation = { + 'id': {'required': True}, + 'command_line': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'command_line': {'key': 'commandLine', 'type': 'str'}, + 'container_settings': {'key': 'containerSettings', 'type': 'TaskContainerSettings'}, + 'exit_conditions': {'key': 'exitConditions', 'type': 'ExitConditions'}, + 'resource_files': {'key': 'resourceFiles', 'type': '[ResourceFile]'}, + 'output_files': {'key': 'outputFiles', 'type': '[OutputFile]'}, + 'environment_settings': {'key': 'environmentSettings', 'type': '[EnvironmentSetting]'}, + 'affinity_info': {'key': 'affinityInfo', 'type': 'AffinityInformation'}, + 'constraints': {'key': 'constraints', 'type': 'TaskConstraints'}, + 'user_identity': {'key': 'userIdentity', 'type': 'UserIdentity'}, + 'multi_instance_settings': {'key': 'multiInstanceSettings', 'type': 'MultiInstanceSettings'}, + 'depends_on': {'key': 'dependsOn', 'type': 'TaskDependencies'}, + 'application_package_references': {'key': 'applicationPackageReferences', 'type': '[ApplicationPackageReference]'}, + 'authentication_token_settings': {'key': 'authenticationTokenSettings', 'type': 'AuthenticationTokenSettings'}, + } + + def __init__(self, *, id: str, command_line: str, display_name: str=None, container_settings=None, exit_conditions=None, resource_files=None, output_files=None, environment_settings=None, affinity_info=None, constraints=None, user_identity=None, multi_instance_settings=None, depends_on=None, application_package_references=None, authentication_token_settings=None, **kwargs) -> None: + super(TaskAddParameter, self).__init__(**kwargs) + self.id = id + self.display_name = display_name + self.command_line = command_line + self.container_settings = container_settings + self.exit_conditions = exit_conditions + self.resource_files = resource_files + self.output_files = output_files + self.environment_settings = environment_settings + self.affinity_info = affinity_info + self.constraints = constraints + self.user_identity = user_identity + self.multi_instance_settings = multi_instance_settings + self.depends_on = depends_on + self.application_package_references = application_package_references + self.authentication_token_settings = authentication_token_settings diff --git a/azure-batch/azure/batch/models/task_add_result.py b/azure-batch/azure/batch/models/task_add_result.py index 49c4a9abb453..7528e30d9506 100644 --- a/azure-batch/azure/batch/models/task_add_result.py +++ b/azure-batch/azure/batch/models/task_add_result.py @@ -15,10 +15,12 @@ class TaskAddResult(Model): """Result for a single task added as part of an add task collection operation. - :param status: The status of the add task request. Possible values - include: 'success', 'clientError', 'serverError' + All required parameters must be populated in order to send to Azure. + + :param status: Required. The status of the add task request. Possible + values include: 'success', 'clientError', 'serverError' :type status: str or ~azure.batch.models.TaskAddStatus - :param task_id: The ID of the task for which this is the result. + :param task_id: Required. The ID of the task for which this is the result. :type task_id: str :param e_tag: The ETag of the task, if the task was successfully added. You can use this to detect whether the task has changed between requests. @@ -48,11 +50,11 @@ class TaskAddResult(Model): 'error': {'key': 'error', 'type': 'BatchError'}, } - def __init__(self, status, task_id, e_tag=None, last_modified=None, location=None, error=None): - super(TaskAddResult, self).__init__() - self.status = status - self.task_id = task_id - self.e_tag = e_tag - self.last_modified = last_modified - self.location = location - self.error = error + def __init__(self, **kwargs): + super(TaskAddResult, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.task_id = kwargs.get('task_id', None) + self.e_tag = kwargs.get('e_tag', None) + self.last_modified = kwargs.get('last_modified', None) + self.location = kwargs.get('location', None) + self.error = kwargs.get('error', None) diff --git a/azure-batch/azure/batch/models/task_add_result_py3.py b/azure-batch/azure/batch/models/task_add_result_py3.py new file mode 100644 index 000000000000..7add806bdee3 --- /dev/null +++ b/azure-batch/azure/batch/models/task_add_result_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskAddResult(Model): + """Result for a single task added as part of an add task collection operation. + + All required parameters must be populated in order to send to Azure. + + :param status: Required. The status of the add task request. Possible + values include: 'success', 'clientError', 'serverError' + :type status: str or ~azure.batch.models.TaskAddStatus + :param task_id: Required. The ID of the task for which this is the result. + :type task_id: str + :param e_tag: The ETag of the task, if the task was successfully added. + You can use this to detect whether the task has changed between requests. + In particular, you can be pass the ETag with an Update Task request to + specify that your changes should take effect only if nobody else has + modified the job in the meantime. + :type e_tag: str + :param last_modified: The last modified time of the task. + :type last_modified: datetime + :param location: The URL of the task, if the task was successfully added. + :type location: str + :param error: The error encountered while attempting to add the task. + :type error: ~azure.batch.models.BatchError + """ + + _validation = { + 'status': {'required': True}, + 'task_id': {'required': True}, + } + + _attribute_map = { + 'status': {'key': 'status', 'type': 'TaskAddStatus'}, + 'task_id': {'key': 'taskId', 'type': 'str'}, + 'e_tag': {'key': 'eTag', 'type': 'str'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'location': {'key': 'location', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'BatchError'}, + } + + def __init__(self, *, status, task_id: str, e_tag: str=None, last_modified=None, location: str=None, error=None, **kwargs) -> None: + super(TaskAddResult, self).__init__(**kwargs) + self.status = status + self.task_id = task_id + self.e_tag = e_tag + self.last_modified = last_modified + self.location = location + self.error = error diff --git a/azure-batch/azure/batch/models/task_constraints.py b/azure-batch/azure/batch/models/task_constraints.py index 86452bec78a2..22898fad6ff2 100644 --- a/azure-batch/azure/batch/models/task_constraints.py +++ b/azure-batch/azure/batch/models/task_constraints.py @@ -46,8 +46,8 @@ class TaskConstraints(Model): 'max_task_retry_count': {'key': 'maxTaskRetryCount', 'type': 'int'}, } - def __init__(self, max_wall_clock_time=None, retention_time=None, max_task_retry_count=None): - super(TaskConstraints, self).__init__() - self.max_wall_clock_time = max_wall_clock_time - self.retention_time = retention_time - self.max_task_retry_count = max_task_retry_count + def __init__(self, **kwargs): + super(TaskConstraints, self).__init__(**kwargs) + self.max_wall_clock_time = kwargs.get('max_wall_clock_time', None) + self.retention_time = kwargs.get('retention_time', None) + self.max_task_retry_count = kwargs.get('max_task_retry_count', None) diff --git a/azure-batch/azure/batch/models/task_constraints_py3.py b/azure-batch/azure/batch/models/task_constraints_py3.py new file mode 100644 index 000000000000..2070d09669c6 --- /dev/null +++ b/azure-batch/azure/batch/models/task_constraints_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskConstraints(Model): + """Execution constraints to apply to a task. + + :param max_wall_clock_time: The maximum elapsed time that the task may + run, measured from the time the task starts. If the task does not complete + within the time limit, the Batch service terminates it. If this is not + specified, there is no time limit on how long the task may run. + :type max_wall_clock_time: timedelta + :param retention_time: The minimum time to retain the task directory on + the compute node where it ran, from the time it completes execution. After + this time, the Batch service may delete the task directory and all its + contents. The default is infinite, i.e. the task directory will be + retained until the compute node is removed or reimaged. + :type retention_time: timedelta + :param max_task_retry_count: The maximum number of times the task may be + retried. The Batch service retries a task if its exit code is nonzero. + Note that this value specifically controls the number of retries for the + task executable due to a nonzero exit code. The Batch service will try the + task once, and may then retry up to this limit. For example, if the + maximum retry count is 3, Batch tries the task up to 4 times (one initial + try and 3 retries). If the maximum retry count is 0, the Batch service + does not retry the task after the first attempt. If the maximum retry + count is -1, the Batch service retries the task without limit. Resource + files and application packages are only downloaded again if the task is + retried on a new compute node. + :type max_task_retry_count: int + """ + + _attribute_map = { + 'max_wall_clock_time': {'key': 'maxWallClockTime', 'type': 'duration'}, + 'retention_time': {'key': 'retentionTime', 'type': 'duration'}, + 'max_task_retry_count': {'key': 'maxTaskRetryCount', 'type': 'int'}, + } + + def __init__(self, *, max_wall_clock_time=None, retention_time=None, max_task_retry_count: int=None, **kwargs) -> None: + super(TaskConstraints, self).__init__(**kwargs) + self.max_wall_clock_time = max_wall_clock_time + self.retention_time = retention_time + self.max_task_retry_count = max_task_retry_count diff --git a/azure-batch/azure/batch/models/task_container_execution_information.py b/azure-batch/azure/batch/models/task_container_execution_information.py index 1bbcbc1776da..6ade9177af36 100644 --- a/azure-batch/azure/batch/models/task_container_execution_information.py +++ b/azure-batch/azure/batch/models/task_container_execution_information.py @@ -33,8 +33,8 @@ class TaskContainerExecutionInformation(Model): 'error': {'key': 'error', 'type': 'str'}, } - def __init__(self, container_id=None, state=None, error=None): - super(TaskContainerExecutionInformation, self).__init__() - self.container_id = container_id - self.state = state - self.error = error + def __init__(self, **kwargs): + super(TaskContainerExecutionInformation, self).__init__(**kwargs) + self.container_id = kwargs.get('container_id', None) + self.state = kwargs.get('state', None) + self.error = kwargs.get('error', None) diff --git a/azure-batch/azure/batch/models/task_container_execution_information_py3.py b/azure-batch/azure/batch/models/task_container_execution_information_py3.py new file mode 100644 index 000000000000..44f9e7e62b55 --- /dev/null +++ b/azure-batch/azure/batch/models/task_container_execution_information_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskContainerExecutionInformation(Model): + """Contains information about the container which a task is executing. + + :param container_id: The ID of the container. + :type container_id: str + :param state: The state of the container. This is the state of the + container according to the Docker service. It is equivalent to the status + field returned by "docker inspect". + :type state: str + :param error: Detailed error information about the container. This is the + detailed error string from the Docker service, if available. It is + equivalent to the error field returned by "docker inspect". + :type error: str + """ + + _attribute_map = { + 'container_id': {'key': 'containerId', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'str'}, + } + + def __init__(self, *, container_id: str=None, state: str=None, error: str=None, **kwargs) -> None: + super(TaskContainerExecutionInformation, self).__init__(**kwargs) + self.container_id = container_id + self.state = state + self.error = error diff --git a/azure-batch/azure/batch/models/task_container_settings.py b/azure-batch/azure/batch/models/task_container_settings.py index 041e5f3a89aa..ac1a56f827a5 100644 --- a/azure-batch/azure/batch/models/task_container_settings.py +++ b/azure-batch/azure/batch/models/task_container_settings.py @@ -15,14 +15,16 @@ class TaskContainerSettings(Model): """The container settings for a task. + All required parameters must be populated in order to send to Azure. + :param container_run_options: Additional options to the container create command. These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service. :type container_run_options: str - :param image_name: The image to use to create the container in which the - task will run. This is the full image reference, as would be specified to - "docker pull". If no tag is provided as part of the image name, the tag - ":latest" is used as a default. + :param image_name: Required. The image to use to create the container in + which the task will run. This is the full image reference, as would be + specified to "docker pull". If no tag is provided as part of the image + name, the tag ":latest" is used as a default. :type image_name: str :param registry: The private registry which contains the container image. This setting can be omitted if was already provided at pool creation. @@ -39,8 +41,8 @@ class TaskContainerSettings(Model): 'registry': {'key': 'registry', 'type': 'ContainerRegistry'}, } - def __init__(self, image_name, container_run_options=None, registry=None): - super(TaskContainerSettings, self).__init__() - self.container_run_options = container_run_options - self.image_name = image_name - self.registry = registry + def __init__(self, **kwargs): + super(TaskContainerSettings, self).__init__(**kwargs) + self.container_run_options = kwargs.get('container_run_options', None) + self.image_name = kwargs.get('image_name', None) + self.registry = kwargs.get('registry', None) diff --git a/azure-batch/azure/batch/models/task_container_settings_py3.py b/azure-batch/azure/batch/models/task_container_settings_py3.py new file mode 100644 index 000000000000..dabd7b99c516 --- /dev/null +++ b/azure-batch/azure/batch/models/task_container_settings_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskContainerSettings(Model): + """The container settings for a task. + + All required parameters must be populated in order to send to Azure. + + :param container_run_options: Additional options to the container create + command. These additional options are supplied as arguments to the "docker + create" command, in addition to those controlled by the Batch Service. + :type container_run_options: str + :param image_name: Required. The image to use to create the container in + which the task will run. This is the full image reference, as would be + specified to "docker pull". If no tag is provided as part of the image + name, the tag ":latest" is used as a default. + :type image_name: str + :param registry: The private registry which contains the container image. + This setting can be omitted if was already provided at pool creation. + :type registry: ~azure.batch.models.ContainerRegistry + """ + + _validation = { + 'image_name': {'required': True}, + } + + _attribute_map = { + 'container_run_options': {'key': 'containerRunOptions', 'type': 'str'}, + 'image_name': {'key': 'imageName', 'type': 'str'}, + 'registry': {'key': 'registry', 'type': 'ContainerRegistry'}, + } + + def __init__(self, *, image_name: str, container_run_options: str=None, registry=None, **kwargs) -> None: + super(TaskContainerSettings, self).__init__(**kwargs) + self.container_run_options = container_run_options + self.image_name = image_name + self.registry = registry diff --git a/azure-batch/azure/batch/models/task_counts.py b/azure-batch/azure/batch/models/task_counts.py index 9662b020ff1d..057f2d7ada4c 100644 --- a/azure-batch/azure/batch/models/task_counts.py +++ b/azure-batch/azure/batch/models/task_counts.py @@ -15,22 +15,21 @@ class TaskCounts(Model): """The task counts for a job. - :param active: The number of tasks in the active state. + All required parameters must be populated in order to send to Azure. + + :param active: Required. The number of tasks in the active state. :type active: int - :param running: The number of tasks in the running or preparing state. + :param running: Required. The number of tasks in the running or preparing + state. :type running: int - :param completed: The number of tasks in the completed state. + :param completed: Required. The number of tasks in the completed state. :type completed: int - :param succeeded: The number of tasks which succeeded. A task succeeds if - its result (found in the executionInfo property) is 'success'. + :param succeeded: Required. The number of tasks which succeeded. A task + succeeds if its result (found in the executionInfo property) is 'success'. :type succeeded: int - :param failed: The number of tasks which failed. A task fails if its - result (found in the executionInfo property) is 'failure'. + :param failed: Required. The number of tasks which failed. A task fails if + its result (found in the executionInfo property) is 'failure'. :type failed: int - :param validation_status: Whether the task counts have been validated. - Possible values include: 'validated', 'unvalidated' - :type validation_status: str or - ~azure.batch.models.TaskCountValidationStatus """ _validation = { @@ -39,7 +38,6 @@ class TaskCounts(Model): 'completed': {'required': True}, 'succeeded': {'required': True}, 'failed': {'required': True}, - 'validation_status': {'required': True}, } _attribute_map = { @@ -48,14 +46,12 @@ class TaskCounts(Model): 'completed': {'key': 'completed', 'type': 'int'}, 'succeeded': {'key': 'succeeded', 'type': 'int'}, 'failed': {'key': 'failed', 'type': 'int'}, - 'validation_status': {'key': 'validationStatus', 'type': 'TaskCountValidationStatus'}, } - def __init__(self, active, running, completed, succeeded, failed, validation_status): - super(TaskCounts, self).__init__() - self.active = active - self.running = running - self.completed = completed - self.succeeded = succeeded - self.failed = failed - self.validation_status = validation_status + def __init__(self, **kwargs): + super(TaskCounts, self).__init__(**kwargs) + self.active = kwargs.get('active', None) + self.running = kwargs.get('running', None) + self.completed = kwargs.get('completed', None) + self.succeeded = kwargs.get('succeeded', None) + self.failed = kwargs.get('failed', None) diff --git a/azure-batch/azure/batch/models/task_counts_py3.py b/azure-batch/azure/batch/models/task_counts_py3.py new file mode 100644 index 000000000000..623c7dd86e04 --- /dev/null +++ b/azure-batch/azure/batch/models/task_counts_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskCounts(Model): + """The task counts for a job. + + All required parameters must be populated in order to send to Azure. + + :param active: Required. The number of tasks in the active state. + :type active: int + :param running: Required. The number of tasks in the running or preparing + state. + :type running: int + :param completed: Required. The number of tasks in the completed state. + :type completed: int + :param succeeded: Required. The number of tasks which succeeded. A task + succeeds if its result (found in the executionInfo property) is 'success'. + :type succeeded: int + :param failed: Required. The number of tasks which failed. A task fails if + its result (found in the executionInfo property) is 'failure'. + :type failed: int + """ + + _validation = { + 'active': {'required': True}, + 'running': {'required': True}, + 'completed': {'required': True}, + 'succeeded': {'required': True}, + 'failed': {'required': True}, + } + + _attribute_map = { + 'active': {'key': 'active', 'type': 'int'}, + 'running': {'key': 'running', 'type': 'int'}, + 'completed': {'key': 'completed', 'type': 'int'}, + 'succeeded': {'key': 'succeeded', 'type': 'int'}, + 'failed': {'key': 'failed', 'type': 'int'}, + } + + def __init__(self, *, active: int, running: int, completed: int, succeeded: int, failed: int, **kwargs) -> None: + super(TaskCounts, self).__init__(**kwargs) + self.active = active + self.running = running + self.completed = completed + self.succeeded = succeeded + self.failed = failed diff --git a/azure-batch/azure/batch/models/task_delete_options.py b/azure-batch/azure/batch/models/task_delete_options.py index 4deb04ebc5d0..2daf7608a81a 100644 --- a/azure-batch/azure/batch/models/task_delete_options.py +++ b/azure-batch/azure/batch/models/task_delete_options.py @@ -50,13 +50,24 @@ class TaskDeleteOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(TaskDeleteOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskDeleteOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/task_delete_options_py3.py b/azure-batch/azure/batch/models/task_delete_options_py3.py new file mode 100644 index 000000000000..4b836c652275 --- /dev/null +++ b/azure-batch/azure/batch/models/task_delete_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskDeleteOptions(Model): + """Additional parameters for delete operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(TaskDeleteOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/task_dependencies.py b/azure-batch/azure/batch/models/task_dependencies.py index ec8868cde3e0..f5bfb8c41a68 100644 --- a/azure-batch/azure/batch/models/task_dependencies.py +++ b/azure-batch/azure/batch/models/task_dependencies.py @@ -36,7 +36,7 @@ class TaskDependencies(Model): 'task_id_ranges': {'key': 'taskIdRanges', 'type': '[TaskIdRange]'}, } - def __init__(self, task_ids=None, task_id_ranges=None): - super(TaskDependencies, self).__init__() - self.task_ids = task_ids - self.task_id_ranges = task_id_ranges + def __init__(self, **kwargs): + super(TaskDependencies, self).__init__(**kwargs) + self.task_ids = kwargs.get('task_ids', None) + self.task_id_ranges = kwargs.get('task_id_ranges', None) diff --git a/azure-batch/azure/batch/models/task_dependencies_py3.py b/azure-batch/azure/batch/models/task_dependencies_py3.py new file mode 100644 index 000000000000..133f3268f68b --- /dev/null +++ b/azure-batch/azure/batch/models/task_dependencies_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskDependencies(Model): + """Specifies any dependencies of a task. Any task that is explicitly specified + or within a dependency range must complete before the dependant task will + be scheduled. + + :param task_ids: The list of task IDs that this task depends on. All tasks + in this list must complete successfully before the dependent task can be + scheduled. The taskIds collection is limited to 64000 characters total + (i.e. the combined length of all task IDs). If the taskIds collection + exceeds the maximum length, the Add Task request fails with error code + TaskDependencyListTooLong. In this case consider using task ID ranges + instead. + :type task_ids: list[str] + :param task_id_ranges: The list of task ID ranges that this task depends + on. All tasks in all ranges must complete successfully before the + dependent task can be scheduled. + :type task_id_ranges: list[~azure.batch.models.TaskIdRange] + """ + + _attribute_map = { + 'task_ids': {'key': 'taskIds', 'type': '[str]'}, + 'task_id_ranges': {'key': 'taskIdRanges', 'type': '[TaskIdRange]'}, + } + + def __init__(self, *, task_ids=None, task_id_ranges=None, **kwargs) -> None: + super(TaskDependencies, self).__init__(**kwargs) + self.task_ids = task_ids + self.task_id_ranges = task_id_ranges diff --git a/azure-batch/azure/batch/models/task_execution_information.py b/azure-batch/azure/batch/models/task_execution_information.py index dd0cc32c4b6a..97e313dd382e 100644 --- a/azure-batch/azure/batch/models/task_execution_information.py +++ b/azure-batch/azure/batch/models/task_execution_information.py @@ -15,6 +15,8 @@ class TaskExecutionInformation(Model): """Information about the execution of a task. + All required parameters must be populated in order to send to Azure. + :param start_time: The time at which the task started running. 'Running' corresponds to the running state, so if the task specifies resource files or application packages, then the start time reflects the time at which @@ -45,11 +47,11 @@ class TaskExecutionInformation(Model): property is set only if the task is in the completed state and encountered a failure. :type failure_info: ~azure.batch.models.TaskFailureInformation - :param retry_count: The number of times the task has been retried by the - Batch service. Task application failures (non-zero exit code) are retried, - pre-processing errors (the task could not be run) and file upload errors - are not retried. The Batch service will retry the task up to the limit - specified by the constraints. + :param retry_count: Required. The number of times the task has been + retried by the Batch service. Task application failures (non-zero exit + code) are retried, pre-processing errors (the task could not be run) and + file upload errors are not retried. The Batch service will retry the task + up to the limit specified by the constraints. :type retry_count: int :param last_retry_time: The most recent time at which a retry of the task started running. This element is present only if the task was retried @@ -58,12 +60,12 @@ class TaskExecutionInformation(Model): other than retry; for example, if the compute node was rebooted during a retry, then the startTime is updated but the lastRetryTime is not. :type last_retry_time: datetime - :param requeue_count: The number of times the task has been requeued by - the Batch service as the result of a user request. When the user removes - nodes from a pool (by resizing/shrinking the pool) or when the job is - being disabled, the user can specify that running tasks on the nodes be - requeued for execution. This count tracks how many times the task has been - requeued for these reasons. + :param requeue_count: Required. The number of times the task has been + requeued by the Batch service as the result of a user request. When the + user removes nodes from a pool (by resizing/shrinking the pool) or when + the job is being disabled, the user can specify that running tasks on the + nodes be requeued for execution. This count tracks how many times the task + has been requeued for these reasons. :type requeue_count: int :param last_requeue_time: The most recent time at which the task has been requeued by the Batch service as the result of a user request. This @@ -93,15 +95,15 @@ class TaskExecutionInformation(Model): 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, } - def __init__(self, retry_count, requeue_count, start_time=None, end_time=None, exit_code=None, container_info=None, failure_info=None, last_retry_time=None, last_requeue_time=None, result=None): - super(TaskExecutionInformation, self).__init__() - self.start_time = start_time - self.end_time = end_time - self.exit_code = exit_code - self.container_info = container_info - self.failure_info = failure_info - self.retry_count = retry_count - self.last_retry_time = last_retry_time - self.requeue_count = requeue_count - self.last_requeue_time = last_requeue_time - self.result = result + def __init__(self, **kwargs): + super(TaskExecutionInformation, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.exit_code = kwargs.get('exit_code', None) + self.container_info = kwargs.get('container_info', None) + self.failure_info = kwargs.get('failure_info', None) + self.retry_count = kwargs.get('retry_count', None) + self.last_retry_time = kwargs.get('last_retry_time', None) + self.requeue_count = kwargs.get('requeue_count', None) + self.last_requeue_time = kwargs.get('last_requeue_time', None) + self.result = kwargs.get('result', None) diff --git a/azure-batch/azure/batch/models/task_execution_information_py3.py b/azure-batch/azure/batch/models/task_execution_information_py3.py new file mode 100644 index 000000000000..330bb6f4b152 --- /dev/null +++ b/azure-batch/azure/batch/models/task_execution_information_py3.py @@ -0,0 +1,109 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskExecutionInformation(Model): + """Information about the execution of a task. + + All required parameters must be populated in order to send to Azure. + + :param start_time: The time at which the task started running. 'Running' + corresponds to the running state, so if the task specifies resource files + or application packages, then the start time reflects the time at which + the task started downloading or deploying these. If the task has been + restarted or retried, this is the most recent time at which the task + started running. This property is present only for tasks that are in the + running or completed state. + :type start_time: datetime + :param end_time: The time at which the task completed. This property is + set only if the task is in the Completed state. + :type end_time: datetime + :param exit_code: The exit code of the program specified on the task + command line. This property is set only if the task is in the completed + state. In general, the exit code for a process reflects the specific + convention implemented by the application developer for that process. If + you use the exit code value to make decisions in your code, be sure that + you know the exit code convention used by the application process. + However, if the Batch service terminates the task (due to timeout, or user + termination via the API) you may see an operating system-defined exit + code. + :type exit_code: int + :param container_info: Information about the container under which the + task is executing. This property is set only if the task runs in a + container context. + :type container_info: + ~azure.batch.models.TaskContainerExecutionInformation + :param failure_info: Information describing the task failure, if any. This + property is set only if the task is in the completed state and encountered + a failure. + :type failure_info: ~azure.batch.models.TaskFailureInformation + :param retry_count: Required. The number of times the task has been + retried by the Batch service. Task application failures (non-zero exit + code) are retried, pre-processing errors (the task could not be run) and + file upload errors are not retried. The Batch service will retry the task + up to the limit specified by the constraints. + :type retry_count: int + :param last_retry_time: The most recent time at which a retry of the task + started running. This element is present only if the task was retried + (i.e. retryCount is nonzero). If present, this is typically the same as + startTime, but may be different if the task has been restarted for reasons + other than retry; for example, if the compute node was rebooted during a + retry, then the startTime is updated but the lastRetryTime is not. + :type last_retry_time: datetime + :param requeue_count: Required. The number of times the task has been + requeued by the Batch service as the result of a user request. When the + user removes nodes from a pool (by resizing/shrinking the pool) or when + the job is being disabled, the user can specify that running tasks on the + nodes be requeued for execution. This count tracks how many times the task + has been requeued for these reasons. + :type requeue_count: int + :param last_requeue_time: The most recent time at which the task has been + requeued by the Batch service as the result of a user request. This + property is set only if the requeueCount is nonzero. + :type last_requeue_time: datetime + :param result: The result of the task execution. If the value is 'failed', + then the details of the failure can be found in the failureInfo property. + Possible values include: 'success', 'failure' + :type result: str or ~azure.batch.models.TaskExecutionResult + """ + + _validation = { + 'retry_count': {'required': True}, + 'requeue_count': {'required': True}, + } + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'exit_code': {'key': 'exitCode', 'type': 'int'}, + 'container_info': {'key': 'containerInfo', 'type': 'TaskContainerExecutionInformation'}, + 'failure_info': {'key': 'failureInfo', 'type': 'TaskFailureInformation'}, + 'retry_count': {'key': 'retryCount', 'type': 'int'}, + 'last_retry_time': {'key': 'lastRetryTime', 'type': 'iso-8601'}, + 'requeue_count': {'key': 'requeueCount', 'type': 'int'}, + 'last_requeue_time': {'key': 'lastRequeueTime', 'type': 'iso-8601'}, + 'result': {'key': 'result', 'type': 'TaskExecutionResult'}, + } + + def __init__(self, *, retry_count: int, requeue_count: int, start_time=None, end_time=None, exit_code: int=None, container_info=None, failure_info=None, last_retry_time=None, last_requeue_time=None, result=None, **kwargs) -> None: + super(TaskExecutionInformation, self).__init__(**kwargs) + self.start_time = start_time + self.end_time = end_time + self.exit_code = exit_code + self.container_info = container_info + self.failure_info = failure_info + self.retry_count = retry_count + self.last_retry_time = last_retry_time + self.requeue_count = requeue_count + self.last_requeue_time = last_requeue_time + self.result = result diff --git a/azure-batch/azure/batch/models/task_failure_information.py b/azure-batch/azure/batch/models/task_failure_information.py index 46437cef188d..fc6a45fc30f7 100644 --- a/azure-batch/azure/batch/models/task_failure_information.py +++ b/azure-batch/azure/batch/models/task_failure_information.py @@ -15,8 +15,10 @@ class TaskFailureInformation(Model): """Information about a task failure. - :param category: The category of the task error. Possible values include: - 'userError', 'serverError' + All required parameters must be populated in order to send to Azure. + + :param category: Required. The category of the task error. Possible values + include: 'userError', 'serverError' :type category: str or ~azure.batch.models.ErrorCategory :param code: An identifier for the task error. Codes are invariant and are intended to be consumed programmatically. @@ -39,9 +41,9 @@ class TaskFailureInformation(Model): 'details': {'key': 'details', 'type': '[NameValuePair]'}, } - def __init__(self, category, code=None, message=None, details=None): - super(TaskFailureInformation, self).__init__() - self.category = category - self.code = code - self.message = message - self.details = details + def __init__(self, **kwargs): + super(TaskFailureInformation, self).__init__(**kwargs) + self.category = kwargs.get('category', None) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.details = kwargs.get('details', None) diff --git a/azure-batch/azure/batch/models/task_failure_information_py3.py b/azure-batch/azure/batch/models/task_failure_information_py3.py new file mode 100644 index 000000000000..b5eece450dc3 --- /dev/null +++ b/azure-batch/azure/batch/models/task_failure_information_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskFailureInformation(Model): + """Information about a task failure. + + All required parameters must be populated in order to send to Azure. + + :param category: Required. The category of the task error. Possible values + include: 'userError', 'serverError' + :type category: str or ~azure.batch.models.ErrorCategory + :param code: An identifier for the task error. Codes are invariant and are + intended to be consumed programmatically. + :type code: str + :param message: A message describing the task error, intended to be + suitable for display in a user interface. + :type message: str + :param details: A list of additional details related to the error. + :type details: list[~azure.batch.models.NameValuePair] + """ + + _validation = { + 'category': {'required': True}, + } + + _attribute_map = { + 'category': {'key': 'category', 'type': 'ErrorCategory'}, + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[NameValuePair]'}, + } + + def __init__(self, *, category, code: str=None, message: str=None, details=None, **kwargs) -> None: + super(TaskFailureInformation, self).__init__(**kwargs) + self.category = category + self.code = code + self.message = message + self.details = details diff --git a/azure-batch/azure/batch/models/task_get_options.py b/azure-batch/azure/batch/models/task_get_options.py index 4638042553eb..08c1fd8a9cdc 100644 --- a/azure-batch/azure/batch/models/task_get_options.py +++ b/azure-batch/azure/batch/models/task_get_options.py @@ -54,15 +54,28 @@ class TaskGetOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, select=None, expand=None, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(TaskGetOptions, self).__init__() - self.select = select - self.expand = expand - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskGetOptions, self).__init__(**kwargs) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/task_get_options_py3.py b/azure-batch/azure/batch/models/task_get_options_py3.py new file mode 100644 index 000000000000..68699028e903 --- /dev/null +++ b/azure-batch/azure/batch/models/task_get_options_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskGetOptions(Model): + """Additional parameters for get operation. + + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, select: str=None, expand: str=None, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(TaskGetOptions, self).__init__(**kwargs) + self.select = select + self.expand = expand + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/task_id_range.py b/azure-batch/azure/batch/models/task_id_range.py index 4d6e27bcdb60..db30d858755c 100644 --- a/azure-batch/azure/batch/models/task_id_range.py +++ b/azure-batch/azure/batch/models/task_id_range.py @@ -20,9 +20,11 @@ class TaskIdRange(Model): The start and end of the range are inclusive. For example, if a range has start 9 and end 12, then it represents tasks '9', '10', '11' and '12'. - :param start: The first task ID in the range. + All required parameters must be populated in order to send to Azure. + + :param start: Required. The first task ID in the range. :type start: int - :param end: The last task ID in the range. + :param end: Required. The last task ID in the range. :type end: int """ @@ -36,7 +38,7 @@ class TaskIdRange(Model): 'end': {'key': 'end', 'type': 'int'}, } - def __init__(self, start, end): - super(TaskIdRange, self).__init__() - self.start = start - self.end = end + def __init__(self, **kwargs): + super(TaskIdRange, self).__init__(**kwargs) + self.start = kwargs.get('start', None) + self.end = kwargs.get('end', None) diff --git a/azure-batch/azure/batch/models/task_id_range_py3.py b/azure-batch/azure/batch/models/task_id_range_py3.py new file mode 100644 index 000000000000..446ed8ee1a49 --- /dev/null +++ b/azure-batch/azure/batch/models/task_id_range_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskIdRange(Model): + """A range of task IDs that a task can depend on. All tasks with IDs in the + range must complete successfully before the dependent task can be + scheduled. + + The start and end of the range are inclusive. For example, if a range has + start 9 and end 12, then it represents tasks '9', '10', '11' and '12'. + + All required parameters must be populated in order to send to Azure. + + :param start: Required. The first task ID in the range. + :type start: int + :param end: Required. The last task ID in the range. + :type end: int + """ + + _validation = { + 'start': {'required': True}, + 'end': {'required': True}, + } + + _attribute_map = { + 'start': {'key': 'start', 'type': 'int'}, + 'end': {'key': 'end', 'type': 'int'}, + } + + def __init__(self, *, start: int, end: int, **kwargs) -> None: + super(TaskIdRange, self).__init__(**kwargs) + self.start = start + self.end = end diff --git a/azure-batch/azure/batch/models/task_information.py b/azure-batch/azure/batch/models/task_information.py index 068ddd03044f..6e8ec0d11021 100644 --- a/azure-batch/azure/batch/models/task_information.py +++ b/azure-batch/azure/batch/models/task_information.py @@ -15,6 +15,8 @@ class TaskInformation(Model): """Information about a task running on a compute node. + All required parameters must be populated in order to send to Azure. + :param task_url: The URL of the task. :type task_url: str :param job_id: The ID of the job to which the task belongs. @@ -24,8 +26,8 @@ class TaskInformation(Model): :param subtask_id: The ID of the subtask if the task is a multi-instance task. :type subtask_id: int - :param task_state: The current state of the task. Possible values include: - 'active', 'preparing', 'running', 'completed' + :param task_state: Required. The current state of the task. Possible + values include: 'active', 'preparing', 'running', 'completed' :type task_state: str or ~azure.batch.models.TaskState :param execution_info: Information about the execution of the task. :type execution_info: ~azure.batch.models.TaskExecutionInformation @@ -44,11 +46,11 @@ class TaskInformation(Model): 'execution_info': {'key': 'executionInfo', 'type': 'TaskExecutionInformation'}, } - def __init__(self, task_state, task_url=None, job_id=None, task_id=None, subtask_id=None, execution_info=None): - super(TaskInformation, self).__init__() - self.task_url = task_url - self.job_id = job_id - self.task_id = task_id - self.subtask_id = subtask_id - self.task_state = task_state - self.execution_info = execution_info + def __init__(self, **kwargs): + super(TaskInformation, self).__init__(**kwargs) + self.task_url = kwargs.get('task_url', None) + self.job_id = kwargs.get('job_id', None) + self.task_id = kwargs.get('task_id', None) + self.subtask_id = kwargs.get('subtask_id', None) + self.task_state = kwargs.get('task_state', None) + self.execution_info = kwargs.get('execution_info', None) diff --git a/azure-batch/azure/batch/models/task_information_py3.py b/azure-batch/azure/batch/models/task_information_py3.py new file mode 100644 index 000000000000..9406cba44907 --- /dev/null +++ b/azure-batch/azure/batch/models/task_information_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskInformation(Model): + """Information about a task running on a compute node. + + All required parameters must be populated in order to send to Azure. + + :param task_url: The URL of the task. + :type task_url: str + :param job_id: The ID of the job to which the task belongs. + :type job_id: str + :param task_id: The ID of the task. + :type task_id: str + :param subtask_id: The ID of the subtask if the task is a multi-instance + task. + :type subtask_id: int + :param task_state: Required. The current state of the task. Possible + values include: 'active', 'preparing', 'running', 'completed' + :type task_state: str or ~azure.batch.models.TaskState + :param execution_info: Information about the execution of the task. + :type execution_info: ~azure.batch.models.TaskExecutionInformation + """ + + _validation = { + 'task_state': {'required': True}, + } + + _attribute_map = { + 'task_url': {'key': 'taskUrl', 'type': 'str'}, + 'job_id': {'key': 'jobId', 'type': 'str'}, + 'task_id': {'key': 'taskId', 'type': 'str'}, + 'subtask_id': {'key': 'subtaskId', 'type': 'int'}, + 'task_state': {'key': 'taskState', 'type': 'TaskState'}, + 'execution_info': {'key': 'executionInfo', 'type': 'TaskExecutionInformation'}, + } + + def __init__(self, *, task_state, task_url: str=None, job_id: str=None, task_id: str=None, subtask_id: int=None, execution_info=None, **kwargs) -> None: + super(TaskInformation, self).__init__(**kwargs) + self.task_url = task_url + self.job_id = job_id + self.task_id = task_id + self.subtask_id = subtask_id + self.task_state = task_state + self.execution_info = execution_info diff --git a/azure-batch/azure/batch/models/task_list_options.py b/azure-batch/azure/batch/models/task_list_options.py index b93babcfe518..08c9cb009442 100644 --- a/azure-batch/azure/batch/models/task_list_options.py +++ b/azure-batch/azure/batch/models/task_list_options.py @@ -42,13 +42,24 @@ class TaskListOptions(Model): :type ocp_date: datetime """ - def __init__(self, filter=None, select=None, expand=None, max_results=1000, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(TaskListOptions, self).__init__() - self.filter = filter - self.select = select - self.expand = expand - self.max_results = max_results - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskListOptions, self).__init__(**kwargs) + self.filter = kwargs.get('filter', None) + self.select = kwargs.get('select', None) + self.expand = kwargs.get('expand', None) + self.max_results = kwargs.get('max_results', 1000) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/task_list_options_py3.py b/azure-batch/azure/batch/models/task_list_options_py3.py new file mode 100644 index 000000000000..bb02726e7b4f --- /dev/null +++ b/azure-batch/azure/batch/models/task_list_options_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskListOptions(Model): + """Additional parameters for list operation. + + :param filter: An OData $filter clause. For more information on + constructing this filter, see + https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-tasks. + :type filter: str + :param select: An OData $select clause. + :type select: str + :param expand: An OData $expand clause. + :type expand: str + :param max_results: The maximum number of items to return in the response. + A maximum of 1000 tasks can be returned. Default value: 1000 . + :type max_results: int + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'filter': {'key': '', 'type': 'str'}, + 'select': {'key': '', 'type': 'str'}, + 'expand': {'key': '', 'type': 'str'}, + 'max_results': {'key': '', 'type': 'int'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, filter: str=None, select: str=None, expand: str=None, max_results: int=1000, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(TaskListOptions, self).__init__(**kwargs) + self.filter = filter + self.select = select + self.expand = expand + self.max_results = max_results + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/task_list_subtasks_options.py b/azure-batch/azure/batch/models/task_list_subtasks_options.py index a016f2f08602..8157cee27c5a 100644 --- a/azure-batch/azure/batch/models/task_list_subtasks_options.py +++ b/azure-batch/azure/batch/models/task_list_subtasks_options.py @@ -33,10 +33,18 @@ class TaskListSubtasksOptions(Model): :type ocp_date: datetime """ - def __init__(self, select=None, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None): - super(TaskListSubtasksOptions, self).__init__() - self.select = select - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskListSubtasksOptions, self).__init__(**kwargs) + self.select = kwargs.get('select', None) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) diff --git a/azure-batch/azure/batch/models/task_list_subtasks_options_py3.py b/azure-batch/azure/batch/models/task_list_subtasks_options_py3.py new file mode 100644 index 000000000000..b8810800dea7 --- /dev/null +++ b/azure-batch/azure/batch/models/task_list_subtasks_options_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskListSubtasksOptions(Model): + """Additional parameters for list_subtasks operation. + + :param select: An OData $select clause. + :type select: str + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + """ + + _attribute_map = { + 'select': {'key': '', 'type': 'str'}, + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, select: str=None, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, **kwargs) -> None: + super(TaskListSubtasksOptions, self).__init__(**kwargs) + self.select = select + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date diff --git a/azure-batch/azure/batch/models/task_reactivate_options.py b/azure-batch/azure/batch/models/task_reactivate_options.py index 031d7f7f0eb0..fe0746114191 100644 --- a/azure-batch/azure/batch/models/task_reactivate_options.py +++ b/azure-batch/azure/batch/models/task_reactivate_options.py @@ -50,13 +50,24 @@ class TaskReactivateOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(TaskReactivateOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskReactivateOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/task_reactivate_options_py3.py b/azure-batch/azure/batch/models/task_reactivate_options_py3.py new file mode 100644 index 000000000000..bd39d6c9c5b6 --- /dev/null +++ b/azure-batch/azure/batch/models/task_reactivate_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskReactivateOptions(Model): + """Additional parameters for reactivate operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(TaskReactivateOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/task_scheduling_policy.py b/azure-batch/azure/batch/models/task_scheduling_policy.py index 993389ea90b0..2f121acb77bf 100644 --- a/azure-batch/azure/batch/models/task_scheduling_policy.py +++ b/azure-batch/azure/batch/models/task_scheduling_policy.py @@ -15,8 +15,10 @@ class TaskSchedulingPolicy(Model): """Specifies how tasks should be distributed across compute nodes. - :param node_fill_type: How tasks are distributed across compute nodes in a - pool. Possible values include: 'spread', 'pack' + All required parameters must be populated in order to send to Azure. + + :param node_fill_type: Required. How tasks are distributed across compute + nodes in a pool. Possible values include: 'spread', 'pack' :type node_fill_type: str or ~azure.batch.models.ComputeNodeFillType """ @@ -28,6 +30,6 @@ class TaskSchedulingPolicy(Model): 'node_fill_type': {'key': 'nodeFillType', 'type': 'ComputeNodeFillType'}, } - def __init__(self, node_fill_type): - super(TaskSchedulingPolicy, self).__init__() - self.node_fill_type = node_fill_type + def __init__(self, **kwargs): + super(TaskSchedulingPolicy, self).__init__(**kwargs) + self.node_fill_type = kwargs.get('node_fill_type', None) diff --git a/azure-batch/azure/batch/models/task_scheduling_policy_py3.py b/azure-batch/azure/batch/models/task_scheduling_policy_py3.py new file mode 100644 index 000000000000..f3ff79a160ed --- /dev/null +++ b/azure-batch/azure/batch/models/task_scheduling_policy_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskSchedulingPolicy(Model): + """Specifies how tasks should be distributed across compute nodes. + + All required parameters must be populated in order to send to Azure. + + :param node_fill_type: Required. How tasks are distributed across compute + nodes in a pool. Possible values include: 'spread', 'pack' + :type node_fill_type: str or ~azure.batch.models.ComputeNodeFillType + """ + + _validation = { + 'node_fill_type': {'required': True}, + } + + _attribute_map = { + 'node_fill_type': {'key': 'nodeFillType', 'type': 'ComputeNodeFillType'}, + } + + def __init__(self, *, node_fill_type, **kwargs) -> None: + super(TaskSchedulingPolicy, self).__init__(**kwargs) + self.node_fill_type = node_fill_type diff --git a/azure-batch/azure/batch/models/task_statistics.py b/azure-batch/azure/batch/models/task_statistics.py index d36e0a8a1a23..b5f877fc5838 100644 --- a/azure-batch/azure/batch/models/task_statistics.py +++ b/azure-batch/azure/batch/models/task_statistics.py @@ -15,41 +15,45 @@ class TaskStatistics(Model): """Resource usage statistics for a task. - :param url: The URL of the statistics. + All required parameters must be populated in order to send to Azure. + + :param url: Required. The URL of the statistics. :type url: str - :param start_time: The start time of the time range covered by the - statistics. + :param start_time: Required. The start time of the time range covered by + the statistics. :type start_time: datetime - :param last_update_time: The time at which the statistics were last - updated. All statistics are limited to the range between startTime and - lastUpdateTime. + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. :type last_update_time: datetime - :param user_cpu_time: The total user mode CPU time (summed across all - cores and all compute nodes) consumed by the task. + :param user_cpu_time: Required. The total user mode CPU time (summed + across all cores and all compute nodes) consumed by the task. :type user_cpu_time: timedelta - :param kernel_cpu_time: The total kernel mode CPU time (summed across all - cores and all compute nodes) consumed by the task. + :param kernel_cpu_time: Required. The total kernel mode CPU time (summed + across all cores and all compute nodes) consumed by the task. :type kernel_cpu_time: timedelta - :param wall_clock_time: The total wall clock time of the task. The wall - clock time is the elapsed time from when the task started running on a - compute node to when it finished (or to the last time the statistics were - updated, if the task had not finished by then). If the task was retried, - this includes the wall clock time of all the task retries. + :param wall_clock_time: Required. The total wall clock time of the task. + The wall clock time is the elapsed time from when the task started running + on a compute node to when it finished (or to the last time the statistics + were updated, if the task had not finished by then). If the task was + retried, this includes the wall clock time of all the task retries. :type wall_clock_time: timedelta - :param read_iops: The total number of disk read operations made by the - task. + :param read_iops: Required. The total number of disk read operations made + by the task. :type read_iops: long - :param write_iops: The total number of disk write operations made by the - task. + :param write_iops: Required. The total number of disk write operations + made by the task. :type write_iops: long - :param read_io_gi_b: The total gibibytes read from disk by the task. + :param read_io_gi_b: Required. The total gibibytes read from disk by the + task. :type read_io_gi_b: float - :param write_io_gi_b: The total gibibytes written to disk by the task. + :param write_io_gi_b: Required. The total gibibytes written to disk by the + task. :type write_io_gi_b: float - :param wait_time: The total wait time of the task. The wait time for a - task is defined as the elapsed time between the creation of the task and - the start of task execution. (If the task is retried due to failures, the - wait time is the time to the most recent task execution.). + :param wait_time: Required. The total wait time of the task. The wait time + for a task is defined as the elapsed time between the creation of the task + and the start of task execution. (If the task is retried due to failures, + the wait time is the time to the most recent task execution.). :type wait_time: timedelta """ @@ -81,16 +85,16 @@ class TaskStatistics(Model): 'wait_time': {'key': 'waitTime', 'type': 'duration'}, } - def __init__(self, url, start_time, last_update_time, user_cpu_time, kernel_cpu_time, wall_clock_time, read_iops, write_iops, read_io_gi_b, write_io_gi_b, wait_time): - super(TaskStatistics, self).__init__() - self.url = url - self.start_time = start_time - self.last_update_time = last_update_time - self.user_cpu_time = user_cpu_time - self.kernel_cpu_time = kernel_cpu_time - self.wall_clock_time = wall_clock_time - self.read_iops = read_iops - self.write_iops = write_iops - self.read_io_gi_b = read_io_gi_b - self.write_io_gi_b = write_io_gi_b - self.wait_time = wait_time + def __init__(self, **kwargs): + super(TaskStatistics, self).__init__(**kwargs) + self.url = kwargs.get('url', None) + self.start_time = kwargs.get('start_time', None) + self.last_update_time = kwargs.get('last_update_time', None) + self.user_cpu_time = kwargs.get('user_cpu_time', None) + self.kernel_cpu_time = kwargs.get('kernel_cpu_time', None) + self.wall_clock_time = kwargs.get('wall_clock_time', None) + self.read_iops = kwargs.get('read_iops', None) + self.write_iops = kwargs.get('write_iops', None) + self.read_io_gi_b = kwargs.get('read_io_gi_b', None) + self.write_io_gi_b = kwargs.get('write_io_gi_b', None) + self.wait_time = kwargs.get('wait_time', None) diff --git a/azure-batch/azure/batch/models/task_statistics_py3.py b/azure-batch/azure/batch/models/task_statistics_py3.py new file mode 100644 index 000000000000..42de1dbaa70c --- /dev/null +++ b/azure-batch/azure/batch/models/task_statistics_py3.py @@ -0,0 +1,100 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskStatistics(Model): + """Resource usage statistics for a task. + + All required parameters must be populated in order to send to Azure. + + :param url: Required. The URL of the statistics. + :type url: str + :param start_time: Required. The start time of the time range covered by + the statistics. + :type start_time: datetime + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. + :type last_update_time: datetime + :param user_cpu_time: Required. The total user mode CPU time (summed + across all cores and all compute nodes) consumed by the task. + :type user_cpu_time: timedelta + :param kernel_cpu_time: Required. The total kernel mode CPU time (summed + across all cores and all compute nodes) consumed by the task. + :type kernel_cpu_time: timedelta + :param wall_clock_time: Required. The total wall clock time of the task. + The wall clock time is the elapsed time from when the task started running + on a compute node to when it finished (or to the last time the statistics + were updated, if the task had not finished by then). If the task was + retried, this includes the wall clock time of all the task retries. + :type wall_clock_time: timedelta + :param read_iops: Required. The total number of disk read operations made + by the task. + :type read_iops: long + :param write_iops: Required. The total number of disk write operations + made by the task. + :type write_iops: long + :param read_io_gi_b: Required. The total gibibytes read from disk by the + task. + :type read_io_gi_b: float + :param write_io_gi_b: Required. The total gibibytes written to disk by the + task. + :type write_io_gi_b: float + :param wait_time: Required. The total wait time of the task. The wait time + for a task is defined as the elapsed time between the creation of the task + and the start of task execution. (If the task is retried due to failures, + the wait time is the time to the most recent task execution.). + :type wait_time: timedelta + """ + + _validation = { + 'url': {'required': True}, + 'start_time': {'required': True}, + 'last_update_time': {'required': True}, + 'user_cpu_time': {'required': True}, + 'kernel_cpu_time': {'required': True}, + 'wall_clock_time': {'required': True}, + 'read_iops': {'required': True}, + 'write_iops': {'required': True}, + 'read_io_gi_b': {'required': True}, + 'write_io_gi_b': {'required': True}, + 'wait_time': {'required': True}, + } + + _attribute_map = { + 'url': {'key': 'url', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_update_time': {'key': 'lastUpdateTime', 'type': 'iso-8601'}, + 'user_cpu_time': {'key': 'userCPUTime', 'type': 'duration'}, + 'kernel_cpu_time': {'key': 'kernelCPUTime', 'type': 'duration'}, + 'wall_clock_time': {'key': 'wallClockTime', 'type': 'duration'}, + 'read_iops': {'key': 'readIOps', 'type': 'long'}, + 'write_iops': {'key': 'writeIOps', 'type': 'long'}, + 'read_io_gi_b': {'key': 'readIOGiB', 'type': 'float'}, + 'write_io_gi_b': {'key': 'writeIOGiB', 'type': 'float'}, + 'wait_time': {'key': 'waitTime', 'type': 'duration'}, + } + + def __init__(self, *, url: str, start_time, last_update_time, user_cpu_time, kernel_cpu_time, wall_clock_time, read_iops: int, write_iops: int, read_io_gi_b: float, write_io_gi_b: float, wait_time, **kwargs) -> None: + super(TaskStatistics, self).__init__(**kwargs) + self.url = url + self.start_time = start_time + self.last_update_time = last_update_time + self.user_cpu_time = user_cpu_time + self.kernel_cpu_time = kernel_cpu_time + self.wall_clock_time = wall_clock_time + self.read_iops = read_iops + self.write_iops = write_iops + self.read_io_gi_b = read_io_gi_b + self.write_io_gi_b = write_io_gi_b + self.wait_time = wait_time diff --git a/azure-batch/azure/batch/models/task_terminate_options.py b/azure-batch/azure/batch/models/task_terminate_options.py index 7c932ad2e44f..1908a9daf5e2 100644 --- a/azure-batch/azure/batch/models/task_terminate_options.py +++ b/azure-batch/azure/batch/models/task_terminate_options.py @@ -50,13 +50,24 @@ class TaskTerminateOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(TaskTerminateOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskTerminateOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/task_terminate_options_py3.py b/azure-batch/azure/batch/models/task_terminate_options_py3.py new file mode 100644 index 000000000000..d967db3a62e7 --- /dev/null +++ b/azure-batch/azure/batch/models/task_terminate_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskTerminateOptions(Model): + """Additional parameters for terminate operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(TaskTerminateOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/task_update_options.py b/azure-batch/azure/batch/models/task_update_options.py index dd15609f2a60..32e1ad8200cf 100644 --- a/azure-batch/azure/batch/models/task_update_options.py +++ b/azure-batch/azure/batch/models/task_update_options.py @@ -50,13 +50,24 @@ class TaskUpdateOptions(Model): :type if_unmodified_since: datetime """ - def __init__(self, timeout=30, client_request_id=None, return_client_request_id=False, ocp_date=None, if_match=None, if_none_match=None, if_modified_since=None, if_unmodified_since=None): - super(TaskUpdateOptions, self).__init__() - self.timeout = timeout - self.client_request_id = client_request_id - self.return_client_request_id = return_client_request_id - self.ocp_date = ocp_date - self.if_match = if_match - self.if_none_match = if_none_match - self.if_modified_since = if_modified_since - self.if_unmodified_since = if_unmodified_since + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, **kwargs): + super(TaskUpdateOptions, self).__init__(**kwargs) + self.timeout = kwargs.get('timeout', 30) + self.client_request_id = kwargs.get('client_request_id', None) + self.return_client_request_id = kwargs.get('return_client_request_id', False) + self.ocp_date = kwargs.get('ocp_date', None) + self.if_match = kwargs.get('if_match', None) + self.if_none_match = kwargs.get('if_none_match', None) + self.if_modified_since = kwargs.get('if_modified_since', None) + self.if_unmodified_since = kwargs.get('if_unmodified_since', None) diff --git a/azure-batch/azure/batch/models/task_update_options_py3.py b/azure-batch/azure/batch/models/task_update_options_py3.py new file mode 100644 index 000000000000..2a20ddf57a64 --- /dev/null +++ b/azure-batch/azure/batch/models/task_update_options_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskUpdateOptions(Model): + """Additional parameters for update operation. + + :param timeout: The maximum time that the server can spend processing the + request, in seconds. The default is 30 seconds. Default value: 30 . + :type timeout: int + :param client_request_id: The caller-generated request identity, in the + form of a GUID with no decoration such as curly braces, e.g. + 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. + :type client_request_id: str + :param return_client_request_id: Whether the server should return the + client-request-id in the response. Default value: False . + :type return_client_request_id: bool + :param ocp_date: The time the request was issued. Client libraries + typically set this to the current system clock time; set it explicitly if + you are calling the REST API directly. + :type ocp_date: datetime + :param if_match: An ETag value associated with the version of the resource + known to the client. The operation will be performed only if the + resource's current ETag on the service exactly matches the value specified + by the client. + :type if_match: str + :param if_none_match: An ETag value associated with the version of the + resource known to the client. The operation will be performed only if the + resource's current ETag on the service does not match the value specified + by the client. + :type if_none_match: str + :param if_modified_since: A timestamp indicating the last modified time of + the resource known to the client. The operation will be performed only if + the resource on the service has been modified since the specified time. + :type if_modified_since: datetime + :param if_unmodified_since: A timestamp indicating the last modified time + of the resource known to the client. The operation will be performed only + if the resource on the service has not been modified since the specified + time. + :type if_unmodified_since: datetime + """ + + _attribute_map = { + 'timeout': {'key': '', 'type': 'int'}, + 'client_request_id': {'key': '', 'type': 'str'}, + 'return_client_request_id': {'key': '', 'type': 'bool'}, + 'ocp_date': {'key': '', 'type': 'rfc-1123'}, + 'if_match': {'key': '', 'type': 'str'}, + 'if_none_match': {'key': '', 'type': 'str'}, + 'if_modified_since': {'key': '', 'type': 'rfc-1123'}, + 'if_unmodified_since': {'key': '', 'type': 'rfc-1123'}, + } + + def __init__(self, *, timeout: int=30, client_request_id: str=None, return_client_request_id: bool=False, ocp_date=None, if_match: str=None, if_none_match: str=None, if_modified_since=None, if_unmodified_since=None, **kwargs) -> None: + super(TaskUpdateOptions, self).__init__(**kwargs) + self.timeout = timeout + self.client_request_id = client_request_id + self.return_client_request_id = return_client_request_id + self.ocp_date = ocp_date + self.if_match = if_match + self.if_none_match = if_none_match + self.if_modified_since = if_modified_since + self.if_unmodified_since = if_unmodified_since diff --git a/azure-batch/azure/batch/models/task_update_parameter.py b/azure-batch/azure/batch/models/task_update_parameter.py index 877c74851382..84246a437659 100644 --- a/azure-batch/azure/batch/models/task_update_parameter.py +++ b/azure-batch/azure/batch/models/task_update_parameter.py @@ -25,6 +25,6 @@ class TaskUpdateParameter(Model): 'constraints': {'key': 'constraints', 'type': 'TaskConstraints'}, } - def __init__(self, constraints=None): - super(TaskUpdateParameter, self).__init__() - self.constraints = constraints + def __init__(self, **kwargs): + super(TaskUpdateParameter, self).__init__(**kwargs) + self.constraints = kwargs.get('constraints', None) diff --git a/azure-batch/azure/batch/models/task_update_parameter_py3.py b/azure-batch/azure/batch/models/task_update_parameter_py3.py new file mode 100644 index 000000000000..71594e625bb1 --- /dev/null +++ b/azure-batch/azure/batch/models/task_update_parameter_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskUpdateParameter(Model): + """The set of changes to be made to a task. + + :param constraints: Constraints that apply to this task. If omitted, the + task is given the default constraints. For multi-instance tasks, updating + the retention time applies only to the primary task and not subtasks. + :type constraints: ~azure.batch.models.TaskConstraints + """ + + _attribute_map = { + 'constraints': {'key': 'constraints', 'type': 'TaskConstraints'}, + } + + def __init__(self, *, constraints=None, **kwargs) -> None: + super(TaskUpdateParameter, self).__init__(**kwargs) + self.constraints = constraints diff --git a/azure-batch/azure/batch/models/upload_batch_service_logs_configuration.py b/azure-batch/azure/batch/models/upload_batch_service_logs_configuration.py index 4dfee0c3ed50..1f96d326b4a5 100644 --- a/azure-batch/azure/batch/models/upload_batch_service_logs_configuration.py +++ b/azure-batch/azure/batch/models/upload_batch_service_logs_configuration.py @@ -15,18 +15,21 @@ class UploadBatchServiceLogsConfiguration(Model): """The Azure Batch service log files upload configuration for a compute node. - :param container_url: The URL of the container within Azure Blob Storage - to which to upload the Batch Service log file(s). The URL must include a - Shared Access Signature (SAS) granting write permissions to the container. - The SAS duration must allow enough time for the upload to finish. The - start time for SAS is optional and recommended to not be specified. + All required parameters must be populated in order to send to Azure. + + :param container_url: Required. The URL of the container within Azure Blob + Storage to which to upload the Batch Service log file(s). The URL must + include a Shared Access Signature (SAS) granting write permissions to the + container. The SAS duration must allow enough time for the upload to + finish. The start time for SAS is optional and recommended to not be + specified. :type container_url: str - :param start_time: The start of the time range from which to upload Batch - Service log file(s). Any log file containing a log message in the time - range will be uploaded. This means that the operation might retrieve more - logs than have been requested since the entire log file is always - uploaded, but the operation should not retrieve fewer logs than have been - requested. + :param start_time: Required. The start of the time range from which to + upload Batch Service log file(s). Any log file containing a log message in + the time range will be uploaded. This means that the operation might + retrieve more logs than have been requested since the entire log file is + always uploaded, but the operation should not retrieve fewer logs than + have been requested. :type start_time: datetime :param end_time: The end of the time range from which to upload Batch Service log file(s). Any log file containing a log message in the time @@ -49,8 +52,8 @@ class UploadBatchServiceLogsConfiguration(Model): 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, } - def __init__(self, container_url, start_time, end_time=None): - super(UploadBatchServiceLogsConfiguration, self).__init__() - self.container_url = container_url - self.start_time = start_time - self.end_time = end_time + def __init__(self, **kwargs): + super(UploadBatchServiceLogsConfiguration, self).__init__(**kwargs) + self.container_url = kwargs.get('container_url', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) diff --git a/azure-batch/azure/batch/models/upload_batch_service_logs_configuration_py3.py b/azure-batch/azure/batch/models/upload_batch_service_logs_configuration_py3.py new file mode 100644 index 000000000000..875beb606fb1 --- /dev/null +++ b/azure-batch/azure/batch/models/upload_batch_service_logs_configuration_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UploadBatchServiceLogsConfiguration(Model): + """The Azure Batch service log files upload configuration for a compute node. + + All required parameters must be populated in order to send to Azure. + + :param container_url: Required. The URL of the container within Azure Blob + Storage to which to upload the Batch Service log file(s). The URL must + include a Shared Access Signature (SAS) granting write permissions to the + container. The SAS duration must allow enough time for the upload to + finish. The start time for SAS is optional and recommended to not be + specified. + :type container_url: str + :param start_time: Required. The start of the time range from which to + upload Batch Service log file(s). Any log file containing a log message in + the time range will be uploaded. This means that the operation might + retrieve more logs than have been requested since the entire log file is + always uploaded, but the operation should not retrieve fewer logs than + have been requested. + :type start_time: datetime + :param end_time: The end of the time range from which to upload Batch + Service log file(s). Any log file containing a log message in the time + range will be uploaded. This means that the operation might retrieve more + logs than have been requested since the entire log file is always + uploaded, but the operation should not retrieve fewer logs than have been + requested. If omitted, the default is to upload all logs available after + the startTime. + :type end_time: datetime + """ + + _validation = { + 'container_url': {'required': True}, + 'start_time': {'required': True}, + } + + _attribute_map = { + 'container_url': {'key': 'containerUrl', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, container_url: str, start_time, end_time=None, **kwargs) -> None: + super(UploadBatchServiceLogsConfiguration, self).__init__(**kwargs) + self.container_url = container_url + self.start_time = start_time + self.end_time = end_time diff --git a/azure-batch/azure/batch/models/upload_batch_service_logs_result.py b/azure-batch/azure/batch/models/upload_batch_service_logs_result.py index 6f84adeef1d6..a2d5a0fe3e1c 100644 --- a/azure-batch/azure/batch/models/upload_batch_service_logs_result.py +++ b/azure-batch/azure/batch/models/upload_batch_service_logs_result.py @@ -16,13 +16,16 @@ class UploadBatchServiceLogsResult(Model): """The result of uploading Batch service log files from a specific compute node. - :param virtual_directory_name: The virtual directory within Azure Blob - Storage container to which the Batch Service log file(s) will be uploaded. - The virtual directory name is part of the blob name for each log file - uploaded, and it is built based poolId, nodeId and a unique identifier. + All required parameters must be populated in order to send to Azure. + + :param virtual_directory_name: Required. The virtual directory within + Azure Blob Storage container to which the Batch Service log file(s) will + be uploaded. The virtual directory name is part of the blob name for each + log file uploaded, and it is built based poolId, nodeId and a unique + identifier. :type virtual_directory_name: str - :param number_of_files_uploaded: The number of log files which will be - uploaded. + :param number_of_files_uploaded: Required. The number of log files which + will be uploaded. :type number_of_files_uploaded: int """ @@ -36,7 +39,7 @@ class UploadBatchServiceLogsResult(Model): 'number_of_files_uploaded': {'key': 'numberOfFilesUploaded', 'type': 'int'}, } - def __init__(self, virtual_directory_name, number_of_files_uploaded): - super(UploadBatchServiceLogsResult, self).__init__() - self.virtual_directory_name = virtual_directory_name - self.number_of_files_uploaded = number_of_files_uploaded + def __init__(self, **kwargs): + super(UploadBatchServiceLogsResult, self).__init__(**kwargs) + self.virtual_directory_name = kwargs.get('virtual_directory_name', None) + self.number_of_files_uploaded = kwargs.get('number_of_files_uploaded', None) diff --git a/azure-batch/azure/batch/models/upload_batch_service_logs_result_py3.py b/azure-batch/azure/batch/models/upload_batch_service_logs_result_py3.py new file mode 100644 index 000000000000..f9547bc287a4 --- /dev/null +++ b/azure-batch/azure/batch/models/upload_batch_service_logs_result_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UploadBatchServiceLogsResult(Model): + """The result of uploading Batch service log files from a specific compute + node. + + All required parameters must be populated in order to send to Azure. + + :param virtual_directory_name: Required. The virtual directory within + Azure Blob Storage container to which the Batch Service log file(s) will + be uploaded. The virtual directory name is part of the blob name for each + log file uploaded, and it is built based poolId, nodeId and a unique + identifier. + :type virtual_directory_name: str + :param number_of_files_uploaded: Required. The number of log files which + will be uploaded. + :type number_of_files_uploaded: int + """ + + _validation = { + 'virtual_directory_name': {'required': True}, + 'number_of_files_uploaded': {'required': True}, + } + + _attribute_map = { + 'virtual_directory_name': {'key': 'virtualDirectoryName', 'type': 'str'}, + 'number_of_files_uploaded': {'key': 'numberOfFilesUploaded', 'type': 'int'}, + } + + def __init__(self, *, virtual_directory_name: str, number_of_files_uploaded: int, **kwargs) -> None: + super(UploadBatchServiceLogsResult, self).__init__(**kwargs) + self.virtual_directory_name = virtual_directory_name + self.number_of_files_uploaded = number_of_files_uploaded diff --git a/azure-batch/azure/batch/models/usage_statistics.py b/azure-batch/azure/batch/models/usage_statistics.py index d5553b84cfda..08d709addec3 100644 --- a/azure-batch/azure/batch/models/usage_statistics.py +++ b/azure-batch/azure/batch/models/usage_statistics.py @@ -15,15 +15,17 @@ class UsageStatistics(Model): """Statistics related to pool usage information. - :param start_time: The start time of the time range covered by the - statistics. + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The start time of the time range covered by + the statistics. :type start_time: datetime - :param last_update_time: The time at which the statistics were last - updated. All statistics are limited to the range between startTime and - lastUpdateTime. + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. :type last_update_time: datetime - :param dedicated_core_time: The aggregated wall-clock time of the - dedicated compute node cores being part of the pool. + :param dedicated_core_time: Required. The aggregated wall-clock time of + the dedicated compute node cores being part of the pool. :type dedicated_core_time: timedelta """ @@ -39,8 +41,8 @@ class UsageStatistics(Model): 'dedicated_core_time': {'key': 'dedicatedCoreTime', 'type': 'duration'}, } - def __init__(self, start_time, last_update_time, dedicated_core_time): - super(UsageStatistics, self).__init__() - self.start_time = start_time - self.last_update_time = last_update_time - self.dedicated_core_time = dedicated_core_time + def __init__(self, **kwargs): + super(UsageStatistics, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.last_update_time = kwargs.get('last_update_time', None) + self.dedicated_core_time = kwargs.get('dedicated_core_time', None) diff --git a/azure-batch/azure/batch/models/usage_statistics_py3.py b/azure-batch/azure/batch/models/usage_statistics_py3.py new file mode 100644 index 000000000000..9fafd25d7130 --- /dev/null +++ b/azure-batch/azure/batch/models/usage_statistics_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageStatistics(Model): + """Statistics related to pool usage information. + + All required parameters must be populated in order to send to Azure. + + :param start_time: Required. The start time of the time range covered by + the statistics. + :type start_time: datetime + :param last_update_time: Required. The time at which the statistics were + last updated. All statistics are limited to the range between startTime + and lastUpdateTime. + :type last_update_time: datetime + :param dedicated_core_time: Required. The aggregated wall-clock time of + the dedicated compute node cores being part of the pool. + :type dedicated_core_time: timedelta + """ + + _validation = { + 'start_time': {'required': True}, + 'last_update_time': {'required': True}, + 'dedicated_core_time': {'required': True}, + } + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_update_time': {'key': 'lastUpdateTime', 'type': 'iso-8601'}, + 'dedicated_core_time': {'key': 'dedicatedCoreTime', 'type': 'duration'}, + } + + def __init__(self, *, start_time, last_update_time, dedicated_core_time, **kwargs) -> None: + super(UsageStatistics, self).__init__(**kwargs) + self.start_time = start_time + self.last_update_time = last_update_time + self.dedicated_core_time = dedicated_core_time diff --git a/azure-batch/azure/batch/models/user_account.py b/azure-batch/azure/batch/models/user_account.py index 43ffe1d3da3c..e630e5ec5df0 100644 --- a/azure-batch/azure/batch/models/user_account.py +++ b/azure-batch/azure/batch/models/user_account.py @@ -16,15 +16,14 @@ class UserAccount(Model): """Properties used to create a user used to execute tasks on an Azure Batch node. - :param name: The name of the user account. + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the user account. :type name: str - :param password: The password for the user account. + :param password: Required. The password for the user account. :type password: str - :param elevation_level: The elevation level of the user account. nonAdmin - - The auto user is a standard user without elevated access. admin - The - auto user is a user with elevated access and operates with full - Administrator permissions. The default value is nonAdmin. Possible values - include: 'nonAdmin', 'admin' + :param elevation_level: The elevation level of the user account. The + default value is nonAdmin. Possible values include: 'nonAdmin', 'admin' :type elevation_level: str or ~azure.batch.models.ElevationLevel :param linux_user_configuration: The Linux-specific user configuration for the user account. This property is ignored if specified on a Windows pool. @@ -44,9 +43,9 @@ class UserAccount(Model): 'linux_user_configuration': {'key': 'linuxUserConfiguration', 'type': 'LinuxUserConfiguration'}, } - def __init__(self, name, password, elevation_level=None, linux_user_configuration=None): - super(UserAccount, self).__init__() - self.name = name - self.password = password - self.elevation_level = elevation_level - self.linux_user_configuration = linux_user_configuration + def __init__(self, **kwargs): + super(UserAccount, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.password = kwargs.get('password', None) + self.elevation_level = kwargs.get('elevation_level', None) + self.linux_user_configuration = kwargs.get('linux_user_configuration', None) diff --git a/azure-batch/azure/batch/models/user_account_py3.py b/azure-batch/azure/batch/models/user_account_py3.py new file mode 100644 index 000000000000..33a2d3690064 --- /dev/null +++ b/azure-batch/azure/batch/models/user_account_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserAccount(Model): + """Properties used to create a user used to execute tasks on an Azure Batch + node. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the user account. + :type name: str + :param password: Required. The password for the user account. + :type password: str + :param elevation_level: The elevation level of the user account. The + default value is nonAdmin. Possible values include: 'nonAdmin', 'admin' + :type elevation_level: str or ~azure.batch.models.ElevationLevel + :param linux_user_configuration: The Linux-specific user configuration for + the user account. This property is ignored if specified on a Windows pool. + If not specified, the user is created with the default options. + :type linux_user_configuration: ~azure.batch.models.LinuxUserConfiguration + """ + + _validation = { + 'name': {'required': True}, + 'password': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'elevation_level': {'key': 'elevationLevel', 'type': 'ElevationLevel'}, + 'linux_user_configuration': {'key': 'linuxUserConfiguration', 'type': 'LinuxUserConfiguration'}, + } + + def __init__(self, *, name: str, password: str, elevation_level=None, linux_user_configuration=None, **kwargs) -> None: + super(UserAccount, self).__init__(**kwargs) + self.name = name + self.password = password + self.elevation_level = elevation_level + self.linux_user_configuration = linux_user_configuration diff --git a/azure-batch/azure/batch/models/user_identity.py b/azure-batch/azure/batch/models/user_identity.py index 43d5e0e5e6ca..b75dfd7306b3 100644 --- a/azure-batch/azure/batch/models/user_identity.py +++ b/azure-batch/azure/batch/models/user_identity.py @@ -35,7 +35,7 @@ class UserIdentity(Model): 'auto_user': {'key': 'autoUser', 'type': 'AutoUserSpecification'}, } - def __init__(self, user_name=None, auto_user=None): - super(UserIdentity, self).__init__() - self.user_name = user_name - self.auto_user = auto_user + def __init__(self, **kwargs): + super(UserIdentity, self).__init__(**kwargs) + self.user_name = kwargs.get('user_name', None) + self.auto_user = kwargs.get('auto_user', None) diff --git a/azure-batch/azure/batch/models/user_identity_py3.py b/azure-batch/azure/batch/models/user_identity_py3.py new file mode 100644 index 000000000000..e566f58cd51c --- /dev/null +++ b/azure-batch/azure/batch/models/user_identity_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserIdentity(Model): + """The definition of the user identity under which the task is run. + + Specify either the userName or autoUser property, but not both. On + CloudServiceConfiguration pools, this user is logged in with the + INTERACTIVE flag. On Windows VirtualMachineConfiguration pools, this user + is logged in with the BATCH flag. + + :param user_name: The name of the user identity under which the task is + run. The userName and autoUser properties are mutually exclusive; you must + specify one but not both. + :type user_name: str + :param auto_user: The auto user under which the task is run. The userName + and autoUser properties are mutually exclusive; you must specify one but + not both. + :type auto_user: ~azure.batch.models.AutoUserSpecification + """ + + _attribute_map = { + 'user_name': {'key': 'username', 'type': 'str'}, + 'auto_user': {'key': 'autoUser', 'type': 'AutoUserSpecification'}, + } + + def __init__(self, *, user_name: str=None, auto_user=None, **kwargs) -> None: + super(UserIdentity, self).__init__(**kwargs) + self.user_name = user_name + self.auto_user = auto_user diff --git a/azure-batch/azure/batch/models/virtual_machine_configuration.py b/azure-batch/azure/batch/models/virtual_machine_configuration.py index 4e7ee23ae81b..52b8d7f6c8c5 100644 --- a/azure-batch/azure/batch/models/virtual_machine_configuration.py +++ b/azure-batch/azure/batch/models/virtual_machine_configuration.py @@ -16,13 +16,15 @@ class VirtualMachineConfiguration(Model): """The configuration for compute nodes in a pool based on the Azure Virtual Machines infrastructure. - :param image_reference: A reference to the Azure Virtual Machines - Marketplace image or the custom Virtual Machine image to use. + All required parameters must be populated in order to send to Azure. + + :param image_reference: Required. A reference to the Azure Virtual + Machines Marketplace image or the custom Virtual Machine image to use. :type image_reference: ~azure.batch.models.ImageReference :param os_disk: Settings for the operating system disk of the Virtual Machine. :type os_disk: ~azure.batch.models.OSDisk - :param node_agent_sku_id: The SKU of the Batch node agent to be + :param node_agent_sku_id: Required. The SKU of the Batch node agent to be provisioned on compute nodes in the pool. The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. @@ -79,12 +81,12 @@ class VirtualMachineConfiguration(Model): 'container_configuration': {'key': 'containerConfiguration', 'type': 'ContainerConfiguration'}, } - def __init__(self, image_reference, node_agent_sku_id, os_disk=None, windows_configuration=None, data_disks=None, license_type=None, container_configuration=None): - super(VirtualMachineConfiguration, self).__init__() - self.image_reference = image_reference - self.os_disk = os_disk - self.node_agent_sku_id = node_agent_sku_id - self.windows_configuration = windows_configuration - self.data_disks = data_disks - self.license_type = license_type - self.container_configuration = container_configuration + def __init__(self, **kwargs): + super(VirtualMachineConfiguration, self).__init__(**kwargs) + self.image_reference = kwargs.get('image_reference', None) + self.os_disk = kwargs.get('os_disk', None) + self.node_agent_sku_id = kwargs.get('node_agent_sku_id', None) + self.windows_configuration = kwargs.get('windows_configuration', None) + self.data_disks = kwargs.get('data_disks', None) + self.license_type = kwargs.get('license_type', None) + self.container_configuration = kwargs.get('container_configuration', None) diff --git a/azure-batch/azure/batch/models/virtual_machine_configuration_py3.py b/azure-batch/azure/batch/models/virtual_machine_configuration_py3.py new file mode 100644 index 000000000000..686568a7e18b --- /dev/null +++ b/azure-batch/azure/batch/models/virtual_machine_configuration_py3.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineConfiguration(Model): + """The configuration for compute nodes in a pool based on the Azure Virtual + Machines infrastructure. + + All required parameters must be populated in order to send to Azure. + + :param image_reference: Required. A reference to the Azure Virtual + Machines Marketplace image or the custom Virtual Machine image to use. + :type image_reference: ~azure.batch.models.ImageReference + :param os_disk: Settings for the operating system disk of the Virtual + Machine. + :type os_disk: ~azure.batch.models.OSDisk + :param node_agent_sku_id: Required. The SKU of the Batch node agent to be + provisioned on compute nodes in the pool. The Batch node agent is a + program that runs on each node in the pool, and provides the + command-and-control interface between the node and the Batch service. + There are different implementations of the node agent, known as SKUs, for + different operating systems. You must specify a node agent SKU which + matches the selected image reference. To get the list of supported node + agent SKUs along with their list of verified image references, see the + 'List supported node agent SKUs' operation. + :type node_agent_sku_id: str + :param windows_configuration: Windows operating system settings on the + virtual machine. This property must not be specified if the imageReference + or osDisk property specifies a Linux OS image. + :type windows_configuration: ~azure.batch.models.WindowsConfiguration + :param data_disks: The configuration for data disks attached to the + comptue nodes in the pool. This property must be specified if the compute + nodes in the pool need to have empty data disks attached to them. This + cannot be updated. Each node gets its own disk (the disk is not a file + share). Existing disks cannot be attached, each attached disk is empty. + When the node is removed from the pool, the disk and all data associated + with it is also deleted. The disk is not formatted after being attached, + it must be formatted before use - for more information see + https://docs.microsoft.com/en-us/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux + and + https://docs.microsoft.com/en-us/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine. + :type data_disks: list[~azure.batch.models.DataDisk] + :param license_type: The type of on-premises license to be used when + deploying the operating system. This only applies to images that contain + the Windows operating system, and should only be used when you hold valid + on-premises licenses for the nodes which will be deployed. If omitted, no + on-premises licensing discount is applied. Values are: + Windows_Server - The on-premises license is for Windows Server. + Windows_Client - The on-premises license is for Windows Client. + :type license_type: str + :param container_configuration: The container configuration for the pool. + If specified, setup is performed on each node in the pool to allow tasks + to run in containers. All regular tasks and job manager tasks run on this + pool must specify the containerSettings property, and all other tasks may + specify it. + :type container_configuration: ~azure.batch.models.ContainerConfiguration + """ + + _validation = { + 'image_reference': {'required': True}, + 'node_agent_sku_id': {'required': True}, + } + + _attribute_map = { + 'image_reference': {'key': 'imageReference', 'type': 'ImageReference'}, + 'os_disk': {'key': 'osDisk', 'type': 'OSDisk'}, + 'node_agent_sku_id': {'key': 'nodeAgentSKUId', 'type': 'str'}, + 'windows_configuration': {'key': 'windowsConfiguration', 'type': 'WindowsConfiguration'}, + 'data_disks': {'key': 'dataDisks', 'type': '[DataDisk]'}, + 'license_type': {'key': 'licenseType', 'type': 'str'}, + 'container_configuration': {'key': 'containerConfiguration', 'type': 'ContainerConfiguration'}, + } + + def __init__(self, *, image_reference, node_agent_sku_id: str, os_disk=None, windows_configuration=None, data_disks=None, license_type: str=None, container_configuration=None, **kwargs) -> None: + super(VirtualMachineConfiguration, self).__init__(**kwargs) + self.image_reference = image_reference + self.os_disk = os_disk + self.node_agent_sku_id = node_agent_sku_id + self.windows_configuration = windows_configuration + self.data_disks = data_disks + self.license_type = license_type + self.container_configuration = container_configuration diff --git a/azure-batch/azure/batch/models/windows_configuration.py b/azure-batch/azure/batch/models/windows_configuration.py index 00788c976c0b..6b27533d2558 100644 --- a/azure-batch/azure/batch/models/windows_configuration.py +++ b/azure-batch/azure/batch/models/windows_configuration.py @@ -24,6 +24,6 @@ class WindowsConfiguration(Model): 'enable_automatic_updates': {'key': 'enableAutomaticUpdates', 'type': 'bool'}, } - def __init__(self, enable_automatic_updates=None): - super(WindowsConfiguration, self).__init__() - self.enable_automatic_updates = enable_automatic_updates + def __init__(self, **kwargs): + super(WindowsConfiguration, self).__init__(**kwargs) + self.enable_automatic_updates = kwargs.get('enable_automatic_updates', None) diff --git a/azure-batch/azure/batch/models/windows_configuration_py3.py b/azure-batch/azure/batch/models/windows_configuration_py3.py new file mode 100644 index 000000000000..40a4aedf6494 --- /dev/null +++ b/azure-batch/azure/batch/models/windows_configuration_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WindowsConfiguration(Model): + """Windows operating system settings to apply to the virtual machine. + + :param enable_automatic_updates: Whether automatic updates are enabled on + the virtual machine. If omitted, the default value is true. + :type enable_automatic_updates: bool + """ + + _attribute_map = { + 'enable_automatic_updates': {'key': 'enableAutomaticUpdates', 'type': 'bool'}, + } + + def __init__(self, *, enable_automatic_updates: bool=None, **kwargs) -> None: + super(WindowsConfiguration, self).__init__(**kwargs) + self.enable_automatic_updates = enable_automatic_updates diff --git a/azure-batch/azure/batch/operations/account_operations.py b/azure-batch/azure/batch/operations/account_operations.py index d5081a83a8e0..efd3a9e51e8c 100644 --- a/azure-batch/azure/batch/operations/account_operations.py +++ b/azure-batch/azure/batch/operations/account_operations.py @@ -22,7 +22,7 @@ class AccountOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -96,7 +96,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -111,9 +111,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -191,7 +190,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -206,9 +205,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/operations/application_operations.py b/azure-batch/azure/batch/operations/application_operations.py index 262efcbf532e..864d2ff12226 100644 --- a/azure-batch/azure/batch/operations/application_operations.py +++ b/azure-batch/azure/batch/operations/application_operations.py @@ -22,7 +22,7 @@ class ApplicationOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -97,7 +97,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -112,9 +112,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -187,7 +186,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -202,8 +201,8 @@ def get( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/operations/certificate_operations.py b/azure-batch/azure/batch/operations/certificate_operations.py index 927510a1117e..d4bdafb94a7b 100644 --- a/azure-batch/azure/batch/operations/certificate_operations.py +++ b/azure-batch/azure/batch/operations/certificate_operations.py @@ -22,7 +22,7 @@ class CertificateOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -98,9 +98,8 @@ def add( body_content = self._serialize.body(certificate, 'CertificateAddParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.BatchErrorException(self._deserialize, response) @@ -183,7 +182,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -198,9 +197,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -279,7 +277,6 @@ def cancel_deletion( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -294,8 +291,8 @@ def cancel_deletion( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.BatchErrorException(self._deserialize, response) @@ -376,7 +373,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -391,8 +387,8 @@ def delete( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -466,7 +462,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -481,8 +477,8 @@ def get( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/operations/compute_node_operations.py b/azure-batch/azure/batch/operations/compute_node_operations.py index daec77959a0a..ea988094f6a4 100644 --- a/azure-batch/azure/batch/operations/compute_node_operations.py +++ b/azure-batch/azure/batch/operations/compute_node_operations.py @@ -22,7 +22,7 @@ class ComputeNodeOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -111,9 +111,8 @@ def add_user( body_content = self._serialize.body(user, 'ComputeNodeUser') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.BatchErrorException(self._deserialize, response) @@ -188,7 +187,6 @@ def delete_user( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -203,8 +201,8 @@ def delete_user( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -301,9 +299,8 @@ def update_user( body_content = self._serialize.body(node_update_user_parameter, 'NodeUpdateUserParameter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -378,7 +375,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -393,8 +390,8 @@ def get( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -420,7 +417,7 @@ def get( get.metadata = {'url': '/pools/{poolId}/nodes/{nodeId}'} def reboot( - self, pool_id, node_id, compute_node_reboot_options=None, node_reboot_option=None, custom_headers=None, raw=False, **operation_config): + self, pool_id, node_id, node_reboot_option=None, compute_node_reboot_options=None, custom_headers=None, raw=False, **operation_config): """Restarts the specified compute node. You can restart a node only if it is in an idle or running state. @@ -429,16 +426,16 @@ def reboot( :type pool_id: str :param node_id: The ID of the compute node that you want to restart. :type node_id: str - :param compute_node_reboot_options: Additional parameters for the - operation - :type compute_node_reboot_options: - ~azure.batch.models.ComputeNodeRebootOptions :param node_reboot_option: When to reboot the compute node and what to do with currently running tasks. The default value is requeue. Possible values include: 'requeue', 'terminate', 'taskCompletion', 'retainedData' :type node_reboot_option: str or ~azure.batch.models.ComputeNodeRebootOption + :param compute_node_reboot_options: Additional parameters for the + operation + :type compute_node_reboot_options: + ~azure.batch.models.ComputeNodeRebootOptions :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -502,9 +499,8 @@ def reboot( body_content = None # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -522,7 +518,7 @@ def reboot( reboot.metadata = {'url': '/pools/{poolId}/nodes/{nodeId}/reboot'} def reimage( - self, pool_id, node_id, compute_node_reimage_options=None, node_reimage_option=None, custom_headers=None, raw=False, **operation_config): + self, pool_id, node_id, node_reimage_option=None, compute_node_reimage_options=None, custom_headers=None, raw=False, **operation_config): """Reinstalls the operating system on the specified compute node. You can reinstall the operating system on a node only if it is in an @@ -533,16 +529,16 @@ def reimage( :type pool_id: str :param node_id: The ID of the compute node that you want to restart. :type node_id: str - :param compute_node_reimage_options: Additional parameters for the - operation - :type compute_node_reimage_options: - ~azure.batch.models.ComputeNodeReimageOptions :param node_reimage_option: When to reimage the compute node and what to do with currently running tasks. The default value is requeue. Possible values include: 'requeue', 'terminate', 'taskCompletion', 'retainedData' :type node_reimage_option: str or ~azure.batch.models.ComputeNodeReimageOption + :param compute_node_reimage_options: Additional parameters for the + operation + :type compute_node_reimage_options: + ~azure.batch.models.ComputeNodeReimageOptions :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -606,9 +602,8 @@ def reimage( body_content = None # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -626,7 +621,7 @@ def reimage( reimage.metadata = {'url': '/pools/{poolId}/nodes/{nodeId}/reimage'} def disable_scheduling( - self, pool_id, node_id, compute_node_disable_scheduling_options=None, node_disable_scheduling_option=None, custom_headers=None, raw=False, **operation_config): + self, pool_id, node_id, node_disable_scheduling_option=None, compute_node_disable_scheduling_options=None, custom_headers=None, raw=False, **operation_config): """Disables task scheduling on the specified compute node. You can disable task scheduling on a node only if its current @@ -637,16 +632,16 @@ def disable_scheduling( :param node_id: The ID of the compute node on which you want to disable task scheduling. :type node_id: str - :param compute_node_disable_scheduling_options: Additional parameters - for the operation - :type compute_node_disable_scheduling_options: - ~azure.batch.models.ComputeNodeDisableSchedulingOptions :param node_disable_scheduling_option: What to do with currently running tasks when disabling task scheduling on the compute node. The default value is requeue. Possible values include: 'requeue', 'terminate', 'taskCompletion' :type node_disable_scheduling_option: str or ~azure.batch.models.DisableComputeNodeSchedulingOption + :param compute_node_disable_scheduling_options: Additional parameters + for the operation + :type compute_node_disable_scheduling_options: + ~azure.batch.models.ComputeNodeDisableSchedulingOptions :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -710,9 +705,8 @@ def disable_scheduling( body_content = None # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -784,7 +778,6 @@ def enable_scheduling( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -799,8 +792,8 @@ def enable_scheduling( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -877,7 +870,7 @@ def get_remote_login_settings( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -892,8 +885,8 @@ def get_remote_login_settings( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -980,7 +973,7 @@ def get_remote_desktop( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -995,8 +988,8 @@ def get_remote_desktop( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -1085,6 +1078,7 @@ def upload_batch_service_logs( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; odata=minimalmetadata; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) @@ -1103,9 +1097,8 @@ def upload_batch_service_logs( body_content = self._serialize.body(upload_batch_service_logs_configuration, 'UploadBatchServiceLogsConfiguration') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -1199,7 +1192,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1214,9 +1207,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/operations/file_operations.py b/azure-batch/azure/batch/operations/file_operations.py index 079f78e5a2d1..cf997c3bf42c 100644 --- a/azure-batch/azure/batch/operations/file_operations.py +++ b/azure-batch/azure/batch/operations/file_operations.py @@ -22,7 +22,7 @@ class FileOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -100,7 +100,6 @@ def delete_from_task( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -115,8 +114,8 @@ def delete_from_task( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -199,7 +198,7 @@ def get_from_task( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -220,8 +219,8 @@ def get_from_task( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -314,7 +313,6 @@ def get_properties_from_task( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,8 +331,8 @@ def get_properties_from_task( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.head(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -420,7 +418,6 @@ def delete_from_compute_node( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -435,8 +432,8 @@ def delete_from_compute_node( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -519,7 +516,7 @@ def get_from_compute_node( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -540,8 +537,8 @@ def get_from_compute_node( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -633,7 +630,6 @@ def get_properties_from_compute_node( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -652,8 +648,8 @@ def get_properties_from_compute_node( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.head(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -750,7 +746,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -765,9 +761,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -860,7 +855,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -875,9 +870,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/operations/job_operations.py b/azure-batch/azure/batch/operations/job_operations.py index 327ed6c51756..333d346add1a 100644 --- a/azure-batch/azure/batch/operations/job_operations.py +++ b/azure-batch/azure/batch/operations/job_operations.py @@ -22,7 +22,7 @@ class JobOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -86,7 +86,7 @@ def get_all_lifetime_statistics( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -101,8 +101,8 @@ def get_all_lifetime_statistics( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -195,7 +195,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -218,8 +217,8 @@ def delete( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -302,7 +301,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -325,8 +324,8 @@ def get( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -441,9 +440,8 @@ def patch( body_content = self._serialize.body(job_patch_parameter, 'JobPatchParameter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -551,9 +549,8 @@ def update( body_content = self._serialize.body(job_update_parameter, 'JobUpdateParameter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -668,9 +665,8 @@ def disable( body_content = self._serialize.body(job_disable_parameter, 'JobDisableParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -752,7 +748,6 @@ def enable( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -775,8 +770,8 @@ def enable( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -794,7 +789,7 @@ def enable( enable.metadata = {'url': '/jobs/{jobId}/enable'} def terminate( - self, job_id, job_terminate_options=None, terminate_reason=None, custom_headers=None, raw=False, **operation_config): + self, job_id, terminate_reason=None, job_terminate_options=None, custom_headers=None, raw=False, **operation_config): """Terminates the specified job, marking it as completed. When a Terminate Job request is received, the Batch service sets the @@ -807,11 +802,11 @@ def terminate( :param job_id: The ID of the job to terminate. :type job_id: str - :param job_terminate_options: Additional parameters for the operation - :type job_terminate_options: ~azure.batch.models.JobTerminateOptions :param terminate_reason: The text you want to appear as the job's TerminateReason. The default is 'UserTerminate'. :type terminate_reason: str + :param job_terminate_options: Additional parameters for the operation + :type job_terminate_options: ~azure.batch.models.JobTerminateOptions :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -894,9 +889,8 @@ def terminate( body_content = None # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -984,9 +978,8 @@ def add( body_content = self._serialize.body(job, 'JobAddParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.BatchErrorException(self._deserialize, response) @@ -1071,7 +1064,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1086,9 +1079,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -1183,7 +1175,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1198,9 +1190,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -1298,7 +1289,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1313,9 +1304,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -1339,11 +1329,7 @@ def get_task_counts( Task counts provide a count of the tasks by active, running or completed task state, and a count of tasks which succeeded or failed. - Tasks in the preparing state are counted as running. If the - validationStatus is unvalidated, then the Batch service has not been - able to check state counts against the task states as reported in the - List Tasks API. The validationStatus may be unvalidated if the job - contains more than 200,000 tasks. + Tasks in the preparing state are counted as running. :param job_id: The ID of the job. :type job_id: str @@ -1390,7 +1376,7 @@ def get_task_counts( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1405,8 +1391,8 @@ def get_task_counts( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/operations/job_schedule_operations.py b/azure-batch/azure/batch/operations/job_schedule_operations.py index 6371d970caca..b209a1915ee0 100644 --- a/azure-batch/azure/batch/operations/job_schedule_operations.py +++ b/azure-batch/azure/batch/operations/job_schedule_operations.py @@ -22,7 +22,7 @@ class JobScheduleOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -97,7 +97,6 @@ def exists( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -120,8 +119,8 @@ def exists( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.head(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.BatchErrorException(self._deserialize, response) @@ -206,7 +205,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -229,8 +227,8 @@ def delete( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -315,7 +313,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -338,8 +336,8 @@ def get( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -460,9 +458,8 @@ def patch( body_content = self._serialize.body(job_schedule_patch_parameter, 'JobSchedulePatchParameter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -575,9 +572,8 @@ def update( body_content = self._serialize.body(job_schedule_update_parameter, 'JobScheduleUpdateParameter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -656,7 +652,6 @@ def disable( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -679,8 +674,8 @@ def disable( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.BatchErrorException(self._deserialize, response) @@ -757,7 +752,6 @@ def enable( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -780,8 +774,8 @@ def enable( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.BatchErrorException(self._deserialize, response) @@ -858,7 +852,6 @@ def terminate( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -881,8 +874,8 @@ def terminate( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -961,9 +954,8 @@ def add( body_content = self._serialize.body(cloud_job_schedule, 'JobScheduleAddParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.BatchErrorException(self._deserialize, response) @@ -1050,7 +1042,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1065,9 +1057,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/operations/pool_operations.py b/azure-batch/azure/batch/operations/pool_operations.py index a13312db2bdb..6d9d40f7e5ef 100644 --- a/azure-batch/azure/batch/operations/pool_operations.py +++ b/azure-batch/azure/batch/operations/pool_operations.py @@ -22,7 +22,7 @@ class PoolOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -114,7 +114,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -129,9 +129,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -199,7 +198,7 @@ def get_all_lifetime_statistics( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -214,8 +213,8 @@ def get_all_lifetime_statistics( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -304,9 +303,8 @@ def add( body_content = self._serialize.body(pool, 'PoolAddParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.BatchErrorException(self._deserialize, response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -406,9 +404,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -498,7 +495,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -521,8 +517,8 @@ def delete( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -594,7 +590,6 @@ def exists( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -617,8 +612,8 @@ def exists( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.head(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.BatchErrorException(self._deserialize, response) @@ -705,7 +700,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -728,8 +723,8 @@ def get( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -845,9 +840,8 @@ def patch( body_content = self._serialize.body(pool_patch_parameter, 'PoolPatchParameter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -913,7 +907,6 @@ def disable_auto_scale( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -928,8 +921,8 @@ def disable_auto_scale( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -947,7 +940,7 @@ def disable_auto_scale( disable_auto_scale.metadata = {'url': '/pools/{poolId}/disableautoscale'} def enable_auto_scale( - self, pool_id, pool_enable_auto_scale_options=None, auto_scale_formula=None, auto_scale_evaluation_interval=None, custom_headers=None, raw=False, **operation_config): + self, pool_id, auto_scale_formula=None, auto_scale_evaluation_interval=None, pool_enable_auto_scale_options=None, custom_headers=None, raw=False, **operation_config): """Enables automatic scaling for a pool. You cannot enable automatic scaling on a pool if a resize operation is @@ -960,10 +953,6 @@ def enable_auto_scale( :param pool_id: The ID of the pool on which to enable automatic scaling. :type pool_id: str - :param pool_enable_auto_scale_options: Additional parameters for the - operation - :type pool_enable_auto_scale_options: - ~azure.batch.models.PoolEnableAutoScaleOptions :param auto_scale_formula: The formula for the desired number of compute nodes in the pool. The formula is checked for validity before it is applied to the pool. If the formula is not valid, the Batch @@ -984,6 +973,10 @@ def enable_auto_scale( be started, with its starting time being the time when this request was issued. :type auto_scale_evaluation_interval: timedelta + :param pool_enable_auto_scale_options: Additional parameters for the + operation + :type pool_enable_auto_scale_options: + ~azure.batch.models.PoolEnableAutoScaleOptions :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -1061,9 +1054,8 @@ def enable_auto_scale( body_content = self._serialize.body(pool_enable_auto_scale_parameter, 'PoolEnableAutoScaleParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -1143,6 +1135,7 @@ def evaluate_auto_scale( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; odata=minimalmetadata; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) @@ -1161,9 +1154,8 @@ def evaluate_auto_scale( body_content = self._serialize.body(pool_evaluate_auto_scale_parameter, 'PoolEvaluateAutoScaleParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -1284,9 +1276,8 @@ def resize( body_content = self._serialize.body(pool_resize_parameter, 'PoolResizeParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -1372,7 +1363,6 @@ def stop_resize( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1395,8 +1385,8 @@ def stop_resize( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -1488,9 +1478,8 @@ def update_properties( body_content = self._serialize.body(pool_update_properties_parameter, 'PoolUpdatePropertiesParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.BatchErrorException(self._deserialize, response) @@ -1616,9 +1605,8 @@ def upgrade_os( body_content = self._serialize.body(pool_upgrade_os_parameter, 'PoolUpgradeOSParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) @@ -1728,9 +1716,8 @@ def remove_nodes( body_content = self._serialize.body(node_remove_parameter, 'NodeRemoveParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/operations/task_operations.py b/azure-batch/azure/batch/operations/task_operations.py index 505867585704..526187533a57 100644 --- a/azure-batch/azure/batch/operations/task_operations.py +++ b/azure-batch/azure/batch/operations/task_operations.py @@ -22,7 +22,7 @@ class TaskOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API Version. Constant value: "2018-03-01.6.1". + :ivar api_version: Client API Version. Constant value: "2018-08-01.7.0". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-03-01.6.1" + self.api_version = "2018-08-01.7.0" self.config = config @@ -107,9 +107,8 @@ def add( body_content = self._serialize.body(task, 'TaskAddParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.BatchErrorException(self._deserialize, response) @@ -204,7 +203,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -219,9 +218,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -263,11 +261,12 @@ def add_collection( :param job_id: The ID of the job to which the task collection is to be added. :type job_id: str - :param value: The collection of tasks to add. The total serialized - size of this collection must be less than 4MB. If it is greater than - 4MB (for example if each task has 100's of resource files or - environment variables), the request will fail with code - 'RequestBodyTooLarge' and should be retried again with fewer tasks. + :param value: The collection of tasks to add. The maximum count of + tasks is 100. The total serialized size of this collection must be + less than 1MB. If it is greater than 1MB (for example if each task has + 100's of resource files or environment variables), the request will + fail with code 'RequestBodyTooLarge' and should be retried again with + fewer tasks. :type value: list[~azure.batch.models.TaskAddParameter] :param task_add_collection_options: Additional parameters for the operation @@ -313,6 +312,7 @@ def add_collection( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; odata=minimalmetadata; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) @@ -331,9 +331,8 @@ def add_collection( body_content = self._serialize.body(task_collection, 'TaskAddCollectionParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -423,7 +422,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -446,8 +444,8 @@ def delete( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -537,7 +535,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -560,8 +558,8 @@ def get( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -588,20 +586,20 @@ def get( get.metadata = {'url': '/jobs/{jobId}/tasks/{taskId}'} def update( - self, job_id, task_id, task_update_options=None, constraints=None, custom_headers=None, raw=False, **operation_config): + self, job_id, task_id, constraints=None, task_update_options=None, custom_headers=None, raw=False, **operation_config): """Updates the properties of the specified task. :param job_id: The ID of the job containing the task. :type job_id: str :param task_id: The ID of the task to update. :type task_id: str - :param task_update_options: Additional parameters for the operation - :type task_update_options: ~azure.batch.models.TaskUpdateOptions :param constraints: Constraints that apply to this task. If omitted, the task is given the default constraints. For multi-instance tasks, updating the retention time applies only to the primary task and not subtasks. :type constraints: ~azure.batch.models.TaskConstraints + :param task_update_options: Additional parameters for the operation + :type task_update_options: ~azure.batch.models.TaskUpdateOptions :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -680,9 +678,8 @@ def update( body_content = self._serialize.body(task_update_parameter, 'TaskUpdateParameter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -760,7 +757,7 @@ def list_subtasks( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -775,8 +772,8 @@ def list_subtasks( header_parameters['ocp-date'] = self._serialize.header("ocp_date", ocp_date, 'rfc-1123') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.BatchErrorException(self._deserialize, response) @@ -867,7 +864,6 @@ def terminate( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -890,8 +886,8 @@ def terminate( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.BatchErrorException(self._deserialize, response) @@ -981,7 +977,6 @@ def reactivate( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1004,8 +999,8 @@ def reactivate( header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", if_unmodified_since, 'rfc-1123') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.BatchErrorException(self._deserialize, response) diff --git a/azure-batch/azure/batch/version.py b/azure-batch/azure/batch/version.py index 440b1bcceaf3..2b9421da3e1b 100644 --- a/azure-batch/azure/batch/version.py +++ b/azure-batch/azure/batch/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "4.1.3" +VERSION = "5.1.1" diff --git a/azure-batch/azure_bdist_wheel.py b/azure-batch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-batch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-batch/build.json b/azure-batch/build.json deleted file mode 100644 index 4698994e259c..000000000000 --- a/azure-batch/build.json +++ /dev/null @@ -1,183 +0,0 @@ -{ - "autorest": [ - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4147", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/async-io": "~1.0.21", - "@microsoft.azure/extension": "~1.1.5", - "@types/commonmark": "^0.27.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.28", - "@types/pify": "0.0.28", - "@types/source-map": "^0.5.0", - "@types/yargs": "^8.0.2", - "commonmark": "^0.27.0", - "file-url": "^2.0.2", - "get-uri": "^2.0.0", - "jsonpath": "^0.2.11", - "linq-es2015": "^2.4.25", - "mocha": "3.4.2", - "mocha-typescript": "1.1.5", - "pify": "^3.0.0", - "safe-eval": "^0.3.0", - "shx": "^0.2.2", - "source-map": "^0.5.6", - "source-map-support": "^0.4.15", - "strip-bom": "^3.0.0", - "typescript": "2.4.1", - "untildify": "^3.0.2", - "urijs": "^1.18.10", - "vscode-jsonrpc": "^3.3.1", - "yaml-ast-parser": "https://github.com/olydis/yaml-ast-parser/releases/download/0.0.34/yaml-ast-parser-0.0.34.tgz", - "yargs": "^8.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "_shasum": "cfad16a831757f2f55e53bf56669d126cd36113a", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest-core@2.0.4147", - "_from": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "_where": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.1.22", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "ca425289fa38a210d279729048a4a91673f09c67", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.1.22", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.python", - "version": "2.0.17", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "^1.9.0", - "autorest": "^2.0.0", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "_shasum": "84a951c19c502343726cfe33cf43cefa76219b39", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.python@2.0.17", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "_where": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - } - ], - "autorest_bootstrap": { - "dependencies": { - "autorest": { - "version": "2.0.4147", - "from": "autorest@latest", - "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4147.tgz" - } - } - }, - "date": "2017-10-11T07:37:08Z" -} \ No newline at end of file diff --git a/azure-batch/sdk_packaging.toml b/azure-batch/sdk_packaging.toml new file mode 100644 index 000000000000..5f5fa94fc1bd --- /dev/null +++ b/azure-batch/sdk_packaging.toml @@ -0,0 +1,8 @@ +[packaging] +package_name = "azure-batch" +package_nspkg = "azure-nspkg" +package_pprint_name = "Batch" +package_doc_id = "batch" +is_stable = true +is_arm = false +auto_update = false \ No newline at end of file diff --git a/azure-batch/setup.cfg b/azure-batch/setup.cfg index 669e94e63df3..3c6e79cf31da 100644 --- a/azure-batch/setup.cfg +++ b/azure-batch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-nspkg \ No newline at end of file diff --git a/azure-batch/setup.py b/azure-batch/setup.py index dabe5b6ec31e..65dc11c84515 100644 --- a/azure-batch/setup.py +++ b/azure-batch/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-batch" @@ -72,13 +66,21 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-nspkg'], + } ) diff --git a/azure-batch/tests/batch_preparers.py b/azure-batch/tests/batch_preparers.py index 5b2204ad6351..86fff123a878 100644 --- a/azure-batch/tests/batch_preparers.py +++ b/azure-batch/tests/batch_preparers.py @@ -85,7 +85,7 @@ def create_resource(self, name, **kwargs): group.name, storage.name ) - batch_account.auto_storage=models.AutoStorageBaseProperties(storage_resource) + batch_account.auto_storage=models.AutoStorageBaseProperties(storage_account_id=storage_resource) account_setup = self.client.batch_account.create( group.name, name, @@ -168,7 +168,7 @@ def create_resource(self, name, **kwargs): azure.mgmt.batch.BatchManagementClient) group = self._get_resource_group(**kwargs) batch_account = self._get_batch_account(**kwargs) - user = models.UserAccount('task-user', 'kt#_gahr!@aGERDXA', models.ElevationLevel.admin) + user = models.UserAccount(name='task-user', password='kt#_gahr!@aGERDXA', elevation_level=models.ElevationLevel.admin) vm_size = 'Standard_A1' if self.config == 'paas': @@ -286,7 +286,7 @@ def create_resource(self, name, **kwargs): try: self.client.job.add(self.resource) except azure.batch.models.BatchErrorException as e: - message = "{}: ".format(e.error.code, e.error.message) + message = "{}:{} ".format(e.error.code, e.error.message) for v in e.error.values: message += "\n{}: {}".format(v.key, v.value) raise AzureTestError(message) diff --git a/azure-batch/tests/recordings/test_batch.test_batch_applications.yaml b/azure-batch/tests/recordings/test_batch.test_batch_applications.yaml index 378d3c847f77..ae6b5d20ff11 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_applications.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_applications.yaml @@ -5,22 +5,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:01:32 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:23:12 GMT'] method: GET - uri: https://batchf06f0dd7.westcentralus.batch.azure.com/applications?api-version=2018-03-01.6.1 + uri: https://batchf06f0dd7.eastus.batch.azure.com/applications?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf06f0dd7.westcentralus.batch.azure.com/$metadata#listapplicationsummariesresponses\",\"value\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf06f0dd7.eastus.batch.azure.com/$metadata#listapplicationsummariesresponses\",\"value\":[\r\n \ {\r\n \"id\":\"application_id\",\"versions\":[\r\n \"v1.0\"\r\n \ ]\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:01:33 GMT'] - request-id: [d3b246b1-d9c3-4d37-a43f-1d137511e5a1] + date: ['Fri, 24 Aug 2018 06:23:13 GMT'] + request-id: [f9ccae6c-f942-4a86-8f20-39d58c94e508] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -32,52 +31,51 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:01:33 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:23:13 GMT'] method: GET - uri: https://batchf06f0dd7.westcentralus.batch.azure.com/applications/application_id?api-version=2018-03-01.6.1 + uri: https://batchf06f0dd7.eastus.batch.azure.com/applications/application_id?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf06f0dd7.westcentralus.batch.azure.com/$metadata#getapplicationsummaryresponse/@Element\",\"id\":\"application_id\",\"versions\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf06f0dd7.eastus.batch.azure.com/$metadata#getapplicationsummaryresponse/@Element\",\"id\":\"application_id\",\"versions\":[\r\n \ \"v1.0\"\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:01:34 GMT'] - request-id: [0573d3f0-7f70-4757-bbb1-62da2e1c25a2] + date: ['Fri, 24 Aug 2018 06:23:14 GMT'] + request-id: [48cc2c6a-c810-4bb6-a6dc-777b25c5705d] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"id": "python_task_with_app_package", "applicationPackageReferences": - [{"version": "v1.0", "applicationId": "application_id"}], "commandLine": "cmd - /c \"echo hello world\""}' + body: '{"applicationPackageReferences": [{"applicationId": "application_id", "version": + "v1.0"}], "id": "python_task_with_app_package", "commandLine": "cmd /c \"echo + hello world\""}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['174'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:01:34 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:23:14 GMT'] method: POST - uri: https://batchf06f0dd7.westcentralus.batch.azure.com/jobs/batchf06f0dd7/tasks?api-version=2018-03-01.6.1 + uri: https://batchf06f0dd7.eastus.batch.azure.com/jobs/batchf06f0dd7/tasks?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchf06f0dd7.westcentralus.batch.azure.com/jobs/batchf06f0dd7/tasks/python_task_with_app_package'] + dataserviceid: ['https://batchf06f0dd7.eastus.batch.azure.com/jobs/batchf06f0dd7/tasks/python_task_with_app_package'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:01:35 GMT'] - etag: ['0x8D588A7E0AAFC74'] - last-modified: ['Tue, 13 Mar 2018 06:01:35 GMT'] - location: ['https://batchf06f0dd7.westcentralus.batch.azure.com/jobs/batchf06f0dd7/tasks/python_task_with_app_package'] - request-id: [7075703a-0c5d-4bfe-ba57-38281e41e1da] + date: ['Fri, 24 Aug 2018 06:23:14 GMT'] + etag: ['0x8D6098A132CCBE4'] + last-modified: ['Fri, 24 Aug 2018 06:23:15 GMT'] + location: ['https://batchf06f0dd7.eastus.batch.azure.com/jobs/batchf06f0dd7/tasks/python_task_with_app_package'] + request-id: [eefeba72-ccd4-4bdd-b18a-a6208c7e623e] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -89,15 +87,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:01:35 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:23:15 GMT'] method: GET - uri: https://batchf06f0dd7.westcentralus.batch.azure.com/jobs/batchf06f0dd7/tasks/python_task_with_app_package?api-version=2018-03-01.6.1 + uri: https://batchf06f0dd7.eastus.batch.azure.com/jobs/batchf06f0dd7/tasks/python_task_with_app_package?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf06f0dd7.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"python_task_with_app_package\",\"url\":\"https://batchf06f0dd7.westcentralus.batch.azure.com/jobs/batchf06f0dd7/tasks/python_task_with_app_package\",\"eTag\":\"0x8D588A7E0AAFC74\",\"creationTime\":\"2018-03-13T06:01:35.3011316Z\",\"lastModified\":\"2018-03-13T06:01:35.3011316Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:01:35.3011316Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batchf06f0dd7.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"python_task_with_app_package\",\"url\":\"https://batchf06f0dd7.eastus.batch.azure.com/jobs/batchf06f0dd7/tasks/python_task_with_app_package\",\"eTag\":\"0x8D6098A132CCBE4\",\"creationTime\":\"2018-08-24T06:23:15.1343588Z\",\"lastModified\":\"2018-08-24T06:23:15.1343588Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:23:15.1343588Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"applicationPackageReferences\":[\r\n {\r\n \ \"applicationId\":\"application_id\",\"version\":\"v1.0\"\r\n }\r\n \ ],\"userIdentity\":{\r\n \"autoUser\":{\r\n \"elevationLevel\":\"nonadmin\"\r\n @@ -106,10 +103,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:01:35 GMT'] - etag: ['0x8D588A7E0AAFC74'] - last-modified: ['Tue, 13 Mar 2018 06:01:35 GMT'] - request-id: [e37a6a67-a391-49d6-8e05-134cc4d7851d] + date: ['Fri, 24 Aug 2018 06:23:15 GMT'] + etag: ['0x8D6098A132CCBE4'] + last-modified: ['Fri, 24 Aug 2018 06:23:15 GMT'] + request-id: [527593e6-02fe-43bc-9a6d-e332389f63b4] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_certificates.yaml b/azure-batch/tests/recordings/test_batch.test_batch_certificates.yaml index 8ac2d7d3dd15..dc8aabf2c48c 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_certificates.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_certificates.yaml @@ -1,28 +1,27 @@ interactions: - request: - body: '{"data": "MIIGMQIBAzCCBe0GCSqGSIb3DQEHAaCCBd4EggXaMIIF1jCCA8AGCSqGSIb3DQEHAaCCA7EEggOtMIIDqTCCA6UGCyqGSIb3DQEMCgECoIICtjCCArIwHAYKKoZIhvcNAQwBAzAOBAhyd3xCtln3iQICB9AEggKQhe5P10V9iV1BsDlwWT561Yu2hVq3JT8ae/ebx1ZR/gMApVereDKkS9Zg4vFyssusHebbK5pDpU8vfAqle0TM4m7wGsRj453ZorSPUfMpHvQnAOn+2pEpWdMThU7xvZ6DVpwhDOQk9166z+KnKdHGuJKh4haMT7Rw/6xZ1rsBt2423cwTrQVMQyACrEkianpuujubKltN99qRoFAxhQcnYE2KlYKw7lRcExq6mDSYAyk5xJZ1ZFdLj6MAryZroQit/0g5eyhoNEKwWbi8px5j71pRTf7yjN+deMGQKwbGl+3OgaL1UZ5fCjypbVL60kpIBxLZwIJ7p3jJ+q9pbq9zSdzshPYor5lxyUfXqaso/0/91ayNoBzg4hQGh618PhFI6RMGjwkzhB9xk74iweJ9HQyIHf8yx2RCSI22JuCMitPMWSGvOszhbNx3AEDLuiiAOHg391mprEtKZguOIr9LrJwem/YmcHbwyz5YAbZmiseKPkllfC7dafFfCFEkj6R2oegIsZo0pEKYisAXBqT0g+6/jGwuhlZcBo0f7UIZm88iA3MrJCjlXEgV5OcQdoWj+hq0lKEdnhtCKr03AIfukN6+4vjjarZeW1bs0swq0l3XFf5RHa11otshMS4mpewshB9iO9MuKWpRxuxeng4PlKZ/zuBqmPeUrjJ9454oK35Pq+dghfemt7AUpBH/KycDNIZgfdEWUZrRKBGnc519C+RTqxyt5hWL18nJk4LvSd3QKlJ1iyJxClhhb/NWEzPqNdyA5cxen+2T9bd/EqJ2KzRv5/BPVwTQkHH9W/TZElFyvFfOFIW2+03RKbVGw72Mr/0xKZ+awAnEfoU+SL/2Gj2m6PHkqFX2sOCi/tN9EA4xgdswEwYJKoZIhvcNAQkVMQYEBAEAAAAwXQYJKwYBBAGCNxEBMVAeTgBNAGkAYwByAG8AcwBvAGYAdAAgAFMAdAByAG8AbgBnACAAQwByAHkAcAB0AG8AZwByAGEAcABoAGkAYwAgAFAAcgBvAHYAaQBkAGUAcjBlBgkqhkiG9w0BCRQxWB5WAFAAdgBrAFQAbQBwADoANABjAGUANgAwADQAZABhAC0AMAA2ADgAMQAtADQANAAxADUALQBhADIAYwBhAC0ANQA3ADcAMwAwADgAZQA2AGQAOQBhAGMwggIOBgkqhkiG9w0BBwGgggH/BIIB+zCCAfcwggHzBgsqhkiG9w0BDAoBA6CCAcswggHHBgoqhkiG9w0BCRYBoIIBtwSCAbMwggGvMIIBXaADAgECAhAdka3aTQsIsUphgIXGUmeRMAkGBSsOAwIdBQAwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3kwHhcNMTYwMTAxMDcwMDAwWhcNMTgwMTAxMDcwMDAwWjASMRAwDgYDVQQDEwdub2Rlc2RrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC5fhcxbJHxxBEIDzVOMc56s04U6k4GPY7yMR1m+rBGVRiAyV4RjY6U936dqXHCVD36ps2Q0Z+OeEgyCInkIyVeB1EwXcToOcyeS2YcUb0vRWZDouC3tuFdHwiK1Ed5iW/LksmXDotyV7kpqzaPhOFiMtBuMEwNJcPge9k17hRgRQIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAHl2M97QbpzdnwO5HoRBsiEExOcLTNg+GKCr7HUsbzfvrUivw+JLL7qjHAIc5phnK+F5bQ8HKe0L9YXBSKl+fvwxFTATBgkqhkiG9w0BCRUxBgQEAQAAADA7MB8wBwYFKw4DAhoEFGVtyGMqiBd32fGpzlGZQoRM6UQwBBTI0YHFFqTS4Go8CoLgswn29EiuUQICB9A=", - "thumbprint": "cff2ab63c8c955aaf71989efa641b906558d9fb7", "password": "nodesdk", - "certificateFormat": "pfx", "thumbprintAlgorithm": "sha1"}' + body: '{"certificateFormat": "pfx", "thumbprintAlgorithm": "sha1", "thumbprint": + "cff2ab63c8c955aaf71989efa641b906558d9fb7", "password": "nodesdk", "data": "MIIGMQIBAzCCBe0GCSqGSIb3DQEHAaCCBd4EggXaMIIF1jCCA8AGCSqGSIb3DQEHAaCCA7EEggOtMIIDqTCCA6UGCyqGSIb3DQEMCgECoIICtjCCArIwHAYKKoZIhvcNAQwBAzAOBAhyd3xCtln3iQICB9AEggKQhe5P10V9iV1BsDlwWT561Yu2hVq3JT8ae/ebx1ZR/gMApVereDKkS9Zg4vFyssusHebbK5pDpU8vfAqle0TM4m7wGsRj453ZorSPUfMpHvQnAOn+2pEpWdMThU7xvZ6DVpwhDOQk9166z+KnKdHGuJKh4haMT7Rw/6xZ1rsBt2423cwTrQVMQyACrEkianpuujubKltN99qRoFAxhQcnYE2KlYKw7lRcExq6mDSYAyk5xJZ1ZFdLj6MAryZroQit/0g5eyhoNEKwWbi8px5j71pRTf7yjN+deMGQKwbGl+3OgaL1UZ5fCjypbVL60kpIBxLZwIJ7p3jJ+q9pbq9zSdzshPYor5lxyUfXqaso/0/91ayNoBzg4hQGh618PhFI6RMGjwkzhB9xk74iweJ9HQyIHf8yx2RCSI22JuCMitPMWSGvOszhbNx3AEDLuiiAOHg391mprEtKZguOIr9LrJwem/YmcHbwyz5YAbZmiseKPkllfC7dafFfCFEkj6R2oegIsZo0pEKYisAXBqT0g+6/jGwuhlZcBo0f7UIZm88iA3MrJCjlXEgV5OcQdoWj+hq0lKEdnhtCKr03AIfukN6+4vjjarZeW1bs0swq0l3XFf5RHa11otshMS4mpewshB9iO9MuKWpRxuxeng4PlKZ/zuBqmPeUrjJ9454oK35Pq+dghfemt7AUpBH/KycDNIZgfdEWUZrRKBGnc519C+RTqxyt5hWL18nJk4LvSd3QKlJ1iyJxClhhb/NWEzPqNdyA5cxen+2T9bd/EqJ2KzRv5/BPVwTQkHH9W/TZElFyvFfOFIW2+03RKbVGw72Mr/0xKZ+awAnEfoU+SL/2Gj2m6PHkqFX2sOCi/tN9EA4xgdswEwYJKoZIhvcNAQkVMQYEBAEAAAAwXQYJKwYBBAGCNxEBMVAeTgBNAGkAYwByAG8AcwBvAGYAdAAgAFMAdAByAG8AbgBnACAAQwByAHkAcAB0AG8AZwByAGEAcABoAGkAYwAgAFAAcgBvAHYAaQBkAGUAcjBlBgkqhkiG9w0BCRQxWB5WAFAAdgBrAFQAbQBwADoANABjAGUANgAwADQAZABhAC0AMAA2ADgAMQAtADQANAAxADUALQBhADIAYwBhAC0ANQA3ADcAMwAwADgAZQA2AGQAOQBhAGMwggIOBgkqhkiG9w0BBwGgggH/BIIB+zCCAfcwggHzBgsqhkiG9w0BDAoBA6CCAcswggHHBgoqhkiG9w0BCRYBoIIBtwSCAbMwggGvMIIBXaADAgECAhAdka3aTQsIsUphgIXGUmeRMAkGBSsOAwIdBQAwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3kwHhcNMTYwMTAxMDcwMDAwWhcNMTgwMTAxMDcwMDAwWjASMRAwDgYDVQQDEwdub2Rlc2RrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC5fhcxbJHxxBEIDzVOMc56s04U6k4GPY7yMR1m+rBGVRiAyV4RjY6U936dqXHCVD36ps2Q0Z+OeEgyCInkIyVeB1EwXcToOcyeS2YcUb0vRWZDouC3tuFdHwiK1Ed5iW/LksmXDotyV7kpqzaPhOFiMtBuMEwNJcPge9k17hRgRQIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAHl2M97QbpzdnwO5HoRBsiEExOcLTNg+GKCr7HUsbzfvrUivw+JLL7qjHAIc5phnK+F5bQ8HKe0L9YXBSKl+fvwxFTATBgkqhkiG9w0BCRUxBgQEAQAAADA7MB8wBwYFKw4DAhoEFGVtyGMqiBd32fGpzlGZQoRM6UQwBBTI0YHFFqTS4Go8CoLgswn29EiuUQICB9A="}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['2272'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 18:20:56 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:29:21 GMT'] method: POST - uri: https://batchf0370dc6.westcentralus.batch.azure.com/certificates?api-version=2018-03-01.6.1 + uri: https://batchf0370dc6.eastus.batch.azure.com/certificates?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchf0370dc6.westcentralus.batch.azure.com/certificates(ThumbprintAlgorithm=sha1,Thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)'] + dataserviceid: ['https://batchf0370dc6.eastus.batch.azure.com/certificates(ThumbprintAlgorithm=sha1,Thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 18:20:56 GMT'] - location: ['https://batchf0370dc6.westcentralus.batch.azure.com/certificates(ThumbprintAlgorithm=sha1,Thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)'] - request-id: [9ad880d3-5355-402f-95be-3231b44dc904] + date: ['Fri, 24 Aug 2018 06:29:23 GMT'] + location: ['https://batchf0370dc6.eastus.batch.azure.com/certificates(ThumbprintAlgorithm=sha1,Thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)'] + request-id: [b61d5487-9ca0-4f27-95ff-e4e8544bad89] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -34,22 +33,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 18:20:57 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:29:23 GMT'] method: GET - uri: https://batchf0370dc6.westcentralus.batch.azure.com/certificates?api-version=2018-03-01.6.1 + uri: https://batchf0370dc6.eastus.batch.azure.com/certificates?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0370dc6.westcentralus.batch.azure.com/$metadata#certificates\",\"value\":[\r\n - \ {\r\n \"thumbprint\":\"cff2ab63c8c955aaf71989efa641b906558d9fb7\",\"thumbprintAlgorithm\":\"sha1\",\"url\":\"https://batchf0370dc6.westcentralus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T18:20:57.3313134Z\",\"publicData\":\"MIIBrzCCAV2gAwIBAgIQHZGt2k0LCLFKYYCFxlJnkTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE2MDEwMTA3MDAwMFoXDTE4MDEwMTA3MDAwMFowEjEQMA4GA1UEAxMHbm9kZXNkazCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuX4XMWyR8cQRCA81TjHOerNOFOpOBj2O8jEdZvqwRlUYgMleEY2OlPd+nalxwlQ9+qbNkNGfjnhIMgiJ5CMlXgdRMF3E6DnMnktmHFG9L0VmQ6Lgt7bhXR8IitRHeYlvy5LJlw6Lcle5Kas2j4ThYjLQbjBMDSXD4HvZNe4UYEUCAwEAAaNLMEkwRwYDVR0BBEAwPoAQEuQJLQYdHU8AjWEh3BZkY6EYMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5ghAGN2wAqgBkihHPuNSqXDX0MAkGBSsOAwIdBQADQQB5djPe0G6c3Z8DuR6EQbIhBMTnC0zYPhigq+x1LG83761Ir8PiSy+6oxwCHOaYZyvheW0PByntC/WFwUipfn78\"\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0370dc6.eastus.batch.azure.com/$metadata#certificates\",\"value\":[\r\n + \ {\r\n \"thumbprint\":\"cff2ab63c8c955aaf71989efa641b906558d9fb7\",\"thumbprintAlgorithm\":\"sha1\",\"url\":\"https://batchf0370dc6.eastus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:29:23.0731258Z\",\"publicData\":\"MIIBrzCCAV2gAwIBAgIQHZGt2k0LCLFKYYCFxlJnkTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE2MDEwMTA3MDAwMFoXDTE4MDEwMTA3MDAwMFowEjEQMA4GA1UEAxMHbm9kZXNkazCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuX4XMWyR8cQRCA81TjHOerNOFOpOBj2O8jEdZvqwRlUYgMleEY2OlPd+nalxwlQ9+qbNkNGfjnhIMgiJ5CMlXgdRMF3E6DnMnktmHFG9L0VmQ6Lgt7bhXR8IitRHeYlvy5LJlw6Lcle5Kas2j4ThYjLQbjBMDSXD4HvZNe4UYEUCAwEAAaNLMEkwRwYDVR0BBEAwPoAQEuQJLQYdHU8AjWEh3BZkY6EYMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5ghAGN2wAqgBkihHPuNSqXDX0MAkGBSsOAwIdBQADQQB5djPe0G6c3Z8DuR6EQbIhBMTnC0zYPhigq+x1LG83761Ir8PiSy+6oxwCHOaYZyvheW0PByntC/WFwUipfn78\"\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 18:20:58 GMT'] - request-id: [736c9c07-7ecc-4935-90ca-44d60e7a965d] + date: ['Fri, 24 Aug 2018 06:29:23 GMT'] + request-id: [c44ec109-7f39-4c48-be50-2cbfd97276d9] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -61,20 +59,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 18:20:58 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:29:24 GMT'] method: GET - uri: https://batchf0370dc6.westcentralus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)?api-version=2018-03-01.6.1 + uri: https://batchf0370dc6.eastus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0370dc6.westcentralus.batch.azure.com/$metadata#certificates/@Element\",\"thumbprint\":\"cff2ab63c8c955aaf71989efa641b906558d9fb7\",\"thumbprintAlgorithm\":\"sha1\",\"url\":\"https://batchf0370dc6.westcentralus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T18:20:57.3313134Z\",\"publicData\":\"MIIBrzCCAV2gAwIBAgIQHZGt2k0LCLFKYYCFxlJnkTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE2MDEwMTA3MDAwMFoXDTE4MDEwMTA3MDAwMFowEjEQMA4GA1UEAxMHbm9kZXNkazCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuX4XMWyR8cQRCA81TjHOerNOFOpOBj2O8jEdZvqwRlUYgMleEY2OlPd+nalxwlQ9+qbNkNGfjnhIMgiJ5CMlXgdRMF3E6DnMnktmHFG9L0VmQ6Lgt7bhXR8IitRHeYlvy5LJlw6Lcle5Kas2j4ThYjLQbjBMDSXD4HvZNe4UYEUCAwEAAaNLMEkwRwYDVR0BBEAwPoAQEuQJLQYdHU8AjWEh3BZkY6EYMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5ghAGN2wAqgBkihHPuNSqXDX0MAkGBSsOAwIdBQADQQB5djPe0G6c3Z8DuR6EQbIhBMTnC0zYPhigq+x1LG83761Ir8PiSy+6oxwCHOaYZyvheW0PByntC/WFwUipfn78\"\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0370dc6.eastus.batch.azure.com/$metadata#certificates/@Element\",\"thumbprint\":\"cff2ab63c8c955aaf71989efa641b906558d9fb7\",\"thumbprintAlgorithm\":\"sha1\",\"url\":\"https://batchf0370dc6.eastus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:29:23.0731258Z\",\"publicData\":\"MIIBrzCCAV2gAwIBAgIQHZGt2k0LCLFKYYCFxlJnkTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE2MDEwMTA3MDAwMFoXDTE4MDEwMTA3MDAwMFowEjEQMA4GA1UEAxMHbm9kZXNkazCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuX4XMWyR8cQRCA81TjHOerNOFOpOBj2O8jEdZvqwRlUYgMleEY2OlPd+nalxwlQ9+qbNkNGfjnhIMgiJ5CMlXgdRMF3E6DnMnktmHFG9L0VmQ6Lgt7bhXR8IitRHeYlvy5LJlw6Lcle5Kas2j4ThYjLQbjBMDSXD4HvZNe4UYEUCAwEAAaNLMEkwRwYDVR0BBEAwPoAQEuQJLQYdHU8AjWEh3BZkY6EYMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5ghAGN2wAqgBkihHPuNSqXDX0MAkGBSsOAwIdBQADQQB5djPe0G6c3Z8DuR6EQbIhBMTnC0zYPhigq+x1LG83761Ir8PiSy+6oxwCHOaYZyvheW0PByntC/WFwUipfn78\"\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 18:20:58 GMT'] - request-id: [0c941d63-615c-4c42-953d-fe5294bf58a6] + date: ['Fri, 24 Aug 2018 06:29:25 GMT'] + request-id: [e062c0f6-1f50-4126-98b0-dec82d6da84e] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -87,24 +84,23 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 18:20:59 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:29:25 GMT'] method: POST - uri: https://batchf0370dc6.westcentralus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)/canceldelete?api-version=2018-03-01.6.1 + uri: https://batchf0370dc6.eastus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)/canceldelete?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0370dc6.westcentralus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"CertificateStateActive\",\"message\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0370dc6.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"CertificateStateActive\",\"message\":{\r\n \ \"lang\":\"en-US\",\"value\":\"The specified certificate is in active - state.\\nRequestId:0e110db4-9d65-42dd-8dd1-a90ef128bebf\\nTime:2018-03-13T18:20:59.6432196Z\"\r\n + state.\\nRequestId:ada64886-ee45-451a-8110-54ccf44584eb\\nTime:2018-08-24T06:29:25.7815398Z\"\r\n \ }\r\n}"} headers: - content-length: ['362'] + content-length: ['355'] content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 18:20:59 GMT'] - request-id: [0e110db4-9d65-42dd-8dd1-a90ef128bebf] + date: ['Fri, 24 Aug 2018 06:29:25 GMT'] + request-id: [ada64886-ee45-451a-8110-54ccf44584eb] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -116,19 +112,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 18:20:59 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:29:25 GMT'] method: DELETE - uri: https://batchf0370dc6.westcentralus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)?api-version=2018-03-01.6.1 + uri: https://batchf0370dc6.eastus.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=cff2ab63c8c955aaf71989efa641b906558d9fb7)?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 18:21:00 GMT'] - request-id: [bb3e5671-ca5c-43c2-8ce2-06379800966c] + date: ['Fri, 24 Aug 2018 06:29:25 GMT'] + request-id: [f5c463dc-f692-4095-acdf-55b5ecf2791d] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_compute_node_user.yaml b/azure-batch/tests/recordings/test_batch.test_batch_compute_node_user.yaml index 47eff7769963..66a65f07be5b 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_compute_node_user.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_compute_node_user.yaml @@ -5,22 +5,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:09:06 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:32:23 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:09:07 GMT'] - request-id: [e947d54e-63bf-4837-9104-ef30924484d9] + date: ['Fri, 24 Aug 2018 06:32:23 GMT'] + request-id: [8ec60cce-4fe0-4812-924c-8add41b2d52c] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -32,22 +31,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:09:17 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:32:34 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:09:17 GMT'] - request-id: [86216ba2-19fd-4287-8b77-54e9f717fbd5] + date: ['Fri, 24 Aug 2018 06:32:35 GMT'] + request-id: [4e7bd0ab-33a5-4cbe-bce2-8e874b558fca] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -59,22 +57,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:09:27 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:32:45 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:09:27 GMT'] - request-id: [64824ba0-8f0f-4f22-ab9f-f52be42a4dcf] + date: ['Fri, 24 Aug 2018 06:32:45 GMT'] + request-id: [f1346d3c-54ce-4fc0-92eb-8cb3d8e74f42] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -86,22 +83,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:09:38 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:32:56 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:09:39 GMT'] - request-id: [ed7c7f92-7013-40c6-bcde-25d7567d34e7] + date: ['Fri, 24 Aug 2018 06:32:57 GMT'] + request-id: [0cbb05a8-dcab-411d-9209-b2d5e5d358cc] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -113,22 +109,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:09:49 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:33:07 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:09:49 GMT'] - request-id: [ae8ffe66-7a85-4c78-8047-0df23678c27b] + date: ['Fri, 24 Aug 2018 06:33:08 GMT'] + request-id: [2695ff98-13ac-45fd-878e-2d81b3b9f1c1] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -140,22 +135,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:09:59 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:33:18 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:10:00 GMT'] - request-id: [35c72345-fd9b-495a-8352-bf4cb60ae8f1] + date: ['Fri, 24 Aug 2018 06:33:19 GMT'] + request-id: [08589587-e537-4dd4-aa2a-5d57c47276bb] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -167,22 +161,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:10:10 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:33:29 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:10:11 GMT'] - request-id: [d854d38f-86c8-4747-8c5f-ee5f61853c7e] + date: ['Fri, 24 Aug 2018 06:33:29 GMT'] + request-id: [6ccdef62-d7ee-40f1-8641-e7ee471800ec] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -194,22 +187,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:10:21 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:33:40 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:10:21 GMT'] - request-id: [a3ed0508-6869-433e-b264-63a2e36c2419] + date: ['Fri, 24 Aug 2018 06:33:41 GMT'] + request-id: [f3b8acb8-0807-4493-b554-5b2cc1ccb221] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -221,22 +213,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:10:31 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:33:51 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:10:32 GMT'] - request-id: [dc59a4db-6e55-4f62-a9de-f37bd32d656c] + date: ['Fri, 24 Aug 2018 06:33:52 GMT'] + request-id: [f52b5f1a-c122-45cc-8782-ffe14a85f7fd] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -248,22 +239,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:10:42 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:34:02 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:10:42 GMT'] - request-id: [10df0550-62b2-4682-ad31-2cbece413259] + date: ['Fri, 24 Aug 2018 06:34:03 GMT'] + request-id: [1ee3615e-64bf-4813-a820-f010308e6bbf] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -275,22 +265,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:10:52 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:34:13 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:10:52 GMT'] - request-id: [469d6809-21b9-4779-bca4-fbbb4832887c] + date: ['Fri, 24 Aug 2018 06:34:14 GMT'] + request-id: [eccaee65-5386-47b9-b2e3-45a82170da65] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -302,22 +291,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:11:03 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:34:24 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:11:04 GMT'] - request-id: [fc38b109-0940-46eb-9c3c-dd60a38010a7] + date: ['Fri, 24 Aug 2018 06:34:24 GMT'] + request-id: [06536e68-7800-4670-b662-82049ecd24eb] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -329,22 +317,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:11:14 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:34:34 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:11:14 GMT'] - request-id: [35f5395b-ae42-452f-a206-e7bdc074e62e] + date: ['Fri, 24 Aug 2018 06:34:35 GMT'] + request-id: [4d42f295-ccb7-4695-a9cf-dadb123d2d52] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -356,22 +343,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:11:24 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:34:45 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:11:25 GMT'] - request-id: [5550e980-30d6-414a-a2eb-640cefe465c0] + date: ['Fri, 24 Aug 2018 06:34:46 GMT'] + request-id: [7290f7a8-fd39-4f67-bbaa-1cf1e3e39040] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -383,22 +369,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:11:35 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:34:56 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:11:35 GMT'] - request-id: [1616a4fe-5c67-40df-8534-ef877117ca33] + date: ['Fri, 24 Aug 2018 06:34:57 GMT'] + request-id: [e150654c-3f78-4e3d-970c-70335a908a8d] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -410,22 +395,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:11:45 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:35:07 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:11:46 GMT'] - request-id: [a9f4d262-1e04-44f9-8dda-0ef60bb36d2e] + date: ['Fri, 24 Aug 2018 06:35:08 GMT'] + request-id: [b4835695-c8f6-40f3-954d-98966310c0db] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -437,22 +421,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:11:56 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:35:18 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:11:57 GMT'] - request-id: [57312756-1d1c-45d6-906e-af5c239a3b17] + date: ['Fri, 24 Aug 2018 06:35:19 GMT'] + request-id: [6f56a9c2-3f9e-49d1-8a98-f15a42c258ad] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -464,22 +447,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:12:07 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:35:29 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:12:07 GMT'] - request-id: [d2f68d28-b51a-4559-8e45-7380abd51c91] + date: ['Fri, 24 Aug 2018 06:35:30 GMT'] + request-id: [5b44ea86-b177-4ed7-9512-398bf827df11] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -491,22 +473,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:12:17 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:35:40 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:12:17 GMT'] - request-id: [7bdfe882-9107-4d42-a045-cc795138a928] + date: ['Fri, 24 Aug 2018 06:35:41 GMT'] + request-id: [cb4ee1b1-9a85-4b11-8af9-f66025db7a67] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -518,22 +499,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:12:28 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:35:51 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:12:28 GMT'] - request-id: [0a5945bd-e157-46d5-9fc6-4d981e6b2e9a] + date: ['Fri, 24 Aug 2018 06:35:52 GMT'] + request-id: [19cff134-860d-403b-9799-974caa83c706] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -545,22 +525,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:12:38 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:36:02 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:12:39 GMT'] - request-id: [0e12beba-2b60-4348-92d8-0123f1b61da6] + date: ['Fri, 24 Aug 2018 06:36:03 GMT'] + request-id: [5b13b2e4-8278-4ba4-9122-3cb3c0f06d22] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -572,22 +551,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:12:49 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:36:13 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:12:50 GMT'] - request-id: [5da22b2b-37aa-4233-aabc-11c2c7d1781b] + date: ['Fri, 24 Aug 2018 06:36:14 GMT'] + request-id: [5522a3a4-b5f0-42bd-8fe3-1aa7433ab19e] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -599,22 +577,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:13:00 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:36:24 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:13:00 GMT'] - request-id: [bece6006-bddb-4df3-adde-36ce1867712d] + date: ['Fri, 24 Aug 2018 06:36:25 GMT'] + request-id: [6b65569c-1121-4d7f-82e8-9397b7c1e15f] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -626,22 +603,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:13:10 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:36:35 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:13:11 GMT'] - request-id: [1c2cb0c9-e109-4a0b-8062-62b93e82925a] + date: ['Fri, 24 Aug 2018 06:36:36 GMT'] + request-id: [54f40834-91cb-4be8-aa99-90c31b956e94] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -653,22 +629,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:13:21 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:36:46 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:13:21 GMT'] - request-id: [91effe40-ce7a-43cb-89d6-8dbf0fdb2f77] + date: ['Fri, 24 Aug 2018 06:36:47 GMT'] + request-id: [5fd6dd79-1946-4263-a88a-adce81a94c2f] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -680,22 +655,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:13:31 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:36:57 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:13:31 GMT'] - request-id: [1899c9fe-62ae-4279-96a4-129d551cd8c5] + date: ['Fri, 24 Aug 2018 06:36:57 GMT'] + request-id: [a5008675-61b3-4683-8613-9feb59c7fe7b] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -707,22 +681,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:13:42 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:37:08 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:13:42 GMT'] - request-id: [0d6b9d66-9c78-4d8f-a3ce-41ddfcfccb2a] + date: ['Fri, 24 Aug 2018 06:37:09 GMT'] + request-id: [1ee6f490-4673-46aa-9188-5779380a7c7c] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -734,22 +707,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:13:52 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:37:19 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:13:53 GMT'] - request-id: [dee48c6c-2235-45d3-919b-81e323c3704b] + date: ['Fri, 24 Aug 2018 06:37:19 GMT'] + request-id: [831038b3-311b-4afe-bf06-4843fe45d069] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -761,22 +733,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:14:03 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:37:30 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:14:04 GMT'] - request-id: [61d19be1-0a3c-436b-b110-61dc434e4343] + date: ['Fri, 24 Aug 2018 06:37:31 GMT'] + request-id: [4e77cfae-25b2-4225-8f7b-66df48d8026f] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -788,22 +759,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:14:14 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:37:41 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:14:14 GMT'] - request-id: [c3e8710f-9cf8-4f6b-96a1-c13c5a15173e] + date: ['Fri, 24 Aug 2018 06:37:42 GMT'] + request-id: [2848b143-0cee-4173-931c-ed80a87bde4a] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -815,22 +785,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:14:24 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:37:52 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:14:25 GMT'] - request-id: [51bff745-82fd-4120-b122-ee4f66167ac2] + date: ['Fri, 24 Aug 2018 06:37:53 GMT'] + request-id: [5bc326aa-2eb8-4084-8878-18b98f98aa07] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -842,22 +811,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:14:35 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:38:03 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:14:35 GMT'] - request-id: [3bcb21c0-5bd1-40af-ab6b-c73bc1c337be] + date: ['Fri, 24 Aug 2018 06:38:04 GMT'] + request-id: [defc1a23-0c6c-44bf-8ab7-518d13dae8fc] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -869,22 +837,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:14:46 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:38:14 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:14:46 GMT'] - request-id: [6f0cfc8b-f8c3-4add-9944-32185bbbed2e] + date: ['Fri, 24 Aug 2018 06:38:15 GMT'] + request-id: [18a7b57c-80b2-490c-8ece-f9c9d0ac4192] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -896,22 +863,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:14:56 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:38:25 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:14:57 GMT'] - request-id: [4913377d-abc1-449c-831b-1dc1835a58e4] + date: ['Fri, 24 Aug 2018 06:38:26 GMT'] + request-id: [7ed4bd5a-835c-495e-8547-6534636c5d65] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -923,22 +889,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:15:07 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:38:36 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:15:07 GMT'] - request-id: [aabfe21a-3524-4eb8-ac9f-05d8662932f7] + date: ['Fri, 24 Aug 2018 06:38:36 GMT'] + request-id: [7493b4c2-ddd6-43c4-8feb-e05ba17dbbc0] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -950,22 +915,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:15:17 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:38:47 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:15:18 GMT'] - request-id: [6336d909-8922-4dc0-b6c8-35050e7a1065] + date: ['Fri, 24 Aug 2018 06:38:47 GMT'] + request-id: [5432a585-df5f-473b-b277-1ca824b2e6cb] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -977,22 +941,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:15:28 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:38:57 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:15:28 GMT'] - request-id: [4257fbd2-e9ec-4981-9290-9f8e36495546] + date: ['Fri, 24 Aug 2018 06:38:58 GMT'] + request-id: [33cbd04a-d03a-4a1e-8818-7d8dfd1da459] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1004,22 +967,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:15:39 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:39:08 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:15:39 GMT'] - request-id: [172964e6-6882-4954-b0dc-ee000a888c73] + date: ['Fri, 24 Aug 2018 06:39:09 GMT'] + request-id: [b0ffdc39-a8d0-40c1-a748-3a7a31469625] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1031,22 +993,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:15:49 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:39:20 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:15:50 GMT'] - request-id: [9c938077-c351-4bac-8a3f-375753c1ef21] + date: ['Fri, 24 Aug 2018 06:39:20 GMT'] + request-id: [82b3c8ad-b7ac-43c5-9c81-a48c0ead5717] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1058,22 +1019,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:16:00 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:39:31 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:16:00 GMT'] - request-id: [63c23a7a-c1e2-4ab0-8d10-f048b5190319] + date: ['Fri, 24 Aug 2018 06:39:31 GMT'] + request-id: [9b66adf3-f283-4c73-96eb-6eea9bf74a95] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1085,22 +1045,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:16:11 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:39:42 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:16:11 GMT'] - request-id: [1fff688e-e24e-42ae-8c30-f6a01eab86da] + date: ['Fri, 24 Aug 2018 06:39:43 GMT'] + request-id: [3658b85e-9684-4eb3-97d1-2e18aeb798ad] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1112,22 +1071,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:16:21 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:39:53 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:16:21 GMT'] - request-id: [31dc8ec8-e650-47b9-a216-e5a92cff54a8] + date: ['Fri, 24 Aug 2018 06:39:54 GMT'] + request-id: [f2a518f5-ea5a-4bc5-b51a-959a876213e1] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1139,22 +1097,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:16:32 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:40:04 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:16:31 GMT'] - request-id: [e8e2da6c-df7f-4607-9427-11db36351342] + date: ['Fri, 24 Aug 2018 06:40:05 GMT'] + request-id: [92ac9705-e92f-481b-ba67-efec28021aee] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1166,22 +1123,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:16:42 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:40:15 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:32:17.5155687Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:16:43 GMT'] - request-id: [141e9493-b250-44e2-b942-f1e89b0d34c1] + date: ['Fri, 24 Aug 2018 06:40:15 GMT'] + request-id: [1ba6a6ed-808f-48aa-8fd0-b069c8a2eed7] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1193,22 +1149,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:16:53 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:40:26 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"creating\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:08:57.762527Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:16:53 GMT'] - request-id: [bae3a084-d178-4808-8f3d-9d9eeaeb5a80] + date: ['Fri, 24 Aug 2018 06:40:27 GMT'] + request-id: [1ba35165-d8d5-43b1-9f2a-ff7be59fb27f] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1220,22 +1175,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:17:04 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:40:37 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:17:04 GMT'] - request-id: [5e8a78b4-207e-4b11-8029-781e57a17c5e] + date: ['Fri, 24 Aug 2018 06:40:37 GMT'] + request-id: [1db6fc1d-5539-4693-bee7-29ce61c5b916] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1247,22 +1201,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:17:14 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:40:48 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:17:14 GMT'] - request-id: [42eb2c64-5123-4e4d-b813-9eabd0b3e146] + date: ['Fri, 24 Aug 2018 06:40:48 GMT'] + request-id: [6c6703a2-74d5-4173-aa56-d5edf84d59ba] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1274,22 +1227,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:17:25 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:40:59 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:17:25 GMT'] - request-id: [f59d349e-ab5c-4ab5-96b2-bbc5b06a49b0] + date: ['Fri, 24 Aug 2018 06:40:59 GMT'] + request-id: [ff1830ff-9edb-4007-b950-d968ba29ea57] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1301,22 +1253,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:17:35 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:41:09 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:17:35 GMT'] - request-id: [6c591b41-c6ee-497b-8221-e0fd051f9543] + date: ['Fri, 24 Aug 2018 06:41:09 GMT'] + request-id: [11e4c04a-6c6f-4bcd-8e58-4d38a07e7c26] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1328,22 +1279,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:17:46 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:41:20 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:17:46 GMT'] - request-id: [794eef7f-c91a-4028-9858-5187af19b6cd] + date: ['Fri, 24 Aug 2018 06:41:21 GMT'] + request-id: [a039a305-c6aa-46bb-8fc5-a8d232c9b24e] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1355,22 +1305,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:17:56 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:41:31 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:17:56 GMT'] - request-id: [94b9fc55-592d-446b-887b-5ffe7edd90c0] + date: ['Fri, 24 Aug 2018 06:41:32 GMT'] + request-id: [b5ad76d1-0dbd-4256-92d4-fc25706f9444] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1382,22 +1331,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:18:07 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:41:42 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:18:07 GMT'] - request-id: [98087c55-be47-419f-949a-12c83bf1804b] + date: ['Fri, 24 Aug 2018 06:41:43 GMT'] + request-id: [61469341-a32e-4cd5-8a36-4b771531373a] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1409,22 +1357,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:18:17 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:41:53 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:40:17.6015183Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:18:17 GMT'] - request-id: [9d743543-6e0c-48bf-8702-d5c07442e377] + date: ['Fri, 24 Aug 2018 06:41:54 GMT'] + request-id: [1d22af66-6270-4495-a8d6-0281c395f50b] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1436,22 +1383,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:18:28 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:42:04 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:42:02.5056729Z\",\"lastBootTime\":\"2018-08-24T06:41:53.3126009Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:18:28 GMT'] - request-id: [8819c99d-a7a9-4cdd-8e36-bcf54bd0a8be] + date: ['Fri, 24 Aug 2018 06:42:04 GMT'] + request-id: [1afde3cc-08cc-4686-9c7e-7e513550ebf5] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1463,103 +1409,48 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:18:38 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:42:05 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:16:57.86036Z\",\"lastBootTime\":\"2018-03-13T06:18:34.5667116Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t063217z\",\"url\":\"https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T06:42:02.5056729Z\",\"lastBootTime\":\"2018-08-24T06:41:53.3126009Z\",\"allocationTime\":\"2018-08-24T06:32:17.5155687Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t063217z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:18:39 GMT'] - request-id: [7ff00011-adef-498c-89bd-070ecc9c5644] + date: ['Fri, 24 Aug 2018 06:42:06 GMT'] + request-id: [31ced11c-3044-42b9-9a9f-703eee354b8e] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:18:49 GMT'] - method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:18:44.3818137Z\",\"lastBootTime\":\"2018-03-13T06:18:34.5667116Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true\r\n - \ }\r\n ]\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:18:50 GMT'] - request-id: [d933ca50-930c-4db5-8a05-04146b9b2f60] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:18:50 GMT'] - method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch3c670ff0.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t060857z\",\"url\":\"https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:18:44.3818137Z\",\"lastBootTime\":\"2018-03-13T06:18:34.5667116Z\",\"allocationTime\":\"2018-03-13T06:08:57.762527Z\",\"ipAddress\":\"10.72.24.177\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t060857z\",\"vmSize\":\"small\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true\r\n - \ }\r\n ]\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:18:50 GMT'] - request-id: [cbcd50a9-d1f5-48d0-a990-f06af1ae31b8] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"password": "kt#_gahr!@aGERDXA", "isAdmin": false, "name": "BatchPythonSDKUser"}' + body: '{"isAdmin": false, "password": "kt#_gahr!@aGERDXA", "name": "BatchPythonSDKUser"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['81'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:18:50 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:42:06 GMT'] method: POST - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z/users?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z/users?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z/users/BatchPythonSDKUser'] + dataserviceid: ['https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z/users/BatchPythonSDKUser'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:19:00 GMT'] - location: ['https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z/users/BatchPythonSDKUser'] - request-id: [606c85a5-5cab-4516-a410-405225a00589] + date: ['Fri, 24 Aug 2018 06:42:18 GMT'] + location: ['https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z/users/BatchPythonSDKUser'] + request-id: [0eecc53f-6ba9-46ac-95d4-10cdc2b60273] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1573,19 +1464,19 @@ interactions: Connection: [keep-alive] Content-Length: ['36'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:19:00 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:42:18 GMT'] method: PUT - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z/users/BatchPythonSDKUser?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z/users/BatchPythonSDKUser?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z/users/BatchPythonSDKUser'] + dataserviceid: ['https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z/users/BatchPythonSDKUser'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:19:01 GMT'] - request-id: [d5bb8d4b-a33d-4164-8c36-ff9cbcdede5f] + date: ['Fri, 24 Aug 2018 06:42:19 GMT'] + request-id: [4dafbb16-2798-49cd-b1ea-2cd989d01834] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1597,20 +1488,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:19:01 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:42:20 GMT'] method: GET - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z/rdp?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z/rdp?api-version=2018-08-01.7.0 response: - body: {string: "full address:s:52.161.153.70\r\nLoadBalanceInfo:s:Cookie: mstshash=TVM#TVM_IN_0"} + body: {string: "full address:s:104.211.59.195\r\nLoadBalanceInfo:s:Cookie: mstshash=TVM#TVM_IN_0"} headers: content-type: [application/octet-stream] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:19:01 GMT'] - request-id: [79522e94-105a-435d-81aa-e5fb3f7394a4] + date: ['Fri, 24 Aug 2018 06:42:20 GMT'] + request-id: [97699840-76b3-43cd-821d-491464d621e8] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -1623,19 +1513,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:19:01 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:42:21 GMT'] method: DELETE - uri: https://batch3c670ff0.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-3840119875_1-20180313t060857z/users/BatchPythonSDKUser?api-version=2018-03-01.6.1 + uri: https://batch3c670ff0.eastus.batch.azure.com/pools/test_batch_test_batch_compute_node_user3c670ff0/nodes/tvm-587366007_1-20180824t063217z/users/BatchPythonSDKUser?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:19:23 GMT'] - request-id: [ea322cce-dbf0-4acd-bd4d-70530aad0c54] + date: ['Fri, 24 Aug 2018 06:42:25 GMT'] + request-id: [eb2b8926-3cc3-4656-8a6e-4ecd5eda43d5] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_compute_nodes.yaml b/azure-batch/tests/recordings/test_batch.test_batch_compute_nodes.yaml index 89a94d6d9079..33ac3f38472e 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_compute_nodes.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_compute_nodes.yaml @@ -5,25 +5,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:57:23 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:36:48 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.7701714Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-3687402588_2-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.771123Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_2-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.8245617Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:57:24 GMT'] - request-id: [7fe13490-43d4-47c2-bae9-367c19e55579] + date: ['Fri, 24 Aug 2018 20:36:49 GMT'] + request-id: [697464fe-73e4-457f-a687-4331fa7e2a89] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -35,25 +34,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:57:34 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:36:59 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.7701714Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-3687402588_2-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.771123Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_2-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.8245617Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:57:34 GMT'] - request-id: [2c9787d7-20ab-474e-a991-e84342d8a23b] + date: ['Fri, 24 Aug 2018 20:37:00 GMT'] + request-id: [cde39549-522a-4e40-8b2b-91220fc71b4b] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -65,25 +63,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:57:44 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:37:10 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.7701714Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-3687402588_2-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.771123Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_2-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.8245617Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:57:45 GMT'] - request-id: [8ba44bda-2b52-4782-ad0a-ca964da3b6fe] + date: ['Fri, 24 Aug 2018 20:37:10 GMT'] + request-id: [6964e4a7-7fa6-40c9-afb8-571f50f38bcd] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -95,25 +92,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:57:55 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:37:21 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.7701714Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-3687402588_2-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.771123Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_2-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.8245617Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:57:56 GMT'] - request-id: [15bb9811-ca2b-4599-a149-2c108b76bd20] + date: ['Fri, 24 Aug 2018 20:37:21 GMT'] + request-id: [04e7b69f-6f8d-4e3b-beb7-962917621afb] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -125,25 +121,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:06 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:37:32 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.7701714Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-3687402588_2-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.771123Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_2-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.8245617Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:06 GMT'] - request-id: [0f5b3c48-2f79-4981-89ee-38677919d5fb] + date: ['Fri, 24 Aug 2018 20:37:32 GMT'] + request-id: [c515c3e8-8141-48a8-9dfc-2589a4787d88] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -155,25 +150,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:17 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:37:42 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.7701714Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-3687402588_2-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.771123Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_2-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:37:43.010896Z\",\"lastBootTime\":\"2018-08-24T20:37:42.4584Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n + \ }\r\n ]\r\n },\"nodeAgentInfo\":{\r\n \"lastUpdateTime\":\"2018-08-24T20:37:42.4584Z\",\"version\":\"1.3.0.8\"\r\n + \ }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:16 GMT'] - request-id: [9d70ee6e-df48-459f-bfbb-10087c6a80c9] + date: ['Fri, 24 Aug 2018 20:37:43 GMT'] + request-id: [8c751ae4-c1bc-4ea7-8dc0-7b5541b99ed8] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -185,25 +180,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:27 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:37:53 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.7701714Z\",\"lastBootTime\":\"2018-03-13T19:58:27.992833Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-3687402588_2-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:57:12.771123Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_2-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:37:43.010896Z\",\"lastBootTime\":\"2018-08-24T20:37:42.4584Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n + \ }\r\n ]\r\n },\"nodeAgentInfo\":{\r\n \"lastUpdateTime\":\"2018-08-24T20:37:42.4584Z\",\"version\":\"1.3.0.8\"\r\n + \ }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:28 GMT'] - request-id: [0e83ebe7-4b81-4a26-b0c3-595e31eda651] + date: ['Fri, 24 Aug 2018 20:37:55 GMT'] + request-id: [d0aebf51-0265-4a28-b8eb-1c671df3961b] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -215,25 +210,55 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:38 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:38:05 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:58:28.049633Z\",\"lastBootTime\":\"2018-03-13T19:58:27.992833Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-3687402588_2-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:58:29.187862Z\",\"lastBootTime\":\"2018-03-13T19:58:29.131276Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_2-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:37:43.010896Z\",\"lastBootTime\":\"2018-08-24T20:37:42.4584Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n + \ }\r\n ]\r\n },\"nodeAgentInfo\":{\r\n \"lastUpdateTime\":\"2018-08-24T20:37:42.4584Z\",\"version\":\"1.3.0.8\"\r\n + \ }\r\n }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Fri, 24 Aug 2018 20:38:05 GMT'] + request-id: [473063d4-f31c-4a40-9390-28647e37e9c1] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Fri, 24 Aug 2018 20:38:15 GMT'] + method: GET + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:36:42.7925816Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:37:43.010896Z\",\"lastBootTime\":\"2018-08-24T20:37:42.4584Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n + \ }\r\n ]\r\n },\"nodeAgentInfo\":{\r\n \"lastUpdateTime\":\"2018-08-24T20:37:42.4584Z\",\"version\":\"1.3.0.8\"\r\n + \ }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:39 GMT'] - request-id: [094168d0-103a-4ef8-a8a9-85995ab8ac98] + date: ['Fri, 24 Aug 2018 20:38:16 GMT'] + request-id: [af795988-54c8-4494-a83a-f992ec13cdc6] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -245,49 +270,79 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:39 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:38:26 GMT'] method: GET - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#nodes/@Element\",\"id\":\"tvm-3687402588_1-20180313t195712z\",\"url\":\"https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T19:58:28.049633Z\",\"lastBootTime\":\"2018-03-13T19:58:27.992833Z\",\"allocationTime\":\"2018-03-13T19:57:12.7041532Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t195712z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.157.19\",\"publicFQDN\":\"dnsd677415d-f363-4bfc-9ff4-d19ca820f478-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:38:20.36863Z\",\"lastBootTime\":\"2018-08-24T20:38:19.510392Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n },\"nodeAgentInfo\":{\r\n \"lastUpdateTime\":\"2018-08-24T20:38:19.510392Z\",\"version\":\"1.3.0.8\"\r\n + \ }\r\n },{\r\n \"id\":\"tvm-587366007_2-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:37:43.010896Z\",\"lastBootTime\":\"2018-08-24T20:37:42.4584Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.5\",\"affinityId\":\"TVM:tvm-587366007_2-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.1\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50001,\"backendPort\":22\r\n + \ }\r\n ]\r\n },\"nodeAgentInfo\":{\r\n \"lastUpdateTime\":\"2018-08-24T20:37:42.4584Z\",\"version\":\"1.3.0.8\"\r\n + \ }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:38 GMT'] - request-id: [50d91e4d-dbb7-4e33-bc04-cad9e759358d] + date: ['Fri, 24 Aug 2018 20:38:27 GMT'] + request-id: [39bd28fe-c0d0-42e3-a231-080383e7fc9f] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"startTime": "2018-03-13T19:52:40.029228999999999998Z", "containerUrl": - "https://test.blob.core.windows.net:443/test-container"}' + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Fri, 24 Aug 2018 20:38:27 GMT'] + method: GET + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#nodes/@Element\",\"id\":\"tvm-587366007_1-20180824t203642z\",\"url\":\"https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:38:20.36863Z\",\"lastBootTime\":\"2018-08-24T20:38:19.510392Z\",\"allocationTime\":\"2018-08-24T20:36:42.7275598Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-587366007_1-20180824t203642z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.66.81\",\"publicFQDN\":\"dns58ffcdff-b942-431f-83bf-506bcaf42653-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n },\"nodeAgentInfo\":{\r\n \"lastUpdateTime\":\"2018-08-24T20:38:19.510392Z\",\"version\":\"1.3.0.8\"\r\n + \ }\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Fri, 24 Aug 2018 20:38:28 GMT'] + request-id: [ac00ecbe-3672-49c1-a2db-39ebf15cc8df] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"startTime": "2018-08-24T20:32:28.996988Z", "containerUrl": "https://test.blob.core.windows.net:443/test-container"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['129'] + Content-Length: ['117'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:40 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:38:28 GMT'] method: POST - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z/uploadbatchservicelogs?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z/uploadbatchservicelogs?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.westcentralus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.UploadBatchServiceLogsResult\",\"virtualDirectoryName\":\"batchff3f0e45-22F49F5995C85188/test_batch_test_batch_compute_nodesff3f0e45/tvm-3687402588_1-20180313t195712z/c9a5c537-2e1a-4051-a497-2d7022dcfaff\",\"numberOfFilesUploaded\":4\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.UploadBatchServiceLogsResult\",\"virtualDirectoryName\":\"batchff3f0e45-22F41E74EC4D1BE7/test_batch_test_batch_compute_nodesff3f0e45/tvm-587366007_1-20180824t203642z/aa3e88d9-2c2d-4240-8de0-1aa7207f6db2\",\"numberOfFilesUploaded\":4\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:40 GMT'] - request-id: [c9a5c537-2e1a-4051-a497-2d7022dcfaff] + date: ['Fri, 24 Aug 2018 20:38:30 GMT'] + request-id: [aa3e88d9-2c2d-4240-8de0-1aa7207f6db2] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -301,19 +356,19 @@ interactions: Connection: [keep-alive] Content-Length: ['0'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:40 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:38:30 GMT'] method: POST - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z/disablescheduling?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z/disablescheduling?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z/disablescheduling'] + dataserviceid: ['https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z/disablescheduling'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:41 GMT'] - request-id: [1483b08b-e160-4cae-9faa-83f6eee05537] + date: ['Fri, 24 Aug 2018 20:38:31 GMT'] + request-id: [0a28f84e-119f-4d25-91cb-c91d240b16e2] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -326,20 +381,19 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:42 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:38:31 GMT'] method: POST - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z/enablescheduling?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z/enablescheduling?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z/enablescheduling'] + dataserviceid: ['https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z/enablescheduling'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:43 GMT'] - request-id: [51005c77-8e0a-4c3c-81b3-dbc36a9fbbf8] + date: ['Fri, 24 Aug 2018 20:38:32 GMT'] + request-id: [4e665bd2-94ef-4c04-b9b8-09a31acac37c] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -353,19 +407,19 @@ interactions: Connection: [keep-alive] Content-Length: ['33'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:43 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:38:32 GMT'] method: POST - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z/reboot?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z/reboot?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_1-20180313t195712z/reboot'] + dataserviceid: ['https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_1-20180824t203642z/reboot'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:43 GMT'] - request-id: [8ce2e183-191e-46e5-b8a4-800dd0ef7f30] + date: ['Fri, 24 Aug 2018 20:38:33 GMT'] + request-id: [7fb087b7-120f-44ab-b9dc-ad6fb7423185] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -379,47 +433,52 @@ interactions: Connection: [keep-alive] Content-Length: ['34'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:43 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:38:33 GMT'] method: POST - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z/reimage?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-587366007_2-20180824t203642z/reimage?api-version=2018-08-01.7.0 response: - body: {string: ''} + body: {string: "{\r\n \"odata.metadata\":\"https://batchff3f0e45.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"OperationNotValidOnNode\",\"message\":{\r\n + \ \"lang\":\"en-US\",\"value\":\"The specified operation is not valid on + the node.\\nRequestId:bb338c4e-2b3a-4ab0-ae2a-27951ded8c86\\nTime:2018-08-24T20:38:34.2377855Z\"\r\n + \ },\"values\":[\r\n {\r\n \"key\":\"Reason\",\"value\":\"Operation + reimage can be invoked only on pools created with cloudServiceConfiguration + \"\r\n }\r\n ]\r\n}"} headers: - dataserviceid: ['https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/nodes/tvm-3687402588_2-20180313t195712z/reimage'] + content-length: ['509'] + content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:43 GMT'] - request-id: [8abc1349-8709-42ae-a183-d6edbe9af24f] + date: ['Fri, 24 Aug 2018 20:38:34 GMT'] + request-id: [bb338c4e-2b3a-4ab0-ae2a-27951ded8c86] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} + status: {code: 409, message: The specified operation is not valid on the node.} - request: - body: '{"nodeList": ["tvm-3687402588_1-20180313t195712z", "tvm-3687402588_2-20180313t195712z"]}' + body: '{"nodeList": ["tvm-587366007_1-20180824t203642z", "tvm-587366007_2-20180824t203642z"]}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['88'] + Content-Length: ['86'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:58:44 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:38:34 GMT'] method: POST - uri: https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/removenodes?api-version=2018-03-01.6.1 + uri: https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/removenodes?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchff3f0e45.westcentralus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/removenodes'] + dataserviceid: ['https://batchff3f0e45.eastus.batch.azure.com/pools/test_batch_test_batch_compute_nodesff3f0e45/removenodes'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:58:44 GMT'] - etag: ['0x8D5891CD3BA2CE3'] - last-modified: ['Tue, 13 Mar 2018 19:58:44 GMT'] - request-id: [d0324605-557a-47ee-8494-ca262fce5914] + date: ['Fri, 24 Aug 2018 20:38:35 GMT'] + etag: ['0x8D60A0190476D25'] + last-modified: ['Fri, 24 Aug 2018 20:38:35 GMT'] + request-id: [95fe9933-c978-4b24-9351-11267efac1b7] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_create_pools.yaml b/azure-batch/tests/recordings/test_batch.test_batch_create_pools.yaml index 5cba3b68f2ce..2a83749686ac 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_create_pools.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_create_pools.yaml @@ -5,32 +5,36 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:18 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:42 GMT'] method: GET - uri: https://batchf0260dd0.westcentralus.batch.azure.com/nodeagentskus?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/nodeagentskus?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#nodeagentskus\",\"value\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#nodeagentskus\",\"value\":[\r\n \ {\r\n \"id\":\"batch.node.centos 7\",\"verifiedImageReferences\":[\r\n - \ {\r\n \"publisher\":\"OpenLogic\",\"offer\":\"CentOS\",\"sku\":\"7.4\",\"version\":\"latest\"\r\n + \ {\r\n \"publisher\":\"OpenLogic\",\"offer\":\"CentOS\",\"sku\":\"7.5\",\"version\":\"latest\"\r\n + \ },{\r\n \"publisher\":\"OpenLogic\",\"offer\":\"CentOS-HPC\",\"sku\":\"7.4\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"OpenLogic\",\"offer\":\"CentOS-HPC\",\"sku\":\"7.3\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"OpenLogic\",\"offer\":\"CentOS-HPC\",\"sku\":\"7.1\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"Oracle\",\"offer\":\"Oracle-Linux\",\"sku\":\"7.4\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"microsoft-ads\",\"offer\":\"linux-data-science-vm\",\"sku\":\"linuxdsvm\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"batch\",\"offer\":\"rendering-centos73\",\"sku\":\"rendering\",\"version\":\"latest\"\r\n + \ },{\r\n \"publisher\":\"microsoft-azure-batch\",\"offer\":\"centos-container\",\"sku\":\"7-5\",\"version\":\"latest\"\r\n + \ },{\r\n \"publisher\":\"microsoft-azure-batch\",\"offer\":\"centos-container-rdma\",\"sku\":\"7-4\",\"version\":\"latest\"\r\n \ }\r\n ],\"osType\":\"linux\"\r\n },{\r\n \"id\":\"batch.node.debian 8\",\"verifiedImageReferences\":[\r\n {\r\n \"publisher\":\"Credativ\",\"offer\":\"Debian\",\"sku\":\"8\",\"version\":\"latest\"\r\n \ }\r\n ],\"osType\":\"linux\"\r\n },{\r\n \"id\":\"batch.node.debian 9\",\"verifiedImageReferences\":[\r\n {\r\n \"publisher\":\"Credativ\",\"offer\":\"Debian\",\"sku\":\"9\",\"version\":\"latest\"\r\n - \ }\r\n ],\"osType\":\"linux\"\r\n },{\r\n \"id\":\"batch.node.opensuse - 42.1\",\"verifiedImageReferences\":[\r\n {\r\n \"publisher\":\"SUSE\",\"offer\":\"SLES\",\"sku\":\"12-SP2\",\"version\":\"latest\"\r\n \ }\r\n ],\"osType\":\"linux\"\r\n },{\r\n \"id\":\"batch.node.ubuntu 14.04\",\"verifiedImageReferences\":[\r\n {\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"14.04.5-LTS\",\"version\":\"latest\"\r\n \ }\r\n ],\"osType\":\"linux\"\r\n },{\r\n \"id\":\"batch.node.ubuntu 16.04\",\"verifiedImageReferences\":[\r\n {\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n + \ },{\r\n \"publisher\":\"microsoft-azure-batch\",\"offer\":\"ubuntu-server-container\",\"sku\":\"16-04-lts\",\"version\":\"latest\"\r\n + \ },{\r\n \"publisher\":\"microsoft-azure-batch\",\"offer\":\"ubuntu-server-container-rdma\",\"sku\":\"16-04-lts\",\"version\":\"latest\"\r\n + \ }\r\n ],\"osType\":\"linux\"\r\n },{\r\n \"id\":\"batch.node.ubuntu + 18.04\",\"verifiedImageReferences\":[\r\n {\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"18.04-LTS\",\"version\":\"latest\"\r\n \ }\r\n ],\"osType\":\"linux\"\r\n },{\r\n \"id\":\"batch.node.windows amd64\",\"verifiedImageReferences\":[\r\n {\r\n \"publisher\":\"MicrosoftWindowsServer\",\"offer\":\"WindowsServer\",\"sku\":\"2008-R2-SP1\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"MicrosoftWindowsServer\",\"offer\":\"WindowsServer\",\"sku\":\"2008-R2-SP1-smalldisk\",\"version\":\"latest\"\r\n @@ -41,49 +45,49 @@ interactions: \ },{\r\n \"publisher\":\"MicrosoftWindowsServer\",\"offer\":\"WindowsServer\",\"sku\":\"2016-Datacenter\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"MicrosoftWindowsServer\",\"offer\":\"WindowsServer\",\"sku\":\"2016-Datacenter-smalldisk\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"MicrosoftWindowsServer\",\"offer\":\"WindowsServer\",\"sku\":\"2016-Datacenter-with-Containers\",\"version\":\"latest\"\r\n - \ },{\r\n \"publisher\":\"microsoft-ads\",\"offer\":\"standard-data-science-vm\",\"sku\":\"standard-data-science-vm\",\"version\":\"latest\"\r\n + \ },{\r\n \"publisher\":\"microsoft-dsvm\",\"offer\":\"dsvm-windows\",\"sku\":\"server-2016\",\"version\":\"latest\"\r\n \ },{\r\n \"publisher\":\"batch\",\"offer\":\"rendering-windows2016\",\"sku\":\"rendering\",\"version\":\"latest\"\r\n \ }\r\n ],\"osType\":\"windows\"\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:18 GMT'] - request-id: [94563132-2e05-44bb-a3b8-6c19e16e5e6f] + date: ['Fri, 24 Aug 2018 06:58:43 GMT'] + request-id: [8dbeae8a-9a0c-464d-b66b-9a89342f1ca2] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"vmSize": "Standard_A1", "taskSchedulingPolicy": {"nodeFillType": "pack"}, - "userAccounts": [{"password": "kt#_gahr!@aGERDXA", "name": "test-user-1"}, {"password": - "kt#_gahr!@aGERDXA", "elevationLevel": "admin", "name": "test-user-2"}], "id": - "batch_iaas_f0260dd0", "virtualMachineConfiguration": {"nodeAgentSKUId": "batch.node.windows - amd64", "imageReference": {"publisher": "MicrosoftWindowsServer", "sku": "2016-Datacenter-smalldisk", - "offer": "WindowsServer"}, "windowsConfiguration": {"enableAutomaticUpdates": - true}}}' + body: '{"virtualMachineConfiguration": {"windowsConfiguration": {"enableAutomaticUpdates": + true}, "nodeAgentSKUId": "batch.node.windows amd64", "imageReference": {"publisher": + "MicrosoftWindowsServer", "sku": "2016-Datacenter-smalldisk", "offer": "WindowsServer"}}, + "id": "batch_iaas_f0260dd0", "vmSize": "Standard_A1", "userAccounts": [{"password": + "kt#_gahr!@aGERDXA", "name": "test-user-1"}, {"elevationLevel": "admin", "password": + "kt#_gahr!@aGERDXA", "name": "test-user-2"}], "taskSchedulingPolicy": {"nodeFillType": + "pack"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['523'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:18 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:43 GMT'] method: POST - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_iaas_f0260dd0'] + dataserviceid: ['https://batchf0260dd0.eastus.batch.azure.com/pools/batch_iaas_f0260dd0'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:19 GMT'] - etag: ['0x8D588AE20753E2B'] - last-modified: ['Tue, 13 Mar 2018 06:46:19 GMT'] - location: ['https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_iaas_f0260dd0'] - request-id: [5a21c9e7-71d1-41d4-b37a-0a9117630892] + date: ['Fri, 24 Aug 2018 06:58:44 GMT'] + etag: ['0x8D6098F0876C250'] + last-modified: ['Fri, 24 Aug 2018 06:58:44 GMT'] + location: ['https://batchf0260dd0.eastus.batch.azure.com/pools/batch_iaas_f0260dd0'] + request-id: [d9d38088-6fd9-4ffd-a0fc-a4ab141c5e29] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -95,130 +99,130 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:19 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:44 GMT'] method: GET - uri: https://batchf0260dd0.westcentralus.batch.azure.com/nodecounts?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/nodecounts?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#poolnodecounts\",\"value\":[\r\n - \ {\r\n \"poolId\":\"batch_iaas_f0260dd0\",\"dedicated\":{\r\n \"creating\":0,\"idle\":0,\"offline\":0,\"preempted\":0,\"rebooting\":0,\"reimaging\":0,\"running\":0,\"starting\":0,\"startTaskFailed\":0,\"unusable\":0,\"unknown\":0,\"waitingForStartTask\":0,\"leavingPool\":0,\"total\":0\r\n - \ },\"lowPriority\":{\r\n \"creating\":0,\"idle\":0,\"offline\":0,\"preempted\":0,\"rebooting\":0,\"reimaging\":0,\"running\":0,\"starting\":0,\"startTaskFailed\":0,\"unusable\":0,\"unknown\":0,\"waitingForStartTask\":0,\"leavingPool\":0,\"total\":0\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#poolnodecounts\",\"value\":[\r\n + \ {\r\n \"poolId\":\"batch_iaas_f0260dd0\",\"dedicated\":{\r\n \"creating\":0,\"idle\":0,\"leavingPool\":0,\"offline\":0,\"preempted\":0,\"rebooting\":0,\"reimaging\":0,\"running\":0,\"starting\":0,\"startTaskFailed\":0,\"unusable\":0,\"unknown\":0,\"waitingForStartTask\":0,\"total\":0\r\n + \ },\"lowPriority\":{\r\n \"creating\":0,\"idle\":0,\"leavingPool\":0,\"offline\":0,\"preempted\":0,\"rebooting\":0,\"reimaging\":0,\"running\":0,\"starting\":0,\"startTaskFailed\":0,\"unusable\":0,\"unknown\":0,\"waitingForStartTask\":0,\"total\":0\r\n \ }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:19 GMT'] - request-id: [73f9b113-1ae8-4d3d-af9f-ce3f6cccca78] + date: ['Fri, 24 Aug 2018 06:58:45 GMT'] + request-id: [6a7acf41-f197-4819-867c-ef280ccf6a7b] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: 'b''b\''{"vmSize": "Standard_A1", "id": "batch_network_f0260dd0", "networkConfiguration": - {"subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}, - "virtualMachineConfiguration": {"imageReference": {"publisher": "Canonical", - "sku": "16.04-LTS", "offer": "UbuntuServer"}, "nodeAgentSKUId": "batch.node.ubuntu - 16.04"}}\''''' + body: 'b''b\''b\\\''{"virtualMachineConfiguration": {"nodeAgentSKUId": "batch.node.ubuntu + 16.04", "imageReference": {"publisher": "Canonical", "sku": "16.04-LTS", "offer": + "UbuntuServer"}}, "id": "batch_network_f0260dd0", "networkConfiguration": {"subnetId": + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}, + "vmSize": "Standard_A1"}\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['405'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:19 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:45 GMT'] return-client-request-id: ['false'] method: POST - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?timeout=45&api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0&timeout=45 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"InvalidPropertyValue\",\"message\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"InvalidPropertyValue\",\"message\":{\r\n \ \"lang\":\"en-US\",\"value\":\"The value provided for one of the properties - in the request body is invalid.\\nRequestId:c959587f-498e-4fab-ad84-ab922a7ab88f\\nTime:2018-03-13T06:46:20.4140876Z\"\r\n + in the request body is invalid.\\nRequestId:77328016-7531-42ad-8238-f4d3f1ca7a58\\nTime:2018-08-24T06:58:46.5432738Z\"\r\n \ },\"values\":[\r\n {\r\n \"key\":\"PropertyName\",\"value\":\"subnetId\"\r\n \ },{\r\n \"key\":\"PropertyValue\",\"value\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1\"\r\n \ },{\r\n \"key\":\"Reason\",\"value\":\"The specified subnetId is in a different subscription and cannot be used with the current Batch account in subscription 00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}"} headers: - content-length: ['852'] + content-length: ['845'] content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:20 GMT'] - request-id: [c959587f-498e-4fab-ad84-ab922a7ab88f] + date: ['Fri, 24 Aug 2018 06:58:45 GMT'] + request-id: [77328016-7531-42ad-8238-f4d3f1ca7a58] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] status: {code: 400, message: The value provided for one of the properties in the request body is invalid.} - request: - body: 'b''b\''{"vmSize": "Standard_A1", "id": "batch_image_f0260dd0", "virtualMachineConfiguration": - {"imageReference": {"virtualMachineImageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test/providers/Microsoft.Compute/images/FakeImage"}, - "nodeAgentSKUId": "batch.node.ubuntu 16.04"}}\''''' + body: 'b''b\''b\\\''{"virtualMachineConfiguration": {"nodeAgentSKUId": "batch.node.ubuntu + 16.04", "imageReference": {"virtualMachineImageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test/providers/Microsoft.Compute/images/FakeImage"}}, + "id": "batch_image_f0260dd0", "vmSize": "Standard_A1"}\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['298'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:20 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:46 GMT'] return-client-request-id: ['false'] method: POST - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?timeout=45&api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0&timeout=45 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"InvalidPropertyValue\",\"message\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"InvalidPropertyValue\",\"message\":{\r\n \ \"lang\":\"en-US\",\"value\":\"The value provided for one of the properties - in the request body is invalid.\\nRequestId:47ada245-dcf9-41dd-b5b4-de1785491c0a\\nTime:2018-03-13T06:46:20.9174657Z\"\r\n + in the request body is invalid.\\nRequestId:21fdc10c-a9ba-4b36-a2f5-774096edd858\\nTime:2018-08-24T06:58:47.4802887Z\"\r\n \ },\"values\":[\r\n {\r\n \"key\":\"PropertyName\",\"value\":\"virtualMachineImageId\"\r\n \ },{\r\n \"key\":\"PropertyValue\",\"value\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test/providers/Microsoft.Compute/images/FakeImage\"\r\n \ },{\r\n \"key\":\"Reason\",\"value\":\"The specified virtualMachineImageId is in a different subscription and cannot be used with the current Batch account in subscription 00000000-0000-0000-0000-000000000000\"\r\n }\r\n ]\r\n}"} headers: - content-length: ['857'] + content-length: ['850'] content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:20 GMT'] - request-id: [47ada245-dcf9-41dd-b5b4-de1785491c0a] + date: ['Fri, 24 Aug 2018 06:58:47 GMT'] + request-id: [21fdc10c-a9ba-4b36-a2f5-774096edd858] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] status: {code: 400, message: The value provided for one of the properties in the request body is invalid.} - request: - body: '{"vmSize": "Standard_A1", "id": "batch_osdisk_f0260dd0", "virtualMachineConfiguration": - {"imageReference": {"publisher": "Canonical", "sku": "16.04-LTS", "offer": "UbuntuServer"}, - "osDisk": {"caching": "readwrite"}, "nodeAgentSKUId": "batch.node.ubuntu 16.04"}}' + body: '{"virtualMachineConfiguration": {"nodeAgentSKUId": "batch.node.ubuntu 16.04", + "osDisk": {"caching": "readwrite"}, "imageReference": {"publisher": "Canonical", + "sku": "16.04-LTS", "offer": "UbuntuServer"}}, "id": "batch_osdisk_f0260dd0", + "vmSize": "Standard_A1"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['261'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:21 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:47 GMT'] method: POST - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_osdisk_f0260dd0'] + dataserviceid: ['https://batchf0260dd0.eastus.batch.azure.com/pools/batch_osdisk_f0260dd0'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:21 GMT'] - etag: ['0x8D588AE21CACE33'] - last-modified: ['Tue, 13 Mar 2018 06:46:21 GMT'] - location: ['https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_osdisk_f0260dd0'] - request-id: [710f20b8-7d06-49ea-ac88-b38082e5c5e4] + date: ['Fri, 24 Aug 2018 06:58:48 GMT'] + etag: ['0x8D6098F0AB48090'] + last-modified: ['Fri, 24 Aug 2018 06:58:48 GMT'] + location: ['https://batchf0260dd0.eastus.batch.azure.com/pools/batch_osdisk_f0260dd0'] + request-id: [34a7e8ea-4ce0-4640-a9ae-4cae78fa2348] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -230,15 +234,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:21 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:48 GMT'] method: GET - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_osdisk_f0260dd0?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools/batch_osdisk_f0260dd0?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_osdisk_f0260dd0\",\"url\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_osdisk_f0260dd0\",\"eTag\":\"0x8D588AE21CACE33\",\"lastModified\":\"2018-03-13T06:46:21.5419443Z\",\"creationTime\":\"2018-03-13T06:46:21.5419443Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:46:21.5419443Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T06:46:22.0059881Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_osdisk_f0260dd0\",\"url\":\"https://batchf0260dd0.eastus.batch.azure.com/pools/batch_osdisk_f0260dd0\",\"eTag\":\"0x8D6098F0AB48090\",\"lastModified\":\"2018-08-24T06:58:48.4078736Z\",\"creationTime\":\"2018-08-24T06:58:48.4078736Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:58:48.4078736Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T06:58:48.8058971Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"osDisk\":{\r\n \"caching\":\"ReadWrite\"\r\n },\"nodeAgentSKUId\":\"batch.node.ubuntu @@ -246,42 +249,42 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:22 GMT'] - etag: ['0x8D588AE21CACE33'] - last-modified: ['Tue, 13 Mar 2018 06:46:21 GMT'] - request-id: [6505dcbd-08c4-489e-ae71-816f217f1aec] + date: ['Fri, 24 Aug 2018 06:58:49 GMT'] + etag: ['0x8D6098F0AB48090'] + last-modified: ['Fri, 24 Aug 2018 06:58:48 GMT'] + request-id: [2240ec32-4502-4d42-b5a3-a4ff36320ea7] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"vmSize": "Standard_A1", "id": "batch_disk_f0260dd0", "virtualMachineConfiguration": - {"imageReference": {"publisher": "Canonical", "sku": "16.04-LTS", "offer": "UbuntuServer"}, - "dataDisks": [{"diskSizeGB": 50, "lun": 1}], "nodeAgentSKUId": "batch.node.ubuntu - 16.04"}}' + body: '{"virtualMachineConfiguration": {"nodeAgentSKUId": "batch.node.ubuntu 16.04", + "dataDisks": [{"lun": 1, "diskSizeGB": 50}], "imageReference": {"publisher": + "Canonical", "sku": "16.04-LTS", "offer": "UbuntuServer"}}, "id": "batch_disk_f0260dd0", + "vmSize": "Standard_A1"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['268'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:22 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:49 GMT'] method: POST - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_disk_f0260dd0'] + dataserviceid: ['https://batchf0260dd0.eastus.batch.azure.com/pools/batch_disk_f0260dd0'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:22 GMT'] - etag: ['0x8D588AE227482EB'] - last-modified: ['Tue, 13 Mar 2018 06:46:22 GMT'] - location: ['https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_disk_f0260dd0'] - request-id: [6f432b47-278f-4be4-9dd1-453327c11c1b] + date: ['Fri, 24 Aug 2018 06:58:50 GMT'] + etag: ['0x8D6098F0BCD43C3'] + last-modified: ['Fri, 24 Aug 2018 06:58:50 GMT'] + location: ['https://batchf0260dd0.eastus.batch.azure.com/pools/batch_disk_f0260dd0'] + request-id: [8205d82b-ba94-45d7-83e0-079db095264c] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -293,15 +296,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:22 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:50 GMT'] method: GET - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_disk_f0260dd0?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools/batch_disk_f0260dd0?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_disk_f0260dd0\",\"url\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_disk_f0260dd0\",\"eTag\":\"0x8D588AE227482EB\",\"lastModified\":\"2018-03-13T06:46:22.6541291Z\",\"creationTime\":\"2018-03-13T06:46:22.6541291Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:46:22.6541291Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T06:46:22.9561011Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_disk_f0260dd0\",\"url\":\"https://batchf0260dd0.eastus.batch.azure.com/pools/batch_disk_f0260dd0\",\"eTag\":\"0x8D6098F0BCD43C3\",\"lastModified\":\"2018-08-24T06:58:50.2478787Z\",\"creationTime\":\"2018-08-24T06:58:50.2478787Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:58:50.2478787Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T06:58:50.6939495Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\",\"dataDisks\":[\r\n {\r\n @@ -310,42 +312,42 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:23 GMT'] - etag: ['0x8D588AE227482EB'] - last-modified: ['Tue, 13 Mar 2018 06:46:22 GMT'] - request-id: [dfa283af-a384-4986-a123-d1cff87c11a0] + date: ['Fri, 24 Aug 2018 06:58:50 GMT'] + etag: ['0x8D6098F0BCD43C3'] + last-modified: ['Fri, 24 Aug 2018 06:58:50 GMT'] + request-id: [98d8cc5c-3340-430a-b395-694321f47bbb] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"applicationLicenses": ["maya"], "vmSize": "Standard_A1", "id": "batch_app_f0260dd0", - "virtualMachineConfiguration": {"imageReference": {"publisher": "Canonical", - "sku": "16.04-LTS", "offer": "UbuntuServer"}, "dataDisks": [{"diskSizeGB": 50, - "lun": 1}], "nodeAgentSKUId": "batch.node.ubuntu 16.04"}}' + body: '{"virtualMachineConfiguration": {"nodeAgentSKUId": "batch.node.ubuntu 16.04", + "dataDisks": [{"lun": 1, "diskSizeGB": 50}], "imageReference": {"publisher": + "Canonical", "sku": "16.04-LTS", "offer": "UbuntuServer"}}, "id": "batch_app_f0260dd0", + "applicationLicenses": ["maya"], "vmSize": "Standard_A1"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['300'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:23 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:51 GMT'] method: POST - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_app_f0260dd0'] + dataserviceid: ['https://batchf0260dd0.eastus.batch.azure.com/pools/batch_app_f0260dd0'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:23 GMT'] - etag: ['0x8D588AE231E4E1B'] - last-modified: ['Tue, 13 Mar 2018 06:46:23 GMT'] - location: ['https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_app_f0260dd0'] - request-id: [864b9079-e0c3-4bb2-ada4-d743a9262530] + date: ['Fri, 24 Aug 2018 06:58:51 GMT'] + etag: ['0x8D6098F0D03B6F1'] + last-modified: ['Fri, 24 Aug 2018 06:58:52 GMT'] + location: ['https://batchf0260dd0.eastus.batch.azure.com/pools/batch_app_f0260dd0'] + request-id: [1a29f859-87e6-4f37-8a4d-df59d2e9e129] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -357,15 +359,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:23 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:52 GMT'] method: GET - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_app_f0260dd0?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools/batch_app_f0260dd0?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_app_f0260dd0\",\"url\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_app_f0260dd0\",\"eTag\":\"0x8D588AE231E4E1B\",\"lastModified\":\"2018-03-13T06:46:23.7668891Z\",\"creationTime\":\"2018-03-13T06:46:23.7668891Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:46:23.7668891Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T06:46:24.0968737Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_app_f0260dd0\",\"url\":\"https://batchf0260dd0.eastus.batch.azure.com/pools/batch_app_f0260dd0\",\"eTag\":\"0x8D6098F0D03B6F1\",\"lastModified\":\"2018-08-24T06:58:52.2824433Z\",\"creationTime\":\"2018-08-24T06:58:52.2824433Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:58:52.2824433Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T06:58:52.6834553Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\",\"dataDisks\":[\r\n {\r\n @@ -374,10 +375,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:24 GMT'] - etag: ['0x8D588AE231E4E1B'] - last-modified: ['Tue, 13 Mar 2018 06:46:23 GMT'] - request-id: [e67ee2a9-9794-47f4-9214-785bb55b75cf] + date: ['Fri, 24 Aug 2018 06:58:53 GMT'] + etag: ['0x8D6098F0D03B6F1'] + last-modified: ['Fri, 24 Aug 2018 06:58:52 GMT'] + request-id: [1890971c-ba0a-4710-8cf6-d3ea05e3ec7a] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -389,27 +390,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:24 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:53 GMT'] method: GET - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#pools\",\"value\":[\r\n - \ {\r\n \"id\":\"batch_app_f0260dd0\",\"url\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_app_f0260dd0\",\"eTag\":\"0x8D588AE231E4E1B\",\"lastModified\":\"2018-03-13T06:46:23.7668891Z\",\"creationTime\":\"2018-03-13T06:46:23.7668891Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:46:23.7668891Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T06:46:24.0968737Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#pools\",\"value\":[\r\n + \ {\r\n \"id\":\"batch_app_f0260dd0\",\"url\":\"https://batchf0260dd0.eastus.batch.azure.com/pools/batch_app_f0260dd0\",\"eTag\":\"0x8D6098F0D03B6F1\",\"lastModified\":\"2018-08-24T06:58:52.2824433Z\",\"creationTime\":\"2018-08-24T06:58:52.2824433Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:58:52.2824433Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T06:58:52.6834553Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\",\"dataDisks\":[\r\n \ {\r\n \"lun\":1,\"caching\":\"none\",\"diskSizeGB\":50,\"storageAccountType\":\"standard_lrs\"\r\n \ }\r\n ]\r\n },\"applicationLicenses\":[\r\n \"maya\"\r\n - \ ]\r\n },{\r\n \"id\":\"batch_disk_f0260dd0\",\"url\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_disk_f0260dd0\",\"eTag\":\"0x8D588AE227482EB\",\"lastModified\":\"2018-03-13T06:46:22.6541291Z\",\"creationTime\":\"2018-03-13T06:46:22.6541291Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:46:22.6541291Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T06:46:22.9561011Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + \ ]\r\n },{\r\n \"id\":\"batch_disk_f0260dd0\",\"url\":\"https://batchf0260dd0.eastus.batch.azure.com/pools/batch_disk_f0260dd0\",\"eTag\":\"0x8D6098F0BCD43C3\",\"lastModified\":\"2018-08-24T06:58:50.2478787Z\",\"creationTime\":\"2018-08-24T06:58:50.2478787Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:58:50.2478787Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T06:58:50.6939495Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\",\"dataDisks\":[\r\n \ {\r\n \"lun\":1,\"caching\":\"none\",\"diskSizeGB\":50,\"storageAccountType\":\"standard_lrs\"\r\n - \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"batch_iaas_f0260dd0\",\"url\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_iaas_f0260dd0\",\"eTag\":\"0x8D588AE20753E2B\",\"lastModified\":\"2018-03-13T06:46:19.3034795Z\",\"creationTime\":\"2018-03-13T06:46:19.3034795Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:46:19.3034795Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T06:46:19.3944805Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"userAccounts\":[\r\n + \ }\r\n ]\r\n }\r\n },{\r\n \"id\":\"batch_iaas_f0260dd0\",\"url\":\"https://batchf0260dd0.eastus.batch.azure.com/pools/batch_iaas_f0260dd0\",\"eTag\":\"0x8D6098F0876C250\",\"lastModified\":\"2018-08-24T06:58:44.6477904Z\",\"creationTime\":\"2018-08-24T06:58:44.6477904Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:58:44.6477904Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T06:58:44.7587826Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"userAccounts\":[\r\n \ {\r\n \"name\":\"test-user-1\",\"elevationLevel\":\"nonadmin\"\r\n \ },{\r\n \"name\":\"test-user-2\",\"elevationLevel\":\"admin\"\r\n \ }\r\n ],\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n @@ -417,7 +417,7 @@ interactions: \ \"imageReference\":{\r\n \"publisher\":\"MicrosoftWindowsServer\",\"offer\":\"WindowsServer\",\"sku\":\"2016-Datacenter-smalldisk\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.windows amd64\",\"windowsConfiguration\":{\r\n \ \"enableAutomaticUpdates\":true\r\n }\r\n }\r\n },{\r\n - \ \"id\":\"batch_osdisk_f0260dd0\",\"url\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_osdisk_f0260dd0\",\"eTag\":\"0x8D588AE21CACE33\",\"lastModified\":\"2018-03-13T06:46:21.5419443Z\",\"creationTime\":\"2018-03-13T06:46:21.5419443Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:46:21.5419443Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T06:46:22.0059881Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + \ \"id\":\"batch_osdisk_f0260dd0\",\"url\":\"https://batchf0260dd0.eastus.batch.azure.com/pools/batch_osdisk_f0260dd0\",\"eTag\":\"0x8D6098F0AB48090\",\"lastModified\":\"2018-08-24T06:58:48.4078736Z\",\"creationTime\":\"2018-08-24T06:58:48.4078736Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:58:48.4078736Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T06:58:48.8058971Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"osDisk\":{\r\n \"caching\":\"ReadWrite\"\r\n },\"nodeAgentSKUId\":\"batch.node.ubuntu @@ -425,8 +425,8 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:24 GMT'] - request-id: [c1acc63c-b143-4bad-adda-a821db7be850] + date: ['Fri, 24 Aug 2018 06:58:54 GMT'] + request-id: [a5834dff-a415-4bb1-a1f9-644fb6e7ea8f] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -438,28 +438,27 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:24 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:54 GMT'] return-client-request-id: ['false'] method: GET - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?maxresults=1&timeout=30&api-version=2018-03-01.6.1 + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?maxresults=1&api-version=2018-08-01.7.0&timeout=30 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#pools\",\"value\":[\r\n - \ {\r\n \"id\":\"batch_app_f0260dd0\",\"url\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools/batch_app_f0260dd0\",\"eTag\":\"0x8D588AE231E4E1B\",\"lastModified\":\"2018-03-13T06:46:23.7668891Z\",\"creationTime\":\"2018-03-13T06:46:23.7668891Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:46:23.7668891Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T06:46:24.0968737Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#pools\",\"value\":[\r\n + \ {\r\n \"id\":\"batch_app_f0260dd0\",\"url\":\"https://batchf0260dd0.eastus.batch.azure.com/pools/batch_app_f0260dd0\",\"eTag\":\"0x8D6098F0D03B6F1\",\"lastModified\":\"2018-08-24T06:58:52.2824433Z\",\"creationTime\":\"2018-08-24T06:58:52.2824433Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T06:58:52.2824433Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T06:58:52.6834553Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\",\"dataDisks\":[\r\n \ {\r\n \"lun\":1,\"caching\":\"none\",\"diskSizeGB\":50,\"storageAccountType\":\"standard_lrs\"\r\n \ }\r\n ]\r\n },\"applicationLicenses\":[\r\n \"maya\"\r\n - \ ]\r\n }\r\n ],\"odata.nextLink\":\"https://batchf0260dd0.westcentralus.batch.azure.com/pools?maxresults=1&timeout=30&api-version=2018-03-01.6.1&$skiptoken=WATV2:cql7ntVPRJidU%5E2ono/mmndim5mUw1477yWcMTZ5PF8oBtDskuG40EX9sPjZOcdAIqv3ekFE0xc7MrvVa6tXNBSlkw1LOI5S8%5EAnogXB1LOENiMVQEW0NP9ibo0d7yHOY/rtbbNWTVDwrlB2AkFfS%5EsTYX7bU%5E45s4rl6YEViphiGt4Jy1Pn7ZRTn/0Np8nelTFx1obgS6kz/vgRJf9rlFOAMGmOgMOT4ZIdHRB7MZUZP/3ci6iy3BhZ%5Ek94tawmT1Tn3uc9oHItonsmditX6M3v16r0D6Grw4OBEQ0jVpw=:1$1\"\r\n}"} + \ ]\r\n }\r\n ],\"odata.nextLink\":\"https://batchf0260dd0.eastus.batch.azure.com/pools?maxresults=1&api-version=2018-08-01.7.0&timeout=30&$skiptoken=WATV2:svCGInRCHD/N5oVI5QOwgJPSTYKuoVdoFHTJ0nEWfEyFnaGb/Pep5FFGL5MUo8DO0GijdR2/xIiD6YIOXXsDrD8zJRuUyES%5EOryeegmcqWPPnDsc9M1MxXZxlvBL4mSuOYpmxNA62Sd42uLCG13POSjGobXLnXMTT32sDlJUwT8mshFZTySmHQQ7Tt3Kp2B0f%5E0WcGJpWBe%5E2txfV44BtDOMjQRH0zMoulAx4MpL2vQauUhIKZFnBzvdR8S2s6orKN6N4RNrQXMoVsfD0q%5EvChY8rgsv3yod/jrH3ewN22E=:1$1\"\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:25 GMT'] - request-id: [dc383677-45b5-4b5e-9015-8dfab805ffcd] + date: ['Fri, 24 Aug 2018 06:58:55 GMT'] + request-id: [512032ae-4bc5-4026-8d04-c411e4daec62] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -471,23 +470,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:46:25 GMT'] + ocp-date: ['Fri, 24 Aug 2018 06:58:55 GMT'] return-client-request-id: ['false'] method: GET - uri: https://batchf0260dd0.westcentralus.batch.azure.com/pools?maxresults=1000&timeout=30&$select=id%2Cstate&$filter=startswith%28id%2C%27batch_app_%27%29&api-version=2018-03-01.6.1&$expand=stats + uri: https://batchf0260dd0.eastus.batch.azure.com/pools?maxresults=1000&$select=id%2Cstate&$filter=startswith%28id%2C%27batch_app_%27%29&$expand=stats&api-version=2018-08-01.7.0&timeout=30 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.westcentralus.batch.azure.com/$metadata#pools\",\"value\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0260dd0.eastus.batch.azure.com/$metadata#pools\",\"value\":[\r\n \ {\r\n \"id\":\"batch_app_f0260dd0\",\"state\":\"active\"\r\n }\r\n \ ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:46:25 GMT'] - request-id: [7a344182-7e99-4389-bfcb-9f08acd9602b] + date: ['Fri, 24 Aug 2018 06:58:55 GMT'] + request-id: [cef74f28-4fb2-4082-b769-0f4646b41d3a] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_files.yaml b/azure-batch/tests/recordings/test_batch.test_batch_files.yaml index 2f85e62324af..4c687fd137e0 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_files.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_files.yaml @@ -5,23 +5,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:54:56 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:07:45 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t070741z\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T07:07:41.7112825Z\",\"allocationTime\":\"2018-08-24T07:07:41.5833159Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.44.52\",\"publicFQDN\":\"dns1bd3ee26-0744-40da-a6e9-7bc4a9d45e8a-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:54:57 GMT'] - request-id: [c4a9a0e0-829d-43a1-83ba-08a5755d9e62] + date: ['Fri, 24 Aug 2018 07:07:46 GMT'] + request-id: [99e9e2d9-a79d-4053-a2e4-f68d9c251674] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -33,23 +32,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:55:07 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:07:56 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t070741z\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T07:07:41.7112825Z\",\"allocationTime\":\"2018-08-24T07:07:41.5833159Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.44.52\",\"publicFQDN\":\"dns1bd3ee26-0744-40da-a6e9-7bc4a9d45e8a-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:55:07 GMT'] - request-id: [c14adae0-0fa4-4986-9b23-0926d9d40e82] + date: ['Fri, 24 Aug 2018 07:07:57 GMT'] + request-id: [7b64c47f-6882-4024-b469-a3199088a47d] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -61,23 +59,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:55:18 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:08:07 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t070741z\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T07:07:41.7112825Z\",\"allocationTime\":\"2018-08-24T07:07:41.5833159Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.44.52\",\"publicFQDN\":\"dns1bd3ee26-0744-40da-a6e9-7bc4a9d45e8a-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:55:18 GMT'] - request-id: [bbc6cbf4-073b-4015-8fe1-7415d6db58a5] + date: ['Fri, 24 Aug 2018 07:08:08 GMT'] + request-id: [04c8459e-7880-4fda-bc72-d81a648c89b0] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -89,23 +86,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:55:28 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:08:18 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t070741z\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T07:07:41.7112825Z\",\"allocationTime\":\"2018-08-24T07:07:41.5833159Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.44.52\",\"publicFQDN\":\"dns1bd3ee26-0744-40da-a6e9-7bc4a9d45e8a-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:55:28 GMT'] - request-id: [3248756b-9092-43df-950d-8f47396dfaf1] + date: ['Fri, 24 Aug 2018 07:08:19 GMT'] + request-id: [710cc2d3-1033-4a56-8952-710100500431] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -117,23 +113,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:55:39 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:08:29 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t070741z\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T07:07:41.7112825Z\",\"allocationTime\":\"2018-08-24T07:07:41.5833159Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.44.52\",\"publicFQDN\":\"dns1bd3ee26-0744-40da-a6e9-7bc4a9d45e8a-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:55:39 GMT'] - request-id: [9e09086d-856d-407e-a43d-804d4e629db0] + date: ['Fri, 24 Aug 2018 07:08:29 GMT'] + request-id: [cfbdb958-03d5-4f6f-9ac8-20bceaeafed3] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -145,23 +140,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:55:49 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:08:39 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t070741z\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T07:07:41.7112825Z\",\"allocationTime\":\"2018-08-24T07:07:41.5833159Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.44.52\",\"publicFQDN\":\"dns1bd3ee26-0744-40da-a6e9-7bc4a9d45e8a-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:55:50 GMT'] - request-id: [bbbd360d-d3e4-4376-baed-42838b1123f3] + date: ['Fri, 24 Aug 2018 07:08:40 GMT'] + request-id: [1679a368-3a34-434a-ac88-2ca3c09fcddd] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -173,23 +167,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:56:00 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:08:50 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t070741z\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T07:07:41.7112825Z\",\"allocationTime\":\"2018-08-24T07:07:41.5833159Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.44.52\",\"publicFQDN\":\"dns1bd3ee26-0744-40da-a6e9-7bc4a9d45e8a-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:56:01 GMT'] - request-id: [6c75f5e9-df8f-4170-ada2-0cf592295999] + date: ['Fri, 24 Aug 2018 07:08:51 GMT'] + request-id: [70815dbb-3e97-4ca1-9d37-26562e1b1477] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -201,191 +194,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:56:11 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:01 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:56:11 GMT'] - request-id: [9cbb1635-9365-4c85-a4ea-f85fa9f69106] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:56:21 GMT'] - method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:56:22 GMT'] - request-id: [3d6fccfb-1ab1-4b1a-a22e-6dccbe41deba] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:56:32 GMT'] - method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:56:32 GMT'] - request-id: [2c9a7a19-2814-495d-a050-1ee45b94d4a4] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:56:43 GMT'] - method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:56:43 GMT'] - request-id: [36382460-722c-4b3b-bfb5-0bbf03087c47] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:56:53 GMT'] - method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:56:54 GMT'] - request-id: [07fc50ae-0fda-488f-9f50-8499415b9f7d] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:04 GMT'] - method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:54:50.2518081Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:04 GMT'] - request-id: [00409a2b-6657-47a2-afd8-7fcd4e91f777] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:14 GMT'] - method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3840119875_1-20180313t065450z\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T06:57:12.783852Z\",\"lastBootTime\":\"2018-03-13T06:57:12.632145Z\",\"allocationTime\":\"2018-03-13T06:54:50.1867959Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.158.194\",\"publicFQDN\":\"dns0d371bf4-5e9d-40c2-a652-fd1ba1062209-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n - \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t070741z\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"state\":\"idle\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T07:08:57.621283Z\",\"lastBootTime\":\"2018-08-24T07:08:56.933932Z\",\"allocationTime\":\"2018-08-24T07:07:41.5833159Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"totalTasksSucceeded\":0,\"runningTasksCount\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.44.52\",\"publicFQDN\":\"dns1bd3ee26-0744-40da-a6e9-7bc4a9d45e8a-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + \ }\r\n ]\r\n },\"nodeAgentInfo\":{\r\n \"lastUpdateTime\":\"2018-08-24T07:08:56.933932Z\",\"version\":\"1.3.0.8\"\r\n + \ }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:15 GMT'] - request-id: [99c73966-4305-453e-91b1-b6efbd6d59bb] + date: ['Fri, 24 Aug 2018 07:09:02 GMT'] + request-id: [d5598806-e80d-4dab-940e-fce4ed4c99c2] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -399,22 +224,22 @@ interactions: Connection: [keep-alive] Content-Length: ['65'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:15 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:02 GMT'] method: POST - uri: https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task'] + dataserviceid: ['https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:15 GMT'] - etag: ['0x8D588AFA7C4208D'] - last-modified: ['Tue, 13 Mar 2018 06:57:15 GMT'] - location: ['https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task'] - request-id: [7203aebc-aad0-43df-922a-f3b20745345d] + date: ['Fri, 24 Aug 2018 07:09:02 GMT'] + etag: ['0x8D60990793F0503'] + last-modified: ['Fri, 24 Aug 2018 07:09:03 GMT'] + location: ['https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task'] + request-id: [235b1b8b-1043-4988-b3cf-90e39389ff15] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -426,15 +251,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:15 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:03 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"test_task\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task\",\"eTag\":\"0x8D588AFA7C4208D\",\"creationTime\":\"2018-03-13T06:57:15.8096013Z\",\"lastModified\":\"2018-03-13T06:57:15.8096013Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T06:57:15.8096013Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"test_task\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task\",\"eTag\":\"0x8D60990793F0503\",\"creationTime\":\"2018-08-24T07:09:03.3617667Z\",\"lastModified\":\"2018-08-24T07:09:03.3617667Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T07:09:03.3617667Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n @@ -442,10 +266,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:16 GMT'] - etag: ['0x8D588AFA7C4208D'] - last-modified: ['Tue, 13 Mar 2018 06:57:15 GMT'] - request-id: [07e8f19c-56ea-4a8f-a674-da80723ace35] + date: ['Fri, 24 Aug 2018 07:09:03 GMT'] + etag: ['0x8D60990793F0503'] + last-modified: ['Fri, 24 Aug 2018 07:09:03 GMT'] + request-id: [d035f76a-9953-4970-a1a1-791d6df438b2] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -457,32 +281,31 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:21 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:09 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"test_task\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task\",\"eTag\":\"0x8D588AFA7C4208D\",\"creationTime\":\"2018-03-13T06:57:15.8096013Z\",\"lastModified\":\"2018-03-13T06:57:15.8096013Z\",\"state\":\"completed\",\"stateTransitionTime\":\"2018-03-13T06:57:17.830504Z\",\"previousState\":\"running\",\"previousStateTransitionTime\":\"2018-03-13T06:57:17.520385Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"test_task\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task\",\"eTag\":\"0x8D60990793F0503\",\"creationTime\":\"2018-08-24T07:09:03.3617667Z\",\"lastModified\":\"2018-08-24T07:09:03.3617667Z\",\"state\":\"completed\",\"stateTransitionTime\":\"2018-08-24T07:09:04.900273Z\",\"previousState\":\"running\",\"previousStateTransitionTime\":\"2018-08-24T07:09:04.720208Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n - \ },\"executionInfo\":{\r\n \"startTime\":\"2018-03-13T06:57:17.520475Z\",\"endTime\":\"2018-03-13T06:57:17.830504Z\",\"failureInfo\":{\r\n + \ },\"executionInfo\":{\r\n \"startTime\":\"2018-08-24T07:09:04.720305Z\",\"endTime\":\"2018-08-24T07:09:04.900273Z\",\"failureInfo\":{\r\n \ \"category\":\"UserError\",\"code\":\"CommandProgramNotFound\",\"message\":\"The specified command program is not found\",\"details\":[\r\n {\r\n \"name\":\"CommandLine\",\"value\":\"cmd /c \\\"echo hello world\\\"\"\r\n },{\r\n \"name\":\"Message\",\"value\":\"The system cannot find the file specified\"\r\n }\r\n ]\r\n },\"result\":\"Failure\",\"retryCount\":0,\"requeueCount\":0\r\n - \ },\"nodeInfo\":{\r\n \"affinityId\":\"TVM:tvm-3840119875_1-20180313t065450z\",\"nodeUrl\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z\",\"poolId\":\"test_batch_test_batch_files98930ae3\",\"nodeId\":\"tvm-3840119875_1-20180313t065450z\",\"taskRootDirectory\":\"workitems/batch98930ae3/job-1/test_task\",\"taskRootDirectoryUrl\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems/batch98930ae3/job-1/test_task\"\r\n + \ },\"nodeInfo\":{\r\n \"affinityId\":\"TVM:tvm-3257026573_1-20180824t070741z\",\"nodeUrl\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z\",\"poolId\":\"test_batch_test_batch_files98930ae3\",\"nodeId\":\"tvm-3257026573_1-20180824t070741z\",\"taskRootDirectory\":\"workitems/batch98930ae3/job-1/test_task\",\"taskRootDirectoryUrl\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems/batch98930ae3/job-1/test_task\"\r\n \ }\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:21 GMT'] - etag: ['0x8D588AFA7C4208D'] - last-modified: ['Tue, 13 Mar 2018 06:57:15 GMT'] - request-id: [fca6c95e-d32c-4d3e-b9dc-a36fe3d4b273] + date: ['Fri, 24 Aug 2018 07:09:09 GMT'] + etag: ['0x8D60990793F0503'] + last-modified: ['Fri, 24 Aug 2018 07:09:03 GMT'] + request-id: [f6d7e240-fd5c-481c-853d-544ed7746965] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -494,34 +317,35 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:21 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:10 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files?api-version=2018-03-01.6.1&recursive=true + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files?api-version=2018-08-01.7.0&recursive=true response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#files\",\"value\":[\r\n - \ {\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems/batch98930ae3/job-1/test_task\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"apppackages\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/apppackages\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems/batch98930ae3/job-1\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"workitems/batch98930ae3\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems/batch98930ae3\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task/certs\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems/batch98930ae3/job-1/test_task/certs\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"shared\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/shared\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"workitems\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task/wd\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems/batch98930ae3/job-1/test_task/wd\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task/stdout.txt\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems/batch98930ae3/job-1/test_task/stdout.txt\",\"isDirectory\":false,\"properties\":{\r\n - \ \"lastModified\":\"2018-03-13T06:57:17.748152Z\",\"contentLength\":\"0\",\"contentType\":\"text/plain\",\"fileMode\":\"0o100644\"\r\n - \ }\r\n },{\r\n \"name\":\"startup\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/startup\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task/stderr.txt\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems/batch98930ae3/job-1/test_task/stderr.txt\",\"isDirectory\":false,\"properties\":{\r\n - \ \"lastModified\":\"2018-03-13T06:57:17.748152Z\",\"contentLength\":\"0\",\"contentType\":\"text/plain\",\"fileMode\":\"0o100644\"\r\n - \ }\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#files\",\"value\":[\r\n + \ {\r\n \"name\":\"apppackages\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/apppackages\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"volatile/startup\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/volatile/startup\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task/wd\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems/batch98930ae3/job-1/test_task/wd\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"workitems/batch98930ae3\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems/batch98930ae3\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"shared\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/shared\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task/stdout.txt\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems/batch98930ae3/job-1/test_task/stdout.txt\",\"isDirectory\":false,\"properties\":{\r\n + \ \"lastModified\":\"2018-08-24T07:09:04.830959Z\",\"contentLength\":\"0\",\"contentType\":\"text/plain\",\"fileMode\":\"0o100644\"\r\n + \ }\r\n },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task/stderr.txt\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems/batch98930ae3/job-1/test_task/stderr.txt\",\"isDirectory\":false,\"properties\":{\r\n + \ \"lastModified\":\"2018-08-24T07:09:04.830959Z\",\"contentLength\":\"0\",\"contentType\":\"text/plain\",\"fileMode\":\"0o100644\"\r\n + \ }\r\n },{\r\n \"name\":\"workitems/batch98930ae3/job-1\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems/batch98930ae3/job-1\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"workitems\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"volatile\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/volatile\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems/batch98930ae3/job-1/test_task\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"workitems/batch98930ae3/job-1/test_task/certs\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems/batch98930ae3/job-1/test_task/certs\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"startup\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/startup\",\"isDirectory\":true\r\n + \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:22 GMT'] - request-id: [eff67554-67d0-4142-8ec1-61184070d2f1] + date: ['Fri, 24 Aug 2018 07:09:10 GMT'] + request-id: [3ebc9b47-8c5d-4363-95a3-ab4863f4f061] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -533,25 +357,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:22 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:11 GMT'] method: HEAD - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-length: ['0'] content-type: [text/plain] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:22 GMT'] - last-modified: ['Tue, 13 Mar 2018 06:57:17 GMT'] + date: ['Fri, 24 Aug 2018 07:09:12 GMT'] + last-modified: ['Fri, 24 Aug 2018 07:09:04 GMT'] ocp-batch-file-isdirectory: ['False'] ocp-batch-file-mode: [0o100644] - ocp-batch-file-url: [https%3A%2F%2Fbatch498930ae3.westcentralus.batch.azure.com%2Fpools%2Ftest_batch_test_batch_files98930ae3%2Fnodes%2Ftvm-3840119875_1-20180313t065450z%2Ffiles%2Fworkitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt] - request-id: [a147eebd-3d96-4965-9f8a-c36e4b654d56] + ocp-batch-file-url: [https%3A%2F%2Fbatch498930ae3.eastus.batch.azure.com%2Fpools%2Ftest_batch_test_batch_files98930ae3%2Fnodes%2Ftvm-3257026573_1-20180824t070741z%2Ffiles%2Fworkitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt] + request-id: [34b3348e-d5c2-427e-b0ad-3e07484452ae] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -562,24 +385,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:23 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:12 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-type: [text/plain] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:24 GMT'] - last-modified: ['Tue, 13 Mar 2018 06:57:17 GMT'] + date: ['Fri, 24 Aug 2018 07:09:13 GMT'] + last-modified: ['Fri, 24 Aug 2018 07:09:04 GMT'] ocp-batch-file-isdirectory: ['False'] ocp-batch-file-mode: [0o100644] - ocp-batch-file-url: [https%3A%2F%2Fbatch498930ae3.westcentralus.batch.azure.com%2Fpools%2Ftest_batch_test_batch_files98930ae3%2Fnodes%2Ftvm-3840119875_1-20180313t065450z%2Ffiles%2Fworkitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt] - request-id: [e285d359-1ac1-4dae-bf24-3879c3cedd03] + ocp-batch-file-url: [https%3A%2F%2Fbatch498930ae3.eastus.batch.azure.com%2Fpools%2Ftest_batch_test_batch_files98930ae3%2Fnodes%2Ftvm-3257026573_1-20180824t070741z%2Ffiles%2Fworkitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt] + request-id: [05c54ed2-781b-4803-878e-9044298b25d3] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -592,19 +414,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:24 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:13 GMT'] method: DELETE - uri: https://batch498930ae3.westcentralus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3840119875_1-20180313t065450z/files/workitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/pools/test_batch_test_batch_files98930ae3/nodes/tvm-3257026573_1-20180824t070741z/files/workitems%2Fbatch98930ae3%2Fjob-1%2Ftest_task%2Fstdout.txt?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:24 GMT'] - request-id: [443984ff-e723-43b2-b376-84a6d8dc9d4b] + date: ['Fri, 24 Aug 2018 07:09:14 GMT'] + request-id: [ff358a61-3cab-4f6c-bd9e-d73285c04831] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -616,25 +437,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:25 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:14 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.westcentralus.batch.azure.com/$metadata#files\",\"value\":[\r\n - \ {\r\n \"name\":\"certs\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/certs\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"wd\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/wd\",\"isDirectory\":true\r\n - \ },{\r\n \"name\":\"stderr.txt\",\"url\":\"https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/stderr.txt\",\"isDirectory\":false,\"properties\":{\r\n - \ \"lastModified\":\"2018-03-13T06:57:17.748152Z\",\"contentLength\":\"0\",\"contentType\":\"text/plain\",\"fileMode\":\"0o100644\"\r\n - \ }\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batch498930ae3.eastus.batch.azure.com/$metadata#files\",\"value\":[\r\n + \ {\r\n \"name\":\"wd\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/wd\",\"isDirectory\":true\r\n + \ },{\r\n \"name\":\"stderr.txt\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/stderr.txt\",\"isDirectory\":false,\"properties\":{\r\n + \ \"lastModified\":\"2018-08-24T07:09:04.830959Z\",\"contentLength\":\"0\",\"contentType\":\"text/plain\",\"fileMode\":\"0o100644\"\r\n + \ }\r\n },{\r\n \"name\":\"certs\",\"url\":\"https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/certs\",\"isDirectory\":true\r\n + \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:25 GMT'] - request-id: [b80af518-0f70-48f0-92db-9404e5912dc2] + date: ['Fri, 24 Aug 2018 07:09:15 GMT'] + request-id: [d0231a6c-2b40-4b08-b72c-23cd16e827e7] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -646,25 +466,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:25 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:15 GMT'] method: HEAD - uri: https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/stderr.txt?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/stderr.txt?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-length: ['0'] content-type: [text/plain] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:26 GMT'] - last-modified: ['Tue, 13 Mar 2018 06:57:17 GMT'] + date: ['Fri, 24 Aug 2018 07:09:15 GMT'] + last-modified: ['Fri, 24 Aug 2018 07:09:04 GMT'] ocp-batch-file-isdirectory: ['False'] ocp-batch-file-mode: [0o100644] - ocp-batch-file-url: [https%3A%2F%2Fbatch498930ae3.westcentralus.batch.azure.com%2Fjobs%2Fbatch98930ae3%2Ftasks%2Ftest_task%2Ffiles%2Fstderr.txt] - request-id: [01d1ba9a-709c-4b0c-b2e9-c110f99907d9] + ocp-batch-file-url: [https%3A%2F%2Fbatch498930ae3.eastus.batch.azure.com%2Fjobs%2Fbatch98930ae3%2Ftasks%2Ftest_task%2Ffiles%2Fstderr.txt] + request-id: [43e7c099-950e-4479-92ba-ae07f871020b] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -675,24 +494,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:26 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:16 GMT'] method: GET - uri: https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/stderr.txt?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/stderr.txt?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-type: [text/plain] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:27 GMT'] - last-modified: ['Tue, 13 Mar 2018 06:57:17 GMT'] + date: ['Fri, 24 Aug 2018 07:09:16 GMT'] + last-modified: ['Fri, 24 Aug 2018 07:09:04 GMT'] ocp-batch-file-isdirectory: ['False'] ocp-batch-file-mode: [0o100644] - ocp-batch-file-url: [https%3A%2F%2Fbatch498930ae3.westcentralus.batch.azure.com%2Fjobs%2Fbatch98930ae3%2Ftasks%2Ftest_task%2Ffiles%2Fstderr.txt] - request-id: [ea3cbbd2-901c-44bf-9250-9e3a6412930b] + ocp-batch-file-url: [https%3A%2F%2Fbatch498930ae3.eastus.batch.azure.com%2Fjobs%2Fbatch98930ae3%2Ftasks%2Ftest_task%2Ffiles%2Fstderr.txt] + request-id: [810e109f-c1db-4bf6-ab5b-633741993897] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -705,19 +523,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 06:57:27 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:09:17 GMT'] method: DELETE - uri: https://batch498930ae3.westcentralus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/stderr.txt?api-version=2018-03-01.6.1 + uri: https://batch498930ae3.eastus.batch.azure.com/jobs/batch98930ae3/tasks/test_task/files/stderr.txt?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 06:57:27 GMT'] - request-id: [21a6707b-f6c4-4fba-99fa-a9454ad6ae92] + date: ['Fri, 24 Aug 2018 07:09:17 GMT'] + request-id: [0d74427b-68b2-4565-a8d5-df0eb32d04d4] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_job_schedules.yaml b/azure-batch/tests/recordings/test_batch.test_batch_job_schedules.yaml index 8d37c15de75b..ee3f33f995f9 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_job_schedules.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_job_schedules.yaml @@ -1,30 +1,30 @@ interactions: - request: - body: '{"id": "batch_schedule_fe140e2a", "jobSpecification": {"poolInfo": {"poolId": - "pool_id"}, "constraints": {"maxTaskRetryCount": 2}, "onAllTasksComplete": "terminatejob"}, - "schedule": {"recurrenceInterval": "P1D", "startWindow": "PT1H"}}' + body: '{"schedule": {"recurrenceInterval": "P1D", "startWindow": "PT1H"}, "jobSpecification": + {"poolInfo": {"poolId": "pool_id"}, "onAllTasksComplete": "terminatejob", "constraints": + {"maxTaskRetryCount": 2}}, "id": "batch_schedule_fe140e2a"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['235'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:18 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:09 GMT'] method: POST - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a'] + dataserviceid: ['https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:18 GMT'] - etag: ['0x8D5891F6BCAE2B5'] - last-modified: ['Tue, 13 Mar 2018 20:17:18 GMT'] - location: ['https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a'] - request-id: [1fbac776-9d66-42a7-944f-818508398830] + date: ['Fri, 24 Aug 2018 20:15:10 GMT'] + etag: ['0x8D609FE4AE9EC6F'] + last-modified: ['Fri, 24 Aug 2018 20:15:10 GMT'] + location: ['https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a'] + request-id: [80d789a7-4665-42be-b8bd-8e34809db19b] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -36,28 +36,27 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:19 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:10 GMT'] method: GET - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchfe140e2a.westcentralus.batch.azure.com/$metadata#jobschedules\",\"value\":[\r\n - \ {\r\n \"id\":\"batch_schedule_fe140e2a\",\"url\":\"https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a\",\"eTag\":\"0x8D5891F6BCAE2B5\",\"lastModified\":\"2018-03-13T20:17:18.8243125Z\",\"creationTime\":\"2018-03-13T20:17:18.8243125Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:17:18.8243125Z\",\"schedule\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchfe140e2a.eastus.batch.azure.com/$metadata#jobschedules\",\"value\":[\r\n + \ {\r\n \"id\":\"batch_schedule_fe140e2a\",\"url\":\"https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a\",\"eTag\":\"0x8D609FE4AE9EC6F\",\"lastModified\":\"2018-08-24T20:15:10.2691439Z\",\"creationTime\":\"2018-08-24T20:15:10.2691439Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:15:10.2691439Z\",\"schedule\":{\r\n \ \"startWindow\":\"PT1H\",\"recurrenceInterval\":\"P1D\"\r\n },\"jobSpecification\":{\r\n \ \"priority\":0,\"usesTaskDependencies\":false,\"onAllTasksComplete\":\"terminatejob\",\"onTaskFailure\":\"noaction\",\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":2\r\n \ },\"poolInfo\":{\r\n \"poolId\":\"pool_id\"\r\n }\r\n - \ },\"executionInfo\":{\r\n \"nextRunTime\":\"2018-03-14T20:17:18.8243125Z\",\"recentJob\":{\r\n - \ \"url\":\"https://batchfe140e2a.westcentralus.batch.azure.com/jobs/batch_schedule_fe140e2a:job-1\",\"id\":\"batch_schedule_fe140e2a:job-1\"\r\n + \ },\"executionInfo\":{\r\n \"nextRunTime\":\"2018-08-25T20:15:10.2691439Z\",\"recentJob\":{\r\n + \ \"url\":\"https://batchfe140e2a.eastus.batch.azure.com/jobs/batch_schedule_fe140e2a:job-1\",\"id\":\"batch_schedule_fe140e2a:job-1\"\r\n \ }\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:19 GMT'] - request-id: [a5c36eae-6c99-4550-9cfc-4907654a0817] + date: ['Fri, 24 Aug 2018 20:15:11 GMT'] + request-id: [3d80513e-8182-4674-94d5-66d904e8dabd] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -69,28 +68,27 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:19 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:11 GMT'] method: GET - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchfe140e2a.westcentralus.batch.azure.com/$metadata#jobschedules/@Element\",\"id\":\"batch_schedule_fe140e2a\",\"url\":\"https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a\",\"eTag\":\"0x8D5891F6BCAE2B5\",\"lastModified\":\"2018-03-13T20:17:18.8243125Z\",\"creationTime\":\"2018-03-13T20:17:18.8243125Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:17:18.8243125Z\",\"schedule\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchfe140e2a.eastus.batch.azure.com/$metadata#jobschedules/@Element\",\"id\":\"batch_schedule_fe140e2a\",\"url\":\"https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a\",\"eTag\":\"0x8D609FE4AE9EC6F\",\"lastModified\":\"2018-08-24T20:15:10.2691439Z\",\"creationTime\":\"2018-08-24T20:15:10.2691439Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:15:10.2691439Z\",\"schedule\":{\r\n \ \"startWindow\":\"PT1H\",\"recurrenceInterval\":\"P1D\"\r\n },\"jobSpecification\":{\r\n \ \"priority\":0,\"usesTaskDependencies\":false,\"onAllTasksComplete\":\"terminatejob\",\"onTaskFailure\":\"noaction\",\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":2\r\n \ },\"poolInfo\":{\r\n \"poolId\":\"pool_id\"\r\n }\r\n },\"executionInfo\":{\r\n - \ \"nextRunTime\":\"2018-03-14T20:17:18.8243125Z\",\"recentJob\":{\r\n \"url\":\"https://batchfe140e2a.westcentralus.batch.azure.com/jobs/batch_schedule_fe140e2a:job-1\",\"id\":\"batch_schedule_fe140e2a:job-1\"\r\n + \ \"nextRunTime\":\"2018-08-25T20:15:10.2691439Z\",\"recentJob\":{\r\n \"url\":\"https://batchfe140e2a.eastus.batch.azure.com/jobs/batch_schedule_fe140e2a:job-1\",\"id\":\"batch_schedule_fe140e2a:job-1\"\r\n \ }\r\n }\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:20 GMT'] - etag: ['0x8D5891F6BCAE2B5'] - last-modified: ['Tue, 13 Mar 2018 20:17:18 GMT'] - request-id: [4c805e6f-9f4c-48c9-a8ef-d82e3e02ff96] + date: ['Fri, 24 Aug 2018 20:15:12 GMT'] + etag: ['0x8D609FE4AE9EC6F'] + last-modified: ['Fri, 24 Aug 2018 20:15:10 GMT'] + request-id: [d129308e-918e-484d-a394-bf273ae8c1c7] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -102,21 +100,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:20 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:12 GMT'] method: HEAD - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:19 GMT'] - etag: ['0x8D5891F6BCAE2B5'] - last-modified: ['Tue, 13 Mar 2018 20:17:18 GMT'] - request-id: [6fa79b22-d168-46e4-a378-1a5eeb352616] + date: ['Fri, 24 Aug 2018 20:15:13 GMT'] + etag: ['0x8D609FE4AE9EC6F'] + last-modified: ['Fri, 24 Aug 2018 20:15:10 GMT'] + request-id: [9d84da2e-c219-4e14-9822-4ed2b901ae33] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -128,26 +125,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:20 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:13 GMT'] method: GET - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/jobs?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/jobs?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchfe140e2a.westcentralus.batch.azure.com/$metadata#jobs\",\"value\":[\r\n - \ {\r\n \"id\":\"batch_schedule_fe140e2a:job-1\",\"url\":\"https://batchfe140e2a.westcentralus.batch.azure.com/jobs/batch_schedule_fe140e2a:job-1\",\"eTag\":\"0x8D5891F6BD28426\",\"lastModified\":\"2018-03-13T20:17:18.8743206Z\",\"creationTime\":\"2018-03-13T20:17:18.8583077Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:17:18.8743206Z\",\"priority\":0,\"usesTaskDependencies\":false,\"constraints\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchfe140e2a.eastus.batch.azure.com/$metadata#jobs\",\"value\":[\r\n + \ {\r\n \"id\":\"batch_schedule_fe140e2a:job-1\",\"url\":\"https://batchfe140e2a.eastus.batch.azure.com/jobs/batch_schedule_fe140e2a:job-1\",\"eTag\":\"0x8D609FE4B058F9C\",\"lastModified\":\"2018-08-24T20:15:10.4502684Z\",\"creationTime\":\"2018-08-24T20:15:10.3481453Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:15:10.4502684Z\",\"priority\":0,\"usesTaskDependencies\":false,\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":2\r\n \ },\"poolInfo\":{\r\n \"poolId\":\"pool_id\"\r\n },\"executionInfo\":{\r\n - \ \"startTime\":\"2018-03-13T20:17:18.8743206Z\",\"poolId\":\"pool_id\"\r\n + \ \"startTime\":\"2018-08-24T20:15:10.4502684Z\",\"poolId\":\"pool_id\"\r\n \ },\"onAllTasksComplete\":\"terminatejob\",\"onTaskFailure\":\"noaction\"\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:21 GMT'] - request-id: [a7b6f41b-36df-4258-bab1-c4455fd8f9aa] + date: ['Fri, 24 Aug 2018 20:15:13 GMT'] + request-id: [727e2de4-0732-482d-b8eb-c7f533666e69] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -160,23 +156,22 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:21 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:14 GMT'] method: POST - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/disable?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/disable?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-length: ['0'] - dataserviceid: ['https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/disable'] + dataserviceid: ['https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/disable'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:21 GMT'] - etag: ['0x8D5891F6D8BCD45'] - last-modified: ['Tue, 13 Mar 2018 20:17:21 GMT'] - request-id: [5241acc8-3761-4f82-97f1-85f9e0d7dfc5] + date: ['Fri, 24 Aug 2018 20:15:14 GMT'] + etag: ['0x8D609FE4DE22B24'] + last-modified: ['Fri, 24 Aug 2018 20:15:15 GMT'] + request-id: [9b39e901-facc-4ec3-bbaf-56d8d582de8d] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -188,51 +183,50 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:22 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:15 GMT'] method: POST - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/enable?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/enable?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-length: ['0'] - dataserviceid: ['https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/enable'] + dataserviceid: ['https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/enable'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:22 GMT'] - etag: ['0x8D5891F6DE3577E'] - last-modified: ['Tue, 13 Mar 2018 20:17:22 GMT'] - request-id: [bf884503-4fa9-4244-8f4b-5e35f2a77420] + date: ['Fri, 24 Aug 2018 20:15:16 GMT'] + etag: ['0x8D609FE4E77AA58'] + last-modified: ['Fri, 24 Aug 2018 20:15:16 GMT'] + request-id: [463eed24-8a43-4f87-9a81-4f8543d3a733] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] status: {code: 204, message: No Content} - request: - body: '{"jobSpecification": {"poolInfo": {"poolId": "pool_id"}}, "schedule": {"recurrenceInterval": - "PT10H"}}' + body: '{"schedule": {"recurrenceInterval": "PT10H"}, "jobSpecification": {"poolInfo": + {"poolId": "pool_id"}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['102'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:22 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:16 GMT'] method: PUT - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a'] + dataserviceid: ['https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:22 GMT'] - etag: ['0x8D5891F6E3A17AF'] - last-modified: ['Tue, 13 Mar 2018 20:17:22 GMT'] - request-id: [09e64fbd-e420-4681-8b91-b307c3a90fae] + date: ['Fri, 24 Aug 2018 20:15:16 GMT'] + etag: ['0x8D609FE4F11FF16'] + last-modified: ['Fri, 24 Aug 2018 20:15:17 GMT'] + request-id: [7f7fc05a-23c6-4fc0-8342-abe0228ab8c4] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -246,21 +240,21 @@ interactions: Connection: [keep-alive] Content-Length: ['44'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:23 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:17 GMT'] method: PATCH - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a'] + dataserviceid: ['https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:23 GMT'] - etag: ['0x8D5891F6E8BF4DD'] - last-modified: ['Tue, 13 Mar 2018 20:17:23 GMT'] - request-id: [a670d092-8eaa-46f0-8f3a-4a36c09e3130] + date: ['Fri, 24 Aug 2018 20:15:18 GMT'] + etag: ['0x8D609FE4FB6072C'] + last-modified: ['Fri, 24 Aug 2018 20:15:18 GMT'] + request-id: [ca12195e-c970-4865-a13c-d0a625e517b4] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -273,22 +267,21 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:23 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:18 GMT'] method: POST - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/terminate?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/terminate?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/terminate'] + dataserviceid: ['https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a/terminate'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:24 GMT'] - etag: ['0x8D5891F6EDEB41F'] - last-modified: ['Tue, 13 Mar 2018 20:17:23 GMT'] - request-id: [08e3cefd-4fde-4e36-a5ea-032eb9624c29] + date: ['Fri, 24 Aug 2018 20:15:18 GMT'] + etag: ['0x8D609FE503C4974'] + last-modified: ['Fri, 24 Aug 2018 20:15:19 GMT'] + request-id: [a01d364c-0d15-4b9d-944a-42313cc73867] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -301,19 +294,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:17:24 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:15:19 GMT'] method: DELETE - uri: https://batchfe140e2a.westcentralus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-03-01.6.1 + uri: https://batchfe140e2a.eastus.batch.azure.com/jobschedules/batch_schedule_fe140e2a?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:17:24 GMT'] - request-id: [b0f4ebfe-913e-44d2-9409-7115c5640746] + date: ['Fri, 24 Aug 2018 20:15:19 GMT'] + request-id: [910a578b-f2c7-41d0-afe0-b93b8e3e1a5a] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_jobs.yaml b/azure-batch/tests/recordings/test_batch.test_batch_jobs.yaml index 337b1d7a6b99..9b05726c1bb4 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_jobs.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_jobs.yaml @@ -1,61 +1,61 @@ interactions: - request: - body: '{"poolInfo": {"autoPoolSpecification": {"pool": {"vmSize": "small", "cloudServiceConfiguration": - {"osFamily": "5"}}, "poolLifetimeOption": "job"}}, "jobReleaseTask": {"commandLine": - "cmd /c \"echo goodbye world\""}, "jobPreparationTask": {"commandLine": "cmd - /c \"echo hello world\""}, "id": "batch_job1_8dcc0a7e"}' + body: '{"jobReleaseTask": {"commandLine": "cmd /c \"echo goodbye world\""}, "poolInfo": + {"autoPoolSpecification": {"pool": {"cloudServiceConfiguration": {"osFamily": + "5"}, "vmSize": "small"}, "poolLifetimeOption": "job"}}, "id": "batch_job1_8dcc0a7e", + "jobPreparationTask": {"commandLine": "cmd /c \"echo hello world\""}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['314'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:50 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:51 GMT'] method: POST - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/job-1'] + dataserviceid: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/job-1'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:50 GMT'] - etag: ['0x8D588B0B73BDBA5'] - last-modified: ['Tue, 13 Mar 2018 07:04:51 GMT'] - location: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/job-1'] - request-id: [a50e269a-dead-4bb7-95c1-0ff5d8eb61f3] + date: ['Fri, 24 Aug 2018 07:25:52 GMT'] + etag: ['0x8D60992D2D2508E'] + last-modified: ['Fri, 24 Aug 2018 07:25:52 GMT'] + location: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/job-1'] + request-id: [86c97fb7-53b9-4b30-8f04-e4412fff8487] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 201, message: Created} - request: - body: '{"poolInfo": {"autoPoolSpecification": {"pool": {"vmSize": "small", "cloudServiceConfiguration": - {"osFamily": "5"}}, "poolLifetimeOption": "job"}}, "constraints": {"maxTaskRetryCount": - 3}, "priority": 500}' + body: '{"poolInfo": {"autoPoolSpecification": {"pool": {"cloudServiceConfiguration": + {"osFamily": "5"}, "vmSize": "small"}, "poolLifetimeOption": "job"}}, "priority": + 500, "constraints": {"maxTaskRetryCount": 3}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['205'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:51 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:52 GMT'] method: PUT - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e'] + dataserviceid: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:52 GMT'] - etag: ['0x8D588B0B7AEBA10'] - last-modified: ['Tue, 13 Mar 2018 07:04:52 GMT'] - request-id: [2829dd40-0a65-4d22-ae5b-c1a78f53c337] + date: ['Fri, 24 Aug 2018 07:25:53 GMT'] + etag: ['0x8D60992D359B762'] + last-modified: ['Fri, 24 Aug 2018 07:25:53 GMT'] + request-id: [bf05005a-17ec-438e-8850-c12542b0c932] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -69,21 +69,21 @@ interactions: Connection: [keep-alive] Content-Length: ['17'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:52 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:53 GMT'] method: PATCH - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e'] + dataserviceid: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:52 GMT'] - etag: ['0x8D588B0B81B3FF1'] - last-modified: ['Tue, 13 Mar 2018 07:04:52 GMT'] - request-id: [f634b1a2-2e51-4bd9-9628-1ab215bc2817] + date: ['Fri, 24 Aug 2018 07:25:53 GMT'] + etag: ['0x8D60992D3C9FE7A'] + last-modified: ['Fri, 24 Aug 2018 07:25:54 GMT'] + request-id: [760df734-6e6e-4ebf-8a88-4c49acb6edde] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -95,15 +95,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:52 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:54 GMT'] method: GET - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/$metadata#jobs/@Element\",\"id\":\"batch_job1_8dcc0a7e\",\"url\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e\",\"eTag\":\"0x8D588B0B81B3FF1\",\"lastModified\":\"2018-03-13T07:04:52.7208433Z\",\"creationTime\":\"2018-03-13T07:04:51.2398732Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:04:51.2568229Z\",\"priority\":900,\"usesTaskDependencies\":false,\"constraints\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.eastus.batch.azure.com/$metadata#jobs/@Element\",\"id\":\"batch_job1_8dcc0a7e\",\"url\":\"https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e\",\"eTag\":\"0x8D60992D3C9FE7A\",\"lastModified\":\"2018-08-24T07:25:54.260953Z\",\"creationTime\":\"2018-08-24T07:25:52.5461111Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T07:25:52.6377614Z\",\"priority\":900,\"usesTaskDependencies\":false,\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":3\r\n \ },\"jobPreparationTask\":{\r\n \"id\":\"jobpreparation\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n @@ -116,46 +115,47 @@ interactions: \ \"vmSize\":\"small\",\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"resizeTimeout\":\"PT15M\",\"targetDedicatedNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"cloudServiceConfiguration\":{\r\n \ \"osFamily\":\"5\",\"targetOSVersion\":\"*\"\r\n }\r\n }\r\n - \ }\r\n },\"executionInfo\":{\r\n \"startTime\":\"2018-03-13T07:04:51.2568229Z\",\"poolId\":\"44822E5D-9333-4DE8-B357-138B922D74C7\"\r\n + \ }\r\n },\"executionInfo\":{\r\n \"startTime\":\"2018-08-24T07:25:52.6377614Z\",\"poolId\":\"F1998748-A9F3-4162-8B53-2E40DBFC4F7D\"\r\n \ },\"onAllTasksComplete\":\"noaction\",\"onTaskFailure\":\"noaction\"\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:53 GMT'] - etag: ['0x8D588B0B81B3FF1'] - last-modified: ['Tue, 13 Mar 2018 07:04:52 GMT'] - request-id: [12a49510-d20a-4896-95be-cb637578f478] + date: ['Fri, 24 Aug 2018 07:25:54 GMT'] + etag: ['0x8D60992D3C9FE7A'] + last-modified: ['Fri, 24 Aug 2018 07:25:54 GMT'] + request-id: [bf5cedce-ffa1-4b0e-aa25-d51ef78cd4ac] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"poolInfo": {"autoPoolSpecification": {"pool": {"vmSize": "small", "cloudServiceConfiguration": - {"osFamily": "5"}}, "poolLifetimeOption": "job"}}, "id": "batch_job2_8dcc0a7e", - "onTaskFailure": "performexitoptionsjobaction", "onAllTasksComplete": "terminatejob"}' + body: '{"poolInfo": {"autoPoolSpecification": {"pool": {"cloudServiceConfiguration": + {"osFamily": "5"}, "vmSize": "small"}, "poolLifetimeOption": "job"}}, "onTaskFailure": + "performexitoptionsjobaction", "id": "batch_job2_8dcc0a7e", "onAllTasksComplete": + "terminatejob"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['262'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:53 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:55 GMT'] method: POST - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/job-1'] + dataserviceid: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/job-1'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:54 GMT'] - etag: ['0x8D588B0B90FF974'] - last-modified: ['Tue, 13 Mar 2018 07:04:54 GMT'] - location: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/job-1'] - request-id: [4527a5fb-b38a-47cb-9857-80517094ecac] + date: ['Fri, 24 Aug 2018 07:25:55 GMT'] + etag: ['0x8D60992D4C4DD2E'] + last-modified: ['Fri, 24 Aug 2018 07:25:55 GMT'] + location: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/job-1'] + request-id: [1d4ca7d5-55c1-460d-a479-eddb9e831808] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -167,29 +167,28 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:54 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:55 GMT'] method: GET - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job2_8dcc0a7e?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job2_8dcc0a7e?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/$metadata#jobs/@Element\",\"id\":\"batch_job2_8dcc0a7e\",\"url\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job2_8dcc0a7e\",\"eTag\":\"0x8D588B0B90FF974\",\"lastModified\":\"2018-03-13T07:04:54.3246708Z\",\"creationTime\":\"2018-03-13T07:04:54.3116764Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:04:54.3246708Z\",\"priority\":0,\"usesTaskDependencies\":false,\"constraints\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.eastus.batch.azure.com/$metadata#jobs/@Element\",\"id\":\"batch_job2_8dcc0a7e\",\"url\":\"https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job2_8dcc0a7e\",\"eTag\":\"0x8D60992D4C4DD2E\",\"lastModified\":\"2018-08-24T07:25:55.9050542Z\",\"creationTime\":\"2018-08-24T07:25:55.8870069Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T07:25:55.9050542Z\",\"priority\":0,\"usesTaskDependencies\":false,\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"poolInfo\":{\r\n \"autoPoolSpecification\":{\r\n \"poolLifetimeOption\":\"job\",\"keepAlive\":false,\"pool\":{\r\n \ \"vmSize\":\"small\",\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"resizeTimeout\":\"PT15M\",\"targetDedicatedNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"cloudServiceConfiguration\":{\r\n \ \"osFamily\":\"5\",\"targetOSVersion\":\"*\"\r\n }\r\n }\r\n - \ }\r\n },\"executionInfo\":{\r\n \"startTime\":\"2018-03-13T07:04:54.3246708Z\",\"poolId\":\"B7FBF2D5-703B-471E-993D-BE5A218E8140\"\r\n + \ }\r\n },\"executionInfo\":{\r\n \"startTime\":\"2018-08-24T07:25:55.9050542Z\",\"poolId\":\"12314A8C-6F13-440C-B114-EC46A49DB295\"\r\n \ },\"onAllTasksComplete\":\"terminatejob\",\"onTaskFailure\":\"performexitoptionsjobaction\"\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:55 GMT'] - etag: ['0x8D588B0B90FF974'] - last-modified: ['Tue, 13 Mar 2018 07:04:54 GMT'] - request-id: [30a49eea-9dbd-4311-93c1-5414fe9fc79a] + date: ['Fri, 24 Aug 2018 07:25:55 GMT'] + etag: ['0x8D60992D4C4DD2E'] + last-modified: ['Fri, 24 Aug 2018 07:25:55 GMT'] + request-id: [493a1a6e-097f-47b8-9a82-1b1d7bc7fa09] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -201,16 +200,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:55 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:56 GMT'] method: GET - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/$metadata#jobs\",\"value\":[\r\n - \ {\r\n \"id\":\"batch_job1_8dcc0a7e\",\"url\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e\",\"eTag\":\"0x8D588B0B81B3FF1\",\"lastModified\":\"2018-03-13T07:04:52.7208433Z\",\"creationTime\":\"2018-03-13T07:04:51.2398732Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:04:51.2568229Z\",\"priority\":900,\"usesTaskDependencies\":false,\"constraints\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.eastus.batch.azure.com/$metadata#jobs\",\"value\":[\r\n + \ {\r\n \"id\":\"batch_job1_8dcc0a7e\",\"url\":\"https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e\",\"eTag\":\"0x8D60992D3C9FE7A\",\"lastModified\":\"2018-08-24T07:25:54.260953Z\",\"creationTime\":\"2018-08-24T07:25:52.5461111Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T07:25:52.6377614Z\",\"priority\":900,\"usesTaskDependencies\":false,\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":3\r\n \ },\"jobPreparationTask\":{\r\n \"id\":\"jobpreparation\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n @@ -224,22 +222,22 @@ interactions: \ \"vmSize\":\"small\",\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"resizeTimeout\":\"PT15M\",\"targetDedicatedNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"cloudServiceConfiguration\":{\r\n \ \"osFamily\":\"5\",\"targetOSVersion\":\"*\"\r\n }\r\n - \ }\r\n }\r\n },\"executionInfo\":{\r\n \"startTime\":\"2018-03-13T07:04:51.2568229Z\",\"poolId\":\"44822E5D-9333-4DE8-B357-138B922D74C7\"\r\n + \ }\r\n }\r\n },\"executionInfo\":{\r\n \"startTime\":\"2018-08-24T07:25:52.6377614Z\",\"poolId\":\"F1998748-A9F3-4162-8B53-2E40DBFC4F7D\"\r\n \ },\"onAllTasksComplete\":\"noaction\",\"onTaskFailure\":\"noaction\"\r\n - \ },{\r\n \"id\":\"batch_job2_8dcc0a7e\",\"url\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job2_8dcc0a7e\",\"eTag\":\"0x8D588B0B90FF974\",\"lastModified\":\"2018-03-13T07:04:54.3246708Z\",\"creationTime\":\"2018-03-13T07:04:54.3116764Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:04:54.3246708Z\",\"priority\":0,\"usesTaskDependencies\":false,\"constraints\":{\r\n + \ },{\r\n \"id\":\"batch_job2_8dcc0a7e\",\"url\":\"https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job2_8dcc0a7e\",\"eTag\":\"0x8D60992D4C4DD2E\",\"lastModified\":\"2018-08-24T07:25:55.9050542Z\",\"creationTime\":\"2018-08-24T07:25:55.8870069Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T07:25:55.9050542Z\",\"priority\":0,\"usesTaskDependencies\":false,\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"poolInfo\":{\r\n \"autoPoolSpecification\":{\r\n \"poolLifetimeOption\":\"job\",\"keepAlive\":false,\"pool\":{\r\n \ \"vmSize\":\"small\",\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"resizeTimeout\":\"PT15M\",\"targetDedicatedNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"cloudServiceConfiguration\":{\r\n \ \"osFamily\":\"5\",\"targetOSVersion\":\"*\"\r\n }\r\n - \ }\r\n }\r\n },\"executionInfo\":{\r\n \"startTime\":\"2018-03-13T07:04:54.3246708Z\",\"poolId\":\"B7FBF2D5-703B-471E-993D-BE5A218E8140\"\r\n + \ }\r\n }\r\n },\"executionInfo\":{\r\n \"startTime\":\"2018-08-24T07:25:55.9050542Z\",\"poolId\":\"12314A8C-6F13-440C-B114-EC46A49DB295\"\r\n \ },\"onAllTasksComplete\":\"terminatejob\",\"onTaskFailure\":\"performexitoptionsjobaction\"\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:55 GMT'] - request-id: [52be57c1-d580-4a01-b611-7c51fc492fc9] + date: ['Fri, 24 Aug 2018 07:25:57 GMT'] + request-id: [cfc71f59-d2d2-4280-95a3-b9d62c784c6d] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -253,21 +251,21 @@ interactions: Connection: [keep-alive] Content-Length: ['27'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:55 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:57 GMT'] method: POST - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e/disable?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e/disable?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e/disable'] + dataserviceid: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e/disable'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:56 GMT'] - etag: ['0x8D588B0BA5317DF'] - last-modified: ['Tue, 13 Mar 2018 07:04:56 GMT'] - request-id: [2527ff94-12de-41b8-87be-142a323ddf74] + date: ['Fri, 24 Aug 2018 07:25:57 GMT'] + etag: ['0x8D60992D63CCB5E'] + last-modified: ['Fri, 24 Aug 2018 07:25:58 GMT'] + request-id: [4e32a6d0-d9f6-451a-b4ad-832992a7f4dd] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -280,22 +278,21 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:56 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:58 GMT'] method: POST - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e/enable?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e/enable?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e/enable'] + dataserviceid: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e/enable'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:57 GMT'] - etag: ['0x8D588B0BAC35DB5'] - last-modified: ['Tue, 13 Mar 2018 07:04:57 GMT'] - request-id: [07c361e1-4790-439b-878a-076bf5298cc2] + date: ['Fri, 24 Aug 2018 07:25:59 GMT'] + etag: ['0x8D60992D6CA973D'] + last-modified: ['Fri, 24 Aug 2018 07:25:59 GMT'] + request-id: [173ddaa8-efeb-4a9e-99a4-d623bb505a64] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -307,21 +304,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:57 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:25:59 GMT'] method: GET - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e/jobpreparationandreleasetaskstatus?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e/jobpreparationandreleasetaskstatus?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/$metadata#jobpreparationandreleasetaskstatuslist\",\"value\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.eastus.batch.azure.com/$metadata#jobpreparationandreleasetaskstatuslist\",\"value\":[\r\n \ \r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:57 GMT'] - request-id: [fd2f40ea-ff73-4533-a7ad-c95872f01c3e] + date: ['Fri, 24 Aug 2018 07:25:59 GMT'] + request-id: [b450e14d-714b-441c-a66c-0552f9c25ebb] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -335,21 +331,21 @@ interactions: Connection: [keep-alive] Content-Length: ['0'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:57 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:26:00 GMT'] method: POST - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e/terminate?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e/terminate?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job1_8dcc0a7e/terminate'] + dataserviceid: ['https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job1_8dcc0a7e/terminate'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:58 GMT'] - etag: ['0x8D588B0BB8ADEB6'] - last-modified: ['Tue, 13 Mar 2018 07:04:58 GMT'] - request-id: [dfee7b62-30d4-4a6f-8c65-603072398b80] + date: ['Fri, 24 Aug 2018 07:26:00 GMT'] + etag: ['0x8D60992D7C9E61B'] + last-modified: ['Fri, 24 Aug 2018 07:26:00 GMT'] + request-id: [418de998-c8c6-4684-9dc3-680c58e3b37e] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -362,19 +358,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:58 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:26:01 GMT'] method: DELETE - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/jobs/batch_job2_8dcc0a7e?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/jobs/batch_job2_8dcc0a7e?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:59 GMT'] - request-id: [b2ef2a4f-73f4-44ef-a7f6-855740293ea4] + date: ['Fri, 24 Aug 2018 07:26:01 GMT'] + request-id: [b1c894bc-0414-4a1e-a22e-1fc76fa60170] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -386,20 +381,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:04:59 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:26:01 GMT'] method: GET - uri: https://batch8dcc0a7e.westcentralus.batch.azure.com/lifetimejobstats?api-version=2018-03-01.6.1 + uri: https://batch8dcc0a7e.eastus.batch.azure.com/lifetimejobstats?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/$metadata#jobstats/@Element\",\"url\":\"https://batch8dcc0a7e.westcentralus.batch.azure.com/lifetimejobstats\",\"startTime\":\"2018-03-13T07:04:33.4629284Z\",\"lastUpdateTime\":\"2018-03-13T07:04:33.4629284Z\",\"userCPUTime\":\"PT0S\",\"kernelCPUTime\":\"PT0S\",\"wallClockTime\":\"PT0S\",\"readIOps\":\"0\",\"writeIOps\":\"0\",\"readIOGiB\":0.0,\"writeIOGiB\":0.0,\"numTaskRetries\":\"0\",\"numSucceededTasks\":\"0\",\"numFailedTasks\":\"0\",\"waitTime\":\"PT0S\"\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batch8dcc0a7e.eastus.batch.azure.com/$metadata#jobstats/@Element\",\"url\":\"https://batch8dcc0a7e.eastus.batch.azure.com/lifetimejobstats\",\"startTime\":\"2018-08-24T07:25:33.4420121Z\",\"lastUpdateTime\":\"2018-08-24T07:25:33.4420121Z\",\"userCPUTime\":\"PT0S\",\"kernelCPUTime\":\"PT0S\",\"wallClockTime\":\"PT0S\",\"readIOps\":\"0\",\"writeIOps\":\"0\",\"readIOGiB\":0.0,\"writeIOGiB\":0.0,\"numTaskRetries\":\"0\",\"numSucceededTasks\":\"0\",\"numFailedTasks\":\"0\",\"waitTime\":\"PT0S\"\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:04:59 GMT'] - request-id: [edc92503-a9d9-4588-b2e7-ebaa31c35e88] + date: ['Fri, 24 Aug 2018 07:26:02 GMT'] + request-id: [3e68d07d-1ee0-4950-8487-bb5ce3063931] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_network_configuration.yaml b/azure-batch/tests/recordings/test_batch.test_batch_network_configuration.yaml index bd2b5ded31e4..1b5d1c67c0b1 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_network_configuration.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_network_configuration.yaml @@ -1,34 +1,34 @@ interactions: - request: - body: '{"id": "batch_network_814e11b1", "virtualMachineConfiguration": {"nodeAgentSKUId": - "batch.node.ubuntu 16.04", "imageReference": {"publisher": "Canonical", "sku": - "16.04-LTS", "offer": "UbuntuServer"}}, "targetDedicatedNodes": 1, "networkConfiguration": - {"endpointConfiguration": {"inboundNATPools": [{"networkSecurityGroupRules": - [{"access": "allow", "sourceAddressPrefix": "*", "priority": 150}], "frontendPortRangeEnd": - 61000, "protocol": "udp", "backendPort": 64444, "name": "TestEndpointConfig", - "frontendPortRangeStart": 60000}]}}, "vmSize": "Standard_A1"}' + body: '{"networkConfiguration": {"endpointConfiguration": {"inboundNATPools": + [{"name": "TestEndpointConfig", "frontendPortRangeStart": 60000, "protocol": + "udp", "networkSecurityGroupRules": [{"priority": 150, "access": "allow", "sourceAddressPrefix": + "*"}], "backendPort": 64444, "frontendPortRangeEnd": 61000}]}}, "virtualMachineConfiguration": + {"nodeAgentSKUId": "batch.node.ubuntu 16.04", "imageReference": {"sku": "16.04-LTS", + "publisher": "Canonical", "offer": "UbuntuServer"}}, "id": "batch_network_814e11b1", + "vmSize": "Standard_A1", "targetDedicatedNodes": 1}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['561'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:18:03 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:16:03 GMT'] method: POST - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1'] + dataserviceid: ['https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:18:03 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - location: ['https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1'] - request-id: [7932911c-0c07-4b85-9249-774ddee06d27] + date: ['Fri, 24 Aug 2018 20:16:04 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + location: ['https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1'] + request-id: [f7611808-717f-4743-aaec-426c0180b126] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -40,15 +40,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:18:04 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:16:04 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -59,10 +58,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:18:05 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [d29a4219-071d-4228-bee0-d937d1b97204] + date: ['Fri, 24 Aug 2018 20:16:05 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [f83455c5-38d6-419a-ade9-b99fe46b5e2c] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -74,15 +73,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:18:15 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:16:15 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -93,10 +91,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:18:15 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [bc14be14-54f3-4908-b091-bb48cda5a2f3] + date: ['Fri, 24 Aug 2018 20:16:16 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [a292565c-2200-48b5-b0f3-8e8fdd3fa7a5] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -108,15 +106,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:18:25 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:16:26 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -127,10 +124,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:18:26 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [079f902d-058a-4057-98f0-f612203279ff] + date: ['Fri, 24 Aug 2018 20:16:27 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [9067ca07-0074-4da1-b80b-fc7e6a69bc49] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -142,15 +139,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:18:36 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:16:37 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -161,10 +157,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:18:36 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [fd48ce63-720c-4f65-9aa3-ff253c6fdb82] + date: ['Fri, 24 Aug 2018 20:16:37 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [3de36f76-ad61-40d1-b383-c447d0ddf870] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -176,15 +172,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:18:47 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:16:48 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -195,10 +190,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:18:47 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [568cb179-29d4-4497-8591-256072f096c0] + date: ['Fri, 24 Aug 2018 20:16:48 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [d01b40e8-ebfb-4d0b-b431-c91c23cd8ea2] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -210,15 +205,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:18:58 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:16:59 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -229,10 +223,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:18:58 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [e5241049-d2cb-41e5-aef8-56d05377d0f8] + date: ['Fri, 24 Aug 2018 20:17:00 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [2facff88-7105-48fc-b011-05595c6ca073] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -244,15 +238,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:19:08 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:17:10 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -263,10 +256,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:19:09 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [70111b13-713b-48de-9de8-e9b29d9da914] + date: ['Fri, 24 Aug 2018 20:17:10 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [229d3392-668f-4b96-9aba-7f0992fe0579] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -278,15 +271,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:19:19 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:17:21 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":1,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -297,10 +289,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:19:20 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [df1e2585-5ab5-4d9a-9626-af2388036a25] + date: ['Fri, 24 Aug 2018 20:17:21 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [de98a84e-343f-4ff8-bd27-dfaffcda3dc5] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -312,15 +304,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:19:30 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:17:32 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D609FE6B4A66EA\",\"lastModified\":\"2018-08-24T20:16:04.5885162Z\",\"creationTime\":\"2018-08-24T20:16:04.5885162Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:16:04.5885162Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T20:17:22.8679984Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":1,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n @@ -331,10 +322,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:19:30 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [2fe58443-dff6-44c1-a602-53c557eaa2ad] + date: ['Fri, 24 Aug 2018 20:17:32 GMT'] + etag: ['0x8D609FE6B4A66EA'] + last-modified: ['Fri, 24 Aug 2018 20:16:04 GMT'] + request-id: [b1aabfa2-7ceb-43b7-8fe8-e5813673da57] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -346,92 +337,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:19:41 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:17:33 GMT'] method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 + uri: https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1/nodes?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"resizing\",\"allocationStateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n - \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n - \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n - \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n - \ \"endpointConfiguration\":{\r\n \"inboundNATPools\":[\r\n {\r\n - \ \"name\":\"TestEndpointConfig\",\"protocol\":\"udp\",\"backendPort\":64444,\"frontendPortRangeStart\":60000,\"frontendPortRangeEnd\":61000,\"networkSecurityGroupRules\":[\r\n - \ {\r\n \"priority\":150,\"access\":\"allow\",\"sourceAddressPrefix\":\"*\"\r\n - \ }\r\n ]\r\n }\r\n ]\r\n }\r\n }\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:19:41 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [2a380b0e-877a-469a-9a18-9ea286351580] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:19:51 GMT'] - method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_network_814e11b1\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1\",\"eTag\":\"0x8D5891F86F1F862\",\"lastModified\":\"2018-03-13T20:18:04.378941Z\",\"creationTime\":\"2018-03-13T20:18:04.378941Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T20:18:04.378941Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T20:19:47.4556644Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":1,\"targetDedicatedNodes\":1,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n - \ \"nodeFillType\":\"Spread\"\r\n },\"virtualMachineConfiguration\":{\r\n - \ \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n - \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n },\"networkConfiguration\":{\r\n - \ \"endpointConfiguration\":{\r\n \"inboundNATPools\":[\r\n {\r\n - \ \"name\":\"TestEndpointConfig\",\"protocol\":\"udp\",\"backendPort\":64444,\"frontendPortRangeStart\":60000,\"frontendPortRangeEnd\":61000,\"networkSecurityGroupRules\":[\r\n - \ {\r\n \"priority\":150,\"access\":\"allow\",\"sourceAddressPrefix\":\"*\"\r\n - \ }\r\n ]\r\n }\r\n ]\r\n }\r\n }\r\n}"} - headers: - content-type: [application/json;odata=minimalmetadata] - dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:19:52 GMT'] - etag: ['0x8D5891F86F1F862'] - last-modified: ['Tue, 13 Mar 2018 20:18:04 GMT'] - request-id: [aea5d4ba-432b-4a38-90ec-1354633431c8] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] - accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 20:19:52 GMT'] - method: GET - uri: https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1/nodes?api-version=2018-03-01.6.1 - response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.westcentralus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n - \ {\r\n \"id\":\"tvm-3687402588_1-20180313t201945z\",\"url\":\"https://batch814e11b1.westcentralus.batch.azure.com/pools/batch_network_814e11b1/nodes/tvm-3687402588_1-20180313t201945z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-03-13T20:19:46.0478554Z\",\"allocationTime\":\"2018-03-13T20:19:45.9328619Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3687402588_1-20180313t201945z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n - \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"TestEndpointConfig.0\",\"protocol\":\"udp\",\"publicIPAddress\":\"52.161.165.180\",\"publicFQDN\":\"dnsf7f05a77-7745-483b-a022-6e4f4ed8fc36-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":60000,\"backendPort\":64444\r\n - \ },{\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"52.161.165.180\",\"publicFQDN\":\"dnsf7f05a77-7745-483b-a022-6e4f4ed8fc36-azurebatch-cloudservice.westcentralus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch814e11b1.eastus.batch.azure.com/$metadata#nodes\",\"value\":[\r\n + \ {\r\n \"id\":\"tvm-3257026573_1-20180824t201721z\",\"url\":\"https://batch814e11b1.eastus.batch.azure.com/pools/batch_network_814e11b1/nodes/tvm-3257026573_1-20180824t201721z\",\"state\":\"starting\",\"schedulingState\":\"enabled\",\"stateTransitionTime\":\"2018-08-24T20:17:21.4396866Z\",\"allocationTime\":\"2018-08-24T20:17:21.3916858Z\",\"ipAddress\":\"10.0.0.4\",\"affinityId\":\"TVM:tvm-3257026573_1-20180824t201721z\",\"vmSize\":\"standard_a1\",\"totalTasksRun\":0,\"isDedicated\":true,\"endpointConfiguration\":{\r\n + \ \"inboundEndpoints\":[\r\n {\r\n \"name\":\"TestEndpointConfig.0\",\"protocol\":\"udp\",\"publicIPAddress\":\"40.87.86.71\",\"publicFQDN\":\"dns2e9c387d-61c2-4235-aaac-d44ac5298785-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":60000,\"backendPort\":64444\r\n + \ },{\r\n \"name\":\"SSHRule.0\",\"protocol\":\"tcp\",\"publicIPAddress\":\"40.87.86.71\",\"publicFQDN\":\"dns2e9c387d-61c2-4235-aaac-d44ac5298785-azurebatch-cloudservice.eastus.cloudapp.azure.com\",\"frontendPort\":50000,\"backendPort\":22\r\n \ }\r\n ]\r\n }\r\n }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 20:19:52 GMT'] - request-id: [adbd27f6-dc38-4698-b58a-e65766333d41] + date: ['Fri, 24 Aug 2018 20:17:33 GMT'] + request-id: [752cace0-852e-4fee-b0cc-6fb67355e203] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_scale_pools.yaml b/azure-batch/tests/recordings/test_batch.test_batch_scale_pools.yaml index a3663e4c4391..d3d3cfaede31 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_scale_pools.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_scale_pools.yaml @@ -7,21 +7,21 @@ interactions: Connection: [keep-alive] Content-Length: ['86'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:36:56 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:44:42 GMT'] method: POST - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/enableautoscale?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/enableautoscale?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/enableautoscale'] + dataserviceid: ['https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/enableautoscale'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:36:56 GMT'] - etag: ['0x8D58919C88075BC'] - last-modified: ['Tue, 13 Mar 2018 19:36:57 GMT'] - request-id: [e7c64e52-b2f5-4302-9bac-6ad3a6973ba8] + date: ['Fri, 24 Aug 2018 20:44:43 GMT'] + etag: ['0x8D60A026BD62AAD'] + last-modified: ['Fri, 24 Aug 2018 20:44:43 GMT'] + request-id: [c33d295e-3e29-4304-8bea-8d19e1fc3a1e] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -35,20 +35,20 @@ interactions: Connection: [keep-alive] Content-Length: ['47'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:36:57 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:44:43 GMT'] method: POST - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/evaluateautoscale?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/evaluateautoscale?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.westcentralus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.AutoScaleRun\",\"timestamp\":\"2018-03-13T19:36:58.1241258Z\",\"results\":\"$TargetDedicatedNodes=3;$TargetLowPriorityNodes=0;$NodeDeallocationOption=requeue\"\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.AutoScaleRun\",\"timestamp\":\"2018-08-24T20:44:44.2335554Z\",\"results\":\"$TargetDedicatedNodes=3;$TargetLowPriorityNodes=0;$NodeDeallocationOption=requeue\"\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] - dataserviceid: ['https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/evaluateautoscale'] + dataserviceid: ['https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/evaluateautoscale'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:36:58 GMT'] - request-id: [85563fca-bd08-4228-967d-37666cc74c09] + date: ['Fri, 24 Aug 2018 20:44:43 GMT'] + request-id: [b4499393-2d33-4256-84d8-311c24c79a5f] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -61,22 +61,21 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:36:58 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:44:44 GMT'] method: POST - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/disableautoscale?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/disableautoscale?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/disableautoscale'] + dataserviceid: ['https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/disableautoscale'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:36:58 GMT'] - etag: ['0x8D58919C93D1047'] - last-modified: ['Tue, 13 Mar 2018 19:36:58 GMT'] - request-id: [ebecf632-dc00-4d08-805f-c21a713ce4c8] + date: ['Fri, 24 Aug 2018 20:44:45 GMT'] + etag: ['0x8D60A026CCB4EB3'] + last-modified: ['Fri, 24 Aug 2018 20:44:45 GMT'] + request-id: [823b52f4-d2b1-477a-a258-c2e7cdcda5ef] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -88,15 +87,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:36:58 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:44:45 GMT'] method: GET - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D58919C93D1047\",\"lastModified\":\"2018-03-13T19:36:58.6203207Z\",\"creationTime\":\"2018-03-13T19:36:56.7133662Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T19:36:56.7133662Z\",\"allocationState\":\"stopping\",\"allocationStateTransitionTime\":\"2018-03-13T19:36:58.6203207Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"userAccounts\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D60A026CCB4EB3\",\"lastModified\":\"2018-08-24T20:44:45.0979507Z\",\"creationTime\":\"2018-08-24T20:44:42.4496124Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:44:42.4496124Z\",\"allocationState\":\"stopping\",\"allocationStateTransitionTime\":\"2018-08-24T20:44:45.0979507Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"userAccounts\":[\r\n \ {\r\n \"name\":\"task-user\",\"elevationLevel\":\"admin\"\r\n }\r\n \ ],\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \"nodeFillType\":\"Spread\"\r\n \ },\"virtualMachineConfiguration\":{\r\n \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n @@ -104,10 +102,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:36:58 GMT'] - etag: ['0x8D58919C93D1047'] - last-modified: ['Tue, 13 Mar 2018 19:36:58 GMT'] - request-id: [38d60718-04b8-4e28-81bb-54f925abf768] + date: ['Fri, 24 Aug 2018 20:44:46 GMT'] + etag: ['0x8D60A026CCB4EB3'] + last-modified: ['Fri, 24 Aug 2018 20:44:45 GMT'] + request-id: [59b8926b-2490-486a-a32d-68c0462462ff] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -119,15 +117,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:37:19 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:45:06 GMT'] method: GET - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D58919C93D1047\",\"lastModified\":\"2018-03-13T19:36:58.6203207Z\",\"creationTime\":\"2018-03-13T19:36:56.7133662Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T19:36:56.7133662Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T19:37:09.3463141Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"resizeErrors\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D60A026CCB4EB3\",\"lastModified\":\"2018-08-24T20:44:45.0979507Z\",\"creationTime\":\"2018-08-24T20:44:42.4496124Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:44:42.4496124Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T20:44:57.4198238Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"resizeErrors\":[\r\n \ {\r\n \"code\":\"ResizeStopped\",\"message\":\"Desired number of dedicated nodes could not be allocated due to a stop resize operation\"\r\n \ }\r\n ],\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"userAccounts\":[\r\n @@ -138,38 +135,38 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:37:19 GMT'] - etag: ['0x8D58919C93D1047'] - last-modified: ['Tue, 13 Mar 2018 19:36:58 GMT'] - request-id: [78ecedfd-c9bc-4701-a66f-4e3644e4054e] + date: ['Fri, 24 Aug 2018 20:45:06 GMT'] + etag: ['0x8D60A026CCB4EB3'] + last-modified: ['Fri, 24 Aug 2018 20:44:45 GMT'] + request-id: [37228ed7-9a60-4932-954a-9eb99fe1e29c] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"targetDedicatedNodes": 0, "targetLowPriorityNodes": 2}' + body: '{"targetLowPriorityNodes": 2, "targetDedicatedNodes": 0}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['56'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:37:19 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:45:07 GMT'] method: POST - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/resize?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/resize?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/resize'] + dataserviceid: ['https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/resize'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:37:20 GMT'] - etag: ['0x8D58919D60AB15A'] - last-modified: ['Tue, 13 Mar 2018 19:37:20 GMT'] - request-id: [6824bcd0-117d-4462-90f8-2eff080e4de5] + date: ['Fri, 24 Aug 2018 20:45:07 GMT'] + etag: ['0x8D60A027A4FF116'] + last-modified: ['Fri, 24 Aug 2018 20:45:07 GMT'] + request-id: [e54c798c-4a77-46f1-bacc-682337708946] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -182,22 +179,21 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:37:20 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:45:07 GMT'] method: POST - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/stopresize?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/stopresize?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/stopresize'] + dataserviceid: ['https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64/stopresize'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:37:19 GMT'] - etag: ['0x8D58919D657B031'] - last-modified: ['Tue, 13 Mar 2018 19:37:20 GMT'] - request-id: [4b457d24-cca4-4b8f-bc61-8ddb8fb0ae8f] + date: ['Fri, 24 Aug 2018 20:45:08 GMT'] + etag: ['0x8D60A027AD3E02F'] + last-modified: ['Fri, 24 Aug 2018 20:45:08 GMT'] + request-id: [d3a9644c-3b3a-4a83-b137-21e6b8f131a5] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -209,15 +205,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:37:20 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:45:08 GMT'] method: GET - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D58919D657B031\",\"lastModified\":\"2018-03-13T19:37:20.6051889Z\",\"creationTime\":\"2018-03-13T19:36:56.7133662Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T19:36:56.7133662Z\",\"allocationState\":\"stopping\",\"allocationStateTransitionTime\":\"2018-03-13T19:37:20.6051889Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":2,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"userAccounts\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D60A027AD3E02F\",\"lastModified\":\"2018-08-24T20:45:08.6422063Z\",\"creationTime\":\"2018-08-24T20:44:42.4496124Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:44:42.4496124Z\",\"allocationState\":\"stopping\",\"allocationStateTransitionTime\":\"2018-08-24T20:45:08.6422063Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":2,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"userAccounts\":[\r\n \ {\r\n \"name\":\"task-user\",\"elevationLevel\":\"admin\"\r\n }\r\n \ ],\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \"nodeFillType\":\"Spread\"\r\n \ },\"virtualMachineConfiguration\":{\r\n \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n @@ -225,10 +220,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:37:21 GMT'] - etag: ['0x8D58919D657B031'] - last-modified: ['Tue, 13 Mar 2018 19:37:20 GMT'] - request-id: [fff6e422-b6ce-495e-9871-b7b2da0eebe2] + date: ['Fri, 24 Aug 2018 20:45:08 GMT'] + etag: ['0x8D60A027AD3E02F'] + last-modified: ['Fri, 24 Aug 2018 20:45:08 GMT'] + request-id: [ad4db1ba-d439-484c-b9d2-ced469a28f85] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -240,15 +235,44 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:37:41 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:45:29 GMT'] method: GET - uri: https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.westcentralus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D58919D657B031\",\"lastModified\":\"2018-03-13T19:37:20.6051889Z\",\"creationTime\":\"2018-03-13T19:36:56.7133662Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T19:36:56.7133662Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T19:37:29.3685714Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":2,\"resizeErrors\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D60A027AD3E02F\",\"lastModified\":\"2018-08-24T20:45:08.6422063Z\",\"creationTime\":\"2018-08-24T20:44:42.4496124Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:44:42.4496124Z\",\"allocationState\":\"stopping\",\"allocationStateTransitionTime\":\"2018-08-24T20:45:08.6422063Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":2,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"userAccounts\":[\r\n + \ {\r\n \"name\":\"task-user\",\"elevationLevel\":\"admin\"\r\n }\r\n + \ ],\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \"nodeFillType\":\"Spread\"\r\n + \ },\"virtualMachineConfiguration\":{\r\n \"imageReference\":{\r\n \"publisher\":\"Canonical\",\"offer\":\"UbuntuServer\",\"sku\":\"16.04-LTS\",\"version\":\"latest\"\r\n + \ },\"nodeAgentSKUId\":\"batch.node.ubuntu 16.04\"\r\n }\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Fri, 24 Aug 2018 20:45:30 GMT'] + etag: ['0x8D60A027AD3E02F'] + last-modified: ['Fri, 24 Aug 2018 20:45:08 GMT'] + request-id: [7bbf47fe-aa5c-4f8e-9dd2-f7500f351599] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Fri, 24 Aug 2018 20:45:50 GMT'] + method: GET + uri: https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"test_batch_test_batch_scale_poolse2690d64\",\"url\":\"https://batche2690d64.eastus.batch.azure.com/pools/test_batch_test_batch_scale_poolse2690d64\",\"eTag\":\"0x8D60A027AD3E02F\",\"lastModified\":\"2018-08-24T20:45:08.6422063Z\",\"creationTime\":\"2018-08-24T20:44:42.4496124Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T20:44:42.4496124Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T20:45:47.498314Z\",\"vmSize\":\"standard_a1\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":2,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":2,\"resizeErrors\":[\r\n \ {\r\n \"code\":\"ResizeStopped\",\"message\":\"Desired number of dedicated nodes could not be allocated due to a stop resize operation\"\r\n \ },{\r\n \"code\":\"ResizeStopped\",\"message\":\"Desired number of @@ -261,10 +285,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:37:41 GMT'] - etag: ['0x8D58919D657B031'] - last-modified: ['Tue, 13 Mar 2018 19:37:20 GMT'] - request-id: [9a6dbd9e-bdc3-4c7a-a66a-04724d949c81] + date: ['Fri, 24 Aug 2018 20:45:50 GMT'] + etag: ['0x8D60A027AD3E02F'] + last-modified: ['Fri, 24 Aug 2018 20:45:08 GMT'] + request-id: [3f077bb1-a13c-4078-bce5-1e3bfd34abd6] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -276,23 +300,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:37:41 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:45:51 GMT'] method: GET - uri: https://batche2690d64.westcentralus.batch.azure.com/lifetimepoolstats?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/lifetimepoolstats?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.westcentralus.batch.azure.com/$metadata#poolstats/@Element\",\"url\":\"https://batche2690d64.westcentralus.batch.azure.com/lifetimepoolstats\",\"usageStats\":{\r\n - \ \"startTime\":\"2018-03-13T19:36:38.590799Z\",\"lastUpdateTime\":\"2018-03-13T19:36:38.590799Z\",\"dedicatedCoreTime\":\"PT0S\"\r\n - \ },\"resourceStats\":{\r\n \"startTime\":\"2018-03-13T19:36:38.590799Z\",\"diskReadIOps\":\"0\",\"diskWriteIOps\":\"0\",\"lastUpdateTime\":\"2018-03-13T19:36:38.590799Z\",\"avgCPUPercentage\":0.0,\"avgMemoryGiB\":0.0,\"peakMemoryGiB\":0.0,\"avgDiskGiB\":0.0,\"peakDiskGiB\":0.0,\"diskReadGiB\":0.0,\"diskWriteGiB\":0.0,\"networkReadGiB\":0.0,\"networkWriteGiB\":0.0\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.eastus.batch.azure.com/$metadata#poolstats/@Element\",\"url\":\"https://batche2690d64.eastus.batch.azure.com/lifetimepoolstats\",\"usageStats\":{\r\n + \ \"startTime\":\"2018-08-24T20:44:22.9780495Z\",\"lastUpdateTime\":\"2018-08-24T20:44:22.9780495Z\",\"dedicatedCoreTime\":\"PT0S\"\r\n + \ },\"resourceStats\":{\r\n \"startTime\":\"2018-08-24T20:44:22.9780495Z\",\"diskReadIOps\":\"0\",\"diskWriteIOps\":\"0\",\"lastUpdateTime\":\"2018-08-24T20:44:22.9780495Z\",\"avgCPUPercentage\":0.0,\"avgMemoryGiB\":0.0,\"peakMemoryGiB\":0.0,\"avgDiskGiB\":0.0,\"peakDiskGiB\":0.0,\"diskReadGiB\":0.0,\"diskWriteGiB\":0.0,\"networkReadGiB\":0.0,\"networkWriteGiB\":0.0\r\n \ }\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:37:42 GMT'] - request-id: [2dc933e5-fe2f-4ac6-a8ab-019bdec3d9fe] + date: ['Fri, 24 Aug 2018 20:45:51 GMT'] + request-id: [5db8cd60-cc01-4646-a46e-faf20751d7d8] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -304,21 +327,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 19:37:42 GMT'] + ocp-date: ['Fri, 24 Aug 2018 20:45:52 GMT'] method: GET - uri: https://batche2690d64.westcentralus.batch.azure.com/poolusagemetrics?api-version=2018-03-01.6.1 + uri: https://batche2690d64.eastus.batch.azure.com/poolusagemetrics?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.westcentralus.batch.azure.com/$metadata#poolusagemetrics\",\"value\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batche2690d64.eastus.batch.azure.com/$metadata#poolusagemetrics\",\"value\":[\r\n \ \r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 19:37:42 GMT'] - request-id: [337b01ec-c5d6-4aa7-bd3d-0a2d1b26af9f] + date: ['Fri, 24 Aug 2018 20:45:53 GMT'] + request-id: [57d88dc0-44e8-4ad9-a40b-c1ce71a564ea] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_tasks.yaml b/azure-batch/tests/recordings/test_batch.test_batch_tasks.yaml index f03e47e10417..f72f2c6b38e9 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_tasks.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_tasks.yaml @@ -1,31 +1,31 @@ interactions: - request: - body: '{"id": "batch_task1_98da0af6", "exitConditions": {"exitCodeRanges": [{"exitOptions": - {"jobAction": "disable"}, "start": 2, "end": 4}], "exitCodes": [{"exitOptions": - {"jobAction": "terminate"}, "code": 1}], "default": {"jobAction": "none"}}, - "commandLine": "cmd /c \"echo hello world\""}' + body: '{"id": "batch_task1_98da0af6", "commandLine": "cmd /c \"echo hello world\"", + "exitConditions": {"exitCodes": [{"code": 1, "exitOptions": {"jobAction": "terminate"}}], + "exitCodeRanges": [{"start": 2, "end": 4, "exitOptions": {"jobAction": "disable"}}], + "default": {"jobAction": "none"}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['286'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:20 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:13 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6'] + dataserviceid: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:21 GMT'] - etag: ['0x8D588B2BD987D15'] - last-modified: ['Tue, 13 Mar 2018 07:19:20 GMT'] - location: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6'] - request-id: [1be57010-0f2e-4f73-9f86-b16cd1e19da0] + date: ['Thu, 13 Sep 2018 20:24:13 GMT'] + etag: ['0x8D619B6DF299ACC'] + last-modified: ['Thu, 13 Sep 2018 20:24:13 GMT'] + location: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6'] + request-id: [b598e238-ad4b-4809-8eae-a38eccb5cb8c] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -37,15 +37,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:21 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:13 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task1_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6\",\"eTag\":\"0x8D588B2BD987D15\",\"creationTime\":\"2018-03-13T07:19:20.9236757Z\",\"lastModified\":\"2018-03-13T07:19:20.9236757Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:20.9236757Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task1_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6\",\"eTag\":\"0x8D619B6DF299ACC\",\"creationTime\":\"2018-09-13T20:24:13.8291916Z\",\"lastModified\":\"2018-09-13T20:24:13.8291916Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:13.8291916Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"exitConditions\":{\r\n \ \"exitCodes\":[\r\n {\r\n \"code\":1,\"exitOptions\":{\r\n @@ -57,44 +56,45 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:20 GMT'] - etag: ['0x8D588B2BD987D15'] - last-modified: ['Tue, 13 Mar 2018 07:19:20 GMT'] - request-id: [ca3c6262-3d27-4dce-8bf1-412c9b910866] + date: ['Thu, 13 Sep 2018 20:24:14 GMT'] + etag: ['0x8D619B6DF299ACC'] + last-modified: ['Thu, 13 Sep 2018 20:24:13 GMT'] + request-id: [52be7545-389e-467e-a220-c391b3c77bbc] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"outputFiles": [{"destination": {"container": {"path": "taskLogs/output.txt", - "containerUrl": "https://test.blob.core.windows.net:443/test-container"}}, "filePattern": - "../stdout.txt", "uploadOptions": {"uploadCondition": "taskcompletion"}}, {"destination": - {"container": {"path": "taskLogs/error.txt", "containerUrl": "https://test.blob.core.windows.net:443/test-container"}}, - "filePattern": "../stderr.txt", "uploadOptions": {"uploadCondition": "taskfailure"}}], - "id": "batch_task2_98da0af6", "commandLine": "cmd /c \"echo hello world\""}' + body: '{"id": "batch_task2_98da0af6", "commandLine": "cmd /c \"echo hello world\"", + "outputFiles": [{"filePattern": "../stdout.txt", "destination": {"container": + {"path": "taskLogs/output.txt", "containerUrl": "https://test.blob.core.windows.net:443/test-container"}}, + "uploadOptions": {"uploadCondition": "taskcompletion"}}, {"filePattern": "../stderr.txt", + "destination": {"container": {"path": "taskLogs/error.txt", "containerUrl": + "https://test.blob.core.windows.net:443/test-container"}}, "uploadOptions": + {"uploadCondition": "taskfailure"}}]}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['541'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:21 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:14 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6'] + dataserviceid: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:22 GMT'] - etag: ['0x8D588B2BE6D7D4C'] - last-modified: ['Tue, 13 Mar 2018 07:19:22 GMT'] - location: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6'] - request-id: [77287e1d-c92b-4c84-bb66-b8606427b335] + date: ['Thu, 13 Sep 2018 20:24:14 GMT'] + etag: ['0x8D619B6E00C2310'] + last-modified: ['Thu, 13 Sep 2018 20:24:15 GMT'] + location: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6'] + request-id: [280f0faf-bc96-4870-bc66-8aab0b0a348b] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -106,15 +106,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:22 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:15 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task2_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6\",\"eTag\":\"0x8D588B2BE6D7D4C\",\"creationTime\":\"2018-03-13T07:19:22.319598Z\",\"lastModified\":\"2018-03-13T07:19:22.319598Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:22.319598Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task2_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6\",\"eTag\":\"0x8D619B6E00C2310\",\"creationTime\":\"2018-09-13T20:24:15.3137936Z\",\"lastModified\":\"2018-09-13T20:24:15.3137936Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:15.3137936Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"outputFiles\":[\r\n {\r\n \"filePattern\":\"../stdout.txt\",\"destination\":{\r\n \ \"container\":{\r\n \"containerUrl\":\"https://test.blob.core.windows.net:443/test-container\",\"path\":\"taskLogs/output.txt\"\r\n \ }\r\n },\"uploadOptions\":{\r\n \"uploadCondition\":\"TaskCompletion\"\r\n @@ -127,40 +126,40 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:22 GMT'] - etag: ['0x8D588B2BE6D7D4C'] - last-modified: ['Tue, 13 Mar 2018 07:19:22 GMT'] - request-id: [7c5b30da-1bac-4e3a-acd6-b07316a559a4] + date: ['Thu, 13 Sep 2018 20:24:16 GMT'] + etag: ['0x8D619B6E00C2310'] + last-modified: ['Thu, 13 Sep 2018 20:24:15 GMT'] + request-id: [0a175a8b-0d20-4ed4-8da9-9de0c79b9658] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"userIdentity": {"autoUser": {"elevationLevel": "admin", "scope": "task"}}, - "id": "batch_task3_98da0af6", "commandLine": "cmd /c \"echo hello world\""}' + body: '{"id": "batch_task3_98da0af6", "commandLine": "cmd /c \"echo hello world\"", + "userIdentity": {"autoUser": {"scope": "task", "elevationLevel": "admin"}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['152'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:23 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:16 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6'] + dataserviceid: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:23 GMT'] - etag: ['0x8D588B2BF377EFE'] - last-modified: ['Tue, 13 Mar 2018 07:19:23 GMT'] - location: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6'] - request-id: [abd37af1-1bd3-43f9-954f-29e87f9df750] + date: ['Thu, 13 Sep 2018 20:24:16 GMT'] + etag: ['0x8D619B6E0E932B1'] + last-modified: ['Thu, 13 Sep 2018 20:24:16 GMT'] + location: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6'] + request-id: [4f897b0a-5ba3-4f9b-8514-2f65fe449faf] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -172,15 +171,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:23 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:16 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task3_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6\",\"eTag\":\"0x8D588B2BF377EFE\",\"creationTime\":\"2018-03-13T07:19:23.6434686Z\",\"lastModified\":\"2018-03-13T07:19:23.6434686Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:23.6434686Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task3_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6\",\"eTag\":\"0x8D619B6E0E932B1\",\"creationTime\":\"2018-09-13T20:24:16.7625393Z\",\"lastModified\":\"2018-09-13T20:24:16.7625393Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:16.7625393Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"scope\":\"task\",\"elevationLevel\":\"admin\"\r\n }\r\n },\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n @@ -188,40 +186,40 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:24 GMT'] - etag: ['0x8D588B2BF377EFE'] - last-modified: ['Tue, 13 Mar 2018 07:19:23 GMT'] - request-id: [68d7abe8-ea7d-45c7-9273-f660710f8d52] + date: ['Thu, 13 Sep 2018 20:24:17 GMT'] + etag: ['0x8D619B6E0E932B1'] + last-modified: ['Thu, 13 Sep 2018 20:24:16 GMT'] + request-id: [6a321b07-a30e-4e14-a475-ed010e819c5a] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"authenticationTokenSettings": {"access": ["job"]}, "id": "batch_task4_98da0af6", - "commandLine": "cmd /c \"echo hello world\""}' + body: '{"id": "batch_task4_98da0af6", "commandLine": "cmd /c \"echo hello world\"", + "authenticationTokenSettings": {"access": ["job"]}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['128'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:24 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:17 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6'] + dataserviceid: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:24 GMT'] - etag: ['0x8D588B2BFE96388'] - last-modified: ['Tue, 13 Mar 2018 07:19:24 GMT'] - location: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6'] - request-id: [b2853a10-57c3-480d-81a9-cff30ffe6aa6] + date: ['Thu, 13 Sep 2018 20:24:18 GMT'] + etag: ['0x8D619B6E1B80467'] + last-modified: ['Thu, 13 Sep 2018 20:24:18 GMT'] + location: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6'] + request-id: [7205b4d0-f9d7-463b-9a7d-9dca01d3c6b4] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -233,15 +231,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:24 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:18 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task4_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6\",\"eTag\":\"0x8D588B2BFE96388\",\"creationTime\":\"2018-03-13T07:19:24.8093064Z\",\"lastModified\":\"2018-03-13T07:19:24.8093064Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:24.8093064Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task4_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6\",\"eTag\":\"0x8D619B6E1B80467\",\"creationTime\":\"2018-09-13T20:24:18.1179495Z\",\"lastModified\":\"2018-09-13T20:24:18.1179495Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:18.1179495Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"authenticationTokenSettings\":{\r\n \ \"access\":[\r\n \"job\"\r\n ]\r\n },\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n @@ -249,10 +246,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:25 GMT'] - etag: ['0x8D588B2BFE96388'] - last-modified: ['Tue, 13 Mar 2018 07:19:24 GMT'] - request-id: [1383fbb0-2b40-4ee7-bb83-1caf68ba4ca4] + date: ['Thu, 13 Sep 2018 20:24:17 GMT'] + etag: ['0x8D619B6E1B80467'] + last-modified: ['Thu, 13 Sep 2018 20:24:18 GMT'] + request-id: [0528c98a-ffb5-425e-b506-1073eeb9ebfd] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -260,30 +257,30 @@ interactions: status: {code: 200, message: OK} - request: body: '{"id": "batch_task5_98da0af6", "commandLine": "cmd /c \"echo hello world\"", - "containerSettings": {"registry": {"password": "password", "username": "username"}, - "imageName": "windows_container:latest"}}' + "containerSettings": {"imageName": "windows_container:latest", "registry": {"username": + "username", "password": "password"}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['202'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:25 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:18 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6'] + dataserviceid: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:25 GMT'] - etag: ['0x8D588B2C07CDB26'] - last-modified: ['Tue, 13 Mar 2018 07:19:25 GMT'] - location: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6'] - request-id: [3a5d380e-66fb-4e22-871e-d8fe1589ed9c] + date: ['Thu, 13 Sep 2018 20:24:19 GMT'] + etag: ['0x8D619B6E294BE8E'] + last-modified: ['Thu, 13 Sep 2018 20:24:19 GMT'] + location: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6'] + request-id: [9536888b-a663-420d-a5c9-97e83c98edbe] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -295,15 +292,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:25 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:19 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task5_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6\",\"eTag\":\"0x8D588B2C07CDB26\",\"creationTime\":\"2018-03-13T07:19:25.7757478Z\",\"lastModified\":\"2018-03-13T07:19:25.7757478Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:25.7757478Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task5_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6\",\"eTag\":\"0x8D619B6E294BE8E\",\"creationTime\":\"2018-09-13T20:24:19.564507Z\",\"lastModified\":\"2018-09-13T20:24:19.564507Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:19.564507Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"containerSettings\":{\r\n \"imageName\":\"windows_container:latest\",\"registry\":{\r\n \ \"username\":\"username\"\r\n }\r\n },\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"constraints\":{\r\n @@ -312,40 +308,40 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:26 GMT'] - etag: ['0x8D588B2C07CDB26'] - last-modified: ['Tue, 13 Mar 2018 07:19:25 GMT'] - request-id: [d64d30d1-1e74-4b45-96ab-06326abd9652] + date: ['Thu, 13 Sep 2018 20:24:19 GMT'] + etag: ['0x8D619B6E294BE8E'] + last-modified: ['Thu, 13 Sep 2018 20:24:19 GMT'] + request-id: [fb107f3f-c564-4eac-9dbc-6403834e8c31] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"userIdentity": {"username": "task-user"}, "id": "batch_task6_98da0af6", - "commandLine": "cmd /c \"echo hello world\""}' + body: '{"id": "batch_task6_98da0af6", "commandLine": "cmd /c \"echo hello world\"", + "userIdentity": {"username": "task-user"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['119'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:26 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:20 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6'] + dataserviceid: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:26 GMT'] - etag: ['0x8D588B2C114BD85'] - last-modified: ['Tue, 13 Mar 2018 07:19:26 GMT'] - location: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6'] - request-id: [846f8242-76a1-4b9e-99c0-76bcb9f15af9] + date: ['Thu, 13 Sep 2018 20:24:20 GMT'] + etag: ['0x8D619B6E37706DD'] + last-modified: ['Thu, 13 Sep 2018 20:24:21 GMT'] + location: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6'] + request-id: [b86fb5e6-efbc-473a-9fb3-2f08d89fad17] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -357,34 +353,33 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:26 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:21 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task6_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6\",\"eTag\":\"0x8D588B2C114BD85\",\"creationTime\":\"2018-03-13T07:19:26.7711365Z\",\"lastModified\":\"2018-03-13T07:19:26.7711365Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:26.7711365Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task6_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6\",\"eTag\":\"0x8D619B6E37706DD\",\"creationTime\":\"2018-09-13T20:24:21.0474717Z\",\"lastModified\":\"2018-09-13T20:24:21.0474717Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:21.0474717Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"username\":\"task-user\"\r\n \ },\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n }\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:27 GMT'] - etag: ['0x8D588B2C114BD85'] - last-modified: ['Tue, 13 Mar 2018 07:19:26 GMT'] - request-id: [e4dc402f-65d5-4560-8604-0faaaf19938a] + date: ['Thu, 13 Sep 2018 20:24:21 GMT'] + etag: ['0x8D619B6E37706DD'] + last-modified: ['Thu, 13 Sep 2018 20:24:21 GMT'] + request-id: [0d037480-1739-4bf9-89cc-2459af87edcf] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"value": [{"id": "batch_task7_98da0af6", "commandLine": "cmd /c \"echo + body: '{"value": [{"id": "batch_task9_98da0af6", "commandLine": "cmd /c \"echo hello world\""}, {"id": "batch_task8_98da0af6", "commandLine": "cmd /c \"echo - hello world\""}, {"id": "batch_task9_98da0af6", "commandLine": "cmd /c \"echo + hello world\""}, {"id": "batch_task7_98da0af6", "commandLine": "cmd /c \"echo hello world\""}]}' headers: Accept: [application/json] @@ -392,23 +387,23 @@ interactions: Connection: [keep-alive] Content-Length: ['245'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:27 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:21 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n - \ {\r\n \"status\":\"Success\",\"taskId\":\"batch_task7_98da0af6\",\"eTag\":\"0x8D588B2C1CB7401\",\"lastModified\":\"2018-03-13T07:19:27.9685633Z\",\"location\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task7_98da0af6\"\r\n - \ },{\r\n \"status\":\"Success\",\"taskId\":\"batch_task9_98da0af6\",\"eTag\":\"0x8D588B2C1CF1D7A\",\"lastModified\":\"2018-03-13T07:19:27.9925626Z\",\"location\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task9_98da0af6\"\r\n - \ },{\r\n \"status\":\"Success\",\"taskId\":\"batch_task8_98da0af6\",\"eTag\":\"0x8D588B2C1D030B3\",\"lastModified\":\"2018-03-13T07:19:27.9996083Z\",\"location\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task8_98da0af6\"\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"batch_task9_98da0af6\",\"eTag\":\"0x8D619B6E45832CE\",\"lastModified\":\"2018-09-13T20:24:22.5231566Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task9_98da0af6\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"batch_task8_98da0af6\",\"eTag\":\"0x8D619B6E459B3D7\",\"lastModified\":\"2018-09-13T20:24:22.5330135Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task8_98da0af6\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"batch_task7_98da0af6\",\"eTag\":\"0x8D619B6E45A7C26\",\"lastModified\":\"2018-09-13T20:24:22.5381414Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task7_98da0af6\"\r\n \ }\r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:28 GMT'] - request-id: [bca1cd40-6c7c-4222-8953-c126668f3aca] + date: ['Thu, 13 Sep 2018 20:24:22 GMT'] + request-id: [1898479f-6559-4c79-89ab-92ac6616a1ed] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -420,16 +415,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:28 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:22 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks\",\"value\":[\r\n - \ {\r\n \"id\":\"batch_task1_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6\",\"eTag\":\"0x8D588B2BD987D15\",\"creationTime\":\"2018-03-13T07:19:20.9236757Z\",\"lastModified\":\"2018-03-13T07:19:20.9236757Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:20.9236757Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks\",\"value\":[\r\n + \ {\r\n \"id\":\"batch_task1_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task1_98da0af6\",\"eTag\":\"0x8D619B6DF299ACC\",\"creationTime\":\"2018-09-13T20:24:13.8291916Z\",\"lastModified\":\"2018-09-13T20:24:13.8291916Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:13.8291916Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"exitConditions\":{\r\n \ \"exitCodes\":[\r\n {\r\n \"code\":1,\"exitOptions\":{\r\n @@ -439,7 +433,7 @@ interactions: \ ],\"default\":{\r\n \"jobAction\":\"none\"\r\n }\r\n \ },\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n - \ }\r\n },{\r\n \"id\":\"batch_task2_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6\",\"eTag\":\"0x8D588B2BE6D7D4C\",\"creationTime\":\"2018-03-13T07:19:22.319598Z\",\"lastModified\":\"2018-03-13T07:19:22.319598Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:22.319598Z\",\"commandLine\":\"cmd + \ }\r\n },{\r\n \"id\":\"batch_task2_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task2_98da0af6\",\"eTag\":\"0x8D619B6E00C2310\",\"creationTime\":\"2018-09-13T20:24:15.3137936Z\",\"lastModified\":\"2018-09-13T20:24:15.3137936Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:15.3137936Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"outputFiles\":[\r\n {\r\n \"filePattern\":\"../stdout.txt\",\"destination\":{\r\n \ \"container\":{\r\n \"containerUrl\":\"https://test.blob.core.windows.net:443/test-container\",\"path\":\"taskLogs/output.txt\"\r\n \ }\r\n },\"uploadOptions\":{\r\n \"uploadCondition\":\"TaskCompletion\"\r\n @@ -450,38 +444,38 @@ interactions: \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n - \ }\r\n },{\r\n \"id\":\"batch_task3_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6\",\"eTag\":\"0x8D588B2BF377EFE\",\"creationTime\":\"2018-03-13T07:19:23.6434686Z\",\"lastModified\":\"2018-03-13T07:19:23.6434686Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:23.6434686Z\",\"commandLine\":\"cmd + \ }\r\n },{\r\n \"id\":\"batch_task3_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task3_98da0af6\",\"eTag\":\"0x8D619B6E0E932B1\",\"creationTime\":\"2018-09-13T20:24:16.7625393Z\",\"lastModified\":\"2018-09-13T20:24:16.7625393Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:16.7625393Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"scope\":\"task\",\"elevationLevel\":\"admin\"\r\n }\r\n \ },\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n - \ }\r\n },{\r\n \"id\":\"batch_task4_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6\",\"eTag\":\"0x8D588B2BFE96388\",\"creationTime\":\"2018-03-13T07:19:24.8093064Z\",\"lastModified\":\"2018-03-13T07:19:24.8093064Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:24.8093064Z\",\"commandLine\":\"cmd + \ }\r\n },{\r\n \"id\":\"batch_task4_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task4_98da0af6\",\"eTag\":\"0x8D619B6E1B80467\",\"creationTime\":\"2018-09-13T20:24:18.1179495Z\",\"lastModified\":\"2018-09-13T20:24:18.1179495Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:18.1179495Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"authenticationTokenSettings\":{\r\n \ \"access\":[\r\n \"job\"\r\n ]\r\n },\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n - \ }\r\n },{\r\n \"id\":\"batch_task5_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6\",\"eTag\":\"0x8D588B2C07CDB26\",\"creationTime\":\"2018-03-13T07:19:25.7757478Z\",\"lastModified\":\"2018-03-13T07:19:25.7757478Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:25.7757478Z\",\"commandLine\":\"cmd + \ }\r\n },{\r\n \"id\":\"batch_task5_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task5_98da0af6\",\"eTag\":\"0x8D619B6E294BE8E\",\"creationTime\":\"2018-09-13T20:24:19.564507Z\",\"lastModified\":\"2018-09-13T20:24:19.564507Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:19.564507Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"containerSettings\":{\r\n \"imageName\":\"windows_container:latest\",\"registry\":{\r\n \ \"username\":\"username\"\r\n }\r\n },\"userIdentity\":{\r\n \ \"autoUser\":{\r\n \"elevationLevel\":\"nonadmin\"\r\n }\r\n \ },\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n - \ }\r\n },{\r\n \"id\":\"batch_task6_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6\",\"eTag\":\"0x8D588B2C114BD85\",\"creationTime\":\"2018-03-13T07:19:26.7711365Z\",\"lastModified\":\"2018-03-13T07:19:26.7711365Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:26.7711365Z\",\"commandLine\":\"cmd + \ }\r\n },{\r\n \"id\":\"batch_task6_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6\",\"eTag\":\"0x8D619B6E37706DD\",\"creationTime\":\"2018-09-13T20:24:21.0474717Z\",\"lastModified\":\"2018-09-13T20:24:21.0474717Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:21.0474717Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"username\":\"task-user\"\r\n \ },\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n - \ }\r\n },{\r\n \"id\":\"batch_task7_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task7_98da0af6\",\"eTag\":\"0x8D588B2C1CB7401\",\"creationTime\":\"2018-03-13T07:19:27.9685633Z\",\"lastModified\":\"2018-03-13T07:19:27.9685633Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:27.9685633Z\",\"commandLine\":\"cmd + \ }\r\n },{\r\n \"id\":\"batch_task7_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task7_98da0af6\",\"eTag\":\"0x8D619B6E45A7C26\",\"creationTime\":\"2018-09-13T20:24:22.5381414Z\",\"lastModified\":\"2018-09-13T20:24:22.5381414Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:22.5381414Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n - \ }\r\n },{\r\n \"id\":\"batch_task8_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task8_98da0af6\",\"eTag\":\"0x8D588B2C1D030B3\",\"creationTime\":\"2018-03-13T07:19:27.9996083Z\",\"lastModified\":\"2018-03-13T07:19:27.9996083Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:27.9996083Z\",\"commandLine\":\"cmd + \ }\r\n },{\r\n \"id\":\"batch_task8_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task8_98da0af6\",\"eTag\":\"0x8D619B6E459B3D7\",\"creationTime\":\"2018-09-13T20:24:22.5330135Z\",\"lastModified\":\"2018-09-13T20:24:22.5330135Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:22.5330135Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n - \ }\r\n },{\r\n \"id\":\"batch_task9_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task9_98da0af6\",\"eTag\":\"0x8D588B2C1CF1D7A\",\"creationTime\":\"2018-03-13T07:19:27.9925626Z\",\"lastModified\":\"2018-03-13T07:19:27.9925626Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:27.9925626Z\",\"commandLine\":\"cmd + \ }\r\n },{\r\n \"id\":\"batch_task9_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task9_98da0af6\",\"eTag\":\"0x8D619B6E45832CE\",\"creationTime\":\"2018-09-13T20:24:22.5231566Z\",\"lastModified\":\"2018-09-13T20:24:22.5231566Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:22.5231566Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"autoUser\":{\r\n \ \"elevationLevel\":\"nonadmin\"\r\n }\r\n },\"constraints\":{\r\n \ \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n @@ -490,8 +484,8 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:28 GMT'] - request-id: [5debcfbc-c2f5-44fd-8de4-a1b24b826fa0] + date: ['Thu, 13 Sep 2018 20:24:23 GMT'] + request-id: [13700db5-3340-47ef-b198-2408e1d63037] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -503,20 +497,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:28 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:23 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/taskcounts?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/taskcounts?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#taskcounts/@Element\",\"active\":6,\"running\":0,\"completed\":0,\"succeeded\":0,\"failed\":0,\"validationStatus\":\"Validated\"\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskcounts/@Element\",\"active\":5,\"running\":0,\"completed\":0,\"succeeded\":0,\"failed\":0\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:29 GMT'] - request-id: [3edb30bb-7f14-4b10-aae0-a9d45b57e34c] + date: ['Thu, 13 Sep 2018 20:24:23 GMT'] + request-id: [33ff3ec5-9c15-48df-b41d-f667c39e6ad7] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -529,23 +522,22 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:29 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:24 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6/terminate?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6/terminate?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-length: ['0'] - dataserviceid: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6/terminate'] + dataserviceid: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6/terminate'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:29 GMT'] - etag: ['0x8D588B2C2C1A1A9'] - last-modified: ['Tue, 13 Mar 2018 07:19:29 GMT'] - request-id: [c2294589-cf25-428c-92f5-2c7723d253f5] + date: ['Thu, 13 Sep 2018 20:24:24 GMT'] + etag: ['0x8D619B6E59FE6ED'] + last-modified: ['Thu, 13 Sep 2018 20:24:24 GMT'] + request-id: [ed3b8a68-6c36-496b-b911-b4c657378e27] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -556,28 +548,27 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:29 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:24 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task6_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6\",\"eTag\":\"0x8D588B2C2C1A1A9\",\"creationTime\":\"2018-03-13T07:19:26.7711365Z\",\"lastModified\":\"2018-03-13T07:19:29.5819177Z\",\"state\":\"completed\",\"stateTransitionTime\":\"2018-03-13T07:19:29.5819177Z\",\"previousState\":\"active\",\"previousStateTransitionTime\":\"2018-03-13T07:19:26.7711365Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task6_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6\",\"eTag\":\"0x8D619B6E59FE6ED\",\"creationTime\":\"2018-09-13T20:24:21.0474717Z\",\"lastModified\":\"2018-09-13T20:24:24.6707949Z\",\"state\":\"completed\",\"stateTransitionTime\":\"2018-09-13T20:24:24.6707949Z\",\"previousState\":\"active\",\"previousStateTransitionTime\":\"2018-09-13T20:24:21.0474717Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"username\":\"task-user\"\r\n \ },\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n - \ },\"executionInfo\":{\r\n \"endTime\":\"2018-03-13T07:19:29.5819177Z\",\"failureInfo\":{\r\n + \ },\"executionInfo\":{\r\n \"endTime\":\"2018-09-13T20:24:24.6707949Z\",\"failureInfo\":{\r\n \ \"category\":\"UserError\",\"code\":\"TaskEnded\",\"message\":\"Task - Was Ended by User Request\"\r\n },\"result\":\"Failure\",\"retryCount\":0,\"requeueCount\":0\r\n + Was Ended by User Request\"\r\n },\"result\":\"failure\",\"retryCount\":0,\"requeueCount\":0\r\n \ },\"nodeInfo\":{\r\n \r\n }\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:30 GMT'] - etag: ['0x8D588B2C2C1A1A9'] - last-modified: ['Tue, 13 Mar 2018 07:19:29 GMT'] - request-id: [0f751eb3-1e94-4af6-a189-d923253e5e9a] + date: ['Thu, 13 Sep 2018 20:24:25 GMT'] + etag: ['0x8D619B6E59FE6ED'] + last-modified: ['Thu, 13 Sep 2018 20:24:24 GMT'] + request-id: [644b2957-ffbb-47f4-b9ce-37a1271ada54] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -590,22 +581,21 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:30 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:25 GMT'] method: POST - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6/reactivate?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6/reactivate?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-length: ['0'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:30 GMT'] - etag: ['0x8D588B2C35AEE16'] - last-modified: ['Tue, 13 Mar 2018 07:19:30 GMT'] - request-id: [99ac959f-a057-47ef-98db-361d38e9f839] + date: ['Thu, 13 Sep 2018 20:24:26 GMT'] + etag: ['0x8D619B6E685F290'] + last-modified: ['Thu, 13 Sep 2018 20:24:26 GMT'] + request-id: [1682ad48-8b6b-4014-8c1c-d25ea49842c2] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -616,25 +606,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:30 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:26 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task6_98da0af6\",\"url\":\"https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6\",\"eTag\":\"0x8D588B2C35AEE16\",\"creationTime\":\"2018-03-13T07:19:26.7711365Z\",\"lastModified\":\"2018-03-13T07:19:30.586575Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:19:30.586575Z\",\"previousState\":\"completed\",\"previousStateTransitionTime\":\"2018-03-13T07:19:29.5819177Z\",\"commandLine\":\"cmd + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#tasks/@Element\",\"id\":\"batch_task6_98da0af6\",\"url\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6\",\"eTag\":\"0x8D619B6E685F290\",\"creationTime\":\"2018-09-13T20:24:21.0474717Z\",\"lastModified\":\"2018-09-13T20:24:26.1784208Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-09-13T20:24:26.1784208Z\",\"previousState\":\"completed\",\"previousStateTransitionTime\":\"2018-09-13T20:24:24.6707949Z\",\"commandLine\":\"cmd /c \\\"echo hello world\\\"\",\"userIdentity\":{\r\n \"username\":\"task-user\"\r\n \ },\"constraints\":{\r\n \"maxWallClockTime\":\"P10675199DT2H48M5.4775807S\",\"retentionTime\":\"P10675199DT2H48M5.4775807S\",\"maxTaskRetryCount\":0\r\n \ },\"executionInfo\":{\r\n \"retryCount\":0,\"requeueCount\":0\r\n }\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:31 GMT'] - etag: ['0x8D588B2C35AEE16'] - last-modified: ['Tue, 13 Mar 2018 07:19:30 GMT'] - request-id: [13be93dc-6ebf-46a5-a9d8-07e58a2a09c4] + date: ['Thu, 13 Sep 2018 20:24:26 GMT'] + etag: ['0x8D619B6E685F290'] + last-modified: ['Thu, 13 Sep 2018 20:24:26 GMT'] + request-id: [432131a9-24eb-4146-820f-774b4eb318a6] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -648,21 +637,21 @@ interactions: Connection: [keep-alive] Content-Length: ['41'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:31 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:26 GMT'] method: PUT - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6'] + dataserviceid: ['https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:31 GMT'] - etag: ['0x8D588B2C42D84D6'] - last-modified: ['Tue, 13 Mar 2018 07:19:31 GMT'] - request-id: [04fd974e-5374-4563-bb32-d51816c76663] + date: ['Thu, 13 Sep 2018 20:24:27 GMT'] + etag: ['0x8D619B6E75CCEF0'] + last-modified: ['Thu, 13 Sep 2018 20:24:27 GMT'] + request-id: [6ff24bbc-96b5-4704-9e41-48a558aefd30] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -674,21 +663,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:32 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:27 GMT'] method: GET - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6/subtasksinfo?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6/subtasksinfo?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.westcentralus.batch.azure.com/$metadata#subtaskinfo\",\"value\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#subtaskinfo\",\"value\":[\r\n \ \r\n ]\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:31 GMT'] - request-id: [af385765-b3b8-4a49-9805-f33b301deb3f] + date: ['Thu, 13 Sep 2018 20:24:28 GMT'] + request-id: [de6c723b-866a-4b8b-9975-8849bf62c6dc] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -701,19 +689,95352 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:19:32 GMT'] + ocp-date: ['Thu, 13 Sep 2018 20:24:28 GMT'] method: DELETE - uri: https://batch98da0af6.westcentralus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-03-01.6.1 + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/batch_task6_98da0af6?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:19:32 GMT'] - request-id: [b77a91f8-b93e-4b73-afaa-5d0432b24731] + date: ['Thu, 13 Sep 2018 20:24:28 GMT'] + request-id: [242e5bef-f6da-4454-ace7-09651ed3b132] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile100", + "filePath": "resourceFile100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile101", + "filePath": "resourceFile101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile102", + "filePath": "resourceFile102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile103", + "filePath": "resourceFile103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile104", + "filePath": "resourceFile104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile105", + "filePath": "resourceFile105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile106", + "filePath": "resourceFile106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile107", + "filePath": "resourceFile107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile108", + "filePath": "resourceFile108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile109", + "filePath": "resourceFile109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile110", + "filePath": "resourceFile110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile111", + "filePath": "resourceFile111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile112", + "filePath": "resourceFile112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile113", + "filePath": "resourceFile113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile114", + "filePath": "resourceFile114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile115", + "filePath": "resourceFile115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile116", + "filePath": "resourceFile116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile117", + "filePath": "resourceFile117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile118", + "filePath": "resourceFile118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile119", + "filePath": "resourceFile119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile120", + "filePath": "resourceFile120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile121", + "filePath": "resourceFile121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile122", + "filePath": "resourceFile122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile123", + "filePath": "resourceFile123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile124", + "filePath": "resourceFile124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile125", + "filePath": "resourceFile125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile126", + "filePath": "resourceFile126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile127", + "filePath": "resourceFile127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile128", + "filePath": "resourceFile128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile129", + "filePath": "resourceFile129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile130", + "filePath": "resourceFile130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile131", + "filePath": "resourceFile131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile132", + "filePath": "resourceFile132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile133", + "filePath": "resourceFile133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile134", + "filePath": "resourceFile134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile135", + "filePath": "resourceFile135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile136", + "filePath": "resourceFile136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile137", + "filePath": "resourceFile137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile138", + "filePath": "resourceFile138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile139", + "filePath": "resourceFile139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile140", + "filePath": "resourceFile140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile141", + "filePath": "resourceFile141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile142", + "filePath": "resourceFile142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile143", + "filePath": "resourceFile143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile144", + "filePath": "resourceFile144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile145", + "filePath": "resourceFile145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile146", + "filePath": "resourceFile146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile147", + "filePath": "resourceFile147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile148", + "filePath": "resourceFile148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile149", + "filePath": "resourceFile149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile150", + "filePath": "resourceFile150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile151", + "filePath": "resourceFile151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile152", + "filePath": "resourceFile152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile153", + "filePath": "resourceFile153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile154", + "filePath": "resourceFile154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile155", + "filePath": "resourceFile155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile156", + "filePath": "resourceFile156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile157", + "filePath": "resourceFile157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile158", + "filePath": "resourceFile158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile159", + "filePath": "resourceFile159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile160", + "filePath": "resourceFile160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile161", + "filePath": "resourceFile161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile162", + "filePath": "resourceFile162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile163", + "filePath": "resourceFile163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile164", + "filePath": "resourceFile164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile165", + "filePath": "resourceFile165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile166", + "filePath": "resourceFile166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile167", + "filePath": "resourceFile167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile168", + "filePath": "resourceFile168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile169", + "filePath": "resourceFile169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile170", + "filePath": "resourceFile170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile171", + "filePath": "resourceFile171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile172", + "filePath": "resourceFile172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile173", + "filePath": "resourceFile173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile174", + "filePath": "resourceFile174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile175", + "filePath": "resourceFile175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile176", + "filePath": "resourceFile176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile177", + "filePath": "resourceFile177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile178", + "filePath": "resourceFile178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile179", + "filePath": "resourceFile179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile180", + "filePath": "resourceFile180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile181", + "filePath": "resourceFile181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile182", + "filePath": "resourceFile182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile183", + "filePath": "resourceFile183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile184", + "filePath": "resourceFile184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile185", + "filePath": "resourceFile185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile186", + "filePath": "resourceFile186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile187", + "filePath": "resourceFile187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile188", + "filePath": "resourceFile188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile189", + "filePath": "resourceFile189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile190", + "filePath": "resourceFile190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile191", + "filePath": "resourceFile191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile192", + "filePath": "resourceFile192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile193", + "filePath": "resourceFile193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile194", + "filePath": "resourceFile194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile195", + "filePath": "resourceFile195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile196", + "filePath": "resourceFile196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile197", + "filePath": "resourceFile197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile198", + "filePath": "resourceFile198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile199", + "filePath": "resourceFile199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile200", + "filePath": "resourceFile200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile201", + "filePath": "resourceFile201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile202", + "filePath": "resourceFile202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile203", + "filePath": "resourceFile203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile204", + "filePath": "resourceFile204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile205", + "filePath": "resourceFile205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile206", + "filePath": "resourceFile206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile207", + "filePath": "resourceFile207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile208", + "filePath": "resourceFile208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile209", + "filePath": "resourceFile209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile210", + "filePath": "resourceFile210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile211", + "filePath": "resourceFile211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile212", + "filePath": "resourceFile212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile213", + "filePath": "resourceFile213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile214", + "filePath": "resourceFile214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile215", + "filePath": "resourceFile215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile216", + "filePath": "resourceFile216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile217", + "filePath": "resourceFile217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile218", + "filePath": "resourceFile218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile219", + "filePath": "resourceFile219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile220", + "filePath": "resourceFile220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile221", + "filePath": "resourceFile221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile222", + "filePath": "resourceFile222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile223", + "filePath": "resourceFile223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile224", + "filePath": "resourceFile224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile225", + "filePath": "resourceFile225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile226", + "filePath": "resourceFile226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile227", + "filePath": "resourceFile227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile228", + "filePath": "resourceFile228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile229", + "filePath": "resourceFile229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile230", + "filePath": "resourceFile230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile231", + "filePath": "resourceFile231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile232", + "filePath": "resourceFile232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile233", + "filePath": "resourceFile233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile234", + "filePath": "resourceFile234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile235", + "filePath": "resourceFile235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile236", + "filePath": "resourceFile236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile237", + "filePath": "resourceFile237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile238", + "filePath": "resourceFile238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile239", + "filePath": "resourceFile239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile240", + "filePath": "resourceFile240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile241", + "filePath": "resourceFile241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile242", + "filePath": "resourceFile242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile243", + "filePath": "resourceFile243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile244", + "filePath": "resourceFile244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile245", + "filePath": "resourceFile245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile246", + "filePath": "resourceFile246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile247", + "filePath": "resourceFile247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile248", + "filePath": "resourceFile248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile249", + "filePath": "resourceFile249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile250", + "filePath": "resourceFile250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile251", + "filePath": "resourceFile251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile252", + "filePath": "resourceFile252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile253", + "filePath": "resourceFile253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile254", + "filePath": "resourceFile254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile255", + "filePath": "resourceFile255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile256", + "filePath": "resourceFile256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile257", + "filePath": "resourceFile257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile258", + "filePath": "resourceFile258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile259", + "filePath": "resourceFile259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile260", + "filePath": "resourceFile260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile261", + "filePath": "resourceFile261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile262", + "filePath": "resourceFile262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile263", + "filePath": "resourceFile263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile264", + "filePath": "resourceFile264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile265", + "filePath": "resourceFile265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile266", + "filePath": "resourceFile266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile267", + "filePath": "resourceFile267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile268", + "filePath": "resourceFile268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile269", + "filePath": "resourceFile269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile270", + "filePath": "resourceFile270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile271", + "filePath": "resourceFile271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile272", + "filePath": "resourceFile272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile273", + "filePath": "resourceFile273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile274", + "filePath": "resourceFile274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile275", + "filePath": "resourceFile275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile276", + "filePath": "resourceFile276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile277", + "filePath": "resourceFile277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile278", + "filePath": "resourceFile278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile279", + "filePath": "resourceFile279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile280", + "filePath": "resourceFile280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile281", + "filePath": "resourceFile281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile282", + "filePath": "resourceFile282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile283", + "filePath": "resourceFile283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile284", + "filePath": "resourceFile284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile285", + "filePath": "resourceFile285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile286", + "filePath": "resourceFile286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile287", + "filePath": "resourceFile287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile288", + "filePath": "resourceFile288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile289", + "filePath": "resourceFile289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile290", + "filePath": "resourceFile290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile291", + "filePath": "resourceFile291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile292", + "filePath": "resourceFile292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile293", + "filePath": "resourceFile293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile294", + "filePath": "resourceFile294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile295", + "filePath": "resourceFile295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile296", + "filePath": "resourceFile296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile297", + "filePath": "resourceFile297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile298", + "filePath": "resourceFile298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile299", + "filePath": "resourceFile299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile300", + "filePath": "resourceFile300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile301", + "filePath": "resourceFile301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile302", + "filePath": "resourceFile302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile303", + "filePath": "resourceFile303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile304", + "filePath": "resourceFile304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile305", + "filePath": "resourceFile305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile306", + "filePath": "resourceFile306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile307", + "filePath": "resourceFile307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile308", + "filePath": "resourceFile308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile309", + "filePath": "resourceFile309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile310", + "filePath": "resourceFile310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile311", + "filePath": "resourceFile311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile312", + "filePath": "resourceFile312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile313", + "filePath": "resourceFile313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile314", + "filePath": "resourceFile314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile315", + "filePath": "resourceFile315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile316", + "filePath": "resourceFile316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile317", + "filePath": "resourceFile317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile318", + "filePath": "resourceFile318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile319", + "filePath": "resourceFile319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile320", + "filePath": "resourceFile320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile321", + "filePath": "resourceFile321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile322", + "filePath": "resourceFile322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile323", + "filePath": "resourceFile323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile324", + "filePath": "resourceFile324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile325", + "filePath": "resourceFile325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile326", + "filePath": "resourceFile326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile327", + "filePath": "resourceFile327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile328", + "filePath": "resourceFile328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile329", + "filePath": "resourceFile329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile330", + "filePath": "resourceFile330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile331", + "filePath": "resourceFile331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile332", + "filePath": "resourceFile332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile333", + "filePath": "resourceFile333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile334", + "filePath": "resourceFile334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile335", + "filePath": "resourceFile335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile336", + "filePath": "resourceFile336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile337", + "filePath": "resourceFile337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile338", + "filePath": "resourceFile338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile339", + "filePath": "resourceFile339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile340", + "filePath": "resourceFile340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile341", + "filePath": "resourceFile341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile342", + "filePath": "resourceFile342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile343", + "filePath": "resourceFile343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile344", + "filePath": "resourceFile344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile345", + "filePath": "resourceFile345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile346", + "filePath": "resourceFile346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile347", + "filePath": "resourceFile347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile348", + "filePath": "resourceFile348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile349", + "filePath": "resourceFile349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile350", + "filePath": "resourceFile350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile351", + "filePath": "resourceFile351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile352", + "filePath": "resourceFile352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile353", + "filePath": "resourceFile353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile354", + "filePath": "resourceFile354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile355", + "filePath": "resourceFile355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile356", + "filePath": "resourceFile356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile357", + "filePath": "resourceFile357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile358", + "filePath": "resourceFile358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile359", + "filePath": "resourceFile359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile360", + "filePath": "resourceFile360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile361", + "filePath": "resourceFile361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile362", + "filePath": "resourceFile362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile363", + "filePath": "resourceFile363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile364", + "filePath": "resourceFile364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile365", + "filePath": "resourceFile365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile366", + "filePath": "resourceFile366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile367", + "filePath": "resourceFile367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile368", + "filePath": "resourceFile368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile369", + "filePath": "resourceFile369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile370", + "filePath": "resourceFile370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile371", + "filePath": "resourceFile371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile372", + "filePath": "resourceFile372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile373", + "filePath": "resourceFile373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile374", + "filePath": "resourceFile374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile375", + "filePath": "resourceFile375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile376", + "filePath": "resourceFile376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile377", + "filePath": "resourceFile377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile378", + "filePath": "resourceFile378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile379", + "filePath": "resourceFile379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile380", + "filePath": "resourceFile380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile381", + "filePath": "resourceFile381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile382", + "filePath": "resourceFile382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile383", + "filePath": "resourceFile383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile384", + "filePath": "resourceFile384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile385", + "filePath": "resourceFile385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile386", + "filePath": "resourceFile386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile387", + "filePath": "resourceFile387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile388", + "filePath": "resourceFile388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile389", + "filePath": "resourceFile389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile390", + "filePath": "resourceFile390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile391", + "filePath": "resourceFile391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile392", + "filePath": "resourceFile392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile393", + "filePath": "resourceFile393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile394", + "filePath": "resourceFile394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile395", + "filePath": "resourceFile395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile396", + "filePath": "resourceFile396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile397", + "filePath": "resourceFile397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile398", + "filePath": "resourceFile398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile399", + "filePath": "resourceFile399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile400", + "filePath": "resourceFile400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile401", + "filePath": "resourceFile401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile402", + "filePath": "resourceFile402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile403", + "filePath": "resourceFile403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile404", + "filePath": "resourceFile404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile405", + "filePath": "resourceFile405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile406", + "filePath": "resourceFile406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile407", + "filePath": "resourceFile407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile408", + "filePath": "resourceFile408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile409", + "filePath": "resourceFile409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile410", + "filePath": "resourceFile410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile411", + "filePath": "resourceFile411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile412", + "filePath": "resourceFile412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile413", + "filePath": "resourceFile413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile414", + "filePath": "resourceFile414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile415", + "filePath": "resourceFile415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile416", + "filePath": "resourceFile416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile417", + "filePath": "resourceFile417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile418", + "filePath": "resourceFile418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile419", + "filePath": "resourceFile419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile420", + "filePath": "resourceFile420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile421", + "filePath": "resourceFile421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile422", + "filePath": "resourceFile422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile423", + "filePath": "resourceFile423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile424", + "filePath": "resourceFile424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile425", + "filePath": "resourceFile425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile426", + "filePath": "resourceFile426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile427", + "filePath": "resourceFile427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile428", + "filePath": "resourceFile428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile429", + "filePath": "resourceFile429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile430", + "filePath": "resourceFile430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile431", + "filePath": "resourceFile431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile432", + "filePath": "resourceFile432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile433", + "filePath": "resourceFile433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile434", + "filePath": "resourceFile434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile435", + "filePath": "resourceFile435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile436", + "filePath": "resourceFile436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile437", + "filePath": "resourceFile437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile438", + "filePath": "resourceFile438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile439", + "filePath": "resourceFile439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile440", + "filePath": "resourceFile440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile441", + "filePath": "resourceFile441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile442", + "filePath": "resourceFile442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile443", + "filePath": "resourceFile443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile444", + "filePath": "resourceFile444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile445", + "filePath": "resourceFile445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile446", + "filePath": "resourceFile446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile447", + "filePath": "resourceFile447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile448", + "filePath": "resourceFile448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile449", + "filePath": "resourceFile449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile450", + "filePath": "resourceFile450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile451", + "filePath": "resourceFile451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile452", + "filePath": "resourceFile452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile453", + "filePath": "resourceFile453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile454", + "filePath": "resourceFile454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile455", + "filePath": "resourceFile455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile456", + "filePath": "resourceFile456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile457", + "filePath": "resourceFile457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile458", + "filePath": "resourceFile458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile459", + "filePath": "resourceFile459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile460", + "filePath": "resourceFile460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile461", + "filePath": "resourceFile461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile462", + "filePath": "resourceFile462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile463", + "filePath": "resourceFile463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile464", + "filePath": "resourceFile464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile465", + "filePath": "resourceFile465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile466", + "filePath": "resourceFile466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile467", + "filePath": "resourceFile467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile468", + "filePath": "resourceFile468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile469", + "filePath": "resourceFile469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile470", + "filePath": "resourceFile470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile471", + "filePath": "resourceFile471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile472", + "filePath": "resourceFile472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile473", + "filePath": "resourceFile473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile474", + "filePath": "resourceFile474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile475", + "filePath": "resourceFile475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile476", + "filePath": "resourceFile476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile477", + "filePath": "resourceFile477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile478", + "filePath": "resourceFile478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile479", + "filePath": "resourceFile479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile480", + "filePath": "resourceFile480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile481", + "filePath": "resourceFile481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile482", + "filePath": "resourceFile482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile483", + "filePath": "resourceFile483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile484", + "filePath": "resourceFile484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile485", + "filePath": "resourceFile485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile486", + "filePath": "resourceFile486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile487", + "filePath": "resourceFile487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile488", + "filePath": "resourceFile488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile489", + "filePath": "resourceFile489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile490", + "filePath": "resourceFile490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile491", + "filePath": "resourceFile491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile492", + "filePath": "resourceFile492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile493", + "filePath": "resourceFile493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile494", + "filePath": "resourceFile494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile495", + "filePath": "resourceFile495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile496", + "filePath": "resourceFile496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile497", + "filePath": "resourceFile497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile498", + "filePath": "resourceFile498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile499", + "filePath": "resourceFile499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile500", + "filePath": "resourceFile500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile501", + "filePath": "resourceFile501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile502", + "filePath": "resourceFile502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile503", + "filePath": "resourceFile503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile504", + "filePath": "resourceFile504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile505", + "filePath": "resourceFile505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile506", + "filePath": "resourceFile506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile507", + "filePath": "resourceFile507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile508", + "filePath": "resourceFile508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile509", + "filePath": "resourceFile509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile510", + "filePath": "resourceFile510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile511", + "filePath": "resourceFile511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile512", + "filePath": "resourceFile512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile513", + "filePath": "resourceFile513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile514", + "filePath": "resourceFile514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile515", + "filePath": "resourceFile515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile516", + "filePath": "resourceFile516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile517", + "filePath": "resourceFile517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile518", + "filePath": "resourceFile518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile519", + "filePath": "resourceFile519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile520", + "filePath": "resourceFile520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile521", + "filePath": "resourceFile521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile522", + "filePath": "resourceFile522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile523", + "filePath": "resourceFile523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile524", + "filePath": "resourceFile524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile525", + "filePath": "resourceFile525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile526", + "filePath": "resourceFile526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile527", + "filePath": "resourceFile527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile528", + "filePath": "resourceFile528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile529", + "filePath": "resourceFile529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile530", + "filePath": "resourceFile530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile531", + "filePath": "resourceFile531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile532", + "filePath": "resourceFile532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile533", + "filePath": "resourceFile533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile534", + "filePath": "resourceFile534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile535", + "filePath": "resourceFile535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile536", + "filePath": "resourceFile536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile537", + "filePath": "resourceFile537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile538", + "filePath": "resourceFile538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile539", + "filePath": "resourceFile539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile540", + "filePath": "resourceFile540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile541", + "filePath": "resourceFile541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile542", + "filePath": "resourceFile542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile543", + "filePath": "resourceFile543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile544", + "filePath": "resourceFile544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile545", + "filePath": "resourceFile545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile546", + "filePath": "resourceFile546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile547", + "filePath": "resourceFile547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile548", + "filePath": "resourceFile548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile549", + "filePath": "resourceFile549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile550", + "filePath": "resourceFile550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile551", + "filePath": "resourceFile551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile552", + "filePath": "resourceFile552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile553", + "filePath": "resourceFile553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile554", + "filePath": "resourceFile554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile555", + "filePath": "resourceFile555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile556", + "filePath": "resourceFile556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile557", + "filePath": "resourceFile557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile558", + "filePath": "resourceFile558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile559", + "filePath": "resourceFile559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile560", + "filePath": "resourceFile560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile561", + "filePath": "resourceFile561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile562", + "filePath": "resourceFile562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile563", + "filePath": "resourceFile563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile564", + "filePath": "resourceFile564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile565", + "filePath": "resourceFile565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile566", + "filePath": "resourceFile566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile567", + "filePath": "resourceFile567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile568", + "filePath": "resourceFile568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile569", + "filePath": "resourceFile569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile570", + "filePath": "resourceFile570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile571", + "filePath": "resourceFile571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile572", + "filePath": "resourceFile572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile573", + "filePath": "resourceFile573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile574", + "filePath": "resourceFile574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile575", + "filePath": "resourceFile575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile576", + "filePath": "resourceFile576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile577", + "filePath": "resourceFile577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile578", + "filePath": "resourceFile578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile579", + "filePath": "resourceFile579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile580", + "filePath": "resourceFile580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile581", + "filePath": "resourceFile581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile582", + "filePath": "resourceFile582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile583", + "filePath": "resourceFile583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile584", + "filePath": "resourceFile584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile585", + "filePath": "resourceFile585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile586", + "filePath": "resourceFile586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile587", + "filePath": "resourceFile587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile588", + "filePath": "resourceFile588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile589", + "filePath": "resourceFile589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile590", + "filePath": "resourceFile590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile591", + "filePath": "resourceFile591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile592", + "filePath": "resourceFile592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile593", + "filePath": "resourceFile593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile594", + "filePath": "resourceFile594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile595", + "filePath": "resourceFile595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile596", + "filePath": "resourceFile596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile597", + "filePath": "resourceFile597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile598", + "filePath": "resourceFile598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile599", + "filePath": "resourceFile599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile600", + "filePath": "resourceFile600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile601", + "filePath": "resourceFile601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile602", + "filePath": "resourceFile602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile603", + "filePath": "resourceFile603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile604", + "filePath": "resourceFile604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile605", + "filePath": "resourceFile605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile606", + "filePath": "resourceFile606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile607", + "filePath": "resourceFile607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile608", + "filePath": "resourceFile608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile609", + "filePath": "resourceFile609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile610", + "filePath": "resourceFile610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile611", + "filePath": "resourceFile611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile612", + "filePath": "resourceFile612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile613", + "filePath": "resourceFile613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile614", + "filePath": "resourceFile614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile615", + "filePath": "resourceFile615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile616", + "filePath": "resourceFile616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile617", + "filePath": "resourceFile617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile618", + "filePath": "resourceFile618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile619", + "filePath": "resourceFile619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile620", + "filePath": "resourceFile620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile621", + "filePath": "resourceFile621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile622", + "filePath": "resourceFile622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile623", + "filePath": "resourceFile623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile624", + "filePath": "resourceFile624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile625", + "filePath": "resourceFile625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile626", + "filePath": "resourceFile626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile627", + "filePath": "resourceFile627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile628", + "filePath": "resourceFile628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile629", + "filePath": "resourceFile629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile630", + "filePath": "resourceFile630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile631", + "filePath": "resourceFile631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile632", + "filePath": "resourceFile632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile633", + "filePath": "resourceFile633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile634", + "filePath": "resourceFile634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile635", + "filePath": "resourceFile635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile636", + "filePath": "resourceFile636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile637", + "filePath": "resourceFile637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile638", + "filePath": "resourceFile638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile639", + "filePath": "resourceFile639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile640", + "filePath": "resourceFile640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile641", + "filePath": "resourceFile641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile642", + "filePath": "resourceFile642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile643", + "filePath": "resourceFile643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile644", + "filePath": "resourceFile644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile645", + "filePath": "resourceFile645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile646", + "filePath": "resourceFile646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile647", + "filePath": "resourceFile647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile648", + "filePath": "resourceFile648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile649", + "filePath": "resourceFile649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile650", + "filePath": "resourceFile650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile651", + "filePath": "resourceFile651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile652", + "filePath": "resourceFile652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile653", + "filePath": "resourceFile653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile654", + "filePath": "resourceFile654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile655", + "filePath": "resourceFile655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile656", + "filePath": "resourceFile656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile657", + "filePath": "resourceFile657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile658", + "filePath": "resourceFile658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile659", + "filePath": "resourceFile659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile660", + "filePath": "resourceFile660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile661", + "filePath": "resourceFile661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile662", + "filePath": "resourceFile662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile663", + "filePath": "resourceFile663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile664", + "filePath": "resourceFile664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile665", + "filePath": "resourceFile665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile666", + "filePath": "resourceFile666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile667", + "filePath": "resourceFile667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile668", + "filePath": "resourceFile668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile669", + "filePath": "resourceFile669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile670", + "filePath": "resourceFile670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile671", + "filePath": "resourceFile671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile672", + "filePath": "resourceFile672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile673", + "filePath": "resourceFile673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile674", + "filePath": "resourceFile674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile675", + "filePath": "resourceFile675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile676", + "filePath": "resourceFile676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile677", + "filePath": "resourceFile677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile678", + "filePath": "resourceFile678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile679", + "filePath": "resourceFile679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile680", + "filePath": "resourceFile680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile681", + "filePath": "resourceFile681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile682", + "filePath": "resourceFile682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile683", + "filePath": "resourceFile683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile684", + "filePath": "resourceFile684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile685", + "filePath": "resourceFile685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile686", + "filePath": "resourceFile686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile687", + "filePath": "resourceFile687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile688", + "filePath": "resourceFile688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile689", + "filePath": "resourceFile689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile690", + "filePath": "resourceFile690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile691", + "filePath": "resourceFile691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile692", + "filePath": "resourceFile692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile693", + "filePath": "resourceFile693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile694", + "filePath": "resourceFile694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile695", + "filePath": "resourceFile695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile696", + "filePath": "resourceFile696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile697", + "filePath": "resourceFile697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile698", + "filePath": "resourceFile698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile699", + "filePath": "resourceFile699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile700", + "filePath": "resourceFile700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile701", + "filePath": "resourceFile701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile702", + "filePath": "resourceFile702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile703", + "filePath": "resourceFile703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile704", + "filePath": "resourceFile704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile705", + "filePath": "resourceFile705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile706", + "filePath": "resourceFile706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile707", + "filePath": "resourceFile707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile708", + "filePath": "resourceFile708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile709", + "filePath": "resourceFile709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile710", + "filePath": "resourceFile710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile711", + "filePath": "resourceFile711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile712", + "filePath": "resourceFile712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile713", + "filePath": "resourceFile713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile714", + "filePath": "resourceFile714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile715", + "filePath": "resourceFile715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile716", + "filePath": "resourceFile716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile717", + "filePath": "resourceFile717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile718", + "filePath": "resourceFile718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile719", + "filePath": "resourceFile719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile720", + "filePath": "resourceFile720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile721", + "filePath": "resourceFile721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile722", + "filePath": "resourceFile722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile723", + "filePath": "resourceFile723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile724", + "filePath": "resourceFile724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile725", + "filePath": "resourceFile725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile726", + "filePath": "resourceFile726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile727", + "filePath": "resourceFile727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile728", + "filePath": "resourceFile728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile729", + "filePath": "resourceFile729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile730", + "filePath": "resourceFile730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile731", + "filePath": "resourceFile731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile732", + "filePath": "resourceFile732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile733", + "filePath": "resourceFile733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile734", + "filePath": "resourceFile734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile735", + "filePath": "resourceFile735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile736", + "filePath": "resourceFile736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile737", + "filePath": "resourceFile737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile738", + "filePath": "resourceFile738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile739", + "filePath": "resourceFile739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile740", + "filePath": "resourceFile740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile741", + "filePath": "resourceFile741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile742", + "filePath": "resourceFile742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile743", + "filePath": "resourceFile743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile744", + "filePath": "resourceFile744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile745", + "filePath": "resourceFile745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile746", + "filePath": "resourceFile746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile747", + "filePath": "resourceFile747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile748", + "filePath": "resourceFile748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile749", + "filePath": "resourceFile749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile750", + "filePath": "resourceFile750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile751", + "filePath": "resourceFile751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile752", + "filePath": "resourceFile752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile753", + "filePath": "resourceFile753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile754", + "filePath": "resourceFile754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile755", + "filePath": "resourceFile755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile756", + "filePath": "resourceFile756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile757", + "filePath": "resourceFile757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile758", + "filePath": "resourceFile758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile759", + "filePath": "resourceFile759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile760", + "filePath": "resourceFile760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile761", + "filePath": "resourceFile761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile762", + "filePath": "resourceFile762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile763", + "filePath": "resourceFile763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile764", + "filePath": "resourceFile764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile765", + "filePath": "resourceFile765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile766", + "filePath": "resourceFile766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile767", + "filePath": "resourceFile767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile768", + "filePath": "resourceFile768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile769", + "filePath": "resourceFile769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile770", + "filePath": "resourceFile770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile771", + "filePath": "resourceFile771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile772", + "filePath": "resourceFile772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile773", + "filePath": "resourceFile773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile774", + "filePath": "resourceFile774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile775", + "filePath": "resourceFile775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile776", + "filePath": "resourceFile776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile777", + "filePath": "resourceFile777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile778", + "filePath": "resourceFile778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile779", + "filePath": "resourceFile779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile780", + "filePath": "resourceFile780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile781", + "filePath": "resourceFile781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile782", + "filePath": "resourceFile782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile783", + "filePath": "resourceFile783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile784", + "filePath": "resourceFile784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile785", + "filePath": "resourceFile785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile786", + "filePath": "resourceFile786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile787", + "filePath": "resourceFile787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile788", + "filePath": "resourceFile788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile789", + "filePath": "resourceFile789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile790", + "filePath": "resourceFile790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile791", + "filePath": "resourceFile791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile792", + "filePath": "resourceFile792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile793", + "filePath": "resourceFile793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile794", + "filePath": "resourceFile794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile795", + "filePath": "resourceFile795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile796", + "filePath": "resourceFile796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile797", + "filePath": "resourceFile797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile798", + "filePath": "resourceFile798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile799", + "filePath": "resourceFile799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile800", + "filePath": "resourceFile800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile801", + "filePath": "resourceFile801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile802", + "filePath": "resourceFile802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile803", + "filePath": "resourceFile803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile804", + "filePath": "resourceFile804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile805", + "filePath": "resourceFile805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile806", + "filePath": "resourceFile806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile807", + "filePath": "resourceFile807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile808", + "filePath": "resourceFile808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile809", + "filePath": "resourceFile809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile810", + "filePath": "resourceFile810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile811", + "filePath": "resourceFile811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile812", + "filePath": "resourceFile812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile813", + "filePath": "resourceFile813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile814", + "filePath": "resourceFile814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile815", + "filePath": "resourceFile815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile816", + "filePath": "resourceFile816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile817", + "filePath": "resourceFile817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile818", + "filePath": "resourceFile818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile819", + "filePath": "resourceFile819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile820", + "filePath": "resourceFile820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile821", + "filePath": "resourceFile821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile822", + "filePath": "resourceFile822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile823", + "filePath": "resourceFile823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile824", + "filePath": "resourceFile824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile825", + "filePath": "resourceFile825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile826", + "filePath": "resourceFile826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile827", + "filePath": "resourceFile827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile828", + "filePath": "resourceFile828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile829", + "filePath": "resourceFile829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile830", + "filePath": "resourceFile830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile831", + "filePath": "resourceFile831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile832", + "filePath": "resourceFile832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile833", + "filePath": "resourceFile833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile834", + "filePath": "resourceFile834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile835", + "filePath": "resourceFile835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile836", + "filePath": "resourceFile836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile837", + "filePath": "resourceFile837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile838", + "filePath": "resourceFile838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile839", + "filePath": "resourceFile839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile840", + "filePath": "resourceFile840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile841", + "filePath": "resourceFile841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile842", + "filePath": "resourceFile842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile843", + "filePath": "resourceFile843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile844", + "filePath": "resourceFile844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile845", + "filePath": "resourceFile845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile846", + "filePath": "resourceFile846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile847", + "filePath": "resourceFile847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile848", + "filePath": "resourceFile848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile849", + "filePath": "resourceFile849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile850", + "filePath": "resourceFile850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile851", + "filePath": "resourceFile851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile852", + "filePath": "resourceFile852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile853", + "filePath": "resourceFile853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile854", + "filePath": "resourceFile854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile855", + "filePath": "resourceFile855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile856", + "filePath": "resourceFile856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile857", + "filePath": "resourceFile857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile858", + "filePath": "resourceFile858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile859", + "filePath": "resourceFile859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile860", + "filePath": "resourceFile860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile861", + "filePath": "resourceFile861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile862", + "filePath": "resourceFile862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile863", + "filePath": "resourceFile863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile864", + "filePath": "resourceFile864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile865", + "filePath": "resourceFile865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile866", + "filePath": "resourceFile866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile867", + "filePath": "resourceFile867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile868", + "filePath": "resourceFile868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile869", + "filePath": "resourceFile869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile870", + "filePath": "resourceFile870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile871", + "filePath": "resourceFile871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile872", + "filePath": "resourceFile872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile873", + "filePath": "resourceFile873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile874", + "filePath": "resourceFile874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile875", + "filePath": "resourceFile875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile876", + "filePath": "resourceFile876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile877", + "filePath": "resourceFile877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile878", + "filePath": "resourceFile878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile879", + "filePath": "resourceFile879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile880", + "filePath": "resourceFile880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile881", + "filePath": "resourceFile881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile882", + "filePath": "resourceFile882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile883", + "filePath": "resourceFile883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile884", + "filePath": "resourceFile884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile885", + "filePath": "resourceFile885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile886", + "filePath": "resourceFile886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile887", + "filePath": "resourceFile887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile888", + "filePath": "resourceFile888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile889", + "filePath": "resourceFile889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile890", + "filePath": "resourceFile890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile891", + "filePath": "resourceFile891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile892", + "filePath": "resourceFile892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile893", + "filePath": "resourceFile893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile894", + "filePath": "resourceFile894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile895", + "filePath": "resourceFile895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile896", + "filePath": "resourceFile896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile897", + "filePath": "resourceFile897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile898", + "filePath": "resourceFile898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile899", + "filePath": "resourceFile899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile900", + "filePath": "resourceFile900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile901", + "filePath": "resourceFile901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile902", + "filePath": "resourceFile902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile903", + "filePath": "resourceFile903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile904", + "filePath": "resourceFile904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile905", + "filePath": "resourceFile905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile906", + "filePath": "resourceFile906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile907", + "filePath": "resourceFile907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile908", + "filePath": "resourceFile908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile909", + "filePath": "resourceFile909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile910", + "filePath": "resourceFile910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile911", + "filePath": "resourceFile911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile912", + "filePath": "resourceFile912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile913", + "filePath": "resourceFile913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile914", + "filePath": "resourceFile914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile915", + "filePath": "resourceFile915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile916", + "filePath": "resourceFile916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile917", + "filePath": "resourceFile917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile918", + "filePath": "resourceFile918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile919", + "filePath": "resourceFile919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile920", + "filePath": "resourceFile920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile921", + "filePath": "resourceFile921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile922", + "filePath": "resourceFile922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile923", + "filePath": "resourceFile923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile924", + "filePath": "resourceFile924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile925", + "filePath": "resourceFile925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile926", + "filePath": "resourceFile926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile927", + "filePath": "resourceFile927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile928", + "filePath": "resourceFile928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile929", + "filePath": "resourceFile929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile930", + "filePath": "resourceFile930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile931", + "filePath": "resourceFile931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile932", + "filePath": "resourceFile932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile933", + "filePath": "resourceFile933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile934", + "filePath": "resourceFile934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile935", + "filePath": "resourceFile935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile936", + "filePath": "resourceFile936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile937", + "filePath": "resourceFile937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile938", + "filePath": "resourceFile938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile939", + "filePath": "resourceFile939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile940", + "filePath": "resourceFile940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile941", + "filePath": "resourceFile941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile942", + "filePath": "resourceFile942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile943", + "filePath": "resourceFile943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile944", + "filePath": "resourceFile944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile945", + "filePath": "resourceFile945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile946", + "filePath": "resourceFile946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile947", + "filePath": "resourceFile947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile948", + "filePath": "resourceFile948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile949", + "filePath": "resourceFile949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile950", + "filePath": "resourceFile950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile951", + "filePath": "resourceFile951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile952", + "filePath": "resourceFile952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile953", + "filePath": "resourceFile953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile954", + "filePath": "resourceFile954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile955", + "filePath": "resourceFile955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile956", + "filePath": "resourceFile956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile957", + "filePath": "resourceFile957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile958", + "filePath": "resourceFile958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile959", + "filePath": "resourceFile959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile960", + "filePath": "resourceFile960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile961", + "filePath": "resourceFile961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile962", + "filePath": "resourceFile962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile963", + "filePath": "resourceFile963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile964", + "filePath": "resourceFile964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile965", + "filePath": "resourceFile965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile966", + "filePath": "resourceFile966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile967", + "filePath": "resourceFile967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile968", + "filePath": "resourceFile968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile969", + "filePath": "resourceFile969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile970", + "filePath": "resourceFile970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile971", + "filePath": "resourceFile971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile972", + "filePath": "resourceFile972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile973", + "filePath": "resourceFile973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile974", + "filePath": "resourceFile974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile975", + "filePath": "resourceFile975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile976", + "filePath": "resourceFile976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile977", + "filePath": "resourceFile977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile978", + "filePath": "resourceFile978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile979", + "filePath": "resourceFile979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile980", + "filePath": "resourceFile980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile981", + "filePath": "resourceFile981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile982", + "filePath": "resourceFile982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile983", + "filePath": "resourceFile983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile984", + "filePath": "resourceFile984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile985", + "filePath": "resourceFile985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile986", + "filePath": "resourceFile986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile987", + "filePath": "resourceFile987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile988", + "filePath": "resourceFile988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile989", + "filePath": "resourceFile989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile990", + "filePath": "resourceFile990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile991", + "filePath": "resourceFile991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile992", + "filePath": "resourceFile992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile993", + "filePath": "resourceFile993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile994", + "filePath": "resourceFile994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile995", + "filePath": "resourceFile995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile996", + "filePath": "resourceFile996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile997", + "filePath": "resourceFile997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile998", + "filePath": "resourceFile998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile999", + "filePath": "resourceFile999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1000", + "filePath": "resourceFile1000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1001", + "filePath": "resourceFile1001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1002", + "filePath": "resourceFile1002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1003", + "filePath": "resourceFile1003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1004", + "filePath": "resourceFile1004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1005", + "filePath": "resourceFile1005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1006", + "filePath": "resourceFile1006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1007", + "filePath": "resourceFile1007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1008", + "filePath": "resourceFile1008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1009", + "filePath": "resourceFile1009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1010", + "filePath": "resourceFile1010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1011", + "filePath": "resourceFile1011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1012", + "filePath": "resourceFile1012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1013", + "filePath": "resourceFile1013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1014", + "filePath": "resourceFile1014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1015", + "filePath": "resourceFile1015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1016", + "filePath": "resourceFile1016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1017", + "filePath": "resourceFile1017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1018", + "filePath": "resourceFile1018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1019", + "filePath": "resourceFile1019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1020", + "filePath": "resourceFile1020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1021", + "filePath": "resourceFile1021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1022", + "filePath": "resourceFile1022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1023", + "filePath": "resourceFile1023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1024", + "filePath": "resourceFile1024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1025", + "filePath": "resourceFile1025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1026", + "filePath": "resourceFile1026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1027", + "filePath": "resourceFile1027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1028", + "filePath": "resourceFile1028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1029", + "filePath": "resourceFile1029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1030", + "filePath": "resourceFile1030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1031", + "filePath": "resourceFile1031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1032", + "filePath": "resourceFile1032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1033", + "filePath": "resourceFile1033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1034", + "filePath": "resourceFile1034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1035", + "filePath": "resourceFile1035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1036", + "filePath": "resourceFile1036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1037", + "filePath": "resourceFile1037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1038", + "filePath": "resourceFile1038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1039", + "filePath": "resourceFile1039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1040", + "filePath": "resourceFile1040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1041", + "filePath": "resourceFile1041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1042", + "filePath": "resourceFile1042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1043", + "filePath": "resourceFile1043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1044", + "filePath": "resourceFile1044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1045", + "filePath": "resourceFile1045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1046", + "filePath": "resourceFile1046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1047", + "filePath": "resourceFile1047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1048", + "filePath": "resourceFile1048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1049", + "filePath": "resourceFile1049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1050", + "filePath": "resourceFile1050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1051", + "filePath": "resourceFile1051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1052", + "filePath": "resourceFile1052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1053", + "filePath": "resourceFile1053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1054", + "filePath": "resourceFile1054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1055", + "filePath": "resourceFile1055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1056", + "filePath": "resourceFile1056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1057", + "filePath": "resourceFile1057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1058", + "filePath": "resourceFile1058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1059", + "filePath": "resourceFile1059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1060", + "filePath": "resourceFile1060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1061", + "filePath": "resourceFile1061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1062", + "filePath": "resourceFile1062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1063", + "filePath": "resourceFile1063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1064", + "filePath": "resourceFile1064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1065", + "filePath": "resourceFile1065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1066", + "filePath": "resourceFile1066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1067", + "filePath": "resourceFile1067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1068", + "filePath": "resourceFile1068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1069", + "filePath": "resourceFile1069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1070", + "filePath": "resourceFile1070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1071", + "filePath": "resourceFile1071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1072", + "filePath": "resourceFile1072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1073", + "filePath": "resourceFile1073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1074", + "filePath": "resourceFile1074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1075", + "filePath": "resourceFile1075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1076", + "filePath": "resourceFile1076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1077", + "filePath": "resourceFile1077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1078", + "filePath": "resourceFile1078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1079", + "filePath": "resourceFile1079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1080", + "filePath": "resourceFile1080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1081", + "filePath": "resourceFile1081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1082", + "filePath": "resourceFile1082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1083", + "filePath": "resourceFile1083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1084", + "filePath": "resourceFile1084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1085", + "filePath": "resourceFile1085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1086", + "filePath": "resourceFile1086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1087", + "filePath": "resourceFile1087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1088", + "filePath": "resourceFile1088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1089", + "filePath": "resourceFile1089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1090", + "filePath": "resourceFile1090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1091", + "filePath": "resourceFile1091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1092", + "filePath": "resourceFile1092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1093", + "filePath": "resourceFile1093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1094", + "filePath": "resourceFile1094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1095", + "filePath": "resourceFile1095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1096", + "filePath": "resourceFile1096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1097", + "filePath": "resourceFile1097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1098", + "filePath": "resourceFile1098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1099", + "filePath": "resourceFile1099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1100", + "filePath": "resourceFile1100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1101", + "filePath": "resourceFile1101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1102", + "filePath": "resourceFile1102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1103", + "filePath": "resourceFile1103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1104", + "filePath": "resourceFile1104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1105", + "filePath": "resourceFile1105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1106", + "filePath": "resourceFile1106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1107", + "filePath": "resourceFile1107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1108", + "filePath": "resourceFile1108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1109", + "filePath": "resourceFile1109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1110", + "filePath": "resourceFile1110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1111", + "filePath": "resourceFile1111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1112", + "filePath": "resourceFile1112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1113", + "filePath": "resourceFile1113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1114", + "filePath": "resourceFile1114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1115", + "filePath": "resourceFile1115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1116", + "filePath": "resourceFile1116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1117", + "filePath": "resourceFile1117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1118", + "filePath": "resourceFile1118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1119", + "filePath": "resourceFile1119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1120", + "filePath": "resourceFile1120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1121", + "filePath": "resourceFile1121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1122", + "filePath": "resourceFile1122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1123", + "filePath": "resourceFile1123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1124", + "filePath": "resourceFile1124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1125", + "filePath": "resourceFile1125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1126", + "filePath": "resourceFile1126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1127", + "filePath": "resourceFile1127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1128", + "filePath": "resourceFile1128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1129", + "filePath": "resourceFile1129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1130", + "filePath": "resourceFile1130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1131", + "filePath": "resourceFile1131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1132", + "filePath": "resourceFile1132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1133", + "filePath": "resourceFile1133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1134", + "filePath": "resourceFile1134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1135", + "filePath": "resourceFile1135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1136", + "filePath": "resourceFile1136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1137", + "filePath": "resourceFile1137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1138", + "filePath": "resourceFile1138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1139", + "filePath": "resourceFile1139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1140", + "filePath": "resourceFile1140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1141", + "filePath": "resourceFile1141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1142", + "filePath": "resourceFile1142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1143", + "filePath": "resourceFile1143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1144", + "filePath": "resourceFile1144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1145", + "filePath": "resourceFile1145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1146", + "filePath": "resourceFile1146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1147", + "filePath": "resourceFile1147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1148", + "filePath": "resourceFile1148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1149", + "filePath": "resourceFile1149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1150", + "filePath": "resourceFile1150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1151", + "filePath": "resourceFile1151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1152", + "filePath": "resourceFile1152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1153", + "filePath": "resourceFile1153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1154", + "filePath": "resourceFile1154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1155", + "filePath": "resourceFile1155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1156", + "filePath": "resourceFile1156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1157", + "filePath": "resourceFile1157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1158", + "filePath": "resourceFile1158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1159", + "filePath": "resourceFile1159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1160", + "filePath": "resourceFile1160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1161", + "filePath": "resourceFile1161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1162", + "filePath": "resourceFile1162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1163", + "filePath": "resourceFile1163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1164", + "filePath": "resourceFile1164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1165", + "filePath": "resourceFile1165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1166", + "filePath": "resourceFile1166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1167", + "filePath": "resourceFile1167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1168", + "filePath": "resourceFile1168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1169", + "filePath": "resourceFile1169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1170", + "filePath": "resourceFile1170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1171", + "filePath": "resourceFile1171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1172", + "filePath": "resourceFile1172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1173", + "filePath": "resourceFile1173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1174", + "filePath": "resourceFile1174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1175", + "filePath": "resourceFile1175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1176", + "filePath": "resourceFile1176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1177", + "filePath": "resourceFile1177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1178", + "filePath": "resourceFile1178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1179", + "filePath": "resourceFile1179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1180", + "filePath": "resourceFile1180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1181", + "filePath": "resourceFile1181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1182", + "filePath": "resourceFile1182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1183", + "filePath": "resourceFile1183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1184", + "filePath": "resourceFile1184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1185", + "filePath": "resourceFile1185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1186", + "filePath": "resourceFile1186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1187", + "filePath": "resourceFile1187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1188", + "filePath": "resourceFile1188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1189", + "filePath": "resourceFile1189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1190", + "filePath": "resourceFile1190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1191", + "filePath": "resourceFile1191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1192", + "filePath": "resourceFile1192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1193", + "filePath": "resourceFile1193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1194", + "filePath": "resourceFile1194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1195", + "filePath": "resourceFile1195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1196", + "filePath": "resourceFile1196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1197", + "filePath": "resourceFile1197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1198", + "filePath": "resourceFile1198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1199", + "filePath": "resourceFile1199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1200", + "filePath": "resourceFile1200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1201", + "filePath": "resourceFile1201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1202", + "filePath": "resourceFile1202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1203", + "filePath": "resourceFile1203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1204", + "filePath": "resourceFile1204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1205", + "filePath": "resourceFile1205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1206", + "filePath": "resourceFile1206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1207", + "filePath": "resourceFile1207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1208", + "filePath": "resourceFile1208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1209", + "filePath": "resourceFile1209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1210", + "filePath": "resourceFile1210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1211", + "filePath": "resourceFile1211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1212", + "filePath": "resourceFile1212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1213", + "filePath": "resourceFile1213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1214", + "filePath": "resourceFile1214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1215", + "filePath": "resourceFile1215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1216", + "filePath": "resourceFile1216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1217", + "filePath": "resourceFile1217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1218", + "filePath": "resourceFile1218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1219", + "filePath": "resourceFile1219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1220", + "filePath": "resourceFile1220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1221", + "filePath": "resourceFile1221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1222", + "filePath": "resourceFile1222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1223", + "filePath": "resourceFile1223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1224", + "filePath": "resourceFile1224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1225", + "filePath": "resourceFile1225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1226", + "filePath": "resourceFile1226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1227", + "filePath": "resourceFile1227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1228", + "filePath": "resourceFile1228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1229", + "filePath": "resourceFile1229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1230", + "filePath": "resourceFile1230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1231", + "filePath": "resourceFile1231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1232", + "filePath": "resourceFile1232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1233", + "filePath": "resourceFile1233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1234", + "filePath": "resourceFile1234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1235", + "filePath": "resourceFile1235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1236", + "filePath": "resourceFile1236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1237", + "filePath": "resourceFile1237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1238", + "filePath": "resourceFile1238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1239", + "filePath": "resourceFile1239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1240", + "filePath": "resourceFile1240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1241", + "filePath": "resourceFile1241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1242", + "filePath": "resourceFile1242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1243", + "filePath": "resourceFile1243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1244", + "filePath": "resourceFile1244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1245", + "filePath": "resourceFile1245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1246", + "filePath": "resourceFile1246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1247", + "filePath": "resourceFile1247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1248", + "filePath": "resourceFile1248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1249", + "filePath": "resourceFile1249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1250", + "filePath": "resourceFile1250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1251", + "filePath": "resourceFile1251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1252", + "filePath": "resourceFile1252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1253", + "filePath": "resourceFile1253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1254", + "filePath": "resourceFile1254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1255", + "filePath": "resourceFile1255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1256", + "filePath": "resourceFile1256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1257", + "filePath": "resourceFile1257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1258", + "filePath": "resourceFile1258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1259", + "filePath": "resourceFile1259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1260", + "filePath": "resourceFile1260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1261", + "filePath": "resourceFile1261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1262", + "filePath": "resourceFile1262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1263", + "filePath": "resourceFile1263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1264", + "filePath": "resourceFile1264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1265", + "filePath": "resourceFile1265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1266", + "filePath": "resourceFile1266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1267", + "filePath": "resourceFile1267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1268", + "filePath": "resourceFile1268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1269", + "filePath": "resourceFile1269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1270", + "filePath": "resourceFile1270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1271", + "filePath": "resourceFile1271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1272", + "filePath": "resourceFile1272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1273", + "filePath": "resourceFile1273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1274", + "filePath": "resourceFile1274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1275", + "filePath": "resourceFile1275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1276", + "filePath": "resourceFile1276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1277", + "filePath": "resourceFile1277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1278", + "filePath": "resourceFile1278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1279", + "filePath": "resourceFile1279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1280", + "filePath": "resourceFile1280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1281", + "filePath": "resourceFile1281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1282", + "filePath": "resourceFile1282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1283", + "filePath": "resourceFile1283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1284", + "filePath": "resourceFile1284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1285", + "filePath": "resourceFile1285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1286", + "filePath": "resourceFile1286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1287", + "filePath": "resourceFile1287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1288", + "filePath": "resourceFile1288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1289", + "filePath": "resourceFile1289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1290", + "filePath": "resourceFile1290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1291", + "filePath": "resourceFile1291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1292", + "filePath": "resourceFile1292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1293", + "filePath": "resourceFile1293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1294", + "filePath": "resourceFile1294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1295", + "filePath": "resourceFile1295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1296", + "filePath": "resourceFile1296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1297", + "filePath": "resourceFile1297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1298", + "filePath": "resourceFile1298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1299", + "filePath": "resourceFile1299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1300", + "filePath": "resourceFile1300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1301", + "filePath": "resourceFile1301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1302", + "filePath": "resourceFile1302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1303", + "filePath": "resourceFile1303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1304", + "filePath": "resourceFile1304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1305", + "filePath": "resourceFile1305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1306", + "filePath": "resourceFile1306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1307", + "filePath": "resourceFile1307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1308", + "filePath": "resourceFile1308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1309", + "filePath": "resourceFile1309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1310", + "filePath": "resourceFile1310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1311", + "filePath": "resourceFile1311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1312", + "filePath": "resourceFile1312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1313", + "filePath": "resourceFile1313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1314", + "filePath": "resourceFile1314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1315", + "filePath": "resourceFile1315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1316", + "filePath": "resourceFile1316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1317", + "filePath": "resourceFile1317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1318", + "filePath": "resourceFile1318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1319", + "filePath": "resourceFile1319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1320", + "filePath": "resourceFile1320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1321", + "filePath": "resourceFile1321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1322", + "filePath": "resourceFile1322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1323", + "filePath": "resourceFile1323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1324", + "filePath": "resourceFile1324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1325", + "filePath": "resourceFile1325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1326", + "filePath": "resourceFile1326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1327", + "filePath": "resourceFile1327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1328", + "filePath": "resourceFile1328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1329", + "filePath": "resourceFile1329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1330", + "filePath": "resourceFile1330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1331", + "filePath": "resourceFile1331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1332", + "filePath": "resourceFile1332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1333", + "filePath": "resourceFile1333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1334", + "filePath": "resourceFile1334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1335", + "filePath": "resourceFile1335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1336", + "filePath": "resourceFile1336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1337", + "filePath": "resourceFile1337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1338", + "filePath": "resourceFile1338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1339", + "filePath": "resourceFile1339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1340", + "filePath": "resourceFile1340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1341", + "filePath": "resourceFile1341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1342", + "filePath": "resourceFile1342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1343", + "filePath": "resourceFile1343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1344", + "filePath": "resourceFile1344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1345", + "filePath": "resourceFile1345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1346", + "filePath": "resourceFile1346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1347", + "filePath": "resourceFile1347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1348", + "filePath": "resourceFile1348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1349", + "filePath": "resourceFile1349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1350", + "filePath": "resourceFile1350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1351", + "filePath": "resourceFile1351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1352", + "filePath": "resourceFile1352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1353", + "filePath": "resourceFile1353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1354", + "filePath": "resourceFile1354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1355", + "filePath": "resourceFile1355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1356", + "filePath": "resourceFile1356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1357", + "filePath": "resourceFile1357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1358", + "filePath": "resourceFile1358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1359", + "filePath": "resourceFile1359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1360", + "filePath": "resourceFile1360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1361", + "filePath": "resourceFile1361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1362", + "filePath": "resourceFile1362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1363", + "filePath": "resourceFile1363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1364", + "filePath": "resourceFile1364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1365", + "filePath": "resourceFile1365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1366", + "filePath": "resourceFile1366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1367", + "filePath": "resourceFile1367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1368", + "filePath": "resourceFile1368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1369", + "filePath": "resourceFile1369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1370", + "filePath": "resourceFile1370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1371", + "filePath": "resourceFile1371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1372", + "filePath": "resourceFile1372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1373", + "filePath": "resourceFile1373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1374", + "filePath": "resourceFile1374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1375", + "filePath": "resourceFile1375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1376", + "filePath": "resourceFile1376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1377", + "filePath": "resourceFile1377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1378", + "filePath": "resourceFile1378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1379", + "filePath": "resourceFile1379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1380", + "filePath": "resourceFile1380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1381", + "filePath": "resourceFile1381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1382", + "filePath": "resourceFile1382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1383", + "filePath": "resourceFile1383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1384", + "filePath": "resourceFile1384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1385", + "filePath": "resourceFile1385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1386", + "filePath": "resourceFile1386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1387", + "filePath": "resourceFile1387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1388", + "filePath": "resourceFile1388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1389", + "filePath": "resourceFile1389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1390", + "filePath": "resourceFile1390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1391", + "filePath": "resourceFile1391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1392", + "filePath": "resourceFile1392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1393", + "filePath": "resourceFile1393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1394", + "filePath": "resourceFile1394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1395", + "filePath": "resourceFile1395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1396", + "filePath": "resourceFile1396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1397", + "filePath": "resourceFile1397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1398", + "filePath": "resourceFile1398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1399", + "filePath": "resourceFile1399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1400", + "filePath": "resourceFile1400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1401", + "filePath": "resourceFile1401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1402", + "filePath": "resourceFile1402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1403", + "filePath": "resourceFile1403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1404", + "filePath": "resourceFile1404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1405", + "filePath": "resourceFile1405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1406", + "filePath": "resourceFile1406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1407", + "filePath": "resourceFile1407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1408", + "filePath": "resourceFile1408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1409", + "filePath": "resourceFile1409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1410", + "filePath": "resourceFile1410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1411", + "filePath": "resourceFile1411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1412", + "filePath": "resourceFile1412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1413", + "filePath": "resourceFile1413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1414", + "filePath": "resourceFile1414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1415", + "filePath": "resourceFile1415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1416", + "filePath": "resourceFile1416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1417", + "filePath": "resourceFile1417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1418", + "filePath": "resourceFile1418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1419", + "filePath": "resourceFile1419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1420", + "filePath": "resourceFile1420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1421", + "filePath": "resourceFile1421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1422", + "filePath": "resourceFile1422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1423", + "filePath": "resourceFile1423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1424", + "filePath": "resourceFile1424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1425", + "filePath": "resourceFile1425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1426", + "filePath": "resourceFile1426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1427", + "filePath": "resourceFile1427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1428", + "filePath": "resourceFile1428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1429", + "filePath": "resourceFile1429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1430", + "filePath": "resourceFile1430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1431", + "filePath": "resourceFile1431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1432", + "filePath": "resourceFile1432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1433", + "filePath": "resourceFile1433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1434", + "filePath": "resourceFile1434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1435", + "filePath": "resourceFile1435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1436", + "filePath": "resourceFile1436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1437", + "filePath": "resourceFile1437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1438", + "filePath": "resourceFile1438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1439", + "filePath": "resourceFile1439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1440", + "filePath": "resourceFile1440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1441", + "filePath": "resourceFile1441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1442", + "filePath": "resourceFile1442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1443", + "filePath": "resourceFile1443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1444", + "filePath": "resourceFile1444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1445", + "filePath": "resourceFile1445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1446", + "filePath": "resourceFile1446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1447", + "filePath": "resourceFile1447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1448", + "filePath": "resourceFile1448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1449", + "filePath": "resourceFile1449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1450", + "filePath": "resourceFile1450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1451", + "filePath": "resourceFile1451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1452", + "filePath": "resourceFile1452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1453", + "filePath": "resourceFile1453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1454", + "filePath": "resourceFile1454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1455", + "filePath": "resourceFile1455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1456", + "filePath": "resourceFile1456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1457", + "filePath": "resourceFile1457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1458", + "filePath": "resourceFile1458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1459", + "filePath": "resourceFile1459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1460", + "filePath": "resourceFile1460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1461", + "filePath": "resourceFile1461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1462", + "filePath": "resourceFile1462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1463", + "filePath": "resourceFile1463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1464", + "filePath": "resourceFile1464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1465", + "filePath": "resourceFile1465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1466", + "filePath": "resourceFile1466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1467", + "filePath": "resourceFile1467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1468", + "filePath": "resourceFile1468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1469", + "filePath": "resourceFile1469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1470", + "filePath": "resourceFile1470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1471", + "filePath": "resourceFile1471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1472", + "filePath": "resourceFile1472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1473", + "filePath": "resourceFile1473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1474", + "filePath": "resourceFile1474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1475", + "filePath": "resourceFile1475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1476", + "filePath": "resourceFile1476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1477", + "filePath": "resourceFile1477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1478", + "filePath": "resourceFile1478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1479", + "filePath": "resourceFile1479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1480", + "filePath": "resourceFile1480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1481", + "filePath": "resourceFile1481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1482", + "filePath": "resourceFile1482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1483", + "filePath": "resourceFile1483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1484", + "filePath": "resourceFile1484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1485", + "filePath": "resourceFile1485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1486", + "filePath": "resourceFile1486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1487", + "filePath": "resourceFile1487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1488", + "filePath": "resourceFile1488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1489", + "filePath": "resourceFile1489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1490", + "filePath": "resourceFile1490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1491", + "filePath": "resourceFile1491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1492", + "filePath": "resourceFile1492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1493", + "filePath": "resourceFile1493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1494", + "filePath": "resourceFile1494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1495", + "filePath": "resourceFile1495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1496", + "filePath": "resourceFile1496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1497", + "filePath": "resourceFile1497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1498", + "filePath": "resourceFile1498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1499", + "filePath": "resourceFile1499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1500", + "filePath": "resourceFile1500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1501", + "filePath": "resourceFile1501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1502", + "filePath": "resourceFile1502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1503", + "filePath": "resourceFile1503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1504", + "filePath": "resourceFile1504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1505", + "filePath": "resourceFile1505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1506", + "filePath": "resourceFile1506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1507", + "filePath": "resourceFile1507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1508", + "filePath": "resourceFile1508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1509", + "filePath": "resourceFile1509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1510", + "filePath": "resourceFile1510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1511", + "filePath": "resourceFile1511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1512", + "filePath": "resourceFile1512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1513", + "filePath": "resourceFile1513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1514", + "filePath": "resourceFile1514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1515", + "filePath": "resourceFile1515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1516", + "filePath": "resourceFile1516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1517", + "filePath": "resourceFile1517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1518", + "filePath": "resourceFile1518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1519", + "filePath": "resourceFile1519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1520", + "filePath": "resourceFile1520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1521", + "filePath": "resourceFile1521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1522", + "filePath": "resourceFile1522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1523", + "filePath": "resourceFile1523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1524", + "filePath": "resourceFile1524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1525", + "filePath": "resourceFile1525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1526", + "filePath": "resourceFile1526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1527", + "filePath": "resourceFile1527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1528", + "filePath": "resourceFile1528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1529", + "filePath": "resourceFile1529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1530", + "filePath": "resourceFile1530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1531", + "filePath": "resourceFile1531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1532", + "filePath": "resourceFile1532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1533", + "filePath": "resourceFile1533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1534", + "filePath": "resourceFile1534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1535", + "filePath": "resourceFile1535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1536", + "filePath": "resourceFile1536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1537", + "filePath": "resourceFile1537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1538", + "filePath": "resourceFile1538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1539", + "filePath": "resourceFile1539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1540", + "filePath": "resourceFile1540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1541", + "filePath": "resourceFile1541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1542", + "filePath": "resourceFile1542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1543", + "filePath": "resourceFile1543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1544", + "filePath": "resourceFile1544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1545", + "filePath": "resourceFile1545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1546", + "filePath": "resourceFile1546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1547", + "filePath": "resourceFile1547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1548", + "filePath": "resourceFile1548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1549", + "filePath": "resourceFile1549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1550", + "filePath": "resourceFile1550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1551", + "filePath": "resourceFile1551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1552", + "filePath": "resourceFile1552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1553", + "filePath": "resourceFile1553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1554", + "filePath": "resourceFile1554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1555", + "filePath": "resourceFile1555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1556", + "filePath": "resourceFile1556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1557", + "filePath": "resourceFile1557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1558", + "filePath": "resourceFile1558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1559", + "filePath": "resourceFile1559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1560", + "filePath": "resourceFile1560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1561", + "filePath": "resourceFile1561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1562", + "filePath": "resourceFile1562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1563", + "filePath": "resourceFile1563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1564", + "filePath": "resourceFile1564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1565", + "filePath": "resourceFile1565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1566", + "filePath": "resourceFile1566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1567", + "filePath": "resourceFile1567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1568", + "filePath": "resourceFile1568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1569", + "filePath": "resourceFile1569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1570", + "filePath": "resourceFile1570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1571", + "filePath": "resourceFile1571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1572", + "filePath": "resourceFile1572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1573", + "filePath": "resourceFile1573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1574", + "filePath": "resourceFile1574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1575", + "filePath": "resourceFile1575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1576", + "filePath": "resourceFile1576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1577", + "filePath": "resourceFile1577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1578", + "filePath": "resourceFile1578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1579", + "filePath": "resourceFile1579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1580", + "filePath": "resourceFile1580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1581", + "filePath": "resourceFile1581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1582", + "filePath": "resourceFile1582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1583", + "filePath": "resourceFile1583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1584", + "filePath": "resourceFile1584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1585", + "filePath": "resourceFile1585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1586", + "filePath": "resourceFile1586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1587", + "filePath": "resourceFile1587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1588", + "filePath": "resourceFile1588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1589", + "filePath": "resourceFile1589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1590", + "filePath": "resourceFile1590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1591", + "filePath": "resourceFile1591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1592", + "filePath": "resourceFile1592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1593", + "filePath": "resourceFile1593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1594", + "filePath": "resourceFile1594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1595", + "filePath": "resourceFile1595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1596", + "filePath": "resourceFile1596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1597", + "filePath": "resourceFile1597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1598", + "filePath": "resourceFile1598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1599", + "filePath": "resourceFile1599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1600", + "filePath": "resourceFile1600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1601", + "filePath": "resourceFile1601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1602", + "filePath": "resourceFile1602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1603", + "filePath": "resourceFile1603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1604", + "filePath": "resourceFile1604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1605", + "filePath": "resourceFile1605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1606", + "filePath": "resourceFile1606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1607", + "filePath": "resourceFile1607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1608", + "filePath": "resourceFile1608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1609", + "filePath": "resourceFile1609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1610", + "filePath": "resourceFile1610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1611", + "filePath": "resourceFile1611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1612", + "filePath": "resourceFile1612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1613", + "filePath": "resourceFile1613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1614", + "filePath": "resourceFile1614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1615", + "filePath": "resourceFile1615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1616", + "filePath": "resourceFile1616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1617", + "filePath": "resourceFile1617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1618", + "filePath": "resourceFile1618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1619", + "filePath": "resourceFile1619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1620", + "filePath": "resourceFile1620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1621", + "filePath": "resourceFile1621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1622", + "filePath": "resourceFile1622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1623", + "filePath": "resourceFile1623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1624", + "filePath": "resourceFile1624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1625", + "filePath": "resourceFile1625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1626", + "filePath": "resourceFile1626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1627", + "filePath": "resourceFile1627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1628", + "filePath": "resourceFile1628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1629", + "filePath": "resourceFile1629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1630", + "filePath": "resourceFile1630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1631", + "filePath": "resourceFile1631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1632", + "filePath": "resourceFile1632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1633", + "filePath": "resourceFile1633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1634", + "filePath": "resourceFile1634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1635", + "filePath": "resourceFile1635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1636", + "filePath": "resourceFile1636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1637", + "filePath": "resourceFile1637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1638", + "filePath": "resourceFile1638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1639", + "filePath": "resourceFile1639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1640", + "filePath": "resourceFile1640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1641", + "filePath": "resourceFile1641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1642", + "filePath": "resourceFile1642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1643", + "filePath": "resourceFile1643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1644", + "filePath": "resourceFile1644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1645", + "filePath": "resourceFile1645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1646", + "filePath": "resourceFile1646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1647", + "filePath": "resourceFile1647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1648", + "filePath": "resourceFile1648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1649", + "filePath": "resourceFile1649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1650", + "filePath": "resourceFile1650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1651", + "filePath": "resourceFile1651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1652", + "filePath": "resourceFile1652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1653", + "filePath": "resourceFile1653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1654", + "filePath": "resourceFile1654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1655", + "filePath": "resourceFile1655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1656", + "filePath": "resourceFile1656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1657", + "filePath": "resourceFile1657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1658", + "filePath": "resourceFile1658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1659", + "filePath": "resourceFile1659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1660", + "filePath": "resourceFile1660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1661", + "filePath": "resourceFile1661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1662", + "filePath": "resourceFile1662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1663", + "filePath": "resourceFile1663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1664", + "filePath": "resourceFile1664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1665", + "filePath": "resourceFile1665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1666", + "filePath": "resourceFile1666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1667", + "filePath": "resourceFile1667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1668", + "filePath": "resourceFile1668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1669", + "filePath": "resourceFile1669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1670", + "filePath": "resourceFile1670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1671", + "filePath": "resourceFile1671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1672", + "filePath": "resourceFile1672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1673", + "filePath": "resourceFile1673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1674", + "filePath": "resourceFile1674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1675", + "filePath": "resourceFile1675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1676", + "filePath": "resourceFile1676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1677", + "filePath": "resourceFile1677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1678", + "filePath": "resourceFile1678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1679", + "filePath": "resourceFile1679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1680", + "filePath": "resourceFile1680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1681", + "filePath": "resourceFile1681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1682", + "filePath": "resourceFile1682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1683", + "filePath": "resourceFile1683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1684", + "filePath": "resourceFile1684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1685", + "filePath": "resourceFile1685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1686", + "filePath": "resourceFile1686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1687", + "filePath": "resourceFile1687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1688", + "filePath": "resourceFile1688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1689", + "filePath": "resourceFile1689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1690", + "filePath": "resourceFile1690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1691", + "filePath": "resourceFile1691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1692", + "filePath": "resourceFile1692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1693", + "filePath": "resourceFile1693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1694", + "filePath": "resourceFile1694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1695", + "filePath": "resourceFile1695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1696", + "filePath": "resourceFile1696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1697", + "filePath": "resourceFile1697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1698", + "filePath": "resourceFile1698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1699", + "filePath": "resourceFile1699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1700", + "filePath": "resourceFile1700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1701", + "filePath": "resourceFile1701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1702", + "filePath": "resourceFile1702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1703", + "filePath": "resourceFile1703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1704", + "filePath": "resourceFile1704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1705", + "filePath": "resourceFile1705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1706", + "filePath": "resourceFile1706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1707", + "filePath": "resourceFile1707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1708", + "filePath": "resourceFile1708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1709", + "filePath": "resourceFile1709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1710", + "filePath": "resourceFile1710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1711", + "filePath": "resourceFile1711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1712", + "filePath": "resourceFile1712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1713", + "filePath": "resourceFile1713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1714", + "filePath": "resourceFile1714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1715", + "filePath": "resourceFile1715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1716", + "filePath": "resourceFile1716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1717", + "filePath": "resourceFile1717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1718", + "filePath": "resourceFile1718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1719", + "filePath": "resourceFile1719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1720", + "filePath": "resourceFile1720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1721", + "filePath": "resourceFile1721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1722", + "filePath": "resourceFile1722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1723", + "filePath": "resourceFile1723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1724", + "filePath": "resourceFile1724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1725", + "filePath": "resourceFile1725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1726", + "filePath": "resourceFile1726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1727", + "filePath": "resourceFile1727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1728", + "filePath": "resourceFile1728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1729", + "filePath": "resourceFile1729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1730", + "filePath": "resourceFile1730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1731", + "filePath": "resourceFile1731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1732", + "filePath": "resourceFile1732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1733", + "filePath": "resourceFile1733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1734", + "filePath": "resourceFile1734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1735", + "filePath": "resourceFile1735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1736", + "filePath": "resourceFile1736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1737", + "filePath": "resourceFile1737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1738", + "filePath": "resourceFile1738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1739", + "filePath": "resourceFile1739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1740", + "filePath": "resourceFile1740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1741", + "filePath": "resourceFile1741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1742", + "filePath": "resourceFile1742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1743", + "filePath": "resourceFile1743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1744", + "filePath": "resourceFile1744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1745", + "filePath": "resourceFile1745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1746", + "filePath": "resourceFile1746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1747", + "filePath": "resourceFile1747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1748", + "filePath": "resourceFile1748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1749", + "filePath": "resourceFile1749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1750", + "filePath": "resourceFile1750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1751", + "filePath": "resourceFile1751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1752", + "filePath": "resourceFile1752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1753", + "filePath": "resourceFile1753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1754", + "filePath": "resourceFile1754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1755", + "filePath": "resourceFile1755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1756", + "filePath": "resourceFile1756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1757", + "filePath": "resourceFile1757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1758", + "filePath": "resourceFile1758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1759", + "filePath": "resourceFile1759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1760", + "filePath": "resourceFile1760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1761", + "filePath": "resourceFile1761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1762", + "filePath": "resourceFile1762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1763", + "filePath": "resourceFile1763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1764", + "filePath": "resourceFile1764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1765", + "filePath": "resourceFile1765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1766", + "filePath": "resourceFile1766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1767", + "filePath": "resourceFile1767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1768", + "filePath": "resourceFile1768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1769", + "filePath": "resourceFile1769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1770", + "filePath": "resourceFile1770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1771", + "filePath": "resourceFile1771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1772", + "filePath": "resourceFile1772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1773", + "filePath": "resourceFile1773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1774", + "filePath": "resourceFile1774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1775", + "filePath": "resourceFile1775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1776", + "filePath": "resourceFile1776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1777", + "filePath": "resourceFile1777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1778", + "filePath": "resourceFile1778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1779", + "filePath": "resourceFile1779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1780", + "filePath": "resourceFile1780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1781", + "filePath": "resourceFile1781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1782", + "filePath": "resourceFile1782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1783", + "filePath": "resourceFile1783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1784", + "filePath": "resourceFile1784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1785", + "filePath": "resourceFile1785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1786", + "filePath": "resourceFile1786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1787", + "filePath": "resourceFile1787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1788", + "filePath": "resourceFile1788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1789", + "filePath": "resourceFile1789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1790", + "filePath": "resourceFile1790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1791", + "filePath": "resourceFile1791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1792", + "filePath": "resourceFile1792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1793", + "filePath": "resourceFile1793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1794", + "filePath": "resourceFile1794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1795", + "filePath": "resourceFile1795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1796", + "filePath": "resourceFile1796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1797", + "filePath": "resourceFile1797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1798", + "filePath": "resourceFile1798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1799", + "filePath": "resourceFile1799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1800", + "filePath": "resourceFile1800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1801", + "filePath": "resourceFile1801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1802", + "filePath": "resourceFile1802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1803", + "filePath": "resourceFile1803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1804", + "filePath": "resourceFile1804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1805", + "filePath": "resourceFile1805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1806", + "filePath": "resourceFile1806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1807", + "filePath": "resourceFile1807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1808", + "filePath": "resourceFile1808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1809", + "filePath": "resourceFile1809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1810", + "filePath": "resourceFile1810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1811", + "filePath": "resourceFile1811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1812", + "filePath": "resourceFile1812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1813", + "filePath": "resourceFile1813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1814", + "filePath": "resourceFile1814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1815", + "filePath": "resourceFile1815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1816", + "filePath": "resourceFile1816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1817", + "filePath": "resourceFile1817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1818", + "filePath": "resourceFile1818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1819", + "filePath": "resourceFile1819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1820", + "filePath": "resourceFile1820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1821", + "filePath": "resourceFile1821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1822", + "filePath": "resourceFile1822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1823", + "filePath": "resourceFile1823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1824", + "filePath": "resourceFile1824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1825", + "filePath": "resourceFile1825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1826", + "filePath": "resourceFile1826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1827", + "filePath": "resourceFile1827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1828", + "filePath": "resourceFile1828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1829", + "filePath": "resourceFile1829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1830", + "filePath": "resourceFile1830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1831", + "filePath": "resourceFile1831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1832", + "filePath": "resourceFile1832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1833", + "filePath": "resourceFile1833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1834", + "filePath": "resourceFile1834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1835", + "filePath": "resourceFile1835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1836", + "filePath": "resourceFile1836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1837", + "filePath": "resourceFile1837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1838", + "filePath": "resourceFile1838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1839", + "filePath": "resourceFile1839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1840", + "filePath": "resourceFile1840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1841", + "filePath": "resourceFile1841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1842", + "filePath": "resourceFile1842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1843", + "filePath": "resourceFile1843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1844", + "filePath": "resourceFile1844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1845", + "filePath": "resourceFile1845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1846", + "filePath": "resourceFile1846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1847", + "filePath": "resourceFile1847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1848", + "filePath": "resourceFile1848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1849", + "filePath": "resourceFile1849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1850", + "filePath": "resourceFile1850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1851", + "filePath": "resourceFile1851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1852", + "filePath": "resourceFile1852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1853", + "filePath": "resourceFile1853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1854", + "filePath": "resourceFile1854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1855", + "filePath": "resourceFile1855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1856", + "filePath": "resourceFile1856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1857", + "filePath": "resourceFile1857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1858", + "filePath": "resourceFile1858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1859", + "filePath": "resourceFile1859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1860", + "filePath": "resourceFile1860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1861", + "filePath": "resourceFile1861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1862", + "filePath": "resourceFile1862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1863", + "filePath": "resourceFile1863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1864", + "filePath": "resourceFile1864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1865", + "filePath": "resourceFile1865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1866", + "filePath": "resourceFile1866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1867", + "filePath": "resourceFile1867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1868", + "filePath": "resourceFile1868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1869", + "filePath": "resourceFile1869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1870", + "filePath": "resourceFile1870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1871", + "filePath": "resourceFile1871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1872", + "filePath": "resourceFile1872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1873", + "filePath": "resourceFile1873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1874", + "filePath": "resourceFile1874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1875", + "filePath": "resourceFile1875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1876", + "filePath": "resourceFile1876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1877", + "filePath": "resourceFile1877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1878", + "filePath": "resourceFile1878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1879", + "filePath": "resourceFile1879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1880", + "filePath": "resourceFile1880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1881", + "filePath": "resourceFile1881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1882", + "filePath": "resourceFile1882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1883", + "filePath": "resourceFile1883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1884", + "filePath": "resourceFile1884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1885", + "filePath": "resourceFile1885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1886", + "filePath": "resourceFile1886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1887", + "filePath": "resourceFile1887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1888", + "filePath": "resourceFile1888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1889", + "filePath": "resourceFile1889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1890", + "filePath": "resourceFile1890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1891", + "filePath": "resourceFile1891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1892", + "filePath": "resourceFile1892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1893", + "filePath": "resourceFile1893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1894", + "filePath": "resourceFile1894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1895", + "filePath": "resourceFile1895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1896", + "filePath": "resourceFile1896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1897", + "filePath": "resourceFile1897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1898", + "filePath": "resourceFile1898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1899", + "filePath": "resourceFile1899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1900", + "filePath": "resourceFile1900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1901", + "filePath": "resourceFile1901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1902", + "filePath": "resourceFile1902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1903", + "filePath": "resourceFile1903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1904", + "filePath": "resourceFile1904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1905", + "filePath": "resourceFile1905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1906", + "filePath": "resourceFile1906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1907", + "filePath": "resourceFile1907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1908", + "filePath": "resourceFile1908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1909", + "filePath": "resourceFile1909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1910", + "filePath": "resourceFile1910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1911", + "filePath": "resourceFile1911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1912", + "filePath": "resourceFile1912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1913", + "filePath": "resourceFile1913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1914", + "filePath": "resourceFile1914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1915", + "filePath": "resourceFile1915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1916", + "filePath": "resourceFile1916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1917", + "filePath": "resourceFile1917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1918", + "filePath": "resourceFile1918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1919", + "filePath": "resourceFile1919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1920", + "filePath": "resourceFile1920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1921", + "filePath": "resourceFile1921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1922", + "filePath": "resourceFile1922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1923", + "filePath": "resourceFile1923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1924", + "filePath": "resourceFile1924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1925", + "filePath": "resourceFile1925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1926", + "filePath": "resourceFile1926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1927", + "filePath": "resourceFile1927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1928", + "filePath": "resourceFile1928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1929", + "filePath": "resourceFile1929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1930", + "filePath": "resourceFile1930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1931", + "filePath": "resourceFile1931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1932", + "filePath": "resourceFile1932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1933", + "filePath": "resourceFile1933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1934", + "filePath": "resourceFile1934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1935", + "filePath": "resourceFile1935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1936", + "filePath": "resourceFile1936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1937", + "filePath": "resourceFile1937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1938", + "filePath": "resourceFile1938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1939", + "filePath": "resourceFile1939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1940", + "filePath": "resourceFile1940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1941", + "filePath": "resourceFile1941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1942", + "filePath": "resourceFile1942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1943", + "filePath": "resourceFile1943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1944", + "filePath": "resourceFile1944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1945", + "filePath": "resourceFile1945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1946", + "filePath": "resourceFile1946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1947", + "filePath": "resourceFile1947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1948", + "filePath": "resourceFile1948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1949", + "filePath": "resourceFile1949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1950", + "filePath": "resourceFile1950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1951", + "filePath": "resourceFile1951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1952", + "filePath": "resourceFile1952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1953", + "filePath": "resourceFile1953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1954", + "filePath": "resourceFile1954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1955", + "filePath": "resourceFile1955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1956", + "filePath": "resourceFile1956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1957", + "filePath": "resourceFile1957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1958", + "filePath": "resourceFile1958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1959", + "filePath": "resourceFile1959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1960", + "filePath": "resourceFile1960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1961", + "filePath": "resourceFile1961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1962", + "filePath": "resourceFile1962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1963", + "filePath": "resourceFile1963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1964", + "filePath": "resourceFile1964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1965", + "filePath": "resourceFile1965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1966", + "filePath": "resourceFile1966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1967", + "filePath": "resourceFile1967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1968", + "filePath": "resourceFile1968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1969", + "filePath": "resourceFile1969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1970", + "filePath": "resourceFile1970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1971", + "filePath": "resourceFile1971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1972", + "filePath": "resourceFile1972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1973", + "filePath": "resourceFile1973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1974", + "filePath": "resourceFile1974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1975", + "filePath": "resourceFile1975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1976", + "filePath": "resourceFile1976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1977", + "filePath": "resourceFile1977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1978", + "filePath": "resourceFile1978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1979", + "filePath": "resourceFile1979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1980", + "filePath": "resourceFile1980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1981", + "filePath": "resourceFile1981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1982", + "filePath": "resourceFile1982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1983", + "filePath": "resourceFile1983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1984", + "filePath": "resourceFile1984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1985", + "filePath": "resourceFile1985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1986", + "filePath": "resourceFile1986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1987", + "filePath": "resourceFile1987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1988", + "filePath": "resourceFile1988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1989", + "filePath": "resourceFile1989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1990", + "filePath": "resourceFile1990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1991", + "filePath": "resourceFile1991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1992", + "filePath": "resourceFile1992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1993", + "filePath": "resourceFile1993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1994", + "filePath": "resourceFile1994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1995", + "filePath": "resourceFile1995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1996", + "filePath": "resourceFile1996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1997", + "filePath": "resourceFile1997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1998", + "filePath": "resourceFile1998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1999", + "filePath": "resourceFile1999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2000", + "filePath": "resourceFile2000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2001", + "filePath": "resourceFile2001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2002", + "filePath": "resourceFile2002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2003", + "filePath": "resourceFile2003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2004", + "filePath": "resourceFile2004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2005", + "filePath": "resourceFile2005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2006", + "filePath": "resourceFile2006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2007", + "filePath": "resourceFile2007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2008", + "filePath": "resourceFile2008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2009", + "filePath": "resourceFile2009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2010", + "filePath": "resourceFile2010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2011", + "filePath": "resourceFile2011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2012", + "filePath": "resourceFile2012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2013", + "filePath": "resourceFile2013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2014", + "filePath": "resourceFile2014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2015", + "filePath": "resourceFile2015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2016", + "filePath": "resourceFile2016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2017", + "filePath": "resourceFile2017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2018", + "filePath": "resourceFile2018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2019", + "filePath": "resourceFile2019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2020", + "filePath": "resourceFile2020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2021", + "filePath": "resourceFile2021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2022", + "filePath": "resourceFile2022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2023", + "filePath": "resourceFile2023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2024", + "filePath": "resourceFile2024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2025", + "filePath": "resourceFile2025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2026", + "filePath": "resourceFile2026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2027", + "filePath": "resourceFile2027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2028", + "filePath": "resourceFile2028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2029", + "filePath": "resourceFile2029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2030", + "filePath": "resourceFile2030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2031", + "filePath": "resourceFile2031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2032", + "filePath": "resourceFile2032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2033", + "filePath": "resourceFile2033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2034", + "filePath": "resourceFile2034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2035", + "filePath": "resourceFile2035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2036", + "filePath": "resourceFile2036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2037", + "filePath": "resourceFile2037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2038", + "filePath": "resourceFile2038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2039", + "filePath": "resourceFile2039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2040", + "filePath": "resourceFile2040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2041", + "filePath": "resourceFile2041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2042", + "filePath": "resourceFile2042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2043", + "filePath": "resourceFile2043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2044", + "filePath": "resourceFile2044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2045", + "filePath": "resourceFile2045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2046", + "filePath": "resourceFile2046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2047", + "filePath": "resourceFile2047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2048", + "filePath": "resourceFile2048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2049", + "filePath": "resourceFile2049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2050", + "filePath": "resourceFile2050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2051", + "filePath": "resourceFile2051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2052", + "filePath": "resourceFile2052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2053", + "filePath": "resourceFile2053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2054", + "filePath": "resourceFile2054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2055", + "filePath": "resourceFile2055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2056", + "filePath": "resourceFile2056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2057", + "filePath": "resourceFile2057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2058", + "filePath": "resourceFile2058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2059", + "filePath": "resourceFile2059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2060", + "filePath": "resourceFile2060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2061", + "filePath": "resourceFile2061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2062", + "filePath": "resourceFile2062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2063", + "filePath": "resourceFile2063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2064", + "filePath": "resourceFile2064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2065", + "filePath": "resourceFile2065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2066", + "filePath": "resourceFile2066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2067", + "filePath": "resourceFile2067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2068", + "filePath": "resourceFile2068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2069", + "filePath": "resourceFile2069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2070", + "filePath": "resourceFile2070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2071", + "filePath": "resourceFile2071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2072", + "filePath": "resourceFile2072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2073", + "filePath": "resourceFile2073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2074", + "filePath": "resourceFile2074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2075", + "filePath": "resourceFile2075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2076", + "filePath": "resourceFile2076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2077", + "filePath": "resourceFile2077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2078", + "filePath": "resourceFile2078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2079", + "filePath": "resourceFile2079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2080", + "filePath": "resourceFile2080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2081", + "filePath": "resourceFile2081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2082", + "filePath": "resourceFile2082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2083", + "filePath": "resourceFile2083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2084", + "filePath": "resourceFile2084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2085", + "filePath": "resourceFile2085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2086", + "filePath": "resourceFile2086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2087", + "filePath": "resourceFile2087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2088", + "filePath": "resourceFile2088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2089", + "filePath": "resourceFile2089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2090", + "filePath": "resourceFile2090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2091", + "filePath": "resourceFile2091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2092", + "filePath": "resourceFile2092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2093", + "filePath": "resourceFile2093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2094", + "filePath": "resourceFile2094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2095", + "filePath": "resourceFile2095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2096", + "filePath": "resourceFile2096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2097", + "filePath": "resourceFile2097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2098", + "filePath": "resourceFile2098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2099", + "filePath": "resourceFile2099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2100", + "filePath": "resourceFile2100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2101", + "filePath": "resourceFile2101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2102", + "filePath": "resourceFile2102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2103", + "filePath": "resourceFile2103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2104", + "filePath": "resourceFile2104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2105", + "filePath": "resourceFile2105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2106", + "filePath": "resourceFile2106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2107", + "filePath": "resourceFile2107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2108", + "filePath": "resourceFile2108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2109", + "filePath": "resourceFile2109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2110", + "filePath": "resourceFile2110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2111", + "filePath": "resourceFile2111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2112", + "filePath": "resourceFile2112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2113", + "filePath": "resourceFile2113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2114", + "filePath": "resourceFile2114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2115", + "filePath": "resourceFile2115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2116", + "filePath": "resourceFile2116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2117", + "filePath": "resourceFile2117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2118", + "filePath": "resourceFile2118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2119", + "filePath": "resourceFile2119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2120", + "filePath": "resourceFile2120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2121", + "filePath": "resourceFile2121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2122", + "filePath": "resourceFile2122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2123", + "filePath": "resourceFile2123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2124", + "filePath": "resourceFile2124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2125", + "filePath": "resourceFile2125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2126", + "filePath": "resourceFile2126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2127", + "filePath": "resourceFile2127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2128", + "filePath": "resourceFile2128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2129", + "filePath": "resourceFile2129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2130", + "filePath": "resourceFile2130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2131", + "filePath": "resourceFile2131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2132", + "filePath": "resourceFile2132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2133", + "filePath": "resourceFile2133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2134", + "filePath": "resourceFile2134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2135", + "filePath": "resourceFile2135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2136", + "filePath": "resourceFile2136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2137", + "filePath": "resourceFile2137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2138", + "filePath": "resourceFile2138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2139", + "filePath": "resourceFile2139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2140", + "filePath": "resourceFile2140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2141", + "filePath": "resourceFile2141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2142", + "filePath": "resourceFile2142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2143", + "filePath": "resourceFile2143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2144", + "filePath": "resourceFile2144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2145", + "filePath": "resourceFile2145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2146", + "filePath": "resourceFile2146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2147", + "filePath": "resourceFile2147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2148", + "filePath": "resourceFile2148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2149", + "filePath": "resourceFile2149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2150", + "filePath": "resourceFile2150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2151", + "filePath": "resourceFile2151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2152", + "filePath": "resourceFile2152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2153", + "filePath": "resourceFile2153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2154", + "filePath": "resourceFile2154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2155", + "filePath": "resourceFile2155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2156", + "filePath": "resourceFile2156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2157", + "filePath": "resourceFile2157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2158", + "filePath": "resourceFile2158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2159", + "filePath": "resourceFile2159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2160", + "filePath": "resourceFile2160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2161", + "filePath": "resourceFile2161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2162", + "filePath": "resourceFile2162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2163", + "filePath": "resourceFile2163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2164", + "filePath": "resourceFile2164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2165", + "filePath": "resourceFile2165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2166", + "filePath": "resourceFile2166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2167", + "filePath": "resourceFile2167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2168", + "filePath": "resourceFile2168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2169", + "filePath": "resourceFile2169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2170", + "filePath": "resourceFile2170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2171", + "filePath": "resourceFile2171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2172", + "filePath": "resourceFile2172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2173", + "filePath": "resourceFile2173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2174", + "filePath": "resourceFile2174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2175", + "filePath": "resourceFile2175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2176", + "filePath": "resourceFile2176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2177", + "filePath": "resourceFile2177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2178", + "filePath": "resourceFile2178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2179", + "filePath": "resourceFile2179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2180", + "filePath": "resourceFile2180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2181", + "filePath": "resourceFile2181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2182", + "filePath": "resourceFile2182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2183", + "filePath": "resourceFile2183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2184", + "filePath": "resourceFile2184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2185", + "filePath": "resourceFile2185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2186", + "filePath": "resourceFile2186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2187", + "filePath": "resourceFile2187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2188", + "filePath": "resourceFile2188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2189", + "filePath": "resourceFile2189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2190", + "filePath": "resourceFile2190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2191", + "filePath": "resourceFile2191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2192", + "filePath": "resourceFile2192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2193", + "filePath": "resourceFile2193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2194", + "filePath": "resourceFile2194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2195", + "filePath": "resourceFile2195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2196", + "filePath": "resourceFile2196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2197", + "filePath": "resourceFile2197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2198", + "filePath": "resourceFile2198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2199", + "filePath": "resourceFile2199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2200", + "filePath": "resourceFile2200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2201", + "filePath": "resourceFile2201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2202", + "filePath": "resourceFile2202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2203", + "filePath": "resourceFile2203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2204", + "filePath": "resourceFile2204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2205", + "filePath": "resourceFile2205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2206", + "filePath": "resourceFile2206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2207", + "filePath": "resourceFile2207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2208", + "filePath": "resourceFile2208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2209", + "filePath": "resourceFile2209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2210", + "filePath": "resourceFile2210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2211", + "filePath": "resourceFile2211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2212", + "filePath": "resourceFile2212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2213", + "filePath": "resourceFile2213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2214", + "filePath": "resourceFile2214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2215", + "filePath": "resourceFile2215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2216", + "filePath": "resourceFile2216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2217", + "filePath": "resourceFile2217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2218", + "filePath": "resourceFile2218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2219", + "filePath": "resourceFile2219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2220", + "filePath": "resourceFile2220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2221", + "filePath": "resourceFile2221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2222", + "filePath": "resourceFile2222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2223", + "filePath": "resourceFile2223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2224", + "filePath": "resourceFile2224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2225", + "filePath": "resourceFile2225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2226", + "filePath": "resourceFile2226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2227", + "filePath": "resourceFile2227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2228", + "filePath": "resourceFile2228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2229", + "filePath": "resourceFile2229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2230", + "filePath": "resourceFile2230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2231", + "filePath": "resourceFile2231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2232", + "filePath": "resourceFile2232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2233", + "filePath": "resourceFile2233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2234", + "filePath": "resourceFile2234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2235", + "filePath": "resourceFile2235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2236", + "filePath": "resourceFile2236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2237", + "filePath": "resourceFile2237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2238", + "filePath": "resourceFile2238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2239", + "filePath": "resourceFile2239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2240", + "filePath": "resourceFile2240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2241", + "filePath": "resourceFile2241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2242", + "filePath": "resourceFile2242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2243", + "filePath": "resourceFile2243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2244", + "filePath": "resourceFile2244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2245", + "filePath": "resourceFile2245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2246", + "filePath": "resourceFile2246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2247", + "filePath": "resourceFile2247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2248", + "filePath": "resourceFile2248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2249", + "filePath": "resourceFile2249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2250", + "filePath": "resourceFile2250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2251", + "filePath": "resourceFile2251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2252", + "filePath": "resourceFile2252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2253", + "filePath": "resourceFile2253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2254", + "filePath": "resourceFile2254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2255", + "filePath": "resourceFile2255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2256", + "filePath": "resourceFile2256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2257", + "filePath": "resourceFile2257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2258", + "filePath": "resourceFile2258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2259", + "filePath": "resourceFile2259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2260", + "filePath": "resourceFile2260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2261", + "filePath": "resourceFile2261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2262", + "filePath": "resourceFile2262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2263", + "filePath": "resourceFile2263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2264", + "filePath": "resourceFile2264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2265", + "filePath": "resourceFile2265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2266", + "filePath": "resourceFile2266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2267", + "filePath": "resourceFile2267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2268", + "filePath": "resourceFile2268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2269", + "filePath": "resourceFile2269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2270", + "filePath": "resourceFile2270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2271", + "filePath": "resourceFile2271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2272", + "filePath": "resourceFile2272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2273", + "filePath": "resourceFile2273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2274", + "filePath": "resourceFile2274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2275", + "filePath": "resourceFile2275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2276", + "filePath": "resourceFile2276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2277", + "filePath": "resourceFile2277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2278", + "filePath": "resourceFile2278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2279", + "filePath": "resourceFile2279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2280", + "filePath": "resourceFile2280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2281", + "filePath": "resourceFile2281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2282", + "filePath": "resourceFile2282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2283", + "filePath": "resourceFile2283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2284", + "filePath": "resourceFile2284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2285", + "filePath": "resourceFile2285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2286", + "filePath": "resourceFile2286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2287", + "filePath": "resourceFile2287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2288", + "filePath": "resourceFile2288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2289", + "filePath": "resourceFile2289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2290", + "filePath": "resourceFile2290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2291", + "filePath": "resourceFile2291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2292", + "filePath": "resourceFile2292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2293", + "filePath": "resourceFile2293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2294", + "filePath": "resourceFile2294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2295", + "filePath": "resourceFile2295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2296", + "filePath": "resourceFile2296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2297", + "filePath": "resourceFile2297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2298", + "filePath": "resourceFile2298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2299", + "filePath": "resourceFile2299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2300", + "filePath": "resourceFile2300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2301", + "filePath": "resourceFile2301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2302", + "filePath": "resourceFile2302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2303", + "filePath": "resourceFile2303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2304", + "filePath": "resourceFile2304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2305", + "filePath": "resourceFile2305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2306", + "filePath": "resourceFile2306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2307", + "filePath": "resourceFile2307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2308", + "filePath": "resourceFile2308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2309", + "filePath": "resourceFile2309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2310", + "filePath": "resourceFile2310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2311", + "filePath": "resourceFile2311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2312", + "filePath": "resourceFile2312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2313", + "filePath": "resourceFile2313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2314", + "filePath": "resourceFile2314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2315", + "filePath": "resourceFile2315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2316", + "filePath": "resourceFile2316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2317", + "filePath": "resourceFile2317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2318", + "filePath": "resourceFile2318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2319", + "filePath": "resourceFile2319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2320", + "filePath": "resourceFile2320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2321", + "filePath": "resourceFile2321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2322", + "filePath": "resourceFile2322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2323", + "filePath": "resourceFile2323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2324", + "filePath": "resourceFile2324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2325", + "filePath": "resourceFile2325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2326", + "filePath": "resourceFile2326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2327", + "filePath": "resourceFile2327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2328", + "filePath": "resourceFile2328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2329", + "filePath": "resourceFile2329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2330", + "filePath": "resourceFile2330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2331", + "filePath": "resourceFile2331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2332", + "filePath": "resourceFile2332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2333", + "filePath": "resourceFile2333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2334", + "filePath": "resourceFile2334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2335", + "filePath": "resourceFile2335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2336", + "filePath": "resourceFile2336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2337", + "filePath": "resourceFile2337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2338", + "filePath": "resourceFile2338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2339", + "filePath": "resourceFile2339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2340", + "filePath": "resourceFile2340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2341", + "filePath": "resourceFile2341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2342", + "filePath": "resourceFile2342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2343", + "filePath": "resourceFile2343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2344", + "filePath": "resourceFile2344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2345", + "filePath": "resourceFile2345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2346", + "filePath": "resourceFile2346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2347", + "filePath": "resourceFile2347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2348", + "filePath": "resourceFile2348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2349", + "filePath": "resourceFile2349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2350", + "filePath": "resourceFile2350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2351", + "filePath": "resourceFile2351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2352", + "filePath": "resourceFile2352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2353", + "filePath": "resourceFile2353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2354", + "filePath": "resourceFile2354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2355", + "filePath": "resourceFile2355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2356", + "filePath": "resourceFile2356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2357", + "filePath": "resourceFile2357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2358", + "filePath": "resourceFile2358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2359", + "filePath": "resourceFile2359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2360", + "filePath": "resourceFile2360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2361", + "filePath": "resourceFile2361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2362", + "filePath": "resourceFile2362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2363", + "filePath": "resourceFile2363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2364", + "filePath": "resourceFile2364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2365", + "filePath": "resourceFile2365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2366", + "filePath": "resourceFile2366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2367", + "filePath": "resourceFile2367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2368", + "filePath": "resourceFile2368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2369", + "filePath": "resourceFile2369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2370", + "filePath": "resourceFile2370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2371", + "filePath": "resourceFile2371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2372", + "filePath": "resourceFile2372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2373", + "filePath": "resourceFile2373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2374", + "filePath": "resourceFile2374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2375", + "filePath": "resourceFile2375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2376", + "filePath": "resourceFile2376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2377", + "filePath": "resourceFile2377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2378", + "filePath": "resourceFile2378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2379", + "filePath": "resourceFile2379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2380", + "filePath": "resourceFile2380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2381", + "filePath": "resourceFile2381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2382", + "filePath": "resourceFile2382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2383", + "filePath": "resourceFile2383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2384", + "filePath": "resourceFile2384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2385", + "filePath": "resourceFile2385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2386", + "filePath": "resourceFile2386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2387", + "filePath": "resourceFile2387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2388", + "filePath": "resourceFile2388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2389", + "filePath": "resourceFile2389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2390", + "filePath": "resourceFile2390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2391", + "filePath": "resourceFile2391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2392", + "filePath": "resourceFile2392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2393", + "filePath": "resourceFile2393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2394", + "filePath": "resourceFile2394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2395", + "filePath": "resourceFile2395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2396", + "filePath": "resourceFile2396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2397", + "filePath": "resourceFile2397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2398", + "filePath": "resourceFile2398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2399", + "filePath": "resourceFile2399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2400", + "filePath": "resourceFile2400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2401", + "filePath": "resourceFile2401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2402", + "filePath": "resourceFile2402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2403", + "filePath": "resourceFile2403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2404", + "filePath": "resourceFile2404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2405", + "filePath": "resourceFile2405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2406", + "filePath": "resourceFile2406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2407", + "filePath": "resourceFile2407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2408", + "filePath": "resourceFile2408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2409", + "filePath": "resourceFile2409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2410", + "filePath": "resourceFile2410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2411", + "filePath": "resourceFile2411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2412", + "filePath": "resourceFile2412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2413", + "filePath": "resourceFile2413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2414", + "filePath": "resourceFile2414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2415", + "filePath": "resourceFile2415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2416", + "filePath": "resourceFile2416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2417", + "filePath": "resourceFile2417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2418", + "filePath": "resourceFile2418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2419", + "filePath": "resourceFile2419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2420", + "filePath": "resourceFile2420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2421", + "filePath": "resourceFile2421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2422", + "filePath": "resourceFile2422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2423", + "filePath": "resourceFile2423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2424", + "filePath": "resourceFile2424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2425", + "filePath": "resourceFile2425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2426", + "filePath": "resourceFile2426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2427", + "filePath": "resourceFile2427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2428", + "filePath": "resourceFile2428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2429", + "filePath": "resourceFile2429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2430", + "filePath": "resourceFile2430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2431", + "filePath": "resourceFile2431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2432", + "filePath": "resourceFile2432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2433", + "filePath": "resourceFile2433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2434", + "filePath": "resourceFile2434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2435", + "filePath": "resourceFile2435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2436", + "filePath": "resourceFile2436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2437", + "filePath": "resourceFile2437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2438", + "filePath": "resourceFile2438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2439", + "filePath": "resourceFile2439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2440", + "filePath": "resourceFile2440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2441", + "filePath": "resourceFile2441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2442", + "filePath": "resourceFile2442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2443", + "filePath": "resourceFile2443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2444", + "filePath": "resourceFile2444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2445", + "filePath": "resourceFile2445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2446", + "filePath": "resourceFile2446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2447", + "filePath": "resourceFile2447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2448", + "filePath": "resourceFile2448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2449", + "filePath": "resourceFile2449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2450", + "filePath": "resourceFile2450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2451", + "filePath": "resourceFile2451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2452", + "filePath": "resourceFile2452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2453", + "filePath": "resourceFile2453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2454", + "filePath": "resourceFile2454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2455", + "filePath": "resourceFile2455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2456", + "filePath": "resourceFile2456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2457", + "filePath": "resourceFile2457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2458", + "filePath": "resourceFile2458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2459", + "filePath": "resourceFile2459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2460", + "filePath": "resourceFile2460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2461", + "filePath": "resourceFile2461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2462", + "filePath": "resourceFile2462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2463", + "filePath": "resourceFile2463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2464", + "filePath": "resourceFile2464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2465", + "filePath": "resourceFile2465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2466", + "filePath": "resourceFile2466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2467", + "filePath": "resourceFile2467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2468", + "filePath": "resourceFile2468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2469", + "filePath": "resourceFile2469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2470", + "filePath": "resourceFile2470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2471", + "filePath": "resourceFile2471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2472", + "filePath": "resourceFile2472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2473", + "filePath": "resourceFile2473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2474", + "filePath": "resourceFile2474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2475", + "filePath": "resourceFile2475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2476", + "filePath": "resourceFile2476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2477", + "filePath": "resourceFile2477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2478", + "filePath": "resourceFile2478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2479", + "filePath": "resourceFile2479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2480", + "filePath": "resourceFile2480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2481", + "filePath": "resourceFile2481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2482", + "filePath": "resourceFile2482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2483", + "filePath": "resourceFile2483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2484", + "filePath": "resourceFile2484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2485", + "filePath": "resourceFile2485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2486", + "filePath": "resourceFile2486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2487", + "filePath": "resourceFile2487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2488", + "filePath": "resourceFile2488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2489", + "filePath": "resourceFile2489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2490", + "filePath": "resourceFile2490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2491", + "filePath": "resourceFile2491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2492", + "filePath": "resourceFile2492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2493", + "filePath": "resourceFile2493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2494", + "filePath": "resourceFile2494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2495", + "filePath": "resourceFile2495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2496", + "filePath": "resourceFile2496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2497", + "filePath": "resourceFile2497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2498", + "filePath": "resourceFile2498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2499", + "filePath": "resourceFile2499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2500", + "filePath": "resourceFile2500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2501", + "filePath": "resourceFile2501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2502", + "filePath": "resourceFile2502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2503", + "filePath": "resourceFile2503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2504", + "filePath": "resourceFile2504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2505", + "filePath": "resourceFile2505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2506", + "filePath": "resourceFile2506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2507", + "filePath": "resourceFile2507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2508", + "filePath": "resourceFile2508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2509", + "filePath": "resourceFile2509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2510", + "filePath": "resourceFile2510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2511", + "filePath": "resourceFile2511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2512", + "filePath": "resourceFile2512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2513", + "filePath": "resourceFile2513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2514", + "filePath": "resourceFile2514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2515", + "filePath": "resourceFile2515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2516", + "filePath": "resourceFile2516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2517", + "filePath": "resourceFile2517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2518", + "filePath": "resourceFile2518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2519", + "filePath": "resourceFile2519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2520", + "filePath": "resourceFile2520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2521", + "filePath": "resourceFile2521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2522", + "filePath": "resourceFile2522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2523", + "filePath": "resourceFile2523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2524", + "filePath": "resourceFile2524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2525", + "filePath": "resourceFile2525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2526", + "filePath": "resourceFile2526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2527", + "filePath": "resourceFile2527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2528", + "filePath": "resourceFile2528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2529", + "filePath": "resourceFile2529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2530", + "filePath": "resourceFile2530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2531", + "filePath": "resourceFile2531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2532", + "filePath": "resourceFile2532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2533", + "filePath": "resourceFile2533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2534", + "filePath": "resourceFile2534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2535", + "filePath": "resourceFile2535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2536", + "filePath": "resourceFile2536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2537", + "filePath": "resourceFile2537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2538", + "filePath": "resourceFile2538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2539", + "filePath": "resourceFile2539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2540", + "filePath": "resourceFile2540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2541", + "filePath": "resourceFile2541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2542", + "filePath": "resourceFile2542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2543", + "filePath": "resourceFile2543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2544", + "filePath": "resourceFile2544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2545", + "filePath": "resourceFile2545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2546", + "filePath": "resourceFile2546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2547", + "filePath": "resourceFile2547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2548", + "filePath": "resourceFile2548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2549", + "filePath": "resourceFile2549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2550", + "filePath": "resourceFile2550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2551", + "filePath": "resourceFile2551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2552", + "filePath": "resourceFile2552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2553", + "filePath": "resourceFile2553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2554", + "filePath": "resourceFile2554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2555", + "filePath": "resourceFile2555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2556", + "filePath": "resourceFile2556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2557", + "filePath": "resourceFile2557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2558", + "filePath": "resourceFile2558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2559", + "filePath": "resourceFile2559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2560", + "filePath": "resourceFile2560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2561", + "filePath": "resourceFile2561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2562", + "filePath": "resourceFile2562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2563", + "filePath": "resourceFile2563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2564", + "filePath": "resourceFile2564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2565", + "filePath": "resourceFile2565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2566", + "filePath": "resourceFile2566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2567", + "filePath": "resourceFile2567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2568", + "filePath": "resourceFile2568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2569", + "filePath": "resourceFile2569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2570", + "filePath": "resourceFile2570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2571", + "filePath": "resourceFile2571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2572", + "filePath": "resourceFile2572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2573", + "filePath": "resourceFile2573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2574", + "filePath": "resourceFile2574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2575", + "filePath": "resourceFile2575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2576", + "filePath": "resourceFile2576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2577", + "filePath": "resourceFile2577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2578", + "filePath": "resourceFile2578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2579", + "filePath": "resourceFile2579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2580", + "filePath": "resourceFile2580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2581", + "filePath": "resourceFile2581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2582", + "filePath": "resourceFile2582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2583", + "filePath": "resourceFile2583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2584", + "filePath": "resourceFile2584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2585", + "filePath": "resourceFile2585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2586", + "filePath": "resourceFile2586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2587", + "filePath": "resourceFile2587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2588", + "filePath": "resourceFile2588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2589", + "filePath": "resourceFile2589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2590", + "filePath": "resourceFile2590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2591", + "filePath": "resourceFile2591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2592", + "filePath": "resourceFile2592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2593", + "filePath": "resourceFile2593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2594", + "filePath": "resourceFile2594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2595", + "filePath": "resourceFile2595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2596", + "filePath": "resourceFile2596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2597", + "filePath": "resourceFile2597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2598", + "filePath": "resourceFile2598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2599", + "filePath": "resourceFile2599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2600", + "filePath": "resourceFile2600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2601", + "filePath": "resourceFile2601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2602", + "filePath": "resourceFile2602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2603", + "filePath": "resourceFile2603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2604", + "filePath": "resourceFile2604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2605", + "filePath": "resourceFile2605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2606", + "filePath": "resourceFile2606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2607", + "filePath": "resourceFile2607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2608", + "filePath": "resourceFile2608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2609", + "filePath": "resourceFile2609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2610", + "filePath": "resourceFile2610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2611", + "filePath": "resourceFile2611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2612", + "filePath": "resourceFile2612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2613", + "filePath": "resourceFile2613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2614", + "filePath": "resourceFile2614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2615", + "filePath": "resourceFile2615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2616", + "filePath": "resourceFile2616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2617", + "filePath": "resourceFile2617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2618", + "filePath": "resourceFile2618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2619", + "filePath": "resourceFile2619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2620", + "filePath": "resourceFile2620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2621", + "filePath": "resourceFile2621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2622", + "filePath": "resourceFile2622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2623", + "filePath": "resourceFile2623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2624", + "filePath": "resourceFile2624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2625", + "filePath": "resourceFile2625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2626", + "filePath": "resourceFile2626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2627", + "filePath": "resourceFile2627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2628", + "filePath": "resourceFile2628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2629", + "filePath": "resourceFile2629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2630", + "filePath": "resourceFile2630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2631", + "filePath": "resourceFile2631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2632", + "filePath": "resourceFile2632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2633", + "filePath": "resourceFile2633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2634", + "filePath": "resourceFile2634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2635", + "filePath": "resourceFile2635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2636", + "filePath": "resourceFile2636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2637", + "filePath": "resourceFile2637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2638", + "filePath": "resourceFile2638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2639", + "filePath": "resourceFile2639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2640", + "filePath": "resourceFile2640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2641", + "filePath": "resourceFile2641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2642", + "filePath": "resourceFile2642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2643", + "filePath": "resourceFile2643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2644", + "filePath": "resourceFile2644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2645", + "filePath": "resourceFile2645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2646", + "filePath": "resourceFile2646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2647", + "filePath": "resourceFile2647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2648", + "filePath": "resourceFile2648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2649", + "filePath": "resourceFile2649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2650", + "filePath": "resourceFile2650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2651", + "filePath": "resourceFile2651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2652", + "filePath": "resourceFile2652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2653", + "filePath": "resourceFile2653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2654", + "filePath": "resourceFile2654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2655", + "filePath": "resourceFile2655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2656", + "filePath": "resourceFile2656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2657", + "filePath": "resourceFile2657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2658", + "filePath": "resourceFile2658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2659", + "filePath": "resourceFile2659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2660", + "filePath": "resourceFile2660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2661", + "filePath": "resourceFile2661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2662", + "filePath": "resourceFile2662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2663", + "filePath": "resourceFile2663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2664", + "filePath": "resourceFile2664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2665", + "filePath": "resourceFile2665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2666", + "filePath": "resourceFile2666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2667", + "filePath": "resourceFile2667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2668", + "filePath": "resourceFile2668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2669", + "filePath": "resourceFile2669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2670", + "filePath": "resourceFile2670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2671", + "filePath": "resourceFile2671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2672", + "filePath": "resourceFile2672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2673", + "filePath": "resourceFile2673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2674", + "filePath": "resourceFile2674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2675", + "filePath": "resourceFile2675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2676", + "filePath": "resourceFile2676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2677", + "filePath": "resourceFile2677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2678", + "filePath": "resourceFile2678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2679", + "filePath": "resourceFile2679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2680", + "filePath": "resourceFile2680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2681", + "filePath": "resourceFile2681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2682", + "filePath": "resourceFile2682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2683", + "filePath": "resourceFile2683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2684", + "filePath": "resourceFile2684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2685", + "filePath": "resourceFile2685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2686", + "filePath": "resourceFile2686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2687", + "filePath": "resourceFile2687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2688", + "filePath": "resourceFile2688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2689", + "filePath": "resourceFile2689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2690", + "filePath": "resourceFile2690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2691", + "filePath": "resourceFile2691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2692", + "filePath": "resourceFile2692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2693", + "filePath": "resourceFile2693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2694", + "filePath": "resourceFile2694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2695", + "filePath": "resourceFile2695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2696", + "filePath": "resourceFile2696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2697", + "filePath": "resourceFile2697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2698", + "filePath": "resourceFile2698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2699", + "filePath": "resourceFile2699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2700", + "filePath": "resourceFile2700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2701", + "filePath": "resourceFile2701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2702", + "filePath": "resourceFile2702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2703", + "filePath": "resourceFile2703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2704", + "filePath": "resourceFile2704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2705", + "filePath": "resourceFile2705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2706", + "filePath": "resourceFile2706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2707", + "filePath": "resourceFile2707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2708", + "filePath": "resourceFile2708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2709", + "filePath": "resourceFile2709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2710", + "filePath": "resourceFile2710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2711", + "filePath": "resourceFile2711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2712", + "filePath": "resourceFile2712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2713", + "filePath": "resourceFile2713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2714", + "filePath": "resourceFile2714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2715", + "filePath": "resourceFile2715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2716", + "filePath": "resourceFile2716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2717", + "filePath": "resourceFile2717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2718", + "filePath": "resourceFile2718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2719", + "filePath": "resourceFile2719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2720", + "filePath": "resourceFile2720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2721", + "filePath": "resourceFile2721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2722", + "filePath": "resourceFile2722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2723", + "filePath": "resourceFile2723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2724", + "filePath": "resourceFile2724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2725", + "filePath": "resourceFile2725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2726", + "filePath": "resourceFile2726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2727", + "filePath": "resourceFile2727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2728", + "filePath": "resourceFile2728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2729", + "filePath": "resourceFile2729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2730", + "filePath": "resourceFile2730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2731", + "filePath": "resourceFile2731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2732", + "filePath": "resourceFile2732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2733", + "filePath": "resourceFile2733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2734", + "filePath": "resourceFile2734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2735", + "filePath": "resourceFile2735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2736", + "filePath": "resourceFile2736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2737", + "filePath": "resourceFile2737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2738", + "filePath": "resourceFile2738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2739", + "filePath": "resourceFile2739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2740", + "filePath": "resourceFile2740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2741", + "filePath": "resourceFile2741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2742", + "filePath": "resourceFile2742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2743", + "filePath": "resourceFile2743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2744", + "filePath": "resourceFile2744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2745", + "filePath": "resourceFile2745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2746", + "filePath": "resourceFile2746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2747", + "filePath": "resourceFile2747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2748", + "filePath": "resourceFile2748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2749", + "filePath": "resourceFile2749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2750", + "filePath": "resourceFile2750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2751", + "filePath": "resourceFile2751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2752", + "filePath": "resourceFile2752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2753", + "filePath": "resourceFile2753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2754", + "filePath": "resourceFile2754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2755", + "filePath": "resourceFile2755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2756", + "filePath": "resourceFile2756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2757", + "filePath": "resourceFile2757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2758", + "filePath": "resourceFile2758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2759", + "filePath": "resourceFile2759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2760", + "filePath": "resourceFile2760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2761", + "filePath": "resourceFile2761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2762", + "filePath": "resourceFile2762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2763", + "filePath": "resourceFile2763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2764", + "filePath": "resourceFile2764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2765", + "filePath": "resourceFile2765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2766", + "filePath": "resourceFile2766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2767", + "filePath": "resourceFile2767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2768", + "filePath": "resourceFile2768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2769", + "filePath": "resourceFile2769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2770", + "filePath": "resourceFile2770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2771", + "filePath": "resourceFile2771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2772", + "filePath": "resourceFile2772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2773", + "filePath": "resourceFile2773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2774", + "filePath": "resourceFile2774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2775", + "filePath": "resourceFile2775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2776", + "filePath": "resourceFile2776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2777", + "filePath": "resourceFile2777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2778", + "filePath": "resourceFile2778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2779", + "filePath": "resourceFile2779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2780", + "filePath": "resourceFile2780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2781", + "filePath": "resourceFile2781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2782", + "filePath": "resourceFile2782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2783", + "filePath": "resourceFile2783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2784", + "filePath": "resourceFile2784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2785", + "filePath": "resourceFile2785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2786", + "filePath": "resourceFile2786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2787", + "filePath": "resourceFile2787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2788", + "filePath": "resourceFile2788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2789", + "filePath": "resourceFile2789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2790", + "filePath": "resourceFile2790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2791", + "filePath": "resourceFile2791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2792", + "filePath": "resourceFile2792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2793", + "filePath": "resourceFile2793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2794", + "filePath": "resourceFile2794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2795", + "filePath": "resourceFile2795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2796", + "filePath": "resourceFile2796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2797", + "filePath": "resourceFile2797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2798", + "filePath": "resourceFile2798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2799", + "filePath": "resourceFile2799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2800", + "filePath": "resourceFile2800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2801", + "filePath": "resourceFile2801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2802", + "filePath": "resourceFile2802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2803", + "filePath": "resourceFile2803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2804", + "filePath": "resourceFile2804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2805", + "filePath": "resourceFile2805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2806", + "filePath": "resourceFile2806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2807", + "filePath": "resourceFile2807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2808", + "filePath": "resourceFile2808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2809", + "filePath": "resourceFile2809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2810", + "filePath": "resourceFile2810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2811", + "filePath": "resourceFile2811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2812", + "filePath": "resourceFile2812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2813", + "filePath": "resourceFile2813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2814", + "filePath": "resourceFile2814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2815", + "filePath": "resourceFile2815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2816", + "filePath": "resourceFile2816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2817", + "filePath": "resourceFile2817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2818", + "filePath": "resourceFile2818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2819", + "filePath": "resourceFile2819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2820", + "filePath": "resourceFile2820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2821", + "filePath": "resourceFile2821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2822", + "filePath": "resourceFile2822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2823", + "filePath": "resourceFile2823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2824", + "filePath": "resourceFile2824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2825", + "filePath": "resourceFile2825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2826", + "filePath": "resourceFile2826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2827", + "filePath": "resourceFile2827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2828", + "filePath": "resourceFile2828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2829", + "filePath": "resourceFile2829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2830", + "filePath": "resourceFile2830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2831", + "filePath": "resourceFile2831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2832", + "filePath": "resourceFile2832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2833", + "filePath": "resourceFile2833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2834", + "filePath": "resourceFile2834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2835", + "filePath": "resourceFile2835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2836", + "filePath": "resourceFile2836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2837", + "filePath": "resourceFile2837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2838", + "filePath": "resourceFile2838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2839", + "filePath": "resourceFile2839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2840", + "filePath": "resourceFile2840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2841", + "filePath": "resourceFile2841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2842", + "filePath": "resourceFile2842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2843", + "filePath": "resourceFile2843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2844", + "filePath": "resourceFile2844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2845", + "filePath": "resourceFile2845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2846", + "filePath": "resourceFile2846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2847", + "filePath": "resourceFile2847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2848", + "filePath": "resourceFile2848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2849", + "filePath": "resourceFile2849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2850", + "filePath": "resourceFile2850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2851", + "filePath": "resourceFile2851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2852", + "filePath": "resourceFile2852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2853", + "filePath": "resourceFile2853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2854", + "filePath": "resourceFile2854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2855", + "filePath": "resourceFile2855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2856", + "filePath": "resourceFile2856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2857", + "filePath": "resourceFile2857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2858", + "filePath": "resourceFile2858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2859", + "filePath": "resourceFile2859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2860", + "filePath": "resourceFile2860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2861", + "filePath": "resourceFile2861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2862", + "filePath": "resourceFile2862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2863", + "filePath": "resourceFile2863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2864", + "filePath": "resourceFile2864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2865", + "filePath": "resourceFile2865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2866", + "filePath": "resourceFile2866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2867", + "filePath": "resourceFile2867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2868", + "filePath": "resourceFile2868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2869", + "filePath": "resourceFile2869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2870", + "filePath": "resourceFile2870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2871", + "filePath": "resourceFile2871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2872", + "filePath": "resourceFile2872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2873", + "filePath": "resourceFile2873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2874", + "filePath": "resourceFile2874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2875", + "filePath": "resourceFile2875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2876", + "filePath": "resourceFile2876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2877", + "filePath": "resourceFile2877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2878", + "filePath": "resourceFile2878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2879", + "filePath": "resourceFile2879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2880", + "filePath": "resourceFile2880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2881", + "filePath": "resourceFile2881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2882", + "filePath": "resourceFile2882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2883", + "filePath": "resourceFile2883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2884", + "filePath": "resourceFile2884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2885", + "filePath": "resourceFile2885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2886", + "filePath": "resourceFile2886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2887", + "filePath": "resourceFile2887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2888", + "filePath": "resourceFile2888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2889", + "filePath": "resourceFile2889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2890", + "filePath": "resourceFile2890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2891", + "filePath": "resourceFile2891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2892", + "filePath": "resourceFile2892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2893", + "filePath": "resourceFile2893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2894", + "filePath": "resourceFile2894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2895", + "filePath": "resourceFile2895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2896", + "filePath": "resourceFile2896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2897", + "filePath": "resourceFile2897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2898", + "filePath": "resourceFile2898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2899", + "filePath": "resourceFile2899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2900", + "filePath": "resourceFile2900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2901", + "filePath": "resourceFile2901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2902", + "filePath": "resourceFile2902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2903", + "filePath": "resourceFile2903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2904", + "filePath": "resourceFile2904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2905", + "filePath": "resourceFile2905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2906", + "filePath": "resourceFile2906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2907", + "filePath": "resourceFile2907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2908", + "filePath": "resourceFile2908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2909", + "filePath": "resourceFile2909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2910", + "filePath": "resourceFile2910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2911", + "filePath": "resourceFile2911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2912", + "filePath": "resourceFile2912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2913", + "filePath": "resourceFile2913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2914", + "filePath": "resourceFile2914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2915", + "filePath": "resourceFile2915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2916", + "filePath": "resourceFile2916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2917", + "filePath": "resourceFile2917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2918", + "filePath": "resourceFile2918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2919", + "filePath": "resourceFile2919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2920", + "filePath": "resourceFile2920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2921", + "filePath": "resourceFile2921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2922", + "filePath": "resourceFile2922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2923", + "filePath": "resourceFile2923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2924", + "filePath": "resourceFile2924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2925", + "filePath": "resourceFile2925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2926", + "filePath": "resourceFile2926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2927", + "filePath": "resourceFile2927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2928", + "filePath": "resourceFile2928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2929", + "filePath": "resourceFile2929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2930", + "filePath": "resourceFile2930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2931", + "filePath": "resourceFile2931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2932", + "filePath": "resourceFile2932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2933", + "filePath": "resourceFile2933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2934", + "filePath": "resourceFile2934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2935", + "filePath": "resourceFile2935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2936", + "filePath": "resourceFile2936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2937", + "filePath": "resourceFile2937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2938", + "filePath": "resourceFile2938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2939", + "filePath": "resourceFile2939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2940", + "filePath": "resourceFile2940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2941", + "filePath": "resourceFile2941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2942", + "filePath": "resourceFile2942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2943", + "filePath": "resourceFile2943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2944", + "filePath": "resourceFile2944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2945", + "filePath": "resourceFile2945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2946", + "filePath": "resourceFile2946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2947", + "filePath": "resourceFile2947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2948", + "filePath": "resourceFile2948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2949", + "filePath": "resourceFile2949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2950", + "filePath": "resourceFile2950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2951", + "filePath": "resourceFile2951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2952", + "filePath": "resourceFile2952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2953", + "filePath": "resourceFile2953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2954", + "filePath": "resourceFile2954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2955", + "filePath": "resourceFile2955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2956", + "filePath": "resourceFile2956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2957", + "filePath": "resourceFile2957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2958", + "filePath": "resourceFile2958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2959", + "filePath": "resourceFile2959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2960", + "filePath": "resourceFile2960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2961", + "filePath": "resourceFile2961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2962", + "filePath": "resourceFile2962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2963", + "filePath": "resourceFile2963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2964", + "filePath": "resourceFile2964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2965", + "filePath": "resourceFile2965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2966", + "filePath": "resourceFile2966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2967", + "filePath": "resourceFile2967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2968", + "filePath": "resourceFile2968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2969", + "filePath": "resourceFile2969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2970", + "filePath": "resourceFile2970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2971", + "filePath": "resourceFile2971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2972", + "filePath": "resourceFile2972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2973", + "filePath": "resourceFile2973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2974", + "filePath": "resourceFile2974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2975", + "filePath": "resourceFile2975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2976", + "filePath": "resourceFile2976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2977", + "filePath": "resourceFile2977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2978", + "filePath": "resourceFile2978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2979", + "filePath": "resourceFile2979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2980", + "filePath": "resourceFile2980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2981", + "filePath": "resourceFile2981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2982", + "filePath": "resourceFile2982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2983", + "filePath": "resourceFile2983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2984", + "filePath": "resourceFile2984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2985", + "filePath": "resourceFile2985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2986", + "filePath": "resourceFile2986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2987", + "filePath": "resourceFile2987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2988", + "filePath": "resourceFile2988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2989", + "filePath": "resourceFile2989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2990", + "filePath": "resourceFile2990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2991", + "filePath": "resourceFile2991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2992", + "filePath": "resourceFile2992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2993", + "filePath": "resourceFile2993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2994", + "filePath": "resourceFile2994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2995", + "filePath": "resourceFile2995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2996", + "filePath": "resourceFile2996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2997", + "filePath": "resourceFile2997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2998", + "filePath": "resourceFile2998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2999", + "filePath": "resourceFile2999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3000", + "filePath": "resourceFile3000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3001", + "filePath": "resourceFile3001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3002", + "filePath": "resourceFile3002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3003", + "filePath": "resourceFile3003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3004", + "filePath": "resourceFile3004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3005", + "filePath": "resourceFile3005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3006", + "filePath": "resourceFile3006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3007", + "filePath": "resourceFile3007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3008", + "filePath": "resourceFile3008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3009", + "filePath": "resourceFile3009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3010", + "filePath": "resourceFile3010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3011", + "filePath": "resourceFile3011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3012", + "filePath": "resourceFile3012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3013", + "filePath": "resourceFile3013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3014", + "filePath": "resourceFile3014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3015", + "filePath": "resourceFile3015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3016", + "filePath": "resourceFile3016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3017", + "filePath": "resourceFile3017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3018", + "filePath": "resourceFile3018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3019", + "filePath": "resourceFile3019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3020", + "filePath": "resourceFile3020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3021", + "filePath": "resourceFile3021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3022", + "filePath": "resourceFile3022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3023", + "filePath": "resourceFile3023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3024", + "filePath": "resourceFile3024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3025", + "filePath": "resourceFile3025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3026", + "filePath": "resourceFile3026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3027", + "filePath": "resourceFile3027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3028", + "filePath": "resourceFile3028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3029", + "filePath": "resourceFile3029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3030", + "filePath": "resourceFile3030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3031", + "filePath": "resourceFile3031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3032", + "filePath": "resourceFile3032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3033", + "filePath": "resourceFile3033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3034", + "filePath": "resourceFile3034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3035", + "filePath": "resourceFile3035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3036", + "filePath": "resourceFile3036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3037", + "filePath": "resourceFile3037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3038", + "filePath": "resourceFile3038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3039", + "filePath": "resourceFile3039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3040", + "filePath": "resourceFile3040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3041", + "filePath": "resourceFile3041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3042", + "filePath": "resourceFile3042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3043", + "filePath": "resourceFile3043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3044", + "filePath": "resourceFile3044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3045", + "filePath": "resourceFile3045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3046", + "filePath": "resourceFile3046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3047", + "filePath": "resourceFile3047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3048", + "filePath": "resourceFile3048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3049", + "filePath": "resourceFile3049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3050", + "filePath": "resourceFile3050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3051", + "filePath": "resourceFile3051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3052", + "filePath": "resourceFile3052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3053", + "filePath": "resourceFile3053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3054", + "filePath": "resourceFile3054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3055", + "filePath": "resourceFile3055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3056", + "filePath": "resourceFile3056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3057", + "filePath": "resourceFile3057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3058", + "filePath": "resourceFile3058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3059", + "filePath": "resourceFile3059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3060", + "filePath": "resourceFile3060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3061", + "filePath": "resourceFile3061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3062", + "filePath": "resourceFile3062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3063", + "filePath": "resourceFile3063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3064", + "filePath": "resourceFile3064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3065", + "filePath": "resourceFile3065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3066", + "filePath": "resourceFile3066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3067", + "filePath": "resourceFile3067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3068", + "filePath": "resourceFile3068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3069", + "filePath": "resourceFile3069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3070", + "filePath": "resourceFile3070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3071", + "filePath": "resourceFile3071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3072", + "filePath": "resourceFile3072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3073", + "filePath": "resourceFile3073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3074", + "filePath": "resourceFile3074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3075", + "filePath": "resourceFile3075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3076", + "filePath": "resourceFile3076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3077", + "filePath": "resourceFile3077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3078", + "filePath": "resourceFile3078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3079", + "filePath": "resourceFile3079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3080", + "filePath": "resourceFile3080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3081", + "filePath": "resourceFile3081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3082", + "filePath": "resourceFile3082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3083", + "filePath": "resourceFile3083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3084", + "filePath": "resourceFile3084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3085", + "filePath": "resourceFile3085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3086", + "filePath": "resourceFile3086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3087", + "filePath": "resourceFile3087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3088", + "filePath": "resourceFile3088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3089", + "filePath": "resourceFile3089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3090", + "filePath": "resourceFile3090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3091", + "filePath": "resourceFile3091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3092", + "filePath": "resourceFile3092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3093", + "filePath": "resourceFile3093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3094", + "filePath": "resourceFile3094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3095", + "filePath": "resourceFile3095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3096", + "filePath": "resourceFile3096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3097", + "filePath": "resourceFile3097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3098", + "filePath": "resourceFile3098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3099", + "filePath": "resourceFile3099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3100", + "filePath": "resourceFile3100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3101", + "filePath": "resourceFile3101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3102", + "filePath": "resourceFile3102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3103", + "filePath": "resourceFile3103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3104", + "filePath": "resourceFile3104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3105", + "filePath": "resourceFile3105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3106", + "filePath": "resourceFile3106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3107", + "filePath": "resourceFile3107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3108", + "filePath": "resourceFile3108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3109", + "filePath": "resourceFile3109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3110", + "filePath": "resourceFile3110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3111", + "filePath": "resourceFile3111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3112", + "filePath": "resourceFile3112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3113", + "filePath": "resourceFile3113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3114", + "filePath": "resourceFile3114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3115", + "filePath": "resourceFile3115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3116", + "filePath": "resourceFile3116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3117", + "filePath": "resourceFile3117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3118", + "filePath": "resourceFile3118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3119", + "filePath": "resourceFile3119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3120", + "filePath": "resourceFile3120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3121", + "filePath": "resourceFile3121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3122", + "filePath": "resourceFile3122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3123", + "filePath": "resourceFile3123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3124", + "filePath": "resourceFile3124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3125", + "filePath": "resourceFile3125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3126", + "filePath": "resourceFile3126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3127", + "filePath": "resourceFile3127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3128", + "filePath": "resourceFile3128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3129", + "filePath": "resourceFile3129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3130", + "filePath": "resourceFile3130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3131", + "filePath": "resourceFile3131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3132", + "filePath": "resourceFile3132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3133", + "filePath": "resourceFile3133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3134", + "filePath": "resourceFile3134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3135", + "filePath": "resourceFile3135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3136", + "filePath": "resourceFile3136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3137", + "filePath": "resourceFile3137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3138", + "filePath": "resourceFile3138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3139", + "filePath": "resourceFile3139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3140", + "filePath": "resourceFile3140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3141", + "filePath": "resourceFile3141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3142", + "filePath": "resourceFile3142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3143", + "filePath": "resourceFile3143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3144", + "filePath": "resourceFile3144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3145", + "filePath": "resourceFile3145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3146", + "filePath": "resourceFile3146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3147", + "filePath": "resourceFile3147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3148", + "filePath": "resourceFile3148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3149", + "filePath": "resourceFile3149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3150", + "filePath": "resourceFile3150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3151", + "filePath": "resourceFile3151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3152", + "filePath": "resourceFile3152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3153", + "filePath": "resourceFile3153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3154", + "filePath": "resourceFile3154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3155", + "filePath": "resourceFile3155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3156", + "filePath": "resourceFile3156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3157", + "filePath": "resourceFile3157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3158", + "filePath": "resourceFile3158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3159", + "filePath": "resourceFile3159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3160", + "filePath": "resourceFile3160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3161", + "filePath": "resourceFile3161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3162", + "filePath": "resourceFile3162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3163", + "filePath": "resourceFile3163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3164", + "filePath": "resourceFile3164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3165", + "filePath": "resourceFile3165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3166", + "filePath": "resourceFile3166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3167", + "filePath": "resourceFile3167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3168", + "filePath": "resourceFile3168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3169", + "filePath": "resourceFile3169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3170", + "filePath": "resourceFile3170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3171", + "filePath": "resourceFile3171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3172", + "filePath": "resourceFile3172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3173", + "filePath": "resourceFile3173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3174", + "filePath": "resourceFile3174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3175", + "filePath": "resourceFile3175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3176", + "filePath": "resourceFile3176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3177", + "filePath": "resourceFile3177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3178", + "filePath": "resourceFile3178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3179", + "filePath": "resourceFile3179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3180", + "filePath": "resourceFile3180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3181", + "filePath": "resourceFile3181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3182", + "filePath": "resourceFile3182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3183", + "filePath": "resourceFile3183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3184", + "filePath": "resourceFile3184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3185", + "filePath": "resourceFile3185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3186", + "filePath": "resourceFile3186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3187", + "filePath": "resourceFile3187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3188", + "filePath": "resourceFile3188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3189", + "filePath": "resourceFile3189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3190", + "filePath": "resourceFile3190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3191", + "filePath": "resourceFile3191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3192", + "filePath": "resourceFile3192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3193", + "filePath": "resourceFile3193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3194", + "filePath": "resourceFile3194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3195", + "filePath": "resourceFile3195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3196", + "filePath": "resourceFile3196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3197", + "filePath": "resourceFile3197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3198", + "filePath": "resourceFile3198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3199", + "filePath": "resourceFile3199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3200", + "filePath": "resourceFile3200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3201", + "filePath": "resourceFile3201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3202", + "filePath": "resourceFile3202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3203", + "filePath": "resourceFile3203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3204", + "filePath": "resourceFile3204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3205", + "filePath": "resourceFile3205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3206", + "filePath": "resourceFile3206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3207", + "filePath": "resourceFile3207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3208", + "filePath": "resourceFile3208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3209", + "filePath": "resourceFile3209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3210", + "filePath": "resourceFile3210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3211", + "filePath": "resourceFile3211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3212", + "filePath": "resourceFile3212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3213", + "filePath": "resourceFile3213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3214", + "filePath": "resourceFile3214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3215", + "filePath": "resourceFile3215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3216", + "filePath": "resourceFile3216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3217", + "filePath": "resourceFile3217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3218", + "filePath": "resourceFile3218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3219", + "filePath": "resourceFile3219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3220", + "filePath": "resourceFile3220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3221", + "filePath": "resourceFile3221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3222", + "filePath": "resourceFile3222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3223", + "filePath": "resourceFile3223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3224", + "filePath": "resourceFile3224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3225", + "filePath": "resourceFile3225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3226", + "filePath": "resourceFile3226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3227", + "filePath": "resourceFile3227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3228", + "filePath": "resourceFile3228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3229", + "filePath": "resourceFile3229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3230", + "filePath": "resourceFile3230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3231", + "filePath": "resourceFile3231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3232", + "filePath": "resourceFile3232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3233", + "filePath": "resourceFile3233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3234", + "filePath": "resourceFile3234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3235", + "filePath": "resourceFile3235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3236", + "filePath": "resourceFile3236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3237", + "filePath": "resourceFile3237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3238", + "filePath": "resourceFile3238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3239", + "filePath": "resourceFile3239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3240", + "filePath": "resourceFile3240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3241", + "filePath": "resourceFile3241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3242", + "filePath": "resourceFile3242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3243", + "filePath": "resourceFile3243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3244", + "filePath": "resourceFile3244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3245", + "filePath": "resourceFile3245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3246", + "filePath": "resourceFile3246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3247", + "filePath": "resourceFile3247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3248", + "filePath": "resourceFile3248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3249", + "filePath": "resourceFile3249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3250", + "filePath": "resourceFile3250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3251", + "filePath": "resourceFile3251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3252", + "filePath": "resourceFile3252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3253", + "filePath": "resourceFile3253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3254", + "filePath": "resourceFile3254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3255", + "filePath": "resourceFile3255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3256", + "filePath": "resourceFile3256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3257", + "filePath": "resourceFile3257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3258", + "filePath": "resourceFile3258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3259", + "filePath": "resourceFile3259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3260", + "filePath": "resourceFile3260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3261", + "filePath": "resourceFile3261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3262", + "filePath": "resourceFile3262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3263", + "filePath": "resourceFile3263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3264", + "filePath": "resourceFile3264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3265", + "filePath": "resourceFile3265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3266", + "filePath": "resourceFile3266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3267", + "filePath": "resourceFile3267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3268", + "filePath": "resourceFile3268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3269", + "filePath": "resourceFile3269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3270", + "filePath": "resourceFile3270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3271", + "filePath": "resourceFile3271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3272", + "filePath": "resourceFile3272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3273", + "filePath": "resourceFile3273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3274", + "filePath": "resourceFile3274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3275", + "filePath": "resourceFile3275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3276", + "filePath": "resourceFile3276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3277", + "filePath": "resourceFile3277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3278", + "filePath": "resourceFile3278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3279", + "filePath": "resourceFile3279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3280", + "filePath": "resourceFile3280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3281", + "filePath": "resourceFile3281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3282", + "filePath": "resourceFile3282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3283", + "filePath": "resourceFile3283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3284", + "filePath": "resourceFile3284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3285", + "filePath": "resourceFile3285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3286", + "filePath": "resourceFile3286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3287", + "filePath": "resourceFile3287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3288", + "filePath": "resourceFile3288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3289", + "filePath": "resourceFile3289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3290", + "filePath": "resourceFile3290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3291", + "filePath": "resourceFile3291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3292", + "filePath": "resourceFile3292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3293", + "filePath": "resourceFile3293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3294", + "filePath": "resourceFile3294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3295", + "filePath": "resourceFile3295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3296", + "filePath": "resourceFile3296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3297", + "filePath": "resourceFile3297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3298", + "filePath": "resourceFile3298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3299", + "filePath": "resourceFile3299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3300", + "filePath": "resourceFile3300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3301", + "filePath": "resourceFile3301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3302", + "filePath": "resourceFile3302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3303", + "filePath": "resourceFile3303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3304", + "filePath": "resourceFile3304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3305", + "filePath": "resourceFile3305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3306", + "filePath": "resourceFile3306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3307", + "filePath": "resourceFile3307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3308", + "filePath": "resourceFile3308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3309", + "filePath": "resourceFile3309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3310", + "filePath": "resourceFile3310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3311", + "filePath": "resourceFile3311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3312", + "filePath": "resourceFile3312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3313", + "filePath": "resourceFile3313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3314", + "filePath": "resourceFile3314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3315", + "filePath": "resourceFile3315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3316", + "filePath": "resourceFile3316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3317", + "filePath": "resourceFile3317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3318", + "filePath": "resourceFile3318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3319", + "filePath": "resourceFile3319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3320", + "filePath": "resourceFile3320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3321", + "filePath": "resourceFile3321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3322", + "filePath": "resourceFile3322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3323", + "filePath": "resourceFile3323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3324", + "filePath": "resourceFile3324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3325", + "filePath": "resourceFile3325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3326", + "filePath": "resourceFile3326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3327", + "filePath": "resourceFile3327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3328", + "filePath": "resourceFile3328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3329", + "filePath": "resourceFile3329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3330", + "filePath": "resourceFile3330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3331", + "filePath": "resourceFile3331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3332", + "filePath": "resourceFile3332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3333", + "filePath": "resourceFile3333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3334", + "filePath": "resourceFile3334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3335", + "filePath": "resourceFile3335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3336", + "filePath": "resourceFile3336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3337", + "filePath": "resourceFile3337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3338", + "filePath": "resourceFile3338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3339", + "filePath": "resourceFile3339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3340", + "filePath": "resourceFile3340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3341", + "filePath": "resourceFile3341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3342", + "filePath": "resourceFile3342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3343", + "filePath": "resourceFile3343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3344", + "filePath": "resourceFile3344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3345", + "filePath": "resourceFile3345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3346", + "filePath": "resourceFile3346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3347", + "filePath": "resourceFile3347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3348", + "filePath": "resourceFile3348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3349", + "filePath": "resourceFile3349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3350", + "filePath": "resourceFile3350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3351", + "filePath": "resourceFile3351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3352", + "filePath": "resourceFile3352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3353", + "filePath": "resourceFile3353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3354", + "filePath": "resourceFile3354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3355", + "filePath": "resourceFile3355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3356", + "filePath": "resourceFile3356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3357", + "filePath": "resourceFile3357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3358", + "filePath": "resourceFile3358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3359", + "filePath": "resourceFile3359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3360", + "filePath": "resourceFile3360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3361", + "filePath": "resourceFile3361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3362", + "filePath": "resourceFile3362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3363", + "filePath": "resourceFile3363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3364", + "filePath": "resourceFile3364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3365", + "filePath": "resourceFile3365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3366", + "filePath": "resourceFile3366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3367", + "filePath": "resourceFile3367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3368", + "filePath": "resourceFile3368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3369", + "filePath": "resourceFile3369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3370", + "filePath": "resourceFile3370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3371", + "filePath": "resourceFile3371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3372", + "filePath": "resourceFile3372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3373", + "filePath": "resourceFile3373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3374", + "filePath": "resourceFile3374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3375", + "filePath": "resourceFile3375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3376", + "filePath": "resourceFile3376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3377", + "filePath": "resourceFile3377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3378", + "filePath": "resourceFile3378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3379", + "filePath": "resourceFile3379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3380", + "filePath": "resourceFile3380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3381", + "filePath": "resourceFile3381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3382", + "filePath": "resourceFile3382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3383", + "filePath": "resourceFile3383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3384", + "filePath": "resourceFile3384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3385", + "filePath": "resourceFile3385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3386", + "filePath": "resourceFile3386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3387", + "filePath": "resourceFile3387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3388", + "filePath": "resourceFile3388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3389", + "filePath": "resourceFile3389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3390", + "filePath": "resourceFile3390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3391", + "filePath": "resourceFile3391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3392", + "filePath": "resourceFile3392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3393", + "filePath": "resourceFile3393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3394", + "filePath": "resourceFile3394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3395", + "filePath": "resourceFile3395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3396", + "filePath": "resourceFile3396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3397", + "filePath": "resourceFile3397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3398", + "filePath": "resourceFile3398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3399", + "filePath": "resourceFile3399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3400", + "filePath": "resourceFile3400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3401", + "filePath": "resourceFile3401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3402", + "filePath": "resourceFile3402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3403", + "filePath": "resourceFile3403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3404", + "filePath": "resourceFile3404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3405", + "filePath": "resourceFile3405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3406", + "filePath": "resourceFile3406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3407", + "filePath": "resourceFile3407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3408", + "filePath": "resourceFile3408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3409", + "filePath": "resourceFile3409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3410", + "filePath": "resourceFile3410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3411", + "filePath": "resourceFile3411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3412", + "filePath": "resourceFile3412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3413", + "filePath": "resourceFile3413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3414", + "filePath": "resourceFile3414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3415", + "filePath": "resourceFile3415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3416", + "filePath": "resourceFile3416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3417", + "filePath": "resourceFile3417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3418", + "filePath": "resourceFile3418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3419", + "filePath": "resourceFile3419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3420", + "filePath": "resourceFile3420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3421", + "filePath": "resourceFile3421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3422", + "filePath": "resourceFile3422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3423", + "filePath": "resourceFile3423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3424", + "filePath": "resourceFile3424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3425", + "filePath": "resourceFile3425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3426", + "filePath": "resourceFile3426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3427", + "filePath": "resourceFile3427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3428", + "filePath": "resourceFile3428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3429", + "filePath": "resourceFile3429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3430", + "filePath": "resourceFile3430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3431", + "filePath": "resourceFile3431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3432", + "filePath": "resourceFile3432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3433", + "filePath": "resourceFile3433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3434", + "filePath": "resourceFile3434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3435", + "filePath": "resourceFile3435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3436", + "filePath": "resourceFile3436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3437", + "filePath": "resourceFile3437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3438", + "filePath": "resourceFile3438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3439", + "filePath": "resourceFile3439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3440", + "filePath": "resourceFile3440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3441", + "filePath": "resourceFile3441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3442", + "filePath": "resourceFile3442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3443", + "filePath": "resourceFile3443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3444", + "filePath": "resourceFile3444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3445", + "filePath": "resourceFile3445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3446", + "filePath": "resourceFile3446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3447", + "filePath": "resourceFile3447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3448", + "filePath": "resourceFile3448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3449", + "filePath": "resourceFile3449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3450", + "filePath": "resourceFile3450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3451", + "filePath": "resourceFile3451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3452", + "filePath": "resourceFile3452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3453", + "filePath": "resourceFile3453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3454", + "filePath": "resourceFile3454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3455", + "filePath": "resourceFile3455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3456", + "filePath": "resourceFile3456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3457", + "filePath": "resourceFile3457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3458", + "filePath": "resourceFile3458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3459", + "filePath": "resourceFile3459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3460", + "filePath": "resourceFile3460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3461", + "filePath": "resourceFile3461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3462", + "filePath": "resourceFile3462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3463", + "filePath": "resourceFile3463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3464", + "filePath": "resourceFile3464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3465", + "filePath": "resourceFile3465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3466", + "filePath": "resourceFile3466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3467", + "filePath": "resourceFile3467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3468", + "filePath": "resourceFile3468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3469", + "filePath": "resourceFile3469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3470", + "filePath": "resourceFile3470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3471", + "filePath": "resourceFile3471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3472", + "filePath": "resourceFile3472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3473", + "filePath": "resourceFile3473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3474", + "filePath": "resourceFile3474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3475", + "filePath": "resourceFile3475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3476", + "filePath": "resourceFile3476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3477", + "filePath": "resourceFile3477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3478", + "filePath": "resourceFile3478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3479", + "filePath": "resourceFile3479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3480", + "filePath": "resourceFile3480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3481", + "filePath": "resourceFile3481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3482", + "filePath": "resourceFile3482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3483", + "filePath": "resourceFile3483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3484", + "filePath": "resourceFile3484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3485", + "filePath": "resourceFile3485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3486", + "filePath": "resourceFile3486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3487", + "filePath": "resourceFile3487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3488", + "filePath": "resourceFile3488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3489", + "filePath": "resourceFile3489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3490", + "filePath": "resourceFile3490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3491", + "filePath": "resourceFile3491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3492", + "filePath": "resourceFile3492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3493", + "filePath": "resourceFile3493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3494", + "filePath": "resourceFile3494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3495", + "filePath": "resourceFile3495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3496", + "filePath": "resourceFile3496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3497", + "filePath": "resourceFile3497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3498", + "filePath": "resourceFile3498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3499", + "filePath": "resourceFile3499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3500", + "filePath": "resourceFile3500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3501", + "filePath": "resourceFile3501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3502", + "filePath": "resourceFile3502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3503", + "filePath": "resourceFile3503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3504", + "filePath": "resourceFile3504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3505", + "filePath": "resourceFile3505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3506", + "filePath": "resourceFile3506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3507", + "filePath": "resourceFile3507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3508", + "filePath": "resourceFile3508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3509", + "filePath": "resourceFile3509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3510", + "filePath": "resourceFile3510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3511", + "filePath": "resourceFile3511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3512", + "filePath": "resourceFile3512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3513", + "filePath": "resourceFile3513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3514", + "filePath": "resourceFile3514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3515", + "filePath": "resourceFile3515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3516", + "filePath": "resourceFile3516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3517", + "filePath": "resourceFile3517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3518", + "filePath": "resourceFile3518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3519", + "filePath": "resourceFile3519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3520", + "filePath": "resourceFile3520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3521", + "filePath": "resourceFile3521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3522", + "filePath": "resourceFile3522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3523", + "filePath": "resourceFile3523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3524", + "filePath": "resourceFile3524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3525", + "filePath": "resourceFile3525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3526", + "filePath": "resourceFile3526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3527", + "filePath": "resourceFile3527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3528", + "filePath": "resourceFile3528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3529", + "filePath": "resourceFile3529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3530", + "filePath": "resourceFile3530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3531", + "filePath": "resourceFile3531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3532", + "filePath": "resourceFile3532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3533", + "filePath": "resourceFile3533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3534", + "filePath": "resourceFile3534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3535", + "filePath": "resourceFile3535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3536", + "filePath": "resourceFile3536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3537", + "filePath": "resourceFile3537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3538", + "filePath": "resourceFile3538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3539", + "filePath": "resourceFile3539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3540", + "filePath": "resourceFile3540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3541", + "filePath": "resourceFile3541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3542", + "filePath": "resourceFile3542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3543", + "filePath": "resourceFile3543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3544", + "filePath": "resourceFile3544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3545", + "filePath": "resourceFile3545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3546", + "filePath": "resourceFile3546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3547", + "filePath": "resourceFile3547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3548", + "filePath": "resourceFile3548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3549", + "filePath": "resourceFile3549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3550", + "filePath": "resourceFile3550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3551", + "filePath": "resourceFile3551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3552", + "filePath": "resourceFile3552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3553", + "filePath": "resourceFile3553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3554", + "filePath": "resourceFile3554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3555", + "filePath": "resourceFile3555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3556", + "filePath": "resourceFile3556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3557", + "filePath": "resourceFile3557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3558", + "filePath": "resourceFile3558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3559", + "filePath": "resourceFile3559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3560", + "filePath": "resourceFile3560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3561", + "filePath": "resourceFile3561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3562", + "filePath": "resourceFile3562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3563", + "filePath": "resourceFile3563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3564", + "filePath": "resourceFile3564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3565", + "filePath": "resourceFile3565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3566", + "filePath": "resourceFile3566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3567", + "filePath": "resourceFile3567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3568", + "filePath": "resourceFile3568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3569", + "filePath": "resourceFile3569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3570", + "filePath": "resourceFile3570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3571", + "filePath": "resourceFile3571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3572", + "filePath": "resourceFile3572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3573", + "filePath": "resourceFile3573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3574", + "filePath": "resourceFile3574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3575", + "filePath": "resourceFile3575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3576", + "filePath": "resourceFile3576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3577", + "filePath": "resourceFile3577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3578", + "filePath": "resourceFile3578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3579", + "filePath": "resourceFile3579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3580", + "filePath": "resourceFile3580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3581", + "filePath": "resourceFile3581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3582", + "filePath": "resourceFile3582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3583", + "filePath": "resourceFile3583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3584", + "filePath": "resourceFile3584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3585", + "filePath": "resourceFile3585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3586", + "filePath": "resourceFile3586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3587", + "filePath": "resourceFile3587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3588", + "filePath": "resourceFile3588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3589", + "filePath": "resourceFile3589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3590", + "filePath": "resourceFile3590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3591", + "filePath": "resourceFile3591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3592", + "filePath": "resourceFile3592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3593", + "filePath": "resourceFile3593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3594", + "filePath": "resourceFile3594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3595", + "filePath": "resourceFile3595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3596", + "filePath": "resourceFile3596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3597", + "filePath": "resourceFile3597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3598", + "filePath": "resourceFile3598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3599", + "filePath": "resourceFile3599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3600", + "filePath": "resourceFile3600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3601", + "filePath": "resourceFile3601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3602", + "filePath": "resourceFile3602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3603", + "filePath": "resourceFile3603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3604", + "filePath": "resourceFile3604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3605", + "filePath": "resourceFile3605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3606", + "filePath": "resourceFile3606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3607", + "filePath": "resourceFile3607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3608", + "filePath": "resourceFile3608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3609", + "filePath": "resourceFile3609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3610", + "filePath": "resourceFile3610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3611", + "filePath": "resourceFile3611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3612", + "filePath": "resourceFile3612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3613", + "filePath": "resourceFile3613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3614", + "filePath": "resourceFile3614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3615", + "filePath": "resourceFile3615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3616", + "filePath": "resourceFile3616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3617", + "filePath": "resourceFile3617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3618", + "filePath": "resourceFile3618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3619", + "filePath": "resourceFile3619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3620", + "filePath": "resourceFile3620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3621", + "filePath": "resourceFile3621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3622", + "filePath": "resourceFile3622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3623", + "filePath": "resourceFile3623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3624", + "filePath": "resourceFile3624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3625", + "filePath": "resourceFile3625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3626", + "filePath": "resourceFile3626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3627", + "filePath": "resourceFile3627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3628", + "filePath": "resourceFile3628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3629", + "filePath": "resourceFile3629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3630", + "filePath": "resourceFile3630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3631", + "filePath": "resourceFile3631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3632", + "filePath": "resourceFile3632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3633", + "filePath": "resourceFile3633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3634", + "filePath": "resourceFile3634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3635", + "filePath": "resourceFile3635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3636", + "filePath": "resourceFile3636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3637", + "filePath": "resourceFile3637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3638", + "filePath": "resourceFile3638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3639", + "filePath": "resourceFile3639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3640", + "filePath": "resourceFile3640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3641", + "filePath": "resourceFile3641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3642", + "filePath": "resourceFile3642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3643", + "filePath": "resourceFile3643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3644", + "filePath": "resourceFile3644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3645", + "filePath": "resourceFile3645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3646", + "filePath": "resourceFile3646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3647", + "filePath": "resourceFile3647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3648", + "filePath": "resourceFile3648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3649", + "filePath": "resourceFile3649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3650", + "filePath": "resourceFile3650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3651", + "filePath": "resourceFile3651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3652", + "filePath": "resourceFile3652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3653", + "filePath": "resourceFile3653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3654", + "filePath": "resourceFile3654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3655", + "filePath": "resourceFile3655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3656", + "filePath": "resourceFile3656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3657", + "filePath": "resourceFile3657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3658", + "filePath": "resourceFile3658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3659", + "filePath": "resourceFile3659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3660", + "filePath": "resourceFile3660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3661", + "filePath": "resourceFile3661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3662", + "filePath": "resourceFile3662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3663", + "filePath": "resourceFile3663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3664", + "filePath": "resourceFile3664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3665", + "filePath": "resourceFile3665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3666", + "filePath": "resourceFile3666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3667", + "filePath": "resourceFile3667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3668", + "filePath": "resourceFile3668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3669", + "filePath": "resourceFile3669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3670", + "filePath": "resourceFile3670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3671", + "filePath": "resourceFile3671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3672", + "filePath": "resourceFile3672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3673", + "filePath": "resourceFile3673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3674", + "filePath": "resourceFile3674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3675", + "filePath": "resourceFile3675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3676", + "filePath": "resourceFile3676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3677", + "filePath": "resourceFile3677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3678", + "filePath": "resourceFile3678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3679", + "filePath": "resourceFile3679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3680", + "filePath": "resourceFile3680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3681", + "filePath": "resourceFile3681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3682", + "filePath": "resourceFile3682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3683", + "filePath": "resourceFile3683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3684", + "filePath": "resourceFile3684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3685", + "filePath": "resourceFile3685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3686", + "filePath": "resourceFile3686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3687", + "filePath": "resourceFile3687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3688", + "filePath": "resourceFile3688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3689", + "filePath": "resourceFile3689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3690", + "filePath": "resourceFile3690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3691", + "filePath": "resourceFile3691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3692", + "filePath": "resourceFile3692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3693", + "filePath": "resourceFile3693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3694", + "filePath": "resourceFile3694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3695", + "filePath": "resourceFile3695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3696", + "filePath": "resourceFile3696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3697", + "filePath": "resourceFile3697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3698", + "filePath": "resourceFile3698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3699", + "filePath": "resourceFile3699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3700", + "filePath": "resourceFile3700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3701", + "filePath": "resourceFile3701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3702", + "filePath": "resourceFile3702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3703", + "filePath": "resourceFile3703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3704", + "filePath": "resourceFile3704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3705", + "filePath": "resourceFile3705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3706", + "filePath": "resourceFile3706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3707", + "filePath": "resourceFile3707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3708", + "filePath": "resourceFile3708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3709", + "filePath": "resourceFile3709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3710", + "filePath": "resourceFile3710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3711", + "filePath": "resourceFile3711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3712", + "filePath": "resourceFile3712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3713", + "filePath": "resourceFile3713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3714", + "filePath": "resourceFile3714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3715", + "filePath": "resourceFile3715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3716", + "filePath": "resourceFile3716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3717", + "filePath": "resourceFile3717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3718", + "filePath": "resourceFile3718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3719", + "filePath": "resourceFile3719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3720", + "filePath": "resourceFile3720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3721", + "filePath": "resourceFile3721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3722", + "filePath": "resourceFile3722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3723", + "filePath": "resourceFile3723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3724", + "filePath": "resourceFile3724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3725", + "filePath": "resourceFile3725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3726", + "filePath": "resourceFile3726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3727", + "filePath": "resourceFile3727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3728", + "filePath": "resourceFile3728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3729", + "filePath": "resourceFile3729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3730", + "filePath": "resourceFile3730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3731", + "filePath": "resourceFile3731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3732", + "filePath": "resourceFile3732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3733", + "filePath": "resourceFile3733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3734", + "filePath": "resourceFile3734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3735", + "filePath": "resourceFile3735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3736", + "filePath": "resourceFile3736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3737", + "filePath": "resourceFile3737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3738", + "filePath": "resourceFile3738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3739", + "filePath": "resourceFile3739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3740", + "filePath": "resourceFile3740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3741", + "filePath": "resourceFile3741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3742", + "filePath": "resourceFile3742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3743", + "filePath": "resourceFile3743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3744", + "filePath": "resourceFile3744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3745", + "filePath": "resourceFile3745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3746", + "filePath": "resourceFile3746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3747", + "filePath": "resourceFile3747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3748", + "filePath": "resourceFile3748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3749", + "filePath": "resourceFile3749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3750", + "filePath": "resourceFile3750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3751", + "filePath": "resourceFile3751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3752", + "filePath": "resourceFile3752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3753", + "filePath": "resourceFile3753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3754", + "filePath": "resourceFile3754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3755", + "filePath": "resourceFile3755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3756", + "filePath": "resourceFile3756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3757", + "filePath": "resourceFile3757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3758", + "filePath": "resourceFile3758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3759", + "filePath": "resourceFile3759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3760", + "filePath": "resourceFile3760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3761", + "filePath": "resourceFile3761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3762", + "filePath": "resourceFile3762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3763", + "filePath": "resourceFile3763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3764", + "filePath": "resourceFile3764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3765", + "filePath": "resourceFile3765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3766", + "filePath": "resourceFile3766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3767", + "filePath": "resourceFile3767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3768", + "filePath": "resourceFile3768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3769", + "filePath": "resourceFile3769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3770", + "filePath": "resourceFile3770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3771", + "filePath": "resourceFile3771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3772", + "filePath": "resourceFile3772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3773", + "filePath": "resourceFile3773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3774", + "filePath": "resourceFile3774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3775", + "filePath": "resourceFile3775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3776", + "filePath": "resourceFile3776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3777", + "filePath": "resourceFile3777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3778", + "filePath": "resourceFile3778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3779", + "filePath": "resourceFile3779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3780", + "filePath": "resourceFile3780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3781", + "filePath": "resourceFile3781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3782", + "filePath": "resourceFile3782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3783", + "filePath": "resourceFile3783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3784", + "filePath": "resourceFile3784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3785", + "filePath": "resourceFile3785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3786", + "filePath": "resourceFile3786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3787", + "filePath": "resourceFile3787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3788", + "filePath": "resourceFile3788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3789", + "filePath": "resourceFile3789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3790", + "filePath": "resourceFile3790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3791", + "filePath": "resourceFile3791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3792", + "filePath": "resourceFile3792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3793", + "filePath": "resourceFile3793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3794", + "filePath": "resourceFile3794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3795", + "filePath": "resourceFile3795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3796", + "filePath": "resourceFile3796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3797", + "filePath": "resourceFile3797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3798", + "filePath": "resourceFile3798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3799", + "filePath": "resourceFile3799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3800", + "filePath": "resourceFile3800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3801", + "filePath": "resourceFile3801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3802", + "filePath": "resourceFile3802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3803", + "filePath": "resourceFile3803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3804", + "filePath": "resourceFile3804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3805", + "filePath": "resourceFile3805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3806", + "filePath": "resourceFile3806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3807", + "filePath": "resourceFile3807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3808", + "filePath": "resourceFile3808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3809", + "filePath": "resourceFile3809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3810", + "filePath": "resourceFile3810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3811", + "filePath": "resourceFile3811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3812", + "filePath": "resourceFile3812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3813", + "filePath": "resourceFile3813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3814", + "filePath": "resourceFile3814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3815", + "filePath": "resourceFile3815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3816", + "filePath": "resourceFile3816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3817", + "filePath": "resourceFile3817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3818", + "filePath": "resourceFile3818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3819", + "filePath": "resourceFile3819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3820", + "filePath": "resourceFile3820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3821", + "filePath": "resourceFile3821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3822", + "filePath": "resourceFile3822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3823", + "filePath": "resourceFile3823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3824", + "filePath": "resourceFile3824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3825", + "filePath": "resourceFile3825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3826", + "filePath": "resourceFile3826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3827", + "filePath": "resourceFile3827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3828", + "filePath": "resourceFile3828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3829", + "filePath": "resourceFile3829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3830", + "filePath": "resourceFile3830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3831", + "filePath": "resourceFile3831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3832", + "filePath": "resourceFile3832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3833", + "filePath": "resourceFile3833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3834", + "filePath": "resourceFile3834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3835", + "filePath": "resourceFile3835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3836", + "filePath": "resourceFile3836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3837", + "filePath": "resourceFile3837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3838", + "filePath": "resourceFile3838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3839", + "filePath": "resourceFile3839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3840", + "filePath": "resourceFile3840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3841", + "filePath": "resourceFile3841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3842", + "filePath": "resourceFile3842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3843", + "filePath": "resourceFile3843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3844", + "filePath": "resourceFile3844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3845", + "filePath": "resourceFile3845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3846", + "filePath": "resourceFile3846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3847", + "filePath": "resourceFile3847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3848", + "filePath": "resourceFile3848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3849", + "filePath": "resourceFile3849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3850", + "filePath": "resourceFile3850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3851", + "filePath": "resourceFile3851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3852", + "filePath": "resourceFile3852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3853", + "filePath": "resourceFile3853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3854", + "filePath": "resourceFile3854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3855", + "filePath": "resourceFile3855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3856", + "filePath": "resourceFile3856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3857", + "filePath": "resourceFile3857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3858", + "filePath": "resourceFile3858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3859", + "filePath": "resourceFile3859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3860", + "filePath": "resourceFile3860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3861", + "filePath": "resourceFile3861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3862", + "filePath": "resourceFile3862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3863", + "filePath": "resourceFile3863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3864", + "filePath": "resourceFile3864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3865", + "filePath": "resourceFile3865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3866", + "filePath": "resourceFile3866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3867", + "filePath": "resourceFile3867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3868", + "filePath": "resourceFile3868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3869", + "filePath": "resourceFile3869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3870", + "filePath": "resourceFile3870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3871", + "filePath": "resourceFile3871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3872", + "filePath": "resourceFile3872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3873", + "filePath": "resourceFile3873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3874", + "filePath": "resourceFile3874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3875", + "filePath": "resourceFile3875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3876", + "filePath": "resourceFile3876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3877", + "filePath": "resourceFile3877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3878", + "filePath": "resourceFile3878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3879", + "filePath": "resourceFile3879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3880", + "filePath": "resourceFile3880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3881", + "filePath": "resourceFile3881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3882", + "filePath": "resourceFile3882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3883", + "filePath": "resourceFile3883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3884", + "filePath": "resourceFile3884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3885", + "filePath": "resourceFile3885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3886", + "filePath": "resourceFile3886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3887", + "filePath": "resourceFile3887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3888", + "filePath": "resourceFile3888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3889", + "filePath": "resourceFile3889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3890", + "filePath": "resourceFile3890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3891", + "filePath": "resourceFile3891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3892", + "filePath": "resourceFile3892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3893", + "filePath": "resourceFile3893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3894", + "filePath": "resourceFile3894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3895", + "filePath": "resourceFile3895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3896", + "filePath": "resourceFile3896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3897", + "filePath": "resourceFile3897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3898", + "filePath": "resourceFile3898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3899", + "filePath": "resourceFile3899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3900", + "filePath": "resourceFile3900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3901", + "filePath": "resourceFile3901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3902", + "filePath": "resourceFile3902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3903", + "filePath": "resourceFile3903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3904", + "filePath": "resourceFile3904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3905", + "filePath": "resourceFile3905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3906", + "filePath": "resourceFile3906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3907", + "filePath": "resourceFile3907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3908", + "filePath": "resourceFile3908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3909", + "filePath": "resourceFile3909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3910", + "filePath": "resourceFile3910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3911", + "filePath": "resourceFile3911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3912", + "filePath": "resourceFile3912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3913", + "filePath": "resourceFile3913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3914", + "filePath": "resourceFile3914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3915", + "filePath": "resourceFile3915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3916", + "filePath": "resourceFile3916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3917", + "filePath": "resourceFile3917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3918", + "filePath": "resourceFile3918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3919", + "filePath": "resourceFile3919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3920", + "filePath": "resourceFile3920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3921", + "filePath": "resourceFile3921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3922", + "filePath": "resourceFile3922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3923", + "filePath": "resourceFile3923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3924", + "filePath": "resourceFile3924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3925", + "filePath": "resourceFile3925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3926", + "filePath": "resourceFile3926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3927", + "filePath": "resourceFile3927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3928", + "filePath": "resourceFile3928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3929", + "filePath": "resourceFile3929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3930", + "filePath": "resourceFile3930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3931", + "filePath": "resourceFile3931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3932", + "filePath": "resourceFile3932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3933", + "filePath": "resourceFile3933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3934", + "filePath": "resourceFile3934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3935", + "filePath": "resourceFile3935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3936", + "filePath": "resourceFile3936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3937", + "filePath": "resourceFile3937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3938", + "filePath": "resourceFile3938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3939", + "filePath": "resourceFile3939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3940", + "filePath": "resourceFile3940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3941", + "filePath": "resourceFile3941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3942", + "filePath": "resourceFile3942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3943", + "filePath": "resourceFile3943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3944", + "filePath": "resourceFile3944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3945", + "filePath": "resourceFile3945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3946", + "filePath": "resourceFile3946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3947", + "filePath": "resourceFile3947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3948", + "filePath": "resourceFile3948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3949", + "filePath": "resourceFile3949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3950", + "filePath": "resourceFile3950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3951", + "filePath": "resourceFile3951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3952", + "filePath": "resourceFile3952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3953", + "filePath": "resourceFile3953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3954", + "filePath": "resourceFile3954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3955", + "filePath": "resourceFile3955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3956", + "filePath": "resourceFile3956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3957", + "filePath": "resourceFile3957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3958", + "filePath": "resourceFile3958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3959", + "filePath": "resourceFile3959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3960", + "filePath": "resourceFile3960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3961", + "filePath": "resourceFile3961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3962", + "filePath": "resourceFile3962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3963", + "filePath": "resourceFile3963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3964", + "filePath": "resourceFile3964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3965", + "filePath": "resourceFile3965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3966", + "filePath": "resourceFile3966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3967", + "filePath": "resourceFile3967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3968", + "filePath": "resourceFile3968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3969", + "filePath": "resourceFile3969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3970", + "filePath": "resourceFile3970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3971", + "filePath": "resourceFile3971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3972", + "filePath": "resourceFile3972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3973", + "filePath": "resourceFile3973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3974", + "filePath": "resourceFile3974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3975", + "filePath": "resourceFile3975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3976", + "filePath": "resourceFile3976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3977", + "filePath": "resourceFile3977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3978", + "filePath": "resourceFile3978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3979", + "filePath": "resourceFile3979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3980", + "filePath": "resourceFile3980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3981", + "filePath": "resourceFile3981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3982", + "filePath": "resourceFile3982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3983", + "filePath": "resourceFile3983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3984", + "filePath": "resourceFile3984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3985", + "filePath": "resourceFile3985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3986", + "filePath": "resourceFile3986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3987", + "filePath": "resourceFile3987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3988", + "filePath": "resourceFile3988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3989", + "filePath": "resourceFile3989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3990", + "filePath": "resourceFile3990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3991", + "filePath": "resourceFile3991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3992", + "filePath": "resourceFile3992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3993", + "filePath": "resourceFile3993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3994", + "filePath": "resourceFile3994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3995", + "filePath": "resourceFile3995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3996", + "filePath": "resourceFile3996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3997", + "filePath": "resourceFile3997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3998", + "filePath": "resourceFile3998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3999", + "filePath": "resourceFile3999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4000", + "filePath": "resourceFile4000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4001", + "filePath": "resourceFile4001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4002", + "filePath": "resourceFile4002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4003", + "filePath": "resourceFile4003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4004", + "filePath": "resourceFile4004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4005", + "filePath": "resourceFile4005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4006", + "filePath": "resourceFile4006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4007", + "filePath": "resourceFile4007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4008", + "filePath": "resourceFile4008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4009", + "filePath": "resourceFile4009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4010", + "filePath": "resourceFile4010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4011", + "filePath": "resourceFile4011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4012", + "filePath": "resourceFile4012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4013", + "filePath": "resourceFile4013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4014", + "filePath": "resourceFile4014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4015", + "filePath": "resourceFile4015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4016", + "filePath": "resourceFile4016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4017", + "filePath": "resourceFile4017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4018", + "filePath": "resourceFile4018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4019", + "filePath": "resourceFile4019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4020", + "filePath": "resourceFile4020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4021", + "filePath": "resourceFile4021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4022", + "filePath": "resourceFile4022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4023", + "filePath": "resourceFile4023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4024", + "filePath": "resourceFile4024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4025", + "filePath": "resourceFile4025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4026", + "filePath": "resourceFile4026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4027", + "filePath": "resourceFile4027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4028", + "filePath": "resourceFile4028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4029", + "filePath": "resourceFile4029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4030", + "filePath": "resourceFile4030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4031", + "filePath": "resourceFile4031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4032", + "filePath": "resourceFile4032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4033", + "filePath": "resourceFile4033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4034", + "filePath": "resourceFile4034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4035", + "filePath": "resourceFile4035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4036", + "filePath": "resourceFile4036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4037", + "filePath": "resourceFile4037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4038", + "filePath": "resourceFile4038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4039", + "filePath": "resourceFile4039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4040", + "filePath": "resourceFile4040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4041", + "filePath": "resourceFile4041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4042", + "filePath": "resourceFile4042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4043", + "filePath": "resourceFile4043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4044", + "filePath": "resourceFile4044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4045", + "filePath": "resourceFile4045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4046", + "filePath": "resourceFile4046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4047", + "filePath": "resourceFile4047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4048", + "filePath": "resourceFile4048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4049", + "filePath": "resourceFile4049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4050", + "filePath": "resourceFile4050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4051", + "filePath": "resourceFile4051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4052", + "filePath": "resourceFile4052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4053", + "filePath": "resourceFile4053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4054", + "filePath": "resourceFile4054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4055", + "filePath": "resourceFile4055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4056", + "filePath": "resourceFile4056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4057", + "filePath": "resourceFile4057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4058", + "filePath": "resourceFile4058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4059", + "filePath": "resourceFile4059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4060", + "filePath": "resourceFile4060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4061", + "filePath": "resourceFile4061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4062", + "filePath": "resourceFile4062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4063", + "filePath": "resourceFile4063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4064", + "filePath": "resourceFile4064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4065", + "filePath": "resourceFile4065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4066", + "filePath": "resourceFile4066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4067", + "filePath": "resourceFile4067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4068", + "filePath": "resourceFile4068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4069", + "filePath": "resourceFile4069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4070", + "filePath": "resourceFile4070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4071", + "filePath": "resourceFile4071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4072", + "filePath": "resourceFile4072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4073", + "filePath": "resourceFile4073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4074", + "filePath": "resourceFile4074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4075", + "filePath": "resourceFile4075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4076", + "filePath": "resourceFile4076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4077", + "filePath": "resourceFile4077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4078", + "filePath": "resourceFile4078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4079", + "filePath": "resourceFile4079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4080", + "filePath": "resourceFile4080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4081", + "filePath": "resourceFile4081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4082", + "filePath": "resourceFile4082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4083", + "filePath": "resourceFile4083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4084", + "filePath": "resourceFile4084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4085", + "filePath": "resourceFile4085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4086", + "filePath": "resourceFile4086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4087", + "filePath": "resourceFile4087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4088", + "filePath": "resourceFile4088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4089", + "filePath": "resourceFile4089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4090", + "filePath": "resourceFile4090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4091", + "filePath": "resourceFile4091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4092", + "filePath": "resourceFile4092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4093", + "filePath": "resourceFile4093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4094", + "filePath": "resourceFile4094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4095", + "filePath": "resourceFile4095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4096", + "filePath": "resourceFile4096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4097", + "filePath": "resourceFile4097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4098", + "filePath": "resourceFile4098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4099", + "filePath": "resourceFile4099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4100", + "filePath": "resourceFile4100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4101", + "filePath": "resourceFile4101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4102", + "filePath": "resourceFile4102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4103", + "filePath": "resourceFile4103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4104", + "filePath": "resourceFile4104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4105", + "filePath": "resourceFile4105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4106", + "filePath": "resourceFile4106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4107", + "filePath": "resourceFile4107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4108", + "filePath": "resourceFile4108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4109", + "filePath": "resourceFile4109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4110", + "filePath": "resourceFile4110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4111", + "filePath": "resourceFile4111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4112", + "filePath": "resourceFile4112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4113", + "filePath": "resourceFile4113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4114", + "filePath": "resourceFile4114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4115", + "filePath": "resourceFile4115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4116", + "filePath": "resourceFile4116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4117", + "filePath": "resourceFile4117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4118", + "filePath": "resourceFile4118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4119", + "filePath": "resourceFile4119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4120", + "filePath": "resourceFile4120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4121", + "filePath": "resourceFile4121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4122", + "filePath": "resourceFile4122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4123", + "filePath": "resourceFile4123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4124", + "filePath": "resourceFile4124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4125", + "filePath": "resourceFile4125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4126", + "filePath": "resourceFile4126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4127", + "filePath": "resourceFile4127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4128", + "filePath": "resourceFile4128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4129", + "filePath": "resourceFile4129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4130", + "filePath": "resourceFile4130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4131", + "filePath": "resourceFile4131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4132", + "filePath": "resourceFile4132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4133", + "filePath": "resourceFile4133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4134", + "filePath": "resourceFile4134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4135", + "filePath": "resourceFile4135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4136", + "filePath": "resourceFile4136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4137", + "filePath": "resourceFile4137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4138", + "filePath": "resourceFile4138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4139", + "filePath": "resourceFile4139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4140", + "filePath": "resourceFile4140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4141", + "filePath": "resourceFile4141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4142", + "filePath": "resourceFile4142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4143", + "filePath": "resourceFile4143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4144", + "filePath": "resourceFile4144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4145", + "filePath": "resourceFile4145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4146", + "filePath": "resourceFile4146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4147", + "filePath": "resourceFile4147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4148", + "filePath": "resourceFile4148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4149", + "filePath": "resourceFile4149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4150", + "filePath": "resourceFile4150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4151", + "filePath": "resourceFile4151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4152", + "filePath": "resourceFile4152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4153", + "filePath": "resourceFile4153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4154", + "filePath": "resourceFile4154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4155", + "filePath": "resourceFile4155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4156", + "filePath": "resourceFile4156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4157", + "filePath": "resourceFile4157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4158", + "filePath": "resourceFile4158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4159", + "filePath": "resourceFile4159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4160", + "filePath": "resourceFile4160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4161", + "filePath": "resourceFile4161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4162", + "filePath": "resourceFile4162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4163", + "filePath": "resourceFile4163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4164", + "filePath": "resourceFile4164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4165", + "filePath": "resourceFile4165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4166", + "filePath": "resourceFile4166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4167", + "filePath": "resourceFile4167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4168", + "filePath": "resourceFile4168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4169", + "filePath": "resourceFile4169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4170", + "filePath": "resourceFile4170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4171", + "filePath": "resourceFile4171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4172", + "filePath": "resourceFile4172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4173", + "filePath": "resourceFile4173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4174", + "filePath": "resourceFile4174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4175", + "filePath": "resourceFile4175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4176", + "filePath": "resourceFile4176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4177", + "filePath": "resourceFile4177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4178", + "filePath": "resourceFile4178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4179", + "filePath": "resourceFile4179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4180", + "filePath": "resourceFile4180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4181", + "filePath": "resourceFile4181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4182", + "filePath": "resourceFile4182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4183", + "filePath": "resourceFile4183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4184", + "filePath": "resourceFile4184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4185", + "filePath": "resourceFile4185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4186", + "filePath": "resourceFile4186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4187", + "filePath": "resourceFile4187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4188", + "filePath": "resourceFile4188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4189", + "filePath": "resourceFile4189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4190", + "filePath": "resourceFile4190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4191", + "filePath": "resourceFile4191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4192", + "filePath": "resourceFile4192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4193", + "filePath": "resourceFile4193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4194", + "filePath": "resourceFile4194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4195", + "filePath": "resourceFile4195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4196", + "filePath": "resourceFile4196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4197", + "filePath": "resourceFile4197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4198", + "filePath": "resourceFile4198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4199", + "filePath": "resourceFile4199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4200", + "filePath": "resourceFile4200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4201", + "filePath": "resourceFile4201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4202", + "filePath": "resourceFile4202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4203", + "filePath": "resourceFile4203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4204", + "filePath": "resourceFile4204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4205", + "filePath": "resourceFile4205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4206", + "filePath": "resourceFile4206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4207", + "filePath": "resourceFile4207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4208", + "filePath": "resourceFile4208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4209", + "filePath": "resourceFile4209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4210", + "filePath": "resourceFile4210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4211", + "filePath": "resourceFile4211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4212", + "filePath": "resourceFile4212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4213", + "filePath": "resourceFile4213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4214", + "filePath": "resourceFile4214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4215", + "filePath": "resourceFile4215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4216", + "filePath": "resourceFile4216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4217", + "filePath": "resourceFile4217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4218", + "filePath": "resourceFile4218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4219", + "filePath": "resourceFile4219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4220", + "filePath": "resourceFile4220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4221", + "filePath": "resourceFile4221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4222", + "filePath": "resourceFile4222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4223", + "filePath": "resourceFile4223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4224", + "filePath": "resourceFile4224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4225", + "filePath": "resourceFile4225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4226", + "filePath": "resourceFile4226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4227", + "filePath": "resourceFile4227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4228", + "filePath": "resourceFile4228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4229", + "filePath": "resourceFile4229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4230", + "filePath": "resourceFile4230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4231", + "filePath": "resourceFile4231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4232", + "filePath": "resourceFile4232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4233", + "filePath": "resourceFile4233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4234", + "filePath": "resourceFile4234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4235", + "filePath": "resourceFile4235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4236", + "filePath": "resourceFile4236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4237", + "filePath": "resourceFile4237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4238", + "filePath": "resourceFile4238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4239", + "filePath": "resourceFile4239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4240", + "filePath": "resourceFile4240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4241", + "filePath": "resourceFile4241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4242", + "filePath": "resourceFile4242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4243", + "filePath": "resourceFile4243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4244", + "filePath": "resourceFile4244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4245", + "filePath": "resourceFile4245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4246", + "filePath": "resourceFile4246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4247", + "filePath": "resourceFile4247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4248", + "filePath": "resourceFile4248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4249", + "filePath": "resourceFile4249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4250", + "filePath": "resourceFile4250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4251", + "filePath": "resourceFile4251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4252", + "filePath": "resourceFile4252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4253", + "filePath": "resourceFile4253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4254", + "filePath": "resourceFile4254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4255", + "filePath": "resourceFile4255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4256", + "filePath": "resourceFile4256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4257", + "filePath": "resourceFile4257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4258", + "filePath": "resourceFile4258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4259", + "filePath": "resourceFile4259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4260", + "filePath": "resourceFile4260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4261", + "filePath": "resourceFile4261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4262", + "filePath": "resourceFile4262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4263", + "filePath": "resourceFile4263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4264", + "filePath": "resourceFile4264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4265", + "filePath": "resourceFile4265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4266", + "filePath": "resourceFile4266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4267", + "filePath": "resourceFile4267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4268", + "filePath": "resourceFile4268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4269", + "filePath": "resourceFile4269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4270", + "filePath": "resourceFile4270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4271", + "filePath": "resourceFile4271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4272", + "filePath": "resourceFile4272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4273", + "filePath": "resourceFile4273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4274", + "filePath": "resourceFile4274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4275", + "filePath": "resourceFile4275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4276", + "filePath": "resourceFile4276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4277", + "filePath": "resourceFile4277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4278", + "filePath": "resourceFile4278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4279", + "filePath": "resourceFile4279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4280", + "filePath": "resourceFile4280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4281", + "filePath": "resourceFile4281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4282", + "filePath": "resourceFile4282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4283", + "filePath": "resourceFile4283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4284", + "filePath": "resourceFile4284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4285", + "filePath": "resourceFile4285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4286", + "filePath": "resourceFile4286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4287", + "filePath": "resourceFile4287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4288", + "filePath": "resourceFile4288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4289", + "filePath": "resourceFile4289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4290", + "filePath": "resourceFile4290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4291", + "filePath": "resourceFile4291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4292", + "filePath": "resourceFile4292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4293", + "filePath": "resourceFile4293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4294", + "filePath": "resourceFile4294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4295", + "filePath": "resourceFile4295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4296", + "filePath": "resourceFile4296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4297", + "filePath": "resourceFile4297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4298", + "filePath": "resourceFile4298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4299", + "filePath": "resourceFile4299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4300", + "filePath": "resourceFile4300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4301", + "filePath": "resourceFile4301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4302", + "filePath": "resourceFile4302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4303", + "filePath": "resourceFile4303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4304", + "filePath": "resourceFile4304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4305", + "filePath": "resourceFile4305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4306", + "filePath": "resourceFile4306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4307", + "filePath": "resourceFile4307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4308", + "filePath": "resourceFile4308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4309", + "filePath": "resourceFile4309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4310", + "filePath": "resourceFile4310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4311", + "filePath": "resourceFile4311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4312", + "filePath": "resourceFile4312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4313", + "filePath": "resourceFile4313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4314", + "filePath": "resourceFile4314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4315", + "filePath": "resourceFile4315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4316", + "filePath": "resourceFile4316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4317", + "filePath": "resourceFile4317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4318", + "filePath": "resourceFile4318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4319", + "filePath": "resourceFile4319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4320", + "filePath": "resourceFile4320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4321", + "filePath": "resourceFile4321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4322", + "filePath": "resourceFile4322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4323", + "filePath": "resourceFile4323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4324", + "filePath": "resourceFile4324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4325", + "filePath": "resourceFile4325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4326", + "filePath": "resourceFile4326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4327", + "filePath": "resourceFile4327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4328", + "filePath": "resourceFile4328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4329", + "filePath": "resourceFile4329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4330", + "filePath": "resourceFile4330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4331", + "filePath": "resourceFile4331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4332", + "filePath": "resourceFile4332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4333", + "filePath": "resourceFile4333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4334", + "filePath": "resourceFile4334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4335", + "filePath": "resourceFile4335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4336", + "filePath": "resourceFile4336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4337", + "filePath": "resourceFile4337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4338", + "filePath": "resourceFile4338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4339", + "filePath": "resourceFile4339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4340", + "filePath": "resourceFile4340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4341", + "filePath": "resourceFile4341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4342", + "filePath": "resourceFile4342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4343", + "filePath": "resourceFile4343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4344", + "filePath": "resourceFile4344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4345", + "filePath": "resourceFile4345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4346", + "filePath": "resourceFile4346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4347", + "filePath": "resourceFile4347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4348", + "filePath": "resourceFile4348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4349", + "filePath": "resourceFile4349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4350", + "filePath": "resourceFile4350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4351", + "filePath": "resourceFile4351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4352", + "filePath": "resourceFile4352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4353", + "filePath": "resourceFile4353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4354", + "filePath": "resourceFile4354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4355", + "filePath": "resourceFile4355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4356", + "filePath": "resourceFile4356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4357", + "filePath": "resourceFile4357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4358", + "filePath": "resourceFile4358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4359", + "filePath": "resourceFile4359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4360", + "filePath": "resourceFile4360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4361", + "filePath": "resourceFile4361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4362", + "filePath": "resourceFile4362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4363", + "filePath": "resourceFile4363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4364", + "filePath": "resourceFile4364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4365", + "filePath": "resourceFile4365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4366", + "filePath": "resourceFile4366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4367", + "filePath": "resourceFile4367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4368", + "filePath": "resourceFile4368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4369", + "filePath": "resourceFile4369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4370", + "filePath": "resourceFile4370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4371", + "filePath": "resourceFile4371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4372", + "filePath": "resourceFile4372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4373", + "filePath": "resourceFile4373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4374", + "filePath": "resourceFile4374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4375", + "filePath": "resourceFile4375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4376", + "filePath": "resourceFile4376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4377", + "filePath": "resourceFile4377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4378", + "filePath": "resourceFile4378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4379", + "filePath": "resourceFile4379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4380", + "filePath": "resourceFile4380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4381", + "filePath": "resourceFile4381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4382", + "filePath": "resourceFile4382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4383", + "filePath": "resourceFile4383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4384", + "filePath": "resourceFile4384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4385", + "filePath": "resourceFile4385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4386", + "filePath": "resourceFile4386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4387", + "filePath": "resourceFile4387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4388", + "filePath": "resourceFile4388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4389", + "filePath": "resourceFile4389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4390", + "filePath": "resourceFile4390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4391", + "filePath": "resourceFile4391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4392", + "filePath": "resourceFile4392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4393", + "filePath": "resourceFile4393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4394", + "filePath": "resourceFile4394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4395", + "filePath": "resourceFile4395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4396", + "filePath": "resourceFile4396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4397", + "filePath": "resourceFile4397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4398", + "filePath": "resourceFile4398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4399", + "filePath": "resourceFile4399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4400", + "filePath": "resourceFile4400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4401", + "filePath": "resourceFile4401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4402", + "filePath": "resourceFile4402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4403", + "filePath": "resourceFile4403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4404", + "filePath": "resourceFile4404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4405", + "filePath": "resourceFile4405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4406", + "filePath": "resourceFile4406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4407", + "filePath": "resourceFile4407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4408", + "filePath": "resourceFile4408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4409", + "filePath": "resourceFile4409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4410", + "filePath": "resourceFile4410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4411", + "filePath": "resourceFile4411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4412", + "filePath": "resourceFile4412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4413", + "filePath": "resourceFile4413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4414", + "filePath": "resourceFile4414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4415", + "filePath": "resourceFile4415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4416", + "filePath": "resourceFile4416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4417", + "filePath": "resourceFile4417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4418", + "filePath": "resourceFile4418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4419", + "filePath": "resourceFile4419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4420", + "filePath": "resourceFile4420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4421", + "filePath": "resourceFile4421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4422", + "filePath": "resourceFile4422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4423", + "filePath": "resourceFile4423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4424", + "filePath": "resourceFile4424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4425", + "filePath": "resourceFile4425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4426", + "filePath": "resourceFile4426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4427", + "filePath": "resourceFile4427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4428", + "filePath": "resourceFile4428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4429", + "filePath": "resourceFile4429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4430", + "filePath": "resourceFile4430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4431", + "filePath": "resourceFile4431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4432", + "filePath": "resourceFile4432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4433", + "filePath": "resourceFile4433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4434", + "filePath": "resourceFile4434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4435", + "filePath": "resourceFile4435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4436", + "filePath": "resourceFile4436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4437", + "filePath": "resourceFile4437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4438", + "filePath": "resourceFile4438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4439", + "filePath": "resourceFile4439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4440", + "filePath": "resourceFile4440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4441", + "filePath": "resourceFile4441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4442", + "filePath": "resourceFile4442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4443", + "filePath": "resourceFile4443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4444", + "filePath": "resourceFile4444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4445", + "filePath": "resourceFile4445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4446", + "filePath": "resourceFile4446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4447", + "filePath": "resourceFile4447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4448", + "filePath": "resourceFile4448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4449", + "filePath": "resourceFile4449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4450", + "filePath": "resourceFile4450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4451", + "filePath": "resourceFile4451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4452", + "filePath": "resourceFile4452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4453", + "filePath": "resourceFile4453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4454", + "filePath": "resourceFile4454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4455", + "filePath": "resourceFile4455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4456", + "filePath": "resourceFile4456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4457", + "filePath": "resourceFile4457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4458", + "filePath": "resourceFile4458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4459", + "filePath": "resourceFile4459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4460", + "filePath": "resourceFile4460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4461", + "filePath": "resourceFile4461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4462", + "filePath": "resourceFile4462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4463", + "filePath": "resourceFile4463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4464", + "filePath": "resourceFile4464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4465", + "filePath": "resourceFile4465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4466", + "filePath": "resourceFile4466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4467", + "filePath": "resourceFile4467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4468", + "filePath": "resourceFile4468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4469", + "filePath": "resourceFile4469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4470", + "filePath": "resourceFile4470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4471", + "filePath": "resourceFile4471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4472", + "filePath": "resourceFile4472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4473", + "filePath": "resourceFile4473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4474", + "filePath": "resourceFile4474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4475", + "filePath": "resourceFile4475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4476", + "filePath": "resourceFile4476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4477", + "filePath": "resourceFile4477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4478", + "filePath": "resourceFile4478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4479", + "filePath": "resourceFile4479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4480", + "filePath": "resourceFile4480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4481", + "filePath": "resourceFile4481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4482", + "filePath": "resourceFile4482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4483", + "filePath": "resourceFile4483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4484", + "filePath": "resourceFile4484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4485", + "filePath": "resourceFile4485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4486", + "filePath": "resourceFile4486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4487", + "filePath": "resourceFile4487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4488", + "filePath": "resourceFile4488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4489", + "filePath": "resourceFile4489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4490", + "filePath": "resourceFile4490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4491", + "filePath": "resourceFile4491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4492", + "filePath": "resourceFile4492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4493", + "filePath": "resourceFile4493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4494", + "filePath": "resourceFile4494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4495", + "filePath": "resourceFile4495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4496", + "filePath": "resourceFile4496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4497", + "filePath": "resourceFile4497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4498", + "filePath": "resourceFile4498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4499", + "filePath": "resourceFile4499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4500", + "filePath": "resourceFile4500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4501", + "filePath": "resourceFile4501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4502", + "filePath": "resourceFile4502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4503", + "filePath": "resourceFile4503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4504", + "filePath": "resourceFile4504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4505", + "filePath": "resourceFile4505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4506", + "filePath": "resourceFile4506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4507", + "filePath": "resourceFile4507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4508", + "filePath": "resourceFile4508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4509", + "filePath": "resourceFile4509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4510", + "filePath": "resourceFile4510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4511", + "filePath": "resourceFile4511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4512", + "filePath": "resourceFile4512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4513", + "filePath": "resourceFile4513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4514", + "filePath": "resourceFile4514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4515", + "filePath": "resourceFile4515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4516", + "filePath": "resourceFile4516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4517", + "filePath": "resourceFile4517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4518", + "filePath": "resourceFile4518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4519", + "filePath": "resourceFile4519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4520", + "filePath": "resourceFile4520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4521", + "filePath": "resourceFile4521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4522", + "filePath": "resourceFile4522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4523", + "filePath": "resourceFile4523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4524", + "filePath": "resourceFile4524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4525", + "filePath": "resourceFile4525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4526", + "filePath": "resourceFile4526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4527", + "filePath": "resourceFile4527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4528", + "filePath": "resourceFile4528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4529", + "filePath": "resourceFile4529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4530", + "filePath": "resourceFile4530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4531", + "filePath": "resourceFile4531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4532", + "filePath": "resourceFile4532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4533", + "filePath": "resourceFile4533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4534", + "filePath": "resourceFile4534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4535", + "filePath": "resourceFile4535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4536", + "filePath": "resourceFile4536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4537", + "filePath": "resourceFile4537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4538", + "filePath": "resourceFile4538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4539", + "filePath": "resourceFile4539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4540", + "filePath": "resourceFile4540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4541", + "filePath": "resourceFile4541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4542", + "filePath": "resourceFile4542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4543", + "filePath": "resourceFile4543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4544", + "filePath": "resourceFile4544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4545", + "filePath": "resourceFile4545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4546", + "filePath": "resourceFile4546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4547", + "filePath": "resourceFile4547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4548", + "filePath": "resourceFile4548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4549", + "filePath": "resourceFile4549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4550", + "filePath": "resourceFile4550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4551", + "filePath": "resourceFile4551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4552", + "filePath": "resourceFile4552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4553", + "filePath": "resourceFile4553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4554", + "filePath": "resourceFile4554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4555", + "filePath": "resourceFile4555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4556", + "filePath": "resourceFile4556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4557", + "filePath": "resourceFile4557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4558", + "filePath": "resourceFile4558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4559", + "filePath": "resourceFile4559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4560", + "filePath": "resourceFile4560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4561", + "filePath": "resourceFile4561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4562", + "filePath": "resourceFile4562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4563", + "filePath": "resourceFile4563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4564", + "filePath": "resourceFile4564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4565", + "filePath": "resourceFile4565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4566", + "filePath": "resourceFile4566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4567", + "filePath": "resourceFile4567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4568", + "filePath": "resourceFile4568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4569", + "filePath": "resourceFile4569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4570", + "filePath": "resourceFile4570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4571", + "filePath": "resourceFile4571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4572", + "filePath": "resourceFile4572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4573", + "filePath": "resourceFile4573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4574", + "filePath": "resourceFile4574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4575", + "filePath": "resourceFile4575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4576", + "filePath": "resourceFile4576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4577", + "filePath": "resourceFile4577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4578", + "filePath": "resourceFile4578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4579", + "filePath": "resourceFile4579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4580", + "filePath": "resourceFile4580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4581", + "filePath": "resourceFile4581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4582", + "filePath": "resourceFile4582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4583", + "filePath": "resourceFile4583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4584", + "filePath": "resourceFile4584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4585", + "filePath": "resourceFile4585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4586", + "filePath": "resourceFile4586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4587", + "filePath": "resourceFile4587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4588", + "filePath": "resourceFile4588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4589", + "filePath": "resourceFile4589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4590", + "filePath": "resourceFile4590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4591", + "filePath": "resourceFile4591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4592", + "filePath": "resourceFile4592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4593", + "filePath": "resourceFile4593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4594", + "filePath": "resourceFile4594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4595", + "filePath": "resourceFile4595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4596", + "filePath": "resourceFile4596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4597", + "filePath": "resourceFile4597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4598", + "filePath": "resourceFile4598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4599", + "filePath": "resourceFile4599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4600", + "filePath": "resourceFile4600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4601", + "filePath": "resourceFile4601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4602", + "filePath": "resourceFile4602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4603", + "filePath": "resourceFile4603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4604", + "filePath": "resourceFile4604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4605", + "filePath": "resourceFile4605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4606", + "filePath": "resourceFile4606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4607", + "filePath": "resourceFile4607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4608", + "filePath": "resourceFile4608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4609", + "filePath": "resourceFile4609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4610", + "filePath": "resourceFile4610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4611", + "filePath": "resourceFile4611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4612", + "filePath": "resourceFile4612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4613", + "filePath": "resourceFile4613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4614", + "filePath": "resourceFile4614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4615", + "filePath": "resourceFile4615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4616", + "filePath": "resourceFile4616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4617", + "filePath": "resourceFile4617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4618", + "filePath": "resourceFile4618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4619", + "filePath": "resourceFile4619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4620", + "filePath": "resourceFile4620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4621", + "filePath": "resourceFile4621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4622", + "filePath": "resourceFile4622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4623", + "filePath": "resourceFile4623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4624", + "filePath": "resourceFile4624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4625", + "filePath": "resourceFile4625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4626", + "filePath": "resourceFile4626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4627", + "filePath": "resourceFile4627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4628", + "filePath": "resourceFile4628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4629", + "filePath": "resourceFile4629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4630", + "filePath": "resourceFile4630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4631", + "filePath": "resourceFile4631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4632", + "filePath": "resourceFile4632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4633", + "filePath": "resourceFile4633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4634", + "filePath": "resourceFile4634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4635", + "filePath": "resourceFile4635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4636", + "filePath": "resourceFile4636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4637", + "filePath": "resourceFile4637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4638", + "filePath": "resourceFile4638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4639", + "filePath": "resourceFile4639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4640", + "filePath": "resourceFile4640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4641", + "filePath": "resourceFile4641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4642", + "filePath": "resourceFile4642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4643", + "filePath": "resourceFile4643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4644", + "filePath": "resourceFile4644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4645", + "filePath": "resourceFile4645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4646", + "filePath": "resourceFile4646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4647", + "filePath": "resourceFile4647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4648", + "filePath": "resourceFile4648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4649", + "filePath": "resourceFile4649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4650", + "filePath": "resourceFile4650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4651", + "filePath": "resourceFile4651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4652", + "filePath": "resourceFile4652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4653", + "filePath": "resourceFile4653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4654", + "filePath": "resourceFile4654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4655", + "filePath": "resourceFile4655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4656", + "filePath": "resourceFile4656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4657", + "filePath": "resourceFile4657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4658", + "filePath": "resourceFile4658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4659", + "filePath": "resourceFile4659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4660", + "filePath": "resourceFile4660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4661", + "filePath": "resourceFile4661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4662", + "filePath": "resourceFile4662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4663", + "filePath": "resourceFile4663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4664", + "filePath": "resourceFile4664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4665", + "filePath": "resourceFile4665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4666", + "filePath": "resourceFile4666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4667", + "filePath": "resourceFile4667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4668", + "filePath": "resourceFile4668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4669", + "filePath": "resourceFile4669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4670", + "filePath": "resourceFile4670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4671", + "filePath": "resourceFile4671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4672", + "filePath": "resourceFile4672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4673", + "filePath": "resourceFile4673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4674", + "filePath": "resourceFile4674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4675", + "filePath": "resourceFile4675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4676", + "filePath": "resourceFile4676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4677", + "filePath": "resourceFile4677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4678", + "filePath": "resourceFile4678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4679", + "filePath": "resourceFile4679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4680", + "filePath": "resourceFile4680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4681", + "filePath": "resourceFile4681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4682", + "filePath": "resourceFile4682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4683", + "filePath": "resourceFile4683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4684", + "filePath": "resourceFile4684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4685", + "filePath": "resourceFile4685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4686", + "filePath": "resourceFile4686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4687", + "filePath": "resourceFile4687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4688", + "filePath": "resourceFile4688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4689", + "filePath": "resourceFile4689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4690", + "filePath": "resourceFile4690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4691", + "filePath": "resourceFile4691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4692", + "filePath": "resourceFile4692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4693", + "filePath": "resourceFile4693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4694", + "filePath": "resourceFile4694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4695", + "filePath": "resourceFile4695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4696", + "filePath": "resourceFile4696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4697", + "filePath": "resourceFile4697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4698", + "filePath": "resourceFile4698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4699", + "filePath": "resourceFile4699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4700", + "filePath": "resourceFile4700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4701", + "filePath": "resourceFile4701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4702", + "filePath": "resourceFile4702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4703", + "filePath": "resourceFile4703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4704", + "filePath": "resourceFile4704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4705", + "filePath": "resourceFile4705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4706", + "filePath": "resourceFile4706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4707", + "filePath": "resourceFile4707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4708", + "filePath": "resourceFile4708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4709", + "filePath": "resourceFile4709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4710", + "filePath": "resourceFile4710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4711", + "filePath": "resourceFile4711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4712", + "filePath": "resourceFile4712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4713", + "filePath": "resourceFile4713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4714", + "filePath": "resourceFile4714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4715", + "filePath": "resourceFile4715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4716", + "filePath": "resourceFile4716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4717", + "filePath": "resourceFile4717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4718", + "filePath": "resourceFile4718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4719", + "filePath": "resourceFile4719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4720", + "filePath": "resourceFile4720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4721", + "filePath": "resourceFile4721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4722", + "filePath": "resourceFile4722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4723", + "filePath": "resourceFile4723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4724", + "filePath": "resourceFile4724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4725", + "filePath": "resourceFile4725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4726", + "filePath": "resourceFile4726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4727", + "filePath": "resourceFile4727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4728", + "filePath": "resourceFile4728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4729", + "filePath": "resourceFile4729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4730", + "filePath": "resourceFile4730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4731", + "filePath": "resourceFile4731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4732", + "filePath": "resourceFile4732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4733", + "filePath": "resourceFile4733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4734", + "filePath": "resourceFile4734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4735", + "filePath": "resourceFile4735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4736", + "filePath": "resourceFile4736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4737", + "filePath": "resourceFile4737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4738", + "filePath": "resourceFile4738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4739", + "filePath": "resourceFile4739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4740", + "filePath": "resourceFile4740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4741", + "filePath": "resourceFile4741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4742", + "filePath": "resourceFile4742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4743", + "filePath": "resourceFile4743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4744", + "filePath": "resourceFile4744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4745", + "filePath": "resourceFile4745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4746", + "filePath": "resourceFile4746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4747", + "filePath": "resourceFile4747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4748", + "filePath": "resourceFile4748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4749", + "filePath": "resourceFile4749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4750", + "filePath": "resourceFile4750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4751", + "filePath": "resourceFile4751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4752", + "filePath": "resourceFile4752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4753", + "filePath": "resourceFile4753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4754", + "filePath": "resourceFile4754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4755", + "filePath": "resourceFile4755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4756", + "filePath": "resourceFile4756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4757", + "filePath": "resourceFile4757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4758", + "filePath": "resourceFile4758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4759", + "filePath": "resourceFile4759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4760", + "filePath": "resourceFile4760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4761", + "filePath": "resourceFile4761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4762", + "filePath": "resourceFile4762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4763", + "filePath": "resourceFile4763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4764", + "filePath": "resourceFile4764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4765", + "filePath": "resourceFile4765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4766", + "filePath": "resourceFile4766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4767", + "filePath": "resourceFile4767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4768", + "filePath": "resourceFile4768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4769", + "filePath": "resourceFile4769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4770", + "filePath": "resourceFile4770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4771", + "filePath": "resourceFile4771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4772", + "filePath": "resourceFile4772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4773", + "filePath": "resourceFile4773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4774", + "filePath": "resourceFile4774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4775", + "filePath": "resourceFile4775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4776", + "filePath": "resourceFile4776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4777", + "filePath": "resourceFile4777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4778", + "filePath": "resourceFile4778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4779", + "filePath": "resourceFile4779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4780", + "filePath": "resourceFile4780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4781", + "filePath": "resourceFile4781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4782", + "filePath": "resourceFile4782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4783", + "filePath": "resourceFile4783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4784", + "filePath": "resourceFile4784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4785", + "filePath": "resourceFile4785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4786", + "filePath": "resourceFile4786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4787", + "filePath": "resourceFile4787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4788", + "filePath": "resourceFile4788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4789", + "filePath": "resourceFile4789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4790", + "filePath": "resourceFile4790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4791", + "filePath": "resourceFile4791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4792", + "filePath": "resourceFile4792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4793", + "filePath": "resourceFile4793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4794", + "filePath": "resourceFile4794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4795", + "filePath": "resourceFile4795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4796", + "filePath": "resourceFile4796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4797", + "filePath": "resourceFile4797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4798", + "filePath": "resourceFile4798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4799", + "filePath": "resourceFile4799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4800", + "filePath": "resourceFile4800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4801", + "filePath": "resourceFile4801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4802", + "filePath": "resourceFile4802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4803", + "filePath": "resourceFile4803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4804", + "filePath": "resourceFile4804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4805", + "filePath": "resourceFile4805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4806", + "filePath": "resourceFile4806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4807", + "filePath": "resourceFile4807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4808", + "filePath": "resourceFile4808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4809", + "filePath": "resourceFile4809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4810", + "filePath": "resourceFile4810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4811", + "filePath": "resourceFile4811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4812", + "filePath": "resourceFile4812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4813", + "filePath": "resourceFile4813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4814", + "filePath": "resourceFile4814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4815", + "filePath": "resourceFile4815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4816", + "filePath": "resourceFile4816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4817", + "filePath": "resourceFile4817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4818", + "filePath": "resourceFile4818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4819", + "filePath": "resourceFile4819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4820", + "filePath": "resourceFile4820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4821", + "filePath": "resourceFile4821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4822", + "filePath": "resourceFile4822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4823", + "filePath": "resourceFile4823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4824", + "filePath": "resourceFile4824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4825", + "filePath": "resourceFile4825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4826", + "filePath": "resourceFile4826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4827", + "filePath": "resourceFile4827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4828", + "filePath": "resourceFile4828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4829", + "filePath": "resourceFile4829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4830", + "filePath": "resourceFile4830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4831", + "filePath": "resourceFile4831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4832", + "filePath": "resourceFile4832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4833", + "filePath": "resourceFile4833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4834", + "filePath": "resourceFile4834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4835", + "filePath": "resourceFile4835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4836", + "filePath": "resourceFile4836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4837", + "filePath": "resourceFile4837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4838", + "filePath": "resourceFile4838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4839", + "filePath": "resourceFile4839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4840", + "filePath": "resourceFile4840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4841", + "filePath": "resourceFile4841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4842", + "filePath": "resourceFile4842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4843", + "filePath": "resourceFile4843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4844", + "filePath": "resourceFile4844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4845", + "filePath": "resourceFile4845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4846", + "filePath": "resourceFile4846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4847", + "filePath": "resourceFile4847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4848", + "filePath": "resourceFile4848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4849", + "filePath": "resourceFile4849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4850", + "filePath": "resourceFile4850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4851", + "filePath": "resourceFile4851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4852", + "filePath": "resourceFile4852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4853", + "filePath": "resourceFile4853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4854", + "filePath": "resourceFile4854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4855", + "filePath": "resourceFile4855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4856", + "filePath": "resourceFile4856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4857", + "filePath": "resourceFile4857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4858", + "filePath": "resourceFile4858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4859", + "filePath": "resourceFile4859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4860", + "filePath": "resourceFile4860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4861", + "filePath": "resourceFile4861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4862", + "filePath": "resourceFile4862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4863", + "filePath": "resourceFile4863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4864", + "filePath": "resourceFile4864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4865", + "filePath": "resourceFile4865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4866", + "filePath": "resourceFile4866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4867", + "filePath": "resourceFile4867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4868", + "filePath": "resourceFile4868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4869", + "filePath": "resourceFile4869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4870", + "filePath": "resourceFile4870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4871", + "filePath": "resourceFile4871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4872", + "filePath": "resourceFile4872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4873", + "filePath": "resourceFile4873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4874", + "filePath": "resourceFile4874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4875", + "filePath": "resourceFile4875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4876", + "filePath": "resourceFile4876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4877", + "filePath": "resourceFile4877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4878", + "filePath": "resourceFile4878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4879", + "filePath": "resourceFile4879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4880", + "filePath": "resourceFile4880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4881", + "filePath": "resourceFile4881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4882", + "filePath": "resourceFile4882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4883", + "filePath": "resourceFile4883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4884", + "filePath": "resourceFile4884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4885", + "filePath": "resourceFile4885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4886", + "filePath": "resourceFile4886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4887", + "filePath": "resourceFile4887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4888", + "filePath": "resourceFile4888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4889", + "filePath": "resourceFile4889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4890", + "filePath": "resourceFile4890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4891", + "filePath": "resourceFile4891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4892", + "filePath": "resourceFile4892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4893", + "filePath": "resourceFile4893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4894", + "filePath": "resourceFile4894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4895", + "filePath": "resourceFile4895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4896", + "filePath": "resourceFile4896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4897", + "filePath": "resourceFile4897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4898", + "filePath": "resourceFile4898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4899", + "filePath": "resourceFile4899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4900", + "filePath": "resourceFile4900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4901", + "filePath": "resourceFile4901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4902", + "filePath": "resourceFile4902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4903", + "filePath": "resourceFile4903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4904", + "filePath": "resourceFile4904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4905", + "filePath": "resourceFile4905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4906", + "filePath": "resourceFile4906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4907", + "filePath": "resourceFile4907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4908", + "filePath": "resourceFile4908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4909", + "filePath": "resourceFile4909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4910", + "filePath": "resourceFile4910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4911", + "filePath": "resourceFile4911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4912", + "filePath": "resourceFile4912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4913", + "filePath": "resourceFile4913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4914", + "filePath": "resourceFile4914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4915", + "filePath": "resourceFile4915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4916", + "filePath": "resourceFile4916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4917", + "filePath": "resourceFile4917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4918", + "filePath": "resourceFile4918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4919", + "filePath": "resourceFile4919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4920", + "filePath": "resourceFile4920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4921", + "filePath": "resourceFile4921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4922", + "filePath": "resourceFile4922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4923", + "filePath": "resourceFile4923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4924", + "filePath": "resourceFile4924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4925", + "filePath": "resourceFile4925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4926", + "filePath": "resourceFile4926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4927", + "filePath": "resourceFile4927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4928", + "filePath": "resourceFile4928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4929", + "filePath": "resourceFile4929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4930", + "filePath": "resourceFile4930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4931", + "filePath": "resourceFile4931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4932", + "filePath": "resourceFile4932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4933", + "filePath": "resourceFile4933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4934", + "filePath": "resourceFile4934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4935", + "filePath": "resourceFile4935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4936", + "filePath": "resourceFile4936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4937", + "filePath": "resourceFile4937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4938", + "filePath": "resourceFile4938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4939", + "filePath": "resourceFile4939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4940", + "filePath": "resourceFile4940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4941", + "filePath": "resourceFile4941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4942", + "filePath": "resourceFile4942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4943", + "filePath": "resourceFile4943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4944", + "filePath": "resourceFile4944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4945", + "filePath": "resourceFile4945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4946", + "filePath": "resourceFile4946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4947", + "filePath": "resourceFile4947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4948", + "filePath": "resourceFile4948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4949", + "filePath": "resourceFile4949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4950", + "filePath": "resourceFile4950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4951", + "filePath": "resourceFile4951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4952", + "filePath": "resourceFile4952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4953", + "filePath": "resourceFile4953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4954", + "filePath": "resourceFile4954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4955", + "filePath": "resourceFile4955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4956", + "filePath": "resourceFile4956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4957", + "filePath": "resourceFile4957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4958", + "filePath": "resourceFile4958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4959", + "filePath": "resourceFile4959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4960", + "filePath": "resourceFile4960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4961", + "filePath": "resourceFile4961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4962", + "filePath": "resourceFile4962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4963", + "filePath": "resourceFile4963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4964", + "filePath": "resourceFile4964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4965", + "filePath": "resourceFile4965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4966", + "filePath": "resourceFile4966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4967", + "filePath": "resourceFile4967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4968", + "filePath": "resourceFile4968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4969", + "filePath": "resourceFile4969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4970", + "filePath": "resourceFile4970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4971", + "filePath": "resourceFile4971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4972", + "filePath": "resourceFile4972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4973", + "filePath": "resourceFile4973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4974", + "filePath": "resourceFile4974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4975", + "filePath": "resourceFile4975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4976", + "filePath": "resourceFile4976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4977", + "filePath": "resourceFile4977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4978", + "filePath": "resourceFile4978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4979", + "filePath": "resourceFile4979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4980", + "filePath": "resourceFile4980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4981", + "filePath": "resourceFile4981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4982", + "filePath": "resourceFile4982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4983", + "filePath": "resourceFile4983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4984", + "filePath": "resourceFile4984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4985", + "filePath": "resourceFile4985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4986", + "filePath": "resourceFile4986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4987", + "filePath": "resourceFile4987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4988", + "filePath": "resourceFile4988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4989", + "filePath": "resourceFile4989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4990", + "filePath": "resourceFile4990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4991", + "filePath": "resourceFile4991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4992", + "filePath": "resourceFile4992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4993", + "filePath": "resourceFile4993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4994", + "filePath": "resourceFile4994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4995", + "filePath": "resourceFile4995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4996", + "filePath": "resourceFile4996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4997", + "filePath": "resourceFile4997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4998", + "filePath": "resourceFile4998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4999", + "filePath": "resourceFile4999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5000", + "filePath": "resourceFile5000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5001", + "filePath": "resourceFile5001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5002", + "filePath": "resourceFile5002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5003", + "filePath": "resourceFile5003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5004", + "filePath": "resourceFile5004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5005", + "filePath": "resourceFile5005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5006", + "filePath": "resourceFile5006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5007", + "filePath": "resourceFile5007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5008", + "filePath": "resourceFile5008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5009", + "filePath": "resourceFile5009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5010", + "filePath": "resourceFile5010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5011", + "filePath": "resourceFile5011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5012", + "filePath": "resourceFile5012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5013", + "filePath": "resourceFile5013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5014", + "filePath": "resourceFile5014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5015", + "filePath": "resourceFile5015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5016", + "filePath": "resourceFile5016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5017", + "filePath": "resourceFile5017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5018", + "filePath": "resourceFile5018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5019", + "filePath": "resourceFile5019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5020", + "filePath": "resourceFile5020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5021", + "filePath": "resourceFile5021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5022", + "filePath": "resourceFile5022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5023", + "filePath": "resourceFile5023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5024", + "filePath": "resourceFile5024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5025", + "filePath": "resourceFile5025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5026", + "filePath": "resourceFile5026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5027", + "filePath": "resourceFile5027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5028", + "filePath": "resourceFile5028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5029", + "filePath": "resourceFile5029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5030", + "filePath": "resourceFile5030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5031", + "filePath": "resourceFile5031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5032", + "filePath": "resourceFile5032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5033", + "filePath": "resourceFile5033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5034", + "filePath": "resourceFile5034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5035", + "filePath": "resourceFile5035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5036", + "filePath": "resourceFile5036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5037", + "filePath": "resourceFile5037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5038", + "filePath": "resourceFile5038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5039", + "filePath": "resourceFile5039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5040", + "filePath": "resourceFile5040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5041", + "filePath": "resourceFile5041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5042", + "filePath": "resourceFile5042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5043", + "filePath": "resourceFile5043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5044", + "filePath": "resourceFile5044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5045", + "filePath": "resourceFile5045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5046", + "filePath": "resourceFile5046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5047", + "filePath": "resourceFile5047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5048", + "filePath": "resourceFile5048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5049", + "filePath": "resourceFile5049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5050", + "filePath": "resourceFile5050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5051", + "filePath": "resourceFile5051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5052", + "filePath": "resourceFile5052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5053", + "filePath": "resourceFile5053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5054", + "filePath": "resourceFile5054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5055", + "filePath": "resourceFile5055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5056", + "filePath": "resourceFile5056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5057", + "filePath": "resourceFile5057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5058", + "filePath": "resourceFile5058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5059", + "filePath": "resourceFile5059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5060", + "filePath": "resourceFile5060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5061", + "filePath": "resourceFile5061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5062", + "filePath": "resourceFile5062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5063", + "filePath": "resourceFile5063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5064", + "filePath": "resourceFile5064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5065", + "filePath": "resourceFile5065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5066", + "filePath": "resourceFile5066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5067", + "filePath": "resourceFile5067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5068", + "filePath": "resourceFile5068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5069", + "filePath": "resourceFile5069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5070", + "filePath": "resourceFile5070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5071", + "filePath": "resourceFile5071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5072", + "filePath": "resourceFile5072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5073", + "filePath": "resourceFile5073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5074", + "filePath": "resourceFile5074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5075", + "filePath": "resourceFile5075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5076", + "filePath": "resourceFile5076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5077", + "filePath": "resourceFile5077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5078", + "filePath": "resourceFile5078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5079", + "filePath": "resourceFile5079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5080", + "filePath": "resourceFile5080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5081", + "filePath": "resourceFile5081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5082", + "filePath": "resourceFile5082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5083", + "filePath": "resourceFile5083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5084", + "filePath": "resourceFile5084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5085", + "filePath": "resourceFile5085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5086", + "filePath": "resourceFile5086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5087", + "filePath": "resourceFile5087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5088", + "filePath": "resourceFile5088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5089", + "filePath": "resourceFile5089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5090", + "filePath": "resourceFile5090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5091", + "filePath": "resourceFile5091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5092", + "filePath": "resourceFile5092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5093", + "filePath": "resourceFile5093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5094", + "filePath": "resourceFile5094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5095", + "filePath": "resourceFile5095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5096", + "filePath": "resourceFile5096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5097", + "filePath": "resourceFile5097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5098", + "filePath": "resourceFile5098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5099", + "filePath": "resourceFile5099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5100", + "filePath": "resourceFile5100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5101", + "filePath": "resourceFile5101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5102", + "filePath": "resourceFile5102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5103", + "filePath": "resourceFile5103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5104", + "filePath": "resourceFile5104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5105", + "filePath": "resourceFile5105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5106", + "filePath": "resourceFile5106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5107", + "filePath": "resourceFile5107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5108", + "filePath": "resourceFile5108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5109", + "filePath": "resourceFile5109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5110", + "filePath": "resourceFile5110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5111", + "filePath": "resourceFile5111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5112", + "filePath": "resourceFile5112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5113", + "filePath": "resourceFile5113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5114", + "filePath": "resourceFile5114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5115", + "filePath": "resourceFile5115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5116", + "filePath": "resourceFile5116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5117", + "filePath": "resourceFile5117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5118", + "filePath": "resourceFile5118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5119", + "filePath": "resourceFile5119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5120", + "filePath": "resourceFile5120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5121", + "filePath": "resourceFile5121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5122", + "filePath": "resourceFile5122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5123", + "filePath": "resourceFile5123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5124", + "filePath": "resourceFile5124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5125", + "filePath": "resourceFile5125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5126", + "filePath": "resourceFile5126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5127", + "filePath": "resourceFile5127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5128", + "filePath": "resourceFile5128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5129", + "filePath": "resourceFile5129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5130", + "filePath": "resourceFile5130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5131", + "filePath": "resourceFile5131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5132", + "filePath": "resourceFile5132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5133", + "filePath": "resourceFile5133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5134", + "filePath": "resourceFile5134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5135", + "filePath": "resourceFile5135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5136", + "filePath": "resourceFile5136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5137", + "filePath": "resourceFile5137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5138", + "filePath": "resourceFile5138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5139", + "filePath": "resourceFile5139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5140", + "filePath": "resourceFile5140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5141", + "filePath": "resourceFile5141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5142", + "filePath": "resourceFile5142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5143", + "filePath": "resourceFile5143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5144", + "filePath": "resourceFile5144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5145", + "filePath": "resourceFile5145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5146", + "filePath": "resourceFile5146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5147", + "filePath": "resourceFile5147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5148", + "filePath": "resourceFile5148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5149", + "filePath": "resourceFile5149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5150", + "filePath": "resourceFile5150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5151", + "filePath": "resourceFile5151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5152", + "filePath": "resourceFile5152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5153", + "filePath": "resourceFile5153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5154", + "filePath": "resourceFile5154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5155", + "filePath": "resourceFile5155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5156", + "filePath": "resourceFile5156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5157", + "filePath": "resourceFile5157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5158", + "filePath": "resourceFile5158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5159", + "filePath": "resourceFile5159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5160", + "filePath": "resourceFile5160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5161", + "filePath": "resourceFile5161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5162", + "filePath": "resourceFile5162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5163", + "filePath": "resourceFile5163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5164", + "filePath": "resourceFile5164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5165", + "filePath": "resourceFile5165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5166", + "filePath": "resourceFile5166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5167", + "filePath": "resourceFile5167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5168", + "filePath": "resourceFile5168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5169", + "filePath": "resourceFile5169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5170", + "filePath": "resourceFile5170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5171", + "filePath": "resourceFile5171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5172", + "filePath": "resourceFile5172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5173", + "filePath": "resourceFile5173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5174", + "filePath": "resourceFile5174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5175", + "filePath": "resourceFile5175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5176", + "filePath": "resourceFile5176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5177", + "filePath": "resourceFile5177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5178", + "filePath": "resourceFile5178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5179", + "filePath": "resourceFile5179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5180", + "filePath": "resourceFile5180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5181", + "filePath": "resourceFile5181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5182", + "filePath": "resourceFile5182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5183", + "filePath": "resourceFile5183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5184", + "filePath": "resourceFile5184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5185", + "filePath": "resourceFile5185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5186", + "filePath": "resourceFile5186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5187", + "filePath": "resourceFile5187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5188", + "filePath": "resourceFile5188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5189", + "filePath": "resourceFile5189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5190", + "filePath": "resourceFile5190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5191", + "filePath": "resourceFile5191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5192", + "filePath": "resourceFile5192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5193", + "filePath": "resourceFile5193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5194", + "filePath": "resourceFile5194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5195", + "filePath": "resourceFile5195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5196", + "filePath": "resourceFile5196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5197", + "filePath": "resourceFile5197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5198", + "filePath": "resourceFile5198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5199", + "filePath": "resourceFile5199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5200", + "filePath": "resourceFile5200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5201", + "filePath": "resourceFile5201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5202", + "filePath": "resourceFile5202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5203", + "filePath": "resourceFile5203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5204", + "filePath": "resourceFile5204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5205", + "filePath": "resourceFile5205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5206", + "filePath": "resourceFile5206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5207", + "filePath": "resourceFile5207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5208", + "filePath": "resourceFile5208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5209", + "filePath": "resourceFile5209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5210", + "filePath": "resourceFile5210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5211", + "filePath": "resourceFile5211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5212", + "filePath": "resourceFile5212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5213", + "filePath": "resourceFile5213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5214", + "filePath": "resourceFile5214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5215", + "filePath": "resourceFile5215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5216", + "filePath": "resourceFile5216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5217", + "filePath": "resourceFile5217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5218", + "filePath": "resourceFile5218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5219", + "filePath": "resourceFile5219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5220", + "filePath": "resourceFile5220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5221", + "filePath": "resourceFile5221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5222", + "filePath": "resourceFile5222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5223", + "filePath": "resourceFile5223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5224", + "filePath": "resourceFile5224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5225", + "filePath": "resourceFile5225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5226", + "filePath": "resourceFile5226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5227", + "filePath": "resourceFile5227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5228", + "filePath": "resourceFile5228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5229", + "filePath": "resourceFile5229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5230", + "filePath": "resourceFile5230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5231", + "filePath": "resourceFile5231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5232", + "filePath": "resourceFile5232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5233", + "filePath": "resourceFile5233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5234", + "filePath": "resourceFile5234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5235", + "filePath": "resourceFile5235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5236", + "filePath": "resourceFile5236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5237", + "filePath": "resourceFile5237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5238", + "filePath": "resourceFile5238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5239", + "filePath": "resourceFile5239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5240", + "filePath": "resourceFile5240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5241", + "filePath": "resourceFile5241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5242", + "filePath": "resourceFile5242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5243", + "filePath": "resourceFile5243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5244", + "filePath": "resourceFile5244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5245", + "filePath": "resourceFile5245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5246", + "filePath": "resourceFile5246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5247", + "filePath": "resourceFile5247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5248", + "filePath": "resourceFile5248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5249", + "filePath": "resourceFile5249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5250", + "filePath": "resourceFile5250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5251", + "filePath": "resourceFile5251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5252", + "filePath": "resourceFile5252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5253", + "filePath": "resourceFile5253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5254", + "filePath": "resourceFile5254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5255", + "filePath": "resourceFile5255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5256", + "filePath": "resourceFile5256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5257", + "filePath": "resourceFile5257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5258", + "filePath": "resourceFile5258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5259", + "filePath": "resourceFile5259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5260", + "filePath": "resourceFile5260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5261", + "filePath": "resourceFile5261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5262", + "filePath": "resourceFile5262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5263", + "filePath": "resourceFile5263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5264", + "filePath": "resourceFile5264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5265", + "filePath": "resourceFile5265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5266", + "filePath": "resourceFile5266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5267", + "filePath": "resourceFile5267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5268", + "filePath": "resourceFile5268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5269", + "filePath": "resourceFile5269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5270", + "filePath": "resourceFile5270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5271", + "filePath": "resourceFile5271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5272", + "filePath": "resourceFile5272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5273", + "filePath": "resourceFile5273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5274", + "filePath": "resourceFile5274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5275", + "filePath": "resourceFile5275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5276", + "filePath": "resourceFile5276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5277", + "filePath": "resourceFile5277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5278", + "filePath": "resourceFile5278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5279", + "filePath": "resourceFile5279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5280", + "filePath": "resourceFile5280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5281", + "filePath": "resourceFile5281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5282", + "filePath": "resourceFile5282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5283", + "filePath": "resourceFile5283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5284", + "filePath": "resourceFile5284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5285", + "filePath": "resourceFile5285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5286", + "filePath": "resourceFile5286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5287", + "filePath": "resourceFile5287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5288", + "filePath": "resourceFile5288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5289", + "filePath": "resourceFile5289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5290", + "filePath": "resourceFile5290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5291", + "filePath": "resourceFile5291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5292", + "filePath": "resourceFile5292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5293", + "filePath": "resourceFile5293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5294", + "filePath": "resourceFile5294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5295", + "filePath": "resourceFile5295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5296", + "filePath": "resourceFile5296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5297", + "filePath": "resourceFile5297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5298", + "filePath": "resourceFile5298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5299", + "filePath": "resourceFile5299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5300", + "filePath": "resourceFile5300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5301", + "filePath": "resourceFile5301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5302", + "filePath": "resourceFile5302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5303", + "filePath": "resourceFile5303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5304", + "filePath": "resourceFile5304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5305", + "filePath": "resourceFile5305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5306", + "filePath": "resourceFile5306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5307", + "filePath": "resourceFile5307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5308", + "filePath": "resourceFile5308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5309", + "filePath": "resourceFile5309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5310", + "filePath": "resourceFile5310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5311", + "filePath": "resourceFile5311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5312", + "filePath": "resourceFile5312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5313", + "filePath": "resourceFile5313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5314", + "filePath": "resourceFile5314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5315", + "filePath": "resourceFile5315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5316", + "filePath": "resourceFile5316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5317", + "filePath": "resourceFile5317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5318", + "filePath": "resourceFile5318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5319", + "filePath": "resourceFile5319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5320", + "filePath": "resourceFile5320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5321", + "filePath": "resourceFile5321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5322", + "filePath": "resourceFile5322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5323", + "filePath": "resourceFile5323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5324", + "filePath": "resourceFile5324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5325", + "filePath": "resourceFile5325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5326", + "filePath": "resourceFile5326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5327", + "filePath": "resourceFile5327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5328", + "filePath": "resourceFile5328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5329", + "filePath": "resourceFile5329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5330", + "filePath": "resourceFile5330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5331", + "filePath": "resourceFile5331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5332", + "filePath": "resourceFile5332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5333", + "filePath": "resourceFile5333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5334", + "filePath": "resourceFile5334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5335", + "filePath": "resourceFile5335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5336", + "filePath": "resourceFile5336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5337", + "filePath": "resourceFile5337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5338", + "filePath": "resourceFile5338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5339", + "filePath": "resourceFile5339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5340", + "filePath": "resourceFile5340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5341", + "filePath": "resourceFile5341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5342", + "filePath": "resourceFile5342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5343", + "filePath": "resourceFile5343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5344", + "filePath": "resourceFile5344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5345", + "filePath": "resourceFile5345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5346", + "filePath": "resourceFile5346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5347", + "filePath": "resourceFile5347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5348", + "filePath": "resourceFile5348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5349", + "filePath": "resourceFile5349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5350", + "filePath": "resourceFile5350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5351", + "filePath": "resourceFile5351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5352", + "filePath": "resourceFile5352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5353", + "filePath": "resourceFile5353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5354", + "filePath": "resourceFile5354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5355", + "filePath": "resourceFile5355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5356", + "filePath": "resourceFile5356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5357", + "filePath": "resourceFile5357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5358", + "filePath": "resourceFile5358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5359", + "filePath": "resourceFile5359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5360", + "filePath": "resourceFile5360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5361", + "filePath": "resourceFile5361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5362", + "filePath": "resourceFile5362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5363", + "filePath": "resourceFile5363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5364", + "filePath": "resourceFile5364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5365", + "filePath": "resourceFile5365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5366", + "filePath": "resourceFile5366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5367", + "filePath": "resourceFile5367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5368", + "filePath": "resourceFile5368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5369", + "filePath": "resourceFile5369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5370", + "filePath": "resourceFile5370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5371", + "filePath": "resourceFile5371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5372", + "filePath": "resourceFile5372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5373", + "filePath": "resourceFile5373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5374", + "filePath": "resourceFile5374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5375", + "filePath": "resourceFile5375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5376", + "filePath": "resourceFile5376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5377", + "filePath": "resourceFile5377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5378", + "filePath": "resourceFile5378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5379", + "filePath": "resourceFile5379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5380", + "filePath": "resourceFile5380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5381", + "filePath": "resourceFile5381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5382", + "filePath": "resourceFile5382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5383", + "filePath": "resourceFile5383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5384", + "filePath": "resourceFile5384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5385", + "filePath": "resourceFile5385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5386", + "filePath": "resourceFile5386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5387", + "filePath": "resourceFile5387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5388", + "filePath": "resourceFile5388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5389", + "filePath": "resourceFile5389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5390", + "filePath": "resourceFile5390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5391", + "filePath": "resourceFile5391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5392", + "filePath": "resourceFile5392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5393", + "filePath": "resourceFile5393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5394", + "filePath": "resourceFile5394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5395", + "filePath": "resourceFile5395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5396", + "filePath": "resourceFile5396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5397", + "filePath": "resourceFile5397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5398", + "filePath": "resourceFile5398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5399", + "filePath": "resourceFile5399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5400", + "filePath": "resourceFile5400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5401", + "filePath": "resourceFile5401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5402", + "filePath": "resourceFile5402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5403", + "filePath": "resourceFile5403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5404", + "filePath": "resourceFile5404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5405", + "filePath": "resourceFile5405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5406", + "filePath": "resourceFile5406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5407", + "filePath": "resourceFile5407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5408", + "filePath": "resourceFile5408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5409", + "filePath": "resourceFile5409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5410", + "filePath": "resourceFile5410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5411", + "filePath": "resourceFile5411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5412", + "filePath": "resourceFile5412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5413", + "filePath": "resourceFile5413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5414", + "filePath": "resourceFile5414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5415", + "filePath": "resourceFile5415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5416", + "filePath": "resourceFile5416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5417", + "filePath": "resourceFile5417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5418", + "filePath": "resourceFile5418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5419", + "filePath": "resourceFile5419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5420", + "filePath": "resourceFile5420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5421", + "filePath": "resourceFile5421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5422", + "filePath": "resourceFile5422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5423", + "filePath": "resourceFile5423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5424", + "filePath": "resourceFile5424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5425", + "filePath": "resourceFile5425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5426", + "filePath": "resourceFile5426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5427", + "filePath": "resourceFile5427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5428", + "filePath": "resourceFile5428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5429", + "filePath": "resourceFile5429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5430", + "filePath": "resourceFile5430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5431", + "filePath": "resourceFile5431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5432", + "filePath": "resourceFile5432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5433", + "filePath": "resourceFile5433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5434", + "filePath": "resourceFile5434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5435", + "filePath": "resourceFile5435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5436", + "filePath": "resourceFile5436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5437", + "filePath": "resourceFile5437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5438", + "filePath": "resourceFile5438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5439", + "filePath": "resourceFile5439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5440", + "filePath": "resourceFile5440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5441", + "filePath": "resourceFile5441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5442", + "filePath": "resourceFile5442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5443", + "filePath": "resourceFile5443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5444", + "filePath": "resourceFile5444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5445", + "filePath": "resourceFile5445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5446", + "filePath": "resourceFile5446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5447", + "filePath": "resourceFile5447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5448", + "filePath": "resourceFile5448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5449", + "filePath": "resourceFile5449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5450", + "filePath": "resourceFile5450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5451", + "filePath": "resourceFile5451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5452", + "filePath": "resourceFile5452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5453", + "filePath": "resourceFile5453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5454", + "filePath": "resourceFile5454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5455", + "filePath": "resourceFile5455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5456", + "filePath": "resourceFile5456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5457", + "filePath": "resourceFile5457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5458", + "filePath": "resourceFile5458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5459", + "filePath": "resourceFile5459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5460", + "filePath": "resourceFile5460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5461", + "filePath": "resourceFile5461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5462", + "filePath": "resourceFile5462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5463", + "filePath": "resourceFile5463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5464", + "filePath": "resourceFile5464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5465", + "filePath": "resourceFile5465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5466", + "filePath": "resourceFile5466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5467", + "filePath": "resourceFile5467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5468", + "filePath": "resourceFile5468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5469", + "filePath": "resourceFile5469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5470", + "filePath": "resourceFile5470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5471", + "filePath": "resourceFile5471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5472", + "filePath": "resourceFile5472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5473", + "filePath": "resourceFile5473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5474", + "filePath": "resourceFile5474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5475", + "filePath": "resourceFile5475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5476", + "filePath": "resourceFile5476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5477", + "filePath": "resourceFile5477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5478", + "filePath": "resourceFile5478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5479", + "filePath": "resourceFile5479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5480", + "filePath": "resourceFile5480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5481", + "filePath": "resourceFile5481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5482", + "filePath": "resourceFile5482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5483", + "filePath": "resourceFile5483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5484", + "filePath": "resourceFile5484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5485", + "filePath": "resourceFile5485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5486", + "filePath": "resourceFile5486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5487", + "filePath": "resourceFile5487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5488", + "filePath": "resourceFile5488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5489", + "filePath": "resourceFile5489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5490", + "filePath": "resourceFile5490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5491", + "filePath": "resourceFile5491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5492", + "filePath": "resourceFile5492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5493", + "filePath": "resourceFile5493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5494", + "filePath": "resourceFile5494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5495", + "filePath": "resourceFile5495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5496", + "filePath": "resourceFile5496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5497", + "filePath": "resourceFile5497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5498", + "filePath": "resourceFile5498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5499", + "filePath": "resourceFile5499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5500", + "filePath": "resourceFile5500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5501", + "filePath": "resourceFile5501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5502", + "filePath": "resourceFile5502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5503", + "filePath": "resourceFile5503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5504", + "filePath": "resourceFile5504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5505", + "filePath": "resourceFile5505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5506", + "filePath": "resourceFile5506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5507", + "filePath": "resourceFile5507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5508", + "filePath": "resourceFile5508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5509", + "filePath": "resourceFile5509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5510", + "filePath": "resourceFile5510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5511", + "filePath": "resourceFile5511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5512", + "filePath": "resourceFile5512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5513", + "filePath": "resourceFile5513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5514", + "filePath": "resourceFile5514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5515", + "filePath": "resourceFile5515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5516", + "filePath": "resourceFile5516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5517", + "filePath": "resourceFile5517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5518", + "filePath": "resourceFile5518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5519", + "filePath": "resourceFile5519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5520", + "filePath": "resourceFile5520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5521", + "filePath": "resourceFile5521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5522", + "filePath": "resourceFile5522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5523", + "filePath": "resourceFile5523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5524", + "filePath": "resourceFile5524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5525", + "filePath": "resourceFile5525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5526", + "filePath": "resourceFile5526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5527", + "filePath": "resourceFile5527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5528", + "filePath": "resourceFile5528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5529", + "filePath": "resourceFile5529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5530", + "filePath": "resourceFile5530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5531", + "filePath": "resourceFile5531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5532", + "filePath": "resourceFile5532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5533", + "filePath": "resourceFile5533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5534", + "filePath": "resourceFile5534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5535", + "filePath": "resourceFile5535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5536", + "filePath": "resourceFile5536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5537", + "filePath": "resourceFile5537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5538", + "filePath": "resourceFile5538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5539", + "filePath": "resourceFile5539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5540", + "filePath": "resourceFile5540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5541", + "filePath": "resourceFile5541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5542", + "filePath": "resourceFile5542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5543", + "filePath": "resourceFile5543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5544", + "filePath": "resourceFile5544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5545", + "filePath": "resourceFile5545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5546", + "filePath": "resourceFile5546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5547", + "filePath": "resourceFile5547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5548", + "filePath": "resourceFile5548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5549", + "filePath": "resourceFile5549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5550", + "filePath": "resourceFile5550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5551", + "filePath": "resourceFile5551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5552", + "filePath": "resourceFile5552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5553", + "filePath": "resourceFile5553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5554", + "filePath": "resourceFile5554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5555", + "filePath": "resourceFile5555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5556", + "filePath": "resourceFile5556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5557", + "filePath": "resourceFile5557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5558", + "filePath": "resourceFile5558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5559", + "filePath": "resourceFile5559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5560", + "filePath": "resourceFile5560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5561", + "filePath": "resourceFile5561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5562", + "filePath": "resourceFile5562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5563", + "filePath": "resourceFile5563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5564", + "filePath": "resourceFile5564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5565", + "filePath": "resourceFile5565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5566", + "filePath": "resourceFile5566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5567", + "filePath": "resourceFile5567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5568", + "filePath": "resourceFile5568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5569", + "filePath": "resourceFile5569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5570", + "filePath": "resourceFile5570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5571", + "filePath": "resourceFile5571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5572", + "filePath": "resourceFile5572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5573", + "filePath": "resourceFile5573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5574", + "filePath": "resourceFile5574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5575", + "filePath": "resourceFile5575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5576", + "filePath": "resourceFile5576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5577", + "filePath": "resourceFile5577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5578", + "filePath": "resourceFile5578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5579", + "filePath": "resourceFile5579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5580", + "filePath": "resourceFile5580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5581", + "filePath": "resourceFile5581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5582", + "filePath": "resourceFile5582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5583", + "filePath": "resourceFile5583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5584", + "filePath": "resourceFile5584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5585", + "filePath": "resourceFile5585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5586", + "filePath": "resourceFile5586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5587", + "filePath": "resourceFile5587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5588", + "filePath": "resourceFile5588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5589", + "filePath": "resourceFile5589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5590", + "filePath": "resourceFile5590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5591", + "filePath": "resourceFile5591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5592", + "filePath": "resourceFile5592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5593", + "filePath": "resourceFile5593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5594", + "filePath": "resourceFile5594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5595", + "filePath": "resourceFile5595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5596", + "filePath": "resourceFile5596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5597", + "filePath": "resourceFile5597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5598", + "filePath": "resourceFile5598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5599", + "filePath": "resourceFile5599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5600", + "filePath": "resourceFile5600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5601", + "filePath": "resourceFile5601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5602", + "filePath": "resourceFile5602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5603", + "filePath": "resourceFile5603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5604", + "filePath": "resourceFile5604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5605", + "filePath": "resourceFile5605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5606", + "filePath": "resourceFile5606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5607", + "filePath": "resourceFile5607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5608", + "filePath": "resourceFile5608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5609", + "filePath": "resourceFile5609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5610", + "filePath": "resourceFile5610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5611", + "filePath": "resourceFile5611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5612", + "filePath": "resourceFile5612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5613", + "filePath": "resourceFile5613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5614", + "filePath": "resourceFile5614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5615", + "filePath": "resourceFile5615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5616", + "filePath": "resourceFile5616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5617", + "filePath": "resourceFile5617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5618", + "filePath": "resourceFile5618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5619", + "filePath": "resourceFile5619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5620", + "filePath": "resourceFile5620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5621", + "filePath": "resourceFile5621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5622", + "filePath": "resourceFile5622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5623", + "filePath": "resourceFile5623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5624", + "filePath": "resourceFile5624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5625", + "filePath": "resourceFile5625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5626", + "filePath": "resourceFile5626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5627", + "filePath": "resourceFile5627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5628", + "filePath": "resourceFile5628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5629", + "filePath": "resourceFile5629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5630", + "filePath": "resourceFile5630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5631", + "filePath": "resourceFile5631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5632", + "filePath": "resourceFile5632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5633", + "filePath": "resourceFile5633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5634", + "filePath": "resourceFile5634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5635", + "filePath": "resourceFile5635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5636", + "filePath": "resourceFile5636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5637", + "filePath": "resourceFile5637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5638", + "filePath": "resourceFile5638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5639", + "filePath": "resourceFile5639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5640", + "filePath": "resourceFile5640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5641", + "filePath": "resourceFile5641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5642", + "filePath": "resourceFile5642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5643", + "filePath": "resourceFile5643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5644", + "filePath": "resourceFile5644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5645", + "filePath": "resourceFile5645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5646", + "filePath": "resourceFile5646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5647", + "filePath": "resourceFile5647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5648", + "filePath": "resourceFile5648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5649", + "filePath": "resourceFile5649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5650", + "filePath": "resourceFile5650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5651", + "filePath": "resourceFile5651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5652", + "filePath": "resourceFile5652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5653", + "filePath": "resourceFile5653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5654", + "filePath": "resourceFile5654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5655", + "filePath": "resourceFile5655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5656", + "filePath": "resourceFile5656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5657", + "filePath": "resourceFile5657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5658", + "filePath": "resourceFile5658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5659", + "filePath": "resourceFile5659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5660", + "filePath": "resourceFile5660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5661", + "filePath": "resourceFile5661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5662", + "filePath": "resourceFile5662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5663", + "filePath": "resourceFile5663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5664", + "filePath": "resourceFile5664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5665", + "filePath": "resourceFile5665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5666", + "filePath": "resourceFile5666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5667", + "filePath": "resourceFile5667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5668", + "filePath": "resourceFile5668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5669", + "filePath": "resourceFile5669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5670", + "filePath": "resourceFile5670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5671", + "filePath": "resourceFile5671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5672", + "filePath": "resourceFile5672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5673", + "filePath": "resourceFile5673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5674", + "filePath": "resourceFile5674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5675", + "filePath": "resourceFile5675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5676", + "filePath": "resourceFile5676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5677", + "filePath": "resourceFile5677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5678", + "filePath": "resourceFile5678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5679", + "filePath": "resourceFile5679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5680", + "filePath": "resourceFile5680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5681", + "filePath": "resourceFile5681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5682", + "filePath": "resourceFile5682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5683", + "filePath": "resourceFile5683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5684", + "filePath": "resourceFile5684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5685", + "filePath": "resourceFile5685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5686", + "filePath": "resourceFile5686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5687", + "filePath": "resourceFile5687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5688", + "filePath": "resourceFile5688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5689", + "filePath": "resourceFile5689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5690", + "filePath": "resourceFile5690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5691", + "filePath": "resourceFile5691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5692", + "filePath": "resourceFile5692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5693", + "filePath": "resourceFile5693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5694", + "filePath": "resourceFile5694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5695", + "filePath": "resourceFile5695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5696", + "filePath": "resourceFile5696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5697", + "filePath": "resourceFile5697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5698", + "filePath": "resourceFile5698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5699", + "filePath": "resourceFile5699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5700", + "filePath": "resourceFile5700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5701", + "filePath": "resourceFile5701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5702", + "filePath": "resourceFile5702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5703", + "filePath": "resourceFile5703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5704", + "filePath": "resourceFile5704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5705", + "filePath": "resourceFile5705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5706", + "filePath": "resourceFile5706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5707", + "filePath": "resourceFile5707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5708", + "filePath": "resourceFile5708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5709", + "filePath": "resourceFile5709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5710", + "filePath": "resourceFile5710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5711", + "filePath": "resourceFile5711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5712", + "filePath": "resourceFile5712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5713", + "filePath": "resourceFile5713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5714", + "filePath": "resourceFile5714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5715", + "filePath": "resourceFile5715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5716", + "filePath": "resourceFile5716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5717", + "filePath": "resourceFile5717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5718", + "filePath": "resourceFile5718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5719", + "filePath": "resourceFile5719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5720", + "filePath": "resourceFile5720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5721", + "filePath": "resourceFile5721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5722", + "filePath": "resourceFile5722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5723", + "filePath": "resourceFile5723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5724", + "filePath": "resourceFile5724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5725", + "filePath": "resourceFile5725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5726", + "filePath": "resourceFile5726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5727", + "filePath": "resourceFile5727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5728", + "filePath": "resourceFile5728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5729", + "filePath": "resourceFile5729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5730", + "filePath": "resourceFile5730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5731", + "filePath": "resourceFile5731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5732", + "filePath": "resourceFile5732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5733", + "filePath": "resourceFile5733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5734", + "filePath": "resourceFile5734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5735", + "filePath": "resourceFile5735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5736", + "filePath": "resourceFile5736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5737", + "filePath": "resourceFile5737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5738", + "filePath": "resourceFile5738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5739", + "filePath": "resourceFile5739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5740", + "filePath": "resourceFile5740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5741", + "filePath": "resourceFile5741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5742", + "filePath": "resourceFile5742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5743", + "filePath": "resourceFile5743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5744", + "filePath": "resourceFile5744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5745", + "filePath": "resourceFile5745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5746", + "filePath": "resourceFile5746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5747", + "filePath": "resourceFile5747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5748", + "filePath": "resourceFile5748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5749", + "filePath": "resourceFile5749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5750", + "filePath": "resourceFile5750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5751", + "filePath": "resourceFile5751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5752", + "filePath": "resourceFile5752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5753", + "filePath": "resourceFile5753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5754", + "filePath": "resourceFile5754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5755", + "filePath": "resourceFile5755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5756", + "filePath": "resourceFile5756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5757", + "filePath": "resourceFile5757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5758", + "filePath": "resourceFile5758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5759", + "filePath": "resourceFile5759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5760", + "filePath": "resourceFile5760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5761", + "filePath": "resourceFile5761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5762", + "filePath": "resourceFile5762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5763", + "filePath": "resourceFile5763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5764", + "filePath": "resourceFile5764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5765", + "filePath": "resourceFile5765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5766", + "filePath": "resourceFile5766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5767", + "filePath": "resourceFile5767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5768", + "filePath": "resourceFile5768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5769", + "filePath": "resourceFile5769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5770", + "filePath": "resourceFile5770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5771", + "filePath": "resourceFile5771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5772", + "filePath": "resourceFile5772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5773", + "filePath": "resourceFile5773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5774", + "filePath": "resourceFile5774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5775", + "filePath": "resourceFile5775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5776", + "filePath": "resourceFile5776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5777", + "filePath": "resourceFile5777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5778", + "filePath": "resourceFile5778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5779", + "filePath": "resourceFile5779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5780", + "filePath": "resourceFile5780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5781", + "filePath": "resourceFile5781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5782", + "filePath": "resourceFile5782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5783", + "filePath": "resourceFile5783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5784", + "filePath": "resourceFile5784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5785", + "filePath": "resourceFile5785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5786", + "filePath": "resourceFile5786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5787", + "filePath": "resourceFile5787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5788", + "filePath": "resourceFile5788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5789", + "filePath": "resourceFile5789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5790", + "filePath": "resourceFile5790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5791", + "filePath": "resourceFile5791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5792", + "filePath": "resourceFile5792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5793", + "filePath": "resourceFile5793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5794", + "filePath": "resourceFile5794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5795", + "filePath": "resourceFile5795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5796", + "filePath": "resourceFile5796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5797", + "filePath": "resourceFile5797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5798", + "filePath": "resourceFile5798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5799", + "filePath": "resourceFile5799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5800", + "filePath": "resourceFile5800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5801", + "filePath": "resourceFile5801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5802", + "filePath": "resourceFile5802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5803", + "filePath": "resourceFile5803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5804", + "filePath": "resourceFile5804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5805", + "filePath": "resourceFile5805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5806", + "filePath": "resourceFile5806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5807", + "filePath": "resourceFile5807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5808", + "filePath": "resourceFile5808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5809", + "filePath": "resourceFile5809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5810", + "filePath": "resourceFile5810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5811", + "filePath": "resourceFile5811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5812", + "filePath": "resourceFile5812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5813", + "filePath": "resourceFile5813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5814", + "filePath": "resourceFile5814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5815", + "filePath": "resourceFile5815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5816", + "filePath": "resourceFile5816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5817", + "filePath": "resourceFile5817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5818", + "filePath": "resourceFile5818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5819", + "filePath": "resourceFile5819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5820", + "filePath": "resourceFile5820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5821", + "filePath": "resourceFile5821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5822", + "filePath": "resourceFile5822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5823", + "filePath": "resourceFile5823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5824", + "filePath": "resourceFile5824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5825", + "filePath": "resourceFile5825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5826", + "filePath": "resourceFile5826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5827", + "filePath": "resourceFile5827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5828", + "filePath": "resourceFile5828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5829", + "filePath": "resourceFile5829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5830", + "filePath": "resourceFile5830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5831", + "filePath": "resourceFile5831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5832", + "filePath": "resourceFile5832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5833", + "filePath": "resourceFile5833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5834", + "filePath": "resourceFile5834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5835", + "filePath": "resourceFile5835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5836", + "filePath": "resourceFile5836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5837", + "filePath": "resourceFile5837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5838", + "filePath": "resourceFile5838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5839", + "filePath": "resourceFile5839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5840", + "filePath": "resourceFile5840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5841", + "filePath": "resourceFile5841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5842", + "filePath": "resourceFile5842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5843", + "filePath": "resourceFile5843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5844", + "filePath": "resourceFile5844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5845", + "filePath": "resourceFile5845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5846", + "filePath": "resourceFile5846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5847", + "filePath": "resourceFile5847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5848", + "filePath": "resourceFile5848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5849", + "filePath": "resourceFile5849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5850", + "filePath": "resourceFile5850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5851", + "filePath": "resourceFile5851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5852", + "filePath": "resourceFile5852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5853", + "filePath": "resourceFile5853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5854", + "filePath": "resourceFile5854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5855", + "filePath": "resourceFile5855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5856", + "filePath": "resourceFile5856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5857", + "filePath": "resourceFile5857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5858", + "filePath": "resourceFile5858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5859", + "filePath": "resourceFile5859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5860", + "filePath": "resourceFile5860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5861", + "filePath": "resourceFile5861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5862", + "filePath": "resourceFile5862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5863", + "filePath": "resourceFile5863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5864", + "filePath": "resourceFile5864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5865", + "filePath": "resourceFile5865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5866", + "filePath": "resourceFile5866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5867", + "filePath": "resourceFile5867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5868", + "filePath": "resourceFile5868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5869", + "filePath": "resourceFile5869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5870", + "filePath": "resourceFile5870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5871", + "filePath": "resourceFile5871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5872", + "filePath": "resourceFile5872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5873", + "filePath": "resourceFile5873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5874", + "filePath": "resourceFile5874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5875", + "filePath": "resourceFile5875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5876", + "filePath": "resourceFile5876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5877", + "filePath": "resourceFile5877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5878", + "filePath": "resourceFile5878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5879", + "filePath": "resourceFile5879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5880", + "filePath": "resourceFile5880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5881", + "filePath": "resourceFile5881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5882", + "filePath": "resourceFile5882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5883", + "filePath": "resourceFile5883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5884", + "filePath": "resourceFile5884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5885", + "filePath": "resourceFile5885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5886", + "filePath": "resourceFile5886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5887", + "filePath": "resourceFile5887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5888", + "filePath": "resourceFile5888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5889", + "filePath": "resourceFile5889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5890", + "filePath": "resourceFile5890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5891", + "filePath": "resourceFile5891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5892", + "filePath": "resourceFile5892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5893", + "filePath": "resourceFile5893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5894", + "filePath": "resourceFile5894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5895", + "filePath": "resourceFile5895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5896", + "filePath": "resourceFile5896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5897", + "filePath": "resourceFile5897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5898", + "filePath": "resourceFile5898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5899", + "filePath": "resourceFile5899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5900", + "filePath": "resourceFile5900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5901", + "filePath": "resourceFile5901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5902", + "filePath": "resourceFile5902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5903", + "filePath": "resourceFile5903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5904", + "filePath": "resourceFile5904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5905", + "filePath": "resourceFile5905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5906", + "filePath": "resourceFile5906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5907", + "filePath": "resourceFile5907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5908", + "filePath": "resourceFile5908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5909", + "filePath": "resourceFile5909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5910", + "filePath": "resourceFile5910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5911", + "filePath": "resourceFile5911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5912", + "filePath": "resourceFile5912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5913", + "filePath": "resourceFile5913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5914", + "filePath": "resourceFile5914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5915", + "filePath": "resourceFile5915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5916", + "filePath": "resourceFile5916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5917", + "filePath": "resourceFile5917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5918", + "filePath": "resourceFile5918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5919", + "filePath": "resourceFile5919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5920", + "filePath": "resourceFile5920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5921", + "filePath": "resourceFile5921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5922", + "filePath": "resourceFile5922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5923", + "filePath": "resourceFile5923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5924", + "filePath": "resourceFile5924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5925", + "filePath": "resourceFile5925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5926", + "filePath": "resourceFile5926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5927", + "filePath": "resourceFile5927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5928", + "filePath": "resourceFile5928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5929", + "filePath": "resourceFile5929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5930", + "filePath": "resourceFile5930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5931", + "filePath": "resourceFile5931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5932", + "filePath": "resourceFile5932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5933", + "filePath": "resourceFile5933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5934", + "filePath": "resourceFile5934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5935", + "filePath": "resourceFile5935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5936", + "filePath": "resourceFile5936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5937", + "filePath": "resourceFile5937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5938", + "filePath": "resourceFile5938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5939", + "filePath": "resourceFile5939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5940", + "filePath": "resourceFile5940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5941", + "filePath": "resourceFile5941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5942", + "filePath": "resourceFile5942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5943", + "filePath": "resourceFile5943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5944", + "filePath": "resourceFile5944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5945", + "filePath": "resourceFile5945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5946", + "filePath": "resourceFile5946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5947", + "filePath": "resourceFile5947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5948", + "filePath": "resourceFile5948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5949", + "filePath": "resourceFile5949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5950", + "filePath": "resourceFile5950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5951", + "filePath": "resourceFile5951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5952", + "filePath": "resourceFile5952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5953", + "filePath": "resourceFile5953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5954", + "filePath": "resourceFile5954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5955", + "filePath": "resourceFile5955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5956", + "filePath": "resourceFile5956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5957", + "filePath": "resourceFile5957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5958", + "filePath": "resourceFile5958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5959", + "filePath": "resourceFile5959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5960", + "filePath": "resourceFile5960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5961", + "filePath": "resourceFile5961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5962", + "filePath": "resourceFile5962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5963", + "filePath": "resourceFile5963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5964", + "filePath": "resourceFile5964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5965", + "filePath": "resourceFile5965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5966", + "filePath": "resourceFile5966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5967", + "filePath": "resourceFile5967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5968", + "filePath": "resourceFile5968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5969", + "filePath": "resourceFile5969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5970", + "filePath": "resourceFile5970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5971", + "filePath": "resourceFile5971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5972", + "filePath": "resourceFile5972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5973", + "filePath": "resourceFile5973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5974", + "filePath": "resourceFile5974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5975", + "filePath": "resourceFile5975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5976", + "filePath": "resourceFile5976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5977", + "filePath": "resourceFile5977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5978", + "filePath": "resourceFile5978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5979", + "filePath": "resourceFile5979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5980", + "filePath": "resourceFile5980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5981", + "filePath": "resourceFile5981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5982", + "filePath": "resourceFile5982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5983", + "filePath": "resourceFile5983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5984", + "filePath": "resourceFile5984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5985", + "filePath": "resourceFile5985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5986", + "filePath": "resourceFile5986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5987", + "filePath": "resourceFile5987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5988", + "filePath": "resourceFile5988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5989", + "filePath": "resourceFile5989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5990", + "filePath": "resourceFile5990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5991", + "filePath": "resourceFile5991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5992", + "filePath": "resourceFile5992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5993", + "filePath": "resourceFile5993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5994", + "filePath": "resourceFile5994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5995", + "filePath": "resourceFile5995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5996", + "filePath": "resourceFile5996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5997", + "filePath": "resourceFile5997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5998", + "filePath": "resourceFile5998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5999", + "filePath": "resourceFile5999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6000", + "filePath": "resourceFile6000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6001", + "filePath": "resourceFile6001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6002", + "filePath": "resourceFile6002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6003", + "filePath": "resourceFile6003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6004", + "filePath": "resourceFile6004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6005", + "filePath": "resourceFile6005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6006", + "filePath": "resourceFile6006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6007", + "filePath": "resourceFile6007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6008", + "filePath": "resourceFile6008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6009", + "filePath": "resourceFile6009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6010", + "filePath": "resourceFile6010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6011", + "filePath": "resourceFile6011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6012", + "filePath": "resourceFile6012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6013", + "filePath": "resourceFile6013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6014", + "filePath": "resourceFile6014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6015", + "filePath": "resourceFile6015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6016", + "filePath": "resourceFile6016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6017", + "filePath": "resourceFile6017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6018", + "filePath": "resourceFile6018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6019", + "filePath": "resourceFile6019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6020", + "filePath": "resourceFile6020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6021", + "filePath": "resourceFile6021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6022", + "filePath": "resourceFile6022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6023", + "filePath": "resourceFile6023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6024", + "filePath": "resourceFile6024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6025", + "filePath": "resourceFile6025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6026", + "filePath": "resourceFile6026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6027", + "filePath": "resourceFile6027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6028", + "filePath": "resourceFile6028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6029", + "filePath": "resourceFile6029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6030", + "filePath": "resourceFile6030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6031", + "filePath": "resourceFile6031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6032", + "filePath": "resourceFile6032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6033", + "filePath": "resourceFile6033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6034", + "filePath": "resourceFile6034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6035", + "filePath": "resourceFile6035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6036", + "filePath": "resourceFile6036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6037", + "filePath": "resourceFile6037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6038", + "filePath": "resourceFile6038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6039", + "filePath": "resourceFile6039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6040", + "filePath": "resourceFile6040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6041", + "filePath": "resourceFile6041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6042", + "filePath": "resourceFile6042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6043", + "filePath": "resourceFile6043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6044", + "filePath": "resourceFile6044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6045", + "filePath": "resourceFile6045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6046", + "filePath": "resourceFile6046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6047", + "filePath": "resourceFile6047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6048", + "filePath": "resourceFile6048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6049", + "filePath": "resourceFile6049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6050", + "filePath": "resourceFile6050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6051", + "filePath": "resourceFile6051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6052", + "filePath": "resourceFile6052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6053", + "filePath": "resourceFile6053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6054", + "filePath": "resourceFile6054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6055", + "filePath": "resourceFile6055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6056", + "filePath": "resourceFile6056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6057", + "filePath": "resourceFile6057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6058", + "filePath": "resourceFile6058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6059", + "filePath": "resourceFile6059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6060", + "filePath": "resourceFile6060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6061", + "filePath": "resourceFile6061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6062", + "filePath": "resourceFile6062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6063", + "filePath": "resourceFile6063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6064", + "filePath": "resourceFile6064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6065", + "filePath": "resourceFile6065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6066", + "filePath": "resourceFile6066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6067", + "filePath": "resourceFile6067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6068", + "filePath": "resourceFile6068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6069", + "filePath": "resourceFile6069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6070", + "filePath": "resourceFile6070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6071", + "filePath": "resourceFile6071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6072", + "filePath": "resourceFile6072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6073", + "filePath": "resourceFile6073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6074", + "filePath": "resourceFile6074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6075", + "filePath": "resourceFile6075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6076", + "filePath": "resourceFile6076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6077", + "filePath": "resourceFile6077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6078", + "filePath": "resourceFile6078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6079", + "filePath": "resourceFile6079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6080", + "filePath": "resourceFile6080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6081", + "filePath": "resourceFile6081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6082", + "filePath": "resourceFile6082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6083", + "filePath": "resourceFile6083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6084", + "filePath": "resourceFile6084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6085", + "filePath": "resourceFile6085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6086", + "filePath": "resourceFile6086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6087", + "filePath": "resourceFile6087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6088", + "filePath": "resourceFile6088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6089", + "filePath": "resourceFile6089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6090", + "filePath": "resourceFile6090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6091", + "filePath": "resourceFile6091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6092", + "filePath": "resourceFile6092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6093", + "filePath": "resourceFile6093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6094", + "filePath": "resourceFile6094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6095", + "filePath": "resourceFile6095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6096", + "filePath": "resourceFile6096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6097", + "filePath": "resourceFile6097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6098", + "filePath": "resourceFile6098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6099", + "filePath": "resourceFile6099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6100", + "filePath": "resourceFile6100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6101", + "filePath": "resourceFile6101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6102", + "filePath": "resourceFile6102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6103", + "filePath": "resourceFile6103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6104", + "filePath": "resourceFile6104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6105", + "filePath": "resourceFile6105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6106", + "filePath": "resourceFile6106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6107", + "filePath": "resourceFile6107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6108", + "filePath": "resourceFile6108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6109", + "filePath": "resourceFile6109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6110", + "filePath": "resourceFile6110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6111", + "filePath": "resourceFile6111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6112", + "filePath": "resourceFile6112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6113", + "filePath": "resourceFile6113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6114", + "filePath": "resourceFile6114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6115", + "filePath": "resourceFile6115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6116", + "filePath": "resourceFile6116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6117", + "filePath": "resourceFile6117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6118", + "filePath": "resourceFile6118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6119", + "filePath": "resourceFile6119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6120", + "filePath": "resourceFile6120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6121", + "filePath": "resourceFile6121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6122", + "filePath": "resourceFile6122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6123", + "filePath": "resourceFile6123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6124", + "filePath": "resourceFile6124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6125", + "filePath": "resourceFile6125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6126", + "filePath": "resourceFile6126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6127", + "filePath": "resourceFile6127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6128", + "filePath": "resourceFile6128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6129", + "filePath": "resourceFile6129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6130", + "filePath": "resourceFile6130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6131", + "filePath": "resourceFile6131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6132", + "filePath": "resourceFile6132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6133", + "filePath": "resourceFile6133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6134", + "filePath": "resourceFile6134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6135", + "filePath": "resourceFile6135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6136", + "filePath": "resourceFile6136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6137", + "filePath": "resourceFile6137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6138", + "filePath": "resourceFile6138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6139", + "filePath": "resourceFile6139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6140", + "filePath": "resourceFile6140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6141", + "filePath": "resourceFile6141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6142", + "filePath": "resourceFile6142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6143", + "filePath": "resourceFile6143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6144", + "filePath": "resourceFile6144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6145", + "filePath": "resourceFile6145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6146", + "filePath": "resourceFile6146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6147", + "filePath": "resourceFile6147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6148", + "filePath": "resourceFile6148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6149", + "filePath": "resourceFile6149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6150", + "filePath": "resourceFile6150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6151", + "filePath": "resourceFile6151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6152", + "filePath": "resourceFile6152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6153", + "filePath": "resourceFile6153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6154", + "filePath": "resourceFile6154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6155", + "filePath": "resourceFile6155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6156", + "filePath": "resourceFile6156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6157", + "filePath": "resourceFile6157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6158", + "filePath": "resourceFile6158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6159", + "filePath": "resourceFile6159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6160", + "filePath": "resourceFile6160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6161", + "filePath": "resourceFile6161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6162", + "filePath": "resourceFile6162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6163", + "filePath": "resourceFile6163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6164", + "filePath": "resourceFile6164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6165", + "filePath": "resourceFile6165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6166", + "filePath": "resourceFile6166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6167", + "filePath": "resourceFile6167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6168", + "filePath": "resourceFile6168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6169", + "filePath": "resourceFile6169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6170", + "filePath": "resourceFile6170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6171", + "filePath": "resourceFile6171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6172", + "filePath": "resourceFile6172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6173", + "filePath": "resourceFile6173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6174", + "filePath": "resourceFile6174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6175", + "filePath": "resourceFile6175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6176", + "filePath": "resourceFile6176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6177", + "filePath": "resourceFile6177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6178", + "filePath": "resourceFile6178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6179", + "filePath": "resourceFile6179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6180", + "filePath": "resourceFile6180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6181", + "filePath": "resourceFile6181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6182", + "filePath": "resourceFile6182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6183", + "filePath": "resourceFile6183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6184", + "filePath": "resourceFile6184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6185", + "filePath": "resourceFile6185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6186", + "filePath": "resourceFile6186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6187", + "filePath": "resourceFile6187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6188", + "filePath": "resourceFile6188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6189", + "filePath": "resourceFile6189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6190", + "filePath": "resourceFile6190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6191", + "filePath": "resourceFile6191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6192", + "filePath": "resourceFile6192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6193", + "filePath": "resourceFile6193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6194", + "filePath": "resourceFile6194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6195", + "filePath": "resourceFile6195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6196", + "filePath": "resourceFile6196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6197", + "filePath": "resourceFile6197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6198", + "filePath": "resourceFile6198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6199", + "filePath": "resourceFile6199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6200", + "filePath": "resourceFile6200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6201", + "filePath": "resourceFile6201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6202", + "filePath": "resourceFile6202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6203", + "filePath": "resourceFile6203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6204", + "filePath": "resourceFile6204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6205", + "filePath": "resourceFile6205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6206", + "filePath": "resourceFile6206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6207", + "filePath": "resourceFile6207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6208", + "filePath": "resourceFile6208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6209", + "filePath": "resourceFile6209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6210", + "filePath": "resourceFile6210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6211", + "filePath": "resourceFile6211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6212", + "filePath": "resourceFile6212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6213", + "filePath": "resourceFile6213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6214", + "filePath": "resourceFile6214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6215", + "filePath": "resourceFile6215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6216", + "filePath": "resourceFile6216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6217", + "filePath": "resourceFile6217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6218", + "filePath": "resourceFile6218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6219", + "filePath": "resourceFile6219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6220", + "filePath": "resourceFile6220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6221", + "filePath": "resourceFile6221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6222", + "filePath": "resourceFile6222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6223", + "filePath": "resourceFile6223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6224", + "filePath": "resourceFile6224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6225", + "filePath": "resourceFile6225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6226", + "filePath": "resourceFile6226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6227", + "filePath": "resourceFile6227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6228", + "filePath": "resourceFile6228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6229", + "filePath": "resourceFile6229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6230", + "filePath": "resourceFile6230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6231", + "filePath": "resourceFile6231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6232", + "filePath": "resourceFile6232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6233", + "filePath": "resourceFile6233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6234", + "filePath": "resourceFile6234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6235", + "filePath": "resourceFile6235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6236", + "filePath": "resourceFile6236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6237", + "filePath": "resourceFile6237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6238", + "filePath": "resourceFile6238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6239", + "filePath": "resourceFile6239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6240", + "filePath": "resourceFile6240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6241", + "filePath": "resourceFile6241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6242", + "filePath": "resourceFile6242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6243", + "filePath": "resourceFile6243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6244", + "filePath": "resourceFile6244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6245", + "filePath": "resourceFile6245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6246", + "filePath": "resourceFile6246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6247", + "filePath": "resourceFile6247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6248", + "filePath": "resourceFile6248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6249", + "filePath": "resourceFile6249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6250", + "filePath": "resourceFile6250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6251", + "filePath": "resourceFile6251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6252", + "filePath": "resourceFile6252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6253", + "filePath": "resourceFile6253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6254", + "filePath": "resourceFile6254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6255", + "filePath": "resourceFile6255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6256", + "filePath": "resourceFile6256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6257", + "filePath": "resourceFile6257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6258", + "filePath": "resourceFile6258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6259", + "filePath": "resourceFile6259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6260", + "filePath": "resourceFile6260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6261", + "filePath": "resourceFile6261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6262", + "filePath": "resourceFile6262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6263", + "filePath": "resourceFile6263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6264", + "filePath": "resourceFile6264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6265", + "filePath": "resourceFile6265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6266", + "filePath": "resourceFile6266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6267", + "filePath": "resourceFile6267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6268", + "filePath": "resourceFile6268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6269", + "filePath": "resourceFile6269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6270", + "filePath": "resourceFile6270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6271", + "filePath": "resourceFile6271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6272", + "filePath": "resourceFile6272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6273", + "filePath": "resourceFile6273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6274", + "filePath": "resourceFile6274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6275", + "filePath": "resourceFile6275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6276", + "filePath": "resourceFile6276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6277", + "filePath": "resourceFile6277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6278", + "filePath": "resourceFile6278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6279", + "filePath": "resourceFile6279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6280", + "filePath": "resourceFile6280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6281", + "filePath": "resourceFile6281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6282", + "filePath": "resourceFile6282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6283", + "filePath": "resourceFile6283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6284", + "filePath": "resourceFile6284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6285", + "filePath": "resourceFile6285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6286", + "filePath": "resourceFile6286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6287", + "filePath": "resourceFile6287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6288", + "filePath": "resourceFile6288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6289", + "filePath": "resourceFile6289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6290", + "filePath": "resourceFile6290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6291", + "filePath": "resourceFile6291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6292", + "filePath": "resourceFile6292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6293", + "filePath": "resourceFile6293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6294", + "filePath": "resourceFile6294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6295", + "filePath": "resourceFile6295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6296", + "filePath": "resourceFile6296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6297", + "filePath": "resourceFile6297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6298", + "filePath": "resourceFile6298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6299", + "filePath": "resourceFile6299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6300", + "filePath": "resourceFile6300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6301", + "filePath": "resourceFile6301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6302", + "filePath": "resourceFile6302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6303", + "filePath": "resourceFile6303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6304", + "filePath": "resourceFile6304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6305", + "filePath": "resourceFile6305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6306", + "filePath": "resourceFile6306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6307", + "filePath": "resourceFile6307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6308", + "filePath": "resourceFile6308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6309", + "filePath": "resourceFile6309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6310", + "filePath": "resourceFile6310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6311", + "filePath": "resourceFile6311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6312", + "filePath": "resourceFile6312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6313", + "filePath": "resourceFile6313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6314", + "filePath": "resourceFile6314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6315", + "filePath": "resourceFile6315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6316", + "filePath": "resourceFile6316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6317", + "filePath": "resourceFile6317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6318", + "filePath": "resourceFile6318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6319", + "filePath": "resourceFile6319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6320", + "filePath": "resourceFile6320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6321", + "filePath": "resourceFile6321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6322", + "filePath": "resourceFile6322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6323", + "filePath": "resourceFile6323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6324", + "filePath": "resourceFile6324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6325", + "filePath": "resourceFile6325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6326", + "filePath": "resourceFile6326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6327", + "filePath": "resourceFile6327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6328", + "filePath": "resourceFile6328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6329", + "filePath": "resourceFile6329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6330", + "filePath": "resourceFile6330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6331", + "filePath": "resourceFile6331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6332", + "filePath": "resourceFile6332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6333", + "filePath": "resourceFile6333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6334", + "filePath": "resourceFile6334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6335", + "filePath": "resourceFile6335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6336", + "filePath": "resourceFile6336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6337", + "filePath": "resourceFile6337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6338", + "filePath": "resourceFile6338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6339", + "filePath": "resourceFile6339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6340", + "filePath": "resourceFile6340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6341", + "filePath": "resourceFile6341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6342", + "filePath": "resourceFile6342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6343", + "filePath": "resourceFile6343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6344", + "filePath": "resourceFile6344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6345", + "filePath": "resourceFile6345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6346", + "filePath": "resourceFile6346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6347", + "filePath": "resourceFile6347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6348", + "filePath": "resourceFile6348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6349", + "filePath": "resourceFile6349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6350", + "filePath": "resourceFile6350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6351", + "filePath": "resourceFile6351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6352", + "filePath": "resourceFile6352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6353", + "filePath": "resourceFile6353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6354", + "filePath": "resourceFile6354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6355", + "filePath": "resourceFile6355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6356", + "filePath": "resourceFile6356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6357", + "filePath": "resourceFile6357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6358", + "filePath": "resourceFile6358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6359", + "filePath": "resourceFile6359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6360", + "filePath": "resourceFile6360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6361", + "filePath": "resourceFile6361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6362", + "filePath": "resourceFile6362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6363", + "filePath": "resourceFile6363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6364", + "filePath": "resourceFile6364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6365", + "filePath": "resourceFile6365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6366", + "filePath": "resourceFile6366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6367", + "filePath": "resourceFile6367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6368", + "filePath": "resourceFile6368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6369", + "filePath": "resourceFile6369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6370", + "filePath": "resourceFile6370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6371", + "filePath": "resourceFile6371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6372", + "filePath": "resourceFile6372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6373", + "filePath": "resourceFile6373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6374", + "filePath": "resourceFile6374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6375", + "filePath": "resourceFile6375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6376", + "filePath": "resourceFile6376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6377", + "filePath": "resourceFile6377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6378", + "filePath": "resourceFile6378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6379", + "filePath": "resourceFile6379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6380", + "filePath": "resourceFile6380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6381", + "filePath": "resourceFile6381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6382", + "filePath": "resourceFile6382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6383", + "filePath": "resourceFile6383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6384", + "filePath": "resourceFile6384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6385", + "filePath": "resourceFile6385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6386", + "filePath": "resourceFile6386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6387", + "filePath": "resourceFile6387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6388", + "filePath": "resourceFile6388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6389", + "filePath": "resourceFile6389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6390", + "filePath": "resourceFile6390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6391", + "filePath": "resourceFile6391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6392", + "filePath": "resourceFile6392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6393", + "filePath": "resourceFile6393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6394", + "filePath": "resourceFile6394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6395", + "filePath": "resourceFile6395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6396", + "filePath": "resourceFile6396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6397", + "filePath": "resourceFile6397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6398", + "filePath": "resourceFile6398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6399", + "filePath": "resourceFile6399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6400", + "filePath": "resourceFile6400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6401", + "filePath": "resourceFile6401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6402", + "filePath": "resourceFile6402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6403", + "filePath": "resourceFile6403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6404", + "filePath": "resourceFile6404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6405", + "filePath": "resourceFile6405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6406", + "filePath": "resourceFile6406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6407", + "filePath": "resourceFile6407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6408", + "filePath": "resourceFile6408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6409", + "filePath": "resourceFile6409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6410", + "filePath": "resourceFile6410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6411", + "filePath": "resourceFile6411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6412", + "filePath": "resourceFile6412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6413", + "filePath": "resourceFile6413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6414", + "filePath": "resourceFile6414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6415", + "filePath": "resourceFile6415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6416", + "filePath": "resourceFile6416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6417", + "filePath": "resourceFile6417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6418", + "filePath": "resourceFile6418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6419", + "filePath": "resourceFile6419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6420", + "filePath": "resourceFile6420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6421", + "filePath": "resourceFile6421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6422", + "filePath": "resourceFile6422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6423", + "filePath": "resourceFile6423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6424", + "filePath": "resourceFile6424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6425", + "filePath": "resourceFile6425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6426", + "filePath": "resourceFile6426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6427", + "filePath": "resourceFile6427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6428", + "filePath": "resourceFile6428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6429", + "filePath": "resourceFile6429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6430", + "filePath": "resourceFile6430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6431", + "filePath": "resourceFile6431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6432", + "filePath": "resourceFile6432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6433", + "filePath": "resourceFile6433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6434", + "filePath": "resourceFile6434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6435", + "filePath": "resourceFile6435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6436", + "filePath": "resourceFile6436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6437", + "filePath": "resourceFile6437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6438", + "filePath": "resourceFile6438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6439", + "filePath": "resourceFile6439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6440", + "filePath": "resourceFile6440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6441", + "filePath": "resourceFile6441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6442", + "filePath": "resourceFile6442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6443", + "filePath": "resourceFile6443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6444", + "filePath": "resourceFile6444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6445", + "filePath": "resourceFile6445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6446", + "filePath": "resourceFile6446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6447", + "filePath": "resourceFile6447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6448", + "filePath": "resourceFile6448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6449", + "filePath": "resourceFile6449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6450", + "filePath": "resourceFile6450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6451", + "filePath": "resourceFile6451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6452", + "filePath": "resourceFile6452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6453", + "filePath": "resourceFile6453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6454", + "filePath": "resourceFile6454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6455", + "filePath": "resourceFile6455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6456", + "filePath": "resourceFile6456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6457", + "filePath": "resourceFile6457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6458", + "filePath": "resourceFile6458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6459", + "filePath": "resourceFile6459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6460", + "filePath": "resourceFile6460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6461", + "filePath": "resourceFile6461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6462", + "filePath": "resourceFile6462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6463", + "filePath": "resourceFile6463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6464", + "filePath": "resourceFile6464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6465", + "filePath": "resourceFile6465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6466", + "filePath": "resourceFile6466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6467", + "filePath": "resourceFile6467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6468", + "filePath": "resourceFile6468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6469", + "filePath": "resourceFile6469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6470", + "filePath": "resourceFile6470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6471", + "filePath": "resourceFile6471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6472", + "filePath": "resourceFile6472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6473", + "filePath": "resourceFile6473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6474", + "filePath": "resourceFile6474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6475", + "filePath": "resourceFile6475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6476", + "filePath": "resourceFile6476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6477", + "filePath": "resourceFile6477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6478", + "filePath": "resourceFile6478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6479", + "filePath": "resourceFile6479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6480", + "filePath": "resourceFile6480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6481", + "filePath": "resourceFile6481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6482", + "filePath": "resourceFile6482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6483", + "filePath": "resourceFile6483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6484", + "filePath": "resourceFile6484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6485", + "filePath": "resourceFile6485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6486", + "filePath": "resourceFile6486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6487", + "filePath": "resourceFile6487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6488", + "filePath": "resourceFile6488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6489", + "filePath": "resourceFile6489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6490", + "filePath": "resourceFile6490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6491", + "filePath": "resourceFile6491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6492", + "filePath": "resourceFile6492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6493", + "filePath": "resourceFile6493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6494", + "filePath": "resourceFile6494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6495", + "filePath": "resourceFile6495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6496", + "filePath": "resourceFile6496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6497", + "filePath": "resourceFile6497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6498", + "filePath": "resourceFile6498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6499", + "filePath": "resourceFile6499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6500", + "filePath": "resourceFile6500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6501", + "filePath": "resourceFile6501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6502", + "filePath": "resourceFile6502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6503", + "filePath": "resourceFile6503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6504", + "filePath": "resourceFile6504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6505", + "filePath": "resourceFile6505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6506", + "filePath": "resourceFile6506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6507", + "filePath": "resourceFile6507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6508", + "filePath": "resourceFile6508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6509", + "filePath": "resourceFile6509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6510", + "filePath": "resourceFile6510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6511", + "filePath": "resourceFile6511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6512", + "filePath": "resourceFile6512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6513", + "filePath": "resourceFile6513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6514", + "filePath": "resourceFile6514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6515", + "filePath": "resourceFile6515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6516", + "filePath": "resourceFile6516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6517", + "filePath": "resourceFile6517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6518", + "filePath": "resourceFile6518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6519", + "filePath": "resourceFile6519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6520", + "filePath": "resourceFile6520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6521", + "filePath": "resourceFile6521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6522", + "filePath": "resourceFile6522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6523", + "filePath": "resourceFile6523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6524", + "filePath": "resourceFile6524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6525", + "filePath": "resourceFile6525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6526", + "filePath": "resourceFile6526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6527", + "filePath": "resourceFile6527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6528", + "filePath": "resourceFile6528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6529", + "filePath": "resourceFile6529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6530", + "filePath": "resourceFile6530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6531", + "filePath": "resourceFile6531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6532", + "filePath": "resourceFile6532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6533", + "filePath": "resourceFile6533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6534", + "filePath": "resourceFile6534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6535", + "filePath": "resourceFile6535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6536", + "filePath": "resourceFile6536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6537", + "filePath": "resourceFile6537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6538", + "filePath": "resourceFile6538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6539", + "filePath": "resourceFile6539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6540", + "filePath": "resourceFile6540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6541", + "filePath": "resourceFile6541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6542", + "filePath": "resourceFile6542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6543", + "filePath": "resourceFile6543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6544", + "filePath": "resourceFile6544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6545", + "filePath": "resourceFile6545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6546", + "filePath": "resourceFile6546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6547", + "filePath": "resourceFile6547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6548", + "filePath": "resourceFile6548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6549", + "filePath": "resourceFile6549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6550", + "filePath": "resourceFile6550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6551", + "filePath": "resourceFile6551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6552", + "filePath": "resourceFile6552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6553", + "filePath": "resourceFile6553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6554", + "filePath": "resourceFile6554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6555", + "filePath": "resourceFile6555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6556", + "filePath": "resourceFile6556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6557", + "filePath": "resourceFile6557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6558", + "filePath": "resourceFile6558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6559", + "filePath": "resourceFile6559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6560", + "filePath": "resourceFile6560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6561", + "filePath": "resourceFile6561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6562", + "filePath": "resourceFile6562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6563", + "filePath": "resourceFile6563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6564", + "filePath": "resourceFile6564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6565", + "filePath": "resourceFile6565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6566", + "filePath": "resourceFile6566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6567", + "filePath": "resourceFile6567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6568", + "filePath": "resourceFile6568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6569", + "filePath": "resourceFile6569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6570", + "filePath": "resourceFile6570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6571", + "filePath": "resourceFile6571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6572", + "filePath": "resourceFile6572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6573", + "filePath": "resourceFile6573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6574", + "filePath": "resourceFile6574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6575", + "filePath": "resourceFile6575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6576", + "filePath": "resourceFile6576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6577", + "filePath": "resourceFile6577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6578", + "filePath": "resourceFile6578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6579", + "filePath": "resourceFile6579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6580", + "filePath": "resourceFile6580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6581", + "filePath": "resourceFile6581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6582", + "filePath": "resourceFile6582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6583", + "filePath": "resourceFile6583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6584", + "filePath": "resourceFile6584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6585", + "filePath": "resourceFile6585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6586", + "filePath": "resourceFile6586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6587", + "filePath": "resourceFile6587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6588", + "filePath": "resourceFile6588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6589", + "filePath": "resourceFile6589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6590", + "filePath": "resourceFile6590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6591", + "filePath": "resourceFile6591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6592", + "filePath": "resourceFile6592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6593", + "filePath": "resourceFile6593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6594", + "filePath": "resourceFile6594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6595", + "filePath": "resourceFile6595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6596", + "filePath": "resourceFile6596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6597", + "filePath": "resourceFile6597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6598", + "filePath": "resourceFile6598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6599", + "filePath": "resourceFile6599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6600", + "filePath": "resourceFile6600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6601", + "filePath": "resourceFile6601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6602", + "filePath": "resourceFile6602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6603", + "filePath": "resourceFile6603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6604", + "filePath": "resourceFile6604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6605", + "filePath": "resourceFile6605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6606", + "filePath": "resourceFile6606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6607", + "filePath": "resourceFile6607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6608", + "filePath": "resourceFile6608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6609", + "filePath": "resourceFile6609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6610", + "filePath": "resourceFile6610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6611", + "filePath": "resourceFile6611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6612", + "filePath": "resourceFile6612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6613", + "filePath": "resourceFile6613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6614", + "filePath": "resourceFile6614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6615", + "filePath": "resourceFile6615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6616", + "filePath": "resourceFile6616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6617", + "filePath": "resourceFile6617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6618", + "filePath": "resourceFile6618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6619", + "filePath": "resourceFile6619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6620", + "filePath": "resourceFile6620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6621", + "filePath": "resourceFile6621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6622", + "filePath": "resourceFile6622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6623", + "filePath": "resourceFile6623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6624", + "filePath": "resourceFile6624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6625", + "filePath": "resourceFile6625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6626", + "filePath": "resourceFile6626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6627", + "filePath": "resourceFile6627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6628", + "filePath": "resourceFile6628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6629", + "filePath": "resourceFile6629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6630", + "filePath": "resourceFile6630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6631", + "filePath": "resourceFile6631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6632", + "filePath": "resourceFile6632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6633", + "filePath": "resourceFile6633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6634", + "filePath": "resourceFile6634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6635", + "filePath": "resourceFile6635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6636", + "filePath": "resourceFile6636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6637", + "filePath": "resourceFile6637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6638", + "filePath": "resourceFile6638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6639", + "filePath": "resourceFile6639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6640", + "filePath": "resourceFile6640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6641", + "filePath": "resourceFile6641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6642", + "filePath": "resourceFile6642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6643", + "filePath": "resourceFile6643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6644", + "filePath": "resourceFile6644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6645", + "filePath": "resourceFile6645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6646", + "filePath": "resourceFile6646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6647", + "filePath": "resourceFile6647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6648", + "filePath": "resourceFile6648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6649", + "filePath": "resourceFile6649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6650", + "filePath": "resourceFile6650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6651", + "filePath": "resourceFile6651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6652", + "filePath": "resourceFile6652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6653", + "filePath": "resourceFile6653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6654", + "filePath": "resourceFile6654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6655", + "filePath": "resourceFile6655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6656", + "filePath": "resourceFile6656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6657", + "filePath": "resourceFile6657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6658", + "filePath": "resourceFile6658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6659", + "filePath": "resourceFile6659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6660", + "filePath": "resourceFile6660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6661", + "filePath": "resourceFile6661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6662", + "filePath": "resourceFile6662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6663", + "filePath": "resourceFile6663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6664", + "filePath": "resourceFile6664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6665", + "filePath": "resourceFile6665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6666", + "filePath": "resourceFile6666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6667", + "filePath": "resourceFile6667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6668", + "filePath": "resourceFile6668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6669", + "filePath": "resourceFile6669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6670", + "filePath": "resourceFile6670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6671", + "filePath": "resourceFile6671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6672", + "filePath": "resourceFile6672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6673", + "filePath": "resourceFile6673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6674", + "filePath": "resourceFile6674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6675", + "filePath": "resourceFile6675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6676", + "filePath": "resourceFile6676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6677", + "filePath": "resourceFile6677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6678", + "filePath": "resourceFile6678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6679", + "filePath": "resourceFile6679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6680", + "filePath": "resourceFile6680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6681", + "filePath": "resourceFile6681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6682", + "filePath": "resourceFile6682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6683", + "filePath": "resourceFile6683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6684", + "filePath": "resourceFile6684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6685", + "filePath": "resourceFile6685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6686", + "filePath": "resourceFile6686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6687", + "filePath": "resourceFile6687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6688", + "filePath": "resourceFile6688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6689", + "filePath": "resourceFile6689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6690", + "filePath": "resourceFile6690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6691", + "filePath": "resourceFile6691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6692", + "filePath": "resourceFile6692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6693", + "filePath": "resourceFile6693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6694", + "filePath": "resourceFile6694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6695", + "filePath": "resourceFile6695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6696", + "filePath": "resourceFile6696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6697", + "filePath": "resourceFile6697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6698", + "filePath": "resourceFile6698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6699", + "filePath": "resourceFile6699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6700", + "filePath": "resourceFile6700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6701", + "filePath": "resourceFile6701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6702", + "filePath": "resourceFile6702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6703", + "filePath": "resourceFile6703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6704", + "filePath": "resourceFile6704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6705", + "filePath": "resourceFile6705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6706", + "filePath": "resourceFile6706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6707", + "filePath": "resourceFile6707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6708", + "filePath": "resourceFile6708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6709", + "filePath": "resourceFile6709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6710", + "filePath": "resourceFile6710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6711", + "filePath": "resourceFile6711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6712", + "filePath": "resourceFile6712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6713", + "filePath": "resourceFile6713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6714", + "filePath": "resourceFile6714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6715", + "filePath": "resourceFile6715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6716", + "filePath": "resourceFile6716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6717", + "filePath": "resourceFile6717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6718", + "filePath": "resourceFile6718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6719", + "filePath": "resourceFile6719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6720", + "filePath": "resourceFile6720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6721", + "filePath": "resourceFile6721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6722", + "filePath": "resourceFile6722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6723", + "filePath": "resourceFile6723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6724", + "filePath": "resourceFile6724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6725", + "filePath": "resourceFile6725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6726", + "filePath": "resourceFile6726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6727", + "filePath": "resourceFile6727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6728", + "filePath": "resourceFile6728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6729", + "filePath": "resourceFile6729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6730", + "filePath": "resourceFile6730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6731", + "filePath": "resourceFile6731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6732", + "filePath": "resourceFile6732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6733", + "filePath": "resourceFile6733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6734", + "filePath": "resourceFile6734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6735", + "filePath": "resourceFile6735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6736", + "filePath": "resourceFile6736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6737", + "filePath": "resourceFile6737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6738", + "filePath": "resourceFile6738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6739", + "filePath": "resourceFile6739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6740", + "filePath": "resourceFile6740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6741", + "filePath": "resourceFile6741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6742", + "filePath": "resourceFile6742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6743", + "filePath": "resourceFile6743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6744", + "filePath": "resourceFile6744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6745", + "filePath": "resourceFile6745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6746", + "filePath": "resourceFile6746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6747", + "filePath": "resourceFile6747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6748", + "filePath": "resourceFile6748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6749", + "filePath": "resourceFile6749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6750", + "filePath": "resourceFile6750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6751", + "filePath": "resourceFile6751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6752", + "filePath": "resourceFile6752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6753", + "filePath": "resourceFile6753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6754", + "filePath": "resourceFile6754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6755", + "filePath": "resourceFile6755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6756", + "filePath": "resourceFile6756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6757", + "filePath": "resourceFile6757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6758", + "filePath": "resourceFile6758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6759", + "filePath": "resourceFile6759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6760", + "filePath": "resourceFile6760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6761", + "filePath": "resourceFile6761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6762", + "filePath": "resourceFile6762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6763", + "filePath": "resourceFile6763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6764", + "filePath": "resourceFile6764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6765", + "filePath": "resourceFile6765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6766", + "filePath": "resourceFile6766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6767", + "filePath": "resourceFile6767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6768", + "filePath": "resourceFile6768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6769", + "filePath": "resourceFile6769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6770", + "filePath": "resourceFile6770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6771", + "filePath": "resourceFile6771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6772", + "filePath": "resourceFile6772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6773", + "filePath": "resourceFile6773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6774", + "filePath": "resourceFile6774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6775", + "filePath": "resourceFile6775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6776", + "filePath": "resourceFile6776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6777", + "filePath": "resourceFile6777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6778", + "filePath": "resourceFile6778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6779", + "filePath": "resourceFile6779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6780", + "filePath": "resourceFile6780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6781", + "filePath": "resourceFile6781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6782", + "filePath": "resourceFile6782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6783", + "filePath": "resourceFile6783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6784", + "filePath": "resourceFile6784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6785", + "filePath": "resourceFile6785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6786", + "filePath": "resourceFile6786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6787", + "filePath": "resourceFile6787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6788", + "filePath": "resourceFile6788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6789", + "filePath": "resourceFile6789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6790", + "filePath": "resourceFile6790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6791", + "filePath": "resourceFile6791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6792", + "filePath": "resourceFile6792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6793", + "filePath": "resourceFile6793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6794", + "filePath": "resourceFile6794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6795", + "filePath": "resourceFile6795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6796", + "filePath": "resourceFile6796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6797", + "filePath": "resourceFile6797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6798", + "filePath": "resourceFile6798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6799", + "filePath": "resourceFile6799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6800", + "filePath": "resourceFile6800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6801", + "filePath": "resourceFile6801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6802", + "filePath": "resourceFile6802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6803", + "filePath": "resourceFile6803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6804", + "filePath": "resourceFile6804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6805", + "filePath": "resourceFile6805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6806", + "filePath": "resourceFile6806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6807", + "filePath": "resourceFile6807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6808", + "filePath": "resourceFile6808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6809", + "filePath": "resourceFile6809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6810", + "filePath": "resourceFile6810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6811", + "filePath": "resourceFile6811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6812", + "filePath": "resourceFile6812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6813", + "filePath": "resourceFile6813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6814", + "filePath": "resourceFile6814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6815", + "filePath": "resourceFile6815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6816", + "filePath": "resourceFile6816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6817", + "filePath": "resourceFile6817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6818", + "filePath": "resourceFile6818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6819", + "filePath": "resourceFile6819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6820", + "filePath": "resourceFile6820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6821", + "filePath": "resourceFile6821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6822", + "filePath": "resourceFile6822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6823", + "filePath": "resourceFile6823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6824", + "filePath": "resourceFile6824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6825", + "filePath": "resourceFile6825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6826", + "filePath": "resourceFile6826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6827", + "filePath": "resourceFile6827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6828", + "filePath": "resourceFile6828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6829", + "filePath": "resourceFile6829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6830", + "filePath": "resourceFile6830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6831", + "filePath": "resourceFile6831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6832", + "filePath": "resourceFile6832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6833", + "filePath": "resourceFile6833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6834", + "filePath": "resourceFile6834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6835", + "filePath": "resourceFile6835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6836", + "filePath": "resourceFile6836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6837", + "filePath": "resourceFile6837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6838", + "filePath": "resourceFile6838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6839", + "filePath": "resourceFile6839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6840", + "filePath": "resourceFile6840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6841", + "filePath": "resourceFile6841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6842", + "filePath": "resourceFile6842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6843", + "filePath": "resourceFile6843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6844", + "filePath": "resourceFile6844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6845", + "filePath": "resourceFile6845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6846", + "filePath": "resourceFile6846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6847", + "filePath": "resourceFile6847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6848", + "filePath": "resourceFile6848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6849", + "filePath": "resourceFile6849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6850", + "filePath": "resourceFile6850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6851", + "filePath": "resourceFile6851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6852", + "filePath": "resourceFile6852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6853", + "filePath": "resourceFile6853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6854", + "filePath": "resourceFile6854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6855", + "filePath": "resourceFile6855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6856", + "filePath": "resourceFile6856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6857", + "filePath": "resourceFile6857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6858", + "filePath": "resourceFile6858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6859", + "filePath": "resourceFile6859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6860", + "filePath": "resourceFile6860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6861", + "filePath": "resourceFile6861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6862", + "filePath": "resourceFile6862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6863", + "filePath": "resourceFile6863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6864", + "filePath": "resourceFile6864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6865", + "filePath": "resourceFile6865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6866", + "filePath": "resourceFile6866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6867", + "filePath": "resourceFile6867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6868", + "filePath": "resourceFile6868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6869", + "filePath": "resourceFile6869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6870", + "filePath": "resourceFile6870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6871", + "filePath": "resourceFile6871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6872", + "filePath": "resourceFile6872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6873", + "filePath": "resourceFile6873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6874", + "filePath": "resourceFile6874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6875", + "filePath": "resourceFile6875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6876", + "filePath": "resourceFile6876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6877", + "filePath": "resourceFile6877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6878", + "filePath": "resourceFile6878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6879", + "filePath": "resourceFile6879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6880", + "filePath": "resourceFile6880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6881", + "filePath": "resourceFile6881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6882", + "filePath": "resourceFile6882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6883", + "filePath": "resourceFile6883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6884", + "filePath": "resourceFile6884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6885", + "filePath": "resourceFile6885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6886", + "filePath": "resourceFile6886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6887", + "filePath": "resourceFile6887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6888", + "filePath": "resourceFile6888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6889", + "filePath": "resourceFile6889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6890", + "filePath": "resourceFile6890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6891", + "filePath": "resourceFile6891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6892", + "filePath": "resourceFile6892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6893", + "filePath": "resourceFile6893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6894", + "filePath": "resourceFile6894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6895", + "filePath": "resourceFile6895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6896", + "filePath": "resourceFile6896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6897", + "filePath": "resourceFile6897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6898", + "filePath": "resourceFile6898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6899", + "filePath": "resourceFile6899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6900", + "filePath": "resourceFile6900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6901", + "filePath": "resourceFile6901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6902", + "filePath": "resourceFile6902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6903", + "filePath": "resourceFile6903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6904", + "filePath": "resourceFile6904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6905", + "filePath": "resourceFile6905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6906", + "filePath": "resourceFile6906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6907", + "filePath": "resourceFile6907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6908", + "filePath": "resourceFile6908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6909", + "filePath": "resourceFile6909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6910", + "filePath": "resourceFile6910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6911", + "filePath": "resourceFile6911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6912", + "filePath": "resourceFile6912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6913", + "filePath": "resourceFile6913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6914", + "filePath": "resourceFile6914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6915", + "filePath": "resourceFile6915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6916", + "filePath": "resourceFile6916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6917", + "filePath": "resourceFile6917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6918", + "filePath": "resourceFile6918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6919", + "filePath": "resourceFile6919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6920", + "filePath": "resourceFile6920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6921", + "filePath": "resourceFile6921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6922", + "filePath": "resourceFile6922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6923", + "filePath": "resourceFile6923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6924", + "filePath": "resourceFile6924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6925", + "filePath": "resourceFile6925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6926", + "filePath": "resourceFile6926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6927", + "filePath": "resourceFile6927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6928", + "filePath": "resourceFile6928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6929", + "filePath": "resourceFile6929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6930", + "filePath": "resourceFile6930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6931", + "filePath": "resourceFile6931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6932", + "filePath": "resourceFile6932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6933", + "filePath": "resourceFile6933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6934", + "filePath": "resourceFile6934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6935", + "filePath": "resourceFile6935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6936", + "filePath": "resourceFile6936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6937", + "filePath": "resourceFile6937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6938", + "filePath": "resourceFile6938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6939", + "filePath": "resourceFile6939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6940", + "filePath": "resourceFile6940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6941", + "filePath": "resourceFile6941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6942", + "filePath": "resourceFile6942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6943", + "filePath": "resourceFile6943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6944", + "filePath": "resourceFile6944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6945", + "filePath": "resourceFile6945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6946", + "filePath": "resourceFile6946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6947", + "filePath": "resourceFile6947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6948", + "filePath": "resourceFile6948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6949", + "filePath": "resourceFile6949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6950", + "filePath": "resourceFile6950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6951", + "filePath": "resourceFile6951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6952", + "filePath": "resourceFile6952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6953", + "filePath": "resourceFile6953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6954", + "filePath": "resourceFile6954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6955", + "filePath": "resourceFile6955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6956", + "filePath": "resourceFile6956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6957", + "filePath": "resourceFile6957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6958", + "filePath": "resourceFile6958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6959", + "filePath": "resourceFile6959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6960", + "filePath": "resourceFile6960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6961", + "filePath": "resourceFile6961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6962", + "filePath": "resourceFile6962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6963", + "filePath": "resourceFile6963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6964", + "filePath": "resourceFile6964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6965", + "filePath": "resourceFile6965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6966", + "filePath": "resourceFile6966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6967", + "filePath": "resourceFile6967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6968", + "filePath": "resourceFile6968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6969", + "filePath": "resourceFile6969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6970", + "filePath": "resourceFile6970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6971", + "filePath": "resourceFile6971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6972", + "filePath": "resourceFile6972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6973", + "filePath": "resourceFile6973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6974", + "filePath": "resourceFile6974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6975", + "filePath": "resourceFile6975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6976", + "filePath": "resourceFile6976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6977", + "filePath": "resourceFile6977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6978", + "filePath": "resourceFile6978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6979", + "filePath": "resourceFile6979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6980", + "filePath": "resourceFile6980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6981", + "filePath": "resourceFile6981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6982", + "filePath": "resourceFile6982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6983", + "filePath": "resourceFile6983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6984", + "filePath": "resourceFile6984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6985", + "filePath": "resourceFile6985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6986", + "filePath": "resourceFile6986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6987", + "filePath": "resourceFile6987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6988", + "filePath": "resourceFile6988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6989", + "filePath": "resourceFile6989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6990", + "filePath": "resourceFile6990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6991", + "filePath": "resourceFile6991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6992", + "filePath": "resourceFile6992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6993", + "filePath": "resourceFile6993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6994", + "filePath": "resourceFile6994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6995", + "filePath": "resourceFile6995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6996", + "filePath": "resourceFile6996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6997", + "filePath": "resourceFile6997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6998", + "filePath": "resourceFile6998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6999", + "filePath": "resourceFile6999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7000", + "filePath": "resourceFile7000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7001", + "filePath": "resourceFile7001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7002", + "filePath": "resourceFile7002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7003", + "filePath": "resourceFile7003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7004", + "filePath": "resourceFile7004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7005", + "filePath": "resourceFile7005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7006", + "filePath": "resourceFile7006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7007", + "filePath": "resourceFile7007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7008", + "filePath": "resourceFile7008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7009", + "filePath": "resourceFile7009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7010", + "filePath": "resourceFile7010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7011", + "filePath": "resourceFile7011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7012", + "filePath": "resourceFile7012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7013", + "filePath": "resourceFile7013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7014", + "filePath": "resourceFile7014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7015", + "filePath": "resourceFile7015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7016", + "filePath": "resourceFile7016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7017", + "filePath": "resourceFile7017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7018", + "filePath": "resourceFile7018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7019", + "filePath": "resourceFile7019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7020", + "filePath": "resourceFile7020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7021", + "filePath": "resourceFile7021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7022", + "filePath": "resourceFile7022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7023", + "filePath": "resourceFile7023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7024", + "filePath": "resourceFile7024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7025", + "filePath": "resourceFile7025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7026", + "filePath": "resourceFile7026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7027", + "filePath": "resourceFile7027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7028", + "filePath": "resourceFile7028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7029", + "filePath": "resourceFile7029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7030", + "filePath": "resourceFile7030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7031", + "filePath": "resourceFile7031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7032", + "filePath": "resourceFile7032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7033", + "filePath": "resourceFile7033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7034", + "filePath": "resourceFile7034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7035", + "filePath": "resourceFile7035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7036", + "filePath": "resourceFile7036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7037", + "filePath": "resourceFile7037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7038", + "filePath": "resourceFile7038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7039", + "filePath": "resourceFile7039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7040", + "filePath": "resourceFile7040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7041", + "filePath": "resourceFile7041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7042", + "filePath": "resourceFile7042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7043", + "filePath": "resourceFile7043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7044", + "filePath": "resourceFile7044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7045", + "filePath": "resourceFile7045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7046", + "filePath": "resourceFile7046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7047", + "filePath": "resourceFile7047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7048", + "filePath": "resourceFile7048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7049", + "filePath": "resourceFile7049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7050", + "filePath": "resourceFile7050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7051", + "filePath": "resourceFile7051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7052", + "filePath": "resourceFile7052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7053", + "filePath": "resourceFile7053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7054", + "filePath": "resourceFile7054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7055", + "filePath": "resourceFile7055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7056", + "filePath": "resourceFile7056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7057", + "filePath": "resourceFile7057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7058", + "filePath": "resourceFile7058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7059", + "filePath": "resourceFile7059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7060", + "filePath": "resourceFile7060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7061", + "filePath": "resourceFile7061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7062", + "filePath": "resourceFile7062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7063", + "filePath": "resourceFile7063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7064", + "filePath": "resourceFile7064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7065", + "filePath": "resourceFile7065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7066", + "filePath": "resourceFile7066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7067", + "filePath": "resourceFile7067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7068", + "filePath": "resourceFile7068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7069", + "filePath": "resourceFile7069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7070", + "filePath": "resourceFile7070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7071", + "filePath": "resourceFile7071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7072", + "filePath": "resourceFile7072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7073", + "filePath": "resourceFile7073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7074", + "filePath": "resourceFile7074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7075", + "filePath": "resourceFile7075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7076", + "filePath": "resourceFile7076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7077", + "filePath": "resourceFile7077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7078", + "filePath": "resourceFile7078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7079", + "filePath": "resourceFile7079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7080", + "filePath": "resourceFile7080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7081", + "filePath": "resourceFile7081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7082", + "filePath": "resourceFile7082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7083", + "filePath": "resourceFile7083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7084", + "filePath": "resourceFile7084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7085", + "filePath": "resourceFile7085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7086", + "filePath": "resourceFile7086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7087", + "filePath": "resourceFile7087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7088", + "filePath": "resourceFile7088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7089", + "filePath": "resourceFile7089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7090", + "filePath": "resourceFile7090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7091", + "filePath": "resourceFile7091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7092", + "filePath": "resourceFile7092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7093", + "filePath": "resourceFile7093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7094", + "filePath": "resourceFile7094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7095", + "filePath": "resourceFile7095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7096", + "filePath": "resourceFile7096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7097", + "filePath": "resourceFile7097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7098", + "filePath": "resourceFile7098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7099", + "filePath": "resourceFile7099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7100", + "filePath": "resourceFile7100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7101", + "filePath": "resourceFile7101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7102", + "filePath": "resourceFile7102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7103", + "filePath": "resourceFile7103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7104", + "filePath": "resourceFile7104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7105", + "filePath": "resourceFile7105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7106", + "filePath": "resourceFile7106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7107", + "filePath": "resourceFile7107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7108", + "filePath": "resourceFile7108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7109", + "filePath": "resourceFile7109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7110", + "filePath": "resourceFile7110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7111", + "filePath": "resourceFile7111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7112", + "filePath": "resourceFile7112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7113", + "filePath": "resourceFile7113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7114", + "filePath": "resourceFile7114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7115", + "filePath": "resourceFile7115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7116", + "filePath": "resourceFile7116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7117", + "filePath": "resourceFile7117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7118", + "filePath": "resourceFile7118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7119", + "filePath": "resourceFile7119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7120", + "filePath": "resourceFile7120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7121", + "filePath": "resourceFile7121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7122", + "filePath": "resourceFile7122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7123", + "filePath": "resourceFile7123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7124", + "filePath": "resourceFile7124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7125", + "filePath": "resourceFile7125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7126", + "filePath": "resourceFile7126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7127", + "filePath": "resourceFile7127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7128", + "filePath": "resourceFile7128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7129", + "filePath": "resourceFile7129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7130", + "filePath": "resourceFile7130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7131", + "filePath": "resourceFile7131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7132", + "filePath": "resourceFile7132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7133", + "filePath": "resourceFile7133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7134", + "filePath": "resourceFile7134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7135", + "filePath": "resourceFile7135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7136", + "filePath": "resourceFile7136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7137", + "filePath": "resourceFile7137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7138", + "filePath": "resourceFile7138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7139", + "filePath": "resourceFile7139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7140", + "filePath": "resourceFile7140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7141", + "filePath": "resourceFile7141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7142", + "filePath": "resourceFile7142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7143", + "filePath": "resourceFile7143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7144", + "filePath": "resourceFile7144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7145", + "filePath": "resourceFile7145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7146", + "filePath": "resourceFile7146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7147", + "filePath": "resourceFile7147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7148", + "filePath": "resourceFile7148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7149", + "filePath": "resourceFile7149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7150", + "filePath": "resourceFile7150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7151", + "filePath": "resourceFile7151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7152", + "filePath": "resourceFile7152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7153", + "filePath": "resourceFile7153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7154", + "filePath": "resourceFile7154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7155", + "filePath": "resourceFile7155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7156", + "filePath": "resourceFile7156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7157", + "filePath": "resourceFile7157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7158", + "filePath": "resourceFile7158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7159", + "filePath": "resourceFile7159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7160", + "filePath": "resourceFile7160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7161", + "filePath": "resourceFile7161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7162", + "filePath": "resourceFile7162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7163", + "filePath": "resourceFile7163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7164", + "filePath": "resourceFile7164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7165", + "filePath": "resourceFile7165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7166", + "filePath": "resourceFile7166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7167", + "filePath": "resourceFile7167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7168", + "filePath": "resourceFile7168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7169", + "filePath": "resourceFile7169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7170", + "filePath": "resourceFile7170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7171", + "filePath": "resourceFile7171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7172", + "filePath": "resourceFile7172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7173", + "filePath": "resourceFile7173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7174", + "filePath": "resourceFile7174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7175", + "filePath": "resourceFile7175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7176", + "filePath": "resourceFile7176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7177", + "filePath": "resourceFile7177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7178", + "filePath": "resourceFile7178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7179", + "filePath": "resourceFile7179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7180", + "filePath": "resourceFile7180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7181", + "filePath": "resourceFile7181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7182", + "filePath": "resourceFile7182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7183", + "filePath": "resourceFile7183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7184", + "filePath": "resourceFile7184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7185", + "filePath": "resourceFile7185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7186", + "filePath": "resourceFile7186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7187", + "filePath": "resourceFile7187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7188", + "filePath": "resourceFile7188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7189", + "filePath": "resourceFile7189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7190", + "filePath": "resourceFile7190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7191", + "filePath": "resourceFile7191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7192", + "filePath": "resourceFile7192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7193", + "filePath": "resourceFile7193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7194", + "filePath": "resourceFile7194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7195", + "filePath": "resourceFile7195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7196", + "filePath": "resourceFile7196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7197", + "filePath": "resourceFile7197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7198", + "filePath": "resourceFile7198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7199", + "filePath": "resourceFile7199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7200", + "filePath": "resourceFile7200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7201", + "filePath": "resourceFile7201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7202", + "filePath": "resourceFile7202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7203", + "filePath": "resourceFile7203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7204", + "filePath": "resourceFile7204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7205", + "filePath": "resourceFile7205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7206", + "filePath": "resourceFile7206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7207", + "filePath": "resourceFile7207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7208", + "filePath": "resourceFile7208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7209", + "filePath": "resourceFile7209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7210", + "filePath": "resourceFile7210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7211", + "filePath": "resourceFile7211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7212", + "filePath": "resourceFile7212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7213", + "filePath": "resourceFile7213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7214", + "filePath": "resourceFile7214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7215", + "filePath": "resourceFile7215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7216", + "filePath": "resourceFile7216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7217", + "filePath": "resourceFile7217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7218", + "filePath": "resourceFile7218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7219", + "filePath": "resourceFile7219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7220", + "filePath": "resourceFile7220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7221", + "filePath": "resourceFile7221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7222", + "filePath": "resourceFile7222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7223", + "filePath": "resourceFile7223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7224", + "filePath": "resourceFile7224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7225", + "filePath": "resourceFile7225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7226", + "filePath": "resourceFile7226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7227", + "filePath": "resourceFile7227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7228", + "filePath": "resourceFile7228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7229", + "filePath": "resourceFile7229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7230", + "filePath": "resourceFile7230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7231", + "filePath": "resourceFile7231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7232", + "filePath": "resourceFile7232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7233", + "filePath": "resourceFile7233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7234", + "filePath": "resourceFile7234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7235", + "filePath": "resourceFile7235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7236", + "filePath": "resourceFile7236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7237", + "filePath": "resourceFile7237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7238", + "filePath": "resourceFile7238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7239", + "filePath": "resourceFile7239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7240", + "filePath": "resourceFile7240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7241", + "filePath": "resourceFile7241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7242", + "filePath": "resourceFile7242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7243", + "filePath": "resourceFile7243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7244", + "filePath": "resourceFile7244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7245", + "filePath": "resourceFile7245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7246", + "filePath": "resourceFile7246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7247", + "filePath": "resourceFile7247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7248", + "filePath": "resourceFile7248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7249", + "filePath": "resourceFile7249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7250", + "filePath": "resourceFile7250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7251", + "filePath": "resourceFile7251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7252", + "filePath": "resourceFile7252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7253", + "filePath": "resourceFile7253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7254", + "filePath": "resourceFile7254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7255", + "filePath": "resourceFile7255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7256", + "filePath": "resourceFile7256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7257", + "filePath": "resourceFile7257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7258", + "filePath": "resourceFile7258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7259", + "filePath": "resourceFile7259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7260", + "filePath": "resourceFile7260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7261", + "filePath": "resourceFile7261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7262", + "filePath": "resourceFile7262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7263", + "filePath": "resourceFile7263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7264", + "filePath": "resourceFile7264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7265", + "filePath": "resourceFile7265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7266", + "filePath": "resourceFile7266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7267", + "filePath": "resourceFile7267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7268", + "filePath": "resourceFile7268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7269", + "filePath": "resourceFile7269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7270", + "filePath": "resourceFile7270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7271", + "filePath": "resourceFile7271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7272", + "filePath": "resourceFile7272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7273", + "filePath": "resourceFile7273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7274", + "filePath": "resourceFile7274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7275", + "filePath": "resourceFile7275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7276", + "filePath": "resourceFile7276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7277", + "filePath": "resourceFile7277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7278", + "filePath": "resourceFile7278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7279", + "filePath": "resourceFile7279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7280", + "filePath": "resourceFile7280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7281", + "filePath": "resourceFile7281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7282", + "filePath": "resourceFile7282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7283", + "filePath": "resourceFile7283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7284", + "filePath": "resourceFile7284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7285", + "filePath": "resourceFile7285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7286", + "filePath": "resourceFile7286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7287", + "filePath": "resourceFile7287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7288", + "filePath": "resourceFile7288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7289", + "filePath": "resourceFile7289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7290", + "filePath": "resourceFile7290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7291", + "filePath": "resourceFile7291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7292", + "filePath": "resourceFile7292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7293", + "filePath": "resourceFile7293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7294", + "filePath": "resourceFile7294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7295", + "filePath": "resourceFile7295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7296", + "filePath": "resourceFile7296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7297", + "filePath": "resourceFile7297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7298", + "filePath": "resourceFile7298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7299", + "filePath": "resourceFile7299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7300", + "filePath": "resourceFile7300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7301", + "filePath": "resourceFile7301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7302", + "filePath": "resourceFile7302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7303", + "filePath": "resourceFile7303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7304", + "filePath": "resourceFile7304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7305", + "filePath": "resourceFile7305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7306", + "filePath": "resourceFile7306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7307", + "filePath": "resourceFile7307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7308", + "filePath": "resourceFile7308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7309", + "filePath": "resourceFile7309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7310", + "filePath": "resourceFile7310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7311", + "filePath": "resourceFile7311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7312", + "filePath": "resourceFile7312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7313", + "filePath": "resourceFile7313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7314", + "filePath": "resourceFile7314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7315", + "filePath": "resourceFile7315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7316", + "filePath": "resourceFile7316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7317", + "filePath": "resourceFile7317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7318", + "filePath": "resourceFile7318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7319", + "filePath": "resourceFile7319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7320", + "filePath": "resourceFile7320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7321", + "filePath": "resourceFile7321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7322", + "filePath": "resourceFile7322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7323", + "filePath": "resourceFile7323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7324", + "filePath": "resourceFile7324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7325", + "filePath": "resourceFile7325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7326", + "filePath": "resourceFile7326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7327", + "filePath": "resourceFile7327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7328", + "filePath": "resourceFile7328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7329", + "filePath": "resourceFile7329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7330", + "filePath": "resourceFile7330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7331", + "filePath": "resourceFile7331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7332", + "filePath": "resourceFile7332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7333", + "filePath": "resourceFile7333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7334", + "filePath": "resourceFile7334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7335", + "filePath": "resourceFile7335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7336", + "filePath": "resourceFile7336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7337", + "filePath": "resourceFile7337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7338", + "filePath": "resourceFile7338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7339", + "filePath": "resourceFile7339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7340", + "filePath": "resourceFile7340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7341", + "filePath": "resourceFile7341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7342", + "filePath": "resourceFile7342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7343", + "filePath": "resourceFile7343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7344", + "filePath": "resourceFile7344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7345", + "filePath": "resourceFile7345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7346", + "filePath": "resourceFile7346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7347", + "filePath": "resourceFile7347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7348", + "filePath": "resourceFile7348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7349", + "filePath": "resourceFile7349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7350", + "filePath": "resourceFile7350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7351", + "filePath": "resourceFile7351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7352", + "filePath": "resourceFile7352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7353", + "filePath": "resourceFile7353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7354", + "filePath": "resourceFile7354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7355", + "filePath": "resourceFile7355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7356", + "filePath": "resourceFile7356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7357", + "filePath": "resourceFile7357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7358", + "filePath": "resourceFile7358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7359", + "filePath": "resourceFile7359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7360", + "filePath": "resourceFile7360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7361", + "filePath": "resourceFile7361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7362", + "filePath": "resourceFile7362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7363", + "filePath": "resourceFile7363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7364", + "filePath": "resourceFile7364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7365", + "filePath": "resourceFile7365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7366", + "filePath": "resourceFile7366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7367", + "filePath": "resourceFile7367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7368", + "filePath": "resourceFile7368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7369", + "filePath": "resourceFile7369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7370", + "filePath": "resourceFile7370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7371", + "filePath": "resourceFile7371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7372", + "filePath": "resourceFile7372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7373", + "filePath": "resourceFile7373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7374", + "filePath": "resourceFile7374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7375", + "filePath": "resourceFile7375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7376", + "filePath": "resourceFile7376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7377", + "filePath": "resourceFile7377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7378", + "filePath": "resourceFile7378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7379", + "filePath": "resourceFile7379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7380", + "filePath": "resourceFile7380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7381", + "filePath": "resourceFile7381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7382", + "filePath": "resourceFile7382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7383", + "filePath": "resourceFile7383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7384", + "filePath": "resourceFile7384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7385", + "filePath": "resourceFile7385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7386", + "filePath": "resourceFile7386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7387", + "filePath": "resourceFile7387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7388", + "filePath": "resourceFile7388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7389", + "filePath": "resourceFile7389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7390", + "filePath": "resourceFile7390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7391", + "filePath": "resourceFile7391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7392", + "filePath": "resourceFile7392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7393", + "filePath": "resourceFile7393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7394", + "filePath": "resourceFile7394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7395", + "filePath": "resourceFile7395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7396", + "filePath": "resourceFile7396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7397", + "filePath": "resourceFile7397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7398", + "filePath": "resourceFile7398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7399", + "filePath": "resourceFile7399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7400", + "filePath": "resourceFile7400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7401", + "filePath": "resourceFile7401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7402", + "filePath": "resourceFile7402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7403", + "filePath": "resourceFile7403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7404", + "filePath": "resourceFile7404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7405", + "filePath": "resourceFile7405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7406", + "filePath": "resourceFile7406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7407", + "filePath": "resourceFile7407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7408", + "filePath": "resourceFile7408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7409", + "filePath": "resourceFile7409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7410", + "filePath": "resourceFile7410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7411", + "filePath": "resourceFile7411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7412", + "filePath": "resourceFile7412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7413", + "filePath": "resourceFile7413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7414", + "filePath": "resourceFile7414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7415", + "filePath": "resourceFile7415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7416", + "filePath": "resourceFile7416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7417", + "filePath": "resourceFile7417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7418", + "filePath": "resourceFile7418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7419", + "filePath": "resourceFile7419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7420", + "filePath": "resourceFile7420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7421", + "filePath": "resourceFile7421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7422", + "filePath": "resourceFile7422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7423", + "filePath": "resourceFile7423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7424", + "filePath": "resourceFile7424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7425", + "filePath": "resourceFile7425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7426", + "filePath": "resourceFile7426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7427", + "filePath": "resourceFile7427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7428", + "filePath": "resourceFile7428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7429", + "filePath": "resourceFile7429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7430", + "filePath": "resourceFile7430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7431", + "filePath": "resourceFile7431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7432", + "filePath": "resourceFile7432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7433", + "filePath": "resourceFile7433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7434", + "filePath": "resourceFile7434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7435", + "filePath": "resourceFile7435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7436", + "filePath": "resourceFile7436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7437", + "filePath": "resourceFile7437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7438", + "filePath": "resourceFile7438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7439", + "filePath": "resourceFile7439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7440", + "filePath": "resourceFile7440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7441", + "filePath": "resourceFile7441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7442", + "filePath": "resourceFile7442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7443", + "filePath": "resourceFile7443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7444", + "filePath": "resourceFile7444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7445", + "filePath": "resourceFile7445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7446", + "filePath": "resourceFile7446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7447", + "filePath": "resourceFile7447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7448", + "filePath": "resourceFile7448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7449", + "filePath": "resourceFile7449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7450", + "filePath": "resourceFile7450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7451", + "filePath": "resourceFile7451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7452", + "filePath": "resourceFile7452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7453", + "filePath": "resourceFile7453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7454", + "filePath": "resourceFile7454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7455", + "filePath": "resourceFile7455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7456", + "filePath": "resourceFile7456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7457", + "filePath": "resourceFile7457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7458", + "filePath": "resourceFile7458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7459", + "filePath": "resourceFile7459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7460", + "filePath": "resourceFile7460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7461", + "filePath": "resourceFile7461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7462", + "filePath": "resourceFile7462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7463", + "filePath": "resourceFile7463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7464", + "filePath": "resourceFile7464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7465", + "filePath": "resourceFile7465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7466", + "filePath": "resourceFile7466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7467", + "filePath": "resourceFile7467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7468", + "filePath": "resourceFile7468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7469", + "filePath": "resourceFile7469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7470", + "filePath": "resourceFile7470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7471", + "filePath": "resourceFile7471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7472", + "filePath": "resourceFile7472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7473", + "filePath": "resourceFile7473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7474", + "filePath": "resourceFile7474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7475", + "filePath": "resourceFile7475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7476", + "filePath": "resourceFile7476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7477", + "filePath": "resourceFile7477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7478", + "filePath": "resourceFile7478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7479", + "filePath": "resourceFile7479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7480", + "filePath": "resourceFile7480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7481", + "filePath": "resourceFile7481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7482", + "filePath": "resourceFile7482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7483", + "filePath": "resourceFile7483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7484", + "filePath": "resourceFile7484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7485", + "filePath": "resourceFile7485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7486", + "filePath": "resourceFile7486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7487", + "filePath": "resourceFile7487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7488", + "filePath": "resourceFile7488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7489", + "filePath": "resourceFile7489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7490", + "filePath": "resourceFile7490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7491", + "filePath": "resourceFile7491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7492", + "filePath": "resourceFile7492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7493", + "filePath": "resourceFile7493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7494", + "filePath": "resourceFile7494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7495", + "filePath": "resourceFile7495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7496", + "filePath": "resourceFile7496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7497", + "filePath": "resourceFile7497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7498", + "filePath": "resourceFile7498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7499", + "filePath": "resourceFile7499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7500", + "filePath": "resourceFile7500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7501", + "filePath": "resourceFile7501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7502", + "filePath": "resourceFile7502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7503", + "filePath": "resourceFile7503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7504", + "filePath": "resourceFile7504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7505", + "filePath": "resourceFile7505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7506", + "filePath": "resourceFile7506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7507", + "filePath": "resourceFile7507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7508", + "filePath": "resourceFile7508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7509", + "filePath": "resourceFile7509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7510", + "filePath": "resourceFile7510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7511", + "filePath": "resourceFile7511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7512", + "filePath": "resourceFile7512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7513", + "filePath": "resourceFile7513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7514", + "filePath": "resourceFile7514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7515", + "filePath": "resourceFile7515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7516", + "filePath": "resourceFile7516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7517", + "filePath": "resourceFile7517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7518", + "filePath": "resourceFile7518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7519", + "filePath": "resourceFile7519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7520", + "filePath": "resourceFile7520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7521", + "filePath": "resourceFile7521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7522", + "filePath": "resourceFile7522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7523", + "filePath": "resourceFile7523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7524", + "filePath": "resourceFile7524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7525", + "filePath": "resourceFile7525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7526", + "filePath": "resourceFile7526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7527", + "filePath": "resourceFile7527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7528", + "filePath": "resourceFile7528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7529", + "filePath": "resourceFile7529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7530", + "filePath": "resourceFile7530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7531", + "filePath": "resourceFile7531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7532", + "filePath": "resourceFile7532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7533", + "filePath": "resourceFile7533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7534", + "filePath": "resourceFile7534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7535", + "filePath": "resourceFile7535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7536", + "filePath": "resourceFile7536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7537", + "filePath": "resourceFile7537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7538", + "filePath": "resourceFile7538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7539", + "filePath": "resourceFile7539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7540", + "filePath": "resourceFile7540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7541", + "filePath": "resourceFile7541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7542", + "filePath": "resourceFile7542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7543", + "filePath": "resourceFile7543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7544", + "filePath": "resourceFile7544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7545", + "filePath": "resourceFile7545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7546", + "filePath": "resourceFile7546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7547", + "filePath": "resourceFile7547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7548", + "filePath": "resourceFile7548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7549", + "filePath": "resourceFile7549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7550", + "filePath": "resourceFile7550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7551", + "filePath": "resourceFile7551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7552", + "filePath": "resourceFile7552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7553", + "filePath": "resourceFile7553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7554", + "filePath": "resourceFile7554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7555", + "filePath": "resourceFile7555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7556", + "filePath": "resourceFile7556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7557", + "filePath": "resourceFile7557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7558", + "filePath": "resourceFile7558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7559", + "filePath": "resourceFile7559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7560", + "filePath": "resourceFile7560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7561", + "filePath": "resourceFile7561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7562", + "filePath": "resourceFile7562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7563", + "filePath": "resourceFile7563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7564", + "filePath": "resourceFile7564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7565", + "filePath": "resourceFile7565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7566", + "filePath": "resourceFile7566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7567", + "filePath": "resourceFile7567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7568", + "filePath": "resourceFile7568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7569", + "filePath": "resourceFile7569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7570", + "filePath": "resourceFile7570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7571", + "filePath": "resourceFile7571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7572", + "filePath": "resourceFile7572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7573", + "filePath": "resourceFile7573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7574", + "filePath": "resourceFile7574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7575", + "filePath": "resourceFile7575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7576", + "filePath": "resourceFile7576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7577", + "filePath": "resourceFile7577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7578", + "filePath": "resourceFile7578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7579", + "filePath": "resourceFile7579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7580", + "filePath": "resourceFile7580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7581", + "filePath": "resourceFile7581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7582", + "filePath": "resourceFile7582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7583", + "filePath": "resourceFile7583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7584", + "filePath": "resourceFile7584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7585", + "filePath": "resourceFile7585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7586", + "filePath": "resourceFile7586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7587", + "filePath": "resourceFile7587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7588", + "filePath": "resourceFile7588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7589", + "filePath": "resourceFile7589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7590", + "filePath": "resourceFile7590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7591", + "filePath": "resourceFile7591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7592", + "filePath": "resourceFile7592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7593", + "filePath": "resourceFile7593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7594", + "filePath": "resourceFile7594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7595", + "filePath": "resourceFile7595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7596", + "filePath": "resourceFile7596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7597", + "filePath": "resourceFile7597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7598", + "filePath": "resourceFile7598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7599", + "filePath": "resourceFile7599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7600", + "filePath": "resourceFile7600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7601", + "filePath": "resourceFile7601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7602", + "filePath": "resourceFile7602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7603", + "filePath": "resourceFile7603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7604", + "filePath": "resourceFile7604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7605", + "filePath": "resourceFile7605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7606", + "filePath": "resourceFile7606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7607", + "filePath": "resourceFile7607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7608", + "filePath": "resourceFile7608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7609", + "filePath": "resourceFile7609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7610", + "filePath": "resourceFile7610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7611", + "filePath": "resourceFile7611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7612", + "filePath": "resourceFile7612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7613", + "filePath": "resourceFile7613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7614", + "filePath": "resourceFile7614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7615", + "filePath": "resourceFile7615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7616", + "filePath": "resourceFile7616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7617", + "filePath": "resourceFile7617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7618", + "filePath": "resourceFile7618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7619", + "filePath": "resourceFile7619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7620", + "filePath": "resourceFile7620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7621", + "filePath": "resourceFile7621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7622", + "filePath": "resourceFile7622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7623", + "filePath": "resourceFile7623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7624", + "filePath": "resourceFile7624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7625", + "filePath": "resourceFile7625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7626", + "filePath": "resourceFile7626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7627", + "filePath": "resourceFile7627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7628", + "filePath": "resourceFile7628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7629", + "filePath": "resourceFile7629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7630", + "filePath": "resourceFile7630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7631", + "filePath": "resourceFile7631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7632", + "filePath": "resourceFile7632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7633", + "filePath": "resourceFile7633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7634", + "filePath": "resourceFile7634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7635", + "filePath": "resourceFile7635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7636", + "filePath": "resourceFile7636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7637", + "filePath": "resourceFile7637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7638", + "filePath": "resourceFile7638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7639", + "filePath": "resourceFile7639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7640", + "filePath": "resourceFile7640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7641", + "filePath": "resourceFile7641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7642", + "filePath": "resourceFile7642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7643", + "filePath": "resourceFile7643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7644", + "filePath": "resourceFile7644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7645", + "filePath": "resourceFile7645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7646", + "filePath": "resourceFile7646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7647", + "filePath": "resourceFile7647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7648", + "filePath": "resourceFile7648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7649", + "filePath": "resourceFile7649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7650", + "filePath": "resourceFile7650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7651", + "filePath": "resourceFile7651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7652", + "filePath": "resourceFile7652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7653", + "filePath": "resourceFile7653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7654", + "filePath": "resourceFile7654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7655", + "filePath": "resourceFile7655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7656", + "filePath": "resourceFile7656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7657", + "filePath": "resourceFile7657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7658", + "filePath": "resourceFile7658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7659", + "filePath": "resourceFile7659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7660", + "filePath": "resourceFile7660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7661", + "filePath": "resourceFile7661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7662", + "filePath": "resourceFile7662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7663", + "filePath": "resourceFile7663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7664", + "filePath": "resourceFile7664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7665", + "filePath": "resourceFile7665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7666", + "filePath": "resourceFile7666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7667", + "filePath": "resourceFile7667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7668", + "filePath": "resourceFile7668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7669", + "filePath": "resourceFile7669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7670", + "filePath": "resourceFile7670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7671", + "filePath": "resourceFile7671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7672", + "filePath": "resourceFile7672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7673", + "filePath": "resourceFile7673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7674", + "filePath": "resourceFile7674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7675", + "filePath": "resourceFile7675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7676", + "filePath": "resourceFile7676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7677", + "filePath": "resourceFile7677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7678", + "filePath": "resourceFile7678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7679", + "filePath": "resourceFile7679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7680", + "filePath": "resourceFile7680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7681", + "filePath": "resourceFile7681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7682", + "filePath": "resourceFile7682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7683", + "filePath": "resourceFile7683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7684", + "filePath": "resourceFile7684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7685", + "filePath": "resourceFile7685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7686", + "filePath": "resourceFile7686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7687", + "filePath": "resourceFile7687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7688", + "filePath": "resourceFile7688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7689", + "filePath": "resourceFile7689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7690", + "filePath": "resourceFile7690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7691", + "filePath": "resourceFile7691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7692", + "filePath": "resourceFile7692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7693", + "filePath": "resourceFile7693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7694", + "filePath": "resourceFile7694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7695", + "filePath": "resourceFile7695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7696", + "filePath": "resourceFile7696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7697", + "filePath": "resourceFile7697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7698", + "filePath": "resourceFile7698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7699", + "filePath": "resourceFile7699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7700", + "filePath": "resourceFile7700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7701", + "filePath": "resourceFile7701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7702", + "filePath": "resourceFile7702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7703", + "filePath": "resourceFile7703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7704", + "filePath": "resourceFile7704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7705", + "filePath": "resourceFile7705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7706", + "filePath": "resourceFile7706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7707", + "filePath": "resourceFile7707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7708", + "filePath": "resourceFile7708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7709", + "filePath": "resourceFile7709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7710", + "filePath": "resourceFile7710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7711", + "filePath": "resourceFile7711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7712", + "filePath": "resourceFile7712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7713", + "filePath": "resourceFile7713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7714", + "filePath": "resourceFile7714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7715", + "filePath": "resourceFile7715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7716", + "filePath": "resourceFile7716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7717", + "filePath": "resourceFile7717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7718", + "filePath": "resourceFile7718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7719", + "filePath": "resourceFile7719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7720", + "filePath": "resourceFile7720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7721", + "filePath": "resourceFile7721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7722", + "filePath": "resourceFile7722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7723", + "filePath": "resourceFile7723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7724", + "filePath": "resourceFile7724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7725", + "filePath": "resourceFile7725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7726", + "filePath": "resourceFile7726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7727", + "filePath": "resourceFile7727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7728", + "filePath": "resourceFile7728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7729", + "filePath": "resourceFile7729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7730", + "filePath": "resourceFile7730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7731", + "filePath": "resourceFile7731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7732", + "filePath": "resourceFile7732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7733", + "filePath": "resourceFile7733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7734", + "filePath": "resourceFile7734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7735", + "filePath": "resourceFile7735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7736", + "filePath": "resourceFile7736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7737", + "filePath": "resourceFile7737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7738", + "filePath": "resourceFile7738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7739", + "filePath": "resourceFile7739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7740", + "filePath": "resourceFile7740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7741", + "filePath": "resourceFile7741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7742", + "filePath": "resourceFile7742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7743", + "filePath": "resourceFile7743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7744", + "filePath": "resourceFile7744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7745", + "filePath": "resourceFile7745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7746", + "filePath": "resourceFile7746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7747", + "filePath": "resourceFile7747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7748", + "filePath": "resourceFile7748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7749", + "filePath": "resourceFile7749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7750", + "filePath": "resourceFile7750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7751", + "filePath": "resourceFile7751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7752", + "filePath": "resourceFile7752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7753", + "filePath": "resourceFile7753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7754", + "filePath": "resourceFile7754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7755", + "filePath": "resourceFile7755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7756", + "filePath": "resourceFile7756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7757", + "filePath": "resourceFile7757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7758", + "filePath": "resourceFile7758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7759", + "filePath": "resourceFile7759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7760", + "filePath": "resourceFile7760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7761", + "filePath": "resourceFile7761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7762", + "filePath": "resourceFile7762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7763", + "filePath": "resourceFile7763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7764", + "filePath": "resourceFile7764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7765", + "filePath": "resourceFile7765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7766", + "filePath": "resourceFile7766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7767", + "filePath": "resourceFile7767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7768", + "filePath": "resourceFile7768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7769", + "filePath": "resourceFile7769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7770", + "filePath": "resourceFile7770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7771", + "filePath": "resourceFile7771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7772", + "filePath": "resourceFile7772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7773", + "filePath": "resourceFile7773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7774", + "filePath": "resourceFile7774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7775", + "filePath": "resourceFile7775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7776", + "filePath": "resourceFile7776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7777", + "filePath": "resourceFile7777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7778", + "filePath": "resourceFile7778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7779", + "filePath": "resourceFile7779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7780", + "filePath": "resourceFile7780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7781", + "filePath": "resourceFile7781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7782", + "filePath": "resourceFile7782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7783", + "filePath": "resourceFile7783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7784", + "filePath": "resourceFile7784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7785", + "filePath": "resourceFile7785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7786", + "filePath": "resourceFile7786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7787", + "filePath": "resourceFile7787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7788", + "filePath": "resourceFile7788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7789", + "filePath": "resourceFile7789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7790", + "filePath": "resourceFile7790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7791", + "filePath": "resourceFile7791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7792", + "filePath": "resourceFile7792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7793", + "filePath": "resourceFile7793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7794", + "filePath": "resourceFile7794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7795", + "filePath": "resourceFile7795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7796", + "filePath": "resourceFile7796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7797", + "filePath": "resourceFile7797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7798", + "filePath": "resourceFile7798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7799", + "filePath": "resourceFile7799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7800", + "filePath": "resourceFile7800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7801", + "filePath": "resourceFile7801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7802", + "filePath": "resourceFile7802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7803", + "filePath": "resourceFile7803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7804", + "filePath": "resourceFile7804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7805", + "filePath": "resourceFile7805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7806", + "filePath": "resourceFile7806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7807", + "filePath": "resourceFile7807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7808", + "filePath": "resourceFile7808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7809", + "filePath": "resourceFile7809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7810", + "filePath": "resourceFile7810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7811", + "filePath": "resourceFile7811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7812", + "filePath": "resourceFile7812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7813", + "filePath": "resourceFile7813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7814", + "filePath": "resourceFile7814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7815", + "filePath": "resourceFile7815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7816", + "filePath": "resourceFile7816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7817", + "filePath": "resourceFile7817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7818", + "filePath": "resourceFile7818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7819", + "filePath": "resourceFile7819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7820", + "filePath": "resourceFile7820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7821", + "filePath": "resourceFile7821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7822", + "filePath": "resourceFile7822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7823", + "filePath": "resourceFile7823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7824", + "filePath": "resourceFile7824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7825", + "filePath": "resourceFile7825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7826", + "filePath": "resourceFile7826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7827", + "filePath": "resourceFile7827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7828", + "filePath": "resourceFile7828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7829", + "filePath": "resourceFile7829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7830", + "filePath": "resourceFile7830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7831", + "filePath": "resourceFile7831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7832", + "filePath": "resourceFile7832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7833", + "filePath": "resourceFile7833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7834", + "filePath": "resourceFile7834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7835", + "filePath": "resourceFile7835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7836", + "filePath": "resourceFile7836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7837", + "filePath": "resourceFile7837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7838", + "filePath": "resourceFile7838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7839", + "filePath": "resourceFile7839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7840", + "filePath": "resourceFile7840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7841", + "filePath": "resourceFile7841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7842", + "filePath": "resourceFile7842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7843", + "filePath": "resourceFile7843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7844", + "filePath": "resourceFile7844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7845", + "filePath": "resourceFile7845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7846", + "filePath": "resourceFile7846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7847", + "filePath": "resourceFile7847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7848", + "filePath": "resourceFile7848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7849", + "filePath": "resourceFile7849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7850", + "filePath": "resourceFile7850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7851", + "filePath": "resourceFile7851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7852", + "filePath": "resourceFile7852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7853", + "filePath": "resourceFile7853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7854", + "filePath": "resourceFile7854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7855", + "filePath": "resourceFile7855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7856", + "filePath": "resourceFile7856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7857", + "filePath": "resourceFile7857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7858", + "filePath": "resourceFile7858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7859", + "filePath": "resourceFile7859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7860", + "filePath": "resourceFile7860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7861", + "filePath": "resourceFile7861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7862", + "filePath": "resourceFile7862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7863", + "filePath": "resourceFile7863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7864", + "filePath": "resourceFile7864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7865", + "filePath": "resourceFile7865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7866", + "filePath": "resourceFile7866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7867", + "filePath": "resourceFile7867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7868", + "filePath": "resourceFile7868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7869", + "filePath": "resourceFile7869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7870", + "filePath": "resourceFile7870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7871", + "filePath": "resourceFile7871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7872", + "filePath": "resourceFile7872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7873", + "filePath": "resourceFile7873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7874", + "filePath": "resourceFile7874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7875", + "filePath": "resourceFile7875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7876", + "filePath": "resourceFile7876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7877", + "filePath": "resourceFile7877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7878", + "filePath": "resourceFile7878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7879", + "filePath": "resourceFile7879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7880", + "filePath": "resourceFile7880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7881", + "filePath": "resourceFile7881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7882", + "filePath": "resourceFile7882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7883", + "filePath": "resourceFile7883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7884", + "filePath": "resourceFile7884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7885", + "filePath": "resourceFile7885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7886", + "filePath": "resourceFile7886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7887", + "filePath": "resourceFile7887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7888", + "filePath": "resourceFile7888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7889", + "filePath": "resourceFile7889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7890", + "filePath": "resourceFile7890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7891", + "filePath": "resourceFile7891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7892", + "filePath": "resourceFile7892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7893", + "filePath": "resourceFile7893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7894", + "filePath": "resourceFile7894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7895", + "filePath": "resourceFile7895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7896", + "filePath": "resourceFile7896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7897", + "filePath": "resourceFile7897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7898", + "filePath": "resourceFile7898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7899", + "filePath": "resourceFile7899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7900", + "filePath": "resourceFile7900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7901", + "filePath": "resourceFile7901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7902", + "filePath": "resourceFile7902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7903", + "filePath": "resourceFile7903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7904", + "filePath": "resourceFile7904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7905", + "filePath": "resourceFile7905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7906", + "filePath": "resourceFile7906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7907", + "filePath": "resourceFile7907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7908", + "filePath": "resourceFile7908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7909", + "filePath": "resourceFile7909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7910", + "filePath": "resourceFile7910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7911", + "filePath": "resourceFile7911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7912", + "filePath": "resourceFile7912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7913", + "filePath": "resourceFile7913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7914", + "filePath": "resourceFile7914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7915", + "filePath": "resourceFile7915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7916", + "filePath": "resourceFile7916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7917", + "filePath": "resourceFile7917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7918", + "filePath": "resourceFile7918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7919", + "filePath": "resourceFile7919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7920", + "filePath": "resourceFile7920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7921", + "filePath": "resourceFile7921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7922", + "filePath": "resourceFile7922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7923", + "filePath": "resourceFile7923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7924", + "filePath": "resourceFile7924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7925", + "filePath": "resourceFile7925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7926", + "filePath": "resourceFile7926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7927", + "filePath": "resourceFile7927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7928", + "filePath": "resourceFile7928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7929", + "filePath": "resourceFile7929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7930", + "filePath": "resourceFile7930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7931", + "filePath": "resourceFile7931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7932", + "filePath": "resourceFile7932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7933", + "filePath": "resourceFile7933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7934", + "filePath": "resourceFile7934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7935", + "filePath": "resourceFile7935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7936", + "filePath": "resourceFile7936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7937", + "filePath": "resourceFile7937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7938", + "filePath": "resourceFile7938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7939", + "filePath": "resourceFile7939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7940", + "filePath": "resourceFile7940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7941", + "filePath": "resourceFile7941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7942", + "filePath": "resourceFile7942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7943", + "filePath": "resourceFile7943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7944", + "filePath": "resourceFile7944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7945", + "filePath": "resourceFile7945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7946", + "filePath": "resourceFile7946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7947", + "filePath": "resourceFile7947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7948", + "filePath": "resourceFile7948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7949", + "filePath": "resourceFile7949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7950", + "filePath": "resourceFile7950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7951", + "filePath": "resourceFile7951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7952", + "filePath": "resourceFile7952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7953", + "filePath": "resourceFile7953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7954", + "filePath": "resourceFile7954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7955", + "filePath": "resourceFile7955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7956", + "filePath": "resourceFile7956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7957", + "filePath": "resourceFile7957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7958", + "filePath": "resourceFile7958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7959", + "filePath": "resourceFile7959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7960", + "filePath": "resourceFile7960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7961", + "filePath": "resourceFile7961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7962", + "filePath": "resourceFile7962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7963", + "filePath": "resourceFile7963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7964", + "filePath": "resourceFile7964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7965", + "filePath": "resourceFile7965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7966", + "filePath": "resourceFile7966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7967", + "filePath": "resourceFile7967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7968", + "filePath": "resourceFile7968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7969", + "filePath": "resourceFile7969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7970", + "filePath": "resourceFile7970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7971", + "filePath": "resourceFile7971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7972", + "filePath": "resourceFile7972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7973", + "filePath": "resourceFile7973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7974", + "filePath": "resourceFile7974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7975", + "filePath": "resourceFile7975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7976", + "filePath": "resourceFile7976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7977", + "filePath": "resourceFile7977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7978", + "filePath": "resourceFile7978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7979", + "filePath": "resourceFile7979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7980", + "filePath": "resourceFile7980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7981", + "filePath": "resourceFile7981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7982", + "filePath": "resourceFile7982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7983", + "filePath": "resourceFile7983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7984", + "filePath": "resourceFile7984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7985", + "filePath": "resourceFile7985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7986", + "filePath": "resourceFile7986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7987", + "filePath": "resourceFile7987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7988", + "filePath": "resourceFile7988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7989", + "filePath": "resourceFile7989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7990", + "filePath": "resourceFile7990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7991", + "filePath": "resourceFile7991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7992", + "filePath": "resourceFile7992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7993", + "filePath": "resourceFile7993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7994", + "filePath": "resourceFile7994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7995", + "filePath": "resourceFile7995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7996", + "filePath": "resourceFile7996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7997", + "filePath": "resourceFile7997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7998", + "filePath": "resourceFile7998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7999", + "filePath": "resourceFile7999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8000", + "filePath": "resourceFile8000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8001", + "filePath": "resourceFile8001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8002", + "filePath": "resourceFile8002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8003", + "filePath": "resourceFile8003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8004", + "filePath": "resourceFile8004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8005", + "filePath": "resourceFile8005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8006", + "filePath": "resourceFile8006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8007", + "filePath": "resourceFile8007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8008", + "filePath": "resourceFile8008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8009", + "filePath": "resourceFile8009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8010", + "filePath": "resourceFile8010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8011", + "filePath": "resourceFile8011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8012", + "filePath": "resourceFile8012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8013", + "filePath": "resourceFile8013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8014", + "filePath": "resourceFile8014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8015", + "filePath": "resourceFile8015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8016", + "filePath": "resourceFile8016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8017", + "filePath": "resourceFile8017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8018", + "filePath": "resourceFile8018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8019", + "filePath": "resourceFile8019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8020", + "filePath": "resourceFile8020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8021", + "filePath": "resourceFile8021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8022", + "filePath": "resourceFile8022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8023", + "filePath": "resourceFile8023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8024", + "filePath": "resourceFile8024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8025", + "filePath": "resourceFile8025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8026", + "filePath": "resourceFile8026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8027", + "filePath": "resourceFile8027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8028", + "filePath": "resourceFile8028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8029", + "filePath": "resourceFile8029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8030", + "filePath": "resourceFile8030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8031", + "filePath": "resourceFile8031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8032", + "filePath": "resourceFile8032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8033", + "filePath": "resourceFile8033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8034", + "filePath": "resourceFile8034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8035", + "filePath": "resourceFile8035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8036", + "filePath": "resourceFile8036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8037", + "filePath": "resourceFile8037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8038", + "filePath": "resourceFile8038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8039", + "filePath": "resourceFile8039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8040", + "filePath": "resourceFile8040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8041", + "filePath": "resourceFile8041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8042", + "filePath": "resourceFile8042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8043", + "filePath": "resourceFile8043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8044", + "filePath": "resourceFile8044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8045", + "filePath": "resourceFile8045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8046", + "filePath": "resourceFile8046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8047", + "filePath": "resourceFile8047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8048", + "filePath": "resourceFile8048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8049", + "filePath": "resourceFile8049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8050", + "filePath": "resourceFile8050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8051", + "filePath": "resourceFile8051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8052", + "filePath": "resourceFile8052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8053", + "filePath": "resourceFile8053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8054", + "filePath": "resourceFile8054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8055", + "filePath": "resourceFile8055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8056", + "filePath": "resourceFile8056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8057", + "filePath": "resourceFile8057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8058", + "filePath": "resourceFile8058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8059", + "filePath": "resourceFile8059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8060", + "filePath": "resourceFile8060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8061", + "filePath": "resourceFile8061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8062", + "filePath": "resourceFile8062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8063", + "filePath": "resourceFile8063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8064", + "filePath": "resourceFile8064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8065", + "filePath": "resourceFile8065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8066", + "filePath": "resourceFile8066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8067", + "filePath": "resourceFile8067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8068", + "filePath": "resourceFile8068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8069", + "filePath": "resourceFile8069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8070", + "filePath": "resourceFile8070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8071", + "filePath": "resourceFile8071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8072", + "filePath": "resourceFile8072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8073", + "filePath": "resourceFile8073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8074", + "filePath": "resourceFile8074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8075", + "filePath": "resourceFile8075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8076", + "filePath": "resourceFile8076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8077", + "filePath": "resourceFile8077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8078", + "filePath": "resourceFile8078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8079", + "filePath": "resourceFile8079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8080", + "filePath": "resourceFile8080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8081", + "filePath": "resourceFile8081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8082", + "filePath": "resourceFile8082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8083", + "filePath": "resourceFile8083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8084", + "filePath": "resourceFile8084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8085", + "filePath": "resourceFile8085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8086", + "filePath": "resourceFile8086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8087", + "filePath": "resourceFile8087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8088", + "filePath": "resourceFile8088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8089", + "filePath": "resourceFile8089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8090", + "filePath": "resourceFile8090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8091", + "filePath": "resourceFile8091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8092", + "filePath": "resourceFile8092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8093", + "filePath": "resourceFile8093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8094", + "filePath": "resourceFile8094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8095", + "filePath": "resourceFile8095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8096", + "filePath": "resourceFile8096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8097", + "filePath": "resourceFile8097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8098", + "filePath": "resourceFile8098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8099", + "filePath": "resourceFile8099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8100", + "filePath": "resourceFile8100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8101", + "filePath": "resourceFile8101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8102", + "filePath": "resourceFile8102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8103", + "filePath": "resourceFile8103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8104", + "filePath": "resourceFile8104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8105", + "filePath": "resourceFile8105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8106", + "filePath": "resourceFile8106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8107", + "filePath": "resourceFile8107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8108", + "filePath": "resourceFile8108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8109", + "filePath": "resourceFile8109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8110", + "filePath": "resourceFile8110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8111", + "filePath": "resourceFile8111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8112", + "filePath": "resourceFile8112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8113", + "filePath": "resourceFile8113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8114", + "filePath": "resourceFile8114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8115", + "filePath": "resourceFile8115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8116", + "filePath": "resourceFile8116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8117", + "filePath": "resourceFile8117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8118", + "filePath": "resourceFile8118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8119", + "filePath": "resourceFile8119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8120", + "filePath": "resourceFile8120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8121", + "filePath": "resourceFile8121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8122", + "filePath": "resourceFile8122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8123", + "filePath": "resourceFile8123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8124", + "filePath": "resourceFile8124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8125", + "filePath": "resourceFile8125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8126", + "filePath": "resourceFile8126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8127", + "filePath": "resourceFile8127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8128", + "filePath": "resourceFile8128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8129", + "filePath": "resourceFile8129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8130", + "filePath": "resourceFile8130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8131", + "filePath": "resourceFile8131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8132", + "filePath": "resourceFile8132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8133", + "filePath": "resourceFile8133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8134", + "filePath": "resourceFile8134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8135", + "filePath": "resourceFile8135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8136", + "filePath": "resourceFile8136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8137", + "filePath": "resourceFile8137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8138", + "filePath": "resourceFile8138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8139", + "filePath": "resourceFile8139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8140", + "filePath": "resourceFile8140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8141", + "filePath": "resourceFile8141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8142", + "filePath": "resourceFile8142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8143", + "filePath": "resourceFile8143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8144", + "filePath": "resourceFile8144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8145", + "filePath": "resourceFile8145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8146", + "filePath": "resourceFile8146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8147", + "filePath": "resourceFile8147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8148", + "filePath": "resourceFile8148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8149", + "filePath": "resourceFile8149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8150", + "filePath": "resourceFile8150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8151", + "filePath": "resourceFile8151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8152", + "filePath": "resourceFile8152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8153", + "filePath": "resourceFile8153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8154", + "filePath": "resourceFile8154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8155", + "filePath": "resourceFile8155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8156", + "filePath": "resourceFile8156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8157", + "filePath": "resourceFile8157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8158", + "filePath": "resourceFile8158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8159", + "filePath": "resourceFile8159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8160", + "filePath": "resourceFile8160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8161", + "filePath": "resourceFile8161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8162", + "filePath": "resourceFile8162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8163", + "filePath": "resourceFile8163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8164", + "filePath": "resourceFile8164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8165", + "filePath": "resourceFile8165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8166", + "filePath": "resourceFile8166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8167", + "filePath": "resourceFile8167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8168", + "filePath": "resourceFile8168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8169", + "filePath": "resourceFile8169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8170", + "filePath": "resourceFile8170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8171", + "filePath": "resourceFile8171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8172", + "filePath": "resourceFile8172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8173", + "filePath": "resourceFile8173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8174", + "filePath": "resourceFile8174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8175", + "filePath": "resourceFile8175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8176", + "filePath": "resourceFile8176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8177", + "filePath": "resourceFile8177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8178", + "filePath": "resourceFile8178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8179", + "filePath": "resourceFile8179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8180", + "filePath": "resourceFile8180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8181", + "filePath": "resourceFile8181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8182", + "filePath": "resourceFile8182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8183", + "filePath": "resourceFile8183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8184", + "filePath": "resourceFile8184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8185", + "filePath": "resourceFile8185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8186", + "filePath": "resourceFile8186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8187", + "filePath": "resourceFile8187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8188", + "filePath": "resourceFile8188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8189", + "filePath": "resourceFile8189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8190", + "filePath": "resourceFile8190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8191", + "filePath": "resourceFile8191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8192", + "filePath": "resourceFile8192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8193", + "filePath": "resourceFile8193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8194", + "filePath": "resourceFile8194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8195", + "filePath": "resourceFile8195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8196", + "filePath": "resourceFile8196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8197", + "filePath": "resourceFile8197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8198", + "filePath": "resourceFile8198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8199", + "filePath": "resourceFile8199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8200", + "filePath": "resourceFile8200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8201", + "filePath": "resourceFile8201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8202", + "filePath": "resourceFile8202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8203", + "filePath": "resourceFile8203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8204", + "filePath": "resourceFile8204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8205", + "filePath": "resourceFile8205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8206", + "filePath": "resourceFile8206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8207", + "filePath": "resourceFile8207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8208", + "filePath": "resourceFile8208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8209", + "filePath": "resourceFile8209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8210", + "filePath": "resourceFile8210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8211", + "filePath": "resourceFile8211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8212", + "filePath": "resourceFile8212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8213", + "filePath": "resourceFile8213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8214", + "filePath": "resourceFile8214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8215", + "filePath": "resourceFile8215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8216", + "filePath": "resourceFile8216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8217", + "filePath": "resourceFile8217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8218", + "filePath": "resourceFile8218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8219", + "filePath": "resourceFile8219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8220", + "filePath": "resourceFile8220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8221", + "filePath": "resourceFile8221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8222", + "filePath": "resourceFile8222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8223", + "filePath": "resourceFile8223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8224", + "filePath": "resourceFile8224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8225", + "filePath": "resourceFile8225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8226", + "filePath": "resourceFile8226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8227", + "filePath": "resourceFile8227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8228", + "filePath": "resourceFile8228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8229", + "filePath": "resourceFile8229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8230", + "filePath": "resourceFile8230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8231", + "filePath": "resourceFile8231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8232", + "filePath": "resourceFile8232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8233", + "filePath": "resourceFile8233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8234", + "filePath": "resourceFile8234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8235", + "filePath": "resourceFile8235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8236", + "filePath": "resourceFile8236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8237", + "filePath": "resourceFile8237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8238", + "filePath": "resourceFile8238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8239", + "filePath": "resourceFile8239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8240", + "filePath": "resourceFile8240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8241", + "filePath": "resourceFile8241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8242", + "filePath": "resourceFile8242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8243", + "filePath": "resourceFile8243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8244", + "filePath": "resourceFile8244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8245", + "filePath": "resourceFile8245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8246", + "filePath": "resourceFile8246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8247", + "filePath": "resourceFile8247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8248", + "filePath": "resourceFile8248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8249", + "filePath": "resourceFile8249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8250", + "filePath": "resourceFile8250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8251", + "filePath": "resourceFile8251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8252", + "filePath": "resourceFile8252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8253", + "filePath": "resourceFile8253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8254", + "filePath": "resourceFile8254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8255", + "filePath": "resourceFile8255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8256", + "filePath": "resourceFile8256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8257", + "filePath": "resourceFile8257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8258", + "filePath": "resourceFile8258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8259", + "filePath": "resourceFile8259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8260", + "filePath": "resourceFile8260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8261", + "filePath": "resourceFile8261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8262", + "filePath": "resourceFile8262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8263", + "filePath": "resourceFile8263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8264", + "filePath": "resourceFile8264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8265", + "filePath": "resourceFile8265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8266", + "filePath": "resourceFile8266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8267", + "filePath": "resourceFile8267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8268", + "filePath": "resourceFile8268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8269", + "filePath": "resourceFile8269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8270", + "filePath": "resourceFile8270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8271", + "filePath": "resourceFile8271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8272", + "filePath": "resourceFile8272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8273", + "filePath": "resourceFile8273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8274", + "filePath": "resourceFile8274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8275", + "filePath": "resourceFile8275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8276", + "filePath": "resourceFile8276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8277", + "filePath": "resourceFile8277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8278", + "filePath": "resourceFile8278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8279", + "filePath": "resourceFile8279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8280", + "filePath": "resourceFile8280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8281", + "filePath": "resourceFile8281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8282", + "filePath": "resourceFile8282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8283", + "filePath": "resourceFile8283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8284", + "filePath": "resourceFile8284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8285", + "filePath": "resourceFile8285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8286", + "filePath": "resourceFile8286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8287", + "filePath": "resourceFile8287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8288", + "filePath": "resourceFile8288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8289", + "filePath": "resourceFile8289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8290", + "filePath": "resourceFile8290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8291", + "filePath": "resourceFile8291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8292", + "filePath": "resourceFile8292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8293", + "filePath": "resourceFile8293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8294", + "filePath": "resourceFile8294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8295", + "filePath": "resourceFile8295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8296", + "filePath": "resourceFile8296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8297", + "filePath": "resourceFile8297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8298", + "filePath": "resourceFile8298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8299", + "filePath": "resourceFile8299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8300", + "filePath": "resourceFile8300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8301", + "filePath": "resourceFile8301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8302", + "filePath": "resourceFile8302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8303", + "filePath": "resourceFile8303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8304", + "filePath": "resourceFile8304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8305", + "filePath": "resourceFile8305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8306", + "filePath": "resourceFile8306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8307", + "filePath": "resourceFile8307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8308", + "filePath": "resourceFile8308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8309", + "filePath": "resourceFile8309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8310", + "filePath": "resourceFile8310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8311", + "filePath": "resourceFile8311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8312", + "filePath": "resourceFile8312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8313", + "filePath": "resourceFile8313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8314", + "filePath": "resourceFile8314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8315", + "filePath": "resourceFile8315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8316", + "filePath": "resourceFile8316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8317", + "filePath": "resourceFile8317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8318", + "filePath": "resourceFile8318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8319", + "filePath": "resourceFile8319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8320", + "filePath": "resourceFile8320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8321", + "filePath": "resourceFile8321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8322", + "filePath": "resourceFile8322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8323", + "filePath": "resourceFile8323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8324", + "filePath": "resourceFile8324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8325", + "filePath": "resourceFile8325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8326", + "filePath": "resourceFile8326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8327", + "filePath": "resourceFile8327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8328", + "filePath": "resourceFile8328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8329", + "filePath": "resourceFile8329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8330", + "filePath": "resourceFile8330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8331", + "filePath": "resourceFile8331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8332", + "filePath": "resourceFile8332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8333", + "filePath": "resourceFile8333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8334", + "filePath": "resourceFile8334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8335", + "filePath": "resourceFile8335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8336", + "filePath": "resourceFile8336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8337", + "filePath": "resourceFile8337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8338", + "filePath": "resourceFile8338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8339", + "filePath": "resourceFile8339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8340", + "filePath": "resourceFile8340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8341", + "filePath": "resourceFile8341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8342", + "filePath": "resourceFile8342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8343", + "filePath": "resourceFile8343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8344", + "filePath": "resourceFile8344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8345", + "filePath": "resourceFile8345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8346", + "filePath": "resourceFile8346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8347", + "filePath": "resourceFile8347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8348", + "filePath": "resourceFile8348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8349", + "filePath": "resourceFile8349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8350", + "filePath": "resourceFile8350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8351", + "filePath": "resourceFile8351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8352", + "filePath": "resourceFile8352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8353", + "filePath": "resourceFile8353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8354", + "filePath": "resourceFile8354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8355", + "filePath": "resourceFile8355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8356", + "filePath": "resourceFile8356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8357", + "filePath": "resourceFile8357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8358", + "filePath": "resourceFile8358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8359", + "filePath": "resourceFile8359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8360", + "filePath": "resourceFile8360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8361", + "filePath": "resourceFile8361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8362", + "filePath": "resourceFile8362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8363", + "filePath": "resourceFile8363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8364", + "filePath": "resourceFile8364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8365", + "filePath": "resourceFile8365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8366", + "filePath": "resourceFile8366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8367", + "filePath": "resourceFile8367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8368", + "filePath": "resourceFile8368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8369", + "filePath": "resourceFile8369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8370", + "filePath": "resourceFile8370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8371", + "filePath": "resourceFile8371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8372", + "filePath": "resourceFile8372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8373", + "filePath": "resourceFile8373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8374", + "filePath": "resourceFile8374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8375", + "filePath": "resourceFile8375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8376", + "filePath": "resourceFile8376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8377", + "filePath": "resourceFile8377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8378", + "filePath": "resourceFile8378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8379", + "filePath": "resourceFile8379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8380", + "filePath": "resourceFile8380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8381", + "filePath": "resourceFile8381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8382", + "filePath": "resourceFile8382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8383", + "filePath": "resourceFile8383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8384", + "filePath": "resourceFile8384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8385", + "filePath": "resourceFile8385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8386", + "filePath": "resourceFile8386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8387", + "filePath": "resourceFile8387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8388", + "filePath": "resourceFile8388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8389", + "filePath": "resourceFile8389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8390", + "filePath": "resourceFile8390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8391", + "filePath": "resourceFile8391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8392", + "filePath": "resourceFile8392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8393", + "filePath": "resourceFile8393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8394", + "filePath": "resourceFile8394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8395", + "filePath": "resourceFile8395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8396", + "filePath": "resourceFile8396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8397", + "filePath": "resourceFile8397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8398", + "filePath": "resourceFile8398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8399", + "filePath": "resourceFile8399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8400", + "filePath": "resourceFile8400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8401", + "filePath": "resourceFile8401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8402", + "filePath": "resourceFile8402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8403", + "filePath": "resourceFile8403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8404", + "filePath": "resourceFile8404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8405", + "filePath": "resourceFile8405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8406", + "filePath": "resourceFile8406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8407", + "filePath": "resourceFile8407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8408", + "filePath": "resourceFile8408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8409", + "filePath": "resourceFile8409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8410", + "filePath": "resourceFile8410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8411", + "filePath": "resourceFile8411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8412", + "filePath": "resourceFile8412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8413", + "filePath": "resourceFile8413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8414", + "filePath": "resourceFile8414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8415", + "filePath": "resourceFile8415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8416", + "filePath": "resourceFile8416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8417", + "filePath": "resourceFile8417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8418", + "filePath": "resourceFile8418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8419", + "filePath": "resourceFile8419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8420", + "filePath": "resourceFile8420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8421", + "filePath": "resourceFile8421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8422", + "filePath": "resourceFile8422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8423", + "filePath": "resourceFile8423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8424", + "filePath": "resourceFile8424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8425", + "filePath": "resourceFile8425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8426", + "filePath": "resourceFile8426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8427", + "filePath": "resourceFile8427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8428", + "filePath": "resourceFile8428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8429", + "filePath": "resourceFile8429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8430", + "filePath": "resourceFile8430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8431", + "filePath": "resourceFile8431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8432", + "filePath": "resourceFile8432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8433", + "filePath": "resourceFile8433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8434", + "filePath": "resourceFile8434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8435", + "filePath": "resourceFile8435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8436", + "filePath": "resourceFile8436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8437", + "filePath": "resourceFile8437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8438", + "filePath": "resourceFile8438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8439", + "filePath": "resourceFile8439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8440", + "filePath": "resourceFile8440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8441", + "filePath": "resourceFile8441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8442", + "filePath": "resourceFile8442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8443", + "filePath": "resourceFile8443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8444", + "filePath": "resourceFile8444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8445", + "filePath": "resourceFile8445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8446", + "filePath": "resourceFile8446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8447", + "filePath": "resourceFile8447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8448", + "filePath": "resourceFile8448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8449", + "filePath": "resourceFile8449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8450", + "filePath": "resourceFile8450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8451", + "filePath": "resourceFile8451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8452", + "filePath": "resourceFile8452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8453", + "filePath": "resourceFile8453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8454", + "filePath": "resourceFile8454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8455", + "filePath": "resourceFile8455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8456", + "filePath": "resourceFile8456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8457", + "filePath": "resourceFile8457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8458", + "filePath": "resourceFile8458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8459", + "filePath": "resourceFile8459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8460", + "filePath": "resourceFile8460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8461", + "filePath": "resourceFile8461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8462", + "filePath": "resourceFile8462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8463", + "filePath": "resourceFile8463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8464", + "filePath": "resourceFile8464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8465", + "filePath": "resourceFile8465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8466", + "filePath": "resourceFile8466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8467", + "filePath": "resourceFile8467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8468", + "filePath": "resourceFile8468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8469", + "filePath": "resourceFile8469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8470", + "filePath": "resourceFile8470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8471", + "filePath": "resourceFile8471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8472", + "filePath": "resourceFile8472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8473", + "filePath": "resourceFile8473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8474", + "filePath": "resourceFile8474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8475", + "filePath": "resourceFile8475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8476", + "filePath": "resourceFile8476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8477", + "filePath": "resourceFile8477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8478", + "filePath": "resourceFile8478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8479", + "filePath": "resourceFile8479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8480", + "filePath": "resourceFile8480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8481", + "filePath": "resourceFile8481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8482", + "filePath": "resourceFile8482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8483", + "filePath": "resourceFile8483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8484", + "filePath": "resourceFile8484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8485", + "filePath": "resourceFile8485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8486", + "filePath": "resourceFile8486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8487", + "filePath": "resourceFile8487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8488", + "filePath": "resourceFile8488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8489", + "filePath": "resourceFile8489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8490", + "filePath": "resourceFile8490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8491", + "filePath": "resourceFile8491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8492", + "filePath": "resourceFile8492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8493", + "filePath": "resourceFile8493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8494", + "filePath": "resourceFile8494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8495", + "filePath": "resourceFile8495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8496", + "filePath": "resourceFile8496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8497", + "filePath": "resourceFile8497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8498", + "filePath": "resourceFile8498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8499", + "filePath": "resourceFile8499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8500", + "filePath": "resourceFile8500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8501", + "filePath": "resourceFile8501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8502", + "filePath": "resourceFile8502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8503", + "filePath": "resourceFile8503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8504", + "filePath": "resourceFile8504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8505", + "filePath": "resourceFile8505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8506", + "filePath": "resourceFile8506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8507", + "filePath": "resourceFile8507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8508", + "filePath": "resourceFile8508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8509", + "filePath": "resourceFile8509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8510", + "filePath": "resourceFile8510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8511", + "filePath": "resourceFile8511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8512", + "filePath": "resourceFile8512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8513", + "filePath": "resourceFile8513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8514", + "filePath": "resourceFile8514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8515", + "filePath": "resourceFile8515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8516", + "filePath": "resourceFile8516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8517", + "filePath": "resourceFile8517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8518", + "filePath": "resourceFile8518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8519", + "filePath": "resourceFile8519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8520", + "filePath": "resourceFile8520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8521", + "filePath": "resourceFile8521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8522", + "filePath": "resourceFile8522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8523", + "filePath": "resourceFile8523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8524", + "filePath": "resourceFile8524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8525", + "filePath": "resourceFile8525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8526", + "filePath": "resourceFile8526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8527", + "filePath": "resourceFile8527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8528", + "filePath": "resourceFile8528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8529", + "filePath": "resourceFile8529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8530", + "filePath": "resourceFile8530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8531", + "filePath": "resourceFile8531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8532", + "filePath": "resourceFile8532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8533", + "filePath": "resourceFile8533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8534", + "filePath": "resourceFile8534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8535", + "filePath": "resourceFile8535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8536", + "filePath": "resourceFile8536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8537", + "filePath": "resourceFile8537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8538", + "filePath": "resourceFile8538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8539", + "filePath": "resourceFile8539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8540", + "filePath": "resourceFile8540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8541", + "filePath": "resourceFile8541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8542", + "filePath": "resourceFile8542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8543", + "filePath": "resourceFile8543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8544", + "filePath": "resourceFile8544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8545", + "filePath": "resourceFile8545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8546", + "filePath": "resourceFile8546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8547", + "filePath": "resourceFile8547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8548", + "filePath": "resourceFile8548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8549", + "filePath": "resourceFile8549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8550", + "filePath": "resourceFile8550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8551", + "filePath": "resourceFile8551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8552", + "filePath": "resourceFile8552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8553", + "filePath": "resourceFile8553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8554", + "filePath": "resourceFile8554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8555", + "filePath": "resourceFile8555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8556", + "filePath": "resourceFile8556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8557", + "filePath": "resourceFile8557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8558", + "filePath": "resourceFile8558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8559", + "filePath": "resourceFile8559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8560", + "filePath": "resourceFile8560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8561", + "filePath": "resourceFile8561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8562", + "filePath": "resourceFile8562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8563", + "filePath": "resourceFile8563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8564", + "filePath": "resourceFile8564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8565", + "filePath": "resourceFile8565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8566", + "filePath": "resourceFile8566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8567", + "filePath": "resourceFile8567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8568", + "filePath": "resourceFile8568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8569", + "filePath": "resourceFile8569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8570", + "filePath": "resourceFile8570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8571", + "filePath": "resourceFile8571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8572", + "filePath": "resourceFile8572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8573", + "filePath": "resourceFile8573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8574", + "filePath": "resourceFile8574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8575", + "filePath": "resourceFile8575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8576", + "filePath": "resourceFile8576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8577", + "filePath": "resourceFile8577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8578", + "filePath": "resourceFile8578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8579", + "filePath": "resourceFile8579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8580", + "filePath": "resourceFile8580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8581", + "filePath": "resourceFile8581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8582", + "filePath": "resourceFile8582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8583", + "filePath": "resourceFile8583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8584", + "filePath": "resourceFile8584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8585", + "filePath": "resourceFile8585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8586", + "filePath": "resourceFile8586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8587", + "filePath": "resourceFile8587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8588", + "filePath": "resourceFile8588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8589", + "filePath": "resourceFile8589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8590", + "filePath": "resourceFile8590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8591", + "filePath": "resourceFile8591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8592", + "filePath": "resourceFile8592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8593", + "filePath": "resourceFile8593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8594", + "filePath": "resourceFile8594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8595", + "filePath": "resourceFile8595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8596", + "filePath": "resourceFile8596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8597", + "filePath": "resourceFile8597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8598", + "filePath": "resourceFile8598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8599", + "filePath": "resourceFile8599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8600", + "filePath": "resourceFile8600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8601", + "filePath": "resourceFile8601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8602", + "filePath": "resourceFile8602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8603", + "filePath": "resourceFile8603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8604", + "filePath": "resourceFile8604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8605", + "filePath": "resourceFile8605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8606", + "filePath": "resourceFile8606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8607", + "filePath": "resourceFile8607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8608", + "filePath": "resourceFile8608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8609", + "filePath": "resourceFile8609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8610", + "filePath": "resourceFile8610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8611", + "filePath": "resourceFile8611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8612", + "filePath": "resourceFile8612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8613", + "filePath": "resourceFile8613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8614", + "filePath": "resourceFile8614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8615", + "filePath": "resourceFile8615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8616", + "filePath": "resourceFile8616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8617", + "filePath": "resourceFile8617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8618", + "filePath": "resourceFile8618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8619", + "filePath": "resourceFile8619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8620", + "filePath": "resourceFile8620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8621", + "filePath": "resourceFile8621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8622", + "filePath": "resourceFile8622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8623", + "filePath": "resourceFile8623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8624", + "filePath": "resourceFile8624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8625", + "filePath": "resourceFile8625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8626", + "filePath": "resourceFile8626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8627", + "filePath": "resourceFile8627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8628", + "filePath": "resourceFile8628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8629", + "filePath": "resourceFile8629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8630", + "filePath": "resourceFile8630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8631", + "filePath": "resourceFile8631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8632", + "filePath": "resourceFile8632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8633", + "filePath": "resourceFile8633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8634", + "filePath": "resourceFile8634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8635", + "filePath": "resourceFile8635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8636", + "filePath": "resourceFile8636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8637", + "filePath": "resourceFile8637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8638", + "filePath": "resourceFile8638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8639", + "filePath": "resourceFile8639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8640", + "filePath": "resourceFile8640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8641", + "filePath": "resourceFile8641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8642", + "filePath": "resourceFile8642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8643", + "filePath": "resourceFile8643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8644", + "filePath": "resourceFile8644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8645", + "filePath": "resourceFile8645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8646", + "filePath": "resourceFile8646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8647", + "filePath": "resourceFile8647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8648", + "filePath": "resourceFile8648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8649", + "filePath": "resourceFile8649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8650", + "filePath": "resourceFile8650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8651", + "filePath": "resourceFile8651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8652", + "filePath": "resourceFile8652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8653", + "filePath": "resourceFile8653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8654", + "filePath": "resourceFile8654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8655", + "filePath": "resourceFile8655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8656", + "filePath": "resourceFile8656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8657", + "filePath": "resourceFile8657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8658", + "filePath": "resourceFile8658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8659", + "filePath": "resourceFile8659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8660", + "filePath": "resourceFile8660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8661", + "filePath": "resourceFile8661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8662", + "filePath": "resourceFile8662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8663", + "filePath": "resourceFile8663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8664", + "filePath": "resourceFile8664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8665", + "filePath": "resourceFile8665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8666", + "filePath": "resourceFile8666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8667", + "filePath": "resourceFile8667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8668", + "filePath": "resourceFile8668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8669", + "filePath": "resourceFile8669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8670", + "filePath": "resourceFile8670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8671", + "filePath": "resourceFile8671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8672", + "filePath": "resourceFile8672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8673", + "filePath": "resourceFile8673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8674", + "filePath": "resourceFile8674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8675", + "filePath": "resourceFile8675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8676", + "filePath": "resourceFile8676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8677", + "filePath": "resourceFile8677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8678", + "filePath": "resourceFile8678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8679", + "filePath": "resourceFile8679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8680", + "filePath": "resourceFile8680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8681", + "filePath": "resourceFile8681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8682", + "filePath": "resourceFile8682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8683", + "filePath": "resourceFile8683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8684", + "filePath": "resourceFile8684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8685", + "filePath": "resourceFile8685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8686", + "filePath": "resourceFile8686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8687", + "filePath": "resourceFile8687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8688", + "filePath": "resourceFile8688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8689", + "filePath": "resourceFile8689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8690", + "filePath": "resourceFile8690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8691", + "filePath": "resourceFile8691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8692", + "filePath": "resourceFile8692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8693", + "filePath": "resourceFile8693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8694", + "filePath": "resourceFile8694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8695", + "filePath": "resourceFile8695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8696", + "filePath": "resourceFile8696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8697", + "filePath": "resourceFile8697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8698", + "filePath": "resourceFile8698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8699", + "filePath": "resourceFile8699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8700", + "filePath": "resourceFile8700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8701", + "filePath": "resourceFile8701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8702", + "filePath": "resourceFile8702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8703", + "filePath": "resourceFile8703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8704", + "filePath": "resourceFile8704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8705", + "filePath": "resourceFile8705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8706", + "filePath": "resourceFile8706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8707", + "filePath": "resourceFile8707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8708", + "filePath": "resourceFile8708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8709", + "filePath": "resourceFile8709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8710", + "filePath": "resourceFile8710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8711", + "filePath": "resourceFile8711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8712", + "filePath": "resourceFile8712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8713", + "filePath": "resourceFile8713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8714", + "filePath": "resourceFile8714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8715", + "filePath": "resourceFile8715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8716", + "filePath": "resourceFile8716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8717", + "filePath": "resourceFile8717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8718", + "filePath": "resourceFile8718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8719", + "filePath": "resourceFile8719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8720", + "filePath": "resourceFile8720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8721", + "filePath": "resourceFile8721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8722", + "filePath": "resourceFile8722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8723", + "filePath": "resourceFile8723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8724", + "filePath": "resourceFile8724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8725", + "filePath": "resourceFile8725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8726", + "filePath": "resourceFile8726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8727", + "filePath": "resourceFile8727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8728", + "filePath": "resourceFile8728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8729", + "filePath": "resourceFile8729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8730", + "filePath": "resourceFile8730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8731", + "filePath": "resourceFile8731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8732", + "filePath": "resourceFile8732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8733", + "filePath": "resourceFile8733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8734", + "filePath": "resourceFile8734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8735", + "filePath": "resourceFile8735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8736", + "filePath": "resourceFile8736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8737", + "filePath": "resourceFile8737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8738", + "filePath": "resourceFile8738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8739", + "filePath": "resourceFile8739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8740", + "filePath": "resourceFile8740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8741", + "filePath": "resourceFile8741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8742", + "filePath": "resourceFile8742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8743", + "filePath": "resourceFile8743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8744", + "filePath": "resourceFile8744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8745", + "filePath": "resourceFile8745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8746", + "filePath": "resourceFile8746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8747", + "filePath": "resourceFile8747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8748", + "filePath": "resourceFile8748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8749", + "filePath": "resourceFile8749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8750", + "filePath": "resourceFile8750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8751", + "filePath": "resourceFile8751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8752", + "filePath": "resourceFile8752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8753", + "filePath": "resourceFile8753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8754", + "filePath": "resourceFile8754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8755", + "filePath": "resourceFile8755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8756", + "filePath": "resourceFile8756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8757", + "filePath": "resourceFile8757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8758", + "filePath": "resourceFile8758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8759", + "filePath": "resourceFile8759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8760", + "filePath": "resourceFile8760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8761", + "filePath": "resourceFile8761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8762", + "filePath": "resourceFile8762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8763", + "filePath": "resourceFile8763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8764", + "filePath": "resourceFile8764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8765", + "filePath": "resourceFile8765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8766", + "filePath": "resourceFile8766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8767", + "filePath": "resourceFile8767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8768", + "filePath": "resourceFile8768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8769", + "filePath": "resourceFile8769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8770", + "filePath": "resourceFile8770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8771", + "filePath": "resourceFile8771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8772", + "filePath": "resourceFile8772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8773", + "filePath": "resourceFile8773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8774", + "filePath": "resourceFile8774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8775", + "filePath": "resourceFile8775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8776", + "filePath": "resourceFile8776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8777", + "filePath": "resourceFile8777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8778", + "filePath": "resourceFile8778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8779", + "filePath": "resourceFile8779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8780", + "filePath": "resourceFile8780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8781", + "filePath": "resourceFile8781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8782", + "filePath": "resourceFile8782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8783", + "filePath": "resourceFile8783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8784", + "filePath": "resourceFile8784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8785", + "filePath": "resourceFile8785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8786", + "filePath": "resourceFile8786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8787", + "filePath": "resourceFile8787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8788", + "filePath": "resourceFile8788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8789", + "filePath": "resourceFile8789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8790", + "filePath": "resourceFile8790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8791", + "filePath": "resourceFile8791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8792", + "filePath": "resourceFile8792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8793", + "filePath": "resourceFile8793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8794", + "filePath": "resourceFile8794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8795", + "filePath": "resourceFile8795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8796", + "filePath": "resourceFile8796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8797", + "filePath": "resourceFile8797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8798", + "filePath": "resourceFile8798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8799", + "filePath": "resourceFile8799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8800", + "filePath": "resourceFile8800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8801", + "filePath": "resourceFile8801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8802", + "filePath": "resourceFile8802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8803", + "filePath": "resourceFile8803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8804", + "filePath": "resourceFile8804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8805", + "filePath": "resourceFile8805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8806", + "filePath": "resourceFile8806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8807", + "filePath": "resourceFile8807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8808", + "filePath": "resourceFile8808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8809", + "filePath": "resourceFile8809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8810", + "filePath": "resourceFile8810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8811", + "filePath": "resourceFile8811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8812", + "filePath": "resourceFile8812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8813", + "filePath": "resourceFile8813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8814", + "filePath": "resourceFile8814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8815", + "filePath": "resourceFile8815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8816", + "filePath": "resourceFile8816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8817", + "filePath": "resourceFile8817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8818", + "filePath": "resourceFile8818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8819", + "filePath": "resourceFile8819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8820", + "filePath": "resourceFile8820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8821", + "filePath": "resourceFile8821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8822", + "filePath": "resourceFile8822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8823", + "filePath": "resourceFile8823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8824", + "filePath": "resourceFile8824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8825", + "filePath": "resourceFile8825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8826", + "filePath": "resourceFile8826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8827", + "filePath": "resourceFile8827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8828", + "filePath": "resourceFile8828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8829", + "filePath": "resourceFile8829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8830", + "filePath": "resourceFile8830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8831", + "filePath": "resourceFile8831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8832", + "filePath": "resourceFile8832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8833", + "filePath": "resourceFile8833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8834", + "filePath": "resourceFile8834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8835", + "filePath": "resourceFile8835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8836", + "filePath": "resourceFile8836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8837", + "filePath": "resourceFile8837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8838", + "filePath": "resourceFile8838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8839", + "filePath": "resourceFile8839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8840", + "filePath": "resourceFile8840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8841", + "filePath": "resourceFile8841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8842", + "filePath": "resourceFile8842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8843", + "filePath": "resourceFile8843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8844", + "filePath": "resourceFile8844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8845", + "filePath": "resourceFile8845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8846", + "filePath": "resourceFile8846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8847", + "filePath": "resourceFile8847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8848", + "filePath": "resourceFile8848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8849", + "filePath": "resourceFile8849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8850", + "filePath": "resourceFile8850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8851", + "filePath": "resourceFile8851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8852", + "filePath": "resourceFile8852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8853", + "filePath": "resourceFile8853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8854", + "filePath": "resourceFile8854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8855", + "filePath": "resourceFile8855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8856", + "filePath": "resourceFile8856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8857", + "filePath": "resourceFile8857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8858", + "filePath": "resourceFile8858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8859", + "filePath": "resourceFile8859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8860", + "filePath": "resourceFile8860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8861", + "filePath": "resourceFile8861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8862", + "filePath": "resourceFile8862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8863", + "filePath": "resourceFile8863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8864", + "filePath": "resourceFile8864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8865", + "filePath": "resourceFile8865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8866", + "filePath": "resourceFile8866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8867", + "filePath": "resourceFile8867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8868", + "filePath": "resourceFile8868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8869", + "filePath": "resourceFile8869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8870", + "filePath": "resourceFile8870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8871", + "filePath": "resourceFile8871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8872", + "filePath": "resourceFile8872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8873", + "filePath": "resourceFile8873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8874", + "filePath": "resourceFile8874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8875", + "filePath": "resourceFile8875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8876", + "filePath": "resourceFile8876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8877", + "filePath": "resourceFile8877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8878", + "filePath": "resourceFile8878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8879", + "filePath": "resourceFile8879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8880", + "filePath": "resourceFile8880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8881", + "filePath": "resourceFile8881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8882", + "filePath": "resourceFile8882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8883", + "filePath": "resourceFile8883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8884", + "filePath": "resourceFile8884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8885", + "filePath": "resourceFile8885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8886", + "filePath": "resourceFile8886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8887", + "filePath": "resourceFile8887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8888", + "filePath": "resourceFile8888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8889", + "filePath": "resourceFile8889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8890", + "filePath": "resourceFile8890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8891", + "filePath": "resourceFile8891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8892", + "filePath": "resourceFile8892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8893", + "filePath": "resourceFile8893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8894", + "filePath": "resourceFile8894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8895", + "filePath": "resourceFile8895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8896", + "filePath": "resourceFile8896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8897", + "filePath": "resourceFile8897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8898", + "filePath": "resourceFile8898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8899", + "filePath": "resourceFile8899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8900", + "filePath": "resourceFile8900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8901", + "filePath": "resourceFile8901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8902", + "filePath": "resourceFile8902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8903", + "filePath": "resourceFile8903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8904", + "filePath": "resourceFile8904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8905", + "filePath": "resourceFile8905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8906", + "filePath": "resourceFile8906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8907", + "filePath": "resourceFile8907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8908", + "filePath": "resourceFile8908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8909", + "filePath": "resourceFile8909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8910", + "filePath": "resourceFile8910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8911", + "filePath": "resourceFile8911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8912", + "filePath": "resourceFile8912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8913", + "filePath": "resourceFile8913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8914", + "filePath": "resourceFile8914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8915", + "filePath": "resourceFile8915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8916", + "filePath": "resourceFile8916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8917", + "filePath": "resourceFile8917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8918", + "filePath": "resourceFile8918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8919", + "filePath": "resourceFile8919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8920", + "filePath": "resourceFile8920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8921", + "filePath": "resourceFile8921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8922", + "filePath": "resourceFile8922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8923", + "filePath": "resourceFile8923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8924", + "filePath": "resourceFile8924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8925", + "filePath": "resourceFile8925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8926", + "filePath": "resourceFile8926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8927", + "filePath": "resourceFile8927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8928", + "filePath": "resourceFile8928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8929", + "filePath": "resourceFile8929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8930", + "filePath": "resourceFile8930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8931", + "filePath": "resourceFile8931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8932", + "filePath": "resourceFile8932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8933", + "filePath": "resourceFile8933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8934", + "filePath": "resourceFile8934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8935", + "filePath": "resourceFile8935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8936", + "filePath": "resourceFile8936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8937", + "filePath": "resourceFile8937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8938", + "filePath": "resourceFile8938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8939", + "filePath": "resourceFile8939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8940", + "filePath": "resourceFile8940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8941", + "filePath": "resourceFile8941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8942", + "filePath": "resourceFile8942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8943", + "filePath": "resourceFile8943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8944", + "filePath": "resourceFile8944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8945", + "filePath": "resourceFile8945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8946", + "filePath": "resourceFile8946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8947", + "filePath": "resourceFile8947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8948", + "filePath": "resourceFile8948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8949", + "filePath": "resourceFile8949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8950", + "filePath": "resourceFile8950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8951", + "filePath": "resourceFile8951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8952", + "filePath": "resourceFile8952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8953", + "filePath": "resourceFile8953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8954", + "filePath": "resourceFile8954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8955", + "filePath": "resourceFile8955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8956", + "filePath": "resourceFile8956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8957", + "filePath": "resourceFile8957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8958", + "filePath": "resourceFile8958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8959", + "filePath": "resourceFile8959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8960", + "filePath": "resourceFile8960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8961", + "filePath": "resourceFile8961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8962", + "filePath": "resourceFile8962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8963", + "filePath": "resourceFile8963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8964", + "filePath": "resourceFile8964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8965", + "filePath": "resourceFile8965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8966", + "filePath": "resourceFile8966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8967", + "filePath": "resourceFile8967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8968", + "filePath": "resourceFile8968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8969", + "filePath": "resourceFile8969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8970", + "filePath": "resourceFile8970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8971", + "filePath": "resourceFile8971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8972", + "filePath": "resourceFile8972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8973", + "filePath": "resourceFile8973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8974", + "filePath": "resourceFile8974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8975", + "filePath": "resourceFile8975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8976", + "filePath": "resourceFile8976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8977", + "filePath": "resourceFile8977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8978", + "filePath": "resourceFile8978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8979", + "filePath": "resourceFile8979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8980", + "filePath": "resourceFile8980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8981", + "filePath": "resourceFile8981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8982", + "filePath": "resourceFile8982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8983", + "filePath": "resourceFile8983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8984", + "filePath": "resourceFile8984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8985", + "filePath": "resourceFile8985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8986", + "filePath": "resourceFile8986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8987", + "filePath": "resourceFile8987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8988", + "filePath": "resourceFile8988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8989", + "filePath": "resourceFile8989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8990", + "filePath": "resourceFile8990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8991", + "filePath": "resourceFile8991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8992", + "filePath": "resourceFile8992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8993", + "filePath": "resourceFile8993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8994", + "filePath": "resourceFile8994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8995", + "filePath": "resourceFile8995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8996", + "filePath": "resourceFile8996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8997", + "filePath": "resourceFile8997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8998", + "filePath": "resourceFile8998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8999", + "filePath": "resourceFile8999"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9000", + "filePath": "resourceFile9000"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9001", + "filePath": "resourceFile9001"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9002", + "filePath": "resourceFile9002"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9003", + "filePath": "resourceFile9003"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9004", + "filePath": "resourceFile9004"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9005", + "filePath": "resourceFile9005"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9006", + "filePath": "resourceFile9006"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9007", + "filePath": "resourceFile9007"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9008", + "filePath": "resourceFile9008"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9009", + "filePath": "resourceFile9009"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9010", + "filePath": "resourceFile9010"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9011", + "filePath": "resourceFile9011"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9012", + "filePath": "resourceFile9012"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9013", + "filePath": "resourceFile9013"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9014", + "filePath": "resourceFile9014"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9015", + "filePath": "resourceFile9015"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9016", + "filePath": "resourceFile9016"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9017", + "filePath": "resourceFile9017"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9018", + "filePath": "resourceFile9018"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9019", + "filePath": "resourceFile9019"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9020", + "filePath": "resourceFile9020"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9021", + "filePath": "resourceFile9021"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9022", + "filePath": "resourceFile9022"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9023", + "filePath": "resourceFile9023"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9024", + "filePath": "resourceFile9024"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9025", + "filePath": "resourceFile9025"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9026", + "filePath": "resourceFile9026"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9027", + "filePath": "resourceFile9027"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9028", + "filePath": "resourceFile9028"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9029", + "filePath": "resourceFile9029"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9030", + "filePath": "resourceFile9030"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9031", + "filePath": "resourceFile9031"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9032", + "filePath": "resourceFile9032"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9033", + "filePath": "resourceFile9033"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9034", + "filePath": "resourceFile9034"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9035", + "filePath": "resourceFile9035"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9036", + "filePath": "resourceFile9036"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9037", + "filePath": "resourceFile9037"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9038", + "filePath": "resourceFile9038"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9039", + "filePath": "resourceFile9039"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9040", + "filePath": "resourceFile9040"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9041", + "filePath": "resourceFile9041"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9042", + "filePath": "resourceFile9042"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9043", + "filePath": "resourceFile9043"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9044", + "filePath": "resourceFile9044"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9045", + "filePath": "resourceFile9045"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9046", + "filePath": "resourceFile9046"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9047", + "filePath": "resourceFile9047"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9048", + "filePath": "resourceFile9048"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9049", + "filePath": "resourceFile9049"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9050", + "filePath": "resourceFile9050"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9051", + "filePath": "resourceFile9051"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9052", + "filePath": "resourceFile9052"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9053", + "filePath": "resourceFile9053"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9054", + "filePath": "resourceFile9054"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9055", + "filePath": "resourceFile9055"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9056", + "filePath": "resourceFile9056"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9057", + "filePath": "resourceFile9057"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9058", + "filePath": "resourceFile9058"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9059", + "filePath": "resourceFile9059"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9060", + "filePath": "resourceFile9060"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9061", + "filePath": "resourceFile9061"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9062", + "filePath": "resourceFile9062"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9063", + "filePath": "resourceFile9063"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9064", + "filePath": "resourceFile9064"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9065", + "filePath": "resourceFile9065"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9066", + "filePath": "resourceFile9066"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9067", + "filePath": "resourceFile9067"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9068", + "filePath": "resourceFile9068"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9069", + "filePath": "resourceFile9069"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9070", + "filePath": "resourceFile9070"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9071", + "filePath": "resourceFile9071"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9072", + "filePath": "resourceFile9072"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9073", + "filePath": "resourceFile9073"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9074", + "filePath": "resourceFile9074"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9075", + "filePath": "resourceFile9075"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9076", + "filePath": "resourceFile9076"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9077", + "filePath": "resourceFile9077"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9078", + "filePath": "resourceFile9078"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9079", + "filePath": "resourceFile9079"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9080", + "filePath": "resourceFile9080"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9081", + "filePath": "resourceFile9081"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9082", + "filePath": "resourceFile9082"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9083", + "filePath": "resourceFile9083"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9084", + "filePath": "resourceFile9084"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9085", + "filePath": "resourceFile9085"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9086", + "filePath": "resourceFile9086"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9087", + "filePath": "resourceFile9087"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9088", + "filePath": "resourceFile9088"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9089", + "filePath": "resourceFile9089"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9090", + "filePath": "resourceFile9090"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9091", + "filePath": "resourceFile9091"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9092", + "filePath": "resourceFile9092"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9093", + "filePath": "resourceFile9093"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9094", + "filePath": "resourceFile9094"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9095", + "filePath": "resourceFile9095"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9096", + "filePath": "resourceFile9096"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9097", + "filePath": "resourceFile9097"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9098", + "filePath": "resourceFile9098"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9099", + "filePath": "resourceFile9099"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9100", + "filePath": "resourceFile9100"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9101", + "filePath": "resourceFile9101"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9102", + "filePath": "resourceFile9102"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9103", + "filePath": "resourceFile9103"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9104", + "filePath": "resourceFile9104"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9105", + "filePath": "resourceFile9105"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9106", + "filePath": "resourceFile9106"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9107", + "filePath": "resourceFile9107"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9108", + "filePath": "resourceFile9108"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9109", + "filePath": "resourceFile9109"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9110", + "filePath": "resourceFile9110"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9111", + "filePath": "resourceFile9111"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9112", + "filePath": "resourceFile9112"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9113", + "filePath": "resourceFile9113"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9114", + "filePath": "resourceFile9114"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9115", + "filePath": "resourceFile9115"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9116", + "filePath": "resourceFile9116"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9117", + "filePath": "resourceFile9117"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9118", + "filePath": "resourceFile9118"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9119", + "filePath": "resourceFile9119"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9120", + "filePath": "resourceFile9120"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9121", + "filePath": "resourceFile9121"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9122", + "filePath": "resourceFile9122"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9123", + "filePath": "resourceFile9123"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9124", + "filePath": "resourceFile9124"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9125", + "filePath": "resourceFile9125"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9126", + "filePath": "resourceFile9126"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9127", + "filePath": "resourceFile9127"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9128", + "filePath": "resourceFile9128"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9129", + "filePath": "resourceFile9129"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9130", + "filePath": "resourceFile9130"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9131", + "filePath": "resourceFile9131"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9132", + "filePath": "resourceFile9132"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9133", + "filePath": "resourceFile9133"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9134", + "filePath": "resourceFile9134"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9135", + "filePath": "resourceFile9135"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9136", + "filePath": "resourceFile9136"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9137", + "filePath": "resourceFile9137"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9138", + "filePath": "resourceFile9138"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9139", + "filePath": "resourceFile9139"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9140", + "filePath": "resourceFile9140"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9141", + "filePath": "resourceFile9141"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9142", + "filePath": "resourceFile9142"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9143", + "filePath": "resourceFile9143"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9144", + "filePath": "resourceFile9144"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9145", + "filePath": "resourceFile9145"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9146", + "filePath": "resourceFile9146"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9147", + "filePath": "resourceFile9147"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9148", + "filePath": "resourceFile9148"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9149", + "filePath": "resourceFile9149"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9150", + "filePath": "resourceFile9150"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9151", + "filePath": "resourceFile9151"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9152", + "filePath": "resourceFile9152"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9153", + "filePath": "resourceFile9153"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9154", + "filePath": "resourceFile9154"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9155", + "filePath": "resourceFile9155"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9156", + "filePath": "resourceFile9156"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9157", + "filePath": "resourceFile9157"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9158", + "filePath": "resourceFile9158"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9159", + "filePath": "resourceFile9159"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9160", + "filePath": "resourceFile9160"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9161", + "filePath": "resourceFile9161"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9162", + "filePath": "resourceFile9162"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9163", + "filePath": "resourceFile9163"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9164", + "filePath": "resourceFile9164"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9165", + "filePath": "resourceFile9165"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9166", + "filePath": "resourceFile9166"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9167", + "filePath": "resourceFile9167"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9168", + "filePath": "resourceFile9168"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9169", + "filePath": "resourceFile9169"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9170", + "filePath": "resourceFile9170"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9171", + "filePath": "resourceFile9171"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9172", + "filePath": "resourceFile9172"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9173", + "filePath": "resourceFile9173"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9174", + "filePath": "resourceFile9174"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9175", + "filePath": "resourceFile9175"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9176", + "filePath": "resourceFile9176"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9177", + "filePath": "resourceFile9177"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9178", + "filePath": "resourceFile9178"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9179", + "filePath": "resourceFile9179"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9180", + "filePath": "resourceFile9180"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9181", + "filePath": "resourceFile9181"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9182", + "filePath": "resourceFile9182"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9183", + "filePath": "resourceFile9183"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9184", + "filePath": "resourceFile9184"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9185", + "filePath": "resourceFile9185"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9186", + "filePath": "resourceFile9186"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9187", + "filePath": "resourceFile9187"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9188", + "filePath": "resourceFile9188"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9189", + "filePath": "resourceFile9189"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9190", + "filePath": "resourceFile9190"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9191", + "filePath": "resourceFile9191"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9192", + "filePath": "resourceFile9192"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9193", + "filePath": "resourceFile9193"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9194", + "filePath": "resourceFile9194"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9195", + "filePath": "resourceFile9195"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9196", + "filePath": "resourceFile9196"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9197", + "filePath": "resourceFile9197"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9198", + "filePath": "resourceFile9198"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9199", + "filePath": "resourceFile9199"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9200", + "filePath": "resourceFile9200"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9201", + "filePath": "resourceFile9201"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9202", + "filePath": "resourceFile9202"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9203", + "filePath": "resourceFile9203"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9204", + "filePath": "resourceFile9204"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9205", + "filePath": "resourceFile9205"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9206", + "filePath": "resourceFile9206"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9207", + "filePath": "resourceFile9207"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9208", + "filePath": "resourceFile9208"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9209", + "filePath": "resourceFile9209"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9210", + "filePath": "resourceFile9210"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9211", + "filePath": "resourceFile9211"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9212", + "filePath": "resourceFile9212"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9213", + "filePath": "resourceFile9213"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9214", + "filePath": "resourceFile9214"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9215", + "filePath": "resourceFile9215"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9216", + "filePath": "resourceFile9216"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9217", + "filePath": "resourceFile9217"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9218", + "filePath": "resourceFile9218"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9219", + "filePath": "resourceFile9219"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9220", + "filePath": "resourceFile9220"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9221", + "filePath": "resourceFile9221"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9222", + "filePath": "resourceFile9222"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9223", + "filePath": "resourceFile9223"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9224", + "filePath": "resourceFile9224"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9225", + "filePath": "resourceFile9225"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9226", + "filePath": "resourceFile9226"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9227", + "filePath": "resourceFile9227"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9228", + "filePath": "resourceFile9228"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9229", + "filePath": "resourceFile9229"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9230", + "filePath": "resourceFile9230"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9231", + "filePath": "resourceFile9231"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9232", + "filePath": "resourceFile9232"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9233", + "filePath": "resourceFile9233"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9234", + "filePath": "resourceFile9234"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9235", + "filePath": "resourceFile9235"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9236", + "filePath": "resourceFile9236"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9237", + "filePath": "resourceFile9237"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9238", + "filePath": "resourceFile9238"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9239", + "filePath": "resourceFile9239"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9240", + "filePath": "resourceFile9240"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9241", + "filePath": "resourceFile9241"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9242", + "filePath": "resourceFile9242"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9243", + "filePath": "resourceFile9243"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9244", + "filePath": "resourceFile9244"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9245", + "filePath": "resourceFile9245"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9246", + "filePath": "resourceFile9246"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9247", + "filePath": "resourceFile9247"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9248", + "filePath": "resourceFile9248"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9249", + "filePath": "resourceFile9249"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9250", + "filePath": "resourceFile9250"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9251", + "filePath": "resourceFile9251"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9252", + "filePath": "resourceFile9252"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9253", + "filePath": "resourceFile9253"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9254", + "filePath": "resourceFile9254"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9255", + "filePath": "resourceFile9255"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9256", + "filePath": "resourceFile9256"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9257", + "filePath": "resourceFile9257"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9258", + "filePath": "resourceFile9258"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9259", + "filePath": "resourceFile9259"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9260", + "filePath": "resourceFile9260"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9261", + "filePath": "resourceFile9261"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9262", + "filePath": "resourceFile9262"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9263", + "filePath": "resourceFile9263"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9264", + "filePath": "resourceFile9264"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9265", + "filePath": "resourceFile9265"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9266", + "filePath": "resourceFile9266"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9267", + "filePath": "resourceFile9267"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9268", + "filePath": "resourceFile9268"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9269", + "filePath": "resourceFile9269"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9270", + "filePath": "resourceFile9270"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9271", + "filePath": "resourceFile9271"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9272", + "filePath": "resourceFile9272"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9273", + "filePath": "resourceFile9273"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9274", + "filePath": "resourceFile9274"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9275", + "filePath": "resourceFile9275"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9276", + "filePath": "resourceFile9276"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9277", + "filePath": "resourceFile9277"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9278", + "filePath": "resourceFile9278"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9279", + "filePath": "resourceFile9279"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9280", + "filePath": "resourceFile9280"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9281", + "filePath": "resourceFile9281"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9282", + "filePath": "resourceFile9282"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9283", + "filePath": "resourceFile9283"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9284", + "filePath": "resourceFile9284"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9285", + "filePath": "resourceFile9285"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9286", + "filePath": "resourceFile9286"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9287", + "filePath": "resourceFile9287"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9288", + "filePath": "resourceFile9288"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9289", + "filePath": "resourceFile9289"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9290", + "filePath": "resourceFile9290"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9291", + "filePath": "resourceFile9291"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9292", + "filePath": "resourceFile9292"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9293", + "filePath": "resourceFile9293"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9294", + "filePath": "resourceFile9294"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9295", + "filePath": "resourceFile9295"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9296", + "filePath": "resourceFile9296"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9297", + "filePath": "resourceFile9297"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9298", + "filePath": "resourceFile9298"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9299", + "filePath": "resourceFile9299"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9300", + "filePath": "resourceFile9300"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9301", + "filePath": "resourceFile9301"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9302", + "filePath": "resourceFile9302"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9303", + "filePath": "resourceFile9303"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9304", + "filePath": "resourceFile9304"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9305", + "filePath": "resourceFile9305"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9306", + "filePath": "resourceFile9306"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9307", + "filePath": "resourceFile9307"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9308", + "filePath": "resourceFile9308"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9309", + "filePath": "resourceFile9309"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9310", + "filePath": "resourceFile9310"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9311", + "filePath": "resourceFile9311"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9312", + "filePath": "resourceFile9312"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9313", + "filePath": "resourceFile9313"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9314", + "filePath": "resourceFile9314"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9315", + "filePath": "resourceFile9315"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9316", + "filePath": "resourceFile9316"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9317", + "filePath": "resourceFile9317"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9318", + "filePath": "resourceFile9318"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9319", + "filePath": "resourceFile9319"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9320", + "filePath": "resourceFile9320"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9321", + "filePath": "resourceFile9321"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9322", + "filePath": "resourceFile9322"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9323", + "filePath": "resourceFile9323"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9324", + "filePath": "resourceFile9324"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9325", + "filePath": "resourceFile9325"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9326", + "filePath": "resourceFile9326"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9327", + "filePath": "resourceFile9327"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9328", + "filePath": "resourceFile9328"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9329", + "filePath": "resourceFile9329"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9330", + "filePath": "resourceFile9330"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9331", + "filePath": "resourceFile9331"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9332", + "filePath": "resourceFile9332"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9333", + "filePath": "resourceFile9333"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9334", + "filePath": "resourceFile9334"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9335", + "filePath": "resourceFile9335"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9336", + "filePath": "resourceFile9336"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9337", + "filePath": "resourceFile9337"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9338", + "filePath": "resourceFile9338"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9339", + "filePath": "resourceFile9339"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9340", + "filePath": "resourceFile9340"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9341", + "filePath": "resourceFile9341"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9342", + "filePath": "resourceFile9342"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9343", + "filePath": "resourceFile9343"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9344", + "filePath": "resourceFile9344"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9345", + "filePath": "resourceFile9345"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9346", + "filePath": "resourceFile9346"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9347", + "filePath": "resourceFile9347"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9348", + "filePath": "resourceFile9348"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9349", + "filePath": "resourceFile9349"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9350", + "filePath": "resourceFile9350"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9351", + "filePath": "resourceFile9351"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9352", + "filePath": "resourceFile9352"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9353", + "filePath": "resourceFile9353"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9354", + "filePath": "resourceFile9354"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9355", + "filePath": "resourceFile9355"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9356", + "filePath": "resourceFile9356"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9357", + "filePath": "resourceFile9357"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9358", + "filePath": "resourceFile9358"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9359", + "filePath": "resourceFile9359"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9360", + "filePath": "resourceFile9360"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9361", + "filePath": "resourceFile9361"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9362", + "filePath": "resourceFile9362"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9363", + "filePath": "resourceFile9363"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9364", + "filePath": "resourceFile9364"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9365", + "filePath": "resourceFile9365"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9366", + "filePath": "resourceFile9366"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9367", + "filePath": "resourceFile9367"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9368", + "filePath": "resourceFile9368"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9369", + "filePath": "resourceFile9369"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9370", + "filePath": "resourceFile9370"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9371", + "filePath": "resourceFile9371"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9372", + "filePath": "resourceFile9372"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9373", + "filePath": "resourceFile9373"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9374", + "filePath": "resourceFile9374"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9375", + "filePath": "resourceFile9375"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9376", + "filePath": "resourceFile9376"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9377", + "filePath": "resourceFile9377"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9378", + "filePath": "resourceFile9378"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9379", + "filePath": "resourceFile9379"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9380", + "filePath": "resourceFile9380"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9381", + "filePath": "resourceFile9381"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9382", + "filePath": "resourceFile9382"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9383", + "filePath": "resourceFile9383"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9384", + "filePath": "resourceFile9384"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9385", + "filePath": "resourceFile9385"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9386", + "filePath": "resourceFile9386"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9387", + "filePath": "resourceFile9387"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9388", + "filePath": "resourceFile9388"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9389", + "filePath": "resourceFile9389"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9390", + "filePath": "resourceFile9390"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9391", + "filePath": "resourceFile9391"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9392", + "filePath": "resourceFile9392"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9393", + "filePath": "resourceFile9393"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9394", + "filePath": "resourceFile9394"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9395", + "filePath": "resourceFile9395"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9396", + "filePath": "resourceFile9396"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9397", + "filePath": "resourceFile9397"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9398", + "filePath": "resourceFile9398"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9399", + "filePath": "resourceFile9399"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9400", + "filePath": "resourceFile9400"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9401", + "filePath": "resourceFile9401"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9402", + "filePath": "resourceFile9402"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9403", + "filePath": "resourceFile9403"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9404", + "filePath": "resourceFile9404"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9405", + "filePath": "resourceFile9405"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9406", + "filePath": "resourceFile9406"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9407", + "filePath": "resourceFile9407"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9408", + "filePath": "resourceFile9408"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9409", + "filePath": "resourceFile9409"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9410", + "filePath": "resourceFile9410"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9411", + "filePath": "resourceFile9411"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9412", + "filePath": "resourceFile9412"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9413", + "filePath": "resourceFile9413"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9414", + "filePath": "resourceFile9414"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9415", + "filePath": "resourceFile9415"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9416", + "filePath": "resourceFile9416"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9417", + "filePath": "resourceFile9417"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9418", + "filePath": "resourceFile9418"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9419", + "filePath": "resourceFile9419"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9420", + "filePath": "resourceFile9420"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9421", + "filePath": "resourceFile9421"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9422", + "filePath": "resourceFile9422"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9423", + "filePath": "resourceFile9423"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9424", + "filePath": "resourceFile9424"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9425", + "filePath": "resourceFile9425"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9426", + "filePath": "resourceFile9426"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9427", + "filePath": "resourceFile9427"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9428", + "filePath": "resourceFile9428"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9429", + "filePath": "resourceFile9429"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9430", + "filePath": "resourceFile9430"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9431", + "filePath": "resourceFile9431"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9432", + "filePath": "resourceFile9432"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9433", + "filePath": "resourceFile9433"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9434", + "filePath": "resourceFile9434"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9435", + "filePath": "resourceFile9435"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9436", + "filePath": "resourceFile9436"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9437", + "filePath": "resourceFile9437"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9438", + "filePath": "resourceFile9438"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9439", + "filePath": "resourceFile9439"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9440", + "filePath": "resourceFile9440"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9441", + "filePath": "resourceFile9441"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9442", + "filePath": "resourceFile9442"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9443", + "filePath": "resourceFile9443"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9444", + "filePath": "resourceFile9444"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9445", + "filePath": "resourceFile9445"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9446", + "filePath": "resourceFile9446"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9447", + "filePath": "resourceFile9447"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9448", + "filePath": "resourceFile9448"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9449", + "filePath": "resourceFile9449"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9450", + "filePath": "resourceFile9450"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9451", + "filePath": "resourceFile9451"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9452", + "filePath": "resourceFile9452"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9453", + "filePath": "resourceFile9453"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9454", + "filePath": "resourceFile9454"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9455", + "filePath": "resourceFile9455"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9456", + "filePath": "resourceFile9456"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9457", + "filePath": "resourceFile9457"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9458", + "filePath": "resourceFile9458"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9459", + "filePath": "resourceFile9459"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9460", + "filePath": "resourceFile9460"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9461", + "filePath": "resourceFile9461"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9462", + "filePath": "resourceFile9462"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9463", + "filePath": "resourceFile9463"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9464", + "filePath": "resourceFile9464"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9465", + "filePath": "resourceFile9465"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9466", + "filePath": "resourceFile9466"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9467", + "filePath": "resourceFile9467"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9468", + "filePath": "resourceFile9468"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9469", + "filePath": "resourceFile9469"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9470", + "filePath": "resourceFile9470"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9471", + "filePath": "resourceFile9471"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9472", + "filePath": "resourceFile9472"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9473", + "filePath": "resourceFile9473"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9474", + "filePath": "resourceFile9474"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9475", + "filePath": "resourceFile9475"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9476", + "filePath": "resourceFile9476"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9477", + "filePath": "resourceFile9477"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9478", + "filePath": "resourceFile9478"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9479", + "filePath": "resourceFile9479"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9480", + "filePath": "resourceFile9480"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9481", + "filePath": "resourceFile9481"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9482", + "filePath": "resourceFile9482"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9483", + "filePath": "resourceFile9483"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9484", + "filePath": "resourceFile9484"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9485", + "filePath": "resourceFile9485"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9486", + "filePath": "resourceFile9486"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9487", + "filePath": "resourceFile9487"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9488", + "filePath": "resourceFile9488"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9489", + "filePath": "resourceFile9489"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9490", + "filePath": "resourceFile9490"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9491", + "filePath": "resourceFile9491"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9492", + "filePath": "resourceFile9492"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9493", + "filePath": "resourceFile9493"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9494", + "filePath": "resourceFile9494"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9495", + "filePath": "resourceFile9495"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9496", + "filePath": "resourceFile9496"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9497", + "filePath": "resourceFile9497"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9498", + "filePath": "resourceFile9498"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9499", + "filePath": "resourceFile9499"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9500", + "filePath": "resourceFile9500"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9501", + "filePath": "resourceFile9501"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9502", + "filePath": "resourceFile9502"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9503", + "filePath": "resourceFile9503"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9504", + "filePath": "resourceFile9504"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9505", + "filePath": "resourceFile9505"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9506", + "filePath": "resourceFile9506"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9507", + "filePath": "resourceFile9507"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9508", + "filePath": "resourceFile9508"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9509", + "filePath": "resourceFile9509"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9510", + "filePath": "resourceFile9510"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9511", + "filePath": "resourceFile9511"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9512", + "filePath": "resourceFile9512"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9513", + "filePath": "resourceFile9513"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9514", + "filePath": "resourceFile9514"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9515", + "filePath": "resourceFile9515"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9516", + "filePath": "resourceFile9516"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9517", + "filePath": "resourceFile9517"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9518", + "filePath": "resourceFile9518"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9519", + "filePath": "resourceFile9519"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9520", + "filePath": "resourceFile9520"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9521", + "filePath": "resourceFile9521"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9522", + "filePath": "resourceFile9522"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9523", + "filePath": "resourceFile9523"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9524", + "filePath": "resourceFile9524"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9525", + "filePath": "resourceFile9525"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9526", + "filePath": "resourceFile9526"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9527", + "filePath": "resourceFile9527"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9528", + "filePath": "resourceFile9528"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9529", + "filePath": "resourceFile9529"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9530", + "filePath": "resourceFile9530"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9531", + "filePath": "resourceFile9531"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9532", + "filePath": "resourceFile9532"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9533", + "filePath": "resourceFile9533"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9534", + "filePath": "resourceFile9534"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9535", + "filePath": "resourceFile9535"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9536", + "filePath": "resourceFile9536"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9537", + "filePath": "resourceFile9537"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9538", + "filePath": "resourceFile9538"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9539", + "filePath": "resourceFile9539"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9540", + "filePath": "resourceFile9540"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9541", + "filePath": "resourceFile9541"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9542", + "filePath": "resourceFile9542"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9543", + "filePath": "resourceFile9543"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9544", + "filePath": "resourceFile9544"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9545", + "filePath": "resourceFile9545"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9546", + "filePath": "resourceFile9546"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9547", + "filePath": "resourceFile9547"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9548", + "filePath": "resourceFile9548"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9549", + "filePath": "resourceFile9549"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9550", + "filePath": "resourceFile9550"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9551", + "filePath": "resourceFile9551"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9552", + "filePath": "resourceFile9552"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9553", + "filePath": "resourceFile9553"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9554", + "filePath": "resourceFile9554"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9555", + "filePath": "resourceFile9555"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9556", + "filePath": "resourceFile9556"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9557", + "filePath": "resourceFile9557"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9558", + "filePath": "resourceFile9558"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9559", + "filePath": "resourceFile9559"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9560", + "filePath": "resourceFile9560"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9561", + "filePath": "resourceFile9561"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9562", + "filePath": "resourceFile9562"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9563", + "filePath": "resourceFile9563"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9564", + "filePath": "resourceFile9564"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9565", + "filePath": "resourceFile9565"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9566", + "filePath": "resourceFile9566"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9567", + "filePath": "resourceFile9567"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9568", + "filePath": "resourceFile9568"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9569", + "filePath": "resourceFile9569"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9570", + "filePath": "resourceFile9570"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9571", + "filePath": "resourceFile9571"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9572", + "filePath": "resourceFile9572"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9573", + "filePath": "resourceFile9573"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9574", + "filePath": "resourceFile9574"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9575", + "filePath": "resourceFile9575"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9576", + "filePath": "resourceFile9576"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9577", + "filePath": "resourceFile9577"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9578", + "filePath": "resourceFile9578"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9579", + "filePath": "resourceFile9579"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9580", + "filePath": "resourceFile9580"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9581", + "filePath": "resourceFile9581"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9582", + "filePath": "resourceFile9582"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9583", + "filePath": "resourceFile9583"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9584", + "filePath": "resourceFile9584"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9585", + "filePath": "resourceFile9585"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9586", + "filePath": "resourceFile9586"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9587", + "filePath": "resourceFile9587"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9588", + "filePath": "resourceFile9588"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9589", + "filePath": "resourceFile9589"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9590", + "filePath": "resourceFile9590"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9591", + "filePath": "resourceFile9591"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9592", + "filePath": "resourceFile9592"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9593", + "filePath": "resourceFile9593"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9594", + "filePath": "resourceFile9594"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9595", + "filePath": "resourceFile9595"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9596", + "filePath": "resourceFile9596"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9597", + "filePath": "resourceFile9597"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9598", + "filePath": "resourceFile9598"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9599", + "filePath": "resourceFile9599"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9600", + "filePath": "resourceFile9600"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9601", + "filePath": "resourceFile9601"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9602", + "filePath": "resourceFile9602"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9603", + "filePath": "resourceFile9603"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9604", + "filePath": "resourceFile9604"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9605", + "filePath": "resourceFile9605"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9606", + "filePath": "resourceFile9606"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9607", + "filePath": "resourceFile9607"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9608", + "filePath": "resourceFile9608"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9609", + "filePath": "resourceFile9609"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9610", + "filePath": "resourceFile9610"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9611", + "filePath": "resourceFile9611"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9612", + "filePath": "resourceFile9612"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9613", + "filePath": "resourceFile9613"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9614", + "filePath": "resourceFile9614"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9615", + "filePath": "resourceFile9615"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9616", + "filePath": "resourceFile9616"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9617", + "filePath": "resourceFile9617"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9618", + "filePath": "resourceFile9618"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9619", + "filePath": "resourceFile9619"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9620", + "filePath": "resourceFile9620"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9621", + "filePath": "resourceFile9621"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9622", + "filePath": "resourceFile9622"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9623", + "filePath": "resourceFile9623"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9624", + "filePath": "resourceFile9624"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9625", + "filePath": "resourceFile9625"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9626", + "filePath": "resourceFile9626"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9627", + "filePath": "resourceFile9627"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9628", + "filePath": "resourceFile9628"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9629", + "filePath": "resourceFile9629"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9630", + "filePath": "resourceFile9630"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9631", + "filePath": "resourceFile9631"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9632", + "filePath": "resourceFile9632"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9633", + "filePath": "resourceFile9633"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9634", + "filePath": "resourceFile9634"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9635", + "filePath": "resourceFile9635"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9636", + "filePath": "resourceFile9636"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9637", + "filePath": "resourceFile9637"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9638", + "filePath": "resourceFile9638"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9639", + "filePath": "resourceFile9639"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9640", + "filePath": "resourceFile9640"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9641", + "filePath": "resourceFile9641"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9642", + "filePath": "resourceFile9642"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9643", + "filePath": "resourceFile9643"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9644", + "filePath": "resourceFile9644"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9645", + "filePath": "resourceFile9645"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9646", + "filePath": "resourceFile9646"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9647", + "filePath": "resourceFile9647"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9648", + "filePath": "resourceFile9648"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9649", + "filePath": "resourceFile9649"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9650", + "filePath": "resourceFile9650"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9651", + "filePath": "resourceFile9651"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9652", + "filePath": "resourceFile9652"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9653", + "filePath": "resourceFile9653"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9654", + "filePath": "resourceFile9654"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9655", + "filePath": "resourceFile9655"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9656", + "filePath": "resourceFile9656"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9657", + "filePath": "resourceFile9657"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9658", + "filePath": "resourceFile9658"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9659", + "filePath": "resourceFile9659"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9660", + "filePath": "resourceFile9660"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9661", + "filePath": "resourceFile9661"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9662", + "filePath": "resourceFile9662"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9663", + "filePath": "resourceFile9663"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9664", + "filePath": "resourceFile9664"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9665", + "filePath": "resourceFile9665"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9666", + "filePath": "resourceFile9666"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9667", + "filePath": "resourceFile9667"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9668", + "filePath": "resourceFile9668"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9669", + "filePath": "resourceFile9669"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9670", + "filePath": "resourceFile9670"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9671", + "filePath": "resourceFile9671"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9672", + "filePath": "resourceFile9672"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9673", + "filePath": "resourceFile9673"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9674", + "filePath": "resourceFile9674"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9675", + "filePath": "resourceFile9675"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9676", + "filePath": "resourceFile9676"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9677", + "filePath": "resourceFile9677"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9678", + "filePath": "resourceFile9678"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9679", + "filePath": "resourceFile9679"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9680", + "filePath": "resourceFile9680"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9681", + "filePath": "resourceFile9681"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9682", + "filePath": "resourceFile9682"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9683", + "filePath": "resourceFile9683"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9684", + "filePath": "resourceFile9684"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9685", + "filePath": "resourceFile9685"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9686", + "filePath": "resourceFile9686"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9687", + "filePath": "resourceFile9687"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9688", + "filePath": "resourceFile9688"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9689", + "filePath": "resourceFile9689"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9690", + "filePath": "resourceFile9690"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9691", + "filePath": "resourceFile9691"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9692", + "filePath": "resourceFile9692"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9693", + "filePath": "resourceFile9693"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9694", + "filePath": "resourceFile9694"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9695", + "filePath": "resourceFile9695"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9696", + "filePath": "resourceFile9696"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9697", + "filePath": "resourceFile9697"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9698", + "filePath": "resourceFile9698"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9699", + "filePath": "resourceFile9699"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9700", + "filePath": "resourceFile9700"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9701", + "filePath": "resourceFile9701"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9702", + "filePath": "resourceFile9702"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9703", + "filePath": "resourceFile9703"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9704", + "filePath": "resourceFile9704"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9705", + "filePath": "resourceFile9705"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9706", + "filePath": "resourceFile9706"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9707", + "filePath": "resourceFile9707"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9708", + "filePath": "resourceFile9708"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9709", + "filePath": "resourceFile9709"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9710", + "filePath": "resourceFile9710"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9711", + "filePath": "resourceFile9711"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9712", + "filePath": "resourceFile9712"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9713", + "filePath": "resourceFile9713"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9714", + "filePath": "resourceFile9714"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9715", + "filePath": "resourceFile9715"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9716", + "filePath": "resourceFile9716"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9717", + "filePath": "resourceFile9717"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9718", + "filePath": "resourceFile9718"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9719", + "filePath": "resourceFile9719"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9720", + "filePath": "resourceFile9720"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9721", + "filePath": "resourceFile9721"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9722", + "filePath": "resourceFile9722"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9723", + "filePath": "resourceFile9723"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9724", + "filePath": "resourceFile9724"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9725", + "filePath": "resourceFile9725"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9726", + "filePath": "resourceFile9726"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9727", + "filePath": "resourceFile9727"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9728", + "filePath": "resourceFile9728"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9729", + "filePath": "resourceFile9729"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9730", + "filePath": "resourceFile9730"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9731", + "filePath": "resourceFile9731"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9732", + "filePath": "resourceFile9732"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9733", + "filePath": "resourceFile9733"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9734", + "filePath": "resourceFile9734"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9735", + "filePath": "resourceFile9735"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9736", + "filePath": "resourceFile9736"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9737", + "filePath": "resourceFile9737"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9738", + "filePath": "resourceFile9738"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9739", + "filePath": "resourceFile9739"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9740", + "filePath": "resourceFile9740"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9741", + "filePath": "resourceFile9741"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9742", + "filePath": "resourceFile9742"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9743", + "filePath": "resourceFile9743"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9744", + "filePath": "resourceFile9744"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9745", + "filePath": "resourceFile9745"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9746", + "filePath": "resourceFile9746"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9747", + "filePath": "resourceFile9747"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9748", + "filePath": "resourceFile9748"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9749", + "filePath": "resourceFile9749"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9750", + "filePath": "resourceFile9750"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9751", + "filePath": "resourceFile9751"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9752", + "filePath": "resourceFile9752"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9753", + "filePath": "resourceFile9753"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9754", + "filePath": "resourceFile9754"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9755", + "filePath": "resourceFile9755"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9756", + "filePath": "resourceFile9756"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9757", + "filePath": "resourceFile9757"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9758", + "filePath": "resourceFile9758"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9759", + "filePath": "resourceFile9759"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9760", + "filePath": "resourceFile9760"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9761", + "filePath": "resourceFile9761"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9762", + "filePath": "resourceFile9762"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9763", + "filePath": "resourceFile9763"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9764", + "filePath": "resourceFile9764"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9765", + "filePath": "resourceFile9765"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9766", + "filePath": "resourceFile9766"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9767", + "filePath": "resourceFile9767"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9768", + "filePath": "resourceFile9768"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9769", + "filePath": "resourceFile9769"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9770", + "filePath": "resourceFile9770"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9771", + "filePath": "resourceFile9771"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9772", + "filePath": "resourceFile9772"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9773", + "filePath": "resourceFile9773"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9774", + "filePath": "resourceFile9774"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9775", + "filePath": "resourceFile9775"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9776", + "filePath": "resourceFile9776"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9777", + "filePath": "resourceFile9777"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9778", + "filePath": "resourceFile9778"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9779", + "filePath": "resourceFile9779"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9780", + "filePath": "resourceFile9780"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9781", + "filePath": "resourceFile9781"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9782", + "filePath": "resourceFile9782"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9783", + "filePath": "resourceFile9783"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9784", + "filePath": "resourceFile9784"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9785", + "filePath": "resourceFile9785"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9786", + "filePath": "resourceFile9786"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9787", + "filePath": "resourceFile9787"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9788", + "filePath": "resourceFile9788"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9789", + "filePath": "resourceFile9789"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9790", + "filePath": "resourceFile9790"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9791", + "filePath": "resourceFile9791"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9792", + "filePath": "resourceFile9792"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9793", + "filePath": "resourceFile9793"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9794", + "filePath": "resourceFile9794"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9795", + "filePath": "resourceFile9795"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9796", + "filePath": "resourceFile9796"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9797", + "filePath": "resourceFile9797"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9798", + "filePath": "resourceFile9798"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9799", + "filePath": "resourceFile9799"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9800", + "filePath": "resourceFile9800"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9801", + "filePath": "resourceFile9801"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9802", + "filePath": "resourceFile9802"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9803", + "filePath": "resourceFile9803"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9804", + "filePath": "resourceFile9804"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9805", + "filePath": "resourceFile9805"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9806", + "filePath": "resourceFile9806"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9807", + "filePath": "resourceFile9807"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9808", + "filePath": "resourceFile9808"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9809", + "filePath": "resourceFile9809"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9810", + "filePath": "resourceFile9810"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9811", + "filePath": "resourceFile9811"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9812", + "filePath": "resourceFile9812"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9813", + "filePath": "resourceFile9813"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9814", + "filePath": "resourceFile9814"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9815", + "filePath": "resourceFile9815"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9816", + "filePath": "resourceFile9816"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9817", + "filePath": "resourceFile9817"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9818", + "filePath": "resourceFile9818"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9819", + "filePath": "resourceFile9819"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9820", + "filePath": "resourceFile9820"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9821", + "filePath": "resourceFile9821"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9822", + "filePath": "resourceFile9822"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9823", + "filePath": "resourceFile9823"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9824", + "filePath": "resourceFile9824"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9825", + "filePath": "resourceFile9825"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9826", + "filePath": "resourceFile9826"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9827", + "filePath": "resourceFile9827"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9828", + "filePath": "resourceFile9828"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9829", + "filePath": "resourceFile9829"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9830", + "filePath": "resourceFile9830"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9831", + "filePath": "resourceFile9831"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9832", + "filePath": "resourceFile9832"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9833", + "filePath": "resourceFile9833"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9834", + "filePath": "resourceFile9834"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9835", + "filePath": "resourceFile9835"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9836", + "filePath": "resourceFile9836"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9837", + "filePath": "resourceFile9837"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9838", + "filePath": "resourceFile9838"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9839", + "filePath": "resourceFile9839"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9840", + "filePath": "resourceFile9840"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9841", + "filePath": "resourceFile9841"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9842", + "filePath": "resourceFile9842"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9843", + "filePath": "resourceFile9843"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9844", + "filePath": "resourceFile9844"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9845", + "filePath": "resourceFile9845"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9846", + "filePath": "resourceFile9846"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9847", + "filePath": "resourceFile9847"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9848", + "filePath": "resourceFile9848"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9849", + "filePath": "resourceFile9849"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9850", + "filePath": "resourceFile9850"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9851", + "filePath": "resourceFile9851"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9852", + "filePath": "resourceFile9852"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9853", + "filePath": "resourceFile9853"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9854", + "filePath": "resourceFile9854"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9855", + "filePath": "resourceFile9855"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9856", + "filePath": "resourceFile9856"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9857", + "filePath": "resourceFile9857"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9858", + "filePath": "resourceFile9858"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9859", + "filePath": "resourceFile9859"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9860", + "filePath": "resourceFile9860"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9861", + "filePath": "resourceFile9861"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9862", + "filePath": "resourceFile9862"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9863", + "filePath": "resourceFile9863"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9864", + "filePath": "resourceFile9864"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9865", + "filePath": "resourceFile9865"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9866", + "filePath": "resourceFile9866"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9867", + "filePath": "resourceFile9867"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9868", + "filePath": "resourceFile9868"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9869", + "filePath": "resourceFile9869"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9870", + "filePath": "resourceFile9870"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9871", + "filePath": "resourceFile9871"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9872", + "filePath": "resourceFile9872"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9873", + "filePath": "resourceFile9873"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9874", + "filePath": "resourceFile9874"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9875", + "filePath": "resourceFile9875"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9876", + "filePath": "resourceFile9876"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9877", + "filePath": "resourceFile9877"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9878", + "filePath": "resourceFile9878"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9879", + "filePath": "resourceFile9879"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9880", + "filePath": "resourceFile9880"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9881", + "filePath": "resourceFile9881"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9882", + "filePath": "resourceFile9882"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9883", + "filePath": "resourceFile9883"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9884", + "filePath": "resourceFile9884"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9885", + "filePath": "resourceFile9885"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9886", + "filePath": "resourceFile9886"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9887", + "filePath": "resourceFile9887"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9888", + "filePath": "resourceFile9888"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9889", + "filePath": "resourceFile9889"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9890", + "filePath": "resourceFile9890"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9891", + "filePath": "resourceFile9891"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9892", + "filePath": "resourceFile9892"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9893", + "filePath": "resourceFile9893"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9894", + "filePath": "resourceFile9894"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9895", + "filePath": "resourceFile9895"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9896", + "filePath": "resourceFile9896"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9897", + "filePath": "resourceFile9897"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9898", + "filePath": "resourceFile9898"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9899", + "filePath": "resourceFile9899"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9900", + "filePath": "resourceFile9900"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9901", + "filePath": "resourceFile9901"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9902", + "filePath": "resourceFile9902"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9903", + "filePath": "resourceFile9903"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9904", + "filePath": "resourceFile9904"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9905", + "filePath": "resourceFile9905"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9906", + "filePath": "resourceFile9906"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9907", + "filePath": "resourceFile9907"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9908", + "filePath": "resourceFile9908"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9909", + "filePath": "resourceFile9909"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9910", + "filePath": "resourceFile9910"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9911", + "filePath": "resourceFile9911"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9912", + "filePath": "resourceFile9912"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9913", + "filePath": "resourceFile9913"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9914", + "filePath": "resourceFile9914"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9915", + "filePath": "resourceFile9915"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9916", + "filePath": "resourceFile9916"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9917", + "filePath": "resourceFile9917"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9918", + "filePath": "resourceFile9918"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9919", + "filePath": "resourceFile9919"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9920", + "filePath": "resourceFile9920"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9921", + "filePath": "resourceFile9921"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9922", + "filePath": "resourceFile9922"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9923", + "filePath": "resourceFile9923"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9924", + "filePath": "resourceFile9924"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9925", + "filePath": "resourceFile9925"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9926", + "filePath": "resourceFile9926"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9927", + "filePath": "resourceFile9927"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9928", + "filePath": "resourceFile9928"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9929", + "filePath": "resourceFile9929"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9930", + "filePath": "resourceFile9930"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9931", + "filePath": "resourceFile9931"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9932", + "filePath": "resourceFile9932"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9933", + "filePath": "resourceFile9933"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9934", + "filePath": "resourceFile9934"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9935", + "filePath": "resourceFile9935"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9936", + "filePath": "resourceFile9936"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9937", + "filePath": "resourceFile9937"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9938", + "filePath": "resourceFile9938"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9939", + "filePath": "resourceFile9939"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9940", + "filePath": "resourceFile9940"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9941", + "filePath": "resourceFile9941"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9942", + "filePath": "resourceFile9942"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9943", + "filePath": "resourceFile9943"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9944", + "filePath": "resourceFile9944"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9945", + "filePath": "resourceFile9945"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9946", + "filePath": "resourceFile9946"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9947", + "filePath": "resourceFile9947"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9948", + "filePath": "resourceFile9948"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9949", + "filePath": "resourceFile9949"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9950", + "filePath": "resourceFile9950"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9951", + "filePath": "resourceFile9951"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9952", + "filePath": "resourceFile9952"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9953", + "filePath": "resourceFile9953"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9954", + "filePath": "resourceFile9954"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9955", + "filePath": "resourceFile9955"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9956", + "filePath": "resourceFile9956"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9957", + "filePath": "resourceFile9957"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9958", + "filePath": "resourceFile9958"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9959", + "filePath": "resourceFile9959"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9960", + "filePath": "resourceFile9960"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9961", + "filePath": "resourceFile9961"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9962", + "filePath": "resourceFile9962"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9963", + "filePath": "resourceFile9963"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9964", + "filePath": "resourceFile9964"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9965", + "filePath": "resourceFile9965"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9966", + "filePath": "resourceFile9966"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9967", + "filePath": "resourceFile9967"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9968", + "filePath": "resourceFile9968"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9969", + "filePath": "resourceFile9969"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9970", + "filePath": "resourceFile9970"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9971", + "filePath": "resourceFile9971"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9972", + "filePath": "resourceFile9972"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9973", + "filePath": "resourceFile9973"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9974", + "filePath": "resourceFile9974"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9975", + "filePath": "resourceFile9975"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9976", + "filePath": "resourceFile9976"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9977", + "filePath": "resourceFile9977"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9978", + "filePath": "resourceFile9978"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9979", + "filePath": "resourceFile9979"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9980", + "filePath": "resourceFile9980"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9981", + "filePath": "resourceFile9981"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9982", + "filePath": "resourceFile9982"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9983", + "filePath": "resourceFile9983"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9984", + "filePath": "resourceFile9984"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9985", + "filePath": "resourceFile9985"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9986", + "filePath": "resourceFile9986"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9987", + "filePath": "resourceFile9987"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9988", + "filePath": "resourceFile9988"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9989", + "filePath": "resourceFile9989"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9990", + "filePath": "resourceFile9990"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9991", + "filePath": "resourceFile9991"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9992", + "filePath": "resourceFile9992"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9993", + "filePath": "resourceFile9993"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9994", + "filePath": "resourceFile9994"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9995", + "filePath": "resourceFile9995"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9996", + "filePath": "resourceFile9996"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9997", + "filePath": "resourceFile9997"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9998", + "filePath": "resourceFile9998"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9999", + "filePath": "resourceFile9999"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['1207854'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:29 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"RequestBodyTooLarge\",\"message\":{\r\n + \ \"lang\":\"en-US\",\"value\":\"The request body is too large and exceeds + the maximum permissible limit.\\nRequestId:91095a2f-6205-4a48-966a-bba33540bafa\\nTime:2018-09-13T20:24:30.3153553Z\"\r\n + \ },\"values\":[\r\n {\r\n \"key\":\"MaxLimit\",\"value\":\"1048576\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-length: ['451'] + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:30 GMT'] + request-id: [91095a2f-6205-4a48-966a-bba33540bafa] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + status: {code: 413, message: The request body is too large and exceeds the maximum + permissible limit.} +- request: + body: '{"value": [{"id": "mytask732", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask731", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask730", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask729", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask728", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask727", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask726", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask725", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask724", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask723", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask722", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask721", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask720", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask719", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask718", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask717", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask716", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask715", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask714", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask713", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask712", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask711", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask710", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask709", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask708", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask707", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask706", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask705", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask704", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask703", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask702", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask701", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask700", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask699", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask698", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask697", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask696", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask695", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask694", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask693", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask692", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask691", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask690", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask689", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask688", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask687", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask686", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask685", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask684", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask683", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask682", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask681", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask680", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask679", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask678", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask677", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask676", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask675", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask674", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask673", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask672", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask671", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask670", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask669", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask668", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask667", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask666", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask665", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask664", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask663", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask662", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask661", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask660", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask659", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask658", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask657", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask656", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask655", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask654", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask653", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask652", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask651", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask650", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask649", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask648", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask647", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask646", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask645", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask644", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask643", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask642", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask641", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask640", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask639", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask638", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask637", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask636", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask635", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask634", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask633", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['1174611'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:31 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"RequestBodyTooLarge\",\"message\":{\r\n + \ \"lang\":\"en-US\",\"value\":\"The request body is too large and exceeds + the maximum permissible limit.\\nRequestId:cff75933-fa80-4bdf-a3f6-2533efcee021\\nTime:2018-09-13T20:24:32.1086560Z\"\r\n + \ },\"values\":[\r\n {\r\n \"key\":\"MaxLimit\",\"value\":\"1048576\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-length: ['451'] + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:32 GMT'] + request-id: [cff75933-fa80-4bdf-a3f6-2533efcee021] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + status: {code: 413, message: The request body is too large and exceeds the maximum + permissible limit.} +- request: + body: '{"value": [{"id": "mytask732", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask731", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask730", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask729", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask728", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask727", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask726", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask725", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask724", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask723", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask722", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask721", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask720", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask719", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask718", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask717", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask716", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask715", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask714", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask713", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask712", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask711", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask710", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask709", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask708", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask707", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask706", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask705", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask704", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask703", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask702", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask701", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask700", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask699", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask698", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask697", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask696", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask695", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask694", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask693", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask692", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask691", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask690", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask689", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask688", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask687", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask686", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask685", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask684", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask683", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:32 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask732\",\"eTag\":\"0x8D619B6EB3A3838\",\"lastModified\":\"2018-09-13T20:24:34.0707384Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask732\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask731\",\"eTag\":\"0x8D619B6EB3AD2CE\",\"lastModified\":\"2018-09-13T20:24:34.0746958Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask731\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask730\",\"eTag\":\"0x8D619B6EB3CF788\",\"lastModified\":\"2018-09-13T20:24:34.0887432Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask730\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask729\",\"eTag\":\"0x8D619B6EB3D91FA\",\"lastModified\":\"2018-09-13T20:24:34.092697Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask729\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask728\",\"eTag\":\"0x8D619B6EB3ECA76\",\"lastModified\":\"2018-09-13T20:24:34.1006966Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask728\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask727\",\"eTag\":\"0x8D619B6EB40511E\",\"lastModified\":\"2018-09-13T20:24:34.1106974Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask727\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask726\",\"eTag\":\"0x8D619B6EB41B5A4\",\"lastModified\":\"2018-09-13T20:24:34.1198244Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask726\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask725\",\"eTag\":\"0x8D619B6EB43374A\",\"lastModified\":\"2018-09-13T20:24:34.129697Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask725\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask724\",\"eTag\":\"0x8D619B6EB4CFC94\",\"lastModified\":\"2018-09-13T20:24:34.19373Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask724\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask722\",\"eTag\":\"0x8D619B6EB4F6C4D\",\"lastModified\":\"2018-09-13T20:24:34.2096973Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask722\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask721\",\"eTag\":\"0x8D619B6EB540022\",\"lastModified\":\"2018-09-13T20:24:34.2396962Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask721\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask718\",\"eTag\":\"0x8D619B6EB5538AA\",\"lastModified\":\"2018-09-13T20:24:34.247697Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask718\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask720\",\"eTag\":\"0x8D619B6EB56BF34\",\"lastModified\":\"2018-09-13T20:24:34.2576948Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask720\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask716\",\"eTag\":\"0x8D619B6EB59A6F5\",\"lastModified\":\"2018-09-13T20:24:34.2767349Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask716\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask715\",\"eTag\":\"0x8D619B6EB5D88F0\",\"lastModified\":\"2018-09-13T20:24:34.3021808Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask715\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask717\",\"eTag\":\"0x8D619B6EB616DB7\",\"lastModified\":\"2018-09-13T20:24:34.3276983Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask717\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask719\",\"eTag\":\"0x8D619B6EB581EC8\",\"lastModified\":\"2018-09-13T20:24:34.2666952Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask719\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask723\",\"eTag\":\"0x8D619B6EB56BF34\",\"lastModified\":\"2018-09-13T20:24:34.2576948Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask723\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask707\",\"eTag\":\"0x8D619B6EB66C54F\",\"lastModified\":\"2018-09-13T20:24:34.3627087Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask707\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask706\",\"eTag\":\"0x8D619B6EB695CFF\",\"lastModified\":\"2018-09-13T20:24:34.3796991Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask706\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask704\",\"eTag\":\"0x8D619B6EB6ABCE0\",\"lastModified\":\"2018-09-13T20:24:34.3887072Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask704\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask703\",\"eTag\":\"0x8D619B6EB6B0AB0\",\"lastModified\":\"2018-09-13T20:24:34.3906992Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask703\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask713\",\"eTag\":\"0x8D619B6EB5FE908\",\"lastModified\":\"2018-09-13T20:24:34.317748Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask713\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask712\",\"eTag\":\"0x8D619B6EB600E33\",\"lastModified\":\"2018-09-13T20:24:34.3186995Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask712\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask714\",\"eTag\":\"0x8D619B6EB5F7326\",\"lastModified\":\"2018-09-13T20:24:34.3147302Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask714\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask710\",\"eTag\":\"0x8D619B6EB714C42\",\"lastModified\":\"2018-09-13T20:24:34.4316994Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask710\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask708\",\"eTag\":\"0x8D619B6EB714C42\",\"lastModified\":\"2018-09-13T20:24:34.4316994Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask708\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask709\",\"eTag\":\"0x8D619B6EB6194F0\",\"lastModified\":\"2018-09-13T20:24:34.3287024Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask709\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask699\",\"eTag\":\"0x8D619B6EB70FE1C\",\"lastModified\":\"2018-09-13T20:24:34.4296988Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask699\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask698\",\"eTag\":\"0x8D619B6EB72D2E8\",\"lastModified\":\"2018-09-13T20:24:34.4417Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask698\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask695\",\"eTag\":\"0x8D619B6EB76F188\",\"lastModified\":\"2018-09-13T20:24:34.4686984Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask695\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask693\",\"eTag\":\"0x8D619B6EB773FCF\",\"lastModified\":\"2018-09-13T20:24:34.4707023Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask693\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask696\",\"eTag\":\"0x8D619B6EB76F188\",\"lastModified\":\"2018-09-13T20:24:34.4686984Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask696\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask694\",\"eTag\":\"0x8D619B6EB785110\",\"lastModified\":\"2018-09-13T20:24:34.4776976Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask694\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask705\",\"eTag\":\"0x8D619B6EB695CFF\",\"lastModified\":\"2018-09-13T20:24:34.3796991Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask705\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask691\",\"eTag\":\"0x8D619B6EB7BD374\",\"lastModified\":\"2018-09-13T20:24:34.5006964Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask691\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask692\",\"eTag\":\"0x8D619B6EB7BD374\",\"lastModified\":\"2018-09-13T20:24:34.5006964Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask692\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask690\",\"eTag\":\"0x8D619B6EB7EE0C6\",\"lastModified\":\"2018-09-13T20:24:34.5206982Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask690\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask688\",\"eTag\":\"0x8D619B6EB7EE0C6\",\"lastModified\":\"2018-09-13T20:24:34.5206982Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask688\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask689\",\"eTag\":\"0x8D619B6EB7EE0C6\",\"lastModified\":\"2018-09-13T20:24:34.5206982Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask689\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask702\",\"eTag\":\"0x8D619B6EB6DA2BB\",\"lastModified\":\"2018-09-13T20:24:34.4076987Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask702\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask711\",\"eTag\":\"0x8D619B6EB6DC9D5\",\"lastModified\":\"2018-09-13T20:24:34.4086997Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask711\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask687\",\"eTag\":\"0x8D619B6EB804046\",\"lastModified\":\"2018-09-13T20:24:34.5296966Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask687\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask700\",\"eTag\":\"0x8D619B6EB804046\",\"lastModified\":\"2018-09-13T20:24:34.5296966Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask700\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask697\",\"eTag\":\"0x8D619B6EB74326A\",\"lastModified\":\"2018-09-13T20:24:34.4506986Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask697\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask685\",\"eTag\":\"0x8D619B6EB8178E1\",\"lastModified\":\"2018-09-13T20:24:34.5376993Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask685\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask701\",\"eTag\":\"0x8D619B6EB81A2DC\",\"lastModified\":\"2018-09-13T20:24:34.538774Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask701\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask686\",\"eTag\":\"0x8D619B6EB8178E1\",\"lastModified\":\"2018-09-13T20:24:34.5376993Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask686\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask684\",\"eTag\":\"0x8D619B6EB82A5F7\",\"lastModified\":\"2018-09-13T20:24:34.5454071Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask684\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask683\",\"eTag\":\"0x8D619B6EB8374BE\",\"lastModified\":\"2018-09-13T20:24:34.5507006Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask683\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:33 GMT'] + request-id: [8d14d4bb-f326-4520-99fa-de05eb49c06d] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask632", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask631", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask630", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask629", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask628", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask627", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask626", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask625", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask624", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask623", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask622", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask621", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask620", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask619", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask618", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask617", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask616", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask615", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask614", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask613", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask612", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask611", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask610", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask609", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask608", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask607", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask606", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask605", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask604", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask603", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask602", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask601", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask600", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask599", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask598", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask597", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask596", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask595", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask594", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask593", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask592", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask591", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask590", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask589", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask588", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask587", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask586", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask585", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask584", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask583", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:34 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask632\",\"eTag\":\"0x8D619B6EC6321C6\",\"lastModified\":\"2018-09-13T20:24:36.016583Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask632\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask631\",\"eTag\":\"0x8D619B6EC648163\",\"lastModified\":\"2018-09-13T20:24:36.0255843Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask631\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask630\",\"eTag\":\"0x8D619B6EC6607FE\",\"lastModified\":\"2018-09-13T20:24:36.0355838Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask630\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask629\",\"eTag\":\"0x8D619B6EC678F79\",\"lastModified\":\"2018-09-13T20:24:36.0456057Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask629\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask628\",\"eTag\":\"0x8D619B6EC69153D\",\"lastModified\":\"2018-09-13T20:24:36.0555837Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask628\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask627\",\"eTag\":\"0x8D619B6EC6A74D6\",\"lastModified\":\"2018-09-13T20:24:36.0645846Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask627\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask626\",\"eTag\":\"0x8D619B6EC6BFB78\",\"lastModified\":\"2018-09-13T20:24:36.0745848Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask626\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask625\",\"eTag\":\"0x8D619B6EC6DAA2F\",\"lastModified\":\"2018-09-13T20:24:36.0856111Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask625\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask624\",\"eTag\":\"0x8D619B6EC6F57DF\",\"lastModified\":\"2018-09-13T20:24:36.0966111Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask624\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask622\",\"eTag\":\"0x8D619B6EC739CB8\",\"lastModified\":\"2018-09-13T20:24:36.124588Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask622\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask620\",\"eTag\":\"0x8D619B6EC7634B7\",\"lastModified\":\"2018-09-13T20:24:36.1415863Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask620\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask623\",\"eTag\":\"0x8D619B6EC78F3D2\",\"lastModified\":\"2018-09-13T20:24:36.1595858Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask623\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask621\",\"eTag\":\"0x8D619B6EC79691F\",\"lastModified\":\"2018-09-13T20:24:36.1625887Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask621\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask618\",\"eTag\":\"0x8D619B6EC79691F\",\"lastModified\":\"2018-09-13T20:24:36.1625887Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask618\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask615\",\"eTag\":\"0x8D619B6EC7C011B\",\"lastModified\":\"2018-09-13T20:24:36.1795867Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask615\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask614\",\"eTag\":\"0x8D619B6EC7D6974\",\"lastModified\":\"2018-09-13T20:24:36.1888116Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask614\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask612\",\"eTag\":\"0x8D619B6EC7F5C91\",\"lastModified\":\"2018-09-13T20:24:36.2015889Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask612\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask616\",\"eTag\":\"0x8D619B6EC7C284F\",\"lastModified\":\"2018-09-13T20:24:36.1805903Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask616\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask611\",\"eTag\":\"0x8D619B6EC8269F8\",\"lastModified\":\"2018-09-13T20:24:36.2215928Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask611\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask610\",\"eTag\":\"0x8D619B6EC83F089\",\"lastModified\":\"2018-09-13T20:24:36.2315913Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask610\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask609\",\"eTag\":\"0x8D619B6EC83F089\",\"lastModified\":\"2018-09-13T20:24:36.2315913Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask609\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask617\",\"eTag\":\"0x8D619B6EC7F359E\",\"lastModified\":\"2018-09-13T20:24:36.2005918Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask617\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask608\",\"eTag\":\"0x8D619B6EC855012\",\"lastModified\":\"2018-09-13T20:24:36.2405906Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask608\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask613\",\"eTag\":\"0x8D619B6EC7F359E\",\"lastModified\":\"2018-09-13T20:24:36.2005918Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask613\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask619\",\"eTag\":\"0x8D619B6EC7C011B\",\"lastModified\":\"2018-09-13T20:24:36.1795867Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask619\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask607\",\"eTag\":\"0x8D619B6EC86D6CC\",\"lastModified\":\"2018-09-13T20:24:36.2505932Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask607\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask605\",\"eTag\":\"0x8D619B6EC880F31\",\"lastModified\":\"2018-09-13T20:24:36.2585905Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask605\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask606\",\"eTag\":\"0x8D619B6EC883668\",\"lastModified\":\"2018-09-13T20:24:36.2595944Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask606\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask604\",\"eTag\":\"0x8D619B6EC896EC4\",\"lastModified\":\"2018-09-13T20:24:36.2675908Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask604\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask603\",\"eTag\":\"0x8D619B6EC89E414\",\"lastModified\":\"2018-09-13T20:24:36.270594Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask603\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask602\",\"eTag\":\"0x8D619B6EC8B6A9E\",\"lastModified\":\"2018-09-13T20:24:36.2805918Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask602\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask601\",\"eTag\":\"0x8D619B6EC8CF158\",\"lastModified\":\"2018-09-13T20:24:36.2905944Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask601\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask600\",\"eTag\":\"0x8D619B6EC8E50F4\",\"lastModified\":\"2018-09-13T20:24:36.2995956Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask600\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask599\",\"eTag\":\"0x8D619B6EC8F56D0\",\"lastModified\":\"2018-09-13T20:24:36.3062992Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask599\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask598\",\"eTag\":\"0x8D619B6EC8FFE9A\",\"lastModified\":\"2018-09-13T20:24:36.3105946Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask598\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask597\",\"eTag\":\"0x8D619B6EC915E37\",\"lastModified\":\"2018-09-13T20:24:36.3195959Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask597\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask596\",\"eTag\":\"0x8D619B6EC92BDC9\",\"lastModified\":\"2018-09-13T20:24:36.3285961Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask596\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask595\",\"eTag\":\"0x8D619B6EC93CF21\",\"lastModified\":\"2018-09-13T20:24:36.3355937Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask595\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask594\",\"eTag\":\"0x8D619B6EC944467\",\"lastModified\":\"2018-09-13T20:24:36.3385959Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask594\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask592\",\"eTag\":\"0x8D619B6EC9838AE\",\"lastModified\":\"2018-09-13T20:24:36.3645102Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask592\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask593\",\"eTag\":\"0x8D619B6EC98B133\",\"lastModified\":\"2018-09-13T20:24:36.3675955Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask593\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask591\",\"eTag\":\"0x8D619B6EC9B3068\",\"lastModified\":\"2018-09-13T20:24:36.3839592Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask591\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask590\",\"eTag\":\"0x8D619B6EC9B382D\",\"lastModified\":\"2018-09-13T20:24:36.3841581Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask590\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask588\",\"eTag\":\"0x8D619B6EC9CB16B\",\"lastModified\":\"2018-09-13T20:24:36.3938155Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask588\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask587\",\"eTag\":\"0x8D619B6EC9E37BF\",\"lastModified\":\"2018-09-13T20:24:36.4038079Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask587\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask586\",\"eTag\":\"0x8D619B6EC9FB8C2\",\"lastModified\":\"2018-09-13T20:24:36.4136642Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask586\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask585\",\"eTag\":\"0x8D619B6EC9FBB55\",\"lastModified\":\"2018-09-13T20:24:36.4137301Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask585\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask584\",\"eTag\":\"0x8D619B6ECA6BBB4\",\"lastModified\":\"2018-09-13T20:24:36.4596148Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask584\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask589\",\"eTag\":\"0x8D619B6ECA70984\",\"lastModified\":\"2018-09-13T20:24:36.4616068Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask589\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask583\",\"eTag\":\"0x8D619B6ECA70984\",\"lastModified\":\"2018-09-13T20:24:36.4616068Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask583\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:35 GMT'] + request-id: [49372a53-1342-4857-9191-413a96070a50] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask582", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask581", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask580", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask579", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask578", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask577", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask576", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask575", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask574", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask573", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask572", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask571", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask570", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask569", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask568", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask567", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask566", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask565", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask564", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask563", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask562", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask561", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask560", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask559", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask558", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask557", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask556", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask555", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask554", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask553", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask552", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask551", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask550", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask549", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask548", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask547", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask546", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask545", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask544", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask543", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask542", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask541", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask540", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask539", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask538", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask537", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask536", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask535", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask534", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask533", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:36 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask582\",\"eTag\":\"0x8D619B6ED8E4475\",\"lastModified\":\"2018-09-13T20:24:37.9769973Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask582\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask577\",\"eTag\":\"0x8D619B6ED9AEE55\",\"lastModified\":\"2018-09-13T20:24:38.0599893Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask577\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask581\",\"eTag\":\"0x8D619B6ED9AC732\",\"lastModified\":\"2018-09-13T20:24:38.0589874Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask581\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask578\",\"eTag\":\"0x8D619B6EDA108E4\",\"lastModified\":\"2018-09-13T20:24:38.0999908Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask578\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask572\",\"eTag\":\"0x8D619B6EDA3EF1A\",\"lastModified\":\"2018-09-13T20:24:38.1189914Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask572\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask579\",\"eTag\":\"0x8D619B6ED9B3C77\",\"lastModified\":\"2018-09-13T20:24:38.0619895Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask579\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask576\",\"eTag\":\"0x8D619B6ED9C4DD4\",\"lastModified\":\"2018-09-13T20:24:38.0689876Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask576\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask567\",\"eTag\":\"0x8D619B6EDA9E27D\",\"lastModified\":\"2018-09-13T20:24:38.1579901Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask567\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask580\",\"eTag\":\"0x8D619B6ED9B1555\",\"lastModified\":\"2018-09-13T20:24:38.0609877Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask580\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask573\",\"eTag\":\"0x8D619B6ED9F8234\",\"lastModified\":\"2018-09-13T20:24:38.0899892Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask573\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask566\",\"eTag\":\"0x8D619B6EDAB4222\",\"lastModified\":\"2018-09-13T20:24:38.1669922Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask566\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask571\",\"eTag\":\"0x8D619B6EDA41627\",\"lastModified\":\"2018-09-13T20:24:38.1199911Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask571\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask564\",\"eTag\":\"0x8D619B6EDAE7668\",\"lastModified\":\"2018-09-13T20:24:38.1879912Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask564\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask563\",\"eTag\":\"0x8D619B6EDB1358A\",\"lastModified\":\"2018-09-13T20:24:38.2059914Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask563\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask575\",\"eTag\":\"0x8D619B6EDA54E91\",\"lastModified\":\"2018-09-13T20:24:38.1279889Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask575\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask574\",\"eTag\":\"0x8D619B6EDA9E27D\",\"lastModified\":\"2018-09-13T20:24:38.1579901Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask574\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask570\",\"eTag\":\"0x8D619B6EDA6AF99\",\"lastModified\":\"2018-09-13T20:24:38.1370265Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask570\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask562\",\"eTag\":\"0x8D619B6EDB30A50\",\"lastModified\":\"2018-09-13T20:24:38.217992Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask562\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask565\",\"eTag\":\"0x8D619B6EDAE9D85\",\"lastModified\":\"2018-09-13T20:24:38.1889925Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask565\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask568\",\"eTag\":\"0x8D619B6EDAA09B6\",\"lastModified\":\"2018-09-13T20:24:38.1589942Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask568\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask569\",\"eTag\":\"0x8D619B6EDA59CC3\",\"lastModified\":\"2018-09-13T20:24:38.1299907Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask569\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask561\",\"eTag\":\"0x8D619B6EDB41C64\",\"lastModified\":\"2018-09-13T20:24:38.2250084Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask561\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask560\",\"eTag\":\"0x8D619B6EDB442E0\",\"lastModified\":\"2018-09-13T20:24:38.2259936Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask560\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask559\",\"eTag\":\"0x8D619B6EDB4B813\",\"lastModified\":\"2018-09-13T20:24:38.2289939Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask559\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask558\",\"eTag\":\"0x8D619B6EDB7210A\",\"lastModified\":\"2018-09-13T20:24:38.2447882Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask558\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask557\",\"eTag\":\"0x8D619B6EDB8AFA4\",\"lastModified\":\"2018-09-13T20:24:38.2549924Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask557\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask555\",\"eTag\":\"0x8D619B6EDBDB8D6\",\"lastModified\":\"2018-09-13T20:24:38.2879958Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask555\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask556\",\"eTag\":\"0x8D619B6EDBD91C2\",\"lastModified\":\"2018-09-13T20:24:38.2869954Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask556\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask554\",\"eTag\":\"0x8D619B6EDC050D0\",\"lastModified\":\"2018-09-13T20:24:38.3049936Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask554\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask553\",\"eTag\":\"0x8D619B6EDC0C62A\",\"lastModified\":\"2018-09-13T20:24:38.3079978Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask553\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask551\",\"eTag\":\"0x8D619B6EDC4BA02\",\"lastModified\":\"2018-09-13T20:24:38.333901Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask551\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask550\",\"eTag\":\"0x8D619B6EDC63DA9\",\"lastModified\":\"2018-09-13T20:24:38.3438249Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask550\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask547\",\"eTag\":\"0x8D619B6EDCAC0D5\",\"lastModified\":\"2018-09-13T20:24:38.3733973Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask547\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask548\",\"eTag\":\"0x8D619B6EDCB4D8A\",\"lastModified\":\"2018-09-13T20:24:38.3769994Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask548\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask552\",\"eTag\":\"0x8D619B6EDCAC895\",\"lastModified\":\"2018-09-13T20:24:38.3735957Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask552\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask549\",\"eTag\":\"0x8D619B6EDCB2673\",\"lastModified\":\"2018-09-13T20:24:38.3759987Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask549\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask546\",\"eTag\":\"0x8D619B6EDCC41D1\",\"lastModified\":\"2018-09-13T20:24:38.3832529Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask546\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask544\",\"eTag\":\"0x8D619B6EDCDBE87\",\"lastModified\":\"2018-09-13T20:24:38.3929991Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask544\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask545\",\"eTag\":\"0x8D619B6EDCCD43F\",\"lastModified\":\"2018-09-13T20:24:38.3870015Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask545\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask541\",\"eTag\":\"0x8D619B6EDD14107\",\"lastModified\":\"2018-09-13T20:24:38.4160007Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask541\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask542\",\"eTag\":\"0x8D619B6EDCFBA59\",\"lastModified\":\"2018-09-13T20:24:38.4059993Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask542\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask543\",\"eTag\":\"0x8D619B6EDCE5ACA\",\"lastModified\":\"2018-09-13T20:24:38.3969994Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask543\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask540\",\"eTag\":\"0x8D619B6EDD42715\",\"lastModified\":\"2018-09-13T20:24:38.4349973Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask540\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask539\",\"eTag\":\"0x8D619B6EDD5AE32\",\"lastModified\":\"2018-09-13T20:24:38.4450098Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask539\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask538\",\"eTag\":\"0x8D619B6EDD70D4A\",\"lastModified\":\"2018-09-13T20:24:38.4539978Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask538\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask537\",\"eTag\":\"0x8D619B6EDD893EC\",\"lastModified\":\"2018-09-13T20:24:38.463998Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask537\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask536\",\"eTag\":\"0x8D619B6EDDA41A1\",\"lastModified\":\"2018-09-13T20:24:38.4749985Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask536\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask535\",\"eTag\":\"0x8D619B6EDDB7A23\",\"lastModified\":\"2018-09-13T20:24:38.4829987Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask535\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask534\",\"eTag\":\"0x8D619B6EDDCD9C6\",\"lastModified\":\"2018-09-13T20:24:38.4920006Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask534\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask533\",\"eTag\":\"0x8D619B6EDDEFDA8\",\"lastModified\":\"2018-09-13T20:24:38.5060264Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask533\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:38 GMT'] + request-id: [39b94660-280d-4c8c-a289-ffb177b829b5] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask532", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask531", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask530", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask529", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask528", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask527", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask526", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask525", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask524", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask523", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask522", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask521", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask520", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask519", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask518", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask517", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask516", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask515", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask514", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask513", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask512", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask511", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask510", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask509", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask508", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask507", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask506", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask505", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask504", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask503", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask502", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask501", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask500", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask499", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask498", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask497", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask496", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask495", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask494", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask493", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask492", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask491", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask490", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask489", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask488", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask487", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask486", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask485", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask484", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask483", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:38 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask532\",\"eTag\":\"0x8D619B6EECE012C\",\"lastModified\":\"2018-09-13T20:24:40.0724268Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask532\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask531\",\"eTag\":\"0x8D619B6EECF87AC\",\"lastModified\":\"2018-09-13T20:24:40.0824236Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask531\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask530\",\"eTag\":\"0x8D619B6EED13572\",\"lastModified\":\"2018-09-13T20:24:40.0934258Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask530\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask529\",\"eTag\":\"0x8D619B6EED3A77D\",\"lastModified\":\"2018-09-13T20:24:40.1094525Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask529\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask528\",\"eTag\":\"0x8D619B6EED52E9F\",\"lastModified\":\"2018-09-13T20:24:40.1194655Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask528\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask527\",\"eTag\":\"0x8D619B6EED5C954\",\"lastModified\":\"2018-09-13T20:24:40.123426Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask527\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask526\",\"eTag\":\"0x8D619B6EED728FB\",\"lastModified\":\"2018-09-13T20:24:40.1324283Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask526\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask525\",\"eTag\":\"0x8D619B6EED8D69E\",\"lastModified\":\"2018-09-13T20:24:40.143427Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask525\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask524\",\"eTag\":\"0x8D619B6EEDBBCDD\",\"lastModified\":\"2018-09-13T20:24:40.1624285Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask524\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask523\",\"eTag\":\"0x8D619B6EEDD1C6B\",\"lastModified\":\"2018-09-13T20:24:40.1714283Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask523\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask521\",\"eTag\":\"0x8D619B6EEDFDBA5\",\"lastModified\":\"2018-09-13T20:24:40.1894309Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask521\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask518\",\"eTag\":\"0x8D619B6EEE2E8CF\",\"lastModified\":\"2018-09-13T20:24:40.2094287Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask518\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask522\",\"eTag\":\"0x8D619B6EEE2E8CF\",\"lastModified\":\"2018-09-13T20:24:40.2094287Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask522\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask515\",\"eTag\":\"0x8D619B6EEE5A808\",\"lastModified\":\"2018-09-13T20:24:40.2274312Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask515\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask520\",\"eTag\":\"0x8D619B6EEE49694\",\"lastModified\":\"2018-09-13T20:24:40.2204308Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask520\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask519\",\"eTag\":\"0x8D619B6EEE92B62\",\"lastModified\":\"2018-09-13T20:24:40.2504546Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask519\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask514\",\"eTag\":\"0x8D619B6EEE7A3E7\",\"lastModified\":\"2018-09-13T20:24:40.2404327Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask514\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask517\",\"eTag\":\"0x8D619B6EEE97894\",\"lastModified\":\"2018-09-13T20:24:40.2524308Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask517\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask516\",\"eTag\":\"0x8D619B6EEF5117D\",\"lastModified\":\"2018-09-13T20:24:40.3284349Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask516\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask510\",\"eTag\":\"0x8D619B6EEF67116\",\"lastModified\":\"2018-09-13T20:24:40.3374358Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask510\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask498\",\"eTag\":\"0x8D619B6EEFF9902\",\"lastModified\":\"2018-09-13T20:24:40.3974402Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask498\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask496\",\"eTag\":\"0x8D619B6EF024AE0\",\"lastModified\":\"2018-09-13T20:24:40.4151008Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask496\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask512\",\"eTag\":\"0x8D619B6EEE97894\",\"lastModified\":\"2018-09-13T20:24:40.2524308Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask512\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask513\",\"eTag\":\"0x8D619B6EEEAB109\",\"lastModified\":\"2018-09-13T20:24:40.2604297Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask513\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask509\",\"eTag\":\"0x8D619B6EEF69828\",\"lastModified\":\"2018-09-13T20:24:40.338436Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask509\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask506\",\"eTag\":\"0x8D619B6EEF845EC\",\"lastModified\":\"2018-09-13T20:24:40.349438Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask506\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask508\",\"eTag\":\"0x8D619B6EEF81ED6\",\"lastModified\":\"2018-09-13T20:24:40.3484374Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask508\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask507\",\"eTag\":\"0x8D619B6EEF7F7C2\",\"lastModified\":\"2018-09-13T20:24:40.347437Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask507\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask483\",\"eTag\":\"0x8D619B6EF0E8D4F\",\"lastModified\":\"2018-09-13T20:24:40.4954447Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask483\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask485\",\"eTag\":\"0x8D619B6EF0E8D4F\",\"lastModified\":\"2018-09-13T20:24:40.4954447Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask485\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask486\",\"eTag\":\"0x8D619B6EF0E6D46\",\"lastModified\":\"2018-09-13T20:24:40.4946246Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask486\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask497\",\"eTag\":\"0x8D619B6EEFF9902\",\"lastModified\":\"2018-09-13T20:24:40.3974402Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask497\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask511\",\"eTag\":\"0x8D619B6EF0E6819\",\"lastModified\":\"2018-09-13T20:24:40.4944921Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask511\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask495\",\"eTag\":\"0x8D619B6EF03DEC2\",\"lastModified\":\"2018-09-13T20:24:40.4254402Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask495\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask487\",\"eTag\":\"0x8D619B6EF0D54CF\",\"lastModified\":\"2018-09-13T20:24:40.4874447Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask487\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask493\",\"eTag\":\"0x8D619B6EF0554C3\",\"lastModified\":\"2018-09-13T20:24:40.4350147Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask493\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask492\",\"eTag\":\"0x8D619B6EF11C1A7\",\"lastModified\":\"2018-09-13T20:24:40.5164455Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask492\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask491\",\"eTag\":\"0x8D619B6EF11C1A7\",\"lastModified\":\"2018-09-13T20:24:40.5164455Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask491\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask494\",\"eTag\":\"0x8D619B6EF03DEC2\",\"lastModified\":\"2018-09-13T20:24:40.4254402Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask494\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask490\",\"eTag\":\"0x8D619B6EF12FA12\",\"lastModified\":\"2018-09-13T20:24:40.5244434Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask490\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask488\",\"eTag\":\"0x8D619B6EF076165\",\"lastModified\":\"2018-09-13T20:24:40.4484453Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask488\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask489\",\"eTag\":\"0x8D619B6EF14A7D5\",\"lastModified\":\"2018-09-13T20:24:40.5354453Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask489\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask504\",\"eTag\":\"0x8D619B6EF0EDB7A\",\"lastModified\":\"2018-09-13T20:24:40.4974458Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask504\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask484\",\"eTag\":\"0x8D619B6EF0EB46A\",\"lastModified\":\"2018-09-13T20:24:40.4964458Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask484\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask499\",\"eTag\":\"0x8D619B6EF0EDB7A\",\"lastModified\":\"2018-09-13T20:24:40.4974458Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask499\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask500\",\"eTag\":\"0x8D619B6EF0EDB7A\",\"lastModified\":\"2018-09-13T20:24:40.4974458Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask500\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask502\",\"eTag\":\"0x8D619B6EF0EB46A\",\"lastModified\":\"2018-09-13T20:24:40.4964458Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask502\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask505\",\"eTag\":\"0x8D619B6EF0E8D4F\",\"lastModified\":\"2018-09-13T20:24:40.4954447Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask505\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask501\",\"eTag\":\"0x8D619B6EF0EB46A\",\"lastModified\":\"2018-09-13T20:24:40.4964458Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask501\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask503\",\"eTag\":\"0x8D619B6EF0EB46A\",\"lastModified\":\"2018-09-13T20:24:40.4964458Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask503\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:40 GMT'] + request-id: [4ebdc2d7-d10d-4e0b-b1ef-8983174c9655] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask482", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask481", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask480", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask479", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask478", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask477", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask476", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask475", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask474", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask473", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask472", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask471", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask470", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask469", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask468", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask467", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask466", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask465", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask464", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask463", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask462", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask461", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask460", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask459", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask458", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask457", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask456", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask455", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask454", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask453", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask452", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask451", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask450", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask449", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask448", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask447", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask446", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask445", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask444", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask443", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask442", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask441", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask440", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask439", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask438", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask437", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask436", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask435", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask434", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask433", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:40 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask481\",\"eTag\":\"0x8D619B6F00A1859\",\"lastModified\":\"2018-09-13T20:24:42.1439577Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask481\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask482\",\"eTag\":\"0x8D619B6F00A1859\",\"lastModified\":\"2018-09-13T20:24:42.1439577Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask482\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask480\",\"eTag\":\"0x8D619B6F00B77CD\",\"lastModified\":\"2018-09-13T20:24:42.1529549Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask480\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask479\",\"eTag\":\"0x8D619B6F00CFE84\",\"lastModified\":\"2018-09-13T20:24:42.1629572Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask479\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask478\",\"eTag\":\"0x8D619B6F00CFE84\",\"lastModified\":\"2018-09-13T20:24:42.1629572Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask478\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask477\",\"eTag\":\"0x8D619B6F00FBDB5\",\"lastModified\":\"2018-09-13T20:24:42.1809589Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask477\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask476\",\"eTag\":\"0x8D619B6F0100BBE\",\"lastModified\":\"2018-09-13T20:24:42.1829566Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask476\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask475\",\"eTag\":\"0x8D619B6F0119271\",\"lastModified\":\"2018-09-13T20:24:42.1929585Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask475\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask474\",\"eTag\":\"0x8D619B6F0119271\",\"lastModified\":\"2018-09-13T20:24:42.1929585Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask474\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask473\",\"eTag\":\"0x8D619B6F0131928\",\"lastModified\":\"2018-09-13T20:24:42.2029608Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask473\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask472\",\"eTag\":\"0x8D619B6F0131928\",\"lastModified\":\"2018-09-13T20:24:42.2029608Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask472\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask471\",\"eTag\":\"0x8D619B6F0149FAF\",\"lastModified\":\"2018-09-13T20:24:42.2129583Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask471\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask470\",\"eTag\":\"0x8D619B6F016265F\",\"lastModified\":\"2018-09-13T20:24:42.2229599Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask470\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask469\",\"eTag\":\"0x8D619B6F016265F\",\"lastModified\":\"2018-09-13T20:24:42.2229599Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask469\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask468\",\"eTag\":\"0x8D619B6F018BE7D\",\"lastModified\":\"2018-09-13T20:24:42.2399613Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask468\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask467\",\"eTag\":\"0x8D619B6F01A79B3\",\"lastModified\":\"2018-09-13T20:24:42.2513075Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask467\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask465\",\"eTag\":\"0x8D619B6F01ABA68\",\"lastModified\":\"2018-09-13T20:24:42.252964Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask465\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask466\",\"eTag\":\"0x8D619B6F01A9350\",\"lastModified\":\"2018-09-13T20:24:42.2519632Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask466\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask464\",\"eTag\":\"0x8D619B6F01BD3F1\",\"lastModified\":\"2018-09-13T20:24:42.2601713Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask464\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask463\",\"eTag\":\"0x8D619B6F01C6817\",\"lastModified\":\"2018-09-13T20:24:42.2639639Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask463\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask462\",\"eTag\":\"0x8D619B6F01D526C\",\"lastModified\":\"2018-09-13T20:24:42.2699628Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask462\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask461\",\"eTag\":\"0x8D619B6F01DEE9E\",\"lastModified\":\"2018-09-13T20:24:42.2739614Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask461\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask460\",\"eTag\":\"0x8D619B6F01F7564\",\"lastModified\":\"2018-09-13T20:24:42.2839652Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask460\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask459\",\"eTag\":\"0x8D619B6F01F7564\",\"lastModified\":\"2018-09-13T20:24:42.2839652Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask459\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask458\",\"eTag\":\"0x8D619B6F0212305\",\"lastModified\":\"2018-09-13T20:24:42.2949637Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask458\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask457\",\"eTag\":\"0x8D619B6F0220D77\",\"lastModified\":\"2018-09-13T20:24:42.3009655Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask457\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask456\",\"eTag\":\"0x8D619B6F022829E\",\"lastModified\":\"2018-09-13T20:24:42.3039646Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask456\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask454\",\"eTag\":\"0x8D619B6F02541F4\",\"lastModified\":\"2018-09-13T20:24:42.32197Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask454\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask455\",\"eTag\":\"0x8D619B6F0251CA0\",\"lastModified\":\"2018-09-13T20:24:42.3210144Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask455\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask453\",\"eTag\":\"0x8D619B6F025DEFD\",\"lastModified\":\"2018-09-13T20:24:42.3259901Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask453\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask452\",\"eTag\":\"0x8D619B6F026A154\",\"lastModified\":\"2018-09-13T20:24:42.3309652Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask452\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask451\",\"eTag\":\"0x8D619B6F026EFA8\",\"lastModified\":\"2018-09-13T20:24:42.3329704Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask451\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask450\",\"eTag\":\"0x8D619B6F02800E5\",\"lastModified\":\"2018-09-13T20:24:42.3399653Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask450\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask449\",\"eTag\":\"0x8D619B6F0296265\",\"lastModified\":\"2018-09-13T20:24:42.3490149Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask449\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask447\",\"eTag\":\"0x8D619B6F02AE810\",\"lastModified\":\"2018-09-13T20:24:42.3589904Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask447\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask448\",\"eTag\":\"0x8D619B6F02AE810\",\"lastModified\":\"2018-09-13T20:24:42.3589904Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask448\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask446\",\"eTag\":\"0x8D619B6F02C6DD5\",\"lastModified\":\"2018-09-13T20:24:42.3689685Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask446\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask445\",\"eTag\":\"0x8D619B6F02D310F\",\"lastModified\":\"2018-09-13T20:24:42.3739663Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask445\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask444\",\"eTag\":\"0x8D619B6F02E2C07\",\"lastModified\":\"2018-09-13T20:24:42.3803911Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask444\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask442\",\"eTag\":\"0x8D619B6F02FA416\",\"lastModified\":\"2018-09-13T20:24:42.3900182Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask442\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask443\",\"eTag\":\"0x8D619B6F02FA416\",\"lastModified\":\"2018-09-13T20:24:42.3900182Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask443\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask441\",\"eTag\":\"0x8D619B6F03129FE\",\"lastModified\":\"2018-09-13T20:24:42.3999998Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask441\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask440\",\"eTag\":\"0x8D619B6F031C51F\",\"lastModified\":\"2018-09-13T20:24:42.4039711Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask440\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask439\",\"eTag\":\"0x8D619B6F032B9A9\",\"lastModified\":\"2018-09-13T20:24:42.4102313Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask439\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask438\",\"eTag\":\"0x8D619B6F0343648\",\"lastModified\":\"2018-09-13T20:24:42.4199752Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask438\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask437\",\"eTag\":\"0x8D619B6F034D251\",\"lastModified\":\"2018-09-13T20:24:42.4239697Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask437\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask435\",\"eTag\":\"0x8D619B6F037438F\",\"lastModified\":\"2018-09-13T20:24:42.4399759Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask435\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask436\",\"eTag\":\"0x8D619B6F037438F\",\"lastModified\":\"2018-09-13T20:24:42.4399759Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask436\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask434\",\"eTag\":\"0x8D619B6F037DF90\",\"lastModified\":\"2018-09-13T20:24:42.4439696Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask434\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask433\",\"eTag\":\"0x8D619B6F0398FBC\",\"lastModified\":\"2018-09-13T20:24:42.4550332Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask433\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:41 GMT'] + request-id: [514f6cb2-e9a2-440f-88b4-433e8397bc8b] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask432", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask431", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask430", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask429", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask428", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask427", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask426", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask425", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask424", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask423", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask422", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask421", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask420", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask419", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask418", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask417", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask416", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask415", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask414", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask413", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask412", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask411", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask410", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask409", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask408", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask407", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask406", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask405", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask404", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask403", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask402", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask401", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask400", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask399", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask398", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask397", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask396", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask395", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask394", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask393", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask392", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask391", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask390", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask389", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask388", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask387", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask386", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask385", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask384", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask383", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:42 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask432\",\"eTag\":\"0x8D619B6F129333A\",\"lastModified\":\"2018-09-13T20:24:44.025529Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask432\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask430\",\"eTag\":\"0x8D619B6F131229E\",\"lastModified\":\"2018-09-13T20:24:44.0775326Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask430\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask428\",\"eTag\":\"0x8D619B6F133BAA3\",\"lastModified\":\"2018-09-13T20:24:44.0945315Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask428\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask431\",\"eTag\":\"0x8D619B6F133939C\",\"lastModified\":\"2018-09-13T20:24:44.0935324Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask431\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask427\",\"eTag\":\"0x8D619B6F137160E\",\"lastModified\":\"2018-09-13T20:24:44.1165326Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask427\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask425\",\"eTag\":\"0x8D619B6F13C1F25\",\"lastModified\":\"2018-09-13T20:24:44.1495333Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask425\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask421\",\"eTag\":\"0x8D619B6F13F055E\",\"lastModified\":\"2018-09-13T20:24:44.1685342Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask421\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask424\",\"eTag\":\"0x8D619B6F13A716C\",\"lastModified\":\"2018-09-13T20:24:44.1385324Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask424\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask429\",\"eTag\":\"0x8D619B6F136EEDE\",\"lastModified\":\"2018-09-13T20:24:44.1155294Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask429\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask418\",\"eTag\":\"0x8D619B6F141D2FB\",\"lastModified\":\"2018-09-13T20:24:44.1869051Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask418\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask417\",\"eTag\":\"0x8D619B6F14212A6\",\"lastModified\":\"2018-09-13T20:24:44.188535Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask417\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask423\",\"eTag\":\"0x8D619B6F1454901\",\"lastModified\":\"2018-09-13T20:24:44.2095873Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask423\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask426\",\"eTag\":\"0x8D619B6F13DA5B6\",\"lastModified\":\"2018-09-13T20:24:44.1595318Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask426\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask422\",\"eTag\":\"0x8D619B6F147D493\",\"lastModified\":\"2018-09-13T20:24:44.2262675Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask422\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask413\",\"eTag\":\"0x8D619B6F14965AE\",\"lastModified\":\"2018-09-13T20:24:44.2365358Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask413\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask419\",\"eTag\":\"0x8D619B6F141EB9A\",\"lastModified\":\"2018-09-13T20:24:44.1875354Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask419\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask410\",\"eTag\":\"0x8D619B6F14B3A67\",\"lastModified\":\"2018-09-13T20:24:44.2485351Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask410\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask409\",\"eTag\":\"0x8D619B6F14B618D\",\"lastModified\":\"2018-09-13T20:24:44.2495373Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask409\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask420\",\"eTag\":\"0x8D619B6F148543D\",\"lastModified\":\"2018-09-13T20:24:44.2295357Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask420\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask416\",\"eTag\":\"0x8D619B6F14D5D54\",\"lastModified\":\"2018-09-13T20:24:44.2625364Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask416\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask407\",\"eTag\":\"0x8D619B6F159E3B8\",\"lastModified\":\"2018-09-13T20:24:44.34462Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask407\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask412\",\"eTag\":\"0x8D619B6F15A07B6\",\"lastModified\":\"2018-09-13T20:24:44.3455414Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask412\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask406\",\"eTag\":\"0x8D619B6F15A55D3\",\"lastModified\":\"2018-09-13T20:24:44.3475411Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask406\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask408\",\"eTag\":\"0x8D619B6F15A55D3\",\"lastModified\":\"2018-09-13T20:24:44.3475411Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask408\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask415\",\"eTag\":\"0x8D619B6F159DBE9\",\"lastModified\":\"2018-09-13T20:24:44.3444201Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask415\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask414\",\"eTag\":\"0x8D619B6F1498CCB\",\"lastModified\":\"2018-09-13T20:24:44.2375371Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask414\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask403\",\"eTag\":\"0x8D619B6F15BB569\",\"lastModified\":\"2018-09-13T20:24:44.3565417Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask403\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask411\",\"eTag\":\"0x8D619B6F149B3DF\",\"lastModified\":\"2018-09-13T20:24:44.2385375Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask411\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask394\",\"eTag\":\"0x8D619B6F162E168\",\"lastModified\":\"2018-09-13T20:24:44.4035432Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask394\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask391\",\"eTag\":\"0x8D619B6F1648F16\",\"lastModified\":\"2018-09-13T20:24:44.414543Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask391\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask392\",\"eTag\":\"0x8D619B6F164DD45\",\"lastModified\":\"2018-09-13T20:24:44.4165445Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask392\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask393\",\"eTag\":\"0x8D619B6F163568C\",\"lastModified\":\"2018-09-13T20:24:44.406542Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask393\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask390\",\"eTag\":\"0x8D619B6F1679C65\",\"lastModified\":\"2018-09-13T20:24:44.4345445Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask390\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask389\",\"eTag\":\"0x8D619B6F167EA86\",\"lastModified\":\"2018-09-13T20:24:44.4365446Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask389\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask386\",\"eTag\":\"0x8D619B6F16BF04B\",\"lastModified\":\"2018-09-13T20:24:44.4629067Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask386\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask397\",\"eTag\":\"0x8D619B6F1697132\",\"lastModified\":\"2018-09-13T20:24:44.4465458Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask397\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask398\",\"eTag\":\"0x8D619B6F16AD0AE\",\"lastModified\":\"2018-09-13T20:24:44.4555438Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask398\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask387\",\"eTag\":\"0x8D619B6F16C0940\",\"lastModified\":\"2018-09-13T20:24:44.4635456Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask387\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask395\",\"eTag\":\"0x8D619B6F15BDC7D\",\"lastModified\":\"2018-09-13T20:24:44.3575421Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask395\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask400\",\"eTag\":\"0x8D619B6F16AF7CB\",\"lastModified\":\"2018-09-13T20:24:44.4565451Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask400\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask388\",\"eTag\":\"0x8D619B6F1694A0A\",\"lastModified\":\"2018-09-13T20:24:44.4455434Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask388\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask384\",\"eTag\":\"0x8D619B6F16DDE06\",\"lastModified\":\"2018-09-13T20:24:44.4755462Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask384\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask404\",\"eTag\":\"0x8D619B6F15CDE09\",\"lastModified\":\"2018-09-13T20:24:44.3641353Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask404\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask405\",\"eTag\":\"0x8D619B6F161A8DF\",\"lastModified\":\"2018-09-13T20:24:44.3955423Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask405\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask401\",\"eTag\":\"0x8D619B6F16C0940\",\"lastModified\":\"2018-09-13T20:24:44.4635456Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask401\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask399\",\"eTag\":\"0x8D619B6F16C3050\",\"lastModified\":\"2018-09-13T20:24:44.4645456Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask399\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask402\",\"eTag\":\"0x8D619B6F16E051B\",\"lastModified\":\"2018-09-13T20:24:44.4765467Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask402\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask385\",\"eTag\":\"0x8D619B6F16C5767\",\"lastModified\":\"2018-09-13T20:24:44.4655463Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask385\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask383\",\"eTag\":\"0x8D619B6F1707601\",\"lastModified\":\"2018-09-13T20:24:44.4925441Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask383\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask396\",\"eTag\":\"0x8D619B6F16C3050\",\"lastModified\":\"2018-09-13T20:24:44.4645456Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask396\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:44 GMT'] + request-id: [aed51892-92af-4870-afc1-19906e525c5a] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask382", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask381", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask380", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask379", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask378", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask377", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask376", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask375", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask374", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask373", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask372", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask371", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask370", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask369", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask368", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask367", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask366", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask365", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask364", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask363", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask362", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask361", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask360", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask359", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask358", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask357", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask356", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask355", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask354", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask353", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask352", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask351", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask350", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask349", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask348", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask347", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask346", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask345", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask344", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask343", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask342", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask341", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask340", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask339", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask338", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask337", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask336", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask335", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask334", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask333", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:44 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask382\",\"eTag\":\"0x8D619B6F26E6F93\",\"lastModified\":\"2018-09-13T20:24:46.1569939Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask382\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask381\",\"eTag\":\"0x8D619B6F2701AC4\",\"lastModified\":\"2018-09-13T20:24:46.16793Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask381\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask379\",\"eTag\":\"0x8D619B6F2739D45\",\"lastModified\":\"2018-09-13T20:24:46.1909317Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask379\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask380\",\"eTag\":\"0x8D619B6F274FCDF\",\"lastModified\":\"2018-09-13T20:24:46.1999327Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask380\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask377\",\"eTag\":\"0x8D619B6F276386C\",\"lastModified\":\"2018-09-13T20:24:46.2080108Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask377\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask378\",\"eTag\":\"0x8D619B6F2768361\",\"lastModified\":\"2018-09-13T20:24:46.2099297Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask378\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask373\",\"eTag\":\"0x8D619B6F27D8865\",\"lastModified\":\"2018-09-13T20:24:46.2559333Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask373\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask375\",\"eTag\":\"0x8D619B6F279DF0B\",\"lastModified\":\"2018-09-13T20:24:46.2319371Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask375\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask374\",\"eTag\":\"0x8D619B6F27C77C7\",\"lastModified\":\"2018-09-13T20:24:46.2489543Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask374\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask376\",\"eTag\":\"0x8D619B6F277AC76\",\"lastModified\":\"2018-09-13T20:24:46.217535Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask376\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask372\",\"eTag\":\"0x8D619B6F27D8865\",\"lastModified\":\"2018-09-13T20:24:46.2559333Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask372\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask370\",\"eTag\":\"0x8D619B6F27EE7FE\",\"lastModified\":\"2018-09-13T20:24:46.2649342Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask370\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask363\",\"eTag\":\"0x8D619B6F288AC23\",\"lastModified\":\"2018-09-13T20:24:46.3289379Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask363\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask371\",\"eTag\":\"0x8D619B6F28884F9\",\"lastModified\":\"2018-09-13T20:24:46.3279353Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask371\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask366\",\"eTag\":\"0x8D619B6F2886BFA\",\"lastModified\":\"2018-09-13T20:24:46.3272954Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask366\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask364\",\"eTag\":\"0x8D619B6F28884F9\",\"lastModified\":\"2018-09-13T20:24:46.3279353Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask364\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask369\",\"eTag\":\"0x8D619B6F280478F\",\"lastModified\":\"2018-09-13T20:24:46.2739343Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask369\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask367\",\"eTag\":\"0x8D619B6F28354D8\",\"lastModified\":\"2018-09-13T20:24:46.2939352Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask367\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask360\",\"eTag\":\"0x8D619B6F28CD92E\",\"lastModified\":\"2018-09-13T20:24:46.3563054Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask360\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask361\",\"eTag\":\"0x8D619B6F28CB353\",\"lastModified\":\"2018-09-13T20:24:46.3553363Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask361\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask368\",\"eTag\":\"0x8D619B6F28354D8\",\"lastModified\":\"2018-09-13T20:24:46.2939352Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask368\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask365\",\"eTag\":\"0x8D619B6F28E2753\",\"lastModified\":\"2018-09-13T20:24:46.3648595Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask365\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask358\",\"eTag\":\"0x8D619B6F28E5182\",\"lastModified\":\"2018-09-13T20:24:46.3659394Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask358\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask359\",\"eTag\":\"0x8D619B6F28D4022\",\"lastModified\":\"2018-09-13T20:24:46.358941Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask359\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask356\",\"eTag\":\"0x8D619B6F28FB107\",\"lastModified\":\"2018-09-13T20:24:46.3749383Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask356\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask357\",\"eTag\":\"0x8D619B6F28F9638\",\"lastModified\":\"2018-09-13T20:24:46.374252Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask357\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask355\",\"eTag\":\"0x8D619B6F291109E\",\"lastModified\":\"2018-09-13T20:24:46.383939Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask355\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask362\",\"eTag\":\"0x8D619B6F29137AD\",\"lastModified\":\"2018-09-13T20:24:46.3849389Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask362\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask353\",\"eTag\":\"0x8D619B6F2927686\",\"lastModified\":\"2018-09-13T20:24:46.3931014Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask353\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask354\",\"eTag\":\"0x8D619B6F292714E\",\"lastModified\":\"2018-09-13T20:24:46.3929678Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask354\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask352\",\"eTag\":\"0x8D619B6F293E547\",\"lastModified\":\"2018-09-13T20:24:46.4024903Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask352\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask351\",\"eTag\":\"0x8D619B6F2955651\",\"lastModified\":\"2018-09-13T20:24:46.4119377Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask351\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask350\",\"eTag\":\"0x8D619B6F296C321\",\"lastModified\":\"2018-09-13T20:24:46.4212769Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask350\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask349\",\"eTag\":\"0x8D619B6F29863BF\",\"lastModified\":\"2018-09-13T20:24:46.4319423Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask349\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask348\",\"eTag\":\"0x8D619B6F299A33B\",\"lastModified\":\"2018-09-13T20:24:46.4401211Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask348\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask347\",\"eTag\":\"0x8D619B6F299A86D\",\"lastModified\":\"2018-09-13T20:24:46.4402541Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask347\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask345\",\"eTag\":\"0x8D619B6F29B9810\",\"lastModified\":\"2018-09-13T20:24:46.4529424Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask345\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask346\",\"eTag\":\"0x8D619B6F29B9810\",\"lastModified\":\"2018-09-13T20:24:46.4529424Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask346\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask344\",\"eTag\":\"0x8D619B6F29D9C2A\",\"lastModified\":\"2018-09-13T20:24:46.4661546Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask344\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask343\",\"eTag\":\"0x8D619B6F29E7E46\",\"lastModified\":\"2018-09-13T20:24:46.471943Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask343\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask342\",\"eTag\":\"0x8D619B6F29F70DA\",\"lastModified\":\"2018-09-13T20:24:46.478153Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask342\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask340\",\"eTag\":\"0x8D619B6F2A004F4\",\"lastModified\":\"2018-09-13T20:24:46.4819444Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask340\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask341\",\"eTag\":\"0x8D619B6F29FDFB9\",\"lastModified\":\"2018-09-13T20:24:46.4809913Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask341\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask339\",\"eTag\":\"0x8D619B6F2A0DFA1\",\"lastModified\":\"2018-09-13T20:24:46.4875425Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask339\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask338\",\"eTag\":\"0x8D619B6F2A258DD\",\"lastModified\":\"2018-09-13T20:24:46.4971997Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask338\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask337\",\"eTag\":\"0x8D619B6F2A275E4\",\"lastModified\":\"2018-09-13T20:24:46.4979428Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask337\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask336\",\"eTag\":\"0x8D619B6F2A3C51A\",\"lastModified\":\"2018-09-13T20:24:46.5065242Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask336\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask335\",\"eTag\":\"0x8D619B6F2A53BC2\",\"lastModified\":\"2018-09-13T20:24:46.5161154Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask335\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask334\",\"eTag\":\"0x8D619B6F2A6B50D\",\"lastModified\":\"2018-09-13T20:24:46.5257741Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask334\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask333\",\"eTag\":\"0x8D619B6F2A7AE32\",\"lastModified\":\"2018-09-13T20:24:46.5321522Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask333\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:46 GMT'] + request-id: [82513418-b0f7-4f5b-94f6-196c9a2d3b25] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask332", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask331", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask330", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask329", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask328", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask327", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask326", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask325", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask324", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask323", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask322", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask321", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask320", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask319", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask318", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask317", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask316", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask315", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask314", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask313", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask312", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask311", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask310", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask309", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask308", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask307", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask306", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask305", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask304", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask303", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask302", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask301", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask300", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask299", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask298", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask297", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask296", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask295", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask294", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask293", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask292", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask291", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask290", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask289", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask288", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask287", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask286", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask285", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask284", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask283", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:46 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask332\",\"eTag\":\"0x8D619B6F38B61C7\",\"lastModified\":\"2018-09-13T20:24:48.0244167Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask332\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask331\",\"eTag\":\"0x8D619B6F38C4E34\",\"lastModified\":\"2018-09-13T20:24:48.0304692Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask331\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask330\",\"eTag\":\"0x8D619B6F38DAE8E\",\"lastModified\":\"2018-09-13T20:24:48.0394894Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask330\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask329\",\"eTag\":\"0x8D619B6F38F5965\",\"lastModified\":\"2018-09-13T20:24:48.0504165Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask329\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask327\",\"eTag\":\"0x8D619B6F3959B07\",\"lastModified\":\"2018-09-13T20:24:48.0914183Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask327\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask328\",\"eTag\":\"0x8D619B6F39266B6\",\"lastModified\":\"2018-09-13T20:24:48.0704182Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask328\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask326\",\"eTag\":\"0x8D619B6F3981A38\",\"lastModified\":\"2018-09-13T20:24:48.1077816Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask326\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask324\",\"eTag\":\"0x8D619B6F39E26AB\",\"lastModified\":\"2018-09-13T20:24:48.1474219Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask324\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask323\",\"eTag\":\"0x8D619B6F39F5F20\",\"lastModified\":\"2018-09-13T20:24:48.1554208Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask323\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask325\",\"eTag\":\"0x8D619B6F39F86FE\",\"lastModified\":\"2018-09-13T20:24:48.1564414Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask325\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask322\",\"eTag\":\"0x8D619B6F3A133FA\",\"lastModified\":\"2018-09-13T20:24:48.1674234Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask322\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask321\",\"eTag\":\"0x8D619B6F3A1D044\",\"lastModified\":\"2018-09-13T20:24:48.1714244Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask321\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask320\",\"eTag\":\"0x8D619B6F3A57A39\",\"lastModified\":\"2018-09-13T20:24:48.1954361Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask320\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask319\",\"eTag\":\"0x8D619B6F3A5A0E2\",\"lastModified\":\"2018-09-13T20:24:48.1964258Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask319\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask318\",\"eTag\":\"0x8D619B6F3A6DA9E\",\"lastModified\":\"2018-09-13T20:24:48.2044574Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask318\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask316\",\"eTag\":\"0x8D619B6F3A84A9F\",\"lastModified\":\"2018-09-13T20:24:48.2138783Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask316\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask315\",\"eTag\":\"0x8D619B6F3A94C04\",\"lastModified\":\"2018-09-13T20:24:48.2204676Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask315\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask314\",\"eTag\":\"0x8D619B6F3AB6E94\",\"lastModified\":\"2018-09-13T20:24:48.2344596Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask314\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask317\",\"eTag\":\"0x8D619B6F3AB9481\",\"lastModified\":\"2018-09-13T20:24:48.2354305Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask317\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask312\",\"eTag\":\"0x8D619B6F3ACF3EA\",\"lastModified\":\"2018-09-13T20:24:48.2444266Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask312\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask313\",\"eTag\":\"0x8D619B6F3AD6921\",\"lastModified\":\"2018-09-13T20:24:48.2474273Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask313\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask311\",\"eTag\":\"0x8D619B6F3AE5BE2\",\"lastModified\":\"2018-09-13T20:24:48.2536418Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask311\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask310\",\"eTag\":\"0x8D619B6F3AE5BE2\",\"lastModified\":\"2018-09-13T20:24:48.2536418Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask310\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask309\",\"eTag\":\"0x8D619B6F3B0C482\",\"lastModified\":\"2018-09-13T20:24:48.2694274Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask309\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask308\",\"eTag\":\"0x8D619B6F3B13B43\",\"lastModified\":\"2018-09-13T20:24:48.2724675Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask308\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask307\",\"eTag\":\"0x8D619B6F3B2E750\",\"lastModified\":\"2018-09-13T20:24:48.2834256Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask307\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask306\",\"eTag\":\"0x8D619B6F3B2E750\",\"lastModified\":\"2018-09-13T20:24:48.2834256Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask306\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask305\",\"eTag\":\"0x8D619B6F3B46E07\",\"lastModified\":\"2018-09-13T20:24:48.2934279Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask305\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask304\",\"eTag\":\"0x8D619B6F3B5319E\",\"lastModified\":\"2018-09-13T20:24:48.298435Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask304\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask303\",\"eTag\":\"0x8D619B6F3B5F4B9\",\"lastModified\":\"2018-09-13T20:24:48.3034297Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask303\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask302\",\"eTag\":\"0x8D619B6F3B6B80D\",\"lastModified\":\"2018-09-13T20:24:48.3084301Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask302\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask301\",\"eTag\":\"0x8D619B6F3B76100\",\"lastModified\":\"2018-09-13T20:24:48.3127552Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask301\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask300\",\"eTag\":\"0x8D619B6F3B840CB\",\"lastModified\":\"2018-09-13T20:24:48.3184843Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask300\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask299\",\"eTag\":\"0x8D619B6F3BA5739\",\"lastModified\":\"2018-09-13T20:24:48.3321657Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask299\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask298\",\"eTag\":\"0x8D619B6F3BBD311\",\"lastModified\":\"2018-09-13T20:24:48.3418897Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask298\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask297\",\"eTag\":\"0x8D619B6F3BBE837\",\"lastModified\":\"2018-09-13T20:24:48.3424311Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask297\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask296\",\"eTag\":\"0x8D619B6F3BD2208\",\"lastModified\":\"2018-09-13T20:24:48.3504648Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask296\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask295\",\"eTag\":\"0x8D619B6F3BEA78F\",\"lastModified\":\"2018-09-13T20:24:48.3604367Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask295\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask294\",\"eTag\":\"0x8D619B6F3BFB8E1\",\"lastModified\":\"2018-09-13T20:24:48.3674337Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask294\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask293\",\"eTag\":\"0x8D619B6F3C11887\",\"lastModified\":\"2018-09-13T20:24:48.3764359Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask293\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask292\",\"eTag\":\"0x8D619B6F3C167BA\",\"lastModified\":\"2018-09-13T20:24:48.3784634Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask292\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask291\",\"eTag\":\"0x8D619B6F3C29F17\",\"lastModified\":\"2018-09-13T20:24:48.3864343Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask291\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask290\",\"eTag\":\"0x8D619B6F3C3D8B5\",\"lastModified\":\"2018-09-13T20:24:48.3944629Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask290\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask289\",\"eTag\":\"0x8D619B6F3C538E5\",\"lastModified\":\"2018-09-13T20:24:48.4034789Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask289\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask288\",\"eTag\":\"0x8D619B6F3C696C5\",\"lastModified\":\"2018-09-13T20:24:48.4124357Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask288\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask287\",\"eTag\":\"0x8D619B6F3C6E5FC\",\"lastModified\":\"2018-09-13T20:24:48.4144636Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask287\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask286\",\"eTag\":\"0x8D619B6F3C84466\",\"lastModified\":\"2018-09-13T20:24:48.4234342Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask286\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask285\",\"eTag\":\"0x8D619B6F3C985DA\",\"lastModified\":\"2018-09-13T20:24:48.4316634Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask285\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask284\",\"eTag\":\"0x8D619B6F3CAB57E\",\"lastModified\":\"2018-09-13T20:24:48.4394366Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask284\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask283\",\"eTag\":\"0x8D619B6F3CB2BC8\",\"lastModified\":\"2018-09-13T20:24:48.4424648Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask283\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:48 GMT'] + request-id: [45446534-d443-429c-aaa1-84895b80aa2e] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask282", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask281", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask280", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask279", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask278", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask277", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask276", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask275", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask274", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask273", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask272", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask271", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask270", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask269", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask268", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask267", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask266", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask265", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask264", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask263", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask262", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask261", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask260", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask259", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask258", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask257", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask256", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask255", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask254", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask253", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask252", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask251", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask250", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask249", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask248", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask247", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask246", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask245", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask244", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask243", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask242", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask241", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask240", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask239", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask238", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask237", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask236", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask235", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask234", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask233", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:48 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask282\",\"eTag\":\"0x8D619B6F4B266A6\",\"lastModified\":\"2018-09-13T20:24:49.9578534Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask282\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask279\",\"eTag\":\"0x8D619B6F4BA07B4\",\"lastModified\":\"2018-09-13T20:24:50.0078516Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask279\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask278\",\"eTag\":\"0x8D619B6F4BA2ECD\",\"lastModified\":\"2018-09-13T20:24:50.0088525Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask278\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask280\",\"eTag\":\"0x8D619B6F4BA07B4\",\"lastModified\":\"2018-09-13T20:24:50.0078516Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask280\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask281\",\"eTag\":\"0x8D619B6F4B9F23E\",\"lastModified\":\"2018-09-13T20:24:50.0073022Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask281\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask275\",\"eTag\":\"0x8D619B6F4BBDC70\",\"lastModified\":\"2018-09-13T20:24:50.0198512Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask275\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask274\",\"eTag\":\"0x8D619B6F4BEC2B4\",\"lastModified\":\"2018-09-13T20:24:50.0388532Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask274\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask273\",\"eTag\":\"0x8D619B6F4BEE9BB\",\"lastModified\":\"2018-09-13T20:24:50.0398523Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask273\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask277\",\"eTag\":\"0x8D619B6F4BE9B98\",\"lastModified\":\"2018-09-13T20:24:50.037852Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask277\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask272\",\"eTag\":\"0x8D619B6F4C181AD\",\"lastModified\":\"2018-09-13T20:24:50.0568493Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask272\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask271\",\"eTag\":\"0x8D619B6F4C1A8E7\",\"lastModified\":\"2018-09-13T20:24:50.0578535Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask271\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask276\",\"eTag\":\"0x8D619B6F4C1777C\",\"lastModified\":\"2018-09-13T20:24:50.0565884Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask276\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask270\",\"eTag\":\"0x8D619B6F4C37DA7\",\"lastModified\":\"2018-09-13T20:24:50.0698535Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask270\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask269\",\"eTag\":\"0x8D619B6F4C47ECB\",\"lastModified\":\"2018-09-13T20:24:50.0764363Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask269\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask268\",\"eTag\":\"0x8D619B6F4C50444\",\"lastModified\":\"2018-09-13T20:24:50.0798532Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask268\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask267\",\"eTag\":\"0x8D619B6F4C6159E\",\"lastModified\":\"2018-09-13T20:24:50.086851Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask267\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask266\",\"eTag\":\"0x8D619B6F4C6B1E8\",\"lastModified\":\"2018-09-13T20:24:50.090852Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask266\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask265\",\"eTag\":\"0x8D619B6F4C92302\",\"lastModified\":\"2018-09-13T20:24:50.1068546Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask265\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask262\",\"eTag\":\"0x8D619B6F4CC092D\",\"lastModified\":\"2018-09-13T20:24:50.1258541Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask262\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask264\",\"eTag\":\"0x8D619B6F4CA8303\",\"lastModified\":\"2018-09-13T20:24:50.1158659Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask264\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask263\",\"eTag\":\"0x8D619B6F4CB45D3\",\"lastModified\":\"2018-09-13T20:24:50.1208531Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask263\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask261\",\"eTag\":\"0x8D619B6F4CC7E6E\",\"lastModified\":\"2018-09-13T20:24:50.1288558Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask261\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask260\",\"eTag\":\"0x8D619B6F4CD8FC7\",\"lastModified\":\"2018-09-13T20:24:50.1358535Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask260\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask259\",\"eTag\":\"0x8D619B6F4D20324\",\"lastModified\":\"2018-09-13T20:24:50.1650212Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask259\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask256\",\"eTag\":\"0x8D619B6F4D223D4\",\"lastModified\":\"2018-09-13T20:24:50.165858Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask256\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask254\",\"eTag\":\"0x8D619B6F4D53103\",\"lastModified\":\"2018-09-13T20:24:50.1858563Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask254\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask255\",\"eTag\":\"0x8D619B6F4D298F4\",\"lastModified\":\"2018-09-13T20:24:50.1688564Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask255\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask258\",\"eTag\":\"0x8D619B6F4D271E5\",\"lastModified\":\"2018-09-13T20:24:50.1678565Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask258\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask253\",\"eTag\":\"0x8D619B6F4D67E4F\",\"lastModified\":\"2018-09-13T20:24:50.1943887Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask253\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask257\",\"eTag\":\"0x8D619B6F4D20324\",\"lastModified\":\"2018-09-13T20:24:50.1650212Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask257\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask251\",\"eTag\":\"0x8D619B6F4D88D21\",\"lastModified\":\"2018-09-13T20:24:50.2078753Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask251\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask252\",\"eTag\":\"0x8D619B6F4D6B7AF\",\"lastModified\":\"2018-09-13T20:24:50.1958575Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask252\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask249\",\"eTag\":\"0x8D619B6F4DB4BAF\",\"lastModified\":\"2018-09-13T20:24:50.2258607Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask249\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask250\",\"eTag\":\"0x8D619B6F4DB99C1\",\"lastModified\":\"2018-09-13T20:24:50.2278593Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask250\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask244\",\"eTag\":\"0x8D619B6F4E16641\",\"lastModified\":\"2018-09-13T20:24:50.2658625Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask244\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask242\",\"eTag\":\"0x8D619B6F4E732BA\",\"lastModified\":\"2018-09-13T20:24:50.303865Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask242\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask248\",\"eTag\":\"0x8D619B6F4DC8417\",\"lastModified\":\"2018-09-13T20:24:50.2338583Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask248\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask241\",\"eTag\":\"0x8D619B6F4E732BA\",\"lastModified\":\"2018-09-13T20:24:50.303865Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask241\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask246\",\"eTag\":\"0x8D619B6F4DE8007\",\"lastModified\":\"2018-09-13T20:24:50.2468615Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask246\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask247\",\"eTag\":\"0x8D619B6F4DF916B\",\"lastModified\":\"2018-09-13T20:24:50.2538603Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask247\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask245\",\"eTag\":\"0x8D619B6F4E13F30\",\"lastModified\":\"2018-09-13T20:24:50.2648624Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask245\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask238\",\"eTag\":\"0x8D619B6F4ED9B6D\",\"lastModified\":\"2018-09-13T20:24:50.3458669Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask238\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask239\",\"eTag\":\"0x8D619B6F4EA8E09\",\"lastModified\":\"2018-09-13T20:24:50.3258633Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask239\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask236\",\"eTag\":\"0x8D619B6F4F0A8CD\",\"lastModified\":\"2018-09-13T20:24:50.3658701Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask236\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask235\",\"eTag\":\"0x8D619B6F4F0A8CD\",\"lastModified\":\"2018-09-13T20:24:50.3658701Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask235\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask237\",\"eTag\":\"0x8D619B6F4EF21E7\",\"lastModified\":\"2018-09-13T20:24:50.3558631Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask237\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask240\",\"eTag\":\"0x8D619B6F4EB8A69\",\"lastModified\":\"2018-09-13T20:24:50.3323241Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask240\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask233\",\"eTag\":\"0x8D619B6F4F27D99\",\"lastModified\":\"2018-09-13T20:24:50.3778713Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask233\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask234\",\"eTag\":\"0x8D619B6F4F27D99\",\"lastModified\":\"2018-09-13T20:24:50.3778713Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask234\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask243\",\"eTag\":\"0x8D619B6F4E4736D\",\"lastModified\":\"2018-09-13T20:24:50.2858605Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask243\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:49 GMT'] + request-id: [4717365c-9442-4719-a158-b4eec97bd3f6] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask232", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask231", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask230", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask229", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask228", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask227", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask226", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask225", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask224", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask223", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask222", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask221", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask220", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask219", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask218", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask217", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask216", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask215", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask214", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask213", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask212", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask211", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask210", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask209", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask208", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask207", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask206", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask205", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask204", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask203", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask202", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask201", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask200", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask199", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask198", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask197", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask196", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask195", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask194", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask193", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask192", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask191", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask190", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask189", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask188", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask187", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask186", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask185", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask184", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask183", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:50 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask232\",\"eTag\":\"0x8D619B6F5D6E479\",\"lastModified\":\"2018-09-13T20:24:51.8747257Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask232\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask231\",\"eTag\":\"0x8D619B6F5D86B34\",\"lastModified\":\"2018-09-13T20:24:51.8847284Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask231\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask230\",\"eTag\":\"0x8D619B6F5D9F1BE\",\"lastModified\":\"2018-09-13T20:24:51.8947262Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask230\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask229\",\"eTag\":\"0x8D619B6F5DB795F\",\"lastModified\":\"2018-09-13T20:24:51.9047519Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask229\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask228\",\"eTag\":\"0x8D619B6F5DD0388\",\"lastModified\":\"2018-09-13T20:24:51.9148424Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask228\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask227\",\"eTag\":\"0x8D619B6F5DE8579\",\"lastModified\":\"2018-09-13T20:24:51.9247225Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask227\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask226\",\"eTag\":\"0x8D619B6F5E178ED\",\"lastModified\":\"2018-09-13T20:24:51.9440621Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask226\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask225\",\"eTag\":\"0x8D619B6F5E2F45A\",\"lastModified\":\"2018-09-13T20:24:51.9537754Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask225\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask224\",\"eTag\":\"0x8D619B6F5E47A9A\",\"lastModified\":\"2018-09-13T20:24:51.9637658Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask224\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask223\",\"eTag\":\"0x8D619B6F5E6008B\",\"lastModified\":\"2018-09-13T20:24:51.9737483Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask223\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask222\",\"eTag\":\"0x8D619B6F5E787FF\",\"lastModified\":\"2018-09-13T20:24:51.9837695Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask222\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask219\",\"eTag\":\"0x8D619B6F5EF758F\",\"lastModified\":\"2018-09-13T20:24:52.0357263Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask219\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask217\",\"eTag\":\"0x8D619B6F5F0FC20\",\"lastModified\":\"2018-09-13T20:24:52.0457248Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask217\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask221\",\"eTag\":\"0x8D619B6F5E90CDF\",\"lastModified\":\"2018-09-13T20:24:51.9937247Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask221\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask220\",\"eTag\":\"0x8D619B6F5EFC3BB\",\"lastModified\":\"2018-09-13T20:24:52.0377275Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask220\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask218\",\"eTag\":\"0x8D619B6F5F2D0FB\",\"lastModified\":\"2018-09-13T20:24:52.0577275Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask218\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask216\",\"eTag\":\"0x8D619B6F5F457AA\",\"lastModified\":\"2018-09-13T20:24:52.067729Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask216\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask210\",\"eTag\":\"0x8D619B6F5FA2418\",\"lastModified\":\"2018-09-13T20:24:52.1057304Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask210\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask215\",\"eTag\":\"0x8D619B6F5F59018\",\"lastModified\":\"2018-09-13T20:24:52.0757272Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask215\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask209\",\"eTag\":\"0x8D619B6F5FBFDD3\",\"lastModified\":\"2018-09-13T20:24:52.1178579Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask209\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask207\",\"eTag\":\"0x8D619B6F5FE7CB6\",\"lastModified\":\"2018-09-13T20:24:52.1342134Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask207\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask208\",\"eTag\":\"0x8D619B6F5FD586B\",\"lastModified\":\"2018-09-13T20:24:52.1267307Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask208\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask213\",\"eTag\":\"0x8D619B6F5F89D6B\",\"lastModified\":\"2018-09-13T20:24:52.0957291Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask213\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask214\",\"eTag\":\"0x8D619B6F5F764F5\",\"lastModified\":\"2018-09-13T20:24:52.0877301Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask214\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask211\",\"eTag\":\"0x8D619B6F601C55D\",\"lastModified\":\"2018-09-13T20:24:52.1557341Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask211\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask206\",\"eTag\":\"0x8D619B6F6003EA5\",\"lastModified\":\"2018-09-13T20:24:52.1457317Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask206\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask205\",\"eTag\":\"0x8D619B6F6019E39\",\"lastModified\":\"2018-09-13T20:24:52.1547321Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask205\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask204\",\"eTag\":\"0x8D619B6F6019E39\",\"lastModified\":\"2018-09-13T20:24:52.1547321Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask204\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask203\",\"eTag\":\"0x8D619B6F602FDC7\",\"lastModified\":\"2018-09-13T20:24:52.1637319Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask203\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask212\",\"eTag\":\"0x8D619B6F5F8C489\",\"lastModified\":\"2018-09-13T20:24:52.0967305Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask212\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask202\",\"eTag\":\"0x8D619B6F60C25B2\",\"lastModified\":\"2018-09-13T20:24:52.2237362Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask202\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask199\",\"eTag\":\"0x8D619B6F60F5A05\",\"lastModified\":\"2018-09-13T20:24:52.2447365Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask199\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask195\",\"eTag\":\"0x8D619B6F61107B6\",\"lastModified\":\"2018-09-13T20:24:52.2557366Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask195\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask193\",\"eTag\":\"0x8D619B6F61351A7\",\"lastModified\":\"2018-09-13T20:24:52.2707367Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask193\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask194\",\"eTag\":\"0x8D619B6F61378CA\",\"lastModified\":\"2018-09-13T20:24:52.2717386Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask194\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask192\",\"eTag\":\"0x8D619B6F6139FE1\",\"lastModified\":\"2018-09-13T20:24:52.2727393Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask192\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask190\",\"eTag\":\"0x8D619B6F617704D\",\"lastModified\":\"2018-09-13T20:24:52.2977357Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask190\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask201\",\"eTag\":\"0x8D619B6F60D74FE\",\"lastModified\":\"2018-09-13T20:24:52.2323198Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask201\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask198\",\"eTag\":\"0x8D619B6F618F71C\",\"lastModified\":\"2018-09-13T20:24:52.3077404Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask198\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask189\",\"eTag\":\"0x8D619B6F617E5A0\",\"lastModified\":\"2018-09-13T20:24:52.3007392Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask189\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask188\",\"eTag\":\"0x8D619B6F618D1AF\",\"lastModified\":\"2018-09-13T20:24:52.3067823Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask188\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask200\",\"eTag\":\"0x8D619B6F60C73D2\",\"lastModified\":\"2018-09-13T20:24:52.2257362Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask200\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask187\",\"eTag\":\"0x8D619B6F6191E29\",\"lastModified\":\"2018-09-13T20:24:52.3087401Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask187\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask197\",\"eTag\":\"0x8D619B6F6194542\",\"lastModified\":\"2018-09-13T20:24:52.309741Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask197\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask186\",\"eTag\":\"0x8D619B6F61CA19F\",\"lastModified\":\"2018-09-13T20:24:52.3317663Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask186\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask196\",\"eTag\":\"0x8D619B6F6191E29\",\"lastModified\":\"2018-09-13T20:24:52.3087401Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask196\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask185\",\"eTag\":\"0x8D619B6F61E2895\",\"lastModified\":\"2018-09-13T20:24:52.3417749Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask185\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask191\",\"eTag\":\"0x8D619B6F61E9C73\",\"lastModified\":\"2018-09-13T20:24:52.3447411Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask191\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask184\",\"eTag\":\"0x8D619B6F61E9C73\",\"lastModified\":\"2018-09-13T20:24:52.3447411Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask184\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask183\",\"eTag\":\"0x8D619B6F61E9C73\",\"lastModified\":\"2018-09-13T20:24:52.3447411Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask183\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:51 GMT'] + request-id: [72d27b7d-7e5b-4cb9-a4a6-bbbeff8c1b3b] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask182", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask181", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask180", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask179", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask178", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask177", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask176", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask175", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask174", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask173", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask172", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask171", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask170", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask169", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask168", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask167", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask166", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask165", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask164", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask163", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask162", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask161", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask160", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask159", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask158", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask157", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask156", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask155", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask154", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask153", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask152", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask151", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask150", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask149", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask148", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask147", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask146", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask145", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask144", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask143", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask142", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask141", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask140", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask139", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask138", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask137", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask136", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask135", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask134", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask133", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587311'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:52 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask182\",\"eTag\":\"0x8D619B6F707E733\",\"lastModified\":\"2018-09-13T20:24:53.8736435Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask182\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask181\",\"eTag\":\"0x8D619B6F70A0B34\",\"lastModified\":\"2018-09-13T20:24:53.8876724Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask181\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask179\",\"eTag\":\"0x8D619B6F70DDC07\",\"lastModified\":\"2018-09-13T20:24:53.9126791Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask179\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask180\",\"eTag\":\"0x8D619B6F70CF176\",\"lastModified\":\"2018-09-13T20:24:53.9066742Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask180\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask177\",\"eTag\":\"0x8D619B6F70E01EF\",\"lastModified\":\"2018-09-13T20:24:53.9136495Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask177\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask175\",\"eTag\":\"0x8D619B6F70FFDC6\",\"lastModified\":\"2018-09-13T20:24:53.9266502Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask175\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask174\",\"eTag\":\"0x8D619B6F711845C\",\"lastModified\":\"2018-09-13T20:24:53.9366492Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask174\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask169\",\"eTag\":\"0x8D619B6F718FE8B\",\"lastModified\":\"2018-09-13T20:24:53.9856523Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask169\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask168\",\"eTag\":\"0x8D619B6F71A8532\",\"lastModified\":\"2018-09-13T20:24:53.995653Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask168\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask176\",\"eTag\":\"0x8D619B6F70F3A57\",\"lastModified\":\"2018-09-13T20:24:53.9216471Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask176\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask173\",\"eTag\":\"0x8D619B6F712E3ED\",\"lastModified\":\"2018-09-13T20:24:53.9456493Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask173\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask167\",\"eTag\":\"0x8D619B6F71AAC47\",\"lastModified\":\"2018-09-13T20:24:53.9966535Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask167\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask172\",\"eTag\":\"0x8D619B6F714B8BC\",\"lastModified\":\"2018-09-13T20:24:53.9576508Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask172\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask171\",\"eTag\":\"0x8D619B6F7175971\",\"lastModified\":\"2018-09-13T20:24:53.9748721Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask171\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask178\",\"eTag\":\"0x8D619B6F70E01EF\",\"lastModified\":\"2018-09-13T20:24:53.9136495Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask178\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask170\",\"eTag\":\"0x8D619B6F717C606\",\"lastModified\":\"2018-09-13T20:24:53.9776518Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask170\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask166\",\"eTag\":\"0x8D619B6F71D6B6F\",\"lastModified\":\"2018-09-13T20:24:54.0146543Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask166\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask164\",\"eTag\":\"0x8D619B6F71EF210\",\"lastModified\":\"2018-09-13T20:24:54.0246544Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask164\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask165\",\"eTag\":\"0x8D619B6F71F1920\",\"lastModified\":\"2018-09-13T20:24:54.0256544Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask165\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask163\",\"eTag\":\"0x8D619B6F71F4039\",\"lastModified\":\"2018-09-13T20:24:54.0266553Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask163\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask151\",\"eTag\":\"0x8D619B6F7386DCF\",\"lastModified\":\"2018-09-13T20:24:54.1916623Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask151\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask149\",\"eTag\":\"0x8D619B6F73846B8\",\"lastModified\":\"2018-09-13T20:24:54.1906616Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask149\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask150\",\"eTag\":\"0x8D619B6F73846B8\",\"lastModified\":\"2018-09-13T20:24:54.1906616Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask150\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask161\",\"eTag\":\"0x8D619B6F7250C90\",\"lastModified\":\"2018-09-13T20:24:54.0646544Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask161\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask162\",\"eTag\":\"0x8D619B6F723D415\",\"lastModified\":\"2018-09-13T20:24:54.0566549Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask162\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask148\",\"eTag\":\"0x8D619B6F73B31A4\",\"lastModified\":\"2018-09-13T20:24:54.2097828Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask148\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask160\",\"eTag\":\"0x8D619B6F72533B7\",\"lastModified\":\"2018-09-13T20:24:54.0656567Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask160\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask147\",\"eTag\":\"0x8D619B6F73B5492\",\"lastModified\":\"2018-09-13T20:24:54.210677Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask147\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask159\",\"eTag\":\"0x8D619B6F729A094\",\"lastModified\":\"2018-09-13T20:24:54.094658Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask159\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask158\",\"eTag\":\"0x8D619B6F72B2737\",\"lastModified\":\"2018-09-13T20:24:54.1046583Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask158\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask156\",\"eTag\":\"0x8D619B6F72B4E3C\",\"lastModified\":\"2018-09-13T20:24:54.1056572Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask156\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask157\",\"eTag\":\"0x8D619B6F72C3E80\",\"lastModified\":\"2018-09-13T20:24:54.111808Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask157\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask143\",\"eTag\":\"0x8D619B6F745B467\",\"lastModified\":\"2018-09-13T20:24:54.2786663Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask143\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask152\",\"eTag\":\"0x8D619B6F7473B01\",\"lastModified\":\"2018-09-13T20:24:54.2886657Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask152\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask140\",\"eTag\":\"0x8D619B6F7473B01\",\"lastModified\":\"2018-09-13T20:24:54.2886657Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask140\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask155\",\"eTag\":\"0x8D619B6F72DBF56\",\"lastModified\":\"2018-09-13T20:24:54.1216598Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask155\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask142\",\"eTag\":\"0x8D619B6F745DB72\",\"lastModified\":\"2018-09-13T20:24:54.2796658Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask142\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask153\",\"eTag\":\"0x8D619B6F72F6CFA\",\"lastModified\":\"2018-09-13T20:24:54.1326586Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask153\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask139\",\"eTag\":\"0x8D619B6F7460288\",\"lastModified\":\"2018-09-13T20:24:54.2806664Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask139\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask141\",\"eTag\":\"0x8D619B6F745DB72\",\"lastModified\":\"2018-09-13T20:24:54.2796658Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask141\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask154\",\"eTag\":\"0x8D619B6F7460288\",\"lastModified\":\"2018-09-13T20:24:54.2806664Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask154\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask145\",\"eTag\":\"0x8D619B6F75FCD9E\",\"lastModified\":\"2018-09-13T20:24:54.4497054Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask145\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask144\",\"eTag\":\"0x8D619B6F75FFFDB\",\"lastModified\":\"2018-09-13T20:24:54.4509915Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask144\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask137\",\"eTag\":\"0x8D619B6F75FCD9E\",\"lastModified\":\"2018-09-13T20:24:54.4497054Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask137\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask135\",\"eTag\":\"0x8D619B6F7606887\",\"lastModified\":\"2018-09-13T20:24:54.4536711Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask135\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask138\",\"eTag\":\"0x8D619B6F7606887\",\"lastModified\":\"2018-09-13T20:24:54.4536711Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask138\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask146\",\"eTag\":\"0x8D619B6F75FCD9E\",\"lastModified\":\"2018-09-13T20:24:54.4497054Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask146\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask134\",\"eTag\":\"0x8D619B6F7606887\",\"lastModified\":\"2018-09-13T20:24:54.4536711Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask134\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask136\",\"eTag\":\"0x8D619B6F7606887\",\"lastModified\":\"2018-09-13T20:24:54.4536711Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask136\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask133\",\"eTag\":\"0x8D619B6F7606887\",\"lastModified\":\"2018-09-13T20:24:54.4536711Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask133\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:54 GMT'] + request-id: [bd6a39fc-a9b7-4c0d-bca0-0a7d0ac200d2] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask132", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask131", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask130", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask129", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask128", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask127", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask126", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask125", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask124", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask123", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask122", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask121", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask120", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask119", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask118", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask117", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask116", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask115", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask114", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask113", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask112", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask111", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask110", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask109", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask108", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask107", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask106", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask105", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask104", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask103", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask102", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask101", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask100", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask99", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask98", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask97", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask96", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask95", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask94", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask93", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask92", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask91", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask90", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask89", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask88", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask87", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask86", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask85", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask84", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask83", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587294'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:54 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask132\",\"eTag\":\"0x8D619B6F84C66B2\",\"lastModified\":\"2018-09-13T20:24:56.0002738Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask132\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask131\",\"eTag\":\"0x8D619B6F8501180\",\"lastModified\":\"2018-09-13T20:24:56.0243072Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask131\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask130\",\"eTag\":\"0x8D619B6F85170F9\",\"lastModified\":\"2018-09-13T20:24:56.0333049Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask130\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask129\",\"eTag\":\"0x8D619B6F8525B71\",\"lastModified\":\"2018-09-13T20:24:56.0393073Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask129\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask128\",\"eTag\":\"0x8D619B6F8545D11\",\"lastModified\":\"2018-09-13T20:24:56.0524561Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask128\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask127\",\"eTag\":\"0x8D619B6F855DE1D\",\"lastModified\":\"2018-09-13T20:24:56.0623133Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask127\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask126\",\"eTag\":\"0x8D619B6F857B16E\",\"lastModified\":\"2018-09-13T20:24:56.0742766Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask126\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask124\",\"eTag\":\"0x8D619B6F85C4556\",\"lastModified\":\"2018-09-13T20:24:56.1042774Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask124\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask125\",\"eTag\":\"0x8D619B6F85C93B6\",\"lastModified\":\"2018-09-13T20:24:56.1062838Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask125\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask121\",\"eTag\":\"0x8D619B6F85F2B6F\",\"lastModified\":\"2018-09-13T20:24:56.1232751Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask121\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask123\",\"eTag\":\"0x8D619B6F86211B4\",\"lastModified\":\"2018-09-13T20:24:56.1422772Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask123\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask122\",\"eTag\":\"0x8D619B6F85F529A\",\"lastModified\":\"2018-09-13T20:24:56.1242778Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask122\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask120\",\"eTag\":\"0x8D619B6F86286FB\",\"lastModified\":\"2018-09-13T20:24:56.1452795Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask120\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask119\",\"eTag\":\"0x8D619B6F8638969\",\"lastModified\":\"2018-09-13T20:24:56.1518953Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask119\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask118\",\"eTag\":\"0x8D619B6F864ABC4\",\"lastModified\":\"2018-09-13T20:24:56.1593284Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask118\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask116\",\"eTag\":\"0x8D619B6F866F547\",\"lastModified\":\"2018-09-13T20:24:56.1743175Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask116\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask115\",\"eTag\":\"0x8D619B6F86916C0\",\"lastModified\":\"2018-09-13T20:24:56.1882816Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask115\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask112\",\"eTag\":\"0x8D619B6F86B87A6\",\"lastModified\":\"2018-09-13T20:24:56.204279Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask112\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask114\",\"eTag\":\"0x8D619B6F86A4F30\",\"lastModified\":\"2018-09-13T20:24:56.19628Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask114\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask117\",\"eTag\":\"0x8D619B6F86B87A6\",\"lastModified\":\"2018-09-13T20:24:56.204279Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask117\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask113\",\"eTag\":\"0x8D619B6F86BAED6\",\"lastModified\":\"2018-09-13T20:24:56.2052822Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask113\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask110\",\"eTag\":\"0x8D619B6F86BD5D8\",\"lastModified\":\"2018-09-13T20:24:56.2062808Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask110\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask107\",\"eTag\":\"0x8D619B6F873772D\",\"lastModified\":\"2018-09-13T20:24:56.2562861Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask107\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask105\",\"eTag\":\"0x8D619B6F874D6B3\",\"lastModified\":\"2018-09-13T20:24:56.2652851Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask105\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask104\",\"eTag\":\"0x8D619B6F8765D36\",\"lastModified\":\"2018-09-13T20:24:56.2752822Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask104\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask106\",\"eTag\":\"0x8D619B6F87795E0\",\"lastModified\":\"2018-09-13T20:24:56.2832864Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask106\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask102\",\"eTag\":\"0x8D619B6F877BCC9\",\"lastModified\":\"2018-09-13T20:24:56.2842825Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask102\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask109\",\"eTag\":\"0x8D619B6F8714EA9\",\"lastModified\":\"2018-09-13T20:24:56.2421417Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask109\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask108\",\"eTag\":\"0x8D619B6F871542D\",\"lastModified\":\"2018-09-13T20:24:56.2422829Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask108\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask101\",\"eTag\":\"0x8D619B6F87D66AA\",\"lastModified\":\"2018-09-13T20:24:56.3213994Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask101\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask103\",\"eTag\":\"0x8D619B6F87DB071\",\"lastModified\":\"2018-09-13T20:24:56.3232881Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask103\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask111\",\"eTag\":\"0x8D619B6F87042BA\",\"lastModified\":\"2018-09-13T20:24:56.2352826Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask111\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask99\",\"eTag\":\"0x8D619B6F8826B62\",\"lastModified\":\"2018-09-13T20:24:56.3542882Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask99\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask100\",\"eTag\":\"0x8D619B6F884F11F\",\"lastModified\":\"2018-09-13T20:24:56.3708191Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask100\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask96\",\"eTag\":\"0x8D619B6F88674BF\",\"lastModified\":\"2018-09-13T20:24:56.3807423Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask96\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask97\",\"eTag\":\"0x8D619B6F8868A2F\",\"lastModified\":\"2018-09-13T20:24:56.3812911Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask97\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask92\",\"eTag\":\"0x8D619B6F88A5ABC\",\"lastModified\":\"2018-09-13T20:24:56.4062908Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask92\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask88\",\"eTag\":\"0x8D619B6F88DF76C\",\"lastModified\":\"2018-09-13T20:24:56.4299628Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask88\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask89\",\"eTag\":\"0x8D619B6F88CA4B9\",\"lastModified\":\"2018-09-13T20:24:56.4212921Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask89\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask90\",\"eTag\":\"0x8D619B6F88CA4B9\",\"lastModified\":\"2018-09-13T20:24:56.4212921Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask90\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask95\",\"eTag\":\"0x8D619B6F8915FB7\",\"lastModified\":\"2018-09-13T20:24:56.4522935Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask95\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask83\",\"eTag\":\"0x8D619B6F8915FB7\",\"lastModified\":\"2018-09-13T20:24:56.4522935Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask83\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask85\",\"eTag\":\"0x8D619B6F8911194\",\"lastModified\":\"2018-09-13T20:24:56.4502932Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask85\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask98\",\"eTag\":\"0x8D619B6F8915FB7\",\"lastModified\":\"2018-09-13T20:24:56.4522935Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask98\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask84\",\"eTag\":\"0x8D619B6F8915FB7\",\"lastModified\":\"2018-09-13T20:24:56.4522935Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask84\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask94\",\"eTag\":\"0x8D619B6F8915FB7\",\"lastModified\":\"2018-09-13T20:24:56.4522935Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask94\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask86\",\"eTag\":\"0x8D619B6F890EF1C\",\"lastModified\":\"2018-09-13T20:24:56.4494108Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask86\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask91\",\"eTag\":\"0x8D619B6F893E18E\",\"lastModified\":\"2018-09-13T20:24:56.4687246Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask91\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask93\",\"eTag\":\"0x8D619B6F893F7CA\",\"lastModified\":\"2018-09-13T20:24:56.4692938Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask93\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask87\",\"eTag\":\"0x8D619B6F893F7CA\",\"lastModified\":\"2018-09-13T20:24:56.4692938Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask87\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:55 GMT'] + request-id: [3a34978b-6070-4b84-b4d1-9d053a6173f4] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask82", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask81", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask80", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask79", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask78", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask77", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask76", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask75", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask74", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask73", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask72", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask71", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask70", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask69", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask68", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask67", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask66", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask65", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask64", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask63", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask62", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask61", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask60", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask59", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask58", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask57", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask56", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask55", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask54", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask53", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask52", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask51", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask50", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask49", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask48", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask47", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask46", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask45", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask44", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask43", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask42", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask41", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask40", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask39", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask38", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask37", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask36", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask35", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask34", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask33", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587261'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:56 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask82\",\"eTag\":\"0x8D619B6F97A3FEC\",\"lastModified\":\"2018-09-13T20:24:57.9784684Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask82\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask81\",\"eTag\":\"0x8D619B6F97B74A1\",\"lastModified\":\"2018-09-13T20:24:57.9863713Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask81\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask80\",\"eTag\":\"0x8D619B6F97CF31A\",\"lastModified\":\"2018-09-13T20:24:57.9961626Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask80\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask79\",\"eTag\":\"0x8D619B6F97EADA8\",\"lastModified\":\"2018-09-13T20:24:58.007492Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask79\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask77\",\"eTag\":\"0x8D619B6F98367CB\",\"lastModified\":\"2018-09-13T20:24:58.0384715Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask77\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask75\",\"eTag\":\"0x8D619B6F9862062\",\"lastModified\":\"2018-09-13T20:24:58.0563042Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask75\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask78\",\"eTag\":\"0x8D619B6F98626D0\",\"lastModified\":\"2018-09-13T20:24:58.0564688Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask78\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask74\",\"eTag\":\"0x8D619B6F9895B47\",\"lastModified\":\"2018-09-13T20:24:58.0774727Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask74\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask72\",\"eTag\":\"0x8D619B6F989279E\",\"lastModified\":\"2018-09-13T20:24:58.0761502Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask72\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask71\",\"eTag\":\"0x8D619B6F9898253\",\"lastModified\":\"2018-09-13T20:24:58.0784723Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask71\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask73\",\"eTag\":\"0x8D619B6F987A3F4\",\"lastModified\":\"2018-09-13T20:24:58.066226Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask73\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask76\",\"eTag\":\"0x8D619B6F98C272C\",\"lastModified\":\"2018-09-13T20:24:58.0957996Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask76\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask70\",\"eTag\":\"0x8D619B6F98C3191\",\"lastModified\":\"2018-09-13T20:24:58.0960657Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask70\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask69\",\"eTag\":\"0x8D619B6F98D2BFA\",\"lastModified\":\"2018-09-13T20:24:58.1024762Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask69\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask68\",\"eTag\":\"0x8D619B6F98F1B04\",\"lastModified\":\"2018-09-13T20:24:58.1151492Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask68\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask67\",\"eTag\":\"0x8D619B6F98F4EC5\",\"lastModified\":\"2018-09-13T20:24:58.1164741Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask67\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask66\",\"eTag\":\"0x8D619B6F99061D3\",\"lastModified\":\"2018-09-13T20:24:58.1235155Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask66\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask65\",\"eTag\":\"0x8D619B6F99172BE\",\"lastModified\":\"2018-09-13T20:24:58.1305022Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask65\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask64\",\"eTag\":\"0x8D619B6F991E722\",\"lastModified\":\"2018-09-13T20:24:58.1334818Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask64\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask63\",\"eTag\":\"0x8D619B6F993480B\",\"lastModified\":\"2018-09-13T20:24:58.1425163Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask63\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask62\",\"eTag\":\"0x8D619B6F994A718\",\"lastModified\":\"2018-09-13T20:24:58.1515032Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask62\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask61\",\"eTag\":\"0x8D619B6F994CD37\",\"lastModified\":\"2018-09-13T20:24:58.1524791Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask61\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask60\",\"eTag\":\"0x8D619B6F99655E3\",\"lastModified\":\"2018-09-13T20:24:58.1625315Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask60\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask59\",\"eTag\":\"0x8D619B6F9976548\",\"lastModified\":\"2018-09-13T20:24:58.1694792Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask59\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask57\",\"eTag\":\"0x8D619B6F9996316\",\"lastModified\":\"2018-09-13T20:24:58.1825302Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask57\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask55\",\"eTag\":\"0x8D619B6F99B36B4\",\"lastModified\":\"2018-09-13T20:24:58.1945012Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask55\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask56\",\"eTag\":\"0x8D619B6F99A9B70\",\"lastModified\":\"2018-09-13T20:24:58.1905264Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask56\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask58\",\"eTag\":\"0x8D619B6F99BAB0F\",\"lastModified\":\"2018-09-13T20:24:58.1974799Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask58\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask54\",\"eTag\":\"0x8D619B6F99C7050\",\"lastModified\":\"2018-09-13T20:24:58.2025296Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask54\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask52\",\"eTag\":\"0x8D619B6F99DF51C\",\"lastModified\":\"2018-09-13T20:24:58.2124828Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask52\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask53\",\"eTag\":\"0x8D619B6F99E6DE4\",\"lastModified\":\"2018-09-13T20:24:58.2155748Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask53\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask51\",\"eTag\":\"0x8D619B6F99F7D45\",\"lastModified\":\"2018-09-13T20:24:58.2225221Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask51\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask49\",\"eTag\":\"0x8D619B6F9A0E188\",\"lastModified\":\"2018-09-13T20:24:58.2316424Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask49\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask50\",\"eTag\":\"0x8D619B6F9A0B538\",\"lastModified\":\"2018-09-13T20:24:58.230508Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask50\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask48\",\"eTag\":\"0x8D619B6F9A2FF0A\",\"lastModified\":\"2018-09-13T20:24:58.245505Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask48\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask47\",\"eTag\":\"0x8D619B6F9A3C24F\",\"lastModified\":\"2018-09-13T20:24:58.2505039Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask47\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask46\",\"eTag\":\"0x8D619B6F9A520D7\",\"lastModified\":\"2018-09-13T20:24:58.2594775Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask46\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask44\",\"eTag\":\"0x8D619B6F9A5E444\",\"lastModified\":\"2018-09-13T20:24:58.2644804Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask44\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask45\",\"eTag\":\"0x8D619B6F9A5DD40\",\"lastModified\":\"2018-09-13T20:24:58.2643008Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask45\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask43\",\"eTag\":\"0x8D619B6F9A75EB0\",\"lastModified\":\"2018-09-13T20:24:58.274168Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask43\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask42\",\"eTag\":\"0x8D619B6F9A8566E\",\"lastModified\":\"2018-09-13T20:24:58.2805102Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask42\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask41\",\"eTag\":\"0x8D619B6F9A98EF8\",\"lastModified\":\"2018-09-13T20:24:58.2885112Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask41\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask40\",\"eTag\":\"0x8D619B6F9AA04D0\",\"lastModified\":\"2018-09-13T20:24:58.291528Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask40\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask39\",\"eTag\":\"0x8D619B6F9AC25C6\",\"lastModified\":\"2018-09-13T20:24:58.305479Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask39\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask37\",\"eTag\":\"0x8D619B6F9AD5E87\",\"lastModified\":\"2018-09-13T20:24:58.3134855Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask37\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask38\",\"eTag\":\"0x8D619B6F9AD1234\",\"lastModified\":\"2018-09-13T20:24:58.3115316Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask38\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask36\",\"eTag\":\"0x8D619B6F9AF2C6E\",\"lastModified\":\"2018-09-13T20:24:58.3253102Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask36\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask35\",\"eTag\":\"0x8D619B6F9B01F88\",\"lastModified\":\"2018-09-13T20:24:58.3315336Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask35\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask34\",\"eTag\":\"0x8D619B6F9B1A50C\",\"lastModified\":\"2018-09-13T20:24:58.3415052Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask34\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask33\",\"eTag\":\"0x8D619B6F9B29047\",\"lastModified\":\"2018-09-13T20:24:58.3475271Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask33\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:57 GMT'] + request-id: [8e168d54-1655-45c1-a126-aff72187d9e9] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask32", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask31", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask30", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask29", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask28", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask27", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask26", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask25", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask24", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask23", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask22", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask21", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask20", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask19", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask18", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask17", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask16", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask15", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask14", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask13", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask12", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask11", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask10", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask9", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask8", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask7", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask6", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask5", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask4", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask3", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask2", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask1", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask0", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask682", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask681", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask680", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask679", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask678", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask677", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask676", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask675", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask674", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask673", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask672", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask671", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask670", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask669", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask668", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask667", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask666", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['587268'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:24:58 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask32\",\"eTag\":\"0x8D619B6FA950C38\",\"lastModified\":\"2018-09-13T20:24:59.8318136Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask32\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask31\",\"eTag\":\"0x8D619B6FA96226A\",\"lastModified\":\"2018-09-13T20:24:59.8389354Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask31\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask29\",\"eTag\":\"0x8D619B6FA98DCC7\",\"lastModified\":\"2018-09-13T20:24:59.8568135Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask29\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask28\",\"eTag\":\"0x8D619B6FA99DDA2\",\"lastModified\":\"2018-09-13T20:24:59.863389Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask28\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask30\",\"eTag\":\"0x8D619B6FA977EFF\",\"lastModified\":\"2018-09-13T20:24:59.8478591Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask30\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask27\",\"eTag\":\"0x8D619B6FA9BC465\",\"lastModified\":\"2018-09-13T20:24:59.8758501Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask27\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask26\",\"eTag\":\"0x8D619B6FA9CFBD7\",\"lastModified\":\"2018-09-13T20:24:59.8838231Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask26\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask25\",\"eTag\":\"0x8D619B6FAA085B1\",\"lastModified\":\"2018-09-13T20:24:59.9070129Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask25\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask24\",\"eTag\":\"0x8D619B6FAA18FCF\",\"lastModified\":\"2018-09-13T20:24:59.9138255Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask24\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask23\",\"eTag\":\"0x8D619B6FAA37D50\",\"lastModified\":\"2018-09-13T20:24:59.9264592Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask23\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask22\",\"eTag\":\"0x8D619B6FAA538EE\",\"lastModified\":\"2018-09-13T20:24:59.9378158Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask22\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask21\",\"eTag\":\"0x8D619B6FAA5FC41\",\"lastModified\":\"2018-09-13T20:24:59.9428161Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask21\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask20\",\"eTag\":\"0x8D619B6FAA7F0E0\",\"lastModified\":\"2018-09-13T20:24:59.955632Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask20\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask19\",\"eTag\":\"0x8D619B6FAA89454\",\"lastModified\":\"2018-09-13T20:24:59.9598164Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask19\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask18\",\"eTag\":\"0x8D619B6FAAE128B\",\"lastModified\":\"2018-09-13T20:24:59.9958155Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask18\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask17\",\"eTag\":\"0x8D619B6FAB0F8CE\",\"lastModified\":\"2018-09-13T20:25:00.0148174Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask17\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask16\",\"eTag\":\"0x8D619B6FAB2583F\",\"lastModified\":\"2018-09-13T20:25:00.0238143Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask16\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask9\",\"eTag\":\"0x8D619B6FAB56585\",\"lastModified\":\"2018-09-13T20:25:00.0438149Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask9\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask15\",\"eTag\":\"0x8D619B6FABB0B72\",\"lastModified\":\"2018-09-13T20:25:00.0808306Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask15\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask13\",\"eTag\":\"0x8D619B6FAB27F65\",\"lastModified\":\"2018-09-13T20:25:00.0248165Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask13\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask11\",\"eTag\":\"0x8D619B6FAB56585\",\"lastModified\":\"2018-09-13T20:25:00.0438149Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask11\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask10\",\"eTag\":\"0x8D619B6FAB56585\",\"lastModified\":\"2018-09-13T20:25:00.0438149Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask10\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask14\",\"eTag\":\"0x8D619B6FABB0B72\",\"lastModified\":\"2018-09-13T20:25:00.0808306Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask14\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask0\",\"eTag\":\"0x8D619B6FACE9300\",\"lastModified\":\"2018-09-13T20:25:00.2088192Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask0\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask8\",\"eTag\":\"0x8D619B6FACE9300\",\"lastModified\":\"2018-09-13T20:25:00.2088192Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask8\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask2\",\"eTag\":\"0x8D619B6FACDC17B\",\"lastModified\":\"2018-09-13T20:25:00.2034555Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask2\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask681\",\"eTag\":\"0x8D619B6FACE9300\",\"lastModified\":\"2018-09-13T20:25:00.2088192Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask681\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask5\",\"eTag\":\"0x8D619B6FABE1828\",\"lastModified\":\"2018-09-13T20:25:00.1008168Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask5\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask3\",\"eTag\":\"0x8D619B6FAD2B1C1\",\"lastModified\":\"2018-09-13T20:25:00.2358209Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask3\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask6\",\"eTag\":\"0x8D619B6FABE1828\",\"lastModified\":\"2018-09-13T20:25:00.1008168Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask6\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask669\",\"eTag\":\"0x8D619B6FAD597EB\",\"lastModified\":\"2018-09-13T20:25:00.2548203Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask669\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask12\",\"eTag\":\"0x8D619B6FACCBE39\",\"lastModified\":\"2018-09-13T20:25:00.1968185Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask12\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask7\",\"eTag\":\"0x8D619B6FABC9175\",\"lastModified\":\"2018-09-13T20:25:00.0908149Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask7\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask666\",\"eTag\":\"0x8D619B6FADAC803\",\"lastModified\":\"2018-09-13T20:25:00.2888195Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask666\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask1\",\"eTag\":\"0x8D619B6FACF3AE0\",\"lastModified\":\"2018-09-13T20:25:00.2131168Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask1\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask674\",\"eTag\":\"0x8D619B6FADCC45F\",\"lastModified\":\"2018-09-13T20:25:00.3018335Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask674\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask682\",\"eTag\":\"0x8D619B6FACE9300\",\"lastModified\":\"2018-09-13T20:25:00.2088192Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask682\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask677\",\"eTag\":\"0x8D619B6FADDD551\",\"lastModified\":\"2018-09-13T20:25:00.3088209Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask677\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask673\",\"eTag\":\"0x8D619B6FADF830E\",\"lastModified\":\"2018-09-13T20:25:00.3198222Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask673\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask670\",\"eTag\":\"0x8D619B6FAD597EB\",\"lastModified\":\"2018-09-13T20:25:00.2548203Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask670\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask672\",\"eTag\":\"0x8D619B6FADE4A83\",\"lastModified\":\"2018-09-13T20:25:00.3118211Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask672\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask4\",\"eTag\":\"0x8D619B6FAD3A3C5\",\"lastModified\":\"2018-09-13T20:25:00.2420165Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask4\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask671\",\"eTag\":\"0x8D619B6FAD68BD7\",\"lastModified\":\"2018-09-13T20:25:00.2610647Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask671\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask668\",\"eTag\":\"0x8D619B6FAD808EE\",\"lastModified\":\"2018-09-13T20:25:00.2708206Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask668\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask667\",\"eTag\":\"0x8D619B6FAD9DDDC\",\"lastModified\":\"2018-09-13T20:25:00.2828252Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask667\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask680\",\"eTag\":\"0x8D619B6FAD9DDDC\",\"lastModified\":\"2018-09-13T20:25:00.2828252Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask680\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask679\",\"eTag\":\"0x8D619B6FADA2BD3\",\"lastModified\":\"2018-09-13T20:25:00.2848211Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask679\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask676\",\"eTag\":\"0x8D619B6FADAEF2F\",\"lastModified\":\"2018-09-13T20:25:00.2898223Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask676\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask678\",\"eTag\":\"0x8D619B6FADA2BD3\",\"lastModified\":\"2018-09-13T20:25:00.2848211Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask678\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask675\",\"eTag\":\"0x8D619B6FADAC803\",\"lastModified\":\"2018-09-13T20:25:00.2888195Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask675\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:24:59 GMT'] + request-id: [e75a7079-cde1-41cd-8df1-0676e4af365f] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"value": [{"id": "mytask665", "commandLine": "sleep 1", "resourceFiles": + [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask664", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask663", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask662", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask661", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask660", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask659", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask658", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask657", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask656", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask655", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask654", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask653", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask652", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask651", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask650", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask649", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask648", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask647", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask646", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask645", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask644", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask643", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask642", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask641", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask640", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask639", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask638", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask637", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask636", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask635", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask634", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}, {"id": "mytask633", "commandLine": "sleep 1", + "resourceFiles": [{"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile0", + "filePath": "resourceFile0"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile1", + "filePath": "resourceFile1"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile2", + "filePath": "resourceFile2"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile3", + "filePath": "resourceFile3"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile4", + "filePath": "resourceFile4"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile5", + "filePath": "resourceFile5"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile6", + "filePath": "resourceFile6"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile7", + "filePath": "resourceFile7"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile8", + "filePath": "resourceFile8"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile9", + "filePath": "resourceFile9"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile10", + "filePath": "resourceFile10"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile11", + "filePath": "resourceFile11"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile12", + "filePath": "resourceFile12"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile13", + "filePath": "resourceFile13"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile14", + "filePath": "resourceFile14"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile15", + "filePath": "resourceFile15"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile16", + "filePath": "resourceFile16"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile17", + "filePath": "resourceFile17"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile18", + "filePath": "resourceFile18"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile19", + "filePath": "resourceFile19"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile20", + "filePath": "resourceFile20"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile21", + "filePath": "resourceFile21"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile22", + "filePath": "resourceFile22"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile23", + "filePath": "resourceFile23"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile24", + "filePath": "resourceFile24"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile25", + "filePath": "resourceFile25"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile26", + "filePath": "resourceFile26"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile27", + "filePath": "resourceFile27"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile28", + "filePath": "resourceFile28"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile29", + "filePath": "resourceFile29"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile30", + "filePath": "resourceFile30"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile31", + "filePath": "resourceFile31"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile32", + "filePath": "resourceFile32"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile33", + "filePath": "resourceFile33"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile34", + "filePath": "resourceFile34"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile35", + "filePath": "resourceFile35"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile36", + "filePath": "resourceFile36"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile37", + "filePath": "resourceFile37"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile38", + "filePath": "resourceFile38"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile39", + "filePath": "resourceFile39"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile40", + "filePath": "resourceFile40"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile41", + "filePath": "resourceFile41"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile42", + "filePath": "resourceFile42"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile43", + "filePath": "resourceFile43"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile44", + "filePath": "resourceFile44"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile45", + "filePath": "resourceFile45"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile46", + "filePath": "resourceFile46"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile47", + "filePath": "resourceFile47"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile48", + "filePath": "resourceFile48"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile49", + "filePath": "resourceFile49"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile50", + "filePath": "resourceFile50"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile51", + "filePath": "resourceFile51"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile52", + "filePath": "resourceFile52"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile53", + "filePath": "resourceFile53"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile54", + "filePath": "resourceFile54"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile55", + "filePath": "resourceFile55"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile56", + "filePath": "resourceFile56"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile57", + "filePath": "resourceFile57"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile58", + "filePath": "resourceFile58"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile59", + "filePath": "resourceFile59"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile60", + "filePath": "resourceFile60"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile61", + "filePath": "resourceFile61"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile62", + "filePath": "resourceFile62"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile63", + "filePath": "resourceFile63"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile64", + "filePath": "resourceFile64"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile65", + "filePath": "resourceFile65"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile66", + "filePath": "resourceFile66"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile67", + "filePath": "resourceFile67"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile68", + "filePath": "resourceFile68"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile69", + "filePath": "resourceFile69"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile70", + "filePath": "resourceFile70"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile71", + "filePath": "resourceFile71"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile72", + "filePath": "resourceFile72"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile73", + "filePath": "resourceFile73"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile74", + "filePath": "resourceFile74"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile75", + "filePath": "resourceFile75"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile76", + "filePath": "resourceFile76"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile77", + "filePath": "resourceFile77"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile78", + "filePath": "resourceFile78"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile79", + "filePath": "resourceFile79"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile80", + "filePath": "resourceFile80"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile81", + "filePath": "resourceFile81"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile82", + "filePath": "resourceFile82"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile83", + "filePath": "resourceFile83"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile84", + "filePath": "resourceFile84"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile85", + "filePath": "resourceFile85"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile86", + "filePath": "resourceFile86"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile87", + "filePath": "resourceFile87"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile88", + "filePath": "resourceFile88"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile89", + "filePath": "resourceFile89"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile90", + "filePath": "resourceFile90"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile91", + "filePath": "resourceFile91"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile92", + "filePath": "resourceFile92"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile93", + "filePath": "resourceFile93"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile94", + "filePath": "resourceFile94"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile95", + "filePath": "resourceFile95"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile96", + "filePath": "resourceFile96"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile97", + "filePath": "resourceFile97"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile98", + "filePath": "resourceFile98"}, {"blobSource": "https://mystorageaccount.blob.core.windows.net/files/resourceFile99", + "filePath": "resourceFile99"}]}]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['387629'] + Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-batch/5.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + ocp-date: ['Thu, 13 Sep 2018 20:25:00 GMT'] + method: POST + uri: https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/addtaskcollection?api-version=2018-08-01.7.0 + response: + body: {string: "{\r\n \"odata.metadata\":\"https://batch98da0af6.eastus.batch.azure.com/$metadata#taskaddresult\",\"value\":[\r\n + \ {\r\n \"status\":\"Success\",\"taskId\":\"mytask665\",\"eTag\":\"0x8D619B6FBAEB25E\",\"lastModified\":\"2018-09-13T20:25:01.6776286Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask665\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask663\",\"eTag\":\"0x8D619B6FBB13D07\",\"lastModified\":\"2018-09-13T20:25:01.6942855Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask663\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask661\",\"eTag\":\"0x8D619B6FBB234EA\",\"lastModified\":\"2018-09-13T20:25:01.7006314Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask661\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask664\",\"eTag\":\"0x8D619B6FBB2A9E7\",\"lastModified\":\"2018-09-13T20:25:01.7036263Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask664\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask662\",\"eTag\":\"0x8D619B6FBB4CD10\",\"lastModified\":\"2018-09-13T20:25:01.7176336Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask662\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask660\",\"eTag\":\"0x8D619B6FBB48630\",\"lastModified\":\"2018-09-13T20:25:01.7158192Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask660\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask659\",\"eTag\":\"0x8D619B6FBB6A1C6\",\"lastModified\":\"2018-09-13T20:25:01.7296326Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask659\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask658\",\"eTag\":\"0x8D619B6FBB6CA20\",\"lastModified\":\"2018-09-13T20:25:01.7306656Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask658\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask657\",\"eTag\":\"0x8D619B6FBB82830\",\"lastModified\":\"2018-09-13T20:25:01.7396272Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask657\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask656\",\"eTag\":\"0x8D619B6FBB988FE\",\"lastModified\":\"2018-09-13T20:25:01.748659Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask656\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask655\",\"eTag\":\"0x8D619B6FBB9AEEB\",\"lastModified\":\"2018-09-13T20:25:01.7496299Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask655\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask654\",\"eTag\":\"0x8D619B6FBBAE89E\",\"lastModified\":\"2018-09-13T20:25:01.7576606Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask654\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask653\",\"eTag\":\"0x8D619B6FBBC6F3D\",\"lastModified\":\"2018-09-13T20:25:01.7676605Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask653\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask651\",\"eTag\":\"0x8D619B6FBBDCE18\",\"lastModified\":\"2018-09-13T20:25:01.7766424Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask651\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask652\",\"eTag\":\"0x8D619B6FBBDCE18\",\"lastModified\":\"2018-09-13T20:25:01.7766424Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask652\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask650\",\"eTag\":\"0x8D619B6FBC0B521\",\"lastModified\":\"2018-09-13T20:25:01.7956641Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask650\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask649\",\"eTag\":\"0x8D619B6FBC0DAE9\",\"lastModified\":\"2018-09-13T20:25:01.7966313Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask649\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask648\",\"eTag\":\"0x8D619B6FBC2147E\",\"lastModified\":\"2018-09-13T20:25:01.804659Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask648\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask647\",\"eTag\":\"0x8D619B6FBC23A7D\",\"lastModified\":\"2018-09-13T20:25:01.8056317Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask647\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask646\",\"eTag\":\"0x8D619B6FBC39A0B\",\"lastModified\":\"2018-09-13T20:25:01.8146315Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask646\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask645\",\"eTag\":\"0x8D619B6FBC4843E\",\"lastModified\":\"2018-09-13T20:25:01.820627Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask645\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask641\",\"eTag\":\"0x8D619B6FBC87C16\",\"lastModified\":\"2018-09-13T20:25:01.8466326Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask641\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask644\",\"eTag\":\"0x8D619B6FBC65DE5\",\"lastModified\":\"2018-09-13T20:25:01.8327525Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask644\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask642\",\"eTag\":\"0x8D619B6FBC7E4E1\",\"lastModified\":\"2018-09-13T20:25:01.8427617Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask642\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask638\",\"eTag\":\"0x8D619B6FBCC2936\",\"lastModified\":\"2018-09-13T20:25:01.8707254Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask638\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask640\",\"eTag\":\"0x8D619B6FBC91848\",\"lastModified\":\"2018-09-13T20:25:01.8506312Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask640\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask637\",\"eTag\":\"0x8D619B6FBCDFA3C\",\"lastModified\":\"2018-09-13T20:25:01.88263Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask637\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask643\",\"eTag\":\"0x8D619B6FBCDAC1A\",\"lastModified\":\"2018-09-13T20:25:01.8806298Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask643\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask639\",\"eTag\":\"0x8D619B6FBCAC5FE\",\"lastModified\":\"2018-09-13T20:25:01.8616318Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask639\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask636\",\"eTag\":\"0x8D619B6FBCF0BB6\",\"lastModified\":\"2018-09-13T20:25:01.889631Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask636\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask635\",\"eTag\":\"0x8D619B6FBCF32B4\",\"lastModified\":\"2018-09-13T20:25:01.8906292Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask635\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask634\",\"eTag\":\"0x8D619B6FBD06C3B\",\"lastModified\":\"2018-09-13T20:25:01.8986555Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask634\"\r\n + \ },{\r\n \"status\":\"Success\",\"taskId\":\"mytask633\",\"eTag\":\"0x8D619B6FBD0E0B5\",\"lastModified\":\"2018-09-13T20:25:01.9016373Z\",\"location\":\"https://batch98da0af6.eastus.batch.azure.com/jobs/batch98da0af6/tasks/mytask633\"\r\n + \ }\r\n ]\r\n}"} + headers: + content-type: [application/json;odata=minimalmetadata] + dataserviceversion: ['3.0'] + date: ['Thu, 13 Sep 2018 20:25:01 GMT'] + request-id: [174a7df4-baa7-4e8e-bb1f-22c28c988cf9] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/recordings/test_batch.test_batch_update_pools.yaml b/azure-batch/tests/recordings/test_batch.test_batch_update_pools.yaml index 40a68e9e1abd..ede9ffd11b32 100644 --- a/azure-batch/tests/recordings/test_batch.test_batch_update_pools.yaml +++ b/azure-batch/tests/recordings/test_batch.test_batch_update_pools.yaml @@ -1,32 +1,32 @@ interactions: - request: - body: '{"vmSize": "small", "id": "batch_paas_f0de0ddf", "cloudServiceConfiguration": - {"osFamily": "5"}, "startTask": {"userIdentity": {"autoUser": {"elevationLevel": - "admin"}}, "resourceFiles": [{"blobSource": "https://blobsource.com", "filePath": - "filename.txt"}], "commandLine": "cmd.exe /c \"echo hello world\"", "environmentSettings": - [{"name": "ENV_VAR", "value": "env_value"}]}}' + body: '{"cloudServiceConfiguration": {"osFamily": "5"}, "id": "batch_paas_f0de0ddf", + "vmSize": "small", "startTask": {"commandLine": "cmd.exe /c \"echo hello world\"", + "environmentSettings": [{"value": "env_value", "name": "ENV_VAR"}], "resourceFiles": + [{"filePath": "filename.txt", "blobSource": "https://blobsource.com"}], "userIdentity": + {"autoUser": {"elevationLevel": "admin"}}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['377'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:25:42 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:46:46 GMT'] method: POST - uri: https://batchf0de0ddf.westcentralus.batch.azure.com/pools?api-version=2018-03-01.6.1 + uri: https://batchf0de0ddf.eastus.batch.azure.com/pools?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf'] + dataserviceid: ['https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:25:42 GMT'] - etag: ['0x8D588B3A12845B4'] - last-modified: ['Tue, 13 Mar 2018 07:25:42 GMT'] - location: ['https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf'] - request-id: [055b144b-cd94-4fdf-8e49-0b44fd4cf4e2] + date: ['Fri, 24 Aug 2018 07:46:47 GMT'] + etag: ['0x8D60995BECB095E'] + last-modified: ['Fri, 24 Aug 2018 07:46:47 GMT'] + location: ['https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf'] + request-id: [971d586f-ad84-44ce-8c5d-1b4c8a99c94f] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -40,78 +40,78 @@ interactions: Connection: [keep-alive] Content-Length: ['24'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:25:42 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:46:47 GMT'] method: POST - uri: https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf/upgradeos?api-version=2018-03-01.6.1 + uri: https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf/upgradeos?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0de0ddf.westcentralus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"PoolVersionEqualsUpgradeVersion\",\"message\":{\r\n - \ \"lang\":\"en-US\",\"value\":\"The pool is already with the given version.\\nRequestId:29c00649-88e8-490f-9555-627af60b989b\\nTime:2018-03-13T07:25:43.3588061Z\"\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0de0ddf.eastus.batch.azure.com/$metadata#Microsoft.Azure.Batch.Protocol.Entities.Container.errors/@Element\",\"code\":\"PoolVersionEqualsUpgradeVersion\",\"message\":{\r\n + \ \"lang\":\"en-US\",\"value\":\"The pool is already with the given version.\\nRequestId:7776ea45-a731-4723-b85c-5676cfc6e475\\nTime:2018-08-24T07:46:48.3436665Z\"\r\n \ }\r\n}"} headers: - content-length: ['369'] + content-length: ['362'] content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:25:43 GMT'] - request-id: [29c00649-88e8-490f-9555-627af60b989b] + date: ['Fri, 24 Aug 2018 07:46:48 GMT'] + request-id: [7776ea45-a731-4723-b85c-5676cfc6e475] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] status: {code: 400, message: The pool is already with the given version.} - request: - body: '{"metadata": [{"name": "foo", "value": "bar"}], "certificateReferences": - [], "applicationPackageReferences": []}' + body: '{"metadata": [{"value": "bar", "name": "foo"}], "applicationPackageReferences": + [], "certificateReferences": []}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['112'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:25:43 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:46:48 GMT'] method: POST - uri: https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf/updateproperties?api-version=2018-03-01.6.1 + uri: https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf/updateproperties?api-version=2018-08-01.7.0 response: body: {string: ''} headers: content-length: ['0'] - dataserviceid: ['https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf/updateproperties'] + dataserviceid: ['https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf/updateproperties'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:25:43 GMT'] - etag: ['0x8D588B3A1EAE01A'] - last-modified: ['Tue, 13 Mar 2018 07:25:43 GMT'] - request-id: [52c464eb-2d18-40fe-a431-7f2340c827ad] + date: ['Fri, 24 Aug 2018 07:46:48 GMT'] + etag: ['0x8D60995BFB11E84'] + last-modified: ['Fri, 24 Aug 2018 07:46:49 GMT'] + request-id: [880d2254-99a9-4dcf-96be-e22914eeed6e] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] status: {code: 204, message: No Content} - request: - body: '{"metadata": [{"name": "foo2", "value": "bar2"}]}' + body: '{"metadata": [{"value": "bar2", "name": "foo2"}]}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['49'] Content-Type: [application/json; odata=minimalmetadata; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:25:44 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:46:49 GMT'] method: PATCH - uri: https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf?api-version=2018-03-01.6.1 + uri: https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf?api-version=2018-08-01.7.0 response: body: {string: ''} headers: - dataserviceid: ['https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf'] + dataserviceid: ['https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf'] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:25:44 GMT'] - etag: ['0x8D588B3A250B559'] - last-modified: ['Tue, 13 Mar 2018 07:25:44 GMT'] - request-id: [fc098ca9-b518-447f-b089-6860097c6537] + date: ['Fri, 24 Aug 2018 07:46:49 GMT'] + etag: ['0x8D60995C01AF5EA'] + last-modified: ['Fri, 24 Aug 2018 07:46:49 GMT'] + request-id: [c31a2b2b-9731-4431-871c-4b1bfc11f113] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -123,21 +123,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:25:44 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:46:49 GMT'] method: HEAD - uri: https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf?api-version=2018-03-01.6.1 + uri: https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:25:45 GMT'] - etag: ['0x8D588B3A250B559'] - last-modified: ['Tue, 13 Mar 2018 07:25:44 GMT'] - request-id: [6807da83-52d9-487b-baa7-ce2f53b07320] + date: ['Fri, 24 Aug 2018 07:46:50 GMT'] + etag: ['0x8D60995C01AF5EA'] + last-modified: ['Fri, 24 Aug 2018 07:46:49 GMT'] + request-id: [e095cb5c-cd8d-43c7-a86e-841680b1f937] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -149,15 +148,14 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:25:45 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:46:50 GMT'] method: GET - uri: https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf?api-version=2018-03-01.6.1 + uri: https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf?api-version=2018-08-01.7.0 response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0de0ddf.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_paas_f0de0ddf\",\"url\":\"https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf\",\"eTag\":\"0x8D588B3A250B559\",\"lastModified\":\"2018-03-13T07:25:44.6515033Z\",\"creationTime\":\"2018-03-13T07:25:42.7087796Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-03-13T07:25:42.7087796Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-03-13T07:25:42.8006022Z\",\"vmSize\":\"small\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"metadata\":[\r\n + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0de0ddf.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_paas_f0de0ddf\",\"url\":\"https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf\",\"eTag\":\"0x8D60995C01AF5EA\",\"lastModified\":\"2018-08-24T07:46:49.7273322Z\",\"creationTime\":\"2018-08-24T07:46:47.5258206Z\",\"state\":\"active\",\"stateTransitionTime\":\"2018-08-24T07:46:47.5258206Z\",\"allocationState\":\"steady\",\"allocationStateTransitionTime\":\"2018-08-24T07:46:47.6959132Z\",\"vmSize\":\"small\",\"resizeTimeout\":\"PT15M\",\"currentDedicatedNodes\":0,\"targetDedicatedNodes\":0,\"currentLowPriorityNodes\":0,\"targetLowPriorityNodes\":0,\"enableAutoScale\":false,\"enableInterNodeCommunication\":false,\"metadata\":[\r\n \ {\r\n \"name\":\"foo2\",\"value\":\"bar2\"\r\n }\r\n ],\"maxTasksPerNode\":1,\"taskSchedulingPolicy\":{\r\n \ \"nodeFillType\":\"Spread\"\r\n },\"cloudServiceConfiguration\":{\r\n \ \"osFamily\":\"5\",\"targetOSVersion\":\"*\",\"currentOSVersion\":\"*\"\r\n @@ -165,10 +163,10 @@ interactions: headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:25:45 GMT'] - etag: ['0x8D588B3A250B559'] - last-modified: ['Tue, 13 Mar 2018 07:25:44 GMT'] - request-id: [fab3fae7-4a9a-4cfd-befb-799cc430993a] + date: ['Fri, 24 Aug 2018 07:46:50 GMT'] + etag: ['0x8D60995C01AF5EA'] + last-modified: ['Fri, 24 Aug 2018 07:46:49 GMT'] + request-id: [90c87348-e562-48fc-834f-29f57b7ab543] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -180,23 +178,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:25:45 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:46:51 GMT'] return-client-request-id: ['false'] method: GET - uri: https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf?$select=id%2Cstate&timeout=30&api-version=2018-03-01.6.1&$expand=stats + uri: https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf?$expand=stats&api-version=2018-08-01.7.0&timeout=30&$select=id%2Cstate response: - body: {string: "{\r\n \"odata.metadata\":\"https://batchf0de0ddf.westcentralus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_paas_f0de0ddf\",\"state\":\"active\"\r\n}"} + body: {string: "{\r\n \"odata.metadata\":\"https://batchf0de0ddf.eastus.batch.azure.com/$metadata#pools/@Element\",\"id\":\"batch_paas_f0de0ddf\",\"state\":\"active\"\r\n}"} headers: content-type: [application/json;odata=minimalmetadata] dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:25:46 GMT'] - etag: ['0x8D588B3A250B559'] - last-modified: ['Tue, 13 Mar 2018 07:25:44 GMT'] - request-id: [53ed9b19-9c3b-4b9b-8f69-b99561d7ccb4] + date: ['Fri, 24 Aug 2018 07:46:51 GMT'] + etag: ['0x8D60995C01AF5EA'] + last-modified: ['Fri, 24 Aug 2018 07:46:49 GMT'] + request-id: [8b883890-0ff4-4dc6-9983-6604709cbdb1] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] @@ -209,19 +206,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.0 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.18.4 - msrest/0.4.27 msrest_azure/0.4.22 batchserviceclient/5.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.4 (Windows-2008ServerR2-6.1.7601-SP1) requests/2.19.1 + msrest/0.5.4 msrest_azure/0.4.34 azure-batch/5.0.0 Azure-SDK-For-Python] accept-language: [en-US] - ocp-date: ['Tue, 13 Mar 2018 07:25:46 GMT'] + ocp-date: ['Fri, 24 Aug 2018 07:46:51 GMT'] method: DELETE - uri: https://batchf0de0ddf.westcentralus.batch.azure.com/pools/batch_paas_f0de0ddf?api-version=2018-03-01.6.1 + uri: https://batchf0de0ddf.eastus.batch.azure.com/pools/batch_paas_f0de0ddf?api-version=2018-08-01.7.0 response: body: {string: ''} headers: dataserviceversion: ['3.0'] - date: ['Tue, 13 Mar 2018 07:25:45 GMT'] - request-id: [247f8ff2-b073-4e48-9533-2b2906a5c3ec] + date: ['Fri, 24 Aug 2018 07:46:52 GMT'] + request-id: [e8600515-49ca-4ff4-ba1c-33dfa14bd778] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] diff --git a/azure-batch/tests/test_batch.py b/azure-batch/tests/test_batch.py index c004d8d7f04c..2769e766a140 100644 --- a/azure-batch/tests/test_batch.py +++ b/azure-batch/tests/test_batch.py @@ -10,11 +10,11 @@ import logging import time import unittest - import requests import azure.batch from azure.batch import models + from batch_preparers import ( AccountPreparer, PoolPreparer, @@ -28,7 +28,7 @@ ) -AZURE_LOCATION = 'westcentralus' +AZURE_LOCATION = 'eastus' BATCH_RESOURCE = 'https://batch.core.windows.net/' @@ -75,6 +75,20 @@ def assertBatchError(self, code, func, *args, **kwargs): except Exception as err: self.fail("Expected BatchErrorExcption, instead got: {!r}".format(err)) + def assertCreateTasksError(self, code, func, *args, **kwargs): + try: + func(*args, **kwargs) + self.fail("CreateTasksError expected but not raised") + except models.CreateTasksErrorException as err: + try: + batch_error = err.errors.pop() + if code: + self.assertEqual(batch_error.error.code, code) + except IndexError: + self.fail("Inner BatchErrorException expected but not exist") + except Exception as err: + self.fail("Expected CreateTasksError, instead got: {!r}".format(err)) + @ResourceGroupPreparer(location=AZURE_LOCATION) @StorageAccountPreparer(name_prefix='batch1', location=AZURE_LOCATION) @AccountPreparer(location=AZURE_LOCATION) @@ -94,9 +108,9 @@ def test_batch_applications(self, batch_job, **kwargs): # Test Create Task with Application Package task_id = 'python_task_with_app_package' task = models.TaskAddParameter( - task_id, - 'cmd /c "echo hello world"', - application_package_references=[models.ApplicationPackageReference('application_id', 'v1.0')] + id=task_id, + command_line='cmd /c "echo hello world"', + application_package_references=[models.ApplicationPackageReference(application_id='application_id', version='v1.0')] ) response = client.task.add(batch_job.id, task) self.assertIsNone(response) @@ -159,8 +173,8 @@ def test_batch_create_pools(self, **kwargs): # Test Create Iaas Pool users = [ - models.UserAccount('test-user-1', 'kt#_gahr!@aGERDXA'), - models.UserAccount('test-user-2', 'kt#_gahr!@aGERDXA', models.ElevationLevel.admin) + models.UserAccount(name='test-user-1', password='kt#_gahr!@aGERDXA'), + models.UserAccount(name='test-user-2', password='kt#_gahr!@aGERDXA', elevation_level=models.ElevationLevel.admin) ] test_iaas_pool = models.PoolAddParameter( id=self.get_resource_name('batch_iaas_'), @@ -172,8 +186,8 @@ def test_batch_create_pools(self, **kwargs): sku='2016-Datacenter-smalldisk' ), node_agent_sku_id='batch.node.windows amd64', - windows_configuration=models.WindowsConfiguration(True)), - task_scheduling_policy=models.TaskSchedulingPolicy(models.ComputeNodeFillType.pack), + windows_configuration=models.WindowsConfiguration(enable_automatic_updates=True)), + task_scheduling_policy=models.TaskSchedulingPolicy(node_fill_type=models.ComputeNodeFillType.pack), user_accounts=users ) response = client.pool.add(test_iaas_pool) @@ -190,7 +204,7 @@ def test_batch_create_pools(self, **kwargs): self.assertEqual(counts[0].low_priority.total, 0) # Test Create Pool with Network Configuration - network_config = models.NetworkConfiguration('/subscriptions/00000000-0000-0000-0000-000000000000' + network_config = models.NetworkConfiguration(subnet_id='/subscriptions/00000000-0000-0000-0000-000000000000' '/resourceGroups/test' '/providers/Microsoft.Network' '/virtualNetworks/vnet1' @@ -314,8 +328,8 @@ def test_batch_update_pools(self, **kwargs): ), start_task=models.StartTask( command_line="cmd.exe /c \"echo hello world\"", - resource_files=[models.ResourceFile('https://blobsource.com', 'filename.txt')], - environment_settings=[models.EnvironmentSetting('ENV_VAR', 'env_value')], + resource_files=[models.ResourceFile(blob_source='https://blobsource.com', file_path='filename.txt')], + environment_settings=[models.EnvironmentSetting(name='ENV_VAR', value='env_value')], user_identity=models.UserIdentity( auto_user=models.AutoUserSpecification( elevation_level=models.ElevationLevel.admin @@ -335,12 +349,15 @@ def test_batch_update_pools(self, **kwargs): ) # Test Update Pool Parameters - params = models.PoolUpdatePropertiesParameter([], [], [models.MetadataItem('foo', 'bar')]) + params = models.PoolUpdatePropertiesParameter( + certificate_references=[], + application_package_references=[], + metadata=[models.MetadataItem(name='foo', value='bar')]) response = client.pool.update_properties(test_paas_pool.id, params) self.assertIsNone(response) # Test Patch Pool Parameters - params = models.PoolPatchParameter(metadata=[models.MetadataItem('foo2', 'bar2')]) + params = models.PoolPatchParameter(metadata=[models.MetadataItem(name='foo2', value='bar2')]) response = client.pool.patch(test_paas_pool.id, params) self.assertIsNone(response) @@ -434,11 +451,11 @@ def test_batch_scale_pools(self, batch_pool, **kwargs): @ResourceGroupPreparer(location=AZURE_LOCATION) @AccountPreparer(location=AZURE_LOCATION) def test_batch_job_schedules(self, **kwargs): - client = self.create_aad_client(**kwargs) + client = self.create_sharedkey_client(**kwargs) # Test Create Job Schedule schedule_id = self.get_resource_name('batch_schedule_') job_spec = models.JobSpecification( - pool_info=models.PoolInformation("pool_id"), + pool_info=models.PoolInformation(pool_id="pool_id"), constraints=models.JobConstraints(max_task_retry_count=2), on_all_tasks_complete=models.OnAllTasksComplete.terminate_job ) @@ -447,9 +464,9 @@ def test_batch_job_schedules(self, **kwargs): recurrence_interval=datetime.timedelta(days=1) ) params = models.JobScheduleAddParameter( - schedule_id, - schedule, - job_spec + id=schedule_id, + schedule=schedule, + job_specification=job_spec ) response = client.job_schedule.add(params) self.assertIsNone(response) @@ -482,12 +499,12 @@ def test_batch_job_schedules(self, **kwargs): # Test Update Job Schedule job_spec = models.JobSpecification( - pool_info=models.PoolInformation('pool_id') + pool_info=models.PoolInformation(pool_id='pool_id') ) schedule = models.Schedule( recurrence_interval=datetime.timedelta(hours=10) ) - params = models.JobScheduleUpdateParameter(schedule, job_spec) + params = models.JobScheduleUpdateParameter(schedule=schedule, job_specification=job_spec) response = client.job_schedule.update(schedule_id, params) self.assertIsNone(response) @@ -495,7 +512,7 @@ def test_batch_job_schedules(self, **kwargs): schedule = models.Schedule( recurrence_interval=datetime.timedelta(hours=5) ) - params = models.JobSchedulePatchParameter(schedule) + params = models.JobSchedulePatchParameter(schedule=schedule) response = client.job_schedule.patch(schedule_id, params) self.assertIsNone(response) @@ -510,7 +527,7 @@ def test_batch_job_schedules(self, **kwargs): @ResourceGroupPreparer(location=AZURE_LOCATION) @AccountPreparer(location=AZURE_LOCATION) def test_batch_network_configuration(self, **kwargs): - client = self.create_aad_client(**kwargs) + client = self.create_sharedkey_client(**kwargs) # Test Create Pool with Network Config network_config = models.NetworkConfiguration( endpoint_configuration=models.PoolEndpointConfiguration( @@ -578,6 +595,8 @@ def test_batch_compute_nodes(self, batch_pool, **kwargs): self.assertIsInstance(node, models.ComputeNode) self.assertEqual(node.scheduling_state, models.SchedulingState.enabled) self.assertTrue(node.is_dedicated) + self.assertIsNotNone(node.node_agent_info) + self.assertIsNotNone(node.node_agent_info.version) # Test Upload Log config = models.UploadBatchServiceLogsConfiguration( @@ -602,12 +621,14 @@ def test_batch_compute_nodes(self, batch_pool, **kwargs): self.assertIsNone(response) # Test Reimage Node - response = client.compute_node.reimage( - batch_pool.name, nodes[1].id, node_reimage_option=models.ComputeNodeReimageOption.terminate) - self.assertIsNone(response) + self.assertBatchError('OperationNotValidOnNode', + client.compute_node.reimage, + batch_pool.name, + nodes[1].id, + node_reimage_option=models.ComputeNodeReimageOption.terminate) # Test Remove Nodes - options = models.NodeRemoveParameter([n.id for n in nodes]) + options = models.NodeRemoveParameter(node_list=[n.id for n in nodes]) response = client.pool.remove_nodes(batch_pool.name, options) self.assertIsNone(response) @@ -624,7 +645,7 @@ def test_batch_compute_node_user(self, batch_pool, **kwargs): # Test Add User user_name = 'BatchPythonSDKUser' nodes = list(client.compute_node.list(batch_pool.name)) - user = models.ComputeNodeUser(user_name, password='kt#_gahr!@aGERDXA', is_admin=False) + user = models.ComputeNodeUser(name=user_name, password='kt#_gahr!@aGERDXA', is_admin=False) response = client.compute_node.add_user(batch_pool.name, nodes[0].id, user) self.assertIsNone(response) @@ -659,7 +680,7 @@ def test_batch_files(self, batch_pool, batch_job, **kwargs): nodes = list(client.compute_node.list(batch_pool.name)) node = nodes[0].id task_id = 'test_task' - task_param = models.TaskAddParameter(task_id, 'cmd /c "echo hello world"') + task_param = models.TaskAddParameter(id=task_id, command_line='cmd /c "echo hello world"') response = client.task.add(batch_job.id, task_param) self.assertIsNone(response) task = client.task.get(batch_job.id, task_id) @@ -721,9 +742,9 @@ def test_batch_tasks(self, batch_job, **kwargs): # Test Create Task with Auto Complete exit_conditions = models.ExitConditions( - exit_codes=[models.ExitCodeMapping(1, models.ExitOptions(models.JobAction.terminate))], - exit_code_ranges=[models.ExitCodeRangeMapping(2, 4, models.ExitOptions(models.JobAction.disable))], - default=models.ExitOptions(models.JobAction.none)) + exit_codes=[models.ExitCodeMapping(code=1, exit_options=models.ExitOptions(job_action=models.JobAction.terminate))], + exit_code_ranges=[models.ExitCodeRangeMapping(start=2, end=4, exit_options=models.ExitOptions(job_action=models.JobAction.disable))], + default=models.ExitOptions(job_action=models.JobAction.none)) task_param = models.TaskAddParameter( id=self.get_resource_name('batch_task1_'), command_line='cmd /c "echo hello world"', @@ -803,7 +824,7 @@ def test_batch_tasks(self, batch_job, **kwargs): command_line='cmd /c "echo hello world"', container_settings=models.TaskContainerSettings( image_name='windows_container:latest', - registry=models.ContainerRegistry('username', 'password')) + registry=models.ContainerRegistry(user_name='username', password='password')) ) client.task.add(batch_job.id, task_param) task = client.task.get(batch_job.id, task_param.id) @@ -826,7 +847,8 @@ def test_batch_tasks(self, batch_job, **kwargs): tasks = [] for i in range(7, 10): tasks.append(models.TaskAddParameter( - self.get_resource_name('batch_task{}_'.format(i)), 'cmd /c "echo hello world"')) + id=self.get_resource_name('batch_task{}_'.format(i)), + command_line='cmd /c "echo hello world"')) result = client.task.add_collection(batch_job.id, tasks) self.assertIsInstance(result, models.TaskAddCollectionResult) self.assertEqual(len(result.value), 3) @@ -841,7 +863,6 @@ def test_batch_tasks(self, batch_job, **kwargs): self.assertIsInstance(task_counts, models.TaskCounts) self.assertEqual(task_counts.completed, 0) self.assertEqual(task_counts.succeeded, 0) - self.assertEqual(task_counts.validation_status, models.TaskCountValidationStatus.validated) # Test Terminate Task response = client.task.terminate(batch_job.id, task_param.id) @@ -861,7 +882,7 @@ def test_batch_tasks(self, batch_job, **kwargs): constraints=models.TaskConstraints(max_task_retry_count=1)) self.assertIsNone(response) - # Test Get Subtasks + # Test Get Subtasks # TODO: Test with actual subtasks subtasks = client.task.list_subtasks(batch_job.id, task_param.id) self.assertIsInstance(subtasks, models.CloudTaskListSubtasksResult) @@ -871,6 +892,48 @@ def test_batch_tasks(self, batch_job, **kwargs): response = client.task.delete(batch_job.id, task_param.id) self.assertIsNone(response) + # Test Bulk Add Task Failure + task_id = "mytask" + tasks_to_add = [] + resource_files = [] + for i in range(10000): + resource_file = models.ResourceFile( + blob_source="https://mystorageaccount.blob.core.windows.net/files/resourceFile{}".format(str(i)), + file_path="resourceFile{}".format(str(i))) + resource_files.append(resource_file) + task = models.TaskAddParameter( + id=task_id, + command_line="sleep 1", + resource_files=resource_files) + tasks_to_add.append(task) + self.assertCreateTasksError( + "RequestBodyTooLarge", + client.task.add_collection, + batch_job.id, + tasks_to_add) + + # Test Bulk Add Task Success + task_id = "mytask" + tasks_to_add = [] + resource_files = [] + for i in range(100): + resource_file = models.ResourceFile( + blob_source="https://mystorageaccount.blob.core.windows.net/files/resourceFile" + str(i), + file_path="resourceFile"+str(i)) + resource_files.append(resource_file) + for i in range(733): + task = models.TaskAddParameter( + id=task_id + str(i), + command_line="sleep 1", + resource_files=resource_files) + tasks_to_add.append(task) + result = client.task.add_collection(batch_job.id, tasks_to_add) + self.assertIsInstance(result, models.TaskAddCollectionResult) + self.assertEqual(len(result.value), 733) + self.assertEqual(result.value[0].status, models.TaskAddStatus.success) + self.assertTrue( + all(t.status == models.TaskAddStatus.success for t in result.value)) + @ResourceGroupPreparer(location=AZURE_LOCATION) @AccountPreparer(location=AZURE_LOCATION) def test_batch_jobs(self, **kwargs): diff --git a/azure-cognitiveservices-language-luis/HISTORY.rst b/azure-cognitiveservices-language-luis/HISTORY.rst new file mode 100644 index 000000000000..920ba5516a76 --- /dev/null +++ b/azure-cognitiveservices-language-luis/HISTORY.rst @@ -0,0 +1,9 @@ +.. :changelog: + +Release History +=============== + +0.1.0 (2018-08-15) +++++++++++++++++++ + +* Initial Release diff --git a/azure-cognitiveservices-language-luis/MANIFEST.in b/azure-cognitiveservices-language-luis/MANIFEST.in new file mode 100644 index 000000000000..bb37a2723dae --- /dev/null +++ b/azure-cognitiveservices-language-luis/MANIFEST.in @@ -0,0 +1 @@ +include *.rst diff --git a/azure-cognitiveservices-language-luis/README.rst b/azure-cognitiveservices-language-luis/README.rst new file mode 100644 index 000000000000..837869e535e6 --- /dev/null +++ b/azure-cognitiveservices-language-luis/README.rst @@ -0,0 +1,43 @@ +Microsoft Azure SDK for Python +============================== + +This is the Microsoft Azure Cognitive Services LUIS Client Library. + +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. + + +Compatibility +============= + +**IMPORTANT**: If you have an earlier version of the azure package +(version < 1.0), you should uninstall it before installing this package. + +You can check the version using pip: + +.. code:: shell + + pip freeze + +If you see azure==0.11.0 (or any version below 1.0), uninstall it first: + +.. code:: shell + + pip uninstall azure + + +Usage +===== + +For code examples, see `Cognitive Services LUIS +`__ +on docs.microsoft.com. + + +Provide Feedback +================ + +If you encounter any bugs or have suggestions, please file an issue in the +`Issues `__ +section of the project. diff --git a/azure-cognitiveservices-language-luis/azure/__init__.py b/azure-cognitiveservices-language-luis/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/__init__.py new file mode 100644 index 000000000000..de40ea7ca058 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/__init__.py @@ -0,0 +1 @@ +__import__('pkg_resources').declare_namespace(__name__) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/__init__.py new file mode 100644 index 000000000000..f26d1f82f71c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/__init__.py @@ -0,0 +1,18 @@ +# 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 .luis_authoring_client import LUISAuthoringClient +from .version import VERSION + +__all__ = ['LUISAuthoringClient'] + +__version__ = VERSION + diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/luis_authoring_client.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/luis_authoring_client.py new file mode 100644 index 000000000000..b6563fe9d625 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/luis_authoring_client.py @@ -0,0 +1,114 @@ +# 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.service_client import SDKClient +from msrest import Configuration, Serializer, Deserializer +from .version import VERSION +from msrest.exceptions import HttpOperationError +from .operations.features_operations import FeaturesOperations +from .operations.examples_operations import ExamplesOperations +from .operations.model_operations import ModelOperations +from .operations.apps_operations import AppsOperations +from .operations.versions_operations import VersionsOperations +from .operations.train_operations import TrainOperations +from .operations.permissions_operations import PermissionsOperations +from .operations.pattern_operations import PatternOperations +from . import models + + +class LUISAuthoringClientConfiguration(Configuration): + """Configuration for LUISAuthoringClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param endpoint: Supported Cognitive Services endpoints (protocol and + hostname, for example: https://westus.api.cognitive.microsoft.com). + :type endpoint: str + :param credentials: Subscription credentials which uniquely identify + client subscription. + :type credentials: None + """ + + def __init__( + self, endpoint, credentials): + + if endpoint is None: + raise ValueError("Parameter 'endpoint' must not be None.") + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + base_url = '{Endpoint}/luis/api/v2.0' + + super(LUISAuthoringClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-cognitiveservices-language-luis/{}'.format(VERSION)) + + self.endpoint = endpoint + self.credentials = credentials + + +class LUISAuthoringClient(SDKClient): + """LUISAuthoringClient + + :ivar config: Configuration for client. + :vartype config: LUISAuthoringClientConfiguration + + :ivar features: Features operations + :vartype features: azure.cognitiveservices.language.luis.authoring.operations.FeaturesOperations + :ivar examples: Examples operations + :vartype examples: azure.cognitiveservices.language.luis.authoring.operations.ExamplesOperations + :ivar model: Model operations + :vartype model: azure.cognitiveservices.language.luis.authoring.operations.ModelOperations + :ivar apps: Apps operations + :vartype apps: azure.cognitiveservices.language.luis.authoring.operations.AppsOperations + :ivar versions: Versions operations + :vartype versions: azure.cognitiveservices.language.luis.authoring.operations.VersionsOperations + :ivar train: Train operations + :vartype train: azure.cognitiveservices.language.luis.authoring.operations.TrainOperations + :ivar permissions: Permissions operations + :vartype permissions: azure.cognitiveservices.language.luis.authoring.operations.PermissionsOperations + :ivar pattern: Pattern operations + :vartype pattern: azure.cognitiveservices.language.luis.authoring.operations.PatternOperations + + :param endpoint: Supported Cognitive Services endpoints (protocol and + hostname, for example: https://westus.api.cognitive.microsoft.com). + :type endpoint: str + :param credentials: Subscription credentials which uniquely identify + client subscription. + :type credentials: None + """ + + def __init__( + self, endpoint, credentials): + + self.config = LUISAuthoringClientConfiguration(endpoint, credentials) + super(LUISAuthoringClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2.0' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.features = FeaturesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.examples = ExamplesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.model = ModelOperations( + self._client, self.config, self._serialize, self._deserialize) + self.apps = AppsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.versions = VersionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.train = TrainOperations( + self._client, self.config, self._serialize, self._deserialize) + self.permissions = PermissionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.pattern = PatternOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/__init__.py new file mode 100644 index 000000000000..ee0e09955392 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/__init__.py @@ -0,0 +1,325 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .entity_label_object_py3 import EntityLabelObject + from .application_create_object_py3 import ApplicationCreateObject + from .prebuilt_domain_create_base_object_py3 import PrebuiltDomainCreateBaseObject + from .prebuilt_domain_create_object_py3 import PrebuiltDomainCreateObject + from .prebuilt_domain_model_create_object_py3 import PrebuiltDomainModelCreateObject + from .hierarchical_entity_model_py3 import HierarchicalEntityModel + from .composite_entity_model_py3 import CompositeEntityModel + from .json_entity_py3 import JSONEntity + from .application_setting_update_object_py3 import ApplicationSettingUpdateObject + from .publish_setting_update_object_py3 import PublishSettingUpdateObject + from .example_label_object_py3 import ExampleLabelObject + from .phraselist_create_object_py3 import PhraselistCreateObject + from .sub_closed_list_py3 import SubClosedList + from .sub_closed_list_response_py3 import SubClosedListResponse + from .application_update_object_py3 import ApplicationUpdateObject + from .json_regex_feature_py3 import JSONRegexFeature + from .pattern_update_object_py3 import PatternUpdateObject + from .closed_list_py3 import ClosedList + from .word_list_object_py3 import WordListObject + from .closed_list_model_patch_object_py3 import ClosedListModelPatchObject + from .json_model_feature_py3 import JSONModelFeature + from .model_create_object_py3 import ModelCreateObject + from .pattern_create_object_py3 import PatternCreateObject + from .word_list_base_update_object_py3 import WordListBaseUpdateObject + from .json_utterance_py3 import JSONUtterance + from .model_update_object_py3 import ModelUpdateObject + from .closed_list_model_update_object_py3 import ClosedListModelUpdateObject + from .closed_list_model_create_object_py3 import ClosedListModelCreateObject + from .version_info_py3 import VersionInfo + from .task_update_object_py3 import TaskUpdateObject + from .phraselist_update_object_py3 import PhraselistUpdateObject + from .prebuilt_domain_object_py3 import PrebuiltDomainObject + from .hierarchical_model_py3 import HierarchicalModel + from .application_publish_object_py3 import ApplicationPublishObject + from .pattern_any_py3 import PatternAny + from .regex_entity_py3 import RegexEntity + from .prebuilt_entity_py3 import PrebuiltEntity + from .pattern_rule_py3 import PatternRule + from .luis_app_py3 import LuisApp + from .entity_label_py3 import EntityLabel + from .intent_prediction_py3 import IntentPrediction + from .entity_prediction_py3 import EntityPrediction + from .labeled_utterance_py3 import LabeledUtterance + from .intents_suggestion_example_py3 import IntentsSuggestionExample + from .entities_suggestion_example_py3 import EntitiesSuggestionExample + from .personal_assistants_response_py3 import PersonalAssistantsResponse + from .model_info_py3 import ModelInfo + from .entity_role_py3 import EntityRole + from .child_entity_py3 import ChildEntity + from .explicit_list_item_py3 import ExplicitListItem + from .model_info_response_py3 import ModelInfoResponse + from .entity_model_info_py3 import EntityModelInfo + from .hierarchical_entity_extractor_py3 import HierarchicalEntityExtractor + from .composite_entity_extractor_py3 import CompositeEntityExtractor + from .closed_list_entity_extractor_py3 import ClosedListEntityExtractor + from .prebuilt_entity_extractor_py3 import PrebuiltEntityExtractor + from .hierarchical_child_entity_py3 import HierarchicalChildEntity + from .custom_prebuilt_model_py3 import CustomPrebuiltModel + from .intent_classifier_py3 import IntentClassifier + from .entity_extractor_py3 import EntityExtractor + from .phrase_list_feature_info_py3 import PhraseListFeatureInfo + from .pattern_feature_info_py3 import PatternFeatureInfo + from .features_response_object_py3 import FeaturesResponseObject + from .feature_info_object_py3 import FeatureInfoObject + from .label_example_response_py3 import LabelExampleResponse + from .operation_status_py3 import OperationStatus + from .batch_label_example_py3 import BatchLabelExample + from .application_info_response_py3 import ApplicationInfoResponse + from .production_or_staging_endpoint_info_py3 import ProductionOrStagingEndpointInfo + from .endpoint_info_py3 import EndpointInfo + from .available_culture_py3 import AvailableCulture + from .application_settings_py3 import ApplicationSettings + from .publish_settings_py3 import PublishSettings + from .available_prebuilt_entity_model_py3 import AvailablePrebuiltEntityModel + from .enqueue_training_response_py3 import EnqueueTrainingResponse + from .model_training_details_py3 import ModelTrainingDetails + from .model_training_info_py3 import ModelTrainingInfo + from .user_access_list_py3 import UserAccessList + from .user_collaborator_py3 import UserCollaborator + from .collaborators_array_py3 import CollaboratorsArray + from .error_response_py3 import ErrorResponse, ErrorResponseException + from .operation_error_py3 import OperationError + from .prebuilt_domain_item_py3 import PrebuiltDomainItem + from .prebuilt_domain_py3 import PrebuiltDomain + from .entity_role_create_object_py3 import EntityRoleCreateObject + from .regex_model_create_object_py3 import RegexModelCreateObject + from .pattern_any_model_create_object_py3 import PatternAnyModelCreateObject + from .explicit_list_item_create_object_py3 import ExplicitListItemCreateObject + from .regex_model_update_object_py3 import RegexModelUpdateObject + from .pattern_any_model_update_object_py3 import PatternAnyModelUpdateObject + from .entity_role_update_object_py3 import EntityRoleUpdateObject + from .explicit_list_item_update_object_py3 import ExplicitListItemUpdateObject + from .pattern_rule_create_object_py3 import PatternRuleCreateObject + from .pattern_rule_update_object_py3 import PatternRuleUpdateObject + from .regex_entity_extractor_py3 import RegexEntityExtractor + from .pattern_any_entity_extractor_py3 import PatternAnyEntityExtractor + from .pattern_rule_info_py3 import PatternRuleInfo + from .label_text_object_py3 import LabelTextObject + from .hierarchical_child_model_update_object_py3 import HierarchicalChildModelUpdateObject + from .hierarchical_child_model_create_object_py3 import HierarchicalChildModelCreateObject + from .composite_child_model_create_object_py3 import CompositeChildModelCreateObject +except (SyntaxError, ImportError): + from .entity_label_object import EntityLabelObject + from .application_create_object import ApplicationCreateObject + from .prebuilt_domain_create_base_object import PrebuiltDomainCreateBaseObject + from .prebuilt_domain_create_object import PrebuiltDomainCreateObject + from .prebuilt_domain_model_create_object import PrebuiltDomainModelCreateObject + from .hierarchical_entity_model import HierarchicalEntityModel + from .composite_entity_model import CompositeEntityModel + from .json_entity import JSONEntity + from .application_setting_update_object import ApplicationSettingUpdateObject + from .publish_setting_update_object import PublishSettingUpdateObject + from .example_label_object import ExampleLabelObject + from .phraselist_create_object import PhraselistCreateObject + from .sub_closed_list import SubClosedList + from .sub_closed_list_response import SubClosedListResponse + from .application_update_object import ApplicationUpdateObject + from .json_regex_feature import JSONRegexFeature + from .pattern_update_object import PatternUpdateObject + from .closed_list import ClosedList + from .word_list_object import WordListObject + from .closed_list_model_patch_object import ClosedListModelPatchObject + from .json_model_feature import JSONModelFeature + from .model_create_object import ModelCreateObject + from .pattern_create_object import PatternCreateObject + from .word_list_base_update_object import WordListBaseUpdateObject + from .json_utterance import JSONUtterance + from .model_update_object import ModelUpdateObject + from .closed_list_model_update_object import ClosedListModelUpdateObject + from .closed_list_model_create_object import ClosedListModelCreateObject + from .version_info import VersionInfo + from .task_update_object import TaskUpdateObject + from .phraselist_update_object import PhraselistUpdateObject + from .prebuilt_domain_object import PrebuiltDomainObject + from .hierarchical_model import HierarchicalModel + from .application_publish_object import ApplicationPublishObject + from .pattern_any import PatternAny + from .regex_entity import RegexEntity + from .prebuilt_entity import PrebuiltEntity + from .pattern_rule import PatternRule + from .luis_app import LuisApp + from .entity_label import EntityLabel + from .intent_prediction import IntentPrediction + from .entity_prediction import EntityPrediction + from .labeled_utterance import LabeledUtterance + from .intents_suggestion_example import IntentsSuggestionExample + from .entities_suggestion_example import EntitiesSuggestionExample + from .personal_assistants_response import PersonalAssistantsResponse + from .model_info import ModelInfo + from .entity_role import EntityRole + from .child_entity import ChildEntity + from .explicit_list_item import ExplicitListItem + from .model_info_response import ModelInfoResponse + from .entity_model_info import EntityModelInfo + from .hierarchical_entity_extractor import HierarchicalEntityExtractor + from .composite_entity_extractor import CompositeEntityExtractor + from .closed_list_entity_extractor import ClosedListEntityExtractor + from .prebuilt_entity_extractor import PrebuiltEntityExtractor + from .hierarchical_child_entity import HierarchicalChildEntity + from .custom_prebuilt_model import CustomPrebuiltModel + from .intent_classifier import IntentClassifier + from .entity_extractor import EntityExtractor + from .phrase_list_feature_info import PhraseListFeatureInfo + from .pattern_feature_info import PatternFeatureInfo + from .features_response_object import FeaturesResponseObject + from .feature_info_object import FeatureInfoObject + from .label_example_response import LabelExampleResponse + from .operation_status import OperationStatus + from .batch_label_example import BatchLabelExample + from .application_info_response import ApplicationInfoResponse + from .production_or_staging_endpoint_info import ProductionOrStagingEndpointInfo + from .endpoint_info import EndpointInfo + from .available_culture import AvailableCulture + from .application_settings import ApplicationSettings + from .publish_settings import PublishSettings + from .available_prebuilt_entity_model import AvailablePrebuiltEntityModel + from .enqueue_training_response import EnqueueTrainingResponse + from .model_training_details import ModelTrainingDetails + from .model_training_info import ModelTrainingInfo + from .user_access_list import UserAccessList + from .user_collaborator import UserCollaborator + from .collaborators_array import CollaboratorsArray + from .error_response import ErrorResponse, ErrorResponseException + from .operation_error import OperationError + from .prebuilt_domain_item import PrebuiltDomainItem + from .prebuilt_domain import PrebuiltDomain + from .entity_role_create_object import EntityRoleCreateObject + from .regex_model_create_object import RegexModelCreateObject + from .pattern_any_model_create_object import PatternAnyModelCreateObject + from .explicit_list_item_create_object import ExplicitListItemCreateObject + from .regex_model_update_object import RegexModelUpdateObject + from .pattern_any_model_update_object import PatternAnyModelUpdateObject + from .entity_role_update_object import EntityRoleUpdateObject + from .explicit_list_item_update_object import ExplicitListItemUpdateObject + from .pattern_rule_create_object import PatternRuleCreateObject + from .pattern_rule_update_object import PatternRuleUpdateObject + from .regex_entity_extractor import RegexEntityExtractor + from .pattern_any_entity_extractor import PatternAnyEntityExtractor + from .pattern_rule_info import PatternRuleInfo + from .label_text_object import LabelTextObject + from .hierarchical_child_model_update_object import HierarchicalChildModelUpdateObject + from .hierarchical_child_model_create_object import HierarchicalChildModelCreateObject + from .composite_child_model_create_object import CompositeChildModelCreateObject +from .luis_authoring_client_enums import ( + TrainingStatus, + OperationStatusType, +) + +__all__ = [ + 'EntityLabelObject', + 'ApplicationCreateObject', + 'PrebuiltDomainCreateBaseObject', + 'PrebuiltDomainCreateObject', + 'PrebuiltDomainModelCreateObject', + 'HierarchicalEntityModel', + 'CompositeEntityModel', + 'JSONEntity', + 'ApplicationSettingUpdateObject', + 'PublishSettingUpdateObject', + 'ExampleLabelObject', + 'PhraselistCreateObject', + 'SubClosedList', + 'SubClosedListResponse', + 'ApplicationUpdateObject', + 'JSONRegexFeature', + 'PatternUpdateObject', + 'ClosedList', + 'WordListObject', + 'ClosedListModelPatchObject', + 'JSONModelFeature', + 'ModelCreateObject', + 'PatternCreateObject', + 'WordListBaseUpdateObject', + 'JSONUtterance', + 'ModelUpdateObject', + 'ClosedListModelUpdateObject', + 'ClosedListModelCreateObject', + 'VersionInfo', + 'TaskUpdateObject', + 'PhraselistUpdateObject', + 'PrebuiltDomainObject', + 'HierarchicalModel', + 'ApplicationPublishObject', + 'PatternAny', + 'RegexEntity', + 'PrebuiltEntity', + 'PatternRule', + 'LuisApp', + 'EntityLabel', + 'IntentPrediction', + 'EntityPrediction', + 'LabeledUtterance', + 'IntentsSuggestionExample', + 'EntitiesSuggestionExample', + 'PersonalAssistantsResponse', + 'ModelInfo', + 'EntityRole', + 'ChildEntity', + 'ExplicitListItem', + 'ModelInfoResponse', + 'EntityModelInfo', + 'HierarchicalEntityExtractor', + 'CompositeEntityExtractor', + 'ClosedListEntityExtractor', + 'PrebuiltEntityExtractor', + 'HierarchicalChildEntity', + 'CustomPrebuiltModel', + 'IntentClassifier', + 'EntityExtractor', + 'PhraseListFeatureInfo', + 'PatternFeatureInfo', + 'FeaturesResponseObject', + 'FeatureInfoObject', + 'LabelExampleResponse', + 'OperationStatus', + 'BatchLabelExample', + 'ApplicationInfoResponse', + 'ProductionOrStagingEndpointInfo', + 'EndpointInfo', + 'AvailableCulture', + 'ApplicationSettings', + 'PublishSettings', + 'AvailablePrebuiltEntityModel', + 'EnqueueTrainingResponse', + 'ModelTrainingDetails', + 'ModelTrainingInfo', + 'UserAccessList', + 'UserCollaborator', + 'CollaboratorsArray', + 'ErrorResponse', 'ErrorResponseException', + 'OperationError', + 'PrebuiltDomainItem', + 'PrebuiltDomain', + 'EntityRoleCreateObject', + 'RegexModelCreateObject', + 'PatternAnyModelCreateObject', + 'ExplicitListItemCreateObject', + 'RegexModelUpdateObject', + 'PatternAnyModelUpdateObject', + 'EntityRoleUpdateObject', + 'ExplicitListItemUpdateObject', + 'PatternRuleCreateObject', + 'PatternRuleUpdateObject', + 'RegexEntityExtractor', + 'PatternAnyEntityExtractor', + 'PatternRuleInfo', + 'LabelTextObject', + 'HierarchicalChildModelUpdateObject', + 'HierarchicalChildModelCreateObject', + 'CompositeChildModelCreateObject', + 'TrainingStatus', + 'OperationStatusType', +] diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_create_object.py new file mode 100644 index 000000000000..7f57ee2d18f2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_create_object.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationCreateObject(Model): + """Properties for creating a new LUIS Application. + + All required parameters must be populated in order to send to Azure. + + :param culture: Required. The culture for the new application. It is the + language that your app understands and speaks. E.g.: "en-us". Note: the + culture cannot be changed after the app is created. + :type culture: str + :param domain: The domain for the new application. Optional. E.g.: Comics. + :type domain: str + :param description: Description of the new application. Optional. + :type description: str + :param initial_version_id: The initial version ID. Optional. Default value + is: "0.1" + :type initial_version_id: str + :param usage_scenario: Defines the scenario for the new application. + Optional. E.g.: IoT. + :type usage_scenario: str + :param name: Required. The name for the new application. + :type name: str + """ + + _validation = { + 'culture': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'culture': {'key': 'culture', 'type': 'str'}, + 'domain': {'key': 'domain', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'initial_version_id': {'key': 'initialVersionId', 'type': 'str'}, + 'usage_scenario': {'key': 'usageScenario', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationCreateObject, self).__init__(**kwargs) + self.culture = kwargs.get('culture', None) + self.domain = kwargs.get('domain', None) + self.description = kwargs.get('description', None) + self.initial_version_id = kwargs.get('initial_version_id', None) + self.usage_scenario = kwargs.get('usage_scenario', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_create_object_py3.py new file mode 100644 index 000000000000..88c8e1756f84 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_create_object_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationCreateObject(Model): + """Properties for creating a new LUIS Application. + + All required parameters must be populated in order to send to Azure. + + :param culture: Required. The culture for the new application. It is the + language that your app understands and speaks. E.g.: "en-us". Note: the + culture cannot be changed after the app is created. + :type culture: str + :param domain: The domain for the new application. Optional. E.g.: Comics. + :type domain: str + :param description: Description of the new application. Optional. + :type description: str + :param initial_version_id: The initial version ID. Optional. Default value + is: "0.1" + :type initial_version_id: str + :param usage_scenario: Defines the scenario for the new application. + Optional. E.g.: IoT. + :type usage_scenario: str + :param name: Required. The name for the new application. + :type name: str + """ + + _validation = { + 'culture': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'culture': {'key': 'culture', 'type': 'str'}, + 'domain': {'key': 'domain', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'initial_version_id': {'key': 'initialVersionId', 'type': 'str'}, + 'usage_scenario': {'key': 'usageScenario', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, culture: str, name: str, domain: str=None, description: str=None, initial_version_id: str=None, usage_scenario: str=None, **kwargs) -> None: + super(ApplicationCreateObject, self).__init__(**kwargs) + self.culture = culture + self.domain = domain + self.description = description + self.initial_version_id = initial_version_id + self.usage_scenario = usage_scenario + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_info_response.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_info_response.py new file mode 100644 index 000000000000..8bfc55762b7c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_info_response.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationInfoResponse(Model): + """Response containing the Application Info. + + :param id: The ID (GUID) of the application. + :type id: str + :param name: The name of the application. + :type name: str + :param description: The description of the application. + :type description: str + :param culture: The culture of the application. E.g.: en-us. + :type culture: str + :param usage_scenario: Defines the scenario for the new application. + Optional. E.g.: IoT. + :type usage_scenario: str + :param domain: The domain for the new application. Optional. E.g.: Comics. + :type domain: str + :param versions_count: Amount of model versions within the application. + :type versions_count: int + :param created_date_time: The version's creation timestamp. + :type created_date_time: str + :param endpoints: The Runtime endpoint URL for this model version. + :type endpoints: object + :param endpoint_hits_count: Number of calls made to this endpoint. + :type endpoint_hits_count: int + :param active_version: The version ID currently marked as active. + :type active_version: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'culture': {'key': 'culture', 'type': 'str'}, + 'usage_scenario': {'key': 'usageScenario', 'type': 'str'}, + 'domain': {'key': 'domain', 'type': 'str'}, + 'versions_count': {'key': 'versionsCount', 'type': 'int'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'str'}, + 'endpoints': {'key': 'endpoints', 'type': 'object'}, + 'endpoint_hits_count': {'key': 'endpointHitsCount', 'type': 'int'}, + 'active_version': {'key': 'activeVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationInfoResponse, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.culture = kwargs.get('culture', None) + self.usage_scenario = kwargs.get('usage_scenario', None) + self.domain = kwargs.get('domain', None) + self.versions_count = kwargs.get('versions_count', None) + self.created_date_time = kwargs.get('created_date_time', None) + self.endpoints = kwargs.get('endpoints', None) + self.endpoint_hits_count = kwargs.get('endpoint_hits_count', None) + self.active_version = kwargs.get('active_version', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_info_response_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_info_response_py3.py new file mode 100644 index 000000000000..0aa99a4257c2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_info_response_py3.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationInfoResponse(Model): + """Response containing the Application Info. + + :param id: The ID (GUID) of the application. + :type id: str + :param name: The name of the application. + :type name: str + :param description: The description of the application. + :type description: str + :param culture: The culture of the application. E.g.: en-us. + :type culture: str + :param usage_scenario: Defines the scenario for the new application. + Optional. E.g.: IoT. + :type usage_scenario: str + :param domain: The domain for the new application. Optional. E.g.: Comics. + :type domain: str + :param versions_count: Amount of model versions within the application. + :type versions_count: int + :param created_date_time: The version's creation timestamp. + :type created_date_time: str + :param endpoints: The Runtime endpoint URL for this model version. + :type endpoints: object + :param endpoint_hits_count: Number of calls made to this endpoint. + :type endpoint_hits_count: int + :param active_version: The version ID currently marked as active. + :type active_version: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'culture': {'key': 'culture', 'type': 'str'}, + 'usage_scenario': {'key': 'usageScenario', 'type': 'str'}, + 'domain': {'key': 'domain', 'type': 'str'}, + 'versions_count': {'key': 'versionsCount', 'type': 'int'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'str'}, + 'endpoints': {'key': 'endpoints', 'type': 'object'}, + 'endpoint_hits_count': {'key': 'endpointHitsCount', 'type': 'int'}, + 'active_version': {'key': 'activeVersion', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, description: str=None, culture: str=None, usage_scenario: str=None, domain: str=None, versions_count: int=None, created_date_time: str=None, endpoints=None, endpoint_hits_count: int=None, active_version: str=None, **kwargs) -> None: + super(ApplicationInfoResponse, self).__init__(**kwargs) + self.id = id + self.name = name + self.description = description + self.culture = culture + self.usage_scenario = usage_scenario + self.domain = domain + self.versions_count = versions_count + self.created_date_time = created_date_time + self.endpoints = endpoints + self.endpoint_hits_count = endpoint_hits_count + self.active_version = active_version diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_publish_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_publish_object.py new file mode 100644 index 000000000000..756b803da141 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_publish_object.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationPublishObject(Model): + """Object model for publishing a specific application version. + + :param version_id: The version ID to publish. + :type version_id: str + :param is_staging: Indicates if the staging slot should be used, instead + of the Production one. Default value: False . + :type is_staging: bool + :param region: The target region that the application is published to. + :type region: str + """ + + _attribute_map = { + 'version_id': {'key': 'versionId', 'type': 'str'}, + 'is_staging': {'key': 'isStaging', 'type': 'bool'}, + 'region': {'key': 'region', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationPublishObject, self).__init__(**kwargs) + self.version_id = kwargs.get('version_id', None) + self.is_staging = kwargs.get('is_staging', False) + self.region = kwargs.get('region', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_publish_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_publish_object_py3.py new file mode 100644 index 000000000000..9064fb0e6440 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_publish_object_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationPublishObject(Model): + """Object model for publishing a specific application version. + + :param version_id: The version ID to publish. + :type version_id: str + :param is_staging: Indicates if the staging slot should be used, instead + of the Production one. Default value: False . + :type is_staging: bool + :param region: The target region that the application is published to. + :type region: str + """ + + _attribute_map = { + 'version_id': {'key': 'versionId', 'type': 'str'}, + 'is_staging': {'key': 'isStaging', 'type': 'bool'}, + 'region': {'key': 'region', 'type': 'str'}, + } + + def __init__(self, *, version_id: str=None, is_staging: bool=False, region: str=None, **kwargs) -> None: + super(ApplicationPublishObject, self).__init__(**kwargs) + self.version_id = version_id + self.is_staging = is_staging + self.region = region diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_setting_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_setting_update_object.py new file mode 100644 index 000000000000..b5c46a828235 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_setting_update_object.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationSettingUpdateObject(Model): + """Object model for updating an application's settings. + + :param public: Setting your application as public allows other people to + use your application's endpoint using their own keys. + :type public: bool + """ + + _attribute_map = { + 'public': {'key': 'public', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ApplicationSettingUpdateObject, self).__init__(**kwargs) + self.public = kwargs.get('public', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_setting_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_setting_update_object_py3.py new file mode 100644 index 000000000000..c5bcc5001375 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_setting_update_object_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationSettingUpdateObject(Model): + """Object model for updating an application's settings. + + :param public: Setting your application as public allows other people to + use your application's endpoint using their own keys. + :type public: bool + """ + + _attribute_map = { + 'public': {'key': 'public', 'type': 'bool'}, + } + + def __init__(self, *, public: bool=None, **kwargs) -> None: + super(ApplicationSettingUpdateObject, self).__init__(**kwargs) + self.public = public diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_settings.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_settings.py new file mode 100644 index 000000000000..c43606461e68 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_settings.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationSettings(Model): + """The application settings. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The application ID. + :type id: str + :param is_public: Required. Setting your application as public allows + other people to use your application's endpoint using their own keys. + :type is_public: bool + """ + + _validation = { + 'id': {'required': True}, + 'is_public': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'is_public': {'key': 'public', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ApplicationSettings, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.is_public = kwargs.get('is_public', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_settings_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_settings_py3.py new file mode 100644 index 000000000000..4f83bc503dd5 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_settings_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationSettings(Model): + """The application settings. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The application ID. + :type id: str + :param is_public: Required. Setting your application as public allows + other people to use your application's endpoint using their own keys. + :type is_public: bool + """ + + _validation = { + 'id': {'required': True}, + 'is_public': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'is_public': {'key': 'public', 'type': 'bool'}, + } + + def __init__(self, *, id: str, is_public: bool, **kwargs) -> None: + super(ApplicationSettings, self).__init__(**kwargs) + self.id = id + self.is_public = is_public diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_update_object.py new file mode 100644 index 000000000000..db8c5ada5fb5 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_update_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationUpdateObject(Model): + """Object model for updating the name or description of an application. + + :param name: The application's new name. + :type name: str + :param description: The application's new description. + :type description: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationUpdateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_update_object_py3.py new file mode 100644 index 000000000000..bd238a339c57 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/application_update_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationUpdateObject(Model): + """Object model for updating the name or description of an application. + + :param name: The application's new name. + :type name: str + :param description: The application's new description. + :type description: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, description: str=None, **kwargs) -> None: + super(ApplicationUpdateObject, self).__init__(**kwargs) + self.name = name + self.description = description diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_culture.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_culture.py new file mode 100644 index 000000000000..6ff124d1249c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_culture.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableCulture(Model): + """Available culture for using in a new application. + + :param name: The language name. + :type name: str + :param code: The ISO value for the language. + :type code: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'code': {'key': 'code', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AvailableCulture, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.code = kwargs.get('code', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_culture_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_culture_py3.py new file mode 100644 index 000000000000..ee056cef8914 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_culture_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableCulture(Model): + """Available culture for using in a new application. + + :param name: The language name. + :type name: str + :param code: The ISO value for the language. + :type code: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'code': {'key': 'code', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, code: str=None, **kwargs) -> None: + super(AvailableCulture, self).__init__(**kwargs) + self.name = name + self.code = code diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_prebuilt_entity_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_prebuilt_entity_model.py new file mode 100644 index 000000000000..c3c709a4b7e8 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_prebuilt_entity_model.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailablePrebuiltEntityModel(Model): + """Available Prebuilt entity model for using in an application. + + :param name: The entity name. + :type name: str + :param description: The entity description and usage information. + :type description: str + :param examples: Usage examples. + :type examples: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'examples': {'key': 'examples', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AvailablePrebuiltEntityModel, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.examples = kwargs.get('examples', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_prebuilt_entity_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_prebuilt_entity_model_py3.py new file mode 100644 index 000000000000..214e0e781840 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/available_prebuilt_entity_model_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailablePrebuiltEntityModel(Model): + """Available Prebuilt entity model for using in an application. + + :param name: The entity name. + :type name: str + :param description: The entity description and usage information. + :type description: str + :param examples: Usage examples. + :type examples: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'examples': {'key': 'examples', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, description: str=None, examples: str=None, **kwargs) -> None: + super(AvailablePrebuiltEntityModel, self).__init__(**kwargs) + self.name = name + self.description = description + self.examples = examples diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/batch_label_example.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/batch_label_example.py new file mode 100644 index 000000000000..ef22dc4cc368 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/batch_label_example.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BatchLabelExample(Model): + """Response when adding a batch of labeled examples. + + :param value: + :type value: + ~azure.cognitiveservices.language.luis.authoring.models.LabelExampleResponse + :param has_error: + :type has_error: bool + :param error: + :type error: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'LabelExampleResponse'}, + 'has_error': {'key': 'hasError', 'type': 'bool'}, + 'error': {'key': 'error', 'type': 'OperationStatus'}, + } + + def __init__(self, **kwargs): + super(BatchLabelExample, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.has_error = kwargs.get('has_error', None) + self.error = kwargs.get('error', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/batch_label_example_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/batch_label_example_py3.py new file mode 100644 index 000000000000..aeaaa11185eb --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/batch_label_example_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BatchLabelExample(Model): + """Response when adding a batch of labeled examples. + + :param value: + :type value: + ~azure.cognitiveservices.language.luis.authoring.models.LabelExampleResponse + :param has_error: + :type has_error: bool + :param error: + :type error: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'LabelExampleResponse'}, + 'has_error': {'key': 'hasError', 'type': 'bool'}, + 'error': {'key': 'error', 'type': 'OperationStatus'}, + } + + def __init__(self, *, value=None, has_error: bool=None, error=None, **kwargs) -> None: + super(BatchLabelExample, self).__init__(**kwargs) + self.value = value + self.has_error = has_error + self.error = error diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/child_entity.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/child_entity.py new file mode 100644 index 000000000000..2140a8292d41 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/child_entity.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ChildEntity(Model): + """The base child entity type. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID (GUID) belonging to a child entity. + :type id: str + :param name: The name of a child entity. + :type name: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ChildEntity, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/child_entity_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/child_entity_py3.py new file mode 100644 index 000000000000..1eefcf49a464 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/child_entity_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ChildEntity(Model): + """The base child entity type. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID (GUID) belonging to a child entity. + :type id: str + :param name: The name of a child entity. + :type name: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, id: str, name: str=None, **kwargs) -> None: + super(ChildEntity, self).__init__(**kwargs) + self.id = id + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list.py new file mode 100644 index 000000000000..231dada76d24 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedList(Model): + """Exported Model - A Closed List. + + :param name: Name of the closed list feature. + :type name: str + :param sub_lists: Sublists for the feature. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.SubClosedList] + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'sub_lists': {'key': 'subLists', 'type': '[SubClosedList]'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ClosedList, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.sub_lists = kwargs.get('sub_lists', None) + self.roles = kwargs.get('roles', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_entity_extractor.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_entity_extractor.py new file mode 100644 index 000000000000..ee8ade0fdc75 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_entity_extractor.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedListEntityExtractor(Model): + """Closed List Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param sub_lists: List of sub-lists. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.SubClosedListResponse] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'sub_lists': {'key': 'subLists', 'type': '[SubClosedListResponse]'}, + } + + def __init__(self, **kwargs): + super(ClosedListEntityExtractor, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.roles = kwargs.get('roles', None) + self.sub_lists = kwargs.get('sub_lists', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_entity_extractor_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_entity_extractor_py3.py new file mode 100644 index 000000000000..42ced309b058 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_entity_extractor_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedListEntityExtractor(Model): + """Closed List Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param sub_lists: List of sub-lists. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.SubClosedListResponse] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'sub_lists': {'key': 'subLists', 'type': '[SubClosedListResponse]'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, sub_lists=None, **kwargs) -> None: + super(ClosedListEntityExtractor, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.roles = roles + self.sub_lists = sub_lists diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_create_object.py new file mode 100644 index 000000000000..d420e6791575 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_create_object.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedListModelCreateObject(Model): + """Object model for creating a closed list. + + :param sub_lists: Sublists for the feature. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + :param name: Name of the closed list feature. + :type name: str + """ + + _attribute_map = { + 'sub_lists': {'key': 'subLists', 'type': '[WordListObject]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ClosedListModelCreateObject, self).__init__(**kwargs) + self.sub_lists = kwargs.get('sub_lists', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_create_object_py3.py new file mode 100644 index 000000000000..bb71e1d40a46 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_create_object_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedListModelCreateObject(Model): + """Object model for creating a closed list. + + :param sub_lists: Sublists for the feature. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + :param name: Name of the closed list feature. + :type name: str + """ + + _attribute_map = { + 'sub_lists': {'key': 'subLists', 'type': '[WordListObject]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, sub_lists=None, name: str=None, **kwargs) -> None: + super(ClosedListModelCreateObject, self).__init__(**kwargs) + self.sub_lists = sub_lists + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_patch_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_patch_object.py new file mode 100644 index 000000000000..d77e774cdda8 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_patch_object.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedListModelPatchObject(Model): + """Object model for adding a batch of sublists to an existing closedlist. + + :param sub_lists: Sublists to add. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + """ + + _attribute_map = { + 'sub_lists': {'key': 'subLists', 'type': '[WordListObject]'}, + } + + def __init__(self, **kwargs): + super(ClosedListModelPatchObject, self).__init__(**kwargs) + self.sub_lists = kwargs.get('sub_lists', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_patch_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_patch_object_py3.py new file mode 100644 index 000000000000..cd1615f342bf --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_patch_object_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedListModelPatchObject(Model): + """Object model for adding a batch of sublists to an existing closedlist. + + :param sub_lists: Sublists to add. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + """ + + _attribute_map = { + 'sub_lists': {'key': 'subLists', 'type': '[WordListObject]'}, + } + + def __init__(self, *, sub_lists=None, **kwargs) -> None: + super(ClosedListModelPatchObject, self).__init__(**kwargs) + self.sub_lists = sub_lists diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_update_object.py new file mode 100644 index 000000000000..c9a72314d9bf --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_update_object.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedListModelUpdateObject(Model): + """Object model for updating a closed list. + + :param sub_lists: The new sublists for the feature. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + :param name: The new name of the closed list feature. + :type name: str + """ + + _attribute_map = { + 'sub_lists': {'key': 'subLists', 'type': '[WordListObject]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ClosedListModelUpdateObject, self).__init__(**kwargs) + self.sub_lists = kwargs.get('sub_lists', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_update_object_py3.py new file mode 100644 index 000000000000..8ca10a2d1d7d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_model_update_object_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedListModelUpdateObject(Model): + """Object model for updating a closed list. + + :param sub_lists: The new sublists for the feature. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + :param name: The new name of the closed list feature. + :type name: str + """ + + _attribute_map = { + 'sub_lists': {'key': 'subLists', 'type': '[WordListObject]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, sub_lists=None, name: str=None, **kwargs) -> None: + super(ClosedListModelUpdateObject, self).__init__(**kwargs) + self.sub_lists = sub_lists + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_py3.py new file mode 100644 index 000000000000..25c22b8b77ea --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/closed_list_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClosedList(Model): + """Exported Model - A Closed List. + + :param name: Name of the closed list feature. + :type name: str + :param sub_lists: Sublists for the feature. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.SubClosedList] + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'sub_lists': {'key': 'subLists', 'type': '[SubClosedList]'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, sub_lists=None, roles=None, **kwargs) -> None: + super(ClosedList, self).__init__(**kwargs) + self.name = name + self.sub_lists = sub_lists + self.roles = roles diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/collaborators_array.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/collaborators_array.py new file mode 100644 index 000000000000..c4088f683169 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/collaborators_array.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CollaboratorsArray(Model): + """CollaboratorsArray. + + :param emails: The email address of the users. + :type emails: list[str] + """ + + _attribute_map = { + 'emails': {'key': 'emails', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(CollaboratorsArray, self).__init__(**kwargs) + self.emails = kwargs.get('emails', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/collaborators_array_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/collaborators_array_py3.py new file mode 100644 index 000000000000..a8a2161ce6f2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/collaborators_array_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CollaboratorsArray(Model): + """CollaboratorsArray. + + :param emails: The email address of the users. + :type emails: list[str] + """ + + _attribute_map = { + 'emails': {'key': 'emails', 'type': '[str]'}, + } + + def __init__(self, *, emails=None, **kwargs) -> None: + super(CollaboratorsArray, self).__init__(**kwargs) + self.emails = emails diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_child_model_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_child_model_create_object.py new file mode 100644 index 000000000000..ec9cd03dbf68 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_child_model_create_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeChildModelCreateObject(Model): + """CompositeChildModelCreateObject. + + :param name: + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CompositeChildModelCreateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_child_model_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_child_model_create_object_py3.py new file mode 100644 index 000000000000..4cb9d165eb8a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_child_model_create_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeChildModelCreateObject(Model): + """CompositeChildModelCreateObject. + + :param name: + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(CompositeChildModelCreateObject, self).__init__(**kwargs) + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_extractor.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_extractor.py new file mode 100644 index 000000000000..1ca4c346d9d9 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_extractor.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeEntityExtractor(Model): + """A Composite Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param children: List of child entities. + :type children: + list[~azure.cognitiveservices.language.luis.authoring.models.ChildEntity] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'children': {'key': 'children', 'type': '[ChildEntity]'}, + } + + def __init__(self, **kwargs): + super(CompositeEntityExtractor, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.roles = kwargs.get('roles', None) + self.children = kwargs.get('children', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_extractor_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_extractor_py3.py new file mode 100644 index 000000000000..1b190fe165e2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_extractor_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeEntityExtractor(Model): + """A Composite Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param children: List of child entities. + :type children: + list[~azure.cognitiveservices.language.luis.authoring.models.ChildEntity] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'children': {'key': 'children', 'type': '[ChildEntity]'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, children=None, **kwargs) -> None: + super(CompositeEntityExtractor, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.roles = roles + self.children = children diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_model.py new file mode 100644 index 000000000000..39fdfc8fd2f4 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_model.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeEntityModel(Model): + """A composite entity. + + :param children: Child entities. + :type children: list[str] + :param name: Entity name. + :type name: str + """ + + _attribute_map = { + 'children': {'key': 'children', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CompositeEntityModel, self).__init__(**kwargs) + self.children = kwargs.get('children', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_model_py3.py new file mode 100644 index 000000000000..bf35849c3f7d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/composite_entity_model_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeEntityModel(Model): + """A composite entity. + + :param children: Child entities. + :type children: list[str] + :param name: Entity name. + :type name: str + """ + + _attribute_map = { + 'children': {'key': 'children', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, children=None, name: str=None, **kwargs) -> None: + super(CompositeEntityModel, self).__init__(**kwargs) + self.children = children + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/custom_prebuilt_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/custom_prebuilt_model.py new file mode 100644 index 000000000000..f19cb9c403dd --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/custom_prebuilt_model.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CustomPrebuiltModel(Model): + """A Custom Prebuilt model. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param custom_prebuilt_domain_name: The domain name. + :type custom_prebuilt_domain_name: str + :param custom_prebuilt_model_name: The intent name or entity name. + :type custom_prebuilt_model_name: str + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'custom_prebuilt_domain_name': {'key': 'customPrebuiltDomainName', 'type': 'str'}, + 'custom_prebuilt_model_name': {'key': 'customPrebuiltModelName', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + } + + def __init__(self, **kwargs): + super(CustomPrebuiltModel, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.custom_prebuilt_domain_name = kwargs.get('custom_prebuilt_domain_name', None) + self.custom_prebuilt_model_name = kwargs.get('custom_prebuilt_model_name', None) + self.roles = kwargs.get('roles', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/custom_prebuilt_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/custom_prebuilt_model_py3.py new file mode 100644 index 000000000000..c627964e95fc --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/custom_prebuilt_model_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CustomPrebuiltModel(Model): + """A Custom Prebuilt model. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param custom_prebuilt_domain_name: The domain name. + :type custom_prebuilt_domain_name: str + :param custom_prebuilt_model_name: The intent name or entity name. + :type custom_prebuilt_model_name: str + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'custom_prebuilt_domain_name': {'key': 'customPrebuiltDomainName', 'type': 'str'}, + 'custom_prebuilt_model_name': {'key': 'customPrebuiltModelName', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, custom_prebuilt_domain_name: str=None, custom_prebuilt_model_name: str=None, roles=None, **kwargs) -> None: + super(CustomPrebuiltModel, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.custom_prebuilt_domain_name = custom_prebuilt_domain_name + self.custom_prebuilt_model_name = custom_prebuilt_model_name + self.roles = roles diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/endpoint_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/endpoint_info.py new file mode 100644 index 000000000000..be6fd40e4f7d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/endpoint_info.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EndpointInfo(Model): + """The base class "ProductionOrStagingEndpointInfo" inherits from. + + :param version_id: The version ID to publish. + :type version_id: str + :param is_staging: Indicates if the staging slot should be used, instead + of the Production one. + :type is_staging: bool + :param endpoint_url: The Runtime endpoint URL for this model version. + :type endpoint_url: str + :param region: The target region that the application is published to. + :type region: str + :param assigned_endpoint_key: The endpoint key. + :type assigned_endpoint_key: str + :param endpoint_region: The endpoint's region. + :type endpoint_region: str + :param published_date_time: Timestamp when was last published. + :type published_date_time: str + """ + + _attribute_map = { + 'version_id': {'key': 'versionId', 'type': 'str'}, + 'is_staging': {'key': 'isStaging', 'type': 'bool'}, + 'endpoint_url': {'key': 'endpointUrl', 'type': 'str'}, + 'region': {'key': 'region', 'type': 'str'}, + 'assigned_endpoint_key': {'key': 'assignedEndpointKey', 'type': 'str'}, + 'endpoint_region': {'key': 'endpointRegion', 'type': 'str'}, + 'published_date_time': {'key': 'publishedDateTime', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EndpointInfo, self).__init__(**kwargs) + self.version_id = kwargs.get('version_id', None) + self.is_staging = kwargs.get('is_staging', None) + self.endpoint_url = kwargs.get('endpoint_url', None) + self.region = kwargs.get('region', None) + self.assigned_endpoint_key = kwargs.get('assigned_endpoint_key', None) + self.endpoint_region = kwargs.get('endpoint_region', None) + self.published_date_time = kwargs.get('published_date_time', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/endpoint_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/endpoint_info_py3.py new file mode 100644 index 000000000000..3e8f171a9067 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/endpoint_info_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EndpointInfo(Model): + """The base class "ProductionOrStagingEndpointInfo" inherits from. + + :param version_id: The version ID to publish. + :type version_id: str + :param is_staging: Indicates if the staging slot should be used, instead + of the Production one. + :type is_staging: bool + :param endpoint_url: The Runtime endpoint URL for this model version. + :type endpoint_url: str + :param region: The target region that the application is published to. + :type region: str + :param assigned_endpoint_key: The endpoint key. + :type assigned_endpoint_key: str + :param endpoint_region: The endpoint's region. + :type endpoint_region: str + :param published_date_time: Timestamp when was last published. + :type published_date_time: str + """ + + _attribute_map = { + 'version_id': {'key': 'versionId', 'type': 'str'}, + 'is_staging': {'key': 'isStaging', 'type': 'bool'}, + 'endpoint_url': {'key': 'endpointUrl', 'type': 'str'}, + 'region': {'key': 'region', 'type': 'str'}, + 'assigned_endpoint_key': {'key': 'assignedEndpointKey', 'type': 'str'}, + 'endpoint_region': {'key': 'endpointRegion', 'type': 'str'}, + 'published_date_time': {'key': 'publishedDateTime', 'type': 'str'}, + } + + def __init__(self, *, version_id: str=None, is_staging: bool=None, endpoint_url: str=None, region: str=None, assigned_endpoint_key: str=None, endpoint_region: str=None, published_date_time: str=None, **kwargs) -> None: + super(EndpointInfo, self).__init__(**kwargs) + self.version_id = version_id + self.is_staging = is_staging + self.endpoint_url = endpoint_url + self.region = region + self.assigned_endpoint_key = assigned_endpoint_key + self.endpoint_region = endpoint_region + self.published_date_time = published_date_time diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/enqueue_training_response.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/enqueue_training_response.py new file mode 100644 index 000000000000..6f23a205a9e1 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/enqueue_training_response.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EnqueueTrainingResponse(Model): + """Response model when requesting to train the model. + + :param status_id: The train request status ID. + :type status_id: int + :param status: Possible values include: 'Queued', 'InProgress', + 'UpToDate', 'Fail', 'Success' + :type status: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + """ + + _attribute_map = { + 'status_id': {'key': 'statusId', 'type': 'int'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EnqueueTrainingResponse, self).__init__(**kwargs) + self.status_id = kwargs.get('status_id', None) + self.status = kwargs.get('status', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/enqueue_training_response_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/enqueue_training_response_py3.py new file mode 100644 index 000000000000..c54730dcc01b --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/enqueue_training_response_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EnqueueTrainingResponse(Model): + """Response model when requesting to train the model. + + :param status_id: The train request status ID. + :type status_id: int + :param status: Possible values include: 'Queued', 'InProgress', + 'UpToDate', 'Fail', 'Success' + :type status: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + """ + + _attribute_map = { + 'status_id': {'key': 'statusId', 'type': 'int'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__(self, *, status_id: int=None, status=None, **kwargs) -> None: + super(EnqueueTrainingResponse, self).__init__(**kwargs) + self.status_id = status_id + self.status = status diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entities_suggestion_example.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entities_suggestion_example.py new file mode 100644 index 000000000000..df07486d1d28 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entities_suggestion_example.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntitiesSuggestionExample(Model): + """Predicted/suggested entity. + + :param text: The utterance. E.g.: what's the weather like in seattle? + :type text: str + :param tokenized_text: The utterance tokenized. + :type tokenized_text: list[str] + :param intent_predictions: Predicted/suggested intents. + :type intent_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentPrediction] + :param entity_predictions: Predicted/suggested entities. + :type entity_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityPrediction] + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'tokenized_text': {'key': 'tokenizedText', 'type': '[str]'}, + 'intent_predictions': {'key': 'intentPredictions', 'type': '[IntentPrediction]'}, + 'entity_predictions': {'key': 'entityPredictions', 'type': '[EntityPrediction]'}, + } + + def __init__(self, **kwargs): + super(EntitiesSuggestionExample, self).__init__(**kwargs) + self.text = kwargs.get('text', None) + self.tokenized_text = kwargs.get('tokenized_text', None) + self.intent_predictions = kwargs.get('intent_predictions', None) + self.entity_predictions = kwargs.get('entity_predictions', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entities_suggestion_example_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entities_suggestion_example_py3.py new file mode 100644 index 000000000000..948832a55291 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entities_suggestion_example_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntitiesSuggestionExample(Model): + """Predicted/suggested entity. + + :param text: The utterance. E.g.: what's the weather like in seattle? + :type text: str + :param tokenized_text: The utterance tokenized. + :type tokenized_text: list[str] + :param intent_predictions: Predicted/suggested intents. + :type intent_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentPrediction] + :param entity_predictions: Predicted/suggested entities. + :type entity_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityPrediction] + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'tokenized_text': {'key': 'tokenizedText', 'type': '[str]'}, + 'intent_predictions': {'key': 'intentPredictions', 'type': '[IntentPrediction]'}, + 'entity_predictions': {'key': 'entityPredictions', 'type': '[EntityPrediction]'}, + } + + def __init__(self, *, text: str=None, tokenized_text=None, intent_predictions=None, entity_predictions=None, **kwargs) -> None: + super(EntitiesSuggestionExample, self).__init__(**kwargs) + self.text = text + self.tokenized_text = tokenized_text + self.intent_predictions = intent_predictions + self.entity_predictions = entity_predictions diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_extractor.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_extractor.py new file mode 100644 index 000000000000..a822f047f14d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_extractor.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityExtractor(Model): + """Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param custom_prebuilt_domain_name: The domain name. + :type custom_prebuilt_domain_name: str + :param custom_prebuilt_model_name: The intent name or entity name. + :type custom_prebuilt_model_name: str + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'custom_prebuilt_domain_name': {'key': 'customPrebuiltDomainName', 'type': 'str'}, + 'custom_prebuilt_model_name': {'key': 'customPrebuiltModelName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EntityExtractor, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.roles = kwargs.get('roles', None) + self.custom_prebuilt_domain_name = kwargs.get('custom_prebuilt_domain_name', None) + self.custom_prebuilt_model_name = kwargs.get('custom_prebuilt_model_name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_extractor_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_extractor_py3.py new file mode 100644 index 000000000000..7dc4f3792f6d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_extractor_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityExtractor(Model): + """Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param custom_prebuilt_domain_name: The domain name. + :type custom_prebuilt_domain_name: str + :param custom_prebuilt_model_name: The intent name or entity name. + :type custom_prebuilt_model_name: str + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'custom_prebuilt_domain_name': {'key': 'customPrebuiltDomainName', 'type': 'str'}, + 'custom_prebuilt_model_name': {'key': 'customPrebuiltModelName', 'type': 'str'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, custom_prebuilt_domain_name: str=None, custom_prebuilt_model_name: str=None, **kwargs) -> None: + super(EntityExtractor, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.roles = roles + self.custom_prebuilt_domain_name = custom_prebuilt_domain_name + self.custom_prebuilt_model_name = custom_prebuilt_model_name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label.py new file mode 100644 index 000000000000..3a6418ff8ac5 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityLabel(Model): + """Defines the entity type and position of the extracted entity within the + example. + + All required parameters must be populated in order to send to Azure. + + :param entity_name: Required. The entity type. + :type entity_name: str + :param start_token_index: Required. The index within the utterance where + the extracted entity starts. + :type start_token_index: int + :param end_token_index: Required. The index within the utterance where the + extracted entity ends. + :type end_token_index: int + """ + + _validation = { + 'entity_name': {'required': True}, + 'start_token_index': {'required': True}, + 'end_token_index': {'required': True}, + } + + _attribute_map = { + 'entity_name': {'key': 'entityName', 'type': 'str'}, + 'start_token_index': {'key': 'startTokenIndex', 'type': 'int'}, + 'end_token_index': {'key': 'endTokenIndex', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(EntityLabel, self).__init__(**kwargs) + self.entity_name = kwargs.get('entity_name', None) + self.start_token_index = kwargs.get('start_token_index', None) + self.end_token_index = kwargs.get('end_token_index', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_object.py new file mode 100644 index 000000000000..f5cede6b7586 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_object.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityLabelObject(Model): + """Defines the entity type and position of the extracted entity within the + example. + + All required parameters must be populated in order to send to Azure. + + :param entity_name: Required. The entity type. + :type entity_name: str + :param start_char_index: Required. The index within the utterance where + the extracted entity starts. + :type start_char_index: int + :param end_char_index: Required. The index within the utterance where the + extracted entity ends. + :type end_char_index: int + """ + + _validation = { + 'entity_name': {'required': True}, + 'start_char_index': {'required': True}, + 'end_char_index': {'required': True}, + } + + _attribute_map = { + 'entity_name': {'key': 'entityName', 'type': 'str'}, + 'start_char_index': {'key': 'startCharIndex', 'type': 'int'}, + 'end_char_index': {'key': 'endCharIndex', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(EntityLabelObject, self).__init__(**kwargs) + self.entity_name = kwargs.get('entity_name', None) + self.start_char_index = kwargs.get('start_char_index', None) + self.end_char_index = kwargs.get('end_char_index', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_object_py3.py new file mode 100644 index 000000000000..c90e44f8dc7f --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_object_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityLabelObject(Model): + """Defines the entity type and position of the extracted entity within the + example. + + All required parameters must be populated in order to send to Azure. + + :param entity_name: Required. The entity type. + :type entity_name: str + :param start_char_index: Required. The index within the utterance where + the extracted entity starts. + :type start_char_index: int + :param end_char_index: Required. The index within the utterance where the + extracted entity ends. + :type end_char_index: int + """ + + _validation = { + 'entity_name': {'required': True}, + 'start_char_index': {'required': True}, + 'end_char_index': {'required': True}, + } + + _attribute_map = { + 'entity_name': {'key': 'entityName', 'type': 'str'}, + 'start_char_index': {'key': 'startCharIndex', 'type': 'int'}, + 'end_char_index': {'key': 'endCharIndex', 'type': 'int'}, + } + + def __init__(self, *, entity_name: str, start_char_index: int, end_char_index: int, **kwargs) -> None: + super(EntityLabelObject, self).__init__(**kwargs) + self.entity_name = entity_name + self.start_char_index = start_char_index + self.end_char_index = end_char_index diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_py3.py new file mode 100644 index 000000000000..06ccfb1c2bc2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_label_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityLabel(Model): + """Defines the entity type and position of the extracted entity within the + example. + + All required parameters must be populated in order to send to Azure. + + :param entity_name: Required. The entity type. + :type entity_name: str + :param start_token_index: Required. The index within the utterance where + the extracted entity starts. + :type start_token_index: int + :param end_token_index: Required. The index within the utterance where the + extracted entity ends. + :type end_token_index: int + """ + + _validation = { + 'entity_name': {'required': True}, + 'start_token_index': {'required': True}, + 'end_token_index': {'required': True}, + } + + _attribute_map = { + 'entity_name': {'key': 'entityName', 'type': 'str'}, + 'start_token_index': {'key': 'startTokenIndex', 'type': 'int'}, + 'end_token_index': {'key': 'endTokenIndex', 'type': 'int'}, + } + + def __init__(self, *, entity_name: str, start_token_index: int, end_token_index: int, **kwargs) -> None: + super(EntityLabel, self).__init__(**kwargs) + self.entity_name = entity_name + self.start_token_index = start_token_index + self.end_token_index = end_token_index diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_model_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_model_info.py new file mode 100644 index 000000000000..1cd4997cf66e --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_model_info.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .model_info import ModelInfo + + +class EntityModelInfo(ModelInfo): + """An Entity Extractor model info. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + } + + def __init__(self, **kwargs): + super(EntityModelInfo, self).__init__(**kwargs) + self.roles = kwargs.get('roles', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_model_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_model_info_py3.py new file mode 100644 index 000000000000..74eec6f0838a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_model_info_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .model_info_py3 import ModelInfo + + +class EntityModelInfo(ModelInfo): + """An Entity Extractor model info. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, **kwargs) -> None: + super(EntityModelInfo, self).__init__(id=id, name=name, type_id=type_id, readable_type=readable_type, **kwargs) + self.roles = roles diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_prediction.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_prediction.py new file mode 100644 index 000000000000..03c1a2e8b706 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_prediction.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityPrediction(Model): + """A suggested entity. + + All required parameters must be populated in order to send to Azure. + + :param entity_name: Required. The entity's name + :type entity_name: str + :param start_token_index: Required. The index within the utterance where + the extracted entity starts. + :type start_token_index: int + :param end_token_index: Required. The index within the utterance where the + extracted entity ends. + :type end_token_index: int + :param phrase: Required. The actual token(s) that comprise the entity. + :type phrase: str + """ + + _validation = { + 'entity_name': {'required': True}, + 'start_token_index': {'required': True}, + 'end_token_index': {'required': True}, + 'phrase': {'required': True}, + } + + _attribute_map = { + 'entity_name': {'key': 'entityName', 'type': 'str'}, + 'start_token_index': {'key': 'startTokenIndex', 'type': 'int'}, + 'end_token_index': {'key': 'endTokenIndex', 'type': 'int'}, + 'phrase': {'key': 'phrase', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EntityPrediction, self).__init__(**kwargs) + self.entity_name = kwargs.get('entity_name', None) + self.start_token_index = kwargs.get('start_token_index', None) + self.end_token_index = kwargs.get('end_token_index', None) + self.phrase = kwargs.get('phrase', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_prediction_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_prediction_py3.py new file mode 100644 index 000000000000..d6ad26e879a5 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_prediction_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityPrediction(Model): + """A suggested entity. + + All required parameters must be populated in order to send to Azure. + + :param entity_name: Required. The entity's name + :type entity_name: str + :param start_token_index: Required. The index within the utterance where + the extracted entity starts. + :type start_token_index: int + :param end_token_index: Required. The index within the utterance where the + extracted entity ends. + :type end_token_index: int + :param phrase: Required. The actual token(s) that comprise the entity. + :type phrase: str + """ + + _validation = { + 'entity_name': {'required': True}, + 'start_token_index': {'required': True}, + 'end_token_index': {'required': True}, + 'phrase': {'required': True}, + } + + _attribute_map = { + 'entity_name': {'key': 'entityName', 'type': 'str'}, + 'start_token_index': {'key': 'startTokenIndex', 'type': 'int'}, + 'end_token_index': {'key': 'endTokenIndex', 'type': 'int'}, + 'phrase': {'key': 'phrase', 'type': 'str'}, + } + + def __init__(self, *, entity_name: str, start_token_index: int, end_token_index: int, phrase: str, **kwargs) -> None: + super(EntityPrediction, self).__init__(**kwargs) + self.entity_name = entity_name + self.start_token_index = start_token_index + self.end_token_index = end_token_index + self.phrase = phrase diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role.py new file mode 100644 index 000000000000..c86de8f372e9 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityRole(Model): + """Entity extractor role. + + :param id: The entity role ID. + :type id: str + :param name: The entity role name. + :type name: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EntityRole, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_create_object.py new file mode 100644 index 000000000000..49fe083921e6 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_create_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityRoleCreateObject(Model): + """Object model for creating an entity role. + + :param name: The entity role name. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EntityRoleCreateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_create_object_py3.py new file mode 100644 index 000000000000..d5b4bfb86c1b --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_create_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityRoleCreateObject(Model): + """Object model for creating an entity role. + + :param name: The entity role name. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(EntityRoleCreateObject, self).__init__(**kwargs) + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_py3.py new file mode 100644 index 000000000000..ab1e5edbd89a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityRole(Model): + """Entity extractor role. + + :param id: The entity role ID. + :type id: str + :param name: The entity role name. + :type name: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, **kwargs) -> None: + super(EntityRole, self).__init__(**kwargs) + self.id = id + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_update_object.py new file mode 100644 index 000000000000..bd0dbcc44860 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_update_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityRoleUpdateObject(Model): + """Object model for updating an entity role. + + :param name: The entity role name. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EntityRoleUpdateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_update_object_py3.py new file mode 100644 index 000000000000..045fec47a726 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/entity_role_update_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityRoleUpdateObject(Model): + """Object model for updating an entity role. + + :param name: The entity role name. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(EntityRoleUpdateObject, self).__init__(**kwargs) + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/error_response.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/error_response.py new file mode 100644 index 000000000000..785a1f2dabc6 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/error_response.py @@ -0,0 +1,46 @@ +# 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 + + +class ErrorResponse(Model): + """Error response when invoking an operation on the API. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param error_type: + :type error_type: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'error_type': {'key': 'errorType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.error_type = kwargs.get('error_type', None) + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/error_response_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/error_response_py3.py new file mode 100644 index 000000000000..314e2c8196d4 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/error_response_py3.py @@ -0,0 +1,46 @@ +# 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 + + +class ErrorResponse(Model): + """Error response when invoking an operation on the API. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param error_type: + :type error_type: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'error_type': {'key': 'errorType', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, error_type: str=None, **kwargs) -> None: + super(ErrorResponse, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.error_type = error_type + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/example_label_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/example_label_object.py new file mode 100644 index 000000000000..a9a12a017d9c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/example_label_object.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExampleLabelObject(Model): + """A labeled example. + + :param text: The sample's utterance. + :type text: str + :param entity_labels: The idenfied entities within the utterance. + :type entity_labels: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityLabelObject] + :param intent_name: The idenfitied intent representing the utterance. + :type intent_name: str + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'entity_labels': {'key': 'entityLabels', 'type': '[EntityLabelObject]'}, + 'intent_name': {'key': 'intentName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExampleLabelObject, self).__init__(**kwargs) + self.text = kwargs.get('text', None) + self.entity_labels = kwargs.get('entity_labels', None) + self.intent_name = kwargs.get('intent_name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/example_label_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/example_label_object_py3.py new file mode 100644 index 000000000000..6587bf9cbb17 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/example_label_object_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExampleLabelObject(Model): + """A labeled example. + + :param text: The sample's utterance. + :type text: str + :param entity_labels: The idenfied entities within the utterance. + :type entity_labels: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityLabelObject] + :param intent_name: The idenfitied intent representing the utterance. + :type intent_name: str + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'entity_labels': {'key': 'entityLabels', 'type': '[EntityLabelObject]'}, + 'intent_name': {'key': 'intentName', 'type': 'str'}, + } + + def __init__(self, *, text: str=None, entity_labels=None, intent_name: str=None, **kwargs) -> None: + super(ExampleLabelObject, self).__init__(**kwargs) + self.text = text + self.entity_labels = entity_labels + self.intent_name = intent_name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item.py new file mode 100644 index 000000000000..86b51aaba7c7 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExplicitListItem(Model): + """Explicit list item. + + :param id: The explicit list item ID. + :type id: long + :param explicit_list_item: The explicit list item value. + :type explicit_list_item: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'long'}, + 'explicit_list_item': {'key': 'explicitListItem', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExplicitListItem, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.explicit_list_item = kwargs.get('explicit_list_item', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_create_object.py new file mode 100644 index 000000000000..3aeb5af59be9 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_create_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExplicitListItemCreateObject(Model): + """Object model for creating an explicit list item. + + :param explicit_list_item: The explicit list item. + :type explicit_list_item: str + """ + + _attribute_map = { + 'explicit_list_item': {'key': 'explicitListItem', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExplicitListItemCreateObject, self).__init__(**kwargs) + self.explicit_list_item = kwargs.get('explicit_list_item', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_create_object_py3.py new file mode 100644 index 000000000000..7e67471f71a2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_create_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExplicitListItemCreateObject(Model): + """Object model for creating an explicit list item. + + :param explicit_list_item: The explicit list item. + :type explicit_list_item: str + """ + + _attribute_map = { + 'explicit_list_item': {'key': 'explicitListItem', 'type': 'str'}, + } + + def __init__(self, *, explicit_list_item: str=None, **kwargs) -> None: + super(ExplicitListItemCreateObject, self).__init__(**kwargs) + self.explicit_list_item = explicit_list_item diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_py3.py new file mode 100644 index 000000000000..36b7652da4e2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExplicitListItem(Model): + """Explicit list item. + + :param id: The explicit list item ID. + :type id: long + :param explicit_list_item: The explicit list item value. + :type explicit_list_item: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'long'}, + 'explicit_list_item': {'key': 'explicitListItem', 'type': 'str'}, + } + + def __init__(self, *, id: int=None, explicit_list_item: str=None, **kwargs) -> None: + super(ExplicitListItem, self).__init__(**kwargs) + self.id = id + self.explicit_list_item = explicit_list_item diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_update_object.py new file mode 100644 index 000000000000..cff018deba5a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_update_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExplicitListItemUpdateObject(Model): + """Model object for updating an explicit list item. + + :param explicit_list_item: The explicit list item. + :type explicit_list_item: str + """ + + _attribute_map = { + 'explicit_list_item': {'key': 'explicitListItem', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExplicitListItemUpdateObject, self).__init__(**kwargs) + self.explicit_list_item = kwargs.get('explicit_list_item', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_update_object_py3.py new file mode 100644 index 000000000000..446cbfb32a55 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/explicit_list_item_update_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExplicitListItemUpdateObject(Model): + """Model object for updating an explicit list item. + + :param explicit_list_item: The explicit list item. + :type explicit_list_item: str + """ + + _attribute_map = { + 'explicit_list_item': {'key': 'explicitListItem', 'type': 'str'}, + } + + def __init__(self, *, explicit_list_item: str=None, **kwargs) -> None: + super(ExplicitListItemUpdateObject, self).__init__(**kwargs) + self.explicit_list_item = explicit_list_item diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/feature_info_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/feature_info_object.py new file mode 100644 index 000000000000..78364a28b6c7 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/feature_info_object.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FeatureInfoObject(Model): + """The base class Features-related response objects inherit from. + + :param id: A six-digit ID used for Features. + :type id: int + :param name: The name of the Feature. + :type name: str + :param is_active: Indicates if the feature is enabled. + :type is_active: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(FeatureInfoObject, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.is_active = kwargs.get('is_active', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/feature_info_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/feature_info_object_py3.py new file mode 100644 index 000000000000..59cdbb215924 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/feature_info_object_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FeatureInfoObject(Model): + """The base class Features-related response objects inherit from. + + :param id: A six-digit ID used for Features. + :type id: int + :param name: The name of the Feature. + :type name: str + :param is_active: Indicates if the feature is enabled. + :type is_active: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + } + + def __init__(self, *, id: int=None, name: str=None, is_active: bool=None, **kwargs) -> None: + super(FeatureInfoObject, self).__init__(**kwargs) + self.id = id + self.name = name + self.is_active = is_active diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/features_response_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/features_response_object.py new file mode 100644 index 000000000000..e4ec1fb9388a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/features_response_object.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FeaturesResponseObject(Model): + """Model Features, including Patterns and Phraselists. + + :param phraselist_features: + :type phraselist_features: + list[~azure.cognitiveservices.language.luis.authoring.models.PhraseListFeatureInfo] + :param pattern_features: + :type pattern_features: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternFeatureInfo] + """ + + _attribute_map = { + 'phraselist_features': {'key': 'phraselistFeatures', 'type': '[PhraseListFeatureInfo]'}, + 'pattern_features': {'key': 'patternFeatures', 'type': '[PatternFeatureInfo]'}, + } + + def __init__(self, **kwargs): + super(FeaturesResponseObject, self).__init__(**kwargs) + self.phraselist_features = kwargs.get('phraselist_features', None) + self.pattern_features = kwargs.get('pattern_features', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/features_response_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/features_response_object_py3.py new file mode 100644 index 000000000000..3331170ab36b --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/features_response_object_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FeaturesResponseObject(Model): + """Model Features, including Patterns and Phraselists. + + :param phraselist_features: + :type phraselist_features: + list[~azure.cognitiveservices.language.luis.authoring.models.PhraseListFeatureInfo] + :param pattern_features: + :type pattern_features: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternFeatureInfo] + """ + + _attribute_map = { + 'phraselist_features': {'key': 'phraselistFeatures', 'type': '[PhraseListFeatureInfo]'}, + 'pattern_features': {'key': 'patternFeatures', 'type': '[PatternFeatureInfo]'}, + } + + def __init__(self, *, phraselist_features=None, pattern_features=None, **kwargs) -> None: + super(FeaturesResponseObject, self).__init__(**kwargs) + self.phraselist_features = phraselist_features + self.pattern_features = pattern_features diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_entity.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_entity.py new file mode 100644 index 000000000000..87c2fbf3f79e --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_entity.py @@ -0,0 +1,49 @@ +# 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 .child_entity import ChildEntity + + +class HierarchicalChildEntity(ChildEntity): + """A Hierarchical Child Entity. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID (GUID) belonging to a child entity. + :type id: str + :param name: The name of a child entity. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Possible values include: 'Entity Extractor', + 'Hierarchical Entity Extractor', 'Hierarchical Child Entity Extractor', + 'Composite Entity Extractor', 'Closed List Entity Extractor', 'Prebuilt + Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity Extractor', + 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HierarchicalChildEntity, self).__init__(**kwargs) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_entity_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_entity_py3.py new file mode 100644 index 000000000000..ee754559c193 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_entity_py3.py @@ -0,0 +1,49 @@ +# 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 .child_entity_py3 import ChildEntity + + +class HierarchicalChildEntity(ChildEntity): + """A Hierarchical Child Entity. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID (GUID) belonging to a child entity. + :type id: str + :param name: The name of a child entity. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Possible values include: 'Entity Extractor', + 'Hierarchical Entity Extractor', 'Hierarchical Child Entity Extractor', + 'Composite Entity Extractor', 'Closed List Entity Extractor', 'Prebuilt + Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity Extractor', + 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + } + + def __init__(self, *, id: str, name: str=None, type_id: int=None, readable_type=None, **kwargs) -> None: + super(HierarchicalChildEntity, self).__init__(id=id, name=name, **kwargs) + self.type_id = type_id + self.readable_type = readable_type diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_create_object.py new file mode 100644 index 000000000000..e74c62bccbc3 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_create_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalChildModelCreateObject(Model): + """HierarchicalChildModelCreateObject. + + :param name: + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HierarchicalChildModelCreateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_create_object_py3.py new file mode 100644 index 000000000000..4622b25d155d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_create_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalChildModelCreateObject(Model): + """HierarchicalChildModelCreateObject. + + :param name: + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(HierarchicalChildModelCreateObject, self).__init__(**kwargs) + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_update_object.py new file mode 100644 index 000000000000..8920572a9a7d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_update_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalChildModelUpdateObject(Model): + """HierarchicalChildModelUpdateObject. + + :param name: + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HierarchicalChildModelUpdateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_update_object_py3.py new file mode 100644 index 000000000000..16c36f966841 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_child_model_update_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalChildModelUpdateObject(Model): + """HierarchicalChildModelUpdateObject. + + :param name: + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(HierarchicalChildModelUpdateObject, self).__init__(**kwargs) + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_extractor.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_extractor.py new file mode 100644 index 000000000000..a65f80e4ac0f --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_extractor.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalEntityExtractor(Model): + """Hierarchical Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param children: List of child entities. + :type children: + list[~azure.cognitiveservices.language.luis.authoring.models.ChildEntity] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'children': {'key': 'children', 'type': '[ChildEntity]'}, + } + + def __init__(self, **kwargs): + super(HierarchicalEntityExtractor, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.roles = kwargs.get('roles', None) + self.children = kwargs.get('children', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_extractor_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_extractor_py3.py new file mode 100644 index 000000000000..c5900ea9cfe1 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_extractor_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalEntityExtractor(Model): + """Hierarchical Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param children: List of child entities. + :type children: + list[~azure.cognitiveservices.language.luis.authoring.models.ChildEntity] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'children': {'key': 'children', 'type': '[ChildEntity]'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, children=None, **kwargs) -> None: + super(HierarchicalEntityExtractor, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.roles = roles + self.children = children diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_model.py new file mode 100644 index 000000000000..86ec000a0e78 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_model.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalEntityModel(Model): + """A Hierarchical Entity Extractor. + + :param children: Child entities. + :type children: list[str] + :param name: Entity name. + :type name: str + """ + + _attribute_map = { + 'children': {'key': 'children', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HierarchicalEntityModel, self).__init__(**kwargs) + self.children = kwargs.get('children', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_model_py3.py new file mode 100644 index 000000000000..2c82cfddc4ac --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_entity_model_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalEntityModel(Model): + """A Hierarchical Entity Extractor. + + :param children: Child entities. + :type children: list[str] + :param name: Entity name. + :type name: str + """ + + _attribute_map = { + 'children': {'key': 'children', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, children=None, name: str=None, **kwargs) -> None: + super(HierarchicalEntityModel, self).__init__(**kwargs) + self.children = children + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_model.py new file mode 100644 index 000000000000..14a4de9d3c34 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_model.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalModel(Model): + """HierarchicalModel. + + :param name: + :type name: str + :param children: + :type children: list[str] + :param inherits: + :type inherits: + ~azure.cognitiveservices.language.luis.authoring.models.PrebuiltDomainObject + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'children': {'key': 'children', 'type': '[str]'}, + 'inherits': {'key': 'inherits', 'type': 'PrebuiltDomainObject'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(HierarchicalModel, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.children = kwargs.get('children', None) + self.inherits = kwargs.get('inherits', None) + self.roles = kwargs.get('roles', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_model_py3.py new file mode 100644 index 000000000000..7794051ac244 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/hierarchical_model_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HierarchicalModel(Model): + """HierarchicalModel. + + :param name: + :type name: str + :param children: + :type children: list[str] + :param inherits: + :type inherits: + ~azure.cognitiveservices.language.luis.authoring.models.PrebuiltDomainObject + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'children': {'key': 'children', 'type': '[str]'}, + 'inherits': {'key': 'inherits', 'type': 'PrebuiltDomainObject'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, children=None, inherits=None, roles=None, **kwargs) -> None: + super(HierarchicalModel, self).__init__(**kwargs) + self.name = name + self.children = children + self.inherits = inherits + self.roles = roles diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_classifier.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_classifier.py new file mode 100644 index 000000000000..88650f92a6ee --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_classifier.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .model_info import ModelInfo + + +class IntentClassifier(ModelInfo): + """Intent Classifier. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param custom_prebuilt_domain_name: The domain name. + :type custom_prebuilt_domain_name: str + :param custom_prebuilt_model_name: The intent name or entity name. + :type custom_prebuilt_model_name: str + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'custom_prebuilt_domain_name': {'key': 'customPrebuiltDomainName', 'type': 'str'}, + 'custom_prebuilt_model_name': {'key': 'customPrebuiltModelName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IntentClassifier, self).__init__(**kwargs) + self.custom_prebuilt_domain_name = kwargs.get('custom_prebuilt_domain_name', None) + self.custom_prebuilt_model_name = kwargs.get('custom_prebuilt_model_name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_classifier_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_classifier_py3.py new file mode 100644 index 000000000000..91b05e3768d3 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_classifier_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .model_info_py3 import ModelInfo + + +class IntentClassifier(ModelInfo): + """Intent Classifier. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param custom_prebuilt_domain_name: The domain name. + :type custom_prebuilt_domain_name: str + :param custom_prebuilt_model_name: The intent name or entity name. + :type custom_prebuilt_model_name: str + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'custom_prebuilt_domain_name': {'key': 'customPrebuiltDomainName', 'type': 'str'}, + 'custom_prebuilt_model_name': {'key': 'customPrebuiltModelName', 'type': 'str'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, custom_prebuilt_domain_name: str=None, custom_prebuilt_model_name: str=None, **kwargs) -> None: + super(IntentClassifier, self).__init__(id=id, name=name, type_id=type_id, readable_type=readable_type, **kwargs) + self.custom_prebuilt_domain_name = custom_prebuilt_domain_name + self.custom_prebuilt_model_name = custom_prebuilt_model_name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_prediction.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_prediction.py new file mode 100644 index 000000000000..69e3ba809573 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_prediction.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IntentPrediction(Model): + """A suggested intent. + + :param name: The intent's name + :type name: str + :param score: The intent's score, based on the prediction model. + :type score: float + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'score': {'key': 'score', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(IntentPrediction, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.score = kwargs.get('score', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_prediction_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_prediction_py3.py new file mode 100644 index 000000000000..093dfe044da3 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intent_prediction_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IntentPrediction(Model): + """A suggested intent. + + :param name: The intent's name + :type name: str + :param score: The intent's score, based on the prediction model. + :type score: float + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'score': {'key': 'score', 'type': 'float'}, + } + + def __init__(self, *, name: str=None, score: float=None, **kwargs) -> None: + super(IntentPrediction, self).__init__(**kwargs) + self.name = name + self.score = score diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intents_suggestion_example.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intents_suggestion_example.py new file mode 100644 index 000000000000..c4ba30053ab9 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intents_suggestion_example.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IntentsSuggestionExample(Model): + """Predicted/suggested intent. + + :param text: The utterance. E.g.: what's the weather like in seattle? + :type text: str + :param tokenized_text: The utterance tokenized. + :type tokenized_text: list[str] + :param intent_predictions: Predicted/suggested intents. + :type intent_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentPrediction] + :param entity_predictions: Predicted/suggested entities. + :type entity_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityPrediction] + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'tokenized_text': {'key': 'tokenizedText', 'type': '[str]'}, + 'intent_predictions': {'key': 'intentPredictions', 'type': '[IntentPrediction]'}, + 'entity_predictions': {'key': 'entityPredictions', 'type': '[EntityPrediction]'}, + } + + def __init__(self, **kwargs): + super(IntentsSuggestionExample, self).__init__(**kwargs) + self.text = kwargs.get('text', None) + self.tokenized_text = kwargs.get('tokenized_text', None) + self.intent_predictions = kwargs.get('intent_predictions', None) + self.entity_predictions = kwargs.get('entity_predictions', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intents_suggestion_example_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intents_suggestion_example_py3.py new file mode 100644 index 000000000000..da45651d4f13 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/intents_suggestion_example_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IntentsSuggestionExample(Model): + """Predicted/suggested intent. + + :param text: The utterance. E.g.: what's the weather like in seattle? + :type text: str + :param tokenized_text: The utterance tokenized. + :type tokenized_text: list[str] + :param intent_predictions: Predicted/suggested intents. + :type intent_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentPrediction] + :param entity_predictions: Predicted/suggested entities. + :type entity_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityPrediction] + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'tokenized_text': {'key': 'tokenizedText', 'type': '[str]'}, + 'intent_predictions': {'key': 'intentPredictions', 'type': '[IntentPrediction]'}, + 'entity_predictions': {'key': 'entityPredictions', 'type': '[EntityPrediction]'}, + } + + def __init__(self, *, text: str=None, tokenized_text=None, intent_predictions=None, entity_predictions=None, **kwargs) -> None: + super(IntentsSuggestionExample, self).__init__(**kwargs) + self.text = text + self.tokenized_text = tokenized_text + self.intent_predictions = intent_predictions + self.entity_predictions = entity_predictions diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_entity.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_entity.py new file mode 100644 index 000000000000..a353cd21826d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_entity.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JSONEntity(Model): + """Exported Model - Extracted Entity from utterance. + + All required parameters must be populated in order to send to Azure. + + :param start_pos: Required. The index within the utterance where the + extracted entity starts. + :type start_pos: int + :param end_pos: Required. The index within the utterance where the + extracted entity ends. + :type end_pos: int + :param entity: Required. The entity name. + :type entity: str + """ + + _validation = { + 'start_pos': {'required': True}, + 'end_pos': {'required': True}, + 'entity': {'required': True}, + } + + _attribute_map = { + 'start_pos': {'key': 'startPos', 'type': 'int'}, + 'end_pos': {'key': 'endPos', 'type': 'int'}, + 'entity': {'key': 'entity', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(JSONEntity, self).__init__(**kwargs) + self.start_pos = kwargs.get('start_pos', None) + self.end_pos = kwargs.get('end_pos', None) + self.entity = kwargs.get('entity', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_entity_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_entity_py3.py new file mode 100644 index 000000000000..4602592ca541 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_entity_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JSONEntity(Model): + """Exported Model - Extracted Entity from utterance. + + All required parameters must be populated in order to send to Azure. + + :param start_pos: Required. The index within the utterance where the + extracted entity starts. + :type start_pos: int + :param end_pos: Required. The index within the utterance where the + extracted entity ends. + :type end_pos: int + :param entity: Required. The entity name. + :type entity: str + """ + + _validation = { + 'start_pos': {'required': True}, + 'end_pos': {'required': True}, + 'entity': {'required': True}, + } + + _attribute_map = { + 'start_pos': {'key': 'startPos', 'type': 'int'}, + 'end_pos': {'key': 'endPos', 'type': 'int'}, + 'entity': {'key': 'entity', 'type': 'str'}, + } + + def __init__(self, *, start_pos: int, end_pos: int, entity: str, **kwargs) -> None: + super(JSONEntity, self).__init__(**kwargs) + self.start_pos = start_pos + self.end_pos = end_pos + self.entity = entity diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_model_feature.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_model_feature.py new file mode 100644 index 000000000000..18c5fbba3192 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_model_feature.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JSONModelFeature(Model): + """Exported Model - Phraselist Model Feature. + + :param activated: Indicates if the feature is enabled. + :type activated: bool + :param name: The Phraselist name. + :type name: str + :param words: List of comma-separated phrases that represent the + Phraselist. + :type words: str + :param mode: An exchangeable phrase list feature are serves as single + feature to the LUIS underlying training algorithm. It is used as a lexicon + lookup feature where its value is 1 if the lexicon contains a given word + or 0 if it doesn’t. Think of an exchangeable as a synonyms list. A + non-exchangeable phrase list feature has all the phrases in the list serve + as separate features to the underlying training algorithm. So, if you your + phrase list feature contains 5 phrases, they will be mapped to 5 separate + features. You can think of the non-exchangeable phrase list feature as an + additional bag of words that you are willing to add to LUIS existing + vocabulary features. Think of a non-exchangeable as set of different + words. Default value is true. + :type mode: bool + """ + + _attribute_map = { + 'activated': {'key': 'activated', 'type': 'bool'}, + 'name': {'key': 'name', 'type': 'str'}, + 'words': {'key': 'words', 'type': 'str'}, + 'mode': {'key': 'mode', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(JSONModelFeature, self).__init__(**kwargs) + self.activated = kwargs.get('activated', None) + self.name = kwargs.get('name', None) + self.words = kwargs.get('words', None) + self.mode = kwargs.get('mode', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_model_feature_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_model_feature_py3.py new file mode 100644 index 000000000000..fc26406206e0 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_model_feature_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JSONModelFeature(Model): + """Exported Model - Phraselist Model Feature. + + :param activated: Indicates if the feature is enabled. + :type activated: bool + :param name: The Phraselist name. + :type name: str + :param words: List of comma-separated phrases that represent the + Phraselist. + :type words: str + :param mode: An exchangeable phrase list feature are serves as single + feature to the LUIS underlying training algorithm. It is used as a lexicon + lookup feature where its value is 1 if the lexicon contains a given word + or 0 if it doesn’t. Think of an exchangeable as a synonyms list. A + non-exchangeable phrase list feature has all the phrases in the list serve + as separate features to the underlying training algorithm. So, if you your + phrase list feature contains 5 phrases, they will be mapped to 5 separate + features. You can think of the non-exchangeable phrase list feature as an + additional bag of words that you are willing to add to LUIS existing + vocabulary features. Think of a non-exchangeable as set of different + words. Default value is true. + :type mode: bool + """ + + _attribute_map = { + 'activated': {'key': 'activated', 'type': 'bool'}, + 'name': {'key': 'name', 'type': 'str'}, + 'words': {'key': 'words', 'type': 'str'}, + 'mode': {'key': 'mode', 'type': 'bool'}, + } + + def __init__(self, *, activated: bool=None, name: str=None, words: str=None, mode: bool=None, **kwargs) -> None: + super(JSONModelFeature, self).__init__(**kwargs) + self.activated = activated + self.name = name + self.words = words + self.mode = mode diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_regex_feature.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_regex_feature.py new file mode 100644 index 000000000000..9b369d218e65 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_regex_feature.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JSONRegexFeature(Model): + """Exported Model - A Pattern feature. + + :param pattern: The Regular Expression to match. + :type pattern: str + :param activated: Indicates if the Pattern feature is enabled. + :type activated: bool + :param name: Name of the feature. + :type name: str + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'activated': {'key': 'activated', 'type': 'bool'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(JSONRegexFeature, self).__init__(**kwargs) + self.pattern = kwargs.get('pattern', None) + self.activated = kwargs.get('activated', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_regex_feature_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_regex_feature_py3.py new file mode 100644 index 000000000000..c26b497612a4 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_regex_feature_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JSONRegexFeature(Model): + """Exported Model - A Pattern feature. + + :param pattern: The Regular Expression to match. + :type pattern: str + :param activated: Indicates if the Pattern feature is enabled. + :type activated: bool + :param name: Name of the feature. + :type name: str + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'activated': {'key': 'activated', 'type': 'bool'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, pattern: str=None, activated: bool=None, name: str=None, **kwargs) -> None: + super(JSONRegexFeature, self).__init__(**kwargs) + self.pattern = pattern + self.activated = activated + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_utterance.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_utterance.py new file mode 100644 index 000000000000..df48abd671d4 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_utterance.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JSONUtterance(Model): + """Exported Model - Utterance that was used to train the model. + + :param text: The utterance. + :type text: str + :param intent: The matched intent. + :type intent: str + :param entities: The matched entities. + :type entities: + list[~azure.cognitiveservices.language.luis.authoring.models.JSONEntity] + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + 'entities': {'key': 'entities', 'type': '[JSONEntity]'}, + } + + def __init__(self, **kwargs): + super(JSONUtterance, self).__init__(**kwargs) + self.text = kwargs.get('text', None) + self.intent = kwargs.get('intent', None) + self.entities = kwargs.get('entities', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_utterance_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_utterance_py3.py new file mode 100644 index 000000000000..ca672844ba10 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/json_utterance_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JSONUtterance(Model): + """Exported Model - Utterance that was used to train the model. + + :param text: The utterance. + :type text: str + :param intent: The matched intent. + :type intent: str + :param entities: The matched entities. + :type entities: + list[~azure.cognitiveservices.language.luis.authoring.models.JSONEntity] + """ + + _attribute_map = { + 'text': {'key': 'text', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + 'entities': {'key': 'entities', 'type': '[JSONEntity]'}, + } + + def __init__(self, *, text: str=None, intent: str=None, entities=None, **kwargs) -> None: + super(JSONUtterance, self).__init__(**kwargs) + self.text = text + self.intent = intent + self.entities = entities diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_example_response.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_example_response.py new file mode 100644 index 000000000000..2bf52c53b59a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_example_response.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LabelExampleResponse(Model): + """Response when adding a labeled example. + + :param utterance_text: The sample's utterance. + :type utterance_text: str + :param example_id: The newly created sample ID. + :type example_id: int + """ + + _attribute_map = { + 'utterance_text': {'key': 'UtteranceText', 'type': 'str'}, + 'example_id': {'key': 'ExampleId', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(LabelExampleResponse, self).__init__(**kwargs) + self.utterance_text = kwargs.get('utterance_text', None) + self.example_id = kwargs.get('example_id', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_example_response_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_example_response_py3.py new file mode 100644 index 000000000000..a4a5280e1550 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_example_response_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LabelExampleResponse(Model): + """Response when adding a labeled example. + + :param utterance_text: The sample's utterance. + :type utterance_text: str + :param example_id: The newly created sample ID. + :type example_id: int + """ + + _attribute_map = { + 'utterance_text': {'key': 'UtteranceText', 'type': 'str'}, + 'example_id': {'key': 'ExampleId', 'type': 'int'}, + } + + def __init__(self, *, utterance_text: str=None, example_id: int=None, **kwargs) -> None: + super(LabelExampleResponse, self).__init__(**kwargs) + self.utterance_text = utterance_text + self.example_id = example_id diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_text_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_text_object.py new file mode 100644 index 000000000000..0c87d2f09353 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_text_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LabelTextObject(Model): + """An object containing the example's text. + + :param id: The ID of the Label. + :type id: int + :param text: The text of the label. + :type text: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'text': {'key': 'text', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LabelTextObject, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.text = kwargs.get('text', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_text_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_text_object_py3.py new file mode 100644 index 000000000000..598047479fb2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/label_text_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LabelTextObject(Model): + """An object containing the example's text. + + :param id: The ID of the Label. + :type id: int + :param text: The text of the label. + :type text: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'text': {'key': 'text', 'type': 'str'}, + } + + def __init__(self, *, id: int=None, text: str=None, **kwargs) -> None: + super(LabelTextObject, self).__init__(**kwargs) + self.id = id + self.text = text diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/labeled_utterance.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/labeled_utterance.py new file mode 100644 index 000000000000..ec41a2e0e16c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/labeled_utterance.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LabeledUtterance(Model): + """A prediction and label pair of an example. + + :param id: ID of Labeled Utterance. + :type id: int + :param text: The utterance. E.g.: what's the weather like in seattle? + :type text: str + :param tokenized_text: The utterance tokenized. + :type tokenized_text: list[str] + :param intent_label: The intent matching the example. + :type intent_label: str + :param entity_labels: The entities matching the example. + :type entity_labels: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityLabel] + :param intent_predictions: List of suggested intents. + :type intent_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentPrediction] + :param entity_predictions: List of suggested entities. + :type entity_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityPrediction] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'text': {'key': 'text', 'type': 'str'}, + 'tokenized_text': {'key': 'tokenizedText', 'type': '[str]'}, + 'intent_label': {'key': 'intentLabel', 'type': 'str'}, + 'entity_labels': {'key': 'entityLabels', 'type': '[EntityLabel]'}, + 'intent_predictions': {'key': 'intentPredictions', 'type': '[IntentPrediction]'}, + 'entity_predictions': {'key': 'entityPredictions', 'type': '[EntityPrediction]'}, + } + + def __init__(self, **kwargs): + super(LabeledUtterance, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.text = kwargs.get('text', None) + self.tokenized_text = kwargs.get('tokenized_text', None) + self.intent_label = kwargs.get('intent_label', None) + self.entity_labels = kwargs.get('entity_labels', None) + self.intent_predictions = kwargs.get('intent_predictions', None) + self.entity_predictions = kwargs.get('entity_predictions', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/labeled_utterance_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/labeled_utterance_py3.py new file mode 100644 index 000000000000..880eff8a2193 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/labeled_utterance_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LabeledUtterance(Model): + """A prediction and label pair of an example. + + :param id: ID of Labeled Utterance. + :type id: int + :param text: The utterance. E.g.: what's the weather like in seattle? + :type text: str + :param tokenized_text: The utterance tokenized. + :type tokenized_text: list[str] + :param intent_label: The intent matching the example. + :type intent_label: str + :param entity_labels: The entities matching the example. + :type entity_labels: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityLabel] + :param intent_predictions: List of suggested intents. + :type intent_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentPrediction] + :param entity_predictions: List of suggested entities. + :type entity_predictions: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityPrediction] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'text': {'key': 'text', 'type': 'str'}, + 'tokenized_text': {'key': 'tokenizedText', 'type': '[str]'}, + 'intent_label': {'key': 'intentLabel', 'type': 'str'}, + 'entity_labels': {'key': 'entityLabels', 'type': '[EntityLabel]'}, + 'intent_predictions': {'key': 'intentPredictions', 'type': '[IntentPrediction]'}, + 'entity_predictions': {'key': 'entityPredictions', 'type': '[EntityPrediction]'}, + } + + def __init__(self, *, id: int=None, text: str=None, tokenized_text=None, intent_label: str=None, entity_labels=None, intent_predictions=None, entity_predictions=None, **kwargs) -> None: + super(LabeledUtterance, self).__init__(**kwargs) + self.id = id + self.text = text + self.tokenized_text = tokenized_text + self.intent_label = intent_label + self.entity_labels = entity_labels + self.intent_predictions = intent_predictions + self.entity_predictions = entity_predictions diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_app.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_app.py new file mode 100644 index 000000000000..aa605a52e0a8 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_app.py @@ -0,0 +1,100 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LuisApp(Model): + """Exported Model - An exported LUIS Application. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param name: The name of the application. + :type name: str + :param version_id: The version ID of the application that was exported. + :type version_id: str + :param desc: The description of the application. + :type desc: str + :param culture: The culture of the application. E.g.: en-us. + :type culture: str + :param intents: List of intents. + :type intents: + list[~azure.cognitiveservices.language.luis.authoring.models.HierarchicalModel] + :param entities: List of entities. + :type entities: + list[~azure.cognitiveservices.language.luis.authoring.models.HierarchicalModel] + :param closed_lists: List of closed lists. + :type closed_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.ClosedList] + :param composites: List of composite entities. + :type composites: + list[~azure.cognitiveservices.language.luis.authoring.models.HierarchicalModel] + :param pattern_any_entities: List of Pattern.Any entities. + :type pattern_any_entities: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternAny] + :param regex_entities: List of regular expression entities. + :type regex_entities: + list[~azure.cognitiveservices.language.luis.authoring.models.RegexEntity] + :param prebuilt_entities: List of prebuilt entities. + :type prebuilt_entities: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltEntity] + :param regex_features: List of pattern features. + :type regex_features: + list[~azure.cognitiveservices.language.luis.authoring.models.JSONRegexFeature] + :param model_features: List of model features. + :type model_features: + list[~azure.cognitiveservices.language.luis.authoring.models.JSONModelFeature] + :param patterns: List of patterns. + :type patterns: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternRule] + :param utterances: List of sample utterances. + :type utterances: + list[~azure.cognitiveservices.language.luis.authoring.models.JSONUtterance] + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'name': {'key': 'name', 'type': 'str'}, + 'version_id': {'key': 'versionId', 'type': 'str'}, + 'desc': {'key': 'desc', 'type': 'str'}, + 'culture': {'key': 'culture', 'type': 'str'}, + 'intents': {'key': 'intents', 'type': '[HierarchicalModel]'}, + 'entities': {'key': 'entities', 'type': '[HierarchicalModel]'}, + 'closed_lists': {'key': 'closedLists', 'type': '[ClosedList]'}, + 'composites': {'key': 'composites', 'type': '[HierarchicalModel]'}, + 'pattern_any_entities': {'key': 'patternAnyEntities', 'type': '[PatternAny]'}, + 'regex_entities': {'key': 'regex_entities', 'type': '[RegexEntity]'}, + 'prebuilt_entities': {'key': 'prebuiltEntities', 'type': '[PrebuiltEntity]'}, + 'regex_features': {'key': 'regex_features', 'type': '[JSONRegexFeature]'}, + 'model_features': {'key': 'model_features', 'type': '[JSONModelFeature]'}, + 'patterns': {'key': 'patterns', 'type': '[PatternRule]'}, + 'utterances': {'key': 'utterances', 'type': '[JSONUtterance]'}, + } + + def __init__(self, **kwargs): + super(LuisApp, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.name = kwargs.get('name', None) + self.version_id = kwargs.get('version_id', None) + self.desc = kwargs.get('desc', None) + self.culture = kwargs.get('culture', None) + self.intents = kwargs.get('intents', None) + self.entities = kwargs.get('entities', None) + self.closed_lists = kwargs.get('closed_lists', None) + self.composites = kwargs.get('composites', None) + self.pattern_any_entities = kwargs.get('pattern_any_entities', None) + self.regex_entities = kwargs.get('regex_entities', None) + self.prebuilt_entities = kwargs.get('prebuilt_entities', None) + self.regex_features = kwargs.get('regex_features', None) + self.model_features = kwargs.get('model_features', None) + self.patterns = kwargs.get('patterns', None) + self.utterances = kwargs.get('utterances', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_app_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_app_py3.py new file mode 100644 index 000000000000..1f2004d20a2d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_app_py3.py @@ -0,0 +1,100 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LuisApp(Model): + """Exported Model - An exported LUIS Application. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param name: The name of the application. + :type name: str + :param version_id: The version ID of the application that was exported. + :type version_id: str + :param desc: The description of the application. + :type desc: str + :param culture: The culture of the application. E.g.: en-us. + :type culture: str + :param intents: List of intents. + :type intents: + list[~azure.cognitiveservices.language.luis.authoring.models.HierarchicalModel] + :param entities: List of entities. + :type entities: + list[~azure.cognitiveservices.language.luis.authoring.models.HierarchicalModel] + :param closed_lists: List of closed lists. + :type closed_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.ClosedList] + :param composites: List of composite entities. + :type composites: + list[~azure.cognitiveservices.language.luis.authoring.models.HierarchicalModel] + :param pattern_any_entities: List of Pattern.Any entities. + :type pattern_any_entities: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternAny] + :param regex_entities: List of regular expression entities. + :type regex_entities: + list[~azure.cognitiveservices.language.luis.authoring.models.RegexEntity] + :param prebuilt_entities: List of prebuilt entities. + :type prebuilt_entities: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltEntity] + :param regex_features: List of pattern features. + :type regex_features: + list[~azure.cognitiveservices.language.luis.authoring.models.JSONRegexFeature] + :param model_features: List of model features. + :type model_features: + list[~azure.cognitiveservices.language.luis.authoring.models.JSONModelFeature] + :param patterns: List of patterns. + :type patterns: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternRule] + :param utterances: List of sample utterances. + :type utterances: + list[~azure.cognitiveservices.language.luis.authoring.models.JSONUtterance] + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'name': {'key': 'name', 'type': 'str'}, + 'version_id': {'key': 'versionId', 'type': 'str'}, + 'desc': {'key': 'desc', 'type': 'str'}, + 'culture': {'key': 'culture', 'type': 'str'}, + 'intents': {'key': 'intents', 'type': '[HierarchicalModel]'}, + 'entities': {'key': 'entities', 'type': '[HierarchicalModel]'}, + 'closed_lists': {'key': 'closedLists', 'type': '[ClosedList]'}, + 'composites': {'key': 'composites', 'type': '[HierarchicalModel]'}, + 'pattern_any_entities': {'key': 'patternAnyEntities', 'type': '[PatternAny]'}, + 'regex_entities': {'key': 'regex_entities', 'type': '[RegexEntity]'}, + 'prebuilt_entities': {'key': 'prebuiltEntities', 'type': '[PrebuiltEntity]'}, + 'regex_features': {'key': 'regex_features', 'type': '[JSONRegexFeature]'}, + 'model_features': {'key': 'model_features', 'type': '[JSONModelFeature]'}, + 'patterns': {'key': 'patterns', 'type': '[PatternRule]'}, + 'utterances': {'key': 'utterances', 'type': '[JSONUtterance]'}, + } + + def __init__(self, *, additional_properties=None, name: str=None, version_id: str=None, desc: str=None, culture: str=None, intents=None, entities=None, closed_lists=None, composites=None, pattern_any_entities=None, regex_entities=None, prebuilt_entities=None, regex_features=None, model_features=None, patterns=None, utterances=None, **kwargs) -> None: + super(LuisApp, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.name = name + self.version_id = version_id + self.desc = desc + self.culture = culture + self.intents = intents + self.entities = entities + self.closed_lists = closed_lists + self.composites = composites + self.pattern_any_entities = pattern_any_entities + self.regex_entities = regex_entities + self.prebuilt_entities = prebuilt_entities + self.regex_features = regex_features + self.model_features = model_features + self.patterns = patterns + self.utterances = utterances diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_authoring_client_enums.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_authoring_client_enums.py new file mode 100644 index 000000000000..f85ad6da8c8e --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/luis_authoring_client_enums.py @@ -0,0 +1,25 @@ +# 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 enum import Enum + + +class TrainingStatus(str, Enum): + + needs_training = "NeedsTraining" + in_progress = "InProgress" + trained = "Trained" + + +class OperationStatusType(str, Enum): + + failed = "Failed" + success = "Success" diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_create_object.py new file mode 100644 index 000000000000..9b36ae03fc85 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_create_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelCreateObject(Model): + """Object model for creating a new entity extractor. + + :param name: Name of the new entity extractor. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ModelCreateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_create_object_py3.py new file mode 100644 index 000000000000..23de13f0ad29 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_create_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelCreateObject(Model): + """Object model for creating a new entity extractor. + + :param name: Name of the new entity extractor. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(ModelCreateObject, self).__init__(**kwargs) + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info.py new file mode 100644 index 000000000000..e0c343a9962a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelInfo(Model): + """Base type used in entity types. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ModelInfo, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_py3.py new file mode 100644 index 000000000000..1bad46dbe1ff --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelInfo(Model): + """Base type used in entity types. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, **kwargs) -> None: + super(ModelInfo, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_response.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_response.py new file mode 100644 index 000000000000..248f6804eb0c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_response.py @@ -0,0 +1,84 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelInfoResponse(Model): + """An application model info. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param children: List of child entities. + :type children: + list[~azure.cognitiveservices.language.luis.authoring.models.ChildEntity] + :param sub_lists: List of sub-lists. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.SubClosedListResponse] + :param custom_prebuilt_domain_name: The domain name. + :type custom_prebuilt_domain_name: str + :param custom_prebuilt_model_name: The intent name or entity name. + :type custom_prebuilt_model_name: str + :param regex_pattern: The Regex entity pattern. + :type regex_pattern: str + :param explicit_list: + :type explicit_list: + list[~azure.cognitiveservices.language.luis.authoring.models.ExplicitListItem] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'children': {'key': 'children', 'type': '[ChildEntity]'}, + 'sub_lists': {'key': 'subLists', 'type': '[SubClosedListResponse]'}, + 'custom_prebuilt_domain_name': {'key': 'customPrebuiltDomainName', 'type': 'str'}, + 'custom_prebuilt_model_name': {'key': 'customPrebuiltModelName', 'type': 'str'}, + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + 'explicit_list': {'key': 'explicitList', 'type': '[ExplicitListItem]'}, + } + + def __init__(self, **kwargs): + super(ModelInfoResponse, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.roles = kwargs.get('roles', None) + self.children = kwargs.get('children', None) + self.sub_lists = kwargs.get('sub_lists', None) + self.custom_prebuilt_domain_name = kwargs.get('custom_prebuilt_domain_name', None) + self.custom_prebuilt_model_name = kwargs.get('custom_prebuilt_model_name', None) + self.regex_pattern = kwargs.get('regex_pattern', None) + self.explicit_list = kwargs.get('explicit_list', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_response_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_response_py3.py new file mode 100644 index 000000000000..71c7a76372b8 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_info_response_py3.py @@ -0,0 +1,84 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelInfoResponse(Model): + """An application model info. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param children: List of child entities. + :type children: + list[~azure.cognitiveservices.language.luis.authoring.models.ChildEntity] + :param sub_lists: List of sub-lists. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.SubClosedListResponse] + :param custom_prebuilt_domain_name: The domain name. + :type custom_prebuilt_domain_name: str + :param custom_prebuilt_model_name: The intent name or entity name. + :type custom_prebuilt_model_name: str + :param regex_pattern: The Regex entity pattern. + :type regex_pattern: str + :param explicit_list: + :type explicit_list: + list[~azure.cognitiveservices.language.luis.authoring.models.ExplicitListItem] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'children': {'key': 'children', 'type': '[ChildEntity]'}, + 'sub_lists': {'key': 'subLists', 'type': '[SubClosedListResponse]'}, + 'custom_prebuilt_domain_name': {'key': 'customPrebuiltDomainName', 'type': 'str'}, + 'custom_prebuilt_model_name': {'key': 'customPrebuiltModelName', 'type': 'str'}, + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + 'explicit_list': {'key': 'explicitList', 'type': '[ExplicitListItem]'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, children=None, sub_lists=None, custom_prebuilt_domain_name: str=None, custom_prebuilt_model_name: str=None, regex_pattern: str=None, explicit_list=None, **kwargs) -> None: + super(ModelInfoResponse, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.roles = roles + self.children = children + self.sub_lists = sub_lists + self.custom_prebuilt_domain_name = custom_prebuilt_domain_name + self.custom_prebuilt_model_name = custom_prebuilt_model_name + self.regex_pattern = regex_pattern + self.explicit_list = explicit_list diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_details.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_details.py new file mode 100644 index 000000000000..427253b29bd2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_details.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelTrainingDetails(Model): + """Model Training Details. + + :param status_id: The train request status ID. + :type status_id: int + :param status: Possible values include: 'Queued', 'InProgress', + 'UpToDate', 'Fail', 'Success' + :type status: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param example_count: The count of examples used to train the model. + :type example_count: int + :param training_date_time: When the model was trained. + :type training_date_time: datetime + :param failure_reason: Reason for the training failure. + :type failure_reason: str + """ + + _attribute_map = { + 'status_id': {'key': 'statusId', 'type': 'int'}, + 'status': {'key': 'status', 'type': 'str'}, + 'example_count': {'key': 'exampleCount', 'type': 'int'}, + 'training_date_time': {'key': 'trainingDateTime', 'type': 'iso-8601'}, + 'failure_reason': {'key': 'failureReason', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ModelTrainingDetails, self).__init__(**kwargs) + self.status_id = kwargs.get('status_id', None) + self.status = kwargs.get('status', None) + self.example_count = kwargs.get('example_count', None) + self.training_date_time = kwargs.get('training_date_time', None) + self.failure_reason = kwargs.get('failure_reason', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_details_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_details_py3.py new file mode 100644 index 000000000000..c2543172aa13 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_details_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelTrainingDetails(Model): + """Model Training Details. + + :param status_id: The train request status ID. + :type status_id: int + :param status: Possible values include: 'Queued', 'InProgress', + 'UpToDate', 'Fail', 'Success' + :type status: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param example_count: The count of examples used to train the model. + :type example_count: int + :param training_date_time: When the model was trained. + :type training_date_time: datetime + :param failure_reason: Reason for the training failure. + :type failure_reason: str + """ + + _attribute_map = { + 'status_id': {'key': 'statusId', 'type': 'int'}, + 'status': {'key': 'status', 'type': 'str'}, + 'example_count': {'key': 'exampleCount', 'type': 'int'}, + 'training_date_time': {'key': 'trainingDateTime', 'type': 'iso-8601'}, + 'failure_reason': {'key': 'failureReason', 'type': 'str'}, + } + + def __init__(self, *, status_id: int=None, status=None, example_count: int=None, training_date_time=None, failure_reason: str=None, **kwargs) -> None: + super(ModelTrainingDetails, self).__init__(**kwargs) + self.status_id = status_id + self.status = status + self.example_count = example_count + self.training_date_time = training_date_time + self.failure_reason = failure_reason diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_info.py new file mode 100644 index 000000000000..d109eb91ee90 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_info.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelTrainingInfo(Model): + """Model Training Info. + + :param model_id: The ID (GUID) of the model. + :type model_id: str + :param details: + :type details: + ~azure.cognitiveservices.language.luis.authoring.models.ModelTrainingDetails + """ + + _attribute_map = { + 'model_id': {'key': 'modelId', 'type': 'str'}, + 'details': {'key': 'details', 'type': 'ModelTrainingDetails'}, + } + + def __init__(self, **kwargs): + super(ModelTrainingInfo, self).__init__(**kwargs) + self.model_id = kwargs.get('model_id', None) + self.details = kwargs.get('details', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_info_py3.py new file mode 100644 index 000000000000..8438b22feb5d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_training_info_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelTrainingInfo(Model): + """Model Training Info. + + :param model_id: The ID (GUID) of the model. + :type model_id: str + :param details: + :type details: + ~azure.cognitiveservices.language.luis.authoring.models.ModelTrainingDetails + """ + + _attribute_map = { + 'model_id': {'key': 'modelId', 'type': 'str'}, + 'details': {'key': 'details', 'type': 'ModelTrainingDetails'}, + } + + def __init__(self, *, model_id: str=None, details=None, **kwargs) -> None: + super(ModelTrainingInfo, self).__init__(**kwargs) + self.model_id = model_id + self.details = details diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_update_object.py new file mode 100644 index 000000000000..48a90ffdca19 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_update_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelUpdateObject(Model): + """Object model for updating an intent classifier. + + :param name: The entity's new name. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ModelUpdateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_update_object_py3.py new file mode 100644 index 000000000000..6cd1883b9785 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/model_update_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ModelUpdateObject(Model): + """Object model for updating an intent classifier. + + :param name: The entity's new name. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(ModelUpdateObject, self).__init__(**kwargs) + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_error.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_error.py new file mode 100644 index 000000000000..a462335ec3e6 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_error.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationError(Model): + """Operation error details when invoking an operation on the API. + + :param code: + :type code: str + :param message: + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_error_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_error_py3.py new file mode 100644 index 000000000000..54bb37d5858a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_error_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationError(Model): + """Operation error details when invoking an operation on the API. + + :param code: + :type code: str + :param 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(OperationError, self).__init__(**kwargs) + self.code = code + self.message = message diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_status.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_status.py new file mode 100644 index 000000000000..5b248a947a07 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_status.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationStatus(Model): + """Response of an Operation status. + + :param code: Status Code. Possible values include: 'Failed', 'FAILED', + 'Success' + :type code: str or + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatusType + :param message: Status details. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationStatus, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_status_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_status_py3.py new file mode 100644 index 000000000000..86eaec7a342b --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/operation_status_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationStatus(Model): + """Response of an Operation status. + + :param code: Status Code. Possible values include: 'Failed', 'FAILED', + 'Success' + :type code: str or + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatusType + :param message: Status details. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, code=None, message: str=None, **kwargs) -> None: + super(OperationStatus, self).__init__(**kwargs) + self.code = code + self.message = message diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any.py new file mode 100644 index 000000000000..1e387ac9266c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternAny(Model): + """Pattern.Any Entity Extractor. + + :param name: + :type name: str + :param explicit_list: + :type explicit_list: list[str] + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'explicit_list': {'key': 'explicitList', 'type': '[str]'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PatternAny, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.explicit_list = kwargs.get('explicit_list', None) + self.roles = kwargs.get('roles', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_entity_extractor.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_entity_extractor.py new file mode 100644 index 000000000000..02734b005e2f --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_entity_extractor.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternAnyEntityExtractor(Model): + """Pattern.Any Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param explicit_list: + :type explicit_list: + list[~azure.cognitiveservices.language.luis.authoring.models.ExplicitListItem] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'explicit_list': {'key': 'explicitList', 'type': '[ExplicitListItem]'}, + } + + def __init__(self, **kwargs): + super(PatternAnyEntityExtractor, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.roles = kwargs.get('roles', None) + self.explicit_list = kwargs.get('explicit_list', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_entity_extractor_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_entity_extractor_py3.py new file mode 100644 index 000000000000..d314c1efef96 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_entity_extractor_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternAnyEntityExtractor(Model): + """Pattern.Any Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param explicit_list: + :type explicit_list: + list[~azure.cognitiveservices.language.luis.authoring.models.ExplicitListItem] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'explicit_list': {'key': 'explicitList', 'type': '[ExplicitListItem]'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, explicit_list=None, **kwargs) -> None: + super(PatternAnyEntityExtractor, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.roles = roles + self.explicit_list = explicit_list diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_create_object.py new file mode 100644 index 000000000000..ffc81536f171 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_create_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternAnyModelCreateObject(Model): + """Model object for creating a Pattern.Any entity model. + + :param name: The model name. + :type name: str + :param explicit_list: The Pattern.Any explicit list. + :type explicit_list: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'explicit_list': {'key': 'explicitList', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PatternAnyModelCreateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.explicit_list = kwargs.get('explicit_list', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_create_object_py3.py new file mode 100644 index 000000000000..e05d2e78fced --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_create_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternAnyModelCreateObject(Model): + """Model object for creating a Pattern.Any entity model. + + :param name: The model name. + :type name: str + :param explicit_list: The Pattern.Any explicit list. + :type explicit_list: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'explicit_list': {'key': 'explicitList', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, explicit_list=None, **kwargs) -> None: + super(PatternAnyModelCreateObject, self).__init__(**kwargs) + self.name = name + self.explicit_list = explicit_list diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_update_object.py new file mode 100644 index 000000000000..5029778eec16 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_update_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternAnyModelUpdateObject(Model): + """Model object for updating a Pattern.Any entity model. + + :param name: The model name. + :type name: str + :param explicit_list: The Pattern.Any explicit list. + :type explicit_list: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'explicit_list': {'key': 'explicitList', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PatternAnyModelUpdateObject, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.explicit_list = kwargs.get('explicit_list', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_update_object_py3.py new file mode 100644 index 000000000000..5eebb8604e91 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_model_update_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternAnyModelUpdateObject(Model): + """Model object for updating a Pattern.Any entity model. + + :param name: The model name. + :type name: str + :param explicit_list: The Pattern.Any explicit list. + :type explicit_list: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'explicit_list': {'key': 'explicitList', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, explicit_list=None, **kwargs) -> None: + super(PatternAnyModelUpdateObject, self).__init__(**kwargs) + self.name = name + self.explicit_list = explicit_list diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_py3.py new file mode 100644 index 000000000000..4530b80f785a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_any_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternAny(Model): + """Pattern.Any Entity Extractor. + + :param name: + :type name: str + :param explicit_list: + :type explicit_list: list[str] + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'explicit_list': {'key': 'explicitList', 'type': '[str]'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, explicit_list=None, roles=None, **kwargs) -> None: + super(PatternAny, self).__init__(**kwargs) + self.name = name + self.explicit_list = explicit_list + self.roles = roles diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_create_object.py new file mode 100644 index 000000000000..bfe6cbd82afa --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_create_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternCreateObject(Model): + """Object model for creating a Pattern feature. + + :param pattern: The Regular Expression to match. + :type pattern: str + :param name: Name of the feature. + :type name: str + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PatternCreateObject, self).__init__(**kwargs) + self.pattern = kwargs.get('pattern', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_create_object_py3.py new file mode 100644 index 000000000000..e3a04cf8ae1f --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_create_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternCreateObject(Model): + """Object model for creating a Pattern feature. + + :param pattern: The Regular Expression to match. + :type pattern: str + :param name: Name of the feature. + :type name: str + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, pattern: str=None, name: str=None, **kwargs) -> None: + super(PatternCreateObject, self).__init__(**kwargs) + self.pattern = pattern + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_feature_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_feature_info.py new file mode 100644 index 000000000000..933ca9fe36d7 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_feature_info.py @@ -0,0 +1,37 @@ +# 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 .feature_info_object import FeatureInfoObject + + +class PatternFeatureInfo(FeatureInfoObject): + """Pattern feature. + + :param id: A six-digit ID used for Features. + :type id: int + :param name: The name of the Feature. + :type name: str + :param is_active: Indicates if the feature is enabled. + :type is_active: bool + :param pattern: The Regular Expression to match. + :type pattern: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + 'pattern': {'key': 'pattern', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PatternFeatureInfo, self).__init__(**kwargs) + self.pattern = kwargs.get('pattern', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_feature_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_feature_info_py3.py new file mode 100644 index 000000000000..a4b40c91a2a5 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_feature_info_py3.py @@ -0,0 +1,37 @@ +# 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 .feature_info_object_py3 import FeatureInfoObject + + +class PatternFeatureInfo(FeatureInfoObject): + """Pattern feature. + + :param id: A six-digit ID used for Features. + :type id: int + :param name: The name of the Feature. + :type name: str + :param is_active: Indicates if the feature is enabled. + :type is_active: bool + :param pattern: The Regular Expression to match. + :type pattern: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + 'pattern': {'key': 'pattern', 'type': 'str'}, + } + + def __init__(self, *, id: int=None, name: str=None, is_active: bool=None, pattern: str=None, **kwargs) -> None: + super(PatternFeatureInfo, self).__init__(id=id, name=name, is_active=is_active, **kwargs) + self.pattern = pattern diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule.py new file mode 100644 index 000000000000..e33c0d6f09f2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternRule(Model): + """Pattern. + + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name where the pattern belongs to. + :type intent: str + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PatternRule, self).__init__(**kwargs) + self.pattern = kwargs.get('pattern', None) + self.intent = kwargs.get('intent', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_create_object.py new file mode 100644 index 000000000000..5a77116ae668 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_create_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternRuleCreateObject(Model): + """Object model for creating a pattern. + + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name which the pattern belongs to. + :type intent: str + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PatternRuleCreateObject, self).__init__(**kwargs) + self.pattern = kwargs.get('pattern', None) + self.intent = kwargs.get('intent', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_create_object_py3.py new file mode 100644 index 000000000000..9e8ca81b8b09 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_create_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternRuleCreateObject(Model): + """Object model for creating a pattern. + + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name which the pattern belongs to. + :type intent: str + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + } + + def __init__(self, *, pattern: str=None, intent: str=None, **kwargs) -> None: + super(PatternRuleCreateObject, self).__init__(**kwargs) + self.pattern = pattern + self.intent = intent diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_info.py new file mode 100644 index 000000000000..6f0d52b08f30 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_info.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternRuleInfo(Model): + """Pattern rule. + + :param id: The pattern ID. + :type id: str + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name where the pattern belongs to. + :type intent: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PatternRuleInfo, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.pattern = kwargs.get('pattern', None) + self.intent = kwargs.get('intent', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_info_py3.py new file mode 100644 index 000000000000..5596d02b5b2a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_info_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternRuleInfo(Model): + """Pattern rule. + + :param id: The pattern ID. + :type id: str + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name where the pattern belongs to. + :type intent: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, pattern: str=None, intent: str=None, **kwargs) -> None: + super(PatternRuleInfo, self).__init__(**kwargs) + self.id = id + self.pattern = pattern + self.intent = intent diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_py3.py new file mode 100644 index 000000000000..d6cd7b10b903 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternRule(Model): + """Pattern. + + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name where the pattern belongs to. + :type intent: str + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + } + + def __init__(self, *, pattern: str=None, intent: str=None, **kwargs) -> None: + super(PatternRule, self).__init__(**kwargs) + self.pattern = pattern + self.intent = intent diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_update_object.py new file mode 100644 index 000000000000..ed8250d67e3d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_update_object.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternRuleUpdateObject(Model): + """Object model for updating a pattern. + + :param id: The pattern ID. + :type id: str + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name which the pattern belongs to. + :type intent: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PatternRuleUpdateObject, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.pattern = kwargs.get('pattern', None) + self.intent = kwargs.get('intent', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_update_object_py3.py new file mode 100644 index 000000000000..c29a7d6f87f6 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_rule_update_object_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternRuleUpdateObject(Model): + """Object model for updating a pattern. + + :param id: The pattern ID. + :type id: str + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name which the pattern belongs to. + :type intent: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'intent': {'key': 'intent', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, pattern: str=None, intent: str=None, **kwargs) -> None: + super(PatternRuleUpdateObject, self).__init__(**kwargs) + self.id = id + self.pattern = pattern + self.intent = intent diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_update_object.py new file mode 100644 index 000000000000..bc6aceea21cd --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_update_object.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternUpdateObject(Model): + """Object model for updating an existing Pattern feature. + + :param pattern: The Regular Expression to match. + :type pattern: str + :param name: Name of the feature. + :type name: str + :param is_active: Indicates if the Pattern feature is enabled. Default + value: True . + :type is_active: bool + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PatternUpdateObject, self).__init__(**kwargs) + self.pattern = kwargs.get('pattern', None) + self.name = kwargs.get('name', None) + self.is_active = kwargs.get('is_active', True) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_update_object_py3.py new file mode 100644 index 000000000000..c859ac4b8ef4 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/pattern_update_object_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PatternUpdateObject(Model): + """Object model for updating an existing Pattern feature. + + :param pattern: The Regular Expression to match. + :type pattern: str + :param name: Name of the feature. + :type name: str + :param is_active: Indicates if the Pattern feature is enabled. Default + value: True . + :type is_active: bool + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + } + + def __init__(self, *, pattern: str=None, name: str=None, is_active: bool=True, **kwargs) -> None: + super(PatternUpdateObject, self).__init__(**kwargs) + self.pattern = pattern + self.name = name + self.is_active = is_active diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/personal_assistants_response.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/personal_assistants_response.py new file mode 100644 index 000000000000..87df1ac3f3a4 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/personal_assistants_response.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PersonalAssistantsResponse(Model): + """Response containing user's endpoint keys and the endpoint URLs of the + prebuilt Cortana applications. + + :param endpoint_keys: + :type endpoint_keys: list[str] + :param endpoint_urls: + :type endpoint_urls: dict[str, str] + """ + + _attribute_map = { + 'endpoint_keys': {'key': 'endpointKeys', 'type': '[str]'}, + 'endpoint_urls': {'key': 'endpointUrls', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(PersonalAssistantsResponse, self).__init__(**kwargs) + self.endpoint_keys = kwargs.get('endpoint_keys', None) + self.endpoint_urls = kwargs.get('endpoint_urls', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/personal_assistants_response_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/personal_assistants_response_py3.py new file mode 100644 index 000000000000..1305c23bd049 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/personal_assistants_response_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PersonalAssistantsResponse(Model): + """Response containing user's endpoint keys and the endpoint URLs of the + prebuilt Cortana applications. + + :param endpoint_keys: + :type endpoint_keys: list[str] + :param endpoint_urls: + :type endpoint_urls: dict[str, str] + """ + + _attribute_map = { + 'endpoint_keys': {'key': 'endpointKeys', 'type': '[str]'}, + 'endpoint_urls': {'key': 'endpointUrls', 'type': '{str}'}, + } + + def __init__(self, *, endpoint_keys=None, endpoint_urls=None, **kwargs) -> None: + super(PersonalAssistantsResponse, self).__init__(**kwargs) + self.endpoint_keys = endpoint_keys + self.endpoint_urls = endpoint_urls diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phrase_list_feature_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phrase_list_feature_info.py new file mode 100644 index 000000000000..70b7793fd27e --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phrase_list_feature_info.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .feature_info_object import FeatureInfoObject + + +class PhraseListFeatureInfo(FeatureInfoObject): + """Phraselist Feature. + + :param id: A six-digit ID used for Features. + :type id: int + :param name: The name of the Feature. + :type name: str + :param is_active: Indicates if the feature is enabled. + :type is_active: bool + :param phrases: A list of comma-separated values. + :type phrases: str + :param is_exchangeable: An exchangeable phrase list feature are serves as + single feature to the LUIS underlying training algorithm. It is used as a + lexicon lookup feature where its value is 1 if the lexicon contains a + given word or 0 if it doesn’t. Think of an exchangeable as a synonyms + list. A non-exchangeable phrase list feature has all the phrases in the + list serve as separate features to the underlying training algorithm. So, + if you your phrase list feature contains 5 phrases, they will be mapped to + 5 separate features. You can think of the non-exchangeable phrase list + feature as an additional bag of words that you are willing to add to LUIS + existing vocabulary features. Think of a non-exchangeable as set of + different words. Default value is true. + :type is_exchangeable: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + 'phrases': {'key': 'phrases', 'type': 'str'}, + 'is_exchangeable': {'key': 'isExchangeable', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PhraseListFeatureInfo, self).__init__(**kwargs) + self.phrases = kwargs.get('phrases', None) + self.is_exchangeable = kwargs.get('is_exchangeable', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phrase_list_feature_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phrase_list_feature_info_py3.py new file mode 100644 index 000000000000..46fbabbaade1 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phrase_list_feature_info_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .feature_info_object_py3 import FeatureInfoObject + + +class PhraseListFeatureInfo(FeatureInfoObject): + """Phraselist Feature. + + :param id: A six-digit ID used for Features. + :type id: int + :param name: The name of the Feature. + :type name: str + :param is_active: Indicates if the feature is enabled. + :type is_active: bool + :param phrases: A list of comma-separated values. + :type phrases: str + :param is_exchangeable: An exchangeable phrase list feature are serves as + single feature to the LUIS underlying training algorithm. It is used as a + lexicon lookup feature where its value is 1 if the lexicon contains a + given word or 0 if it doesn’t. Think of an exchangeable as a synonyms + list. A non-exchangeable phrase list feature has all the phrases in the + list serve as separate features to the underlying training algorithm. So, + if you your phrase list feature contains 5 phrases, they will be mapped to + 5 separate features. You can think of the non-exchangeable phrase list + feature as an additional bag of words that you are willing to add to LUIS + existing vocabulary features. Think of a non-exchangeable as set of + different words. Default value is true. + :type is_exchangeable: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + 'phrases': {'key': 'phrases', 'type': 'str'}, + 'is_exchangeable': {'key': 'isExchangeable', 'type': 'bool'}, + } + + def __init__(self, *, id: int=None, name: str=None, is_active: bool=None, phrases: str=None, is_exchangeable: bool=None, **kwargs) -> None: + super(PhraseListFeatureInfo, self).__init__(id=id, name=name, is_active=is_active, **kwargs) + self.phrases = phrases + self.is_exchangeable = is_exchangeable diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_create_object.py new file mode 100644 index 000000000000..2b6c02589ace --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_create_object.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PhraselistCreateObject(Model): + """Object model for creating a phraselist model. + + :param phrases: List of comma-separated phrases that represent the + Phraselist. + :type phrases: str + :param name: The Phraselist name. + :type name: str + :param is_exchangeable: An exchangeable phrase list feature are serves as + single feature to the LUIS underlying training algorithm. It is used as a + lexicon lookup feature where its value is 1 if the lexicon contains a + given word or 0 if it doesn’t. Think of an exchangeable as a synonyms + list. A non-exchangeable phrase list feature has all the phrases in the + list serve as separate features to the underlying training algorithm. So, + if you your phrase list feature contains 5 phrases, they will be mapped to + 5 separate features. You can think of the non-exchangeable phrase list + feature as an additional bag of words that you are willing to add to LUIS + existing vocabulary features. Think of a non-exchangeable as set of + different words. Default value is true. Default value: True . + :type is_exchangeable: bool + """ + + _attribute_map = { + 'phrases': {'key': 'phrases', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_exchangeable': {'key': 'isExchangeable', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PhraselistCreateObject, self).__init__(**kwargs) + self.phrases = kwargs.get('phrases', None) + self.name = kwargs.get('name', None) + self.is_exchangeable = kwargs.get('is_exchangeable', True) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_create_object_py3.py new file mode 100644 index 000000000000..d11a160ab5cf --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_create_object_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PhraselistCreateObject(Model): + """Object model for creating a phraselist model. + + :param phrases: List of comma-separated phrases that represent the + Phraselist. + :type phrases: str + :param name: The Phraselist name. + :type name: str + :param is_exchangeable: An exchangeable phrase list feature are serves as + single feature to the LUIS underlying training algorithm. It is used as a + lexicon lookup feature where its value is 1 if the lexicon contains a + given word or 0 if it doesn’t. Think of an exchangeable as a synonyms + list. A non-exchangeable phrase list feature has all the phrases in the + list serve as separate features to the underlying training algorithm. So, + if you your phrase list feature contains 5 phrases, they will be mapped to + 5 separate features. You can think of the non-exchangeable phrase list + feature as an additional bag of words that you are willing to add to LUIS + existing vocabulary features. Think of a non-exchangeable as set of + different words. Default value is true. Default value: True . + :type is_exchangeable: bool + """ + + _attribute_map = { + 'phrases': {'key': 'phrases', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_exchangeable': {'key': 'isExchangeable', 'type': 'bool'}, + } + + def __init__(self, *, phrases: str=None, name: str=None, is_exchangeable: bool=True, **kwargs) -> None: + super(PhraselistCreateObject, self).__init__(**kwargs) + self.phrases = phrases + self.name = name + self.is_exchangeable = is_exchangeable diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_update_object.py new file mode 100644 index 000000000000..1868d7d5727e --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_update_object.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PhraselistUpdateObject(Model): + """Object model for updating a Phraselist. + + :param phrases: List of comma-separated phrases that represent the + Phraselist. + :type phrases: str + :param name: The Phraselist name. + :type name: str + :param is_active: Indicates if the Phraselist is enabled. Default value: + True . + :type is_active: bool + :param is_exchangeable: An exchangeable phrase list feature are serves as + single feature to the LUIS underlying training algorithm. It is used as a + lexicon lookup feature where its value is 1 if the lexicon contains a + given word or 0 if it doesn’t. Think of an exchangeable as a synonyms + list. A non-exchangeable phrase list feature has all the phrases in the + list serve as separate features to the underlying training algorithm. So, + if you your phrase list feature contains 5 phrases, they will be mapped to + 5 separate features. You can think of the non-exchangeable phrase list + feature as an additional bag of words that you are willing to add to LUIS + existing vocabulary features. Think of a non-exchangeable as set of + different words. Default value is true. Default value: True . + :type is_exchangeable: bool + """ + + _attribute_map = { + 'phrases': {'key': 'phrases', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + 'is_exchangeable': {'key': 'isExchangeable', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PhraselistUpdateObject, self).__init__(**kwargs) + self.phrases = kwargs.get('phrases', None) + self.name = kwargs.get('name', None) + self.is_active = kwargs.get('is_active', True) + self.is_exchangeable = kwargs.get('is_exchangeable', True) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_update_object_py3.py new file mode 100644 index 000000000000..9b8229f22ea1 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/phraselist_update_object_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PhraselistUpdateObject(Model): + """Object model for updating a Phraselist. + + :param phrases: List of comma-separated phrases that represent the + Phraselist. + :type phrases: str + :param name: The Phraselist name. + :type name: str + :param is_active: Indicates if the Phraselist is enabled. Default value: + True . + :type is_active: bool + :param is_exchangeable: An exchangeable phrase list feature are serves as + single feature to the LUIS underlying training algorithm. It is used as a + lexicon lookup feature where its value is 1 if the lexicon contains a + given word or 0 if it doesn’t. Think of an exchangeable as a synonyms + list. A non-exchangeable phrase list feature has all the phrases in the + list serve as separate features to the underlying training algorithm. So, + if you your phrase list feature contains 5 phrases, they will be mapped to + 5 separate features. You can think of the non-exchangeable phrase list + feature as an additional bag of words that you are willing to add to LUIS + existing vocabulary features. Think of a non-exchangeable as set of + different words. Default value is true. Default value: True . + :type is_exchangeable: bool + """ + + _attribute_map = { + 'phrases': {'key': 'phrases', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_active': {'key': 'isActive', 'type': 'bool'}, + 'is_exchangeable': {'key': 'isExchangeable', 'type': 'bool'}, + } + + def __init__(self, *, phrases: str=None, name: str=None, is_active: bool=True, is_exchangeable: bool=True, **kwargs) -> None: + super(PhraselistUpdateObject, self).__init__(**kwargs) + self.phrases = phrases + self.name = name + self.is_active = is_active + self.is_exchangeable = is_exchangeable diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain.py new file mode 100644 index 000000000000..77282d007ba8 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomain(Model): + """Prebuilt Domain. + + :param name: + :type name: str + :param culture: + :type culture: str + :param description: + :type description: str + :param examples: + :type examples: str + :param intents: + :type intents: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltDomainItem] + :param entities: + :type entities: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltDomainItem] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'culture': {'key': 'culture', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'examples': {'key': 'examples', 'type': 'str'}, + 'intents': {'key': 'intents', 'type': '[PrebuiltDomainItem]'}, + 'entities': {'key': 'entities', 'type': '[PrebuiltDomainItem]'}, + } + + def __init__(self, **kwargs): + super(PrebuiltDomain, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.culture = kwargs.get('culture', None) + self.description = kwargs.get('description', None) + self.examples = kwargs.get('examples', None) + self.intents = kwargs.get('intents', None) + self.entities = kwargs.get('entities', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_base_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_base_object.py new file mode 100644 index 000000000000..5dc7001070f1 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_base_object.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainCreateBaseObject(Model): + """A model object containing the name of the custom prebuilt entity and the + name of the domain to which this model belongs. + + :param domain_name: The domain name. + :type domain_name: str + """ + + _attribute_map = { + 'domain_name': {'key': 'domainName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrebuiltDomainCreateBaseObject, self).__init__(**kwargs) + self.domain_name = kwargs.get('domain_name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_base_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_base_object_py3.py new file mode 100644 index 000000000000..27f5a3362560 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_base_object_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainCreateBaseObject(Model): + """A model object containing the name of the custom prebuilt entity and the + name of the domain to which this model belongs. + + :param domain_name: The domain name. + :type domain_name: str + """ + + _attribute_map = { + 'domain_name': {'key': 'domainName', 'type': 'str'}, + } + + def __init__(self, *, domain_name: str=None, **kwargs) -> None: + super(PrebuiltDomainCreateBaseObject, self).__init__(**kwargs) + self.domain_name = domain_name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_object.py new file mode 100644 index 000000000000..428e369de681 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_object.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainCreateObject(Model): + """A prebuilt domain create object containing the name and culture of the + domain. + + :param domain_name: The domain name. + :type domain_name: str + :param culture: The culture of the new domain. + :type culture: str + """ + + _attribute_map = { + 'domain_name': {'key': 'domainName', 'type': 'str'}, + 'culture': {'key': 'culture', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrebuiltDomainCreateObject, self).__init__(**kwargs) + self.domain_name = kwargs.get('domain_name', None) + self.culture = kwargs.get('culture', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_object_py3.py new file mode 100644 index 000000000000..fcf69ca20060 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_create_object_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainCreateObject(Model): + """A prebuilt domain create object containing the name and culture of the + domain. + + :param domain_name: The domain name. + :type domain_name: str + :param culture: The culture of the new domain. + :type culture: str + """ + + _attribute_map = { + 'domain_name': {'key': 'domainName', 'type': 'str'}, + 'culture': {'key': 'culture', 'type': 'str'}, + } + + def __init__(self, *, domain_name: str=None, culture: str=None, **kwargs) -> None: + super(PrebuiltDomainCreateObject, self).__init__(**kwargs) + self.domain_name = domain_name + self.culture = culture diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_item.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_item.py new file mode 100644 index 000000000000..70c9a7f7724a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_item.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainItem(Model): + """PrebuiltDomainItem. + + :param name: + :type name: str + :param description: + :type description: str + :param examples: + :type examples: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'examples': {'key': 'examples', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrebuiltDomainItem, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.examples = kwargs.get('examples', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_item_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_item_py3.py new file mode 100644 index 000000000000..c063a4d3b0ef --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_item_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainItem(Model): + """PrebuiltDomainItem. + + :param name: + :type name: str + :param description: + :type description: str + :param examples: + :type examples: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'examples': {'key': 'examples', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, description: str=None, examples: str=None, **kwargs) -> None: + super(PrebuiltDomainItem, self).__init__(**kwargs) + self.name = name + self.description = description + self.examples = examples diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_model_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_model_create_object.py new file mode 100644 index 000000000000..8c1e8bac0675 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_model_create_object.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainModelCreateObject(Model): + """A model object containing the name of the custom prebuilt intent or entity + and the name of the domain to which this model belongs. + + :param domain_name: The domain name. + :type domain_name: str + :param model_name: The intent name or entity name. + :type model_name: str + """ + + _attribute_map = { + 'domain_name': {'key': 'domainName', 'type': 'str'}, + 'model_name': {'key': 'modelName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrebuiltDomainModelCreateObject, self).__init__(**kwargs) + self.domain_name = kwargs.get('domain_name', None) + self.model_name = kwargs.get('model_name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_model_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_model_create_object_py3.py new file mode 100644 index 000000000000..bc84614944d5 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_model_create_object_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainModelCreateObject(Model): + """A model object containing the name of the custom prebuilt intent or entity + and the name of the domain to which this model belongs. + + :param domain_name: The domain name. + :type domain_name: str + :param model_name: The intent name or entity name. + :type model_name: str + """ + + _attribute_map = { + 'domain_name': {'key': 'domainName', 'type': 'str'}, + 'model_name': {'key': 'modelName', 'type': 'str'}, + } + + def __init__(self, *, domain_name: str=None, model_name: str=None, **kwargs) -> None: + super(PrebuiltDomainModelCreateObject, self).__init__(**kwargs) + self.domain_name = domain_name + self.model_name = model_name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_object.py new file mode 100644 index 000000000000..042ca8a52dfd --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainObject(Model): + """PrebuiltDomainObject. + + :param domain_name: + :type domain_name: str + :param model_name: + :type model_name: str + """ + + _attribute_map = { + 'domain_name': {'key': 'domain_name', 'type': 'str'}, + 'model_name': {'key': 'model_name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrebuiltDomainObject, self).__init__(**kwargs) + self.domain_name = kwargs.get('domain_name', None) + self.model_name = kwargs.get('model_name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_object_py3.py new file mode 100644 index 000000000000..08ccea442ee8 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomainObject(Model): + """PrebuiltDomainObject. + + :param domain_name: + :type domain_name: str + :param model_name: + :type model_name: str + """ + + _attribute_map = { + 'domain_name': {'key': 'domain_name', 'type': 'str'}, + 'model_name': {'key': 'model_name', 'type': 'str'}, + } + + def __init__(self, *, domain_name: str=None, model_name: str=None, **kwargs) -> None: + super(PrebuiltDomainObject, self).__init__(**kwargs) + self.domain_name = domain_name + self.model_name = model_name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_py3.py new file mode 100644 index 000000000000..0f5a52578365 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_domain_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltDomain(Model): + """Prebuilt Domain. + + :param name: + :type name: str + :param culture: + :type culture: str + :param description: + :type description: str + :param examples: + :type examples: str + :param intents: + :type intents: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltDomainItem] + :param entities: + :type entities: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltDomainItem] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'culture': {'key': 'culture', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'examples': {'key': 'examples', 'type': 'str'}, + 'intents': {'key': 'intents', 'type': '[PrebuiltDomainItem]'}, + 'entities': {'key': 'entities', 'type': '[PrebuiltDomainItem]'}, + } + + def __init__(self, *, name: str=None, culture: str=None, description: str=None, examples: str=None, intents=None, entities=None, **kwargs) -> None: + super(PrebuiltDomain, self).__init__(**kwargs) + self.name = name + self.culture = culture + self.description = description + self.examples = examples + self.intents = intents + self.entities = entities diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity.py new file mode 100644 index 000000000000..fa1c4a731dd5 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltEntity(Model): + """Prebuilt Entity Extractor. + + :param name: + :type name: str + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PrebuiltEntity, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.roles = kwargs.get('roles', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_extractor.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_extractor.py new file mode 100644 index 000000000000..97a7074ab071 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_extractor.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltEntityExtractor(Model): + """Prebuilt Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + } + + def __init__(self, **kwargs): + super(PrebuiltEntityExtractor, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.roles = kwargs.get('roles', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_extractor_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_extractor_py3.py new file mode 100644 index 000000000000..b6c64eed7c91 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_extractor_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltEntityExtractor(Model): + """Prebuilt Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, **kwargs) -> None: + super(PrebuiltEntityExtractor, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.roles = roles diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_py3.py new file mode 100644 index 000000000000..3248f4797375 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/prebuilt_entity_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrebuiltEntity(Model): + """Prebuilt Entity Extractor. + + :param name: + :type name: str + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, roles=None, **kwargs) -> None: + super(PrebuiltEntity, self).__init__(**kwargs) + self.name = name + self.roles = roles diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/production_or_staging_endpoint_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/production_or_staging_endpoint_info.py new file mode 100644 index 000000000000..a51c82080aec --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/production_or_staging_endpoint_info.py @@ -0,0 +1,46 @@ +# 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 .endpoint_info import EndpointInfo + + +class ProductionOrStagingEndpointInfo(EndpointInfo): + """ProductionOrStagingEndpointInfo. + + :param version_id: The version ID to publish. + :type version_id: str + :param is_staging: Indicates if the staging slot should be used, instead + of the Production one. + :type is_staging: bool + :param endpoint_url: The Runtime endpoint URL for this model version. + :type endpoint_url: str + :param region: The target region that the application is published to. + :type region: str + :param assigned_endpoint_key: The endpoint key. + :type assigned_endpoint_key: str + :param endpoint_region: The endpoint's region. + :type endpoint_region: str + :param published_date_time: Timestamp when was last published. + :type published_date_time: str + """ + + _attribute_map = { + 'version_id': {'key': 'versionId', 'type': 'str'}, + 'is_staging': {'key': 'isStaging', 'type': 'bool'}, + 'endpoint_url': {'key': 'endpointUrl', 'type': 'str'}, + 'region': {'key': 'region', 'type': 'str'}, + 'assigned_endpoint_key': {'key': 'assignedEndpointKey', 'type': 'str'}, + 'endpoint_region': {'key': 'endpointRegion', 'type': 'str'}, + 'published_date_time': {'key': 'publishedDateTime', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProductionOrStagingEndpointInfo, self).__init__(**kwargs) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/production_or_staging_endpoint_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/production_or_staging_endpoint_info_py3.py new file mode 100644 index 000000000000..c6a1ee157c3e --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/production_or_staging_endpoint_info_py3.py @@ -0,0 +1,46 @@ +# 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 .endpoint_info_py3 import EndpointInfo + + +class ProductionOrStagingEndpointInfo(EndpointInfo): + """ProductionOrStagingEndpointInfo. + + :param version_id: The version ID to publish. + :type version_id: str + :param is_staging: Indicates if the staging slot should be used, instead + of the Production one. + :type is_staging: bool + :param endpoint_url: The Runtime endpoint URL for this model version. + :type endpoint_url: str + :param region: The target region that the application is published to. + :type region: str + :param assigned_endpoint_key: The endpoint key. + :type assigned_endpoint_key: str + :param endpoint_region: The endpoint's region. + :type endpoint_region: str + :param published_date_time: Timestamp when was last published. + :type published_date_time: str + """ + + _attribute_map = { + 'version_id': {'key': 'versionId', 'type': 'str'}, + 'is_staging': {'key': 'isStaging', 'type': 'bool'}, + 'endpoint_url': {'key': 'endpointUrl', 'type': 'str'}, + 'region': {'key': 'region', 'type': 'str'}, + 'assigned_endpoint_key': {'key': 'assignedEndpointKey', 'type': 'str'}, + 'endpoint_region': {'key': 'endpointRegion', 'type': 'str'}, + 'published_date_time': {'key': 'publishedDateTime', 'type': 'str'}, + } + + def __init__(self, *, version_id: str=None, is_staging: bool=None, endpoint_url: str=None, region: str=None, assigned_endpoint_key: str=None, endpoint_region: str=None, published_date_time: str=None, **kwargs) -> None: + super(ProductionOrStagingEndpointInfo, self).__init__(version_id=version_id, is_staging=is_staging, endpoint_url=endpoint_url, region=region, assigned_endpoint_key=assigned_endpoint_key, endpoint_region=endpoint_region, published_date_time=published_date_time, **kwargs) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_setting_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_setting_update_object.py new file mode 100644 index 000000000000..40528595c704 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_setting_update_object.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublishSettingUpdateObject(Model): + """Object model for updating an application's publish settings. + + :param sentiment_analysis: Setting sentiment analysis as true returns the + Sentiment of the input utterance along with the resopnse + :type sentiment_analysis: bool + :param speech: Setting speech as public enables speech priming in your app + :type speech: bool + :param spell_checker: Setting spell checker as public enables spell + checking the input utterance. + :type spell_checker: bool + """ + + _attribute_map = { + 'sentiment_analysis': {'key': 'sentimentAnalysis', 'type': 'bool'}, + 'speech': {'key': 'speech', 'type': 'bool'}, + 'spell_checker': {'key': 'spellChecker', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PublishSettingUpdateObject, self).__init__(**kwargs) + self.sentiment_analysis = kwargs.get('sentiment_analysis', None) + self.speech = kwargs.get('speech', None) + self.spell_checker = kwargs.get('spell_checker', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_setting_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_setting_update_object_py3.py new file mode 100644 index 000000000000..356e854eaa15 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_setting_update_object_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublishSettingUpdateObject(Model): + """Object model for updating an application's publish settings. + + :param sentiment_analysis: Setting sentiment analysis as true returns the + Sentiment of the input utterance along with the resopnse + :type sentiment_analysis: bool + :param speech: Setting speech as public enables speech priming in your app + :type speech: bool + :param spell_checker: Setting spell checker as public enables spell + checking the input utterance. + :type spell_checker: bool + """ + + _attribute_map = { + 'sentiment_analysis': {'key': 'sentimentAnalysis', 'type': 'bool'}, + 'speech': {'key': 'speech', 'type': 'bool'}, + 'spell_checker': {'key': 'spellChecker', 'type': 'bool'}, + } + + def __init__(self, *, sentiment_analysis: bool=None, speech: bool=None, spell_checker: bool=None, **kwargs) -> None: + super(PublishSettingUpdateObject, self).__init__(**kwargs) + self.sentiment_analysis = sentiment_analysis + self.speech = speech + self.spell_checker = spell_checker diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_settings.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_settings.py new file mode 100644 index 000000000000..1a099987d6de --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_settings.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublishSettings(Model): + """The application publish settings. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The application ID. + :type id: str + :param is_sentiment_analysis_enabled: Required. Setting sentiment analysis + as true returns the Sentiment of the input utterance along with the + resopnse + :type is_sentiment_analysis_enabled: bool + :param is_speech_enabled: Required. Setting speech as public enables + speech priming in your app + :type is_speech_enabled: bool + :param is_spell_checker_enabled: Required. Setting spell checker as public + enables spell checking the input utterance. + :type is_spell_checker_enabled: bool + """ + + _validation = { + 'id': {'required': True}, + 'is_sentiment_analysis_enabled': {'required': True}, + 'is_speech_enabled': {'required': True}, + 'is_spell_checker_enabled': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'is_sentiment_analysis_enabled': {'key': 'sentimentAnalysis', 'type': 'bool'}, + 'is_speech_enabled': {'key': 'speech', 'type': 'bool'}, + 'is_spell_checker_enabled': {'key': 'spellChecker', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PublishSettings, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.is_sentiment_analysis_enabled = kwargs.get('is_sentiment_analysis_enabled', None) + self.is_speech_enabled = kwargs.get('is_speech_enabled', None) + self.is_spell_checker_enabled = kwargs.get('is_spell_checker_enabled', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_settings_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_settings_py3.py new file mode 100644 index 000000000000..0da2f80efdad --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/publish_settings_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublishSettings(Model): + """The application publish settings. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The application ID. + :type id: str + :param is_sentiment_analysis_enabled: Required. Setting sentiment analysis + as true returns the Sentiment of the input utterance along with the + resopnse + :type is_sentiment_analysis_enabled: bool + :param is_speech_enabled: Required. Setting speech as public enables + speech priming in your app + :type is_speech_enabled: bool + :param is_spell_checker_enabled: Required. Setting spell checker as public + enables spell checking the input utterance. + :type is_spell_checker_enabled: bool + """ + + _validation = { + 'id': {'required': True}, + 'is_sentiment_analysis_enabled': {'required': True}, + 'is_speech_enabled': {'required': True}, + 'is_spell_checker_enabled': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'is_sentiment_analysis_enabled': {'key': 'sentimentAnalysis', 'type': 'bool'}, + 'is_speech_enabled': {'key': 'speech', 'type': 'bool'}, + 'is_spell_checker_enabled': {'key': 'spellChecker', 'type': 'bool'}, + } + + def __init__(self, *, id: str, is_sentiment_analysis_enabled: bool, is_speech_enabled: bool, is_spell_checker_enabled: bool, **kwargs) -> None: + super(PublishSettings, self).__init__(**kwargs) + self.id = id + self.is_sentiment_analysis_enabled = is_sentiment_analysis_enabled + self.is_speech_enabled = is_speech_enabled + self.is_spell_checker_enabled = is_spell_checker_enabled diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity.py new file mode 100644 index 000000000000..2c8596418d26 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegexEntity(Model): + """Regular Expression Entity Extractor. + + :param name: + :type name: str + :param regex_pattern: + :type regex_pattern: str + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(RegexEntity, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.regex_pattern = kwargs.get('regex_pattern', None) + self.roles = kwargs.get('roles', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_extractor.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_extractor.py new file mode 100644 index 000000000000..967a662542bf --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_extractor.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegexEntityExtractor(Model): + """Regex Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param regex_pattern: The Regex entity pattern. + :type regex_pattern: str + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RegexEntityExtractor, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.type_id = kwargs.get('type_id', None) + self.readable_type = kwargs.get('readable_type', None) + self.roles = kwargs.get('roles', None) + self.regex_pattern = kwargs.get('regex_pattern', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_extractor_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_extractor_py3.py new file mode 100644 index 000000000000..6537df3828bc --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_extractor_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegexEntityExtractor(Model): + """Regex Entity Extractor. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of the Entity Model. + :type id: str + :param name: Name of the Entity Model. + :type name: str + :param type_id: The type ID of the Entity Model. + :type type_id: int + :param readable_type: Required. Possible values include: 'Entity + Extractor', 'Hierarchical Entity Extractor', 'Hierarchical Child Entity + Extractor', 'Composite Entity Extractor', 'Closed List Entity Extractor', + 'Prebuilt Entity Extractor', 'Intent Classifier', 'Pattern.Any Entity + Extractor', 'Regex Entity Extractor' + :type readable_type: str or + ~azure.cognitiveservices.language.luis.authoring.models.enum + :param roles: + :type roles: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + :param regex_pattern: The Regex entity pattern. + :type regex_pattern: str + """ + + _validation = { + 'id': {'required': True}, + 'readable_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type_id': {'key': 'typeId', 'type': 'int'}, + 'readable_type': {'key': 'readableType', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[EntityRole]'}, + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + } + + def __init__(self, *, id: str, readable_type, name: str=None, type_id: int=None, roles=None, regex_pattern: str=None, **kwargs) -> None: + super(RegexEntityExtractor, self).__init__(**kwargs) + self.id = id + self.name = name + self.type_id = type_id + self.readable_type = readable_type + self.roles = roles + self.regex_pattern = regex_pattern diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_py3.py new file mode 100644 index 000000000000..46d45bc647cb --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_entity_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegexEntity(Model): + """Regular Expression Entity Extractor. + + :param name: + :type name: str + :param regex_pattern: + :type regex_pattern: str + :param roles: + :type roles: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, regex_pattern: str=None, roles=None, **kwargs) -> None: + super(RegexEntity, self).__init__(**kwargs) + self.name = name + self.regex_pattern = regex_pattern + self.roles = roles diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_create_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_create_object.py new file mode 100644 index 000000000000..2ce2bf2070e8 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_create_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegexModelCreateObject(Model): + """Model object for creating a regex entity model. + + :param regex_pattern: The regex entity pattern. + :type regex_pattern: str + :param name: The model name. + :type name: str + """ + + _attribute_map = { + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RegexModelCreateObject, self).__init__(**kwargs) + self.regex_pattern = kwargs.get('regex_pattern', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_create_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_create_object_py3.py new file mode 100644 index 000000000000..d4731ac8c7e0 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_create_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegexModelCreateObject(Model): + """Model object for creating a regex entity model. + + :param regex_pattern: The regex entity pattern. + :type regex_pattern: str + :param name: The model name. + :type name: str + """ + + _attribute_map = { + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, regex_pattern: str=None, name: str=None, **kwargs) -> None: + super(RegexModelCreateObject, self).__init__(**kwargs) + self.regex_pattern = regex_pattern + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_update_object.py new file mode 100644 index 000000000000..f6032fbfac58 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_update_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegexModelUpdateObject(Model): + """Model object for updating a regex entity model. + + :param regex_pattern: The regex entity pattern. + :type regex_pattern: str + :param name: The model name. + :type name: str + """ + + _attribute_map = { + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RegexModelUpdateObject, self).__init__(**kwargs) + self.regex_pattern = kwargs.get('regex_pattern', None) + self.name = kwargs.get('name', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_update_object_py3.py new file mode 100644 index 000000000000..8ac545b33f84 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/regex_model_update_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegexModelUpdateObject(Model): + """Model object for updating a regex entity model. + + :param regex_pattern: The regex entity pattern. + :type regex_pattern: str + :param name: The model name. + :type name: str + """ + + _attribute_map = { + 'regex_pattern': {'key': 'regexPattern', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, regex_pattern: str=None, name: str=None, **kwargs) -> None: + super(RegexModelUpdateObject, self).__init__(**kwargs) + self.regex_pattern = regex_pattern + self.name = name diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list.py new file mode 100644 index 000000000000..a17b5ccca12f --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubClosedList(Model): + """Sublist of items for a Closed list. + + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + """ + + _attribute_map = { + 'canonical_form': {'key': 'canonicalForm', 'type': 'str'}, + 'list': {'key': 'list', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(SubClosedList, self).__init__(**kwargs) + self.canonical_form = kwargs.get('canonical_form', None) + self.list = kwargs.get('list', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_py3.py new file mode 100644 index 000000000000..ebdf1743b646 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubClosedList(Model): + """Sublist of items for a Closed list. + + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + """ + + _attribute_map = { + 'canonical_form': {'key': 'canonicalForm', 'type': 'str'}, + 'list': {'key': 'list', 'type': '[str]'}, + } + + def __init__(self, *, canonical_form: str=None, list=None, **kwargs) -> None: + super(SubClosedList, self).__init__(**kwargs) + self.canonical_form = canonical_form + self.list = list diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_response.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_response.py new file mode 100644 index 000000000000..c9eb9f3629e5 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_response.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_closed_list import SubClosedList + + +class SubClosedListResponse(SubClosedList): + """Sublist of items for a Closed list. + + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + :param id: The sublist ID + :type id: int + """ + + _attribute_map = { + 'canonical_form': {'key': 'canonicalForm', 'type': 'str'}, + 'list': {'key': 'list', 'type': '[str]'}, + 'id': {'key': 'id', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(SubClosedListResponse, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_response_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_response_py3.py new file mode 100644 index 000000000000..ece19c644cdd --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/sub_closed_list_response_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_closed_list_py3 import SubClosedList + + +class SubClosedListResponse(SubClosedList): + """Sublist of items for a Closed list. + + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + :param id: The sublist ID + :type id: int + """ + + _attribute_map = { + 'canonical_form': {'key': 'canonicalForm', 'type': 'str'}, + 'list': {'key': 'list', 'type': '[str]'}, + 'id': {'key': 'id', 'type': 'int'}, + } + + def __init__(self, *, canonical_form: str=None, list=None, id: int=None, **kwargs) -> None: + super(SubClosedListResponse, self).__init__(canonical_form=canonical_form, list=list, **kwargs) + self.id = id diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/task_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/task_update_object.py new file mode 100644 index 000000000000..eb056c9d15f8 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/task_update_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskUpdateObject(Model): + """Object model for cloning an application's version. + + :param version: The new version for the cloned model. + :type version: str + """ + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TaskUpdateObject, self).__init__(**kwargs) + self.version = kwargs.get('version', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/task_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/task_update_object_py3.py new file mode 100644 index 000000000000..137f760a6f76 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/task_update_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskUpdateObject(Model): + """Object model for cloning an application's version. + + :param version: The new version for the cloned model. + :type version: str + """ + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, *, version: str=None, **kwargs) -> None: + super(TaskUpdateObject, self).__init__(**kwargs) + self.version = version diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_access_list.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_access_list.py new file mode 100644 index 000000000000..2ad79f2119d0 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_access_list.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserAccessList(Model): + """List of user permissions. + + :param owner: The email address of owner of the application. + :type owner: str + :param emails: + :type emails: list[str] + """ + + _attribute_map = { + 'owner': {'key': 'owner', 'type': 'str'}, + 'emails': {'key': 'emails', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(UserAccessList, self).__init__(**kwargs) + self.owner = kwargs.get('owner', None) + self.emails = kwargs.get('emails', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_access_list_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_access_list_py3.py new file mode 100644 index 000000000000..8aef250b0288 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_access_list_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserAccessList(Model): + """List of user permissions. + + :param owner: The email address of owner of the application. + :type owner: str + :param emails: + :type emails: list[str] + """ + + _attribute_map = { + 'owner': {'key': 'owner', 'type': 'str'}, + 'emails': {'key': 'emails', 'type': '[str]'}, + } + + def __init__(self, *, owner: str=None, emails=None, **kwargs) -> None: + super(UserAccessList, self).__init__(**kwargs) + self.owner = owner + self.emails = emails diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_collaborator.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_collaborator.py new file mode 100644 index 000000000000..847620cc4504 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_collaborator.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserCollaborator(Model): + """UserCollaborator. + + :param email: The email address of the user. + :type email: str + """ + + _attribute_map = { + 'email': {'key': 'email', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UserCollaborator, self).__init__(**kwargs) + self.email = kwargs.get('email', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_collaborator_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_collaborator_py3.py new file mode 100644 index 000000000000..07070c0c87d0 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/user_collaborator_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserCollaborator(Model): + """UserCollaborator. + + :param email: The email address of the user. + :type email: str + """ + + _attribute_map = { + 'email': {'key': 'email', 'type': 'str'}, + } + + def __init__(self, *, email: str=None, **kwargs) -> None: + super(UserCollaborator, self).__init__(**kwargs) + self.email = email diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/version_info.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/version_info.py new file mode 100644 index 000000000000..70abdb2b3e09 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/version_info.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VersionInfo(Model): + """Object model of an application version. + + All required parameters must be populated in order to send to Azure. + + :param version: Required. The version ID. E.g.: "0.1" + :type version: str + :param created_date_time: The version's creation timestamp. + :type created_date_time: datetime + :param last_modified_date_time: Timestamp of the last update. + :type last_modified_date_time: datetime + :param last_trained_date_time: Timestamp of the last time the model was + trained. + :type last_trained_date_time: datetime + :param last_published_date_time: Timestamp when was last published. + :type last_published_date_time: datetime + :param endpoint_url: The Runtime endpoint URL for this model version. + :type endpoint_url: str + :param assigned_endpoint_key: The endpoint key. + :type assigned_endpoint_key: dict[str, str] + :param external_api_keys: External keys. + :type external_api_keys: object + :param intents_count: Number of intents in this model. + :type intents_count: int + :param entities_count: Number of entities in this model. + :type entities_count: int + :param endpoint_hits_count: Number of calls made to this endpoint. + :type endpoint_hits_count: int + :param training_status: Required. The current training status. Possible + values include: 'NeedsTraining', 'InProgress', 'Trained' + :type training_status: str or + ~azure.cognitiveservices.language.luis.authoring.models.TrainingStatus + """ + + _validation = { + 'version': {'required': True}, + 'training_status': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_modified_date_time': {'key': 'lastModifiedDateTime', 'type': 'iso-8601'}, + 'last_trained_date_time': {'key': 'lastTrainedDateTime', 'type': 'iso-8601'}, + 'last_published_date_time': {'key': 'lastPublishedDateTime', 'type': 'iso-8601'}, + 'endpoint_url': {'key': 'endpointUrl', 'type': 'str'}, + 'assigned_endpoint_key': {'key': 'assignedEndpointKey', 'type': '{str}'}, + 'external_api_keys': {'key': 'externalApiKeys', 'type': 'object'}, + 'intents_count': {'key': 'intentsCount', 'type': 'int'}, + 'entities_count': {'key': 'entitiesCount', 'type': 'int'}, + 'endpoint_hits_count': {'key': 'endpointHitsCount', 'type': 'int'}, + 'training_status': {'key': 'trainingStatus', 'type': 'TrainingStatus'}, + } + + def __init__(self, **kwargs): + super(VersionInfo, self).__init__(**kwargs) + self.version = kwargs.get('version', None) + self.created_date_time = kwargs.get('created_date_time', None) + self.last_modified_date_time = kwargs.get('last_modified_date_time', None) + self.last_trained_date_time = kwargs.get('last_trained_date_time', None) + self.last_published_date_time = kwargs.get('last_published_date_time', None) + self.endpoint_url = kwargs.get('endpoint_url', None) + self.assigned_endpoint_key = kwargs.get('assigned_endpoint_key', None) + self.external_api_keys = kwargs.get('external_api_keys', None) + self.intents_count = kwargs.get('intents_count', None) + self.entities_count = kwargs.get('entities_count', None) + self.endpoint_hits_count = kwargs.get('endpoint_hits_count', None) + self.training_status = kwargs.get('training_status', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/version_info_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/version_info_py3.py new file mode 100644 index 000000000000..b888bf52f92c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/version_info_py3.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VersionInfo(Model): + """Object model of an application version. + + All required parameters must be populated in order to send to Azure. + + :param version: Required. The version ID. E.g.: "0.1" + :type version: str + :param created_date_time: The version's creation timestamp. + :type created_date_time: datetime + :param last_modified_date_time: Timestamp of the last update. + :type last_modified_date_time: datetime + :param last_trained_date_time: Timestamp of the last time the model was + trained. + :type last_trained_date_time: datetime + :param last_published_date_time: Timestamp when was last published. + :type last_published_date_time: datetime + :param endpoint_url: The Runtime endpoint URL for this model version. + :type endpoint_url: str + :param assigned_endpoint_key: The endpoint key. + :type assigned_endpoint_key: dict[str, str] + :param external_api_keys: External keys. + :type external_api_keys: object + :param intents_count: Number of intents in this model. + :type intents_count: int + :param entities_count: Number of entities in this model. + :type entities_count: int + :param endpoint_hits_count: Number of calls made to this endpoint. + :type endpoint_hits_count: int + :param training_status: Required. The current training status. Possible + values include: 'NeedsTraining', 'InProgress', 'Trained' + :type training_status: str or + ~azure.cognitiveservices.language.luis.authoring.models.TrainingStatus + """ + + _validation = { + 'version': {'required': True}, + 'training_status': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_modified_date_time': {'key': 'lastModifiedDateTime', 'type': 'iso-8601'}, + 'last_trained_date_time': {'key': 'lastTrainedDateTime', 'type': 'iso-8601'}, + 'last_published_date_time': {'key': 'lastPublishedDateTime', 'type': 'iso-8601'}, + 'endpoint_url': {'key': 'endpointUrl', 'type': 'str'}, + 'assigned_endpoint_key': {'key': 'assignedEndpointKey', 'type': '{str}'}, + 'external_api_keys': {'key': 'externalApiKeys', 'type': 'object'}, + 'intents_count': {'key': 'intentsCount', 'type': 'int'}, + 'entities_count': {'key': 'entitiesCount', 'type': 'int'}, + 'endpoint_hits_count': {'key': 'endpointHitsCount', 'type': 'int'}, + 'training_status': {'key': 'trainingStatus', 'type': 'TrainingStatus'}, + } + + def __init__(self, *, version: str, training_status, created_date_time=None, last_modified_date_time=None, last_trained_date_time=None, last_published_date_time=None, endpoint_url: str=None, assigned_endpoint_key=None, external_api_keys=None, intents_count: int=None, entities_count: int=None, endpoint_hits_count: int=None, **kwargs) -> None: + super(VersionInfo, self).__init__(**kwargs) + self.version = version + self.created_date_time = created_date_time + self.last_modified_date_time = last_modified_date_time + self.last_trained_date_time = last_trained_date_time + self.last_published_date_time = last_published_date_time + self.endpoint_url = endpoint_url + self.assigned_endpoint_key = assigned_endpoint_key + self.external_api_keys = external_api_keys + self.intents_count = intents_count + self.entities_count = entities_count + self.endpoint_hits_count = endpoint_hits_count + self.training_status = training_status diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_base_update_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_base_update_object.py new file mode 100644 index 000000000000..23e053d2f11d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_base_update_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WordListBaseUpdateObject(Model): + """Object model for updating one of the closed list's sublists. + + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + """ + + _attribute_map = { + 'canonical_form': {'key': 'canonicalForm', 'type': 'str'}, + 'list': {'key': 'list', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(WordListBaseUpdateObject, self).__init__(**kwargs) + self.canonical_form = kwargs.get('canonical_form', None) + self.list = kwargs.get('list', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_base_update_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_base_update_object_py3.py new file mode 100644 index 000000000000..a8125b37bbe2 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_base_update_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WordListBaseUpdateObject(Model): + """Object model for updating one of the closed list's sublists. + + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + """ + + _attribute_map = { + 'canonical_form': {'key': 'canonicalForm', 'type': 'str'}, + 'list': {'key': 'list', 'type': '[str]'}, + } + + def __init__(self, *, canonical_form: str=None, list=None, **kwargs) -> None: + super(WordListBaseUpdateObject, self).__init__(**kwargs) + self.canonical_form = canonical_form + self.list = list diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_object.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_object.py new file mode 100644 index 000000000000..e91704e7c45f --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_object.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WordListObject(Model): + """Sublist of items for a Closed list. + + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + """ + + _attribute_map = { + 'canonical_form': {'key': 'canonicalForm', 'type': 'str'}, + 'list': {'key': 'list', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(WordListObject, self).__init__(**kwargs) + self.canonical_form = kwargs.get('canonical_form', None) + self.list = kwargs.get('list', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_object_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_object_py3.py new file mode 100644 index 000000000000..7b739930233a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/models/word_list_object_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WordListObject(Model): + """Sublist of items for a Closed list. + + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + """ + + _attribute_map = { + 'canonical_form': {'key': 'canonicalForm', 'type': 'str'}, + 'list': {'key': 'list', 'type': '[str]'}, + } + + def __init__(self, *, canonical_form: str=None, list=None, **kwargs) -> None: + super(WordListObject, self).__init__(**kwargs) + self.canonical_form = canonical_form + self.list = list diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/__init__.py new file mode 100644 index 000000000000..a77faab1cd1d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/__init__.py @@ -0,0 +1,30 @@ +# 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 .features_operations import FeaturesOperations +from .examples_operations import ExamplesOperations +from .model_operations import ModelOperations +from .apps_operations import AppsOperations +from .versions_operations import VersionsOperations +from .train_operations import TrainOperations +from .permissions_operations import PermissionsOperations +from .pattern_operations import PatternOperations + +__all__ = [ + 'FeaturesOperations', + 'ExamplesOperations', + 'ModelOperations', + 'AppsOperations', + 'VersionsOperations', + 'TrainOperations', + 'PermissionsOperations', + 'PatternOperations', +] diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/apps_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/apps_operations.py new file mode 100644 index 000000000000..18b46100b82a --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/apps_operations.py @@ -0,0 +1,1158 @@ +# 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.pipeline import ClientRawResponse +from msrest.exceptions import HttpOperationError + +from .. import models + + +class AppsOperations(object): + """AppsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def add( + self, application_create_object, custom_headers=None, raw=False, **operation_config): + """Creates a new LUIS app. + + :param application_create_object: A model containing Name, Description + (optional), Culture, Usage Scenario (optional), Domain (optional) and + initial version ID (optional) of the application. Default value for + the version ID is 0.1. Note: the culture cannot be changed after the + app is created. + :type application_create_object: + ~azure.cognitiveservices.language.luis.authoring.models.ApplicationCreateObject + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.add.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(application_create_object, 'ApplicationCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add.metadata = {'url': '/apps/'} + + def list( + self, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Lists all of the user applications. + + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.ApplicationInfoResponse] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[ApplicationInfoResponse]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/apps/'} + + def import_method( + self, luis_app, app_name=None, custom_headers=None, raw=False, **operation_config): + """Imports an application to LUIS, the application's structure should be + included in in the request body. + + :param luis_app: A LUIS application structure. + :type luis_app: + ~azure.cognitiveservices.language.luis.authoring.models.LuisApp + :param app_name: The application name to create. If not specified, the + application name will be read from the imported object. + :type app_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.import_method.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if app_name is not None: + query_parameters['appName'] = self._serialize.query("app_name", app_name, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(luis_app, 'LuisApp') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + import_method.metadata = {'url': '/apps/import'} + + def list_cortana_endpoints( + self, custom_headers=None, raw=False, **operation_config): + """Gets the endpoint URLs for the prebuilt Cortana applications. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PersonalAssistantsResponse or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.PersonalAssistantsResponse + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_cortana_endpoints.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PersonalAssistantsResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_cortana_endpoints.metadata = {'url': '/apps/assistants'} + + def list_domains( + self, custom_headers=None, raw=False, **operation_config): + """Gets the available application domains. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: list[str] or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_domains.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[str]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_domains.metadata = {'url': '/apps/domains'} + + def list_usage_scenarios( + self, custom_headers=None, raw=False, **operation_config): + """Gets the application available usage scenarios. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: list[str] or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_usage_scenarios.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[str]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_usage_scenarios.metadata = {'url': '/apps/usagescenarios'} + + def list_supported_cultures( + self, custom_headers=None, raw=False, **operation_config): + """Gets the supported application cultures. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.AvailableCulture] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_supported_cultures.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[AvailableCulture]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_supported_cultures.metadata = {'url': '/apps/cultures'} + + def download_query_logs( + self, app_id, custom_headers=None, raw=False, callback=None, **operation_config): + """Gets the query logs of the past month for the application. + + :param app_id: The application ID. + :type app_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param callback: When specified, will be called with each chunk of + data that is streamed. The callback should take two arguments, the + bytes of the current chunk of data and the response object. If the + data is uploading, response will be None. + :type callback: Callable[Bytes, response=None] + :param operation_config: :ref:`Operation configuration + overrides`. + :return: object or ClientRawResponse if raw=true + :rtype: Generator or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`HttpOperationError` + """ + # Construct URL + url = self.download_query_logs.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/octet-stream' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) + + if response.status_code not in [200]: + raise HttpOperationError(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._client.stream_download(response, callback) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + download_query_logs.metadata = {'url': '/apps/{appId}/querylogs'} + + def get( + self, app_id, custom_headers=None, raw=False, **operation_config): + """Gets the application info. + + :param app_id: The application ID. + :type app_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationInfoResponse or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.ApplicationInfoResponse + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationInfoResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/apps/{appId}'} + + def update( + self, app_id, name=None, description=None, custom_headers=None, raw=False, **operation_config): + """Updates the name or description of the application. + + :param app_id: The application ID. + :type app_id: str + :param name: The application's new name. + :type name: str + :param description: The application's new description. + :type description: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + application_update_object = models.ApplicationUpdateObject(name=name, description=description) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(application_update_object, 'ApplicationUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/apps/{appId}'} + + def delete( + self, app_id, custom_headers=None, raw=False, **operation_config): + """Deletes an application. + + :param app_id: The application ID. + :type app_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete.metadata = {'url': '/apps/{appId}'} + + def publish( + self, app_id, application_publish_object, custom_headers=None, raw=False, **operation_config): + """Publishes a specific version of the application. + + :param app_id: The application ID. + :type app_id: str + :param application_publish_object: The application publish object. The + region is the target region that the application is published to. + :type application_publish_object: + ~azure.cognitiveservices.language.luis.authoring.models.ApplicationPublishObject + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ProductionOrStagingEndpointInfo or ClientRawResponse if + raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.ProductionOrStagingEndpointInfo + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.publish.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(application_publish_object, 'ApplicationPublishObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('ProductionOrStagingEndpointInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + publish.metadata = {'url': '/apps/{appId}/publish'} + + def get_settings( + self, app_id, custom_headers=None, raw=False, **operation_config): + """Get the application settings. + + :param app_id: The application ID. + :type app_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationSettings or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.ApplicationSettings + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_settings.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationSettings', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_settings.metadata = {'url': '/apps/{appId}/settings'} + + def update_settings( + self, app_id, public=None, custom_headers=None, raw=False, **operation_config): + """Updates the application settings. + + :param app_id: The application ID. + :type app_id: str + :param public: Setting your application as public allows other people + to use your application's endpoint using their own keys. + :type public: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + application_setting_update_object = models.ApplicationSettingUpdateObject(public=public) + + # Construct URL + url = self.update_settings.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(application_setting_update_object, 'ApplicationSettingUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_settings.metadata = {'url': '/apps/{appId}/settings'} + + def get_publish_settings( + self, app_id, custom_headers=None, raw=False, **operation_config): + """Get the application publish settings. + + :param app_id: The application ID. + :type app_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublishSettings or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.PublishSettings + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_publish_settings.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublishSettings', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_publish_settings.metadata = {'url': '/apps/{appId}/publishsettings'} + + def update_publish_settings( + self, app_id, publish_setting_update_object, custom_headers=None, raw=False, **operation_config): + """Updates the application publish settings. + + :param app_id: The application ID. + :type app_id: str + :param publish_setting_update_object: An object containing the new + publish application settings. + :type publish_setting_update_object: + ~azure.cognitiveservices.language.luis.authoring.models.PublishSettingUpdateObject + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update_publish_settings.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(publish_setting_update_object, 'PublishSettingUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_publish_settings.metadata = {'url': '/apps/{appId}/publishsettings'} + + def list_endpoints( + self, app_id, custom_headers=None, raw=False, **operation_config): + """Returns the available endpoint deployment regions and URLs. + + :param app_id: The application ID. + :type app_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: dict or ClientRawResponse if raw=true + :rtype: dict[str, str] or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_endpoints.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('{str}', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_endpoints.metadata = {'url': '/apps/{appId}/endpoints'} + + def list_available_custom_prebuilt_domains( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the available custom prebuilt domains for all cultures. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltDomain] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_available_custom_prebuilt_domains.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PrebuiltDomain]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_custom_prebuilt_domains.metadata = {'url': '/apps/customprebuiltdomains'} + + def add_custom_prebuilt_domain( + self, domain_name=None, culture=None, custom_headers=None, raw=False, **operation_config): + """Adds a prebuilt domain along with its models as a new application. + + :param domain_name: The domain name. + :type domain_name: str + :param culture: The culture of the new domain. + :type culture: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + prebuilt_domain_create_object = models.PrebuiltDomainCreateObject(domain_name=domain_name, culture=culture) + + # Construct URL + url = self.add_custom_prebuilt_domain.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(prebuilt_domain_create_object, 'PrebuiltDomainCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_custom_prebuilt_domain.metadata = {'url': '/apps/customprebuiltdomains'} + + def list_available_custom_prebuilt_domains_for_culture( + self, culture, custom_headers=None, raw=False, **operation_config): + """Gets all the available custom prebuilt domains for a specific culture. + + :param culture: Culture. + :type culture: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltDomain] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_available_custom_prebuilt_domains_for_culture.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'culture': self._serialize.url("culture", culture, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PrebuiltDomain]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_custom_prebuilt_domains_for_culture.metadata = {'url': '/apps/customprebuiltdomains/{culture}'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/examples_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/examples_operations.py new file mode 100644 index 000000000000..bf27cabcc64d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/examples_operations.py @@ -0,0 +1,291 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class ExamplesOperations(object): + """ExamplesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def add( + self, app_id, version_id, example_label_object, custom_headers=None, raw=False, **operation_config): + """Adds a labeled example to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param example_label_object: An example label with the expected intent + and entities. + :type example_label_object: + ~azure.cognitiveservices.language.luis.authoring.models.ExampleLabelObject + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LabelExampleResponse or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.LabelExampleResponse + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.add.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(example_label_object, 'ExampleLabelObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('LabelExampleResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add.metadata = {'url': '/apps/{appId}/versions/{versionId}/example'} + + def batch( + self, app_id, version_id, example_label_object_array, custom_headers=None, raw=False, **operation_config): + """Adds a batch of labeled examples to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param example_label_object_array: Array of examples. + :type example_label_object_array: + list[~azure.cognitiveservices.language.luis.authoring.models.ExampleLabelObject] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.BatchLabelExample] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.batch.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(example_label_object_array, '[ExampleLabelObject]') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201, 207]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('[BatchLabelExample]', response) + if response.status_code == 207: + deserialized = self._deserialize('[BatchLabelExample]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + batch.metadata = {'url': '/apps/{appId}/versions/{versionId}/examples'} + + def list( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Returns examples to be reviewed. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.LabeledUtterance] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[LabeledUtterance]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/apps/{appId}/versions/{versionId}/examples'} + + def delete( + self, app_id, version_id, example_id, custom_headers=None, raw=False, **operation_config): + """Deletes the labeled example with the specified ID. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param example_id: The example ID. + :type example_id: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'exampleId': self._serialize.url("example_id", example_id, 'int') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete.metadata = {'url': '/apps/{appId}/versions/{versionId}/examples/{exampleId}'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/features_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/features_operations.py new file mode 100644 index 000000000000..9219e51591a3 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/features_operations.py @@ -0,0 +1,423 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class FeaturesOperations(object): + """FeaturesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def add_phrase_list( + self, app_id, version_id, phraselist_create_object, custom_headers=None, raw=False, **operation_config): + """Creates a new phraselist feature. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param phraselist_create_object: A Phraselist object containing Name, + comma-separated Phrases and the isExchangeable boolean. Default value + for isExchangeable is true. + :type phraselist_create_object: + ~azure.cognitiveservices.language.luis.authoring.models.PhraselistCreateObject + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: int or ClientRawResponse if raw=true + :rtype: int or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.add_phrase_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(phraselist_create_object, 'PhraselistCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('int', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_phrase_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/phraselists'} + + def list_phrase_lists( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets all the phraselist features. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PhraseListFeatureInfo] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_phrase_lists.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PhraseListFeatureInfo]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_phrase_lists.metadata = {'url': '/apps/{appId}/versions/{versionId}/phraselists'} + + def list( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets all the extraction features for the specified application version. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FeaturesResponseObject or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.FeaturesResponseObject + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FeaturesResponseObject', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/apps/{appId}/versions/{versionId}/features'} + + def get_phrase_list( + self, app_id, version_id, phraselist_id, custom_headers=None, raw=False, **operation_config): + """Gets phraselist feature info. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param phraselist_id: The ID of the feature to be retrieved. + :type phraselist_id: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PhraseListFeatureInfo or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.PhraseListFeatureInfo + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_phrase_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'phraselistId': self._serialize.url("phraselist_id", phraselist_id, 'int') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PhraseListFeatureInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_phrase_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/phraselists/{phraselistId}'} + + def update_phrase_list( + self, app_id, version_id, phraselist_id, phraselist_update_object=None, custom_headers=None, raw=False, **operation_config): + """Updates the phrases, the state and the name of the phraselist feature. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param phraselist_id: The ID of the feature to be updated. + :type phraselist_id: int + :param phraselist_update_object: The new values for: - Just a boolean + called IsActive, in which case the status of the feature will be + changed. - Name, Pattern, Mode, and a boolean called IsActive to + update the feature. + :type phraselist_update_object: + ~azure.cognitiveservices.language.luis.authoring.models.PhraselistUpdateObject + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update_phrase_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'phraselistId': self._serialize.url("phraselist_id", phraselist_id, 'int') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + if phraselist_update_object is not None: + body_content = self._serialize.body(phraselist_update_object, 'PhraselistUpdateObject') + else: + body_content = None + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_phrase_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/phraselists/{phraselistId}'} + + def delete_phrase_list( + self, app_id, version_id, phraselist_id, custom_headers=None, raw=False, **operation_config): + """Deletes a phraselist feature. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param phraselist_id: The ID of the feature to be deleted. + :type phraselist_id: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_phrase_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'phraselistId': self._serialize.url("phraselist_id", phraselist_id, 'int') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_phrase_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/phraselists/{phraselistId}'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/model_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/model_operations.py new file mode 100644 index 000000000000..12eaada5a040 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/model_operations.py @@ -0,0 +1,6851 @@ +# 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.pipeline import ClientRawResponse +from msrest.exceptions import HttpOperationError + +from .. import models + + +class ModelOperations(object): + """ModelOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def add_intent( + self, app_id, version_id, name=None, custom_headers=None, raw=False, **operation_config): + """Adds an intent classifier to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param name: Name of the new entity extractor. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`HttpOperationError` + """ + intent_create_object = models.ModelCreateObject(name=name) + + # Construct URL + url = self.add_intent.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(intent_create_object, 'ModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise HttpOperationError(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_intent.metadata = {'url': '/apps/{appId}/versions/{versionId}/intents'} + + def list_intents( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets information about the intent models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentClassifier] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_intents.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[IntentClassifier]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_intents.metadata = {'url': '/apps/{appId}/versions/{versionId}/intents'} + + def add_entity( + self, app_id, version_id, name=None, custom_headers=None, raw=False, **operation_config): + """Adds an entity extractor to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param name: Name of the new entity extractor. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + model_create_object = models.ModelCreateObject(name=name) + + # Construct URL + url = self.add_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(model_create_object, 'ModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities'} + + def list_entities( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets information about the entity models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_entities.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_entities.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities'} + + def add_hierarchical_entity( + self, app_id, version_id, children=None, name=None, custom_headers=None, raw=False, **operation_config): + """Adds a hierarchical entity extractor to the application version. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param children: Child entities. + :type children: list[str] + :param name: Entity name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + hierarchical_model_create_object = models.HierarchicalEntityModel(children=children, name=name) + + # Construct URL + url = self.add_hierarchical_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(hierarchical_model_create_object, 'HierarchicalEntityModel') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_hierarchical_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities'} + + def list_hierarchical_entities( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets information about the hierarchical entity models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.HierarchicalEntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_hierarchical_entities.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[HierarchicalEntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_hierarchical_entities.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities'} + + def add_composite_entity( + self, app_id, version_id, children=None, name=None, custom_headers=None, raw=False, **operation_config): + """Adds a composite entity extractor to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param children: Child entities. + :type children: list[str] + :param name: Entity name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + composite_model_create_object = models.CompositeEntityModel(children=children, name=name) + + # Construct URL + url = self.add_composite_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(composite_model_create_object, 'CompositeEntityModel') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_composite_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities'} + + def list_composite_entities( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets information about the composite entity models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.CompositeEntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_composite_entities.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[CompositeEntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_composite_entities.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities'} + + def list_closed_lists( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets information about the closedlist models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.ClosedListEntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_closed_lists.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[ClosedListEntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_closed_lists.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists'} + + def add_closed_list( + self, app_id, version_id, sub_lists=None, name=None, custom_headers=None, raw=False, **operation_config): + """Adds a closed list model to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param sub_lists: Sublists for the feature. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + :param name: Name of the closed list feature. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + closed_list_model_create_object = models.ClosedListModelCreateObject(sub_lists=sub_lists, name=name) + + # Construct URL + url = self.add_closed_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(closed_list_model_create_object, 'ClosedListModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_closed_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists'} + + def add_prebuilt( + self, app_id, version_id, prebuilt_extractor_names, custom_headers=None, raw=False, **operation_config): + """Adds a list of prebuilt entity extractors to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param prebuilt_extractor_names: An array of prebuilt entity extractor + names. + :type prebuilt_extractor_names: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltEntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.add_prebuilt.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(prebuilt_extractor_names, '[str]') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('[PrebuiltEntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_prebuilt.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts'} + + def list_prebuilts( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets information about the prebuilt entity models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PrebuiltEntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_prebuilts.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PrebuiltEntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_prebuilts.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts'} + + def list_prebuilt_entities( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Gets all the available prebuilt entity extractors for the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.AvailablePrebuiltEntityModel] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_prebuilt_entities.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[AvailablePrebuiltEntityModel]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_prebuilt_entities.metadata = {'url': '/apps/{appId}/versions/{versionId}/listprebuilts'} + + def list_models( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets information about the application version models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.ModelInfoResponse] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_models.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[ModelInfoResponse]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_models.metadata = {'url': '/apps/{appId}/versions/{versionId}/models'} + + def examples_method( + self, app_id, version_id, model_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets the utterances for the given model in the given app version. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param model_id: The ID (GUID) of the model. + :type model_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.LabelTextObject] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.examples_method.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'modelId': self._serialize.url("model_id", model_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[LabelTextObject]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + examples_method.metadata = {'url': '/apps/{appId}/versions/{versionId}/models/{modelId}/examples'} + + def get_intent( + self, app_id, version_id, intent_id, custom_headers=None, raw=False, **operation_config): + """Gets information about the intent model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param intent_id: The intent classifier ID. + :type intent_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IntentClassifier or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.IntentClassifier + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_intent.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'intentId': self._serialize.url("intent_id", intent_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IntentClassifier', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_intent.metadata = {'url': '/apps/{appId}/versions/{versionId}/intents/{intentId}'} + + def update_intent( + self, app_id, version_id, intent_id, name=None, custom_headers=None, raw=False, **operation_config): + """Updates the name of an intent classifier. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param intent_id: The intent classifier ID. + :type intent_id: str + :param name: The entity's new name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + model_update_object = models.ModelUpdateObject(name=name) + + # Construct URL + url = self.update_intent.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'intentId': self._serialize.url("intent_id", intent_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(model_update_object, 'ModelUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_intent.metadata = {'url': '/apps/{appId}/versions/{versionId}/intents/{intentId}'} + + def delete_intent( + self, app_id, version_id, intent_id, delete_utterances=False, custom_headers=None, raw=False, **operation_config): + """Deletes an intent classifier from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param intent_id: The intent classifier ID. + :type intent_id: str + :param delete_utterances: Also delete the intent's utterances (true). + Or move the utterances to the None intent (false - the default value). + :type delete_utterances: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_intent.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'intentId': self._serialize.url("intent_id", intent_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if delete_utterances is not None: + query_parameters['deleteUtterances'] = self._serialize.query("delete_utterances", delete_utterances, 'bool') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_intent.metadata = {'url': '/apps/{appId}/versions/{versionId}/intents/{intentId}'} + + def get_entity( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Gets information about the entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity extractor ID. + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityExtractor or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityExtractor + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityExtractor', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}'} + + def update_entity( + self, app_id, version_id, entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Updates the name of an entity extractor. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity extractor ID. + :type entity_id: str + :param name: The entity's new name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + model_update_object = models.ModelUpdateObject(name=name) + + # Construct URL + url = self.update_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(model_update_object, 'ModelUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}'} + + def delete_entity( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Deletes an entity extractor from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity extractor ID. + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}'} + + def get_hierarchical_entity( + self, app_id, version_id, h_entity_id, custom_headers=None, raw=False, **operation_config): + """Gets information about the hierarchical entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: HierarchicalEntityExtractor or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.HierarchicalEntityExtractor + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_hierarchical_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('HierarchicalEntityExtractor', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_hierarchical_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}'} + + def update_hierarchical_entity( + self, app_id, version_id, h_entity_id, children=None, name=None, custom_headers=None, raw=False, **operation_config): + """Updates the name and children of a hierarchical entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param children: Child entities. + :type children: list[str] + :param name: Entity name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + hierarchical_model_update_object = models.HierarchicalEntityModel(children=children, name=name) + + # Construct URL + url = self.update_hierarchical_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(hierarchical_model_update_object, 'HierarchicalEntityModel') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_hierarchical_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}'} + + def delete_hierarchical_entity( + self, app_id, version_id, h_entity_id, custom_headers=None, raw=False, **operation_config): + """Deletes a hierarchical entity extractor from the application version. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_hierarchical_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_hierarchical_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}'} + + def get_composite_entity( + self, app_id, version_id, c_entity_id, custom_headers=None, raw=False, **operation_config): + """Gets information about the composite entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CompositeEntityExtractor or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.CompositeEntityExtractor + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_composite_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CompositeEntityExtractor', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_composite_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}'} + + def update_composite_entity( + self, app_id, version_id, c_entity_id, children=None, name=None, custom_headers=None, raw=False, **operation_config): + """Updates the composite entity extractor. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param children: Child entities. + :type children: list[str] + :param name: Entity name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + composite_model_update_object = models.CompositeEntityModel(children=children, name=name) + + # Construct URL + url = self.update_composite_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(composite_model_update_object, 'CompositeEntityModel') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_composite_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}'} + + def delete_composite_entity( + self, app_id, version_id, c_entity_id, custom_headers=None, raw=False, **operation_config): + """Deletes a composite entity extractor from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_composite_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_composite_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}'} + + def get_closed_list( + self, app_id, version_id, cl_entity_id, custom_headers=None, raw=False, **operation_config): + """Gets information of a closed list model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param cl_entity_id: The closed list model ID. + :type cl_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ClosedListEntityExtractor or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.ClosedListEntityExtractor + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_closed_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'clEntityId': self._serialize.url("cl_entity_id", cl_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ClosedListEntityExtractor', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_closed_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{clEntityId}'} + + def update_closed_list( + self, app_id, version_id, cl_entity_id, sub_lists=None, name=None, custom_headers=None, raw=False, **operation_config): + """Updates the closed list model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param cl_entity_id: The closed list model ID. + :type cl_entity_id: str + :param sub_lists: The new sublists for the feature. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + :param name: The new name of the closed list feature. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + closed_list_model_update_object = models.ClosedListModelUpdateObject(sub_lists=sub_lists, name=name) + + # Construct URL + url = self.update_closed_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'clEntityId': self._serialize.url("cl_entity_id", cl_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(closed_list_model_update_object, 'ClosedListModelUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_closed_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{clEntityId}'} + + def patch_closed_list( + self, app_id, version_id, cl_entity_id, sub_lists=None, custom_headers=None, raw=False, **operation_config): + """Adds a batch of sublists to an existing closedlist. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param cl_entity_id: The closed list model ID. + :type cl_entity_id: str + :param sub_lists: Sublists to add. + :type sub_lists: + list[~azure.cognitiveservices.language.luis.authoring.models.WordListObject] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + closed_list_model_patch_object = models.ClosedListModelPatchObject(sub_lists=sub_lists) + + # Construct URL + url = self.patch_closed_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'clEntityId': self._serialize.url("cl_entity_id", cl_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(closed_list_model_patch_object, 'ClosedListModelPatchObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + patch_closed_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{clEntityId}'} + + def delete_closed_list( + self, app_id, version_id, cl_entity_id, custom_headers=None, raw=False, **operation_config): + """Deletes a closed list model from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param cl_entity_id: The closed list model ID. + :type cl_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_closed_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'clEntityId': self._serialize.url("cl_entity_id", cl_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_closed_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{clEntityId}'} + + def get_prebuilt( + self, app_id, version_id, prebuilt_id, custom_headers=None, raw=False, **operation_config): + """Gets information about the prebuilt entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param prebuilt_id: The prebuilt entity extractor ID. + :type prebuilt_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrebuiltEntityExtractor or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.PrebuiltEntityExtractor + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_prebuilt.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'prebuiltId': self._serialize.url("prebuilt_id", prebuilt_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PrebuiltEntityExtractor', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_prebuilt.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts/{prebuiltId}'} + + def delete_prebuilt( + self, app_id, version_id, prebuilt_id, custom_headers=None, raw=False, **operation_config): + """Deletes a prebuilt entity extractor from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param prebuilt_id: The prebuilt entity extractor ID. + :type prebuilt_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_prebuilt.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'prebuiltId': self._serialize.url("prebuilt_id", prebuilt_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_prebuilt.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts/{prebuiltId}'} + + def delete_sub_list( + self, app_id, version_id, cl_entity_id, sub_list_id, custom_headers=None, raw=False, **operation_config): + """Deletes a sublist of a specific closed list model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param cl_entity_id: The closed list entity extractor ID. + :type cl_entity_id: str + :param sub_list_id: The sublist ID. + :type sub_list_id: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_sub_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'clEntityId': self._serialize.url("cl_entity_id", cl_entity_id, 'str'), + 'subListId': self._serialize.url("sub_list_id", sub_list_id, 'int') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_sub_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{clEntityId}/sublists/{subListId}'} + + def update_sub_list( + self, app_id, version_id, cl_entity_id, sub_list_id, canonical_form=None, list=None, custom_headers=None, raw=False, **operation_config): + """Updates one of the closed list's sublists. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param cl_entity_id: The closed list entity extractor ID. + :type cl_entity_id: str + :param sub_list_id: The sublist ID. + :type sub_list_id: int + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + word_list_base_update_object = models.WordListBaseUpdateObject(canonical_form=canonical_form, list=list) + + # Construct URL + url = self.update_sub_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'clEntityId': self._serialize.url("cl_entity_id", cl_entity_id, 'str'), + 'subListId': self._serialize.url("sub_list_id", sub_list_id, 'int') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(word_list_base_update_object, 'WordListBaseUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_sub_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{clEntityId}/sublists/{subListId}'} + + def get_intent_suggestions( + self, app_id, version_id, intent_id, take=100, custom_headers=None, raw=False, **operation_config): + """Suggests examples that would improve the accuracy of the intent model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param intent_id: The intent classifier ID. + :type intent_id: str + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentsSuggestionExample] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_intent_suggestions.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'intentId': self._serialize.url("intent_id", intent_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[IntentsSuggestionExample]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_intent_suggestions.metadata = {'url': '/apps/{appId}/versions/{versionId}/intents/{intentId}/suggest'} + + def get_entity_suggestions( + self, app_id, version_id, entity_id, take=100, custom_headers=None, raw=False, **operation_config): + """Get suggestion examples that would improve the accuracy of the entity + model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The target entity extractor model to enhance. + :type entity_id: str + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntitiesSuggestionExample] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_suggestions.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntitiesSuggestionExample]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_entity_suggestions.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}/suggest'} + + def add_sub_list( + self, app_id, version_id, cl_entity_id, canonical_form=None, list=None, custom_headers=None, raw=False, **operation_config): + """Adds a list to an existing closed list. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param cl_entity_id: The closed list entity extractor ID. + :type cl_entity_id: str + :param canonical_form: The standard form that the list represents. + :type canonical_form: str + :param list: List of synonym words. + :type list: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: int or ClientRawResponse if raw=true + :rtype: int or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + word_list_create_object = models.WordListObject(canonical_form=canonical_form, list=list) + + # Construct URL + url = self.add_sub_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'clEntityId': self._serialize.url("cl_entity_id", cl_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(word_list_create_object, 'WordListObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('int', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_sub_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{clEntityId}/sublists'} + + def add_custom_prebuilt_domain( + self, app_id, version_id, domain_name=None, custom_headers=None, raw=False, **operation_config): + """Adds a customizable prebuilt domain along with all of its models to + this application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param domain_name: The domain name. + :type domain_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: list[str] or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + prebuilt_domain_object = models.PrebuiltDomainCreateBaseObject(domain_name=domain_name) + + # Construct URL + url = self.add_custom_prebuilt_domain.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(prebuilt_domain_object, 'PrebuiltDomainCreateBaseObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('[str]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_custom_prebuilt_domain.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltdomains'} + + def add_custom_prebuilt_intent( + self, app_id, version_id, domain_name=None, model_name=None, custom_headers=None, raw=False, **operation_config): + """Adds a custom prebuilt intent model to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param domain_name: The domain name. + :type domain_name: str + :param model_name: The intent name or entity name. + :type model_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + prebuilt_domain_model_create_object = models.PrebuiltDomainModelCreateObject(domain_name=domain_name, model_name=model_name) + + # Construct URL + url = self.add_custom_prebuilt_intent.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(prebuilt_domain_model_create_object, 'PrebuiltDomainModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_custom_prebuilt_intent.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltintents'} + + def list_custom_prebuilt_intents( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Gets custom prebuilt intents information of this application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.IntentClassifier] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_custom_prebuilt_intents.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[IntentClassifier]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_custom_prebuilt_intents.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltintents'} + + def add_custom_prebuilt_entity( + self, app_id, version_id, domain_name=None, model_name=None, custom_headers=None, raw=False, **operation_config): + """Adds a custom prebuilt entity model to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param domain_name: The domain name. + :type domain_name: str + :param model_name: The intent name or entity name. + :type model_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + prebuilt_domain_model_create_object = models.PrebuiltDomainModelCreateObject(domain_name=domain_name, model_name=model_name) + + # Construct URL + url = self.add_custom_prebuilt_entity.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(prebuilt_domain_model_create_object, 'PrebuiltDomainModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_custom_prebuilt_entity.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltentities'} + + def list_custom_prebuilt_entities( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Gets all custom prebuilt entities information of this application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_custom_prebuilt_entities.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_custom_prebuilt_entities.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltentities'} + + def list_custom_prebuilt_models( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Gets all custom prebuilt models information of this application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.CustomPrebuiltModel] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_custom_prebuilt_models.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[CustomPrebuiltModel]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_custom_prebuilt_models.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltmodels'} + + def delete_custom_prebuilt_domain( + self, app_id, version_id, domain_name, custom_headers=None, raw=False, **operation_config): + """Deletes a prebuilt domain's models from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param domain_name: Domain name. + :type domain_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_custom_prebuilt_domain.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_custom_prebuilt_domain.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltdomains/{domainName}'} + + def get_hierarchical_entity_child( + self, app_id, version_id, h_entity_id, h_child_id, custom_headers=None, raw=False, **operation_config): + """Gets information about the hierarchical entity child model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param h_child_id: The hierarchical entity extractor child ID. + :type h_child_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: HierarchicalChildEntity or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.HierarchicalChildEntity + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_hierarchical_entity_child.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str'), + 'hChildId': self._serialize.url("h_child_id", h_child_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('HierarchicalChildEntity', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_hierarchical_entity_child.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/children/{hChildId}'} + + def update_hierarchical_entity_child( + self, app_id, version_id, h_entity_id, h_child_id, name=None, custom_headers=None, raw=False, **operation_config): + """Renames a single child in an existing hierarchical entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param h_child_id: The hierarchical entity extractor child ID. + :type h_child_id: str + :param name: + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + hierarchical_child_model_update_object = models.HierarchicalChildModelUpdateObject(name=name) + + # Construct URL + url = self.update_hierarchical_entity_child.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str'), + 'hChildId': self._serialize.url("h_child_id", h_child_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(hierarchical_child_model_update_object, 'HierarchicalChildModelUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_hierarchical_entity_child.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/children/{hChildId}'} + + def delete_hierarchical_entity_child( + self, app_id, version_id, h_entity_id, h_child_id, custom_headers=None, raw=False, **operation_config): + """Deletes a hierarchical entity extractor child from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param h_child_id: The hierarchical entity extractor child ID. + :type h_child_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_hierarchical_entity_child.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str'), + 'hChildId': self._serialize.url("h_child_id", h_child_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_hierarchical_entity_child.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/children/{hChildId}'} + + def add_hierarchical_entity_child( + self, app_id, version_id, h_entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Creates a single child in an existing hierarchical entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param name: + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + hierarchical_child_model_create_object = models.HierarchicalChildModelCreateObject(name=name) + + # Construct URL + url = self.add_hierarchical_entity_child.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(hierarchical_child_model_create_object, 'HierarchicalChildModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_hierarchical_entity_child.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/children'} + + def add_composite_entity_child( + self, app_id, version_id, c_entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Creates a single child in an existing composite entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param name: + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + composite_child_model_create_object = models.CompositeChildModelCreateObject(name=name) + + # Construct URL + url = self.add_composite_entity_child.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(composite_child_model_create_object, 'CompositeChildModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_composite_entity_child.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}/children'} + + def delete_composite_entity_child( + self, app_id, version_id, c_entity_id, c_child_id, custom_headers=None, raw=False, **operation_config): + """Deletes a composite entity extractor child from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param c_child_id: The hierarchical entity extractor child ID. + :type c_child_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_composite_entity_child.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str'), + 'cChildId': self._serialize.url("c_child_id", c_child_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_composite_entity_child.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}/children/{cChildId}'} + + def get_regex_entity_infos( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets information about the regex entity models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.RegexEntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_regex_entity_infos.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[RegexEntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_regex_entity_infos.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities'} + + def create_regex_entity_model( + self, app_id, version_id, regex_pattern=None, name=None, custom_headers=None, raw=False, **operation_config): + """Adds a regex entity model to the application version. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param regex_pattern: The regex entity pattern. + :type regex_pattern: str + :param name: The model name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + regex_entity_extractor_create_obj = models.RegexModelCreateObject(regex_pattern=regex_pattern, name=name) + + # Construct URL + url = self.create_regex_entity_model.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(regex_entity_extractor_create_obj, 'RegexModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_regex_entity_model.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities'} + + def get_pattern_any_entity_infos( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Get information about the Pattern.Any entity models. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternAnyEntityExtractor] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_pattern_any_entity_infos.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PatternAnyEntityExtractor]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_pattern_any_entity_infos.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities'} + + def create_pattern_any_entity_model( + self, app_id, version_id, name=None, explicit_list=None, custom_headers=None, raw=False, **operation_config): + """Adds a pattern.any entity extractor to the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param name: The model name. + :type name: str + :param explicit_list: The Pattern.Any explicit list. + :type explicit_list: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + extractor_create_object = models.PatternAnyModelCreateObject(name=name, explicit_list=explicit_list) + + # Construct URL + url = self.create_pattern_any_entity_model.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(extractor_create_object, 'PatternAnyModelCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_pattern_any_entity_model.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities'} + + def get_entity_roles( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Get All Entity Roles for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity Id + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_roles.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityRole]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_entity_roles.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}/roles'} + + def create_entity_role( + self, app_id, version_id, entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Create an entity role for an entity in the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity model ID. + :type entity_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_create_object = models.EntityRoleCreateObject(name=name) + + # Construct URL + url = self.create_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_create_object, 'EntityRoleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}/roles'} + + def get_prebuilt_entity_roles( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Get All Entity Roles for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity Id + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_prebuilt_entity_roles.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityRole]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_prebuilt_entity_roles.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts/{entityId}/roles'} + + def create_prebuilt_entity_role( + self, app_id, version_id, entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Create an entity role for an entity in the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity model ID. + :type entity_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_create_object = models.EntityRoleCreateObject(name=name) + + # Construct URL + url = self.create_prebuilt_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_create_object, 'EntityRoleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_prebuilt_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts/{entityId}/roles'} + + def get_closed_list_entity_roles( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Get All Entity Roles for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity Id + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_closed_list_entity_roles.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityRole]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_closed_list_entity_roles.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{entityId}/roles'} + + def create_closed_list_entity_role( + self, app_id, version_id, entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Create an entity role for an entity in the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity model ID. + :type entity_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_create_object = models.EntityRoleCreateObject(name=name) + + # Construct URL + url = self.create_closed_list_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_create_object, 'EntityRoleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_closed_list_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{entityId}/roles'} + + def get_regex_entity_roles( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Get All Entity Roles for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity Id + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_regex_entity_roles.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityRole]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_regex_entity_roles.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities/{entityId}/roles'} + + def create_regex_entity_role( + self, app_id, version_id, entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Create an entity role for an entity in the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity model ID. + :type entity_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_create_object = models.EntityRoleCreateObject(name=name) + + # Construct URL + url = self.create_regex_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_create_object, 'EntityRoleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_regex_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities/{entityId}/roles'} + + def get_composite_entity_roles( + self, app_id, version_id, c_entity_id, custom_headers=None, raw=False, **operation_config): + """Get All Entity Roles for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_composite_entity_roles.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityRole]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_composite_entity_roles.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}/roles'} + + def create_composite_entity_role( + self, app_id, version_id, c_entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Create an entity role for an entity in the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_create_object = models.EntityRoleCreateObject(name=name) + + # Construct URL + url = self.create_composite_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_create_object, 'EntityRoleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_composite_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}/roles'} + + def get_pattern_any_entity_roles( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Get All Entity Roles for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity Id + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_pattern_any_entity_roles.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityRole]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_pattern_any_entity_roles.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/roles'} + + def create_pattern_any_entity_role( + self, app_id, version_id, entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Create an entity role for an entity in the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity model ID. + :type entity_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_create_object = models.EntityRoleCreateObject(name=name) + + # Construct URL + url = self.create_pattern_any_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_create_object, 'EntityRoleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_pattern_any_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/roles'} + + def get_hierarchical_entity_roles( + self, app_id, version_id, h_entity_id, custom_headers=None, raw=False, **operation_config): + """Get All Entity Roles for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_hierarchical_entity_roles.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityRole]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_hierarchical_entity_roles.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/roles'} + + def create_hierarchical_entity_role( + self, app_id, version_id, h_entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Create an entity role for an entity in the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_create_object = models.EntityRoleCreateObject(name=name) + + # Construct URL + url = self.create_hierarchical_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_create_object, 'EntityRoleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_hierarchical_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/roles'} + + def get_custom_prebuilt_entity_roles( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Get All Entity Roles for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity Id + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.EntityRole] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_custom_prebuilt_entity_roles.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[EntityRole]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_custom_prebuilt_entity_roles.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltentities/{entityId}/roles'} + + def create_custom_prebuilt_entity_role( + self, app_id, version_id, entity_id, name=None, custom_headers=None, raw=False, **operation_config): + """Create an entity role for an entity in the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity model ID. + :type entity_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_create_object = models.EntityRoleCreateObject(name=name) + + # Construct URL + url = self.create_custom_prebuilt_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_create_object, 'EntityRoleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_custom_prebuilt_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltentities/{entityId}/roles'} + + def get_explicit_list( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Get the explicit list of the pattern.any entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The Pattern.Any entity id. + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.ExplicitListItem] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_explicit_list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[ExplicitListItem]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_explicit_list.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/explicitlist'} + + def add_explicit_list_item( + self, app_id, version_id, entity_id, explicit_list_item=None, custom_headers=None, raw=False, **operation_config): + """Add a new item to the explicit list for the Pattern.Any entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The Pattern.Any entity extractor ID. + :type entity_id: str + :param explicit_list_item: The explicit list item. + :type explicit_list_item: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: int or ClientRawResponse if raw=true + :rtype: int or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + item = models.ExplicitListItemCreateObject(explicit_list_item=explicit_list_item) + + # Construct URL + url = self.add_explicit_list_item.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(item, 'ExplicitListItemCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('int', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_explicit_list_item.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/explicitlist'} + + def get_regex_entity_entity_info( + self, app_id, version_id, regex_entity_id, custom_headers=None, raw=False, **operation_config): + """Gets information of a regex entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param regex_entity_id: The regex entity model ID. + :type regex_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RegexEntityExtractor or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.RegexEntityExtractor + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_regex_entity_entity_info.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'regexEntityId': self._serialize.url("regex_entity_id", regex_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RegexEntityExtractor', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_regex_entity_entity_info.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities/{regexEntityId}'} + + def update_regex_entity_model( + self, app_id, version_id, regex_entity_id, regex_pattern=None, name=None, custom_headers=None, raw=False, **operation_config): + """Updates the regex entity model . + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param regex_entity_id: The regex entity extractor ID. + :type regex_entity_id: str + :param regex_pattern: The regex entity pattern. + :type regex_pattern: str + :param name: The model name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + regex_entity_update_object = models.RegexModelUpdateObject(regex_pattern=regex_pattern, name=name) + + # Construct URL + url = self.update_regex_entity_model.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'regexEntityId': self._serialize.url("regex_entity_id", regex_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(regex_entity_update_object, 'RegexModelUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_regex_entity_model.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities/{regexEntityId}'} + + def delete_regex_entity_model( + self, app_id, version_id, regex_entity_id, custom_headers=None, raw=False, **operation_config): + """Deletes a regex entity model from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param regex_entity_id: The regex entity extractor ID. + :type regex_entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_regex_entity_model.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'regexEntityId': self._serialize.url("regex_entity_id", regex_entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_regex_entity_model.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities/{regexEntityId}'} + + def get_pattern_any_entity_info( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Gets information about the application version's Pattern.Any model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity extractor ID. + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PatternAnyEntityExtractor or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.PatternAnyEntityExtractor + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_pattern_any_entity_info.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PatternAnyEntityExtractor', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_pattern_any_entity_info.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}'} + + def update_pattern_any_entity_model( + self, app_id, version_id, entity_id, name=None, explicit_list=None, custom_headers=None, raw=False, **operation_config): + """Updates the name and explicit list of a Pattern.Any entity model. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The Pattern.Any entity extractor ID. + :type entity_id: str + :param name: The model name. + :type name: str + :param explicit_list: The Pattern.Any explicit list. + :type explicit_list: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + pattern_any_update_object = models.PatternAnyModelUpdateObject(name=name, explicit_list=explicit_list) + + # Construct URL + url = self.update_pattern_any_entity_model.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(pattern_any_update_object, 'PatternAnyModelUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_pattern_any_entity_model.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}'} + + def delete_pattern_any_entity_model( + self, app_id, version_id, entity_id, custom_headers=None, raw=False, **operation_config): + """Deletes a Pattern.Any entity extractor from the application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The Pattern.Any entity extractor ID. + :type entity_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_pattern_any_entity_model.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_pattern_any_entity_model.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}'} + + def get_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Get one entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity ID. + :type entity_id: str + :param role_id: entity role ID. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityRole or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityRole or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityRole', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}/roles/{roleId}'} + + def update_entity_role( + self, app_id, version_id, entity_id, role_id, name=None, custom_headers=None, raw=False, **operation_config): + """Update an entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role ID. + :type role_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_update_object = models.EntityRoleUpdateObject(name=name) + + # Construct URL + url = self.update_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_update_object, 'EntityRoleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}/roles/{roleId}'} + + def delete_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Delete an entity role. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role Id. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/entities/{entityId}/roles/{roleId}'} + + def get_prebuilt_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Get one entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity ID. + :type entity_id: str + :param role_id: entity role ID. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityRole or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityRole or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_prebuilt_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityRole', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_prebuilt_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts/{entityId}/roles/{roleId}'} + + def update_prebuilt_entity_role( + self, app_id, version_id, entity_id, role_id, name=None, custom_headers=None, raw=False, **operation_config): + """Update an entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role ID. + :type role_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_update_object = models.EntityRoleUpdateObject(name=name) + + # Construct URL + url = self.update_prebuilt_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_update_object, 'EntityRoleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_prebuilt_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts/{entityId}/roles/{roleId}'} + + def delete_prebuilt_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Delete an entity role. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role Id. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_prebuilt_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_prebuilt_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/prebuilts/{entityId}/roles/{roleId}'} + + def get_closed_list_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Get one entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity ID. + :type entity_id: str + :param role_id: entity role ID. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityRole or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityRole or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_closed_list_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityRole', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_closed_list_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{entityId}/roles/{roleId}'} + + def update_closed_list_entity_role( + self, app_id, version_id, entity_id, role_id, name=None, custom_headers=None, raw=False, **operation_config): + """Update an entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role ID. + :type role_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_update_object = models.EntityRoleUpdateObject(name=name) + + # Construct URL + url = self.update_closed_list_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_update_object, 'EntityRoleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_closed_list_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{entityId}/roles/{roleId}'} + + def delete_closed_list_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Delete an entity role. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role Id. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_closed_list_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_closed_list_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/closedlists/{entityId}/roles/{roleId}'} + + def get_regex_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Get one entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity ID. + :type entity_id: str + :param role_id: entity role ID. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityRole or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityRole or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_regex_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityRole', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_regex_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities/{entityId}/roles/{roleId}'} + + def update_regex_entity_role( + self, app_id, version_id, entity_id, role_id, name=None, custom_headers=None, raw=False, **operation_config): + """Update an entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role ID. + :type role_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_update_object = models.EntityRoleUpdateObject(name=name) + + # Construct URL + url = self.update_regex_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_update_object, 'EntityRoleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_regex_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities/{entityId}/roles/{roleId}'} + + def delete_regex_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Delete an entity role. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role Id. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_regex_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_regex_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/regexentities/{entityId}/roles/{roleId}'} + + def get_composite_entity_role( + self, app_id, version_id, c_entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Get one entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param role_id: entity role ID. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityRole or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityRole or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_composite_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityRole', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_composite_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}/roles/{roleId}'} + + def update_composite_entity_role( + self, app_id, version_id, c_entity_id, role_id, name=None, custom_headers=None, raw=False, **operation_config): + """Update an entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param role_id: The entity role ID. + :type role_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_update_object = models.EntityRoleUpdateObject(name=name) + + # Construct URL + url = self.update_composite_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_update_object, 'EntityRoleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_composite_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}/roles/{roleId}'} + + def delete_composite_entity_role( + self, app_id, version_id, c_entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Delete an entity role. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param c_entity_id: The composite entity extractor ID. + :type c_entity_id: str + :param role_id: The entity role Id. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_composite_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'cEntityId': self._serialize.url("c_entity_id", c_entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_composite_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/compositeentities/{cEntityId}/roles/{roleId}'} + + def get_pattern_any_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Get one entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity ID. + :type entity_id: str + :param role_id: entity role ID. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityRole or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityRole or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_pattern_any_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityRole', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_pattern_any_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/roles/{roleId}'} + + def update_pattern_any_entity_role( + self, app_id, version_id, entity_id, role_id, name=None, custom_headers=None, raw=False, **operation_config): + """Update an entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role ID. + :type role_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_update_object = models.EntityRoleUpdateObject(name=name) + + # Construct URL + url = self.update_pattern_any_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_update_object, 'EntityRoleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_pattern_any_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/roles/{roleId}'} + + def delete_pattern_any_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Delete an entity role. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role Id. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_pattern_any_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_pattern_any_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/roles/{roleId}'} + + def get_hierarchical_entity_role( + self, app_id, version_id, h_entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Get one entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param role_id: entity role ID. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityRole or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityRole or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_hierarchical_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityRole', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_hierarchical_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/roles/{roleId}'} + + def update_hierarchical_entity_role( + self, app_id, version_id, h_entity_id, role_id, name=None, custom_headers=None, raw=False, **operation_config): + """Update an entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param role_id: The entity role ID. + :type role_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_update_object = models.EntityRoleUpdateObject(name=name) + + # Construct URL + url = self.update_hierarchical_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_update_object, 'EntityRoleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_hierarchical_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/roles/{roleId}'} + + def delete_hierarchical_entity_role( + self, app_id, version_id, h_entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Delete an entity role. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param h_entity_id: The hierarchical entity extractor ID. + :type h_entity_id: str + :param role_id: The entity role Id. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_hierarchical_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'hEntityId': self._serialize.url("h_entity_id", h_entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_hierarchical_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/hierarchicalentities/{hEntityId}/roles/{roleId}'} + + def get_custom_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Get one entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: entity ID. + :type entity_id: str + :param role_id: entity role ID. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EntityRole or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EntityRole or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_custom_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EntityRole', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_custom_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltentities/{entityId}/roles/{roleId}'} + + def update_custom_prebuilt_entity_role( + self, app_id, version_id, entity_id, role_id, name=None, custom_headers=None, raw=False, **operation_config): + """Update an entity role for a given entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role ID. + :type role_id: str + :param name: The entity role name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + entity_role_update_object = models.EntityRoleUpdateObject(name=name) + + # Construct URL + url = self.update_custom_prebuilt_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(entity_role_update_object, 'EntityRoleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_custom_prebuilt_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltentities/{entityId}/roles/{roleId}'} + + def delete_custom_entity_role( + self, app_id, version_id, entity_id, role_id, custom_headers=None, raw=False, **operation_config): + """Delete an entity role. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The entity ID. + :type entity_id: str + :param role_id: The entity role Id. + :type role_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_custom_entity_role.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'roleId': self._serialize.url("role_id", role_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_custom_entity_role.metadata = {'url': '/apps/{appId}/versions/{versionId}/customprebuiltentities/{entityId}/roles/{roleId}'} + + def get_explicit_list_item( + self, app_id, version_id, entity_id, item_id, custom_headers=None, raw=False, **operation_config): + """Get the explicit list of the pattern.any entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The Pattern.Any entity Id. + :type entity_id: str + :param item_id: The explicit list item Id. + :type item_id: long + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExplicitListItem or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.ExplicitListItem + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_explicit_list_item.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'itemId': self._serialize.url("item_id", item_id, 'long') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExplicitListItem', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_explicit_list_item.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/explicitlist/{itemId}'} + + def update_explicit_list_item( + self, app_id, version_id, entity_id, item_id, explicit_list_item=None, custom_headers=None, raw=False, **operation_config): + """Updates an explicit list item for a Pattern.Any entity. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The Pattern.Any entity extractor ID. + :type entity_id: str + :param item_id: The explicit list item ID. + :type item_id: long + :param explicit_list_item: The explicit list item. + :type explicit_list_item: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + item = models.ExplicitListItemUpdateObject(explicit_list_item=explicit_list_item) + + # Construct URL + url = self.update_explicit_list_item.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'itemId': self._serialize.url("item_id", item_id, 'long') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(item, 'ExplicitListItemUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_explicit_list_item.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/explicitlist/{itemId}'} + + def delete_explicit_list_item( + self, app_id, version_id, entity_id, item_id, custom_headers=None, raw=False, **operation_config): + """Delete the explicit list item from the Pattern.any explicit list. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param entity_id: The pattern.any entity id. + :type entity_id: str + :param item_id: The explicit list item which will be deleted. + :type item_id: long + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_explicit_list_item.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'entityId': self._serialize.url("entity_id", entity_id, 'str'), + 'itemId': self._serialize.url("item_id", item_id, 'long') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_explicit_list_item.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternanyentities/{entityId}/explicitlist/{itemId}'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/pattern_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/pattern_operations.py new file mode 100644 index 000000000000..1f10eca9da23 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/pattern_operations.py @@ -0,0 +1,554 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class PatternOperations(object): + """PatternOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def add_pattern( + self, app_id, version_id, pattern=None, intent=None, custom_headers=None, raw=False, **operation_config): + """Adds one pattern to the specified application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param pattern: The pattern text. + :type pattern: str + :param intent: The intent's name which the pattern belongs to. + :type intent: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PatternRuleInfo or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.PatternRuleInfo + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + pattern1 = models.PatternRuleCreateObject(pattern=pattern, intent=intent) + + # Construct URL + url = self.add_pattern.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(pattern1, 'PatternRuleCreateObject') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('PatternRuleInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_pattern.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternrule'} + + def get_patterns( + self, app_id, version_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Returns an application version's patterns. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternRuleInfo] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_patterns.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PatternRuleInfo]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_patterns.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternrules'} + + def update_patterns( + self, app_id, version_id, patterns, custom_headers=None, raw=False, **operation_config): + """Updates patterns. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param patterns: An array represents the patterns. + :type patterns: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternRuleUpdateObject] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternRuleInfo] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update_patterns.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(patterns, '[PatternRuleUpdateObject]') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PatternRuleInfo]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_patterns.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternrules'} + + def batch_add_patterns( + self, app_id, version_id, patterns, custom_headers=None, raw=False, **operation_config): + """Adds a batch of patterns to the specified application. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param patterns: A JSON array containing patterns. + :type patterns: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternRuleCreateObject] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternRuleInfo] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.batch_add_patterns.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(patterns, '[PatternRuleCreateObject]') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('[PatternRuleInfo]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + batch_add_patterns.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternrules'} + + def delete_patterns( + self, app_id, version_id, pattern_ids, custom_headers=None, raw=False, **operation_config): + """Deletes the patterns with the specified IDs. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param pattern_ids: The patterns IDs. + :type pattern_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_patterns.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(pattern_ids, '[str]') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_patterns.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternrules'} + + def update_pattern( + self, app_id, version_id, pattern_id, pattern, custom_headers=None, raw=False, **operation_config): + """Updates a pattern. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param pattern_id: The pattern ID. + :type pattern_id: str + :param pattern: An object representing a pattern. + :type pattern: + ~azure.cognitiveservices.language.luis.authoring.models.PatternRuleUpdateObject + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PatternRuleInfo or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.PatternRuleInfo + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.update_pattern.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'patternId': self._serialize.url("pattern_id", pattern_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(pattern, 'PatternRuleUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PatternRuleInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_pattern.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternrules/{patternId}'} + + def delete_pattern( + self, app_id, version_id, pattern_id, custom_headers=None, raw=False, **operation_config): + """Deletes the pattern with the specified ID. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param pattern_id: The pattern ID. + :type pattern_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_pattern.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'patternId': self._serialize.url("pattern_id", pattern_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_pattern.metadata = {'url': '/apps/{appId}/versions/{versionId}/patternrules/{patternId}'} + + def get_intent_patterns( + self, app_id, version_id, intent_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Returns patterns to be retrieved for the specific intent. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param intent_id: The intent classifier ID. + :type intent_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.PatternRuleInfo] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_intent_patterns.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str'), + 'intentId': self._serialize.url("intent_id", intent_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PatternRuleInfo]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_intent_patterns.metadata = {'url': '/apps/{appId}/versions/{versionId}/intents/{intentId}/patternrules'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/permissions_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/permissions_operations.py new file mode 100644 index 000000000000..b79917aa1207 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/permissions_operations.py @@ -0,0 +1,278 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class PermissionsOperations(object): + """PermissionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def list( + self, app_id, custom_headers=None, raw=False, **operation_config): + """Gets the list of user emails that have permissions to access your + application. + + :param app_id: The application ID. + :type app_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: UserAccessList or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.UserAccessList + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('UserAccessList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/apps/{appId}/permissions'} + + def add( + self, app_id, email=None, custom_headers=None, raw=False, **operation_config): + """Adds a user to the allowed list of users to access this LUIS + application. Users are added using their email address. + + :param app_id: The application ID. + :type app_id: str + :param email: The email address of the user. + :type email: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + user_to_add = models.UserCollaborator(email=email) + + # Construct URL + url = self.add.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(user_to_add, 'UserCollaborator') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add.metadata = {'url': '/apps/{appId}/permissions'} + + def delete( + self, app_id, email=None, custom_headers=None, raw=False, **operation_config): + """Removes a user from the allowed list of users to access this LUIS + application. Users are removed using their email address. + + :param app_id: The application ID. + :type app_id: str + :param email: The email address of the user. + :type email: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + user_to_delete = models.UserCollaborator(email=email) + + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(user_to_delete, 'UserCollaborator') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete.metadata = {'url': '/apps/{appId}/permissions'} + + def update( + self, app_id, emails=None, custom_headers=None, raw=False, **operation_config): + """Replaces the current users access list with the one sent in the body. + If an empty list is sent, all access to other users will be removed. + + :param app_id: The application ID. + :type app_id: str + :param emails: The email address of the users. + :type emails: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + collaborators = models.CollaboratorsArray(emails=emails) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(collaborators, 'CollaboratorsArray') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/apps/{appId}/permissions'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/train_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/train_operations.py new file mode 100644 index 000000000000..a2b0a8046e80 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/train_operations.py @@ -0,0 +1,158 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class TrainOperations(object): + """TrainOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def train_version( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Sends a training request for a version of a specified LUIS app. This + POST request initiates a request asynchronously. To determine whether + the training request is successful, submit a GET request to get + training status. Note: The application version is not fully trained + unless all the models (intents and entities) are trained successfully + or are up to date. To verify training success, get the training status + at least once after training is complete. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EnqueueTrainingResponse or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.EnqueueTrainingResponse + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.train_version.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 202: + deserialized = self._deserialize('EnqueueTrainingResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + train_version.metadata = {'url': '/apps/{appId}/versions/{versionId}/train'} + + def get_status( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Gets the training status of all models (intents and entities) for the + specified LUIS app. You must call the train API to train the LUIS app + before you call this API to get training status. "appID" specifies the + LUIS app ID. "versionId" specifies the version number of the LUIS app. + For example, "0.1". + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.ModelTrainingInfo] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_status.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[ModelTrainingInfo]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_status.metadata = {'url': '/apps/{appId}/versions/{versionId}/train'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/versions_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/versions_operations.py new file mode 100644 index 000000000000..45142ac03856 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/operations/versions_operations.py @@ -0,0 +1,529 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class VersionsOperations(object): + """VersionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def clone( + self, app_id, version_id, version=None, custom_headers=None, raw=False, **operation_config): + """Creates a new version using the current snapshot of the selected + application version. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param version: The new version for the cloned model. + :type version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + version_clone_object = None + if version is not None: + version_clone_object = models.TaskUpdateObject(version=version) + + # Construct URL + url = self.clone.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + if version_clone_object is not None: + body_content = self._serialize.body(version_clone_object, 'TaskUpdateObject') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + clone.metadata = {'url': '/apps/{appId}/versions/{versionId}/clone'} + + def list( + self, app_id, skip=0, take=100, custom_headers=None, raw=False, **operation_config): + """Gets the application versions info. + + :param app_id: The application ID. + :type app_id: str + :param skip: The number of entries to skip. Default value is 0. + :type skip: int + :param take: The number of entries to return. Maximum page size is + 500. Default is 100. + :type take: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.language.luis.authoring.models.VersionInfo] + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if skip is not None: + query_parameters['skip'] = self._serialize.query("skip", skip, 'int', minimum=0) + if take is not None: + query_parameters['take'] = self._serialize.query("take", take, 'int', maximum=500, minimum=0) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[VersionInfo]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/apps/{appId}/versions'} + + def get( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Gets the version info. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VersionInfo or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.VersionInfo or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VersionInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/apps/{appId}/versions/{versionId}/'} + + def update( + self, app_id, version_id, version=None, custom_headers=None, raw=False, **operation_config): + """Updates the name or description of the application version. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param version: The new version for the cloned model. + :type version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + version_update_object = models.TaskUpdateObject(version=version) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(version_update_object, 'TaskUpdateObject') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/apps/{appId}/versions/{versionId}/'} + + def delete( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Deletes an application version. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete.metadata = {'url': '/apps/{appId}/versions/{versionId}/'} + + def export( + self, app_id, version_id, custom_headers=None, raw=False, **operation_config): + """Exports a LUIS application to JSON format. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LuisApp or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.LuisApp or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.export.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LuisApp', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + export.metadata = {'url': '/apps/{appId}/versions/{versionId}/export'} + + def import_method( + self, app_id, luis_app, version_id=None, custom_headers=None, raw=False, **operation_config): + """Imports a new version into a LUIS application. + + :param app_id: The application ID. + :type app_id: str + :param luis_app: A LUIS application structure. + :type luis_app: + ~azure.cognitiveservices.language.luis.authoring.models.LuisApp + :param version_id: The new versionId to import. If not specified, the + versionId will be read from the imported object. + :type version_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.import_method.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if version_id is not None: + query_parameters['versionId'] = self._serialize.query("version_id", version_id, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(luis_app, 'LuisApp') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + import_method.metadata = {'url': '/apps/{appId}/versions/import'} + + def delete_unlabelled_utterance( + self, app_id, version_id, utterance, custom_headers=None, raw=False, **operation_config): + """Deleted an unlabelled utterance. + + :param app_id: The application ID. + :type app_id: str + :param version_id: The version ID. + :type version_id: str + :param utterance: The utterance text to delete. + :type utterance: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationStatus or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.authoring.models.OperationStatus + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete_unlabelled_utterance.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str'), + 'versionId': self._serialize.url("version_id", version_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(utterance, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_unlabelled_utterance.metadata = {'url': '/apps/{appId}/versions/{versionId}/suggest'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/version.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/version.py new file mode 100644 index 000000000000..63f83465c874 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/authoring/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "2.0" + diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/__init__.py new file mode 100644 index 000000000000..7a3d74853c85 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/__init__.py @@ -0,0 +1,18 @@ +# 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 .luis_runtime_client import LUISRuntimeClient +from .version import VERSION + +__all__ = ['LUISRuntimeClient'] + +__version__ = VERSION + diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/luis_runtime_client.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/luis_runtime_client.py new file mode 100644 index 000000000000..d4448bbe781b --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/luis_runtime_client.py @@ -0,0 +1,78 @@ +# 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.service_client import SDKClient +from msrest import Configuration, Serializer, Deserializer +from .version import VERSION +from .operations.prediction_operations import PredictionOperations +from . import models + + +class LUISRuntimeClientConfiguration(Configuration): + """Configuration for LUISRuntimeClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param endpoint: Supported Cognitive Services endpoints (protocol and + hostname, for example: https://westus.api.cognitive.microsoft.com). + :type endpoint: str + :param credentials: Subscription credentials which uniquely identify + client subscription. + :type credentials: None + """ + + def __init__( + self, endpoint, credentials): + + if endpoint is None: + raise ValueError("Parameter 'endpoint' must not be None.") + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + base_url = '{Endpoint}/luis/v2.0' + + super(LUISRuntimeClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-cognitiveservices-language-luis/{}'.format(VERSION)) + + self.endpoint = endpoint + self.credentials = credentials + + +class LUISRuntimeClient(SDKClient): + """LUISRuntimeClient + + :ivar config: Configuration for client. + :vartype config: LUISRuntimeClientConfiguration + + :ivar prediction: Prediction operations + :vartype prediction: azure.cognitiveservices.language.luis.runtime.operations.PredictionOperations + + :param endpoint: Supported Cognitive Services endpoints (protocol and + hostname, for example: https://westus.api.cognitive.microsoft.com). + :type endpoint: str + :param credentials: Subscription credentials which uniquely identify + client subscription. + :type credentials: None + """ + + def __init__( + self, endpoint, credentials): + + self.config = LUISRuntimeClientConfiguration(endpoint, credentials) + super(LUISRuntimeClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2.0' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.prediction = PredictionOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/__init__.py new file mode 100644 index 000000000000..a17c1378159c --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/__init__.py @@ -0,0 +1,43 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .intent_model_py3 import IntentModel + from .entity_model_py3 import EntityModel + from .composite_child_model_py3 import CompositeChildModel + from .composite_entity_model_py3 import CompositeEntityModel + from .sentiment_py3 import Sentiment + from .luis_result_py3 import LuisResult + from .entity_with_score_py3 import EntityWithScore + from .entity_with_resolution_py3 import EntityWithResolution + from .api_error_py3 import APIError, APIErrorException +except (SyntaxError, ImportError): + from .intent_model import IntentModel + from .entity_model import EntityModel + from .composite_child_model import CompositeChildModel + from .composite_entity_model import CompositeEntityModel + from .sentiment import Sentiment + from .luis_result import LuisResult + from .entity_with_score import EntityWithScore + from .entity_with_resolution import EntityWithResolution + from .api_error import APIError, APIErrorException + +__all__ = [ + 'IntentModel', + 'EntityModel', + 'CompositeChildModel', + 'CompositeEntityModel', + 'Sentiment', + 'LuisResult', + 'EntityWithScore', + 'EntityWithResolution', + 'APIError', 'APIErrorException', +] diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/api_error.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/api_error.py new file mode 100644 index 000000000000..13f85dd56829 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/api_error.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class APIError(Model): + """Error information returned by the API. + + :param status_code: HTTP Status code + :type status_code: str + :param message: Cause of the error. + :type message: str + """ + + _attribute_map = { + 'status_code': {'key': 'statusCode', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(APIError, self).__init__(**kwargs) + self.status_code = kwargs.get('status_code', None) + self.message = kwargs.get('message', None) + + +class APIErrorException(HttpOperationError): + """Server responsed with exception of type: 'APIError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(APIErrorException, self).__init__(deserialize, response, 'APIError', *args) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/api_error_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/api_error_py3.py new file mode 100644 index 000000000000..cfde35f5288f --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/api_error_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class APIError(Model): + """Error information returned by the API. + + :param status_code: HTTP Status code + :type status_code: str + :param message: Cause of the error. + :type message: str + """ + + _attribute_map = { + 'status_code': {'key': 'statusCode', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, status_code: str=None, message: str=None, **kwargs) -> None: + super(APIError, self).__init__(**kwargs) + self.status_code = status_code + self.message = message + + +class APIErrorException(HttpOperationError): + """Server responsed with exception of type: 'APIError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(APIErrorException, self).__init__(deserialize, response, 'APIError', *args) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_child_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_child_model.py new file mode 100644 index 000000000000..5ebd233ebcfd --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_child_model.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeChildModel(Model): + """Child entity in a LUIS Composite Entity. + + All required parameters must be populated in order to send to Azure. + + :param type: Required. Type of child entity. + :type type: str + :param value: Required. Value extracted by LUIS. + :type value: str + """ + + _validation = { + 'type': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CompositeChildModel, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.value = kwargs.get('value', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_child_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_child_model_py3.py new file mode 100644 index 000000000000..e02d60121c03 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_child_model_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeChildModel(Model): + """Child entity in a LUIS Composite Entity. + + All required parameters must be populated in order to send to Azure. + + :param type: Required. Type of child entity. + :type type: str + :param value: Required. Value extracted by LUIS. + :type value: str + """ + + _validation = { + 'type': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, type: str, value: str, **kwargs) -> None: + super(CompositeChildModel, self).__init__(**kwargs) + self.type = type + self.value = value diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_entity_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_entity_model.py new file mode 100644 index 000000000000..a41140ae6d3d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_entity_model.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeEntityModel(Model): + """LUIS Composite Entity. + + All required parameters must be populated in order to send to Azure. + + :param parent_type: Required. Type/name of parent entity. + :type parent_type: str + :param value: Required. Value for composite entity extracted by LUIS. + :type value: str + :param children: Required. Child entities. + :type children: + list[~azure.cognitiveservices.language.luis.runtime.models.CompositeChildModel] + """ + + _validation = { + 'parent_type': {'required': True}, + 'value': {'required': True}, + 'children': {'required': True}, + } + + _attribute_map = { + 'parent_type': {'key': 'parentType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + 'children': {'key': 'children', 'type': '[CompositeChildModel]'}, + } + + def __init__(self, **kwargs): + super(CompositeEntityModel, self).__init__(**kwargs) + self.parent_type = kwargs.get('parent_type', None) + self.value = kwargs.get('value', None) + self.children = kwargs.get('children', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_entity_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_entity_model_py3.py new file mode 100644 index 000000000000..45ac985fffc4 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/composite_entity_model_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CompositeEntityModel(Model): + """LUIS Composite Entity. + + All required parameters must be populated in order to send to Azure. + + :param parent_type: Required. Type/name of parent entity. + :type parent_type: str + :param value: Required. Value for composite entity extracted by LUIS. + :type value: str + :param children: Required. Child entities. + :type children: + list[~azure.cognitiveservices.language.luis.runtime.models.CompositeChildModel] + """ + + _validation = { + 'parent_type': {'required': True}, + 'value': {'required': True}, + 'children': {'required': True}, + } + + _attribute_map = { + 'parent_type': {'key': 'parentType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + 'children': {'key': 'children', 'type': '[CompositeChildModel]'}, + } + + def __init__(self, *, parent_type: str, value: str, children, **kwargs) -> None: + super(CompositeEntityModel, self).__init__(**kwargs) + self.parent_type = parent_type + self.value = value + self.children = children diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_model.py new file mode 100644 index 000000000000..3c9ab0bea6bc --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_model.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityModel(Model): + """An entity extracted from the utterance. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param entity: Required. Name of the entity, as defined in LUIS. + :type entity: str + :param type: Required. Type of the entity, as defined in LUIS. + :type type: str + :param start_index: Required. The position of the first character of the + matched entity within the utterance. + :type start_index: int + :param end_index: Required. The position of the last character of the + matched entity within the utterance. + :type end_index: int + """ + + _validation = { + 'entity': {'required': True}, + 'type': {'required': True}, + 'start_index': {'required': True}, + 'end_index': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'entity': {'key': 'entity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_index': {'key': 'startIndex', 'type': 'int'}, + 'end_index': {'key': 'endIndex', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(EntityModel, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.entity = kwargs.get('entity', None) + self.type = kwargs.get('type', None) + self.start_index = kwargs.get('start_index', None) + self.end_index = kwargs.get('end_index', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_model_py3.py new file mode 100644 index 000000000000..d66eda908ac1 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_model_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EntityModel(Model): + """An entity extracted from the utterance. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param entity: Required. Name of the entity, as defined in LUIS. + :type entity: str + :param type: Required. Type of the entity, as defined in LUIS. + :type type: str + :param start_index: Required. The position of the first character of the + matched entity within the utterance. + :type start_index: int + :param end_index: Required. The position of the last character of the + matched entity within the utterance. + :type end_index: int + """ + + _validation = { + 'entity': {'required': True}, + 'type': {'required': True}, + 'start_index': {'required': True}, + 'end_index': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'entity': {'key': 'entity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_index': {'key': 'startIndex', 'type': 'int'}, + 'end_index': {'key': 'endIndex', 'type': 'int'}, + } + + def __init__(self, *, entity: str, type: str, start_index: int, end_index: int, additional_properties=None, **kwargs) -> None: + super(EntityModel, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.entity = entity + self.type = type + self.start_index = start_index + self.end_index = end_index diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_resolution.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_resolution.py new file mode 100644 index 000000000000..6218f437891d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_resolution.py @@ -0,0 +1,57 @@ +# 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 .entity_model import EntityModel + + +class EntityWithResolution(EntityModel): + """EntityWithResolution. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param entity: Required. Name of the entity, as defined in LUIS. + :type entity: str + :param type: Required. Type of the entity, as defined in LUIS. + :type type: str + :param start_index: Required. The position of the first character of the + matched entity within the utterance. + :type start_index: int + :param end_index: Required. The position of the last character of the + matched entity within the utterance. + :type end_index: int + :param resolution: Required. Resolution values for pre-built LUIS + entities. + :type resolution: object + """ + + _validation = { + 'entity': {'required': True}, + 'type': {'required': True}, + 'start_index': {'required': True}, + 'end_index': {'required': True}, + 'resolution': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'entity': {'key': 'entity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_index': {'key': 'startIndex', 'type': 'int'}, + 'end_index': {'key': 'endIndex', 'type': 'int'}, + 'resolution': {'key': 'resolution', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(EntityWithResolution, self).__init__(**kwargs) + self.resolution = kwargs.get('resolution', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_resolution_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_resolution_py3.py new file mode 100644 index 000000000000..a78adecd6d35 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_resolution_py3.py @@ -0,0 +1,57 @@ +# 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 .entity_model_py3 import EntityModel + + +class EntityWithResolution(EntityModel): + """EntityWithResolution. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param entity: Required. Name of the entity, as defined in LUIS. + :type entity: str + :param type: Required. Type of the entity, as defined in LUIS. + :type type: str + :param start_index: Required. The position of the first character of the + matched entity within the utterance. + :type start_index: int + :param end_index: Required. The position of the last character of the + matched entity within the utterance. + :type end_index: int + :param resolution: Required. Resolution values for pre-built LUIS + entities. + :type resolution: object + """ + + _validation = { + 'entity': {'required': True}, + 'type': {'required': True}, + 'start_index': {'required': True}, + 'end_index': {'required': True}, + 'resolution': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'entity': {'key': 'entity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_index': {'key': 'startIndex', 'type': 'int'}, + 'end_index': {'key': 'endIndex', 'type': 'int'}, + 'resolution': {'key': 'resolution', 'type': 'object'}, + } + + def __init__(self, *, entity: str, type: str, start_index: int, end_index: int, resolution, additional_properties=None, **kwargs) -> None: + super(EntityWithResolution, self).__init__(additional_properties=additional_properties, entity=entity, type=type, start_index=start_index, end_index=end_index, **kwargs) + self.resolution = resolution diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_score.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_score.py new file mode 100644 index 000000000000..a31e75109740 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_score.py @@ -0,0 +1,57 @@ +# 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 .entity_model import EntityModel + + +class EntityWithScore(EntityModel): + """EntityWithScore. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param entity: Required. Name of the entity, as defined in LUIS. + :type entity: str + :param type: Required. Type of the entity, as defined in LUIS. + :type type: str + :param start_index: Required. The position of the first character of the + matched entity within the utterance. + :type start_index: int + :param end_index: Required. The position of the last character of the + matched entity within the utterance. + :type end_index: int + :param score: Required. Associated prediction score for the intent + (float). + :type score: float + """ + + _validation = { + 'entity': {'required': True}, + 'type': {'required': True}, + 'start_index': {'required': True}, + 'end_index': {'required': True}, + 'score': {'required': True, 'maximum': 1, 'minimum': 0}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'entity': {'key': 'entity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_index': {'key': 'startIndex', 'type': 'int'}, + 'end_index': {'key': 'endIndex', 'type': 'int'}, + 'score': {'key': 'score', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(EntityWithScore, self).__init__(**kwargs) + self.score = kwargs.get('score', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_score_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_score_py3.py new file mode 100644 index 000000000000..5193300a0938 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/entity_with_score_py3.py @@ -0,0 +1,57 @@ +# 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 .entity_model_py3 import EntityModel + + +class EntityWithScore(EntityModel): + """EntityWithScore. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param entity: Required. Name of the entity, as defined in LUIS. + :type entity: str + :param type: Required. Type of the entity, as defined in LUIS. + :type type: str + :param start_index: Required. The position of the first character of the + matched entity within the utterance. + :type start_index: int + :param end_index: Required. The position of the last character of the + matched entity within the utterance. + :type end_index: int + :param score: Required. Associated prediction score for the intent + (float). + :type score: float + """ + + _validation = { + 'entity': {'required': True}, + 'type': {'required': True}, + 'start_index': {'required': True}, + 'end_index': {'required': True}, + 'score': {'required': True, 'maximum': 1, 'minimum': 0}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'entity': {'key': 'entity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_index': {'key': 'startIndex', 'type': 'int'}, + 'end_index': {'key': 'endIndex', 'type': 'int'}, + 'score': {'key': 'score', 'type': 'float'}, + } + + def __init__(self, *, entity: str, type: str, start_index: int, end_index: int, score: float, additional_properties=None, **kwargs) -> None: + super(EntityWithScore, self).__init__(additional_properties=additional_properties, entity=entity, type=type, start_index=start_index, end_index=end_index, **kwargs) + self.score = score diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/intent_model.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/intent_model.py new file mode 100644 index 000000000000..dc2dc7e526b7 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/intent_model.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IntentModel(Model): + """An intent detected from the utterance. + + :param intent: Name of the intent, as defined in LUIS. + :type intent: str + :param score: Associated prediction score for the intent (float). + :type score: float + """ + + _validation = { + 'score': {'maximum': 1, 'minimum': 0}, + } + + _attribute_map = { + 'intent': {'key': 'intent', 'type': 'str'}, + 'score': {'key': 'score', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(IntentModel, self).__init__(**kwargs) + self.intent = kwargs.get('intent', None) + self.score = kwargs.get('score', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/intent_model_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/intent_model_py3.py new file mode 100644 index 000000000000..48e48ec42a0e --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/intent_model_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IntentModel(Model): + """An intent detected from the utterance. + + :param intent: Name of the intent, as defined in LUIS. + :type intent: str + :param score: Associated prediction score for the intent (float). + :type score: float + """ + + _validation = { + 'score': {'maximum': 1, 'minimum': 0}, + } + + _attribute_map = { + 'intent': {'key': 'intent', 'type': 'str'}, + 'score': {'key': 'score', 'type': 'float'}, + } + + def __init__(self, *, intent: str=None, score: float=None, **kwargs) -> None: + super(IntentModel, self).__init__(**kwargs) + self.intent = intent + self.score = score diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/luis_result.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/luis_result.py new file mode 100644 index 000000000000..15b9ac3de342 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/luis_result.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LuisResult(Model): + """Prediction, based on the input query, containing intent(s) and entities. + + :param query: The input utterance that was analized. + :type query: str + :param altered_query: The corrected utterance (when spell checking was + enabled). + :type altered_query: str + :param top_scoring_intent: + :type top_scoring_intent: + ~azure.cognitiveservices.language.luis.runtime.models.IntentModel + :param intents: All the intents (and their score) that were detected from + utterance. + :type intents: + list[~azure.cognitiveservices.language.luis.runtime.models.IntentModel] + :param entities: The entities extracted from the utterance. + :type entities: + list[~azure.cognitiveservices.language.luis.runtime.models.EntityModel] + :param composite_entities: The composite entities extracted from the + utterance. + :type composite_entities: + list[~azure.cognitiveservices.language.luis.runtime.models.CompositeEntityModel] + :param sentiment_analysis: + :type sentiment_analysis: + ~azure.cognitiveservices.language.luis.runtime.models.Sentiment + """ + + _attribute_map = { + 'query': {'key': 'query', 'type': 'str'}, + 'altered_query': {'key': 'alteredQuery', 'type': 'str'}, + 'top_scoring_intent': {'key': 'topScoringIntent', 'type': 'IntentModel'}, + 'intents': {'key': 'intents', 'type': '[IntentModel]'}, + 'entities': {'key': 'entities', 'type': '[EntityModel]'}, + 'composite_entities': {'key': 'compositeEntities', 'type': '[CompositeEntityModel]'}, + 'sentiment_analysis': {'key': 'sentimentAnalysis', 'type': 'Sentiment'}, + } + + def __init__(self, **kwargs): + super(LuisResult, self).__init__(**kwargs) + self.query = kwargs.get('query', None) + self.altered_query = kwargs.get('altered_query', None) + self.top_scoring_intent = kwargs.get('top_scoring_intent', None) + self.intents = kwargs.get('intents', None) + self.entities = kwargs.get('entities', None) + self.composite_entities = kwargs.get('composite_entities', None) + self.sentiment_analysis = kwargs.get('sentiment_analysis', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/luis_result_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/luis_result_py3.py new file mode 100644 index 000000000000..180a2aaf6114 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/luis_result_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LuisResult(Model): + """Prediction, based on the input query, containing intent(s) and entities. + + :param query: The input utterance that was analized. + :type query: str + :param altered_query: The corrected utterance (when spell checking was + enabled). + :type altered_query: str + :param top_scoring_intent: + :type top_scoring_intent: + ~azure.cognitiveservices.language.luis.runtime.models.IntentModel + :param intents: All the intents (and their score) that were detected from + utterance. + :type intents: + list[~azure.cognitiveservices.language.luis.runtime.models.IntentModel] + :param entities: The entities extracted from the utterance. + :type entities: + list[~azure.cognitiveservices.language.luis.runtime.models.EntityModel] + :param composite_entities: The composite entities extracted from the + utterance. + :type composite_entities: + list[~azure.cognitiveservices.language.luis.runtime.models.CompositeEntityModel] + :param sentiment_analysis: + :type sentiment_analysis: + ~azure.cognitiveservices.language.luis.runtime.models.Sentiment + """ + + _attribute_map = { + 'query': {'key': 'query', 'type': 'str'}, + 'altered_query': {'key': 'alteredQuery', 'type': 'str'}, + 'top_scoring_intent': {'key': 'topScoringIntent', 'type': 'IntentModel'}, + 'intents': {'key': 'intents', 'type': '[IntentModel]'}, + 'entities': {'key': 'entities', 'type': '[EntityModel]'}, + 'composite_entities': {'key': 'compositeEntities', 'type': '[CompositeEntityModel]'}, + 'sentiment_analysis': {'key': 'sentimentAnalysis', 'type': 'Sentiment'}, + } + + def __init__(self, *, query: str=None, altered_query: str=None, top_scoring_intent=None, intents=None, entities=None, composite_entities=None, sentiment_analysis=None, **kwargs) -> None: + super(LuisResult, self).__init__(**kwargs) + self.query = query + self.altered_query = altered_query + self.top_scoring_intent = top_scoring_intent + self.intents = intents + self.entities = entities + self.composite_entities = composite_entities + self.sentiment_analysis = sentiment_analysis diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/sentiment.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/sentiment.py new file mode 100644 index 000000000000..55c1442e35fa --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/sentiment.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sentiment(Model): + """Sentiment of the input utterance. + + :param label: The polarity of the sentiment, can be positive, neutral or + negative. + :type label: str + :param score: Score of the sentiment, ranges from 0 (most negative) to 1 + (most positive). + :type score: float + """ + + _attribute_map = { + 'label': {'key': 'label', 'type': 'str'}, + 'score': {'key': 'score', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(Sentiment, self).__init__(**kwargs) + self.label = kwargs.get('label', None) + self.score = kwargs.get('score', None) diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/sentiment_py3.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/sentiment_py3.py new file mode 100644 index 000000000000..fd92f4706e71 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/models/sentiment_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sentiment(Model): + """Sentiment of the input utterance. + + :param label: The polarity of the sentiment, can be positive, neutral or + negative. + :type label: str + :param score: Score of the sentiment, ranges from 0 (most negative) to 1 + (most positive). + :type score: float + """ + + _attribute_map = { + 'label': {'key': 'label', 'type': 'str'}, + 'score': {'key': 'score', 'type': 'float'}, + } + + def __init__(self, *, label: str=None, score: float=None, **kwargs) -> None: + super(Sentiment, self).__init__(**kwargs) + self.label = label + self.score = score diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/operations/__init__.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/operations/__init__.py new file mode 100644 index 000000000000..5d73b7e5f993 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/operations/__init__.py @@ -0,0 +1,16 @@ +# 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 .prediction_operations import PredictionOperations + +__all__ = [ + 'PredictionOperations', +] diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/operations/prediction_operations.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/operations/prediction_operations.py new file mode 100644 index 000000000000..295ea6133f3d --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/operations/prediction_operations.py @@ -0,0 +1,122 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class PredictionOperations(object): + """PredictionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def resolve( + self, app_id, query, timezone_offset=None, verbose=None, staging=None, spell_check=None, bing_spell_check_subscription_key=None, log=None, custom_headers=None, raw=False, **operation_config): + """Gets predictions for a given utterance, in the form of intents and + entities. The current maximum query size is 500 characters. + + :param app_id: The LUIS application ID (Guid). + :type app_id: str + :param query: The utterance to predict. + :type query: str + :param timezone_offset: The timezone offset for the location of the + request. + :type timezone_offset: float + :param verbose: If true, return all intents instead of just the top + scoring intent. + :type verbose: bool + :param staging: Use the staging endpoint slot. + :type staging: bool + :param spell_check: Enable spell checking. + :type spell_check: bool + :param bing_spell_check_subscription_key: The subscription key to use + when enabling bing spell check + :type bing_spell_check_subscription_key: str + :param log: Log query (default is true) + :type log: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LuisResult or ClientRawResponse if raw=true + :rtype: + ~azure.cognitiveservices.language.luis.runtime.models.LuisResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.resolve.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'appId': self._serialize.url("app_id", app_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if timezone_offset is not None: + query_parameters['timezoneOffset'] = self._serialize.query("timezone_offset", timezone_offset, 'float') + if verbose is not None: + query_parameters['verbose'] = self._serialize.query("verbose", verbose, 'bool') + if staging is not None: + query_parameters['staging'] = self._serialize.query("staging", staging, 'bool') + if spell_check is not None: + query_parameters['spellCheck'] = self._serialize.query("spell_check", spell_check, 'bool') + if bing_spell_check_subscription_key is not None: + query_parameters['bing-spell-check-subscription-key'] = self._serialize.query("bing_spell_check_subscription_key", bing_spell_check_subscription_key, 'str') + if log is not None: + query_parameters['log'] = self._serialize.query("log", log, 'bool') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(query, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LuisResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + resolve.metadata = {'url': '/apps/{appId}'} diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/version.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/version.py new file mode 100644 index 000000000000..63f83465c874 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/runtime/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "2.0" + diff --git a/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/version.py b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/version.py new file mode 100644 index 000000000000..fb0159ed93d7 --- /dev/null +++ b/azure-cognitiveservices-language-luis/azure/cognitiveservices/language/luis/version.py @@ -0,0 +1,12 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "0.1.0" diff --git a/azure-cognitiveservices-language-luis/sdk_packaging.toml b/azure-cognitiveservices-language-luis/sdk_packaging.toml new file mode 100644 index 000000000000..ffd80048fed4 --- /dev/null +++ b/azure-cognitiveservices-language-luis/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-cognitiveservices-language-luis" +package_pprint_name = "Cognitive Services LUIS" +package_doc_id = "cognitive-services" +is_stable = false +is_arm = false diff --git a/azure-mgmt-datalake-nspkg/setup.cfg b/azure-cognitiveservices-language-luis/setup.cfg similarity index 100% rename from azure-mgmt-datalake-nspkg/setup.cfg rename to azure-cognitiveservices-language-luis/setup.cfg diff --git a/azure-cognitiveservices-language-luis/setup.py b/azure-cognitiveservices-language-luis/setup.py new file mode 100644 index 000000000000..c47a8246eabf --- /dev/null +++ b/azure-cognitiveservices-language-luis/setup.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python + +#------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +#-------------------------------------------------------------------------- + +import re +import os.path +from io import open +from setuptools import find_packages, setup + +# Change the PACKAGE_NAME only to change folder and different name +PACKAGE_NAME = "azure-cognitiveservices-language-luis" +PACKAGE_PPRINT_NAME = "Cognitive Services LUIS" + +# a-b-c => a/b/c +package_folder_path = PACKAGE_NAME.replace('-', '/') +# a-b-c => a.b.c +namespace_name = PACKAGE_NAME.replace('-', '.') + +# azure v0.x is not compatible with this package +# azure v0.x used to have a __version__ attribute (newer versions don't) +try: + import azure + try: + ver = azure.__version__ + raise Exception( + 'This package is incompatible with azure=={}. '.format(ver) + + 'Uninstall it with "pip uninstall azure".' + ) + except AttributeError: + pass +except ImportError: + pass + +# Version extraction inspired from 'requests' +with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: + version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', + fd.read(), re.MULTILINE).group(1) + +if not version: + raise RuntimeError('Cannot find version information') + +with open('README.rst', encoding='utf-8') as f: + readme = f.read() +with open('HISTORY.rst', encoding='utf-8') as f: + history = f.read() + +setup( + name=PACKAGE_NAME, + version=version, + description='Microsoft Azure {} Client Library for Python'.format(PACKAGE_PPRINT_NAME), + long_description=readme + '\n\n' + history, + license='MIT License', + author='Microsoft Corporation', + author_email='azpysdkhelp@microsoft.com', + url='https://github.com/Azure/azure-sdk-for-python', + classifiers=[ + 'Development Status :: 4 - Beta', + 'Programming Language :: Python', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'License :: OSI Approved :: MIT License', + ], + zip_safe=False, + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.language', + ]), + install_requires=[ + 'msrest>=0.5.0', + 'azure-common~=1.1', + ], + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-language-nspkg'], + } +) diff --git a/azure-cognitiveservices-language-nspkg/README.rst b/azure-cognitiveservices-language-nspkg/README.rst index d31aed0f9ae6..5dea106b65bb 100644 --- a/azure-cognitiveservices-language-nspkg/README.rst +++ b/azure-cognitiveservices-language-nspkg/README.rst @@ -5,6 +5,9 @@ This is the Microsoft Azure Cognitive Services Language namespace package. This package is not intended to be installed directly by the end user. +Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 ` as namespace package strategy. +This package will use `python_requires` to enforce Python 2 installation. This implies that you might see this package on Python 3 environment if you have pip < 9.0 or setuptools < 24.2.0. + It provides the necessary files for other packages to extend the azure.cognitiveservices.language namespace. If you are looking to install the Azure client libraries, see the diff --git a/azure-cognitiveservices-language-nspkg/azure/__init__.py b/azure-cognitiveservices-language-nspkg/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-language-nspkg/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-nspkg/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-language-nspkg/azure/cognitiveservices/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-language-nspkg/azure/cognitiveservices/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-nspkg/azure/cognitiveservices/language/__init__.py b/azure-cognitiveservices-language-nspkg/azure/cognitiveservices/language/__init__.py index e69de29bb2d1..0260537a02bb 100644 --- a/azure-cognitiveservices-language-nspkg/azure/cognitiveservices/language/__init__.py +++ b/azure-cognitiveservices-language-nspkg/azure/cognitiveservices/language/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-nspkg/sdk_packaging.toml b/azure-cognitiveservices-language-nspkg/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-cognitiveservices-language-nspkg/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-cognitiveservices-language-nspkg/setup.py b/azure-cognitiveservices-language-nspkg/setup.py index 999d83b53703..93fb63183266 100644 --- a/azure-cognitiveservices-language-nspkg/setup.py +++ b/azure-cognitiveservices-language-nspkg/setup.py @@ -25,7 +25,7 @@ setup( name='azure-cognitiveservices-language-nspkg', - version='2.0.0', + version='3.0.0', description='Microsoft Azure Cognitive Services Language Namespace Package [Internal]', long_description=open('README.rst', 'r').read(), license='MIT License', @@ -37,19 +37,14 @@ 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', 'License :: OSI Approved :: MIT License', ], zip_safe=False, packages=[ - 'azure', - 'azure.cognitiveservices', 'azure.cognitiveservices.language', ], + python_requires='<3', install_requires=[ - 'azure-cognitiveservices-nspkg>=2.0.0', + 'azure-cognitiveservices-nspkg>=3.0.0', ] ) diff --git a/azure-cognitiveservices-language-spellcheck/MANIFEST.in b/azure-cognitiveservices-language-spellcheck/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-language-spellcheck/MANIFEST.in +++ b/azure-cognitiveservices-language-spellcheck/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-language-spellcheck/README.rst b/azure-cognitiveservices-language-spellcheck/README.rst index 2c240139e4b4..dceb5241f7bf 100644 --- a/azure-cognitiveservices-language-spellcheck/README.rst +++ b/azure-cognitiveservices-language-spellcheck/README.rst @@ -1,9 +1,9 @@ Microsoft Azure SDK for Python ============================== -This is the Microsoft Azure Cognitive Services Bing Spell Check Client Library. +This is the Microsoft Azure Cognitive Services Spellcheck Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -30,9 +30,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `Spell Check +For code examples, see `Cognitive Services Spellcheck `__ -on readthedocs.org. +on docs.microsoft.com. Provide Feedback diff --git a/azure-cognitiveservices-language-spellcheck/azure/__init__.py b/azure-cognitiveservices-language-spellcheck/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-language-spellcheck/azure/__init__.py +++ b/azure-cognitiveservices-language-spellcheck/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-spellcheck/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-language-spellcheck/azure/cognitiveservices/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-language-spellcheck/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-language-spellcheck/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-spellcheck/azure/cognitiveservices/language/__init__.py b/azure-cognitiveservices-language-spellcheck/azure/cognitiveservices/language/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-language-spellcheck/azure/cognitiveservices/language/__init__.py +++ b/azure-cognitiveservices-language-spellcheck/azure/cognitiveservices/language/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-spellcheck/azure_bdist_wheel.py b/azure-cognitiveservices-language-spellcheck/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-language-spellcheck/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-language-spellcheck/sdk_packaging.toml b/azure-cognitiveservices-language-spellcheck/sdk_packaging.toml new file mode 100644 index 000000000000..6a638b7c31ef --- /dev/null +++ b/azure-cognitiveservices-language-spellcheck/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-language-spellcheck" +package_nspkg = "azure-cognitiveservices-language-nspkg" +package_pprint_name = "Cognitive Services Spellcheck" +package_doc_id = "cognitive-services" +is_stable = true +is_arm = false diff --git a/azure-cognitiveservices-language-spellcheck/setup.cfg b/azure-cognitiveservices-language-spellcheck/setup.cfg index 2d986195ea2f..3c6e79cf31da 100644 --- a/azure-cognitiveservices-language-spellcheck/setup.cfg +++ b/azure-cognitiveservices-language-spellcheck/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-language-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-language-spellcheck/setup.py b/azure-cognitiveservices-language-spellcheck/setup.py index 3b538a6d4c99..013c2c21f08e 100644 --- a/azure-cognitiveservices-language-spellcheck/setup.py +++ b/azure-cognitiveservices-language-spellcheck/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-language-spellcheck" -PACKAGE_PPRINT_NAME = "Cognitive Services Bing Spell Check" +PACKAGE_PPRINT_NAME = "Cognitive Services Spellcheck" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.language', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-language-nspkg'], + } ) diff --git a/azure-cognitiveservices-language-textanalytics/MANIFEST.in b/azure-cognitiveservices-language-textanalytics/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-language-textanalytics/MANIFEST.in +++ b/azure-cognitiveservices-language-textanalytics/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-language-textanalytics/README.rst b/azure-cognitiveservices-language-textanalytics/README.rst index c26973cad3a0..1f148fb859e8 100644 --- a/azure-cognitiveservices-language-textanalytics/README.rst +++ b/azure-cognitiveservices-language-textanalytics/README.rst @@ -3,13 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Cognitive Services Text Analytics Client Library. -Azure Resource Manager (ARM) is the next generation of management APIs that -replace the old Azure Service Management (ASM). - -This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6. - -For the older Azure Service Management (ASM) libraries, see -`azure-servicemanagement-legacy `__ library. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -33,6 +27,14 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: pip uninstall azure +Usage +===== + +For code examples, see `Cognitive Services Text Analytics +`__ +on docs.microsoft.com. + + Provide Feedback ================ diff --git a/azure-cognitiveservices-language-textanalytics/azure/__init__.py b/azure-cognitiveservices-language-textanalytics/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-language-textanalytics/azure/__init__.py +++ b/azure-cognitiveservices-language-textanalytics/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-textanalytics/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-language-textanalytics/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-language-textanalytics/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-language-textanalytics/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-textanalytics/azure/cognitiveservices/language/__init__.py b/azure-cognitiveservices-language-textanalytics/azure/cognitiveservices/language/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-language-textanalytics/azure/cognitiveservices/language/__init__.py +++ b/azure-cognitiveservices-language-textanalytics/azure/cognitiveservices/language/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-language-textanalytics/azure_bdist_wheel.py b/azure-cognitiveservices-language-textanalytics/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-language-textanalytics/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-language-textanalytics/sdk_packaging.toml b/azure-cognitiveservices-language-textanalytics/sdk_packaging.toml new file mode 100644 index 000000000000..8e4a121a7f7c --- /dev/null +++ b/azure-cognitiveservices-language-textanalytics/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-language-textanalytics" +package_nspkg = "azure-cognitiveservices-language-nspkg" +package_pprint_name = "Cognitive Services Text Analytics" +package_doc_id = "cognitive-services" +is_stable = false +is_arm = false diff --git a/azure-cognitiveservices-language-textanalytics/setup.cfg b/azure-cognitiveservices-language-textanalytics/setup.cfg index 2d986195ea2f..3c6e79cf31da 100644 --- a/azure-cognitiveservices-language-textanalytics/setup.cfg +++ b/azure-cognitiveservices-language-textanalytics/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-language-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-language-textanalytics/setup.py b/azure-cognitiveservices-language-textanalytics/setup.py index d7e918673dfa..f022d8306378 100644 --- a/azure-cognitiveservices-language-textanalytics/setup.py +++ b/azure-cognitiveservices-language-textanalytics/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-language-textanalytics" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.language', + ]), install_requires=[ - 'msrest>=0.4.24,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-language-nspkg'], + } ) diff --git a/azure-cognitiveservices-nspkg/README.rst b/azure-cognitiveservices-nspkg/README.rst index ad7c260bffb3..cee9edfb04fd 100644 --- a/azure-cognitiveservices-nspkg/README.rst +++ b/azure-cognitiveservices-nspkg/README.rst @@ -5,6 +5,9 @@ This is the Microsoft Azure Cognitive Services namespace package. This package is not intended to be installed directly by the end user. +Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 ` as namespace package strategy. +This package will use `python_requires` to enforce Python 2 installation. This implies that you might see this package on Python 3 environment if you have pip < 9.0 or setuptools < 24.2.0. + It provides the necessary files for other packages to extend the azure.cognitiveservices namespace. If you are looking to install the Azure client libraries, see the diff --git a/azure-cognitiveservices-nspkg/azure/__init__.py b/azure-cognitiveservices-nspkg/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-nspkg/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-nspkg/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-nspkg/azure/cognitiveservices/__init__.py index e69de29bb2d1..0260537a02bb 100644 --- a/azure-cognitiveservices-nspkg/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-nspkg/azure/cognitiveservices/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-nspkg/sdk_packaging.toml b/azure-cognitiveservices-nspkg/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-cognitiveservices-nspkg/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-cognitiveservices-nspkg/setup.py b/azure-cognitiveservices-nspkg/setup.py index 854dc5a95143..ca45bfb2ebf3 100644 --- a/azure-cognitiveservices-nspkg/setup.py +++ b/azure-cognitiveservices-nspkg/setup.py @@ -25,7 +25,7 @@ setup( name='azure-cognitiveservices-nspkg', - version='2.0.0', + version='3.0.0', description='Microsoft Azure Cognitive Services Namespace Package [Internal]', long_description=open('README.rst', 'r').read(), license='MIT License', @@ -37,18 +37,14 @@ 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', 'License :: OSI Approved :: MIT License', ], zip_safe=False, packages=[ - 'azure', 'azure.cognitiveservices', ], + python_requires='<3', install_requires=[ - 'azure-nspkg>=2.0.0', + 'azure-nspkg>=3.0.0', ] ) diff --git a/azure-cognitiveservices-search-autosuggest/MANIFEST.in b/azure-cognitiveservices-search-autosuggest/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-search-autosuggest/MANIFEST.in +++ b/azure-cognitiveservices-search-autosuggest/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-search-autosuggest/azure/__init__.py b/azure-cognitiveservices-search-autosuggest/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-search-autosuggest/azure/__init__.py +++ b/azure-cognitiveservices-search-autosuggest/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-autosuggest/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-autosuggest/azure/cognitiveservices/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-search-autosuggest/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-search-autosuggest/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-autosuggest/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-autosuggest/azure/cognitiveservices/search/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-search-autosuggest/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-autosuggest/azure/cognitiveservices/search/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-autosuggest/azure_bdist_wheel.py b/azure-cognitiveservices-search-autosuggest/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-search-autosuggest/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-search-autosuggest/setup.cfg b/azure-cognitiveservices-search-autosuggest/setup.cfg index 4659976f991c..3c6e79cf31da 100644 --- a/azure-cognitiveservices-search-autosuggest/setup.cfg +++ b/azure-cognitiveservices-search-autosuggest/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-search-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-search-autosuggest/setup.py b/azure-cognitiveservices-search-autosuggest/setup.py index 1b656cc93ee8..c8d0f0923eeb 100644 --- a/azure-cognitiveservices-search-autosuggest/setup.py +++ b/azure-cognitiveservices-search-autosuggest/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-search-autosuggest" @@ -76,10 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.search', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-search-nspkg'], + } ) diff --git a/azure-cognitiveservices-search-customsearch/MANIFEST.in b/azure-cognitiveservices-search-customsearch/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-search-customsearch/MANIFEST.in +++ b/azure-cognitiveservices-search-customsearch/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-search-customsearch/README.rst b/azure-cognitiveservices-search-customsearch/README.rst index a2a36aef21d2..aba29e496e9f 100644 --- a/azure-cognitiveservices-search-customsearch/README.rst +++ b/azure-cognitiveservices-search-customsearch/README.rst @@ -1,15 +1,9 @@ Microsoft Azure SDK for Python ============================== -This is the Microsoft Azure CustomSearch Client Library. +This is the Microsoft Azure Cognitive Services Custom Search Client Library. -Azure Resource Manager (ARM) is the next generation of management APIs that -replace the old Azure Service Management (ASM). - -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. - -For the older Azure Service Management (ASM) libraries, see -`azure-servicemanagement-legacy `__ library. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -36,9 +30,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `CustomSearch -`__ -on readthedocs.org. +For code examples, see `Cognitive Services Custom Search +`__ +on docs.microsoft.com. Provide Feedback diff --git a/azure-cognitiveservices-search-customsearch/azure/__init__.py b/azure-cognitiveservices-search-customsearch/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-customsearch/azure/__init__.py +++ b/azure-cognitiveservices-search-customsearch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/search/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/search/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-customsearch/azure_bdist_wheel.py b/azure-cognitiveservices-search-customsearch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-search-customsearch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-search-customsearch/sdk_packaging.toml b/azure-cognitiveservices-search-customsearch/sdk_packaging.toml new file mode 100644 index 000000000000..d97eacc3aaab --- /dev/null +++ b/azure-cognitiveservices-search-customsearch/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-search-customsearch" +package_nspkg = "azure-cognitiveservices-search-nspkg" +package_pprint_name = "Cognitive Services Custom Search" +package_doc_id = "cognitive-services" +is_stable = false +is_arm = false diff --git a/azure-cognitiveservices-search-customsearch/setup.cfg b/azure-cognitiveservices-search-customsearch/setup.cfg index 4659976f991c..3c6e79cf31da 100644 --- a/azure-cognitiveservices-search-customsearch/setup.cfg +++ b/azure-cognitiveservices-search-customsearch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-search-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-search-customsearch/setup.py b/azure-cognitiveservices-search-customsearch/setup.py index d4cb316c821d..44c8e77c68b7 100644 --- a/azure-cognitiveservices-search-customsearch/setup.py +++ b/azure-cognitiveservices-search-customsearch/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-search-customsearch" -PACKAGE_PPRINT_NAME = "CustomSearch" +PACKAGE_PPRINT_NAME = "Cognitive Services Custom Search" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.search', + ]), install_requires=[ - 'msrest>=0.4.24,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-search-nspkg'], + } ) diff --git a/azure-cognitiveservices-search-entitysearch/MANIFEST.in b/azure-cognitiveservices-search-entitysearch/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-search-entitysearch/MANIFEST.in +++ b/azure-cognitiveservices-search-entitysearch/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-search-entitysearch/README.rst b/azure-cognitiveservices-search-entitysearch/README.rst index cb7449a6e773..4e7a1c9a0a0d 100644 --- a/azure-cognitiveservices-search-entitysearch/README.rst +++ b/azure-cognitiveservices-search-entitysearch/README.rst @@ -3,7 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Cognitive Services Entity Search Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -30,9 +30,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `Entity Search +For code examples, see `Cognitive Services Entity Search `__ -on readthedocs.org. +on docs.microsoft.com. Provide Feedback diff --git a/azure-cognitiveservices-search-entitysearch/azure/__init__.py b/azure-cognitiveservices-search-entitysearch/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-entitysearch/azure/__init__.py +++ b/azure-cognitiveservices-search-entitysearch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-entitysearch/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-entitysearch/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-entitysearch/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-search-entitysearch/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-entitysearch/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-entitysearch/azure/cognitiveservices/search/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-entitysearch/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-entitysearch/azure/cognitiveservices/search/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-entitysearch/azure_bdist_wheel.py b/azure-cognitiveservices-search-entitysearch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-search-entitysearch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-search-entitysearch/sdk_packaging.toml b/azure-cognitiveservices-search-entitysearch/sdk_packaging.toml new file mode 100644 index 000000000000..8046fb73aa1a --- /dev/null +++ b/azure-cognitiveservices-search-entitysearch/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-search-entitysearch" +package_nspkg = "azure-cognitiveservices-search-nspkg" +package_pprint_name = "Cognitive Services Entity Search" +package_doc_id = "cognitive-services" +is_stable = true +is_arm = false diff --git a/azure-cognitiveservices-search-entitysearch/setup.cfg b/azure-cognitiveservices-search-entitysearch/setup.cfg index 4659976f991c..3c6e79cf31da 100644 --- a/azure-cognitiveservices-search-entitysearch/setup.cfg +++ b/azure-cognitiveservices-search-entitysearch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-search-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-search-entitysearch/setup.py b/azure-cognitiveservices-search-entitysearch/setup.py index 04f29eff4382..00b00ddd7b05 100644 --- a/azure-cognitiveservices-search-entitysearch/setup.py +++ b/azure-cognitiveservices-search-entitysearch/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-search-entitysearch" -PACKAGE_PPRINT_NAME = "Cognitive Services EntitySearch" +PACKAGE_PPRINT_NAME = "Cognitive Services Entity Search" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.search', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-search-nspkg'], + } ) diff --git a/azure-cognitiveservices-search-imagesearch/MANIFEST.in b/azure-cognitiveservices-search-imagesearch/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-search-imagesearch/MANIFEST.in +++ b/azure-cognitiveservices-search-imagesearch/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-search-imagesearch/README.rst b/azure-cognitiveservices-search-imagesearch/README.rst index ca389b6dff29..26360c01f780 100644 --- a/azure-cognitiveservices-search-imagesearch/README.rst +++ b/azure-cognitiveservices-search-imagesearch/README.rst @@ -1,9 +1,9 @@ Microsoft Azure SDK for Python ============================== -This is the Microsoft Azure ImageSearch Client Library. +This is the Microsoft Azure Cognitive Services Image Search Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -30,9 +30,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `Image Search +For code examples, see `Cognitive Services Image Search `__ -on readthedocs.org. +on docs.microsoft.com. Provide Feedback diff --git a/azure-cognitiveservices-search-imagesearch/azure/__init__.py b/azure-cognitiveservices-search-imagesearch/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-imagesearch/azure/__init__.py +++ b/azure-cognitiveservices-search-imagesearch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-imagesearch/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-imagesearch/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-imagesearch/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-search-imagesearch/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-imagesearch/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-imagesearch/azure/cognitiveservices/search/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-imagesearch/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-imagesearch/azure/cognitiveservices/search/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-imagesearch/azure_bdist_wheel.py b/azure-cognitiveservices-search-imagesearch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-search-imagesearch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-search-imagesearch/sdk_packaging.toml b/azure-cognitiveservices-search-imagesearch/sdk_packaging.toml new file mode 100644 index 000000000000..4d1c39e6380b --- /dev/null +++ b/azure-cognitiveservices-search-imagesearch/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-search-imagesearch" +package_nspkg = "azure-cognitiveservices-search-nspkg" +package_pprint_name = "Cognitive Services Image Search" +package_doc_id = "cognitive-services" +is_stable = true +is_arm = false diff --git a/azure-cognitiveservices-search-imagesearch/setup.cfg b/azure-cognitiveservices-search-imagesearch/setup.cfg index 4659976f991c..3c6e79cf31da 100644 --- a/azure-cognitiveservices-search-imagesearch/setup.cfg +++ b/azure-cognitiveservices-search-imagesearch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-search-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-search-imagesearch/setup.py b/azure-cognitiveservices-search-imagesearch/setup.py index 7503e47dbd95..a2bd4197c30b 100644 --- a/azure-cognitiveservices-search-imagesearch/setup.py +++ b/azure-cognitiveservices-search-imagesearch/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-search-imagesearch" -PACKAGE_PPRINT_NAME = "ImageSearch" +PACKAGE_PPRINT_NAME = "Cognitive Services Image Search" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.search', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-search-nspkg'], + } ) diff --git a/azure-cognitiveservices-search-newssearch/MANIFEST.in b/azure-cognitiveservices-search-newssearch/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-search-newssearch/MANIFEST.in +++ b/azure-cognitiveservices-search-newssearch/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-search-newssearch/README.rst b/azure-cognitiveservices-search-newssearch/README.rst index 81f27501afe5..3231e0d52496 100644 --- a/azure-cognitiveservices-search-newssearch/README.rst +++ b/azure-cognitiveservices-search-newssearch/README.rst @@ -1,9 +1,9 @@ Microsoft Azure SDK for Python ============================== -This is the Microsoft Azure NewsSearch Client Library. +This is the Microsoft Azure Cognitive Services News Search Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -30,9 +30,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `News Search +For code examples, see `Cognitive Services News Search `__ -on readthedocs.org. +on docs.microsoft.com. Provide Feedback diff --git a/azure-cognitiveservices-search-newssearch/azure/__init__.py b/azure-cognitiveservices-search-newssearch/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-newssearch/azure/__init__.py +++ b/azure-cognitiveservices-search-newssearch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-newssearch/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-newssearch/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-newssearch/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-search-newssearch/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-newssearch/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-newssearch/azure/cognitiveservices/search/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-newssearch/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-newssearch/azure/cognitiveservices/search/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-newssearch/azure_bdist_wheel.py b/azure-cognitiveservices-search-newssearch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-search-newssearch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-search-newssearch/sdk_packaging.toml b/azure-cognitiveservices-search-newssearch/sdk_packaging.toml new file mode 100644 index 000000000000..7266bf210330 --- /dev/null +++ b/azure-cognitiveservices-search-newssearch/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-search-newssearch" +package_nspkg = "azure-cognitiveservices-search-nspkg" +package_pprint_name = "Cognitive Services News Search" +package_doc_id = "cognitive-services" +is_stable = true +is_arm = false diff --git a/azure-cognitiveservices-search-newssearch/setup.cfg b/azure-cognitiveservices-search-newssearch/setup.cfg index 4659976f991c..3c6e79cf31da 100644 --- a/azure-cognitiveservices-search-newssearch/setup.cfg +++ b/azure-cognitiveservices-search-newssearch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-search-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-search-newssearch/setup.py b/azure-cognitiveservices-search-newssearch/setup.py index 06a8b47a4891..02d898c25520 100644 --- a/azure-cognitiveservices-search-newssearch/setup.py +++ b/azure-cognitiveservices-search-newssearch/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-search-newssearch" -PACKAGE_PPRINT_NAME = "NewsSearch" +PACKAGE_PPRINT_NAME = "Cognitive Services News Search" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.search', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-search-nspkg'], + } ) diff --git a/azure-cognitiveservices-search-nspkg/README.rst b/azure-cognitiveservices-search-nspkg/README.rst index 3e2199a6bbbe..8250270c5bbc 100644 --- a/azure-cognitiveservices-search-nspkg/README.rst +++ b/azure-cognitiveservices-search-nspkg/README.rst @@ -5,6 +5,9 @@ This is the Microsoft Azure Cognitive Services Search namespace package. This package is not intended to be installed directly by the end user. +Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 ` as namespace package strategy. +This package will use `python_requires` to enforce Python 2 installation. This implies that you might see this package on Python 3 environment if you have pip < 9.0 or setuptools < 24.2.0. + It provides the necessary files for other packages to extend the azure.cognitiveservices.search namespace. If you are looking to install the Azure client libraries, see the diff --git a/azure-cognitiveservices-search-nspkg/azure/__init__.py b/azure-cognitiveservices-search-nspkg/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-search-nspkg/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-nspkg/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-nspkg/azure/cognitiveservices/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-search-nspkg/azure/cognitiveservices/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-nspkg/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-nspkg/azure/cognitiveservices/search/__init__.py index e69de29bb2d1..0260537a02bb 100644 --- a/azure-cognitiveservices-search-nspkg/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-nspkg/azure/cognitiveservices/search/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-nspkg/sdk_packaging.toml b/azure-cognitiveservices-search-nspkg/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-cognitiveservices-search-nspkg/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-cognitiveservices-search-nspkg/setup.py b/azure-cognitiveservices-search-nspkg/setup.py index 561b8f86c348..115c48a6dde0 100644 --- a/azure-cognitiveservices-search-nspkg/setup.py +++ b/azure-cognitiveservices-search-nspkg/setup.py @@ -25,7 +25,7 @@ setup( name='azure-cognitiveservices-search-nspkg', - version='2.0.0', + version='3.0.0', description='Microsoft Azure Cognitive Services Search Namespace Package [Internal]', long_description=open('README.rst', 'r').read(), license='MIT License', @@ -37,19 +37,14 @@ 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', 'License :: OSI Approved :: MIT License', ], zip_safe=False, packages=[ - 'azure', - 'azure.cognitiveservices', 'azure.cognitiveservices.search', ], + python_requires='<3', install_requires=[ - 'azure-cognitiveservices-nspkg>=2.0.0', + 'azure-cognitiveservices-nspkg>=3.0.0', ] ) diff --git a/azure-cognitiveservices-search-videosearch/MANIFEST.in b/azure-cognitiveservices-search-videosearch/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-search-videosearch/MANIFEST.in +++ b/azure-cognitiveservices-search-videosearch/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-search-videosearch/README.rst b/azure-cognitiveservices-search-videosearch/README.rst index 0639e8736007..d74b2f5f64fd 100644 --- a/azure-cognitiveservices-search-videosearch/README.rst +++ b/azure-cognitiveservices-search-videosearch/README.rst @@ -3,7 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Cognitive Services Video Search Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -30,9 +30,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `Video Search +For code examples, see `Cognitive Services Video Search `__ -on readthedocs.org. +on docs.microsoft.com. Provide Feedback diff --git a/azure-cognitiveservices-search-videosearch/azure/__init__.py b/azure-cognitiveservices-search-videosearch/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-videosearch/azure/__init__.py +++ b/azure-cognitiveservices-search-videosearch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-videosearch/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-videosearch/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-videosearch/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-search-videosearch/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-videosearch/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-videosearch/azure/cognitiveservices/search/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-videosearch/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-videosearch/azure/cognitiveservices/search/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-videosearch/azure_bdist_wheel.py b/azure-cognitiveservices-search-videosearch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-search-videosearch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-search-videosearch/sdk_packaging.toml b/azure-cognitiveservices-search-videosearch/sdk_packaging.toml new file mode 100644 index 000000000000..9ec2c0acaeeb --- /dev/null +++ b/azure-cognitiveservices-search-videosearch/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-search-videosearch" +package_nspkg = "azure-cognitiveservices-search-nspkg" +package_pprint_name = "Cognitive Services Video Search" +package_doc_id = "cognitive-services" +is_stable = true +is_arm = false diff --git a/azure-cognitiveservices-search-videosearch/setup.cfg b/azure-cognitiveservices-search-videosearch/setup.cfg index 4659976f991c..3c6e79cf31da 100644 --- a/azure-cognitiveservices-search-videosearch/setup.cfg +++ b/azure-cognitiveservices-search-videosearch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-search-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-search-videosearch/setup.py b/azure-cognitiveservices-search-videosearch/setup.py index 6d3f83d35bbf..ab90266b7623 100644 --- a/azure-cognitiveservices-search-videosearch/setup.py +++ b/azure-cognitiveservices-search-videosearch/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-search-videosearch" -PACKAGE_PPRINT_NAME = "Cognitive Services VideoSearch" +PACKAGE_PPRINT_NAME = "Cognitive Services Video Search" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.search', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-search-nspkg'], + } ) diff --git a/azure-cognitiveservices-search-visualsearch/MANIFEST.in b/azure-cognitiveservices-search-visualsearch/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-search-visualsearch/MANIFEST.in +++ b/azure-cognitiveservices-search-visualsearch/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-search-visualsearch/README.rst b/azure-cognitiveservices-search-visualsearch/README.rst index 800f91d3eeb5..353d78c5b606 100644 --- a/azure-cognitiveservices-search-visualsearch/README.rst +++ b/azure-cognitiveservices-search-visualsearch/README.rst @@ -1,9 +1,9 @@ Microsoft Azure SDK for Python ============================== -This is the Microsoft Azure Cognitive Services VisualSearch Client Library. +This is the Microsoft Azure Cognitive Services Visual Search Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -30,9 +30,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `Visual Search +For code examples, see `Cognitive Services Visual Search `__ -on readthedocs.org. +on docs.microsoft.com. Provide Feedback diff --git a/azure-cognitiveservices-search-visualsearch/azure/__init__.py b/azure-cognitiveservices-search-visualsearch/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-visualsearch/azure/__init__.py +++ b/azure-cognitiveservices-search-visualsearch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-visualsearch/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-visualsearch/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-visualsearch/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-search-visualsearch/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-visualsearch/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-visualsearch/azure/cognitiveservices/search/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-visualsearch/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-visualsearch/azure/cognitiveservices/search/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-visualsearch/azure_bdist_wheel.py b/azure-cognitiveservices-search-visualsearch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-search-visualsearch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-search-visualsearch/sdk_packaging.toml b/azure-cognitiveservices-search-visualsearch/sdk_packaging.toml new file mode 100644 index 000000000000..269e6996fa9b --- /dev/null +++ b/azure-cognitiveservices-search-visualsearch/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-search-visualsearch" +package_nspkg = "azure-cognitiveservices-search-nspkg" +package_pprint_name = "Cognitive Services Visual Search" +package_doc_id = "cognitive-services" +is_stable = false +is_arm = false diff --git a/azure-cognitiveservices-search-visualsearch/setup.cfg b/azure-cognitiveservices-search-visualsearch/setup.cfg index 4659976f991c..3c6e79cf31da 100644 --- a/azure-cognitiveservices-search-visualsearch/setup.cfg +++ b/azure-cognitiveservices-search-visualsearch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-search-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-search-visualsearch/setup.py b/azure-cognitiveservices-search-visualsearch/setup.py index c815f23999c0..1526e0ed3aa5 100644 --- a/azure-cognitiveservices-search-visualsearch/setup.py +++ b/azure-cognitiveservices-search-visualsearch/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-search-visualsearch" -PACKAGE_PPRINT_NAME = "Cognitive Services VisualSearch" +PACKAGE_PPRINT_NAME = "Cognitive Services Visual Search" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.search', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-search-nspkg'], + } ) diff --git a/azure-cognitiveservices-search-websearch/MANIFEST.in b/azure-cognitiveservices-search-websearch/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-search-websearch/MANIFEST.in +++ b/azure-cognitiveservices-search-websearch/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-search-websearch/README.rst b/azure-cognitiveservices-search-websearch/README.rst index 1c4ca851b42c..6963a49a6ece 100644 --- a/azure-cognitiveservices-search-websearch/README.rst +++ b/azure-cognitiveservices-search-websearch/README.rst @@ -1,9 +1,9 @@ Microsoft Azure SDK for Python ============================== -This is the Microsoft Azure Cognitive Services WebSearch Client Library. +This is the Microsoft Azure Cognitive Services Web Search Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -30,9 +30,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `Web Search +For code examples, see `Cognitive Services Web Search `__ -on readthedocs.org. +on docs.microsoft.com. Provide Feedback diff --git a/azure-cognitiveservices-search-websearch/azure/__init__.py b/azure-cognitiveservices-search-websearch/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-websearch/azure/__init__.py +++ b/azure-cognitiveservices-search-websearch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-websearch/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-search-websearch/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-websearch/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-search-websearch/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-websearch/azure/cognitiveservices/search/__init__.py b/azure-cognitiveservices-search-websearch/azure/cognitiveservices/search/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-search-websearch/azure/cognitiveservices/search/__init__.py +++ b/azure-cognitiveservices-search-websearch/azure/cognitiveservices/search/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-search-websearch/azure_bdist_wheel.py b/azure-cognitiveservices-search-websearch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-search-websearch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-search-websearch/sdk_packaging.toml b/azure-cognitiveservices-search-websearch/sdk_packaging.toml new file mode 100644 index 000000000000..ee6f13253357 --- /dev/null +++ b/azure-cognitiveservices-search-websearch/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-search-websearch" +package_nspkg = "azure-cognitiveservices-search-nspkg" +package_pprint_name = "Cognitive Services Web Search" +package_doc_id = "cognitive-services" +is_stable = true +is_arm = false diff --git a/azure-cognitiveservices-search-websearch/setup.cfg b/azure-cognitiveservices-search-websearch/setup.cfg index 4659976f991c..3c6e79cf31da 100644 --- a/azure-cognitiveservices-search-websearch/setup.cfg +++ b/azure-cognitiveservices-search-websearch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-search-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-search-websearch/setup.py b/azure-cognitiveservices-search-websearch/setup.py index 27dfd82c49a0..c92251cf0f5c 100644 --- a/azure-cognitiveservices-search-websearch/setup.py +++ b/azure-cognitiveservices-search-websearch/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-search-websearch" -PACKAGE_PPRINT_NAME = "Cognitive Services WebSearch" +PACKAGE_PPRINT_NAME = "Cognitive Services Web Search" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.search', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-search-nspkg'], + } ) diff --git a/azure-cognitiveservices-vision-computervision/MANIFEST.in b/azure-cognitiveservices-vision-computervision/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-vision-computervision/MANIFEST.in +++ b/azure-cognitiveservices-vision-computervision/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-vision-computervision/README.rst b/azure-cognitiveservices-vision-computervision/README.rst index ee1ba86cf7c0..eee101b4fb52 100644 --- a/azure-cognitiveservices-vision-computervision/README.rst +++ b/azure-cognitiveservices-vision-computervision/README.rst @@ -3,7 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Cognitive Services Computer Vision Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. diff --git a/azure-cognitiveservices-vision-computervision/azure/__init__.py b/azure-cognitiveservices-vision-computervision/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-computervision/azure/__init__.py +++ b/azure-cognitiveservices-vision-computervision/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-computervision/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-vision-computervision/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-computervision/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-vision-computervision/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-computervision/azure/cognitiveservices/vision/__init__.py b/azure-cognitiveservices-vision-computervision/azure/cognitiveservices/vision/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-computervision/azure/cognitiveservices/vision/__init__.py +++ b/azure-cognitiveservices-vision-computervision/azure/cognitiveservices/vision/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-computervision/azure_bdist_wheel.py b/azure-cognitiveservices-vision-computervision/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-vision-computervision/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-vision-computervision/setup.cfg b/azure-cognitiveservices-vision-computervision/setup.cfg index 6197b40d106e..3c6e79cf31da 100644 --- a/azure-cognitiveservices-vision-computervision/setup.cfg +++ b/azure-cognitiveservices-vision-computervision/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-vision-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-vision-computervision/setup.py b/azure-cognitiveservices-vision-computervision/setup.py index 7402c1967c37..500702758cf2 100644 --- a/azure-cognitiveservices-vision-computervision/setup.py +++ b/azure-cognitiveservices-vision-computervision/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-vision-computervision" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.vision', + ]), install_requires=[ - 'msrest>=0.4.29,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-vision-nspkg'], + } ) diff --git a/azure-cognitiveservices-vision-contentmoderator/HISTORY.rst b/azure-cognitiveservices-vision-contentmoderator/HISTORY.rst index 08363ec0cb0f..357583dc74ed 100644 --- a/azure-cognitiveservices-vision-contentmoderator/HISTORY.rst +++ b/azure-cognitiveservices-vision-contentmoderator/HISTORY.rst @@ -3,6 +3,14 @@ Release History =============== +0.2.0 (2018-XX-XX) +++++++++++++++++++ + +*Unreleased* + +- Models refactoring. More details to come. + + 0.1.0 (2018-02-06) ++++++++++++++++++ diff --git a/azure-cognitiveservices-vision-contentmoderator/MANIFEST.in b/azure-cognitiveservices-vision-contentmoderator/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-vision-contentmoderator/MANIFEST.in +++ b/azure-cognitiveservices-vision-contentmoderator/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-vision-contentmoderator/README.rst b/azure-cognitiveservices-vision-contentmoderator/README.rst index 71b89a9adbf1..655bc03184d3 100644 --- a/azure-cognitiveservices-vision-contentmoderator/README.rst +++ b/azure-cognitiveservices-vision-contentmoderator/README.rst @@ -3,13 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Cognitive Services Content Moderator Client Library. -Azure Resource Manager (ARM) is the next generation of management APIs that -replace the old Azure Service Management (ASM). - -This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6. - -For the older Azure Service Management (ASM) libraries, see -`azure-servicemanagement-legacy `__ library. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -33,6 +27,14 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: pip uninstall azure +Usage +===== + +For code examples, see `Cognitive Services Content Moderator +`__ +on docs.microsoft.com. + + Provide Feedback ================ diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/__init__.py b/azure-cognitiveservices-vision-contentmoderator/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-contentmoderator/azure/__init__.py +++ b/azure-cognitiveservices-vision-contentmoderator/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/__init__.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/__init__.py +++ b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/__init__.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/__init__.py index a56377ebc3b5..47f0599d7a68 100644 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/__init__.py +++ b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/__init__.py @@ -9,126 +9,189 @@ # regenerated. # -------------------------------------------------------------------------- -from .key_value_pair import KeyValuePair -from .tag import Tag -from .frame import Frame -from .frames import Frames -from .score import Score -from .classification import Classification -from .status import Status -from .email import Email -from .ipa import IPA -from .phone import Phone -from .address import Address -from .pii import PII -from .detected_terms import DetectedTerms -from .screen import Screen -from .face import Face -from .found_faces import FoundFaces -from .candidate import Candidate -from .ocr import OCR -from .evaluate import Evaluate -from .match import Match -from .match_response import MatchResponse -from .detected_language import DetectedLanguage -from .image_list_metadata import ImageListMetadata -from .image_list import ImageList -from .term_list_metadata import TermListMetadata -from .term_list import TermList -from .refresh_index_advanced_info_item import RefreshIndexAdvancedInfoItem -from .refresh_index import RefreshIndex -from .image_additional_info_item import ImageAdditionalInfoItem -from .image import Image -from .image_ids import ImageIds -from .terms_in_list import TermsInList -from .terms_data import TermsData -from .terms_paging import TermsPaging -from .terms import Terms -from .review import Review -from .job_execution_report_details import JobExecutionReportDetails -from .job import Job -from .job_list_result import JobListResult -from .job_id import JobId -from .error import Error -from .api_error import APIError, APIErrorException -from .body_metadata import BodyMetadata -from .body import Body -from .create_review_body_item_metadata_item import CreateReviewBodyItemMetadataItem -from .create_review_body_item import CreateReviewBodyItem -from .content import Content -from .transcript_moderation_body_item_terms_item import TranscriptModerationBodyItemTermsItem -from .transcript_moderation_body_item import TranscriptModerationBodyItem -from .body_model import BodyModel -from .create_video_reviews_body_item_video_frames_item_reviewer_result_tags_item import CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem -from .create_video_reviews_body_item_video_frames_item_metadata_item import CreateVideoReviewsBodyItemVideoFramesItemMetadataItem -from .create_video_reviews_body_item_video_frames_item import CreateVideoReviewsBodyItemVideoFramesItem -from .create_video_reviews_body_item_metadata_item import CreateVideoReviewsBodyItemMetadataItem -from .create_video_reviews_body_item import CreateVideoReviewsBodyItem -from .video_frame_body_item_reviewer_result_tags_item import VideoFrameBodyItemReviewerResultTagsItem -from .video_frame_body_item_metadata_item import VideoFrameBodyItemMetadataItem -from .video_frame_body_item import VideoFrameBodyItem -from .content_moderator_client_enums import ( - AzureRegionBaseUrl, -) -__all__ = [ - 'KeyValuePair', - 'Tag', - 'Frame', - 'Frames', - 'Score', - 'Classification', - 'Status', - 'Email', - 'IPA', - 'Phone', +try: + from ._models_py3 import APIError + from ._models_py3 import Address + from ._models_py3 import Body + from ._models_py3 import BodyMetadata + from ._models_py3 import BodyModel + from ._models_py3 import Candidate + from ._models_py3 import Classification + from ._models_py3 import Content + from ._models_py3 import CreateReviewBodyItem + from ._models_py3 import CreateReviewBodyItemMetadataItem + from ._models_py3 import CreateVideoReviewsBodyItem + from ._models_py3 import CreateVideoReviewsBodyItemMetadataItem + from ._models_py3 import CreateVideoReviewsBodyItemVideoFramesItem + from ._models_py3 import CreateVideoReviewsBodyItemVideoFramesItemMetadataItem + from ._models_py3 import CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem + from ._models_py3 import DetectedLanguage + from ._models_py3 import DetectedTerms + from ._models_py3 import Email + from ._models_py3 import Error + from ._models_py3 import Evaluate + from ._models_py3 import Face + from ._models_py3 import FoundFaces + from ._models_py3 import Frame + from ._models_py3 import Frames + from ._models_py3 import IPA + from ._models_py3 import Image + from ._models_py3 import ImageAdditionalInfoItem + from ._models_py3 import ImageIds + from ._models_py3 import ImageList + from ._models_py3 import ImageListMetadata + from ._models_py3 import Job + from ._models_py3 import JobExecutionReportDetails + from ._models_py3 import JobId + from ._models_py3 import JobListResult + from ._models_py3 import KeyValuePair + from ._models_py3 import Match + from ._models_py3 import MatchResponse + from ._models_py3 import OCR + from ._models_py3 import PII + from ._models_py3 import Phone + from ._models_py3 import RefreshIndex + from ._models_py3 import RefreshIndexAdvancedInfoItem + from ._models_py3 import Review + from ._models_py3 import Score + from ._models_py3 import Screen + from ._models_py3 import Status + from ._models_py3 import Tag + from ._models_py3 import TermList + from ._models_py3 import TermListMetadata + from ._models_py3 import Terms + from ._models_py3 import TermsData + from ._models_py3 import TermsInList + from ._models_py3 import TermsPaging + from ._models_py3 import TranscriptModerationBodyItem + from ._models_py3 import TranscriptModerationBodyItemTermsItem + from ._models_py3 import VideoFrameBodyItem + from ._models_py3 import VideoFrameBodyItemMetadataItem + from ._models_py3 import VideoFrameBodyItemReviewerResultTagsItem + from ._models_py3 import APIErrorException +except (SyntaxError, ImportError): + from ._models import APIError + from ._models import Address + from ._models import Body + from ._models import BodyMetadata + from ._models import BodyModel + from ._models import Candidate + from ._models import Classification + from ._models import Content + from ._models import CreateReviewBodyItem + from ._models import CreateReviewBodyItemMetadataItem + from ._models import CreateVideoReviewsBodyItem + from ._models import CreateVideoReviewsBodyItemMetadataItem + from ._models import CreateVideoReviewsBodyItemVideoFramesItem + from ._models import CreateVideoReviewsBodyItemVideoFramesItemMetadataItem + from ._models import CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem + from ._models import DetectedLanguage + from ._models import DetectedTerms + from ._models import Email + from ._models import Error + from ._models import Evaluate + from ._models import Face + from ._models import FoundFaces + from ._models import Frame + from ._models import Frames + from ._models import IPA + from ._models import Image + from ._models import ImageAdditionalInfoItem + from ._models import ImageIds + from ._models import ImageList + from ._models import ImageListMetadata + from ._models import Job + from ._models import JobExecutionReportDetails + from ._models import JobId + from ._models import JobListResult + from ._models import KeyValuePair + from ._models import Match + from ._models import MatchResponse + from ._models import OCR + from ._models import PII + from ._models import Phone + from ._models import RefreshIndex + from ._models import RefreshIndexAdvancedInfoItem + from ._models import Review + from ._models import Score + from ._models import Screen + from ._models import Status + from ._models import Tag + from ._models import TermList + from ._models import TermListMetadata + from ._models import Terms + from ._models import TermsData + from ._models import TermsInList + from ._models import TermsPaging + from ._models import TranscriptModerationBodyItem + from ._models import TranscriptModerationBodyItemTermsItem + from ._models import VideoFrameBodyItem + from ._models import VideoFrameBodyItemMetadataItem + from ._models import VideoFrameBodyItemReviewerResultTagsItem + from ._models import APIErrorException +from ._content_moderator_client_enums import AzureRegionBaseUrl + + +__all__=[ + 'APIError', 'Address', - 'PII', + 'Body', + 'BodyMetadata', + 'BodyModel', + 'Candidate', + 'Classification', + 'Content', + 'CreateReviewBodyItem', + 'CreateReviewBodyItemMetadataItem', + 'CreateVideoReviewsBodyItem', + 'CreateVideoReviewsBodyItemMetadataItem', + 'CreateVideoReviewsBodyItemVideoFramesItem', + 'CreateVideoReviewsBodyItemVideoFramesItemMetadataItem', + 'CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem', + 'DetectedLanguage', 'DetectedTerms', - 'Screen', + 'Email', + 'Error', + 'Evaluate', 'Face', 'FoundFaces', - 'Candidate', - 'OCR', - 'Evaluate', + 'Frame', + 'Frames', + 'IPA', + 'Image', + 'ImageAdditionalInfoItem', + 'ImageIds', + 'ImageList', + 'ImageListMetadata', + 'Job', + 'JobExecutionReportDetails', + 'JobId', + 'JobListResult', + 'KeyValuePair', 'Match', 'MatchResponse', - 'DetectedLanguage', - 'ImageListMetadata', - 'ImageList', - 'TermListMetadata', - 'TermList', - 'RefreshIndexAdvancedInfoItem', + 'OCR', + 'PII', + 'Phone', 'RefreshIndex', - 'ImageAdditionalInfoItem', - 'Image', - 'ImageIds', - 'TermsInList', + 'RefreshIndexAdvancedInfoItem', + 'Review', + 'Score', + 'Screen', + 'Status', + 'Tag', + 'TermList', + 'TermListMetadata', + 'Terms', 'TermsData', + 'TermsInList', 'TermsPaging', - 'Terms', - 'Review', - 'JobExecutionReportDetails', - 'Job', - 'JobListResult', - 'JobId', - 'Error', - 'APIError', 'APIErrorException', - 'BodyMetadata', - 'Body', - 'CreateReviewBodyItemMetadataItem', - 'CreateReviewBodyItem', - 'Content', - 'TranscriptModerationBodyItemTermsItem', 'TranscriptModerationBodyItem', - 'BodyModel', - 'CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem', - 'CreateVideoReviewsBodyItemVideoFramesItemMetadataItem', - 'CreateVideoReviewsBodyItemVideoFramesItem', - 'CreateVideoReviewsBodyItemMetadataItem', - 'CreateVideoReviewsBodyItem', - 'VideoFrameBodyItemReviewerResultTagsItem', - 'VideoFrameBodyItemMetadataItem', + 'TranscriptModerationBodyItemTermsItem', 'VideoFrameBodyItem', + 'VideoFrameBodyItemMetadataItem', + 'VideoFrameBodyItemReviewerResultTagsItem', + 'APIErrorException', 'AzureRegionBaseUrl', ] diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/content_moderator_client_enums.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_content_moderator_client_enums.py similarity index 100% rename from azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/content_moderator_client_enums.py rename to azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_content_moderator_client_enums.py diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_models.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_models.py new file mode 100644 index 000000000000..34182d72fdb9 --- /dev/null +++ b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_models.py @@ -0,0 +1,1661 @@ +# 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 + + +class APIError(Model): + """Error information returned by the API. + + :param error: + :type error: ~azure.cognitiveservices.vision.contentmoderator.models.Error + """ + + _attribute_map = { + 'error': {'key': 'Error', 'type': 'Error'}, + } + + def __init__(self, error=None): + super(APIError, self).__init__() + self.error = error + + +class APIErrorException(HttpOperationError): + """Server responsed with exception of type: 'APIError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(APIErrorException, self).__init__(deserialize, response, 'APIError', *args) + + +class Address(Model): + """Address details. + + :param text: Detected Address. + :type text: str + :param index: Index(Location) of the Address in the input text content. + :type index: int + """ + + _attribute_map = { + 'text': {'key': 'Text', 'type': 'str'}, + 'index': {'key': 'Index', 'type': 'int'}, + } + + def __init__(self, text=None, index=None): + super(Address, self).__init__() + self.text = text + self.index = index + + +class Body(Model): + """Body. + + :param name: Name of the list. + :type name: str + :param description: Description of the list. + :type description: str + :param metadata: Metadata of the list. + :type metadata: + ~azure.cognitiveservices.vision.contentmoderator.models.BodyMetadata + """ + + _attribute_map = { + 'name': {'key': 'Name', 'type': 'str'}, + 'description': {'key': 'Description', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': 'BodyMetadata'}, + } + + def __init__(self, name=None, description=None, metadata=None): + super(Body, self).__init__() + self.name = name + self.description = description + self.metadata = metadata + + +class BodyMetadata(Model): + """Metadata of the list. + + :param key_one: Optional key value pair to describe your list. + :type key_one: str + :param key_two: Optional key value pair to describe your list. + :type key_two: str + """ + + _attribute_map = { + 'key_one': {'key': 'Key One', 'type': 'str'}, + 'key_two': {'key': 'Key Two', 'type': 'str'}, + } + + def __init__(self, key_one=None, key_two=None): + super(BodyMetadata, self).__init__() + self.key_one = key_one + self.key_two = key_two + + +class BodyModel(Model): + """BodyModel. + + :param data_representation: Default value: "URL" . + :type data_representation: str + :param value: + :type value: str + """ + + _attribute_map = { + 'data_representation': {'key': 'DataRepresentation', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, data_representation="URL", value=None): + super(BodyModel, self).__init__() + self.data_representation = data_representation + self.value = value + + +class Candidate(Model): + """OCR candidate text. + + :param text: The text found. + :type text: str + :param confidence: The confidence level. + :type confidence: float + """ + + _attribute_map = { + 'text': {'key': 'Text', 'type': 'str'}, + 'confidence': {'key': 'Confidence', 'type': 'float'}, + } + + def __init__(self, text=None, confidence=None): + super(Candidate, self).__init__() + self.text = text + self.confidence = confidence + + +class Classification(Model): + """The classification details of the text. + + :param category1: + :type category1: + ~azure.cognitiveservices.vision.contentmoderator.models.Score + :param category2: + :type category2: + ~azure.cognitiveservices.vision.contentmoderator.models.Score + :param category3: + :type category3: + ~azure.cognitiveservices.vision.contentmoderator.models.Score + :param review_recommended: The review recommended flag. + :type review_recommended: bool + """ + + _attribute_map = { + 'category1': {'key': 'Category1', 'type': 'Score'}, + 'category2': {'key': 'Category2', 'type': 'Score'}, + 'category3': {'key': 'Category3', 'type': 'Score'}, + 'review_recommended': {'key': 'ReviewRecommended', 'type': 'bool'}, + } + + def __init__(self, category1=None, category2=None, category3=None, review_recommended=None): + super(Classification, self).__init__() + self.category1 = category1 + self.category2 = category2 + self.category3 = category3 + self.review_recommended = review_recommended + + +class Content(Model): + """Content. + + :param content_value: Content to evaluate for a job. + :type content_value: str + """ + + _validation = { + 'content_value': {'required': True}, + } + + _attribute_map = { + 'content_value': {'key': 'ContentValue', 'type': 'str'}, + } + + def __init__(self, content_value): + super(Content, self).__init__() + self.content_value = content_value + + +class CreateReviewBodyItem(Model): + """Schema items of the body. + + :param type: Type of the content. Possible values include: 'Image', 'Text' + :type type: str or + ~azure.cognitiveservices.vision.contentmoderator.models.enum + :param content: Content to review. + :type content: str + :param content_id: Content Identifier. + :type content_id: str + :param callback_endpoint: Optional CallbackEndpoint. + :type callback_endpoint: str + :param metadata: Optional metadata details. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateReviewBodyItemMetadataItem] + """ + + _validation = { + 'type': {'required': True}, + 'content': {'required': True}, + 'content_id': {'required': True}, + } + + _attribute_map = { + 'type': {'key': 'Type', 'type': 'str'}, + 'content': {'key': 'Content', 'type': 'str'}, + 'content_id': {'key': 'ContentId', 'type': 'str'}, + 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': '[CreateReviewBodyItemMetadataItem]'}, + } + + def __init__(self, type, content, content_id, callback_endpoint=None, metadata=None): + super(CreateReviewBodyItem, self).__init__() + self.type = type + self.content = content + self.content_id = content_id + self.callback_endpoint = callback_endpoint + self.metadata = metadata + + +class CreateReviewBodyItemMetadataItem(Model): + """CreateReviewBodyItemMetadataItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(CreateReviewBodyItemMetadataItem, self).__init__() + self.key = key + self.value = value + + +class CreateVideoReviewsBodyItem(Model): + """Schema items of the body. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param video_frames: Optional metadata details. + :type video_frames: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItem] + :param metadata: Optional metadata details. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemMetadataItem] + :ivar type: Type of the content. Default value: "Video" . + :vartype type: str + :param content: Video content url to review. + :type content: str + :param content_id: Content Identifier. + :type content_id: str + :param status: Status of the video(Complete,Unpublished,Pending). Possible + values include: 'Complete', 'Unpublished', 'Pending' + :type status: str or + ~azure.cognitiveservices.vision.contentmoderator.models.enum + :param timescale: Timescale of the video. + :type timescale: int + :param callback_endpoint: Optional CallbackEndpoint. + :type callback_endpoint: str + """ + + _validation = { + 'type': {'required': True, 'constant': True}, + 'content': {'required': True}, + 'content_id': {'required': True}, + 'status': {'required': True}, + } + + _attribute_map = { + 'video_frames': {'key': 'VideoFrames', 'type': '[CreateVideoReviewsBodyItemVideoFramesItem]'}, + 'metadata': {'key': 'Metadata', 'type': '[CreateVideoReviewsBodyItemMetadataItem]'}, + 'type': {'key': 'Type', 'type': 'str'}, + 'content': {'key': 'Content', 'type': 'str'}, + 'content_id': {'key': 'ContentId', 'type': 'str'}, + 'status': {'key': 'Status', 'type': 'str'}, + 'timescale': {'key': 'Timescale', 'type': 'int'}, + 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, + } + + type = "Video" + + def __init__(self, content, content_id, status, video_frames=None, metadata=None, timescale=None, callback_endpoint=None): + super(CreateVideoReviewsBodyItem, self).__init__() + self.video_frames = video_frames + self.metadata = metadata + self.content = content + self.content_id = content_id + self.status = status + self.timescale = timescale + self.callback_endpoint = callback_endpoint + + +class CreateVideoReviewsBodyItemMetadataItem(Model): + """CreateVideoReviewsBodyItemMetadataItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(CreateVideoReviewsBodyItemMetadataItem, self).__init__() + self.key = key + self.value = value + + +class CreateVideoReviewsBodyItemVideoFramesItem(Model): + """CreateVideoReviewsBodyItemVideoFramesItem. + + :param id: Id of the frame. + :type id: str + :param timestamp: Timestamp of the frame. + :type timestamp: int + :param frame_image: Frame image Url. + :type frame_image: str + :param reviewer_result_tags: + :type reviewer_result_tags: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem] + :param metadata: Optional metadata details. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItemMetadataItem] + """ + + _validation = { + 'id': {'required': True}, + 'timestamp': {'required': True}, + 'frame_image': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'Id', 'type': 'str'}, + 'timestamp': {'key': 'Timestamp', 'type': 'int'}, + 'frame_image': {'key': 'FrameImage', 'type': 'str'}, + 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem]'}, + 'metadata': {'key': 'Metadata', 'type': '[CreateVideoReviewsBodyItemVideoFramesItemMetadataItem]'}, + } + + def __init__(self, id, timestamp, frame_image, reviewer_result_tags=None, metadata=None): + super(CreateVideoReviewsBodyItemVideoFramesItem, self).__init__() + self.id = id + self.timestamp = timestamp + self.frame_image = frame_image + self.reviewer_result_tags = reviewer_result_tags + self.metadata = metadata + + +class CreateVideoReviewsBodyItemVideoFramesItemMetadataItem(Model): + """CreateVideoReviewsBodyItemVideoFramesItemMetadataItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(CreateVideoReviewsBodyItemVideoFramesItemMetadataItem, self).__init__() + self.key = key + self.value = value + + +class CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem(Model): + """CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem, self).__init__() + self.key = key + self.value = value + + +class DetectedLanguage(Model): + """Detect language result. + + :param detected_language: The detected language. + :type detected_language: str + :param status: The detect language status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: The tracking id. + :type tracking_id: str + """ + + _attribute_map = { + 'detected_language': {'key': 'DetectedLanguage', 'type': 'str'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, detected_language=None, status=None, tracking_id=None): + super(DetectedLanguage, self).__init__() + self.detected_language = detected_language + self.status = status + self.tracking_id = tracking_id + + +class DetectedTerms(Model): + """Detected Terms details. + + :param index: Index(Location) of the detected profanity term in the input + text content. + :type index: int + :param original_index: Original Index(Location) of the detected profanity + term in the input text content. + :type original_index: int + :param list_id: Matched Terms list Id. + :type list_id: int + :param term: Detected profanity term. + :type term: str + """ + + _attribute_map = { + 'index': {'key': 'Index', 'type': 'int'}, + 'original_index': {'key': 'OriginalIndex', 'type': 'int'}, + 'list_id': {'key': 'ListId', 'type': 'int'}, + 'term': {'key': 'Term', 'type': 'str'}, + } + + def __init__(self, index=None, original_index=None, list_id=None, term=None): + super(DetectedTerms, self).__init__() + self.index = index + self.original_index = original_index + self.list_id = list_id + self.term = term + + +class Email(Model): + """Email Address details. + + :param detected: Detected Email Address from the input text content. + :type detected: str + :param sub_type: Subtype of the detected Email Address. + :type sub_type: str + :param text: Email Address in the input text content. + :type text: str + :param index: Index(Location) of the Email address in the input text + content. + :type index: int + """ + + _attribute_map = { + 'detected': {'key': 'Detected', 'type': 'str'}, + 'sub_type': {'key': 'SubType', 'type': 'str'}, + 'text': {'key': 'Text', 'type': 'str'}, + 'index': {'key': 'Index', 'type': 'int'}, + } + + def __init__(self, detected=None, sub_type=None, text=None, index=None): + super(Email, self).__init__() + self.detected = detected + self.sub_type = sub_type + self.text = text + self.index = index + + +class Error(Model): + """Error body. + + :param code: + :type code: str + :param message: + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'Code', 'type': 'str'}, + 'message': {'key': 'Message', 'type': 'str'}, + } + + def __init__(self, code=None, message=None): + super(Error, self).__init__() + self.code = code + self.message = message + + +class Evaluate(Model): + """Evaluate response object. + + :param cache_id: The cache id. + :type cache_id: str + :param result: Evaluate result. + :type result: bool + :param tracking_id: The tracking id. + :type tracking_id: str + :param adult_classification_score: The adult classification score. + :type adult_classification_score: float + :param is_image_adult_classified: Indicates if an image is classified as + adult. + :type is_image_adult_classified: bool + :param racy_classification_score: The racy classication score. + :type racy_classification_score: float + :param is_image_racy_classified: Indicates if the image is classified as + racy. + :type is_image_racy_classified: bool + :param advanced_info: The advanced info. + :type advanced_info: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param status: The evaluate status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + """ + + _attribute_map = { + 'cache_id': {'key': 'CacheID', 'type': 'str'}, + 'result': {'key': 'Result', 'type': 'bool'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + 'adult_classification_score': {'key': 'AdultClassificationScore', 'type': 'float'}, + 'is_image_adult_classified': {'key': 'IsImageAdultClassified', 'type': 'bool'}, + 'racy_classification_score': {'key': 'RacyClassificationScore', 'type': 'float'}, + 'is_image_racy_classified': {'key': 'IsImageRacyClassified', 'type': 'bool'}, + 'advanced_info': {'key': 'AdvancedInfo', 'type': '[KeyValuePair]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + } + + def __init__(self, cache_id=None, result=None, tracking_id=None, adult_classification_score=None, is_image_adult_classified=None, racy_classification_score=None, is_image_racy_classified=None, advanced_info=None, status=None): + super(Evaluate, self).__init__() + self.cache_id = cache_id + self.result = result + self.tracking_id = tracking_id + self.adult_classification_score = adult_classification_score + self.is_image_adult_classified = is_image_adult_classified + self.racy_classification_score = racy_classification_score + self.is_image_racy_classified = is_image_racy_classified + self.advanced_info = advanced_info + self.status = status + + +class Face(Model): + """Coordinates to the found face. + + :param bottom: The bottom coordinate. + :type bottom: int + :param left: The left coordinate. + :type left: int + :param right: The right coordinate. + :type right: int + :param top: The top coordinate. + :type top: int + """ + + _attribute_map = { + 'bottom': {'key': 'Bottom', 'type': 'int'}, + 'left': {'key': 'Left', 'type': 'int'}, + 'right': {'key': 'Right', 'type': 'int'}, + 'top': {'key': 'Top', 'type': 'int'}, + } + + def __init__(self, bottom=None, left=None, right=None, top=None): + super(Face, self).__init__() + self.bottom = bottom + self.left = left + self.right = right + self.top = top + + +class FoundFaces(Model): + """Request object the contains found faces. + + :param status: The evaluate status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: The tracking id. + :type tracking_id: str + :param cache_id: The cache id. + :type cache_id: str + :param result: True if result was found. + :type result: bool + :param count: Number of faces found. + :type count: int + :param advanced_info: The advanced info. + :type advanced_info: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param faces: The list of faces. + :type faces: + list[~azure.cognitiveservices.vision.contentmoderator.models.Face] + """ + + _attribute_map = { + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + 'cache_id': {'key': 'CacheId', 'type': 'str'}, + 'result': {'key': 'Result', 'type': 'bool'}, + 'count': {'key': 'Count', 'type': 'int'}, + 'advanced_info': {'key': 'AdvancedInfo', 'type': '[KeyValuePair]'}, + 'faces': {'key': 'Faces', 'type': '[Face]'}, + } + + def __init__(self, status=None, tracking_id=None, cache_id=None, result=None, count=None, advanced_info=None, faces=None): + super(FoundFaces, self).__init__() + self.status = status + self.tracking_id = tracking_id + self.cache_id = cache_id + self.result = result + self.count = count + self.advanced_info = advanced_info + self.faces = faces + + +class Frame(Model): + """Video frame property details. + + :param timestamp: Timestamp of the frame. + :type timestamp: str + :param frame_image: Frame image. + :type frame_image: str + :param metadata: Array of KeyValue. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param reviewer_result_tags: Reviewer result tags. + :type reviewer_result_tags: + list[~azure.cognitiveservices.vision.contentmoderator.models.Tag] + """ + + _attribute_map = { + 'timestamp': {'key': 'Timestamp', 'type': 'str'}, + 'frame_image': {'key': 'FrameImage', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, + 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[Tag]'}, + } + + def __init__(self, timestamp=None, frame_image=None, metadata=None, reviewer_result_tags=None): + super(Frame, self).__init__() + self.timestamp = timestamp + self.frame_image = frame_image + self.metadata = metadata + self.reviewer_result_tags = reviewer_result_tags + + +class Frames(Model): + """The response for a Get Frames request. + + :param review_id: Id of the review. + :type review_id: str + :param video_frames: + :type video_frames: + list[~azure.cognitiveservices.vision.contentmoderator.models.Frame] + """ + + _attribute_map = { + 'review_id': {'key': 'ReviewId', 'type': 'str'}, + 'video_frames': {'key': 'VideoFrames', 'type': '[Frame]'}, + } + + def __init__(self, review_id=None, video_frames=None): + super(Frames, self).__init__() + self.review_id = review_id + self.video_frames = video_frames + + +class IPA(Model): + """IP Address details. + + :param sub_type: Subtype of the detected IP Address. + :type sub_type: str + :param text: Detected IP Address. + :type text: str + :param index: Index(Location) of the IP Address in the input text content. + :type index: int + """ + + _attribute_map = { + 'sub_type': {'key': 'SubType', 'type': 'str'}, + 'text': {'key': 'Text', 'type': 'str'}, + 'index': {'key': 'Index', 'type': 'int'}, + } + + def __init__(self, sub_type=None, text=None, index=None): + super(IPA, self).__init__() + self.sub_type = sub_type + self.text = text + self.index = index + + +class Image(Model): + """Image Properties. + + :param content_id: Content Id. + :type content_id: str + :param additional_info: Advanced info list. + :type additional_info: + list[~azure.cognitiveservices.vision.contentmoderator.models.ImageAdditionalInfoItem] + :param status: Status details. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: Tracking Id. + :type tracking_id: str + """ + + _attribute_map = { + 'content_id': {'key': 'ContentId', 'type': 'str'}, + 'additional_info': {'key': 'AdditionalInfo', 'type': '[ImageAdditionalInfoItem]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, content_id=None, additional_info=None, status=None, tracking_id=None): + super(Image, self).__init__() + self.content_id = content_id + self.additional_info = additional_info + self.status = status + self.tracking_id = tracking_id + + +class ImageAdditionalInfoItem(Model): + """ImageAdditionalInfoItem. + + :param key: Key parameter. + :type key: str + :param value: Value parameter. + :type value: str + """ + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key=None, value=None): + super(ImageAdditionalInfoItem, self).__init__() + self.key = key + self.value = value + + +class ImageIds(Model): + """Image Id properties. + + :param content_source: Source of the content. + :type content_source: str + :param content_ids: Id of the contents. + :type content_ids: list[int] + :param status: Get Image status. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: Tracking Id. + :type tracking_id: str + """ + + _attribute_map = { + 'content_source': {'key': 'ContentSource', 'type': 'str'}, + 'content_ids': {'key': 'ContentIds', 'type': '[int]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, content_source=None, content_ids=None, status=None, tracking_id=None): + super(ImageIds, self).__init__() + self.content_source = content_source + self.content_ids = content_ids + self.status = status + self.tracking_id = tracking_id + + +class ImageList(Model): + """Image List Properties. + + :param id: Image List Id. + :type id: int + :param name: Image List Name. + :type name: str + :param description: Description for image list. + :type description: str + :param metadata: Image List Metadata. + :type metadata: + ~azure.cognitiveservices.vision.contentmoderator.models.ImageListMetadata + """ + + _attribute_map = { + 'id': {'key': 'Id', 'type': 'int'}, + 'name': {'key': 'Name', 'type': 'str'}, + 'description': {'key': 'Description', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': 'ImageListMetadata'}, + } + + def __init__(self, id=None, name=None, description=None, metadata=None): + super(ImageList, self).__init__() + self.id = id + self.name = name + self.description = description + self.metadata = metadata + + +class ImageListMetadata(Model): + """Image List Metadata. + + :param key_one: Optional Key value pair to describe your list. + :type key_one: str + :param key_two: Optional Key value pair to describe your list. + :type key_two: str + """ + + _attribute_map = { + 'key_one': {'key': 'Key One', 'type': 'str'}, + 'key_two': {'key': 'Key Two', 'type': 'str'}, + } + + def __init__(self, key_one=None, key_two=None): + super(ImageListMetadata, self).__init__() + self.key_one = key_one + self.key_two = key_two + + +class Job(Model): + """The Job object. + + :param id: The job id. + :type id: str + :param team_name: The team name associated with the job. + :type team_name: str + :param status: The status string (). + :type status: str + :param workflow_id: The Id of the workflow. + :type workflow_id: str + :param type: Type of the content. + :type type: str + :param call_back_endpoint: The callback endpoint. + :type call_back_endpoint: str + :param review_id: Review Id if one is created. + :type review_id: str + :param result_meta_data: Array of KeyValue pairs. + :type result_meta_data: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param job_execution_report: Job execution report- Array of KeyValue pairs + object. + :type job_execution_report: + list[~azure.cognitiveservices.vision.contentmoderator.models.JobExecutionReportDetails] + """ + + _attribute_map = { + 'id': {'key': 'Id', 'type': 'str'}, + 'team_name': {'key': 'TeamName', 'type': 'str'}, + 'status': {'key': 'Status', 'type': 'str'}, + 'workflow_id': {'key': 'WorkflowId', 'type': 'str'}, + 'type': {'key': 'Type', 'type': 'str'}, + 'call_back_endpoint': {'key': 'CallBackEndpoint', 'type': 'str'}, + 'review_id': {'key': 'ReviewId', 'type': 'str'}, + 'result_meta_data': {'key': 'ResultMetaData', 'type': '[KeyValuePair]'}, + 'job_execution_report': {'key': 'JobExecutionReport', 'type': '[JobExecutionReportDetails]'}, + } + + def __init__(self, id=None, team_name=None, status=None, workflow_id=None, type=None, call_back_endpoint=None, review_id=None, result_meta_data=None, job_execution_report=None): + super(Job, self).__init__() + self.id = id + self.team_name = team_name + self.status = status + self.workflow_id = workflow_id + self.type = type + self.call_back_endpoint = call_back_endpoint + self.review_id = review_id + self.result_meta_data = result_meta_data + self.job_execution_report = job_execution_report + + +class JobExecutionReportDetails(Model): + """Job Execution Report Values. + + :param ts: Time details. + :type ts: str + :param msg: Message details. + :type msg: str + """ + + _attribute_map = { + 'ts': {'key': 'Ts', 'type': 'str'}, + 'msg': {'key': 'Msg', 'type': 'str'}, + } + + def __init__(self, ts=None, msg=None): + super(JobExecutionReportDetails, self).__init__() + self.ts = ts + self.msg = msg + + +class JobId(Model): + """JobId. + + :param job_id: Id of the created job. + :type job_id: str + """ + + _attribute_map = { + 'job_id': {'key': 'JobId', 'type': 'str'}, + } + + def __init__(self, job_id=None): + super(JobId, self).__init__() + self.job_id = job_id + + +class JobListResult(Model): + """The list of job ids. + + :param value: The job id. + :type value: list[str] + """ + + _attribute_map = { + 'value': {'key': 'Value', 'type': '[str]'}, + } + + def __init__(self, value=None): + super(JobListResult, self).__init__() + self.value = value + + +class KeyValuePair(Model): + """The key value pair object properties. + + :param key: The key parameter. + :type key: str + :param value: The value parameter. + :type value: str + """ + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key=None, value=None): + super(KeyValuePair, self).__init__() + self.key = key + self.value = value + + +class Match(Model): + """The match details. + + :param score: Confidence score of the image match. + :type score: float + :param match_id: The match id. + :type match_id: int + :param source: The source. + :type source: str + :param tags: The tags for match details. + :type tags: list[int] + :param label: The label. + :type label: str + """ + + _attribute_map = { + 'score': {'key': 'Score', 'type': 'float'}, + 'match_id': {'key': 'MatchId', 'type': 'int'}, + 'source': {'key': 'Source', 'type': 'str'}, + 'tags': {'key': 'Tags', 'type': '[int]'}, + 'label': {'key': 'Label', 'type': 'str'}, + } + + def __init__(self, score=None, match_id=None, source=None, tags=None, label=None): + super(Match, self).__init__() + self.score = score + self.match_id = match_id + self.source = source + self.tags = tags + self.label = label + + +class MatchResponse(Model): + """The response for a Match request. + + :param tracking_id: The tracking id. + :type tracking_id: str + :param cache_id: The cache id. + :type cache_id: str + :param is_match: Indicates if there is a match. + :type is_match: bool + :param matches: The match details. + :type matches: + list[~azure.cognitiveservices.vision.contentmoderator.models.Match] + :param status: The evaluate status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + """ + + _attribute_map = { + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + 'cache_id': {'key': 'CacheID', 'type': 'str'}, + 'is_match': {'key': 'IsMatch', 'type': 'bool'}, + 'matches': {'key': 'Matches', 'type': '[Match]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + } + + def __init__(self, tracking_id=None, cache_id=None, is_match=None, matches=None, status=None): + super(MatchResponse, self).__init__() + self.tracking_id = tracking_id + self.cache_id = cache_id + self.is_match = is_match + self.matches = matches + self.status = status + + +class OCR(Model): + """Contains the text found in image for the language specified. + + :param status: The evaluate status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param metadata: Array of KeyValue. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param tracking_id: The tracking id. + :type tracking_id: str + :param cache_id: The cache id. + :type cache_id: str + :param language: The ISO 639-3 code. + :type language: str + :param text: The found text. + :type text: str + :param candidates: The list of candidate text. + :type candidates: + list[~azure.cognitiveservices.vision.contentmoderator.models.Candidate] + """ + + _attribute_map = { + 'status': {'key': 'Status', 'type': 'Status'}, + 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + 'cache_id': {'key': 'CacheId', 'type': 'str'}, + 'language': {'key': 'Language', 'type': 'str'}, + 'text': {'key': 'Text', 'type': 'str'}, + 'candidates': {'key': 'Candidates', 'type': '[Candidate]'}, + } + + def __init__(self, status=None, metadata=None, tracking_id=None, cache_id=None, language=None, text=None, candidates=None): + super(OCR, self).__init__() + self.status = status + self.metadata = metadata + self.tracking_id = tracking_id + self.cache_id = cache_id + self.language = language + self.text = text + self.candidates = candidates + + +class PII(Model): + """Personal Identifier Information details. + + :param email: + :type email: + list[~azure.cognitiveservices.vision.contentmoderator.models.Email] + :param ipa: + :type ipa: + list[~azure.cognitiveservices.vision.contentmoderator.models.IPA] + :param phone: + :type phone: + list[~azure.cognitiveservices.vision.contentmoderator.models.Phone] + :param address: + :type address: + list[~azure.cognitiveservices.vision.contentmoderator.models.Address] + """ + + _attribute_map = { + 'email': {'key': 'Email', 'type': '[Email]'}, + 'ipa': {'key': 'IPA', 'type': '[IPA]'}, + 'phone': {'key': 'Phone', 'type': '[Phone]'}, + 'address': {'key': 'Address', 'type': '[Address]'}, + } + + def __init__(self, email=None, ipa=None, phone=None, address=None): + super(PII, self).__init__() + self.email = email + self.ipa = ipa + self.phone = phone + self.address = address + + +class Phone(Model): + """Phone Property details. + + :param country_code: CountryCode of the detected Phone number. + :type country_code: str + :param text: Detected Phone number. + :type text: str + :param index: Index(Location) of the Phone number in the input text + content. + :type index: int + """ + + _attribute_map = { + 'country_code': {'key': 'CountryCode', 'type': 'str'}, + 'text': {'key': 'Text', 'type': 'str'}, + 'index': {'key': 'Index', 'type': 'int'}, + } + + def __init__(self, country_code=None, text=None, index=None): + super(Phone, self).__init__() + self.country_code = country_code + self.text = text + self.index = index + + +class RefreshIndex(Model): + """Refresh Index Response. + + :param content_source_id: Content source Id. + :type content_source_id: str + :param is_update_success: Update success status. + :type is_update_success: bool + :param advanced_info: Advanced info list. + :type advanced_info: + list[~azure.cognitiveservices.vision.contentmoderator.models.RefreshIndexAdvancedInfoItem] + :param status: Refresh index status. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: Tracking Id. + :type tracking_id: str + """ + + _attribute_map = { + 'content_source_id': {'key': 'ContentSourceId', 'type': 'str'}, + 'is_update_success': {'key': 'IsUpdateSuccess', 'type': 'bool'}, + 'advanced_info': {'key': 'AdvancedInfo', 'type': '[RefreshIndexAdvancedInfoItem]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, content_source_id=None, is_update_success=None, advanced_info=None, status=None, tracking_id=None): + super(RefreshIndex, self).__init__() + self.content_source_id = content_source_id + self.is_update_success = is_update_success + self.advanced_info = advanced_info + self.status = status + self.tracking_id = tracking_id + + +class RefreshIndexAdvancedInfoItem(Model): + """RefreshIndexAdvancedInfoItem. + + :param key_one: Key parameter to describe advanced info. + :type key_one: str + :param key_two: Key parameter to describe advanced info. + :type key_two: str + """ + + _attribute_map = { + 'key_one': {'key': 'Key One', 'type': 'str'}, + 'key_two': {'key': 'Key Two', 'type': 'str'}, + } + + def __init__(self, key_one=None, key_two=None): + super(RefreshIndexAdvancedInfoItem, self).__init__() + self.key_one = key_one + self.key_two = key_two + + +class Review(Model): + """The Review object. + + :param review_id: Id of the review. + :type review_id: str + :param sub_team: Name of the subteam. + :type sub_team: str + :param status: The status string (). + :type status: str + :param reviewer_result_tags: Array of KeyValue with Reviewer set Tags. + :type reviewer_result_tags: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param created_by: The reviewer name. + :type created_by: str + :param metadata: Array of KeyValue. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param type: The type of content. + :type type: str + :param content: The content value. + :type content: str + :param content_id: Id of the content. + :type content_id: str + :param callback_endpoint: The callback endpoint. + :type callback_endpoint: str + """ + + _attribute_map = { + 'review_id': {'key': 'ReviewId', 'type': 'str'}, + 'sub_team': {'key': 'SubTeam', 'type': 'str'}, + 'status': {'key': 'Status', 'type': 'str'}, + 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[KeyValuePair]'}, + 'created_by': {'key': 'CreatedBy', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, + 'type': {'key': 'Type', 'type': 'str'}, + 'content': {'key': 'Content', 'type': 'str'}, + 'content_id': {'key': 'ContentId', 'type': 'str'}, + 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, + } + + def __init__(self, review_id=None, sub_team=None, status=None, reviewer_result_tags=None, created_by=None, metadata=None, type=None, content=None, content_id=None, callback_endpoint=None): + super(Review, self).__init__() + self.review_id = review_id + self.sub_team = sub_team + self.status = status + self.reviewer_result_tags = reviewer_result_tags + self.created_by = created_by + self.metadata = metadata + self.type = type + self.content = content + self.content_id = content_id + self.callback_endpoint = callback_endpoint + + +class Score(Model): + """The classification score details of the text. Click here for more + details on category classification. + + :param score: The category score. + :type score: float + """ + + _attribute_map = { + 'score': {'key': 'Score', 'type': 'float'}, + } + + def __init__(self, score=None): + super(Score, self).__init__() + self.score = score + + +class Screen(Model): + """The response for a Screen text request. + + :param original_text: The original text. + :type original_text: str + :param normalized_text: The normalized text. + :type normalized_text: str + :param auto_corrected_text: The autocorrected text + :type auto_corrected_text: str + :param misrepresentation: The misrepresentation text. + :type misrepresentation: list[str] + :param classification: The classification details of the text. + :type classification: + ~azure.cognitiveservices.vision.contentmoderator.models.Classification + :param status: The evaluate status. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param pii: Personal Identifier Information details. + :type pii: ~azure.cognitiveservices.vision.contentmoderator.models.PII + :param language: Language of the input text content. + :type language: str + :param terms: + :type terms: + list[~azure.cognitiveservices.vision.contentmoderator.models.DetectedTerms] + :param tracking_id: Unique Content Moderator transaction Id. + :type tracking_id: str + """ + + _attribute_map = { + 'original_text': {'key': 'OriginalText', 'type': 'str'}, + 'normalized_text': {'key': 'NormalizedText', 'type': 'str'}, + 'auto_corrected_text': {'key': 'AutoCorrectedText', 'type': 'str'}, + 'misrepresentation': {'key': 'Misrepresentation', 'type': '[str]'}, + 'classification': {'key': 'Classification', 'type': 'Classification'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'pii': {'key': 'PII', 'type': 'PII'}, + 'language': {'key': 'Language', 'type': 'str'}, + 'terms': {'key': 'Terms', 'type': '[DetectedTerms]'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, original_text=None, normalized_text=None, auto_corrected_text=None, misrepresentation=None, classification=None, status=None, pii=None, language=None, terms=None, tracking_id=None): + super(Screen, self).__init__() + self.original_text = original_text + self.normalized_text = normalized_text + self.auto_corrected_text = auto_corrected_text + self.misrepresentation = misrepresentation + self.classification = classification + self.status = status + self.pii = pii + self.language = language + self.terms = terms + self.tracking_id = tracking_id + + +class Status(Model): + """Status properties. + + :param code: Status code. + :type code: int + :param description: Status description. + :type description: str + :param exception: Exception status. + :type exception: str + """ + + _attribute_map = { + 'code': {'key': 'Code', 'type': 'int'}, + 'description': {'key': 'Description', 'type': 'str'}, + 'exception': {'key': 'Exception', 'type': 'str'}, + } + + def __init__(self, code=None, description=None, exception=None): + super(Status, self).__init__() + self.code = code + self.description = description + self.exception = exception + + +class Tag(Model): + """Tag details. + + :param key: The key parameter. + :type key: str + :param value: The value parameter. + :type value: str + """ + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key=None, value=None): + super(Tag, self).__init__() + self.key = key + self.value = value + + +class TermList(Model): + """Term List Properties. + + :param id: Term list Id. + :type id: int + :param name: Term list name. + :type name: str + :param description: Description for term list. + :type description: str + :param metadata: Term list metadata. + :type metadata: + ~azure.cognitiveservices.vision.contentmoderator.models.TermListMetadata + """ + + _attribute_map = { + 'id': {'key': 'Id', 'type': 'int'}, + 'name': {'key': 'Name', 'type': 'str'}, + 'description': {'key': 'Description', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': 'TermListMetadata'}, + } + + def __init__(self, id=None, name=None, description=None, metadata=None): + super(TermList, self).__init__() + self.id = id + self.name = name + self.description = description + self.metadata = metadata + + +class TermListMetadata(Model): + """Term list metadata. + + :param key_one: Optional Key value pair to describe your list. + :type key_one: str + :param key_two: Optional Key value pair to describe your list. + :type key_two: str + """ + + _attribute_map = { + 'key_one': {'key': 'Key One', 'type': 'str'}, + 'key_two': {'key': 'Key Two', 'type': 'str'}, + } + + def __init__(self, key_one=None, key_two=None): + super(TermListMetadata, self).__init__() + self.key_one = key_one + self.key_two = key_two + + +class Terms(Model): + """Terms properties. + + :param data: Term data details. + :type data: + ~azure.cognitiveservices.vision.contentmoderator.models.TermsData + :param paging: Paging details. + :type paging: + ~azure.cognitiveservices.vision.contentmoderator.models.TermsPaging + """ + + _attribute_map = { + 'data': {'key': 'Data', 'type': 'TermsData'}, + 'paging': {'key': 'Paging', 'type': 'TermsPaging'}, + } + + def __init__(self, data=None, paging=None): + super(Terms, self).__init__() + self.data = data + self.paging = paging + + +class TermsData(Model): + """All term Id response properties. + + :param language: Language of the terms. + :type language: str + :param terms: List of terms. + :type terms: + list[~azure.cognitiveservices.vision.contentmoderator.models.TermsInList] + :param status: Term Status. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: Tracking Id. + :type tracking_id: str + """ + + _attribute_map = { + 'language': {'key': 'Language', 'type': 'str'}, + 'terms': {'key': 'Terms', 'type': '[TermsInList]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, language=None, terms=None, status=None, tracking_id=None): + super(TermsData, self).__init__() + self.language = language + self.terms = terms + self.status = status + self.tracking_id = tracking_id + + +class TermsInList(Model): + """Terms in list Id passed. + + :param term: Added term details. + :type term: str + """ + + _attribute_map = { + 'term': {'key': 'Term', 'type': 'str'}, + } + + def __init__(self, term=None): + super(TermsInList, self).__init__() + self.term = term + + +class TermsPaging(Model): + """Paging details. + + :param total: Total details. + :type total: int + :param limit: Limit details. + :type limit: int + :param offset: Offset details. + :type offset: int + :param returned: Returned text details. + :type returned: int + """ + + _attribute_map = { + 'total': {'key': 'Total', 'type': 'int'}, + 'limit': {'key': 'Limit', 'type': 'int'}, + 'offset': {'key': 'Offset', 'type': 'int'}, + 'returned': {'key': 'Returned', 'type': 'int'}, + } + + def __init__(self, total=None, limit=None, offset=None, returned=None): + super(TermsPaging, self).__init__() + self.total = total + self.limit = limit + self.offset = offset + self.returned = returned + + +class TranscriptModerationBodyItem(Model): + """Schema items of the body. + + :param timestamp: Timestamp of the image. + :type timestamp: str + :param terms: Optional metadata details. + :type terms: + list[~azure.cognitiveservices.vision.contentmoderator.models.TranscriptModerationBodyItemTermsItem] + """ + + _validation = { + 'timestamp': {'required': True}, + 'terms': {'required': True}, + } + + _attribute_map = { + 'timestamp': {'key': 'Timestamp', 'type': 'str'}, + 'terms': {'key': 'Terms', 'type': '[TranscriptModerationBodyItemTermsItem]'}, + } + + def __init__(self, timestamp, terms): + super(TranscriptModerationBodyItem, self).__init__() + self.timestamp = timestamp + self.terms = terms + + +class TranscriptModerationBodyItemTermsItem(Model): + """TranscriptModerationBodyItemTermsItem. + + :param index: Index of the word + :type index: int + :param term: Detected word. + :type term: str + """ + + _validation = { + 'index': {'required': True}, + 'term': {'required': True}, + } + + _attribute_map = { + 'index': {'key': 'Index', 'type': 'int'}, + 'term': {'key': 'Term', 'type': 'str'}, + } + + def __init__(self, index, term): + super(TranscriptModerationBodyItemTermsItem, self).__init__() + self.index = index + self.term = term + + +class VideoFrameBodyItem(Model): + """Schema items of the body. + + :param timestamp: Timestamp of the frame. + :type timestamp: str + :param frame_image: Content to review. + :type frame_image: str + :param reviewer_result_tags: + :type reviewer_result_tags: + list[~azure.cognitiveservices.vision.contentmoderator.models.VideoFrameBodyItemReviewerResultTagsItem] + :param metadata: Optional metadata details. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.VideoFrameBodyItemMetadataItem] + """ + + _validation = { + 'timestamp': {'required': True}, + 'frame_image': {'required': True}, + } + + _attribute_map = { + 'timestamp': {'key': 'Timestamp', 'type': 'str'}, + 'frame_image': {'key': 'FrameImage', 'type': 'str'}, + 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[VideoFrameBodyItemReviewerResultTagsItem]'}, + 'metadata': {'key': 'Metadata', 'type': '[VideoFrameBodyItemMetadataItem]'}, + } + + def __init__(self, timestamp, frame_image, reviewer_result_tags=None, metadata=None): + super(VideoFrameBodyItem, self).__init__() + self.timestamp = timestamp + self.frame_image = frame_image + self.reviewer_result_tags = reviewer_result_tags + self.metadata = metadata + + +class VideoFrameBodyItemMetadataItem(Model): + """VideoFrameBodyItemMetadataItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(VideoFrameBodyItemMetadataItem, self).__init__() + self.key = key + self.value = value + + +class VideoFrameBodyItemReviewerResultTagsItem(Model): + """VideoFrameBodyItemReviewerResultTagsItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(VideoFrameBodyItemReviewerResultTagsItem, self).__init__() + self.key = key + self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_models_py3.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_models_py3.py new file mode 100644 index 000000000000..34182d72fdb9 --- /dev/null +++ b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_models_py3.py @@ -0,0 +1,1661 @@ +# 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 + + +class APIError(Model): + """Error information returned by the API. + + :param error: + :type error: ~azure.cognitiveservices.vision.contentmoderator.models.Error + """ + + _attribute_map = { + 'error': {'key': 'Error', 'type': 'Error'}, + } + + def __init__(self, error=None): + super(APIError, self).__init__() + self.error = error + + +class APIErrorException(HttpOperationError): + """Server responsed with exception of type: 'APIError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(APIErrorException, self).__init__(deserialize, response, 'APIError', *args) + + +class Address(Model): + """Address details. + + :param text: Detected Address. + :type text: str + :param index: Index(Location) of the Address in the input text content. + :type index: int + """ + + _attribute_map = { + 'text': {'key': 'Text', 'type': 'str'}, + 'index': {'key': 'Index', 'type': 'int'}, + } + + def __init__(self, text=None, index=None): + super(Address, self).__init__() + self.text = text + self.index = index + + +class Body(Model): + """Body. + + :param name: Name of the list. + :type name: str + :param description: Description of the list. + :type description: str + :param metadata: Metadata of the list. + :type metadata: + ~azure.cognitiveservices.vision.contentmoderator.models.BodyMetadata + """ + + _attribute_map = { + 'name': {'key': 'Name', 'type': 'str'}, + 'description': {'key': 'Description', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': 'BodyMetadata'}, + } + + def __init__(self, name=None, description=None, metadata=None): + super(Body, self).__init__() + self.name = name + self.description = description + self.metadata = metadata + + +class BodyMetadata(Model): + """Metadata of the list. + + :param key_one: Optional key value pair to describe your list. + :type key_one: str + :param key_two: Optional key value pair to describe your list. + :type key_two: str + """ + + _attribute_map = { + 'key_one': {'key': 'Key One', 'type': 'str'}, + 'key_two': {'key': 'Key Two', 'type': 'str'}, + } + + def __init__(self, key_one=None, key_two=None): + super(BodyMetadata, self).__init__() + self.key_one = key_one + self.key_two = key_two + + +class BodyModel(Model): + """BodyModel. + + :param data_representation: Default value: "URL" . + :type data_representation: str + :param value: + :type value: str + """ + + _attribute_map = { + 'data_representation': {'key': 'DataRepresentation', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, data_representation="URL", value=None): + super(BodyModel, self).__init__() + self.data_representation = data_representation + self.value = value + + +class Candidate(Model): + """OCR candidate text. + + :param text: The text found. + :type text: str + :param confidence: The confidence level. + :type confidence: float + """ + + _attribute_map = { + 'text': {'key': 'Text', 'type': 'str'}, + 'confidence': {'key': 'Confidence', 'type': 'float'}, + } + + def __init__(self, text=None, confidence=None): + super(Candidate, self).__init__() + self.text = text + self.confidence = confidence + + +class Classification(Model): + """The classification details of the text. + + :param category1: + :type category1: + ~azure.cognitiveservices.vision.contentmoderator.models.Score + :param category2: + :type category2: + ~azure.cognitiveservices.vision.contentmoderator.models.Score + :param category3: + :type category3: + ~azure.cognitiveservices.vision.contentmoderator.models.Score + :param review_recommended: The review recommended flag. + :type review_recommended: bool + """ + + _attribute_map = { + 'category1': {'key': 'Category1', 'type': 'Score'}, + 'category2': {'key': 'Category2', 'type': 'Score'}, + 'category3': {'key': 'Category3', 'type': 'Score'}, + 'review_recommended': {'key': 'ReviewRecommended', 'type': 'bool'}, + } + + def __init__(self, category1=None, category2=None, category3=None, review_recommended=None): + super(Classification, self).__init__() + self.category1 = category1 + self.category2 = category2 + self.category3 = category3 + self.review_recommended = review_recommended + + +class Content(Model): + """Content. + + :param content_value: Content to evaluate for a job. + :type content_value: str + """ + + _validation = { + 'content_value': {'required': True}, + } + + _attribute_map = { + 'content_value': {'key': 'ContentValue', 'type': 'str'}, + } + + def __init__(self, content_value): + super(Content, self).__init__() + self.content_value = content_value + + +class CreateReviewBodyItem(Model): + """Schema items of the body. + + :param type: Type of the content. Possible values include: 'Image', 'Text' + :type type: str or + ~azure.cognitiveservices.vision.contentmoderator.models.enum + :param content: Content to review. + :type content: str + :param content_id: Content Identifier. + :type content_id: str + :param callback_endpoint: Optional CallbackEndpoint. + :type callback_endpoint: str + :param metadata: Optional metadata details. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateReviewBodyItemMetadataItem] + """ + + _validation = { + 'type': {'required': True}, + 'content': {'required': True}, + 'content_id': {'required': True}, + } + + _attribute_map = { + 'type': {'key': 'Type', 'type': 'str'}, + 'content': {'key': 'Content', 'type': 'str'}, + 'content_id': {'key': 'ContentId', 'type': 'str'}, + 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': '[CreateReviewBodyItemMetadataItem]'}, + } + + def __init__(self, type, content, content_id, callback_endpoint=None, metadata=None): + super(CreateReviewBodyItem, self).__init__() + self.type = type + self.content = content + self.content_id = content_id + self.callback_endpoint = callback_endpoint + self.metadata = metadata + + +class CreateReviewBodyItemMetadataItem(Model): + """CreateReviewBodyItemMetadataItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(CreateReviewBodyItemMetadataItem, self).__init__() + self.key = key + self.value = value + + +class CreateVideoReviewsBodyItem(Model): + """Schema items of the body. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param video_frames: Optional metadata details. + :type video_frames: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItem] + :param metadata: Optional metadata details. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemMetadataItem] + :ivar type: Type of the content. Default value: "Video" . + :vartype type: str + :param content: Video content url to review. + :type content: str + :param content_id: Content Identifier. + :type content_id: str + :param status: Status of the video(Complete,Unpublished,Pending). Possible + values include: 'Complete', 'Unpublished', 'Pending' + :type status: str or + ~azure.cognitiveservices.vision.contentmoderator.models.enum + :param timescale: Timescale of the video. + :type timescale: int + :param callback_endpoint: Optional CallbackEndpoint. + :type callback_endpoint: str + """ + + _validation = { + 'type': {'required': True, 'constant': True}, + 'content': {'required': True}, + 'content_id': {'required': True}, + 'status': {'required': True}, + } + + _attribute_map = { + 'video_frames': {'key': 'VideoFrames', 'type': '[CreateVideoReviewsBodyItemVideoFramesItem]'}, + 'metadata': {'key': 'Metadata', 'type': '[CreateVideoReviewsBodyItemMetadataItem]'}, + 'type': {'key': 'Type', 'type': 'str'}, + 'content': {'key': 'Content', 'type': 'str'}, + 'content_id': {'key': 'ContentId', 'type': 'str'}, + 'status': {'key': 'Status', 'type': 'str'}, + 'timescale': {'key': 'Timescale', 'type': 'int'}, + 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, + } + + type = "Video" + + def __init__(self, content, content_id, status, video_frames=None, metadata=None, timescale=None, callback_endpoint=None): + super(CreateVideoReviewsBodyItem, self).__init__() + self.video_frames = video_frames + self.metadata = metadata + self.content = content + self.content_id = content_id + self.status = status + self.timescale = timescale + self.callback_endpoint = callback_endpoint + + +class CreateVideoReviewsBodyItemMetadataItem(Model): + """CreateVideoReviewsBodyItemMetadataItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(CreateVideoReviewsBodyItemMetadataItem, self).__init__() + self.key = key + self.value = value + + +class CreateVideoReviewsBodyItemVideoFramesItem(Model): + """CreateVideoReviewsBodyItemVideoFramesItem. + + :param id: Id of the frame. + :type id: str + :param timestamp: Timestamp of the frame. + :type timestamp: int + :param frame_image: Frame image Url. + :type frame_image: str + :param reviewer_result_tags: + :type reviewer_result_tags: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem] + :param metadata: Optional metadata details. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItemMetadataItem] + """ + + _validation = { + 'id': {'required': True}, + 'timestamp': {'required': True}, + 'frame_image': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'Id', 'type': 'str'}, + 'timestamp': {'key': 'Timestamp', 'type': 'int'}, + 'frame_image': {'key': 'FrameImage', 'type': 'str'}, + 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem]'}, + 'metadata': {'key': 'Metadata', 'type': '[CreateVideoReviewsBodyItemVideoFramesItemMetadataItem]'}, + } + + def __init__(self, id, timestamp, frame_image, reviewer_result_tags=None, metadata=None): + super(CreateVideoReviewsBodyItemVideoFramesItem, self).__init__() + self.id = id + self.timestamp = timestamp + self.frame_image = frame_image + self.reviewer_result_tags = reviewer_result_tags + self.metadata = metadata + + +class CreateVideoReviewsBodyItemVideoFramesItemMetadataItem(Model): + """CreateVideoReviewsBodyItemVideoFramesItemMetadataItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(CreateVideoReviewsBodyItemVideoFramesItemMetadataItem, self).__init__() + self.key = key + self.value = value + + +class CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem(Model): + """CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem, self).__init__() + self.key = key + self.value = value + + +class DetectedLanguage(Model): + """Detect language result. + + :param detected_language: The detected language. + :type detected_language: str + :param status: The detect language status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: The tracking id. + :type tracking_id: str + """ + + _attribute_map = { + 'detected_language': {'key': 'DetectedLanguage', 'type': 'str'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, detected_language=None, status=None, tracking_id=None): + super(DetectedLanguage, self).__init__() + self.detected_language = detected_language + self.status = status + self.tracking_id = tracking_id + + +class DetectedTerms(Model): + """Detected Terms details. + + :param index: Index(Location) of the detected profanity term in the input + text content. + :type index: int + :param original_index: Original Index(Location) of the detected profanity + term in the input text content. + :type original_index: int + :param list_id: Matched Terms list Id. + :type list_id: int + :param term: Detected profanity term. + :type term: str + """ + + _attribute_map = { + 'index': {'key': 'Index', 'type': 'int'}, + 'original_index': {'key': 'OriginalIndex', 'type': 'int'}, + 'list_id': {'key': 'ListId', 'type': 'int'}, + 'term': {'key': 'Term', 'type': 'str'}, + } + + def __init__(self, index=None, original_index=None, list_id=None, term=None): + super(DetectedTerms, self).__init__() + self.index = index + self.original_index = original_index + self.list_id = list_id + self.term = term + + +class Email(Model): + """Email Address details. + + :param detected: Detected Email Address from the input text content. + :type detected: str + :param sub_type: Subtype of the detected Email Address. + :type sub_type: str + :param text: Email Address in the input text content. + :type text: str + :param index: Index(Location) of the Email address in the input text + content. + :type index: int + """ + + _attribute_map = { + 'detected': {'key': 'Detected', 'type': 'str'}, + 'sub_type': {'key': 'SubType', 'type': 'str'}, + 'text': {'key': 'Text', 'type': 'str'}, + 'index': {'key': 'Index', 'type': 'int'}, + } + + def __init__(self, detected=None, sub_type=None, text=None, index=None): + super(Email, self).__init__() + self.detected = detected + self.sub_type = sub_type + self.text = text + self.index = index + + +class Error(Model): + """Error body. + + :param code: + :type code: str + :param message: + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'Code', 'type': 'str'}, + 'message': {'key': 'Message', 'type': 'str'}, + } + + def __init__(self, code=None, message=None): + super(Error, self).__init__() + self.code = code + self.message = message + + +class Evaluate(Model): + """Evaluate response object. + + :param cache_id: The cache id. + :type cache_id: str + :param result: Evaluate result. + :type result: bool + :param tracking_id: The tracking id. + :type tracking_id: str + :param adult_classification_score: The adult classification score. + :type adult_classification_score: float + :param is_image_adult_classified: Indicates if an image is classified as + adult. + :type is_image_adult_classified: bool + :param racy_classification_score: The racy classication score. + :type racy_classification_score: float + :param is_image_racy_classified: Indicates if the image is classified as + racy. + :type is_image_racy_classified: bool + :param advanced_info: The advanced info. + :type advanced_info: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param status: The evaluate status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + """ + + _attribute_map = { + 'cache_id': {'key': 'CacheID', 'type': 'str'}, + 'result': {'key': 'Result', 'type': 'bool'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + 'adult_classification_score': {'key': 'AdultClassificationScore', 'type': 'float'}, + 'is_image_adult_classified': {'key': 'IsImageAdultClassified', 'type': 'bool'}, + 'racy_classification_score': {'key': 'RacyClassificationScore', 'type': 'float'}, + 'is_image_racy_classified': {'key': 'IsImageRacyClassified', 'type': 'bool'}, + 'advanced_info': {'key': 'AdvancedInfo', 'type': '[KeyValuePair]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + } + + def __init__(self, cache_id=None, result=None, tracking_id=None, adult_classification_score=None, is_image_adult_classified=None, racy_classification_score=None, is_image_racy_classified=None, advanced_info=None, status=None): + super(Evaluate, self).__init__() + self.cache_id = cache_id + self.result = result + self.tracking_id = tracking_id + self.adult_classification_score = adult_classification_score + self.is_image_adult_classified = is_image_adult_classified + self.racy_classification_score = racy_classification_score + self.is_image_racy_classified = is_image_racy_classified + self.advanced_info = advanced_info + self.status = status + + +class Face(Model): + """Coordinates to the found face. + + :param bottom: The bottom coordinate. + :type bottom: int + :param left: The left coordinate. + :type left: int + :param right: The right coordinate. + :type right: int + :param top: The top coordinate. + :type top: int + """ + + _attribute_map = { + 'bottom': {'key': 'Bottom', 'type': 'int'}, + 'left': {'key': 'Left', 'type': 'int'}, + 'right': {'key': 'Right', 'type': 'int'}, + 'top': {'key': 'Top', 'type': 'int'}, + } + + def __init__(self, bottom=None, left=None, right=None, top=None): + super(Face, self).__init__() + self.bottom = bottom + self.left = left + self.right = right + self.top = top + + +class FoundFaces(Model): + """Request object the contains found faces. + + :param status: The evaluate status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: The tracking id. + :type tracking_id: str + :param cache_id: The cache id. + :type cache_id: str + :param result: True if result was found. + :type result: bool + :param count: Number of faces found. + :type count: int + :param advanced_info: The advanced info. + :type advanced_info: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param faces: The list of faces. + :type faces: + list[~azure.cognitiveservices.vision.contentmoderator.models.Face] + """ + + _attribute_map = { + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + 'cache_id': {'key': 'CacheId', 'type': 'str'}, + 'result': {'key': 'Result', 'type': 'bool'}, + 'count': {'key': 'Count', 'type': 'int'}, + 'advanced_info': {'key': 'AdvancedInfo', 'type': '[KeyValuePair]'}, + 'faces': {'key': 'Faces', 'type': '[Face]'}, + } + + def __init__(self, status=None, tracking_id=None, cache_id=None, result=None, count=None, advanced_info=None, faces=None): + super(FoundFaces, self).__init__() + self.status = status + self.tracking_id = tracking_id + self.cache_id = cache_id + self.result = result + self.count = count + self.advanced_info = advanced_info + self.faces = faces + + +class Frame(Model): + """Video frame property details. + + :param timestamp: Timestamp of the frame. + :type timestamp: str + :param frame_image: Frame image. + :type frame_image: str + :param metadata: Array of KeyValue. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param reviewer_result_tags: Reviewer result tags. + :type reviewer_result_tags: + list[~azure.cognitiveservices.vision.contentmoderator.models.Tag] + """ + + _attribute_map = { + 'timestamp': {'key': 'Timestamp', 'type': 'str'}, + 'frame_image': {'key': 'FrameImage', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, + 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[Tag]'}, + } + + def __init__(self, timestamp=None, frame_image=None, metadata=None, reviewer_result_tags=None): + super(Frame, self).__init__() + self.timestamp = timestamp + self.frame_image = frame_image + self.metadata = metadata + self.reviewer_result_tags = reviewer_result_tags + + +class Frames(Model): + """The response for a Get Frames request. + + :param review_id: Id of the review. + :type review_id: str + :param video_frames: + :type video_frames: + list[~azure.cognitiveservices.vision.contentmoderator.models.Frame] + """ + + _attribute_map = { + 'review_id': {'key': 'ReviewId', 'type': 'str'}, + 'video_frames': {'key': 'VideoFrames', 'type': '[Frame]'}, + } + + def __init__(self, review_id=None, video_frames=None): + super(Frames, self).__init__() + self.review_id = review_id + self.video_frames = video_frames + + +class IPA(Model): + """IP Address details. + + :param sub_type: Subtype of the detected IP Address. + :type sub_type: str + :param text: Detected IP Address. + :type text: str + :param index: Index(Location) of the IP Address in the input text content. + :type index: int + """ + + _attribute_map = { + 'sub_type': {'key': 'SubType', 'type': 'str'}, + 'text': {'key': 'Text', 'type': 'str'}, + 'index': {'key': 'Index', 'type': 'int'}, + } + + def __init__(self, sub_type=None, text=None, index=None): + super(IPA, self).__init__() + self.sub_type = sub_type + self.text = text + self.index = index + + +class Image(Model): + """Image Properties. + + :param content_id: Content Id. + :type content_id: str + :param additional_info: Advanced info list. + :type additional_info: + list[~azure.cognitiveservices.vision.contentmoderator.models.ImageAdditionalInfoItem] + :param status: Status details. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: Tracking Id. + :type tracking_id: str + """ + + _attribute_map = { + 'content_id': {'key': 'ContentId', 'type': 'str'}, + 'additional_info': {'key': 'AdditionalInfo', 'type': '[ImageAdditionalInfoItem]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, content_id=None, additional_info=None, status=None, tracking_id=None): + super(Image, self).__init__() + self.content_id = content_id + self.additional_info = additional_info + self.status = status + self.tracking_id = tracking_id + + +class ImageAdditionalInfoItem(Model): + """ImageAdditionalInfoItem. + + :param key: Key parameter. + :type key: str + :param value: Value parameter. + :type value: str + """ + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key=None, value=None): + super(ImageAdditionalInfoItem, self).__init__() + self.key = key + self.value = value + + +class ImageIds(Model): + """Image Id properties. + + :param content_source: Source of the content. + :type content_source: str + :param content_ids: Id of the contents. + :type content_ids: list[int] + :param status: Get Image status. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: Tracking Id. + :type tracking_id: str + """ + + _attribute_map = { + 'content_source': {'key': 'ContentSource', 'type': 'str'}, + 'content_ids': {'key': 'ContentIds', 'type': '[int]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, content_source=None, content_ids=None, status=None, tracking_id=None): + super(ImageIds, self).__init__() + self.content_source = content_source + self.content_ids = content_ids + self.status = status + self.tracking_id = tracking_id + + +class ImageList(Model): + """Image List Properties. + + :param id: Image List Id. + :type id: int + :param name: Image List Name. + :type name: str + :param description: Description for image list. + :type description: str + :param metadata: Image List Metadata. + :type metadata: + ~azure.cognitiveservices.vision.contentmoderator.models.ImageListMetadata + """ + + _attribute_map = { + 'id': {'key': 'Id', 'type': 'int'}, + 'name': {'key': 'Name', 'type': 'str'}, + 'description': {'key': 'Description', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': 'ImageListMetadata'}, + } + + def __init__(self, id=None, name=None, description=None, metadata=None): + super(ImageList, self).__init__() + self.id = id + self.name = name + self.description = description + self.metadata = metadata + + +class ImageListMetadata(Model): + """Image List Metadata. + + :param key_one: Optional Key value pair to describe your list. + :type key_one: str + :param key_two: Optional Key value pair to describe your list. + :type key_two: str + """ + + _attribute_map = { + 'key_one': {'key': 'Key One', 'type': 'str'}, + 'key_two': {'key': 'Key Two', 'type': 'str'}, + } + + def __init__(self, key_one=None, key_two=None): + super(ImageListMetadata, self).__init__() + self.key_one = key_one + self.key_two = key_two + + +class Job(Model): + """The Job object. + + :param id: The job id. + :type id: str + :param team_name: The team name associated with the job. + :type team_name: str + :param status: The status string (). + :type status: str + :param workflow_id: The Id of the workflow. + :type workflow_id: str + :param type: Type of the content. + :type type: str + :param call_back_endpoint: The callback endpoint. + :type call_back_endpoint: str + :param review_id: Review Id if one is created. + :type review_id: str + :param result_meta_data: Array of KeyValue pairs. + :type result_meta_data: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param job_execution_report: Job execution report- Array of KeyValue pairs + object. + :type job_execution_report: + list[~azure.cognitiveservices.vision.contentmoderator.models.JobExecutionReportDetails] + """ + + _attribute_map = { + 'id': {'key': 'Id', 'type': 'str'}, + 'team_name': {'key': 'TeamName', 'type': 'str'}, + 'status': {'key': 'Status', 'type': 'str'}, + 'workflow_id': {'key': 'WorkflowId', 'type': 'str'}, + 'type': {'key': 'Type', 'type': 'str'}, + 'call_back_endpoint': {'key': 'CallBackEndpoint', 'type': 'str'}, + 'review_id': {'key': 'ReviewId', 'type': 'str'}, + 'result_meta_data': {'key': 'ResultMetaData', 'type': '[KeyValuePair]'}, + 'job_execution_report': {'key': 'JobExecutionReport', 'type': '[JobExecutionReportDetails]'}, + } + + def __init__(self, id=None, team_name=None, status=None, workflow_id=None, type=None, call_back_endpoint=None, review_id=None, result_meta_data=None, job_execution_report=None): + super(Job, self).__init__() + self.id = id + self.team_name = team_name + self.status = status + self.workflow_id = workflow_id + self.type = type + self.call_back_endpoint = call_back_endpoint + self.review_id = review_id + self.result_meta_data = result_meta_data + self.job_execution_report = job_execution_report + + +class JobExecutionReportDetails(Model): + """Job Execution Report Values. + + :param ts: Time details. + :type ts: str + :param msg: Message details. + :type msg: str + """ + + _attribute_map = { + 'ts': {'key': 'Ts', 'type': 'str'}, + 'msg': {'key': 'Msg', 'type': 'str'}, + } + + def __init__(self, ts=None, msg=None): + super(JobExecutionReportDetails, self).__init__() + self.ts = ts + self.msg = msg + + +class JobId(Model): + """JobId. + + :param job_id: Id of the created job. + :type job_id: str + """ + + _attribute_map = { + 'job_id': {'key': 'JobId', 'type': 'str'}, + } + + def __init__(self, job_id=None): + super(JobId, self).__init__() + self.job_id = job_id + + +class JobListResult(Model): + """The list of job ids. + + :param value: The job id. + :type value: list[str] + """ + + _attribute_map = { + 'value': {'key': 'Value', 'type': '[str]'}, + } + + def __init__(self, value=None): + super(JobListResult, self).__init__() + self.value = value + + +class KeyValuePair(Model): + """The key value pair object properties. + + :param key: The key parameter. + :type key: str + :param value: The value parameter. + :type value: str + """ + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key=None, value=None): + super(KeyValuePair, self).__init__() + self.key = key + self.value = value + + +class Match(Model): + """The match details. + + :param score: Confidence score of the image match. + :type score: float + :param match_id: The match id. + :type match_id: int + :param source: The source. + :type source: str + :param tags: The tags for match details. + :type tags: list[int] + :param label: The label. + :type label: str + """ + + _attribute_map = { + 'score': {'key': 'Score', 'type': 'float'}, + 'match_id': {'key': 'MatchId', 'type': 'int'}, + 'source': {'key': 'Source', 'type': 'str'}, + 'tags': {'key': 'Tags', 'type': '[int]'}, + 'label': {'key': 'Label', 'type': 'str'}, + } + + def __init__(self, score=None, match_id=None, source=None, tags=None, label=None): + super(Match, self).__init__() + self.score = score + self.match_id = match_id + self.source = source + self.tags = tags + self.label = label + + +class MatchResponse(Model): + """The response for a Match request. + + :param tracking_id: The tracking id. + :type tracking_id: str + :param cache_id: The cache id. + :type cache_id: str + :param is_match: Indicates if there is a match. + :type is_match: bool + :param matches: The match details. + :type matches: + list[~azure.cognitiveservices.vision.contentmoderator.models.Match] + :param status: The evaluate status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + """ + + _attribute_map = { + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + 'cache_id': {'key': 'CacheID', 'type': 'str'}, + 'is_match': {'key': 'IsMatch', 'type': 'bool'}, + 'matches': {'key': 'Matches', 'type': '[Match]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + } + + def __init__(self, tracking_id=None, cache_id=None, is_match=None, matches=None, status=None): + super(MatchResponse, self).__init__() + self.tracking_id = tracking_id + self.cache_id = cache_id + self.is_match = is_match + self.matches = matches + self.status = status + + +class OCR(Model): + """Contains the text found in image for the language specified. + + :param status: The evaluate status + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param metadata: Array of KeyValue. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param tracking_id: The tracking id. + :type tracking_id: str + :param cache_id: The cache id. + :type cache_id: str + :param language: The ISO 639-3 code. + :type language: str + :param text: The found text. + :type text: str + :param candidates: The list of candidate text. + :type candidates: + list[~azure.cognitiveservices.vision.contentmoderator.models.Candidate] + """ + + _attribute_map = { + 'status': {'key': 'Status', 'type': 'Status'}, + 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + 'cache_id': {'key': 'CacheId', 'type': 'str'}, + 'language': {'key': 'Language', 'type': 'str'}, + 'text': {'key': 'Text', 'type': 'str'}, + 'candidates': {'key': 'Candidates', 'type': '[Candidate]'}, + } + + def __init__(self, status=None, metadata=None, tracking_id=None, cache_id=None, language=None, text=None, candidates=None): + super(OCR, self).__init__() + self.status = status + self.metadata = metadata + self.tracking_id = tracking_id + self.cache_id = cache_id + self.language = language + self.text = text + self.candidates = candidates + + +class PII(Model): + """Personal Identifier Information details. + + :param email: + :type email: + list[~azure.cognitiveservices.vision.contentmoderator.models.Email] + :param ipa: + :type ipa: + list[~azure.cognitiveservices.vision.contentmoderator.models.IPA] + :param phone: + :type phone: + list[~azure.cognitiveservices.vision.contentmoderator.models.Phone] + :param address: + :type address: + list[~azure.cognitiveservices.vision.contentmoderator.models.Address] + """ + + _attribute_map = { + 'email': {'key': 'Email', 'type': '[Email]'}, + 'ipa': {'key': 'IPA', 'type': '[IPA]'}, + 'phone': {'key': 'Phone', 'type': '[Phone]'}, + 'address': {'key': 'Address', 'type': '[Address]'}, + } + + def __init__(self, email=None, ipa=None, phone=None, address=None): + super(PII, self).__init__() + self.email = email + self.ipa = ipa + self.phone = phone + self.address = address + + +class Phone(Model): + """Phone Property details. + + :param country_code: CountryCode of the detected Phone number. + :type country_code: str + :param text: Detected Phone number. + :type text: str + :param index: Index(Location) of the Phone number in the input text + content. + :type index: int + """ + + _attribute_map = { + 'country_code': {'key': 'CountryCode', 'type': 'str'}, + 'text': {'key': 'Text', 'type': 'str'}, + 'index': {'key': 'Index', 'type': 'int'}, + } + + def __init__(self, country_code=None, text=None, index=None): + super(Phone, self).__init__() + self.country_code = country_code + self.text = text + self.index = index + + +class RefreshIndex(Model): + """Refresh Index Response. + + :param content_source_id: Content source Id. + :type content_source_id: str + :param is_update_success: Update success status. + :type is_update_success: bool + :param advanced_info: Advanced info list. + :type advanced_info: + list[~azure.cognitiveservices.vision.contentmoderator.models.RefreshIndexAdvancedInfoItem] + :param status: Refresh index status. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: Tracking Id. + :type tracking_id: str + """ + + _attribute_map = { + 'content_source_id': {'key': 'ContentSourceId', 'type': 'str'}, + 'is_update_success': {'key': 'IsUpdateSuccess', 'type': 'bool'}, + 'advanced_info': {'key': 'AdvancedInfo', 'type': '[RefreshIndexAdvancedInfoItem]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, content_source_id=None, is_update_success=None, advanced_info=None, status=None, tracking_id=None): + super(RefreshIndex, self).__init__() + self.content_source_id = content_source_id + self.is_update_success = is_update_success + self.advanced_info = advanced_info + self.status = status + self.tracking_id = tracking_id + + +class RefreshIndexAdvancedInfoItem(Model): + """RefreshIndexAdvancedInfoItem. + + :param key_one: Key parameter to describe advanced info. + :type key_one: str + :param key_two: Key parameter to describe advanced info. + :type key_two: str + """ + + _attribute_map = { + 'key_one': {'key': 'Key One', 'type': 'str'}, + 'key_two': {'key': 'Key Two', 'type': 'str'}, + } + + def __init__(self, key_one=None, key_two=None): + super(RefreshIndexAdvancedInfoItem, self).__init__() + self.key_one = key_one + self.key_two = key_two + + +class Review(Model): + """The Review object. + + :param review_id: Id of the review. + :type review_id: str + :param sub_team: Name of the subteam. + :type sub_team: str + :param status: The status string (). + :type status: str + :param reviewer_result_tags: Array of KeyValue with Reviewer set Tags. + :type reviewer_result_tags: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param created_by: The reviewer name. + :type created_by: str + :param metadata: Array of KeyValue. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] + :param type: The type of content. + :type type: str + :param content: The content value. + :type content: str + :param content_id: Id of the content. + :type content_id: str + :param callback_endpoint: The callback endpoint. + :type callback_endpoint: str + """ + + _attribute_map = { + 'review_id': {'key': 'ReviewId', 'type': 'str'}, + 'sub_team': {'key': 'SubTeam', 'type': 'str'}, + 'status': {'key': 'Status', 'type': 'str'}, + 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[KeyValuePair]'}, + 'created_by': {'key': 'CreatedBy', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, + 'type': {'key': 'Type', 'type': 'str'}, + 'content': {'key': 'Content', 'type': 'str'}, + 'content_id': {'key': 'ContentId', 'type': 'str'}, + 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, + } + + def __init__(self, review_id=None, sub_team=None, status=None, reviewer_result_tags=None, created_by=None, metadata=None, type=None, content=None, content_id=None, callback_endpoint=None): + super(Review, self).__init__() + self.review_id = review_id + self.sub_team = sub_team + self.status = status + self.reviewer_result_tags = reviewer_result_tags + self.created_by = created_by + self.metadata = metadata + self.type = type + self.content = content + self.content_id = content_id + self.callback_endpoint = callback_endpoint + + +class Score(Model): + """The classification score details of the text. Click here for more + details on category classification. + + :param score: The category score. + :type score: float + """ + + _attribute_map = { + 'score': {'key': 'Score', 'type': 'float'}, + } + + def __init__(self, score=None): + super(Score, self).__init__() + self.score = score + + +class Screen(Model): + """The response for a Screen text request. + + :param original_text: The original text. + :type original_text: str + :param normalized_text: The normalized text. + :type normalized_text: str + :param auto_corrected_text: The autocorrected text + :type auto_corrected_text: str + :param misrepresentation: The misrepresentation text. + :type misrepresentation: list[str] + :param classification: The classification details of the text. + :type classification: + ~azure.cognitiveservices.vision.contentmoderator.models.Classification + :param status: The evaluate status. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param pii: Personal Identifier Information details. + :type pii: ~azure.cognitiveservices.vision.contentmoderator.models.PII + :param language: Language of the input text content. + :type language: str + :param terms: + :type terms: + list[~azure.cognitiveservices.vision.contentmoderator.models.DetectedTerms] + :param tracking_id: Unique Content Moderator transaction Id. + :type tracking_id: str + """ + + _attribute_map = { + 'original_text': {'key': 'OriginalText', 'type': 'str'}, + 'normalized_text': {'key': 'NormalizedText', 'type': 'str'}, + 'auto_corrected_text': {'key': 'AutoCorrectedText', 'type': 'str'}, + 'misrepresentation': {'key': 'Misrepresentation', 'type': '[str]'}, + 'classification': {'key': 'Classification', 'type': 'Classification'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'pii': {'key': 'PII', 'type': 'PII'}, + 'language': {'key': 'Language', 'type': 'str'}, + 'terms': {'key': 'Terms', 'type': '[DetectedTerms]'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, original_text=None, normalized_text=None, auto_corrected_text=None, misrepresentation=None, classification=None, status=None, pii=None, language=None, terms=None, tracking_id=None): + super(Screen, self).__init__() + self.original_text = original_text + self.normalized_text = normalized_text + self.auto_corrected_text = auto_corrected_text + self.misrepresentation = misrepresentation + self.classification = classification + self.status = status + self.pii = pii + self.language = language + self.terms = terms + self.tracking_id = tracking_id + + +class Status(Model): + """Status properties. + + :param code: Status code. + :type code: int + :param description: Status description. + :type description: str + :param exception: Exception status. + :type exception: str + """ + + _attribute_map = { + 'code': {'key': 'Code', 'type': 'int'}, + 'description': {'key': 'Description', 'type': 'str'}, + 'exception': {'key': 'Exception', 'type': 'str'}, + } + + def __init__(self, code=None, description=None, exception=None): + super(Status, self).__init__() + self.code = code + self.description = description + self.exception = exception + + +class Tag(Model): + """Tag details. + + :param key: The key parameter. + :type key: str + :param value: The value parameter. + :type value: str + """ + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key=None, value=None): + super(Tag, self).__init__() + self.key = key + self.value = value + + +class TermList(Model): + """Term List Properties. + + :param id: Term list Id. + :type id: int + :param name: Term list name. + :type name: str + :param description: Description for term list. + :type description: str + :param metadata: Term list metadata. + :type metadata: + ~azure.cognitiveservices.vision.contentmoderator.models.TermListMetadata + """ + + _attribute_map = { + 'id': {'key': 'Id', 'type': 'int'}, + 'name': {'key': 'Name', 'type': 'str'}, + 'description': {'key': 'Description', 'type': 'str'}, + 'metadata': {'key': 'Metadata', 'type': 'TermListMetadata'}, + } + + def __init__(self, id=None, name=None, description=None, metadata=None): + super(TermList, self).__init__() + self.id = id + self.name = name + self.description = description + self.metadata = metadata + + +class TermListMetadata(Model): + """Term list metadata. + + :param key_one: Optional Key value pair to describe your list. + :type key_one: str + :param key_two: Optional Key value pair to describe your list. + :type key_two: str + """ + + _attribute_map = { + 'key_one': {'key': 'Key One', 'type': 'str'}, + 'key_two': {'key': 'Key Two', 'type': 'str'}, + } + + def __init__(self, key_one=None, key_two=None): + super(TermListMetadata, self).__init__() + self.key_one = key_one + self.key_two = key_two + + +class Terms(Model): + """Terms properties. + + :param data: Term data details. + :type data: + ~azure.cognitiveservices.vision.contentmoderator.models.TermsData + :param paging: Paging details. + :type paging: + ~azure.cognitiveservices.vision.contentmoderator.models.TermsPaging + """ + + _attribute_map = { + 'data': {'key': 'Data', 'type': 'TermsData'}, + 'paging': {'key': 'Paging', 'type': 'TermsPaging'}, + } + + def __init__(self, data=None, paging=None): + super(Terms, self).__init__() + self.data = data + self.paging = paging + + +class TermsData(Model): + """All term Id response properties. + + :param language: Language of the terms. + :type language: str + :param terms: List of terms. + :type terms: + list[~azure.cognitiveservices.vision.contentmoderator.models.TermsInList] + :param status: Term Status. + :type status: + ~azure.cognitiveservices.vision.contentmoderator.models.Status + :param tracking_id: Tracking Id. + :type tracking_id: str + """ + + _attribute_map = { + 'language': {'key': 'Language', 'type': 'str'}, + 'terms': {'key': 'Terms', 'type': '[TermsInList]'}, + 'status': {'key': 'Status', 'type': 'Status'}, + 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, + } + + def __init__(self, language=None, terms=None, status=None, tracking_id=None): + super(TermsData, self).__init__() + self.language = language + self.terms = terms + self.status = status + self.tracking_id = tracking_id + + +class TermsInList(Model): + """Terms in list Id passed. + + :param term: Added term details. + :type term: str + """ + + _attribute_map = { + 'term': {'key': 'Term', 'type': 'str'}, + } + + def __init__(self, term=None): + super(TermsInList, self).__init__() + self.term = term + + +class TermsPaging(Model): + """Paging details. + + :param total: Total details. + :type total: int + :param limit: Limit details. + :type limit: int + :param offset: Offset details. + :type offset: int + :param returned: Returned text details. + :type returned: int + """ + + _attribute_map = { + 'total': {'key': 'Total', 'type': 'int'}, + 'limit': {'key': 'Limit', 'type': 'int'}, + 'offset': {'key': 'Offset', 'type': 'int'}, + 'returned': {'key': 'Returned', 'type': 'int'}, + } + + def __init__(self, total=None, limit=None, offset=None, returned=None): + super(TermsPaging, self).__init__() + self.total = total + self.limit = limit + self.offset = offset + self.returned = returned + + +class TranscriptModerationBodyItem(Model): + """Schema items of the body. + + :param timestamp: Timestamp of the image. + :type timestamp: str + :param terms: Optional metadata details. + :type terms: + list[~azure.cognitiveservices.vision.contentmoderator.models.TranscriptModerationBodyItemTermsItem] + """ + + _validation = { + 'timestamp': {'required': True}, + 'terms': {'required': True}, + } + + _attribute_map = { + 'timestamp': {'key': 'Timestamp', 'type': 'str'}, + 'terms': {'key': 'Terms', 'type': '[TranscriptModerationBodyItemTermsItem]'}, + } + + def __init__(self, timestamp, terms): + super(TranscriptModerationBodyItem, self).__init__() + self.timestamp = timestamp + self.terms = terms + + +class TranscriptModerationBodyItemTermsItem(Model): + """TranscriptModerationBodyItemTermsItem. + + :param index: Index of the word + :type index: int + :param term: Detected word. + :type term: str + """ + + _validation = { + 'index': {'required': True}, + 'term': {'required': True}, + } + + _attribute_map = { + 'index': {'key': 'Index', 'type': 'int'}, + 'term': {'key': 'Term', 'type': 'str'}, + } + + def __init__(self, index, term): + super(TranscriptModerationBodyItemTermsItem, self).__init__() + self.index = index + self.term = term + + +class VideoFrameBodyItem(Model): + """Schema items of the body. + + :param timestamp: Timestamp of the frame. + :type timestamp: str + :param frame_image: Content to review. + :type frame_image: str + :param reviewer_result_tags: + :type reviewer_result_tags: + list[~azure.cognitiveservices.vision.contentmoderator.models.VideoFrameBodyItemReviewerResultTagsItem] + :param metadata: Optional metadata details. + :type metadata: + list[~azure.cognitiveservices.vision.contentmoderator.models.VideoFrameBodyItemMetadataItem] + """ + + _validation = { + 'timestamp': {'required': True}, + 'frame_image': {'required': True}, + } + + _attribute_map = { + 'timestamp': {'key': 'Timestamp', 'type': 'str'}, + 'frame_image': {'key': 'FrameImage', 'type': 'str'}, + 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[VideoFrameBodyItemReviewerResultTagsItem]'}, + 'metadata': {'key': 'Metadata', 'type': '[VideoFrameBodyItemMetadataItem]'}, + } + + def __init__(self, timestamp, frame_image, reviewer_result_tags=None, metadata=None): + super(VideoFrameBodyItem, self).__init__() + self.timestamp = timestamp + self.frame_image = frame_image + self.reviewer_result_tags = reviewer_result_tags + self.metadata = metadata + + +class VideoFrameBodyItemMetadataItem(Model): + """VideoFrameBodyItemMetadataItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(VideoFrameBodyItemMetadataItem, self).__init__() + self.key = key + self.value = value + + +class VideoFrameBodyItemReviewerResultTagsItem(Model): + """VideoFrameBodyItemReviewerResultTagsItem. + + :param key: Your key parameter. + :type key: str + :param value: Your value parameter. + :type value: str + """ + + _validation = { + 'key': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'Key', 'type': 'str'}, + 'value': {'key': 'Value', 'type': 'str'}, + } + + def __init__(self, key, value): + super(VideoFrameBodyItemReviewerResultTagsItem, self).__init__() + self.key = key + self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_paged_models.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_paged_models.py new file mode 100644 index 000000000000..adde32e93411 --- /dev/null +++ b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/_paged_models.py @@ -0,0 +1,12 @@ +# 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.paging import Paged diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/address.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/address.py deleted file mode 100644 index 3037809412f7..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/address.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Address(Model): - """Address details. - - :param text: Detected Address. - :type text: str - :param index: Index(Location) of the Address in the input text content. - :type index: int - """ - - _attribute_map = { - 'text': {'key': 'Text', 'type': 'str'}, - 'index': {'key': 'Index', 'type': 'int'}, - } - - def __init__(self, text=None, index=None): - super(Address, self).__init__() - self.text = text - self.index = index diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/api_error.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/api_error.py deleted file mode 100644 index ccbeacbd15d5..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/api_error.py +++ /dev/null @@ -1,41 +0,0 @@ -# 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 - - -class APIError(Model): - """Error information returned by the API. - - :param error: - :type error: ~azure.cognitiveservices.vision.contentmoderator.models.Error - """ - - _attribute_map = { - 'error': {'key': 'Error', 'type': 'Error'}, - } - - def __init__(self, error=None): - super(APIError, self).__init__() - self.error = error - - -class APIErrorException(HttpOperationError): - """Server responsed with exception of type: 'APIError'. - - :param deserialize: A deserializer - :param response: Server response to be deserialized. - """ - - def __init__(self, deserialize, response, *args): - - super(APIErrorException, self).__init__(deserialize, response, 'APIError', *args) diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body.py deleted file mode 100644 index becfe670d3f8..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Body(Model): - """Body. - - :param name: Name of the list. - :type name: str - :param description: Description of the list. - :type description: str - :param metadata: Metadata of the list. - :type metadata: - ~azure.cognitiveservices.vision.contentmoderator.models.BodyMetadata - """ - - _attribute_map = { - 'name': {'key': 'Name', 'type': 'str'}, - 'description': {'key': 'Description', 'type': 'str'}, - 'metadata': {'key': 'Metadata', 'type': 'BodyMetadata'}, - } - - def __init__(self, name=None, description=None, metadata=None): - super(Body, self).__init__() - self.name = name - self.description = description - self.metadata = metadata diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body_metadata.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body_metadata.py deleted file mode 100644 index 709a31ac4493..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body_metadata.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BodyMetadata(Model): - """Metadata of the list. - - :param key_one: Optional key value pair to describe your list. - :type key_one: str - :param key_two: Optional key value pair to describe your list. - :type key_two: str - """ - - _attribute_map = { - 'key_one': {'key': 'Key One', 'type': 'str'}, - 'key_two': {'key': 'Key Two', 'type': 'str'}, - } - - def __init__(self, key_one=None, key_two=None): - super(BodyMetadata, self).__init__() - self.key_one = key_one - self.key_two = key_two diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body_model.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body_model.py deleted file mode 100644 index e41232904e3f..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/body_model.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class BodyModel(Model): - """BodyModel. - - :param data_representation: Default value: "URL" . - :type data_representation: str - :param value: - :type value: str - """ - - _attribute_map = { - 'data_representation': {'key': 'DataRepresentation', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, data_representation="URL", value=None): - super(BodyModel, self).__init__() - self.data_representation = data_representation - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/candidate.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/candidate.py deleted file mode 100644 index b6f85ebb6265..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/candidate.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Candidate(Model): - """OCR candidate text. - - :param text: The text found. - :type text: str - :param confidence: The confidence level. - :type confidence: float - """ - - _attribute_map = { - 'text': {'key': 'Text', 'type': 'str'}, - 'confidence': {'key': 'Confidence', 'type': 'float'}, - } - - def __init__(self, text=None, confidence=None): - super(Candidate, self).__init__() - self.text = text - self.confidence = confidence diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/classification.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/classification.py deleted file mode 100644 index 059f395b3e68..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/classification.py +++ /dev/null @@ -1,43 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Classification(Model): - """The classification details of the text. - - :param category1: - :type category1: - ~azure.cognitiveservices.vision.contentmoderator.models.Score - :param category2: - :type category2: - ~azure.cognitiveservices.vision.contentmoderator.models.Score - :param category3: - :type category3: - ~azure.cognitiveservices.vision.contentmoderator.models.Score - :param review_recommended: The review recommended flag. - :type review_recommended: bool - """ - - _attribute_map = { - 'category1': {'key': 'Category1', 'type': 'Score'}, - 'category2': {'key': 'Category2', 'type': 'Score'}, - 'category3': {'key': 'Category3', 'type': 'Score'}, - 'review_recommended': {'key': 'ReviewRecommended', 'type': 'bool'}, - } - - def __init__(self, category1=None, category2=None, category3=None, review_recommended=None): - super(Classification, self).__init__() - self.category1 = category1 - self.category2 = category2 - self.category3 = category3 - self.review_recommended = review_recommended diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/content.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/content.py deleted file mode 100644 index 6b67c7ad1ec4..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/content.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Content(Model): - """Content. - - :param content_value: Content to evaluate for a job. - :type content_value: str - """ - - _validation = { - 'content_value': {'required': True}, - } - - _attribute_map = { - 'content_value': {'key': 'ContentValue', 'type': 'str'}, - } - - def __init__(self, content_value): - super(Content, self).__init__() - self.content_value = content_value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_review_body_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_review_body_item.py deleted file mode 100644 index a22e75d3e70b..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_review_body_item.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CreateReviewBodyItem(Model): - """Schema items of the body. - - :param type: Type of the content. Possible values include: 'Image', 'Text' - :type type: str or - ~azure.cognitiveservices.vision.contentmoderator.models.enum - :param content: Content to review. - :type content: str - :param content_id: Content Identifier. - :type content_id: str - :param callback_endpoint: Optional CallbackEndpoint. - :type callback_endpoint: str - :param metadata: Optional metadata details. - :type metadata: - list[~azure.cognitiveservices.vision.contentmoderator.models.CreateReviewBodyItemMetadataItem] - """ - - _validation = { - 'type': {'required': True}, - 'content': {'required': True}, - 'content_id': {'required': True}, - } - - _attribute_map = { - 'type': {'key': 'Type', 'type': 'str'}, - 'content': {'key': 'Content', 'type': 'str'}, - 'content_id': {'key': 'ContentId', 'type': 'str'}, - 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, - 'metadata': {'key': 'Metadata', 'type': '[CreateReviewBodyItemMetadataItem]'}, - } - - def __init__(self, type, content, content_id, callback_endpoint=None, metadata=None): - super(CreateReviewBodyItem, self).__init__() - self.type = type - self.content = content - self.content_id = content_id - self.callback_endpoint = callback_endpoint - self.metadata = metadata diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_review_body_item_metadata_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_review_body_item_metadata_item.py deleted file mode 100644 index 25ca5626be5f..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_review_body_item_metadata_item.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CreateReviewBodyItemMetadataItem(Model): - """CreateReviewBodyItemMetadataItem. - - :param key: Your key parameter. - :type key: str - :param value: Your value parameter. - :type value: str - """ - - _validation = { - 'key': {'required': True}, - 'value': {'required': True}, - } - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key, value): - super(CreateReviewBodyItemMetadataItem, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item.py deleted file mode 100644 index afcdef3988f2..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CreateVideoReviewsBodyItem(Model): - """Schema items of the body. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param video_frames: Optional metadata details. - :type video_frames: - list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItem] - :param metadata: Optional metadata details. - :type metadata: - list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemMetadataItem] - :ivar type: Type of the content. Default value: "Video" . - :vartype type: str - :param content: Video content url to review. - :type content: str - :param content_id: Content Identifier. - :type content_id: str - :param status: Status of the video(Complete,Unpublished,Pending). Possible - values include: 'Complete', 'Unpublished', 'Pending' - :type status: str or - ~azure.cognitiveservices.vision.contentmoderator.models.enum - :param timescale: Timescale of the video. - :type timescale: int - :param callback_endpoint: Optional CallbackEndpoint. - :type callback_endpoint: str - """ - - _validation = { - 'type': {'required': True, 'constant': True}, - 'content': {'required': True}, - 'content_id': {'required': True}, - 'status': {'required': True}, - } - - _attribute_map = { - 'video_frames': {'key': 'VideoFrames', 'type': '[CreateVideoReviewsBodyItemVideoFramesItem]'}, - 'metadata': {'key': 'Metadata', 'type': '[CreateVideoReviewsBodyItemMetadataItem]'}, - 'type': {'key': 'Type', 'type': 'str'}, - 'content': {'key': 'Content', 'type': 'str'}, - 'content_id': {'key': 'ContentId', 'type': 'str'}, - 'status': {'key': 'Status', 'type': 'str'}, - 'timescale': {'key': 'Timescale', 'type': 'int'}, - 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, - } - - type = "Video" - - def __init__(self, content, content_id, status, video_frames=None, metadata=None, timescale=None, callback_endpoint=None): - super(CreateVideoReviewsBodyItem, self).__init__() - self.video_frames = video_frames - self.metadata = metadata - self.content = content - self.content_id = content_id - self.status = status - self.timescale = timescale - self.callback_endpoint = callback_endpoint diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_metadata_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_metadata_item.py deleted file mode 100644 index 60503508d87d..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_metadata_item.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CreateVideoReviewsBodyItemMetadataItem(Model): - """CreateVideoReviewsBodyItemMetadataItem. - - :param key: Your key parameter. - :type key: str - :param value: Your value parameter. - :type value: str - """ - - _validation = { - 'key': {'required': True}, - 'value': {'required': True}, - } - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key, value): - super(CreateVideoReviewsBodyItemMetadataItem, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item.py deleted file mode 100644 index b5bd95f0a119..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CreateVideoReviewsBodyItemVideoFramesItem(Model): - """CreateVideoReviewsBodyItemVideoFramesItem. - - :param id: Id of the frame. - :type id: str - :param timestamp: Timestamp of the frame. - :type timestamp: int - :param frame_image: Frame image Url. - :type frame_image: str - :param reviewer_result_tags: - :type reviewer_result_tags: - list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem] - :param metadata: Optional metadata details. - :type metadata: - list[~azure.cognitiveservices.vision.contentmoderator.models.CreateVideoReviewsBodyItemVideoFramesItemMetadataItem] - """ - - _validation = { - 'id': {'required': True}, - 'timestamp': {'required': True}, - 'frame_image': {'required': True}, - } - - _attribute_map = { - 'id': {'key': 'Id', 'type': 'str'}, - 'timestamp': {'key': 'Timestamp', 'type': 'int'}, - 'frame_image': {'key': 'FrameImage', 'type': 'str'}, - 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem]'}, - 'metadata': {'key': 'Metadata', 'type': '[CreateVideoReviewsBodyItemVideoFramesItemMetadataItem]'}, - } - - def __init__(self, id, timestamp, frame_image, reviewer_result_tags=None, metadata=None): - super(CreateVideoReviewsBodyItemVideoFramesItem, self).__init__() - self.id = id - self.timestamp = timestamp - self.frame_image = frame_image - self.reviewer_result_tags = reviewer_result_tags - self.metadata = metadata diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item_metadata_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item_metadata_item.py deleted file mode 100644 index f23a804b45b7..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item_metadata_item.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CreateVideoReviewsBodyItemVideoFramesItemMetadataItem(Model): - """CreateVideoReviewsBodyItemVideoFramesItemMetadataItem. - - :param key: Your key parameter. - :type key: str - :param value: Your value parameter. - :type value: str - """ - - _validation = { - 'key': {'required': True}, - 'value': {'required': True}, - } - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key, value): - super(CreateVideoReviewsBodyItemVideoFramesItemMetadataItem, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item_reviewer_result_tags_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item_reviewer_result_tags_item.py deleted file mode 100644 index 7833a14c927b..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/create_video_reviews_body_item_video_frames_item_reviewer_result_tags_item.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem(Model): - """CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem. - - :param key: Your key parameter. - :type key: str - :param value: Your value parameter. - :type value: str - """ - - _validation = { - 'key': {'required': True}, - 'value': {'required': True}, - } - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key, value): - super(CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/detected_language.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/detected_language.py deleted file mode 100644 index 2ab022cabdff..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/detected_language.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class DetectedLanguage(Model): - """Detect language result. - - :param detected_language: The detected language. - :type detected_language: str - :param status: The detect language status - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - :param tracking_id: The tracking id. - :type tracking_id: str - """ - - _attribute_map = { - 'detected_language': {'key': 'DetectedLanguage', 'type': 'str'}, - 'status': {'key': 'Status', 'type': 'Status'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - } - - def __init__(self, detected_language=None, status=None, tracking_id=None): - super(DetectedLanguage, self).__init__() - self.detected_language = detected_language - self.status = status - self.tracking_id = tracking_id diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/detected_terms.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/detected_terms.py deleted file mode 100644 index 324de7af18b2..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/detected_terms.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class DetectedTerms(Model): - """Detected Terms details. - - :param index: Index(Location) of the detected profanity term in the input - text content. - :type index: int - :param original_index: Original Index(Location) of the detected profanity - term in the input text content. - :type original_index: int - :param list_id: Matched Terms list Id. - :type list_id: int - :param term: Detected profanity term. - :type term: str - """ - - _attribute_map = { - 'index': {'key': 'Index', 'type': 'int'}, - 'original_index': {'key': 'OriginalIndex', 'type': 'int'}, - 'list_id': {'key': 'ListId', 'type': 'int'}, - 'term': {'key': 'Term', 'type': 'str'}, - } - - def __init__(self, index=None, original_index=None, list_id=None, term=None): - super(DetectedTerms, self).__init__() - self.index = index - self.original_index = original_index - self.list_id = list_id - self.term = term diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/email.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/email.py deleted file mode 100644 index 4ab796f2c415..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/email.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Email(Model): - """Email Address details. - - :param detected: Detected Email Address from the input text content. - :type detected: str - :param sub_type: Subtype of the detected Email Address. - :type sub_type: str - :param text: Email Address in the input text content. - :type text: str - :param index: Index(Location) of the Email address in the input text - content. - :type index: int - """ - - _attribute_map = { - 'detected': {'key': 'Detected', 'type': 'str'}, - 'sub_type': {'key': 'SubType', 'type': 'str'}, - 'text': {'key': 'Text', 'type': 'str'}, - 'index': {'key': 'Index', 'type': 'int'}, - } - - def __init__(self, detected=None, sub_type=None, text=None, index=None): - super(Email, self).__init__() - self.detected = detected - self.sub_type = sub_type - self.text = text - self.index = index diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/error.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/error.py deleted file mode 100644 index 0e351dadac5a..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/error.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Error(Model): - """Error body. - - :param code: - :type code: str - :param message: - :type message: str - """ - - _attribute_map = { - 'code': {'key': 'Code', 'type': 'str'}, - 'message': {'key': 'Message', 'type': 'str'}, - } - - def __init__(self, code=None, message=None): - super(Error, self).__init__() - self.code = code - self.message = message diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/evaluate.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/evaluate.py deleted file mode 100644 index 90cdddf04c22..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/evaluate.py +++ /dev/null @@ -1,64 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Evaluate(Model): - """Evaluate response object. - - :param cache_id: The cache id. - :type cache_id: str - :param result: Evaluate result. - :type result: bool - :param tracking_id: The tracking id. - :type tracking_id: str - :param adult_classification_score: The adult classification score. - :type adult_classification_score: float - :param is_image_adult_classified: Indicates if an image is classified as - adult. - :type is_image_adult_classified: bool - :param racy_classification_score: The racy classication score. - :type racy_classification_score: float - :param is_image_racy_classified: Indicates if the image is classified as - racy. - :type is_image_racy_classified: bool - :param advanced_info: The advanced info. - :type advanced_info: - list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] - :param status: The evaluate status - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - """ - - _attribute_map = { - 'cache_id': {'key': 'CacheID', 'type': 'str'}, - 'result': {'key': 'Result', 'type': 'bool'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - 'adult_classification_score': {'key': 'AdultClassificationScore', 'type': 'float'}, - 'is_image_adult_classified': {'key': 'IsImageAdultClassified', 'type': 'bool'}, - 'racy_classification_score': {'key': 'RacyClassificationScore', 'type': 'float'}, - 'is_image_racy_classified': {'key': 'IsImageRacyClassified', 'type': 'bool'}, - 'advanced_info': {'key': 'AdvancedInfo', 'type': '[KeyValuePair]'}, - 'status': {'key': 'Status', 'type': 'Status'}, - } - - def __init__(self, cache_id=None, result=None, tracking_id=None, adult_classification_score=None, is_image_adult_classified=None, racy_classification_score=None, is_image_racy_classified=None, advanced_info=None, status=None): - super(Evaluate, self).__init__() - self.cache_id = cache_id - self.result = result - self.tracking_id = tracking_id - self.adult_classification_score = adult_classification_score - self.is_image_adult_classified = is_image_adult_classified - self.racy_classification_score = racy_classification_score - self.is_image_racy_classified = is_image_racy_classified - self.advanced_info = advanced_info - self.status = status diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/face.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/face.py deleted file mode 100644 index b72c59ffe70e..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/face.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Face(Model): - """Coordinates to the found face. - - :param bottom: The bottom coordinate. - :type bottom: int - :param left: The left coordinate. - :type left: int - :param right: The right coordinate. - :type right: int - :param top: The top coordinate. - :type top: int - """ - - _attribute_map = { - 'bottom': {'key': 'Bottom', 'type': 'int'}, - 'left': {'key': 'Left', 'type': 'int'}, - 'right': {'key': 'Right', 'type': 'int'}, - 'top': {'key': 'Top', 'type': 'int'}, - } - - def __init__(self, bottom=None, left=None, right=None, top=None): - super(Face, self).__init__() - self.bottom = bottom - self.left = left - self.right = right - self.top = top diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/found_faces.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/found_faces.py deleted file mode 100644 index c99f73e23d70..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/found_faces.py +++ /dev/null @@ -1,55 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class FoundFaces(Model): - """Request object the contains found faces. - - :param status: The evaluate status - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - :param tracking_id: The tracking id. - :type tracking_id: str - :param cache_id: The cache id. - :type cache_id: str - :param result: True if result was found. - :type result: bool - :param count: Number of faces found. - :type count: int - :param advanced_info: The advanced info. - :type advanced_info: - list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] - :param faces: The list of faces. - :type faces: - list[~azure.cognitiveservices.vision.contentmoderator.models.Face] - """ - - _attribute_map = { - 'status': {'key': 'Status', 'type': 'Status'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - 'cache_id': {'key': 'CacheId', 'type': 'str'}, - 'result': {'key': 'Result', 'type': 'bool'}, - 'count': {'key': 'Count', 'type': 'int'}, - 'advanced_info': {'key': 'AdvancedInfo', 'type': '[KeyValuePair]'}, - 'faces': {'key': 'Faces', 'type': '[Face]'}, - } - - def __init__(self, status=None, tracking_id=None, cache_id=None, result=None, count=None, advanced_info=None, faces=None): - super(FoundFaces, self).__init__() - self.status = status - self.tracking_id = tracking_id - self.cache_id = cache_id - self.result = result - self.count = count - self.advanced_info = advanced_info - self.faces = faces diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/frame.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/frame.py deleted file mode 100644 index b3e155c1c2d6..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/frame.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Frame(Model): - """Video frame property details. - - :param timestamp: Timestamp of the frame. - :type timestamp: str - :param frame_image: Frame image. - :type frame_image: str - :param metadata: Array of KeyValue. - :type metadata: - list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] - :param reviewer_result_tags: Reviewer result tags. - :type reviewer_result_tags: - list[~azure.cognitiveservices.vision.contentmoderator.models.Tag] - """ - - _attribute_map = { - 'timestamp': {'key': 'Timestamp', 'type': 'str'}, - 'frame_image': {'key': 'FrameImage', 'type': 'str'}, - 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, - 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[Tag]'}, - } - - def __init__(self, timestamp=None, frame_image=None, metadata=None, reviewer_result_tags=None): - super(Frame, self).__init__() - self.timestamp = timestamp - self.frame_image = frame_image - self.metadata = metadata - self.reviewer_result_tags = reviewer_result_tags diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/frames.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/frames.py deleted file mode 100644 index 724a54ce61cf..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/frames.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Frames(Model): - """The response for a Get Frames request. - - :param review_id: Id of the review. - :type review_id: str - :param video_frames: - :type video_frames: - list[~azure.cognitiveservices.vision.contentmoderator.models.Frame] - """ - - _attribute_map = { - 'review_id': {'key': 'ReviewId', 'type': 'str'}, - 'video_frames': {'key': 'VideoFrames', 'type': '[Frame]'}, - } - - def __init__(self, review_id=None, video_frames=None): - super(Frames, self).__init__() - self.review_id = review_id - self.video_frames = video_frames diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image.py deleted file mode 100644 index d5caeefd5ff7..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Image(Model): - """Image Properties. - - :param content_id: Content Id. - :type content_id: str - :param additional_info: Advanced info list. - :type additional_info: - list[~azure.cognitiveservices.vision.contentmoderator.models.ImageAdditionalInfoItem] - :param status: Status details. - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - :param tracking_id: Tracking Id. - :type tracking_id: str - """ - - _attribute_map = { - 'content_id': {'key': 'ContentId', 'type': 'str'}, - 'additional_info': {'key': 'AdditionalInfo', 'type': '[ImageAdditionalInfoItem]'}, - 'status': {'key': 'Status', 'type': 'Status'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - } - - def __init__(self, content_id=None, additional_info=None, status=None, tracking_id=None): - super(Image, self).__init__() - self.content_id = content_id - self.additional_info = additional_info - self.status = status - self.tracking_id = tracking_id diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_additional_info_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_additional_info_item.py deleted file mode 100644 index 61b7678fc3ec..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_additional_info_item.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class ImageAdditionalInfoItem(Model): - """ImageAdditionalInfoItem. - - :param key: Key parameter. - :type key: str - :param value: Value parameter. - :type value: str - """ - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key=None, value=None): - super(ImageAdditionalInfoItem, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_ids.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_ids.py deleted file mode 100644 index 93afe9bb7c05..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_ids.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class ImageIds(Model): - """Image Id properties. - - :param content_source: Source of the content. - :type content_source: str - :param content_ids: Id of the contents. - :type content_ids: list[int] - :param status: Get Image status. - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - :param tracking_id: Tracking Id. - :type tracking_id: str - """ - - _attribute_map = { - 'content_source': {'key': 'ContentSource', 'type': 'str'}, - 'content_ids': {'key': 'ContentIds', 'type': '[int]'}, - 'status': {'key': 'Status', 'type': 'Status'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - } - - def __init__(self, content_source=None, content_ids=None, status=None, tracking_id=None): - super(ImageIds, self).__init__() - self.content_source = content_source - self.content_ids = content_ids - self.status = status - self.tracking_id = tracking_id diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_list.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_list.py deleted file mode 100644 index 57ef6b03606f..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_list.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class ImageList(Model): - """Image List Properties. - - :param id: Image List Id. - :type id: int - :param name: Image List Name. - :type name: str - :param description: Description for image list. - :type description: str - :param metadata: Image List Metadata. - :type metadata: - ~azure.cognitiveservices.vision.contentmoderator.models.ImageListMetadata - """ - - _attribute_map = { - 'id': {'key': 'Id', 'type': 'int'}, - 'name': {'key': 'Name', 'type': 'str'}, - 'description': {'key': 'Description', 'type': 'str'}, - 'metadata': {'key': 'Metadata', 'type': 'ImageListMetadata'}, - } - - def __init__(self, id=None, name=None, description=None, metadata=None): - super(ImageList, self).__init__() - self.id = id - self.name = name - self.description = description - self.metadata = metadata diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_list_metadata.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_list_metadata.py deleted file mode 100644 index 8888a4738054..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/image_list_metadata.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class ImageListMetadata(Model): - """Image List Metadata. - - :param key_one: Optional Key value pair to describe your list. - :type key_one: str - :param key_two: Optional Key value pair to describe your list. - :type key_two: str - """ - - _attribute_map = { - 'key_one': {'key': 'Key One', 'type': 'str'}, - 'key_two': {'key': 'Key Two', 'type': 'str'}, - } - - def __init__(self, key_one=None, key_two=None): - super(ImageListMetadata, self).__init__() - self.key_one = key_one - self.key_two = key_two diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/ipa.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/ipa.py deleted file mode 100644 index 3b14113efd77..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/ipa.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IPA(Model): - """IP Address details. - - :param sub_type: Subtype of the detected IP Address. - :type sub_type: str - :param text: Detected IP Address. - :type text: str - :param index: Index(Location) of the IP Address in the input text content. - :type index: int - """ - - _attribute_map = { - 'sub_type': {'key': 'SubType', 'type': 'str'}, - 'text': {'key': 'Text', 'type': 'str'}, - 'index': {'key': 'Index', 'type': 'int'}, - } - - def __init__(self, sub_type=None, text=None, index=None): - super(IPA, self).__init__() - self.sub_type = sub_type - self.text = text - self.index = index diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job.py deleted file mode 100644 index 6375fec27321..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Job(Model): - """The Job object. - - :param id: The job id. - :type id: str - :param team_name: The team name associated with the job. - :type team_name: str - :param status: The status string (). - :type status: str - :param workflow_id: The Id of the workflow. - :type workflow_id: str - :param type: Type of the content. - :type type: str - :param call_back_endpoint: The callback endpoint. - :type call_back_endpoint: str - :param review_id: Review Id if one is created. - :type review_id: str - :param result_meta_data: Array of KeyValue pairs. - :type result_meta_data: - list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] - :param job_execution_report: Job execution report- Array of KeyValue pairs - object. - :type job_execution_report: - list[~azure.cognitiveservices.vision.contentmoderator.models.JobExecutionReportDetails] - """ - - _attribute_map = { - 'id': {'key': 'Id', 'type': 'str'}, - 'team_name': {'key': 'TeamName', 'type': 'str'}, - 'status': {'key': 'Status', 'type': 'str'}, - 'workflow_id': {'key': 'WorkflowId', 'type': 'str'}, - 'type': {'key': 'Type', 'type': 'str'}, - 'call_back_endpoint': {'key': 'CallBackEndpoint', 'type': 'str'}, - 'review_id': {'key': 'ReviewId', 'type': 'str'}, - 'result_meta_data': {'key': 'ResultMetaData', 'type': '[KeyValuePair]'}, - 'job_execution_report': {'key': 'JobExecutionReport', 'type': '[JobExecutionReportDetails]'}, - } - - def __init__(self, id=None, team_name=None, status=None, workflow_id=None, type=None, call_back_endpoint=None, review_id=None, result_meta_data=None, job_execution_report=None): - super(Job, self).__init__() - self.id = id - self.team_name = team_name - self.status = status - self.workflow_id = workflow_id - self.type = type - self.call_back_endpoint = call_back_endpoint - self.review_id = review_id - self.result_meta_data = result_meta_data - self.job_execution_report = job_execution_report diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_execution_report_details.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_execution_report_details.py deleted file mode 100644 index 0c35b83c34de..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_execution_report_details.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JobExecutionReportDetails(Model): - """Job Execution Report Values. - - :param ts: Time details. - :type ts: str - :param msg: Message details. - :type msg: str - """ - - _attribute_map = { - 'ts': {'key': 'Ts', 'type': 'str'}, - 'msg': {'key': 'Msg', 'type': 'str'}, - } - - def __init__(self, ts=None, msg=None): - super(JobExecutionReportDetails, self).__init__() - self.ts = ts - self.msg = msg diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_id.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_id.py deleted file mode 100644 index 1120d01066d3..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_id.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JobId(Model): - """JobId. - - :param job_id: Id of the created job. - :type job_id: str - """ - - _attribute_map = { - 'job_id': {'key': 'JobId', 'type': 'str'}, - } - - def __init__(self, job_id=None): - super(JobId, self).__init__() - self.job_id = job_id diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_list_result.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_list_result.py deleted file mode 100644 index ca7042d20cb6..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/job_list_result.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JobListResult(Model): - """The list of job ids. - - :param value: The job id. - :type value: list[str] - """ - - _attribute_map = { - 'value': {'key': 'Value', 'type': '[str]'}, - } - - def __init__(self, value=None): - super(JobListResult, self).__init__() - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/key_value_pair.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/key_value_pair.py deleted file mode 100644 index 04a557da8ba6..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/key_value_pair.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyValuePair(Model): - """The key value pair object properties. - - :param key: The key parameter. - :type key: str - :param value: The value parameter. - :type value: str - """ - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key=None, value=None): - super(KeyValuePair, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/match.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/match.py deleted file mode 100644 index 6a9c84cc3792..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/match.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Match(Model): - """The match details. - - :param score: Confidence score of the image match. - :type score: float - :param match_id: The match id. - :type match_id: int - :param source: The source. - :type source: str - :param tags: The tags for match details. - :type tags: list[int] - :param label: The label. - :type label: str - """ - - _attribute_map = { - 'score': {'key': 'Score', 'type': 'float'}, - 'match_id': {'key': 'MatchId', 'type': 'int'}, - 'source': {'key': 'Source', 'type': 'str'}, - 'tags': {'key': 'Tags', 'type': '[int]'}, - 'label': {'key': 'Label', 'type': 'str'}, - } - - def __init__(self, score=None, match_id=None, source=None, tags=None, label=None): - super(Match, self).__init__() - self.score = score - self.match_id = match_id - self.source = source - self.tags = tags - self.label = label diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/match_response.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/match_response.py deleted file mode 100644 index 34798ee56439..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/match_response.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class MatchResponse(Model): - """The response for a Match request. - - :param tracking_id: The tracking id. - :type tracking_id: str - :param cache_id: The cache id. - :type cache_id: str - :param is_match: Indicates if there is a match. - :type is_match: bool - :param matches: The match details. - :type matches: - list[~azure.cognitiveservices.vision.contentmoderator.models.Match] - :param status: The evaluate status - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - """ - - _attribute_map = { - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - 'cache_id': {'key': 'CacheID', 'type': 'str'}, - 'is_match': {'key': 'IsMatch', 'type': 'bool'}, - 'matches': {'key': 'Matches', 'type': '[Match]'}, - 'status': {'key': 'Status', 'type': 'Status'}, - } - - def __init__(self, tracking_id=None, cache_id=None, is_match=None, matches=None, status=None): - super(MatchResponse, self).__init__() - self.tracking_id = tracking_id - self.cache_id = cache_id - self.is_match = is_match - self.matches = matches - self.status = status diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/ocr.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/ocr.py deleted file mode 100644 index 193730ff7633..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/ocr.py +++ /dev/null @@ -1,55 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class OCR(Model): - """Contains the text found in image for the language specified. - - :param status: The evaluate status - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - :param metadata: Array of KeyValue. - :type metadata: - list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] - :param tracking_id: The tracking id. - :type tracking_id: str - :param cache_id: The cache id. - :type cache_id: str - :param language: The ISO 639-3 code. - :type language: str - :param text: The found text. - :type text: str - :param candidates: The list of candidate text. - :type candidates: - list[~azure.cognitiveservices.vision.contentmoderator.models.Candidate] - """ - - _attribute_map = { - 'status': {'key': 'Status', 'type': 'Status'}, - 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - 'cache_id': {'key': 'CacheId', 'type': 'str'}, - 'language': {'key': 'Language', 'type': 'str'}, - 'text': {'key': 'Text', 'type': 'str'}, - 'candidates': {'key': 'Candidates', 'type': '[Candidate]'}, - } - - def __init__(self, status=None, metadata=None, tracking_id=None, cache_id=None, language=None, text=None, candidates=None): - super(OCR, self).__init__() - self.status = status - self.metadata = metadata - self.tracking_id = tracking_id - self.cache_id = cache_id - self.language = language - self.text = text - self.candidates = candidates diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/phone.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/phone.py deleted file mode 100644 index 7369f634e83b..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/phone.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Phone(Model): - """Phone Property details. - - :param country_code: CountryCode of the detected Phone number. - :type country_code: str - :param text: Detected Phone number. - :type text: str - :param index: Index(Location) of the Phone number in the input text - content. - :type index: int - """ - - _attribute_map = { - 'country_code': {'key': 'CountryCode', 'type': 'str'}, - 'text': {'key': 'Text', 'type': 'str'}, - 'index': {'key': 'Index', 'type': 'int'}, - } - - def __init__(self, country_code=None, text=None, index=None): - super(Phone, self).__init__() - self.country_code = country_code - self.text = text - self.index = index diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/pii.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/pii.py deleted file mode 100644 index 148f8da31034..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/pii.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class PII(Model): - """Personal Identifier Information details. - - :param email: - :type email: - list[~azure.cognitiveservices.vision.contentmoderator.models.Email] - :param ipa: - :type ipa: - list[~azure.cognitiveservices.vision.contentmoderator.models.IPA] - :param phone: - :type phone: - list[~azure.cognitiveservices.vision.contentmoderator.models.Phone] - :param address: - :type address: - list[~azure.cognitiveservices.vision.contentmoderator.models.Address] - """ - - _attribute_map = { - 'email': {'key': 'Email', 'type': '[Email]'}, - 'ipa': {'key': 'IPA', 'type': '[IPA]'}, - 'phone': {'key': 'Phone', 'type': '[Phone]'}, - 'address': {'key': 'Address', 'type': '[Address]'}, - } - - def __init__(self, email=None, ipa=None, phone=None, address=None): - super(PII, self).__init__() - self.email = email - self.ipa = ipa - self.phone = phone - self.address = address diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/refresh_index.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/refresh_index.py deleted file mode 100644 index e11d028b8b53..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/refresh_index.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class RefreshIndex(Model): - """Refresh Index Response. - - :param content_source_id: Content source Id. - :type content_source_id: str - :param is_update_success: Update success status. - :type is_update_success: bool - :param advanced_info: Advanced info list. - :type advanced_info: - list[~azure.cognitiveservices.vision.contentmoderator.models.RefreshIndexAdvancedInfoItem] - :param status: Refresh index status. - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - :param tracking_id: Tracking Id. - :type tracking_id: str - """ - - _attribute_map = { - 'content_source_id': {'key': 'ContentSourceId', 'type': 'str'}, - 'is_update_success': {'key': 'IsUpdateSuccess', 'type': 'bool'}, - 'advanced_info': {'key': 'AdvancedInfo', 'type': '[RefreshIndexAdvancedInfoItem]'}, - 'status': {'key': 'Status', 'type': 'Status'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - } - - def __init__(self, content_source_id=None, is_update_success=None, advanced_info=None, status=None, tracking_id=None): - super(RefreshIndex, self).__init__() - self.content_source_id = content_source_id - self.is_update_success = is_update_success - self.advanced_info = advanced_info - self.status = status - self.tracking_id = tracking_id diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/refresh_index_advanced_info_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/refresh_index_advanced_info_item.py deleted file mode 100644 index 9140f0066ecf..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/refresh_index_advanced_info_item.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class RefreshIndexAdvancedInfoItem(Model): - """RefreshIndexAdvancedInfoItem. - - :param key_one: Key parameter to describe advanced info. - :type key_one: str - :param key_two: Key parameter to describe advanced info. - :type key_two: str - """ - - _attribute_map = { - 'key_one': {'key': 'Key One', 'type': 'str'}, - 'key_two': {'key': 'Key Two', 'type': 'str'}, - } - - def __init__(self, key_one=None, key_two=None): - super(RefreshIndexAdvancedInfoItem, self).__init__() - self.key_one = key_one - self.key_two = key_two diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/review.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/review.py deleted file mode 100644 index ee32bfbcdc2e..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/review.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Review(Model): - """The Review object. - - :param review_id: Id of the review. - :type review_id: str - :param sub_team: Name of the subteam. - :type sub_team: str - :param status: The status string (). - :type status: str - :param reviewer_result_tags: Array of KeyValue with Reviewer set Tags. - :type reviewer_result_tags: - list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] - :param created_by: The reviewer name. - :type created_by: str - :param metadata: Array of KeyValue. - :type metadata: - list[~azure.cognitiveservices.vision.contentmoderator.models.KeyValuePair] - :param type: The type of content. - :type type: str - :param content: The content value. - :type content: str - :param content_id: Id of the content. - :type content_id: str - :param callback_endpoint: The callback endpoint. - :type callback_endpoint: str - """ - - _attribute_map = { - 'review_id': {'key': 'ReviewId', 'type': 'str'}, - 'sub_team': {'key': 'SubTeam', 'type': 'str'}, - 'status': {'key': 'Status', 'type': 'str'}, - 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[KeyValuePair]'}, - 'created_by': {'key': 'CreatedBy', 'type': 'str'}, - 'metadata': {'key': 'Metadata', 'type': '[KeyValuePair]'}, - 'type': {'key': 'Type', 'type': 'str'}, - 'content': {'key': 'Content', 'type': 'str'}, - 'content_id': {'key': 'ContentId', 'type': 'str'}, - 'callback_endpoint': {'key': 'CallbackEndpoint', 'type': 'str'}, - } - - def __init__(self, review_id=None, sub_team=None, status=None, reviewer_result_tags=None, created_by=None, metadata=None, type=None, content=None, content_id=None, callback_endpoint=None): - super(Review, self).__init__() - self.review_id = review_id - self.sub_team = sub_team - self.status = status - self.reviewer_result_tags = reviewer_result_tags - self.created_by = created_by - self.metadata = metadata - self.type = type - self.content = content - self.content_id = content_id - self.callback_endpoint = callback_endpoint diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/score.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/score.py deleted file mode 100644 index 4ed9e7e12641..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/score.py +++ /dev/null @@ -1,30 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Score(Model): - """The classification score details of the text. Click here for more - details on category classification. - - :param score: The category score. - :type score: float - """ - - _attribute_map = { - 'score': {'key': 'Score', 'type': 'float'}, - } - - def __init__(self, score=None): - super(Score, self).__init__() - self.score = score diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/screen.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/screen.py deleted file mode 100644 index 62ea694f24f8..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/screen.py +++ /dev/null @@ -1,67 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Screen(Model): - """The response for a Screen text request. - - :param original_text: The original text. - :type original_text: str - :param normalized_text: The normalized text. - :type normalized_text: str - :param auto_corrected_text: The autocorrected text - :type auto_corrected_text: str - :param misrepresentation: The misrepresentation text. - :type misrepresentation: list[str] - :param classification: The classification details of the text. - :type classification: - ~azure.cognitiveservices.vision.contentmoderator.models.Classification - :param status: The evaluate status. - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - :param pii: Personal Identifier Information details. - :type pii: ~azure.cognitiveservices.vision.contentmoderator.models.PII - :param language: Language of the input text content. - :type language: str - :param terms: - :type terms: - list[~azure.cognitiveservices.vision.contentmoderator.models.DetectedTerms] - :param tracking_id: Unique Content Moderator transaction Id. - :type tracking_id: str - """ - - _attribute_map = { - 'original_text': {'key': 'OriginalText', 'type': 'str'}, - 'normalized_text': {'key': 'NormalizedText', 'type': 'str'}, - 'auto_corrected_text': {'key': 'AutoCorrectedText', 'type': 'str'}, - 'misrepresentation': {'key': 'Misrepresentation', 'type': '[str]'}, - 'classification': {'key': 'Classification', 'type': 'Classification'}, - 'status': {'key': 'Status', 'type': 'Status'}, - 'pii': {'key': 'PII', 'type': 'PII'}, - 'language': {'key': 'Language', 'type': 'str'}, - 'terms': {'key': 'Terms', 'type': '[DetectedTerms]'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - } - - def __init__(self, original_text=None, normalized_text=None, auto_corrected_text=None, misrepresentation=None, classification=None, status=None, pii=None, language=None, terms=None, tracking_id=None): - super(Screen, self).__init__() - self.original_text = original_text - self.normalized_text = normalized_text - self.auto_corrected_text = auto_corrected_text - self.misrepresentation = misrepresentation - self.classification = classification - self.status = status - self.pii = pii - self.language = language - self.terms = terms - self.tracking_id = tracking_id diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/status.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/status.py deleted file mode 100644 index 6c311d678cc4..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/status.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Status(Model): - """Status properties. - - :param code: Status code. - :type code: int - :param description: Status description. - :type description: str - :param exception: Exception status. - :type exception: str - """ - - _attribute_map = { - 'code': {'key': 'Code', 'type': 'int'}, - 'description': {'key': 'Description', 'type': 'str'}, - 'exception': {'key': 'Exception', 'type': 'str'}, - } - - def __init__(self, code=None, description=None, exception=None): - super(Status, self).__init__() - self.code = code - self.description = description - self.exception = exception diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/tag.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/tag.py deleted file mode 100644 index 97f93efe611e..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/tag.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Tag(Model): - """Tag details. - - :param key: The key parameter. - :type key: str - :param value: The value parameter. - :type value: str - """ - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key=None, value=None): - super(Tag, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/term_list.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/term_list.py deleted file mode 100644 index e663034f4217..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/term_list.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class TermList(Model): - """Term List Properties. - - :param id: Term list Id. - :type id: int - :param name: Term list name. - :type name: str - :param description: Description for term list. - :type description: str - :param metadata: Term list metadata. - :type metadata: - ~azure.cognitiveservices.vision.contentmoderator.models.TermListMetadata - """ - - _attribute_map = { - 'id': {'key': 'Id', 'type': 'int'}, - 'name': {'key': 'Name', 'type': 'str'}, - 'description': {'key': 'Description', 'type': 'str'}, - 'metadata': {'key': 'Metadata', 'type': 'TermListMetadata'}, - } - - def __init__(self, id=None, name=None, description=None, metadata=None): - super(TermList, self).__init__() - self.id = id - self.name = name - self.description = description - self.metadata = metadata diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/term_list_metadata.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/term_list_metadata.py deleted file mode 100644 index 28e3266b2231..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/term_list_metadata.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class TermListMetadata(Model): - """Term list metadata. - - :param key_one: Optional Key value pair to describe your list. - :type key_one: str - :param key_two: Optional Key value pair to describe your list. - :type key_two: str - """ - - _attribute_map = { - 'key_one': {'key': 'Key One', 'type': 'str'}, - 'key_two': {'key': 'Key Two', 'type': 'str'}, - } - - def __init__(self, key_one=None, key_two=None): - super(TermListMetadata, self).__init__() - self.key_one = key_one - self.key_two = key_two diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms.py deleted file mode 100644 index 39d33d08a203..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Terms(Model): - """Terms properties. - - :param data: Term data details. - :type data: - ~azure.cognitiveservices.vision.contentmoderator.models.TermsData - :param paging: Paging details. - :type paging: - ~azure.cognitiveservices.vision.contentmoderator.models.TermsPaging - """ - - _attribute_map = { - 'data': {'key': 'Data', 'type': 'TermsData'}, - 'paging': {'key': 'Paging', 'type': 'TermsPaging'}, - } - - def __init__(self, data=None, paging=None): - super(Terms, self).__init__() - self.data = data - self.paging = paging diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_data.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_data.py deleted file mode 100644 index 0c0637c5d7b2..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_data.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class TermsData(Model): - """All term Id response properties. - - :param language: Language of the terms. - :type language: str - :param terms: List of terms. - :type terms: - list[~azure.cognitiveservices.vision.contentmoderator.models.TermsInList] - :param status: Term Status. - :type status: - ~azure.cognitiveservices.vision.contentmoderator.models.Status - :param tracking_id: Tracking Id. - :type tracking_id: str - """ - - _attribute_map = { - 'language': {'key': 'Language', 'type': 'str'}, - 'terms': {'key': 'Terms', 'type': '[TermsInList]'}, - 'status': {'key': 'Status', 'type': 'Status'}, - 'tracking_id': {'key': 'TrackingId', 'type': 'str'}, - } - - def __init__(self, language=None, terms=None, status=None, tracking_id=None): - super(TermsData, self).__init__() - self.language = language - self.terms = terms - self.status = status - self.tracking_id = tracking_id diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_in_list.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_in_list.py deleted file mode 100644 index ad38ca340003..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_in_list.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class TermsInList(Model): - """Terms in list Id passed. - - :param term: Added term details. - :type term: str - """ - - _attribute_map = { - 'term': {'key': 'Term', 'type': 'str'}, - } - - def __init__(self, term=None): - super(TermsInList, self).__init__() - self.term = term diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_paging.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_paging.py deleted file mode 100644 index 9bf0131ba40c..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/terms_paging.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class TermsPaging(Model): - """Paging details. - - :param total: Total details. - :type total: int - :param limit: Limit details. - :type limit: int - :param offset: Offset details. - :type offset: int - :param returned: Returned text details. - :type returned: int - """ - - _attribute_map = { - 'total': {'key': 'Total', 'type': 'int'}, - 'limit': {'key': 'Limit', 'type': 'int'}, - 'offset': {'key': 'Offset', 'type': 'int'}, - 'returned': {'key': 'Returned', 'type': 'int'}, - } - - def __init__(self, total=None, limit=None, offset=None, returned=None): - super(TermsPaging, self).__init__() - self.total = total - self.limit = limit - self.offset = offset - self.returned = returned diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/transcript_moderation_body_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/transcript_moderation_body_item.py deleted file mode 100644 index 0518d781bf1d..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/transcript_moderation_body_item.py +++ /dev/null @@ -1,38 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class TranscriptModerationBodyItem(Model): - """Schema items of the body. - - :param timestamp: Timestamp of the image. - :type timestamp: str - :param terms: Optional metadata details. - :type terms: - list[~azure.cognitiveservices.vision.contentmoderator.models.TranscriptModerationBodyItemTermsItem] - """ - - _validation = { - 'timestamp': {'required': True}, - 'terms': {'required': True}, - } - - _attribute_map = { - 'timestamp': {'key': 'Timestamp', 'type': 'str'}, - 'terms': {'key': 'Terms', 'type': '[TranscriptModerationBodyItemTermsItem]'}, - } - - def __init__(self, timestamp, terms): - super(TranscriptModerationBodyItem, self).__init__() - self.timestamp = timestamp - self.terms = terms diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/transcript_moderation_body_item_terms_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/transcript_moderation_body_item_terms_item.py deleted file mode 100644 index 22cf169e0b49..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/transcript_moderation_body_item_terms_item.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class TranscriptModerationBodyItemTermsItem(Model): - """TranscriptModerationBodyItemTermsItem. - - :param index: Index of the word - :type index: int - :param term: Detected word. - :type term: str - """ - - _validation = { - 'index': {'required': True}, - 'term': {'required': True}, - } - - _attribute_map = { - 'index': {'key': 'Index', 'type': 'int'}, - 'term': {'key': 'Term', 'type': 'str'}, - } - - def __init__(self, index, term): - super(TranscriptModerationBodyItemTermsItem, self).__init__() - self.index = index - self.term = term diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item.py deleted file mode 100644 index 8ae0e83b771c..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class VideoFrameBodyItem(Model): - """Schema items of the body. - - :param timestamp: Timestamp of the frame. - :type timestamp: str - :param frame_image: Content to review. - :type frame_image: str - :param reviewer_result_tags: - :type reviewer_result_tags: - list[~azure.cognitiveservices.vision.contentmoderator.models.VideoFrameBodyItemReviewerResultTagsItem] - :param metadata: Optional metadata details. - :type metadata: - list[~azure.cognitiveservices.vision.contentmoderator.models.VideoFrameBodyItemMetadataItem] - """ - - _validation = { - 'timestamp': {'required': True}, - 'frame_image': {'required': True}, - } - - _attribute_map = { - 'timestamp': {'key': 'Timestamp', 'type': 'str'}, - 'frame_image': {'key': 'FrameImage', 'type': 'str'}, - 'reviewer_result_tags': {'key': 'ReviewerResultTags', 'type': '[VideoFrameBodyItemReviewerResultTagsItem]'}, - 'metadata': {'key': 'Metadata', 'type': '[VideoFrameBodyItemMetadataItem]'}, - } - - def __init__(self, timestamp, frame_image, reviewer_result_tags=None, metadata=None): - super(VideoFrameBodyItem, self).__init__() - self.timestamp = timestamp - self.frame_image = frame_image - self.reviewer_result_tags = reviewer_result_tags - self.metadata = metadata diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item_metadata_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item_metadata_item.py deleted file mode 100644 index 356ff20ffb0d..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item_metadata_item.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class VideoFrameBodyItemMetadataItem(Model): - """VideoFrameBodyItemMetadataItem. - - :param key: Your key parameter. - :type key: str - :param value: Your value parameter. - :type value: str - """ - - _validation = { - 'key': {'required': True}, - 'value': {'required': True}, - } - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key, value): - super(VideoFrameBodyItemMetadataItem, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item_reviewer_result_tags_item.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item_reviewer_result_tags_item.py deleted file mode 100644 index 3f56d657a727..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/models/video_frame_body_item_reviewer_result_tags_item.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class VideoFrameBodyItemReviewerResultTagsItem(Model): - """VideoFrameBodyItemReviewerResultTagsItem. - - :param key: Your key parameter. - :type key: str - :param value: Your value parameter. - :type value: str - """ - - _validation = { - 'key': {'required': True}, - 'value': {'required': True}, - } - - _attribute_map = { - 'key': {'key': 'Key', 'type': 'str'}, - 'value': {'key': 'Value', 'type': 'str'}, - } - - def __init__(self, key, value): - super(VideoFrameBodyItemReviewerResultTagsItem, self).__init__() - self.key = key - self.value = value diff --git a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/version.py b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/version.py index e0ec669828cb..c995f7836cef 100644 --- a/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/version.py +++ b/azure-cognitiveservices-vision-contentmoderator/azure/cognitiveservices/vision/contentmoderator/version.py @@ -9,5 +9,4 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.1.0" - +VERSION = "0.2.0" diff --git a/azure-cognitiveservices-vision-contentmoderator/azure_bdist_wheel.py b/azure-cognitiveservices-vision-contentmoderator/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-vision-contentmoderator/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-vision-contentmoderator/sdk_packaging.toml b/azure-cognitiveservices-vision-contentmoderator/sdk_packaging.toml new file mode 100644 index 000000000000..07907c5ade98 --- /dev/null +++ b/azure-cognitiveservices-vision-contentmoderator/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-vision-contentmoderator" +package_nspkg = "azure-cognitiveservices-vision-nspkg" +package_pprint_name = "Cognitive Services Content Moderator" +package_doc_id = "cognitive-services" +is_stable = false +is_arm = false diff --git a/azure-cognitiveservices-vision-contentmoderator/setup.cfg b/azure-cognitiveservices-vision-contentmoderator/setup.cfg index 6197b40d106e..3c6e79cf31da 100644 --- a/azure-cognitiveservices-vision-contentmoderator/setup.cfg +++ b/azure-cognitiveservices-vision-contentmoderator/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-vision-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-vision-contentmoderator/setup.py b/azure-cognitiveservices-vision-contentmoderator/setup.py index 8111d4a03e2c..1f33265792a5 100644 --- a/azure-cognitiveservices-vision-contentmoderator/setup.py +++ b/azure-cognitiveservices-vision-contentmoderator/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-vision-contentmoderator" @@ -69,17 +63,25 @@ 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.vision', + ]), install_requires=[ - 'msrest>=0.4.24,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-vision-nspkg'], + } ) diff --git a/azure-cognitiveservices-vision-customvision/MANIFEST.in b/azure-cognitiveservices-vision-customvision/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-cognitiveservices-vision-customvision/MANIFEST.in +++ b/azure-cognitiveservices-vision-customvision/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-cognitiveservices-vision-customvision/README.rst b/azure-cognitiveservices-vision-customvision/README.rst index d8c393a73675..637b670d39ad 100644 --- a/azure-cognitiveservices-vision-customvision/README.rst +++ b/azure-cognitiveservices-vision-customvision/README.rst @@ -3,7 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Custom Vision Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. diff --git a/azure-cognitiveservices-vision-customvision/azure/__init__.py b/azure-cognitiveservices-vision-customvision/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-customvision/azure/__init__.py +++ b/azure-cognitiveservices-vision-customvision/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/__init__.py b/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/__init__.py +++ b/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-customvision/azure_bdist_wheel.py b/azure-cognitiveservices-vision-customvision/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-vision-customvision/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-vision-customvision/setup.cfg b/azure-cognitiveservices-vision-customvision/setup.cfg index 6197b40d106e..3c6e79cf31da 100644 --- a/azure-cognitiveservices-vision-customvision/setup.cfg +++ b/azure-cognitiveservices-vision-customvision/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-vision-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-vision-customvision/setup.py b/azure-cognitiveservices-vision-customvision/setup.py index af4df99dddaf..96db640f2a90 100644 --- a/azure-cognitiveservices-vision-customvision/setup.py +++ b/azure-cognitiveservices-vision-customvision/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-vision-customvision" @@ -76,10 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.vision', + ]), install_requires=[ - 'msrest>=0.4.28,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-vision-nspkg'], + } ) diff --git a/azure-cognitiveservices-vision-face/HISTORY.rst b/azure-cognitiveservices-vision-face/HISTORY.rst index d521caf0f949..15f4494a3164 100644 --- a/azure-cognitiveservices-vision-face/HISTORY.rst +++ b/azure-cognitiveservices-vision-face/HISTORY.rst @@ -3,7 +3,7 @@ Release History =============== -0.1.0 (2018-01-12) +0.1.0 (2018-10-17) ++++++++++++++++++ * Initial Release diff --git a/azure-cognitiveservices-vision-face/MANIFEST.in b/azure-cognitiveservices-vision-face/MANIFEST.in index 9ecaeb15de50..e437a6594c1b 100644 --- a/azure-cognitiveservices-vision-face/MANIFEST.in +++ b/azure-cognitiveservices-vision-face/MANIFEST.in @@ -1,2 +1,5 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/cognitiveservices/__init__.py +include azure/cognitiveservices/vision/__init__.py + diff --git a/azure-cognitiveservices-vision-face/README.rst b/azure-cognitiveservices-vision-face/README.rst index 2775509d3801..072d2c22386f 100644 --- a/azure-cognitiveservices-vision-face/README.rst +++ b/azure-cognitiveservices-vision-face/README.rst @@ -3,13 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Cognitive Services Face Client Library. -Azure Resource Manager (ARM) is the next generation of management APIs that -replace the old Azure Service Management (ASM). - -This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6. - -For the older Azure Service Management (ASM) libraries, see -`azure-servicemanagement-legacy `__ library. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -33,6 +27,14 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: pip uninstall azure +Usage +===== + +For code examples, see `Cognitive Services Face +`__ +on docs.microsoft.com. + + Provide Feedback ================ diff --git a/azure-cognitiveservices-vision-face/azure/__init__.py b/azure-cognitiveservices-vision-face/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-face/azure/__init__.py +++ b/azure-cognitiveservices-vision-face/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/__init__.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/__init__.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/__init__.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/__init__.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/__init__.py index 6fb1f4b18994..15376d8ae672 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/__init__.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/__init__.py @@ -9,10 +9,10 @@ # regenerated. # -------------------------------------------------------------------------- -from .face_api import FaceAPI +from .face_client import FaceClient from .version import VERSION -__all__ = ['FaceAPI'] +__all__ = ['FaceClient'] __version__ = VERSION diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/face_api.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/face_api.py deleted file mode 100644 index 94e7879cfc9b..000000000000 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/face_api.py +++ /dev/null @@ -1,101 +0,0 @@ -# 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.service_client import ServiceClient -from msrest import Configuration, Serializer, Deserializer -from .version import VERSION -from .operations.face_operations import FaceOperations -from .operations.person_group_person_operations import PersonGroupPersonOperations -from .operations.person_group_operations import PersonGroupOperations -from .operations.face_list_operations import FaceListOperations -from . import models - - -class FaceAPIConfiguration(Configuration): - """Configuration for FaceAPI - Note that all parameters used to create this instance are saved as instance - attributes. - - :param azure_region: Supported Azure regions for Cognitive Services - endpoints. Possible values include: 'westus', 'westeurope', - 'southeastasia', 'eastus2', 'westcentralus', 'westus2', 'eastus', - 'southcentralus', 'northeurope', 'eastasia', 'australiaeast', - 'brazilsouth' - :type azure_region: str or - ~azure.cognitiveservices.vision.face.models.AzureRegions - :param credentials: Subscription credentials which uniquely identify - client subscription. - :type credentials: None - """ - - def __init__( - self, azure_region, credentials): - - if azure_region is None: - raise ValueError("Parameter 'azure_region' must not be None.") - if credentials is None: - raise ValueError("Parameter 'credentials' must not be None.") - base_url = 'https://{AzureRegion}.api.cognitive.microsoft.com/face/v1.0' - - super(FaceAPIConfiguration, self).__init__(base_url) - - self.add_user_agent('azure-cognitiveservices-vision-face/{}'.format(VERSION)) - - self.azure_region = azure_region - self.credentials = credentials - - -class FaceAPI(object): - """An API for face detection, verification, and identification. - - :ivar config: Configuration for client. - :vartype config: FaceAPIConfiguration - - :ivar face: Face operations - :vartype face: azure.cognitiveservices.vision.face.operations.FaceOperations - :ivar person_group_person: PersonGroupPerson operations - :vartype person_group_person: azure.cognitiveservices.vision.face.operations.PersonGroupPersonOperations - :ivar person_group: PersonGroup operations - :vartype person_group: azure.cognitiveservices.vision.face.operations.PersonGroupOperations - :ivar face_list: FaceList operations - :vartype face_list: azure.cognitiveservices.vision.face.operations.FaceListOperations - - :param azure_region: Supported Azure regions for Cognitive Services - endpoints. Possible values include: 'westus', 'westeurope', - 'southeastasia', 'eastus2', 'westcentralus', 'westus2', 'eastus', - 'southcentralus', 'northeurope', 'eastasia', 'australiaeast', - 'brazilsouth' - :type azure_region: str or - ~azure.cognitiveservices.vision.face.models.AzureRegions - :param credentials: Subscription credentials which uniquely identify - client subscription. - :type credentials: None - """ - - def __init__( - self, azure_region, credentials): - - self.config = FaceAPIConfiguration(azure_region, credentials) - self._client = ServiceClient(self.config.credentials, self.config) - - client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '1.0' - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - - self.face = FaceOperations( - self._client, self.config, self._serialize, self._deserialize) - self.person_group_person = PersonGroupPersonOperations( - self._client, self.config, self._serialize, self._deserialize) - self.person_group = PersonGroupOperations( - self._client, self.config, self._serialize, self._deserialize) - self.face_list = FaceListOperations( - self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/face_client.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/face_client.py new file mode 100644 index 000000000000..024f0fdac4c5 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/face_client.py @@ -0,0 +1,108 @@ +# 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.service_client import SDKClient +from msrest import Configuration, Serializer, Deserializer +from .version import VERSION +from .operations.face_operations import FaceOperations +from .operations.person_group_person_operations import PersonGroupPersonOperations +from .operations.person_group_operations import PersonGroupOperations +from .operations.face_list_operations import FaceListOperations +from .operations.large_person_group_person_operations import LargePersonGroupPersonOperations +from .operations.large_person_group_operations import LargePersonGroupOperations +from .operations.large_face_list_operations import LargeFaceListOperations +from . import models + + +class FaceClientConfiguration(Configuration): + """Configuration for FaceClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param endpoint: Supported Cognitive Services endpoints (protocol and + hostname, for example: https://westus.api.cognitive.microsoft.com). + :type endpoint: str + :param credentials: Subscription credentials which uniquely identify + client subscription. + :type credentials: None + """ + + def __init__( + self, endpoint, credentials): + + if endpoint is None: + raise ValueError("Parameter 'endpoint' must not be None.") + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + base_url = '{Endpoint}/face/v1.0' + + super(FaceClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-cognitiveservices-vision-face/{}'.format(VERSION)) + + self.endpoint = endpoint + self.credentials = credentials + + +class FaceClient(SDKClient): + """An API for face detection, verification, and identification. + + :ivar config: Configuration for client. + :vartype config: FaceClientConfiguration + + :ivar face: Face operations + :vartype face: azure.cognitiveservices.vision.face.operations.FaceOperations + :ivar person_group_person: PersonGroupPerson operations + :vartype person_group_person: azure.cognitiveservices.vision.face.operations.PersonGroupPersonOperations + :ivar person_group: PersonGroup operations + :vartype person_group: azure.cognitiveservices.vision.face.operations.PersonGroupOperations + :ivar face_list: FaceList operations + :vartype face_list: azure.cognitiveservices.vision.face.operations.FaceListOperations + :ivar large_person_group_person: LargePersonGroupPerson operations + :vartype large_person_group_person: azure.cognitiveservices.vision.face.operations.LargePersonGroupPersonOperations + :ivar large_person_group: LargePersonGroup operations + :vartype large_person_group: azure.cognitiveservices.vision.face.operations.LargePersonGroupOperations + :ivar large_face_list: LargeFaceList operations + :vartype large_face_list: azure.cognitiveservices.vision.face.operations.LargeFaceListOperations + + :param endpoint: Supported Cognitive Services endpoints (protocol and + hostname, for example: https://westus.api.cognitive.microsoft.com). + :type endpoint: str + :param credentials: Subscription credentials which uniquely identify + client subscription. + :type credentials: None + """ + + def __init__( + self, endpoint, credentials): + + self.config = FaceClientConfiguration(endpoint, credentials) + super(FaceClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '1.0' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.face = FaceOperations( + self._client, self.config, self._serialize, self._deserialize) + self.person_group_person = PersonGroupPersonOperations( + self._client, self.config, self._serialize, self._deserialize) + self.person_group = PersonGroupOperations( + self._client, self.config, self._serialize, self._deserialize) + self.face_list = FaceListOperations( + self._client, self.config, self._serialize, self._deserialize) + self.large_person_group_person = LargePersonGroupPersonOperations( + self._client, self.config, self._serialize, self._deserialize) + self.large_person_group = LargePersonGroupOperations( + self._client, self.config, self._serialize, self._deserialize) + self.large_face_list = LargeFaceListOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/__init__.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/__init__.py index 0284e92feffc..4b6874f172bf 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/__init__.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/__init__.py @@ -9,43 +9,85 @@ # regenerated. # -------------------------------------------------------------------------- -from .error import Error -from .api_error import APIError, APIErrorException -from .face_rectangle import FaceRectangle -from .coordinate import Coordinate -from .face_landmarks import FaceLandmarks -from .facial_hair import FacialHair -from .head_pose import HeadPose -from .emotion import Emotion -from .hair_color import HairColor -from .hair import Hair -from .makeup import Makeup -from .occlusion import Occlusion -from .accessory import Accessory -from .blur import Blur -from .exposure import Exposure -from .noise import Noise -from .face_attributes import FaceAttributes -from .detected_face import DetectedFace -from .find_similar_request import FindSimilarRequest -from .similar_face import SimilarFace -from .group_request import GroupRequest -from .group_result import GroupResult -from .identify_request import IdentifyRequest -from .identify_candidate import IdentifyCandidate -from .identify_result import IdentifyResult -from .verify_face_to_person_request import VerifyFaceToPersonRequest -from .verify_face_to_face_request import VerifyFaceToFaceRequest -from .verify_result import VerifyResult -from .persisted_face import PersistedFace -from .face_list import FaceList -from .person_group import PersonGroup -from .person import Person -from .update_person_face_request import UpdatePersonFaceRequest -from .training_status import TrainingStatus -from .name_and_user_data_contract import NameAndUserDataContract -from .image_url import ImageUrl -from .face_api_enums import ( +try: + from .error_py3 import Error + from .api_error_py3 import APIError, APIErrorException + from .face_rectangle_py3 import FaceRectangle + from .coordinate_py3 import Coordinate + from .face_landmarks_py3 import FaceLandmarks + from .facial_hair_py3 import FacialHair + from .head_pose_py3 import HeadPose + from .emotion_py3 import Emotion + from .hair_color_py3 import HairColor + from .hair_py3 import Hair + from .makeup_py3 import Makeup + from .occlusion_py3 import Occlusion + from .accessory_py3 import Accessory + from .blur_py3 import Blur + from .exposure_py3 import Exposure + from .noise_py3 import Noise + from .face_attributes_py3 import FaceAttributes + from .detected_face_py3 import DetectedFace + from .find_similar_request_py3 import FindSimilarRequest + from .similar_face_py3 import SimilarFace + from .group_request_py3 import GroupRequest + from .group_result_py3 import GroupResult + from .identify_request_py3 import IdentifyRequest + from .identify_candidate_py3 import IdentifyCandidate + from .identify_result_py3 import IdentifyResult + from .verify_face_to_person_request_py3 import VerifyFaceToPersonRequest + from .verify_face_to_face_request_py3 import VerifyFaceToFaceRequest + from .verify_result_py3 import VerifyResult + from .persisted_face_py3 import PersistedFace + from .face_list_py3 import FaceList + from .person_group_py3 import PersonGroup + from .person_py3 import Person + from .large_face_list_py3 import LargeFaceList + from .large_person_group_py3 import LargePersonGroup + from .update_face_request_py3 import UpdateFaceRequest + from .training_status_py3 import TrainingStatus + from .name_and_user_data_contract_py3 import NameAndUserDataContract + from .image_url_py3 import ImageUrl +except (SyntaxError, ImportError): + from .error import Error + from .api_error import APIError, APIErrorException + from .face_rectangle import FaceRectangle + from .coordinate import Coordinate + from .face_landmarks import FaceLandmarks + from .facial_hair import FacialHair + from .head_pose import HeadPose + from .emotion import Emotion + from .hair_color import HairColor + from .hair import Hair + from .makeup import Makeup + from .occlusion import Occlusion + from .accessory import Accessory + from .blur import Blur + from .exposure import Exposure + from .noise import Noise + from .face_attributes import FaceAttributes + from .detected_face import DetectedFace + from .find_similar_request import FindSimilarRequest + from .similar_face import SimilarFace + from .group_request import GroupRequest + from .group_result import GroupResult + from .identify_request import IdentifyRequest + from .identify_candidate import IdentifyCandidate + from .identify_result import IdentifyResult + from .verify_face_to_person_request import VerifyFaceToPersonRequest + from .verify_face_to_face_request import VerifyFaceToFaceRequest + from .verify_result import VerifyResult + from .persisted_face import PersistedFace + from .face_list import FaceList + from .person_group import PersonGroup + from .person import Person + from .large_face_list import LargeFaceList + from .large_person_group import LargePersonGroup + from .update_face_request import UpdateFaceRequest + from .training_status import TrainingStatus + from .name_and_user_data_contract import NameAndUserDataContract + from .image_url import ImageUrl +from .face_client_enums import ( Gender, GlassesType, HairColorType, @@ -56,7 +98,6 @@ FindSimilarMatchMode, TrainingStatusType, FaceAttributeType, - AzureRegions, ) __all__ = [ @@ -92,7 +133,9 @@ 'FaceList', 'PersonGroup', 'Person', - 'UpdatePersonFaceRequest', + 'LargeFaceList', + 'LargePersonGroup', + 'UpdateFaceRequest', 'TrainingStatus', 'NameAndUserDataContract', 'ImageUrl', @@ -106,5 +149,4 @@ 'FindSimilarMatchMode', 'TrainingStatusType', 'FaceAttributeType', - 'AzureRegions', ] diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/accessory.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/accessory.py index d90e097955e6..b86acc571c10 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/accessory.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/accessory.py @@ -28,7 +28,7 @@ class Accessory(Model): 'confidence': {'key': 'confidence', 'type': 'float'}, } - def __init__(self, type=None, confidence=None): - super(Accessory, self).__init__() - self.type = type - self.confidence = confidence + def __init__(self, **kwargs): + super(Accessory, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.confidence = kwargs.get('confidence', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/accessory_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/accessory_py3.py new file mode 100644 index 000000000000..76a6b68edbbd --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/accessory_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Accessory(Model): + """Accessory item and corresponding confidence level. + + :param type: Type of an accessory. Possible values include: 'headWear', + 'glasses', 'mask' + :type type: str or + ~azure.cognitiveservices.vision.face.models.AccessoryType + :param confidence: Confidence level of an accessory + :type confidence: float + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'AccessoryType'}, + 'confidence': {'key': 'confidence', 'type': 'float'}, + } + + def __init__(self, *, type=None, confidence: float=None, **kwargs) -> None: + super(Accessory, self).__init__(**kwargs) + self.type = type + self.confidence = confidence diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/api_error.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/api_error.py index 3c50d6f06c96..79e8c1765e4b 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/api_error.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/api_error.py @@ -24,9 +24,9 @@ class APIError(Model): 'error': {'key': 'error', 'type': 'Error'}, } - def __init__(self, error=None): - super(APIError, self).__init__() - self.error = error + def __init__(self, **kwargs): + super(APIError, self).__init__(**kwargs) + self.error = kwargs.get('error', None) class APIErrorException(HttpOperationError): diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/api_error_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/api_error_py3.py new file mode 100644 index 000000000000..4e362714807d --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/api_error_py3.py @@ -0,0 +1,41 @@ +# 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 + + +class APIError(Model): + """Error information returned by the API. + + :param error: + :type error: ~azure.cognitiveservices.vision.face.models.Error + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, *, error=None, **kwargs) -> None: + super(APIError, self).__init__(**kwargs) + self.error = error + + +class APIErrorException(HttpOperationError): + """Server responsed with exception of type: 'APIError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(APIErrorException, self).__init__(deserialize, response, 'APIError', *args) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/blur.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/blur.py index 79c8e0e2437d..f7dead76fcf1 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/blur.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/blur.py @@ -28,7 +28,7 @@ class Blur(Model): 'value': {'key': 'value', 'type': 'float'}, } - def __init__(self, blur_level=None, value=None): - super(Blur, self).__init__() - self.blur_level = blur_level - self.value = value + def __init__(self, **kwargs): + super(Blur, self).__init__(**kwargs) + self.blur_level = kwargs.get('blur_level', None) + self.value = kwargs.get('value', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/blur_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/blur_py3.py new file mode 100644 index 000000000000..db3c6f5860af --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/blur_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Blur(Model): + """Properties describing any presence of blur within the image. + + :param blur_level: An enum value indicating level of blurriness. Possible + values include: 'Low', 'Medium', 'High' + :type blur_level: str or + ~azure.cognitiveservices.vision.face.models.BlurLevel + :param value: A number indicating level of blurriness ranging from 0 to 1. + :type value: float + """ + + _attribute_map = { + 'blur_level': {'key': 'blurLevel', 'type': 'BlurLevel'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, *, blur_level=None, value: float=None, **kwargs) -> None: + super(Blur, self).__init__(**kwargs) + self.blur_level = blur_level + self.value = value diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/coordinate.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/coordinate.py index 6274f67828e3..c786707ccfb9 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/coordinate.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/coordinate.py @@ -15,9 +15,11 @@ class Coordinate(Model): """Coordinates within an image. - :param x: The horizontal component, in pixels. + All required parameters must be populated in order to send to Azure. + + :param x: Required. The horizontal component, in pixels. :type x: float - :param y: The vertical component, in pixels. + :param y: Required. The vertical component, in pixels. :type y: float """ @@ -31,7 +33,7 @@ class Coordinate(Model): 'y': {'key': 'y', 'type': 'float'}, } - def __init__(self, x, y): - super(Coordinate, self).__init__() - self.x = x - self.y = y + def __init__(self, **kwargs): + super(Coordinate, self).__init__(**kwargs) + self.x = kwargs.get('x', None) + self.y = kwargs.get('y', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/coordinate_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/coordinate_py3.py new file mode 100644 index 000000000000..5068b2380dd5 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/coordinate_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Coordinate(Model): + """Coordinates within an image. + + All required parameters must be populated in order to send to Azure. + + :param x: Required. The horizontal component, in pixels. + :type x: float + :param y: Required. The vertical component, in pixels. + :type y: float + """ + + _validation = { + 'x': {'required': True}, + 'y': {'required': True}, + } + + _attribute_map = { + 'x': {'key': 'x', 'type': 'float'}, + 'y': {'key': 'y', 'type': 'float'}, + } + + def __init__(self, *, x: float, y: float, **kwargs) -> None: + super(Coordinate, self).__init__(**kwargs) + self.x = x + self.y = y diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/detected_face.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/detected_face.py index 7710d8234b9b..1902cba2492a 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/detected_face.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/detected_face.py @@ -15,9 +15,11 @@ class DetectedFace(Model): """Detected Face object. + All required parameters must be populated in order to send to Azure. + :param face_id: :type face_id: str - :param face_rectangle: + :param face_rectangle: Required. :type face_rectangle: ~azure.cognitiveservices.vision.face.models.FaceRectangle :param face_landmarks: @@ -39,9 +41,9 @@ class DetectedFace(Model): 'face_attributes': {'key': 'faceAttributes', 'type': 'FaceAttributes'}, } - def __init__(self, face_rectangle, face_id=None, face_landmarks=None, face_attributes=None): - super(DetectedFace, self).__init__() - self.face_id = face_id - self.face_rectangle = face_rectangle - self.face_landmarks = face_landmarks - self.face_attributes = face_attributes + def __init__(self, **kwargs): + super(DetectedFace, self).__init__(**kwargs) + self.face_id = kwargs.get('face_id', None) + self.face_rectangle = kwargs.get('face_rectangle', None) + self.face_landmarks = kwargs.get('face_landmarks', None) + self.face_attributes = kwargs.get('face_attributes', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/detected_face_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/detected_face_py3.py new file mode 100644 index 000000000000..ebb54646574c --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/detected_face_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DetectedFace(Model): + """Detected Face object. + + All required parameters must be populated in order to send to Azure. + + :param face_id: + :type face_id: str + :param face_rectangle: Required. + :type face_rectangle: + ~azure.cognitiveservices.vision.face.models.FaceRectangle + :param face_landmarks: + :type face_landmarks: + ~azure.cognitiveservices.vision.face.models.FaceLandmarks + :param face_attributes: + :type face_attributes: + ~azure.cognitiveservices.vision.face.models.FaceAttributes + """ + + _validation = { + 'face_rectangle': {'required': True}, + } + + _attribute_map = { + 'face_id': {'key': 'faceId', 'type': 'str'}, + 'face_rectangle': {'key': 'faceRectangle', 'type': 'FaceRectangle'}, + 'face_landmarks': {'key': 'faceLandmarks', 'type': 'FaceLandmarks'}, + 'face_attributes': {'key': 'faceAttributes', 'type': 'FaceAttributes'}, + } + + def __init__(self, *, face_rectangle, face_id: str=None, face_landmarks=None, face_attributes=None, **kwargs) -> None: + super(DetectedFace, self).__init__(**kwargs) + self.face_id = face_id + self.face_rectangle = face_rectangle + self.face_landmarks = face_landmarks + self.face_attributes = face_attributes diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/emotion.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/emotion.py index 16764d94baed..bd8a42b2306a 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/emotion.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/emotion.py @@ -45,13 +45,13 @@ class Emotion(Model): 'surprise': {'key': 'surprise', 'type': 'float'}, } - def __init__(self, anger=None, contempt=None, disgust=None, fear=None, happiness=None, neutral=None, sadness=None, surprise=None): - super(Emotion, self).__init__() - self.anger = anger - self.contempt = contempt - self.disgust = disgust - self.fear = fear - self.happiness = happiness - self.neutral = neutral - self.sadness = sadness - self.surprise = surprise + def __init__(self, **kwargs): + super(Emotion, self).__init__(**kwargs) + self.anger = kwargs.get('anger', None) + self.contempt = kwargs.get('contempt', None) + self.disgust = kwargs.get('disgust', None) + self.fear = kwargs.get('fear', None) + self.happiness = kwargs.get('happiness', None) + self.neutral = kwargs.get('neutral', None) + self.sadness = kwargs.get('sadness', None) + self.surprise = kwargs.get('surprise', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/emotion_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/emotion_py3.py new file mode 100644 index 000000000000..552f1b193389 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/emotion_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Emotion(Model): + """Properties describing facial emotion in form of confidence ranging from 0 + to 1. + + :param anger: + :type anger: float + :param contempt: + :type contempt: float + :param disgust: + :type disgust: float + :param fear: + :type fear: float + :param happiness: + :type happiness: float + :param neutral: + :type neutral: float + :param sadness: + :type sadness: float + :param surprise: + :type surprise: float + """ + + _attribute_map = { + 'anger': {'key': 'anger', 'type': 'float'}, + 'contempt': {'key': 'contempt', 'type': 'float'}, + 'disgust': {'key': 'disgust', 'type': 'float'}, + 'fear': {'key': 'fear', 'type': 'float'}, + 'happiness': {'key': 'happiness', 'type': 'float'}, + 'neutral': {'key': 'neutral', 'type': 'float'}, + 'sadness': {'key': 'sadness', 'type': 'float'}, + 'surprise': {'key': 'surprise', 'type': 'float'}, + } + + def __init__(self, *, anger: float=None, contempt: float=None, disgust: float=None, fear: float=None, happiness: float=None, neutral: float=None, sadness: float=None, surprise: float=None, **kwargs) -> None: + super(Emotion, self).__init__(**kwargs) + self.anger = anger + self.contempt = contempt + self.disgust = disgust + self.fear = fear + self.happiness = happiness + self.neutral = neutral + self.sadness = sadness + self.surprise = surprise diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/error.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/error.py index 8f2f89ad37e1..a41106cfaca6 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/error.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/error.py @@ -26,7 +26,7 @@ class Error(Model): 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, code=None, message=None): - super(Error, self).__init__() - self.code = code - self.message = message + def __init__(self, **kwargs): + super(Error, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/error_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/error_py3.py new file mode 100644 index 000000000000..08e8cb04c44d --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/error_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Error(Model): + """Error body. + + :param code: + :type code: str + :param 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(Error, self).__init__(**kwargs) + self.code = code + self.message = message diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/exposure.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/exposure.py index 9aee1b9eb433..07c7359c6dab 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/exposure.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/exposure.py @@ -30,7 +30,7 @@ class Exposure(Model): 'value': {'key': 'value', 'type': 'float'}, } - def __init__(self, exposure_level=None, value=None): - super(Exposure, self).__init__() - self.exposure_level = exposure_level - self.value = value + def __init__(self, **kwargs): + super(Exposure, self).__init__(**kwargs) + self.exposure_level = kwargs.get('exposure_level', None) + self.value = kwargs.get('value', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/exposure_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/exposure_py3.py new file mode 100644 index 000000000000..efff64344121 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/exposure_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Exposure(Model): + """Properties describing exposure level of the image. + + :param exposure_level: An enum value indicating level of exposure. + Possible values include: 'UnderExposure', 'GoodExposure', 'OverExposure' + :type exposure_level: str or + ~azure.cognitiveservices.vision.face.models.ExposureLevel + :param value: A number indicating level of exposure level ranging from 0 + to 1. [0, 0.25) is under exposure. [0.25, 0.75) is good exposure. [0.75, + 1] is over exposure. + :type value: float + """ + + _attribute_map = { + 'exposure_level': {'key': 'exposureLevel', 'type': 'ExposureLevel'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, *, exposure_level=None, value: float=None, **kwargs) -> None: + super(Exposure, self).__init__(**kwargs) + self.exposure_level = exposure_level + self.value = value diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_api_enums.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_api_enums.py deleted file mode 100644 index 4906b26bd840..000000000000 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_api_enums.py +++ /dev/null @@ -1,115 +0,0 @@ -# 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 enum import Enum - - -class Gender(Enum): - - male = "male" - female = "female" - genderless = "genderless" - - -class GlassesType(Enum): - - no_glasses = "noGlasses" - reading_glasses = "readingGlasses" - sunglasses = "sunglasses" - swimming_goggles = "swimmingGoggles" - - -class HairColorType(Enum): - - unknown = "unknown" - white = "white" - gray = "gray" - blond = "blond" - brown = "brown" - red = "red" - black = "black" - other = "other" - - -class AccessoryType(Enum): - - head_wear = "headWear" - glasses = "glasses" - mask = "mask" - - -class BlurLevel(Enum): - - low = "Low" - medium = "Medium" - high = "High" - - -class ExposureLevel(Enum): - - under_exposure = "UnderExposure" - good_exposure = "GoodExposure" - over_exposure = "OverExposure" - - -class NoiseLevel(Enum): - - low = "Low" - medium = "Medium" - high = "High" - - -class FindSimilarMatchMode(Enum): - - match_person = "matchPerson" - match_face = "matchFace" - - -class TrainingStatusType(Enum): - - nonstarted = "nonstarted" - running = "running" - succeeded = "succeeded" - failed = "failed" - - -class FaceAttributeType(Enum): - - age = "age" - gender = "gender" - head_pose = "headPose" - smile = "smile" - facial_hair = "facialHair" - glasses = "glasses" - emotion = "emotion" - hair = "hair" - makeup = "makeup" - occlusion = "occlusion" - accessories = "accessories" - blur = "blur" - exposure = "exposure" - noise = "noise" - - -class AzureRegions(Enum): - - westus = "westus" - westeurope = "westeurope" - southeastasia = "southeastasia" - eastus2 = "eastus2" - westcentralus = "westcentralus" - westus2 = "westus2" - eastus = "eastus" - southcentralus = "southcentralus" - northeurope = "northeurope" - eastasia = "eastasia" - australiaeast = "australiaeast" - brazilsouth = "brazilsouth" diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_attributes.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_attributes.py index 3936b580b186..2f2903a85920 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_attributes.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_attributes.py @@ -67,19 +67,19 @@ class FaceAttributes(Model): 'noise': {'key': 'noise', 'type': 'Noise'}, } - def __init__(self, age=None, gender=None, smile=None, facial_hair=None, glasses=None, head_pose=None, emotion=None, hair=None, makeup=None, occlusion=None, accessories=None, blur=None, exposure=None, noise=None): - super(FaceAttributes, self).__init__() - self.age = age - self.gender = gender - self.smile = smile - self.facial_hair = facial_hair - self.glasses = glasses - self.head_pose = head_pose - self.emotion = emotion - self.hair = hair - self.makeup = makeup - self.occlusion = occlusion - self.accessories = accessories - self.blur = blur - self.exposure = exposure - self.noise = noise + def __init__(self, **kwargs): + super(FaceAttributes, self).__init__(**kwargs) + self.age = kwargs.get('age', None) + self.gender = kwargs.get('gender', None) + self.smile = kwargs.get('smile', None) + self.facial_hair = kwargs.get('facial_hair', None) + self.glasses = kwargs.get('glasses', None) + self.head_pose = kwargs.get('head_pose', None) + self.emotion = kwargs.get('emotion', None) + self.hair = kwargs.get('hair', None) + self.makeup = kwargs.get('makeup', None) + self.occlusion = kwargs.get('occlusion', None) + self.accessories = kwargs.get('accessories', None) + self.blur = kwargs.get('blur', None) + self.exposure = kwargs.get('exposure', None) + self.noise = kwargs.get('noise', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_attributes_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_attributes_py3.py new file mode 100644 index 000000000000..25cb9d63acea --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_attributes_py3.py @@ -0,0 +1,85 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FaceAttributes(Model): + """Face Attributes. + + :param age: Age in years + :type age: float + :param gender: Possible gender of the face. Possible values include: + 'male', 'female', 'genderless' + :type gender: str or ~azure.cognitiveservices.vision.face.models.Gender + :param smile: Smile intensity, a number between [0,1] + :type smile: float + :param facial_hair: Properties describing facial hair attributes. + :type facial_hair: ~azure.cognitiveservices.vision.face.models.FacialHair + :param glasses: Glasses type if any of the face. Possible values include: + 'noGlasses', 'readingGlasses', 'sunglasses', 'swimmingGoggles' + :type glasses: str or + ~azure.cognitiveservices.vision.face.models.GlassesType + :param head_pose: Properties indicating head pose of the face. + :type head_pose: ~azure.cognitiveservices.vision.face.models.HeadPose + :param emotion: Properties describing facial emotion in form of confidence + ranging from 0 to 1. + :type emotion: ~azure.cognitiveservices.vision.face.models.Emotion + :param hair: Properties describing hair attributes. + :type hair: ~azure.cognitiveservices.vision.face.models.Hair + :param makeup: Properties describing present makeups on a given face. + :type makeup: ~azure.cognitiveservices.vision.face.models.Makeup + :param occlusion: Properties describing occlusions on a given face. + :type occlusion: ~azure.cognitiveservices.vision.face.models.Occlusion + :param accessories: Properties describing any accessories on a given face. + :type accessories: + list[~azure.cognitiveservices.vision.face.models.Accessory] + :param blur: Properties describing any presence of blur within the image. + :type blur: ~azure.cognitiveservices.vision.face.models.Blur + :param exposure: Properties describing exposure level of the image. + :type exposure: ~azure.cognitiveservices.vision.face.models.Exposure + :param noise: Properties describing noise level of the image. + :type noise: ~azure.cognitiveservices.vision.face.models.Noise + """ + + _attribute_map = { + 'age': {'key': 'age', 'type': 'float'}, + 'gender': {'key': 'gender', 'type': 'Gender'}, + 'smile': {'key': 'smile', 'type': 'float'}, + 'facial_hair': {'key': 'facialHair', 'type': 'FacialHair'}, + 'glasses': {'key': 'glasses', 'type': 'GlassesType'}, + 'head_pose': {'key': 'headPose', 'type': 'HeadPose'}, + 'emotion': {'key': 'emotion', 'type': 'Emotion'}, + 'hair': {'key': 'hair', 'type': 'Hair'}, + 'makeup': {'key': 'makeup', 'type': 'Makeup'}, + 'occlusion': {'key': 'occlusion', 'type': 'Occlusion'}, + 'accessories': {'key': 'accessories', 'type': '[Accessory]'}, + 'blur': {'key': 'blur', 'type': 'Blur'}, + 'exposure': {'key': 'exposure', 'type': 'Exposure'}, + 'noise': {'key': 'noise', 'type': 'Noise'}, + } + + def __init__(self, *, age: float=None, gender=None, smile: float=None, facial_hair=None, glasses=None, head_pose=None, emotion=None, hair=None, makeup=None, occlusion=None, accessories=None, blur=None, exposure=None, noise=None, **kwargs) -> None: + super(FaceAttributes, self).__init__(**kwargs) + self.age = age + self.gender = gender + self.smile = smile + self.facial_hair = facial_hair + self.glasses = glasses + self.head_pose = head_pose + self.emotion = emotion + self.hair = hair + self.makeup = makeup + self.occlusion = occlusion + self.accessories = accessories + self.blur = blur + self.exposure = exposure + self.noise = noise diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_client_enums.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_client_enums.py new file mode 100644 index 000000000000..c7a86871cea2 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_client_enums.py @@ -0,0 +1,99 @@ +# 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 enum import Enum + + +class Gender(str, Enum): + + male = "male" + female = "female" + genderless = "genderless" + + +class GlassesType(str, Enum): + + no_glasses = "noGlasses" + reading_glasses = "readingGlasses" + sunglasses = "sunglasses" + swimming_goggles = "swimmingGoggles" + + +class HairColorType(str, Enum): + + unknown = "unknown" + white = "white" + gray = "gray" + blond = "blond" + brown = "brown" + red = "red" + black = "black" + other = "other" + + +class AccessoryType(str, Enum): + + head_wear = "headWear" + glasses = "glasses" + mask = "mask" + + +class BlurLevel(str, Enum): + + low = "Low" + medium = "Medium" + high = "High" + + +class ExposureLevel(str, Enum): + + under_exposure = "UnderExposure" + good_exposure = "GoodExposure" + over_exposure = "OverExposure" + + +class NoiseLevel(str, Enum): + + low = "Low" + medium = "Medium" + high = "High" + + +class FindSimilarMatchMode(str, Enum): + + match_person = "matchPerson" + match_face = "matchFace" + + +class TrainingStatusType(str, Enum): + + nonstarted = "nonstarted" + running = "running" + succeeded = "succeeded" + failed = "failed" + + +class FaceAttributeType(str, Enum): + + age = "age" + gender = "gender" + head_pose = "headPose" + smile = "smile" + facial_hair = "facialHair" + glasses = "glasses" + emotion = "emotion" + hair = "hair" + makeup = "makeup" + occlusion = "occlusion" + accessories = "accessories" + blur = "blur" + exposure = "exposure" + noise = "noise" diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_landmarks.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_landmarks.py index 1f9eb72dd7b3..7e385f435b69 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_landmarks.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_landmarks.py @@ -123,32 +123,32 @@ class FaceLandmarks(Model): 'under_lip_bottom': {'key': 'underLipBottom', 'type': 'Coordinate'}, } - def __init__(self, pupil_left=None, pupil_right=None, nose_tip=None, mouth_left=None, mouth_right=None, eyebrow_left_outer=None, eyebrow_left_inner=None, eye_left_outer=None, eye_left_top=None, eye_left_bottom=None, eye_left_inner=None, eyebrow_right_inner=None, eyebrow_right_outer=None, eye_right_inner=None, eye_right_top=None, eye_right_bottom=None, eye_right_outer=None, nose_root_left=None, nose_root_right=None, nose_left_alar_top=None, nose_right_alar_top=None, nose_left_alar_out_tip=None, nose_right_alar_out_tip=None, upper_lip_top=None, upper_lip_bottom=None, under_lip_top=None, under_lip_bottom=None): - super(FaceLandmarks, self).__init__() - self.pupil_left = pupil_left - self.pupil_right = pupil_right - self.nose_tip = nose_tip - self.mouth_left = mouth_left - self.mouth_right = mouth_right - self.eyebrow_left_outer = eyebrow_left_outer - self.eyebrow_left_inner = eyebrow_left_inner - self.eye_left_outer = eye_left_outer - self.eye_left_top = eye_left_top - self.eye_left_bottom = eye_left_bottom - self.eye_left_inner = eye_left_inner - self.eyebrow_right_inner = eyebrow_right_inner - self.eyebrow_right_outer = eyebrow_right_outer - self.eye_right_inner = eye_right_inner - self.eye_right_top = eye_right_top - self.eye_right_bottom = eye_right_bottom - self.eye_right_outer = eye_right_outer - self.nose_root_left = nose_root_left - self.nose_root_right = nose_root_right - self.nose_left_alar_top = nose_left_alar_top - self.nose_right_alar_top = nose_right_alar_top - self.nose_left_alar_out_tip = nose_left_alar_out_tip - self.nose_right_alar_out_tip = nose_right_alar_out_tip - self.upper_lip_top = upper_lip_top - self.upper_lip_bottom = upper_lip_bottom - self.under_lip_top = under_lip_top - self.under_lip_bottom = under_lip_bottom + def __init__(self, **kwargs): + super(FaceLandmarks, self).__init__(**kwargs) + self.pupil_left = kwargs.get('pupil_left', None) + self.pupil_right = kwargs.get('pupil_right', None) + self.nose_tip = kwargs.get('nose_tip', None) + self.mouth_left = kwargs.get('mouth_left', None) + self.mouth_right = kwargs.get('mouth_right', None) + self.eyebrow_left_outer = kwargs.get('eyebrow_left_outer', None) + self.eyebrow_left_inner = kwargs.get('eyebrow_left_inner', None) + self.eye_left_outer = kwargs.get('eye_left_outer', None) + self.eye_left_top = kwargs.get('eye_left_top', None) + self.eye_left_bottom = kwargs.get('eye_left_bottom', None) + self.eye_left_inner = kwargs.get('eye_left_inner', None) + self.eyebrow_right_inner = kwargs.get('eyebrow_right_inner', None) + self.eyebrow_right_outer = kwargs.get('eyebrow_right_outer', None) + self.eye_right_inner = kwargs.get('eye_right_inner', None) + self.eye_right_top = kwargs.get('eye_right_top', None) + self.eye_right_bottom = kwargs.get('eye_right_bottom', None) + self.eye_right_outer = kwargs.get('eye_right_outer', None) + self.nose_root_left = kwargs.get('nose_root_left', None) + self.nose_root_right = kwargs.get('nose_root_right', None) + self.nose_left_alar_top = kwargs.get('nose_left_alar_top', None) + self.nose_right_alar_top = kwargs.get('nose_right_alar_top', None) + self.nose_left_alar_out_tip = kwargs.get('nose_left_alar_out_tip', None) + self.nose_right_alar_out_tip = kwargs.get('nose_right_alar_out_tip', None) + self.upper_lip_top = kwargs.get('upper_lip_top', None) + self.upper_lip_bottom = kwargs.get('upper_lip_bottom', None) + self.under_lip_top = kwargs.get('under_lip_top', None) + self.under_lip_bottom = kwargs.get('under_lip_bottom', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_landmarks_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_landmarks_py3.py new file mode 100644 index 000000000000..3bffe97ff181 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_landmarks_py3.py @@ -0,0 +1,154 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FaceLandmarks(Model): + """A collection of 27-point face landmarks pointing to the important positions + of face components. + + :param pupil_left: + :type pupil_left: ~azure.cognitiveservices.vision.face.models.Coordinate + :param pupil_right: + :type pupil_right: ~azure.cognitiveservices.vision.face.models.Coordinate + :param nose_tip: + :type nose_tip: ~azure.cognitiveservices.vision.face.models.Coordinate + :param mouth_left: + :type mouth_left: ~azure.cognitiveservices.vision.face.models.Coordinate + :param mouth_right: + :type mouth_right: ~azure.cognitiveservices.vision.face.models.Coordinate + :param eyebrow_left_outer: + :type eyebrow_left_outer: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eyebrow_left_inner: + :type eyebrow_left_inner: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eye_left_outer: + :type eye_left_outer: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eye_left_top: + :type eye_left_top: ~azure.cognitiveservices.vision.face.models.Coordinate + :param eye_left_bottom: + :type eye_left_bottom: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eye_left_inner: + :type eye_left_inner: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eyebrow_right_inner: + :type eyebrow_right_inner: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eyebrow_right_outer: + :type eyebrow_right_outer: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eye_right_inner: + :type eye_right_inner: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eye_right_top: + :type eye_right_top: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eye_right_bottom: + :type eye_right_bottom: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param eye_right_outer: + :type eye_right_outer: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param nose_root_left: + :type nose_root_left: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param nose_root_right: + :type nose_root_right: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param nose_left_alar_top: + :type nose_left_alar_top: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param nose_right_alar_top: + :type nose_right_alar_top: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param nose_left_alar_out_tip: + :type nose_left_alar_out_tip: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param nose_right_alar_out_tip: + :type nose_right_alar_out_tip: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param upper_lip_top: + :type upper_lip_top: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param upper_lip_bottom: + :type upper_lip_bottom: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param under_lip_top: + :type under_lip_top: + ~azure.cognitiveservices.vision.face.models.Coordinate + :param under_lip_bottom: + :type under_lip_bottom: + ~azure.cognitiveservices.vision.face.models.Coordinate + """ + + _attribute_map = { + 'pupil_left': {'key': 'pupilLeft', 'type': 'Coordinate'}, + 'pupil_right': {'key': 'pupilRight', 'type': 'Coordinate'}, + 'nose_tip': {'key': 'noseTip', 'type': 'Coordinate'}, + 'mouth_left': {'key': 'mouthLeft', 'type': 'Coordinate'}, + 'mouth_right': {'key': 'mouthRight', 'type': 'Coordinate'}, + 'eyebrow_left_outer': {'key': 'eyebrowLeftOuter', 'type': 'Coordinate'}, + 'eyebrow_left_inner': {'key': 'eyebrowLeftInner', 'type': 'Coordinate'}, + 'eye_left_outer': {'key': 'eyeLeftOuter', 'type': 'Coordinate'}, + 'eye_left_top': {'key': 'eyeLeftTop', 'type': 'Coordinate'}, + 'eye_left_bottom': {'key': 'eyeLeftBottom', 'type': 'Coordinate'}, + 'eye_left_inner': {'key': 'eyeLeftInner', 'type': 'Coordinate'}, + 'eyebrow_right_inner': {'key': 'eyebrowRightInner', 'type': 'Coordinate'}, + 'eyebrow_right_outer': {'key': 'eyebrowRightOuter', 'type': 'Coordinate'}, + 'eye_right_inner': {'key': 'eyeRightInner', 'type': 'Coordinate'}, + 'eye_right_top': {'key': 'eyeRightTop', 'type': 'Coordinate'}, + 'eye_right_bottom': {'key': 'eyeRightBottom', 'type': 'Coordinate'}, + 'eye_right_outer': {'key': 'eyeRightOuter', 'type': 'Coordinate'}, + 'nose_root_left': {'key': 'noseRootLeft', 'type': 'Coordinate'}, + 'nose_root_right': {'key': 'noseRootRight', 'type': 'Coordinate'}, + 'nose_left_alar_top': {'key': 'noseLeftAlarTop', 'type': 'Coordinate'}, + 'nose_right_alar_top': {'key': 'noseRightAlarTop', 'type': 'Coordinate'}, + 'nose_left_alar_out_tip': {'key': 'noseLeftAlarOutTip', 'type': 'Coordinate'}, + 'nose_right_alar_out_tip': {'key': 'noseRightAlarOutTip', 'type': 'Coordinate'}, + 'upper_lip_top': {'key': 'upperLipTop', 'type': 'Coordinate'}, + 'upper_lip_bottom': {'key': 'upperLipBottom', 'type': 'Coordinate'}, + 'under_lip_top': {'key': 'underLipTop', 'type': 'Coordinate'}, + 'under_lip_bottom': {'key': 'underLipBottom', 'type': 'Coordinate'}, + } + + def __init__(self, *, pupil_left=None, pupil_right=None, nose_tip=None, mouth_left=None, mouth_right=None, eyebrow_left_outer=None, eyebrow_left_inner=None, eye_left_outer=None, eye_left_top=None, eye_left_bottom=None, eye_left_inner=None, eyebrow_right_inner=None, eyebrow_right_outer=None, eye_right_inner=None, eye_right_top=None, eye_right_bottom=None, eye_right_outer=None, nose_root_left=None, nose_root_right=None, nose_left_alar_top=None, nose_right_alar_top=None, nose_left_alar_out_tip=None, nose_right_alar_out_tip=None, upper_lip_top=None, upper_lip_bottom=None, under_lip_top=None, under_lip_bottom=None, **kwargs) -> None: + super(FaceLandmarks, self).__init__(**kwargs) + self.pupil_left = pupil_left + self.pupil_right = pupil_right + self.nose_tip = nose_tip + self.mouth_left = mouth_left + self.mouth_right = mouth_right + self.eyebrow_left_outer = eyebrow_left_outer + self.eyebrow_left_inner = eyebrow_left_inner + self.eye_left_outer = eye_left_outer + self.eye_left_top = eye_left_top + self.eye_left_bottom = eye_left_bottom + self.eye_left_inner = eye_left_inner + self.eyebrow_right_inner = eyebrow_right_inner + self.eyebrow_right_outer = eyebrow_right_outer + self.eye_right_inner = eye_right_inner + self.eye_right_top = eye_right_top + self.eye_right_bottom = eye_right_bottom + self.eye_right_outer = eye_right_outer + self.nose_root_left = nose_root_left + self.nose_root_right = nose_root_right + self.nose_left_alar_top = nose_left_alar_top + self.nose_right_alar_top = nose_right_alar_top + self.nose_left_alar_out_tip = nose_left_alar_out_tip + self.nose_right_alar_out_tip = nose_right_alar_out_tip + self.upper_lip_top = upper_lip_top + self.upper_lip_bottom = upper_lip_bottom + self.under_lip_top = under_lip_top + self.under_lip_bottom = under_lip_bottom diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_list.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_list.py index 9ea18a585d45..2ca0b350d9b5 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_list.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_list.py @@ -15,11 +15,13 @@ class FaceList(NameAndUserDataContract): """Face list object. + All required parameters must be populated in order to send to Azure. + :param name: User defined name, maximum length is 128. :type name: str :param user_data: User specified data. Length should not exceed 16KB. :type user_data: str - :param face_list_id: FaceListId of the target face list. + :param face_list_id: Required. FaceListId of the target face list. :type face_list_id: str :param persisted_faces: Persisted faces within the face list. :type persisted_faces: @@ -39,7 +41,7 @@ class FaceList(NameAndUserDataContract): 'persisted_faces': {'key': 'persistedFaces', 'type': '[PersistedFace]'}, } - def __init__(self, face_list_id, name=None, user_data=None, persisted_faces=None): - super(FaceList, self).__init__(name=name, user_data=user_data) - self.face_list_id = face_list_id - self.persisted_faces = persisted_faces + def __init__(self, **kwargs): + super(FaceList, self).__init__(**kwargs) + self.face_list_id = kwargs.get('face_list_id', None) + self.persisted_faces = kwargs.get('persisted_faces', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_list_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_list_py3.py new file mode 100644 index 000000000000..b0c2a5587a31 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_list_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .name_and_user_data_contract_py3 import NameAndUserDataContract + + +class FaceList(NameAndUserDataContract): + """Face list object. + + All required parameters must be populated in order to send to Azure. + + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param face_list_id: Required. FaceListId of the target face list. + :type face_list_id: str + :param persisted_faces: Persisted faces within the face list. + :type persisted_faces: + list[~azure.cognitiveservices.vision.face.models.PersistedFace] + """ + + _validation = { + 'name': {'max_length': 128}, + 'user_data': {'max_length': 16384}, + 'face_list_id': {'required': True, 'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + 'face_list_id': {'key': 'faceListId', 'type': 'str'}, + 'persisted_faces': {'key': 'persistedFaces', 'type': '[PersistedFace]'}, + } + + def __init__(self, *, face_list_id: str, name: str=None, user_data: str=None, persisted_faces=None, **kwargs) -> None: + super(FaceList, self).__init__(name=name, user_data=user_data, **kwargs) + self.face_list_id = face_list_id + self.persisted_faces = persisted_faces diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_rectangle.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_rectangle.py index a61cfa6f1b09..025a99404fa8 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_rectangle.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_rectangle.py @@ -15,15 +15,17 @@ class FaceRectangle(Model): """A rectangle within which a face can be found. - :param width: The width of the rectangle, in pixels. + All required parameters must be populated in order to send to Azure. + + :param width: Required. The width of the rectangle, in pixels. :type width: int - :param height: The height of the rectangle, in pixels. + :param height: Required. The height of the rectangle, in pixels. :type height: int - :param left: The distance from the left edge if the image to the left edge - of the rectangle, in pixels. + :param left: Required. The distance from the left edge if the image to the + left edge of the rectangle, in pixels. :type left: int - :param top: The distance from the top edge if the image to the top edge of - the rectangle, in pixels. + :param top: Required. The distance from the top edge if the image to the + top edge of the rectangle, in pixels. :type top: int """ @@ -41,9 +43,9 @@ class FaceRectangle(Model): 'top': {'key': 'top', 'type': 'int'}, } - def __init__(self, width, height, left, top): - super(FaceRectangle, self).__init__() - self.width = width - self.height = height - self.left = left - self.top = top + def __init__(self, **kwargs): + super(FaceRectangle, self).__init__(**kwargs) + self.width = kwargs.get('width', None) + self.height = kwargs.get('height', None) + self.left = kwargs.get('left', None) + self.top = kwargs.get('top', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_rectangle_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_rectangle_py3.py new file mode 100644 index 000000000000..ff85626ad83f --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/face_rectangle_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FaceRectangle(Model): + """A rectangle within which a face can be found. + + All required parameters must be populated in order to send to Azure. + + :param width: Required. The width of the rectangle, in pixels. + :type width: int + :param height: Required. The height of the rectangle, in pixels. + :type height: int + :param left: Required. The distance from the left edge if the image to the + left edge of the rectangle, in pixels. + :type left: int + :param top: Required. The distance from the top edge if the image to the + top edge of the rectangle, in pixels. + :type top: int + """ + + _validation = { + 'width': {'required': True}, + 'height': {'required': True}, + 'left': {'required': True}, + 'top': {'required': True}, + } + + _attribute_map = { + 'width': {'key': 'width', 'type': 'int'}, + 'height': {'key': 'height', 'type': 'int'}, + 'left': {'key': 'left', 'type': 'int'}, + 'top': {'key': 'top', 'type': 'int'}, + } + + def __init__(self, *, width: int, height: int, left: int, top: int, **kwargs) -> None: + super(FaceRectangle, self).__init__(**kwargs) + self.width = width + self.height = height + self.left = left + self.top = top diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/facial_hair.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/facial_hair.py index 72e5b1240908..f030e5b75824 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/facial_hair.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/facial_hair.py @@ -29,8 +29,8 @@ class FacialHair(Model): 'sideburns': {'key': 'sideburns', 'type': 'float'}, } - def __init__(self, moustache=None, beard=None, sideburns=None): - super(FacialHair, self).__init__() - self.moustache = moustache - self.beard = beard - self.sideburns = sideburns + def __init__(self, **kwargs): + super(FacialHair, self).__init__(**kwargs) + self.moustache = kwargs.get('moustache', None) + self.beard = kwargs.get('beard', None) + self.sideburns = kwargs.get('sideburns', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/facial_hair_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/facial_hair_py3.py new file mode 100644 index 000000000000..261f55ed2b1b --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/facial_hair_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FacialHair(Model): + """Properties describing facial hair attributes. + + :param moustache: + :type moustache: float + :param beard: + :type beard: float + :param sideburns: + :type sideburns: float + """ + + _attribute_map = { + 'moustache': {'key': 'moustache', 'type': 'float'}, + 'beard': {'key': 'beard', 'type': 'float'}, + 'sideburns': {'key': 'sideburns', 'type': 'float'}, + } + + def __init__(self, *, moustache: float=None, beard: float=None, sideburns: float=None, **kwargs) -> None: + super(FacialHair, self).__init__(**kwargs) + self.moustache = moustache + self.beard = beard + self.sideburns = sideburns diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/find_similar_request.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/find_similar_request.py index 11acb8bc2279..fb3fa5c2fdb4 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/find_similar_request.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/find_similar_request.py @@ -15,18 +15,28 @@ class FindSimilarRequest(Model): """Request body for find similar operation. - :param face_id: FaceId of the query face. User needs to call Face - Detect - first to get a valid faceId. Note that this faceId is not persisted and - will expire 24 hours after the detection call + All required parameters must be populated in order to send to Azure. + + :param face_id: Required. FaceId of the query face. User needs to call + Face - Detect first to get a valid faceId. Note that this faceId is not + persisted and will expire 24 hours after the detection call :type face_id: str :param face_list_id: An existing user-specified unique candidate face list, created in Face List - Create a Face List. Face list contains a set of persistedFaceIds which are persisted and will never expire. Parameter - faceListId and faceIds should not be provided at the same time + faceListId, largeFaceListId and faceIds should not be provided at the same + time。 :type face_list_id: str + :param large_face_list_id: An existing user-specified unique candidate + large face list, created in LargeFaceList - Create. Large face list + contains a set of persistedFaceIds which are persisted and will never + expire. Parameter faceListId, largeFaceListId and faceIds should not be + provided at the same time. + :type large_face_list_id: str :param face_ids: An array of candidate faceIds. All of them are created by Face - Detect and the faceIds will expire 24 hours after the detection - call. + call. The number of faceIds is limited to 1000. Parameter faceListId, + largeFaceListId and faceIds should not be provided at the same time. :type face_ids: list[str] :param max_num_of_candidates_returned: The number of top similar faces returned. The valid range is [1, 1000]. Default value: 20 . @@ -41,6 +51,7 @@ class FindSimilarRequest(Model): _validation = { 'face_id': {'required': True}, 'face_list_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'large_face_list_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, 'face_ids': {'max_items': 1000}, 'max_num_of_candidates_returned': {'maximum': 1000, 'minimum': 1}, } @@ -48,15 +59,17 @@ class FindSimilarRequest(Model): _attribute_map = { 'face_id': {'key': 'faceId', 'type': 'str'}, 'face_list_id': {'key': 'faceListId', 'type': 'str'}, + 'large_face_list_id': {'key': 'largeFaceListId', 'type': 'str'}, 'face_ids': {'key': 'faceIds', 'type': '[str]'}, 'max_num_of_candidates_returned': {'key': 'maxNumOfCandidatesReturned', 'type': 'int'}, 'mode': {'key': 'mode', 'type': 'FindSimilarMatchMode'}, } - def __init__(self, face_id, face_list_id=None, face_ids=None, max_num_of_candidates_returned=20, mode="matchPerson"): - super(FindSimilarRequest, self).__init__() - self.face_id = face_id - self.face_list_id = face_list_id - self.face_ids = face_ids - self.max_num_of_candidates_returned = max_num_of_candidates_returned - self.mode = mode + def __init__(self, **kwargs): + super(FindSimilarRequest, self).__init__(**kwargs) + self.face_id = kwargs.get('face_id', None) + self.face_list_id = kwargs.get('face_list_id', None) + self.large_face_list_id = kwargs.get('large_face_list_id', None) + self.face_ids = kwargs.get('face_ids', None) + self.max_num_of_candidates_returned = kwargs.get('max_num_of_candidates_returned', 20) + self.mode = kwargs.get('mode', "matchPerson") diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/find_similar_request_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/find_similar_request_py3.py new file mode 100644 index 000000000000..ea3cbc0c4295 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/find_similar_request_py3.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FindSimilarRequest(Model): + """Request body for find similar operation. + + All required parameters must be populated in order to send to Azure. + + :param face_id: Required. FaceId of the query face. User needs to call + Face - Detect first to get a valid faceId. Note that this faceId is not + persisted and will expire 24 hours after the detection call + :type face_id: str + :param face_list_id: An existing user-specified unique candidate face + list, created in Face List - Create a Face List. Face list contains a set + of persistedFaceIds which are persisted and will never expire. Parameter + faceListId, largeFaceListId and faceIds should not be provided at the same + time。 + :type face_list_id: str + :param large_face_list_id: An existing user-specified unique candidate + large face list, created in LargeFaceList - Create. Large face list + contains a set of persistedFaceIds which are persisted and will never + expire. Parameter faceListId, largeFaceListId and faceIds should not be + provided at the same time. + :type large_face_list_id: str + :param face_ids: An array of candidate faceIds. All of them are created by + Face - Detect and the faceIds will expire 24 hours after the detection + call. The number of faceIds is limited to 1000. Parameter faceListId, + largeFaceListId and faceIds should not be provided at the same time. + :type face_ids: list[str] + :param max_num_of_candidates_returned: The number of top similar faces + returned. The valid range is [1, 1000]. Default value: 20 . + :type max_num_of_candidates_returned: int + :param mode: Similar face searching mode. It can be "matchPerson" or + "matchFace". Possible values include: 'matchPerson', 'matchFace'. Default + value: "matchPerson" . + :type mode: str or + ~azure.cognitiveservices.vision.face.models.FindSimilarMatchMode + """ + + _validation = { + 'face_id': {'required': True}, + 'face_list_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'large_face_list_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'face_ids': {'max_items': 1000}, + 'max_num_of_candidates_returned': {'maximum': 1000, 'minimum': 1}, + } + + _attribute_map = { + 'face_id': {'key': 'faceId', 'type': 'str'}, + 'face_list_id': {'key': 'faceListId', 'type': 'str'}, + 'large_face_list_id': {'key': 'largeFaceListId', 'type': 'str'}, + 'face_ids': {'key': 'faceIds', 'type': '[str]'}, + 'max_num_of_candidates_returned': {'key': 'maxNumOfCandidatesReturned', 'type': 'int'}, + 'mode': {'key': 'mode', 'type': 'FindSimilarMatchMode'}, + } + + def __init__(self, *, face_id: str, face_list_id: str=None, large_face_list_id: str=None, face_ids=None, max_num_of_candidates_returned: int=20, mode="matchPerson", **kwargs) -> None: + super(FindSimilarRequest, self).__init__(**kwargs) + self.face_id = face_id + self.face_list_id = face_list_id + self.large_face_list_id = large_face_list_id + self.face_ids = face_ids + self.max_num_of_candidates_returned = max_num_of_candidates_returned + self.mode = mode diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_request.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_request.py index c5e483cea4f4..a7041836294d 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_request.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_request.py @@ -15,8 +15,10 @@ class GroupRequest(Model): """Request body for group request. - :param face_ids: Array of candidate faceId created by Face - Detect. The - maximum is 1000 faces + All required parameters must be populated in order to send to Azure. + + :param face_ids: Required. Array of candidate faceId created by Face - + Detect. The maximum is 1000 faces :type face_ids: list[str] """ @@ -28,6 +30,6 @@ class GroupRequest(Model): 'face_ids': {'key': 'faceIds', 'type': '[str]'}, } - def __init__(self, face_ids): - super(GroupRequest, self).__init__() - self.face_ids = face_ids + def __init__(self, **kwargs): + super(GroupRequest, self).__init__(**kwargs) + self.face_ids = kwargs.get('face_ids', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_request_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_request_py3.py new file mode 100644 index 000000000000..a30757a8d7c5 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_request_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupRequest(Model): + """Request body for group request. + + All required parameters must be populated in order to send to Azure. + + :param face_ids: Required. Array of candidate faceId created by Face - + Detect. The maximum is 1000 faces + :type face_ids: list[str] + """ + + _validation = { + 'face_ids': {'required': True, 'max_items': 1000}, + } + + _attribute_map = { + 'face_ids': {'key': 'faceIds', 'type': '[str]'}, + } + + def __init__(self, *, face_ids, **kwargs) -> None: + super(GroupRequest, self).__init__(**kwargs) + self.face_ids = face_ids diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_result.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_result.py index 5902d1d3e8c5..7a5bdbb62e32 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_result.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_result.py @@ -15,8 +15,10 @@ class GroupResult(Model): """An array of face groups based on face similarity. - :param groups: A partition of the original faces based on face similarity. - Groups are ranked by number of faces + All required parameters must be populated in order to send to Azure. + + :param groups: Required. A partition of the original faces based on face + similarity. Groups are ranked by number of faces :type groups: list[list[str]] :param messy_group: Face ids array of faces that cannot find any similar faces from original faces. @@ -32,7 +34,7 @@ class GroupResult(Model): 'messy_group': {'key': 'messyGroup', 'type': '[str]'}, } - def __init__(self, groups, messy_group=None): - super(GroupResult, self).__init__() - self.groups = groups - self.messy_group = messy_group + def __init__(self, **kwargs): + super(GroupResult, self).__init__(**kwargs) + self.groups = kwargs.get('groups', None) + self.messy_group = kwargs.get('messy_group', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_result_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_result_py3.py new file mode 100644 index 000000000000..5eb92f3fa8f4 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/group_result_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupResult(Model): + """An array of face groups based on face similarity. + + All required parameters must be populated in order to send to Azure. + + :param groups: Required. A partition of the original faces based on face + similarity. Groups are ranked by number of faces + :type groups: list[list[str]] + :param messy_group: Face ids array of faces that cannot find any similar + faces from original faces. + :type messy_group: list[str] + """ + + _validation = { + 'groups': {'required': True}, + } + + _attribute_map = { + 'groups': {'key': 'groups', 'type': '[[str]]'}, + 'messy_group': {'key': 'messyGroup', 'type': '[str]'}, + } + + def __init__(self, *, groups, messy_group=None, **kwargs) -> None: + super(GroupResult, self).__init__(**kwargs) + self.groups = groups + self.messy_group = messy_group diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair.py index 58d37ae637ca..cb6fe7d530a1 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair.py @@ -33,8 +33,8 @@ class Hair(Model): 'hair_color': {'key': 'hairColor', 'type': '[HairColor]'}, } - def __init__(self, bald=None, invisible=None, hair_color=None): - super(Hair, self).__init__() - self.bald = bald - self.invisible = invisible - self.hair_color = hair_color + def __init__(self, **kwargs): + super(Hair, self).__init__(**kwargs) + self.bald = kwargs.get('bald', None) + self.invisible = kwargs.get('invisible', None) + self.hair_color = kwargs.get('hair_color', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_color.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_color.py index 4093eef9e414..287ddbb6eca0 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_color.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_color.py @@ -28,7 +28,7 @@ class HairColor(Model): 'confidence': {'key': 'confidence', 'type': 'float'}, } - def __init__(self, color=None, confidence=None): - super(HairColor, self).__init__() - self.color = color - self.confidence = confidence + def __init__(self, **kwargs): + super(HairColor, self).__init__(**kwargs) + self.color = kwargs.get('color', None) + self.confidence = kwargs.get('confidence', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_color_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_color_py3.py new file mode 100644 index 000000000000..c520a106a3bc --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_color_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HairColor(Model): + """Hair color and associated confidence. + + :param color: Name of the hair color. Possible values include: 'unknown', + 'white', 'gray', 'blond', 'brown', 'red', 'black', 'other' + :type color: str or + ~azure.cognitiveservices.vision.face.models.HairColorType + :param confidence: Confidence level of the color + :type confidence: float + """ + + _attribute_map = { + 'color': {'key': 'color', 'type': 'HairColorType'}, + 'confidence': {'key': 'confidence', 'type': 'float'}, + } + + def __init__(self, *, color=None, confidence: float=None, **kwargs) -> None: + super(HairColor, self).__init__(**kwargs) + self.color = color + self.confidence = confidence diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_py3.py new file mode 100644 index 000000000000..457a80fc7ad3 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/hair_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Hair(Model): + """Properties describing hair attributes. + + :param bald: A number describing confidence level of whether the person is + bald. + :type bald: float + :param invisible: A boolean value describing whether the hair is visible + in the image. + :type invisible: bool + :param hair_color: An array of candidate colors and confidence level in + the presence of each. + :type hair_color: + list[~azure.cognitiveservices.vision.face.models.HairColor] + """ + + _attribute_map = { + 'bald': {'key': 'bald', 'type': 'float'}, + 'invisible': {'key': 'invisible', 'type': 'bool'}, + 'hair_color': {'key': 'hairColor', 'type': '[HairColor]'}, + } + + def __init__(self, *, bald: float=None, invisible: bool=None, hair_color=None, **kwargs) -> None: + super(Hair, self).__init__(**kwargs) + self.bald = bald + self.invisible = invisible + self.hair_color = hair_color diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/head_pose.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/head_pose.py index 29f987351673..ddc42406f476 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/head_pose.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/head_pose.py @@ -29,8 +29,8 @@ class HeadPose(Model): 'pitch': {'key': 'pitch', 'type': 'float'}, } - def __init__(self, roll=None, yaw=None, pitch=None): - super(HeadPose, self).__init__() - self.roll = roll - self.yaw = yaw - self.pitch = pitch + def __init__(self, **kwargs): + super(HeadPose, self).__init__(**kwargs) + self.roll = kwargs.get('roll', None) + self.yaw = kwargs.get('yaw', None) + self.pitch = kwargs.get('pitch', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/head_pose_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/head_pose_py3.py new file mode 100644 index 000000000000..bad69304e32e --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/head_pose_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HeadPose(Model): + """Properties indicating head pose of the face. + + :param roll: + :type roll: float + :param yaw: + :type yaw: float + :param pitch: + :type pitch: float + """ + + _attribute_map = { + 'roll': {'key': 'roll', 'type': 'float'}, + 'yaw': {'key': 'yaw', 'type': 'float'}, + 'pitch': {'key': 'pitch', 'type': 'float'}, + } + + def __init__(self, *, roll: float=None, yaw: float=None, pitch: float=None, **kwargs) -> None: + super(HeadPose, self).__init__(**kwargs) + self.roll = roll + self.yaw = yaw + self.pitch = pitch diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_candidate.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_candidate.py index baf6a7d41fd4..84588c7b1fed 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_candidate.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_candidate.py @@ -15,11 +15,13 @@ class IdentifyCandidate(Model): """All possible faces that may qualify. - :param person_id: Id of candidate + All required parameters must be populated in order to send to Azure. + + :param person_id: Required. Id of candidate :type person_id: str - :param confidence: Confidence threshold of identification, used to judge - whether one face belong to one person. The range of confidenceThreshold is - [0, 1] (default specified by algorithm). + :param confidence: Required. Confidence threshold of identification, used + to judge whether one face belong to one person. The range of + confidenceThreshold is [0, 1] (default specified by algorithm). :type confidence: float """ @@ -33,7 +35,7 @@ class IdentifyCandidate(Model): 'confidence': {'key': 'confidence', 'type': 'float'}, } - def __init__(self, person_id, confidence): - super(IdentifyCandidate, self).__init__() - self.person_id = person_id - self.confidence = confidence + def __init__(self, **kwargs): + super(IdentifyCandidate, self).__init__(**kwargs) + self.person_id = kwargs.get('person_id', None) + self.confidence = kwargs.get('confidence', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_candidate_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_candidate_py3.py new file mode 100644 index 000000000000..924a8bc33bf2 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_candidate_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IdentifyCandidate(Model): + """All possible faces that may qualify. + + All required parameters must be populated in order to send to Azure. + + :param person_id: Required. Id of candidate + :type person_id: str + :param confidence: Required. Confidence threshold of identification, used + to judge whether one face belong to one person. The range of + confidenceThreshold is [0, 1] (default specified by algorithm). + :type confidence: float + """ + + _validation = { + 'person_id': {'required': True}, + 'confidence': {'required': True}, + } + + _attribute_map = { + 'person_id': {'key': 'personId', 'type': 'str'}, + 'confidence': {'key': 'confidence', 'type': 'float'}, + } + + def __init__(self, *, person_id: str, confidence: float, **kwargs) -> None: + super(IdentifyCandidate, self).__init__(**kwargs) + self.person_id = person_id + self.confidence = confidence diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_request.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_request.py index 7c275a6140aa..5b7175b406e5 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_request.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_request.py @@ -15,13 +15,21 @@ class IdentifyRequest(Model): """Request body for identify face operation. + All required parameters must be populated in order to send to Azure. + + :param face_ids: Required. Array of query faces faceIds, created by the + Face - Detect. Each of the faces are identified independently. The valid + number of faceIds is between [1, 10]. + :type face_ids: list[str] :param person_group_id: PersonGroupId of the target person group, created - by PersonGroups.Create + by PersonGroup - Create. Parameter personGroupId and largePersonGroupId + should not be provided at the same time. :type person_group_id: str - :param face_ids: Array of query faces faceIds, created by the Face - - Detect. Each of the faces are identified independently. The valid number - of faceIds is between [1, 10]. - :type face_ids: list[str] + :param large_person_group_id: LargePersonGroupId of the target large + person group, created by LargePersonGroup - Create. Parameter + personGroupId and largePersonGroupId should not be provided at the same + time. + :type large_person_group_id: str :param max_num_of_candidates_returned: The range of maxNumOfCandidatesReturned is between 1 and 5 (default is 1). Default value: 1 . @@ -33,21 +41,24 @@ class IdentifyRequest(Model): """ _validation = { - 'person_group_id': {'required': True, 'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, 'face_ids': {'required': True, 'max_items': 10}, + 'person_group_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'large_person_group_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, 'max_num_of_candidates_returned': {'maximum': 5, 'minimum': 1}, } _attribute_map = { - 'person_group_id': {'key': 'personGroupId', 'type': 'str'}, 'face_ids': {'key': 'faceIds', 'type': '[str]'}, + 'person_group_id': {'key': 'personGroupId', 'type': 'str'}, + 'large_person_group_id': {'key': 'largePersonGroupId', 'type': 'str'}, 'max_num_of_candidates_returned': {'key': 'maxNumOfCandidatesReturned', 'type': 'int'}, 'confidence_threshold': {'key': 'confidenceThreshold', 'type': 'float'}, } - def __init__(self, person_group_id, face_ids, max_num_of_candidates_returned=1, confidence_threshold=None): - super(IdentifyRequest, self).__init__() - self.person_group_id = person_group_id - self.face_ids = face_ids - self.max_num_of_candidates_returned = max_num_of_candidates_returned - self.confidence_threshold = confidence_threshold + def __init__(self, **kwargs): + super(IdentifyRequest, self).__init__(**kwargs) + self.face_ids = kwargs.get('face_ids', None) + self.person_group_id = kwargs.get('person_group_id', None) + self.large_person_group_id = kwargs.get('large_person_group_id', None) + self.max_num_of_candidates_returned = kwargs.get('max_num_of_candidates_returned', 1) + self.confidence_threshold = kwargs.get('confidence_threshold', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_request_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_request_py3.py new file mode 100644 index 000000000000..b9494964f853 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_request_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IdentifyRequest(Model): + """Request body for identify face operation. + + All required parameters must be populated in order to send to Azure. + + :param face_ids: Required. Array of query faces faceIds, created by the + Face - Detect. Each of the faces are identified independently. The valid + number of faceIds is between [1, 10]. + :type face_ids: list[str] + :param person_group_id: PersonGroupId of the target person group, created + by PersonGroup - Create. Parameter personGroupId and largePersonGroupId + should not be provided at the same time. + :type person_group_id: str + :param large_person_group_id: LargePersonGroupId of the target large + person group, created by LargePersonGroup - Create. Parameter + personGroupId and largePersonGroupId should not be provided at the same + time. + :type large_person_group_id: str + :param max_num_of_candidates_returned: The range of + maxNumOfCandidatesReturned is between 1 and 5 (default is 1). Default + value: 1 . + :type max_num_of_candidates_returned: int + :param confidence_threshold: Confidence threshold of identification, used + to judge whether one face belong to one person. The range of + confidenceThreshold is [0, 1] (default specified by algorithm). + :type confidence_threshold: float + """ + + _validation = { + 'face_ids': {'required': True, 'max_items': 10}, + 'person_group_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'large_person_group_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'max_num_of_candidates_returned': {'maximum': 5, 'minimum': 1}, + } + + _attribute_map = { + 'face_ids': {'key': 'faceIds', 'type': '[str]'}, + 'person_group_id': {'key': 'personGroupId', 'type': 'str'}, + 'large_person_group_id': {'key': 'largePersonGroupId', 'type': 'str'}, + 'max_num_of_candidates_returned': {'key': 'maxNumOfCandidatesReturned', 'type': 'int'}, + 'confidence_threshold': {'key': 'confidenceThreshold', 'type': 'float'}, + } + + def __init__(self, *, face_ids, person_group_id: str=None, large_person_group_id: str=None, max_num_of_candidates_returned: int=1, confidence_threshold: float=None, **kwargs) -> None: + super(IdentifyRequest, self).__init__(**kwargs) + self.face_ids = face_ids + self.person_group_id = person_group_id + self.large_person_group_id = large_person_group_id + self.max_num_of_candidates_returned = max_num_of_candidates_returned + self.confidence_threshold = confidence_threshold diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_result.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_result.py index 1642dcb1b252..4a371afc92fd 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_result.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_result.py @@ -15,10 +15,12 @@ class IdentifyResult(Model): """Response body for identify face operation. - :param face_id: FaceId of the query face + All required parameters must be populated in order to send to Azure. + + :param face_id: Required. FaceId of the query face :type face_id: str - :param candidates: Identified person candidates for that face (ranked by - confidence). Array size should be no larger than input + :param candidates: Required. Identified person candidates for that face + (ranked by confidence). Array size should be no larger than input maxNumOfCandidatesReturned. If no person is identified, will return an empty array. :type candidates: @@ -35,7 +37,7 @@ class IdentifyResult(Model): 'candidates': {'key': 'candidates', 'type': '[IdentifyCandidate]'}, } - def __init__(self, face_id, candidates): - super(IdentifyResult, self).__init__() - self.face_id = face_id - self.candidates = candidates + def __init__(self, **kwargs): + super(IdentifyResult, self).__init__(**kwargs) + self.face_id = kwargs.get('face_id', None) + self.candidates = kwargs.get('candidates', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_result_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_result_py3.py new file mode 100644 index 000000000000..d629c03201f7 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/identify_result_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IdentifyResult(Model): + """Response body for identify face operation. + + All required parameters must be populated in order to send to Azure. + + :param face_id: Required. FaceId of the query face + :type face_id: str + :param candidates: Required. Identified person candidates for that face + (ranked by confidence). Array size should be no larger than input + maxNumOfCandidatesReturned. If no person is identified, will return an + empty array. + :type candidates: + list[~azure.cognitiveservices.vision.face.models.IdentifyCandidate] + """ + + _validation = { + 'face_id': {'required': True}, + 'candidates': {'required': True}, + } + + _attribute_map = { + 'face_id': {'key': 'faceId', 'type': 'str'}, + 'candidates': {'key': 'candidates', 'type': '[IdentifyCandidate]'}, + } + + def __init__(self, *, face_id: str, candidates, **kwargs) -> None: + super(IdentifyResult, self).__init__(**kwargs) + self.face_id = face_id + self.candidates = candidates diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/image_url.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/image_url.py index 05f4dab7f611..25106793ad9c 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/image_url.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/image_url.py @@ -15,7 +15,9 @@ class ImageUrl(Model): """ImageUrl. - :param url: + All required parameters must be populated in order to send to Azure. + + :param url: Required. Publicly reachable URL of an image :type url: str """ @@ -27,6 +29,6 @@ class ImageUrl(Model): 'url': {'key': 'url', 'type': 'str'}, } - def __init__(self, url): - super(ImageUrl, self).__init__() - self.url = url + def __init__(self, **kwargs): + super(ImageUrl, self).__init__(**kwargs) + self.url = kwargs.get('url', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/image_url_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/image_url_py3.py new file mode 100644 index 000000000000..3e00709f804d --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/image_url_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageUrl(Model): + """ImageUrl. + + All required parameters must be populated in order to send to Azure. + + :param url: Required. Publicly reachable URL of an image + :type url: str + """ + + _validation = { + 'url': {'required': True}, + } + + _attribute_map = { + 'url': {'key': 'url', 'type': 'str'}, + } + + def __init__(self, *, url: str, **kwargs) -> None: + super(ImageUrl, self).__init__(**kwargs) + self.url = url diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_face_list.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_face_list.py new file mode 100644 index 000000000000..f6a6d5525543 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_face_list.py @@ -0,0 +1,43 @@ +# 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 .name_and_user_data_contract import NameAndUserDataContract + + +class LargeFaceList(NameAndUserDataContract): + """Large face list object. + + All required parameters must be populated in order to send to Azure. + + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param large_face_list_id: Required. LargeFaceListId of the target large + face list. + :type large_face_list_id: str + """ + + _validation = { + 'name': {'max_length': 128}, + 'user_data': {'max_length': 16384}, + 'large_face_list_id': {'required': True, 'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + 'large_face_list_id': {'key': 'largeFaceListId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LargeFaceList, self).__init__(**kwargs) + self.large_face_list_id = kwargs.get('large_face_list_id', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_face_list_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_face_list_py3.py new file mode 100644 index 000000000000..4a05214af516 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_face_list_py3.py @@ -0,0 +1,43 @@ +# 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 .name_and_user_data_contract_py3 import NameAndUserDataContract + + +class LargeFaceList(NameAndUserDataContract): + """Large face list object. + + All required parameters must be populated in order to send to Azure. + + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param large_face_list_id: Required. LargeFaceListId of the target large + face list. + :type large_face_list_id: str + """ + + _validation = { + 'name': {'max_length': 128}, + 'user_data': {'max_length': 16384}, + 'large_face_list_id': {'required': True, 'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + 'large_face_list_id': {'key': 'largeFaceListId', 'type': 'str'}, + } + + def __init__(self, *, large_face_list_id: str, name: str=None, user_data: str=None, **kwargs) -> None: + super(LargeFaceList, self).__init__(name=name, user_data=user_data, **kwargs) + self.large_face_list_id = large_face_list_id diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_person_group.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_person_group.py new file mode 100644 index 000000000000..f65f661b5057 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_person_group.py @@ -0,0 +1,43 @@ +# 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 .name_and_user_data_contract import NameAndUserDataContract + + +class LargePersonGroup(NameAndUserDataContract): + """Large person group object. + + All required parameters must be populated in order to send to Azure. + + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param large_person_group_id: Required. LargePersonGroupId of the target + large person groups + :type large_person_group_id: str + """ + + _validation = { + 'name': {'max_length': 128}, + 'user_data': {'max_length': 16384}, + 'large_person_group_id': {'required': True, 'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + 'large_person_group_id': {'key': 'largePersonGroupId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LargePersonGroup, self).__init__(**kwargs) + self.large_person_group_id = kwargs.get('large_person_group_id', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_person_group_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_person_group_py3.py new file mode 100644 index 000000000000..f28979ee5cfe --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/large_person_group_py3.py @@ -0,0 +1,43 @@ +# 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 .name_and_user_data_contract_py3 import NameAndUserDataContract + + +class LargePersonGroup(NameAndUserDataContract): + """Large person group object. + + All required parameters must be populated in order to send to Azure. + + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param large_person_group_id: Required. LargePersonGroupId of the target + large person groups + :type large_person_group_id: str + """ + + _validation = { + 'name': {'max_length': 128}, + 'user_data': {'max_length': 16384}, + 'large_person_group_id': {'required': True, 'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + 'large_person_group_id': {'key': 'largePersonGroupId', 'type': 'str'}, + } + + def __init__(self, *, large_person_group_id: str, name: str=None, user_data: str=None, **kwargs) -> None: + super(LargePersonGroup, self).__init__(name=name, user_data=user_data, **kwargs) + self.large_person_group_id = large_person_group_id diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/makeup.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/makeup.py index 75da48f1bdc6..bc02e44ce561 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/makeup.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/makeup.py @@ -28,7 +28,7 @@ class Makeup(Model): 'lip_makeup': {'key': 'lipMakeup', 'type': 'bool'}, } - def __init__(self, eye_makeup=None, lip_makeup=None): - super(Makeup, self).__init__() - self.eye_makeup = eye_makeup - self.lip_makeup = lip_makeup + def __init__(self, **kwargs): + super(Makeup, self).__init__(**kwargs) + self.eye_makeup = kwargs.get('eye_makeup', None) + self.lip_makeup = kwargs.get('lip_makeup', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/makeup_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/makeup_py3.py new file mode 100644 index 000000000000..777f7bf25d19 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/makeup_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Makeup(Model): + """Properties describing present makeups on a given face. + + :param eye_makeup: A boolean value describing whether eye makeup is + present on a face. + :type eye_makeup: bool + :param lip_makeup: A boolean value describing whether lip makeup is + present on a face. + :type lip_makeup: bool + """ + + _attribute_map = { + 'eye_makeup': {'key': 'eyeMakeup', 'type': 'bool'}, + 'lip_makeup': {'key': 'lipMakeup', 'type': 'bool'}, + } + + def __init__(self, *, eye_makeup: bool=None, lip_makeup: bool=None, **kwargs) -> None: + super(Makeup, self).__init__(**kwargs) + self.eye_makeup = eye_makeup + self.lip_makeup = lip_makeup diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/name_and_user_data_contract.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/name_and_user_data_contract.py index 0b329f080cdd..ef1f79d83d24 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/name_and_user_data_contract.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/name_and_user_data_contract.py @@ -14,7 +14,7 @@ class NameAndUserDataContract(Model): """A combination of user defined name and user specified data for the person, - personGroup, and faceList. + largePersonGroup/personGroup, and largeFaceList/faceList. :param name: User defined name, maximum length is 128. :type name: str @@ -32,7 +32,7 @@ class NameAndUserDataContract(Model): 'user_data': {'key': 'userData', 'type': 'str'}, } - def __init__(self, name=None, user_data=None): - super(NameAndUserDataContract, self).__init__() - self.name = name - self.user_data = user_data + def __init__(self, **kwargs): + super(NameAndUserDataContract, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.user_data = kwargs.get('user_data', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/name_and_user_data_contract_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/name_and_user_data_contract_py3.py new file mode 100644 index 000000000000..29c856742584 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/name_and_user_data_contract_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAndUserDataContract(Model): + """A combination of user defined name and user specified data for the person, + largePersonGroup/personGroup, and largeFaceList/faceList. + + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + """ + + _validation = { + 'name': {'max_length': 128}, + 'user_data': {'max_length': 16384}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, user_data: str=None, **kwargs) -> None: + super(NameAndUserDataContract, self).__init__(**kwargs) + self.name = name + self.user_data = user_data diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/noise.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/noise.py index 1d1a517e1aa9..565291f5b46d 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/noise.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/noise.py @@ -31,7 +31,7 @@ class Noise(Model): 'value': {'key': 'value', 'type': 'float'}, } - def __init__(self, noise_level=None, value=None): - super(Noise, self).__init__() - self.noise_level = noise_level - self.value = value + def __init__(self, **kwargs): + super(Noise, self).__init__(**kwargs) + self.noise_level = kwargs.get('noise_level', None) + self.value = kwargs.get('value', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/noise_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/noise_py3.py new file mode 100644 index 000000000000..f5445d995eda --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/noise_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Noise(Model): + """Properties describing noise level of the image. + + :param noise_level: An enum value indicating level of noise. Possible + values include: 'Low', 'Medium', 'High' + :type noise_level: str or + ~azure.cognitiveservices.vision.face.models.NoiseLevel + :param value: A number indicating level of noise level ranging from 0 to + 1. [0, 0.25) is under exposure. [0.25, 0.75) is good exposure. [0.75, 1] + is over exposure. [0, 0.3) is low noise level. [0.3, 0.7) is medium noise + level. [0.7, 1] is high noise level. + :type value: float + """ + + _attribute_map = { + 'noise_level': {'key': 'noiseLevel', 'type': 'NoiseLevel'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, *, noise_level=None, value: float=None, **kwargs) -> None: + super(Noise, self).__init__(**kwargs) + self.noise_level = noise_level + self.value = value diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/occlusion.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/occlusion.py index 3edcc3f80f18..c185869fb68d 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/occlusion.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/occlusion.py @@ -31,8 +31,8 @@ class Occlusion(Model): 'mouth_occluded': {'key': 'mouthOccluded', 'type': 'bool'}, } - def __init__(self, forehead_occluded=None, eye_occluded=None, mouth_occluded=None): - super(Occlusion, self).__init__() - self.forehead_occluded = forehead_occluded - self.eye_occluded = eye_occluded - self.mouth_occluded = mouth_occluded + def __init__(self, **kwargs): + super(Occlusion, self).__init__(**kwargs) + self.forehead_occluded = kwargs.get('forehead_occluded', None) + self.eye_occluded = kwargs.get('eye_occluded', None) + self.mouth_occluded = kwargs.get('mouth_occluded', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/occlusion_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/occlusion_py3.py new file mode 100644 index 000000000000..fd3cfed50f6a --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/occlusion_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Occlusion(Model): + """Properties describing occlusions on a given face. + + :param forehead_occluded: A boolean value indicating whether forehead is + occluded. + :type forehead_occluded: bool + :param eye_occluded: A boolean value indicating whether eyes are occluded. + :type eye_occluded: bool + :param mouth_occluded: A boolean value indicating whether the mouth is + occluded. + :type mouth_occluded: bool + """ + + _attribute_map = { + 'forehead_occluded': {'key': 'foreheadOccluded', 'type': 'bool'}, + 'eye_occluded': {'key': 'eyeOccluded', 'type': 'bool'}, + 'mouth_occluded': {'key': 'mouthOccluded', 'type': 'bool'}, + } + + def __init__(self, *, forehead_occluded: bool=None, eye_occluded: bool=None, mouth_occluded: bool=None, **kwargs) -> None: + super(Occlusion, self).__init__(**kwargs) + self.forehead_occluded = forehead_occluded + self.eye_occluded = eye_occluded + self.mouth_occluded = mouth_occluded diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/persisted_face.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/persisted_face.py index c1c31ef1c035..e8a1f236eaa1 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/persisted_face.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/persisted_face.py @@ -15,9 +15,12 @@ class PersistedFace(Model): """PersonFace object. - :param persisted_face_id: The persistedFaceId of the target face, which is - persisted and will not expire. Different from faceId created by Face - - Detect and will expire in 24 hours after the detection call. + All required parameters must be populated in order to send to Azure. + + :param persisted_face_id: Required. The persistedFaceId of the target + face, which is persisted and will not expire. Different from faceId + created by Face - Detect and will expire in 24 hours after the detection + call. :type persisted_face_id: str :param user_data: User-provided data attached to the face. The size limit is 1KB. @@ -34,7 +37,7 @@ class PersistedFace(Model): 'user_data': {'key': 'userData', 'type': 'str'}, } - def __init__(self, persisted_face_id, user_data=None): - super(PersistedFace, self).__init__() - self.persisted_face_id = persisted_face_id - self.user_data = user_data + def __init__(self, **kwargs): + super(PersistedFace, self).__init__(**kwargs) + self.persisted_face_id = kwargs.get('persisted_face_id', None) + self.user_data = kwargs.get('user_data', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/persisted_face_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/persisted_face_py3.py new file mode 100644 index 000000000000..f26dedad729c --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/persisted_face_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PersistedFace(Model): + """PersonFace object. + + All required parameters must be populated in order to send to Azure. + + :param persisted_face_id: Required. The persistedFaceId of the target + face, which is persisted and will not expire. Different from faceId + created by Face - Detect and will expire in 24 hours after the detection + call. + :type persisted_face_id: str + :param user_data: User-provided data attached to the face. The size limit + is 1KB. + :type user_data: str + """ + + _validation = { + 'persisted_face_id': {'required': True}, + 'user_data': {'max_length': 1024}, + } + + _attribute_map = { + 'persisted_face_id': {'key': 'persistedFaceId', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + } + + def __init__(self, *, persisted_face_id: str, user_data: str=None, **kwargs) -> None: + super(PersistedFace, self).__init__(**kwargs) + self.persisted_face_id = persisted_face_id + self.user_data = user_data diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person.py index 5e22ffcec204..3e87905b2ded 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person.py @@ -15,11 +15,13 @@ class Person(NameAndUserDataContract): """Person object. + All required parameters must be populated in order to send to Azure. + :param name: User defined name, maximum length is 128. :type name: str :param user_data: User specified data. Length should not exceed 16KB. :type user_data: str - :param person_id: PersonId of the target face list. + :param person_id: Required. PersonId of the target face list. :type person_id: str :param persisted_face_ids: PersistedFaceIds of registered faces in the person. These persistedFaceIds are returned from Person - Add a Person @@ -40,7 +42,7 @@ class Person(NameAndUserDataContract): 'persisted_face_ids': {'key': 'persistedFaceIds', 'type': '[str]'}, } - def __init__(self, person_id, name=None, user_data=None, persisted_face_ids=None): - super(Person, self).__init__(name=name, user_data=user_data) - self.person_id = person_id - self.persisted_face_ids = persisted_face_ids + def __init__(self, **kwargs): + super(Person, self).__init__(**kwargs) + self.person_id = kwargs.get('person_id', None) + self.persisted_face_ids = kwargs.get('persisted_face_ids', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_group.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_group.py index 8fdfebc1c92c..9e4eab234771 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_group.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_group.py @@ -15,11 +15,14 @@ class PersonGroup(NameAndUserDataContract): """Person group object. + All required parameters must be populated in order to send to Azure. + :param name: User defined name, maximum length is 128. :type name: str :param user_data: User specified data. Length should not exceed 16KB. :type user_data: str - :param person_group_id: PersonGroupId of the existing person groups. + :param person_group_id: Required. PersonGroupId of the target person + group. :type person_group_id: str """ @@ -35,6 +38,6 @@ class PersonGroup(NameAndUserDataContract): 'person_group_id': {'key': 'personGroupId', 'type': 'str'}, } - def __init__(self, person_group_id, name=None, user_data=None): - super(PersonGroup, self).__init__(name=name, user_data=user_data) - self.person_group_id = person_group_id + def __init__(self, **kwargs): + super(PersonGroup, self).__init__(**kwargs) + self.person_group_id = kwargs.get('person_group_id', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_group_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_group_py3.py new file mode 100644 index 000000000000..c1fc341ed83b --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_group_py3.py @@ -0,0 +1,43 @@ +# 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 .name_and_user_data_contract_py3 import NameAndUserDataContract + + +class PersonGroup(NameAndUserDataContract): + """Person group object. + + All required parameters must be populated in order to send to Azure. + + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param person_group_id: Required. PersonGroupId of the target person + group. + :type person_group_id: str + """ + + _validation = { + 'name': {'max_length': 128}, + 'user_data': {'max_length': 16384}, + 'person_group_id': {'required': True, 'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + 'person_group_id': {'key': 'personGroupId', 'type': 'str'}, + } + + def __init__(self, *, person_group_id: str, name: str=None, user_data: str=None, **kwargs) -> None: + super(PersonGroup, self).__init__(name=name, user_data=user_data, **kwargs) + self.person_group_id = person_group_id diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_py3.py new file mode 100644 index 000000000000..230f8afd82c5 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/person_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .name_and_user_data_contract_py3 import NameAndUserDataContract + + +class Person(NameAndUserDataContract): + """Person object. + + All required parameters must be populated in order to send to Azure. + + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param person_id: Required. PersonId of the target face list. + :type person_id: str + :param persisted_face_ids: PersistedFaceIds of registered faces in the + person. These persistedFaceIds are returned from Person - Add a Person + Face, and will not expire. + :type persisted_face_ids: list[str] + """ + + _validation = { + 'name': {'max_length': 128}, + 'user_data': {'max_length': 16384}, + 'person_id': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'user_data': {'key': 'userData', 'type': 'str'}, + 'person_id': {'key': 'personId', 'type': 'str'}, + 'persisted_face_ids': {'key': 'persistedFaceIds', 'type': '[str]'}, + } + + def __init__(self, *, person_id: str, name: str=None, user_data: str=None, persisted_face_ids=None, **kwargs) -> None: + super(Person, self).__init__(name=name, user_data=user_data, **kwargs) + self.person_id = person_id + self.persisted_face_ids = persisted_face_ids diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/similar_face.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/similar_face.py index 09c8a3b6912d..59006700234b 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/similar_face.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/similar_face.py @@ -15,6 +15,8 @@ class SimilarFace(Model): """Response body for find similar face operation. + All required parameters must be populated in order to send to Azure. + :param face_id: FaceId of candidate face when find by faceIds. faceId is created by Face - Detect and will expire 24 hours after the detection call :type face_id: str @@ -22,8 +24,8 @@ class SimilarFace(Model): faceListId. persistedFaceId in face list is persisted and will not expire. As showed in below response :type persisted_face_id: str - :param confidence: Similarity confidence of the candidate face. The higher - confidence, the more similar. Range between [0,1]. + :param confidence: Required. Similarity confidence of the candidate face. + The higher confidence, the more similar. Range between [0,1]. :type confidence: float """ @@ -37,8 +39,8 @@ class SimilarFace(Model): 'confidence': {'key': 'confidence', 'type': 'float'}, } - def __init__(self, confidence, face_id=None, persisted_face_id=None): - super(SimilarFace, self).__init__() - self.face_id = face_id - self.persisted_face_id = persisted_face_id - self.confidence = confidence + def __init__(self, **kwargs): + super(SimilarFace, self).__init__(**kwargs) + self.face_id = kwargs.get('face_id', None) + self.persisted_face_id = kwargs.get('persisted_face_id', None) + self.confidence = kwargs.get('confidence', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/similar_face_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/similar_face_py3.py new file mode 100644 index 000000000000..8d464fb315d5 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/similar_face_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SimilarFace(Model): + """Response body for find similar face operation. + + All required parameters must be populated in order to send to Azure. + + :param face_id: FaceId of candidate face when find by faceIds. faceId is + created by Face - Detect and will expire 24 hours after the detection call + :type face_id: str + :param persisted_face_id: PersistedFaceId of candidate face when find by + faceListId. persistedFaceId in face list is persisted and will not expire. + As showed in below response + :type persisted_face_id: str + :param confidence: Required. Similarity confidence of the candidate face. + The higher confidence, the more similar. Range between [0,1]. + :type confidence: float + """ + + _validation = { + 'confidence': {'required': True}, + } + + _attribute_map = { + 'face_id': {'key': 'faceId', 'type': 'str'}, + 'persisted_face_id': {'key': 'persistedFaceId', 'type': 'str'}, + 'confidence': {'key': 'confidence', 'type': 'float'}, + } + + def __init__(self, *, confidence: float, face_id: str=None, persisted_face_id: str=None, **kwargs) -> None: + super(SimilarFace, self).__init__(**kwargs) + self.face_id = face_id + self.persisted_face_id = persisted_face_id + self.confidence = confidence diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/training_status.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/training_status.py index eb5255c1d053..718da91dc34b 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/training_status.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/training_status.py @@ -15,20 +15,31 @@ class TrainingStatus(Model): """Training status object. - :param status: Training status: notstarted, running, succeeded, failed. If - the training process is waiting to perform, the status is notstarted. If - the training is ongoing, the status is running. Status succeed means this - person group is ready for Face - Identify. Status failed is often caused - by no person or no persisted face exist in the person group. Possible - values include: 'nonstarted', 'running', 'succeeded', 'failed' + All required parameters must be populated in order to send to Azure. + + :param status: Required. Training status: notstarted, running, succeeded, + failed. If the training process is waiting to perform, the status is + notstarted. If the training is ongoing, the status is running. Status + succeed means this person group or large person group is ready for Face - + Identify, or this large face list is ready for Face - Find Similar. Status + failed is often caused by no person or no persisted face exist in the + person group or large person group, or no persisted face exist in the + large face list. Possible values include: 'nonstarted', 'running', + 'succeeded', 'failed' :type status: str or ~azure.cognitiveservices.vision.face.models.TrainingStatusType - :param created: A combined UTC date and time string that describes person - group created time. + :param created: Required. A combined UTC date and time string that + describes the created time of the person group, large person group or + large face list. :type created: datetime - :param last_action: Person group last modify time in the UTC, could be - null value when the person group is not successfully trained. + :param last_action: A combined UTC date and time string that describes the + last modify time of the person group, large person group or large face + list, could be null value when the group is not successfully trained. :type last_action: datetime + :param last_successful_training: A combined UTC date and time string that + describes the last successful training time of the person group, large + person group or large face list. + :type last_successful_training: datetime :param message: Show failure message when training failed (omitted when training succeed). :type message: str @@ -43,12 +54,14 @@ class TrainingStatus(Model): 'status': {'key': 'status', 'type': 'TrainingStatusType'}, 'created': {'key': 'createdDateTime', 'type': 'iso-8601'}, 'last_action': {'key': 'lastActionDateTime', 'type': 'iso-8601'}, + 'last_successful_training': {'key': 'lastSuccessfulTrainingDateTime', 'type': 'iso-8601'}, 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, status, created, last_action=None, message=None): - super(TrainingStatus, self).__init__() - self.status = status - self.created = created - self.last_action = last_action - self.message = message + def __init__(self, **kwargs): + super(TrainingStatus, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.created = kwargs.get('created', None) + self.last_action = kwargs.get('last_action', None) + self.last_successful_training = kwargs.get('last_successful_training', None) + self.message = kwargs.get('message', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/training_status_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/training_status_py3.py new file mode 100644 index 000000000000..50857f65cddb --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/training_status_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrainingStatus(Model): + """Training status object. + + All required parameters must be populated in order to send to Azure. + + :param status: Required. Training status: notstarted, running, succeeded, + failed. If the training process is waiting to perform, the status is + notstarted. If the training is ongoing, the status is running. Status + succeed means this person group or large person group is ready for Face - + Identify, or this large face list is ready for Face - Find Similar. Status + failed is often caused by no person or no persisted face exist in the + person group or large person group, or no persisted face exist in the + large face list. Possible values include: 'nonstarted', 'running', + 'succeeded', 'failed' + :type status: str or + ~azure.cognitiveservices.vision.face.models.TrainingStatusType + :param created: Required. A combined UTC date and time string that + describes the created time of the person group, large person group or + large face list. + :type created: datetime + :param last_action: A combined UTC date and time string that describes the + last modify time of the person group, large person group or large face + list, could be null value when the group is not successfully trained. + :type last_action: datetime + :param last_successful_training: A combined UTC date and time string that + describes the last successful training time of the person group, large + person group or large face list. + :type last_successful_training: datetime + :param message: Show failure message when training failed (omitted when + training succeed). + :type message: str + """ + + _validation = { + 'status': {'required': True}, + 'created': {'required': True}, + } + + _attribute_map = { + 'status': {'key': 'status', 'type': 'TrainingStatusType'}, + 'created': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_action': {'key': 'lastActionDateTime', 'type': 'iso-8601'}, + 'last_successful_training': {'key': 'lastSuccessfulTrainingDateTime', 'type': 'iso-8601'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, status, created, last_action=None, last_successful_training=None, message: str=None, **kwargs) -> None: + super(TrainingStatus, self).__init__(**kwargs) + self.status = status + self.created = created + self.last_action = last_action + self.last_successful_training = last_successful_training + self.message = message diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_face_request.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_face_request.py new file mode 100644 index 000000000000..d2df86ba2b30 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_face_request.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpdateFaceRequest(Model): + """Request to update face data. + + :param user_data: User-provided data attached to the face. The size limit + is 1KB. + :type user_data: str + """ + + _validation = { + 'user_data': {'max_length': 1024}, + } + + _attribute_map = { + 'user_data': {'key': 'userData', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UpdateFaceRequest, self).__init__(**kwargs) + self.user_data = kwargs.get('user_data', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_face_request_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_face_request_py3.py new file mode 100644 index 000000000000..2610f03251cd --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_face_request_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpdateFaceRequest(Model): + """Request to update face data. + + :param user_data: User-provided data attached to the face. The size limit + is 1KB. + :type user_data: str + """ + + _validation = { + 'user_data': {'max_length': 1024}, + } + + _attribute_map = { + 'user_data': {'key': 'userData', 'type': 'str'}, + } + + def __init__(self, *, user_data: str=None, **kwargs) -> None: + super(UpdateFaceRequest, self).__init__(**kwargs) + self.user_data = user_data diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_person_face_request.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_person_face_request.py deleted file mode 100644 index 6dc2950e7b81..000000000000 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/update_person_face_request.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class UpdatePersonFaceRequest(Model): - """Request to update person face data. - - :param user_data: User-provided data attached to the face. The size limit - is 1KB. - :type user_data: str - """ - - _validation = { - 'user_data': {'max_length': 1024}, - } - - _attribute_map = { - 'user_data': {'key': 'userData', 'type': 'str'}, - } - - def __init__(self, user_data=None): - super(UpdatePersonFaceRequest, self).__init__() - self.user_data = user_data diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_face_request.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_face_request.py index 56341d56795a..9c22d1921f50 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_face_request.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_face_request.py @@ -13,11 +13,15 @@ class VerifyFaceToFaceRequest(Model): - """Request body for verify operation. + """Request body for face to face verification. - :param face_id1: FaceId of the first face, comes from Face - Detect + All required parameters must be populated in order to send to Azure. + + :param face_id1: Required. FaceId of the first face, comes from Face - + Detect :type face_id1: str - :param face_id2: FaceId of the second face, comes from Face - Detect + :param face_id2: Required. FaceId of the second face, comes from Face - + Detect :type face_id2: str """ @@ -31,7 +35,7 @@ class VerifyFaceToFaceRequest(Model): 'face_id2': {'key': 'faceId2', 'type': 'str'}, } - def __init__(self, face_id1, face_id2): - super(VerifyFaceToFaceRequest, self).__init__() - self.face_id1 = face_id1 - self.face_id2 = face_id2 + def __init__(self, **kwargs): + super(VerifyFaceToFaceRequest, self).__init__(**kwargs) + self.face_id1 = kwargs.get('face_id1', None) + self.face_id2 = kwargs.get('face_id2', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_face_request_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_face_request_py3.py new file mode 100644 index 000000000000..9c5f2f347255 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_face_request_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerifyFaceToFaceRequest(Model): + """Request body for face to face verification. + + All required parameters must be populated in order to send to Azure. + + :param face_id1: Required. FaceId of the first face, comes from Face - + Detect + :type face_id1: str + :param face_id2: Required. FaceId of the second face, comes from Face - + Detect + :type face_id2: str + """ + + _validation = { + 'face_id1': {'required': True}, + 'face_id2': {'required': True}, + } + + _attribute_map = { + 'face_id1': {'key': 'faceId1', 'type': 'str'}, + 'face_id2': {'key': 'faceId2', 'type': 'str'}, + } + + def __init__(self, *, face_id1: str, face_id2: str, **kwargs) -> None: + super(VerifyFaceToFaceRequest, self).__init__(**kwargs) + self.face_id1 = face_id1 + self.face_id2 = face_id2 diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_person_request.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_person_request.py index 62fb45530250..91169e15391e 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_person_request.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_person_request.py @@ -13,33 +13,45 @@ class VerifyFaceToPersonRequest(Model): - """Request body for verify operation. + """Request body for face to person verification. - :param face_id: FaceId the face, comes from Face - Detect + All required parameters must be populated in order to send to Azure. + + :param face_id: Required. FaceId of the face, comes from Face - Detect :type face_id: str :param person_group_id: Using existing personGroupId and personId for fast - loading a specified person. personGroupId is created in Person - Groups.Create. + loading a specified person. personGroupId is created in PersonGroup - + Create. Parameter personGroupId and largePersonGroupId should not be + provided at the same time. :type person_group_id: str - :param person_id: Specify a certain person in a person group. personId is - created in Persons.Create. + :param large_person_group_id: Using existing largePersonGroupId and + personId for fast loading a specified person. largePersonGroupId is + created in LargePersonGroup - Create. Parameter personGroupId and + largePersonGroupId should not be provided at the same time. + :type large_person_group_id: str + :param person_id: Required. Specify a certain person in a person group or + a large person group. personId is created in PersonGroup Person - Create + or LargePersonGroup Person - Create. :type person_id: str """ _validation = { 'face_id': {'required': True}, - 'person_group_id': {'required': True, 'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'person_group_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'large_person_group_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, 'person_id': {'required': True}, } _attribute_map = { 'face_id': {'key': 'faceId', 'type': 'str'}, 'person_group_id': {'key': 'personGroupId', 'type': 'str'}, + 'large_person_group_id': {'key': 'largePersonGroupId', 'type': 'str'}, 'person_id': {'key': 'personId', 'type': 'str'}, } - def __init__(self, face_id, person_group_id, person_id): - super(VerifyFaceToPersonRequest, self).__init__() - self.face_id = face_id - self.person_group_id = person_group_id - self.person_id = person_id + def __init__(self, **kwargs): + super(VerifyFaceToPersonRequest, self).__init__(**kwargs) + self.face_id = kwargs.get('face_id', None) + self.person_group_id = kwargs.get('person_group_id', None) + self.large_person_group_id = kwargs.get('large_person_group_id', None) + self.person_id = kwargs.get('person_id', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_person_request_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_person_request_py3.py new file mode 100644 index 000000000000..b5c7633d2c3a --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_face_to_person_request_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerifyFaceToPersonRequest(Model): + """Request body for face to person verification. + + All required parameters must be populated in order to send to Azure. + + :param face_id: Required. FaceId of the face, comes from Face - Detect + :type face_id: str + :param person_group_id: Using existing personGroupId and personId for fast + loading a specified person. personGroupId is created in PersonGroup - + Create. Parameter personGroupId and largePersonGroupId should not be + provided at the same time. + :type person_group_id: str + :param large_person_group_id: Using existing largePersonGroupId and + personId for fast loading a specified person. largePersonGroupId is + created in LargePersonGroup - Create. Parameter personGroupId and + largePersonGroupId should not be provided at the same time. + :type large_person_group_id: str + :param person_id: Required. Specify a certain person in a person group or + a large person group. personId is created in PersonGroup Person - Create + or LargePersonGroup Person - Create. + :type person_id: str + """ + + _validation = { + 'face_id': {'required': True}, + 'person_group_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'large_person_group_id': {'max_length': 64, 'pattern': r'^[a-z0-9-_]+$'}, + 'person_id': {'required': True}, + } + + _attribute_map = { + 'face_id': {'key': 'faceId', 'type': 'str'}, + 'person_group_id': {'key': 'personGroupId', 'type': 'str'}, + 'large_person_group_id': {'key': 'largePersonGroupId', 'type': 'str'}, + 'person_id': {'key': 'personId', 'type': 'str'}, + } + + def __init__(self, *, face_id: str, person_id: str, person_group_id: str=None, large_person_group_id: str=None, **kwargs) -> None: + super(VerifyFaceToPersonRequest, self).__init__(**kwargs) + self.face_id = face_id + self.person_group_id = person_group_id + self.large_person_group_id = large_person_group_id + self.person_id = person_id diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_result.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_result.py index 5c748b1d5232..1d9fd6649696 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_result.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_result.py @@ -15,14 +15,17 @@ class VerifyResult(Model): """Result of the verify operation. - :param is_identical: True if the two faces belong to the same person or - the face belongs to the person, otherwise false. + All required parameters must be populated in order to send to Azure. + + :param is_identical: Required. True if the two faces belong to the same + person or the face belongs to the person, otherwise false. :type is_identical: bool - :param confidence: A number indicates the similarity confidence of whether - two faces belong to the same person, or whether the face belongs to the - person. By default, isIdentical is set to True if similarity confidence is - greater than or equal to 0.5. This is useful for advanced users to - override "isIdentical" and fine-tune the result on their own data. + :param confidence: Required. A number indicates the similarity confidence + of whether two faces belong to the same person, or whether the face + belongs to the person. By default, isIdentical is set to True if + similarity confidence is greater than or equal to 0.5. This is useful for + advanced users to override "isIdentical" and fine-tune the result on their + own data. :type confidence: float """ @@ -36,7 +39,7 @@ class VerifyResult(Model): 'confidence': {'key': 'confidence', 'type': 'float'}, } - def __init__(self, is_identical, confidence): - super(VerifyResult, self).__init__() - self.is_identical = is_identical - self.confidence = confidence + def __init__(self, **kwargs): + super(VerifyResult, self).__init__(**kwargs) + self.is_identical = kwargs.get('is_identical', None) + self.confidence = kwargs.get('confidence', None) diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_result_py3.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_result_py3.py new file mode 100644 index 000000000000..9e43db6908a8 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/models/verify_result_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerifyResult(Model): + """Result of the verify operation. + + All required parameters must be populated in order to send to Azure. + + :param is_identical: Required. True if the two faces belong to the same + person or the face belongs to the person, otherwise false. + :type is_identical: bool + :param confidence: Required. A number indicates the similarity confidence + of whether two faces belong to the same person, or whether the face + belongs to the person. By default, isIdentical is set to True if + similarity confidence is greater than or equal to 0.5. This is useful for + advanced users to override "isIdentical" and fine-tune the result on their + own data. + :type confidence: float + """ + + _validation = { + 'is_identical': {'required': True}, + 'confidence': {'required': True}, + } + + _attribute_map = { + 'is_identical': {'key': 'isIdentical', 'type': 'bool'}, + 'confidence': {'key': 'confidence', 'type': 'float'}, + } + + def __init__(self, *, is_identical: bool, confidence: float, **kwargs) -> None: + super(VerifyResult, self).__init__(**kwargs) + self.is_identical = is_identical + self.confidence = confidence diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/__init__.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/__init__.py index 76f00717fdfd..2e9a921167c3 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/__init__.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/__init__.py @@ -13,10 +13,16 @@ from .person_group_person_operations import PersonGroupPersonOperations from .person_group_operations import PersonGroupOperations from .face_list_operations import FaceListOperations +from .large_person_group_person_operations import LargePersonGroupPersonOperations +from .large_person_group_operations import LargePersonGroupOperations +from .large_face_list_operations import LargeFaceListOperations __all__ = [ 'FaceOperations', 'PersonGroupPersonOperations', 'PersonGroupOperations', 'FaceListOperations', + 'LargePersonGroupPersonOperations', + 'LargePersonGroupOperations', + 'LargeFaceListOperations', ] diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/face_list_operations.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/face_list_operations.py index 0b517a64a848..83c7165e7625 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/face_list_operations.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/face_list_operations.py @@ -57,9 +57,9 @@ def create( body = models.NameAndUserDataContract(name=name, user_data=user_data) # Construct URL - url = '/facelists/{faceListId}' + url = self.create.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'faceListId': self._serialize.url("face_list_id", face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -77,9 +77,8 @@ def create( body_content = self._serialize.body(body, 'NameAndUserDataContract') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -87,6 +86,7 @@ def create( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + create.metadata = {'url': '/facelists/{faceListId}'} def get( self, face_list_id, custom_headers=None, raw=False, **operation_config): @@ -106,9 +106,9 @@ def get( :class:`APIErrorException` """ # Construct URL - url = '/facelists/{faceListId}' + url = self.get.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'faceListId': self._serialize.url("face_list_id", face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -118,13 +118,13 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -139,6 +139,7 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/facelists/{faceListId}'} def update( self, face_list_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): @@ -163,9 +164,9 @@ def update( body = models.NameAndUserDataContract(name=name, user_data=user_data) # Construct URL - url = '/facelists/{faceListId}' + url = self.update.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'faceListId': self._serialize.url("face_list_id", face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -183,9 +184,8 @@ def update( body_content = self._serialize.body(body, 'NameAndUserDataContract') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -193,6 +193,7 @@ def update( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update.metadata = {'url': '/facelists/{faceListId}'} def delete( self, face_list_id, custom_headers=None, raw=False, **operation_config): @@ -212,9 +213,9 @@ def delete( :class:`APIErrorException` """ # Construct URL - url = '/facelists/{faceListId}' + url = self.delete.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'faceListId': self._serialize.url("face_list_id", face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -224,13 +225,12 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -238,6 +238,7 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/facelists/{faceListId}'} def list( self, custom_headers=None, raw=False, **operation_config): @@ -256,9 +257,9 @@ def list( :class:`APIErrorException` """ # Construct URL - url = '/facelists' + url = self.list.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -267,13 +268,13 @@ def list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -288,6 +289,7 @@ def list( return client_raw_response return deserialized + list.metadata = {'url': '/facelists'} def delete_face( self, face_list_id, persisted_face_id, custom_headers=None, raw=False, **operation_config): @@ -311,9 +313,9 @@ def delete_face( :class:`APIErrorException` """ # Construct URL - url = '/facelists/{faceListId}/persistedFaces/{persistedFaceId}' + url = self.delete_face.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'faceListId': self._serialize.url("face_list_id", face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') } @@ -324,13 +326,12 @@ def delete_face( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -338,6 +339,7 @@ def delete_face( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_face.metadata = {'url': '/facelists/{faceListId}/persistedfaces/{persistedFaceId}'} def add_face_from_url( self, face_list_id, url, user_data=None, target_face=None, custom_headers=None, raw=False, **operation_config): @@ -347,7 +349,7 @@ def add_face_from_url( :param face_list_id: Id referencing a particular face list. :type face_list_id: str - :param url: + :param url: Publicly reachable URL of an image :type url: str :param user_data: User-specified data about the face for any purpose. The maximum length is 1KB. @@ -372,9 +374,9 @@ def add_face_from_url( image_url = models.ImageUrl(url=url) # Construct URL - url = '/facelists/{faceListId}/persistedFaces' + url = self.add_face_from_url.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'faceListId': self._serialize.url("face_list_id", face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -388,6 +390,7 @@ def add_face_from_url( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -396,9 +399,8 @@ def add_face_from_url( body_content = self._serialize.body(image_url, 'ImageUrl') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -413,6 +415,7 @@ def add_face_from_url( return client_raw_response return deserialized + add_face_from_url.metadata = {'url': '/facelists/{faceListId}/persistedfaces'} def add_face_from_stream( self, face_list_id, image, user_data=None, target_face=None, custom_headers=None, raw=False, callback=None, **operation_config): @@ -450,9 +453,9 @@ def add_face_from_stream( :class:`APIErrorException` """ # Construct URL - url = '/facelists/{faceListId}/persistedFaces' + url = self.add_face_from_stream.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'faceListId': self._serialize.url("face_list_id", face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -466,6 +469,7 @@ def add_face_from_stream( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/octet-stream' if custom_headers: header_parameters.update(custom_headers) @@ -474,9 +478,8 @@ def add_face_from_stream( body_content = self._client.stream_upload(image, callback) # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -491,3 +494,4 @@ def add_face_from_stream( return client_raw_response return deserialized + add_face_from_stream.metadata = {'url': '/facelists/{faceListId}/persistedfaces'} diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/face_operations.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/face_operations.py index d8f156b55945..f0fc854c00fa 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/face_operations.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/face_operations.py @@ -34,9 +34,9 @@ def __init__(self, client, config, serializer, deserializer): self.config = config def find_similar( - self, face_id, face_list_id=None, face_ids=None, max_num_of_candidates_returned=20, mode="matchPerson", custom_headers=None, raw=False, **operation_config): + self, face_id, face_list_id=None, large_face_list_id=None, face_ids=None, max_num_of_candidates_returned=20, mode="matchPerson", custom_headers=None, raw=False, **operation_config): """Given query face's faceId, find the similar-looking faces from a faceId - array or a faceListId. + array, a face list or a large face list. :param face_id: FaceId of the query face. User needs to call Face - Detect first to get a valid faceId. Note that this faceId is not @@ -45,12 +45,20 @@ def find_similar( :param face_list_id: An existing user-specified unique candidate face list, created in Face List - Create a Face List. Face list contains a set of persistedFaceIds which are persisted and will never expire. - Parameter faceListId and faceIds should not be provided at the same - time + Parameter faceListId, largeFaceListId and faceIds should not be + provided at the same time。 :type face_list_id: str + :param large_face_list_id: An existing user-specified unique candidate + large face list, created in LargeFaceList - Create. Large face list + contains a set of persistedFaceIds which are persisted and will never + expire. Parameter faceListId, largeFaceListId and faceIds should not + be provided at the same time. + :type large_face_list_id: str :param face_ids: An array of candidate faceIds. All of them are created by Face - Detect and the faceIds will expire 24 hours after - the detection call. + the detection call. The number of faceIds is limited to 1000. + Parameter faceListId, largeFaceListId and faceIds should not be + provided at the same time. :type face_ids: list[str] :param max_num_of_candidates_returned: The number of top similar faces returned. The valid range is [1, 1000]. @@ -70,12 +78,12 @@ def find_similar( :raises: :class:`APIErrorException` """ - body = models.FindSimilarRequest(face_id=face_id, face_list_id=face_list_id, face_ids=face_ids, max_num_of_candidates_returned=max_num_of_candidates_returned, mode=mode) + body = models.FindSimilarRequest(face_id=face_id, face_list_id=face_list_id, large_face_list_id=large_face_list_id, face_ids=face_ids, max_num_of_candidates_returned=max_num_of_candidates_returned, mode=mode) # Construct URL - url = '/findsimilars' + url = self.find_similar.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -84,6 +92,7 @@ def find_similar( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -92,9 +101,8 @@ def find_similar( body_content = self._serialize.body(body, 'FindSimilarRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -109,6 +117,7 @@ def find_similar( return client_raw_response return deserialized + find_similar.metadata = {'url': '/findsimilars'} def group( self, face_ids, custom_headers=None, raw=False, **operation_config): @@ -131,9 +140,9 @@ def group( body = models.GroupRequest(face_ids=face_ids) # Construct URL - url = '/group' + url = self.group.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -142,6 +151,7 @@ def group( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -150,9 +160,8 @@ def group( body_content = self._serialize.body(body, 'GroupRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -167,18 +176,26 @@ def group( return client_raw_response return deserialized + group.metadata = {'url': '/group'} def identify( - self, person_group_id, face_ids, max_num_of_candidates_returned=1, confidence_threshold=None, custom_headers=None, raw=False, **operation_config): - """Identify unknown faces from a person group. + self, face_ids, person_group_id=None, large_person_group_id=None, max_num_of_candidates_returned=1, confidence_threshold=None, custom_headers=None, raw=False, **operation_config): + """1-to-many identification to find the closest matches of the specific + query person face from a person group or large person group. - :param person_group_id: PersonGroupId of the target person group, - created by PersonGroups.Create - :type person_group_id: str :param face_ids: Array of query faces faceIds, created by the Face - Detect. Each of the faces are identified independently. The valid number of faceIds is between [1, 10]. :type face_ids: list[str] + :param person_group_id: PersonGroupId of the target person group, + created by PersonGroup - Create. Parameter personGroupId and + largePersonGroupId should not be provided at the same time. + :type person_group_id: str + :param large_person_group_id: LargePersonGroupId of the target large + person group, created by LargePersonGroup - Create. Parameter + personGroupId and largePersonGroupId should not be provided at the + same time. + :type large_person_group_id: str :param max_num_of_candidates_returned: The range of maxNumOfCandidatesReturned is between 1 and 5 (default is 1). :type max_num_of_candidates_returned: int @@ -198,12 +215,12 @@ def identify( :raises: :class:`APIErrorException` """ - body = models.IdentifyRequest(person_group_id=person_group_id, face_ids=face_ids, max_num_of_candidates_returned=max_num_of_candidates_returned, confidence_threshold=confidence_threshold) + body = models.IdentifyRequest(face_ids=face_ids, person_group_id=person_group_id, large_person_group_id=large_person_group_id, max_num_of_candidates_returned=max_num_of_candidates_returned, confidence_threshold=confidence_threshold) # Construct URL - url = '/identify' + url = self.identify.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -212,6 +229,7 @@ def identify( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -220,9 +238,8 @@ def identify( body_content = self._serialize.body(body, 'IdentifyRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -237,6 +254,7 @@ def identify( return client_raw_response return deserialized + identify.metadata = {'url': '/identify'} def verify_face_to_face( self, face_id1, face_id2, custom_headers=None, raw=False, **operation_config): @@ -261,9 +279,9 @@ def verify_face_to_face( body = models.VerifyFaceToFaceRequest(face_id1=face_id1, face_id2=face_id2) # Construct URL - url = '/verify' + url = self.verify_face_to_face.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -272,6 +290,7 @@ def verify_face_to_face( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -280,9 +299,8 @@ def verify_face_to_face( body_content = self._serialize.body(body, 'VerifyFaceToFaceRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -297,13 +315,14 @@ def verify_face_to_face( return client_raw_response return deserialized + verify_face_to_face.metadata = {'url': '/verify'} def detect_with_url( self, url, return_face_id=True, return_face_landmarks=False, return_face_attributes=None, custom_headers=None, raw=False, **operation_config): """Detect human faces in an image and returns face locations, and optionally with faceIds, landmarks, and attributes. - :param url: + :param url: Publicly reachable URL of an image :type url: str :param return_face_id: A value indicating whether the operation should return faceIds of detected faces. @@ -333,9 +352,9 @@ def detect_with_url( image_url = models.ImageUrl(url=url) # Construct URL - url = '/detect' + url = self.detect_with_url.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -350,6 +369,7 @@ def detect_with_url( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -358,9 +378,8 @@ def detect_with_url( body_content = self._serialize.body(image_url, 'ImageUrl') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -375,21 +394,29 @@ def detect_with_url( return client_raw_response return deserialized + detect_with_url.metadata = {'url': '/detect'} def verify_face_to_person( - self, face_id, person_group_id, person_id, custom_headers=None, raw=False, **operation_config): + self, face_id, person_id, person_group_id=None, large_person_group_id=None, custom_headers=None, raw=False, **operation_config): """Verify whether two faces belong to a same person. Compares a face Id with a Person Id. - :param face_id: FaceId the face, comes from Face - Detect + :param face_id: FaceId of the face, comes from Face - Detect :type face_id: str + :param person_id: Specify a certain person in a person group or a + large person group. personId is created in PersonGroup Person - Create + or LargePersonGroup Person - Create. + :type person_id: str :param person_group_id: Using existing personGroupId and personId for - fast loading a specified person. personGroupId is created in Person - Groups.Create. + fast loading a specified person. personGroupId is created in + PersonGroup - Create. Parameter personGroupId and largePersonGroupId + should not be provided at the same time. :type person_group_id: str - :param person_id: Specify a certain person in a person group. personId - is created in Persons.Create. - :type person_id: str + :param large_person_group_id: Using existing largePersonGroupId and + personId for fast loading a specified person. largePersonGroupId is + created in LargePersonGroup - Create. Parameter personGroupId and + largePersonGroupId should not be provided at the same time. + :type large_person_group_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -401,12 +428,12 @@ def verify_face_to_person( :raises: :class:`APIErrorException` """ - body = models.VerifyFaceToPersonRequest(face_id=face_id, person_group_id=person_group_id, person_id=person_id) + body = models.VerifyFaceToPersonRequest(face_id=face_id, person_group_id=person_group_id, large_person_group_id=large_person_group_id, person_id=person_id) # Construct URL - url = '/verify' + url = self.verify_face_to_person.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -415,6 +442,7 @@ def verify_face_to_person( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -423,9 +451,8 @@ def verify_face_to_person( body_content = self._serialize.body(body, 'VerifyFaceToPersonRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -440,6 +467,7 @@ def verify_face_to_person( return client_raw_response return deserialized + verify_face_to_person.metadata = {'url': '/verify'} def detect_with_stream( self, image, return_face_id=True, return_face_landmarks=False, return_face_attributes=None, custom_headers=None, raw=False, callback=None, **operation_config): @@ -479,9 +507,9 @@ def detect_with_stream( :class:`APIErrorException` """ # Construct URL - url = '/detect' + url = self.detect_with_stream.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -496,6 +524,7 @@ def detect_with_stream( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/octet-stream' if custom_headers: header_parameters.update(custom_headers) @@ -504,9 +533,8 @@ def detect_with_stream( body_content = self._client.stream_upload(image, callback) # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -521,3 +549,4 @@ def detect_with_stream( return client_raw_response return deserialized + detect_with_stream.metadata = {'url': '/detect'} diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_face_list_operations.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_face_list_operations.py new file mode 100644 index 000000000000..02ce62b39fb9 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_face_list_operations.py @@ -0,0 +1,790 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class LargeFaceListOperations(object): + """LargeFaceListOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def create( + self, large_face_list_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): + """Create an empty large face list. Up to 64 large face lists are allowed + to exist in one subscription. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + body = models.NameAndUserDataContract(name=name, user_data=user_data) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(body, 'NameAndUserDataContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + create.metadata = {'url': '/largefacelists/{largeFaceListId}'} + + def get( + self, large_face_list_id, custom_headers=None, raw=False, **operation_config): + """Retrieve a large face list's information. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LargeFaceList or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.LargeFaceList or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LargeFaceList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/largefacelists/{largeFaceListId}'} + + def update( + self, large_face_list_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): + """Update information of a large face list. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + body = models.NameAndUserDataContract(name=name, user_data=user_data) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(body, 'NameAndUserDataContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/largefacelists/{largeFaceListId}'} + + def delete( + self, large_face_list_id, custom_headers=None, raw=False, **operation_config): + """Delete an existing large face list according to faceListId. Persisted + face images in the large face list will also be deleted. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/largefacelists/{largeFaceListId}'} + + def get_training_status( + self, large_face_list_id, custom_headers=None, raw=False, **operation_config): + """Retrieve the training status of a large face list (completed or + ongoing). + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TrainingStatus or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.TrainingStatus or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.get_training_status.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TrainingStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_training_status.metadata = {'url': '/largefacelists/{largeFaceListId}/training'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Retrieve information about all existing large face lists. Only + largeFaceListId, name and userData will be returned. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.vision.face.models.LargeFaceList] or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[LargeFaceList]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/largefacelists'} + + def train( + self, large_face_list_id, custom_headers=None, raw=False, **operation_config): + """Queue a large face list training task, the training task may not be + started immediately. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.train.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + train.metadata = {'url': '/largefacelists/{largeFaceListId}/train'} + + def delete_face( + self, large_face_list_id, persisted_face_id, custom_headers=None, raw=False, **operation_config): + """Delete an existing face from a large face list (given by a + persisitedFaceId and a largeFaceListId). Persisted image related to the + face will also be deleted. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param persisted_face_id: Id referencing a particular persistedFaceId + of an existing face. + :type persisted_face_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.delete_face.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete_face.metadata = {'url': '/largefacelists/{largeFaceListId}/persistedfaces/{persistedFaceId}'} + + def get_face( + self, large_face_list_id, persisted_face_id, custom_headers=None, raw=False, **operation_config): + """Retrieve information about a persisted face (specified by + persistedFaceId and its belonging largeFaceListId). + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param persisted_face_id: Id referencing a particular persistedFaceId + of an existing face. + :type persisted_face_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PersistedFace or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.PersistedFace or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.get_face.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PersistedFace', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_face.metadata = {'url': '/largefacelists/{largeFaceListId}/persistedfaces/{persistedFaceId}'} + + def update_face( + self, large_face_list_id, persisted_face_id, user_data=None, custom_headers=None, raw=False, **operation_config): + """Update a persisted face's userData field. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param persisted_face_id: Id referencing a particular persistedFaceId + of an existing face. + :type persisted_face_id: str + :param user_data: User-provided data attached to the face. The size + limit is 1KB. + :type user_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + body = models.UpdateFaceRequest(user_data=user_data) + + # Construct URL + url = self.update_face.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(body, 'UpdateFaceRequest') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update_face.metadata = {'url': '/largefacelists/{largeFaceListId}/persistedfaces/{persistedFaceId}'} + + def add_face_from_url( + self, large_face_list_id, url, user_data=None, target_face=None, custom_headers=None, raw=False, **operation_config): + """Add a face to a large face list. The input face is specified as an + image with a targetFace rectangle. It returns a persistedFaceId + representing the added face, and persistedFaceId will not expire. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param url: Publicly reachable URL of an image + :type url: str + :param user_data: User-specified data about the face for any purpose. + The maximum length is 1KB. + :type user_data: str + :param target_face: A face rectangle to specify the target face to be + added to a person in the format of "targetFace=left,top,width,height". + E.g. "targetFace=10,10,100,100". If there is more than one face in the + image, targetFace is required to specify which face to add. No + targetFace means there is only one face detected in the entire image. + :type target_face: list[int] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PersistedFace or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.PersistedFace or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + image_url = models.ImageUrl(url=url) + + # Construct URL + url = self.add_face_from_url.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if user_data is not None: + query_parameters['userData'] = self._serialize.query("user_data", user_data, 'str', max_length=1024) + if target_face is not None: + query_parameters['targetFace'] = self._serialize.query("target_face", target_face, '[int]', div=',') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(image_url, 'ImageUrl') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PersistedFace', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_face_from_url.metadata = {'url': '/largefacelists/{largeFaceListId}/persistedfaces'} + + def list_faces( + self, large_face_list_id, start=None, top=None, custom_headers=None, raw=False, **operation_config): + """List all faces in a large face list, and retrieve face information + (including userData and persistedFaceIds of registered faces of the + face). + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param start: Starting face id to return (used to list a range of + faces). + :type start: str + :param top: Number of faces to return starting with the face id + indicated by the 'start' parameter. + :type top: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.vision.face.models.PersistedFace] or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.list_faces.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if start is not None: + query_parameters['start'] = self._serialize.query("start", start, 'str') + if top is not None: + query_parameters['top'] = self._serialize.query("top", top, 'int', maximum=1000, minimum=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[PersistedFace]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_faces.metadata = {'url': '/largefacelists/{largeFaceListId}/persistedfaces'} + + def add_face_from_stream( + self, large_face_list_id, image, user_data=None, target_face=None, custom_headers=None, raw=False, callback=None, **operation_config): + """Add a face to a large face list. The input face is specified as an + image with a targetFace rectangle. It returns a persistedFaceId + representing the added face, and persistedFaceId will not expire. + + :param large_face_list_id: Id referencing a particular large face + list. + :type large_face_list_id: str + :param image: An image stream. + :type image: Generator + :param user_data: User-specified data about the face for any purpose. + The maximum length is 1KB. + :type user_data: str + :param target_face: A face rectangle to specify the target face to be + added to a person in the format of "targetFace=left,top,width,height". + E.g. "targetFace=10,10,100,100". If there is more than one face in the + image, targetFace is required to specify which face to add. No + targetFace means there is only one face detected in the entire image. + :type target_face: list[int] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param callback: When specified, will be called with each chunk of + data that is streamed. The callback should take two arguments, the + bytes of the current chunk of data and the response object. If the + data is uploading, response will be None. + :type callback: Callable[Bytes, response=None] + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PersistedFace or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.PersistedFace or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.add_face_from_stream.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largeFaceListId': self._serialize.url("large_face_list_id", large_face_list_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if user_data is not None: + query_parameters['userData'] = self._serialize.query("user_data", user_data, 'str', max_length=1024) + if target_face is not None: + query_parameters['targetFace'] = self._serialize.query("target_face", target_face, '[int]', div=',') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/octet-stream' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._client.stream_upload(image, callback) + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PersistedFace', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_face_from_stream.metadata = {'url': '/largefacelists/{largeFaceListId}/persistedfaces'} diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_person_group_operations.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_person_group_operations.py new file mode 100644 index 000000000000..3e4bbf03c220 --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_person_group_operations.py @@ -0,0 +1,408 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class LargePersonGroupOperations(object): + """LargePersonGroupOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def create( + self, large_person_group_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): + """Create a new large person group with specified largePersonGroupId, name + and user-provided userData. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + body = models.NameAndUserDataContract(name=name, user_data=user_data) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(body, 'NameAndUserDataContract') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + create.metadata = {'url': '/largepersongroups/{largePersonGroupId}'} + + def delete( + self, large_person_group_id, custom_headers=None, raw=False, **operation_config): + """Delete an existing large person group. Persisted face features of all + people in the large person group will also be deleted. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/largepersongroups/{largePersonGroupId}'} + + def get( + self, large_person_group_id, custom_headers=None, raw=False, **operation_config): + """Retrieve the information of a large person group, including its name + and userData. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LargePersonGroup or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.LargePersonGroup + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LargePersonGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/largepersongroups/{largePersonGroupId}'} + + def update( + self, large_person_group_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): + """Update an existing large person group's display name and userData. The + properties which does not appear in request body will not be updated. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + body = models.NameAndUserDataContract(name=name, user_data=user_data) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(body, 'NameAndUserDataContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/largepersongroups/{largePersonGroupId}'} + + def get_training_status( + self, large_person_group_id, custom_headers=None, raw=False, **operation_config): + """Retrieve the training status of a large person group (completed or + ongoing). + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TrainingStatus or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.TrainingStatus or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.get_training_status.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TrainingStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_training_status.metadata = {'url': '/largepersongroups/{largePersonGroupId}/training'} + + def list( + self, start=None, top=1000, custom_headers=None, raw=False, **operation_config): + """List large person groups and their information. + + :param start: List large person groups from the least + largePersonGroupId greater than the "start". + :type start: str + :param top: The number of large person groups to list. + :type top: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.cognitiveservices.vision.face.models.LargePersonGroup] or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if start is not None: + query_parameters['start'] = self._serialize.query("start", start, 'str', max_length=64) + if top is not None: + query_parameters['top'] = self._serialize.query("top", top, 'int', maximum=1000, minimum=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[LargePersonGroup]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/largepersongroups'} + + def train( + self, large_person_group_id, custom_headers=None, raw=False, **operation_config): + """Queue a large person group training task, the training task may not be + started immediately. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.train.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + train.metadata = {'url': '/largepersongroups/{largePersonGroupId}/train'} diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_person_group_person_operations.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_person_group_person_operations.py new file mode 100644 index 000000000000..a970a9ff50ae --- /dev/null +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/large_person_group_person_operations.py @@ -0,0 +1,666 @@ +# 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.pipeline import ClientRawResponse + +from .. import models + + +class LargePersonGroupPersonOperations(object): + """LargePersonGroupPersonOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + def create( + self, large_person_group_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): + """Create a new person in a specified large person group. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Person or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.Person or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + body = models.NameAndUserDataContract(name=name, user_data=user_data) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(body, 'NameAndUserDataContract') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Person', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons'} + + def list( + self, large_person_group_id, start=None, top=None, custom_headers=None, raw=False, **operation_config): + """List all persons in a large person group, and retrieve person + information (including personId, name, userData and persistedFaceIds of + registered faces of the person). + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param start: Starting person id to return (used to list a range of + persons). + :type start: str + :param top: Number of persons to return starting with the person id + indicated by the 'start' parameter. + :type top: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: list[~azure.cognitiveservices.vision.face.models.Person] or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if start is not None: + query_parameters['start'] = self._serialize.query("start", start, 'str') + if top is not None: + query_parameters['top'] = self._serialize.query("top", top, 'int', maximum=1000, minimum=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[Person]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons'} + + def delete( + self, large_person_group_id, person_id, custom_headers=None, raw=False, **operation_config): + """Delete an existing person from a large person group. All stored person + data, and face features in the person entry will be deleted. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param person_id: Id referencing a particular person. + :type person_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'personId': self._serialize.url("person_id", person_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons/{personId}'} + + def get( + self, large_person_group_id, person_id, custom_headers=None, raw=False, **operation_config): + """Retrieve a person's information, including registered persisted faces, + name and userData. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param person_id: Id referencing a particular person. + :type person_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Person or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.Person or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'personId': self._serialize.url("person_id", person_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Person', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons/{personId}'} + + def update( + self, large_person_group_id, person_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): + """Update name or userData of a person. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param person_id: Id referencing a particular person. + :type person_id: str + :param name: User defined name, maximum length is 128. + :type name: str + :param user_data: User specified data. Length should not exceed 16KB. + :type user_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + body = models.NameAndUserDataContract(name=name, user_data=user_data) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'personId': self._serialize.url("person_id", person_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(body, 'NameAndUserDataContract') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons/{personId}'} + + def delete_face( + self, large_person_group_id, person_id, persisted_face_id, custom_headers=None, raw=False, **operation_config): + """Delete a face from a person. Relative feature for the persisted face + will also be deleted. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param person_id: Id referencing a particular person. + :type person_id: str + :param persisted_face_id: Id referencing a particular persistedFaceId + of an existing face. + :type persisted_face_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.delete_face.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'personId': self._serialize.url("person_id", person_id, 'str'), + 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete_face.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'} + + def get_face( + self, large_person_group_id, person_id, persisted_face_id, custom_headers=None, raw=False, **operation_config): + """Retrieve information about a persisted face (specified by + persistedFaceId, personId and its belonging largePersonGroupId). + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param person_id: Id referencing a particular person. + :type person_id: str + :param persisted_face_id: Id referencing a particular persistedFaceId + of an existing face. + :type persisted_face_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PersistedFace or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.PersistedFace or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.get_face.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'personId': self._serialize.url("person_id", person_id, 'str'), + 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PersistedFace', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_face.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'} + + def update_face( + self, large_person_group_id, person_id, persisted_face_id, user_data=None, custom_headers=None, raw=False, **operation_config): + """Update a person persisted face's userData field. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param person_id: Id referencing a particular person. + :type person_id: str + :param persisted_face_id: Id referencing a particular persistedFaceId + of an existing face. + :type persisted_face_id: str + :param user_data: User-provided data attached to the face. The size + limit is 1KB. + :type user_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + body = models.UpdateFaceRequest(user_data=user_data) + + # Construct URL + url = self.update_face.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'personId': self._serialize.url("person_id", person_id, 'str'), + 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(body, 'UpdateFaceRequest') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update_face.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'} + + def add_face_from_url( + self, large_person_group_id, person_id, url, user_data=None, target_face=None, custom_headers=None, raw=False, **operation_config): + """Add a representative face to a person for identification. The input + face is specified as an image with a targetFace rectangle. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param person_id: Id referencing a particular person. + :type person_id: str + :param url: Publicly reachable URL of an image + :type url: str + :param user_data: User-specified data about the face for any purpose. + The maximum length is 1KB. + :type user_data: str + :param target_face: A face rectangle to specify the target face to be + added to a person in the format of "targetFace=left,top,width,height". + E.g. "targetFace=10,10,100,100". If there is more than one face in the + image, targetFace is required to specify which face to add. No + targetFace means there is only one face detected in the entire image. + :type target_face: list[int] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PersistedFace or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.PersistedFace or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + image_url = models.ImageUrl(url=url) + + # Construct URL + url = self.add_face_from_url.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'personId': self._serialize.url("person_id", person_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if user_data is not None: + query_parameters['userData'] = self._serialize.query("user_data", user_data, 'str', max_length=1024) + if target_face is not None: + query_parameters['targetFace'] = self._serialize.query("target_face", target_face, '[int]', div=',') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._serialize.body(image_url, 'ImageUrl') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PersistedFace', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_face_from_url.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces'} + + def add_face_from_stream( + self, large_person_group_id, person_id, image, user_data=None, target_face=None, custom_headers=None, raw=False, callback=None, **operation_config): + """Add a representative face to a person for identification. The input + face is specified as an image with a targetFace rectangle. + + :param large_person_group_id: Id referencing a particular large person + group. + :type large_person_group_id: str + :param person_id: Id referencing a particular person. + :type person_id: str + :param image: An image stream. + :type image: Generator + :param user_data: User-specified data about the face for any purpose. + The maximum length is 1KB. + :type user_data: str + :param target_face: A face rectangle to specify the target face to be + added to a person in the format of "targetFace=left,top,width,height". + E.g. "targetFace=10,10,100,100". If there is more than one face in the + image, targetFace is required to specify which face to add. No + targetFace means there is only one face detected in the entire image. + :type target_face: list[int] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param callback: When specified, will be called with each chunk of + data that is streamed. The callback should take two arguments, the + bytes of the current chunk of data and the response object. If the + data is uploading, response will be None. + :type callback: Callable[Bytes, response=None] + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PersistedFace or ClientRawResponse if raw=true + :rtype: ~azure.cognitiveservices.vision.face.models.PersistedFace or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`APIErrorException` + """ + # Construct URL + url = self.add_face_from_stream.metadata['url'] + path_format_arguments = { + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), + 'largePersonGroupId': self._serialize.url("large_person_group_id", large_person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), + 'personId': self._serialize.url("person_id", person_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if user_data is not None: + query_parameters['userData'] = self._serialize.query("user_data", user_data, 'str', max_length=1024) + if target_face is not None: + query_parameters['targetFace'] = self._serialize.query("target_face", target_face, '[int]', div=',') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/octet-stream' + if custom_headers: + header_parameters.update(custom_headers) + + # Construct body + body_content = self._client.stream_upload(image, callback) + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.APIErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PersistedFace', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_face_from_stream.metadata = {'url': '/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces'} diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/person_group_operations.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/person_group_operations.py index e0961c1e8940..aa609082f5de 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/person_group_operations.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/person_group_operations.py @@ -57,9 +57,9 @@ def create( body = models.NameAndUserDataContract(name=name, user_data=user_data) # Construct URL - url = '/persongroups/{personGroupId}' + url = self.create.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -77,9 +77,8 @@ def create( body_content = self._serialize.body(body, 'NameAndUserDataContract') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -87,11 +86,12 @@ def create( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + create.metadata = {'url': '/persongroups/{personGroupId}'} def delete( self, person_group_id, custom_headers=None, raw=False, **operation_config): - """Delete an existing person group. Persisted face images of all people in - the person group will also be deleted. + """Delete an existing person group. Persisted face features of all people + in the person group will also be deleted. :param person_group_id: Id referencing a particular person group. :type person_group_id: str @@ -106,9 +106,9 @@ def delete( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}' + url = self.delete.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -118,13 +118,12 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -132,6 +131,7 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/persongroups/{personGroupId}'} def get( self, person_group_id, custom_headers=None, raw=False, **operation_config): @@ -152,9 +152,9 @@ def get( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}' + url = self.get.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -164,13 +164,13 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -185,6 +185,7 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/persongroups/{personGroupId}'} def update( self, person_group_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): @@ -210,9 +211,9 @@ def update( body = models.NameAndUserDataContract(name=name, user_data=user_data) # Construct URL - url = '/persongroups/{personGroupId}' + url = self.update.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -230,9 +231,8 @@ def update( body_content = self._serialize.body(body, 'NameAndUserDataContract') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -240,6 +240,7 @@ def update( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update.metadata = {'url': '/persongroups/{personGroupId}'} def get_training_status( self, person_group_id, custom_headers=None, raw=False, **operation_config): @@ -259,9 +260,9 @@ def get_training_status( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}/training' + url = self.get_training_status.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -271,13 +272,13 @@ def get_training_status( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -292,6 +293,7 @@ def get_training_status( return client_raw_response return deserialized + get_training_status.metadata = {'url': '/persongroups/{personGroupId}/training'} def list( self, start=None, top=1000, custom_headers=None, raw=False, **operation_config): @@ -314,9 +316,9 @@ def list( :class:`APIErrorException` """ # Construct URL - url = '/persongroups' + url = self.list.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True) + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True) } url = self._client.format_url(url, **path_format_arguments) @@ -329,13 +331,13 @@ def list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -350,6 +352,7 @@ def list( return client_raw_response return deserialized + list.metadata = {'url': '/persongroups'} def train( self, person_group_id, custom_headers=None, raw=False, **operation_config): @@ -369,9 +372,9 @@ def train( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}/train' + url = self.train.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -381,13 +384,12 @@ def train( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: raise models.APIErrorException(self._deserialize, response) @@ -395,3 +397,4 @@ def train( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + train.metadata = {'url': '/persongroups/{personGroupId}/train'} diff --git a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/person_group_person_operations.py b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/person_group_person_operations.py index c80df1653c06..8458ff94102d 100644 --- a/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/person_group_person_operations.py +++ b/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face/operations/person_group_person_operations.py @@ -57,9 +57,9 @@ def create( body = models.NameAndUserDataContract(name=name, user_data=user_data) # Construct URL - url = '/persongroups/{personGroupId}/persons' + url = self.create.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -69,6 +69,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -77,9 +78,8 @@ def create( body_content = self._serialize.body(body, 'NameAndUserDataContract') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -94,6 +94,7 @@ def create( return client_raw_response return deserialized + create.metadata = {'url': '/persongroups/{personGroupId}/persons'} def list( self, person_group_id, start=None, top=None, custom_headers=None, raw=False, **operation_config): @@ -121,9 +122,9 @@ def list( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}/persons' + url = self.list.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$') } url = self._client.format_url(url, **path_format_arguments) @@ -137,13 +138,13 @@ def list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -158,11 +159,12 @@ def list( return client_raw_response return deserialized + list.metadata = {'url': '/persongroups/{personGroupId}/persons'} def delete( self, person_group_id, person_id, custom_headers=None, raw=False, **operation_config): - """Delete an existing person from a person group. Persisted face images of - the person will also be deleted. + """Delete an existing person from a person group. All stored person data, + and face features in the person entry will be deleted. :param person_group_id: Id referencing a particular person group. :type person_group_id: str @@ -179,9 +181,9 @@ def delete( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}/persons/{personId}' + url = self.delete.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'personId': self._serialize.url("person_id", person_id, 'str') } @@ -192,13 +194,12 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -206,6 +207,7 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/persongroups/{personGroupId}/persons/{personId}'} def get( self, person_group_id, person_id, custom_headers=None, raw=False, **operation_config): @@ -228,9 +230,9 @@ def get( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}/persons/{personId}' + url = self.get.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'personId': self._serialize.url("person_id", person_id, 'str') } @@ -241,13 +243,13 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -262,6 +264,7 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/persongroups/{personGroupId}/persons/{personId}'} def update( self, person_group_id, person_id, name=None, user_data=None, custom_headers=None, raw=False, **operation_config): @@ -288,9 +291,9 @@ def update( body = models.NameAndUserDataContract(name=name, user_data=user_data) # Construct URL - url = '/persongroups/{personGroupId}/persons/{personId}' + url = self.update.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'personId': self._serialize.url("person_id", person_id, 'str') } @@ -309,9 +312,8 @@ def update( body_content = self._serialize.body(body, 'NameAndUserDataContract') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -319,11 +321,12 @@ def update( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update.metadata = {'url': '/persongroups/{personGroupId}/persons/{personId}'} def delete_face( self, person_group_id, person_id, persisted_face_id, custom_headers=None, raw=False, **operation_config): - """Delete a face from a person. Relative image for the persisted face will - also be deleted. + """Delete a face from a person. Relative feature for the persisted face + will also be deleted. :param person_group_id: Id referencing a particular person group. :type person_group_id: str @@ -343,9 +346,9 @@ def delete_face( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}/persons/{personId}/persistedFaces/{persistedFaceId}' + url = self.delete_face.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'personId': self._serialize.url("person_id", person_id, 'str'), 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') @@ -357,13 +360,12 @@ def delete_face( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -371,6 +373,7 @@ def delete_face( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_face.metadata = {'url': '/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'} def get_face( self, person_group_id, person_id, persisted_face_id, custom_headers=None, raw=False, **operation_config): @@ -396,9 +399,9 @@ def get_face( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}/persons/{personId}/persistedFaces/{persistedFaceId}' + url = self.get_face.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'personId': self._serialize.url("person_id", person_id, 'str'), 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') @@ -410,13 +413,13 @@ def get_face( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if custom_headers: header_parameters.update(custom_headers) # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -431,6 +434,7 @@ def get_face( return client_raw_response return deserialized + get_face.metadata = {'url': '/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'} def update_face( self, person_group_id, person_id, persisted_face_id, user_data=None, custom_headers=None, raw=False, **operation_config): @@ -456,12 +460,12 @@ def update_face( :raises: :class:`APIErrorException` """ - body = models.UpdatePersonFaceRequest(user_data=user_data) + body = models.UpdateFaceRequest(user_data=user_data) # Construct URL - url = '/persongroups/{personGroupId}/persons/{personId}/persistedFaces/{persistedFaceId}' + url = self.update_face.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'personId': self._serialize.url("person_id", person_id, 'str'), 'persistedFaceId': self._serialize.url("persisted_face_id", persisted_face_id, 'str') @@ -478,12 +482,11 @@ def update_face( header_parameters.update(custom_headers) # Construct body - body_content = self._serialize.body(body, 'UpdatePersonFaceRequest') + body_content = self._serialize.body(body, 'UpdateFaceRequest') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -491,8 +494,9 @@ def update_face( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update_face.metadata = {'url': '/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'} - def add_person_face_from_url( + def add_face_from_url( self, person_group_id, person_id, url, user_data=None, target_face=None, custom_headers=None, raw=False, **operation_config): """Add a representative face to a person for identification. The input face is specified as an image with a targetFace rectangle. @@ -501,7 +505,7 @@ def add_person_face_from_url( :type person_group_id: str :param person_id: Id referencing a particular person. :type person_id: str - :param url: + :param url: Publicly reachable URL of an image :type url: str :param user_data: User-specified data about the face for any purpose. The maximum length is 1KB. @@ -526,9 +530,9 @@ def add_person_face_from_url( image_url = models.ImageUrl(url=url) # Construct URL - url = '/persongroups/{personGroupId}/persons/{personId}/persistedFaces' + url = self.add_face_from_url.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'personId': self._serialize.url("person_id", person_id, 'str') } @@ -543,6 +547,7 @@ def add_person_face_from_url( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if custom_headers: header_parameters.update(custom_headers) @@ -551,9 +556,8 @@ def add_person_face_from_url( body_content = self._serialize.body(image_url, 'ImageUrl') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -568,8 +572,9 @@ def add_person_face_from_url( return client_raw_response return deserialized + add_face_from_url.metadata = {'url': '/persongroups/{personGroupId}/persons/{personId}/persistedfaces'} - def add_person_face_from_stream( + def add_face_from_stream( self, person_group_id, person_id, image, user_data=None, target_face=None, custom_headers=None, raw=False, callback=None, **operation_config): """Add a representative face to a person for identification. The input face is specified as an image with a targetFace rectangle. @@ -606,9 +611,9 @@ def add_person_face_from_stream( :class:`APIErrorException` """ # Construct URL - url = '/persongroups/{personGroupId}/persons/{personId}/persistedFaces' + url = self.add_face_from_stream.metadata['url'] path_format_arguments = { - 'AzureRegion': self._serialize.url("self.config.azure_region", self.config.azure_region, 'AzureRegions', skip_quote=True), + 'Endpoint': self._serialize.url("self.config.endpoint", self.config.endpoint, 'str', skip_quote=True), 'personGroupId': self._serialize.url("person_group_id", person_group_id, 'str', max_length=64, pattern=r'^[a-z0-9-_]+$'), 'personId': self._serialize.url("person_id", person_id, 'str') } @@ -623,6 +628,7 @@ def add_person_face_from_stream( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/octet-stream' if custom_headers: header_parameters.update(custom_headers) @@ -631,9 +637,8 @@ def add_person_face_from_stream( body_content = self._client.stream_upload(image, callback) # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.APIErrorException(self._deserialize, response) @@ -648,3 +653,4 @@ def add_person_face_from_stream( return client_raw_response return deserialized + add_face_from_stream.metadata = {'url': '/persongroups/{personGroupId}/persons/{personId}/persistedfaces'} diff --git a/azure-cognitiveservices-vision-face/azure_bdist_wheel.py b/azure-cognitiveservices-vision-face/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-cognitiveservices-vision-face/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-cognitiveservices-vision-face/build.json b/azure-cognitiveservices-vision-face/build.json deleted file mode 100644 index f0c2cb29a1b2..000000000000 --- a/azure-cognitiveservices-vision-face/build.json +++ /dev/null @@ -1,420 +0,0 @@ -{ - "autorest": [ - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4228", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/js-yaml": "^3.10.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.53", - "@types/source-map": "^0.5.0", - "@types/yargs": "^8.0.2", - "@types/z-schema": "^3.16.31", - "dts-generator": "^2.1.0", - "mocha": "^4.0.1", - "mocha-typescript": "^1.1.7", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4228/node_modules/@microsoft.azure/autorest-core", - "_shasum": "b3897b8615417aa07cf9113d4bd18862b32f82f8", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4228", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4228/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "D:\\VSProjects\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4228\\node_modules\\@microsoft.azure\\autorest-core", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4228\\node_modules\\@microsoft.azure\\autorest-core", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4228/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4228/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4228\\node_modules\\@microsoft.azure\\autorest-core", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4228\\node_modules\\@microsoft.azure\\autorest-core" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4230", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/js-yaml": "^3.10.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.53", - "@types/source-map": "0.5.0", - "@types/yargs": "^8.0.2", - "@types/z-schema": "^3.16.31", - "dts-generator": "^2.1.0", - "mocha": "^4.0.1", - "mocha-typescript": "^1.1.7", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4230/node_modules/@microsoft.azure/autorest-core", - "_shasum": "3c9b387fbe18ce3a54b68bc0c24ddb0a4c850f25", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4230", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4230/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "D:\\VSProjects\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4230\\node_modules\\@microsoft.azure\\autorest-core", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4230\\node_modules\\@microsoft.azure\\autorest-core", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4230/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4230/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4230\\node_modules\\@microsoft.azure\\autorest-core", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4230\\node_modules\\@microsoft.azure\\autorest-core" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.3.38", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "2.3.1", - "autorest": "^2.0.4201", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "903bb77932e4ed1b8bc3b25cc39b167143494f6c", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.3.38", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "D:\\VSProjects\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.38\\node_modules\\@microsoft.azure\\autorest.modeler", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.38\\node_modules\\@microsoft.azure\\autorest.modeler", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.38\\node_modules\\@microsoft.azure\\autorest.modeler", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.38\\node_modules\\@microsoft.azure\\autorest.modeler" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.3.44", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "2.3.17", - "autorest": "^2.0.4225", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "9b5a880a77467be33a77f002f03230d3ccc21266", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.3.44", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "D:\\VSProjects\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.44\\node_modules\\@microsoft.azure\\autorest.modeler", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.44\\node_modules\\@microsoft.azure\\autorest.modeler", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.44\\node_modules\\@microsoft.azure\\autorest.modeler", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.44\\node_modules\\@microsoft.azure\\autorest.modeler" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.python", - "version": "2.1.34", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "^2.3.13", - "autorest": "^2.0.4203", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.python@2.1.34/node_modules/@microsoft.azure/autorest.python", - "_shasum": "b58d7e0542e081cf410fdbcdf8c14acf9cee16a7", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.python@2.1.34", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.python@2.1.34/node_modules/@microsoft.azure/autorest.python", - "_requested": { - "type": "directory", - "where": "D:\\VSProjects\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.python@2.1.34\\node_modules\\@microsoft.azure\\autorest.python", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.python@2.1.34\\node_modules\\@microsoft.azure\\autorest.python", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.python@2.1.34/node_modules/@microsoft.azure/autorest.python", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.python@2.1.34/node_modules/@microsoft.azure/autorest.python" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.python@2.1.34\\node_modules\\@microsoft.azure\\autorest.python", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.python@2.1.34\\node_modules\\@microsoft.azure\\autorest.python" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.3089.598153651778.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - } - ], - "autorest_bootstrap": { - "dependencies": { - "autorest": { - "version": "2.0.4215", - "from": "autorest@latest", - "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4215.tgz" - } - } - } -} \ No newline at end of file diff --git a/azure-cognitiveservices-vision-face/sdk_packaging.toml b/azure-cognitiveservices-vision-face/sdk_packaging.toml new file mode 100644 index 000000000000..3755264a50f4 --- /dev/null +++ b/azure-cognitiveservices-vision-face/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-cognitiveservices-vision-face" +package_nspkg = "azure-cognitiveservices-vision-nspkg" +package_pprint_name = "Cognitive Services Face" +package_doc_id = "cognitive-services" +is_stable = false +is_arm = false diff --git a/azure-cognitiveservices-vision-face/setup.cfg b/azure-cognitiveservices-vision-face/setup.cfg index 6197b40d106e..3c6e79cf31da 100644 --- a/azure-cognitiveservices-vision-face/setup.cfg +++ b/azure-cognitiveservices-vision-face/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-cognitiveservices-vision-nspkg \ No newline at end of file diff --git a/azure-cognitiveservices-vision-face/setup.py b/azure-cognitiveservices-vision-face/setup.py index 71868eea4aa0..f7ab200174d8 100644 --- a/azure-cognitiveservices-vision-face/setup.py +++ b/azure-cognitiveservices-vision-face/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-cognitiveservices-vision-face" @@ -69,17 +63,25 @@ 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.cognitiveservices', + 'azure.cognitiveservices.vision', + ]), install_requires=[ - 'msrest>=0.4.24,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-cognitiveservices-vision-nspkg'], + } ) diff --git a/azure-cognitiveservices-vision-face/tests/test_face.py b/azure-cognitiveservices-vision-face/tests/test_face.py index 93fa6537c356..0821ec48e2cf 100644 --- a/azure-cognitiveservices-vision-face/tests/test_face.py +++ b/azure-cognitiveservices-vision-face/tests/test_face.py @@ -10,7 +10,7 @@ # -------------------------------------------------------------------------- from os.path import dirname, join, realpath -from azure.cognitiveservices.vision.face import FaceAPI +from azure.cognitiveservices.vision.face import FaceClient from azure.cognitiveservices.vision.face.models import Gender from msrest.authentication import CognitiveServicesCredentials @@ -48,9 +48,9 @@ def test_face_detect(self): credentials = CognitiveServicesCredentials( self.settings.CS_SUBSCRIPTION_KEY ) - face_api = FaceAPI("westus2", credentials=credentials) + face_client = FaceClient("https://westus2.api.cognitive.microsoft.com", credentials=credentials) with open(join(CWD, "facefindsimilar.queryface.jpg"), "rb") as face_fd: - result = face_api.face.detect_with_stream( + result = face_client.face.detect_with_stream( face_fd, return_face_attributes=['age','gender','headPose','smile','facialHair','glasses','emotion','hair','makeup','occlusion','accessories','blur','exposure','noise'] ) diff --git a/azure-cognitiveservices-vision-nspkg/README.rst b/azure-cognitiveservices-vision-nspkg/README.rst index c879ffe500c3..1d12e0a19abc 100644 --- a/azure-cognitiveservices-vision-nspkg/README.rst +++ b/azure-cognitiveservices-vision-nspkg/README.rst @@ -5,6 +5,9 @@ This is the Microsoft Azure Cognitive Services Vision namespace package. This package is not intended to be installed directly by the end user. +Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 ` as namespace package strategy. +This package will use `python_requires` to enforce Python 2 installation. This implies that you might see this package on Python 3 environment if you have pip < 9.0 or setuptools < 24.2.0. + It provides the necessary files for other packages to extend the azure.cognitiveservices.vision namespace. If you are looking to install the Azure client libraries, see the diff --git a/azure-cognitiveservices-vision-nspkg/azure/__init__.py b/azure-cognitiveservices-vision-nspkg/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-vision-nspkg/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-nspkg/azure/cognitiveservices/__init__.py b/azure-cognitiveservices-vision-nspkg/azure/cognitiveservices/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-cognitiveservices-vision-nspkg/azure/cognitiveservices/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-nspkg/azure/cognitiveservices/vision/__init__.py b/azure-cognitiveservices-vision-nspkg/azure/cognitiveservices/vision/__init__.py index e69de29bb2d1..0260537a02bb 100644 --- a/azure-cognitiveservices-vision-nspkg/azure/cognitiveservices/vision/__init__.py +++ b/azure-cognitiveservices-vision-nspkg/azure/cognitiveservices/vision/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-cognitiveservices-vision-nspkg/sdk_packaging.toml b/azure-cognitiveservices-vision-nspkg/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-cognitiveservices-vision-nspkg/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-cognitiveservices-vision-nspkg/setup.py b/azure-cognitiveservices-vision-nspkg/setup.py index 4b8a51fec2c3..0e81a91d639d 100644 --- a/azure-cognitiveservices-vision-nspkg/setup.py +++ b/azure-cognitiveservices-vision-nspkg/setup.py @@ -25,7 +25,7 @@ setup( name='azure-cognitiveservices-vision-nspkg', - version='2.0.0', + version='3.0.0', description='Microsoft Azure Cognitive Services Vision Namespace Package [Internal]', long_description=open('README.rst', 'r').read(), license='MIT License', @@ -37,19 +37,14 @@ 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', 'License :: OSI Approved :: MIT License', ], zip_safe=False, packages=[ - 'azure', - 'azure.cognitiveservices', 'azure.cognitiveservices.vision', ], + python_requires='<3', install_requires=[ - 'azure-cognitiveservices-nspkg>=2.0.0', + 'azure-cognitiveservices-nspkg>=3.0.0', ] ) diff --git a/azure-common/HISTORY.rst b/azure-common/HISTORY.rst index c84ef7ddd147..1488f3bd32be 100644 --- a/azure-common/HISTORY.rst +++ b/azure-common/HISTORY.rst @@ -3,6 +3,18 @@ Release History =============== +1.1.16 (2018-09-26) ++++++++++++++++++++ + +- azure-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + +1.1.15 (2018-09-13) ++++++++++++++++++++ + +**Features** + +- Adding profile v2018-03-01-hybrid definition + 1.1.14 (2018-07-23) +++++++++++++++++++ diff --git a/azure-common/MANIFEST.in b/azure-common/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-common/MANIFEST.in +++ b/azure-common/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-common/azure/__init__.py b/azure-common/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-common/azure/__init__.py +++ b/azure-common/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-common/azure/common/__init__.py b/azure-common/azure/common/__init__.py index e7aafcdce728..6fbc7a2dcdbf 100644 --- a/azure-common/azure/common/__init__.py +++ b/azure-common/azure/common/__init__.py @@ -3,9 +3,10 @@ # Licensed under the MIT License. See License.txt in the project root for # license information. #-------------------------------------------------------------------------- +from ._version import VERSION as _VERSION __author__ = 'Microsoft Corp. ' -__version__ = '1.1.14' +__version__ = _VERSION class AzureException(Exception): diff --git a/azure-common/azure/common/_version.py b/azure-common/azure/common/_version.py new file mode 100644 index 000000000000..426d3db83894 --- /dev/null +++ b/azure-common/azure/common/_version.py @@ -0,0 +1,7 @@ +#------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +#-------------------------------------------------------------------------- + +VERSION = "1.1.16" \ No newline at end of file diff --git a/azure-common/azure/profiles/__init__.py b/azure-common/azure/profiles/__init__.py index 9a8b695d7f25..f62de5970766 100644 --- a/azure-common/azure/profiles/__init__.py +++ b/azure-common/azure/profiles/__init__.py @@ -108,6 +108,48 @@ class KnownProfiles(Enum): }, "2017-03-09-profile" ) + v2018_03_01_hybrid = ProfileDefinition( + { + "azure.keyvault.KeyVaultClient":{ + None: "2016-10-01" + }, + "azure.mgmt.authorization.AuthorizationManagementClient": { + None: "2015-07-01" + }, + "azure.mgmt.compute.ComputeManagementClient": { + None: "2017-03-30" + }, + "azure.mgmt.keyvault.KeyVaultManagementClient":{ + None: "2016-10-01" + }, + "azure.mgmt.network.NetworkManagementClient": { + None: "2017-10-01" + }, + "azure.mgmt.storage.StorageManagementClient": { + None: "2016-01-01" + }, + "azure.mgmt.resource.policy.PolicyClient": { + None: "2016-12-01" + }, + "azure.mgmt.resource.locks.ManagementLockClient": { + None: "2016-09-01" + }, + "azure.mgmt.resource.links.ManagementLinkClient": { + None: "2016-09-01" + }, + "azure.mgmt.resource.resources.ResourceManagementClient": { + None: "2018-02-01" + }, + "azure.mgmt.resource.subscriptions.SubscriptionClient": { + None: "2016-06-01" + }, + "azure.mgmt.dns": { + None: "2016-04-01" + } + }, + "2018-03-01-hybrid" + ) + def __init__(self, profile_definition): self._profile_definition = profile_definition diff --git a/azure-common/azure_bdist_wheel.py b/azure-common/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-common/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-common/sdk_packaging.toml b/azure-common/sdk_packaging.toml new file mode 100644 index 000000000000..c1ee830cf824 --- /dev/null +++ b/azure-common/sdk_packaging.toml @@ -0,0 +1,8 @@ +[packaging] +auto_update = false +package_name = "azure-common" +package_nspkg = "azure-nspkg" +package_pprint_name = "MyService Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-common/setup.cfg b/azure-common/setup.cfg index ccdace23b2d5..3c6e79cf31da 100644 --- a/azure-common/setup.cfg +++ b/azure-common/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-nspkg diff --git a/azure-common/setup.py b/azure-common/setup.py index 13281b7f46f5..b073af1354d7 100644 --- a/azure-common/setup.py +++ b/azure-common/setup.py @@ -6,16 +6,18 @@ # license information. #-------------------------------------------------------------------------- +import re +import os.path from io import open from setuptools import setup -import sys -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} +# Change the PACKAGE_NAME only to change folder and different name +PACKAGE_NAME = "azure-common" + +# a-b-c => a/b/c +package_folder_path = PACKAGE_NAME.replace('-', '/') +# a-b-c => a.b.c +namespace_name = PACKAGE_NAME.replace('-', '.') # azure v0.x is not compatible with this package # azure v0.x used to have a __version__ attribute (newer versions don't) @@ -32,14 +34,22 @@ except ImportError: pass +# Version extraction inspired from 'requests' +with open(os.path.join(package_folder_path, '_version.py'), 'r') as fd: + version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', + fd.read(), re.MULTILINE).group(1) + +if not version: + raise RuntimeError('Cannot find version information') + with open('README.rst', encoding='utf-8') as f: readme = f.read() with open('HISTORY.rst', encoding='utf-8') as f: history = f.read() setup( - name='azure-common', - version='1.1.14', + name=PACKAGE_NAME, + version=version, description='Microsoft Azure Client Library for Python (Common)', long_description=readme + '\n\n' + history, license='MIT License', @@ -60,14 +70,13 @@ ], zip_safe=False, packages=[ - 'azure', 'azure.common', 'azure.profiles', ], extras_require={ + ":python_version<'3.0'": ['azure-nspkg'], 'autorest':[ 'msrestazure>=0.4.0,<2.0.0', ] - }, - cmdclass=cmdclass + } ) diff --git a/azure-common/testutils/create_credentials_file.py b/azure-common/testutils/create_credentials_file.py deleted file mode 100644 index 4b5e96c8f750..000000000000 --- a/azure-common/testutils/create_credentials_file.py +++ /dev/null @@ -1,123 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -# This script creates the credentials_real.json file in the tests folder -# which is required when running live tests. - -# You should create a new user with global admin rights in your AAD -# and pass that to this script, along with the password and subscription id. -# If you've just created the user, make sure to login using the portal first -# before using this script, because Azure requires you to create a new -# password on first login. - -import argparse -import json -import os.path -import requests -import getpass - -try: - input = raw_input -except: - pass - - -def get_token(username, password): - # the client id we can borrow from azure xplat cli - client_id = '04b07795-8ddb-461a-bbee-02f9e1bf7b46' - grant_type = 'password' - resource = 'https://management.core.windows.net/' - token_url = 'https://login.windows.net/common/oauth2/token' - - payload = { - 'grant_type': grant_type, - 'client_id': client_id, - 'username': username, - 'password': password, - 'resource': resource, - } - response = requests.post(token_url, data=payload).json() - return response['access_token'] - - -front_url = "https://management.azure.com" -front_api_version = "2014-01-01" - -def get_tenant_ids(auth_header): - response = requests.get( - "{}/tenants?api-version={}".format(front_url, front_api_version), - headers={ - 'Authorization': auth_header, - } - ).json() - - ids = [item['tenantId'] for item in response['value']] - return ids - - -def get_subscription_ids(auth_header): - response = requests.get( - "{}/subscriptions?api-version={}".format(front_url, front_api_version), - headers={ - 'Authorization': auth_header, - } - ).json() - - ids = [item['subscriptionId'] for item in response['value']] - return ids - - -def choose_subscription(auth_header): - # TODO: this doesn't work, we'll need ADAL for this - # tenants = get_tenant_ids(auth_header) - # print('tenants: {}'.format(tenants)) - - # subs = get_subscription_ids(auth_header) - # print('subs: {}'.format(subs)) - - # for now just ask the user to type it - return input('Enter subscription id:') - - -def write_credentials_file(sub_id, token): - folder = os.path.dirname(__file__) - path = os.path.join(folder, 'credentials_real.json') - credentials = { - 'subscriptionid': sub_id, - 'authorization_header': 'Bearer {}'.format(token), - } - - with open(path, 'w') as f: - f.write(json.dumps(credentials)) - - return path - - -if __name__ == '__main__': - parser = argparse.ArgumentParser() - parser.add_argument('-u', '--user', help='User name. Ex: username@mylogin.onmicrosoft.com') - parser.add_argument('-p', '--password', help='User password') - parser.add_argument('-s', '--subscription', help='Subscription id. Ex: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee') - args = parser.parse_args() - - username = args.user - password = args.password - sub_id = args.subscription - - if not username: - username = input('Enter username:') - - if not password: - password = getpass.getpass('Enter password:') - - token = get_token(username, password) - - if not sub_id: - auth_header = 'Bearer {}'.format(token) - sub_id = choose_subscription(auth_header) - - creds_path = write_credentials_file(sub_id, token) - print('Credentials written to {}'.format(creds_path)) diff --git a/azure-eventgrid/HISTORY.rst b/azure-eventgrid/HISTORY.rst index 5b774d604112..95183a60ed6b 100644 --- a/azure-eventgrid/HISTORY.rst +++ b/azure-eventgrid/HISTORY.rst @@ -3,6 +3,11 @@ Release History =============== +1.2.0 (2018-08-28) +++++++++++++++++++ + +- Event Schemas for new events (IotHub DeviceConnected and DeviceDisconnected events, Resource events related to actions), and breaking changes to the schema for IotHub DeviceCreated event and IotHub DeviceDeleted event. + 1.1.0 (2018-05-24) ++++++++++++++++++ diff --git a/azure-eventgrid/MANIFEST.in b/azure-eventgrid/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-eventgrid/MANIFEST.in +++ b/azure-eventgrid/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-eventgrid/README.rst b/azure-eventgrid/README.rst index 8ca27f1fc490..95480912b17f 100644 --- a/azure-eventgrid/README.rst +++ b/azure-eventgrid/README.rst @@ -3,13 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Event Grid Client Library. -Azure Resource Manager (ARM) is the next generation of management APIs that -replace the old Azure Service Management (ASM). - -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. - -For the older Azure Service Management (ASM) libraries, see -`azure-servicemanagement-legacy `__ library. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. diff --git a/azure-eventgrid/azure/__init__.py b/azure-eventgrid/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-eventgrid/azure/__init__.py +++ b/azure-eventgrid/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-eventgrid/azure/eventgrid/models/__init__.py b/azure-eventgrid/azure/eventgrid/models/__init__.py index 57ba4b413989..4398f6ccd602 100644 --- a/azure-eventgrid/azure/eventgrid/models/__init__.py +++ b/azure-eventgrid/azure/eventgrid/models/__init__.py @@ -19,18 +19,25 @@ from .resource_delete_success_data_py3 import ResourceDeleteSuccessData from .resource_delete_failure_data_py3 import ResourceDeleteFailureData from .resource_delete_cancel_data_py3 import ResourceDeleteCancelData + from .resource_action_success_data_py3 import ResourceActionSuccessData + from .resource_action_failure_data_py3 import ResourceActionFailureData + from .resource_action_cancel_data_py3 import ResourceActionCancelData from .event_grid_event_py3 import EventGridEvent from .subscription_validation_event_data_py3 import SubscriptionValidationEventData from .subscription_validation_response_py3 import SubscriptionValidationResponse from .subscription_deleted_event_data_py3 import SubscriptionDeletedEventData from .iot_hub_device_created_event_data_py3 import IotHubDeviceCreatedEventData from .iot_hub_device_deleted_event_data_py3 import IotHubDeviceDeletedEventData + from .iot_hub_device_connected_event_data_py3 import IotHubDeviceConnectedEventData + from .iot_hub_device_disconnected_event_data_py3 import IotHubDeviceDisconnectedEventData from .device_twin_metadata_py3 import DeviceTwinMetadata from .device_twin_properties_py3 import DeviceTwinProperties from .device_twin_info_properties_py3 import DeviceTwinInfoProperties from .device_twin_info_x509_thumbprint_py3 import DeviceTwinInfoX509Thumbprint from .device_twin_info_py3 import DeviceTwinInfo from .device_life_cycle_event_properties_py3 import DeviceLifeCycleEventProperties + from .device_connection_state_event_info_py3 import DeviceConnectionStateEventInfo + from .device_connection_state_event_properties_py3 import DeviceConnectionStateEventProperties from .container_registry_image_pushed_event_data_py3 import ContainerRegistryImagePushedEventData from .container_registry_image_deleted_event_data_py3 import ContainerRegistryImageDeletedEventData from .container_registry_event_target_py3 import ContainerRegistryEventTarget @@ -51,18 +58,25 @@ from .resource_delete_success_data import ResourceDeleteSuccessData from .resource_delete_failure_data import ResourceDeleteFailureData from .resource_delete_cancel_data import ResourceDeleteCancelData + from .resource_action_success_data import ResourceActionSuccessData + from .resource_action_failure_data import ResourceActionFailureData + from .resource_action_cancel_data import ResourceActionCancelData from .event_grid_event import EventGridEvent from .subscription_validation_event_data import SubscriptionValidationEventData from .subscription_validation_response import SubscriptionValidationResponse from .subscription_deleted_event_data import SubscriptionDeletedEventData from .iot_hub_device_created_event_data import IotHubDeviceCreatedEventData from .iot_hub_device_deleted_event_data import IotHubDeviceDeletedEventData + from .iot_hub_device_connected_event_data import IotHubDeviceConnectedEventData + from .iot_hub_device_disconnected_event_data import IotHubDeviceDisconnectedEventData from .device_twin_metadata import DeviceTwinMetadata from .device_twin_properties import DeviceTwinProperties from .device_twin_info_properties import DeviceTwinInfoProperties from .device_twin_info_x509_thumbprint import DeviceTwinInfoX509Thumbprint from .device_twin_info import DeviceTwinInfo from .device_life_cycle_event_properties import DeviceLifeCycleEventProperties + from .device_connection_state_event_info import DeviceConnectionStateEventInfo + from .device_connection_state_event_properties import DeviceConnectionStateEventProperties from .container_registry_image_pushed_event_data import ContainerRegistryImagePushedEventData from .container_registry_image_deleted_event_data import ContainerRegistryImageDeletedEventData from .container_registry_event_target import ContainerRegistryEventTarget @@ -87,18 +101,25 @@ 'ResourceDeleteSuccessData', 'ResourceDeleteFailureData', 'ResourceDeleteCancelData', + 'ResourceActionSuccessData', + 'ResourceActionFailureData', + 'ResourceActionCancelData', 'EventGridEvent', 'SubscriptionValidationEventData', 'SubscriptionValidationResponse', 'SubscriptionDeletedEventData', 'IotHubDeviceCreatedEventData', 'IotHubDeviceDeletedEventData', + 'IotHubDeviceConnectedEventData', + 'IotHubDeviceDisconnectedEventData', 'DeviceTwinMetadata', 'DeviceTwinProperties', 'DeviceTwinInfoProperties', 'DeviceTwinInfoX509Thumbprint', 'DeviceTwinInfo', 'DeviceLifeCycleEventProperties', + 'DeviceConnectionStateEventInfo', + 'DeviceConnectionStateEventProperties', 'ContainerRegistryImagePushedEventData', 'ContainerRegistryImageDeletedEventData', 'ContainerRegistryEventTarget', diff --git a/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_info.py b/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_info.py new file mode 100644 index 000000000000..7a110cab64af --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_info.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeviceConnectionStateEventInfo(Model): + """Information about the device connection state event. + + :param sequence_number: Sequence number is string representation of a + hexadecimal number. string compare can be used to identify the larger + number because both in ASCII and HEX numbers come after alphabets. If you + are converting the string to hex, then the number is a 256 bit number. + :type sequence_number: str + """ + + _attribute_map = { + 'sequence_number': {'key': 'sequenceNumber', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DeviceConnectionStateEventInfo, self).__init__(**kwargs) + self.sequence_number = kwargs.get('sequence_number', None) diff --git a/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_info_py3.py b/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_info_py3.py new file mode 100644 index 000000000000..0ef8c03b2074 --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_info_py3.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeviceConnectionStateEventInfo(Model): + """Information about the device connection state event. + + :param sequence_number: Sequence number is string representation of a + hexadecimal number. string compare can be used to identify the larger + number because both in ASCII and HEX numbers come after alphabets. If you + are converting the string to hex, then the number is a 256 bit number. + :type sequence_number: str + """ + + _attribute_map = { + 'sequence_number': {'key': 'sequenceNumber', 'type': 'str'}, + } + + def __init__(self, *, sequence_number: str=None, **kwargs) -> None: + super(DeviceConnectionStateEventInfo, self).__init__(**kwargs) + self.sequence_number = sequence_number diff --git a/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_properties.py b/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_properties.py new file mode 100644 index 000000000000..04a5a1aefcb0 --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_properties.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeviceConnectionStateEventProperties(Model): + """Schema of the Data property of an EventGridEvent for a device connection + state event (DeviceConnected, DeviceDisconnected). + + :param device_id: The unique identifier of the device. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type device_id: str + :param module_id: The unique identifier of the module. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type module_id: str + :param hub_name: Name of the IoT Hub where the device was created or + deleted. + :type hub_name: str + :param device_connection_state_event_info: Information about the device + connection state event. + :type device_connection_state_event_info: + ~azure.eventgrid.models.DeviceConnectionStateEventInfo + """ + + _attribute_map = { + 'device_id': {'key': 'deviceId', 'type': 'str'}, + 'module_id': {'key': 'moduleId', 'type': 'str'}, + 'hub_name': {'key': 'hubName', 'type': 'str'}, + 'device_connection_state_event_info': {'key': 'deviceConnectionStateEventInfo', 'type': 'DeviceConnectionStateEventInfo'}, + } + + def __init__(self, **kwargs): + super(DeviceConnectionStateEventProperties, self).__init__(**kwargs) + self.device_id = kwargs.get('device_id', None) + self.module_id = kwargs.get('module_id', None) + self.hub_name = kwargs.get('hub_name', None) + self.device_connection_state_event_info = kwargs.get('device_connection_state_event_info', None) diff --git a/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_properties_py3.py b/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_properties_py3.py new file mode 100644 index 000000000000..b8c339e55f64 --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/device_connection_state_event_properties_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeviceConnectionStateEventProperties(Model): + """Schema of the Data property of an EventGridEvent for a device connection + state event (DeviceConnected, DeviceDisconnected). + + :param device_id: The unique identifier of the device. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type device_id: str + :param module_id: The unique identifier of the module. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type module_id: str + :param hub_name: Name of the IoT Hub where the device was created or + deleted. + :type hub_name: str + :param device_connection_state_event_info: Information about the device + connection state event. + :type device_connection_state_event_info: + ~azure.eventgrid.models.DeviceConnectionStateEventInfo + """ + + _attribute_map = { + 'device_id': {'key': 'deviceId', 'type': 'str'}, + 'module_id': {'key': 'moduleId', 'type': 'str'}, + 'hub_name': {'key': 'hubName', 'type': 'str'}, + 'device_connection_state_event_info': {'key': 'deviceConnectionStateEventInfo', 'type': 'DeviceConnectionStateEventInfo'}, + } + + def __init__(self, *, device_id: str=None, module_id: str=None, hub_name: str=None, device_connection_state_event_info=None, **kwargs) -> None: + super(DeviceConnectionStateEventProperties, self).__init__(**kwargs) + self.device_id = device_id + self.module_id = module_id + self.hub_name = hub_name + self.device_connection_state_event_info = device_connection_state_event_info diff --git a/azure-eventgrid/azure/eventgrid/models/device_life_cycle_event_properties.py b/azure-eventgrid/azure/eventgrid/models/device_life_cycle_event_properties.py index daa20dc9ef06..b6cf0e6f2961 100644 --- a/azure-eventgrid/azure/eventgrid/models/device_life_cycle_event_properties.py +++ b/azure-eventgrid/azure/eventgrid/models/device_life_cycle_event_properties.py @@ -24,21 +24,14 @@ class DeviceLifeCycleEventProperties(Model): :param hub_name: Name of the IoT Hub where the device was created or deleted. :type hub_name: str - :param op_type: The event type specified for this operation by the IoT - Hub. - :type op_type: str - :param operation_timestamp: The ISO8601 timestamp of the operation. - :type operation_timestamp: str :param twin: Information about the device twin, which is the cloud - represenation of application device metadata. + representation of application device metadata. :type twin: ~azure.eventgrid.models.DeviceTwinInfo """ _attribute_map = { 'device_id': {'key': 'deviceId', 'type': 'str'}, 'hub_name': {'key': 'hubName', 'type': 'str'}, - 'op_type': {'key': 'opType', 'type': 'str'}, - 'operation_timestamp': {'key': 'operationTimestamp', 'type': 'str'}, 'twin': {'key': 'twin', 'type': 'DeviceTwinInfo'}, } @@ -46,6 +39,4 @@ def __init__(self, **kwargs): super(DeviceLifeCycleEventProperties, self).__init__(**kwargs) self.device_id = kwargs.get('device_id', None) self.hub_name = kwargs.get('hub_name', None) - self.op_type = kwargs.get('op_type', None) - self.operation_timestamp = kwargs.get('operation_timestamp', None) self.twin = kwargs.get('twin', None) diff --git a/azure-eventgrid/azure/eventgrid/models/device_life_cycle_event_properties_py3.py b/azure-eventgrid/azure/eventgrid/models/device_life_cycle_event_properties_py3.py index f5033203064f..f203cf9f1005 100644 --- a/azure-eventgrid/azure/eventgrid/models/device_life_cycle_event_properties_py3.py +++ b/azure-eventgrid/azure/eventgrid/models/device_life_cycle_event_properties_py3.py @@ -24,28 +24,19 @@ class DeviceLifeCycleEventProperties(Model): :param hub_name: Name of the IoT Hub where the device was created or deleted. :type hub_name: str - :param op_type: The event type specified for this operation by the IoT - Hub. - :type op_type: str - :param operation_timestamp: The ISO8601 timestamp of the operation. - :type operation_timestamp: str :param twin: Information about the device twin, which is the cloud - represenation of application device metadata. + representation of application device metadata. :type twin: ~azure.eventgrid.models.DeviceTwinInfo """ _attribute_map = { 'device_id': {'key': 'deviceId', 'type': 'str'}, 'hub_name': {'key': 'hubName', 'type': 'str'}, - 'op_type': {'key': 'opType', 'type': 'str'}, - 'operation_timestamp': {'key': 'operationTimestamp', 'type': 'str'}, 'twin': {'key': 'twin', 'type': 'DeviceTwinInfo'}, } - def __init__(self, *, device_id: str=None, hub_name: str=None, op_type: str=None, operation_timestamp: str=None, twin=None, **kwargs) -> None: + def __init__(self, *, device_id: str=None, hub_name: str=None, twin=None, **kwargs) -> None: super(DeviceLifeCycleEventProperties, self).__init__(**kwargs) self.device_id = device_id self.hub_name = hub_name - self.op_type = op_type - self.operation_timestamp = operation_timestamp self.twin = twin diff --git a/azure-eventgrid/azure/eventgrid/models/device_twin_info.py b/azure-eventgrid/azure/eventgrid/models/device_twin_info.py index 4f7782f31aa2..a3c555d320cf 100644 --- a/azure-eventgrid/azure/eventgrid/models/device_twin_info.py +++ b/azure-eventgrid/azure/eventgrid/models/device_twin_info.py @@ -13,7 +13,7 @@ class DeviceTwinInfo(Model): - """Information about the device twin, which is the cloud represenation of + """Information about the device twin, which is the cloud representation of application device metadata. :param authentication_type: Authentication type used for this device: diff --git a/azure-eventgrid/azure/eventgrid/models/device_twin_info_py3.py b/azure-eventgrid/azure/eventgrid/models/device_twin_info_py3.py index c496c850aba0..e74f3c65e994 100644 --- a/azure-eventgrid/azure/eventgrid/models/device_twin_info_py3.py +++ b/azure-eventgrid/azure/eventgrid/models/device_twin_info_py3.py @@ -13,7 +13,7 @@ class DeviceTwinInfo(Model): - """Information about the device twin, which is the cloud represenation of + """Information about the device twin, which is the cloud representation of application device metadata. :param authentication_type: Authentication type used for this device: diff --git a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_connected_event_data.py b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_connected_event_data.py new file mode 100644 index 000000000000..9f48f9c10abc --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_connected_event_data.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .device_connection_state_event_properties import DeviceConnectionStateEventProperties + + +class IotHubDeviceConnectedEventData(DeviceConnectionStateEventProperties): + """Event data for Microsoft.Devices.DeviceConnected event. + + :param device_id: The unique identifier of the device. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type device_id: str + :param module_id: The unique identifier of the module. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type module_id: str + :param hub_name: Name of the IoT Hub where the device was created or + deleted. + :type hub_name: str + :param device_connection_state_event_info: Information about the device + connection state event. + :type device_connection_state_event_info: + ~azure.eventgrid.models.DeviceConnectionStateEventInfo + """ + + _attribute_map = { + 'device_id': {'key': 'deviceId', 'type': 'str'}, + 'module_id': {'key': 'moduleId', 'type': 'str'}, + 'hub_name': {'key': 'hubName', 'type': 'str'}, + 'device_connection_state_event_info': {'key': 'deviceConnectionStateEventInfo', 'type': 'DeviceConnectionStateEventInfo'}, + } + + def __init__(self, **kwargs): + super(IotHubDeviceConnectedEventData, self).__init__(**kwargs) diff --git a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_connected_event_data_py3.py b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_connected_event_data_py3.py new file mode 100644 index 000000000000..3c4791507b54 --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_connected_event_data_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .device_connection_state_event_properties_py3 import DeviceConnectionStateEventProperties + + +class IotHubDeviceConnectedEventData(DeviceConnectionStateEventProperties): + """Event data for Microsoft.Devices.DeviceConnected event. + + :param device_id: The unique identifier of the device. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type device_id: str + :param module_id: The unique identifier of the module. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type module_id: str + :param hub_name: Name of the IoT Hub where the device was created or + deleted. + :type hub_name: str + :param device_connection_state_event_info: Information about the device + connection state event. + :type device_connection_state_event_info: + ~azure.eventgrid.models.DeviceConnectionStateEventInfo + """ + + _attribute_map = { + 'device_id': {'key': 'deviceId', 'type': 'str'}, + 'module_id': {'key': 'moduleId', 'type': 'str'}, + 'hub_name': {'key': 'hubName', 'type': 'str'}, + 'device_connection_state_event_info': {'key': 'deviceConnectionStateEventInfo', 'type': 'DeviceConnectionStateEventInfo'}, + } + + def __init__(self, *, device_id: str=None, module_id: str=None, hub_name: str=None, device_connection_state_event_info=None, **kwargs) -> None: + super(IotHubDeviceConnectedEventData, self).__init__(device_id=device_id, module_id=module_id, hub_name=hub_name, device_connection_state_event_info=device_connection_state_event_info, **kwargs) diff --git a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_created_event_data.py b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_created_event_data.py index 92c5392dd4c8..df911f0b0456 100644 --- a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_created_event_data.py +++ b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_created_event_data.py @@ -23,21 +23,14 @@ class IotHubDeviceCreatedEventData(DeviceLifeCycleEventProperties): :param hub_name: Name of the IoT Hub where the device was created or deleted. :type hub_name: str - :param op_type: The event type specified for this operation by the IoT - Hub. - :type op_type: str - :param operation_timestamp: The ISO8601 timestamp of the operation. - :type operation_timestamp: str :param twin: Information about the device twin, which is the cloud - represenation of application device metadata. + representation of application device metadata. :type twin: ~azure.eventgrid.models.DeviceTwinInfo """ _attribute_map = { 'device_id': {'key': 'deviceId', 'type': 'str'}, 'hub_name': {'key': 'hubName', 'type': 'str'}, - 'op_type': {'key': 'opType', 'type': 'str'}, - 'operation_timestamp': {'key': 'operationTimestamp', 'type': 'str'}, 'twin': {'key': 'twin', 'type': 'DeviceTwinInfo'}, } diff --git a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_created_event_data_py3.py b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_created_event_data_py3.py index 02b0ee8ce99d..e8d497edc97e 100644 --- a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_created_event_data_py3.py +++ b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_created_event_data_py3.py @@ -23,23 +23,16 @@ class IotHubDeviceCreatedEventData(DeviceLifeCycleEventProperties): :param hub_name: Name of the IoT Hub where the device was created or deleted. :type hub_name: str - :param op_type: The event type specified for this operation by the IoT - Hub. - :type op_type: str - :param operation_timestamp: The ISO8601 timestamp of the operation. - :type operation_timestamp: str :param twin: Information about the device twin, which is the cloud - represenation of application device metadata. + representation of application device metadata. :type twin: ~azure.eventgrid.models.DeviceTwinInfo """ _attribute_map = { 'device_id': {'key': 'deviceId', 'type': 'str'}, 'hub_name': {'key': 'hubName', 'type': 'str'}, - 'op_type': {'key': 'opType', 'type': 'str'}, - 'operation_timestamp': {'key': 'operationTimestamp', 'type': 'str'}, 'twin': {'key': 'twin', 'type': 'DeviceTwinInfo'}, } - def __init__(self, *, device_id: str=None, hub_name: str=None, op_type: str=None, operation_timestamp: str=None, twin=None, **kwargs) -> None: - super(IotHubDeviceCreatedEventData, self).__init__(device_id=device_id, hub_name=hub_name, op_type=op_type, operation_timestamp=operation_timestamp, twin=twin, **kwargs) + def __init__(self, *, device_id: str=None, hub_name: str=None, twin=None, **kwargs) -> None: + super(IotHubDeviceCreatedEventData, self).__init__(device_id=device_id, hub_name=hub_name, twin=twin, **kwargs) diff --git a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_deleted_event_data.py b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_deleted_event_data.py index 95fbdd3e1cca..92d7e5c9c67f 100644 --- a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_deleted_event_data.py +++ b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_deleted_event_data.py @@ -23,21 +23,14 @@ class IotHubDeviceDeletedEventData(DeviceLifeCycleEventProperties): :param hub_name: Name of the IoT Hub where the device was created or deleted. :type hub_name: str - :param op_type: The event type specified for this operation by the IoT - Hub. - :type op_type: str - :param operation_timestamp: The ISO8601 timestamp of the operation. - :type operation_timestamp: str :param twin: Information about the device twin, which is the cloud - represenation of application device metadata. + representation of application device metadata. :type twin: ~azure.eventgrid.models.DeviceTwinInfo """ _attribute_map = { 'device_id': {'key': 'deviceId', 'type': 'str'}, 'hub_name': {'key': 'hubName', 'type': 'str'}, - 'op_type': {'key': 'opType', 'type': 'str'}, - 'operation_timestamp': {'key': 'operationTimestamp', 'type': 'str'}, 'twin': {'key': 'twin', 'type': 'DeviceTwinInfo'}, } diff --git a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_deleted_event_data_py3.py b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_deleted_event_data_py3.py index a090981744a5..635003d7176c 100644 --- a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_deleted_event_data_py3.py +++ b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_deleted_event_data_py3.py @@ -23,23 +23,16 @@ class IotHubDeviceDeletedEventData(DeviceLifeCycleEventProperties): :param hub_name: Name of the IoT Hub where the device was created or deleted. :type hub_name: str - :param op_type: The event type specified for this operation by the IoT - Hub. - :type op_type: str - :param operation_timestamp: The ISO8601 timestamp of the operation. - :type operation_timestamp: str :param twin: Information about the device twin, which is the cloud - represenation of application device metadata. + representation of application device metadata. :type twin: ~azure.eventgrid.models.DeviceTwinInfo """ _attribute_map = { 'device_id': {'key': 'deviceId', 'type': 'str'}, 'hub_name': {'key': 'hubName', 'type': 'str'}, - 'op_type': {'key': 'opType', 'type': 'str'}, - 'operation_timestamp': {'key': 'operationTimestamp', 'type': 'str'}, 'twin': {'key': 'twin', 'type': 'DeviceTwinInfo'}, } - def __init__(self, *, device_id: str=None, hub_name: str=None, op_type: str=None, operation_timestamp: str=None, twin=None, **kwargs) -> None: - super(IotHubDeviceDeletedEventData, self).__init__(device_id=device_id, hub_name=hub_name, op_type=op_type, operation_timestamp=operation_timestamp, twin=twin, **kwargs) + def __init__(self, *, device_id: str=None, hub_name: str=None, twin=None, **kwargs) -> None: + super(IotHubDeviceDeletedEventData, self).__init__(device_id=device_id, hub_name=hub_name, twin=twin, **kwargs) diff --git a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_disconnected_event_data.py b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_disconnected_event_data.py new file mode 100644 index 000000000000..0de85a3a601f --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_disconnected_event_data.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .device_connection_state_event_properties import DeviceConnectionStateEventProperties + + +class IotHubDeviceDisconnectedEventData(DeviceConnectionStateEventProperties): + """Event data for Microsoft.Devices.DeviceDisconnected event. + + :param device_id: The unique identifier of the device. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type device_id: str + :param module_id: The unique identifier of the module. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type module_id: str + :param hub_name: Name of the IoT Hub where the device was created or + deleted. + :type hub_name: str + :param device_connection_state_event_info: Information about the device + connection state event. + :type device_connection_state_event_info: + ~azure.eventgrid.models.DeviceConnectionStateEventInfo + """ + + _attribute_map = { + 'device_id': {'key': 'deviceId', 'type': 'str'}, + 'module_id': {'key': 'moduleId', 'type': 'str'}, + 'hub_name': {'key': 'hubName', 'type': 'str'}, + 'device_connection_state_event_info': {'key': 'deviceConnectionStateEventInfo', 'type': 'DeviceConnectionStateEventInfo'}, + } + + def __init__(self, **kwargs): + super(IotHubDeviceDisconnectedEventData, self).__init__(**kwargs) diff --git a/azure-eventgrid/azure/eventgrid/models/iot_hub_device_disconnected_event_data_py3.py b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_disconnected_event_data_py3.py new file mode 100644 index 000000000000..d340d625e90c --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/iot_hub_device_disconnected_event_data_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .device_connection_state_event_properties_py3 import DeviceConnectionStateEventProperties + + +class IotHubDeviceDisconnectedEventData(DeviceConnectionStateEventProperties): + """Event data for Microsoft.Devices.DeviceDisconnected event. + + :param device_id: The unique identifier of the device. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type device_id: str + :param module_id: The unique identifier of the module. This case-sensitive + string can be up to 128 characters long, and supports ASCII 7-bit + alphanumeric characters plus the following special characters: - : . + % _ + # * ? ! ( ) , = @ ; $ '. + :type module_id: str + :param hub_name: Name of the IoT Hub where the device was created or + deleted. + :type hub_name: str + :param device_connection_state_event_info: Information about the device + connection state event. + :type device_connection_state_event_info: + ~azure.eventgrid.models.DeviceConnectionStateEventInfo + """ + + _attribute_map = { + 'device_id': {'key': 'deviceId', 'type': 'str'}, + 'module_id': {'key': 'moduleId', 'type': 'str'}, + 'hub_name': {'key': 'hubName', 'type': 'str'}, + 'device_connection_state_event_info': {'key': 'deviceConnectionStateEventInfo', 'type': 'DeviceConnectionStateEventInfo'}, + } + + def __init__(self, *, device_id: str=None, module_id: str=None, hub_name: str=None, device_connection_state_event_info=None, **kwargs) -> None: + super(IotHubDeviceDisconnectedEventData, self).__init__(device_id=device_id, module_id=module_id, hub_name=hub_name, device_connection_state_event_info=device_connection_state_event_info, **kwargs) diff --git a/azure-eventgrid/azure/eventgrid/models/resource_action_cancel_data.py b/azure-eventgrid/azure/eventgrid/models/resource_action_cancel_data.py new file mode 100644 index 000000000000..3a01e07bbf84 --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/resource_action_cancel_data.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceActionCancelData(Model): + """Schema of the Data property of an EventGridEvent for an + Microsoft.Resources.ResourceActionCancel event. This is raised when a + resource action operation is canceled. + + :param tenant_id: The tenant ID of the resource. + :type tenant_id: str + :param subscription_id: The subscription ID of the resource. + :type subscription_id: str + :param resource_group: The resource group of the resource. + :type resource_group: str + :param resource_provider: The resource provider performing the operation. + :type resource_provider: str + :param resource_uri: The URI of the resource in the operation. + :type resource_uri: str + :param operation_name: The operation that was performed. + :type operation_name: str + :param status: The status of the operation. + :type status: str + :param authorization: The requested authorization for the operation. + :type authorization: str + :param claims: The properties of the claims. + :type claims: str + :param correlation_id: An operation ID used for troubleshooting. + :type correlation_id: str + :param http_request: The details of the operation. + :type http_request: str + """ + + _attribute_map = { + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'resource_group': {'key': 'resourceGroup', 'type': 'str'}, + 'resource_provider': {'key': 'resourceProvider', 'type': 'str'}, + 'resource_uri': {'key': 'resourceUri', 'type': 'str'}, + 'operation_name': {'key': 'operationName', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'authorization': {'key': 'authorization', 'type': 'str'}, + 'claims': {'key': 'claims', 'type': 'str'}, + 'correlation_id': {'key': 'correlationId', 'type': 'str'}, + 'http_request': {'key': 'httpRequest', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceActionCancelData, self).__init__(**kwargs) + self.tenant_id = kwargs.get('tenant_id', None) + self.subscription_id = kwargs.get('subscription_id', None) + self.resource_group = kwargs.get('resource_group', None) + self.resource_provider = kwargs.get('resource_provider', None) + self.resource_uri = kwargs.get('resource_uri', None) + self.operation_name = kwargs.get('operation_name', None) + self.status = kwargs.get('status', None) + self.authorization = kwargs.get('authorization', None) + self.claims = kwargs.get('claims', None) + self.correlation_id = kwargs.get('correlation_id', None) + self.http_request = kwargs.get('http_request', None) diff --git a/azure-eventgrid/azure/eventgrid/models/resource_action_cancel_data_py3.py b/azure-eventgrid/azure/eventgrid/models/resource_action_cancel_data_py3.py new file mode 100644 index 000000000000..7999e471f542 --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/resource_action_cancel_data_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceActionCancelData(Model): + """Schema of the Data property of an EventGridEvent for an + Microsoft.Resources.ResourceActionCancel event. This is raised when a + resource action operation is canceled. + + :param tenant_id: The tenant ID of the resource. + :type tenant_id: str + :param subscription_id: The subscription ID of the resource. + :type subscription_id: str + :param resource_group: The resource group of the resource. + :type resource_group: str + :param resource_provider: The resource provider performing the operation. + :type resource_provider: str + :param resource_uri: The URI of the resource in the operation. + :type resource_uri: str + :param operation_name: The operation that was performed. + :type operation_name: str + :param status: The status of the operation. + :type status: str + :param authorization: The requested authorization for the operation. + :type authorization: str + :param claims: The properties of the claims. + :type claims: str + :param correlation_id: An operation ID used for troubleshooting. + :type correlation_id: str + :param http_request: The details of the operation. + :type http_request: str + """ + + _attribute_map = { + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'resource_group': {'key': 'resourceGroup', 'type': 'str'}, + 'resource_provider': {'key': 'resourceProvider', 'type': 'str'}, + 'resource_uri': {'key': 'resourceUri', 'type': 'str'}, + 'operation_name': {'key': 'operationName', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'authorization': {'key': 'authorization', 'type': 'str'}, + 'claims': {'key': 'claims', 'type': 'str'}, + 'correlation_id': {'key': 'correlationId', 'type': 'str'}, + 'http_request': {'key': 'httpRequest', 'type': 'str'}, + } + + def __init__(self, *, tenant_id: str=None, subscription_id: str=None, resource_group: str=None, resource_provider: str=None, resource_uri: str=None, operation_name: str=None, status: str=None, authorization: str=None, claims: str=None, correlation_id: str=None, http_request: str=None, **kwargs) -> None: + super(ResourceActionCancelData, self).__init__(**kwargs) + self.tenant_id = tenant_id + self.subscription_id = subscription_id + self.resource_group = resource_group + self.resource_provider = resource_provider + self.resource_uri = resource_uri + self.operation_name = operation_name + self.status = status + self.authorization = authorization + self.claims = claims + self.correlation_id = correlation_id + self.http_request = http_request diff --git a/azure-eventgrid/azure/eventgrid/models/resource_action_failure_data.py b/azure-eventgrid/azure/eventgrid/models/resource_action_failure_data.py new file mode 100644 index 000000000000..bb3225665c81 --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/resource_action_failure_data.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceActionFailureData(Model): + """Schema of the Data property of an EventGridEvent for a + Microsoft.Resources.ResourceActionFailure event. This is raised when a + resource action operation fails. + + :param tenant_id: The tenant ID of the resource. + :type tenant_id: str + :param subscription_id: The subscription ID of the resource. + :type subscription_id: str + :param resource_group: The resource group of the resource. + :type resource_group: str + :param resource_provider: The resource provider performing the operation. + :type resource_provider: str + :param resource_uri: The URI of the resource in the operation. + :type resource_uri: str + :param operation_name: The operation that was performed. + :type operation_name: str + :param status: The status of the operation. + :type status: str + :param authorization: The requested authorization for the operation. + :type authorization: str + :param claims: The properties of the claims. + :type claims: str + :param correlation_id: An operation ID used for troubleshooting. + :type correlation_id: str + :param http_request: The details of the operation. + :type http_request: str + """ + + _attribute_map = { + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'resource_group': {'key': 'resourceGroup', 'type': 'str'}, + 'resource_provider': {'key': 'resourceProvider', 'type': 'str'}, + 'resource_uri': {'key': 'resourceUri', 'type': 'str'}, + 'operation_name': {'key': 'operationName', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'authorization': {'key': 'authorization', 'type': 'str'}, + 'claims': {'key': 'claims', 'type': 'str'}, + 'correlation_id': {'key': 'correlationId', 'type': 'str'}, + 'http_request': {'key': 'httpRequest', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceActionFailureData, self).__init__(**kwargs) + self.tenant_id = kwargs.get('tenant_id', None) + self.subscription_id = kwargs.get('subscription_id', None) + self.resource_group = kwargs.get('resource_group', None) + self.resource_provider = kwargs.get('resource_provider', None) + self.resource_uri = kwargs.get('resource_uri', None) + self.operation_name = kwargs.get('operation_name', None) + self.status = kwargs.get('status', None) + self.authorization = kwargs.get('authorization', None) + self.claims = kwargs.get('claims', None) + self.correlation_id = kwargs.get('correlation_id', None) + self.http_request = kwargs.get('http_request', None) diff --git a/azure-eventgrid/azure/eventgrid/models/resource_action_failure_data_py3.py b/azure-eventgrid/azure/eventgrid/models/resource_action_failure_data_py3.py new file mode 100644 index 000000000000..2c356d0b0340 --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/resource_action_failure_data_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceActionFailureData(Model): + """Schema of the Data property of an EventGridEvent for a + Microsoft.Resources.ResourceActionFailure event. This is raised when a + resource action operation fails. + + :param tenant_id: The tenant ID of the resource. + :type tenant_id: str + :param subscription_id: The subscription ID of the resource. + :type subscription_id: str + :param resource_group: The resource group of the resource. + :type resource_group: str + :param resource_provider: The resource provider performing the operation. + :type resource_provider: str + :param resource_uri: The URI of the resource in the operation. + :type resource_uri: str + :param operation_name: The operation that was performed. + :type operation_name: str + :param status: The status of the operation. + :type status: str + :param authorization: The requested authorization for the operation. + :type authorization: str + :param claims: The properties of the claims. + :type claims: str + :param correlation_id: An operation ID used for troubleshooting. + :type correlation_id: str + :param http_request: The details of the operation. + :type http_request: str + """ + + _attribute_map = { + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'resource_group': {'key': 'resourceGroup', 'type': 'str'}, + 'resource_provider': {'key': 'resourceProvider', 'type': 'str'}, + 'resource_uri': {'key': 'resourceUri', 'type': 'str'}, + 'operation_name': {'key': 'operationName', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'authorization': {'key': 'authorization', 'type': 'str'}, + 'claims': {'key': 'claims', 'type': 'str'}, + 'correlation_id': {'key': 'correlationId', 'type': 'str'}, + 'http_request': {'key': 'httpRequest', 'type': 'str'}, + } + + def __init__(self, *, tenant_id: str=None, subscription_id: str=None, resource_group: str=None, resource_provider: str=None, resource_uri: str=None, operation_name: str=None, status: str=None, authorization: str=None, claims: str=None, correlation_id: str=None, http_request: str=None, **kwargs) -> None: + super(ResourceActionFailureData, self).__init__(**kwargs) + self.tenant_id = tenant_id + self.subscription_id = subscription_id + self.resource_group = resource_group + self.resource_provider = resource_provider + self.resource_uri = resource_uri + self.operation_name = operation_name + self.status = status + self.authorization = authorization + self.claims = claims + self.correlation_id = correlation_id + self.http_request = http_request diff --git a/azure-eventgrid/azure/eventgrid/models/resource_action_success_data.py b/azure-eventgrid/azure/eventgrid/models/resource_action_success_data.py new file mode 100644 index 000000000000..559817f997ca --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/resource_action_success_data.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceActionSuccessData(Model): + """Schema of the Data property of an EventGridEvent for a + Microsoft.Resources.ResourceActionSuccess event. This is raised when a + resource action operation succeeds. + + :param tenant_id: The tenant ID of the resource. + :type tenant_id: str + :param subscription_id: The subscription ID of the resource. + :type subscription_id: str + :param resource_group: The resource group of the resource. + :type resource_group: str + :param resource_provider: The resource provider performing the operation. + :type resource_provider: str + :param resource_uri: The URI of the resource in the operation. + :type resource_uri: str + :param operation_name: The operation that was performed. + :type operation_name: str + :param status: The status of the operation. + :type status: str + :param authorization: The requested authorization for the operation. + :type authorization: str + :param claims: The properties of the claims. + :type claims: str + :param correlation_id: An operation ID used for troubleshooting. + :type correlation_id: str + :param http_request: The details of the operation. + :type http_request: str + """ + + _attribute_map = { + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'resource_group': {'key': 'resourceGroup', 'type': 'str'}, + 'resource_provider': {'key': 'resourceProvider', 'type': 'str'}, + 'resource_uri': {'key': 'resourceUri', 'type': 'str'}, + 'operation_name': {'key': 'operationName', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'authorization': {'key': 'authorization', 'type': 'str'}, + 'claims': {'key': 'claims', 'type': 'str'}, + 'correlation_id': {'key': 'correlationId', 'type': 'str'}, + 'http_request': {'key': 'httpRequest', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceActionSuccessData, self).__init__(**kwargs) + self.tenant_id = kwargs.get('tenant_id', None) + self.subscription_id = kwargs.get('subscription_id', None) + self.resource_group = kwargs.get('resource_group', None) + self.resource_provider = kwargs.get('resource_provider', None) + self.resource_uri = kwargs.get('resource_uri', None) + self.operation_name = kwargs.get('operation_name', None) + self.status = kwargs.get('status', None) + self.authorization = kwargs.get('authorization', None) + self.claims = kwargs.get('claims', None) + self.correlation_id = kwargs.get('correlation_id', None) + self.http_request = kwargs.get('http_request', None) diff --git a/azure-eventgrid/azure/eventgrid/models/resource_action_success_data_py3.py b/azure-eventgrid/azure/eventgrid/models/resource_action_success_data_py3.py new file mode 100644 index 000000000000..59e9f32f46fc --- /dev/null +++ b/azure-eventgrid/azure/eventgrid/models/resource_action_success_data_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceActionSuccessData(Model): + """Schema of the Data property of an EventGridEvent for a + Microsoft.Resources.ResourceActionSuccess event. This is raised when a + resource action operation succeeds. + + :param tenant_id: The tenant ID of the resource. + :type tenant_id: str + :param subscription_id: The subscription ID of the resource. + :type subscription_id: str + :param resource_group: The resource group of the resource. + :type resource_group: str + :param resource_provider: The resource provider performing the operation. + :type resource_provider: str + :param resource_uri: The URI of the resource in the operation. + :type resource_uri: str + :param operation_name: The operation that was performed. + :type operation_name: str + :param status: The status of the operation. + :type status: str + :param authorization: The requested authorization for the operation. + :type authorization: str + :param claims: The properties of the claims. + :type claims: str + :param correlation_id: An operation ID used for troubleshooting. + :type correlation_id: str + :param http_request: The details of the operation. + :type http_request: str + """ + + _attribute_map = { + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'subscription_id': {'key': 'subscriptionId', 'type': 'str'}, + 'resource_group': {'key': 'resourceGroup', 'type': 'str'}, + 'resource_provider': {'key': 'resourceProvider', 'type': 'str'}, + 'resource_uri': {'key': 'resourceUri', 'type': 'str'}, + 'operation_name': {'key': 'operationName', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'authorization': {'key': 'authorization', 'type': 'str'}, + 'claims': {'key': 'claims', 'type': 'str'}, + 'correlation_id': {'key': 'correlationId', 'type': 'str'}, + 'http_request': {'key': 'httpRequest', 'type': 'str'}, + } + + def __init__(self, *, tenant_id: str=None, subscription_id: str=None, resource_group: str=None, resource_provider: str=None, resource_uri: str=None, operation_name: str=None, status: str=None, authorization: str=None, claims: str=None, correlation_id: str=None, http_request: str=None, **kwargs) -> None: + super(ResourceActionSuccessData, self).__init__(**kwargs) + self.tenant_id = tenant_id + self.subscription_id = subscription_id + self.resource_group = resource_group + self.resource_provider = resource_provider + self.resource_uri = resource_uri + self.operation_name = operation_name + self.status = status + self.authorization = authorization + self.claims = claims + self.correlation_id = correlation_id + self.http_request = http_request diff --git a/azure-eventgrid/azure/eventgrid/version.py b/azure-eventgrid/azure/eventgrid/version.py index 24b9de3384da..9c644827672b 100644 --- a/azure-eventgrid/azure/eventgrid/version.py +++ b/azure-eventgrid/azure/eventgrid/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "1.1.0" +VERSION = "1.2.0" diff --git a/azure-eventgrid/azure_bdist_wheel.py b/azure-eventgrid/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-eventgrid/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-eventgrid/sdk_packaging.toml b/azure-eventgrid/sdk_packaging.toml new file mode 100644 index 000000000000..892600b2e61c --- /dev/null +++ b/azure-eventgrid/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-eventgrid" +package_pprint_name = "Event Grid" +package_doc_id = "event-grid" +is_stable = true +is_arm = false diff --git a/azure-eventgrid/setup.cfg b/azure-eventgrid/setup.cfg index 669e94e63df3..3c6e79cf31da 100644 --- a/azure-eventgrid/setup.cfg +++ b/azure-eventgrid/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-nspkg \ No newline at end of file diff --git a/azure-eventgrid/setup.py b/azure-eventgrid/setup.py index 11ca1afdf01e..35c7d8087e6a 100644 --- a/azure-eventgrid/setup.py +++ b/azure-eventgrid/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-eventgrid" @@ -72,13 +66,21 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-nspkg'], + } ) diff --git a/azure-graphrbac/HISTORY.rst b/azure-graphrbac/HISTORY.rst index 6c505577f822..e908df92d90d 100644 --- a/azure-graphrbac/HISTORY.rst +++ b/azure-graphrbac/HISTORY.rst @@ -3,6 +3,87 @@ Release History =============== +0.52.0 (2018-10-29) ++++++++++++++++++++ + +**Bugfix** + +- Add missing required_resource_access in Application + +0.51.1 (2018-10-16) ++++++++++++++++++++ + +**Bugfix** + +- Fix sdist broken in 0.50.0 and 0.51.0. No code change. + +0.51.0 (2018-10-11) ++++++++++++++++++++ + +**Features** + +- Add delete group/application owner + +0.50.0 (2018-10-10) ++++++++++++++++++++ + +**Features** + +- signed_in_user.get : Return the currently logged-in User object +- signed_in_user.list_owned_objects : All objects owned by current user +- deleted_applications.restore : Restore an application deleted in the last 30 days +- deleted_applications.list : List all applications deleted in the last 30 days +- deleted_applications.hard_delete : Delete for real an application in the deleted list +- groups.list_owners : List owner of the group +- groups.add_owner : Add owner to this group +- Application and ServicePrincipals have now the attribute "app_roles" which is a list of AppRole class. To implement this. +- Client class can be used as a context manager to keep the underlying HTTP session open for performance +- Model ADGroup has a attributes mail_enabled and mail_nickname +- Model KeyCredential has a new atrribute custom_key_identifier +- Added operation group oauth2_operations (operations "get" and "grant") + +**Bug fixes** + +- Fix applications.list_owners access to next page +- Fix service_principal.list_owners access to next page + +**Breaking changes** + +- ApplicationAddOwnerParameters has been renamed AddOwnerParameters +- objects.get_current_user has been removed. Use signed_in_user.get instead. The main difference is this new method returns a DirectoryObjectList, where every elements could be sub-type of DirectoryObject (User, Group, etc.) +- objects.get_objects_by_object_ids now returns a DirectoryObjectList, where every element could be sub-type of DirectoryObject (User, Group, etc.) +- GetObjectsParameters.include_directory_object_references is no longer required. +- Groups.get_members now returns a DirectoryObjectList, where every element could be sub-type of DirectoryObject (User, Group, etc.) + +**General Breaking changes** + +This version uses a next-generation code generator that *might* introduce breaking changes. + +- Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments. + To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments. +- Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered. + While this is not a breaking change, the distinctions are important, and are documented here: + https://docs.python.org/3/library/enum.html#others + At a glance: + + - "is" should not be used at all. + - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered. + +- New Long Running Operation: + + - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same. + - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used. + - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, + without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`. + - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`, + the response of the initial call will be returned without polling. + - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`. + - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away. + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + 0.40.0 (2018-02-05) +++++++++++++++++++ diff --git a/azure-graphrbac/MANIFEST.in b/azure-graphrbac/MANIFEST.in index 9ecaeb15de50..73ef117329e5 100644 --- a/azure-graphrbac/MANIFEST.in +++ b/azure-graphrbac/MANIFEST.in @@ -1,2 +1,3 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py + diff --git a/azure-graphrbac/README.rst b/azure-graphrbac/README.rst index 53909d4c5595..378e69472679 100644 --- a/azure-graphrbac/README.rst +++ b/azure-graphrbac/README.rst @@ -3,13 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Graph RBAC Client Library. -Azure Resource Manager (ARM) is the next generation of management APIs that -replace the old Azure Service Management (ASM). - -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. - -For the older Azure Service Management (ASM) libraries, see -`azure-servicemanagement-legacy `__ library. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -36,7 +30,7 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `GraphRBAC +For code examples, see `Graph RBAC `__ on docs.microsoft.com. diff --git a/azure-graphrbac/azure/__init__.py b/azure-graphrbac/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-graphrbac/azure/__init__.py +++ b/azure-graphrbac/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-graphrbac/azure/graphrbac/graph_rbac_management_client.py b/azure-graphrbac/azure/graphrbac/graph_rbac_management_client.py index 02faf9b63169..f117db210db6 100644 --- a/azure-graphrbac/azure/graphrbac/graph_rbac_management_client.py +++ b/azure-graphrbac/azure/graphrbac/graph_rbac_management_client.py @@ -9,16 +9,19 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.service_client import ServiceClient +from msrest.service_client import SDKClient from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION -from .operations.objects_operations import ObjectsOperations +from .operations.signed_in_user_operations import SignedInUserOperations from .operations.applications_operations import ApplicationsOperations +from .operations.deleted_applications_operations import DeletedApplicationsOperations from .operations.groups_operations import GroupsOperations from .operations.service_principals_operations import ServicePrincipalsOperations from .operations.users_operations import UsersOperations +from .operations.objects_operations import ObjectsOperations from .operations.domains_operations import DomainsOperations +from .operations.oauth2_operations import OAuth2Operations from . import models @@ -54,24 +57,30 @@ def __init__( self.tenant_id = tenant_id -class GraphRbacManagementClient(object): +class GraphRbacManagementClient(SDKClient): """The Graph RBAC Management Client :ivar config: Configuration for client. :vartype config: GraphRbacManagementClientConfiguration - :ivar objects: Objects operations - :vartype objects: azure.graphrbac.operations.ObjectsOperations + :ivar signed_in_user: SignedInUser operations + :vartype signed_in_user: azure.graphrbac.operations.SignedInUserOperations :ivar applications: Applications operations :vartype applications: azure.graphrbac.operations.ApplicationsOperations + :ivar deleted_applications: DeletedApplications operations + :vartype deleted_applications: azure.graphrbac.operations.DeletedApplicationsOperations :ivar groups: Groups operations :vartype groups: azure.graphrbac.operations.GroupsOperations :ivar service_principals: ServicePrincipals operations :vartype service_principals: azure.graphrbac.operations.ServicePrincipalsOperations :ivar users: Users operations :vartype users: azure.graphrbac.operations.UsersOperations + :ivar objects: Objects operations + :vartype objects: azure.graphrbac.operations.ObjectsOperations :ivar domains: Domains operations :vartype domains: azure.graphrbac.operations.DomainsOperations + :ivar oauth2: OAuth2 operations + :vartype oauth2: azure.graphrbac.operations.OAuth2Operations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -85,22 +94,28 @@ def __init__( self, credentials, tenant_id, base_url=None): self.config = GraphRbacManagementClientConfiguration(credentials, tenant_id, base_url) - self._client = ServiceClient(self.config.credentials, self.config) + super(GraphRbacManagementClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} self.api_version = '1.6' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) - self.objects = ObjectsOperations( + self.signed_in_user = SignedInUserOperations( self._client, self.config, self._serialize, self._deserialize) self.applications = ApplicationsOperations( self._client, self.config, self._serialize, self._deserialize) + self.deleted_applications = DeletedApplicationsOperations( + self._client, self.config, self._serialize, self._deserialize) self.groups = GroupsOperations( self._client, self.config, self._serialize, self._deserialize) self.service_principals = ServicePrincipalsOperations( self._client, self.config, self._serialize, self._deserialize) self.users = UsersOperations( self._client, self.config, self._serialize, self._deserialize) + self.objects = ObjectsOperations( + self._client, self.config, self._serialize, self._deserialize) self.domains = DomainsOperations( self._client, self.config, self._serialize, self._deserialize) + self.oauth2 = OAuth2Operations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-graphrbac/azure/graphrbac/models/__init__.py b/azure-graphrbac/azure/graphrbac/models/__init__.py index caea550daabe..0708935493f8 100644 --- a/azure-graphrbac/azure/graphrbac/models/__init__.py +++ b/azure-graphrbac/azure/graphrbac/models/__init__.py @@ -9,39 +9,74 @@ # regenerated. # -------------------------------------------------------------------------- -from .graph_error import GraphError, GraphErrorException -from .directory_object import DirectoryObject -from .key_credential import KeyCredential -from .password_credential import PasswordCredential -from .resource_access import ResourceAccess -from .required_resource_access import RequiredResourceAccess -from .application_create_parameters import ApplicationCreateParameters -from .application_update_parameters import ApplicationUpdateParameters -from .application import Application -from .application_add_owner_parameters import ApplicationAddOwnerParameters -from .key_credentials_update_parameters import KeyCredentialsUpdateParameters -from .password_credentials_update_parameters import PasswordCredentialsUpdateParameters -from .aad_object import AADObject -from .group_add_member_parameters import GroupAddMemberParameters -from .group_create_parameters import GroupCreateParameters -from .ad_group import ADGroup -from .group_get_member_groups_parameters import GroupGetMemberGroupsParameters -from .check_group_membership_parameters import CheckGroupMembershipParameters -from .check_group_membership_result import CheckGroupMembershipResult -from .service_principal_create_parameters import ServicePrincipalCreateParameters -from .service_principal import ServicePrincipal -from .password_profile import PasswordProfile -from .user_base import UserBase -from .user_create_parameters import UserCreateParameters -from .user_update_parameters import UserUpdateParameters -from .sign_in_name import SignInName -from .user import User -from .user_get_member_groups_parameters import UserGetMemberGroupsParameters -from .get_objects_parameters import GetObjectsParameters -from .domain import Domain -from .aad_object_paged import AADObjectPaged -from .application_paged import ApplicationPaged +try: + from .graph_error_py3 import GraphError, GraphErrorException + from .directory_object_py3 import DirectoryObject + from .key_credential_py3 import KeyCredential + from .password_credential_py3 import PasswordCredential + from .resource_access_py3 import ResourceAccess + from .required_resource_access_py3 import RequiredResourceAccess + from .app_role_py3 import AppRole + from .application_create_parameters_py3 import ApplicationCreateParameters + from .application_update_parameters_py3 import ApplicationUpdateParameters + from .application_py3 import Application + from .add_owner_parameters_py3 import AddOwnerParameters + from .key_credentials_update_parameters_py3 import KeyCredentialsUpdateParameters + from .password_credentials_update_parameters_py3 import PasswordCredentialsUpdateParameters + from .group_add_member_parameters_py3 import GroupAddMemberParameters + from .group_create_parameters_py3 import GroupCreateParameters + from .ad_group_py3 import ADGroup + from .group_get_member_groups_parameters_py3 import GroupGetMemberGroupsParameters + from .check_group_membership_parameters_py3 import CheckGroupMembershipParameters + from .check_group_membership_result_py3 import CheckGroupMembershipResult + from .service_principal_create_parameters_py3 import ServicePrincipalCreateParameters + from .service_principal_update_parameters_py3 import ServicePrincipalUpdateParameters + from .service_principal_py3 import ServicePrincipal + from .password_profile_py3 import PasswordProfile + from .user_base_py3 import UserBase + from .user_create_parameters_py3 import UserCreateParameters + from .user_update_parameters_py3 import UserUpdateParameters + from .sign_in_name_py3 import SignInName + from .user_py3 import User + from .user_get_member_groups_parameters_py3 import UserGetMemberGroupsParameters + from .get_objects_parameters_py3 import GetObjectsParameters + from .domain_py3 import Domain + from .permissions_py3 import Permissions +except (SyntaxError, ImportError): + from .graph_error import GraphError, GraphErrorException + from .directory_object import DirectoryObject + from .key_credential import KeyCredential + from .password_credential import PasswordCredential + from .resource_access import ResourceAccess + from .required_resource_access import RequiredResourceAccess + from .app_role import AppRole + from .application_create_parameters import ApplicationCreateParameters + from .application_update_parameters import ApplicationUpdateParameters + from .application import Application + from .add_owner_parameters import AddOwnerParameters + from .key_credentials_update_parameters import KeyCredentialsUpdateParameters + from .password_credentials_update_parameters import PasswordCredentialsUpdateParameters + from .group_add_member_parameters import GroupAddMemberParameters + from .group_create_parameters import GroupCreateParameters + from .ad_group import ADGroup + from .group_get_member_groups_parameters import GroupGetMemberGroupsParameters + from .check_group_membership_parameters import CheckGroupMembershipParameters + from .check_group_membership_result import CheckGroupMembershipResult + from .service_principal_create_parameters import ServicePrincipalCreateParameters + from .service_principal_update_parameters import ServicePrincipalUpdateParameters + from .service_principal import ServicePrincipal + from .password_profile import PasswordProfile + from .user_base import UserBase + from .user_create_parameters import UserCreateParameters + from .user_update_parameters import UserUpdateParameters + from .sign_in_name import SignInName + from .user import User + from .user_get_member_groups_parameters import UserGetMemberGroupsParameters + from .get_objects_parameters import GetObjectsParameters + from .domain import Domain + from .permissions import Permissions from .directory_object_paged import DirectoryObjectPaged +from .application_paged import ApplicationPaged from .key_credential_paged import KeyCredentialPaged from .password_credential_paged import PasswordCredentialPaged from .ad_group_paged import ADGroupPaged @@ -60,13 +95,13 @@ 'PasswordCredential', 'ResourceAccess', 'RequiredResourceAccess', + 'AppRole', 'ApplicationCreateParameters', 'ApplicationUpdateParameters', 'Application', - 'ApplicationAddOwnerParameters', + 'AddOwnerParameters', 'KeyCredentialsUpdateParameters', 'PasswordCredentialsUpdateParameters', - 'AADObject', 'GroupAddMemberParameters', 'GroupCreateParameters', 'ADGroup', @@ -74,6 +109,7 @@ 'CheckGroupMembershipParameters', 'CheckGroupMembershipResult', 'ServicePrincipalCreateParameters', + 'ServicePrincipalUpdateParameters', 'ServicePrincipal', 'PasswordProfile', 'UserBase', @@ -84,9 +120,9 @@ 'UserGetMemberGroupsParameters', 'GetObjectsParameters', 'Domain', - 'AADObjectPaged', - 'ApplicationPaged', + 'Permissions', 'DirectoryObjectPaged', + 'ApplicationPaged', 'KeyCredentialPaged', 'PasswordCredentialPaged', 'ADGroupPaged', diff --git a/azure-graphrbac/azure/graphrbac/models/aad_object.py b/azure-graphrbac/azure/graphrbac/models/aad_object.py deleted file mode 100644 index 88c08b0c6f15..000000000000 --- a/azure-graphrbac/azure/graphrbac/models/aad_object.py +++ /dev/null @@ -1,120 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AADObject(Model): - """The properties of an Active Directory object. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param additional_properties: Unmatched properties from the message are - deserialized this collection - :type additional_properties: dict[str, object] - :param object_id: The ID of the object. - :type object_id: str - :param object_type: The type of AAD object. - :type object_type: str - :param display_name: The display name of the object. - :type display_name: str - :param user_principal_name: The principal name of the object. - :type user_principal_name: str - :param mail: The primary email address of the object. - :type mail: str - :param mail_enabled: Whether the AAD object is mail-enabled. - :type mail_enabled: bool - :ivar mail_nickname: The mail alias for the user. - :vartype mail_nickname: str - :param security_enabled: Whether the AAD object is security-enabled. - :type security_enabled: bool - :param sign_in_name: The sign-in name of the object. - :type sign_in_name: str - :param service_principal_names: A collection of service principal names - associated with the object. - :type service_principal_names: list[str] - :param user_type: The user type of the object. - :type user_type: str - :ivar usage_location: A two letter country code (ISO standard 3166). - Required for users that will be assigned licenses due to legal requirement - to check for availability of services in countries. Examples include: - "US", "JP", and "GB". - :vartype usage_location: str - :ivar app_id: The application ID. - :vartype app_id: str - :ivar app_permissions: The application permissions. - :vartype app_permissions: list[str] - :ivar available_to_other_tenants: Whether the application is be available - to other tenants. - :vartype available_to_other_tenants: bool - :ivar identifier_uris: A collection of URIs for the application. - :vartype identifier_uris: list[str] - :ivar reply_urls: A collection of reply URLs for the application. - :vartype reply_urls: list[str] - :ivar homepage: The home page of the application. - :vartype homepage: str - """ - - _validation = { - 'mail_nickname': {'readonly': True}, - 'usage_location': {'readonly': True}, - 'app_id': {'readonly': True}, - 'app_permissions': {'readonly': True}, - 'available_to_other_tenants': {'readonly': True}, - 'identifier_uris': {'readonly': True}, - 'reply_urls': {'readonly': True}, - 'homepage': {'readonly': True}, - } - - _attribute_map = { - 'additional_properties': {'key': '', 'type': '{object}'}, - 'object_id': {'key': 'objectId', 'type': 'str'}, - 'object_type': {'key': 'objectType', 'type': 'str'}, - 'display_name': {'key': 'displayName', 'type': 'str'}, - 'user_principal_name': {'key': 'userPrincipalName', 'type': 'str'}, - 'mail': {'key': 'mail', 'type': 'str'}, - 'mail_enabled': {'key': 'mailEnabled', 'type': 'bool'}, - 'mail_nickname': {'key': 'mailNickname', 'type': 'str'}, - 'security_enabled': {'key': 'securityEnabled', 'type': 'bool'}, - 'sign_in_name': {'key': 'signInName', 'type': 'str'}, - 'service_principal_names': {'key': 'servicePrincipalNames', 'type': '[str]'}, - 'user_type': {'key': 'userType', 'type': 'str'}, - 'usage_location': {'key': 'usageLocation', 'type': 'str'}, - 'app_id': {'key': 'appId', 'type': 'str'}, - 'app_permissions': {'key': 'appPermissions', 'type': '[str]'}, - 'available_to_other_tenants': {'key': 'availableToOtherTenants', 'type': 'bool'}, - 'identifier_uris': {'key': 'identifierUris', 'type': '[str]'}, - 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, - 'homepage': {'key': 'homepage', 'type': 'str'}, - } - - def __init__(self, additional_properties=None, object_id=None, object_type=None, display_name=None, user_principal_name=None, mail=None, mail_enabled=None, security_enabled=None, sign_in_name=None, service_principal_names=None, user_type=None): - super(AADObject, self).__init__() - self.additional_properties = additional_properties - self.object_id = object_id - self.object_type = object_type - self.display_name = display_name - self.user_principal_name = user_principal_name - self.mail = mail - self.mail_enabled = mail_enabled - self.mail_nickname = None - self.security_enabled = security_enabled - self.sign_in_name = sign_in_name - self.service_principal_names = service_principal_names - self.user_type = user_type - self.usage_location = None - self.app_id = None - self.app_permissions = None - self.available_to_other_tenants = None - self.identifier_uris = None - self.reply_urls = None - self.homepage = None diff --git a/azure-graphrbac/azure/graphrbac/models/aad_object_paged.py b/azure-graphrbac/azure/graphrbac/models/aad_object_paged.py deleted file mode 100644 index 2e67f8f64fac..000000000000 --- a/azure-graphrbac/azure/graphrbac/models/aad_object_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class AADObjectPaged(Paged): - """ - A paging container for iterating over a list of :class:`AADObject ` object - """ - - _attribute_map = { - 'next_link': {'key': 'odata\\.nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[AADObject]'} - } - - def __init__(self, *args, **kwargs): - - super(AADObjectPaged, self).__init__(*args, **kwargs) diff --git a/azure-graphrbac/azure/graphrbac/models/ad_group.py b/azure-graphrbac/azure/graphrbac/models/ad_group.py index 57f69c6002c9..b5eca7ec4089 100644 --- a/azure-graphrbac/azure/graphrbac/models/ad_group.py +++ b/azure-graphrbac/azure/graphrbac/models/ad_group.py @@ -18,6 +18,8 @@ class ADGroup(DirectoryObject): 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 additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -26,10 +28,16 @@ class ADGroup(DirectoryObject): :ivar deletion_timestamp: The time at which the directory object was deleted. :vartype deletion_timestamp: datetime - :param object_type: Constant filled by server. + :param object_type: Required. Constant filled by server. :type object_type: str :param display_name: The display name of the group. :type display_name: str + :param mail_enabled: Whether the group is mail-enabled. Must be false. + This is because only pure security groups can be created using the Graph + API. + :type mail_enabled: bool + :param mail_nickname: The mail alias for the group. + :type mail_nickname: str :param security_enabled: Whether the group is security-enable. :type security_enabled: bool :param mail: The primary email address of the group. @@ -48,13 +56,17 @@ class ADGroup(DirectoryObject): 'deletion_timestamp': {'key': 'deletionTimestamp', 'type': 'iso-8601'}, 'object_type': {'key': 'objectType', 'type': 'str'}, 'display_name': {'key': 'displayName', 'type': 'str'}, + 'mail_enabled': {'key': 'mailEnabled', 'type': 'bool'}, + 'mail_nickname': {'key': 'mailNickname', 'type': 'str'}, 'security_enabled': {'key': 'securityEnabled', 'type': 'bool'}, 'mail': {'key': 'mail', 'type': 'str'}, } - def __init__(self, additional_properties=None, display_name=None, security_enabled=None, mail=None): - super(ADGroup, self).__init__(additional_properties=additional_properties) - self.display_name = display_name - self.security_enabled = security_enabled - self.mail = mail + def __init__(self, **kwargs): + super(ADGroup, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.mail_enabled = kwargs.get('mail_enabled', None) + self.mail_nickname = kwargs.get('mail_nickname', None) + self.security_enabled = kwargs.get('security_enabled', None) + self.mail = kwargs.get('mail', None) self.object_type = 'Group' diff --git a/azure-graphrbac/azure/graphrbac/models/ad_group_py3.py b/azure-graphrbac/azure/graphrbac/models/ad_group_py3.py new file mode 100644 index 000000000000..212d69cb1fc2 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/ad_group_py3.py @@ -0,0 +1,72 @@ +# 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 .directory_object_py3 import DirectoryObject + + +class ADGroup(DirectoryObject): + """Active Directory group information. + + 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 additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar object_id: The object ID. + :vartype object_id: str + :ivar deletion_timestamp: The time at which the directory object was + deleted. + :vartype deletion_timestamp: datetime + :param object_type: Required. Constant filled by server. + :type object_type: str + :param display_name: The display name of the group. + :type display_name: str + :param mail_enabled: Whether the group is mail-enabled. Must be false. + This is because only pure security groups can be created using the Graph + API. + :type mail_enabled: bool + :param mail_nickname: The mail alias for the group. + :type mail_nickname: str + :param security_enabled: Whether the group is security-enable. + :type security_enabled: bool + :param mail: The primary email address of the group. + :type mail: str + """ + + _validation = { + 'object_id': {'readonly': True}, + 'deletion_timestamp': {'readonly': True}, + 'object_type': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + 'deletion_timestamp': {'key': 'deletionTimestamp', 'type': 'iso-8601'}, + 'object_type': {'key': 'objectType', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'mail_enabled': {'key': 'mailEnabled', 'type': 'bool'}, + 'mail_nickname': {'key': 'mailNickname', 'type': 'str'}, + 'security_enabled': {'key': 'securityEnabled', 'type': 'bool'}, + 'mail': {'key': 'mail', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, display_name: str=None, mail_enabled: bool=None, mail_nickname: str=None, security_enabled: bool=None, mail: str=None, **kwargs) -> None: + super(ADGroup, self).__init__(additional_properties=additional_properties, **kwargs) + self.display_name = display_name + self.mail_enabled = mail_enabled + self.mail_nickname = mail_nickname + self.security_enabled = security_enabled + self.mail = mail + self.object_type = 'Group' diff --git a/azure-graphrbac/azure/graphrbac/models/add_owner_parameters.py b/azure-graphrbac/azure/graphrbac/models/add_owner_parameters.py new file mode 100644 index 000000000000..c7dfa3a68db9 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/add_owner_parameters.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AddOwnerParameters(Model): + """Request parameters for adding a owner to an application. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param url: Required. A owner object URL, such as + "https://graph.windows.net/0b1f9851-1bf0-433f-aec3-cb9272f093dc/directoryObjects/f260bbc4-c254-447b-94cf-293b5ec434dd", + where "0b1f9851-1bf0-433f-aec3-cb9272f093dc" is the tenantId and + "f260bbc4-c254-447b-94cf-293b5ec434dd" is the objectId of the owner (user, + application, servicePrincipal, group) to be added. + :type url: str + """ + + _validation = { + 'url': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'url': {'key': 'url', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AddOwnerParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.url = kwargs.get('url', None) diff --git a/azure-graphrbac/azure/graphrbac/models/add_owner_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/add_owner_parameters_py3.py new file mode 100644 index 000000000000..1d2f474d42bb --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/add_owner_parameters_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AddOwnerParameters(Model): + """Request parameters for adding a owner to an application. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param url: Required. A owner object URL, such as + "https://graph.windows.net/0b1f9851-1bf0-433f-aec3-cb9272f093dc/directoryObjects/f260bbc4-c254-447b-94cf-293b5ec434dd", + where "0b1f9851-1bf0-433f-aec3-cb9272f093dc" is the tenantId and + "f260bbc4-c254-447b-94cf-293b5ec434dd" is the objectId of the owner (user, + application, servicePrincipal, group) to be added. + :type url: str + """ + + _validation = { + 'url': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'url': {'key': 'url', 'type': 'str'}, + } + + def __init__(self, *, url: str, additional_properties=None, **kwargs) -> None: + super(AddOwnerParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.url = url diff --git a/azure-graphrbac/azure/graphrbac/models/app_role.py b/azure-graphrbac/azure/graphrbac/models/app_role.py new file mode 100644 index 000000000000..174984015873 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/app_role.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AppRole(Model): + """AppRole. + + :param id: Unique role identifier inside the appRoles collection. + :type id: str + :param allowed_member_types: Specifies whether this app role definition + can be assigned to users and groups by setting to 'User', or to other + applications (that are accessing this application in daemon service + scenarios) by setting to 'Application', or to both. + :type allowed_member_types: list[str] + :param description: Permission help text that appears in the admin app + assignment and consent experiences. + :type description: str + :param display_name: Display name for the permission that appears in the + admin consent and app assignment experiences. + :type display_name: str + :param is_enabled: When creating or updating a role definition, this must + be set to true (which is the default). To delete a role, this must first + be set to false. At that point, in a subsequent call, this role may be + removed. + :type is_enabled: bool + :param value: Specifies the value of the roles claim that the application + should expect in the authentication and access tokens. + :type value: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allowed_member_types': {'key': 'allowedMemberTypes', 'type': '[str]'}, + 'description': {'key': 'description', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AppRole, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.allowed_member_types = kwargs.get('allowed_member_types', None) + self.description = kwargs.get('description', None) + self.display_name = kwargs.get('display_name', None) + self.is_enabled = kwargs.get('is_enabled', None) + self.value = kwargs.get('value', None) diff --git a/azure-graphrbac/azure/graphrbac/models/app_role_py3.py b/azure-graphrbac/azure/graphrbac/models/app_role_py3.py new file mode 100644 index 000000000000..0292e877b7f5 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/app_role_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AppRole(Model): + """AppRole. + + :param id: Unique role identifier inside the appRoles collection. + :type id: str + :param allowed_member_types: Specifies whether this app role definition + can be assigned to users and groups by setting to 'User', or to other + applications (that are accessing this application in daemon service + scenarios) by setting to 'Application', or to both. + :type allowed_member_types: list[str] + :param description: Permission help text that appears in the admin app + assignment and consent experiences. + :type description: str + :param display_name: Display name for the permission that appears in the + admin consent and app assignment experiences. + :type display_name: str + :param is_enabled: When creating or updating a role definition, this must + be set to true (which is the default). To delete a role, this must first + be set to false. At that point, in a subsequent call, this role may be + removed. + :type is_enabled: bool + :param value: Specifies the value of the roles claim that the application + should expect in the authentication and access tokens. + :type value: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allowed_member_types': {'key': 'allowedMemberTypes', 'type': '[str]'}, + 'description': {'key': 'description', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, allowed_member_types=None, description: str=None, display_name: str=None, is_enabled: bool=None, value: str=None, **kwargs) -> None: + super(AppRole, self).__init__(**kwargs) + self.id = id + self.allowed_member_types = allowed_member_types + self.description = description + self.display_name = display_name + self.is_enabled = is_enabled + self.value = value diff --git a/azure-graphrbac/azure/graphrbac/models/application.py b/azure-graphrbac/azure/graphrbac/models/application.py index d19afa746795..694eaa66deac 100644 --- a/azure-graphrbac/azure/graphrbac/models/application.py +++ b/azure-graphrbac/azure/graphrbac/models/application.py @@ -18,6 +18,8 @@ class Application(DirectoryObject): 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 additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -26,10 +28,14 @@ class Application(DirectoryObject): :ivar deletion_timestamp: The time at which the directory object was deleted. :vartype deletion_timestamp: datetime - :param object_type: Constant filled by server. + :param object_type: Required. Constant filled by server. :type object_type: str :param app_id: The application ID. :type app_id: str + :param app_roles: The collection of application roles that an application + may declare. These roles can be assigned to users, groups or service + principals. + :type app_roles: list[~azure.graphrbac.models.AppRole] :param app_permissions: The application permissions. :type app_permissions: list[str] :param available_to_other_tenants: Whether the application is be available @@ -46,6 +52,12 @@ class Application(DirectoryObject): :param oauth2_allow_implicit_flow: Whether to allow implicit grant flow for OAuth2 :type oauth2_allow_implicit_flow: bool + :param required_resource_access: Specifies resources that this application + requires access to and the set of OAuth permission scopes and application + roles that it needs under each of those resources. This pre-configuration + of required resource access drives the consent experience. + :type required_resource_access: + list[~azure.graphrbac.models.RequiredResourceAccess] """ _validation = { @@ -60,6 +72,7 @@ class Application(DirectoryObject): 'deletion_timestamp': {'key': 'deletionTimestamp', 'type': 'iso-8601'}, 'object_type': {'key': 'objectType', 'type': 'str'}, 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_roles': {'key': 'appRoles', 'type': '[AppRole]'}, 'app_permissions': {'key': 'appPermissions', 'type': '[str]'}, 'available_to_other_tenants': {'key': 'availableToOtherTenants', 'type': 'bool'}, 'display_name': {'key': 'displayName', 'type': 'str'}, @@ -67,16 +80,19 @@ class Application(DirectoryObject): 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, 'homepage': {'key': 'homepage', 'type': 'str'}, 'oauth2_allow_implicit_flow': {'key': 'oauth2AllowImplicitFlow', 'type': 'bool'}, + 'required_resource_access': {'key': 'requiredResourceAccess', 'type': '[RequiredResourceAccess]'}, } - def __init__(self, additional_properties=None, app_id=None, app_permissions=None, available_to_other_tenants=None, display_name=None, identifier_uris=None, reply_urls=None, homepage=None, oauth2_allow_implicit_flow=None): - super(Application, self).__init__(additional_properties=additional_properties) - self.app_id = app_id - self.app_permissions = app_permissions - self.available_to_other_tenants = available_to_other_tenants - self.display_name = display_name - self.identifier_uris = identifier_uris - self.reply_urls = reply_urls - self.homepage = homepage - self.oauth2_allow_implicit_flow = oauth2_allow_implicit_flow + def __init__(self, **kwargs): + super(Application, self).__init__(**kwargs) + self.app_id = kwargs.get('app_id', None) + self.app_roles = kwargs.get('app_roles', None) + self.app_permissions = kwargs.get('app_permissions', None) + self.available_to_other_tenants = kwargs.get('available_to_other_tenants', None) + self.display_name = kwargs.get('display_name', None) + self.identifier_uris = kwargs.get('identifier_uris', None) + self.reply_urls = kwargs.get('reply_urls', None) + self.homepage = kwargs.get('homepage', None) + self.oauth2_allow_implicit_flow = kwargs.get('oauth2_allow_implicit_flow', None) + self.required_resource_access = kwargs.get('required_resource_access', None) self.object_type = 'Application' diff --git a/azure-graphrbac/azure/graphrbac/models/application_add_owner_parameters.py b/azure-graphrbac/azure/graphrbac/models/application_add_owner_parameters.py deleted file mode 100644 index ea47f287e952..000000000000 --- a/azure-graphrbac/azure/graphrbac/models/application_add_owner_parameters.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class ApplicationAddOwnerParameters(Model): - """Request parameters for adding a owner to an application. - - :param additional_properties: Unmatched properties from the message are - deserialized this collection - :type additional_properties: dict[str, object] - :param url: A owner object URL, such as - "https://graph.windows.net/0b1f9851-1bf0-433f-aec3-cb9272f093dc/directoryObjects/f260bbc4-c254-447b-94cf-293b5ec434dd", - where "0b1f9851-1bf0-433f-aec3-cb9272f093dc" is the tenantId and - "f260bbc4-c254-447b-94cf-293b5ec434dd" is the objectId of the owner (user, - application, servicePrincipal, group) to be added. - :type url: str - """ - - _validation = { - 'url': {'required': True}, - } - - _attribute_map = { - 'additional_properties': {'key': '', 'type': '{object}'}, - 'url': {'key': 'url', 'type': 'str'}, - } - - def __init__(self, url, additional_properties=None): - super(ApplicationAddOwnerParameters, self).__init__() - self.additional_properties = additional_properties - self.url = url diff --git a/azure-graphrbac/azure/graphrbac/models/application_create_parameters.py b/azure-graphrbac/azure/graphrbac/models/application_create_parameters.py index 6c397fb92ff6..9c2b0e9c83e4 100644 --- a/azure-graphrbac/azure/graphrbac/models/application_create_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/application_create_parameters.py @@ -15,17 +15,24 @@ class ApplicationCreateParameters(Model): """Request parameters for creating a new application. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param available_to_other_tenants: Whether the application is available to - other tenants. + :param app_roles: The collection of application roles that an application + may declare. These roles can be assigned to users, groups or service + principals. + :type app_roles: list[~azure.graphrbac.models.AppRole] + :param available_to_other_tenants: Required. Whether the application is + available to other tenants. :type available_to_other_tenants: bool - :param display_name: The display name of the application. + :param display_name: Required. The display name of the application. :type display_name: str :param homepage: The home page of the application. :type homepage: str - :param identifier_uris: A collection of URIs for the application. + :param identifier_uris: Required. A collection of URIs for the + application. :type identifier_uris: list[str] :param reply_urls: A collection of reply URLs for the application. :type reply_urls: list[str] @@ -53,6 +60,7 @@ class ApplicationCreateParameters(Model): _attribute_map = { 'additional_properties': {'key': '', 'type': '{object}'}, + 'app_roles': {'key': 'appRoles', 'type': '[AppRole]'}, 'available_to_other_tenants': {'key': 'availableToOtherTenants', 'type': 'bool'}, 'display_name': {'key': 'displayName', 'type': 'str'}, 'homepage': {'key': 'homepage', 'type': 'str'}, @@ -64,15 +72,16 @@ class ApplicationCreateParameters(Model): 'required_resource_access': {'key': 'requiredResourceAccess', 'type': '[RequiredResourceAccess]'}, } - def __init__(self, available_to_other_tenants, display_name, identifier_uris, additional_properties=None, homepage=None, reply_urls=None, key_credentials=None, password_credentials=None, oauth2_allow_implicit_flow=None, required_resource_access=None): - super(ApplicationCreateParameters, self).__init__() - self.additional_properties = additional_properties - self.available_to_other_tenants = available_to_other_tenants - self.display_name = display_name - self.homepage = homepage - self.identifier_uris = identifier_uris - self.reply_urls = reply_urls - self.key_credentials = key_credentials - self.password_credentials = password_credentials - self.oauth2_allow_implicit_flow = oauth2_allow_implicit_flow - self.required_resource_access = required_resource_access + def __init__(self, **kwargs): + super(ApplicationCreateParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.app_roles = kwargs.get('app_roles', None) + self.available_to_other_tenants = kwargs.get('available_to_other_tenants', None) + self.display_name = kwargs.get('display_name', None) + self.homepage = kwargs.get('homepage', None) + self.identifier_uris = kwargs.get('identifier_uris', None) + self.reply_urls = kwargs.get('reply_urls', None) + self.key_credentials = kwargs.get('key_credentials', None) + self.password_credentials = kwargs.get('password_credentials', None) + self.oauth2_allow_implicit_flow = kwargs.get('oauth2_allow_implicit_flow', None) + self.required_resource_access = kwargs.get('required_resource_access', None) diff --git a/azure-graphrbac/azure/graphrbac/models/application_create_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/application_create_parameters_py3.py new file mode 100644 index 000000000000..a64daff94ed2 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/application_create_parameters_py3.py @@ -0,0 +1,87 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationCreateParameters(Model): + """Request parameters for creating a new application. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param app_roles: The collection of application roles that an application + may declare. These roles can be assigned to users, groups or service + principals. + :type app_roles: list[~azure.graphrbac.models.AppRole] + :param available_to_other_tenants: Required. Whether the application is + available to other tenants. + :type available_to_other_tenants: bool + :param display_name: Required. The display name of the application. + :type display_name: str + :param homepage: The home page of the application. + :type homepage: str + :param identifier_uris: Required. A collection of URIs for the + application. + :type identifier_uris: list[str] + :param reply_urls: A collection of reply URLs for the application. + :type reply_urls: list[str] + :param key_credentials: The list of KeyCredential objects. + :type key_credentials: list[~azure.graphrbac.models.KeyCredential] + :param password_credentials: The list of PasswordCredential objects. + :type password_credentials: + list[~azure.graphrbac.models.PasswordCredential] + :param oauth2_allow_implicit_flow: Whether to allow implicit grant flow + for OAuth2 + :type oauth2_allow_implicit_flow: bool + :param required_resource_access: Specifies resources that this application + requires access to and the set of OAuth permission scopes and application + roles that it needs under each of those resources. This pre-configuration + of required resource access drives the consent experience. + :type required_resource_access: + list[~azure.graphrbac.models.RequiredResourceAccess] + """ + + _validation = { + 'available_to_other_tenants': {'required': True}, + 'display_name': {'required': True}, + 'identifier_uris': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'app_roles': {'key': 'appRoles', 'type': '[AppRole]'}, + 'available_to_other_tenants': {'key': 'availableToOtherTenants', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'homepage': {'key': 'homepage', 'type': 'str'}, + 'identifier_uris': {'key': 'identifierUris', 'type': '[str]'}, + 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, + 'key_credentials': {'key': 'keyCredentials', 'type': '[KeyCredential]'}, + 'password_credentials': {'key': 'passwordCredentials', 'type': '[PasswordCredential]'}, + 'oauth2_allow_implicit_flow': {'key': 'oauth2AllowImplicitFlow', 'type': 'bool'}, + 'required_resource_access': {'key': 'requiredResourceAccess', 'type': '[RequiredResourceAccess]'}, + } + + def __init__(self, *, available_to_other_tenants: bool, display_name: str, identifier_uris, additional_properties=None, app_roles=None, homepage: str=None, reply_urls=None, key_credentials=None, password_credentials=None, oauth2_allow_implicit_flow: bool=None, required_resource_access=None, **kwargs) -> None: + super(ApplicationCreateParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.app_roles = app_roles + self.available_to_other_tenants = available_to_other_tenants + self.display_name = display_name + self.homepage = homepage + self.identifier_uris = identifier_uris + self.reply_urls = reply_urls + self.key_credentials = key_credentials + self.password_credentials = password_credentials + self.oauth2_allow_implicit_flow = oauth2_allow_implicit_flow + self.required_resource_access = required_resource_access diff --git a/azure-graphrbac/azure/graphrbac/models/application_py3.py b/azure-graphrbac/azure/graphrbac/models/application_py3.py new file mode 100644 index 000000000000..77fa6aa3c3b5 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/application_py3.py @@ -0,0 +1,98 @@ +# 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 .directory_object_py3 import DirectoryObject + + +class Application(DirectoryObject): + """Active Directory application information. + + 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 additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar object_id: The object ID. + :vartype object_id: str + :ivar deletion_timestamp: The time at which the directory object was + deleted. + :vartype deletion_timestamp: datetime + :param object_type: Required. Constant filled by server. + :type object_type: str + :param app_id: The application ID. + :type app_id: str + :param app_roles: The collection of application roles that an application + may declare. These roles can be assigned to users, groups or service + principals. + :type app_roles: list[~azure.graphrbac.models.AppRole] + :param app_permissions: The application permissions. + :type app_permissions: list[str] + :param available_to_other_tenants: Whether the application is be available + to other tenants. + :type available_to_other_tenants: bool + :param display_name: The display name of the application. + :type display_name: str + :param identifier_uris: A collection of URIs for the application. + :type identifier_uris: list[str] + :param reply_urls: A collection of reply URLs for the application. + :type reply_urls: list[str] + :param homepage: The home page of the application. + :type homepage: str + :param oauth2_allow_implicit_flow: Whether to allow implicit grant flow + for OAuth2 + :type oauth2_allow_implicit_flow: bool + :param required_resource_access: Specifies resources that this application + requires access to and the set of OAuth permission scopes and application + roles that it needs under each of those resources. This pre-configuration + of required resource access drives the consent experience. + :type required_resource_access: + list[~azure.graphrbac.models.RequiredResourceAccess] + """ + + _validation = { + 'object_id': {'readonly': True}, + 'deletion_timestamp': {'readonly': True}, + 'object_type': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + 'deletion_timestamp': {'key': 'deletionTimestamp', 'type': 'iso-8601'}, + 'object_type': {'key': 'objectType', 'type': 'str'}, + 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_roles': {'key': 'appRoles', 'type': '[AppRole]'}, + 'app_permissions': {'key': 'appPermissions', 'type': '[str]'}, + 'available_to_other_tenants': {'key': 'availableToOtherTenants', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'identifier_uris': {'key': 'identifierUris', 'type': '[str]'}, + 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, + 'homepage': {'key': 'homepage', 'type': 'str'}, + 'oauth2_allow_implicit_flow': {'key': 'oauth2AllowImplicitFlow', 'type': 'bool'}, + 'required_resource_access': {'key': 'requiredResourceAccess', 'type': '[RequiredResourceAccess]'}, + } + + def __init__(self, *, additional_properties=None, app_id: str=None, app_roles=None, app_permissions=None, available_to_other_tenants: bool=None, display_name: str=None, identifier_uris=None, reply_urls=None, homepage: str=None, oauth2_allow_implicit_flow: bool=None, required_resource_access=None, **kwargs) -> None: + super(Application, self).__init__(additional_properties=additional_properties, **kwargs) + self.app_id = app_id + self.app_roles = app_roles + self.app_permissions = app_permissions + self.available_to_other_tenants = available_to_other_tenants + self.display_name = display_name + self.identifier_uris = identifier_uris + self.reply_urls = reply_urls + self.homepage = homepage + self.oauth2_allow_implicit_flow = oauth2_allow_implicit_flow + self.required_resource_access = required_resource_access + self.object_type = 'Application' diff --git a/azure-graphrbac/azure/graphrbac/models/application_update_parameters.py b/azure-graphrbac/azure/graphrbac/models/application_update_parameters.py index a2ce3086fa1e..ecb1068d31c7 100644 --- a/azure-graphrbac/azure/graphrbac/models/application_update_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/application_update_parameters.py @@ -18,6 +18,10 @@ class ApplicationUpdateParameters(Model): :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] + :param app_roles: The collection of application roles that an application + may declare. These roles can be assigned to users, groups or service + principals. + :type app_roles: list[~azure.graphrbac.models.AppRole] :param available_to_other_tenants: Whether the application is available to other tenants :type available_to_other_tenants: bool @@ -47,6 +51,7 @@ class ApplicationUpdateParameters(Model): _attribute_map = { 'additional_properties': {'key': '', 'type': '{object}'}, + 'app_roles': {'key': 'appRoles', 'type': '[AppRole]'}, 'available_to_other_tenants': {'key': 'availableToOtherTenants', 'type': 'bool'}, 'display_name': {'key': 'displayName', 'type': 'str'}, 'homepage': {'key': 'homepage', 'type': 'str'}, @@ -58,15 +63,16 @@ class ApplicationUpdateParameters(Model): 'required_resource_access': {'key': 'requiredResourceAccess', 'type': '[RequiredResourceAccess]'}, } - def __init__(self, additional_properties=None, available_to_other_tenants=None, display_name=None, homepage=None, identifier_uris=None, reply_urls=None, key_credentials=None, password_credentials=None, oauth2_allow_implicit_flow=None, required_resource_access=None): - super(ApplicationUpdateParameters, self).__init__() - self.additional_properties = additional_properties - self.available_to_other_tenants = available_to_other_tenants - self.display_name = display_name - self.homepage = homepage - self.identifier_uris = identifier_uris - self.reply_urls = reply_urls - self.key_credentials = key_credentials - self.password_credentials = password_credentials - self.oauth2_allow_implicit_flow = oauth2_allow_implicit_flow - self.required_resource_access = required_resource_access + def __init__(self, **kwargs): + super(ApplicationUpdateParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.app_roles = kwargs.get('app_roles', None) + self.available_to_other_tenants = kwargs.get('available_to_other_tenants', None) + self.display_name = kwargs.get('display_name', None) + self.homepage = kwargs.get('homepage', None) + self.identifier_uris = kwargs.get('identifier_uris', None) + self.reply_urls = kwargs.get('reply_urls', None) + self.key_credentials = kwargs.get('key_credentials', None) + self.password_credentials = kwargs.get('password_credentials', None) + self.oauth2_allow_implicit_flow = kwargs.get('oauth2_allow_implicit_flow', None) + self.required_resource_access = kwargs.get('required_resource_access', None) diff --git a/azure-graphrbac/azure/graphrbac/models/application_update_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/application_update_parameters_py3.py new file mode 100644 index 000000000000..c8efcf211d61 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/application_update_parameters_py3.py @@ -0,0 +1,78 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationUpdateParameters(Model): + """Request parameters for updating an existing application. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param app_roles: The collection of application roles that an application + may declare. These roles can be assigned to users, groups or service + principals. + :type app_roles: list[~azure.graphrbac.models.AppRole] + :param available_to_other_tenants: Whether the application is available to + other tenants + :type available_to_other_tenants: bool + :param display_name: The display name of the application. + :type display_name: str + :param homepage: The home page of the application. + :type homepage: str + :param identifier_uris: A collection of URIs for the application. + :type identifier_uris: list[str] + :param reply_urls: A collection of reply URLs for the application. + :type reply_urls: list[str] + :param key_credentials: The list of KeyCredential objects. + :type key_credentials: list[~azure.graphrbac.models.KeyCredential] + :param password_credentials: The list of PasswordCredential objects. + :type password_credentials: + list[~azure.graphrbac.models.PasswordCredential] + :param oauth2_allow_implicit_flow: Whether to allow implicit grant flow + for OAuth2 + :type oauth2_allow_implicit_flow: bool + :param required_resource_access: Specifies resources that this application + requires access to and the set of OAuth permission scopes and application + roles that it needs under each of those resources. This pre-configuration + of required resource access drives the consent experience. + :type required_resource_access: + list[~azure.graphrbac.models.RequiredResourceAccess] + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'app_roles': {'key': 'appRoles', 'type': '[AppRole]'}, + 'available_to_other_tenants': {'key': 'availableToOtherTenants', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'homepage': {'key': 'homepage', 'type': 'str'}, + 'identifier_uris': {'key': 'identifierUris', 'type': '[str]'}, + 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, + 'key_credentials': {'key': 'keyCredentials', 'type': '[KeyCredential]'}, + 'password_credentials': {'key': 'passwordCredentials', 'type': '[PasswordCredential]'}, + 'oauth2_allow_implicit_flow': {'key': 'oauth2AllowImplicitFlow', 'type': 'bool'}, + 'required_resource_access': {'key': 'requiredResourceAccess', 'type': '[RequiredResourceAccess]'}, + } + + def __init__(self, *, additional_properties=None, app_roles=None, available_to_other_tenants: bool=None, display_name: str=None, homepage: str=None, identifier_uris=None, reply_urls=None, key_credentials=None, password_credentials=None, oauth2_allow_implicit_flow: bool=None, required_resource_access=None, **kwargs) -> None: + super(ApplicationUpdateParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.app_roles = app_roles + self.available_to_other_tenants = available_to_other_tenants + self.display_name = display_name + self.homepage = homepage + self.identifier_uris = identifier_uris + self.reply_urls = reply_urls + self.key_credentials = key_credentials + self.password_credentials = password_credentials + self.oauth2_allow_implicit_flow = oauth2_allow_implicit_flow + self.required_resource_access = required_resource_access diff --git a/azure-graphrbac/azure/graphrbac/models/check_group_membership_parameters.py b/azure-graphrbac/azure/graphrbac/models/check_group_membership_parameters.py index 4d5355f238c5..c4c682e15fb5 100644 --- a/azure-graphrbac/azure/graphrbac/models/check_group_membership_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/check_group_membership_parameters.py @@ -15,13 +15,15 @@ class CheckGroupMembershipParameters(Model): """Request parameters for IsMemberOf API call. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param group_id: The object ID of the group to check. + :param group_id: Required. The object ID of the group to check. :type group_id: str - :param member_id: The object ID of the contact, group, user, or service - principal to check for membership in the specified group. + :param member_id: Required. The object ID of the contact, group, user, or + service principal to check for membership in the specified group. :type member_id: str """ @@ -36,8 +38,8 @@ class CheckGroupMembershipParameters(Model): 'member_id': {'key': 'memberId', 'type': 'str'}, } - def __init__(self, group_id, member_id, additional_properties=None): - super(CheckGroupMembershipParameters, self).__init__() - self.additional_properties = additional_properties - self.group_id = group_id - self.member_id = member_id + def __init__(self, **kwargs): + super(CheckGroupMembershipParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.group_id = kwargs.get('group_id', None) + self.member_id = kwargs.get('member_id', None) diff --git a/azure-graphrbac/azure/graphrbac/models/check_group_membership_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/check_group_membership_parameters_py3.py new file mode 100644 index 000000000000..2731038c356d --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/check_group_membership_parameters_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CheckGroupMembershipParameters(Model): + """Request parameters for IsMemberOf API call. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param group_id: Required. The object ID of the group to check. + :type group_id: str + :param member_id: Required. The object ID of the contact, group, user, or + service principal to check for membership in the specified group. + :type member_id: str + """ + + _validation = { + 'group_id': {'required': True}, + 'member_id': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'group_id': {'key': 'groupId', 'type': 'str'}, + 'member_id': {'key': 'memberId', 'type': 'str'}, + } + + def __init__(self, *, group_id: str, member_id: str, additional_properties=None, **kwargs) -> None: + super(CheckGroupMembershipParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.group_id = group_id + self.member_id = member_id diff --git a/azure-graphrbac/azure/graphrbac/models/check_group_membership_result.py b/azure-graphrbac/azure/graphrbac/models/check_group_membership_result.py index a27c56b5f520..b986abefdef0 100644 --- a/azure-graphrbac/azure/graphrbac/models/check_group_membership_result.py +++ b/azure-graphrbac/azure/graphrbac/models/check_group_membership_result.py @@ -29,7 +29,7 @@ class CheckGroupMembershipResult(Model): 'value': {'key': 'value', 'type': 'bool'}, } - def __init__(self, additional_properties=None, value=None): - super(CheckGroupMembershipResult, self).__init__() - self.additional_properties = additional_properties - self.value = value + def __init__(self, **kwargs): + super(CheckGroupMembershipResult, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.value = kwargs.get('value', None) diff --git a/azure-graphrbac/azure/graphrbac/models/check_group_membership_result_py3.py b/azure-graphrbac/azure/graphrbac/models/check_group_membership_result_py3.py new file mode 100644 index 000000000000..dce500881ae1 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/check_group_membership_result_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CheckGroupMembershipResult(Model): + """Server response for IsMemberOf API call. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param value: True if the specified user, group, contact, or service + principal has either direct or transitive membership in the specified + group; otherwise, false. + :type value: bool + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'value': {'key': 'value', 'type': 'bool'}, + } + + def __init__(self, *, additional_properties=None, value: bool=None, **kwargs) -> None: + super(CheckGroupMembershipResult, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.value = value diff --git a/azure-graphrbac/azure/graphrbac/models/directory_object.py b/azure-graphrbac/azure/graphrbac/models/directory_object.py index 9683fe507471..f8c52d0ddf3a 100644 --- a/azure-graphrbac/azure/graphrbac/models/directory_object.py +++ b/azure-graphrbac/azure/graphrbac/models/directory_object.py @@ -21,6 +21,8 @@ class DirectoryObject(Model): 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 additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -29,7 +31,7 @@ class DirectoryObject(Model): :ivar deletion_timestamp: The time at which the directory object was deleted. :vartype deletion_timestamp: datetime - :param object_type: Constant filled by server. + :param object_type: Required. Constant filled by server. :type object_type: str """ @@ -50,9 +52,9 @@ class DirectoryObject(Model): 'object_type': {'Application': 'Application', 'Group': 'ADGroup', 'ServicePrincipal': 'ServicePrincipal', 'User': 'User'} } - def __init__(self, additional_properties=None): - super(DirectoryObject, self).__init__() - self.additional_properties = additional_properties + def __init__(self, **kwargs): + super(DirectoryObject, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) self.object_id = None self.deletion_timestamp = None self.object_type = None diff --git a/azure-graphrbac/azure/graphrbac/models/directory_object_paged.py b/azure-graphrbac/azure/graphrbac/models/directory_object_paged.py index 9afb9de28259..2873512be9c0 100644 --- a/azure-graphrbac/azure/graphrbac/models/directory_object_paged.py +++ b/azure-graphrbac/azure/graphrbac/models/directory_object_paged.py @@ -18,7 +18,7 @@ class DirectoryObjectPaged(Paged): """ _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'next_link': {'key': 'odata\\.nextLink', 'type': 'str'}, 'current_page': {'key': 'value', 'type': '[DirectoryObject]'} } diff --git a/azure-graphrbac/azure/graphrbac/models/directory_object_py3.py b/azure-graphrbac/azure/graphrbac/models/directory_object_py3.py new file mode 100644 index 000000000000..181d66cc50d5 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/directory_object_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DirectoryObject(Model): + """Represents an Azure Active Directory object. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: Application, ADGroup, ServicePrincipal, User + + 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 additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar object_id: The object ID. + :vartype object_id: str + :ivar deletion_timestamp: The time at which the directory object was + deleted. + :vartype deletion_timestamp: datetime + :param object_type: Required. Constant filled by server. + :type object_type: str + """ + + _validation = { + 'object_id': {'readonly': True}, + 'deletion_timestamp': {'readonly': True}, + 'object_type': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + 'deletion_timestamp': {'key': 'deletionTimestamp', 'type': 'iso-8601'}, + 'object_type': {'key': 'objectType', 'type': 'str'}, + } + + _subtype_map = { + 'object_type': {'Application': 'Application', 'Group': 'ADGroup', 'ServicePrincipal': 'ServicePrincipal', 'User': 'User'} + } + + def __init__(self, *, additional_properties=None, **kwargs) -> None: + super(DirectoryObject, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.object_id = None + self.deletion_timestamp = None + self.object_type = None diff --git a/azure-graphrbac/azure/graphrbac/models/domain.py b/azure-graphrbac/azure/graphrbac/models/domain.py index 9bb56c43d843..bc602c6fefd3 100644 --- a/azure-graphrbac/azure/graphrbac/models/domain.py +++ b/azure-graphrbac/azure/graphrbac/models/domain.py @@ -18,6 +18,8 @@ class Domain(Model): 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 additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -27,7 +29,7 @@ class Domain(Model): :vartype is_default: bool :ivar is_verified: if this domain's ownership is verified. :vartype is_verified: bool - :param name: the domain name. + :param name: Required. the domain name. :type name: str """ @@ -46,10 +48,10 @@ class Domain(Model): 'name': {'key': 'name', 'type': 'str'}, } - def __init__(self, name, additional_properties=None): - super(Domain, self).__init__() - self.additional_properties = additional_properties + def __init__(self, **kwargs): + super(Domain, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) self.authentication_type = None self.is_default = None self.is_verified = None - self.name = name + self.name = kwargs.get('name', None) diff --git a/azure-graphrbac/azure/graphrbac/models/domain_py3.py b/azure-graphrbac/azure/graphrbac/models/domain_py3.py new file mode 100644 index 000000000000..69bb7aef0387 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/domain_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Domain(Model): + """Active Directory Domain information. + + 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 additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar authentication_type: the type of the authentication into the domain. + :vartype authentication_type: str + :ivar is_default: if this is the default domain in the tenant. + :vartype is_default: bool + :ivar is_verified: if this domain's ownership is verified. + :vartype is_verified: bool + :param name: Required. the domain name. + :type name: str + """ + + _validation = { + 'authentication_type': {'readonly': True}, + 'is_default': {'readonly': True}, + 'is_verified': {'readonly': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'authentication_type': {'key': 'authenticationType', 'type': 'str'}, + 'is_default': {'key': 'isDefault', 'type': 'bool'}, + 'is_verified': {'key': 'isVerified', 'type': 'bool'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str, additional_properties=None, **kwargs) -> None: + super(Domain, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.authentication_type = None + self.is_default = None + self.is_verified = None + self.name = name diff --git a/azure-graphrbac/azure/graphrbac/models/get_objects_parameters.py b/azure-graphrbac/azure/graphrbac/models/get_objects_parameters.py index eb0fb5333f13..598445e6fc15 100644 --- a/azure-graphrbac/azure/graphrbac/models/get_objects_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/get_objects_parameters.py @@ -27,10 +27,6 @@ class GetObjectsParameters(Model): :type include_directory_object_references: bool """ - _validation = { - 'include_directory_object_references': {'required': True}, - } - _attribute_map = { 'additional_properties': {'key': '', 'type': '{object}'}, 'object_ids': {'key': 'objectIds', 'type': '[str]'}, @@ -38,9 +34,9 @@ class GetObjectsParameters(Model): 'include_directory_object_references': {'key': 'includeDirectoryObjectReferences', 'type': 'bool'}, } - def __init__(self, include_directory_object_references, additional_properties=None, object_ids=None, types=None): - super(GetObjectsParameters, self).__init__() - self.additional_properties = additional_properties - self.object_ids = object_ids - self.types = types - self.include_directory_object_references = include_directory_object_references + def __init__(self, **kwargs): + super(GetObjectsParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.object_ids = kwargs.get('object_ids', None) + self.types = kwargs.get('types', None) + self.include_directory_object_references = kwargs.get('include_directory_object_references', None) diff --git a/azure-graphrbac/azure/graphrbac/models/get_objects_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/get_objects_parameters_py3.py new file mode 100644 index 000000000000..c618f6e93cea --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/get_objects_parameters_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetObjectsParameters(Model): + """Request parameters for the GetObjectsByObjectIds API. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param object_ids: The requested object IDs. + :type object_ids: list[str] + :param types: The requested object types. + :type types: list[str] + :param include_directory_object_references: If true, also searches for + object IDs in the partner tenant. + :type include_directory_object_references: bool + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'object_ids': {'key': 'objectIds', 'type': '[str]'}, + 'types': {'key': 'types', 'type': '[str]'}, + 'include_directory_object_references': {'key': 'includeDirectoryObjectReferences', 'type': 'bool'}, + } + + def __init__(self, *, additional_properties=None, object_ids=None, types=None, include_directory_object_references: bool=None, **kwargs) -> None: + super(GetObjectsParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.object_ids = object_ids + self.types = types + self.include_directory_object_references = include_directory_object_references diff --git a/azure-graphrbac/azure/graphrbac/models/graph_error.py b/azure-graphrbac/azure/graphrbac/models/graph_error.py index 4c7c3a0110ca..45d8eef94eba 100644 --- a/azure-graphrbac/azure/graphrbac/models/graph_error.py +++ b/azure-graphrbac/azure/graphrbac/models/graph_error.py @@ -27,10 +27,10 @@ class GraphError(Model): 'message': {'key': 'odata\\.error.message.value', 'type': 'str'}, } - def __init__(self, code=None, message=None): - super(GraphError, self).__init__() - self.code = code - self.message = message + def __init__(self, **kwargs): + super(GraphError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) class GraphErrorException(HttpOperationError): diff --git a/azure-graphrbac/azure/graphrbac/models/graph_error_py3.py b/azure-graphrbac/azure/graphrbac/models/graph_error_py3.py new file mode 100644 index 000000000000..f3d18f840b31 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/graph_error_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class GraphError(Model): + """Active Directory error information. + + :param code: Error code. + :type code: str + :param message: Error message value. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'odata\\.error.code', 'type': 'str'}, + 'message': {'key': 'odata\\.error.message.value', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, message: str=None, **kwargs) -> None: + super(GraphError, self).__init__(**kwargs) + self.code = code + self.message = message + + +class GraphErrorException(HttpOperationError): + """Server responsed with exception of type: 'GraphError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(GraphErrorException, self).__init__(deserialize, response, 'GraphError', *args) diff --git a/azure-graphrbac/azure/graphrbac/models/graph_rbac_management_client_enums.py b/azure-graphrbac/azure/graphrbac/models/graph_rbac_management_client_enums.py index 99b1b1396548..8c62d75101a2 100644 --- a/azure-graphrbac/azure/graphrbac/models/graph_rbac_management_client_enums.py +++ b/azure-graphrbac/azure/graphrbac/models/graph_rbac_management_client_enums.py @@ -12,7 +12,7 @@ from enum import Enum -class UserType(Enum): +class UserType(str, Enum): member = "Member" guest = "Guest" diff --git a/azure-graphrbac/azure/graphrbac/models/group_add_member_parameters.py b/azure-graphrbac/azure/graphrbac/models/group_add_member_parameters.py index bccfccf03c8b..408c7c280e19 100644 --- a/azure-graphrbac/azure/graphrbac/models/group_add_member_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/group_add_member_parameters.py @@ -15,10 +15,12 @@ class GroupAddMemberParameters(Model): """Request parameters for adding a member to a group. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param url: A member object URL, such as + :param url: Required. A member object URL, such as "https://graph.windows.net/0b1f9851-1bf0-433f-aec3-cb9272f093dc/directoryObjects/f260bbc4-c254-447b-94cf-293b5ec434dd", where "0b1f9851-1bf0-433f-aec3-cb9272f093dc" is the tenantId and "f260bbc4-c254-447b-94cf-293b5ec434dd" is the objectId of the member @@ -35,7 +37,7 @@ class GroupAddMemberParameters(Model): 'url': {'key': 'url', 'type': 'str'}, } - def __init__(self, url, additional_properties=None): - super(GroupAddMemberParameters, self).__init__() - self.additional_properties = additional_properties - self.url = url + def __init__(self, **kwargs): + super(GroupAddMemberParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.url = kwargs.get('url', None) diff --git a/azure-graphrbac/azure/graphrbac/models/group_add_member_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/group_add_member_parameters_py3.py new file mode 100644 index 000000000000..bf4b12a1a32b --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/group_add_member_parameters_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupAddMemberParameters(Model): + """Request parameters for adding a member to a group. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param url: Required. A member object URL, such as + "https://graph.windows.net/0b1f9851-1bf0-433f-aec3-cb9272f093dc/directoryObjects/f260bbc4-c254-447b-94cf-293b5ec434dd", + where "0b1f9851-1bf0-433f-aec3-cb9272f093dc" is the tenantId and + "f260bbc4-c254-447b-94cf-293b5ec434dd" is the objectId of the member + (user, application, servicePrincipal, group) to be added. + :type url: str + """ + + _validation = { + 'url': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'url': {'key': 'url', 'type': 'str'}, + } + + def __init__(self, *, url: str, additional_properties=None, **kwargs) -> None: + super(GroupAddMemberParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.url = url diff --git a/azure-graphrbac/azure/graphrbac/models/group_create_parameters.py b/azure-graphrbac/azure/graphrbac/models/group_create_parameters.py index 6eaf7ddcbe41..81a35b77c8cf 100644 --- a/azure-graphrbac/azure/graphrbac/models/group_create_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/group_create_parameters.py @@ -18,20 +18,22 @@ class GroupCreateParameters(Model): 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 additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param display_name: Group display name + :param display_name: Required. Group display name :type display_name: str - :ivar mail_enabled: Whether the group is mail-enabled. Must be false. This - is because only pure security groups can be created using the Graph API. - Default value: False . + :ivar mail_enabled: Required. Whether the group is mail-enabled. Must be + false. This is because only pure security groups can be created using the + Graph API. Default value: False . :vartype mail_enabled: bool - :param mail_nickname: Mail nickname + :param mail_nickname: Required. Mail nickname :type mail_nickname: str - :ivar security_enabled: Whether the group is a security group. Must be - true. This is because only pure security groups can be created using the - Graph API. Default value: True . + :ivar security_enabled: Required. Whether the group is a security group. + Must be true. This is because only pure security groups can be created + using the Graph API. Default value: True . :vartype security_enabled: bool """ @@ -54,8 +56,8 @@ class GroupCreateParameters(Model): security_enabled = True - def __init__(self, display_name, mail_nickname, additional_properties=None): - super(GroupCreateParameters, self).__init__() - self.additional_properties = additional_properties - self.display_name = display_name - self.mail_nickname = mail_nickname + def __init__(self, **kwargs): + super(GroupCreateParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.display_name = kwargs.get('display_name', None) + self.mail_nickname = kwargs.get('mail_nickname', None) diff --git a/azure-graphrbac/azure/graphrbac/models/group_create_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/group_create_parameters_py3.py new file mode 100644 index 000000000000..6a06875ce127 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/group_create_parameters_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupCreateParameters(Model): + """Request parameters for creating a new group. + + 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 additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param display_name: Required. Group display name + :type display_name: str + :ivar mail_enabled: Required. Whether the group is mail-enabled. Must be + false. This is because only pure security groups can be created using the + Graph API. Default value: False . + :vartype mail_enabled: bool + :param mail_nickname: Required. Mail nickname + :type mail_nickname: str + :ivar security_enabled: Required. Whether the group is a security group. + Must be true. This is because only pure security groups can be created + using the Graph API. Default value: True . + :vartype security_enabled: bool + """ + + _validation = { + 'display_name': {'required': True}, + 'mail_enabled': {'required': True, 'constant': True}, + 'mail_nickname': {'required': True}, + 'security_enabled': {'required': True, 'constant': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'mail_enabled': {'key': 'mailEnabled', 'type': 'bool'}, + 'mail_nickname': {'key': 'mailNickname', 'type': 'str'}, + 'security_enabled': {'key': 'securityEnabled', 'type': 'bool'}, + } + + mail_enabled = False + + security_enabled = True + + def __init__(self, *, display_name: str, mail_nickname: str, additional_properties=None, **kwargs) -> None: + super(GroupCreateParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.display_name = display_name + self.mail_nickname = mail_nickname diff --git a/azure-graphrbac/azure/graphrbac/models/group_get_member_groups_parameters.py b/azure-graphrbac/azure/graphrbac/models/group_get_member_groups_parameters.py index 27693c062e60..75ed0f53dcc5 100644 --- a/azure-graphrbac/azure/graphrbac/models/group_get_member_groups_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/group_get_member_groups_parameters.py @@ -15,12 +15,14 @@ class GroupGetMemberGroupsParameters(Model): """Request parameters for GetMemberGroups API call. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param security_enabled_only: If true, only membership in security-enabled - groups should be checked. Otherwise, membership in all groups should be - checked. + :param security_enabled_only: Required. If true, only membership in + security-enabled groups should be checked. Otherwise, membership in all + groups should be checked. :type security_enabled_only: bool """ @@ -33,7 +35,7 @@ class GroupGetMemberGroupsParameters(Model): 'security_enabled_only': {'key': 'securityEnabledOnly', 'type': 'bool'}, } - def __init__(self, security_enabled_only, additional_properties=None): - super(GroupGetMemberGroupsParameters, self).__init__() - self.additional_properties = additional_properties - self.security_enabled_only = security_enabled_only + def __init__(self, **kwargs): + super(GroupGetMemberGroupsParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.security_enabled_only = kwargs.get('security_enabled_only', None) diff --git a/azure-graphrbac/azure/graphrbac/models/group_get_member_groups_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/group_get_member_groups_parameters_py3.py new file mode 100644 index 000000000000..2ff9062d6d94 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/group_get_member_groups_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GroupGetMemberGroupsParameters(Model): + """Request parameters for GetMemberGroups API call. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param security_enabled_only: Required. If true, only membership in + security-enabled groups should be checked. Otherwise, membership in all + groups should be checked. + :type security_enabled_only: bool + """ + + _validation = { + 'security_enabled_only': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'security_enabled_only': {'key': 'securityEnabledOnly', 'type': 'bool'}, + } + + def __init__(self, *, security_enabled_only: bool, additional_properties=None, **kwargs) -> None: + super(GroupGetMemberGroupsParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.security_enabled_only = security_enabled_only diff --git a/azure-graphrbac/azure/graphrbac/models/key_credential.py b/azure-graphrbac/azure/graphrbac/models/key_credential.py index 275d871796fc..ed56f7672311 100644 --- a/azure-graphrbac/azure/graphrbac/models/key_credential.py +++ b/azure-graphrbac/azure/graphrbac/models/key_credential.py @@ -31,6 +31,8 @@ class KeyCredential(Model): :param type: Type. Acceptable values are 'AsymmetricX509Cert' and 'Symmetric'. :type type: str + :param custom_key_identifier: Custom Key Identifier + :type custom_key_identifier: bytearray """ _attribute_map = { @@ -41,14 +43,16 @@ class KeyCredential(Model): 'key_id': {'key': 'keyId', 'type': 'str'}, 'usage': {'key': 'usage', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, + 'custom_key_identifier': {'key': 'customKeyIdentifier', 'type': 'bytearray'}, } - def __init__(self, additional_properties=None, start_date=None, end_date=None, value=None, key_id=None, usage=None, type=None): - super(KeyCredential, self).__init__() - self.additional_properties = additional_properties - self.start_date = start_date - self.end_date = end_date - self.value = value - self.key_id = key_id - self.usage = usage - self.type = type + def __init__(self, **kwargs): + super(KeyCredential, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.start_date = kwargs.get('start_date', None) + self.end_date = kwargs.get('end_date', None) + self.value = kwargs.get('value', None) + self.key_id = kwargs.get('key_id', None) + self.usage = kwargs.get('usage', None) + self.type = kwargs.get('type', None) + self.custom_key_identifier = kwargs.get('custom_key_identifier', None) diff --git a/azure-graphrbac/azure/graphrbac/models/key_credential_py3.py b/azure-graphrbac/azure/graphrbac/models/key_credential_py3.py new file mode 100644 index 000000000000..b6550d8d11de --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/key_credential_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyCredential(Model): + """Active Directory Key Credential information. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param start_date: Start date. + :type start_date: datetime + :param end_date: End date. + :type end_date: datetime + :param value: Key value. + :type value: str + :param key_id: Key ID. + :type key_id: str + :param usage: Usage. Acceptable values are 'Verify' and 'Sign'. + :type usage: str + :param type: Type. Acceptable values are 'AsymmetricX509Cert' and + 'Symmetric'. + :type type: str + :param custom_key_identifier: Custom Key Identifier + :type custom_key_identifier: bytearray + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'start_date': {'key': 'startDate', 'type': 'iso-8601'}, + 'end_date': {'key': 'endDate', 'type': 'iso-8601'}, + 'value': {'key': 'value', 'type': 'str'}, + 'key_id': {'key': 'keyId', 'type': 'str'}, + 'usage': {'key': 'usage', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'custom_key_identifier': {'key': 'customKeyIdentifier', 'type': 'bytearray'}, + } + + def __init__(self, *, additional_properties=None, start_date=None, end_date=None, value: str=None, key_id: str=None, usage: str=None, type: str=None, custom_key_identifier: bytearray=None, **kwargs) -> None: + super(KeyCredential, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.start_date = start_date + self.end_date = end_date + self.value = value + self.key_id = key_id + self.usage = usage + self.type = type + self.custom_key_identifier = custom_key_identifier diff --git a/azure-graphrbac/azure/graphrbac/models/key_credentials_update_parameters.py b/azure-graphrbac/azure/graphrbac/models/key_credentials_update_parameters.py index 9f0596127112..4263c460c6f4 100644 --- a/azure-graphrbac/azure/graphrbac/models/key_credentials_update_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/key_credentials_update_parameters.py @@ -15,7 +15,9 @@ class KeyCredentialsUpdateParameters(Model): """Request parameters for a KeyCredentials update operation. - :param value: A collection of KeyCredentials. + All required parameters must be populated in order to send to Azure. + + :param value: Required. A collection of KeyCredentials. :type value: list[~azure.graphrbac.models.KeyCredential] """ @@ -27,6 +29,6 @@ class KeyCredentialsUpdateParameters(Model): 'value': {'key': 'value', 'type': '[KeyCredential]'}, } - def __init__(self, value): - super(KeyCredentialsUpdateParameters, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(KeyCredentialsUpdateParameters, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-graphrbac/azure/graphrbac/models/key_credentials_update_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/key_credentials_update_parameters_py3.py new file mode 100644 index 000000000000..acabfe64b1db --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/key_credentials_update_parameters_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyCredentialsUpdateParameters(Model): + """Request parameters for a KeyCredentials update operation. + + All required parameters must be populated in order to send to Azure. + + :param value: Required. A collection of KeyCredentials. + :type value: list[~azure.graphrbac.models.KeyCredential] + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[KeyCredential]'}, + } + + def __init__(self, *, value, **kwargs) -> None: + super(KeyCredentialsUpdateParameters, self).__init__(**kwargs) + self.value = value diff --git a/azure-graphrbac/azure/graphrbac/models/password_credential.py b/azure-graphrbac/azure/graphrbac/models/password_credential.py index d10a08a6cdf9..28d9e2709458 100644 --- a/azure-graphrbac/azure/graphrbac/models/password_credential.py +++ b/azure-graphrbac/azure/graphrbac/models/password_credential.py @@ -36,10 +36,10 @@ class PasswordCredential(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, additional_properties=None, start_date=None, end_date=None, key_id=None, value=None): - super(PasswordCredential, self).__init__() - self.additional_properties = additional_properties - self.start_date = start_date - self.end_date = end_date - self.key_id = key_id - self.value = value + def __init__(self, **kwargs): + super(PasswordCredential, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.start_date = kwargs.get('start_date', None) + self.end_date = kwargs.get('end_date', None) + self.key_id = kwargs.get('key_id', None) + self.value = kwargs.get('value', None) diff --git a/azure-graphrbac/azure/graphrbac/models/password_credential_py3.py b/azure-graphrbac/azure/graphrbac/models/password_credential_py3.py new file mode 100644 index 000000000000..102f23659286 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/password_credential_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PasswordCredential(Model): + """Active Directory Password Credential information. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param start_date: Start date. + :type start_date: datetime + :param end_date: End date. + :type end_date: datetime + :param key_id: Key ID. + :type key_id: str + :param value: Key value. + :type value: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'start_date': {'key': 'startDate', 'type': 'iso-8601'}, + 'end_date': {'key': 'endDate', 'type': 'iso-8601'}, + 'key_id': {'key': 'keyId', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, start_date=None, end_date=None, key_id: str=None, value: str=None, **kwargs) -> None: + super(PasswordCredential, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.start_date = start_date + self.end_date = end_date + self.key_id = key_id + self.value = value diff --git a/azure-graphrbac/azure/graphrbac/models/password_credentials_update_parameters.py b/azure-graphrbac/azure/graphrbac/models/password_credentials_update_parameters.py index 46f34f2f086a..0ac238bdf6d7 100644 --- a/azure-graphrbac/azure/graphrbac/models/password_credentials_update_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/password_credentials_update_parameters.py @@ -15,7 +15,9 @@ class PasswordCredentialsUpdateParameters(Model): """Request parameters for a PasswordCredentials update operation. - :param value: A collection of PasswordCredentials. + All required parameters must be populated in order to send to Azure. + + :param value: Required. A collection of PasswordCredentials. :type value: list[~azure.graphrbac.models.PasswordCredential] """ @@ -27,6 +29,6 @@ class PasswordCredentialsUpdateParameters(Model): 'value': {'key': 'value', 'type': '[PasswordCredential]'}, } - def __init__(self, value): - super(PasswordCredentialsUpdateParameters, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(PasswordCredentialsUpdateParameters, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-graphrbac/azure/graphrbac/models/password_credentials_update_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/password_credentials_update_parameters_py3.py new file mode 100644 index 000000000000..7410950c6120 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/password_credentials_update_parameters_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PasswordCredentialsUpdateParameters(Model): + """Request parameters for a PasswordCredentials update operation. + + All required parameters must be populated in order to send to Azure. + + :param value: Required. A collection of PasswordCredentials. + :type value: list[~azure.graphrbac.models.PasswordCredential] + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[PasswordCredential]'}, + } + + def __init__(self, *, value, **kwargs) -> None: + super(PasswordCredentialsUpdateParameters, self).__init__(**kwargs) + self.value = value diff --git a/azure-graphrbac/azure/graphrbac/models/password_profile.py b/azure-graphrbac/azure/graphrbac/models/password_profile.py index ab79d5990cb4..7da56ef55c4c 100644 --- a/azure-graphrbac/azure/graphrbac/models/password_profile.py +++ b/azure-graphrbac/azure/graphrbac/models/password_profile.py @@ -15,10 +15,12 @@ class PasswordProfile(Model): """The password profile associated with a user. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param password: Password + :param password: Required. Password :type password: str :param force_change_password_next_login: Whether to force a password change on next login. @@ -35,8 +37,8 @@ class PasswordProfile(Model): 'force_change_password_next_login': {'key': 'forceChangePasswordNextLogin', 'type': 'bool'}, } - def __init__(self, password, additional_properties=None, force_change_password_next_login=None): - super(PasswordProfile, self).__init__() - self.additional_properties = additional_properties - self.password = password - self.force_change_password_next_login = force_change_password_next_login + def __init__(self, **kwargs): + super(PasswordProfile, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.password = kwargs.get('password', None) + self.force_change_password_next_login = kwargs.get('force_change_password_next_login', None) diff --git a/azure-graphrbac/azure/graphrbac/models/password_profile_py3.py b/azure-graphrbac/azure/graphrbac/models/password_profile_py3.py new file mode 100644 index 000000000000..bf3a10197609 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/password_profile_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PasswordProfile(Model): + """The password profile associated with a user. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param password: Required. Password + :type password: str + :param force_change_password_next_login: Whether to force a password + change on next login. + :type force_change_password_next_login: bool + """ + + _validation = { + 'password': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'password': {'key': 'password', 'type': 'str'}, + 'force_change_password_next_login': {'key': 'forceChangePasswordNextLogin', 'type': 'bool'}, + } + + def __init__(self, *, password: str, additional_properties=None, force_change_password_next_login: bool=None, **kwargs) -> None: + super(PasswordProfile, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.password = password + self.force_change_password_next_login = force_change_password_next_login diff --git a/azure-graphrbac/azure/graphrbac/models/permissions.py b/azure-graphrbac/azure/graphrbac/models/permissions.py new file mode 100644 index 000000000000..d433d559b540 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/permissions.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Permissions(Model): + """Permissions. + + :param odatatype: Microsoft.DirectoryServices.OAuth2PermissionGrant + :type odatatype: str + :param client_id: The objectId of the Service Principal associated with + the app + :type client_id: str + :param consent_type: Typically set to AllPrincipals + :type consent_type: str + :param principal_id: Set to null if AllPrincipals is set + :type principal_id: object + :param resource_id: Service Principal Id of the resource you want to grant + :type resource_id: str + :param scope: Typically set to user_impersonation + :type scope: str + :param start_time: Start time for TTL + :type start_time: str + :param expiry_time: Expiry time for TTL + :type expiry_time: str + """ + + _attribute_map = { + 'odatatype': {'key': 'odata\\.type', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'consent_type': {'key': 'consentType', 'type': 'str'}, + 'principal_id': {'key': 'principalId', 'type': 'object'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'str'}, + 'expiry_time': {'key': 'expiryTime', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Permissions, self).__init__(**kwargs) + self.odatatype = kwargs.get('odatatype', None) + self.client_id = kwargs.get('client_id', None) + self.consent_type = kwargs.get('consent_type', None) + self.principal_id = kwargs.get('principal_id', None) + self.resource_id = kwargs.get('resource_id', None) + self.scope = kwargs.get('scope', None) + self.start_time = kwargs.get('start_time', None) + self.expiry_time = kwargs.get('expiry_time', None) diff --git a/azure-graphrbac/azure/graphrbac/models/permissions_py3.py b/azure-graphrbac/azure/graphrbac/models/permissions_py3.py new file mode 100644 index 000000000000..6f3211d46a1c --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/permissions_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Permissions(Model): + """Permissions. + + :param odatatype: Microsoft.DirectoryServices.OAuth2PermissionGrant + :type odatatype: str + :param client_id: The objectId of the Service Principal associated with + the app + :type client_id: str + :param consent_type: Typically set to AllPrincipals + :type consent_type: str + :param principal_id: Set to null if AllPrincipals is set + :type principal_id: object + :param resource_id: Service Principal Id of the resource you want to grant + :type resource_id: str + :param scope: Typically set to user_impersonation + :type scope: str + :param start_time: Start time for TTL + :type start_time: str + :param expiry_time: Expiry time for TTL + :type expiry_time: str + """ + + _attribute_map = { + 'odatatype': {'key': 'odata\\.type', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'consent_type': {'key': 'consentType', 'type': 'str'}, + 'principal_id': {'key': 'principalId', 'type': 'object'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'str'}, + 'expiry_time': {'key': 'expiryTime', 'type': 'str'}, + } + + def __init__(self, *, odatatype: str=None, client_id: str=None, consent_type: str=None, principal_id=None, resource_id: str=None, scope: str=None, start_time: str=None, expiry_time: str=None, **kwargs) -> None: + super(Permissions, self).__init__(**kwargs) + self.odatatype = odatatype + self.client_id = client_id + self.consent_type = consent_type + self.principal_id = principal_id + self.resource_id = resource_id + self.scope = scope + self.start_time = start_time + self.expiry_time = expiry_time diff --git a/azure-graphrbac/azure/graphrbac/models/required_resource_access.py b/azure-graphrbac/azure/graphrbac/models/required_resource_access.py index 35e6dcf3624f..b8d953263323 100644 --- a/azure-graphrbac/azure/graphrbac/models/required_resource_access.py +++ b/azure-graphrbac/azure/graphrbac/models/required_resource_access.py @@ -20,11 +20,13 @@ class RequiredResourceAccess(Model): application. The requiredResourceAccess property of the Application entity is a collection of ReqiredResourceAccess. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param resource_access: The list of OAuth2.0 permission scopes and app - roles that the application requires from the specified resource. + :param resource_access: Required. The list of OAuth2.0 permission scopes + and app roles that the application requires from the specified resource. :type resource_access: list[~azure.graphrbac.models.ResourceAccess] :param resource_app_id: The unique identifier for the resource that the application requires access to. This should be equal to the appId declared @@ -42,8 +44,8 @@ class RequiredResourceAccess(Model): 'resource_app_id': {'key': 'resourceAppId', 'type': 'str'}, } - def __init__(self, resource_access, additional_properties=None, resource_app_id=None): - super(RequiredResourceAccess, self).__init__() - self.additional_properties = additional_properties - self.resource_access = resource_access - self.resource_app_id = resource_app_id + def __init__(self, **kwargs): + super(RequiredResourceAccess, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.resource_access = kwargs.get('resource_access', None) + self.resource_app_id = kwargs.get('resource_app_id', None) diff --git a/azure-graphrbac/azure/graphrbac/models/required_resource_access_py3.py b/azure-graphrbac/azure/graphrbac/models/required_resource_access_py3.py new file mode 100644 index 000000000000..059d04af9119 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/required_resource_access_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RequiredResourceAccess(Model): + """Specifies the set of OAuth 2.0 permission scopes and app roles under the + specified resource that an application requires access to. The specified + OAuth 2.0 permission scopes may be requested by client applications + (through the requiredResourceAccess collection) when calling a resource + application. The requiredResourceAccess property of the Application entity + is a collection of ReqiredResourceAccess. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param resource_access: Required. The list of OAuth2.0 permission scopes + and app roles that the application requires from the specified resource. + :type resource_access: list[~azure.graphrbac.models.ResourceAccess] + :param resource_app_id: The unique identifier for the resource that the + application requires access to. This should be equal to the appId declared + on the target resource application. + :type resource_app_id: str + """ + + _validation = { + 'resource_access': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'resource_access': {'key': 'resourceAccess', 'type': '[ResourceAccess]'}, + 'resource_app_id': {'key': 'resourceAppId', 'type': 'str'}, + } + + def __init__(self, *, resource_access, additional_properties=None, resource_app_id: str=None, **kwargs) -> None: + super(RequiredResourceAccess, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.resource_access = resource_access + self.resource_app_id = resource_app_id diff --git a/azure-graphrbac/azure/graphrbac/models/resource_access.py b/azure-graphrbac/azure/graphrbac/models/resource_access.py index d06699c5739d..be02fa75fc61 100644 --- a/azure-graphrbac/azure/graphrbac/models/resource_access.py +++ b/azure-graphrbac/azure/graphrbac/models/resource_access.py @@ -17,11 +17,13 @@ class ResourceAccess(Model): requires. The resourceAccess property of the RequiredResourceAccess type is a collection of ResourceAccess. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param id: The unique identifier for one of the OAuth2Permission or - AppRole instances that the resource application exposes. + :param id: Required. The unique identifier for one of the OAuth2Permission + or AppRole instances that the resource application exposes. :type id: str :param type: Specifies whether the id property references an OAuth2Permission or an AppRole. Possible values are "scope" or "role". @@ -38,8 +40,8 @@ class ResourceAccess(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self, id, additional_properties=None, type=None): - super(ResourceAccess, self).__init__() - self.additional_properties = additional_properties - self.id = id - self.type = type + def __init__(self, **kwargs): + super(ResourceAccess, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.id = kwargs.get('id', None) + self.type = kwargs.get('type', None) diff --git a/azure-graphrbac/azure/graphrbac/models/resource_access_py3.py b/azure-graphrbac/azure/graphrbac/models/resource_access_py3.py new file mode 100644 index 000000000000..ec6134ea1e0f --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/resource_access_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceAccess(Model): + """Specifies an OAuth 2.0 permission scope or an app role that an application + requires. The resourceAccess property of the RequiredResourceAccess type is + a collection of ResourceAccess. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param id: Required. The unique identifier for one of the OAuth2Permission + or AppRole instances that the resource application exposes. + :type id: str + :param type: Specifies whether the id property references an + OAuth2Permission or an AppRole. Possible values are "scope" or "role". + :type type: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str, additional_properties=None, type: str=None, **kwargs) -> None: + super(ResourceAccess, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.id = id + self.type = type diff --git a/azure-graphrbac/azure/graphrbac/models/service_principal.py b/azure-graphrbac/azure/graphrbac/models/service_principal.py index 37d9382b1c79..d68f9140ce40 100644 --- a/azure-graphrbac/azure/graphrbac/models/service_principal.py +++ b/azure-graphrbac/azure/graphrbac/models/service_principal.py @@ -18,6 +18,8 @@ class ServicePrincipal(DirectoryObject): 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 additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -26,12 +28,16 @@ class ServicePrincipal(DirectoryObject): :ivar deletion_timestamp: The time at which the directory object was deleted. :vartype deletion_timestamp: datetime - :param object_type: Constant filled by server. + :param object_type: Required. Constant filled by server. :type object_type: str :param display_name: The display name of the service principal. :type display_name: str :param app_id: The application ID. :type app_id: str + :param app_roles: The collection of application roles that an application + may declare. These roles can be assigned to users, groups or service + principals. + :type app_roles: list[~azure.graphrbac.models.AppRole] :param service_principal_names: A collection of service principal names. :type service_principal_names: list[str] """ @@ -49,12 +55,14 @@ class ServicePrincipal(DirectoryObject): 'object_type': {'key': 'objectType', 'type': 'str'}, 'display_name': {'key': 'displayName', 'type': 'str'}, 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_roles': {'key': 'appRoles', 'type': '[AppRole]'}, 'service_principal_names': {'key': 'servicePrincipalNames', 'type': '[str]'}, } - def __init__(self, additional_properties=None, display_name=None, app_id=None, service_principal_names=None): - super(ServicePrincipal, self).__init__(additional_properties=additional_properties) - self.display_name = display_name - self.app_id = app_id - self.service_principal_names = service_principal_names + def __init__(self, **kwargs): + super(ServicePrincipal, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.app_id = kwargs.get('app_id', None) + self.app_roles = kwargs.get('app_roles', None) + self.service_principal_names = kwargs.get('service_principal_names', None) self.object_type = 'ServicePrincipal' diff --git a/azure-graphrbac/azure/graphrbac/models/service_principal_create_parameters.py b/azure-graphrbac/azure/graphrbac/models/service_principal_create_parameters.py index 54b49b0e2c8c..40661faa8b45 100644 --- a/azure-graphrbac/azure/graphrbac/models/service_principal_create_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/service_principal_create_parameters.py @@ -15,37 +15,77 @@ class ServicePrincipalCreateParameters(Model): """Request parameters for creating a new service principal. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param app_id: application Id - :type app_id: str :param account_enabled: Whether the account is enabled :type account_enabled: bool + :param app_id: Required. application Id + :type app_id: str + :param app_role_assignment_required: Specifies whether an + AppRoleAssignment to a user or group is required before Azure AD will + issue a user or access token to the application. + :type app_role_assignment_required: bool + :param display_name: The display name for the service principal. + :type display_name: str + :param error_url: + :type error_url: str + :param homepage: The URL to the homepage of the associated application. + :type homepage: str :param key_credentials: A collection of KeyCredential objects. :type key_credentials: list[~azure.graphrbac.models.KeyCredential] :param password_credentials: A collection of PasswordCredential objects :type password_credentials: list[~azure.graphrbac.models.PasswordCredential] + :param publisher_name: The display name of the tenant in which the + associated application is specified. + :type publisher_name: str + :param reply_urls: A collection of reply URLs for the service principal. + :type reply_urls: list[str] + :param saml_metadata_url: + :type saml_metadata_url: str + :param service_principal_names: A collection of service principal names. + :type service_principal_names: list[str] + :param tags: + :type tags: list[str] """ _validation = { 'app_id': {'required': True}, - 'account_enabled': {'required': True}, } _attribute_map = { 'additional_properties': {'key': '', 'type': '{object}'}, - 'app_id': {'key': 'appId', 'type': 'str'}, 'account_enabled': {'key': 'accountEnabled', 'type': 'bool'}, + 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_role_assignment_required': {'key': 'appRoleAssignmentRequired', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'error_url': {'key': 'errorUrl', 'type': 'str'}, + 'homepage': {'key': 'homepage', 'type': 'str'}, 'key_credentials': {'key': 'keyCredentials', 'type': '[KeyCredential]'}, 'password_credentials': {'key': 'passwordCredentials', 'type': '[PasswordCredential]'}, + 'publisher_name': {'key': 'publisherName', 'type': 'str'}, + 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, + 'saml_metadata_url': {'key': 'samlMetadataUrl', 'type': 'str'}, + 'service_principal_names': {'key': 'servicePrincipalNames', 'type': '[str]'}, + 'tags': {'key': 'tags', 'type': '[str]'}, } - def __init__(self, app_id, account_enabled, additional_properties=None, key_credentials=None, password_credentials=None): - super(ServicePrincipalCreateParameters, self).__init__() - self.additional_properties = additional_properties - self.app_id = app_id - self.account_enabled = account_enabled - self.key_credentials = key_credentials - self.password_credentials = password_credentials + def __init__(self, **kwargs): + super(ServicePrincipalCreateParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.account_enabled = kwargs.get('account_enabled', None) + self.app_id = kwargs.get('app_id', None) + self.app_role_assignment_required = kwargs.get('app_role_assignment_required', None) + self.display_name = kwargs.get('display_name', None) + self.error_url = kwargs.get('error_url', None) + self.homepage = kwargs.get('homepage', None) + self.key_credentials = kwargs.get('key_credentials', None) + self.password_credentials = kwargs.get('password_credentials', None) + self.publisher_name = kwargs.get('publisher_name', None) + self.reply_urls = kwargs.get('reply_urls', None) + self.saml_metadata_url = kwargs.get('saml_metadata_url', None) + self.service_principal_names = kwargs.get('service_principal_names', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-graphrbac/azure/graphrbac/models/service_principal_create_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/service_principal_create_parameters_py3.py new file mode 100644 index 000000000000..ee22eac837f2 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/service_principal_create_parameters_py3.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServicePrincipalCreateParameters(Model): + """Request parameters for creating a new service principal. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param account_enabled: Whether the account is enabled + :type account_enabled: bool + :param app_id: Required. application Id + :type app_id: str + :param app_role_assignment_required: Specifies whether an + AppRoleAssignment to a user or group is required before Azure AD will + issue a user or access token to the application. + :type app_role_assignment_required: bool + :param display_name: The display name for the service principal. + :type display_name: str + :param error_url: + :type error_url: str + :param homepage: The URL to the homepage of the associated application. + :type homepage: str + :param key_credentials: A collection of KeyCredential objects. + :type key_credentials: list[~azure.graphrbac.models.KeyCredential] + :param password_credentials: A collection of PasswordCredential objects + :type password_credentials: + list[~azure.graphrbac.models.PasswordCredential] + :param publisher_name: The display name of the tenant in which the + associated application is specified. + :type publisher_name: str + :param reply_urls: A collection of reply URLs for the service principal. + :type reply_urls: list[str] + :param saml_metadata_url: + :type saml_metadata_url: str + :param service_principal_names: A collection of service principal names. + :type service_principal_names: list[str] + :param tags: + :type tags: list[str] + """ + + _validation = { + 'app_id': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'account_enabled': {'key': 'accountEnabled', 'type': 'bool'}, + 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_role_assignment_required': {'key': 'appRoleAssignmentRequired', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'error_url': {'key': 'errorUrl', 'type': 'str'}, + 'homepage': {'key': 'homepage', 'type': 'str'}, + 'key_credentials': {'key': 'keyCredentials', 'type': '[KeyCredential]'}, + 'password_credentials': {'key': 'passwordCredentials', 'type': '[PasswordCredential]'}, + 'publisher_name': {'key': 'publisherName', 'type': 'str'}, + 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, + 'saml_metadata_url': {'key': 'samlMetadataUrl', 'type': 'str'}, + 'service_principal_names': {'key': 'servicePrincipalNames', 'type': '[str]'}, + 'tags': {'key': 'tags', 'type': '[str]'}, + } + + def __init__(self, *, app_id: str, additional_properties=None, account_enabled: bool=None, app_role_assignment_required: bool=None, display_name: str=None, error_url: str=None, homepage: str=None, key_credentials=None, password_credentials=None, publisher_name: str=None, reply_urls=None, saml_metadata_url: str=None, service_principal_names=None, tags=None, **kwargs) -> None: + super(ServicePrincipalCreateParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.account_enabled = account_enabled + self.app_id = app_id + self.app_role_assignment_required = app_role_assignment_required + self.display_name = display_name + self.error_url = error_url + self.homepage = homepage + self.key_credentials = key_credentials + self.password_credentials = password_credentials + self.publisher_name = publisher_name + self.reply_urls = reply_urls + self.saml_metadata_url = saml_metadata_url + self.service_principal_names = service_principal_names + self.tags = tags diff --git a/azure-graphrbac/azure/graphrbac/models/service_principal_py3.py b/azure-graphrbac/azure/graphrbac/models/service_principal_py3.py new file mode 100644 index 000000000000..d9dce61da9b8 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/service_principal_py3.py @@ -0,0 +1,68 @@ +# 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 .directory_object_py3 import DirectoryObject + + +class ServicePrincipal(DirectoryObject): + """Active Directory service principal information. + + 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 additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar object_id: The object ID. + :vartype object_id: str + :ivar deletion_timestamp: The time at which the directory object was + deleted. + :vartype deletion_timestamp: datetime + :param object_type: Required. Constant filled by server. + :type object_type: str + :param display_name: The display name of the service principal. + :type display_name: str + :param app_id: The application ID. + :type app_id: str + :param app_roles: The collection of application roles that an application + may declare. These roles can be assigned to users, groups or service + principals. + :type app_roles: list[~azure.graphrbac.models.AppRole] + :param service_principal_names: A collection of service principal names. + :type service_principal_names: list[str] + """ + + _validation = { + 'object_id': {'readonly': True}, + 'deletion_timestamp': {'readonly': True}, + 'object_type': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + 'deletion_timestamp': {'key': 'deletionTimestamp', 'type': 'iso-8601'}, + 'object_type': {'key': 'objectType', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_roles': {'key': 'appRoles', 'type': '[AppRole]'}, + 'service_principal_names': {'key': 'servicePrincipalNames', 'type': '[str]'}, + } + + def __init__(self, *, additional_properties=None, display_name: str=None, app_id: str=None, app_roles=None, service_principal_names=None, **kwargs) -> None: + super(ServicePrincipal, self).__init__(additional_properties=additional_properties, **kwargs) + self.display_name = display_name + self.app_id = app_id + self.app_roles = app_roles + self.service_principal_names = service_principal_names + self.object_type = 'ServicePrincipal' diff --git a/azure-graphrbac/azure/graphrbac/models/service_principal_update_parameters.py b/azure-graphrbac/azure/graphrbac/models/service_principal_update_parameters.py new file mode 100644 index 000000000000..80b66ea3e4a1 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/service_principal_update_parameters.py @@ -0,0 +1,85 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServicePrincipalUpdateParameters(Model): + """Request parameters for creating a new service principal. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param account_enabled: Whether the account is enabled + :type account_enabled: bool + :param app_id: application Id + :type app_id: str + :param app_role_assignment_required: Specifies whether an + AppRoleAssignment to a user or group is required before Azure AD will + issue a user or access token to the application. + :type app_role_assignment_required: bool + :param display_name: The display name for the service principal. + :type display_name: str + :param error_url: + :type error_url: str + :param homepage: The URL to the homepage of the associated application. + :type homepage: str + :param key_credentials: A collection of KeyCredential objects. + :type key_credentials: list[~azure.graphrbac.models.KeyCredential] + :param password_credentials: A collection of PasswordCredential objects + :type password_credentials: + list[~azure.graphrbac.models.PasswordCredential] + :param publisher_name: The display name of the tenant in which the + associated application is specified. + :type publisher_name: str + :param reply_urls: A collection of reply URLs for the service principal. + :type reply_urls: list[str] + :param saml_metadata_url: + :type saml_metadata_url: str + :param service_principal_names: A collection of service principal names. + :type service_principal_names: list[str] + :param tags: + :type tags: list[str] + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'account_enabled': {'key': 'accountEnabled', 'type': 'bool'}, + 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_role_assignment_required': {'key': 'appRoleAssignmentRequired', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'error_url': {'key': 'errorUrl', 'type': 'str'}, + 'homepage': {'key': 'homepage', 'type': 'str'}, + 'key_credentials': {'key': 'keyCredentials', 'type': '[KeyCredential]'}, + 'password_credentials': {'key': 'passwordCredentials', 'type': '[PasswordCredential]'}, + 'publisher_name': {'key': 'publisherName', 'type': 'str'}, + 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, + 'saml_metadata_url': {'key': 'samlMetadataUrl', 'type': 'str'}, + 'service_principal_names': {'key': 'servicePrincipalNames', 'type': '[str]'}, + 'tags': {'key': 'tags', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ServicePrincipalUpdateParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.account_enabled = kwargs.get('account_enabled', None) + self.app_id = kwargs.get('app_id', None) + self.app_role_assignment_required = kwargs.get('app_role_assignment_required', None) + self.display_name = kwargs.get('display_name', None) + self.error_url = kwargs.get('error_url', None) + self.homepage = kwargs.get('homepage', None) + self.key_credentials = kwargs.get('key_credentials', None) + self.password_credentials = kwargs.get('password_credentials', None) + self.publisher_name = kwargs.get('publisher_name', None) + self.reply_urls = kwargs.get('reply_urls', None) + self.saml_metadata_url = kwargs.get('saml_metadata_url', None) + self.service_principal_names = kwargs.get('service_principal_names', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-graphrbac/azure/graphrbac/models/service_principal_update_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/service_principal_update_parameters_py3.py new file mode 100644 index 000000000000..65312edc9dab --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/service_principal_update_parameters_py3.py @@ -0,0 +1,85 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServicePrincipalUpdateParameters(Model): + """Request parameters for creating a new service principal. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param account_enabled: Whether the account is enabled + :type account_enabled: bool + :param app_id: application Id + :type app_id: str + :param app_role_assignment_required: Specifies whether an + AppRoleAssignment to a user or group is required before Azure AD will + issue a user or access token to the application. + :type app_role_assignment_required: bool + :param display_name: The display name for the service principal. + :type display_name: str + :param error_url: + :type error_url: str + :param homepage: The URL to the homepage of the associated application. + :type homepage: str + :param key_credentials: A collection of KeyCredential objects. + :type key_credentials: list[~azure.graphrbac.models.KeyCredential] + :param password_credentials: A collection of PasswordCredential objects + :type password_credentials: + list[~azure.graphrbac.models.PasswordCredential] + :param publisher_name: The display name of the tenant in which the + associated application is specified. + :type publisher_name: str + :param reply_urls: A collection of reply URLs for the service principal. + :type reply_urls: list[str] + :param saml_metadata_url: + :type saml_metadata_url: str + :param service_principal_names: A collection of service principal names. + :type service_principal_names: list[str] + :param tags: + :type tags: list[str] + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'account_enabled': {'key': 'accountEnabled', 'type': 'bool'}, + 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_role_assignment_required': {'key': 'appRoleAssignmentRequired', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'error_url': {'key': 'errorUrl', 'type': 'str'}, + 'homepage': {'key': 'homepage', 'type': 'str'}, + 'key_credentials': {'key': 'keyCredentials', 'type': '[KeyCredential]'}, + 'password_credentials': {'key': 'passwordCredentials', 'type': '[PasswordCredential]'}, + 'publisher_name': {'key': 'publisherName', 'type': 'str'}, + 'reply_urls': {'key': 'replyUrls', 'type': '[str]'}, + 'saml_metadata_url': {'key': 'samlMetadataUrl', 'type': 'str'}, + 'service_principal_names': {'key': 'servicePrincipalNames', 'type': '[str]'}, + 'tags': {'key': 'tags', 'type': '[str]'}, + } + + def __init__(self, *, additional_properties=None, account_enabled: bool=None, app_id: str=None, app_role_assignment_required: bool=None, display_name: str=None, error_url: str=None, homepage: str=None, key_credentials=None, password_credentials=None, publisher_name: str=None, reply_urls=None, saml_metadata_url: str=None, service_principal_names=None, tags=None, **kwargs) -> None: + super(ServicePrincipalUpdateParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.account_enabled = account_enabled + self.app_id = app_id + self.app_role_assignment_required = app_role_assignment_required + self.display_name = display_name + self.error_url = error_url + self.homepage = homepage + self.key_credentials = key_credentials + self.password_credentials = password_credentials + self.publisher_name = publisher_name + self.reply_urls = reply_urls + self.saml_metadata_url = saml_metadata_url + self.service_principal_names = service_principal_names + self.tags = tags diff --git a/azure-graphrbac/azure/graphrbac/models/sign_in_name.py b/azure-graphrbac/azure/graphrbac/models/sign_in_name.py index eff41300e667..88bc84483e95 100644 --- a/azure-graphrbac/azure/graphrbac/models/sign_in_name.py +++ b/azure-graphrbac/azure/graphrbac/models/sign_in_name.py @@ -33,8 +33,8 @@ class SignInName(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, additional_properties=None, type=None, value=None): - super(SignInName, self).__init__() - self.additional_properties = additional_properties - self.type = type - self.value = value + def __init__(self, **kwargs): + super(SignInName, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.type = kwargs.get('type', None) + self.value = kwargs.get('value', None) diff --git a/azure-graphrbac/azure/graphrbac/models/sign_in_name_py3.py b/azure-graphrbac/azure/graphrbac/models/sign_in_name_py3.py new file mode 100644 index 000000000000..5832de5e8285 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/sign_in_name_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SignInName(Model): + """Contains information about a sign-in name of a local account user in an + Azure Active Directory B2C tenant. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param type: A string value that can be used to classify user sign-in + types in your directory, such as 'emailAddress' or 'userName'. + :type type: str + :param value: The sign-in used by the local account. Must be unique across + the company/tenant. For example, 'johnc@example.com'. + :type value: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, type: str=None, value: str=None, **kwargs) -> None: + super(SignInName, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.type = type + self.value = value diff --git a/azure-graphrbac/azure/graphrbac/models/user.py b/azure-graphrbac/azure/graphrbac/models/user.py index bfe788dc93c9..f9416be17c45 100644 --- a/azure-graphrbac/azure/graphrbac/models/user.py +++ b/azure-graphrbac/azure/graphrbac/models/user.py @@ -18,6 +18,8 @@ class User(DirectoryObject): 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 additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -26,7 +28,7 @@ class User(DirectoryObject): :ivar deletion_timestamp: The time at which the directory object was deleted. :vartype deletion_timestamp: datetime - :param object_type: Constant filled by server. + :param object_type: Required. Constant filled by server. :type object_type: str :param immutable_id: This must be specified if you are using a federated domain for the user's userPrincipalName (UPN) property when creating a new @@ -84,17 +86,17 @@ class User(DirectoryObject): 'sign_in_names': {'key': 'signInNames', 'type': '[SignInName]'}, } - def __init__(self, additional_properties=None, immutable_id=None, usage_location=None, given_name=None, surname=None, user_type=None, account_enabled=None, display_name=None, user_principal_name=None, mail_nickname=None, mail=None, sign_in_names=None): - super(User, self).__init__(additional_properties=additional_properties) - self.immutable_id = immutable_id - self.usage_location = usage_location - self.given_name = given_name - self.surname = surname - self.user_type = user_type - self.account_enabled = account_enabled - self.display_name = display_name - self.user_principal_name = user_principal_name - self.mail_nickname = mail_nickname - self.mail = mail - self.sign_in_names = sign_in_names + def __init__(self, **kwargs): + super(User, self).__init__(**kwargs) + self.immutable_id = kwargs.get('immutable_id', None) + self.usage_location = kwargs.get('usage_location', None) + self.given_name = kwargs.get('given_name', None) + self.surname = kwargs.get('surname', None) + self.user_type = kwargs.get('user_type', None) + self.account_enabled = kwargs.get('account_enabled', None) + self.display_name = kwargs.get('display_name', None) + self.user_principal_name = kwargs.get('user_principal_name', None) + self.mail_nickname = kwargs.get('mail_nickname', None) + self.mail = kwargs.get('mail', None) + self.sign_in_names = kwargs.get('sign_in_names', None) self.object_type = 'User' diff --git a/azure-graphrbac/azure/graphrbac/models/user_base.py b/azure-graphrbac/azure/graphrbac/models/user_base.py index ce960c2802cc..a5c4da02444f 100644 --- a/azure-graphrbac/azure/graphrbac/models/user_base.py +++ b/azure-graphrbac/azure/graphrbac/models/user_base.py @@ -47,11 +47,11 @@ class UserBase(Model): 'user_type': {'key': 'userType', 'type': 'str'}, } - def __init__(self, additional_properties=None, immutable_id=None, usage_location=None, given_name=None, surname=None, user_type=None): - super(UserBase, self).__init__() - self.additional_properties = additional_properties - self.immutable_id = immutable_id - self.usage_location = usage_location - self.given_name = given_name - self.surname = surname - self.user_type = user_type + def __init__(self, **kwargs): + super(UserBase, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.immutable_id = kwargs.get('immutable_id', None) + self.usage_location = kwargs.get('usage_location', None) + self.given_name = kwargs.get('given_name', None) + self.surname = kwargs.get('surname', None) + self.user_type = kwargs.get('user_type', None) diff --git a/azure-graphrbac/azure/graphrbac/models/user_base_py3.py b/azure-graphrbac/azure/graphrbac/models/user_base_py3.py new file mode 100644 index 000000000000..14c1fc0d3ab6 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/user_base_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserBase(Model): + """UserBase. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param immutable_id: This must be specified if you are using a federated + domain for the user's userPrincipalName (UPN) property when creating a new + user account. It is used to associate an on-premises Active Directory user + account with their Azure AD user object. + :type immutable_id: str + :param usage_location: A two letter country code (ISO standard 3166). + Required for users that will be assigned licenses due to legal requirement + to check for availability of services in countries. Examples include: + "US", "JP", and "GB". + :type usage_location: str + :param given_name: The given name for the user. + :type given_name: str + :param surname: The user's surname (family name or last name). + :type surname: str + :param user_type: A string value that can be used to classify user types + in your directory, such as 'Member' and 'Guest'. Possible values include: + 'Member', 'Guest' + :type user_type: str or ~azure.graphrbac.models.UserType + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'immutable_id': {'key': 'immutableId', 'type': 'str'}, + 'usage_location': {'key': 'usageLocation', 'type': 'str'}, + 'given_name': {'key': 'givenName', 'type': 'str'}, + 'surname': {'key': 'surname', 'type': 'str'}, + 'user_type': {'key': 'userType', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, immutable_id: str=None, usage_location: str=None, given_name: str=None, surname: str=None, user_type=None, **kwargs) -> None: + super(UserBase, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.immutable_id = immutable_id + self.usage_location = usage_location + self.given_name = given_name + self.surname = surname + self.user_type = user_type diff --git a/azure-graphrbac/azure/graphrbac/models/user_create_parameters.py b/azure-graphrbac/azure/graphrbac/models/user_create_parameters.py index 214a3fc6bf5c..1491954f50c2 100644 --- a/azure-graphrbac/azure/graphrbac/models/user_create_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/user_create_parameters.py @@ -15,6 +15,8 @@ class UserCreateParameters(UserBase): """Request parameters for creating a new work or school account user. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] @@ -36,17 +38,17 @@ class UserCreateParameters(UserBase): in your directory, such as 'Member' and 'Guest'. Possible values include: 'Member', 'Guest' :type user_type: str or ~azure.graphrbac.models.UserType - :param account_enabled: Whether the account is enabled. + :param account_enabled: Required. Whether the account is enabled. :type account_enabled: bool - :param display_name: The display name of the user. + :param display_name: Required. The display name of the user. :type display_name: str - :param password_profile: Password Profile + :param password_profile: Required. Password Profile :type password_profile: ~azure.graphrbac.models.PasswordProfile - :param user_principal_name: The user principal name + :param user_principal_name: Required. The user principal name (someuser@contoso.com). It must contain one of the verified domains for the tenant. :type user_principal_name: str - :param mail_nickname: The mail alias for the user. + :param mail_nickname: Required. The mail alias for the user. :type mail_nickname: str :param mail: The primary email address of the user. :type mail: str @@ -75,11 +77,11 @@ class UserCreateParameters(UserBase): 'mail': {'key': 'mail', 'type': 'str'}, } - def __init__(self, account_enabled, display_name, password_profile, user_principal_name, mail_nickname, additional_properties=None, immutable_id=None, usage_location=None, given_name=None, surname=None, user_type=None, mail=None): - super(UserCreateParameters, self).__init__(additional_properties=additional_properties, immutable_id=immutable_id, usage_location=usage_location, given_name=given_name, surname=surname, user_type=user_type) - self.account_enabled = account_enabled - self.display_name = display_name - self.password_profile = password_profile - self.user_principal_name = user_principal_name - self.mail_nickname = mail_nickname - self.mail = mail + def __init__(self, **kwargs): + super(UserCreateParameters, self).__init__(**kwargs) + self.account_enabled = kwargs.get('account_enabled', None) + self.display_name = kwargs.get('display_name', None) + self.password_profile = kwargs.get('password_profile', None) + self.user_principal_name = kwargs.get('user_principal_name', None) + self.mail_nickname = kwargs.get('mail_nickname', None) + self.mail = kwargs.get('mail', None) diff --git a/azure-graphrbac/azure/graphrbac/models/user_create_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/user_create_parameters_py3.py new file mode 100644 index 000000000000..9d3d79e6aa06 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/user_create_parameters_py3.py @@ -0,0 +1,87 @@ +# 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 .user_base_py3 import UserBase + + +class UserCreateParameters(UserBase): + """Request parameters for creating a new work or school account user. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param immutable_id: This must be specified if you are using a federated + domain for the user's userPrincipalName (UPN) property when creating a new + user account. It is used to associate an on-premises Active Directory user + account with their Azure AD user object. + :type immutable_id: str + :param usage_location: A two letter country code (ISO standard 3166). + Required for users that will be assigned licenses due to legal requirement + to check for availability of services in countries. Examples include: + "US", "JP", and "GB". + :type usage_location: str + :param given_name: The given name for the user. + :type given_name: str + :param surname: The user's surname (family name or last name). + :type surname: str + :param user_type: A string value that can be used to classify user types + in your directory, such as 'Member' and 'Guest'. Possible values include: + 'Member', 'Guest' + :type user_type: str or ~azure.graphrbac.models.UserType + :param account_enabled: Required. Whether the account is enabled. + :type account_enabled: bool + :param display_name: Required. The display name of the user. + :type display_name: str + :param password_profile: Required. Password Profile + :type password_profile: ~azure.graphrbac.models.PasswordProfile + :param user_principal_name: Required. The user principal name + (someuser@contoso.com). It must contain one of the verified domains for + the tenant. + :type user_principal_name: str + :param mail_nickname: Required. The mail alias for the user. + :type mail_nickname: str + :param mail: The primary email address of the user. + :type mail: str + """ + + _validation = { + 'account_enabled': {'required': True}, + 'display_name': {'required': True}, + 'password_profile': {'required': True}, + 'user_principal_name': {'required': True}, + 'mail_nickname': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'immutable_id': {'key': 'immutableId', 'type': 'str'}, + 'usage_location': {'key': 'usageLocation', 'type': 'str'}, + 'given_name': {'key': 'givenName', 'type': 'str'}, + 'surname': {'key': 'surname', 'type': 'str'}, + 'user_type': {'key': 'userType', 'type': 'str'}, + 'account_enabled': {'key': 'accountEnabled', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'password_profile': {'key': 'passwordProfile', 'type': 'PasswordProfile'}, + 'user_principal_name': {'key': 'userPrincipalName', 'type': 'str'}, + 'mail_nickname': {'key': 'mailNickname', 'type': 'str'}, + 'mail': {'key': 'mail', 'type': 'str'}, + } + + def __init__(self, *, account_enabled: bool, display_name: str, password_profile, user_principal_name: str, mail_nickname: str, additional_properties=None, immutable_id: str=None, usage_location: str=None, given_name: str=None, surname: str=None, user_type=None, mail: str=None, **kwargs) -> None: + super(UserCreateParameters, self).__init__(additional_properties=additional_properties, immutable_id=immutable_id, usage_location=usage_location, given_name=given_name, surname=surname, user_type=user_type, **kwargs) + self.account_enabled = account_enabled + self.display_name = display_name + self.password_profile = password_profile + self.user_principal_name = user_principal_name + self.mail_nickname = mail_nickname + self.mail = mail diff --git a/azure-graphrbac/azure/graphrbac/models/user_get_member_groups_parameters.py b/azure-graphrbac/azure/graphrbac/models/user_get_member_groups_parameters.py index 2aa519ad80c2..e0938a126279 100644 --- a/azure-graphrbac/azure/graphrbac/models/user_get_member_groups_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/user_get_member_groups_parameters.py @@ -15,12 +15,14 @@ class UserGetMemberGroupsParameters(Model): """Request parameters for GetMemberGroups API call. + All required parameters must be populated in order to send to Azure. + :param additional_properties: Unmatched properties from the message are deserialized this collection :type additional_properties: dict[str, object] - :param security_enabled_only: If true, only membership in security-enabled - groups should be checked. Otherwise, membership in all groups should be - checked. + :param security_enabled_only: Required. If true, only membership in + security-enabled groups should be checked. Otherwise, membership in all + groups should be checked. :type security_enabled_only: bool """ @@ -33,7 +35,7 @@ class UserGetMemberGroupsParameters(Model): 'security_enabled_only': {'key': 'securityEnabledOnly', 'type': 'bool'}, } - def __init__(self, security_enabled_only, additional_properties=None): - super(UserGetMemberGroupsParameters, self).__init__() - self.additional_properties = additional_properties - self.security_enabled_only = security_enabled_only + def __init__(self, **kwargs): + super(UserGetMemberGroupsParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.security_enabled_only = kwargs.get('security_enabled_only', None) diff --git a/azure-graphrbac/azure/graphrbac/models/user_get_member_groups_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/user_get_member_groups_parameters_py3.py new file mode 100644 index 000000000000..5dec7dd33e14 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/user_get_member_groups_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserGetMemberGroupsParameters(Model): + """Request parameters for GetMemberGroups API call. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param security_enabled_only: Required. If true, only membership in + security-enabled groups should be checked. Otherwise, membership in all + groups should be checked. + :type security_enabled_only: bool + """ + + _validation = { + 'security_enabled_only': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'security_enabled_only': {'key': 'securityEnabledOnly', 'type': 'bool'}, + } + + def __init__(self, *, security_enabled_only: bool, additional_properties=None, **kwargs) -> None: + super(UserGetMemberGroupsParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.security_enabled_only = security_enabled_only diff --git a/azure-graphrbac/azure/graphrbac/models/user_py3.py b/azure-graphrbac/azure/graphrbac/models/user_py3.py new file mode 100644 index 000000000000..69975f146353 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/user_py3.py @@ -0,0 +1,102 @@ +# 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 .directory_object_py3 import DirectoryObject + + +class User(DirectoryObject): + """Active Directory user information. + + 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 additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar object_id: The object ID. + :vartype object_id: str + :ivar deletion_timestamp: The time at which the directory object was + deleted. + :vartype deletion_timestamp: datetime + :param object_type: Required. Constant filled by server. + :type object_type: str + :param immutable_id: This must be specified if you are using a federated + domain for the user's userPrincipalName (UPN) property when creating a new + user account. It is used to associate an on-premises Active Directory user + account with their Azure AD user object. + :type immutable_id: str + :param usage_location: A two letter country code (ISO standard 3166). + Required for users that will be assigned licenses due to legal requirement + to check for availability of services in countries. Examples include: + "US", "JP", and "GB". + :type usage_location: str + :param given_name: The given name for the user. + :type given_name: str + :param surname: The user's surname (family name or last name). + :type surname: str + :param user_type: A string value that can be used to classify user types + in your directory, such as 'Member' and 'Guest'. Possible values include: + 'Member', 'Guest' + :type user_type: str or ~azure.graphrbac.models.UserType + :param account_enabled: Whether the account is enabled. + :type account_enabled: bool + :param display_name: The display name of the user. + :type display_name: str + :param user_principal_name: The principal name of the user. + :type user_principal_name: str + :param mail_nickname: The mail alias for the user. + :type mail_nickname: str + :param mail: The primary email address of the user. + :type mail: str + :param sign_in_names: The sign-in names of the user. + :type sign_in_names: list[~azure.graphrbac.models.SignInName] + """ + + _validation = { + 'object_id': {'readonly': True}, + 'deletion_timestamp': {'readonly': True}, + 'object_type': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'object_id': {'key': 'objectId', 'type': 'str'}, + 'deletion_timestamp': {'key': 'deletionTimestamp', 'type': 'iso-8601'}, + 'object_type': {'key': 'objectType', 'type': 'str'}, + 'immutable_id': {'key': 'immutableId', 'type': 'str'}, + 'usage_location': {'key': 'usageLocation', 'type': 'str'}, + 'given_name': {'key': 'givenName', 'type': 'str'}, + 'surname': {'key': 'surname', 'type': 'str'}, + 'user_type': {'key': 'userType', 'type': 'str'}, + 'account_enabled': {'key': 'accountEnabled', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'user_principal_name': {'key': 'userPrincipalName', 'type': 'str'}, + 'mail_nickname': {'key': 'mailNickname', 'type': 'str'}, + 'mail': {'key': 'mail', 'type': 'str'}, + 'sign_in_names': {'key': 'signInNames', 'type': '[SignInName]'}, + } + + def __init__(self, *, additional_properties=None, immutable_id: str=None, usage_location: str=None, given_name: str=None, surname: str=None, user_type=None, account_enabled: bool=None, display_name: str=None, user_principal_name: str=None, mail_nickname: str=None, mail: str=None, sign_in_names=None, **kwargs) -> None: + super(User, self).__init__(additional_properties=additional_properties, **kwargs) + self.immutable_id = immutable_id + self.usage_location = usage_location + self.given_name = given_name + self.surname = surname + self.user_type = user_type + self.account_enabled = account_enabled + self.display_name = display_name + self.user_principal_name = user_principal_name + self.mail_nickname = mail_nickname + self.mail = mail + self.sign_in_names = sign_in_names + self.object_type = 'User' diff --git a/azure-graphrbac/azure/graphrbac/models/user_update_parameters.py b/azure-graphrbac/azure/graphrbac/models/user_update_parameters.py index 06a097245b73..a5e7a6e2f8e4 100644 --- a/azure-graphrbac/azure/graphrbac/models/user_update_parameters.py +++ b/azure-graphrbac/azure/graphrbac/models/user_update_parameters.py @@ -64,10 +64,10 @@ class UserUpdateParameters(UserBase): 'mail_nickname': {'key': 'mailNickname', 'type': 'str'}, } - def __init__(self, additional_properties=None, immutable_id=None, usage_location=None, given_name=None, surname=None, user_type=None, account_enabled=None, display_name=None, password_profile=None, user_principal_name=None, mail_nickname=None): - super(UserUpdateParameters, self).__init__(additional_properties=additional_properties, immutable_id=immutable_id, usage_location=usage_location, given_name=given_name, surname=surname, user_type=user_type) - self.account_enabled = account_enabled - self.display_name = display_name - self.password_profile = password_profile - self.user_principal_name = user_principal_name - self.mail_nickname = mail_nickname + def __init__(self, **kwargs): + super(UserUpdateParameters, self).__init__(**kwargs) + self.account_enabled = kwargs.get('account_enabled', None) + self.display_name = kwargs.get('display_name', None) + self.password_profile = kwargs.get('password_profile', None) + self.user_principal_name = kwargs.get('user_principal_name', None) + self.mail_nickname = kwargs.get('mail_nickname', None) diff --git a/azure-graphrbac/azure/graphrbac/models/user_update_parameters_py3.py b/azure-graphrbac/azure/graphrbac/models/user_update_parameters_py3.py new file mode 100644 index 000000000000..c23ec766e26b --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/models/user_update_parameters_py3.py @@ -0,0 +1,73 @@ +# 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 .user_base_py3 import UserBase + + +class UserUpdateParameters(UserBase): + """Request parameters for updating an existing work or school account user. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param immutable_id: This must be specified if you are using a federated + domain for the user's userPrincipalName (UPN) property when creating a new + user account. It is used to associate an on-premises Active Directory user + account with their Azure AD user object. + :type immutable_id: str + :param usage_location: A two letter country code (ISO standard 3166). + Required for users that will be assigned licenses due to legal requirement + to check for availability of services in countries. Examples include: + "US", "JP", and "GB". + :type usage_location: str + :param given_name: The given name for the user. + :type given_name: str + :param surname: The user's surname (family name or last name). + :type surname: str + :param user_type: A string value that can be used to classify user types + in your directory, such as 'Member' and 'Guest'. Possible values include: + 'Member', 'Guest' + :type user_type: str or ~azure.graphrbac.models.UserType + :param account_enabled: Whether the account is enabled. + :type account_enabled: bool + :param display_name: The display name of the user. + :type display_name: str + :param password_profile: The password profile of the user. + :type password_profile: ~azure.graphrbac.models.PasswordProfile + :param user_principal_name: The user principal name + (someuser@contoso.com). It must contain one of the verified domains for + the tenant. + :type user_principal_name: str + :param mail_nickname: The mail alias for the user. + :type mail_nickname: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'immutable_id': {'key': 'immutableId', 'type': 'str'}, + 'usage_location': {'key': 'usageLocation', 'type': 'str'}, + 'given_name': {'key': 'givenName', 'type': 'str'}, + 'surname': {'key': 'surname', 'type': 'str'}, + 'user_type': {'key': 'userType', 'type': 'str'}, + 'account_enabled': {'key': 'accountEnabled', 'type': 'bool'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'password_profile': {'key': 'passwordProfile', 'type': 'PasswordProfile'}, + 'user_principal_name': {'key': 'userPrincipalName', 'type': 'str'}, + 'mail_nickname': {'key': 'mailNickname', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, immutable_id: str=None, usage_location: str=None, given_name: str=None, surname: str=None, user_type=None, account_enabled: bool=None, display_name: str=None, password_profile=None, user_principal_name: str=None, mail_nickname: str=None, **kwargs) -> None: + super(UserUpdateParameters, self).__init__(additional_properties=additional_properties, immutable_id=immutable_id, usage_location=usage_location, given_name=given_name, surname=surname, user_type=user_type, **kwargs) + self.account_enabled = account_enabled + self.display_name = display_name + self.password_profile = password_profile + self.user_principal_name = user_principal_name + self.mail_nickname = mail_nickname diff --git a/azure-graphrbac/azure/graphrbac/operations/__init__.py b/azure-graphrbac/azure/graphrbac/operations/__init__.py index ad229d630696..8ca6c17b5fa2 100644 --- a/azure-graphrbac/azure/graphrbac/operations/__init__.py +++ b/azure-graphrbac/azure/graphrbac/operations/__init__.py @@ -9,18 +9,24 @@ # regenerated. # -------------------------------------------------------------------------- -from .objects_operations import ObjectsOperations +from .signed_in_user_operations import SignedInUserOperations from .applications_operations import ApplicationsOperations +from .deleted_applications_operations import DeletedApplicationsOperations from .groups_operations import GroupsOperations from .service_principals_operations import ServicePrincipalsOperations from .users_operations import UsersOperations +from .objects_operations import ObjectsOperations from .domains_operations import DomainsOperations +from .oauth2_operations import OAuth2Operations __all__ = [ - 'ObjectsOperations', + 'SignedInUserOperations', 'ApplicationsOperations', + 'DeletedApplicationsOperations', 'GroupsOperations', 'ServicePrincipalsOperations', 'UsersOperations', + 'ObjectsOperations', 'DomainsOperations', + 'OAuth2Operations', ] diff --git a/azure-graphrbac/azure/graphrbac/operations/applications_operations.py b/azure-graphrbac/azure/graphrbac/operations/applications_operations.py index a489a1550d7c..7740b9d7e6d3 100644 --- a/azure-graphrbac/azure/graphrbac/operations/applications_operations.py +++ b/azure-graphrbac/azure/graphrbac/operations/applications_operations.py @@ -21,7 +21,7 @@ class ApplicationsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: Client API version. Constant value: "1.6". """ @@ -54,7 +54,7 @@ def create( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/applications' + url = self.create.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -66,6 +66,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -78,9 +79,8 @@ def create( body_content = self._serialize.body(parameters, 'ApplicationCreateParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.GraphErrorException(self._deserialize, response) @@ -95,6 +95,7 @@ def create( return client_raw_response return deserialized + create.metadata = {'url': '/{tenantID}/applications'} def list( self, filter=None, custom_headers=None, raw=False, **operation_config): @@ -117,7 +118,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/applications' + url = self.list.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -141,7 +142,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -150,9 +151,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -168,6 +168,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/{tenantID}/applications'} def delete( self, application_object_id, custom_headers=None, raw=False, **operation_config): @@ -186,7 +187,7 @@ def delete( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}' + url = self.delete.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -199,7 +200,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -208,8 +208,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -217,6 +217,7 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}'} def get( self, application_object_id, custom_headers=None, raw=False, **operation_config): @@ -236,7 +237,7 @@ def get( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}' + url = self.get.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -249,7 +250,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -258,8 +259,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -274,6 +275,7 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}'} def patch( self, application_object_id, parameters, custom_headers=None, raw=False, **operation_config): @@ -294,7 +296,7 @@ def patch( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}' + url = self.patch.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -319,9 +321,8 @@ def patch( body_content = self._serialize.body(parameters, 'ApplicationUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -329,6 +330,7 @@ def patch( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + patch.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}'} def list_owners( self, application_object_id, custom_headers=None, raw=False, **operation_config): @@ -355,7 +357,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}/owners' + url = self.list_owners.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -372,7 +374,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -381,9 +383,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -399,6 +400,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_owners.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}/owners'} def add_owner( self, application_object_id, url, additional_properties=None, custom_headers=None, raw=False, **operation_config): @@ -426,10 +428,10 @@ def add_owner( :raises: :class:`GraphErrorException` """ - parameters = models.ApplicationAddOwnerParameters(additional_properties=additional_properties, url=url) + parameters = models.AddOwnerParameters(additional_properties=additional_properties, url=url) # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}/$links/owners' + url = self.add_owner.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -451,12 +453,64 @@ def add_owner( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(parameters, 'ApplicationAddOwnerParameters') + body_content = self._serialize.body(parameters, 'AddOwnerParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.GraphErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + add_owner.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}/$links/owners'} + + def remove_owner( + self, application_object_id, owner_object_id, custom_headers=None, raw=False, **operation_config): + """Remove a member from owners. + + :param application_object_id: The object ID of the application from + which to remove the owner. + :type application_object_id: str + :param owner_object_id: Owner object id + :type owner_object_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`GraphErrorException` + """ + # Construct URL + url = self.remove_owner.metadata['url'] + path_format_arguments = { + 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), + 'ownerObjectId': self._serialize.url("owner_object_id", owner_object_id, 'str'), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -464,6 +518,7 @@ def add_owner( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + remove_owner.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}/$links/owners/{ownerObjectId}'} def list_key_credentials( self, application_object_id, custom_headers=None, raw=False, **operation_config): @@ -486,7 +541,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}/keyCredentials' + url = self.list_key_credentials.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -503,7 +558,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +567,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -530,6 +584,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_key_credentials.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}/keyCredentials'} def update_key_credentials( self, application_object_id, value, custom_headers=None, raw=False, **operation_config): @@ -552,7 +607,7 @@ def update_key_credentials( parameters = models.KeyCredentialsUpdateParameters(value=value) # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}/keyCredentials' + url = self.update_key_credentials.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -577,9 +632,8 @@ def update_key_credentials( body_content = self._serialize.body(parameters, 'KeyCredentialsUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -587,6 +641,7 @@ def update_key_credentials( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update_key_credentials.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}/keyCredentials'} def list_password_credentials( self, application_object_id, custom_headers=None, raw=False, **operation_config): @@ -609,7 +664,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}/passwordCredentials' + url = self.list_password_credentials.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -626,7 +681,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -635,9 +690,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -653,6 +707,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_password_credentials.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}/passwordCredentials'} def update_password_credentials( self, application_object_id, value, custom_headers=None, raw=False, **operation_config): @@ -675,7 +730,7 @@ def update_password_credentials( parameters = models.PasswordCredentialsUpdateParameters(value=value) # Construct URL - url = '/{tenantID}/applications/{applicationObjectId}/passwordCredentials' + url = self.update_password_credentials.metadata['url'] path_format_arguments = { 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -700,9 +755,8 @@ def update_password_credentials( body_content = self._serialize.body(parameters, 'PasswordCredentialsUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -710,3 +764,4 @@ def update_password_credentials( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update_password_credentials.metadata = {'url': '/{tenantID}/applications/{applicationObjectId}/passwordCredentials'} diff --git a/azure-graphrbac/azure/graphrbac/operations/deleted_applications_operations.py b/azure-graphrbac/azure/graphrbac/operations/deleted_applications_operations.py new file mode 100644 index 000000000000..132c5f3e9915 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/operations/deleted_applications_operations.py @@ -0,0 +1,217 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class DeletedApplicationsOperations(object): + """DeletedApplicationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "1.6". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "1.6" + + self.config = config + + def restore( + self, object_id, custom_headers=None, raw=False, **operation_config): + """Restores the deleted application in the directory. + + :param object_id: Application object ID. + :type object_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Application or ClientRawResponse if raw=true + :rtype: ~azure.graphrbac.models.Application or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`GraphErrorException` + """ + # Construct URL + url = self.restore.metadata['url'] + path_format_arguments = { + 'objectId': self._serialize.url("object_id", object_id, 'str'), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.GraphErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Application', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + restore.metadata = {'url': '/{tenantID}/deletedApplications/{objectId}/restore'} + + def list( + self, filter=None, custom_headers=None, raw=False, **operation_config): + """Gets a list of deleted applications in the directory. + + :param filter: The filter to apply to the operation. + :type filter: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Application + :rtype: + ~azure.graphrbac.models.ApplicationPaged[~azure.graphrbac.models.Application] + :raises: + :class:`GraphErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = '/{tenantID}/{nextLink}' + path_format_arguments = { + 'nextLink': self._serialize.url("next_link", next_link, 'str', skip_quote=True), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.GraphErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ApplicationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/{tenantID}/deletedApplications'} + + def hard_delete( + self, application_object_id, custom_headers=None, raw=False, **operation_config): + """Hard-delete an application. + + :param application_object_id: Application object ID. + :type application_object_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`GraphErrorException` + """ + # Construct URL + url = self.hard_delete.metadata['url'] + path_format_arguments = { + 'applicationObjectId': self._serialize.url("application_object_id", application_object_id, 'str'), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.GraphErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + hard_delete.metadata = {'url': '/{tenantID}/deletedApplications/{applicationObjectId}'} diff --git a/azure-graphrbac/azure/graphrbac/operations/domains_operations.py b/azure-graphrbac/azure/graphrbac/operations/domains_operations.py index c54bc81edbba..f5c27702d0a5 100644 --- a/azure-graphrbac/azure/graphrbac/operations/domains_operations.py +++ b/azure-graphrbac/azure/graphrbac/operations/domains_operations.py @@ -22,7 +22,7 @@ class DomainsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: Client API version. Constant value: "1.6". """ @@ -57,7 +57,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/domains' + url = self.list.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -75,7 +75,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,9 +84,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -104,6 +103,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/{tenantID}/domains'} def get( self, domain_name, custom_headers=None, raw=False, **operation_config): @@ -122,7 +122,7 @@ def get( :raises: :class:`CloudError` """ # Construct URL - url = '/{tenantID}/domains/{domainName}' + url = self.get.metadata['url'] path_format_arguments = { 'domainName': self._serialize.url("domain_name", domain_name, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -135,7 +135,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -144,8 +144,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -162,3 +162,4 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/{tenantID}/domains/{domainName}'} diff --git a/azure-graphrbac/azure/graphrbac/operations/groups_operations.py b/azure-graphrbac/azure/graphrbac/operations/groups_operations.py index 3b58ef252076..c9f18954ebe6 100644 --- a/azure-graphrbac/azure/graphrbac/operations/groups_operations.py +++ b/azure-graphrbac/azure/graphrbac/operations/groups_operations.py @@ -21,7 +21,7 @@ class GroupsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: Client API version. Constant value: "1.6". """ @@ -56,7 +56,7 @@ def is_member_of( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/isMemberOf' + url = self.is_member_of.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -68,6 +68,7 @@ def is_member_of( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -80,9 +81,8 @@ def is_member_of( body_content = self._serialize.body(parameters, 'CheckGroupMembershipParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -97,6 +97,7 @@ def is_member_of( return client_raw_response return deserialized + is_member_of.metadata = {'url': '/{tenantID}/isMemberOf'} def remove_member( self, group_object_id, member_object_id, custom_headers=None, raw=False, **operation_config): @@ -118,7 +119,7 @@ def remove_member( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/groups/{groupObjectId}/$links/members/{memberObjectId}' + url = self.remove_member.metadata['url'] path_format_arguments = { 'groupObjectId': self._serialize.url("group_object_id", group_object_id, 'str'), 'memberObjectId': self._serialize.url("member_object_id", member_object_id, 'str'), @@ -132,7 +133,6 @@ def remove_member( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -141,8 +141,8 @@ def remove_member( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -150,6 +150,7 @@ def remove_member( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + remove_member.metadata = {'url': '/{tenantID}/groups/{groupObjectId}/$links/members/{memberObjectId}'} def add_member( self, group_object_id, url, additional_properties=None, custom_headers=None, raw=False, **operation_config): @@ -180,7 +181,7 @@ def add_member( parameters = models.GroupAddMemberParameters(additional_properties=additional_properties, url=url) # Construct URL - url = '/{tenantID}/groups/{groupObjectId}/$links/members' + url = self.add_member.metadata['url'] path_format_arguments = { 'groupObjectId': self._serialize.url("group_object_id", group_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -205,9 +206,8 @@ def add_member( body_content = self._serialize.body(parameters, 'GroupAddMemberParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -215,6 +215,7 @@ def add_member( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + add_member.metadata = {'url': '/{tenantID}/groups/{groupObjectId}/$links/members'} def create( self, parameters, custom_headers=None, raw=False, **operation_config): @@ -234,7 +235,7 @@ def create( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/groups' + url = self.create.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -246,6 +247,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -258,9 +260,8 @@ def create( body_content = self._serialize.body(parameters, 'GroupCreateParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.GraphErrorException(self._deserialize, response) @@ -275,6 +276,7 @@ def create( return client_raw_response return deserialized + create.metadata = {'url': '/{tenantID}/groups'} def list( self, filter=None, custom_headers=None, raw=False, **operation_config): @@ -297,7 +299,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/groups' + url = self.list.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -321,7 +323,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -330,9 +332,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -348,6 +349,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/{tenantID}/groups'} def get_group_members( self, object_id, custom_headers=None, raw=False, **operation_config): @@ -361,9 +363,9 @@ def get_group_members( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of AADObject + :return: An iterator like instance of DirectoryObject :rtype: - ~azure.graphrbac.models.AADObjectPaged[~azure.graphrbac.models.AADObject] + ~azure.graphrbac.models.DirectoryObjectPaged[~azure.graphrbac.models.DirectoryObject] :raises: :class:`GraphErrorException` """ @@ -371,7 +373,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/groups/{objectId}/members' + url = self.get_group_members.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -394,7 +396,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -403,9 +405,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -413,14 +414,15 @@ def internal_paging(next_link=None, raw=False): return response # Deserialize response - deserialized = models.AADObjectPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.DirectoryObjectPaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.AADObjectPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.DirectoryObjectPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized + get_group_members.metadata = {'url': '/{tenantID}/groups/{objectId}/members'} def get( self, object_id, custom_headers=None, raw=False, **operation_config): @@ -441,7 +443,7 @@ def get( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/groups/{objectId}' + url = self.get.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -454,7 +456,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -463,8 +465,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -479,6 +481,7 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/{tenantID}/groups/{objectId}'} def delete( self, object_id, custom_headers=None, raw=False, **operation_config): @@ -497,7 +500,7 @@ def delete( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/groups/{objectId}' + url = self.delete.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -510,7 +513,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -519,8 +521,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -528,6 +530,7 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/{tenantID}/groups/{objectId}'} def get_member_groups( self, object_id, security_enabled_only, additional_properties=None, custom_headers=None, raw=False, **operation_config): @@ -560,7 +563,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/groups/{objectId}/getMemberGroups' + url = self.get_member_groups.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -577,6 +580,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -589,9 +593,8 @@ def internal_paging(next_link=None, raw=False): body_content = self._serialize.body(parameters, 'GroupGetMemberGroupsParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -607,3 +610,191 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + get_member_groups.metadata = {'url': '/{tenantID}/groups/{objectId}/getMemberGroups'} + + def list_owners( + self, object_id, custom_headers=None, raw=False, **operation_config): + """Directory objects that are owners of the group. + + The owners are a set of non-admin users who are allowed to modify this + object. + + :param object_id: The object ID of the group for which to get owners. + :type object_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DirectoryObject + :rtype: + ~azure.graphrbac.models.DirectoryObjectPaged[~azure.graphrbac.models.DirectoryObject] + :raises: + :class:`GraphErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_owners.metadata['url'] + path_format_arguments = { + 'objectId': self._serialize.url("object_id", object_id, 'str'), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.GraphErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DirectoryObjectPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DirectoryObjectPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_owners.metadata = {'url': '/{tenantID}/groups/{objectId}/owners'} + + def add_owner( + self, object_id, url, additional_properties=None, custom_headers=None, raw=False, **operation_config): + """Add an owner to a group. + + :param object_id: The object ID of the application to which to add the + owner. + :type object_id: str + :param url: A owner object URL, such as + "https://graph.windows.net/0b1f9851-1bf0-433f-aec3-cb9272f093dc/directoryObjects/f260bbc4-c254-447b-94cf-293b5ec434dd", + where "0b1f9851-1bf0-433f-aec3-cb9272f093dc" is the tenantId and + "f260bbc4-c254-447b-94cf-293b5ec434dd" is the objectId of the owner + (user, application, servicePrincipal, group) to be added. + :type url: str + :param additional_properties: Unmatched properties from the message + are deserialized this collection + :type additional_properties: dict[str, object] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`GraphErrorException` + """ + parameters = models.AddOwnerParameters(additional_properties=additional_properties, url=url) + + # Construct URL + url = self.add_owner.metadata['url'] + path_format_arguments = { + 'objectId': self._serialize.url("object_id", object_id, 'str'), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AddOwnerParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.GraphErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + add_owner.metadata = {'url': '/{tenantID}/groups/{objectId}/$links/owners'} + + def remove_owner( + self, object_id, owner_object_id, custom_headers=None, raw=False, **operation_config): + """Remove a member from owners. + + :param object_id: The object ID of the group from which to remove the + owner. + :type object_id: str + :param owner_object_id: Owner object id + :type owner_object_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`GraphErrorException` + """ + # Construct URL + url = self.remove_owner.metadata['url'] + path_format_arguments = { + 'objectId': self._serialize.url("object_id", object_id, 'str'), + 'ownerObjectId': self._serialize.url("owner_object_id", owner_object_id, 'str'), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.GraphErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + remove_owner.metadata = {'url': '/{tenantID}/groups/{objectId}/$links/owners/{ownerObjectId}'} diff --git a/azure-graphrbac/azure/graphrbac/operations/oauth2_operations.py b/azure-graphrbac/azure/graphrbac/operations/oauth2_operations.py new file mode 100644 index 000000000000..8461996ffef6 --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/operations/oauth2_operations.py @@ -0,0 +1,165 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class OAuth2Operations(object): + """OAuth2Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "1.6". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "1.6" + + self.config = config + + def get( + self, filter=None, custom_headers=None, raw=False, **operation_config): + """Queries OAuth2 permissions for the relevant SP ObjectId of an app. + + :param filter: This is the Service Principal ObjectId associated with + the app + :type filter: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Permissions or ClientRawResponse if raw=true + :rtype: ~azure.graphrbac.models.Permissions or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Permissions', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/{tenantID}/oauth2PermissionGrants'} + + def grant( + self, body=None, custom_headers=None, raw=False, **operation_config): + """Grants OAuth2 permissions for the relevant resource Ids of an app. + + :param body: The relevant app Service Principal Object Id and the + Service Principal Objecit Id you want to grant. + :type body: ~azure.graphrbac.models.Permissions + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Permissions or ClientRawResponse if raw=true + :rtype: ~azure.graphrbac.models.Permissions or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.grant.metadata['url'] + path_format_arguments = { + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if body is not None: + body_content = self._serialize.body(body, 'Permissions') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('Permissions', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + grant.metadata = {'url': '/{tenantID}/oauth2PermissionGrants'} diff --git a/azure-graphrbac/azure/graphrbac/operations/objects_operations.py b/azure-graphrbac/azure/graphrbac/operations/objects_operations.py index e48ff1cfd56a..56d5aa0e4261 100644 --- a/azure-graphrbac/azure/graphrbac/operations/objects_operations.py +++ b/azure-graphrbac/azure/graphrbac/operations/objects_operations.py @@ -22,7 +22,7 @@ class ObjectsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: Client API version. Constant value: "1.6". """ @@ -37,63 +37,11 @@ def __init__(self, client, config, serializer, deserializer): self.config = config - def get_current_user( - self, custom_headers=None, raw=False, **operation_config): - """Gets the details for the currently logged-in user. - - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: AADObject or ClientRawResponse if raw=true - :rtype: ~azure.graphrbac.models.AADObject or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`GraphErrorException` - """ - # Construct URL - url = '/{tenantID}/me' - path_format_arguments = { - 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.GraphErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('AADObject', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - def get_objects_by_object_ids( self, parameters, custom_headers=None, raw=False, **operation_config): - """Gets AD group membership for the specified AD object IDs. + """Gets the directory objects specified in a list of object IDs. You can + also specify which resource collections (users, groups, etc.) should be + searched by specifying the optional types parameter. :param parameters: Objects filtering parameters. :type parameters: ~azure.graphrbac.models.GetObjectsParameters @@ -102,16 +50,16 @@ def get_objects_by_object_ids( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of AADObject + :return: An iterator like instance of DirectoryObject :rtype: - ~azure.graphrbac.models.AADObjectPaged[~azure.graphrbac.models.AADObject] + ~azure.graphrbac.models.DirectoryObjectPaged[~azure.graphrbac.models.DirectoryObject] :raises: :class:`CloudError` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/getObjectsByObjectIds' + url = self.get_objects_by_object_ids.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -133,6 +81,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -145,9 +94,8 @@ def internal_paging(next_link=None, raw=False): body_content = self._serialize.body(parameters, 'GetObjectsParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -157,11 +105,12 @@ def internal_paging(next_link=None, raw=False): return response # Deserialize response - deserialized = models.AADObjectPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.DirectoryObjectPaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.AADObjectPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.DirectoryObjectPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized + get_objects_by_object_ids.metadata = {'url': '/{tenantID}/getObjectsByObjectIds'} diff --git a/azure-graphrbac/azure/graphrbac/operations/service_principals_operations.py b/azure-graphrbac/azure/graphrbac/operations/service_principals_operations.py index 64c13fbc8339..e24bd11b7020 100644 --- a/azure-graphrbac/azure/graphrbac/operations/service_principals_operations.py +++ b/azure-graphrbac/azure/graphrbac/operations/service_principals_operations.py @@ -21,7 +21,7 @@ class ServicePrincipalsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: Client API version. Constant value: "1.6". """ @@ -55,7 +55,7 @@ def create( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/servicePrincipals' + url = self.create.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -67,6 +67,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -79,9 +80,8 @@ def create( body_content = self._serialize.body(parameters, 'ServicePrincipalCreateParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.GraphErrorException(self._deserialize, response) @@ -96,6 +96,7 @@ def create( return client_raw_response return deserialized + create.metadata = {'url': '/{tenantID}/servicePrincipals'} def list( self, filter=None, custom_headers=None, raw=False, **operation_config): @@ -118,7 +119,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/servicePrincipals' + url = self.list.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -142,7 +143,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -151,9 +152,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -169,6 +169,63 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/{tenantID}/servicePrincipals'} + + def update( + self, object_id, parameters, custom_headers=None, raw=False, **operation_config): + """Updates a service principal in the directory. + + :param object_id: The object ID of the service principal to delete. + :type object_id: str + :param parameters: Parameters to update a service principal. + :type parameters: + ~azure.graphrbac.models.ServicePrincipalUpdateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`GraphErrorException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'objectId': self._serialize.url("object_id", object_id, 'str'), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServicePrincipalUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.GraphErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update.metadata = {'url': '/{tenantID}/servicePrincipals/{objectId}'} def delete( self, object_id, custom_headers=None, raw=False, **operation_config): @@ -187,7 +244,7 @@ def delete( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/servicePrincipals/{objectId}' + url = self.delete.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -200,7 +257,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -209,8 +265,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -218,10 +274,12 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/{tenantID}/servicePrincipals/{objectId}'} def get( self, object_id, custom_headers=None, raw=False, **operation_config): - """Gets service principal information from the directory. + """Gets service principal information from the directory. Query by + objectId or pass a filter to query by appId. :param object_id: The object ID of the service principal to get. :type object_id: str @@ -237,7 +295,7 @@ def get( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/servicePrincipals/{objectId}' + url = self.get.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -250,7 +308,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -259,8 +317,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -275,6 +333,7 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/{tenantID}/servicePrincipals/{objectId}'} def list_owners( self, object_id, custom_headers=None, raw=False, **operation_config): @@ -301,7 +360,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/servicePrincipals/{objectId}/owners' + url = self.list_owners.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -318,7 +377,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,9 +386,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -345,6 +403,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_owners.metadata = {'url': '/{tenantID}/servicePrincipals/{objectId}/owners'} def list_key_credentials( self, object_id, custom_headers=None, raw=False, **operation_config): @@ -368,7 +427,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/servicePrincipals/{objectId}/keyCredentials' + url = self.list_key_credentials.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -385,7 +444,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -394,9 +453,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -412,6 +470,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_key_credentials.metadata = {'url': '/{tenantID}/servicePrincipals/{objectId}/keyCredentials'} def update_key_credentials( self, object_id, value, custom_headers=None, raw=False, **operation_config): @@ -435,7 +494,7 @@ def update_key_credentials( parameters = models.KeyCredentialsUpdateParameters(value=value) # Construct URL - url = '/{tenantID}/servicePrincipals/{objectId}/keyCredentials' + url = self.update_key_credentials.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -460,9 +519,8 @@ def update_key_credentials( body_content = self._serialize.body(parameters, 'KeyCredentialsUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -470,6 +528,7 @@ def update_key_credentials( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update_key_credentials.metadata = {'url': '/{tenantID}/servicePrincipals/{objectId}/keyCredentials'} def list_password_credentials( self, object_id, custom_headers=None, raw=False, **operation_config): @@ -492,7 +551,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/servicePrincipals/{objectId}/passwordCredentials' + url = self.list_password_credentials.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -509,7 +568,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -518,9 +577,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -536,6 +594,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_password_credentials.metadata = {'url': '/{tenantID}/servicePrincipals/{objectId}/passwordCredentials'} def update_password_credentials( self, object_id, value, custom_headers=None, raw=False, **operation_config): @@ -558,7 +617,7 @@ def update_password_credentials( parameters = models.PasswordCredentialsUpdateParameters(value=value) # Construct URL - url = '/{tenantID}/servicePrincipals/{objectId}/passwordCredentials' + url = self.update_password_credentials.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -583,9 +642,8 @@ def update_password_credentials( body_content = self._serialize.body(parameters, 'PasswordCredentialsUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -593,3 +651,4 @@ def update_password_credentials( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update_password_credentials.metadata = {'url': '/{tenantID}/servicePrincipals/{objectId}/passwordCredentials'} diff --git a/azure-graphrbac/azure/graphrbac/operations/signed_in_user_operations.py b/azure-graphrbac/azure/graphrbac/operations/signed_in_user_operations.py new file mode 100644 index 000000000000..4be3b48f540e --- /dev/null +++ b/azure-graphrbac/azure/graphrbac/operations/signed_in_user_operations.py @@ -0,0 +1,161 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class SignedInUserOperations(object): + """SignedInUserOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "1.6". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "1.6" + + self.config = config + + def get( + self, custom_headers=None, raw=False, **operation_config): + """Gets the details for the currently logged-in user. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: User or ClientRawResponse if raw=true + :rtype: ~azure.graphrbac.models.User or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`GraphErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.GraphErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('User', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/{tenantID}/me'} + + def list_owned_objects( + self, custom_headers=None, raw=False, **operation_config): + """Get the list of directory objects that are owned by the user. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DirectoryObject + :rtype: + ~azure.graphrbac.models.DirectoryObjectPaged[~azure.graphrbac.models.DirectoryObject] + :raises: + :class:`GraphErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_owned_objects.metadata['url'] + path_format_arguments = { + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = '/{tenantID}/{nextLink}' + path_format_arguments = { + 'nextLink': self._serialize.url("next_link", next_link, 'str', skip_quote=True), + 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.GraphErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DirectoryObjectPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DirectoryObjectPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_owned_objects.metadata = {'url': '/{tenantID}/me/ownedObjects'} diff --git a/azure-graphrbac/azure/graphrbac/operations/users_operations.py b/azure-graphrbac/azure/graphrbac/operations/users_operations.py index 2bc102a62532..85295468fd9e 100644 --- a/azure-graphrbac/azure/graphrbac/operations/users_operations.py +++ b/azure-graphrbac/azure/graphrbac/operations/users_operations.py @@ -21,7 +21,7 @@ class UsersOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: Client API version. Constant value: "1.6". """ @@ -54,7 +54,7 @@ def create( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/users' + url = self.create.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -66,6 +66,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -78,9 +79,8 @@ def create( body_content = self._serialize.body(parameters, 'UserCreateParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.GraphErrorException(self._deserialize, response) @@ -95,6 +95,7 @@ def create( return client_raw_response return deserialized + create.metadata = {'url': '/{tenantID}/users'} def list( self, filter=None, custom_headers=None, raw=False, **operation_config): @@ -117,7 +118,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/users' + url = self.list.metadata['url'] path_format_arguments = { 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') } @@ -141,7 +142,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -150,9 +151,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -168,6 +168,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/{tenantID}/users'} def get( self, upn_or_object_id, custom_headers=None, raw=False, **operation_config): @@ -188,7 +189,7 @@ def get( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/users/{upnOrObjectId}' + url = self.get.metadata['url'] path_format_arguments = { 'upnOrObjectId': self._serialize.url("upn_or_object_id", upn_or_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -201,7 +202,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -210,8 +211,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -226,6 +227,7 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/{tenantID}/users/{upnOrObjectId}'} def update( self, upn_or_object_id, parameters, custom_headers=None, raw=False, **operation_config): @@ -247,7 +249,7 @@ def update( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/users/{upnOrObjectId}' + url = self.update.metadata['url'] path_format_arguments = { 'upnOrObjectId': self._serialize.url("upn_or_object_id", upn_or_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -272,9 +274,8 @@ def update( body_content = self._serialize.body(parameters, 'UserUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -282,6 +283,7 @@ def update( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + update.metadata = {'url': '/{tenantID}/users/{upnOrObjectId}'} def delete( self, upn_or_object_id, custom_headers=None, raw=False, **operation_config): @@ -301,7 +303,7 @@ def delete( :class:`GraphErrorException` """ # Construct URL - url = '/{tenantID}/users/{upnOrObjectId}' + url = self.delete.metadata['url'] path_format_arguments = { 'upnOrObjectId': self._serialize.url("upn_or_object_id", upn_or_object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -314,7 +316,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -323,8 +324,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: raise models.GraphErrorException(self._deserialize, response) @@ -332,6 +333,7 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/{tenantID}/users/{upnOrObjectId}'} def get_member_groups( self, object_id, security_enabled_only, additional_properties=None, custom_headers=None, raw=False, **operation_config): @@ -364,7 +366,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/{tenantID}/users/{objectId}/getMemberGroups' + url = self.get_member_groups.metadata['url'] path_format_arguments = { 'objectId': self._serialize.url("object_id", object_id, 'str'), 'tenantID': self._serialize.url("self.config.tenant_id", self.config.tenant_id, 'str') @@ -381,6 +383,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -393,9 +396,8 @@ def internal_paging(next_link=None, raw=False): body_content = self._serialize.body(parameters, 'UserGetMemberGroupsParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.GraphErrorException(self._deserialize, response) @@ -411,3 +413,4 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + get_member_groups.metadata = {'url': '/{tenantID}/users/{objectId}/getMemberGroups'} diff --git a/azure-graphrbac/azure/graphrbac/version.py b/azure-graphrbac/azure/graphrbac/version.py index 57866fdf17d0..2a91c7e542b6 100644 --- a/azure-graphrbac/azure/graphrbac/version.py +++ b/azure-graphrbac/azure/graphrbac/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.40.0" +VERSION = "0.52.0" diff --git a/azure-graphrbac/azure_bdist_wheel.py b/azure-graphrbac/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-graphrbac/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-graphrbac/build.json b/azure-graphrbac/build.json deleted file mode 100644 index 748e17efa6b5..000000000000 --- a/azure-graphrbac/build.json +++ /dev/null @@ -1,424 +0,0 @@ -{ - "autorest": [ - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4216", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/js-yaml": "^3.10.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.53", - "@types/source-map": "^0.5.0", - "@types/yargs": "^8.0.2", - "dts-generator": "^2.1.0", - "mocha": "^4.0.1", - "mocha-typescript": "^1.1.7", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4216/node_modules/@microsoft.azure/autorest-core", - "_shasum": "f6b97454df552dfa54bd0df23f8309665be5fd4c", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4216", - "_from": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4216/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4216/node_modules/@microsoft.azure/autorest-core", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4216/node_modules/@microsoft.azure/autorest-core", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4216/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4216/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4216/node_modules/@microsoft.azure/autorest-core", - "_where": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4216/node_modules/@microsoft.azure/autorest-core" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.15.608533261166624.personal-lock", - "options": { - "port": 22622, - "host": "2130763102", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.15.608533261166624.personal-lock:22622" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4229", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/js-yaml": "^3.10.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.53", - "@types/source-map": "^0.5.0", - "@types/yargs": "^8.0.2", - "@types/z-schema": "^3.16.31", - "dts-generator": "^2.1.0", - "mocha": "^4.0.1", - "mocha-typescript": "^1.1.7", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4229/node_modules/@microsoft.azure/autorest-core", - "_shasum": "c19c0ee74fe38c5197be2e965cd729a633166ae0", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4229", - "_from": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4229/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4229/node_modules/@microsoft.azure/autorest-core", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4229/node_modules/@microsoft.azure/autorest-core", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4229/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4229/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4229/node_modules/@microsoft.azure/autorest-core", - "_where": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4229/node_modules/@microsoft.azure/autorest-core" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.15.608533261166624.personal-lock", - "options": { - "port": 22622, - "host": "2130763102", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.15.608533261166624.personal-lock:22622" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.0.21", - "dependencies": { - "dotnet-2.0.0": "^1.3.2" - }, - "optionalDependencies": {}, - "devDependencies": { - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.1.1", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "3ce7d3939124b31830be15e5de99b9b7768afb90", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.0.21", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.15.608533261166624.personal-lock", - "options": { - "port": 22622, - "host": "2130763102", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.15.608533261166624.personal-lock:22622" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.3.38", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "2.3.1", - "autorest": "^2.0.4201", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "903bb77932e4ed1b8bc3b25cc39b167143494f6c", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.3.38", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.15.608533261166624.personal-lock", - "options": { - "port": 22622, - "host": "2130763102", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.15.608533261166624.personal-lock:22622" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.python", - "version": "2.1.28", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "^2.3.13", - "autorest": "^2.0.4203", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.python@2.1.28/node_modules/@microsoft.azure/autorest.python", - "_shasum": "864acf40daff5c5e073f0e7da55597c3a7994469", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.python@2.1.28", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.python@2.1.28/node_modules/@microsoft.azure/autorest.python", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.python@2.1.28/node_modules/@microsoft.azure/autorest.python", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.1.28/node_modules/@microsoft.azure/autorest.python", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.python@2.1.28/node_modules/@microsoft.azure/autorest.python", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.1.28/node_modules/@microsoft.azure/autorest.python" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.python@2.1.28/node_modules/@microsoft.azure/autorest.python", - "_where": "/root/.autorest/@microsoft.azure_autorest.python@2.1.28/node_modules/@microsoft.azure/autorest.python" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.15.608533261166624.personal-lock", - "options": { - "port": 22622, - "host": "2130763102", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.15.608533261166624.personal-lock:22622" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - } - ], - "autorest_bootstrap": {} -} \ No newline at end of file diff --git a/azure-graphrbac/sdk_packaging.toml b/azure-graphrbac/sdk_packaging.toml new file mode 100644 index 000000000000..90a577aebd86 --- /dev/null +++ b/azure-graphrbac/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-graphrbac" +package_nspkg = "azure-nspkg" +package_pprint_name = "Graph RBAC" +package_doc_id = "activedirectory" +is_stable = false +is_arm = false diff --git a/azure-graphrbac/setup.cfg b/azure-graphrbac/setup.cfg index 669e94e63df3..3c6e79cf31da 100644 --- a/azure-graphrbac/setup.cfg +++ b/azure-graphrbac/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-nspkg \ No newline at end of file diff --git a/azure-graphrbac/setup.py b/azure-graphrbac/setup.py index 1ea4679ce3e1..c805471af0bb 100644 --- a/azure-graphrbac/setup.py +++ b/azure-graphrbac/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-graphrbac" @@ -72,13 +66,21 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-nspkg'], + } ) diff --git a/azure-graphrbac/tests/recordings/test_graphrbac.test_apps_and_sp.yaml b/azure-graphrbac/tests/recordings/test_graphrbac.test_apps_and_sp.yaml index 15c97296498d..7fc9e3163efe 100644 --- a/azure-graphrbac/tests/recordings/test_graphrbac.test_apps_and_sp.yaml +++ b/azure-graphrbac/tests/recordings/test_graphrbac.test_apps_and_sp.yaml @@ -1,85 +1,272 @@ interactions: - request: - body: '{"identifierUris": ["http://pytest_app.org"], "availableToOtherTenants": - false, "displayName": "pytest_app"}' + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications?$filter=displayName%20eq%20%27pytest_app%27&api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4474a40c-f7f6-4922-beb0-447370518650","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"4d6e57be-5c95-4653-9cdc-17c5f988214b","appRoles":[{"allowedMemberTypes":["User"],"description":"Creators + can create Surveys","displayName":"SurveyCreator","id":"1b4f816e-5eaf-48b9-8613-7923830595ad","isEnabled":true,"value":"SurveyCreator"}],"availableToOtherTenants":false,"displayName":"pytest_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_app","id":"d45cee5f-015e-40a1-b9e5-839de45b7749","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_app on your behalf.","userConsentDisplayName":"Access + pytest_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}]}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['1871'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Tue, 11 Sep 2018 22:25:54 GMT'] + duration: ['382584'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [XC37a6rlJsCeGLMfJenTNZI4+ije7D/luiwxI9jCogI=] + ocp-aad-session-key: [3oAzJyhaiHFJAWkvCn4S4w5Kr5SEoSsSEBOhLEIlJIQTKSid26P7twkLjZuWi2BlwwQhZ3NwnyzRLk9fSJXQHvxVBVbhI5U8UrUgSF9-jSsfUBzg31mUJ4oSq9KNk8mtGS4apSGMJp7mgsQP4fvmOQ.kVjzagV-5zvMxsKd-0j8vSk22u61344vQyrSrLsi7MQ] + pragma: [no-cache] + request-id: [73c38dbd-a7f6-483c-8bfd-af7348395884] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications/4474a40c-f7f6-4922-beb0-447370518650?api-version=1.6 + response: + body: {string: ''} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + dataserviceversion: [1.0;] + date: ['Tue, 11 Sep 2018 22:25:55 GMT'] + duration: ['2515893'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [+EOS4aiuOEFJVZdbhjMw16/+oK92lidT3YUz+JU856Q=] + ocp-aad-session-key: [B_SKfynqkVVLCQrWCxQoJX9i3tZ0pfo6BXi1-qDAOGHM9ionX9zbj5YyGuTZV1ta8DTnpCqMvaAu26DO6nxWRuoX9ZZ2ofYsRThq7LZJzjLUh4uroFioi6mO-D6h5s33k-wpU2uR7jRmB0sH8GzUSg.U-E-qnyYk4ifO9P3IrtOW_gnF3GBQlb1HeL4AuNMvbI] + pragma: [no-cache] + request-id: [deb0189b-e387-4080-b63f-8e29be6e2ac9] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 204, message: No Content} +- request: + body: '{"appRoles": [{"id": "1b4f816e-5eaf-48b9-8613-7923830595ad", "allowedMemberTypes": + ["User"], "description": "Creators can create Surveys", "displayName": "SurveyCreator", + "isEnabled": true, "value": "SurveyCreator"}], "availableToOtherTenants": false, + "displayName": "pytest_app", "identifierUris": ["http://pytest_app.org"]}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['108'] + Content-Length: ['325'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.16299-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.11 graphrbacmanagementclient/0.32.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications?api-version=1.6 response: - body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.Application/@Element","odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"818996ef-2981-4892-9ecb-e432ddbc1b46","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"ffdd4f3d-dfc7-49bf-a264-50c1cc76b1b9","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_app.org"],"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.Application/@Element","odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d4b9d229-2d8a-4ed1-932d-270c9f54791c","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"9f2e40e5-2d18-4b9a-ad19-a3a43b95bf31","appRoles":[{"allowedMemberTypes":["User"],"description":"Creators + can create Surveys","displayName":"SurveyCreator","id":"1b4f816e-5eaf-48b9-8613-7923830595ad","isEnabled":true,"value":"SurveyCreator"}],"availableToOtherTenants":false,"displayName":"pytest_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logo@odata.mediaContentType":"application/json;odata=minimalmetadata; + charset=utf-8","logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow the application to access pytest_app on behalf of the signed-in user.","adminConsentDisplayName":"Access - pytest_app","id":"897f8bc8-dc83-4206-956f-3d8948c2e1ec","isEnabled":true,"type":"User","userConsentDescription":"Allow + pytest_app","id":"74242300-1625-41fd-a365-de752c9bda71","isEnabled":true,"type":"User","userConsentDescription":"Allow the application to access pytest_app on your behalf.","userConsentDisplayName":"Access - pytest_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"passwordCredentials":[],"publicClient":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"tokenEncryptionKeyId":null}'} + pytest_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}'} headers: access-control-allow-origin: ['*'] cache-control: [no-cache] - content-length: ['1338'] + content-length: ['1954'] content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] dataserviceversion: [3.0;] - date: ['Wed, 01 Nov 2017 18:49:42 GMT'] - duration: ['3916046'] + date: ['Tue, 11 Sep 2018 22:25:55 GMT'] + duration: ['5314368'] expires: ['-1'] - location: ['https://graph.windows.net/myaddomain.onmicrosoft.com/directoryObjects/818996ef-2981-4892-9ecb-e432ddbc1b46/Microsoft.DirectoryServices.Application'] - ocp-aad-diagnostics-server-name: [3/hPBrNk3bWDiI3Le668U3KnfkdAVCOsHPHBA7wvvMs=] - ocp-aad-session-key: [zu6hhY_SqJqsgOBUkeLvv_NjWaWhuq4MLkykFGBKl2NEnuFVBcDRC2Ir1974aVhhEF0x3t_6wPzfk_T9fDszZOHIo9HH-L6r2f6uXiY_NGJFGuq2PmS4W7UJjD3Rl4oc9csiVpFwCzNfi9k9jT4uYk4K69tyjK7Fk7p8d5d_6oWzA_eEi45K2bMvOC2pQ2csU6JqCuMTVAKfEiKtIcBgRQ.ZbeKlkQ3p1jtEMtIPGxBkFHSsIQWQCCpwNr4Fc-O-IM] + location: ['https://graph.windows.net/myaddomain.onmicrosoft.com/directoryObjects/d4b9d229-2d8a-4ed1-932d-270c9f54791c/Microsoft.DirectoryServices.Application'] + ocp-aad-diagnostics-server-name: [Ejlln//HW8QHQEvfdHqbS3KozJkF5qO/py2QoUOMx9s=] + ocp-aad-session-key: [Ztjt4Oz3O2wTJ1SvSBUOneCOGfee71Euwy0D660jypiLTBRu1QOCncLJXesfyPaHHcCXX9kroSJl6w3Cri0vPv3OvGnTcYZpBtaeuOuaUlzlUGwipBFILWxqgFocCuNB3NF41-NS1yPd_ObhGoStOA.P5cy39Fxid4pxNysJeHHbSLZTw0wJYWed4du9pzsS7E] pragma: [no-cache] - request-id: [e9c6365a-4e18-449e-b6dc-652b0b1f2605] - server: [Microsoft-IIS/8.5] + request-id: [40165feb-ff16-430e-b7d2-884bdae7767e] + server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] x-ms-dirapi-data-contract-version: ['1.6'] - x-powered-by: [ASP.NET, ASP.NET] + x-powered-by: [ASP.NET] status: {code: 201, message: Created} - request: - body: '{"appId": "ffdd4f3d-dfc7-49bf-a264-50c1cc76b1b9", "accountEnabled": false}' + body: '{"objectIds": ["d4b9d229-2d8a-4ed1-932d-270c9f54791c"], "types": ["Application"]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['81'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/getObjectsByObjectIds?api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d4b9d229-2d8a-4ed1-932d-270c9f54791c","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"9f2e40e5-2d18-4b9a-ad19-a3a43b95bf31","appRoles":[{"allowedMemberTypes":["User"],"description":"Creators + can create Surveys","displayName":"SurveyCreator","id":"1b4f816e-5eaf-48b9-8613-7923830595ad","isEnabled":true,"value":"SurveyCreator"}],"availableToOtherTenants":false,"displayName":"pytest_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logo@odata.mediaContentType":"application/json;odata=minimalmetadata; + charset=utf-8","logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_app","id":"74242300-1625-41fd-a365-de752c9bda71","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_app on your behalf.","userConsentDisplayName":"Access + pytest_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}]}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['1917'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Tue, 11 Sep 2018 22:25:56 GMT'] + duration: ['358862'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [3tNvVkm/Zj7QKWAs1YPTXA5TJ87jXEFFrif+RYkOm5g=] + ocp-aad-session-key: [L4UCvENkVe38lBDxLerbQnNruTWt5WTv6W0XDLaZtkqhx8o7jQOCr0Ur73qnUnxEVd-fZ1GIclr_yiUEBcvrrnGa1Q1qEyNuK_rHi6QoyEU8beukoWpygYh6T6eDWjSqCkHBmTb_Xtw_GR-l83DI9w.XkYv3-1W7DpJ139Ukc8Xg5bZkuzD1ZsqZKdni5DTSis] + pragma: [no-cache] + request-id: [9d3aae6c-bbfe-4c53-a7f5-8e0a55638beb] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications?$filter=displayName%20eq%20%27pytest_app%27&api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d4b9d229-2d8a-4ed1-932d-270c9f54791c","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"9f2e40e5-2d18-4b9a-ad19-a3a43b95bf31","appRoles":[{"allowedMemberTypes":["User"],"description":"Creators + can create Surveys","displayName":"SurveyCreator","id":"1b4f816e-5eaf-48b9-8613-7923830595ad","isEnabled":true,"value":"SurveyCreator"}],"availableToOtherTenants":false,"displayName":"pytest_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_app","id":"74242300-1625-41fd-a365-de752c9bda71","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_app on your behalf.","userConsentDisplayName":"Access + pytest_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}]}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['1871'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Tue, 11 Sep 2018 22:25:56 GMT'] + duration: ['360918'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [6K8lWHvVsgBdTBM4xsdGPioJWlS7JXIeN4jkSphTepo=] + ocp-aad-session-key: [8fD-tazjzFqpGaFlJAzPo--cJ9jcp_e874jzG4jkx-wFTE0PmEYsF31cV68Du1Xvcz1d4xFCbdQT4nTKpW1ndeQggjbFXXfDkVd3hH30Pz0buGBRSWlGdAGJpdek_LQ6SCwsalKeQITRshqCv7psuQ.7dWzFfAeArHnxGr1wA23zHqEQB8H6BHbRiYpXLK7nzo] + pragma: [no-cache] + request-id: [6ed9aee6-d4ca-415a-bac6-d76ea806d666] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: '{"accountEnabled": false, "appId": "9f2e40e5-2d18-4b9a-ad19-a3a43b95bf31"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['74'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.16299-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.11 graphrbacmanagementclient/0.32.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://graph.windows.net/myaddomain.onmicrosoft.com/servicePrincipals?api-version=1.6 response: - body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.ServicePrincipal/@Element","odata.type":"Microsoft.DirectoryServices.ServicePrincipal","objectType":"ServicePrincipal","objectId":"aca8a668-d606-4a77-82a9-cc7d8b0ccb19","deletionTimestamp":null,"accountEnabled":false,"addIns":[],"alternativeNames":[],"appDisplayName":"pytest_app","appId":"ffdd4f3d-dfc7-49bf-a264-50c1cc76b1b9","appOwnerTenantId":"54826b22-38d6-4fb2-bad9-b7b93a3e9c5a","appRoleAssignmentRequired":false,"appRoles":[],"displayName":"pytest_app","errorUrl":null,"homepage":null,"keyCredentials":[],"logoutUrl":null,"oauth2Permissions":[{"adminConsentDescription":"Allow + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.ServicePrincipal/@Element","odata.type":"Microsoft.DirectoryServices.ServicePrincipal","objectType":"ServicePrincipal","objectId":"1e76df4c-c7cd-4f28-9ddc-628ff9ace5c9","deletionTimestamp":null,"accountEnabled":false,"addIns":[],"alternativeNames":[],"appDisplayName":"pytest_app","appId":"9f2e40e5-2d18-4b9a-ad19-a3a43b95bf31","appOwnerTenantId":"54826b22-38d6-4fb2-bad9-b7b93a3e9c5a","appRoleAssignmentRequired":false,"appRoles":[{"allowedMemberTypes":["User"],"description":"Creators + can create Surveys","displayName":"SurveyCreator","id":"1b4f816e-5eaf-48b9-8613-7923830595ad","isEnabled":true,"value":"SurveyCreator"}],"displayName":"pytest_app","errorUrl":null,"homepage":null,"keyCredentials":[],"logoutUrl":null,"oauth2Permissions":[{"adminConsentDescription":"Allow the application to access pytest_app on behalf of the signed-in user.","adminConsentDisplayName":"Access - pytest_app","id":"897f8bc8-dc83-4206-956f-3d8948c2e1ec","isEnabled":true,"type":"User","userConsentDescription":"Allow + pytest_app","id":"74242300-1625-41fd-a365-de752c9bda71","isEnabled":true,"type":"User","userConsentDescription":"Allow the application to access pytest_app on your behalf.","userConsentDisplayName":"Access - pytest_app","value":"user_impersonation"}],"passwordCredentials":[],"preferredTokenSigningKeyThumbprint":null,"publisherName":"AzureSDKTeam","replyUrls":[],"samlMetadataUrl":null,"servicePrincipalNames":["ffdd4f3d-dfc7-49bf-a264-50c1cc76b1b9","http://pytest_app.org"],"servicePrincipalType":"Application","tags":[],"tokenEncryptionKeyId":null}'} + pytest_app","value":"user_impersonation"}],"passwordCredentials":[],"preferredTokenSigningKeyThumbprint":null,"publisherName":"AzureSDKTeam","replyUrls":[],"samlMetadataUrl":null,"servicePrincipalNames":["9f2e40e5-2d18-4b9a-ad19-a3a43b95bf31","http://pytest_app.org"],"servicePrincipalType":"Application","signInAudience":"AzureADMyOrg","tags":[],"tokenEncryptionKeyId":null}'} headers: access-control-allow-origin: ['*'] cache-control: [no-cache] - content-length: ['1368'] + content-length: ['1590'] content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] dataserviceversion: [3.0;] - date: ['Wed, 01 Nov 2017 18:49:42 GMT'] - duration: ['4995199'] + date: ['Tue, 11 Sep 2018 22:25:57 GMT'] + duration: ['2187068'] expires: ['-1'] - location: ['https://graph.windows.net/myaddomain.onmicrosoft.com/directoryObjects/aca8a668-d606-4a77-82a9-cc7d8b0ccb19/Microsoft.DirectoryServices.ServicePrincipal'] - ocp-aad-diagnostics-server-name: [DtvcVPtqaaHXo1s0keQF5e5ePpB7wWGVxIlKdtjGXok=] - ocp-aad-session-key: [QQjaLyn-bO7i0FIC2gHdgeQjy2IYix-nDV0hoFMVwt_jpeS44WUxKDg3ALLm-yeS959KANVmvEIT70I8PlSBVhhHSm2r0vS_b8vwAfsluqFOqlxEWGy4HnwNfhkpSqT-IvzzcfPdqI8l04Dw9a0doiRop3AyZTkiJMNEF7gtpQyhLYMV2M-abHEvycE6kRwtm4W2j3vmSXVje5JXiy4PZw.RWiZLe_hBwDn9d_Sns_m8kwnnQp75_x8P76HE7q5ix0] + location: ['https://graph.windows.net/myaddomain.onmicrosoft.com/directoryObjects/1e76df4c-c7cd-4f28-9ddc-628ff9ace5c9/Microsoft.DirectoryServices.ServicePrincipal'] + ocp-aad-diagnostics-server-name: [BXRgh3eu6YIFumaSZy7lFEXIwtoZR+AXCAi0P8igTHU=] + ocp-aad-session-key: [7H2etbJBcAh-6IsgW5Ajp5xyt8R8qB7yxPO612-b9_aK1QkTLAp1xvjophtEA5CCW6rvSXBq81ORjVUveMDuK813bedFAuPCznysKES1Eyb0Nh9LXV2Ct7zS8vB9UoM3PFeeNovMXryX1Atun11iLA.qBlL2UwjQFaZMCeXW1jHA8NhCoBrGCpsFpSXuSkFGqo] pragma: [no-cache] - request-id: [cec9cc55-5de0-4ae4-afbe-a6cf386e56f5] - server: [Microsoft-IIS/8.5] + request-id: [5c1cea6d-1982-4a35-ba98-6c633d620b50] + server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] x-ms-dirapi-data-contract-version: ['1.6'] - x-powered-by: [ASP.NET, ASP.NET] + x-powered-by: [ASP.NET] status: {code: 201, message: Created} +- request: + body: '{"accountEnabled": false}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['25'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: PATCH + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/servicePrincipals/1e76df4c-c7cd-4f28-9ddc-628ff9ace5c9?api-version=1.6 + response: + body: {string: ''} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + dataserviceversion: [1.0;] + date: ['Tue, 11 Sep 2018 22:25:58 GMT'] + duration: ['1972987'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [3tNvVkm/Zj7QKWAs1YPTXA5TJ87jXEFFrif+RYkOm5g=] + ocp-aad-session-key: [dsy3ZtpwUfbkoaOJ-c3EYjDFrra7TB7bRf_hsRWoz7VWKae_9CQtmnxrWomkb529-Pn5jQu81G15Cq1seAoJl5ozpDX2yJBYpIqMsTwQphv0ECPpLLw1bmKUrPZSLb1kwZI4eXkGtSEJUJ5OEZvo1Q.C7UFKJahNn7NQUt42XXYnkIfYTqRXWWIiZDOj_uOLLg] + pragma: [no-cache] + request-id: [27b337c0-1e22-440e-9baa-60e8c85abbbf] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 204, message: No Content} - request: body: null headers: @@ -87,31 +274,30 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.16299-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.11 graphrbacmanagementclient/0.32.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://graph.windows.net/myaddomain.onmicrosoft.com/servicePrincipals/aca8a668-d606-4a77-82a9-cc7d8b0ccb19?api-version=1.6 + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/servicePrincipals/1e76df4c-c7cd-4f28-9ddc-628ff9ace5c9?api-version=1.6 response: body: {string: ''} headers: access-control-allow-origin: ['*'] cache-control: [no-cache] dataserviceversion: [1.0;] - date: ['Wed, 01 Nov 2017 18:49:43 GMT'] - duration: ['2106480'] + date: ['Tue, 11 Sep 2018 22:25:58 GMT'] + duration: ['1931016'] expires: ['-1'] - ocp-aad-diagnostics-server-name: [iaSFgYC+tqsHdxf0PYhhSBaccCVQl9a2v/hX0IE9E2Q=] - ocp-aad-session-key: [s4KnnHJsogjLpXZ3B8GMuqxRNlXIfHV0hrxbHdtTM2SDBDZ0V2e2nGzGthYxNGm5xg9bdoltS7kG0380CRAA7aQ2nDq4ajnFuPIKJITgfwTZTap_7SyO1z6qDFDbtiVuOrWP4m6F6-CUJZI6kZm9zofXsu--ehwk_70JmEuWutwSZUuQOh0bD0GfuJV-4IvwCQWGdBjW6fJ-8cokMnJabg.Yc7XejZQEZNrKFeTYN5TUqUnolW3cj2egRvBwPSUXHs] + ocp-aad-diagnostics-server-name: [raR8JNajDTfwSzq60owihwvzZvfOxnwzwr6uWdDMZbM=] + ocp-aad-session-key: [TNvLOlk7FtLRHIaODfIFjU2y7lLRacjUePtz3x6_eREkd5MmJxx3Bg-Fk2R02Api45rjP4xXKOc9hGO_DqlrR8n3OgdoFnvnz_-Wg_DXP5fEtGLS09p4cqM1pYCft04ItDV6UlIm5OjbdzId3AUsng._1NlHT2PQIflR3ffjpjYz7ZxuD0lIrUw8PG59xDbaj8] pragma: [no-cache] - request-id: [6df191cc-614c-4510-8316-cb893b77ef47] - server: [Microsoft-IIS/8.5] + request-id: [0b64b104-17e9-49fc-a5bf-99860f7e7114] + server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] x-ms-dirapi-data-contract-version: ['1.6'] - x-powered-by: [ASP.NET, ASP.NET] + x-powered-by: [ASP.NET] status: {code: 204, message: No Content} - request: body: null @@ -120,30 +306,29 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.16299-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.11 graphrbacmanagementclient/0.32.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications/818996ef-2981-4892-9ecb-e432ddbc1b46?api-version=1.6 + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications/d4b9d229-2d8a-4ed1-932d-270c9f54791c?api-version=1.6 response: body: {string: ''} headers: access-control-allow-origin: ['*'] cache-control: [no-cache] dataserviceversion: [1.0;] - date: ['Wed, 01 Nov 2017 18:49:45 GMT'] - duration: ['3277158'] + date: ['Tue, 11 Sep 2018 22:26:02 GMT'] + duration: ['36854798'] expires: ['-1'] - ocp-aad-diagnostics-server-name: [QGCgt2mDd3mfXDpToCnqIe494hLti6FGGIdhptlwLco=] - ocp-aad-session-key: [oB4Dfjf7t4kcfWpGZXk5EaYfkVbOKPsHhp2PXbcIlJegi1EPXh_p8KcuIvu1eCyOoD5O-vmw9Ztzx5Els2zvqhbuTPoDFUux9IUFONVOJW4J7qfDppuvliediFFGSFMimHaejDtSr1dguVybzP3lmPehq-9m6d99IgWgDaD-MJj_xrX6yEM0F3CROTtBvQ1Ktj0GTS88AIHWYvYTxA9fJg.00JA2ZOY3OW2Z5xJnRHDrmgYGl2gOBViafNTzrN3IEI] + ocp-aad-diagnostics-server-name: [WuWPPeV7dv5/89XBwAEVlawMeyvMAtJ8EugXI+UUkGg=] + ocp-aad-session-key: [O3onec7XbXZGjGd49I6g2EUlQSAbROYfcrHzq1HMt9t-VTzd5GMybkPYSBCRpHQlDV3Q5GnC8x8nkRBohboeWMAoQCUN67G1zxrGY238UANUKf8MrcIoFOpRhGnP1DF0rBpz3ASe58hUdOXxozyxnw.GqTyK7P0wjL3dEON1e_93wK0hRlIHjcZKYqeF0QsWUw] pragma: [no-cache] - request-id: [fde4d6ec-ffd5-49bd-9c5a-5cba74f9a25d] - server: [Microsoft-IIS/8.5] + request-id: [a682a6ca-28dc-46b2-81d4-52e46b5cf224] + server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] x-ms-dirapi-data-contract-version: ['1.6'] - x-powered-by: [ASP.NET, ASP.NET] + x-powered-by: [ASP.NET] status: {code: 204, message: No Content} version: 1 diff --git a/azure-graphrbac/tests/recordings/test_graphrbac.test_deleted_applications.yaml b/azure-graphrbac/tests/recordings/test_graphrbac.test_deleted_applications.yaml new file mode 100644 index 000000000000..bb00691df237 --- /dev/null +++ b/azure-graphrbac/tests/recordings/test_graphrbac.test_deleted_applications.yaml @@ -0,0 +1,2405 @@ +interactions: +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/deletedApplications?api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#deletedDirectoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"00025596-a1a8-4f31-b084-3a57384064d3","deletionTimestamp":"2018-08-25T08:49:03Z","acceptMappedClaims":null,"addIns":[],"appId":"8f147837-30ac-4aaf-8423-66fb1731cf13","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-08-35-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-08-35-54","identifierUris":["http://clitesttrqchpdv6e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-08-35-54","id":"272d43eb-ff72-4305-86b4-b169d9d2a858","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-08-35-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T08:35:54.829292Z","keyId":"6f3bae11-85ac-4e90-86a0-419e0b7ce984","startDate":"2018-08-25T08:35:54.829292Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"00c51bb1-4056-423d-8eaa-791084c62d20","deletionTimestamp":"2018-08-22T05:33:32Z","acceptMappedClaims":null,"addIns":[],"appId":"4aa3364b-7b99-4ab5-8bb6-3224742aef21","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-33-17","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-33-17","identifierUris":["http://cli_test_sp_with_kv_existing_certls5qaftib2a3zmyjlgmxgiwhwewynlrtii5uzbcnfs"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"4CFBBE55F89042C0DEADE5FD23B835C8CEFAFE7A","endDate":"2019-08-22T05:33:26.773325Z","keyId":"7f610aae-a492-4280-b587-80f39983cf43","startDate":"2018-08-22T05:33:26.773325Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-33-17 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-33-17","id":"e5912d40-531d-4371-9f26-b0f42bec5b35","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-33-17 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-33-17","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"01a33674-011b-40af-b6ad-6585d599148e","deletionTimestamp":"2018-08-28T18:09:42Z","acceptMappedClaims":null,"addIns":[],"appId":"2d2ecbf3-e447-4ee4-9d11-cb70495cf40e","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp4bc20662c","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp4bc20662c","identifierUris":["http://easycreate.azure.com/javasdkapp4bc20662c"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-16T18:09:38.3355199Z","keyId":"b3e89625-e38f-4752-9f86-4f8be5d16bc3","startDate":"2018-08-28T18:09:38.3355199Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-12-06T18:09:38.329647Z","keyId":"b1a61c55-d6ad-4d50-a776-4243305caf72","startDate":"2018-08-28T18:09:38.329647Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp4bc20662c on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp4bc20662c","id":"c79998d0-6b55-4461-bcfb-6685a861e1f8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp4bc20662c on your behalf.","userConsentDisplayName":"Access + javasdkapp4bc20662c","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-17T18:09:40.1008058Z","keyId":"63fbc108-002c-45cc-9cc5-8411a0f036b1","startDate":"2018-08-28T18:09:40.1008058Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp4bc20662c"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"021513c9-b1da-4668-8429-d6dd2bd57e3e","deletionTimestamp":"2018-08-22T05:21:16Z","acceptMappedClaims":null,"addIns":[],"appId":"22a2bd12-cc9e-4129-a985-b7d351b8f51f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-07-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-07-28","identifierUris":["http://clitestr622unfnic"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-07-28","id":"5d7f2316-d8b3-4c21-ab4a-870d2167a1b0","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-07-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:07:28.006954Z","keyId":"87626138-efb4-4023-b60d-1739d1c58e8e","startDate":"2018-08-22T05:07:28.006954Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0232cfc8-5ce3-4e0d-9d52-cb945b12a227","deletionTimestamp":"2018-08-04T05:34:54Z","acceptMappedClaims":null,"addIns":[],"appId":"60985e9a-f258-416d-aa5f-6ae095774da0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-34-26","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-34-26","identifierUris":["http://cli_test_sp_with_kv_existing_certlkaqyxizcwjmqdudq46s7id4rzoz7s6csimsdzi4h5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"4B45F21583F21B75DE9CBED635BEDFC55090F975","endDate":"2019-08-04T05:34:48.462703Z","keyId":"3b330449-4b79-49a1-8f20-c7a3b8bd3df0","startDate":"2018-08-04T05:34:48.462703Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-34-26 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-34-26","id":"96140f57-7a17-4ab6-ba23-943015add675","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-34-26 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-34-26","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"02bca9b9-3023-4036-af2f-9cfe93bd797e","deletionTimestamp":"2018-08-06T14:37:39Z","acceptMappedClaims":null,"addIns":[],"appId":"9796b2ef-b82c-49db-a3b5-b2458ad26a7a","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp73762575f","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp73762575f","identifierUris":["http://easycreate.azure.com/javasdkapp73762575f"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-14T14:37:36.027Z","keyId":"e7f0b497-b6d7-4b61-92b2-5d6b8f0b32a7","startDate":"2018-08-06T14:37:36.027Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp73762575f on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp73762575f","id":"613a55a2-d228-4300-81f0-3de0aa883f95","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp73762575f on your behalf.","userConsentDisplayName":"Access + javasdkapp73762575f","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp73762575f"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"035eaa68-5010-45f4-bfd3-8dccc1426272","deletionTimestamp":"2018-08-08T05:45:39Z","acceptMappedClaims":null,"addIns":[],"appId":"8ac51159-73b3-456e-9bea-2ccd2a622a91","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-45-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-45-31","identifierUris":["http://cli_test_sp_with_kv_existing_cert3n3467gysftvjt2mjacglne2rzep5atmrc4t3mazke"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"F1B0BC5E010A480985137826667FDABECEF79EDA","endDate":"2019-08-08T05:45:38.178225Z","keyId":"b9c130ba-8ec5-4be1-9f5d-218f9053a49f","startDate":"2018-08-08T05:45:38.178225Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-45-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-45-31","id":"82ee23c6-6eb5-4679-9428-8b096b5c68e2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-45-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-45-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"039489e1-4fb9-4c4e-8883-8c5663eb76eb","deletionTimestamp":"2018-08-29T22:19:24Z","acceptMappedClaims":null,"addIns":[],"appId":"54ee6fed-f38d-4900-ac63-200ff5133451","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp8e6410379","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp8e6410379","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp8e6410379"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp8e6410379 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp8e6410379","id":"a5b4a143-6b72-496b-8741-b1c0198a1fc3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp8e6410379 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp8e6410379","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp8e6410379"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"04b4d297-65cb-4e0a-a84b-14dbbe02e421","deletionTimestamp":"2018-08-22T05:20:42Z","acceptMappedClaims":null,"addIns":[],"appId":"f6fdf635-6cad-4f5b-9fce-3b78bdb92ae3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-07-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-07-27","identifierUris":["http://clitestfhgdhylstn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-07-27","id":"7064d608-4acc-4d3a-bfd6-558821d81d69","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-07-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:07:27.890289Z","keyId":"7e2aa6bc-a79a-49de-a66b-1be306029667","startDate":"2018-08-22T05:07:27.890289Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0589b3a5-f324-4507-8bf3-48097a12b2fa","deletionTimestamp":"2018-08-24T05:30:01Z","acceptMappedClaims":null,"addIns":[],"appId":"569fe1e9-a38c-44cc-aa87-fd7c6f54dcd5","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-29-58","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-29-58","identifierUris":["http://clitestafcbrguon3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-58 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-29-58","id":"8214831d-698a-4f8f-b66d-fa6034925e14","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-58 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-29-58","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:29:58.078682Z","keyId":"c099e31d-5147-4586-995e-1bb9540f03a3","startDate":"2018-08-24T05:29:58.078682Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"059578d3-a544-44b1-8dda-b8ac108230a0","deletionTimestamp":"2018-08-16T05:50:25Z","acceptMappedClaims":null,"addIns":[],"appId":"a2fc3b19-bd8f-4dab-8dde-93ef56aac8b7","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-50-17","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-50-17","identifierUris":["http://clisp-test-buxfcyrev"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-17 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-50-17","id":"99d5bff8-8582-4caf-96b2-afb20851b046","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-17 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-50-17","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:50:22.675073Z","keyId":"32b200ea-5595-4e9c-8974-60e8dd6be7f4","startDate":"2018-08-16T05:50:22.675073Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"067ea28e-422b-4034-98e0-ad907d3eaf30","deletionTimestamp":"2018-08-23T05:34:20Z","acceptMappedClaims":null,"addIns":[],"appId":"1d23ee1d-085e-4efa-9723-003887d765af","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-33-56","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-33-56","identifierUris":["http://cli_test_sp_with_kv_existing_cert3jn46teo2mdd23egcbzfpsunyc5difmp7dvjhseop3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"4E92B3A50B42006586155ABF875D92D2F65D7EDA","endDate":"2019-08-23T05:34:14.926765Z","keyId":"faea6d43-65f8-4020-a956-1763361c66ce","startDate":"2018-08-23T05:34:14.926765Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-33-56 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-33-56","id":"742ca785-dd17-4a10-a451-eca7ead6fcbd","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-33-56 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-33-56","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"06be1a0c-969e-4214-bc68-5b9b8bd718b1","deletionTimestamp":"2018-08-24T05:56:49Z","acceptMappedClaims":null,"addIns":[],"appId":"8a2ac4b9-8e05-444e-a879-6a9c0759425d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-56-32","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-56-32","identifierUris":["http://cli_test_sp_with_kv_existing_certrgyuyc56oc7sslhrb6l65fij5jjxmphlavwmqozmfj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"F011ADC721EF827D3AEE920D44E8C1D217A4A8C5","endDate":"2019-08-24T05:56:46.956679Z","keyId":"c66ae356-0e00-45f2-83e3-a3816c029868","startDate":"2018-08-24T05:56:46.956679Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-56-32 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-56-32","id":"96c1ca6d-f580-4212-9876-8dc81e8411ae","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-56-32 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-56-32","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"06cad38e-ebba-4b2a-8440-ae27c793f53e","deletionTimestamp":"2018-08-02T11:28:57Z","acceptMappedClaims":null,"addIns":[],"appId":"ab4c67ae-8c4c-4319-adbc-a1d35959ba90","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdkspdf8697182","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdkspdf8697182","identifierUris":["http://easycreate.azure.com/anotherapp/javasdkspdf8697182"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspdf8697182 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspdf8697182","id":"e6f4d76d-5f4f-44bf-b163-d0b3d19fb31e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspdf8697182 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspdf8697182","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdkspdf8697182"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"077f4b91-b541-416c-bfb8-60d0c54ccc66","deletionTimestamp":"2018-08-09T05:36:01Z","acceptMappedClaims":null,"addIns":[],"appId":"bd4769f0-3f7c-4f38-b31e-6f02762c98fc","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-35-40","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-35-40","identifierUris":["http://cli-graphfyzko"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-35-40 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-35-40","id":"898f4a03-3b4b-4198-bebc-83e1b06a392c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-35-40 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-35-40","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:35:40.064499Z","keyId":"08ba7e78-ae01-4616-8676-eda30df82dd5","startDate":"2018-08-09T05:35:40.064499Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"07fe38ec-628a-4237-99e6-42b6690071c7","deletionTimestamp":"2018-08-18T05:32:44Z","acceptMappedClaims":null,"addIns":[],"appId":"5324ac32-3918-4889-a03b-10971d5fd697","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-32-22","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-32-22","identifierUris":["http://cli_create_rbac_sp_with_passwordgb2aj424gmfc6c722krs33nxzli3jb6mdsh7b226s4g"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-22 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-32-22","id":"dc30100d-a2f5-447a-a570-39586efb159b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-22 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-32-22","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:32:22.405675Z","keyId":"9902a980-71d5-4ffd-8ed9-3b55dd4f23dc","startDate":"2018-08-18T05:32:22.405675Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"083cc255-6f13-4500-b8ff-40c49d630ad9","deletionTimestamp":"2018-08-16T05:51:51Z","acceptMappedClaims":null,"addIns":[],"appId":"a8d94172-0248-46de-9aa1-2ea9a5213ccc","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-51-09","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-51-09","identifierUris":["http://cli_test_sp_with_kv_new_certb3wxtm2ripnomyy5brr3adr22ydt6rq4f6jymb2k4bhk45m"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"2046DD9FDE839A5E85AAFC2A8E63F20DF0C9AFD7","endDate":"2019-08-16T05:51:36.43082Z","keyId":"133fad69-a9b6-445a-a244-1bdf85a40d93","startDate":"2018-08-16T05:51:36.43082Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-51-09 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-51-09","id":"8897164e-d20b-46fc-bd2f-582f4cd9592e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-51-09 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-51-09","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0869449f-9d5c-4b19-862f-82cddaf39939","deletionTimestamp":"2018-08-02T05:33:25Z","acceptMappedClaims":null,"addIns":[],"appId":"b03da74c-dd82-4429-a410-9adb5cbca3f4","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-33-23","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-33-23","identifierUris":["http://cli_create_rbac_sp_minimalod55kndh5efhqaykezauc3fmrcgzbls65tyes4p4efgttnouc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-23 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-33-23","id":"19764c63-cc1e-44d5-8a40-aae0fb7e08f5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-23 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-33-23","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:33:23.051436Z","keyId":"9d056381-6589-40f1-9238-c7b6582a0836","startDate":"2018-08-02T05:33:23.051436Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0892628d-faf9-49c6-ad1b-bef99795d380","deletionTimestamp":"2018-08-11T05:27:25Z","acceptMappedClaims":null,"addIns":[],"appId":"b35d5005-49ca-4ead-96a8-82fd8d06b8cd","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-13-23","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-13-23","identifierUris":["http://clitestg3nrcrr7dv"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-23 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-13-23","id":"8c82011e-714e-4e87-898e-2b5f0f2e3ea3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-23 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-13-23","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:13:23.190455Z","keyId":"3b8f388f-14c2-490f-86a1-b3f49fa4710f","startDate":"2018-08-11T05:13:23.190455Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"08e6631d-37ea-40cf-a12e-38bfaee9ffeb","deletionTimestamp":"2018-08-23T05:20:37Z","acceptMappedClaims":null,"addIns":[],"appId":"c7c5fd19-4273-4895-a76d-40725a967dab","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-07-24","identifierUris":["http://clitestvsniyuwknn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-07-24","id":"f27116b3-9a3e-46ec-a322-7eb073858bd7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:07:24.759322Z","keyId":"e1ff3bb6-1e2d-4a08-923c-80438ba929df","startDate":"2018-08-23T05:07:24.759322Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"09b2c770-1778-48b1-8c6b-b96296cd092c","deletionTimestamp":"2018-08-02T05:22:44Z","acceptMappedClaims":null,"addIns":[],"appId":"4e13bcd1-6e91-4552-bdae-c457e6e5e44a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-08-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-08-31","identifierUris":["http://clitestii323rhl2a"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-08-31","id":"1ff8e0a8-b6ff-4000-99d1-18a22c06d108","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-08-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:08:31.661687Z","keyId":"b014edb2-3dbb-426c-b583-e7e4729ae33b","startDate":"2018-08-02T05:08:31.661687Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0b7010a1-41e5-473e-92a1-b1e9cd1af48e","deletionTimestamp":"2018-08-29T16:00:57Z","acceptMappedClaims":null,"addIns":[],"appId":"8924864e-f488-44ec-9fcb-10f11f6db79d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-16-00-45","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-16-00-45","identifierUris":["http://clisp-test-xsokxivrx"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-00-45 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-16-00-45","id":"8eb3f047-42e5-4745-bdeb-c0b4c5d7bfbe","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-00-45 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-16-00-45","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T16:00:50.711198Z","keyId":"03eda2f1-6679-4338-a9f7-f4dcb51bf476","startDate":"2018-08-29T16:00:50.711198Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0b77a846-fa20-44e7-822e-a94f0dc57ccb","deletionTimestamp":"2018-08-03T05:21:36Z","acceptMappedClaims":null,"addIns":[],"appId":"478a47c2-2cf4-450c-97d3-9eca33ca23ea","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-07-24","identifierUris":["http://clitestiadfjn5mrv"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-07-24","id":"768c76ef-683f-4e13-9ee6-130b46d7440d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:07:24.80297Z","keyId":"3d0cfd1d-e854-406b-939d-d8695ea8671e","startDate":"2018-08-03T05:07:24.80297Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0bebf15e-c442-4ff2-8bb6-f90d17e3a9b0","deletionTimestamp":"2018-08-23T05:32:58Z","acceptMappedClaims":null,"addIns":[],"appId":"84cea366-eb61-4d1a-86cd-bb441e66e3ce","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-32-49","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-32-49","identifierUris":["http://cli_create_rbac_sp_with_certhsrj3qxw4mnhh7lu5t6romaalhg37tdm2ipyqykeld5b32c"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"ACE0DBEE5C902E483FB1E081797CA2948422E766","endDate":"2019-08-23T05:32:57.007819Z","keyId":"a7cb2e93-eec2-4048-930b-e95975398b46","startDate":"2018-08-23T05:32:57.007819Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-32-49 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-32-49","id":"7848fd5b-3176-4afb-87a8-a1fb829956e2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-32-49 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-32-49","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0ca00b63-c0fb-4efa-8558-1d2f8c255242","deletionTimestamp":"2018-08-28T11:01:22Z","acceptMappedClaims":null,"addIns":[],"appId":"2bb11037-7d40-4da5-92c5-d0b2cb46eee1","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-11-01-14","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-11-01-14","identifierUris":["http://clisp-test-kn74sx2ro"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-14 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-11-01-14","id":"808898ef-43f9-4387-b3f4-bb752841b78c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-14 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-11-01-14","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T11:01:19.466655Z","keyId":"95f11330-476e-4c81-9616-e8c768964279","startDate":"2018-08-28T11:01:19.466655Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0e4150b4-4192-4e42-b357-860659ef7049","deletionTimestamp":"2018-08-17T11:04:06Z","acceptMappedClaims":null,"addIns":[],"appId":"b21a9694-dd0c-4dc1-bc42-f30141f06fb4","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp896717363","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp896717363","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp896717363"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp896717363 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp896717363","id":"29604e48-d9b4-42d5-9577-51712530ba7b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp896717363 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp896717363","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp896717363"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0e8dc25e-e24a-4ebc-8714-54c44444f044","deletionTimestamp":"2018-08-23T05:20:38Z","acceptMappedClaims":null,"addIns":[],"appId":"5bb6fbdf-4160-4c5b-8f0e-71a215c69451","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-07-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-07-25","identifierUris":["http://clitestp3jwcaiy2r"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-07-25","id":"c9de24aa-7593-4756-b043-3ffa57ada1a6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-07-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:07:25.326174Z","keyId":"c4d66757-0adc-459a-bf51-ec78ac54c119","startDate":"2018-08-23T05:07:25.326174Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0f1d75b6-7426-41b5-81cf-3f5b982b91de","deletionTimestamp":"2018-08-21T05:20:20Z","acceptMappedClaims":null,"addIns":[],"appId":"d6e68247-6875-44e1-88b4-8c35b29f7964","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-07-34","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-07-34","identifierUris":["http://clitestpwikvgxthf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-34 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-07-34","id":"30ab95db-a422-4a26-97cd-eee282809181","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-34 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-07-34","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:07:34.583036Z","keyId":"b5f71dcc-6636-4d3e-9be4-f740c55a046e","startDate":"2018-08-21T05:07:34.583036Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"0f786303-7110-4480-8883-a38f405ad4ff","deletionTimestamp":"2018-08-02T14:42:34Z","acceptMappedClaims":null,"addIns":[],"appId":"a22f6cd4-cad2-4466-a75e-efcff06468bb","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp71036449f","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp71036449f","identifierUris":["http://easycreate.azure.com/javasdkapp71036449f"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-10T14:42:31.574Z","keyId":"88521588-29b4-4d52-a9f6-98205099720f","startDate":"2018-08-02T14:42:31.574Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp71036449f on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp71036449f","id":"71aa257d-5faf-413f-ba1c-9962e44e03c1","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp71036449f on your behalf.","userConsentDisplayName":"Access + javasdkapp71036449f","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp71036449f"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"101b3a82-c6f9-4fa2-8194-8d0a1cd94021","deletionTimestamp":"2018-08-03T05:31:01Z","acceptMappedClaims":null,"addIns":[],"appId":"90e3fcab-1bf7-4b04-a5a7-a308fbd0de1d","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphkaxc3","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphkaxc3","identifierUris":["http://cli-graphkaxc3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphkaxc3 on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphkaxc3","id":"db4097cb-5002-4136-b3a0-232c3d4c129a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphkaxc3 on your behalf.","userConsentDisplayName":"Access + cli-graphkaxc3","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"11368fe9-4fa5-4ba8-a707-ee95864b3234","deletionTimestamp":"2018-08-17T05:31:32Z","acceptMappedClaims":null,"addIns":[],"appId":"76d0e3b8-7141-408f-a575-4c17c9bb1a75","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-njeqak6i6","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-njeqak6i6 on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-njeqak6i6","id":"34bfa92d-eab7-409e-bed0-a73b098fda69","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-njeqak6i6 on your behalf.","userConsentDisplayName":"Access + cli-native-njeqak6i6","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"11460235-d041-447b-8b2c-0ff43b7356ae","deletionTimestamp":"2018-08-14T05:22:43Z","acceptMappedClaims":null,"addIns":[],"appId":"ec323fcd-9f5e-4894-b5de-47d97af35b01","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-07-24","identifierUris":["http://clitestwsbxejzlda"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-07-24","id":"12d8b1bb-dd62-48e5-8146-5e602d46e0c9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:07:24.783403Z","keyId":"2abf196f-bf0b-4fae-b42e-7b82a2b9ecc2","startDate":"2018-08-14T05:07:24.783403Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"125a3b31-569e-4d77-9517-766d9ec4b225","deletionTimestamp":"2018-08-29T15:30:55Z","acceptMappedClaims":null,"addIns":[],"appId":"9e4a859d-a1e2-4a3c-9d18-6208a21fcfa7","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgo7i7fx4o424thmbyln2tvkuuirjwjdtebprbhl3bbau37cm62fkstn5wzapk7i7ow","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgo7i7fx4o424thmbyln2tvkuuirjwjdtebprbhl3bbau37cm62fkstn5wzapk7i7ow","identifierUris":["http://clitest.rgo7i7fx4o424thmbyln2tvkuuirjwjdtebprbhl3bbau37cm62fkstn5wzapk7i7ow"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgo7i7fx4o424thmbyln2tvkuuirjwjdtebprbhl3bbau37cm62fkstn5wzapk7i7ow + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgo7i7fx4o424thmbyln2tvkuuirjwjdtebprbhl3bbau37cm62fkstn5wzapk7i7ow","id":"bf4eff05-086e-4996-a98a-984243a48b72","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgo7i7fx4o424thmbyln2tvkuuirjwjdtebprbhl3bbau37cm62fkstn5wzapk7i7ow + on your behalf.","userConsentDisplayName":"Access clitest.rgo7i7fx4o424thmbyln2tvkuuirjwjdtebprbhl3bbau37cm62fkstn5wzapk7i7ow","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:46.935112Z","keyId":"d846d074-4d7c-472e-8254-be77a429446f","startDate":"2018-08-29T15:30:46.935112Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:38.932396Z","keyId":"b3b6d52c-c0ed-4229-9a7d-a55cb3a9be9b","startDate":"2018-08-29T15:30:38.932396Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"12b75dce-5658-4fa6-a093-4f7bb8e08d45","deletionTimestamp":"2018-08-17T05:21:27Z","acceptMappedClaims":null,"addIns":[],"appId":"9b390b95-ae90-457b-9e24-74f91a1c2c5c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-07-29","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-07-29","identifierUris":["http://clitestl5ujxn2cgj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-29 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-07-29","id":"6c0ae225-9809-43e9-9b84-0440a95ef67a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-29 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-07-29","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:07:29.260709Z","keyId":"b05a3f4e-e7ec-4275-8c4f-d7bf0bdd4677","startDate":"2018-08-17T05:07:29.260709Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"12e03f8f-0c34-4259-9d49-bc6b81d38071","deletionTimestamp":"2018-08-01T05:07:23Z","acceptMappedClaims":null,"addIns":[],"appId":"2d796236-5a60-4f51-af8d-6a084a48f020","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-07-18","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-07-18","identifierUris":["http://clitesthefhxtlgvi"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-18 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-07-18","id":"74dabcfa-685a-4178-9b97-b0b5cc9e9568","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-18 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-07-18","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:07:18.913261Z","keyId":"ae7c2c75-56ae-4df2-88fc-79a1eb696f21","startDate":"2018-08-01T05:07:18.913261Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"14523b34-f2ff-4472-a628-1fc9b56aad85","deletionTimestamp":"2018-08-08T14:52:20Z","acceptMappedClaims":null,"addIns":[],"appId":"3512cfdf-c07a-46fb-bace-51ad3ac14cc8","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappc0521526b","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappc0521526b","identifierUris":["http://easycreate.azure.com/javasdkappc0521526b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-16T14:52:17.803Z","keyId":"d2cb9ee3-5a23-4160-a20e-ce5ca7bed9e4","startDate":"2018-08-08T14:52:17.803Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappc0521526b on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappc0521526b","id":"201b9c4a-a53d-4307-b77d-5dbf7142df7a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappc0521526b on your behalf.","userConsentDisplayName":"Access + javasdkappc0521526b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappc0521526b"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"152fe440-8858-4c98-9de0-b6b6a9616481","deletionTimestamp":"2018-08-01T05:32:21Z","acceptMappedClaims":null,"addIns":[],"appId":"a1507cfa-ccb9-4792-a4b9-e0378c71c7fe","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-32-19","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-32-19","identifierUris":["http://cli_create_rbac_sp_minimalwoydjpe6g7nxvznb7qhi5hcbzqcyzkzlv6klxibubsparo46j"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-19 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-32-19","id":"332e88f4-8f78-4ac8-bba8-ab86c0e6a5ef","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-19 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-32-19","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:32:19.427293Z","keyId":"af684bd0-bc56-4714-a43d-4eb58e9fdd26","startDate":"2018-08-01T05:32:19.427293Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"15881529-469d-47c2-aa7e-4cf2032d485d","deletionTimestamp":"2018-08-10T05:34:34Z","acceptMappedClaims":null,"addIns":[],"appId":"7b82d432-b26d-48d7-9a8a-92d2227276dd","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-11-43","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-11-43","identifierUris":["http://clitestmlwr5acz67"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-43 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-11-43","id":"657e2eb6-804f-4588-b4fd-ddcc1a2d20da","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-43 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-11-43","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:11:43.287931Z","keyId":"6b8785f9-da85-417d-810f-c62a4526b8be","startDate":"2018-08-10T05:11:43.287931Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1610ce8d-bae8-49c8-aa15-511f772ded94","deletionTimestamp":"2018-08-03T05:32:19Z","acceptMappedClaims":null,"addIns":[],"appId":"ade27fe5-45b9-4f0a-b8f7-f52cd3e11a60","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-32-10","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-32-10","identifierUris":["http://cli_test_sp_with_kv_existing_certyzhoepdfrpur4u6g4fry7ya77mz5afjb5t4k7kik5d"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"9F08E2DCC1BF408CABAB167231FAB98AEAB0FD91","endDate":"2019-08-03T05:32:17.493341Z","keyId":"8befe2d6-fe15-4b76-b056-86b44610bc40","startDate":"2018-08-03T05:32:17.493341Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-32-10 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-32-10","id":"f9c17083-849b-4ad6-81c6-97f160de56b7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-32-10 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-32-10","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"162ebec5-104f-4dfa-b844-59e72dbcb643","deletionTimestamp":"2018-08-08T05:44:38Z","acceptMappedClaims":null,"addIns":[],"appId":"815dd3a8-610f-4828-ba7f-951e88d65d13","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphl4fim","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphl4fim","identifierUris":["http://cli-graphl4fim"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphl4fim on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphl4fim","id":"d6a650de-ef91-4ff5-8541-5417326b0e0b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphl4fim on your behalf.","userConsentDisplayName":"Access + cli-graphl4fim","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"167e7224-bec9-44df-9ed9-9905f81cfc68","deletionTimestamp":"2018-08-22T05:07:50Z","acceptMappedClaims":null,"addIns":[],"appId":"09679e58-87a9-4292-9076-4e3408e2da8b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-07-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-07-27","identifierUris":["http://clitestccbrh2rp22"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-07-27","id":"efc6d794-7e17-45ae-a777-3a8930c851de","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-07-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:07:27.711301Z","keyId":"4faaea57-ee42-42ba-a3d8-67dad1ceb37f","startDate":"2018-08-22T05:07:27.711301Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"16d3cafd-d0a5-4e8e-a5a8-3f62457d033a","deletionTimestamp":"2018-08-03T05:31:22Z","acceptMappedClaims":null,"addIns":[],"appId":"4d04d3c6-4e9e-4aea-a216-0abdc1a4bced","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-07-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-07-25","identifierUris":["http://clitesttxv7bdsvfg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-07-25","id":"381091fa-ca37-4647-8a2c-68851d113f09","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-07-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:07:25.377611Z","keyId":"5138ed7b-a298-4a67-90e0-946cb9ffcca8","startDate":"2018-08-03T05:07:25.377611Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"18d6e9c6-4a62-46d5-bc0f-3aaae5fb22e3","deletionTimestamp":"2018-08-11T05:14:21Z","acceptMappedClaims":null,"addIns":[],"appId":"89322de9-f3ca-47b9-a313-56632cab0f26","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rg7qvsnztjqqideteu3mxxgtnuvq7u25jhphs42ij2p6oz6tltqkyargzsyvqjhfh5b","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rg7qvsnztjqqideteu3mxxgtnuvq7u25jhphs42ij2p6oz6tltqkyargzsyvqjhfh5b","identifierUris":["http://clitest.rg7qvsnztjqqideteu3mxxgtnuvq7u25jhphs42ij2p6oz6tltqkyargzsyvqjhfh5b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rg7qvsnztjqqideteu3mxxgtnuvq7u25jhphs42ij2p6oz6tltqkyargzsyvqjhfh5b + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rg7qvsnztjqqideteu3mxxgtnuvq7u25jhphs42ij2p6oz6tltqkyargzsyvqjhfh5b","id":"678d9a56-998a-4d62-83ce-f6b8cf21bc2f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rg7qvsnztjqqideteu3mxxgtnuvq7u25jhphs42ij2p6oz6tltqkyargzsyvqjhfh5b + on your behalf.","userConsentDisplayName":"Access clitest.rg7qvsnztjqqideteu3mxxgtnuvq7u25jhphs42ij2p6oz6tltqkyargzsyvqjhfh5b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:14:19.256711Z","keyId":"b7438ab0-f866-487e-8900-b2c075e5903d","startDate":"2018-08-11T05:14:19.256711Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-11T05:13:51.167884Z","keyId":"c23985de-3667-44d1-8c47-8ff357ed7184","startDate":"2018-08-11T05:13:51.167884Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"199964a1-5808-4783-9bc7-b5366ecdb2da","deletionTimestamp":"2018-08-01T05:32:53Z","acceptMappedClaims":null,"addIns":[],"appId":"542fbed9-5836-46ec-b64f-e4a2ec6ea8d3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-32-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-32-27","identifierUris":["http://cli_create_rbac_sp_with_passwordeatew55pojfxi7qs3aujbwarlx5w6uam4m7zae4ry2y"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-32-27","id":"dca26371-032a-4a17-acf8-c86af95d9797","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-32-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:32:27.780595Z","keyId":"91a70ad9-d0e0-4291-a1f5-db8dbd2d9168","startDate":"2018-08-01T05:32:27.780595Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1a52c89d-c86a-415e-a307-2cb48e3587b1","deletionTimestamp":"2018-08-22T05:32:16Z","acceptMappedClaims":null,"addIns":[],"appId":"e3e0b29b-5171-4565-b3ae-df2259919eca","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-32-14","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-32-14","identifierUris":["http://cli_create_rbac_sp_minimalc3fe7zvygccl6quuwiezsy4eecullu4a2fysuenkmrwcdtbh5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-32-14 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-32-14","id":"13bc3b96-f652-4b85-be6a-279f34c6ac46","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-32-14 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-32-14","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:32:14.25805Z","keyId":"288d9ec9-ee70-4637-836f-8190b67e6353","startDate":"2018-08-22T05:32:14.25805Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1af1d913-7502-4f86-b51e-ba1a479d2207","deletionTimestamp":"2018-08-16T05:34:49Z","acceptMappedClaims":null,"addIns":[],"appId":"25da2578-ff5a-46ba-9573-1644fd6822a1","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-26-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-26-31","identifierUris":["http://clitestut2spx7mlk"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-26-31","id":"4d089292-baee-4001-abdb-ad5a2152ee74","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-26-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:26:31.389631Z","keyId":"70dda944-7a2f-4d95-89a1-604663002584","startDate":"2018-08-16T05:26:31.389631Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1bd64f17-0d72-4344-8180-ec711481abbb","deletionTimestamp":"2018-08-03T05:31:21Z","acceptMappedClaims":null,"addIns":[],"appId":"0bec396d-4f3b-40ae-8155-48d0b98c5f24","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-30-56","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-30-56","identifierUris":["http://cli-graphlem46"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-30-56 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-30-56","id":"baf5c332-6e84-4253-b7c8-c6a4f84b3fba","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-30-56 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-30-56","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:30:56.390794Z","keyId":"4d73f689-ea0c-4316-9795-26a752ed5906","startDate":"2018-08-03T05:30:56.390794Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1bfb1548-2774-406c-971c-ab1dcd96892f","deletionTimestamp":"2018-08-29T16:02:18Z","acceptMappedClaims":null,"addIns":[],"appId":"6ab2a06c-303b-4727-88df-9687615284fc","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-16-01-45","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-16-01-45","identifierUris":["http://cli_test_sp_with_kv_existing_cert34gwgjgrm3a4vxlgkcrfbt3qpsf363eof5migy22cg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"71C964A8E2D1D57CD330C3BE85D5C6E84D0FB3E6","endDate":"2019-08-29T16:02:12.912897Z","keyId":"cdf60dec-ef0b-4b2f-8b7f-0ea2899a4402","startDate":"2018-08-29T16:02:12.912897Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-01-45 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-16-01-45","id":"e5ea70bc-9127-44e6-b204-abcb6555677a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-01-45 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-16-01-45","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1c433694-ca2a-4ca7-bd72-62fa1d37d7ef","deletionTimestamp":"2018-08-11T05:36:13Z","acceptMappedClaims":null,"addIns":[],"appId":"08e935b7-d039-4731-88fb-550d2e186ea4","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-13-17","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-13-17","identifierUris":["http://clitestxqxus3cfxy"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-17 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-13-17","id":"1d7ea731-7965-4ec0-95f4-39ac09e70e6f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-17 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-13-17","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:13:17.389595Z","keyId":"b339fa44-a3e1-4030-b9a5-ee769dace12a","startDate":"2018-08-11T05:13:17.389595Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1c842291-17d3-459e-b13a-f3bfbc6a5736","deletionTimestamp":"2018-08-01T14:49:16Z","acceptMappedClaims":null,"addIns":[],"appId":"761ca92b-6867-4e9b-83cf-b418703c0226","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp36537998c","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp36537998c","identifierUris":["http://easycreate.azure.com/javasdkapp36537998c"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-09T14:49:11.689Z","keyId":"02043371-ffb1-40b1-a41b-7036773df5ef","startDate":"2018-08-01T14:49:11.689Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp36537998c on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp36537998c","id":"2c12bc15-fcf2-4387-a36e-d9cb36749cdc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp36537998c on your behalf.","userConsentDisplayName":"Access + javasdkapp36537998c","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp36537998c"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1e8b01f0-af5a-4fd1-bf3b-8e31a957044d","deletionTimestamp":"2018-08-14T11:06:39Z","acceptMappedClaims":null,"addIns":[],"appId":"22f49aaa-6836-460c-89d9-39c239a9d26c","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp429267656","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp429267656","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp429267656"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp429267656 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp429267656","id":"6a8defa8-642e-4d6f-ae52-17fb5f7533cf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp429267656 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp429267656","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp429267656"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1ed62cbe-55ee-488a-9f14-4bc6f8fd00be","deletionTimestamp":"2018-08-29T15:44:07Z","acceptMappedClaims":null,"addIns":[],"appId":"6ea123dd-85a8-4310-b17b-dfc272d56534","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-15-30-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-15-30-04","identifierUris":["http://clitests23nippke6"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-15-30-04","id":"b3eb398b-7bda-4b58-97dd-c03e5ce4fb63","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-15-30-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:04.004339Z","keyId":"935865fd-a830-4c3a-8a79-2d9dfda630d1","startDate":"2018-08-29T15:30:04.004339Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1f105e52-69b1-41bd-976b-fbb7e0caab94","deletionTimestamp":"2018-08-22T11:19:39Z","acceptMappedClaims":null,"addIns":[],"appId":"2169107b-e048-4efa-a6ab-6a3dbd44150e","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp476377016","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp476377016","identifierUris":["http://easycreate.azure.com/javasdkapp476377016"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-10T11:19:35.9446176Z","keyId":"0d9ab8f8-082c-4a5a-8bc7-29d580784599","startDate":"2018-08-22T11:19:35.9446176Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-30T11:19:35.9395763Z","keyId":"d4fb22db-5ef7-431e-8d6e-6b2360769b24","startDate":"2018-08-22T11:19:35.9395763Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp476377016 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp476377016","id":"79cfbb8c-cbcb-474c-9069-b1449dc4c6d3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp476377016 on your behalf.","userConsentDisplayName":"Access + javasdkapp476377016","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-11T11:19:38.08154Z","keyId":"41fb4fa0-274f-4f92-ae00-b9a93b77f988","startDate":"2018-08-22T11:19:38.08154Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp476377016"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1f3c2c68-e017-415a-ab30-2a2e28e1bbd9","deletionTimestamp":"2018-08-18T05:24:03Z","acceptMappedClaims":null,"addIns":[],"appId":"af6cda53-6d87-42d4-8d7b-888677f30193","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-07-34","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-07-34","identifierUris":["http://clitestx7tq37kpjn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-34 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-07-34","id":"44eda011-b8e4-464c-9797-b03aaed8aa5a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-34 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-07-34","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:07:34.796468Z","keyId":"6c077490-d570-49cb-bfc4-4b7894c806eb","startDate":"2018-08-18T05:07:34.796468Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"1f604799-b8f3-4dc0-a654-6ef2b50eeae4","deletionTimestamp":"2018-08-16T05:26:43Z","acceptMappedClaims":null,"addIns":[],"appId":"0f6dd460-405a-451a-8f1f-a9fc3cd5b561","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-26-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-26-31","identifierUris":["http://clitestp3oy5jsqc2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-26-31","id":"710c6a91-72c3-4dad-8742-1c8fa82b5f77","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-26-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:26:31.494948Z","keyId":"cf388042-c200-4626-99df-edd0a5fad2bc","startDate":"2018-08-16T05:26:31.494948Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"20017ec1-0b2c-42b8-935c-cd8ae7839f77","deletionTimestamp":"2018-08-25T09:07:56Z","acceptMappedClaims":null,"addIns":[],"appId":"7c4215ac-8066-4d1c-9eaa-e046a983804f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-09-07-09","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-09-07-09","identifierUris":["http://cli_test_sp_with_kv_new_certzxnu3kwzswah2h2qalc2n543npnky75n2qxpyjmk3yiolv3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"D16CFB4F8473DFEC847C6CE8A3A6A639AB9A1A30","endDate":"2019-08-25T09:07:33.779384Z","keyId":"5b723f8b-f8a8-409d-9275-7a398616c2b9","startDate":"2018-08-25T09:07:33.779384Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-07-09 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-09-07-09","id":"8ced8a5b-01ad-4e65-9186-7b4d49ac2b62","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-07-09 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-09-07-09","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"201139d0-9a70-48bd-a218-1a6cc1e872b9","deletionTimestamp":"2018-08-25T09:07:01Z","acceptMappedClaims":null,"addIns":[],"appId":"2a615532-bdd1-4e38-8fa8-223e7aca24c0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-09-06-39","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-09-06-39","identifierUris":["http://cli_create_rbac_sp_with_passwordomnzuv4ldqbahrg56mmkbl3xgtfkuca4zvlxpells4m"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-06-39 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-09-06-39","id":"771a3588-ddec-4644-9863-3a943506634b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-06-39 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-09-06-39","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T09:06:39.514007Z","keyId":"7bec723d-53f1-4038-94a1-b327ffc0c128","startDate":"2018-08-25T09:06:39.514007Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2108f649-2b9e-4de3-8741-c3734cecf610","deletionTimestamp":"2018-08-30T19:17:50Z","acceptMappedClaims":null,"addIns":[],"appId":"79b01b26-3e3a-4366-a04a-95b1caa1130f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-19-17-23","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-19-17-23","identifierUris":["http://cli_test_sp_with_kv_existing_certw4bmeuhk4oheqirzlf5dtx6i5eoipqxp7wbbeoathc2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"F7088A26BE1F38AB13AC82642636F9B3C7266592","endDate":"2019-02-28T19:17:19Z","keyId":"137d1866-724c-406f-9dec-e29d4d8cb9f5","startDate":"2018-08-30T19:17:44.312868Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-17-23 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-19-17-23","id":"1d8fc626-6cec-4655-904c-6a5db485caac","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-17-23 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-19-17-23","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2224de98-8ba3-4347-97f1-c3cacd44164f","deletionTimestamp":"2018-08-11T05:37:18Z","acceptMappedClaims":null,"addIns":[],"appId":"7843a100-a73f-41f8-8ff0-a5729a47abab","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-13-21","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-13-21","identifierUris":["http://clitestal5jcsjdzp"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-21 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-13-21","id":"f4c15877-2170-4a8a-aac4-2363c490fb37","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-21 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-13-21","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:13:21.366619Z","keyId":"c3a4cc32-286b-408c-a676-2302e90f98d8","startDate":"2018-08-11T05:13:21.366619Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"238641ea-0b03-42b4-a722-c01075a23d4d","deletionTimestamp":"2018-08-22T14:40:35Z","acceptMappedClaims":null,"addIns":[],"appId":"ab127c30-b471-447a-9078-3226cd495698","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp25f7497272596","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp25f7497272596","identifierUris":["http://easycreate.azure.com/ssp25f7497272596"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp25f7497272596 on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp25f7497272596","id":"a8aaa02a-d638-4ce7-ac43-f92c97712a1e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp25f7497272596 on your behalf.","userConsentDisplayName":"Access + ssp25f7497272596","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp25f7497272596"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"23a8438f-7325-4fdc-846d-11d224f3becc","deletionTimestamp":"2018-08-09T05:37:54Z","acceptMappedClaims":null,"addIns":[],"appId":"38be36a8-c841-4601-9c3f-d59b4313aeff","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-10-45","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-10-45","identifierUris":["http://clitestngnk7o4glt"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-45 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-10-45","id":"ca786a7a-4eac-4b79-99b1-7ab1db714d4d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-45 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-10-45","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:10:45.680094Z","keyId":"6570c7c1-6c22-40e0-a718-e8cc6dd0f0ad","startDate":"2018-08-09T05:10:45.680094Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"25d76f51-ddad-4d0f-b10c-b83fa0f3ec8b","deletionTimestamp":"2018-08-03T11:20:32Z","acceptMappedClaims":null,"addIns":[],"appId":"b1ddca3d-c628-4e6e-a07c-198c3e22236c","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdkspc1131203c","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdkspc1131203c","identifierUris":["http://easycreate.azure.com/anotherapp/javasdkspc1131203c"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspc1131203c + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspc1131203c","id":"5a1db1a1-63ce-4d3b-b47e-71f3d6119941","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspc1131203c + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspc1131203c","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdkspc1131203c"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"262f3992-ef48-4a55-8f9c-60782e78a1aa","deletionTimestamp":"2018-08-25T09:06:04Z","acceptMappedClaims":null,"addIns":[],"appId":"93b4e28b-7066-42bb-aa03-e60311942cf9","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-09-05-53","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-09-05-53","identifierUris":["http://cli-graphkkvrl"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-05-53 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-09-05-53","id":"e1a9ef00-44e3-43ab-bb73-132feadebd7d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-05-53 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-09-05-53","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T09:05:53.963106Z","keyId":"381cb59e-60b1-4f70-b756-b6a23b97083e","startDate":"2018-08-25T09:05:53.963106Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2765cff9-3f27-4aa3-8ab8-97dffd6969ce","deletionTimestamp":"2018-08-31T20:43:39Z","acceptMappedClaims":null,"addIns":[],"appId":"eb81811f-354a-4a93-b253-f2ba382bc0f7","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"e871c30a-0e5f-4609-a283-78c93a573160","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"277ed67b-7845-4a77-88a5-86244a8aed29","deletionTimestamp":"2018-08-28T11:03:25Z","acceptMappedClaims":null,"addIns":[],"appId":"3fc28e7f-a38e-4a2c-bcb7-1db19043e962","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-11-03-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-11-03-04","identifierUris":["http://cli_test_sp_with_kv_existing_certje3k6rpn7bt5laoc37au4eeooptyfzkwwdig4yi4l72"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"412C7DBA032C19813F86E204FFA7B3DF3535FD9D","endDate":"2019-02-28T11:02:55Z","keyId":"294b0d94-3521-42a5-8f0f-50e67b7c6b49","startDate":"2018-08-28T11:03:23.400188Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-03-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-11-03-04","id":"fc3b835c-9a62-401b-9481-6aa28402363f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-03-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-11-03-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"279236bb-bb87-4009-beef-576b52294a08","deletionTimestamp":"2018-08-31T05:24:31Z","acceptMappedClaims":null,"addIns":[],"appId":"54b4a04d-68f7-468b-9fe2-78dadef57332","appRoles":[],"availableToOtherTenants":false,"displayName":"ssped2769814a5ff","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssped2769814a5ff","identifierUris":["http://easycreate.azure.com/ssped2769814a5ff"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssped2769814a5ff on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssped2769814a5ff","id":"1a429fa4-ff14-4958-9d64-614713bf08d9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssped2769814a5ff on your behalf.","userConsentDisplayName":"Access + ssped2769814a5ff","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssped2769814a5ff"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"27a9fb37-616a-4bff-b74a-d416bd8c4edc","deletionTimestamp":"2018-08-22T05:31:49Z","acceptMappedClaims":null,"addIns":[],"appId":"02058f69-8fb2-40ef-84fe-49d5842bd831","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graph5g3ah","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graph5g3ah","identifierUris":["http://cli-graph5g3ah"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graph5g3ah on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graph5g3ah","id":"3bb609b6-a882-4dfd-ac8c-08931823dbb6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graph5g3ah on your behalf.","userConsentDisplayName":"Access + cli-graph5g3ah","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2843cc21-a60c-4dd7-9d71-d77f31db4048","deletionTimestamp":"2018-08-08T05:29:52Z","acceptMappedClaims":null,"addIns":[],"appId":"0b787a2b-fce9-400c-a6cc-f422251bd77d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-16-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-16-04","identifierUris":["http://clitestvhv43vs42b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-16-04","id":"a0d0cc0c-bace-4390-ba97-94a5cb344c8a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-16-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:16:04.76766Z","keyId":"ed34410b-7f12-4275-b734-f223a3c57d30","startDate":"2018-08-08T05:16:04.76766Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"28f5a235-56ce-425b-ae3c-2a5a737de30b","deletionTimestamp":"2018-08-30T18:43:17Z","acceptMappedClaims":null,"addIns":[],"appId":"c3f526f8-5a15-46e9-848c-8cc550b0ca45","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgd2ls5efa43a5y4pjvgttm5doexbmk2obneoq7cbxgzfcyer3qdf6imry44fv33dr4","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgd2ls5efa43a5y4pjvgttm5doexbmk2obneoq7cbxgzfcyer3qdf6imry44fv33dr4","identifierUris":["http://clitest.rgd2ls5efa43a5y4pjvgttm5doexbmk2obneoq7cbxgzfcyer3qdf6imry44fv33dr4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgd2ls5efa43a5y4pjvgttm5doexbmk2obneoq7cbxgzfcyer3qdf6imry44fv33dr4 + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgd2ls5efa43a5y4pjvgttm5doexbmk2obneoq7cbxgzfcyer3qdf6imry44fv33dr4","id":"59a26f49-dacf-4b90-805c-bc93d32ebe26","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgd2ls5efa43a5y4pjvgttm5doexbmk2obneoq7cbxgzfcyer3qdf6imry44fv33dr4 + on your behalf.","userConsentDisplayName":"Access clitest.rgd2ls5efa43a5y4pjvgttm5doexbmk2obneoq7cbxgzfcyer3qdf6imry44fv33dr4","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T18:43:07.904168Z","keyId":"b736395f-267f-4b17-8594-a11808549197","startDate":"2018-08-30T18:43:07.904168Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-30T18:42:43.57017Z","keyId":"06be994d-0ec9-4c41-b9b3-39e6c2091117","startDate":"2018-08-30T18:42:43.57017Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"29729b01-5804-4061-9eeb-2da46eb769d9","deletionTimestamp":"2018-08-11T05:39:37Z","acceptMappedClaims":null,"addIns":[],"appId":"5cf9761a-04f8-48ef-88dc-d290451a900d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-39-05","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-39-05","identifierUris":["http://cli_create_rbac_sp_with_passwordarbgtsafsf3koccj3c7szxryr5sovf26alntcemms35"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-39-05 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-39-05","id":"a6da8989-d286-4f17-9149-3f709e510de8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-39-05 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-39-05","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:39:05.105212Z","keyId":"d3da60e0-39c1-4f35-95fc-b647fb8479b9","startDate":"2018-08-11T05:39:05.105212Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2b29df0f-eddd-4573-91b0-97366dea3108","deletionTimestamp":"2018-08-25T08:48:56Z","acceptMappedClaims":null,"addIns":[],"appId":"166fc0d5-9afd-41a3-87e4-5b47fac3c671","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-08-35-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-08-35-54","identifierUris":["http://clitestjfokxoijxb"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-08-35-54","id":"45098d52-a5f3-418b-85c0-02929844bdc1","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-08-35-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T08:35:54.896219Z","keyId":"31910031-5359-435e-8807-7f59f8745611","startDate":"2018-08-25T08:35:54.896219Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2bc3ccc8-2a92-4d47-919e-ef3a3f884510","deletionTimestamp":"2018-08-15T15:02:43Z","acceptMappedClaims":null,"addIns":[],"appId":"32dda18a-86e5-432d-ab05-1f3f3aa13a74","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappd2d80843c","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappd2d80843c","identifierUris":["http://easycreate.azure.com/javasdkappd2d80843c"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-23T15:02:40.415Z","keyId":"97622873-e027-4417-a3e6-126e1e97cd41","startDate":"2018-08-15T15:02:40.415Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappd2d80843c on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappd2d80843c","id":"fe93ab18-9a6d-4e97-a667-557c49105145","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappd2d80843c on your behalf.","userConsentDisplayName":"Access + javasdkappd2d80843c","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappd2d80843c"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2dcf2277-2424-45a8-bcdd-9e6e7dd4cb7f","deletionTimestamp":"2018-08-25T08:36:43Z","acceptMappedClaims":null,"addIns":[],"appId":"d7bc8bee-69d2-423c-95d2-59caf12c0d54","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgosr4tysop5n5n3pvck7n7f6vdanrf4zzqok3ezwqshc7nd7jqotf5c634zt64nyun","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgosr4tysop5n5n3pvck7n7f6vdanrf4zzqok3ezwqshc7nd7jqotf5c634zt64nyun","identifierUris":["http://clitest.rgosr4tysop5n5n3pvck7n7f6vdanrf4zzqok3ezwqshc7nd7jqotf5c634zt64nyun"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgosr4tysop5n5n3pvck7n7f6vdanrf4zzqok3ezwqshc7nd7jqotf5c634zt64nyun + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgosr4tysop5n5n3pvck7n7f6vdanrf4zzqok3ezwqshc7nd7jqotf5c634zt64nyun","id":"ef4a7960-0c31-4b00-933f-e39cfc61dacd","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgosr4tysop5n5n3pvck7n7f6vdanrf4zzqok3ezwqshc7nd7jqotf5c634zt64nyun + on your behalf.","userConsentDisplayName":"Access clitest.rgosr4tysop5n5n3pvck7n7f6vdanrf4zzqok3ezwqshc7nd7jqotf5c634zt64nyun","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T08:36:41.071147Z","keyId":"ea10f0e2-828d-4e02-85d0-b71e0a1ae8c9","startDate":"2018-08-25T08:36:41.071147Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-25T08:36:28.115275Z","keyId":"b6343211-aac7-4ab4-be2e-cc22863c384b","startDate":"2018-08-25T08:36:28.115275Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2df97e4d-7cb6-4db9-b9cd-4fb894b0b811","deletionTimestamp":"2018-08-25T08:35:58Z","acceptMappedClaims":null,"addIns":[],"appId":"363dd5a1-22d9-44f1-a65f-978b116efe04","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-08-35-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-08-35-54","identifierUris":["http://clitest36fujsx3ge"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-08-35-54","id":"23c4367e-bf3a-4bba-ad01-6680df13adf8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-08-35-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T08:35:54.92932Z","keyId":"2996d976-a02d-418d-81a9-7346d8b37d3e","startDate":"2018-08-25T08:35:54.92932Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2ef0bb80-90c8-4ed7-b0d1-b3c23a8e8d30","deletionTimestamp":"2018-08-09T05:35:54Z","acceptMappedClaims":null,"addIns":[],"appId":"528654de-ddd1-4c12-ac50-534b2d667021","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-eyjtzj4tl","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-eyjtzj4tl on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-eyjtzj4tl","id":"6d168404-3436-4212-9710-47bfcc3bf73d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-eyjtzj4tl on your behalf.","userConsentDisplayName":"Access + cli-native-eyjtzj4tl","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2fc6bb9c-3d1e-463f-97e6-86e919dd3842","deletionTimestamp":"2018-08-16T05:39:27Z","acceptMappedClaims":null,"addIns":[],"appId":"9678f0d0-1cf4-473e-9c79-3d42c5815477","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-26-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-26-31","identifierUris":["http://clitestevm32ndq7s"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-26-31","id":"d631b10e-9605-499f-9257-b99d0e2f3829","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-26-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:26:31.452683Z","keyId":"3b3e8cd2-d4a4-43a5-a59f-e4fb35323d62","startDate":"2018-08-16T05:26:31.452683Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"304c6d01-b156-4eab-b41a-21646a360a30","deletionTimestamp":"2018-08-04T05:34:02Z","acceptMappedClaims":null,"addIns":[],"appId":"50b46982-d5ac-4eaa-85ab-d81c2d0bae10","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-33-48","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-33-48","identifierUris":["http://clisp-test-vebojdvhi"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-33-48 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-33-48","id":"8bc700bf-e0af-41ab-9cfc-2f8cf91a077f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-33-48 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-33-48","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:33:54.581859Z","keyId":"6374aca9-f24d-4404-9c9c-750d7bf75108","startDate":"2018-08-04T05:33:54.581859Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3199390b-7627-4f81-bb0f-969475b71563","deletionTimestamp":"2018-08-24T05:30:30Z","acceptMappedClaims":null,"addIns":[],"appId":"1f1cc91c-13b4-479f-a531-1518c0799de8","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-29-55","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-29-55","identifierUris":["http://clitest5jpyftb3w2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-55 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-29-55","id":"53cb53d5-86a3-43da-b566-21331379b705","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-55 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-29-55","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:29:55.902457Z","keyId":"393105c5-9be5-4670-b4a0-9489d52d5f08","startDate":"2018-08-24T05:29:55.902457Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"31a58da5-8961-4618-8199-3120fa7185c7","deletionTimestamp":"2018-08-01T05:34:15Z","acceptMappedClaims":null,"addIns":[],"appId":"19d20c18-93df-44bb-902c-71dd08063d12","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-07-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-07-25","identifierUris":["http://clitestmfyj5ahyrm"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-07-25","id":"9692e7a9-79ab-4c83-ba90-bb6efeaed3e4","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-07-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:07:25.555867Z","keyId":"337af9e8-cdfa-4e2e-8747-53d32e670bd9","startDate":"2018-08-01T05:07:25.555867Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"31f4e07a-a9ac-46f9-b8df-4c452dcded09","deletionTimestamp":"2018-08-10T11:12:50Z","acceptMappedClaims":null,"addIns":[],"appId":"12af6761-fd6c-44fc-9535-318e6165dfde","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp5fb314967","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp5fb314967","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp5fb314967"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp5fb314967 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp5fb314967","id":"2c850978-4824-42b2-92d2-2417913e42b2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp5fb314967 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp5fb314967","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp5fb314967"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"323aa94a-ce0e-4b64-907d-fdaa4aa6ba7b","deletionTimestamp":"2018-08-13T11:06:24Z","acceptMappedClaims":null,"addIns":[],"appId":"6f8c709c-d084-49b9-868b-cd687a7fa387","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdkspc80795594","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdkspc80795594","identifierUris":["http://easycreate.azure.com/anotherapp/javasdkspc80795594"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspc80795594 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspc80795594","id":"afe005a9-6a7c-45ec-b19d-6c9b8f3e8570","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspc80795594 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspc80795594","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdkspc80795594"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"32cbf676-0653-4ca9-847d-dd9f017ab97c","deletionTimestamp":"2018-08-18T05:33:44Z","acceptMappedClaims":null,"addIns":[],"appId":"51f76568-5262-442e-aaf0-db799db29772","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-32-53","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-32-53","identifierUris":["http://cli_test_sp_with_kv_new_certbux5j5hptqwy23c43rcyr7pyspyjn7sry7uvq23l46l4fc5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"9F87A6ACB3D5BE837995B2A85B9A90C54B7EB6A5","endDate":"2019-08-18T05:33:18.717721Z","keyId":"280ded97-1817-4bc9-9fd5-a1e715b0218e","startDate":"2018-08-18T05:33:18.717721Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-53 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-32-53","id":"e17b8e67-d161-4cb5-9291-1731995567ab","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-53 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-32-53","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"350ace37-260d-4eec-abc0-bb527561f618","deletionTimestamp":"2018-08-14T05:27:56Z","acceptMappedClaims":null,"addIns":[],"appId":"2a15191d-c609-4e0d-a6ff-e17e0813e109","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-07-30","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-07-30","identifierUris":["http://clitestguvadwwz2k"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-30 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-07-30","id":"fe1aaa23-6007-42ac-9a06-1762311c364c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-30 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-07-30","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:07:30.064725Z","keyId":"eab0fa0c-6718-4082-bd57-925e5c6ebf77","startDate":"2018-08-14T05:07:30.064725Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"352c72bf-afdc-4837-8e8f-0288f8e7c859","deletionTimestamp":"2018-08-29T16:02:41Z","acceptMappedClaims":null,"addIns":[],"appId":"9c7e57a3-6796-40a8-ae7a-1f42ebb71689","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-16-01-43","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-16-01-43","identifierUris":["http://cli_test_sp_with_kv_new_cert6odd65t3gtdvoxafsfzlq53gtdrqv4mshojjd3acbknz7hl"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"2B3DB392966C3ACAFCEC6E3EA736B9F2081AC543","endDate":"2019-08-29T16:02:16.483592Z","keyId":"dd508d54-b23e-4bd6-b499-89f9780b7f82","startDate":"2018-08-29T16:02:16.483592Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-01-43 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-16-01-43","id":"eaa77b9f-8801-48d5-ac00-5246d33fd09a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-01-43 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-16-01-43","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"360e639d-66c3-4f86-99d6-c8fd1d2bcf30","deletionTimestamp":"2018-08-30T19:00:28Z","acceptMappedClaims":null,"addIns":[],"appId":"c4321966-c454-427f-871f-4e381af046bd","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-18-41-59","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-18-41-59","identifierUris":["http://clitestkb5gvmdsv6"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-18-41-59","id":"84902b31-d8cd-492c-8355-7895f1d0b1dd","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-18-41-59","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T18:41:59.67744Z","keyId":"d24bbddc-3456-4214-bda6-14a986e19e17","startDate":"2018-08-30T18:41:59.67744Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"36272dbc-22eb-4b23-ba51-63cedc7e0721","deletionTimestamp":"2018-08-28T10:36:10Z","acceptMappedClaims":null,"addIns":[],"appId":"d5cd2c11-8686-4f72-b078-47658584a1c1","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgjchr2ma2omgn5ymlhybizzzc34qyzwwcwzdnivgtstrp4g6t443dxmqjuhywe7fiw","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgjchr2ma2omgn5ymlhybizzzc34qyzwwcwzdnivgtstrp4g6t443dxmqjuhywe7fiw","identifierUris":["http://clitest.rgjchr2ma2omgn5ymlhybizzzc34qyzwwcwzdnivgtstrp4g6t443dxmqjuhywe7fiw"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgjchr2ma2omgn5ymlhybizzzc34qyzwwcwzdnivgtstrp4g6t443dxmqjuhywe7fiw + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgjchr2ma2omgn5ymlhybizzzc34qyzwwcwzdnivgtstrp4g6t443dxmqjuhywe7fiw","id":"6e447a63-35c2-4b28-bf59-faaff117391b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgjchr2ma2omgn5ymlhybizzzc34qyzwwcwzdnivgtstrp4g6t443dxmqjuhywe7fiw + on your behalf.","userConsentDisplayName":"Access clitest.rgjchr2ma2omgn5ymlhybizzzc34qyzwwcwzdnivgtstrp4g6t443dxmqjuhywe7fiw","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T10:36:03.732331Z","keyId":"012c485b-5b2b-47ed-9b9f-b0bce80fd8b6","startDate":"2018-08-28T10:36:03.732331Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-28T10:35:51.195682Z","keyId":"ada29d1b-7e31-4a06-9eba-311765c6a16f","startDate":"2018-08-28T10:35:51.195682Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"36fce99f-8f3f-4730-9fc3-5af55f61e543","deletionTimestamp":"2018-08-04T05:34:07Z","acceptMappedClaims":null,"addIns":[],"appId":"784362e4-9315-47b1-849b-e63711d8406f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-33-36","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-33-36","identifierUris":["http://cli-graphblbtk"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-33-36 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-33-36","id":"7cf76826-40f6-4bb7-988e-b3a5277c973b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-33-36 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-33-36","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:33:36.597904Z","keyId":"64cbd81c-1304-4a1a-b106-8e87a91df226","startDate":"2018-08-04T05:33:36.597904Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"37bc8ccc-9bf9-4824-a74f-1af9f048d8ee","deletionTimestamp":"2018-08-30T19:15:28Z","acceptMappedClaims":null,"addIns":[],"appId":"c4e71143-d306-4f1b-a5ed-096c3f28ddc4","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphib2aj","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphib2aj","identifierUris":["http://cli-graphib2aj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphib2aj on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphib2aj","id":"9726382e-6aa0-4ee9-ae4f-c7102fb79e6d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphib2aj on your behalf.","userConsentDisplayName":"Access + cli-graphib2aj","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"381c770a-34b4-47fb-80c4-a1257bfb49bf","deletionTimestamp":"2018-08-09T14:39:46Z","acceptMappedClaims":null,"addIns":[],"appId":"5342663c-a8bd-444d-870d-30e7270fed8b","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp57e99062e","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp57e99062e","identifierUris":["http://easycreate.azure.com/javasdkapp57e99062e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-17T14:39:42.385Z","keyId":"49bdf646-7ae7-4009-8af7-f4b55469c23c","startDate":"2018-08-09T14:39:42.385Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp57e99062e on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp57e99062e","id":"2a3857eb-12b1-4762-b360-50dea1640c35","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp57e99062e on your behalf.","userConsentDisplayName":"Access + javasdkapp57e99062e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp57e99062e"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"38473b36-aa3f-41b3-b641-581539657eb8","deletionTimestamp":"2018-08-07T05:08:28Z","acceptMappedClaims":null,"addIns":[],"appId":"cc8703fa-f3c3-440e-b1e5-2421f0d61a2f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-08-23","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-08-23","identifierUris":["http://clitestiuwpyykifb"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-23 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-08-23","id":"933412ae-3767-43dc-aa05-ecb57e2648e3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-23 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-08-23","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:08:23.999064Z","keyId":"28c02fc5-b655-42a2-9213-46ad2a592efc","startDate":"2018-08-07T05:08:23.999064Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"39ead3fa-def5-4cdf-a6cc-4d0f04e917ed","deletionTimestamp":"2018-08-14T05:07:33Z","acceptMappedClaims":null,"addIns":[],"appId":"9c74c30a-6d9f-4c32-8759-e7be8cdb9218","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-07-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-07-28","identifierUris":["http://clitestcrwz7pidix"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-07-28","id":"c3e4b5c9-b106-4eaf-a3ed-90097bb39d00","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-07-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:07:28.80745Z","keyId":"0b761ef3-0f4a-4eaa-9c5e-afd96aea999e","startDate":"2018-08-14T05:07:28.80745Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"39ff3ca9-b79c-4ad3-9c42-d090bda8166b","deletionTimestamp":"2018-08-16T05:50:34Z","acceptMappedClaims":null,"addIns":[],"appId":"a1e75678-5c13-48f5-a4b5-e6b0fcf84cef","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-50-05","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-50-05","identifierUris":["http://cli-graphp557t"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-05 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-50-05","id":"a100b4cd-8df9-4513-8445-5418fd5f2600","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-05 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-50-05","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:50:05.670881Z","keyId":"b497ed08-bc81-43f8-9cb2-21038ae93f0d","startDate":"2018-08-16T05:50:05.670881Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3b1a703b-c53d-4e5a-b4b4-65f2244310cb","deletionTimestamp":"2018-08-15T05:45:17Z","acceptMappedClaims":null,"addIns":[],"appId":"90358bff-1e00-4d5d-a3f1-562e94b70172","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-44-55","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-44-55","identifierUris":["http://cli_create_rbac_sp_with_password7ajrqjgq62vd36jgzdnnkg6s3tfemot7mhzzqkhvuxi"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-55 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-44-55","id":"a72ea7fa-9f95-4418-95a8-2d3fc33d0b6b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-55 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-44-55","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:44:55.781424Z","keyId":"94c5a6e8-5642-416b-97f6-648fb468e6c9","startDate":"2018-08-15T05:44:55.781424Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3bdf3a28-23e0-4a4b-9f11-22038315501b","deletionTimestamp":"2018-08-03T11:21:36Z","acceptMappedClaims":null,"addIns":[],"appId":"1a1fef9c-b828-4694-8590-1fa381186747","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappc64517851","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappc64517851","identifierUris":["http://easycreate.azure.com/javasdkappc64517851"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-10-22T11:21:33.7580776Z","keyId":"0805a0a7-2a70-4c85-987a-f6615e487d14","startDate":"2018-08-03T11:21:33.7580776Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-11T11:21:33.7477106Z","keyId":"0527a2f1-e3c9-460a-8767-2f1aa9612129","startDate":"2018-08-03T11:21:33.7477106Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappc64517851 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappc64517851","id":"89bdd2bd-536e-4e14-a673-7db83c2ed185","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappc64517851 on your behalf.","userConsentDisplayName":"Access + javasdkappc64517851","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappc64517851"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3e09e2a1-caa7-4070-bb73-bea26c9b3fc7","deletionTimestamp":"2018-08-10T14:41:43Z","acceptMappedClaims":null,"addIns":[],"appId":"d252ff83-465a-41fa-898c-22f803bb980f","appRoles":[],"availableToOtherTenants":false,"displayName":"sspcea92509e0be8","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/sspcea92509e0be8","identifierUris":["http://easycreate.azure.com/sspcea92509e0be8"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access sspcea92509e0be8 on behalf of the signed-in user.","adminConsentDisplayName":"Access + sspcea92509e0be8","id":"57ce39ba-a14d-44ff-9f64-823e69bfdeff","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access sspcea92509e0be8 on your behalf.","userConsentDisplayName":"Access + sspcea92509e0be8","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/sspcea92509e0be8"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3e218592-8e1b-45ed-93c4-068e5afa857b","deletionTimestamp":"2018-08-28T10:47:32Z","acceptMappedClaims":null,"addIns":[],"appId":"b3bd95c5-9e6e-401e-8fe0-4f0ff57aa7ab","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-10-35-18","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-10-35-18","identifierUris":["http://clitestk7wiusd6lj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-18 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-10-35-18","id":"20fc324a-877e-42f4-9031-87368f00fccc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-18 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-10-35-18","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T10:35:18.83739Z","keyId":"335aa7bb-c159-46ac-9419-99b81a72679b","startDate":"2018-08-28T10:35:18.83739Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3e3bbfbe-ec68-4c66-bfbb-cc5f9d6a0d58","deletionTimestamp":"2018-08-15T05:46:10Z","acceptMappedClaims":null,"addIns":[],"appId":"4a313403-e6ac-4e43-91e2-c95d2fc739c3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-45-52","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-45-52","identifierUris":["http://cli_test_sp_with_kv_existing_cert7lbwpwjq5z7imntk4sr7vmiemyu4dxqqc5yeoixivm"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"859137C388B3B9E78F08020BC982767E941DA75A","endDate":"2019-08-15T05:46:04.076624Z","keyId":"93445703-010b-4aae-a6f0-d0f2fceaa91b","startDate":"2018-08-15T05:46:04.076624Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-45-52 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-45-52","id":"e375da8e-4c58-4f10-9657-d230497a2e80","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-45-52 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-45-52","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3e985c48-310b-408a-af40-110e3a75daff","deletionTimestamp":"2018-08-17T21:03:26Z","acceptMappedClaims":null,"addIns":[],"appId":"51e94bc2-da73-46d0-9a32-b6142914ccb6","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp0af68841f","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp0af68841f","identifierUris":["http://easycreate.azure.com/javasdkapp0af68841f"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-05T22:03:23.8243027Z","keyId":"5f3e491c-2fc8-45d9-9939-f9015f62e71a","startDate":"2018-08-17T21:03:23.8243027Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-25T22:03:23.8198098Z","keyId":"e076b130-9e9f-41e5-afbc-785f874b1dd2","startDate":"2018-08-17T21:03:23.8198098Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp0af68841f on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp0af68841f","id":"b27ff402-403c-4a79-97cd-bdb1f87f0221","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp0af68841f on your behalf.","userConsentDisplayName":"Access + javasdkapp0af68841f","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-06T21:03:25.3371133Z","keyId":"da029455-c761-4e8a-a13a-772f6eb2bc4d","startDate":"2018-08-17T21:03:25.3371133Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp0af68841f"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3ef1ccb3-5e35-4517-bad4-297e3ab139b3","deletionTimestamp":"2018-08-09T05:10:46Z","acceptMappedClaims":null,"addIns":[],"appId":"d1f5a79b-23d5-4e6e-97b3-757f12232e3c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-10-43","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-10-43","identifierUris":["http://clitestbrc7tiuczd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-43 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-10-43","id":"59c4311f-7041-4b78-9dd1-e0d77be34688","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-43 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-10-43","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:10:43.143211Z","keyId":"8777ed2d-87a9-497d-9791-aad702a886d0","startDate":"2018-08-09T05:10:43.143211Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3f042e87-1f85-41a8-a164-b118814d7c85","deletionTimestamp":"2018-08-10T05:38:02Z","acceptMappedClaims":null,"addIns":[],"appId":"95d9cf79-2b46-4984-8bdf-8680164c2999","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-37-37","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-37-37","identifierUris":["http://cli-graphwemqg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-37-37 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-37-37","id":"195f4180-7f2e-49d0-b77e-33601db182ee","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-37-37 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-37-37","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:37:37.061955Z","keyId":"d78355d4-9cde-421a-a16f-42fb77ecff58","startDate":"2018-08-10T05:37:37.061955Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}],"odata.nextLink":"deletedDirectoryObjects/$/Microsoft.DirectoryServices.Application?$skiptoken=X''44537074020001000000304170706C69636174696F6E5F33663034326538372D316638352D343161382D613136342D623131383831346437633835304170706C69636174696F6E5F33663034326538372D316638352D343161382D613136342D6231313838313464376338350000000000000000000000''"}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['192849'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:37 GMT'] + duration: ['3663296'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [1K8OkAggl/7n8gRFRTrj6dGeUxfOr2uRL7vGQyv0S8k=] + ocp-aad-session-key: [VLySIZy6mk5eiZ1hgPfT4CNJGTSFhhdjW-KJnSHDH-JKO4YZatXexQ0RZ0zV6W1iEFKcOiCdaNPSO7InyPDbXhK-i0BEuy8kKIO-FDPdO3Jwj6u1u0R7ZXw7CQ_9j2tOpvItArmUAI88wFS31uugFA.H8H3TVZH-GWnCg-Unl7K25J-erI77GCWVag5JfgG88Q] + pragma: [no-cache] + request-id: [104dcd52-cafe-4288-93f6-04d1aa043ee4] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/deletedDirectoryObjects/$/Microsoft.DirectoryServices.Application?api-version=1.6&$skiptoken=X'44537074020001000000304170706C69636174696F6E5F33663034326538372D316638352D343161382D613136342D623131383831346437633835304170706C69636174696F6E5F33663034326538372D316638352D343161382D613136342D6231313838313464376338350000000000000000000000' + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#deletedDirectoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"3f264cbf-e61a-47f6-a150-67596e88d1ab","deletionTimestamp":"2018-08-22T05:08:26Z","acceptMappedClaims":null,"addIns":[],"appId":"d7d0ce91-8665-435b-a970-921284cd8a25","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rg46pwtk6cvuj3ctibmauy5ho7o4kchlk5qyntzbrsuooifxpyucvmcwbjysedrperd","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rg46pwtk6cvuj3ctibmauy5ho7o4kchlk5qyntzbrsuooifxpyucvmcwbjysedrperd","identifierUris":["http://clitest.rg46pwtk6cvuj3ctibmauy5ho7o4kchlk5qyntzbrsuooifxpyucvmcwbjysedrperd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rg46pwtk6cvuj3ctibmauy5ho7o4kchlk5qyntzbrsuooifxpyucvmcwbjysedrperd + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rg46pwtk6cvuj3ctibmauy5ho7o4kchlk5qyntzbrsuooifxpyucvmcwbjysedrperd","id":"9b0ad3de-2e13-4c92-a191-1b40f22868fb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rg46pwtk6cvuj3ctibmauy5ho7o4kchlk5qyntzbrsuooifxpyucvmcwbjysedrperd + on your behalf.","userConsentDisplayName":"Access clitest.rg46pwtk6cvuj3ctibmauy5ho7o4kchlk5qyntzbrsuooifxpyucvmcwbjysedrperd","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:08:17.612299Z","keyId":"cff74bd6-cbc9-4e0c-9f1e-18b24d3aa9da","startDate":"2018-08-22T05:08:17.612299Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-22T05:08:03.593625Z","keyId":"76855aaa-f33f-46e9-873f-c8611c41cdfd","startDate":"2018-08-22T05:08:03.593625Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"40158f19-af76-42f6-a73c-626503dfc167","deletionTimestamp":"2018-08-14T05:35:03Z","acceptMappedClaims":null,"addIns":[],"appId":"656c1954-4154-43c8-92bf-93bda7ede140","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphzumii","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphzumii","identifierUris":["http://cli-graphzumii"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphzumii on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphzumii","id":"81fb0ef1-cd66-4ab7-b51a-d9bdb85d48c5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphzumii on your behalf.","userConsentDisplayName":"Access + cli-graphzumii","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4016e5d3-7ff6-4225-8c7f-494e7f1e3473","deletionTimestamp":"2018-08-04T05:33:48Z","acceptMappedClaims":null,"addIns":[],"appId":"d119c0fd-62f8-491c-ae90-b797984010bd","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-07-44","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-07-44","identifierUris":["http://clitestvu66j4nenq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-44 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-07-44","id":"f10680ce-dd9c-4bee-87e0-a3a83ea0a305","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-44 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-07-44","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:07:44.930751Z","keyId":"8b8eb7a2-c229-4878-ae27-3d00e3d260f9","startDate":"2018-08-04T05:07:44.930751Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4020e86b-84c0-465b-9d40-12a7a8d995b4","deletionTimestamp":"2018-08-09T05:11:15Z","acceptMappedClaims":null,"addIns":[],"appId":"728d4577-6685-40d0-bd35-b884ec320b99","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-10-48","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-10-48","identifierUris":["http://clitestg4brrntthp"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-48 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-10-48","id":"dcbd0d42-dce4-41d6-9669-cd24ecf2da2b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-48 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-10-48","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:10:48.233095Z","keyId":"a2a261c7-45af-44fc-b2d8-42d238d261a6","startDate":"2018-08-09T05:10:48.233095Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"40216a57-c58b-4114-8bb9-3e93a1e99de2","deletionTimestamp":"2018-08-07T05:09:16Z","acceptMappedClaims":null,"addIns":[],"appId":"27f5f6d5-e3ef-46d3-8a63-18bb84ef611f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-08-22","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-08-22","identifierUris":["http://clitestqumw2h7r64"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-22 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-08-22","id":"8c977f57-c467-4e7c-9919-54fe2daa0876","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-22 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-08-22","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:08:22.742865Z","keyId":"e9c4caaa-3dd5-4110-b9d7-df750f31f548","startDate":"2018-08-07T05:08:22.742865Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4092a60b-ca6d-48f0-b063-ce32315d0ac3","deletionTimestamp":"2018-08-14T05:35:13Z","acceptMappedClaims":null,"addIns":[],"appId":"d2e4444f-53cf-46a6-87ab-a86bb59656c3","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-up6ryur4e","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-up6ryur4e on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-up6ryur4e","id":"c3bd3846-d33f-4cdc-917b-8020385d0d0c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-up6ryur4e on your behalf.","userConsentDisplayName":"Access + cli-native-up6ryur4e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4148063d-e86c-466c-9ca2-fa9691fdb67b","deletionTimestamp":"2018-08-01T05:33:20Z","acceptMappedClaims":null,"addIns":[],"appId":"2c6473ea-7673-4d54-b636-1bf45c87d923","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-33-05","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-33-05","identifierUris":["http://cli_test_sp_with_kv_existing_certctxxv2nmpmsi5yk436bv5znv7tbotgxgds6q46ycgc2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"E8620737339E2362AF71BFC23983D0DC1BB59FA0","endDate":"2019-02-01T05:32:57Z","keyId":"13866d93-23d6-4be2-8195-53303cbee9f7","startDate":"2018-08-01T05:33:18.885158Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-33-05 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-33-05","id":"2ac35fae-bf7f-4fa4-9ff7-f6eae1ada970","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-33-05 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-33-05","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"414889e1-7553-4931-a5d6-3dc32437caf1","deletionTimestamp":"2018-08-30T02:24:09Z","acceptMappedClaims":null,"addIns":[],"appId":"0e8ba16c-4ba1-48cc-ad9b-15a66572e0f0","appRoles":[],"availableToOtherTenants":false,"displayName":"sspc5b368986f4ed","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/sspc5b368986f4ed","identifierUris":["http://easycreate.azure.com/sspc5b368986f4ed"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access sspc5b368986f4ed on behalf of the signed-in user.","adminConsentDisplayName":"Access + sspc5b368986f4ed","id":"715da5b6-6494-4746-9f17-ac152bb99adb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access sspc5b368986f4ed on your behalf.","userConsentDisplayName":"Access + sspc5b368986f4ed","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/sspc5b368986f4ed"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"417d7c63-3bcd-40b8-85ef-69ee24449643","deletionTimestamp":"2018-08-02T14:43:25Z","acceptMappedClaims":null,"addIns":[],"appId":"9de9d3ec-548b-474e-af80-572950a6d984","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp64e450622154e","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp64e450622154e","identifierUris":["http://easycreate.azure.com/ssp64e450622154e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp64e450622154e on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp64e450622154e","id":"71ef5b49-6a59-4f15-985c-c52ab6f3d766","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp64e450622154e on your behalf.","userConsentDisplayName":"Access + ssp64e450622154e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp64e450622154e"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4249f98e-132c-4879-9a70-31210add5080","deletionTimestamp":"2018-08-17T18:33:13Z","acceptMappedClaims":null,"addIns":[],"appId":"5edef66e-adae-4e09-9512-a8f4ea45dfd2","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp0db914725","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp0db914725","identifierUris":["http://easycreate.azure.com/javasdkapp0db914725"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-05T19:33:11.6111517Z","keyId":"0eac6afa-c2a6-4dbc-be4d-85c73b364cc7","startDate":"2018-08-17T18:33:11.6111517Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-25T19:33:11.6051511Z","keyId":"5fa4012e-f58c-4aba-8205-91155db1e235","startDate":"2018-08-17T18:33:11.6051511Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp0db914725 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp0db914725","id":"b0cdb73c-cfdb-4268-86a5-3a56f2451dcd","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp0db914725 on your behalf.","userConsentDisplayName":"Access + javasdkapp0db914725","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-06T18:33:13.2208555Z","keyId":"932e9649-7b16-43cd-b1ff-7f5f23a4df0e","startDate":"2018-08-17T18:33:13.2208555Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp0db914725"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"435bd49f-4fbe-4aa9-9b0b-0bd9d53b7ced","deletionTimestamp":"2018-08-10T05:37:49Z","acceptMappedClaims":null,"addIns":[],"appId":"283ccab3-984a-4b64-9384-ab33ca7b4264","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-yu2lsbduf","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-yu2lsbduf on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-yu2lsbduf","id":"522895e8-6af8-43e4-a3c1-51ee0b95ad03","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-yu2lsbduf on your behalf.","userConsentDisplayName":"Access + cli-native-yu2lsbduf","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"445bd7d5-9a5a-4385-95c6-973d5a36e90e","deletionTimestamp":"2018-08-22T05:32:06Z","acceptMappedClaims":null,"addIns":[],"appId":"1566cd8a-10bd-4b3c-a143-51a01e657c70","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-ac7sdy4xf","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-ac7sdy4xf on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-ac7sdy4xf","id":"536ebc1f-e739-4b56-ba11-f889e13eb8a7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-ac7sdy4xf on your behalf.","userConsentDisplayName":"Access + cli-native-ac7sdy4xf","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"457b93d1-87a8-4c50-adf2-742af25366d7","deletionTimestamp":"2018-08-10T05:12:10Z","acceptMappedClaims":null,"addIns":[],"appId":"882317c1-5386-4197-9a08-035c26caafd5","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-11-43","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-11-43","identifierUris":["http://clitestmiqmksulp7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-43 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-11-43","id":"85b63c5e-84d4-4044-9add-1cb3b9752d6e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-43 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-11-43","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:11:43.155265Z","keyId":"d112b915-78ff-45c6-ba65-e21847a67d49","startDate":"2018-08-10T05:11:43.155265Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4736c5d0-1b52-4521-9f30-ba145ea1da79","deletionTimestamp":"2018-08-29T16:01:36Z","acceptMappedClaims":null,"addIns":[],"appId":"8479679a-8f4c-46ff-81bc-6f213648c3a4","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-16-01-07","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-16-01-07","identifierUris":["http://cli_create_rbac_sp_with_passwordjpxumebq5uu3hahd2biuobfrntmq3wmcete27ahksvt"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-01-07 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-16-01-07","id":"3579eb44-a7f9-4330-b8e0-a1d76d820f4c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-01-07 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-16-01-07","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T16:01:07.56109Z","keyId":"f6c26f92-dc95-4a89-95ed-c54a9a4af64a","startDate":"2018-08-29T16:01:07.56109Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"475ac8fe-0ebf-42cb-a9d5-ef5eed6f45b0","deletionTimestamp":"2018-08-14T05:35:29Z","acceptMappedClaims":null,"addIns":[],"appId":"9afd4fb7-b318-4f1f-9c4e-d4122265422e","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-35-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-35-27","identifierUris":["http://cli_create_rbac_sp_minimaly5ro6chme4rhx4hhbgjtuz6mfzrx7gtojm4jeuu2dq22u2vcv"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-35-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-35-27","id":"be34e843-5f0c-4c47-a2e5-23e4862403a2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-35-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-35-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:35:27.057605Z","keyId":"f52ab320-be4e-430e-aed2-bf601193f06f","startDate":"2018-08-14T05:35:27.057605Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"47731440-46da-4abe-97cc-74edfd87e546","deletionTimestamp":"2018-08-23T11:36:17Z","acceptMappedClaims":null,"addIns":[],"appId":"0bdfe179-0dea-4775-83b0-5a88cb4ae6f7","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp5b0617678","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp5b0617678","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp5b0617678"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp5b0617678 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp5b0617678","id":"a5b5e120-9cc2-4279-b351-203c09c531f5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp5b0617678 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp5b0617678","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp5b0617678"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4801a6b3-22c1-47be-b558-fcf6e8f74460","deletionTimestamp":"2018-08-15T05:44:33Z","acceptMappedClaims":null,"addIns":[],"appId":"0d05a67b-a2bb-41f5-babc-04bda209c085","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-yly6fo74o","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-yly6fo74o on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-yly6fo74o","id":"610d45a4-cbd4-4c27-865c-fb87930bc7e5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-yly6fo74o on your behalf.","userConsentDisplayName":"Access + cli-native-yly6fo74o","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4810a639-2d5b-4b6f-9a51-17eb85581956","deletionTimestamp":"2018-08-03T05:31:56Z","acceptMappedClaims":null,"addIns":[],"appId":"7e465097-e7aa-463b-83a6-75934ac57755","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-31-39","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-31-39","identifierUris":["http://cli_create_rbac_sp_with_passwordvgelbonx6c23e4ob74oydof4kcnbu4yratuowzhz3iz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-39 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-31-39","id":"23590a51-5523-4dd5-b3e4-e12b43d9d138","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-39 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-31-39","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:31:39.043715Z","keyId":"84b49f34-addb-427e-b45a-101ee1dce84e","startDate":"2018-08-03T05:31:39.043715Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4812835d-06c2-412b-9a40-afd364ac3f50","deletionTimestamp":"2018-08-18T05:32:15Z","acceptMappedClaims":null,"addIns":[],"appId":"2ce6f69f-66ca-4de8-92f7-4d6f3976e980","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-32-13","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-32-13","identifierUris":["http://cli_create_rbac_sp_minimalwzobxasyafingpgetbliio4lwpftftjzqlrdqbbrnhf6q7upi"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-13 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-32-13","id":"6c085996-8225-46f9-b9c6-85d7fb4add85","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-13 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-32-13","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:32:13.868382Z","keyId":"c00c74a0-20a2-4873-aa95-108abab799ee","startDate":"2018-08-18T05:32:13.868382Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"48188016-ef8d-4600-a0f3-3a494d4ca4d8","deletionTimestamp":"2018-08-29T16:01:20Z","acceptMappedClaims":null,"addIns":[],"appId":"abe83c6d-c65e-4567-83ce-5047b871b980","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-16-00-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-16-00-50","identifierUris":["http://cli_create_rbac_sp_with_certld7n4pqqxmdfewar4s6togady5rsg56wglqm6utul5tfpim"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"78E870F72B11F60FA1EC8329D282F1D365EC6CCB","endDate":"2019-08-29T16:01:14.586345Z","keyId":"35ad35dc-d87f-49fb-9b07-def893c025c8","startDate":"2018-08-29T16:01:14.586345Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-00-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-16-00-50","id":"e0f67f52-2f26-4f33-a727-ccd3fad86889","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-00-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-16-00-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"482821fe-bb16-4586-94c3-9a246783f51d","deletionTimestamp":"2018-08-10T05:30:35Z","acceptMappedClaims":null,"addIns":[],"appId":"80d607b7-e000-4c2b-be11-f2aeb0982ddd","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-11-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-11-42","identifierUris":["http://clitestm46ux6hbj5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-11-42","id":"c81a4775-94b5-404a-88bc-a8150cf1ac95","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-11-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:11:42.536755Z","keyId":"299f3a87-e433-4543-b81a-ae35a57d2cb5","startDate":"2018-08-10T05:11:42.536755Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"48b54e02-51df-4204-9571-1396884e576d","deletionTimestamp":"2018-08-03T05:08:30Z","acceptMappedClaims":null,"addIns":[],"appId":"88dee024-b30f-4691-845c-bfcb563ce1eb","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgaynostdyeopawztf7rflq46tuofn3fittkdpbz6ryjcfnqzmm3yx5a5xzinix5ul7","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgaynostdyeopawztf7rflq46tuofn3fittkdpbz6ryjcfnqzmm3yx5a5xzinix5ul7","identifierUris":["http://clitest.rgaynostdyeopawztf7rflq46tuofn3fittkdpbz6ryjcfnqzmm3yx5a5xzinix5ul7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgaynostdyeopawztf7rflq46tuofn3fittkdpbz6ryjcfnqzmm3yx5a5xzinix5ul7 + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgaynostdyeopawztf7rflq46tuofn3fittkdpbz6ryjcfnqzmm3yx5a5xzinix5ul7","id":"14325603-4638-47c5-a2b3-1027813b1500","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgaynostdyeopawztf7rflq46tuofn3fittkdpbz6ryjcfnqzmm3yx5a5xzinix5ul7 + on your behalf.","userConsentDisplayName":"Access clitest.rgaynostdyeopawztf7rflq46tuofn3fittkdpbz6ryjcfnqzmm3yx5a5xzinix5ul7","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:08:27.274043Z","keyId":"edae320e-1609-4088-b5df-201cdef4f33a","startDate":"2018-08-03T05:08:27.274043Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-03T05:08:05.318705Z","keyId":"dfda1df2-125f-4767-be91-81adfbd79f25","startDate":"2018-08-03T05:08:05.318705Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"490618f1-4b62-4373-b902-61f4ad068c81","deletionTimestamp":"2018-08-23T05:22:01Z","acceptMappedClaims":null,"addIns":[],"appId":"ec248196-7243-46e7-b900-3a0cc741b03a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-07-22","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-07-22","identifierUris":["http://clitestiwsfdudup2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-22 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-07-22","id":"269e7992-b200-44c8-9c6f-dedade1569db","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-22 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-07-22","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:07:22.308348Z","keyId":"18ad83e1-eacf-4978-b0a3-e4c0b45198fd","startDate":"2018-08-23T05:07:22.308348Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"491e6f4a-3132-4f40-b66d-0ba8521d56f9","deletionTimestamp":"2018-08-08T05:39:39Z","acceptMappedClaims":null,"addIns":[],"appId":"fcb926c6-fc26-4bea-9db6-596c81a36fb9","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-16-11","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-16-11","identifierUris":["http://clitestazmmrwkmm3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-11 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-16-11","id":"c9e2c429-54d2-42b7-bfdb-8ea7ba93146f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-11 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-16-11","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:16:11.034104Z","keyId":"b5fcaf67-d7db-4eb5-a0f8-52e395f46840","startDate":"2018-08-08T05:16:11.034104Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4927d93f-f436-4b20-897a-fcc0eb3c4e7c","deletionTimestamp":"2018-08-22T05:33:34Z","acceptMappedClaims":null,"addIns":[],"appId":"3d2c1816-362e-43e8-8696-1c5e409a1280","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-32-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-32-50","identifierUris":["http://cli_test_sp_with_kv_new_cert4gdtr3wnsrktexgypg32wti35lghms2vyk74orbn3kyjwu6"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"C03C38587A2EB13705B644BC85B3FE60DE9FBE65","endDate":"2019-08-22T05:33:15.158439Z","keyId":"c30887cb-966c-41e7-be25-c0650ea48b6f","startDate":"2018-08-22T05:33:15.158439Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-32-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-32-50","id":"64786e71-cf46-4ef0-9bd7-de77fc43b27b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-32-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-32-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"49540b5d-e4a8-4a36-87d0-66324cd07bbd","deletionTimestamp":"2018-08-10T05:39:52Z","acceptMappedClaims":null,"addIns":[],"appId":"b159bc90-0511-43ec-84ba-0da501404c4f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-39-39","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-39-39","identifierUris":["http://cli_test_sp_with_kv_existing_certbj5o2j62alccctwwkgkgspd56rpvidwb5dn3pj4zoz2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"147B4359691FDD7C94CEC99086639918BA2A048B","endDate":"2019-02-10T05:39:37Z","keyId":"86bbb8d7-b255-4e48-a2c2-e524a22f1f57","startDate":"2018-08-10T05:39:46.427704Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-39-39 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-39-39","id":"73659e8a-fd78-4c41-af9e-0ef9b0ab06a2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-39-39 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-39-39","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4986a5cb-c6e6-4789-89ae-c0dfa04d2192","deletionTimestamp":"2018-08-18T05:33:23Z","acceptMappedClaims":null,"addIns":[],"appId":"8ee239fe-207d-4af3-89b2-15b5d3cceb5f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-33-09","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-33-09","identifierUris":["http://cli_test_sp_with_kv_existing_certmocg7wqv6xusvzqp33nhnf545zcbfxay4t7qqoljis"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"E971FA2A28E26CCFA7186D5412BF8BD31D84EBC6","endDate":"2019-08-18T05:33:22.092575Z","keyId":"3057353d-3c40-4c80-81e6-cfafab3a0fe5","startDate":"2018-08-18T05:33:22.092575Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-33-09 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-33-09","id":"1cbd9b61-4340-4a40-bdbf-12cffd34db41","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-33-09 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-33-09","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"49b3cbdc-938e-4594-bddb-d4203db9f212","deletionTimestamp":"2018-08-22T11:20:31Z","acceptMappedClaims":null,"addIns":[],"appId":"5f9df80c-10df-4ec9-a947-678d868e0b94","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp0b9217419","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp0b9217419","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp0b9217419"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp0b9217419 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp0b9217419","id":"1c703a60-60ef-42ce-9945-66b0773b2546","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp0b9217419 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp0b9217419","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp0b9217419"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4a0b8705-56eb-4b5f-bb67-12d8b1b0736f","deletionTimestamp":"2018-08-02T05:33:14Z","acceptMappedClaims":null,"addIns":[],"appId":"9aa6af29-57ab-4f9d-ad39-cdd60e5746cb","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-32-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-32-50","identifierUris":["http://cli-graphv3l3u"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-32-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-32-50","id":"32a01bab-ad99-4522-a6f7-46a6873a6467","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-32-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-32-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:32:50.142354Z","keyId":"9a935c13-8501-4707-85f7-981d9113996b","startDate":"2018-08-02T05:32:50.142354Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4a35ffcf-b9fb-4813-9f38-068be0a4644a","deletionTimestamp":"2018-08-01T02:43:06Z","acceptMappedClaims":null,"addIns":[],"appId":"e472c20f-5d5f-46ed-95f4-92c0eff36e69","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp53a28276e","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp53a28276e","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp53a28276e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp53a28276e + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp53a28276e","id":"077e6d15-078b-4a86-a146-c6fb4de6f563","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp53a28276e + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp53a28276e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp53a28276e"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4a625a96-fada-4a9d-9aec-dd6373caaa9f","deletionTimestamp":"2018-08-23T05:34:24Z","acceptMappedClaims":null,"addIns":[],"appId":"7a8cbffa-550a-45ba-942a-5ed5875e0d60","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-33-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-33-33","identifierUris":["http://cli_test_sp_with_kv_new_certmi6h6vb7vb4q6srq7cate7td5fx3s2vyptd4fbdlsicm22g"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"5623B4F3C0A8A1CE461ECBD344172CBE29C86126","endDate":"2019-08-23T05:34:05.631361Z","keyId":"41bcc64c-1239-423d-8174-de2fb103dfbf","startDate":"2018-08-23T05:34:05.631361Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-33-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-33-33","id":"a72d780b-de5a-46e4-a483-9c8291a614db","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-33-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-33-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4ae0b03f-1eab-4c80-b3f8-a56f56221d5f","deletionTimestamp":"2018-08-20T11:04:27Z","acceptMappedClaims":null,"addIns":[],"appId":"f5c7c17e-a4ea-43bc-80c0-4b06596bcc2c","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp14432560e","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp14432560e","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp14432560e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp14432560e + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp14432560e","id":"76181618-26a2-4ce7-b01b-b5d1d35e8690","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp14432560e + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp14432560e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp14432560e"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4af51aa7-26a4-4037-8bc8-343897b11275","deletionTimestamp":"2018-08-29T15:45:06Z","acceptMappedClaims":null,"addIns":[],"appId":"27537c41-55e1-41b4-b982-65ca12f9ab72","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-15-30-06","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-15-30-06","identifierUris":["http://clitestraidwh3yo3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-06 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-15-30-06","id":"a35b4902-4c10-42cd-9582-b07d3cfa7512","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-06 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-15-30-06","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:06.427286Z","keyId":"8a6f5f89-e0d4-47dd-a083-1a515a81aae6","startDate":"2018-08-29T15:30:06.427286Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4b35e799-31f7-4317-a56e-97ee41aae297","deletionTimestamp":"2018-08-15T05:21:11Z","acceptMappedClaims":null,"addIns":[],"appId":"826d6aeb-aed2-4a3f-bac7-67c89206402d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-20-48","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-20-48","identifierUris":["http://clitestg6n4sgqhew"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-48 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-20-48","id":"67551219-f1cf-4597-b222-97be59836037","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-48 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-20-48","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:20:48.20366Z","keyId":"058130d1-d4d8-419a-b99a-ba5de23a4f10","startDate":"2018-08-15T05:20:48.20366Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4b6ce928-6918-4789-91a4-da6071f22c41","deletionTimestamp":"2018-08-16T05:27:30Z","acceptMappedClaims":null,"addIns":[],"appId":"7a57a1e2-b7da-45d1-97bb-4dae12f6061b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-26-30","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-26-30","identifierUris":["http://clitestew66gck6ij"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-30 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-26-30","id":"14877df8-3228-445d-868d-e5aed7cb24cb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-30 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-26-30","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:26:30.713415Z","keyId":"01407c88-d471-41aa-bd42-06a50b9c291e","startDate":"2018-08-16T05:26:30.713415Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4bc2d602-f00a-47b8-b457-24bfdf1c8ce3","deletionTimestamp":"2018-08-09T11:09:31Z","acceptMappedClaims":null,"addIns":[],"appId":"ddfa9c40-8197-4b95-9310-de262b5b0b79","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp27852682a","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp27852682a","identifierUris":["http://easycreate.azure.com/javasdkapp27852682a"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-10-28T11:09:28.3716468Z","keyId":"04adc9da-337c-4cbc-b747-bd1a88a20139","startDate":"2018-08-09T11:09:28.3716468Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-17T11:09:28.3667167Z","keyId":"472338b0-c2d1-4775-9024-f903ef9d423b","startDate":"2018-08-09T11:09:28.3667167Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp27852682a on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp27852682a","id":"682df6ab-d24a-46cc-97ca-e7810f4cc587","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp27852682a on your behalf.","userConsentDisplayName":"Access + javasdkapp27852682a","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp27852682a"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4c051e08-769b-4290-ba3a-5e57295ceffe","deletionTimestamp":"2018-08-11T05:39:04Z","acceptMappedClaims":null,"addIns":[],"appId":"3ad64631-245b-4b98-bf1c-d7cc0ef17ef3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-38-45","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-38-45","identifierUris":["http://cli_create_rbac_sp_with_cert6jc3e4kgzbeanv6tu7tuyf6icevy57qno3p4wuhgdfqgtwo"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"CE0ECD048D9C900F6A86B80818088D88EE99E211","endDate":"2019-08-11T05:39:02.198405Z","keyId":"fe9e9e4f-a668-45eb-8634-77fef3ada02a","startDate":"2018-08-11T05:39:02.198405Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-38-45 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-38-45","id":"6110c44d-6f60-4d0c-a7d7-970a52250ac3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-38-45 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-38-45","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4cb57e68-eb70-46f8-a856-e2e3efb3ce56","deletionTimestamp":"2018-08-23T05:20:38Z","acceptMappedClaims":null,"addIns":[],"appId":"44595958-5010-4c39-9667-901620162f18","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-07-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-07-25","identifierUris":["http://clitest52g7jej2ms"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-07-25","id":"2543a7b2-bd29-4dc6-a55d-f28e83c4e65b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-07-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:07:25.311886Z","keyId":"8dbca94d-c515-4786-9551-bbebfe03776c","startDate":"2018-08-23T05:07:25.311886Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4cc77ef9-9282-435a-a5a1-0dc0e784aea0","deletionTimestamp":"2018-08-29T15:45:03Z","acceptMappedClaims":null,"addIns":[],"appId":"17922b1e-dfcc-48df-8648-96d5b365fccb","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-15-30-06","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-15-30-06","identifierUris":["http://clitestp7n43phxxi"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-06 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-15-30-06","id":"0adbadfc-be05-4f2a-9699-a456721f4d3b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-06 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-15-30-06","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:06.947195Z","keyId":"a8f966d7-e451-4e72-a32e-287d4db7fbdd","startDate":"2018-08-29T15:30:06.947195Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4d205f6b-3c0a-4c23-ae52-99692a4136fe","deletionTimestamp":"2018-08-11T05:39:07Z","acceptMappedClaims":null,"addIns":[],"appId":"4f658730-aa66-4054-bee9-d210349e691a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-39-00","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-39-00","identifierUris":["http://cli_create_rbac_sp_minimal63hl3dmt2v4tf7kelqxnqtqnhlodh45zf7dmgwzaqnfwlihmn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-39-00 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-39-00","id":"edbd2893-885a-4772-ba7d-66b251100a9d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-39-00 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-39-00","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:39:00.912268Z","keyId":"bd2593bf-99b3-4eb7-a8a5-5ba39b731b92","startDate":"2018-08-11T05:39:00.912268Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4e5a6b29-9a46-4edf-9184-48b69afb1e4d","deletionTimestamp":"2018-08-02T05:28:24Z","acceptMappedClaims":null,"addIns":[],"appId":"f14d5d8e-919f-40e2-be95-c833d6242921","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-08-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-08-28","identifierUris":["http://clitest4cpe34xg7l"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-08-28","id":"1318abdd-3f23-4dcc-8bec-6cca32504965","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-08-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:08:28.266691Z","keyId":"fe5f05f9-c7f5-46d8-959b-a758bbdade17","startDate":"2018-08-02T05:08:28.266691Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"4ff513df-bac6-425c-adce-3f0054b5ca65","deletionTimestamp":"2018-08-04T05:24:10Z","acceptMappedClaims":null,"addIns":[],"appId":"eef165b2-0c91-475d-9b61-68d07bfe6c87","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-07-46","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-07-46","identifierUris":["http://clitestc2sgrfoxy5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-46 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-07-46","id":"87397388-3539-4e03-84c4-c41380ff0b85","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-46 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-07-46","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:07:46.557267Z","keyId":"df67ebe8-cf95-4fda-81a0-d2fdcc47f44d","startDate":"2018-08-04T05:07:46.557267Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"501fe5db-1671-4ad6-9019-6859fee876dd","deletionTimestamp":"2018-08-01T05:32:08Z","acceptMappedClaims":null,"addIns":[],"appId":"5308f834-4a2d-407b-9d0c-da153728a192","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-31-59","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-31-59","identifierUris":["http://clisp-test-yrodkhcvc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-31-59 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-31-59","id":"903d7912-aad4-4f01-9057-5c543a445e5a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-31-59 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-31-59","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:32:04.682252Z","keyId":"4faef846-1de9-4d60-9299-dc6a3d9fc31b","startDate":"2018-08-01T05:32:04.682252Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"502c98aa-e88d-407d-893e-5ca3b9953b50","deletionTimestamp":"2018-08-18T05:21:05Z","acceptMappedClaims":null,"addIns":[],"appId":"351e9e34-2907-4e91-815b-e2296e143a89","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-07-36","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-07-36","identifierUris":["http://clitest4sfo4bxy2u"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-36 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-07-36","id":"22b3bc30-7f7a-4248-a23a-f1b47e9f89e3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-36 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-07-36","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:07:36.235945Z","keyId":"5d9907af-625a-4222-937e-3146eeef0f4d","startDate":"2018-08-18T05:07:36.235945Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"50f7a81a-70cd-4e74-9300-e61138c9cc2c","deletionTimestamp":"2018-08-14T05:08:40Z","acceptMappedClaims":null,"addIns":[],"appId":"4ff91c1c-917b-47b1-a535-1594a262f17e","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgfrwuvmddx5fzxtvmxkqei7ky65or4wag5wtxx2zu7bg3nfycopnr332uh25lkxxjj","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgfrwuvmddx5fzxtvmxkqei7ky65or4wag5wtxx2zu7bg3nfycopnr332uh25lkxxjj","identifierUris":["http://clitest.rgfrwuvmddx5fzxtvmxkqei7ky65or4wag5wtxx2zu7bg3nfycopnr332uh25lkxxjj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgfrwuvmddx5fzxtvmxkqei7ky65or4wag5wtxx2zu7bg3nfycopnr332uh25lkxxjj + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgfrwuvmddx5fzxtvmxkqei7ky65or4wag5wtxx2zu7bg3nfycopnr332uh25lkxxjj","id":"d7baa446-5a98-43ee-8778-5b7e24dd0a67","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgfrwuvmddx5fzxtvmxkqei7ky65or4wag5wtxx2zu7bg3nfycopnr332uh25lkxxjj + on your behalf.","userConsentDisplayName":"Access clitest.rgfrwuvmddx5fzxtvmxkqei7ky65or4wag5wtxx2zu7bg3nfycopnr332uh25lkxxjj","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:08:37.259898Z","keyId":"bfc56ba0-8991-4c1d-bb5e-7f42909ef92f","startDate":"2018-08-14T05:08:37.259898Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-14T05:08:02.217281Z","keyId":"375d5262-adda-4286-a081-f53293ffdb0b","startDate":"2018-08-14T05:08:02.217281Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"510d86d3-4be1-4026-97ea-f175df302776","deletionTimestamp":"2018-08-25T09:05:59Z","acceptMappedClaims":null,"addIns":[],"appId":"c7ab08e8-648c-4c10-9654-89f0ffede5e4","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphulu6p","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphulu6p","identifierUris":["http://cli-graphulu6p"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphulu6p on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphulu6p","id":"f7520e99-37c8-4114-8166-f241dbbcea27","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphulu6p on your behalf.","userConsentDisplayName":"Access + cli-graphulu6p","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"51575a82-db74-435c-a476-8ce7f77c487e","deletionTimestamp":"2018-08-15T05:34:42Z","acceptMappedClaims":null,"addIns":[],"appId":"9938ef76-b36c-4553-8625-734a18397c6f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-20-46","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-20-46","identifierUris":["http://clitestmehb4a6umk"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-46 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-20-46","id":"5fcf35af-99f3-4dfd-ab95-aa2d2bf87372","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-46 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-20-46","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:20:46.790107Z","keyId":"399ce803-1ddc-4429-865f-00d868e5e24a","startDate":"2018-08-15T05:20:46.790107Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"515a15c5-b578-457b-9536-068492a1026e","deletionTimestamp":"2018-08-18T05:21:09Z","acceptMappedClaims":null,"addIns":[],"appId":"2e2a3a5f-7d22-4423-9e9a-51163d2768a6","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-07-37","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-07-37","identifierUris":["http://clitestrqqcgwkyuj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-37 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-07-37","id":"497248c2-f590-4590-a5e0-82414d69fd87","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-37 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-07-37","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:07:37.150854Z","keyId":"a5b3bc55-04a2-4d44-bedb-4dce46890262","startDate":"2018-08-18T05:07:37.150854Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"52531226-4472-4d59-9c4c-8b497bff7afd","deletionTimestamp":"2018-08-24T05:30:52Z","acceptMappedClaims":null,"addIns":[],"appId":"e39cfd83-6d2c-4186-8215-a70a81952797","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgwymdkzmqrclkfxbffxcnyfukoo76ujyre3wz4ffbftstqkwxc36weryppijnqaya4","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgwymdkzmqrclkfxbffxcnyfukoo76ujyre3wz4ffbftstqkwxc36weryppijnqaya4","identifierUris":["http://clitest.rgwymdkzmqrclkfxbffxcnyfukoo76ujyre3wz4ffbftstqkwxc36weryppijnqaya4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgwymdkzmqrclkfxbffxcnyfukoo76ujyre3wz4ffbftstqkwxc36weryppijnqaya4 + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgwymdkzmqrclkfxbffxcnyfukoo76ujyre3wz4ffbftstqkwxc36weryppijnqaya4","id":"641e3381-be6c-4884-b8e0-ed733efac9db","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgwymdkzmqrclkfxbffxcnyfukoo76ujyre3wz4ffbftstqkwxc36weryppijnqaya4 + on your behalf.","userConsentDisplayName":"Access clitest.rgwymdkzmqrclkfxbffxcnyfukoo76ujyre3wz4ffbftstqkwxc36weryppijnqaya4","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:30:50.029103Z","keyId":"4341dbfe-fec1-42fd-9dd5-2bb8d4f8fdc8","startDate":"2018-08-24T05:30:50.029103Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-24T05:30:30.348152Z","keyId":"91fcd6f3-967f-42a1-89b3-426e196639c8","startDate":"2018-08-24T05:30:30.348152Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"52827b67-7a28-498f-99cf-c2e4812fb7e4","deletionTimestamp":"2018-08-18T05:31:54Z","acceptMappedClaims":null,"addIns":[],"appId":"7d18d06e-fd38-4a9a-87c9-774b534da756","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graph4t5uf","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graph4t5uf","identifierUris":["http://cli-graph4t5uf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graph4t5uf on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graph4t5uf","id":"93b866b8-0917-409e-a058-96a3a445ffdc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graph4t5uf on your behalf.","userConsentDisplayName":"Access + cli-graph4t5uf","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5329f02a-ece0-470c-b35e-ac5d9464923c","deletionTimestamp":"2018-08-23T05:33:02Z","acceptMappedClaims":null,"addIns":[],"appId":"80b093f0-5d38-40af-8f8f-828fb01d4d10","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-33-00","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-33-00","identifierUris":["http://cli_create_rbac_sp_minimalwwkbozq6v22sre4vyiawvzwnpspqljn3g6gpvye42i2xa65tf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-33-00 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-33-00","id":"d4c1407a-d363-4023-bfea-48d5ff341602","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-33-00 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-33-00","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:33:00.913342Z","keyId":"468bf58f-ca25-4636-aa28-4ca5da836478","startDate":"2018-08-23T05:33:00.913342Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"534b44ed-0ac8-4a91-8e16-4c307f0836d6","deletionTimestamp":"2018-08-09T05:36:15Z","acceptMappedClaims":null,"addIns":[],"appId":"0d6b0253-85da-42f7-a504-aeb05ee92014","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-36-13","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-36-13","identifierUris":["http://cli_create_rbac_sp_minimalgncqv4cfousmzojtdftw6l2h5qwf7j55fmsenj3oe25mm4tli"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-36-13 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-36-13","id":"ac683f36-989c-417a-8b21-0e50933febcf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-36-13 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-36-13","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:36:13.350537Z","keyId":"24e53338-1630-48cc-85d0-7b1fc30879c0","startDate":"2018-08-09T05:36:13.350537Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5350aa35-321f-436b-a76b-6a5f87539c2b","deletionTimestamp":"2018-08-28T10:48:25Z","acceptMappedClaims":null,"addIns":[],"appId":"ac3415e8-3f59-4058-bea6-fbd39a62e7a4","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-10-35-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-10-35-20","identifierUris":["http://clitesti5y26ynhxs"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-10-35-20","id":"80ec6aab-e0d7-47de-9537-c69bfef4e053","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-10-35-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T10:35:20.667457Z","keyId":"a687d9e5-dfbd-49a6-9894-eec5fb063c8d","startDate":"2018-08-28T10:35:20.667457Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5375a059-40fd-4b3d-8230-c0bcbc88215a","deletionTimestamp":"2018-08-30T19:13:35Z","acceptMappedClaims":null,"addIns":[],"appId":"4e1e6aae-3069-474e-a147-5dd1c9ca23d3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-18-41-59","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-18-41-59","identifierUris":["http://clitestey4qkzpjgg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-18-41-59","id":"1e659280-feed-452e-9a16-2663e767c07f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-18-41-59","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T18:41:59.456713Z","keyId":"675fc68c-f2d0-47d6-ad06-780b847160f7","startDate":"2018-08-30T18:41:59.456713Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"54643b45-02ad-4648-9a1b-3f7cec7c57ab","deletionTimestamp":"2018-08-08T05:45:37Z","acceptMappedClaims":null,"addIns":[],"appId":"fc71b53e-0baa-48b9-aa55-d6c008523186","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-45-12","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-45-12","identifierUris":["http://cli_create_rbac_sp_with_password5q2xzqsoq7dydv4mhqab5k4lrpspv2zgnuzk5ejnct6"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-45-12 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-45-12","id":"362050a2-4b98-4cf2-b796-b0f72001e8e6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-45-12 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-45-12","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:45:12.712734Z","keyId":"f93739a0-97b1-40d6-83f3-dc083b9fc49a","startDate":"2018-08-08T05:45:12.712734Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"54824bd0-f31c-4524-8dcc-6efc97894cd4","deletionTimestamp":"2018-08-15T05:34:04Z","acceptMappedClaims":null,"addIns":[],"appId":"aff8ad1c-9425-4cb8-9adf-c1515d1ca5c6","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-20-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-20-50","identifierUris":["http://clitestpraasxbjro"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-20-50","id":"d72163e4-b983-495a-9f6c-0f8bfac0cce3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-20-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:20:50.115921Z","keyId":"a1f429b2-61f4-4820-a662-4558544e68ea","startDate":"2018-08-15T05:20:50.115921Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"54b7df28-058a-4bc4-a58f-d337d2dee7e7","deletionTimestamp":"2018-08-17T05:32:24Z","acceptMappedClaims":null,"addIns":[],"appId":"ac6e93ae-509d-4a61-99f0-8b836c766455","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-31-57","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-31-57","identifierUris":["http://cli_create_rbac_sp_with_passwordqhqeqiishetenn5nsp5v3p47i6rlezsuiwknlwmydca"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-57 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-31-57","id":"ecf2df4a-82d4-450f-8d0d-9fee10117831","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-57 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-31-57","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:31:57.888551Z","keyId":"3e48ba80-9548-496c-a700-663be5a73331","startDate":"2018-08-17T05:31:57.888551Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"55a23053-6f99-486c-9f61-1b8e8e819031","deletionTimestamp":"2018-08-25T09:06:08Z","acceptMappedClaims":null,"addIns":[],"appId":"887642b3-2bde-41b2-8815-830f43fc1b6f","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-zqets7bew","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-zqets7bew on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-zqets7bew","id":"633700a2-d321-428b-af64-3453f9c60a7e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-zqets7bew on your behalf.","userConsentDisplayName":"Access + cli-native-zqets7bew","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"560851d3-e46a-4a4d-8e16-fcacb5fb9825","deletionTimestamp":"2018-08-16T05:50:41Z","acceptMappedClaims":null,"addIns":[],"appId":"5666cb72-b74e-4da3-989e-34bd61d4dc03","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-50-38","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-50-38","identifierUris":["http://cli_create_rbac_sp_minimalvysso7dpa3gjc4blpgpbxsrqws4p5u6fuy347uj6sprbnoh26"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-38 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-50-38","id":"6fa94128-cfff-48cf-adbd-16d0739be6bb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-38 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-50-38","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:50:38.858141Z","keyId":"a5bf21e6-2f63-4f9e-bb55-1134c58a6dbd","startDate":"2018-08-16T05:50:38.858141Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5716ae56-b155-4d0f-a767-65ed3b4a5843","deletionTimestamp":"2018-08-25T09:06:17Z","acceptMappedClaims":null,"addIns":[],"appId":"c06c7e6d-abae-42d9-a7e8-44fc4a9fc518","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-09-06-10","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-09-06-10","identifierUris":["http://clisp-test-sk6ebyljb"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-06-10 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-09-06-10","id":"383826fe-b7c6-4061-a51d-e02ea3cf1a50","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-06-10 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-09-06-10","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T09:06:14.88122Z","keyId":"0bef3c3f-a7a6-42e2-96af-00065064f04b","startDate":"2018-08-25T09:06:14.88122Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5809bd04-588c-4ff8-bdc4-d77ed4ffad90","deletionTimestamp":"2018-08-03T14:53:49Z","acceptMappedClaims":null,"addIns":[],"appId":"d63d9c6e-9e90-4e9b-aa30-ce10d6bed5bb","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappe45399407","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappe45399407","identifierUris":["http://easycreate.azure.com/javasdkappe45399407"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-11T14:53:45.299Z","keyId":"cd20d30f-3502-4fff-8b75-fbc6a003dd35","startDate":"2018-08-03T14:53:45.299Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappe45399407 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappe45399407","id":"a32e4688-6551-4e25-908e-317aed592a0c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappe45399407 on your behalf.","userConsentDisplayName":"Access + javasdkappe45399407","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappe45399407"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"580dbdf0-b79f-4d62-b39b-b53a89048b9d","deletionTimestamp":"2018-08-11T05:38:42Z","acceptMappedClaims":null,"addIns":[],"appId":"697e343f-f400-45cf-b374-62ca26333f29","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-3j266ctho","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-3j266ctho on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-3j266ctho","id":"66a02c3f-6315-4e4b-8578-147c9323edeb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-3j266ctho on your behalf.","userConsentDisplayName":"Access + cli-native-3j266ctho","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"588867ab-6a78-4937-8551-0750012589ff","deletionTimestamp":"2018-08-13T14:36:30Z","acceptMappedClaims":null,"addIns":[],"appId":"56f7baf6-1baa-45e0-8934-2dc7064a6bd5","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappffd905767","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappffd905767","identifierUris":["http://easycreate.azure.com/javasdkappffd905767"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-21T14:36:26.507Z","keyId":"b6d5cd97-7c65-4502-8053-57bb56c8cb65","startDate":"2018-08-13T14:36:26.507Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappffd905767 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappffd905767","id":"21377472-a142-4667-9a26-765d7b2433be","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappffd905767 on your behalf.","userConsentDisplayName":"Access + javasdkappffd905767","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappffd905767"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"58e8e3d2-8077-4bbd-91e1-4b9875eb616b","deletionTimestamp":"2018-08-21T05:07:55Z","acceptMappedClaims":null,"addIns":[],"appId":"c4a445a6-7f6a-4935-a7cb-ffb6989fd26e","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-07-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-07-31","identifierUris":["http://clitest245ptibkme"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-07-31","id":"7c424423-77f8-4b1d-b69f-61ac9ed9de5f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-07-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:07:31.674746Z","keyId":"97b6efcb-0d92-4968-889f-a54171094778","startDate":"2018-08-21T05:07:31.674746Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"58f0efa9-a03d-4d88-8a7c-01303529b5cd","deletionTimestamp":"2018-08-22T05:22:11Z","acceptMappedClaims":null,"addIns":[],"appId":"b0522c11-0b63-499d-b0eb-5b27fd9ba6a4","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-07-24","identifierUris":["http://clitestmsewey44wt"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-07-24","id":"619dcc3e-c202-43e1-96b9-3ae7098c9431","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:07:24.586803Z","keyId":"04988c8c-7317-4725-ad01-495947ef4b13","startDate":"2018-08-22T05:07:24.586803Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5900b673-3d86-47ec-a3bc-0f10d840e085","deletionTimestamp":"2018-08-07T14:45:33Z","acceptMappedClaims":null,"addIns":[],"appId":"7b844251-329f-4a46-8364-402ab893dfd3","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp79501886b","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp79501886b","identifierUris":["http://easycreate.azure.com/javasdkapp79501886b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-15T14:45:23.727Z","keyId":"63f5fb81-32a1-4cbe-a942-49c7e7909c23","startDate":"2018-08-07T14:45:23.727Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp79501886b on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp79501886b","id":"353b7bcf-c7bd-4971-8be0-2d15374115f8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp79501886b on your behalf.","userConsentDisplayName":"Access + javasdkapp79501886b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp79501886b"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5980e3e8-e498-4fc2-8d99-d0deb6763121","deletionTimestamp":"2018-08-23T11:35:36Z","acceptMappedClaims":null,"addIns":[],"appId":"3ef12d91-fdf4-4b0f-a7a2-6ab6f4d10bf6","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappc2824143c","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappc2824143c","identifierUris":["http://easycreate.azure.com/javasdkappc2824143c"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-11T11:35:28.5647285Z","keyId":"ddb64336-3a13-43ce-a95a-f49f4ed6ae1b","startDate":"2018-08-23T11:35:28.5647285Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-12-01T11:35:28.5545995Z","keyId":"b37f07db-b9be-4a34-a0cf-b46f21dd8a1a","startDate":"2018-08-23T11:35:28.5545995Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappc2824143c on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappc2824143c","id":"ceccb257-d2fe-4272-a905-d1f364096351","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappc2824143c on your behalf.","userConsentDisplayName":"Access + javasdkappc2824143c","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-12T11:35:33.8863895Z","keyId":"bd9ef7a3-fa34-4132-83a4-0366d5a23759","startDate":"2018-08-23T11:35:33.8863895Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappc2824143c"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5a5896bf-351d-4d9a-8515-2555a8e05d9d","deletionTimestamp":"2018-08-02T05:32:56Z","acceptMappedClaims":null,"addIns":[],"appId":"510730e6-b203-45eb-99f6-2b2556da6779","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-n3u2drryf","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-n3u2drryf on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-n3u2drryf","id":"1633c8c2-559a-44f9-8195-62ce1f343376","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-n3u2drryf on your behalf.","userConsentDisplayName":"Access + cli-native-n3u2drryf","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5a694cb6-afd9-4eea-8c9d-c45aefceaaec","deletionTimestamp":"2018-08-10T05:26:07Z","acceptMappedClaims":null,"addIns":[],"appId":"aded4855-d1ae-4e1b-b5d9-7f257acd8525","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-11-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-11-42","identifierUris":["http://clitestwukbuain4u"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-11-42","id":"d399a8b1-dd55-44a2-bdc3-12e55f9398a3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-11-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:11:42.542652Z","keyId":"ec9373ea-e4af-4ef8-9464-e92185e183f2","startDate":"2018-08-10T05:11:42.542652Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5a9020ae-3a32-4041-9f6f-3a00b1e09560","deletionTimestamp":"2018-08-14T19:46:41Z","acceptMappedClaims":null,"addIns":[],"appId":"ef9b3017-13ed-4b8f-a68b-d343c3dd3718","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-19-45-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-19-45-50","identifierUris":["http://cli_test_sp_with_kv_new_certvhguryz3um2yuel5lbxuzcipffhiclhnpxigdnekjfi3v62"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"42A859DEBFEA48F30D61DF7553C04697D60B3966","endDate":"2019-08-14T19:46:34.149703Z","keyId":"080f57bf-7338-4017-9aec-1262f52cc592","startDate":"2018-08-14T19:46:34.149703Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-45-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-19-45-50","id":"7c6513f4-e842-4668-8cbf-b145cf60de1e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-45-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-19-45-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5b0017cf-053f-4bbd-a326-c03f660326d4","deletionTimestamp":"2018-08-14T19:46:35Z","acceptMappedClaims":null,"addIns":[],"appId":"6b431809-9e48-43f0-b083-957670f2198c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-19-46-12","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-19-46-12","identifierUris":["http://cli_test_sp_with_kv_existing_certqccosykzdtkurhhexlofktkm5lvogwcwy5rw2t2vzl"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"98E3438AAC5D8D29C518162463184B6F7B02A045","endDate":"2019-08-14T19:46:34.27319Z","keyId":"02d9e725-3f94-42e4-9993-f7464c7a088d","startDate":"2018-08-14T19:46:34.27319Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-46-12 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-19-46-12","id":"cd854578-5d09-4e46-bc3d-77582a407917","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-46-12 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-19-46-12","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5c4fc7b9-369f-4484-9aab-554c21c6f1da","deletionTimestamp":"2018-08-08T05:16:14Z","acceptMappedClaims":null,"addIns":[],"appId":"0621ecf9-3823-4dd0-894d-25db214c36d7","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-16-05","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-16-05","identifierUris":["http://clitestdelxhi35cr"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-05 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-16-05","id":"7e0f0e6a-28f3-49b9-a46f-2d324724aafd","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-05 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-16-05","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:16:05.344678Z","keyId":"2306918a-afdb-459c-96d1-a5887f19c06c","startDate":"2018-08-08T05:16:05.344678Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5cc374a6-ee66-42d6-8c9e-cab53d7b5f58","deletionTimestamp":"2018-08-01T02:42:08Z","acceptMappedClaims":null,"addIns":[],"appId":"cf7aab57-331a-455c-9f77-763b4840b034","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappdb043699a","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappdb043699a","identifierUris":["http://easycreate.azure.com/javasdkappdb043699a"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-10-20T02:42:05.7724103Z","keyId":"609e1329-490d-40ae-ae02-c63e0c183822","startDate":"2018-08-01T02:42:05.7724103Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-09T02:42:05.7668458Z","keyId":"1b5714f3-99fd-4614-b2d2-0650b42e76bf","startDate":"2018-08-01T02:42:05.7668458Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappdb043699a on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappdb043699a","id":"1f0d41d8-bd13-44d5-9e52-8178073581af","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappdb043699a on your behalf.","userConsentDisplayName":"Access + javasdkappdb043699a","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappdb043699a"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5cc997c2-b3a4-4a52-8b05-c0d83b9bf801","deletionTimestamp":"2018-08-30T18:57:11Z","acceptMappedClaims":null,"addIns":[],"appId":"0a45a2a8-dde9-4d90-8c75-f05187eee7d3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-18-41-56","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-18-41-56","identifierUris":["http://clitestrjjemrxgjr"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-56 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-18-41-56","id":"4862520e-a592-4a9f-be88-eb9c915f4807","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-56 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-18-41-56","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T18:41:56.570556Z","keyId":"6b316b41-6df4-4249-bb06-180393348972","startDate":"2018-08-30T18:41:56.570556Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5cce810c-1aa2-4efe-b6e5-13d224ae351d","deletionTimestamp":"2018-08-09T05:11:44Z","acceptMappedClaims":null,"addIns":[],"appId":"de787a3e-1054-42e7-a441-6cc2ab1ed1a8","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-10-45","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-10-45","identifierUris":["http://clitestwcb7vpnq4x"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-45 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-10-45","id":"2ae200f6-e175-4e52-8598-a48755ca8a04","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-45 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-10-45","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:10:45.39448Z","keyId":"f36eb11d-398b-4684-a9b2-65ae3a6af056","startDate":"2018-08-09T05:10:45.39448Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5d0d8669-3874-430e-ac38-c92eb0296090","deletionTimestamp":"2018-08-21T14:36:29Z","acceptMappedClaims":null,"addIns":[],"appId":"abee93d4-c161-4f2c-9bf3-9b45d5f9dd94","appRoles":[],"availableToOtherTenants":false,"displayName":"sspb11687942a2f3","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/sspb11687942a2f3","identifierUris":["http://easycreate.azure.com/sspb11687942a2f3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access sspb11687942a2f3 on behalf of the signed-in user.","adminConsentDisplayName":"Access + sspb11687942a2f3","id":"881aed5b-fbfb-4dda-bedc-67bb40de7d74","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access sspb11687942a2f3 on your behalf.","userConsentDisplayName":"Access + sspb11687942a2f3","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/sspb11687942a2f3"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5e3b18dc-e486-4ff6-adca-852dd863f586","deletionTimestamp":"2018-08-03T05:31:38Z","acceptMappedClaims":null,"addIns":[],"appId":"50b80198-305a-4152-946a-5d65a88f5472","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-31-36","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-31-36","identifierUris":["http://cli_create_rbac_sp_minimallegbzu276j5pp3cgilcovoo4lu5byb6do7mkzdmpqktmc4up3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-36 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-31-36","id":"09112c75-7ef0-4118-b692-5d011a76e589","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-36 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-31-36","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:31:36.582952Z","keyId":"3d528ac1-4dfb-47bd-a806-93baa604b880","startDate":"2018-08-03T05:31:36.582952Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5e83ed10-9ce4-4c35-8694-683f29f9e26c","deletionTimestamp":"2018-08-25T09:06:34Z","acceptMappedClaims":null,"addIns":[],"appId":"f8b675d2-2ea8-4694-861f-aa9a265cc00e","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-09-06-32","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-09-06-32","identifierUris":["http://cli_create_rbac_sp_minimalfwnr4s52kgks2nv2uvkhh2njudtvlzlc7jaoar66m26fntxm5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-06-32 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-09-06-32","id":"a6921edb-5b63-4006-9af7-f0956b397c10","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-06-32 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-09-06-32","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T09:06:32.421862Z","keyId":"0b46fccd-6172-47d1-b13c-cd4a3f839439","startDate":"2018-08-25T09:06:32.421862Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5eb8f57f-913d-4e21-a422-24ad4b6d63e1","deletionTimestamp":"2018-08-06T11:51:46Z","acceptMappedClaims":null,"addIns":[],"appId":"720aef95-3e16-49d5-bc2f-fa90836bcdb7","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdkspe3264157e","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdkspe3264157e","identifierUris":["http://easycreate.azure.com/anotherapp/javasdkspe3264157e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspe3264157e + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspe3264157e","id":"eb76a1b8-4fba-4f18-8b47-3f2fd9b23719","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspe3264157e + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspe3264157e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdkspe3264157e"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"5ed79b74-7f81-4679-9f04-8d5f889b1abf","deletionTimestamp":"2018-08-15T05:44:50Z","acceptMappedClaims":null,"addIns":[],"appId":"f059062e-6999-4116-849b-1b3a4fe37d17","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-44-34","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-44-34","identifierUris":["http://cli_create_rbac_sp_with_certjfmlfr2x4vx4b4jvqepczsc3tbbjxzozt4imwokgdso533u"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"46C036B08ACAD76E244136E53B50985C92A70A1C","endDate":"2019-08-15T05:44:49.378853Z","keyId":"6061f14c-1c9e-4403-8eea-e83060e2f7b2","startDate":"2018-08-15T05:44:49.378853Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-34 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-44-34","id":"9a89c5dd-7f9e-4072-9007-2b236d9802ba","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-34 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-44-34","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6039acf0-2240-4325-bdc1-e250dd989109","deletionTimestamp":"2018-08-24T05:55:09Z","acceptMappedClaims":null,"addIns":[],"appId":"5f791d80-ac54-4ba7-994d-94805da0a01c","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphi55g4","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphi55g4","identifierUris":["http://cli-graphi55g4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphi55g4 on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphi55g4","id":"b36570fb-3a90-41dd-8557-0b2ef4fa9a38","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphi55g4 on your behalf.","userConsentDisplayName":"Access + cli-graphi55g4","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6042c9c8-2382-4f01-af85-68eb3bdac9da","deletionTimestamp":"2018-08-01T05:08:06Z","acceptMappedClaims":null,"addIns":[],"appId":"4c851da9-b4fe-47ac-8065-8aa55917dd1e","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgnn7x34jsjegconvy7ujseiulzsdtxngg3x5hafnxuhlqqbkpon53squwttnglvs7u","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgnn7x34jsjegconvy7ujseiulzsdtxngg3x5hafnxuhlqqbkpon53squwttnglvs7u","identifierUris":["http://clitest.rgnn7x34jsjegconvy7ujseiulzsdtxngg3x5hafnxuhlqqbkpon53squwttnglvs7u"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgnn7x34jsjegconvy7ujseiulzsdtxngg3x5hafnxuhlqqbkpon53squwttnglvs7u + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgnn7x34jsjegconvy7ujseiulzsdtxngg3x5hafnxuhlqqbkpon53squwttnglvs7u","id":"afcada4c-7697-4118-b376-f807f6df0400","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgnn7x34jsjegconvy7ujseiulzsdtxngg3x5hafnxuhlqqbkpon53squwttnglvs7u + on your behalf.","userConsentDisplayName":"Access clitest.rgnn7x34jsjegconvy7ujseiulzsdtxngg3x5hafnxuhlqqbkpon53squwttnglvs7u","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:08:03.180425Z","keyId":"76f89335-5f52-4339-8927-38fd3e730da1","startDate":"2018-08-01T05:08:03.180425Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-01T05:07:55.741926Z","keyId":"d9093049-8469-46fd-acd4-acc76aedbc4a","startDate":"2018-08-01T05:07:55.741926Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"609f255e-4390-4fdb-8311-ee6abcbd6f17","deletionTimestamp":"2018-08-15T05:34:06Z","acceptMappedClaims":null,"addIns":[],"appId":"971def72-17a3-4aba-987e-ed768f3b213f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-20-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-20-50","identifierUris":["http://clitestqwlemy27it"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-20-50","id":"76af9a97-6d03-4893-9ae2-3a2f1fbe2e53","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-20-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:20:50.332354Z","keyId":"b905c5a4-5065-4234-97f3-e5e4a9f450b5","startDate":"2018-08-15T05:20:50.332354Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"60a00459-49e6-4918-9b93-61ea2d6966fa","deletionTimestamp":"2018-08-30T19:16:47Z","acceptMappedClaims":null,"addIns":[],"appId":"f9499154-ec72-4237-bb71-88241a03dbb9","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-19-16-17","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-19-16-17","identifierUris":["http://cli_create_rbac_sp_with_passwordllobytovhc6ee3rt4qdyrcd4ckfmumlmmtjfe2k57ef"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-16-17 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-19-16-17","id":"7dc37826-d021-4534-b7ee-b006c3cb1868","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-16-17 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-19-16-17","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T19:16:17.201678Z","keyId":"c20deff9-6e22-42c3-a7e5-a46a0e96509a","startDate":"2018-08-30T19:16:17.201678Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"60e429e7-21b1-4dc3-848b-02dfd0f1987b","deletionTimestamp":"2018-08-04T05:34:37Z","acceptMappedClaims":null,"addIns":[],"appId":"c7b861a0-bf96-49b5-a05c-6d10beb58725","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-34-12","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-34-12","identifierUris":["http://cli_create_rbac_sp_with_passwordst7vkm6mrgj52hfokkycn54aeveyi6ci67zjit64dup"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-34-12 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-34-12","id":"4cd93468-fc8c-4bea-8f7c-f463d1eabc7c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-34-12 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-34-12","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:34:12.333674Z","keyId":"3484423b-f402-45c9-90fa-34b911679d71","startDate":"2018-08-04T05:34:12.333674Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"624f03a3-d4a3-48e0-b538-ee99ee771068","deletionTimestamp":"2018-08-17T05:31:50Z","acceptMappedClaims":null,"addIns":[],"appId":"08eaa4f1-4e9b-4b3f-9554-a102691e3d91","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-31-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-31-28","identifierUris":["http://cli_create_rbac_sp_with_cert45w5m26h22eghv36ugzyoyjj6r2yft2mysih32ozylvqtio"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"EDED2EE9355BD2A0353EA48BF8D604B98B920A97","endDate":"2019-08-17T05:31:44.502529Z","keyId":"008712f7-56de-459d-9e06-b4e5c650609c","startDate":"2018-08-17T05:31:44.502529Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-31-28","id":"a396802b-685d-4bc2-973c-2b18c91b81bc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-31-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"629f1ea9-23d5-4826-9da0-f224524d2f51","deletionTimestamp":"2018-08-23T05:07:51Z","acceptMappedClaims":null,"addIns":[],"appId":"3edd690a-b955-4238-bab2-7bb80ae0378a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-07-24","identifierUris":["http://clitestwqcob5vkkc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-07-24","id":"7e565e27-b312-4fd3-90d8-73c47854a61f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:07:24.896485Z","keyId":"f9e6f048-6f90-4747-9216-2fa878a8a5b6","startDate":"2018-08-23T05:07:24.896485Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"62bc79f6-4a14-4dc9-ab54-495c83a83dee","deletionTimestamp":"2018-08-01T11:18:03Z","acceptMappedClaims":null,"addIns":[],"appId":"2c1f0a3f-d183-4a9a-a3a7-0e846c240bf1","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp5e943825a","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp5e943825a","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp5e943825a"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp5e943825a + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp5e943825a","id":"a5014815-3849-4d2d-9214-13e908a42832","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp5e943825a + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp5e943825a","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp5e943825a"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"62c54981-e1db-4354-874f-a1596446a2df","deletionTimestamp":"2018-08-09T05:35:57Z","acceptMappedClaims":null,"addIns":[],"appId":"5cae56b2-0a66-4571-821c-14fb2f9c806d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-35-49","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-35-49","identifierUris":["http://clisp-test-msfo7bdr7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-35-49 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-35-49","id":"856155df-c982-4bc3-88d8-66fe73da84a7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-35-49 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-35-49","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:35:54.846658Z","keyId":"7d0af2b4-85f4-406f-a487-13f79d1797a1","startDate":"2018-08-09T05:35:54.846658Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"63cd4edc-e020-4552-9839-091f8e5907a8","deletionTimestamp":"2018-08-25T08:48:37Z","acceptMappedClaims":null,"addIns":[],"appId":"b9dda8c0-8fb9-4079-9b2f-abab8448e799","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-08-35-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-08-35-54","identifierUris":["http://clitestl3bhw2bkf2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-08-35-54","id":"b3f9a1fb-9cd5-41f6-a8c8-44c6e3cbcd3a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-08-35-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T08:35:54.584706Z","keyId":"1a89d6cd-3038-48df-a7f6-677fe15055c1","startDate":"2018-08-25T08:35:54.584706Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"64399bf7-adee-4446-a7ce-d3074ee378a2","deletionTimestamp":"2018-08-14T05:37:02Z","acceptMappedClaims":null,"addIns":[],"appId":"9376a29f-4ff6-4ffc-95c8-f6fa6787aa6c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-36-05","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-36-05","identifierUris":["http://cli_test_sp_with_kv_new_certachqtubbz2thzsmcrovh3kgwrbtvwzom6gaeysfgqlyq5jy"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"1F8875EEDECBEC8B4E859DE2A1235542E8C14898","endDate":"2019-08-14T05:36:41.860259Z","keyId":"48ce9519-f1c5-4319-8a5c-3d00e13883c1","startDate":"2018-08-14T05:36:41.860259Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-36-05 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-36-05","id":"ba2501d7-af4d-4505-8d2b-e4faa6349fca","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-36-05 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-36-05","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"647f7d69-06d8-495a-9f3d-e157d8d922cb","deletionTimestamp":"2018-08-09T05:36:24Z","acceptMappedClaims":null,"addIns":[],"appId":"2ae6f476-7d69-414f-a8da-7f15581cc5f8","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-10-45","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-10-45","identifierUris":["http://clitest2s7ph7yvgt"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-45 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-10-45","id":"0eadd58c-9b75-4193-8930-38dae424fce4","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-45 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-10-45","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:10:45.639316Z","keyId":"f8eead66-a295-4f33-bb7d-a75ebf3ca874","startDate":"2018-08-09T05:10:45.639316Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"65eb8526-fb93-4f69-ab78-b24d0e2aa3c8","deletionTimestamp":"2018-08-14T05:43:57Z","acceptMappedClaims":null,"addIns":[],"appId":"6705aa5b-1eb2-4f77-9f7c-e163154141b2","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-07-29","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-07-29","identifierUris":["http://clitestlthpstz2a3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-29 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-07-29","id":"31b18be9-d375-4877-9505-d7f1f5727b54","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-29 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-07-29","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:07:29.572605Z","keyId":"3d586a8e-27e7-4217-9525-8db52cee7355","startDate":"2018-08-14T05:07:29.572605Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"65ec93f6-ed6d-49f2-80f3-ad7d7d85eaf2","deletionTimestamp":"2018-08-07T05:33:44Z","acceptMappedClaims":null,"addIns":[],"appId":"7ab45bf4-70e4-49f2-af3a-f8d33ea9207b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-33-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-33-42","identifierUris":["http://cli_create_rbac_sp_minimaleynab3a65ihmhrscxutqfdom7zjff544gnsvfuuxtqu6dprrm"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-33-42","id":"1374cda9-1bc4-4254-a9b7-4d5af40916f2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-33-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:33:42.18834Z","keyId":"ea5c48f1-bee7-4f98-a7af-efe04bdc1566","startDate":"2018-08-07T05:33:42.18834Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"666007d8-c483-49d6-a8ae-48685d5eb50c","deletionTimestamp":"2018-08-15T05:44:42Z","acceptMappedClaims":null,"addIns":[],"appId":"ad378f54-383b-4c29-a049-f1797760da5a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-44-30","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-44-30","identifierUris":["http://clisp-test-hnra22yxv"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-30 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-44-30","id":"9cf0df66-b170-4f88-acbf-3eccda95fe3d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-30 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-44-30","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:44:35.389745Z","keyId":"14e49542-fd30-4fc7-8b37-e2289e7366d5","startDate":"2018-08-15T05:44:35.389745Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"66905491-4db5-4e2a-90c0-bf4921553453","deletionTimestamp":"2018-08-28T11:01:39Z","acceptMappedClaims":null,"addIns":[],"appId":"73f14715-f342-4a2d-b59c-b36dfa04f593","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-11-01-37","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-11-01-37","identifierUris":["http://cli_create_rbac_sp_minimalrraheij2mch34vqb4yu6zm2g77lkks4imlvccvo5ar5q3j74g"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-37 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-11-01-37","id":"585ac7e8-0b03-4833-83c2-64796d39859c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-37 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-11-01-37","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T11:01:37.870648Z","keyId":"bbe72141-5624-4685-9597-a569e6d5d15f","startDate":"2018-08-28T11:01:37.870648Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"66a4a1d8-a5f4-4e73-b1af-9e371e092958","deletionTimestamp":"2018-08-10T05:39:46Z","acceptMappedClaims":null,"addIns":[],"appId":"d993f79b-dfb3-4e7a-bdad-28cb349e77da","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-38-57","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-38-57","identifierUris":["http://cli_test_sp_with_kv_new_certo7xygg6lqmlygj3gbggmop363d5lzdtnlnpsouav7nhkshd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"A9F070F14ECE462E6334AE1A3C3167FC59214BBB","endDate":"2019-08-10T05:39:23.957937Z","keyId":"4c8e0987-c61a-4853-b338-b24e29bacc60","startDate":"2018-08-10T05:39:23.957937Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-38-57 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-38-57","id":"81643ea5-1646-41c1-8a07-f80e742b87eb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-38-57 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-38-57","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"67f5e0db-fcfb-4d0a-bcf3-9f05d7743a57","deletionTimestamp":"2018-08-08T22:08:14Z","acceptMappedClaims":null,"addIns":[],"appId":"c20bfc39-2310-457c-997f-4c02920238ee","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-22-07-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-22-07-42","identifierUris":["http://cli_test_sp_with_kv_new_certrtwebz4wbon6bwc7owcyjal2quq7rv42ugfnejq2mkmdc6v"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"142182245FB3F6D9C161AFEF9B9BEF57EE6632D0","endDate":"2019-08-08T22:08:06.276732Z","keyId":"88bdf4c6-7d73-4c95-a3a0-9fb11cee7ef5","startDate":"2018-08-08T22:08:06.276732Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-22-07-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-22-07-42","id":"58f3101f-e0bf-493e-a4f4-87ca5a801b26","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-22-07-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-22-07-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"687cc006-891e-4fd7-84f9-d62db9aa1fa1","deletionTimestamp":"2018-08-01T05:32:03Z","acceptMappedClaims":null,"addIns":[],"appId":"31277321-9c17-4404-8b32-f84a7560e9cf","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-31-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-31-50","identifierUris":["http://cli-graphqwpy3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-31-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-31-50","id":"cb663109-cf72-4e61-880f-d9a87d8676a3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-31-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-31-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:31:50.346794Z","keyId":"7ed19210-6a30-408f-8afb-4766a4a7676b","startDate":"2018-08-01T05:31:50.346794Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"688a75c5-7408-49de-b71a-033a49acaf15","deletionTimestamp":"2018-08-09T11:10:52Z","acceptMappedClaims":null,"addIns":[],"appId":"b52c120e-3902-4346-afa3-2ff457bfcf74","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdkspb34672587","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdkspb34672587","identifierUris":["http://easycreate.azure.com/anotherapp/javasdkspb34672587"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspb34672587 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspb34672587","id":"cbc94505-d0ef-4d2d-b5be-07ce11d0f986","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspb34672587 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspb34672587","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdkspb34672587"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}],"odata.nextLink":"deletedDirectoryObjects/$/Microsoft.DirectoryServices.Application?$skiptoken=X''44537074020000304170706C69636174696F6E5F33663236346362662D653631612D343766362D613135302D363735393665383864316162304170706C69636174696F6E5F33663236346362662D653631612D343766362D613135302D36373539366538386431616200304170706C69636174696F6E5F36383861373563352D373430382D343964652D623731612D303333613439616361663135304170706C69636174696F6E5F36383861373563352D373430382D343964652D623731612D3033336134396163616631350000000000000000000000''"}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['192675'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:37 GMT'] + duration: ['2920041'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [7568EnW9GTxA04TYWo6l23IQ5AR8DMR0g3NLEKJchIc=] + ocp-aad-session-key: [yvkB8Li4V9ATvd6tlZivLl_9TDyueHJdmoI1LI05gSRrr5krggVVYcvZ0T6dYoT7XNjjNqX91olmidSKY5Ea4PLn2o1PEOWKbwvt3gqCc_LC56XpW-uof6kb3Dyty3Yy7n5DImq7yjwuH1TSNi66VA.CpVCgkjY_1v5aAY0dzzLEbwDusQ9fczVGS8ILasRLyw] + pragma: [no-cache] + request-id: [8a1fe5cb-b8a5-49f0-bb20-071b0de55263] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/deletedDirectoryObjects/$/Microsoft.DirectoryServices.Application?api-version=1.6&$skiptoken=X'44537074020000304170706C69636174696F6E5F33663236346362662D653631612D343766362D613135302D363735393665383864316162304170706C69636174696F6E5F33663236346362662D653631612D343766362D613135302D36373539366538386431616200304170706C69636174696F6E5F36383861373563352D373430382D343964652D623731612D303333613439616361663135304170706C69636174696F6E5F36383861373563352D373430382D343964652D623731612D3033336134396163616631350000000000000000000000' + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#deletedDirectoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"68d8dc8c-b841-49f8-b6d6-02ae666c79de","deletionTimestamp":"2018-08-11T05:13:21Z","acceptMappedClaims":null,"addIns":[],"appId":"26958c9b-b6c9-440c-8609-e9784309f99f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-13-17","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-13-17","identifierUris":["http://clitestg22dlnfsxd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-17 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-13-17","id":"60fb6663-f214-47c5-b342-3aed04de79dc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-17 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-13-17","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:13:17.48581Z","keyId":"9a398cab-f837-4622-89ae-1314a0d209da","startDate":"2018-08-11T05:13:17.48581Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"68da8c65-75c7-4d41-8f84-77d8e2357dde","deletionTimestamp":"2018-08-17T05:33:04Z","acceptMappedClaims":null,"addIns":[],"appId":"82222377-b596-403b-b6e7-aa6157c2b02f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-32-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-32-50","identifierUris":["http://cli_test_sp_with_kv_existing_certgnhpurttdstha6nzpugsltkz7x2tehchiaoxqhoxwz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"F81711783F804087CFC343DA9373E5CBD3E7CBB8","endDate":"2019-08-17T05:33:03.130231Z","keyId":"a04519f7-db26-4010-b1b6-7325650b1001","startDate":"2018-08-17T05:33:03.130231Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-32-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-32-50","id":"4adbd220-8d92-4a32-b1ea-a7f8d67743dc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-32-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-32-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"69562885-20f0-4168-8f2e-d5da61c4ac30","deletionTimestamp":"2018-08-21T05:08:28Z","acceptMappedClaims":null,"addIns":[],"appId":"874a01c3-696c-4dd1-81a4-5e301419f6e7","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgfplx47jexrwnhrfbe2g7y5gw3ulv5vg6we6l6ol5bgmikawnfn7qr5gljlllahgtg","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgfplx47jexrwnhrfbe2g7y5gw3ulv5vg6we6l6ol5bgmikawnfn7qr5gljlllahgtg","identifierUris":["http://clitest.rgfplx47jexrwnhrfbe2g7y5gw3ulv5vg6we6l6ol5bgmikawnfn7qr5gljlllahgtg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgfplx47jexrwnhrfbe2g7y5gw3ulv5vg6we6l6ol5bgmikawnfn7qr5gljlllahgtg + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgfplx47jexrwnhrfbe2g7y5gw3ulv5vg6we6l6ol5bgmikawnfn7qr5gljlllahgtg","id":"dbf56ad5-cf62-4945-ae3e-26a4eb9ff83b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgfplx47jexrwnhrfbe2g7y5gw3ulv5vg6we6l6ol5bgmikawnfn7qr5gljlllahgtg + on your behalf.","userConsentDisplayName":"Access clitest.rgfplx47jexrwnhrfbe2g7y5gw3ulv5vg6we6l6ol5bgmikawnfn7qr5gljlllahgtg","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:08:25.394234Z","keyId":"753af6a9-3144-434f-9144-17bed10b111a","startDate":"2018-08-21T05:08:25.394234Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-21T05:08:06.002426Z","keyId":"ce98b8f9-bb38-491d-b819-024aa9b98d5f","startDate":"2018-08-21T05:08:06.002426Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6967999d-87bc-4cc8-ac20-02cfa17044df","deletionTimestamp":"2018-08-16T05:39:21Z","acceptMappedClaims":null,"addIns":[],"appId":"5d1be2f3-19a4-4393-9a11-44664274f329","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-26-32","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-26-32","identifierUris":["http://clitestq4d2him4qx"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-32 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-26-32","id":"f0437d84-3496-483d-a6dd-49601cae894a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-32 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-26-32","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:26:32.176282Z","keyId":"a4597361-7922-49f3-a365-8a2c2936fd24","startDate":"2018-08-16T05:26:32.176282Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6a7cae1c-ab7f-4bd0-a609-c1df96cc0a69","deletionTimestamp":"2018-08-09T05:13:11Z","acceptMappedClaims":null,"addIns":[],"appId":"3851792d-0469-4146-a82a-fe9f52bca144","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-10-48","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-10-48","identifierUris":["http://cliteste7cgax3vdj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-48 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-10-48","id":"eda9b3e9-c784-4a8c-b95f-222e608acb6f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-48 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-10-48","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:10:48.195752Z","keyId":"2d245361-8324-4eaf-8d47-a395ab464dad","startDate":"2018-08-09T05:10:48.195752Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6ab2e6f2-d5ed-46d4-8a1e-d471171b81a8","deletionTimestamp":"2018-08-15T19:51:49Z","acceptMappedClaims":null,"addIns":[],"appId":"d3cfc175-7226-4b01-bf90-28fd22f7c557","appRoles":[],"availableToOtherTenants":false,"displayName":"yugangw-ddd","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://yugangw-ddd","identifierUris":["http://yugangw-ddd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access yugangw-ddd on behalf of the signed-in user.","adminConsentDisplayName":"Access + yugangw-ddd","id":"694b960a-c99c-40fa-8151-8a5141a90c14","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access yugangw-ddd on your behalf.","userConsentDisplayName":"Access + yugangw-ddd","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T19:39:53.603644Z","keyId":"7a946174-b189-4752-b029-ff5f2ad44856","startDate":"2018-08-15T19:39:53.603644Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6c9ee578-497b-4770-8186-92cb00dbc64b","deletionTimestamp":"2018-08-24T05:47:11Z","acceptMappedClaims":null,"addIns":[],"appId":"cc925d98-9df6-403e-8810-514952f4f45b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-29-58","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-29-58","identifierUris":["http://clitest3eszeis26x"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-58 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-29-58","id":"88b0e69e-121e-43b7-91b2-6c5e0c97f38d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-58 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-29-58","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:29:58.802188Z","keyId":"2fb3c0c9-fd71-4892-aaee-a04b19438195","startDate":"2018-08-24T05:29:58.802188Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6d0af94d-b08b-4a5c-b527-847814461a68","deletionTimestamp":"2018-08-28T11:02:08Z","acceptMappedClaims":null,"addIns":[],"appId":"6eaa55ab-243d-4699-9931-0e1809d7dcf2","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-11-01-45","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-11-01-45","identifierUris":["http://cli_create_rbac_sp_with_passworddzocoic6cltrdznn36w7m7iesya36sk6suqte6f5h5y"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-45 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-11-01-45","id":"5f9afdaa-e378-419b-805e-c68ab514b3f5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-45 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-11-01-45","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T11:01:45.121306Z","keyId":"53cbb4cf-8319-4624-84cb-157d4d1ab8de","startDate":"2018-08-28T11:01:45.121306Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6d60f175-09ea-45aa-866f-8a9e9f65cea2","deletionTimestamp":"2018-08-18T05:08:31Z","acceptMappedClaims":null,"addIns":[],"appId":"e7cb823a-fbcd-4280-88d6-8b55ef0af61f","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rguj4zughoibzdo3gmour3uh5x6rmhvay4cpaglkrcvtxibca6m27cg5o7hq2fench4","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rguj4zughoibzdo3gmour3uh5x6rmhvay4cpaglkrcvtxibca6m27cg5o7hq2fench4","identifierUris":["http://clitest.rguj4zughoibzdo3gmour3uh5x6rmhvay4cpaglkrcvtxibca6m27cg5o7hq2fench4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rguj4zughoibzdo3gmour3uh5x6rmhvay4cpaglkrcvtxibca6m27cg5o7hq2fench4 + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rguj4zughoibzdo3gmour3uh5x6rmhvay4cpaglkrcvtxibca6m27cg5o7hq2fench4","id":"acd6c13c-b067-47a6-8773-a2b14ef02749","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rguj4zughoibzdo3gmour3uh5x6rmhvay4cpaglkrcvtxibca6m27cg5o7hq2fench4 + on your behalf.","userConsentDisplayName":"Access clitest.rguj4zughoibzdo3gmour3uh5x6rmhvay4cpaglkrcvtxibca6m27cg5o7hq2fench4","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:08:28.339556Z","keyId":"449b4d27-5ebe-4f3b-9150-191432c3c574","startDate":"2018-08-18T05:08:28.339556Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-18T05:08:13.887452Z","keyId":"74efa538-edac-489a-b05d-b7747ca75fa5","startDate":"2018-08-18T05:08:13.887452Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6d995a8a-c53b-45ea-9bad-bb5016ac5bb0","deletionTimestamp":"2018-08-17T05:22:17Z","acceptMappedClaims":null,"addIns":[],"appId":"c15c8093-a484-4dd9-8a13-6529e679c242","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-07-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-07-28","identifierUris":["http://clitesto2vhba7bsc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-07-28","id":"e14ba90b-c7d1-4bd1-b207-557d019b44ad","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-07-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:07:28.044214Z","keyId":"1a5f7c8e-1d75-4691-b200-02a4454ecade","startDate":"2018-08-17T05:07:28.044214Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6da68088-b101-406f-a05d-5e10c1dc6290","deletionTimestamp":"2018-08-17T05:08:36Z","acceptMappedClaims":null,"addIns":[],"appId":"3db4431a-4550-49b7-bf9a-c700d12ea273","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rghb5tqkg5fjg6lfaigrnt5pevc6tcko2aveorydmpy5dgcuuldpa4hix64a2lcjsdk","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rghb5tqkg5fjg6lfaigrnt5pevc6tcko2aveorydmpy5dgcuuldpa4hix64a2lcjsdk","identifierUris":["http://clitest.rghb5tqkg5fjg6lfaigrnt5pevc6tcko2aveorydmpy5dgcuuldpa4hix64a2lcjsdk"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rghb5tqkg5fjg6lfaigrnt5pevc6tcko2aveorydmpy5dgcuuldpa4hix64a2lcjsdk + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rghb5tqkg5fjg6lfaigrnt5pevc6tcko2aveorydmpy5dgcuuldpa4hix64a2lcjsdk","id":"172a2ac4-1d56-47aa-a929-f8c98025e385","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rghb5tqkg5fjg6lfaigrnt5pevc6tcko2aveorydmpy5dgcuuldpa4hix64a2lcjsdk + on your behalf.","userConsentDisplayName":"Access clitest.rghb5tqkg5fjg6lfaigrnt5pevc6tcko2aveorydmpy5dgcuuldpa4hix64a2lcjsdk","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:08:27.060019Z","keyId":"bfe0e89a-418d-40c3-99cb-b76d3536bdeb","startDate":"2018-08-17T05:08:27.060019Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-17T05:08:07.282682Z","keyId":"49345ff9-cded-432d-95db-e04f8c5bdd70","startDate":"2018-08-17T05:08:07.282682Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6dcae2ee-f709-44ad-9d22-afbc4dc41809","deletionTimestamp":"2018-08-24T12:13:16Z","acceptMappedClaims":null,"addIns":[],"appId":"bac775a2-cc85-48e5-b9e5-d0533e20b5ef","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappb1446382e","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappb1446382e","identifierUris":["http://easycreate.azure.com/javasdkappb1446382e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-12T12:13:08.5804848Z","keyId":"16d7eef8-3e49-469d-88a9-56ea32b20251","startDate":"2018-08-24T12:13:08.5804848Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-12-02T12:13:08.5757424Z","keyId":"f744e756-d92a-4076-906e-4a4b94d7ef4f","startDate":"2018-08-24T12:13:08.5757424Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappb1446382e on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappb1446382e","id":"ef2ffbf5-95bf-414b-9865-e13a6cb9a1a9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappb1446382e on your behalf.","userConsentDisplayName":"Access + javasdkappb1446382e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-13T12:13:10.2059796Z","keyId":"8185e05d-2804-460a-9363-c78b129da85b","startDate":"2018-08-24T12:13:10.2059796Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappb1446382e"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"6eb6a29c-bba1-43fb-a931-4e7fb7f29ffb","deletionTimestamp":"2018-08-17T05:33:35Z","acceptMappedClaims":null,"addIns":[],"appId":"5c0658a4-eab1-4318-b1d2-febb4af51622","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-32-17","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-32-17","identifierUris":["http://cli_test_sp_with_kv_new_certwhuz4qeib2pmd5ezmsp56icre2mimle6ayowlqbsvjdyn2b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"572A404AACF058BE2EDE0E236A69A2830E8AB186","endDate":"2019-08-17T05:33:01.006967Z","keyId":"66479625-954e-4332-810e-19272cec13ce","startDate":"2018-08-17T05:33:01.006967Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-32-17 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-32-17","id":"e2e604bd-3a2a-4067-a6ac-42d4294eb98b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-32-17 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-32-17","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"701e5ecc-5f77-4506-882b-9684f91d7e5b","deletionTimestamp":"2018-08-10T05:38:30Z","acceptMappedClaims":null,"addIns":[],"appId":"22b42184-876d-4f95-94aa-8bbad7381178","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-38-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-38-24","identifierUris":["http://cli_create_rbac_sp_minimalopjtcjwvlpjjov3numvp3jdzhswihp3pcdp67ewzs3aq4i5vq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-38-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-38-24","id":"c3732fd8-64cf-4edf-b488-a66b3f741e82","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-38-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-38-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:38:24.791154Z","keyId":"9e41e744-36d7-4124-b6ee-a12ffdcadfd9","startDate":"2018-08-10T05:38:24.791154Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"711c0251-0731-44aa-9104-32285126dd41","deletionTimestamp":"2018-08-28T10:48:52Z","acceptMappedClaims":null,"addIns":[],"appId":"106e0b4c-4dc2-488b-9b24-33647e183f05","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-10-35-19","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-10-35-19","identifierUris":["http://clitestoyhi5wdiaq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-19 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-10-35-19","id":"070257b7-b58e-432e-a6ae-fa4109842dc2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-19 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-10-35-19","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T10:35:19.901534Z","keyId":"51911641-fa40-4ca1-b38a-7370307a5f36","startDate":"2018-08-28T10:35:19.901534Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"71c57fc9-7e92-47f7-b33f-41d95a590fd7","deletionTimestamp":"2018-08-01T05:32:13Z","acceptMappedClaims":null,"addIns":[],"appId":"6d2df3eb-6c97-475a-99c8-8f4ed42391b9","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-32-02","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-32-02","identifierUris":["http://cli_create_rbac_sp_with_certdnmjvmvys7px24xtgwvhxtqq54ebjcvk42jicyljshslsrv"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"2E23BE00DA2CC0A0A0386429E4BFB9332D0F8FBD","endDate":"2019-08-01T05:32:12.617407Z","keyId":"35f50cd7-11e2-420a-851c-2b64edfb7f46","startDate":"2018-08-01T05:32:12.617407Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-02 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-32-02","id":"1c639f3f-2c5f-4798-9d7d-bcd16aa01137","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-02 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-32-02","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7214976f-e6a3-49c1-b09c-2399f0185601","deletionTimestamp":"2018-08-23T05:32:49Z","acceptMappedClaims":null,"addIns":[],"appId":"cf151b35-a410-46a9-bee4-7e2c80785fdd","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-vnvrigtkf","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-vnvrigtkf on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-vnvrigtkf","id":"eadd9fe1-4b4d-4164-8445-5fdff4314601","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-vnvrigtkf on your behalf.","userConsentDisplayName":"Access + cli-native-vnvrigtkf","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"728ff3c5-f43e-4854-bc61-949a40c66025","deletionTimestamp":"2018-08-17T21:00:45Z","acceptMappedClaims":null,"addIns":[],"appId":"f87c53e5-4750-428e-a6a1-0023684f0f13","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappe07418351","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappe07418351","identifierUris":["http://easycreate.azure.com/javasdkappe07418351"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-05T22:00:42.3733307Z","keyId":"3a405dbf-2a6b-4f1a-aca6-66d36e84397e","startDate":"2018-08-17T21:00:42.3733307Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-25T22:00:42.3657805Z","keyId":"163a6a27-1d11-4baf-a375-ce3744179ce8","startDate":"2018-08-17T21:00:42.3657805Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappe07418351 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappe07418351","id":"3120e3b9-cb4f-48c3-90ab-aed5e9f7259e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappe07418351 on your behalf.","userConsentDisplayName":"Access + javasdkappe07418351","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-06T21:00:44.6619323Z","keyId":"09580fc0-e0db-4a2e-9b56-9c07e584f4df","startDate":"2018-08-17T21:00:44.6619323Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappe07418351"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"72b3e8f5-6ed2-4186-95f4-bdb288ea85b7","deletionTimestamp":"2018-08-07T05:36:09Z","acceptMappedClaims":null,"addIns":[],"appId":"1921bfa1-c1d3-419b-98a3-b50f41c2106f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-08-34","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-08-34","identifierUris":["http://clitestkj77zwxo4r"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-34 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-08-34","id":"33f6a306-6673-495b-8e80-4e70cae85c9c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-34 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-08-34","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:08:34.242005Z","keyId":"f27f71dc-e814-4b4c-854a-5a1fd7e7989a","startDate":"2018-08-07T05:08:34.242005Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"72e5ae8e-2f8e-4e07-94f4-9ec44e3b3dea","deletionTimestamp":"2018-08-30T19:16:17Z","acceptMappedClaims":null,"addIns":[],"appId":"472941a3-9829-4b07-84ea-1038d63fd3b8","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-19-15-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-19-15-33","identifierUris":["http://cli_create_rbac_sp_with_certna3pnkcuv5nbiti4t642tnpty2izduark2jgrehysu6evas"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"C572D4D05E2C4AED6C3767782122EC1E0452BBD2","endDate":"2019-08-30T19:16:12.008627Z","keyId":"f003dfb3-5ce3-46ab-9998-9e15866229b9","startDate":"2018-08-30T19:16:12.008627Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-15-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-19-15-33","id":"f0eb76f6-6458-45c4-8ecd-f0a4673c9db0","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-15-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-19-15-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"73a5d9ce-f20d-48ed-8f3b-be5427a848bd","deletionTimestamp":"2018-08-11T05:38:39Z","acceptMappedClaims":null,"addIns":[],"appId":"81e45451-d5dd-47eb-9be1-1c2127fe2c24","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphimbbs","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphimbbs","identifierUris":["http://cli-graphimbbs"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphimbbs on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphimbbs","id":"7ba0d336-ba3a-4910-9dde-363da4545350","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphimbbs on your behalf.","userConsentDisplayName":"Access + cli-graphimbbs","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"74904b82-f297-4b2e-9b73-8532f1b3938b","deletionTimestamp":"2018-08-30T19:17:00Z","acceptMappedClaims":null,"addIns":[],"appId":"0ed24810-a07e-4528-8027-5352c127dc13","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-19-16-39","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-19-16-39","identifierUris":["http://cli_test_sp_with_kv_existing_certw4bmeuhk4oheqirzlf5dtx6i5eoipqxp7wbbeoathc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"611F9772BC86029FA736F54192C9EAA1CFC45C82","endDate":"2019-08-30T19:16:54.179716Z","keyId":"9eff3985-f488-4eda-8f99-4aa97ac49ce0","startDate":"2018-08-30T19:16:54.179716Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-16-39 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-19-16-39","id":"aef6862d-6dc0-416e-8f81-b22e26dc7779","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-16-39 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-19-16-39","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"74d480a8-b1ff-4516-b474-f01613b9a23e","deletionTimestamp":"2018-08-24T05:55:36Z","acceptMappedClaims":null,"addIns":[],"appId":"5aafa7ff-d814-4fa1-9fa2-a6bf6c21fc72","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-55-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-55-20","identifierUris":["http://cli_create_rbac_sp_with_cert4hpsrcs6egh5z6epfarer7zxycy7yfd4nu4nj5czu4sk5qc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"E2B088DC68D20DAECB35C0AB45D23C1D750133C0","endDate":"2019-08-24T05:55:35.407783Z","keyId":"f4958590-3817-411a-b775-77991a3b1133","startDate":"2018-08-24T05:55:35.407783Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-55-20","id":"1375f72e-4f0e-48c2-b84d-e3587b0e177d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-55-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"753d89d3-58c8-4b47-83b1-18a3a0a4d070","deletionTimestamp":"2018-08-13T14:37:15Z","acceptMappedClaims":null,"addIns":[],"appId":"35c893e0-0d54-4ab6-bd7b-c1daf36ecde4","appRoles":[],"availableToOtherTenants":false,"displayName":"sspf5952651230e4","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/sspf5952651230e4","identifierUris":["http://easycreate.azure.com/sspf5952651230e4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access sspf5952651230e4 on behalf of the signed-in user.","adminConsentDisplayName":"Access + sspf5952651230e4","id":"6e6c7ed5-2109-45d8-b1be-9f298d8f0cdc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access sspf5952651230e4 on your behalf.","userConsentDisplayName":"Access + sspf5952651230e4","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/sspf5952651230e4"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"75ed91ef-4fa7-4ff9-81cb-db513932f498","deletionTimestamp":"2018-08-15T05:20:54Z","acceptMappedClaims":null,"addIns":[],"appId":"b807c150-2b3b-4080-8f82-ac5c15ff3655","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-20-49","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-20-49","identifierUris":["http://clitestadph33m7tq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-49 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-20-49","id":"eb71bf2c-a83b-44bd-b62b-a31e5236a35c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-49 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-20-49","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:20:49.154591Z","keyId":"0e25925b-e24a-4c6d-af2d-8f1337fb2ac9","startDate":"2018-08-15T05:20:49.154591Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"767c17e1-b0ad-4d45-bb90-42e5419d3c3b","deletionTimestamp":"2018-08-23T05:32:52Z","acceptMappedClaims":null,"addIns":[],"appId":"ab3b4f90-a410-4900-84e8-8ee77157e094","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-32-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-32-31","identifierUris":["http://cli-graphjcarz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-32-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-32-31","id":"bae68d34-8eb1-4b7a-947c-3367f67b0974","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-32-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-32-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:32:31.812267Z","keyId":"31a0cd1a-0bb2-49b7-8564-68f417b37120","startDate":"2018-08-23T05:32:31.812267Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"768402cf-12b5-47b8-8d31-d1509f96c027","deletionTimestamp":"2018-08-14T05:37:35Z","acceptMappedClaims":null,"addIns":[],"appId":"30398360-ea18-436d-8f96-6dbc09a0f507","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-37-19","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-37-19","identifierUris":["http://cli_test_sp_with_kv_existing_certwnipj2pgy4mufny22t6rug2suegv6pympolwlhucgf2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"4E8774508DDD633007A1A4915268F8206DDDAE7D","endDate":"2019-02-14T05:37:09Z","keyId":"192a3ad3-317d-4695-866d-3c246ee6474d","startDate":"2018-08-14T05:37:34.12279Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-37-19 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-37-19","id":"386426fd-29fb-4ed3-b265-3099794fc254","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-37-19 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-37-19","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7689f4d8-2bb7-4683-8700-1a6d60b4c194","deletionTimestamp":"2018-08-01T05:26:48Z","acceptMappedClaims":null,"addIns":[],"appId":"296f0e29-ec90-40c1-9569-9f6a66f2a442","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-07-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-07-25","identifierUris":["http://clitesthi7ieicqzw"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-07-25","id":"cada2d5f-cf7a-4bfa-a63a-8ff4a9aa2fb5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-07-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:07:25.050655Z","keyId":"af3baaeb-2979-43e0-92bc-25ba18f2da21","startDate":"2018-08-01T05:07:25.050655Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7721922d-276d-4b6c-af26-5b2833e05920","deletionTimestamp":"2018-08-22T05:32:31Z","acceptMappedClaims":null,"addIns":[],"appId":"6b38706e-b67a-4270-b4be-e8e970810521","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-32-15","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-32-15","identifierUris":["http://cli_create_rbac_sp_with_passwordsee2hktu4sfzoucudollgemdkfdpkrhg3zbj76zyxif"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-32-15 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-32-15","id":"588b3901-3b47-4a80-b74f-65d51bde2980","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-32-15 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-32-15","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:32:15.860983Z","keyId":"26361dee-7dc1-453f-9605-d297fd5a4a8e","startDate":"2018-08-22T05:32:15.860983Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"77489eea-dd4e-42bd-b05c-538278608b9b","deletionTimestamp":"2018-08-18T05:21:02Z","acceptMappedClaims":null,"addIns":[],"appId":"2651c4df-fb62-4db8-8779-40d7aa7b6456","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-07-37","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-07-37","identifierUris":["http://clitestl3uelfbdmf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-37 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-07-37","id":"bda2264c-6b28-43fc-897c-1b5a07d69a0c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-37 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-07-37","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:07:37.38183Z","keyId":"34796b7a-c1d6-46b4-80c4-8f6929904d3e","startDate":"2018-08-18T05:07:37.38183Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"779019c6-a7e0-4a27-9ef7-a2b3dd098a97","deletionTimestamp":"2018-08-14T05:35:43Z","acceptMappedClaims":null,"addIns":[],"appId":"129bb600-ebf6-4844-b5ac-03f6d76460b0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-35-16","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-35-16","identifierUris":["http://cli_create_rbac_sp_with_certwtjn6snirmlgeipyhdj5uo2at3qd6p45suzudphpqnfyeuc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"C76811BB6009F9471054389BF923F9327DF05D58","endDate":"2019-08-14T05:35:41.751762Z","keyId":"7bf98993-bd01-46e7-9a4e-533405a68884","startDate":"2018-08-14T05:35:41.751762Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-35-16 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-35-16","id":"6a843171-0841-4931-b35d-233d1bb0abf3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-35-16 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-35-16","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"77a9c0ab-a1b0-45f7-a2f8-0eecaf6ffae0","deletionTimestamp":"2018-08-22T05:20:10Z","acceptMappedClaims":null,"addIns":[],"appId":"bbd5c1de-48bb-482b-ac91-77c33a5cc0e3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-07-24","identifierUris":["http://clitestexmzkjqjcj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-07-24","id":"8ee4505c-9820-4014-87a7-f383b3c8ef95","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:07:24.451246Z","keyId":"bf93b1d8-8837-4831-a37b-62cb1ede24d1","startDate":"2018-08-22T05:07:24.451246Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7809b4ec-d6c8-421e-aeea-7e5eed459064","deletionTimestamp":"2018-08-27T12:31:03Z","acceptMappedClaims":null,"addIns":[],"appId":"b7340660-61cd-4cf2-bb4d-304c65c9101a","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp7ca60938b","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp7ca60938b","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp7ca60938b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp7ca60938b + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp7ca60938b","id":"b645279a-ea5a-4279-9d21-ebf94259f657","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp7ca60938b + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp7ca60938b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp7ca60938b"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"78ad38d7-e020-4988-aaa6-ba419cfe3f90","deletionTimestamp":"2018-08-30T19:16:06Z","acceptMappedClaims":null,"addIns":[],"appId":"bf5710ff-facb-4578-be94-77ac29660a01","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-19-15-21","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-19-15-21","identifierUris":["http://cli-graphzdq3a"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-15-21 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-19-15-21","id":"a61cf18f-e6d0-4429-be3c-27827e3c8650","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-15-21 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-19-15-21","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T19:15:21.773275Z","keyId":"34841cbc-7294-494c-80e1-5d854cbce441","startDate":"2018-08-30T19:15:21.773275Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"78d03aa8-6f91-4548-a04b-42db38b0ba59","deletionTimestamp":"2018-08-28T11:03:03Z","acceptMappedClaims":null,"addIns":[],"appId":"2826b8eb-89c4-4fee-9336-1afd32417145","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-11-02-14","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-11-02-14","identifierUris":["http://cli_test_sp_with_kv_new_certlzcxltszoidkpq3n24ipuylln7eidcrzbcyycnceqwby2rq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"EE9D0EB658686E16F34BED47ADA7E66CA934D483","endDate":"2019-08-28T11:02:48.749722Z","keyId":"5b6761b4-5716-4849-9213-59f5b2389a17","startDate":"2018-08-28T11:02:48.749722Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-02-14 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-11-02-14","id":"0482d28a-904a-492f-8922-bfc6dee9c8e3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-02-14 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-11-02-14","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"78d9d6db-67aa-4bfe-921b-1dd79a9ba402","deletionTimestamp":"2018-08-11T05:38:47Z","acceptMappedClaims":null,"addIns":[],"appId":"0e6a7304-0659-4e76-9808-55032957de7b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-38-38","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-38-38","identifierUris":["http://clisp-test-vsma5ikcm"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-38-38 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-38-38","id":"134bf156-1990-48ab-b238-8a2355941f77","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-38-38 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-38-38","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:38:44.407847Z","keyId":"07e9f18c-0342-4107-96da-07e7ee3f0390","startDate":"2018-08-11T05:38:44.407847Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"78ef9729-6340-4749-9037-33fc50e32f0c","deletionTimestamp":"2018-08-07T05:27:46Z","acceptMappedClaims":null,"addIns":[],"appId":"0dbf510a-e02a-4e73-a58f-a785d1137424","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-08-23","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-08-23","identifierUris":["http://clitestrgsldhwjoi"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-23 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-08-23","id":"5d35d06f-bf45-4825-9ae1-ba7920db1c86","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-23 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-08-23","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:08:23.655505Z","keyId":"90b9ffad-a1c5-4b1a-93a7-23ca445e59cf","startDate":"2018-08-07T05:08:23.655505Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"795562f1-6fa6-4a26-8fc4-956a338dddfd","deletionTimestamp":"2018-08-21T11:10:25Z","acceptMappedClaims":null,"addIns":[],"appId":"f6612a72-32a1-4bb2-84c9-812a20b1f319","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdkspf2f394850","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdkspf2f394850","identifierUris":["http://easycreate.azure.com/anotherapp/javasdkspf2f394850"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspf2f394850 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspf2f394850","id":"53e44221-ab11-489a-b8b0-f291f1c42560","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspf2f394850 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspf2f394850","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdkspf2f394850"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7a1b7568-9994-440f-a4d7-7f3ea71802c4","deletionTimestamp":"2018-08-04T05:35:14Z","acceptMappedClaims":null,"addIns":[],"appId":"edb0b89b-45ad-4de8-9d68-6c2a9f07540f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-34-09","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-34-09","identifierUris":["http://cli_test_sp_with_kv_new_certm3bdwucfuigt54cydht2o7i5bc5xmzarx7475fiu53gvj4m"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"D9E27C75017C91EC2AD9EFFFF4807A933A5080A3","endDate":"2019-08-04T05:34:50.751762Z","keyId":"4bdb0c8c-3952-4c8b-ad5f-24f396fd468a","startDate":"2018-08-04T05:34:50.751762Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-34-09 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-34-09","id":"81aa1198-b0f4-4d7c-8e7a-d503aaa6aeca","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-34-09 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-34-09","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7a752439-c8da-416e-8cdf-cdf1a2f24fe2","deletionTimestamp":"2018-08-24T12:13:29Z","acceptMappedClaims":null,"addIns":[],"appId":"f7334ad2-79ef-4795-9136-4a6ee29109a5","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp21c38759a","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp21c38759a","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp21c38759a"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp21c38759a + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp21c38759a","id":"ce378233-3be2-422a-8214-82f5b1a7a4d6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp21c38759a + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp21c38759a","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp21c38759a"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7aec7219-c321-4b57-bae4-6e77302fbd14","deletionTimestamp":"2018-08-24T05:56:06Z","acceptMappedClaims":null,"addIns":[],"appId":"e074ec75-b2b1-4cef-865a-c722497fc75a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-55-37","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-55-37","identifierUris":["http://cli_create_rbac_sp_with_passwordulbgklo3e255lxbnywjotnaakc5xok6nyiztxfahxid"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-37 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-55-37","id":"f34dd0b2-a3a4-4d68-8cb0-f929f6b3d060","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-37 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-55-37","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:55:37.833373Z","keyId":"513f6f50-bde8-4aee-89a2-c095f325a861","startDate":"2018-08-24T05:55:37.833373Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7b557861-ea8d-47e3-ac79-73c503de26bc","deletionTimestamp":"2018-08-17T18:26:52Z","acceptMappedClaims":null,"addIns":[],"appId":"75779a88-5795-4727-8ac7-07f6eee62763","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappead612710","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappead612710","identifierUris":["http://easycreate.azure.com/javasdkappead612710"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-05T19:26:49.9650569Z","keyId":"088b1e32-124a-4bfb-aa5c-cd55b10081eb","startDate":"2018-08-17T18:26:49.9650569Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-25T19:26:49.9537176Z","keyId":"a758fa79-652a-4ea2-89a6-86c1ba68877a","startDate":"2018-08-17T18:26:49.9537176Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappead612710 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappead612710","id":"89bf43c4-f13c-47de-9fc4-f3018a4f9e7b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappead612710 on your behalf.","userConsentDisplayName":"Access + javasdkappead612710","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-06T18:26:51.4766809Z","keyId":"995e88fa-86d4-4660-abee-9cb8dc78a16c","startDate":"2018-08-17T18:26:51.4766809Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappead612710"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7b7baf18-49d5-4265-a2d5-9343c29658cf","deletionTimestamp":"2018-08-07T05:33:25Z","acceptMappedClaims":null,"addIns":[],"appId":"61876f3b-1139-424c-b830-d21f3066b8f7","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-33-06","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-33-06","identifierUris":["http://cli-graphoti3s"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-06 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-33-06","id":"f62f6eb2-5e4f-4af2-bbcb-34048fd06497","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-06 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-33-06","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:33:06.337295Z","keyId":"cd809efc-7c85-4ef4-9460-647520f7afbf","startDate":"2018-08-07T05:33:06.337295Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7bbcb6e1-8d61-4d4d-9308-adb0ec0116de","deletionTimestamp":"2018-08-24T05:47:10Z","acceptMappedClaims":null,"addIns":[],"appId":"40fde175-b8fc-49bd-8731-bff540cf7c9b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-29-57","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-29-57","identifierUris":["http://clitestnj5hgv4qm4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-57 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-29-57","id":"467cff39-d6f3-47fc-98bd-a6e1c31654e2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-57 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-29-57","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:29:57.721543Z","keyId":"b0eddacb-eef2-481b-addd-1d1f3c0054a8","startDate":"2018-08-24T05:29:57.721543Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7cd97260-5399-4566-bc51-c37eb8d2fbf7","deletionTimestamp":"2018-08-09T05:37:25Z","acceptMappedClaims":null,"addIns":[],"appId":"3e97b373-60a2-41a3-9017-9a9509b70691","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-36-49","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-36-49","identifierUris":["http://cli_test_sp_with_kv_new_certf7lo4n7ph2ook2ny7ssxgvovv4n3ahgy53rsyu5vxjqkwco"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"D83C8A61F243F38779289A95D74AF4AAC58C0D7B","endDate":"2019-08-09T05:37:09.856317Z","keyId":"c3e68d28-8dc3-48af-a633-815941f99381","startDate":"2018-08-09T05:37:09.856317Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-36-49 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-36-49","id":"ad79a3ae-6bc2-461d-b618-c6b1b23d3edb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-36-49 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-36-49","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7dea8ed8-e92f-4893-8764-3ff52bff1429","deletionTimestamp":"2018-08-16T15:07:57Z","acceptMappedClaims":null,"addIns":[],"appId":"848916fd-23bf-4b40-9fa6-25b06124ae53","appRoles":[],"availableToOtherTenants":false,"displayName":"sspacc89556d2ddc","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/sspacc89556d2ddc","identifierUris":["http://easycreate.azure.com/sspacc89556d2ddc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access sspacc89556d2ddc on behalf of the signed-in user.","adminConsentDisplayName":"Access + sspacc89556d2ddc","id":"14587ee1-aedf-41f1-8227-06dfef3e7e3d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access sspacc89556d2ddc on your behalf.","userConsentDisplayName":"Access + sspacc89556d2ddc","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/sspacc89556d2ddc"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"7f057dd4-0b42-4f93-8389-4c6874c7b5b6","deletionTimestamp":"2018-08-25T09:06:22Z","acceptMappedClaims":null,"addIns":[],"appId":"abf03d21-8221-4924-8564-c0e351625ebb","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-09-06-13","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-09-06-13","identifierUris":["http://cli_create_rbac_sp_with_certatjfxjo4frzoos5vlhvx2bpnteyngnfv35424jxrrwwygmw"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"28702B402067B1CD9E2E5741C9EC7596B165CBC9","endDate":"2019-08-25T09:06:21.358643Z","keyId":"b418d325-d356-4fdd-892d-950e0942540e","startDate":"2018-08-25T09:06:21.358643Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-06-13 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-09-06-13","id":"6fd93f06-3e97-45b8-b4c1-ac5b7a546426","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-06-13 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-09-06-13","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"80750ac0-9c19-4320-86d5-63e05cac81a1","deletionTimestamp":"2018-08-02T05:08:36Z","acceptMappedClaims":null,"addIns":[],"appId":"8f369699-dfb6-43a8-8131-b3627a26232b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-08-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-08-31","identifierUris":["http://clitestnhtlzvqrce"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-08-31","id":"4ff590ed-4b8d-4a6f-aff2-4683c15cf6bf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-08-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:08:31.528121Z","keyId":"0eb075be-9363-44c7-966b-86028d889a5c","startDate":"2018-08-02T05:08:31.528121Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"81168824-4f28-48ed-bb5c-8218403f8d45","deletionTimestamp":"2018-08-14T05:21:44Z","acceptMappedClaims":null,"addIns":[],"appId":"630e5a72-8501-41c7-b9b3-448e1339baa6","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-07-30","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-07-30","identifierUris":["http://clitest5axkqf2p4q"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-30 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-07-30","id":"55c943f8-2d01-4110-b466-0c847ec5fb68","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-30 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-07-30","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:07:30.137588Z","keyId":"3d613f0c-69df-45db-8b19-d5e4fe9037b5","startDate":"2018-08-14T05:07:30.137588Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8426d746-cfe7-4411-bb0b-277c6c14ecd8","deletionTimestamp":"2018-08-03T05:33:02Z","acceptMappedClaims":null,"addIns":[],"appId":"d4ad0d13-4dd4-4596-9f64-2455b2cd9fd7","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-32-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-32-42","identifierUris":["http://cli_test_sp_with_kv_existing_certyzhoepdfrpur4u6g4fry7ya77mz5afjb5t4k7kik5d2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"B2D5553C6981E5F4B1F9E28E3390E9A9AF88CDCC","endDate":"2019-02-03T05:32:33Z","keyId":"60f22425-73c0-4cc0-a0f9-aeba611a76db","startDate":"2018-08-03T05:32:55.954781Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-32-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-32-42","id":"d74e18ad-f5cf-40c0-9953-ef7fd8e3f2b3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-32-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-32-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"853b686a-937b-45e0-8974-4c066576c643","deletionTimestamp":"2018-08-30T02:23:36Z","acceptMappedClaims":null,"addIns":[],"appId":"214ac857-f8bd-4db5-afb8-b78f926a494e","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp371868648","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp371868648","identifierUris":["http://easycreate.azure.com/javasdkapp371868648"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-12-08T02:23:34.103Z","keyId":"7007ef71-0054-4760-ba17-c78fbef34fbb","startDate":"2018-08-30T02:23:34.103Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp371868648 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp371868648","id":"a3ad7441-a2aa-456a-9d90-b494b283c034","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp371868648 on your behalf.","userConsentDisplayName":"Access + javasdkapp371868648","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp371868648"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"857266b9-c593-4679-9351-b0e69c5906e7","deletionTimestamp":"2018-08-10T05:11:45Z","acceptMappedClaims":null,"addIns":[],"appId":"25175611-545e-486e-83e7-1b147c819719","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-11-41","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-11-41","identifierUris":["http://clitestzahef42nul"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-41 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-11-41","id":"dedb1365-5ca8-4ffe-9cb3-4ec90be12932","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-41 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-11-41","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:11:41.489329Z","keyId":"a3c4cfd0-4d76-4a1a-8ad4-311a239e8e0d","startDate":"2018-08-10T05:11:41.489329Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"85bcff54-1702-4ca1-ba9d-db8650a8e15f","deletionTimestamp":"2018-08-24T05:47:04Z","acceptMappedClaims":null,"addIns":[],"appId":"d77b0d72-ede6-433b-a7a7-d652399e42d8","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-29-57","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-29-57","identifierUris":["http://clitestrtomvbqowf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-57 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-29-57","id":"ea268747-191c-4d0c-810c-a7c193807d16","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-57 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-29-57","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:29:57.922695Z","keyId":"397bd0e5-89fb-4d97-b77a-6de36c3f5316","startDate":"2018-08-24T05:29:57.922695Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"865392f5-412d-4a50-ad3a-b56bf3fb79b6","deletionTimestamp":"2018-08-14T19:45:55Z","acceptMappedClaims":null,"addIns":[],"appId":"c952600e-2bb8-4dc9-8bec-06570236c9b0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-19-45-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-19-45-42","identifierUris":["http://cli_create_rbac_sp_with_certam4u4xyrudxaoetbmhxkk32vusdxnj4lqidvxvoht7g43n4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"0DA33C18C6CF3AF964CE6267265A50CCA769B76C","endDate":"2019-08-14T19:45:54.423671Z","keyId":"12e9c77c-5f35-42d7-a499-8a286843f1f2","startDate":"2018-08-14T19:45:54.423671Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-45-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-19-45-42","id":"1bf6a0cb-9594-44bc-9041-cc4a162a074b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-45-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-19-45-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"866a2d6e-bb8e-4795-9f2b-624fd584fe7a","deletionTimestamp":"2018-08-14T05:35:55Z","acceptMappedClaims":null,"addIns":[],"appId":"147c6e0c-2bf2-41ad-9902-bca7fa7c63c1","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-35-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-35-33","identifierUris":["http://cli_create_rbac_sp_with_passwordg2h5cixp32mabommqr3w6ezbleuku3z64cxwmr4a7dn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-35-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-35-33","id":"31fbb1ce-1ac8-4996-8336-eefb7aa66158","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-35-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-35-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:35:33.215336Z","keyId":"83adf988-825e-43f3-b7aa-69c3f44b490b","startDate":"2018-08-14T05:35:33.215336Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"88bb9427-e95b-4580-924e-1dd386a2d939","deletionTimestamp":"2018-08-31T01:24:23Z","acceptMappedClaims":null,"addIns":[],"appId":"c16c8710-3c57-403a-a87e-ab54c720224f","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappbab213319","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappbab213319","identifierUris":["http://easycreate.azure.com/javasdkappbab213319"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-19T01:24:13.4757978Z","keyId":"07071fcc-2767-40ce-b735-f21c6be5c620","startDate":"2018-08-31T01:24:13.4757978Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-12-09T01:24:13.4619836Z","keyId":"005bd5cd-10dd-4f2d-9ecd-bc6f6e60166e","startDate":"2018-08-31T01:24:13.4619836Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappbab213319 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappbab213319","id":"84c3bc98-3ba3-4e28-80c5-58e12fc96ad0","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappbab213319 on your behalf.","userConsentDisplayName":"Access + javasdkappbab213319","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-20T01:24:16.9449125Z","keyId":"7f557d27-348b-4a23-b03a-97e4bbd30441","startDate":"2018-08-31T01:24:16.9449125Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappbab213319"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"89231def-3906-4307-925e-74b3786fbd8d","deletionTimestamp":"2018-08-16T05:52:29Z","acceptMappedClaims":null,"addIns":[],"appId":"05aa558e-6c35-4351-ae47-eac07f62e51f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-52-06","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-52-06","identifierUris":["http://cli_test_sp_with_kv_existing_certnxdgv2ygy2ficq4vfwiypm4d3lqlba6ytpqg2ks4yj2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"13AFA7BF93680B2B8C8B36B8235E8F0EBEC38497","endDate":"2019-02-16T05:51:59Z","keyId":"05a960c2-1907-4d75-adbc-96150beb5eb8","startDate":"2018-08-16T05:52:27.060173Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-52-06 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-52-06","id":"bdfc6bfa-5d65-4f31-8918-9937fe697284","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-52-06 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-52-06","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"89374ec4-01cf-4a68-8408-c3d6f2f2ff59","deletionTimestamp":"2018-08-08T05:33:28Z","acceptMappedClaims":null,"addIns":[],"appId":"f2021db2-156a-4354-bbb7-08199364e841","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-16-08","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-16-08","identifierUris":["http://clitestvljibaryhk"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-08 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-16-08","id":"e1a7333d-5896-4a1d-b75d-3a0f18cfee4e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-08 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-16-08","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:16:08.445193Z","keyId":"b718b9f4-8a80-46af-821f-67194f875305","startDate":"2018-08-08T05:16:08.445193Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"89436604-8760-44b4-83c0-06e937b65fa7","deletionTimestamp":"2018-08-04T05:34:06Z","acceptMappedClaims":null,"addIns":[],"appId":"bf5f856d-f694-42e8-ab14-d5106a565f09","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-07-44","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-07-44","identifierUris":["http://clitest2mdsv43zcn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-44 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-07-44","id":"8619da04-a997-42ca-9737-3650d35ed6e6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-44 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-07-44","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:07:44.888364Z","keyId":"1755d135-8878-4511-811b-c504d3592fe7","startDate":"2018-08-04T05:07:44.888364Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"89a7649b-d8a2-43a0-aaf4-feb19d6e67dc","deletionTimestamp":"2018-08-22T05:19:52Z","acceptMappedClaims":null,"addIns":[],"appId":"62deeff1-2d3d-42d3-b157-05fb9f989eac","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-07-24","identifierUris":["http://clitestjlnrbi6xzb"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-07-24","id":"e10ff1ec-dfbd-417e-93c7-87fb4ed289f6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:07:24.474953Z","keyId":"d6ff8fc1-3401-4179-b624-c4bc0759d512","startDate":"2018-08-22T05:07:24.474953Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8a3658e5-25b0-4de6-8dce-b152b9cc4cad","deletionTimestamp":"2018-08-03T05:32:54Z","acceptMappedClaims":null,"addIns":[],"appId":"1b6d769e-f2c9-4179-a0dd-6e7280649acc","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-31-39","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-31-39","identifierUris":["http://cli_test_sp_with_kv_new_certlw77nelkl2ds2vzmn7qtm64soklqltnlmc73zqk6xapq5vs"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"8FA0DD3358FB97E2E60D2745B25EA368FF293B4A","endDate":"2019-08-03T05:32:23.907737Z","keyId":"c50e7558-a4e8-4c57-a0dd-d0e36544a65e","startDate":"2018-08-03T05:32:23.907737Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-39 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-31-39","id":"a537c974-7e23-4050-a5ee-131ec33f7462","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-39 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-31-39","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8ac070ba-151a-4f1c-9211-257a1924934f","deletionTimestamp":"2018-08-20T14:37:48Z","acceptMappedClaims":null,"addIns":[],"appId":"2620c816-b175-4453-b482-ee9f50a6b3b0","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappbca470725","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappbca470725","identifierUris":["http://easycreate.azure.com/javasdkappbca470725"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-28T14:37:46.178Z","keyId":"bf2a45a9-5b9a-426b-9876-6eea87556a8a","startDate":"2018-08-20T14:37:46.178Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappbca470725 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappbca470725","id":"ab116896-8c90-4162-84db-26ea0db5dbda","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappbca470725 on your behalf.","userConsentDisplayName":"Access + javasdkappbca470725","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappbca470725"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8ad872fb-e4d1-4b34-af97-cea8deadaa78","deletionTimestamp":"2018-08-14T05:35:20Z","acceptMappedClaims":null,"addIns":[],"appId":"92c28080-ba74-4211-b643-99b0bac2c394","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-35-12","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-35-12","identifierUris":["http://clisp-test-4btvcf2xh"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-35-12 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-35-12","id":"4725df2e-e55e-4e3e-8157-ec751a96bbae","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-35-12 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-35-12","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:35:17.791139Z","keyId":"25698b46-0471-43e9-a5e3-e40cc7ac5db9","startDate":"2018-08-14T05:35:17.791139Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8b054ef4-6fc7-4e0b-8fec-d0a5b5438969","deletionTimestamp":"2018-08-22T05:32:08Z","acceptMappedClaims":null,"addIns":[],"appId":"7f60bbe1-1f49-4fba-bdeb-ec68718838e0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-31-43","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-31-43","identifierUris":["http://cli-grapho5nmx"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-31-43 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-31-43","id":"f62aabf6-51d7-429a-80fb-1f4d17169f2f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-31-43 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-31-43","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:31:43.906374Z","keyId":"c348735d-a4ce-4b81-b968-cc59e20ae6b3","startDate":"2018-08-22T05:31:43.906374Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8c131322-b149-426d-9cb9-56aae60ab267","deletionTimestamp":"2018-08-02T05:32:15Z","acceptMappedClaims":null,"addIns":[],"appId":"13180f50-224b-4739-acff-513cfbc532c2","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-08-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-08-31","identifierUris":["http://clitestf3efkpcmem"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-08-31","id":"371e7039-4f0c-4e9e-80bc-09e635ca30bf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-08-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:08:31.338843Z","keyId":"7d58ba12-9eb1-4e0d-9dda-071f2c853a32","startDate":"2018-08-02T05:08:31.338843Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8c303860-4744-4005-a453-1e0dd35ce260","deletionTimestamp":"2018-08-29T15:30:31Z","acceptMappedClaims":null,"addIns":[],"appId":"15103772-e92f-488c-ba92-5d8cd4995cd0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-15-30-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-15-30-04","identifierUris":["http://clitestr3x4s5lwts"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-15-30-04","id":"4bff2421-ca94-4f51-8873-48468adea542","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-15-30-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:04.090759Z","keyId":"ee1c3057-c44d-4d77-b95c-7848fcdd71ad","startDate":"2018-08-29T15:30:04.090759Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8d28bdef-53e1-47a6-b87c-31528b76cb67","deletionTimestamp":"2018-08-16T05:50:12Z","acceptMappedClaims":null,"addIns":[],"appId":"a4c46fac-e9c6-4fba-8626-8b28402ef623","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graph33pod","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graph33pod","identifierUris":["http://cli-graph33pod"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graph33pod on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graph33pod","id":"7ada157d-b408-4b06-ac0d-0c7a07091938","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graph33pod on your behalf.","userConsentDisplayName":"Access + cli-graph33pod","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8da4450b-7c8a-4bd1-91e2-71c45e1d44c5","deletionTimestamp":"2018-08-01T05:31:54Z","acceptMappedClaims":null,"addIns":[],"appId":"cbd8f7fa-3992-4bbf-9259-5f879c798542","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphh6evi","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphh6evi","identifierUris":["http://cli-graphh6evi"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphh6evi on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphh6evi","id":"da420c99-8057-4ce7-a2a6-5bc927ab29cf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphh6evi on your behalf.","userConsentDisplayName":"Access + cli-graphh6evi","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8e08c177-8679-416f-9fa6-828be7cfab2c","deletionTimestamp":"2018-08-01T14:50:00Z","acceptMappedClaims":null,"addIns":[],"appId":"2342df3c-514a-4411-886a-e0ef6a9a32fc","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp36f56290ecb98","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp36f56290ecb98","identifierUris":["http://easycreate.azure.com/ssp36f56290ecb98"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp36f56290ecb98 on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp36f56290ecb98","id":"b6196e40-a324-4459-a109-6144b9a55e46","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp36f56290ecb98 on your behalf.","userConsentDisplayName":"Access + ssp36f56290ecb98","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp36f56290ecb98"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8e0ca582-86bc-49be-8a33-44f3b56db904","deletionTimestamp":"2018-08-16T05:27:25Z","acceptMappedClaims":null,"addIns":[],"appId":"ff3dd9af-8dac-45c2-b6e8-7078a3f155f6","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rghzittycugpv7j727dykikrnok6zwkxkp3zsc4xgkase32h5ykwv7symi23qow752q","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rghzittycugpv7j727dykikrnok6zwkxkp3zsc4xgkase32h5ykwv7symi23qow752q","identifierUris":["http://clitest.rghzittycugpv7j727dykikrnok6zwkxkp3zsc4xgkase32h5ykwv7symi23qow752q"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rghzittycugpv7j727dykikrnok6zwkxkp3zsc4xgkase32h5ykwv7symi23qow752q + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rghzittycugpv7j727dykikrnok6zwkxkp3zsc4xgkase32h5ykwv7symi23qow752q","id":"e0ba346e-471f-45f8-a277-d7e66618b89c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rghzittycugpv7j727dykikrnok6zwkxkp3zsc4xgkase32h5ykwv7symi23qow752q + on your behalf.","userConsentDisplayName":"Access clitest.rghzittycugpv7j727dykikrnok6zwkxkp3zsc4xgkase32h5ykwv7symi23qow752q","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:27:18.732409Z","keyId":"882fcda1-e2b9-4d7f-b723-cbf8a48b1af7","startDate":"2018-08-16T05:27:18.732409Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-16T05:27:05.012604Z","keyId":"94ac2b03-4df6-407b-b44e-78f4b4cf9b4d","startDate":"2018-08-16T05:27:05.012604Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8e766373-0909-4af1-a6b7-4c5c9078a650","deletionTimestamp":"2018-08-20T14:38:27Z","acceptMappedClaims":null,"addIns":[],"appId":"6718c49d-916f-4dac-82bb-ce05ceb33e69","appRoles":[],"availableToOtherTenants":false,"displayName":"sspc479731371832","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/sspc479731371832","identifierUris":["http://easycreate.azure.com/sspc479731371832"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access sspc479731371832 on behalf of the signed-in user.","adminConsentDisplayName":"Access + sspc479731371832","id":"ebc33b53-d6ec-4299-bb14-c37f31f2534e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access sspc479731371832 on your behalf.","userConsentDisplayName":"Access + sspc479731371832","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/sspc479731371832"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8ea811ad-1e35-46a4-8ad5-27ab20e80782","deletionTimestamp":"2018-08-14T19:46:19Z","acceptMappedClaims":null,"addIns":[],"appId":"4b12b7a0-ad74-4025-8807-2c4e83a09a72","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-19-45-47","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-19-45-47","identifierUris":["http://cli_create_rbac_sp_with_password47smjx5r7qk5jisbue4od7iwvlndnj5pmsrpgpapcjw"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-45-47 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-19-45-47","id":"aaf17c3a-c429-4a6a-a017-f5a5cc12d6a7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-45-47 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-19-45-47","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T19:45:47.070441Z","keyId":"0160b7c0-210e-4029-a813-e9090b867558","startDate":"2018-08-14T19:45:47.070441Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8ef253bc-9317-49d5-900c-b41c4d1eea51","deletionTimestamp":"2018-08-10T11:12:48Z","acceptMappedClaims":null,"addIns":[],"appId":"14f7fa28-cc40-4e9a-b3ef-2334dbc12653","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappbe1126585","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappbe1126585","identifierUris":["http://easycreate.azure.com/javasdkappbe1126585"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-10-29T11:12:44.7501197Z","keyId":"d9d2d187-3f87-4754-8376-c7fa6efe0fe7","startDate":"2018-08-10T11:12:44.7501197Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-18T11:12:44.7408698Z","keyId":"4882a9fe-8420-4364-9217-bc8cbb778fd5","startDate":"2018-08-10T11:12:44.7408698Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappbe1126585 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappbe1126585","id":"19fb82c9-ec6c-46a5-8d10-b6143c81671f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappbe1126585 on your behalf.","userConsentDisplayName":"Access + javasdkappbe1126585","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappbe1126585"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8f416024-beb8-4a17-9388-498a767131b3","deletionTimestamp":"2018-08-28T10:47:35Z","acceptMappedClaims":null,"addIns":[],"appId":"deb1ac81-f0b8-44fd-b517-4dd23bc81aec","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-10-35-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-10-35-20","identifierUris":["http://clitesta72jl6zyim"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-10-35-20","id":"85a9308d-7570-4b84-a73d-d3641060e460","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-10-35-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T10:35:20.462506Z","keyId":"0de874a8-51be-42bd-9c5b-6c88668770f5","startDate":"2018-08-28T10:35:20.462506Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8f5885e7-818d-42bf-aebd-1056f1747806","deletionTimestamp":"2018-08-29T16:01:11Z","acceptMappedClaims":null,"addIns":[],"appId":"1eb5104b-27d3-445a-953c-986380c517fc","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-16-01-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-16-01-04","identifierUris":["http://cli_create_rbac_sp_minimaldtodepyhwvjohiajnz7jrvfo532hdydz3svk6d4f62ipn677x"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-01-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-16-01-04","id":"14c94731-2e11-4d8f-97ad-b22565078719","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-01-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-16-01-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T16:01:04.255385Z","keyId":"b0d462e1-9b31-4548-90fc-7270341e1e4d","startDate":"2018-08-29T16:01:04.255385Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8fa9e141-2f82-47d5-b30a-11a1be726eae","deletionTimestamp":"2018-08-02T05:09:27Z","acceptMappedClaims":null,"addIns":[],"appId":"73550250-0893-4d68-913d-c15c7172a348","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rg3jyb4oeoaxjo4xc6o4bscgvfswijqifhdddmb2w35m5zagtdqbji6ufokezsyka2o","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rg3jyb4oeoaxjo4xc6o4bscgvfswijqifhdddmb2w35m5zagtdqbji6ufokezsyka2o","identifierUris":["http://clitest.rg3jyb4oeoaxjo4xc6o4bscgvfswijqifhdddmb2w35m5zagtdqbji6ufokezsyka2o"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rg3jyb4oeoaxjo4xc6o4bscgvfswijqifhdddmb2w35m5zagtdqbji6ufokezsyka2o + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rg3jyb4oeoaxjo4xc6o4bscgvfswijqifhdddmb2w35m5zagtdqbji6ufokezsyka2o","id":"a4c4954e-ea08-4d0a-888b-228e9a80826c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rg3jyb4oeoaxjo4xc6o4bscgvfswijqifhdddmb2w35m5zagtdqbji6ufokezsyka2o + on your behalf.","userConsentDisplayName":"Access clitest.rg3jyb4oeoaxjo4xc6o4bscgvfswijqifhdddmb2w35m5zagtdqbji6ufokezsyka2o","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:09:20.801918Z","keyId":"303cd287-f00d-4605-b9a2-ac6c7270b1d1","startDate":"2018-08-02T05:09:20.801918Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-02T05:09:03.931277Z","keyId":"8712e380-d972-4fa7-b750-7a394bf5dd0e","startDate":"2018-08-02T05:09:03.931277Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8fd3ab85-24af-4ade-9136-5919424f9192","deletionTimestamp":"2018-08-06T14:38:28Z","acceptMappedClaims":null,"addIns":[],"appId":"3bacd570-d077-45d8-abc7-c1ccbfcfff46","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp634249969cb55","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp634249969cb55","identifierUris":["http://easycreate.azure.com/ssp634249969cb55"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp634249969cb55 on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp634249969cb55","id":"c496307e-1fd5-4c76-8d50-9e737ef124f6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp634249969cb55 on your behalf.","userConsentDisplayName":"Access + ssp634249969cb55","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp634249969cb55"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"8fe24b1f-fd84-4a6f-ab88-061e9d3dfbf3","deletionTimestamp":"2018-08-04T05:07:57Z","acceptMappedClaims":null,"addIns":[],"appId":"bf00ffc9-3d67-447a-af08-f2d2ad517c25","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-07-46","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-07-46","identifierUris":["http://clitest622dcq2geq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-46 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-07-46","id":"50de5a69-114e-4c78-8ee2-b444581abfb1","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-46 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-07-46","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:07:46.327048Z","keyId":"822b2445-8ebf-437f-89ea-edf86e2d3b2e","startDate":"2018-08-04T05:07:46.327048Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9066c8c3-91fc-4465-ac6a-23eb654727fc","deletionTimestamp":"2018-08-04T05:34:20Z","acceptMappedClaims":null,"addIns":[],"appId":"bfdb687b-67d5-49d1-ad25-b58fa2a8e2fa","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-33-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-33-54","identifierUris":["http://cli_create_rbac_sp_with_certgfga26n4wp2aedjes6egh7ivexdupoi6r52764djoqn7ki6"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"EA6E07657D9221EFD58B0AF2EBF3AD807DC54B61","endDate":"2019-08-04T05:34:18.399505Z","keyId":"781ff44f-557b-4ee7-a7c4-1f39f7642c76","startDate":"2018-08-04T05:34:18.399505Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-33-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-33-54","id":"a7c39cee-e20c-46f1-afd7-6534f30931dc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-33-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-33-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"906954cd-bd56-4b2f-93e0-492e86c6c545","deletionTimestamp":"2018-08-10T05:38:45Z","acceptMappedClaims":null,"addIns":[],"appId":"09ad8baf-726d-4820-8231-0c36cda40cce","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-38-26","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-38-26","identifierUris":["http://cli_create_rbac_sp_with_passwordabdo4wmlptr6ktx6gk3oqemdbiopc5y4copoorjqojr"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-38-26 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-38-26","id":"7af54037-979a-41d7-b3a6-9faf68a5ac19","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-38-26 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-38-26","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:38:26.933098Z","keyId":"671fe21f-a3ac-4242-88cb-4f05a2ad6619","startDate":"2018-08-10T05:38:26.933098Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"906b2ae4-e9ca-4bc7-819a-fa768115d7b3","deletionTimestamp":"2018-08-03T05:31:52Z","acceptMappedClaims":null,"addIns":[],"appId":"14aa6e14-32a9-4ad2-b955-546821c7db1b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-31-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-31-28","identifierUris":["http://cli_create_rbac_sp_with_certniokikrtf5iqpompwvm3bnyq2kaed2idvzpnq3vzdmoddpq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"D3C8BA64954F6C529D2A8DBFF3193E1B6A1D231C","endDate":"2019-08-03T05:31:51.117716Z","keyId":"eb5ad8f4-f4ad-4345-b006-4ff5a7c0e0db","startDate":"2018-08-03T05:31:51.117716Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-31-28","id":"8a1b3ac3-1a78-452b-ba73-d311d5e5cc39","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-31-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"91794647-bdf5-47a6-a199-ac376b156dd4","deletionTimestamp":"2018-08-14T05:37:17Z","acceptMappedClaims":null,"addIns":[],"appId":"ff804a11-6f0c-4cad-8966-21c00e99ba18","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-07-29","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-07-29","identifierUris":["http://clitest2yvqhz3n3o"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-29 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-07-29","id":"2a5eaf08-387d-44ac-8bf6-5f37aebc55d8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-29 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-07-29","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:07:29.932083Z","keyId":"c81de197-1601-4b3b-99c2-6f532fcfe6d4","startDate":"2018-08-14T05:07:29.932083Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"91838b6b-d4ea-4300-810e-fdda5654ad5b","deletionTimestamp":"2018-08-11T05:13:52Z","acceptMappedClaims":null,"addIns":[],"appId":"2799048b-4552-4ab5-80c1-1425cd776d7e","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-13-18","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-13-18","identifierUris":["http://clitestugewvuwzrt"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-18 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-13-18","id":"a141452e-8be0-44e8-b6c7-cc9a4c6af38f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-18 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-13-18","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:13:18.371082Z","keyId":"544d9905-927f-4708-96f8-bc4cd369edf9","startDate":"2018-08-11T05:13:18.371082Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"918bbd64-8783-4148-bee0-f998c413e2df","deletionTimestamp":"2018-08-21T05:34:07Z","acceptMappedClaims":null,"addIns":[],"appId":"20348451-c71d-4aaa-8058-f302d689f4a5","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-33-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-33-20","identifierUris":["http://cli_test_sp_with_kv_new_certzuf6e6ankv5dyz6jvh5mb2ezspzr65uvhiq5rslgyngs5wn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"1EC8C5FD96C2F47DF030F79E38518F226E44B232","endDate":"2019-08-21T05:33:46.991172Z","keyId":"bbd5e61e-74fa-4330-8d58-b1d59b2d54f5","startDate":"2018-08-21T05:33:46.991172Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-33-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-33-20","id":"c031a58b-7066-4bd8-9bf6-f20ec9f7b5d1","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-33-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-33-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"91a46624-9084-4705-ae41-b328cd3b27f2","deletionTimestamp":"2018-08-22T05:32:09Z","acceptMappedClaims":null,"addIns":[],"appId":"0f0f6bdd-4407-4b79-a16c-f776b0fec2c2","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-31-58","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-31-58","identifierUris":["http://cli_create_rbac_sp_with_certku2dcf5goivuxzxtfrdjhmwynrgk5gbvrydytudx4ucy2cd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"F75FBD8723B1EC5929FDB6A4F613D5F22D173C6E","endDate":"2019-08-22T05:32:07.666887Z","keyId":"6937543f-2828-4022-b794-f62db54207b8","startDate":"2018-08-22T05:32:07.666887Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-31-58 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-31-58","id":"305fdd8d-3984-4671-aa26-ed8044eba77c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-31-58 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-31-58","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"92427384-f221-47d6-99c4-13971ef9743f","deletionTimestamp":"2018-08-02T05:33:48Z","acceptMappedClaims":null,"addIns":[],"appId":"d594a1c4-32e8-4ac7-8208-2907b358c6a0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-33-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-33-33","identifierUris":["http://cli_test_sp_with_kv_existing_certtdtok4x7bst2yxojlxbf56l73zm4yzq7giuzxd2dvd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"5A685774EFE0AEC21C4DD9E9C0818792CAFF0254","endDate":"2019-08-02T05:33:46.325158Z","keyId":"c0f7ebc8-267c-4be1-b669-f5a0bcdaad97","startDate":"2018-08-02T05:33:46.325158Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-33-33","id":"d8773b1c-7872-406e-b18e-9a942fd14958","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-33-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"93523dc0-2c28-44a5-b2a0-d8a8c03fb9df","deletionTimestamp":"2018-08-07T14:46:18Z","acceptMappedClaims":null,"addIns":[],"appId":"19283410-8f22-4b3c-a76d-57356f18c083","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp77630842ec860","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp77630842ec860","identifierUris":["http://easycreate.azure.com/ssp77630842ec860"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp77630842ec860 on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp77630842ec860","id":"87aeb4ed-f4e3-4c09-ab0c-c0a512ddd450","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp77630842ec860 on your behalf.","userConsentDisplayName":"Access + ssp77630842ec860","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp77630842ec860"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"943792ae-0e91-47e8-b3be-0e9fe12a5d6b","deletionTimestamp":"2018-08-24T05:55:21Z","acceptMappedClaims":null,"addIns":[],"appId":"c3435b57-f662-4b68-a3f0-0eec4325a94d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-55-03","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-55-03","identifierUris":["http://cli-graphm4qsq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-03 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-55-03","id":"a08157aa-f4ec-47fc-a3db-f4fff1978782","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-03 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-55-03","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:55:03.070006Z","keyId":"a9bdf1ca-2e5c-4299-91b8-b11cb514fe1c","startDate":"2018-08-24T05:55:03.070006Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9456f3d9-7da8-4f63-b8e6-3530a724cc6c","deletionTimestamp":"2018-08-25T08:36:21Z","acceptMappedClaims":null,"addIns":[],"appId":"a4381f15-a613-495d-bd47-c01f88ae162b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-08-35-59","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-08-35-59","identifierUris":["http://clitest4a6rbgnieu"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-59 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-08-35-59","id":"200683e2-9a7c-4ed2-9712-3586fe5e3580","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-59 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-08-35-59","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T08:35:59.225647Z","keyId":"f7749f82-1813-4c73-aae6-fb6678aed324","startDate":"2018-08-25T08:35:59.225647Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9548f903-aaa5-4dd3-9cd9-f69ac0b7753b","deletionTimestamp":"2018-08-21T05:33:46Z","acceptMappedClaims":null,"addIns":[],"appId":"d5f7c708-d0c2-4fb5-8409-be1025859ffe","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-33-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-33-31","identifierUris":["http://cli_test_sp_with_kv_existing_cert7lgmvu4lapx2gyvvapglms6qmbitithldfe4vlhejf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"94243117F53BC39D228B2E5D1E9CC554E7ACC9C8","endDate":"2019-08-21T05:33:45.088812Z","keyId":"771f013b-ad32-4a44-93ea-a5868b67a469","startDate":"2018-08-21T05:33:45.088812Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-33-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-33-31","id":"6cef6488-6c73-437f-aef7-881f2de9d3cc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-33-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-33-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9606c9b3-535e-40bd-958c-bd8055c3b22a","deletionTimestamp":"2018-08-09T05:11:37Z","acceptMappedClaims":null,"addIns":[],"appId":"df21dfd7-809c-4a02-b079-fd07767c8ea2","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgbhaxn5sbjjhyr7kz65kjucqjfkysq6ykjlqgrw2ici5zexvkd7xne4jycvroybgvw","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgbhaxn5sbjjhyr7kz65kjucqjfkysq6ykjlqgrw2ici5zexvkd7xne4jycvroybgvw","identifierUris":["http://clitest.rgbhaxn5sbjjhyr7kz65kjucqjfkysq6ykjlqgrw2ici5zexvkd7xne4jycvroybgvw"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgbhaxn5sbjjhyr7kz65kjucqjfkysq6ykjlqgrw2ici5zexvkd7xne4jycvroybgvw + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgbhaxn5sbjjhyr7kz65kjucqjfkysq6ykjlqgrw2ici5zexvkd7xne4jycvroybgvw","id":"8c9a55c6-818b-4562-a382-ba74bbe3ff5c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgbhaxn5sbjjhyr7kz65kjucqjfkysq6ykjlqgrw2ici5zexvkd7xne4jycvroybgvw + on your behalf.","userConsentDisplayName":"Access clitest.rgbhaxn5sbjjhyr7kz65kjucqjfkysq6ykjlqgrw2ici5zexvkd7xne4jycvroybgvw","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:11:34.433926Z","keyId":"e1ce2e21-ed96-4e55-ada0-ee1d87ea0582","startDate":"2018-08-09T05:11:34.433926Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-09T05:11:19.450759Z","keyId":"1600e9eb-4cc4-4a34-878c-4cc1128fe4b8","startDate":"2018-08-09T05:11:19.450759Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"96bf889a-b803-4f8a-a666-698d679c20cc","deletionTimestamp":"2018-08-17T21:11:22Z","acceptMappedClaims":null,"addIns":[],"appId":"784126d2-9e20-44c0-967d-118f7d421603","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappb35085900","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappb35085900","identifierUris":["http://easycreate.azure.com/javasdkappb35085900"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-05T22:11:18.7382744Z","keyId":"cd07c3ed-e60e-4997-b647-8fc2df07e275","startDate":"2018-08-17T21:11:18.7382744Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-25T22:11:18.7316749Z","keyId":"e9c059ea-33b6-444c-8ca4-43b8a87af458","startDate":"2018-08-17T21:11:18.7316749Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappb35085900 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappb35085900","id":"f09d7e92-8e2b-40bc-ba0e-069e11c40d12","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappb35085900 on your behalf.","userConsentDisplayName":"Access + javasdkappb35085900","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-06T21:11:20.6645361Z","keyId":"e7063aae-6005-494a-80e3-6f05b38ad911","startDate":"2018-08-17T21:11:20.6645361Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappb35085900"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"98adf6f3-03cb-4f60-b3f7-50d7d1c21e75","deletionTimestamp":"2018-08-21T05:21:34Z","acceptMappedClaims":null,"addIns":[],"appId":"81783906-2ce6-42ee-9cab-4b727ce23ba3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-07-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-07-31","identifierUris":["http://clitestcsqzc63g4y"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-07-31","id":"83f6be6d-3b2c-41b2-a635-346be47a1591","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-07-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:07:31.70408Z","keyId":"1de2c674-79a2-4968-a9bc-99d8bd33c37f","startDate":"2018-08-21T05:07:31.70408Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9950837b-e7e9-42cf-8682-b016c7637a46","deletionTimestamp":"2018-08-29T15:44:13Z","acceptMappedClaims":null,"addIns":[],"appId":"fc124354-e77a-44fd-ac84-058235f47984","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-15-30-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-15-30-04","identifierUris":["http://clitestc36wvua5hs"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-15-30-04","id":"0f32b576-3a55-4f23-9fc4-e7b3ca4f2c98","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-15-30-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:04.084225Z","keyId":"2b353e84-bad7-4652-80cf-7e634a6067b0","startDate":"2018-08-29T15:30:04.084225Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9d12c01b-ab3c-49f6-a4cb-133d6b88c4f7","deletionTimestamp":"2018-08-10T05:38:01Z","acceptMappedClaims":null,"addIns":[],"appId":"2d62982f-5b28-4921-9de4-e142ef1de2c1","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-37-49","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-37-49","identifierUris":["http://clisp-test-fgg7idziz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-37-49 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-37-49","id":"7f9ee657-c042-494b-9cbf-85cdeac38559","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-37-49 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-37-49","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:37:54.472197Z","keyId":"c552b737-dc75-4718-b06d-18e1a4ee2ed5","startDate":"2018-08-10T05:37:54.472197Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9d42ae1a-7515-49f5-bb0f-4ad771d07b02","deletionTimestamp":"2018-08-11T05:33:53Z","acceptMappedClaims":null,"addIns":[],"appId":"c4d3c710-a2f8-499f-8129-d233ea3d1595","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-13-23","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-13-23","identifierUris":["http://clitest2yme5sm4so"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-23 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-13-23","id":"6ddb1551-d159-4db2-83b4-540ea81a0e00","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-23 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-13-23","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:13:23.198036Z","keyId":"a8f3641e-beee-4b39-b141-95cfb46a3d10","startDate":"2018-08-11T05:13:23.198036Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9e2bc4fc-4dbd-4d9f-9358-020c8a4420fc","deletionTimestamp":"2018-08-21T05:21:12Z","acceptMappedClaims":null,"addIns":[],"appId":"e5918ce4-4e05-4f20-8928-8259faf55b7e","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-07-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-07-33","identifierUris":["http://clitestxmiwwmedrz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-07-33","id":"3c5007dc-0092-4a2e-8622-0525b953afd0","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-07-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:07:33.3527Z","keyId":"f2685b88-33cd-4ca0-9487-fbbeee046218","startDate":"2018-08-21T05:07:33.3527Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9ee1c74e-b050-4eb4-b8a7-e6dadbd44088","deletionTimestamp":"2018-08-17T05:07:56Z","acceptMappedClaims":null,"addIns":[],"appId":"98f53b0d-25be-4a90-9213-99caf62764dc","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-07-29","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-07-29","identifierUris":["http://clitestrmr2ls7qq7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-29 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-07-29","id":"7792defb-6b9e-4580-b498-8fdd864c5f10","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-29 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-07-29","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:07:29.287827Z","keyId":"95cc0885-e201-446d-8929-ebc3b501b42a","startDate":"2018-08-17T05:07:29.287827Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"9ff74606-189c-4193-8b39-e802f0294687","deletionTimestamp":"2018-08-02T05:33:09Z","acceptMappedClaims":null,"addIns":[],"appId":"757ca5a5-ffec-416e-bda1-c6dea5a9cf6b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-33-00","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-33-00","identifierUris":["http://clisp-test-se55x62eo"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-00 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-33-00","id":"f2115359-5005-4f0d-aade-bb1a3f1a0f33","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-00 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-33-00","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:33:06.309213Z","keyId":"63b52bd9-8765-457d-973d-8724b5ebadc8","startDate":"2018-08-02T05:33:06.309213Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a0d228ec-f064-4d43-a795-38935d33a1cb","deletionTimestamp":"2018-08-16T15:07:35Z","acceptMappedClaims":null,"addIns":[],"appId":"f6a95f8e-86cf-4c4f-b669-cc5686bb4c32","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp48251609a","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp48251609a","identifierUris":["http://easycreate.azure.com/javasdkapp48251609a"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-24T15:07:30.399Z","keyId":"89b475ef-6d3c-40d7-aac3-8751abe2646e","startDate":"2018-08-16T15:07:30.399Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp48251609a on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp48251609a","id":"635142f5-d920-42a3-bd25-ceccf35f8188","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp48251609a on your behalf.","userConsentDisplayName":"Access + javasdkapp48251609a","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp48251609a"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}],"odata.nextLink":"deletedDirectoryObjects/$/Microsoft.DirectoryServices.Application?$skiptoken=X''44537074020000304170706C69636174696F6E5F36386438646338632D623834312D343966382D623664362D303261653636366337396465304170706C69636174696F6E5F36386438646338632D623834312D343966382D623664362D30326165363636633739646500304170706C69636174696F6E5F61306432323865632D663036342D346434332D613739352D333839333564333361316362304170706C69636174696F6E5F61306432323865632D663036342D346434332D613739352D3338393335643333613163620000000000000000000000''"}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['195057'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:39 GMT'] + duration: ['3234475'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [BnOm9eidzVvEzdcjEkK3IqSSrIC1S15Nz8usiy4jLaU=] + ocp-aad-session-key: [DiBC96JR_Nh35uD0kalDHyI0FkzgigaDDc0JU4gNFOVFD-u9kzFZV5HoD01QYIVCe7GzJBC4IpvlLkmjytlAlsZ0i4zehtT1_QTsVNjezEAXHyfgN33QII6SjRL7oNPq714K_fCi1dOkgu19eUVrGw.Fa2hYCScJ8MsE7ru__AqCwUvracAKBJu1DplGDkwMM0] + pragma: [no-cache] + request-id: [20fa88e8-b3d5-470d-a7df-c0f38be59b9b] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/deletedDirectoryObjects/$/Microsoft.DirectoryServices.Application?api-version=1.6&$skiptoken=X'44537074020000304170706C69636174696F6E5F36386438646338632D623834312D343966382D623664362D303261653636366337396465304170706C69636174696F6E5F36386438646338632D623834312D343966382D623664362D30326165363636633739646500304170706C69636174696F6E5F61306432323865632D663036342D346434332D613739352D333839333564333361316362304170706C69636174696F6E5F61306432323865632D663036342D346434332D613739352D3338393335643333613163620000000000000000000000' + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#deletedDirectoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a1401694-18e2-41d3-8314-479166f50553","deletionTimestamp":"2018-08-11T05:13:58Z","acceptMappedClaims":null,"addIns":[],"appId":"6c2f5e19-180d-4292-b2cc-4bb4080d6835","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-13-16","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-13-16","identifierUris":["http://clitesta47y273xq6"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-16 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-13-16","id":"7af3cf01-ba53-4235-8afe-5e1c351dcea2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-13-16 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-13-16","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:13:16.328628Z","keyId":"8544c7ea-3595-470f-80cf-9b9d170c6b0b","startDate":"2018-08-11T05:13:16.328628Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a1784f5a-5782-44e1-8d36-69e0f0225d67","deletionTimestamp":"2018-08-28T11:01:58Z","acceptMappedClaims":null,"addIns":[],"appId":"41dae0e3-eb3f-451b-97f6-a276fb03866e","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-11-01-29","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-11-01-29","identifierUris":["http://cli_create_rbac_sp_with_certigfed65sdexz3fdmegwviczrgqy5uj3dukkzn4we7iculgm"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"C7B0F1ECDDF33E662F8DF3F7C19EB08444C946BF","endDate":"2019-08-28T11:01:57.061517Z","keyId":"7dbf5169-8f7f-427c-ac46-3198d4a33928","startDate":"2018-08-28T11:01:57.061517Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-29 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-11-01-29","id":"a44bc783-5ea7-4674-97bb-2947d14b0ff4","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-29 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-11-01-29","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a1dc369f-d620-4052-8c4b-4c8ccdabf03e","deletionTimestamp":"2018-08-17T05:19:54Z","acceptMappedClaims":null,"addIns":[],"appId":"6c65f962-ee93-4bb6-8adb-3c6aa71b947f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-07-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-07-28","identifierUris":["http://clitestyc4z3k2t5q"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-07-28","id":"c7ec080b-4ac8-400d-a10c-3631463365e3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-07-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:07:28.102565Z","keyId":"faeaf436-444a-4044-aea2-d281c7ffca16","startDate":"2018-08-17T05:07:28.102565Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a20eb463-9361-4bd6-bb8b-155499e54adc","deletionTimestamp":"2018-08-21T05:32:52Z","acceptMappedClaims":null,"addIns":[],"appId":"1be56f75-8b8c-4e24-a4f3-b8b61460e657","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-32-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-32-27","identifierUris":["http://cli-graphseum6"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-32-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-32-27","id":"2f340186-faa2-40ce-9d6a-7a28322bfe75","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-32-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-32-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:32:27.233618Z","keyId":"e3353d5a-b5d6-4a4a-9c3f-de93c37e6304","startDate":"2018-08-21T05:32:27.233618Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a21b219c-c309-4533-a93d-71bcf71eef23","deletionTimestamp":"2018-08-28T11:01:29Z","acceptMappedClaims":null,"addIns":[],"appId":"bbe73b9a-b947-46cf-be7e-9918911756e9","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-11-01-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-11-01-04","identifierUris":["http://cli-graphxfdw2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-11-01-04","id":"cb163e3c-97ed-478e-944e-25e7f2a55000","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-01-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-11-01-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T11:01:04.796736Z","keyId":"d16dc6c4-38f1-44dd-9e6b-e19e6b922766","startDate":"2018-08-28T11:01:04.796736Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a21d85c1-e572-4969-962a-6904f7b6deb0","deletionTimestamp":"2018-08-02T05:33:49Z","acceptMappedClaims":null,"addIns":[],"appId":"8715685b-ae25-403e-9e8a-c0fb6cf6d404","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-33-30","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-33-30","identifierUris":["http://cli_create_rbac_sp_with_passwordrkm3itf2xuxlwuyoe7duevd7hlor6z6aj6vfgceiukq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-30 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-33-30","id":"1dedbde8-b21b-4041-a607-b04bb4cf689b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-30 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-33-30","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:33:30.227083Z","keyId":"de03f519-af14-44b1-806e-0f421fbbeed1","startDate":"2018-08-02T05:33:30.227083Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a2754b57-ab74-4d49-9984-49f7e355f379","deletionTimestamp":"2018-08-18T05:32:08Z","acceptMappedClaims":null,"addIns":[],"appId":"86405442-ce78-4a5a-8ff9-f54014630436","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-32-00","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-32-00","identifierUris":["http://clisp-test-fscgcf4lh"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-00 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-32-00","id":"85e01343-8d80-487c-9d9b-d5af0fde641b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-00 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-32-00","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:32:05.461336Z","keyId":"bc38de2d-6c3f-4bc0-b0bc-1f7d034ed450","startDate":"2018-08-18T05:32:05.461336Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a33fc141-cd17-4e2b-9b86-2939a4d97196","deletionTimestamp":"2018-08-21T05:32:33Z","acceptMappedClaims":null,"addIns":[],"appId":"f0ce1ecb-0ee2-4f2f-988a-2cabdd8ae676","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphukt7z","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphukt7z","identifierUris":["http://cli-graphukt7z"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphukt7z on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphukt7z","id":"21fe5a1d-3dbf-4046-b4ac-867f530f9c82","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphukt7z on your behalf.","userConsentDisplayName":"Access + cli-graphukt7z","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a4e1975b-890c-4abc-aafa-1d9e230b5f7f","deletionTimestamp":"2018-08-18T05:08:11Z","acceptMappedClaims":null,"addIns":[],"appId":"93b282cf-b073-4c14-8243-40f29099364a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-07-37","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-07-37","identifierUris":["http://clitestbt2xebn4ag"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-37 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-07-37","id":"9923aa74-1b38-4038-b507-cb65a80a9e8c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-37 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-07-37","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:07:37.410852Z","keyId":"f34df0ff-0154-476a-bb5f-340d71304393","startDate":"2018-08-18T05:07:37.410852Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a4ffa457-9d70-479a-a6d9-4ee8b86a4759","deletionTimestamp":"2018-08-01T11:17:22Z","acceptMappedClaims":null,"addIns":[],"appId":"831368cc-7077-46a3-a5bf-116002f99ea9","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappeb581032d","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappeb581032d","identifierUris":["http://easycreate.azure.com/javasdkappeb581032d"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-10-20T11:17:19.8190628Z","keyId":"54d37a86-8066-422c-9026-241cef302ae0","startDate":"2018-08-01T11:17:19.8190628Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-09T11:17:19.8133802Z","keyId":"7bcb27de-8e22-4dca-81c8-11dce332d4da","startDate":"2018-08-01T11:17:19.8133802Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappeb581032d on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappeb581032d","id":"44cd5e60-543e-43e5-ab72-1da8855e225b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappeb581032d on your behalf.","userConsentDisplayName":"Access + javasdkappeb581032d","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappeb581032d"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a5177f76-6fa5-4c64-8794-e3876148b04b","deletionTimestamp":"2018-08-03T05:31:22Z","acceptMappedClaims":null,"addIns":[],"appId":"97d22858-958e-4d69-8f08-cf18d6241e45","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-31-13","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-31-13","identifierUris":["http://clisp-test-y24mjxxum"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-13 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-31-13","id":"c7da0485-7b02-4288-a4ce-dcf358d014a3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-31-13 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-31-13","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:31:19.615761Z","keyId":"64a00ecc-7316-4a84-8a51-c1c0f44dc207","startDate":"2018-08-03T05:31:19.615761Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a56a2d29-2d36-4b8f-9837-a4872cc99cc0","deletionTimestamp":"2018-08-16T05:50:59Z","acceptMappedClaims":null,"addIns":[],"appId":"f3464aa3-65e6-4770-86d5-1a54c14b5975","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-50-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-50-42","identifierUris":["http://cli_create_rbac_sp_with_passwordrnexltrpbzbgsdg3fvrrziupah2mv4ikgt4x3yhymrf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-50-42","id":"46b74c6f-5866-42f2-902d-25d78db7ea0e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-50-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:50:42.301335Z","keyId":"e927e516-57aa-43ca-a434-588df8b0d542","startDate":"2018-08-16T05:50:42.301335Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a6595146-1507-4d70-ba48-5266ccdd0c31","deletionTimestamp":"2018-08-15T05:46:48Z","acceptMappedClaims":null,"addIns":[],"appId":"2b74827d-11d0-4849-91f8-084dd4ce5f2b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-46-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-46-33","identifierUris":["http://cli_test_sp_with_kv_existing_cert7lbwpwjq5z7imntk4sr7vmiemyu4dxqqc5yeoixivm2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"AD5359D4C6405BDF640CEAC37791913A6326A855","endDate":"2019-02-15T05:46:27Z","keyId":"2b7175c5-89bd-4402-bed3-55cc5c497125","startDate":"2018-08-15T05:46:46.225004Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-46-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-46-33","id":"6fb1f49e-ca5a-45ec-b20c-f7123a470834","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-46-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-46-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a68aa034-8dee-4b14-b1cc-766b3fac7fc0","deletionTimestamp":"2018-08-15T05:21:38Z","acceptMappedClaims":null,"addIns":[],"appId":"fe598bff-d170-4adc-a898-82e0173c3c9a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-20-46","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-20-46","identifierUris":["http://clitest5b77h6sztj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-46 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-20-46","id":"61cb9722-3dee-4131-8fcd-5ac71aa21282","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-46 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-20-46","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:20:46.456859Z","keyId":"c8e497b4-bf4b-4d1d-bccd-14c4add95731","startDate":"2018-08-15T05:20:46.456859Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a6cf357e-7031-42ae-a8c9-d73f903ec8ca","deletionTimestamp":"2018-08-15T05:46:25Z","acceptMappedClaims":null,"addIns":[],"appId":"f5940c98-bc98-4da0-9444-8005b9aa6130","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-45-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-45-20","identifierUris":["http://cli_test_sp_with_kv_new_certaiey7wdvcamldqnrtjhh2wsqoweg2e27bltnj6sh5dsgcyi"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"6C45708C6C32D1AF0A3E36F7F35FDF525B6459D6","endDate":"2019-08-15T05:45:56.209122Z","keyId":"649588af-fde5-432d-b472-9898f3fc3b14","startDate":"2018-08-15T05:45:56.209122Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-45-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-45-20","id":"ec5a69e7-eb5f-4aa5-9068-55716125cc30","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-45-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-45-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a825c7b3-f8cc-4a6b-be92-81183cab60c0","deletionTimestamp":"2018-08-06T11:49:54Z","acceptMappedClaims":null,"addIns":[],"appId":"2fc8c14e-5ae2-4fcb-afce-b69b33a739e7","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappdb0487816","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappdb0487816","identifierUris":["http://easycreate.azure.com/javasdkappdb0487816"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-10-25T11:49:51.7888718Z","keyId":"6c4af6a4-062a-41f7-abec-d545d8956aa6","startDate":"2018-08-06T11:49:51.7888718Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-14T11:49:51.7836562Z","keyId":"13c357c0-d4d9-4c91-a330-a673908f46ec","startDate":"2018-08-06T11:49:51.7836562Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappdb0487816 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappdb0487816","id":"64591966-c157-4402-8b0f-32a8fc9f71b8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappdb0487816 on your behalf.","userConsentDisplayName":"Access + javasdkappdb0487816","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappdb0487816"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a8460149-6ad3-4a79-8b3f-e8fd5a52207e","deletionTimestamp":"2018-08-02T05:34:22Z","acceptMappedClaims":null,"addIns":[],"appId":"0aab9256-f7e8-44c4-98d6-9fbce1958fd0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-33-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-33-25","identifierUris":["http://cli_test_sp_with_kv_new_certrwf4yoptjw2nqsmsoyqzq4hldns4ikg2pvgp2lf7idwakbe"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"DDF98E7E5FE09ABC61F8939C11E2F76E571DFA58","endDate":"2019-08-02T05:34:03.133939Z","keyId":"16aa1db8-349d-4990-8c6c-e37a95067ebe","startDate":"2018-08-02T05:34:03.133939Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-33-25","id":"fafab041-09aa-4a50-86d0-311e90a0a373","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-33-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a85af3af-b6c3-4dee-aaba-6c87699c81c3","deletionTimestamp":"2018-08-17T05:31:32Z","acceptMappedClaims":null,"addIns":[],"appId":"98be2c53-4702-4ae6-b4a5-249c16d4799b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-31-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-31-25","identifierUris":["http://clisp-test-vo2nusrht"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-31-25","id":"adb21508-2b3e-4801-886e-107dfed794fd","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-31-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:31:29.863597Z","keyId":"40dcf544-a6d5-49ab-9fe7-4df3f868217a","startDate":"2018-08-17T05:31:29.863597Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a882dad9-e1b5-4009-8b1d-70790067b05d","deletionTimestamp":"2018-08-14T05:36:45Z","acceptMappedClaims":null,"addIns":[],"appId":"121065f8-961d-40c7-9dbb-cdea88e87b28","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-36-30","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-36-30","identifierUris":["http://cli_test_sp_with_kv_existing_certwnipj2pgy4mufny22t6rug2suegv6pympolwlhucgf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"A6F78885E513C1AC7D3712A55530AE7D73E99AEE","endDate":"2019-08-14T05:36:44.220509Z","keyId":"82c3cd40-8bf7-4a50-a5f6-bfe6e9dc9798","startDate":"2018-08-14T05:36:44.220509Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-36-30 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-36-30","id":"d623f027-4827-4991-9cf6-df4cb941e403","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-36-30 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-36-30","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"a9a99e6c-5c80-4272-a3ff-e02361966ad5","deletionTimestamp":"2018-08-10T05:38:18Z","acceptMappedClaims":null,"addIns":[],"appId":"db47f30d-5f38-4778-a0d1-3aac51b39696","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-37-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-37-54","identifierUris":["http://cli_create_rbac_sp_with_certydn737surxsfo63h62pl3qdd2ngzs7r6sjp4yx3hjc46l3f"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"EFBAC425B536EED1F9C90B2DF78737AF90C4A52E","endDate":"2019-08-10T05:38:12.708353Z","keyId":"d23a1f71-7267-4576-852f-d73f0885967c","startDate":"2018-08-10T05:38:12.708353Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-37-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-37-54","id":"033ac2d1-ba43-43c7-8a42-744688c768cf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-37-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-37-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"aa6e8870-c2c0-4ce1-bb4d-760fbf0ebbd2","deletionTimestamp":"2018-08-28T10:35:43Z","acceptMappedClaims":null,"addIns":[],"appId":"812fbba7-5c36-4c31-8ef2-359de1bfa17c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-10-35-18","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-10-35-18","identifierUris":["http://clitestu6hr4tchog"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-18 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-10-35-18","id":"58934b43-a167-4f83-b481-b0f615f1237e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-18 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-10-35-18","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T10:35:18.745205Z","keyId":"6c08e5d9-3f16-41c8-9d68-1929919f7f70","startDate":"2018-08-28T10:35:18.745205Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ab141cb7-6783-492a-8fa6-c4992e4a2213","deletionTimestamp":"2018-08-28T11:02:41Z","acceptMappedClaims":null,"addIns":[],"appId":"5f5b3b96-f6b7-4004-a5bb-4c42920b1808","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-11-02-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-11-02-20","identifierUris":["http://cli_test_sp_with_kv_existing_certje3k6rpn7bt5laoc37au4eeooptyfzkwwdig4yi4l7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"4E5FF41C00D82919CC979BA27AFB85527105275D","endDate":"2019-08-28T11:02:40.468542Z","keyId":"0497ca1f-7485-4416-b097-11974e56d401","startDate":"2018-08-28T11:02:40.468542Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-02-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-11-02-20","id":"3e8cfb31-04dd-45da-af9e-837964f5499a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-11-02-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-11-02-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ab46281d-f5b6-4033-88d6-ccda890075ed","deletionTimestamp":"2018-08-21T05:21:46Z","acceptMappedClaims":null,"addIns":[],"appId":"87aca13d-1db4-467b-b2ed-07dedb9e8973","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-07-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-07-33","identifierUris":["http://clitestqc2cd7u6cu"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-07-33","id":"9c5585a1-f8b1-4f12-85b8-3cb59ee417d3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-07-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:07:33.20207Z","keyId":"787ebbc4-6ec3-4dd9-902d-8a5e68c2cfe7","startDate":"2018-08-21T05:07:33.20207Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ab8a92a2-d9b3-4fcf-bf73-5006ac5d1af0","deletionTimestamp":"2018-08-28T10:51:08Z","acceptMappedClaims":null,"addIns":[],"appId":"7add94e0-7450-4f2c-a586-f8afa3fd428c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-10-35-19","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-10-35-19","identifierUris":["http://clitestahvy5sgxd4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-19 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-10-35-19","id":"f591b442-c945-437e-8daf-a7d39f7d873f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-19 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-10-35-19","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T10:35:19.633697Z","keyId":"ed57530c-1bf9-4a46-b20e-54909f06f3df","startDate":"2018-08-28T10:35:19.633697Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ac22ae8f-07db-4ad9-a1c3-c39f68865f83","deletionTimestamp":"2018-08-16T11:09:06Z","acceptMappedClaims":null,"addIns":[],"appId":"b8ef9612-58d4-42db-89cc-fca1617db8d2","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp2f599677b","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp2f599677b","identifierUris":["http://easycreate.azure.com/javasdkapp2f599677b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-04T11:09:02.8261464Z","keyId":"3f1c59ad-7031-401c-bea2-2ffbc150a90c","startDate":"2018-08-16T11:09:02.8261464Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-24T11:09:02.334279Z","keyId":"6cc84a2b-27c0-4fdc-acdd-f6cf0e0948b6","startDate":"2018-08-16T11:09:02.334279Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp2f599677b on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp2f599677b","id":"331e89f3-d6d2-4ef5-9f74-abc02543a9d4","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp2f599677b on your behalf.","userConsentDisplayName":"Access + javasdkapp2f599677b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp2f599677b"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"acf55e3d-702d-4d6e-9d8b-b9f08ff31aef","deletionTimestamp":"2018-08-16T05:51:38Z","acceptMappedClaims":null,"addIns":[],"appId":"e8868b5a-f882-4218-b805-16700bceab05","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-51-23","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-51-23","identifierUris":["http://cli_test_sp_with_kv_existing_certnxdgv2ygy2ficq4vfwiypm4d3lqlba6ytpqg2ks4yj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"3F004A6269EB733FEA456A14BC2CD6164DBC0E88","endDate":"2019-08-16T05:51:37.218116Z","keyId":"291e0c1b-c85a-4866-8e8a-79c7a4fa3415","startDate":"2018-08-16T05:51:37.218116Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-51-23 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-51-23","id":"b7ee8be6-ef0a-4eda-82a1-1196af76313a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-51-23 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-51-23","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ad0edea0-70ae-4cad-86c7-f8923647112c","deletionTimestamp":"2018-08-08T14:53:16Z","acceptMappedClaims":null,"addIns":[],"appId":"e33e3f7c-2b8d-4ff7-9ba3-4814f1fe2a27","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp110766202891d","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp110766202891d","identifierUris":["http://easycreate.azure.com/ssp110766202891d"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp110766202891d on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp110766202891d","id":"31100547-b281-4253-93bc-2da0c953fba2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp110766202891d on your behalf.","userConsentDisplayName":"Access + ssp110766202891d","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp110766202891d"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ae0c13fc-25f2-4874-bf68-070401a0aca2","deletionTimestamp":"2018-08-25T09:07:31Z","acceptMappedClaims":null,"addIns":[],"appId":"d8e5f1cc-099a-4166-8f06-f49fe68a023b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-09-07-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-09-07-25","identifierUris":["http://cli_test_sp_with_kv_existing_cert2yiqte3ntu7ocgsl2336fncnsua62fty4owe2t4z4e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"C389C5F9B5FA4EB621147E4941952E2EB979F4EE","endDate":"2019-08-25T09:07:30.269011Z","keyId":"332f30da-93cc-4258-8ab1-a5cf19b38672","startDate":"2018-08-25T09:07:30.269011Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-07-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-09-07-25","id":"140ff847-1b19-48ed-bcb8-adf36f1adf28","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-07-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-09-07-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"af7e5b84-2e3f-4673-ab95-f02dca6f28e6","deletionTimestamp":"2018-08-07T05:09:38Z","acceptMappedClaims":null,"addIns":[],"appId":"20f8acb3-fefa-4baa-b1ef-d2bf55f3a4eb","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rg5aggmy5fqrt5i45edsl6vkn6oqkllepky4d43cr6fcls46xhxw2jiybvfwbg4h7oy","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rg5aggmy5fqrt5i45edsl6vkn6oqkllepky4d43cr6fcls46xhxw2jiybvfwbg4h7oy","identifierUris":["http://clitest.rg5aggmy5fqrt5i45edsl6vkn6oqkllepky4d43cr6fcls46xhxw2jiybvfwbg4h7oy"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rg5aggmy5fqrt5i45edsl6vkn6oqkllepky4d43cr6fcls46xhxw2jiybvfwbg4h7oy + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rg5aggmy5fqrt5i45edsl6vkn6oqkllepky4d43cr6fcls46xhxw2jiybvfwbg4h7oy","id":"bf116af9-ea27-473c-8787-de8ffdd08096","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rg5aggmy5fqrt5i45edsl6vkn6oqkllepky4d43cr6fcls46xhxw2jiybvfwbg4h7oy + on your behalf.","userConsentDisplayName":"Access clitest.rg5aggmy5fqrt5i45edsl6vkn6oqkllepky4d43cr6fcls46xhxw2jiybvfwbg4h7oy","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:09:35.971163Z","keyId":"7c569ad5-2bdb-47ee-911c-94f3b8818638","startDate":"2018-08-07T05:09:35.971163Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-07T05:09:14.132557Z","keyId":"254477ea-fbef-474d-8470-9f7ca0f231d7","startDate":"2018-08-07T05:09:14.132557Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b03cd0d6-e4e8-45aa-a774-b61d7e40ea98","deletionTimestamp":"2018-08-18T05:34:07Z","acceptMappedClaims":null,"addIns":[],"appId":"a88d00d3-e9bf-42e6-8788-2ccc0d849078","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-33-46","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-33-46","identifierUris":["http://cli_test_sp_with_kv_existing_certmocg7wqv6xusvzqp33nhnf545zcbfxay4t7qqoljis2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"840EFB8586B92DCA8B2702D3D6EFB8D33D1981D2","endDate":"2019-02-18T05:33:36Z","keyId":"204ce100-fb41-4f53-be79-4139aa16be57","startDate":"2018-08-18T05:34:05.377964Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-33-46 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-33-46","id":"a3422069-8c51-4e8b-a701-9d9562e473ee","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-33-46 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-33-46","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b0d4af77-728b-4f31-90f7-e4ca26be3cf9","deletionTimestamp":"2018-08-18T05:08:27Z","acceptMappedClaims":null,"addIns":[],"appId":"9b7f8b0d-1e14-48af-b0a1-406429698b13","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-07-36","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-07-36","identifierUris":["http://clitestlrs3fdcdht"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-36 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-07-36","id":"093634d7-799d-4344-90d6-cb341d74b62e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-36 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-07-36","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:07:36.43886Z","keyId":"2e628a28-119c-47c5-ba6d-6f41b78099f6","startDate":"2018-08-18T05:07:36.43886Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b26f57be-2979-4092-9620-ad2af9d19b64","deletionTimestamp":"2018-08-23T05:32:37Z","acceptMappedClaims":null,"addIns":[],"appId":"ee1b4c17-a930-4e69-9e7d-dcf0db0feda2","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphvqcvw","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphvqcvw","identifierUris":["http://cli-graphvqcvw"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphvqcvw on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphvqcvw","id":"4b28b1d3-ec1f-43fe-8dd5-30dc536348da","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphvqcvw on your behalf.","userConsentDisplayName":"Access + cli-graphvqcvw","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b2edfa0a-39d3-4f7d-a1ed-aa02692443e4","deletionTimestamp":"2018-08-21T05:32:54Z","acceptMappedClaims":null,"addIns":[],"appId":"b07b2ff4-7f02-40e1-943f-3d86f1db8890","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-32-37","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-32-37","identifierUris":["http://cli_create_rbac_sp_with_certnf7rhpu37uo2epeiizqmerxnpvyfgxveaedqc5reid7lixs"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"E165D59C78FC16FDD3C2BF96B6445A0E3D489508","endDate":"2019-08-21T05:32:52.483811Z","keyId":"73059d0f-b2aa-4564-93b5-edfc40570767","startDate":"2018-08-21T05:32:52.483811Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-32-37 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-32-37","id":"9d81291f-649d-461b-9f25-97ab6a2b0f0e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-32-37 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-32-37","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b3d21230-0a80-4388-9e4e-2594ce67a823","deletionTimestamp":"2018-08-08T05:44:48Z","acceptMappedClaims":null,"addIns":[],"appId":"83ab7a6b-8785-4e7c-a0da-78e0070f3e38","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-znyonexj7","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-znyonexj7 on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-znyonexj7","id":"6bdf8055-dfa5-4669-851f-002c0f79d25a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-znyonexj7 on your behalf.","userConsentDisplayName":"Access + cli-native-znyonexj7","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b3f2846b-73db-43ef-9b8b-52b193fadea6","deletionTimestamp":"2018-08-17T05:33:42Z","acceptMappedClaims":null,"addIns":[],"appId":"cb6ca54d-d11c-4ad2-81a2-deccb71778ad","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-33-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-33-27","identifierUris":["http://cli_test_sp_with_kv_existing_certgnhpurttdstha6nzpugsltkz7x2tehchiaoxqhoxwz2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"3E9B30A6FA085160BC4F7E65FF925404F1E76494","endDate":"2019-02-17T05:33:25Z","keyId":"f56174c3-8825-4c11-8f56-a329b86de9d7","startDate":"2018-08-17T05:33:40.437255Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-33-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-33-27","id":"a56f23c0-3234-45fc-8203-5c5e6b2efd1b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-33-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-33-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b4effa29-c153-440a-a303-2633cabbabdc","deletionTimestamp":"2018-08-08T05:17:25Z","acceptMappedClaims":null,"addIns":[],"appId":"cc265bc2-8e54-4ceb-8e2d-4dd9c43abaa1","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgrppo5orbwvobl7buguqui7bcdleeuvkrc3pegsg4zuycs7juza3hqh5mibuol5667","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgrppo5orbwvobl7buguqui7bcdleeuvkrc3pegsg4zuycs7juza3hqh5mibuol5667","identifierUris":["http://clitest.rgrppo5orbwvobl7buguqui7bcdleeuvkrc3pegsg4zuycs7juza3hqh5mibuol5667"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgrppo5orbwvobl7buguqui7bcdleeuvkrc3pegsg4zuycs7juza3hqh5mibuol5667 + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgrppo5orbwvobl7buguqui7bcdleeuvkrc3pegsg4zuycs7juza3hqh5mibuol5667","id":"2bd52ee9-b3f5-46c8-a50d-23ab67c18ddf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgrppo5orbwvobl7buguqui7bcdleeuvkrc3pegsg4zuycs7juza3hqh5mibuol5667 + on your behalf.","userConsentDisplayName":"Access clitest.rgrppo5orbwvobl7buguqui7bcdleeuvkrc3pegsg4zuycs7juza3hqh5mibuol5667","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:17:21.957756Z","keyId":"70631ba7-105b-459f-b304-c0a4d6c4c397","startDate":"2018-08-08T05:17:21.957756Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-08T05:16:59.665884Z","keyId":"61414b60-fa22-4f53-a610-cf58fd5b9f79","startDate":"2018-08-08T05:16:59.665884Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b55ac0f8-e145-4ae9-9940-5896f2a4a932","deletionTimestamp":"2018-08-29T16:02:40Z","acceptMappedClaims":null,"addIns":[],"appId":"6b8142ea-5de6-406b-9806-07fdc2c1c8d1","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-16-02-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-16-02-31","identifierUris":["http://cli_test_sp_with_kv_existing_cert34gwgjgrm3a4vxlgkcrfbt3qpsf363eof5migy22cg2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"36273EC3D7D025C123323EB6410C07D2ADBB3290","endDate":"2019-02-28T16:02:27Z","keyId":"c679986b-c7b9-401a-a91a-ccb9a81f8098","startDate":"2018-08-29T16:02:37.617818Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-02-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-16-02-31","id":"e65eb53b-e45e-4342-8f05-5f37114069b2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-02-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-16-02-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b5d35e42-16b4-4998-a2fa-62dd34cc2d6c","deletionTimestamp":"2018-08-28T11:01:21Z","acceptMappedClaims":null,"addIns":[],"appId":"6b367a71-f3b3-4ebc-9ae2-80782fac82d6","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-daufmfy5b","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-daufmfy5b on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-daufmfy5b","id":"a17df340-9a51-4443-bf41-e87e7dcfcb62","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-daufmfy5b on your behalf.","userConsentDisplayName":"Access + cli-native-daufmfy5b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b5edbc7a-1b87-4112-9043-19209654ce25","deletionTimestamp":"2018-08-24T05:55:20Z","acceptMappedClaims":null,"addIns":[],"appId":"7239efce-8733-4574-8dcd-b6de02c44c6d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-55-12","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-55-12","identifierUris":["http://clisp-test-wdx4d24zr"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-12 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-55-12","id":"60fd0f00-79ca-4e9e-9952-050cca6d9cf8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-12 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-55-12","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:55:17.655055Z","keyId":"ecd90903-f6ed-48ed-8910-f72c785185be","startDate":"2018-08-24T05:55:17.655055Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b7564026-504d-44d0-a3c7-18e3a3c86351","deletionTimestamp":"2018-08-07T05:34:08Z","acceptMappedClaims":null,"addIns":[],"appId":"748f6905-9a55-45fe-b316-275ba712abc6","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-33-49","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-33-49","identifierUris":["http://cli_create_rbac_sp_with_passwordlsnfmapk7vkairzbyvm2yepue6t2db5pfdijwtdjlpl"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-49 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-33-49","id":"9054cfb1-1221-4b04-ac7a-197bf162c53f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-49 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-33-49","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:33:49.672248Z","keyId":"99743e71-4b09-4b08-92be-3ceb69af2cd0","startDate":"2018-08-07T05:33:49.672248Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b7653e15-7374-4201-b20a-0e26f2fa6075","deletionTimestamp":"2018-08-24T05:46:17Z","acceptMappedClaims":null,"addIns":[],"appId":"dca30c63-1a12-4d88-994b-8b7e72a01d3b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-29-57","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-29-57","identifierUris":["http://clitestdojiz7vryn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-57 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-29-57","id":"8fdfa63a-7d02-4094-af93-dbac3f464247","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-57 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-29-57","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:29:57.099389Z","keyId":"7184d6bd-36ba-418b-966e-70176a98ded8","startDate":"2018-08-24T05:29:57.099389Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b87bc961-ae8a-4ab3-bafc-955cdcb023a7","deletionTimestamp":"2018-08-09T14:40:57Z","acceptMappedClaims":null,"addIns":[],"appId":"bb2035cc-085b-4c70-a996-afb827c19576","appRoles":[],"availableToOtherTenants":false,"displayName":"sspc8067920bbf1b","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/sspc8067920bbf1b","identifierUris":["http://easycreate.azure.com/sspc8067920bbf1b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access sspc8067920bbf1b on behalf of the signed-in user.","adminConsentDisplayName":"Access + sspc8067920bbf1b","id":"2040c5d4-46d9-4baa-9318-1c3219a51c64","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access sspc8067920bbf1b on your behalf.","userConsentDisplayName":"Access + sspc8067920bbf1b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/sspc8067920bbf1b"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b8b0a6b0-425a-4522-86eb-6630107b9d79","deletionTimestamp":"2018-08-15T15:03:12Z","acceptMappedClaims":null,"addIns":[],"appId":"d9d869fe-6cbb-43fe-8f2e-89ea41e3103a","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp86785336d4c38","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp86785336d4c38","identifierUris":["http://easycreate.azure.com/ssp86785336d4c38"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp86785336d4c38 on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp86785336d4c38","id":"bd76dd1d-e4b3-4038-946e-8a89b1222bf7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp86785336d4c38 on your behalf.","userConsentDisplayName":"Access + ssp86785336d4c38","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp86785336d4c38"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b9f1bd63-8a1f-4cf2-9e3e-0d2259713a1b","deletionTimestamp":"2018-08-18T05:07:40Z","acceptMappedClaims":null,"addIns":[],"appId":"530a3550-9767-432f-9890-b3bc3cdbda8b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-07-36","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-07-36","identifierUris":["http://clitestrvtdk62xan"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-36 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-07-36","id":"8532539f-ce28-45d4-83fc-e72aef1c0344","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-07-36 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-07-36","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:07:36.579434Z","keyId":"7880fc8f-735d-43e3-8973-cdb613280908","startDate":"2018-08-18T05:07:36.579434Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ba220ec7-3ad9-4cb1-a14b-435ee2e14364","deletionTimestamp":"2018-08-10T05:48:14Z","acceptMappedClaims":null,"addIns":[],"appId":"58b32987-8ed9-42b2-a144-fa581c29bcc3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-11-44","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-11-44","identifierUris":["http://clitesthhouudg3z3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-44 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-11-44","id":"2403d00b-9627-483c-a009-e9a66a5b4f8e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-44 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-11-44","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:11:44.016616Z","keyId":"a29aca03-4136-4097-8d25-5082d09e4374","startDate":"2018-08-10T05:11:44.016616Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ba3a1b65-23fb-4b5c-bee0-8cb895896ec6","deletionTimestamp":"2018-08-08T05:41:08Z","acceptMappedClaims":null,"addIns":[],"appId":"ac05179a-018a-42ed-a78f-167d80d420f7","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-16-13","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-16-13","identifierUris":["http://clitest3au5m26f3d"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-13 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-16-13","id":"000b3adf-3678-416d-8004-84ddaa9d8d84","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-13 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-16-13","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:16:13.49044Z","keyId":"d9534445-827e-4b2a-8fb7-7dbffd6cb22a","startDate":"2018-08-08T05:16:13.49044Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ba43f373-9725-4fc1-99a9-b51e0f6b6809","deletionTimestamp":"2018-08-13T11:05:27Z","acceptMappedClaims":null,"addIns":[],"appId":"fc7c2fe0-2863-484b-97d0-62712cdf60ac","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappe8b67664e","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappe8b67664e","identifierUris":["http://easycreate.azure.com/javasdkappe8b67664e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-01T11:05:25.1756555Z","keyId":"df39930c-3f2c-4855-9a1e-c571a1412add","startDate":"2018-08-13T11:05:25.1756555Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-21T11:05:25.1700158Z","keyId":"08772824-9de3-4eb5-abdf-aac2ce24e4c2","startDate":"2018-08-13T11:05:25.1700158Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappe8b67664e on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappe8b67664e","id":"59d14e87-8ec3-4e16-a55f-e3c44a95b012","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappe8b67664e on your behalf.","userConsentDisplayName":"Access + javasdkappe8b67664e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappe8b67664e"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bacaddf1-aefe-4b3d-bf74-36930bad5c9a","deletionTimestamp":"2018-08-15T05:21:43Z","acceptMappedClaims":null,"addIns":[],"appId":"202ee919-7d11-49d4-8872-819042b468fa","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgp2wmrzrcmulsis6a42ldacjzcpjbhlzlykeoruypqwivf66o42txrkc62hmonwcon","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgp2wmrzrcmulsis6a42ldacjzcpjbhlzlykeoruypqwivf66o42txrkc62hmonwcon","identifierUris":["http://clitest.rgp2wmrzrcmulsis6a42ldacjzcpjbhlzlykeoruypqwivf66o42txrkc62hmonwcon"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgp2wmrzrcmulsis6a42ldacjzcpjbhlzlykeoruypqwivf66o42txrkc62hmonwcon + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgp2wmrzrcmulsis6a42ldacjzcpjbhlzlykeoruypqwivf66o42txrkc62hmonwcon","id":"7a5c7c97-9b15-4452-b320-89d7d244672d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgp2wmrzrcmulsis6a42ldacjzcpjbhlzlykeoruypqwivf66o42txrkc62hmonwcon + on your behalf.","userConsentDisplayName":"Access clitest.rgp2wmrzrcmulsis6a42ldacjzcpjbhlzlykeoruypqwivf66o42txrkc62hmonwcon","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:21:37.366965Z","keyId":"0a9fbd26-b838-4e14-8362-9f47bda56ec8","startDate":"2018-08-15T05:21:37.366965Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-15T05:21:23.341823Z","keyId":"44213b84-1a19-4236-a44f-78f7ddcdea14","startDate":"2018-08-15T05:21:23.341823Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"baf18980-f86b-485c-80f5-df5905262ea8","deletionTimestamp":"2018-08-09T05:36:26Z","acceptMappedClaims":null,"addIns":[],"appId":"7f54bd51-8fff-4690-9a26-291d0910988c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-36-02","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-36-02","identifierUris":["http://cli_create_rbac_sp_with_certhpvaspokqsiqznnlhqutulutzwo5gdlaehwneequjqqswqu"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"80B62BF7C5FF46895E2D4E2DF5317EF4EC885E7E","endDate":"2019-08-09T05:36:23.359226Z","keyId":"fffb85f5-8714-46c3-af82-860417142114","startDate":"2018-08-09T05:36:23.359226Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-36-02 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-36-02","id":"ef35b610-7ef7-482e-91e1-e1e2bef65bb5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-36-02 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-36-02","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"baf6062a-05cf-4fd2-8252-b0e572a05a24","deletionTimestamp":"2018-08-17T05:31:55Z","acceptMappedClaims":null,"addIns":[],"appId":"8f262240-e0b6-4e36-9273-b85f1ab8ddc3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-31-53","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-31-53","identifierUris":["http://cli_create_rbac_sp_minimalqqngaus63byy4pvcfo7fw7mbraekvqu4tonnbernmg7ofbk6f"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-53 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-31-53","id":"dd1c958c-c777-4919-a5ba-455e627c7da6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-53 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-31-53","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:31:53.591557Z","keyId":"045ce829-8b2c-4e4e-b09f-105a2663c701","startDate":"2018-08-17T05:31:53.591557Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bb912396-fb14-44ac-9a2e-2b50b7b3d591","deletionTimestamp":"2018-08-04T05:34:14Z","acceptMappedClaims":null,"addIns":[],"appId":"bff09bd7-d4cc-44e9-96d7-a9ed16151ddd","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-34-08","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-34-08","identifierUris":["http://cli_create_rbac_sp_minimal5eo4ygu2zxqd7zf6kja6irtjacccalcwjh3zr4fs75aokxmpz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-34-08 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-34-08","id":"d5a47192-0659-4a9a-9add-59576176be96","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-34-08 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-34-08","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:34:08.945449Z","keyId":"101509bc-50df-48ed-920a-382f41406e50","startDate":"2018-08-04T05:34:08.945449Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bbd38f81-378f-4537-b0df-afd6386abed1","deletionTimestamp":"2018-08-17T14:40:51Z","acceptMappedClaims":null,"addIns":[],"appId":"4aa1c910-cc30-4207-a6b4-01e032d76af1","appRoles":[],"availableToOtherTenants":false,"displayName":"sspd8e61691163f9","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/sspd8e61691163f9","identifierUris":["http://easycreate.azure.com/sspd8e61691163f9"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access sspd8e61691163f9 on behalf of the signed-in user.","adminConsentDisplayName":"Access + sspd8e61691163f9","id":"489e362b-62b4-42ff-a6b6-659c466dad24","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access sspd8e61691163f9 on your behalf.","userConsentDisplayName":"Access + sspd8e61691163f9","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/sspd8e61691163f9"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bc6a944c-90da-4647-81e1-16af66c0e140","deletionTimestamp":"2018-08-14T19:47:02Z","acceptMappedClaims":null,"addIns":[],"appId":"78bb5526-df20-4dc0-ba48-c53f37c388bc","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-19-46-47","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-19-46-47","identifierUris":["http://cli_test_sp_with_kv_existing_certqccosykzdtkurhhexlofktkm5lvogwcwy5rw2t2vzl2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"60FDD90F1D09934AE032CEB8C4711BD517913BF5","endDate":"2019-02-14T19:46:38Z","keyId":"d93ea81a-5e11-4648-9c05-68152b8b956d","startDate":"2018-08-14T19:47:00.719094Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-46-47 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-19-46-47","id":"21ea3d9e-fc9a-48bd-95e3-9e3c3dae5de7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-46-47 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-19-46-47","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bc6ba35e-9f69-4bf3-a2f5-8d7d05dd11bf","deletionTimestamp":"2018-08-21T05:07:39Z","acceptMappedClaims":null,"addIns":[],"appId":"39e61346-5010-4ca4-b78e-f94d987d5396","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-07-34","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-07-34","identifierUris":["http://clitestdxfsreh5nh"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-34 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-07-34","id":"1a0f5eb7-7627-4d1a-89a3-364a429adabb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-34 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-07-34","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:07:34.337736Z","keyId":"69636cb0-695c-4fe0-88fb-66123f179e72","startDate":"2018-08-21T05:07:34.337736Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bc987ddd-3801-4c1e-8bf5-63d08faaa301","deletionTimestamp":"2018-08-04T05:43:25Z","acceptMappedClaims":null,"addIns":[],"appId":"e60f1f8a-adea-4174-a137-c890fe8945d2","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-07-49","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-07-49","identifierUris":["http://clitestn6lhnat3go"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-49 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-07-49","id":"dd7c3cfa-bbe8-48a1-8e27-d60548990df8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-07-49 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-07-49","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:07:49.971031Z","keyId":"cc53a26b-cddd-4799-9fb8-f606ba7dd507","startDate":"2018-08-04T05:07:49.971031Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bcc5c660-1b61-4de9-a046-68a89d30dd4e","deletionTimestamp":"2018-08-07T05:34:53Z","acceptMappedClaims":null,"addIns":[],"appId":"194cfa4d-7204-4097-be77-cef506d159de","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-33-43","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-33-43","identifierUris":["http://cli_test_sp_with_kv_new_certco5mgyfzqmyk6omxdczeqzh4unvl4itjzubqas5sbayk2v7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"03C1CF1EF21CF49088FB83A53D5313B85D903806","endDate":"2019-08-07T05:34:13.830185Z","keyId":"4b8f7c3d-42e8-49f4-ae9b-287e2d616115","startDate":"2018-08-07T05:34:13.830185Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-43 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-33-43","id":"7f5bc503-05aa-41ed-89cd-f7fde9ee8499","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-43 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-33-43","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bce1932c-1025-4fa6-9dcf-34d1411f7dd4","deletionTimestamp":"2018-08-17T05:07:41Z","acceptMappedClaims":null,"addIns":[],"appId":"b09ed134-b2ec-439d-9142-b5ad77f2a817","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-07-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-07-27","identifierUris":["http://clitestfhkk7lewqb"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-07-27","id":"1a8ffc39-c4b2-4f1d-a297-2b416bdf1c56","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-07-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:07:27.89257Z","keyId":"d1b031d2-980d-43bd-a923-73c229dbc0ba","startDate":"2018-08-17T05:07:27.89257Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bd51fa9f-82e8-4910-821f-4f052de72a13","deletionTimestamp":"2018-08-31T05:23:56Z","acceptMappedClaims":null,"addIns":[],"appId":"327411f4-1727-4d4f-a9eb-5ec5f250a87a","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp3d0187393","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp3d0187393","identifierUris":["http://easycreate.azure.com/javasdkapp3d0187393"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-12-09T05:23:49.564Z","keyId":"3aed7986-d686-41e6-94b8-474d3944f10a","startDate":"2018-08-31T05:23:49.564Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp3d0187393 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp3d0187393","id":"e43ac0d0-9abf-473e-8cca-c4f85aee2830","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp3d0187393 on your behalf.","userConsentDisplayName":"Access + javasdkapp3d0187393","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp3d0187393"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bdb9e561-0403-4661-a07b-fd0457d8853e","deletionTimestamp":"2018-08-10T14:41:11Z","acceptMappedClaims":null,"addIns":[],"appId":"e1eeaf6d-a0c1-46b0-ac3a-8c18dc322de6","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappbea31251d","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappbea31251d","identifierUris":["http://easycreate.azure.com/javasdkappbea31251d"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-18T14:41:07.7Z","keyId":"11726967-3624-45cf-bc42-fea2096de26f","startDate":"2018-08-10T14:41:07.7Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappbea31251d on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappbea31251d","id":"df890a92-69dc-46e4-93a9-0d636bc54233","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappbea31251d on your behalf.","userConsentDisplayName":"Access + javasdkappbea31251d","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappbea31251d"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bdc5321c-1c8a-4334-a4e1-7979c5fd5f55","deletionTimestamp":"2018-08-16T05:40:34Z","acceptMappedClaims":null,"addIns":[],"appId":"4990de16-9d55-4273-a229-d4ad2ba5b4d3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-26-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-26-31","identifierUris":["http://clitestr2ztah2jfy"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-26-31","id":"56ad3db6-97b9-4fe3-a799-ed717633e314","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-26-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:26:31.759773Z","keyId":"1e488098-6f2a-44a4-836f-dc3b26d13a6a","startDate":"2018-08-16T05:26:31.759773Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"be17d587-b435-404b-bceb-28cc1bde6912","deletionTimestamp":"2018-08-10T05:12:33Z","acceptMappedClaims":null,"addIns":[],"appId":"dbf30090-78f6-4ba3-b02d-f05b7c423289","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rg5vmirfbhxlduho7vva7fhhvmhqoymlvx7kwqfjdpceyd3z5eh5a2wakk5ynom7vsp","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rg5vmirfbhxlduho7vva7fhhvmhqoymlvx7kwqfjdpceyd3z5eh5a2wakk5ynom7vsp","identifierUris":["http://clitest.rg5vmirfbhxlduho7vva7fhhvmhqoymlvx7kwqfjdpceyd3z5eh5a2wakk5ynom7vsp"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rg5vmirfbhxlduho7vva7fhhvmhqoymlvx7kwqfjdpceyd3z5eh5a2wakk5ynom7vsp + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rg5vmirfbhxlduho7vva7fhhvmhqoymlvx7kwqfjdpceyd3z5eh5a2wakk5ynom7vsp","id":"894755a0-c587-4467-bdc0-f8058b20d6b5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rg5vmirfbhxlduho7vva7fhhvmhqoymlvx7kwqfjdpceyd3z5eh5a2wakk5ynom7vsp + on your behalf.","userConsentDisplayName":"Access clitest.rg5vmirfbhxlduho7vva7fhhvmhqoymlvx7kwqfjdpceyd3z5eh5a2wakk5ynom7vsp","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:12:25.963537Z","keyId":"4cfc225d-5fd1-4ada-890b-427d41549d5a","startDate":"2018-08-10T05:12:25.963537Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-10T05:12:18.20612Z","keyId":"3af9d874-0781-41d2-b4d5-20e035e35f76","startDate":"2018-08-10T05:12:18.20612Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"be5abaca-14c1-4d40-97ef-fa657bb12bf2","deletionTimestamp":"2018-08-17T05:31:21Z","acceptMappedClaims":null,"addIns":[],"appId":"35614ac1-e4c9-449f-a168-bc4788b2977a","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphoamw5","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphoamw5","identifierUris":["http://cli-graphoamw5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphoamw5 on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphoamw5","id":"9ea66410-c48b-4a1b-a667-bb41f6dc67ad","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphoamw5 on your behalf.","userConsentDisplayName":"Access + cli-graphoamw5","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"be6a2d72-0ad6-4909-9149-dd8be50bb303","deletionTimestamp":"2018-08-07T05:34:19Z","acceptMappedClaims":null,"addIns":[],"appId":"2d81ea1c-6fff-4f5c-b509-36d6bcd5605a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-34-10","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-34-10","identifierUris":["http://cli_test_sp_with_kv_existing_certjsgmkt5qmvnccqt2zind7n2dx72pc7ywqtdmkdt4oc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"111A6511E27475EDDF7FDB879681194031F6144D","endDate":"2019-08-07T05:34:17.122599Z","keyId":"042567a6-4f72-41ee-b6ba-b3688077d1dd","startDate":"2018-08-07T05:34:17.122599Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-34-10 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-34-10","id":"4ab55cca-dca0-4904-b5dd-1e9a7caab3ff","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-34-10 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-34-10","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bee22e6a-8929-4ecc-8464-d9f040b09ff3","deletionTimestamp":"2018-08-14T05:08:44Z","acceptMappedClaims":null,"addIns":[],"appId":"54b7af42-4a5f-468f-9f1f-26f6c6ae408c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-07-26","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-07-26","identifierUris":["http://clitestaechxhxvvz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-26 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-07-26","id":"649897b5-596e-4a82-94f7-92a4204ea458","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-07-26 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-07-26","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:07:26.427278Z","keyId":"dc5b7458-ffd1-4f24-96a5-6f9fd4932772","startDate":"2018-08-14T05:07:26.427278Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bf65c771-e7d2-4866-bc57-0a7d4ba0db82","deletionTimestamp":"2018-08-09T05:35:46Z","acceptMappedClaims":null,"addIns":[],"appId":"cf52f9ab-93ac-4751-9aac-f5765c31024f","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphganlv","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphganlv","identifierUris":["http://cli-graphganlv"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphganlv on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphganlv","id":"d202a7c0-f104-4a1f-86dd-8c8c854d05bf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphganlv on your behalf.","userConsentDisplayName":"Access + cli-graphganlv","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"bfdbf27a-1348-4d9c-83b2-0b2de3224434","deletionTimestamp":"2018-08-02T05:33:25Z","acceptMappedClaims":null,"addIns":[],"appId":"b0b9bc6f-7dbd-4ebd-a63c-d3837f390c81","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-33-02","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-33-02","identifierUris":["http://cli_create_rbac_sp_with_certled7sah6jl6u7emgzkhgclma4clpgiuqfj76bhkoezk4maf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"1065F61D0BE7C39826DF092730C5524B1F1B2A7E","endDate":"2019-08-02T05:33:24.309932Z","keyId":"a68bfd8d-9fbf-4ac4-ab6b-fc878ac8b53d","startDate":"2018-08-02T05:33:24.309932Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-02 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-33-02","id":"74a04dd0-9aa0-4e4f-bd9d-9bc60a440ff1","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-33-02 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-33-02","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c0a5941d-0e0c-4002-8ba0-ca20fbb7e9d0","deletionTimestamp":"2018-08-17T05:31:44Z","acceptMappedClaims":null,"addIns":[],"appId":"de6ee44f-52fd-4ff3-ae2d-f7979aded1c7","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-31-16","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-31-16","identifierUris":["http://cli-graphcpzle"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-16 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-31-16","id":"b4b892ae-f003-49ff-95d3-b5808de93950","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-31-16 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-31-16","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:31:16.459352Z","keyId":"80fe9a82-7bbd-4984-9855-09a2cafea51d","startDate":"2018-08-17T05:31:16.459352Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c0e65bc9-0aab-49d4-8b73-112414a783c1","deletionTimestamp":"2018-08-02T11:29:34Z","acceptMappedClaims":null,"addIns":[],"appId":"4ad74dec-10be-42d8-b2de-cad64fcb51d8","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp68058626b","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp68058626b","identifierUris":["http://easycreate.azure.com/javasdkapp68058626b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-10-21T11:29:30.1592507Z","keyId":"e5021f4a-8ff9-4216-9dc0-80ffb87499e3","startDate":"2018-08-02T11:29:30.1592507Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-10T11:29:30.1501272Z","keyId":"f3ca0b6e-81af-426c-beae-16641023882a","startDate":"2018-08-02T11:29:30.1501272Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp68058626b on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp68058626b","id":"dfa58573-8607-461b-b14d-0216207e514c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp68058626b on your behalf.","userConsentDisplayName":"Access + javasdkapp68058626b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp68058626b"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c15642c1-6eb5-4417-b72c-93e9b47ddb3d","deletionTimestamp":"2018-08-23T05:07:35Z","acceptMappedClaims":null,"addIns":[],"appId":"07fb4abb-3c27-47ba-b9f2-fa2bee4cd7fc","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-07-24","identifierUris":["http://clitestglxkwitg7j"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-07-24","id":"b41bd9c5-838b-4380-8fb6-31b3bf300f67","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:07:24.999764Z","keyId":"477bfe4f-296c-4912-8153-ff77594bd084","startDate":"2018-08-23T05:07:24.999764Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c162ddbd-8676-4834-8202-35064b0f8092","deletionTimestamp":"2018-08-07T05:33:24Z","acceptMappedClaims":null,"addIns":[],"appId":"c7f55601-e2bb-485b-a938-9e0398400241","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-33-16","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-33-16","identifierUris":["http://clisp-test-tnzczuypn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-16 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-33-16","id":"34cd865b-0459-4cac-8cab-a4deca7fcdec","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-16 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-33-16","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:33:21.511232Z","keyId":"b8b7463f-e9c6-4a38-b445-67d4b179a288","startDate":"2018-08-07T05:33:21.511232Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c1e5246c-4340-4f1b-ad63-526602cee746","deletionTimestamp":"2018-08-29T16:00:45Z","acceptMappedClaims":null,"addIns":[],"appId":"43af0cca-3f38-42c0-9fbc-a4ef857de783","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-d7a7vciqw","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-d7a7vciqw on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-d7a7vciqw","id":"5630d25b-e0e1-441c-bfe2-5e4940bb9736","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-d7a7vciqw on your behalf.","userConsentDisplayName":"Access + cli-native-d7a7vciqw","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c263f452-318b-4405-8af8-8b8adbcabb42","deletionTimestamp":"2018-08-24T05:55:17Z","acceptMappedClaims":null,"addIns":[],"appId":"9fedc91b-7a53-4865-8059-ccdd4d353ba6","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-2jfmiwsdx","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-2jfmiwsdx on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-2jfmiwsdx","id":"4f9f9fae-0cd3-48f5-b5b7-0d28b78b87cd","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-2jfmiwsdx on your behalf.","userConsentDisplayName":"Access + cli-native-2jfmiwsdx","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c2b1e8f4-1fda-4bed-b924-f3f54e176f68","deletionTimestamp":"2018-08-04T05:08:48Z","acceptMappedClaims":null,"addIns":[],"appId":"52dd33b7-0ad5-410b-8ada-acb8c1ffdf7c","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rg632fe2ahs5dhftznwql46ikynoyuosizgaf5q5qpur5dr3yh656mqlzwzg3c2cewk","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rg632fe2ahs5dhftznwql46ikynoyuosizgaf5q5qpur5dr3yh656mqlzwzg3c2cewk","identifierUris":["http://clitest.rg632fe2ahs5dhftznwql46ikynoyuosizgaf5q5qpur5dr3yh656mqlzwzg3c2cewk"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rg632fe2ahs5dhftznwql46ikynoyuosizgaf5q5qpur5dr3yh656mqlzwzg3c2cewk + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rg632fe2ahs5dhftznwql46ikynoyuosizgaf5q5qpur5dr3yh656mqlzwzg3c2cewk","id":"41ef13fd-d82d-483c-80b5-2d5d42961a13","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rg632fe2ahs5dhftznwql46ikynoyuosizgaf5q5qpur5dr3yh656mqlzwzg3c2cewk + on your behalf.","userConsentDisplayName":"Access clitest.rg632fe2ahs5dhftznwql46ikynoyuosizgaf5q5qpur5dr3yh656mqlzwzg3c2cewk","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-04T05:08:40.174693Z","keyId":"90dc7cef-23c6-4ccc-9095-76c1134b4218","startDate":"2018-08-04T05:08:40.174693Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-04T05:08:20.079488Z","keyId":"b9c7e74f-7f8b-40f9-b0f4-d28a3749e8d0","startDate":"2018-08-04T05:08:20.079488Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c3048b0f-c8f1-495a-a263-051a0b169bae","deletionTimestamp":"2018-08-22T05:32:06Z","acceptMappedClaims":null,"addIns":[],"appId":"6eb79126-7d1f-4117-b825-0fd313260bfd","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-31-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-31-54","identifierUris":["http://clisp-test-evte4hjfg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-31-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-31-54","id":"fe1c0175-a483-489c-a6b4-4b30115a8905","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-31-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-31-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:32:00.230974Z","keyId":"c9344967-77f6-4478-aac2-660b3792ab66","startDate":"2018-08-22T05:32:00.230974Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c4cdd8d8-a7e2-44c6-85fc-f082d16a4432","deletionTimestamp":"2018-08-31T19:50:20Z","acceptMappedClaims":null,"addIns":[],"appId":"6343b53e-5851-461c-944d-c30b0168b361","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"53785f8a-3f78-4b50-963f-21667e2feec9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c50ad57a-8463-47a7-ad1c-a6392a7a3a19","deletionTimestamp":"2018-08-08T05:16:46Z","acceptMappedClaims":null,"addIns":[],"appId":"ec4f699f-5e27-4e3a-adc4-c46066e9a49e","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-16-11","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-16-11","identifierUris":["http://clitestwsjsc5sgua"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-11 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-16-11","id":"6c8d32df-7277-4c07-bf01-b942b6a2c6a5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-11 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-16-11","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:16:11.207153Z","keyId":"9e4068a7-95ac-436f-8c77-47e70c501122","startDate":"2018-08-08T05:16:11.207153Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c5b938b3-b808-44ab-aaec-896d2f7b8470","deletionTimestamp":"2018-08-29T15:44:08Z","acceptMappedClaims":null,"addIns":[],"appId":"784acd00-cf78-4d94-8927-da1d820abc32","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-15-30-07","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-15-30-07","identifierUris":["http://clitesthirk4mvmkg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-07 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-15-30-07","id":"e1f6da70-83bb-4ae4-a429-4c6f8041078e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-07 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-15-30-07","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:07.263281Z","keyId":"a4a6f971-15a5-4a20-8f20-10d5a02fc1a8","startDate":"2018-08-29T15:30:07.263281Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c777faaa-e73d-4a23-a1a8-080255360927","deletionTimestamp":"2018-08-17T11:04:19Z","acceptMappedClaims":null,"addIns":[],"appId":"1f41ed30-76c3-40de-b832-324514b6d85b","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappe9027128b","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappe9027128b","identifierUris":["http://easycreate.azure.com/javasdkappe9027128b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-05T11:04:16.425343Z","keyId":"13fdb4e2-4c63-4a66-85e4-7a1053b3ff33","startDate":"2018-08-17T11:04:16.425343Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-25T11:04:16.41208Z","keyId":"92be0ffb-ad66-448d-812a-9c711fba6327","startDate":"2018-08-17T11:04:16.41208Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappe9027128b on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappe9027128b","id":"490d4490-484f-4197-9761-7c702d0a856f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappe9027128b on your behalf.","userConsentDisplayName":"Access + javasdkappe9027128b","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappe9027128b"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c7f9d2a8-7ed7-478d-8267-24bf02be6715","deletionTimestamp":"2018-08-07T05:33:14Z","acceptMappedClaims":null,"addIns":[],"appId":"b749dee2-458a-49f0-8600-6d06c23e0ce5","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-cobexr5tz","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-cobexr5tz on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-cobexr5tz","id":"342da347-9706-4ecc-ae6a-b26fa09aa33a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-cobexr5tz on your behalf.","userConsentDisplayName":"Access + cli-native-cobexr5tz","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c99d6eb7-f300-4ee6-aa72-2ba5bdca1919","deletionTimestamp":"2018-08-29T22:18:21Z","acceptMappedClaims":null,"addIns":[],"appId":"0b57a754-7f1a-436c-9d75-38d8eb4b1af3","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp1c190065c","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp1c190065c","identifierUris":["http://easycreate.azure.com/javasdkapp1c190065c"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-17T22:18:17.4741033Z","keyId":"b436af69-b5e0-4756-a41c-424fa0380ad0","startDate":"2018-08-29T22:18:17.4741033Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-12-07T22:18:17.4631254Z","keyId":"13bd8cc1-d6f0-4b91-a668-e3a7cc05bfb8","startDate":"2018-08-29T22:18:17.4631254Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp1c190065c on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp1c190065c","id":"6c570f85-7d7a-4894-aec8-4f1044061af5","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp1c190065c on your behalf.","userConsentDisplayName":"Access + javasdkapp1c190065c","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-18T22:18:20.1163004Z","keyId":"5d8bf76f-2841-4b40-a0eb-1b810b9a1d59","startDate":"2018-08-29T22:18:20.1163004Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp1c190065c"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ca9fc7ac-7214-45eb-a9f2-3c98a04b5a74","deletionTimestamp":"2018-08-17T05:20:15Z","acceptMappedClaims":null,"addIns":[],"appId":"d9152041-4418-4e69-8643-bd4db0b05544","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-07-29","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-07-29","identifierUris":["http://clitest77cljtk7rf"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-29 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-07-29","id":"5e07cb19-7a3f-4c7b-bb82-8518e7249d25","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-29 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-07-29","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:07:29.577167Z","keyId":"21abb662-6582-4e91-b813-6d8a515ec9b0","startDate":"2018-08-17T05:07:29.577167Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"cb9ccd80-aa7e-465a-bcbb-e4741b85db9c","deletionTimestamp":"2018-08-30T18:42:22Z","acceptMappedClaims":null,"addIns":[],"appId":"b2b3ee10-48c6-4834-88a2-97e8293649f8","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-18-41-59","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-18-41-59","identifierUris":["http://clitestldjqqaejf5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-18-41-59","id":"df69f7fa-b888-48d8-a84f-521f8fc2ef1f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-18-41-59","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T18:41:59.708269Z","keyId":"819e51e3-ce15-441b-a39f-4577cef0dd24","startDate":"2018-08-30T18:41:59.708269Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"cccb9892-24c1-44f8-ab24-4c38f397eb34","deletionTimestamp":"2018-08-02T05:32:55Z","acceptMappedClaims":null,"addIns":[],"appId":"c7aafeb1-15ab-40b6-9373-654e77d3bfba","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-08-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-08-31","identifierUris":["http://clitestzf5nx64uj7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-08-31","id":"8e8bf63d-6e21-40cb-bde7-4f2cfeb5e091","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-08-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-08-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-02T05:08:31.484111Z","keyId":"42e56343-7992-48e5-894e-192131f18980","startDate":"2018-08-02T05:08:31.484111Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ccd406b7-f520-4619-98c4-fef2ffc35535","deletionTimestamp":"2018-08-07T05:34:50Z","acceptMappedClaims":null,"addIns":[],"appId":"1dd6e05c-f373-4a75-aca3-7a7f52d31c35","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-34-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-34-42","identifierUris":["http://cli_test_sp_with_kv_existing_certjsgmkt5qmvnccqt2zind7n2dx72pc7ywqtdmkdt4oc2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"20895D38681DDC4C9F7327C84C342B77758D60E8","endDate":"2019-02-07T05:34:30Z","keyId":"441b89af-b319-4ba9-99c0-9ba97e0c09f6","startDate":"2018-08-07T05:34:48.89893Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-34-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-34-42","id":"5ab4b4fe-c72a-4c82-be45-b4d939b6a2ef","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-34-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-34-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"cd486ce0-c3f1-4eee-a00b-b7a6d4a06109","deletionTimestamp":"2018-08-01T05:31:56Z","acceptMappedClaims":null,"addIns":[],"appId":"ad27d38a-d9bd-4896-840f-3613db5c791b","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-t2ia3kpza","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-t2ia3kpza on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-t2ia3kpza","id":"5239544a-d3a7-4444-ae12-ea9c3bb740a7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-t2ia3kpza on your behalf.","userConsentDisplayName":"Access + cli-native-t2ia3kpza","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"cd9f48c8-1ccc-42fd-8bb4-8714fcb2e1d7","deletionTimestamp":"2018-08-16T05:26:39Z","acceptMappedClaims":null,"addIns":[],"appId":"34e59a9b-7583-4132-bf03-e44d7dacc0fe","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-26-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-26-31","identifierUris":["http://clitestuqjkpq7w7p"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-26-31","id":"9dc51a69-9fed-4067-9609-97301a5c6526","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-26-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-26-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T05:26:31.470299Z","keyId":"74f6ce0d-c152-4feb-9a78-bd2b8e0c37b7","startDate":"2018-08-16T05:26:31.470299Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"cdd0007b-d4f9-42f3-9a3d-2b62356bfef1","deletionTimestamp":"2018-08-28T11:01:10Z","acceptMappedClaims":null,"addIns":[],"appId":"1aefc2ca-b042-4087-a246-462a7909d011","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphm53v2","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphm53v2","identifierUris":["http://cli-graphm53v2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphm53v2 on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphm53v2","id":"5e181e89-3be3-4c89-8f3d-e44869102614","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphm53v2 on your behalf.","userConsentDisplayName":"Access + cli-graphm53v2","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"cdf07a0a-a88d-40f2-9a23-0712168913d6","deletionTimestamp":"2018-08-16T05:50:33Z","acceptMappedClaims":null,"addIns":[],"appId":"ecb1b27e-4814-4128-9cb0-4ce810b15175","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-16-05-50-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-16-05-50-24","identifierUris":["http://cli_create_rbac_sp_with_certfy6fw3x4ncauzuxwnv5pfqst46jdi7xinovay4qkwxdix7p"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"02DAE2C7BA32AEC54B150C62DD7C0A1C03A844DC","endDate":"2019-08-16T05:50:32.226864Z","keyId":"4a1739f6-4d89-48ff-99cc-615a46df7239","startDate":"2018-08-16T05:50:32.226864Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-16-05-50-24","id":"b29dd227-b9bf-4ad3-b27d-c218a91e3e24","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-16-05-50-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-16-05-50-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ce0bafd7-a922-4668-8985-35f8a06ff34e","deletionTimestamp":"2018-08-18T05:32:03Z","acceptMappedClaims":null,"addIns":[],"appId":"7e646c51-936d-4db6-b279-8e127756e0a3","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-4flvlgbo7","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-4flvlgbo7 on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-4flvlgbo7","id":"af36beb7-c8be-4607-803f-e5e2da184f8e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-4flvlgbo7 on your behalf.","userConsentDisplayName":"Access + cli-native-4flvlgbo7","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ce22a01c-2d9d-439c-be74-135a8b4d4715","deletionTimestamp":"2018-08-16T05:50:19Z","acceptMappedClaims":null,"addIns":[],"appId":"d53f4f72-d4da-416d-935a-6e6a65e397e0","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-e2bejdnmh","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-e2bejdnmh on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-e2bejdnmh","id":"8bac85c9-622b-4a64-90a3-aa881918fca4","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-e2bejdnmh on your behalf.","userConsentDisplayName":"Access + cli-native-e2bejdnmh","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ce8864b6-20c1-45c4-9de2-52b1119cc7fb","deletionTimestamp":"2018-08-16T20:31:56Z","acceptMappedClaims":null,"addIns":[],"appId":"3b6de573-c754-49d5-bb9c-3f895bcb1fa4","appRoles":[],"availableToOtherTenants":false,"displayName":"yugangw-ddd","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://yugangw-ddd","identifierUris":["http://yugangw-ddd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access yugangw-ddd on behalf of the signed-in user.","adminConsentDisplayName":"Access + yugangw-ddd","id":"6d0243bf-d72e-4aca-b84f-653d89774b9d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access yugangw-ddd on your behalf.","userConsentDisplayName":"Access + yugangw-ddd","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-16T20:30:59.219341Z","keyId":"113300ba-57bd-47fb-a9ab-a4224b99640a","startDate":"2018-08-16T20:30:59.219341Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ce9a9d56-9bbb-4d58-bfc0-edac999bb754","deletionTimestamp":"2018-08-18T05:32:05Z","acceptMappedClaims":null,"addIns":[],"appId":"5c368b8a-c077-4d53-b229-d5968f4b5ed9","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-31-48","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-31-48","identifierUris":["http://cli-graphhy47z"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-31-48 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-31-48","id":"792b5d0f-ecea-469f-baea-25f22e41cf7a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-31-48 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-31-48","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-18T05:31:48.106326Z","keyId":"97ff15c2-9d8f-44d1-861e-f3acfee26e34","startDate":"2018-08-18T05:31:48.106326Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ceb0098e-0b43-4baf-8670-a8e73b1482e7","deletionTimestamp":"2018-08-21T05:21:45Z","acceptMappedClaims":null,"addIns":[],"appId":"ea01ecf6-dd48-4e54-9c15-5bb100b19442","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-07-34","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-07-34","identifierUris":["http://clitestwwj2uz6qbn"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-34 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-07-34","id":"ddc34bd9-8738-4e74-88ea-a04605b52210","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-07-34 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-07-34","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:07:34.305674Z","keyId":"82fa6025-487a-4ebd-97df-a136a703d594","startDate":"2018-08-21T05:07:34.305674Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ceb24e5d-72a8-4a2c-8599-7e5a299f6384","deletionTimestamp":"2018-08-21T05:32:55Z","acceptMappedClaims":null,"addIns":[],"appId":"ca5ff5f5-c0f0-4eb3-99ee-29707c2fb161","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-32-53","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-32-53","identifierUris":["http://cli_create_rbac_sp_minimal2mmju2a4tc6iiuketabbjg4rzj7iad6lgplsqxhhcyjyl3wr5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-32-53 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-32-53","id":"16963ee4-d5de-4273-ac29-960a539812e1","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-32-53 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-32-53","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:32:53.600057Z","keyId":"e7c9d2e2-582d-48db-ad3b-8976e2a83c00","startDate":"2018-08-21T05:32:53.600057Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ceb343ea-20d4-44cd-8de5-a08899fddcaa","deletionTimestamp":"2018-08-09T05:36:49Z","acceptMappedClaims":null,"addIns":[],"appId":"5d3efedc-f228-4875-bc94-fd35733f6865","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-36-17","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-36-17","identifierUris":["http://cli_create_rbac_sp_with_password7ocyupftc33j6qgllyk4c6jo75bnli4vos7ok5fywor"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-36-17 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-36-17","id":"c011dc62-3b2b-4dc2-8696-6ee6bb6ff94a","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-36-17 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-36-17","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:36:17.916052Z","keyId":"daba9f03-811a-45ce-bc18-81ae721f3b8d","startDate":"2018-08-09T05:36:17.916052Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"cedd92db-62b5-4a3c-acbc-a30982762be4","deletionTimestamp":"2018-08-23T05:08:14Z","acceptMappedClaims":null,"addIns":[],"appId":"b6325bc4-8056-43a4-84fe-6d23f824d333","appRoles":[],"availableToOtherTenants":false,"displayName":"clitest.rgke4rmydbmpe62vektsq4huc7hzheclesjltzrhpq4pmzyz45tpz2z3u35wbih5qrx","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://clitest.rgke4rmydbmpe62vektsq4huc7hzheclesjltzrhpq4pmzyz45tpz2z3u35wbih5qrx","identifierUris":["http://clitest.rgke4rmydbmpe62vektsq4huc7hzheclesjltzrhpq4pmzyz45tpz2z3u35wbih5qrx"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access clitest.rgke4rmydbmpe62vektsq4huc7hzheclesjltzrhpq4pmzyz45tpz2z3u35wbih5qrx + on behalf of the signed-in user.","adminConsentDisplayName":"Access clitest.rgke4rmydbmpe62vektsq4huc7hzheclesjltzrhpq4pmzyz45tpz2z3u35wbih5qrx","id":"3bacdb6d-45e5-4d12-a0d0-65a293abd60f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access clitest.rgke4rmydbmpe62vektsq4huc7hzheclesjltzrhpq4pmzyz45tpz2z3u35wbih5qrx + on your behalf.","userConsentDisplayName":"Access clitest.rgke4rmydbmpe62vektsq4huc7hzheclesjltzrhpq4pmzyz45tpz2z3u35wbih5qrx","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:08:11.586531Z","keyId":"81f45067-6931-45eb-a5d1-828362fc23db","startDate":"2018-08-23T05:08:11.586531Z","value":null},{"customKeyIdentifier":null,"endDate":"2019-08-23T05:07:56.935314Z","keyId":"8a57e3dd-cf54-4b50-8701-912a2af59dfe","startDate":"2018-08-23T05:07:56.935314Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d0042fcf-6d16-486a-9a61-0ea7772560d8","deletionTimestamp":"2018-08-30T18:42:07Z","acceptMappedClaims":null,"addIns":[],"appId":"590651f7-92c4-4476-a41f-b09a0413b887","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-18-41-59","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-18-41-59","identifierUris":["http://clitestscgqam6lng"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-18-41-59","id":"2deff5bc-1957-4d78-8cff-a13302de0b60","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-18-41-59","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T18:41:59.316053Z","keyId":"0e661790-068b-4fc5-bd6f-7f3323f443ed","startDate":"2018-08-30T18:41:59.316053Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d038e648-a8bc-4188-862b-a3c4fcc180ca","deletionTimestamp":"2018-08-14T11:06:27Z","acceptMappedClaims":null,"addIns":[],"appId":"c4ec5257-f629-46c3-a5f6-0d51343662ce","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp8e0122532","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp8e0122532","identifierUris":["http://easycreate.azure.com/javasdkapp8e0122532"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-02T11:06:25.3627039Z","keyId":"de3babcc-efa9-4c82-a344-5f2487e69355","startDate":"2018-08-14T11:06:25.3627039Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-22T11:06:25.3577125Z","keyId":"438a2255-3b41-490b-8b02-49ae1e524ecf","startDate":"2018-08-14T11:06:25.3577125Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp8e0122532 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp8e0122532","id":"b27ca26c-0a80-4fb8-ac45-37bf7236b20b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp8e0122532 on your behalf.","userConsentDisplayName":"Access + javasdkapp8e0122532","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp8e0122532"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d045aec3-e84f-457a-8b6a-3b3662fcbde7","deletionTimestamp":"2018-08-14T19:45:44Z","acceptMappedClaims":null,"addIns":[],"appId":"8c5d66af-9a31-4fe0-ac91-50be15417f6b","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-19-45-43","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-19-45-43","identifierUris":["http://cli_create_rbac_sp_minimalvmasi4ogtsztjb27klpjgfx3ymanfhzshagtqnhg74qagycob"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-45-43 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-19-45-43","id":"f0a170fb-8a37-4091-8855-1e9be5bc7d20","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-19-45-43 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-19-45-43","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T19:45:43.26686Z","keyId":"75de8a34-246b-4777-b398-96a160c1158c","startDate":"2018-08-14T19:45:43.26686Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d0ee81b0-385c-4f99-8358-4c94260694ce","deletionTimestamp":"2018-08-03T05:07:36Z","acceptMappedClaims":null,"addIns":[],"appId":"affdabee-e4bf-4dc5-83cf-ec62ab8f5c31","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-07-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-07-27","identifierUris":["http://clitest6xkhemxyq3"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-07-27","id":"8db7d155-b192-4bd9-ac3f-d04687ef94c8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-07-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:07:27.899062Z","keyId":"88473a27-6f7c-4f12-8f09-d226528cb4fd","startDate":"2018-08-03T05:07:27.899062Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}],"odata.nextLink":"deletedDirectoryObjects/$/Microsoft.DirectoryServices.Application?$skiptoken=X''44537074020000304170706C69636174696F6E5F61313430313639342D313865322D343164332D383331342D343739313636663530353533304170706C69636174696F6E5F61313430313639342D313865322D343164332D383331342D34373931363666353035353300304170706C69636174696F6E5F64306565383162302D333835632D346639392D383335382D346339343236303639346365304170706C69636174696F6E5F64306565383162302D333835632D346639392D383335382D3463393432363036393463650000000000000000000000''"}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['193018'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:39 GMT'] + duration: ['2699107'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [mSLP0F096HcWgZ27mIj4ffYCwKZWjtsGTOzQkmYcskU=] + ocp-aad-session-key: [P5ntDwkqMcw2y7jXEOZsfr1KCXy0mVIlTRXR1Hv0Y9dk4iftJ14yFBPquY6j36jgQwSHImiuPdfiTdXUVwixtVN0GwX5HvOIX9-D3NY9dhD0VG93F60CVnjSVX8A1ppCf9E5lIYWfV0-y286Ih2p-g.a09ll9NRnUUnGfl2PakyRyfemfEfELBuqXqa8HStqt4] + pragma: [no-cache] + request-id: [c92119b6-bda2-4ae9-9701-f257ad219653] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/deletedDirectoryObjects/$/Microsoft.DirectoryServices.Application?api-version=1.6&$skiptoken=X'44537074020000304170706C69636174696F6E5F61313430313639342D313865322D343164332D383331342D343739313636663530353533304170706C69636174696F6E5F61313430313639342D313865322D343164332D383331342D34373931363666353035353300304170706C69636174696F6E5F64306565383162302D333835632D346639392D383335382D346339343236303639346365304170706C69636174696F6E5F64306565383162302D333835632D346639392D383335382D3463393432363036393463650000000000000000000000' + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#deletedDirectoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d10f53a6-1aa9-4460-a6c6-03eb1c74b75e","deletionTimestamp":"2018-08-14T05:35:24Z","acceptMappedClaims":null,"addIns":[],"appId":"b0d88737-aa62-4857-8f28-4b21028714a8","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-14-05-34-59","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-14-05-34-59","identifierUris":["http://cli-graph7vkyj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-34-59 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-14-05-34-59","id":"5bbaf958-94ef-4d0f-b9ae-08d55b7eeab4","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-14-05-34-59 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-14-05-34-59","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-14T05:34:59.369739Z","keyId":"4068693c-ca6a-4fac-b484-06160699bcea","startDate":"2018-08-14T05:34:59.369739Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d1860866-2e67-4c0d-8db6-6b0f6bd6fa6d","deletionTimestamp":"2018-08-11T05:40:05Z","acceptMappedClaims":null,"addIns":[],"appId":"2230f012-7ea1-4c28-9237-1cb7f5589081","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-39-49","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-39-49","identifierUris":["http://cli_test_sp_with_kv_existing_certiefakd46s3tm77oho2lf5ndn56xnc5uysroxdomirg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"9CB7086EC55CBFD6DC795FBAC442DFD955B4E87F","endDate":"2019-08-11T05:40:03.79854Z","keyId":"8874f76b-a75b-4747-a45b-348903b1b2b3","startDate":"2018-08-11T05:40:03.79854Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-39-49 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-39-49","id":"1326468d-37ee-47af-bf23-5a29200c5e67","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-39-49 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-39-49","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d2845006-9e92-4b6f-8173-4f9f66e5bdbf","deletionTimestamp":"2018-08-08T05:46:52Z","acceptMappedClaims":null,"addIns":[],"appId":"fa98bc03-96f1-43b7-abe6-eb7c1e02e378","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-46-44","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-46-44","identifierUris":["http://cli_test_sp_with_kv_existing_cert3n3467gysftvjt2mjacglne2rzep5atmrc4t3mazke2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"ABF307DF29FE76C0216B038D03E2860AA09F97EA","endDate":"2019-02-08T05:46:32Z","keyId":"05f316d7-0e64-4973-ae45-78ae58cf56d3","startDate":"2018-08-08T05:46:50.701307Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-46-44 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-46-44","id":"6459ba08-a523-4b80-b1a9-e6898fa3cc31","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-46-44 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-46-44","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d319fca4-2803-4275-9fdc-c54bb2fd14c8","deletionTimestamp":"2018-08-15T05:44:34Z","acceptMappedClaims":null,"addIns":[],"appId":"f8e17d48-581d-4807-911f-1ada653bd9b1","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-44-17","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-44-17","identifierUris":["http://cli-graphf4ncs"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-17 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-44-17","id":"041c0010-1b73-402f-bef1-117eeffe83d8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-17 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-44-17","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:44:17.294306Z","keyId":"01b16906-711f-4e24-911d-5225a779b6a4","startDate":"2018-08-15T05:44:17.294306Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d365458f-7755-4ba1-9003-96c0e2eb7c44","deletionTimestamp":"2018-08-11T05:40:17Z","acceptMappedClaims":null,"addIns":[],"appId":"fc1e72ee-6956-4e76-a8af-b2d288b529df","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-39-31","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-39-31","identifierUris":["http://cli_test_sp_with_kv_new_certkwco5i2jsspsf3upmasgizpqdrwgalkij2dwxzpbezca2do"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"81082F22C154A7B809F1AFA98C0FE29C7B902A28","endDate":"2019-08-11T05:39:57.113586Z","keyId":"686ad526-6778-4270-96c8-543ae45afcda","startDate":"2018-08-11T05:39:57.113586Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-39-31 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-39-31","id":"3869227b-e35b-45f0-a738-b947d295d04f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-39-31 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-39-31","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d394c5ec-91cb-4ff2-a7ca-6884ada0bf4e","deletionTimestamp":"2018-08-25T08:49:20Z","acceptMappedClaims":null,"addIns":[],"appId":"ae9e46bb-54fd-4a3f-b815-d209e2cc6df0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-08-35-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-08-35-54","identifierUris":["http://clitesthb34dmsn2n"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-08-35-54","id":"9fef94b3-58a7-4b91-b81b-0bd6f1b091c9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-08-35-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T08:35:54.353704Z","keyId":"b1765625-32a8-4e70-9b62-676fcb66609e","startDate":"2018-08-25T08:35:54.353704Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d5e71604-ae4d-4781-a1f8-129456f989fa","deletionTimestamp":"2018-08-15T05:44:25Z","acceptMappedClaims":null,"addIns":[],"appId":"d0ee7819-338e-4d0c-9848-5ff1268cafef","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphx5lag","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphx5lag","identifierUris":["http://cli-graphx5lag"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphx5lag on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphx5lag","id":"062a3d61-e509-4f02-b23c-4e5d3f520972","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphx5lag on your behalf.","userConsentDisplayName":"Access + cli-graphx5lag","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d617eb71-0c11-48ce-b8a5-231cd84ed92c","deletionTimestamp":"2018-08-09T05:37:50Z","acceptMappedClaims":null,"addIns":[],"appId":"a70b78f3-a531-4c8f-80ae-9eb7000af023","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-37-41","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-37-41","identifierUris":["http://cli_test_sp_with_kv_existing_cert4tyk4haso4pzz7z5zc3tyfipps4urusd3ugauv4foy"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"175312A66EACBC4D21BC11E4E8827532399B8BE0","endDate":"2019-08-09T05:37:48.660509Z","keyId":"55c05b30-aa9e-408b-aee8-02b16ecdf112","startDate":"2018-08-09T05:37:48.660509Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-37-41 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-37-41","id":"b7c6dbbb-63fe-4ee7-96e3-352f9d19d18e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-37-41 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-37-41","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d7098e47-da12-4edc-9c7f-1fc32a3df332","deletionTimestamp":"2018-08-15T11:03:41Z","acceptMappedClaims":null,"addIns":[],"appId":"8ccc7c39-ab85-4ad0-8b24-d64c67ac66d9","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp969083471","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp969083471","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp969083471"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp969083471 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp969083471","id":"dbce95fd-8708-4713-8ee6-0538cc6112ba","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp969083471 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp969083471","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp969083471"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d78104c6-7d3c-4925-be5c-c50c451aedb2","deletionTimestamp":"2018-08-01T05:32:42Z","acceptMappedClaims":null,"addIns":[],"appId":"54549a10-d098-4844-b1d3-cfb6d86304fb","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-32-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-32-33","identifierUris":["http://cli_test_sp_with_kv_existing_certctxxv2nmpmsi5yk436bv5znv7tbotgxgds6q46ycgc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"1D50A9E43DC6C30F8F4840FC3983EDABE1B156F1","endDate":"2019-08-01T05:32:40.283968Z","keyId":"e5876333-cd86-4310-ba4f-8825e95b63fc","startDate":"2018-08-01T05:32:40.283968Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-32-33","id":"c6f30565-3fe0-4e0e-aae3-ecca06502638","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-32-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d89cfc94-0fe9-4ced-8a8b-7e1f227e51b3","deletionTimestamp":"2018-08-15T05:33:15Z","acceptMappedClaims":null,"addIns":[],"appId":"d534a32f-8ad7-4dc2-9556-61a0c2f7d8ff","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-20-50","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-20-50","identifierUris":["http://clitestwqwp3sfr6b"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-50 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-20-50","id":"3489550d-9cc2-4b81-af0f-106abf0f8eb6","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-20-50 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-20-50","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:20:50.436031Z","keyId":"ee83b983-cb08-4b6b-a0e7-d37efe9f1eba","startDate":"2018-08-15T05:20:50.436031Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d984d044-f78c-41fa-8fbe-0ca602cf9fad","deletionTimestamp":"2018-08-02T05:34:38Z","acceptMappedClaims":null,"addIns":[],"appId":"b7a62c5a-55f4-4bbe-8296-1a04f600af73","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-02-05-34-11","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-02-05-34-11","identifierUris":["http://cli_test_sp_with_kv_existing_certtdtok4x7bst2yxojlxbf56l73zm4yzq7giuzxd2dvd2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"BBDBDD544D85B3BC4FA4F2BF803EB0B4E24735CF","endDate":"2019-02-02T05:33:59Z","keyId":"f30d4a02-355a-4552-a0f4-71743f7cb7a3","startDate":"2018-08-02T05:34:36.14771Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-34-11 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-02-05-34-11","id":"81f90bc3-dff6-415b-8174-56ac105d05bb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-02-05-34-11 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-02-05-34-11","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d999e66c-5264-4479-9da7-59b6d57bb52f","deletionTimestamp":"2018-08-25T09:08:02Z","acceptMappedClaims":null,"addIns":[],"appId":"708adfc5-885a-499e-8fab-c75816fa96e2","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-09-07-55","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-09-07-55","identifierUris":["http://cli_test_sp_with_kv_existing_cert2yiqte3ntu7ocgsl2336fncnsua62fty4owe2t4z4e2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"9905C5E87F5984A6854353D909FCC56B58D41BBB","endDate":"2019-02-25T09:07:48Z","keyId":"4025f9f1-555b-4d05-bd21-c08b5e40c489","startDate":"2018-08-25T09:08:01.154073Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-07-55 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-09-07-55","id":"18974d55-8b71-457b-a6ac-2949999c5abb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-09-07-55 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-09-07-55","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"da346a81-a5f8-4a82-865a-bd7894e13afd","deletionTimestamp":"2018-08-24T05:57:16Z","acceptMappedClaims":null,"addIns":[],"appId":"9d9952d9-36fc-43d8-831c-875557183fdd","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-56-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-56-04","identifierUris":["http://cli_test_sp_with_kv_new_certyc5kizovmaps4dnvo2v6p2ww6pmefhpofkgb2iteujdh5hs"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"F7A08DE2D92D52F000A11858C439B2C3D1490D49","endDate":"2019-08-24T05:56:49.275391Z","keyId":"29fd7276-2b7f-41ee-9932-421d6ac773c5","startDate":"2018-08-24T05:56:49.275391Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-56-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-56-04","id":"abbb3429-7d42-452f-a31d-326995793bef","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-56-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-56-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"da3ffd21-8c95-4824-8ac5-ecb8a946e6e9","deletionTimestamp":"2018-08-22T05:33:56Z","acceptMappedClaims":null,"addIns":[],"appId":"64cacae3-38ac-4bbf-982c-957667870edf","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-33-46","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-33-46","identifierUris":["http://cli_test_sp_with_kv_existing_certls5qaftib2a3zmyjlgmxgiwhwewynlrtii5uzbcnfs2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"71BA4C8A2A404FA0E9ECD920706FB2C2E134BE53","endDate":"2019-02-22T05:33:37Z","keyId":"60005395-d165-4f7e-abfa-eeed31710922","startDate":"2018-08-22T05:33:53.617228Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-33-46 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-33-46","id":"ef727f14-9838-410d-9586-e1aa3e403858","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-33-46 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-33-46","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"da42a578-106c-4c4d-ba9c-97f8f967ce37","deletionTimestamp":"2018-08-21T05:32:35Z","acceptMappedClaims":null,"addIns":[],"appId":"45ab4402-089a-41d8-bfe8-3da5aeb977b7","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-32-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-32-27","identifierUris":["http://clisp-test-ep6d3dflq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-32-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-32-27","id":"b6c24715-9021-4fdf-8792-77a2d4721789","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-32-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-32-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:32:32.969856Z","keyId":"212893cc-d3ce-4dfc-9e8d-319a63f1d3d2","startDate":"2018-08-21T05:32:32.969856Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"dba2f8a5-95d7-4d78-ac66-7d25fad119ae","deletionTimestamp":"2018-08-21T11:09:51Z","acceptMappedClaims":null,"addIns":[],"appId":"3556502f-c3f7-4ea5-8ba3-f74625bb0af9","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp7c7811294","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp7c7811294","identifierUris":["http://easycreate.azure.com/javasdkapp7c7811294"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-09T11:09:47.4144898Z","keyId":"0a91631b-6fa8-47f8-9828-47ce939f135f","startDate":"2018-08-21T11:09:47.4144898Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-29T11:09:47.4092063Z","keyId":"3d4ef6eb-e30d-41d9-bef3-55de421ee48e","startDate":"2018-08-21T11:09:47.4092063Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp7c7811294 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp7c7811294","id":"1d242f09-9370-4bdc-9603-67930783d00e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp7c7811294 on your behalf.","userConsentDisplayName":"Access + javasdkapp7c7811294","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-10T11:09:49.2929104Z","keyId":"ea2dc877-46ee-45ec-b307-10acafdca85a","startDate":"2018-08-21T11:09:49.2929104Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp7c7811294"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"dc422758-4b06-4e1d-8d43-7c90eb2ac172","deletionTimestamp":"2018-08-09T05:38:22Z","acceptMappedClaims":null,"addIns":[],"appId":"f00986ce-08f5-4257-ae72-c842488056c5","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-38-13","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-38-13","identifierUris":["http://cli_test_sp_with_kv_existing_cert4tyk4haso4pzz7z5zc3tyfipps4urusd3ugauv4foy2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"11568F213362BD77F41F873F8CC47193BE1FE2A6","endDate":"2019-02-09T05:38:05Z","keyId":"f22b1b15-5222-4270-adc5-e70ad13f608f","startDate":"2018-08-09T05:38:20.350037Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-38-13 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-38-13","id":"a4d5f50a-a7c0-439a-bddf-afa84aac2835","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-38-13 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-38-13","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"dc59d1da-31e7-4e62-9545-6474927539d1","deletionTimestamp":"2018-08-08T05:44:56Z","acceptMappedClaims":null,"addIns":[],"appId":"bc70ba7a-e5c4-475c-b71d-7bfaf6daf5f1","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-44-35","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-44-35","identifierUris":["http://cli-graphnbwkm"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-44-35 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-44-35","id":"d55b4709-901b-46e7-9e58-495e5e0e85ad","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-44-35 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-44-35","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:44:35.029789Z","keyId":"cf31e99f-ea24-4d8b-9976-e0b252e697d9","startDate":"2018-08-08T05:44:35.029789Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"dc72e969-c87a-424f-99fc-0715aa1874f6","deletionTimestamp":"2018-08-30T19:16:17Z","acceptMappedClaims":null,"addIns":[],"appId":"1735b948-18e5-4d0d-ac27-0cb0b3eb877d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-19-16-10","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-19-16-10","identifierUris":["http://cli_create_rbac_sp_minimalnj7grt7w54gxjmp47rptcuiyyuf3u5ud35uesqsjcrw6wdq2p"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-16-10 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-19-16-10","id":"629c6d39-fbbf-4072-89b5-da02e59eb7d2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-16-10 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-19-16-10","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T19:16:10.540587Z","keyId":"1736157c-3ce5-489b-b15c-39db65869bc1","startDate":"2018-08-30T19:16:10.540587Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"dca930a2-814f-4208-83dc-d4b958b93cf5","deletionTimestamp":"2018-08-21T05:34:30Z","acceptMappedClaims":null,"addIns":[],"appId":"8d46897f-52b7-4423-98e0-c768d9cd9e02","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-34-09","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-34-09","identifierUris":["http://cli_test_sp_with_kv_existing_cert7lgmvu4lapx2gyvvapglms6qmbitithldfe4vlhejf2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"AF935F6156E770B8014DDDC91B5DE9DF8CEFD97A","endDate":"2019-02-21T05:33:59Z","keyId":"c3e8661b-ac36-420e-bc4b-df8fe460efed","startDate":"2018-08-21T05:34:29.125711Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-34-09 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-34-09","id":"8ae4bb1b-1fe8-4b97-b12c-7f323194c77e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-34-09 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-34-09","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"deecb05f-b1db-452d-bee6-a11a21180acb","deletionTimestamp":"2018-08-21T14:36:08Z","acceptMappedClaims":null,"addIns":[],"appId":"28ba90b9-40a6-42d4-9330-b742fa7c4b83","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp09e949058","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp09e949058","identifierUris":["http://easycreate.azure.com/javasdkapp09e949058"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-29T14:36:03.983Z","keyId":"a7008044-a73a-4b01-9958-6a37a7e87892","startDate":"2018-08-21T14:36:03.983Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp09e949058 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp09e949058","id":"34c216ab-1f0a-473b-b5cc-1a51014f7ef7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp09e949058 on your behalf.","userConsentDisplayName":"Access + javasdkapp09e949058","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp09e949058"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"dfc773ff-6ab9-4ea0-b6b7-0f67dc6e716a","deletionTimestamp":"2018-08-08T05:45:13Z","acceptMappedClaims":null,"addIns":[],"appId":"0d8631e6-143b-4c86-9935-7cd71bfbda6f","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-45-08","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-45-08","identifierUris":["http://cli_create_rbac_sp_minimalleawamofmum4voyqhlolz2djgldcqjg6cwgum55n72w5a6knc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-45-08 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-45-08","id":"f94dc377-36b0-492d-9680-2b2d95c85c6b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-45-08 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-45-08","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:45:08.796247Z","keyId":"e4ed4756-0a65-4b99-bb85-d4b0dc013dd3","startDate":"2018-08-08T05:45:08.796247Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e1c77933-2bd6-4e57-9681-ae9ec3f8943a","deletionTimestamp":"2018-08-01T05:21:33Z","acceptMappedClaims":null,"addIns":[],"appId":"c91b306d-1370-4174-8c83-0b795a154021","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-07-18","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-07-18","identifierUris":["http://clitest2nurfnwn2d"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-18 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-07-18","id":"0435a642-5ec3-4f19-af44-37416947eb5d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-18 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-07-18","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:07:18.208362Z","keyId":"64ef7bac-fc4c-40c7-bce0-865dd0d854d7","startDate":"2018-08-01T05:07:18.208362Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e20989cc-7f60-41b8-8a4b-2dd8e32643d2","deletionTimestamp":"2018-08-08T05:40:23Z","acceptMappedClaims":null,"addIns":[],"appId":"8bbcf3ee-e2ac-43de-aa99-7e2e47e48b59","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-16-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-16-20","identifierUris":["http://clitest2i5y7jqa6m"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-16-20","id":"936f0830-44b8-49bd-b3f4-1466657e0afb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-16-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-16-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:16:20.527195Z","keyId":"e033e80a-5527-4189-9726-55f26648f55f","startDate":"2018-08-08T05:16:20.527195Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e22b7ec2-79a9-4441-a282-a756cf9aec43","deletionTimestamp":"2018-08-08T00:15:53Z","acceptMappedClaims":null,"addIns":[],"appId":"6917a85c-7c1f-4dba-a614-da948837d49a","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp5741591581b3f","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp5741591581b3f","identifierUris":["http://easycreate.azure.com/ssp5741591581b3f"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp5741591581b3f on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp5741591581b3f","id":"aa6021b4-4d82-4bd9-a23f-775ca80164fc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp5741591581b3f on your behalf.","userConsentDisplayName":"Access + ssp5741591581b3f","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp5741591581b3f"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e267a736-c3fb-44bf-bd11-147622aa010c","deletionTimestamp":"2018-08-22T14:39:36Z","acceptMappedClaims":null,"addIns":[],"appId":"9a6ee31f-459a-4adc-9039-41b6d2725bd7","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappd98777460","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappd98777460","identifierUris":["http://easycreate.azure.com/javasdkappd98777460"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-30T14:39:31.92Z","keyId":"e664bb36-4e2c-4773-ae0c-4e48f4182006","startDate":"2018-08-22T14:39:31.92Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappd98777460 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappd98777460","id":"b27ac4d9-be00-4fd7-ad5c-1df5e4f4c5fb","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappd98777460 on your behalf.","userConsentDisplayName":"Access + javasdkappd98777460","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappd98777460"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e27134bf-3ee9-4664-bcac-328d845fee04","deletionTimestamp":"2018-08-30T19:20:17Z","acceptMappedClaims":null,"addIns":[],"appId":"5ceac568-64ec-453a-b39c-2f4044891521","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-18-41-58","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-18-41-58","identifierUris":["http://clitestzgtuko2xde"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-58 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-18-41-58","id":"7ea8159f-370f-42d9-a70b-f9d4517eb4af","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-58 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-18-41-58","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T18:41:58.767257Z","keyId":"9d12be87-77da-4d03-90b3-52883b27b6fb","startDate":"2018-08-30T18:41:58.767257Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e3c2b82a-7d5c-4631-9562-29d7720ad979","deletionTimestamp":"2018-08-08T05:46:58Z","acceptMappedClaims":null,"addIns":[],"appId":"3a88c9cc-5cb9-46f8-8133-b94e61a58f3d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-45-12","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-45-12","identifierUris":["http://cli_test_sp_with_kv_new_certe5n3f2khsvkd5irlbkaloe6d7zm35puy3vbq2q6px5e3upk"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"76B76FB8473463AF55FCF27A15B46D41CCBBE26D","endDate":"2019-08-08T05:45:47.625949Z","keyId":"c63c670d-326b-4649-9936-69fe88d426e1","startDate":"2018-08-08T05:45:47.625949Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-45-12 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-45-12","id":"3bce3311-e6b8-47ae-860f-f5a7f5260e9f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-45-12 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-45-12","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e4070292-559b-47ca-ad14-14c5577f94a9","deletionTimestamp":"2018-08-11T05:40:34Z","acceptMappedClaims":null,"addIns":[],"appId":"d726012e-7545-4d64-9359-5d827ed96cd6","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-40-18","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-40-18","identifierUris":["http://cli_test_sp_with_kv_existing_certiefakd46s3tm77oho2lf5ndn56xnc5uysroxdomirg2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"664577C1823E9DBA2A43447B51BEDDCA404FDBFF","endDate":"2019-02-11T05:40:12Z","keyId":"7933667d-b3eb-4867-a07b-d32d04076468","startDate":"2018-08-11T05:40:32.114094Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-40-18 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-40-18","id":"1ef3682e-ee85-4152-a0b1-549706ade4db","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-40-18 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-40-18","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e41362ff-7b3c-4243-84d3-ad034fa66089","deletionTimestamp":"2018-08-21T05:32:32Z","acceptMappedClaims":null,"addIns":[],"appId":"364c877e-84be-4cfe-8165-a5d11b6f887b","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-2ehylha2w","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-2ehylha2w on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-2ehylha2w","id":"e4f9e907-f023-409b-908a-790da7e66e7d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-2ehylha2w on your behalf.","userConsentDisplayName":"Access + cli-native-2ehylha2w","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e4213494-e15a-4b25-b39c-7d70d7d8d940","deletionTimestamp":"2018-08-22T05:07:36Z","acceptMappedClaims":null,"addIns":[],"appId":"b6e4b83d-9354-4d7b-9c84-69bede008425","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-22-05-07-27","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-22-05-07-27","identifierUris":["http://clitestjv7htoeon4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-27 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-22-05-07-27","id":"03377e86-8016-42a0-ab7c-bd976a6d38de","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-22-05-07-27 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-22-05-07-27","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-22T05:07:27.996583Z","keyId":"184a69ab-d4dd-4d97-aa2a-e4044475e0a1","startDate":"2018-08-22T05:07:27.996583Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e43dd35d-1822-445a-8dcd-d34f6219c416","deletionTimestamp":"2018-08-18T05:32:19Z","acceptMappedClaims":null,"addIns":[],"appId":"8895530c-0b10-405c-9ad9-50d28ccd8805","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-18-05-32-02","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-18-05-32-02","identifierUris":["http://cli_create_rbac_sp_with_certjqd3z5vatfmerrpnu5istfwvjndrv3yposplattlno5lgpg"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"F97BC32F9919F1CDB88A8F170404737BDA493D3D","endDate":"2019-08-18T05:32:17.993407Z","keyId":"fbd67615-3416-4772-a581-fcf2103f51c5","startDate":"2018-08-18T05:32:17.993407Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-02 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-18-05-32-02","id":"ba75473c-1666-4046-807b-ba5914fc18ea","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-18-05-32-02 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-18-05-32-02","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e4435a84-06f2-499d-8562-727f37589dde","deletionTimestamp":"2018-08-17T21:08:56Z","acceptMappedClaims":null,"addIns":[],"appId":"fb3a8804-9f4e-4d1b-81c3-4a91c4ac7116","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappe7849153f","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappe7849153f","identifierUris":["http://easycreate.azure.com/javasdkappe7849153f"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-05T22:08:54.3437338Z","keyId":"58f00375-b4ed-428a-bd14-5373bad986ab","startDate":"2018-08-17T21:08:54.3437338Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-25T22:08:54.3386821Z","keyId":"5584234f-36ce-41c8-8cd8-568a6ba2ca29","startDate":"2018-08-17T21:08:54.3386821Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappe7849153f on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappe7849153f","id":"38c04a55-ec7c-4c46-822f-c5c6d7dd0caf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappe7849153f on your behalf.","userConsentDisplayName":"Access + javasdkappe7849153f","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-06T21:08:56.0474183Z","keyId":"afbe123f-3fca-4d45-abdf-38ee50df2208","startDate":"2018-08-17T21:08:56.0474183Z","value":null},{"customKeyIdentifier":"cGFzc3dk","endDate":"2018-11-25T22:08:54.333651Z","keyId":"b0a1696c-4e97-4c5d-9a90-9d37d19d98b8","startDate":"2018-08-17T21:08:54.333651Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappe7849153f"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e5ec6141-b7c9-482a-9cce-c1b0655f08a4","deletionTimestamp":"2018-08-23T05:22:18Z","acceptMappedClaims":null,"addIns":[],"appId":"8de2ddd1-7e58-4b76-8373-85945df91dd0","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-07-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-07-24","identifierUris":["http://clitestp4spbnn6ky"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-07-24","id":"36b4bdc0-3af5-4aec-a863-8c69a7ed0634","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-07-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-07-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:07:24.907236Z","keyId":"0e866254-a2ee-4564-8085-600f221ff2ed","startDate":"2018-08-23T05:07:24.907236Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e5f9e490-767c-4388-99b6-71aa83f33f78","deletionTimestamp":"2018-08-08T05:44:59Z","acceptMappedClaims":null,"addIns":[],"appId":"22a8ac10-b667-42e2-bae3-879ee47513aa","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-44-51","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-44-51","identifierUris":["http://clisp-test-kt5rdoezh"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-44-51 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-44-51","id":"c052a93e-0ba4-4751-aff3-f9ee7c28f6e3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-44-51 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-44-51","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-08T05:44:56.424609Z","keyId":"b55617ef-b39b-484d-8978-8d0546397820","startDate":"2018-08-08T05:44:56.424609Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e6afafc6-0358-46f0-b301-c40830fba07d","deletionTimestamp":"2018-08-14T14:36:50Z","acceptMappedClaims":null,"addIns":[],"appId":"4fcc1d32-9f0c-44e6-9592-5da947fbaa24","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp1e540250e","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp1e540250e","identifierUris":["http://easycreate.azure.com/javasdkapp1e540250e"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-22T14:36:46.778Z","keyId":"1ac2a6dd-15a5-4d30-87b8-017eb3ef6d46","startDate":"2018-08-14T14:36:46.778Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp1e540250e on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp1e540250e","id":"9aa7bf2a-d047-4cc6-aa9b-1beff8201dd1","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp1e540250e on your behalf.","userConsentDisplayName":"Access + javasdkapp1e540250e","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp1e540250e"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e6ca3435-ba78-4f4f-a47f-3bf7ba18d0cf","deletionTimestamp":"2018-08-31T01:24:36Z","acceptMappedClaims":null,"addIns":[],"appId":"42243168-8146-4d31-a0da-9bfd5ba4e037","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdksp872444954","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdksp872444954","identifierUris":["http://easycreate.azure.com/anotherapp/javasdksp872444954"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp872444954 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp872444954","id":"08898657-b0c3-4d42-9fbf-7d52920d1942","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdksp872444954 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdksp872444954","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdksp872444954"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e7110d12-1178-4563-a757-38f24be9628f","deletionTimestamp":"2018-08-24T05:48:15Z","acceptMappedClaims":null,"addIns":[],"appId":"c144668c-4634-4d7c-99a5-a77feffd2c56","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-29-55","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-29-55","identifierUris":["http://clitesticsbdx5njz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-55 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-29-55","id":"600c65b0-a682-448e-a0bf-72efb67d09d3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-29-55 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-29-55","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:29:55.906561Z","keyId":"a29259cb-c5f2-467d-8763-beccb7e31901","startDate":"2018-08-24T05:29:55.906561Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e748fe59-e225-4343-b27a-1a491ee1aec8","deletionTimestamp":"2018-08-15T05:44:53Z","acceptMappedClaims":null,"addIns":[],"appId":"7cd88888-dde4-4e9e-b7dd-55af527b64ba","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-15-05-44-46","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-15-05-44-46","identifierUris":["http://cli_create_rbac_sp_minimalsawehyd7hcp2vu4qn25ucgwg6lavgv2zxqurhoxczkqbo2pre"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-46 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-15-05-44-46","id":"9a3815f4-8634-4cbc-93aa-72fcc104b95e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-15-05-44-46 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-15-05-44-46","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-15T05:44:46.813912Z","keyId":"3244275a-fe95-40f3-9a09-d49b20548286","startDate":"2018-08-15T05:44:46.813912Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e87c469c-94dd-4087-be12-574c1d709868","deletionTimestamp":"2018-08-14T14:37:23Z","acceptMappedClaims":null,"addIns":[],"appId":"440d8cbd-9596-44e7-b0d6-8c414148a92d","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp1bd60413662cc","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp1bd60413662cc","identifierUris":["http://easycreate.azure.com/ssp1bd60413662cc"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp1bd60413662cc on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp1bd60413662cc","id":"385ffce3-0978-42e4-95f5-7982c9ca9195","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp1bd60413662cc on your behalf.","userConsentDisplayName":"Access + ssp1bd60413662cc","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp1bd60413662cc"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e886023e-d4ea-477a-ab5c-c0ab0a31726b","deletionTimestamp":"2018-08-24T05:55:32Z","acceptMappedClaims":null,"addIns":[],"appId":"72b3f0e1-9d6c-456d-812b-933cda72c563","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-55-29","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-55-29","identifierUris":["http://cli_create_rbac_sp_minimalx7ax4y3nd7n23dhsfmgsccrnizdyikgod3yvwaqaofg46ahgd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-29 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-55-29","id":"ad3850c4-03b3-475b-8d52-15f4901c12e2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-55-29 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-55-29","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-24T05:55:29.952041Z","keyId":"7484ac12-ace4-45f6-b2fc-c8adae77a316","startDate":"2018-08-24T05:55:29.952041Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"e8f082e6-b4d5-4782-bf5c-668544846a06","deletionTimestamp":"2018-08-03T05:31:52Z","acceptMappedClaims":null,"addIns":[],"appId":"21ea41e8-68ff-4837-b604-11a2cf7003b3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-07-26","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-07-26","identifierUris":["http://clitestgq4sfd5bm7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-26 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-07-26","id":"3a414d01-e229-49fb-b934-b624cb17137d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-26 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-07-26","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:07:26.06614Z","keyId":"ede53fbb-ad61-4d8a-a800-99bf7ac440b3","startDate":"2018-08-03T05:07:26.06614Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ea19cabe-a1f5-49fb-9860-46df96577082","deletionTimestamp":"2018-08-09T05:30:22Z","acceptMappedClaims":null,"addIns":[],"appId":"5cbaedc4-602d-4fbd-a911-fb925d2a6b9a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-09-05-10-45","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-09-05-10-45","identifierUris":["http://clitestxzicbr5t2t"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-45 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-09-05-10-45","id":"74602770-c458-46d0-8bf1-53610bc7f420","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-09-05-10-45 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-09-05-10-45","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-09T05:10:45.354627Z","keyId":"0fbcd04c-8e06-4ccd-985c-2ad8b6eaf78f","startDate":"2018-08-09T05:10:45.354627Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ea3c1c2e-5495-465c-9f78-388d061ac6ba","deletionTimestamp":"2018-08-07T05:33:43Z","acceptMappedClaims":null,"addIns":[],"appId":"6291df3c-e3fb-4d89-952b-ba05a87fa1fa","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-33-18","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-33-18","identifierUris":["http://cli_create_rbac_sp_with_certp7lx2uikndi6r74km2qbvw6f2e4s2xc3cms3wf2fuvffhkk"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"E8832EC9411E570E433B19A5B68F3601B9647474","endDate":"2019-08-07T05:33:41.86315Z","keyId":"a605be93-ce9b-4ee2-9fe0-72c34137bfad","startDate":"2018-08-07T05:33:41.86315Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-18 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-33-18","id":"b0ff2398-e010-4ccf-92f7-5999ecf3cff3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-33-18 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-33-18","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ea9ca135-a1a0-4213-b471-4fe1eab567a6","deletionTimestamp":"2018-08-01T05:31:37Z","acceptMappedClaims":null,"addIns":[],"appId":"9eda4db3-c7a7-4639-a649-ad56a46ee484","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-07-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-07-20","identifierUris":["http://clitestmhf6vvktxu"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-07-20","id":"1013a471-c4ea-4373-bb8e-c521ee3eb45f","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-07-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-07-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-01T05:07:20.089072Z","keyId":"2905a0f3-f8e0-4fda-a5b5-85546fc1cac2","startDate":"2018-08-01T05:07:20.089072Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"eb154b8c-afe7-4979-b49c-59b6245eea13","deletionTimestamp":"2018-08-23T05:35:04Z","acceptMappedClaims":null,"addIns":[],"appId":"0d8ed000-5826-4083-bce9-6b2c29869252","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-34-33","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-34-33","identifierUris":["http://cli_test_sp_with_kv_existing_cert3jn46teo2mdd23egcbzfpsunyc5difmp7dvjhseop32"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"9000BB99332425DE6B955342EFE0AC337CDA6C43","endDate":"2019-02-23T05:34:30Z","keyId":"033bc2fd-b22c-4dd0-a989-d55794f72d72","startDate":"2018-08-23T05:34:59.225594Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-34-33 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-34-33","id":"dba65cac-bb23-4e59-b07a-a29f997e26e4","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-34-33 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-34-33","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ebf797a6-7bbd-4648-8b10-18b6a0c9d4e4","deletionTimestamp":"2018-08-17T05:22:18Z","acceptMappedClaims":null,"addIns":[],"appId":"e420d351-7367-4fd7-a27a-17bc5ca1e1d3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-17-05-07-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-17-05-07-28","identifierUris":["http://clitestm6yshinjra"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-17-05-07-28","id":"5e42a47c-1b2e-47fc-977e-91ad2176a3d9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-17-05-07-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-17-05-07-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-17T05:07:28.380594Z","keyId":"9ba9b582-b76e-4240-aa54-17673b7fc70e","startDate":"2018-08-17T05:07:28.380594Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ec7ec02d-d9fe-4d62-a4cb-0e49a2b8837c","deletionTimestamp":"2018-08-31T19:49:56Z","acceptMappedClaims":null,"addIns":[],"appId":"5a625325-4ce5-455d-9437-ae55984d6230","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_app","id":"e9098c80-e07a-42bc-a317-362886d1cc3e","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_app on your behalf.","userConsentDisplayName":"Access + pytest_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ecc30e66-52b4-4313-aab4-4cc47a207b27","deletionTimestamp":"2018-08-28T18:09:56Z","acceptMappedClaims":null,"addIns":[],"appId":"0b79c754-fd40-4dae-893b-31f0d695dfa3","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdkspdae30942f","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdkspdae30942f","identifierUris":["http://easycreate.azure.com/anotherapp/javasdkspdae30942f"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspdae30942f + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspdae30942f","id":"46394a8d-9af0-4867-a2c2-9de3f32a03d2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspdae30942f + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspdae30942f","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdkspdae30942f"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ed84c753-9873-4963-972a-5918057befe4","deletionTimestamp":"2018-08-28T10:35:30Z","acceptMappedClaims":null,"addIns":[],"appId":"e205fa42-3b17-4fb1-9d4f-641fb4cfdc9c","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-28-10-35-20","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-28-10-35-20","identifierUris":["http://clitestdemmk4n4j4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-20 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-28-10-35-20","id":"4542adce-a0ef-4148-8a05-ddff160871b2","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-28-10-35-20 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-28-10-35-20","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-28T10:35:20.68723Z","keyId":"5b23453f-720c-4259-a21a-99605204d5bd","startDate":"2018-08-28T10:35:20.68723Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"eda26d16-308f-49b0-9233-b708ec081460","deletionTimestamp":"2018-08-30T19:11:58Z","acceptMappedClaims":null,"addIns":[],"appId":"937baac9-e33b-46b7-ac2a-09631b670d62","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-18-41-59","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-18-41-59","identifierUris":["http://clitesttcljz4d4ve"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-18-41-59","id":"74b1ebdb-1fa3-427c-b29a-2172fad2e68c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-18-41-59 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-18-41-59","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T18:41:59.542154Z","keyId":"f185b8a7-86bc-4567-bfeb-321d337e1348","startDate":"2018-08-30T18:41:59.542154Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ee2d5acc-cb3b-4236-b9b1-44bae9e30200","deletionTimestamp":"2018-08-30T19:15:48Z","acceptMappedClaims":null,"addIns":[],"appId":"58a1ba76-ba58-42c5-9d8f-fdb51ad5638a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-19-15-28","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-19-15-28","identifierUris":["http://clisp-test-rnil2psel"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-15-28 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-19-15-28","id":"702e7f2c-126a-451d-82d7-b5ee5037d3cd","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-15-28 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-19-15-28","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-30T19:15:38.003711Z","keyId":"5f0f5f89-9bb0-42b6-967a-4a7ebfaac687","startDate":"2018-08-30T19:15:38.003711Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"eeee3711-3dad-4eae-955a-ff351f3446ef","deletionTimestamp":"2018-08-07T05:33:13Z","acceptMappedClaims":null,"addIns":[],"appId":"b5f03ab9-68e0-43f2-aa4c-6eb8640e3075","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphngso6","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphngso6","identifierUris":["http://cli-graphngso6"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphngso6 on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphngso6","id":"06d5dee7-9397-45f9-88ed-64b2b3a27ef9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphngso6 on your behalf.","userConsentDisplayName":"Access + cli-graphngso6","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ef4d44d7-5c07-4bb0-b957-a1465de714e9","deletionTimestamp":"2018-08-20T11:04:35Z","acceptMappedClaims":null,"addIns":[],"appId":"cbac57fa-9d11-4e6a-ac79-174536cabfb6","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappf7d20339d","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappf7d20339d","identifierUris":["http://easycreate.azure.com/javasdkappf7d20339d"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-08T11:04:29.2942534Z","keyId":"26008c0f-2ba4-49b3-b3ec-b5652249bd96","startDate":"2018-08-20T11:04:29.2942534Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-28T11:04:29.0152624Z","keyId":"18322b19-ca03-44a1-9ba6-6fcbed71f767","startDate":"2018-08-20T11:04:29.0152624Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappf7d20339d on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappf7d20339d","id":"d0e83e6d-4fa0-4a5e-bf74-852062a78b1d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappf7d20339d on your behalf.","userConsentDisplayName":"Access + javasdkappf7d20339d","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappf7d20339d"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f006e218-e00f-49cc-8915-7276870ef8ba","deletionTimestamp":"2018-08-04T05:33:42Z","acceptMappedClaims":null,"addIns":[],"appId":"191c31b6-3cc2-46eb-8ddf-22f62215948c","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphmw23g","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphmw23g","identifierUris":["http://cli-graphmw23g"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphmw23g on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphmw23g","id":"40d27025-c6ee-47b9-b772-5165fc17564c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphmw23g on your behalf.","userConsentDisplayName":"Access + cli-graphmw23g","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f03ea8c9-b631-43d2-859b-0d2002191fe3","deletionTimestamp":"2018-08-25T08:50:44Z","acceptMappedClaims":null,"addIns":[],"appId":"a6fd71b1-92ae-4ece-82a4-efeca2bd7512","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-25-08-35-54","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-25-08-35-54","identifierUris":["http://clitestfwxqxpldnm"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-25-08-35-54","id":"cd7ef14d-2cdb-46cf-bb09-09c15a3ba164","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-25-08-35-54 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-25-08-35-54","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-25T08:35:54.0213Z","keyId":"88a65a64-5420-4a0a-b799-83970ca93055","startDate":"2018-08-25T08:35:54.0213Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f0df161c-bd6c-4a64-84ac-0c4aca111310","deletionTimestamp":"2018-08-21T05:33:31Z","acceptMappedClaims":null,"addIns":[],"appId":"ff6f03b4-4c53-4026-882f-ce7f03468293","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-21-05-33-00","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-21-05-33-00","identifierUris":["http://cli_create_rbac_sp_with_password32lzr65i6tpnijkgpybbrxpxmwtmfghtv4p7uf5su3g"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-33-00 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-21-05-33-00","id":"323f88db-4517-435f-9d6c-e65492eec7e8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-21-05-33-00 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-21-05-33-00","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-21T05:33:00.57433Z","keyId":"dde1ce0c-8134-4691-9fbe-2ab05b397cfd","startDate":"2018-08-21T05:33:00.57433Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f1d1d545-b438-49f1-9ddb-5aec002c63ad","deletionTimestamp":"2018-08-29T15:30:08Z","acceptMappedClaims":null,"addIns":[],"appId":"360e19dd-764a-4ea9-a56e-c3c10a4ebeeb","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-15-30-04","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-15-30-04","identifierUris":["http://clitest6rymcrvgmd"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-04 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-15-30-04","id":"6f48623b-a3f0-4ef0-b200-340dd0d75e95","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-15-30-04 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-15-30-04","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T15:30:04.13536Z","keyId":"ab65a9a0-66a8-41c4-8faf-6859c9975795","startDate":"2018-08-29T15:30:04.13536Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f2f043ae-d50a-48ad-b312-837419b4a6a9","deletionTimestamp":"2018-08-24T05:57:34Z","acceptMappedClaims":null,"addIns":[],"appId":"8c26ea6a-a740-4f54-87f6-2cf2fe3961ac","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-24-05-57-16","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-24-05-57-16","identifierUris":["http://cli_test_sp_with_kv_existing_certrgyuyc56oc7sslhrb6l65fij5jjxmphlavwmqozmfj2"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"6BDA7275AFF60902EF5016957EAC220FC65E42EE","endDate":"2019-02-24T05:57:08Z","keyId":"019724f0-0c67-46ee-9a14-010e9295f4c4","startDate":"2018-08-24T05:57:32.396288Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-57-16 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-24-05-57-16","id":"647e528f-7be5-469e-9096-d2c369486ddf","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-24-05-57-16 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-24-05-57-16","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f328013a-7f66-45aa-b6ef-81219242fa5c","deletionTimestamp":"2018-08-17T14:40:15Z","acceptMappedClaims":null,"addIns":[],"appId":"c3fcb04d-84c7-4154-b2d2-3110a31c5cea","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappbe1297544","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappbe1297544","identifierUris":["http://easycreate.azure.com/javasdkappbe1297544"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-25T14:40:11.653Z","keyId":"860721fd-2d68-4c12-b2e4-c1eb81197570","startDate":"2018-08-17T14:40:11.653Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappbe1297544 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappbe1297544","id":"4df10a12-11bc-4003-8a6b-27d84b0e26f8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappbe1297544 on your behalf.","userConsentDisplayName":"Access + javasdkappbe1297544","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappbe1297544"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f39abbd9-3310-4e12-bf59-a32f2a3f7387","deletionTimestamp":"2018-08-16T11:09:02Z","acceptMappedClaims":null,"addIns":[],"appId":"49dee726-bc4b-4505-ad09-840dd9aa1075","appRoles":[],"availableToOtherTenants":false,"displayName":"http://easycreate.azure.com/anotherapp/javasdkspf81098525","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/anotherapp/javasdkspf81098525","identifierUris":["http://easycreate.azure.com/anotherapp/javasdkspf81098525"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspf81098525 + on behalf of the signed-in user.","adminConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspf81098525","id":"619f4db3-a798-4c8a-ba97-4829e1689b56","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access http://easycreate.azure.com/anotherapp/javasdkspf81098525 + on your behalf.","userConsentDisplayName":"Access http://easycreate.azure.com/anotherapp/javasdkspf81098525","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/anotherapp/javasdkspf81098525"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f4283229-5510-4964-af07-c639855a13b5","deletionTimestamp":"2018-08-29T16:00:41Z","acceptMappedClaims":null,"addIns":[],"appId":"ae1d17a2-8cc6-4195-a29d-20813cb7806a","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graph3bsdq","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graph3bsdq","identifierUris":["http://cli-graph3bsdq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graph3bsdq on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graph3bsdq","id":"2c595e69-e70d-4041-94b7-845dde429d9b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graph3bsdq on your behalf.","userConsentDisplayName":"Access + cli-graph3bsdq","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f5343896-2a44-42f1-8cef-ad3f5aca46e5","deletionTimestamp":"2018-08-01T05:33:02Z","acceptMappedClaims":null,"addIns":[],"appId":"6cee024b-3895-40d8-83cd-0f288c8628af","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-01-05-32-22","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-01-05-32-22","identifierUris":["http://cli_test_sp_with_kv_new_certsq6k2onmosaf2g5fjnk4p45ndkldwaf7ic6gyrioxohvwpl"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"9D8C4E2404ED187EDA0E3CB2B2E6BEF376EE550B","endDate":"2019-08-01T05:32:42.317592Z","keyId":"6f9f78d0-cca1-4912-a3f7-e50a1c81b21b","startDate":"2018-08-01T05:32:42.317592Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-22 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-01-05-32-22","id":"9249128e-87a3-4598-b8fb-9dfad28c9e67","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-01-05-32-22 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-01-05-32-22","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f562d271-a897-4d3b-8eca-350484461fa0","deletionTimestamp":"2018-08-03T05:31:11Z","acceptMappedClaims":null,"addIns":[],"appId":"795006d3-eeba-4d15-a694-574977701458","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-cpt34jaov","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-cpt34jaov on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-cpt34jaov","id":"37dd0d82-f90a-4a3e-86c3-64d635b2b262","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-cpt34jaov on your behalf.","userConsentDisplayName":"Access + cli-native-cpt34jaov","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f5c0adfe-7b5c-4c0e-ba85-8230170c3d21","deletionTimestamp":"2018-08-11T05:38:51Z","acceptMappedClaims":null,"addIns":[],"appId":"a8c4a12c-061c-470e-8dbb-6489426875ee","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-11-05-38-32","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-11-05-38-32","identifierUris":["http://cli-graphpiys7"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-38-32 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-11-05-38-32","id":"9e5a7b82-7527-4c9d-b3d4-ab401ef43f25","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-11-05-38-32 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-11-05-38-32","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-11T05:38:32.248742Z","keyId":"1b3397ef-cf57-4733-8171-acce1aca5381","startDate":"2018-08-11T05:38:32.248742Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f5e1b74b-9ab5-4316-9bf8-f963ce889314","deletionTimestamp":"2018-08-04T05:35:29Z","acceptMappedClaims":null,"addIns":[],"appId":"f3988fbc-23dc-4e98-9239-b5246427c4f9","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-04-05-35-07","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-04-05-35-07","identifierUris":["http://cli_test_sp_with_kv_existing_certlkaqyxizcwjmqdudq46s7id4rzoz7s6csimsdzi4h52"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"97797AA7E1045846041B016ECF23A202D21A8199","endDate":"2019-02-04T05:35:04Z","keyId":"f19fb4b4-ea30-4285-a36a-cbcd42f0c126","startDate":"2018-08-04T05:35:23.116471Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-35-07 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-04-05-35-07","id":"681602f6-6fc8-4a2e-a945-f77f0181d849","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-04-05-35-07 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-04-05-35-07","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f63b05c3-54bd-48b3-ad6c-2bd66f03e2d1","deletionTimestamp":"2018-08-23T05:32:49Z","acceptMappedClaims":null,"addIns":[],"appId":"20da5b61-3896-46ae-bd58-6f20c26866c4","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-32-42","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-32-42","identifierUris":["http://clisp-test-c2v3oscg5"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-32-42 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-32-42","id":"bc90940b-33af-4e6b-943b-369101bd4d76","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-32-42 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-32-42","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:32:46.78509Z","keyId":"68c549ca-1088-4032-acd5-f7bc05621bba","startDate":"2018-08-23T05:32:46.78509Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f67ba8d2-fb8e-4019-89be-ee28db66caad","deletionTimestamp":"2018-08-23T05:33:33Z","acceptMappedClaims":null,"addIns":[],"appId":"4f5b9855-dd2c-4960-bf25-13b9a5cc6940","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-23-05-33-03","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-23-05-33-03","identifierUris":["http://cli_create_rbac_sp_with_passwordyghhmnqdnvmmoxclixeqtd4kxpytkugj57x2o67jisj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-33-03 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-23-05-33-03","id":"99fe2a93-a9d8-4594-aad7-4ba0f88cbaf7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-23-05-33-03 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-23-05-33-03","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-23T05:33:03.3464Z","keyId":"d2774627-d2e9-49a0-a50f-2fa85322b4ec","startDate":"2018-08-23T05:33:03.3464Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f6a2f6df-359f-46b3-9042-d40dad4179b5","deletionTimestamp":"2018-08-30T19:15:32Z","acceptMappedClaims":null,"addIns":[],"appId":"e2830d9f-55b8-4cdc-a9dc-eb43930c7a66","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-spburtgqc","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-spburtgqc on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-spburtgqc","id":"409d528f-f432-49a7-ade1-0b08f167e796","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-spburtgqc on your behalf.","userConsentDisplayName":"Access + cli-native-spburtgqc","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f76806a7-f09f-4b2c-be54-5a269cee5b11","deletionTimestamp":"2018-08-15T11:04:02Z","acceptMappedClaims":null,"addIns":[],"appId":"a63efd38-a2a5-4ba9-aa75-22bd848ee026","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappdab875568","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappdab875568","identifierUris":["http://easycreate.azure.com/javasdkappdab875568"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-03T11:03:56.76379Z","keyId":"87eedb6a-e45c-46c7-b33a-154c2b9148c1","startDate":"2018-08-15T11:03:56.76379Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-23T11:03:56.7524379Z","keyId":"8d5e24f7-3349-42bb-9476-e89e6b9e9c2c","startDate":"2018-08-15T11:03:56.7524379Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappdab875568 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappdab875568","id":"57a979f6-8719-4392-957b-09f48480294c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappdab875568 on your behalf.","userConsentDisplayName":"Access + javasdkappdab875568","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappdab875568"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f7c1ca2f-edd2-41e0-b319-4da5b5f57f65","deletionTimestamp":"2018-08-04T05:33:55Z","acceptMappedClaims":null,"addIns":[],"appId":"365a9e6a-8e43-4ed0-b9a4-e0f68a66e698","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-native-suflfir6y","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":[],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-native-suflfir6y on behalf of the signed-in + user.","adminConsentDisplayName":"Access cli-native-suflfir6y","id":"2caea3f3-16c5-4f83-b481-1951291941e9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-native-suflfir6y on your behalf.","userConsentDisplayName":"Access + cli-native-suflfir6y","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":true,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"5778995a-e1bf-45b8-affa-663a9f3f4d04","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f84210d8-aa24-4b69-a0b2-64c724816c3d","deletionTimestamp":"2018-08-08T05:45:07Z","acceptMappedClaims":null,"addIns":[],"appId":"a65d9b7d-9fc8-4496-bdaf-0496f45b7b39","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-08-05-44-55","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-08-05-44-55","identifierUris":["http://cli_create_rbac_sp_with_certwnxphl7rnohkzpfjowbqol2pjo3njry7jpfeqrrlguhe6ca"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"ABE652A76F1B273CD7AECCF3E060460AE8F01483","endDate":"2019-08-08T05:45:06.181894Z","keyId":"afa85a34-501c-40fb-9a8c-7138ab2fdc7e","startDate":"2018-08-08T05:45:06.181894Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-44-55 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-08-05-44-55","id":"ab2900f6-cfe2-444a-888b-5f3de420196c","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-08-05-44-55 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-08-05-44-55","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f84e8a0a-a1ae-4ead-aee0-24227249393d","deletionTimestamp":"2018-08-10T05:39:26Z","acceptMappedClaims":null,"addIns":[],"appId":"e56fb08b-993d-4378-b6e6-870c9147e460","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-39-18","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-39-18","identifierUris":["http://cli_test_sp_with_kv_existing_certbj5o2j62alccctwwkgkgspd56rpvidwb5dn3pj4zoz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"4B7B1E09C8511B8CC50B83044FBCD83218D54226","endDate":"2019-08-10T05:39:25.267178Z","keyId":"804bf876-f2bf-4963-82a5-00a047ba21c0","startDate":"2018-08-10T05:39:25.267178Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-39-18 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-39-18","id":"d5ee7fa8-64a9-4b21-bd7d-a92acf44ba68","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-39-18 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-39-18","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f881e8c9-af25-47a7-91db-3e78e76ed5c1","deletionTimestamp":"2018-08-02T05:32:57Z","acceptMappedClaims":null,"addIns":[],"appId":"cf50fa6f-5091-49ab-8193-6d9f239f7c04","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graphndlsw","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graphndlsw","identifierUris":["http://cli-graphndlsw"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graphndlsw on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graphndlsw","id":"7cceb432-e2c6-4e89-8387-a09f1b3e15d7","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graphndlsw on your behalf.","userConsentDisplayName":"Access + cli-graphndlsw","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"f9a7219f-2ad8-4d76-867a-292e4a020efc","deletionTimestamp":"2018-08-30T19:17:48Z","acceptMappedClaims":null,"addIns":[],"appId":"b2ead965-2d8e-4b80-84bd-1081093123ee","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-30-19-16-38","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-30-19-16-38","identifierUris":["http://cli_test_sp_with_kv_new_certycaiodgjdn5nhyzs6hv72y6gze56garlzcacmkncznqfgo4"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"65E5858CDEB73D260535E6D915B1AAD8D96C8841","endDate":"2019-08-30T19:17:17.858081Z","keyId":"025315b7-fa06-409d-a026-75e2d5ba31ad","startDate":"2018-08-30T19:17:17.858081Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-16-38 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-30-19-16-38","id":"a27a19d0-2574-4d75-8e40-dc5ff1e3a146","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-30-19-16-38 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-30-19-16-38","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"fb546a07-b066-422b-bd8c-2eeac652ddb9","deletionTimestamp":"2018-08-08T00:15:08Z","acceptMappedClaims":null,"addIns":[],"appId":"8b37d3a3-f725-4f35-8f1c-6442aa71b4ea","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkapp325824387","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkapp325824387","identifierUris":["http://easycreate.azure.com/javasdkapp325824387"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"WTJWeWRBPT0=","endDate":"2018-11-16T00:15:05.627Z","keyId":"ef71090d-fe16-4fb8-8570-7fd9ff745d5e","startDate":"2018-08-08T00:15:05.627Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkapp325824387 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkapp325824387","id":"bbc18e73-ca14-4364-af6e-5a39f402c150","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkapp325824387 on your behalf.","userConsentDisplayName":"Access + javasdkapp325824387","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkapp325824387"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"fb9ca631-c3c0-40b0-8a5f-cdf2454b7e51","deletionTimestamp":"2018-08-03T05:25:53Z","acceptMappedClaims":null,"addIns":[],"appId":"60d1a537-afa1-40cf-9a4f-a1e59d74609a","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-03-05-07-25","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-03-05-07-25","identifierUris":["http://clitestem7r6q5gcj"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-25 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-03-05-07-25","id":"92c2f865-bcbd-47fa-84a8-785cfb32c669","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-03-05-07-25 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-03-05-07-25","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-03T05:07:25.708122Z","keyId":"d34e4444-e8dc-4b97-831f-ae121fa916e3","startDate":"2018-08-03T05:07:25.708122Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"fc0abfb9-c11b-4d7d-95d4-15a859ac7005","deletionTimestamp":"2018-08-27T12:30:35Z","acceptMappedClaims":null,"addIns":[],"appId":"9769d8c6-37ba-4f2d-b244-bac11f65b29a","appRoles":[],"availableToOtherTenants":false,"displayName":"javasdkappa04831278","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/javasdkappa04831278","identifierUris":["http://easycreate.azure.com/javasdkappa04831278"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[{"customKeyIdentifier":"Y2VydA==","endDate":"2018-11-15T12:30:32.4422737Z","keyId":"3740609b-cd44-43a9-ba02-e33fd4d41872","startDate":"2018-08-27T12:30:32.4422737Z","type":"AsymmetricX509Cert","usage":"Verify","value":null},{"customKeyIdentifier":"Y2VydA==","endDate":"2018-12-05T12:30:32.4369091Z","keyId":"fee523bf-2f76-4a32-afaf-1fc73b7e84bd","startDate":"2018-08-27T12:30:32.4369091Z","type":"AsymmetricX509Cert","usage":"Verify","value":null}],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access javasdkappa04831278 on behalf of the signed-in user.","adminConsentDisplayName":"Access + javasdkappa04831278","id":"d608bdc5-f8b0-4116-b5d5-48ea3aff1214","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access javasdkappa04831278 on your behalf.","userConsentDisplayName":"Access + javasdkappa04831278","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":"cGFzc3dkMg==","endDate":"2018-09-16T12:30:34.162618Z","keyId":"097e1fcd-66e2-48d8-bf23-4362ee9d6ef2","startDate":"2018-08-27T12:30:34.162618Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/javasdkappa04831278"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"fc597e51-9049-4a5a-8d9b-7f3b41d7ec99","deletionTimestamp":"2018-08-10T05:37:40Z","acceptMappedClaims":null,"addIns":[],"appId":"c7c5fd24-07dd-4238-a1d3-2a10fc2523dd","appRoles":[],"availableToOtherTenants":false,"displayName":"cli-graph2tccz","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cli-graph2tccz","identifierUris":["http://cli-graph2tccz"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":true,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cli-graph2tccz on behalf of the signed-in user.","adminConsentDisplayName":"Access + cli-graph2tccz","id":"6e9f295a-6266-47fb-ae3a-e681b4592a2d","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cli-graph2tccz on your behalf.","userConsentDisplayName":"Access + cli-graph2tccz","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://azureclitest-replyuri"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"fca12fef-2b18-4966-aa1a-027030d4f672","deletionTimestamp":"2018-08-03T14:54:47Z","acceptMappedClaims":null,"addIns":[],"appId":"ddbb2dcf-9668-4f8c-ac22-09a6d133de46","appRoles":[],"availableToOtherTenants":false,"displayName":"ssp99e30163bda9c","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://easycreate.azure.com/ssp99e30163bda9c","identifierUris":["http://easycreate.azure.com/ssp99e30163bda9c"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access ssp99e30163bda9c on behalf of the signed-in user.","adminConsentDisplayName":"Access + ssp99e30163bda9c","id":"5c010175-2e47-42b2-b9ef-bd7e1a47b827","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access ssp99e30163bda9c on your behalf.","userConsentDisplayName":"Access + ssp99e30163bda9c","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":["http://easycreate.azure.com/ssp99e30163bda9c"],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"fe6b27e8-e053-4023-9727-89d1cc48fbfb","deletionTimestamp":"2018-08-07T05:31:39Z","acceptMappedClaims":null,"addIns":[],"appId":"49721160-26ea-4d0a-b193-f1bf7089e0b3","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-07-05-08-24","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-07-05-08-24","identifierUris":["http://clitest7suegisked"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-24 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-07-05-08-24","id":"dd45e292-831e-4d0b-8d14-f502afe561f8","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-07-05-08-24 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-07-05-08-24","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-07T05:08:24.374331Z","keyId":"55ad8a64-da85-4f6d-95bf-0ab9dc8d3afd","startDate":"2018-08-07T05:08:24.374331Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ff119b63-0e33-4a85-a12e-205244304243","deletionTimestamp":"2018-08-31T20:46:28Z","acceptMappedClaims":null,"addIns":[],"appId":"c0ba8bdd-0400-4838-af2f-f48f69ec8e8f","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"5b0aa0e1-9a6b-4477-87cb-10b7ee865ca3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ff5b25bc-1c5d-42f0-aaf0-babc85f6c768","deletionTimestamp":"2018-08-10T06:42:52Z","acceptMappedClaims":null,"addIns":[],"appId":"544b1bf6-1ffc-4eef-b1a9-5e93d0e6ff94","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-10-05-11-40","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-10-05-11-40","identifierUris":["http://clitesthq55suiiwq"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-40 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-10-05-11-40","id":"cc51c30a-c34a-436c-9129-1493e7d0e42b","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-10-05-11-40 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-10-05-11-40","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-10T05:11:40.939102Z","keyId":"5e7f35a9-26d9-4111-a7eb-891457828309","startDate":"2018-08-10T05:11:40.939102Z","value":null}],"publicClient":null,"publisherDomain":"AzureSDKTeam.onmicrosoft.com","recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ff60be9a-666a-4dcf-88ce-3b6066e770da","deletionTimestamp":"2018-08-29T16:00:55Z","acceptMappedClaims":null,"addIns":[],"appId":"dc14acd2-59dc-4487-97d0-7375ee41038d","appRoles":[],"availableToOtherTenants":false,"displayName":"azure-cli-2018-08-29-16-00-30","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://azure-cli-2018-08-29-16-00-30","identifierUris":["http://cli-graphqq7hy"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-00-30 on behalf of the signed-in + user.","adminConsentDisplayName":"Access azure-cli-2018-08-29-16-00-30","id":"37a14273-4229-4e59-ba14-ca7db43841db","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access azure-cli-2018-08-29-16-00-30 on your behalf.","userConsentDisplayName":"Access + azure-cli-2018-08-29-16-00-30","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[{"customKeyIdentifier":null,"endDate":"2019-08-29T16:00:30.462211Z","keyId":"935bab13-9970-4a68-816d-3b21c4d13237","startDate":"2018-08-29T16:00:30.462211Z","value":null}],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}]}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['161944'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:40 GMT'] + duration: ['2400863'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [0Tx2hAAAj452VzreBCaDWXGZxqKH2vtS4n1JGBmeb2k=] + ocp-aad-session-key: [i-qnENzP1prEh1720G8u0hW9-gkpBmKj_ajEIfoEfkJL46URcmwOz00gWcRL-J1CN3gg_aTycvo20ueNBZ2rBNf881SPc8VmFX0Lp53YNPLyQFTRIkFSAbFSEegbbyjhaVQLTtT05Q5hwiIDOXSfhw.Uq2Q8VXGijQD7Iou92SKZiU5y0Beul3wNKa0MyqCNS0] + pragma: [no-cache] + request-id: [59bbb572-4e05-4276-8541-9d911e173331] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications?$filter=displayName%20eq%20%27pytest_deleted_app%27&api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ad747a05-4d48-4d9d-bdd0-fbd1af28c94a","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"283f3300-4aa0-44ce-ac32-0d998d75c6ea","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"2adabca6-4f3c-4ab6-8da0-ca66dfa72524","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}]}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['1729'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:41 GMT'] + duration: ['927066'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [9uOBoijaUfo2I5LS4GEX2MHLLzJcQ0fpR2lDyaYA1pw=] + ocp-aad-session-key: [eoGVpzSQy7I8Cx1yCCjlhCBNHDBDxZCDMC5CAvtOe4OKJT3HJQ8iw6t7zzEeXgi1AhJ0PDYVAT_IY8aspkTSlA9gBchEmxob9-rFr-Fq7Z7ZwHq-sEC9nymPwkojBaWwQOqwRO8GYwWs0xZlyPipHA.7klWILpvsUQEz6J-VeBYBCFFjYgVZpxwm5tU_1TBvaA] + pragma: [no-cache] + request-id: [b8267e30-d320-4b14-bbe1-f8458994d4cb] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications/ad747a05-4d48-4d9d-bdd0-fbd1af28c94a?api-version=1.6 + response: + body: {string: ''} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + dataserviceversion: [1.0;] + date: ['Fri, 31 Aug 2018 20:56:42 GMT'] + duration: ['1729766'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [PVmdQVFo4vbIl3qFfJQXwZ8eIdlDxR0EypQwMc2EbEk=] + ocp-aad-session-key: [AOZgB6joQ3eLKEtsSWXy0QvCxXSazRh_blZr3obmh9AhRz7I85I6cnKassOicOCUAx6kmlggkqwmC1CcbIKNsPqbMgqIg_DsOz68Ut3U_k6khIVUKm8WZW2GrGByUW2LL1YzLbRBJEGgFReKLPr6dQ.FYQ5ls_OjctYgIkZjFb7HzphRmmjGfmgRLn59EI5Mg8] + pragma: [no-cache] + request-id: [c7940641-bea1-415a-a43b-c098e00ea131] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 204, message: No Content} +- request: + body: '{"availableToOtherTenants": false, "displayName": "pytest_deleted_app", + "identifierUris": ["http://pytest_deleted_app.org"]}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['124'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications?api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.Application/@Element","odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d8e83cb9-781d-4655-a674-1e68ec561e34","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"b56a4111-784d-4906-b98c-14be98a693c6","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logo@odata.mediaContentType":"application/json;odata=minimalmetadata; + charset=utf-8","logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"a34157ff-fa95-4b12-a773-f82e2f50f6bc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['1812'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:42 GMT'] + duration: ['4947814'] + expires: ['-1'] + location: ['https://graph.windows.net/myaddomain.onmicrosoft.com/directoryObjects/d8e83cb9-781d-4655-a674-1e68ec561e34/Microsoft.DirectoryServices.Application'] + ocp-aad-diagnostics-server-name: [Xggm2lV7GH3yEUVfEvzm26S1umz7EprHWD9kDtATl70=] + ocp-aad-session-key: [DdBC-llDmDpeVoSbFOHaKl0ovx2bP6tWbOtcbiAg4AIEStPf5WVmX2PX1oIg_j77VSHZloNFlJoKmB25S4Ipw2u2OHlfB80Amm4SdRZY6UDSa7v2h2FkFrBsY5A1QW3RjIMCdMwRjRRHH1Ps7sRfew.FgVC9Zm0oSwCCQGvnfyzDq_ldlt3CjgZ5fy7ytp6CPA] + pragma: [no-cache] + request-id: [2eb748d1-bb81-45a1-9cbd-26ff0bea9823] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 201, message: Created} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications/d8e83cb9-781d-4655-a674-1e68ec561e34?api-version=1.6 + response: + body: {string: ''} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + dataserviceversion: [1.0;] + date: ['Fri, 31 Aug 2018 20:56:43 GMT'] + duration: ['1691878'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [grZU8xQEKowxm2ePOB20cXqE286qtzxM001K483Yy3g=] + ocp-aad-session-key: [fBGSp31EWKfDDBGUaHO3i9Lq7wEJ0gSUzNHKrs4kd6vdnQoehdAujX4iGudQoiLKCe1-F6W57A2Rx3MhazOx2yhxMmFRYNs7Fv9b0zyygS8NmKtZKhaRJWuXmo0pDn2iWNDoT7frLKWzzSO9OSl9vQ.OmvMLsm7H0V_atKx4Ch1diqU054J5gONjkrHMgPS10c] + pragma: [no-cache] + request-id: [b2596685-a6c5-4010-a978-e4c87e1f6743] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 204, message: No Content} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/deletedApplications?$filter=displayName%20eq%20%27pytest_deleted_app%27&api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#deletedDirectoryObjects/Microsoft.DirectoryServices.Application","value":[{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"c4cdd8d8-a7e2-44c6-85fc-f082d16a4432","deletionTimestamp":"2018-08-31T19:50:20Z","acceptMappedClaims":null,"addIns":[],"appId":"6343b53e-5851-461c-944d-c30b0168b361","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"53785f8a-3f78-4b50-963f-21667e2feec9","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"2765cff9-3f27-4aa3-8ab8-97dffd6969ce","deletionTimestamp":"2018-08-31T20:43:39Z","acceptMappedClaims":null,"addIns":[],"appId":"eb81811f-354a-4a93-b253-f2ba382bc0f7","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"e871c30a-0e5f-4609-a283-78c93a573160","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ff119b63-0e33-4a85-a12e-205244304243","deletionTimestamp":"2018-08-31T20:46:28Z","acceptMappedClaims":null,"addIns":[],"appId":"c0ba8bdd-0400-4838-af2f-f48f69ec8e8f","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"5b0aa0e1-9a6b-4477-87cb-10b7ee865ca3","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"ad747a05-4d48-4d9d-bdd0-fbd1af28c94a","deletionTimestamp":"2018-08-31T20:56:42Z","acceptMappedClaims":null,"addIns":[],"appId":"283f3300-4aa0-44ce-ac32-0d998d75c6ea","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"2adabca6-4f3c-4ab6-8da0-ca66dfa72524","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d8e83cb9-781d-4655-a674-1e68ec561e34","deletionTimestamp":"2018-08-31T20:56:43Z","acceptMappedClaims":null,"addIns":[],"appId":"b56a4111-784d-4906-b98c-14be98a693c6","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"a34157ff-fa95-4b12-a773-f82e2f50f6bc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}]}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['8134'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:43 GMT'] + duration: ['4270319'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [uw2DI55YPxO27iCQ9gmp7jkFjvTBnlg/TMjn48ai3jY=] + ocp-aad-session-key: [sf9aF8ktoxx9Z4JXCT5wCQRTEJX_xtTceWROIKDWG6F7g1P6B9w0psHkVzOYQRU7ODDk19U1vxtnq8CMKyi39-dEyyZl270-fF027Za499H46JeB3bNVIGmmLKpe0TDYRs2hX_g81aMHCqGgdMQ1NQ.6PIlFCg6d2SQZ0tAcDRa20_eqhspm33jfEVUQHTJmAM] + pragma: [no-cache] + request-id: [3ec14571-75e7-4aa4-9e56-d0f53eb9dc2f] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/deletedApplications/d8e83cb9-781d-4655-a674-1e68ec561e34/restore?api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.Application/@Element","odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"d8e83cb9-781d-4655-a674-1e68ec561e34","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"b56a4111-784d-4906-b98c-14be98a693c6","appRoles":[],"availableToOtherTenants":false,"displayName":"pytest_deleted_app","errorUrl":null,"groupMembershipClaims":null,"homepage":null,"identifierUris":["http://pytest_deleted_app.org"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logo@odata.mediaContentType":"application/json;odata=minimalmetadata","logoUrl":null,"oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access pytest_deleted_app on behalf of the signed-in user.","adminConsentDisplayName":"Access + pytest_deleted_app","id":"a34157ff-fa95-4b12-a773-f82e2f50f6bc","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access pytest_deleted_app on your behalf.","userConsentDisplayName":"Access + pytest_deleted_app","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":null,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":[],"requiredResourceAccess":[],"samlMetadataUrl":null,"signInAudience":"AzureADMyOrg","tokenEncryptionKeyId":null}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['1797'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Fri, 31 Aug 2018 20:56:45 GMT'] + duration: ['1844675'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [u84kEvNmBHxW4/vtHqUleUYQGGbAjaquR19gMFnyQJs=] + ocp-aad-session-key: [ODEzNBBKI_unHfTkZ0qrm1-NbQsaJcQRFiH9YoJWFG2sdDPkWtK2xKjKNsqe0kxL0Me8bRVzdEW_FScrZz57TFbiTd1pT0Qs64QiM8ryk31R8i3Y3BUA2EenezgkJA7PZwkmd4P4MITWs3UJlg4WNQ.TvoZ2Z06Xb6PYex2N3S1iIJqfGxR-_oK1vf_ZQGok_Y] + pragma: [no-cache] + request-id: [a29bbd1a-c247-4e72-a63e-562caa35994e] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/applications/d8e83cb9-781d-4655-a674-1e68ec561e34?api-version=1.6 + response: + body: {string: ''} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + dataserviceversion: [1.0;] + date: ['Fri, 31 Aug 2018 20:56:46 GMT'] + duration: ['4576526'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [TQODFBO79eHT34Qk5647Ew5MUFYqECRDq+7SetrUnAQ=] + ocp-aad-session-key: [jTDOfgZKA6fBbSmtm6Y6DqlXQPsw9qwC6CIf8ZW8vVRx-vRaQS0iTRCvqRuRkHs-ymzg6Ps34zz09sewC1kVFedzv3BQ0z7CvTI3nOpwMEGShCgaG4CNCF9nTaCZ8n45AhjZE-rAp1jk1YmDNjrMFA.UgeM-K3Pnr0jgAtbjxZEEk6zZ85kUcD5lft5iKSXv0Y] + pragma: [no-cache] + request-id: [f254c3b6-18dd-45a3-aa72-d816add900f2] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 204, message: No Content} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-graphrbac/1.6 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/deletedApplications/d8e83cb9-781d-4655-a674-1e68ec561e34?api-version=1.6 + response: + body: {string: ''} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + dataserviceversion: [1.0;] + date: ['Fri, 31 Aug 2018 20:56:46 GMT'] + duration: ['3212421'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [eDBRdQV8u+1gM9UsCxIgTpJXzthWX/WsoVn8Knk1ff0=] + ocp-aad-session-key: [QCGH8piRDRcrxiuSmua-UtN0p2eXykCL67fOXYp1uMbM0pwrNWjnOC2YQkzK6w-32LEtfqbjOQui-IPhRudQTRVuga0mntxM6rxq-Tj6vqCOoSGA3hc7G7_NV7tYOJPiszB7sWcK4-EuYhjdh6ZKLw.YlhK9PdZ_sM3dFPI1oscIVMobFRW3NIU5H9FL22rek8] + pragma: [no-cache] + request-id: [0f9e5c27-8cac-4234-bc74-8ddb29689d63] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 204, message: No Content} +version: 1 diff --git a/azure-graphrbac/tests/recordings/test_graphrbac.test_signed_in_user.yaml b/azure-graphrbac/tests/recordings/test_graphrbac.test_signed_in_user.yaml new file mode 100644 index 000000000000..74d53726f7d2 --- /dev/null +++ b/azure-graphrbac/tests/recordings/test_graphrbac.test_signed_in_user.yaml @@ -0,0 +1,204 @@ +interactions: +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) msrest/0.6.0 msrest_azure/0.4.34 + azure-graphrbac/0.50.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/me?api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/@Element","odata.type":"Microsoft.DirectoryServices.User","objectType":"User","objectId":"5963f50c-7c43-405c-af7e-53294de76abd","deletionTimestamp":null,"accountEnabled":true,"ageGroup":null,"assignedLicenses":[{"disabledPlans":[],"skuId":"a403ebcc-fae0-4ca2-8c8c-7a907fd6c235"}],"assignedPlans":[{"assignedTimestamp":"2017-12-07T23:01:21Z","capabilityStatus":"Enabled","service":"AzureAnalysis","servicePlanId":"2049e525-b859-401b-b2a0-e0a31c4b1fe4"}],"city":null,"companyName":null,"consentProvidedForMinor":null,"country":null,"createdDateTime":"2016-01-06T17:18:25Z","creationType":null,"department":null,"dirSyncEnabled":null,"displayName":"Admin2","employeeId":null,"facsimileTelephoneNumber":null,"givenName":"Admin2","immutableId":null,"isCompromised":null,"jobTitle":null,"lastDirSyncTime":null,"legalAgeGroupClassification":null,"mail":null,"mailNickname":"admin2","mobile":null,"onPremisesDistinguishedName":null,"onPremisesSecurityIdentifier":null,"otherMails":["destanko@microsoft.com"],"passwordPolicies":"None","passwordProfile":null,"physicalDeliveryOfficeName":null,"postalCode":null,"preferredLanguage":"en-US","provisionedPlans":[],"provisioningErrors":[],"proxyAddresses":[],"refreshTokensValidFromDateTime":"2018-10-10T16:31:56Z","showInAddressList":null,"signInNames":[],"sipProxyAddress":null,"state":null,"streetAddress":null,"surname":"Admin2","telephoneNumber":null,"thumbnailPhoto@odata.mediaEditLink":"directoryObjects/5963f50c-7c43-405c-af7e-53294de76abd/Microsoft.DirectoryServices.User/thumbnailPhoto","usageLocation":"US","userIdentities":[],"userPrincipalName":"admin2@AzureSDKTeam.onmicrosoft.com","userState":null,"userStateChangedOn":null,"userType":"Member"}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['1796'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Thu, 11 Oct 2018 18:11:46 GMT'] + duration: ['361468'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [Hmgcuy1hpGi6KCpCk4BrqM0RyCbBpwqDLCqIAEp//qg=] + ocp-aad-session-key: [FTuAD5yaSVAu8MDnc_KzoZsMPGBnLD4GkXwIgsOaiROri1l9c1O-3NH1T4Kr-AV4Ca6o6oxRxSBvnxhIJtBV3QPztC-hTv80WSbNxrUwBpXhlTB3oIQ2dxmp97aRXKPW2yFwwZ9VOklkF_3LXxgVVQ.qcNJ00teWhRqYam7YVj7bIUszWj7hy0F7jP0SVElA6Y] + pragma: [no-cache] + request-id: [35aa08ab-05ad-4458-9351-73289661da11] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: '{"displayName": "pytestgroup_display", "mailEnabled": false, "mailNickname": + "pytestgroup_nickname", "securityEnabled": true}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['125'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) msrest/0.6.0 msrest_azure/0.4.34 + azure-graphrbac/0.50.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/groups?api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects/Microsoft.DirectoryServices.Group/@Element","odata.type":"Microsoft.DirectoryServices.Group","objectType":"Group","objectId":"537cef66-0503-4a1c-a2b6-a6958106e355","deletionTimestamp":null,"description":null,"dirSyncEnabled":null,"displayName":"pytestgroup_display","lastDirSyncTime":null,"mail":null,"mailNickname":"pytestgroup_nickname","mailEnabled":false,"onPremisesDomainName":null,"onPremisesNetBiosName":null,"onPremisesSamAccountName":null,"onPremisesSecurityIdentifier":null,"provisioningErrors":[],"proxyAddresses":[],"securityEnabled":true}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['652'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Thu, 11 Oct 2018 18:11:47 GMT'] + duration: ['1894328'] + expires: ['-1'] + location: ['https://graph.windows.net/myaddomain.onmicrosoft.com/directoryObjects/537cef66-0503-4a1c-a2b6-a6958106e355/Microsoft.DirectoryServices.Group'] + ocp-aad-diagnostics-server-name: [zPeOuJeNLZ5N5CAKU8XN6jsJ5sC6cSv6Gh6WpNy3E8g=] + ocp-aad-session-key: [ozuRYmXz3J04O2uMObVlFxbApVC8UQIdOs4znqQJwL8aqypzNeSpNHfNyTO000_amh5tJiPko_DhBgV2dm9agOCz66gZDPSN4ulOrZKBDf0HRcUk7PWALcXmujgTrvmJf6aQ-cpbgo_ZiOLhBtqifA.yiHydYJziSQlcNrXzsZesls6DoD6vdod_KyY6Oz_ayE] + pragma: [no-cache] + request-id: [17c8bf1f-dac3-419f-bf69-745ddab0707a] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 201, message: Created} +- request: + body: 'b''{"url": "https://graph.windows.net/myaddomain.onmicrosoft.com/directoryObjects/5963f50c-7c43-405c-af7e-53294de76abd"}''' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['119'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) msrest/0.6.0 msrest_azure/0.4.34 + azure-graphrbac/0.50.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/groups/537cef66-0503-4a1c-a2b6-a6958106e355/$links/owners?api-version=1.6 + response: + body: {string: ''} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + dataserviceversion: [1.0;] + date: ['Thu, 11 Oct 2018 18:11:48 GMT'] + duration: ['2061877'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [NecIdAbtcl2G5DavAD0ay+NyJ0bZ8m4qvkKAOpQmV0w=] + ocp-aad-session-key: [kfyS95haI3IP_UXPP20oeR0WsKXbc5ts_1jVXH2cu77zTZLnMjyA4uArAOWciBwcmuweAVO6jlSbyYp__4uuBLvvpuLg346jvL8Czhn7P3QVv8KEo1olM6GwFS8WBHVTto60sk8MbLrEAA5A8A9yQg.lJsdw-rKNIU60fyV0DkYGF-4DDZWEly7aL7ha7KLbqs] + pragma: [no-cache] + request-id: [4f4d1591-98a2-4ee1-a2a1-0afb57905f01] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 204, message: No Content} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) msrest/0.6.0 msrest_azure/0.4.34 + azure-graphrbac/0.50.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/me/ownedObjects?api-version=1.6 + response: + body: {string: '{"odata.metadata":"https://graph.windows.net/myaddomain.onmicrosoft.com/$metadata#directoryObjects","value":[{"odata.type":"Microsoft.DirectoryServices.Group","objectType":"Group","objectId":"8a9b1617-fc8d-4aa9-a42f-99868d314699","deletionTimestamp":null,"description":"first + group","dirSyncEnabled":null,"displayName":"firstgroup","lastDirSyncTime":null,"mail":null,"mailNickname":"0afc6ff5-b63b-4583-b7f0-6a639e64cc75","mailEnabled":false,"onPremisesDomainName":null,"onPremisesNetBiosName":null,"onPremisesSamAccountName":null,"onPremisesSecurityIdentifier":null,"provisioningErrors":[],"proxyAddresses":[],"securityEnabled":true},{"odata.type":"Microsoft.DirectoryServices.Application","objectType":"Application","objectId":"b48ab268-479a-4640-aa87-021e92ae2626","deletionTimestamp":null,"acceptMappedClaims":null,"addIns":[],"appId":"d5938293-ffce-440e-ae1e-92c0a569e1e4","appRoles":[],"availableToOtherTenants":false,"displayName":"cormazuresdkapp","errorUrl":null,"groupMembershipClaims":null,"homepage":"http://cormazuresdkapp","identifierUris":["https://AzureSDKTeam.onmicrosoft.com/fc187aa3-4458-4d6e-a4dc-bb5b07f68ea8"],"informationalUrls":{"termsOfService":null,"support":null,"privacy":null,"marketing":null},"isDeviceOnlyAuthSupported":null,"keyCredentials":[],"knownClientApplications":[],"logoutUrl":null,"logo@odata.mediaEditLink":"directoryObjects/b48ab268-479a-4640-aa87-021e92ae2626/Microsoft.DirectoryServices.Application/logo","logoUrl":null,"mainLogo@odata.mediaEditLink":"directoryObjects/b48ab268-479a-4640-aa87-021e92ae2626/Microsoft.DirectoryServices.Application/mainLogo","oauth2AllowIdTokenImplicitFlow":true,"oauth2AllowImplicitFlow":false,"oauth2AllowUrlPathMatching":false,"oauth2Permissions":[{"adminConsentDescription":"Allow + the application to access cormazuresdkapp on behalf of the signed-in user.","adminConsentDisplayName":"Access + cormazuresdkapp","id":"17083250-6cfd-4d23-b3c8-f4293c7aab44","isEnabled":true,"type":"User","userConsentDescription":"Allow + the application to access cormazuresdkapp on your behalf.","userConsentDisplayName":"Access + cormazuresdkapp","value":"user_impersonation"}],"oauth2RequirePostResponse":false,"optionalClaims":null,"orgRestrictions":[],"parentalControlSettings":{"countriesBlockedForMinors":[],"legalAgeGroupRule":"Allow"},"passwordCredentials":[],"publicClient":false,"publisherDomain":null,"recordConsentConditions":null,"replyUrls":["http://cormazuresdkapp"],"requiredResourceAccess":[{"resourceAppId":"00000002-0000-0000-c000-000000000000","resourceAccess":[{"id":"311a71cc-e848-46a1-bdf8-97ff7156d8e6","type":"Scope"}]}],"samlMetadataUrl":null,"signInAudience":null,"tokenEncryptionKeyId":null},{"odata.type":"Microsoft.DirectoryServices.Group","objectType":"Group","objectId":"537cef66-0503-4a1c-a2b6-a6958106e355","deletionTimestamp":null,"description":null,"dirSyncEnabled":null,"displayName":"pytestgroup_display","lastDirSyncTime":null,"mail":null,"mailNickname":"pytestgroup_nickname","mailEnabled":false,"onPremisesDomainName":null,"onPremisesNetBiosName":null,"onPremisesSamAccountName":null,"onPremisesSecurityIdentifier":null,"provisioningErrors":[],"proxyAddresses":[],"securityEnabled":true}]}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + content-length: ['3187'] + content-type: [application/json; odata=minimalmetadata; streaming=true; charset=utf-8] + dataserviceversion: [3.0;] + date: ['Thu, 11 Oct 2018 18:11:48 GMT'] + duration: ['467986'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [IvZLzCWcIFkxniLh6wneapEsVoTEBBYbEdFPeHsJSbc=] + ocp-aad-session-key: [pcnTvyAR10Cr9l58vygoDTGfTJ5k0Pi-sUQI79wodAsExQYVjUD-GUi5Js0-e6AhPAbdkz-OmgH3KTXZXAWMozI2yRI3-Nz-sq_jW92gwn6loJGZ1RFrq__AK_JbRvZ32TE-w4uwXCWnLRB2pFZTgg.Lh6bhCgkhtHXLoJoq0AHO3OAPOIOMHr4rKB2NINva14] + pragma: [no-cache] + request-id: [2e48205f-dac7-4b15-a225-bc4f676248a2] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) msrest/0.6.0 msrest_azure/0.4.34 + azure-graphrbac/0.50.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/groups/537cef66-0503-4a1c-a2b6-a6958106e355/$links/owners/5963f50c-7c43-405c-af7e-53294de76abd?api-version=1.6 + response: + body: {string: '{"odata.error":{"code":"Request_BadRequest","message":{"lang":"en","value":"The + group must have at least one owner, hence this owner cannot be removed."},"date":"2018-10-11T18:11:49","requestId":"041e7edc-b43a-40a1-a09f-7bb7f50bf52f","values":null}}'} + headers: + access-control-allow-origin: ['*'] + cache-control: [private] + content-length: ['249'] + content-type: [application/json; odata=minimalmetadata; charset=utf-8] + date: ['Thu, 11 Oct 2018 18:11:49 GMT'] + duration: ['547491'] + ocp-aad-diagnostics-server-name: [NecIdAbtcl2G5DavAD0ay+NyJ0bZ8m4qvkKAOpQmV0w=] + ocp-aad-session-key: [n8LsltdLLxswpn_9r80QBmZks8bt9ysACyUptkICE6lA9u1G0gRXP2ThTW-YsK6VTHY2T5twpgtlNZCaUAKagIWtgTHTITEZCiX__QozY0fD-kX_9Qy81TTd9VUDmeycRAjN6AOKiHDG93tVwq1A7g.ziQAFN7cCWLdq-ylYi-pVZ9Irs_lviAhN3fNGVcN_Ko] + request-id: [041e7edc-b43a-40a1-a09f-7bb7f50bf52f] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 400, message: Bad Request} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) msrest/0.6.0 msrest_azure/0.4.34 + azure-graphrbac/0.50.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://graph.windows.net/myaddomain.onmicrosoft.com/groups/537cef66-0503-4a1c-a2b6-a6958106e355?api-version=1.6 + response: + body: {string: ''} + headers: + access-control-allow-origin: ['*'] + cache-control: [no-cache] + dataserviceversion: [1.0;] + date: ['Thu, 11 Oct 2018 18:11:50 GMT'] + duration: ['3153263'] + expires: ['-1'] + ocp-aad-diagnostics-server-name: [YPT0bBpwREL5IJMIvN9GoYV1GS3mAXpIf09yabKcdz0=] + ocp-aad-session-key: [A_ccF75B-1W_ehwSbcEokBU3sFgBNdfaVp3fPPfTOg36QxNQNNiE3xc4A-rmSec8Q_WE7z_Oq_PdkCvWAMVzUlWo6fpPMLCnf-8IcPhwsFjRcBhSGdi2S1QuGqw4kGQMgAJYh0vf6zIIJOYA2dRBgg.cZZrJFvO-CRKaXgYhhPMnzfdL--vpcbx5Zb0skHFR8c] + pragma: [no-cache] + request-id: [8a84f892-fdf4-4e42-a197-c9e923d5d2e3] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-aspnet-version: [4.0.30319] + x-content-type-options: [nosniff] + x-ms-dirapi-data-contract-version: ['1.6'] + x-powered-by: [ASP.NET] + status: {code: 204, message: No Content} +version: 1 diff --git a/azure-graphrbac/tests/test_graphrbac.py b/azure-graphrbac/tests/test_graphrbac.py index f52d41ed43c3..f1fa07b04785 100644 --- a/azure-graphrbac/tests/test_graphrbac.py +++ b/azure-graphrbac/tests/test_graphrbac.py @@ -7,9 +7,10 @@ #-------------------------------------------------------------------------- import unittest -import azure.graphrbac +import azure.graphrbac.models from devtools_testutils import AzureMgmtTestCase +import pytest class GraphRbacTest(AzureMgmtTestCase): @@ -20,6 +21,86 @@ def setUp(self): tenant_id=self.settings.AD_DOMAIN ) + def _build_object_url(self, object_id): + return "https://graph.windows.net/{}/directoryObjects/{}".format( + self.settings.AD_DOMAIN, + object_id + ) + + def test_signed_in_user(self): + + user = self.graphrbac_client.signed_in_user.get() + assert user.mail_nickname.startswith("admin") # Assuming we do the test with adminXXX account + + # Create a group, and check I own it + group_create_parameters = azure.graphrbac.models.GroupCreateParameters( + display_name="pytestgroup_display", + mail_nickname="pytestgroup_nickname" + ) + + group = None + try: + group = self.graphrbac_client.groups.create(group_create_parameters) + self.graphrbac_client.groups.add_owner( + group.object_id, + self._build_object_url(user.object_id) + ) + + owned_objects = list(self.graphrbac_client.signed_in_user.list_owned_objects()) + + for obj in owned_objects: + if obj.display_name == "pytestgroup_display": + break + else: + pytest.fail("Didn't found the group I just created in my owned objects") + + try: + self.graphrbac_client.groups.remove_owner( + group.object_id, + user.object_id + ) + pytest.fail("Remove the only owner MUST fail") + except azure.graphrbac.models.GraphErrorException as err: + assert "The group must have at least one owner, hence this owner cannot be removed." in err.message + + finally: + if group: + self.graphrbac_client.groups.delete(group.object_id) + + def test_deleted_applications(self): + + existing_deleted_applications = list(self.graphrbac_client.deleted_applications.list()) + + # Delete the app if already exists + for app in self.graphrbac_client.applications.list(filter="displayName eq 'pytest_deleted_app'"): + self.graphrbac_client.applications.delete(app.object_id) + + # Create an app + app = self.graphrbac_client.applications.create({ + 'available_to_other_tenants': False, + 'display_name': 'pytest_deleted_app', + 'identifier_uris': ['http://pytest_deleted_app.org'] + }) + # Delete the app + self.graphrbac_client.applications.delete(app.object_id) + + # I should see it now in deletedApplications + existing_deleted_applications = list(self.graphrbac_client.deleted_applications.list( + filter="displayName eq 'pytest_deleted_app'" + )) + # At least one, but if you executed this test a lot, you might see several app deleted with this name + assert len(existing_deleted_applications) >= 1 + assert all(app.display_name == 'pytest_deleted_app' for app in existing_deleted_applications) + + # Ho my god, most important app ever + restored_app = self.graphrbac_client.deleted_applications.restore(app.object_id) + assert restored_app.object_id == app.object_id + + # You know what, no I don't care + self.graphrbac_client.applications.delete(app.object_id) + + self.graphrbac_client.deleted_applications.hard_delete(app.object_id) + def test_graphrbac_users(self): user = self.graphrbac_client.users.create( @@ -54,7 +135,8 @@ def test_graphrbac_users(self): def test_groups(self): group_create_parameters = azure.graphrbac.models.GroupCreateParameters( - "pytestgroup_display", "pytestgroup_nickname" + display_name="pytestgroup_display", + mail_nickname="pytestgroup_nickname" ) group = self.graphrbac_client.groups.create(group_create_parameters) self.assertEqual(group.display_name, "pytestgroup_display") @@ -72,17 +154,52 @@ def test_groups(self): self.graphrbac_client.groups.delete(group.object_id) def test_apps_and_sp(self): + + # Delete the app if already exists + for app in self.graphrbac_client.applications.list(filter="displayName eq 'pytest_app'"): + self.graphrbac_client.applications.delete(app.object_id) + app = self.graphrbac_client.applications.create({ 'available_to_other_tenants': False, 'display_name': 'pytest_app', - 'identifier_uris': ['http://pytest_app.org'] + 'identifier_uris': ['http://pytest_app.org'], + 'app_roles': [{ + "allowed_member_types": ["User"], + "description": "Creators can create Surveys", + "display_name": "SurveyCreator", + "id": "1b4f816e-5eaf-48b9-8613-7923830595ad", # Random, but fixed for tests + "is_enabled": True, + "value": "SurveyCreator" + }] + }) + + # Take this opportunity to test get_objects_by_object_ids + objects = self.graphrbac_client.objects.get_objects_by_object_ids({ + 'object_ids': [app.object_id], + 'types': ['Application'] }) + objects = list(objects) + assert len(objects) == 1 + assert objects[0].display_name == 'pytest_app' + + apps = list(self.graphrbac_client.applications.list( + filter="displayName eq 'pytest_app'" + )) + assert len(apps) == 1 + assert apps[0].app_roles[0].display_name == "SurveyCreator" sp = self.graphrbac_client.service_principals.create({ 'app_id': app.app_id, # Do NOT use app.object_id 'account_enabled': False }) + self.graphrbac_client.service_principals.update( + sp.object_id, + { + 'account_enabled': False + } + ) + self.graphrbac_client.service_principals.delete(sp.object_id) self.graphrbac_client.applications.delete(app.object_id) diff --git a/azure-keyvault/HISTORY.rst b/azure-keyvault/HISTORY.rst index fd300123b335..9487de1412ee 100644 --- a/azure-keyvault/HISTORY.rst +++ b/azure-keyvault/HISTORY.rst @@ -2,6 +2,11 @@ Release History =============== +1.1.0 (2018-08-07) +++++++++++++++++++++ + +* Adding support for multi-api and API profiles + 1.0.0 (2018-06-27) ++++++++++++++++++++ diff --git a/azure-keyvault/MANIFEST.in b/azure-keyvault/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-keyvault/MANIFEST.in +++ b/azure-keyvault/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-keyvault/README.rst b/azure-keyvault/README.rst index 6b7b5ab5bc08..75129f4f2d60 100644 --- a/azure-keyvault/README.rst +++ b/azure-keyvault/README.rst @@ -3,7 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Key Vault Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. diff --git a/azure-keyvault/azure/__init__.py b/azure-keyvault/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-keyvault/azure/__init__.py +++ b/azure-keyvault/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-keyvault/azure/keyvault/__init__.py b/azure-keyvault/azure/keyvault/__init__.py index 1b62621a32b1..8b7a70246d1e 100644 --- a/azure-keyvault/azure/keyvault/__init__.py +++ b/azure-keyvault/azure/keyvault/__init__.py @@ -9,20 +9,20 @@ # regenerated. # -------------------------------------------------------------------------- -from .custom import http_bearer_challenge_cache as HttpBearerChallengeCache -from .custom.http_bearer_challenge import HttpBearerChallenge -from .custom.http_challenge import HttpChallenge -from .custom.key_vault_client import CustomKeyVaultClient as KeyVaultClient -from .custom.key_vault_id import (KeyVaultId, - KeyId, - SecretId, - CertificateId, - CertificateIssuerId, - CertificateOperationId, - StorageAccountId, - StorageSasDefinitionId) -from .custom.key_vault_authentication import KeyVaultAuthentication, KeyVaultAuthBase, AccessToken -from .custom.http_message_security import generate_pop_key +from . import http_bearer_challenge_cache as HttpBearerChallengeCache +from .http_challenge import HttpChallenge +from .http_bearer_challenge import HttpBearerChallenge +from .key_vault_authentication import KeyVaultAuthentication, KeyVaultAuthBase, AccessToken +from .http_message_security import generate_pop_key +from .key_vault_id import (KeyVaultId, + KeyId, + SecretId, + CertificateId, + CertificateIssuerId, + CertificateOperationId, + StorageAccountId, + StorageSasDefinitionId) +from .key_vault_client import KeyVaultClient from .version import VERSION __all__ = ['KeyVaultClient', diff --git a/azure-keyvault/azure/keyvault/_internal.py b/azure-keyvault/azure/keyvault/_internal.py new file mode 100644 index 000000000000..bd9a40ba9071 --- /dev/null +++ b/azure-keyvault/azure/keyvault/_internal.py @@ -0,0 +1,410 @@ +#--------------------------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +#--------------------------------------------------------------------------------------------- + +import json +import uuid +import codecs +from base64 import b64encode, b64decode +import cryptography +from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes +from cryptography.hazmat.backends import default_backend +from cryptography.hazmat.primitives.asymmetric.rsa import RSAPrivateNumbers, RSAPublicNumbers, \ + generate_private_key, rsa_crt_dmp1, rsa_crt_dmq1, rsa_crt_iqmp, RSAPrivateKey, RSAPublicKey +from cryptography.hazmat.primitives.asymmetric import padding as asym_padding +from cryptography.hazmat.primitives import hashes, constant_time, padding, hmac + +from azure.keyvault.models import JsonWebKey + +def _a128cbc_hs256_encrypt(key, iv, plaintext, authdata): + if not key or not len(key) >= 32: + raise ValueError('key must be at least 256 bits for algorithm "A128CBC-HS256"') + if not iv or len(iv) != 16: + raise ValueError('iv must be 128 bits for algorithm "A128CBC-HS256"') + if not plaintext: + raise ValueError('plaintext must be specified') + if not authdata: + raise ValueError('authdata must be specified') + + # get the hmac key and the aes key from the specified key + hmac_key = key[:16] + aes_key = key[16:32] + + # calculate the length of authdata and store as bytes + auth_data_length = _int_to_bigendian_8_bytes(len(authdata) * 8) + + # pad the plaintext with pkcs7 + padder = padding.PKCS7(128).padder() + plaintext = padder.update(plaintext) + padder.finalize() + + # create the cipher and encrypt the plaintext + cipher = Cipher(algorithms.AES(aes_key), modes.CBC(iv), backend=default_backend()) + encryptor = cipher.encryptor() + ciphertext = encryptor.update(plaintext) + encryptor.finalize() + + # get the data to hash with HMAC, hash the data and take the first 16 bytes + hashdata = authdata + iv + ciphertext + auth_data_length + hmac_hash = hmac.HMAC(hmac_key, hashes.SHA256(), backend=default_backend()) + hmac_hash.update(hashdata) + tag = hmac_hash.finalize()[:16] + + return ciphertext, tag + + +def _a128cbc_hs256_decrypt(key, iv, ciphertext, authdata, authtag): + if not key or not len(key) >= 32: + raise ValueError('key must be at least 256 bits for algorithm "A128CBC-HS256"') + if not iv or len(iv) != 16: + raise ValueError('iv must be 128 bits for algorithm "A128CBC-HS256"') + if not ciphertext: + raise ValueError('ciphertext must be specified') + if not authdata: + raise ValueError('authdata must be specified') + if not authtag or len(authtag) != 16: + raise ValueError('authtag must be be 128 bits for algorithm "A128CBC-HS256"') + + hmac_key = key[:16] + aes_key = key[16:32] + auth_data_length = _int_to_bigendian_8_bytes(len(authdata) * 8) + + # ensure the authtag is the expected length for SHA256 hash + if not len(authtag) == 16: + raise ValueError('invalid tag') + + hashdata = authdata + iv + ciphertext + auth_data_length + hmac_hash = hmac.HMAC(hmac_key, hashes.SHA256(), backend=default_backend()) + hmac_hash.update(hashdata) + tag = hmac_hash.finalize()[:16] + + if not constant_time.bytes_eq(tag, authtag): + raise ValueError('"ciphertext" is not authentic') + + cipher = Cipher(algorithms.AES(aes_key), modes.CBC(iv), backend=default_backend()) + decryptor = cipher.decryptor() + plaintext = decryptor.update(ciphertext) + decryptor.finalize() + + # unpad the decrypted plaintext + padder = padding.PKCS7(128).unpadder() + plaintext = padder.update(plaintext) + padder.finalize() + + return plaintext + + +def _bytes_to_int(b): + if not b or not isinstance(b, bytes): + raise ValueError('b must be non-empty byte string') + + return int(codecs.encode(b, 'hex'), 16) + + +def _int_to_bytes(i): + h = hex(i) + if len(h) > 1 and h[0:2] == '0x': + h = h[2:] + + # need to strip L in python 2.x + h = h.strip('L') + + if len(h) % 2: + h = '0' + h + return codecs.decode(h, 'hex') + + +def _bstr_to_b64url(bstr, **kwargs): + """Serialize bytes into base-64 string. + :param str: Object to be serialized. + :rtype: str + """ + encoded = b64encode(bstr).decode() + return encoded.strip('=').replace('+', '-').replace('/', '_') + + +def _str_to_b64url(s, **kwargs): + """Serialize str into base-64 string. + :param str: Object to be serialized. + :rtype: str + """ + return _bstr_to_b64url(s.encode(encoding='utf8')) + + +def _b64_to_bstr(b64str): + """Deserialize base64 encoded string into string. + :param str b64str: response string to be deserialized. + :rtype: bytearray + :raises: TypeError if string format invalid. + """ + padding = '=' * (3 - (len(b64str) + 3) % 4) + b64str = b64str + padding + encoded = b64str.replace('-', '+').replace('_', '/') + return b64decode(encoded) + + +def _b64_to_str(b64str): + """Deserialize base64 encoded string into string. + :param str b64str: response string to be deserialized. + :rtype: str + :raises: TypeError if string format invalid. + """ + return _b64_to_bstr(b64str).decode('utf8') + + +def _int_to_bigendian_8_bytes(i): + b = _int_to_bytes(i) + + if len(b) > 8: + raise ValueError('the specified integer is to large to be represented by 8 bytes') + + if len(b) < 8: + b = (b'\0' * (8 - len(b))) + b + + return b + + +class _JoseObject(object): + + def deserialize(self, s): + d = json.loads(s) + self.__dict__ = d + return self + + def deserialize_b64(self, s): + self.deserialize(_b64_to_str(s)) + return self + + def serialize(self): + return json.dumps(self.__dict__) + + def serialize_b64url(self): + return _str_to_b64url(self.serialize()) + + +class _JoseHeader(_JoseObject): + + def to_compact_header(self): + return _str_to_b64url(json.dumps(self.__dict__)) + + +class _JweHeader(_JoseHeader): + def __init__(self, alg=None, kid=None, enc=None): + self.alg = alg + self.kid = kid + self.enc = enc + + @staticmethod + def from_compact_header(compact): + header = _JweHeader() + header.__dict__ = json.loads(_b64_to_str(compact)) + return header + + +class _JweObject(_JoseObject): + def __init__(self): + self.protected = None + self.encrypted_key = None + self.iv = None + self.ciphertext = None + self.tag = None + + def to_flattened_jwe(self): + if not (self.protected, self.encrypted_key, self.iv, self.ciphertext, self.tag): + raise ValueError('JWE is not complete.') + + return json.dumps(self.__dict__) + + +class _JwsHeader(_JoseHeader): + def __init__(self): + self.alg = None + self.kid = None + self.at = None + self.ts = None + self.p = None + self.typ = None + + @staticmethod + def from_compact_header(compact): + header = _JwsHeader() + header.__dict__ = json.loads(_b64_to_str(compact)) + return header + + +class _JwsObject(_JoseObject): + def __init__(self): + self.protected = None + self.payload = None + self.signature = None + + def to_flattened_jws(self): + if not (self.protected, self.payload, self.signature): + raise ValueError('JWS is not complete.') + + return json.dumps(self.__dict__) + + + +def _default_encryption_padding(): + return asym_padding.OAEP(mgf=asym_padding.MGF1(algorithm=hashes.SHA1()), algorithm=hashes.SHA1(), label=None) + + +def _default_signature_padding(): + return asym_padding.PKCS1v15() + + +def _default_signature_algorithm(): + return hashes.SHA256() + + +class _RsaKey(object): + PUBLIC_KEY_DEFAULT_OPS = ['encrypt', 'wrapKey', 'verify'] + PRIVATE_KEY_DEFAULT_OPS = ['encrypt', 'decrypt', 'wrapKey', 'unwrapKey', 'verify', 'sign'] + + def __init__(self): + self.kid = None + self.kty = None + self.key_ops = None + self._rsa_impl = None + + @property + def n(self): + return _int_to_bytes(self._public_key_material().n) + + @property + def e(self): + return _int_to_bytes(self._public_key_material().e) + + @property + def q(self): + return _int_to_bytes(self._private_key_material().q) if self.is_private_key() else None + + @property + def p(self): + return _int_to_bytes(self._private_key_material().p) if self.is_private_key() else None + + @property + def d(self): + return _int_to_bytes(self._private_key_material().d) if self.is_private_key() else None + + @property + def dq(self): + return _int_to_bytes(self._private_key_material().dmq1) if self.is_private_key() else None + + @property + def dp(self): + return _int_to_bytes(self._private_key_material().dmp1) if self.is_private_key() else None + + @property + def qi(self): + return _int_to_bytes(self._private_key_material().iqmp) if self.is_private_key() else None + + @property + def private_key(self): + return self._rsa_impl if self.is_private_key() else None + + @property + def public_key(self): + return self._rsa_impl.public_key() if self.is_private_key() else self._rsa_impl + + @staticmethod + def generate(kid=None, kty='RSA', size=2048, e=65537): + key = _RsaKey() + key.kid = kid or str(uuid.uuid4()) + key.kty = kty + key.key_ops = _RsaKey.PRIVATE_KEY_DEFAULT_OPS + key._rsa_impl = generate_private_key(public_exponent=e, + key_size=size, + backend=cryptography.hazmat.backends.default_backend()) + return key + + @staticmethod + def from_jwk_str(s): + jwk_dict = json.loads(s) + jwk = JsonWebKey.from_dict(jwk_dict) + return _RsaKey.from_jwk(jwk) + + @staticmethod + def from_jwk(jwk): + if not isinstance(jwk, JsonWebKey): + raise TypeError('The specified jwk must be a JsonWebKey') + + if jwk.kty != 'RSA' and jwk.kty != 'RSA-HSM': + raise ValueError('The specified jwk must have a key type of "RSA" or "RSA-HSM"') + + if not jwk.n or not jwk.e: + raise ValueError('Invalid RSA jwk, both n and e must be have values') + + rsa_key = _RsaKey() + rsa_key.kid = jwk.kid + rsa_key.kty = jwk.kty + rsa_key.key_ops = jwk.key_ops + + pub = RSAPublicNumbers(n=_bytes_to_int(jwk.n), e=_bytes_to_int(jwk.e)) + + # if the private key values are specified construct a private key + # only the secret primes and private exponent are needed as other fields can be calculated + if jwk.p and jwk.q and jwk.d: + # convert the values of p, q, and d from bytes to int + p = _bytes_to_int(jwk.p) + q = _bytes_to_int(jwk.q) + d = _bytes_to_int(jwk.d) + + # convert or compute the remaining private key numbers + dmp1 = _bytes_to_int(jwk.dp) if jwk.dp else rsa_crt_dmp1(private_exponent=d, p=p) + dmq1 = _bytes_to_int(jwk.dq) if jwk.dq else rsa_crt_dmq1(private_exponent=d, q=q) + iqmp = _bytes_to_int(jwk.qi) if jwk.qi else rsa_crt_iqmp(p=p, q=q) + + # create the private key from the jwk key values + priv = RSAPrivateNumbers(p=p, q=q, d=d, dmp1=dmp1, dmq1=dmq1, iqmp=iqmp, public_numbers=pub) + key_impl = priv.private_key(cryptography.hazmat.backends.default_backend()) + + # if the necessary private key values are not specified create the public key + else: + key_impl = pub.public_key(cryptography.hazmat.backends.default_backend()) + + rsa_key._rsa_impl = key_impl + + return rsa_key + + def to_jwk(self, include_private=False): + jwk = JsonWebKey(kid=self.kid, + kty=self.kty, + key_ops=self.key_ops if include_private else _RsaKey.PUBLIC_KEY_DEFAULT_OPS, + n=self.n, + e=self.e) + + if include_private: + jwk.q = self.q + jwk.p = self.p + jwk.d = self.d + jwk.dq = self.dq + jwk.dp = self.dp + jwk.qi = self.qi + + return jwk + + def encrypt(self, plaintext, padding=_default_encryption_padding()): + return self.public_key.encrypt(plaintext, padding) + + def decrypt(self, ciphertext, padding=_default_encryption_padding()): + if not self.is_private_key(): + raise NotImplementedError('The current RsaKey does not support decrypt') + + return self.private_key.decrypt(ciphertext, padding) + + def sign(self, data, padding=_default_signature_padding(), algorithm=_default_signature_algorithm()): + if not self.is_private_key(): + raise NotImplementedError('The current RsaKey does not support sign') + + return self.private_key.sign(data, padding, algorithm) + + def verify(self, signature, data, padding=_default_signature_padding(), algorithm=_default_signature_algorithm()): + return self.public_key.verify(signature, data, padding, algorithm) + + def is_private_key(self): + return isinstance(self._rsa_impl, RSAPrivateKey) + + def _public_key_material(self): + return self.public_key.public_numbers() + + def _private_key_material(self): + return self.private_key.private_numbers() if self.private_key else None diff --git a/azure-keyvault/azure/keyvault/custom/internal.py b/azure-keyvault/azure/keyvault/custom/internal.py deleted file mode 100644 index f3992e8bde57..000000000000 --- a/azure-keyvault/azure/keyvault/custom/internal.py +++ /dev/null @@ -1,410 +0,0 @@ -#--------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -#--------------------------------------------------------------------------------------------- - -import json -import uuid -import codecs -from base64 import b64encode, b64decode -import cryptography -from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes -from cryptography.hazmat.backends import default_backend -from cryptography.hazmat.primitives.asymmetric.rsa import RSAPrivateNumbers, RSAPublicNumbers, \ - generate_private_key, rsa_crt_dmp1, rsa_crt_dmq1, rsa_crt_iqmp, RSAPrivateKey, RSAPublicKey -from cryptography.hazmat.primitives.asymmetric import padding as asym_padding -from cryptography.hazmat.primitives import hashes, constant_time, padding, hmac - -from ..models import JsonWebKey - -def _a128cbc_hs256_encrypt(key, iv, plaintext, authdata): - if not key or not len(key) >= 32: - raise ValueError('key must be at least 256 bits for algorithm "A128CBC-HS256"') - if not iv or len(iv) != 16: - raise ValueError('iv must be 128 bits for algorithm "A128CBC-HS256"') - if not plaintext: - raise ValueError('plaintext must be specified') - if not authdata: - raise ValueError('authdata must be specified') - - # get the hmac key and the aes key from the specified key - hmac_key = key[:16] - aes_key = key[16:32] - - # calculate the length of authdata and store as bytes - auth_data_length = _int_to_bigendian_8_bytes(len(authdata) * 8) - - # pad the plaintext with pkcs7 - padder = padding.PKCS7(128).padder() - plaintext = padder.update(plaintext) + padder.finalize() - - # create the cipher and encrypt the plaintext - cipher = Cipher(algorithms.AES(aes_key), modes.CBC(iv), backend=default_backend()) - encryptor = cipher.encryptor() - ciphertext = encryptor.update(plaintext) + encryptor.finalize() - - # get the data to hash with HMAC, hash the data and take the first 16 bytes - hashdata = authdata + iv + ciphertext + auth_data_length - hmac_hash = hmac.HMAC(hmac_key, hashes.SHA256(), backend=default_backend()) - hmac_hash.update(hashdata) - tag = hmac_hash.finalize()[:16] - - return ciphertext, tag - - -def _a128cbc_hs256_decrypt(key, iv, ciphertext, authdata, authtag): - if not key or not len(key) >= 32: - raise ValueError('key must be at least 256 bits for algorithm "A128CBC-HS256"') - if not iv or len(iv) != 16: - raise ValueError('iv must be 128 bits for algorithm "A128CBC-HS256"') - if not ciphertext: - raise ValueError('ciphertext must be specified') - if not authdata: - raise ValueError('authdata must be specified') - if not authtag or len(authtag) != 16: - raise ValueError('authtag must be be 128 bits for algorithm "A128CBC-HS256"') - - hmac_key = key[:16] - aes_key = key[16:32] - auth_data_length = _int_to_bigendian_8_bytes(len(authdata) * 8) - - # ensure the authtag is the expected length for SHA256 hash - if not len(authtag) == 16: - raise ValueError('invalid tag') - - hashdata = authdata + iv + ciphertext + auth_data_length - hmac_hash = hmac.HMAC(hmac_key, hashes.SHA256(), backend=default_backend()) - hmac_hash.update(hashdata) - tag = hmac_hash.finalize()[:16] - - if not constant_time.bytes_eq(tag, authtag): - raise ValueError('"ciphertext" is not authentic') - - cipher = Cipher(algorithms.AES(aes_key), modes.CBC(iv), backend=default_backend()) - decryptor = cipher.decryptor() - plaintext = decryptor.update(ciphertext) + decryptor.finalize() - - # unpad the decrypted plaintext - padder = padding.PKCS7(128).unpadder() - plaintext = padder.update(plaintext) + padder.finalize() - - return plaintext - - -def _bytes_to_int(b): - if not b or not isinstance(b, bytes): - raise ValueError('b must be non-empty byte string') - - return int(codecs.encode(b, 'hex'), 16) - - -def _int_to_bytes(i): - h = hex(i) - if len(h) > 1 and h[0:2] == '0x': - h = h[2:] - - # need to strip L in python 2.x - h = h.strip('L') - - if len(h) % 2: - h = '0' + h - return codecs.decode(h, 'hex') - - -def _bstr_to_b64url(bstr, **kwargs): - """Serialize bytes into base-64 string. - :param str: Object to be serialized. - :rtype: str - """ - encoded = b64encode(bstr).decode() - return encoded.strip('=').replace('+', '-').replace('/', '_') - - -def _str_to_b64url(s, **kwargs): - """Serialize str into base-64 string. - :param str: Object to be serialized. - :rtype: str - """ - return _bstr_to_b64url(s.encode(encoding='utf8')) - - -def _b64_to_bstr(b64str): - """Deserialize base64 encoded string into string. - :param str b64str: response string to be deserialized. - :rtype: bytearray - :raises: TypeError if string format invalid. - """ - padding = '=' * (3 - (len(b64str) + 3) % 4) - b64str = b64str + padding - encoded = b64str.replace('-', '+').replace('_', '/') - return b64decode(encoded) - - -def _b64_to_str(b64str): - """Deserialize base64 encoded string into string. - :param str b64str: response string to be deserialized. - :rtype: str - :raises: TypeError if string format invalid. - """ - return _b64_to_bstr(b64str).decode('utf8') - - -def _int_to_bigendian_8_bytes(i): - b = _int_to_bytes(i) - - if len(b) > 8: - raise ValueError('the specified integer is to large to be represented by 8 bytes') - - if len(b) < 8: - b = (b'\0' * (8 - len(b))) + b - - return b - - -class _JoseObject(object): - - def deserialize(self, s): - d = json.loads(s) - self.__dict__ = d - return self - - def deserialize_b64(self, s): - self.deserialize(_b64_to_str(s)) - return self - - def serialize(self): - return json.dumps(self.__dict__) - - def serialize_b64url(self): - return _str_to_b64url(self.serialize()) - - -class _JoseHeader(_JoseObject): - - def to_compact_header(self): - return _str_to_b64url(json.dumps(self.__dict__)) - - -class _JweHeader(_JoseHeader): - def __init__(self, alg=None, kid=None, enc=None): - self.alg = alg - self.kid = kid - self.enc = enc - - @staticmethod - def from_compact_header(compact): - header = _JweHeader() - header.__dict__ = json.loads(_b64_to_str(compact)) - return header - - -class _JweObject(_JoseObject): - def __init__(self): - self.protected = None - self.encrypted_key = None - self.iv = None - self.ciphertext = None - self.tag = None - - def to_flattened_jwe(self): - if not (self.protected, self.encrypted_key, self.iv, self.ciphertext, self.tag): - raise ValueError('JWE is not complete.') - - return json.dumps(self.__dict__) - - -class _JwsHeader(_JoseHeader): - def __init__(self): - self.alg = None - self.kid = None - self.at = None - self.ts = None - self.p = None - self.typ = None - - @staticmethod - def from_compact_header(compact): - header = _JwsHeader() - header.__dict__ = json.loads(_b64_to_str(compact)) - return header - - -class _JwsObject(_JoseObject): - def __init__(self): - self.protected = None - self.payload = None - self.signature = None - - def to_flattened_jws(self): - if not (self.protected, self.payload, self.signature): - raise ValueError('JWS is not complete.') - - return json.dumps(self.__dict__) - - - -def _default_encryption_padding(): - return asym_padding.OAEP(mgf=asym_padding.MGF1(algorithm=hashes.SHA1()), algorithm=hashes.SHA1(), label=None) - - -def _default_signature_padding(): - return asym_padding.PKCS1v15() - - -def _default_signature_algorithm(): - return hashes.SHA256() - - -class _RsaKey(object): - PUBLIC_KEY_DEFAULT_OPS = ['encrypt', 'wrapKey', 'verify'] - PRIVATE_KEY_DEFAULT_OPS = ['encrypt', 'decrypt', 'wrapKey', 'unwrapKey', 'verify', 'sign'] - - def __init__(self): - self.kid = None - self.kty = None - self.key_ops = None - self._rsa_impl = None - - @property - def n(self): - return _int_to_bytes(self._public_key_material().n) - - @property - def e(self): - return _int_to_bytes(self._public_key_material().e) - - @property - def q(self): - return _int_to_bytes(self._private_key_material().q) if self.is_private_key() else None - - @property - def p(self): - return _int_to_bytes(self._private_key_material().p) if self.is_private_key() else None - - @property - def d(self): - return _int_to_bytes(self._private_key_material().d) if self.is_private_key() else None - - @property - def dq(self): - return _int_to_bytes(self._private_key_material().dmq1) if self.is_private_key() else None - - @property - def dp(self): - return _int_to_bytes(self._private_key_material().dmp1) if self.is_private_key() else None - - @property - def qi(self): - return _int_to_bytes(self._private_key_material().iqmp) if self.is_private_key() else None - - @property - def private_key(self): - return self._rsa_impl if self.is_private_key() else None - - @property - def public_key(self): - return self._rsa_impl.public_key() if self.is_private_key() else self._rsa_impl - - @staticmethod - def generate(kid=None, kty='RSA', size=2048, e=65537): - key = _RsaKey() - key.kid = kid or str(uuid.uuid4()) - key.kty = kty - key.key_ops = _RsaKey.PRIVATE_KEY_DEFAULT_OPS - key._rsa_impl = generate_private_key(public_exponent=e, - key_size=size, - backend=cryptography.hazmat.backends.default_backend()) - return key - - @staticmethod - def from_jwk_str(s): - jwk_dict = json.loads(s) - jwk = JsonWebKey.from_dict(jwk_dict) - return _RsaKey.from_jwk(jwk) - - @staticmethod - def from_jwk(jwk): - if not isinstance(jwk, JsonWebKey): - raise TypeError('The specified jwk must be a JsonWebKey') - - if jwk.kty != 'RSA' and jwk.kty != 'RSA-HSM': - raise ValueError('The specified jwk must have a key type of "RSA" or "RSA-HSM"') - - if not jwk.n or not jwk.e: - raise ValueError('Invalid RSA jwk, both n and e must be have values') - - rsa_key = _RsaKey() - rsa_key.kid = jwk.kid - rsa_key.kty = jwk.kty - rsa_key.key_ops = jwk.key_ops - - pub = RSAPublicNumbers(n=_bytes_to_int(jwk.n), e=_bytes_to_int(jwk.e)) - - # if the private key values are specified construct a private key - # only the secret primes and private exponent are needed as other fields can be calculated - if jwk.p and jwk.q and jwk.d: - # convert the values of p, q, and d from bytes to int - p = _bytes_to_int(jwk.p) - q = _bytes_to_int(jwk.q) - d = _bytes_to_int(jwk.d) - - # convert or compute the remaining private key numbers - dmp1 = _bytes_to_int(jwk.dp) if jwk.dp else rsa_crt_dmp1(private_exponent=d, p=p) - dmq1 = _bytes_to_int(jwk.dq) if jwk.dq else rsa_crt_dmq1(private_exponent=d, q=q) - iqmp = _bytes_to_int(jwk.qi) if jwk.qi else rsa_crt_iqmp(p=p, q=q) - - # create the private key from the jwk key values - priv = RSAPrivateNumbers(p=p, q=q, d=d, dmp1=dmp1, dmq1=dmq1, iqmp=iqmp, public_numbers=pub) - key_impl = priv.private_key(cryptography.hazmat.backends.default_backend()) - - # if the necessary private key values are not specified create the public key - else: - key_impl = pub.public_key(cryptography.hazmat.backends.default_backend()) - - rsa_key._rsa_impl = key_impl - - return rsa_key - - def to_jwk(self, include_private=False): - jwk = JsonWebKey(kid=self.kid, - kty=self.kty, - key_ops=self.key_ops if include_private else _RsaKey.PUBLIC_KEY_DEFAULT_OPS, - n=self.n, - e=self.e) - - if include_private: - jwk.q = self.q - jwk.p = self.p - jwk.d = self.d - jwk.dq = self.dq - jwk.dp = self.dp - jwk.qi = self.qi - - return jwk - - def encrypt(self, plaintext, padding=_default_encryption_padding()): - return self.public_key.encrypt(plaintext, padding) - - def decrypt(self, ciphertext, padding=_default_encryption_padding()): - if not self.is_private_key(): - raise NotImplementedError('The current RsaKey does not support decrypt') - - return self.private_key.decrypt(ciphertext, padding) - - def sign(self, data, padding=_default_signature_padding(), algorithm=_default_signature_algorithm()): - if not self.is_private_key(): - raise NotImplementedError('The current RsaKey does not support sign') - - return self.private_key.sign(data, padding, algorithm) - - def verify(self, signature, data, padding=_default_signature_padding(), algorithm=_default_signature_algorithm()): - return self.public_key.verify(signature, data, padding, algorithm) - - def is_private_key(self): - return isinstance(self._rsa_impl, RSAPrivateKey) - - def _public_key_material(self): - return self.public_key.public_numbers() - - def _private_key_material(self): - return self.private_key.private_numbers() if self.private_key else None diff --git a/azure-keyvault/azure/keyvault/custom/key_vault_client.py b/azure-keyvault/azure/keyvault/custom/key_vault_client.py deleted file mode 100644 index a35a091f3ebc..000000000000 --- a/azure-keyvault/azure/keyvault/custom/key_vault_client.py +++ /dev/null @@ -1,94 +0,0 @@ -#--------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -#--------------------------------------------------------------------------------------------- - -import uuid -from msrest.pipeline import ClientRawResponse - -from .key_vault_authentication import KeyVaultAuthentication -from ..key_vault_client import KeyVaultClient as KeyVaultClientBase -from ..models import KeyVaultErrorException -from msrest.authentication import BasicTokenAuthentication - - -class CustomKeyVaultClient(KeyVaultClientBase): - - def __init__(self, credentials): - """The key vault client performs cryptographic key operations and vault operations against the Key Vault service. - - :ivar config: Configuration for client. - :vartype config: KeyVaultClientConfiguration - - :param credentials: Credentials needed for the client to connect to Azure. - :type credentials: :mod:`A msrestazure Credentials - object` or :mod:`A KeyVaultAuthentication - object` - """ - - # if the supplied credentials instance is not derived from KeyVaultAuthBase but is an AAD credential type - if not isinstance(credentials, KeyVaultAuthentication) and isinstance(credentials, BasicTokenAuthentication): - - # wrap the supplied credentials with a KeyVaultAuthentication instance. Use that for the credentials supplied to the base client - credentials = KeyVaultAuthentication(credentials=credentials) - - super(CustomKeyVaultClient, self).__init__(credentials) - - def get_pending_certificate_signing_request(self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Gets the Base64 pending certificate signing request (PKCS-10). - - :param vault_base_url: The vault name, e.g. - https://myvault.vault.azure.net - :type vault_base_url: str - :param certificate_name: The name of the certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Base64 encoded pending certificate signing request (PKCS-10). - :rtype: str - :rtype: :class:`ClientRawResponse` - if raw=true - """ - # Construct URL - url = '/certificates/{certificate-name}/pending' - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - header_parameters['Accept'] = 'application/pkcs10' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, **operation_config) - - if response.status_code not in [200]: - raise KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = response.content - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized diff --git a/azure-keyvault/azure/keyvault/custom/http_bearer_challenge.py b/azure-keyvault/azure/keyvault/http_bearer_challenge.py similarity index 100% rename from azure-keyvault/azure/keyvault/custom/http_bearer_challenge.py rename to azure-keyvault/azure/keyvault/http_bearer_challenge.py diff --git a/azure-keyvault/azure/keyvault/custom/http_bearer_challenge_cache/__init__.py b/azure-keyvault/azure/keyvault/http_bearer_challenge_cache/__init__.py similarity index 100% rename from azure-keyvault/azure/keyvault/custom/http_bearer_challenge_cache/__init__.py rename to azure-keyvault/azure/keyvault/http_bearer_challenge_cache/__init__.py diff --git a/azure-keyvault/azure/keyvault/custom/http_challenge.py b/azure-keyvault/azure/keyvault/http_challenge.py similarity index 100% rename from azure-keyvault/azure/keyvault/custom/http_challenge.py rename to azure-keyvault/azure/keyvault/http_challenge.py diff --git a/azure-keyvault/azure/keyvault/custom/http_message_security.py b/azure-keyvault/azure/keyvault/http_message_security.py similarity index 98% rename from azure-keyvault/azure/keyvault/custom/http_message_security.py rename to azure-keyvault/azure/keyvault/http_message_security.py index b2f318a25b3b..a321e989cb88 100644 --- a/azure-keyvault/azure/keyvault/custom/http_message_security.py +++ b/azure-keyvault/azure/keyvault/http_message_security.py @@ -6,7 +6,7 @@ import json import time import os -from .internal import _a128cbc_hs256_encrypt, _a128cbc_hs256_decrypt, _JwsHeader, _JwsObject, \ +from ._internal import _a128cbc_hs256_encrypt, _a128cbc_hs256_decrypt, _JwsHeader, _JwsObject, \ _JweHeader, _JweObject, _str_to_b64url, _bstr_to_b64url, _b64_to_bstr, _RsaKey diff --git a/azure-keyvault/azure/keyvault/custom/key_vault_authentication.py b/azure-keyvault/azure/keyvault/key_vault_authentication.py similarity index 97% rename from azure-keyvault/azure/keyvault/custom/key_vault_authentication.py rename to azure-keyvault/azure/keyvault/key_vault_authentication.py index 3dd29ab89e3c..b5d72067fad4 100644 --- a/azure-keyvault/azure/keyvault/custom/key_vault_authentication.py +++ b/azure-keyvault/azure/keyvault/key_vault_authentication.py @@ -3,18 +3,18 @@ # Licensed under the MIT License. See License.txt in the project root for license information. #--------------------------------------------------------------------------------------------- -import threading -import requests import inspect +import threading from collections import namedtuple + +import requests +from azure.keyvault import http_bearer_challenge_cache as ChallengeCache +from azure.keyvault.http_challenge import HttpChallenge +from azure.keyvault.http_message_security import HttpMessageSecurity +from azure.keyvault._internal import _RsaKey +from msrest.authentication import OAuthTokenAuthentication from requests.auth import AuthBase from requests.cookies import extract_cookies_to_jar -from .http_challenge import HttpChallenge -from . import http_bearer_challenge_cache as ChallengeCache -from msrest.authentication import OAuthTokenAuthentication -from .http_message_security import HttpMessageSecurity -from .internal import _RsaKey - AccessToken = namedtuple('AccessToken', ['scheme', 'token', 'key']) AccessToken.__new__.__defaults__ = ('Bearer', None, None) diff --git a/azure-keyvault/azure/keyvault/key_vault_client.py b/azure-keyvault/azure/keyvault/key_vault_client.py index 3266084f2145..7a54e28b56bb 100644 --- a/azure-keyvault/azure/keyvault/key_vault_client.py +++ b/azure-keyvault/azure/keyvault/key_vault_client.py @@ -8,14 +8,18 @@ # Changes may cause incorrect behavior and will be lost if the code is # regenerated. # -------------------------------------------------------------------------- - -from msrest.service_client import SDKClient -from msrest import Serializer, Deserializer +import uuid +from msrest.pipeline import ClientRawResponse from msrestazure import AzureConfiguration +from msrestazure.azure_active_directory import BasicTokenAuthentication + +from azure.profiles import KnownProfiles, ProfileDefinition +from azure.profiles.multiapiclient import MultiApiClientMixin from .version import VERSION -from msrest.pipeline import ClientRawResponse -import uuid -from . import models +from . import KeyVaultAuthentication + +from azure.keyvault.v7_0.version import VERSION as v7_0_VERSION +from azure.keyvault.v2016_10_01.version import VERSION as v2016_10_01_VERSION class KeyVaultClientConfiguration(AzureConfiguration): @@ -43,8 +47,12 @@ def __init__( self.credentials = credentials -class KeyVaultClient(SDKClient): +class KeyVaultClient(MultiApiClientMixin): """The key vault client performs cryptographic key operations and vault operations against the Key Vault service. + Implementation depends on the API version: + + * 2016-10-01: :class:`v2016_10_01.KeyVaultClient` + * 7.0: :class:`v7_0.KeyVaultClient` :ivar config: Configuration for client. :vartype config: KeyVaultClientConfiguration @@ -52,377 +60,164 @@ class KeyVaultClient(SDKClient): :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials object` - """ - def __init__( - self, credentials): + :param str api_version: API version to use if no profile is provided, or if + missing in profile. + :param profile: A profile definition, from KnownProfiles to dict. + :type profile: azure.profiles.KnownProfiles + """ + DEFAULT_API_VERSION = '7.0' + _PROFILE_TAG = "azure.keyvault.KeyVaultClient" + LATEST_PROFILE = ProfileDefinition({ + _PROFILE_TAG: { + None: DEFAULT_API_VERSION + }}, + _PROFILE_TAG + " latest" + ) + + _init_complete = False + def __init__(self, credentials, api_version=None, profile=KnownProfiles.default): self.config = KeyVaultClientConfiguration(credentials) - super(KeyVaultClient, self).__init__(self.config.credentials, self.config) - - client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '7.0' - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - - - def create_key( - self, vault_base_url, key_name, kty, key_size=None, key_ops=None, key_attributes=None, tags=None, curve=None, custom_headers=None, raw=False, **operation_config): - """Creates a new key, stores it, then returns key parameters and - attributes to the client. - - The create key operation can be used to create any key type in Azure - Key Vault. If the named key already exists, Azure Key Vault creates a - new version of the key. It requires the keys/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name for the new key. The system will generate - the version name for the new key. - :type key_name: str - :param kty: The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', - 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or - 4096 for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or ~azure.keyvault.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', - 'P-521', 'P-256K' - :type curve: str or ~azure.keyvault.models.JsonWebKeyCurveName - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyCreateParameters(kty=kty, key_size=key_size, key_ops=key_ops, key_attributes=key_attributes, tags=tags, curve=curve) - - # Construct URL - url = self.create_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyCreateParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - create_key.metadata = {'url': '/keys/{key-name}/create'} - - def import_key( - self, vault_base_url, key_name, key, hsm=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Imports an externally created key, stores it, and returns key - parameters and attributes to the client. - - The import key operation may be used to import any key type into an - Azure Key Vault. If the named key already exists, Azure Key Vault - creates a new version of the key. This operation requires the - keys/import permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: Name for the imported key. - :type key_name: str - :param key: The Json web key - :type key: ~azure.keyvault.models.JsonWebKey - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyImportParameters(hsm=hsm, key=key, key_attributes=key_attributes, tags=tags) - - # Construct URL - url = self.import_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyImportParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - import_key.metadata = {'url': '/keys/{key-name}'} - - def delete_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Deletes a key of any type from storage in Azure Key Vault. - - The delete key operation cannot be used to remove individual versions - of a key. This operation removes the cryptographic material associated - with the key, which means the key is not usable for Sign/Verify, - Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the - keys/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key to delete. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedKeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedKeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` + self._client_impls = {} + self._entered = False + super(KeyVaultClient, self).__init__( + api_version=api_version, + profile=profile + ) + + # if the supplied credentials instance is not derived from KeyVaultAuthBase but is an AAD credential type + if not isinstance(credentials, KeyVaultAuthentication) and isinstance(credentials, BasicTokenAuthentication): + + # wrap the supplied credentials with a KeyVaultAuthentication instance. Use that for the credentials + # supplied to the base client + credentials = KeyVaultAuthentication(credentials=credentials) + + self._credentials = credentials + self._init_complete = True + + @property + def models(self): + """Module depends on the API version: + * 2016-10-01: :mod:`v2016_10_01.models` + * 7.0: :mod:`v7_0.models` + """ + api_version = self._get_api_version(None) + + if api_version == v7_0_VERSION: + from azure.keyvault.v7_0 import models as implModels + elif api_version == v2016_10_01_VERSION: + from azure.keyvault.v2016_10_01 import models as implModels + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return implModels + + def _get_client_impl(self): + """ + Get the versioned client implementation corresponding to the current profile. + :return: The versioned client implementation. + """ + api_version = self._get_api_version(None) + if api_version not in self._client_impls: + self._create_client_impl(api_version) + return self._client_impls[api_version] + + def _create_client_impl(self, api_version): + """ + Creates the client implementation corresponding to the specifeid api_version. + :param api_version: + :return: + """ + if api_version == v7_0_VERSION: + from azure.keyvault.v7_0 import KeyVaultClient as ImplClient + elif api_version == v2016_10_01_VERSION: + from azure.keyvault.v2016_10_01 import KeyVaultClient as ImplClient + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + + impl = ImplClient(credentials=self._credentials) + impl.config = self.config + + # if __enter__ has previously been called and the impl client has __enter__ defined we need to call it + if self._entered and hasattr(impl, '__enter__'): + impl.__enter__() + + self._client_impls[api_version] = impl + return impl + + def __enter__(self, *args, **kwargs): + """ + Calls __enter__ on all client implementations which support it + :param args: positional arguments to relay to client implementations of __enter__ + :param kwargs: keyword arguments to relay to client implementations of __enter__ + :return: returns the current KeyVaultClient instance + """ + for _, impl in self._client_impls.items(): + if hasattr(impl, '__enter__'): + impl.__enter__(*args, **kwargs) + # mark the current KeyVaultClient as _entered so that client implementations instantiated + # subsequently will also have __enter__ called on them as appropriate + self._entered = True + return self + + def __exit__(self, *args, **kwargs): + """ + Calls __exit__ on all client implementations which support it + :param args: positional arguments to relay to client implementations of __enter__ + :param kwargs: keyword arguments to relay to client implementations of __enter__ + :return: returns the current KeyVaultClient instance + """ + for _, impl in self._client_impls.items(): + if hasattr(impl, '__exit__'): + impl.__exit__(*args, **kwargs) + return self + + def __getattr__(self, name): + """ + In the case that the attribute is not defined on the custom KeyVaultClient. Attempt to get + the attribute from the versioned client implementation corresponding to the current profile. + :param name: Name of the attribute retrieve from the current versioned client implementation + :return: The value of the specified attribute on the current client implementation. + """ + impl = self._get_client_impl() + return getattr(impl, name) + + def __setattr__(self, name, attr): """ - # Construct URL - url = self.delete_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedKeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_key.metadata = {'url': '/keys/{key-name}'} - - def update_key( - self, vault_base_url, key_name, key_version, key_ops=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """The update key operation changes specified attributes of a stored key - and can be applied to any key type and key version stored in Azure Key - Vault. - - In order to perform this operation, the key must already exist in the - Key Vault. Note: The cryptographic material of a key itself cannot be - changed. This operation requires the keys/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of key to update. - :type key_name: str - :param key_version: The version of the key to update. - :type key_version: str - :param key_ops: Json web key operations. For more information on - possible key operations, see JsonWebKeyOperation. - :type key_ops: list[str or ~azure.keyvault.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` + Sets the specified attribute either on the custom KeyVaultClient or the current underlying implementation. + :param name: Name of the attribute to set + :param attr: Value of the attribute to set + :return: None """ - parameters = models.KeyUpdateParameters(key_ops=key_ops, key_attributes=key_attributes, tags=tags) - - # Construct URL - url = self.update_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) + if self._init_complete and not hasattr(self, name): + impl = self._get_client_impl() + setattr(impl, name, attr) + else: + super(KeyVaultClient, self).__setattr__(name, attr) - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_key.metadata = {'url': '/keys/{key-name}/{key-version}'} - - def get_key( - self, vault_base_url, key_name, key_version, custom_headers=None, raw=False, **operation_config): - """Gets the public part of a stored key. - - The get key operation is applicable to all key types. If the requested - key is symmetric, then no key material is released in the response. - This operation requires the keys/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. + def get_pending_certificate_signing_request(self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Gets the Base64 pending certificate signing request (PKCS-10). + + :param vault_base_url: The vault name, e.g. + https://myvault.vault.azure.net :type vault_base_url: str - :param key_name: The name of the key to get. - :type key_name: str - :param key_version: Adding the version parameter retrieves a specific - version of a key. - :type key_version: str + :param certificate_name: The name of the certificate + :type certificate_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` + :return: Base64 encoded pending certificate signing request (PKCS-10). + :rtype: str + :rtype: :class:`ClientRawResponse` + if raw=true """ # Construct URL - url = self.get_key.metadata['url'] + url = '/certificates/{certificate-name}/pending' path_format_arguments = { 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -432,7 +227,7 @@ def get_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/pkcs10' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -441,5338 +236,20 @@ def get_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) + raise self.models.KeyVaultErrorException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) + deserialized = response.body() if hasattr(response, 'body') else response.content if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_key.metadata = {'url': '/keys/{key-name}/{key-version}'} - - def get_key_versions( - self, vault_base_url, key_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Retrieves a list of individual key versions with the same key name. - - The full key identifier, attributes, and tags are provided in the - response. This operation requires the keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of KeyItem - :rtype: - ~azure.keyvault.models.KeyItemPaged[~azure.keyvault.models.KeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_key_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_key_versions.metadata = {'url': '/keys/{key-name}/versions'} - - def get_keys( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List keys in the specified vault. - - Retrieves a list of the keys in the Key Vault as JSON Web Key - structures that contain the public part of a stored key. The LIST - operation is applicable to all key types, however only the base key - identifier, attributes, and tags are provided in the response. - Individual versions of a key are not listed in the response. This - operation requires the keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of KeyItem - :rtype: - ~azure.keyvault.models.KeyItemPaged[~azure.keyvault.models.KeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_keys.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_keys.metadata = {'url': '/keys'} - - def backup_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Requests that a backup of the specified key be downloaded to the - client. - - The Key Backup operation exports a key from Azure Key Vault in a - protected form. Note that this operation does NOT return key material - in a form that can be used outside the Azure Key Vault system, the - returned key material is either protected to a Azure Key Vault HSM or - to Azure Key Vault itself. The intent of this operation is to allow a - client to GENERATE a key in one Azure Key Vault instance, BACKUP the - key, and then RESTORE it into another Azure Key Vault instance. The - BACKUP operation may be used to export, in protected form, any key type - from Azure Key Vault. Individual versions of a key cannot be backed up. - BACKUP / RESTORE can be performed within geographical boundaries only; - meaning that a BACKUP from one geographical area cannot be restored to - another geographical area. For example, a backup from the US - geographical area cannot be restored in an EU geographical area. This - operation requires the key/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupKeyResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.BackupKeyResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupKeyResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_key.metadata = {'url': '/keys/{key-name}/backup'} - - def restore_key( - self, vault_base_url, key_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up key to a vault. - - Imports a previously backed up key into Azure Key Vault, restoring the - key, its key identifier, attributes and access control policies. The - RESTORE operation may be used to import a previously backed up key. - Individual versions of a key cannot be restored. The key is restored in - its entirety with the same key name as it had when it was backed up. If - the key name is not available in the target Key Vault, the RESTORE - operation will be rejected. While the key name is retained during - restore, the final key identifier will change if the key is restored to - a different vault. Restore will restore all versions and preserve - version identifiers. The RESTORE operation is subject to security - constraints: The target Key Vault must be owned by the same Microsoft - Azure Subscription as the source Key Vault The user must have RESTORE - permission in the target Key Vault. This operation requires the - keys/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_bundle_backup: The backup blob associated with a key - bundle. - :type key_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyRestoreParameters(key_bundle_backup=key_bundle_backup) - - # Construct URL - url = self.restore_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_key.metadata = {'url': '/keys/restore'} - - def encrypt( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Encrypts an arbitrary sequence of bytes using an encryption key that is - stored in a key vault. - - The ENCRYPT operation encrypts an arbitrary sequence of bytes using an - encryption key that is stored in Azure Key Vault. Note that the ENCRYPT - operation only supports a single block of data, the size of which is - dependent on the target key and the encryption algorithm to be used. - The ENCRYPT operation is only strictly necessary for symmetric keys - stored in Azure Key Vault since protection with an asymmetric key can - be performed using public portion of the key. This operation is - supported for asymmetric keys as a convenience for callers that have a - key-reference but do not have access to the public key material. This - operation requires the keys/encypt permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.encrypt.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - encrypt.metadata = {'url': '/keys/{key-name}/{key-version}/encrypt'} - - def decrypt( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Decrypts a single block of encrypted data. - - The DECRYPT operation decrypts a well-formed block of ciphertext using - the target encryption key and specified algorithm. This operation is - the reverse of the ENCRYPT operation; only a single block of data may - be decrypted, the size of this block is dependent on the target key and - the algorithm to be used. The DECRYPT operation applies to asymmetric - and symmetric keys stored in Azure Key Vault since it uses the private - portion of the key. This operation requires the keys/decrypt - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.decrypt.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - decrypt.metadata = {'url': '/keys/{key-name}/{key-version}/decrypt'} - - def sign( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Creates a signature from a digest using the specified key. - - The SIGN operation is applicable to asymmetric and symmetric keys - stored in Azure Key Vault since this operation uses the private portion - of the key. This operation requires the keys/sign permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: The signing/verification algorithm identifier. For - more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', - 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', - 'ES384', 'ES512', 'ES256K' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeySignatureAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeySignParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.sign.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeySignParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - sign.metadata = {'url': '/keys/{key-name}/{key-version}/sign'} - - def verify( - self, vault_base_url, key_name, key_version, algorithm, digest, signature, custom_headers=None, raw=False, **operation_config): - """Verifies a signature using a specified key. - - The VERIFY operation is applicable to symmetric keys stored in Azure - Key Vault. VERIFY is not strictly necessary for asymmetric keys stored - in Azure Key Vault since signature verification can be performed using - the public portion of the key but this operation is supported as a - convenience for callers that only have a key-reference and not the - public portion of the key. This operation requires the keys/verify - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: The signing/verification algorithm. For more - information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', - 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', - 'ES384', 'ES512', 'ES256K' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeySignatureAlgorithm - :param digest: The digest used for signing. - :type digest: bytes - :param signature: The signature to be verified. - :type signature: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyVerifyResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyVerifyResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyVerifyParameters(algorithm=algorithm, digest=digest, signature=signature) - - # Construct URL - url = self.verify.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyVerifyParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyVerifyResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - verify.metadata = {'url': '/keys/{key-name}/{key-version}/verify'} - - def wrap_key( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Wraps a symmetric key using a specified key. - - The WRAP operation supports encryption of a symmetric key using a key - encryption key that has previously been stored in an Azure Key Vault. - The WRAP operation is only strictly necessary for symmetric keys stored - in Azure Key Vault since protection with an asymmetric key can be - performed using the public portion of the key. This operation is - supported for asymmetric keys as a convenience for callers that have a - key-reference but do not have access to the public key material. This - operation requires the keys/wrapKey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.wrap_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - wrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/wrapkey'} - - def unwrap_key( - self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): - """Unwraps a symmetric key using the specified key that was initially used - for wrapping that key. - - The UNWRAP operation supports decryption of a symmetric key using the - target key encryption key. This operation is the reverse of the WRAP - operation. The UNWRAP operation applies to asymmetric and symmetric - keys stored in Azure Key Vault since it uses the private portion of the - key. This operation requires the keys/unwrapKey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param key_version: The version of the key. - :type key_version: str - :param algorithm: algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeyEncryptionAlgorithm - :param value: - :type value: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyOperationResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyOperationResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) - - # Construct URL - url = self.unwrap_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str'), - 'key-version': self._serialize.url("key_version", key_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'KeyOperationsParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyOperationResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - unwrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/unwrapkey'} - - def get_deleted_keys( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists the deleted keys in the specified vault. - - Retrieves a list of the keys in the Key Vault as JSON Web Key - structures that contain the public part of a deleted key. This - operation includes deletion-specific information. The Get Deleted Keys - operation is applicable for vaults enabled for soft-delete. While the - operation can be invoked on any vault, it will return an error if - invoked on a non soft-delete enabled vault. This operation requires the - keys/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedKeyItem - :rtype: - ~azure.keyvault.models.DeletedKeyItemPaged[~azure.keyvault.models.DeletedKeyItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_keys.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_keys.metadata = {'url': '/deletedkeys'} - - def get_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Gets the public part of a deleted key. - - The Get Deleted Key operation is applicable for soft-delete enabled - vaults. While the operation can be invoked on any vault, it will return - an error if invoked on a non soft-delete enabled vault. This operation - requires the keys/get permission. . - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedKeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedKeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedKeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} - - def purge_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified key. - - The Purge Deleted Key operation is applicable for soft-delete enabled - vaults. While the operation can be invoked on any vault, it will return - an error if invoked on a non soft-delete enabled vault. This operation - requires the keys/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the key - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} - - def recover_deleted_key( - self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted key to its latest version. - - The Recover Deleted Key operation is applicable for deleted keys in - soft-delete enabled vaults. It recovers the deleted key back to its - latest version under /keys. An attempt to recover an non-deleted key - will return an error. Consider this the inverse of the delete operation - on soft-delete enabled vaults. This operation requires the keys/recover - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param key_name: The name of the deleted key. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: KeyBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.KeyBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'key-name': self._serialize.url("key_name", key_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('KeyBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_key.metadata = {'url': '/deletedkeys/{key-name}/recover'} - - def set_secret( - self, vault_base_url, secret_name, value, tags=None, content_type=None, secret_attributes=None, custom_headers=None, raw=False, **operation_config): - """Sets a secret in a specified key vault. - - The SET operation adds a secret to the Azure Key Vault. If the named - secret already exists, Azure Key Vault creates a new version of that - secret. This operation requires the secrets/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param value: The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.models.SecretAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretSetParameters(value=value, tags=tags, content_type=content_type, secret_attributes=secret_attributes) - - # Construct URL - url = self.set_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretSetParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_secret.metadata = {'url': '/secrets/{secret-name}'} - - def delete_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Deletes a secret from a specified key vault. - - The DELETE operation applies to any secret stored in Azure Key Vault. - DELETE cannot be applied to an individual version of a secret. This - operation requires the secrets/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedSecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_secret.metadata = {'url': '/secrets/{secret-name}'} - - def update_secret( - self, vault_base_url, secret_name, secret_version, content_type=None, secret_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the attributes associated with a specified secret in a given - key vault. - - The UPDATE operation changes specified attributes of an existing stored - secret. Attributes that are not specified in the request are left - unchanged. The value of a secret itself cannot be changed. This - operation requires the secrets/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param secret_version: The version of the secret. - :type secret_version: str - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretUpdateParameters(content_type=content_type, secret_attributes=secret_attributes, tags=tags) - - # Construct URL - url = self.update_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), - 'secret-version': self._serialize.url("secret_version", secret_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} - - def get_secret( - self, vault_base_url, secret_name, secret_version, custom_headers=None, raw=False, **operation_config): - """Get a specified secret from a given key vault. - - The GET operation is applicable to any secret stored in Azure Key - Vault. This operation requires the secrets/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param secret_version: The version of the secret. - :type secret_version: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), - 'secret-version': self._serialize.url("secret_version", secret_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} - - def get_secrets( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List secrets in a specified key vault. - - The Get Secrets operation is applicable to the entire vault. However, - only the base secret identifier and its attributes are provided in the - response. Individual secret versions are not listed in the response. - This operation requires the secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified, the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SecretItem - :rtype: - ~azure.keyvault.models.SecretItemPaged[~azure.keyvault.models.SecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_secrets.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_secrets.metadata = {'url': '/secrets'} - - def get_secret_versions( - self, vault_base_url, secret_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List all versions of the specified secret. - - The full secret identifier and attributes are provided in the response. - No values are returned for the secrets. This operations requires the - secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified, the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SecretItem - :rtype: - ~azure.keyvault.models.SecretItemPaged[~azure.keyvault.models.SecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_secret_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_secret_versions.metadata = {'url': '/secrets/{secret-name}/versions'} - - def get_deleted_secrets( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists deleted secrets for the specified vault. - - The Get Deleted Secrets operation returns the secrets that have been - deleted for a vault enabled for soft-delete. This operation requires - the secrets/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedSecretItem - :rtype: - ~azure.keyvault.models.DeletedSecretItemPaged[~azure.keyvault.models.DeletedSecretItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_secrets.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_secrets.metadata = {'url': '/deletedsecrets'} - - def get_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Gets the specified deleted secret. - - The Get Deleted Secret operation returns the specified deleted secret - along with its attributes. This operation requires the secrets/get - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedSecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} - - def purge_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified secret. - - The purge deleted secret operation removes the secret permanently, - without the possibility of recovery. This operation can only be enabled - on a soft-delete enabled vault. This operation requires the - secrets/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} - - def recover_deleted_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted secret to the latest version. - - Recovers the deleted secret in the specified vault. This operation can - only be performed on a soft-delete enabled vault. This operation - requires the secrets/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the deleted secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}/recover'} - - def backup_secret( - self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): - """Backs up the specified secret. - - Requests that a backup of the specified secret be downloaded to the - client. All versions of the secret will be downloaded. This operation - requires the secrets/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_name: The name of the secret. - :type secret_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupSecretResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.BackupSecretResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'secret-name': self._serialize.url("secret_name", secret_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupSecretResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_secret.metadata = {'url': '/secrets/{secret-name}/backup'} - - def restore_secret( - self, vault_base_url, secret_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up secret to a vault. - - Restores a backed up secret, and all its versions, to a vault. This - operation requires the secrets/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param secret_bundle_backup: The backup blob associated with a secret - bundle. - :type secret_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SecretBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SecretBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SecretRestoreParameters(secret_bundle_backup=secret_bundle_backup) - - # Construct URL - url = self.restore_secret.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SecretRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SecretBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_secret.metadata = {'url': '/secrets/restore'} - - def get_certificates( - self, vault_base_url, maxresults=None, include_pending=None, custom_headers=None, raw=False, **operation_config): - """List certificates in a specified key vault. - - The GetCertificates operation returns the set of certificates resources - in the specified key vault. This operation requires the - certificates/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param include_pending: Specifies whether to include certificates - which are not completely provisioned. - :type include_pending: bool - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateItem - :rtype: - ~azure.keyvault.models.CertificateItemPaged[~azure.keyvault.models.CertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificates.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - if include_pending is not None: - query_parameters['includePending'] = self._serialize.query("include_pending", include_pending, 'bool') - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificates.metadata = {'url': '/certificates'} - - def delete_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Deletes a certificate from a specified key vault. - - Deletes all versions of a certificate object along with its associated - policy. Delete certificate cannot be used to remove individual versions - of a certificate object. This operation requires the - certificates/delete permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedCertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedCertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedCertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate.metadata = {'url': '/certificates/{certificate-name}'} - - def set_certificate_contacts( - self, vault_base_url, contact_list=None, custom_headers=None, raw=False, **operation_config): - """Sets the certificate contacts for the specified key vault. - - Sets the certificate contacts for the specified key vault. This - operation requires the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.models.Contact] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - contacts = models.Contacts(contact_list=contact_list) - - # Construct URL - url = self.set_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(contacts, 'Contacts') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def get_certificate_contacts( - self, vault_base_url, custom_headers=None, raw=False, **operation_config): - """Lists the certificate contacts for a specified key vault. - - The GetCertificateContacts operation returns the set of certificate - contact resources in the specified key vault. This operation requires - the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def delete_certificate_contacts( - self, vault_base_url, custom_headers=None, raw=False, **operation_config): - """Deletes the certificate contacts for a specified key vault. - - Deletes the certificate contacts for a specified key vault certificate. - This operation requires the certificates/managecontacts permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: Contacts or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.Contacts or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_contacts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Contacts', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_contacts.metadata = {'url': '/certificates/contacts'} - - def get_certificate_issuers( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List certificate issuers for a specified key vault. - - The GetCertificateIssuers operation returns the set of certificate - issuer resources in the specified key vault. This operation requires - the certificates/manageissuers/getissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateIssuerItem - :rtype: - ~azure.keyvault.models.CertificateIssuerItemPaged[~azure.keyvault.models.CertificateIssuerItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificate_issuers.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificate_issuers.metadata = {'url': '/certificates/issuers'} - - def set_certificate_issuer( - self, vault_base_url, issuer_name, provider, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): - """Sets the specified certificate issuer. - - The SetCertificateIssuer operation adds or updates the specified - certificate issuer. This operation requires the certificates/setissuers - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.models.IssuerCredentials - :param organization_details: Details of the organization as provided - to the issuer. - :type organization_details: ~azure.keyvault.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.models.IssuerAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameter = models.CertificateIssuerSetParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) - - # Construct URL - url = self.set_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameter, 'CertificateIssuerSetParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def update_certificate_issuer( - self, vault_base_url, issuer_name, provider=None, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified certificate issuer. - - The UpdateCertificateIssuer operation performs an update on the - specified certificate issuer entity. This operation requires the - certificates/setissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.models.IssuerCredentials - :param organization_details: Details of the organization as provided - to the issuer. - :type organization_details: ~azure.keyvault.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.models.IssuerAttributes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameter = models.CertificateIssuerUpdateParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) - - # Construct URL - url = self.update_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameter, 'CertificateIssuerUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def get_certificate_issuer( - self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): - """Lists the specified certificate issuer. - - The GetCertificateIssuer operation returns the specified certificate - issuer resources in the specified key vault. This operation requires - the certificates/manageissuers/getissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def delete_certificate_issuer( - self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): - """Deletes the specified certificate issuer. - - The DeleteCertificateIssuer operation permanently removes the specified - certificate issuer from the vault. This operation requires the - certificates/manageissuers/deleteissuers permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param issuer_name: The name of the issuer. - :type issuer_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: IssuerBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.IssuerBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_issuer.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('IssuerBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} - - def create_certificate( - self, vault_base_url, certificate_name, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates a new certificate. - - If this is the first version, the certificate resource is created. This - operation requires the certificates/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateCreateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.create_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateCreateParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [202]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 202: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - create_certificate.metadata = {'url': '/certificates/{certificate-name}/create'} - - def import_certificate( - self, vault_base_url, certificate_name, base64_encoded_certificate, password=None, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Imports a certificate into a specified key vault. - - Imports an existing valid certificate, containing a private key, into - Azure Key Vault. The certificate to be imported can be in either PFX or - PEM format. If the certificate is in PEM format the PEM file must - contain the key as well as x509 certificates. This operation requires - the certificates/import permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param base64_encoded_certificate: Base64 encoded representation of - the certificate object to import. This certificate needs to contain - the private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateImportParameters(base64_encoded_certificate=base64_encoded_certificate, password=password, certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.import_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateImportParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - import_certificate.metadata = {'url': '/certificates/{certificate-name}/import'} - - def get_certificate_versions( - self, vault_base_url, certificate_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List the versions of a certificate. - - The GetCertificateVersions operation returns the versions of a - certificate in the specified key vault. This operation requires the - certificates/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of CertificateItem - :rtype: - ~azure.keyvault.models.CertificateItemPaged[~azure.keyvault.models.CertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_certificate_versions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_certificate_versions.metadata = {'url': '/certificates/{certificate-name}/versions'} - - def get_certificate_policy( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Lists the policy for a certificate. - - The GetCertificatePolicy operation returns the specified certificate - policy resources in the specified key vault. This operation requires - the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in a given key - vault. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificatePolicy or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificatePolicy or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_policy.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificatePolicy', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} - - def update_certificate_policy( - self, vault_base_url, certificate_name, certificate_policy, custom_headers=None, raw=False, **operation_config): - """Updates the policy for a certificate. - - Set specified members in the certificate policy. Leave others as null. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given - vault. - :type certificate_name: str - :param certificate_policy: The policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificatePolicy or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificatePolicy or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.update_certificate_policy.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(certificate_policy, 'CertificatePolicy') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificatePolicy', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} - - def update_certificate( - self, vault_base_url, certificate_name, certificate_version, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given certificate. - - The UpdateCertificate operation applies the specified update on the - given certificate; the only elements updated are the certificate's - attributes. This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given key - vault. - :type certificate_name: str - :param certificate_version: The version of the certificate. - :type certificate_version: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateUpdateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.update_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), - 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} - - def get_certificate( - self, vault_base_url, certificate_name, certificate_version, custom_headers=None, raw=False, **operation_config): - """Gets information about a certificate. - - Gets information about a specific certificate. This operation requires - the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate in the given - vault. - :type certificate_name: str - :param certificate_version: The version of the certificate. - :type certificate_version: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), - 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} - - def update_certificate_operation( - self, vault_base_url, certificate_name, cancellation_requested, custom_headers=None, raw=False, **operation_config): - """Updates a certificate operation. - - Updates a certificate creation operation that is already in progress. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param cancellation_requested: Indicates if cancellation was requested - on the certificate operation. - :type cancellation_requested: bool - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - certificate_operation = models.CertificateOperationUpdateParameter(cancellation_requested=cancellation_requested) - - # Construct URL - url = self.update_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(certificate_operation, 'CertificateOperationUpdateParameter') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def get_certificate_operation( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Gets the creation operation of a certificate. - - Gets the creation operation associated with a specified certificate. - This operation requires the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def delete_certificate_operation( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Deletes the creation operation for a specific certificate. - - Deletes the creation operation for a specified certificate that is in - the process of being created. The certificate is no longer created. - This operation requires the certificates/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateOperation or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateOperation or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_certificate_operation.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateOperation', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} - - def merge_certificate( - self, vault_base_url, certificate_name, x509_certificates, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Merges a certificate or a certificate chain with a key pair existing on - the server. - - The MergeCertificate operation performs the merging of a certificate or - certificate chain with a key pair currently available in the service. - This operation requires the certificates/create permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param x509_certificates: The certificate or the certificate chain to - merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: - ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateMergeParameters(x509_certificates=x509_certificates, certificate_attributes=certificate_attributes, tags=tags) - - # Construct URL - url = self.merge_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateMergeParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [201]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 201: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - merge_certificate.metadata = {'url': '/certificates/{certificate-name}/pending/merge'} - - def backup_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Backs up the specified certificate. - - Requests that a backup of the specified certificate be downloaded to - the client. All versions of the certificate will be downloaded. This - operation requires the certificates/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate. - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupCertificateResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.BackupCertificateResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupCertificateResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_certificate.metadata = {'url': '/certificates/{certificate-name}/backup'} - - def restore_certificate( - self, vault_base_url, certificate_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up certificate to a vault. - - Restores a backed up certificate, and all its versions, to a vault. - This operation requires the certificates/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_bundle_backup: The backup blob associated with a - certificate bundle. - :type certificate_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.CertificateRestoreParameters(certificate_bundle_backup=certificate_bundle_backup) - - # Construct URL - url = self.restore_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'CertificateRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_certificate.metadata = {'url': '/certificates/restore'} - - def get_deleted_certificates( - self, vault_base_url, maxresults=None, include_pending=None, custom_headers=None, raw=False, **operation_config): - """Lists the deleted certificates in the specified vault currently - available for recovery. - - The GetDeletedCertificates operation retrieves the certificates in the - current vault which are in a deleted state and ready for recovery or - purging. This operation includes deletion-specific information. This - operation requires the certificates/get/list permission. This operation - can only be enabled on soft-delete enabled vaults. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param include_pending: Specifies whether to include certificates - which are not completely provisioned. - :type include_pending: bool - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedCertificateItem - :rtype: - ~azure.keyvault.models.DeletedCertificateItemPaged[~azure.keyvault.models.DeletedCertificateItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_certificates.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - if include_pending is not None: - query_parameters['includePending'] = self._serialize.query("include_pending", include_pending, 'bool') - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_certificates.metadata = {'url': '/deletedcertificates'} - - def get_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Retrieves information about the specified deleted certificate. - - The GetDeletedCertificate operation retrieves the deleted certificate - information plus its attributes, such as retention interval, scheduled - permanent deletion and the current deletion recovery level. This - operation requires the certificates/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedCertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedCertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedCertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} - - def purge_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified deleted certificate. - - The PurgeDeletedCertificate operation performs an irreversible deletion - of the specified certificate, without possibility for recovery. The - operation is not available if the recovery level does not specify - 'Purgeable'. This operation requires the certificate/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} - - def recover_deleted_certificate( - self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted certificate back to its current version under - /certificates. - - The RecoverDeletedCertificate operation performs the reversal of the - Delete operation. The operation is applicable in vaults enabled for - soft-delete, and must be issued during the retention interval - (available in the deleted certificate's attributes). This operation - requires the certificates/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param certificate_name: The name of the deleted certificate - :type certificate_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: CertificateBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.CertificateBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_certificate.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('CertificateBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}/recover'} - - def get_storage_accounts( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List storage accounts managed by the specified key vault. This - operation requires the storage/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of StorageAccountItem - :rtype: - ~azure.keyvault.models.StorageAccountItemPaged[~azure.keyvault.models.StorageAccountItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_storage_accounts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_storage_accounts.metadata = {'url': '/storage'} - - def get_deleted_storage_accounts( - self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists deleted storage accounts for the specified vault. - - The Get Deleted Storage Accounts operation returns the storage accounts - that have been deleted for a vault enabled for soft-delete. This - operation requires the storage/list permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedStorageAccountItem - :rtype: - ~azure.keyvault.models.DeletedStorageAccountItemPaged[~azure.keyvault.models.DeletedStorageAccountItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_storage_accounts.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedStorageAccountItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedStorageAccountItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_storage_accounts.metadata = {'url': '/deletedstorage'} - - def get_deleted_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Gets the specified deleted storage account. - - The Get Deleted Storage Account operation returns the specified deleted - storage account along with its attributes. This operation requires the - storage/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedStorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedStorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedStorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}'} - - def purge_deleted_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Permanently deletes the specified storage account. - - The purge deleted storage account operation removes the secret - permanently, without the possibility of recovery. This operation can - only be performed on a soft-delete enabled vault. This operation - requires the storage/purge permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.purge_deleted_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204]: - raise models.KeyVaultErrorException(self._deserialize, response) - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - purge_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}'} - - def recover_deleted_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted storage account. - - Recovers the deleted storage account in the specified vault. This - operation can only be performed on a soft-delete enabled vault. This - operation requires the storage/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}/recover'} - - def backup_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Backs up the specified storage account. - - Requests that a backup of the specified storage account be downloaded - to the client. This operation requires the storage/backup permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: BackupStorageResult or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.BackupStorageResult or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.backup_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupStorageResult', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - backup_storage_account.metadata = {'url': '/storage/{storage-account-name}/backup'} - - def restore_storage_account( - self, vault_base_url, storage_bundle_backup, custom_headers=None, raw=False, **operation_config): - """Restores a backed up storage account to a vault. - - Restores a backed up storage account to a vault. This operation - requires the storage/restore permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_bundle_backup: The backup blob associated with a - storage account. - :type storage_bundle_backup: bytes - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageRestoreParameters(storage_bundle_backup=storage_bundle_backup) - - # Construct URL - url = self.restore_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageRestoreParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - restore_storage_account.metadata = {'url': '/storage/restore'} - - def delete_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Deletes a storage account. This operation requires the storage/delete - permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedStorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedStorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedStorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def get_storage_account( - self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): - """Gets information about a specified storage account. This operation - requires the storage/get permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def set_storage_account( - self, vault_base_url, storage_account_name, resource_id, active_key_name, auto_regenerate_key, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates or updates a new storage account. This operation requires the - storage/set permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param resource_id: Storage account resource id. - :type resource_id: str - :param active_key_name: Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration - specified in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage - account. - :type storage_account_attributes: - ~azure.keyvault.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountCreateParameters(resource_id=resource_id, active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) - - # Construct URL - url = self.set_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def update_storage_account( - self, vault_base_url, storage_account_name, active_key_name=None, auto_regenerate_key=None, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given storage - account. This operation requires the storage/set/update permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration - specified in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage - account. - :type storage_account_attributes: - ~azure.keyvault.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountUpdateParameters(active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) - - # Construct URL - url = self.update_storage_account.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_storage_account.metadata = {'url': '/storage/{storage-account-name}'} - - def regenerate_storage_account_key( - self, vault_base_url, storage_account_name, key_name, custom_headers=None, raw=False, **operation_config): - """Regenerates the specified key value for the given storage account. This - operation requires the storage/regeneratekey permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param key_name: The storage account key name. - :type key_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: StorageBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.StorageBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.StorageAccountRegenerteKeyParameters(key_name=key_name) - - # Construct URL - url = self.regenerate_storage_account_key.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'StorageAccountRegenerteKeyParameters') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StorageBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - regenerate_storage_account_key.metadata = {'url': '/storage/{storage-account-name}/regeneratekey'} - - def get_sas_definitions( - self, vault_base_url, storage_account_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """List storage SAS definitions for the given storage account. This - operation requires the storage/listsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of SasDefinitionItem - :rtype: - ~azure.keyvault.models.SasDefinitionItemPaged[~azure.keyvault.models.SasDefinitionItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_sas_definitions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_sas_definitions.metadata = {'url': '/storage/{storage-account-name}/sas'} - - def get_deleted_sas_definitions( - self, vault_base_url, storage_account_name, maxresults=None, custom_headers=None, raw=False, **operation_config): - """Lists deleted SAS definitions for the specified vault and storage - account. - - The Get Deleted Sas Definitions operation returns the SAS definitions - that have been deleted for a vault enabled for soft-delete. This - operation requires the storage/listsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param maxresults: Maximum number of results to return in a page. If - not specified the service will return up to 25 results. - :type maxresults: int - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: An iterator like instance of DeletedSasDefinitionItem - :rtype: - ~azure.keyvault.models.DeletedSasDefinitionItemPaged[~azure.keyvault.models.DeletedSasDefinitionItem] - :raises: - :class:`KeyVaultErrorException` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.get_deleted_sas_definitions.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if maxresults is not None: - query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - return response - - # Deserialize response - deserialized = models.DeletedSasDefinitionItemPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.DeletedSasDefinitionItemPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - get_deleted_sas_definitions.metadata = {'url': '/deletedstorage/{storage-account-name}/sas'} - - def get_deleted_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Gets the specified deleted sas definition. - - The Get Deleted SAS Definition operation returns the specified deleted - SAS definition along with its attributes. This operation requires the - storage/getsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedSasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_deleted_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_deleted_sas_definition.metadata = {'url': '/deletedstorage/{storage-account-name}/sas/{sas-definition-name}'} - - def recover_deleted_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Recovers the deleted SAS definition. - - Recovers the deleted SAS definition for the specified storage account. - This operation can only be performed on a soft-delete enabled vault. - This operation requires the storage/recover permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.recover_deleted_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - recover_deleted_sas_definition.metadata = {'url': '/deletedstorage/{storage-account-name}/sas/{sas-definition-name}/recover'} - - def delete_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Deletes a SAS definition from a specified storage account. This - operation requires the storage/deletesas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: DeletedSasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.DeletedSasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.delete_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('DeletedSasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - delete_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def get_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): - """Gets information about a SAS definition for the specified storage - account. This operation requires the storage/getsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - # Construct URL - url = self.get_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def set_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, template_uri, sas_type, validity_period, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Creates or updates a new SAS definition for the specified storage - account. This operation requires the storage/setsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will - have the same properties as the template. - :type template_uri: str - :param sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.models.SasTokenType - :param validity_period: The validity period of SAS tokens created - according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS - definition. - :type sas_definition_attributes: - ~azure.keyvault.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SasDefinitionCreateParameters(template_uri=template_uri, sas_type=sas_type, validity_period=validity_period, sas_definition_attributes=sas_definition_attributes, tags=tags) - - # Construct URL - url = self.set_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SasDefinitionCreateParameters') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - set_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} - - def update_sas_definition( - self, vault_base_url, storage_account_name, sas_definition_name, template_uri=None, sas_type=None, validity_period=None, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): - """Updates the specified attributes associated with the given SAS - definition. This operation requires the storage/setsas permission. - - :param vault_base_url: The vault name, for example - https://myvault.vault.azure.net. - :type vault_base_url: str - :param storage_account_name: The name of the storage account. - :type storage_account_name: str - :param sas_definition_name: The name of the SAS definition. - :type sas_definition_name: str - :param template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will - have the same properties as the template. - :type template_uri: str - :param sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.models.SasTokenType - :param validity_period: The validity period of SAS tokens created - according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS - definition. - :type sas_definition_attributes: - ~azure.keyvault.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value - pairs. - :type tags: dict[str, str] - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SasDefinitionBundle or ClientRawResponse if raw=true - :rtype: ~azure.keyvault.models.SasDefinitionBundle or - ~msrest.pipeline.ClientRawResponse - :raises: - :class:`KeyVaultErrorException` - """ - parameters = models.SasDefinitionUpdateParameters(template_uri=template_uri, sas_type=sas_type, validity_period=validity_period, sas_definition_attributes=sas_definition_attributes, tags=tags) - - # Construct URL - url = self.update_sas_definition.metadata['url'] - path_format_arguments = { - 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), - 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), - 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(parameters, 'SasDefinitionUpdateParameters') - - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - raise models.KeyVaultErrorException(self._deserialize, response) - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SasDefinitionBundle', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - update_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} diff --git a/azure-keyvault/azure/keyvault/custom/key_vault_id.py b/azure-keyvault/azure/keyvault/key_vault_id.py similarity index 100% rename from azure-keyvault/azure/keyvault/custom/key_vault_id.py rename to azure-keyvault/azure/keyvault/key_vault_id.py diff --git a/azure-keyvault/azure/keyvault/models.py b/azure-keyvault/azure/keyvault/models.py new file mode 100644 index 000000000000..5921b6434b56 --- /dev/null +++ b/azure-keyvault/azure/keyvault/models.py @@ -0,0 +1,9 @@ +# 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. +# -------------------------------------------------------------------------- +import warnings + +from .v7_0.models import * diff --git a/azure-keyvault/azure/keyvault/models/action.py b/azure-keyvault/azure/keyvault/models/action.py deleted file mode 100644 index 23a4a13670db..000000000000 --- a/azure-keyvault/azure/keyvault/models/action.py +++ /dev/null @@ -1,29 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Action(Model): - """The action that will be executed. - - :param action_type: The type of the action. Possible values include: - 'EmailContacts', 'AutoRenew' - :type action_type: str or ~azure.keyvault.models.ActionType - """ - - _attribute_map = { - 'action_type': {'key': 'action_type', 'type': 'ActionType'}, - } - - def __init__(self, **kwargs): - super(Action, self).__init__(**kwargs) - self.action_type = kwargs.get('action_type', None) diff --git a/azure-keyvault/azure/keyvault/models/action_py3.py b/azure-keyvault/azure/keyvault/models/action_py3.py deleted file mode 100644 index 285ffc71cb57..000000000000 --- a/azure-keyvault/azure/keyvault/models/action_py3.py +++ /dev/null @@ -1,29 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Action(Model): - """The action that will be executed. - - :param action_type: The type of the action. Possible values include: - 'EmailContacts', 'AutoRenew' - :type action_type: str or ~azure.keyvault.models.ActionType - """ - - _attribute_map = { - 'action_type': {'key': 'action_type', 'type': 'ActionType'}, - } - - def __init__(self, *, action_type=None, **kwargs) -> None: - super(Action, self).__init__(**kwargs) - self.action_type = action_type diff --git a/azure-keyvault/azure/keyvault/models/certificate_attributes.py b/azure-keyvault/azure/keyvault/models/certificate_attributes.py deleted file mode 100644 index a372c204ff0e..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_attributes.py +++ /dev/null @@ -1,59 +0,0 @@ -# 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 .attributes import Attributes - - -class CertificateAttributes(Attributes): - """The certificate management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for certificates in the current vault. If it contains 'Purgeable', - the certificate can be permanently deleted by a privileged user; - otherwise, only the system can purge the certificate, at the end of the - retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(CertificateAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/certificate_attributes_py3.py b/azure-keyvault/azure/keyvault/models/certificate_attributes_py3.py deleted file mode 100644 index 0a977c07a8b0..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_attributes_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# 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 .attributes_py3 import Attributes - - -class CertificateAttributes(Attributes): - """The certificate management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for certificates in the current vault. If it contains 'Purgeable', - the certificate can be permanently deleted by a privileged user; - otherwise, only the system can purge the certificate, at the end of the - retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(CertificateAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/certificate_bundle.py b/azure-keyvault/azure/keyvault/models/certificate_bundle.py deleted file mode 100644 index 7e06eccada5d..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_bundle.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateBundle(Model): - """A certificate bundle consists of a certificate (X509) plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateBundle, self).__init__(**kwargs) - self.id = None - self.kid = None - self.sid = None - self.x509_thumbprint = None - self.policy = None - self.cer = kwargs.get('cer', None) - self.content_type = kwargs.get('content_type', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_bundle_py3.py b/azure-keyvault/azure/keyvault/models/certificate_bundle_py3.py deleted file mode 100644 index f1870ec6268a..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_bundle_py3.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateBundle(Model): - """A certificate bundle consists of a certificate (X509) plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: - super(CertificateBundle, self).__init__(**kwargs) - self.id = None - self.kid = None - self.sid = None - self.x509_thumbprint = None - self.policy = None - self.cer = cer - self.content_type = content_type - self.attributes = attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/certificate_create_parameters.py b/azure-keyvault/azure/keyvault/models/certificate_create_parameters.py deleted file mode 100644 index 67b72b43f738..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_create_parameters.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateCreateParameters(Model): - """The certificate create parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateCreateParameters, self).__init__(**kwargs) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_create_parameters_py3.py b/azure-keyvault/azure/keyvault/models/certificate_create_parameters_py3.py deleted file mode 100644 index 674f3eb0a63c..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_create_parameters_py3.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateCreateParameters(Model): - """The certificate create parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateCreateParameters, self).__init__(**kwargs) - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/certificate_import_parameters.py b/azure-keyvault/azure/keyvault/models/certificate_import_parameters.py deleted file mode 100644 index 635afbd1361d..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_import_parameters.py +++ /dev/null @@ -1,54 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateImportParameters(Model): - """The certificate import parameters. - - All required parameters must be populated in order to send to Azure. - - :param base64_encoded_certificate: Required. Base64 encoded representation - of the certificate object to import. This certificate needs to contain the - private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'base64_encoded_certificate': {'required': True}, - } - - _attribute_map = { - 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateImportParameters, self).__init__(**kwargs) - self.base64_encoded_certificate = kwargs.get('base64_encoded_certificate', None) - self.password = kwargs.get('password', None) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_import_parameters_py3.py b/azure-keyvault/azure/keyvault/models/certificate_import_parameters_py3.py deleted file mode 100644 index f30ad37e711c..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_import_parameters_py3.py +++ /dev/null @@ -1,54 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateImportParameters(Model): - """The certificate import parameters. - - All required parameters must be populated in order to send to Azure. - - :param base64_encoded_certificate: Required. Base64 encoded representation - of the certificate object to import. This certificate needs to contain the - private key. - :type base64_encoded_certificate: str - :param password: If the private key in base64EncodedCertificate is - encrypted, the password used for encryption. - :type password: str - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'base64_encoded_certificate': {'required': True}, - } - - _attribute_map = { - 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, - 'password': {'key': 'pwd', 'type': 'str'}, - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, base64_encoded_certificate: str, password: str=None, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateImportParameters, self).__init__(**kwargs) - self.base64_encoded_certificate = base64_encoded_certificate - self.password = password - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/certificate_issuer_item_paged.py b/azure-keyvault/azure/keyvault/models/certificate_issuer_item_paged.py deleted file mode 100644 index aea372a5c6a1..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_issuer_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class CertificateIssuerItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`CertificateIssuerItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[CertificateIssuerItem]'} - } - - def __init__(self, *args, **kwargs): - - super(CertificateIssuerItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/certificate_issuer_set_parameters.py b/azure-keyvault/azure/keyvault/models/certificate_issuer_set_parameters.py deleted file mode 100644 index 733740938202..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_issuer_set_parameters.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerSetParameters(Model): - """The certificate issuer set parameters. - - All required parameters must be populated in order to send to Azure. - - :param provider: Required. The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: ~azure.keyvault.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.models.IssuerAttributes - """ - - _validation = { - 'provider': {'required': True}, - } - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificateIssuerSetParameters, self).__init__(**kwargs) - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_issuer_set_parameters_py3.py b/azure-keyvault/azure/keyvault/models/certificate_issuer_set_parameters_py3.py deleted file mode 100644 index 6a36eaef3ae9..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_issuer_set_parameters_py3.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerSetParameters(Model): - """The certificate issuer set parameters. - - All required parameters must be populated in order to send to Azure. - - :param provider: Required. The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: ~azure.keyvault.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.models.IssuerAttributes - """ - - _validation = { - 'provider': {'required': True}, - } - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(CertificateIssuerSetParameters, self).__init__(**kwargs) - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/models/certificate_issuer_update_parameters.py b/azure-keyvault/azure/keyvault/models/certificate_issuer_update_parameters.py deleted file mode 100644 index 44347583ed42..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_issuer_update_parameters.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerUpdateParameters(Model): - """The certificate issuer update parameters. - - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: ~azure.keyvault.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.models.IssuerAttributes - """ - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_issuer_update_parameters_py3.py b/azure-keyvault/azure/keyvault/models/certificate_issuer_update_parameters_py3.py deleted file mode 100644 index 0b06096a438d..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_issuer_update_parameters_py3.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateIssuerUpdateParameters(Model): - """The certificate issuer update parameters. - - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: ~azure.keyvault.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.models.IssuerAttributes - """ - - _attribute_map = { - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/models/certificate_item.py b/azure-keyvault/azure/keyvault/models/certificate_item.py deleted file mode 100644 index 405cc71751a5..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_item.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateItem(Model): - """The certificate item containing certificate metadata. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(CertificateItem, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.x509_thumbprint = kwargs.get('x509_thumbprint', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_item_paged.py b/azure-keyvault/azure/keyvault/models/certificate_item_paged.py deleted file mode 100644 index fc6c4609930a..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class CertificateItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`CertificateItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[CertificateItem]'} - } - - def __init__(self, *args, **kwargs): - - super(CertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/certificate_item_py3.py b/azure-keyvault/azure/keyvault/models/certificate_item_py3.py deleted file mode 100644 index 8d27a8cc6246..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_item_py3.py +++ /dev/null @@ -1,40 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateItem(Model): - """The certificate item containing certificate metadata. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, **kwargs) -> None: - super(CertificateItem, self).__init__(**kwargs) - self.id = id - self.attributes = attributes - self.tags = tags - self.x509_thumbprint = x509_thumbprint diff --git a/azure-keyvault/azure/keyvault/models/certificate_merge_parameters.py b/azure-keyvault/azure/keyvault/models/certificate_merge_parameters.py deleted file mode 100644 index cb4226161fab..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_merge_parameters.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateMergeParameters(Model): - """The certificate merge parameters. - - All required parameters must be populated in order to send to Azure. - - :param x509_certificates: Required. The certificate or the certificate - chain to merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'x509_certificates': {'required': True}, - } - - _attribute_map = { - 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateMergeParameters, self).__init__(**kwargs) - self.x509_certificates = kwargs.get('x509_certificates', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_merge_parameters_py3.py b/azure-keyvault/azure/keyvault/models/certificate_merge_parameters_py3.py deleted file mode 100644 index 375dfc9bf8e9..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_merge_parameters_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateMergeParameters(Model): - """The certificate merge parameters. - - All required parameters must be populated in order to send to Azure. - - :param x509_certificates: Required. The certificate or the certificate - chain to merge. - :type x509_certificates: list[bytearray] - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'x509_certificates': {'required': True}, - } - - _attribute_map = { - 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, x509_certificates, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateMergeParameters, self).__init__(**kwargs) - self.x509_certificates = x509_certificates - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/certificate_operation.py b/azure-keyvault/azure/keyvault/models/certificate_operation.py deleted file mode 100644 index d9976856dd6e..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_operation.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperation(Model): - """A certificate operation is returned in case of asynchronous requests. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: ~azure.keyvault.models.IssuerParameters - :param csr: The certificate signing request (CSR) that is being used in - the certificate operation. - :type csr: bytearray - :param cancellation_requested: Indicates if cancellation was requested on - the certificate operation. - :type cancellation_requested: bool - :param status: Status of the certificate operation. - :type status: str - :param status_details: The status details of the certificate operation. - :type status_details: str - :param error: Error encountered, if any, during the certificate operation. - :type error: ~azure.keyvault.models.Error - :param target: Location which contains the result of the certificate - operation. - :type target: str - :param request_id: Identifier for the certificate operation. - :type request_id: str - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'csr': {'key': 'csr', 'type': 'bytearray'}, - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - 'status': {'key': 'status', 'type': 'str'}, - 'status_details': {'key': 'status_details', 'type': 'str'}, - 'error': {'key': 'error', 'type': 'Error'}, - 'target': {'key': 'target', 'type': 'str'}, - 'request_id': {'key': 'request_id', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(CertificateOperation, self).__init__(**kwargs) - self.id = None - self.issuer_parameters = kwargs.get('issuer_parameters', None) - self.csr = kwargs.get('csr', None) - self.cancellation_requested = kwargs.get('cancellation_requested', None) - self.status = kwargs.get('status', None) - self.status_details = kwargs.get('status_details', None) - self.error = kwargs.get('error', None) - self.target = kwargs.get('target', None) - self.request_id = kwargs.get('request_id', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_operation_py3.py b/azure-keyvault/azure/keyvault/models/certificate_operation_py3.py deleted file mode 100644 index 674fa5e0414a..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_operation_py3.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateOperation(Model): - """A certificate operation is returned in case of asynchronous requests. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: ~azure.keyvault.models.IssuerParameters - :param csr: The certificate signing request (CSR) that is being used in - the certificate operation. - :type csr: bytearray - :param cancellation_requested: Indicates if cancellation was requested on - the certificate operation. - :type cancellation_requested: bool - :param status: Status of the certificate operation. - :type status: str - :param status_details: The status details of the certificate operation. - :type status_details: str - :param error: Error encountered, if any, during the certificate operation. - :type error: ~azure.keyvault.models.Error - :param target: Location which contains the result of the certificate - operation. - :type target: str - :param request_id: Identifier for the certificate operation. - :type request_id: str - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'csr': {'key': 'csr', 'type': 'bytearray'}, - 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, - 'status': {'key': 'status', 'type': 'str'}, - 'status_details': {'key': 'status_details', 'type': 'str'}, - 'error': {'key': 'error', 'type': 'Error'}, - 'target': {'key': 'target', 'type': 'str'}, - 'request_id': {'key': 'request_id', 'type': 'str'}, - } - - def __init__(self, *, issuer_parameters=None, csr: bytearray=None, cancellation_requested: bool=None, status: str=None, status_details: str=None, error=None, target: str=None, request_id: str=None, **kwargs) -> None: - super(CertificateOperation, self).__init__(**kwargs) - self.id = None - self.issuer_parameters = issuer_parameters - self.csr = csr - self.cancellation_requested = cancellation_requested - self.status = status - self.status_details = status_details - self.error = error - self.target = target - self.request_id = request_id diff --git a/azure-keyvault/azure/keyvault/models/certificate_policy.py b/azure-keyvault/azure/keyvault/models/certificate_policy.py deleted file mode 100644 index cbf8823076ea..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_policy.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificatePolicy(Model): - """Management policy for a certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param key_properties: Properties of the key backing a certificate. - :type key_properties: ~azure.keyvault.models.KeyProperties - :param secret_properties: Properties of the secret backing a certificate. - :type secret_properties: ~azure.keyvault.models.SecretProperties - :param x509_certificate_properties: Properties of the X509 component of a - certificate. - :type x509_certificate_properties: - ~azure.keyvault.models.X509CertificateProperties - :param lifetime_actions: Actions that will be performed by Key Vault over - the lifetime of a certificate. - :type lifetime_actions: list[~azure.keyvault.models.LifetimeAction] - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: ~azure.keyvault.models.IssuerParameters - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, - 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, - 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, - 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - } - - def __init__(self, **kwargs): - super(CertificatePolicy, self).__init__(**kwargs) - self.id = None - self.key_properties = kwargs.get('key_properties', None) - self.secret_properties = kwargs.get('secret_properties', None) - self.x509_certificate_properties = kwargs.get('x509_certificate_properties', None) - self.lifetime_actions = kwargs.get('lifetime_actions', None) - self.issuer_parameters = kwargs.get('issuer_parameters', None) - self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_policy_py3.py b/azure-keyvault/azure/keyvault/models/certificate_policy_py3.py deleted file mode 100644 index d338af8a0044..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_policy_py3.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificatePolicy(Model): - """Management policy for a certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :param key_properties: Properties of the key backing a certificate. - :type key_properties: ~azure.keyvault.models.KeyProperties - :param secret_properties: Properties of the secret backing a certificate. - :type secret_properties: ~azure.keyvault.models.SecretProperties - :param x509_certificate_properties: Properties of the X509 component of a - certificate. - :type x509_certificate_properties: - ~azure.keyvault.models.X509CertificateProperties - :param lifetime_actions: Actions that will be performed by Key Vault over - the lifetime of a certificate. - :type lifetime_actions: list[~azure.keyvault.models.LifetimeAction] - :param issuer_parameters: Parameters for the issuer of the X509 component - of a certificate. - :type issuer_parameters: ~azure.keyvault.models.IssuerParameters - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, - 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, - 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, - 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, - 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - } - - def __init__(self, *, key_properties=None, secret_properties=None, x509_certificate_properties=None, lifetime_actions=None, issuer_parameters=None, attributes=None, **kwargs) -> None: - super(CertificatePolicy, self).__init__(**kwargs) - self.id = None - self.key_properties = key_properties - self.secret_properties = secret_properties - self.x509_certificate_properties = x509_certificate_properties - self.lifetime_actions = lifetime_actions - self.issuer_parameters = issuer_parameters - self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/models/certificate_update_parameters.py b/azure-keyvault/azure/keyvault/models/certificate_update_parameters.py deleted file mode 100644 index 9407d23b28ec..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_update_parameters.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateUpdateParameters(Model): - """The certificate update parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(CertificateUpdateParameters, self).__init__(**kwargs) - self.certificate_policy = kwargs.get('certificate_policy', None) - self.certificate_attributes = kwargs.get('certificate_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/certificate_update_parameters_py3.py b/azure-keyvault/azure/keyvault/models/certificate_update_parameters_py3.py deleted file mode 100644 index cddbe4ea6cee..000000000000 --- a/azure-keyvault/azure/keyvault/models/certificate_update_parameters_py3.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class CertificateUpdateParameters(Model): - """The certificate update parameters. - - :param certificate_policy: The management policy for the certificate. - :type certificate_policy: ~azure.keyvault.models.CertificatePolicy - :param certificate_attributes: The attributes of the certificate - (optional). - :type certificate_attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: - super(CertificateUpdateParameters, self).__init__(**kwargs) - self.certificate_policy = certificate_policy - self.certificate_attributes = certificate_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/contacts.py b/azure-keyvault/azure/keyvault/models/contacts.py deleted file mode 100644 index 4efc32f9b5be..000000000000 --- a/azure-keyvault/azure/keyvault/models/contacts.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contacts(Model): - """The contacts for the vault certificates. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the contacts collection. - :vartype id: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.models.Contact] - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, - } - - def __init__(self, **kwargs): - super(Contacts, self).__init__(**kwargs) - self.id = None - self.contact_list = kwargs.get('contact_list', None) diff --git a/azure-keyvault/azure/keyvault/models/contacts_py3.py b/azure-keyvault/azure/keyvault/models/contacts_py3.py deleted file mode 100644 index c2539d8e6de3..000000000000 --- a/azure-keyvault/azure/keyvault/models/contacts_py3.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Contacts(Model): - """The contacts for the vault certificates. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the contacts collection. - :vartype id: str - :param contact_list: The contact list for the vault certificates. - :type contact_list: list[~azure.keyvault.models.Contact] - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, - } - - def __init__(self, *, contact_list=None, **kwargs) -> None: - super(Contacts, self).__init__(**kwargs) - self.id = None - self.contact_list = contact_list diff --git a/azure-keyvault/azure/keyvault/models/deleted_certificate_bundle.py b/azure-keyvault/azure/keyvault/models/deleted_certificate_bundle.py deleted file mode 100644 index b3fac86a9805..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_certificate_bundle.py +++ /dev/null @@ -1,79 +0,0 @@ -# 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 .certificate_bundle import CertificateBundle - - -class DeletedCertificateBundle(CertificateBundle): - """A Deleted Certificate consisting of its previous id, attributes and its - tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedCertificateBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_certificate_bundle_py3.py b/azure-keyvault/azure/keyvault/models/deleted_certificate_bundle_py3.py deleted file mode 100644 index c028d1db6740..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_certificate_bundle_py3.py +++ /dev/null @@ -1,79 +0,0 @@ -# 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 .certificate_bundle_py3 import CertificateBundle - - -class DeletedCertificateBundle(CertificateBundle): - """A Deleted Certificate consisting of its previous id, attributes and its - tags, as well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The certificate id. - :vartype id: str - :ivar kid: The key id. - :vartype kid: str - :ivar sid: The secret id. - :vartype sid: str - :ivar x509_thumbprint: Thumbprint of the certificate. - :vartype x509_thumbprint: bytes - :ivar policy: The management policy. - :vartype policy: ~azure.keyvault.models.CertificatePolicy - :param cer: CER contents of x509 certificate. - :type cer: bytearray - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The certificate attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs - :type tags: dict[str, str] - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'id': {'readonly': True}, - 'kid': {'readonly': True}, - 'sid': {'readonly': True}, - 'x509_thumbprint': {'readonly': True}, - 'policy': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'sid': {'key': 'sid', 'type': 'str'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, - 'cer': {'key': 'cer', 'type': 'bytearray'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedCertificateBundle, self).__init__(cer=cer, content_type=content_type, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_certificate_item.py b/azure-keyvault/azure/keyvault/models/deleted_certificate_item.py deleted file mode 100644 index e6fa2963cc09..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_certificate_item.py +++ /dev/null @@ -1,59 +0,0 @@ -# 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 .certificate_item import CertificateItem - - -class DeletedCertificateItem(CertificateItem): - """The deleted certificate item containing metadata about the deleted - certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedCertificateItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_certificate_item_paged.py b/azure-keyvault/azure/keyvault/models/deleted_certificate_item_paged.py deleted file mode 100644 index 28328340ba83..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_certificate_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class DeletedCertificateItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedCertificateItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedCertificateItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedCertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/deleted_certificate_item_py3.py b/azure-keyvault/azure/keyvault/models/deleted_certificate_item_py3.py deleted file mode 100644 index eb9c4c941c7c..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_certificate_item_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# 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 .certificate_item_py3 import CertificateItem - - -class DeletedCertificateItem(CertificateItem): - """The deleted certificate item containing metadata about the deleted - certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Certificate identifier. - :type id: str - :param attributes: The certificate management attributes. - :type attributes: ~azure.keyvault.models.CertificateAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param x509_thumbprint: Thumbprint of the certificate. - :type x509_thumbprint: bytes - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted certificate. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the certificate is scheduled to - be purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the certificate was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedCertificateItem, self).__init__(id=id, attributes=attributes, tags=tags, x509_thumbprint=x509_thumbprint, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_key_bundle.py b/azure-keyvault/azure/keyvault/models/deleted_key_bundle.py deleted file mode 100644 index 4da00938813b..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_key_bundle.py +++ /dev/null @@ -1,61 +0,0 @@ -# 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 .key_bundle import KeyBundle - - -class DeletedKeyBundle(KeyBundle): - """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion - info. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedKeyBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_key_bundle_py3.py b/azure-keyvault/azure/keyvault/models/deleted_key_bundle_py3.py deleted file mode 100644 index f36d9a0028b1..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_key_bundle_py3.py +++ /dev/null @@ -1,61 +0,0 @@ -# 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 .key_bundle_py3 import KeyBundle - - -class DeletedKeyBundle(KeyBundle): - """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion - info. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, key=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedKeyBundle, self).__init__(key=key, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_key_item.py b/azure-keyvault/azure/keyvault/models/deleted_key_item.py deleted file mode 100644 index a3ed56f9a99e..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_key_item.py +++ /dev/null @@ -1,61 +0,0 @@ -# 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 .key_item import KeyItem - - -class DeletedKeyItem(KeyItem): - """The deleted key item containing the deleted key metadata and information - about deletion. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedKeyItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_key_item_paged.py b/azure-keyvault/azure/keyvault/models/deleted_key_item_paged.py deleted file mode 100644 index 96b80d8961cf..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_key_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class DeletedKeyItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedKeyItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedKeyItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedKeyItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/deleted_key_item_py3.py b/azure-keyvault/azure/keyvault/models/deleted_key_item_py3.py deleted file mode 100644 index f891deac56a0..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_key_item_py3.py +++ /dev/null @@ -1,61 +0,0 @@ -# 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 .key_item_py3 import KeyItem - - -class DeletedKeyItem(KeyItem): - """The deleted key item containing the deleted key metadata and information - about deletion. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted key. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the key is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the key was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, kid: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedKeyItem, self).__init__(kid=kid, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_secret_bundle.py b/azure-keyvault/azure/keyvault/models/deleted_secret_bundle.py deleted file mode 100644 index f88eb1fb02c2..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_secret_bundle.py +++ /dev/null @@ -1,72 +0,0 @@ -# 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 .secret_bundle import SecretBundle - - -class DeletedSecretBundle(SecretBundle): - """A Deleted Secret consisting of its previous id, attributes and its tags, as - well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedSecretBundle, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_secret_bundle_py3.py b/azure-keyvault/azure/keyvault/models/deleted_secret_bundle_py3.py deleted file mode 100644 index d6f4032cd614..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_secret_bundle_py3.py +++ /dev/null @@ -1,72 +0,0 @@ -# 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 .secret_bundle_py3 import SecretBundle - - -class DeletedSecretBundle(SecretBundle): - """A Deleted Secret consisting of its previous id, attributes and its tags, as - well as information on when it will be purged. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedSecretBundle, self).__init__(value=value, id=id, content_type=content_type, attributes=attributes, tags=tags, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_secret_item.py b/azure-keyvault/azure/keyvault/models/deleted_secret_item.py deleted file mode 100644 index 6faa18b080df..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_secret_item.py +++ /dev/null @@ -1,63 +0,0 @@ -# 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 .secret_item import SecretItem - - -class DeletedSecretItem(SecretItem): - """The deleted secret item containing metadata about the deleted secret. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, **kwargs): - super(DeletedSecretItem, self).__init__(**kwargs) - self.recovery_id = kwargs.get('recovery_id', None) - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_secret_item_paged.py b/azure-keyvault/azure/keyvault/models/deleted_secret_item_paged.py deleted file mode 100644 index 723328f86a49..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_secret_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class DeletedSecretItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`DeletedSecretItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[DeletedSecretItem]'} - } - - def __init__(self, *args, **kwargs): - - super(DeletedSecretItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/deleted_secret_item_py3.py b/azure-keyvault/azure/keyvault/models/deleted_secret_item_py3.py deleted file mode 100644 index 45a05db4b63e..000000000000 --- a/azure-keyvault/azure/keyvault/models/deleted_secret_item_py3.py +++ /dev/null @@ -1,63 +0,0 @@ -# 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 .secret_item_py3 import SecretItem - - -class DeletedSecretItem(SecretItem): - """The deleted secret item containing metadata about the deleted secret. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - :param recovery_id: The url of the recovery object, used to identify and - recover the deleted secret. - :type recovery_id: str - :ivar scheduled_purge_date: The time when the secret is scheduled to be - purged, in UTC - :vartype scheduled_purge_date: datetime - :ivar deleted_date: The time when the secret was deleted, in UTC - :vartype deleted_date: datetime - """ - - _validation = { - 'managed': {'readonly': True}, - 'scheduled_purge_date': {'readonly': True}, - 'deleted_date': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, - 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, - 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, recovery_id: str=None, **kwargs) -> None: - super(DeletedSecretItem, self).__init__(id=id, attributes=attributes, tags=tags, content_type=content_type, **kwargs) - self.recovery_id = recovery_id - self.scheduled_purge_date = None - self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/error.py b/azure-keyvault/azure/keyvault/models/error.py deleted file mode 100644 index 9dbe09fa48fc..000000000000 --- a/azure-keyvault/azure/keyvault/models/error.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Error(Model): - """The key vault server error. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar inner_error: - :vartype inner_error: ~azure.keyvault.models.Error - """ - - _validation = { - 'code': {'readonly': True}, - 'message': {'readonly': True}, - 'inner_error': {'readonly': True}, - } - - _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'inner_error': {'key': 'innererror', 'type': 'Error'}, - } - - def __init__(self, **kwargs): - super(Error, self).__init__(**kwargs) - self.code = None - self.message = None - self.inner_error = None diff --git a/azure-keyvault/azure/keyvault/models/error_py3.py b/azure-keyvault/azure/keyvault/models/error_py3.py deleted file mode 100644 index 660e077d36db..000000000000 --- a/azure-keyvault/azure/keyvault/models/error_py3.py +++ /dev/null @@ -1,45 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class Error(Model): - """The key vault server error. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar inner_error: - :vartype inner_error: ~azure.keyvault.models.Error - """ - - _validation = { - 'code': {'readonly': True}, - 'message': {'readonly': True}, - 'inner_error': {'readonly': True}, - } - - _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'inner_error': {'key': 'innererror', 'type': 'Error'}, - } - - def __init__(self, **kwargs) -> None: - super(Error, self).__init__(**kwargs) - self.code = None - self.message = None - self.inner_error = None diff --git a/azure-keyvault/azure/keyvault/models/issuer_bundle.py b/azure-keyvault/azure/keyvault/models/issuer_bundle.py deleted file mode 100644 index 778b64ada702..000000000000 --- a/azure-keyvault/azure/keyvault/models/issuer_bundle.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerBundle(Model): - """The issuer for Key Vault certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the issuer object. - :vartype id: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: ~azure.keyvault.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.models.IssuerAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, **kwargs): - super(IssuerBundle, self).__init__(**kwargs) - self.id = None - self.provider = kwargs.get('provider', None) - self.credentials = kwargs.get('credentials', None) - self.organization_details = kwargs.get('organization_details', None) - self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/models/issuer_bundle_py3.py b/azure-keyvault/azure/keyvault/models/issuer_bundle_py3.py deleted file mode 100644 index c8a3dc83178a..000000000000 --- a/azure-keyvault/azure/keyvault/models/issuer_bundle_py3.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class IssuerBundle(Model): - """The issuer for Key Vault certificate. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Identifier for the issuer object. - :vartype id: str - :param provider: The issuer provider. - :type provider: str - :param credentials: The credentials to be used for the issuer. - :type credentials: ~azure.keyvault.models.IssuerCredentials - :param organization_details: Details of the organization as provided to - the issuer. - :type organization_details: ~azure.keyvault.models.OrganizationDetails - :param attributes: Attributes of the issuer object. - :type attributes: ~azure.keyvault.models.IssuerAttributes - """ - - _validation = { - 'id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'provider': {'key': 'provider', 'type': 'str'}, - 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, - 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, - 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, - } - - def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: - super(IssuerBundle, self).__init__(**kwargs) - self.id = None - self.provider = provider - self.credentials = credentials - self.organization_details = organization_details - self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/models/json_web_key.py b/azure-keyvault/azure/keyvault/models/json_web_key.py deleted file mode 100644 index eae162cf0873..000000000000 --- a/azure-keyvault/azure/keyvault/models/json_web_key.py +++ /dev/null @@ -1,92 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JsonWebKey(Model): - """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. - - :param kid: Key identifier. - :type kid: str - :param kty: JsonWebKey Key Type (kty), as defined in - https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40. - Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.models.JsonWebKeyType - :param key_ops: - :type key_ops: list[str] - :param n: RSA modulus. - :type n: bytes - :param e: RSA public exponent. - :type e: bytes - :param d: RSA private exponent, or the D component of an EC private key. - :type d: bytes - :param dp: RSA private key parameter. - :type dp: bytes - :param dq: RSA private key parameter. - :type dq: bytes - :param qi: RSA private key parameter. - :type qi: bytes - :param p: RSA secret prime. - :type p: bytes - :param q: RSA secret prime, with p < q. - :type q: bytes - :param k: Symmetric key. - :type k: bytes - :param t: HSM Token, used with 'Bring Your Own Key'. - :type t: bytes - :param crv: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type crv: str or ~azure.keyvault.models.JsonWebKeyCurveName - :param x: X component of an EC public key. - :type x: bytes - :param y: Y component of an EC public key. - :type y: bytes - """ - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'n': {'key': 'n', 'type': 'base64'}, - 'e': {'key': 'e', 'type': 'base64'}, - 'd': {'key': 'd', 'type': 'base64'}, - 'dp': {'key': 'dp', 'type': 'base64'}, - 'dq': {'key': 'dq', 'type': 'base64'}, - 'qi': {'key': 'qi', 'type': 'base64'}, - 'p': {'key': 'p', 'type': 'base64'}, - 'q': {'key': 'q', 'type': 'base64'}, - 'k': {'key': 'k', 'type': 'base64'}, - 't': {'key': 'key_hsm', 'type': 'base64'}, - 'crv': {'key': 'crv', 'type': 'str'}, - 'x': {'key': 'x', 'type': 'base64'}, - 'y': {'key': 'y', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(JsonWebKey, self).__init__(**kwargs) - self.kid = kwargs.get('kid', None) - self.kty = kwargs.get('kty', None) - self.key_ops = kwargs.get('key_ops', None) - self.n = kwargs.get('n', None) - self.e = kwargs.get('e', None) - self.d = kwargs.get('d', None) - self.dp = kwargs.get('dp', None) - self.dq = kwargs.get('dq', None) - self.qi = kwargs.get('qi', None) - self.p = kwargs.get('p', None) - self.q = kwargs.get('q', None) - self.k = kwargs.get('k', None) - self.t = kwargs.get('t', None) - self.crv = kwargs.get('crv', None) - self.x = kwargs.get('x', None) - self.y = kwargs.get('y', None) diff --git a/azure-keyvault/azure/keyvault/models/json_web_key_py3.py b/azure-keyvault/azure/keyvault/models/json_web_key_py3.py deleted file mode 100644 index 686a4731a6cd..000000000000 --- a/azure-keyvault/azure/keyvault/models/json_web_key_py3.py +++ /dev/null @@ -1,92 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class JsonWebKey(Model): - """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. - - :param kid: Key identifier. - :type kid: str - :param kty: JsonWebKey Key Type (kty), as defined in - https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40. - Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type kty: str or ~azure.keyvault.models.JsonWebKeyType - :param key_ops: - :type key_ops: list[str] - :param n: RSA modulus. - :type n: bytes - :param e: RSA public exponent. - :type e: bytes - :param d: RSA private exponent, or the D component of an EC private key. - :type d: bytes - :param dp: RSA private key parameter. - :type dp: bytes - :param dq: RSA private key parameter. - :type dq: bytes - :param qi: RSA private key parameter. - :type qi: bytes - :param p: RSA secret prime. - :type p: bytes - :param q: RSA secret prime, with p < q. - :type q: bytes - :param k: Symmetric key. - :type k: bytes - :param t: HSM Token, used with 'Bring Your Own Key'. - :type t: bytes - :param crv: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type crv: str or ~azure.keyvault.models.JsonWebKeyCurveName - :param x: X component of an EC public key. - :type x: bytes - :param y: Y component of an EC public key. - :type y: bytes - """ - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'n': {'key': 'n', 'type': 'base64'}, - 'e': {'key': 'e', 'type': 'base64'}, - 'd': {'key': 'd', 'type': 'base64'}, - 'dp': {'key': 'dp', 'type': 'base64'}, - 'dq': {'key': 'dq', 'type': 'base64'}, - 'qi': {'key': 'qi', 'type': 'base64'}, - 'p': {'key': 'p', 'type': 'base64'}, - 'q': {'key': 'q', 'type': 'base64'}, - 'k': {'key': 'k', 'type': 'base64'}, - 't': {'key': 'key_hsm', 'type': 'base64'}, - 'crv': {'key': 'crv', 'type': 'str'}, - 'x': {'key': 'x', 'type': 'base64'}, - 'y': {'key': 'y', 'type': 'base64'}, - } - - def __init__(self, *, kid: str=None, kty=None, key_ops=None, n: bytes=None, e: bytes=None, d: bytes=None, dp: bytes=None, dq: bytes=None, qi: bytes=None, p: bytes=None, q: bytes=None, k: bytes=None, t: bytes=None, crv=None, x: bytes=None, y: bytes=None, **kwargs) -> None: - super(JsonWebKey, self).__init__(**kwargs) - self.kid = kid - self.kty = kty - self.key_ops = key_ops - self.n = n - self.e = e - self.d = d - self.dp = dp - self.dq = dq - self.qi = qi - self.p = p - self.q = q - self.k = k - self.t = t - self.crv = crv - self.x = x - self.y = y diff --git a/azure-keyvault/azure/keyvault/models/key_attributes.py b/azure-keyvault/azure/keyvault/models/key_attributes.py deleted file mode 100644 index d1fb33f64a64..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_attributes.py +++ /dev/null @@ -1,58 +0,0 @@ -# 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 .attributes import Attributes - - -class KeyAttributes(Attributes): - """The attributes of a key managed by the key vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for keys in the current vault. If it contains 'Purgeable' the key - can be permanently deleted by a privileged user; otherwise, only the - system can purge the key, at the end of the retention interval. Possible - values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(KeyAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/key_attributes_py3.py b/azure-keyvault/azure/keyvault/models/key_attributes_py3.py deleted file mode 100644 index ee606fe0f5f4..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_attributes_py3.py +++ /dev/null @@ -1,58 +0,0 @@ -# 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 .attributes_py3 import Attributes - - -class KeyAttributes(Attributes): - """The attributes of a key managed by the key vault service. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for keys in the current vault. If it contains 'Purgeable' the key - can be permanently deleted by a privileged user; otherwise, only the - system can purge the key, at the end of the retention interval. Possible - values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(KeyAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/key_bundle.py b/azure-keyvault/azure/keyvault/models/key_bundle.py deleted file mode 100644 index 0dd494c6de1d..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_bundle.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyBundle(Model): - """A KeyBundle consisting of a WebKey plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyBundle, self).__init__(**kwargs) - self.key = kwargs.get('key', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/key_bundle_py3.py b/azure-keyvault/azure/keyvault/models/key_bundle_py3.py deleted file mode 100644 index 53e3abc61095..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_bundle_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyBundle(Model): - """A KeyBundle consisting of a WebKey plus its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param key: The Json web key. - :type key: ~azure.keyvault.models.JsonWebKey - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, key=None, attributes=None, tags=None, **kwargs) -> None: - super(KeyBundle, self).__init__(**kwargs) - self.key = key - self.attributes = attributes - self.tags = tags - self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/key_create_parameters.py b/azure-keyvault/azure/keyvault/models/key_create_parameters.py deleted file mode 100644 index 9db5bfb65d1c..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_create_parameters.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyCreateParameters(Model): - """The key create parameters. - - All required parameters must be populated in order to send to Azure. - - :param kty: Required. The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', - 'oct' - :type kty: str or ~azure.keyvault.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or ~azure.keyvault.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type curve: str or ~azure.keyvault.models.JsonWebKeyCurveName - """ - - _validation = { - 'kty': {'required': True, 'min_length': 1}, - } - - _attribute_map = { - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(KeyCreateParameters, self).__init__(**kwargs) - self.kty = kwargs.get('kty', None) - self.key_size = kwargs.get('key_size', None) - self.key_ops = kwargs.get('key_ops', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) - self.curve = kwargs.get('curve', None) diff --git a/azure-keyvault/azure/keyvault/models/key_create_parameters_py3.py b/azure-keyvault/azure/keyvault/models/key_create_parameters_py3.py deleted file mode 100644 index 04c8556245bf..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_create_parameters_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyCreateParameters(Model): - """The key create parameters. - - All required parameters must be populated in order to send to Azure. - - :param kty: Required. The type of key to create. For valid values, see - JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', - 'oct' - :type kty: str or ~azure.keyvault.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param key_ops: - :type key_ops: list[str or ~azure.keyvault.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type curve: str or ~azure.keyvault.models.JsonWebKeyCurveName - """ - - _validation = { - 'kty': {'required': True, 'min_length': 1}, - } - - _attribute_map = { - 'kty': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, *, kty, key_size: int=None, key_ops=None, key_attributes=None, tags=None, curve=None, **kwargs) -> None: - super(KeyCreateParameters, self).__init__(**kwargs) - self.kty = kty - self.key_size = key_size - self.key_ops = key_ops - self.key_attributes = key_attributes - self.tags = tags - self.curve = curve diff --git a/azure-keyvault/azure/keyvault/models/key_import_parameters.py b/azure-keyvault/azure/keyvault/models/key_import_parameters.py deleted file mode 100644 index f309aad29ea8..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_import_parameters.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyImportParameters(Model): - """The key import parameters. - - All required parameters must be populated in order to send to Azure. - - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key: Required. The Json web key - :type key: ~azure.keyvault.models.JsonWebKey - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'key': {'required': True}, - } - - _attribute_map = { - 'hsm': {'key': 'Hsm', 'type': 'bool'}, - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(KeyImportParameters, self).__init__(**kwargs) - self.hsm = kwargs.get('hsm', None) - self.key = kwargs.get('key', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/key_import_parameters_py3.py b/azure-keyvault/azure/keyvault/models/key_import_parameters_py3.py deleted file mode 100644 index 6808d2290484..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_import_parameters_py3.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyImportParameters(Model): - """The key import parameters. - - All required parameters must be populated in order to send to Azure. - - :param hsm: Whether to import as a hardware key (HSM) or software key. - :type hsm: bool - :param key: Required. The Json web key - :type key: ~azure.keyvault.models.JsonWebKey - :param key_attributes: The key management attributes. - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'key': {'required': True}, - } - - _attribute_map = { - 'hsm': {'key': 'Hsm', 'type': 'bool'}, - 'key': {'key': 'key', 'type': 'JsonWebKey'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, key, hsm: bool=None, key_attributes=None, tags=None, **kwargs) -> None: - super(KeyImportParameters, self).__init__(**kwargs) - self.hsm = hsm - self.key = key - self.key_attributes = key_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/key_item.py b/azure-keyvault/azure/keyvault/models/key_item.py deleted file mode 100644 index 6a4697b9a54d..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_item.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyItem(Model): - """The key item containing key metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(KeyItem, self).__init__(**kwargs) - self.kid = kwargs.get('kid', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/key_item_paged.py b/azure-keyvault/azure/keyvault/models/key_item_paged.py deleted file mode 100644 index 8f2c62fbaa44..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class KeyItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`KeyItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[KeyItem]'} - } - - def __init__(self, *args, **kwargs): - - super(KeyItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/key_item_py3.py b/azure-keyvault/azure/keyvault/models/key_item_py3.py deleted file mode 100644 index cc00bce8ee47..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_item_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyItem(Model): - """The key item containing key metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param kid: Key identifier. - :type kid: str - :param attributes: The key management attributes. - :type attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar managed: True if the key's lifetime is managed by key vault. If this - is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'kid': {'key': 'kid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, kid: str=None, attributes=None, tags=None, **kwargs) -> None: - super(KeyItem, self).__init__(**kwargs) - self.kid = kid - self.attributes = attributes - self.tags = tags - self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/key_operations_parameters.py b/azure-keyvault/azure/keyvault/models/key_operations_parameters.py deleted file mode 100644 index 76c19c93e69c..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_operations_parameters.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationsParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeyEncryptionAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyOperationsParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.value = kwargs.get('value', None) diff --git a/azure-keyvault/azure/keyvault/models/key_operations_parameters_py3.py b/azure-keyvault/azure/keyvault/models/key_operations_parameters_py3.py deleted file mode 100644 index 95908ea94bf7..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_operations_parameters_py3.py +++ /dev/null @@ -1,41 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyOperationsParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. algorithm identifier. Possible values include: - 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeyEncryptionAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: - super(KeyOperationsParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.value = value diff --git a/azure-keyvault/azure/keyvault/models/key_properties.py b/azure-keyvault/azure/keyvault/models/key_properties.py deleted file mode 100644 index 0e5833f15189..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_properties.py +++ /dev/null @@ -1,49 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyProperties(Model): - """Properties of the key pair backing a certificate. - - :param exportable: Indicates if the private key can be exported. - :type exportable: bool - :param key_type: The type of key pair to be used for the certificate. - Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type key_type: str or ~azure.keyvault.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param reuse_key: Indicates if the same key pair will be used on - certificate renewal. - :type reuse_key: bool - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type curve: str or ~azure.keyvault.models.JsonWebKeyCurveName - """ - - _attribute_map = { - 'exportable': {'key': 'exportable', 'type': 'bool'}, - 'key_type': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(KeyProperties, self).__init__(**kwargs) - self.exportable = kwargs.get('exportable', None) - self.key_type = kwargs.get('key_type', None) - self.key_size = kwargs.get('key_size', None) - self.reuse_key = kwargs.get('reuse_key', None) - self.curve = kwargs.get('curve', None) diff --git a/azure-keyvault/azure/keyvault/models/key_properties_py3.py b/azure-keyvault/azure/keyvault/models/key_properties_py3.py deleted file mode 100644 index 0361f75985c4..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_properties_py3.py +++ /dev/null @@ -1,49 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyProperties(Model): - """Properties of the key pair backing a certificate. - - :param exportable: Indicates if the private key can be exported. - :type exportable: bool - :param key_type: The type of key pair to be used for the certificate. - Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' - :type key_type: str or ~azure.keyvault.models.JsonWebKeyType - :param key_size: The key size in bits. For example: 2048, 3072, or 4096 - for RSA. - :type key_size: int - :param reuse_key: Indicates if the same key pair will be used on - certificate renewal. - :type reuse_key: bool - :param curve: Elliptic curve name. For valid values, see - JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', - 'P-256K' - :type curve: str or ~azure.keyvault.models.JsonWebKeyCurveName - """ - - _attribute_map = { - 'exportable': {'key': 'exportable', 'type': 'bool'}, - 'key_type': {'key': 'kty', 'type': 'str'}, - 'key_size': {'key': 'key_size', 'type': 'int'}, - 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, - 'curve': {'key': 'crv', 'type': 'str'}, - } - - def __init__(self, *, exportable: bool=None, key_type=None, key_size: int=None, reuse_key: bool=None, curve=None, **kwargs) -> None: - super(KeyProperties, self).__init__(**kwargs) - self.exportable = exportable - self.key_type = key_type - self.key_size = key_size - self.reuse_key = reuse_key - self.curve = curve diff --git a/azure-keyvault/azure/keyvault/models/key_sign_parameters.py b/azure-keyvault/azure/keyvault/models/key_sign_parameters.py deleted file mode 100644 index fb510184d659..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_sign_parameters.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeySignParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm identifier. - For more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', - 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', - 'ES256K' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeySignatureAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeySignParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.value = kwargs.get('value', None) diff --git a/azure-keyvault/azure/keyvault/models/key_sign_parameters_py3.py b/azure-keyvault/azure/keyvault/models/key_sign_parameters_py3.py deleted file mode 100644 index bd791cc7e9cf..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_sign_parameters_py3.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeySignParameters(Model): - """The key operations parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm identifier. - For more information on possible algorithm types, see - JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', - 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', - 'ES256K' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeySignatureAlgorithm - :param value: Required. - :type value: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'value': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: - super(KeySignParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.value = value diff --git a/azure-keyvault/azure/keyvault/models/key_update_parameters.py b/azure-keyvault/azure/keyvault/models/key_update_parameters.py deleted file mode 100644 index 976411447e50..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_update_parameters.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyUpdateParameters(Model): - """The key update parameters. - - :param key_ops: Json web key operations. For more information on possible - key operations, see JsonWebKeyOperation. - :type key_ops: list[str or ~azure.keyvault.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(KeyUpdateParameters, self).__init__(**kwargs) - self.key_ops = kwargs.get('key_ops', None) - self.key_attributes = kwargs.get('key_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/key_update_parameters_py3.py b/azure-keyvault/azure/keyvault/models/key_update_parameters_py3.py deleted file mode 100644 index 0a6f96024f97..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_update_parameters_py3.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyUpdateParameters(Model): - """The key update parameters. - - :param key_ops: Json web key operations. For more information on possible - key operations, see JsonWebKeyOperation. - :type key_ops: list[str or ~azure.keyvault.models.JsonWebKeyOperation] - :param key_attributes: - :type key_attributes: ~azure.keyvault.models.KeyAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'key_ops': {'key': 'key_ops', 'type': '[str]'}, - 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, key_ops=None, key_attributes=None, tags=None, **kwargs) -> None: - super(KeyUpdateParameters, self).__init__(**kwargs) - self.key_ops = key_ops - self.key_attributes = key_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/key_vault_error.py b/azure-keyvault/azure/keyvault/models/key_vault_error.py deleted file mode 100644 index 91500f293c84..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_vault_error.py +++ /dev/null @@ -1,48 +0,0 @@ -# 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 - - -class KeyVaultError(Model): - """The key vault error exception. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar error: - :vartype error: ~azure.keyvault.models.Error - """ - - _validation = { - 'error': {'readonly': True}, - } - - _attribute_map = { - 'error': {'key': 'error', 'type': 'Error'}, - } - - def __init__(self, **kwargs): - super(KeyVaultError, self).__init__(**kwargs) - self.error = None - - -class KeyVaultErrorException(HttpOperationError): - """Server responsed with exception of type: 'KeyVaultError'. - - :param deserialize: A deserializer - :param response: Server response to be deserialized. - """ - - def __init__(self, deserialize, response, *args): - - super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/azure-keyvault/azure/keyvault/models/key_vault_error_py3.py b/azure-keyvault/azure/keyvault/models/key_vault_error_py3.py deleted file mode 100644 index 288f1d24494c..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_vault_error_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# 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 - - -class KeyVaultError(Model): - """The key vault error exception. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar error: - :vartype error: ~azure.keyvault.models.Error - """ - - _validation = { - 'error': {'readonly': True}, - } - - _attribute_map = { - 'error': {'key': 'error', 'type': 'Error'}, - } - - def __init__(self, **kwargs) -> None: - super(KeyVaultError, self).__init__(**kwargs) - self.error = None - - -class KeyVaultErrorException(HttpOperationError): - """Server responsed with exception of type: 'KeyVaultError'. - - :param deserialize: A deserializer - :param response: Server response to be deserialized. - """ - - def __init__(self, deserialize, response, *args): - - super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/azure-keyvault/azure/keyvault/models/key_verify_parameters.py b/azure-keyvault/azure/keyvault/models/key_verify_parameters.py deleted file mode 100644 index c2c4d31531c2..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_verify_parameters.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyParameters(Model): - """The key verify parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm. For more - information on possible algorithm types, see JsonWebKeySignatureAlgorithm. - Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', - 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ES256K' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeySignatureAlgorithm - :param digest: Required. The digest used for signing. - :type digest: bytes - :param signature: Required. The signature to be verified. - :type signature: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'digest': {'required': True}, - 'signature': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'digest': {'key': 'digest', 'type': 'base64'}, - 'signature': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, **kwargs): - super(KeyVerifyParameters, self).__init__(**kwargs) - self.algorithm = kwargs.get('algorithm', None) - self.digest = kwargs.get('digest', None) - self.signature = kwargs.get('signature', None) diff --git a/azure-keyvault/azure/keyvault/models/key_verify_parameters_py3.py b/azure-keyvault/azure/keyvault/models/key_verify_parameters_py3.py deleted file mode 100644 index da00a773acb3..000000000000 --- a/azure-keyvault/azure/keyvault/models/key_verify_parameters_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class KeyVerifyParameters(Model): - """The key verify parameters. - - All required parameters must be populated in order to send to Azure. - - :param algorithm: Required. The signing/verification algorithm. For more - information on possible algorithm types, see JsonWebKeySignatureAlgorithm. - Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', - 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ES256K' - :type algorithm: str or - ~azure.keyvault.models.JsonWebKeySignatureAlgorithm - :param digest: Required. The digest used for signing. - :type digest: bytes - :param signature: Required. The signature to be verified. - :type signature: bytes - """ - - _validation = { - 'algorithm': {'required': True, 'min_length': 1}, - 'digest': {'required': True}, - 'signature': {'required': True}, - } - - _attribute_map = { - 'algorithm': {'key': 'alg', 'type': 'str'}, - 'digest': {'key': 'digest', 'type': 'base64'}, - 'signature': {'key': 'value', 'type': 'base64'}, - } - - def __init__(self, *, algorithm, digest: bytes, signature: bytes, **kwargs) -> None: - super(KeyVerifyParameters, self).__init__(**kwargs) - self.algorithm = algorithm - self.digest = digest - self.signature = signature diff --git a/azure-keyvault/azure/keyvault/models/lifetime_action.py b/azure-keyvault/azure/keyvault/models/lifetime_action.py deleted file mode 100644 index c7470e260f30..000000000000 --- a/azure-keyvault/azure/keyvault/models/lifetime_action.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class LifetimeAction(Model): - """Action and its trigger that will be performed by Key Vault over the - lifetime of a certificate. - - :param trigger: The condition that will execute the action. - :type trigger: ~azure.keyvault.models.Trigger - :param action: The action that will be executed. - :type action: ~azure.keyvault.models.Action - """ - - _attribute_map = { - 'trigger': {'key': 'trigger', 'type': 'Trigger'}, - 'action': {'key': 'action', 'type': 'Action'}, - } - - def __init__(self, **kwargs): - super(LifetimeAction, self).__init__(**kwargs) - self.trigger = kwargs.get('trigger', None) - self.action = kwargs.get('action', None) diff --git a/azure-keyvault/azure/keyvault/models/lifetime_action_py3.py b/azure-keyvault/azure/keyvault/models/lifetime_action_py3.py deleted file mode 100644 index a63470077a56..000000000000 --- a/azure-keyvault/azure/keyvault/models/lifetime_action_py3.py +++ /dev/null @@ -1,33 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class LifetimeAction(Model): - """Action and its trigger that will be performed by Key Vault over the - lifetime of a certificate. - - :param trigger: The condition that will execute the action. - :type trigger: ~azure.keyvault.models.Trigger - :param action: The action that will be executed. - :type action: ~azure.keyvault.models.Action - """ - - _attribute_map = { - 'trigger': {'key': 'trigger', 'type': 'Trigger'}, - 'action': {'key': 'action', 'type': 'Action'}, - } - - def __init__(self, *, trigger=None, action=None, **kwargs) -> None: - super(LifetimeAction, self).__init__(**kwargs) - self.trigger = trigger - self.action = action diff --git a/azure-keyvault/azure/keyvault/models/organization_details.py b/azure-keyvault/azure/keyvault/models/organization_details.py deleted file mode 100644 index c9275d5e9727..000000000000 --- a/azure-keyvault/azure/keyvault/models/organization_details.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class OrganizationDetails(Model): - """Details of the organization of the certificate issuer. - - :param id: Id of the organization. - :type id: str - :param admin_details: Details of the organization administrator. - :type admin_details: list[~azure.keyvault.models.AdministratorDetails] - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, - } - - def __init__(self, **kwargs): - super(OrganizationDetails, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.admin_details = kwargs.get('admin_details', None) diff --git a/azure-keyvault/azure/keyvault/models/organization_details_py3.py b/azure-keyvault/azure/keyvault/models/organization_details_py3.py deleted file mode 100644 index 46772a5c718d..000000000000 --- a/azure-keyvault/azure/keyvault/models/organization_details_py3.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class OrganizationDetails(Model): - """Details of the organization of the certificate issuer. - - :param id: Id of the organization. - :type id: str - :param admin_details: Details of the organization administrator. - :type admin_details: list[~azure.keyvault.models.AdministratorDetails] - """ - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, - } - - def __init__(self, *, id: str=None, admin_details=None, **kwargs) -> None: - super(OrganizationDetails, self).__init__(**kwargs) - self.id = id - self.admin_details = admin_details diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_attributes.py b/azure-keyvault/azure/keyvault/models/sas_definition_attributes.py deleted file mode 100644 index 6e7b1edb21c0..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_attributes.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionAttributes(Model): - """The SAS definition management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for SAS definitions in the current vault. If it contains - 'Purgeable' the SAS definition can be permanently deleted by a privileged - user; otherwise, only the system can purge the SAS definition, at the end - of the retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionAttributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.created = None - self.updated = None - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_attributes_py3.py b/azure-keyvault/azure/keyvault/models/sas_definition_attributes_py3.py deleted file mode 100644 index 09880b269d0c..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_attributes_py3.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionAttributes(Model): - """The SAS definition management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for SAS definitions in the current vault. If it contains - 'Purgeable' the SAS definition can be permanently deleted by a privileged - user; otherwise, only the system can purge the SAS definition, at the end - of the retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, **kwargs) -> None: - super(SasDefinitionAttributes, self).__init__(**kwargs) - self.enabled = enabled - self.created = None - self.updated = None - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_bundle.py b/azure-keyvault/azure/keyvault/models/sas_definition_bundle.py deleted file mode 100644 index 0d346a2dc449..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_bundle.py +++ /dev/null @@ -1,70 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionBundle(Model): - """A SAS definition bundle consists of key vault SAS definition details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The SAS definition id. - :vartype id: str - :ivar secret_id: Storage account SAS definition secret id. - :vartype secret_id: str - :ivar template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :vartype template_uri: str - :ivar sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :vartype sas_type: str or ~azure.keyvault.models.SasTokenType - :ivar validity_period: The validity period of SAS tokens created according - to the SAS definition. - :vartype validity_period: str - :ivar attributes: The SAS definition attributes. - :vartype attributes: ~azure.keyvault.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'template_uri': {'readonly': True}, - 'sas_type': {'readonly': True}, - 'validity_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionBundle, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.template_uri = None - self.sas_type = None - self.validity_period = None - self.attributes = None - self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_bundle_py3.py b/azure-keyvault/azure/keyvault/models/sas_definition_bundle_py3.py deleted file mode 100644 index 9aa746d4f855..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_bundle_py3.py +++ /dev/null @@ -1,70 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionBundle(Model): - """A SAS definition bundle consists of key vault SAS definition details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The SAS definition id. - :vartype id: str - :ivar secret_id: Storage account SAS definition secret id. - :vartype secret_id: str - :ivar template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :vartype template_uri: str - :ivar sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :vartype sas_type: str or ~azure.keyvault.models.SasTokenType - :ivar validity_period: The validity period of SAS tokens created according - to the SAS definition. - :vartype validity_period: str - :ivar attributes: The SAS definition attributes. - :vartype attributes: ~azure.keyvault.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'template_uri': {'readonly': True}, - 'sas_type': {'readonly': True}, - 'validity_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(SasDefinitionBundle, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.template_uri = None - self.sas_type = None - self.validity_period = None - self.attributes = None - self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_create_parameters.py b/azure-keyvault/azure/keyvault/models/sas_definition_create_parameters.py deleted file mode 100644 index 667ab8f59fa3..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_create_parameters.py +++ /dev/null @@ -1,57 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionCreateParameters(Model): - """The SAS definition create parameters. - - All required parameters must be populated in order to send to Azure. - - :param template_uri: Required. The SAS definition token template signed - with an arbitrary key. Tokens created according to the SAS definition - will have the same properties as the template. - :type template_uri: str - :param sas_type: Required. The type of SAS token the SAS definition will - create. Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.models.SasTokenType - :param validity_period: Required. The validity period of SAS tokens - created according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'template_uri': {'required': True}, - 'sas_type': {'required': True}, - 'validity_period': {'required': True}, - } - - _attribute_map = { - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionCreateParameters, self).__init__(**kwargs) - self.template_uri = kwargs.get('template_uri', None) - self.sas_type = kwargs.get('sas_type', None) - self.validity_period = kwargs.get('validity_period', None) - self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_create_parameters_py3.py b/azure-keyvault/azure/keyvault/models/sas_definition_create_parameters_py3.py deleted file mode 100644 index 71bea69977dc..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_create_parameters_py3.py +++ /dev/null @@ -1,57 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionCreateParameters(Model): - """The SAS definition create parameters. - - All required parameters must be populated in order to send to Azure. - - :param template_uri: Required. The SAS definition token template signed - with an arbitrary key. Tokens created according to the SAS definition - will have the same properties as the template. - :type template_uri: str - :param sas_type: Required. The type of SAS token the SAS definition will - create. Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.models.SasTokenType - :param validity_period: Required. The validity period of SAS tokens - created according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'template_uri': {'required': True}, - 'sas_type': {'required': True}, - 'validity_period': {'required': True}, - } - - _attribute_map = { - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, template_uri: str, sas_type, validity_period: str, sas_definition_attributes=None, tags=None, **kwargs) -> None: - super(SasDefinitionCreateParameters, self).__init__(**kwargs) - self.template_uri = template_uri - self.sas_type = sas_type - self.validity_period = validity_period - self.sas_definition_attributes = sas_definition_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_item.py b/azure-keyvault/azure/keyvault/models/sas_definition_item.py deleted file mode 100644 index ad3715ad18dd..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_item.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionItem(Model): - """The SAS definition item containing storage SAS definition metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage SAS identifier. - :vartype id: str - :ivar secret_id: The storage account SAS definition secret id. - :vartype secret_id: str - :ivar attributes: The SAS definition management attributes. - :vartype attributes: ~azure.keyvault.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionItem, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.attributes = None - self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_item_paged.py b/azure-keyvault/azure/keyvault/models/sas_definition_item_paged.py deleted file mode 100644 index e15f77ecd3d1..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class SasDefinitionItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`SasDefinitionItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[SasDefinitionItem]'} - } - - def __init__(self, *args, **kwargs): - - super(SasDefinitionItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_item_py3.py b/azure-keyvault/azure/keyvault/models/sas_definition_item_py3.py deleted file mode 100644 index d4e4ed7ff394..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_item_py3.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionItem(Model): - """The SAS definition item containing storage SAS definition metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage SAS identifier. - :vartype id: str - :ivar secret_id: The storage account SAS definition secret id. - :vartype secret_id: str - :ivar attributes: The SAS definition management attributes. - :vartype attributes: ~azure.keyvault.models.SasDefinitionAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'secret_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'secret_id': {'key': 'sid', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(SasDefinitionItem, self).__init__(**kwargs) - self.id = None - self.secret_id = None - self.attributes = None - self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_update_parameters.py b/azure-keyvault/azure/keyvault/models/sas_definition_update_parameters.py deleted file mode 100644 index 5e7c058e9ebf..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_update_parameters.py +++ /dev/null @@ -1,49 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionUpdateParameters(Model): - """The SAS definition update parameters. - - :param template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :type template_uri: str - :param sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.models.SasTokenType - :param validity_period: The validity period of SAS tokens created - according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SasDefinitionUpdateParameters, self).__init__(**kwargs) - self.template_uri = kwargs.get('template_uri', None) - self.sas_type = kwargs.get('sas_type', None) - self.validity_period = kwargs.get('validity_period', None) - self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/sas_definition_update_parameters_py3.py b/azure-keyvault/azure/keyvault/models/sas_definition_update_parameters_py3.py deleted file mode 100644 index b1b13fda8aac..000000000000 --- a/azure-keyvault/azure/keyvault/models/sas_definition_update_parameters_py3.py +++ /dev/null @@ -1,49 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SasDefinitionUpdateParameters(Model): - """The SAS definition update parameters. - - :param template_uri: The SAS definition token template signed with an - arbitrary key. Tokens created according to the SAS definition will have - the same properties as the template. - :type template_uri: str - :param sas_type: The type of SAS token the SAS definition will create. - Possible values include: 'account', 'service' - :type sas_type: str or ~azure.keyvault.models.SasTokenType - :param validity_period: The validity period of SAS tokens created - according to the SAS definition. - :type validity_period: str - :param sas_definition_attributes: The attributes of the SAS definition. - :type sas_definition_attributes: - ~azure.keyvault.models.SasDefinitionAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'template_uri': {'key': 'templateUri', 'type': 'str'}, - 'sas_type': {'key': 'sasType', 'type': 'str'}, - 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, - 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, template_uri: str=None, sas_type=None, validity_period: str=None, sas_definition_attributes=None, tags=None, **kwargs) -> None: - super(SasDefinitionUpdateParameters, self).__init__(**kwargs) - self.template_uri = template_uri - self.sas_type = sas_type - self.validity_period = validity_period - self.sas_definition_attributes = sas_definition_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/secret_attributes.py b/azure-keyvault/azure/keyvault/models/secret_attributes.py deleted file mode 100644 index 58d6325b81b0..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_attributes.py +++ /dev/null @@ -1,58 +0,0 @@ -# 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 .attributes import Attributes - - -class SecretAttributes(Attributes): - """The secret management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for secrets in the current vault. If it contains 'Purgeable', the - secret can be permanently deleted by a privileged user; otherwise, only - the system can purge the secret, at the end of the retention interval. - Possible values include: 'Purgeable', 'Recoverable+Purgeable', - 'Recoverable', 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(SecretAttributes, self).__init__(**kwargs) - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/secret_attributes_py3.py b/azure-keyvault/azure/keyvault/models/secret_attributes_py3.py deleted file mode 100644 index 4c81c14e83c6..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_attributes_py3.py +++ /dev/null @@ -1,58 +0,0 @@ -# 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 .attributes_py3 import Attributes - - -class SecretAttributes(Attributes): - """The secret management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: Determines whether the object is enabled. - :type enabled: bool - :param not_before: Not before date in UTC. - :type not_before: datetime - :param expires: Expiry date in UTC. - :type expires: datetime - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for secrets in the current vault. If it contains 'Purgeable', the - secret can be permanently deleted by a privileged user; otherwise, only - the system can purge the secret, at the end of the retention interval. - Possible values include: 'Purgeable', 'Recoverable+Purgeable', - 'Recoverable', 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'not_before': {'key': 'nbf', 'type': 'unix-time'}, - 'expires': {'key': 'exp', 'type': 'unix-time'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: - super(SecretAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/secret_bundle.py b/azure-keyvault/azure/keyvault/models/secret_bundle.py deleted file mode 100644 index 53125d49292f..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_bundle.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretBundle(Model): - """A secret consisting of a value, id and its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(SecretBundle, self).__init__(**kwargs) - self.value = kwargs.get('value', None) - self.id = kwargs.get('id', None) - self.content_type = kwargs.get('content_type', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.kid = None - self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/secret_bundle_py3.py b/azure-keyvault/azure/keyvault/models/secret_bundle_py3.py deleted file mode 100644 index 63194a95a9b8..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_bundle_py3.py +++ /dev/null @@ -1,62 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretBundle(Model): - """A secret consisting of a value, id and its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param value: The secret value. - :type value: str - :param id: The secret id. - :type id: str - :param content_type: The content type of the secret. - :type content_type: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :ivar kid: If this is a secret backing a KV certificate, then this field - specifies the corresponding key backing the KV certificate. - :vartype kid: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a secret backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'kid': {'readonly': True}, - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'id': {'key': 'id', 'type': 'str'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'kid': {'key': 'kid', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: - super(SecretBundle, self).__init__(**kwargs) - self.value = value - self.id = id - self.content_type = content_type - self.attributes = attributes - self.tags = tags - self.kid = None - self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/secret_item.py b/azure-keyvault/azure/keyvault/models/secret_item.py deleted file mode 100644 index 941d1690b793..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_item.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretItem(Model): - """The secret item containing secret metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, **kwargs): - super(SecretItem, self).__init__(**kwargs) - self.id = kwargs.get('id', None) - self.attributes = kwargs.get('attributes', None) - self.tags = kwargs.get('tags', None) - self.content_type = kwargs.get('content_type', None) - self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/secret_item_paged.py b/azure-keyvault/azure/keyvault/models/secret_item_paged.py deleted file mode 100644 index a558156b2015..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class SecretItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`SecretItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[SecretItem]'} - } - - def __init__(self, *args, **kwargs): - - super(SecretItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/secret_item_py3.py b/azure-keyvault/azure/keyvault/models/secret_item_py3.py deleted file mode 100644 index 3f5f08581326..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_item_py3.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretItem(Model): - """The secret item containing secret metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param id: Secret identifier. - :type id: str - :param attributes: The secret management attributes. - :type attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :ivar managed: True if the secret's lifetime is managed by key vault. If - this is a key backing a certificate, then managed will be true. - :vartype managed: bool - """ - - _validation = { - 'managed': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'managed': {'key': 'managed', 'type': 'bool'}, - } - - def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, **kwargs) -> None: - super(SecretItem, self).__init__(**kwargs) - self.id = id - self.attributes = attributes - self.tags = tags - self.content_type = content_type - self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/secret_set_parameters.py b/azure-keyvault/azure/keyvault/models/secret_set_parameters.py deleted file mode 100644 index 39ae435e2bd5..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_set_parameters.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretSetParameters(Model): - """The secret set parameters. - - All required parameters must be populated in order to send to Azure. - - :param value: Required. The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.models.SecretAttributes - """ - - _validation = { - 'value': {'required': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - } - - def __init__(self, **kwargs): - super(SecretSetParameters, self).__init__(**kwargs) - self.value = kwargs.get('value', None) - self.tags = kwargs.get('tags', None) - self.content_type = kwargs.get('content_type', None) - self.secret_attributes = kwargs.get('secret_attributes', None) diff --git a/azure-keyvault/azure/keyvault/models/secret_set_parameters_py3.py b/azure-keyvault/azure/keyvault/models/secret_set_parameters_py3.py deleted file mode 100644 index 81a5478776ef..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_set_parameters_py3.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretSetParameters(Model): - """The secret set parameters. - - All required parameters must be populated in order to send to Azure. - - :param value: Required. The value of the secret. - :type value: str - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.models.SecretAttributes - """ - - _validation = { - 'value': {'required': True}, - } - - _attribute_map = { - 'value': {'key': 'value', 'type': 'str'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - } - - def __init__(self, *, value: str, tags=None, content_type: str=None, secret_attributes=None, **kwargs) -> None: - super(SecretSetParameters, self).__init__(**kwargs) - self.value = value - self.tags = tags - self.content_type = content_type - self.secret_attributes = secret_attributes diff --git a/azure-keyvault/azure/keyvault/models/secret_update_parameters.py b/azure-keyvault/azure/keyvault/models/secret_update_parameters.py deleted file mode 100644 index c4935f4899ea..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_update_parameters.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretUpdateParameters(Model): - """The secret update parameters. - - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(SecretUpdateParameters, self).__init__(**kwargs) - self.content_type = kwargs.get('content_type', None) - self.secret_attributes = kwargs.get('secret_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/secret_update_parameters_py3.py b/azure-keyvault/azure/keyvault/models/secret_update_parameters_py3.py deleted file mode 100644 index dfe4a1028627..000000000000 --- a/azure-keyvault/azure/keyvault/models/secret_update_parameters_py3.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class SecretUpdateParameters(Model): - """The secret update parameters. - - :param content_type: Type of the secret value such as a password. - :type content_type: str - :param secret_attributes: The secret management attributes. - :type secret_attributes: ~azure.keyvault.models.SecretAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'content_type': {'key': 'contentType', 'type': 'str'}, - 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, content_type: str=None, secret_attributes=None, tags=None, **kwargs) -> None: - super(SecretUpdateParameters, self).__init__(**kwargs) - self.content_type = content_type - self.secret_attributes = secret_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/storage_account_attributes.py b/azure-keyvault/azure/keyvault/models/storage_account_attributes.py deleted file mode 100644 index f8ba9114a0ef..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_attributes.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountAttributes(Model): - """The storage account management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for storage accounts in the current vault. If it contains - 'Purgeable' the storage account can be permanently deleted by a privileged - user; otherwise, only the system can purge the storage account, at the end - of the retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(StorageAccountAttributes, self).__init__(**kwargs) - self.enabled = kwargs.get('enabled', None) - self.created = None - self.updated = None - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/storage_account_attributes_py3.py b/azure-keyvault/azure/keyvault/models/storage_account_attributes_py3.py deleted file mode 100644 index 54110fc8b91b..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_attributes_py3.py +++ /dev/null @@ -1,56 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountAttributes(Model): - """The storage account management attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :param enabled: the enabled state of the object. - :type enabled: bool - :ivar created: Creation time in UTC. - :vartype created: datetime - :ivar updated: Last updated time in UTC. - :vartype updated: datetime - :ivar recovery_level: Reflects the deletion recovery level currently in - effect for storage accounts in the current vault. If it contains - 'Purgeable' the storage account can be permanently deleted by a privileged - user; otherwise, only the system can purge the storage account, at the end - of the retention interval. Possible values include: 'Purgeable', - 'Recoverable+Purgeable', 'Recoverable', - 'Recoverable+ProtectedSubscription' - :vartype recovery_level: str or - ~azure.keyvault.models.DeletionRecoveryLevel - """ - - _validation = { - 'created': {'readonly': True}, - 'updated': {'readonly': True}, - 'recovery_level': {'readonly': True}, - } - - _attribute_map = { - 'enabled': {'key': 'enabled', 'type': 'bool'}, - 'created': {'key': 'created', 'type': 'unix-time'}, - 'updated': {'key': 'updated', 'type': 'unix-time'}, - 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, - } - - def __init__(self, *, enabled: bool=None, **kwargs) -> None: - super(StorageAccountAttributes, self).__init__(**kwargs) - self.enabled = enabled - self.created = None - self.updated = None - self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/models/storage_account_create_parameters.py b/azure-keyvault/azure/keyvault/models/storage_account_create_parameters.py deleted file mode 100644 index bed4c83a744a..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_create_parameters.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountCreateParameters(Model): - """The storage account create parameters. - - All required parameters must be populated in order to send to Azure. - - :param resource_id: Required. Storage account resource id. - :type resource_id: str - :param active_key_name: Required. Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: Required. whether keyvault should manage the - storage account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'resource_id': {'required': True}, - 'active_key_name': {'required': True}, - 'auto_regenerate_key': {'required': True}, - } - - _attribute_map = { - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountCreateParameters, self).__init__(**kwargs) - self.resource_id = kwargs.get('resource_id', None) - self.active_key_name = kwargs.get('active_key_name', None) - self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) - self.regeneration_period = kwargs.get('regeneration_period', None) - self.storage_account_attributes = kwargs.get('storage_account_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/storage_account_create_parameters_py3.py b/azure-keyvault/azure/keyvault/models/storage_account_create_parameters_py3.py deleted file mode 100644 index eb75276dc5d5..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_create_parameters_py3.py +++ /dev/null @@ -1,59 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountCreateParameters(Model): - """The storage account create parameters. - - All required parameters must be populated in order to send to Azure. - - :param resource_id: Required. Storage account resource id. - :type resource_id: str - :param active_key_name: Required. Current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: Required. whether keyvault should manage the - storage account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _validation = { - 'resource_id': {'required': True}, - 'active_key_name': {'required': True}, - 'auto_regenerate_key': {'required': True}, - } - - _attribute_map = { - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, resource_id: str, active_key_name: str, auto_regenerate_key: bool, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: - super(StorageAccountCreateParameters, self).__init__(**kwargs) - self.resource_id = resource_id - self.active_key_name = active_key_name - self.auto_regenerate_key = auto_regenerate_key - self.regeneration_period = regeneration_period - self.storage_account_attributes = storage_account_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/storage_account_item.py b/azure-keyvault/azure/keyvault/models/storage_account_item.py deleted file mode 100644 index 1a3057e7bf17..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_item.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountItem(Model): - """The storage account item containing storage account metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Storage identifier. - :vartype id: str - :ivar resource_id: Storage account resource Id. - :vartype resource_id: str - :ivar attributes: The storage account management attributes. - :vartype attributes: ~azure.keyvault.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountItem, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.attributes = None - self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/storage_account_item_paged.py b/azure-keyvault/azure/keyvault/models/storage_account_item_paged.py deleted file mode 100644 index 985cd5a5f610..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_item_paged.py +++ /dev/null @@ -1,27 +0,0 @@ -# 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.paging import Paged - - -class StorageAccountItemPaged(Paged): - """ - A paging container for iterating over a list of :class:`StorageAccountItem ` object - """ - - _attribute_map = { - 'next_link': {'key': 'nextLink', 'type': 'str'}, - 'current_page': {'key': 'value', 'type': '[StorageAccountItem]'} - } - - def __init__(self, *args, **kwargs): - - super(StorageAccountItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/storage_account_item_py3.py b/azure-keyvault/azure/keyvault/models/storage_account_item_py3.py deleted file mode 100644 index 0dbd0edd7687..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_item_py3.py +++ /dev/null @@ -1,50 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountItem(Model): - """The storage account item containing storage account metadata. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Storage identifier. - :vartype id: str - :ivar resource_id: Storage account resource Id. - :vartype resource_id: str - :ivar attributes: The storage account management attributes. - :vartype attributes: ~azure.keyvault.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs. - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(StorageAccountItem, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.attributes = None - self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/storage_account_update_parameters.py b/azure-keyvault/azure/keyvault/models/storage_account_update_parameters.py deleted file mode 100644 index 8b9b5ecb907f..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_update_parameters.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountUpdateParameters(Model): - """The storage account update parameters. - - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageAccountUpdateParameters, self).__init__(**kwargs) - self.active_key_name = kwargs.get('active_key_name', None) - self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) - self.regeneration_period = kwargs.get('regeneration_period', None) - self.storage_account_attributes = kwargs.get('storage_account_attributes', None) - self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/models/storage_account_update_parameters_py3.py b/azure-keyvault/azure/keyvault/models/storage_account_update_parameters_py3.py deleted file mode 100644 index c6e860fbb526..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_account_update_parameters_py3.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageAccountUpdateParameters(Model): - """The storage account update parameters. - - :param active_key_name: The current active storage account key name. - :type active_key_name: str - :param auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :type auto_regenerate_key: bool - :param regeneration_period: The key regeneration time duration specified - in ISO-8601 format. - :type regeneration_period: str - :param storage_account_attributes: The attributes of the storage account. - :type storage_account_attributes: - ~azure.keyvault.models.StorageAccountAttributes - :param tags: Application specific metadata in the form of key-value pairs. - :type tags: dict[str, str] - """ - - _attribute_map = { - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, *, active_key_name: str=None, auto_regenerate_key: bool=None, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: - super(StorageAccountUpdateParameters, self).__init__(**kwargs) - self.active_key_name = active_key_name - self.auto_regenerate_key = auto_regenerate_key - self.regeneration_period = regeneration_period - self.storage_account_attributes = storage_account_attributes - self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/storage_bundle.py b/azure-keyvault/azure/keyvault/models/storage_bundle.py deleted file mode 100644 index cf5d645ba4a8..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_bundle.py +++ /dev/null @@ -1,68 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageBundle(Model): - """A Storage account bundle consists of key vault storage account details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage account id. - :vartype id: str - :ivar resource_id: The storage account resource id. - :vartype resource_id: str - :ivar active_key_name: The current active storage account key name. - :vartype active_key_name: str - :ivar auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :vartype auto_regenerate_key: bool - :ivar regeneration_period: The key regeneration time duration specified in - ISO-8601 format. - :vartype regeneration_period: str - :ivar attributes: The storage account attributes. - :vartype attributes: ~azure.keyvault.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'active_key_name': {'readonly': True}, - 'auto_regenerate_key': {'readonly': True}, - 'regeneration_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs): - super(StorageBundle, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.active_key_name = None - self.auto_regenerate_key = None - self.regeneration_period = None - self.attributes = None - self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/storage_bundle_py3.py b/azure-keyvault/azure/keyvault/models/storage_bundle_py3.py deleted file mode 100644 index 1b54975ba292..000000000000 --- a/azure-keyvault/azure/keyvault/models/storage_bundle_py3.py +++ /dev/null @@ -1,68 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class StorageBundle(Model): - """A Storage account bundle consists of key vault storage account details plus - its attributes. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: The storage account id. - :vartype id: str - :ivar resource_id: The storage account resource id. - :vartype resource_id: str - :ivar active_key_name: The current active storage account key name. - :vartype active_key_name: str - :ivar auto_regenerate_key: whether keyvault should manage the storage - account for the user. - :vartype auto_regenerate_key: bool - :ivar regeneration_period: The key regeneration time duration specified in - ISO-8601 format. - :vartype regeneration_period: str - :ivar attributes: The storage account attributes. - :vartype attributes: ~azure.keyvault.models.StorageAccountAttributes - :ivar tags: Application specific metadata in the form of key-value pairs - :vartype tags: dict[str, str] - """ - - _validation = { - 'id': {'readonly': True}, - 'resource_id': {'readonly': True}, - 'active_key_name': {'readonly': True}, - 'auto_regenerate_key': {'readonly': True}, - 'regeneration_period': {'readonly': True}, - 'attributes': {'readonly': True}, - 'tags': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, - 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, - 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, - 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, - 'tags': {'key': 'tags', 'type': '{str}'}, - } - - def __init__(self, **kwargs) -> None: - super(StorageBundle, self).__init__(**kwargs) - self.id = None - self.resource_id = None - self.active_key_name = None - self.auto_regenerate_key = None - self.regeneration_period = None - self.attributes = None - self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/x509_certificate_properties.py b/azure-keyvault/azure/keyvault/models/x509_certificate_properties.py deleted file mode 100644 index c8370d3817f0..000000000000 --- a/azure-keyvault/azure/keyvault/models/x509_certificate_properties.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class X509CertificateProperties(Model): - """Properties of the X509 component of a certificate. - - :param subject: The subject name. Should be a valid X509 distinguished - Name. - :type subject: str - :param ekus: The enhanced key usage. - :type ekus: list[str] - :param subject_alternative_names: The subject alternative names. - :type subject_alternative_names: - ~azure.keyvault.models.SubjectAlternativeNames - :param key_usage: List of key usages. - :type key_usage: list[str or ~azure.keyvault.models.KeyUsageType] - :param validity_in_months: The duration that the ceritifcate is valid in - months. - :type validity_in_months: int - """ - - _validation = { - 'validity_in_months': {'minimum': 0}, - } - - _attribute_map = { - 'subject': {'key': 'subject', 'type': 'str'}, - 'ekus': {'key': 'ekus', 'type': '[str]'}, - 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, - 'key_usage': {'key': 'key_usage', 'type': '[str]'}, - 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, - } - - def __init__(self, **kwargs): - super(X509CertificateProperties, self).__init__(**kwargs) - self.subject = kwargs.get('subject', None) - self.ekus = kwargs.get('ekus', None) - self.subject_alternative_names = kwargs.get('subject_alternative_names', None) - self.key_usage = kwargs.get('key_usage', None) - self.validity_in_months = kwargs.get('validity_in_months', None) diff --git a/azure-keyvault/azure/keyvault/models/x509_certificate_properties_py3.py b/azure-keyvault/azure/keyvault/models/x509_certificate_properties_py3.py deleted file mode 100644 index d3337a152955..000000000000 --- a/azure-keyvault/azure/keyvault/models/x509_certificate_properties_py3.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class X509CertificateProperties(Model): - """Properties of the X509 component of a certificate. - - :param subject: The subject name. Should be a valid X509 distinguished - Name. - :type subject: str - :param ekus: The enhanced key usage. - :type ekus: list[str] - :param subject_alternative_names: The subject alternative names. - :type subject_alternative_names: - ~azure.keyvault.models.SubjectAlternativeNames - :param key_usage: List of key usages. - :type key_usage: list[str or ~azure.keyvault.models.KeyUsageType] - :param validity_in_months: The duration that the ceritifcate is valid in - months. - :type validity_in_months: int - """ - - _validation = { - 'validity_in_months': {'minimum': 0}, - } - - _attribute_map = { - 'subject': {'key': 'subject', 'type': 'str'}, - 'ekus': {'key': 'ekus', 'type': '[str]'}, - 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, - 'key_usage': {'key': 'key_usage', 'type': '[str]'}, - 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, - } - - def __init__(self, *, subject: str=None, ekus=None, subject_alternative_names=None, key_usage=None, validity_in_months: int=None, **kwargs) -> None: - super(X509CertificateProperties, self).__init__(**kwargs) - self.subject = subject - self.ekus = ekus - self.subject_alternative_names = subject_alternative_names - self.key_usage = key_usage - self.validity_in_months = validity_in_months diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/__init__.py b/azure-keyvault/azure/keyvault/v2016_10_01/__init__.py new file mode 100644 index 000000000000..f5ce6ec63059 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/__init__.py @@ -0,0 +1,18 @@ +# 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 .key_vault_client import KeyVaultClient +from .version import VERSION + +__all__ = ['KeyVaultClient'] + +__version__ = VERSION + diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/key_vault_client.py b/azure-keyvault/azure/keyvault/v2016_10_01/key_vault_client.py new file mode 100644 index 000000000000..390c3b86c567 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/key_vault_client.py @@ -0,0 +1,5018 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from msrest.pipeline import ClientRawResponse +import uuid +from . import models + + +class KeyVaultClientConfiguration(AzureConfiguration): + """Configuration for KeyVaultClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + """ + + def __init__( + self, credentials): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + base_url = '{vaultBaseUrl}' + + super(KeyVaultClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-keyvault/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + + +class KeyVaultClient(SDKClient): + """The key vault client performs cryptographic key operations and vault operations against the Key Vault service. + + :ivar config: Configuration for client. + :vartype config: KeyVaultClientConfiguration + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + """ + + def __init__( + self, credentials): + + self.config = KeyVaultClientConfiguration(credentials) + super(KeyVaultClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2016-10-01' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + + def create_key( + self, vault_base_url, key_name, kty, key_size=None, key_ops=None, key_attributes=None, tags=None, curve=None, custom_headers=None, raw=False, **operation_config): + """Creates a new key, stores it, then returns key parameters and + attributes to the client. + + The create key operation can be used to create any key type in Azure + Key Vault. If the named key already exists, Azure Key Vault creates a + new version of the key. It requires the keys/create permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name for the new key. The system will generate + the version name for the new key. + :type key_name: str + :param kty: The type of key to create. For valid values, see + JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', + 'RSA-HSM', 'oct' + :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType + :param key_size: The key size in bits. For example: 2048, 3072, or + 4096 for RSA. + :type key_size: int + :param key_ops: + :type key_ops: list[str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param curve: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', + 'P-521', 'SECP256K1' + :type curve: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyCreateParameters(kty=kty, key_size=key_size, key_ops=key_ops, key_attributes=key_attributes, tags=tags, curve=curve) + + # Construct URL + url = self.create_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyCreateParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_key.metadata = {'url': '/keys/{key-name}/create'} + + def import_key( + self, vault_base_url, key_name, key, hsm=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Imports an externally created key, stores it, and returns key + parameters and attributes to the client. + + The import key operation may be used to import any key type into an + Azure Key Vault. If the named key already exists, Azure Key Vault + creates a new version of the key. This operation requires the + keys/import permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: Name for the imported key. + :type key_name: str + :param key: The Json web key + :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey + :param hsm: Whether to import as a hardware key (HSM) or software key. + :type hsm: bool + :param key_attributes: The key management attributes. + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyImportParameters(hsm=hsm, key=key, key_attributes=key_attributes, tags=tags) + + # Construct URL + url = self.import_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyImportParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + import_key.metadata = {'url': '/keys/{key-name}'} + + def delete_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Deletes a key of any type from storage in Azure Key Vault. + + The delete key operation cannot be used to remove individual versions + of a key. This operation removes the cryptographic material associated + with the key, which means the key is not usable for Sign/Verify, + Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the + keys/delete permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key to delete. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedKeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.DeletedKeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedKeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_key.metadata = {'url': '/keys/{key-name}'} + + def update_key( + self, vault_base_url, key_name, key_version, key_ops=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """The update key operation changes specified attributes of a stored key + and can be applied to any key type and key version stored in Azure Key + Vault. + + In order to perform this operation, the key must already exist in the + Key Vault. Note: The cryptographic material of a key itself cannot be + changed. This operation requires the keys/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of key to update. + :type key_name: str + :param key_version: The version of the key to update. + :type key_version: str + :param key_ops: Json web key operations. For more information on + possible key operations, see JsonWebKeyOperation. + :type key_ops: list[str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyUpdateParameters(key_ops=key_ops, key_attributes=key_attributes, tags=tags) + + # Construct URL + url = self.update_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_key.metadata = {'url': '/keys/{key-name}/{key-version}'} + + def get_key( + self, vault_base_url, key_name, key_version, custom_headers=None, raw=False, **operation_config): + """Gets the public part of a stored key. + + The get key operation is applicable to all key types. If the requested + key is symmetric, then no key material is released in the response. + This operation requires the keys/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key to get. + :type key_name: str + :param key_version: Adding the version parameter retrieves a specific + version of a key. + :type key_version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_key.metadata = {'url': '/keys/{key-name}/{key-version}'} + + def get_key_versions( + self, vault_base_url, key_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Retrieves a list of individual key versions with the same key name. + + The full key identifier, attributes, and tags are provided in the + response. This operation requires the keys/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of KeyItem + :rtype: + ~azure.keyvault.v2016_10_01.models.KeyItemPaged[~azure.keyvault.v2016_10_01.models.KeyItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_key_versions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_key_versions.metadata = {'url': '/keys/{key-name}/versions'} + + def get_keys( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List keys in the specified vault. + + Retrieves a list of the keys in the Key Vault as JSON Web Key + structures that contain the public part of a stored key. The LIST + operation is applicable to all key types, however only the base key + identifier, attributes, and tags are provided in the response. + Individual versions of a key are not listed in the response. This + operation requires the keys/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of KeyItem + :rtype: + ~azure.keyvault.v2016_10_01.models.KeyItemPaged[~azure.keyvault.v2016_10_01.models.KeyItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_keys.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_keys.metadata = {'url': '/keys'} + + def backup_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Requests that a backup of the specified key be downloaded to the + client. + + The Key Backup operation exports a key from Azure Key Vault in a + protected form. Note that this operation does NOT return key material + in a form that can be used outside the Azure Key Vault system, the + returned key material is either protected to a Azure Key Vault HSM or + to Azure Key Vault itself. The intent of this operation is to allow a + client to GENERATE a key in one Azure Key Vault instance, BACKUP the + key, and then RESTORE it into another Azure Key Vault instance. The + BACKUP operation may be used to export, in protected form, any key type + from Azure Key Vault. Individual versions of a key cannot be backed up. + BACKUP / RESTORE can be performed within geographical boundaries only; + meaning that a BACKUP from one geographical area cannot be restored to + another geographical area. For example, a backup from the US + geographical area cannot be restored in an EU geographical area. This + operation requires the key/backup permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackupKeyResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.BackupKeyResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.backup_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackupKeyResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + backup_key.metadata = {'url': '/keys/{key-name}/backup'} + + def restore_key( + self, vault_base_url, key_bundle_backup, custom_headers=None, raw=False, **operation_config): + """Restores a backed up key to a vault. + + Imports a previously backed up key into Azure Key Vault, restoring the + key, its key identifier, attributes and access control policies. The + RESTORE operation may be used to import a previously backed up key. + Individual versions of a key cannot be restored. The key is restored in + its entirety with the same key name as it had when it was backed up. If + the key name is not available in the target Key Vault, the RESTORE + operation will be rejected. While the key name is retained during + restore, the final key identifier will change if the key is restored to + a different vault. Restore will restore all versions and preserve + version identifiers. The RESTORE operation is subject to security + constraints: The target Key Vault must be owned by the same Microsoft + Azure Subscription as the source Key Vault The user must have RESTORE + permission in the target Key Vault. This operation requires the + keys/restore permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_bundle_backup: The backup blob associated with a key + bundle. + :type key_bundle_backup: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyRestoreParameters(key_bundle_backup=key_bundle_backup) + + # Construct URL + url = self.restore_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyRestoreParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + restore_key.metadata = {'url': '/keys/restore'} + + def encrypt( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Encrypts an arbitrary sequence of bytes using an encryption key that is + stored in a key vault. + + The ENCRYPT operation encrypts an arbitrary sequence of bytes using an + encryption key that is stored in Azure Key Vault. Note that the ENCRYPT + operation only supports a single block of data, the size of which is + dependent on the target key and the encryption algorithm to be used. + The ENCRYPT operation is only strictly necessary for symmetric keys + stored in Azure Key Vault since protection with an asymmetric key can + be performed using public portion of the key. This operation is + supported for asymmetric keys as a convenience for callers that have a + key-reference but do not have access to the public key material. This + operation requires the keys/encypt permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.encrypt.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyOperationsParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + encrypt.metadata = {'url': '/keys/{key-name}/{key-version}/encrypt'} + + def decrypt( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Decrypts a single block of encrypted data. + + The DECRYPT operation decrypts a well-formed block of ciphertext using + the target encryption key and specified algorithm. This operation is + the reverse of the ENCRYPT operation; only a single block of data may + be decrypted, the size of this block is dependent on the target key and + the algorithm to be used. The DECRYPT operation applies to asymmetric + and symmetric keys stored in Azure Key Vault since it uses the private + portion of the key. This operation requires the keys/decrypt + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.decrypt.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyOperationsParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + decrypt.metadata = {'url': '/keys/{key-name}/{key-version}/decrypt'} + + def sign( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Creates a signature from a digest using the specified key. + + The SIGN operation is applicable to asymmetric and symmetric keys + stored in Azure Key Vault since this operation uses the private portion + of the key. This operation requires the keys/sign permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: The signing/verification algorithm identifier. For + more information on possible algorithm types, see + JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', + 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', + 'ES384', 'ES512', 'ECDSA256' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeySignParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.sign.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeySignParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + sign.metadata = {'url': '/keys/{key-name}/{key-version}/sign'} + + def verify( + self, vault_base_url, key_name, key_version, algorithm, digest, signature, custom_headers=None, raw=False, **operation_config): + """Verifies a signature using a specified key. + + The VERIFY operation is applicable to symmetric keys stored in Azure + Key Vault. VERIFY is not strictly necessary for asymmetric keys stored + in Azure Key Vault since signature verification can be performed using + the public portion of the key but this operation is supported as a + convenience for callers that only have a key-reference and not the + public portion of the key. This operation requires the keys/verify + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: The signing/verification algorithm. For more + information on possible algorithm types, see + JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', + 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', + 'ES384', 'ES512', 'ECDSA256' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm + :param digest: The digest used for signing. + :type digest: bytes + :param signature: The signature to be verified. + :type signature: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyVerifyResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyVerifyResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyVerifyParameters(algorithm=algorithm, digest=digest, signature=signature) + + # Construct URL + url = self.verify.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyVerifyParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyVerifyResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + verify.metadata = {'url': '/keys/{key-name}/{key-version}/verify'} + + def wrap_key( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Wraps a symmetric key using a specified key. + + The WRAP operation supports encryption of a symmetric key using a key + encryption key that has previously been stored in an Azure Key Vault. + The WRAP operation is only strictly necessary for symmetric keys stored + in Azure Key Vault since protection with an asymmetric key can be + performed using the public portion of the key. This operation is + supported for asymmetric keys as a convenience for callers that have a + key-reference but do not have access to the public key material. This + operation requires the keys/wrapKey permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.wrap_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyOperationsParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + wrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/wrapkey'} + + def unwrap_key( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Unwraps a symmetric key using the specified key that was initially used + for wrapping that key. + + The UNWRAP operation supports decryption of a symmetric key using the + target key encryption key. This operation is the reverse of the WRAP + operation. The UNWRAP operation applies to asymmetric and symmetric + keys stored in Azure Key Vault since it uses the private portion of the + key. This operation requires the keys/unwrapKey permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.unwrap_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyOperationsParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + unwrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/unwrapkey'} + + def get_deleted_keys( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Lists the deleted keys in the specified vault. + + Retrieves a list of the keys in the Key Vault as JSON Web Key + structures that contain the public part of a deleted key. This + operation includes deletion-specific information. The Get Deleted Keys + operation is applicable for vaults enabled for soft-delete. While the + operation can be invoked on any vault, it will return an error if + invoked on a non soft-delete enabled vault. This operation requires the + keys/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DeletedKeyItem + :rtype: + ~azure.keyvault.v2016_10_01.models.DeletedKeyItemPaged[~azure.keyvault.v2016_10_01.models.DeletedKeyItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_deleted_keys.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_deleted_keys.metadata = {'url': '/deletedkeys'} + + def get_deleted_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Gets the public part of a deleted key. + + The Get Deleted Key operation is applicable for soft-delete enabled + vaults. While the operation can be invoked on any vault, it will return + an error if invoked on a non soft-delete enabled vault. This operation + requires the keys/get permission. . + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedKeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.DeletedKeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_deleted_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedKeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} + + def purge_deleted_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Permanently deletes the specified key. + + The Purge Deleted Key operation is applicable for soft-delete enabled + vaults. While the operation can be invoked on any vault, it will return + an error if invoked on a non soft-delete enabled vault. This operation + requires the keys/purge permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.purge_deleted_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.KeyVaultErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + purge_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} + + def recover_deleted_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Recovers the deleted key to its latest version. + + The Recover Deleted Key operation is applicable for deleted keys in + soft-delete enabled vaults. It recovers the deleted key back to its + latest version under /keys. An attempt to recover an non-deleted key + will return an error. Consider this the inverse of the delete operation + on soft-delete enabled vaults. This operation requires the keys/recover + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the deleted key. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.recover_deleted_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + recover_deleted_key.metadata = {'url': '/deletedkeys/{key-name}/recover'} + + def set_secret( + self, vault_base_url, secret_name, value, tags=None, content_type=None, secret_attributes=None, custom_headers=None, raw=False, **operation_config): + """Sets a secret in a specified key vault. + + The SET operation adds a secret to the Azure Key Vault. If the named + secret already exists, Azure Key Vault creates a new version of that + secret. This operation requires the secrets/set permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param value: The value of the secret. + :type value: str + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: + ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.SecretSetParameters(value=value, tags=tags, content_type=content_type, secret_attributes=secret_attributes) + + # Construct URL + url = self.set_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecretSetParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_secret.metadata = {'url': '/secrets/{secret-name}'} + + def delete_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Deletes a secret from a specified key vault. + + The DELETE operation applies to any secret stored in Azure Key Vault. + DELETE cannot be applied to an individual version of a secret. This + operation requires the secrets/delete permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedSecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.DeletedSecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedSecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_secret.metadata = {'url': '/secrets/{secret-name}'} + + def update_secret( + self, vault_base_url, secret_name, secret_version, content_type=None, secret_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the attributes associated with a specified secret in a given + key vault. + + The UPDATE operation changes specified attributes of an existing stored + secret. Attributes that are not specified in the request are left + unchanged. The value of a secret itself cannot be changed. This + operation requires the secrets/set permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param secret_version: The version of the secret. + :type secret_version: str + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: + ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.SecretUpdateParameters(content_type=content_type, secret_attributes=secret_attributes, tags=tags) + + # Construct URL + url = self.update_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), + 'secret-version': self._serialize.url("secret_version", secret_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecretUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} + + def get_secret( + self, vault_base_url, secret_name, secret_version, custom_headers=None, raw=False, **operation_config): + """Get a specified secret from a given key vault. + + The GET operation is applicable to any secret stored in Azure Key + Vault. This operation requires the secrets/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param secret_version: The version of the secret. + :type secret_version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), + 'secret-version': self._serialize.url("secret_version", secret_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} + + def get_secrets( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List secrets in a specified key vault. + + The Get Secrets operation is applicable to the entire vault. However, + only the base secret identifier and its attributes are provided in the + response. Individual secret versions are not listed in the response. + This operation requires the secrets/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified, the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecretItem + :rtype: + ~azure.keyvault.v2016_10_01.models.SecretItemPaged[~azure.keyvault.v2016_10_01.models.SecretItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_secrets.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_secrets.metadata = {'url': '/secrets'} + + def get_secret_versions( + self, vault_base_url, secret_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List all versions of the specified secret. + + The full secret identifier and attributes are provided in the response. + No values are returned for the secrets. This operations requires the + secrets/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified, the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecretItem + :rtype: + ~azure.keyvault.v2016_10_01.models.SecretItemPaged[~azure.keyvault.v2016_10_01.models.SecretItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_secret_versions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_secret_versions.metadata = {'url': '/secrets/{secret-name}/versions'} + + def get_deleted_secrets( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Lists deleted secrets for the specified vault. + + The Get Deleted Secrets operation returns the secrets that have been + deleted for a vault enabled for soft-delete. This operation requires + the secrets/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DeletedSecretItem + :rtype: + ~azure.keyvault.v2016_10_01.models.DeletedSecretItemPaged[~azure.keyvault.v2016_10_01.models.DeletedSecretItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_deleted_secrets.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_deleted_secrets.metadata = {'url': '/deletedsecrets'} + + def get_deleted_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified deleted secret. + + The Get Deleted Secret operation returns the specified deleted secret + along with its attributes. This operation requires the secrets/get + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedSecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.DeletedSecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_deleted_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedSecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} + + def purge_deleted_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Permanently deletes the specified secret. + + The purge deleted secret operation removes the secret permanently, + without the possibility of recovery. This operation can only be enabled + on a soft-delete enabled vault. This operation requires the + secrets/purge permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.purge_deleted_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.KeyVaultErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + purge_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} + + def recover_deleted_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Recovers the deleted secret to the latest version. + + Recovers the deleted secret in the specified vault. This operation can + only be performed on a soft-delete enabled vault. This operation + requires the secrets/recover permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the deleted secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.recover_deleted_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + recover_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}/recover'} + + def backup_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Backs up the specified secret. + + Requests that a backup of the specified secret be downloaded to the + client. All versions of the secret will be downloaded. This operation + requires the secrets/backup permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackupSecretResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.BackupSecretResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.backup_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackupSecretResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + backup_secret.metadata = {'url': '/secrets/{secret-name}/backup'} + + def restore_secret( + self, vault_base_url, secret_bundle_backup, custom_headers=None, raw=False, **operation_config): + """Restores a backed up secret to a vault. + + Restores a backed up secret, and all its versions, to a vault. This + operation requires the secrets/restore permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_bundle_backup: The backup blob associated with a secret + bundle. + :type secret_bundle_backup: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.SecretRestoreParameters(secret_bundle_backup=secret_bundle_backup) + + # Construct URL + url = self.restore_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecretRestoreParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + restore_secret.metadata = {'url': '/secrets/restore'} + + def get_certificates( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List certificates in a specified key vault. + + The GetCertificates operation returns the set of certificates resources + in the specified key vault. This operation requires the + certificates/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of CertificateItem + :rtype: + ~azure.keyvault.v2016_10_01.models.CertificateItemPaged[~azure.keyvault.v2016_10_01.models.CertificateItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_certificates.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_certificates.metadata = {'url': '/certificates'} + + def delete_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Deletes a certificate from a specified key vault. + + Deletes all versions of a certificate object along with its associated + policy. Delete certificate cannot be used to remove individual versions + of a certificate object. This operation requires the + certificates/delete permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedCertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.DeletedCertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedCertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_certificate.metadata = {'url': '/certificates/{certificate-name}'} + + def set_certificate_contacts( + self, vault_base_url, contact_list=None, custom_headers=None, raw=False, **operation_config): + """Sets the certificate contacts for the specified key vault. + + Sets the certificate contacts for the specified key vault. This + operation requires the certificates/managecontacts permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param contact_list: The contact list for the vault certificates. + :type contact_list: list[~azure.keyvault.v2016_10_01.models.Contact] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Contacts or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.Contacts or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + contacts = models.Contacts(contact_list=contact_list) + + # Construct URL + url = self.set_certificate_contacts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(contacts, 'Contacts') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Contacts', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_certificate_contacts.metadata = {'url': '/certificates/contacts'} + + def get_certificate_contacts( + self, vault_base_url, custom_headers=None, raw=False, **operation_config): + """Lists the certificate contacts for a specified key vault. + + The GetCertificateContacts operation returns the set of certificate + contact resources in the specified key vault. This operation requires + the certificates/managecontacts permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Contacts or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.Contacts or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate_contacts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Contacts', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate_contacts.metadata = {'url': '/certificates/contacts'} + + def delete_certificate_contacts( + self, vault_base_url, custom_headers=None, raw=False, **operation_config): + """Deletes the certificate contacts for a specified key vault. + + Deletes the certificate contacts for a specified key vault certificate. + This operation requires the certificates/managecontacts permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Contacts or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.Contacts or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_certificate_contacts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Contacts', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_certificate_contacts.metadata = {'url': '/certificates/contacts'} + + def get_certificate_issuers( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List certificate issuers for a specified key vault. + + The GetCertificateIssuers operation returns the set of certificate + issuer resources in the specified key vault. This operation requires + the certificates/manageissuers/getissuers permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of CertificateIssuerItem + :rtype: + ~azure.keyvault.v2016_10_01.models.CertificateIssuerItemPaged[~azure.keyvault.v2016_10_01.models.CertificateIssuerItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_certificate_issuers.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_certificate_issuers.metadata = {'url': '/certificates/issuers'} + + def set_certificate_issuer( + self, vault_base_url, issuer_name, provider, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): + """Sets the specified certificate issuer. + + The SetCertificateIssuer operation adds or updates the specified + certificate issuer. This operation requires the certificates/setissuers + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param issuer_name: The name of the issuer. + :type issuer_name: str + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: + ~azure.keyvault.v2016_10_01.models.IssuerCredentials + :param organization_details: Details of the organization as provided + to the issuer. + :type organization_details: + ~azure.keyvault.v2016_10_01.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssuerBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.IssuerBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameter = models.CertificateIssuerSetParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) + + # Construct URL + url = self.set_certificate_issuer.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameter, 'CertificateIssuerSetParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IssuerBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} + + def update_certificate_issuer( + self, vault_base_url, issuer_name, provider=None, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified certificate issuer. + + The UpdateCertificateIssuer operation performs an update on the + specified certificate issuer entity. This operation requires the + certificates/setissuers permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param issuer_name: The name of the issuer. + :type issuer_name: str + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: + ~azure.keyvault.v2016_10_01.models.IssuerCredentials + :param organization_details: Details of the organization as provided + to the issuer. + :type organization_details: + ~azure.keyvault.v2016_10_01.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssuerBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.IssuerBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameter = models.CertificateIssuerUpdateParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) + + # Construct URL + url = self.update_certificate_issuer.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameter, 'CertificateIssuerUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IssuerBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} + + def get_certificate_issuer( + self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): + """Lists the specified certificate issuer. + + The GetCertificateIssuer operation returns the specified certificate + issuer resources in the specified key vault. This operation requires + the certificates/manageissuers/getissuers permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param issuer_name: The name of the issuer. + :type issuer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssuerBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.IssuerBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate_issuer.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IssuerBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} + + def delete_certificate_issuer( + self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): + """Deletes the specified certificate issuer. + + The DeleteCertificateIssuer operation permanently removes the specified + certificate issuer from the vault. This operation requires the + certificates/manageissuers/deleteissuers permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param issuer_name: The name of the issuer. + :type issuer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssuerBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.IssuerBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_certificate_issuer.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IssuerBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} + + def create_certificate( + self, vault_base_url, certificate_name, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Creates a new certificate. + + If this is the first version, the certificate resource is created. This + operation requires the certificates/create permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateOperation or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateOperation or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateCreateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) + + # Construct URL + url = self.create_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateCreateParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [202]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 202: + deserialized = self._deserialize('CertificateOperation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_certificate.metadata = {'url': '/certificates/{certificate-name}/create'} + + def import_certificate( + self, vault_base_url, certificate_name, base64_encoded_certificate, password=None, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Imports a certificate into a specified key vault. + + Imports an existing valid certificate, containing a private key, into + Azure Key Vault. The certificate to be imported can be in either PFX or + PEM format. If the certificate is in PEM format the PEM file must + contain the key as well as x509 certificates. This operation requires + the certificates/import permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param base64_encoded_certificate: Base64 encoded representation of + the certificate object to import. This certificate needs to contain + the private key. + :type base64_encoded_certificate: str + :param password: If the private key in base64EncodedCertificate is + encrypted, the password used for encryption. + :type password: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateImportParameters(base64_encoded_certificate=base64_encoded_certificate, password=password, certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) + + # Construct URL + url = self.import_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateImportParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + import_certificate.metadata = {'url': '/certificates/{certificate-name}/import'} + + def get_certificate_versions( + self, vault_base_url, certificate_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List the versions of a certificate. + + The GetCertificateVersions operation returns the versions of a + certificate in the specified key vault. This operation requires the + certificates/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of CertificateItem + :rtype: + ~azure.keyvault.v2016_10_01.models.CertificateItemPaged[~azure.keyvault.v2016_10_01.models.CertificateItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_certificate_versions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_certificate_versions.metadata = {'url': '/certificates/{certificate-name}/versions'} + + def get_certificate_policy( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Lists the policy for a certificate. + + The GetCertificatePolicy operation returns the specified certificate + policy resources in the specified key vault. This operation requires + the certificates/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate in a given key + vault. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificatePolicy or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificatePolicy or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate_policy.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificatePolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} + + def update_certificate_policy( + self, vault_base_url, certificate_name, certificate_policy, custom_headers=None, raw=False, **operation_config): + """Updates the policy for a certificate. + + Set specified members in the certificate policy. Leave others as null. + This operation requires the certificates/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate in the given + vault. + :type certificate_name: str + :param certificate_policy: The policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificatePolicy or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificatePolicy or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.update_certificate_policy.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(certificate_policy, 'CertificatePolicy') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificatePolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} + + def update_certificate( + self, vault_base_url, certificate_name, certificate_version, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified attributes associated with the given certificate. + + The UpdateCertificate operation applies the specified update on the + given certificate; the only elements updated are the certificate's + attributes. This operation requires the certificates/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate in the given key + vault. + :type certificate_name: str + :param certificate_version: The version of the certificate. + :type certificate_version: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateUpdateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) + + # Construct URL + url = self.update_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), + 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} + + def get_certificate( + self, vault_base_url, certificate_name, certificate_version, custom_headers=None, raw=False, **operation_config): + """Gets information about a certificate. + + Gets information about a specific certificate. This operation requires + the certificates/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate in the given + vault. + :type certificate_name: str + :param certificate_version: The version of the certificate. + :type certificate_version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), + 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} + + def update_certificate_operation( + self, vault_base_url, certificate_name, cancellation_requested, custom_headers=None, raw=False, **operation_config): + """Updates a certificate operation. + + Updates a certificate creation operation that is already in progress. + This operation requires the certificates/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param cancellation_requested: Indicates if cancellation was requested + on the certificate operation. + :type cancellation_requested: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateOperation or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateOperation or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + certificate_operation = models.CertificateOperationUpdateParameter(cancellation_requested=cancellation_requested) + + # Construct URL + url = self.update_certificate_operation.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(certificate_operation, 'CertificateOperationUpdateParameter') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateOperation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} + + def get_certificate_operation( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Gets the creation operation of a certificate. + + Gets the creation operation associated with a specified certificate. + This operation requires the certificates/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateOperation or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateOperation or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate_operation.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateOperation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} + + def delete_certificate_operation( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Deletes the creation operation for a specific certificate. + + Deletes the creation operation for a specified certificate that is in + the process of being created. The certificate is no longer created. + This operation requires the certificates/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateOperation or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateOperation or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_certificate_operation.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateOperation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} + + def merge_certificate( + self, vault_base_url, certificate_name, x509_certificates, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Merges a certificate or a certificate chain with a key pair existing on + the server. + + The MergeCertificate operation performs the merging of a certificate or + certificate chain with a key pair currently available in the service. + This operation requires the certificates/create permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param x509_certificates: The certificate or the certificate chain to + merge. + :type x509_certificates: list[bytearray] + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateMergeParameters(x509_certificates=x509_certificates, certificate_attributes=certificate_attributes, tags=tags) + + # Construct URL + url = self.merge_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateMergeParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + merge_certificate.metadata = {'url': '/certificates/{certificate-name}/pending/merge'} + + def get_deleted_certificates( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Lists the deleted certificates in the specified vault currently + available for recovery. + + The GetDeletedCertificates operation retrieves the certificates in the + current vault which are in a deleted state and ready for recovery or + purging. This operation includes deletion-specific information. This + operation requires the certificates/get/list permission. This operation + can only be enabled on soft-delete enabled vaults. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DeletedCertificateItem + :rtype: + ~azure.keyvault.v2016_10_01.models.DeletedCertificateItemPaged[~azure.keyvault.v2016_10_01.models.DeletedCertificateItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_deleted_certificates.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_deleted_certificates.metadata = {'url': '/deletedcertificates'} + + def get_deleted_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Retrieves information about the specified deleted certificate. + + The GetDeletedCertificate operation retrieves the deleted certificate + information plus its attributes, such as retention interval, scheduled + permanent deletion and the current deletion recovery level. This + operation requires the certificates/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedCertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.DeletedCertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_deleted_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedCertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} + + def purge_deleted_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Permanently deletes the specified deleted certificate. + + The PurgeDeletedCertificate operation performs an irreversible deletion + of the specified certificate, without possibility for recovery. The + operation is not available if the recovery level does not specify + 'Purgeable'. This operation requires the certificate/purge permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.purge_deleted_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.KeyVaultErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + purge_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} + + def recover_deleted_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Recovers the deleted certificate back to its current version under + /certificates. + + The RecoverDeletedCertificate operation performs the reversal of the + Delete operation. The operation is applicable in vaults enabled for + soft-delete, and must be issued during the retention interval + (available in the deleted certificate's attributes). This operation + requires the certificates/recover permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the deleted certificate + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.recover_deleted_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + recover_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}/recover'} + + def get_storage_accounts( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List storage accounts managed by the specified key vault. This + operation requires the storage/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of StorageAccountItem + :rtype: + ~azure.keyvault.v2016_10_01.models.StorageAccountItemPaged[~azure.keyvault.v2016_10_01.models.StorageAccountItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_storage_accounts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_storage_accounts.metadata = {'url': '/storage'} + + def delete_storage_account( + self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): + """Deletes a storage account. This operation requires the storage/delete + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_storage_account.metadata = {'url': '/storage/{storage-account-name}'} + + def get_storage_account( + self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a specified storage account. This operation + requires the storage/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_storage_account.metadata = {'url': '/storage/{storage-account-name}'} + + def set_storage_account( + self, vault_base_url, storage_account_name, resource_id, active_key_name, auto_regenerate_key, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates a new storage account. This operation requires the + storage/set permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param resource_id: Storage account resource id. + :type resource_id: str + :param active_key_name: Current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration + specified in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage + account. + :type storage_account_attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.StorageAccountCreateParameters(resource_id=resource_id, active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) + + # Construct URL + url = self.set_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_storage_account.metadata = {'url': '/storage/{storage-account-name}'} + + def update_storage_account( + self, vault_base_url, storage_account_name, active_key_name=None, auto_regenerate_key=None, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified attributes associated with the given storage + account. This operation requires the storage/set/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param active_key_name: The current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration + specified in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage + account. + :type storage_account_attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.StorageAccountUpdateParameters(active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) + + # Construct URL + url = self.update_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_storage_account.metadata = {'url': '/storage/{storage-account-name}'} + + def regenerate_storage_account_key( + self, vault_base_url, storage_account_name, key_name, custom_headers=None, raw=False, **operation_config): + """Regenerates the specified key value for the given storage account. This + operation requires the storage/regeneratekey permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param key_name: The storage account key name. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.StorageAccountRegenerteKeyParameters(key_name=key_name) + + # Construct URL + url = self.regenerate_storage_account_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageAccountRegenerteKeyParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + regenerate_storage_account_key.metadata = {'url': '/storage/{storage-account-name}/regeneratekey'} + + def get_sas_definitions( + self, vault_base_url, storage_account_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List storage SAS definitions for the given storage account. This + operation requires the storage/listsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SasDefinitionItem + :rtype: + ~azure.keyvault.v2016_10_01.models.SasDefinitionItemPaged[~azure.keyvault.v2016_10_01.models.SasDefinitionItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_sas_definitions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_sas_definitions.metadata = {'url': '/storage/{storage-account-name}/sas'} + + def delete_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): + """Deletes a SAS definition from a specified storage account. This + operation requires the storage/deletesas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} + + def get_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a SAS definition for the specified storage + account. This operation requires the storage/getsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} + + def set_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, parameters, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates a new SAS definition for the specified storage + account. This operation requires the storage/setsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param parameters: Sas definition creation metadata in the form of + key-value pairs. + :type parameters: dict[str, str] + :param sas_definition_attributes: The attributes of the SAS + definition. + :type sas_definition_attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters1 = models.SasDefinitionCreateParameters(parameters=parameters, sas_definition_attributes=sas_definition_attributes, tags=tags) + + # Construct URL + url = self.set_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters1, 'SasDefinitionCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} + + def update_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, parameters=None, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified attributes associated with the given SAS + definition. This operation requires the storage/setsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param parameters: Sas definition update metadata in the form of + key-value pairs. + :type parameters: dict[str, str] + :param sas_definition_attributes: The attributes of the SAS + definition. + :type sas_definition_attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v2016_10_01.models.SasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters1 = models.SasDefinitionUpdateParameters(parameters=parameters, sas_definition_attributes=sas_definition_attributes, tags=tags) + + # Construct URL + url = self.update_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters1, 'SasDefinitionUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/__init__.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/__init__.py new file mode 100644 index 000000000000..4a5ccbd72829 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/__init__.py @@ -0,0 +1,262 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .attributes_py3 import Attributes + from .json_web_key_py3 import JsonWebKey + from .key_attributes_py3 import KeyAttributes + from .key_bundle_py3 import KeyBundle + from .key_item_py3 import KeyItem + from .deleted_key_bundle_py3 import DeletedKeyBundle + from .deleted_key_item_py3 import DeletedKeyItem + from .secret_attributes_py3 import SecretAttributes + from .secret_bundle_py3 import SecretBundle + from .secret_item_py3 import SecretItem + from .deleted_secret_bundle_py3 import DeletedSecretBundle + from .deleted_secret_item_py3 import DeletedSecretItem + from .secret_restore_parameters_py3 import SecretRestoreParameters + from .certificate_attributes_py3 import CertificateAttributes + from .certificate_item_py3 import CertificateItem + from .certificate_issuer_item_py3 import CertificateIssuerItem + from .key_properties_py3 import KeyProperties + from .secret_properties_py3 import SecretProperties + from .subject_alternative_names_py3 import SubjectAlternativeNames + from .x509_certificate_properties_py3 import X509CertificateProperties + from .trigger_py3 import Trigger + from .action_py3 import Action + from .lifetime_action_py3 import LifetimeAction + from .issuer_parameters_py3 import IssuerParameters + from .certificate_policy_py3 import CertificatePolicy + from .certificate_bundle_py3 import CertificateBundle + from .deleted_certificate_bundle_py3 import DeletedCertificateBundle + from .deleted_certificate_item_py3 import DeletedCertificateItem + from .error_py3 import Error + from .certificate_operation_py3 import CertificateOperation + from .issuer_credentials_py3 import IssuerCredentials + from .administrator_details_py3 import AdministratorDetails + from .organization_details_py3 import OrganizationDetails + from .issuer_attributes_py3 import IssuerAttributes + from .issuer_bundle_py3 import IssuerBundle + from .contact_py3 import Contact + from .contacts_py3 import Contacts + from .key_create_parameters_py3 import KeyCreateParameters + from .key_import_parameters_py3 import KeyImportParameters + from .key_operations_parameters_py3 import KeyOperationsParameters + from .key_sign_parameters_py3 import KeySignParameters + from .key_verify_parameters_py3 import KeyVerifyParameters + from .key_update_parameters_py3 import KeyUpdateParameters + from .key_restore_parameters_py3 import KeyRestoreParameters + from .secret_set_parameters_py3 import SecretSetParameters + from .secret_update_parameters_py3 import SecretUpdateParameters + from .certificate_create_parameters_py3 import CertificateCreateParameters + from .certificate_import_parameters_py3 import CertificateImportParameters + from .certificate_update_parameters_py3 import CertificateUpdateParameters + from .certificate_merge_parameters_py3 import CertificateMergeParameters + from .certificate_issuer_set_parameters_py3 import CertificateIssuerSetParameters + from .certificate_issuer_update_parameters_py3 import CertificateIssuerUpdateParameters + from .certificate_operation_update_parameter_py3 import CertificateOperationUpdateParameter + from .key_operation_result_py3 import KeyOperationResult + from .key_verify_result_py3 import KeyVerifyResult + from .backup_key_result_py3 import BackupKeyResult + from .backup_secret_result_py3 import BackupSecretResult + from .pending_certificate_signing_request_result_py3 import PendingCertificateSigningRequestResult + from .storage_account_attributes_py3 import StorageAccountAttributes + from .storage_bundle_py3 import StorageBundle + from .storage_account_create_parameters_py3 import StorageAccountCreateParameters + from .storage_account_update_parameters_py3 import StorageAccountUpdateParameters + from .storage_account_regenerte_key_parameters_py3 import StorageAccountRegenerteKeyParameters + from .storage_account_item_py3 import StorageAccountItem + from .sas_definition_attributes_py3 import SasDefinitionAttributes + from .sas_definition_bundle_py3 import SasDefinitionBundle + from .sas_definition_item_py3 import SasDefinitionItem + from .sas_definition_create_parameters_py3 import SasDefinitionCreateParameters + from .sas_definition_update_parameters_py3 import SasDefinitionUpdateParameters + from .key_vault_error_py3 import KeyVaultError, KeyVaultErrorException +except (SyntaxError, ImportError): + from .attributes import Attributes + from .json_web_key import JsonWebKey + from .key_attributes import KeyAttributes + from .key_bundle import KeyBundle + from .key_item import KeyItem + from .deleted_key_bundle import DeletedKeyBundle + from .deleted_key_item import DeletedKeyItem + from .secret_attributes import SecretAttributes + from .secret_bundle import SecretBundle + from .secret_item import SecretItem + from .deleted_secret_bundle import DeletedSecretBundle + from .deleted_secret_item import DeletedSecretItem + from .secret_restore_parameters import SecretRestoreParameters + from .certificate_attributes import CertificateAttributes + from .certificate_item import CertificateItem + from .certificate_issuer_item import CertificateIssuerItem + from .key_properties import KeyProperties + from .secret_properties import SecretProperties + from .subject_alternative_names import SubjectAlternativeNames + from .x509_certificate_properties import X509CertificateProperties + from .trigger import Trigger + from .action import Action + from .lifetime_action import LifetimeAction + from .issuer_parameters import IssuerParameters + from .certificate_policy import CertificatePolicy + from .certificate_bundle import CertificateBundle + from .deleted_certificate_bundle import DeletedCertificateBundle + from .deleted_certificate_item import DeletedCertificateItem + from .error import Error + from .certificate_operation import CertificateOperation + from .issuer_credentials import IssuerCredentials + from .administrator_details import AdministratorDetails + from .organization_details import OrganizationDetails + from .issuer_attributes import IssuerAttributes + from .issuer_bundle import IssuerBundle + from .contact import Contact + from .contacts import Contacts + from .key_create_parameters import KeyCreateParameters + from .key_import_parameters import KeyImportParameters + from .key_operations_parameters import KeyOperationsParameters + from .key_sign_parameters import KeySignParameters + from .key_verify_parameters import KeyVerifyParameters + from .key_update_parameters import KeyUpdateParameters + from .key_restore_parameters import KeyRestoreParameters + from .secret_set_parameters import SecretSetParameters + from .secret_update_parameters import SecretUpdateParameters + from .certificate_create_parameters import CertificateCreateParameters + from .certificate_import_parameters import CertificateImportParameters + from .certificate_update_parameters import CertificateUpdateParameters + from .certificate_merge_parameters import CertificateMergeParameters + from .certificate_issuer_set_parameters import CertificateIssuerSetParameters + from .certificate_issuer_update_parameters import CertificateIssuerUpdateParameters + from .certificate_operation_update_parameter import CertificateOperationUpdateParameter + from .key_operation_result import KeyOperationResult + from .key_verify_result import KeyVerifyResult + from .backup_key_result import BackupKeyResult + from .backup_secret_result import BackupSecretResult + from .pending_certificate_signing_request_result import PendingCertificateSigningRequestResult + from .storage_account_attributes import StorageAccountAttributes + from .storage_bundle import StorageBundle + from .storage_account_create_parameters import StorageAccountCreateParameters + from .storage_account_update_parameters import StorageAccountUpdateParameters + from .storage_account_regenerte_key_parameters import StorageAccountRegenerteKeyParameters + from .storage_account_item import StorageAccountItem + from .sas_definition_attributes import SasDefinitionAttributes + from .sas_definition_bundle import SasDefinitionBundle + from .sas_definition_item import SasDefinitionItem + from .sas_definition_create_parameters import SasDefinitionCreateParameters + from .sas_definition_update_parameters import SasDefinitionUpdateParameters + from .key_vault_error import KeyVaultError, KeyVaultErrorException +from .key_item_paged import KeyItemPaged +from .deleted_key_item_paged import DeletedKeyItemPaged +from .secret_item_paged import SecretItemPaged +from .deleted_secret_item_paged import DeletedSecretItemPaged +from .certificate_item_paged import CertificateItemPaged +from .certificate_issuer_item_paged import CertificateIssuerItemPaged +from .deleted_certificate_item_paged import DeletedCertificateItemPaged +from .storage_account_item_paged import StorageAccountItemPaged +from .sas_definition_item_paged import SasDefinitionItemPaged +from .key_vault_client_enums import ( + JsonWebKeyType, + JsonWebKeyCurveName, + DeletionRecoveryLevel, + KeyUsageType, + ActionType, + JsonWebKeyOperation, + JsonWebKeyEncryptionAlgorithm, + JsonWebKeySignatureAlgorithm, +) + +__all__ = [ + 'Attributes', + 'JsonWebKey', + 'KeyAttributes', + 'KeyBundle', + 'KeyItem', + 'DeletedKeyBundle', + 'DeletedKeyItem', + 'SecretAttributes', + 'SecretBundle', + 'SecretItem', + 'DeletedSecretBundle', + 'DeletedSecretItem', + 'SecretRestoreParameters', + 'CertificateAttributes', + 'CertificateItem', + 'CertificateIssuerItem', + 'KeyProperties', + 'SecretProperties', + 'SubjectAlternativeNames', + 'X509CertificateProperties', + 'Trigger', + 'Action', + 'LifetimeAction', + 'IssuerParameters', + 'CertificatePolicy', + 'CertificateBundle', + 'DeletedCertificateBundle', + 'DeletedCertificateItem', + 'Error', + 'CertificateOperation', + 'IssuerCredentials', + 'AdministratorDetails', + 'OrganizationDetails', + 'IssuerAttributes', + 'IssuerBundle', + 'Contact', + 'Contacts', + 'KeyCreateParameters', + 'KeyImportParameters', + 'KeyOperationsParameters', + 'KeySignParameters', + 'KeyVerifyParameters', + 'KeyUpdateParameters', + 'KeyRestoreParameters', + 'SecretSetParameters', + 'SecretUpdateParameters', + 'CertificateCreateParameters', + 'CertificateImportParameters', + 'CertificateUpdateParameters', + 'CertificateMergeParameters', + 'CertificateIssuerSetParameters', + 'CertificateIssuerUpdateParameters', + 'CertificateOperationUpdateParameter', + 'KeyOperationResult', + 'KeyVerifyResult', + 'BackupKeyResult', + 'BackupSecretResult', + 'PendingCertificateSigningRequestResult', + 'StorageAccountAttributes', + 'StorageBundle', + 'StorageAccountCreateParameters', + 'StorageAccountUpdateParameters', + 'StorageAccountRegenerteKeyParameters', + 'StorageAccountItem', + 'SasDefinitionAttributes', + 'SasDefinitionBundle', + 'SasDefinitionItem', + 'SasDefinitionCreateParameters', + 'SasDefinitionUpdateParameters', + 'KeyVaultError', 'KeyVaultErrorException', + 'KeyItemPaged', + 'DeletedKeyItemPaged', + 'SecretItemPaged', + 'DeletedSecretItemPaged', + 'CertificateItemPaged', + 'CertificateIssuerItemPaged', + 'DeletedCertificateItemPaged', + 'StorageAccountItemPaged', + 'SasDefinitionItemPaged', + 'JsonWebKeyType', + 'JsonWebKeyCurveName', + 'DeletionRecoveryLevel', + 'KeyUsageType', + 'ActionType', + 'JsonWebKeyOperation', + 'JsonWebKeyEncryptionAlgorithm', + 'JsonWebKeySignatureAlgorithm', +] diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/action.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/action.py new file mode 100644 index 000000000000..1ada9a5eedb6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/action.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Action(Model): + """The action that will be executed. + + :param action_type: The type of the action. Possible values include: + 'EmailContacts', 'AutoRenew' + :type action_type: str or ~azure.keyvault.v2016_10_01.models.ActionType + """ + + _attribute_map = { + 'action_type': {'key': 'action_type', 'type': 'ActionType'}, + } + + def __init__(self, **kwargs): + super(Action, self).__init__(**kwargs) + self.action_type = kwargs.get('action_type', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/action_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/action_py3.py new file mode 100644 index 000000000000..4e0c61219757 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/action_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Action(Model): + """The action that will be executed. + + :param action_type: The type of the action. Possible values include: + 'EmailContacts', 'AutoRenew' + :type action_type: str or ~azure.keyvault.v2016_10_01.models.ActionType + """ + + _attribute_map = { + 'action_type': {'key': 'action_type', 'type': 'ActionType'}, + } + + def __init__(self, *, action_type=None, **kwargs) -> None: + super(Action, self).__init__(**kwargs) + self.action_type = action_type diff --git a/azure-keyvault/azure/keyvault/models/administrator_details.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/administrator_details.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details.py diff --git a/azure-keyvault/azure/keyvault/models/administrator_details_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/administrator_details_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/administrator_details_py3.py diff --git a/azure-keyvault/azure/keyvault/models/attributes.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/attributes.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/attributes.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/attributes.py diff --git a/azure-keyvault/azure/keyvault/models/attributes_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/attributes_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/attributes_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/attributes_py3.py diff --git a/azure-keyvault/azure/keyvault/models/backup_key_result.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/backup_key_result.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result.py diff --git a/azure-keyvault/azure/keyvault/models/backup_key_result_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/backup_key_result_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/backup_key_result_py3.py diff --git a/azure-keyvault/azure/keyvault/models/backup_secret_result.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/backup_secret_result.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result.py diff --git a/azure-keyvault/azure/keyvault/models/backup_secret_result_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/backup_secret_result_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/backup_secret_result_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes.py new file mode 100644 index 000000000000..84fb68baaa42 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes import Attributes + + +class CertificateAttributes(Attributes): + """The certificate management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for certificates in the current vault. If it contains 'Purgeable', + the certificate can be permanently deleted by a privileged user; + otherwise, only the system can purge the certificate, at the end of the + retention interval. Possible values include: 'Purgeable', + 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CertificateAttributes, self).__init__(**kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes_py3.py new file mode 100644 index 000000000000..bf0fb99549f8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_attributes_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes_py3 import Attributes + + +class CertificateAttributes(Attributes): + """The certificate management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for certificates in the current vault. If it contains 'Purgeable', + the certificate can be permanently deleted by a privileged user; + otherwise, only the system can purge the certificate, at the end of the + retention interval. Possible values include: 'Purgeable', + 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: + super(CertificateAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle.py new file mode 100644 index 000000000000..2783b3020397 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateBundle(Model): + """A certificate bundle consists of a certificate (X509) plus its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :ivar kid: The key id. + :vartype kid: str + :ivar sid: The secret id. + :vartype sid: str + :ivar x509_thumbprint: Thumbprint of the certificate. + :vartype x509_thumbprint: bytes + :ivar policy: The management policy. + :vartype policy: ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param cer: CER contents of x509 certificate. + :type cer: bytearray + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'kid': {'readonly': True}, + 'sid': {'readonly': True}, + 'x509_thumbprint': {'readonly': True}, + 'policy': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'sid': {'key': 'sid', 'type': 'str'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'cer': {'key': 'cer', 'type': 'bytearray'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateBundle, self).__init__(**kwargs) + self.id = None + self.kid = None + self.sid = None + self.x509_thumbprint = None + self.policy = None + self.cer = kwargs.get('cer', None) + self.content_type = kwargs.get('content_type', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle_py3.py new file mode 100644 index 000000000000..3c8dcb437bb6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_bundle_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateBundle(Model): + """A certificate bundle consists of a certificate (X509) plus its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :ivar kid: The key id. + :vartype kid: str + :ivar sid: The secret id. + :vartype sid: str + :ivar x509_thumbprint: Thumbprint of the certificate. + :vartype x509_thumbprint: bytes + :ivar policy: The management policy. + :vartype policy: ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param cer: CER contents of x509 certificate. + :type cer: bytearray + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'kid': {'readonly': True}, + 'sid': {'readonly': True}, + 'x509_thumbprint': {'readonly': True}, + 'policy': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'sid': {'key': 'sid', 'type': 'str'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'cer': {'key': 'cer', 'type': 'bytearray'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: + super(CertificateBundle, self).__init__(**kwargs) + self.id = None + self.kid = None + self.sid = None + self.x509_thumbprint = None + self.policy = None + self.cer = cer + self.content_type = content_type + self.attributes = attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters.py new file mode 100644 index 000000000000..5e1b808bb95d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateCreateParameters(Model): + """The certificate create parameters. + + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateCreateParameters, self).__init__(**kwargs) + self.certificate_policy = kwargs.get('certificate_policy', None) + self.certificate_attributes = kwargs.get('certificate_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters_py3.py new file mode 100644 index 000000000000..2f6c02bd3dc1 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_create_parameters_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateCreateParameters(Model): + """The certificate create parameters. + + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: + super(CertificateCreateParameters, self).__init__(**kwargs) + self.certificate_policy = certificate_policy + self.certificate_attributes = certificate_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters.py new file mode 100644 index 000000000000..09b94b6fa30b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateImportParameters(Model): + """The certificate import parameters. + + All required parameters must be populated in order to send to Azure. + + :param base64_encoded_certificate: Required. Base64 encoded representation + of the certificate object to import. This certificate needs to contain the + private key. + :type base64_encoded_certificate: str + :param password: If the private key in base64EncodedCertificate is + encrypted, the password used for encryption. + :type password: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'base64_encoded_certificate': {'required': True}, + } + + _attribute_map = { + 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, + 'password': {'key': 'pwd', 'type': 'str'}, + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateImportParameters, self).__init__(**kwargs) + self.base64_encoded_certificate = kwargs.get('base64_encoded_certificate', None) + self.password = kwargs.get('password', None) + self.certificate_policy = kwargs.get('certificate_policy', None) + self.certificate_attributes = kwargs.get('certificate_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters_py3.py new file mode 100644 index 000000000000..e05b4a5bd209 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_import_parameters_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateImportParameters(Model): + """The certificate import parameters. + + All required parameters must be populated in order to send to Azure. + + :param base64_encoded_certificate: Required. Base64 encoded representation + of the certificate object to import. This certificate needs to contain the + private key. + :type base64_encoded_certificate: str + :param password: If the private key in base64EncodedCertificate is + encrypted, the password used for encryption. + :type password: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'base64_encoded_certificate': {'required': True}, + } + + _attribute_map = { + 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, + 'password': {'key': 'pwd', 'type': 'str'}, + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, base64_encoded_certificate: str, password: str=None, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: + super(CertificateImportParameters, self).__init__(**kwargs) + self.base64_encoded_certificate = base64_encoded_certificate + self.password = password + self.certificate_policy = certificate_policy + self.certificate_attributes = certificate_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/certificate_issuer_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/certificate_issuer_item.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_paged.py new file mode 100644 index 000000000000..38cd67af1dc0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class CertificateIssuerItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`CertificateIssuerItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[CertificateIssuerItem]'} + } + + def __init__(self, *args, **kwargs): + + super(CertificateIssuerItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/models/certificate_issuer_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/certificate_issuer_item_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_item_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters.py new file mode 100644 index 000000000000..2a60e70055a0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerSetParameters(Model): + """The certificate issuer set parameters. + + All required parameters must be populated in order to send to Azure. + + :param provider: Required. The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v2016_10_01.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes + """ + + _validation = { + 'provider': {'required': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, **kwargs): + super(CertificateIssuerSetParameters, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.credentials = kwargs.get('credentials', None) + self.organization_details = kwargs.get('organization_details', None) + self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters_py3.py new file mode 100644 index 000000000000..cac1eac37e99 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_set_parameters_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerSetParameters(Model): + """The certificate issuer set parameters. + + All required parameters must be populated in order to send to Azure. + + :param provider: Required. The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v2016_10_01.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes + """ + + _validation = { + 'provider': {'required': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, *, provider: str, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: + super(CertificateIssuerSetParameters, self).__init__(**kwargs) + self.provider = provider + self.credentials = credentials + self.organization_details = organization_details + self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters.py new file mode 100644 index 000000000000..0fe531e1bdb0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerUpdateParameters(Model): + """The certificate issuer update parameters. + + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v2016_10_01.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, **kwargs): + super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.credentials = kwargs.get('credentials', None) + self.organization_details = kwargs.get('organization_details', None) + self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters_py3.py new file mode 100644 index 000000000000..040bda01a75a --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_issuer_update_parameters_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerUpdateParameters(Model): + """The certificate issuer update parameters. + + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v2016_10_01.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: + super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) + self.provider = provider + self.credentials = credentials + self.organization_details = organization_details + self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item.py new file mode 100644 index 000000000000..7c13d47a49c1 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateItem(Model): + """The certificate item containing certificate metadata. + + :param id: Certificate identifier. + :type id: str + :param attributes: The certificate management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param x509_thumbprint: Thumbprint of the certificate. + :type x509_thumbprint: bytes + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(CertificateItem, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.x509_thumbprint = kwargs.get('x509_thumbprint', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_paged.py new file mode 100644 index 000000000000..a783ef455782 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class CertificateItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`CertificateItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[CertificateItem]'} + } + + def __init__(self, *args, **kwargs): + + super(CertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_py3.py new file mode 100644 index 000000000000..6b0487018cb8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_item_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateItem(Model): + """The certificate item containing certificate metadata. + + :param id: Certificate identifier. + :type id: str + :param attributes: The certificate management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param x509_thumbprint: Thumbprint of the certificate. + :type x509_thumbprint: bytes + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + } + + def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, **kwargs) -> None: + super(CertificateItem, self).__init__(**kwargs) + self.id = id + self.attributes = attributes + self.tags = tags + self.x509_thumbprint = x509_thumbprint diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters.py new file mode 100644 index 000000000000..cc3d27d24e78 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateMergeParameters(Model): + """The certificate merge parameters. + + All required parameters must be populated in order to send to Azure. + + :param x509_certificates: Required. The certificate or the certificate + chain to merge. + :type x509_certificates: list[bytearray] + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'x509_certificates': {'required': True}, + } + + _attribute_map = { + 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateMergeParameters, self).__init__(**kwargs) + self.x509_certificates = kwargs.get('x509_certificates', None) + self.certificate_attributes = kwargs.get('certificate_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters_py3.py new file mode 100644 index 000000000000..fc90a8732302 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_merge_parameters_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateMergeParameters(Model): + """The certificate merge parameters. + + All required parameters must be populated in order to send to Azure. + + :param x509_certificates: Required. The certificate or the certificate + chain to merge. + :type x509_certificates: list[bytearray] + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'x509_certificates': {'required': True}, + } + + _attribute_map = { + 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, x509_certificates, certificate_attributes=None, tags=None, **kwargs) -> None: + super(CertificateMergeParameters, self).__init__(**kwargs) + self.x509_certificates = x509_certificates + self.certificate_attributes = certificate_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation.py new file mode 100644 index 000000000000..0cdad7c47c9d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateOperation(Model): + """A certificate operation is returned in case of asynchronous requests. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :param issuer_parameters: Parameters for the issuer of the X509 component + of a certificate. + :type issuer_parameters: + ~azure.keyvault.v2016_10_01.models.IssuerParameters + :param csr: The certificate signing request (CSR) that is being used in + the certificate operation. + :type csr: bytearray + :param cancellation_requested: Indicates if cancellation was requested on + the certificate operation. + :type cancellation_requested: bool + :param status: Status of the certificate operation. + :type status: str + :param status_details: The status details of the certificate operation. + :type status_details: str + :param error: Error encountered, if any, during the certificate operation. + :type error: ~azure.keyvault.v2016_10_01.models.Error + :param target: Location which contains the result of the certificate + operation. + :type target: str + :param request_id: Identifier for the certificate operation. + :type request_id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, + 'csr': {'key': 'csr', 'type': 'bytearray'}, + 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, + 'status': {'key': 'status', 'type': 'str'}, + 'status_details': {'key': 'status_details', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + 'target': {'key': 'target', 'type': 'str'}, + 'request_id': {'key': 'request_id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CertificateOperation, self).__init__(**kwargs) + self.id = None + self.issuer_parameters = kwargs.get('issuer_parameters', None) + self.csr = kwargs.get('csr', None) + self.cancellation_requested = kwargs.get('cancellation_requested', None) + self.status = kwargs.get('status', None) + self.status_details = kwargs.get('status_details', None) + self.error = kwargs.get('error', None) + self.target = kwargs.get('target', None) + self.request_id = kwargs.get('request_id', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_py3.py new file mode 100644 index 000000000000..eb1179ce1158 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateOperation(Model): + """A certificate operation is returned in case of asynchronous requests. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :param issuer_parameters: Parameters for the issuer of the X509 component + of a certificate. + :type issuer_parameters: + ~azure.keyvault.v2016_10_01.models.IssuerParameters + :param csr: The certificate signing request (CSR) that is being used in + the certificate operation. + :type csr: bytearray + :param cancellation_requested: Indicates if cancellation was requested on + the certificate operation. + :type cancellation_requested: bool + :param status: Status of the certificate operation. + :type status: str + :param status_details: The status details of the certificate operation. + :type status_details: str + :param error: Error encountered, if any, during the certificate operation. + :type error: ~azure.keyvault.v2016_10_01.models.Error + :param target: Location which contains the result of the certificate + operation. + :type target: str + :param request_id: Identifier for the certificate operation. + :type request_id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, + 'csr': {'key': 'csr', 'type': 'bytearray'}, + 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, + 'status': {'key': 'status', 'type': 'str'}, + 'status_details': {'key': 'status_details', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + 'target': {'key': 'target', 'type': 'str'}, + 'request_id': {'key': 'request_id', 'type': 'str'}, + } + + def __init__(self, *, issuer_parameters=None, csr: bytearray=None, cancellation_requested: bool=None, status: str=None, status_details: str=None, error=None, target: str=None, request_id: str=None, **kwargs) -> None: + super(CertificateOperation, self).__init__(**kwargs) + self.id = None + self.issuer_parameters = issuer_parameters + self.csr = csr + self.cancellation_requested = cancellation_requested + self.status = status + self.status_details = status_details + self.error = error + self.target = target + self.request_id = request_id diff --git a/azure-keyvault/azure/keyvault/models/certificate_operation_update_parameter.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/certificate_operation_update_parameter.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter.py diff --git a/azure-keyvault/azure/keyvault/models/certificate_operation_update_parameter_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/certificate_operation_update_parameter_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_operation_update_parameter_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy.py new file mode 100644 index 000000000000..359f1a4c1fd6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificatePolicy(Model): + """Management policy for a certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :param key_properties: Properties of the key backing a certificate. + :type key_properties: ~azure.keyvault.v2016_10_01.models.KeyProperties + :param secret_properties: Properties of the secret backing a certificate. + :type secret_properties: + ~azure.keyvault.v2016_10_01.models.SecretProperties + :param x509_certificate_properties: Properties of the X509 component of a + certificate. + :type x509_certificate_properties: + ~azure.keyvault.v2016_10_01.models.X509CertificateProperties + :param lifetime_actions: Actions that will be performed by Key Vault over + the lifetime of a certificate. + :type lifetime_actions: + list[~azure.keyvault.v2016_10_01.models.LifetimeAction] + :param issuer_parameters: Parameters for the issuer of the X509 component + of a certificate. + :type issuer_parameters: + ~azure.keyvault.v2016_10_01.models.IssuerParameters + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, + 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, + 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, + 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, + 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + } + + def __init__(self, **kwargs): + super(CertificatePolicy, self).__init__(**kwargs) + self.id = None + self.key_properties = kwargs.get('key_properties', None) + self.secret_properties = kwargs.get('secret_properties', None) + self.x509_certificate_properties = kwargs.get('x509_certificate_properties', None) + self.lifetime_actions = kwargs.get('lifetime_actions', None) + self.issuer_parameters = kwargs.get('issuer_parameters', None) + self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy_py3.py new file mode 100644 index 000000000000..e0256f1955f3 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_policy_py3.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificatePolicy(Model): + """Management policy for a certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :param key_properties: Properties of the key backing a certificate. + :type key_properties: ~azure.keyvault.v2016_10_01.models.KeyProperties + :param secret_properties: Properties of the secret backing a certificate. + :type secret_properties: + ~azure.keyvault.v2016_10_01.models.SecretProperties + :param x509_certificate_properties: Properties of the X509 component of a + certificate. + :type x509_certificate_properties: + ~azure.keyvault.v2016_10_01.models.X509CertificateProperties + :param lifetime_actions: Actions that will be performed by Key Vault over + the lifetime of a certificate. + :type lifetime_actions: + list[~azure.keyvault.v2016_10_01.models.LifetimeAction] + :param issuer_parameters: Parameters for the issuer of the X509 component + of a certificate. + :type issuer_parameters: + ~azure.keyvault.v2016_10_01.models.IssuerParameters + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, + 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, + 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, + 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, + 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + } + + def __init__(self, *, key_properties=None, secret_properties=None, x509_certificate_properties=None, lifetime_actions=None, issuer_parameters=None, attributes=None, **kwargs) -> None: + super(CertificatePolicy, self).__init__(**kwargs) + self.id = None + self.key_properties = key_properties + self.secret_properties = secret_properties + self.x509_certificate_properties = x509_certificate_properties + self.lifetime_actions = lifetime_actions + self.issuer_parameters = issuer_parameters + self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters.py new file mode 100644 index 000000000000..e051a85b45f8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateUpdateParameters(Model): + """The certificate update parameters. + + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateUpdateParameters, self).__init__(**kwargs) + self.certificate_policy = kwargs.get('certificate_policy', None) + self.certificate_attributes = kwargs.get('certificate_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters_py3.py new file mode 100644 index 000000000000..aa3943305761 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/certificate_update_parameters_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateUpdateParameters(Model): + """The certificate update parameters. + + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: + super(CertificateUpdateParameters, self).__init__(**kwargs) + self.certificate_policy = certificate_policy + self.certificate_attributes = certificate_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/contact.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/contact.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/contact.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/contact.py diff --git a/azure-keyvault/azure/keyvault/models/contact_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/contact_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/contact_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/contact_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts.py new file mode 100644 index 000000000000..31c29274a740 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Contacts(Model): + """The contacts for the vault certificates. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Identifier for the contacts collection. + :vartype id: str + :param contact_list: The contact list for the vault certificates. + :type contact_list: list[~azure.keyvault.v2016_10_01.models.Contact] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, + } + + def __init__(self, **kwargs): + super(Contacts, self).__init__(**kwargs) + self.id = None + self.contact_list = kwargs.get('contact_list', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts_py3.py new file mode 100644 index 000000000000..4583257cb570 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/contacts_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Contacts(Model): + """The contacts for the vault certificates. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Identifier for the contacts collection. + :vartype id: str + :param contact_list: The contact list for the vault certificates. + :type contact_list: list[~azure.keyvault.v2016_10_01.models.Contact] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, + } + + def __init__(self, *, contact_list=None, **kwargs) -> None: + super(Contacts, self).__init__(**kwargs) + self.id = None + self.contact_list = contact_list diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle.py new file mode 100644 index 000000000000..418ae5e861b4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle.py @@ -0,0 +1,79 @@ +# 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 .certificate_bundle import CertificateBundle + + +class DeletedCertificateBundle(CertificateBundle): + """A Deleted Certificate consisting of its previous id, attributes and its + tags, as well as information on when it will be purged. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :ivar kid: The key id. + :vartype kid: str + :ivar sid: The secret id. + :vartype sid: str + :ivar x509_thumbprint: Thumbprint of the certificate. + :vartype x509_thumbprint: bytes + :ivar policy: The management policy. + :vartype policy: ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param cer: CER contents of x509 certificate. + :type cer: bytearray + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs + :type tags: dict[str, str] + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted certificate. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the certificate is scheduled to + be purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the certificate was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'kid': {'readonly': True}, + 'sid': {'readonly': True}, + 'x509_thumbprint': {'readonly': True}, + 'policy': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'sid': {'key': 'sid', 'type': 'str'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'cer': {'key': 'cer', 'type': 'bytearray'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedCertificateBundle, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle_py3.py new file mode 100644 index 000000000000..0b1b08dd23bd --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_bundle_py3.py @@ -0,0 +1,79 @@ +# 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 .certificate_bundle_py3 import CertificateBundle + + +class DeletedCertificateBundle(CertificateBundle): + """A Deleted Certificate consisting of its previous id, attributes and its + tags, as well as information on when it will be purged. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :ivar kid: The key id. + :vartype kid: str + :ivar sid: The secret id. + :vartype sid: str + :ivar x509_thumbprint: Thumbprint of the certificate. + :vartype x509_thumbprint: bytes + :ivar policy: The management policy. + :vartype policy: ~azure.keyvault.v2016_10_01.models.CertificatePolicy + :param cer: CER contents of x509 certificate. + :type cer: bytearray + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs + :type tags: dict[str, str] + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted certificate. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the certificate is scheduled to + be purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the certificate was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'kid': {'readonly': True}, + 'sid': {'readonly': True}, + 'x509_thumbprint': {'readonly': True}, + 'policy': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'sid': {'key': 'sid', 'type': 'str'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'cer': {'key': 'cer', 'type': 'bytearray'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedCertificateBundle, self).__init__(cer=cer, content_type=content_type, attributes=attributes, tags=tags, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item.py new file mode 100644 index 000000000000..e67b8c19703c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .certificate_item import CertificateItem + + +class DeletedCertificateItem(CertificateItem): + """The deleted certificate item containing metadata about the deleted + certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Certificate identifier. + :type id: str + :param attributes: The certificate management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param x509_thumbprint: Thumbprint of the certificate. + :type x509_thumbprint: bytes + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted certificate. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the certificate is scheduled to + be purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the certificate was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedCertificateItem, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_paged.py new file mode 100644 index 000000000000..a28553d93f95 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DeletedCertificateItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`DeletedCertificateItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DeletedCertificateItem]'} + } + + def __init__(self, *args, **kwargs): + + super(DeletedCertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_py3.py new file mode 100644 index 000000000000..c990f3647189 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_certificate_item_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .certificate_item_py3 import CertificateItem + + +class DeletedCertificateItem(CertificateItem): + """The deleted certificate item containing metadata about the deleted + certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Certificate identifier. + :type id: str + :param attributes: The certificate management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param x509_thumbprint: Thumbprint of the certificate. + :type x509_thumbprint: bytes + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted certificate. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the certificate is scheduled to + be purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the certificate was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedCertificateItem, self).__init__(id=id, attributes=attributes, tags=tags, x509_thumbprint=x509_thumbprint, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle.py new file mode 100644 index 000000000000..340df847d9a2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle.py @@ -0,0 +1,61 @@ +# 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 .key_bundle import KeyBundle + + +class DeletedKeyBundle(KeyBundle): + """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion + info. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key: The Json web key. + :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted key. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the key is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the key was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedKeyBundle, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle_py3.py new file mode 100644 index 000000000000..7cb00bf8fb16 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_bundle_py3.py @@ -0,0 +1,61 @@ +# 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 .key_bundle_py3 import KeyBundle + + +class DeletedKeyBundle(KeyBundle): + """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion + info. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key: The Json web key. + :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted key. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the key is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the key was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, key=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedKeyBundle, self).__init__(key=key, attributes=attributes, tags=tags, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item.py new file mode 100644 index 000000000000..a8c3e4c72b57 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item.py @@ -0,0 +1,61 @@ +# 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 .key_item import KeyItem + + +class DeletedKeyItem(KeyItem): + """The deleted key item containing the deleted key metadata and information + about deletion. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param kid: Key identifier. + :type kid: str + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted key. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the key is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the key was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedKeyItem, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_paged.py new file mode 100644 index 000000000000..4e0d7d92532b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DeletedKeyItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`DeletedKeyItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DeletedKeyItem]'} + } + + def __init__(self, *args, **kwargs): + + super(DeletedKeyItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_py3.py new file mode 100644 index 000000000000..e44fdba3f7cf --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_key_item_py3.py @@ -0,0 +1,61 @@ +# 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 .key_item_py3 import KeyItem + + +class DeletedKeyItem(KeyItem): + """The deleted key item containing the deleted key metadata and information + about deletion. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param kid: Key identifier. + :type kid: str + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted key. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the key is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the key was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, kid: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedKeyItem, self).__init__(kid=kid, attributes=attributes, tags=tags, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle.py new file mode 100644 index 000000000000..749ca3fa9321 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle.py @@ -0,0 +1,72 @@ +# 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 .secret_bundle import SecretBundle + + +class DeletedSecretBundle(SecretBundle): + """A Deleted Secret consisting of its previous id, attributes and its tags, as + well as information on when it will be purged. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The secret value. + :type value: str + :param id: The secret id. + :type id: str + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar kid: If this is a secret backing a KV certificate, then this field + specifies the corresponding key backing the KV certificate. + :vartype kid: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a secret backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted secret. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the secret is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the secret was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'kid': {'readonly': True}, + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedSecretBundle, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle_py3.py new file mode 100644 index 000000000000..3a2bb0bfa8d1 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_bundle_py3.py @@ -0,0 +1,72 @@ +# 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 .secret_bundle_py3 import SecretBundle + + +class DeletedSecretBundle(SecretBundle): + """A Deleted Secret consisting of its previous id, attributes and its tags, as + well as information on when it will be purged. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The secret value. + :type value: str + :param id: The secret id. + :type id: str + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar kid: If this is a secret backing a KV certificate, then this field + specifies the corresponding key backing the KV certificate. + :vartype kid: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a secret backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted secret. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the secret is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the secret was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'kid': {'readonly': True}, + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedSecretBundle, self).__init__(value=value, id=id, content_type=content_type, attributes=attributes, tags=tags, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item.py new file mode 100644 index 000000000000..4363379298af --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item.py @@ -0,0 +1,63 @@ +# 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 .secret_item import SecretItem + + +class DeletedSecretItem(SecretItem): + """The deleted secret item containing metadata about the deleted secret. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Secret identifier. + :type id: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted secret. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the secret is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the secret was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedSecretItem, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_paged.py new file mode 100644 index 000000000000..e17aec8bee11 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DeletedSecretItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`DeletedSecretItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DeletedSecretItem]'} + } + + def __init__(self, *args, **kwargs): + + super(DeletedSecretItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_py3.py new file mode 100644 index 000000000000..86dc5563d882 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/deleted_secret_item_py3.py @@ -0,0 +1,63 @@ +# 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 .secret_item_py3 import SecretItem + + +class DeletedSecretItem(SecretItem): + """The deleted secret item containing metadata about the deleted secret. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Secret identifier. + :type id: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted secret. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the secret is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the secret was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedSecretItem, self).__init__(id=id, attributes=attributes, tags=tags, content_type=content_type, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/error.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/error.py new file mode 100644 index 000000000000..05353abfd5d4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/error.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Error(Model): + """The key vault server error. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar inner_error: + :vartype inner_error: ~azure.keyvault.v2016_10_01.models.Error + """ + + _validation = { + 'code': {'readonly': True}, + 'message': {'readonly': True}, + 'inner_error': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'inner_error': {'key': 'innererror', 'type': 'Error'}, + } + + def __init__(self, **kwargs): + super(Error, self).__init__(**kwargs) + self.code = None + self.message = None + self.inner_error = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/error_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/error_py3.py new file mode 100644 index 000000000000..0dc08920d350 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/error_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Error(Model): + """The key vault server error. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar inner_error: + :vartype inner_error: ~azure.keyvault.v2016_10_01.models.Error + """ + + _validation = { + 'code': {'readonly': True}, + 'message': {'readonly': True}, + 'inner_error': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'inner_error': {'key': 'innererror', 'type': 'Error'}, + } + + def __init__(self, **kwargs) -> None: + super(Error, self).__init__(**kwargs) + self.code = None + self.message = None + self.inner_error = None diff --git a/azure-keyvault/azure/keyvault/models/issuer_attributes.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/issuer_attributes.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes.py diff --git a/azure-keyvault/azure/keyvault/models/issuer_attributes_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/issuer_attributes_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_attributes_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle.py new file mode 100644 index 000000000000..175cade690a9 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerBundle(Model): + """The issuer for Key Vault certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Identifier for the issuer object. + :vartype id: str + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v2016_10_01.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, **kwargs): + super(IssuerBundle, self).__init__(**kwargs) + self.id = None + self.provider = kwargs.get('provider', None) + self.credentials = kwargs.get('credentials', None) + self.organization_details = kwargs.get('organization_details', None) + self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle_py3.py new file mode 100644 index 000000000000..9eeb8f5e210a --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_bundle_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerBundle(Model): + """The issuer for Key Vault certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Identifier for the issuer object. + :vartype id: str + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v2016_10_01.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v2016_10_01.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v2016_10_01.models.IssuerAttributes + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: + super(IssuerBundle, self).__init__(**kwargs) + self.id = None + self.provider = provider + self.credentials = credentials + self.organization_details = organization_details + self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/models/issuer_credentials.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/issuer_credentials.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials.py diff --git a/azure-keyvault/azure/keyvault/models/issuer_credentials_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/issuer_credentials_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_credentials_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters.py new file mode 100644 index 000000000000..9a0f0a5572e5 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerParameters(Model): + """Parameters for the issuer of the X509 component of a certificate. + + :param name: Name of the referenced issuer object or reserved names; for + example, 'Self' or 'Unknown'. + :type name: str + :param certificate_type: Type of certificate to be requested from the + issuer provider. + :type certificate_type: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'certificate_type': {'key': 'cty', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IssuerParameters, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.certificate_type = kwargs.get('certificate_type', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters_py3.py new file mode 100644 index 000000000000..25fd2aadef30 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/issuer_parameters_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerParameters(Model): + """Parameters for the issuer of the X509 component of a certificate. + + :param name: Name of the referenced issuer object or reserved names; for + example, 'Self' or 'Unknown'. + :type name: str + :param certificate_type: Type of certificate to be requested from the + issuer provider. + :type certificate_type: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'certificate_type': {'key': 'cty', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, certificate_type: str=None, **kwargs) -> None: + super(IssuerParameters, self).__init__(**kwargs) + self.name = name + self.certificate_type = certificate_type diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key.py new file mode 100644 index 000000000000..397e0d80e3a6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JsonWebKey(Model): + """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. + + :param kid: Key identifier. + :type kid: str + :param kty: JsonWebKey key type (kty). Possible values include: 'EC', + 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' + :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType + :param key_ops: + :type key_ops: list[str] + :param n: RSA modulus. + :type n: bytes + :param e: RSA public exponent. + :type e: bytes + :param d: RSA private exponent, or the D component of an EC private key. + :type d: bytes + :param dp: RSA private key parameter. + :type dp: bytes + :param dq: RSA private key parameter. + :type dq: bytes + :param qi: RSA private key parameter. + :type qi: bytes + :param p: RSA secret prime. + :type p: bytes + :param q: RSA secret prime, with p < q. + :type q: bytes + :param k: Symmetric key. + :type k: bytes + :param t: HSM Token, used with 'Bring Your Own Key'. + :type t: bytes + :param crv: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'SECP256K1' + :type crv: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName + :param x: X component of an EC public key. + :type x: bytes + :param y: Y component of an EC public key. + :type y: bytes + """ + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'kty': {'key': 'kty', 'type': 'str'}, + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'n': {'key': 'n', 'type': 'base64'}, + 'e': {'key': 'e', 'type': 'base64'}, + 'd': {'key': 'd', 'type': 'base64'}, + 'dp': {'key': 'dp', 'type': 'base64'}, + 'dq': {'key': 'dq', 'type': 'base64'}, + 'qi': {'key': 'qi', 'type': 'base64'}, + 'p': {'key': 'p', 'type': 'base64'}, + 'q': {'key': 'q', 'type': 'base64'}, + 'k': {'key': 'k', 'type': 'base64'}, + 't': {'key': 'key_hsm', 'type': 'base64'}, + 'crv': {'key': 'crv', 'type': 'str'}, + 'x': {'key': 'x', 'type': 'base64'}, + 'y': {'key': 'y', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(JsonWebKey, self).__init__(**kwargs) + self.kid = kwargs.get('kid', None) + self.kty = kwargs.get('kty', None) + self.key_ops = kwargs.get('key_ops', None) + self.n = kwargs.get('n', None) + self.e = kwargs.get('e', None) + self.d = kwargs.get('d', None) + self.dp = kwargs.get('dp', None) + self.dq = kwargs.get('dq', None) + self.qi = kwargs.get('qi', None) + self.p = kwargs.get('p', None) + self.q = kwargs.get('q', None) + self.k = kwargs.get('k', None) + self.t = kwargs.get('t', None) + self.crv = kwargs.get('crv', None) + self.x = kwargs.get('x', None) + self.y = kwargs.get('y', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key_py3.py new file mode 100644 index 000000000000..2082d4673e30 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/json_web_key_py3.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JsonWebKey(Model): + """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. + + :param kid: Key identifier. + :type kid: str + :param kty: JsonWebKey key type (kty). Possible values include: 'EC', + 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' + :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType + :param key_ops: + :type key_ops: list[str] + :param n: RSA modulus. + :type n: bytes + :param e: RSA public exponent. + :type e: bytes + :param d: RSA private exponent, or the D component of an EC private key. + :type d: bytes + :param dp: RSA private key parameter. + :type dp: bytes + :param dq: RSA private key parameter. + :type dq: bytes + :param qi: RSA private key parameter. + :type qi: bytes + :param p: RSA secret prime. + :type p: bytes + :param q: RSA secret prime, with p < q. + :type q: bytes + :param k: Symmetric key. + :type k: bytes + :param t: HSM Token, used with 'Bring Your Own Key'. + :type t: bytes + :param crv: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'SECP256K1' + :type crv: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName + :param x: X component of an EC public key. + :type x: bytes + :param y: Y component of an EC public key. + :type y: bytes + """ + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'kty': {'key': 'kty', 'type': 'str'}, + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'n': {'key': 'n', 'type': 'base64'}, + 'e': {'key': 'e', 'type': 'base64'}, + 'd': {'key': 'd', 'type': 'base64'}, + 'dp': {'key': 'dp', 'type': 'base64'}, + 'dq': {'key': 'dq', 'type': 'base64'}, + 'qi': {'key': 'qi', 'type': 'base64'}, + 'p': {'key': 'p', 'type': 'base64'}, + 'q': {'key': 'q', 'type': 'base64'}, + 'k': {'key': 'k', 'type': 'base64'}, + 't': {'key': 'key_hsm', 'type': 'base64'}, + 'crv': {'key': 'crv', 'type': 'str'}, + 'x': {'key': 'x', 'type': 'base64'}, + 'y': {'key': 'y', 'type': 'base64'}, + } + + def __init__(self, *, kid: str=None, kty=None, key_ops=None, n: bytes=None, e: bytes=None, d: bytes=None, dp: bytes=None, dq: bytes=None, qi: bytes=None, p: bytes=None, q: bytes=None, k: bytes=None, t: bytes=None, crv=None, x: bytes=None, y: bytes=None, **kwargs) -> None: + super(JsonWebKey, self).__init__(**kwargs) + self.kid = kid + self.kty = kty + self.key_ops = key_ops + self.n = n + self.e = e + self.d = d + self.dp = dp + self.dq = dq + self.qi = qi + self.p = p + self.q = q + self.k = k + self.t = t + self.crv = crv + self.x = x + self.y = y diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes.py new file mode 100644 index 000000000000..304d7ef22048 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes import Attributes + + +class KeyAttributes(Attributes): + """The attributes of a key managed by the key vault service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for keys in the current vault. If it contains 'Purgeable' the key + can be permanently deleted by a privileged user; otherwise, only the + system can purge the key, at the end of the retention interval. Possible + values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(KeyAttributes, self).__init__(**kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes_py3.py new file mode 100644 index 000000000000..c9c52691c052 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_attributes_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes_py3 import Attributes + + +class KeyAttributes(Attributes): + """The attributes of a key managed by the key vault service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for keys in the current vault. If it contains 'Purgeable' the key + can be permanently deleted by a privileged user; otherwise, only the + system can purge the key, at the end of the retention interval. Possible + values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: + super(KeyAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle.py new file mode 100644 index 000000000000..cc2a01414728 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyBundle(Model): + """A KeyBundle consisting of a WebKey plus its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key: The Json web key. + :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(KeyBundle, self).__init__(**kwargs) + self.key = kwargs.get('key', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle_py3.py new file mode 100644 index 000000000000..ddf2612d4e8c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_bundle_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyBundle(Model): + """A KeyBundle consisting of a WebKey plus its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key: The Json web key. + :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, *, key=None, attributes=None, tags=None, **kwargs) -> None: + super(KeyBundle, self).__init__(**kwargs) + self.key = key + self.attributes = attributes + self.tags = tags + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters.py new file mode 100644 index 000000000000..eef2576c5b36 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyCreateParameters(Model): + """The key create parameters. + + All required parameters must be populated in order to send to Azure. + + :param kty: Required. The type of key to create. For valid values, see + JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', + 'oct' + :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType + :param key_size: The key size in bits. For example: 2048, 3072, or 4096 + for RSA. + :type key_size: int + :param key_ops: + :type key_ops: list[str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param curve: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'SECP256K1' + :type curve: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName + """ + + _validation = { + 'kty': {'required': True, 'min_length': 1}, + } + + _attribute_map = { + 'kty': {'key': 'kty', 'type': 'str'}, + 'key_size': {'key': 'key_size', 'type': 'int'}, + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'curve': {'key': 'crv', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(KeyCreateParameters, self).__init__(**kwargs) + self.kty = kwargs.get('kty', None) + self.key_size = kwargs.get('key_size', None) + self.key_ops = kwargs.get('key_ops', None) + self.key_attributes = kwargs.get('key_attributes', None) + self.tags = kwargs.get('tags', None) + self.curve = kwargs.get('curve', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters_py3.py new file mode 100644 index 000000000000..e89091134ec8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_create_parameters_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyCreateParameters(Model): + """The key create parameters. + + All required parameters must be populated in order to send to Azure. + + :param kty: Required. The type of key to create. For valid values, see + JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', + 'oct' + :type kty: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyType + :param key_size: The key size in bits. For example: 2048, 3072, or 4096 + for RSA. + :type key_size: int + :param key_ops: + :type key_ops: list[str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param curve: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'SECP256K1' + :type curve: str or ~azure.keyvault.v2016_10_01.models.JsonWebKeyCurveName + """ + + _validation = { + 'kty': {'required': True, 'min_length': 1}, + } + + _attribute_map = { + 'kty': {'key': 'kty', 'type': 'str'}, + 'key_size': {'key': 'key_size', 'type': 'int'}, + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'curve': {'key': 'crv', 'type': 'str'}, + } + + def __init__(self, *, kty, key_size: int=None, key_ops=None, key_attributes=None, tags=None, curve=None, **kwargs) -> None: + super(KeyCreateParameters, self).__init__(**kwargs) + self.kty = kty + self.key_size = key_size + self.key_ops = key_ops + self.key_attributes = key_attributes + self.tags = tags + self.curve = curve diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters.py new file mode 100644 index 000000000000..a4fe732ba2fe --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyImportParameters(Model): + """The key import parameters. + + All required parameters must be populated in order to send to Azure. + + :param hsm: Whether to import as a hardware key (HSM) or software key. + :type hsm: bool + :param key: Required. The Json web key + :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey + :param key_attributes: The key management attributes. + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'key': {'required': True}, + } + + _attribute_map = { + 'hsm': {'key': 'Hsm', 'type': 'bool'}, + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(KeyImportParameters, self).__init__(**kwargs) + self.hsm = kwargs.get('hsm', None) + self.key = kwargs.get('key', None) + self.key_attributes = kwargs.get('key_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters_py3.py new file mode 100644 index 000000000000..4f5fc66a2385 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_import_parameters_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyImportParameters(Model): + """The key import parameters. + + All required parameters must be populated in order to send to Azure. + + :param hsm: Whether to import as a hardware key (HSM) or software key. + :type hsm: bool + :param key: Required. The Json web key + :type key: ~azure.keyvault.v2016_10_01.models.JsonWebKey + :param key_attributes: The key management attributes. + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'key': {'required': True}, + } + + _attribute_map = { + 'hsm': {'key': 'Hsm', 'type': 'bool'}, + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, key, hsm: bool=None, key_attributes=None, tags=None, **kwargs) -> None: + super(KeyImportParameters, self).__init__(**kwargs) + self.hsm = hsm + self.key = key + self.key_attributes = key_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item.py new file mode 100644 index 000000000000..247cba1eaf50 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyItem(Model): + """The key item containing key metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param kid: Key identifier. + :type kid: str + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(KeyItem, self).__init__(**kwargs) + self.kid = kwargs.get('kid', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_paged.py new file mode 100644 index 000000000000..7e9355a1c9d0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class KeyItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`KeyItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[KeyItem]'} + } + + def __init__(self, *args, **kwargs): + + super(KeyItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_py3.py new file mode 100644 index 000000000000..07d3b9d555a5 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_item_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyItem(Model): + """The key item containing key metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param kid: Key identifier. + :type kid: str + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, *, kid: str=None, attributes=None, tags=None, **kwargs) -> None: + super(KeyItem, self).__init__(**kwargs) + self.kid = kid + self.attributes = attributes + self.tags = tags + self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/key_operation_result.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/key_operation_result.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result.py diff --git a/azure-keyvault/azure/keyvault/models/key_operation_result_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/key_operation_result_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/key_operation_result_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters.py new file mode 100644 index 000000000000..5d63e2e450f4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyOperationsParameters(Model): + """The key operations parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm + :param value: Required. + :type value: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'value': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(KeyOperationsParameters, self).__init__(**kwargs) + self.algorithm = kwargs.get('algorithm', None) + self.value = kwargs.get('value', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters_py3.py new file mode 100644 index 000000000000..f0020a9327e2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_operations_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyOperationsParameters(Model): + """The key operations parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyEncryptionAlgorithm + :param value: Required. + :type value: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'value': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: + super(KeyOperationsParameters, self).__init__(**kwargs) + self.algorithm = algorithm + self.value = value diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties.py new file mode 100644 index 000000000000..cffdedef7c39 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyProperties(Model): + """Properties of the key pair backing a certificate. + + :param exportable: Indicates if the private key can be exported. + :type exportable: bool + :param key_type: The key type. + :type key_type: str + :param key_size: The key size in bits. For example: 2048, 3072, or 4096 + for RSA. + :type key_size: int + :param reuse_key: Indicates if the same key pair will be used on + certificate renewal. + :type reuse_key: bool + """ + + _attribute_map = { + 'exportable': {'key': 'exportable', 'type': 'bool'}, + 'key_type': {'key': 'kty', 'type': 'str'}, + 'key_size': {'key': 'key_size', 'type': 'int'}, + 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(KeyProperties, self).__init__(**kwargs) + self.exportable = kwargs.get('exportable', None) + self.key_type = kwargs.get('key_type', None) + self.key_size = kwargs.get('key_size', None) + self.reuse_key = kwargs.get('reuse_key', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties_py3.py new file mode 100644 index 000000000000..1068ce7af0f4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_properties_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyProperties(Model): + """Properties of the key pair backing a certificate. + + :param exportable: Indicates if the private key can be exported. + :type exportable: bool + :param key_type: The key type. + :type key_type: str + :param key_size: The key size in bits. For example: 2048, 3072, or 4096 + for RSA. + :type key_size: int + :param reuse_key: Indicates if the same key pair will be used on + certificate renewal. + :type reuse_key: bool + """ + + _attribute_map = { + 'exportable': {'key': 'exportable', 'type': 'bool'}, + 'key_type': {'key': 'kty', 'type': 'str'}, + 'key_size': {'key': 'key_size', 'type': 'int'}, + 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, + } + + def __init__(self, *, exportable: bool=None, key_type: str=None, key_size: int=None, reuse_key: bool=None, **kwargs) -> None: + super(KeyProperties, self).__init__(**kwargs) + self.exportable = exportable + self.key_type = key_type + self.key_size = key_size + self.reuse_key = reuse_key diff --git a/azure-keyvault/azure/keyvault/models/key_restore_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/key_restore_parameters.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters.py diff --git a/azure-keyvault/azure/keyvault/models/key_restore_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/key_restore_parameters_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/key_restore_parameters_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters.py new file mode 100644 index 000000000000..2e817a0a419b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeySignParameters(Model): + """The key operations parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. The signing/verification algorithm identifier. + For more information on possible algorithm types, see + JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', + 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', + 'ECDSA256' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm + :param value: Required. + :type value: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'value': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(KeySignParameters, self).__init__(**kwargs) + self.algorithm = kwargs.get('algorithm', None) + self.value = kwargs.get('value', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters_py3.py new file mode 100644 index 000000000000..ba20d154c194 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_sign_parameters_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeySignParameters(Model): + """The key operations parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. The signing/verification algorithm identifier. + For more information on possible algorithm types, see + JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', + 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', + 'ECDSA256' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm + :param value: Required. + :type value: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'value': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: + super(KeySignParameters, self).__init__(**kwargs) + self.algorithm = algorithm + self.value = value diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters.py new file mode 100644 index 000000000000..bdedd4a96262 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyUpdateParameters(Model): + """The key update parameters. + + :param key_ops: Json web key operations. For more information on possible + key operations, see JsonWebKeyOperation. + :type key_ops: list[str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(KeyUpdateParameters, self).__init__(**kwargs) + self.key_ops = kwargs.get('key_ops', None) + self.key_attributes = kwargs.get('key_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters_py3.py new file mode 100644 index 000000000000..a36886b4b15d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_update_parameters_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyUpdateParameters(Model): + """The key update parameters. + + :param key_ops: Json web key operations. For more information on possible + key operations, see JsonWebKeyOperation. + :type key_ops: list[str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v2016_10_01.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, key_ops=None, key_attributes=None, tags=None, **kwargs) -> None: + super(KeyUpdateParameters, self).__init__(**kwargs) + self.key_ops = key_ops + self.key_attributes = key_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_client_enums.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_client_enums.py new file mode 100644 index 000000000000..98100904d78b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_client_enums.py @@ -0,0 +1,88 @@ +# 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 enum import Enum + + +class JsonWebKeyType(str, Enum): + + ec = "EC" + ec_hsm = "EC-HSM" + rsa = "RSA" + rsa_hsm = "RSA-HSM" + oct = "oct" + + +class JsonWebKeyCurveName(str, Enum): + + p_256 = "P-256" #: The NIST P-256 elliptic curve, AKA SECG curve SECP256R1. + p_384 = "P-384" #: The NIST P-384 elliptic curve, AKA SECG curve SECP384R1. + p_521 = "P-521" #: The NIST P-521 elliptic curve, AKA SECG curve SECP521R1. + secp256_k1 = "SECP256K1" #: The SECG SECP256K1 elliptic curve. + + +class DeletionRecoveryLevel(str, Enum): + + purgeable = "Purgeable" #: Soft-delete is not enabled for this vault. A DELETE operation results in immediate and irreversible data loss. + recoverable_purgeable = "Recoverable+Purgeable" #: Soft-delete is enabled for this vault; A priveleged user may trigger an immediate, irreversible deletion(purge) of a deleted entity. + recoverable = "Recoverable" #: Soft-delete is enabled for this vault and purge has been disabled. A deleted entity will remain in this state until recovered, or the end of the retention interval. + recoverable_protected_subscription = "Recoverable+ProtectedSubscription" #: Soft-delete is enabled for this vault, and the subscription is protected against immediate deletion. + + +class KeyUsageType(str, Enum): + + digital_signature = "digitalSignature" + non_repudiation = "nonRepudiation" + key_encipherment = "keyEncipherment" + data_encipherment = "dataEncipherment" + key_agreement = "keyAgreement" + key_cert_sign = "keyCertSign" + c_rl_sign = "cRLSign" + encipher_only = "encipherOnly" + decipher_only = "decipherOnly" + + +class ActionType(str, Enum): + + email_contacts = "EmailContacts" + auto_renew = "AutoRenew" + + +class JsonWebKeyOperation(str, Enum): + + encrypt = "encrypt" + decrypt = "decrypt" + sign = "sign" + verify = "verify" + wrap_key = "wrapKey" + unwrap_key = "unwrapKey" + + +class JsonWebKeyEncryptionAlgorithm(str, Enum): + + rsa_oaep = "RSA-OAEP" + rsa_oaep_256 = "RSA-OAEP-256" + rsa1_5 = "RSA1_5" + + +class JsonWebKeySignatureAlgorithm(str, Enum): + + ps256 = "PS256" + ps384 = "PS384" + ps512 = "PS512" + rs256 = "RS256" + rs384 = "RS384" + rs512 = "RS512" + rsnull = "RSNULL" + es256 = "ES256" + es384 = "ES384" + es512 = "ES512" + ecdsa256 = "ECDSA256" diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error.py new file mode 100644 index 000000000000..dd0802313ef7 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class KeyVaultError(Model): + """The key vault error exception. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar error: + :vartype error: ~azure.keyvault.v2016_10_01.models.Error + """ + + _validation = { + 'error': {'readonly': True}, + } + + _attribute_map = { + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, **kwargs): + super(KeyVaultError, self).__init__(**kwargs) + self.error = None + + +class KeyVaultErrorException(HttpOperationError): + """Server responsed with exception of type: 'KeyVaultError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error_py3.py new file mode 100644 index 000000000000..41d85ba16212 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_vault_error_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class KeyVaultError(Model): + """The key vault error exception. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar error: + :vartype error: ~azure.keyvault.v2016_10_01.models.Error + """ + + _validation = { + 'error': {'readonly': True}, + } + + _attribute_map = { + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, **kwargs) -> None: + super(KeyVaultError, self).__init__(**kwargs) + self.error = None + + +class KeyVaultErrorException(HttpOperationError): + """Server responsed with exception of type: 'KeyVaultError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters.py new file mode 100644 index 000000000000..186ee523f246 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVerifyParameters(Model): + """The key verify parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. The signing/verification algorithm. For more + information on possible algorithm types, see JsonWebKeySignatureAlgorithm. + Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', + 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm + :param digest: Required. The digest used for signing. + :type digest: bytes + :param signature: Required. The signature to be verified. + :type signature: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'digest': {'required': True}, + 'signature': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'digest': {'key': 'digest', 'type': 'base64'}, + 'signature': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(KeyVerifyParameters, self).__init__(**kwargs) + self.algorithm = kwargs.get('algorithm', None) + self.digest = kwargs.get('digest', None) + self.signature = kwargs.get('signature', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters_py3.py new file mode 100644 index 000000000000..dbb2d82957d5 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_parameters_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVerifyParameters(Model): + """The key verify parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. The signing/verification algorithm. For more + information on possible algorithm types, see JsonWebKeySignatureAlgorithm. + Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', + 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ECDSA256' + :type algorithm: str or + ~azure.keyvault.v2016_10_01.models.JsonWebKeySignatureAlgorithm + :param digest: Required. The digest used for signing. + :type digest: bytes + :param signature: Required. The signature to be verified. + :type signature: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'digest': {'required': True}, + 'signature': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'digest': {'key': 'digest', 'type': 'base64'}, + 'signature': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, *, algorithm, digest: bytes, signature: bytes, **kwargs) -> None: + super(KeyVerifyParameters, self).__init__(**kwargs) + self.algorithm = algorithm + self.digest = digest + self.signature = signature diff --git a/azure-keyvault/azure/keyvault/models/key_verify_result.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/key_verify_result.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result.py diff --git a/azure-keyvault/azure/keyvault/models/key_verify_result_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/key_verify_result_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/key_verify_result_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action.py new file mode 100644 index 000000000000..324aa347d022 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LifetimeAction(Model): + """Action and its trigger that will be performed by Key Vault over the + lifetime of a certificate. + + :param trigger: The condition that will execute the action. + :type trigger: ~azure.keyvault.v2016_10_01.models.Trigger + :param action: The action that will be executed. + :type action: ~azure.keyvault.v2016_10_01.models.Action + """ + + _attribute_map = { + 'trigger': {'key': 'trigger', 'type': 'Trigger'}, + 'action': {'key': 'action', 'type': 'Action'}, + } + + def __init__(self, **kwargs): + super(LifetimeAction, self).__init__(**kwargs) + self.trigger = kwargs.get('trigger', None) + self.action = kwargs.get('action', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action_py3.py new file mode 100644 index 000000000000..29f608c30c02 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/lifetime_action_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LifetimeAction(Model): + """Action and its trigger that will be performed by Key Vault over the + lifetime of a certificate. + + :param trigger: The condition that will execute the action. + :type trigger: ~azure.keyvault.v2016_10_01.models.Trigger + :param action: The action that will be executed. + :type action: ~azure.keyvault.v2016_10_01.models.Action + """ + + _attribute_map = { + 'trigger': {'key': 'trigger', 'type': 'Trigger'}, + 'action': {'key': 'action', 'type': 'Action'}, + } + + def __init__(self, *, trigger=None, action=None, **kwargs) -> None: + super(LifetimeAction, self).__init__(**kwargs) + self.trigger = trigger + self.action = action diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details.py new file mode 100644 index 000000000000..2ede7c6e8fc0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OrganizationDetails(Model): + """Details of the organization of the certificate issuer. + + :param id: Id of the organization. + :type id: str + :param admin_details: Details of the organization administrator. + :type admin_details: + list[~azure.keyvault.v2016_10_01.models.AdministratorDetails] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, + } + + def __init__(self, **kwargs): + super(OrganizationDetails, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.admin_details = kwargs.get('admin_details', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details_py3.py new file mode 100644 index 000000000000..f6f3ca554840 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/organization_details_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OrganizationDetails(Model): + """Details of the organization of the certificate issuer. + + :param id: Id of the organization. + :type id: str + :param admin_details: Details of the organization administrator. + :type admin_details: + list[~azure.keyvault.v2016_10_01.models.AdministratorDetails] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, + } + + def __init__(self, *, id: str=None, admin_details=None, **kwargs) -> None: + super(OrganizationDetails, self).__init__(**kwargs) + self.id = id + self.admin_details = admin_details diff --git a/azure-keyvault/azure/keyvault/models/pending_certificate_signing_request_result.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/pending_certificate_signing_request_result.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result.py diff --git a/azure-keyvault/azure/keyvault/models/pending_certificate_signing_request_result_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/pending_certificate_signing_request_result_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/pending_certificate_signing_request_result_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes.py new file mode 100644 index 000000000000..f88bd466ba4b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionAttributes(Model): + """The SAS definition management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: the enabled state of the object. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionAttributes, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.created = None + self.updated = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes_py3.py new file mode 100644 index 000000000000..e39796d6c7ee --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_attributes_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionAttributes(Model): + """The SAS definition management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: the enabled state of the object. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(SasDefinitionAttributes, self).__init__(**kwargs) + self.enabled = enabled + self.created = None + self.updated = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle.py new file mode 100644 index 000000000000..617c7dabde01 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionBundle(Model): + """A SAS definition bundle consists of key vault SAS definition details plus + its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The SAS definition id. + :vartype id: str + :ivar secret_id: Storage account SAS definition secret id. + :vartype secret_id: str + :ivar parameters: The SAS definition metadata in the form of key-value + pairs. + :vartype parameters: dict[str, str] + :ivar attributes: The SAS definition attributes. + :vartype attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :ivar tags: Application specific metadata in the form of key-value pairs + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'secret_id': {'readonly': True}, + 'parameters': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'secret_id': {'key': 'sid', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': '{str}'}, + 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionBundle, self).__init__(**kwargs) + self.id = None + self.secret_id = None + self.parameters = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle_py3.py new file mode 100644 index 000000000000..651abf8ceca8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_bundle_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionBundle(Model): + """A SAS definition bundle consists of key vault SAS definition details plus + its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The SAS definition id. + :vartype id: str + :ivar secret_id: Storage account SAS definition secret id. + :vartype secret_id: str + :ivar parameters: The SAS definition metadata in the form of key-value + pairs. + :vartype parameters: dict[str, str] + :ivar attributes: The SAS definition attributes. + :vartype attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :ivar tags: Application specific metadata in the form of key-value pairs + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'secret_id': {'readonly': True}, + 'parameters': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'secret_id': {'key': 'sid', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': '{str}'}, + 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(SasDefinitionBundle, self).__init__(**kwargs) + self.id = None + self.secret_id = None + self.parameters = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters.py new file mode 100644 index 000000000000..c95c7ed6ec84 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionCreateParameters(Model): + """The SAS definition create parameters. + + All required parameters must be populated in order to send to Azure. + + :param parameters: Required. Sas definition creation metadata in the form + of key-value pairs. + :type parameters: dict[str, str] + :param sas_definition_attributes: The attributes of the SAS definition. + :type sas_definition_attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'parameters': {'required': True}, + } + + _attribute_map = { + 'parameters': {'key': 'parameters', 'type': '{str}'}, + 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionCreateParameters, self).__init__(**kwargs) + self.parameters = kwargs.get('parameters', None) + self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters_py3.py new file mode 100644 index 000000000000..d8881d489ec8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_create_parameters_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionCreateParameters(Model): + """The SAS definition create parameters. + + All required parameters must be populated in order to send to Azure. + + :param parameters: Required. Sas definition creation metadata in the form + of key-value pairs. + :type parameters: dict[str, str] + :param sas_definition_attributes: The attributes of the SAS definition. + :type sas_definition_attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'parameters': {'required': True}, + } + + _attribute_map = { + 'parameters': {'key': 'parameters', 'type': '{str}'}, + 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, parameters, sas_definition_attributes=None, tags=None, **kwargs) -> None: + super(SasDefinitionCreateParameters, self).__init__(**kwargs) + self.parameters = parameters + self.sas_definition_attributes = sas_definition_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item.py new file mode 100644 index 000000000000..d7a34e984b96 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionItem(Model): + """The SAS definition item containing storage SAS definition metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The storage SAS identifier. + :vartype id: str + :ivar secret_id: The storage account SAS definition secret id. + :vartype secret_id: str + :ivar attributes: The SAS definition management attributes. + :vartype attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :ivar tags: Application specific metadata in the form of key-value pairs. + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'secret_id': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'secret_id': {'key': 'sid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionItem, self).__init__(**kwargs) + self.id = None + self.secret_id = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_paged.py new file mode 100644 index 000000000000..208a9346679f --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SasDefinitionItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`SasDefinitionItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SasDefinitionItem]'} + } + + def __init__(self, *args, **kwargs): + + super(SasDefinitionItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_py3.py new file mode 100644 index 000000000000..0ac9bec240ef --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_item_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionItem(Model): + """The SAS definition item containing storage SAS definition metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The storage SAS identifier. + :vartype id: str + :ivar secret_id: The storage account SAS definition secret id. + :vartype secret_id: str + :ivar attributes: The SAS definition management attributes. + :vartype attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :ivar tags: Application specific metadata in the form of key-value pairs. + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'secret_id': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'secret_id': {'key': 'sid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(SasDefinitionItem, self).__init__(**kwargs) + self.id = None + self.secret_id = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters.py new file mode 100644 index 000000000000..24139d3ee100 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionUpdateParameters(Model): + """The SAS definition update parameters. + + :param parameters: Sas definition update metadata in the form of key-value + pairs. + :type parameters: dict[str, str] + :param sas_definition_attributes: The attributes of the SAS definition. + :type sas_definition_attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'parameters': {'key': 'parameters', 'type': '{str}'}, + 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionUpdateParameters, self).__init__(**kwargs) + self.parameters = kwargs.get('parameters', None) + self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters_py3.py new file mode 100644 index 000000000000..7efa004c6c49 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/sas_definition_update_parameters_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionUpdateParameters(Model): + """The SAS definition update parameters. + + :param parameters: Sas definition update metadata in the form of key-value + pairs. + :type parameters: dict[str, str] + :param sas_definition_attributes: The attributes of the SAS definition. + :type sas_definition_attributes: + ~azure.keyvault.v2016_10_01.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'parameters': {'key': 'parameters', 'type': '{str}'}, + 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, parameters=None, sas_definition_attributes=None, tags=None, **kwargs) -> None: + super(SasDefinitionUpdateParameters, self).__init__(**kwargs) + self.parameters = parameters + self.sas_definition_attributes = sas_definition_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes.py new file mode 100644 index 000000000000..e83b581172b1 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes import Attributes + + +class SecretAttributes(Attributes): + """The secret management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for secrets in the current vault. If it contains 'Purgeable', the + secret can be permanently deleted by a privileged user; otherwise, only + the system can purge the secret, at the end of the retention interval. + Possible values include: 'Purgeable', 'Recoverable+Purgeable', + 'Recoverable', 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecretAttributes, self).__init__(**kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes_py3.py new file mode 100644 index 000000000000..385b4f84fea3 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_attributes_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes_py3 import Attributes + + +class SecretAttributes(Attributes): + """The secret management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for secrets in the current vault. If it contains 'Purgeable', the + secret can be permanently deleted by a privileged user; otherwise, only + the system can purge the secret, at the end of the retention interval. + Possible values include: 'Purgeable', 'Recoverable+Purgeable', + 'Recoverable', 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v2016_10_01.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: + super(SecretAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle.py new file mode 100644 index 000000000000..79171363e088 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretBundle(Model): + """A secret consisting of a value, id and its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The secret value. + :type value: str + :param id: The secret id. + :type id: str + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar kid: If this is a secret backing a KV certificate, then this field + specifies the corresponding key backing the KV certificate. + :vartype kid: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a secret backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'kid': {'readonly': True}, + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SecretBundle, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.id = kwargs.get('id', None) + self.content_type = kwargs.get('content_type', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.kid = None + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle_py3.py new file mode 100644 index 000000000000..74b96fcde2e2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_bundle_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretBundle(Model): + """A secret consisting of a value, id and its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The secret value. + :type value: str + :param id: The secret id. + :type id: str + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar kid: If this is a secret backing a KV certificate, then this field + specifies the corresponding key backing the KV certificate. + :vartype kid: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a secret backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'kid': {'readonly': True}, + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: + super(SecretBundle, self).__init__(**kwargs) + self.value = value + self.id = id + self.content_type = content_type + self.attributes = attributes + self.tags = tags + self.kid = None + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item.py new file mode 100644 index 000000000000..9b94483832e7 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretItem(Model): + """The secret item containing secret metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Secret identifier. + :type id: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SecretItem, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.content_type = kwargs.get('content_type', None) + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_paged.py new file mode 100644 index 000000000000..0c12e7a94408 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SecretItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`SecretItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SecretItem]'} + } + + def __init__(self, *args, **kwargs): + + super(SecretItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_py3.py new file mode 100644 index 000000000000..470cf98df1ec --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_item_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretItem(Model): + """The secret item containing secret metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Secret identifier. + :type id: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, **kwargs) -> None: + super(SecretItem, self).__init__(**kwargs) + self.id = id + self.attributes = attributes + self.tags = tags + self.content_type = content_type + self.managed = None diff --git a/azure-keyvault/azure/keyvault/models/secret_properties.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/secret_properties.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties.py diff --git a/azure-keyvault/azure/keyvault/models/secret_properties_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/secret_properties_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/secret_properties_py3.py diff --git a/azure-keyvault/azure/keyvault/models/secret_restore_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/secret_restore_parameters.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters.py diff --git a/azure-keyvault/azure/keyvault/models/secret_restore_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/secret_restore_parameters_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/secret_restore_parameters_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters.py new file mode 100644 index 000000000000..b6586ebfd469 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretSetParameters(Model): + """The secret set parameters. + + All required parameters must be populated in order to send to Azure. + + :param value: Required. The value of the secret. + :type value: str + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: + ~azure.keyvault.v2016_10_01.models.SecretAttributes + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + } + + def __init__(self, **kwargs): + super(SecretSetParameters, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.tags = kwargs.get('tags', None) + self.content_type = kwargs.get('content_type', None) + self.secret_attributes = kwargs.get('secret_attributes', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters_py3.py new file mode 100644 index 000000000000..6f78f925ae3c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_set_parameters_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretSetParameters(Model): + """The secret set parameters. + + All required parameters must be populated in order to send to Azure. + + :param value: Required. The value of the secret. + :type value: str + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: + ~azure.keyvault.v2016_10_01.models.SecretAttributes + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + } + + def __init__(self, *, value: str, tags=None, content_type: str=None, secret_attributes=None, **kwargs) -> None: + super(SecretSetParameters, self).__init__(**kwargs) + self.value = value + self.tags = tags + self.content_type = content_type + self.secret_attributes = secret_attributes diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters.py new file mode 100644 index 000000000000..958c5f915510 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretUpdateParameters(Model): + """The secret update parameters. + + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: + ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SecretUpdateParameters, self).__init__(**kwargs) + self.content_type = kwargs.get('content_type', None) + self.secret_attributes = kwargs.get('secret_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters_py3.py new file mode 100644 index 000000000000..5a6fe7b80cd9 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/secret_update_parameters_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretUpdateParameters(Model): + """The secret update parameters. + + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: + ~azure.keyvault.v2016_10_01.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, content_type: str=None, secret_attributes=None, tags=None, **kwargs) -> None: + super(SecretUpdateParameters, self).__init__(**kwargs) + self.content_type = content_type + self.secret_attributes = secret_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes.py new file mode 100644 index 000000000000..736235e71f12 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountAttributes(Model): + """The storage account management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: the enabled state of the object. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(StorageAccountAttributes, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.created = None + self.updated = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes_py3.py new file mode 100644 index 000000000000..86f559fd7bd2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_attributes_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountAttributes(Model): + """The storage account management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: the enabled state of the object. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(StorageAccountAttributes, self).__init__(**kwargs) + self.enabled = enabled + self.created = None + self.updated = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters.py new file mode 100644 index 000000000000..009ace7c8b6c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountCreateParameters(Model): + """The storage account create parameters. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. Storage account resource id. + :type resource_id: str + :param active_key_name: Required. Current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: Required. whether keyvault should manage the + storage account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration specified + in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage account. + :type storage_account_attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'resource_id': {'required': True}, + 'active_key_name': {'required': True}, + 'auto_regenerate_key': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(StorageAccountCreateParameters, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.active_key_name = kwargs.get('active_key_name', None) + self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) + self.regeneration_period = kwargs.get('regeneration_period', None) + self.storage_account_attributes = kwargs.get('storage_account_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters_py3.py new file mode 100644 index 000000000000..3a19c96ed3ac --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_create_parameters_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountCreateParameters(Model): + """The storage account create parameters. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. Storage account resource id. + :type resource_id: str + :param active_key_name: Required. Current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: Required. whether keyvault should manage the + storage account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration specified + in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage account. + :type storage_account_attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'resource_id': {'required': True}, + 'active_key_name': {'required': True}, + 'auto_regenerate_key': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, resource_id: str, active_key_name: str, auto_regenerate_key: bool, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: + super(StorageAccountCreateParameters, self).__init__(**kwargs) + self.resource_id = resource_id + self.active_key_name = active_key_name + self.auto_regenerate_key = auto_regenerate_key + self.regeneration_period = regeneration_period + self.storage_account_attributes = storage_account_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item.py new file mode 100644 index 000000000000..4591f33fb646 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountItem(Model): + """The storage account item containing storage account metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Storage identifier. + :vartype id: str + :ivar resource_id: Storage account resource Id. + :vartype resource_id: str + :ivar attributes: The storage account management attributes. + :vartype attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :ivar tags: Application specific metadata in the form of key-value pairs. + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(StorageAccountItem, self).__init__(**kwargs) + self.id = None + self.resource_id = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_paged.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_paged.py new file mode 100644 index 000000000000..d9a36f98190b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class StorageAccountItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`StorageAccountItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[StorageAccountItem]'} + } + + def __init__(self, *args, **kwargs): + + super(StorageAccountItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_py3.py new file mode 100644 index 000000000000..8759d140079e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_item_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountItem(Model): + """The storage account item containing storage account metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Storage identifier. + :vartype id: str + :ivar resource_id: Storage account resource Id. + :vartype resource_id: str + :ivar attributes: The storage account management attributes. + :vartype attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :ivar tags: Application specific metadata in the form of key-value pairs. + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(StorageAccountItem, self).__init__(**kwargs) + self.id = None + self.resource_id = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/storage_account_regenerte_key_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/storage_account_regenerte_key_parameters.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters.py diff --git a/azure-keyvault/azure/keyvault/models/storage_account_regenerte_key_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/storage_account_regenerte_key_parameters_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_regenerte_key_parameters_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters.py new file mode 100644 index 000000000000..82c653c46406 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountUpdateParameters(Model): + """The storage account update parameters. + + :param active_key_name: The current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration specified + in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage account. + :type storage_account_attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(StorageAccountUpdateParameters, self).__init__(**kwargs) + self.active_key_name = kwargs.get('active_key_name', None) + self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) + self.regeneration_period = kwargs.get('regeneration_period', None) + self.storage_account_attributes = kwargs.get('storage_account_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters_py3.py new file mode 100644 index 000000000000..a2056f3d36dd --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_account_update_parameters_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountUpdateParameters(Model): + """The storage account update parameters. + + :param active_key_name: The current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration specified + in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage account. + :type storage_account_attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, active_key_name: str=None, auto_regenerate_key: bool=None, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: + super(StorageAccountUpdateParameters, self).__init__(**kwargs) + self.active_key_name = active_key_name + self.auto_regenerate_key = auto_regenerate_key + self.regeneration_period = regeneration_period + self.storage_account_attributes = storage_account_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle.py new file mode 100644 index 000000000000..709910308e95 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageBundle(Model): + """A Storage account bundle consists of key vault storage account details plus + its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The storage account id. + :vartype id: str + :ivar resource_id: The storage account resource id. + :vartype resource_id: str + :ivar active_key_name: The current active storage account key name. + :vartype active_key_name: str + :ivar auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :vartype auto_regenerate_key: bool + :ivar regeneration_period: The key regeneration time duration specified in + ISO-8601 format. + :vartype regeneration_period: str + :ivar attributes: The storage account attributes. + :vartype attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :ivar tags: Application specific metadata in the form of key-value pairs + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'active_key_name': {'readonly': True}, + 'auto_regenerate_key': {'readonly': True}, + 'regeneration_period': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(StorageBundle, self).__init__(**kwargs) + self.id = None + self.resource_id = None + self.active_key_name = None + self.auto_regenerate_key = None + self.regeneration_period = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle_py3.py new file mode 100644 index 000000000000..21e1c67cc35c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/storage_bundle_py3.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageBundle(Model): + """A Storage account bundle consists of key vault storage account details plus + its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The storage account id. + :vartype id: str + :ivar resource_id: The storage account resource id. + :vartype resource_id: str + :ivar active_key_name: The current active storage account key name. + :vartype active_key_name: str + :ivar auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :vartype auto_regenerate_key: bool + :ivar regeneration_period: The key regeneration time duration specified in + ISO-8601 format. + :vartype regeneration_period: str + :ivar attributes: The storage account attributes. + :vartype attributes: + ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes + :ivar tags: Application specific metadata in the form of key-value pairs + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'active_key_name': {'readonly': True}, + 'auto_regenerate_key': {'readonly': True}, + 'regeneration_period': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(StorageBundle, self).__init__(**kwargs) + self.id = None + self.resource_id = None + self.active_key_name = None + self.auto_regenerate_key = None + self.regeneration_period = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/subject_alternative_names.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/subject_alternative_names.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names.py diff --git a/azure-keyvault/azure/keyvault/models/subject_alternative_names_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/subject_alternative_names_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/subject_alternative_names_py3.py diff --git a/azure-keyvault/azure/keyvault/models/trigger.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/trigger.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/trigger.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/trigger.py diff --git a/azure-keyvault/azure/keyvault/models/trigger_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/trigger_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/trigger_py3.py rename to azure-keyvault/azure/keyvault/v2016_10_01/models/trigger_py3.py diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties.py new file mode 100644 index 000000000000..d7a4b83c39c4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class X509CertificateProperties(Model): + """Properties of the X509 component of a certificate. + + :param subject: The subject name. Should be a valid X509 distinguished + Name. + :type subject: str + :param ekus: The enhanced key usage. + :type ekus: list[str] + :param subject_alternative_names: The subject alternative names. + :type subject_alternative_names: + ~azure.keyvault.v2016_10_01.models.SubjectAlternativeNames + :param key_usage: List of key usages. + :type key_usage: list[str or + ~azure.keyvault.v2016_10_01.models.KeyUsageType] + :param validity_in_months: The duration that the ceritifcate is valid in + months. + :type validity_in_months: int + """ + + _validation = { + 'validity_in_months': {'minimum': 0}, + } + + _attribute_map = { + 'subject': {'key': 'subject', 'type': 'str'}, + 'ekus': {'key': 'ekus', 'type': '[str]'}, + 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, + 'key_usage': {'key': 'key_usage', 'type': '[str]'}, + 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(X509CertificateProperties, self).__init__(**kwargs) + self.subject = kwargs.get('subject', None) + self.ekus = kwargs.get('ekus', None) + self.subject_alternative_names = kwargs.get('subject_alternative_names', None) + self.key_usage = kwargs.get('key_usage', None) + self.validity_in_months = kwargs.get('validity_in_months', None) diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties_py3.py b/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties_py3.py new file mode 100644 index 000000000000..8a2e5227cf2a --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/models/x509_certificate_properties_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class X509CertificateProperties(Model): + """Properties of the X509 component of a certificate. + + :param subject: The subject name. Should be a valid X509 distinguished + Name. + :type subject: str + :param ekus: The enhanced key usage. + :type ekus: list[str] + :param subject_alternative_names: The subject alternative names. + :type subject_alternative_names: + ~azure.keyvault.v2016_10_01.models.SubjectAlternativeNames + :param key_usage: List of key usages. + :type key_usage: list[str or + ~azure.keyvault.v2016_10_01.models.KeyUsageType] + :param validity_in_months: The duration that the ceritifcate is valid in + months. + :type validity_in_months: int + """ + + _validation = { + 'validity_in_months': {'minimum': 0}, + } + + _attribute_map = { + 'subject': {'key': 'subject', 'type': 'str'}, + 'ekus': {'key': 'ekus', 'type': '[str]'}, + 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, + 'key_usage': {'key': 'key_usage', 'type': '[str]'}, + 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, + } + + def __init__(self, *, subject: str=None, ekus=None, subject_alternative_names=None, key_usage=None, validity_in_months: int=None, **kwargs) -> None: + super(X509CertificateProperties, self).__init__(**kwargs) + self.subject = subject + self.ekus = ekus + self.subject_alternative_names = subject_alternative_names + self.key_usage = key_usage + self.validity_in_months = validity_in_months diff --git a/azure-keyvault/azure/keyvault/v2016_10_01/version.py b/azure-keyvault/azure/keyvault/v2016_10_01/version.py new file mode 100644 index 000000000000..20ba78005d47 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v2016_10_01/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "2016-10-01" + diff --git a/azure-keyvault/azure/keyvault/v7_0/__init__.py b/azure-keyvault/azure/keyvault/v7_0/__init__.py new file mode 100644 index 000000000000..f5ce6ec63059 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/__init__.py @@ -0,0 +1,18 @@ +# 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 .key_vault_client import KeyVaultClient +from .version import VERSION + +__all__ = ['KeyVaultClient'] + +__version__ = VERSION + diff --git a/azure-keyvault/azure/keyvault/v7_0/key_vault_client.py b/azure-keyvault/azure/keyvault/v7_0/key_vault_client.py new file mode 100644 index 000000000000..17affc4df48d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/key_vault_client.py @@ -0,0 +1,5786 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from msrest.pipeline import ClientRawResponse +import uuid +from . import models + + +class KeyVaultClientConfiguration(AzureConfiguration): + """Configuration for KeyVaultClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + """ + + def __init__( + self, credentials): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + base_url = '{vaultBaseUrl}' + + super(KeyVaultClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-keyvault/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + + +class KeyVaultClient(SDKClient): + """The key vault client performs cryptographic key operations and vault operations against the Key Vault service. + + :ivar config: Configuration for client. + :vartype config: KeyVaultClientConfiguration + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + """ + + def __init__( + self, credentials): + + self.config = KeyVaultClientConfiguration(credentials) + super(KeyVaultClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '7.0' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + + def create_key( + self, vault_base_url, key_name, kty, key_size=None, key_ops=None, key_attributes=None, tags=None, curve=None, custom_headers=None, raw=False, **operation_config): + """Creates a new key, stores it, then returns key parameters and + attributes to the client. + + The create key operation can be used to create any key type in Azure + Key Vault. If the named key already exists, Azure Key Vault creates a + new version of the key. It requires the keys/create permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name for the new key. The system will generate + the version name for the new key. + :type key_name: str + :param kty: The type of key to create. For valid values, see + JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', + 'RSA-HSM', 'oct' + :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType + :param key_size: The key size in bits. For example: 2048, 3072, or + 4096 for RSA. + :type key_size: int + :param key_ops: + :type key_ops: list[str or + ~azure.keyvault.v7_0.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param curve: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', + 'P-521', 'P-256K' + :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyCreateParameters(kty=kty, key_size=key_size, key_ops=key_ops, key_attributes=key_attributes, tags=tags, curve=curve) + + # Construct URL + url = self.create_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyCreateParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_key.metadata = {'url': '/keys/{key-name}/create'} + + def import_key( + self, vault_base_url, key_name, key, hsm=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Imports an externally created key, stores it, and returns key + parameters and attributes to the client. + + The import key operation may be used to import any key type into an + Azure Key Vault. If the named key already exists, Azure Key Vault + creates a new version of the key. This operation requires the + keys/import permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: Name for the imported key. + :type key_name: str + :param key: The Json web key + :type key: ~azure.keyvault.v7_0.models.JsonWebKey + :param hsm: Whether to import as a hardware key (HSM) or software key. + :type hsm: bool + :param key_attributes: The key management attributes. + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyImportParameters(hsm=hsm, key=key, key_attributes=key_attributes, tags=tags) + + # Construct URL + url = self.import_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyImportParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + import_key.metadata = {'url': '/keys/{key-name}'} + + def delete_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Deletes a key of any type from storage in Azure Key Vault. + + The delete key operation cannot be used to remove individual versions + of a key. This operation removes the cryptographic material associated + with the key, which means the key is not usable for Sign/Verify, + Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the + keys/delete permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key to delete. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedKeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedKeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedKeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_key.metadata = {'url': '/keys/{key-name}'} + + def update_key( + self, vault_base_url, key_name, key_version, key_ops=None, key_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """The update key operation changes specified attributes of a stored key + and can be applied to any key type and key version stored in Azure Key + Vault. + + In order to perform this operation, the key must already exist in the + Key Vault. Note: The cryptographic material of a key itself cannot be + changed. This operation requires the keys/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of key to update. + :type key_name: str + :param key_version: The version of the key to update. + :type key_version: str + :param key_ops: Json web key operations. For more information on + possible key operations, see JsonWebKeyOperation. + :type key_ops: list[str or + ~azure.keyvault.v7_0.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyUpdateParameters(key_ops=key_ops, key_attributes=key_attributes, tags=tags) + + # Construct URL + url = self.update_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_key.metadata = {'url': '/keys/{key-name}/{key-version}'} + + def get_key( + self, vault_base_url, key_name, key_version, custom_headers=None, raw=False, **operation_config): + """Gets the public part of a stored key. + + The get key operation is applicable to all key types. If the requested + key is symmetric, then no key material is released in the response. + This operation requires the keys/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key to get. + :type key_name: str + :param key_version: Adding the version parameter retrieves a specific + version of a key. + :type key_version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_key.metadata = {'url': '/keys/{key-name}/{key-version}'} + + def get_key_versions( + self, vault_base_url, key_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Retrieves a list of individual key versions with the same key name. + + The full key identifier, attributes, and tags are provided in the + response. This operation requires the keys/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of KeyItem + :rtype: + ~azure.keyvault.v7_0.models.KeyItemPaged[~azure.keyvault.v7_0.models.KeyItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_key_versions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_key_versions.metadata = {'url': '/keys/{key-name}/versions'} + + def get_keys( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List keys in the specified vault. + + Retrieves a list of the keys in the Key Vault as JSON Web Key + structures that contain the public part of a stored key. The LIST + operation is applicable to all key types, however only the base key + identifier, attributes, and tags are provided in the response. + Individual versions of a key are not listed in the response. This + operation requires the keys/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of KeyItem + :rtype: + ~azure.keyvault.v7_0.models.KeyItemPaged[~azure.keyvault.v7_0.models.KeyItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_keys.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.KeyItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.KeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_keys.metadata = {'url': '/keys'} + + def backup_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Requests that a backup of the specified key be downloaded to the + client. + + The Key Backup operation exports a key from Azure Key Vault in a + protected form. Note that this operation does NOT return key material + in a form that can be used outside the Azure Key Vault system, the + returned key material is either protected to a Azure Key Vault HSM or + to Azure Key Vault itself. The intent of this operation is to allow a + client to GENERATE a key in one Azure Key Vault instance, BACKUP the + key, and then RESTORE it into another Azure Key Vault instance. The + BACKUP operation may be used to export, in protected form, any key type + from Azure Key Vault. Individual versions of a key cannot be backed up. + BACKUP / RESTORE can be performed within geographical boundaries only; + meaning that a BACKUP from one geographical area cannot be restored to + another geographical area. For example, a backup from the US + geographical area cannot be restored in an EU geographical area. This + operation requires the key/backup permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackupKeyResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.BackupKeyResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.backup_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackupKeyResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + backup_key.metadata = {'url': '/keys/{key-name}/backup'} + + def restore_key( + self, vault_base_url, key_bundle_backup, custom_headers=None, raw=False, **operation_config): + """Restores a backed up key to a vault. + + Imports a previously backed up key into Azure Key Vault, restoring the + key, its key identifier, attributes and access control policies. The + RESTORE operation may be used to import a previously backed up key. + Individual versions of a key cannot be restored. The key is restored in + its entirety with the same key name as it had when it was backed up. If + the key name is not available in the target Key Vault, the RESTORE + operation will be rejected. While the key name is retained during + restore, the final key identifier will change if the key is restored to + a different vault. Restore will restore all versions and preserve + version identifiers. The RESTORE operation is subject to security + constraints: The target Key Vault must be owned by the same Microsoft + Azure Subscription as the source Key Vault The user must have RESTORE + permission in the target Key Vault. This operation requires the + keys/restore permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_bundle_backup: The backup blob associated with a key + bundle. + :type key_bundle_backup: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyRestoreParameters(key_bundle_backup=key_bundle_backup) + + # Construct URL + url = self.restore_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyRestoreParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + restore_key.metadata = {'url': '/keys/restore'} + + def encrypt( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Encrypts an arbitrary sequence of bytes using an encryption key that is + stored in a key vault. + + The ENCRYPT operation encrypts an arbitrary sequence of bytes using an + encryption key that is stored in Azure Key Vault. Note that the ENCRYPT + operation only supports a single block of data, the size of which is + dependent on the target key and the encryption algorithm to be used. + The ENCRYPT operation is only strictly necessary for symmetric keys + stored in Azure Key Vault since protection with an asymmetric key can + be performed using public portion of the key. This operation is + supported for asymmetric keys as a convenience for callers that have a + key-reference but do not have access to the public key material. This + operation requires the keys/encypt permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.encrypt.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyOperationsParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + encrypt.metadata = {'url': '/keys/{key-name}/{key-version}/encrypt'} + + def decrypt( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Decrypts a single block of encrypted data. + + The DECRYPT operation decrypts a well-formed block of ciphertext using + the target encryption key and specified algorithm. This operation is + the reverse of the ENCRYPT operation; only a single block of data may + be decrypted, the size of this block is dependent on the target key and + the algorithm to be used. The DECRYPT operation applies to asymmetric + and symmetric keys stored in Azure Key Vault since it uses the private + portion of the key. This operation requires the keys/decrypt + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.decrypt.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyOperationsParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + decrypt.metadata = {'url': '/keys/{key-name}/{key-version}/decrypt'} + + def sign( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Creates a signature from a digest using the specified key. + + The SIGN operation is applicable to asymmetric and symmetric keys + stored in Azure Key Vault since this operation uses the private portion + of the key. This operation requires the keys/sign permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: The signing/verification algorithm identifier. For + more information on possible algorithm types, see + JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', + 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', + 'ES384', 'ES512', 'ES256K' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeySignParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.sign.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeySignParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + sign.metadata = {'url': '/keys/{key-name}/{key-version}/sign'} + + def verify( + self, vault_base_url, key_name, key_version, algorithm, digest, signature, custom_headers=None, raw=False, **operation_config): + """Verifies a signature using a specified key. + + The VERIFY operation is applicable to symmetric keys stored in Azure + Key Vault. VERIFY is not strictly necessary for asymmetric keys stored + in Azure Key Vault since signature verification can be performed using + the public portion of the key but this operation is supported as a + convenience for callers that only have a key-reference and not the + public portion of the key. This operation requires the keys/verify + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: The signing/verification algorithm. For more + information on possible algorithm types, see + JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', + 'PS384', 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', + 'ES384', 'ES512', 'ES256K' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm + :param digest: The digest used for signing. + :type digest: bytes + :param signature: The signature to be verified. + :type signature: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyVerifyResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyVerifyResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyVerifyParameters(algorithm=algorithm, digest=digest, signature=signature) + + # Construct URL + url = self.verify.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyVerifyParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyVerifyResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + verify.metadata = {'url': '/keys/{key-name}/{key-version}/verify'} + + def wrap_key( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Wraps a symmetric key using a specified key. + + The WRAP operation supports encryption of a symmetric key using a key + encryption key that has previously been stored in an Azure Key Vault. + The WRAP operation is only strictly necessary for symmetric keys stored + in Azure Key Vault since protection with an asymmetric key can be + performed using the public portion of the key. This operation is + supported for asymmetric keys as a convenience for callers that have a + key-reference but do not have access to the public key material. This + operation requires the keys/wrapKey permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.wrap_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyOperationsParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + wrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/wrapkey'} + + def unwrap_key( + self, vault_base_url, key_name, key_version, algorithm, value, custom_headers=None, raw=False, **operation_config): + """Unwraps a symmetric key using the specified key that was initially used + for wrapping that key. + + The UNWRAP operation supports decryption of a symmetric key using the + target key encryption key. This operation is the reverse of the WRAP + operation. The UNWRAP operation applies to asymmetric and symmetric + keys stored in Azure Key Vault since it uses the private portion of the + key. This operation requires the keys/unwrapKey permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param key_version: The version of the key. + :type key_version: str + :param algorithm: algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm + :param value: + :type value: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyOperationResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyOperationResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.KeyOperationsParameters(algorithm=algorithm, value=value) + + # Construct URL + url = self.unwrap_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str'), + 'key-version': self._serialize.url("key_version", key_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'KeyOperationsParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + unwrap_key.metadata = {'url': '/keys/{key-name}/{key-version}/unwrapkey'} + + def get_deleted_keys( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Lists the deleted keys in the specified vault. + + Retrieves a list of the keys in the Key Vault as JSON Web Key + structures that contain the public part of a deleted key. This + operation includes deletion-specific information. The Get Deleted Keys + operation is applicable for vaults enabled for soft-delete. While the + operation can be invoked on any vault, it will return an error if + invoked on a non soft-delete enabled vault. This operation requires the + keys/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DeletedKeyItem + :rtype: + ~azure.keyvault.v7_0.models.DeletedKeyItemPaged[~azure.keyvault.v7_0.models.DeletedKeyItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_deleted_keys.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DeletedKeyItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_deleted_keys.metadata = {'url': '/deletedkeys'} + + def get_deleted_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Gets the public part of a deleted key. + + The Get Deleted Key operation is applicable for soft-delete enabled + vaults. While the operation can be invoked on any vault, it will return + an error if invoked on a non soft-delete enabled vault. This operation + requires the keys/get permission. . + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedKeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedKeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_deleted_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedKeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} + + def purge_deleted_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Permanently deletes the specified key. + + The Purge Deleted Key operation is applicable for soft-delete enabled + vaults. While the operation can be invoked on any vault, it will return + an error if invoked on a non soft-delete enabled vault. This operation + requires the keys/purge permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the key + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.purge_deleted_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.KeyVaultErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + purge_deleted_key.metadata = {'url': '/deletedkeys/{key-name}'} + + def recover_deleted_key( + self, vault_base_url, key_name, custom_headers=None, raw=False, **operation_config): + """Recovers the deleted key to its latest version. + + The Recover Deleted Key operation is applicable for deleted keys in + soft-delete enabled vaults. It recovers the deleted key back to its + latest version under /keys. An attempt to recover an non-deleted key + will return an error. Consider this the inverse of the delete operation + on soft-delete enabled vaults. This operation requires the keys/recover + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param key_name: The name of the deleted key. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: KeyBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.KeyBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.recover_deleted_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'key-name': self._serialize.url("key_name", key_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('KeyBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + recover_deleted_key.metadata = {'url': '/deletedkeys/{key-name}/recover'} + + def set_secret( + self, vault_base_url, secret_name, value, tags=None, content_type=None, secret_attributes=None, custom_headers=None, raw=False, **operation_config): + """Sets a secret in a specified key vault. + + The SET operation adds a secret to the Azure Key Vault. If the named + secret already exists, Azure Key Vault creates a new version of that + secret. This operation requires the secrets/set permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param value: The value of the secret. + :type value: str + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.SecretSetParameters(value=value, tags=tags, content_type=content_type, secret_attributes=secret_attributes) + + # Construct URL + url = self.set_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecretSetParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_secret.metadata = {'url': '/secrets/{secret-name}'} + + def delete_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Deletes a secret from a specified key vault. + + The DELETE operation applies to any secret stored in Azure Key Vault. + DELETE cannot be applied to an individual version of a secret. This + operation requires the secrets/delete permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedSecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedSecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedSecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_secret.metadata = {'url': '/secrets/{secret-name}'} + + def update_secret( + self, vault_base_url, secret_name, secret_version, content_type=None, secret_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the attributes associated with a specified secret in a given + key vault. + + The UPDATE operation changes specified attributes of an existing stored + secret. Attributes that are not specified in the request are left + unchanged. The value of a secret itself cannot be changed. This + operation requires the secrets/set permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param secret_version: The version of the secret. + :type secret_version: str + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.SecretUpdateParameters(content_type=content_type, secret_attributes=secret_attributes, tags=tags) + + # Construct URL + url = self.update_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), + 'secret-version': self._serialize.url("secret_version", secret_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecretUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} + + def get_secret( + self, vault_base_url, secret_name, secret_version, custom_headers=None, raw=False, **operation_config): + """Get a specified secret from a given key vault. + + The GET operation is applicable to any secret stored in Azure Key + Vault. This operation requires the secrets/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param secret_version: The version of the secret. + :type secret_version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str'), + 'secret-version': self._serialize.url("secret_version", secret_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_secret.metadata = {'url': '/secrets/{secret-name}/{secret-version}'} + + def get_secrets( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List secrets in a specified key vault. + + The Get Secrets operation is applicable to the entire vault. However, + only the base secret identifier and its attributes are provided in the + response. Individual secret versions are not listed in the response. + This operation requires the secrets/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified, the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecretItem + :rtype: + ~azure.keyvault.v7_0.models.SecretItemPaged[~azure.keyvault.v7_0.models.SecretItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_secrets.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_secrets.metadata = {'url': '/secrets'} + + def get_secret_versions( + self, vault_base_url, secret_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List all versions of the specified secret. + + The full secret identifier and attributes are provided in the response. + No values are returned for the secrets. This operations requires the + secrets/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified, the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecretItem + :rtype: + ~azure.keyvault.v7_0.models.SecretItemPaged[~azure.keyvault.v7_0.models.SecretItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_secret_versions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SecretItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_secret_versions.metadata = {'url': '/secrets/{secret-name}/versions'} + + def get_deleted_secrets( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Lists deleted secrets for the specified vault. + + The Get Deleted Secrets operation returns the secrets that have been + deleted for a vault enabled for soft-delete. This operation requires + the secrets/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DeletedSecretItem + :rtype: + ~azure.keyvault.v7_0.models.DeletedSecretItemPaged[~azure.keyvault.v7_0.models.DeletedSecretItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_deleted_secrets.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DeletedSecretItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_deleted_secrets.metadata = {'url': '/deletedsecrets'} + + def get_deleted_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified deleted secret. + + The Get Deleted Secret operation returns the specified deleted secret + along with its attributes. This operation requires the secrets/get + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedSecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedSecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_deleted_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedSecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} + + def purge_deleted_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Permanently deletes the specified secret. + + The purge deleted secret operation removes the secret permanently, + without the possibility of recovery. This operation can only be enabled + on a soft-delete enabled vault. This operation requires the + secrets/purge permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.purge_deleted_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.KeyVaultErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + purge_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}'} + + def recover_deleted_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Recovers the deleted secret to the latest version. + + Recovers the deleted secret in the specified vault. This operation can + only be performed on a soft-delete enabled vault. This operation + requires the secrets/recover permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the deleted secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.recover_deleted_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + recover_deleted_secret.metadata = {'url': '/deletedsecrets/{secret-name}/recover'} + + def backup_secret( + self, vault_base_url, secret_name, custom_headers=None, raw=False, **operation_config): + """Backs up the specified secret. + + Requests that a backup of the specified secret be downloaded to the + client. All versions of the secret will be downloaded. This operation + requires the secrets/backup permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_name: The name of the secret. + :type secret_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackupSecretResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.BackupSecretResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.backup_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'secret-name': self._serialize.url("secret_name", secret_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackupSecretResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + backup_secret.metadata = {'url': '/secrets/{secret-name}/backup'} + + def restore_secret( + self, vault_base_url, secret_bundle_backup, custom_headers=None, raw=False, **operation_config): + """Restores a backed up secret to a vault. + + Restores a backed up secret, and all its versions, to a vault. This + operation requires the secrets/restore permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param secret_bundle_backup: The backup blob associated with a secret + bundle. + :type secret_bundle_backup: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecretBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SecretBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.SecretRestoreParameters(secret_bundle_backup=secret_bundle_backup) + + # Construct URL + url = self.restore_secret.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecretRestoreParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecretBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + restore_secret.metadata = {'url': '/secrets/restore'} + + def get_certificates( + self, vault_base_url, maxresults=None, include_pending=None, custom_headers=None, raw=False, **operation_config): + """List certificates in a specified key vault. + + The GetCertificates operation returns the set of certificates resources + in the specified key vault. This operation requires the + certificates/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param include_pending: Specifies whether to include certificates + which are not completely provisioned. + :type include_pending: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of CertificateItem + :rtype: + ~azure.keyvault.v7_0.models.CertificateItemPaged[~azure.keyvault.v7_0.models.CertificateItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_certificates.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + if include_pending is not None: + query_parameters['includePending'] = self._serialize.query("include_pending", include_pending, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_certificates.metadata = {'url': '/certificates'} + + def delete_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Deletes a certificate from a specified key vault. + + Deletes all versions of a certificate object along with its associated + policy. Delete certificate cannot be used to remove individual versions + of a certificate object. This operation requires the + certificates/delete permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedCertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedCertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedCertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_certificate.metadata = {'url': '/certificates/{certificate-name}'} + + def set_certificate_contacts( + self, vault_base_url, contact_list=None, custom_headers=None, raw=False, **operation_config): + """Sets the certificate contacts for the specified key vault. + + Sets the certificate contacts for the specified key vault. This + operation requires the certificates/managecontacts permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param contact_list: The contact list for the vault certificates. + :type contact_list: list[~azure.keyvault.v7_0.models.Contact] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Contacts or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.Contacts or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + contacts = models.Contacts(contact_list=contact_list) + + # Construct URL + url = self.set_certificate_contacts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(contacts, 'Contacts') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Contacts', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_certificate_contacts.metadata = {'url': '/certificates/contacts'} + + def get_certificate_contacts( + self, vault_base_url, custom_headers=None, raw=False, **operation_config): + """Lists the certificate contacts for a specified key vault. + + The GetCertificateContacts operation returns the set of certificate + contact resources in the specified key vault. This operation requires + the certificates/managecontacts permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Contacts or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.Contacts or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate_contacts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Contacts', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate_contacts.metadata = {'url': '/certificates/contacts'} + + def delete_certificate_contacts( + self, vault_base_url, custom_headers=None, raw=False, **operation_config): + """Deletes the certificate contacts for a specified key vault. + + Deletes the certificate contacts for a specified key vault certificate. + This operation requires the certificates/managecontacts permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Contacts or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.Contacts or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_certificate_contacts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Contacts', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_certificate_contacts.metadata = {'url': '/certificates/contacts'} + + def get_certificate_issuers( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List certificate issuers for a specified key vault. + + The GetCertificateIssuers operation returns the set of certificate + issuer resources in the specified key vault. This operation requires + the certificates/manageissuers/getissuers permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of CertificateIssuerItem + :rtype: + ~azure.keyvault.v7_0.models.CertificateIssuerItemPaged[~azure.keyvault.v7_0.models.CertificateIssuerItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_certificate_issuers.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CertificateIssuerItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_certificate_issuers.metadata = {'url': '/certificates/issuers'} + + def set_certificate_issuer( + self, vault_base_url, issuer_name, provider, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): + """Sets the specified certificate issuer. + + The SetCertificateIssuer operation adds or updates the specified + certificate issuer. This operation requires the certificates/setissuers + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param issuer_name: The name of the issuer. + :type issuer_name: str + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials + :param organization_details: Details of the organization as provided + to the issuer. + :type organization_details: + ~azure.keyvault.v7_0.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssuerBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.IssuerBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameter = models.CertificateIssuerSetParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) + + # Construct URL + url = self.set_certificate_issuer.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameter, 'CertificateIssuerSetParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IssuerBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} + + def update_certificate_issuer( + self, vault_base_url, issuer_name, provider=None, credentials=None, organization_details=None, attributes=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified certificate issuer. + + The UpdateCertificateIssuer operation performs an update on the + specified certificate issuer entity. This operation requires the + certificates/setissuers permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param issuer_name: The name of the issuer. + :type issuer_name: str + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials + :param organization_details: Details of the organization as provided + to the issuer. + :type organization_details: + ~azure.keyvault.v7_0.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssuerBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.IssuerBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameter = models.CertificateIssuerUpdateParameters(provider=provider, credentials=credentials, organization_details=organization_details, attributes=attributes) + + # Construct URL + url = self.update_certificate_issuer.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameter, 'CertificateIssuerUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IssuerBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} + + def get_certificate_issuer( + self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): + """Lists the specified certificate issuer. + + The GetCertificateIssuer operation returns the specified certificate + issuer resources in the specified key vault. This operation requires + the certificates/manageissuers/getissuers permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param issuer_name: The name of the issuer. + :type issuer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssuerBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.IssuerBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate_issuer.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IssuerBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} + + def delete_certificate_issuer( + self, vault_base_url, issuer_name, custom_headers=None, raw=False, **operation_config): + """Deletes the specified certificate issuer. + + The DeleteCertificateIssuer operation permanently removes the specified + certificate issuer from the vault. This operation requires the + certificates/manageissuers/deleteissuers permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param issuer_name: The name of the issuer. + :type issuer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IssuerBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.IssuerBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_certificate_issuer.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'issuer-name': self._serialize.url("issuer_name", issuer_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IssuerBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_certificate_issuer.metadata = {'url': '/certificates/issuers/{issuer-name}'} + + def create_certificate( + self, vault_base_url, certificate_name, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Creates a new certificate. + + If this is the first version, the certificate resource is created. This + operation requires the certificates/create permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateOperation or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateOperation or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateCreateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) + + # Construct URL + url = self.create_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateCreateParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [202]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 202: + deserialized = self._deserialize('CertificateOperation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_certificate.metadata = {'url': '/certificates/{certificate-name}/create'} + + def import_certificate( + self, vault_base_url, certificate_name, base64_encoded_certificate, password=None, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Imports a certificate into a specified key vault. + + Imports an existing valid certificate, containing a private key, into + Azure Key Vault. The certificate to be imported can be in either PFX or + PEM format. If the certificate is in PEM format the PEM file must + contain the key as well as x509 certificates. This operation requires + the certificates/import permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param base64_encoded_certificate: Base64 encoded representation of + the certificate object to import. This certificate needs to contain + the private key. + :type base64_encoded_certificate: str + :param password: If the private key in base64EncodedCertificate is + encrypted, the password used for encryption. + :type password: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateImportParameters(base64_encoded_certificate=base64_encoded_certificate, password=password, certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) + + # Construct URL + url = self.import_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str', pattern=r'^[0-9a-zA-Z-]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateImportParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + import_certificate.metadata = {'url': '/certificates/{certificate-name}/import'} + + def get_certificate_versions( + self, vault_base_url, certificate_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List the versions of a certificate. + + The GetCertificateVersions operation returns the versions of a + certificate in the specified key vault. This operation requires the + certificates/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of CertificateItem + :rtype: + ~azure.keyvault.v7_0.models.CertificateItemPaged[~azure.keyvault.v7_0.models.CertificateItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_certificate_versions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_certificate_versions.metadata = {'url': '/certificates/{certificate-name}/versions'} + + def get_certificate_policy( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Lists the policy for a certificate. + + The GetCertificatePolicy operation returns the specified certificate + policy resources in the specified key vault. This operation requires + the certificates/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate in a given key + vault. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificatePolicy or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificatePolicy or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate_policy.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificatePolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} + + def update_certificate_policy( + self, vault_base_url, certificate_name, certificate_policy, custom_headers=None, raw=False, **operation_config): + """Updates the policy for a certificate. + + Set specified members in the certificate policy. Leave others as null. + This operation requires the certificates/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate in the given + vault. + :type certificate_name: str + :param certificate_policy: The policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v7_0.models.CertificatePolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificatePolicy or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificatePolicy or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.update_certificate_policy.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(certificate_policy, 'CertificatePolicy') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificatePolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_certificate_policy.metadata = {'url': '/certificates/{certificate-name}/policy'} + + def update_certificate( + self, vault_base_url, certificate_name, certificate_version, certificate_policy=None, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified attributes associated with the given certificate. + + The UpdateCertificate operation applies the specified update on the + given certificate; the only elements updated are the certificate's + attributes. This operation requires the certificates/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate in the given key + vault. + :type certificate_name: str + :param certificate_version: The version of the certificate. + :type certificate_version: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: + ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateUpdateParameters(certificate_policy=certificate_policy, certificate_attributes=certificate_attributes, tags=tags) + + # Construct URL + url = self.update_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), + 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} + + def get_certificate( + self, vault_base_url, certificate_name, certificate_version, custom_headers=None, raw=False, **operation_config): + """Gets information about a certificate. + + Gets information about a specific certificate. This operation requires + the certificates/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate in the given + vault. + :type certificate_name: str + :param certificate_version: The version of the certificate. + :type certificate_version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str'), + 'certificate-version': self._serialize.url("certificate_version", certificate_version, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate.metadata = {'url': '/certificates/{certificate-name}/{certificate-version}'} + + def update_certificate_operation( + self, vault_base_url, certificate_name, cancellation_requested, custom_headers=None, raw=False, **operation_config): + """Updates a certificate operation. + + Updates a certificate creation operation that is already in progress. + This operation requires the certificates/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param cancellation_requested: Indicates if cancellation was requested + on the certificate operation. + :type cancellation_requested: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateOperation or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateOperation or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + certificate_operation = models.CertificateOperationUpdateParameter(cancellation_requested=cancellation_requested) + + # Construct URL + url = self.update_certificate_operation.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(certificate_operation, 'CertificateOperationUpdateParameter') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateOperation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} + + def get_certificate_operation( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Gets the creation operation of a certificate. + + Gets the creation operation associated with a specified certificate. + This operation requires the certificates/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateOperation or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateOperation or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_certificate_operation.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateOperation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} + + def delete_certificate_operation( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Deletes the creation operation for a specific certificate. + + Deletes the creation operation for a specified certificate that is in + the process of being created. The certificate is no longer created. + This operation requires the certificates/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateOperation or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateOperation or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_certificate_operation.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateOperation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_certificate_operation.metadata = {'url': '/certificates/{certificate-name}/pending'} + + def merge_certificate( + self, vault_base_url, certificate_name, x509_certificates, certificate_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Merges a certificate or a certificate chain with a key pair existing on + the server. + + The MergeCertificate operation performs the merging of a certificate or + certificate chain with a key pair currently available in the service. + This operation requires the certificates/create permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param x509_certificates: The certificate or the certificate chain to + merge. + :type x509_certificates: list[bytearray] + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateMergeParameters(x509_certificates=x509_certificates, certificate_attributes=certificate_attributes, tags=tags) + + # Construct URL + url = self.merge_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateMergeParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + merge_certificate.metadata = {'url': '/certificates/{certificate-name}/pending/merge'} + + def backup_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Backs up the specified certificate. + + Requests that a backup of the specified certificate be downloaded to + the client. All versions of the certificate will be downloaded. This + operation requires the certificates/backup permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate. + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackupCertificateResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.BackupCertificateResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.backup_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackupCertificateResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + backup_certificate.metadata = {'url': '/certificates/{certificate-name}/backup'} + + def restore_certificate( + self, vault_base_url, certificate_bundle_backup, custom_headers=None, raw=False, **operation_config): + """Restores a backed up certificate to a vault. + + Restores a backed up certificate, and all its versions, to a vault. + This operation requires the certificates/restore permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_bundle_backup: The backup blob associated with a + certificate bundle. + :type certificate_bundle_backup: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.CertificateRestoreParameters(certificate_bundle_backup=certificate_bundle_backup) + + # Construct URL + url = self.restore_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CertificateRestoreParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + restore_certificate.metadata = {'url': '/certificates/restore'} + + def get_deleted_certificates( + self, vault_base_url, maxresults=None, include_pending=None, custom_headers=None, raw=False, **operation_config): + """Lists the deleted certificates in the specified vault currently + available for recovery. + + The GetDeletedCertificates operation retrieves the certificates in the + current vault which are in a deleted state and ready for recovery or + purging. This operation includes deletion-specific information. This + operation requires the certificates/get/list permission. This operation + can only be enabled on soft-delete enabled vaults. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param include_pending: Specifies whether to include certificates + which are not completely provisioned. + :type include_pending: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DeletedCertificateItem + :rtype: + ~azure.keyvault.v7_0.models.DeletedCertificateItemPaged[~azure.keyvault.v7_0.models.DeletedCertificateItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_deleted_certificates.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + if include_pending is not None: + query_parameters['includePending'] = self._serialize.query("include_pending", include_pending, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DeletedCertificateItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_deleted_certificates.metadata = {'url': '/deletedcertificates'} + + def get_deleted_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Retrieves information about the specified deleted certificate. + + The GetDeletedCertificate operation retrieves the deleted certificate + information plus its attributes, such as retention interval, scheduled + permanent deletion and the current deletion recovery level. This + operation requires the certificates/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedCertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedCertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_deleted_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedCertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} + + def purge_deleted_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Permanently deletes the specified deleted certificate. + + The PurgeDeletedCertificate operation performs an irreversible deletion + of the specified certificate, without possibility for recovery. The + operation is not available if the recovery level does not specify + 'Purgeable'. This operation requires the certificate/purge permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the certificate + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.purge_deleted_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.KeyVaultErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + purge_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}'} + + def recover_deleted_certificate( + self, vault_base_url, certificate_name, custom_headers=None, raw=False, **operation_config): + """Recovers the deleted certificate back to its current version under + /certificates. + + The RecoverDeletedCertificate operation performs the reversal of the + Delete operation. The operation is applicable in vaults enabled for + soft-delete, and must be issued during the retention interval + (available in the deleted certificate's attributes). This operation + requires the certificates/recover permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param certificate_name: The name of the deleted certificate + :type certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CertificateBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.CertificateBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.recover_deleted_certificate.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'certificate-name': self._serialize.url("certificate_name", certificate_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CertificateBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + recover_deleted_certificate.metadata = {'url': '/deletedcertificates/{certificate-name}/recover'} + + def get_storage_accounts( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List storage accounts managed by the specified key vault. This + operation requires the storage/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of StorageAccountItem + :rtype: + ~azure.keyvault.v7_0.models.StorageAccountItemPaged[~azure.keyvault.v7_0.models.StorageAccountItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_storage_accounts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.StorageAccountItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_storage_accounts.metadata = {'url': '/storage'} + + def get_deleted_storage_accounts( + self, vault_base_url, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Lists deleted storage accounts for the specified vault. + + The Get Deleted Storage Accounts operation returns the storage accounts + that have been deleted for a vault enabled for soft-delete. This + operation requires the storage/list permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DeletedStorageAccountItem + :rtype: + ~azure.keyvault.v7_0.models.DeletedStorageAccountItemPaged[~azure.keyvault.v7_0.models.DeletedStorageAccountItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_deleted_storage_accounts.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DeletedStorageAccountItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DeletedStorageAccountItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_deleted_storage_accounts.metadata = {'url': '/deletedstorage'} + + def get_deleted_storage_account( + self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified deleted storage account. + + The Get Deleted Storage Account operation returns the specified deleted + storage account along with its attributes. This operation requires the + storage/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedStorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedStorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_deleted_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedStorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}'} + + def purge_deleted_storage_account( + self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): + """Permanently deletes the specified storage account. + + The purge deleted storage account operation removes the secret + permanently, without the possibility of recovery. This operation can + only be performed on a soft-delete enabled vault. This operation + requires the storage/purge permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.purge_deleted_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [204]: + raise models.KeyVaultErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + purge_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}'} + + def recover_deleted_storage_account( + self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): + """Recovers the deleted storage account. + + Recovers the deleted storage account in the specified vault. This + operation can only be performed on a soft-delete enabled vault. This + operation requires the storage/recover permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.recover_deleted_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + recover_deleted_storage_account.metadata = {'url': '/deletedstorage/{storage-account-name}/recover'} + + def backup_storage_account( + self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): + """Backs up the specified storage account. + + Requests that a backup of the specified storage account be downloaded + to the client. This operation requires the storage/backup permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackupStorageResult or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.BackupStorageResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.backup_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackupStorageResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + backup_storage_account.metadata = {'url': '/storage/{storage-account-name}/backup'} + + def restore_storage_account( + self, vault_base_url, storage_bundle_backup, custom_headers=None, raw=False, **operation_config): + """Restores a backed up storage account to a vault. + + Restores a backed up storage account to a vault. This operation + requires the storage/restore permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_bundle_backup: The backup blob associated with a + storage account. + :type storage_bundle_backup: bytes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.StorageRestoreParameters(storage_bundle_backup=storage_bundle_backup) + + # Construct URL + url = self.restore_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageRestoreParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + restore_storage_account.metadata = {'url': '/storage/restore'} + + def delete_storage_account( + self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): + """Deletes a storage account. This operation requires the storage/delete + permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedStorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedStorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedStorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_storage_account.metadata = {'url': '/storage/{storage-account-name}'} + + def get_storage_account( + self, vault_base_url, storage_account_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a specified storage account. This operation + requires the storage/get permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_storage_account.metadata = {'url': '/storage/{storage-account-name}'} + + def set_storage_account( + self, vault_base_url, storage_account_name, resource_id, active_key_name, auto_regenerate_key, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates a new storage account. This operation requires the + storage/set permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param resource_id: Storage account resource id. + :type resource_id: str + :param active_key_name: Current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration + specified in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage + account. + :type storage_account_attributes: + ~azure.keyvault.v7_0.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.StorageAccountCreateParameters(resource_id=resource_id, active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) + + # Construct URL + url = self.set_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_storage_account.metadata = {'url': '/storage/{storage-account-name}'} + + def update_storage_account( + self, vault_base_url, storage_account_name, active_key_name=None, auto_regenerate_key=None, regeneration_period=None, storage_account_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified attributes associated with the given storage + account. This operation requires the storage/set/update permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param active_key_name: The current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration + specified in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage + account. + :type storage_account_attributes: + ~azure.keyvault.v7_0.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.StorageAccountUpdateParameters(active_key_name=active_key_name, auto_regenerate_key=auto_regenerate_key, regeneration_period=regeneration_period, storage_account_attributes=storage_account_attributes, tags=tags) + + # Construct URL + url = self.update_storage_account.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_storage_account.metadata = {'url': '/storage/{storage-account-name}'} + + def regenerate_storage_account_key( + self, vault_base_url, storage_account_name, key_name, custom_headers=None, raw=False, **operation_config): + """Regenerates the specified key value for the given storage account. This + operation requires the storage/regeneratekey permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param key_name: The storage account key name. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.StorageBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.StorageAccountRegenerteKeyParameters(key_name=key_name) + + # Construct URL + url = self.regenerate_storage_account_key.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageAccountRegenerteKeyParameters') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + regenerate_storage_account_key.metadata = {'url': '/storage/{storage-account-name}/regeneratekey'} + + def get_sas_definitions( + self, vault_base_url, storage_account_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """List storage SAS definitions for the given storage account. This + operation requires the storage/listsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SasDefinitionItem + :rtype: + ~azure.keyvault.v7_0.models.SasDefinitionItemPaged[~azure.keyvault.v7_0.models.SasDefinitionItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_sas_definitions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SasDefinitionItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_sas_definitions.metadata = {'url': '/storage/{storage-account-name}/sas'} + + def get_deleted_sas_definitions( + self, vault_base_url, storage_account_name, maxresults=None, custom_headers=None, raw=False, **operation_config): + """Lists deleted SAS definitions for the specified vault and storage + account. + + The Get Deleted Sas Definitions operation returns the SAS definitions + that have been deleted for a vault enabled for soft-delete. This + operation requires the storage/listsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param maxresults: Maximum number of results to return in a page. If + not specified the service will return up to 25 results. + :type maxresults: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DeletedSasDefinitionItem + :rtype: + ~azure.keyvault.v7_0.models.DeletedSasDefinitionItemPaged[~azure.keyvault.v7_0.models.DeletedSasDefinitionItem] + :raises: + :class:`KeyVaultErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_deleted_sas_definitions.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if maxresults is not None: + query_parameters['maxresults'] = self._serialize.query("maxresults", maxresults, 'int', maximum=25, minimum=1) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send( + request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DeletedSasDefinitionItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DeletedSasDefinitionItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_deleted_sas_definitions.metadata = {'url': '/deletedstorage/{storage-account-name}/sas'} + + def get_deleted_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified deleted sas definition. + + The Get Deleted SAS Definition operation returns the specified deleted + SAS definition along with its attributes. This operation requires the + storage/getsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedSasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedSasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_deleted_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedSasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_deleted_sas_definition.metadata = {'url': '/deletedstorage/{storage-account-name}/sas/{sas-definition-name}'} + + def recover_deleted_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): + """Recovers the deleted SAS definition. + + Recovers the deleted SAS definition for the specified storage account. + This operation can only be performed on a soft-delete enabled vault. + This operation requires the storage/recover permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.recover_deleted_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + recover_deleted_sas_definition.metadata = {'url': '/deletedstorage/{storage-account-name}/sas/{sas-definition-name}/recover'} + + def delete_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): + """Deletes a SAS definition from a specified storage account. This + operation requires the storage/deletesas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DeletedSasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.DeletedSasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.delete_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DeletedSasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + delete_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} + + def get_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a SAS definition for the specified storage + account. This operation requires the storage/getsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + # Construct URL + url = self.get_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters) + response = self._client.send(request, header_parameters, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} + + def set_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, template_uri, sas_type, validity_period, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates a new SAS definition for the specified storage + account. This operation requires the storage/setsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param template_uri: The SAS definition token template signed with an + arbitrary key. Tokens created according to the SAS definition will + have the same properties as the template. + :type template_uri: str + :param sas_type: The type of SAS token the SAS definition will create. + Possible values include: 'account', 'service' + :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType + :param validity_period: The validity period of SAS tokens created + according to the SAS definition. + :type validity_period: str + :param sas_definition_attributes: The attributes of the SAS + definition. + :type sas_definition_attributes: + ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.SasDefinitionCreateParameters(template_uri=template_uri, sas_type=sas_type, validity_period=validity_period, sas_definition_attributes=sas_definition_attributes, tags=tags) + + # Construct URL + url = self.set_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SasDefinitionCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} + + def update_sas_definition( + self, vault_base_url, storage_account_name, sas_definition_name, template_uri=None, sas_type=None, validity_period=None, sas_definition_attributes=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified attributes associated with the given SAS + definition. This operation requires the storage/setsas permission. + + :param vault_base_url: The vault name, for example + https://myvault.vault.azure.net. + :type vault_base_url: str + :param storage_account_name: The name of the storage account. + :type storage_account_name: str + :param sas_definition_name: The name of the SAS definition. + :type sas_definition_name: str + :param template_uri: The SAS definition token template signed with an + arbitrary key. Tokens created according to the SAS definition will + have the same properties as the template. + :type template_uri: str + :param sas_type: The type of SAS token the SAS definition will create. + Possible values include: 'account', 'service' + :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType + :param validity_period: The validity period of SAS tokens created + according to the SAS definition. + :type validity_period: str + :param sas_definition_attributes: The attributes of the SAS + definition. + :type sas_definition_attributes: + ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value + pairs. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SasDefinitionBundle or ClientRawResponse if raw=true + :rtype: ~azure.keyvault.v7_0.models.SasDefinitionBundle or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`KeyVaultErrorException` + """ + parameters = models.SasDefinitionUpdateParameters(template_uri=template_uri, sas_type=sas_type, validity_period=validity_period, sas_definition_attributes=sas_definition_attributes, tags=tags) + + # Construct URL + url = self.update_sas_definition.metadata['url'] + path_format_arguments = { + 'vaultBaseUrl': self._serialize.url("vault_base_url", vault_base_url, 'str', skip_quote=True), + 'storage-account-name': self._serialize.url("storage_account_name", storage_account_name, 'str', pattern=r'^[0-9a-zA-Z]+$'), + 'sas-definition-name': self._serialize.url("sas_definition_name", sas_definition_name, 'str', pattern=r'^[0-9a-zA-Z]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SasDefinitionUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters) + response = self._client.send( + request, header_parameters, body_content, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.KeyVaultErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SasDefinitionBundle', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_sas_definition.metadata = {'url': '/storage/{storage-account-name}/sas/{sas-definition-name}'} diff --git a/azure-keyvault/azure/keyvault/models/__init__.py b/azure-keyvault/azure/keyvault/v7_0/models/__init__.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/__init__.py rename to azure-keyvault/azure/keyvault/v7_0/models/__init__.py diff --git a/azure-keyvault/azure/keyvault/v7_0/models/action.py b/azure-keyvault/azure/keyvault/v7_0/models/action.py new file mode 100644 index 000000000000..cf2f4787eb06 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/action.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Action(Model): + """The action that will be executed. + + :param action_type: The type of the action. Possible values include: + 'EmailContacts', 'AutoRenew' + :type action_type: str or ~azure.keyvault.v7_0.models.ActionType + """ + + _attribute_map = { + 'action_type': {'key': 'action_type', 'type': 'ActionType'}, + } + + def __init__(self, **kwargs): + super(Action, self).__init__(**kwargs) + self.action_type = kwargs.get('action_type', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/action_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/action_py3.py new file mode 100644 index 000000000000..7f0a5c39861c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/action_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Action(Model): + """The action that will be executed. + + :param action_type: The type of the action. Possible values include: + 'EmailContacts', 'AutoRenew' + :type action_type: str or ~azure.keyvault.v7_0.models.ActionType + """ + + _attribute_map = { + 'action_type': {'key': 'action_type', 'type': 'ActionType'}, + } + + def __init__(self, *, action_type=None, **kwargs) -> None: + super(Action, self).__init__(**kwargs) + self.action_type = action_type diff --git a/azure-keyvault/azure/keyvault/v7_0/models/administrator_details.py b/azure-keyvault/azure/keyvault/v7_0/models/administrator_details.py new file mode 100644 index 000000000000..4026a83a5da4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/administrator_details.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdministratorDetails(Model): + """Details of the organization administrator of the certificate issuer. + + :param first_name: First name. + :type first_name: str + :param last_name: Last name. + :type last_name: str + :param email_address: Email addresss. + :type email_address: str + :param phone: Phone number. + :type phone: str + """ + + _attribute_map = { + 'first_name': {'key': 'first_name', 'type': 'str'}, + 'last_name': {'key': 'last_name', 'type': 'str'}, + 'email_address': {'key': 'email', 'type': 'str'}, + 'phone': {'key': 'phone', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AdministratorDetails, self).__init__(**kwargs) + self.first_name = kwargs.get('first_name', None) + self.last_name = kwargs.get('last_name', None) + self.email_address = kwargs.get('email_address', None) + self.phone = kwargs.get('phone', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/administrator_details_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/administrator_details_py3.py new file mode 100644 index 000000000000..24a8ef8a3a1b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/administrator_details_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdministratorDetails(Model): + """Details of the organization administrator of the certificate issuer. + + :param first_name: First name. + :type first_name: str + :param last_name: Last name. + :type last_name: str + :param email_address: Email addresss. + :type email_address: str + :param phone: Phone number. + :type phone: str + """ + + _attribute_map = { + 'first_name': {'key': 'first_name', 'type': 'str'}, + 'last_name': {'key': 'last_name', 'type': 'str'}, + 'email_address': {'key': 'email', 'type': 'str'}, + 'phone': {'key': 'phone', 'type': 'str'}, + } + + def __init__(self, *, first_name: str=None, last_name: str=None, email_address: str=None, phone: str=None, **kwargs) -> None: + super(AdministratorDetails, self).__init__(**kwargs) + self.first_name = first_name + self.last_name = last_name + self.email_address = email_address + self.phone = phone diff --git a/azure-keyvault/azure/keyvault/v7_0/models/attributes.py b/azure-keyvault/azure/keyvault/v7_0/models/attributes.py new file mode 100644 index 000000000000..5c89678b313f --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/attributes.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Attributes(Model): + """The object attributes managed by the KeyVault service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(Attributes, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.not_before = kwargs.get('not_before', None) + self.expires = kwargs.get('expires', None) + self.created = None + self.updated = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/attributes_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/attributes_py3.py new file mode 100644 index 000000000000..16fe316c84cb --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/attributes_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Attributes(Model): + """The object attributes managed by the KeyVault service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + } + + def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: + super(Attributes, self).__init__(**kwargs) + self.enabled = enabled + self.not_before = not_before + self.expires = expires + self.created = None + self.updated = None diff --git a/azure-keyvault/azure/keyvault/models/backup_certificate_result.py b/azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/backup_certificate_result.py rename to azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result.py diff --git a/azure-keyvault/azure/keyvault/models/backup_certificate_result_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/backup_certificate_result_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/backup_certificate_result_py3.py diff --git a/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result.py b/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result.py new file mode 100644 index 000000000000..4aaa5fc2ebe8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackupKeyResult(Model): + """The backup key result, containing the backup blob. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: The backup blob containing the backed up key. + :vartype value: bytes + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(BackupKeyResult, self).__init__(**kwargs) + self.value = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result_py3.py new file mode 100644 index 000000000000..7865e8701f76 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/backup_key_result_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackupKeyResult(Model): + """The backup key result, containing the backup blob. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: The backup blob containing the backed up key. + :vartype value: bytes + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs) -> None: + super(BackupKeyResult, self).__init__(**kwargs) + self.value = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result.py b/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result.py new file mode 100644 index 000000000000..4f803fc0cefe --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackupSecretResult(Model): + """The backup secret result, containing the backup blob. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: The backup blob containing the backed up secret. + :vartype value: bytes + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(BackupSecretResult, self).__init__(**kwargs) + self.value = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result_py3.py new file mode 100644 index 000000000000..444ba7fe0fb5 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/backup_secret_result_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackupSecretResult(Model): + """The backup secret result, containing the backup blob. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: The backup blob containing the backed up secret. + :vartype value: bytes + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs) -> None: + super(BackupSecretResult, self).__init__(**kwargs) + self.value = None diff --git a/azure-keyvault/azure/keyvault/models/backup_storage_result.py b/azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/backup_storage_result.py rename to azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result.py diff --git a/azure-keyvault/azure/keyvault/models/backup_storage_result_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/backup_storage_result_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/backup_storage_result_py3.py diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes.py new file mode 100644 index 000000000000..db34e562c9b5 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes import Attributes + + +class CertificateAttributes(Attributes): + """The certificate management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for certificates in the current vault. If it contains 'Purgeable', + the certificate can be permanently deleted by a privileged user; + otherwise, only the system can purge the certificate, at the end of the + retention interval. Possible values include: 'Purgeable', + 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CertificateAttributes, self).__init__(**kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes_py3.py new file mode 100644 index 000000000000..1b18d29e0dec --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_attributes_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes_py3 import Attributes + + +class CertificateAttributes(Attributes): + """The certificate management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for certificates in the current vault. If it contains 'Purgeable', + the certificate can be permanently deleted by a privileged user; + otherwise, only the system can purge the certificate, at the end of the + retention interval. Possible values include: 'Purgeable', + 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: + super(CertificateAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle.py new file mode 100644 index 000000000000..a9de6bf52f04 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateBundle(Model): + """A certificate bundle consists of a certificate (X509) plus its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :ivar kid: The key id. + :vartype kid: str + :ivar sid: The secret id. + :vartype sid: str + :ivar x509_thumbprint: Thumbprint of the certificate. + :vartype x509_thumbprint: bytes + :ivar policy: The management policy. + :vartype policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param cer: CER contents of x509 certificate. + :type cer: bytearray + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'kid': {'readonly': True}, + 'sid': {'readonly': True}, + 'x509_thumbprint': {'readonly': True}, + 'policy': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'sid': {'key': 'sid', 'type': 'str'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'cer': {'key': 'cer', 'type': 'bytearray'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateBundle, self).__init__(**kwargs) + self.id = None + self.kid = None + self.sid = None + self.x509_thumbprint = None + self.policy = None + self.cer = kwargs.get('cer', None) + self.content_type = kwargs.get('content_type', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle_py3.py new file mode 100644 index 000000000000..f50baa50afd6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_bundle_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateBundle(Model): + """A certificate bundle consists of a certificate (X509) plus its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :ivar kid: The key id. + :vartype kid: str + :ivar sid: The secret id. + :vartype sid: str + :ivar x509_thumbprint: Thumbprint of the certificate. + :vartype x509_thumbprint: bytes + :ivar policy: The management policy. + :vartype policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param cer: CER contents of x509 certificate. + :type cer: bytearray + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'kid': {'readonly': True}, + 'sid': {'readonly': True}, + 'x509_thumbprint': {'readonly': True}, + 'policy': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'sid': {'key': 'sid', 'type': 'str'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'cer': {'key': 'cer', 'type': 'bytearray'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: + super(CertificateBundle, self).__init__(**kwargs) + self.id = None + self.kid = None + self.sid = None + self.x509_thumbprint = None + self.policy = None + self.cer = cer + self.content_type = content_type + self.attributes = attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters.py new file mode 100644 index 000000000000..4b7559073014 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateCreateParameters(Model): + """The certificate create parameters. + + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateCreateParameters, self).__init__(**kwargs) + self.certificate_policy = kwargs.get('certificate_policy', None) + self.certificate_attributes = kwargs.get('certificate_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters_py3.py new file mode 100644 index 000000000000..46260f39666a --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_create_parameters_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateCreateParameters(Model): + """The certificate create parameters. + + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: + super(CertificateCreateParameters, self).__init__(**kwargs) + self.certificate_policy = certificate_policy + self.certificate_attributes = certificate_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters.py new file mode 100644 index 000000000000..b1954e6a741a --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateImportParameters(Model): + """The certificate import parameters. + + All required parameters must be populated in order to send to Azure. + + :param base64_encoded_certificate: Required. Base64 encoded representation + of the certificate object to import. This certificate needs to contain the + private key. + :type base64_encoded_certificate: str + :param password: If the private key in base64EncodedCertificate is + encrypted, the password used for encryption. + :type password: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'base64_encoded_certificate': {'required': True}, + } + + _attribute_map = { + 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, + 'password': {'key': 'pwd', 'type': 'str'}, + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateImportParameters, self).__init__(**kwargs) + self.base64_encoded_certificate = kwargs.get('base64_encoded_certificate', None) + self.password = kwargs.get('password', None) + self.certificate_policy = kwargs.get('certificate_policy', None) + self.certificate_attributes = kwargs.get('certificate_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters_py3.py new file mode 100644 index 000000000000..38cf0c686996 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_import_parameters_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateImportParameters(Model): + """The certificate import parameters. + + All required parameters must be populated in order to send to Azure. + + :param base64_encoded_certificate: Required. Base64 encoded representation + of the certificate object to import. This certificate needs to contain the + private key. + :type base64_encoded_certificate: str + :param password: If the private key in base64EncodedCertificate is + encrypted, the password used for encryption. + :type password: str + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'base64_encoded_certificate': {'required': True}, + } + + _attribute_map = { + 'base64_encoded_certificate': {'key': 'value', 'type': 'str'}, + 'password': {'key': 'pwd', 'type': 'str'}, + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, base64_encoded_certificate: str, password: str=None, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: + super(CertificateImportParameters, self).__init__(**kwargs) + self.base64_encoded_certificate = base64_encoded_certificate + self.password = password + self.certificate_policy = certificate_policy + self.certificate_attributes = certificate_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item.py new file mode 100644 index 000000000000..98713b2ab4c1 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerItem(Model): + """The certificate issuer item containing certificate issuer metadata. + + :param id: Certificate Identifier. + :type id: str + :param provider: The issuer provider. + :type provider: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provider': {'key': 'provider', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CertificateIssuerItem, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.provider = kwargs.get('provider', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_paged.py new file mode 100644 index 000000000000..6e9d66d8a8b6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class CertificateIssuerItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`CertificateIssuerItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[CertificateIssuerItem]'} + } + + def __init__(self, *args, **kwargs): + + super(CertificateIssuerItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_py3.py new file mode 100644 index 000000000000..f11aa78f8cdd --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_item_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerItem(Model): + """The certificate issuer item containing certificate issuer metadata. + + :param id: Certificate Identifier. + :type id: str + :param provider: The issuer provider. + :type provider: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provider': {'key': 'provider', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, provider: str=None, **kwargs) -> None: + super(CertificateIssuerItem, self).__init__(**kwargs) + self.id = id + self.provider = provider diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters.py new file mode 100644 index 000000000000..869b865631a7 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerSetParameters(Model): + """The certificate issuer set parameters. + + All required parameters must be populated in order to send to Azure. + + :param provider: Required. The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v7_0.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes + """ + + _validation = { + 'provider': {'required': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, **kwargs): + super(CertificateIssuerSetParameters, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.credentials = kwargs.get('credentials', None) + self.organization_details = kwargs.get('organization_details', None) + self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters_py3.py new file mode 100644 index 000000000000..33eb58b209ab --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_set_parameters_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerSetParameters(Model): + """The certificate issuer set parameters. + + All required parameters must be populated in order to send to Azure. + + :param provider: Required. The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v7_0.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes + """ + + _validation = { + 'provider': {'required': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, *, provider: str, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: + super(CertificateIssuerSetParameters, self).__init__(**kwargs) + self.provider = provider + self.credentials = credentials + self.organization_details = organization_details + self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters.py new file mode 100644 index 000000000000..1e08f2e31a3e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerUpdateParameters(Model): + """The certificate issuer update parameters. + + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v7_0.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, **kwargs): + super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.credentials = kwargs.get('credentials', None) + self.organization_details = kwargs.get('organization_details', None) + self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters_py3.py new file mode 100644 index 000000000000..46d4b1694ccd --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_issuer_update_parameters_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateIssuerUpdateParameters(Model): + """The certificate issuer update parameters. + + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v7_0.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: + super(CertificateIssuerUpdateParameters, self).__init__(**kwargs) + self.provider = provider + self.credentials = credentials + self.organization_details = organization_details + self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_item.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_item.py new file mode 100644 index 000000000000..2939da6965db --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_item.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateItem(Model): + """The certificate item containing certificate metadata. + + :param id: Certificate identifier. + :type id: str + :param attributes: The certificate management attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param x509_thumbprint: Thumbprint of the certificate. + :type x509_thumbprint: bytes + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(CertificateItem, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.x509_thumbprint = kwargs.get('x509_thumbprint', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_paged.py new file mode 100644 index 000000000000..f17dbfbbee5e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class CertificateItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`CertificateItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[CertificateItem]'} + } + + def __init__(self, *args, **kwargs): + + super(CertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_py3.py new file mode 100644 index 000000000000..6f408aa6c9ab --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_item_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateItem(Model): + """The certificate item containing certificate metadata. + + :param id: Certificate identifier. + :type id: str + :param attributes: The certificate management attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param x509_thumbprint: Thumbprint of the certificate. + :type x509_thumbprint: bytes + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + } + + def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, **kwargs) -> None: + super(CertificateItem, self).__init__(**kwargs) + self.id = id + self.attributes = attributes + self.tags = tags + self.x509_thumbprint = x509_thumbprint diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters.py new file mode 100644 index 000000000000..a4fadaedac55 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateMergeParameters(Model): + """The certificate merge parameters. + + All required parameters must be populated in order to send to Azure. + + :param x509_certificates: Required. The certificate or the certificate + chain to merge. + :type x509_certificates: list[bytearray] + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'x509_certificates': {'required': True}, + } + + _attribute_map = { + 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateMergeParameters, self).__init__(**kwargs) + self.x509_certificates = kwargs.get('x509_certificates', None) + self.certificate_attributes = kwargs.get('certificate_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters_py3.py new file mode 100644 index 000000000000..02b5864042b6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_merge_parameters_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateMergeParameters(Model): + """The certificate merge parameters. + + All required parameters must be populated in order to send to Azure. + + :param x509_certificates: Required. The certificate or the certificate + chain to merge. + :type x509_certificates: list[bytearray] + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'x509_certificates': {'required': True}, + } + + _attribute_map = { + 'x509_certificates': {'key': 'x5c', 'type': '[bytearray]'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, x509_certificates, certificate_attributes=None, tags=None, **kwargs) -> None: + super(CertificateMergeParameters, self).__init__(**kwargs) + self.x509_certificates = x509_certificates + self.certificate_attributes = certificate_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation.py new file mode 100644 index 000000000000..cef44f1f7e82 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateOperation(Model): + """A certificate operation is returned in case of asynchronous requests. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :param issuer_parameters: Parameters for the issuer of the X509 component + of a certificate. + :type issuer_parameters: ~azure.keyvault.v7_0.models.IssuerParameters + :param csr: The certificate signing request (CSR) that is being used in + the certificate operation. + :type csr: bytearray + :param cancellation_requested: Indicates if cancellation was requested on + the certificate operation. + :type cancellation_requested: bool + :param status: Status of the certificate operation. + :type status: str + :param status_details: The status details of the certificate operation. + :type status_details: str + :param error: Error encountered, if any, during the certificate operation. + :type error: ~azure.keyvault.v7_0.models.Error + :param target: Location which contains the result of the certificate + operation. + :type target: str + :param request_id: Identifier for the certificate operation. + :type request_id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, + 'csr': {'key': 'csr', 'type': 'bytearray'}, + 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, + 'status': {'key': 'status', 'type': 'str'}, + 'status_details': {'key': 'status_details', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + 'target': {'key': 'target', 'type': 'str'}, + 'request_id': {'key': 'request_id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CertificateOperation, self).__init__(**kwargs) + self.id = None + self.issuer_parameters = kwargs.get('issuer_parameters', None) + self.csr = kwargs.get('csr', None) + self.cancellation_requested = kwargs.get('cancellation_requested', None) + self.status = kwargs.get('status', None) + self.status_details = kwargs.get('status_details', None) + self.error = kwargs.get('error', None) + self.target = kwargs.get('target', None) + self.request_id = kwargs.get('request_id', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_py3.py new file mode 100644 index 000000000000..d48725e4f868 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateOperation(Model): + """A certificate operation is returned in case of asynchronous requests. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :param issuer_parameters: Parameters for the issuer of the X509 component + of a certificate. + :type issuer_parameters: ~azure.keyvault.v7_0.models.IssuerParameters + :param csr: The certificate signing request (CSR) that is being used in + the certificate operation. + :type csr: bytearray + :param cancellation_requested: Indicates if cancellation was requested on + the certificate operation. + :type cancellation_requested: bool + :param status: Status of the certificate operation. + :type status: str + :param status_details: The status details of the certificate operation. + :type status_details: str + :param error: Error encountered, if any, during the certificate operation. + :type error: ~azure.keyvault.v7_0.models.Error + :param target: Location which contains the result of the certificate + operation. + :type target: str + :param request_id: Identifier for the certificate operation. + :type request_id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, + 'csr': {'key': 'csr', 'type': 'bytearray'}, + 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, + 'status': {'key': 'status', 'type': 'str'}, + 'status_details': {'key': 'status_details', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + 'target': {'key': 'target', 'type': 'str'}, + 'request_id': {'key': 'request_id', 'type': 'str'}, + } + + def __init__(self, *, issuer_parameters=None, csr: bytearray=None, cancellation_requested: bool=None, status: str=None, status_details: str=None, error=None, target: str=None, request_id: str=None, **kwargs) -> None: + super(CertificateOperation, self).__init__(**kwargs) + self.id = None + self.issuer_parameters = issuer_parameters + self.csr = csr + self.cancellation_requested = cancellation_requested + self.status = status + self.status_details = status_details + self.error = error + self.target = target + self.request_id = request_id diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter.py new file mode 100644 index 000000000000..fadc2e3ea734 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateOperationUpdateParameter(Model): + """The certificate operation update parameters. + + All required parameters must be populated in order to send to Azure. + + :param cancellation_requested: Required. Indicates if cancellation was + requested on the certificate operation. + :type cancellation_requested: bool + """ + + _validation = { + 'cancellation_requested': {'required': True}, + } + + _attribute_map = { + 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(CertificateOperationUpdateParameter, self).__init__(**kwargs) + self.cancellation_requested = kwargs.get('cancellation_requested', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter_py3.py new file mode 100644 index 000000000000..c9fea79090ee --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_operation_update_parameter_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateOperationUpdateParameter(Model): + """The certificate operation update parameters. + + All required parameters must be populated in order to send to Azure. + + :param cancellation_requested: Required. Indicates if cancellation was + requested on the certificate operation. + :type cancellation_requested: bool + """ + + _validation = { + 'cancellation_requested': {'required': True}, + } + + _attribute_map = { + 'cancellation_requested': {'key': 'cancellation_requested', 'type': 'bool'}, + } + + def __init__(self, *, cancellation_requested: bool, **kwargs) -> None: + super(CertificateOperationUpdateParameter, self).__init__(**kwargs) + self.cancellation_requested = cancellation_requested diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy.py new file mode 100644 index 000000000000..854cd453d325 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificatePolicy(Model): + """Management policy for a certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :param key_properties: Properties of the key backing a certificate. + :type key_properties: ~azure.keyvault.v7_0.models.KeyProperties + :param secret_properties: Properties of the secret backing a certificate. + :type secret_properties: ~azure.keyvault.v7_0.models.SecretProperties + :param x509_certificate_properties: Properties of the X509 component of a + certificate. + :type x509_certificate_properties: + ~azure.keyvault.v7_0.models.X509CertificateProperties + :param lifetime_actions: Actions that will be performed by Key Vault over + the lifetime of a certificate. + :type lifetime_actions: list[~azure.keyvault.v7_0.models.LifetimeAction] + :param issuer_parameters: Parameters for the issuer of the X509 component + of a certificate. + :type issuer_parameters: ~azure.keyvault.v7_0.models.IssuerParameters + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, + 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, + 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, + 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, + 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + } + + def __init__(self, **kwargs): + super(CertificatePolicy, self).__init__(**kwargs) + self.id = None + self.key_properties = kwargs.get('key_properties', None) + self.secret_properties = kwargs.get('secret_properties', None) + self.x509_certificate_properties = kwargs.get('x509_certificate_properties', None) + self.lifetime_actions = kwargs.get('lifetime_actions', None) + self.issuer_parameters = kwargs.get('issuer_parameters', None) + self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy_py3.py new file mode 100644 index 000000000000..9bc83458c818 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_policy_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificatePolicy(Model): + """Management policy for a certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :param key_properties: Properties of the key backing a certificate. + :type key_properties: ~azure.keyvault.v7_0.models.KeyProperties + :param secret_properties: Properties of the secret backing a certificate. + :type secret_properties: ~azure.keyvault.v7_0.models.SecretProperties + :param x509_certificate_properties: Properties of the X509 component of a + certificate. + :type x509_certificate_properties: + ~azure.keyvault.v7_0.models.X509CertificateProperties + :param lifetime_actions: Actions that will be performed by Key Vault over + the lifetime of a certificate. + :type lifetime_actions: list[~azure.keyvault.v7_0.models.LifetimeAction] + :param issuer_parameters: Parameters for the issuer of the X509 component + of a certificate. + :type issuer_parameters: ~azure.keyvault.v7_0.models.IssuerParameters + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'key_properties': {'key': 'key_props', 'type': 'KeyProperties'}, + 'secret_properties': {'key': 'secret_props', 'type': 'SecretProperties'}, + 'x509_certificate_properties': {'key': 'x509_props', 'type': 'X509CertificateProperties'}, + 'lifetime_actions': {'key': 'lifetime_actions', 'type': '[LifetimeAction]'}, + 'issuer_parameters': {'key': 'issuer', 'type': 'IssuerParameters'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + } + + def __init__(self, *, key_properties=None, secret_properties=None, x509_certificate_properties=None, lifetime_actions=None, issuer_parameters=None, attributes=None, **kwargs) -> None: + super(CertificatePolicy, self).__init__(**kwargs) + self.id = None + self.key_properties = key_properties + self.secret_properties = secret_properties + self.x509_certificate_properties = x509_certificate_properties + self.lifetime_actions = lifetime_actions + self.issuer_parameters = issuer_parameters + self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/models/certificate_restore_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/certificate_restore_parameters.py rename to azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters.py diff --git a/azure-keyvault/azure/keyvault/models/certificate_restore_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/certificate_restore_parameters_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/certificate_restore_parameters_py3.py diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters.py new file mode 100644 index 000000000000..ca0ad948dcea --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateUpdateParameters(Model): + """The certificate update parameters. + + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CertificateUpdateParameters, self).__init__(**kwargs) + self.certificate_policy = kwargs.get('certificate_policy', None) + self.certificate_attributes = kwargs.get('certificate_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters_py3.py new file mode 100644 index 000000000000..4d4cf80139f9 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/certificate_update_parameters_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateUpdateParameters(Model): + """The certificate update parameters. + + :param certificate_policy: The management policy for the certificate. + :type certificate_policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param certificate_attributes: The attributes of the certificate + (optional). + :type certificate_attributes: + ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'certificate_policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'certificate_attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, certificate_policy=None, certificate_attributes=None, tags=None, **kwargs) -> None: + super(CertificateUpdateParameters, self).__init__(**kwargs) + self.certificate_policy = certificate_policy + self.certificate_attributes = certificate_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/contact.py b/azure-keyvault/azure/keyvault/v7_0/models/contact.py new file mode 100644 index 000000000000..217a04fb85d0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/contact.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Contact(Model): + """The contact information for the vault certificates. + + :param email_address: Email addresss. + :type email_address: str + :param name: Name. + :type name: str + :param phone: Phone number. + :type phone: str + """ + + _attribute_map = { + 'email_address': {'key': 'email', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'phone': {'key': 'phone', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Contact, self).__init__(**kwargs) + self.email_address = kwargs.get('email_address', None) + self.name = kwargs.get('name', None) + self.phone = kwargs.get('phone', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/contact_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/contact_py3.py new file mode 100644 index 000000000000..56569b0d9912 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/contact_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Contact(Model): + """The contact information for the vault certificates. + + :param email_address: Email addresss. + :type email_address: str + :param name: Name. + :type name: str + :param phone: Phone number. + :type phone: str + """ + + _attribute_map = { + 'email_address': {'key': 'email', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'phone': {'key': 'phone', 'type': 'str'}, + } + + def __init__(self, *, email_address: str=None, name: str=None, phone: str=None, **kwargs) -> None: + super(Contact, self).__init__(**kwargs) + self.email_address = email_address + self.name = name + self.phone = phone diff --git a/azure-keyvault/azure/keyvault/v7_0/models/contacts.py b/azure-keyvault/azure/keyvault/v7_0/models/contacts.py new file mode 100644 index 000000000000..565fb99c42dc --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/contacts.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Contacts(Model): + """The contacts for the vault certificates. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Identifier for the contacts collection. + :vartype id: str + :param contact_list: The contact list for the vault certificates. + :type contact_list: list[~azure.keyvault.v7_0.models.Contact] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, + } + + def __init__(self, **kwargs): + super(Contacts, self).__init__(**kwargs) + self.id = None + self.contact_list = kwargs.get('contact_list', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/contacts_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/contacts_py3.py new file mode 100644 index 000000000000..642b9cbe7ad2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/contacts_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Contacts(Model): + """The contacts for the vault certificates. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Identifier for the contacts collection. + :vartype id: str + :param contact_list: The contact list for the vault certificates. + :type contact_list: list[~azure.keyvault.v7_0.models.Contact] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'contact_list': {'key': 'contacts', 'type': '[Contact]'}, + } + + def __init__(self, *, contact_list=None, **kwargs) -> None: + super(Contacts, self).__init__(**kwargs) + self.id = None + self.contact_list = contact_list diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle.py new file mode 100644 index 000000000000..950e78105879 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle.py @@ -0,0 +1,79 @@ +# 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 .certificate_bundle import CertificateBundle + + +class DeletedCertificateBundle(CertificateBundle): + """A Deleted Certificate consisting of its previous id, attributes and its + tags, as well as information on when it will be purged. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :ivar kid: The key id. + :vartype kid: str + :ivar sid: The secret id. + :vartype sid: str + :ivar x509_thumbprint: Thumbprint of the certificate. + :vartype x509_thumbprint: bytes + :ivar policy: The management policy. + :vartype policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param cer: CER contents of x509 certificate. + :type cer: bytearray + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs + :type tags: dict[str, str] + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted certificate. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the certificate is scheduled to + be purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the certificate was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'kid': {'readonly': True}, + 'sid': {'readonly': True}, + 'x509_thumbprint': {'readonly': True}, + 'policy': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'sid': {'key': 'sid', 'type': 'str'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'cer': {'key': 'cer', 'type': 'bytearray'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedCertificateBundle, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle_py3.py new file mode 100644 index 000000000000..df0cd527a31c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_bundle_py3.py @@ -0,0 +1,79 @@ +# 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 .certificate_bundle_py3 import CertificateBundle + + +class DeletedCertificateBundle(CertificateBundle): + """A Deleted Certificate consisting of its previous id, attributes and its + tags, as well as information on when it will be purged. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The certificate id. + :vartype id: str + :ivar kid: The key id. + :vartype kid: str + :ivar sid: The secret id. + :vartype sid: str + :ivar x509_thumbprint: Thumbprint of the certificate. + :vartype x509_thumbprint: bytes + :ivar policy: The management policy. + :vartype policy: ~azure.keyvault.v7_0.models.CertificatePolicy + :param cer: CER contents of x509 certificate. + :type cer: bytearray + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The certificate attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs + :type tags: dict[str, str] + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted certificate. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the certificate is scheduled to + be purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the certificate was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'kid': {'readonly': True}, + 'sid': {'readonly': True}, + 'x509_thumbprint': {'readonly': True}, + 'policy': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'sid': {'key': 'sid', 'type': 'str'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'policy': {'key': 'policy', 'type': 'CertificatePolicy'}, + 'cer': {'key': 'cer', 'type': 'bytearray'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, cer: bytearray=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedCertificateBundle, self).__init__(cer=cer, content_type=content_type, attributes=attributes, tags=tags, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item.py new file mode 100644 index 000000000000..3d5cfdcd3d70 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .certificate_item import CertificateItem + + +class DeletedCertificateItem(CertificateItem): + """The deleted certificate item containing metadata about the deleted + certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Certificate identifier. + :type id: str + :param attributes: The certificate management attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param x509_thumbprint: Thumbprint of the certificate. + :type x509_thumbprint: bytes + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted certificate. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the certificate is scheduled to + be purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the certificate was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedCertificateItem, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_paged.py new file mode 100644 index 000000000000..1fe1ee3e0023 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DeletedCertificateItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`DeletedCertificateItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DeletedCertificateItem]'} + } + + def __init__(self, *args, **kwargs): + + super(DeletedCertificateItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_py3.py new file mode 100644 index 000000000000..2dd477800a23 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_certificate_item_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .certificate_item_py3 import CertificateItem + + +class DeletedCertificateItem(CertificateItem): + """The deleted certificate item containing metadata about the deleted + certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Certificate identifier. + :type id: str + :param attributes: The certificate management attributes. + :type attributes: ~azure.keyvault.v7_0.models.CertificateAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param x509_thumbprint: Thumbprint of the certificate. + :type x509_thumbprint: bytes + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted certificate. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the certificate is scheduled to + be purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the certificate was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'CertificateAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'x509_thumbprint': {'key': 'x5t', 'type': 'base64'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, id: str=None, attributes=None, tags=None, x509_thumbprint: bytes=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedCertificateItem, self).__init__(id=id, attributes=attributes, tags=tags, x509_thumbprint=x509_thumbprint, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle.py new file mode 100644 index 000000000000..27caf91df574 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle.py @@ -0,0 +1,61 @@ +# 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 .key_bundle import KeyBundle + + +class DeletedKeyBundle(KeyBundle): + """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion + info. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key: The Json web key. + :type key: ~azure.keyvault.v7_0.models.JsonWebKey + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted key. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the key is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the key was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedKeyBundle, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle_py3.py new file mode 100644 index 000000000000..31300ec3f063 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_bundle_py3.py @@ -0,0 +1,61 @@ +# 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 .key_bundle_py3 import KeyBundle + + +class DeletedKeyBundle(KeyBundle): + """A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion + info. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key: The Json web key. + :type key: ~azure.keyvault.v7_0.models.JsonWebKey + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted key. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the key is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the key was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, key=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedKeyBundle, self).__init__(key=key, attributes=attributes, tags=tags, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item.py new file mode 100644 index 000000000000..9f9d434ce234 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item.py @@ -0,0 +1,61 @@ +# 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 .key_item import KeyItem + + +class DeletedKeyItem(KeyItem): + """The deleted key item containing the deleted key metadata and information + about deletion. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param kid: Key identifier. + :type kid: str + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted key. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the key is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the key was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedKeyItem, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_paged.py new file mode 100644 index 000000000000..cae53dbb6fb6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DeletedKeyItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`DeletedKeyItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DeletedKeyItem]'} + } + + def __init__(self, *args, **kwargs): + + super(DeletedKeyItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_py3.py new file mode 100644 index 000000000000..c03283f3cdf0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_key_item_py3.py @@ -0,0 +1,61 @@ +# 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 .key_item_py3 import KeyItem + + +class DeletedKeyItem(KeyItem): + """The deleted key item containing the deleted key metadata and information + about deletion. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param kid: Key identifier. + :type kid: str + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted key. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the key is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the key was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, kid: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedKeyItem, self).__init__(kid=kid, attributes=attributes, tags=tags, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle.py similarity index 95% rename from azure-keyvault/azure/keyvault/models/deleted_sas_definition_bundle.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle.py index 7400534281f5..247249a0091a 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_bundle.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle.py @@ -29,12 +29,12 @@ class DeletedSasDefinitionBundle(SasDefinitionBundle): :vartype template_uri: str :ivar sas_type: The type of SAS token the SAS definition will create. Possible values include: 'account', 'service' - :vartype sas_type: str or ~azure.keyvault.models.SasTokenType + :vartype sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType :ivar validity_period: The validity period of SAS tokens created according to the SAS definition. :vartype validity_period: str :ivar attributes: The SAS definition attributes. - :vartype attributes: ~azure.keyvault.models.SasDefinitionAttributes + :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes :ivar tags: Application specific metadata in the form of key-value pairs :vartype tags: dict[str, str] :param recovery_id: The url of the recovery object, used to identify and diff --git a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle_py3.py similarity index 95% rename from azure-keyvault/azure/keyvault/models/deleted_sas_definition_bundle_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle_py3.py index ae5d90cd389a..75e0ac0e497e 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_bundle_py3.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_bundle_py3.py @@ -29,12 +29,12 @@ class DeletedSasDefinitionBundle(SasDefinitionBundle): :vartype template_uri: str :ivar sas_type: The type of SAS token the SAS definition will create. Possible values include: 'account', 'service' - :vartype sas_type: str or ~azure.keyvault.models.SasTokenType + :vartype sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType :ivar validity_period: The validity period of SAS tokens created according to the SAS definition. :vartype validity_period: str :ivar attributes: The SAS definition attributes. - :vartype attributes: ~azure.keyvault.models.SasDefinitionAttributes + :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes :ivar tags: Application specific metadata in the form of key-value pairs :vartype tags: dict[str, str] :param recovery_id: The url of the recovery object, used to identify and diff --git a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_item.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item.py similarity index 97% rename from azure-keyvault/azure/keyvault/models/deleted_sas_definition_item.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item.py index dd50187b3752..bb165a58f0d1 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_item.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item.py @@ -24,7 +24,7 @@ class DeletedSasDefinitionItem(SasDefinitionItem): :ivar secret_id: The storage account SAS definition secret id. :vartype secret_id: str :ivar attributes: The SAS definition management attributes. - :vartype attributes: ~azure.keyvault.models.SasDefinitionAttributes + :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes :ivar tags: Application specific metadata in the form of key-value pairs. :vartype tags: dict[str, str] :param recovery_id: The url of the recovery object, used to identify and diff --git a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_paged.py similarity index 91% rename from azure-keyvault/azure/keyvault/models/deleted_sas_definition_item_paged.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_paged.py index eaca2475e469..d4ca0a5fd502 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_item_paged.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_paged.py @@ -14,7 +14,7 @@ class DeletedSasDefinitionItemPaged(Paged): """ - A paging container for iterating over a list of :class:`DeletedSasDefinitionItem ` object + A paging container for iterating over a list of :class:`DeletedSasDefinitionItem ` object """ _attribute_map = { diff --git a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_py3.py similarity index 97% rename from azure-keyvault/azure/keyvault/models/deleted_sas_definition_item_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_py3.py index 9b689c4a7949..bdb3f36b864d 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_sas_definition_item_py3.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_sas_definition_item_py3.py @@ -24,7 +24,7 @@ class DeletedSasDefinitionItem(SasDefinitionItem): :ivar secret_id: The storage account SAS definition secret id. :vartype secret_id: str :ivar attributes: The SAS definition management attributes. - :vartype attributes: ~azure.keyvault.models.SasDefinitionAttributes + :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes :ivar tags: Application specific metadata in the form of key-value pairs. :vartype tags: dict[str, str] :param recovery_id: The url of the recovery object, used to identify and diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle.py new file mode 100644 index 000000000000..4c1a8b6d69ee --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle.py @@ -0,0 +1,72 @@ +# 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 .secret_bundle import SecretBundle + + +class DeletedSecretBundle(SecretBundle): + """A Deleted Secret consisting of its previous id, attributes and its tags, as + well as information on when it will be purged. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The secret value. + :type value: str + :param id: The secret id. + :type id: str + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar kid: If this is a secret backing a KV certificate, then this field + specifies the corresponding key backing the KV certificate. + :vartype kid: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a secret backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted secret. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the secret is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the secret was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'kid': {'readonly': True}, + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedSecretBundle, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle_py3.py new file mode 100644 index 000000000000..6357df55ddc3 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_bundle_py3.py @@ -0,0 +1,72 @@ +# 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 .secret_bundle_py3 import SecretBundle + + +class DeletedSecretBundle(SecretBundle): + """A Deleted Secret consisting of its previous id, attributes and its tags, as + well as information on when it will be purged. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The secret value. + :type value: str + :param id: The secret id. + :type id: str + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar kid: If this is a secret backing a KV certificate, then this field + specifies the corresponding key backing the KV certificate. + :vartype kid: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a secret backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted secret. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the secret is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the secret was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'kid': {'readonly': True}, + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedSecretBundle, self).__init__(value=value, id=id, content_type=content_type, attributes=attributes, tags=tags, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item.py new file mode 100644 index 000000000000..fe9313a79537 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item.py @@ -0,0 +1,63 @@ +# 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 .secret_item import SecretItem + + +class DeletedSecretItem(SecretItem): + """The deleted secret item containing metadata about the deleted secret. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Secret identifier. + :type id: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted secret. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the secret is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the secret was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(DeletedSecretItem, self).__init__(**kwargs) + self.recovery_id = kwargs.get('recovery_id', None) + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_paged.py new file mode 100644 index 000000000000..6f86a1c06818 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DeletedSecretItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`DeletedSecretItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DeletedSecretItem]'} + } + + def __init__(self, *args, **kwargs): + + super(DeletedSecretItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_py3.py new file mode 100644 index 000000000000..64de344c3d22 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_secret_item_py3.py @@ -0,0 +1,63 @@ +# 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 .secret_item_py3 import SecretItem + + +class DeletedSecretItem(SecretItem): + """The deleted secret item containing metadata about the deleted secret. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Secret identifier. + :type id: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a key backing a certificate, then managed will be true. + :vartype managed: bool + :param recovery_id: The url of the recovery object, used to identify and + recover the deleted secret. + :type recovery_id: str + :ivar scheduled_purge_date: The time when the secret is scheduled to be + purged, in UTC + :vartype scheduled_purge_date: datetime + :ivar deleted_date: The time when the secret was deleted, in UTC + :vartype deleted_date: datetime + """ + + _validation = { + 'managed': {'readonly': True}, + 'scheduled_purge_date': {'readonly': True}, + 'deleted_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + 'recovery_id': {'key': 'recoveryId', 'type': 'str'}, + 'scheduled_purge_date': {'key': 'scheduledPurgeDate', 'type': 'unix-time'}, + 'deleted_date': {'key': 'deletedDate', 'type': 'unix-time'}, + } + + def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, recovery_id: str=None, **kwargs) -> None: + super(DeletedSecretItem, self).__init__(id=id, attributes=attributes, tags=tags, content_type=content_type, **kwargs) + self.recovery_id = recovery_id + self.scheduled_purge_date = None + self.deleted_date = None diff --git a/azure-keyvault/azure/keyvault/models/deleted_storage_account_item.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item.py similarity index 96% rename from azure-keyvault/azure/keyvault/models/deleted_storage_account_item.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item.py index 15d0f15bef06..02323e19c062 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_storage_account_item.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item.py @@ -24,7 +24,7 @@ class DeletedStorageAccountItem(StorageAccountItem): :ivar resource_id: Storage account resource Id. :vartype resource_id: str :ivar attributes: The storage account management attributes. - :vartype attributes: ~azure.keyvault.models.StorageAccountAttributes + :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes :ivar tags: Application specific metadata in the form of key-value pairs. :vartype tags: dict[str, str] :param recovery_id: The url of the recovery object, used to identify and diff --git a/azure-keyvault/azure/keyvault/models/deleted_storage_account_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_paged.py similarity index 91% rename from azure-keyvault/azure/keyvault/models/deleted_storage_account_item_paged.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_paged.py index e0ae6f7e6755..cf3f086ab95f 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_storage_account_item_paged.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_paged.py @@ -14,7 +14,7 @@ class DeletedStorageAccountItemPaged(Paged): """ - A paging container for iterating over a list of :class:`DeletedStorageAccountItem ` object + A paging container for iterating over a list of :class:`DeletedStorageAccountItem ` object """ _attribute_map = { diff --git a/azure-keyvault/azure/keyvault/models/deleted_storage_account_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_py3.py similarity index 96% rename from azure-keyvault/azure/keyvault/models/deleted_storage_account_item_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_py3.py index cc0ed4ab734d..8203063cdef5 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_storage_account_item_py3.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_account_item_py3.py @@ -24,7 +24,7 @@ class DeletedStorageAccountItem(StorageAccountItem): :ivar resource_id: Storage account resource Id. :vartype resource_id: str :ivar attributes: The storage account management attributes. - :vartype attributes: ~azure.keyvault.models.StorageAccountAttributes + :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes :ivar tags: Application specific metadata in the form of key-value pairs. :vartype tags: dict[str, str] :param recovery_id: The url of the recovery object, used to identify and diff --git a/azure-keyvault/azure/keyvault/models/deleted_storage_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle.py similarity index 97% rename from azure-keyvault/azure/keyvault/models/deleted_storage_bundle.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle.py index f9281dc9b3dd..1c18ec6128a5 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_storage_bundle.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle.py @@ -32,7 +32,7 @@ class DeletedStorageBundle(StorageBundle): ISO-8601 format. :vartype regeneration_period: str :ivar attributes: The storage account attributes. - :vartype attributes: ~azure.keyvault.models.StorageAccountAttributes + :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes :ivar tags: Application specific metadata in the form of key-value pairs :vartype tags: dict[str, str] :param recovery_id: The url of the recovery object, used to identify and diff --git a/azure-keyvault/azure/keyvault/models/deleted_storage_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle_py3.py similarity index 97% rename from azure-keyvault/azure/keyvault/models/deleted_storage_bundle_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle_py3.py index 1e94dca3fc1d..13a5e41fcd6c 100644 --- a/azure-keyvault/azure/keyvault/models/deleted_storage_bundle_py3.py +++ b/azure-keyvault/azure/keyvault/v7_0/models/deleted_storage_bundle_py3.py @@ -32,7 +32,7 @@ class DeletedStorageBundle(StorageBundle): ISO-8601 format. :vartype regeneration_period: str :ivar attributes: The storage account attributes. - :vartype attributes: ~azure.keyvault.models.StorageAccountAttributes + :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes :ivar tags: Application specific metadata in the form of key-value pairs :vartype tags: dict[str, str] :param recovery_id: The url of the recovery object, used to identify and diff --git a/azure-keyvault/azure/keyvault/v7_0/models/error.py b/azure-keyvault/azure/keyvault/v7_0/models/error.py new file mode 100644 index 000000000000..8cdf64f756a1 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/error.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Error(Model): + """The key vault server error. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar inner_error: + :vartype inner_error: ~azure.keyvault.v7_0.models.Error + """ + + _validation = { + 'code': {'readonly': True}, + 'message': {'readonly': True}, + 'inner_error': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'inner_error': {'key': 'innererror', 'type': 'Error'}, + } + + def __init__(self, **kwargs): + super(Error, self).__init__(**kwargs) + self.code = None + self.message = None + self.inner_error = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/error_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/error_py3.py new file mode 100644 index 000000000000..ab340439a55b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/error_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Error(Model): + """The key vault server error. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar inner_error: + :vartype inner_error: ~azure.keyvault.v7_0.models.Error + """ + + _validation = { + 'code': {'readonly': True}, + 'message': {'readonly': True}, + 'inner_error': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'inner_error': {'key': 'innererror', 'type': 'Error'}, + } + + def __init__(self, **kwargs) -> None: + super(Error, self).__init__(**kwargs) + self.code = None + self.message = None + self.inner_error = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes.py b/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes.py new file mode 100644 index 000000000000..c10a16642899 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerAttributes(Model): + """The attributes of an issuer managed by the Key Vault service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the issuer is enabled. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + } + + def __init__(self, **kwargs): + super(IssuerAttributes, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.created = None + self.updated = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes_py3.py new file mode 100644 index 000000000000..d52ad4e0fc20 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/issuer_attributes_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerAttributes(Model): + """The attributes of an issuer managed by the Key Vault service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the issuer is enabled. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(IssuerAttributes, self).__init__(**kwargs) + self.enabled = enabled + self.created = None + self.updated = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle.py new file mode 100644 index 000000000000..e086ff0c9e8d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerBundle(Model): + """The issuer for Key Vault certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Identifier for the issuer object. + :vartype id: str + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v7_0.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, **kwargs): + super(IssuerBundle, self).__init__(**kwargs) + self.id = None + self.provider = kwargs.get('provider', None) + self.credentials = kwargs.get('credentials', None) + self.organization_details = kwargs.get('organization_details', None) + self.attributes = kwargs.get('attributes', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle_py3.py new file mode 100644 index 000000000000..d9cce3e50302 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/issuer_bundle_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerBundle(Model): + """The issuer for Key Vault certificate. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Identifier for the issuer object. + :vartype id: str + :param provider: The issuer provider. + :type provider: str + :param credentials: The credentials to be used for the issuer. + :type credentials: ~azure.keyvault.v7_0.models.IssuerCredentials + :param organization_details: Details of the organization as provided to + the issuer. + :type organization_details: + ~azure.keyvault.v7_0.models.OrganizationDetails + :param attributes: Attributes of the issuer object. + :type attributes: ~azure.keyvault.v7_0.models.IssuerAttributes + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provider': {'key': 'provider', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'IssuerCredentials'}, + 'organization_details': {'key': 'org_details', 'type': 'OrganizationDetails'}, + 'attributes': {'key': 'attributes', 'type': 'IssuerAttributes'}, + } + + def __init__(self, *, provider: str=None, credentials=None, organization_details=None, attributes=None, **kwargs) -> None: + super(IssuerBundle, self).__init__(**kwargs) + self.id = None + self.provider = provider + self.credentials = credentials + self.organization_details = organization_details + self.attributes = attributes diff --git a/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials.py b/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials.py new file mode 100644 index 000000000000..2f86d863239d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerCredentials(Model): + """The credentials to be used for the certificate issuer. + + :param account_id: The user name/account name/account id. + :type account_id: str + :param password: The password/secret/account key. + :type password: str + """ + + _attribute_map = { + 'account_id': {'key': 'account_id', 'type': 'str'}, + 'password': {'key': 'pwd', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IssuerCredentials, self).__init__(**kwargs) + self.account_id = kwargs.get('account_id', None) + self.password = kwargs.get('password', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials_py3.py new file mode 100644 index 000000000000..2882bad875d0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/issuer_credentials_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IssuerCredentials(Model): + """The credentials to be used for the certificate issuer. + + :param account_id: The user name/account name/account id. + :type account_id: str + :param password: The password/secret/account key. + :type password: str + """ + + _attribute_map = { + 'account_id': {'key': 'account_id', 'type': 'str'}, + 'password': {'key': 'pwd', 'type': 'str'}, + } + + def __init__(self, *, account_id: str=None, password: str=None, **kwargs) -> None: + super(IssuerCredentials, self).__init__(**kwargs) + self.account_id = account_id + self.password = password diff --git a/azure-keyvault/azure/keyvault/models/issuer_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/issuer_parameters.py rename to azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters.py diff --git a/azure-keyvault/azure/keyvault/models/issuer_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/issuer_parameters_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/issuer_parameters_py3.py diff --git a/azure-keyvault/azure/keyvault/v7_0/models/json_web_key.py b/azure-keyvault/azure/keyvault/v7_0/models/json_web_key.py new file mode 100644 index 000000000000..35749f04691b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/json_web_key.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JsonWebKey(Model): + """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. + + :param kid: Key identifier. + :type kid: str + :param kty: JsonWebKey Key Type (kty), as defined in + https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40. + Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' + :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType + :param key_ops: + :type key_ops: list[str] + :param n: RSA modulus. + :type n: bytes + :param e: RSA public exponent. + :type e: bytes + :param d: RSA private exponent, or the D component of an EC private key. + :type d: bytes + :param dp: RSA private key parameter. + :type dp: bytes + :param dq: RSA private key parameter. + :type dq: bytes + :param qi: RSA private key parameter. + :type qi: bytes + :param p: RSA secret prime. + :type p: bytes + :param q: RSA secret prime, with p < q. + :type q: bytes + :param k: Symmetric key. + :type k: bytes + :param t: HSM Token, used with 'Bring Your Own Key'. + :type t: bytes + :param crv: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'P-256K' + :type crv: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName + :param x: X component of an EC public key. + :type x: bytes + :param y: Y component of an EC public key. + :type y: bytes + """ + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'kty': {'key': 'kty', 'type': 'str'}, + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'n': {'key': 'n', 'type': 'base64'}, + 'e': {'key': 'e', 'type': 'base64'}, + 'd': {'key': 'd', 'type': 'base64'}, + 'dp': {'key': 'dp', 'type': 'base64'}, + 'dq': {'key': 'dq', 'type': 'base64'}, + 'qi': {'key': 'qi', 'type': 'base64'}, + 'p': {'key': 'p', 'type': 'base64'}, + 'q': {'key': 'q', 'type': 'base64'}, + 'k': {'key': 'k', 'type': 'base64'}, + 't': {'key': 'key_hsm', 'type': 'base64'}, + 'crv': {'key': 'crv', 'type': 'str'}, + 'x': {'key': 'x', 'type': 'base64'}, + 'y': {'key': 'y', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(JsonWebKey, self).__init__(**kwargs) + self.kid = kwargs.get('kid', None) + self.kty = kwargs.get('kty', None) + self.key_ops = kwargs.get('key_ops', None) + self.n = kwargs.get('n', None) + self.e = kwargs.get('e', None) + self.d = kwargs.get('d', None) + self.dp = kwargs.get('dp', None) + self.dq = kwargs.get('dq', None) + self.qi = kwargs.get('qi', None) + self.p = kwargs.get('p', None) + self.q = kwargs.get('q', None) + self.k = kwargs.get('k', None) + self.t = kwargs.get('t', None) + self.crv = kwargs.get('crv', None) + self.x = kwargs.get('x', None) + self.y = kwargs.get('y', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/json_web_key_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/json_web_key_py3.py new file mode 100644 index 000000000000..31a9198ea7c3 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/json_web_key_py3.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JsonWebKey(Model): + """As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18. + + :param kid: Key identifier. + :type kid: str + :param kty: JsonWebKey Key Type (kty), as defined in + https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40. + Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' + :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType + :param key_ops: + :type key_ops: list[str] + :param n: RSA modulus. + :type n: bytes + :param e: RSA public exponent. + :type e: bytes + :param d: RSA private exponent, or the D component of an EC private key. + :type d: bytes + :param dp: RSA private key parameter. + :type dp: bytes + :param dq: RSA private key parameter. + :type dq: bytes + :param qi: RSA private key parameter. + :type qi: bytes + :param p: RSA secret prime. + :type p: bytes + :param q: RSA secret prime, with p < q. + :type q: bytes + :param k: Symmetric key. + :type k: bytes + :param t: HSM Token, used with 'Bring Your Own Key'. + :type t: bytes + :param crv: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'P-256K' + :type crv: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName + :param x: X component of an EC public key. + :type x: bytes + :param y: Y component of an EC public key. + :type y: bytes + """ + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'kty': {'key': 'kty', 'type': 'str'}, + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'n': {'key': 'n', 'type': 'base64'}, + 'e': {'key': 'e', 'type': 'base64'}, + 'd': {'key': 'd', 'type': 'base64'}, + 'dp': {'key': 'dp', 'type': 'base64'}, + 'dq': {'key': 'dq', 'type': 'base64'}, + 'qi': {'key': 'qi', 'type': 'base64'}, + 'p': {'key': 'p', 'type': 'base64'}, + 'q': {'key': 'q', 'type': 'base64'}, + 'k': {'key': 'k', 'type': 'base64'}, + 't': {'key': 'key_hsm', 'type': 'base64'}, + 'crv': {'key': 'crv', 'type': 'str'}, + 'x': {'key': 'x', 'type': 'base64'}, + 'y': {'key': 'y', 'type': 'base64'}, + } + + def __init__(self, *, kid: str=None, kty=None, key_ops=None, n: bytes=None, e: bytes=None, d: bytes=None, dp: bytes=None, dq: bytes=None, qi: bytes=None, p: bytes=None, q: bytes=None, k: bytes=None, t: bytes=None, crv=None, x: bytes=None, y: bytes=None, **kwargs) -> None: + super(JsonWebKey, self).__init__(**kwargs) + self.kid = kid + self.kty = kty + self.key_ops = key_ops + self.n = n + self.e = e + self.d = d + self.dp = dp + self.dq = dq + self.qi = qi + self.p = p + self.q = q + self.k = k + self.t = t + self.crv = crv + self.x = x + self.y = y diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_attributes.py b/azure-keyvault/azure/keyvault/v7_0/models/key_attributes.py new file mode 100644 index 000000000000..5b586729cb98 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_attributes.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes import Attributes + + +class KeyAttributes(Attributes): + """The attributes of a key managed by the key vault service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for keys in the current vault. If it contains 'Purgeable' the key + can be permanently deleted by a privileged user; otherwise, only the + system can purge the key, at the end of the retention interval. Possible + values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(KeyAttributes, self).__init__(**kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_attributes_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_attributes_py3.py new file mode 100644 index 000000000000..46148560aed3 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_attributes_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes_py3 import Attributes + + +class KeyAttributes(Attributes): + """The attributes of a key managed by the key vault service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for keys in the current vault. If it contains 'Purgeable' the key + can be permanently deleted by a privileged user; otherwise, only the + system can purge the key, at the end of the retention interval. Possible + values include: 'Purgeable', 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: + super(KeyAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/key_bundle.py new file mode 100644 index 000000000000..36dc23a5d29f --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_bundle.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyBundle(Model): + """A KeyBundle consisting of a WebKey plus its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key: The Json web key. + :type key: ~azure.keyvault.v7_0.models.JsonWebKey + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(KeyBundle, self).__init__(**kwargs) + self.key = kwargs.get('key', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_bundle_py3.py new file mode 100644 index 000000000000..19b298aa420f --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_bundle_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyBundle(Model): + """A KeyBundle consisting of a WebKey plus its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key: The Json web key. + :type key: ~azure.keyvault.v7_0.models.JsonWebKey + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, *, key=None, attributes=None, tags=None, **kwargs) -> None: + super(KeyBundle, self).__init__(**kwargs) + self.key = key + self.attributes = attributes + self.tags = tags + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters.py new file mode 100644 index 000000000000..c5059749940e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyCreateParameters(Model): + """The key create parameters. + + All required parameters must be populated in order to send to Azure. + + :param kty: Required. The type of key to create. For valid values, see + JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', + 'oct' + :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType + :param key_size: The key size in bits. For example: 2048, 3072, or 4096 + for RSA. + :type key_size: int + :param key_ops: + :type key_ops: list[str or + ~azure.keyvault.v7_0.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param curve: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'P-256K' + :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName + """ + + _validation = { + 'kty': {'required': True, 'min_length': 1}, + } + + _attribute_map = { + 'kty': {'key': 'kty', 'type': 'str'}, + 'key_size': {'key': 'key_size', 'type': 'int'}, + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'curve': {'key': 'crv', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(KeyCreateParameters, self).__init__(**kwargs) + self.kty = kwargs.get('kty', None) + self.key_size = kwargs.get('key_size', None) + self.key_ops = kwargs.get('key_ops', None) + self.key_attributes = kwargs.get('key_attributes', None) + self.tags = kwargs.get('tags', None) + self.curve = kwargs.get('curve', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters_py3.py new file mode 100644 index 000000000000..9bbb49ac9b6b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_create_parameters_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyCreateParameters(Model): + """The key create parameters. + + All required parameters must be populated in order to send to Azure. + + :param kty: Required. The type of key to create. For valid values, see + JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', + 'oct' + :type kty: str or ~azure.keyvault.v7_0.models.JsonWebKeyType + :param key_size: The key size in bits. For example: 2048, 3072, or 4096 + for RSA. + :type key_size: int + :param key_ops: + :type key_ops: list[str or + ~azure.keyvault.v7_0.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param curve: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'P-256K' + :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName + """ + + _validation = { + 'kty': {'required': True, 'min_length': 1}, + } + + _attribute_map = { + 'kty': {'key': 'kty', 'type': 'str'}, + 'key_size': {'key': 'key_size', 'type': 'int'}, + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'curve': {'key': 'crv', 'type': 'str'}, + } + + def __init__(self, *, kty, key_size: int=None, key_ops=None, key_attributes=None, tags=None, curve=None, **kwargs) -> None: + super(KeyCreateParameters, self).__init__(**kwargs) + self.kty = kty + self.key_size = key_size + self.key_ops = key_ops + self.key_attributes = key_attributes + self.tags = tags + self.curve = curve diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters.py new file mode 100644 index 000000000000..99c7422fabf8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyImportParameters(Model): + """The key import parameters. + + All required parameters must be populated in order to send to Azure. + + :param hsm: Whether to import as a hardware key (HSM) or software key. + :type hsm: bool + :param key: Required. The Json web key + :type key: ~azure.keyvault.v7_0.models.JsonWebKey + :param key_attributes: The key management attributes. + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'key': {'required': True}, + } + + _attribute_map = { + 'hsm': {'key': 'Hsm', 'type': 'bool'}, + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(KeyImportParameters, self).__init__(**kwargs) + self.hsm = kwargs.get('hsm', None) + self.key = kwargs.get('key', None) + self.key_attributes = kwargs.get('key_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters_py3.py new file mode 100644 index 000000000000..70fe0453dea2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_import_parameters_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyImportParameters(Model): + """The key import parameters. + + All required parameters must be populated in order to send to Azure. + + :param hsm: Whether to import as a hardware key (HSM) or software key. + :type hsm: bool + :param key: Required. The Json web key + :type key: ~azure.keyvault.v7_0.models.JsonWebKey + :param key_attributes: The key management attributes. + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'key': {'required': True}, + } + + _attribute_map = { + 'hsm': {'key': 'Hsm', 'type': 'bool'}, + 'key': {'key': 'key', 'type': 'JsonWebKey'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, key, hsm: bool=None, key_attributes=None, tags=None, **kwargs) -> None: + super(KeyImportParameters, self).__init__(**kwargs) + self.hsm = hsm + self.key = key + self.key_attributes = key_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_item.py b/azure-keyvault/azure/keyvault/v7_0/models/key_item.py new file mode 100644 index 000000000000..ec97da0ea370 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_item.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyItem(Model): + """The key item containing key metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param kid: Key identifier. + :type kid: str + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(KeyItem, self).__init__(**kwargs) + self.kid = kwargs.get('kid', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/key_item_paged.py new file mode 100644 index 000000000000..48e7fc05e277 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class KeyItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`KeyItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[KeyItem]'} + } + + def __init__(self, *args, **kwargs): + + super(KeyItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_item_py3.py new file mode 100644 index 000000000000..5addb549325e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_item_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyItem(Model): + """The key item containing key metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param kid: Key identifier. + :type kid: str + :param attributes: The key management attributes. + :type attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar managed: True if the key's lifetime is managed by key vault. If this + is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, *, kid: str=None, attributes=None, tags=None, **kwargs) -> None: + super(KeyItem, self).__init__(**kwargs) + self.kid = kid + self.attributes = attributes + self.tags = tags + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result.py b/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result.py new file mode 100644 index 000000000000..577326dcf54c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyOperationResult(Model): + """The key operation result. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar kid: Key identifier + :vartype kid: str + :ivar result: + :vartype result: bytes + """ + + _validation = { + 'kid': {'readonly': True}, + 'result': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'result': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(KeyOperationResult, self).__init__(**kwargs) + self.kid = None + self.result = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result_py3.py new file mode 100644 index 000000000000..82cd8de63331 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_operation_result_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyOperationResult(Model): + """The key operation result. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar kid: Key identifier + :vartype kid: str + :ivar result: + :vartype result: bytes + """ + + _validation = { + 'kid': {'readonly': True}, + 'result': {'readonly': True}, + } + + _attribute_map = { + 'kid': {'key': 'kid', 'type': 'str'}, + 'result': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs) -> None: + super(KeyOperationResult, self).__init__(**kwargs) + self.kid = None + self.result = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters.py new file mode 100644 index 000000000000..9ce91200d920 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyOperationsParameters(Model): + """The key operations parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm + :param value: Required. + :type value: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'value': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(KeyOperationsParameters, self).__init__(**kwargs) + self.algorithm = kwargs.get('algorithm', None) + self.value = kwargs.get('value', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters_py3.py new file mode 100644 index 000000000000..2f88b1f4d24c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_operations_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyOperationsParameters(Model): + """The key operations parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. algorithm identifier. Possible values include: + 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeyEncryptionAlgorithm + :param value: Required. + :type value: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'value': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: + super(KeyOperationsParameters, self).__init__(**kwargs) + self.algorithm = algorithm + self.value = value diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_properties.py b/azure-keyvault/azure/keyvault/v7_0/models/key_properties.py new file mode 100644 index 000000000000..23f6ffe746bb --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_properties.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyProperties(Model): + """Properties of the key pair backing a certificate. + + :param exportable: Indicates if the private key can be exported. + :type exportable: bool + :param key_type: The type of key pair to be used for the certificate. + Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' + :type key_type: str or ~azure.keyvault.v7_0.models.JsonWebKeyType + :param key_size: The key size in bits. For example: 2048, 3072, or 4096 + for RSA. + :type key_size: int + :param reuse_key: Indicates if the same key pair will be used on + certificate renewal. + :type reuse_key: bool + :param curve: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'P-256K' + :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName + """ + + _attribute_map = { + 'exportable': {'key': 'exportable', 'type': 'bool'}, + 'key_type': {'key': 'kty', 'type': 'str'}, + 'key_size': {'key': 'key_size', 'type': 'int'}, + 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, + 'curve': {'key': 'crv', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(KeyProperties, self).__init__(**kwargs) + self.exportable = kwargs.get('exportable', None) + self.key_type = kwargs.get('key_type', None) + self.key_size = kwargs.get('key_size', None) + self.reuse_key = kwargs.get('reuse_key', None) + self.curve = kwargs.get('curve', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_properties_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_properties_py3.py new file mode 100644 index 000000000000..8a384cbf4ac5 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_properties_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyProperties(Model): + """Properties of the key pair backing a certificate. + + :param exportable: Indicates if the private key can be exported. + :type exportable: bool + :param key_type: The type of key pair to be used for the certificate. + Possible values include: 'EC', 'EC-HSM', 'RSA', 'RSA-HSM', 'oct' + :type key_type: str or ~azure.keyvault.v7_0.models.JsonWebKeyType + :param key_size: The key size in bits. For example: 2048, 3072, or 4096 + for RSA. + :type key_size: int + :param reuse_key: Indicates if the same key pair will be used on + certificate renewal. + :type reuse_key: bool + :param curve: Elliptic curve name. For valid values, see + JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', 'P-521', + 'P-256K' + :type curve: str or ~azure.keyvault.v7_0.models.JsonWebKeyCurveName + """ + + _attribute_map = { + 'exportable': {'key': 'exportable', 'type': 'bool'}, + 'key_type': {'key': 'kty', 'type': 'str'}, + 'key_size': {'key': 'key_size', 'type': 'int'}, + 'reuse_key': {'key': 'reuse_key', 'type': 'bool'}, + 'curve': {'key': 'crv', 'type': 'str'}, + } + + def __init__(self, *, exportable: bool=None, key_type=None, key_size: int=None, reuse_key: bool=None, curve=None, **kwargs) -> None: + super(KeyProperties, self).__init__(**kwargs) + self.exportable = exportable + self.key_type = key_type + self.key_size = key_size + self.reuse_key = reuse_key + self.curve = curve diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters.py new file mode 100644 index 000000000000..7594a7af2833 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyRestoreParameters(Model): + """The key restore parameters. + + All required parameters must be populated in order to send to Azure. + + :param key_bundle_backup: Required. The backup blob associated with a key + bundle. + :type key_bundle_backup: bytes + """ + + _validation = { + 'key_bundle_backup': {'required': True}, + } + + _attribute_map = { + 'key_bundle_backup': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(KeyRestoreParameters, self).__init__(**kwargs) + self.key_bundle_backup = kwargs.get('key_bundle_backup', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters_py3.py new file mode 100644 index 000000000000..cf74e5904178 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_restore_parameters_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyRestoreParameters(Model): + """The key restore parameters. + + All required parameters must be populated in order to send to Azure. + + :param key_bundle_backup: Required. The backup blob associated with a key + bundle. + :type key_bundle_backup: bytes + """ + + _validation = { + 'key_bundle_backup': {'required': True}, + } + + _attribute_map = { + 'key_bundle_backup': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, *, key_bundle_backup: bytes, **kwargs) -> None: + super(KeyRestoreParameters, self).__init__(**kwargs) + self.key_bundle_backup = key_bundle_backup diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters.py new file mode 100644 index 000000000000..eae17c52667e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeySignParameters(Model): + """The key operations parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. The signing/verification algorithm identifier. + For more information on possible algorithm types, see + JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', + 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', + 'ES256K' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm + :param value: Required. + :type value: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'value': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(KeySignParameters, self).__init__(**kwargs) + self.algorithm = kwargs.get('algorithm', None) + self.value = kwargs.get('value', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters_py3.py new file mode 100644 index 000000000000..518ee27dbe13 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_sign_parameters_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeySignParameters(Model): + """The key operations parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. The signing/verification algorithm identifier. + For more information on possible algorithm types, see + JsonWebKeySignatureAlgorithm. Possible values include: 'PS256', 'PS384', + 'PS512', 'RS256', 'RS384', 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', + 'ES256K' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm + :param value: Required. + :type value: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'value': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, *, algorithm, value: bytes, **kwargs) -> None: + super(KeySignParameters, self).__init__(**kwargs) + self.algorithm = algorithm + self.value = value diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters.py new file mode 100644 index 000000000000..ca0d78837954 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyUpdateParameters(Model): + """The key update parameters. + + :param key_ops: Json web key operations. For more information on possible + key operations, see JsonWebKeyOperation. + :type key_ops: list[str or + ~azure.keyvault.v7_0.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(KeyUpdateParameters, self).__init__(**kwargs) + self.key_ops = kwargs.get('key_ops', None) + self.key_attributes = kwargs.get('key_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters_py3.py new file mode 100644 index 000000000000..4204bf2cebc1 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_update_parameters_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyUpdateParameters(Model): + """The key update parameters. + + :param key_ops: Json web key operations. For more information on possible + key operations, see JsonWebKeyOperation. + :type key_ops: list[str or + ~azure.keyvault.v7_0.models.JsonWebKeyOperation] + :param key_attributes: + :type key_attributes: ~azure.keyvault.v7_0.models.KeyAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'key_ops': {'key': 'key_ops', 'type': '[str]'}, + 'key_attributes': {'key': 'attributes', 'type': 'KeyAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, key_ops=None, key_attributes=None, tags=None, **kwargs) -> None: + super(KeyUpdateParameters, self).__init__(**kwargs) + self.key_ops = key_ops + self.key_attributes = key_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/models/key_vault_client_enums.py b/azure-keyvault/azure/keyvault/v7_0/models/key_vault_client_enums.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/key_vault_client_enums.py rename to azure-keyvault/azure/keyvault/v7_0/models/key_vault_client_enums.py diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error.py b/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error.py new file mode 100644 index 000000000000..653e201084bf --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class KeyVaultError(Model): + """The key vault error exception. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar error: + :vartype error: ~azure.keyvault.v7_0.models.Error + """ + + _validation = { + 'error': {'readonly': True}, + } + + _attribute_map = { + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, **kwargs): + super(KeyVaultError, self).__init__(**kwargs) + self.error = None + + +class KeyVaultErrorException(HttpOperationError): + """Server responsed with exception of type: 'KeyVaultError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error_py3.py new file mode 100644 index 000000000000..81c9da53d826 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_vault_error_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class KeyVaultError(Model): + """The key vault error exception. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar error: + :vartype error: ~azure.keyvault.v7_0.models.Error + """ + + _validation = { + 'error': {'readonly': True}, + } + + _attribute_map = { + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, **kwargs) -> None: + super(KeyVaultError, self).__init__(**kwargs) + self.error = None + + +class KeyVaultErrorException(HttpOperationError): + """Server responsed with exception of type: 'KeyVaultError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(KeyVaultErrorException, self).__init__(deserialize, response, 'KeyVaultError', *args) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters.py new file mode 100644 index 000000000000..70f4ff6d1dbd --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVerifyParameters(Model): + """The key verify parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. The signing/verification algorithm. For more + information on possible algorithm types, see JsonWebKeySignatureAlgorithm. + Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', + 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ES256K' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm + :param digest: Required. The digest used for signing. + :type digest: bytes + :param signature: Required. The signature to be verified. + :type signature: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'digest': {'required': True}, + 'signature': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'digest': {'key': 'digest', 'type': 'base64'}, + 'signature': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(KeyVerifyParameters, self).__init__(**kwargs) + self.algorithm = kwargs.get('algorithm', None) + self.digest = kwargs.get('digest', None) + self.signature = kwargs.get('signature', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters_py3.py new file mode 100644 index 000000000000..8d8a6fee6b3d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_verify_parameters_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVerifyParameters(Model): + """The key verify parameters. + + All required parameters must be populated in order to send to Azure. + + :param algorithm: Required. The signing/verification algorithm. For more + information on possible algorithm types, see JsonWebKeySignatureAlgorithm. + Possible values include: 'PS256', 'PS384', 'PS512', 'RS256', 'RS384', + 'RS512', 'RSNULL', 'ES256', 'ES384', 'ES512', 'ES256K' + :type algorithm: str or + ~azure.keyvault.v7_0.models.JsonWebKeySignatureAlgorithm + :param digest: Required. The digest used for signing. + :type digest: bytes + :param signature: Required. The signature to be verified. + :type signature: bytes + """ + + _validation = { + 'algorithm': {'required': True, 'min_length': 1}, + 'digest': {'required': True}, + 'signature': {'required': True}, + } + + _attribute_map = { + 'algorithm': {'key': 'alg', 'type': 'str'}, + 'digest': {'key': 'digest', 'type': 'base64'}, + 'signature': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, *, algorithm, digest: bytes, signature: bytes, **kwargs) -> None: + super(KeyVerifyParameters, self).__init__(**kwargs) + self.algorithm = algorithm + self.digest = digest + self.signature = signature diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result.py b/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result.py new file mode 100644 index 000000000000..baffb85589cc --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVerifyResult(Model): + """The key verify result. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: True if the signature is verified, otherwise false. + :vartype value: bool + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(KeyVerifyResult, self).__init__(**kwargs) + self.value = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result_py3.py new file mode 100644 index 000000000000..33a7a7ebaefa --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/key_verify_result_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVerifyResult(Model): + """The key verify result. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: True if the signature is verified, otherwise false. + :vartype value: bool + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'bool'}, + } + + def __init__(self, **kwargs) -> None: + super(KeyVerifyResult, self).__init__(**kwargs) + self.value = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action.py b/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action.py new file mode 100644 index 000000000000..a999fb34f89c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LifetimeAction(Model): + """Action and its trigger that will be performed by Key Vault over the + lifetime of a certificate. + + :param trigger: The condition that will execute the action. + :type trigger: ~azure.keyvault.v7_0.models.Trigger + :param action: The action that will be executed. + :type action: ~azure.keyvault.v7_0.models.Action + """ + + _attribute_map = { + 'trigger': {'key': 'trigger', 'type': 'Trigger'}, + 'action': {'key': 'action', 'type': 'Action'}, + } + + def __init__(self, **kwargs): + super(LifetimeAction, self).__init__(**kwargs) + self.trigger = kwargs.get('trigger', None) + self.action = kwargs.get('action', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action_py3.py new file mode 100644 index 000000000000..2144c9d19dd2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/lifetime_action_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LifetimeAction(Model): + """Action and its trigger that will be performed by Key Vault over the + lifetime of a certificate. + + :param trigger: The condition that will execute the action. + :type trigger: ~azure.keyvault.v7_0.models.Trigger + :param action: The action that will be executed. + :type action: ~azure.keyvault.v7_0.models.Action + """ + + _attribute_map = { + 'trigger': {'key': 'trigger', 'type': 'Trigger'}, + 'action': {'key': 'action', 'type': 'Action'}, + } + + def __init__(self, *, trigger=None, action=None, **kwargs) -> None: + super(LifetimeAction, self).__init__(**kwargs) + self.trigger = trigger + self.action = action diff --git a/azure-keyvault/azure/keyvault/v7_0/models/organization_details.py b/azure-keyvault/azure/keyvault/v7_0/models/organization_details.py new file mode 100644 index 000000000000..3956fdfc3e2f --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/organization_details.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OrganizationDetails(Model): + """Details of the organization of the certificate issuer. + + :param id: Id of the organization. + :type id: str + :param admin_details: Details of the organization administrator. + :type admin_details: + list[~azure.keyvault.v7_0.models.AdministratorDetails] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, + } + + def __init__(self, **kwargs): + super(OrganizationDetails, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.admin_details = kwargs.get('admin_details', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/organization_details_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/organization_details_py3.py new file mode 100644 index 000000000000..bd3893310a87 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/organization_details_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OrganizationDetails(Model): + """Details of the organization of the certificate issuer. + + :param id: Id of the organization. + :type id: str + :param admin_details: Details of the organization administrator. + :type admin_details: + list[~azure.keyvault.v7_0.models.AdministratorDetails] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'admin_details': {'key': 'admin_details', 'type': '[AdministratorDetails]'}, + } + + def __init__(self, *, id: str=None, admin_details=None, **kwargs) -> None: + super(OrganizationDetails, self).__init__(**kwargs) + self.id = id + self.admin_details = admin_details diff --git a/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result.py b/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result.py new file mode 100644 index 000000000000..2bea9bfcdd61 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PendingCertificateSigningRequestResult(Model): + """The pending certificate signing request result. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: The pending certificate signing request as Base64 encoded + string. + :vartype value: str + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PendingCertificateSigningRequestResult, self).__init__(**kwargs) + self.value = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result_py3.py new file mode 100644 index 000000000000..2895d5a77a03 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/pending_certificate_signing_request_result_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PendingCertificateSigningRequestResult(Model): + """The pending certificate signing request result. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: The pending certificate signing request as Base64 encoded + string. + :vartype value: str + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(PendingCertificateSigningRequestResult, self).__init__(**kwargs) + self.value = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes.py new file mode 100644 index 000000000000..3b99ef90d6d1 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionAttributes(Model): + """The SAS definition management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: the enabled state of the object. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for SAS definitions in the current vault. If it contains + 'Purgeable' the SAS definition can be permanently deleted by a privileged + user; otherwise, only the system can purge the SAS definition, at the end + of the retention interval. Possible values include: 'Purgeable', + 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionAttributes, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.created = None + self.updated = None + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes_py3.py new file mode 100644 index 000000000000..1ef307224d33 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_attributes_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionAttributes(Model): + """The SAS definition management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: the enabled state of the object. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for SAS definitions in the current vault. If it contains + 'Purgeable' the SAS definition can be permanently deleted by a privileged + user; otherwise, only the system can purge the SAS definition, at the end + of the retention interval. Possible values include: 'Purgeable', + 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(SasDefinitionAttributes, self).__init__(**kwargs) + self.enabled = enabled + self.created = None + self.updated = None + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle.py new file mode 100644 index 000000000000..79c6e69a1aa9 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionBundle(Model): + """A SAS definition bundle consists of key vault SAS definition details plus + its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The SAS definition id. + :vartype id: str + :ivar secret_id: Storage account SAS definition secret id. + :vartype secret_id: str + :ivar template_uri: The SAS definition token template signed with an + arbitrary key. Tokens created according to the SAS definition will have + the same properties as the template. + :vartype template_uri: str + :ivar sas_type: The type of SAS token the SAS definition will create. + Possible values include: 'account', 'service' + :vartype sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType + :ivar validity_period: The validity period of SAS tokens created according + to the SAS definition. + :vartype validity_period: str + :ivar attributes: The SAS definition attributes. + :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :ivar tags: Application specific metadata in the form of key-value pairs + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'secret_id': {'readonly': True}, + 'template_uri': {'readonly': True}, + 'sas_type': {'readonly': True}, + 'validity_period': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'secret_id': {'key': 'sid', 'type': 'str'}, + 'template_uri': {'key': 'templateUri', 'type': 'str'}, + 'sas_type': {'key': 'sasType', 'type': 'str'}, + 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionBundle, self).__init__(**kwargs) + self.id = None + self.secret_id = None + self.template_uri = None + self.sas_type = None + self.validity_period = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle_py3.py new file mode 100644 index 000000000000..c2f87f40478a --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_bundle_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionBundle(Model): + """A SAS definition bundle consists of key vault SAS definition details plus + its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The SAS definition id. + :vartype id: str + :ivar secret_id: Storage account SAS definition secret id. + :vartype secret_id: str + :ivar template_uri: The SAS definition token template signed with an + arbitrary key. Tokens created according to the SAS definition will have + the same properties as the template. + :vartype template_uri: str + :ivar sas_type: The type of SAS token the SAS definition will create. + Possible values include: 'account', 'service' + :vartype sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType + :ivar validity_period: The validity period of SAS tokens created according + to the SAS definition. + :vartype validity_period: str + :ivar attributes: The SAS definition attributes. + :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :ivar tags: Application specific metadata in the form of key-value pairs + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'secret_id': {'readonly': True}, + 'template_uri': {'readonly': True}, + 'sas_type': {'readonly': True}, + 'validity_period': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'secret_id': {'key': 'sid', 'type': 'str'}, + 'template_uri': {'key': 'templateUri', 'type': 'str'}, + 'sas_type': {'key': 'sasType', 'type': 'str'}, + 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(SasDefinitionBundle, self).__init__(**kwargs) + self.id = None + self.secret_id = None + self.template_uri = None + self.sas_type = None + self.validity_period = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters.py new file mode 100644 index 000000000000..246d237537b9 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionCreateParameters(Model): + """The SAS definition create parameters. + + All required parameters must be populated in order to send to Azure. + + :param template_uri: Required. The SAS definition token template signed + with an arbitrary key. Tokens created according to the SAS definition + will have the same properties as the template. + :type template_uri: str + :param sas_type: Required. The type of SAS token the SAS definition will + create. Possible values include: 'account', 'service' + :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType + :param validity_period: Required. The validity period of SAS tokens + created according to the SAS definition. + :type validity_period: str + :param sas_definition_attributes: The attributes of the SAS definition. + :type sas_definition_attributes: + ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'template_uri': {'required': True}, + 'sas_type': {'required': True}, + 'validity_period': {'required': True}, + } + + _attribute_map = { + 'template_uri': {'key': 'templateUri', 'type': 'str'}, + 'sas_type': {'key': 'sasType', 'type': 'str'}, + 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, + 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionCreateParameters, self).__init__(**kwargs) + self.template_uri = kwargs.get('template_uri', None) + self.sas_type = kwargs.get('sas_type', None) + self.validity_period = kwargs.get('validity_period', None) + self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters_py3.py new file mode 100644 index 000000000000..1245a78df685 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_create_parameters_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionCreateParameters(Model): + """The SAS definition create parameters. + + All required parameters must be populated in order to send to Azure. + + :param template_uri: Required. The SAS definition token template signed + with an arbitrary key. Tokens created according to the SAS definition + will have the same properties as the template. + :type template_uri: str + :param sas_type: Required. The type of SAS token the SAS definition will + create. Possible values include: 'account', 'service' + :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType + :param validity_period: Required. The validity period of SAS tokens + created according to the SAS definition. + :type validity_period: str + :param sas_definition_attributes: The attributes of the SAS definition. + :type sas_definition_attributes: + ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'template_uri': {'required': True}, + 'sas_type': {'required': True}, + 'validity_period': {'required': True}, + } + + _attribute_map = { + 'template_uri': {'key': 'templateUri', 'type': 'str'}, + 'sas_type': {'key': 'sasType', 'type': 'str'}, + 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, + 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, template_uri: str, sas_type, validity_period: str, sas_definition_attributes=None, tags=None, **kwargs) -> None: + super(SasDefinitionCreateParameters, self).__init__(**kwargs) + self.template_uri = template_uri + self.sas_type = sas_type + self.validity_period = validity_period + self.sas_definition_attributes = sas_definition_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item.py new file mode 100644 index 000000000000..31693ad2818e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionItem(Model): + """The SAS definition item containing storage SAS definition metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The storage SAS identifier. + :vartype id: str + :ivar secret_id: The storage account SAS definition secret id. + :vartype secret_id: str + :ivar attributes: The SAS definition management attributes. + :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :ivar tags: Application specific metadata in the form of key-value pairs. + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'secret_id': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'secret_id': {'key': 'sid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionItem, self).__init__(**kwargs) + self.id = None + self.secret_id = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_paged.py new file mode 100644 index 000000000000..5ff6be6a7287 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SasDefinitionItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`SasDefinitionItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SasDefinitionItem]'} + } + + def __init__(self, *args, **kwargs): + + super(SasDefinitionItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_py3.py new file mode 100644 index 000000000000..2d42ed555538 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_item_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionItem(Model): + """The SAS definition item containing storage SAS definition metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The storage SAS identifier. + :vartype id: str + :ivar secret_id: The storage account SAS definition secret id. + :vartype secret_id: str + :ivar attributes: The SAS definition management attributes. + :vartype attributes: ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :ivar tags: Application specific metadata in the form of key-value pairs. + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'secret_id': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'secret_id': {'key': 'sid', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(SasDefinitionItem, self).__init__(**kwargs) + self.id = None + self.secret_id = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters.py new file mode 100644 index 000000000000..480e75a9402d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionUpdateParameters(Model): + """The SAS definition update parameters. + + :param template_uri: The SAS definition token template signed with an + arbitrary key. Tokens created according to the SAS definition will have + the same properties as the template. + :type template_uri: str + :param sas_type: The type of SAS token the SAS definition will create. + Possible values include: 'account', 'service' + :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType + :param validity_period: The validity period of SAS tokens created + according to the SAS definition. + :type validity_period: str + :param sas_definition_attributes: The attributes of the SAS definition. + :type sas_definition_attributes: + ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'template_uri': {'key': 'templateUri', 'type': 'str'}, + 'sas_type': {'key': 'sasType', 'type': 'str'}, + 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, + 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SasDefinitionUpdateParameters, self).__init__(**kwargs) + self.template_uri = kwargs.get('template_uri', None) + self.sas_type = kwargs.get('sas_type', None) + self.validity_period = kwargs.get('validity_period', None) + self.sas_definition_attributes = kwargs.get('sas_definition_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters_py3.py new file mode 100644 index 000000000000..3ed375792dc9 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/sas_definition_update_parameters_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SasDefinitionUpdateParameters(Model): + """The SAS definition update parameters. + + :param template_uri: The SAS definition token template signed with an + arbitrary key. Tokens created according to the SAS definition will have + the same properties as the template. + :type template_uri: str + :param sas_type: The type of SAS token the SAS definition will create. + Possible values include: 'account', 'service' + :type sas_type: str or ~azure.keyvault.v7_0.models.SasTokenType + :param validity_period: The validity period of SAS tokens created + according to the SAS definition. + :type validity_period: str + :param sas_definition_attributes: The attributes of the SAS definition. + :type sas_definition_attributes: + ~azure.keyvault.v7_0.models.SasDefinitionAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'template_uri': {'key': 'templateUri', 'type': 'str'}, + 'sas_type': {'key': 'sasType', 'type': 'str'}, + 'validity_period': {'key': 'validityPeriod', 'type': 'str'}, + 'sas_definition_attributes': {'key': 'attributes', 'type': 'SasDefinitionAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, template_uri: str=None, sas_type=None, validity_period: str=None, sas_definition_attributes=None, tags=None, **kwargs) -> None: + super(SasDefinitionUpdateParameters, self).__init__(**kwargs) + self.template_uri = template_uri + self.sas_type = sas_type + self.validity_period = validity_period + self.sas_definition_attributes = sas_definition_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes.py new file mode 100644 index 000000000000..9e84342bd4a6 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes import Attributes + + +class SecretAttributes(Attributes): + """The secret management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for secrets in the current vault. If it contains 'Purgeable', the + secret can be permanently deleted by a privileged user; otherwise, only + the system can purge the secret, at the end of the retention interval. + Possible values include: 'Purgeable', 'Recoverable+Purgeable', + 'Recoverable', 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecretAttributes, self).__init__(**kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes_py3.py new file mode 100644 index 000000000000..5d96228788b2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_attributes_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .attributes_py3 import Attributes + + +class SecretAttributes(Attributes): + """The secret management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: Determines whether the object is enabled. + :type enabled: bool + :param not_before: Not before date in UTC. + :type not_before: datetime + :param expires: Expiry date in UTC. + :type expires: datetime + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for secrets in the current vault. If it contains 'Purgeable', the + secret can be permanently deleted by a privileged user; otherwise, only + the system can purge the secret, at the end of the retention interval. + Possible values include: 'Purgeable', 'Recoverable+Purgeable', + 'Recoverable', 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'not_before': {'key': 'nbf', 'type': 'unix-time'}, + 'expires': {'key': 'exp', 'type': 'unix-time'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, not_before=None, expires=None, **kwargs) -> None: + super(SecretAttributes, self).__init__(enabled=enabled, not_before=not_before, expires=expires, **kwargs) + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle.py new file mode 100644 index 000000000000..80c3c2936875 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretBundle(Model): + """A secret consisting of a value, id and its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The secret value. + :type value: str + :param id: The secret id. + :type id: str + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar kid: If this is a secret backing a KV certificate, then this field + specifies the corresponding key backing the KV certificate. + :vartype kid: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a secret backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'kid': {'readonly': True}, + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SecretBundle, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.id = kwargs.get('id', None) + self.content_type = kwargs.get('content_type', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.kid = None + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle_py3.py new file mode 100644 index 000000000000..1ea21449b64b --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_bundle_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretBundle(Model): + """A secret consisting of a value, id and its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The secret value. + :type value: str + :param id: The secret id. + :type id: str + :param content_type: The content type of the secret. + :type content_type: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :ivar kid: If this is a secret backing a KV certificate, then this field + specifies the corresponding key backing the KV certificate. + :vartype kid: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a secret backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'kid': {'readonly': True}, + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'kid': {'key': 'kid', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, *, value: str=None, id: str=None, content_type: str=None, attributes=None, tags=None, **kwargs) -> None: + super(SecretBundle, self).__init__(**kwargs) + self.value = value + self.id = id + self.content_type = content_type + self.attributes = attributes + self.tags = tags + self.kid = None + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_item.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_item.py new file mode 100644 index 000000000000..5cd24113a895 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_item.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretItem(Model): + """The secret item containing secret metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Secret identifier. + :type id: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SecretItem, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.attributes = kwargs.get('attributes', None) + self.tags = kwargs.get('tags', None) + self.content_type = kwargs.get('content_type', None) + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_item_paged.py new file mode 100644 index 000000000000..c203c4f853ec --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SecretItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`SecretItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SecretItem]'} + } + + def __init__(self, *args, **kwargs): + + super(SecretItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_item_py3.py new file mode 100644 index 000000000000..3113cdb1b8a2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_item_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretItem(Model): + """The secret item containing secret metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Secret identifier. + :type id: str + :param attributes: The secret management attributes. + :type attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :ivar managed: True if the secret's lifetime is managed by key vault. If + this is a key backing a certificate, then managed will be true. + :vartype managed: bool + """ + + _validation = { + 'managed': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'managed': {'key': 'managed', 'type': 'bool'}, + } + + def __init__(self, *, id: str=None, attributes=None, tags=None, content_type: str=None, **kwargs) -> None: + super(SecretItem, self).__init__(**kwargs) + self.id = id + self.attributes = attributes + self.tags = tags + self.content_type = content_type + self.managed = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_properties.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_properties.py new file mode 100644 index 000000000000..03794579e47c --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_properties.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretProperties(Model): + """Properties of the key backing a certificate. + + :param content_type: The media type (MIME type). + :type content_type: str + """ + + _attribute_map = { + 'content_type': {'key': 'contentType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecretProperties, self).__init__(**kwargs) + self.content_type = kwargs.get('content_type', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_properties_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_properties_py3.py new file mode 100644 index 000000000000..f071d84220b8 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_properties_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretProperties(Model): + """Properties of the key backing a certificate. + + :param content_type: The media type (MIME type). + :type content_type: str + """ + + _attribute_map = { + 'content_type': {'key': 'contentType', 'type': 'str'}, + } + + def __init__(self, *, content_type: str=None, **kwargs) -> None: + super(SecretProperties, self).__init__(**kwargs) + self.content_type = content_type diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters.py new file mode 100644 index 000000000000..9e34c4259edc --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretRestoreParameters(Model): + """The secret restore parameters. + + All required parameters must be populated in order to send to Azure. + + :param secret_bundle_backup: Required. The backup blob associated with a + secret bundle. + :type secret_bundle_backup: bytes + """ + + _validation = { + 'secret_bundle_backup': {'required': True}, + } + + _attribute_map = { + 'secret_bundle_backup': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, **kwargs): + super(SecretRestoreParameters, self).__init__(**kwargs) + self.secret_bundle_backup = kwargs.get('secret_bundle_backup', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters_py3.py new file mode 100644 index 000000000000..0c81a9b890aa --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_restore_parameters_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretRestoreParameters(Model): + """The secret restore parameters. + + All required parameters must be populated in order to send to Azure. + + :param secret_bundle_backup: Required. The backup blob associated with a + secret bundle. + :type secret_bundle_backup: bytes + """ + + _validation = { + 'secret_bundle_backup': {'required': True}, + } + + _attribute_map = { + 'secret_bundle_backup': {'key': 'value', 'type': 'base64'}, + } + + def __init__(self, *, secret_bundle_backup: bytes, **kwargs) -> None: + super(SecretRestoreParameters, self).__init__(**kwargs) + self.secret_bundle_backup = secret_bundle_backup diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters.py new file mode 100644 index 000000000000..7922ff49d2fb --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretSetParameters(Model): + """The secret set parameters. + + All required parameters must be populated in order to send to Azure. + + :param value: Required. The value of the secret. + :type value: str + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + } + + def __init__(self, **kwargs): + super(SecretSetParameters, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.tags = kwargs.get('tags', None) + self.content_type = kwargs.get('content_type', None) + self.secret_attributes = kwargs.get('secret_attributes', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters_py3.py new file mode 100644 index 000000000000..358e9f865c8e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_set_parameters_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretSetParameters(Model): + """The secret set parameters. + + All required parameters must be populated in order to send to Azure. + + :param value: Required. The value of the secret. + :type value: str + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + } + + def __init__(self, *, value: str, tags=None, content_type: str=None, secret_attributes=None, **kwargs) -> None: + super(SecretSetParameters, self).__init__(**kwargs) + self.value = value + self.tags = tags + self.content_type = content_type + self.secret_attributes = secret_attributes diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters.py new file mode 100644 index 000000000000..7dcf522b59e4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretUpdateParameters(Model): + """The secret update parameters. + + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(SecretUpdateParameters, self).__init__(**kwargs) + self.content_type = kwargs.get('content_type', None) + self.secret_attributes = kwargs.get('secret_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters_py3.py new file mode 100644 index 000000000000..892189380b09 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/secret_update_parameters_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecretUpdateParameters(Model): + """The secret update parameters. + + :param content_type: Type of the secret value such as a password. + :type content_type: str + :param secret_attributes: The secret management attributes. + :type secret_attributes: ~azure.keyvault.v7_0.models.SecretAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'content_type': {'key': 'contentType', 'type': 'str'}, + 'secret_attributes': {'key': 'attributes', 'type': 'SecretAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, content_type: str=None, secret_attributes=None, tags=None, **kwargs) -> None: + super(SecretUpdateParameters, self).__init__(**kwargs) + self.content_type = content_type + self.secret_attributes = secret_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes.py new file mode 100644 index 000000000000..e241b40cce29 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountAttributes(Model): + """The storage account management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: the enabled state of the object. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for storage accounts in the current vault. If it contains + 'Purgeable' the storage account can be permanently deleted by a privileged + user; otherwise, only the system can purge the storage account, at the end + of the retention interval. Possible values include: 'Purgeable', + 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(StorageAccountAttributes, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.created = None + self.updated = None + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes_py3.py new file mode 100644 index 000000000000..6db6639ed7a9 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_attributes_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountAttributes(Model): + """The storage account management attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: the enabled state of the object. + :type enabled: bool + :ivar created: Creation time in UTC. + :vartype created: datetime + :ivar updated: Last updated time in UTC. + :vartype updated: datetime + :ivar recovery_level: Reflects the deletion recovery level currently in + effect for storage accounts in the current vault. If it contains + 'Purgeable' the storage account can be permanently deleted by a privileged + user; otherwise, only the system can purge the storage account, at the end + of the retention interval. Possible values include: 'Purgeable', + 'Recoverable+Purgeable', 'Recoverable', + 'Recoverable+ProtectedSubscription' + :vartype recovery_level: str or + ~azure.keyvault.v7_0.models.DeletionRecoveryLevel + """ + + _validation = { + 'created': {'readonly': True}, + 'updated': {'readonly': True}, + 'recovery_level': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'created': {'key': 'created', 'type': 'unix-time'}, + 'updated': {'key': 'updated', 'type': 'unix-time'}, + 'recovery_level': {'key': 'recoveryLevel', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(StorageAccountAttributes, self).__init__(**kwargs) + self.enabled = enabled + self.created = None + self.updated = None + self.recovery_level = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters.py new file mode 100644 index 000000000000..34447ca25b9f --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountCreateParameters(Model): + """The storage account create parameters. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. Storage account resource id. + :type resource_id: str + :param active_key_name: Required. Current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: Required. whether keyvault should manage the + storage account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration specified + in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage account. + :type storage_account_attributes: + ~azure.keyvault.v7_0.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'resource_id': {'required': True}, + 'active_key_name': {'required': True}, + 'auto_regenerate_key': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(StorageAccountCreateParameters, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.active_key_name = kwargs.get('active_key_name', None) + self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) + self.regeneration_period = kwargs.get('regeneration_period', None) + self.storage_account_attributes = kwargs.get('storage_account_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters_py3.py new file mode 100644 index 000000000000..8b91451de87f --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_create_parameters_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountCreateParameters(Model): + """The storage account create parameters. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. Storage account resource id. + :type resource_id: str + :param active_key_name: Required. Current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: Required. whether keyvault should manage the + storage account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration specified + in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage account. + :type storage_account_attributes: + ~azure.keyvault.v7_0.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'resource_id': {'required': True}, + 'active_key_name': {'required': True}, + 'auto_regenerate_key': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, resource_id: str, active_key_name: str, auto_regenerate_key: bool, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: + super(StorageAccountCreateParameters, self).__init__(**kwargs) + self.resource_id = resource_id + self.active_key_name = active_key_name + self.auto_regenerate_key = auto_regenerate_key + self.regeneration_period = regeneration_period + self.storage_account_attributes = storage_account_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item.py new file mode 100644 index 000000000000..ad1dedcbc60d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountItem(Model): + """The storage account item containing storage account metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Storage identifier. + :vartype id: str + :ivar resource_id: Storage account resource Id. + :vartype resource_id: str + :ivar attributes: The storage account management attributes. + :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes + :ivar tags: Application specific metadata in the form of key-value pairs. + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(StorageAccountItem, self).__init__(**kwargs) + self.id = None + self.resource_id = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_paged.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_paged.py new file mode 100644 index 000000000000..d9a373096151 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class StorageAccountItemPaged(Paged): + """ + A paging container for iterating over a list of :class:`StorageAccountItem ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[StorageAccountItem]'} + } + + def __init__(self, *args, **kwargs): + + super(StorageAccountItemPaged, self).__init__(*args, **kwargs) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_py3.py new file mode 100644 index 000000000000..7fc4ae8808b4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_item_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountItem(Model): + """The storage account item containing storage account metadata. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Storage identifier. + :vartype id: str + :ivar resource_id: Storage account resource Id. + :vartype resource_id: str + :ivar attributes: The storage account management attributes. + :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes + :ivar tags: Application specific metadata in the form of key-value pairs. + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(StorageAccountItem, self).__init__(**kwargs) + self.id = None + self.resource_id = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters.py new file mode 100644 index 000000000000..459103c575aa --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountRegenerteKeyParameters(Model): + """The storage account key regenerate parameters. + + All required parameters must be populated in order to send to Azure. + + :param key_name: Required. The storage account key name. + :type key_name: str + """ + + _validation = { + 'key_name': {'required': True}, + } + + _attribute_map = { + 'key_name': {'key': 'keyName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(StorageAccountRegenerteKeyParameters, self).__init__(**kwargs) + self.key_name = kwargs.get('key_name', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters_py3.py new file mode 100644 index 000000000000..1403108fbac0 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_regenerte_key_parameters_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountRegenerteKeyParameters(Model): + """The storage account key regenerate parameters. + + All required parameters must be populated in order to send to Azure. + + :param key_name: Required. The storage account key name. + :type key_name: str + """ + + _validation = { + 'key_name': {'required': True}, + } + + _attribute_map = { + 'key_name': {'key': 'keyName', 'type': 'str'}, + } + + def __init__(self, *, key_name: str, **kwargs) -> None: + super(StorageAccountRegenerteKeyParameters, self).__init__(**kwargs) + self.key_name = key_name diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters.py new file mode 100644 index 000000000000..9f36f6180944 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountUpdateParameters(Model): + """The storage account update parameters. + + :param active_key_name: The current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration specified + in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage account. + :type storage_account_attributes: + ~azure.keyvault.v7_0.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(StorageAccountUpdateParameters, self).__init__(**kwargs) + self.active_key_name = kwargs.get('active_key_name', None) + self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None) + self.regeneration_period = kwargs.get('regeneration_period', None) + self.storage_account_attributes = kwargs.get('storage_account_attributes', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters_py3.py new file mode 100644 index 000000000000..75a8e22369d2 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_account_update_parameters_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountUpdateParameters(Model): + """The storage account update parameters. + + :param active_key_name: The current active storage account key name. + :type active_key_name: str + :param auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :type auto_regenerate_key: bool + :param regeneration_period: The key regeneration time duration specified + in ISO-8601 format. + :type regeneration_period: str + :param storage_account_attributes: The attributes of the storage account. + :type storage_account_attributes: + ~azure.keyvault.v7_0.models.StorageAccountAttributes + :param tags: Application specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, active_key_name: str=None, auto_regenerate_key: bool=None, regeneration_period: str=None, storage_account_attributes=None, tags=None, **kwargs) -> None: + super(StorageAccountUpdateParameters, self).__init__(**kwargs) + self.active_key_name = active_key_name + self.auto_regenerate_key = auto_regenerate_key + self.regeneration_period = regeneration_period + self.storage_account_attributes = storage_account_attributes + self.tags = tags diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle.py new file mode 100644 index 000000000000..a15d7afcee03 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageBundle(Model): + """A Storage account bundle consists of key vault storage account details plus + its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The storage account id. + :vartype id: str + :ivar resource_id: The storage account resource id. + :vartype resource_id: str + :ivar active_key_name: The current active storage account key name. + :vartype active_key_name: str + :ivar auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :vartype auto_regenerate_key: bool + :ivar regeneration_period: The key regeneration time duration specified in + ISO-8601 format. + :vartype regeneration_period: str + :ivar attributes: The storage account attributes. + :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes + :ivar tags: Application specific metadata in the form of key-value pairs + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'active_key_name': {'readonly': True}, + 'auto_regenerate_key': {'readonly': True}, + 'regeneration_period': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(StorageBundle, self).__init__(**kwargs) + self.id = None + self.resource_id = None + self.active_key_name = None + self.auto_regenerate_key = None + self.regeneration_period = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle_py3.py new file mode 100644 index 000000000000..2f97dd4c92e4 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/storage_bundle_py3.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageBundle(Model): + """A Storage account bundle consists of key vault storage account details plus + its attributes. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The storage account id. + :vartype id: str + :ivar resource_id: The storage account resource id. + :vartype resource_id: str + :ivar active_key_name: The current active storage account key name. + :vartype active_key_name: str + :ivar auto_regenerate_key: whether keyvault should manage the storage + account for the user. + :vartype auto_regenerate_key: bool + :ivar regeneration_period: The key regeneration time duration specified in + ISO-8601 format. + :vartype regeneration_period: str + :ivar attributes: The storage account attributes. + :vartype attributes: ~azure.keyvault.v7_0.models.StorageAccountAttributes + :ivar tags: Application specific metadata in the form of key-value pairs + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'active_key_name': {'readonly': True}, + 'auto_regenerate_key': {'readonly': True}, + 'regeneration_period': {'readonly': True}, + 'attributes': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'active_key_name': {'key': 'activeKeyName', 'type': 'str'}, + 'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'}, + 'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'}, + 'attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(StorageBundle, self).__init__(**kwargs) + self.id = None + self.resource_id = None + self.active_key_name = None + self.auto_regenerate_key = None + self.regeneration_period = None + self.attributes = None + self.tags = None diff --git a/azure-keyvault/azure/keyvault/models/storage_restore_parameters.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/storage_restore_parameters.py rename to azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters.py diff --git a/azure-keyvault/azure/keyvault/models/storage_restore_parameters_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters_py3.py similarity index 100% rename from azure-keyvault/azure/keyvault/models/storage_restore_parameters_py3.py rename to azure-keyvault/azure/keyvault/v7_0/models/storage_restore_parameters_py3.py diff --git a/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names.py b/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names.py new file mode 100644 index 000000000000..0ff2911550df --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubjectAlternativeNames(Model): + """The subject alternate names of a X509 object. + + :param emails: Email addresses. + :type emails: list[str] + :param dns_names: Domain names. + :type dns_names: list[str] + :param upns: User principal names. + :type upns: list[str] + """ + + _attribute_map = { + 'emails': {'key': 'emails', 'type': '[str]'}, + 'dns_names': {'key': 'dns_names', 'type': '[str]'}, + 'upns': {'key': 'upns', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(SubjectAlternativeNames, self).__init__(**kwargs) + self.emails = kwargs.get('emails', None) + self.dns_names = kwargs.get('dns_names', None) + self.upns = kwargs.get('upns', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names_py3.py new file mode 100644 index 000000000000..a2870854d559 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/subject_alternative_names_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubjectAlternativeNames(Model): + """The subject alternate names of a X509 object. + + :param emails: Email addresses. + :type emails: list[str] + :param dns_names: Domain names. + :type dns_names: list[str] + :param upns: User principal names. + :type upns: list[str] + """ + + _attribute_map = { + 'emails': {'key': 'emails', 'type': '[str]'}, + 'dns_names': {'key': 'dns_names', 'type': '[str]'}, + 'upns': {'key': 'upns', 'type': '[str]'}, + } + + def __init__(self, *, emails=None, dns_names=None, upns=None, **kwargs) -> None: + super(SubjectAlternativeNames, self).__init__(**kwargs) + self.emails = emails + self.dns_names = dns_names + self.upns = upns diff --git a/azure-keyvault/azure/keyvault/v7_0/models/trigger.py b/azure-keyvault/azure/keyvault/v7_0/models/trigger.py new file mode 100644 index 000000000000..a68686f8303e --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/trigger.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Trigger(Model): + """A condition to be satisfied for an action to be executed. + + :param lifetime_percentage: Percentage of lifetime at which to trigger. + Value should be between 1 and 99. + :type lifetime_percentage: int + :param days_before_expiry: Days before expiry to attempt renewal. Value + should be between 1 and validity_in_months multiplied by 27. If + validity_in_months is 36, then value should be between 1 and 972 (36 * + 27). + :type days_before_expiry: int + """ + + _validation = { + 'lifetime_percentage': {'maximum': 99, 'minimum': 1}, + } + + _attribute_map = { + 'lifetime_percentage': {'key': 'lifetime_percentage', 'type': 'int'}, + 'days_before_expiry': {'key': 'days_before_expiry', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(Trigger, self).__init__(**kwargs) + self.lifetime_percentage = kwargs.get('lifetime_percentage', None) + self.days_before_expiry = kwargs.get('days_before_expiry', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/trigger_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/trigger_py3.py new file mode 100644 index 000000000000..38faa3471773 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/trigger_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Trigger(Model): + """A condition to be satisfied for an action to be executed. + + :param lifetime_percentage: Percentage of lifetime at which to trigger. + Value should be between 1 and 99. + :type lifetime_percentage: int + :param days_before_expiry: Days before expiry to attempt renewal. Value + should be between 1 and validity_in_months multiplied by 27. If + validity_in_months is 36, then value should be between 1 and 972 (36 * + 27). + :type days_before_expiry: int + """ + + _validation = { + 'lifetime_percentage': {'maximum': 99, 'minimum': 1}, + } + + _attribute_map = { + 'lifetime_percentage': {'key': 'lifetime_percentage', 'type': 'int'}, + 'days_before_expiry': {'key': 'days_before_expiry', 'type': 'int'}, + } + + def __init__(self, *, lifetime_percentage: int=None, days_before_expiry: int=None, **kwargs) -> None: + super(Trigger, self).__init__(**kwargs) + self.lifetime_percentage = lifetime_percentage + self.days_before_expiry = days_before_expiry diff --git a/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties.py b/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties.py new file mode 100644 index 000000000000..75d1be98db4d --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class X509CertificateProperties(Model): + """Properties of the X509 component of a certificate. + + :param subject: The subject name. Should be a valid X509 distinguished + Name. + :type subject: str + :param ekus: The enhanced key usage. + :type ekus: list[str] + :param subject_alternative_names: The subject alternative names. + :type subject_alternative_names: + ~azure.keyvault.v7_0.models.SubjectAlternativeNames + :param key_usage: List of key usages. + :type key_usage: list[str or ~azure.keyvault.v7_0.models.KeyUsageType] + :param validity_in_months: The duration that the ceritifcate is valid in + months. + :type validity_in_months: int + """ + + _validation = { + 'validity_in_months': {'minimum': 0}, + } + + _attribute_map = { + 'subject': {'key': 'subject', 'type': 'str'}, + 'ekus': {'key': 'ekus', 'type': '[str]'}, + 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, + 'key_usage': {'key': 'key_usage', 'type': '[str]'}, + 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(X509CertificateProperties, self).__init__(**kwargs) + self.subject = kwargs.get('subject', None) + self.ekus = kwargs.get('ekus', None) + self.subject_alternative_names = kwargs.get('subject_alternative_names', None) + self.key_usage = kwargs.get('key_usage', None) + self.validity_in_months = kwargs.get('validity_in_months', None) diff --git a/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties_py3.py b/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties_py3.py new file mode 100644 index 000000000000..35c93a44fe1f --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/models/x509_certificate_properties_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class X509CertificateProperties(Model): + """Properties of the X509 component of a certificate. + + :param subject: The subject name. Should be a valid X509 distinguished + Name. + :type subject: str + :param ekus: The enhanced key usage. + :type ekus: list[str] + :param subject_alternative_names: The subject alternative names. + :type subject_alternative_names: + ~azure.keyvault.v7_0.models.SubjectAlternativeNames + :param key_usage: List of key usages. + :type key_usage: list[str or ~azure.keyvault.v7_0.models.KeyUsageType] + :param validity_in_months: The duration that the ceritifcate is valid in + months. + :type validity_in_months: int + """ + + _validation = { + 'validity_in_months': {'minimum': 0}, + } + + _attribute_map = { + 'subject': {'key': 'subject', 'type': 'str'}, + 'ekus': {'key': 'ekus', 'type': '[str]'}, + 'subject_alternative_names': {'key': 'sans', 'type': 'SubjectAlternativeNames'}, + 'key_usage': {'key': 'key_usage', 'type': '[str]'}, + 'validity_in_months': {'key': 'validity_months', 'type': 'int'}, + } + + def __init__(self, *, subject: str=None, ekus=None, subject_alternative_names=None, key_usage=None, validity_in_months: int=None, **kwargs) -> None: + super(X509CertificateProperties, self).__init__(**kwargs) + self.subject = subject + self.ekus = ekus + self.subject_alternative_names = subject_alternative_names + self.key_usage = key_usage + self.validity_in_months = validity_in_months diff --git a/azure-keyvault/azure/keyvault/v7_0/version.py b/azure-keyvault/azure/keyvault/v7_0/version.py new file mode 100644 index 000000000000..3c10f7d869d7 --- /dev/null +++ b/azure-keyvault/azure/keyvault/v7_0/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "7.0" + diff --git a/azure-keyvault/azure/keyvault/version.py b/azure-keyvault/azure/keyvault/version.py index a39916c162ce..24b9de3384da 100644 --- a/azure-keyvault/azure/keyvault/version.py +++ b/azure-keyvault/azure/keyvault/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "1.0.0" +VERSION = "1.1.0" diff --git a/azure-keyvault/azure_bdist_wheel.py b/azure-keyvault/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-keyvault/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-keyvault/build.json b/azure-keyvault/build.json deleted file mode 100644 index f72d40c198f4..000000000000 --- a/azure-keyvault/build.json +++ /dev/null @@ -1,346 +0,0 @@ -{ - "autorest": [ - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4280", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": { - "typescript": "2.6.2" - }, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/jsonpath": "^0.1.29", - "@types/mocha": "5.2.0", - "@types/node": "^8.0.53", - "@types/source-map": "0.5.0", - "@types/yargs": "^8.0.2", - "@types/z-schema": "^3.16.31", - "dts-generator": "^2.1.0", - "mocha": "5.2.0", - "mocha-typescript": "1.1.14", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core", - "_integrity": null, - "_shasum": "bbdeef29b1cba440a6fe5ce238abffa0c4d9d68f", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4280", - "_from": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core", - "raw": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core", - "_where": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4280/node_modules/@microsoft.azure/autorest-core" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.5103.339507359213.personal-lock", - "options": { - "port": 65223, - "host": "2130737077", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.5103.339507359213.personal-lock:65223" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.0.21", - "dependencies": { - "dotnet-2.0.0": "^1.3.2" - }, - "optionalDependencies": {}, - "devDependencies": { - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.1.1", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_integrity": null, - "_shasum": "3ce7d3939124b31830be15e5de99b9b7768afb90", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.0.21", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.5103.339507359213.personal-lock", - "options": { - "port": 65223, - "host": "2130737077", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.5103.339507359213.personal-lock:65223" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.3.44", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "2.3.17", - "autorest": "^2.0.4225", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "_integrity": null, - "_shasum": "9b5a880a77467be33a77f002f03230d3ccc21266", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.3.44", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.5103.339507359213.personal-lock", - "options": { - "port": 65223, - "host": "2130737077", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.5103.339507359213.personal-lock:65223" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.python", - "version": "3.0.52", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "^2.5.6", - "autorest": "^2.0.4203", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python", - "_integrity": null, - "_shasum": "9b2d9412ad86807f8186297e0d8f4ac19b7a1f2e", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.python@3.0.52", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python", - "_requested": { - "type": "directory", - "where": "/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python", - "raw": "/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python", - "_where": "/root/.autorest/@microsoft.azure_autorest.python@3.0.52/node_modules/@microsoft.azure/autorest.python" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "sharedLock": { - "name": "/root/.autorest", - "exclusiveLock": { - "name": "_root_.autorest.exclusive-lock", - "options": { - "port": 45234, - "host": "2130706813", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.exclusive-lock:45234" - }, - "busyLock": { - "name": "_root_.autorest.busy-lock", - "options": { - "port": 37199, - "host": "2130756895", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.busy-lock:37199" - }, - "personalLock": { - "name": "_root_.autorest.5103.339507359213.personal-lock", - "options": { - "port": 65223, - "host": "2130737077", - "exclusive": true - }, - "pipe": "/tmp/pipe__root_.autorest.5103.339507359213.personal-lock:65223" - }, - "file": "/tmp/_root_.autorest.lock" - }, - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - } - ], - "autorest_bootstrap": {} -} \ No newline at end of file diff --git a/azure-keyvault/sdk_packaging.toml b/azure-keyvault/sdk_packaging.toml index 5c2041749c30..a8ce4869ae3b 100644 --- a/azure-keyvault/sdk_packaging.toml +++ b/azure-keyvault/sdk_packaging.toml @@ -1,5 +1,7 @@ [packaging] +auto_update = false package_name = "azure-keyvault" package_pprint_name = "Key Vault" package_doc_id = "key-vault" is_stable = false +is_arm = false diff --git a/azure-keyvault/setup.cfg b/azure-keyvault/setup.cfg index 669e94e63df3..3c6e79cf31da 100644 --- a/azure-keyvault/setup.cfg +++ b/azure-keyvault/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-nspkg \ No newline at end of file diff --git a/azure-keyvault/setup.py b/azure-keyvault/setup.py index 389f8d1575a6..ddf1892e19f8 100644 --- a/azure-keyvault/setup.py +++ b/azure-keyvault/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-keyvault" @@ -64,7 +58,7 @@ author_email='azurekeyvault@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ - 'Development Status :: 4 - Beta', + 'Development Status :: 5 - Production/Stable', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', @@ -72,15 +66,23 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', 'cryptography>=2.1.4', 'requests>=2.18.4' ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-nspkg'], + } ) diff --git a/azure-keyvault/tests/keyvault_testcase.py b/azure-keyvault/tests/keyvault_testcase.py index 01478eecf561..91c8a38deb73 100644 --- a/azure-keyvault/tests/keyvault_testcase.py +++ b/azure-keyvault/tests/keyvault_testcase.py @@ -19,3 +19,15 @@ def tearDown(self): super(KeyvaultTestCase, self).tearDown() + def _get_keyvault_client(self, api_version): + super(KeyvaultTestCase, self).setUp() + self.list_test_size = 2 + if self.is_live: + self.client = self.create_basic_client(KeyVaultClient, api_version=api_version) + else: + + def _auth_callback(server, resource, scope): + return AccessToken('Bearer', 'fake-token') + self.client = KeyVaultClient(KeyVaultAuthentication(authorization_callback=_auth_callback), api_version=api_version) + + diff --git a/azure-keyvault/tests/test_internal.py b/azure-keyvault/tests/test_internal.py index 6ac5ccfb48dd..878be9057744 100644 --- a/azure-keyvault/tests/test_internal.py +++ b/azure-keyvault/tests/test_internal.py @@ -1,13 +1,14 @@ -import unittest +import json import os import random import string -import json -import uuid import time -from azure.keyvault.custom.internal import _bytes_to_int, _int_to_bytes, _int_to_bigendian_8_bytes, \ +import unittest +import uuid + +from azure.keyvault._internal import _bytes_to_int, _int_to_bytes, _int_to_bigendian_8_bytes, \ _bstr_to_b64url, _b64_to_bstr, _b64_to_str, _str_to_b64url, _a128cbc_hs256_decrypt, _a128cbc_hs256_encrypt, \ - _RsaKey, _JwsHeader, _JweHeader, _JwsObject, _JweObject + _RsaKey, _JwsHeader, _JweHeader class EncodingTests(unittest.TestCase): diff --git a/azure-keyvault/tests/test_secrets.py b/azure-keyvault/tests/test_secrets.py index 32ba5b668230..e69ef25fa62e 100644 --- a/azure-keyvault/tests/test_secrets.py +++ b/azure-keyvault/tests/test_secrets.py @@ -29,6 +29,7 @@ def _validate_secret_list(self, secrets, expected): self.assertEqual(attributes, secret.attributes) del expected[secret.id] + @ResourceGroupPreparer() @KeyVaultPreparer() def test_secret_crud_operations(self, vault, **kwargs): diff --git a/azure-loganalytics/MANIFEST.in b/azure-loganalytics/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-loganalytics/MANIFEST.in +++ b/azure-loganalytics/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-loganalytics/README.rst b/azure-loganalytics/README.rst index f4f4204ffd17..874a0adc79f2 100644 --- a/azure-loganalytics/README.rst +++ b/azure-loganalytics/README.rst @@ -3,7 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Log Analytics Client Library. -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. diff --git a/azure-loganalytics/azure/__init__.py b/azure-loganalytics/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-loganalytics/azure/__init__.py +++ b/azure-loganalytics/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-loganalytics/azure_bdist_wheel.py b/azure-loganalytics/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-loganalytics/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-loganalytics/setup.cfg b/azure-loganalytics/setup.cfg index 669e94e63df3..3c6e79cf31da 100644 --- a/azure-loganalytics/setup.cfg +++ b/azure-loganalytics/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-nspkg \ No newline at end of file diff --git a/azure-loganalytics/setup.py b/azure-loganalytics/setup.py index 49882c7bc2ec..87ff80807710 100644 --- a/azure-loganalytics/setup.py +++ b/azure-loganalytics/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-loganalytics" @@ -76,10 +70,16 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + ]), install_requires=[ - 'msrest>=0.4.29,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-nspkg'], + } ) diff --git a/azure-mgmt-advisor/HISTORY.rst b/azure-mgmt-advisor/HISTORY.rst index 7034a2974528..d2e94fbc70c5 100644 --- a/azure-mgmt-advisor/HISTORY.rst +++ b/azure-mgmt-advisor/HISTORY.rst @@ -3,6 +3,51 @@ Release History =============== +2.0.1 (2018-10-16) +++++++++++++++++++ + +**Bugfix** + +- Fix sdist broken in 2.0.0. No code change. + +2.0.0 (2018-10-15) +++++++++++++++++++ + +**Features** + +- Model ResourceRecommendationBase has a new parameter extended_properties +- Client class can be used as a context manager to keep the underlying HTTP session open for performance + +**General Breaking changes** + +This version uses a next-generation code generator that *might* introduce breaking changes. + +- Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments. + To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments. +- Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered. + While this is not a breaking change, the distinctions are important, and are documented here: + https://docs.python.org/3/library/enum.html#others + At a glance: + + - "is" should not be used at all. + - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered. + +- New Long Running Operation: + + - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same. + - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used. + - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, + without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`. + - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`, + the response of the initial call will be returned without polling. + - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`. + - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away. + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + + 1.0.1 (2018-02-13) ++++++++++++++++++ diff --git a/azure-mgmt-advisor/MANIFEST.in b/azure-mgmt-advisor/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-advisor/MANIFEST.in +++ b/azure-mgmt-advisor/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-advisor/README.rst b/azure-mgmt-advisor/README.rst index 5946a96dcaa1..710a4d0adf42 100644 --- a/azure-mgmt-advisor/README.rst +++ b/azure-mgmt-advisor/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Advisor Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Advisor -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-advisor/azure/__init__.py b/azure-mgmt-advisor/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-advisor/azure/__init__.py +++ b/azure-mgmt-advisor/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-advisor/azure/mgmt/__init__.py b/azure-mgmt-advisor/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-advisor/azure/mgmt/__init__.py +++ b/azure-mgmt-advisor/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/advisor_management_client.py b/azure-mgmt-advisor/azure/mgmt/advisor/advisor_management_client.py index 0b48d2c719d5..0b162d69bd1b 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/advisor_management_client.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/advisor_management_client.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.service_client import ServiceClient +from msrest.service_client import SDKClient from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION @@ -52,7 +52,7 @@ def __init__( self.subscription_id = subscription_id -class AdvisorManagementClient(object): +class AdvisorManagementClient(SDKClient): """REST APIs for Azure Advisor :ivar config: Configuration for client. @@ -79,7 +79,7 @@ def __init__( self, credentials, subscription_id, base_url=None): self.config = AdvisorManagementClientConfiguration(credentials, subscription_id, base_url) - self._client = ServiceClient(self.config.credentials, self.config) + super(AdvisorManagementClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} self.api_version = '2017-04-19' diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/__init__.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/__init__.py index 63972056a984..45155f314ad3 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/__init__.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/__init__.py @@ -9,15 +9,26 @@ # regenerated. # -------------------------------------------------------------------------- -from .config_data_properties import ConfigDataProperties -from .config_data import ConfigData -from .arm_error_response_body import ARMErrorResponseBody -from .short_description import ShortDescription -from .resource_recommendation_base import ResourceRecommendationBase -from .resource import Resource -from .operation_display_info import OperationDisplayInfo -from .operation_entity import OperationEntity -from .suppression_contract import SuppressionContract +try: + from .config_data_properties_py3 import ConfigDataProperties + from .config_data_py3 import ConfigData + from .arm_error_response_body_py3 import ARMErrorResponseBody + from .short_description_py3 import ShortDescription + from .resource_recommendation_base_py3 import ResourceRecommendationBase + from .resource_py3 import Resource + from .operation_display_info_py3 import OperationDisplayInfo + from .operation_entity_py3 import OperationEntity + from .suppression_contract_py3 import SuppressionContract +except (SyntaxError, ImportError): + from .config_data_properties import ConfigDataProperties + from .config_data import ConfigData + from .arm_error_response_body import ARMErrorResponseBody + from .short_description import ShortDescription + from .resource_recommendation_base import ResourceRecommendationBase + from .resource import Resource + from .operation_display_info import OperationDisplayInfo + from .operation_entity import OperationEntity + from .suppression_contract import SuppressionContract from .config_data_paged import ConfigDataPaged from .resource_recommendation_base_paged import ResourceRecommendationBasePaged from .operation_entity_paged import OperationEntityPaged diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/advisor_management_client_enums.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/advisor_management_client_enums.py index 835a92ce544d..477dbe954da5 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/advisor_management_client_enums.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/advisor_management_client_enums.py @@ -12,7 +12,7 @@ from enum import Enum -class Category(Enum): +class Category(str, Enum): high_availability = "HighAvailability" security = "Security" @@ -20,14 +20,14 @@ class Category(Enum): cost = "Cost" -class Impact(Enum): +class Impact(str, Enum): high = "High" medium = "Medium" low = "Low" -class Risk(Enum): +class Risk(str, Enum): error = "Error" warning = "Warning" diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/arm_error_response_body.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/arm_error_response_body.py index 5bf889bbbd27..ae0fff677a8f 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/arm_error_response_body.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/arm_error_response_body.py @@ -28,7 +28,7 @@ class ARMErrorResponseBody(Model): 'code': {'key': 'code', 'type': 'str'}, } - def __init__(self, message=None, code=None): - super(ARMErrorResponseBody, self).__init__() - self.message = message - self.code = code + def __init__(self, **kwargs): + super(ARMErrorResponseBody, self).__init__(**kwargs) + self.message = kwargs.get('message', None) + self.code = kwargs.get('code', None) diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/arm_error_response_body_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/arm_error_response_body_py3.py new file mode 100644 index 000000000000..1a79f9387110 --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/arm_error_response_body_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ARMErrorResponseBody(Model): + """ARM error response body. + + :param message: Gets or sets the string that describes the error in detail + and provides debugging information. + :type message: str + :param code: Gets or sets the string that can be used to programmatically + identify the error. + :type code: str + """ + + _attribute_map = { + 'message': {'key': 'message', 'type': 'str'}, + 'code': {'key': 'code', 'type': 'str'}, + } + + def __init__(self, *, message: str=None, code: str=None, **kwargs) -> None: + super(ARMErrorResponseBody, self).__init__(**kwargs) + self.message = message + self.code = code diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data.py index 3d4039cf76d6..534a0e11eb79 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data.py @@ -32,9 +32,9 @@ class ConfigData(Model): 'properties': {'key': 'properties', 'type': 'ConfigDataProperties'}, } - def __init__(self, id=None, type=None, name=None, properties=None): - super(ConfigData, self).__init__() - self.id = id - self.type = type - self.name = name - self.properties = properties + def __init__(self, **kwargs): + super(ConfigData, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.type = kwargs.get('type', None) + self.name = kwargs.get('name', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_properties.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_properties.py index 9e5d1e0217f8..cc0303d1c606 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_properties.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_properties.py @@ -33,8 +33,8 @@ class ConfigDataProperties(Model): 'low_cpu_threshold': {'key': 'low_cpu_threshold', 'type': 'str'}, } - def __init__(self, additional_properties=None, exclude=None, low_cpu_threshold=None): - super(ConfigDataProperties, self).__init__() - self.additional_properties = additional_properties - self.exclude = exclude - self.low_cpu_threshold = low_cpu_threshold + def __init__(self, **kwargs): + super(ConfigDataProperties, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.exclude = kwargs.get('exclude', None) + self.low_cpu_threshold = kwargs.get('low_cpu_threshold', None) diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_properties_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_properties_py3.py new file mode 100644 index 000000000000..f52c01d6dafe --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_properties_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConfigDataProperties(Model): + """The list of property name/value pairs. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param exclude: Exclude the resource from Advisor evaluations. Valid + values: False (default) or True. + :type exclude: bool + :param low_cpu_threshold: Minimum percentage threshold for Advisor low CPU + utilization evaluation. Valid only for subscriptions. Valid values: 5 + (default), 10, 15 or 20. + :type low_cpu_threshold: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'exclude': {'key': 'exclude', 'type': 'bool'}, + 'low_cpu_threshold': {'key': 'low_cpu_threshold', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, exclude: bool=None, low_cpu_threshold: str=None, **kwargs) -> None: + super(ConfigDataProperties, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.exclude = exclude + self.low_cpu_threshold = low_cpu_threshold diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_py3.py new file mode 100644 index 000000000000..c8e7c45215c4 --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/config_data_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConfigData(Model): + """The Advisor configuration data structure. + + :param id: The resource Id of the configuration resource. + :type id: str + :param type: The type of the configuration resource. + :type type: str + :param name: The name of the configuration resource. + :type name: str + :param properties: The list of property name/value pairs. + :type properties: ~azure.mgmt.advisor.models.ConfigDataProperties + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'ConfigDataProperties'}, + } + + def __init__(self, *, id: str=None, type: str=None, name: str=None, properties=None, **kwargs) -> None: + super(ConfigData, self).__init__(**kwargs) + self.id = id + self.type = type + self.name = name + self.properties = properties diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_display_info.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_display_info.py index b338bd668c8e..d4f103558727 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_display_info.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_display_info.py @@ -33,9 +33,9 @@ class OperationDisplayInfo(Model): 'resource': {'key': 'resource', 'type': 'str'}, } - def __init__(self, description=None, operation=None, provider=None, resource=None): - super(OperationDisplayInfo, self).__init__() - self.description = description - self.operation = operation - self.provider = provider - self.resource = resource + def __init__(self, **kwargs): + super(OperationDisplayInfo, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.operation = kwargs.get('operation', None) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_display_info_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_display_info_py3.py new file mode 100644 index 000000000000..24ca7bb48ec2 --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_display_info_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplayInfo(Model): + """The operation supported by Advisor. + + :param description: The description of the operation. + :type description: str + :param operation: The action that users can perform, based on their + permission level. + :type operation: str + :param provider: Service provider: Microsoft Advisor. + :type provider: str + :param resource: Resource on which the operation is performed. + :type resource: str + """ + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, operation: str=None, provider: str=None, resource: str=None, **kwargs) -> None: + super(OperationDisplayInfo, self).__init__(**kwargs) + self.description = description + self.operation = operation + self.provider = provider + self.resource = resource diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_entity.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_entity.py index 974966de9aa6..9872949cbe52 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_entity.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_entity.py @@ -26,7 +26,7 @@ class OperationEntity(Model): 'display': {'key': 'display', 'type': 'OperationDisplayInfo'}, } - def __init__(self, name=None, display=None): - super(OperationEntity, self).__init__() - self.name = name - self.display = display + def __init__(self, **kwargs): + super(OperationEntity, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_entity_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_entity_py3.py new file mode 100644 index 000000000000..24c1b1b6eb82 --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/operation_entity_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationEntity(Model): + """The operation supported by Advisor. + + :param name: Operation name: {provider}/{resource}/{operation}. + :type name: str + :param display: The operation supported by Advisor. + :type display: ~azure.mgmt.advisor.models.OperationDisplayInfo + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplayInfo'}, + } + + def __init__(self, *, name: str=None, display=None, **kwargs) -> None: + super(OperationEntity, self).__init__(**kwargs) + self.name = name + self.display = display diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/resource.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/resource.py index 92c78390e734..f43f76f15a74 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/resource.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/resource.py @@ -38,8 +38,8 @@ class Resource(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self): - super(Resource, self).__init__() + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) self.id = None self.name = None self.type = None diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_py3.py new file mode 100644 index 000000000000..33023c8d186f --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """An Azure resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_recommendation_base.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_recommendation_base.py index d00353cb69c6..39a93d0b2764 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_recommendation_base.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_recommendation_base.py @@ -49,6 +49,8 @@ class ResourceRecommendationBase(Resource): :param suppression_ids: The list of snoozed and dismissed rules for the recommendation. :type suppression_ids: list[str] + :param extended_properties: Extended properties + :type extended_properties: dict[str, str] """ _validation = { @@ -71,17 +73,19 @@ class ResourceRecommendationBase(Resource): 'risk': {'key': 'properties.risk', 'type': 'str'}, 'short_description': {'key': 'properties.shortDescription', 'type': 'ShortDescription'}, 'suppression_ids': {'key': 'properties.suppressionIds', 'type': '[str]'}, + 'extended_properties': {'key': 'properties.extendedProperties', 'type': '{str}'}, } - def __init__(self, category=None, impact=None, impacted_field=None, impacted_value=None, last_updated=None, metadata=None, recommendation_type_id=None, risk=None, short_description=None, suppression_ids=None): - super(ResourceRecommendationBase, self).__init__() - self.category = category - self.impact = impact - self.impacted_field = impacted_field - self.impacted_value = impacted_value - self.last_updated = last_updated - self.metadata = metadata - self.recommendation_type_id = recommendation_type_id - self.risk = risk - self.short_description = short_description - self.suppression_ids = suppression_ids + def __init__(self, **kwargs): + super(ResourceRecommendationBase, self).__init__(**kwargs) + self.category = kwargs.get('category', None) + self.impact = kwargs.get('impact', None) + self.impacted_field = kwargs.get('impacted_field', None) + self.impacted_value = kwargs.get('impacted_value', None) + self.last_updated = kwargs.get('last_updated', None) + self.metadata = kwargs.get('metadata', None) + self.recommendation_type_id = kwargs.get('recommendation_type_id', None) + self.risk = kwargs.get('risk', None) + self.short_description = kwargs.get('short_description', None) + self.suppression_ids = kwargs.get('suppression_ids', None) + self.extended_properties = kwargs.get('extended_properties', None) diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_recommendation_base_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_recommendation_base_py3.py new file mode 100644 index 000000000000..39bfd16bafef --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/resource_recommendation_base_py3.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ResourceRecommendationBase(Resource): + """Advisor Recommendation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param category: The category of the recommendation. Possible values + include: 'HighAvailability', 'Security', 'Performance', 'Cost' + :type category: str or ~azure.mgmt.advisor.models.Category + :param impact: The business impact of the recommendation. Possible values + include: 'High', 'Medium', 'Low' + :type impact: str or ~azure.mgmt.advisor.models.Impact + :param impacted_field: The resource type identified by Advisor. + :type impacted_field: str + :param impacted_value: The resource identified by Advisor. + :type impacted_value: str + :param last_updated: The most recent time that Advisor checked the + validity of the recommendation. + :type last_updated: datetime + :param metadata: The recommendation metadata. + :type metadata: dict[str, object] + :param recommendation_type_id: The recommendation-type GUID. + :type recommendation_type_id: str + :param risk: The potential risk of not implementing the recommendation. + Possible values include: 'Error', 'Warning', 'None' + :type risk: str or ~azure.mgmt.advisor.models.Risk + :param short_description: A summary of the recommendation. + :type short_description: ~azure.mgmt.advisor.models.ShortDescription + :param suppression_ids: The list of snoozed and dismissed rules for the + recommendation. + :type suppression_ids: list[str] + :param extended_properties: Extended properties + :type extended_properties: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'category': {'key': 'properties.category', 'type': 'str'}, + 'impact': {'key': 'properties.impact', 'type': 'str'}, + 'impacted_field': {'key': 'properties.impactedField', 'type': 'str'}, + 'impacted_value': {'key': 'properties.impactedValue', 'type': 'str'}, + 'last_updated': {'key': 'properties.lastUpdated', 'type': 'iso-8601'}, + 'metadata': {'key': 'properties.metadata', 'type': '{object}'}, + 'recommendation_type_id': {'key': 'properties.recommendationTypeId', 'type': 'str'}, + 'risk': {'key': 'properties.risk', 'type': 'str'}, + 'short_description': {'key': 'properties.shortDescription', 'type': 'ShortDescription'}, + 'suppression_ids': {'key': 'properties.suppressionIds', 'type': '[str]'}, + 'extended_properties': {'key': 'properties.extendedProperties', 'type': '{str}'}, + } + + def __init__(self, *, category=None, impact=None, impacted_field: str=None, impacted_value: str=None, last_updated=None, metadata=None, recommendation_type_id: str=None, risk=None, short_description=None, suppression_ids=None, extended_properties=None, **kwargs) -> None: + super(ResourceRecommendationBase, self).__init__(**kwargs) + self.category = category + self.impact = impact + self.impacted_field = impacted_field + self.impacted_value = impacted_value + self.last_updated = last_updated + self.metadata = metadata + self.recommendation_type_id = recommendation_type_id + self.risk = risk + self.short_description = short_description + self.suppression_ids = suppression_ids + self.extended_properties = extended_properties diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/short_description.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/short_description.py index ba93541a0671..f2c722033a30 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/short_description.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/short_description.py @@ -26,7 +26,7 @@ class ShortDescription(Model): 'solution': {'key': 'solution', 'type': 'str'}, } - def __init__(self, problem=None, solution=None): - super(ShortDescription, self).__init__() - self.problem = problem - self.solution = solution + def __init__(self, **kwargs): + super(ShortDescription, self).__init__(**kwargs) + self.problem = kwargs.get('problem', None) + self.solution = kwargs.get('solution', None) diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/short_description_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/short_description_py3.py new file mode 100644 index 000000000000..ed3b7bd29aa2 --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/short_description_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ShortDescription(Model): + """A summary of the recommendation. + + :param problem: The issue or opportunity identified by the recommendation. + :type problem: str + :param solution: The remediation action suggested by the recommendation. + :type solution: str + """ + + _attribute_map = { + 'problem': {'key': 'problem', 'type': 'str'}, + 'solution': {'key': 'solution', 'type': 'str'}, + } + + def __init__(self, *, problem: str=None, solution: str=None, **kwargs) -> None: + super(ShortDescription, self).__init__(**kwargs) + self.problem = problem + self.solution = solution diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/suppression_contract.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/suppression_contract.py index 358d6c239e36..ff9cc1012dbd 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/models/suppression_contract.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/suppression_contract.py @@ -45,7 +45,7 @@ class SuppressionContract(Resource): 'ttl': {'key': 'properties.ttl', 'type': 'str'}, } - def __init__(self, suppression_id=None, ttl=None): - super(SuppressionContract, self).__init__() - self.suppression_id = suppression_id - self.ttl = ttl + def __init__(self, **kwargs): + super(SuppressionContract, self).__init__(**kwargs) + self.suppression_id = kwargs.get('suppression_id', None) + self.ttl = kwargs.get('ttl', None) diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/models/suppression_contract_py3.py b/azure-mgmt-advisor/azure/mgmt/advisor/models/suppression_contract_py3.py new file mode 100644 index 000000000000..de2985eea108 --- /dev/null +++ b/azure-mgmt-advisor/azure/mgmt/advisor/models/suppression_contract_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class SuppressionContract(Resource): + """The details of the snoozed or dismissed rule; for example, the duration, + name, and GUID associated with the rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param suppression_id: The GUID of the suppression. + :type suppression_id: str + :param ttl: The duration for which the suppression is valid. + :type ttl: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'suppression_id': {'key': 'properties.suppressionId', 'type': 'str'}, + 'ttl': {'key': 'properties.ttl', 'type': 'str'}, + } + + def __init__(self, *, suppression_id: str=None, ttl: str=None, **kwargs) -> None: + super(SuppressionContract, self).__init__(**kwargs) + self.suppression_id = suppression_id + self.ttl = ttl diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/operations/configurations_operations.py b/azure-mgmt-advisor/azure/mgmt/advisor/operations/configurations_operations.py index 9a03137ea165..93978f2d8cbe 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/operations/configurations_operations.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/operations/configurations_operations.py @@ -22,7 +22,7 @@ class ConfigurationsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: The version of the API to be used with the client request. Constant value: "2017-04-19". """ @@ -58,7 +58,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/configurations' + url = self.list_by_subscription.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -103,6 +102,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/configurations'} def create_in_subscription( self, config_contract, custom_headers=None, raw=False, **operation_config): @@ -125,7 +125,7 @@ def create_in_subscription( :raises: :class:`CloudError` """ # Construct URL - url = '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/configurations' + url = self.create_in_subscription.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -137,6 +137,7 @@ def create_in_subscription( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -149,9 +150,8 @@ def create_in_subscription( body_content = self._serialize.body(config_contract, 'ConfigData') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204, 400]: exp = CloudError(response) @@ -168,6 +168,7 @@ def create_in_subscription( return client_raw_response return deserialized + create_in_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/configurations'} def list_by_resource_group( self, resource_group, custom_headers=None, raw=False, **operation_config): @@ -189,7 +190,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Advisor/configurations' + url = self.list_by_resource_group.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), 'resourceGroup': self._serialize.url("resource_group", resource_group, 'str') @@ -206,7 +207,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -215,9 +216,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -235,6 +235,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Advisor/configurations'} def create_in_resource_group( self, config_contract, resource_group, custom_headers=None, raw=False, **operation_config): @@ -256,7 +257,7 @@ def create_in_resource_group( :raises: :class:`CloudError` """ # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Advisor/configurations' + url = self.create_in_resource_group.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), 'resourceGroup': self._serialize.url("resource_group", resource_group, 'str') @@ -269,6 +270,7 @@ def create_in_resource_group( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -281,9 +283,8 @@ def create_in_resource_group( body_content = self._serialize.body(config_contract, 'ConfigData') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204, 400]: exp = CloudError(response) @@ -300,3 +301,4 @@ def create_in_resource_group( return client_raw_response return deserialized + create_in_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Advisor/configurations'} diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/operations/operations.py b/azure-mgmt-advisor/azure/mgmt/advisor/operations/operations.py index b1c46006013e..25ba76f97f97 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/operations/operations.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/operations/operations.py @@ -22,7 +22,7 @@ class Operations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: The version of the API to be used with the client request. Constant value: "2017-04-19". """ @@ -55,7 +55,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/providers/Microsoft.Advisor/operations' + url = self.list.metadata['url'] # Construct parameters query_parameters = {} @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -96,3 +95,4 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/providers/Microsoft.Advisor/operations'} diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/operations/recommendations_operations.py b/azure-mgmt-advisor/azure/mgmt/advisor/operations/recommendations_operations.py index fc25a7a6ef45..7eb288b64270 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/operations/recommendations_operations.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/operations/recommendations_operations.py @@ -12,8 +12,6 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller from .. import models @@ -24,7 +22,7 @@ class RecommendationsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: The version of the API to be used with the client request. Constant value: "2017-04-19". """ @@ -55,7 +53,7 @@ def generate( :raises: :class:`CloudError` """ # Construct URL - url = '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/generateRecommendations' + url = self.generate.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -67,7 +65,6 @@ def generate( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,8 +73,8 @@ def generate( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: exp = CloudError(response) @@ -91,12 +88,29 @@ def generate( 'Retry-After': 'str', }) return client_raw_response + generate.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/generateRecommendations'} - - def _get_generate_status_initial( + def get_generate_status( self, operation_id, custom_headers=None, raw=False, **operation_config): + """Retrieves the status of the recommendation computation or generation + process. Invoke this API after calling the generation recommendation. + The URI of this API is returned in the Location field of the response + header. + + :param operation_id: The operation ID, which can be found from the + Location field in the generate recommendation response header. + :type operation_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ # Construct URL - url = '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/generateRecommendations/{operationId}' + url = self.get_generate_status.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), 'operationId': self._serialize.url("operation_id", operation_id, 'str') @@ -109,7 +123,6 @@ def _get_generate_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -118,8 +131,8 @@ def _get_generate_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -129,66 +142,7 @@ def _get_generate_status_initial( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - - def get_generate_status( - self, operation_id, custom_headers=None, raw=False, **operation_config): - """Retrieves the status of the recommendation computation or generation - process. Invoke this API after calling the generation recommendation. - The URI of this API is returned in the Location field of the response - header. - - :param operation_id: The operation ID, which can be found from the - Location field in the generate recommendation response header. - :type operation_id: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true - :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ - raw_result = self._get_generate_status_initial( - operation_id=operation_id, - custom_headers=custom_headers, - raw=True, - **operation_config - ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) - - def get_long_running_output(response): - - if response.status_code not in [202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - - long_running_operation_timeout = operation_config.get( - 'long_running_operation_timeout', - self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + get_generate_status.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/generateRecommendations/{operationId}'} def list( self, filter=None, top=None, skip_token=None, custom_headers=None, raw=False, **operation_config): @@ -217,7 +171,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/recommendations' + url = self.list.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -239,7 +193,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -248,9 +202,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -268,6 +221,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/recommendations'} def get( self, resource_uri, recommendation_id, custom_headers=None, raw=False, **operation_config): @@ -289,7 +243,7 @@ def get( :raises: :class:`CloudError` """ # Construct URL - url = '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}' + url = self.get.metadata['url'] path_format_arguments = { 'resourceUri': self._serialize.url("resource_uri", resource_uri, 'str'), 'recommendationId': self._serialize.url("recommendation_id", recommendation_id, 'str') @@ -302,7 +256,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -311,8 +265,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -329,3 +283,4 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}'} diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/operations/suppressions_operations.py b/azure-mgmt-advisor/azure/mgmt/advisor/operations/suppressions_operations.py index 6c7806bc57e9..e9bdb9853ff6 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/operations/suppressions_operations.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/operations/suppressions_operations.py @@ -22,7 +22,7 @@ class SuppressionsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. + :param deserializer: An object model deserializer. :ivar api_version: The version of the API to be used with the client request. Constant value: "2017-04-19". """ @@ -59,7 +59,7 @@ def get( :raises: :class:`CloudError` """ # Construct URL - url = '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}/suppressions/{name}' + url = self.get.metadata['url'] path_format_arguments = { 'resourceUri': self._serialize.url("resource_uri", resource_uri, 'str'), 'recommendationId': self._serialize.url("recommendation_id", recommendation_id, 'str'), @@ -73,7 +73,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,8 +82,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -100,6 +100,7 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}/suppressions/{name}'} def create( self, resource_uri, recommendation_id, name, suppression_id=None, ttl=None, custom_headers=None, raw=False, **operation_config): @@ -132,7 +133,7 @@ def create( suppression_contract = models.SuppressionContract(suppression_id=suppression_id, ttl=ttl) # Construct URL - url = '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}/suppressions/{name}' + url = self.create.metadata['url'] path_format_arguments = { 'resourceUri': self._serialize.url("resource_uri", resource_uri, 'str'), 'recommendationId': self._serialize.url("recommendation_id", recommendation_id, 'str'), @@ -146,6 +147,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -158,9 +160,8 @@ def create( body_content = self._serialize.body(suppression_contract, 'SuppressionContract') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -177,6 +178,7 @@ def create( return client_raw_response return deserialized + create.metadata = {'url': '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}/suppressions/{name}'} def delete( self, resource_uri, recommendation_id, name, custom_headers=None, raw=False, **operation_config): @@ -201,7 +203,7 @@ def delete( :raises: :class:`CloudError` """ # Construct URL - url = '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}/suppressions/{name}' + url = self.delete.metadata['url'] path_format_arguments = { 'resourceUri': self._serialize.url("resource_uri", resource_uri, 'str'), 'recommendationId': self._serialize.url("recommendation_id", recommendation_id, 'str'), @@ -215,7 +217,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -224,8 +225,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -235,6 +236,7 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/{resourceUri}/providers/Microsoft.Advisor/recommendations/{recommendationId}/suppressions/{name}'} def list( self, top=None, skip_token=None, custom_headers=None, raw=False, **operation_config): @@ -262,7 +264,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/suppressions' + url = self.list.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -282,7 +284,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -291,9 +293,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -311,3 +312,4 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/suppressions'} diff --git a/azure-mgmt-advisor/azure/mgmt/advisor/version.py b/azure-mgmt-advisor/azure/mgmt/advisor/version.py index 44e69c49c178..cb253c7db0b2 100644 --- a/azure-mgmt-advisor/azure/mgmt/advisor/version.py +++ b/azure-mgmt-advisor/azure/mgmt/advisor/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "1.0.1" +VERSION = "2.0.1" diff --git a/azure-mgmt-advisor/azure_bdist_wheel.py b/azure-mgmt-advisor/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-advisor/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-advisor/sdk_packaging.toml b/azure-mgmt-advisor/sdk_packaging.toml new file mode 100644 index 000000000000..443082b5d776 --- /dev/null +++ b/azure-mgmt-advisor/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-advisor" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Advisor" +package_doc_id = "advisor" +is_stable = true +is_arm = true diff --git a/azure-mgmt-advisor/setup.cfg b/azure-mgmt-advisor/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-advisor/setup.cfg +++ b/azure-mgmt-advisor/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-advisor/setup.py b/azure-mgmt-advisor/setup.py index 0d889dd9d886..b762f21eae88 100644 --- a/azure-mgmt-advisor/setup.py +++ b/azure-mgmt-advisor/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-advisor" @@ -64,7 +58,7 @@ author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ - 'Development Status :: 4 - Beta', + 'Development Status :: 5 - Production/Stable', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-alertsmanagement/HISTORY.rst b/azure-mgmt-alertsmanagement/HISTORY.rst new file mode 100644 index 000000000000..2719b1b9c080 --- /dev/null +++ b/azure-mgmt-alertsmanagement/HISTORY.rst @@ -0,0 +1,9 @@ +.. :changelog: + +Release History +=============== + +0.1.0 (2018-09-17) +++++++++++++++++++ + +* Initial Release diff --git a/azure-mgmt-alertsmanagement/MANIFEST.in b/azure-mgmt-alertsmanagement/MANIFEST.in new file mode 100644 index 000000000000..bb37a2723dae --- /dev/null +++ b/azure-mgmt-alertsmanagement/MANIFEST.in @@ -0,0 +1 @@ +include *.rst diff --git a/azure-mgmt-alertsmanagement/README.rst b/azure-mgmt-alertsmanagement/README.rst new file mode 100644 index 000000000000..d22a2c65319f --- /dev/null +++ b/azure-mgmt-alertsmanagement/README.rst @@ -0,0 +1,49 @@ +Microsoft Azure SDK for Python +============================== + +This is the Microsoft Azure Alerts Management Client Library. + +Azure Resource Manager (ARM) is the next generation of management APIs that +replace the old Azure Service Management (ASM). + +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For the older Azure Service Management (ASM) libraries, see +`azure-servicemanagement-legacy `__ library. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. + + +Compatibility +============= + +**IMPORTANT**: If you have an earlier version of the azure package +(version < 1.0), you should uninstall it before installing this package. + +You can check the version using pip: + +.. code:: shell + + pip freeze + +If you see azure==0.11.0 (or any version below 1.0), uninstall it first: + +.. code:: shell + + pip uninstall azure + + +Usage +===== + +For code examples, see `Alerts Management +`__ +on docs.microsoft.com. + + +Provide Feedback +================ + +If you encounter any bugs or have suggestions, please file an issue in the +`Issues `__ +section of the project. diff --git a/azure-mgmt-alertsmanagement/azure/__init__.py b/azure-mgmt-alertsmanagement/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/__init__.py b/azure-mgmt-alertsmanagement/azure/mgmt/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/__init__.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/__init__.py new file mode 100644 index 000000000000..5512ab09648e --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/__init__.py @@ -0,0 +1,18 @@ +# 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 .alerts_management_client import AlertsManagementClient +from .version import VERSION + +__all__ = ['AlertsManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/alerts_management_client.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/alerts_management_client.py new file mode 100644 index 000000000000..735b0c12b85c --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/alerts_management_client.py @@ -0,0 +1,95 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.operations import Operations +from .operations.alerts_operations import AlertsOperations +from .operations.smart_groups_operations import SmartGroupsOperations +from . import models + + +class AlertsManagementClientConfiguration(AzureConfiguration): + """Configuration for AlertsManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Subscription credentials which uniquely identify + Microsoft Azure subscription. The subscription ID forms part of the URI + for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'http://localhost' + + super(AlertsManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-alertsmanagement/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class AlertsManagementClient(SDKClient): + """AlertsManagement Client + + :ivar config: Configuration for client. + :vartype config: AlertsManagementClientConfiguration + + :ivar operations: Operations operations + :vartype operations: azure.mgmt.alertsmanagement.operations.Operations + :ivar alerts: Alerts operations + :vartype alerts: azure.mgmt.alertsmanagement.operations.AlertsOperations + :ivar smart_groups: SmartGroups operations + :vartype smart_groups: azure.mgmt.alertsmanagement.operations.SmartGroupsOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Subscription credentials which uniquely identify + Microsoft Azure subscription. The subscription ID forms part of the URI + for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = AlertsManagementClientConfiguration(credentials, subscription_id, base_url) + super(AlertsManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2018-05-05' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.alerts = AlertsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.smart_groups = SmartGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/__init__.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/__init__.py new file mode 100644 index 000000000000..b5d44aef16b9 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/__init__.py @@ -0,0 +1,100 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation + from .resource_py3 import Resource + from .essentials_py3 import Essentials + from .alert_properties_py3 import AlertProperties + from .alert_py3 import Alert + from .alert_modification_item_py3 import AlertModificationItem + from .alert_modification_properties_py3 import AlertModificationProperties + from .alert_modification_py3 import AlertModification + from .smart_group_modification_item_py3 import SmartGroupModificationItem + from .smart_group_modification_properties_py3 import SmartGroupModificationProperties + from .smart_group_modification_py3 import SmartGroupModification + from .alerts_summary_group_item_py3 import AlertsSummaryGroupItem + from .alerts_summary_group_py3 import AlertsSummaryGroup + from .alerts_summary_py3 import AlertsSummary + from .smart_group_aggregated_property_py3 import SmartGroupAggregatedProperty + from .smart_group_py3 import SmartGroup + from .smart_groups_list_py3 import SmartGroupsList +except (SyntaxError, ImportError): + from .operation_display import OperationDisplay + from .operation import Operation + from .resource import Resource + from .essentials import Essentials + from .alert_properties import AlertProperties + from .alert import Alert + from .alert_modification_item import AlertModificationItem + from .alert_modification_properties import AlertModificationProperties + from .alert_modification import AlertModification + from .smart_group_modification_item import SmartGroupModificationItem + from .smart_group_modification_properties import SmartGroupModificationProperties + from .smart_group_modification import SmartGroupModification + from .alerts_summary_group_item import AlertsSummaryGroupItem + from .alerts_summary_group import AlertsSummaryGroup + from .alerts_summary import AlertsSummary + from .smart_group_aggregated_property import SmartGroupAggregatedProperty + from .smart_group import SmartGroup + from .smart_groups_list import SmartGroupsList +from .operation_paged import OperationPaged +from .alert_paged import AlertPaged +from .alerts_management_client_enums import ( + Severity, + SignalType, + AlertState, + MonitorCondition, + MonitorService, + AlertModificationEvent, + SmartGroupModificationEvent, + State, + TimeRange, + AlertsSortByFields, + AlertsSummaryGroupByFields, + SmartGroupsSortByFields, +) + +__all__ = [ + 'OperationDisplay', + 'Operation', + 'Resource', + 'Essentials', + 'AlertProperties', + 'Alert', + 'AlertModificationItem', + 'AlertModificationProperties', + 'AlertModification', + 'SmartGroupModificationItem', + 'SmartGroupModificationProperties', + 'SmartGroupModification', + 'AlertsSummaryGroupItem', + 'AlertsSummaryGroup', + 'AlertsSummary', + 'SmartGroupAggregatedProperty', + 'SmartGroup', + 'SmartGroupsList', + 'OperationPaged', + 'AlertPaged', + 'Severity', + 'SignalType', + 'AlertState', + 'MonitorCondition', + 'MonitorService', + 'AlertModificationEvent', + 'SmartGroupModificationEvent', + 'State', + 'TimeRange', + 'AlertsSortByFields', + 'AlertsSummaryGroupByFields', + 'SmartGroupsSortByFields', +] diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert.py new file mode 100644 index 000000000000..634c2c747b17 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert.py @@ -0,0 +1,46 @@ +# 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 .resource import Resource + + +class Alert(Resource): + """An alert created in alert management service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param properties: + :type properties: ~azure.mgmt.alertsmanagement.models.AlertProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AlertProperties'}, + } + + def __init__(self, **kwargs): + super(Alert, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification.py new file mode 100644 index 000000000000..e2d77167596c --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class AlertModification(Resource): + """Alert Modification details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param properties: + :type properties: + ~azure.mgmt.alertsmanagement.models.AlertModificationProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AlertModificationProperties'}, + } + + def __init__(self, **kwargs): + super(AlertModification, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_item.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_item.py new file mode 100644 index 000000000000..50915b06ce40 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_item.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertModificationItem(Model): + """Alert modification item. + + :param modification_event: Reason for the modification. Possible values + include: 'AlertCreated', 'StateChange', 'MonitorConditionChange' + :type modification_event: str or + ~azure.mgmt.alertsmanagement.models.AlertModificationEvent + :param old_value: Old value + :type old_value: str + :param new_value: New value + :type new_value: str + :param modified_at: Modified date and time + :type modified_at: str + :param modified_by: Modified user details (Principal client name) + :type modified_by: str + :param comments: Modification comments + :type comments: str + :param description: Description of the modification + :type description: str + """ + + _attribute_map = { + 'modification_event': {'key': 'modificationEvent', 'type': 'AlertModificationEvent'}, + 'old_value': {'key': 'oldValue', 'type': 'str'}, + 'new_value': {'key': 'newValue', 'type': 'str'}, + 'modified_at': {'key': 'modifiedAt', 'type': 'str'}, + 'modified_by': {'key': 'modifiedBy', 'type': 'str'}, + 'comments': {'key': 'comments', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AlertModificationItem, self).__init__(**kwargs) + self.modification_event = kwargs.get('modification_event', None) + self.old_value = kwargs.get('old_value', None) + self.new_value = kwargs.get('new_value', None) + self.modified_at = kwargs.get('modified_at', None) + self.modified_by = kwargs.get('modified_by', None) + self.comments = kwargs.get('comments', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_item_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_item_py3.py new file mode 100644 index 000000000000..b051daad6d2a --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_item_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertModificationItem(Model): + """Alert modification item. + + :param modification_event: Reason for the modification. Possible values + include: 'AlertCreated', 'StateChange', 'MonitorConditionChange' + :type modification_event: str or + ~azure.mgmt.alertsmanagement.models.AlertModificationEvent + :param old_value: Old value + :type old_value: str + :param new_value: New value + :type new_value: str + :param modified_at: Modified date and time + :type modified_at: str + :param modified_by: Modified user details (Principal client name) + :type modified_by: str + :param comments: Modification comments + :type comments: str + :param description: Description of the modification + :type description: str + """ + + _attribute_map = { + 'modification_event': {'key': 'modificationEvent', 'type': 'AlertModificationEvent'}, + 'old_value': {'key': 'oldValue', 'type': 'str'}, + 'new_value': {'key': 'newValue', 'type': 'str'}, + 'modified_at': {'key': 'modifiedAt', 'type': 'str'}, + 'modified_by': {'key': 'modifiedBy', 'type': 'str'}, + 'comments': {'key': 'comments', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, modification_event=None, old_value: str=None, new_value: str=None, modified_at: str=None, modified_by: str=None, comments: str=None, description: str=None, **kwargs) -> None: + super(AlertModificationItem, self).__init__(**kwargs) + self.modification_event = modification_event + self.old_value = old_value + self.new_value = new_value + self.modified_at = modified_at + self.modified_by = modified_by + self.comments = comments + self.description = description diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_properties.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_properties.py new file mode 100644 index 000000000000..c1d1b8123ecd --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_properties.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertModificationProperties(Model): + """Properties of the alert modification item. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar alert_id: Unique Id of the alert for which the history is being + retrieved + :vartype alert_id: str + :param modifications: Modification details + :type modifications: + list[~azure.mgmt.alertsmanagement.models.AlertModificationItem] + """ + + _validation = { + 'alert_id': {'readonly': True}, + } + + _attribute_map = { + 'alert_id': {'key': 'alertId', 'type': 'str'}, + 'modifications': {'key': 'modifications', 'type': '[AlertModificationItem]'}, + } + + def __init__(self, **kwargs): + super(AlertModificationProperties, self).__init__(**kwargs) + self.alert_id = None + self.modifications = kwargs.get('modifications', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_properties_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_properties_py3.py new file mode 100644 index 000000000000..51e67637a07a --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_properties_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertModificationProperties(Model): + """Properties of the alert modification item. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar alert_id: Unique Id of the alert for which the history is being + retrieved + :vartype alert_id: str + :param modifications: Modification details + :type modifications: + list[~azure.mgmt.alertsmanagement.models.AlertModificationItem] + """ + + _validation = { + 'alert_id': {'readonly': True}, + } + + _attribute_map = { + 'alert_id': {'key': 'alertId', 'type': 'str'}, + 'modifications': {'key': 'modifications', 'type': '[AlertModificationItem]'}, + } + + def __init__(self, *, modifications=None, **kwargs) -> None: + super(AlertModificationProperties, self).__init__(**kwargs) + self.alert_id = None + self.modifications = modifications diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_py3.py new file mode 100644 index 000000000000..b7cae8114091 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_modification_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class AlertModification(Resource): + """Alert Modification details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param properties: + :type properties: + ~azure.mgmt.alertsmanagement.models.AlertModificationProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AlertModificationProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(AlertModification, self).__init__(**kwargs) + self.properties = properties diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_paged.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_paged.py new file mode 100644 index 000000000000..2ae2c88ee2e1 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AlertPaged(Paged): + """ + A paging container for iterating over a list of :class:`Alert ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Alert]'} + } + + def __init__(self, *args, **kwargs): + + super(AlertPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_properties.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_properties.py new file mode 100644 index 000000000000..a8c7b761aba5 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertProperties(Model): + """Alert property bag. + + :param essentials: + :type essentials: ~azure.mgmt.alertsmanagement.models.Essentials + :param context: + :type context: object + :param egress_config: + :type egress_config: object + """ + + _attribute_map = { + 'essentials': {'key': 'essentials', 'type': 'Essentials'}, + 'context': {'key': 'context', 'type': 'object'}, + 'egress_config': {'key': 'egressConfig', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(AlertProperties, self).__init__(**kwargs) + self.essentials = kwargs.get('essentials', None) + self.context = kwargs.get('context', None) + self.egress_config = kwargs.get('egress_config', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_properties_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_properties_py3.py new file mode 100644 index 000000000000..a6c9cf43db24 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertProperties(Model): + """Alert property bag. + + :param essentials: + :type essentials: ~azure.mgmt.alertsmanagement.models.Essentials + :param context: + :type context: object + :param egress_config: + :type egress_config: object + """ + + _attribute_map = { + 'essentials': {'key': 'essentials', 'type': 'Essentials'}, + 'context': {'key': 'context', 'type': 'object'}, + 'egress_config': {'key': 'egressConfig', 'type': 'object'}, + } + + def __init__(self, *, essentials=None, context=None, egress_config=None, **kwargs) -> None: + super(AlertProperties, self).__init__(**kwargs) + self.essentials = essentials + self.context = context + self.egress_config = egress_config diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_py3.py new file mode 100644 index 000000000000..4068ed33b63a --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alert_py3.py @@ -0,0 +1,46 @@ +# 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 .resource_py3 import Resource + + +class Alert(Resource): + """An alert created in alert management service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param properties: + :type properties: ~azure.mgmt.alertsmanagement.models.AlertProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AlertProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(Alert, self).__init__(**kwargs) + self.properties = properties diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_management_client_enums.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_management_client_enums.py new file mode 100644 index 000000000000..f3295fc6ef88 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_management_client_enums.py @@ -0,0 +1,122 @@ +# 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 enum import Enum + + +class Severity(str, Enum): + + sev0 = "Sev0" + sev1 = "Sev1" + sev2 = "Sev2" + sev3 = "Sev3" + sev4 = "Sev4" + + +class SignalType(str, Enum): + + metric = "Metric" + log = "Log" + unknown = "Unknown" + + +class AlertState(str, Enum): + + new = "New" + acknowledged = "Acknowledged" + closed = "Closed" + + +class MonitorCondition(str, Enum): + + fired = "Fired" + resolved = "Resolved" + + +class MonitorService(str, Enum): + + application_insights = "Application Insights" + activity_log_administrative = "ActivityLog Administrative" + activity_log_security = "ActivityLog Security" + activity_log_recommendation = "ActivityLog Recommendation" + activity_log_policy = "ActivityLog Policy" + activity_log_autoscale = "ActivityLog Autoscale" + log_analytics = "Log Analytics" + nagios = "Nagios" + platform = "Platform" + scom = "SCOM" + service_health = "ServiceHealth" + smart_detector = "SmartDetector" + vm_insights = "VM Insights" + zabbix = "Zabbix" + + +class AlertModificationEvent(str, Enum): + + alert_created = "AlertCreated" + state_change = "StateChange" + monitor_condition_change = "MonitorConditionChange" + + +class SmartGroupModificationEvent(str, Enum): + + smart_group_created = "SmartGroupCreated" + state_change = "StateChange" + alert_added = "AlertAdded" + alert_removed = "AlertRemoved" + + +class State(str, Enum): + + new = "New" + acknowledged = "Acknowledged" + closed = "Closed" + + +class TimeRange(str, Enum): + + oneh = "1h" + oned = "1d" + sevend = "7d" + three_zerod = "30d" + + +class AlertsSortByFields(str, Enum): + + name = "name" + severity = "severity" + alert_state = "alertState" + monitor_condition = "monitorCondition" + target_resource = "targetResource" + target_resource_name = "targetResourceName" + target_resource_group = "targetResourceGroup" + target_resource_type = "targetResourceType" + start_date_time = "startDateTime" + last_modified_date_time = "lastModifiedDateTime" + + +class AlertsSummaryGroupByFields(str, Enum): + + severity = "severity" + alert_state = "alertState" + monitor_condition = "monitorCondition" + monitor_service = "monitorService" + signal_type = "signalType" + alert_rule = "alertRule" + + +class SmartGroupsSortByFields(str, Enum): + + alerts_count = "alertsCount" + state = "state" + severity = "severity" + start_date_time = "startDateTime" + last_modified_date_time = "lastModifiedDateTime" diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary.py new file mode 100644 index 000000000000..9521d5cb5d32 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary.py @@ -0,0 +1,46 @@ +# 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 .resource import Resource + + +class AlertsSummary(Resource): + """Summary of alerts based on the input filters and 'groupby' parameters. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param properties: + :type properties: ~azure.mgmt.alertsmanagement.models.AlertsSummaryGroup + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AlertsSummaryGroup'}, + } + + def __init__(self, **kwargs): + super(AlertsSummary, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group.py new file mode 100644 index 000000000000..470f52f8efdf --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertsSummaryGroup(Model): + """Group the result set. + + :param total: Total count of the result set. + :type total: int + :param smart_groups_count: Total count of the smart groups. + :type smart_groups_count: int + :param groupedby: Name of the field aggregated + :type groupedby: str + :param values: List of the items + :type values: + list[~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupItem] + """ + + _attribute_map = { + 'total': {'key': 'total', 'type': 'int'}, + 'smart_groups_count': {'key': 'smartGroupsCount', 'type': 'int'}, + 'groupedby': {'key': 'groupedby', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[AlertsSummaryGroupItem]'}, + } + + def __init__(self, **kwargs): + super(AlertsSummaryGroup, self).__init__(**kwargs) + self.total = kwargs.get('total', None) + self.smart_groups_count = kwargs.get('smart_groups_count', None) + self.groupedby = kwargs.get('groupedby', None) + self.values = kwargs.get('values', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_item.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_item.py new file mode 100644 index 000000000000..232fd9f12e08 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_item.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertsSummaryGroupItem(Model): + """Alerts summary group item. + + :param name: Value of the aggregated field + :type name: str + :param count: Count of the aggregated field + :type count: int + :param groupedby: Name of the field aggregated + :type groupedby: str + :param values: List of the items + :type values: + list[~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupItem] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'count': {'key': 'count', 'type': 'int'}, + 'groupedby': {'key': 'groupedby', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[AlertsSummaryGroupItem]'}, + } + + def __init__(self, **kwargs): + super(AlertsSummaryGroupItem, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.count = kwargs.get('count', None) + self.groupedby = kwargs.get('groupedby', None) + self.values = kwargs.get('values', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_item_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_item_py3.py new file mode 100644 index 000000000000..f802c4f1eaa3 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_item_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertsSummaryGroupItem(Model): + """Alerts summary group item. + + :param name: Value of the aggregated field + :type name: str + :param count: Count of the aggregated field + :type count: int + :param groupedby: Name of the field aggregated + :type groupedby: str + :param values: List of the items + :type values: + list[~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupItem] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'count': {'key': 'count', 'type': 'int'}, + 'groupedby': {'key': 'groupedby', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[AlertsSummaryGroupItem]'}, + } + + def __init__(self, *, name: str=None, count: int=None, groupedby: str=None, values=None, **kwargs) -> None: + super(AlertsSummaryGroupItem, self).__init__(**kwargs) + self.name = name + self.count = count + self.groupedby = groupedby + self.values = values diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_py3.py new file mode 100644 index 000000000000..b9d4c71d3403 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_group_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertsSummaryGroup(Model): + """Group the result set. + + :param total: Total count of the result set. + :type total: int + :param smart_groups_count: Total count of the smart groups. + :type smart_groups_count: int + :param groupedby: Name of the field aggregated + :type groupedby: str + :param values: List of the items + :type values: + list[~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupItem] + """ + + _attribute_map = { + 'total': {'key': 'total', 'type': 'int'}, + 'smart_groups_count': {'key': 'smartGroupsCount', 'type': 'int'}, + 'groupedby': {'key': 'groupedby', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[AlertsSummaryGroupItem]'}, + } + + def __init__(self, *, total: int=None, smart_groups_count: int=None, groupedby: str=None, values=None, **kwargs) -> None: + super(AlertsSummaryGroup, self).__init__(**kwargs) + self.total = total + self.smart_groups_count = smart_groups_count + self.groupedby = groupedby + self.values = values diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_py3.py new file mode 100644 index 000000000000..ed41ea6d10de --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/alerts_summary_py3.py @@ -0,0 +1,46 @@ +# 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 .resource_py3 import Resource + + +class AlertsSummary(Resource): + """Summary of alerts based on the input filters and 'groupby' parameters. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param properties: + :type properties: ~azure.mgmt.alertsmanagement.models.AlertsSummaryGroup + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AlertsSummaryGroup'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(AlertsSummary, self).__init__(**kwargs) + self.properties = properties diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/essentials.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/essentials.py new file mode 100644 index 000000000000..a333d42f1b82 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/essentials.py @@ -0,0 +1,138 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Essentials(Model): + """This object contains normalized fields across different monitor service and + also contains state related fields. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar severity: Severity of alert Sev0 being highest and Sev3 being + lowest. Possible values include: 'Sev0', 'Sev1', 'Sev2', 'Sev3', 'Sev4' + :vartype severity: str or ~azure.mgmt.alertsmanagement.models.Severity + :ivar signal_type: Log based alert or metric based alert. Possible values + include: 'Metric', 'Log', 'Unknown' + :vartype signal_type: str or + ~azure.mgmt.alertsmanagement.models.SignalType + :ivar alert_state: Alert object state, which is modified by the user. + Possible values include: 'New', 'Acknowledged', 'Closed' + :vartype alert_state: str or + ~azure.mgmt.alertsmanagement.models.AlertState + :ivar monitor_condition: Represents rule condition(Fired/Resolved) + maintained by monitor service depending on the state of the state. + Possible values include: 'Fired', 'Resolved' + :vartype monitor_condition: str or + ~azure.mgmt.alertsmanagement.models.MonitorCondition + :param target_resource: Target ARM resource, on which alert got created. + :type target_resource: str + :param target_resource_name: Name of the target ARM resource name, on + which alert got created. + :type target_resource_name: str + :param target_resource_group: Resource group of target ARM resource, on + which alert got created. + :type target_resource_group: str + :param target_resource_type: Resource type of target ARM resource, on + which alert got created. + :type target_resource_type: str + :ivar monitor_service: Monitor service on which the rule(monitor) is set. + Possible values include: 'Application Insights', 'ActivityLog + Administrative', 'ActivityLog Security', 'ActivityLog Recommendation', + 'ActivityLog Policy', 'ActivityLog Autoscale', 'Log Analytics', 'Nagios', + 'Platform', 'SCOM', 'ServiceHealth', 'SmartDetector', 'VM Insights', + 'Zabbix' + :vartype monitor_service: str or + ~azure.mgmt.alertsmanagement.models.MonitorService + :ivar alert_rule: Rule(monitor) which fired alert instance. Depending on + the monitor service, this would be ARM id or name of the rule. + :vartype alert_rule: str + :ivar source_created_id: Unique Id created by monitor service for each + alert instance. This could be used to track the issue at the monitor + service, in case of Nagios, Zabbix, SCOM etc. + :vartype source_created_id: str + :ivar smart_group_id: Unique Id of the smart group + :vartype smart_group_id: str + :ivar smart_grouping_reason: Verbose reason describing the reason why this + alert instance is added to a smart group + :vartype smart_grouping_reason: str + :ivar start_date_time: Creation time(ISO-8601 format) of alert instance. + :vartype start_date_time: datetime + :ivar last_modified_date_time: Last modification time(ISO-8601 format) of + alert instance. + :vartype last_modified_date_time: datetime + :ivar monitor_condition_resolved_date_time: Resolved time(ISO-8601 format) + of alert instance. This will be updated when monitor service resolves the + alert instance because of the rule condition is not met. + :vartype monitor_condition_resolved_date_time: datetime + :ivar last_modified_user_name: User who last modified the alert, in case + of monitor service updates user would be 'system', otherwise name of the + user. + :vartype last_modified_user_name: str + """ + + _validation = { + 'severity': {'readonly': True}, + 'signal_type': {'readonly': True}, + 'alert_state': {'readonly': True}, + 'monitor_condition': {'readonly': True}, + 'monitor_service': {'readonly': True}, + 'alert_rule': {'readonly': True}, + 'source_created_id': {'readonly': True}, + 'smart_group_id': {'readonly': True}, + 'smart_grouping_reason': {'readonly': True}, + 'start_date_time': {'readonly': True}, + 'last_modified_date_time': {'readonly': True}, + 'monitor_condition_resolved_date_time': {'readonly': True}, + 'last_modified_user_name': {'readonly': True}, + } + + _attribute_map = { + 'severity': {'key': 'severity', 'type': 'str'}, + 'signal_type': {'key': 'signalType', 'type': 'str'}, + 'alert_state': {'key': 'alertState', 'type': 'str'}, + 'monitor_condition': {'key': 'monitorCondition', 'type': 'str'}, + 'target_resource': {'key': 'targetResource', 'type': 'str'}, + 'target_resource_name': {'key': 'targetResourceName', 'type': 'str'}, + 'target_resource_group': {'key': 'targetResourceGroup', 'type': 'str'}, + 'target_resource_type': {'key': 'targetResourceType', 'type': 'str'}, + 'monitor_service': {'key': 'monitorService', 'type': 'str'}, + 'alert_rule': {'key': 'alertRule', 'type': 'str'}, + 'source_created_id': {'key': 'sourceCreatedId', 'type': 'str'}, + 'smart_group_id': {'key': 'smartGroupId', 'type': 'str'}, + 'smart_grouping_reason': {'key': 'smartGroupingReason', 'type': 'str'}, + 'start_date_time': {'key': 'startDateTime', 'type': 'iso-8601'}, + 'last_modified_date_time': {'key': 'lastModifiedDateTime', 'type': 'iso-8601'}, + 'monitor_condition_resolved_date_time': {'key': 'monitorConditionResolvedDateTime', 'type': 'iso-8601'}, + 'last_modified_user_name': {'key': 'lastModifiedUserName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Essentials, self).__init__(**kwargs) + self.severity = None + self.signal_type = None + self.alert_state = None + self.monitor_condition = None + self.target_resource = kwargs.get('target_resource', None) + self.target_resource_name = kwargs.get('target_resource_name', None) + self.target_resource_group = kwargs.get('target_resource_group', None) + self.target_resource_type = kwargs.get('target_resource_type', None) + self.monitor_service = None + self.alert_rule = None + self.source_created_id = None + self.smart_group_id = None + self.smart_grouping_reason = None + self.start_date_time = None + self.last_modified_date_time = None + self.monitor_condition_resolved_date_time = None + self.last_modified_user_name = None diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/essentials_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/essentials_py3.py new file mode 100644 index 000000000000..01052b35702e --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/essentials_py3.py @@ -0,0 +1,138 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Essentials(Model): + """This object contains normalized fields across different monitor service and + also contains state related fields. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar severity: Severity of alert Sev0 being highest and Sev3 being + lowest. Possible values include: 'Sev0', 'Sev1', 'Sev2', 'Sev3', 'Sev4' + :vartype severity: str or ~azure.mgmt.alertsmanagement.models.Severity + :ivar signal_type: Log based alert or metric based alert. Possible values + include: 'Metric', 'Log', 'Unknown' + :vartype signal_type: str or + ~azure.mgmt.alertsmanagement.models.SignalType + :ivar alert_state: Alert object state, which is modified by the user. + Possible values include: 'New', 'Acknowledged', 'Closed' + :vartype alert_state: str or + ~azure.mgmt.alertsmanagement.models.AlertState + :ivar monitor_condition: Represents rule condition(Fired/Resolved) + maintained by monitor service depending on the state of the state. + Possible values include: 'Fired', 'Resolved' + :vartype monitor_condition: str or + ~azure.mgmt.alertsmanagement.models.MonitorCondition + :param target_resource: Target ARM resource, on which alert got created. + :type target_resource: str + :param target_resource_name: Name of the target ARM resource name, on + which alert got created. + :type target_resource_name: str + :param target_resource_group: Resource group of target ARM resource, on + which alert got created. + :type target_resource_group: str + :param target_resource_type: Resource type of target ARM resource, on + which alert got created. + :type target_resource_type: str + :ivar monitor_service: Monitor service on which the rule(monitor) is set. + Possible values include: 'Application Insights', 'ActivityLog + Administrative', 'ActivityLog Security', 'ActivityLog Recommendation', + 'ActivityLog Policy', 'ActivityLog Autoscale', 'Log Analytics', 'Nagios', + 'Platform', 'SCOM', 'ServiceHealth', 'SmartDetector', 'VM Insights', + 'Zabbix' + :vartype monitor_service: str or + ~azure.mgmt.alertsmanagement.models.MonitorService + :ivar alert_rule: Rule(monitor) which fired alert instance. Depending on + the monitor service, this would be ARM id or name of the rule. + :vartype alert_rule: str + :ivar source_created_id: Unique Id created by monitor service for each + alert instance. This could be used to track the issue at the monitor + service, in case of Nagios, Zabbix, SCOM etc. + :vartype source_created_id: str + :ivar smart_group_id: Unique Id of the smart group + :vartype smart_group_id: str + :ivar smart_grouping_reason: Verbose reason describing the reason why this + alert instance is added to a smart group + :vartype smart_grouping_reason: str + :ivar start_date_time: Creation time(ISO-8601 format) of alert instance. + :vartype start_date_time: datetime + :ivar last_modified_date_time: Last modification time(ISO-8601 format) of + alert instance. + :vartype last_modified_date_time: datetime + :ivar monitor_condition_resolved_date_time: Resolved time(ISO-8601 format) + of alert instance. This will be updated when monitor service resolves the + alert instance because of the rule condition is not met. + :vartype monitor_condition_resolved_date_time: datetime + :ivar last_modified_user_name: User who last modified the alert, in case + of monitor service updates user would be 'system', otherwise name of the + user. + :vartype last_modified_user_name: str + """ + + _validation = { + 'severity': {'readonly': True}, + 'signal_type': {'readonly': True}, + 'alert_state': {'readonly': True}, + 'monitor_condition': {'readonly': True}, + 'monitor_service': {'readonly': True}, + 'alert_rule': {'readonly': True}, + 'source_created_id': {'readonly': True}, + 'smart_group_id': {'readonly': True}, + 'smart_grouping_reason': {'readonly': True}, + 'start_date_time': {'readonly': True}, + 'last_modified_date_time': {'readonly': True}, + 'monitor_condition_resolved_date_time': {'readonly': True}, + 'last_modified_user_name': {'readonly': True}, + } + + _attribute_map = { + 'severity': {'key': 'severity', 'type': 'str'}, + 'signal_type': {'key': 'signalType', 'type': 'str'}, + 'alert_state': {'key': 'alertState', 'type': 'str'}, + 'monitor_condition': {'key': 'monitorCondition', 'type': 'str'}, + 'target_resource': {'key': 'targetResource', 'type': 'str'}, + 'target_resource_name': {'key': 'targetResourceName', 'type': 'str'}, + 'target_resource_group': {'key': 'targetResourceGroup', 'type': 'str'}, + 'target_resource_type': {'key': 'targetResourceType', 'type': 'str'}, + 'monitor_service': {'key': 'monitorService', 'type': 'str'}, + 'alert_rule': {'key': 'alertRule', 'type': 'str'}, + 'source_created_id': {'key': 'sourceCreatedId', 'type': 'str'}, + 'smart_group_id': {'key': 'smartGroupId', 'type': 'str'}, + 'smart_grouping_reason': {'key': 'smartGroupingReason', 'type': 'str'}, + 'start_date_time': {'key': 'startDateTime', 'type': 'iso-8601'}, + 'last_modified_date_time': {'key': 'lastModifiedDateTime', 'type': 'iso-8601'}, + 'monitor_condition_resolved_date_time': {'key': 'monitorConditionResolvedDateTime', 'type': 'iso-8601'}, + 'last_modified_user_name': {'key': 'lastModifiedUserName', 'type': 'str'}, + } + + def __init__(self, *, target_resource: str=None, target_resource_name: str=None, target_resource_group: str=None, target_resource_type: str=None, **kwargs) -> None: + super(Essentials, self).__init__(**kwargs) + self.severity = None + self.signal_type = None + self.alert_state = None + self.monitor_condition = None + self.target_resource = target_resource + self.target_resource_name = target_resource_name + self.target_resource_group = target_resource_group + self.target_resource_type = target_resource_type + self.monitor_service = None + self.alert_rule = None + self.source_created_id = None + self.smart_group_id = None + self.smart_grouping_reason = None + self.start_date_time = None + self.last_modified_date_time = None + self.monitor_condition_resolved_date_time = None + self.last_modified_user_name = None diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation.py new file mode 100644 index 000000000000..1b5fea4ff02a --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Operation provided by provider. + + :param name: Name of the operation + :type name: str + :param display: Properties of the operation + :type display: ~azure.mgmt.alertsmanagement.models.OperationDisplay + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_display.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_display.py new file mode 100644 index 000000000000..89c4bdd6ccb6 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_display.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Properties of the operation. + + :param provider: Provider name + :type provider: str + :param resource: Resource name + :type resource: str + :param operation: Operation name + :type operation: str + :param description: Description of the operation + :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, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_display_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_display_py3.py new file mode 100644 index 000000000000..fa3740dfc655 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_display_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Properties of the operation. + + :param provider: Provider name + :type provider: str + :param resource: Resource name + :type resource: str + :param operation: Operation name + :type operation: str + :param description: Description of the operation + :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(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.resource = resource + self.operation = operation + self.description = description diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_paged.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_paged.py new file mode 100644 index 000000000000..3794d02c84f1 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_py3.py new file mode 100644 index 000000000000..ee66b4cfa181 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/operation_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Operation provided by provider. + + :param name: Name of the operation + :type name: str + :param display: Properties of the operation + :type display: ~azure.mgmt.alertsmanagement.models.OperationDisplay + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + } + + def __init__(self, *, name: str=None, display=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/resource.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/resource.py new file mode 100644 index 000000000000..7454d56b9033 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/resource.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """An azure resource object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.type = None + self.name = None diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/resource_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/resource_py3.py new file mode 100644 index 000000000000..83ff9951fb91 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """An azure resource object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.type = None + self.name = None diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group.py new file mode 100644 index 000000000000..b1754f67fb4c --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group.py @@ -0,0 +1,118 @@ +# 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 .resource import Resource + + +class SmartGroup(Resource): + """Set of related alerts grouped together smartly by AMS. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param alerts_count: Total number of alerts in smart group + :type alerts_count: int + :ivar smart_group_state: Smart group state. Possible values include: + 'New', 'Acknowledged', 'Closed' + :vartype smart_group_state: str or + ~azure.mgmt.alertsmanagement.models.State + :ivar severity: Severity of smart group is the highest(Sev0 >... > Sev4) + severity of all the alerts in the group. Possible values include: 'Sev0', + 'Sev1', 'Sev2', 'Sev3', 'Sev4' + :vartype severity: str or ~azure.mgmt.alertsmanagement.models.Severity + :ivar start_date_time: Creation time of smart group. Date-Time in ISO-8601 + format. + :vartype start_date_time: datetime + :ivar last_modified_date_time: Last updated time of smart group. Date-Time + in ISO-8601 format. + :vartype last_modified_date_time: datetime + :ivar last_modified_user_name: Last modified by user name. + :vartype last_modified_user_name: str + :param resources: Summary of target resources in the smart group + :type resources: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param resource_types: Summary of target resource types in the smart group + :type resource_types: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param resource_groups: Summary of target resource groups in the smart + group + :type resource_groups: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param monitor_services: Summary of monitorServices in the smart group + :type monitor_services: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param monitor_conditions: Summary of monitorConditions in the smart group + :type monitor_conditions: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param alert_states: Summary of alertStates in the smart group + :type alert_states: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param alert_severities: Summary of alertSeverities in the smart group + :type alert_severities: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param next_link: The URI to fetch the next page of alerts. Call + ListNext() with this URI to fetch the next page alerts. + :type next_link: str + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + 'smart_group_state': {'readonly': True}, + 'severity': {'readonly': True}, + 'start_date_time': {'readonly': True}, + 'last_modified_date_time': {'readonly': True}, + 'last_modified_user_name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'alerts_count': {'key': 'properties.alertsCount', 'type': 'int'}, + 'smart_group_state': {'key': 'properties.smartGroupState', 'type': 'str'}, + 'severity': {'key': 'properties.severity', 'type': 'str'}, + 'start_date_time': {'key': 'properties.startDateTime', 'type': 'iso-8601'}, + 'last_modified_date_time': {'key': 'properties.lastModifiedDateTime', 'type': 'iso-8601'}, + 'last_modified_user_name': {'key': 'properties.lastModifiedUserName', 'type': 'str'}, + 'resources': {'key': 'properties.resources', 'type': '[SmartGroupAggregatedProperty]'}, + 'resource_types': {'key': 'properties.resourceTypes', 'type': '[SmartGroupAggregatedProperty]'}, + 'resource_groups': {'key': 'properties.resourceGroups', 'type': '[SmartGroupAggregatedProperty]'}, + 'monitor_services': {'key': 'properties.monitorServices', 'type': '[SmartGroupAggregatedProperty]'}, + 'monitor_conditions': {'key': 'properties.monitorConditions', 'type': '[SmartGroupAggregatedProperty]'}, + 'alert_states': {'key': 'properties.alertStates', 'type': '[SmartGroupAggregatedProperty]'}, + 'alert_severities': {'key': 'properties.alertSeverities', 'type': '[SmartGroupAggregatedProperty]'}, + 'next_link': {'key': 'properties.nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SmartGroup, self).__init__(**kwargs) + self.alerts_count = kwargs.get('alerts_count', None) + self.smart_group_state = None + self.severity = None + self.start_date_time = None + self.last_modified_date_time = None + self.last_modified_user_name = None + self.resources = kwargs.get('resources', None) + self.resource_types = kwargs.get('resource_types', None) + self.resource_groups = kwargs.get('resource_groups', None) + self.monitor_services = kwargs.get('monitor_services', None) + self.monitor_conditions = kwargs.get('monitor_conditions', None) + self.alert_states = kwargs.get('alert_states', None) + self.alert_severities = kwargs.get('alert_severities', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_aggregated_property.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_aggregated_property.py new file mode 100644 index 000000000000..4681ff600eff --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_aggregated_property.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmartGroupAggregatedProperty(Model): + """Aggregated property of each type. + + :param name: Name of the type. + :type name: str + :param count: Total number of items of type. + :type count: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'count': {'key': 'count', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(SmartGroupAggregatedProperty, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.count = kwargs.get('count', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_aggregated_property_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_aggregated_property_py3.py new file mode 100644 index 000000000000..5a6bfb2d896e --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_aggregated_property_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmartGroupAggregatedProperty(Model): + """Aggregated property of each type. + + :param name: Name of the type. + :type name: str + :param count: Total number of items of type. + :type count: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'count': {'key': 'count', 'type': 'int'}, + } + + def __init__(self, *, name: str=None, count: int=None, **kwargs) -> None: + super(SmartGroupAggregatedProperty, self).__init__(**kwargs) + self.name = name + self.count = count diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification.py new file mode 100644 index 000000000000..b0c27ebc02c4 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class SmartGroupModification(Resource): + """Alert Modification details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param properties: + :type properties: + ~azure.mgmt.alertsmanagement.models.SmartGroupModificationProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'SmartGroupModificationProperties'}, + } + + def __init__(self, **kwargs): + super(SmartGroupModification, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_item.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_item.py new file mode 100644 index 000000000000..b87b7a06465d --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_item.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmartGroupModificationItem(Model): + """smartGroup modification item. + + :param modification_event: Reason for the modification. Possible values + include: 'SmartGroupCreated', 'StateChange', 'AlertAdded', 'AlertRemoved' + :type modification_event: str or + ~azure.mgmt.alertsmanagement.models.SmartGroupModificationEvent + :param old_value: Old value + :type old_value: str + :param new_value: New value + :type new_value: str + :param modified_at: Modified date and time + :type modified_at: str + :param modified_by: Modified user details (Principal client name) + :type modified_by: str + :param comments: Modification comments + :type comments: str + :param description: Description of the modification + :type description: str + """ + + _attribute_map = { + 'modification_event': {'key': 'modificationEvent', 'type': 'SmartGroupModificationEvent'}, + 'old_value': {'key': 'oldValue', 'type': 'str'}, + 'new_value': {'key': 'newValue', 'type': 'str'}, + 'modified_at': {'key': 'modifiedAt', 'type': 'str'}, + 'modified_by': {'key': 'modifiedBy', 'type': 'str'}, + 'comments': {'key': 'comments', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SmartGroupModificationItem, self).__init__(**kwargs) + self.modification_event = kwargs.get('modification_event', None) + self.old_value = kwargs.get('old_value', None) + self.new_value = kwargs.get('new_value', None) + self.modified_at = kwargs.get('modified_at', None) + self.modified_by = kwargs.get('modified_by', None) + self.comments = kwargs.get('comments', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_item_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_item_py3.py new file mode 100644 index 000000000000..aa07075fb384 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_item_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmartGroupModificationItem(Model): + """smartGroup modification item. + + :param modification_event: Reason for the modification. Possible values + include: 'SmartGroupCreated', 'StateChange', 'AlertAdded', 'AlertRemoved' + :type modification_event: str or + ~azure.mgmt.alertsmanagement.models.SmartGroupModificationEvent + :param old_value: Old value + :type old_value: str + :param new_value: New value + :type new_value: str + :param modified_at: Modified date and time + :type modified_at: str + :param modified_by: Modified user details (Principal client name) + :type modified_by: str + :param comments: Modification comments + :type comments: str + :param description: Description of the modification + :type description: str + """ + + _attribute_map = { + 'modification_event': {'key': 'modificationEvent', 'type': 'SmartGroupModificationEvent'}, + 'old_value': {'key': 'oldValue', 'type': 'str'}, + 'new_value': {'key': 'newValue', 'type': 'str'}, + 'modified_at': {'key': 'modifiedAt', 'type': 'str'}, + 'modified_by': {'key': 'modifiedBy', 'type': 'str'}, + 'comments': {'key': 'comments', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, modification_event=None, old_value: str=None, new_value: str=None, modified_at: str=None, modified_by: str=None, comments: str=None, description: str=None, **kwargs) -> None: + super(SmartGroupModificationItem, self).__init__(**kwargs) + self.modification_event = modification_event + self.old_value = old_value + self.new_value = new_value + self.modified_at = modified_at + self.modified_by = modified_by + self.comments = comments + self.description = description diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_properties.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_properties.py new file mode 100644 index 000000000000..5535552813b3 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_properties.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmartGroupModificationProperties(Model): + """Properties of the smartGroup modification item. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar smart_group_id: Unique Id of the smartGroup for which the history is + being retrieved + :vartype smart_group_id: str + :param modifications: Modification details + :type modifications: + list[~azure.mgmt.alertsmanagement.models.SmartGroupModificationItem] + :param next_link: URL to fetch the next set of results. + :type next_link: str + """ + + _validation = { + 'smart_group_id': {'readonly': True}, + } + + _attribute_map = { + 'smart_group_id': {'key': 'smartGroupId', 'type': 'str'}, + 'modifications': {'key': 'modifications', 'type': '[SmartGroupModificationItem]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SmartGroupModificationProperties, self).__init__(**kwargs) + self.smart_group_id = None + self.modifications = kwargs.get('modifications', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_properties_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_properties_py3.py new file mode 100644 index 000000000000..40d128112187 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_properties_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmartGroupModificationProperties(Model): + """Properties of the smartGroup modification item. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar smart_group_id: Unique Id of the smartGroup for which the history is + being retrieved + :vartype smart_group_id: str + :param modifications: Modification details + :type modifications: + list[~azure.mgmt.alertsmanagement.models.SmartGroupModificationItem] + :param next_link: URL to fetch the next set of results. + :type next_link: str + """ + + _validation = { + 'smart_group_id': {'readonly': True}, + } + + _attribute_map = { + 'smart_group_id': {'key': 'smartGroupId', 'type': 'str'}, + 'modifications': {'key': 'modifications', 'type': '[SmartGroupModificationItem]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, modifications=None, next_link: str=None, **kwargs) -> None: + super(SmartGroupModificationProperties, self).__init__(**kwargs) + self.smart_group_id = None + self.modifications = modifications + self.next_link = next_link diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_py3.py new file mode 100644 index 000000000000..b8cb946b706a --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_modification_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class SmartGroupModification(Resource): + """Alert Modification details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param properties: + :type properties: + ~azure.mgmt.alertsmanagement.models.SmartGroupModificationProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'SmartGroupModificationProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(SmartGroupModification, self).__init__(**kwargs) + self.properties = properties diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_py3.py new file mode 100644 index 000000000000..a0c00f029485 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_group_py3.py @@ -0,0 +1,118 @@ +# 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 .resource_py3 import Resource + + +class SmartGroup(Resource): + """Set of related alerts grouped together smartly by AMS. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Azure resource Id + :vartype id: str + :ivar type: Azure resource type + :vartype type: str + :ivar name: Azure resource name + :vartype name: str + :param alerts_count: Total number of alerts in smart group + :type alerts_count: int + :ivar smart_group_state: Smart group state. Possible values include: + 'New', 'Acknowledged', 'Closed' + :vartype smart_group_state: str or + ~azure.mgmt.alertsmanagement.models.State + :ivar severity: Severity of smart group is the highest(Sev0 >... > Sev4) + severity of all the alerts in the group. Possible values include: 'Sev0', + 'Sev1', 'Sev2', 'Sev3', 'Sev4' + :vartype severity: str or ~azure.mgmt.alertsmanagement.models.Severity + :ivar start_date_time: Creation time of smart group. Date-Time in ISO-8601 + format. + :vartype start_date_time: datetime + :ivar last_modified_date_time: Last updated time of smart group. Date-Time + in ISO-8601 format. + :vartype last_modified_date_time: datetime + :ivar last_modified_user_name: Last modified by user name. + :vartype last_modified_user_name: str + :param resources: Summary of target resources in the smart group + :type resources: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param resource_types: Summary of target resource types in the smart group + :type resource_types: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param resource_groups: Summary of target resource groups in the smart + group + :type resource_groups: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param monitor_services: Summary of monitorServices in the smart group + :type monitor_services: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param monitor_conditions: Summary of monitorConditions in the smart group + :type monitor_conditions: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param alert_states: Summary of alertStates in the smart group + :type alert_states: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param alert_severities: Summary of alertSeverities in the smart group + :type alert_severities: + list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] + :param next_link: The URI to fetch the next page of alerts. Call + ListNext() with this URI to fetch the next page alerts. + :type next_link: str + """ + + _validation = { + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'name': {'readonly': True}, + 'smart_group_state': {'readonly': True}, + 'severity': {'readonly': True}, + 'start_date_time': {'readonly': True}, + 'last_modified_date_time': {'readonly': True}, + 'last_modified_user_name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'alerts_count': {'key': 'properties.alertsCount', 'type': 'int'}, + 'smart_group_state': {'key': 'properties.smartGroupState', 'type': 'str'}, + 'severity': {'key': 'properties.severity', 'type': 'str'}, + 'start_date_time': {'key': 'properties.startDateTime', 'type': 'iso-8601'}, + 'last_modified_date_time': {'key': 'properties.lastModifiedDateTime', 'type': 'iso-8601'}, + 'last_modified_user_name': {'key': 'properties.lastModifiedUserName', 'type': 'str'}, + 'resources': {'key': 'properties.resources', 'type': '[SmartGroupAggregatedProperty]'}, + 'resource_types': {'key': 'properties.resourceTypes', 'type': '[SmartGroupAggregatedProperty]'}, + 'resource_groups': {'key': 'properties.resourceGroups', 'type': '[SmartGroupAggregatedProperty]'}, + 'monitor_services': {'key': 'properties.monitorServices', 'type': '[SmartGroupAggregatedProperty]'}, + 'monitor_conditions': {'key': 'properties.monitorConditions', 'type': '[SmartGroupAggregatedProperty]'}, + 'alert_states': {'key': 'properties.alertStates', 'type': '[SmartGroupAggregatedProperty]'}, + 'alert_severities': {'key': 'properties.alertSeverities', 'type': '[SmartGroupAggregatedProperty]'}, + 'next_link': {'key': 'properties.nextLink', 'type': 'str'}, + } + + def __init__(self, *, alerts_count: int=None, resources=None, resource_types=None, resource_groups=None, monitor_services=None, monitor_conditions=None, alert_states=None, alert_severities=None, next_link: str=None, **kwargs) -> None: + super(SmartGroup, self).__init__(**kwargs) + self.alerts_count = alerts_count + self.smart_group_state = None + self.severity = None + self.start_date_time = None + self.last_modified_date_time = None + self.last_modified_user_name = None + self.resources = resources + self.resource_types = resource_types + self.resource_groups = resource_groups + self.monitor_services = monitor_services + self.monitor_conditions = monitor_conditions + self.alert_states = alert_states + self.alert_severities = alert_severities + self.next_link = next_link diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_groups_list.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_groups_list.py new file mode 100644 index 000000000000..17302096edc5 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_groups_list.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmartGroupsList(Model): + """List the alerts. + + :param next_link: URL to fetch the next set of alerts. + :type next_link: str + :param value: List of alerts + :type value: list[~azure.mgmt.alertsmanagement.models.SmartGroup] + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'value': {'key': 'value', 'type': '[SmartGroup]'}, + } + + def __init__(self, **kwargs): + super(SmartGroupsList, self).__init__(**kwargs) + self.next_link = kwargs.get('next_link', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_groups_list_py3.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_groups_list_py3.py new file mode 100644 index 000000000000..538de5af7747 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/models/smart_groups_list_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmartGroupsList(Model): + """List the alerts. + + :param next_link: URL to fetch the next set of alerts. + :type next_link: str + :param value: List of alerts + :type value: list[~azure.mgmt.alertsmanagement.models.SmartGroup] + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'value': {'key': 'value', 'type': '[SmartGroup]'}, + } + + def __init__(self, *, next_link: str=None, value=None, **kwargs) -> None: + super(SmartGroupsList, self).__init__(**kwargs) + self.next_link = next_link + self.value = value diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/__init__.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/__init__.py new file mode 100644 index 000000000000..9341f4bfee3b --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/__init__.py @@ -0,0 +1,20 @@ +# 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 .operations import Operations +from .alerts_operations import AlertsOperations +from .smart_groups_operations import SmartGroupsOperations + +__all__ = [ + 'Operations', + 'AlertsOperations', + 'SmartGroupsOperations', +] diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/alerts_operations.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/alerts_operations.py new file mode 100644 index 000000000000..fd15f46bc817 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/alerts_operations.py @@ -0,0 +1,522 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class AlertsOperations(object): + """AlertsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version. Constant value: "2018-05-05". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-05-05" + + self.config = config + + def get_all( + self, target_resource=None, target_resource_type=None, target_resource_group=None, monitor_service=None, monitor_condition=None, severity=None, alert_state=None, alert_rule=None, smart_group_id=None, include_context=None, include_egress_config=None, page_count=None, sort_by=None, sort_order=None, select=None, time_range=None, custom_time_range=None, custom_headers=None, raw=False, **operation_config): + """List all the existing alerts, where the results can be selective by + passing multiple filter parameters including time range and sorted on + specific fields. . + + :param target_resource: Filter by target resource( which is full ARM + ID) Default value is select all. + :type target_resource: str + :param target_resource_type: Filter by target resource type. Default + value is select all. + :type target_resource_type: str + :param target_resource_group: Filter by target resource group name. + Default value is select all. + :type target_resource_group: str + :param monitor_service: Filter by monitor service which is the source + of the alert instance. Default value is select all. Possible values + include: 'Application Insights', 'ActivityLog Administrative', + 'ActivityLog Security', 'ActivityLog Recommendation', 'ActivityLog + Policy', 'ActivityLog Autoscale', 'Log Analytics', 'Nagios', + 'Platform', 'SCOM', 'ServiceHealth', 'SmartDetector', 'VM Insights', + 'Zabbix' + :type monitor_service: str or + ~azure.mgmt.alertsmanagement.models.MonitorService + :param monitor_condition: Filter by monitor condition which is the + state of the monitor(alertRule) at monitor service. Default value is + to select all. Possible values include: 'Fired', 'Resolved' + :type monitor_condition: str or + ~azure.mgmt.alertsmanagement.models.MonitorCondition + :param severity: Filter by severity. Defaut value is select all. + Possible values include: 'Sev0', 'Sev1', 'Sev2', 'Sev3', 'Sev4' + :type severity: str or ~azure.mgmt.alertsmanagement.models.Severity + :param alert_state: Filter by state of the alert instance. Default + value is to select all. Possible values include: 'New', + 'Acknowledged', 'Closed' + :type alert_state: str or + ~azure.mgmt.alertsmanagement.models.AlertState + :param alert_rule: Filter by alert rule(monitor) which fired alert + instance. Default value is to select all. + :type alert_rule: str + :param smart_group_id: Filter the alerts list by the Smart Group Id. + Default value is none. + :type smart_group_id: str + :param include_context: Include context which has data contextual to + the monitor service. Default value is false' + :type include_context: bool + :param include_egress_config: Include egress config which would be + used for displaying the content in portal. Default value is 'false'. + :type include_egress_config: bool + :param page_count: Determines number of alerts returned per page in + response. Permissible value is between 1 to 250. When the + "includeContent" filter is selected, maximum value allowed is 25. + Default value is 25. + :type page_count: int + :param sort_by: Sort the query results by input field, Default value + is 'lastModifiedDateTime'. Possible values include: 'name', + 'severity', 'alertState', 'monitorCondition', 'targetResource', + 'targetResourceName', 'targetResourceGroup', 'targetResourceType', + 'startDateTime', 'lastModifiedDateTime' + :type sort_by: str or + ~azure.mgmt.alertsmanagement.models.AlertsSortByFields + :param sort_order: Sort the query results order in either ascending or + descending. Default value is 'desc' for time fields and 'asc' for + others. Possible values include: 'asc', 'desc' + :type sort_order: str + :param select: This filter allows to selection of the fields(comma + seperated) which would be part of the the essential section. This + would allow to project only the required fields rather than getting + entire content. Default is to fetch all the fields in the essentials + section. + :type select: str + :param time_range: Filter by time range by below listed values. + Default value is 1 day. Possible values include: '1h', '1d', '7d', + '30d' + :type time_range: str or ~azure.mgmt.alertsmanagement.models.TimeRange + :param custom_time_range: Filter by custom time range in the format + / where time is in (ISO-8601 format)'. + Permissible values is within 30 days from query time. Either + timeRange or customTimeRange could be used but not both. Default is + none. + :type custom_time_range: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Alert + :rtype: + ~azure.mgmt.alertsmanagement.models.AlertPaged[~azure.mgmt.alertsmanagement.models.Alert] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if target_resource is not None: + query_parameters['targetResource'] = self._serialize.query("target_resource", target_resource, 'str') + if target_resource_type is not None: + query_parameters['targetResourceType'] = self._serialize.query("target_resource_type", target_resource_type, 'str') + if target_resource_group is not None: + query_parameters['targetResourceGroup'] = self._serialize.query("target_resource_group", target_resource_group, 'str') + if monitor_service is not None: + query_parameters['monitorService'] = self._serialize.query("monitor_service", monitor_service, 'str') + if monitor_condition is not None: + query_parameters['monitorCondition'] = self._serialize.query("monitor_condition", monitor_condition, 'str') + if severity is not None: + query_parameters['severity'] = self._serialize.query("severity", severity, 'str') + if alert_state is not None: + query_parameters['alertState'] = self._serialize.query("alert_state", alert_state, 'str') + if alert_rule is not None: + query_parameters['alertRule'] = self._serialize.query("alert_rule", alert_rule, 'str') + if smart_group_id is not None: + query_parameters['smartGroupId'] = self._serialize.query("smart_group_id", smart_group_id, 'str') + if include_context is not None: + query_parameters['includeContext'] = self._serialize.query("include_context", include_context, 'bool') + if include_egress_config is not None: + query_parameters['includeEgressConfig'] = self._serialize.query("include_egress_config", include_egress_config, 'bool') + if page_count is not None: + query_parameters['pageCount'] = self._serialize.query("page_count", page_count, 'int') + if sort_by is not None: + query_parameters['sortBy'] = self._serialize.query("sort_by", sort_by, 'str') + if sort_order is not None: + query_parameters['sortOrder'] = self._serialize.query("sort_order", sort_order, 'str') + if select is not None: + query_parameters['select'] = self._serialize.query("select", select, 'str') + if time_range is not None: + query_parameters['timeRange'] = self._serialize.query("time_range", time_range, 'str') + if custom_time_range is not None: + query_parameters['customTimeRange'] = self._serialize.query("custom_time_range", custom_time_range, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.AlertPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AlertPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alerts'} + + def get_by_id( + self, alert_id, custom_headers=None, raw=False, **operation_config): + """Get a specific alert. + + Get information related to a specific alert. + + :param alert_id: Unique ID of an alert instance. + :type alert_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Alert or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.alertsmanagement.models.Alert or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_by_id.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'alertId': self._serialize.url("alert_id", alert_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Alert', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_by_id.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alerts/{alertId}'} + + def change_state( + self, alert_id, new_state, custom_headers=None, raw=False, **operation_config): + """Change the state of the alert. + + :param alert_id: Unique ID of an alert instance. + :type alert_id: str + :param new_state: New state of the alert. Possible values include: + 'New', 'Acknowledged', 'Closed' + :type new_state: str or ~azure.mgmt.alertsmanagement.models.AlertState + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Alert or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.alertsmanagement.models.Alert or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.change_state.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'alertId': self._serialize.url("alert_id", alert_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['newState'] = self._serialize.query("new_state", new_state, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Alert', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + change_state.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alerts/{alertId}/changestate'} + + def get_history( + self, alert_id, custom_headers=None, raw=False, **operation_config): + """Get the history of the changes of an alert. + + :param alert_id: Unique ID of an alert instance. + :type alert_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AlertModification or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.alertsmanagement.models.AlertModification or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_history.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'alertId': self._serialize.url("alert_id", alert_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AlertModification', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_history.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alerts/{alertId}/history'} + + def get_summary( + self, groupby, include_smart_groups_count=None, target_resource=None, target_resource_type=None, target_resource_group=None, monitor_service=None, monitor_condition=None, severity=None, alert_state=None, alert_rule=None, time_range=None, custom_time_range=None, custom_headers=None, raw=False, **operation_config): + """Summary of alerts with the count each severity. + + :param groupby: This parameter allows the result set to be aggregated + by input fields. For example, groupby=severity,alertstate. Possible + values include: 'severity', 'alertState', 'monitorCondition', + 'monitorService', 'signalType', 'alertRule' + :type groupby: str or + ~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupByFields + :param include_smart_groups_count: Include count of the SmartGroups as + part of the summary. Default value is 'false'. + :type include_smart_groups_count: bool + :param target_resource: Filter by target resource( which is full ARM + ID) Default value is select all. + :type target_resource: str + :param target_resource_type: Filter by target resource type. Default + value is select all. + :type target_resource_type: str + :param target_resource_group: Filter by target resource group name. + Default value is select all. + :type target_resource_group: str + :param monitor_service: Filter by monitor service which is the source + of the alert instance. Default value is select all. Possible values + include: 'Application Insights', 'ActivityLog Administrative', + 'ActivityLog Security', 'ActivityLog Recommendation', 'ActivityLog + Policy', 'ActivityLog Autoscale', 'Log Analytics', 'Nagios', + 'Platform', 'SCOM', 'ServiceHealth', 'SmartDetector', 'VM Insights', + 'Zabbix' + :type monitor_service: str or + ~azure.mgmt.alertsmanagement.models.MonitorService + :param monitor_condition: Filter by monitor condition which is the + state of the monitor(alertRule) at monitor service. Default value is + to select all. Possible values include: 'Fired', 'Resolved' + :type monitor_condition: str or + ~azure.mgmt.alertsmanagement.models.MonitorCondition + :param severity: Filter by severity. Defaut value is select all. + Possible values include: 'Sev0', 'Sev1', 'Sev2', 'Sev3', 'Sev4' + :type severity: str or ~azure.mgmt.alertsmanagement.models.Severity + :param alert_state: Filter by state of the alert instance. Default + value is to select all. Possible values include: 'New', + 'Acknowledged', 'Closed' + :type alert_state: str or + ~azure.mgmt.alertsmanagement.models.AlertState + :param alert_rule: Filter by alert rule(monitor) which fired alert + instance. Default value is to select all. + :type alert_rule: str + :param time_range: Filter by time range by below listed values. + Default value is 1 day. Possible values include: '1h', '1d', '7d', + '30d' + :type time_range: str or ~azure.mgmt.alertsmanagement.models.TimeRange + :param custom_time_range: Filter by custom time range in the format + / where time is in (ISO-8601 format)'. + Permissible values is within 30 days from query time. Either + timeRange or customTimeRange could be used but not both. Default is + none. + :type custom_time_range: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AlertsSummary or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.alertsmanagement.models.AlertsSummary or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_summary.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['groupby'] = self._serialize.query("groupby", groupby, 'str') + if include_smart_groups_count is not None: + query_parameters['includeSmartGroupsCount'] = self._serialize.query("include_smart_groups_count", include_smart_groups_count, 'bool') + if target_resource is not None: + query_parameters['targetResource'] = self._serialize.query("target_resource", target_resource, 'str') + if target_resource_type is not None: + query_parameters['targetResourceType'] = self._serialize.query("target_resource_type", target_resource_type, 'str') + if target_resource_group is not None: + query_parameters['targetResourceGroup'] = self._serialize.query("target_resource_group", target_resource_group, 'str') + if monitor_service is not None: + query_parameters['monitorService'] = self._serialize.query("monitor_service", monitor_service, 'str') + if monitor_condition is not None: + query_parameters['monitorCondition'] = self._serialize.query("monitor_condition", monitor_condition, 'str') + if severity is not None: + query_parameters['severity'] = self._serialize.query("severity", severity, 'str') + if alert_state is not None: + query_parameters['alertState'] = self._serialize.query("alert_state", alert_state, 'str') + if alert_rule is not None: + query_parameters['alertRule'] = self._serialize.query("alert_rule", alert_rule, 'str') + if time_range is not None: + query_parameters['timeRange'] = self._serialize.query("time_range", time_range, 'str') + if custom_time_range is not None: + query_parameters['customTimeRange'] = self._serialize.query("custom_time_range", custom_time_range, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AlertsSummary', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_summary.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alertsSummary'} diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/operations.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/operations.py new file mode 100644 index 000000000000..9718bb4566f6 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/operations.py @@ -0,0 +1,99 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version. Constant value: "2018-05-05". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-05-05" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """List all operations available through Azure Alerts Management Resource + Provider. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.alertsmanagement.models.OperationPaged[~azure.mgmt.alertsmanagement.models.Operation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.AlertsManagement/operations'} diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/smart_groups_operations.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/smart_groups_operations.py new file mode 100644 index 000000000000..8ff2c33ae120 --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/operations/smart_groups_operations.py @@ -0,0 +1,357 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class SmartGroupsOperations(object): + """SmartGroupsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version. Constant value: "2018-05-05". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-05-05" + + self.config = config + + def get_all( + self, target_resource=None, target_resource_group=None, target_resource_type=None, monitor_service=None, monitor_condition=None, severity=None, smart_group_state=None, time_range=None, page_count=None, sort_by=None, sort_order=None, custom_headers=None, raw=False, **operation_config): + """Get all smartGroups within the subscription. + + List all the smartGroups within the specified subscription. . + + :param target_resource: Filter by target resource( which is full ARM + ID) Default value is select all. + :type target_resource: str + :param target_resource_group: Filter by target resource group name. + Default value is select all. + :type target_resource_group: str + :param target_resource_type: Filter by target resource type. Default + value is select all. + :type target_resource_type: str + :param monitor_service: Filter by monitor service which is the source + of the alert instance. Default value is select all. Possible values + include: 'Application Insights', 'ActivityLog Administrative', + 'ActivityLog Security', 'ActivityLog Recommendation', 'ActivityLog + Policy', 'ActivityLog Autoscale', 'Log Analytics', 'Nagios', + 'Platform', 'SCOM', 'ServiceHealth', 'SmartDetector', 'VM Insights', + 'Zabbix' + :type monitor_service: str or + ~azure.mgmt.alertsmanagement.models.MonitorService + :param monitor_condition: Filter by monitor condition which is the + state of the monitor(alertRule) at monitor service. Default value is + to select all. Possible values include: 'Fired', 'Resolved' + :type monitor_condition: str or + ~azure.mgmt.alertsmanagement.models.MonitorCondition + :param severity: Filter by severity. Defaut value is select all. + Possible values include: 'Sev0', 'Sev1', 'Sev2', 'Sev3', 'Sev4' + :type severity: str or ~azure.mgmt.alertsmanagement.models.Severity + :param smart_group_state: Filter by state of the smart group. Default + value is to select all. Possible values include: 'New', + 'Acknowledged', 'Closed' + :type smart_group_state: str or + ~azure.mgmt.alertsmanagement.models.AlertState + :param time_range: Filter by time range by below listed values. + Default value is 1 day. Possible values include: '1h', '1d', '7d', + '30d' + :type time_range: str or ~azure.mgmt.alertsmanagement.models.TimeRange + :param page_count: Determines number of alerts returned per page in + response. Permissible value is between 1 to 250. When the + "includeContent" filter is selected, maximum value allowed is 25. + Default value is 25. + :type page_count: int + :param sort_by: Sort the query results by input field Default value + is sort by 'lastModifiedDateTime'. Possible values include: + 'alertsCount', 'state', 'severity', 'startDateTime', + 'lastModifiedDateTime' + :type sort_by: str or + ~azure.mgmt.alertsmanagement.models.SmartGroupsSortByFields + :param sort_order: Sort the query results order in either ascending or + descending. Default value is 'desc' for time fields and 'asc' for + others. Possible values include: 'asc', 'desc' + :type sort_order: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SmartGroupsList or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.alertsmanagement.models.SmartGroupsList or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if target_resource is not None: + query_parameters['targetResource'] = self._serialize.query("target_resource", target_resource, 'str') + if target_resource_group is not None: + query_parameters['targetResourceGroup'] = self._serialize.query("target_resource_group", target_resource_group, 'str') + if target_resource_type is not None: + query_parameters['targetResourceType'] = self._serialize.query("target_resource_type", target_resource_type, 'str') + if monitor_service is not None: + query_parameters['monitorService'] = self._serialize.query("monitor_service", monitor_service, 'str') + if monitor_condition is not None: + query_parameters['monitorCondition'] = self._serialize.query("monitor_condition", monitor_condition, 'str') + if severity is not None: + query_parameters['severity'] = self._serialize.query("severity", severity, 'str') + if smart_group_state is not None: + query_parameters['smartGroupState'] = self._serialize.query("smart_group_state", smart_group_state, 'str') + if time_range is not None: + query_parameters['timeRange'] = self._serialize.query("time_range", time_range, 'str') + if page_count is not None: + query_parameters['pageCount'] = self._serialize.query("page_count", page_count, 'int') + if sort_by is not None: + query_parameters['sortBy'] = self._serialize.query("sort_by", sort_by, 'str') + if sort_order is not None: + query_parameters['sortOrder'] = self._serialize.query("sort_order", sort_order, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SmartGroupsList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/smartGroups'} + + def get_by_id( + self, smart_group_id, custom_headers=None, raw=False, **operation_config): + """Get information of smart alerts group. + + Get details of smart group. + + :param smart_group_id: Smart group unique id. + :type smart_group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SmartGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.alertsmanagement.models.SmartGroup or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_by_id.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'smartGroupId': self._serialize.url("smart_group_id", smart_group_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('SmartGroup', response) + header_dict = { + 'x-ms-request-id': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get_by_id.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/smartGroups/{smartGroupId}'} + + def change_state( + self, smart_group_id, new_state, custom_headers=None, raw=False, **operation_config): + """Change the state from unresolved to resolved and all the alerts within + the smart group will also be resolved. + + :param smart_group_id: Smart group unique id. + :type smart_group_id: str + :param new_state: New state of the alert. Possible values include: + 'New', 'Acknowledged', 'Closed' + :type new_state: str or ~azure.mgmt.alertsmanagement.models.AlertState + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SmartGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.alertsmanagement.models.SmartGroup or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.change_state.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'smartGroupId': self._serialize.url("smart_group_id", smart_group_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['newState'] = self._serialize.query("new_state", new_state, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('SmartGroup', response) + header_dict = { + 'x-ms-request-id': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + change_state.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/smartGroups/{smartGroupId}/changeState'} + + def get_history( + self, smart_group_id, custom_headers=None, raw=False, **operation_config): + """Get the history of the changes of smart group. + + :param smart_group_id: Smart group unique id. + :type smart_group_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SmartGroupModification or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.alertsmanagement.models.SmartGroupModification or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_history.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'smartGroupId': self._serialize.url("smart_group_id", smart_group_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SmartGroupModification', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_history.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/smartGroups/{smartGroupId}/history'} diff --git a/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/version.py b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/version.py new file mode 100644 index 000000000000..e0ec669828cb --- /dev/null +++ b/azure-mgmt-alertsmanagement/azure/mgmt/alertsmanagement/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "0.1.0" + diff --git a/azure-mgmt-alertsmanagement/sdk_packaging.toml b/azure-mgmt-alertsmanagement/sdk_packaging.toml new file mode 100644 index 000000000000..079caeb63e3a --- /dev/null +++ b/azure-mgmt-alertsmanagement/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-alertsmanagement" +package_pprint_name = "Alerts Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-nspkg/setup.cfg b/azure-mgmt-alertsmanagement/setup.cfg similarity index 100% rename from azure-mgmt-nspkg/setup.cfg rename to azure-mgmt-alertsmanagement/setup.cfg diff --git a/azure-mgmt-alertsmanagement/setup.py b/azure-mgmt-alertsmanagement/setup.py new file mode 100644 index 000000000000..129b94c14ea7 --- /dev/null +++ b/azure-mgmt-alertsmanagement/setup.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python + +#------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +#-------------------------------------------------------------------------- + +import re +import os.path +from io import open +from setuptools import find_packages, setup + +# Change the PACKAGE_NAME only to change folder and different name +PACKAGE_NAME = "azure-mgmt-alertsmanagement" +PACKAGE_PPRINT_NAME = "Alerts Management" + +# a-b-c => a/b/c +package_folder_path = PACKAGE_NAME.replace('-', '/') +# a-b-c => a.b.c +namespace_name = PACKAGE_NAME.replace('-', '.') + +# azure v0.x is not compatible with this package +# azure v0.x used to have a __version__ attribute (newer versions don't) +try: + import azure + try: + ver = azure.__version__ + raise Exception( + 'This package is incompatible with azure=={}. '.format(ver) + + 'Uninstall it with "pip uninstall azure".' + ) + except AttributeError: + pass +except ImportError: + pass + +# Version extraction inspired from 'requests' +with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: + version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', + fd.read(), re.MULTILINE).group(1) + +if not version: + raise RuntimeError('Cannot find version information') + +with open('README.rst', encoding='utf-8') as f: + readme = f.read() +with open('HISTORY.rst', encoding='utf-8') as f: + history = f.read() + +setup( + name=PACKAGE_NAME, + version=version, + description='Microsoft Azure {} Client Library for Python'.format(PACKAGE_PPRINT_NAME), + long_description=readme + '\n\n' + history, + license='MIT License', + author='Microsoft Corporation', + author_email='azpysdkhelp@microsoft.com', + url='https://github.com/Azure/azure-sdk-for-python', + classifiers=[ + 'Development Status :: 4 - Beta', + 'Programming Language :: Python', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'License :: OSI Approved :: MIT License', + ], + zip_safe=False, + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), + install_requires=[ + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', + 'azure-common~=1.1', + ], + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } +) diff --git a/azure-mgmt-applicationinsights/MANIFEST.in b/azure-mgmt-applicationinsights/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-applicationinsights/MANIFEST.in +++ b/azure-mgmt-applicationinsights/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-applicationinsights/README.rst b/azure-mgmt-applicationinsights/README.rst index f100e9cd0d92..64548862ddbe 100644 --- a/azure-mgmt-applicationinsights/README.rst +++ b/azure-mgmt-applicationinsights/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Application Insights Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Application Insights Management -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-applicationinsights/azure/__init__.py b/azure-mgmt-applicationinsights/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-applicationinsights/azure/__init__.py +++ b/azure-mgmt-applicationinsights/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-applicationinsights/azure/mgmt/__init__.py b/azure-mgmt-applicationinsights/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-applicationinsights/azure/mgmt/__init__.py +++ b/azure-mgmt-applicationinsights/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-applicationinsights/azure_bdist_wheel.py b/azure-mgmt-applicationinsights/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-applicationinsights/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-applicationinsights/sdk_packaging.toml b/azure-mgmt-applicationinsights/sdk_packaging.toml new file mode 100644 index 000000000000..a61dd3a61142 --- /dev/null +++ b/azure-mgmt-applicationinsights/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-applicationinsights" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Application Insights Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-applicationinsights/setup.cfg b/azure-mgmt-applicationinsights/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-applicationinsights/setup.cfg +++ b/azure-mgmt-applicationinsights/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-applicationinsights/setup.py b/azure-mgmt-applicationinsights/setup.py index 09a51a75c023..5f95dcc02668 100644 --- a/azure-mgmt-applicationinsights/setup.py +++ b/azure-mgmt-applicationinsights/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-applicationinsights" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-authorization/MANIFEST.in b/azure-mgmt-authorization/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-authorization/MANIFEST.in +++ b/azure-mgmt-authorization/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-authorization/azure/__init__.py b/azure-mgmt-authorization/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-authorization/azure/__init__.py +++ b/azure-mgmt-authorization/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-authorization/azure/mgmt/__init__.py b/azure-mgmt-authorization/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-authorization/azure/mgmt/__init__.py +++ b/azure-mgmt-authorization/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-authorization/azure_bdist_wheel.py b/azure-mgmt-authorization/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-authorization/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-authorization/setup.cfg b/azure-mgmt-authorization/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-authorization/setup.cfg +++ b/azure-mgmt-authorization/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-authorization/setup.py b/azure-mgmt-authorization/setup.py index cf9a3444c247..2cf7b12ae953 100644 --- a/azure-mgmt-authorization/setup.py +++ b/azure-mgmt-authorization/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-authorization" @@ -76,11 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-batch/MANIFEST.in b/azure-mgmt-batch/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-batch/MANIFEST.in +++ b/azure-mgmt-batch/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-batch/README.rst b/azure-mgmt-batch/README.rst index ac09ede98675..afb9cf4da8d3 100644 --- a/azure-mgmt-batch/README.rst +++ b/azure-mgmt-batch/README.rst @@ -3,7 +3,15 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Batch Management Client Library. -This package has been tested with Python 2.7, 3.3, 3.4 and 3.5. +Azure Resource Manager (ARM) is the next generation of management APIs that +replace the old Azure Service Management (ASM). + +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For the older Azure Service Management (ASM) libraries, see +`azure-servicemanagement-legacy `__ library. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. Compatibility @@ -28,9 +36,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `the Batch samples repo -`__ -on GitHub. +For code examples, see `Batch Management +`__ +on docs.microsoft.com. Provide Feedback diff --git a/azure-mgmt-batch/azure/__init__.py b/azure-mgmt-batch/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-batch/azure/__init__.py +++ b/azure-mgmt-batch/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-batch/azure/mgmt/__init__.py b/azure-mgmt-batch/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-batch/azure/mgmt/__init__.py +++ b/azure-mgmt-batch/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-batch/azure_bdist_wheel.py b/azure-mgmt-batch/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-batch/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-batch/setup.cfg b/azure-mgmt-batch/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-batch/setup.cfg +++ b/azure-mgmt-batch/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-batch/setup.py b/azure-mgmt-batch/setup.py index 3498c2e0f75c..b40cb2d0f575 100644 --- a/azure-mgmt-batch/setup.py +++ b/azure-mgmt-batch/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-batch" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-batchai/MANIFEST.in b/azure-mgmt-batchai/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-batchai/MANIFEST.in +++ b/azure-mgmt-batchai/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-batchai/README.rst b/azure-mgmt-batchai/README.rst index d562999e29b7..65fcfec76e3a 100644 --- a/azure-mgmt-batchai/README.rst +++ b/azure-mgmt-batchai/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Batch AI Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-batchai/azure/__init__.py b/azure-mgmt-batchai/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-batchai/azure/__init__.py +++ b/azure-mgmt-batchai/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-batchai/azure/mgmt/__init__.py b/azure-mgmt-batchai/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-batchai/azure/mgmt/__init__.py +++ b/azure-mgmt-batchai/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-batchai/azure_bdist_wheel.py b/azure-mgmt-batchai/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-batchai/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-batchai/sdk_packaging.toml b/azure-mgmt-batchai/sdk_packaging.toml new file mode 100644 index 000000000000..37777a8441e4 --- /dev/null +++ b/azure-mgmt-batchai/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-batchai" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Batch AI Management" +package_doc_id = "batchai" +is_stable = true +is_arm = true diff --git a/azure-mgmt-batchai/setup.cfg b/azure-mgmt-batchai/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-batchai/setup.cfg +++ b/azure-mgmt-batchai/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-batchai/setup.py b/azure-mgmt-batchai/setup.py index dbd12ff17775..e79c25c9fb6d 100644 --- a/azure-mgmt-batchai/setup.py +++ b/azure-mgmt-batchai/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-batchai" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-billing/MANIFEST.in b/azure-mgmt-billing/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-billing/MANIFEST.in +++ b/azure-mgmt-billing/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-billing/README.rst b/azure-mgmt-billing/README.rst index 945a404aaa53..7fbd5ada9c50 100644 --- a/azure-mgmt-billing/README.rst +++ b/azure-mgmt-billing/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Billing Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Billing -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-billing/azure/__init__.py b/azure-mgmt-billing/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-billing/azure/__init__.py +++ b/azure-mgmt-billing/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-billing/azure/mgmt/__init__.py b/azure-mgmt-billing/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-billing/azure/mgmt/__init__.py +++ b/azure-mgmt-billing/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-billing/azure_bdist_wheel.py b/azure-mgmt-billing/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-billing/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-billing/sdk_packaging.toml b/azure-mgmt-billing/sdk_packaging.toml new file mode 100644 index 000000000000..d3bfbb1072b0 --- /dev/null +++ b/azure-mgmt-billing/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-billing" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Billing" +package_doc_id = "billing" +is_stable = false +is_arm = true diff --git a/azure-mgmt-billing/setup.cfg b/azure-mgmt-billing/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-billing/setup.cfg +++ b/azure-mgmt-billing/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-billing/setup.py b/azure-mgmt-billing/setup.py index e7e8f635cd99..8d3585c49983 100644 --- a/azure-mgmt-billing/setup.py +++ b/azure-mgmt-billing/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-billing" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-billing/tests/test_mgmt_billing.py b/azure-mgmt-billing/tests/test_mgmt_billing.py index 606c42cd905a..5b7cd1b4d15d 100644 --- a/azure-mgmt-billing/tests/test_mgmt_billing.py +++ b/azure-mgmt-billing/tests/test_mgmt_billing.py @@ -8,7 +8,6 @@ import unittest import azure.mgmt.billing -from testutils.common_recordingtestcase import record from devtools_testutils import AzureMgmtTestCase class MgmtBillingTest(AzureMgmtTestCase): @@ -25,7 +24,7 @@ def _validate_invoice(self, invoice, url_generated=False): self.assertIsNotNone(invoice.download_url.expiry_time) else: self.assertIsNone(invoice.download_url) - + def _validate_billing_period(self, billing_period): self.assertIsNotNone(billing_period) self.assertIsNotNone(billing_period.id) @@ -44,41 +43,41 @@ def test_billing_enrollment_accounts_list(self): def test_billing_invoice_latest(self): output = self.billing_client.invoices.get_latest() self._validate_invoice(output, url_generated=True) - + def test_billing_invoice_list_get(self): output = list(self.billing_client.invoices.list()) self.assertTrue(len(output) > 0) self._validate_invoice(output[0], url_generated=False) invoice = self.billing_client.invoices.get(output[0].name) self._validate_invoice(invoice, url_generated=True) - + def test_billing_invoice_list_generate_url(self): output = list(self.billing_client.invoices.list(expand='downloadUrl')) self.assertTrue(len(output) > 0) self._validate_invoice(output[0], url_generated=True) - + def test_billing_invoice_list_top(self): output = list(self.billing_client.invoices.list(expand='downloadUrl', top=1)) self.assertEqual(1, len(output)) self._validate_invoice(output[0], url_generated=True) - + def test_billing_invoice_list_filter(self): output = list(self.billing_client.invoices.list(filter='invoicePeriodEndDate gt 2017-02-01')) self.assertTrue(len(output) > 0) self._validate_invoice(output[0], url_generated=False) - + def test_billing_period_list_get(self): output = list(self.billing_client.billing_periods.list()) self.assertTrue(len(output) > 0) self._validate_billing_period(output[0]) billing_period = self.billing_client.billing_periods.get(output[0].name) self._validate_billing_period(billing_period) - + def test_billing_period_list_top(self): output = list(self.billing_client.billing_periods.list(top=1)) self.assertEqual(1, len(output)) self._validate_billing_period(output[0]) - + def test_billing_period_list_filter(self): output = list(self.billing_client.billing_periods.list(filter='billingPeriodEndDate gt 2017-02-01')) self.assertTrue(len(output) > 0) diff --git a/azure-mgmt-botservice/HISTORY.rst b/azure-mgmt-botservice/HISTORY.rst index 8924d5d6c445..01567a69d8bd 100644 --- a/azure-mgmt-botservice/HISTORY.rst +++ b/azure-mgmt-botservice/HISTORY.rst @@ -3,7 +3,7 @@ Release History =============== -0.1.0 (1970-01-01) +0.1.0 (2018-08-07) ++++++++++++++++++ * Initial Release diff --git a/azure-mgmt-botservice/MANIFEST.in b/azure-mgmt-botservice/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-botservice/MANIFEST.in +++ b/azure-mgmt-botservice/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-botservice/README.rst b/azure-mgmt-botservice/README.rst index 091ce1ab13e3..cb807305b3e8 100644 --- a/azure-mgmt-botservice/README.rst +++ b/azure-mgmt-botservice/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Bot Service Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Bot Service -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-botservice/azure/__init__.py b/azure-mgmt-botservice/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-botservice/azure/__init__.py +++ b/azure-mgmt-botservice/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-botservice/azure/mgmt/__init__.py b/azure-mgmt-botservice/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-botservice/azure/mgmt/__init__.py +++ b/azure-mgmt-botservice/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/azure_bot_service.py b/azure-mgmt-botservice/azure/mgmt/botservice/azure_bot_service.py index a3b1f8e9e3b6..7264c073950a 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/azure_bot_service.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/azure_bot_service.py @@ -9,14 +9,14 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.service_client import ServiceClient +from msrest.service_client import SDKClient from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION from .operations.bots_operations import BotsOperations -from .operations.bot_services_operations import BotServicesOperations from .operations.channels_operations import ChannelsOperations from .operations.operations import Operations +from .operations.bot_connection_operations import BotConnectionOperations from . import models @@ -52,7 +52,7 @@ def __init__( self.subscription_id = subscription_id -class AzureBotService(object): +class AzureBotService(SDKClient): """Azure Bot Service is a platform for creating smart conversational agents. :ivar config: Configuration for client. @@ -60,12 +60,12 @@ class AzureBotService(object): :ivar bots: Bots operations :vartype bots: azure.mgmt.botservice.operations.BotsOperations - :ivar bot_services: BotServices operations - :vartype bot_services: azure.mgmt.botservice.operations.BotServicesOperations :ivar channels: Channels operations :vartype channels: azure.mgmt.botservice.operations.ChannelsOperations :ivar operations: Operations operations :vartype operations: azure.mgmt.botservice.operations.Operations + :ivar bot_connection: BotConnection operations + :vartype bot_connection: azure.mgmt.botservice.operations.BotConnectionOperations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -79,18 +79,18 @@ def __init__( self, credentials, subscription_id, base_url=None): self.config = AzureBotServiceConfiguration(credentials, subscription_id, base_url) - self._client = ServiceClient(self.config.credentials, self.config) + super(AzureBotService, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '2017-12-01' + self.api_version = '2018-07-12' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) self.bots = BotsOperations( self._client, self.config, self._serialize, self._deserialize) - self.bot_services = BotServicesOperations( - self._client, self.config, self._serialize, self._deserialize) self.channels = ChannelsOperations( self._client, self.config, self._serialize, self._deserialize) self.operations = Operations( self._client, self.config, self._serialize, self._deserialize) + self.bot_connection = BotConnectionOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/__init__.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/__init__.py index 5f741876394b..d1d07d8093e7 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/__init__.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/__init__.py @@ -9,43 +9,98 @@ # regenerated. # -------------------------------------------------------------------------- -from .sku import Sku -from .resource import Resource -from .bot_properties import BotProperties -from .bot import Bot -from .channel import Channel -from .bot_channel import BotChannel -from .facebook_channel_properties import FacebookChannelProperties -from .facebook_channel import FacebookChannel -from .email_channel_properties import EmailChannelProperties -from .email_channel import EmailChannel -from .ms_teams_channel_properties import MsTeamsChannelProperties -from .ms_teams_channel import MsTeamsChannel -from .skype_channel_properties import SkypeChannelProperties -from .skype_channel import SkypeChannel -from .kik_channel_properties import KikChannelProperties -from .kik_channel import KikChannel -from .web_chat_site import WebChatSite -from .web_chat_channel_properties import WebChatChannelProperties -from .web_chat_channel import WebChatChannel -from .direct_line_site import DirectLineSite -from .direct_line_channel_properties import DirectLineChannelProperties -from .direct_line_channel import DirectLineChannel -from .telegram_channel_properties import TelegramChannelProperties -from .telegram_channel import TelegramChannel -from .sms_channel_properties import SmsChannelProperties -from .sms_channel import SmsChannel -from .slack_channel_properties import SlackChannelProperties -from .slack_channel import SlackChannel -from .error_body import ErrorBody -from .error import Error, ErrorException -from .operation_display_info import OperationDisplayInfo -from .operation_entity import OperationEntity -from .check_name_availability_request_body import CheckNameAvailabilityRequestBody -from .check_name_availability_response_body import CheckNameAvailabilityResponseBody +try: + from .sku_py3 import Sku + from .resource_py3 import Resource + from .bot_properties_py3 import BotProperties + from .bot_py3 import Bot + from .channel_py3 import Channel + from .bot_channel_py3 import BotChannel + from .facebook_page_py3 import FacebookPage + from .facebook_channel_properties_py3 import FacebookChannelProperties + from .facebook_channel_py3 import FacebookChannel + from .email_channel_properties_py3 import EmailChannelProperties + from .email_channel_py3 import EmailChannel + from .ms_teams_channel_properties_py3 import MsTeamsChannelProperties + from .ms_teams_channel_py3 import MsTeamsChannel + from .skype_channel_properties_py3 import SkypeChannelProperties + from .skype_channel_py3 import SkypeChannel + from .kik_channel_properties_py3 import KikChannelProperties + from .kik_channel_py3 import KikChannel + from .web_chat_site_py3 import WebChatSite + from .web_chat_channel_properties_py3 import WebChatChannelProperties + from .web_chat_channel_py3 import WebChatChannel + from .direct_line_site_py3 import DirectLineSite + from .direct_line_channel_properties_py3 import DirectLineChannelProperties + from .direct_line_channel_py3 import DirectLineChannel + from .telegram_channel_properties_py3 import TelegramChannelProperties + from .telegram_channel_py3 import TelegramChannel + from .sms_channel_properties_py3 import SmsChannelProperties + from .sms_channel_py3 import SmsChannel + from .slack_channel_properties_py3 import SlackChannelProperties + from .slack_channel_py3 import SlackChannel + from .connection_item_name_py3 import ConnectionItemName + from .connection_setting_parameter_py3 import ConnectionSettingParameter + from .connection_setting_properties_py3 import ConnectionSettingProperties + from .connection_setting_py3 import ConnectionSetting + from .service_provider_parameter_py3 import ServiceProviderParameter + from .service_provider_properties_py3 import ServiceProviderProperties + from .service_provider_py3 import ServiceProvider + from .service_provider_response_list_py3 import ServiceProviderResponseList + from .error_body_py3 import ErrorBody + from .error_py3 import Error, ErrorException + from .operation_display_info_py3 import OperationDisplayInfo + from .operation_entity_py3 import OperationEntity + from .check_name_availability_request_body_py3 import CheckNameAvailabilityRequestBody + from .check_name_availability_response_body_py3 import CheckNameAvailabilityResponseBody +except (SyntaxError, ImportError): + from .sku import Sku + from .resource import Resource + from .bot_properties import BotProperties + from .bot import Bot + from .channel import Channel + from .bot_channel import BotChannel + from .facebook_page import FacebookPage + from .facebook_channel_properties import FacebookChannelProperties + from .facebook_channel import FacebookChannel + from .email_channel_properties import EmailChannelProperties + from .email_channel import EmailChannel + from .ms_teams_channel_properties import MsTeamsChannelProperties + from .ms_teams_channel import MsTeamsChannel + from .skype_channel_properties import SkypeChannelProperties + from .skype_channel import SkypeChannel + from .kik_channel_properties import KikChannelProperties + from .kik_channel import KikChannel + from .web_chat_site import WebChatSite + from .web_chat_channel_properties import WebChatChannelProperties + from .web_chat_channel import WebChatChannel + from .direct_line_site import DirectLineSite + from .direct_line_channel_properties import DirectLineChannelProperties + from .direct_line_channel import DirectLineChannel + from .telegram_channel_properties import TelegramChannelProperties + from .telegram_channel import TelegramChannel + from .sms_channel_properties import SmsChannelProperties + from .sms_channel import SmsChannel + from .slack_channel_properties import SlackChannelProperties + from .slack_channel import SlackChannel + from .connection_item_name import ConnectionItemName + from .connection_setting_parameter import ConnectionSettingParameter + from .connection_setting_properties import ConnectionSettingProperties + from .connection_setting import ConnectionSetting + from .service_provider_parameter import ServiceProviderParameter + from .service_provider_properties import ServiceProviderProperties + from .service_provider import ServiceProvider + from .service_provider_response_list import ServiceProviderResponseList + from .error_body import ErrorBody + from .error import Error, ErrorException + from .operation_display_info import OperationDisplayInfo + from .operation_entity import OperationEntity + from .check_name_availability_request_body import CheckNameAvailabilityRequestBody + from .check_name_availability_response_body import CheckNameAvailabilityResponseBody from .bot_paged import BotPaged from .bot_channel_paged import BotChannelPaged from .operation_entity_paged import OperationEntityPaged +from .connection_setting_paged import ConnectionSettingPaged from .azure_bot_service_enums import ( SkuName, SkuTier, @@ -60,6 +115,7 @@ 'Bot', 'Channel', 'BotChannel', + 'FacebookPage', 'FacebookChannelProperties', 'FacebookChannel', 'EmailChannelProperties', @@ -82,6 +138,14 @@ 'SmsChannel', 'SlackChannelProperties', 'SlackChannel', + 'ConnectionItemName', + 'ConnectionSettingParameter', + 'ConnectionSettingProperties', + 'ConnectionSetting', + 'ServiceProviderParameter', + 'ServiceProviderProperties', + 'ServiceProvider', + 'ServiceProviderResponseList', 'ErrorBody', 'Error', 'ErrorException', 'OperationDisplayInfo', @@ -91,6 +155,7 @@ 'BotPaged', 'BotChannelPaged', 'OperationEntityPaged', + 'ConnectionSettingPaged', 'SkuName', 'SkuTier', 'Kind', diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/azure_bot_service_enums.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/azure_bot_service_enums.py index 7c7077a9a3a2..5e38bd762700 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/azure_bot_service_enums.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/azure_bot_service_enums.py @@ -12,19 +12,19 @@ from enum import Enum -class SkuName(Enum): +class SkuName(str, Enum): f0 = "F0" s1 = "S1" -class SkuTier(Enum): +class SkuTier(str, Enum): free = "Free" standard = "Standard" -class Kind(Enum): +class Kind(str, Enum): sdk = "sdk" designer = "designer" @@ -32,7 +32,15 @@ class Kind(Enum): function = "function" -class ChannelName(Enum): +class ChannelName(str, Enum): facebook_channel = "FacebookChannel" email_channel = "EmailChannel" + kik_channel = "KikChannel" + telegram_channel = "TelegramChannel" + slack_channel = "SlackChannel" + ms_teams_channel = "MsTeamsChannel" + skype_channel = "SkypeChannel" + web_chat_channel = "WebChatChannel" + direct_line_channel = "DirectLineChannel" + sms_channel = "SmsChannel" diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot.py index ec00bdc15815..3a43ec5e6e95 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot.py @@ -57,6 +57,6 @@ class Bot(Resource): 'properties': {'key': 'properties', 'type': 'BotProperties'}, } - def __init__(self, location=None, tags=None, sku=None, kind=None, etag=None, properties=None): - super(Bot, self).__init__(location=location, tags=tags, sku=sku, kind=kind, etag=etag) - self.properties = properties + def __init__(self, **kwargs): + super(Bot, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_channel.py index 78b6439dcb7f..3211c236f2cf 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_channel.py @@ -57,6 +57,6 @@ class BotChannel(Resource): 'properties': {'key': 'properties', 'type': 'Channel'}, } - def __init__(self, location=None, tags=None, sku=None, kind=None, etag=None, properties=None): - super(BotChannel, self).__init__(location=location, tags=tags, sku=sku, kind=kind, etag=etag) - self.properties = properties + def __init__(self, **kwargs): + super(BotChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_channel_py3.py new file mode 100644 index 000000000000..430d49a369de --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_channel_py3.py @@ -0,0 +1,62 @@ +# 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 .resource_py3 import Resource + + +class BotChannel(Resource): + """Bot channel resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Specifies the resource ID. + :vartype id: str + :ivar name: Specifies the name of the resource. + :vartype name: str + :param location: Specifies the location of the resource. + :type location: str + :ivar type: Specifies the type of the resource. + :vartype type: str + :param tags: Contains resource tags defined as key/value pairs. + :type tags: dict[str, str] + :param sku: Gets or sets the SKU of the resource. + :type sku: ~azure.mgmt.botservice.models.Sku + :param kind: Required. Gets or sets the Kind of the resource. Possible + values include: 'sdk', 'designer', 'bot', 'function' + :type kind: str or ~azure.mgmt.botservice.models.Kind + :param etag: Entity Tag + :type etag: str + :param properties: The set of properties specific to bot channel resource + :type properties: ~azure.mgmt.botservice.models.Channel + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'Channel'}, + } + + def __init__(self, *, location: str=None, tags=None, sku=None, kind=None, etag: str=None, properties=None, **kwargs) -> None: + super(BotChannel, self).__init__(location=location, tags=tags, sku=sku, kind=kind, etag=etag, **kwargs) + self.properties = properties diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_properties.py index 4b7e4251db5e..7a91b2e87f38 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_properties.py @@ -18,17 +18,19 @@ class BotProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - :param display_name: The Name of the bot + All required parameters must be populated in order to send to Azure. + + :param display_name: Required. The Name of the bot :type display_name: str :param description: The description of the bot :type description: str :param icon_url: The Icon Url of the bot :type icon_url: str - :param endpoint: The bot's endpoint + :param endpoint: Required. The bot's endpoint :type endpoint: str :ivar endpoint_version: The bot's endpoint version :vartype endpoint_version: str - :param msa_app_id: Microsoft App Id for the bot + :param msa_app_id: Required. Microsoft App Id for the bot :type msa_app_id: str :ivar configured_channels: Collection of channels for which the bot is configured @@ -74,17 +76,18 @@ class BotProperties(Model): 'luis_key': {'key': 'luisKey', 'type': 'str'}, } - def __init__(self, display_name, endpoint, msa_app_id, description=None, icon_url=None, developer_app_insight_key=None, developer_app_insights_api_key=None, developer_app_insights_application_id=None, luis_app_ids=None, luis_key=None): - self.display_name = display_name - self.description = description - self.icon_url = icon_url - self.endpoint = endpoint + def __init__(self, **kwargs): + super(BotProperties, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.description = kwargs.get('description', None) + self.icon_url = kwargs.get('icon_url', None) + self.endpoint = kwargs.get('endpoint', None) self.endpoint_version = None - self.msa_app_id = msa_app_id + self.msa_app_id = kwargs.get('msa_app_id', None) self.configured_channels = None self.enabled_channels = None - self.developer_app_insight_key = developer_app_insight_key - self.developer_app_insights_api_key = developer_app_insights_api_key - self.developer_app_insights_application_id = developer_app_insights_application_id - self.luis_app_ids = luis_app_ids - self.luis_key = luis_key + self.developer_app_insight_key = kwargs.get('developer_app_insight_key', None) + self.developer_app_insights_api_key = kwargs.get('developer_app_insights_api_key', None) + self.developer_app_insights_application_id = kwargs.get('developer_app_insights_application_id', None) + self.luis_app_ids = kwargs.get('luis_app_ids', None) + self.luis_key = kwargs.get('luis_key', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_properties_py3.py new file mode 100644 index 000000000000..d96dbadf231a --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_properties_py3.py @@ -0,0 +1,93 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BotProperties(Model): + """The parameters to provide for the Bot. + + 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 display_name: Required. The Name of the bot + :type display_name: str + :param description: The description of the bot + :type description: str + :param icon_url: The Icon Url of the bot + :type icon_url: str + :param endpoint: Required. The bot's endpoint + :type endpoint: str + :ivar endpoint_version: The bot's endpoint version + :vartype endpoint_version: str + :param msa_app_id: Required. Microsoft App Id for the bot + :type msa_app_id: str + :ivar configured_channels: Collection of channels for which the bot is + configured + :vartype configured_channels: list[str] + :ivar enabled_channels: Collection of channels for which the bot is + enabled + :vartype enabled_channels: list[str] + :param developer_app_insight_key: The Application Insights key + :type developer_app_insight_key: str + :param developer_app_insights_api_key: The Application Insights Api Key + :type developer_app_insights_api_key: str + :param developer_app_insights_application_id: The Application Insights App + Id + :type developer_app_insights_application_id: str + :param luis_app_ids: Collection of LUIS App Ids + :type luis_app_ids: list[str] + :param luis_key: The LUIS Key + :type luis_key: str + """ + + _validation = { + 'display_name': {'required': True}, + 'endpoint': {'required': True}, + 'endpoint_version': {'readonly': True}, + 'msa_app_id': {'required': True}, + 'configured_channels': {'readonly': True}, + 'enabled_channels': {'readonly': True}, + } + + _attribute_map = { + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'icon_url': {'key': 'iconUrl', 'type': 'str'}, + 'endpoint': {'key': 'endpoint', 'type': 'str'}, + 'endpoint_version': {'key': 'endpointVersion', 'type': 'str'}, + 'msa_app_id': {'key': 'msaAppId', 'type': 'str'}, + 'configured_channels': {'key': 'configuredChannels', 'type': '[str]'}, + 'enabled_channels': {'key': 'enabledChannels', 'type': '[str]'}, + 'developer_app_insight_key': {'key': 'developerAppInsightKey', 'type': 'str'}, + 'developer_app_insights_api_key': {'key': 'developerAppInsightsApiKey', 'type': 'str'}, + 'developer_app_insights_application_id': {'key': 'developerAppInsightsApplicationId', 'type': 'str'}, + 'luis_app_ids': {'key': 'luisAppIds', 'type': '[str]'}, + 'luis_key': {'key': 'luisKey', 'type': 'str'}, + } + + def __init__(self, *, display_name: str, endpoint: str, msa_app_id: str, description: str=None, icon_url: str=None, developer_app_insight_key: str=None, developer_app_insights_api_key: str=None, developer_app_insights_application_id: str=None, luis_app_ids=None, luis_key: str=None, **kwargs) -> None: + super(BotProperties, self).__init__(**kwargs) + self.display_name = display_name + self.description = description + self.icon_url = icon_url + self.endpoint = endpoint + self.endpoint_version = None + self.msa_app_id = msa_app_id + self.configured_channels = None + self.enabled_channels = None + self.developer_app_insight_key = developer_app_insight_key + self.developer_app_insights_api_key = developer_app_insights_api_key + self.developer_app_insights_application_id = developer_app_insights_application_id + self.luis_app_ids = luis_app_ids + self.luis_key = luis_key diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_py3.py new file mode 100644 index 000000000000..c68447077439 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/bot_py3.py @@ -0,0 +1,62 @@ +# 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 .resource_py3 import Resource + + +class Bot(Resource): + """Bot resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Specifies the resource ID. + :vartype id: str + :ivar name: Specifies the name of the resource. + :vartype name: str + :param location: Specifies the location of the resource. + :type location: str + :ivar type: Specifies the type of the resource. + :vartype type: str + :param tags: Contains resource tags defined as key/value pairs. + :type tags: dict[str, str] + :param sku: Gets or sets the SKU of the resource. + :type sku: ~azure.mgmt.botservice.models.Sku + :param kind: Required. Gets or sets the Kind of the resource. Possible + values include: 'sdk', 'designer', 'bot', 'function' + :type kind: str or ~azure.mgmt.botservice.models.Kind + :param etag: Entity Tag + :type etag: str + :param properties: The set of properties specific to bot resource + :type properties: ~azure.mgmt.botservice.models.BotProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'BotProperties'}, + } + + def __init__(self, *, location: str=None, tags=None, sku=None, kind=None, etag: str=None, properties=None, **kwargs) -> None: + super(Bot, self).__init__(location=location, tags=tags, sku=sku, kind=kind, etag=etag, **kwargs) + self.properties = properties diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/channel.py index d6b04cf2f463..fb953483c7d5 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/channel.py @@ -20,7 +20,9 @@ class Channel(Model): SkypeChannel, KikChannel, WebChatChannel, DirectLineChannel, TelegramChannel, SmsChannel, SlackChannel - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str """ @@ -36,5 +38,6 @@ class Channel(Model): 'channel_name': {'FacebookChannel': 'FacebookChannel', 'EmailChannel': 'EmailChannel', 'MsTeamsChannel': 'MsTeamsChannel', 'SkypeChannel': 'SkypeChannel', 'KikChannel': 'KikChannel', 'WebChatChannel': 'WebChatChannel', 'DirectLineChannel': 'DirectLineChannel', 'TelegramChannel': 'TelegramChannel', 'SmsChannel': 'SmsChannel', 'SlackChannel': 'SlackChannel'} } - def __init__(self): + def __init__(self, **kwargs): + super(Channel, self).__init__(**kwargs) self.channel_name = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/channel_py3.py new file mode 100644 index 000000000000..a1194366b5b8 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/channel_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Channel(Model): + """Channel definition. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: FacebookChannel, EmailChannel, MsTeamsChannel, + SkypeChannel, KikChannel, WebChatChannel, DirectLineChannel, + TelegramChannel, SmsChannel, SlackChannel + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + } + + _subtype_map = { + 'channel_name': {'FacebookChannel': 'FacebookChannel', 'EmailChannel': 'EmailChannel', 'MsTeamsChannel': 'MsTeamsChannel', 'SkypeChannel': 'SkypeChannel', 'KikChannel': 'KikChannel', 'WebChatChannel': 'WebChatChannel', 'DirectLineChannel': 'DirectLineChannel', 'TelegramChannel': 'TelegramChannel', 'SmsChannel': 'SmsChannel', 'SlackChannel': 'SlackChannel'} + } + + def __init__(self, **kwargs) -> None: + super(Channel, self).__init__(**kwargs) + self.channel_name = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_request_body.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_request_body.py index 7c78f2e00d5a..ff60cb427088 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_request_body.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_request_body.py @@ -29,6 +29,7 @@ class CheckNameAvailabilityRequestBody(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self, name=None, type=None): - self.name = name - self.type = type + def __init__(self, **kwargs): + super(CheckNameAvailabilityRequestBody, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_request_body_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_request_body_py3.py new file mode 100644 index 000000000000..809427793ead --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_request_body_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CheckNameAvailabilityRequestBody(Model): + """The request body for a request to Bot Service Management to check + availability of a bot name. + + :param name: the name of the bot for which availability needs to be + checked. + :type name: str + :param type: the type of the bot for which availability needs to be + checked + :type type: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, type: str=None, **kwargs) -> None: + super(CheckNameAvailabilityRequestBody, self).__init__(**kwargs) + self.name = name + self.type = type diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_response_body.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_response_body.py index 4e1313f2f5e3..093eef2cc2aa 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_response_body.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_response_body.py @@ -28,6 +28,7 @@ class CheckNameAvailabilityResponseBody(Model): 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, valid=None, message=None): - self.valid = valid - self.message = message + def __init__(self, **kwargs): + super(CheckNameAvailabilityResponseBody, self).__init__(**kwargs) + self.valid = kwargs.get('valid', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_response_body_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_response_body_py3.py new file mode 100644 index 000000000000..0978b932dd61 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/check_name_availability_response_body_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CheckNameAvailabilityResponseBody(Model): + """The response body returned for a request to Bot Service Management to check + availability of a bot name. + + :param valid: indicates if the bot name is valid. + :type valid: bool + :param message: additional message from the bot management api showing why + a bot name is not available + :type message: str + """ + + _attribute_map = { + 'valid': {'key': 'valid', 'type': 'bool'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, valid: bool=None, message: str=None, **kwargs) -> None: + super(CheckNameAvailabilityResponseBody, self).__init__(**kwargs) + self.valid = valid + self.message = message diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_item_name.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_item_name.py new file mode 100644 index 000000000000..bcf5c18f0e66 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_item_name.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionItemName(Model): + """The display name of a connection Item Setting registered with the Bot. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Connection Item name that has been added in the API + :vartype name: str + """ + + _validation = { + 'name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectionItemName, self).__init__(**kwargs) + self.name = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_item_name_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_item_name_py3.py new file mode 100644 index 000000000000..90a58e610be9 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_item_name_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionItemName(Model): + """The display name of a connection Item Setting registered with the Bot. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Connection Item name that has been added in the API + :vartype name: str + """ + + _validation = { + 'name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectionItemName, self).__init__(**kwargs) + self.name = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting.py new file mode 100644 index 000000000000..dec1cdc63118 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting.py @@ -0,0 +1,63 @@ +# 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 .resource import Resource + + +class ConnectionSetting(Resource): + """Bot channel resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Specifies the resource ID. + :vartype id: str + :ivar name: Specifies the name of the resource. + :vartype name: str + :param location: Specifies the location of the resource. + :type location: str + :ivar type: Specifies the type of the resource. + :vartype type: str + :param tags: Contains resource tags defined as key/value pairs. + :type tags: dict[str, str] + :param sku: Gets or sets the SKU of the resource. + :type sku: ~azure.mgmt.botservice.models.Sku + :param kind: Required. Gets or sets the Kind of the resource. Possible + values include: 'sdk', 'designer', 'bot', 'function' + :type kind: str or ~azure.mgmt.botservice.models.Kind + :param etag: Entity Tag + :type etag: str + :param properties: The set of properties specific to bot channel resource + :type properties: + ~azure.mgmt.botservice.models.ConnectionSettingProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'ConnectionSettingProperties'}, + } + + def __init__(self, **kwargs): + super(ConnectionSetting, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_paged.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_paged.py new file mode 100644 index 000000000000..5708e4ee7ee3 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ConnectionSettingPaged(Paged): + """ + A paging container for iterating over a list of :class:`ConnectionSetting ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ConnectionSetting]'} + } + + def __init__(self, *args, **kwargs): + + super(ConnectionSettingPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_parameter.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_parameter.py new file mode 100644 index 000000000000..b0fb3703d0a7 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_parameter.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionSettingParameter(Model): + """Extra Parameter in a Connection Setting Properties to indicate service + provider specific properties. + + :param key: Key for the Connection Setting Parameter. + :type key: str + :param value: Value associated with the Connection Setting Parameter. + :type value: str + """ + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectionSettingParameter, self).__init__(**kwargs) + self.key = kwargs.get('key', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_parameter_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_parameter_py3.py new file mode 100644 index 000000000000..9126c281f852 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_parameter_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionSettingParameter(Model): + """Extra Parameter in a Connection Setting Properties to indicate service + provider specific properties. + + :param key: Key for the Connection Setting Parameter. + :type key: str + :param value: Value associated with the Connection Setting Parameter. + :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(ConnectionSettingParameter, self).__init__(**kwargs) + self.key = key + self.value = value diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_properties.py new file mode 100644 index 000000000000..fca31c7edef0 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionSettingProperties(Model): + """Properties for a Connection Setting Item. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param client_id: Client Id associated with the Connection Setting. + :type client_id: str + :ivar setting_id: Setting Id set by the service for the Connection + Setting. + :vartype setting_id: str + :param client_secret: Client Secret associated with the Connection Setting + :type client_secret: str + :param scopes: Scopes associated with the Connection Setting + :type scopes: str + :param service_provider_id: Service Provider Id associated with the + Connection Setting + :type service_provider_id: str + :param service_provider_display_name: Service Provider Display Name + associated with the Connection Setting + :type service_provider_display_name: str + :param parameters: Service Provider Parameters associated with the + Connection Setting + :type parameters: + list[~azure.mgmt.botservice.models.ConnectionSettingParameter] + """ + + _validation = { + 'setting_id': {'readonly': True}, + } + + _attribute_map = { + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'setting_id': {'key': 'settingId', 'type': 'str'}, + 'client_secret': {'key': 'clientSecret', 'type': 'str'}, + 'scopes': {'key': 'scopes', 'type': 'str'}, + 'service_provider_id': {'key': 'serviceProviderId', 'type': 'str'}, + 'service_provider_display_name': {'key': 'serviceProviderDisplayName', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': '[ConnectionSettingParameter]'}, + } + + def __init__(self, **kwargs): + super(ConnectionSettingProperties, self).__init__(**kwargs) + self.client_id = kwargs.get('client_id', None) + self.setting_id = None + self.client_secret = kwargs.get('client_secret', None) + self.scopes = kwargs.get('scopes', None) + self.service_provider_id = kwargs.get('service_provider_id', None) + self.service_provider_display_name = kwargs.get('service_provider_display_name', None) + self.parameters = kwargs.get('parameters', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_properties_py3.py new file mode 100644 index 000000000000..89613382f22a --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionSettingProperties(Model): + """Properties for a Connection Setting Item. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param client_id: Client Id associated with the Connection Setting. + :type client_id: str + :ivar setting_id: Setting Id set by the service for the Connection + Setting. + :vartype setting_id: str + :param client_secret: Client Secret associated with the Connection Setting + :type client_secret: str + :param scopes: Scopes associated with the Connection Setting + :type scopes: str + :param service_provider_id: Service Provider Id associated with the + Connection Setting + :type service_provider_id: str + :param service_provider_display_name: Service Provider Display Name + associated with the Connection Setting + :type service_provider_display_name: str + :param parameters: Service Provider Parameters associated with the + Connection Setting + :type parameters: + list[~azure.mgmt.botservice.models.ConnectionSettingParameter] + """ + + _validation = { + 'setting_id': {'readonly': True}, + } + + _attribute_map = { + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'setting_id': {'key': 'settingId', 'type': 'str'}, + 'client_secret': {'key': 'clientSecret', 'type': 'str'}, + 'scopes': {'key': 'scopes', 'type': 'str'}, + 'service_provider_id': {'key': 'serviceProviderId', 'type': 'str'}, + 'service_provider_display_name': {'key': 'serviceProviderDisplayName', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': '[ConnectionSettingParameter]'}, + } + + def __init__(self, *, client_id: str=None, client_secret: str=None, scopes: str=None, service_provider_id: str=None, service_provider_display_name: str=None, parameters=None, **kwargs) -> None: + super(ConnectionSettingProperties, self).__init__(**kwargs) + self.client_id = client_id + self.setting_id = None + self.client_secret = client_secret + self.scopes = scopes + self.service_provider_id = service_provider_id + self.service_provider_display_name = service_provider_display_name + self.parameters = parameters diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_py3.py new file mode 100644 index 000000000000..12ab93de6219 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/connection_setting_py3.py @@ -0,0 +1,63 @@ +# 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 .resource_py3 import Resource + + +class ConnectionSetting(Resource): + """Bot channel resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Specifies the resource ID. + :vartype id: str + :ivar name: Specifies the name of the resource. + :vartype name: str + :param location: Specifies the location of the resource. + :type location: str + :ivar type: Specifies the type of the resource. + :vartype type: str + :param tags: Contains resource tags defined as key/value pairs. + :type tags: dict[str, str] + :param sku: Gets or sets the SKU of the resource. + :type sku: ~azure.mgmt.botservice.models.Sku + :param kind: Required. Gets or sets the Kind of the resource. Possible + values include: 'sdk', 'designer', 'bot', 'function' + :type kind: str or ~azure.mgmt.botservice.models.Kind + :param etag: Entity Tag + :type etag: str + :param properties: The set of properties specific to bot channel resource + :type properties: + ~azure.mgmt.botservice.models.ConnectionSettingProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'ConnectionSettingProperties'}, + } + + def __init__(self, *, location: str=None, tags=None, sku=None, kind=None, etag: str=None, properties=None, **kwargs) -> None: + super(ConnectionSetting, self).__init__(location=location, tags=tags, sku=sku, kind=kind, etag=etag, **kwargs) + self.properties = properties diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel.py index 43af144b6f01..dc1ed1782c6a 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel.py @@ -15,7 +15,9 @@ class DirectLineChannel(Channel): """Direct Line channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to Direct Line channel resource @@ -32,7 +34,7 @@ class DirectLineChannel(Channel): 'properties': {'key': 'properties', 'type': 'DirectLineChannelProperties'}, } - def __init__(self, properties=None): - super(DirectLineChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(DirectLineChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'DirectLineChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_properties.py index 537e8b44ea9c..67bcd592ff78 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_properties.py @@ -23,5 +23,6 @@ class DirectLineChannelProperties(Model): 'sites': {'key': 'sites', 'type': '[DirectLineSite]'}, } - def __init__(self, sites=None): - self.sites = sites + def __init__(self, **kwargs): + super(DirectLineChannelProperties, self).__init__(**kwargs) + self.sites = kwargs.get('sites', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_properties_py3.py new file mode 100644 index 000000000000..a3741aa64ab3 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_properties_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DirectLineChannelProperties(Model): + """The parameters to provide for the Direct Line channel. + + :param sites: The list of Direct Line sites + :type sites: list[~azure.mgmt.botservice.models.DirectLineSite] + """ + + _attribute_map = { + 'sites': {'key': 'sites', 'type': '[DirectLineSite]'}, + } + + def __init__(self, *, sites=None, **kwargs) -> None: + super(DirectLineChannelProperties, self).__init__(**kwargs) + self.sites = sites diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_py3.py new file mode 100644 index 000000000000..069885574a54 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_channel_py3.py @@ -0,0 +1,40 @@ +# 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 .channel_py3 import Channel + + +class DirectLineChannel(Channel): + """Direct Line channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to Direct Line channel + resource + :type properties: + ~azure.mgmt.botservice.models.DirectLineChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'DirectLineChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(DirectLineChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'DirectLineChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_site.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_site.py index 3cf031dbf261..402594c1d43c 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_site.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_site.py @@ -18,21 +18,26 @@ class DirectLineSite(Model): 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 site_id: Site Id :vartype site_id: str - :param site_name: Site name + :param site_name: Required. Site name :type site_name: str - :ivar key: Primary key + :ivar key: Primary key. Value only returned through POST to the action + Channel List API, otherwise empty. :vartype key: str - :ivar key2: Secondary key + :ivar key2: Secondary key. Value only returned through POST to the action + Channel List API, otherwise empty. :vartype key2: str - :param is_enabled: Whether this site is enabled for DirectLine channel + :param is_enabled: Required. Whether this site is enabled for DirectLine + channel :type is_enabled: bool - :param is_v1_enabled: Whether this site is enabled for Bot Framework V1 - protocol + :param is_v1_enabled: Required. Whether this site is enabled for Bot + Framework V1 protocol :type is_v1_enabled: bool - :param is_v3_enabled: Whether this site is enabled for Bot Framework V1 - protocol + :param is_v3_enabled: Required. Whether this site is enabled for Bot + Framework V1 protocol :type is_v3_enabled: bool """ @@ -56,11 +61,12 @@ class DirectLineSite(Model): 'is_v3_enabled': {'key': 'isV3Enabled', 'type': 'bool'}, } - def __init__(self, site_name, is_enabled, is_v1_enabled, is_v3_enabled): + def __init__(self, **kwargs): + super(DirectLineSite, self).__init__(**kwargs) self.site_id = None - self.site_name = site_name + self.site_name = kwargs.get('site_name', None) self.key = None self.key2 = None - self.is_enabled = is_enabled - self.is_v1_enabled = is_v1_enabled - self.is_v3_enabled = is_v3_enabled + self.is_enabled = kwargs.get('is_enabled', None) + self.is_v1_enabled = kwargs.get('is_v1_enabled', None) + self.is_v3_enabled = kwargs.get('is_v3_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_site_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_site_py3.py new file mode 100644 index 000000000000..d73e6d401e53 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/direct_line_site_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DirectLineSite(Model): + """A site for the Direct Line channel. + + 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 site_id: Site Id + :vartype site_id: str + :param site_name: Required. Site name + :type site_name: str + :ivar key: Primary key. Value only returned through POST to the action + Channel List API, otherwise empty. + :vartype key: str + :ivar key2: Secondary key. Value only returned through POST to the action + Channel List API, otherwise empty. + :vartype key2: str + :param is_enabled: Required. Whether this site is enabled for DirectLine + channel + :type is_enabled: bool + :param is_v1_enabled: Required. Whether this site is enabled for Bot + Framework V1 protocol + :type is_v1_enabled: bool + :param is_v3_enabled: Required. Whether this site is enabled for Bot + Framework V1 protocol + :type is_v3_enabled: bool + """ + + _validation = { + 'site_id': {'readonly': True}, + 'site_name': {'required': True}, + 'key': {'readonly': True}, + 'key2': {'readonly': True}, + 'is_enabled': {'required': True}, + 'is_v1_enabled': {'required': True}, + 'is_v3_enabled': {'required': True}, + } + + _attribute_map = { + 'site_id': {'key': 'siteId', 'type': 'str'}, + 'site_name': {'key': 'siteName', 'type': 'str'}, + 'key': {'key': 'key', 'type': 'str'}, + 'key2': {'key': 'key2', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + 'is_v1_enabled': {'key': 'isV1Enabled', 'type': 'bool'}, + 'is_v3_enabled': {'key': 'isV3Enabled', 'type': 'bool'}, + } + + def __init__(self, *, site_name: str, is_enabled: bool, is_v1_enabled: bool, is_v3_enabled: bool, **kwargs) -> None: + super(DirectLineSite, self).__init__(**kwargs) + self.site_id = None + self.site_name = site_name + self.key = None + self.key2 = None + self.is_enabled = is_enabled + self.is_v1_enabled = is_v1_enabled + self.is_v3_enabled = is_v3_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel.py index d8b1cf9f46a9..d398a52ffcbe 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel.py @@ -15,7 +15,9 @@ class EmailChannel(Channel): """Email channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to email channel resource @@ -31,7 +33,7 @@ class EmailChannel(Channel): 'properties': {'key': 'properties', 'type': 'EmailChannelProperties'}, } - def __init__(self, properties=None): - super(EmailChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(EmailChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'EmailChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_properties.py index cbf2197c474b..3c970507b075 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_properties.py @@ -15,11 +15,14 @@ class EmailChannelProperties(Model): """The parameters to provide for the Email channel. - :param email_address: The email address + All required parameters must be populated in order to send to Azure. + + :param email_address: Required. The email address :type email_address: str - :param password: The password for the email address + :param password: Required. The password for the email address. Value only + returned through POST to the action Channel List API, otherwise empty. :type password: str - :param is_enabled: Whether this channel is enabled for the bot + :param is_enabled: Required. Whether this channel is enabled for the bot :type is_enabled: bool """ @@ -35,7 +38,8 @@ class EmailChannelProperties(Model): 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, } - def __init__(self, email_address, password, is_enabled): - self.email_address = email_address - self.password = password - self.is_enabled = is_enabled + def __init__(self, **kwargs): + super(EmailChannelProperties, self).__init__(**kwargs) + self.email_address = kwargs.get('email_address', None) + self.password = kwargs.get('password', None) + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_properties_py3.py new file mode 100644 index 000000000000..b4fd0ddcb684 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_properties_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EmailChannelProperties(Model): + """The parameters to provide for the Email channel. + + All required parameters must be populated in order to send to Azure. + + :param email_address: Required. The email address + :type email_address: str + :param password: Required. The password for the email address. Value only + returned through POST to the action Channel List API, otherwise empty. + :type password: str + :param is_enabled: Required. Whether this channel is enabled for the bot + :type is_enabled: bool + """ + + _validation = { + 'email_address': {'required': True}, + 'password': {'required': True}, + 'is_enabled': {'required': True}, + } + + _attribute_map = { + 'email_address': {'key': 'emailAddress', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, email_address: str, password: str, is_enabled: bool, **kwargs) -> None: + super(EmailChannelProperties, self).__init__(**kwargs) + self.email_address = email_address + self.password = password + self.is_enabled = is_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_py3.py new file mode 100644 index 000000000000..7a9e9af59e74 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/email_channel_py3.py @@ -0,0 +1,39 @@ +# 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 .channel_py3 import Channel + + +class EmailChannel(Channel): + """Email channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to email channel + resource + :type properties: ~azure.mgmt.botservice.models.EmailChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'EmailChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(EmailChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'EmailChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/error.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/error.py index 019e466cd621..5e0c7ee93e3f 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/error.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/error.py @@ -24,8 +24,9 @@ class Error(Model): 'error': {'key': 'error', 'type': 'ErrorBody'}, } - def __init__(self, error=None): - self.error = error + def __init__(self, **kwargs): + super(Error, self).__init__(**kwargs) + self.error = kwargs.get('error', None) class ErrorException(HttpOperationError): diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/error_body.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/error_body.py index 926be9c3b948..f10254873280 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/error_body.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/error_body.py @@ -15,9 +15,11 @@ class ErrorBody(Model): """Bot Service error body. - :param code: error code + All required parameters must be populated in order to send to Azure. + + :param code: Required. error code :type code: str - :param message: error message + :param message: Required. error message :type message: str """ @@ -31,6 +33,7 @@ class ErrorBody(Model): 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, code, message): - self.code = code - self.message = message + def __init__(self, **kwargs): + super(ErrorBody, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/error_body_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/error_body_py3.py new file mode 100644 index 000000000000..3b3f878af285 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/error_body_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorBody(Model): + """Bot Service error body. + + All required parameters must be populated in order to send to Azure. + + :param code: Required. error code + :type code: str + :param message: Required. error message + :type message: str + """ + + _validation = { + 'code': {'required': True}, + 'message': {'required': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, code: str, message: str, **kwargs) -> None: + super(ErrorBody, self).__init__(**kwargs) + self.code = code + self.message = message diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/error_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/error_py3.py new file mode 100644 index 000000000000..cee9d2eb7904 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/error_py3.py @@ -0,0 +1,41 @@ +# 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 + + +class Error(Model): + """Bot Service error object. + + :param error: The error body. + :type error: ~azure.mgmt.botservice.models.ErrorBody + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorBody'}, + } + + def __init__(self, *, error=None, **kwargs) -> None: + super(Error, self).__init__(**kwargs) + self.error = error + + +class ErrorException(HttpOperationError): + """Server responsed with exception of type: 'Error'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorException, self).__init__(deserialize, response, 'Error', *args) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel.py index b253e2fb1f49..fbb18f5a8cd9 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel.py @@ -15,7 +15,9 @@ class FacebookChannel(Channel): """Facebook channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to bot facebook channel :type properties: ~azure.mgmt.botservice.models.FacebookChannelProperties @@ -30,7 +32,7 @@ class FacebookChannel(Channel): 'properties': {'key': 'properties', 'type': 'FacebookChannelProperties'}, } - def __init__(self, properties=None): - super(FacebookChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(FacebookChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'FacebookChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_properties.py index d37ace5ab6aa..934885b5b4f9 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_properties.py @@ -18,25 +18,26 @@ class FacebookChannelProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar verify_token: Verify token + All required parameters must be populated in order to send to Azure. + + :ivar verify_token: Verify token. Value only returned through POST to the + action Channel List API, otherwise empty. :vartype verify_token: str - :param page_id: Page id - :type page_id: str - :param app_id: Facebook application id + :param pages: The list of Facebook pages + :type pages: list[~azure.mgmt.botservice.models.FacebookPage] + :param app_id: Required. Facebook application id :type app_id: str - :param app_secret: Facebook application secret + :param app_secret: Required. Facebook application secret. Value only + returned through POST to the action Channel List API, otherwise empty. :type app_secret: str - :param access_token: Facebook application access token - :type access_token: str :ivar callback_url: Callback Url :vartype callback_url: str - :param is_enabled: Whether this channel is enabled for the bot + :param is_enabled: Required. Whether this channel is enabled for the bot :type is_enabled: bool """ _validation = { 'verify_token': {'readonly': True}, - 'page_id': {'required': True}, 'app_id': {'required': True}, 'app_secret': {'required': True}, 'callback_url': {'readonly': True}, @@ -45,19 +46,18 @@ class FacebookChannelProperties(Model): _attribute_map = { 'verify_token': {'key': 'verifyToken', 'type': 'str'}, - 'page_id': {'key': 'pageId', 'type': 'str'}, + 'pages': {'key': 'pages', 'type': '[FacebookPage]'}, 'app_id': {'key': 'appId', 'type': 'str'}, 'app_secret': {'key': 'appSecret', 'type': 'str'}, - 'access_token': {'key': 'accessToken', 'type': 'str'}, 'callback_url': {'key': 'callbackUrl', 'type': 'str'}, 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, } - def __init__(self, page_id, app_id, app_secret, is_enabled, access_token=None): + def __init__(self, **kwargs): + super(FacebookChannelProperties, self).__init__(**kwargs) self.verify_token = None - self.page_id = page_id - self.app_id = app_id - self.app_secret = app_secret - self.access_token = access_token + self.pages = kwargs.get('pages', None) + self.app_id = kwargs.get('app_id', None) + self.app_secret = kwargs.get('app_secret', None) self.callback_url = None - self.is_enabled = is_enabled + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_properties_py3.py new file mode 100644 index 000000000000..3dd59c2216be --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_properties_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FacebookChannelProperties(Model): + """The parameters to provide for the Facebook channel. + + 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 verify_token: Verify token. Value only returned through POST to the + action Channel List API, otherwise empty. + :vartype verify_token: str + :param pages: The list of Facebook pages + :type pages: list[~azure.mgmt.botservice.models.FacebookPage] + :param app_id: Required. Facebook application id + :type app_id: str + :param app_secret: Required. Facebook application secret. Value only + returned through POST to the action Channel List API, otherwise empty. + :type app_secret: str + :ivar callback_url: Callback Url + :vartype callback_url: str + :param is_enabled: Required. Whether this channel is enabled for the bot + :type is_enabled: bool + """ + + _validation = { + 'verify_token': {'readonly': True}, + 'app_id': {'required': True}, + 'app_secret': {'required': True}, + 'callback_url': {'readonly': True}, + 'is_enabled': {'required': True}, + } + + _attribute_map = { + 'verify_token': {'key': 'verifyToken', 'type': 'str'}, + 'pages': {'key': 'pages', 'type': '[FacebookPage]'}, + 'app_id': {'key': 'appId', 'type': 'str'}, + 'app_secret': {'key': 'appSecret', 'type': 'str'}, + 'callback_url': {'key': 'callbackUrl', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, app_id: str, app_secret: str, is_enabled: bool, pages=None, **kwargs) -> None: + super(FacebookChannelProperties, self).__init__(**kwargs) + self.verify_token = None + self.pages = pages + self.app_id = app_id + self.app_secret = app_secret + self.callback_url = None + self.is_enabled = is_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_py3.py new file mode 100644 index 000000000000..ec43910d6288 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_channel_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .channel_py3 import Channel + + +class FacebookChannel(Channel): + """Facebook channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to bot facebook channel + :type properties: ~azure.mgmt.botservice.models.FacebookChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'FacebookChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(FacebookChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'FacebookChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_page.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_page.py new file mode 100644 index 000000000000..d166751656d2 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_page.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FacebookPage(Model): + """A Facebook page for Facebook channel registration. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. Page id + :type id: str + :param access_token: Required. Facebook application access token. Value + only returned through POST to the action Channel List API, otherwise + empty. + :type access_token: str + """ + + _validation = { + 'id': {'required': True}, + 'access_token': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access_token': {'key': 'accessToken', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FacebookPage, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.access_token = kwargs.get('access_token', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_page_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_page_py3.py new file mode 100644 index 000000000000..a0045ba8c742 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/facebook_page_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FacebookPage(Model): + """A Facebook page for Facebook channel registration. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. Page id + :type id: str + :param access_token: Required. Facebook application access token. Value + only returned through POST to the action Channel List API, otherwise + empty. + :type access_token: str + """ + + _validation = { + 'id': {'required': True}, + 'access_token': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access_token': {'key': 'accessToken', 'type': 'str'}, + } + + def __init__(self, *, id: str, access_token: str, **kwargs) -> None: + super(FacebookPage, self).__init__(**kwargs) + self.id = id + self.access_token = access_token diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel.py index e3fe47a1b214..491802b33a1e 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel.py @@ -15,7 +15,9 @@ class KikChannel(Channel): """Kik channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to Kik channel resource :type properties: ~azure.mgmt.botservice.models.KikChannelProperties @@ -30,7 +32,7 @@ class KikChannel(Channel): 'properties': {'key': 'properties', 'type': 'KikChannelProperties'}, } - def __init__(self, properties=None): - super(KikChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(KikChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'KikChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_properties.py index 8a12161f37c1..63a07f3ee87e 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_properties.py @@ -15,13 +15,16 @@ class KikChannelProperties(Model): """The parameters to provide for the Kik channel. - :param user_name: The Kik user name + All required parameters must be populated in order to send to Azure. + + :param user_name: Required. The Kik user name :type user_name: str - :param api_key: Kik API key + :param api_key: Required. Kik API key. Value only returned through POST to + the action Channel List API, otherwise empty. :type api_key: str :param is_validated: Whether this channel is validated for the bot :type is_validated: bool - :param is_enabled: Whether this channel is enabled for the bot + :param is_enabled: Required. Whether this channel is enabled for the bot :type is_enabled: bool """ @@ -38,8 +41,9 @@ class KikChannelProperties(Model): 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, } - def __init__(self, user_name, api_key, is_enabled, is_validated=None): - self.user_name = user_name - self.api_key = api_key - self.is_validated = is_validated - self.is_enabled = is_enabled + def __init__(self, **kwargs): + super(KikChannelProperties, self).__init__(**kwargs) + self.user_name = kwargs.get('user_name', None) + self.api_key = kwargs.get('api_key', None) + self.is_validated = kwargs.get('is_validated', None) + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_properties_py3.py new file mode 100644 index 000000000000..ee17a9af670b --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_properties_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KikChannelProperties(Model): + """The parameters to provide for the Kik channel. + + All required parameters must be populated in order to send to Azure. + + :param user_name: Required. The Kik user name + :type user_name: str + :param api_key: Required. Kik API key. Value only returned through POST to + the action Channel List API, otherwise empty. + :type api_key: str + :param is_validated: Whether this channel is validated for the bot + :type is_validated: bool + :param is_enabled: Required. Whether this channel is enabled for the bot + :type is_enabled: bool + """ + + _validation = { + 'user_name': {'required': True}, + 'api_key': {'required': True}, + 'is_enabled': {'required': True}, + } + + _attribute_map = { + 'user_name': {'key': 'userName', 'type': 'str'}, + 'api_key': {'key': 'apiKey', 'type': 'str'}, + 'is_validated': {'key': 'isValidated', 'type': 'bool'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, user_name: str, api_key: str, is_enabled: bool, is_validated: bool=None, **kwargs) -> None: + super(KikChannelProperties, self).__init__(**kwargs) + self.user_name = user_name + self.api_key = api_key + self.is_validated = is_validated + self.is_enabled = is_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_py3.py new file mode 100644 index 000000000000..9cfbff1611bf --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/kik_channel_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .channel_py3 import Channel + + +class KikChannel(Channel): + """Kik channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to Kik channel resource + :type properties: ~azure.mgmt.botservice.models.KikChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'KikChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(KikChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'KikChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel.py index c5a9c0b932e0..9ae44eaa130b 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel.py @@ -15,7 +15,9 @@ class MsTeamsChannel(Channel): """Microsoft Teams channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to Microsoft Teams channel resource @@ -31,7 +33,7 @@ class MsTeamsChannel(Channel): 'properties': {'key': 'properties', 'type': 'MsTeamsChannelProperties'}, } - def __init__(self, properties=None): - super(MsTeamsChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(MsTeamsChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'MsTeamsChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_properties.py index 51bbe2bbed2f..8662da90b46c 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_properties.py @@ -15,17 +15,13 @@ class MsTeamsChannelProperties(Model): """The parameters to provide for the Microsoft Teams channel. - :param enable_messaging: Enable messaging for Microsoft Teams channel - :type enable_messaging: bool - :param enable_media_cards: Enable media cards for Microsoft Teams channel - :type enable_media_cards: bool - :param enable_video: Enable video for Microsoft Teams channel - :type enable_video: bool + All required parameters must be populated in order to send to Azure. + :param enable_calling: Enable calling for Microsoft Teams channel :type enable_calling: bool - :param call_mode: Enable messaging for Microsoft Teams channel - :type call_mode: str - :param is_enabled: Whether this channel is enabled for the bot + :param calling_web_hook: Webhook for Microsoft Teams channel calls + :type calling_web_hook: str + :param is_enabled: Required. Whether this channel is enabled for the bot :type is_enabled: bool """ @@ -34,18 +30,13 @@ class MsTeamsChannelProperties(Model): } _attribute_map = { - 'enable_messaging': {'key': 'enableMessaging', 'type': 'bool'}, - 'enable_media_cards': {'key': 'enableMediaCards', 'type': 'bool'}, - 'enable_video': {'key': 'enableVideo', 'type': 'bool'}, 'enable_calling': {'key': 'enableCalling', 'type': 'bool'}, - 'call_mode': {'key': 'callMode', 'type': 'str'}, + 'calling_web_hook': {'key': 'callingWebHook', 'type': 'str'}, 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, } - def __init__(self, is_enabled, enable_messaging=None, enable_media_cards=None, enable_video=None, enable_calling=None, call_mode=None): - self.enable_messaging = enable_messaging - self.enable_media_cards = enable_media_cards - self.enable_video = enable_video - self.enable_calling = enable_calling - self.call_mode = call_mode - self.is_enabled = is_enabled + def __init__(self, **kwargs): + super(MsTeamsChannelProperties, self).__init__(**kwargs) + self.enable_calling = kwargs.get('enable_calling', None) + self.calling_web_hook = kwargs.get('calling_web_hook', None) + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_properties_py3.py new file mode 100644 index 000000000000..5051297c3e63 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_properties_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MsTeamsChannelProperties(Model): + """The parameters to provide for the Microsoft Teams channel. + + All required parameters must be populated in order to send to Azure. + + :param enable_calling: Enable calling for Microsoft Teams channel + :type enable_calling: bool + :param calling_web_hook: Webhook for Microsoft Teams channel calls + :type calling_web_hook: str + :param is_enabled: Required. Whether this channel is enabled for the bot + :type is_enabled: bool + """ + + _validation = { + 'is_enabled': {'required': True}, + } + + _attribute_map = { + 'enable_calling': {'key': 'enableCalling', 'type': 'bool'}, + 'calling_web_hook': {'key': 'callingWebHook', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, is_enabled: bool, enable_calling: bool=None, calling_web_hook: str=None, **kwargs) -> None: + super(MsTeamsChannelProperties, self).__init__(**kwargs) + self.enable_calling = enable_calling + self.calling_web_hook = calling_web_hook + self.is_enabled = is_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_py3.py new file mode 100644 index 000000000000..b683d051282b --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/ms_teams_channel_py3.py @@ -0,0 +1,39 @@ +# 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 .channel_py3 import Channel + + +class MsTeamsChannel(Channel): + """Microsoft Teams channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to Microsoft Teams + channel resource + :type properties: ~azure.mgmt.botservice.models.MsTeamsChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'MsTeamsChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(MsTeamsChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'MsTeamsChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_display_info.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_display_info.py index 4be59cd2d4b6..33cad37365ce 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_display_info.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_display_info.py @@ -33,8 +33,9 @@ class OperationDisplayInfo(Model): 'resource': {'key': 'resource', 'type': 'str'}, } - def __init__(self, description=None, operation=None, provider=None, resource=None): - self.description = description - self.operation = operation - self.provider = provider - self.resource = resource + def __init__(self, **kwargs): + super(OperationDisplayInfo, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.operation = kwargs.get('operation', None) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_display_info_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_display_info_py3.py new file mode 100644 index 000000000000..b136b8bdccf0 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_display_info_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplayInfo(Model): + """The operation supported by Bot Service Management. + + :param description: The description of the operation. + :type description: str + :param operation: The action that users can perform, based on their + permission level. + :type operation: str + :param provider: Service provider: Microsoft Bot Service. + :type provider: str + :param resource: Resource on which the operation is performed. + :type resource: str + """ + + _attribute_map = { + 'description': {'key': 'description', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + } + + def __init__(self, *, description: str=None, operation: str=None, provider: str=None, resource: str=None, **kwargs) -> None: + super(OperationDisplayInfo, self).__init__(**kwargs) + self.description = description + self.operation = operation + self.provider = provider + self.resource = resource diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_entity.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_entity.py index 37922e24676b..bb886b0f762b 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_entity.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_entity.py @@ -32,8 +32,9 @@ class OperationEntity(Model): 'properties': {'key': 'properties', 'type': 'object'}, } - def __init__(self, name=None, display=None, origin=None, properties=None): - self.name = name - self.display = display - self.origin = origin - self.properties = properties + def __init__(self, **kwargs): + super(OperationEntity, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_entity_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_entity_py3.py new file mode 100644 index 000000000000..95bff1f76590 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/operation_entity_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationEntity(Model): + """The operations supported by Bot Service Management. + + :param name: Operation name: {provider}/{resource}/{operation}. + :type name: str + :param display: The operation supported by Bot Service Management. + :type display: ~azure.mgmt.botservice.models.OperationDisplayInfo + :param origin: The origin of the operation. + :type origin: str + :param properties: Additional properties. + :type properties: object + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplayInfo'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'object'}, + } + + def __init__(self, *, name: str=None, display=None, origin: str=None, properties=None, **kwargs) -> None: + super(OperationEntity, self).__init__(**kwargs) + self.name = name + self.display = display + self.origin = origin + self.properties = properties diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/resource.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/resource.py index 668f18a1c16c..cf9218331460 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/resource.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/resource.py @@ -54,12 +54,13 @@ class Resource(Model): 'etag': {'key': 'etag', 'type': 'str'}, } - def __init__(self, location=None, tags=None, sku=None, kind=None, etag=None): + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) self.id = None self.name = None - self.location = location + self.location = kwargs.get('location', None) self.type = None - self.tags = tags - self.sku = sku - self.kind = kind - self.etag = etag + self.tags = kwargs.get('tags', None) + self.sku = kwargs.get('sku', None) + self.kind = kwargs.get('kind', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/resource_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/resource_py3.py new file mode 100644 index 000000000000..ee1377c1ce4b --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/resource_py3.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Azure resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Specifies the resource ID. + :vartype id: str + :ivar name: Specifies the name of the resource. + :vartype name: str + :param location: Specifies the location of the resource. + :type location: str + :ivar type: Specifies the type of the resource. + :vartype type: str + :param tags: Contains resource tags defined as key/value pairs. + :type tags: dict[str, str] + :param sku: Gets or sets the SKU of the resource. + :type sku: ~azure.mgmt.botservice.models.Sku + :param kind: Required. Gets or sets the Kind of the resource. Possible + values include: 'sdk', 'designer', 'bot', 'function' + :type kind: str or ~azure.mgmt.botservice.models.Kind + :param etag: Entity Tag + :type etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, location: str=None, tags=None, sku=None, kind=None, etag: str=None, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.location = location + self.type = None + self.tags = tags + self.sku = sku + self.kind = kind + self.etag = etag diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider.py new file mode 100644 index 000000000000..cf50bec2ae1f --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceProvider(Model): + """Service Provider Definition. + + :param properties: The Properties of a Service Provider Object + :type properties: ~azure.mgmt.botservice.models.ServiceProviderProperties + """ + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'ServiceProviderProperties'}, + } + + def __init__(self, **kwargs): + super(ServiceProvider, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_parameter.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_parameter.py new file mode 100644 index 000000000000..e72f95f1b8e8 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_parameter.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceProviderParameter(Model): + """Extra Parameters specific to each Service Provider. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Name of the Service Provider + :vartype name: str + :ivar type: Type of the Service Provider + :vartype type: str + :ivar display_name: Display Name of the Service Provider + :vartype display_name: str + :ivar description: Description of the Service Provider + :vartype description: str + :ivar help_url: Help Url for the Service Provider + :vartype help_url: str + :ivar default: Default Name for the Service Provider + :vartype default: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'readonly': True}, + 'description': {'readonly': True}, + 'help_url': {'readonly': True}, + 'default': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'help_url': {'key': 'helpUrl', 'type': 'str'}, + 'default': {'key': 'default', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceProviderParameter, self).__init__(**kwargs) + self.name = None + self.type = None + self.display_name = None + self.description = None + self.help_url = None + self.default = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_parameter_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_parameter_py3.py new file mode 100644 index 000000000000..7d1f5664af8c --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_parameter_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceProviderParameter(Model): + """Extra Parameters specific to each Service Provider. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Name of the Service Provider + :vartype name: str + :ivar type: Type of the Service Provider + :vartype type: str + :ivar display_name: Display Name of the Service Provider + :vartype display_name: str + :ivar description: Description of the Service Provider + :vartype description: str + :ivar help_url: Help Url for the Service Provider + :vartype help_url: str + :ivar default: Default Name for the Service Provider + :vartype default: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'readonly': True}, + 'description': {'readonly': True}, + 'help_url': {'readonly': True}, + 'default': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'help_url': {'key': 'helpUrl', 'type': 'str'}, + 'default': {'key': 'default', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ServiceProviderParameter, self).__init__(**kwargs) + self.name = None + self.type = None + self.display_name = None + self.description = None + self.help_url = None + self.default = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_properties.py new file mode 100644 index 000000000000..4062224d5c7d --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_properties.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceProviderProperties(Model): + """The Object used to describe a Service Provider supported by Bot Service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Id for Service Provider + :vartype id: str + :ivar display_name: Diplay Name of the Service Provider + :vartype display_name: str + :ivar service_provider_name: Diplay Name of the Service Provider + :vartype service_provider_name: str + :ivar dev_portal_url: Diplay Name of the Service Provider + :vartype dev_portal_url: str + :ivar icon_url: Diplay Name of the Service Provider + :vartype icon_url: str + :param parameters: The list of parameters for the Service Provider + :type parameters: + list[~azure.mgmt.botservice.models.ServiceProviderParameter] + """ + + _validation = { + 'id': {'readonly': True}, + 'display_name': {'readonly': True}, + 'service_provider_name': {'readonly': True}, + 'dev_portal_url': {'readonly': True}, + 'icon_url': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'service_provider_name': {'key': 'serviceProviderName', 'type': 'str'}, + 'dev_portal_url': {'key': 'devPortalUrl', 'type': 'str'}, + 'icon_url': {'key': 'iconUrl', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': '[ServiceProviderParameter]'}, + } + + def __init__(self, **kwargs): + super(ServiceProviderProperties, self).__init__(**kwargs) + self.id = None + self.display_name = None + self.service_provider_name = None + self.dev_portal_url = None + self.icon_url = None + self.parameters = kwargs.get('parameters', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_properties_py3.py new file mode 100644 index 000000000000..7272cb31422f --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_properties_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceProviderProperties(Model): + """The Object used to describe a Service Provider supported by Bot Service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Id for Service Provider + :vartype id: str + :ivar display_name: Diplay Name of the Service Provider + :vartype display_name: str + :ivar service_provider_name: Diplay Name of the Service Provider + :vartype service_provider_name: str + :ivar dev_portal_url: Diplay Name of the Service Provider + :vartype dev_portal_url: str + :ivar icon_url: Diplay Name of the Service Provider + :vartype icon_url: str + :param parameters: The list of parameters for the Service Provider + :type parameters: + list[~azure.mgmt.botservice.models.ServiceProviderParameter] + """ + + _validation = { + 'id': {'readonly': True}, + 'display_name': {'readonly': True}, + 'service_provider_name': {'readonly': True}, + 'dev_portal_url': {'readonly': True}, + 'icon_url': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'service_provider_name': {'key': 'serviceProviderName', 'type': 'str'}, + 'dev_portal_url': {'key': 'devPortalUrl', 'type': 'str'}, + 'icon_url': {'key': 'iconUrl', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': '[ServiceProviderParameter]'}, + } + + def __init__(self, *, parameters=None, **kwargs) -> None: + super(ServiceProviderProperties, self).__init__(**kwargs) + self.id = None + self.display_name = None + self.service_provider_name = None + self.dev_portal_url = None + self.icon_url = None + self.parameters = parameters diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_py3.py new file mode 100644 index 000000000000..86ee2d94e5d0 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceProvider(Model): + """Service Provider Definition. + + :param properties: The Properties of a Service Provider Object + :type properties: ~azure.mgmt.botservice.models.ServiceProviderProperties + """ + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'ServiceProviderProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(ServiceProvider, self).__init__(**kwargs) + self.properties = properties diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_response_list.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_response_list.py new file mode 100644 index 000000000000..4d2ab214edb0 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_response_list.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceProviderResponseList(Model): + """The list of bot service service providers response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param next_link: The link used to get the next page of bot service + service providers. + :type next_link: str + :ivar value: Gets the list of bot service service providers and their + properties. + :vartype value: list[~azure.mgmt.botservice.models.ServiceProvider] + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'value': {'key': 'value', 'type': '[ServiceProvider]'}, + } + + def __init__(self, **kwargs): + super(ServiceProviderResponseList, self).__init__(**kwargs) + self.next_link = kwargs.get('next_link', None) + self.value = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_response_list_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_response_list_py3.py new file mode 100644 index 000000000000..207afd213bc6 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/service_provider_response_list_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceProviderResponseList(Model): + """The list of bot service service providers response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param next_link: The link used to get the next page of bot service + service providers. + :type next_link: str + :ivar value: Gets the list of bot service service providers and their + properties. + :vartype value: list[~azure.mgmt.botservice.models.ServiceProvider] + """ + + _validation = { + 'value': {'readonly': True}, + } + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'value': {'key': 'value', 'type': '[ServiceProvider]'}, + } + + def __init__(self, *, next_link: str=None, **kwargs) -> None: + super(ServiceProviderResponseList, self).__init__(**kwargs) + self.next_link = next_link + self.value = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/sku.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/sku.py index 35fa9c142249..e06cf94ad50c 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/sku.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/sku.py @@ -18,7 +18,9 @@ class Sku(Model): Variables are only populated by the server, and will be ignored when sending a request. - :param name: The sku name. Possible values include: 'F0', 'S1' + All required parameters must be populated in order to send to Azure. + + :param name: Required. The sku name. Possible values include: 'F0', 'S1' :type name: str or ~azure.mgmt.botservice.models.SkuName :ivar tier: Gets the sku tier. This is based on the SKU name. Possible values include: 'Free', 'Standard' @@ -35,6 +37,7 @@ class Sku(Model): 'tier': {'key': 'tier', 'type': 'str'}, } - def __init__(self, name): - self.name = name + def __init__(self, **kwargs): + super(Sku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) self.tier = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/sku_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/sku_py3.py new file mode 100644 index 000000000000..76b5c0fc7993 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/sku_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """The SKU of the cognitive services account. + + 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. The sku name. Possible values include: 'F0', 'S1' + :type name: str or ~azure.mgmt.botservice.models.SkuName + :ivar tier: Gets the sku tier. This is based on the SKU name. Possible + values include: 'Free', 'Standard' + :vartype tier: str or ~azure.mgmt.botservice.models.SkuTier + """ + + _validation = { + 'name': {'required': True}, + 'tier': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, *, name, **kwargs) -> None: + super(Sku, self).__init__(**kwargs) + self.name = name + self.tier = None diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel.py index f9c12c31dd01..4c30e874de49 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel.py @@ -15,7 +15,9 @@ class SkypeChannel(Channel): """Skype channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to Skype channel resource @@ -31,7 +33,7 @@ class SkypeChannel(Channel): 'properties': {'key': 'properties', 'type': 'SkypeChannelProperties'}, } - def __init__(self, properties=None): - super(SkypeChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(SkypeChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'SkypeChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_properties.py index 582d94c48697..aa9c20f0b6cd 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_properties.py @@ -15,6 +15,8 @@ class SkypeChannelProperties(Model): """The parameters to provide for the Microsoft Teams channel. + All required parameters must be populated in order to send to Azure. + :param enable_messaging: Enable messaging for Skype channel :type enable_messaging: bool :param enable_media_cards: Enable media cards for Skype channel @@ -31,7 +33,7 @@ class SkypeChannelProperties(Model): :type groups_mode: str :param calling_web_hook: Calling web hook for Skype channel :type calling_web_hook: str - :param is_enabled: Whether this channel is enabled for the bot + :param is_enabled: Required. Whether this channel is enabled for the bot :type is_enabled: bool """ @@ -51,13 +53,14 @@ class SkypeChannelProperties(Model): 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, } - def __init__(self, is_enabled, enable_messaging=None, enable_media_cards=None, enable_video=None, enable_calling=None, enable_screen_sharing=None, enable_groups=None, groups_mode=None, calling_web_hook=None): - self.enable_messaging = enable_messaging - self.enable_media_cards = enable_media_cards - self.enable_video = enable_video - self.enable_calling = enable_calling - self.enable_screen_sharing = enable_screen_sharing - self.enable_groups = enable_groups - self.groups_mode = groups_mode - self.calling_web_hook = calling_web_hook - self.is_enabled = is_enabled + def __init__(self, **kwargs): + super(SkypeChannelProperties, self).__init__(**kwargs) + self.enable_messaging = kwargs.get('enable_messaging', None) + self.enable_media_cards = kwargs.get('enable_media_cards', None) + self.enable_video = kwargs.get('enable_video', None) + self.enable_calling = kwargs.get('enable_calling', None) + self.enable_screen_sharing = kwargs.get('enable_screen_sharing', None) + self.enable_groups = kwargs.get('enable_groups', None) + self.groups_mode = kwargs.get('groups_mode', None) + self.calling_web_hook = kwargs.get('calling_web_hook', None) + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_properties_py3.py new file mode 100644 index 000000000000..9cefa0d127ec --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_properties_py3.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SkypeChannelProperties(Model): + """The parameters to provide for the Microsoft Teams channel. + + All required parameters must be populated in order to send to Azure. + + :param enable_messaging: Enable messaging for Skype channel + :type enable_messaging: bool + :param enable_media_cards: Enable media cards for Skype channel + :type enable_media_cards: bool + :param enable_video: Enable video for Skype channel + :type enable_video: bool + :param enable_calling: Enable calling for Skype channel + :type enable_calling: bool + :param enable_screen_sharing: Enable screen sharing for Skype channel + :type enable_screen_sharing: bool + :param enable_groups: Enable groups for Skype channel + :type enable_groups: bool + :param groups_mode: Group mode for Skype channel + :type groups_mode: str + :param calling_web_hook: Calling web hook for Skype channel + :type calling_web_hook: str + :param is_enabled: Required. Whether this channel is enabled for the bot + :type is_enabled: bool + """ + + _validation = { + 'is_enabled': {'required': True}, + } + + _attribute_map = { + 'enable_messaging': {'key': 'enableMessaging', 'type': 'bool'}, + 'enable_media_cards': {'key': 'enableMediaCards', 'type': 'bool'}, + 'enable_video': {'key': 'enableVideo', 'type': 'bool'}, + 'enable_calling': {'key': 'enableCalling', 'type': 'bool'}, + 'enable_screen_sharing': {'key': 'enableScreenSharing', 'type': 'bool'}, + 'enable_groups': {'key': 'enableGroups', 'type': 'bool'}, + 'groups_mode': {'key': 'groupsMode', 'type': 'str'}, + 'calling_web_hook': {'key': 'callingWebHook', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, is_enabled: bool, enable_messaging: bool=None, enable_media_cards: bool=None, enable_video: bool=None, enable_calling: bool=None, enable_screen_sharing: bool=None, enable_groups: bool=None, groups_mode: str=None, calling_web_hook: str=None, **kwargs) -> None: + super(SkypeChannelProperties, self).__init__(**kwargs) + self.enable_messaging = enable_messaging + self.enable_media_cards = enable_media_cards + self.enable_video = enable_video + self.enable_calling = enable_calling + self.enable_screen_sharing = enable_screen_sharing + self.enable_groups = enable_groups + self.groups_mode = groups_mode + self.calling_web_hook = calling_web_hook + self.is_enabled = is_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_py3.py new file mode 100644 index 000000000000..e14a4d01fffb --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/skype_channel_py3.py @@ -0,0 +1,39 @@ +# 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 .channel_py3 import Channel + + +class SkypeChannel(Channel): + """Skype channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to Skype channel + resource + :type properties: ~azure.mgmt.botservice.models.SkypeChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'SkypeChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(SkypeChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'SkypeChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel.py index 7be5bd512b2e..102b7c5c4860 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel.py @@ -15,7 +15,9 @@ class SlackChannel(Channel): """Slack channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to Slack channel resource @@ -31,7 +33,7 @@ class SlackChannel(Channel): 'properties': {'key': 'properties', 'type': 'SlackChannelProperties'}, } - def __init__(self, properties=None): - super(SlackChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(SlackChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'SlackChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_properties.py index 7c0f60cb0b5c..f9ff04d41cf8 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_properties.py @@ -18,11 +18,16 @@ class SlackChannelProperties(Model): Variables are only populated by the server, and will be ignored when sending a request. - :param client_id: The Slack client id + All required parameters must be populated in order to send to Azure. + + :param client_id: Required. The Slack client id :type client_id: str - :param client_secret: The Slack client secret + :param client_secret: Required. The Slack client secret. Value only + returned through POST to the action Channel List API, otherwise empty. :type client_secret: str - :param verification_token: The Slack verification token + :param verification_token: Required. The Slack verification token. Value + only returned through POST to the action Channel List API, otherwise + empty. :type verification_token: str :param landing_page_url: The Slack landing page Url :type landing_page_url: str @@ -35,7 +40,7 @@ class SlackChannelProperties(Model): :vartype register_before_oauth_flow: bool :ivar is_validated: Whether this channel is validated for the bot :vartype is_validated: bool - :param is_enabled: Whether this channel is enabled for the bot + :param is_enabled: Required. Whether this channel is enabled for the bot :type is_enabled: bool """ @@ -62,13 +67,14 @@ class SlackChannelProperties(Model): 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, } - def __init__(self, client_id, client_secret, verification_token, is_enabled, landing_page_url=None): - self.client_id = client_id - self.client_secret = client_secret - self.verification_token = verification_token - self.landing_page_url = landing_page_url + def __init__(self, **kwargs): + super(SlackChannelProperties, self).__init__(**kwargs) + self.client_id = kwargs.get('client_id', None) + self.client_secret = kwargs.get('client_secret', None) + self.verification_token = kwargs.get('verification_token', None) + self.landing_page_url = kwargs.get('landing_page_url', None) self.redirect_action = None self.last_submission_id = None self.register_before_oauth_flow = None self.is_validated = None - self.is_enabled = is_enabled + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_properties_py3.py new file mode 100644 index 000000000000..424ed52760fa --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_properties_py3.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SlackChannelProperties(Model): + """The parameters to provide for the Slack channel. + + 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 client_id: Required. The Slack client id + :type client_id: str + :param client_secret: Required. The Slack client secret. Value only + returned through POST to the action Channel List API, otherwise empty. + :type client_secret: str + :param verification_token: Required. The Slack verification token. Value + only returned through POST to the action Channel List API, otherwise + empty. + :type verification_token: str + :param landing_page_url: The Slack landing page Url + :type landing_page_url: str + :ivar redirect_action: The Slack redirect action + :vartype redirect_action: str + :ivar last_submission_id: The Sms auth token + :vartype last_submission_id: str + :ivar register_before_oauth_flow: Whether to register the settings before + OAuth validation is performed. Recommended to True. + :vartype register_before_oauth_flow: bool + :ivar is_validated: Whether this channel is validated for the bot + :vartype is_validated: bool + :param is_enabled: Required. Whether this channel is enabled for the bot + :type is_enabled: bool + """ + + _validation = { + 'client_id': {'required': True}, + 'client_secret': {'required': True}, + 'verification_token': {'required': True}, + 'redirect_action': {'readonly': True}, + 'last_submission_id': {'readonly': True}, + 'register_before_oauth_flow': {'readonly': True}, + 'is_validated': {'readonly': True}, + 'is_enabled': {'required': True}, + } + + _attribute_map = { + 'client_id': {'key': 'clientId', 'type': 'str'}, + 'client_secret': {'key': 'clientSecret', 'type': 'str'}, + 'verification_token': {'key': 'verificationToken', 'type': 'str'}, + 'landing_page_url': {'key': 'landingPageUrl', 'type': 'str'}, + 'redirect_action': {'key': 'redirectAction', 'type': 'str'}, + 'last_submission_id': {'key': 'lastSubmissionId', 'type': 'str'}, + 'register_before_oauth_flow': {'key': 'registerBeforeOAuthFlow', 'type': 'bool'}, + 'is_validated': {'key': 'isValidated', 'type': 'bool'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, client_id: str, client_secret: str, verification_token: str, is_enabled: bool, landing_page_url: str=None, **kwargs) -> None: + super(SlackChannelProperties, self).__init__(**kwargs) + self.client_id = client_id + self.client_secret = client_secret + self.verification_token = verification_token + self.landing_page_url = landing_page_url + self.redirect_action = None + self.last_submission_id = None + self.register_before_oauth_flow = None + self.is_validated = None + self.is_enabled = is_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_py3.py new file mode 100644 index 000000000000..0b3f5af0c1fc --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/slack_channel_py3.py @@ -0,0 +1,39 @@ +# 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 .channel_py3 import Channel + + +class SlackChannel(Channel): + """Slack channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to Slack channel + resource + :type properties: ~azure.mgmt.botservice.models.SlackChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'SlackChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(SlackChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'SlackChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel.py index dba9ebc83637..9a4f908ab007 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel.py @@ -15,7 +15,9 @@ class SmsChannel(Channel): """Sms channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to Sms channel resource :type properties: ~azure.mgmt.botservice.models.SmsChannelProperties @@ -30,7 +32,7 @@ class SmsChannel(Channel): 'properties': {'key': 'properties', 'type': 'SmsChannelProperties'}, } - def __init__(self, properties=None): - super(SmsChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(SmsChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'SmsChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_properties.py index 45898f7a9e30..4a094296451a 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_properties.py @@ -15,15 +15,19 @@ class SmsChannelProperties(Model): """The parameters to provide for the Sms channel. - :param phone: The Sms phone + All required parameters must be populated in order to send to Azure. + + :param phone: Required. The Sms phone :type phone: str - :param account_sid: The Sms account SID + :param account_sid: Required. The Sms account SID. Value only returned + through POST to the action Channel List API, otherwise empty. :type account_sid: str - :param auth_token: The Sms auth token + :param auth_token: Required. The Sms auth token. Value only returned + through POST to the action Channel List API, otherwise empty. :type auth_token: str :param is_validated: Whether this channel is validated for the bot :type is_validated: bool - :param is_enabled: Whether this channel is enabled for the bot + :param is_enabled: Required. Whether this channel is enabled for the bot :type is_enabled: bool """ @@ -42,9 +46,10 @@ class SmsChannelProperties(Model): 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, } - def __init__(self, phone, account_sid, auth_token, is_enabled, is_validated=None): - self.phone = phone - self.account_sid = account_sid - self.auth_token = auth_token - self.is_validated = is_validated - self.is_enabled = is_enabled + def __init__(self, **kwargs): + super(SmsChannelProperties, self).__init__(**kwargs) + self.phone = kwargs.get('phone', None) + self.account_sid = kwargs.get('account_sid', None) + self.auth_token = kwargs.get('auth_token', None) + self.is_validated = kwargs.get('is_validated', None) + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_properties_py3.py new file mode 100644 index 000000000000..60d8e2329989 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_properties_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SmsChannelProperties(Model): + """The parameters to provide for the Sms channel. + + All required parameters must be populated in order to send to Azure. + + :param phone: Required. The Sms phone + :type phone: str + :param account_sid: Required. The Sms account SID. Value only returned + through POST to the action Channel List API, otherwise empty. + :type account_sid: str + :param auth_token: Required. The Sms auth token. Value only returned + through POST to the action Channel List API, otherwise empty. + :type auth_token: str + :param is_validated: Whether this channel is validated for the bot + :type is_validated: bool + :param is_enabled: Required. Whether this channel is enabled for the bot + :type is_enabled: bool + """ + + _validation = { + 'phone': {'required': True}, + 'account_sid': {'required': True}, + 'auth_token': {'required': True}, + 'is_enabled': {'required': True}, + } + + _attribute_map = { + 'phone': {'key': 'phone', 'type': 'str'}, + 'account_sid': {'key': 'accountSID', 'type': 'str'}, + 'auth_token': {'key': 'authToken', 'type': 'str'}, + 'is_validated': {'key': 'isValidated', 'type': 'bool'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, phone: str, account_sid: str, auth_token: str, is_enabled: bool, is_validated: bool=None, **kwargs) -> None: + super(SmsChannelProperties, self).__init__(**kwargs) + self.phone = phone + self.account_sid = account_sid + self.auth_token = auth_token + self.is_validated = is_validated + self.is_enabled = is_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_py3.py new file mode 100644 index 000000000000..2e5589ec2dba --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/sms_channel_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .channel_py3 import Channel + + +class SmsChannel(Channel): + """Sms channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to Sms channel resource + :type properties: ~azure.mgmt.botservice.models.SmsChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'SmsChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(SmsChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'SmsChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel.py index eb2afc7e87bd..5b13451c4b06 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel.py @@ -15,7 +15,9 @@ class TelegramChannel(Channel): """Telegram channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to Telegram channel resource @@ -31,7 +33,7 @@ class TelegramChannel(Channel): 'properties': {'key': 'properties', 'type': 'TelegramChannelProperties'}, } - def __init__(self, properties=None): - super(TelegramChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(TelegramChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'TelegramChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_properties.py index 9430466c7a60..368bfe11b06d 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_properties.py @@ -15,11 +15,14 @@ class TelegramChannelProperties(Model): """The parameters to provide for the Telegram channel. - :param access_token: The Telegram access token + All required parameters must be populated in order to send to Azure. + + :param access_token: Required. The Telegram access token. Value only + returned through POST to the action Channel List API, otherwise empty. :type access_token: str :param is_validated: Whether this channel is validated for the bot :type is_validated: bool - :param is_enabled: Whether this channel is enabled for the bot + :param is_enabled: Required. Whether this channel is enabled for the bot :type is_enabled: bool """ @@ -34,7 +37,8 @@ class TelegramChannelProperties(Model): 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, } - def __init__(self, access_token, is_enabled, is_validated=None): - self.access_token = access_token - self.is_validated = is_validated - self.is_enabled = is_enabled + def __init__(self, **kwargs): + super(TelegramChannelProperties, self).__init__(**kwargs) + self.access_token = kwargs.get('access_token', None) + self.is_validated = kwargs.get('is_validated', None) + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_properties_py3.py new file mode 100644 index 000000000000..d9db39e8d283 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_properties_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TelegramChannelProperties(Model): + """The parameters to provide for the Telegram channel. + + All required parameters must be populated in order to send to Azure. + + :param access_token: Required. The Telegram access token. Value only + returned through POST to the action Channel List API, otherwise empty. + :type access_token: str + :param is_validated: Whether this channel is validated for the bot + :type is_validated: bool + :param is_enabled: Required. Whether this channel is enabled for the bot + :type is_enabled: bool + """ + + _validation = { + 'access_token': {'required': True}, + 'is_enabled': {'required': True}, + } + + _attribute_map = { + 'access_token': {'key': 'accessToken', 'type': 'str'}, + 'is_validated': {'key': 'isValidated', 'type': 'bool'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, access_token: str, is_enabled: bool, is_validated: bool=None, **kwargs) -> None: + super(TelegramChannelProperties, self).__init__(**kwargs) + self.access_token = access_token + self.is_validated = is_validated + self.is_enabled = is_enabled diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_py3.py new file mode 100644 index 000000000000..8928c50d2958 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/telegram_channel_py3.py @@ -0,0 +1,39 @@ +# 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 .channel_py3 import Channel + + +class TelegramChannel(Channel): + """Telegram channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to Telegram channel + resource + :type properties: ~azure.mgmt.botservice.models.TelegramChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'TelegramChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(TelegramChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'TelegramChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel.py index e2fc362fdb69..15b28e507c8d 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel.py @@ -15,7 +15,9 @@ class WebChatChannel(Channel): """Web Chat channel definition. - :param channel_name: Constant filled by server. + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. :type channel_name: str :param properties: The set of properties specific to Web Chat channel resource @@ -31,7 +33,7 @@ class WebChatChannel(Channel): 'properties': {'key': 'properties', 'type': 'WebChatChannelProperties'}, } - def __init__(self, properties=None): - super(WebChatChannel, self).__init__() - self.properties = properties + def __init__(self, **kwargs): + super(WebChatChannel, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) self.channel_name = 'WebChatChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_properties.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_properties.py index 144b64707a65..e1984da8ad00 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_properties.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_properties.py @@ -33,6 +33,7 @@ class WebChatChannelProperties(Model): 'sites': {'key': 'sites', 'type': '[WebChatSite]'}, } - def __init__(self, sites=None): + def __init__(self, **kwargs): + super(WebChatChannelProperties, self).__init__(**kwargs) self.web_chat_embed_code = None - self.sites = sites + self.sites = kwargs.get('sites', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_properties_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_properties_py3.py new file mode 100644 index 000000000000..5a59da35bf19 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_properties_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WebChatChannelProperties(Model): + """The parameters to provide for the Web Chat channel. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar web_chat_embed_code: Web chat control embed code + :vartype web_chat_embed_code: str + :param sites: The list of Web Chat sites + :type sites: list[~azure.mgmt.botservice.models.WebChatSite] + """ + + _validation = { + 'web_chat_embed_code': {'readonly': True}, + } + + _attribute_map = { + 'web_chat_embed_code': {'key': 'webChatEmbedCode', 'type': 'str'}, + 'sites': {'key': 'sites', 'type': '[WebChatSite]'}, + } + + def __init__(self, *, sites=None, **kwargs) -> None: + super(WebChatChannelProperties, self).__init__(**kwargs) + self.web_chat_embed_code = None + self.sites = sites diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_py3.py new file mode 100644 index 000000000000..dd3564eac32b --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_channel_py3.py @@ -0,0 +1,39 @@ +# 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 .channel_py3 import Channel + + +class WebChatChannel(Channel): + """Web Chat channel definition. + + All required parameters must be populated in order to send to Azure. + + :param channel_name: Required. Constant filled by server. + :type channel_name: str + :param properties: The set of properties specific to Web Chat channel + resource + :type properties: ~azure.mgmt.botservice.models.WebChatChannelProperties + """ + + _validation = { + 'channel_name': {'required': True}, + } + + _attribute_map = { + 'channel_name': {'key': 'channelName', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'WebChatChannelProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(WebChatChannel, self).__init__(**kwargs) + self.properties = properties + self.channel_name = 'WebChatChannel' diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_site.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_site.py index bcee7b9bddc5..4b7beef1d6e7 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_site.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_site.py @@ -18,18 +18,23 @@ class WebChatSite(Model): 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 site_id: Site Id :vartype site_id: str - :param site_name: Site name + :param site_name: Required. Site name :type site_name: str - :ivar key: Primary key + :ivar key: Primary key. Value only returned through POST to the action + Channel List API, otherwise empty. :vartype key: str - :ivar key2: Secondary key + :ivar key2: Secondary key. Value only returned through POST to the action + Channel List API, otherwise empty. :vartype key2: str - :param is_enabled: Whether this site is enabled for DirectLine channel + :param is_enabled: Required. Whether this site is enabled for DirectLine + channel :type is_enabled: bool - :param enable_preview: Whether this site is enabled for preview versions - of Webchat + :param enable_preview: Required. Whether this site is enabled for preview + versions of Webchat :type enable_preview: bool """ @@ -51,10 +56,11 @@ class WebChatSite(Model): 'enable_preview': {'key': 'enablePreview', 'type': 'bool'}, } - def __init__(self, site_name, is_enabled, enable_preview): + def __init__(self, **kwargs): + super(WebChatSite, self).__init__(**kwargs) self.site_id = None - self.site_name = site_name + self.site_name = kwargs.get('site_name', None) self.key = None self.key2 = None - self.is_enabled = is_enabled - self.enable_preview = enable_preview + self.is_enabled = kwargs.get('is_enabled', None) + self.enable_preview = kwargs.get('enable_preview', None) diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_site_py3.py b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_site_py3.py new file mode 100644 index 000000000000..a35ecac57f8b --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/models/web_chat_site_py3.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WebChatSite(Model): + """A site for the Webchat channel. + + 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 site_id: Site Id + :vartype site_id: str + :param site_name: Required. Site name + :type site_name: str + :ivar key: Primary key. Value only returned through POST to the action + Channel List API, otherwise empty. + :vartype key: str + :ivar key2: Secondary key. Value only returned through POST to the action + Channel List API, otherwise empty. + :vartype key2: str + :param is_enabled: Required. Whether this site is enabled for DirectLine + channel + :type is_enabled: bool + :param enable_preview: Required. Whether this site is enabled for preview + versions of Webchat + :type enable_preview: bool + """ + + _validation = { + 'site_id': {'readonly': True}, + 'site_name': {'required': True}, + 'key': {'readonly': True}, + 'key2': {'readonly': True}, + 'is_enabled': {'required': True}, + 'enable_preview': {'required': True}, + } + + _attribute_map = { + 'site_id': {'key': 'siteId', 'type': 'str'}, + 'site_name': {'key': 'siteName', 'type': 'str'}, + 'key': {'key': 'key', 'type': 'str'}, + 'key2': {'key': 'key2', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + 'enable_preview': {'key': 'enablePreview', 'type': 'bool'}, + } + + def __init__(self, *, site_name: str, is_enabled: bool, enable_preview: bool, **kwargs) -> None: + super(WebChatSite, self).__init__(**kwargs) + self.site_id = None + self.site_name = site_name + self.key = None + self.key2 = None + self.is_enabled = is_enabled + self.enable_preview = enable_preview diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/operations/__init__.py b/azure-mgmt-botservice/azure/mgmt/botservice/operations/__init__.py index f36f516ecc3f..c52c36afa15f 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/operations/__init__.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/operations/__init__.py @@ -10,13 +10,13 @@ # -------------------------------------------------------------------------- from .bots_operations import BotsOperations -from .bot_services_operations import BotServicesOperations from .channels_operations import ChannelsOperations from .operations import Operations +from .bot_connection_operations import BotConnectionOperations __all__ = [ 'BotsOperations', - 'BotServicesOperations', 'ChannelsOperations', 'Operations', + 'BotConnectionOperations', ] diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/operations/bot_connection_operations.py b/azure-mgmt-botservice/azure/mgmt/botservice/operations/bot_connection_operations.py new file mode 100644 index 000000000000..b2c010012ba3 --- /dev/null +++ b/azure-mgmt-botservice/azure/mgmt/botservice/operations/bot_connection_operations.py @@ -0,0 +1,502 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class BotConnectionOperations(object): + """BotConnectionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Current version is 2017-12-01. Constant value: "2018-07-12". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-12" + + self.config = config + + def list_service_providers( + self, custom_headers=None, raw=False, **operation_config): + """Lists the available Service Providers for creating Connection Settings. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceProviderResponseList or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.botservice.models.ServiceProviderResponseList or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.list_service_providers.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceProviderResponseList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_service_providers.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.BotService/listAuthServiceProviders'} + + def list_with_secrets( + self, resource_group_name, resource_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Get a Connection Setting registration for a Bot Service. + + :param resource_group_name: The name of the Bot resource group in the + user subscription. + :type resource_group_name: str + :param resource_name: The name of the Bot resource. + :type resource_name: str + :param connection_name: The name of the Bot Service Connection Setting + resource + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.botservice.models.ConnectionSetting or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.list_with_secrets.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_with_secrets.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/Connections/{connectionName}/listWithSecrets'} + + def create( + self, resource_group_name, resource_name, connection_name, parameters, custom_headers=None, raw=False, **operation_config): + """Register a new Auth Connection for a Bot Service. + + :param resource_group_name: The name of the Bot resource group in the + user subscription. + :type resource_group_name: str + :param resource_name: The name of the Bot resource. + :type resource_name: str + :param connection_name: The name of the Bot Service Connection Setting + resource + :type connection_name: str + :param parameters: The parameters to provide for creating the + Connection Setting. + :type parameters: ~azure.mgmt.botservice.models.ConnectionSetting + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.botservice.models.ConnectionSetting or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionSetting') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSetting', response) + if response.status_code == 201: + deserialized = self._deserialize('ConnectionSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/Connections/{connectionName}'} + + def update( + self, resource_group_name, resource_name, connection_name, parameters, custom_headers=None, raw=False, **operation_config): + """Updates a Connection Setting registration for a Bot Service. + + :param resource_group_name: The name of the Bot resource group in the + user subscription. + :type resource_group_name: str + :param resource_name: The name of the Bot resource. + :type resource_name: str + :param connection_name: The name of the Bot Service Connection Setting + resource + :type connection_name: str + :param parameters: The parameters to provide for updating the + Connection Setting. + :type parameters: ~azure.mgmt.botservice.models.ConnectionSetting + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.botservice.models.ConnectionSetting or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionSetting') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSetting', response) + if response.status_code == 201: + deserialized = self._deserialize('ConnectionSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/Connections/{connectionName}'} + + def get( + self, resource_group_name, resource_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Get a Connection Setting registration for a Bot Service. + + :param resource_group_name: The name of the Bot resource group in the + user subscription. + :type resource_group_name: str + :param resource_name: The name of the Bot resource. + :type resource_name: str + :param connection_name: The name of the Bot Service Connection Setting + resource + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.botservice.models.ConnectionSetting or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/Connections/{connectionName}'} + + def delete( + self, resource_group_name, resource_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Deletes a Connection Setting registration for a Bot Service. + + :param resource_group_name: The name of the Bot resource group in the + user subscription. + :type resource_group_name: str + :param resource_name: The name of the Bot resource. + :type resource_name: str + :param connection_name: The name of the Bot Service Connection Setting + resource + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/Connections/{connectionName}'} + + def list_by_bot_service( + self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): + """Returns all the Connection Settings registered to a particular + BotService resource. + + :param resource_group_name: The name of the Bot resource group in the + user subscription. + :type resource_group_name: str + :param resource_name: The name of the Bot resource. + :type resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ConnectionSetting + :rtype: + ~azure.mgmt.botservice.models.ConnectionSettingPaged[~azure.mgmt.botservice.models.ConnectionSetting] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_bot_service.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ConnectionSettingPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ConnectionSettingPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_bot_service.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/connections'} diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/operations/bots_operations.py b/azure-mgmt-botservice/azure/mgmt/botservice/operations/bots_operations.py index 5ad70b3168b3..e3daba7bbe6e 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/operations/bots_operations.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/operations/bots_operations.py @@ -21,8 +21,8 @@ class BotsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. - :ivar api_version: Version of the API to be used with the client request. Current version is 2017-12-01. Constant value: "2017-12-01". + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Current version is 2017-12-01. Constant value: "2018-07-12". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2017-12-01" + self.api_version = "2018-07-12" self.config = config @@ -41,8 +41,8 @@ def create( """Creates a Bot Service. Bot Service is a resource group wide resource type. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str @@ -60,9 +60,9 @@ def create( :class:`ErrorException` """ # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}' + url = self.create.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -74,6 +74,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -86,9 +87,8 @@ def create( body_content = self._serialize.body(parameters, 'Bot') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -105,13 +105,14 @@ def create( return client_raw_response return deserialized + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}'} def update( self, resource_group_name, resource_name, location=None, tags=None, sku=None, kind=None, etag=None, properties=None, custom_headers=None, raw=False, **operation_config): """Updates a Bot Service. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str @@ -142,9 +143,9 @@ def update( parameters = models.Bot(location=location, tags=tags, sku=sku, kind=kind, etag=etag, properties=properties) # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}' + url = self.update.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -156,6 +157,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -168,9 +170,8 @@ def update( body_content = self._serialize.body(parameters, 'Bot') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -187,13 +188,14 @@ def update( return client_raw_response return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}'} def delete( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): """Deletes a Bot Service from the resource group. . - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str @@ -208,9 +210,9 @@ def delete( :class:`ErrorException` """ # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}' + url = self.delete.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -222,7 +224,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -231,8 +232,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorException(self._deserialize, response) @@ -240,13 +241,14 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}'} def get( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): """Returns a BotService specified by the parameters. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str @@ -262,9 +264,9 @@ def get( :class:`ErrorException` """ # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}' + url = self.get.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -276,7 +278,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -285,8 +287,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -301,14 +303,15 @@ def get( return client_raw_response return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}'} def list_by_resource_group( self, resource_group_name, custom_headers=None, raw=False, **operation_config): """Returns all the resources of a particular type belonging to a resource group. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -325,9 +328,73 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices' + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.BotPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BotPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Returns all the resources of a particular type belonging to a + subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Bot + :rtype: + ~azure.mgmt.botservice.models.BotPaged[~azure.mgmt.botservice.models.Bot] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -342,7 +409,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +418,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -369,6 +435,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.BotService/botServices'} def get_check_name_availability( self, name=None, type=None, custom_headers=None, raw=False, **operation_config): @@ -396,7 +463,7 @@ def get_check_name_availability( parameters = models.CheckNameAvailabilityRequestBody(name=name, type=type) # Construct URL - url = '/providers/Microsoft.BotService/botServices/checkNameAvailability' + url = self.get_check_name_availability.metadata['url'] # Construct parameters query_parameters = {} @@ -404,6 +471,7 @@ def get_check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -416,9 +484,8 @@ def get_check_name_availability( body_content = self._serialize.body(parameters, 'CheckNameAvailabilityRequestBody') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, **operation_config) + request = self._client.get(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -433,3 +500,4 @@ def get_check_name_availability( return client_raw_response return deserialized + get_check_name_availability.metadata = {'url': '/providers/Microsoft.BotService/checkNameAvailability'} diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/operations/channels_operations.py b/azure-mgmt-botservice/azure/mgmt/botservice/operations/channels_operations.py index 4c17ba4c21d7..961b8d39f311 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/operations/channels_operations.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/operations/channels_operations.py @@ -21,8 +21,8 @@ class ChannelsOperations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. - :ivar api_version: Version of the API to be used with the client request. Current version is 2017-12-01. Constant value: "2017-12-01". + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Current version is 2017-12-01. Constant value: "2018-07-12". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2017-12-01" + self.api_version = "2018-07-12" self.config = config @@ -40,15 +40,16 @@ def create( self, resource_group_name, resource_name, channel_name, parameters, custom_headers=None, raw=False, **operation_config): """Creates a Channel registration for a Bot Service. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str - :param channel_name: The name of the Bot resource. Possible values + :param channel_name: The name of the Channel resource. Possible values include: 'FacebookChannel', 'EmailChannel', 'KikChannel', - 'TelegramChannel', 'SlackChannel' - :type channel_name: str + 'TelegramChannel', 'SlackChannel', 'MsTeamsChannel', 'SkypeChannel', + 'WebChatChannel', 'DirectLineChannel', 'SmsChannel' + :type channel_name: str or ~azure.mgmt.botservice.models.ChannelName :param parameters: The parameters to provide for the created bot. :type parameters: ~azure.mgmt.botservice.models.BotChannel :param dict custom_headers: headers that will be added to the request @@ -63,11 +64,11 @@ def create( :class:`ErrorException` """ # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}' + url = self.create.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), - 'channelName': self._serialize.url("channel_name", channel_name, 'str'), + 'channelName': self._serialize.url("channel_name", channel_name, 'ChannelName'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -78,6 +79,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -90,9 +92,8 @@ def create( body_content = self._serialize.body(parameters, 'BotChannel') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -109,20 +110,22 @@ def create( return client_raw_response return deserialized + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}'} def update( self, resource_group_name, resource_name, channel_name, location=None, tags=None, sku=None, kind=None, etag=None, properties=None, custom_headers=None, raw=False, **operation_config): """Updates a Channel registration for a Bot Service. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str - :param channel_name: The name of the Bot resource. Possible values + :param channel_name: The name of the Channel resource. Possible values include: 'FacebookChannel', 'EmailChannel', 'KikChannel', - 'TelegramChannel', 'SlackChannel' - :type channel_name: str + 'TelegramChannel', 'SlackChannel', 'MsTeamsChannel', 'SkypeChannel', + 'WebChatChannel', 'DirectLineChannel', 'SmsChannel' + :type channel_name: str or ~azure.mgmt.botservice.models.ChannelName :param location: Specifies the location of the resource. :type location: str :param tags: Contains resource tags defined as key/value pairs. @@ -151,11 +154,11 @@ def update( parameters = models.BotChannel(location=location, tags=tags, sku=sku, kind=kind, etag=etag, properties=properties) # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}' + url = self.update.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), - 'channelName': self._serialize.url("channel_name", channel_name, 'str'), + 'channelName': self._serialize.url("channel_name", channel_name, 'ChannelName'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -166,6 +169,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -178,9 +182,8 @@ def update( body_content = self._serialize.body(parameters, 'BotChannel') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -197,13 +200,14 @@ def update( return client_raw_response return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}'} def delete( self, resource_group_name, resource_name, channel_name, custom_headers=None, raw=False, **operation_config): """Deletes a Channel registration from a Bot Service. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str @@ -220,9 +224,9 @@ def delete( :class:`ErrorException` """ # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}' + url = self.delete.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'channelName': self._serialize.url("channel_name", channel_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') @@ -235,7 +239,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -244,8 +247,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorException(self._deserialize, response) @@ -253,13 +256,14 @@ def delete( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}'} def get( self, resource_group_name, resource_name, channel_name, custom_headers=None, raw=False, **operation_config): """Returns a BotService Channel registration specified by the parameters. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str @@ -277,9 +281,9 @@ def get( :class:`ErrorException` """ # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}' + url = self.get.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'channelName': self._serialize.url("channel_name", channel_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') @@ -292,7 +296,75 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BotChannel', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}'} + + def list_with_keys( + self, resource_group_name, resource_name, channel_name, custom_headers=None, raw=False, **operation_config): + """Lists a Channel registration for a Bot Service including secrets. + + :param resource_group_name: The name of the Bot resource group in the + user subscription. + :type resource_group_name: str + :param resource_name: The name of the Bot resource. + :type resource_name: str + :param channel_name: The name of the Channel resource. Possible values + include: 'FacebookChannel', 'EmailChannel', 'KikChannel', + 'TelegramChannel', 'SlackChannel', 'MsTeamsChannel', 'SkypeChannel', + 'WebChatChannel', 'DirectLineChannel', 'SmsChannel' + :type channel_name: str or ~azure.mgmt.botservice.models.ChannelName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BotChannel or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.botservice.models.BotChannel or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.list_with_keys.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), + 'channelName': self._serialize.url("channel_name", channel_name, 'ChannelName'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -301,8 +373,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -317,14 +389,15 @@ def get( return client_raw_response return deserialized + list_with_keys.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels/{channelName}/listChannelWithKeys'} def list_by_resource_group( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): """Returns all the Channel registrations of a particular BotService resource. - :param resource_group_name: The name of the resource group within the - user's subscription. + :param resource_group_name: The name of the Bot resource group in the + user subscription. :type resource_group_name: str :param resource_name: The name of the Bot resource. :type resource_name: str @@ -343,9 +416,9 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels' + url = self.list_by_resource_group.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'resourceName': self._serialize.url("resource_name", resource_name, 'str', max_length=64, min_length=2, pattern=r'^[a-zA-Z0-9][a-zA-Z0-9_.-]*$'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -361,7 +434,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -370,9 +443,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -388,3 +460,4 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.BotService/botServices/{resourceName}/channels'} diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/operations/operations.py b/azure-mgmt-botservice/azure/mgmt/botservice/operations/operations.py index 87663ae547e2..d0d7a9bd632f 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/operations/operations.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/operations/operations.py @@ -22,8 +22,8 @@ class Operations(object): :param client: Client for service requests. :param config: Configuration of service client. :param serializer: An object model serializer. - :param deserializer: An objec model deserializer. - :ivar api_version: Version of the API to be used with the client request. Current version is 2017-12-01. Constant value: "2017-12-01". + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Current version is 2017-12-01. Constant value: "2018-07-12". """ models = models @@ -33,7 +33,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2017-12-01" + self.api_version = "2018-07-12" self.config = config @@ -55,7 +55,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = '/providers/Microsoft.BotService/operations' + url = self.list.metadata['url'] # Construct parameters query_parameters = {} @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -96,3 +95,4 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized + list.metadata = {'url': '/providers/Microsoft.BotService/operations'} diff --git a/azure-mgmt-botservice/azure/mgmt/botservice/version.py b/azure-mgmt-botservice/azure/mgmt/botservice/version.py index e0ec669828cb..fb0159ed93d7 100644 --- a/azure-mgmt-botservice/azure/mgmt/botservice/version.py +++ b/azure-mgmt-botservice/azure/mgmt/botservice/version.py @@ -10,4 +10,3 @@ # -------------------------------------------------------------------------- VERSION = "0.1.0" - diff --git a/azure-mgmt-botservice/azure_bdist_wheel.py b/azure-mgmt-botservice/azure_bdist_wheel.py deleted file mode 100644 index 61ec571a9743..000000000000 --- a/azure-mgmt-botservice/azure_bdist_wheel.py +++ /dev/null @@ -1,533 +0,0 @@ -""" -"wheel" copyright (c) 2012-2017 Daniel Holth and -contributors. - -The MIT License - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the "Software"), -to deal in the Software without restriction, including without limitation -the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -Create a Azure wheel (.whl) distribution (a wheel is a built archive format). - -This file is a copy of the official bdist_wheel file from wheel 0.30.0a0, enhanced -of the bottom with some Microsoft extension for Azure SDK for Python - -""" - -import csv -import hashlib -import os -import subprocess -import warnings -import shutil -import json -import sys - -try: - import sysconfig -except ImportError: # pragma nocover - # Python < 2.7 - import distutils.sysconfig as sysconfig - -import pkg_resources - -safe_name = pkg_resources.safe_name -safe_version = pkg_resources.safe_version - -from shutil import rmtree -from email.generator import Generator - -from distutils.core import Command -from distutils.sysconfig import get_python_version - -from distutils import log as logger - -from wheel.pep425tags import get_abbr_impl, get_impl_ver, get_abi_tag, get_platform -from wheel.util import native, open_for_csv -from wheel.archive import archive_wheelfile -from wheel.pkginfo import read_pkg_info, write_pkg_info -from wheel.metadata import pkginfo_to_dict -from wheel import pep425tags, metadata -from wheel import __version__ as wheel_version - -def safer_name(name): - return safe_name(name).replace('-', '_') - -def safer_version(version): - return safe_version(version).replace('-', '_') - -class bdist_wheel(Command): - - description = 'create a wheel distribution' - - user_options = [('bdist-dir=', 'b', - "temporary directory for creating the distribution"), - ('plat-name=', 'p', - "platform name to embed in generated filenames " - "(default: %s)" % get_platform()), - ('keep-temp', 'k', - "keep the pseudo-installation tree around after " + - "creating the distribution archive"), - ('dist-dir=', 'd', - "directory to put final built distributions in"), - ('skip-build', None, - "skip rebuilding everything (for testing/debugging)"), - ('relative', None, - "build the archive using relative paths" - "(default: false)"), - ('owner=', 'u', - "Owner name used when creating a tar file" - " [default: current user]"), - ('group=', 'g', - "Group name used when creating a tar file" - " [default: current group]"), - ('universal', None, - "make a universal wheel" - " (default: false)"), - ('python-tag=', None, - "Python implementation compatibility tag" - " (default: py%s)" % get_impl_ver()[0]), - ] - - boolean_options = ['keep-temp', 'skip-build', 'relative', 'universal'] - - def initialize_options(self): - self.bdist_dir = None - self.data_dir = None - self.plat_name = None - self.plat_tag = None - self.format = 'zip' - self.keep_temp = False - self.dist_dir = None - self.distinfo_dir = None - self.egginfo_dir = None - self.root_is_pure = None - self.skip_build = None - self.relative = False - self.owner = None - self.group = None - self.universal = False - self.python_tag = 'py' + get_impl_ver()[0] - self.plat_name_supplied = False - - def finalize_options(self): - if self.bdist_dir is None: - bdist_base = self.get_finalized_command('bdist').bdist_base - self.bdist_dir = os.path.join(bdist_base, 'wheel') - - self.data_dir = self.wheel_dist_name + '.data' - self.plat_name_supplied = self.plat_name is not None - - need_options = ('dist_dir', 'plat_name', 'skip_build') - - self.set_undefined_options('bdist', - *zip(need_options, need_options)) - - self.root_is_pure = not (self.distribution.has_ext_modules() - or self.distribution.has_c_libraries()) - - # Support legacy [wheel] section for setting universal - wheel = self.distribution.get_option_dict('wheel') - if 'universal' in wheel: - # please don't define this in your global configs - val = wheel['universal'][1].strip() - if val.lower() in ('1', 'true', 'yes'): - self.universal = True - - @property - def wheel_dist_name(self): - """Return distribution full name with - replaced with _""" - return '-'.join((safer_name(self.distribution.get_name()), - safer_version(self.distribution.get_version()))) - - def get_tag(self): - # bdist sets self.plat_name if unset, we should only use it for purepy - # wheels if the user supplied it. - if self.plat_name_supplied: - plat_name = self.plat_name - elif self.root_is_pure: - plat_name = 'any' - else: - plat_name = self.plat_name or get_platform() - if plat_name in ('linux-x86_64', 'linux_x86_64') and sys.maxsize == 2147483647: - plat_name = 'linux_i686' - plat_name = plat_name.replace('-', '_').replace('.', '_') - - - if self.root_is_pure: - if self.universal: - impl = 'py2.py3' - else: - impl = self.python_tag - tag = (impl, 'none', plat_name) - else: - impl_name = get_abbr_impl() - impl_ver = get_impl_ver() - # PEP 3149 - abi_tag = str(get_abi_tag()).lower() - tag = (impl_name + impl_ver, abi_tag, plat_name) - supported_tags = pep425tags.get_supported( - supplied_platform=plat_name if self.plat_name_supplied else None) - # XXX switch to this alternate implementation for non-pure: - assert tag == supported_tags[0], "%s != %s" % (tag, supported_tags[0]) - return tag - - def get_archive_basename(self): - """Return archive name without extension""" - - impl_tag, abi_tag, plat_tag = self.get_tag() - - archive_basename = "%s-%s-%s-%s" % ( - self.wheel_dist_name, - impl_tag, - abi_tag, - plat_tag) - return archive_basename - - def run(self): - build_scripts = self.reinitialize_command('build_scripts') - build_scripts.executable = 'python' - - if not self.skip_build: - self.run_command('build') - - install = self.reinitialize_command('install', - reinit_subcommands=True) - install.root = self.bdist_dir - install.compile = False - install.skip_build = self.skip_build - install.warn_dir = False - - # A wheel without setuptools scripts is more cross-platform. - # Use the (undocumented) `no_ep` option to setuptools' - # install_scripts command to avoid creating entry point scripts. - install_scripts = self.reinitialize_command('install_scripts') - install_scripts.no_ep = True - - # Use a custom scheme for the archive, because we have to decide - # at installation time which scheme to use. - for key in ('headers', 'scripts', 'data', 'purelib', 'platlib'): - setattr(install, - 'install_' + key, - os.path.join(self.data_dir, key)) - - basedir_observed = '' - - if os.name == 'nt': - # win32 barfs if any of these are ''; could be '.'? - # (distutils.command.install:change_roots bug) - basedir_observed = os.path.normpath(os.path.join(self.data_dir, '..')) - self.install_libbase = self.install_lib = basedir_observed - - setattr(install, - 'install_purelib' if self.root_is_pure else 'install_platlib', - basedir_observed) - - logger.info("installing to %s", self.bdist_dir) - - self.run_command('install') - - archive_basename = self.get_archive_basename() - - pseudoinstall_root = os.path.join(self.dist_dir, archive_basename) - if not self.relative: - archive_root = self.bdist_dir - else: - archive_root = os.path.join( - self.bdist_dir, - self._ensure_relative(install.install_base)) - - self.set_undefined_options( - 'install_egg_info', ('target', 'egginfo_dir')) - self.distinfo_dir = os.path.join(self.bdist_dir, - '%s.dist-info' % self.wheel_dist_name) - self.egg2dist(self.egginfo_dir, - self.distinfo_dir) - - self.write_wheelfile(self.distinfo_dir) - - self.write_record(self.bdist_dir, self.distinfo_dir) - - # Make the archive - if not os.path.exists(self.dist_dir): - os.makedirs(self.dist_dir) - wheel_name = archive_wheelfile(pseudoinstall_root, archive_root) - - # Sign the archive - if 'WHEEL_TOOL' in os.environ: - subprocess.call([os.environ['WHEEL_TOOL'], 'sign', wheel_name]) - - # Add to 'Distribution.dist_files' so that the "upload" command works - getattr(self.distribution, 'dist_files', []).append( - ('bdist_wheel', get_python_version(), wheel_name)) - - if not self.keep_temp: - if self.dry_run: - logger.info('removing %s', self.bdist_dir) - else: - rmtree(self.bdist_dir) - - def write_wheelfile(self, wheelfile_base, generator='bdist_wheel (' + wheel_version + ')'): - from email.message import Message - msg = Message() - msg['Wheel-Version'] = '1.0' # of the spec - msg['Generator'] = generator - msg['Root-Is-Purelib'] = str(self.root_is_pure).lower() - - # Doesn't work for bdist_wininst - impl_tag, abi_tag, plat_tag = self.get_tag() - for impl in impl_tag.split('.'): - for abi in abi_tag.split('.'): - for plat in plat_tag.split('.'): - msg['Tag'] = '-'.join((impl, abi, plat)) - - wheelfile_path = os.path.join(wheelfile_base, 'WHEEL') - logger.info('creating %s', wheelfile_path) - with open(wheelfile_path, 'w') as f: - Generator(f, maxheaderlen=0).flatten(msg) - - def _ensure_relative(self, path): - # copied from dir_util, deleted - drive, path = os.path.splitdrive(path) - if path[0:1] == os.sep: - path = drive + path[1:] - return path - - def _pkginfo_to_metadata(self, egg_info_path, pkginfo_path): - return metadata.pkginfo_to_metadata(egg_info_path, pkginfo_path) - - def license_file(self): - """Return license filename from a license-file key in setup.cfg, or None.""" - metadata = self.distribution.get_option_dict('metadata') - if not 'license_file' in metadata: - return None - return metadata['license_file'][1] - - def setupcfg_requirements(self): - """Generate requirements from setup.cfg as - ('Requires-Dist', 'requirement; qualifier') tuples. From a metadata - section in setup.cfg: - - [metadata] - provides-extra = extra1 - extra2 - requires-dist = requirement; qualifier - another; qualifier2 - unqualified - - Yields - - ('Provides-Extra', 'extra1'), - ('Provides-Extra', 'extra2'), - ('Requires-Dist', 'requirement; qualifier'), - ('Requires-Dist', 'another; qualifier2'), - ('Requires-Dist', 'unqualified') - """ - metadata = self.distribution.get_option_dict('metadata') - - # our .ini parser folds - to _ in key names: - for key, title in (('provides_extra', 'Provides-Extra'), - ('requires_dist', 'Requires-Dist')): - if not key in metadata: - continue - field = metadata[key] - for line in field[1].splitlines(): - line = line.strip() - if not line: - continue - yield (title, line) - - def add_requirements(self, metadata_path): - """Add additional requirements from setup.cfg to file metadata_path""" - additional = list(self.setupcfg_requirements()) - if not additional: return - pkg_info = read_pkg_info(metadata_path) - if 'Provides-Extra' in pkg_info or 'Requires-Dist' in pkg_info: - warnings.warn('setup.cfg requirements overwrite values from setup.py') - del pkg_info['Provides-Extra'] - del pkg_info['Requires-Dist'] - for k, v in additional: - pkg_info[k] = v - write_pkg_info(metadata_path, pkg_info) - - def egg2dist(self, egginfo_path, distinfo_path): - """Convert an .egg-info directory into a .dist-info directory""" - def adios(p): - """Appropriately delete directory, file or link.""" - if os.path.exists(p) and not os.path.islink(p) and os.path.isdir(p): - shutil.rmtree(p) - elif os.path.exists(p): - os.unlink(p) - - adios(distinfo_path) - - if not os.path.exists(egginfo_path): - # There is no egg-info. This is probably because the egg-info - # file/directory is not named matching the distribution name used - # to name the archive file. Check for this case and report - # accordingly. - import glob - pat = os.path.join(os.path.dirname(egginfo_path), '*.egg-info') - possible = glob.glob(pat) - err = "Egg metadata expected at %s but not found" % (egginfo_path,) - if possible: - alt = os.path.basename(possible[0]) - err += " (%s found - possible misnamed archive file?)" % (alt,) - - raise ValueError(err) - - if os.path.isfile(egginfo_path): - # .egg-info is a single file - pkginfo_path = egginfo_path - pkg_info = self._pkginfo_to_metadata(egginfo_path, egginfo_path) - os.mkdir(distinfo_path) - else: - # .egg-info is a directory - pkginfo_path = os.path.join(egginfo_path, 'PKG-INFO') - pkg_info = self._pkginfo_to_metadata(egginfo_path, pkginfo_path) - - # ignore common egg metadata that is useless to wheel - shutil.copytree(egginfo_path, distinfo_path, - ignore=lambda x, y: set(('PKG-INFO', - 'requires.txt', - 'SOURCES.txt', - 'not-zip-safe',))) - - # delete dependency_links if it is only whitespace - dependency_links_path = os.path.join(distinfo_path, 'dependency_links.txt') - with open(dependency_links_path, 'r') as dependency_links_file: - dependency_links = dependency_links_file.read().strip() - if not dependency_links: - adios(dependency_links_path) - - write_pkg_info(os.path.join(distinfo_path, 'METADATA'), pkg_info) - - # XXX deprecated. Still useful for current distribute/setuptools. - metadata_path = os.path.join(distinfo_path, 'METADATA') - self.add_requirements(metadata_path) - - # XXX intentionally a different path than the PEP. - metadata_json_path = os.path.join(distinfo_path, 'metadata.json') - pymeta = pkginfo_to_dict(metadata_path, - distribution=self.distribution) - - if 'description' in pymeta: - description_filename = 'DESCRIPTION.rst' - description_text = pymeta.pop('description') - description_path = os.path.join(distinfo_path, - description_filename) - with open(description_path, "wb") as description_file: - description_file.write(description_text.encode('utf-8')) - pymeta['extensions']['python.details']['document_names']['description'] = description_filename - - # XXX heuristically copy any LICENSE/LICENSE.txt? - license = self.license_file() - if license: - license_filename = 'LICENSE.txt' - shutil.copy(license, os.path.join(self.distinfo_dir, license_filename)) - pymeta['extensions']['python.details']['document_names']['license'] = license_filename - - with open(metadata_json_path, "w") as metadata_json: - json.dump(pymeta, metadata_json, sort_keys=True) - - adios(egginfo_path) - - def write_record(self, bdist_dir, distinfo_dir): - from wheel.util import urlsafe_b64encode - - record_path = os.path.join(distinfo_dir, 'RECORD') - record_relpath = os.path.relpath(record_path, bdist_dir) - - def walk(): - for dir, dirs, files in os.walk(bdist_dir): - dirs.sort() - for f in sorted(files): - yield os.path.join(dir, f) - - def skip(path): - """Wheel hashes every possible file.""" - return (path == record_relpath) - - with open_for_csv(record_path, 'w+') as record_file: - writer = csv.writer(record_file) - for path in walk(): - relpath = os.path.relpath(path, bdist_dir) - if skip(relpath): - hash = '' - size = '' - else: - with open(path, 'rb') as f: - data = f.read() - digest = hashlib.sha256(data).digest() - hash = 'sha256=' + native(urlsafe_b64encode(digest)) - size = len(data) - record_path = os.path.relpath( - path, bdist_dir).replace(os.path.sep, '/') - writer.writerow((record_path, hash, size)) - - -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -#from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-botservice/sdk_packaging.toml b/azure-mgmt-botservice/sdk_packaging.toml new file mode 100644 index 000000000000..5094b5ce21b1 --- /dev/null +++ b/azure-mgmt-botservice/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-botservice" +package_pprint_name = "Bot Service" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-botservice/setup.cfg b/azure-mgmt-botservice/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-botservice/setup.cfg +++ b/azure-mgmt-botservice/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-botservice/setup.py b/azure-mgmt-botservice/setup.py index 628663c84c75..872ed3e7cb2b 100644 --- a/azure-mgmt-botservice/setup.py +++ b/azure-mgmt-botservice/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-botservice" -PACKAGE_PPRINT_NAME = "Bot Service Management" +PACKAGE_PPRINT_NAME = "Bot Service" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_directline_channel.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_directline_channel.yaml new file mode 100644 index 000000000000..2312e0de0b1a --- /dev/null +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_directline_channel.yaml @@ -0,0 +1,231 @@ +interactions: +- request: + body: '{"location": "global", "sku": {"name": "Free"}, "kind": "Bot", "properties": + {"displayName": "this is a test bot", "description": "this is a description + for a test bot", "endpoint": "https://bing.com/messages/", "msaAppId": "056d9ad9-17a9-4cc7-aebb-43bf6f293a08", + "developerAppInsightKey": "59513bad-10a7-4d41-b4d0-b1c34c6af511", "developerAppInsightsApiKey": + "w24iw5ocbhcig71su7ibaj63hey5ieaozeuwdv11", "developerAppInsightsApplicationId": + "cf03484e-3fdb-4b5e-9ad7-94bde32e5a19"}}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['481'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd?api-version=2018-07-12 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd","name":"azurebotservice4f7115bd","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-07-31T20%3A45%3A36.2560922Z''\"","location":"global","sku":{"name":""},"kind":"Bot","tags":{},"properties":{"displayName":"this + is a test bot","description":"this is a description for a test bot","iconUrl":"//bot-framework.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"056d9ad9-17a9-4cc7-aebb-43bf6f293a08","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af511","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a19","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['957'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 31 Jul 2018 20:45:41 GMT'] + etag: [W/"datetime'2018-07-31T20%3A45%3A36.2560922Z'"] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-powered-by: [ASP.NET] + status: {code: 201, message: Created} +- request: + body: '{"location": "global", "properties": {"channelName": "DirectLineChannel", + "properties": {"sites": [{"siteName": "default", "isEnabled": true, "isV1Enabled": + false, "isV3Enabled": true}]}}}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['188'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel?api-version=2018-07-12 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel","name":"azurebotservice4f7115bd/DirectLineChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"2b47e15fbec0d1d1b222623dda5d66307/31/2018 + 8:45:44 PM\"","location":"global","properties":{"properties":{"DirectLineEmbedCode":null,"sites":[{"siteId":"3tzNpMpYn-k","siteName":"default","key":"3tzNpMpYn-k.cwA.rQk.ZU7eLP6D3DvlcRAf_0ZUQXn_hnyZ-2L-w3V3JEMmFm4","key2":"3tzNpMpYn-k.cwA.Dy8.BdYdlVv68RdNBvrLC2y69Yi5vkE4KsQbOv2voUzn2lI","isEnabled":true,"isV1Enabled":true,"isV3Enabled":true}]},"etag":"W/\"2b47e15fbec0d1d1b222623dda5d66307/31/2018 + 8:45:44 PM\"","channelName":"DirectLineChannel","location":"global","provisioningState":"Accepted"}}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['846'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 31 Jul 2018 20:45:44 GMT'] + etag: ['W/"2b47e15fbec0d1d1b222623dda5d66307/31/2018 8:45:44 PM"'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: ['Accept-Encoding,Accept-Encoding'] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel?api-version=2018-07-12 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel","name":"azurebotservice4f7115bd/DirectLineChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"d1d47c925d692cda5e3914543f8978407/31/2018 + 8:45:45 PM\"","location":"global","properties":{"properties":{"DirectLineEmbedCode":null,"sites":[{"siteId":"3tzNpMpYn-k","siteName":"default","key":"","key2":"","isEnabled":true,"isV1Enabled":true,"isV3Enabled":true}]},"etag":"W/\"d1d47c925d692cda5e3914543f8978407/31/2018 + 8:45:45 PM\"","channelName":"DirectLineChannel","location":"global","provisioningState":"Succeeded"}}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['721'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 31 Jul 2018 20:45:44 GMT'] + etag: ['W/"d1d47c925d692cda5e3914543f8978407/31/2018 8:45:45 PM"'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: ['Accept-Encoding,Accept-Encoding'] + x-content-type-options: [nosniff] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel/listChannelWithKeys?api-version=2018-07-12 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel","location":"global","properties":{"properties":{"DirectLineEmbedCode":null,"sites":[{"siteId":"3tzNpMpYn-k","siteName":"default","key":"3tzNpMpYn-k.cwA.rQk.ZU7eLP6D3DvlcRAf_0ZUQXn_hnyZ-2L-w3V3JEMmFm4","key2":"3tzNpMpYn-k.cwA.Dy8.BdYdlVv68RdNBvrLC2y69Yi5vkE4KsQbOv2voUzn2lI","isEnabled":true,"isV1Enabled":true,"isV3Enabled":true}]},"etag":"W/\"2b47e15fbec0d1d1b222623dda5d66307/31/2018 + 8:45:46 PM\"","channelName":"DirectLineChannel","location":"global"},"provisioningState":"Succeeded","entityTag":"W/\"222fd4d12b031d841b4b6be1ee3a6bcd7/31/2018 + 8:45:46 PM\"","changedTime":"0001-01-01T00:00:00Z"}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['787'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 31 Jul 2018 20:45:47 GMT'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: ['Accept-Encoding,Accept-Encoding'] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel?api-version=2018-07-12 + response: + body: {string: ''} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['0'] + date: ['Tue, 31 Jul 2018 20:45:48 GMT'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-deletes: ['14997'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel?api-version=2018-07-12 + response: + body: {string: '{"error":{"code":"ResourceNotFound","message":"The resource with + identifier ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd/channels/DirectLineChannel'' + is not found."}}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['276'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 31 Jul 2018 20:45:49 GMT'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-powered-by: [ASP.NET] + status: {code: 404, message: Not Found} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot4f7115bd/providers/Microsoft.BotService/botServices/azurebotservice4f7115bd?api-version=2018-07-12 + response: + body: {string: ''} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['0'] + date: ['Tue, 31 Jul 2018 20:45:55 GMT'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_email_channel.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_email_channel.yaml index 52fe6b4d20b2..238a153ea2fe 100644 --- a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_email_channel.yaml +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_email_channel.yaml @@ -16,7 +16,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2","name":"azurebotservicee60013a2","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-04-02T18%3A36%3A34.9983667Z''\"","location":"global","sku":{"name":""},"kind":"Bot","properties":{"displayName":"this is a test bot","description":"this is a description for a test bot","iconUrl":"//intercom-scratch.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"056d9ad9-17a9-4cc7-aebb-43bf6f293a08","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af511","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a11","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} @@ -49,7 +49,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel","name":"azurebotservicee60013a2/EmailChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"8148c55803b448c0dab50af27c73b1084/2/2018 6:36:42 PM\"","location":"global","properties":{"properties":{"emailAddress":"swagatm2@outlook.com","password":"Botuser123@","isEnabled":true},"etag":"W/\"8148c55803b448c0dab50af27c73b1084/2/2018 @@ -80,7 +80,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel","name":"azurebotservicee60013a2/EmailChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"c319754c4cd79482a41125d9543e108b4/2/2018 6:36:43 PM\"","location":"global","properties":{"properties":{"emailAddress":"swagatm2@outlook.com","password":"Botuser123@","isEnabled":true},"etag":"W/\"c319754c4cd79482a41125d9543e108b4/2/2018 @@ -113,7 +113,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel?api-version=2018-07-12 response: body: {string: ''} headers: @@ -140,7 +140,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel?api-version=2018-07-12 response: body: {string: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.BotService/botServices/azurebotservicee60013a2/channels/EmailChannel'' under resource group ''pythonsdkbote60013a2'' was not found."}}'} @@ -167,7 +167,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2?api-version=2018-07-12 response: body: {string: '{"error":{"code":"UnknownError","message":"message: The remote server returned an error: (412) Precondition Failed. original trace: at @@ -237,7 +237,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote60013a2/providers/Microsoft.BotService/botServices/azurebotservicee60013a2?api-version=2018-07-12 response: body: {string: ''} headers: diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_msteams_channel.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_msteams_channel.yaml index 92c6d3d74efb..27c0093b6c67 100644 --- a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_msteams_channel.yaml +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_msteams_channel.yaml @@ -2,33 +2,34 @@ interactions: - request: body: '{"location": "global", "sku": {"name": "Free"}, "kind": "Bot", "properties": {"displayName": "this is a test bot", "description": "this is a description - for a test bot", "endpoint": "https://bing.com/messages/", "msaAppId": "41a220b9-6571-4f0b-bbd2-43f1c1d82f53", - "developerAppInsightKey": "59513bad-10a7-4d41-b4d0-b1c34c6af52a", "developerAppInsightsApiKey": - "w24iw5ocbhcig71su7ibaj63hey5ieaozeuwdv2r", "developerAppInsightsApplicationId": - "cf03484e-3fdb-4b5e-9ad7-94bde32e5a2b"}}' + for a test bot", "endpoint": "https://bing.com/messages/", "msaAppId": "056d9ad9-17a9-4cc7-aebb-43bf6f293a08", + "developerAppInsightKey": "59513bad-10a7-4d41-b4d0-b1c34c6af511", "developerAppInsightsApiKey": + "w24iw5ocbhcig71su7ibaj63hey5ieaozeuwdv11", "developerAppInsightsApplicationId": + "cf03484e-3fdb-4b5e-9ad7-94bde32e5a19"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['481'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot104a1494/providers/Microsoft.BotService/botServices/azurebotservice104a1494?api-version=2018-07-12 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13","name":"testpythonbot13","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-04-01T03%3A44%3A25.9372046Z''\"","location":"global","sku":{"name":""},"kind":"Bot","properties":{"displayName":"this - is a test bot","description":"this is a description for a test bot","iconUrl":"//intercom-scratch.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"41a220b9-6571-4f0b-bbd2-43f1c1d82f53","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af52a","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a2b","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot104a1494/providers/Microsoft.BotService/botServices/azurebotservice104a1494","name":"azurebotservice104a1494","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-07-31T20%3A29%3A19.6567255Z''\"","location":"global","sku":{"name":""},"kind":"Bot","tags":{},"properties":{"displayName":"this + is a test bot","description":"this is a description for a test bot","iconUrl":"//bot-framework.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"056d9ad9-17a9-4cc7-aebb-43bf6f293a08","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af511","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a19","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] - content-length: ['926'] + content-length: ['957'] content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 03:44:26 GMT'] - etag: [W/"datetime'2018-04-01T03%3A44%3A25.9372046Z'"] + date: ['Tue, 31 Jul 2018 20:29:19 GMT'] + etag: [W/"datetime'2018-07-31T20%3A29%3A19.6567255Z'"] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -37,37 +38,40 @@ interactions: status: {code: 201, message: Created} - request: body: '{"location": "global", "properties": {"channelName": "MsTeamsChannel", - "properties": {"enableMessaging": true, "isEnabled": true}}}' + "properties": {"isEnabled": true}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['131'] + Content-Length: ['106'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/MsTeamsChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot104a1494/providers/Microsoft.BotService/botServices/azurebotservice104a1494/channels/MsTeamsChannel?api-version=2018-07-12 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/MsTeamsChannel","name":"testpythonbot13/MsTeamsChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"05f9ab1b3ec654ae06838944f06d7bdc4/1/2018 - 3:45:13 AM\"","location":"global","properties":{"properties":{"enableMessaging":true,"enableMediaCards":false,"enableVideo":false,"enableCalling":false,"callMode":null,"isEnabled":true},"etag":"W/\"05f9ab1b3ec654ae06838944f06d7bdc4/1/2018 - 3:45:13 AM\"","channelName":"MsTeamsChannel","location":"global","provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot104a1494/providers/Microsoft.BotService/botServices/azurebotservice104a1494/channels/MsTeamsChannel","name":"azurebotservice104a1494/MsTeamsChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"19ecb95fcfc74f02ef33405013e352a47/31/2018 + 8:29:23 PM\"","location":"global","properties":{"properties":{"enableCalling":false,"callingWebhook":null,"isEnabled":true},"etag":"W/\"19ecb95fcfc74f02ef33405013e352a47/31/2018 + 8:29:23 PM\"","channelName":"MsTeamsChannel","location":"global","provisioningState":"Accepted"}}'} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] - content-length: ['652'] + content-length: ['615'] content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 03:45:13 GMT'] - etag: ['W/"05f9ab1b3ec654ae06838944f06d7bdc4/1/2018 3:45:13 AM"'] + date: ['Tue, 31 Jul 2018 20:29:23 GMT'] + etag: ['W/"19ecb95fcfc74f02ef33405013e352a47/31/2018 8:29:23 PM"'] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-ms-ratelimit-remaining-subscription-writes: ['1199'] x-powered-by: [ASP.NET] - status: {code: 201, message: Created} + status: {code: 200, message: OK} - request: body: null headers: @@ -75,28 +79,29 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/MsTeamsChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot104a1494/providers/Microsoft.BotService/botServices/azurebotservice104a1494/channels/MsTeamsChannel?api-version=2018-07-12 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/MsTeamsChannel","name":"testpythonbot13/MsTeamsChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"0a4cd16bd516f5a97993fcf633be366b4/1/2018 - 3:45:45 AM\"","location":"global","properties":{"properties":{"enableMessaging":false,"enableMediaCards":false,"enableVideo":false,"enableCalling":false,"callMode":null,"isEnabled":true},"etag":"W/\"0a4cd16bd516f5a97993fcf633be366b4/1/2018 - 3:45:45 AM\"","channelName":"MsTeamsChannel","location":"global","provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot104a1494/providers/Microsoft.BotService/botServices/azurebotservice104a1494/channels/MsTeamsChannel","name":"azurebotservice104a1494/MsTeamsChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"19ecb95fcfc74f02ef33405013e352a47/31/2018 + 8:29:25 PM\"","location":"global","properties":{"properties":{"enableCalling":false,"callingWebhook":null,"isEnabled":true},"etag":"W/\"19ecb95fcfc74f02ef33405013e352a47/31/2018 + 8:29:25 PM\"","channelName":"MsTeamsChannel","location":"global","provisioningState":"Succeeded"}}'} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] - content-length: ['653'] + content-length: ['616'] content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 03:45:45 GMT'] - etag: ['W/"0a4cd16bd516f5a97993fcf633be366b4/1/2018 3:45:45 AM"'] + date: ['Tue, 31 Jul 2018 20:29:24 GMT'] + etag: ['W/"19ecb95fcfc74f02ef33405013e352a47/31/2018 8:29:25 PM"'] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] - vary: [Accept-Encoding] + vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-powered-by: [ASP.NET] status: {code: 200, message: OK} @@ -108,52 +113,27 @@ interactions: Connection: [keep-alive] Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/MsTeamsChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot104a1494/providers/Microsoft.BotService/botServices/azurebotservice104a1494/channels/MsTeamsChannel?api-version=2018-07-12 response: body: {string: ''} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] content-length: ['0'] - date: ['Sun, 01 Apr 2018 03:46:36 GMT'] + date: ['Tue, 31 Jul 2018 20:29:27 GMT'] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/MsTeamsChannel?api-version=2017-12-01 - response: - body: {string: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.BotService/botServices/testpythonbot13/channels/MsTeamsChannel'' - under resource group ''testpythonrg'' was not found."}}'} - headers: - cache-control: [no-cache] - content-length: ['188'] - content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 03:46:37 GMT'] - expires: ['-1'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-failure-cause: [gateway] - status: {code: 404, message: Not Found} - request: body: null headers: @@ -162,24 +142,25 @@ interactions: Connection: [keep-alive] Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot104a1494/providers/Microsoft.BotService/botServices/azurebotservice104a1494?api-version=2018-07-12 response: body: {string: ''} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] content-length: ['0'] - date: ['Sun, 01 Apr 2018 03:47:24 GMT'] + date: ['Tue, 31 Jul 2018 20:29:33 GMT'] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_skype_channel.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_skype_channel.yaml index fd75574952fb..4676d6098fb6 100644 --- a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_skype_channel.yaml +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_skype_channel.yaml @@ -2,33 +2,34 @@ interactions: - request: body: '{"location": "global", "sku": {"name": "Free"}, "kind": "Bot", "properties": {"displayName": "this is a test bot", "description": "this is a description - for a test bot", "endpoint": "https://bing.com/messages/", "msaAppId": "41a220b9-6571-4f0b-bbd2-43f1c1d82f53", - "developerAppInsightKey": "59513bad-10a7-4d41-b4d0-b1c34c6af52a", "developerAppInsightsApiKey": - "w24iw5ocbhcig71su7ibaj63hey5ieaozeuwdv2r", "developerAppInsightsApplicationId": - "cf03484e-3fdb-4b5e-9ad7-94bde32e5a2b"}}' + for a test bot", "endpoint": "https://bing.com/messages/", "msaAppId": "056d9ad9-17a9-4cc7-aebb-43bf6f293a08", + "developerAppInsightKey": "59513bad-10a7-4d41-b4d0-b1c34c6af511", "developerAppInsightsApiKey": + "w24iw5ocbhcig71su7ibaj63hey5ieaozeuwdv11", "developerAppInsightsApplicationId": + "cf03484e-3fdb-4b5e-9ad7-94bde32e5a19"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['481'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote7ad13c6/providers/Microsoft.BotService/botServices/azurebotservicee7ad13c6?api-version=2018-07-12 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13","name":"testpythonbot13","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-04-01T04%3A05%3A31.6306037Z''\"","location":"global","sku":{"name":""},"kind":"Bot","properties":{"displayName":"this - is a test bot","description":"this is a description for a test bot","iconUrl":"//intercom-scratch.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"41a220b9-6571-4f0b-bbd2-43f1c1d82f53","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af52a","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a2b","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote7ad13c6/providers/Microsoft.BotService/botServices/azurebotservicee7ad13c6","name":"azurebotservicee7ad13c6","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-07-31T20%3A30%3A02.433121Z''\"","location":"global","sku":{"name":""},"kind":"Bot","tags":{},"properties":{"displayName":"this + is a test bot","description":"this is a description for a test bot","iconUrl":"//bot-framework.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"056d9ad9-17a9-4cc7-aebb-43bf6f293a08","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af511","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a19","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] - content-length: ['926'] + content-length: ['956'] content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 04:05:31 GMT'] - etag: [W/"datetime'2018-04-01T04%3A05%3A31.6306037Z'"] + date: ['Tue, 31 Jul 2018 20:30:02 GMT'] + etag: [W/"datetime'2018-07-31T20%3A30%3A02.433121Z'"] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -44,28 +45,29 @@ interactions: Connection: [keep-alive] Content-Length: ['129'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/SkypeChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote7ad13c6/providers/Microsoft.BotService/botServices/azurebotservicee7ad13c6/channels/SkypeChannel?api-version=2018-07-12 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/SkypeChannel","name":"testpythonbot13/SkypeChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"e1bfa1407ed0ebd0a745ef8d8872541c4/1/2018 - 4:06:02 AM\"","location":"global","properties":{"properties":{"enableMessaging":true,"enableMediaCards":false,"enableVideo":false,"enableCalling":false,"enableScreenSharing":false,"enableGroups":false,"groupsMode":null,"callingWebHook":null,"isEnabled":true},"etag":"W/\"e1bfa1407ed0ebd0a745ef8d8872541c4/1/2018 - 4:06:02 AM\"","channelName":"SkypeChannel","location":"global","provisioningState":"Accepted"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote7ad13c6/providers/Microsoft.BotService/botServices/azurebotservicee7ad13c6/channels/SkypeChannel","name":"azurebotservicee7ad13c6/SkypeChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"e1bfa1407ed0ebd0a745ef8d8872541c7/31/2018 + 8:30:05 PM\"","location":"global","properties":{"properties":{"enableMessaging":true,"enableMediaCards":false,"enableVideo":false,"enableCalling":false,"enableScreenSharing":false,"enableGroups":false,"groupsMode":null,"callingWebHook":null,"isEnabled":true},"etag":"W/\"e1bfa1407ed0ebd0a745ef8d8872541c7/31/2018 + 8:30:05 PM\"","channelName":"SkypeChannel","location":"global","provisioningState":"Accepted"}}'} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] - content-length: ['718'] + content-length: ['744'] content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 04:06:02 GMT'] - etag: ['W/"e1bfa1407ed0ebd0a745ef8d8872541c4/1/2018 4:06:02 AM"'] + date: ['Tue, 31 Jul 2018 20:30:05 GMT'] + etag: ['W/"e1bfa1407ed0ebd0a745ef8d8872541c7/31/2018 8:30:05 PM"'] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] - vary: [Accept-Encoding] + vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-ms-ratelimit-remaining-subscription-writes: ['1199'] x-powered-by: [ASP.NET] @@ -77,28 +79,29 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/SkypeChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote7ad13c6/providers/Microsoft.BotService/botServices/azurebotservicee7ad13c6/channels/SkypeChannel?api-version=2018-07-12 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/SkypeChannel","name":"testpythonbot13/SkypeChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"a9c9d34a8f5e09c02779a2a247318e994/1/2018 - 4:06:19 AM\"","location":"global","properties":{"properties":{"enableMessaging":true,"enableMediaCards":false,"enableVideo":false,"enableCalling":false,"enableScreenSharing":false,"enableGroups":false,"groupsMode":null,"callingWebHook":"","isEnabled":true},"etag":"W/\"a9c9d34a8f5e09c02779a2a247318e994/1/2018 - 4:06:19 AM\"","channelName":"SkypeChannel","location":"global","provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote7ad13c6/providers/Microsoft.BotService/botServices/azurebotservicee7ad13c6/channels/SkypeChannel","name":"azurebotservicee7ad13c6/SkypeChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"a9c9d34a8f5e09c02779a2a247318e997/31/2018 + 8:30:06 PM\"","location":"global","properties":{"properties":{"enableMessaging":true,"enableMediaCards":false,"enableVideo":false,"enableCalling":false,"enableScreenSharing":false,"enableGroups":false,"groupsMode":null,"callingWebHook":"","isEnabled":true},"etag":"W/\"a9c9d34a8f5e09c02779a2a247318e997/31/2018 + 8:30:06 PM\"","channelName":"SkypeChannel","location":"global","provisioningState":"Succeeded"}}'} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] - content-length: ['717'] + content-length: ['743'] content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 04:06:18 GMT'] - etag: ['W/"a9c9d34a8f5e09c02779a2a247318e994/1/2018 4:06:19 AM"'] + date: ['Tue, 31 Jul 2018 20:30:05 GMT'] + etag: ['W/"a9c9d34a8f5e09c02779a2a247318e997/31/2018 8:30:06 PM"'] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] - vary: [Accept-Encoding] + vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-powered-by: [ASP.NET] status: {code: 200, message: OK} @@ -110,109 +113,27 @@ interactions: Connection: [keep-alive] Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/SkypeChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote7ad13c6/providers/Microsoft.BotService/botServices/azurebotservicee7ad13c6/channels/SkypeChannel?api-version=2018-07-12 response: body: {string: ''} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] content-length: ['0'] - date: ['Sun, 01 Apr 2018 04:06:23 GMT'] + date: ['Tue, 31 Jul 2018 20:30:07 GMT'] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13/channels/SkypeChannel?api-version=2017-12-01 - response: - body: {string: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.BotService/botServices/testpythonbot13/channels/SkypeChannel'' - under resource group ''testpythonrg'' was not found."}}'} - headers: - cache-control: [no-cache] - content-length: ['186'] - content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 04:06:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-failure-cause: [gateway] - status: {code: 404, message: Not Found} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13?api-version=2017-12-01 - response: - body: {string: '{"error":{"code":"UnknownError","message":"message: Unable to - connect to the remote server original trace: at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.EndExecuteAsync[T](IAsyncResult - result) in c:\\Program Files (x86)\\Jenkins\\workspace\\release_dotnet_master\\Lib\\ClassLibraryCommon\\Core\\Executor\\Executor.cs:line - 50\r\n at Microsoft.WindowsAzure.Storage.Core.Util.AsyncExtensions.<>c__DisplayClass2`1.b__0(IAsyncResult - ar) in c:\\Program Files (x86)\\Jenkins\\workspace\\release_dotnet_master\\Lib\\ClassLibraryCommon\\Core\\Util\\AsyncExtensions.cs:line - 69\r\n--- End of stack trace from previous location where exception was thrown - ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at - System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task - task)\r\n at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()\r\n at - Intercom.Models.Storage.d__56.MoveNext() in E:\\_work\\3\\s\\Intercom.Models\\Storage\\BotLogOperators.cs:line - 42\r\n--- End of stack trace from previous location where exception was thrown - ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at - System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task - task)\r\n at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()\r\n at - Intercom.Models.Storage.d__59.MoveNext() in E:\\_work\\3\\s\\Intercom.Models\\Storage\\BotLogOperators.cs:line - 67\r\n--- End of stack trace from previous location where exception was thrown - ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at - System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task - task)\r\n at System.Runtime.CompilerServices.ConfiguredTaskAwaitable.ConfiguredTaskAwaiter.GetResult()\r\n at - DevPortalLib.Helpers.BotHelper.d__16.MoveNext() in E:\\_work\\3\\s\\DevPortalLib\\Helpers\\BotHelper.cs:line - 222\r\n--- End of stack trace from previous location where exception was thrown - ---\r\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at - System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task - task)\r\n at System.Runtime.CompilerServices.ConfiguredTaskAwaitable.ConfiguredTaskAwaiter.GetResult()\r\n at - Intercom.ResourceProvider.DataProviders.ResourceDataProvider.d__3.MoveNext() - in E:\\_work\\3\\s\\Intercom.ResourceProvider\\DataProviders\\ResourceDataProvider.cs:line - 203"}}'} - headers: - cache-control: [no-cache] - connection: [close] - content-length: ['2648'] - content-type: [application/json; charset=utf-8] - date: ['Sun, 01 Apr 2018 04:07:36 GMT'] - expires: ['-1'] - pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] - server: [Microsoft-IIS/10.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-failure-cause: [service] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - x-powered-by: [ASP.NET] - status: {code: 500, message: Internal Server Error} - request: body: null headers: @@ -221,24 +142,25 @@ interactions: Connection: [keep-alive] Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testpythonrg/providers/Microsoft.BotService/botServices/testpythonbot13?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbote7ad13c6/providers/Microsoft.BotService/botServices/azurebotservicee7ad13c6?api-version=2018-07-12 response: body: {string: ''} headers: + access-control-expose-headers: [Request-Context] cache-control: [no-cache] content-length: ['0'] - date: ['Sun, 01 Apr 2018 04:08:11 GMT'] + date: ['Tue, 31 Jul 2018 20:30:13 GMT'] expires: ['-1'] pragma: [no-cache] - request-context: ['appId=cid-v1:bb9497da-769a-4aa5-9960-4ba1cbfd7df7'] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] server: [Microsoft-IIS/10.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_sms_channel.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_sms_channel.yaml index ccf3e816a2e3..1ce032da0b92 100644 --- a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_sms_channel.yaml +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_sms_channel.yaml @@ -16,7 +16,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed","name":"azurebotservicec02c12ed","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-04-02T18%3A49%3A28.0293013Z''\"","location":"global","sku":{"name":""},"kind":"Bot","properties":{"displayName":"this is a test bot","description":"this is a description for a test bot","iconUrl":"//intercom-scratch.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"056d9ad9-17a9-4cc7-aebb-43bf6f293a08","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af511","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a11","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} @@ -50,7 +50,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel","name":"azurebotservicec02c12ed/SmsChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"e2377294dce6f2292077ed4a9d0518214/2/2018 6:49:32 PM\"","location":"global","properties":{"properties":{"phone":"+15153258725","accountSID":"AC421cab6999e0c8c0d1a90c6643db8f05","authToken":"507d2f4f9a832fdd042d05c500b3a88f","isValidated":true,"isEnabled":true},"etag":"W/\"e2377294dce6f2292077ed4a9d0518214/2/2018 @@ -81,7 +81,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel","name":"azurebotservicec02c12ed/SmsChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"c4d7157ef33c98d6ef63afaabc8b220a4/2/2018 6:49:33 PM\"","location":"global","properties":{"properties":{"phone":"+15153258725","accountSID":"AC421cab6999e0c8c0d1a90c6643db8f05","authToken":"507d2f4f9a832fdd042d05c500b3a88f","isValidated":true,"isEnabled":true},"etag":"W/\"c4d7157ef33c98d6ef63afaabc8b220a4/2/2018 @@ -114,7 +114,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel?api-version=2018-07-12 response: body: {string: ''} headers: @@ -141,7 +141,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel?api-version=2018-07-12 response: body: {string: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.BotService/botServices/azurebotservicec02c12ed/channels/SmsChannel'' under resource group ''pythonsdkbotc02c12ed'' was not found."}}'} @@ -168,7 +168,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbotc02c12ed/providers/Microsoft.BotService/botServices/azurebotservicec02c12ed?api-version=2018-07-12 response: body: {string: ''} headers: diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_telegram_channel.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_telegram_channel.yaml index 9c50fa04f545..1d112e7b7bd2 100644 --- a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_telegram_channel.yaml +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_channels.test_telegram_channel.yaml @@ -16,7 +16,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb","name":"azurebotservice247414eb","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-04-02T18%3A49%3A49.1365318Z''\"","location":"global","sku":{"name":""},"kind":"Bot","properties":{"displayName":"this is a test bot","description":"this is a description for a test bot","iconUrl":"//intercom-scratch.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"056d9ad9-17a9-4cc7-aebb-43bf6f293a08","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af511","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a11","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} @@ -49,7 +49,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel","name":"azurebotservice247414eb/TelegramChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"2f68e80acd919f46f3fa3489e9ee9d974/2/2018 6:50:01 PM\"","location":"global","properties":{"properties":{"accessToken":"520413022:AAF12lBf6s4tSqntaXEZnvrn6XOVrjQ6YN4","isValidated":true,"isEnabled":true},"etag":"W/\"2f68e80acd919f46f3fa3489e9ee9d974/2/2018 @@ -80,7 +80,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel","name":"azurebotservice247414eb/TelegramChannel","type":"Microsoft.BotService/botServices/channels","etag":"W/\"bf7d8f5819a02ef6633eaa8074317d124/2/2018 6:50:02 PM\"","location":"global","properties":{"properties":{"accessToken":"520413022:AAF12lBf6s4tSqntaXEZnvrn6XOVrjQ6YN4","isValidated":true,"isEnabled":true},"etag":"W/\"bf7d8f5819a02ef6633eaa8074317d124/2/2018 @@ -113,7 +113,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel?api-version=2018-07-12 response: body: {string: ''} headers: @@ -140,7 +140,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel?api-version=2018-07-12 response: body: {string: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.BotService/botServices/azurebotservice247414eb/channels/TelegramChannel'' under resource group ''pythonsdkbot247414eb'' was not found."}}'} @@ -167,7 +167,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pythonsdkbot247414eb/providers/Microsoft.BotService/botServices/azurebotservice247414eb?api-version=2018-07-12 response: body: {string: ''} headers: diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_connections.test_bot_connection_operations.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_connections.test_bot_connection_operations.yaml new file mode 100644 index 000000000000..d3e9c37da176 --- /dev/null +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_connections.test_bot_connection_operations.yaml @@ -0,0 +1,195 @@ +interactions: +- request: + body: '{"location": "global", "sku": {"name": "Free"}, "kind": "Bot", "properties": + {"displayName": "this is a test bot", "description": "this is a description + for a test bot", "endpoint": "https://bing.com/messages/", "msaAppId": "056d9ad9-17a9-4cc7-aebb-43bf6f293a08", + "developerAppInsightKey": "59513bad-10a7-4d41-b4d0-b1c34c6af512", "developerAppInsightsApiKey": + "w24iw5ocbhcig71su7ibaj63hey5ieaozeuwdv11", "developerAppInsightsApplicationId": + "cf03484e-3fdb-4b5e-9ad7-94bde32e5a11"}}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['481'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30?api-version=2018-07-12 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30","name":"azurebot45e81a30","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-07-30T22%3A59%3A55.0881078Z''\"","location":"global","sku":{"name":""},"kind":"Bot","tags":{},"properties":{"displayName":"this + is a test bot","description":"this is a description for a test bot","iconUrl":"//bot-framework.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"056d9ad9-17a9-4cc7-aebb-43bf6f293a08","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af512","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a11","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['942'] + content-type: [application/json; charset=utf-8] + date: ['Mon, 30 Jul 2018 22:59:54 GMT'] + etag: [W/"datetime'2018-07-30T22%3A59%3A55.0881078Z'"] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-powered-by: [ASP.NET] + status: {code: 201, message: Created} +- request: + body: '{"location": "global", "properties": {"clientId": "clientId", "clientSecret": + "clientSecret", "scopes": "read,write", "serviceProviderId": "00ea67de-bfc6-4f45-9ede-083899596b7b", + "parameters": [{"key": "key1", "value": "value1"}]}}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['231'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/Connections/myconnection45e81a30?api-version=2018-07-12 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/connections/myconnection45e81a30","name":"azurebot45e81a30/myconnection45e81a30","type":"Microsoft.BotService/botServices/connections","etag":"W/\"84ec112cb25f40b6dbc750b05a030e167/30/2018 + 11:00:18 PM\"","location":"global","properties":{"settingId":"b81b1e53-eafd-ba84-0dc0-fe4c07e72950_c1776b78-b6b0-4f60-07e3","clientId":"clientId","clientSecret":"clientSecret","scopes":"read,write","serviceProviderId":"00ea67de-bfc6-4f45-9ede-083899596b7b","serviceProviderDisplayName":null,"parameters":[{"key":"key1","value":"value1"}],"provisioningState":"Succeeded"}}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['714'] + content-type: [application/json; charset=utf-8] + date: ['Mon, 30 Jul 2018 23:00:18 GMT'] + etag: ['W/"84ec112cb25f40b6dbc750b05a030e167/30/2018 11:00:18 PM"'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-powered-by: [ASP.NET] + status: {code: 201, message: Created} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/Connections/myconnection45e81a30?api-version=2018-07-12 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/connections/myconnection45e81a30","name":"azurebot45e81a30/myconnection45e81a30","type":"Microsoft.BotService/botServices/connections","etag":"W/\"84ec112cb25f40b6dbc750b05a030e167/30/2018 + 11:00:24 PM\"","location":"global","properties":{"settingId":"b81b1e53-eafd-ba84-0dc0-fe4c07e72950_c1776b78-b6b0-4f60-07e3","clientId":"clientId","clientSecret":"clientSecret","scopes":"read,write","serviceProviderId":"00ea67de-bfc6-4f45-9ede-083899596b7b","serviceProviderDisplayName":null,"parameters":[{"key":"key1","value":"value1"}],"provisioningState":"Succeeded"}}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['714'] + content-type: [application/json; charset=utf-8] + date: ['Mon, 30 Jul 2018 23:00:24 GMT'] + etag: ['W/"84ec112cb25f40b6dbc750b05a030e167/30/2018 11:00:24 PM"'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: ['Accept-Encoding,Accept-Encoding'] + x-content-type-options: [nosniff] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/connections?api-version=2018-07-12 + response: + body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/connections/myconnection45e81a30","name":"azurebot45e81a30/myconnection45e81a30","type":"Microsoft.BotService/botServices/connections","etag":"W/\"4cdcedef2fd8a61ec29a17aa74d29be87/30/2018 + 11:00:32 PM\"","location":"global","properties":{"serviceProviderDisplayName":"Wunderlist","id":"b81b1e53-eafd-ba84-0dc0-fe4c07e72950_c1776b78-b6b0-4f60-07e3","name":"myconnection45e81a30","serviceProviderId":"00ea67de-bfc6-4f45-9ede-083899596b7b","provisioningState":"Succeeded"}}]}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['636'] + content-type: [application/json; charset=utf-8] + date: ['Mon, 30 Jul 2018 23:00:32 GMT'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: ['Accept-Encoding,Accept-Encoding'] + x-content-type-options: [nosniff] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/Connections/myconnection45e81a30?api-version=2018-07-12 + response: + body: {string: ''} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['0'] + date: ['Mon, 30 Jul 2018 23:00:35 GMT'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/Connections/myconnection45e81a30?api-version=2018-07-12 + response: + body: {string: '{"error":{"code":"ResourceNotFound","message":"The resource with + identifier ''/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_conn45e81a30/providers/Microsoft.BotService/botServices/azurebot45e81a30/connections/myconnection45e81a30'' + is not found."}}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['274'] + content-type: [application/json; charset=utf-8] + date: ['Mon, 30 Jul 2018 23:00:36 GMT'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-powered-by: [ASP.NET] + status: {code: 404, message: Not Found} +version: 1 diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_connections.test_bot_connection_serviceproviders.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_connections.test_bot_connection_serviceproviders.yaml new file mode 100644 index 000000000000..ef4d7dfbca02 --- /dev/null +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_connections.test_bot_connection_serviceproviders.yaml @@ -0,0 +1,307 @@ +interactions: +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.1 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-botservice/0.2.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.BotService/listAuthServiceProviders?api-version=2018-07-12 + response: + body: {string: '{"value":[{"properties":{"id":"00ea67de-bfc6-4f45-9ede-083899596b7b","displayName":"Wunderlist","serviceProviderName":"wunderlist","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"01340562-8c8f-4892-abd4-90daf0e5face","displayName":"Google","serviceProviderName":"google","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"05a2de0b-ca79-456d-835f-bebef60a18fd","displayName":"Pinterest","serviceProviderName":"pinterest","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"0ea750dc-3d8f-4093-874d-ab68298299d4","displayName":"appFigures","serviceProviderName":"appFigures","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Consumer + Key (API Key)","description":"The id used to identify this application with + the service provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Consumer + Secret (API Secret)","description":"The shared secret used to authenticate + this application with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"0f1a8ee8-cb00-4b10-97db-045c404a239f","displayName":"Facebook","serviceProviderName":"facebook","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"26311afb-ebf0-49fa-90a3-a0a0366923f7","displayName":"Skype + For Business","serviceProviderName":"SkypeForBusiness","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The client ID of the AAD application with permissions to + the Skype tenant.","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The client secret of the AAD application with permissions + to the Skype tenant.","helpUrl":null,"default":null},{"name":"TenantId","type":"string","displayName":"Tenant + ID","description":"The tenant ID of your Azure Active Directory application.","helpUrl":null,"default":"common"},{"name":"ResourceUri","type":"string","displayName":"Resource + URI","description":"The URI for the discovery endpoint. Need an AAD token + to access this endpoint.","helpUrl":"https://msdn.microsoft.com/en-us/skype/ucwa/authenticationusingazuread","default":"https://webdir.online.lync.com/"},{"name":"LoginUriAAD","type":"string","displayName":"Login + URI for AAD","description":"The URI for the AAD login endpoint.","helpUrl":null,"default":"https://login.microsoftonline.com"}]}},{"properties":{"id":"29d6ab23-bb51-4e91-a010-d38c1e30d1c4","displayName":"Outlook","serviceProviderName":"outlook","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"307d995f-f1ce-4918-bd3f-037685e9d241","displayName":"SharePoint + Online","serviceProviderName":"SharePointOnline","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"GrantType","type":"string","displayName":"Grant + Type","description":"Oauth2 grant type to use.","helpUrl":null,"default":"Code"},{"name":"LoginUri","type":"string","displayName":"Login + URL","description":"The Azure Active Directory login URL.","helpUrl":null,"default":"https://login.windows.net"},{"name":"DiscoveryUri","type":"string","displayName":"Discovery + URL","description":"The Sharepoint Online Azure Active Directory discovery + URL.","helpUrl":null,"default":"https://api.office.com/discovery/"},{"name":"TenantId","type":"string","displayName":"Tenant + ID","description":"The tenant ID of your Azure Active Directory application.","helpUrl":null,"default":"common"},{"name":"Capability","type":"string","displayName":"Capability","description":"Resource + for which AccessToken needs to be obtained.","helpUrl":"http://msdn.microsoft.com/en-us/office/office365/howto/discover-service-endpoints","default":"RootSite"},{"name":"ResourceUri","type":"string","displayName":"Resource + URL","description":"The resource to get authorization for.","helpUrl":null,"default":null}]}},{"properties":{"id":"30dd229c-58e3-4a48-bdfd-91ec48eb906c","displayName":"Azure + Active Directory v2","serviceProviderName":"Aadv2","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"TenantId","type":"string","displayName":"Tenant + ID","description":"The tenant ID of your Azure Active Directory application.","helpUrl":null,"default":"common"}]}},{"properties":{"id":"38b67016-73e2-4102-9fad-e348607cc800","displayName":"LinkedIn","serviceProviderName":"linkedin","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"407d4275-4e43-4fc9-b179-a1022492fa23","displayName":"Trello","serviceProviderName":"trello","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Consumer + Key (API Key)","description":"The id used to identify this application with + the service provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Consumer + Secret (API Secret)","description":"The shared secret used to authenticate + this application with the service provider","helpUrl":null,"default":null},{"name":"ApplicationDisplayName","type":"string","displayName":"Application + Display Name","description":"The name of the application showed during authorization","helpUrl":null,"default":"Unnamed + Application"}]}},{"properties":{"id":"42525a7c-c853-4d4e-9032-deaa67f3de8e","displayName":"Sharepoint + Server","serviceProviderName":"SharepointServer","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"LoginUri","type":"string","displayName":"Login + URL","description":"The Azure Active Directory login URL.","helpUrl":null,"default":"https://login.windows.net"},{"name":"ResourceUri","type":"string","displayName":"ResourceUri","description":"The + resource URI for AAD.","helpUrl":null,"default":null},{"name":"TenantId","type":"string","displayName":"TenantId","description":"The + AAD tenant ID for this application.","helpUrl":null,"default":null}]}},{"properties":{"id":"48588eaf-3c7A-46db-88B9-0ea77d6C451a","displayName":"Workday","serviceProviderName":"workday","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"LoginUri","type":"string","displayName":"Login + URL","description":"The Workday login URL.","helpUrl":null,"default":null},{"name":"TokenUri","type":"string","displayName":"Token + URL","description":"The Workday token URL.","helpUrl":null,"default":null},{"name":"InstanceName","type":"string","displayName":"Instance + Name","description":"The Workday instance name specific for your tenant.","helpUrl":null,"default":null}]}},{"properties":{"id":"4b5c96f6-cca7-4048-bfd2-53e850a183f1","displayName":"Generic + Oauth 2","serviceProviderName":"oauth2","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"AuthorizationUrl","type":"string","displayName":"Authorization + URL","description":"The authorization endpoint URL","helpUrl":null,"default":null},{"name":"TokenUrl","type":"string","displayName":"Token + URL","description":"The token endpoint URL","helpUrl":null,"default":null},{"name":"RefreshUrl","type":"string","displayName":"Refresh + URL","description":"The token refresh endpoint URL","helpUrl":null,"default":null}]}},{"properties":{"id":"4b7816ab-ea29-487a-96a5-1918b5661d8e","displayName":"Slack","serviceProviderName":"slack","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"4f349199-7980-48f0-9b1b-282347f5de2a","displayName":"Zendesk","serviceProviderName":"zendesk","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"SubDomain","type":"string","displayName":"Subdomain","description":"The + subdomain name used to identify the Zendesk Site URL","helpUrl":null,"default":null},{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Consumer + Secret (API Secret)","description":"The shared secret used to authenticate + this application with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"51dd6264-6d45-4e46-b720-5ff7e8c28873","displayName":"Dynamics + CRM Online","serviceProviderName":"DynamicsCrmOnline","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"GrantType","type":"string","displayName":"Grant + Type","description":"Oauth2 grant type to use.","helpUrl":null,"default":"Code"},{"name":"LoginUri","type":"string","displayName":"Login + URL","description":"The Azure Active Directory login URL.","helpUrl":null,"default":"https://login.windows.net"},{"name":"TenantId","type":"string","displayName":"Tenant + ID","description":"The tenant ID of your Azure Active Directory application.","helpUrl":null,"default":"common"},{"name":"ResourceUriAAD","type":"string","displayName":"Resource + URL","description":"The Azure Active Directory discovery URL.","helpUrl":null,"default":"https://api.office.com/discovery/"},{"name":"DiscoveryUri","type":"string","displayName":"Full + Discovery URL","description":"TEST ONLY discovery URL. This isn''t needed + for this setting to function.","helpUrl":null,"default":"about:blank"},{"name":"ResourceUri","type":"string","displayName":"Resource + URL","description":"The resource to get authorization for.","helpUrl":null,"default":null}]}},{"properties":{"id":"5232e24f-b6c6-4920-b09d-d93a520c92e9","displayName":"Azure + Active Directory","serviceProviderName":"Aad","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"GrantType","type":"string","displayName":"Grant + Type","description":"Oauth2 grant type to use.","helpUrl":null,"default":"Code"},{"name":"LoginUri","type":"string","displayName":"Login + URL","description":"The Azure Active Directory login URL.","helpUrl":null,"default":"https://login.windows.net"},{"name":"TenantId","type":"string","displayName":"Tenant + ID","description":"The tenant ID of your Azure Active Directory application.","helpUrl":null,"default":"common"},{"name":"ResourceUri","type":"string","displayName":"Resource + URL","description":"The resource to get authorization for.","helpUrl":null,"default":null}]}},{"properties":{"id":"549dcd43-e619-4a19-8bb1-83524a472646","displayName":"Smartsheet","serviceProviderName":"smartsheet","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"58189554-6279-4b11-97c8-e3d8245da5ef","displayName":"Flickr","serviceProviderName":"flickr","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"596e594f-7212-43a8-8e14-4e5a1fb086cb","displayName":"Visual + Studio Online","serviceProviderName":"visualstudio","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"6587ef92-9050-4699-832a-a263aed32448","displayName":"Office + 365 (Discovery)","serviceProviderName":"Office365","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"GrantType","type":"string","displayName":"Grant + Type","description":"Oauth2 grant type to use.","helpUrl":null,"default":"Code"},{"name":"LoginUri","type":"string","displayName":"Login + URL","description":"The Azure Active Directory login URL.","helpUrl":null,"default":"https://login.windows.net"},{"name":"DiscoveryUri","type":"string","displayName":"Discovery + URL","description":"The Office365 Azure Active Directory discovery URL.","helpUrl":null,"default":"https://api.office.com/discovery/"},{"name":"TenantId","type":"string","displayName":"Tenant + ID","description":"The tenant of your Azure Active Directory application.","helpUrl":null,"default":"common"},{"name":"Capability","type":"string","displayName":"Capability","description":"Resource + for which AccessToken needs to be obtained.","helpUrl":"http://msdn.microsoft.com/en-us/office/office365/howto/discover-service-endpoints","default":"Contacts"},{"name":"ResourceUri","type":"string","displayName":"Resource + URL","description":"The resource to get authorization for.","helpUrl":null,"default":null}]}},{"properties":{"id":"65d314ec-3b66-4021-b2c9-6d8c2f7148ff","displayName":"OneDrive","serviceProviderName":"onedrive","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"68d0136a-6396-41d8-9dbf-1b2843ed1ff7","displayName":"Basecamp","serviceProviderName":"basecamp","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"6b6010fd-266b-492a-b150-c87b9bad7339","displayName":"Instagram","serviceProviderName":"instagram","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"6b9e493f-950f-4451-85d6-0fc7c0f2c9b1","displayName":"MailChimp","serviceProviderName":"mailchimp","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"719a075e-37f9-4c6b-9633-e6167c12536e","displayName":"Office + 365","serviceProviderName":"Office365User","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The Active Active Directory client ID","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The Azure Active Directory secret","helpUrl":null,"default":null},{"name":"LoginUri","type":"string","displayName":"Login + URL","description":"The Azure Active Directory login URL.","helpUrl":null,"default":"https://login.windows.net"},{"name":"TenantId","type":"string","displayName":"Tenant + ID","description":"The tenant ID of your Azure Active Directory application.","helpUrl":null,"default":"common"},{"name":"ResourceUri","type":"string","displayName":"Resource + URL","description":"The Azure Active Directory resource URL.","helpUrl":null,"default":"https://graph.microsoft.com"}]}},{"properties":{"id":"7be3563f-3072-4846-ad8f-09e5fa685c65","displayName":"Adobe + EchoSign","serviceProviderName":"echosign","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"7dda6125-c4c2-4591-96c9-cf7ab657dcf6","displayName":"Live","serviceProviderName":"live","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"8379c6d2-b262-4d4f-b89b-68dc5b5f5482","displayName":"Oauth + 2 Generic Provider","serviceProviderName":"oauth2generic","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"ScopeListDelimiter","type":"string","displayName":"Scope + List Delimiter","description":"Character to delimit the scope list","helpUrl":null,"default":" + "},{"name":"AuthorizationUrlTemplate","type":"string","displayName":"Authorization + URL Template","description":"The authorization endpoint URL. Example: https://login.acme.com/oauth2/authorize","helpUrl":null,"default":null},{"name":"AuthorizationUrlQueryStringTemplate","type":"string","displayName":"Authorization + URL Query String Template","description":"The authorization endpoint URL query + string. Example: ?client_id={ClientId}&response_type=code&redirect_uri={RedirectUrl}&scope={Scopes}&state={State}","helpUrl":null,"default":"?client_id={ClientId}&response_type=code&redirect_uri={RedirectUrl}&scope={Scopes}&state={State}"},{"name":"TokenUrlTemplate","type":"string","displayName":"Token + URL Template","description":"The token conversion endpoint URL. Example value + would be https://api.acme.com/oauth2/token","helpUrl":null,"default":null},{"name":"TokenUrlQueryStringTemplate","type":"string","displayName":"Token + URL Query String Template","description":"The token conversion endpoint URL + query string. Example: ?client_secret={ClientSecret}","helpUrl":null,"default":""},{"name":"TokenBodyTemplate","type":"string","displayName":"Token + Body Template","description":"The token conversion body.","helpUrl":null,"default":"code={Code}&grant_type=authorization_code&redirect_uri={RedirectUrl}&client_id={ClientId}&client_secret={ClientSecret}"},{"name":"RefreshUrlTemplate","type":"string","displayName":"Refresh + URL Template","description":"The token refresh endpoint URL. Example value + would be https://api.acme.com/oauth2/token","helpUrl":null,"default":null},{"name":"RefreshUrlQueryStringTemplate","type":"string","displayName":"Refresh + URL Query String Template","description":"The token refresh endpoint URL query + string. Example: ?client_secret={ClientSecret}","helpUrl":null,"default":""},{"name":"RefreshBodyTemplate","type":"string","displayName":"Refresh + Body Template","description":"The token refresh body","helpUrl":null,"default":"refresh_token={RefreshToken}&grant_type=refresh_token&client_id={ClientId}&client_secret={ClientSecret}"}]}},{"properties":{"id":"900b8f4a-9cb3-420d-85df-ba9f8f285c20","displayName":"Spotify","serviceProviderName":"spotify","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"979935d1-226c-4ed0-95c6-f13c0ac7e1c4","displayName":"Tumblr","serviceProviderName":"tumblr","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"99b51571-bd21-4124-abf2-1ef32c90cb07","displayName":"AWeber","serviceProviderName":"AWeber","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Consumer + Key (API Key)","description":"The id used to identify this application with + the service provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Consumer + Secret (API Secret)","description":"The shared secret used to authenticate + this application with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"a5e55046-6a2e-446e-8d5e-4b61cca91968","displayName":"Marketo","serviceProviderName":"marketo","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"BaseUrl","type":"string","displayName":"BaseUrl","description":"Marketo + Instance BaseUrl","helpUrl":null,"default":null}]}},{"properties":{"id":"b7e2a8c4-ce26-4a94-aeeb-f203ed505fa4","displayName":"DropBox","serviceProviderName":"dropbox","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"b8491b1f-e709-4c3d-8339-5ba2182b46ee","displayName":"Box","serviceProviderName":"box","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"bb097393-2a3c-4048-b3c6-1ce9fa90a537","displayName":"Yammer","serviceProviderName":"yammer","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"bb1dc32d-85e0-4607-a511-bc77ddd414b7","displayName":"Quickbooks","serviceProviderName":"intuit","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"bcdbb5a4-d571-473b-9821-0e969a044f7d","displayName":"UserVoice","serviceProviderName":"uservoice","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"SubDomain","type":"string","displayName":"UserVoice + site Subdomain name","description":"The subdomain name used to identify the + UserVoice Site URL","helpUrl":null,"default":null},{"name":"ClientId","type":"string","displayName":"Consumer + Key (API Key)","description":"The id used to identify this application with + the service provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Consumer + Secret (API Secret)","description":"The shared secret used to authenticate + this application with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"bf58b8fb-74ea-4a84-8e68-03573ac9be2a","displayName":"Salesforce","serviceProviderName":"salesforce","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"LoginUri","type":"string","displayName":"Login + URL to be used","description":null,"helpUrl":null,"default":"https://login.salesforce.com"}]}},{"properties":{"id":"c676c4c4-e36b-46b2-9ff0-027a50c4e53f","displayName":"Todoist","serviceProviderName":"todoist","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"cb4103d0-e5e7-4c7A-9712-eea4edf5b5be","displayName":"Fitbit","serviceProviderName":"fitbit","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"d05eaacf-1593-4603-9c6c-d4d8fffa46cb","displayName":"GitHub","serviceProviderName":"github","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"e39b675b-2e60-4c7c-80da-ed69d6fe2dbc","displayName":"DocuSign","serviceProviderName":"docusign","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"LoginUri","type":"string","displayName":"Login + URL to be used","description":null,"helpUrl":null,"default":"https://account.docusign.com"}]}},{"properties":{"id":"e3b751a6-87f2-42df-8ccb-7bfad739c68e","displayName":"Stripe","serviceProviderName":"stripe","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"ef5d1787-3321-4a0a-b3d2-cdfe73a2f81d","displayName":"Bitly","serviceProviderName":"bitly","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"f2c897ca-64ed-4e5a-9985-00b6e29eb0ef","displayName":"Lithium","serviceProviderName":"lithium","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"LoginUrl","type":"string","displayName":"Community + URL to use","description":null,"helpUrl":null,"default":"https://lithium.com"},{"name":"ApiUrl","type":"string","displayName":"API + URL to use","description":null,"helpUrl":null,"default":"https://api.lithium.com"}]}},{"properties":{"id":"f339f995-4ac5-4ca1-b363-8492dba8be56","displayName":"Twitter","serviceProviderName":"twitter","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Consumer + Key (API Key)","description":"The id used to identify this application with + the service provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Consumer + Secret (API Secret)","description":"The shared secret used to authenticate + this application with the service provider","helpUrl":null,"default":null}]}},{"properties":{"id":"fe787ac8-1611-4192-9d8c-4b2c6bb8a533","displayName":"SugarCRM","serviceProviderName":"sugarcrm","devPortalUrl":null,"iconUrl":null,"parameters":[{"name":"ClientId","type":"string","displayName":"Client + id","description":"The id used to identify this application with the service + provider","helpUrl":null,"default":null},{"name":"ClientSecret","type":"securestring","displayName":"Client + secret","description":"The shared secret used to authenticate this application + with the service provider","helpUrl":null,"default":null},{"name":"InstanceName","type":"string","displayName":"InstanceName","description":"Sugar + CRM Site InstanceName","helpUrl":null,"default":null}]}}]}'} + headers: + access-control-expose-headers: [Request-Context] + cache-control: [no-cache] + content-length: ['37146'] + content-type: [application/json; charset=utf-8] + date: ['Mon, 30 Jul 2018 22:59:45 GMT'] + expires: ['-1'] + pragma: [no-cache] + request-context: ['appId=cid-v1:073a6f92-8483-496a-9629-2ea276066cce'] + server: [Microsoft-IIS/10.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: ['Accept-Encoding,Accept-Encoding'] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-powered-by: [ASP.NET] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_crud.test_bot_operations.yaml b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_crud.test_bot_operations.yaml index c12e4fac4179..584358f442e4 100644 --- a/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_crud.test_bot_operations.yaml +++ b/azure-mgmt-botservice/tests/recordings/test_mgmt_botservice_crud.test_bot_operations.yaml @@ -16,7 +16,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac","name":"azurebotserviceadda12ac","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-04-02T21%3A45%3A10.3812781Z''\"","location":"global","sku":{"name":"F0"},"kind":"Bot","properties":{"displayName":"this is a test bot","description":"this is a description for a test bot","iconUrl":"//intercom-scratch.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"41a220b9-6571-4f0b-bbd2-43f1c1d82f51","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af52a","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a2b","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} @@ -46,7 +46,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac","name":"azurebotserviceadda12ac","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-04-02T21%3A45%3A10.3812781Z''\"","location":"global","sku":{"name":"F0"},"kind":"Bot","properties":{"displayName":"this is a test bot","description":"this is a description for a test bot","iconUrl":"//intercom-scratch.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"41a220b9-6571-4f0b-bbd2-43f1c1d82f51","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af52a","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a2b","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} @@ -82,7 +82,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2018-07-12 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac","name":"azurebotserviceadda12ac","type":"Microsoft.BotService/botServices","etag":"W/\"datetime''2018-04-02T21%3A45%3A15.0887934Z''\"","location":"global","sku":{"name":"F0"},"kind":"Bot","properties":{"displayName":"this is a test bot","description":"this is another description","iconUrl":"//intercom-scratch.azureedge.net/bot-icons-v1/bot-framework-default.png","endpoint":"https://bing.com/messages/","msaAppId":"41a220b9-6571-4f0b-bbd2-43f1c1d82f51","developerAppInsightKey":"59513bad-10a7-4d41-b4d0-b1c34c6af52a","developerAppInsightsApplicationId":"cf03484e-3fdb-4b5e-9ad7-94bde32e5a2b","luisAppIds":[],"endpointVersion":"3.0","configuredChannels":["webchat"],"enabledChannels":["webchat","directline"],"isDeveloperAppInsightsApiKeySet":true,"provisioningState":"Succeeded"}}'} @@ -115,7 +115,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2018-07-12 response: body: {string: ''} headers: @@ -142,7 +142,7 @@ interactions: msrest_azure/0.4.21 azure-mgmt-botservice/0.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/python_test_botadda12ac/providers/Microsoft.BotService/botServices/azurebotserviceadda12ac?api-version=2018-07-12 response: body: {string: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.BotService/botServices/azurebotserviceadda12ac'' under resource group ''python_test_botadda12ac'' was not found."}}'} diff --git a/azure-mgmt-botservice/tests/test_mgmt_botservice_channels.py b/azure-mgmt-botservice/tests/test_mgmt_botservice_channels.py index cb5aded2d875..c315282be82f 100644 --- a/azure-mgmt-botservice/tests/test_mgmt_botservice_channels.py +++ b/azure-mgmt-botservice/tests/test_mgmt_botservice_channels.py @@ -25,13 +25,13 @@ def createBot(self): msa_app_id = "056d9ad9-17a9-4cc7-aebb-43bf6f293a08" developer_app_insight_key = '59513bad-10a7-4d41-b4d0-b1c34c6af511' developer_app_insights_api_key = 'w24iw5ocbhcig71su7ibaj63hey5ieaozeuwdv11' - developer_app_insights_application_id = 'cf03484e-3fdb-4b5e-9ad7-94bde32e5a11' + developer_app_insights_application_id = 'cf03484e-3fdb-4b5e-9ad7-94bde32e5a19' bot = self.client.bots.create( resource_group_name = self.resource_group_name, resource_name = self.resource_name, parameters = Bot( location= location, - sku = sku.Sku(sku_name), + sku = sku.Sku(name=sku_name), kind= kind, properties= BotProperties( display_name = display_name, @@ -52,7 +52,7 @@ def tearDown(self): resource_name = self.resource_name ) - def validateCreateGetAndDeleteChannel(self, channel_name, channel_properties): + def validateCreateGetAndDeleteChannel(self, channel_name, channel_properties, run_exist_check=True, validate=None): self.createBot() botChannel = BotChannel( @@ -80,17 +80,25 @@ def validateCreateGetAndDeleteChannel(self, channel_name, channel_properties): else: self.assertTrue(channel.properties.properties.is_enabled) + if validate: + validate( + resource_group_name=self.resource_group_name, + resource_name=self.resource_name, + assertIsNotNone=self.assertIsNotNone + ) + channel = self.client.channels.delete( resource_group_name = self.resource_group_name, resource_name = self.resource_name, channel_name = channel_name ) - with self.assertRaises(ErrorException): - channel = self.client.channels.get( - resource_group_name = self.resource_group_name, - resource_name = self.resource_name, - channel_name = channel_name - ) + if run_exist_check: + with self.assertRaises(ErrorException): + channel = self.client.channels.get( + resource_group_name = self.resource_group_name, + resource_name = self.resource_name, + channel_name = channel_name + ) @ResourceGroupPreparer(name_prefix='pythonsdkbot') def test_email_channel(self, resource_group): @@ -109,37 +117,6 @@ def test_email_channel(self, resource_group): channel_properties = channel ) - # @ResourceGroupPreparer(name_prefix='pythonsdkbot') - # def test_msteams_channel(self, resource_group): - # from azure.mgmt.botservice.models import MsTeamsChannel,MsTeamsChannelProperties - # self.resource_group_name = resource_group.name - # channel = MsTeamsChannel( - # properties = MsTeamsChannelProperties( - # is_enabled = True, - # enable_messaging = True, - # ) - # ) - - # self.validateCreateGetAndDeleteChannel( - # channel_name = 'MsTeamsChannel', - # channel_properties = channel - # ) - - # @ResourceGroupPreparer(name_prefix='pythonsdkbot') - # def test_skype_channel(self, resource_group): - # from azure.mgmt.botservice.models import SkypeChannel,SkypeChannelProperties - # self.resource_group_name = resource_group.name - # channel = SkypeChannel( - # properties = SkypeChannelProperties( - # is_enabled = True, - # enable_messaging = True, - # ) - # ) - - # self.validateCreateGetAndDeleteChannel( - # channel_name = 'SkypeChannel', - # channel_properties = channel - # ) @ResourceGroupPreparer(name_prefix='pythonsdkbot') def test_telegram_channel(self, resource_group): @@ -175,3 +152,68 @@ def test_sms_channel(self, resource_group): channel_name = 'SmsChannel', channel_properties = channel ) + + @ResourceGroupPreparer(name_prefix='pythonsdkbot') + def test_msteams_channel(self, resource_group): + from azure.mgmt.botservice.models import MsTeamsChannel,MsTeamsChannelProperties + self.resource_group_name = resource_group.name + channel = MsTeamsChannel( + properties = MsTeamsChannelProperties( + is_enabled = True, + ) + ) + + self.validateCreateGetAndDeleteChannel( + channel_name = 'MsTeamsChannel', + channel_properties = channel, + run_exist_check=False + ) + + @ResourceGroupPreparer(name_prefix='pythonsdkbot') + def test_skype_channel(self, resource_group): + from azure.mgmt.botservice.models import SkypeChannel,SkypeChannelProperties + self.resource_group_name = resource_group.name + channel = SkypeChannel( + properties = SkypeChannelProperties( + is_enabled = True, + enable_messaging = True, + ) + ) + + self.validateCreateGetAndDeleteChannel( + channel_name = 'SkypeChannel', + channel_properties = channel, + run_exist_check=False + ) + + + @ResourceGroupPreparer(name_prefix='pythonsdkbot') + def test_directline_channel(self, resource_group): + # also test secrets api + def validate_directline(resource_group_name, resource_name, assertIsNotNone): + settings = self.client.channels.list_with_keys( + resource_group_name=resource_group_name, + resource_name=resource_name, + channel_name='DirectLineChannel', + ) + assertIsNotNone(settings) + assertIsNotNone(settings.properties.properties.sites[0].key) + + + from azure.mgmt.botservice.models import DirectLineChannel,DirectLineChannelProperties,DirectLineSite + self.resource_group_name = resource_group.name + channel = DirectLineChannel( + properties=DirectLineChannelProperties( + sites=[DirectLineSite( + site_name='default', + is_enabled=True, + is_v1_enabled=False, + is_v3_enabled=True)] + ) + ) + + self.validateCreateGetAndDeleteChannel( + channel_name = 'DirectLineChannel', + channel_properties = channel, + validate=validate_directline + ) \ No newline at end of file diff --git a/azure-mgmt-botservice/tests/test_mgmt_botservice_connections.py b/azure-mgmt-botservice/tests/test_mgmt_botservice_connections.py new file mode 100644 index 000000000000..ba656b59ade3 --- /dev/null +++ b/azure-mgmt-botservice/tests/test_mgmt_botservice_connections.py @@ -0,0 +1,108 @@ +from devtools_testutils import AzureMgmtTestCase, ResourceGroupPreparer +from azure.mgmt.botservice import AzureBotService +from azure.mgmt.botservice.models import ( + Bot, + BotProperties, + ErrorException, + sku +) + +class BotServiceConnectionsTestCase(AzureMgmtTestCase): + def setUp(self): + super(BotServiceConnectionsTestCase, self).setUp() + #create a bot here + self.client = self.create_mgmt_client(AzureBotService) + self.resource_name = self.get_resource_name('azurebot') + + def createBot(self): + location = 'global' + sku_name = 'Free' + kind= 'Bot' + display_name = "this is a test bot" + description= "this is a description for a test bot" + endpoint = "https://bing.com/messages/" + msa_app_id = "056d9ad9-17a9-4cc7-aebb-43bf6f293a08" + developer_app_insight_key = '59513bad-10a7-4d41-b4d0-b1c34c6af512' + developer_app_insights_api_key = 'w24iw5ocbhcig71su7ibaj63hey5ieaozeuwdv11' + developer_app_insights_application_id = 'cf03484e-3fdb-4b5e-9ad7-94bde32e5a11' + bot = self.client.bots.create( + resource_group_name = self.resource_group_name, + resource_name = self.resource_name, + parameters = Bot( + location= location, + sku = sku.Sku(name=sku_name), + kind= kind, + properties= BotProperties( + display_name = display_name, + description= description, + endpoint = endpoint, + msa_app_id = msa_app_id, + developer_app_insight_key = developer_app_insight_key, + developer_app_insights_api_key = developer_app_insights_api_key, + developer_app_insights_application_id = developer_app_insights_application_id, + ) + ) + ) + + def tearDown(self): + super(BotServiceConnectionsTestCase, self).tearDown() + + + @ResourceGroupPreparer(name_prefix='python_conn') + def test_bot_connection_operations(self, resource_group): + self.resource_group_name = resource_group.name + self.createBot() + from azure.mgmt.botservice.models import ConnectionSetting, ConnectionSettingProperties, ConnectionSettingParameter + connection_resource_name = self.get_resource_name('myconnection') + # create a connection + setting_payload = ConnectionSetting( + location='global', + properties=ConnectionSettingProperties( + client_id='clientId', + client_secret='clientSecret', + scopes='read,write', + service_provider_id='00ea67de-bfc6-4f45-9ede-083899596b7b', + parameters=[ConnectionSettingParameter(key='key1', value='value1')] + ) + ) + setting = self.client.bot_connection.create( + resource_group_name=resource_group.name, + resource_name=self.resource_name, + connection_name=connection_resource_name, + parameters=setting_payload + ) + self.assertIsNotNone(setting) + self.assertEqual(setting.properties.client_id, 'clientId') + + # get a connection + setting = self.client.bot_connection.get( + resource_group_name=resource_group.name, + resource_name=self.resource_name, + connection_name=connection_resource_name + ) + self.assertIsNotNone(setting) + #list all connections + settings = self.client.bot_connection.list_by_bot_service( + resource_group_name = resource_group.name, + resource_name=self.resource_name + ) + self.assertIsNotNone(setting) + self.assertTrue(len(list(settings)) == 1) + + # delete a connection + setting = self.client.bot_connection.delete( + resource_group_name=resource_group.name, + resource_name=self.resource_name, + connection_name=connection_resource_name + ) + with self.assertRaises(ErrorException): + setting = self.client.bot_connection.get( + resource_group_name=resource_group.name, + resource_name=self.resource_name, + connection_name=connection_resource_name + ) + + + def test_bot_connection_serviceproviders(self): + service_provider_responses = self.client.bot_connection.list_service_providers() + self.assertTrue(len(service_provider_responses.value) > 0) \ No newline at end of file diff --git a/azure-mgmt-botservice/tests/test_mgmt_botservice_crud.py b/azure-mgmt-botservice/tests/test_mgmt_botservice_crud.py index 4d5f979012be..7342439da6f7 100644 --- a/azure-mgmt-botservice/tests/test_mgmt_botservice_crud.py +++ b/azure-mgmt-botservice/tests/test_mgmt_botservice_crud.py @@ -45,7 +45,7 @@ def test_bot_operations(self, resource_group): resource_name = self.resource_name, parameters = Bot( location= self.location, - sku = sku.Sku(self.sku_name), + sku = sku.Sku(name=self.sku_name), kind= self.kind, properties= BotProperties( display_name = self.display_name, @@ -84,4 +84,4 @@ def test_bot_operations(self, resource_group): bot = self.client.bots.get( resource_group_name = self.resource_group_name, resource_name = self.resource_name - ) + ) \ No newline at end of file diff --git a/azure-mgmt-cdn/MANIFEST.in b/azure-mgmt-cdn/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-cdn/MANIFEST.in +++ b/azure-mgmt-cdn/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-cdn/README.rst b/azure-mgmt-cdn/README.rst index 3943e79785f4..a5684161b0d1 100644 --- a/azure-mgmt-cdn/README.rst +++ b/azure-mgmt-cdn/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure CDN Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-cdn/azure/__init__.py b/azure-mgmt-cdn/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-cdn/azure/__init__.py +++ b/azure-mgmt-cdn/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-cdn/azure/mgmt/__init__.py b/azure-mgmt-cdn/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-cdn/azure/mgmt/__init__.py +++ b/azure-mgmt-cdn/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-cdn/azure_bdist_wheel.py b/azure-mgmt-cdn/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-cdn/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-cdn/setup.cfg b/azure-mgmt-cdn/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-cdn/setup.cfg +++ b/azure-mgmt-cdn/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-cdn/setup.py b/azure-mgmt-cdn/setup.py index e2b7e3b2b712..c8d3a63ebfee 100644 --- a/azure-mgmt-cdn/setup.py +++ b/azure-mgmt-cdn/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-cdn" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-cognitiveservices/MANIFEST.in b/azure-mgmt-cognitiveservices/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-cognitiveservices/MANIFEST.in +++ b/azure-mgmt-cognitiveservices/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-cognitiveservices/README.rst b/azure-mgmt-cognitiveservices/README.rst index 0ea301b72b84..70de0c6a776f 100644 --- a/azure-mgmt-cognitiveservices/README.rst +++ b/azure-mgmt-cognitiveservices/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Cognitive Services Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-cognitiveservices/azure/__init__.py b/azure-mgmt-cognitiveservices/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-cognitiveservices/azure/__init__.py +++ b/azure-mgmt-cognitiveservices/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-cognitiveservices/azure/mgmt/__init__.py b/azure-mgmt-cognitiveservices/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-cognitiveservices/azure/mgmt/__init__.py +++ b/azure-mgmt-cognitiveservices/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-cognitiveservices/azure_bdist_wheel.py b/azure-mgmt-cognitiveservices/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-cognitiveservices/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-cognitiveservices/sdk_packaging.toml b/azure-mgmt-cognitiveservices/sdk_packaging.toml new file mode 100644 index 000000000000..e859b4f24624 --- /dev/null +++ b/azure-mgmt-cognitiveservices/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-cognitiveservices" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Cognitive Services Management" +package_doc_id = "cognitive-services" +is_stable = true +is_arm = true diff --git a/azure-mgmt-cognitiveservices/setup.cfg b/azure-mgmt-cognitiveservices/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-cognitiveservices/setup.cfg +++ b/azure-mgmt-cognitiveservices/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-cognitiveservices/setup.py b/azure-mgmt-cognitiveservices/setup.py index f6e9b649508b..ff87dc89f78c 100644 --- a/azure-mgmt-cognitiveservices/setup.py +++ b/azure-mgmt-cognitiveservices/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-cognitiveservices" @@ -64,7 +58,7 @@ author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ - 'Development Status :: 4 - Beta', + 'Development Status :: 5 - Production/Stable', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-commerce/MANIFEST.in b/azure-mgmt-commerce/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-commerce/MANIFEST.in +++ b/azure-mgmt-commerce/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-commerce/README.rst b/azure-mgmt-commerce/README.rst index e33143e5977a..5a3024744fe4 100644 --- a/azure-mgmt-commerce/README.rst +++ b/azure-mgmt-commerce/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Commerce Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-commerce/azure/__init__.py b/azure-mgmt-commerce/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-commerce/azure/__init__.py +++ b/azure-mgmt-commerce/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-commerce/azure/mgmt/__init__.py b/azure-mgmt-commerce/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-commerce/azure/mgmt/__init__.py +++ b/azure-mgmt-commerce/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-commerce/azure_bdist_wheel.py b/azure-mgmt-commerce/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-commerce/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-commerce/sdk_packaging.toml b/azure-mgmt-commerce/sdk_packaging.toml new file mode 100644 index 000000000000..30fa31f5124e --- /dev/null +++ b/azure-mgmt-commerce/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-commerce" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Commerce" +package_doc_id = "commerce" +is_stable = false +is_arm = true diff --git a/azure-mgmt-commerce/setup.cfg b/azure-mgmt-commerce/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-commerce/setup.cfg +++ b/azure-mgmt-commerce/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-commerce/setup.py b/azure-mgmt-commerce/setup.py index 21a666668786..c6a09509f430 100644 --- a/azure-mgmt-commerce/setup.py +++ b/azure-mgmt-commerce/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-commerce" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-compute/HISTORY.rst b/azure-mgmt-compute/HISTORY.rst index fc0f182a6ecb..863bf8897154 100644 --- a/azure-mgmt-compute/HISTORY.rst +++ b/azure-mgmt-compute/HISTORY.rst @@ -3,6 +3,57 @@ Release History =============== +4.3.1 (2018-10-15) +++++++++++++++++++ + +**Bugfix** + +- Fix sdist broken in 4.3.0. No code change. + +4.3.0 (2018-10-02) +++++++++++++++++++ + +**Note** + +- Compute API version default is now 2018-10-01 + +**Features/BreakingChanges** + +- This version updates the access to properties realted to automatic OS upgrade introduced in 4.0.0 + +4.2.0 (2018-09-25) +++++++++++++++++++ + +**Features** + +- Model OSDisk has a new parameter diff_disk_settings +- Model BootDiagnosticsInstanceView has a new parameter status +- Model VirtualMachineScaleSetOSDisk has a new parameter diff_disk_settings +- Added operation VirtualMachinesOperations.list_by_location + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + +4.1.0 (2018-09-12) +++++++++++++++++++ + +2018-06-01 for 'disks' and 'snapshots' (new default) + +**Features** + +- Model DiskUpdate has a new parameter disk_iops_read_write +- Model DiskUpdate has a new parameter disk_mbps_read_write +- Model VirtualMachineUpdate has a new parameter additional_capabilities (ultraSSDEnabled attribute) +- Model VirtualMachineScaleSetVM has a new parameter additional_capabilities (ultraSSDEnabled attribute) +- Model VirtualMachineScaleSetPublicIPAddressConfiguration has a new parameter public_ip_prefix +- Model Disk has a new parameter disk_iops_read_write +- Model Disk has a new parameter disk_mbps_read_write +- Model VirtualMachineScaleSetVMProfile has a new parameter additional_capabilities (ultraSSDEnabled attribute) +- Model VirtualMachine has a new parameter additional_capabilities (ultraSSDEnabled attribute) +- Added operation VirtualMachineScaleSetRollingUpgradesOperations.start_extension_upgrade +- New enum value UltraSSD_LRS for StorageAccountTypes + 4.0.1 (2018-07-23) ++++++++++++++++++ diff --git a/azure-mgmt-compute/MANIFEST.in b/azure-mgmt-compute/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-compute/MANIFEST.in +++ b/azure-mgmt-compute/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-compute/README.rst b/azure-mgmt-compute/README.rst index cc57dfa74240..9657f86d6862 100644 --- a/azure-mgmt-compute/README.rst +++ b/azure-mgmt-compute/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Compute Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-compute/azure/__init__.py b/azure-mgmt-compute/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-compute/azure/__init__.py +++ b/azure-mgmt-compute/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-compute/azure/mgmt/__init__.py b/azure-mgmt-compute/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-compute/azure/mgmt/__init__.py +++ b/azure-mgmt-compute/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-compute/azure/mgmt/compute/compute_management_client.py b/azure-mgmt-compute/azure/mgmt/compute/compute_management_client.py index 76776466d5d0..8b951763bb8d 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/compute_management_client.py +++ b/azure-mgmt-compute/azure/mgmt/compute/compute_management_client.py @@ -80,13 +80,13 @@ class ComputeManagementClient(MultiApiClientMixin, SDKClient): :type profile: azure.profiles.KnownProfiles """ - DEFAULT_API_VERSION = '2018-06-01' + DEFAULT_API_VERSION = '2018-10-01' _PROFILE_TAG = "azure.mgmt.compute.ComputeManagementClient" LATEST_PROFILE = ProfileDefinition({ _PROFILE_TAG: { - 'disks': '2018-04-01', 'resource_skus': '2017-09-01', - 'snapshots': '2018-04-01', + 'disks': '2018-06-01', + 'snapshots': '2018-06-01', None: DEFAULT_API_VERSION }}, _PROFILE_TAG + " latest" @@ -119,6 +119,7 @@ def models(cls, api_version=DEFAULT_API_VERSION): * 2017-12-01: :mod:`v2017_12_01.models` * 2018-04-01: :mod:`v2018_04_01.models` * 2018-06-01: :mod:`v2018_06_01.models` + * 2018-10-01: :mod:`v2018_10_01.models` """ if api_version == '2015-06-15': from .v2015_06_15 import models @@ -144,8 +145,11 @@ def models(cls, api_version=DEFAULT_API_VERSION): elif api_version == '2018-06-01': from .v2018_06_01 import models return models + elif api_version == '2018-10-01': + from .v2018_10_01 import models + return models raise NotImplementedError("APIVersion {} is not available".format(api_version)) - + @property def availability_sets(self): """Instance depends on the API version: @@ -157,6 +161,7 @@ def availability_sets(self): * 2017-12-01: :class:`AvailabilitySetsOperations` * 2018-04-01: :class:`AvailabilitySetsOperations` * 2018-06-01: :class:`AvailabilitySetsOperations` + * 2018-10-01: :class:`AvailabilitySetsOperations` """ api_version = self._get_api_version('availability_sets') if api_version == '2015-06-15': @@ -173,6 +178,8 @@ def availability_sets(self): from .v2018_04_01.operations import AvailabilitySetsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import AvailabilitySetsOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import AvailabilitySetsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -184,6 +191,7 @@ def disks(self): * 2016-04-30-preview: :class:`DisksOperations` * 2017-03-30: :class:`DisksOperations` * 2018-04-01: :class:`DisksOperations` + * 2018-06-01: :class:`DisksOperations` """ api_version = self._get_api_version('disks') if api_version == '2016-04-30-preview': @@ -192,6 +200,8 @@ def disks(self): from .v2017_03_30.operations import DisksOperations as OperationClass elif api_version == '2018-04-01': from .v2018_04_01.operations import DisksOperations as OperationClass + elif api_version == '2018-06-01': + from .v2018_06_01.operations import DisksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -244,6 +254,7 @@ def images(self): * 2017-12-01: :class:`ImagesOperations` * 2018-04-01: :class:`ImagesOperations` * 2018-06-01: :class:`ImagesOperations` + * 2018-10-01: :class:`ImagesOperations` """ api_version = self._get_api_version('images') if api_version == '2016-04-30-preview': @@ -256,6 +267,8 @@ def images(self): from .v2018_04_01.operations import ImagesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ImagesOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import ImagesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -267,6 +280,7 @@ def log_analytics(self): * 2017-12-01: :class:`LogAnalyticsOperations` * 2018-04-01: :class:`LogAnalyticsOperations` * 2018-06-01: :class:`LogAnalyticsOperations` + * 2018-10-01: :class:`LogAnalyticsOperations` """ api_version = self._get_api_version('log_analytics') if api_version == '2017-12-01': @@ -275,6 +289,8 @@ def log_analytics(self): from .v2018_04_01.operations import LogAnalyticsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import LogAnalyticsOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import LogAnalyticsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -286,6 +302,7 @@ def operations(self): * 2017-12-01: :class:`Operations` * 2018-04-01: :class:`Operations` * 2018-06-01: :class:`Operations` + * 2018-10-01: :class:`Operations` """ api_version = self._get_api_version('operations') if api_version == '2017-12-01': @@ -294,6 +311,8 @@ def operations(self): from .v2018_04_01.operations import Operations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import Operations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import Operations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -321,6 +340,7 @@ def snapshots(self): * 2016-04-30-preview: :class:`SnapshotsOperations` * 2017-03-30: :class:`SnapshotsOperations` * 2018-04-01: :class:`SnapshotsOperations` + * 2018-06-01: :class:`SnapshotsOperations` """ api_version = self._get_api_version('snapshots') if api_version == '2016-04-30-preview': @@ -329,6 +349,8 @@ def snapshots(self): from .v2017_03_30.operations import SnapshotsOperations as OperationClass elif api_version == '2018-04-01': from .v2018_04_01.operations import SnapshotsOperations as OperationClass + elif api_version == '2018-06-01': + from .v2018_06_01.operations import SnapshotsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -344,6 +366,7 @@ def usage(self): * 2017-12-01: :class:`UsageOperations` * 2018-04-01: :class:`UsageOperations` * 2018-06-01: :class:`UsageOperations` + * 2018-10-01: :class:`UsageOperations` """ api_version = self._get_api_version('usage') if api_version == '2015-06-15': @@ -360,6 +383,8 @@ def usage(self): from .v2018_04_01.operations import UsageOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import UsageOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import UsageOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -375,6 +400,7 @@ def virtual_machine_extension_images(self): * 2017-12-01: :class:`VirtualMachineExtensionImagesOperations` * 2018-04-01: :class:`VirtualMachineExtensionImagesOperations` * 2018-06-01: :class:`VirtualMachineExtensionImagesOperations` + * 2018-10-01: :class:`VirtualMachineExtensionImagesOperations` """ api_version = self._get_api_version('virtual_machine_extension_images') if api_version == '2015-06-15': @@ -391,6 +417,8 @@ def virtual_machine_extension_images(self): from .v2018_04_01.operations import VirtualMachineExtensionImagesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineExtensionImagesOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineExtensionImagesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -406,6 +434,7 @@ def virtual_machine_extensions(self): * 2017-12-01: :class:`VirtualMachineExtensionsOperations` * 2018-04-01: :class:`VirtualMachineExtensionsOperations` * 2018-06-01: :class:`VirtualMachineExtensionsOperations` + * 2018-10-01: :class:`VirtualMachineExtensionsOperations` """ api_version = self._get_api_version('virtual_machine_extensions') if api_version == '2015-06-15': @@ -422,6 +451,8 @@ def virtual_machine_extensions(self): from .v2018_04_01.operations import VirtualMachineExtensionsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineExtensionsOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineExtensionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -437,6 +468,7 @@ def virtual_machine_images(self): * 2017-12-01: :class:`VirtualMachineImagesOperations` * 2018-04-01: :class:`VirtualMachineImagesOperations` * 2018-06-01: :class:`VirtualMachineImagesOperations` + * 2018-10-01: :class:`VirtualMachineImagesOperations` """ api_version = self._get_api_version('virtual_machine_images') if api_version == '2015-06-15': @@ -453,6 +485,8 @@ def virtual_machine_images(self): from .v2018_04_01.operations import VirtualMachineImagesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineImagesOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineImagesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -465,6 +499,7 @@ def virtual_machine_run_commands(self): * 2017-12-01: :class:`VirtualMachineRunCommandsOperations` * 2018-04-01: :class:`VirtualMachineRunCommandsOperations` * 2018-06-01: :class:`VirtualMachineRunCommandsOperations` + * 2018-10-01: :class:`VirtualMachineRunCommandsOperations` """ api_version = self._get_api_version('virtual_machine_run_commands') if api_version == '2017-03-30': @@ -475,6 +510,8 @@ def virtual_machine_run_commands(self): from .v2018_04_01.operations import VirtualMachineRunCommandsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineRunCommandsOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineRunCommandsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -487,6 +524,7 @@ def virtual_machine_scale_set_extensions(self): * 2017-12-01: :class:`VirtualMachineScaleSetExtensionsOperations` * 2018-04-01: :class:`VirtualMachineScaleSetExtensionsOperations` * 2018-06-01: :class:`VirtualMachineScaleSetExtensionsOperations` + * 2018-10-01: :class:`VirtualMachineScaleSetExtensionsOperations` """ api_version = self._get_api_version('virtual_machine_scale_set_extensions') if api_version == '2017-03-30': @@ -497,6 +535,8 @@ def virtual_machine_scale_set_extensions(self): from .v2018_04_01.operations import VirtualMachineScaleSetExtensionsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineScaleSetExtensionsOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineScaleSetExtensionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -509,6 +549,7 @@ def virtual_machine_scale_set_rolling_upgrades(self): * 2017-12-01: :class:`VirtualMachineScaleSetRollingUpgradesOperations` * 2018-04-01: :class:`VirtualMachineScaleSetRollingUpgradesOperations` * 2018-06-01: :class:`VirtualMachineScaleSetRollingUpgradesOperations` + * 2018-10-01: :class:`VirtualMachineScaleSetRollingUpgradesOperations` """ api_version = self._get_api_version('virtual_machine_scale_set_rolling_upgrades') if api_version == '2017-03-30': @@ -519,6 +560,8 @@ def virtual_machine_scale_set_rolling_upgrades(self): from .v2018_04_01.operations import VirtualMachineScaleSetRollingUpgradesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineScaleSetRollingUpgradesOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineScaleSetRollingUpgradesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -534,6 +577,7 @@ def virtual_machine_scale_set_vms(self): * 2017-12-01: :class:`VirtualMachineScaleSetVMsOperations` * 2018-04-01: :class:`VirtualMachineScaleSetVMsOperations` * 2018-06-01: :class:`VirtualMachineScaleSetVMsOperations` + * 2018-10-01: :class:`VirtualMachineScaleSetVMsOperations` """ api_version = self._get_api_version('virtual_machine_scale_set_vms') if api_version == '2015-06-15': @@ -550,6 +594,8 @@ def virtual_machine_scale_set_vms(self): from .v2018_04_01.operations import VirtualMachineScaleSetVMsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineScaleSetVMsOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineScaleSetVMsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -565,6 +611,7 @@ def virtual_machine_scale_sets(self): * 2017-12-01: :class:`VirtualMachineScaleSetsOperations` * 2018-04-01: :class:`VirtualMachineScaleSetsOperations` * 2018-06-01: :class:`VirtualMachineScaleSetsOperations` + * 2018-10-01: :class:`VirtualMachineScaleSetsOperations` """ api_version = self._get_api_version('virtual_machine_scale_sets') if api_version == '2015-06-15': @@ -581,6 +628,8 @@ def virtual_machine_scale_sets(self): from .v2018_04_01.operations import VirtualMachineScaleSetsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineScaleSetsOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineScaleSetsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -596,6 +645,7 @@ def virtual_machine_sizes(self): * 2017-12-01: :class:`VirtualMachineSizesOperations` * 2018-04-01: :class:`VirtualMachineSizesOperations` * 2018-06-01: :class:`VirtualMachineSizesOperations` + * 2018-10-01: :class:`VirtualMachineSizesOperations` """ api_version = self._get_api_version('virtual_machine_sizes') if api_version == '2015-06-15': @@ -612,6 +662,8 @@ def virtual_machine_sizes(self): from .v2018_04_01.operations import VirtualMachineSizesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachineSizesOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachineSizesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -627,6 +679,7 @@ def virtual_machines(self): * 2017-12-01: :class:`VirtualMachinesOperations` * 2018-04-01: :class:`VirtualMachinesOperations` * 2018-06-01: :class:`VirtualMachinesOperations` + * 2018-10-01: :class:`VirtualMachinesOperations` """ api_version = self._get_api_version('virtual_machines') if api_version == '2015-06-15': @@ -643,6 +696,8 @@ def virtual_machines(self): from .v2018_04_01.operations import VirtualMachinesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualMachinesOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import VirtualMachinesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) diff --git a/azure-mgmt-compute/azure/mgmt/compute/models.py b/azure-mgmt-compute/azure/mgmt/compute/models.py index eb8b45d7db77..6d35489627cd 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/models.py +++ b/azure-mgmt-compute/azure/mgmt/compute/models.py @@ -7,8 +7,8 @@ import warnings from .v2017_09_01.models import * -from .v2018_04_01.models import * -from .v2018_06_01.models import * # Note that this line is overriding some models of 2018-04-01. See link below for details. +from .v2018_06_01.models import * +from .v2018_10_01.models import * # Note that this line is overriding some models of 2018-06-01. See link below for details. warnings.warn("Import models from this file is deprecated. See https://aka.ms/pysdkmodels", DeprecationWarning) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics.py index ca3dbdd4f23c..4a1f77c4d7d0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_instance_view.py index 6fe1f84a3910..05ca725929f6 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_instance_view.py @@ -15,12 +15,20 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, @@ -28,5 +36,5 @@ class BootDiagnosticsInstanceView(Model): def __init__(self, **kwargs): super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = kwargs.get('console_screenshot_blob_uri', None) - self.serial_console_log_blob_uri = kwargs.get('serial_console_log_blob_uri', None) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_instance_view_py3.py index d85b51981ab9..97e4cdba67c4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_instance_view_py3.py @@ -15,18 +15,26 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, } - def __init__(self, *, console_screenshot_blob_uri: str=None, serial_console_log_blob_uri: str=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = console_screenshot_blob_uri - self.serial_console_log_blob_uri = serial_console_log_blob_uri + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_py3.py index b0a756ea4fa0..b64ae5b4adde 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/boot_diagnostics_py3.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/data_disk.py index d21d64c3c2ea..83f4e11cb9cd 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/data_disk.py @@ -46,7 +46,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2015_06_15.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/data_disk_py3.py index c273f2037df3..d3b72348ed17 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/data_disk_py3.py @@ -46,7 +46,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2015_06_15.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/diagnostics_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/diagnostics_profile.py index d801c39f51d5..d8dbd83039f3 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/diagnostics_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/diagnostics_profile.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2015_06_15.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/diagnostics_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/diagnostics_profile_py3.py index c2fee8c4a669..474722c3fb39 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/diagnostics_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/diagnostics_profile_py3.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2015_06_15.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/os_disk.py index 79b03a5188a7..68c332c68631 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/os_disk.py @@ -55,7 +55,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2015_06_15.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/os_disk_py3.py index 2b5a1686e286..91f30add6e2f 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/os_disk_py3.py @@ -55,7 +55,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2015_06_15.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_instance_view.py index 088d69be6a30..aea1d35f16ed 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_instance_view.py @@ -33,8 +33,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2015_06_15.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2015_06_15.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_instance_view_py3.py index 0583e610ceeb..20ca416f12f2 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_instance_view_py3.py @@ -33,8 +33,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2015_06_15.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2015_06_15.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_scale_set_vm_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_scale_set_vm_instance_view.py index f94d635b5955..91782b6a5a84 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_scale_set_vm_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_scale_set_vm_instance_view.py @@ -31,8 +31,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): list[~azure.mgmt.compute.v2015_06_15.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2015_06_15.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_scale_set_vm_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_scale_set_vm_instance_view_py3.py index f7c9071903cf..500dda482d10 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_scale_set_vm_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15/models/virtual_machine_scale_set_vm_instance_view_py3.py @@ -31,8 +31,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): list[~azure.mgmt.compute.v2015_06_15.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2015_06_15.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics.py index ca3dbdd4f23c..4a1f77c4d7d0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_instance_view.py index 6fe1f84a3910..05ca725929f6 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_instance_view.py @@ -15,12 +15,20 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, @@ -28,5 +36,5 @@ class BootDiagnosticsInstanceView(Model): def __init__(self, **kwargs): super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = kwargs.get('console_screenshot_blob_uri', None) - self.serial_console_log_blob_uri = kwargs.get('serial_console_log_blob_uri', None) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_instance_view_py3.py index d85b51981ab9..97e4cdba67c4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_instance_view_py3.py @@ -15,18 +15,26 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, } - def __init__(self, *, console_screenshot_blob_uri: str=None, serial_console_log_blob_uri: str=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = console_screenshot_blob_uri - self.serial_console_log_blob_uri = serial_console_log_blob_uri + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_py3.py index b0a756ea4fa0..b64ae5b4adde 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/boot_diagnostics_py3.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/data_disk.py index b7faf4202ea7..43bafc130205 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/data_disk.py @@ -46,7 +46,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/data_disk_py3.py index 71fe40ece87d..4c613b75231b 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/data_disk_py3.py @@ -46,7 +46,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/diagnostics_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/diagnostics_profile.py index 5a14b0394223..a235ce0b5984 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/diagnostics_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/diagnostics_profile.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_03_30.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/diagnostics_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/diagnostics_profile_py3.py index 19ecbb17acbd..ccc65927c7b8 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/diagnostics_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/diagnostics_profile_py3.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_03_30.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/os_disk.py index 459ddcd37863..9c5e9be8a82e 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/os_disk.py @@ -55,7 +55,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/os_disk_py3.py index fb52bdcd3e5b..2722bbce24aa 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/os_disk_py3.py @@ -55,7 +55,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_instance_view.py index 966d3f09f313..0816555b120e 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_instance_view.py @@ -33,8 +33,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2016_03_30.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_03_30.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_instance_view_py3.py index ab733f0a765d..57a65fcad4d4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_instance_view_py3.py @@ -33,8 +33,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2016_03_30.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_03_30.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_scale_set_vm_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_scale_set_vm_instance_view.py index a99cbc4d022d..7fef2f141ea3 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_scale_set_vm_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_scale_set_vm_instance_view.py @@ -31,8 +31,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): list[~azure.mgmt.compute.v2016_03_30.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_03_30.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_scale_set_vm_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_scale_set_vm_instance_view_py3.py index 9cc3a0c3b2be..0b80ed4fef79 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_scale_set_vm_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30/models/virtual_machine_scale_set_vm_instance_view_py3.py @@ -31,8 +31,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): list[~azure.mgmt.compute.v2016_03_30.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_03_30.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics.py index ca3dbdd4f23c..4a1f77c4d7d0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_instance_view.py index 6fe1f84a3910..05ca725929f6 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_instance_view.py @@ -15,12 +15,20 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, @@ -28,5 +36,5 @@ class BootDiagnosticsInstanceView(Model): def __init__(self, **kwargs): super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = kwargs.get('console_screenshot_blob_uri', None) - self.serial_console_log_blob_uri = kwargs.get('serial_console_log_blob_uri', None) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_instance_view_py3.py index d85b51981ab9..97e4cdba67c4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_instance_view_py3.py @@ -15,18 +15,26 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, } - def __init__(self, *, console_screenshot_blob_uri: str=None, serial_console_log_blob_uri: str=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = console_screenshot_blob_uri - self.serial_console_log_blob_uri = serial_console_log_blob_uri + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_py3.py index b0a756ea4fa0..b64ae5b4adde 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/boot_diagnostics_py3.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/data_disk.py index 1db128727007..c866dba239b3 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/data_disk.py @@ -48,7 +48,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_04_30_preview.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/data_disk_py3.py index adcc250ba2e2..697cc8449812 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/data_disk_py3.py @@ -48,7 +48,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_04_30_preview.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/diagnostics_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/diagnostics_profile.py index 7e52b45ee5c8..1f314d2ac244 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/diagnostics_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/diagnostics_profile.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_04_30_preview.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/diagnostics_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/diagnostics_profile_py3.py index f30752cea400..f7e18305b608 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/diagnostics_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/diagnostics_profile_py3.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_04_30_preview.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/image_disk_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/image_disk_reference.py index 247d532379fc..b47ddd445024 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/image_disk_reference.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/image_disk_reference.py @@ -17,7 +17,7 @@ class ImageDiskReference(Model): All required parameters must be populated in order to send to Azure. - :param id: Required. A relative uri containing either a Platform Imgage + :param id: Required. A relative uri containing either a Platform Image Repository or user image reference. :type id: str :param lun: If the disk is created from an image's data disk, this is an diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/image_disk_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/image_disk_reference_py3.py index 191563557acb..85bf966bc6e0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/image_disk_reference_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/image_disk_reference_py3.py @@ -17,7 +17,7 @@ class ImageDiskReference(Model): All required parameters must be populated in order to send to Azure. - :param id: Required. A relative uri containing either a Platform Imgage + :param id: Required. A relative uri containing either a Platform Image Repository or user image reference. :type id: str :param lun: If the disk is created from an image's data disk, this is an diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/os_disk.py index cd7d915b62f1..8cfa5ba076a5 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/os_disk.py @@ -57,7 +57,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_04_30_preview.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/os_disk_py3.py index e8101921250d..bb5b151ec7aa 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/os_disk_py3.py @@ -57,7 +57,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_04_30_preview.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_instance_view.py index c1e4c785527b..4666a4066364 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_instance_view.py @@ -34,8 +34,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2016_04_30_preview.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_04_30_preview.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_instance_view_py3.py index 323a0e109a7a..6bf2e10a13a1 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_instance_view_py3.py @@ -34,8 +34,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2016_04_30_preview.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_04_30_preview.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_data_disk.py index 52812568311f..61138bcb9e6f 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_data_disk.py @@ -34,7 +34,7 @@ class VirtualMachineScaleSetDataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_04_30_preview.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_data_disk_py3.py index d591a546afa4..ff9363b506ac 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_data_disk_py3.py @@ -34,7 +34,7 @@ class VirtualMachineScaleSetDataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2016_04_30_preview.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_vm_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_vm_instance_view.py index 641b2b535d0c..29157262456f 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_vm_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_vm_instance_view.py @@ -32,8 +32,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): list[~azure.mgmt.compute.v2016_04_30_preview.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_04_30_preview.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_vm_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_vm_instance_view_py3.py index d16428111fc0..e7cd124f4320 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_vm_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview/models/virtual_machine_scale_set_vm_instance_view_py3.py @@ -32,8 +32,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): list[~azure.mgmt.compute.v2016_04_30_preview.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2016_04_30_preview.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics.py index ca3dbdd4f23c..4a1f77c4d7d0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_instance_view.py index 6fe1f84a3910..05ca725929f6 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_instance_view.py @@ -15,12 +15,20 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, @@ -28,5 +36,5 @@ class BootDiagnosticsInstanceView(Model): def __init__(self, **kwargs): super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = kwargs.get('console_screenshot_blob_uri', None) - self.serial_console_log_blob_uri = kwargs.get('serial_console_log_blob_uri', None) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_instance_view_py3.py index d85b51981ab9..97e4cdba67c4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_instance_view_py3.py @@ -15,18 +15,26 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, } - def __init__(self, *, console_screenshot_blob_uri: str=None, serial_console_log_blob_uri: str=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = console_screenshot_blob_uri - self.serial_console_log_blob_uri = serial_console_log_blob_uri + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_py3.py index b0a756ea4fa0..b64ae5b4adde 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/boot_diagnostics_py3.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/data_disk.py index 5a0bf58d6c10..32a36df43517 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/data_disk.py @@ -46,7 +46,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/data_disk_py3.py index ce4a52a28af6..64f014af5da9 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/data_disk_py3.py @@ -46,7 +46,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/diagnostics_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/diagnostics_profile.py index 36c128097209..c4b515bfd411 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/diagnostics_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/diagnostics_profile.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_03_30.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/diagnostics_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/diagnostics_profile_py3.py index 30ba1b1a6c70..a3c64f8fd196 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/diagnostics_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/diagnostics_profile_py3.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_03_30.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/image_disk_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/image_disk_reference.py index 247d532379fc..b47ddd445024 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/image_disk_reference.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/image_disk_reference.py @@ -17,7 +17,7 @@ class ImageDiskReference(Model): All required parameters must be populated in order to send to Azure. - :param id: Required. A relative uri containing either a Platform Imgage + :param id: Required. A relative uri containing either a Platform Image Repository or user image reference. :type id: str :param lun: If the disk is created from an image's data disk, this is an diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/image_disk_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/image_disk_reference_py3.py index 191563557acb..85bf966bc6e0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/image_disk_reference_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/image_disk_reference_py3.py @@ -17,7 +17,7 @@ class ImageDiskReference(Model): All required parameters must be populated in order to send to Azure. - :param id: Required. A relative uri containing either a Platform Imgage + :param id: Required. A relative uri containing either a Platform Image Repository or user image reference. :type id: str :param lun: If the disk is created from an image's data disk, this is an diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/os_disk.py index b30836ab57c7..fd18571e4bb8 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/os_disk.py @@ -55,7 +55,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/os_disk_py3.py index 49610fe43158..d86663c087e1 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/os_disk_py3.py @@ -55,7 +55,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_instance_view.py index e6c6b90ec611..ceb11db65060 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_instance_view.py @@ -37,8 +37,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2017_03_30.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_03_30.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_instance_view_py3.py index 2466342d3503..20e30243b307 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_instance_view_py3.py @@ -37,8 +37,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2017_03_30.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_03_30.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_data_disk.py index 43b4d78fe75d..421a5027f612 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_data_disk.py @@ -33,7 +33,7 @@ class VirtualMachineScaleSetDataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_data_disk_py3.py index 8fca185a969f..29d44187ea43 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_data_disk_py3.py @@ -33,7 +33,7 @@ class VirtualMachineScaleSetDataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_03_30.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_vm_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_vm_instance_view.py index 489f4fe28548..39df77241056 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_vm_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_vm_instance_view.py @@ -37,8 +37,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): ~azure.mgmt.compute.v2017_03_30.models.VirtualMachineHealthStatus :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_03_30.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_vm_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_vm_instance_view_py3.py index 25821e5bfe74..047be43143a2 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_vm_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/models/virtual_machine_scale_set_vm_instance_view_py3.py @@ -37,8 +37,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): ~azure.mgmt.compute.v2017_03_30.models.VirtualMachineHealthStatus :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_03_30.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/operations/virtual_machines_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/operations/virtual_machines_operations.py index 0e91caa6f3e5..e34fd57b062c 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/operations/virtual_machines_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30/operations/virtual_machines_operations.py @@ -108,6 +108,75 @@ def get_extensions( return deserialized get_extensions.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions'} + def list_by_location( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets all the virtual machines under the specified subscription for the + specified location. + + :param location: The location for which virtual machines under the + subscription are queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachine + :rtype: + ~azure.mgmt.compute.v2017_03_30.models.VirtualMachinePaged[~azure.mgmt.compute.v2017_03_30.models.VirtualMachine] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_location.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_location.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines'} + def _capture_initial( self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, **operation_config): diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/__init__.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/__init__.py index ace2f7aed980..a3e0cce25339 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/__init__.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/__init__.py @@ -63,8 +63,6 @@ from .virtual_machine_identity_py3 import VirtualMachineIdentity from .maintenance_redeploy_status_py3 import MaintenanceRedeployStatus from .virtual_machine_instance_view_py3 import VirtualMachineInstanceView - from .virtual_machine_health_status_py3 import VirtualMachineHealthStatus - from .virtual_machine_scale_set_vm_instance_view_py3 import VirtualMachineScaleSetVMInstanceView from .virtual_machine_py3 import VirtualMachine from .virtual_machine_update_py3 import VirtualMachineUpdate from .auto_os_upgrade_policy_py3 import AutoOSUpgradePolicy @@ -117,6 +115,8 @@ from .rolling_upgrade_progress_info_py3 import RollingUpgradeProgressInfo from .upgrade_operation_historical_status_info_properties_py3 import UpgradeOperationHistoricalStatusInfoProperties from .upgrade_operation_historical_status_info_py3 import UpgradeOperationHistoricalStatusInfo + from .virtual_machine_health_status_py3 import VirtualMachineHealthStatus + from .virtual_machine_scale_set_vm_instance_view_py3 import VirtualMachineScaleSetVMInstanceView from .virtual_machine_scale_set_vm_py3 import VirtualMachineScaleSetVM from .rolling_upgrade_running_status_py3 import RollingUpgradeRunningStatus from .rolling_upgrade_status_info_py3 import RollingUpgradeStatusInfo @@ -191,8 +191,6 @@ from .virtual_machine_identity import VirtualMachineIdentity from .maintenance_redeploy_status import MaintenanceRedeployStatus from .virtual_machine_instance_view import VirtualMachineInstanceView - from .virtual_machine_health_status import VirtualMachineHealthStatus - from .virtual_machine_scale_set_vm_instance_view import VirtualMachineScaleSetVMInstanceView from .virtual_machine import VirtualMachine from .virtual_machine_update import VirtualMachineUpdate from .auto_os_upgrade_policy import AutoOSUpgradePolicy @@ -245,6 +243,8 @@ from .rolling_upgrade_progress_info import RollingUpgradeProgressInfo from .upgrade_operation_historical_status_info_properties import UpgradeOperationHistoricalStatusInfoProperties from .upgrade_operation_historical_status_info import UpgradeOperationHistoricalStatusInfo + from .virtual_machine_health_status import VirtualMachineHealthStatus + from .virtual_machine_scale_set_vm_instance_view import VirtualMachineScaleSetVMInstanceView from .virtual_machine_scale_set_vm import VirtualMachineScaleSetVM from .rolling_upgrade_running_status import RollingUpgradeRunningStatus from .rolling_upgrade_status_info import RollingUpgradeStatusInfo @@ -358,8 +358,6 @@ 'VirtualMachineIdentity', 'MaintenanceRedeployStatus', 'VirtualMachineInstanceView', - 'VirtualMachineHealthStatus', - 'VirtualMachineScaleSetVMInstanceView', 'VirtualMachine', 'VirtualMachineUpdate', 'AutoOSUpgradePolicy', @@ -412,6 +410,8 @@ 'RollingUpgradeProgressInfo', 'UpgradeOperationHistoricalStatusInfoProperties', 'UpgradeOperationHistoricalStatusInfo', + 'VirtualMachineHealthStatus', + 'VirtualMachineScaleSetVMInstanceView', 'VirtualMachineScaleSetVM', 'RollingUpgradeRunningStatus', 'RollingUpgradeStatusInfo', diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics.py index ca3dbdd4f23c..4a1f77c4d7d0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_instance_view.py index 6fe1f84a3910..05ca725929f6 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_instance_view.py @@ -15,12 +15,20 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, @@ -28,5 +36,5 @@ class BootDiagnosticsInstanceView(Model): def __init__(self, **kwargs): super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = kwargs.get('console_screenshot_blob_uri', None) - self.serial_console_log_blob_uri = kwargs.get('serial_console_log_blob_uri', None) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_instance_view_py3.py index d85b51981ab9..97e4cdba67c4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_instance_view_py3.py @@ -15,18 +15,26 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, } - def __init__(self, *, console_screenshot_blob_uri: str=None, serial_console_log_blob_uri: str=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = console_screenshot_blob_uri - self.serial_console_log_blob_uri = serial_console_log_blob_uri + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_py3.py index b0a756ea4fa0..b64ae5b4adde 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/boot_diagnostics_py3.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/data_disk.py index 41e260cdca7e..9aa528dc1ffc 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/data_disk.py @@ -49,7 +49,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_12_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/data_disk_py3.py index b638a05f74a0..5fa6a4c447b7 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/data_disk_py3.py @@ -49,7 +49,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_12_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/diagnostics_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/diagnostics_profile.py index 4734f23421f5..1c8a3b82e686 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/diagnostics_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/diagnostics_profile.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_12_01.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/diagnostics_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/diagnostics_profile_py3.py index f14cb5a908be..6446c617cdb5 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/diagnostics_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/diagnostics_profile_py3.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_12_01.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/os_disk.py index a81c8e1fec5e..1ea552d93227 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/os_disk.py @@ -58,7 +58,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_12_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/os_disk_py3.py index edfcc1b27230..86fdc0a012b5 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/os_disk_py3.py @@ -58,7 +58,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_12_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine.py index 8f9d1a3bb872..5810c1a09641 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine.py @@ -74,7 +74,7 @@ class VirtualMachine(Resource): :vartype provisioning_state: str :ivar instance_view: The virtual machine instance view. :vartype instance_view: - ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineScaleSetVMInstanceView + ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineInstanceView :param license_type: Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

Possible values are: @@ -124,7 +124,7 @@ class VirtualMachine(Resource): 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, - 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, 'resources': {'key': 'resources', 'type': '[VirtualMachineExtension]'}, diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_instance_view.py index 39b258f7735c..825a3243f7b8 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_instance_view.py @@ -44,8 +44,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2017_12_01.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_12_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_instance_view_py3.py index 255700c3cccf..e26e816f6976 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_instance_view_py3.py @@ -44,8 +44,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2017_12_01.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_12_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_py3.py index c3f1a274e98e..53a7270afebc 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_py3.py @@ -74,7 +74,7 @@ class VirtualMachine(Resource): :vartype provisioning_state: str :ivar instance_view: The virtual machine instance view. :vartype instance_view: - ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineScaleSetVMInstanceView + ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineInstanceView :param license_type: Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

Possible values are: @@ -124,7 +124,7 @@ class VirtualMachine(Resource): 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, - 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, 'resources': {'key': 'resources', 'type': '[VirtualMachineExtension]'}, diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_data_disk.py index fc62cb57fc02..ac080fa560d2 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_data_disk.py @@ -36,7 +36,7 @@ class VirtualMachineScaleSetDataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_12_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_data_disk_py3.py index 51ebc8cdd38a..b8f748d8b3f0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_data_disk_py3.py @@ -36,7 +36,7 @@ class VirtualMachineScaleSetDataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2017_12_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm.py index 0bde411429e5..323df5aaceaf 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm.py @@ -41,7 +41,7 @@ class VirtualMachineScaleSetVM(Resource): :vartype vm_id: str :ivar instance_view: The virtual machine instance view. :vartype instance_view: - ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineInstanceView + ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineScaleSetVMInstanceView :param hardware_profile: Specifies the hardware settings for the virtual machine. :type hardware_profile: @@ -123,7 +123,7 @@ class VirtualMachineScaleSetVM(Resource): 'sku': {'key': 'sku', 'type': 'Sku'}, 'latest_model_applied': {'key': 'properties.latestModelApplied', 'type': 'bool'}, 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, - 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_instance_view.py index b5b91ca14be9..280c9c575484 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_instance_view.py @@ -41,8 +41,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineHealthStatus :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_12_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_instance_view_py3.py index 61fbe15427fa..e4eaf09a4672 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_instance_view_py3.py @@ -41,8 +41,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineHealthStatus :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2017_12_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_py3.py index 24d0acda8dcb..1d0b7ce4dca1 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_scale_set_vm_py3.py @@ -41,7 +41,7 @@ class VirtualMachineScaleSetVM(Resource): :vartype vm_id: str :ivar instance_view: The virtual machine instance view. :vartype instance_view: - ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineInstanceView + ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineScaleSetVMInstanceView :param hardware_profile: Specifies the hardware settings for the virtual machine. :type hardware_profile: @@ -123,7 +123,7 @@ class VirtualMachineScaleSetVM(Resource): 'sku': {'key': 'sku', 'type': 'Sku'}, 'latest_model_applied': {'key': 'properties.latestModelApplied', 'type': 'bool'}, 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, - 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_update.py index 1d3cfde50468..710df35dad13 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_update.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_update.py @@ -64,7 +64,7 @@ class VirtualMachineUpdate(UpdateResource): :vartype provisioning_state: str :ivar instance_view: The virtual machine instance view. :vartype instance_view: - ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineScaleSetVMInstanceView + ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineInstanceView :param license_type: Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

Possible values are: @@ -102,7 +102,7 @@ class VirtualMachineUpdate(UpdateResource): 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, - 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, 'identity': {'key': 'identity', 'type': 'VirtualMachineIdentity'}, diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_update_py3.py index d90f69d892df..33abe81fdb0b 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_update_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/models/virtual_machine_update_py3.py @@ -64,7 +64,7 @@ class VirtualMachineUpdate(UpdateResource): :vartype provisioning_state: str :ivar instance_view: The virtual machine instance view. :vartype instance_view: - ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineScaleSetVMInstanceView + ~azure.mgmt.compute.v2017_12_01.models.VirtualMachineInstanceView :param license_type: Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

Possible values are: @@ -102,7 +102,7 @@ class VirtualMachineUpdate(UpdateResource): 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, - 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, 'identity': {'key': 'identity', 'type': 'VirtualMachineIdentity'}, diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/operations/virtual_machines_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/operations/virtual_machines_operations.py index fafb141bd641..ae6d1fdd2e94 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/operations/virtual_machines_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01/operations/virtual_machines_operations.py @@ -108,6 +108,75 @@ def get_extensions( return deserialized get_extensions.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions'} + def list_by_location( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets all the virtual machines under the specified subscription for the + specified location. + + :param location: The location for which virtual machines under the + subscription are queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachine + :rtype: + ~azure.mgmt.compute.v2017_12_01.models.VirtualMachinePaged[~azure.mgmt.compute.v2017_12_01.models.VirtualMachine] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_location.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_location.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines'} + def _capture_initial( self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, **operation_config): diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/compute_management_client.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/compute_management_client.py index 63b1db3da61a..92f3f44f9013 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/compute_management_client.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/compute_management_client.py @@ -19,9 +19,9 @@ from .operations.virtual_machine_extensions_operations import VirtualMachineExtensionsOperations from .operations.virtual_machine_images_operations import VirtualMachineImagesOperations from .operations.usage_operations import UsageOperations +from .operations.virtual_machines_operations import VirtualMachinesOperations from .operations.virtual_machine_sizes_operations import VirtualMachineSizesOperations from .operations.images_operations import ImagesOperations -from .operations.virtual_machines_operations import VirtualMachinesOperations from .operations.virtual_machine_scale_sets_operations import VirtualMachineScaleSetsOperations from .operations.virtual_machine_scale_set_extensions_operations import VirtualMachineScaleSetExtensionsOperations from .operations.virtual_machine_scale_set_rolling_upgrades_operations import VirtualMachineScaleSetRollingUpgradesOperations @@ -85,12 +85,12 @@ class ComputeManagementClient(SDKClient): :vartype virtual_machine_images: azure.mgmt.compute.v2018_04_01.operations.VirtualMachineImagesOperations :ivar usage: Usage operations :vartype usage: azure.mgmt.compute.v2018_04_01.operations.UsageOperations + :ivar virtual_machines: VirtualMachines operations + :vartype virtual_machines: azure.mgmt.compute.v2018_04_01.operations.VirtualMachinesOperations :ivar virtual_machine_sizes: VirtualMachineSizes operations :vartype virtual_machine_sizes: azure.mgmt.compute.v2018_04_01.operations.VirtualMachineSizesOperations :ivar images: Images operations :vartype images: azure.mgmt.compute.v2018_04_01.operations.ImagesOperations - :ivar virtual_machines: VirtualMachines operations - :vartype virtual_machines: azure.mgmt.compute.v2018_04_01.operations.VirtualMachinesOperations :ivar virtual_machine_scale_sets: VirtualMachineScaleSets operations :vartype virtual_machine_scale_sets: azure.mgmt.compute.v2018_04_01.operations.VirtualMachineScaleSetsOperations :ivar virtual_machine_scale_set_extensions: VirtualMachineScaleSetExtensions operations @@ -141,12 +141,12 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.usage = UsageOperations( self._client, self.config, self._serialize, self._deserialize) + self.virtual_machines = VirtualMachinesOperations( + self._client, self.config, self._serialize, self._deserialize) self.virtual_machine_sizes = VirtualMachineSizesOperations( self._client, self.config, self._serialize, self._deserialize) self.images = ImagesOperations( self._client, self.config, self._serialize, self._deserialize) - self.virtual_machines = VirtualMachinesOperations( - self._client, self.config, self._serialize, self._deserialize) self.virtual_machine_scale_sets = VirtualMachineScaleSetsOperations( self._client, self.config, self._serialize, self._deserialize) self.virtual_machine_scale_set_extensions = VirtualMachineScaleSetExtensionsOperations( diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/__init__.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/__init__.py index c88cde3dde9f..abdeb024d053 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/__init__.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/__init__.py @@ -295,8 +295,8 @@ from .availability_set_paged import AvailabilitySetPaged from .virtual_machine_size_paged import VirtualMachineSizePaged from .usage_paged import UsagePaged -from .image_paged import ImagePaged from .virtual_machine_paged import VirtualMachinePaged +from .image_paged import ImagePaged from .virtual_machine_scale_set_paged import VirtualMachineScaleSetPaged from .virtual_machine_scale_set_sku_paged import VirtualMachineScaleSetSkuPaged from .upgrade_operation_historical_status_info_paged import UpgradeOperationHistoricalStatusInfoPaged @@ -480,8 +480,8 @@ 'AvailabilitySetPaged', 'VirtualMachineSizePaged', 'UsagePaged', - 'ImagePaged', 'VirtualMachinePaged', + 'ImagePaged', 'VirtualMachineScaleSetPaged', 'VirtualMachineScaleSetSkuPaged', 'UpgradeOperationHistoricalStatusInfoPaged', diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/access_uri.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/access_uri.py index 9ee6b01de1e1..fec7ad1244ab 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/access_uri.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/access_uri.py @@ -27,7 +27,7 @@ class AccessUri(Model): } _attribute_map = { - 'access_sas': {'key': 'properties.output.accessSAS', 'type': 'str'}, + 'access_sas': {'key': 'accessSAS', 'type': 'str'}, } def __init__(self, **kwargs): diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/access_uri_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/access_uri_py3.py index bb9e56aa4221..c13208a20d8d 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/access_uri_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/access_uri_py3.py @@ -27,7 +27,7 @@ class AccessUri(Model): } _attribute_map = { - 'access_sas': {'key': 'properties.output.accessSAS', 'type': 'str'}, + 'access_sas': {'key': 'accessSAS', 'type': 'str'}, } def __init__(self, **kwargs) -> None: diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics.py index ca3dbdd4f23c..4a1f77c4d7d0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_instance_view.py index 6fe1f84a3910..3f17908819ca 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_instance_view.py @@ -15,18 +15,33 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str + :ivar status: The boot diagnostics status information for the VM.

+ NOTE: It will be set only if there are errors encountered in enabling boot + diagnostics. + :vartype status: ~azure.mgmt.compute.v2018_04_01.models.InstanceViewStatus """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + 'status': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, } def __init__(self, **kwargs): super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = kwargs.get('console_screenshot_blob_uri', None) - self.serial_console_log_blob_uri = kwargs.get('serial_console_log_blob_uri', None) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None + self.status = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_instance_view_py3.py index d85b51981ab9..835256c75b26 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_instance_view_py3.py @@ -15,18 +15,33 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str + :ivar status: The boot diagnostics status information for the VM.

+ NOTE: It will be set only if there are errors encountered in enabling boot + diagnostics. + :vartype status: ~azure.mgmt.compute.v2018_04_01.models.InstanceViewStatus """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + 'status': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, } - def __init__(self, *, console_screenshot_blob_uri: str=None, serial_console_log_blob_uri: str=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = console_screenshot_blob_uri - self.serial_console_log_blob_uri = serial_console_log_blob_uri + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None + self.status = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_py3.py index b0a756ea4fa0..b64ae5b4adde 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/boot_diagnostics_py3.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/data_disk.py index b72af03bf155..830e382d6e10 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/data_disk.py @@ -49,7 +49,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_04_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/data_disk_py3.py index 9a75b455ed11..304ad2575077 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/data_disk_py3.py @@ -49,7 +49,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_04_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/diagnostics_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/diagnostics_profile.py index c809544d655e..f8751002a675 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/diagnostics_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/diagnostics_profile.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_04_01.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/diagnostics_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/diagnostics_profile_py3.py index 0193402fe61f..7fad1fcdb26e 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/diagnostics_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/diagnostics_profile_py3.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_04_01.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/image_disk_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/image_disk_reference.py index 247d532379fc..b47ddd445024 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/image_disk_reference.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/image_disk_reference.py @@ -17,7 +17,7 @@ class ImageDiskReference(Model): All required parameters must be populated in order to send to Azure. - :param id: Required. A relative uri containing either a Platform Imgage + :param id: Required. A relative uri containing either a Platform Image Repository or user image reference. :type id: str :param lun: If the disk is created from an image's data disk, this is an diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/image_disk_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/image_disk_reference_py3.py index 191563557acb..85bf966bc6e0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/image_disk_reference_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/image_disk_reference_py3.py @@ -17,7 +17,7 @@ class ImageDiskReference(Model): All required parameters must be populated in order to send to Azure. - :param id: Required. A relative uri containing either a Platform Imgage + :param id: Required. A relative uri containing either a Platform Image Repository or user image reference. :type id: str :param lun: If the disk is created from an image's data disk, this is an diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/os_disk.py index e82f77c2447c..e1c2cab2b103 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/os_disk.py @@ -58,7 +58,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_04_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/os_disk_py3.py index e45324c5df9c..c7376df8249b 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/os_disk_py3.py @@ -58,7 +58,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_04_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_instance_view.py index 8ba2eaf2f52a..52963d0a1224 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_instance_view.py @@ -44,8 +44,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2018_04_01.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_04_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_instance_view_py3.py index 8c9fcff69f26..4ba78b7e4b23 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_instance_view_py3.py @@ -44,8 +44,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2018_04_01.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_04_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_scale_set_vm_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_scale_set_vm_instance_view.py index 46c835c4dfd5..1a5045707968 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_scale_set_vm_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_scale_set_vm_instance_view.py @@ -41,8 +41,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): ~azure.mgmt.compute.v2018_04_01.models.VirtualMachineHealthStatus :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_04_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_scale_set_vm_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_scale_set_vm_instance_view_py3.py index 6854c21d4706..2c2e2701a0e7 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_scale_set_vm_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/models/virtual_machine_scale_set_vm_instance_view_py3.py @@ -41,8 +41,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): ~azure.mgmt.compute.v2018_04_01.models.VirtualMachineHealthStatus :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_04_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/__init__.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/__init__.py index 48abff4beece..e20e3c655aae 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/__init__.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/__init__.py @@ -15,9 +15,9 @@ from .virtual_machine_extensions_operations import VirtualMachineExtensionsOperations from .virtual_machine_images_operations import VirtualMachineImagesOperations from .usage_operations import UsageOperations +from .virtual_machines_operations import VirtualMachinesOperations from .virtual_machine_sizes_operations import VirtualMachineSizesOperations from .images_operations import ImagesOperations -from .virtual_machines_operations import VirtualMachinesOperations from .virtual_machine_scale_sets_operations import VirtualMachineScaleSetsOperations from .virtual_machine_scale_set_extensions_operations import VirtualMachineScaleSetExtensionsOperations from .virtual_machine_scale_set_rolling_upgrades_operations import VirtualMachineScaleSetRollingUpgradesOperations @@ -34,9 +34,9 @@ 'VirtualMachineExtensionsOperations', 'VirtualMachineImagesOperations', 'UsageOperations', + 'VirtualMachinesOperations', 'VirtualMachineSizesOperations', 'ImagesOperations', - 'VirtualMachinesOperations', 'VirtualMachineScaleSetsOperations', 'VirtualMachineScaleSetExtensionsOperations', 'VirtualMachineScaleSetRollingUpgradesOperations', diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/disks_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/disks_operations.py index f6fef80307e1..1a742e3eec9d 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/disks_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/disks_operations.py @@ -633,7 +633,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -715,7 +715,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/snapshots_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/snapshots_operations.py index 1110f5205dcf..83fcd98aa1f1 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/snapshots_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/snapshots_operations.py @@ -633,7 +633,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -715,7 +715,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/virtual_machines_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/virtual_machines_operations.py index eacf80e3186d..2b9af6befaba 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/virtual_machines_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01/operations/virtual_machines_operations.py @@ -39,6 +39,75 @@ def __init__(self, client, config, serializer, deserializer): self.config = config + def list_by_location( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets all the virtual machines under the specified subscription for the + specified location. + + :param location: The location for which virtual machines under the + subscription are queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachine + :rtype: + ~azure.mgmt.compute.v2018_04_01.models.VirtualMachinePaged[~azure.mgmt.compute.v2018_04_01.models.VirtualMachine] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_location.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_location.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines'} + def _capture_initial( self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, **operation_config): diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/compute_management_client.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/compute_management_client.py index 4d182b701b72..5d5681a27a79 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/compute_management_client.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/compute_management_client.py @@ -19,9 +19,9 @@ from .operations.virtual_machine_extensions_operations import VirtualMachineExtensionsOperations from .operations.virtual_machine_images_operations import VirtualMachineImagesOperations from .operations.usage_operations import UsageOperations +from .operations.virtual_machines_operations import VirtualMachinesOperations from .operations.virtual_machine_sizes_operations import VirtualMachineSizesOperations from .operations.images_operations import ImagesOperations -from .operations.virtual_machines_operations import VirtualMachinesOperations from .operations.virtual_machine_scale_sets_operations import VirtualMachineScaleSetsOperations from .operations.virtual_machine_scale_set_extensions_operations import VirtualMachineScaleSetExtensionsOperations from .operations.virtual_machine_scale_set_rolling_upgrades_operations import VirtualMachineScaleSetRollingUpgradesOperations @@ -31,6 +31,8 @@ from .operations.galleries_operations import GalleriesOperations from .operations.gallery_images_operations import GalleryImagesOperations from .operations.gallery_image_versions_operations import GalleryImageVersionsOperations +from .operations.disks_operations import DisksOperations +from .operations.snapshots_operations import SnapshotsOperations from . import models @@ -86,12 +88,12 @@ class ComputeManagementClient(SDKClient): :vartype virtual_machine_images: azure.mgmt.compute.v2018_06_01.operations.VirtualMachineImagesOperations :ivar usage: Usage operations :vartype usage: azure.mgmt.compute.v2018_06_01.operations.UsageOperations + :ivar virtual_machines: VirtualMachines operations + :vartype virtual_machines: azure.mgmt.compute.v2018_06_01.operations.VirtualMachinesOperations :ivar virtual_machine_sizes: VirtualMachineSizes operations :vartype virtual_machine_sizes: azure.mgmt.compute.v2018_06_01.operations.VirtualMachineSizesOperations :ivar images: Images operations :vartype images: azure.mgmt.compute.v2018_06_01.operations.ImagesOperations - :ivar virtual_machines: VirtualMachines operations - :vartype virtual_machines: azure.mgmt.compute.v2018_06_01.operations.VirtualMachinesOperations :ivar virtual_machine_scale_sets: VirtualMachineScaleSets operations :vartype virtual_machine_scale_sets: azure.mgmt.compute.v2018_06_01.operations.VirtualMachineScaleSetsOperations :ivar virtual_machine_scale_set_extensions: VirtualMachineScaleSetExtensions operations @@ -110,6 +112,10 @@ class ComputeManagementClient(SDKClient): :vartype gallery_images: azure.mgmt.compute.v2018_06_01.operations.GalleryImagesOperations :ivar gallery_image_versions: GalleryImageVersions operations :vartype gallery_image_versions: azure.mgmt.compute.v2018_06_01.operations.GalleryImageVersionsOperations + :ivar disks: Disks operations + :vartype disks: azure.mgmt.compute.v2018_06_01.operations.DisksOperations + :ivar snapshots: Snapshots operations + :vartype snapshots: azure.mgmt.compute.v2018_06_01.operations.SnapshotsOperations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -144,12 +150,12 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.usage = UsageOperations( self._client, self.config, self._serialize, self._deserialize) + self.virtual_machines = VirtualMachinesOperations( + self._client, self.config, self._serialize, self._deserialize) self.virtual_machine_sizes = VirtualMachineSizesOperations( self._client, self.config, self._serialize, self._deserialize) self.images = ImagesOperations( self._client, self.config, self._serialize, self._deserialize) - self.virtual_machines = VirtualMachinesOperations( - self._client, self.config, self._serialize, self._deserialize) self.virtual_machine_scale_sets = VirtualMachineScaleSetsOperations( self._client, self.config, self._serialize, self._deserialize) self.virtual_machine_scale_set_extensions = VirtualMachineScaleSetExtensionsOperations( @@ -168,3 +174,7 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.gallery_image_versions = GalleryImageVersionsOperations( self._client, self.config, self._serialize, self._deserialize) + self.disks = DisksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.snapshots = SnapshotsOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/__init__.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/__init__.py index 71cbc14a54ae..18c28168320c 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/__init__.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/__init__.py @@ -38,10 +38,12 @@ from .key_vault_key_reference_py3 import KeyVaultKeyReference from .disk_encryption_settings_py3 import DiskEncryptionSettings from .virtual_hard_disk_py3 import VirtualHardDisk + from .diff_disk_settings_py3 import DiffDiskSettings from .managed_disk_parameters_py3 import ManagedDiskParameters from .os_disk_py3 import OSDisk from .data_disk_py3 import DataDisk from .storage_profile_py3 import StorageProfile + from .additional_capabilities_py3 import AdditionalCapabilities from .additional_unattend_content_py3 import AdditionalUnattendContent from .win_rm_listener_py3 import WinRMListener from .win_rm_configuration_py3 import WinRMConfiguration @@ -153,10 +155,25 @@ from .regional_replication_status_py3 import RegionalReplicationStatus from .replication_status_py3 import ReplicationStatus from .gallery_image_version_py3 import GalleryImageVersion + from .target_region_py3 import TargetRegion from .managed_artifact_py3 import ManagedArtifact from .gallery_artifact_source_py3 import GalleryArtifactSource from .gallery_artifact_publishing_profile_base_py3 import GalleryArtifactPublishingProfileBase from .gallery_disk_image_py3 import GalleryDiskImage + from .disk_sku_py3 import DiskSku + from .image_disk_reference_py3 import ImageDiskReference + from .creation_data_py3 import CreationData + from .source_vault_py3 import SourceVault + from .key_vault_and_secret_reference_py3 import KeyVaultAndSecretReference + from .key_vault_and_key_reference_py3 import KeyVaultAndKeyReference + from .encryption_settings_py3 import EncryptionSettings + from .disk_py3 import Disk + from .disk_update_py3 import DiskUpdate + from .snapshot_sku_py3 import SnapshotSku + from .grant_access_data_py3 import GrantAccessData + from .access_uri_py3 import AccessUri + from .snapshot_py3 import Snapshot + from .snapshot_update_py3 import SnapshotUpdate except (SyntaxError, ImportError): from .compute_operation_value import ComputeOperationValue from .instance_view_status import InstanceViewStatus @@ -186,10 +203,12 @@ from .key_vault_key_reference import KeyVaultKeyReference from .disk_encryption_settings import DiskEncryptionSettings from .virtual_hard_disk import VirtualHardDisk + from .diff_disk_settings import DiffDiskSettings from .managed_disk_parameters import ManagedDiskParameters from .os_disk import OSDisk from .data_disk import DataDisk from .storage_profile import StorageProfile + from .additional_capabilities import AdditionalCapabilities from .additional_unattend_content import AdditionalUnattendContent from .win_rm_listener import WinRMListener from .win_rm_configuration import WinRMConfiguration @@ -301,16 +320,31 @@ from .regional_replication_status import RegionalReplicationStatus from .replication_status import ReplicationStatus from .gallery_image_version import GalleryImageVersion + from .target_region import TargetRegion from .managed_artifact import ManagedArtifact from .gallery_artifact_source import GalleryArtifactSource from .gallery_artifact_publishing_profile_base import GalleryArtifactPublishingProfileBase from .gallery_disk_image import GalleryDiskImage + from .disk_sku import DiskSku + from .image_disk_reference import ImageDiskReference + from .creation_data import CreationData + from .source_vault import SourceVault + from .key_vault_and_secret_reference import KeyVaultAndSecretReference + from .key_vault_and_key_reference import KeyVaultAndKeyReference + from .encryption_settings import EncryptionSettings + from .disk import Disk + from .disk_update import DiskUpdate + from .snapshot_sku import SnapshotSku + from .grant_access_data import GrantAccessData + from .access_uri import AccessUri + from .snapshot import Snapshot + from .snapshot_update import SnapshotUpdate from .compute_operation_value_paged import ComputeOperationValuePaged from .availability_set_paged import AvailabilitySetPaged from .virtual_machine_size_paged import VirtualMachineSizePaged from .usage_paged import UsagePaged -from .image_paged import ImagePaged from .virtual_machine_paged import VirtualMachinePaged +from .image_paged import ImagePaged from .virtual_machine_scale_set_paged import VirtualMachineScaleSetPaged from .virtual_machine_scale_set_sku_paged import VirtualMachineScaleSetSkuPaged from .upgrade_operation_historical_status_info_paged import UpgradeOperationHistoricalStatusInfoPaged @@ -320,13 +354,17 @@ from .gallery_paged import GalleryPaged from .gallery_image_paged import GalleryImagePaged from .gallery_image_version_paged import GalleryImageVersionPaged +from .disk_paged import DiskPaged +from .snapshot_paged import SnapshotPaged from .compute_management_client_enums import ( StatusLevelTypes, + AvailabilitySetSkuTypes, OperatingSystemTypes, VirtualMachineSizeTypes, CachingTypes, DiskCreateOptionTypes, StorageAccountTypes, + DiffDiskOptions, PassNames, ComponentNames, SettingNames, @@ -344,10 +382,13 @@ RollingUpgradeStatusCode, RollingUpgradeActionType, IntervalInMins, - ScaleTier, AggregatedReplicationState, ReplicationState, HostCaching, + DiskStorageAccountTypes, + DiskCreateOption, + SnapshotStorageAccountTypes, + AccessLevel, InstanceViewTypes, ReplicationStatusTypes, ) @@ -381,10 +422,12 @@ 'KeyVaultKeyReference', 'DiskEncryptionSettings', 'VirtualHardDisk', + 'DiffDiskSettings', 'ManagedDiskParameters', 'OSDisk', 'DataDisk', 'StorageProfile', + 'AdditionalCapabilities', 'AdditionalUnattendContent', 'WinRMListener', 'WinRMConfiguration', @@ -496,16 +539,31 @@ 'RegionalReplicationStatus', 'ReplicationStatus', 'GalleryImageVersion', + 'TargetRegion', 'ManagedArtifact', 'GalleryArtifactSource', 'GalleryArtifactPublishingProfileBase', 'GalleryDiskImage', + 'DiskSku', + 'ImageDiskReference', + 'CreationData', + 'SourceVault', + 'KeyVaultAndSecretReference', + 'KeyVaultAndKeyReference', + 'EncryptionSettings', + 'Disk', + 'DiskUpdate', + 'SnapshotSku', + 'GrantAccessData', + 'AccessUri', + 'Snapshot', + 'SnapshotUpdate', 'ComputeOperationValuePaged', 'AvailabilitySetPaged', 'VirtualMachineSizePaged', 'UsagePaged', - 'ImagePaged', 'VirtualMachinePaged', + 'ImagePaged', 'VirtualMachineScaleSetPaged', 'VirtualMachineScaleSetSkuPaged', 'UpgradeOperationHistoricalStatusInfoPaged', @@ -515,12 +573,16 @@ 'GalleryPaged', 'GalleryImagePaged', 'GalleryImageVersionPaged', + 'DiskPaged', + 'SnapshotPaged', 'StatusLevelTypes', + 'AvailabilitySetSkuTypes', 'OperatingSystemTypes', 'VirtualMachineSizeTypes', 'CachingTypes', 'DiskCreateOptionTypes', 'StorageAccountTypes', + 'DiffDiskOptions', 'PassNames', 'ComponentNames', 'SettingNames', @@ -538,10 +600,13 @@ 'RollingUpgradeStatusCode', 'RollingUpgradeActionType', 'IntervalInMins', - 'ScaleTier', 'AggregatedReplicationState', 'ReplicationState', 'HostCaching', + 'DiskStorageAccountTypes', + 'DiskCreateOption', + 'SnapshotStorageAccountTypes', + 'AccessLevel', 'InstanceViewTypes', 'ReplicationStatusTypes', ] diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/access_uri.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/access_uri.py new file mode 100644 index 000000000000..fec7ad1244ab --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/access_uri.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccessUri(Model): + """A disk access SAS uri. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar access_sas: A SAS uri for accessing a disk. + :vartype access_sas: str + """ + + _validation = { + 'access_sas': {'readonly': True}, + } + + _attribute_map = { + 'access_sas': {'key': 'accessSAS', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AccessUri, self).__init__(**kwargs) + self.access_sas = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/access_uri_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/access_uri_py3.py new file mode 100644 index 000000000000..c13208a20d8d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/access_uri_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccessUri(Model): + """A disk access SAS uri. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar access_sas: A SAS uri for accessing a disk. + :vartype access_sas: str + """ + + _validation = { + 'access_sas': {'readonly': True}, + } + + _attribute_map = { + 'access_sas': {'key': 'accessSAS', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(AccessUri, self).__init__(**kwargs) + self.access_sas = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/additional_capabilities.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/additional_capabilities.py new file mode 100644 index 000000000000..18ff109310c8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/additional_capabilities.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdditionalCapabilities(Model): + """Enables or disables a capability on the virtual machine or virtual machine + scale set. + + :param ultra_ssd_enabled: The flag that enables or disables a capability + to have one or more managed data disks with UltraSSD_LRS storage account + type on the VM or VMSS. Managed disks with storage account type + UltraSSD_LRS can be added to a virtual machine or virtual machine scale + set only if this property is enabled. + :type ultra_ssd_enabled: bool + """ + + _attribute_map = { + 'ultra_ssd_enabled': {'key': 'ultraSSDEnabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AdditionalCapabilities, self).__init__(**kwargs) + self.ultra_ssd_enabled = kwargs.get('ultra_ssd_enabled', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/additional_capabilities_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/additional_capabilities_py3.py new file mode 100644 index 000000000000..db83a0a4eacb --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/additional_capabilities_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdditionalCapabilities(Model): + """Enables or disables a capability on the virtual machine or virtual machine + scale set. + + :param ultra_ssd_enabled: The flag that enables or disables a capability + to have one or more managed data disks with UltraSSD_LRS storage account + type on the VM or VMSS. Managed disks with storage account type + UltraSSD_LRS can be added to a virtual machine or virtual machine scale + set only if this property is enabled. + :type ultra_ssd_enabled: bool + """ + + _attribute_map = { + 'ultra_ssd_enabled': {'key': 'ultraSSDEnabled', 'type': 'bool'}, + } + + def __init__(self, *, ultra_ssd_enabled: bool=None, **kwargs) -> None: + super(AdditionalCapabilities, self).__init__(**kwargs) + self.ultra_ssd_enabled = ultra_ssd_enabled diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/availability_set.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/availability_set.py index cc99cdb180b4..704e78065073 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/availability_set.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/availability_set.py @@ -51,7 +51,10 @@ class AvailabilitySet(Resource): :ivar statuses: The resource status information. :vartype statuses: list[~azure.mgmt.compute.v2018_06_01.models.InstanceViewStatus] - :param sku: Sku of the availability set + :param sku: Sku of the availability set, only name is required to be set. + See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for + virtual machines with managed disks and 'Classic' for virtual machines + with unmanaged disks. Default value is 'Classic'. :type sku: ~azure.mgmt.compute.v2018_06_01.models.Sku """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/availability_set_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/availability_set_py3.py index 64ea887cb556..cb768ff708d8 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/availability_set_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/availability_set_py3.py @@ -51,7 +51,10 @@ class AvailabilitySet(Resource): :ivar statuses: The resource status information. :vartype statuses: list[~azure.mgmt.compute.v2018_06_01.models.InstanceViewStatus] - :param sku: Sku of the availability set + :param sku: Sku of the availability set, only name is required to be set. + See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for + virtual machines with managed disks and 'Classic' for virtual machines + with unmanaged disks. Default value is 'Classic'. :type sku: ~azure.mgmt.compute.v2018_06_01.models.Sku """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics.py index ca3dbdd4f23c..4a1f77c4d7d0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_instance_view.py index 6fe1f84a3910..4b01ce822908 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_instance_view.py @@ -15,18 +15,33 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str + :ivar status: The boot diagnostics status information for the VM.

+ NOTE: It will be set only if there are errors encountered in enabling boot + diagnostics. + :vartype status: ~azure.mgmt.compute.v2018_06_01.models.InstanceViewStatus """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + 'status': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, } def __init__(self, **kwargs): super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = kwargs.get('console_screenshot_blob_uri', None) - self.serial_console_log_blob_uri = kwargs.get('serial_console_log_blob_uri', None) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None + self.status = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_instance_view_py3.py index d85b51981ab9..6ec8694acf3e 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_instance_view_py3.py @@ -15,18 +15,33 @@ class BootDiagnosticsInstanceView(Model): """The instance view of a virtual machine boot diagnostics. - :param console_screenshot_blob_uri: The console screenshot blob URI. - :type console_screenshot_blob_uri: str - :param serial_console_log_blob_uri: The Linux serial console log blob Uri. - :type serial_console_log_blob_uri: str + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str + :ivar status: The boot diagnostics status information for the VM.

+ NOTE: It will be set only if there are errors encountered in enabling boot + diagnostics. + :vartype status: ~azure.mgmt.compute.v2018_06_01.models.InstanceViewStatus """ + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + 'status': {'readonly': True}, + } + _attribute_map = { 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, } - def __init__(self, *, console_screenshot_blob_uri: str=None, serial_console_log_blob_uri: str=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(BootDiagnosticsInstanceView, self).__init__(**kwargs) - self.console_screenshot_blob_uri = console_screenshot_blob_uri - self.serial_console_log_blob_uri = serial_console_log_blob_uri + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None + self.status = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_py3.py index b0a756ea4fa0..b64ae5b4adde 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/boot_diagnostics_py3.py @@ -14,9 +14,8 @@ class BootDiagnostics(Model): """Boot Diagnostics is a debugging feature which allows you to view Console - Output and Screenshot to diagnose VM status.

For Linux Virtual - Machines, you can easily view the output of your console log.

For - both Windows and Linux virtual machines, Azure also enables you to see a + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :param enabled: Whether boot diagnostics should be enabled on the Virtual diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/compute_management_client_enums.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/compute_management_client_enums.py index 7992a6cd0806..9c58eaa0f157 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/compute_management_client_enums.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/compute_management_client_enums.py @@ -19,6 +19,12 @@ class StatusLevelTypes(str, Enum): error = "Error" +class AvailabilitySetSkuTypes(str, Enum): + + classic = "Classic" + aligned = "Aligned" + + class OperatingSystemTypes(str, Enum): windows = "Windows" @@ -214,6 +220,12 @@ class StorageAccountTypes(str, Enum): standard_lrs = "Standard_LRS" premium_lrs = "Premium_LRS" standard_ssd_lrs = "StandardSSD_LRS" + ultra_ssd_lrs = "UltraSSD_LRS" + + +class DiffDiskOptions(str, Enum): + + local = "Local" class PassNames(str, Enum): @@ -328,12 +340,6 @@ class IntervalInMins(str, Enum): sixty_mins = "SixtyMins" -class ScaleTier(str, Enum): - - s30 = "S30" - s100 = "S100" - - class AggregatedReplicationState(str, Enum): unknown = "Unknown" @@ -357,6 +363,37 @@ class HostCaching(str, Enum): read_write = "ReadWrite" +class DiskStorageAccountTypes(str, Enum): + + standard_lrs = "Standard_LRS" + premium_lrs = "Premium_LRS" + standard_ssd_lrs = "StandardSSD_LRS" + ultra_ssd_lrs = "UltraSSD_LRS" + + +class DiskCreateOption(str, Enum): + + empty = "Empty" + attach = "Attach" + from_image = "FromImage" + import_enum = "Import" + copy = "Copy" + restore = "Restore" + + +class SnapshotStorageAccountTypes(str, Enum): + + standard_lrs = "Standard_LRS" + premium_lrs = "Premium_LRS" + standard_zrs = "Standard_ZRS" + + +class AccessLevel(str, Enum): + + none = "None" + read = "Read" + + class InstanceViewTypes(str, Enum): instance_view = "instanceView" diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/creation_data.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/creation_data.py new file mode 100644 index 000000000000..788d10ece334 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/creation_data.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CreationData(Model): + """Data used when creating a disk. + + All required parameters must be populated in order to send to Azure. + + :param create_option: Required. This enumerates the possible sources of a + disk's creation. Possible values include: 'Empty', 'Attach', 'FromImage', + 'Import', 'Copy', 'Restore' + :type create_option: str or + ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOption + :param storage_account_id: If createOption is Import, the Azure Resource + Manager identifier of the storage account containing the blob to import as + a disk. Required only if the blob is in a different subscription + :type storage_account_id: str + :param image_reference: Disk source information. + :type image_reference: + ~azure.mgmt.compute.v2018_06_01.models.ImageDiskReference + :param source_uri: If createOption is Import, this is the URI of a blob to + be imported into a managed disk. + :type source_uri: str + :param source_resource_id: If createOption is Copy, this is the ARM id of + the source snapshot or disk. + :type source_resource_id: str + """ + + _validation = { + 'create_option': {'required': True}, + } + + _attribute_map = { + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'storage_account_id': {'key': 'storageAccountId', 'type': 'str'}, + 'image_reference': {'key': 'imageReference', 'type': 'ImageDiskReference'}, + 'source_uri': {'key': 'sourceUri', 'type': 'str'}, + 'source_resource_id': {'key': 'sourceResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CreationData, self).__init__(**kwargs) + self.create_option = kwargs.get('create_option', None) + self.storage_account_id = kwargs.get('storage_account_id', None) + self.image_reference = kwargs.get('image_reference', None) + self.source_uri = kwargs.get('source_uri', None) + self.source_resource_id = kwargs.get('source_resource_id', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/creation_data_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/creation_data_py3.py new file mode 100644 index 000000000000..834999d555af --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/creation_data_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CreationData(Model): + """Data used when creating a disk. + + All required parameters must be populated in order to send to Azure. + + :param create_option: Required. This enumerates the possible sources of a + disk's creation. Possible values include: 'Empty', 'Attach', 'FromImage', + 'Import', 'Copy', 'Restore' + :type create_option: str or + ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOption + :param storage_account_id: If createOption is Import, the Azure Resource + Manager identifier of the storage account containing the blob to import as + a disk. Required only if the blob is in a different subscription + :type storage_account_id: str + :param image_reference: Disk source information. + :type image_reference: + ~azure.mgmt.compute.v2018_06_01.models.ImageDiskReference + :param source_uri: If createOption is Import, this is the URI of a blob to + be imported into a managed disk. + :type source_uri: str + :param source_resource_id: If createOption is Copy, this is the ARM id of + the source snapshot or disk. + :type source_resource_id: str + """ + + _validation = { + 'create_option': {'required': True}, + } + + _attribute_map = { + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'storage_account_id': {'key': 'storageAccountId', 'type': 'str'}, + 'image_reference': {'key': 'imageReference', 'type': 'ImageDiskReference'}, + 'source_uri': {'key': 'sourceUri', 'type': 'str'}, + 'source_resource_id': {'key': 'sourceResourceId', 'type': 'str'}, + } + + def __init__(self, *, create_option, storage_account_id: str=None, image_reference=None, source_uri: str=None, source_resource_id: str=None, **kwargs) -> None: + super(CreationData, self).__init__(**kwargs) + self.create_option = create_option + self.storage_account_id = storage_account_id + self.image_reference = image_reference + self.source_uri = source_uri + self.source_resource_id = source_resource_id diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/data_disk.py index 13e4cbe4499e..82ac3b499fa2 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/data_disk.py @@ -49,7 +49,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/data_disk_py3.py index 84ca02e05d3d..5a12f5f91bea 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/data_disk_py3.py @@ -49,7 +49,7 @@ class DataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diagnostics_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diagnostics_profile.py index 79cfd1e65745..f72721038694 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diagnostics_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diagnostics_profile.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_06_01.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diagnostics_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diagnostics_profile_py3.py index 472d61da6fba..da0a1e350105 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diagnostics_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diagnostics_profile_py3.py @@ -18,8 +18,7 @@ class DiagnosticsProfile(Model): :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_06_01.models.BootDiagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diff_disk_settings.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diff_disk_settings.py new file mode 100644 index 000000000000..028ade1b9cb8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diff_disk_settings.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiffDiskSettings(Model): + """Describes the parameters of differencing disk settings that can be be + specified for operating system disk.

NOTE: The differencing disk + settings can only be specified for managed disk. + + :param option: Specifies the differencing disk settings for operating + system disk. Possible values include: 'Local' + :type option: str or + ~azure.mgmt.compute.v2018_06_01.models.DiffDiskOptions + """ + + _attribute_map = { + 'option': {'key': 'option', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DiffDiskSettings, self).__init__(**kwargs) + self.option = kwargs.get('option', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diff_disk_settings_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diff_disk_settings_py3.py new file mode 100644 index 000000000000..25c1bfa697fa --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/diff_disk_settings_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiffDiskSettings(Model): + """Describes the parameters of differencing disk settings that can be be + specified for operating system disk.

NOTE: The differencing disk + settings can only be specified for managed disk. + + :param option: Specifies the differencing disk settings for operating + system disk. Possible values include: 'Local' + :type option: str or + ~azure.mgmt.compute.v2018_06_01.models.DiffDiskOptions + """ + + _attribute_map = { + 'option': {'key': 'option', 'type': 'str'}, + } + + def __init__(self, *, option=None, **kwargs) -> None: + super(DiffDiskSettings, self).__init__(**kwargs) + self.option = option diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk.py new file mode 100644 index 000000000000..90f5bc9d0b3d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk.py @@ -0,0 +1,112 @@ +# 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 .resource import Resource + + +class Disk(Resource): + """Disk resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar managed_by: A relative URI containing the ID of the VM that has the + disk attached. + :vartype managed_by: str + :param sku: + :type sku: ~azure.mgmt.compute.v2018_06_01.models.DiskSku + :param zones: The Logical zone list for Disk. + :type zones: list[str] + :ivar time_created: The time when the disk was created. + :vartype time_created: datetime + :param os_type: The Operating System type. Possible values include: + 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes + :param creation_data: Required. Disk source information. CreationData + information cannot be changed after the disk has been created. + :type creation_data: ~azure.mgmt.compute.v2018_06_01.models.CreationData + :param disk_size_gb: If creationData.createOption is Empty, this field is + mandatory and it indicates the size of the VHD to create. If this field is + present for updates or creation with other options, it indicates a resize. + Resizes are only allowed if the disk is not attached to a running VM, and + can only increase the disk's size. + :type disk_size_gb: int + :param encryption_settings: Encryption settings for disk or snapshot + :type encryption_settings: + ~azure.mgmt.compute.v2018_06_01.models.EncryptionSettings + :ivar provisioning_state: The disk provisioning state. + :vartype provisioning_state: str + :param disk_iops_read_write: The number of IOPS allowed for this disk; + only settable for UltraSSD disks. One operation can transfer between 4k + and 256k bytes. + :type disk_iops_read_write: long + :param disk_mbps_read_write: The bandwidth allowed for this disk; only + settable for UltraSSD disks. MBps means millions of bytes per second - MB + here uses the ISO notation, of powers of 10. + :type disk_mbps_read_write: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'managed_by': {'readonly': True}, + 'time_created': {'readonly': True}, + 'creation_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed_by': {'key': 'managedBy', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'DiskSku'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + 'time_created': {'key': 'properties.timeCreated', 'type': 'iso-8601'}, + 'os_type': {'key': 'properties.osType', 'type': 'OperatingSystemTypes'}, + 'creation_data': {'key': 'properties.creationData', 'type': 'CreationData'}, + 'disk_size_gb': {'key': 'properties.diskSizeGB', 'type': 'int'}, + 'encryption_settings': {'key': 'properties.encryptionSettings', 'type': 'EncryptionSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'disk_iops_read_write': {'key': 'properties.diskIOPSReadWrite', 'type': 'long'}, + 'disk_mbps_read_write': {'key': 'properties.diskMBpsReadWrite', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(Disk, self).__init__(**kwargs) + self.managed_by = None + self.sku = kwargs.get('sku', None) + self.zones = kwargs.get('zones', None) + self.time_created = None + self.os_type = kwargs.get('os_type', None) + self.creation_data = kwargs.get('creation_data', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.encryption_settings = kwargs.get('encryption_settings', None) + self.provisioning_state = None + self.disk_iops_read_write = kwargs.get('disk_iops_read_write', None) + self.disk_mbps_read_write = kwargs.get('disk_mbps_read_write', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_paged.py new file mode 100644 index 000000000000..d51f242cd3bf --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DiskPaged(Paged): + """ + A paging container for iterating over a list of :class:`Disk ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Disk]'} + } + + def __init__(self, *args, **kwargs): + + super(DiskPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_py3.py new file mode 100644 index 000000000000..1c4d9ac33fd9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_py3.py @@ -0,0 +1,112 @@ +# 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 .resource_py3 import Resource + + +class Disk(Resource): + """Disk resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar managed_by: A relative URI containing the ID of the VM that has the + disk attached. + :vartype managed_by: str + :param sku: + :type sku: ~azure.mgmt.compute.v2018_06_01.models.DiskSku + :param zones: The Logical zone list for Disk. + :type zones: list[str] + :ivar time_created: The time when the disk was created. + :vartype time_created: datetime + :param os_type: The Operating System type. Possible values include: + 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes + :param creation_data: Required. Disk source information. CreationData + information cannot be changed after the disk has been created. + :type creation_data: ~azure.mgmt.compute.v2018_06_01.models.CreationData + :param disk_size_gb: If creationData.createOption is Empty, this field is + mandatory and it indicates the size of the VHD to create. If this field is + present for updates or creation with other options, it indicates a resize. + Resizes are only allowed if the disk is not attached to a running VM, and + can only increase the disk's size. + :type disk_size_gb: int + :param encryption_settings: Encryption settings for disk or snapshot + :type encryption_settings: + ~azure.mgmt.compute.v2018_06_01.models.EncryptionSettings + :ivar provisioning_state: The disk provisioning state. + :vartype provisioning_state: str + :param disk_iops_read_write: The number of IOPS allowed for this disk; + only settable for UltraSSD disks. One operation can transfer between 4k + and 256k bytes. + :type disk_iops_read_write: long + :param disk_mbps_read_write: The bandwidth allowed for this disk; only + settable for UltraSSD disks. MBps means millions of bytes per second - MB + here uses the ISO notation, of powers of 10. + :type disk_mbps_read_write: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'managed_by': {'readonly': True}, + 'time_created': {'readonly': True}, + 'creation_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed_by': {'key': 'managedBy', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'DiskSku'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + 'time_created': {'key': 'properties.timeCreated', 'type': 'iso-8601'}, + 'os_type': {'key': 'properties.osType', 'type': 'OperatingSystemTypes'}, + 'creation_data': {'key': 'properties.creationData', 'type': 'CreationData'}, + 'disk_size_gb': {'key': 'properties.diskSizeGB', 'type': 'int'}, + 'encryption_settings': {'key': 'properties.encryptionSettings', 'type': 'EncryptionSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'disk_iops_read_write': {'key': 'properties.diskIOPSReadWrite', 'type': 'long'}, + 'disk_mbps_read_write': {'key': 'properties.diskMBpsReadWrite', 'type': 'int'}, + } + + def __init__(self, *, location: str, creation_data, tags=None, sku=None, zones=None, os_type=None, disk_size_gb: int=None, encryption_settings=None, disk_iops_read_write: int=None, disk_mbps_read_write: int=None, **kwargs) -> None: + super(Disk, self).__init__(location=location, tags=tags, **kwargs) + self.managed_by = None + self.sku = sku + self.zones = zones + self.time_created = None + self.os_type = os_type + self.creation_data = creation_data + self.disk_size_gb = disk_size_gb + self.encryption_settings = encryption_settings + self.provisioning_state = None + self.disk_iops_read_write = disk_iops_read_write + self.disk_mbps_read_write = disk_mbps_read_write diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_sku.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_sku.py new file mode 100644 index 000000000000..802ea83e4151 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_sku.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiskSku(Model): + """The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, or + UltraSSD_LRS. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: The sku name. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type name: str or + ~azure.mgmt.compute.v2018_06_01.models.DiskStorageAccountTypes + :ivar tier: The sku tier. Default value: "Standard" . + :vartype tier: str + """ + + _validation = { + 'tier': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DiskSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_sku_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_sku_py3.py new file mode 100644 index 000000000000..2a98570cde4d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_sku_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiskSku(Model): + """The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, or + UltraSSD_LRS. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: The sku name. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type name: str or + ~azure.mgmt.compute.v2018_06_01.models.DiskStorageAccountTypes + :ivar tier: The sku tier. Default value: "Standard" . + :vartype tier: str + """ + + _validation = { + 'tier': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(DiskSku, self).__init__(**kwargs) + self.name = name + self.tier = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_update.py new file mode 100644 index 000000000000..13e8753cefb7 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_update.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiskUpdate(Model): + """Disk update resource. + + :param os_type: the Operating System type. Possible values include: + 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes + :param disk_size_gb: If creationData.createOption is Empty, this field is + mandatory and it indicates the size of the VHD to create. If this field is + present for updates or creation with other options, it indicates a resize. + Resizes are only allowed if the disk is not attached to a running VM, and + can only increase the disk's size. + :type disk_size_gb: int + :param encryption_settings: Encryption settings for disk or snapshot + :type encryption_settings: + ~azure.mgmt.compute.v2018_06_01.models.EncryptionSettings + :param disk_iops_read_write: The number of IOPS allowed for this disk; + only settable for UltraSSD disks. One operation can transfer between 4k + and 256k bytes. + :type disk_iops_read_write: long + :param disk_mbps_read_write: The bandwidth allowed for this disk; only + settable for UltraSSD disks. MBps means millions of bytes per second - MB + here uses the ISO notation, of powers of 10. + :type disk_mbps_read_write: int + :param tags: Resource tags + :type tags: dict[str, str] + :param sku: + :type sku: ~azure.mgmt.compute.v2018_06_01.models.DiskSku + """ + + _attribute_map = { + 'os_type': {'key': 'properties.osType', 'type': 'OperatingSystemTypes'}, + 'disk_size_gb': {'key': 'properties.diskSizeGB', 'type': 'int'}, + 'encryption_settings': {'key': 'properties.encryptionSettings', 'type': 'EncryptionSettings'}, + 'disk_iops_read_write': {'key': 'properties.diskIOPSReadWrite', 'type': 'long'}, + 'disk_mbps_read_write': {'key': 'properties.diskMBpsReadWrite', 'type': 'int'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'DiskSku'}, + } + + def __init__(self, **kwargs): + super(DiskUpdate, self).__init__(**kwargs) + self.os_type = kwargs.get('os_type', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.encryption_settings = kwargs.get('encryption_settings', None) + self.disk_iops_read_write = kwargs.get('disk_iops_read_write', None) + self.disk_mbps_read_write = kwargs.get('disk_mbps_read_write', None) + self.tags = kwargs.get('tags', None) + self.sku = kwargs.get('sku', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_update_py3.py new file mode 100644 index 000000000000..ed3cd1f878e0 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/disk_update_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiskUpdate(Model): + """Disk update resource. + + :param os_type: the Operating System type. Possible values include: + 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes + :param disk_size_gb: If creationData.createOption is Empty, this field is + mandatory and it indicates the size of the VHD to create. If this field is + present for updates or creation with other options, it indicates a resize. + Resizes are only allowed if the disk is not attached to a running VM, and + can only increase the disk's size. + :type disk_size_gb: int + :param encryption_settings: Encryption settings for disk or snapshot + :type encryption_settings: + ~azure.mgmt.compute.v2018_06_01.models.EncryptionSettings + :param disk_iops_read_write: The number of IOPS allowed for this disk; + only settable for UltraSSD disks. One operation can transfer between 4k + and 256k bytes. + :type disk_iops_read_write: long + :param disk_mbps_read_write: The bandwidth allowed for this disk; only + settable for UltraSSD disks. MBps means millions of bytes per second - MB + here uses the ISO notation, of powers of 10. + :type disk_mbps_read_write: int + :param tags: Resource tags + :type tags: dict[str, str] + :param sku: + :type sku: ~azure.mgmt.compute.v2018_06_01.models.DiskSku + """ + + _attribute_map = { + 'os_type': {'key': 'properties.osType', 'type': 'OperatingSystemTypes'}, + 'disk_size_gb': {'key': 'properties.diskSizeGB', 'type': 'int'}, + 'encryption_settings': {'key': 'properties.encryptionSettings', 'type': 'EncryptionSettings'}, + 'disk_iops_read_write': {'key': 'properties.diskIOPSReadWrite', 'type': 'long'}, + 'disk_mbps_read_write': {'key': 'properties.diskMBpsReadWrite', 'type': 'int'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'DiskSku'}, + } + + def __init__(self, *, os_type=None, disk_size_gb: int=None, encryption_settings=None, disk_iops_read_write: int=None, disk_mbps_read_write: int=None, tags=None, sku=None, **kwargs) -> None: + super(DiskUpdate, self).__init__(**kwargs) + self.os_type = os_type + self.disk_size_gb = disk_size_gb + self.encryption_settings = encryption_settings + self.disk_iops_read_write = disk_iops_read_write + self.disk_mbps_read_write = disk_mbps_read_write + self.tags = tags + self.sku = sku diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/encryption_settings.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/encryption_settings.py new file mode 100644 index 000000000000..14584c01005c --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/encryption_settings.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EncryptionSettings(Model): + """Encryption settings for disk or snapshot. + + :param enabled: Set this flag to true and provide DiskEncryptionKey and + optional KeyEncryptionKey to enable encryption. Set this flag to false and + remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If + EncryptionSettings is null in the request object, the existing settings + remain unchanged. + :type enabled: bool + :param disk_encryption_key: Key Vault Secret Url and vault id of the disk + encryption key + :type disk_encryption_key: + ~azure.mgmt.compute.v2018_06_01.models.KeyVaultAndSecretReference + :param key_encryption_key: Key Vault Key Url and vault id of the key + encryption key + :type key_encryption_key: + ~azure.mgmt.compute.v2018_06_01.models.KeyVaultAndKeyReference + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'disk_encryption_key': {'key': 'diskEncryptionKey', 'type': 'KeyVaultAndSecretReference'}, + 'key_encryption_key': {'key': 'keyEncryptionKey', 'type': 'KeyVaultAndKeyReference'}, + } + + def __init__(self, **kwargs): + super(EncryptionSettings, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.disk_encryption_key = kwargs.get('disk_encryption_key', None) + self.key_encryption_key = kwargs.get('key_encryption_key', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/encryption_settings_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/encryption_settings_py3.py new file mode 100644 index 000000000000..94d40ae9eebe --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/encryption_settings_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EncryptionSettings(Model): + """Encryption settings for disk or snapshot. + + :param enabled: Set this flag to true and provide DiskEncryptionKey and + optional KeyEncryptionKey to enable encryption. Set this flag to false and + remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If + EncryptionSettings is null in the request object, the existing settings + remain unchanged. + :type enabled: bool + :param disk_encryption_key: Key Vault Secret Url and vault id of the disk + encryption key + :type disk_encryption_key: + ~azure.mgmt.compute.v2018_06_01.models.KeyVaultAndSecretReference + :param key_encryption_key: Key Vault Key Url and vault id of the key + encryption key + :type key_encryption_key: + ~azure.mgmt.compute.v2018_06_01.models.KeyVaultAndKeyReference + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'disk_encryption_key': {'key': 'diskEncryptionKey', 'type': 'KeyVaultAndSecretReference'}, + 'key_encryption_key': {'key': 'keyEncryptionKey', 'type': 'KeyVaultAndKeyReference'}, + } + + def __init__(self, *, enabled: bool=None, disk_encryption_key=None, key_encryption_key=None, **kwargs) -> None: + super(EncryptionSettings, self).__init__(**kwargs) + self.enabled = enabled + self.disk_encryption_key = disk_encryption_key + self.key_encryption_key = key_encryption_key diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery.py index 5dfdc18e1734..8b7969b69f8d 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery.py @@ -13,7 +13,8 @@ class Gallery(Resource): - """Specifies information about the gallery that you want to create or update. + """Specifies information about the Shared Image Gallery that you want to + create or update. Variables are only populated by the server, and will be ignored when sending a request. @@ -30,7 +31,8 @@ class Gallery(Resource): :type location: str :param tags: Resource tags :type tags: dict[str, str] - :param description: The description of this gallery resource. + :param description: The description of this Shared Image Gallery resource. + This property is updateable. :type description: str :param identifier: :type identifier: ~azure.mgmt.compute.v2018_06_01.models.GalleryIdentifier diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_publishing_profile_base.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_publishing_profile_base.py index 8b01e7c2da2c..03e5df90a768 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_publishing_profile_base.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_publishing_profile_base.py @@ -15,18 +15,26 @@ class GalleryArtifactPublishingProfileBase(Model): """Describes the basic gallery artifact publishing profile. - :param regions: The regions where the artifact is going to be published. - :type regions: list[str] - :param source: + All required parameters must be populated in order to send to Azure. + + :param target_regions: The target regions where the Image Version is going + to be replicated to. This property is updateable. + :type target_regions: + list[~azure.mgmt.compute.v2018_06_01.models.TargetRegion] + :param source: Required. :type source: ~azure.mgmt.compute.v2018_06_01.models.GalleryArtifactSource """ + _validation = { + 'source': {'required': True}, + } + _attribute_map = { - 'regions': {'key': 'regions', 'type': '[str]'}, + 'target_regions': {'key': 'targetRegions', 'type': '[TargetRegion]'}, 'source': {'key': 'source', 'type': 'GalleryArtifactSource'}, } def __init__(self, **kwargs): super(GalleryArtifactPublishingProfileBase, self).__init__(**kwargs) - self.regions = kwargs.get('regions', None) + self.target_regions = kwargs.get('target_regions', None) self.source = kwargs.get('source', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_publishing_profile_base_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_publishing_profile_base_py3.py index 5a69aa10ec9e..45a9ad013174 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_publishing_profile_base_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_publishing_profile_base_py3.py @@ -15,18 +15,26 @@ class GalleryArtifactPublishingProfileBase(Model): """Describes the basic gallery artifact publishing profile. - :param regions: The regions where the artifact is going to be published. - :type regions: list[str] - :param source: + All required parameters must be populated in order to send to Azure. + + :param target_regions: The target regions where the Image Version is going + to be replicated to. This property is updateable. + :type target_regions: + list[~azure.mgmt.compute.v2018_06_01.models.TargetRegion] + :param source: Required. :type source: ~azure.mgmt.compute.v2018_06_01.models.GalleryArtifactSource """ + _validation = { + 'source': {'required': True}, + } + _attribute_map = { - 'regions': {'key': 'regions', 'type': '[str]'}, + 'target_regions': {'key': 'targetRegions', 'type': '[TargetRegion]'}, 'source': {'key': 'source', 'type': 'GalleryArtifactSource'}, } - def __init__(self, *, regions=None, source=None, **kwargs) -> None: + def __init__(self, *, source, target_regions=None, **kwargs) -> None: super(GalleryArtifactPublishingProfileBase, self).__init__(**kwargs) - self.regions = regions + self.target_regions = target_regions self.source = source diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_source.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_source.py index a4b32f9ccb89..7e653ff73b50 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_source.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_source.py @@ -13,13 +13,19 @@ class GalleryArtifactSource(Model): - """The source of the gallery artifact. + """The source image from which the Image Version is going to be created. - :param managed_image: + All required parameters must be populated in order to send to Azure. + + :param managed_image: Required. :type managed_image: ~azure.mgmt.compute.v2018_06_01.models.ManagedArtifact """ + _validation = { + 'managed_image': {'required': True}, + } + _attribute_map = { 'managed_image': {'key': 'managedImage', 'type': 'ManagedArtifact'}, } diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_source_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_source_py3.py index 77e793f91b43..0428d4d3ce0b 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_source_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_artifact_source_py3.py @@ -13,17 +13,23 @@ class GalleryArtifactSource(Model): - """The source of the gallery artifact. + """The source image from which the Image Version is going to be created. - :param managed_image: + All required parameters must be populated in order to send to Azure. + + :param managed_image: Required. :type managed_image: ~azure.mgmt.compute.v2018_06_01.models.ManagedArtifact """ + _validation = { + 'managed_image': {'required': True}, + } + _attribute_map = { 'managed_image': {'key': 'managedImage', 'type': 'ManagedArtifact'}, } - def __init__(self, *, managed_image=None, **kwargs) -> None: + def __init__(self, *, managed_image, **kwargs) -> None: super(GalleryArtifactSource, self).__init__(**kwargs) self.managed_image = managed_image diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_data_disk_image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_data_disk_image.py index 88efa05270a0..fc5413c0f896 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_data_disk_image.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_data_disk_image.py @@ -18,16 +18,18 @@ class GalleryDataDiskImage(GalleryDiskImage): Variables are only populated by the server, and will be ignored when sending a request. - :ivar size_in_gb: It indicates the size of the VHD to create. + :ivar size_in_gb: This property indicates the size of the VHD to be + created. :vartype size_in_gb: int :ivar host_caching: The host caching of the disk. Valid values are 'None', 'ReadOnly', and 'ReadWrite'. Possible values include: 'None', 'ReadOnly', 'ReadWrite' :vartype host_caching: str or ~azure.mgmt.compute.v2018_06_01.models.HostCaching - :ivar lun: Specifies the logical unit number of the data disk. This value - is used to identify data disks within the VM and therefore must be unique - for each data disk attached to a VM. + :ivar lun: This property specifies the logical unit number of the data + disk. This value is used to identify data disks within the Virtual Machine + and therefore must be unique for each data disk attached to the Virtual + Machine. :vartype lun: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_data_disk_image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_data_disk_image_py3.py index 06b2a569818b..a31d13a83397 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_data_disk_image_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_data_disk_image_py3.py @@ -18,16 +18,18 @@ class GalleryDataDiskImage(GalleryDiskImage): Variables are only populated by the server, and will be ignored when sending a request. - :ivar size_in_gb: It indicates the size of the VHD to create. + :ivar size_in_gb: This property indicates the size of the VHD to be + created. :vartype size_in_gb: int :ivar host_caching: The host caching of the disk. Valid values are 'None', 'ReadOnly', and 'ReadWrite'. Possible values include: 'None', 'ReadOnly', 'ReadWrite' :vartype host_caching: str or ~azure.mgmt.compute.v2018_06_01.models.HostCaching - :ivar lun: Specifies the logical unit number of the data disk. This value - is used to identify data disks within the VM and therefore must be unique - for each data disk attached to a VM. + :ivar lun: This property specifies the logical unit number of the data + disk. This value is used to identify data disks within the Virtual Machine + and therefore must be unique for each data disk attached to the Virtual + Machine. :vartype lun: int """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_disk_image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_disk_image.py index b99d727114c9..58ea87f0af3a 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_disk_image.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_disk_image.py @@ -18,7 +18,8 @@ class GalleryDiskImage(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar size_in_gb: It indicates the size of the VHD to create. + :ivar size_in_gb: This property indicates the size of the VHD to be + created. :vartype size_in_gb: int :ivar host_caching: The host caching of the disk. Valid values are 'None', 'ReadOnly', and 'ReadWrite'. Possible values include: 'None', 'ReadOnly', diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_disk_image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_disk_image_py3.py index c27888c9a07e..44f832029d60 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_disk_image_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_disk_image_py3.py @@ -18,7 +18,8 @@ class GalleryDiskImage(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar size_in_gb: It indicates the size of the VHD to create. + :ivar size_in_gb: This property indicates the size of the VHD to be + created. :vartype size_in_gb: int :ivar host_caching: The host caching of the disk. Valid values are 'None', 'ReadOnly', and 'ReadWrite'. Possible values include: 'None', 'ReadOnly', diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_identifier.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_identifier.py index 015fc199542e..324d20c34cfd 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_identifier.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_identifier.py @@ -18,7 +18,8 @@ class GalleryIdentifier(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar unique_name: The unique name of the gallery + :ivar unique_name: The unique name of the Shared Image Gallery. This name + is generated automatically by Azure. :vartype unique_name: str """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_identifier_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_identifier_py3.py index 2b7f4e6555a6..d7279159b636 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_identifier_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_identifier_py3.py @@ -18,7 +18,8 @@ class GalleryIdentifier(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar unique_name: The unique name of the gallery + :ivar unique_name: The unique name of the Shared Image Gallery. This name + is generated automatically by Azure. :vartype unique_name: str """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image.py index 21af4252c4bf..551b1e979fa0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image.py @@ -13,8 +13,8 @@ class GalleryImage(Resource): - """Specifies information about the gallery image that you want to create or - update. + """Specifies information about the gallery Image Definition that you want to + create or update. Variables are only populated by the server, and will be ignored when sending a request. @@ -31,27 +31,30 @@ class GalleryImage(Resource): :type location: str :param tags: Resource tags :type tags: dict[str, str] - :param description: The description of this gallery image resource. + :param description: The description of this gallery Image Definition + resource. This property is updateable. :type description: str - :param eula: The Eula agreement for the gallery image. + :param eula: The Eula agreement for the gallery Image Definition. :type eula: str :param privacy_statement_uri: The privacy statement uri. :type privacy_statement_uri: str :param release_note_uri: The release note uri. :type release_note_uri: str - :param os_type: This property allows you to specify the type of the OS - that is included in the disk if creating a VM from user-image or a - specialized VHD.

Possible values are:

**Windows** -

**Linux**. Possible values include: 'Windows', 'Linux' + :param os_type: Required. This property allows you to specify the type of + the OS that is included in the disk when creating a VM from a managed + image.

Possible values are:

**Windows**

+ **Linux**. Possible values include: 'Windows', 'Linux' :type os_type: str or ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes - :param os_state: The OS State. Possible values include: 'Generalized', - 'Specialized' + :param os_state: Required. The allowed values for OS State are + 'Generalized'. Possible values include: 'Generalized', 'Specialized' :type os_state: str or ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemStateTypes - :param end_of_life_date: The end of life of this gallery image. + :param end_of_life_date: The end of life date of the gallery Image + Definition. This property can be used for decommissioning purposes. This + property is updateable. :type end_of_life_date: datetime - :param identifier: + :param identifier: Required. :type identifier: ~azure.mgmt.compute.v2018_06_01.models.GalleryImageIdentifier :param recommended: @@ -62,10 +65,10 @@ class GalleryImage(Resource): :param purchase_plan: :type purchase_plan: ~azure.mgmt.compute.v2018_06_01.models.ImagePurchasePlan - :ivar provisioning_state: The current state of the gallery image. The - provisioning state, which only appears in the response. Possible values - include: 'Creating', 'Updating', 'Failed', 'Succeeded', 'Deleting', - 'Migrating' + :ivar provisioning_state: The current state of the gallery Image + Definition. The provisioning state, which only appears in the response. + Possible values include: 'Creating', 'Updating', 'Failed', 'Succeeded', + 'Deleting', 'Migrating' :vartype provisioning_state: str or ~azure.mgmt.compute.v2018_06_01.models.enum """ @@ -75,6 +78,9 @@ class GalleryImage(Resource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'os_type': {'required': True}, + 'os_state': {'required': True}, + 'identifier': {'required': True}, 'provisioning_state': {'readonly': True}, } diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_identifier.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_identifier.py index 2f27b4d520aa..15699690de5e 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_identifier.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_identifier.py @@ -13,16 +13,25 @@ class GalleryImageIdentifier(Model): - """This is the gallery image identifier. + """This is the gallery Image Definition identifier. - :param publisher: The gallery image publisher name. + All required parameters must be populated in order to send to Azure. + + :param publisher: Required. The name of the gallery Image Definition + publisher. :type publisher: str - :param offer: The gallery image offer name. + :param offer: Required. The name of the gallery Image Definition offer. :type offer: str - :param sku: The gallery image sku name. + :param sku: Required. The name of the gallery Image Definition SKU. :type sku: str """ + _validation = { + 'publisher': {'required': True}, + 'offer': {'required': True}, + 'sku': {'required': True}, + } + _attribute_map = { 'publisher': {'key': 'publisher', 'type': 'str'}, 'offer': {'key': 'offer', 'type': 'str'}, diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_identifier_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_identifier_py3.py index b858e464271c..3876526cebe4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_identifier_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_identifier_py3.py @@ -13,23 +13,32 @@ class GalleryImageIdentifier(Model): - """This is the gallery image identifier. + """This is the gallery Image Definition identifier. - :param publisher: The gallery image publisher name. + All required parameters must be populated in order to send to Azure. + + :param publisher: Required. The name of the gallery Image Definition + publisher. :type publisher: str - :param offer: The gallery image offer name. + :param offer: Required. The name of the gallery Image Definition offer. :type offer: str - :param sku: The gallery image sku name. + :param sku: Required. The name of the gallery Image Definition SKU. :type sku: str """ + _validation = { + 'publisher': {'required': True}, + 'offer': {'required': True}, + 'sku': {'required': True}, + } + _attribute_map = { 'publisher': {'key': 'publisher', 'type': 'str'}, 'offer': {'key': 'offer', 'type': 'str'}, 'sku': {'key': 'sku', 'type': 'str'}, } - def __init__(self, *, publisher: str=None, offer: str=None, sku: str=None, **kwargs) -> None: + def __init__(self, *, publisher: str, offer: str, sku: str, **kwargs) -> None: super(GalleryImageIdentifier, self).__init__(**kwargs) self.publisher = publisher self.offer = offer diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_py3.py index ea37cbf9541b..c77aac090c0f 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_py3.py @@ -13,8 +13,8 @@ class GalleryImage(Resource): - """Specifies information about the gallery image that you want to create or - update. + """Specifies information about the gallery Image Definition that you want to + create or update. Variables are only populated by the server, and will be ignored when sending a request. @@ -31,27 +31,30 @@ class GalleryImage(Resource): :type location: str :param tags: Resource tags :type tags: dict[str, str] - :param description: The description of this gallery image resource. + :param description: The description of this gallery Image Definition + resource. This property is updateable. :type description: str - :param eula: The Eula agreement for the gallery image. + :param eula: The Eula agreement for the gallery Image Definition. :type eula: str :param privacy_statement_uri: The privacy statement uri. :type privacy_statement_uri: str :param release_note_uri: The release note uri. :type release_note_uri: str - :param os_type: This property allows you to specify the type of the OS - that is included in the disk if creating a VM from user-image or a - specialized VHD.

Possible values are:

**Windows** -

**Linux**. Possible values include: 'Windows', 'Linux' + :param os_type: Required. This property allows you to specify the type of + the OS that is included in the disk when creating a VM from a managed + image.

Possible values are:

**Windows**

+ **Linux**. Possible values include: 'Windows', 'Linux' :type os_type: str or ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes - :param os_state: The OS State. Possible values include: 'Generalized', - 'Specialized' + :param os_state: Required. The allowed values for OS State are + 'Generalized'. Possible values include: 'Generalized', 'Specialized' :type os_state: str or ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemStateTypes - :param end_of_life_date: The end of life of this gallery image. + :param end_of_life_date: The end of life date of the gallery Image + Definition. This property can be used for decommissioning purposes. This + property is updateable. :type end_of_life_date: datetime - :param identifier: + :param identifier: Required. :type identifier: ~azure.mgmt.compute.v2018_06_01.models.GalleryImageIdentifier :param recommended: @@ -62,10 +65,10 @@ class GalleryImage(Resource): :param purchase_plan: :type purchase_plan: ~azure.mgmt.compute.v2018_06_01.models.ImagePurchasePlan - :ivar provisioning_state: The current state of the gallery image. The - provisioning state, which only appears in the response. Possible values - include: 'Creating', 'Updating', 'Failed', 'Succeeded', 'Deleting', - 'Migrating' + :ivar provisioning_state: The current state of the gallery Image + Definition. The provisioning state, which only appears in the response. + Possible values include: 'Creating', 'Updating', 'Failed', 'Succeeded', + 'Deleting', 'Migrating' :vartype provisioning_state: str or ~azure.mgmt.compute.v2018_06_01.models.enum """ @@ -75,6 +78,9 @@ class GalleryImage(Resource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'os_type': {'required': True}, + 'os_state': {'required': True}, + 'identifier': {'required': True}, 'provisioning_state': {'readonly': True}, } @@ -98,7 +104,7 @@ class GalleryImage(Resource): 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, } - def __init__(self, *, location: str, tags=None, description: str=None, eula: str=None, privacy_statement_uri: str=None, release_note_uri: str=None, os_type=None, os_state=None, end_of_life_date=None, identifier=None, recommended=None, disallowed=None, purchase_plan=None, **kwargs) -> None: + def __init__(self, *, location: str, os_type, os_state, identifier, tags=None, description: str=None, eula: str=None, privacy_statement_uri: str=None, release_note_uri: str=None, end_of_life_date=None, recommended=None, disallowed=None, purchase_plan=None, **kwargs) -> None: super(GalleryImage, self).__init__(location=location, tags=tags, **kwargs) self.description = description self.eula = eula diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version.py index 69cdf916c67b..56db99959d98 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version.py @@ -13,7 +13,7 @@ class GalleryImageVersion(Resource): - """Specifies information about the gallery image version that you want to + """Specifies information about the gallery Image Version that you want to create or update. Variables are only populated by the server, and will be ignored when @@ -31,10 +31,10 @@ class GalleryImageVersion(Resource): :type location: str :param tags: Resource tags :type tags: dict[str, str] - :param publishing_profile: + :param publishing_profile: Required. :type publishing_profile: ~azure.mgmt.compute.v2018_06_01.models.GalleryImageVersionPublishingProfile - :ivar provisioning_state: The current state of the gallery image version. + :ivar provisioning_state: The current state of the gallery Image Version. The provisioning state, which only appears in the response. Possible values include: 'Creating', 'Updating', 'Failed', 'Succeeded', 'Deleting', 'Migrating' @@ -53,6 +53,7 @@ class GalleryImageVersion(Resource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'publishing_profile': {'required': True}, 'provisioning_state': {'readonly': True}, 'storage_profile': {'readonly': True}, 'replication_status': {'readonly': True}, diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_publishing_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_publishing_profile.py index e475a6192ec7..30c2b91ecdc5 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_publishing_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_publishing_profile.py @@ -13,37 +13,44 @@ class GalleryImageVersionPublishingProfile(GalleryArtifactPublishingProfileBase): - """The publishing profile of a gallery image version. + """The publishing profile of a gallery Image Version. Variables are only populated by the server, and will be ignored when sending a request. - :param regions: The regions where the artifact is going to be published. - :type regions: list[str] - :param source: + All required parameters must be populated in order to send to Azure. + + :param target_regions: The target regions where the Image Version is going + to be replicated to. This property is updateable. + :type target_regions: + list[~azure.mgmt.compute.v2018_06_01.models.TargetRegion] + :param source: Required. :type source: ~azure.mgmt.compute.v2018_06_01.models.GalleryArtifactSource - :param scale_tier: The scale tier of the gallery image version. Valid - values are 'S30' and 'S100'. Possible values include: 'S30', 'S100' - :type scale_tier: str or ~azure.mgmt.compute.v2018_06_01.models.ScaleTier - :param exclude_from_latest: The flag means that if it is set to true, - people deploying VMs with 'latest' as version will not use this version. + :param replica_count: The number of replicas of the Image Version to be + created per region. This property would take effect for a region when + regionalReplicaCount is not specified. This property is updateable. + :type replica_count: int + :param exclude_from_latest: If set to true, Virtual Machines deployed from + the latest version of the Image Definition won't use this Image Version. :type exclude_from_latest: bool - :ivar published_date: The time when the gallery image version is + :ivar published_date: The timestamp for when the gallery Image Version is published. :vartype published_date: datetime - :param end_of_life_date: The end of life date of the gallery image - version. + :param end_of_life_date: The end of life date of the gallery Image + Version. This property can be used for decommissioning purposes. This + property is updateable. :type end_of_life_date: datetime """ _validation = { + 'source': {'required': True}, 'published_date': {'readonly': True}, } _attribute_map = { - 'regions': {'key': 'regions', 'type': '[str]'}, + 'target_regions': {'key': 'targetRegions', 'type': '[TargetRegion]'}, 'source': {'key': 'source', 'type': 'GalleryArtifactSource'}, - 'scale_tier': {'key': 'scaleTier', 'type': 'str'}, + 'replica_count': {'key': 'replicaCount', 'type': 'int'}, 'exclude_from_latest': {'key': 'excludeFromLatest', 'type': 'bool'}, 'published_date': {'key': 'publishedDate', 'type': 'iso-8601'}, 'end_of_life_date': {'key': 'endOfLifeDate', 'type': 'iso-8601'}, @@ -51,7 +58,7 @@ class GalleryImageVersionPublishingProfile(GalleryArtifactPublishingProfileBase) def __init__(self, **kwargs): super(GalleryImageVersionPublishingProfile, self).__init__(**kwargs) - self.scale_tier = kwargs.get('scale_tier', None) + self.replica_count = kwargs.get('replica_count', None) self.exclude_from_latest = kwargs.get('exclude_from_latest', None) self.published_date = None self.end_of_life_date = kwargs.get('end_of_life_date', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_publishing_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_publishing_profile_py3.py index 13b13fdd244f..6372ad2792d8 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_publishing_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_publishing_profile_py3.py @@ -13,45 +13,52 @@ class GalleryImageVersionPublishingProfile(GalleryArtifactPublishingProfileBase): - """The publishing profile of a gallery image version. + """The publishing profile of a gallery Image Version. Variables are only populated by the server, and will be ignored when sending a request. - :param regions: The regions where the artifact is going to be published. - :type regions: list[str] - :param source: + All required parameters must be populated in order to send to Azure. + + :param target_regions: The target regions where the Image Version is going + to be replicated to. This property is updateable. + :type target_regions: + list[~azure.mgmt.compute.v2018_06_01.models.TargetRegion] + :param source: Required. :type source: ~azure.mgmt.compute.v2018_06_01.models.GalleryArtifactSource - :param scale_tier: The scale tier of the gallery image version. Valid - values are 'S30' and 'S100'. Possible values include: 'S30', 'S100' - :type scale_tier: str or ~azure.mgmt.compute.v2018_06_01.models.ScaleTier - :param exclude_from_latest: The flag means that if it is set to true, - people deploying VMs with 'latest' as version will not use this version. + :param replica_count: The number of replicas of the Image Version to be + created per region. This property would take effect for a region when + regionalReplicaCount is not specified. This property is updateable. + :type replica_count: int + :param exclude_from_latest: If set to true, Virtual Machines deployed from + the latest version of the Image Definition won't use this Image Version. :type exclude_from_latest: bool - :ivar published_date: The time when the gallery image version is + :ivar published_date: The timestamp for when the gallery Image Version is published. :vartype published_date: datetime - :param end_of_life_date: The end of life date of the gallery image - version. + :param end_of_life_date: The end of life date of the gallery Image + Version. This property can be used for decommissioning purposes. This + property is updateable. :type end_of_life_date: datetime """ _validation = { + 'source': {'required': True}, 'published_date': {'readonly': True}, } _attribute_map = { - 'regions': {'key': 'regions', 'type': '[str]'}, + 'target_regions': {'key': 'targetRegions', 'type': '[TargetRegion]'}, 'source': {'key': 'source', 'type': 'GalleryArtifactSource'}, - 'scale_tier': {'key': 'scaleTier', 'type': 'str'}, + 'replica_count': {'key': 'replicaCount', 'type': 'int'}, 'exclude_from_latest': {'key': 'excludeFromLatest', 'type': 'bool'}, 'published_date': {'key': 'publishedDate', 'type': 'iso-8601'}, 'end_of_life_date': {'key': 'endOfLifeDate', 'type': 'iso-8601'}, } - def __init__(self, *, regions=None, source=None, scale_tier=None, exclude_from_latest: bool=None, end_of_life_date=None, **kwargs) -> None: - super(GalleryImageVersionPublishingProfile, self).__init__(regions=regions, source=source, **kwargs) - self.scale_tier = scale_tier + def __init__(self, *, source, target_regions=None, replica_count: int=None, exclude_from_latest: bool=None, end_of_life_date=None, **kwargs) -> None: + super(GalleryImageVersionPublishingProfile, self).__init__(target_regions=target_regions, source=source, **kwargs) + self.replica_count = replica_count self.exclude_from_latest = exclude_from_latest self.published_date = None self.end_of_life_date = end_of_life_date diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_py3.py index b01071bd2279..61890bef61d4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_py3.py @@ -13,7 +13,7 @@ class GalleryImageVersion(Resource): - """Specifies information about the gallery image version that you want to + """Specifies information about the gallery Image Version that you want to create or update. Variables are only populated by the server, and will be ignored when @@ -31,10 +31,10 @@ class GalleryImageVersion(Resource): :type location: str :param tags: Resource tags :type tags: dict[str, str] - :param publishing_profile: + :param publishing_profile: Required. :type publishing_profile: ~azure.mgmt.compute.v2018_06_01.models.GalleryImageVersionPublishingProfile - :ivar provisioning_state: The current state of the gallery image version. + :ivar provisioning_state: The current state of the gallery Image Version. The provisioning state, which only appears in the response. Possible values include: 'Creating', 'Updating', 'Failed', 'Succeeded', 'Deleting', 'Migrating' @@ -53,6 +53,7 @@ class GalleryImageVersion(Resource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'publishing_profile': {'required': True}, 'provisioning_state': {'readonly': True}, 'storage_profile': {'readonly': True}, 'replication_status': {'readonly': True}, @@ -70,7 +71,7 @@ class GalleryImageVersion(Resource): 'replication_status': {'key': 'properties.replicationStatus', 'type': 'ReplicationStatus'}, } - def __init__(self, *, location: str, tags=None, publishing_profile=None, **kwargs) -> None: + def __init__(self, *, location: str, publishing_profile, tags=None, **kwargs) -> None: super(GalleryImageVersion, self).__init__(location=location, tags=tags, **kwargs) self.publishing_profile = publishing_profile self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_storage_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_storage_profile.py index 0a213a2f051d..b9deddba3ad0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_storage_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_storage_profile.py @@ -13,7 +13,7 @@ class GalleryImageVersionStorageProfile(Model): - """This is the storage profile of a gallery image version. + """This is the storage profile of a gallery Image Version. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_storage_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_storage_profile_py3.py index ea45b454b07c..9703a40fe507 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_storage_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_image_version_storage_profile_py3.py @@ -13,7 +13,7 @@ class GalleryImageVersionStorageProfile(Model): - """This is the storage profile of a gallery image version. + """This is the storage profile of a gallery Image Version. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_os_disk_image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_os_disk_image.py index 75b6dde7e996..6ed9165cd45f 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_os_disk_image.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_os_disk_image.py @@ -18,7 +18,8 @@ class GalleryOSDiskImage(GalleryDiskImage): Variables are only populated by the server, and will be ignored when sending a request. - :ivar size_in_gb: It indicates the size of the VHD to create. + :ivar size_in_gb: This property indicates the size of the VHD to be + created. :vartype size_in_gb: int :ivar host_caching: The host caching of the disk. Valid values are 'None', 'ReadOnly', and 'ReadWrite'. Possible values include: 'None', 'ReadOnly', diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_os_disk_image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_os_disk_image_py3.py index 8981e015c475..52a0833d369d 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_os_disk_image_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_os_disk_image_py3.py @@ -18,7 +18,8 @@ class GalleryOSDiskImage(GalleryDiskImage): Variables are only populated by the server, and will be ignored when sending a request. - :ivar size_in_gb: It indicates the size of the VHD to create. + :ivar size_in_gb: This property indicates the size of the VHD to be + created. :vartype size_in_gb: int :ivar host_caching: The host caching of the disk. Valid values are 'None', 'ReadOnly', and 'ReadWrite'. Possible values include: 'None', 'ReadOnly', diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_py3.py index 87dcabacdbe7..622cfb61cb2c 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/gallery_py3.py @@ -13,7 +13,8 @@ class Gallery(Resource): - """Specifies information about the gallery that you want to create or update. + """Specifies information about the Shared Image Gallery that you want to + create or update. Variables are only populated by the server, and will be ignored when sending a request. @@ -30,7 +31,8 @@ class Gallery(Resource): :type location: str :param tags: Resource tags :type tags: dict[str, str] - :param description: The description of this gallery resource. + :param description: The description of this Shared Image Gallery resource. + This property is updateable. :type description: str :param identifier: :type identifier: ~azure.mgmt.compute.v2018_06_01.models.GalleryIdentifier diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/grant_access_data.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/grant_access_data.py new file mode 100644 index 000000000000..39d400ba48f5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/grant_access_data.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GrantAccessData(Model): + """Data used for requesting a SAS. + + All required parameters must be populated in order to send to Azure. + + :param access: Required. Possible values include: 'None', 'Read' + :type access: str or ~azure.mgmt.compute.v2018_06_01.models.AccessLevel + :param duration_in_seconds: Required. Time duration in seconds until the + SAS access expires. + :type duration_in_seconds: int + """ + + _validation = { + 'access': {'required': True}, + 'duration_in_seconds': {'required': True}, + } + + _attribute_map = { + 'access': {'key': 'access', 'type': 'str'}, + 'duration_in_seconds': {'key': 'durationInSeconds', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(GrantAccessData, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.duration_in_seconds = kwargs.get('duration_in_seconds', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/grant_access_data_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/grant_access_data_py3.py new file mode 100644 index 000000000000..fe8ce77f24ee --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/grant_access_data_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GrantAccessData(Model): + """Data used for requesting a SAS. + + All required parameters must be populated in order to send to Azure. + + :param access: Required. Possible values include: 'None', 'Read' + :type access: str or ~azure.mgmt.compute.v2018_06_01.models.AccessLevel + :param duration_in_seconds: Required. Time duration in seconds until the + SAS access expires. + :type duration_in_seconds: int + """ + + _validation = { + 'access': {'required': True}, + 'duration_in_seconds': {'required': True}, + } + + _attribute_map = { + 'access': {'key': 'access', 'type': 'str'}, + 'duration_in_seconds': {'key': 'durationInSeconds', 'type': 'int'}, + } + + def __init__(self, *, access, duration_in_seconds: int, **kwargs) -> None: + super(GrantAccessData, self).__init__(**kwargs) + self.access = access + self.duration_in_seconds = duration_in_seconds diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_data_disk.py index ef006422c907..55dd251aa125 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_data_disk.py @@ -37,9 +37,9 @@ class ImageDataDisk(Model): machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param storage_account_type: Specifies the storage account type for the - managed disk. Possible values are: Standard_LRS, Premium_LRS, and - StandardSSD_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS', - 'StandardSSD_LRS' + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' :type storage_account_type: str or ~azure.mgmt.compute.v2018_06_01.models.StorageAccountTypes """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_data_disk_py3.py index ca60113b45bf..cad193d6eef7 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_data_disk_py3.py @@ -37,9 +37,9 @@ class ImageDataDisk(Model): machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param storage_account_type: Specifies the storage account type for the - managed disk. Possible values are: Standard_LRS, Premium_LRS, and - StandardSSD_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS', - 'StandardSSD_LRS' + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' :type storage_account_type: str or ~azure.mgmt.compute.v2018_06_01.models.StorageAccountTypes """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_disk_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_disk_reference.py new file mode 100644 index 000000000000..b47ddd445024 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_disk_reference.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageDiskReference(Model): + """The source image used for creating the disk. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. A relative uri containing either a Platform Image + Repository or user image reference. + :type id: str + :param lun: If the disk is created from an image's data disk, this is an + index that indicates which of the data disks in the image to use. For OS + disks, this field is null. + :type lun: int + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'lun': {'key': 'lun', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ImageDiskReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.lun = kwargs.get('lun', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_disk_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_disk_reference_py3.py new file mode 100644 index 000000000000..85bf966bc6e0 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_disk_reference_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageDiskReference(Model): + """The source image used for creating the disk. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. A relative uri containing either a Platform Image + Repository or user image reference. + :type id: str + :param lun: If the disk is created from an image's data disk, this is an + index that indicates which of the data disks in the image to use. For OS + disks, this field is null. + :type lun: int + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'lun': {'key': 'lun', 'type': 'int'}, + } + + def __init__(self, *, id: str, lun: int=None, **kwargs) -> None: + super(ImageDiskReference, self).__init__(**kwargs) + self.id = id + self.lun = lun diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_os_disk.py index 6cf7454c0e37..db287a53c829 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_os_disk.py @@ -43,9 +43,8 @@ class ImageOSDisk(Model): machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param storage_account_type: Specifies the storage account type for the - managed disk. Possible values are: Standard_LRS, Premium_LRS, and - StandardSSD_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS', - 'StandardSSD_LRS' + managed disk. UltraSSD_LRS cannot be used with OS Disk. Possible values + include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' :type storage_account_type: str or ~azure.mgmt.compute.v2018_06_01.models.StorageAccountTypes """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_os_disk_py3.py index 3f402e67cf9e..983e63d672e2 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_os_disk_py3.py @@ -43,9 +43,8 @@ class ImageOSDisk(Model): machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param storage_account_type: Specifies the storage account type for the - managed disk. Possible values are: Standard_LRS, Premium_LRS, and - StandardSSD_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS', - 'StandardSSD_LRS' + managed disk. UltraSSD_LRS cannot be used with OS Disk. Possible values + include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' :type storage_account_type: str or ~azure.mgmt.compute.v2018_06_01.models.StorageAccountTypes """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_purchase_plan.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_purchase_plan.py index 842a22340e45..5e0f4cbfe7ac 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_purchase_plan.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_purchase_plan.py @@ -13,8 +13,8 @@ class ImagePurchasePlan(Model): - """Describes the gallery image purchase plan. This is used by marketplace - images. + """Describes the gallery Image Definition purchase plan. This is used by + marketplace images. :param name: The plan ID. :type name: str diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_purchase_plan_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_purchase_plan_py3.py index 228dcc61c77c..7f9596924d7d 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_purchase_plan_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/image_purchase_plan_py3.py @@ -13,8 +13,8 @@ class ImagePurchasePlan(Model): - """Describes the gallery image purchase plan. This is used by marketplace - images. + """Describes the gallery Image Definition purchase plan. This is used by + marketplace images. :param name: The plan ID. :type name: str diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_key_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_key_reference.py new file mode 100644 index 000000000000..16ff78c677e4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_key_reference.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultAndKeyReference(Model): + """Key Vault Key Url and vault id of KeK, KeK is optional and when provided is + used to unwrap the encryptionKey. + + All required parameters must be populated in order to send to Azure. + + :param source_vault: Required. Resource id of the KeyVault containing the + key or secret + :type source_vault: ~azure.mgmt.compute.v2018_06_01.models.SourceVault + :param key_url: Required. Url pointing to a key or secret in KeyVault + :type key_url: str + """ + + _validation = { + 'source_vault': {'required': True}, + 'key_url': {'required': True}, + } + + _attribute_map = { + 'source_vault': {'key': 'sourceVault', 'type': 'SourceVault'}, + 'key_url': {'key': 'keyUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(KeyVaultAndKeyReference, self).__init__(**kwargs) + self.source_vault = kwargs.get('source_vault', None) + self.key_url = kwargs.get('key_url', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_key_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_key_reference_py3.py new file mode 100644 index 000000000000..20a79a09314b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_key_reference_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultAndKeyReference(Model): + """Key Vault Key Url and vault id of KeK, KeK is optional and when provided is + used to unwrap the encryptionKey. + + All required parameters must be populated in order to send to Azure. + + :param source_vault: Required. Resource id of the KeyVault containing the + key or secret + :type source_vault: ~azure.mgmt.compute.v2018_06_01.models.SourceVault + :param key_url: Required. Url pointing to a key or secret in KeyVault + :type key_url: str + """ + + _validation = { + 'source_vault': {'required': True}, + 'key_url': {'required': True}, + } + + _attribute_map = { + 'source_vault': {'key': 'sourceVault', 'type': 'SourceVault'}, + 'key_url': {'key': 'keyUrl', 'type': 'str'}, + } + + def __init__(self, *, source_vault, key_url: str, **kwargs) -> None: + super(KeyVaultAndKeyReference, self).__init__(**kwargs) + self.source_vault = source_vault + self.key_url = key_url diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_secret_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_secret_reference.py new file mode 100644 index 000000000000..09058d9fe672 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_secret_reference.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultAndSecretReference(Model): + """Key Vault Secret Url and vault id of the encryption key . + + All required parameters must be populated in order to send to Azure. + + :param source_vault: Required. Resource id of the KeyVault containing the + key or secret + :type source_vault: ~azure.mgmt.compute.v2018_06_01.models.SourceVault + :param secret_url: Required. Url pointing to a key or secret in KeyVault + :type secret_url: str + """ + + _validation = { + 'source_vault': {'required': True}, + 'secret_url': {'required': True}, + } + + _attribute_map = { + 'source_vault': {'key': 'sourceVault', 'type': 'SourceVault'}, + 'secret_url': {'key': 'secretUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(KeyVaultAndSecretReference, self).__init__(**kwargs) + self.source_vault = kwargs.get('source_vault', None) + self.secret_url = kwargs.get('secret_url', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_secret_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_secret_reference_py3.py new file mode 100644 index 000000000000..1266a3f8bc01 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/key_vault_and_secret_reference_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultAndSecretReference(Model): + """Key Vault Secret Url and vault id of the encryption key . + + All required parameters must be populated in order to send to Azure. + + :param source_vault: Required. Resource id of the KeyVault containing the + key or secret + :type source_vault: ~azure.mgmt.compute.v2018_06_01.models.SourceVault + :param secret_url: Required. Url pointing to a key or secret in KeyVault + :type secret_url: str + """ + + _validation = { + 'source_vault': {'required': True}, + 'secret_url': {'required': True}, + } + + _attribute_map = { + 'source_vault': {'key': 'sourceVault', 'type': 'SourceVault'}, + 'secret_url': {'key': 'secretUrl', 'type': 'str'}, + } + + def __init__(self, *, source_vault, secret_url: str, **kwargs) -> None: + super(KeyVaultAndSecretReference, self).__init__(**kwargs) + self.source_vault = source_vault + self.secret_url = secret_url diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_artifact.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_artifact.py index 75d0cf2708c0..753e9704d755 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_artifact.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_artifact.py @@ -15,10 +15,16 @@ class ManagedArtifact(Model): """The managed artifact. - :param id: The managed artifact id. + All required parameters must be populated in order to send to Azure. + + :param id: Required. The managed artifact id. :type id: str """ + _validation = { + 'id': {'required': True}, + } + _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, } diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_artifact_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_artifact_py3.py index 2afb7d06ce6a..0e8a6b2bfa40 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_artifact_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_artifact_py3.py @@ -15,14 +15,20 @@ class ManagedArtifact(Model): """The managed artifact. - :param id: The managed artifact id. + All required parameters must be populated in order to send to Azure. + + :param id: Required. The managed artifact id. :type id: str """ + _validation = { + 'id': {'required': True}, + } + _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, } - def __init__(self, *, id: str=None, **kwargs) -> None: + def __init__(self, *, id: str, **kwargs) -> None: super(ManagedArtifact, self).__init__(**kwargs) self.id = id diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_disk_parameters.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_disk_parameters.py index 0880da4ab1b8..9fa397ac98d7 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_disk_parameters.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_disk_parameters.py @@ -18,9 +18,9 @@ class ManagedDiskParameters(SubResource): :param id: Resource Id :type id: str :param storage_account_type: Specifies the storage account type for the - managed disk. Possible values are: Standard_LRS, Premium_LRS, and - StandardSSD_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS', - 'StandardSSD_LRS' + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' :type storage_account_type: str or ~azure.mgmt.compute.v2018_06_01.models.StorageAccountTypes """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_disk_parameters_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_disk_parameters_py3.py index f2c1408ccaab..bbf6a7770b56 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_disk_parameters_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/managed_disk_parameters_py3.py @@ -18,9 +18,9 @@ class ManagedDiskParameters(SubResource): :param id: Resource Id :type id: str :param storage_account_type: Specifies the storage account type for the - managed disk. Possible values are: Standard_LRS, Premium_LRS, and - StandardSSD_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS', - 'StandardSSD_LRS' + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' :type storage_account_type: str or ~azure.mgmt.compute.v2018_06_01.models.StorageAccountTypes """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/os_disk.py index 8b399ec2aa04..4914868b54df 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/os_disk.py @@ -47,6 +47,10 @@ class OSDisk(Model): :param write_accelerator_enabled: Specifies whether writeAccelerator should be enabled or disabled on the disk. :type write_accelerator_enabled: bool + :param diff_disk_settings: Specifies the differencing Disk Settings for + the operating system disk used by the virtual machine. + :type diff_disk_settings: + ~azure.mgmt.compute.v2018_06_01.models.DiffDiskSettings :param create_option: Required. Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual @@ -58,7 +62,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. @@ -78,6 +82,7 @@ class OSDisk(Model): 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, 'caching': {'key': 'caching', 'type': 'CachingTypes'}, 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'diff_disk_settings': {'key': 'diffDiskSettings', 'type': 'DiffDiskSettings'}, 'create_option': {'key': 'createOption', 'type': 'str'}, 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, 'managed_disk': {'key': 'managedDisk', 'type': 'ManagedDiskParameters'}, @@ -92,6 +97,7 @@ def __init__(self, **kwargs): self.image = kwargs.get('image', None) self.caching = kwargs.get('caching', None) self.write_accelerator_enabled = kwargs.get('write_accelerator_enabled', None) + self.diff_disk_settings = kwargs.get('diff_disk_settings', None) self.create_option = kwargs.get('create_option', None) self.disk_size_gb = kwargs.get('disk_size_gb', None) self.managed_disk = kwargs.get('managed_disk', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/os_disk_py3.py index 0c71fd4cab9b..b3514b43e170 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/os_disk_py3.py @@ -47,6 +47,10 @@ class OSDisk(Model): :param write_accelerator_enabled: Specifies whether writeAccelerator should be enabled or disabled on the disk. :type write_accelerator_enabled: bool + :param diff_disk_settings: Specifies the differencing Disk Settings for + the operating system disk used by the virtual machine. + :type diff_disk_settings: + ~azure.mgmt.compute.v2018_06_01.models.DiffDiskSettings :param create_option: Required. Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual @@ -58,7 +62,7 @@ class OSDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. @@ -78,12 +82,13 @@ class OSDisk(Model): 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, 'caching': {'key': 'caching', 'type': 'CachingTypes'}, 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'diff_disk_settings': {'key': 'diffDiskSettings', 'type': 'DiffDiskSettings'}, 'create_option': {'key': 'createOption', 'type': 'str'}, 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, 'managed_disk': {'key': 'managedDisk', 'type': 'ManagedDiskParameters'}, } - def __init__(self, *, create_option, os_type=None, encryption_settings=None, name: str=None, vhd=None, image=None, caching=None, write_accelerator_enabled: bool=None, disk_size_gb: int=None, managed_disk=None, **kwargs) -> None: + def __init__(self, *, create_option, os_type=None, encryption_settings=None, name: str=None, vhd=None, image=None, caching=None, write_accelerator_enabled: bool=None, diff_disk_settings=None, disk_size_gb: int=None, managed_disk=None, **kwargs) -> None: super(OSDisk, self).__init__(**kwargs) self.os_type = os_type self.encryption_settings = encryption_settings @@ -92,6 +97,7 @@ def __init__(self, *, create_option, os_type=None, encryption_settings=None, nam self.image = image self.caching = caching self.write_accelerator_enabled = write_accelerator_enabled + self.diff_disk_settings = diff_disk_settings self.create_option = create_option self.disk_size_gb = disk_size_gb self.managed_disk = managed_disk diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/recommended_machine_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/recommended_machine_configuration.py index db452883a30c..1d3791a3f1d7 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/recommended_machine_configuration.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/recommended_machine_configuration.py @@ -13,7 +13,8 @@ class RecommendedMachineConfiguration(Model): - """Describes the recommended machine configuration. + """The properties describe the recommended machine configuration for this + Image Definition. These properties are updateable. :param v_cp_us: :type v_cp_us: ~azure.mgmt.compute.v2018_06_01.models.ResourceRange diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/recommended_machine_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/recommended_machine_configuration_py3.py index 0473d92f01d5..2b68fb989ea5 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/recommended_machine_configuration_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/recommended_machine_configuration_py3.py @@ -13,7 +13,8 @@ class RecommendedMachineConfiguration(Model): - """Describes the recommended machine configuration. + """The properties describe the recommended machine configuration for this + Image Definition. These properties are updateable. :param v_cp_us: :type v_cp_us: ~azure.mgmt.compute.v2018_06_01.models.ResourceRange diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/regional_replication_status.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/regional_replication_status.py index ac541c4f4080..ebc65bbe1146 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/regional_replication_status.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/regional_replication_status.py @@ -18,7 +18,8 @@ class RegionalReplicationStatus(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar region: The region where the gallery image version is published to. + :ivar region: The region to which the gallery Image Version is being + replicated to. :vartype region: str :ivar state: This is the regional replication state. Possible values include: 'Unknown', 'Replicating', 'Completed', 'Failed' diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/regional_replication_status_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/regional_replication_status_py3.py index 4838b5542b8c..df66758183a1 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/regional_replication_status_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/regional_replication_status_py3.py @@ -18,7 +18,8 @@ class RegionalReplicationStatus(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar region: The region where the gallery image version is published to. + :ivar region: The region to which the gallery Image Version is being + replicated to. :vartype region: str :ivar state: This is the regional replication state. Possible values include: 'Unknown', 'Replicating', 'Completed', 'Failed' diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/replication_status.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/replication_status.py index 5d20b80672e2..b15aec7c4824 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/replication_status.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/replication_status.py @@ -13,14 +13,14 @@ class ReplicationStatus(Model): - """This is the replication status of the gallery image version. + """This is the replication status of the gallery Image Version. Variables are only populated by the server, and will be ignored when sending a request. :ivar aggregated_state: This is the aggregated replication status based on - the regional replication status. Possible values include: 'Unknown', - 'InProgress', 'Completed', 'Failed' + all the regional replication status flags. Possible values include: + 'Unknown', 'InProgress', 'Completed', 'Failed' :vartype aggregated_state: str or ~azure.mgmt.compute.v2018_06_01.models.AggregatedReplicationState :ivar summary: This is a summary of replication status for each region. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/replication_status_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/replication_status_py3.py index c492353698fd..7901644916c4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/replication_status_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/replication_status_py3.py @@ -13,14 +13,14 @@ class ReplicationStatus(Model): - """This is the replication status of the gallery image version. + """This is the replication status of the gallery Image Version. Variables are only populated by the server, and will be ignored when sending a request. :ivar aggregated_state: This is the aggregated replication status based on - the regional replication status. Possible values include: 'Unknown', - 'InProgress', 'Completed', 'Failed' + all the regional replication status flags. Possible values include: + 'Unknown', 'InProgress', 'Completed', 'Failed' :vartype aggregated_state: str or ~azure.mgmt.compute.v2018_06_01.models.AggregatedReplicationState :ivar summary: This is a summary of replication status for each region. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/sku.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/sku.py index d8b5954ac92b..5c07709435e0 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/sku.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/sku.py @@ -15,9 +15,7 @@ class Sku(Model): """Describes a virtual machine scale set sku. - :param name: The sku name. Possible values are: **Aligned** for managed - disks, and **Classic** for unmanaged disks. Default value is Classic, if - not specified. + :param name: The sku name. :type name: str :param tier: Specifies the tier of virtual machines in a scale set.

Possible Values:

**Standard**

**Basic** diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/sku_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/sku_py3.py index 781632d90337..f6bc74afaadc 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/sku_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/sku_py3.py @@ -15,9 +15,7 @@ class Sku(Model): """Describes a virtual machine scale set sku. - :param name: The sku name. Possible values are: **Aligned** for managed - disks, and **Classic** for unmanaged disks. Default value is Classic, if - not specified. + :param name: The sku name. :type name: str :param tier: Specifies the tier of virtual machines in a scale set.

Possible Values:

**Standard**

**Basic** diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot.py new file mode 100644 index 000000000000..ff5d5014d273 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot.py @@ -0,0 +1,95 @@ +# 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 .resource import Resource + + +class Snapshot(Resource): + """Snapshot resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar managed_by: Unused. Always Null. + :vartype managed_by: str + :param sku: + :type sku: ~azure.mgmt.compute.v2018_06_01.models.SnapshotSku + :ivar time_created: The time when the disk was created. + :vartype time_created: datetime + :param os_type: The Operating System type. Possible values include: + 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes + :param creation_data: Required. Disk source information. CreationData + information cannot be changed after the disk has been created. + :type creation_data: ~azure.mgmt.compute.v2018_06_01.models.CreationData + :param disk_size_gb: If creationData.createOption is Empty, this field is + mandatory and it indicates the size of the VHD to create. If this field is + present for updates or creation with other options, it indicates a resize. + Resizes are only allowed if the disk is not attached to a running VM, and + can only increase the disk's size. + :type disk_size_gb: int + :param encryption_settings: Encryption settings for disk or snapshot + :type encryption_settings: + ~azure.mgmt.compute.v2018_06_01.models.EncryptionSettings + :ivar provisioning_state: The disk provisioning state. + :vartype provisioning_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'managed_by': {'readonly': True}, + 'time_created': {'readonly': True}, + 'creation_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed_by': {'key': 'managedBy', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'SnapshotSku'}, + 'time_created': {'key': 'properties.timeCreated', 'type': 'iso-8601'}, + 'os_type': {'key': 'properties.osType', 'type': 'OperatingSystemTypes'}, + 'creation_data': {'key': 'properties.creationData', 'type': 'CreationData'}, + 'disk_size_gb': {'key': 'properties.diskSizeGB', 'type': 'int'}, + 'encryption_settings': {'key': 'properties.encryptionSettings', 'type': 'EncryptionSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Snapshot, self).__init__(**kwargs) + self.managed_by = None + self.sku = kwargs.get('sku', None) + self.time_created = None + self.os_type = kwargs.get('os_type', None) + self.creation_data = kwargs.get('creation_data', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.encryption_settings = kwargs.get('encryption_settings', None) + self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_paged.py new file mode 100644 index 000000000000..250970ea9f6b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SnapshotPaged(Paged): + """ + A paging container for iterating over a list of :class:`Snapshot ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Snapshot]'} + } + + def __init__(self, *args, **kwargs): + + super(SnapshotPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_py3.py new file mode 100644 index 000000000000..8921a3c46991 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_py3.py @@ -0,0 +1,95 @@ +# 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 .resource_py3 import Resource + + +class Snapshot(Resource): + """Snapshot resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar managed_by: Unused. Always Null. + :vartype managed_by: str + :param sku: + :type sku: ~azure.mgmt.compute.v2018_06_01.models.SnapshotSku + :ivar time_created: The time when the disk was created. + :vartype time_created: datetime + :param os_type: The Operating System type. Possible values include: + 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes + :param creation_data: Required. Disk source information. CreationData + information cannot be changed after the disk has been created. + :type creation_data: ~azure.mgmt.compute.v2018_06_01.models.CreationData + :param disk_size_gb: If creationData.createOption is Empty, this field is + mandatory and it indicates the size of the VHD to create. If this field is + present for updates or creation with other options, it indicates a resize. + Resizes are only allowed if the disk is not attached to a running VM, and + can only increase the disk's size. + :type disk_size_gb: int + :param encryption_settings: Encryption settings for disk or snapshot + :type encryption_settings: + ~azure.mgmt.compute.v2018_06_01.models.EncryptionSettings + :ivar provisioning_state: The disk provisioning state. + :vartype provisioning_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'managed_by': {'readonly': True}, + 'time_created': {'readonly': True}, + 'creation_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'managed_by': {'key': 'managedBy', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'SnapshotSku'}, + 'time_created': {'key': 'properties.timeCreated', 'type': 'iso-8601'}, + 'os_type': {'key': 'properties.osType', 'type': 'OperatingSystemTypes'}, + 'creation_data': {'key': 'properties.creationData', 'type': 'CreationData'}, + 'disk_size_gb': {'key': 'properties.diskSizeGB', 'type': 'int'}, + 'encryption_settings': {'key': 'properties.encryptionSettings', 'type': 'EncryptionSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, location: str, creation_data, tags=None, sku=None, os_type=None, disk_size_gb: int=None, encryption_settings=None, **kwargs) -> None: + super(Snapshot, self).__init__(location=location, tags=tags, **kwargs) + self.managed_by = None + self.sku = sku + self.time_created = None + self.os_type = os_type + self.creation_data = creation_data + self.disk_size_gb = disk_size_gb + self.encryption_settings = encryption_settings + self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_sku.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_sku.py new file mode 100644 index 000000000000..d73b6283b82c --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_sku.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SnapshotSku(Model): + """The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: The sku name. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'Standard_ZRS' + :type name: str or + ~azure.mgmt.compute.v2018_06_01.models.SnapshotStorageAccountTypes + :ivar tier: The sku tier. Default value: "Standard" . + :vartype tier: str + """ + + _validation = { + 'tier': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SnapshotSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_sku_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_sku_py3.py new file mode 100644 index 000000000000..55d281f87d30 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_sku_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SnapshotSku(Model): + """The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: The sku name. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'Standard_ZRS' + :type name: str or + ~azure.mgmt.compute.v2018_06_01.models.SnapshotStorageAccountTypes + :ivar tier: The sku tier. Default value: "Standard" . + :vartype tier: str + """ + + _validation = { + 'tier': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(SnapshotSku, self).__init__(**kwargs) + self.name = name + self.tier = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_update.py new file mode 100644 index 000000000000..cfc9634ccf54 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_update.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SnapshotUpdate(Model): + """Snapshot update resource. + + :param os_type: the Operating System type. Possible values include: + 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes + :param disk_size_gb: If creationData.createOption is Empty, this field is + mandatory and it indicates the size of the VHD to create. If this field is + present for updates or creation with other options, it indicates a resize. + Resizes are only allowed if the disk is not attached to a running VM, and + can only increase the disk's size. + :type disk_size_gb: int + :param encryption_settings: Encryption settings for disk or snapshot + :type encryption_settings: + ~azure.mgmt.compute.v2018_06_01.models.EncryptionSettings + :param tags: Resource tags + :type tags: dict[str, str] + :param sku: + :type sku: ~azure.mgmt.compute.v2018_06_01.models.SnapshotSku + """ + + _attribute_map = { + 'os_type': {'key': 'properties.osType', 'type': 'OperatingSystemTypes'}, + 'disk_size_gb': {'key': 'properties.diskSizeGB', 'type': 'int'}, + 'encryption_settings': {'key': 'properties.encryptionSettings', 'type': 'EncryptionSettings'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'SnapshotSku'}, + } + + def __init__(self, **kwargs): + super(SnapshotUpdate, self).__init__(**kwargs) + self.os_type = kwargs.get('os_type', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.encryption_settings = kwargs.get('encryption_settings', None) + self.tags = kwargs.get('tags', None) + self.sku = kwargs.get('sku', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_update_py3.py new file mode 100644 index 000000000000..d5b3ec204313 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/snapshot_update_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SnapshotUpdate(Model): + """Snapshot update resource. + + :param os_type: the Operating System type. Possible values include: + 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_06_01.models.OperatingSystemTypes + :param disk_size_gb: If creationData.createOption is Empty, this field is + mandatory and it indicates the size of the VHD to create. If this field is + present for updates or creation with other options, it indicates a resize. + Resizes are only allowed if the disk is not attached to a running VM, and + can only increase the disk's size. + :type disk_size_gb: int + :param encryption_settings: Encryption settings for disk or snapshot + :type encryption_settings: + ~azure.mgmt.compute.v2018_06_01.models.EncryptionSettings + :param tags: Resource tags + :type tags: dict[str, str] + :param sku: + :type sku: ~azure.mgmt.compute.v2018_06_01.models.SnapshotSku + """ + + _attribute_map = { + 'os_type': {'key': 'properties.osType', 'type': 'OperatingSystemTypes'}, + 'disk_size_gb': {'key': 'properties.diskSizeGB', 'type': 'int'}, + 'encryption_settings': {'key': 'properties.encryptionSettings', 'type': 'EncryptionSettings'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'SnapshotSku'}, + } + + def __init__(self, *, os_type=None, disk_size_gb: int=None, encryption_settings=None, tags=None, sku=None, **kwargs) -> None: + super(SnapshotUpdate, self).__init__(**kwargs) + self.os_type = os_type + self.disk_size_gb = disk_size_gb + self.encryption_settings = encryption_settings + self.tags = tags + self.sku = sku diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/source_vault.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/source_vault.py new file mode 100644 index 000000000000..9b16302ebbfb --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/source_vault.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceVault(Model): + """The vault id is an Azure Resource Manager Resoure id in the form + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}. + + :param id: Resource Id + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SourceVault, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/source_vault_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/source_vault_py3.py new file mode 100644 index 000000000000..13eea5461390 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/source_vault_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceVault(Model): + """The vault id is an Azure Resource Manager Resoure id in the form + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}. + + :param id: Resource Id + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(SourceVault, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/target_region.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/target_region.py new file mode 100644 index 000000000000..b320fae5716d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/target_region.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TargetRegion(Model): + """Describes the target region information. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the region. + :type name: str + :param regional_replica_count: The number of replicas of the Image Version + to be created per region. This property is updateable. + :type regional_replica_count: int + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'regional_replica_count': {'key': 'regionalReplicaCount', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(TargetRegion, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.regional_replica_count = kwargs.get('regional_replica_count', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/target_region_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/target_region_py3.py new file mode 100644 index 000000000000..955aa63044d6 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/target_region_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TargetRegion(Model): + """Describes the target region information. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the region. + :type name: str + :param regional_replica_count: The number of replicas of the Image Version + to be created per region. This property is updateable. + :type regional_replica_count: int + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'regional_replica_count': {'key': 'regionalReplicaCount', 'type': 'int'}, + } + + def __init__(self, *, name: str, regional_replica_count: int=None, **kwargs) -> None: + super(TargetRegion, self).__init__(**kwargs) + self.name = name + self.regional_replica_count = regional_replica_count diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine.py index 5ba0756820ef..ca243338a572 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine.py @@ -46,6 +46,10 @@ class VirtualMachine(Resource): machine disks. :type storage_profile: ~azure.mgmt.compute.v2018_06_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_06_01.models.AdditionalCapabilities :param os_profile: Specifies the operating system settings for the virtual machine. :type os_profile: ~azure.mgmt.compute.v2018_06_01.models.OSProfile @@ -119,6 +123,7 @@ class VirtualMachine(Resource): 'plan': {'key': 'plan', 'type': 'Plan'}, 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, @@ -137,6 +142,7 @@ def __init__(self, **kwargs): self.plan = kwargs.get('plan', None) self.hardware_profile = kwargs.get('hardware_profile', None) self.storage_profile = kwargs.get('storage_profile', None) + self.additional_capabilities = kwargs.get('additional_capabilities', None) self.os_profile = kwargs.get('os_profile', None) self.network_profile = kwargs.get('network_profile', None) self.diagnostics_profile = kwargs.get('diagnostics_profile', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_instance_view.py index 906912b63196..c64305728eba 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_instance_view.py @@ -44,8 +44,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2018_06_01.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_06_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_instance_view_py3.py index 61074b565129..f1aea49e5739 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_instance_view_py3.py @@ -44,8 +44,7 @@ class VirtualMachineInstanceView(Model): list[~azure.mgmt.compute.v2018_06_01.models.VirtualMachineExtensionInstanceView] :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_06_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_py3.py index 0ac76ecae240..82f24e63291c 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_py3.py @@ -46,6 +46,10 @@ class VirtualMachine(Resource): machine disks. :type storage_profile: ~azure.mgmt.compute.v2018_06_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_06_01.models.AdditionalCapabilities :param os_profile: Specifies the operating system settings for the virtual machine. :type os_profile: ~azure.mgmt.compute.v2018_06_01.models.OSProfile @@ -119,6 +123,7 @@ class VirtualMachine(Resource): 'plan': {'key': 'plan', 'type': 'Plan'}, 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, @@ -132,11 +137,12 @@ class VirtualMachine(Resource): 'zones': {'key': 'zones', 'type': '[str]'}, } - def __init__(self, *, location: str, tags=None, plan=None, hardware_profile=None, storage_profile=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, identity=None, zones=None, **kwargs) -> None: + def __init__(self, *, location: str, tags=None, plan=None, hardware_profile=None, storage_profile=None, additional_capabilities=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, identity=None, zones=None, **kwargs) -> None: super(VirtualMachine, self).__init__(location=location, tags=tags, **kwargs) self.plan = plan self.hardware_profile = hardware_profile self.storage_profile = storage_profile + self.additional_capabilities = additional_capabilities self.os_profile = os_profile self.network_profile = network_profile self.diagnostics_profile = diagnostics_profile diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_data_disk.py index a4280ab06217..48791267028c 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_data_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_data_disk.py @@ -36,7 +36,7 @@ class VirtualMachineScaleSetDataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_data_disk_py3.py index eb40c17afad2..92a530925ba5 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_data_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_data_disk_py3.py @@ -36,7 +36,7 @@ class VirtualMachineScaleSetDataDisk(Model): :type create_option: str or ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOptionTypes :param disk_size_gb: Specifies the size of an empty data disk in - gigabytes. This element can be used to overwrite the name of the disk in a + gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB :type disk_size_gb: int :param managed_disk: The managed disk parameters. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_managed_disk_parameters.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_managed_disk_parameters.py index d3194e273ccb..9abca6a1818e 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_managed_disk_parameters.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_managed_disk_parameters.py @@ -16,9 +16,9 @@ class VirtualMachineScaleSetManagedDiskParameters(Model): """Describes the parameters of a ScaleSet managed disk. :param storage_account_type: Specifies the storage account type for the - managed disk. Possible values are: Standard_LRS, Premium_LRS, and - StandardSSD_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS', - 'StandardSSD_LRS' + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' :type storage_account_type: str or ~azure.mgmt.compute.v2018_06_01.models.StorageAccountTypes """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_managed_disk_parameters_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_managed_disk_parameters_py3.py index 517afc8e40d4..1df9ec0b5415 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_managed_disk_parameters_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_managed_disk_parameters_py3.py @@ -16,9 +16,9 @@ class VirtualMachineScaleSetManagedDiskParameters(Model): """Describes the parameters of a ScaleSet managed disk. :param storage_account_type: Specifies the storage account type for the - managed disk. Possible values are: Standard_LRS, Premium_LRS, and - StandardSSD_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS', - 'StandardSSD_LRS' + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' :type storage_account_type: str or ~azure.mgmt.compute.v2018_06_01.models.StorageAccountTypes """ diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_os_disk.py index b6c87a946f94..ac8de50ead86 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_os_disk.py @@ -36,6 +36,14 @@ class VirtualMachineScaleSetOSDisk(Model): Possible values include: 'FromImage', 'Empty', 'Attach' :type create_option: str or ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOptionTypes + :param diff_disk_settings: Specifies the differencing Disk Settings for + the operating system disk used by the virtual machine scale set. + :type diff_disk_settings: + ~azure.mgmt.compute.v2018_06_01.models.DiffDiskSettings + :param disk_size_gb: Specifies the size of the operating system disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int :param os_type: This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.

Possible values are:

**Windows** @@ -62,6 +70,8 @@ class VirtualMachineScaleSetOSDisk(Model): 'caching': {'key': 'caching', 'type': 'CachingTypes'}, 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, 'create_option': {'key': 'createOption', 'type': 'str'}, + 'diff_disk_settings': {'key': 'diffDiskSettings', 'type': 'DiffDiskSettings'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, 'vhd_containers': {'key': 'vhdContainers', 'type': '[str]'}, @@ -74,6 +84,8 @@ def __init__(self, **kwargs): self.caching = kwargs.get('caching', None) self.write_accelerator_enabled = kwargs.get('write_accelerator_enabled', None) self.create_option = kwargs.get('create_option', None) + self.diff_disk_settings = kwargs.get('diff_disk_settings', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) self.os_type = kwargs.get('os_type', None) self.image = kwargs.get('image', None) self.vhd_containers = kwargs.get('vhd_containers', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_os_disk_py3.py index 051ec3187023..eafdd640f3a2 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_os_disk_py3.py @@ -36,6 +36,14 @@ class VirtualMachineScaleSetOSDisk(Model): Possible values include: 'FromImage', 'Empty', 'Attach' :type create_option: str or ~azure.mgmt.compute.v2018_06_01.models.DiskCreateOptionTypes + :param diff_disk_settings: Specifies the differencing Disk Settings for + the operating system disk used by the virtual machine scale set. + :type diff_disk_settings: + ~azure.mgmt.compute.v2018_06_01.models.DiffDiskSettings + :param disk_size_gb: Specifies the size of the operating system disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int :param os_type: This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.

Possible values are:

**Windows** @@ -62,18 +70,22 @@ class VirtualMachineScaleSetOSDisk(Model): 'caching': {'key': 'caching', 'type': 'CachingTypes'}, 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, 'create_option': {'key': 'createOption', 'type': 'str'}, + 'diff_disk_settings': {'key': 'diffDiskSettings', 'type': 'DiffDiskSettings'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, 'vhd_containers': {'key': 'vhdContainers', 'type': '[str]'}, 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, } - def __init__(self, *, create_option, name: str=None, caching=None, write_accelerator_enabled: bool=None, os_type=None, image=None, vhd_containers=None, managed_disk=None, **kwargs) -> None: + def __init__(self, *, create_option, name: str=None, caching=None, write_accelerator_enabled: bool=None, diff_disk_settings=None, disk_size_gb: int=None, os_type=None, image=None, vhd_containers=None, managed_disk=None, **kwargs) -> None: super(VirtualMachineScaleSetOSDisk, self).__init__(**kwargs) self.name = name self.caching = caching self.write_accelerator_enabled = write_accelerator_enabled self.create_option = create_option + self.diff_disk_settings = diff_disk_settings + self.disk_size_gb = disk_size_gb self.os_type = os_type self.image = image self.vhd_containers = vhd_containers diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_public_ip_address_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_public_ip_address_configuration.py index c43e3909c23d..ca667579db68 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_public_ip_address_configuration.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_public_ip_address_configuration.py @@ -29,6 +29,9 @@ class VirtualMachineScaleSetPublicIPAddressConfiguration(Model): :param ip_tags: The list of IP tags associated with the public IP address. :type ip_tags: list[~azure.mgmt.compute.v2018_06_01.models.VirtualMachineScaleSetIpTag] + :param public_ip_prefix: The PublicIPPrefix from which to allocate + publicIP addresses. + :type public_ip_prefix: ~azure.mgmt.compute.v2018_06_01.models.SubResource """ _validation = { @@ -40,6 +43,7 @@ class VirtualMachineScaleSetPublicIPAddressConfiguration(Model): 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings'}, 'ip_tags': {'key': 'properties.ipTags', 'type': '[VirtualMachineScaleSetIpTag]'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, } def __init__(self, **kwargs): @@ -48,3 +52,4 @@ def __init__(self, **kwargs): self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) self.dns_settings = kwargs.get('dns_settings', None) self.ip_tags = kwargs.get('ip_tags', None) + self.public_ip_prefix = kwargs.get('public_ip_prefix', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_public_ip_address_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_public_ip_address_configuration_py3.py index 1997921b01de..3d6ba42bf5f6 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_public_ip_address_configuration_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_public_ip_address_configuration_py3.py @@ -29,6 +29,9 @@ class VirtualMachineScaleSetPublicIPAddressConfiguration(Model): :param ip_tags: The list of IP tags associated with the public IP address. :type ip_tags: list[~azure.mgmt.compute.v2018_06_01.models.VirtualMachineScaleSetIpTag] + :param public_ip_prefix: The PublicIPPrefix from which to allocate + publicIP addresses. + :type public_ip_prefix: ~azure.mgmt.compute.v2018_06_01.models.SubResource """ _validation = { @@ -40,11 +43,13 @@ class VirtualMachineScaleSetPublicIPAddressConfiguration(Model): 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings'}, 'ip_tags': {'key': 'properties.ipTags', 'type': '[VirtualMachineScaleSetIpTag]'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, } - def __init__(self, *, name: str, idle_timeout_in_minutes: int=None, dns_settings=None, ip_tags=None, **kwargs) -> None: + def __init__(self, *, name: str, idle_timeout_in_minutes: int=None, dns_settings=None, ip_tags=None, public_ip_prefix=None, **kwargs) -> None: super(VirtualMachineScaleSetPublicIPAddressConfiguration, self).__init__(**kwargs) self.name = name self.idle_timeout_in_minutes = idle_timeout_in_minutes self.dns_settings = dns_settings self.ip_tags = ip_tags + self.public_ip_prefix = public_ip_prefix diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_update_os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_update_os_disk.py index 8a1968c828c4..1b2702a1659d 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_update_os_disk.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_update_os_disk.py @@ -22,6 +22,10 @@ class VirtualMachineScaleSetUpdateOSDisk(Model): :param write_accelerator_enabled: Specifies whether writeAccelerator should be enabled or disabled on the disk. :type write_accelerator_enabled: bool + :param disk_size_gb: Specifies the size of the operating system disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int :param image: The Source User Image VirtualHardDisk. This VirtualHardDisk will be copied before using it to attach to the Virtual Machine. If SourceImage is provided, the destination VirtualHardDisk should not exist. @@ -36,6 +40,7 @@ class VirtualMachineScaleSetUpdateOSDisk(Model): _attribute_map = { 'caching': {'key': 'caching', 'type': 'CachingTypes'}, 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, 'vhd_containers': {'key': 'vhdContainers', 'type': '[str]'}, 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, @@ -45,6 +50,7 @@ def __init__(self, **kwargs): super(VirtualMachineScaleSetUpdateOSDisk, self).__init__(**kwargs) self.caching = kwargs.get('caching', None) self.write_accelerator_enabled = kwargs.get('write_accelerator_enabled', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) self.image = kwargs.get('image', None) self.vhd_containers = kwargs.get('vhd_containers', None) self.managed_disk = kwargs.get('managed_disk', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_update_os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_update_os_disk_py3.py index b5b2138e378a..ae479089bf38 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_update_os_disk_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_update_os_disk_py3.py @@ -22,6 +22,10 @@ class VirtualMachineScaleSetUpdateOSDisk(Model): :param write_accelerator_enabled: Specifies whether writeAccelerator should be enabled or disabled on the disk. :type write_accelerator_enabled: bool + :param disk_size_gb: Specifies the size of the operating system disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int :param image: The Source User Image VirtualHardDisk. This VirtualHardDisk will be copied before using it to attach to the Virtual Machine. If SourceImage is provided, the destination VirtualHardDisk should not exist. @@ -36,15 +40,17 @@ class VirtualMachineScaleSetUpdateOSDisk(Model): _attribute_map = { 'caching': {'key': 'caching', 'type': 'CachingTypes'}, 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, 'vhd_containers': {'key': 'vhdContainers', 'type': '[str]'}, 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, } - def __init__(self, *, caching=None, write_accelerator_enabled: bool=None, image=None, vhd_containers=None, managed_disk=None, **kwargs) -> None: + def __init__(self, *, caching=None, write_accelerator_enabled: bool=None, disk_size_gb: int=None, image=None, vhd_containers=None, managed_disk=None, **kwargs) -> None: super(VirtualMachineScaleSetUpdateOSDisk, self).__init__(**kwargs) self.caching = caching self.write_accelerator_enabled = write_accelerator_enabled + self.disk_size_gb = disk_size_gb self.image = image self.vhd_containers = vhd_containers self.managed_disk = managed_disk diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm.py index 503bd3c007fd..ad86664f1328 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm.py @@ -50,6 +50,12 @@ class VirtualMachineScaleSetVM(Resource): machine disks. :type storage_profile: ~azure.mgmt.compute.v2018_06_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine in the scale set. For instance: whether + the virtual machine has the capability to support attaching managed data + disks with UltraSSD_LRS storage account type. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_06_01.models.AdditionalCapabilities :param os_profile: Specifies the operating system settings for the virtual machine. :type os_profile: ~azure.mgmt.compute.v2018_06_01.models.OSProfile @@ -97,6 +103,8 @@ class VirtualMachineScaleSetVM(Resource): :ivar resources: The virtual machine child extension resources. :vartype resources: list[~azure.mgmt.compute.v2018_06_01.models.VirtualMachineExtension] + :ivar zones: The virtual machine zones. + :vartype zones: list[str] """ _validation = { @@ -111,6 +119,7 @@ class VirtualMachineScaleSetVM(Resource): 'instance_view': {'readonly': True}, 'provisioning_state': {'readonly': True}, 'resources': {'readonly': True}, + 'zones': {'readonly': True}, } _attribute_map = { @@ -126,6 +135,7 @@ class VirtualMachineScaleSetVM(Resource): 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, @@ -134,6 +144,7 @@ class VirtualMachineScaleSetVM(Resource): 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'plan': {'key': 'plan', 'type': 'Plan'}, 'resources': {'key': 'resources', 'type': '[VirtualMachineExtension]'}, + 'zones': {'key': 'zones', 'type': '[str]'}, } def __init__(self, **kwargs): @@ -145,6 +156,7 @@ def __init__(self, **kwargs): self.instance_view = None self.hardware_profile = kwargs.get('hardware_profile', None) self.storage_profile = kwargs.get('storage_profile', None) + self.additional_capabilities = kwargs.get('additional_capabilities', None) self.os_profile = kwargs.get('os_profile', None) self.network_profile = kwargs.get('network_profile', None) self.diagnostics_profile = kwargs.get('diagnostics_profile', None) @@ -153,3 +165,4 @@ def __init__(self, **kwargs): self.license_type = kwargs.get('license_type', None) self.plan = kwargs.get('plan', None) self.resources = None + self.zones = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_instance_view.py index 35e58a234b7f..8ac2d0633dc8 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_instance_view.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_instance_view.py @@ -41,8 +41,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): ~azure.mgmt.compute.v2018_06_01.models.VirtualMachineHealthStatus :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_06_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_instance_view_py3.py index 586211ea4af8..5266cd011872 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_instance_view_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_instance_view_py3.py @@ -41,8 +41,7 @@ class VirtualMachineScaleSetVMInstanceView(Model): ~azure.mgmt.compute.v2018_06_01.models.VirtualMachineHealthStatus :param boot_diagnostics: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. -

For Linux Virtual Machines, you can easily view the output of - your console log.

For both Windows and Linux virtual machines, +

You can easily view the output of your console log.

Azure also enables you to see a screenshot of the VM from the hypervisor. :type boot_diagnostics: ~azure.mgmt.compute.v2018_06_01.models.BootDiagnosticsInstanceView diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_profile.py index 409ccc950d55..7631eee97d95 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_profile.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_profile.py @@ -23,6 +23,12 @@ class VirtualMachineScaleSetVMProfile(Model): machine disks. :type storage_profile: ~azure.mgmt.compute.v2018_06_01.models.VirtualMachineScaleSetStorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine in the scale set. For instance: whether + the virtual machine has the capability to support attaching managed data + disks with UltraSSD_LRS storage account type. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_06_01.models.AdditionalCapabilities :param network_profile: Specifies properties of the network interfaces of the virtual machines in the scale set. :type network_profile: @@ -60,6 +66,7 @@ class VirtualMachineScaleSetVMProfile(Model): _attribute_map = { 'os_profile': {'key': 'osProfile', 'type': 'VirtualMachineScaleSetOSProfile'}, 'storage_profile': {'key': 'storageProfile', 'type': 'VirtualMachineScaleSetStorageProfile'}, + 'additional_capabilities': {'key': 'additionalCapabilities', 'type': 'AdditionalCapabilities'}, 'network_profile': {'key': 'networkProfile', 'type': 'VirtualMachineScaleSetNetworkProfile'}, 'diagnostics_profile': {'key': 'diagnosticsProfile', 'type': 'DiagnosticsProfile'}, 'extension_profile': {'key': 'extensionProfile', 'type': 'VirtualMachineScaleSetExtensionProfile'}, @@ -72,6 +79,7 @@ def __init__(self, **kwargs): super(VirtualMachineScaleSetVMProfile, self).__init__(**kwargs) self.os_profile = kwargs.get('os_profile', None) self.storage_profile = kwargs.get('storage_profile', None) + self.additional_capabilities = kwargs.get('additional_capabilities', None) self.network_profile = kwargs.get('network_profile', None) self.diagnostics_profile = kwargs.get('diagnostics_profile', None) self.extension_profile = kwargs.get('extension_profile', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_profile_py3.py index 778f52bc6f27..90608e71b679 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_profile_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_profile_py3.py @@ -23,6 +23,12 @@ class VirtualMachineScaleSetVMProfile(Model): machine disks. :type storage_profile: ~azure.mgmt.compute.v2018_06_01.models.VirtualMachineScaleSetStorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine in the scale set. For instance: whether + the virtual machine has the capability to support attaching managed data + disks with UltraSSD_LRS storage account type. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_06_01.models.AdditionalCapabilities :param network_profile: Specifies properties of the network interfaces of the virtual machines in the scale set. :type network_profile: @@ -60,6 +66,7 @@ class VirtualMachineScaleSetVMProfile(Model): _attribute_map = { 'os_profile': {'key': 'osProfile', 'type': 'VirtualMachineScaleSetOSProfile'}, 'storage_profile': {'key': 'storageProfile', 'type': 'VirtualMachineScaleSetStorageProfile'}, + 'additional_capabilities': {'key': 'additionalCapabilities', 'type': 'AdditionalCapabilities'}, 'network_profile': {'key': 'networkProfile', 'type': 'VirtualMachineScaleSetNetworkProfile'}, 'diagnostics_profile': {'key': 'diagnosticsProfile', 'type': 'DiagnosticsProfile'}, 'extension_profile': {'key': 'extensionProfile', 'type': 'VirtualMachineScaleSetExtensionProfile'}, @@ -68,10 +75,11 @@ class VirtualMachineScaleSetVMProfile(Model): 'eviction_policy': {'key': 'evictionPolicy', 'type': 'str'}, } - def __init__(self, *, os_profile=None, storage_profile=None, network_profile=None, diagnostics_profile=None, extension_profile=None, license_type: str=None, priority=None, eviction_policy=None, **kwargs) -> None: + def __init__(self, *, os_profile=None, storage_profile=None, additional_capabilities=None, network_profile=None, diagnostics_profile=None, extension_profile=None, license_type: str=None, priority=None, eviction_policy=None, **kwargs) -> None: super(VirtualMachineScaleSetVMProfile, self).__init__(**kwargs) self.os_profile = os_profile self.storage_profile = storage_profile + self.additional_capabilities = additional_capabilities self.network_profile = network_profile self.diagnostics_profile = diagnostics_profile self.extension_profile = extension_profile diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_py3.py index c64077b1c210..9a560a94dae7 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_scale_set_vm_py3.py @@ -50,6 +50,12 @@ class VirtualMachineScaleSetVM(Resource): machine disks. :type storage_profile: ~azure.mgmt.compute.v2018_06_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine in the scale set. For instance: whether + the virtual machine has the capability to support attaching managed data + disks with UltraSSD_LRS storage account type. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_06_01.models.AdditionalCapabilities :param os_profile: Specifies the operating system settings for the virtual machine. :type os_profile: ~azure.mgmt.compute.v2018_06_01.models.OSProfile @@ -97,6 +103,8 @@ class VirtualMachineScaleSetVM(Resource): :ivar resources: The virtual machine child extension resources. :vartype resources: list[~azure.mgmt.compute.v2018_06_01.models.VirtualMachineExtension] + :ivar zones: The virtual machine zones. + :vartype zones: list[str] """ _validation = { @@ -111,6 +119,7 @@ class VirtualMachineScaleSetVM(Resource): 'instance_view': {'readonly': True}, 'provisioning_state': {'readonly': True}, 'resources': {'readonly': True}, + 'zones': {'readonly': True}, } _attribute_map = { @@ -126,6 +135,7 @@ class VirtualMachineScaleSetVM(Resource): 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, @@ -134,9 +144,10 @@ class VirtualMachineScaleSetVM(Resource): 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'plan': {'key': 'plan', 'type': 'Plan'}, 'resources': {'key': 'resources', 'type': '[VirtualMachineExtension]'}, + 'zones': {'key': 'zones', 'type': '[str]'}, } - def __init__(self, *, location: str, tags=None, hardware_profile=None, storage_profile=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, plan=None, **kwargs) -> None: + def __init__(self, *, location: str, tags=None, hardware_profile=None, storage_profile=None, additional_capabilities=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, plan=None, **kwargs) -> None: super(VirtualMachineScaleSetVM, self).__init__(location=location, tags=tags, **kwargs) self.instance_id = None self.sku = None @@ -145,6 +156,7 @@ def __init__(self, *, location: str, tags=None, hardware_profile=None, storage_p self.instance_view = None self.hardware_profile = hardware_profile self.storage_profile = storage_profile + self.additional_capabilities = additional_capabilities self.os_profile = os_profile self.network_profile = network_profile self.diagnostics_profile = diagnostics_profile @@ -153,3 +165,4 @@ def __init__(self, *, location: str, tags=None, hardware_profile=None, storage_p self.license_type = license_type self.plan = plan self.resources = None + self.zones = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_update.py index efd8774c7830..a52aa4f3abce 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_update.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_update.py @@ -36,6 +36,10 @@ class VirtualMachineUpdate(UpdateResource): machine disks. :type storage_profile: ~azure.mgmt.compute.v2018_06_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_06_01.models.AdditionalCapabilities :param os_profile: Specifies the operating system settings for the virtual machine. :type os_profile: ~azure.mgmt.compute.v2018_06_01.models.OSProfile @@ -97,6 +101,7 @@ class VirtualMachineUpdate(UpdateResource): 'plan': {'key': 'plan', 'type': 'Plan'}, 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, @@ -114,6 +119,7 @@ def __init__(self, **kwargs): self.plan = kwargs.get('plan', None) self.hardware_profile = kwargs.get('hardware_profile', None) self.storage_profile = kwargs.get('storage_profile', None) + self.additional_capabilities = kwargs.get('additional_capabilities', None) self.os_profile = kwargs.get('os_profile', None) self.network_profile = kwargs.get('network_profile', None) self.diagnostics_profile = kwargs.get('diagnostics_profile', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_update_py3.py index afb1194c2d53..f122de2d3c2d 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_update_py3.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/models/virtual_machine_update_py3.py @@ -36,6 +36,10 @@ class VirtualMachineUpdate(UpdateResource): machine disks. :type storage_profile: ~azure.mgmt.compute.v2018_06_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_06_01.models.AdditionalCapabilities :param os_profile: Specifies the operating system settings for the virtual machine. :type os_profile: ~azure.mgmt.compute.v2018_06_01.models.OSProfile @@ -97,6 +101,7 @@ class VirtualMachineUpdate(UpdateResource): 'plan': {'key': 'plan', 'type': 'Plan'}, 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, @@ -109,11 +114,12 @@ class VirtualMachineUpdate(UpdateResource): 'zones': {'key': 'zones', 'type': '[str]'}, } - def __init__(self, *, tags=None, plan=None, hardware_profile=None, storage_profile=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, identity=None, zones=None, **kwargs) -> None: + def __init__(self, *, tags=None, plan=None, hardware_profile=None, storage_profile=None, additional_capabilities=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, identity=None, zones=None, **kwargs) -> None: super(VirtualMachineUpdate, self).__init__(tags=tags, **kwargs) self.plan = plan self.hardware_profile = hardware_profile self.storage_profile = storage_profile + self.additional_capabilities = additional_capabilities self.os_profile = os_profile self.network_profile = network_profile self.diagnostics_profile = diagnostics_profile diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/__init__.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/__init__.py index 7f77ecf69132..73c6833c6f71 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/__init__.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/__init__.py @@ -15,9 +15,9 @@ from .virtual_machine_extensions_operations import VirtualMachineExtensionsOperations from .virtual_machine_images_operations import VirtualMachineImagesOperations from .usage_operations import UsageOperations +from .virtual_machines_operations import VirtualMachinesOperations from .virtual_machine_sizes_operations import VirtualMachineSizesOperations from .images_operations import ImagesOperations -from .virtual_machines_operations import VirtualMachinesOperations from .virtual_machine_scale_sets_operations import VirtualMachineScaleSetsOperations from .virtual_machine_scale_set_extensions_operations import VirtualMachineScaleSetExtensionsOperations from .virtual_machine_scale_set_rolling_upgrades_operations import VirtualMachineScaleSetRollingUpgradesOperations @@ -27,6 +27,8 @@ from .galleries_operations import GalleriesOperations from .gallery_images_operations import GalleryImagesOperations from .gallery_image_versions_operations import GalleryImageVersionsOperations +from .disks_operations import DisksOperations +from .snapshots_operations import SnapshotsOperations __all__ = [ 'Operations', @@ -35,9 +37,9 @@ 'VirtualMachineExtensionsOperations', 'VirtualMachineImagesOperations', 'UsageOperations', + 'VirtualMachinesOperations', 'VirtualMachineSizesOperations', 'ImagesOperations', - 'VirtualMachinesOperations', 'VirtualMachineScaleSetsOperations', 'VirtualMachineScaleSetExtensionsOperations', 'VirtualMachineScaleSetRollingUpgradesOperations', @@ -47,4 +49,6 @@ 'GalleriesOperations', 'GalleryImagesOperations', 'GalleryImageVersionsOperations', + 'DisksOperations', + 'SnapshotsOperations', ] diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/disks_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/disks_operations.py new file mode 100644 index 000000000000..aba6f86fc995 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/disks_operations.py @@ -0,0 +1,722 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class DisksOperations(object): + """DisksOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-06-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, disk_name, disk, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'diskName': self._serialize.url("disk_name", disk_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(disk, 'Disk') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Disk', response) + if response.status_code == 202: + deserialized = self._deserialize('Disk', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, disk_name, disk, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a disk. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param disk_name: The name of the managed disk that is being created. + The name can't be changed after the disk is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The maximum name + length is 80 characters. + :type disk_name: str + :param disk: Disk object supplied in the body of the Put disk + operation. + :type disk: ~azure.mgmt.compute.v2018_06_01.models.Disk + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Disk or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_06_01.models.Disk] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_06_01.models.Disk]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + disk_name=disk_name, + disk=disk, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Disk', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}'} + + + def _update_initial( + self, resource_group_name, disk_name, disk, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'diskName': self._serialize.url("disk_name", disk_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(disk, 'DiskUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Disk', response) + if response.status_code == 202: + deserialized = self._deserialize('Disk', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, disk_name, disk, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates (patches) a disk. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param disk_name: The name of the managed disk that is being created. + The name can't be changed after the disk is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The maximum name + length is 80 characters. + :type disk_name: str + :param disk: Disk object supplied in the body of the Patch disk + operation. + :type disk: ~azure.mgmt.compute.v2018_06_01.models.DiskUpdate + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Disk or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_06_01.models.Disk] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_06_01.models.Disk]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + disk_name=disk_name, + disk=disk, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Disk', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}'} + + def get( + self, resource_group_name, disk_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a disk. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param disk_name: The name of the managed disk that is being created. + The name can't be changed after the disk is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The maximum name + length is 80 characters. + :type disk_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Disk or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_06_01.models.Disk or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'diskName': self._serialize.url("disk_name", disk_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Disk', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}'} + + + def _delete_initial( + self, resource_group_name, disk_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'diskName': self._serialize.url("disk_name", disk_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, disk_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a disk. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param disk_name: The name of the managed disk that is being created. + The name can't be changed after the disk is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The maximum name + length is 80 characters. + :type disk_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + disk_name=disk_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the disks under a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Disk + :rtype: + ~azure.mgmt.compute.v2018_06_01.models.DiskPaged[~azure.mgmt.compute.v2018_06_01.models.Disk] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DiskPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DiskPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the disks under a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Disk + :rtype: + ~azure.mgmt.compute.v2018_06_01.models.DiskPaged[~azure.mgmt.compute.v2018_06_01.models.Disk] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DiskPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DiskPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks'} + + + def _grant_access_initial( + self, resource_group_name, disk_name, access, duration_in_seconds, custom_headers=None, raw=False, **operation_config): + grant_access_data = models.GrantAccessData(access=access, duration_in_seconds=duration_in_seconds) + + # Construct URL + url = self.grant_access.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'diskName': self._serialize.url("disk_name", disk_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(grant_access_data, 'GrantAccessData') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AccessUri', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def grant_access( + self, resource_group_name, disk_name, access, duration_in_seconds, custom_headers=None, raw=False, polling=True, **operation_config): + """Grants access to a disk. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param disk_name: The name of the managed disk that is being created. + The name can't be changed after the disk is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The maximum name + length is 80 characters. + :type disk_name: str + :param access: Possible values include: 'None', 'Read' + :type access: str or + ~azure.mgmt.compute.v2018_06_01.models.AccessLevel + :param duration_in_seconds: Time duration in seconds until the SAS + access expires. + :type duration_in_seconds: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AccessUri or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_06_01.models.AccessUri] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_06_01.models.AccessUri]] + :raises: :class:`CloudError` + """ + raw_result = self._grant_access_initial( + resource_group_name=resource_group_name, + disk_name=disk_name, + access=access, + duration_in_seconds=duration_in_seconds, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AccessUri', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + grant_access.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess'} + + + def _revoke_access_initial( + self, resource_group_name, disk_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.revoke_access.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'diskName': self._serialize.url("disk_name", disk_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def revoke_access( + self, resource_group_name, disk_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Revokes access to a disk. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param disk_name: The name of the managed disk that is being created. + The name can't be changed after the disk is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The maximum name + length is 80 characters. + :type disk_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._revoke_access_initial( + resource_group_name=resource_group_name, + disk_name=disk_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + revoke_access.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/endGetAccess'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/galleries_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/galleries_operations.py index f58f5b0e2301..9a04fb8a60e8 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/galleries_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/galleries_operations.py @@ -95,14 +95,16 @@ def _create_or_update_initial( def create_or_update( self, resource_group_name, gallery_name, gallery, custom_headers=None, raw=False, polling=True, **operation_config): - """Create or update a gallery. + """Create or update a Shared Image Gallery. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery. The allowed + characters are alphabets and numbers with dots and periods allowed in + the middle. The maximum length is 80 characters. :type gallery_name: str - :param gallery: Parameters supplied to the create or update gallery - operation. + :param gallery: Parameters supplied to the create or update Shared + Image Gallery operation. :type gallery: ~azure.mgmt.compute.v2018_06_01.models.Gallery :param dict custom_headers: headers that will be added to the request :param bool raw: The poller return type is ClientRawResponse, the @@ -146,11 +148,11 @@ def get_long_running_output(response): def get( self, resource_group_name, gallery_name, custom_headers=None, raw=False, **operation_config): - """Retrieves information about a gallery. + """Retrieves information about a Shared Image Gallery. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery. :type gallery_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -246,11 +248,12 @@ def _delete_initial( def delete( self, resource_group_name, gallery_name, custom_headers=None, raw=False, polling=True, **operation_config): - """Delete a gallery. + """Delete a Shared Image Gallery. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery to be + deleted. :type gallery_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: The poller return type is ClientRawResponse, the diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/gallery_image_versions_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/gallery_image_versions_operations.py index d46449b5920c..cb024e59c299 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/gallery_image_versions_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/gallery_image_versions_operations.py @@ -97,21 +97,24 @@ def _create_or_update_initial( def create_or_update( self, resource_group_name, gallery_name, gallery_image_name, gallery_image_version_name, gallery_image_version, custom_headers=None, raw=False, polling=True, **operation_config): - """Create or update a gallery image version. + """Create or update a gallery Image Version. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery in which the + Image Definition resides. :type gallery_name: str - :param gallery_image_name: The name of the gallery image. + :param gallery_image_name: The name of the gallery Image Definition in + which the Image Version is to be created. :type gallery_image_name: str - :param gallery_image_version_name: The name of the gallery image - version. Needs to follow semantic version name pattern: The allowed - characters are digit and period. Digits must be within the range of a - 32-bit integer. Format: .. + :param gallery_image_version_name: The name of the gallery Image + Version to be created. Needs to follow semantic version name pattern: + The allowed characters are digit and period. Digits must be within the + range of a 32-bit integer. Format: + .. :type gallery_image_version_name: str :param gallery_image_version: Parameters supplied to the create or - update gallery image version operation. + update gallery Image Version operation. :type gallery_image_version: ~azure.mgmt.compute.v2018_06_01.models.GalleryImageVersion :param dict custom_headers: headers that will be added to the request @@ -158,16 +161,18 @@ def get_long_running_output(response): def get( self, resource_group_name, gallery_name, gallery_image_name, gallery_image_version_name, expand=None, custom_headers=None, raw=False, **operation_config): - """Retrieves information about a gallery image version. + """Retrieves information about a gallery Image Version. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery in which the + Image Definition resides. :type gallery_name: str - :param gallery_image_name: The name of the gallery image. + :param gallery_image_name: The name of the gallery Image Definition in + which the Image Version resides. :type gallery_image_name: str - :param gallery_image_version_name: The name of the gallery image - version. + :param gallery_image_version_name: The name of the gallery Image + Version to be retrieved. :type gallery_image_version_name: str :param expand: The expand expression to apply on the operation. Possible values include: 'ReplicationStatus' @@ -273,16 +278,18 @@ def _delete_initial( def delete( self, resource_group_name, gallery_name, gallery_image_name, gallery_image_version_name, custom_headers=None, raw=False, polling=True, **operation_config): - """Delete a gallery image version. + """Delete a gallery Image Version. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery in which the + Image Definition resides. :type gallery_name: str - :param gallery_image_name: The name of the gallery image. + :param gallery_image_name: The name of the gallery Image Definition in + which the Image Version resides. :type gallery_image_name: str - :param gallery_image_version_name: The name of the gallery image - version. + :param gallery_image_version_name: The name of the gallery Image + Version to be deleted. :type gallery_image_version_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: The poller return type is ClientRawResponse, the @@ -321,13 +328,15 @@ def get_long_running_output(response): def list_by_gallery_image( self, resource_group_name, gallery_name, gallery_image_name, custom_headers=None, raw=False, **operation_config): - """List gallery image versions under a gallery image. + """List gallery Image Versions in a gallery Image Definition. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery in which the + Image Definition resides. :type gallery_name: str - :param gallery_image_name: The name of the gallery image. + :param gallery_image_name: The name of the Shared Image Gallery Image + Definition from which the Image Versions are to be listed. :type gallery_image_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/gallery_images_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/gallery_images_operations.py index 310e941acdaa..3a73ceb60df4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/gallery_images_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/gallery_images_operations.py @@ -96,13 +96,17 @@ def _create_or_update_initial( def create_or_update( self, resource_group_name, gallery_name, gallery_image_name, gallery_image, custom_headers=None, raw=False, polling=True, **operation_config): - """Create or update a gallery image. + """Create or update a gallery Image Definition. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery in which the + Image Definition is to be created. :type gallery_name: str - :param gallery_image_name: The name of the gallery image. + :param gallery_image_name: The name of the gallery Image Definition to + be created or updated. The allowed characters are alphabets and + numbers with dots, dashes, and periods allowed in the middle. The + maximum length is 80 characters. :type gallery_image_name: str :param gallery_image: Parameters supplied to the create or update gallery image operation. @@ -151,13 +155,15 @@ def get_long_running_output(response): def get( self, resource_group_name, gallery_name, gallery_image_name, custom_headers=None, raw=False, **operation_config): - """Retrieves information about a gallery image. + """Retrieves information about a gallery Image Definition. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery from which + the Image Definitions are to be retrieved. :type gallery_name: str - :param gallery_image_name: The name of the gallery image. + :param gallery_image_name: The name of the gallery Image Definition to + be retrieved. :type gallery_image_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -259,9 +265,11 @@ def delete( :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery in which the + Image Definition is to be deleted. :type gallery_name: str - :param gallery_image_name: The name of the gallery image. + :param gallery_image_name: The name of the gallery Image Definition to + be deleted. :type gallery_image_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: The poller return type is ClientRawResponse, the @@ -299,11 +307,12 @@ def get_long_running_output(response): def list_by_gallery( self, resource_group_name, gallery_name, custom_headers=None, raw=False, **operation_config): - """List gallery images under a gallery. + """List gallery Image Definitions in a gallery. :param resource_group_name: The name of the resource group. :type resource_group_name: str - :param gallery_name: The name of the gallery. + :param gallery_name: The name of the Shared Image Gallery from which + Image Definitions are to be listed. :type gallery_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/snapshots_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/snapshots_operations.py new file mode 100644 index 000000000000..8056b1204eda --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/snapshots_operations.py @@ -0,0 +1,722 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class SnapshotsOperations(object): + """SnapshotsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-06-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, snapshot_name, snapshot, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'snapshotName': self._serialize.url("snapshot_name", snapshot_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(snapshot, 'Snapshot') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Snapshot', response) + if response.status_code == 202: + deserialized = self._deserialize('Snapshot', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, snapshot_name, snapshot, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a snapshot. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param snapshot_name: The name of the snapshot that is being created. + The name can't be changed after the snapshot is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The max name length + is 80 characters. + :type snapshot_name: str + :param snapshot: Snapshot object supplied in the body of the Put disk + operation. + :type snapshot: ~azure.mgmt.compute.v2018_06_01.models.Snapshot + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Snapshot or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_06_01.models.Snapshot] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_06_01.models.Snapshot]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + snapshot_name=snapshot_name, + snapshot=snapshot, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Snapshot', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}'} + + + def _update_initial( + self, resource_group_name, snapshot_name, snapshot, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'snapshotName': self._serialize.url("snapshot_name", snapshot_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(snapshot, 'SnapshotUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Snapshot', response) + if response.status_code == 202: + deserialized = self._deserialize('Snapshot', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, snapshot_name, snapshot, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates (patches) a snapshot. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param snapshot_name: The name of the snapshot that is being created. + The name can't be changed after the snapshot is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The max name length + is 80 characters. + :type snapshot_name: str + :param snapshot: Snapshot object supplied in the body of the Patch + snapshot operation. + :type snapshot: ~azure.mgmt.compute.v2018_06_01.models.SnapshotUpdate + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Snapshot or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_06_01.models.Snapshot] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_06_01.models.Snapshot]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + snapshot_name=snapshot_name, + snapshot=snapshot, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Snapshot', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}'} + + def get( + self, resource_group_name, snapshot_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a snapshot. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param snapshot_name: The name of the snapshot that is being created. + The name can't be changed after the snapshot is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The max name length + is 80 characters. + :type snapshot_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Snapshot or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_06_01.models.Snapshot or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'snapshotName': self._serialize.url("snapshot_name", snapshot_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Snapshot', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}'} + + + def _delete_initial( + self, resource_group_name, snapshot_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'snapshotName': self._serialize.url("snapshot_name", snapshot_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, snapshot_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a snapshot. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param snapshot_name: The name of the snapshot that is being created. + The name can't be changed after the snapshot is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The max name length + is 80 characters. + :type snapshot_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + snapshot_name=snapshot_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists snapshots under a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Snapshot + :rtype: + ~azure.mgmt.compute.v2018_06_01.models.SnapshotPaged[~azure.mgmt.compute.v2018_06_01.models.Snapshot] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SnapshotPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SnapshotPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists snapshots under a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Snapshot + :rtype: + ~azure.mgmt.compute.v2018_06_01.models.SnapshotPaged[~azure.mgmt.compute.v2018_06_01.models.Snapshot] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SnapshotPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SnapshotPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/snapshots'} + + + def _grant_access_initial( + self, resource_group_name, snapshot_name, access, duration_in_seconds, custom_headers=None, raw=False, **operation_config): + grant_access_data = models.GrantAccessData(access=access, duration_in_seconds=duration_in_seconds) + + # Construct URL + url = self.grant_access.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'snapshotName': self._serialize.url("snapshot_name", snapshot_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(grant_access_data, 'GrantAccessData') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AccessUri', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def grant_access( + self, resource_group_name, snapshot_name, access, duration_in_seconds, custom_headers=None, raw=False, polling=True, **operation_config): + """Grants access to a snapshot. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param snapshot_name: The name of the snapshot that is being created. + The name can't be changed after the snapshot is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The max name length + is 80 characters. + :type snapshot_name: str + :param access: Possible values include: 'None', 'Read' + :type access: str or + ~azure.mgmt.compute.v2018_06_01.models.AccessLevel + :param duration_in_seconds: Time duration in seconds until the SAS + access expires. + :type duration_in_seconds: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AccessUri or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_06_01.models.AccessUri] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_06_01.models.AccessUri]] + :raises: :class:`CloudError` + """ + raw_result = self._grant_access_initial( + resource_group_name=resource_group_name, + snapshot_name=snapshot_name, + access=access, + duration_in_seconds=duration_in_seconds, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AccessUri', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + grant_access.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/beginGetAccess'} + + + def _revoke_access_initial( + self, resource_group_name, snapshot_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.revoke_access.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'snapshotName': self._serialize.url("snapshot_name", snapshot_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def revoke_access( + self, resource_group_name, snapshot_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Revokes access to a snapshot. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param snapshot_name: The name of the snapshot that is being created. + The name can't be changed after the snapshot is created. Supported + characters for the name are a-z, A-Z, 0-9 and _. The max name length + is 80 characters. + :type snapshot_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._revoke_access_initial( + resource_group_name=resource_group_name, + snapshot_name=snapshot_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + revoke_access.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/endGetAccess'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_scale_set_rolling_upgrades_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_scale_set_rolling_upgrades_operations.py index 0fb3a482349b..0127fe1c5c4a 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_scale_set_rolling_upgrades_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_scale_set_rolling_upgrades_operations.py @@ -200,6 +200,88 @@ def get_long_running_output(response): return LROPoller(self._client, raw_result, get_long_running_output, polling_method) start_os_upgrade.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osRollingUpgrade'} + + def _start_extension_upgrade_initial( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start_extension_upgrade.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start_extension_upgrade( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts a rolling upgrade to move all extensions for all virtual machine + scale set instances to the latest available extension version. + Instances which are already running the latest extension versions are + not affected. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_extension_upgrade_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start_extension_upgrade.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade'} + def get_latest( self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): """Gets the status of the latest virtual machine scale set rolling diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_scale_sets_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_scale_sets_operations.py index ee4c53596d64..7fa76a536bac 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_scale_sets_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_scale_sets_operations.py @@ -1352,6 +1352,9 @@ def _perform_maintenance_initial( def perform_maintenance( self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): """Perform maintenance on one or more virtual machines in a VM scale set. + Operation on instances which are not eligible for perform maintenance + will be failed. Please refer to best practices for more details: + https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-maintenance-notifications. :param resource_group_name: The name of the resource group. :type resource_group_name: str diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_sizes_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_sizes_operations.py index a9f96e9c4f70..799ade49c144 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_sizes_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machine_sizes_operations.py @@ -39,8 +39,8 @@ def __init__(self, client, config, serializer, deserializer): def list( self, location, custom_headers=None, raw=False, **operation_config): - """Lists all available virtual machine sizes for a subscription in a - location. + """This API is deprecated. Use [Resources + Skus](https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list). :param location: The location upon which virtual-machine-sizes is queried. diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machines_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machines_operations.py index 6550e47a4fe0..fe68c6d10da4 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machines_operations.py +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01/operations/virtual_machines_operations.py @@ -39,6 +39,75 @@ def __init__(self, client, config, serializer, deserializer): self.config = config + def list_by_location( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets all the virtual machines under the specified subscription for the + specified location. + + :param location: The location for which virtual machines under the + subscription are queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachine + :rtype: + ~azure.mgmt.compute.v2018_06_01.models.VirtualMachinePaged[~azure.mgmt.compute.v2018_06_01.models.VirtualMachine] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_location.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_location.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines'} + def _capture_initial( self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, **operation_config): diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/__init__.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/__init__.py new file mode 100644 index 000000000000..88ded2f640de --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/__init__.py @@ -0,0 +1,18 @@ +# 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 .compute_management_client import ComputeManagementClient +from .version import VERSION + +__all__ = ['ComputeManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/compute_management_client.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/compute_management_client.py new file mode 100644 index 000000000000..5fef76bdb571 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/compute_management_client.py @@ -0,0 +1,155 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.operations import Operations +from .operations.availability_sets_operations import AvailabilitySetsOperations +from .operations.virtual_machine_extension_images_operations import VirtualMachineExtensionImagesOperations +from .operations.virtual_machine_extensions_operations import VirtualMachineExtensionsOperations +from .operations.virtual_machine_images_operations import VirtualMachineImagesOperations +from .operations.usage_operations import UsageOperations +from .operations.virtual_machines_operations import VirtualMachinesOperations +from .operations.virtual_machine_sizes_operations import VirtualMachineSizesOperations +from .operations.images_operations import ImagesOperations +from .operations.virtual_machine_scale_sets_operations import VirtualMachineScaleSetsOperations +from .operations.virtual_machine_scale_set_extensions_operations import VirtualMachineScaleSetExtensionsOperations +from .operations.virtual_machine_scale_set_rolling_upgrades_operations import VirtualMachineScaleSetRollingUpgradesOperations +from .operations.virtual_machine_scale_set_vms_operations import VirtualMachineScaleSetVMsOperations +from .operations.log_analytics_operations import LogAnalyticsOperations +from .operations.virtual_machine_run_commands_operations import VirtualMachineRunCommandsOperations +from . import models + + +class ComputeManagementClientConfiguration(AzureConfiguration): + """Configuration for ComputeManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Subscription credentials which uniquely identify + Microsoft Azure subscription. The subscription ID forms part of the URI + for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(ComputeManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-compute/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class ComputeManagementClient(SDKClient): + """Compute Client + + :ivar config: Configuration for client. + :vartype config: ComputeManagementClientConfiguration + + :ivar operations: Operations operations + :vartype operations: azure.mgmt.compute.v2018_10_01.operations.Operations + :ivar availability_sets: AvailabilitySets operations + :vartype availability_sets: azure.mgmt.compute.v2018_10_01.operations.AvailabilitySetsOperations + :ivar virtual_machine_extension_images: VirtualMachineExtensionImages operations + :vartype virtual_machine_extension_images: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineExtensionImagesOperations + :ivar virtual_machine_extensions: VirtualMachineExtensions operations + :vartype virtual_machine_extensions: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineExtensionsOperations + :ivar virtual_machine_images: VirtualMachineImages operations + :vartype virtual_machine_images: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineImagesOperations + :ivar usage: Usage operations + :vartype usage: azure.mgmt.compute.v2018_10_01.operations.UsageOperations + :ivar virtual_machines: VirtualMachines operations + :vartype virtual_machines: azure.mgmt.compute.v2018_10_01.operations.VirtualMachinesOperations + :ivar virtual_machine_sizes: VirtualMachineSizes operations + :vartype virtual_machine_sizes: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineSizesOperations + :ivar images: Images operations + :vartype images: azure.mgmt.compute.v2018_10_01.operations.ImagesOperations + :ivar virtual_machine_scale_sets: VirtualMachineScaleSets operations + :vartype virtual_machine_scale_sets: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineScaleSetsOperations + :ivar virtual_machine_scale_set_extensions: VirtualMachineScaleSetExtensions operations + :vartype virtual_machine_scale_set_extensions: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineScaleSetExtensionsOperations + :ivar virtual_machine_scale_set_rolling_upgrades: VirtualMachineScaleSetRollingUpgrades operations + :vartype virtual_machine_scale_set_rolling_upgrades: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineScaleSetRollingUpgradesOperations + :ivar virtual_machine_scale_set_vms: VirtualMachineScaleSetVMs operations + :vartype virtual_machine_scale_set_vms: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineScaleSetVMsOperations + :ivar log_analytics: LogAnalytics operations + :vartype log_analytics: azure.mgmt.compute.v2018_10_01.operations.LogAnalyticsOperations + :ivar virtual_machine_run_commands: VirtualMachineRunCommands operations + :vartype virtual_machine_run_commands: azure.mgmt.compute.v2018_10_01.operations.VirtualMachineRunCommandsOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Subscription credentials which uniquely identify + Microsoft Azure subscription. The subscription ID forms part of the URI + for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = ComputeManagementClientConfiguration(credentials, subscription_id, base_url) + super(ComputeManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2018-10-01' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.availability_sets = AvailabilitySetsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_extension_images = VirtualMachineExtensionImagesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_extensions = VirtualMachineExtensionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_images = VirtualMachineImagesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.usage = UsageOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machines = VirtualMachinesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_sizes = VirtualMachineSizesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.images = ImagesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_scale_sets = VirtualMachineScaleSetsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_scale_set_extensions = VirtualMachineScaleSetExtensionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_scale_set_rolling_upgrades = VirtualMachineScaleSetRollingUpgradesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_scale_set_vms = VirtualMachineScaleSetVMsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.log_analytics = LogAnalyticsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_machine_run_commands = VirtualMachineRunCommandsOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/__init__.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/__init__.py new file mode 100644 index 000000000000..d9f30207ad02 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/__init__.py @@ -0,0 +1,487 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .compute_operation_value_py3 import ComputeOperationValue + from .instance_view_status_py3 import InstanceViewStatus + from .sub_resource_py3 import SubResource + from .sku_py3 import Sku + from .availability_set_py3 import AvailabilitySet + from .availability_set_update_py3 import AvailabilitySetUpdate + from .virtual_machine_size_py3 import VirtualMachineSize + from .virtual_machine_extension_image_py3 import VirtualMachineExtensionImage + from .virtual_machine_image_resource_py3 import VirtualMachineImageResource + from .virtual_machine_extension_instance_view_py3 import VirtualMachineExtensionInstanceView + from .virtual_machine_extension_py3 import VirtualMachineExtension + from .virtual_machine_extension_update_py3 import VirtualMachineExtensionUpdate + from .virtual_machine_extensions_list_result_py3 import VirtualMachineExtensionsListResult + from .purchase_plan_py3 import PurchasePlan + from .os_disk_image_py3 import OSDiskImage + from .data_disk_image_py3 import DataDiskImage + from .automatic_os_upgrade_properties_py3 import AutomaticOSUpgradeProperties + from .virtual_machine_image_py3 import VirtualMachineImage + from .usage_name_py3 import UsageName + from .usage_py3 import Usage + from .virtual_machine_capture_parameters_py3 import VirtualMachineCaptureParameters + from .virtual_machine_capture_result_py3 import VirtualMachineCaptureResult + from .plan_py3 import Plan + from .hardware_profile_py3 import HardwareProfile + from .image_reference_py3 import ImageReference + from .key_vault_secret_reference_py3 import KeyVaultSecretReference + from .key_vault_key_reference_py3 import KeyVaultKeyReference + from .disk_encryption_settings_py3 import DiskEncryptionSettings + from .virtual_hard_disk_py3 import VirtualHardDisk + from .diff_disk_settings_py3 import DiffDiskSettings + from .managed_disk_parameters_py3 import ManagedDiskParameters + from .os_disk_py3 import OSDisk + from .data_disk_py3 import DataDisk + from .storage_profile_py3 import StorageProfile + from .additional_capabilities_py3 import AdditionalCapabilities + from .additional_unattend_content_py3 import AdditionalUnattendContent + from .win_rm_listener_py3 import WinRMListener + from .win_rm_configuration_py3 import WinRMConfiguration + from .windows_configuration_py3 import WindowsConfiguration + from .ssh_public_key_py3 import SshPublicKey + from .ssh_configuration_py3 import SshConfiguration + from .linux_configuration_py3 import LinuxConfiguration + from .vault_certificate_py3 import VaultCertificate + from .vault_secret_group_py3 import VaultSecretGroup + from .os_profile_py3 import OSProfile + from .network_interface_reference_py3 import NetworkInterfaceReference + from .network_profile_py3 import NetworkProfile + from .boot_diagnostics_py3 import BootDiagnostics + from .diagnostics_profile_py3 import DiagnosticsProfile + from .virtual_machine_extension_handler_instance_view_py3 import VirtualMachineExtensionHandlerInstanceView + from .virtual_machine_agent_instance_view_py3 import VirtualMachineAgentInstanceView + from .disk_instance_view_py3 import DiskInstanceView + from .boot_diagnostics_instance_view_py3 import BootDiagnosticsInstanceView + from .virtual_machine_identity_user_assigned_identities_value_py3 import VirtualMachineIdentityUserAssignedIdentitiesValue + from .virtual_machine_identity_py3 import VirtualMachineIdentity + from .maintenance_redeploy_status_py3 import MaintenanceRedeployStatus + from .virtual_machine_instance_view_py3 import VirtualMachineInstanceView + from .virtual_machine_py3 import VirtualMachine + from .virtual_machine_update_py3 import VirtualMachineUpdate + from .automatic_os_upgrade_policy_py3 import AutomaticOSUpgradePolicy + from .rolling_upgrade_policy_py3 import RollingUpgradePolicy + from .upgrade_policy_py3 import UpgradePolicy + from .image_os_disk_py3 import ImageOSDisk + from .image_data_disk_py3 import ImageDataDisk + from .image_storage_profile_py3 import ImageStorageProfile + from .image_py3 import Image + from .image_update_py3 import ImageUpdate + from .virtual_machine_scale_set_identity_user_assigned_identities_value_py3 import VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue + from .virtual_machine_scale_set_identity_py3 import VirtualMachineScaleSetIdentity + from .virtual_machine_scale_set_os_profile_py3 import VirtualMachineScaleSetOSProfile + from .virtual_machine_scale_set_update_os_profile_py3 import VirtualMachineScaleSetUpdateOSProfile + from .virtual_machine_scale_set_managed_disk_parameters_py3 import VirtualMachineScaleSetManagedDiskParameters + from .virtual_machine_scale_set_os_disk_py3 import VirtualMachineScaleSetOSDisk + from .virtual_machine_scale_set_update_os_disk_py3 import VirtualMachineScaleSetUpdateOSDisk + from .virtual_machine_scale_set_data_disk_py3 import VirtualMachineScaleSetDataDisk + from .virtual_machine_scale_set_storage_profile_py3 import VirtualMachineScaleSetStorageProfile + from .virtual_machine_scale_set_update_storage_profile_py3 import VirtualMachineScaleSetUpdateStorageProfile + from .api_entity_reference_py3 import ApiEntityReference + from .virtual_machine_scale_set_public_ip_address_configuration_dns_settings_py3 import VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings + from .virtual_machine_scale_set_ip_tag_py3 import VirtualMachineScaleSetIpTag + from .virtual_machine_scale_set_public_ip_address_configuration_py3 import VirtualMachineScaleSetPublicIPAddressConfiguration + from .virtual_machine_scale_set_update_public_ip_address_configuration_py3 import VirtualMachineScaleSetUpdatePublicIPAddressConfiguration + from .virtual_machine_scale_set_ip_configuration_py3 import VirtualMachineScaleSetIPConfiguration + from .virtual_machine_scale_set_update_ip_configuration_py3 import VirtualMachineScaleSetUpdateIPConfiguration + from .virtual_machine_scale_set_network_configuration_dns_settings_py3 import VirtualMachineScaleSetNetworkConfigurationDnsSettings + from .virtual_machine_scale_set_network_configuration_py3 import VirtualMachineScaleSetNetworkConfiguration + from .virtual_machine_scale_set_update_network_configuration_py3 import VirtualMachineScaleSetUpdateNetworkConfiguration + from .virtual_machine_scale_set_network_profile_py3 import VirtualMachineScaleSetNetworkProfile + from .virtual_machine_scale_set_update_network_profile_py3 import VirtualMachineScaleSetUpdateNetworkProfile + from .virtual_machine_scale_set_extension_py3 import VirtualMachineScaleSetExtension + from .virtual_machine_scale_set_extension_profile_py3 import VirtualMachineScaleSetExtensionProfile + from .virtual_machine_scale_set_vm_profile_py3 import VirtualMachineScaleSetVMProfile + from .virtual_machine_scale_set_update_vm_profile_py3 import VirtualMachineScaleSetUpdateVMProfile + from .virtual_machine_scale_set_py3 import VirtualMachineScaleSet + from .virtual_machine_scale_set_update_py3 import VirtualMachineScaleSetUpdate + from .virtual_machine_scale_set_vm_instance_ids_py3 import VirtualMachineScaleSetVMInstanceIDs + from .virtual_machine_scale_set_vm_instance_required_ids_py3 import VirtualMachineScaleSetVMInstanceRequiredIDs + from .virtual_machine_status_code_count_py3 import VirtualMachineStatusCodeCount + from .virtual_machine_scale_set_instance_view_statuses_summary_py3 import VirtualMachineScaleSetInstanceViewStatusesSummary + from .virtual_machine_scale_set_vm_extensions_summary_py3 import VirtualMachineScaleSetVMExtensionsSummary + from .virtual_machine_scale_set_instance_view_py3 import VirtualMachineScaleSetInstanceView + from .virtual_machine_scale_set_sku_capacity_py3 import VirtualMachineScaleSetSkuCapacity + from .virtual_machine_scale_set_sku_py3 import VirtualMachineScaleSetSku + from .api_error_base_py3 import ApiErrorBase + from .inner_error_py3 import InnerError + from .api_error_py3 import ApiError + from .rollback_status_info_py3 import RollbackStatusInfo + from .upgrade_operation_history_status_py3 import UpgradeOperationHistoryStatus + from .rolling_upgrade_progress_info_py3 import RollingUpgradeProgressInfo + from .upgrade_operation_historical_status_info_properties_py3 import UpgradeOperationHistoricalStatusInfoProperties + from .upgrade_operation_historical_status_info_py3 import UpgradeOperationHistoricalStatusInfo + from .virtual_machine_health_status_py3 import VirtualMachineHealthStatus + from .virtual_machine_scale_set_vm_instance_view_py3 import VirtualMachineScaleSetVMInstanceView + from .virtual_machine_scale_set_vm_py3 import VirtualMachineScaleSetVM + from .rolling_upgrade_running_status_py3 import RollingUpgradeRunningStatus + from .rolling_upgrade_status_info_py3 import RollingUpgradeStatusInfo + from .resource_py3 import Resource + from .update_resource_py3 import UpdateResource + from .sub_resource_read_only_py3 import SubResourceReadOnly + from .recovery_walk_response_py3 import RecoveryWalkResponse + from .request_rate_by_interval_input_py3 import RequestRateByIntervalInput + from .throttled_requests_input_py3 import ThrottledRequestsInput + from .log_analytics_input_base_py3 import LogAnalyticsInputBase + from .log_analytics_output_py3 import LogAnalyticsOutput + from .log_analytics_operation_result_py3 import LogAnalyticsOperationResult + from .run_command_input_parameter_py3 import RunCommandInputParameter + from .run_command_input_py3 import RunCommandInput + from .run_command_parameter_definition_py3 import RunCommandParameterDefinition + from .run_command_document_base_py3 import RunCommandDocumentBase + from .run_command_document_py3 import RunCommandDocument + from .run_command_result_py3 import RunCommandResult +except (SyntaxError, ImportError): + from .compute_operation_value import ComputeOperationValue + from .instance_view_status import InstanceViewStatus + from .sub_resource import SubResource + from .sku import Sku + from .availability_set import AvailabilitySet + from .availability_set_update import AvailabilitySetUpdate + from .virtual_machine_size import VirtualMachineSize + from .virtual_machine_extension_image import VirtualMachineExtensionImage + from .virtual_machine_image_resource import VirtualMachineImageResource + from .virtual_machine_extension_instance_view import VirtualMachineExtensionInstanceView + from .virtual_machine_extension import VirtualMachineExtension + from .virtual_machine_extension_update import VirtualMachineExtensionUpdate + from .virtual_machine_extensions_list_result import VirtualMachineExtensionsListResult + from .purchase_plan import PurchasePlan + from .os_disk_image import OSDiskImage + from .data_disk_image import DataDiskImage + from .automatic_os_upgrade_properties import AutomaticOSUpgradeProperties + from .virtual_machine_image import VirtualMachineImage + from .usage_name import UsageName + from .usage import Usage + from .virtual_machine_capture_parameters import VirtualMachineCaptureParameters + from .virtual_machine_capture_result import VirtualMachineCaptureResult + from .plan import Plan + from .hardware_profile import HardwareProfile + from .image_reference import ImageReference + from .key_vault_secret_reference import KeyVaultSecretReference + from .key_vault_key_reference import KeyVaultKeyReference + from .disk_encryption_settings import DiskEncryptionSettings + from .virtual_hard_disk import VirtualHardDisk + from .diff_disk_settings import DiffDiskSettings + from .managed_disk_parameters import ManagedDiskParameters + from .os_disk import OSDisk + from .data_disk import DataDisk + from .storage_profile import StorageProfile + from .additional_capabilities import AdditionalCapabilities + from .additional_unattend_content import AdditionalUnattendContent + from .win_rm_listener import WinRMListener + from .win_rm_configuration import WinRMConfiguration + from .windows_configuration import WindowsConfiguration + from .ssh_public_key import SshPublicKey + from .ssh_configuration import SshConfiguration + from .linux_configuration import LinuxConfiguration + from .vault_certificate import VaultCertificate + from .vault_secret_group import VaultSecretGroup + from .os_profile import OSProfile + from .network_interface_reference import NetworkInterfaceReference + from .network_profile import NetworkProfile + from .boot_diagnostics import BootDiagnostics + from .diagnostics_profile import DiagnosticsProfile + from .virtual_machine_extension_handler_instance_view import VirtualMachineExtensionHandlerInstanceView + from .virtual_machine_agent_instance_view import VirtualMachineAgentInstanceView + from .disk_instance_view import DiskInstanceView + from .boot_diagnostics_instance_view import BootDiagnosticsInstanceView + from .virtual_machine_identity_user_assigned_identities_value import VirtualMachineIdentityUserAssignedIdentitiesValue + from .virtual_machine_identity import VirtualMachineIdentity + from .maintenance_redeploy_status import MaintenanceRedeployStatus + from .virtual_machine_instance_view import VirtualMachineInstanceView + from .virtual_machine import VirtualMachine + from .virtual_machine_update import VirtualMachineUpdate + from .automatic_os_upgrade_policy import AutomaticOSUpgradePolicy + from .rolling_upgrade_policy import RollingUpgradePolicy + from .upgrade_policy import UpgradePolicy + from .image_os_disk import ImageOSDisk + from .image_data_disk import ImageDataDisk + from .image_storage_profile import ImageStorageProfile + from .image import Image + from .image_update import ImageUpdate + from .virtual_machine_scale_set_identity_user_assigned_identities_value import VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue + from .virtual_machine_scale_set_identity import VirtualMachineScaleSetIdentity + from .virtual_machine_scale_set_os_profile import VirtualMachineScaleSetOSProfile + from .virtual_machine_scale_set_update_os_profile import VirtualMachineScaleSetUpdateOSProfile + from .virtual_machine_scale_set_managed_disk_parameters import VirtualMachineScaleSetManagedDiskParameters + from .virtual_machine_scale_set_os_disk import VirtualMachineScaleSetOSDisk + from .virtual_machine_scale_set_update_os_disk import VirtualMachineScaleSetUpdateOSDisk + from .virtual_machine_scale_set_data_disk import VirtualMachineScaleSetDataDisk + from .virtual_machine_scale_set_storage_profile import VirtualMachineScaleSetStorageProfile + from .virtual_machine_scale_set_update_storage_profile import VirtualMachineScaleSetUpdateStorageProfile + from .api_entity_reference import ApiEntityReference + from .virtual_machine_scale_set_public_ip_address_configuration_dns_settings import VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings + from .virtual_machine_scale_set_ip_tag import VirtualMachineScaleSetIpTag + from .virtual_machine_scale_set_public_ip_address_configuration import VirtualMachineScaleSetPublicIPAddressConfiguration + from .virtual_machine_scale_set_update_public_ip_address_configuration import VirtualMachineScaleSetUpdatePublicIPAddressConfiguration + from .virtual_machine_scale_set_ip_configuration import VirtualMachineScaleSetIPConfiguration + from .virtual_machine_scale_set_update_ip_configuration import VirtualMachineScaleSetUpdateIPConfiguration + from .virtual_machine_scale_set_network_configuration_dns_settings import VirtualMachineScaleSetNetworkConfigurationDnsSettings + from .virtual_machine_scale_set_network_configuration import VirtualMachineScaleSetNetworkConfiguration + from .virtual_machine_scale_set_update_network_configuration import VirtualMachineScaleSetUpdateNetworkConfiguration + from .virtual_machine_scale_set_network_profile import VirtualMachineScaleSetNetworkProfile + from .virtual_machine_scale_set_update_network_profile import VirtualMachineScaleSetUpdateNetworkProfile + from .virtual_machine_scale_set_extension import VirtualMachineScaleSetExtension + from .virtual_machine_scale_set_extension_profile import VirtualMachineScaleSetExtensionProfile + from .virtual_machine_scale_set_vm_profile import VirtualMachineScaleSetVMProfile + from .virtual_machine_scale_set_update_vm_profile import VirtualMachineScaleSetUpdateVMProfile + from .virtual_machine_scale_set import VirtualMachineScaleSet + from .virtual_machine_scale_set_update import VirtualMachineScaleSetUpdate + from .virtual_machine_scale_set_vm_instance_ids import VirtualMachineScaleSetVMInstanceIDs + from .virtual_machine_scale_set_vm_instance_required_ids import VirtualMachineScaleSetVMInstanceRequiredIDs + from .virtual_machine_status_code_count import VirtualMachineStatusCodeCount + from .virtual_machine_scale_set_instance_view_statuses_summary import VirtualMachineScaleSetInstanceViewStatusesSummary + from .virtual_machine_scale_set_vm_extensions_summary import VirtualMachineScaleSetVMExtensionsSummary + from .virtual_machine_scale_set_instance_view import VirtualMachineScaleSetInstanceView + from .virtual_machine_scale_set_sku_capacity import VirtualMachineScaleSetSkuCapacity + from .virtual_machine_scale_set_sku import VirtualMachineScaleSetSku + from .api_error_base import ApiErrorBase + from .inner_error import InnerError + from .api_error import ApiError + from .rollback_status_info import RollbackStatusInfo + from .upgrade_operation_history_status import UpgradeOperationHistoryStatus + from .rolling_upgrade_progress_info import RollingUpgradeProgressInfo + from .upgrade_operation_historical_status_info_properties import UpgradeOperationHistoricalStatusInfoProperties + from .upgrade_operation_historical_status_info import UpgradeOperationHistoricalStatusInfo + from .virtual_machine_health_status import VirtualMachineHealthStatus + from .virtual_machine_scale_set_vm_instance_view import VirtualMachineScaleSetVMInstanceView + from .virtual_machine_scale_set_vm import VirtualMachineScaleSetVM + from .rolling_upgrade_running_status import RollingUpgradeRunningStatus + from .rolling_upgrade_status_info import RollingUpgradeStatusInfo + from .resource import Resource + from .update_resource import UpdateResource + from .sub_resource_read_only import SubResourceReadOnly + from .recovery_walk_response import RecoveryWalkResponse + from .request_rate_by_interval_input import RequestRateByIntervalInput + from .throttled_requests_input import ThrottledRequestsInput + from .log_analytics_input_base import LogAnalyticsInputBase + from .log_analytics_output import LogAnalyticsOutput + from .log_analytics_operation_result import LogAnalyticsOperationResult + from .run_command_input_parameter import RunCommandInputParameter + from .run_command_input import RunCommandInput + from .run_command_parameter_definition import RunCommandParameterDefinition + from .run_command_document_base import RunCommandDocumentBase + from .run_command_document import RunCommandDocument + from .run_command_result import RunCommandResult +from .compute_operation_value_paged import ComputeOperationValuePaged +from .availability_set_paged import AvailabilitySetPaged +from .virtual_machine_size_paged import VirtualMachineSizePaged +from .usage_paged import UsagePaged +from .virtual_machine_paged import VirtualMachinePaged +from .image_paged import ImagePaged +from .virtual_machine_scale_set_paged import VirtualMachineScaleSetPaged +from .virtual_machine_scale_set_sku_paged import VirtualMachineScaleSetSkuPaged +from .upgrade_operation_historical_status_info_paged import UpgradeOperationHistoricalStatusInfoPaged +from .virtual_machine_scale_set_extension_paged import VirtualMachineScaleSetExtensionPaged +from .virtual_machine_scale_set_vm_paged import VirtualMachineScaleSetVMPaged +from .run_command_document_base_paged import RunCommandDocumentBasePaged +from .compute_management_client_enums import ( + StatusLevelTypes, + AvailabilitySetSkuTypes, + OperatingSystemTypes, + VirtualMachineSizeTypes, + CachingTypes, + DiskCreateOptionTypes, + StorageAccountTypes, + DiffDiskOptions, + PassNames, + ComponentNames, + SettingNames, + ProtocolTypes, + ResourceIdentityType, + MaintenanceOperationResultCodeTypes, + UpgradeMode, + OperatingSystemStateTypes, + IPVersion, + VirtualMachinePriorityTypes, + VirtualMachineEvictionPolicyTypes, + VirtualMachineScaleSetSkuScaleType, + UpgradeState, + UpgradeOperationInvoker, + RollingUpgradeStatusCode, + RollingUpgradeActionType, + IntervalInMins, + InstanceViewTypes, +) + +__all__ = [ + 'ComputeOperationValue', + 'InstanceViewStatus', + 'SubResource', + 'Sku', + 'AvailabilitySet', + 'AvailabilitySetUpdate', + 'VirtualMachineSize', + 'VirtualMachineExtensionImage', + 'VirtualMachineImageResource', + 'VirtualMachineExtensionInstanceView', + 'VirtualMachineExtension', + 'VirtualMachineExtensionUpdate', + 'VirtualMachineExtensionsListResult', + 'PurchasePlan', + 'OSDiskImage', + 'DataDiskImage', + 'AutomaticOSUpgradeProperties', + 'VirtualMachineImage', + 'UsageName', + 'Usage', + 'VirtualMachineCaptureParameters', + 'VirtualMachineCaptureResult', + 'Plan', + 'HardwareProfile', + 'ImageReference', + 'KeyVaultSecretReference', + 'KeyVaultKeyReference', + 'DiskEncryptionSettings', + 'VirtualHardDisk', + 'DiffDiskSettings', + 'ManagedDiskParameters', + 'OSDisk', + 'DataDisk', + 'StorageProfile', + 'AdditionalCapabilities', + 'AdditionalUnattendContent', + 'WinRMListener', + 'WinRMConfiguration', + 'WindowsConfiguration', + 'SshPublicKey', + 'SshConfiguration', + 'LinuxConfiguration', + 'VaultCertificate', + 'VaultSecretGroup', + 'OSProfile', + 'NetworkInterfaceReference', + 'NetworkProfile', + 'BootDiagnostics', + 'DiagnosticsProfile', + 'VirtualMachineExtensionHandlerInstanceView', + 'VirtualMachineAgentInstanceView', + 'DiskInstanceView', + 'BootDiagnosticsInstanceView', + 'VirtualMachineIdentityUserAssignedIdentitiesValue', + 'VirtualMachineIdentity', + 'MaintenanceRedeployStatus', + 'VirtualMachineInstanceView', + 'VirtualMachine', + 'VirtualMachineUpdate', + 'AutomaticOSUpgradePolicy', + 'RollingUpgradePolicy', + 'UpgradePolicy', + 'ImageOSDisk', + 'ImageDataDisk', + 'ImageStorageProfile', + 'Image', + 'ImageUpdate', + 'VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue', + 'VirtualMachineScaleSetIdentity', + 'VirtualMachineScaleSetOSProfile', + 'VirtualMachineScaleSetUpdateOSProfile', + 'VirtualMachineScaleSetManagedDiskParameters', + 'VirtualMachineScaleSetOSDisk', + 'VirtualMachineScaleSetUpdateOSDisk', + 'VirtualMachineScaleSetDataDisk', + 'VirtualMachineScaleSetStorageProfile', + 'VirtualMachineScaleSetUpdateStorageProfile', + 'ApiEntityReference', + 'VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings', + 'VirtualMachineScaleSetIpTag', + 'VirtualMachineScaleSetPublicIPAddressConfiguration', + 'VirtualMachineScaleSetUpdatePublicIPAddressConfiguration', + 'VirtualMachineScaleSetIPConfiguration', + 'VirtualMachineScaleSetUpdateIPConfiguration', + 'VirtualMachineScaleSetNetworkConfigurationDnsSettings', + 'VirtualMachineScaleSetNetworkConfiguration', + 'VirtualMachineScaleSetUpdateNetworkConfiguration', + 'VirtualMachineScaleSetNetworkProfile', + 'VirtualMachineScaleSetUpdateNetworkProfile', + 'VirtualMachineScaleSetExtension', + 'VirtualMachineScaleSetExtensionProfile', + 'VirtualMachineScaleSetVMProfile', + 'VirtualMachineScaleSetUpdateVMProfile', + 'VirtualMachineScaleSet', + 'VirtualMachineScaleSetUpdate', + 'VirtualMachineScaleSetVMInstanceIDs', + 'VirtualMachineScaleSetVMInstanceRequiredIDs', + 'VirtualMachineStatusCodeCount', + 'VirtualMachineScaleSetInstanceViewStatusesSummary', + 'VirtualMachineScaleSetVMExtensionsSummary', + 'VirtualMachineScaleSetInstanceView', + 'VirtualMachineScaleSetSkuCapacity', + 'VirtualMachineScaleSetSku', + 'ApiErrorBase', + 'InnerError', + 'ApiError', + 'RollbackStatusInfo', + 'UpgradeOperationHistoryStatus', + 'RollingUpgradeProgressInfo', + 'UpgradeOperationHistoricalStatusInfoProperties', + 'UpgradeOperationHistoricalStatusInfo', + 'VirtualMachineHealthStatus', + 'VirtualMachineScaleSetVMInstanceView', + 'VirtualMachineScaleSetVM', + 'RollingUpgradeRunningStatus', + 'RollingUpgradeStatusInfo', + 'Resource', + 'UpdateResource', + 'SubResourceReadOnly', + 'RecoveryWalkResponse', + 'RequestRateByIntervalInput', + 'ThrottledRequestsInput', + 'LogAnalyticsInputBase', + 'LogAnalyticsOutput', + 'LogAnalyticsOperationResult', + 'RunCommandInputParameter', + 'RunCommandInput', + 'RunCommandParameterDefinition', + 'RunCommandDocumentBase', + 'RunCommandDocument', + 'RunCommandResult', + 'ComputeOperationValuePaged', + 'AvailabilitySetPaged', + 'VirtualMachineSizePaged', + 'UsagePaged', + 'VirtualMachinePaged', + 'ImagePaged', + 'VirtualMachineScaleSetPaged', + 'VirtualMachineScaleSetSkuPaged', + 'UpgradeOperationHistoricalStatusInfoPaged', + 'VirtualMachineScaleSetExtensionPaged', + 'VirtualMachineScaleSetVMPaged', + 'RunCommandDocumentBasePaged', + 'StatusLevelTypes', + 'AvailabilitySetSkuTypes', + 'OperatingSystemTypes', + 'VirtualMachineSizeTypes', + 'CachingTypes', + 'DiskCreateOptionTypes', + 'StorageAccountTypes', + 'DiffDiskOptions', + 'PassNames', + 'ComponentNames', + 'SettingNames', + 'ProtocolTypes', + 'ResourceIdentityType', + 'MaintenanceOperationResultCodeTypes', + 'UpgradeMode', + 'OperatingSystemStateTypes', + 'IPVersion', + 'VirtualMachinePriorityTypes', + 'VirtualMachineEvictionPolicyTypes', + 'VirtualMachineScaleSetSkuScaleType', + 'UpgradeState', + 'UpgradeOperationInvoker', + 'RollingUpgradeStatusCode', + 'RollingUpgradeActionType', + 'IntervalInMins', + 'InstanceViewTypes', +] diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_capabilities.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_capabilities.py new file mode 100644 index 000000000000..18ff109310c8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_capabilities.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdditionalCapabilities(Model): + """Enables or disables a capability on the virtual machine or virtual machine + scale set. + + :param ultra_ssd_enabled: The flag that enables or disables a capability + to have one or more managed data disks with UltraSSD_LRS storage account + type on the VM or VMSS. Managed disks with storage account type + UltraSSD_LRS can be added to a virtual machine or virtual machine scale + set only if this property is enabled. + :type ultra_ssd_enabled: bool + """ + + _attribute_map = { + 'ultra_ssd_enabled': {'key': 'ultraSSDEnabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AdditionalCapabilities, self).__init__(**kwargs) + self.ultra_ssd_enabled = kwargs.get('ultra_ssd_enabled', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_capabilities_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_capabilities_py3.py new file mode 100644 index 000000000000..db83a0a4eacb --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_capabilities_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdditionalCapabilities(Model): + """Enables or disables a capability on the virtual machine or virtual machine + scale set. + + :param ultra_ssd_enabled: The flag that enables or disables a capability + to have one or more managed data disks with UltraSSD_LRS storage account + type on the VM or VMSS. Managed disks with storage account type + UltraSSD_LRS can be added to a virtual machine or virtual machine scale + set only if this property is enabled. + :type ultra_ssd_enabled: bool + """ + + _attribute_map = { + 'ultra_ssd_enabled': {'key': 'ultraSSDEnabled', 'type': 'bool'}, + } + + def __init__(self, *, ultra_ssd_enabled: bool=None, **kwargs) -> None: + super(AdditionalCapabilities, self).__init__(**kwargs) + self.ultra_ssd_enabled = ultra_ssd_enabled diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_unattend_content.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_unattend_content.py new file mode 100644 index 000000000000..46f7944d0f4a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_unattend_content.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdditionalUnattendContent(Model): + """Specifies additional XML formatted information that can be included in the + Unattend.xml file, which is used by Windows Setup. Contents are defined by + setting name, component name, and the pass in which the content is applied. + + :param pass_name: The pass name. Currently, the only allowable value is + OobeSystem. Possible values include: 'OobeSystem' + :type pass_name: str or ~azure.mgmt.compute.v2018_10_01.models.PassNames + :param component_name: The component name. Currently, the only allowable + value is Microsoft-Windows-Shell-Setup. Possible values include: + 'Microsoft-Windows-Shell-Setup' + :type component_name: str or + ~azure.mgmt.compute.v2018_10_01.models.ComponentNames + :param setting_name: Specifies the name of the setting to which the + content applies. Possible values are: FirstLogonCommands and AutoLogon. + Possible values include: 'AutoLogon', 'FirstLogonCommands' + :type setting_name: str or + ~azure.mgmt.compute.v2018_10_01.models.SettingNames + :param content: Specifies the XML formatted content that is added to the + unattend.xml file for the specified path and component. The XML must be + less than 4KB and must include the root element for the setting or feature + that is being inserted. + :type content: str + """ + + _attribute_map = { + 'pass_name': {'key': 'passName', 'type': 'PassNames'}, + 'component_name': {'key': 'componentName', 'type': 'ComponentNames'}, + 'setting_name': {'key': 'settingName', 'type': 'SettingNames'}, + 'content': {'key': 'content', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AdditionalUnattendContent, self).__init__(**kwargs) + self.pass_name = kwargs.get('pass_name', None) + self.component_name = kwargs.get('component_name', None) + self.setting_name = kwargs.get('setting_name', None) + self.content = kwargs.get('content', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_unattend_content_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_unattend_content_py3.py new file mode 100644 index 000000000000..69bf6281a50a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/additional_unattend_content_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdditionalUnattendContent(Model): + """Specifies additional XML formatted information that can be included in the + Unattend.xml file, which is used by Windows Setup. Contents are defined by + setting name, component name, and the pass in which the content is applied. + + :param pass_name: The pass name. Currently, the only allowable value is + OobeSystem. Possible values include: 'OobeSystem' + :type pass_name: str or ~azure.mgmt.compute.v2018_10_01.models.PassNames + :param component_name: The component name. Currently, the only allowable + value is Microsoft-Windows-Shell-Setup. Possible values include: + 'Microsoft-Windows-Shell-Setup' + :type component_name: str or + ~azure.mgmt.compute.v2018_10_01.models.ComponentNames + :param setting_name: Specifies the name of the setting to which the + content applies. Possible values are: FirstLogonCommands and AutoLogon. + Possible values include: 'AutoLogon', 'FirstLogonCommands' + :type setting_name: str or + ~azure.mgmt.compute.v2018_10_01.models.SettingNames + :param content: Specifies the XML formatted content that is added to the + unattend.xml file for the specified path and component. The XML must be + less than 4KB and must include the root element for the setting or feature + that is being inserted. + :type content: str + """ + + _attribute_map = { + 'pass_name': {'key': 'passName', 'type': 'PassNames'}, + 'component_name': {'key': 'componentName', 'type': 'ComponentNames'}, + 'setting_name': {'key': 'settingName', 'type': 'SettingNames'}, + 'content': {'key': 'content', 'type': 'str'}, + } + + def __init__(self, *, pass_name=None, component_name=None, setting_name=None, content: str=None, **kwargs) -> None: + super(AdditionalUnattendContent, self).__init__(**kwargs) + self.pass_name = pass_name + self.component_name = component_name + self.setting_name = setting_name + self.content = content diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_entity_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_entity_reference.py new file mode 100644 index 000000000000..d1bf572e916d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_entity_reference.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiEntityReference(Model): + """The API entity reference. + + :param id: The ARM resource id in the form of + /subscriptions/{SubcriptionId}/resourceGroups/{ResourceGroupName}/... + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiEntityReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_entity_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_entity_reference_py3.py new file mode 100644 index 000000000000..da3e07082381 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_entity_reference_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiEntityReference(Model): + """The API entity reference. + + :param id: The ARM resource id in the form of + /subscriptions/{SubcriptionId}/resourceGroups/{ResourceGroupName}/... + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ApiEntityReference, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error.py new file mode 100644 index 000000000000..a5871f03ef08 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiError(Model): + """Api error. + + :param details: The Api error details + :type details: list[~azure.mgmt.compute.v2018_10_01.models.ApiErrorBase] + :param innererror: The Api inner error + :type innererror: ~azure.mgmt.compute.v2018_10_01.models.InnerError + :param code: The error code. + :type code: str + :param target: The target of the particular error. + :type target: str + :param message: The error message. + :type message: str + """ + + _attribute_map = { + 'details': {'key': 'details', 'type': '[ApiErrorBase]'}, + 'innererror': {'key': 'innererror', 'type': 'InnerError'}, + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiError, self).__init__(**kwargs) + self.details = kwargs.get('details', None) + self.innererror = kwargs.get('innererror', None) + self.code = kwargs.get('code', None) + self.target = kwargs.get('target', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_base.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_base.py new file mode 100644 index 000000000000..655c08638905 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_base.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiErrorBase(Model): + """Api error base. + + :param code: The error code. + :type code: str + :param target: The target of the particular error. + :type target: str + :param message: The error message. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApiErrorBase, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.target = kwargs.get('target', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_base_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_base_py3.py new file mode 100644 index 000000000000..5ba95aa0283e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_base_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiErrorBase(Model): + """Api error base. + + :param code: The error code. + :type code: str + :param target: The target of the particular error. + :type target: str + :param message: The error message. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, target: str=None, message: str=None, **kwargs) -> None: + super(ApiErrorBase, self).__init__(**kwargs) + self.code = code + self.target = target + self.message = message diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_py3.py new file mode 100644 index 000000000000..09198f85879b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/api_error_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApiError(Model): + """Api error. + + :param details: The Api error details + :type details: list[~azure.mgmt.compute.v2018_10_01.models.ApiErrorBase] + :param innererror: The Api inner error + :type innererror: ~azure.mgmt.compute.v2018_10_01.models.InnerError + :param code: The error code. + :type code: str + :param target: The target of the particular error. + :type target: str + :param message: The error message. + :type message: str + """ + + _attribute_map = { + 'details': {'key': 'details', 'type': '[ApiErrorBase]'}, + 'innererror': {'key': 'innererror', 'type': 'InnerError'}, + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, details=None, innererror=None, code: str=None, target: str=None, message: str=None, **kwargs) -> None: + super(ApiError, self).__init__(**kwargs) + self.details = details + self.innererror = innererror + self.code = code + self.target = target + self.message = message diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_policy.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_policy.py new file mode 100644 index 000000000000..94301a312ac4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_policy.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutomaticOSUpgradePolicy(Model): + """The configuration parameters used for performing automatic OS upgrade. + + :param enable_automatic_os_upgrade: Whether OS upgrades should + automatically be applied to scale set instances in a rolling fashion when + a newer version of the image becomes available. Default value is false. + :type enable_automatic_os_upgrade: bool + :param disable_automatic_rollback: Whether OS image rollback feature + should be disabled. Default value is false. + :type disable_automatic_rollback: bool + """ + + _attribute_map = { + 'enable_automatic_os_upgrade': {'key': 'enableAutomaticOSUpgrade', 'type': 'bool'}, + 'disable_automatic_rollback': {'key': 'disableAutomaticRollback', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AutomaticOSUpgradePolicy, self).__init__(**kwargs) + self.enable_automatic_os_upgrade = kwargs.get('enable_automatic_os_upgrade', None) + self.disable_automatic_rollback = kwargs.get('disable_automatic_rollback', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_policy_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_policy_py3.py new file mode 100644 index 000000000000..edb10f11ea56 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_policy_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutomaticOSUpgradePolicy(Model): + """The configuration parameters used for performing automatic OS upgrade. + + :param enable_automatic_os_upgrade: Whether OS upgrades should + automatically be applied to scale set instances in a rolling fashion when + a newer version of the image becomes available. Default value is false. + :type enable_automatic_os_upgrade: bool + :param disable_automatic_rollback: Whether OS image rollback feature + should be disabled. Default value is false. + :type disable_automatic_rollback: bool + """ + + _attribute_map = { + 'enable_automatic_os_upgrade': {'key': 'enableAutomaticOSUpgrade', 'type': 'bool'}, + 'disable_automatic_rollback': {'key': 'disableAutomaticRollback', 'type': 'bool'}, + } + + def __init__(self, *, enable_automatic_os_upgrade: bool=None, disable_automatic_rollback: bool=None, **kwargs) -> None: + super(AutomaticOSUpgradePolicy, self).__init__(**kwargs) + self.enable_automatic_os_upgrade = enable_automatic_os_upgrade + self.disable_automatic_rollback = disable_automatic_rollback diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_properties.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_properties.py new file mode 100644 index 000000000000..b0a11290b7d3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_properties.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutomaticOSUpgradeProperties(Model): + """Describes automatic OS upgrade properties on the image. + + All required parameters must be populated in order to send to Azure. + + :param automatic_os_upgrade_supported: Required. Specifies whether + automatic OS upgrade is supported on the image. + :type automatic_os_upgrade_supported: bool + """ + + _validation = { + 'automatic_os_upgrade_supported': {'required': True}, + } + + _attribute_map = { + 'automatic_os_upgrade_supported': {'key': 'automaticOSUpgradeSupported', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AutomaticOSUpgradeProperties, self).__init__(**kwargs) + self.automatic_os_upgrade_supported = kwargs.get('automatic_os_upgrade_supported', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_properties_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_properties_py3.py new file mode 100644 index 000000000000..0bf3f1f57628 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/automatic_os_upgrade_properties_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutomaticOSUpgradeProperties(Model): + """Describes automatic OS upgrade properties on the image. + + All required parameters must be populated in order to send to Azure. + + :param automatic_os_upgrade_supported: Required. Specifies whether + automatic OS upgrade is supported on the image. + :type automatic_os_upgrade_supported: bool + """ + + _validation = { + 'automatic_os_upgrade_supported': {'required': True}, + } + + _attribute_map = { + 'automatic_os_upgrade_supported': {'key': 'automaticOSUpgradeSupported', 'type': 'bool'}, + } + + def __init__(self, *, automatic_os_upgrade_supported: bool, **kwargs) -> None: + super(AutomaticOSUpgradeProperties, self).__init__(**kwargs) + self.automatic_os_upgrade_supported = automatic_os_upgrade_supported diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set.py new file mode 100644 index 000000000000..e4bc1b86ea4c --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set.py @@ -0,0 +1,88 @@ +# 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 .resource import Resource + + +class AvailabilitySet(Resource): + """Specifies information about the availability set that the virtual machine + should be assigned to. Virtual machines specified in the same availability + set are allocated to different nodes to maximize availability. For more + information about availability sets, see [Manage the availability of + virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

For more information on Azure planned maintainance, see [Planned + maintenance for virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

Currently, a VM can only be added to availability set at creation + time. An existing VM cannot be added to an availability set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param platform_update_domain_count: Update Domain count. + :type platform_update_domain_count: int + :param platform_fault_domain_count: Fault Domain count. + :type platform_fault_domain_count: int + :param virtual_machines: A list of references to all virtual machines in + the availability set. + :type virtual_machines: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :ivar statuses: The resource status information. + :vartype statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + :param sku: Sku of the availability set, only name is required to be set. + See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for + virtual machines with managed disks and 'Classic' for virtual machines + with unmanaged disks. Default value is 'Classic'. + :type sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'statuses': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'platform_update_domain_count': {'key': 'properties.platformUpdateDomainCount', 'type': 'int'}, + 'platform_fault_domain_count': {'key': 'properties.platformFaultDomainCount', 'type': 'int'}, + 'virtual_machines': {'key': 'properties.virtualMachines', 'type': '[SubResource]'}, + 'statuses': {'key': 'properties.statuses', 'type': '[InstanceViewStatus]'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + } + + def __init__(self, **kwargs): + super(AvailabilitySet, self).__init__(**kwargs) + self.platform_update_domain_count = kwargs.get('platform_update_domain_count', None) + self.platform_fault_domain_count = kwargs.get('platform_fault_domain_count', None) + self.virtual_machines = kwargs.get('virtual_machines', None) + self.statuses = None + self.sku = kwargs.get('sku', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_paged.py new file mode 100644 index 000000000000..179ffb77166d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AvailabilitySetPaged(Paged): + """ + A paging container for iterating over a list of :class:`AvailabilitySet ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AvailabilitySet]'} + } + + def __init__(self, *args, **kwargs): + + super(AvailabilitySetPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_py3.py new file mode 100644 index 000000000000..1b21ca071e5c --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_py3.py @@ -0,0 +1,88 @@ +# 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 .resource_py3 import Resource + + +class AvailabilitySet(Resource): + """Specifies information about the availability set that the virtual machine + should be assigned to. Virtual machines specified in the same availability + set are allocated to different nodes to maximize availability. For more + information about availability sets, see [Manage the availability of + virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

For more information on Azure planned maintainance, see [Planned + maintenance for virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

Currently, a VM can only be added to availability set at creation + time. An existing VM cannot be added to an availability set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param platform_update_domain_count: Update Domain count. + :type platform_update_domain_count: int + :param platform_fault_domain_count: Fault Domain count. + :type platform_fault_domain_count: int + :param virtual_machines: A list of references to all virtual machines in + the availability set. + :type virtual_machines: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :ivar statuses: The resource status information. + :vartype statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + :param sku: Sku of the availability set, only name is required to be set. + See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for + virtual machines with managed disks and 'Classic' for virtual machines + with unmanaged disks. Default value is 'Classic'. + :type sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'statuses': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'platform_update_domain_count': {'key': 'properties.platformUpdateDomainCount', 'type': 'int'}, + 'platform_fault_domain_count': {'key': 'properties.platformFaultDomainCount', 'type': 'int'}, + 'virtual_machines': {'key': 'properties.virtualMachines', 'type': '[SubResource]'}, + 'statuses': {'key': 'properties.statuses', 'type': '[InstanceViewStatus]'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + } + + def __init__(self, *, location: str, tags=None, platform_update_domain_count: int=None, platform_fault_domain_count: int=None, virtual_machines=None, sku=None, **kwargs) -> None: + super(AvailabilitySet, self).__init__(location=location, tags=tags, **kwargs) + self.platform_update_domain_count = platform_update_domain_count + self.platform_fault_domain_count = platform_fault_domain_count + self.virtual_machines = virtual_machines + self.statuses = None + self.sku = sku diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_update.py new file mode 100644 index 000000000000..7d85cde8cbee --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_update.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .update_resource import UpdateResource + + +class AvailabilitySetUpdate(UpdateResource): + """Specifies information about the availability set that the virtual machine + should be assigned to. Only tags may be updated. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param tags: Resource tags + :type tags: dict[str, str] + :param platform_update_domain_count: Update Domain count. + :type platform_update_domain_count: int + :param platform_fault_domain_count: Fault Domain count. + :type platform_fault_domain_count: int + :param virtual_machines: A list of references to all virtual machines in + the availability set. + :type virtual_machines: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :ivar statuses: The resource status information. + :vartype statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + :param sku: Sku of the availability set + :type sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + """ + + _validation = { + 'statuses': {'readonly': True}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'platform_update_domain_count': {'key': 'properties.platformUpdateDomainCount', 'type': 'int'}, + 'platform_fault_domain_count': {'key': 'properties.platformFaultDomainCount', 'type': 'int'}, + 'virtual_machines': {'key': 'properties.virtualMachines', 'type': '[SubResource]'}, + 'statuses': {'key': 'properties.statuses', 'type': '[InstanceViewStatus]'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + } + + def __init__(self, **kwargs): + super(AvailabilitySetUpdate, self).__init__(**kwargs) + self.platform_update_domain_count = kwargs.get('platform_update_domain_count', None) + self.platform_fault_domain_count = kwargs.get('platform_fault_domain_count', None) + self.virtual_machines = kwargs.get('virtual_machines', None) + self.statuses = None + self.sku = kwargs.get('sku', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_update_py3.py new file mode 100644 index 000000000000..d6337f8fa7d8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/availability_set_update_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .update_resource_py3 import UpdateResource + + +class AvailabilitySetUpdate(UpdateResource): + """Specifies information about the availability set that the virtual machine + should be assigned to. Only tags may be updated. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param tags: Resource tags + :type tags: dict[str, str] + :param platform_update_domain_count: Update Domain count. + :type platform_update_domain_count: int + :param platform_fault_domain_count: Fault Domain count. + :type platform_fault_domain_count: int + :param virtual_machines: A list of references to all virtual machines in + the availability set. + :type virtual_machines: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :ivar statuses: The resource status information. + :vartype statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + :param sku: Sku of the availability set + :type sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + """ + + _validation = { + 'statuses': {'readonly': True}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'platform_update_domain_count': {'key': 'properties.platformUpdateDomainCount', 'type': 'int'}, + 'platform_fault_domain_count': {'key': 'properties.platformFaultDomainCount', 'type': 'int'}, + 'virtual_machines': {'key': 'properties.virtualMachines', 'type': '[SubResource]'}, + 'statuses': {'key': 'properties.statuses', 'type': '[InstanceViewStatus]'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + } + + def __init__(self, *, tags=None, platform_update_domain_count: int=None, platform_fault_domain_count: int=None, virtual_machines=None, sku=None, **kwargs) -> None: + super(AvailabilitySetUpdate, self).__init__(tags=tags, **kwargs) + self.platform_update_domain_count = platform_update_domain_count + self.platform_fault_domain_count = platform_fault_domain_count + self.virtual_machines = virtual_machines + self.statuses = None + self.sku = sku diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics.py new file mode 100644 index 000000000000..4a1f77c4d7d0 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BootDiagnostics(Model): + """Boot Diagnostics is a debugging feature which allows you to view Console + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a + screenshot of the VM from the hypervisor. + + :param enabled: Whether boot diagnostics should be enabled on the Virtual + Machine. + :type enabled: bool + :param storage_uri: Uri of the storage account to use for placing the + console output and screenshot. + :type storage_uri: str + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'storage_uri': {'key': 'storageUri', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BootDiagnostics, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.storage_uri = kwargs.get('storage_uri', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_instance_view.py new file mode 100644 index 000000000000..fcfbf63fd379 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_instance_view.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BootDiagnosticsInstanceView(Model): + """The instance view of a virtual machine boot diagnostics. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str + :ivar status: The boot diagnostics status information for the VM.

+ NOTE: It will be set only if there are errors encountered in enabling boot + diagnostics. + :vartype status: ~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus + """ + + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, + 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, + } + + def __init__(self, **kwargs): + super(BootDiagnosticsInstanceView, self).__init__(**kwargs) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None + self.status = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_instance_view_py3.py new file mode 100644 index 000000000000..19856f1c10c7 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_instance_view_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BootDiagnosticsInstanceView(Model): + """The instance view of a virtual machine boot diagnostics. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar console_screenshot_blob_uri: The console screenshot blob URI. + :vartype console_screenshot_blob_uri: str + :ivar serial_console_log_blob_uri: The Linux serial console log blob Uri. + :vartype serial_console_log_blob_uri: str + :ivar status: The boot diagnostics status information for the VM.

+ NOTE: It will be set only if there are errors encountered in enabling boot + diagnostics. + :vartype status: ~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus + """ + + _validation = { + 'console_screenshot_blob_uri': {'readonly': True}, + 'serial_console_log_blob_uri': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'console_screenshot_blob_uri': {'key': 'consoleScreenshotBlobUri', 'type': 'str'}, + 'serial_console_log_blob_uri': {'key': 'serialConsoleLogBlobUri', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, + } + + def __init__(self, **kwargs) -> None: + super(BootDiagnosticsInstanceView, self).__init__(**kwargs) + self.console_screenshot_blob_uri = None + self.serial_console_log_blob_uri = None + self.status = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_py3.py new file mode 100644 index 000000000000..b64ae5b4adde --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/boot_diagnostics_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BootDiagnostics(Model): + """Boot Diagnostics is a debugging feature which allows you to view Console + Output and Screenshot to diagnose VM status.

You can easily view + the output of your console log.

Azure also enables you to see a + screenshot of the VM from the hypervisor. + + :param enabled: Whether boot diagnostics should be enabled on the Virtual + Machine. + :type enabled: bool + :param storage_uri: Uri of the storage account to use for placing the + console output and screenshot. + :type storage_uri: str + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'storage_uri': {'key': 'storageUri', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool=None, storage_uri: str=None, **kwargs) -> None: + super(BootDiagnostics, self).__init__(**kwargs) + self.enabled = enabled + self.storage_uri = storage_uri diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_management_client_enums.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_management_client_enums.py new file mode 100644 index 000000000000..d62295f3ac3e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_management_client_enums.py @@ -0,0 +1,345 @@ +# 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 enum import Enum + + +class StatusLevelTypes(str, Enum): + + info = "Info" + warning = "Warning" + error = "Error" + + +class AvailabilitySetSkuTypes(str, Enum): + + classic = "Classic" + aligned = "Aligned" + + +class OperatingSystemTypes(str, Enum): + + windows = "Windows" + linux = "Linux" + + +class VirtualMachineSizeTypes(str, Enum): + + basic_a0 = "Basic_A0" + basic_a1 = "Basic_A1" + basic_a2 = "Basic_A2" + basic_a3 = "Basic_A3" + basic_a4 = "Basic_A4" + standard_a0 = "Standard_A0" + standard_a1 = "Standard_A1" + standard_a2 = "Standard_A2" + standard_a3 = "Standard_A3" + standard_a4 = "Standard_A4" + standard_a5 = "Standard_A5" + standard_a6 = "Standard_A6" + standard_a7 = "Standard_A7" + standard_a8 = "Standard_A8" + standard_a9 = "Standard_A9" + standard_a10 = "Standard_A10" + standard_a11 = "Standard_A11" + standard_a1_v2 = "Standard_A1_v2" + standard_a2_v2 = "Standard_A2_v2" + standard_a4_v2 = "Standard_A4_v2" + standard_a8_v2 = "Standard_A8_v2" + standard_a2m_v2 = "Standard_A2m_v2" + standard_a4m_v2 = "Standard_A4m_v2" + standard_a8m_v2 = "Standard_A8m_v2" + standard_b1s = "Standard_B1s" + standard_b1ms = "Standard_B1ms" + standard_b2s = "Standard_B2s" + standard_b2ms = "Standard_B2ms" + standard_b4ms = "Standard_B4ms" + standard_b8ms = "Standard_B8ms" + standard_d1 = "Standard_D1" + standard_d2 = "Standard_D2" + standard_d3 = "Standard_D3" + standard_d4 = "Standard_D4" + standard_d11 = "Standard_D11" + standard_d12 = "Standard_D12" + standard_d13 = "Standard_D13" + standard_d14 = "Standard_D14" + standard_d1_v2 = "Standard_D1_v2" + standard_d2_v2 = "Standard_D2_v2" + standard_d3_v2 = "Standard_D3_v2" + standard_d4_v2 = "Standard_D4_v2" + standard_d5_v2 = "Standard_D5_v2" + standard_d2_v3 = "Standard_D2_v3" + standard_d4_v3 = "Standard_D4_v3" + standard_d8_v3 = "Standard_D8_v3" + standard_d16_v3 = "Standard_D16_v3" + standard_d32_v3 = "Standard_D32_v3" + standard_d64_v3 = "Standard_D64_v3" + standard_d2s_v3 = "Standard_D2s_v3" + standard_d4s_v3 = "Standard_D4s_v3" + standard_d8s_v3 = "Standard_D8s_v3" + standard_d16s_v3 = "Standard_D16s_v3" + standard_d32s_v3 = "Standard_D32s_v3" + standard_d64s_v3 = "Standard_D64s_v3" + standard_d11_v2 = "Standard_D11_v2" + standard_d12_v2 = "Standard_D12_v2" + standard_d13_v2 = "Standard_D13_v2" + standard_d14_v2 = "Standard_D14_v2" + standard_d15_v2 = "Standard_D15_v2" + standard_ds1 = "Standard_DS1" + standard_ds2 = "Standard_DS2" + standard_ds3 = "Standard_DS3" + standard_ds4 = "Standard_DS4" + standard_ds11 = "Standard_DS11" + standard_ds12 = "Standard_DS12" + standard_ds13 = "Standard_DS13" + standard_ds14 = "Standard_DS14" + standard_ds1_v2 = "Standard_DS1_v2" + standard_ds2_v2 = "Standard_DS2_v2" + standard_ds3_v2 = "Standard_DS3_v2" + standard_ds4_v2 = "Standard_DS4_v2" + standard_ds5_v2 = "Standard_DS5_v2" + standard_ds11_v2 = "Standard_DS11_v2" + standard_ds12_v2 = "Standard_DS12_v2" + standard_ds13_v2 = "Standard_DS13_v2" + standard_ds14_v2 = "Standard_DS14_v2" + standard_ds15_v2 = "Standard_DS15_v2" + standard_ds13_4_v2 = "Standard_DS13-4_v2" + standard_ds13_2_v2 = "Standard_DS13-2_v2" + standard_ds14_8_v2 = "Standard_DS14-8_v2" + standard_ds14_4_v2 = "Standard_DS14-4_v2" + standard_e2_v3 = "Standard_E2_v3" + standard_e4_v3 = "Standard_E4_v3" + standard_e8_v3 = "Standard_E8_v3" + standard_e16_v3 = "Standard_E16_v3" + standard_e32_v3 = "Standard_E32_v3" + standard_e64_v3 = "Standard_E64_v3" + standard_e2s_v3 = "Standard_E2s_v3" + standard_e4s_v3 = "Standard_E4s_v3" + standard_e8s_v3 = "Standard_E8s_v3" + standard_e16s_v3 = "Standard_E16s_v3" + standard_e32s_v3 = "Standard_E32s_v3" + standard_e64s_v3 = "Standard_E64s_v3" + standard_e32_16_v3 = "Standard_E32-16_v3" + standard_e32_8s_v3 = "Standard_E32-8s_v3" + standard_e64_32s_v3 = "Standard_E64-32s_v3" + standard_e64_16s_v3 = "Standard_E64-16s_v3" + standard_f1 = "Standard_F1" + standard_f2 = "Standard_F2" + standard_f4 = "Standard_F4" + standard_f8 = "Standard_F8" + standard_f16 = "Standard_F16" + standard_f1s = "Standard_F1s" + standard_f2s = "Standard_F2s" + standard_f4s = "Standard_F4s" + standard_f8s = "Standard_F8s" + standard_f16s = "Standard_F16s" + standard_f2s_v2 = "Standard_F2s_v2" + standard_f4s_v2 = "Standard_F4s_v2" + standard_f8s_v2 = "Standard_F8s_v2" + standard_f16s_v2 = "Standard_F16s_v2" + standard_f32s_v2 = "Standard_F32s_v2" + standard_f64s_v2 = "Standard_F64s_v2" + standard_f72s_v2 = "Standard_F72s_v2" + standard_g1 = "Standard_G1" + standard_g2 = "Standard_G2" + standard_g3 = "Standard_G3" + standard_g4 = "Standard_G4" + standard_g5 = "Standard_G5" + standard_gs1 = "Standard_GS1" + standard_gs2 = "Standard_GS2" + standard_gs3 = "Standard_GS3" + standard_gs4 = "Standard_GS4" + standard_gs5 = "Standard_GS5" + standard_gs4_8 = "Standard_GS4-8" + standard_gs4_4 = "Standard_GS4-4" + standard_gs5_16 = "Standard_GS5-16" + standard_gs5_8 = "Standard_GS5-8" + standard_h8 = "Standard_H8" + standard_h16 = "Standard_H16" + standard_h8m = "Standard_H8m" + standard_h16m = "Standard_H16m" + standard_h16r = "Standard_H16r" + standard_h16mr = "Standard_H16mr" + standard_l4s = "Standard_L4s" + standard_l8s = "Standard_L8s" + standard_l16s = "Standard_L16s" + standard_l32s = "Standard_L32s" + standard_m64s = "Standard_M64s" + standard_m64ms = "Standard_M64ms" + standard_m128s = "Standard_M128s" + standard_m128ms = "Standard_M128ms" + standard_m64_32ms = "Standard_M64-32ms" + standard_m64_16ms = "Standard_M64-16ms" + standard_m128_64ms = "Standard_M128-64ms" + standard_m128_32ms = "Standard_M128-32ms" + standard_nc6 = "Standard_NC6" + standard_nc12 = "Standard_NC12" + standard_nc24 = "Standard_NC24" + standard_nc24r = "Standard_NC24r" + standard_nc6s_v2 = "Standard_NC6s_v2" + standard_nc12s_v2 = "Standard_NC12s_v2" + standard_nc24s_v2 = "Standard_NC24s_v2" + standard_nc24rs_v2 = "Standard_NC24rs_v2" + standard_nc6s_v3 = "Standard_NC6s_v3" + standard_nc12s_v3 = "Standard_NC12s_v3" + standard_nc24s_v3 = "Standard_NC24s_v3" + standard_nc24rs_v3 = "Standard_NC24rs_v3" + standard_nd6s = "Standard_ND6s" + standard_nd12s = "Standard_ND12s" + standard_nd24s = "Standard_ND24s" + standard_nd24rs = "Standard_ND24rs" + standard_nv6 = "Standard_NV6" + standard_nv12 = "Standard_NV12" + standard_nv24 = "Standard_NV24" + + +class CachingTypes(str, Enum): + + none = "None" + read_only = "ReadOnly" + read_write = "ReadWrite" + + +class DiskCreateOptionTypes(str, Enum): + + from_image = "FromImage" + empty = "Empty" + attach = "Attach" + + +class StorageAccountTypes(str, Enum): + + standard_lrs = "Standard_LRS" + premium_lrs = "Premium_LRS" + standard_ssd_lrs = "StandardSSD_LRS" + ultra_ssd_lrs = "UltraSSD_LRS" + + +class DiffDiskOptions(str, Enum): + + local = "Local" + + +class PassNames(str, Enum): + + oobe_system = "OobeSystem" + + +class ComponentNames(str, Enum): + + microsoft_windows_shell_setup = "Microsoft-Windows-Shell-Setup" + + +class SettingNames(str, Enum): + + auto_logon = "AutoLogon" + first_logon_commands = "FirstLogonCommands" + + +class ProtocolTypes(str, Enum): + + http = "Http" + https = "Https" + + +class ResourceIdentityType(str, Enum): + + system_assigned = "SystemAssigned" + user_assigned = "UserAssigned" + system_assigned_user_assigned = "SystemAssigned, UserAssigned" + none = "None" + + +class MaintenanceOperationResultCodeTypes(str, Enum): + + none = "None" + retry_later = "RetryLater" + maintenance_aborted = "MaintenanceAborted" + maintenance_completed = "MaintenanceCompleted" + + +class UpgradeMode(str, Enum): + + automatic = "Automatic" + manual = "Manual" + rolling = "Rolling" + + +class OperatingSystemStateTypes(str, Enum): + + generalized = "Generalized" + specialized = "Specialized" + + +class IPVersion(str, Enum): + + ipv4 = "IPv4" + ipv6 = "IPv6" + + +class VirtualMachinePriorityTypes(str, Enum): + + regular = "Regular" + low = "Low" + + +class VirtualMachineEvictionPolicyTypes(str, Enum): + + deallocate = "Deallocate" + delete = "Delete" + + +class VirtualMachineScaleSetSkuScaleType(str, Enum): + + automatic = "Automatic" + none = "None" + + +class UpgradeState(str, Enum): + + rolling_forward = "RollingForward" + cancelled = "Cancelled" + completed = "Completed" + faulted = "Faulted" + + +class UpgradeOperationInvoker(str, Enum): + + unknown = "Unknown" + user = "User" + platform = "Platform" + + +class RollingUpgradeStatusCode(str, Enum): + + rolling_forward = "RollingForward" + cancelled = "Cancelled" + completed = "Completed" + faulted = "Faulted" + + +class RollingUpgradeActionType(str, Enum): + + start = "Start" + cancel = "Cancel" + + +class IntervalInMins(str, Enum): + + three_mins = "ThreeMins" + five_mins = "FiveMins" + thirty_mins = "ThirtyMins" + sixty_mins = "SixtyMins" + + +class InstanceViewTypes(str, Enum): + + instance_view = "instanceView" diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value.py new file mode 100644 index 000000000000..525ef3bbb69a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeOperationValue(Model): + """Describes the properties of a Compute Operation value. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the compute operation. + :vartype origin: str + :ivar name: The name of the compute operation. + :vartype name: str + :ivar operation: The display name of the compute operation. + :vartype operation: str + :ivar resource: The display name of the resource the operation applies to. + :vartype resource: str + :ivar description: The description of the operation. + :vartype description: str + :ivar provider: The resource provider for the operation. + :vartype provider: str + """ + + _validation = { + 'origin': {'readonly': True}, + 'name': {'readonly': True}, + 'operation': {'readonly': True}, + 'resource': {'readonly': True}, + 'description': {'readonly': True}, + 'provider': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'operation': {'key': 'display.operation', 'type': 'str'}, + 'resource': {'key': 'display.resource', 'type': 'str'}, + 'description': {'key': 'display.description', 'type': 'str'}, + 'provider': {'key': 'display.provider', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ComputeOperationValue, self).__init__(**kwargs) + self.origin = None + self.name = None + self.operation = None + self.resource = None + self.description = None + self.provider = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value_paged.py new file mode 100644 index 000000000000..7b802139f000 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ComputeOperationValuePaged(Paged): + """ + A paging container for iterating over a list of :class:`ComputeOperationValue ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ComputeOperationValue]'} + } + + def __init__(self, *args, **kwargs): + + super(ComputeOperationValuePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value_py3.py new file mode 100644 index 000000000000..3c4388f312b9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/compute_operation_value_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeOperationValue(Model): + """Describes the properties of a Compute Operation value. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the compute operation. + :vartype origin: str + :ivar name: The name of the compute operation. + :vartype name: str + :ivar operation: The display name of the compute operation. + :vartype operation: str + :ivar resource: The display name of the resource the operation applies to. + :vartype resource: str + :ivar description: The description of the operation. + :vartype description: str + :ivar provider: The resource provider for the operation. + :vartype provider: str + """ + + _validation = { + 'origin': {'readonly': True}, + 'name': {'readonly': True}, + 'operation': {'readonly': True}, + 'resource': {'readonly': True}, + 'description': {'readonly': True}, + 'provider': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'operation': {'key': 'display.operation', 'type': 'str'}, + 'resource': {'key': 'display.resource', 'type': 'str'}, + 'description': {'key': 'display.description', 'type': 'str'}, + 'provider': {'key': 'display.provider', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ComputeOperationValue, self).__init__(**kwargs) + self.origin = None + self.name = None + self.operation = None + self.resource = None + self.description = None + self.provider = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk.py new file mode 100644 index 000000000000..be9739d3e8a9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk.py @@ -0,0 +1,87 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DataDisk(Model): + """Describes a data disk. + + All required parameters must be populated in order to send to Azure. + + :param lun: Required. Specifies the logical unit number of the data disk. + This value is used to identify data disks within the VM and therefore must + be unique for each data disk attached to a VM. + :type lun: int + :param name: The disk name. + :type name: str + :param vhd: The virtual hard disk. + :type vhd: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param image: The source user image virtual hard disk. The virtual hard + disk will be copied before being attached to the virtual machine. If + SourceImage is provided, the destination virtual hard drive must not + exist. + :type image: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param caching: Specifies the caching requirements.

Possible + values are:

**None**

**ReadOnly**

**ReadWrite** +

Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param create_option: Required. Specifies how the virtual machine should + be created.

Possible values are:

**Attach** \\u2013 This + value is used when you are using a specialized disk to create the virtual + machine.

**FromImage** \\u2013 This value is used when you are + using an image to create the virtual machine. If you are using a platform + image, you also use the imageReference element described above. If you are + using a marketplace image, you also use the plan element previously + described. Possible values include: 'FromImage', 'Empty', 'Attach' + :type create_option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiskCreateOptionTypes + :param disk_size_gb: Specifies the size of an empty data disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.ManagedDiskParameters + """ + + _validation = { + 'lun': {'required': True}, + 'create_option': {'required': True}, + } + + _attribute_map = { + 'lun': {'key': 'lun', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'vhd': {'key': 'vhd', 'type': 'VirtualHardDisk'}, + 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'ManagedDiskParameters'}, + } + + def __init__(self, **kwargs): + super(DataDisk, self).__init__(**kwargs) + self.lun = kwargs.get('lun', None) + self.name = kwargs.get('name', None) + self.vhd = kwargs.get('vhd', None) + self.image = kwargs.get('image', None) + self.caching = kwargs.get('caching', None) + self.write_accelerator_enabled = kwargs.get('write_accelerator_enabled', None) + self.create_option = kwargs.get('create_option', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.managed_disk = kwargs.get('managed_disk', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_image.py new file mode 100644 index 000000000000..b5dbfcefb472 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_image.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DataDiskImage(Model): + """Contains the data disk images information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar lun: Specifies the logical unit number of the data disk. This value + is used to identify data disks within the VM and therefore must be unique + for each data disk attached to a VM. + :vartype lun: int + """ + + _validation = { + 'lun': {'readonly': True}, + } + + _attribute_map = { + 'lun': {'key': 'lun', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(DataDiskImage, self).__init__(**kwargs) + self.lun = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_image_py3.py new file mode 100644 index 000000000000..8431a3988502 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_image_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DataDiskImage(Model): + """Contains the data disk images information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar lun: Specifies the logical unit number of the data disk. This value + is used to identify data disks within the VM and therefore must be unique + for each data disk attached to a VM. + :vartype lun: int + """ + + _validation = { + 'lun': {'readonly': True}, + } + + _attribute_map = { + 'lun': {'key': 'lun', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(DataDiskImage, self).__init__(**kwargs) + self.lun = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_py3.py new file mode 100644 index 000000000000..637bb1715329 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/data_disk_py3.py @@ -0,0 +1,87 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DataDisk(Model): + """Describes a data disk. + + All required parameters must be populated in order to send to Azure. + + :param lun: Required. Specifies the logical unit number of the data disk. + This value is used to identify data disks within the VM and therefore must + be unique for each data disk attached to a VM. + :type lun: int + :param name: The disk name. + :type name: str + :param vhd: The virtual hard disk. + :type vhd: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param image: The source user image virtual hard disk. The virtual hard + disk will be copied before being attached to the virtual machine. If + SourceImage is provided, the destination virtual hard drive must not + exist. + :type image: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param caching: Specifies the caching requirements.

Possible + values are:

**None**

**ReadOnly**

**ReadWrite** +

Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param create_option: Required. Specifies how the virtual machine should + be created.

Possible values are:

**Attach** \\u2013 This + value is used when you are using a specialized disk to create the virtual + machine.

**FromImage** \\u2013 This value is used when you are + using an image to create the virtual machine. If you are using a platform + image, you also use the imageReference element described above. If you are + using a marketplace image, you also use the plan element previously + described. Possible values include: 'FromImage', 'Empty', 'Attach' + :type create_option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiskCreateOptionTypes + :param disk_size_gb: Specifies the size of an empty data disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.ManagedDiskParameters + """ + + _validation = { + 'lun': {'required': True}, + 'create_option': {'required': True}, + } + + _attribute_map = { + 'lun': {'key': 'lun', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'vhd': {'key': 'vhd', 'type': 'VirtualHardDisk'}, + 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'ManagedDiskParameters'}, + } + + def __init__(self, *, lun: int, create_option, name: str=None, vhd=None, image=None, caching=None, write_accelerator_enabled: bool=None, disk_size_gb: int=None, managed_disk=None, **kwargs) -> None: + super(DataDisk, self).__init__(**kwargs) + self.lun = lun + self.name = name + self.vhd = vhd + self.image = image + self.caching = caching + self.write_accelerator_enabled = write_accelerator_enabled + self.create_option = create_option + self.disk_size_gb = disk_size_gb + self.managed_disk = managed_disk diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diagnostics_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diagnostics_profile.py new file mode 100644 index 000000000000..d1db1b00d086 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diagnostics_profile.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiagnosticsProfile(Model): + """Specifies the boot diagnostic settings state.

Minimum api-version: + 2015-06-15. + + :param boot_diagnostics: Boot Diagnostics is a debugging feature which + allows you to view Console Output and Screenshot to diagnose VM status. +

You can easily view the output of your console log.

+ Azure also enables you to see a screenshot of the VM from the hypervisor. + :type boot_diagnostics: + ~azure.mgmt.compute.v2018_10_01.models.BootDiagnostics + """ + + _attribute_map = { + 'boot_diagnostics': {'key': 'bootDiagnostics', 'type': 'BootDiagnostics'}, + } + + def __init__(self, **kwargs): + super(DiagnosticsProfile, self).__init__(**kwargs) + self.boot_diagnostics = kwargs.get('boot_diagnostics', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diagnostics_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diagnostics_profile_py3.py new file mode 100644 index 000000000000..88736f6d39e8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diagnostics_profile_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiagnosticsProfile(Model): + """Specifies the boot diagnostic settings state.

Minimum api-version: + 2015-06-15. + + :param boot_diagnostics: Boot Diagnostics is a debugging feature which + allows you to view Console Output and Screenshot to diagnose VM status. +

You can easily view the output of your console log.

+ Azure also enables you to see a screenshot of the VM from the hypervisor. + :type boot_diagnostics: + ~azure.mgmt.compute.v2018_10_01.models.BootDiagnostics + """ + + _attribute_map = { + 'boot_diagnostics': {'key': 'bootDiagnostics', 'type': 'BootDiagnostics'}, + } + + def __init__(self, *, boot_diagnostics=None, **kwargs) -> None: + super(DiagnosticsProfile, self).__init__(**kwargs) + self.boot_diagnostics = boot_diagnostics diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diff_disk_settings.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diff_disk_settings.py new file mode 100644 index 000000000000..cb7d223e4101 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diff_disk_settings.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiffDiskSettings(Model): + """Describes the parameters of differencing disk settings that can be be + specified for operating system disk.

NOTE: The differencing disk + settings can only be specified for managed disk. + + :param option: Specifies the differencing disk settings for operating + system disk. Possible values include: 'Local' + :type option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiffDiskOptions + """ + + _attribute_map = { + 'option': {'key': 'option', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DiffDiskSettings, self).__init__(**kwargs) + self.option = kwargs.get('option', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diff_disk_settings_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diff_disk_settings_py3.py new file mode 100644 index 000000000000..6778335cd013 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/diff_disk_settings_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiffDiskSettings(Model): + """Describes the parameters of differencing disk settings that can be be + specified for operating system disk.

NOTE: The differencing disk + settings can only be specified for managed disk. + + :param option: Specifies the differencing disk settings for operating + system disk. Possible values include: 'Local' + :type option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiffDiskOptions + """ + + _attribute_map = { + 'option': {'key': 'option', 'type': 'str'}, + } + + def __init__(self, *, option=None, **kwargs) -> None: + super(DiffDiskSettings, self).__init__(**kwargs) + self.option = option diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_encryption_settings.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_encryption_settings.py new file mode 100644 index 000000000000..ab72449543a3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_encryption_settings.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiskEncryptionSettings(Model): + """Describes a Encryption Settings for a Disk. + + :param disk_encryption_key: Specifies the location of the disk encryption + key, which is a Key Vault Secret. + :type disk_encryption_key: + ~azure.mgmt.compute.v2018_10_01.models.KeyVaultSecretReference + :param key_encryption_key: Specifies the location of the key encryption + key in Key Vault. + :type key_encryption_key: + ~azure.mgmt.compute.v2018_10_01.models.KeyVaultKeyReference + :param enabled: Specifies whether disk encryption should be enabled on the + virtual machine. + :type enabled: bool + """ + + _attribute_map = { + 'disk_encryption_key': {'key': 'diskEncryptionKey', 'type': 'KeyVaultSecretReference'}, + 'key_encryption_key': {'key': 'keyEncryptionKey', 'type': 'KeyVaultKeyReference'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(DiskEncryptionSettings, self).__init__(**kwargs) + self.disk_encryption_key = kwargs.get('disk_encryption_key', None) + self.key_encryption_key = kwargs.get('key_encryption_key', None) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_encryption_settings_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_encryption_settings_py3.py new file mode 100644 index 000000000000..b83ad0bd55b5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_encryption_settings_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiskEncryptionSettings(Model): + """Describes a Encryption Settings for a Disk. + + :param disk_encryption_key: Specifies the location of the disk encryption + key, which is a Key Vault Secret. + :type disk_encryption_key: + ~azure.mgmt.compute.v2018_10_01.models.KeyVaultSecretReference + :param key_encryption_key: Specifies the location of the key encryption + key in Key Vault. + :type key_encryption_key: + ~azure.mgmt.compute.v2018_10_01.models.KeyVaultKeyReference + :param enabled: Specifies whether disk encryption should be enabled on the + virtual machine. + :type enabled: bool + """ + + _attribute_map = { + 'disk_encryption_key': {'key': 'diskEncryptionKey', 'type': 'KeyVaultSecretReference'}, + 'key_encryption_key': {'key': 'keyEncryptionKey', 'type': 'KeyVaultKeyReference'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, disk_encryption_key=None, key_encryption_key=None, enabled: bool=None, **kwargs) -> None: + super(DiskEncryptionSettings, self).__init__(**kwargs) + self.disk_encryption_key = disk_encryption_key + self.key_encryption_key = key_encryption_key + self.enabled = enabled diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_instance_view.py new file mode 100644 index 000000000000..c92baaa065b5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_instance_view.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiskInstanceView(Model): + """The instance view of the disk. + + :param name: The disk name. + :type name: str + :param encryption_settings: Specifies the encryption settings for the OS + Disk.

Minimum api-version: 2015-06-15 + :type encryption_settings: + list[~azure.mgmt.compute.v2018_10_01.models.DiskEncryptionSettings] + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'encryption_settings': {'key': 'encryptionSettings', 'type': '[DiskEncryptionSettings]'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, **kwargs): + super(DiskInstanceView, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.encryption_settings = kwargs.get('encryption_settings', None) + self.statuses = kwargs.get('statuses', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_instance_view_py3.py new file mode 100644 index 000000000000..957f6f523588 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/disk_instance_view_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiskInstanceView(Model): + """The instance view of the disk. + + :param name: The disk name. + :type name: str + :param encryption_settings: Specifies the encryption settings for the OS + Disk.

Minimum api-version: 2015-06-15 + :type encryption_settings: + list[~azure.mgmt.compute.v2018_10_01.models.DiskEncryptionSettings] + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'encryption_settings': {'key': 'encryptionSettings', 'type': '[DiskEncryptionSettings]'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, *, name: str=None, encryption_settings=None, statuses=None, **kwargs) -> None: + super(DiskInstanceView, self).__init__(**kwargs) + self.name = name + self.encryption_settings = encryption_settings + self.statuses = statuses diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/hardware_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/hardware_profile.py new file mode 100644 index 000000000000..fca8e6a1903d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/hardware_profile.py @@ -0,0 +1,85 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HardwareProfile(Model): + """Specifies the hardware settings for the virtual machine. + + :param vm_size: Specifies the size of the virtual machine. For more + information about virtual machine sizes, see [Sizes for virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

The available VM sizes depend on region and availability set. For + a list of available sizes use these APIs:

[List all available + virtual machine sizes in an availability + set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes) +

[List all available virtual machine sizes in a + region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list) +

[List all available virtual machine sizes for + resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). + Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3', + 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3', + 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8', + 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2', + 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2', + 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms', + 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms', + 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', + 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14', + 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', + 'Standard_D5_v2', 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', + 'Standard_D16_v3', 'Standard_D32_v3', 'Standard_D64_v3', + 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3', + 'Standard_D16s_v3', 'Standard_D32s_v3', 'Standard_D64s_v3', + 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2', + 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2', + 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12', + 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2', + 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', + 'Standard_DS11_v2', 'Standard_DS12_v2', 'Standard_DS13_v2', + 'Standard_DS14_v2', 'Standard_DS15_v2', 'Standard_DS13-4_v2', + 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', + 'Standard_E2_v3', 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', + 'Standard_E32_v3', 'Standard_E64_v3', 'Standard_E2s_v3', + 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3', + 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3', + 'Standard_E32-8s_v3', 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', + 'Standard_F1', 'Standard_F2', 'Standard_F4', 'Standard_F8', + 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', + 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2', + 'Standard_F8s_v2', 'Standard_F16s_v2', 'Standard_F32s_v2', + 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2', + 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', + 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5', + 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8', + 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m', + 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s', + 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms', + 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms', + 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms', + 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2', + 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3', + 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s', + 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6', + 'Standard_NV12', 'Standard_NV24' + :type vm_size: str or + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineSizeTypes + """ + + _attribute_map = { + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HardwareProfile, self).__init__(**kwargs) + self.vm_size = kwargs.get('vm_size', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/hardware_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/hardware_profile_py3.py new file mode 100644 index 000000000000..cbf5d7ad221e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/hardware_profile_py3.py @@ -0,0 +1,85 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HardwareProfile(Model): + """Specifies the hardware settings for the virtual machine. + + :param vm_size: Specifies the size of the virtual machine. For more + information about virtual machine sizes, see [Sizes for virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

The available VM sizes depend on region and availability set. For + a list of available sizes use these APIs:

[List all available + virtual machine sizes in an availability + set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes) +

[List all available virtual machine sizes in a + region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list) +

[List all available virtual machine sizes for + resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). + Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3', + 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3', + 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8', + 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2', + 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2', + 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms', + 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms', + 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', + 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14', + 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', + 'Standard_D5_v2', 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', + 'Standard_D16_v3', 'Standard_D32_v3', 'Standard_D64_v3', + 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3', + 'Standard_D16s_v3', 'Standard_D32s_v3', 'Standard_D64s_v3', + 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2', + 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2', + 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12', + 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2', + 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', + 'Standard_DS11_v2', 'Standard_DS12_v2', 'Standard_DS13_v2', + 'Standard_DS14_v2', 'Standard_DS15_v2', 'Standard_DS13-4_v2', + 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', + 'Standard_E2_v3', 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', + 'Standard_E32_v3', 'Standard_E64_v3', 'Standard_E2s_v3', + 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3', + 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3', + 'Standard_E32-8s_v3', 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', + 'Standard_F1', 'Standard_F2', 'Standard_F4', 'Standard_F8', + 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', + 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2', + 'Standard_F8s_v2', 'Standard_F16s_v2', 'Standard_F32s_v2', + 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2', + 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', + 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5', + 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8', + 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m', + 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s', + 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms', + 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms', + 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms', + 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r', + 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2', + 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3', + 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s', + 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6', + 'Standard_NV12', 'Standard_NV24' + :type vm_size: str or + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineSizeTypes + """ + + _attribute_map = { + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + } + + def __init__(self, *, vm_size=None, **kwargs) -> None: + super(HardwareProfile, self).__init__(**kwargs) + self.vm_size = vm_size diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image.py new file mode 100644 index 000000000000..1638dc9bb3d2 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class Image(Resource): + """The source user image virtual hard disk. The virtual hard disk will be + copied before being attached to the virtual machine. If SourceImage is + provided, the destination virtual hard drive must not exist. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param source_virtual_machine: The source virtual machine from which Image + is created. + :type source_virtual_machine: + ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.ImageStorageProfile + :ivar provisioning_state: The provisioning state. + :vartype provisioning_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source_virtual_machine': {'key': 'properties.sourceVirtualMachine', 'type': 'SubResource'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'ImageStorageProfile'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Image, self).__init__(**kwargs) + self.source_virtual_machine = kwargs.get('source_virtual_machine', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_data_disk.py new file mode 100644 index 000000000000..356dbb2e4744 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_data_disk.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageDataDisk(Model): + """Describes a data disk. + + All required parameters must be populated in order to send to Azure. + + :param lun: Required. Specifies the logical unit number of the data disk. + This value is used to identify data disks within the VM and therefore must + be unique for each data disk attached to a VM. + :type lun: int + :param snapshot: The snapshot. + :type snapshot: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param managed_disk: The managedDisk. + :type managed_disk: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param blob_uri: The Virtual Hard Disk. + :type blob_uri: str + :param caching: Specifies the caching requirements.

Possible + values are:

**None**

**ReadOnly**

**ReadWrite** +

Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param disk_size_gb: Specifies the size of empty data disks in gigabytes. + This element can be used to overwrite the name of the disk in a virtual + machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param storage_account_type: Specifies the storage account type for the + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type storage_account_type: str or + ~azure.mgmt.compute.v2018_10_01.models.StorageAccountTypes + """ + + _validation = { + 'lun': {'required': True}, + } + + _attribute_map = { + 'lun': {'key': 'lun', 'type': 'int'}, + 'snapshot': {'key': 'snapshot', 'type': 'SubResource'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'SubResource'}, + 'blob_uri': {'key': 'blobUri', 'type': 'str'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImageDataDisk, self).__init__(**kwargs) + self.lun = kwargs.get('lun', None) + self.snapshot = kwargs.get('snapshot', None) + self.managed_disk = kwargs.get('managed_disk', None) + self.blob_uri = kwargs.get('blob_uri', None) + self.caching = kwargs.get('caching', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.storage_account_type = kwargs.get('storage_account_type', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_data_disk_py3.py new file mode 100644 index 000000000000..12804047ac55 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_data_disk_py3.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageDataDisk(Model): + """Describes a data disk. + + All required parameters must be populated in order to send to Azure. + + :param lun: Required. Specifies the logical unit number of the data disk. + This value is used to identify data disks within the VM and therefore must + be unique for each data disk attached to a VM. + :type lun: int + :param snapshot: The snapshot. + :type snapshot: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param managed_disk: The managedDisk. + :type managed_disk: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param blob_uri: The Virtual Hard Disk. + :type blob_uri: str + :param caching: Specifies the caching requirements.

Possible + values are:

**None**

**ReadOnly**

**ReadWrite** +

Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param disk_size_gb: Specifies the size of empty data disks in gigabytes. + This element can be used to overwrite the name of the disk in a virtual + machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param storage_account_type: Specifies the storage account type for the + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type storage_account_type: str or + ~azure.mgmt.compute.v2018_10_01.models.StorageAccountTypes + """ + + _validation = { + 'lun': {'required': True}, + } + + _attribute_map = { + 'lun': {'key': 'lun', 'type': 'int'}, + 'snapshot': {'key': 'snapshot', 'type': 'SubResource'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'SubResource'}, + 'blob_uri': {'key': 'blobUri', 'type': 'str'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + } + + def __init__(self, *, lun: int, snapshot=None, managed_disk=None, blob_uri: str=None, caching=None, disk_size_gb: int=None, storage_account_type=None, **kwargs) -> None: + super(ImageDataDisk, self).__init__(**kwargs) + self.lun = lun + self.snapshot = snapshot + self.managed_disk = managed_disk + self.blob_uri = blob_uri + self.caching = caching + self.disk_size_gb = disk_size_gb + self.storage_account_type = storage_account_type diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_os_disk.py new file mode 100644 index 000000000000..77d90b3235cc --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_os_disk.py @@ -0,0 +1,77 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageOSDisk(Model): + """Describes an Operating System disk. + + All required parameters must be populated in order to send to Azure. + + :param os_type: Required. This property allows you to specify the type of + the OS that is included in the disk if creating a VM from a custom image. +

Possible values are:

**Windows**

**Linux**. + Possible values include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param os_state: Required. The OS State. Possible values include: + 'Generalized', 'Specialized' + :type os_state: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemStateTypes + :param snapshot: The snapshot. + :type snapshot: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param managed_disk: The managedDisk. + :type managed_disk: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param blob_uri: The Virtual Hard Disk. + :type blob_uri: str + :param caching: Specifies the caching requirements.

Possible + values are:

**None**

**ReadOnly**

**ReadWrite** +

Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param disk_size_gb: Specifies the size of empty data disks in gigabytes. + This element can be used to overwrite the name of the disk in a virtual + machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param storage_account_type: Specifies the storage account type for the + managed disk. UltraSSD_LRS cannot be used with OS Disk. Possible values + include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type storage_account_type: str or + ~azure.mgmt.compute.v2018_10_01.models.StorageAccountTypes + """ + + _validation = { + 'os_type': {'required': True}, + 'os_state': {'required': True}, + } + + _attribute_map = { + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'os_state': {'key': 'osState', 'type': 'OperatingSystemStateTypes'}, + 'snapshot': {'key': 'snapshot', 'type': 'SubResource'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'SubResource'}, + 'blob_uri': {'key': 'blobUri', 'type': 'str'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImageOSDisk, self).__init__(**kwargs) + self.os_type = kwargs.get('os_type', None) + self.os_state = kwargs.get('os_state', None) + self.snapshot = kwargs.get('snapshot', None) + self.managed_disk = kwargs.get('managed_disk', None) + self.blob_uri = kwargs.get('blob_uri', None) + self.caching = kwargs.get('caching', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.storage_account_type = kwargs.get('storage_account_type', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_os_disk_py3.py new file mode 100644 index 000000000000..8e0895fbe37c --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_os_disk_py3.py @@ -0,0 +1,77 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageOSDisk(Model): + """Describes an Operating System disk. + + All required parameters must be populated in order to send to Azure. + + :param os_type: Required. This property allows you to specify the type of + the OS that is included in the disk if creating a VM from a custom image. +

Possible values are:

**Windows**

**Linux**. + Possible values include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param os_state: Required. The OS State. Possible values include: + 'Generalized', 'Specialized' + :type os_state: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemStateTypes + :param snapshot: The snapshot. + :type snapshot: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param managed_disk: The managedDisk. + :type managed_disk: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param blob_uri: The Virtual Hard Disk. + :type blob_uri: str + :param caching: Specifies the caching requirements.

Possible + values are:

**None**

**ReadOnly**

**ReadWrite** +

Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param disk_size_gb: Specifies the size of empty data disks in gigabytes. + This element can be used to overwrite the name of the disk in a virtual + machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param storage_account_type: Specifies the storage account type for the + managed disk. UltraSSD_LRS cannot be used with OS Disk. Possible values + include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type storage_account_type: str or + ~azure.mgmt.compute.v2018_10_01.models.StorageAccountTypes + """ + + _validation = { + 'os_type': {'required': True}, + 'os_state': {'required': True}, + } + + _attribute_map = { + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'os_state': {'key': 'osState', 'type': 'OperatingSystemStateTypes'}, + 'snapshot': {'key': 'snapshot', 'type': 'SubResource'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'SubResource'}, + 'blob_uri': {'key': 'blobUri', 'type': 'str'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + } + + def __init__(self, *, os_type, os_state, snapshot=None, managed_disk=None, blob_uri: str=None, caching=None, disk_size_gb: int=None, storage_account_type=None, **kwargs) -> None: + super(ImageOSDisk, self).__init__(**kwargs) + self.os_type = os_type + self.os_state = os_state + self.snapshot = snapshot + self.managed_disk = managed_disk + self.blob_uri = blob_uri + self.caching = caching + self.disk_size_gb = disk_size_gb + self.storage_account_type = storage_account_type diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_paged.py new file mode 100644 index 000000000000..e3c90bd5037d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ImagePaged(Paged): + """ + A paging container for iterating over a list of :class:`Image ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Image]'} + } + + def __init__(self, *args, **kwargs): + + super(ImagePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_py3.py new file mode 100644 index 000000000000..072d36c732c5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class Image(Resource): + """The source user image virtual hard disk. The virtual hard disk will be + copied before being attached to the virtual machine. If SourceImage is + provided, the destination virtual hard drive must not exist. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param source_virtual_machine: The source virtual machine from which Image + is created. + :type source_virtual_machine: + ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.ImageStorageProfile + :ivar provisioning_state: The provisioning state. + :vartype provisioning_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source_virtual_machine': {'key': 'properties.sourceVirtualMachine', 'type': 'SubResource'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'ImageStorageProfile'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, location: str, tags=None, source_virtual_machine=None, storage_profile=None, **kwargs) -> None: + super(Image, self).__init__(location=location, tags=tags, **kwargs) + self.source_virtual_machine = source_virtual_machine + self.storage_profile = storage_profile + self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_reference.py new file mode 100644 index 000000000000..b8f929f4ad70 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_reference.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ImageReference(SubResource): + """Specifies information about the image to use. You can specify information + about platform images, marketplace images, or virtual machine images. This + element is required when you want to use a platform image, marketplace + image, or virtual machine image, but is not used in other creation + operations. + + :param id: Resource Id + :type id: str + :param publisher: The image publisher. + :type publisher: str + :param offer: Specifies the offer of the platform image or marketplace + image used to create the virtual machine. + :type offer: str + :param sku: The image SKU. + :type sku: str + :param version: Specifies the version of the platform image or marketplace + image used to create the virtual machine. The allowed formats are + Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal + numbers. Specify 'latest' to use the latest version of an image available + at deploy time. Even if you use 'latest', the VM image will not + automatically update after deploy time even if a new version becomes + available. + :type version: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'publisher': {'key': 'publisher', 'type': 'str'}, + 'offer': {'key': 'offer', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImageReference, self).__init__(**kwargs) + self.publisher = kwargs.get('publisher', None) + self.offer = kwargs.get('offer', None) + self.sku = kwargs.get('sku', None) + self.version = kwargs.get('version', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_reference_py3.py new file mode 100644 index 000000000000..1d7eefe5ac65 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_reference_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ImageReference(SubResource): + """Specifies information about the image to use. You can specify information + about platform images, marketplace images, or virtual machine images. This + element is required when you want to use a platform image, marketplace + image, or virtual machine image, but is not used in other creation + operations. + + :param id: Resource Id + :type id: str + :param publisher: The image publisher. + :type publisher: str + :param offer: Specifies the offer of the platform image or marketplace + image used to create the virtual machine. + :type offer: str + :param sku: The image SKU. + :type sku: str + :param version: Specifies the version of the platform image or marketplace + image used to create the virtual machine. The allowed formats are + Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal + numbers. Specify 'latest' to use the latest version of an image available + at deploy time. Even if you use 'latest', the VM image will not + automatically update after deploy time even if a new version becomes + available. + :type version: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'publisher': {'key': 'publisher', 'type': 'str'}, + 'offer': {'key': 'offer', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, publisher: str=None, offer: str=None, sku: str=None, version: str=None, **kwargs) -> None: + super(ImageReference, self).__init__(id=id, **kwargs) + self.publisher = publisher + self.offer = offer + self.sku = sku + self.version = version diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_storage_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_storage_profile.py new file mode 100644 index 000000000000..57c1375376ef --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_storage_profile.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageStorageProfile(Model): + """Describes a storage profile. + + :param os_disk: Specifies information about the operating system disk used + by the virtual machine.

For more information about disks, see + [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type os_disk: ~azure.mgmt.compute.v2018_10_01.models.ImageOSDisk + :param data_disks: Specifies the parameters that are used to add a data + disk to a virtual machine.

For more information about disks, see + [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type data_disks: + list[~azure.mgmt.compute.v2018_10_01.models.ImageDataDisk] + :param zone_resilient: Specifies whether an image is zone resilient or + not. Default is false. Zone resilient images can be created only in + regions that provide Zone Redundant Storage (ZRS). + :type zone_resilient: bool + """ + + _attribute_map = { + 'os_disk': {'key': 'osDisk', 'type': 'ImageOSDisk'}, + 'data_disks': {'key': 'dataDisks', 'type': '[ImageDataDisk]'}, + 'zone_resilient': {'key': 'zoneResilient', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ImageStorageProfile, self).__init__(**kwargs) + self.os_disk = kwargs.get('os_disk', None) + self.data_disks = kwargs.get('data_disks', None) + self.zone_resilient = kwargs.get('zone_resilient', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_storage_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_storage_profile_py3.py new file mode 100644 index 000000000000..dfe0f937a3c1 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_storage_profile_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageStorageProfile(Model): + """Describes a storage profile. + + :param os_disk: Specifies information about the operating system disk used + by the virtual machine.

For more information about disks, see + [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type os_disk: ~azure.mgmt.compute.v2018_10_01.models.ImageOSDisk + :param data_disks: Specifies the parameters that are used to add a data + disk to a virtual machine.

For more information about disks, see + [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type data_disks: + list[~azure.mgmt.compute.v2018_10_01.models.ImageDataDisk] + :param zone_resilient: Specifies whether an image is zone resilient or + not. Default is false. Zone resilient images can be created only in + regions that provide Zone Redundant Storage (ZRS). + :type zone_resilient: bool + """ + + _attribute_map = { + 'os_disk': {'key': 'osDisk', 'type': 'ImageOSDisk'}, + 'data_disks': {'key': 'dataDisks', 'type': '[ImageDataDisk]'}, + 'zone_resilient': {'key': 'zoneResilient', 'type': 'bool'}, + } + + def __init__(self, *, os_disk=None, data_disks=None, zone_resilient: bool=None, **kwargs) -> None: + super(ImageStorageProfile, self).__init__(**kwargs) + self.os_disk = os_disk + self.data_disks = data_disks + self.zone_resilient = zone_resilient diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_update.py new file mode 100644 index 000000000000..985cbe380240 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_update.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .update_resource import UpdateResource + + +class ImageUpdate(UpdateResource): + """The source user image virtual hard disk. Only tags may be updated. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param tags: Resource tags + :type tags: dict[str, str] + :param source_virtual_machine: The source virtual machine from which Image + is created. + :type source_virtual_machine: + ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.ImageStorageProfile + :ivar provisioning_state: The provisioning state. + :vartype provisioning_state: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source_virtual_machine': {'key': 'properties.sourceVirtualMachine', 'type': 'SubResource'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'ImageStorageProfile'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImageUpdate, self).__init__(**kwargs) + self.source_virtual_machine = kwargs.get('source_virtual_machine', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_update_py3.py new file mode 100644 index 000000000000..e1c19f487ae3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/image_update_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .update_resource_py3 import UpdateResource + + +class ImageUpdate(UpdateResource): + """The source user image virtual hard disk. Only tags may be updated. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param tags: Resource tags + :type tags: dict[str, str] + :param source_virtual_machine: The source virtual machine from which Image + is created. + :type source_virtual_machine: + ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.ImageStorageProfile + :ivar provisioning_state: The provisioning state. + :vartype provisioning_state: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source_virtual_machine': {'key': 'properties.sourceVirtualMachine', 'type': 'SubResource'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'ImageStorageProfile'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, tags=None, source_virtual_machine=None, storage_profile=None, **kwargs) -> None: + super(ImageUpdate, self).__init__(tags=tags, **kwargs) + self.source_virtual_machine = source_virtual_machine + self.storage_profile = storage_profile + self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/inner_error.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/inner_error.py new file mode 100644 index 000000000000..6324249d7c19 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/inner_error.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InnerError(Model): + """Inner error details. + + :param exceptiontype: The exception type. + :type exceptiontype: str + :param errordetail: The internal error message or exception dump. + :type errordetail: str + """ + + _attribute_map = { + 'exceptiontype': {'key': 'exceptiontype', 'type': 'str'}, + 'errordetail': {'key': 'errordetail', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(InnerError, self).__init__(**kwargs) + self.exceptiontype = kwargs.get('exceptiontype', None) + self.errordetail = kwargs.get('errordetail', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/inner_error_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/inner_error_py3.py new file mode 100644 index 000000000000..ccec30d7b53f --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/inner_error_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InnerError(Model): + """Inner error details. + + :param exceptiontype: The exception type. + :type exceptiontype: str + :param errordetail: The internal error message or exception dump. + :type errordetail: str + """ + + _attribute_map = { + 'exceptiontype': {'key': 'exceptiontype', 'type': 'str'}, + 'errordetail': {'key': 'errordetail', 'type': 'str'}, + } + + def __init__(self, *, exceptiontype: str=None, errordetail: str=None, **kwargs) -> None: + super(InnerError, self).__init__(**kwargs) + self.exceptiontype = exceptiontype + self.errordetail = errordetail diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/instance_view_status.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/instance_view_status.py new file mode 100644 index 000000000000..3498610092fc --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/instance_view_status.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InstanceViewStatus(Model): + """Instance view status. + + :param code: The status code. + :type code: str + :param level: The level code. Possible values include: 'Info', 'Warning', + 'Error' + :type level: str or + ~azure.mgmt.compute.v2018_10_01.models.StatusLevelTypes + :param display_status: The short localizable label for the status. + :type display_status: str + :param message: The detailed status message, including for alerts and + error messages. + :type message: str + :param time: The time of the status. + :type time: datetime + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'level': {'key': 'level', 'type': 'StatusLevelTypes'}, + 'display_status': {'key': 'displayStatus', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'time': {'key': 'time', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(InstanceViewStatus, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.level = kwargs.get('level', None) + self.display_status = kwargs.get('display_status', None) + self.message = kwargs.get('message', None) + self.time = kwargs.get('time', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/instance_view_status_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/instance_view_status_py3.py new file mode 100644 index 000000000000..7ff50d8e85d2 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/instance_view_status_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InstanceViewStatus(Model): + """Instance view status. + + :param code: The status code. + :type code: str + :param level: The level code. Possible values include: 'Info', 'Warning', + 'Error' + :type level: str or + ~azure.mgmt.compute.v2018_10_01.models.StatusLevelTypes + :param display_status: The short localizable label for the status. + :type display_status: str + :param message: The detailed status message, including for alerts and + error messages. + :type message: str + :param time: The time of the status. + :type time: datetime + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'level': {'key': 'level', 'type': 'StatusLevelTypes'}, + 'display_status': {'key': 'displayStatus', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'time': {'key': 'time', 'type': 'iso-8601'}, + } + + def __init__(self, *, code: str=None, level=None, display_status: str=None, message: str=None, time=None, **kwargs) -> None: + super(InstanceViewStatus, self).__init__(**kwargs) + self.code = code + self.level = level + self.display_status = display_status + self.message = message + self.time = time diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_key_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_key_reference.py new file mode 100644 index 000000000000..45187a0738f7 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_key_reference.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultKeyReference(Model): + """Describes a reference to Key Vault Key. + + All required parameters must be populated in order to send to Azure. + + :param key_url: Required. The URL referencing a key encryption key in Key + Vault. + :type key_url: str + :param source_vault: Required. The relative URL of the Key Vault + containing the key. + :type source_vault: ~azure.mgmt.compute.v2018_10_01.models.SubResource + """ + + _validation = { + 'key_url': {'required': True}, + 'source_vault': {'required': True}, + } + + _attribute_map = { + 'key_url': {'key': 'keyUrl', 'type': 'str'}, + 'source_vault': {'key': 'sourceVault', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(KeyVaultKeyReference, self).__init__(**kwargs) + self.key_url = kwargs.get('key_url', None) + self.source_vault = kwargs.get('source_vault', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_key_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_key_reference_py3.py new file mode 100644 index 000000000000..ec9783b91054 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_key_reference_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultKeyReference(Model): + """Describes a reference to Key Vault Key. + + All required parameters must be populated in order to send to Azure. + + :param key_url: Required. The URL referencing a key encryption key in Key + Vault. + :type key_url: str + :param source_vault: Required. The relative URL of the Key Vault + containing the key. + :type source_vault: ~azure.mgmt.compute.v2018_10_01.models.SubResource + """ + + _validation = { + 'key_url': {'required': True}, + 'source_vault': {'required': True}, + } + + _attribute_map = { + 'key_url': {'key': 'keyUrl', 'type': 'str'}, + 'source_vault': {'key': 'sourceVault', 'type': 'SubResource'}, + } + + def __init__(self, *, key_url: str, source_vault, **kwargs) -> None: + super(KeyVaultKeyReference, self).__init__(**kwargs) + self.key_url = key_url + self.source_vault = source_vault diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_secret_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_secret_reference.py new file mode 100644 index 000000000000..6b6c69432141 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_secret_reference.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultSecretReference(Model): + """Describes a reference to Key Vault Secret. + + All required parameters must be populated in order to send to Azure. + + :param secret_url: Required. The URL referencing a secret in a Key Vault. + :type secret_url: str + :param source_vault: Required. The relative URL of the Key Vault + containing the secret. + :type source_vault: ~azure.mgmt.compute.v2018_10_01.models.SubResource + """ + + _validation = { + 'secret_url': {'required': True}, + 'source_vault': {'required': True}, + } + + _attribute_map = { + 'secret_url': {'key': 'secretUrl', 'type': 'str'}, + 'source_vault': {'key': 'sourceVault', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(KeyVaultSecretReference, self).__init__(**kwargs) + self.secret_url = kwargs.get('secret_url', None) + self.source_vault = kwargs.get('source_vault', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_secret_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_secret_reference_py3.py new file mode 100644 index 000000000000..fdd35e0c980e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/key_vault_secret_reference_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultSecretReference(Model): + """Describes a reference to Key Vault Secret. + + All required parameters must be populated in order to send to Azure. + + :param secret_url: Required. The URL referencing a secret in a Key Vault. + :type secret_url: str + :param source_vault: Required. The relative URL of the Key Vault + containing the secret. + :type source_vault: ~azure.mgmt.compute.v2018_10_01.models.SubResource + """ + + _validation = { + 'secret_url': {'required': True}, + 'source_vault': {'required': True}, + } + + _attribute_map = { + 'secret_url': {'key': 'secretUrl', 'type': 'str'}, + 'source_vault': {'key': 'sourceVault', 'type': 'SubResource'}, + } + + def __init__(self, *, secret_url: str, source_vault, **kwargs) -> None: + super(KeyVaultSecretReference, self).__init__(**kwargs) + self.secret_url = secret_url + self.source_vault = source_vault diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/linux_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/linux_configuration.py new file mode 100644 index 000000000000..5ab938d7eab9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/linux_configuration.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LinuxConfiguration(Model): + """Specifies the Linux operating system settings on the virtual machine. +

For a list of supported Linux distributions, see [Linux on + Azure-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) +

For running non-endorsed distributions, see [Information for + Non-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). + + :param disable_password_authentication: Specifies whether password + authentication should be disabled. + :type disable_password_authentication: bool + :param ssh: Specifies the ssh key configuration for a Linux OS. + :type ssh: ~azure.mgmt.compute.v2018_10_01.models.SshConfiguration + :param provision_vm_agent: Indicates whether virtual machine agent should + be provisioned on the virtual machine.

When this property is not + specified in the request body, default behavior is to set it to true. + This will ensure that VM Agent is installed on the VM so that extensions + can be added to the VM later. + :type provision_vm_agent: bool + """ + + _attribute_map = { + 'disable_password_authentication': {'key': 'disablePasswordAuthentication', 'type': 'bool'}, + 'ssh': {'key': 'ssh', 'type': 'SshConfiguration'}, + 'provision_vm_agent': {'key': 'provisionVMAgent', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(LinuxConfiguration, self).__init__(**kwargs) + self.disable_password_authentication = kwargs.get('disable_password_authentication', None) + self.ssh = kwargs.get('ssh', None) + self.provision_vm_agent = kwargs.get('provision_vm_agent', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/linux_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/linux_configuration_py3.py new file mode 100644 index 000000000000..ccc388729085 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/linux_configuration_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LinuxConfiguration(Model): + """Specifies the Linux operating system settings on the virtual machine. +

For a list of supported Linux distributions, see [Linux on + Azure-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) +

For running non-endorsed distributions, see [Information for + Non-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). + + :param disable_password_authentication: Specifies whether password + authentication should be disabled. + :type disable_password_authentication: bool + :param ssh: Specifies the ssh key configuration for a Linux OS. + :type ssh: ~azure.mgmt.compute.v2018_10_01.models.SshConfiguration + :param provision_vm_agent: Indicates whether virtual machine agent should + be provisioned on the virtual machine.

When this property is not + specified in the request body, default behavior is to set it to true. + This will ensure that VM Agent is installed on the VM so that extensions + can be added to the VM later. + :type provision_vm_agent: bool + """ + + _attribute_map = { + 'disable_password_authentication': {'key': 'disablePasswordAuthentication', 'type': 'bool'}, + 'ssh': {'key': 'ssh', 'type': 'SshConfiguration'}, + 'provision_vm_agent': {'key': 'provisionVMAgent', 'type': 'bool'}, + } + + def __init__(self, *, disable_password_authentication: bool=None, ssh=None, provision_vm_agent: bool=None, **kwargs) -> None: + super(LinuxConfiguration, self).__init__(**kwargs) + self.disable_password_authentication = disable_password_authentication + self.ssh = ssh + self.provision_vm_agent = provision_vm_agent diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_input_base.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_input_base.py new file mode 100644 index 000000000000..843b739a0328 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_input_base.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogAnalyticsInputBase(Model): + """Api input base class for LogAnalytics Api. + + All required parameters must be populated in order to send to Azure. + + :param blob_container_sas_uri: Required. SAS Uri of the logging blob + container to which LogAnalytics Api writes output logs to. + :type blob_container_sas_uri: str + :param from_time: Required. From time of the query + :type from_time: datetime + :param to_time: Required. To time of the query + :type to_time: datetime + :param group_by_throttle_policy: Group query result by Throttle Policy + applied. + :type group_by_throttle_policy: bool + :param group_by_operation_name: Group query result by by Operation Name. + :type group_by_operation_name: bool + :param group_by_resource_name: Group query result by Resource Name. + :type group_by_resource_name: bool + """ + + _validation = { + 'blob_container_sas_uri': {'required': True}, + 'from_time': {'required': True}, + 'to_time': {'required': True}, + } + + _attribute_map = { + 'blob_container_sas_uri': {'key': 'blobContainerSasUri', 'type': 'str'}, + 'from_time': {'key': 'fromTime', 'type': 'iso-8601'}, + 'to_time': {'key': 'toTime', 'type': 'iso-8601'}, + 'group_by_throttle_policy': {'key': 'groupByThrottlePolicy', 'type': 'bool'}, + 'group_by_operation_name': {'key': 'groupByOperationName', 'type': 'bool'}, + 'group_by_resource_name': {'key': 'groupByResourceName', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(LogAnalyticsInputBase, self).__init__(**kwargs) + self.blob_container_sas_uri = kwargs.get('blob_container_sas_uri', None) + self.from_time = kwargs.get('from_time', None) + self.to_time = kwargs.get('to_time', None) + self.group_by_throttle_policy = kwargs.get('group_by_throttle_policy', None) + self.group_by_operation_name = kwargs.get('group_by_operation_name', None) + self.group_by_resource_name = kwargs.get('group_by_resource_name', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_input_base_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_input_base_py3.py new file mode 100644 index 000000000000..b9420117a8ca --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_input_base_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogAnalyticsInputBase(Model): + """Api input base class for LogAnalytics Api. + + All required parameters must be populated in order to send to Azure. + + :param blob_container_sas_uri: Required. SAS Uri of the logging blob + container to which LogAnalytics Api writes output logs to. + :type blob_container_sas_uri: str + :param from_time: Required. From time of the query + :type from_time: datetime + :param to_time: Required. To time of the query + :type to_time: datetime + :param group_by_throttle_policy: Group query result by Throttle Policy + applied. + :type group_by_throttle_policy: bool + :param group_by_operation_name: Group query result by by Operation Name. + :type group_by_operation_name: bool + :param group_by_resource_name: Group query result by Resource Name. + :type group_by_resource_name: bool + """ + + _validation = { + 'blob_container_sas_uri': {'required': True}, + 'from_time': {'required': True}, + 'to_time': {'required': True}, + } + + _attribute_map = { + 'blob_container_sas_uri': {'key': 'blobContainerSasUri', 'type': 'str'}, + 'from_time': {'key': 'fromTime', 'type': 'iso-8601'}, + 'to_time': {'key': 'toTime', 'type': 'iso-8601'}, + 'group_by_throttle_policy': {'key': 'groupByThrottlePolicy', 'type': 'bool'}, + 'group_by_operation_name': {'key': 'groupByOperationName', 'type': 'bool'}, + 'group_by_resource_name': {'key': 'groupByResourceName', 'type': 'bool'}, + } + + def __init__(self, *, blob_container_sas_uri: str, from_time, to_time, group_by_throttle_policy: bool=None, group_by_operation_name: bool=None, group_by_resource_name: bool=None, **kwargs) -> None: + super(LogAnalyticsInputBase, self).__init__(**kwargs) + self.blob_container_sas_uri = blob_container_sas_uri + self.from_time = from_time + self.to_time = to_time + self.group_by_throttle_policy = group_by_throttle_policy + self.group_by_operation_name = group_by_operation_name + self.group_by_resource_name = group_by_resource_name diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_operation_result.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_operation_result.py new file mode 100644 index 000000000000..4e51d6b1965b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_operation_result.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogAnalyticsOperationResult(Model): + """LogAnalytics operation status response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar properties: LogAnalyticsOutput + :vartype properties: + ~azure.mgmt.compute.v2018_10_01.models.LogAnalyticsOutput + """ + + _validation = { + 'properties': {'readonly': True}, + } + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'LogAnalyticsOutput'}, + } + + def __init__(self, **kwargs): + super(LogAnalyticsOperationResult, self).__init__(**kwargs) + self.properties = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_operation_result_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_operation_result_py3.py new file mode 100644 index 000000000000..8413e0c15bf4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_operation_result_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogAnalyticsOperationResult(Model): + """LogAnalytics operation status response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar properties: LogAnalyticsOutput + :vartype properties: + ~azure.mgmt.compute.v2018_10_01.models.LogAnalyticsOutput + """ + + _validation = { + 'properties': {'readonly': True}, + } + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'LogAnalyticsOutput'}, + } + + def __init__(self, **kwargs) -> None: + super(LogAnalyticsOperationResult, self).__init__(**kwargs) + self.properties = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_output.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_output.py new file mode 100644 index 000000000000..5ea1615011c3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_output.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogAnalyticsOutput(Model): + """LogAnalytics output properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar output: Output file Uri path to blob container. + :vartype output: str + """ + + _validation = { + 'output': {'readonly': True}, + } + + _attribute_map = { + 'output': {'key': 'output', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LogAnalyticsOutput, self).__init__(**kwargs) + self.output = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_output_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_output_py3.py new file mode 100644 index 000000000000..71a428a8e49a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/log_analytics_output_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogAnalyticsOutput(Model): + """LogAnalytics output properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar output: Output file Uri path to blob container. + :vartype output: str + """ + + _validation = { + 'output': {'readonly': True}, + } + + _attribute_map = { + 'output': {'key': 'output', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(LogAnalyticsOutput, self).__init__(**kwargs) + self.output = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/maintenance_redeploy_status.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/maintenance_redeploy_status.py new file mode 100644 index 000000000000..74ee05ce94d5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/maintenance_redeploy_status.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MaintenanceRedeployStatus(Model): + """Maintenance Operation Status. + + :param is_customer_initiated_maintenance_allowed: True, if customer is + allowed to perform Maintenance. + :type is_customer_initiated_maintenance_allowed: bool + :param pre_maintenance_window_start_time: Start Time for the Pre + Maintenance Window. + :type pre_maintenance_window_start_time: datetime + :param pre_maintenance_window_end_time: End Time for the Pre Maintenance + Window. + :type pre_maintenance_window_end_time: datetime + :param maintenance_window_start_time: Start Time for the Maintenance + Window. + :type maintenance_window_start_time: datetime + :param maintenance_window_end_time: End Time for the Maintenance Window. + :type maintenance_window_end_time: datetime + :param last_operation_result_code: The Last Maintenance Operation Result + Code. Possible values include: 'None', 'RetryLater', 'MaintenanceAborted', + 'MaintenanceCompleted' + :type last_operation_result_code: str or + ~azure.mgmt.compute.v2018_10_01.models.MaintenanceOperationResultCodeTypes + :param last_operation_message: Message returned for the last Maintenance + Operation. + :type last_operation_message: str + """ + + _attribute_map = { + 'is_customer_initiated_maintenance_allowed': {'key': 'isCustomerInitiatedMaintenanceAllowed', 'type': 'bool'}, + 'pre_maintenance_window_start_time': {'key': 'preMaintenanceWindowStartTime', 'type': 'iso-8601'}, + 'pre_maintenance_window_end_time': {'key': 'preMaintenanceWindowEndTime', 'type': 'iso-8601'}, + 'maintenance_window_start_time': {'key': 'maintenanceWindowStartTime', 'type': 'iso-8601'}, + 'maintenance_window_end_time': {'key': 'maintenanceWindowEndTime', 'type': 'iso-8601'}, + 'last_operation_result_code': {'key': 'lastOperationResultCode', 'type': 'MaintenanceOperationResultCodeTypes'}, + 'last_operation_message': {'key': 'lastOperationMessage', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MaintenanceRedeployStatus, self).__init__(**kwargs) + self.is_customer_initiated_maintenance_allowed = kwargs.get('is_customer_initiated_maintenance_allowed', None) + self.pre_maintenance_window_start_time = kwargs.get('pre_maintenance_window_start_time', None) + self.pre_maintenance_window_end_time = kwargs.get('pre_maintenance_window_end_time', None) + self.maintenance_window_start_time = kwargs.get('maintenance_window_start_time', None) + self.maintenance_window_end_time = kwargs.get('maintenance_window_end_time', None) + self.last_operation_result_code = kwargs.get('last_operation_result_code', None) + self.last_operation_message = kwargs.get('last_operation_message', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/maintenance_redeploy_status_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/maintenance_redeploy_status_py3.py new file mode 100644 index 000000000000..97264ca9b7f4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/maintenance_redeploy_status_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MaintenanceRedeployStatus(Model): + """Maintenance Operation Status. + + :param is_customer_initiated_maintenance_allowed: True, if customer is + allowed to perform Maintenance. + :type is_customer_initiated_maintenance_allowed: bool + :param pre_maintenance_window_start_time: Start Time for the Pre + Maintenance Window. + :type pre_maintenance_window_start_time: datetime + :param pre_maintenance_window_end_time: End Time for the Pre Maintenance + Window. + :type pre_maintenance_window_end_time: datetime + :param maintenance_window_start_time: Start Time for the Maintenance + Window. + :type maintenance_window_start_time: datetime + :param maintenance_window_end_time: End Time for the Maintenance Window. + :type maintenance_window_end_time: datetime + :param last_operation_result_code: The Last Maintenance Operation Result + Code. Possible values include: 'None', 'RetryLater', 'MaintenanceAborted', + 'MaintenanceCompleted' + :type last_operation_result_code: str or + ~azure.mgmt.compute.v2018_10_01.models.MaintenanceOperationResultCodeTypes + :param last_operation_message: Message returned for the last Maintenance + Operation. + :type last_operation_message: str + """ + + _attribute_map = { + 'is_customer_initiated_maintenance_allowed': {'key': 'isCustomerInitiatedMaintenanceAllowed', 'type': 'bool'}, + 'pre_maintenance_window_start_time': {'key': 'preMaintenanceWindowStartTime', 'type': 'iso-8601'}, + 'pre_maintenance_window_end_time': {'key': 'preMaintenanceWindowEndTime', 'type': 'iso-8601'}, + 'maintenance_window_start_time': {'key': 'maintenanceWindowStartTime', 'type': 'iso-8601'}, + 'maintenance_window_end_time': {'key': 'maintenanceWindowEndTime', 'type': 'iso-8601'}, + 'last_operation_result_code': {'key': 'lastOperationResultCode', 'type': 'MaintenanceOperationResultCodeTypes'}, + 'last_operation_message': {'key': 'lastOperationMessage', 'type': 'str'}, + } + + def __init__(self, *, is_customer_initiated_maintenance_allowed: bool=None, pre_maintenance_window_start_time=None, pre_maintenance_window_end_time=None, maintenance_window_start_time=None, maintenance_window_end_time=None, last_operation_result_code=None, last_operation_message: str=None, **kwargs) -> None: + super(MaintenanceRedeployStatus, self).__init__(**kwargs) + self.is_customer_initiated_maintenance_allowed = is_customer_initiated_maintenance_allowed + self.pre_maintenance_window_start_time = pre_maintenance_window_start_time + self.pre_maintenance_window_end_time = pre_maintenance_window_end_time + self.maintenance_window_start_time = maintenance_window_start_time + self.maintenance_window_end_time = maintenance_window_end_time + self.last_operation_result_code = last_operation_result_code + self.last_operation_message = last_operation_message diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/managed_disk_parameters.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/managed_disk_parameters.py new file mode 100644 index 000000000000..dc7f70b78e74 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/managed_disk_parameters.py @@ -0,0 +1,35 @@ +# 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 .sub_resource import SubResource + + +class ManagedDiskParameters(SubResource): + """The parameters of a managed disk. + + :param id: Resource Id + :type id: str + :param storage_account_type: Specifies the storage account type for the + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type storage_account_type: str or + ~azure.mgmt.compute.v2018_10_01.models.StorageAccountTypes + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedDiskParameters, self).__init__(**kwargs) + self.storage_account_type = kwargs.get('storage_account_type', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/managed_disk_parameters_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/managed_disk_parameters_py3.py new file mode 100644 index 000000000000..94e2f26b2750 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/managed_disk_parameters_py3.py @@ -0,0 +1,35 @@ +# 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 .sub_resource_py3 import SubResource + + +class ManagedDiskParameters(SubResource): + """The parameters of a managed disk. + + :param id: Resource Id + :type id: str + :param storage_account_type: Specifies the storage account type for the + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type storage_account_type: str or + ~azure.mgmt.compute.v2018_10_01.models.StorageAccountTypes + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, storage_account_type=None, **kwargs) -> None: + super(ManagedDiskParameters, self).__init__(id=id, **kwargs) + self.storage_account_type = storage_account_type diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_interface_reference.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_interface_reference.py new file mode 100644 index 000000000000..b86e305e3f74 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_interface_reference.py @@ -0,0 +1,32 @@ +# 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 .sub_resource import SubResource + + +class NetworkInterfaceReference(SubResource): + """Describes a network interface reference. + + :param id: Resource Id + :type id: str + :param primary: Specifies the primary network interface in case the + virtual machine has more than 1 network interface. + :type primary: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceReference, self).__init__(**kwargs) + self.primary = kwargs.get('primary', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_interface_reference_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_interface_reference_py3.py new file mode 100644 index 000000000000..47da29278832 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_interface_reference_py3.py @@ -0,0 +1,32 @@ +# 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 .sub_resource_py3 import SubResource + + +class NetworkInterfaceReference(SubResource): + """Describes a network interface reference. + + :param id: Resource Id + :type id: str + :param primary: Specifies the primary network interface in case the + virtual machine has more than 1 network interface. + :type primary: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + } + + def __init__(self, *, id: str=None, primary: bool=None, **kwargs) -> None: + super(NetworkInterfaceReference, self).__init__(id=id, **kwargs) + self.primary = primary diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_profile.py new file mode 100644 index 000000000000..0431a7df1c0e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_profile.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkProfile(Model): + """Specifies the network interfaces of the virtual machine. + + :param network_interfaces: Specifies the list of resource Ids for the + network interfaces associated with the virtual machine. + :type network_interfaces: + list[~azure.mgmt.compute.v2018_10_01.models.NetworkInterfaceReference] + """ + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[NetworkInterfaceReference]'}, + } + + def __init__(self, **kwargs): + super(NetworkProfile, self).__init__(**kwargs) + self.network_interfaces = kwargs.get('network_interfaces', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_profile_py3.py new file mode 100644 index 000000000000..bcd509f21769 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/network_profile_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkProfile(Model): + """Specifies the network interfaces of the virtual machine. + + :param network_interfaces: Specifies the list of resource Ids for the + network interfaces associated with the virtual machine. + :type network_interfaces: + list[~azure.mgmt.compute.v2018_10_01.models.NetworkInterfaceReference] + """ + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[NetworkInterfaceReference]'}, + } + + def __init__(self, *, network_interfaces=None, **kwargs) -> None: + super(NetworkProfile, self).__init__(**kwargs) + self.network_interfaces = network_interfaces diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk.py new file mode 100644 index 000000000000..a9e7d8e85813 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk.py @@ -0,0 +1,103 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OSDisk(Model): + """Specifies information about the operating system disk used by the virtual + machine.

For more information about disks, see [About disks and + VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + + All required parameters must be populated in order to send to Azure. + + :param os_type: This property allows you to specify the type of the OS + that is included in the disk if creating a VM from user-image or a + specialized VHD.

Possible values are:

**Windows** +

**Linux**. Possible values include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param encryption_settings: Specifies the encryption settings for the OS + Disk.

Minimum api-version: 2015-06-15 + :type encryption_settings: + ~azure.mgmt.compute.v2018_10_01.models.DiskEncryptionSettings + :param name: The disk name. + :type name: str + :param vhd: The virtual hard disk. + :type vhd: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param image: The source user image virtual hard disk. The virtual hard + disk will be copied before being attached to the virtual machine. If + SourceImage is provided, the destination virtual hard drive must not + exist. + :type image: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param caching: Specifies the caching requirements.

Possible + values are:

**None**

**ReadOnly**

**ReadWrite** +

Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param diff_disk_settings: Specifies the differencing Disk Settings for + the operating system disk used by the virtual machine. + :type diff_disk_settings: + ~azure.mgmt.compute.v2018_10_01.models.DiffDiskSettings + :param create_option: Required. Specifies how the virtual machine should + be created.

Possible values are:

**Attach** \\u2013 This + value is used when you are using a specialized disk to create the virtual + machine.

**FromImage** \\u2013 This value is used when you are + using an image to create the virtual machine. If you are using a platform + image, you also use the imageReference element described above. If you are + using a marketplace image, you also use the plan element previously + described. Possible values include: 'FromImage', 'Empty', 'Attach' + :type create_option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiskCreateOptionTypes + :param disk_size_gb: Specifies the size of an empty data disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.ManagedDiskParameters + """ + + _validation = { + 'create_option': {'required': True}, + } + + _attribute_map = { + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'encryption_settings': {'key': 'encryptionSettings', 'type': 'DiskEncryptionSettings'}, + 'name': {'key': 'name', 'type': 'str'}, + 'vhd': {'key': 'vhd', 'type': 'VirtualHardDisk'}, + 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'diff_disk_settings': {'key': 'diffDiskSettings', 'type': 'DiffDiskSettings'}, + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'ManagedDiskParameters'}, + } + + def __init__(self, **kwargs): + super(OSDisk, self).__init__(**kwargs) + self.os_type = kwargs.get('os_type', None) + self.encryption_settings = kwargs.get('encryption_settings', None) + self.name = kwargs.get('name', None) + self.vhd = kwargs.get('vhd', None) + self.image = kwargs.get('image', None) + self.caching = kwargs.get('caching', None) + self.write_accelerator_enabled = kwargs.get('write_accelerator_enabled', None) + self.diff_disk_settings = kwargs.get('diff_disk_settings', None) + self.create_option = kwargs.get('create_option', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.managed_disk = kwargs.get('managed_disk', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_image.py new file mode 100644 index 000000000000..07173c618203 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_image.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OSDiskImage(Model): + """Contains the os disk image information. + + All required parameters must be populated in order to send to Azure. + + :param operating_system: Required. The operating system of the + osDiskImage. Possible values include: 'Windows', 'Linux' + :type operating_system: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + """ + + _validation = { + 'operating_system': {'required': True}, + } + + _attribute_map = { + 'operating_system': {'key': 'operatingSystem', 'type': 'OperatingSystemTypes'}, + } + + def __init__(self, **kwargs): + super(OSDiskImage, self).__init__(**kwargs) + self.operating_system = kwargs.get('operating_system', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_image_py3.py new file mode 100644 index 000000000000..ba5cf0c5b95f --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_image_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OSDiskImage(Model): + """Contains the os disk image information. + + All required parameters must be populated in order to send to Azure. + + :param operating_system: Required. The operating system of the + osDiskImage. Possible values include: 'Windows', 'Linux' + :type operating_system: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + """ + + _validation = { + 'operating_system': {'required': True}, + } + + _attribute_map = { + 'operating_system': {'key': 'operatingSystem', 'type': 'OperatingSystemTypes'}, + } + + def __init__(self, *, operating_system, **kwargs) -> None: + super(OSDiskImage, self).__init__(**kwargs) + self.operating_system = operating_system diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_py3.py new file mode 100644 index 000000000000..aebde078072a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_disk_py3.py @@ -0,0 +1,103 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OSDisk(Model): + """Specifies information about the operating system disk used by the virtual + machine.

For more information about disks, see [About disks and + VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + + All required parameters must be populated in order to send to Azure. + + :param os_type: This property allows you to specify the type of the OS + that is included in the disk if creating a VM from user-image or a + specialized VHD.

Possible values are:

**Windows** +

**Linux**. Possible values include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param encryption_settings: Specifies the encryption settings for the OS + Disk.

Minimum api-version: 2015-06-15 + :type encryption_settings: + ~azure.mgmt.compute.v2018_10_01.models.DiskEncryptionSettings + :param name: The disk name. + :type name: str + :param vhd: The virtual hard disk. + :type vhd: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param image: The source user image virtual hard disk. The virtual hard + disk will be copied before being attached to the virtual machine. If + SourceImage is provided, the destination virtual hard drive must not + exist. + :type image: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param caching: Specifies the caching requirements.

Possible + values are:

**None**

**ReadOnly**

**ReadWrite** +

Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param diff_disk_settings: Specifies the differencing Disk Settings for + the operating system disk used by the virtual machine. + :type diff_disk_settings: + ~azure.mgmt.compute.v2018_10_01.models.DiffDiskSettings + :param create_option: Required. Specifies how the virtual machine should + be created.

Possible values are:

**Attach** \\u2013 This + value is used when you are using a specialized disk to create the virtual + machine.

**FromImage** \\u2013 This value is used when you are + using an image to create the virtual machine. If you are using a platform + image, you also use the imageReference element described above. If you are + using a marketplace image, you also use the plan element previously + described. Possible values include: 'FromImage', 'Empty', 'Attach' + :type create_option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiskCreateOptionTypes + :param disk_size_gb: Specifies the size of an empty data disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.ManagedDiskParameters + """ + + _validation = { + 'create_option': {'required': True}, + } + + _attribute_map = { + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'encryption_settings': {'key': 'encryptionSettings', 'type': 'DiskEncryptionSettings'}, + 'name': {'key': 'name', 'type': 'str'}, + 'vhd': {'key': 'vhd', 'type': 'VirtualHardDisk'}, + 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'diff_disk_settings': {'key': 'diffDiskSettings', 'type': 'DiffDiskSettings'}, + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'ManagedDiskParameters'}, + } + + def __init__(self, *, create_option, os_type=None, encryption_settings=None, name: str=None, vhd=None, image=None, caching=None, write_accelerator_enabled: bool=None, diff_disk_settings=None, disk_size_gb: int=None, managed_disk=None, **kwargs) -> None: + super(OSDisk, self).__init__(**kwargs) + self.os_type = os_type + self.encryption_settings = encryption_settings + self.name = name + self.vhd = vhd + self.image = image + self.caching = caching + self.write_accelerator_enabled = write_accelerator_enabled + self.diff_disk_settings = diff_disk_settings + self.create_option = create_option + self.disk_size_gb = disk_size_gb + self.managed_disk = managed_disk diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_profile.py new file mode 100644 index 000000000000..78ccf392da5c --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_profile.py @@ -0,0 +1,105 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OSProfile(Model): + """Specifies the operating system settings for the virtual machine. + + :param computer_name: Specifies the host OS name of the virtual machine. +

**Max-length (Windows):** 15 characters

**Max-length + (Linux):** 64 characters.

For naming conventions and restrictions + see [Azure infrastructure services implementation + guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions). + :type computer_name: str + :param admin_username: Specifies the name of the administrator account. +

**Windows-only restriction:** Cannot end in "."

+ **Disallowed values:** "administrator", "admin", "user", "user1", "test", + "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", + "admin2", "aspnet", "backup", "console", "david", "guest", "john", + "owner", "root", "server", "sql", "support", "support_388945a0", "sys", + "test2", "test3", "user4", "user5".

**Minimum-length (Linux):** 1 + character

**Max-length (Linux):** 64 characters

+ **Max-length (Windows):** 20 characters

  • For root access to + the Linux VM, see [Using root privileges on Linux virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • + For a list of built-in system users on Linux that should not be used in + this field, see [Selecting User Names for Linux on + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) + :type admin_username: str + :param admin_password: Specifies the password of the administrator + account.

    **Minimum-length (Windows):** 8 characters

    + **Minimum-length (Linux):** 6 characters

    **Max-length + (Windows):** 123 characters

    **Max-length (Linux):** 72 characters +

    **Complexity requirements:** 3 out of 4 conditions below need to + be fulfilled
    Has lower characters
    Has upper characters
    Has a + digit
    Has a special character (Regex match [\\W_])

    + **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", + "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", + "iloveyou!"

    For resetting the password, see [How to reset the + Remote Desktop service or its login password in a Windows + VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    For resetting root password, see [Manage users, SSH, and check or + repair disks on Azure Linux VMs using the VMAccess + Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password) + :type admin_password: str + :param custom_data: Specifies a base-64 encoded string of custom data. The + base-64 encoded string is decoded to a binary array that is saved as a + file on the Virtual Machine. The maximum length of the binary array is + 65535 bytes.

    For using cloud-init for your VM, see [Using + cloud-init to customize a Linux VM during + creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) + :type custom_data: str + :param windows_configuration: Specifies Windows operating system settings + on the virtual machine. + :type windows_configuration: + ~azure.mgmt.compute.v2018_10_01.models.WindowsConfiguration + :param linux_configuration: Specifies the Linux operating system settings + on the virtual machine.

    For a list of supported Linux + distributions, see [Linux on Azure-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) +

    For running non-endorsed distributions, see [Information for + Non-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). + :type linux_configuration: + ~azure.mgmt.compute.v2018_10_01.models.LinuxConfiguration + :param secrets: Specifies set of certificates that should be installed + onto the virtual machine. + :type secrets: + list[~azure.mgmt.compute.v2018_10_01.models.VaultSecretGroup] + :param allow_extension_operations: Specifies whether extension operations + should be allowed on the virtual machine.

    This may only be set to + False when no extensions are present on the virtual machine. + :type allow_extension_operations: bool + """ + + _attribute_map = { + 'computer_name': {'key': 'computerName', 'type': 'str'}, + 'admin_username': {'key': 'adminUsername', 'type': 'str'}, + 'admin_password': {'key': 'adminPassword', 'type': 'str'}, + 'custom_data': {'key': 'customData', 'type': 'str'}, + 'windows_configuration': {'key': 'windowsConfiguration', 'type': 'WindowsConfiguration'}, + 'linux_configuration': {'key': 'linuxConfiguration', 'type': 'LinuxConfiguration'}, + 'secrets': {'key': 'secrets', 'type': '[VaultSecretGroup]'}, + 'allow_extension_operations': {'key': 'allowExtensionOperations', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(OSProfile, self).__init__(**kwargs) + self.computer_name = kwargs.get('computer_name', None) + self.admin_username = kwargs.get('admin_username', None) + self.admin_password = kwargs.get('admin_password', None) + self.custom_data = kwargs.get('custom_data', None) + self.windows_configuration = kwargs.get('windows_configuration', None) + self.linux_configuration = kwargs.get('linux_configuration', None) + self.secrets = kwargs.get('secrets', None) + self.allow_extension_operations = kwargs.get('allow_extension_operations', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_profile_py3.py new file mode 100644 index 000000000000..a0b560dc3ea3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/os_profile_py3.py @@ -0,0 +1,105 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OSProfile(Model): + """Specifies the operating system settings for the virtual machine. + + :param computer_name: Specifies the host OS name of the virtual machine. +

    **Max-length (Windows):** 15 characters

    **Max-length + (Linux):** 64 characters.

    For naming conventions and restrictions + see [Azure infrastructure services implementation + guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions). + :type computer_name: str + :param admin_username: Specifies the name of the administrator account. +

    **Windows-only restriction:** Cannot end in "."

    + **Disallowed values:** "administrator", "admin", "user", "user1", "test", + "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", + "admin2", "aspnet", "backup", "console", "david", "guest", "john", + "owner", "root", "server", "sql", "support", "support_388945a0", "sys", + "test2", "test3", "user4", "user5".

    **Minimum-length (Linux):** 1 + character

    **Max-length (Linux):** 64 characters

    + **Max-length (Windows):** 20 characters

  • For root access to + the Linux VM, see [Using root privileges on Linux virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • + For a list of built-in system users on Linux that should not be used in + this field, see [Selecting User Names for Linux on + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) + :type admin_username: str + :param admin_password: Specifies the password of the administrator + account.

    **Minimum-length (Windows):** 8 characters

    + **Minimum-length (Linux):** 6 characters

    **Max-length + (Windows):** 123 characters

    **Max-length (Linux):** 72 characters +

    **Complexity requirements:** 3 out of 4 conditions below need to + be fulfilled
    Has lower characters
    Has upper characters
    Has a + digit
    Has a special character (Regex match [\\W_])

    + **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", + "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", + "iloveyou!"

    For resetting the password, see [How to reset the + Remote Desktop service or its login password in a Windows + VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    For resetting root password, see [Manage users, SSH, and check or + repair disks on Azure Linux VMs using the VMAccess + Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password) + :type admin_password: str + :param custom_data: Specifies a base-64 encoded string of custom data. The + base-64 encoded string is decoded to a binary array that is saved as a + file on the Virtual Machine. The maximum length of the binary array is + 65535 bytes.

    For using cloud-init for your VM, see [Using + cloud-init to customize a Linux VM during + creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) + :type custom_data: str + :param windows_configuration: Specifies Windows operating system settings + on the virtual machine. + :type windows_configuration: + ~azure.mgmt.compute.v2018_10_01.models.WindowsConfiguration + :param linux_configuration: Specifies the Linux operating system settings + on the virtual machine.

    For a list of supported Linux + distributions, see [Linux on Azure-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) +

    For running non-endorsed distributions, see [Information for + Non-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). + :type linux_configuration: + ~azure.mgmt.compute.v2018_10_01.models.LinuxConfiguration + :param secrets: Specifies set of certificates that should be installed + onto the virtual machine. + :type secrets: + list[~azure.mgmt.compute.v2018_10_01.models.VaultSecretGroup] + :param allow_extension_operations: Specifies whether extension operations + should be allowed on the virtual machine.

    This may only be set to + False when no extensions are present on the virtual machine. + :type allow_extension_operations: bool + """ + + _attribute_map = { + 'computer_name': {'key': 'computerName', 'type': 'str'}, + 'admin_username': {'key': 'adminUsername', 'type': 'str'}, + 'admin_password': {'key': 'adminPassword', 'type': 'str'}, + 'custom_data': {'key': 'customData', 'type': 'str'}, + 'windows_configuration': {'key': 'windowsConfiguration', 'type': 'WindowsConfiguration'}, + 'linux_configuration': {'key': 'linuxConfiguration', 'type': 'LinuxConfiguration'}, + 'secrets': {'key': 'secrets', 'type': '[VaultSecretGroup]'}, + 'allow_extension_operations': {'key': 'allowExtensionOperations', 'type': 'bool'}, + } + + def __init__(self, *, computer_name: str=None, admin_username: str=None, admin_password: str=None, custom_data: str=None, windows_configuration=None, linux_configuration=None, secrets=None, allow_extension_operations: bool=None, **kwargs) -> None: + super(OSProfile, self).__init__(**kwargs) + self.computer_name = computer_name + self.admin_username = admin_username + self.admin_password = admin_password + self.custom_data = custom_data + self.windows_configuration = windows_configuration + self.linux_configuration = linux_configuration + self.secrets = secrets + self.allow_extension_operations = allow_extension_operations diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/plan.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/plan.py new file mode 100644 index 000000000000..d42b6b32cfac --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/plan.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Plan(Model): + """Specifies information about the marketplace image used to create the + virtual machine. This element is only used for marketplace images. Before + you can use a marketplace image from an API, you must enable the image for + programmatic use. In the Azure portal, find the marketplace image that you + want to use and then click **Want to deploy programmatically, Get Started + ->**. Enter any required information and then click **Save**. + + :param name: The plan ID. + :type name: str + :param publisher: The publisher ID. + :type publisher: str + :param product: Specifies the product of the image from the marketplace. + This is the same value as Offer under the imageReference element. + :type product: str + :param promotion_code: The promotion code. + :type promotion_code: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'publisher': {'key': 'publisher', 'type': 'str'}, + 'product': {'key': 'product', 'type': 'str'}, + 'promotion_code': {'key': 'promotionCode', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Plan, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.publisher = kwargs.get('publisher', None) + self.product = kwargs.get('product', None) + self.promotion_code = kwargs.get('promotion_code', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/plan_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/plan_py3.py new file mode 100644 index 000000000000..9cca2c78a123 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/plan_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Plan(Model): + """Specifies information about the marketplace image used to create the + virtual machine. This element is only used for marketplace images. Before + you can use a marketplace image from an API, you must enable the image for + programmatic use. In the Azure portal, find the marketplace image that you + want to use and then click **Want to deploy programmatically, Get Started + ->**. Enter any required information and then click **Save**. + + :param name: The plan ID. + :type name: str + :param publisher: The publisher ID. + :type publisher: str + :param product: Specifies the product of the image from the marketplace. + This is the same value as Offer under the imageReference element. + :type product: str + :param promotion_code: The promotion code. + :type promotion_code: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'publisher': {'key': 'publisher', 'type': 'str'}, + 'product': {'key': 'product', 'type': 'str'}, + 'promotion_code': {'key': 'promotionCode', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, publisher: str=None, product: str=None, promotion_code: str=None, **kwargs) -> None: + super(Plan, self).__init__(**kwargs) + self.name = name + self.publisher = publisher + self.product = product + self.promotion_code = promotion_code diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/purchase_plan.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/purchase_plan.py new file mode 100644 index 000000000000..2e1509addca6 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/purchase_plan.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PurchasePlan(Model): + """Used for establishing the purchase context of any 3rd Party artifact + through MarketPlace. + + All required parameters must be populated in order to send to Azure. + + :param publisher: Required. The publisher ID. + :type publisher: str + :param name: Required. The plan ID. + :type name: str + :param product: Required. Specifies the product of the image from the + marketplace. This is the same value as Offer under the imageReference + element. + :type product: str + """ + + _validation = { + 'publisher': {'required': True}, + 'name': {'required': True}, + 'product': {'required': True}, + } + + _attribute_map = { + 'publisher': {'key': 'publisher', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'product': {'key': 'product', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PurchasePlan, self).__init__(**kwargs) + self.publisher = kwargs.get('publisher', None) + self.name = kwargs.get('name', None) + self.product = kwargs.get('product', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/purchase_plan_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/purchase_plan_py3.py new file mode 100644 index 000000000000..26f7996f1633 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/purchase_plan_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PurchasePlan(Model): + """Used for establishing the purchase context of any 3rd Party artifact + through MarketPlace. + + All required parameters must be populated in order to send to Azure. + + :param publisher: Required. The publisher ID. + :type publisher: str + :param name: Required. The plan ID. + :type name: str + :param product: Required. Specifies the product of the image from the + marketplace. This is the same value as Offer under the imageReference + element. + :type product: str + """ + + _validation = { + 'publisher': {'required': True}, + 'name': {'required': True}, + 'product': {'required': True}, + } + + _attribute_map = { + 'publisher': {'key': 'publisher', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'product': {'key': 'product', 'type': 'str'}, + } + + def __init__(self, *, publisher: str, name: str, product: str, **kwargs) -> None: + super(PurchasePlan, self).__init__(**kwargs) + self.publisher = publisher + self.name = name + self.product = product diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/recovery_walk_response.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/recovery_walk_response.py new file mode 100644 index 000000000000..8dcbca604c7e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/recovery_walk_response.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecoveryWalkResponse(Model): + """Response after calling a manual recovery walk. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar walk_performed: Whether the recovery walk was performed + :vartype walk_performed: bool + :ivar next_platform_update_domain: The next update domain that needs to be + walked. Null means walk spanning all update domains has been completed + :vartype next_platform_update_domain: int + """ + + _validation = { + 'walk_performed': {'readonly': True}, + 'next_platform_update_domain': {'readonly': True}, + } + + _attribute_map = { + 'walk_performed': {'key': 'walkPerformed', 'type': 'bool'}, + 'next_platform_update_domain': {'key': 'nextPlatformUpdateDomain', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(RecoveryWalkResponse, self).__init__(**kwargs) + self.walk_performed = None + self.next_platform_update_domain = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/recovery_walk_response_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/recovery_walk_response_py3.py new file mode 100644 index 000000000000..5b24a0ed9b7a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/recovery_walk_response_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecoveryWalkResponse(Model): + """Response after calling a manual recovery walk. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar walk_performed: Whether the recovery walk was performed + :vartype walk_performed: bool + :ivar next_platform_update_domain: The next update domain that needs to be + walked. Null means walk spanning all update domains has been completed + :vartype next_platform_update_domain: int + """ + + _validation = { + 'walk_performed': {'readonly': True}, + 'next_platform_update_domain': {'readonly': True}, + } + + _attribute_map = { + 'walk_performed': {'key': 'walkPerformed', 'type': 'bool'}, + 'next_platform_update_domain': {'key': 'nextPlatformUpdateDomain', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(RecoveryWalkResponse, self).__init__(**kwargs) + self.walk_performed = None + self.next_platform_update_domain = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/request_rate_by_interval_input.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/request_rate_by_interval_input.py new file mode 100644 index 000000000000..0cb61f808835 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/request_rate_by_interval_input.py @@ -0,0 +1,60 @@ +# 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 .log_analytics_input_base import LogAnalyticsInputBase + + +class RequestRateByIntervalInput(LogAnalyticsInputBase): + """Api request input for LogAnalytics getRequestRateByInterval Api. + + All required parameters must be populated in order to send to Azure. + + :param blob_container_sas_uri: Required. SAS Uri of the logging blob + container to which LogAnalytics Api writes output logs to. + :type blob_container_sas_uri: str + :param from_time: Required. From time of the query + :type from_time: datetime + :param to_time: Required. To time of the query + :type to_time: datetime + :param group_by_throttle_policy: Group query result by Throttle Policy + applied. + :type group_by_throttle_policy: bool + :param group_by_operation_name: Group query result by by Operation Name. + :type group_by_operation_name: bool + :param group_by_resource_name: Group query result by Resource Name. + :type group_by_resource_name: bool + :param interval_length: Required. Interval value in minutes used to create + LogAnalytics call rate logs. Possible values include: 'ThreeMins', + 'FiveMins', 'ThirtyMins', 'SixtyMins' + :type interval_length: str or + ~azure.mgmt.compute.v2018_10_01.models.IntervalInMins + """ + + _validation = { + 'blob_container_sas_uri': {'required': True}, + 'from_time': {'required': True}, + 'to_time': {'required': True}, + 'interval_length': {'required': True}, + } + + _attribute_map = { + 'blob_container_sas_uri': {'key': 'blobContainerSasUri', 'type': 'str'}, + 'from_time': {'key': 'fromTime', 'type': 'iso-8601'}, + 'to_time': {'key': 'toTime', 'type': 'iso-8601'}, + 'group_by_throttle_policy': {'key': 'groupByThrottlePolicy', 'type': 'bool'}, + 'group_by_operation_name': {'key': 'groupByOperationName', 'type': 'bool'}, + 'group_by_resource_name': {'key': 'groupByResourceName', 'type': 'bool'}, + 'interval_length': {'key': 'intervalLength', 'type': 'IntervalInMins'}, + } + + def __init__(self, **kwargs): + super(RequestRateByIntervalInput, self).__init__(**kwargs) + self.interval_length = kwargs.get('interval_length', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/request_rate_by_interval_input_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/request_rate_by_interval_input_py3.py new file mode 100644 index 000000000000..8ba8eb54a475 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/request_rate_by_interval_input_py3.py @@ -0,0 +1,60 @@ +# 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 .log_analytics_input_base_py3 import LogAnalyticsInputBase + + +class RequestRateByIntervalInput(LogAnalyticsInputBase): + """Api request input for LogAnalytics getRequestRateByInterval Api. + + All required parameters must be populated in order to send to Azure. + + :param blob_container_sas_uri: Required. SAS Uri of the logging blob + container to which LogAnalytics Api writes output logs to. + :type blob_container_sas_uri: str + :param from_time: Required. From time of the query + :type from_time: datetime + :param to_time: Required. To time of the query + :type to_time: datetime + :param group_by_throttle_policy: Group query result by Throttle Policy + applied. + :type group_by_throttle_policy: bool + :param group_by_operation_name: Group query result by by Operation Name. + :type group_by_operation_name: bool + :param group_by_resource_name: Group query result by Resource Name. + :type group_by_resource_name: bool + :param interval_length: Required. Interval value in minutes used to create + LogAnalytics call rate logs. Possible values include: 'ThreeMins', + 'FiveMins', 'ThirtyMins', 'SixtyMins' + :type interval_length: str or + ~azure.mgmt.compute.v2018_10_01.models.IntervalInMins + """ + + _validation = { + 'blob_container_sas_uri': {'required': True}, + 'from_time': {'required': True}, + 'to_time': {'required': True}, + 'interval_length': {'required': True}, + } + + _attribute_map = { + 'blob_container_sas_uri': {'key': 'blobContainerSasUri', 'type': 'str'}, + 'from_time': {'key': 'fromTime', 'type': 'iso-8601'}, + 'to_time': {'key': 'toTime', 'type': 'iso-8601'}, + 'group_by_throttle_policy': {'key': 'groupByThrottlePolicy', 'type': 'bool'}, + 'group_by_operation_name': {'key': 'groupByOperationName', 'type': 'bool'}, + 'group_by_resource_name': {'key': 'groupByResourceName', 'type': 'bool'}, + 'interval_length': {'key': 'intervalLength', 'type': 'IntervalInMins'}, + } + + def __init__(self, *, blob_container_sas_uri: str, from_time, to_time, interval_length, group_by_throttle_policy: bool=None, group_by_operation_name: bool=None, group_by_resource_name: bool=None, **kwargs) -> None: + super(RequestRateByIntervalInput, self).__init__(blob_container_sas_uri=blob_container_sas_uri, from_time=from_time, to_time=to_time, group_by_throttle_policy=group_by_throttle_policy, group_by_operation_name=group_by_operation_name, group_by_resource_name=group_by_resource_name, **kwargs) + self.interval_length = interval_length diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/resource.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/resource.py new file mode 100644 index 000000000000..5dd7d481c685 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/resource.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """The Resource model definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/resource_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/resource_py3.py new file mode 100644 index 000000000000..2f3702caf609 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/resource_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """The Resource model definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = location + self.tags = tags diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rollback_status_info.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rollback_status_info.py new file mode 100644 index 000000000000..eeb450eb3c45 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rollback_status_info.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RollbackStatusInfo(Model): + """Information about rollback on failed VM instances after a OS Upgrade + operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar successfully_rolledback_instance_count: The number of instances + which have been successfully rolled back. + :vartype successfully_rolledback_instance_count: int + :ivar failed_rolledback_instance_count: The number of instances which + failed to rollback. + :vartype failed_rolledback_instance_count: int + :ivar rollback_error: Error details if OS rollback failed. + :vartype rollback_error: ~azure.mgmt.compute.v2018_10_01.models.ApiError + """ + + _validation = { + 'successfully_rolledback_instance_count': {'readonly': True}, + 'failed_rolledback_instance_count': {'readonly': True}, + 'rollback_error': {'readonly': True}, + } + + _attribute_map = { + 'successfully_rolledback_instance_count': {'key': 'successfullyRolledbackInstanceCount', 'type': 'int'}, + 'failed_rolledback_instance_count': {'key': 'failedRolledbackInstanceCount', 'type': 'int'}, + 'rollback_error': {'key': 'rollbackError', 'type': 'ApiError'}, + } + + def __init__(self, **kwargs): + super(RollbackStatusInfo, self).__init__(**kwargs) + self.successfully_rolledback_instance_count = None + self.failed_rolledback_instance_count = None + self.rollback_error = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rollback_status_info_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rollback_status_info_py3.py new file mode 100644 index 000000000000..df2ff74aec66 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rollback_status_info_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RollbackStatusInfo(Model): + """Information about rollback on failed VM instances after a OS Upgrade + operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar successfully_rolledback_instance_count: The number of instances + which have been successfully rolled back. + :vartype successfully_rolledback_instance_count: int + :ivar failed_rolledback_instance_count: The number of instances which + failed to rollback. + :vartype failed_rolledback_instance_count: int + :ivar rollback_error: Error details if OS rollback failed. + :vartype rollback_error: ~azure.mgmt.compute.v2018_10_01.models.ApiError + """ + + _validation = { + 'successfully_rolledback_instance_count': {'readonly': True}, + 'failed_rolledback_instance_count': {'readonly': True}, + 'rollback_error': {'readonly': True}, + } + + _attribute_map = { + 'successfully_rolledback_instance_count': {'key': 'successfullyRolledbackInstanceCount', 'type': 'int'}, + 'failed_rolledback_instance_count': {'key': 'failedRolledbackInstanceCount', 'type': 'int'}, + 'rollback_error': {'key': 'rollbackError', 'type': 'ApiError'}, + } + + def __init__(self, **kwargs) -> None: + super(RollbackStatusInfo, self).__init__(**kwargs) + self.successfully_rolledback_instance_count = None + self.failed_rolledback_instance_count = None + self.rollback_error = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_policy.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_policy.py new file mode 100644 index 000000000000..1eecaa5e2e65 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_policy.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RollingUpgradePolicy(Model): + """The configuration parameters used while performing a rolling upgrade. + + :param max_batch_instance_percent: The maximum percent of total virtual + machine instances that will be upgraded simultaneously by the rolling + upgrade in one batch. As this is a maximum, unhealthy instances in + previous or future batches can cause the percentage of instances in a + batch to decrease to ensure higher reliability. The default value for this + parameter is 20%. + :type max_batch_instance_percent: int + :param max_unhealthy_instance_percent: The maximum percentage of the total + virtual machine instances in the scale set that can be simultaneously + unhealthy, either as a result of being upgraded, or by being found in an + unhealthy state by the virtual machine health checks before the rolling + upgrade aborts. This constraint will be checked prior to starting any + batch. The default value for this parameter is 20%. + :type max_unhealthy_instance_percent: int + :param max_unhealthy_upgraded_instance_percent: The maximum percentage of + upgraded virtual machine instances that can be found to be in an unhealthy + state. This check will happen after each batch is upgraded. If this + percentage is ever exceeded, the rolling update aborts. The default value + for this parameter is 20%. + :type max_unhealthy_upgraded_instance_percent: int + :param pause_time_between_batches: The wait time between completing the + update for all virtual machines in one batch and starting the next batch. + The time duration should be specified in ISO 8601 format. The default + value is 0 seconds (PT0S). + :type pause_time_between_batches: str + """ + + _validation = { + 'max_batch_instance_percent': {'maximum': 100, 'minimum': 5}, + 'max_unhealthy_instance_percent': {'maximum': 100, 'minimum': 5}, + 'max_unhealthy_upgraded_instance_percent': {'maximum': 100, 'minimum': 0}, + } + + _attribute_map = { + 'max_batch_instance_percent': {'key': 'maxBatchInstancePercent', 'type': 'int'}, + 'max_unhealthy_instance_percent': {'key': 'maxUnhealthyInstancePercent', 'type': 'int'}, + 'max_unhealthy_upgraded_instance_percent': {'key': 'maxUnhealthyUpgradedInstancePercent', 'type': 'int'}, + 'pause_time_between_batches': {'key': 'pauseTimeBetweenBatches', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RollingUpgradePolicy, self).__init__(**kwargs) + self.max_batch_instance_percent = kwargs.get('max_batch_instance_percent', None) + self.max_unhealthy_instance_percent = kwargs.get('max_unhealthy_instance_percent', None) + self.max_unhealthy_upgraded_instance_percent = kwargs.get('max_unhealthy_upgraded_instance_percent', None) + self.pause_time_between_batches = kwargs.get('pause_time_between_batches', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_policy_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_policy_py3.py new file mode 100644 index 000000000000..e698a382f112 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_policy_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RollingUpgradePolicy(Model): + """The configuration parameters used while performing a rolling upgrade. + + :param max_batch_instance_percent: The maximum percent of total virtual + machine instances that will be upgraded simultaneously by the rolling + upgrade in one batch. As this is a maximum, unhealthy instances in + previous or future batches can cause the percentage of instances in a + batch to decrease to ensure higher reliability. The default value for this + parameter is 20%. + :type max_batch_instance_percent: int + :param max_unhealthy_instance_percent: The maximum percentage of the total + virtual machine instances in the scale set that can be simultaneously + unhealthy, either as a result of being upgraded, or by being found in an + unhealthy state by the virtual machine health checks before the rolling + upgrade aborts. This constraint will be checked prior to starting any + batch. The default value for this parameter is 20%. + :type max_unhealthy_instance_percent: int + :param max_unhealthy_upgraded_instance_percent: The maximum percentage of + upgraded virtual machine instances that can be found to be in an unhealthy + state. This check will happen after each batch is upgraded. If this + percentage is ever exceeded, the rolling update aborts. The default value + for this parameter is 20%. + :type max_unhealthy_upgraded_instance_percent: int + :param pause_time_between_batches: The wait time between completing the + update for all virtual machines in one batch and starting the next batch. + The time duration should be specified in ISO 8601 format. The default + value is 0 seconds (PT0S). + :type pause_time_between_batches: str + """ + + _validation = { + 'max_batch_instance_percent': {'maximum': 100, 'minimum': 5}, + 'max_unhealthy_instance_percent': {'maximum': 100, 'minimum': 5}, + 'max_unhealthy_upgraded_instance_percent': {'maximum': 100, 'minimum': 0}, + } + + _attribute_map = { + 'max_batch_instance_percent': {'key': 'maxBatchInstancePercent', 'type': 'int'}, + 'max_unhealthy_instance_percent': {'key': 'maxUnhealthyInstancePercent', 'type': 'int'}, + 'max_unhealthy_upgraded_instance_percent': {'key': 'maxUnhealthyUpgradedInstancePercent', 'type': 'int'}, + 'pause_time_between_batches': {'key': 'pauseTimeBetweenBatches', 'type': 'str'}, + } + + def __init__(self, *, max_batch_instance_percent: int=None, max_unhealthy_instance_percent: int=None, max_unhealthy_upgraded_instance_percent: int=None, pause_time_between_batches: str=None, **kwargs) -> None: + super(RollingUpgradePolicy, self).__init__(**kwargs) + self.max_batch_instance_percent = max_batch_instance_percent + self.max_unhealthy_instance_percent = max_unhealthy_instance_percent + self.max_unhealthy_upgraded_instance_percent = max_unhealthy_upgraded_instance_percent + self.pause_time_between_batches = pause_time_between_batches diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_progress_info.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_progress_info.py new file mode 100644 index 000000000000..87e40590e275 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_progress_info.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RollingUpgradeProgressInfo(Model): + """Information about the number of virtual machine instances in each upgrade + state. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar successful_instance_count: The number of instances that have been + successfully upgraded. + :vartype successful_instance_count: int + :ivar failed_instance_count: The number of instances that have failed to + be upgraded successfully. + :vartype failed_instance_count: int + :ivar in_progress_instance_count: The number of instances that are + currently being upgraded. + :vartype in_progress_instance_count: int + :ivar pending_instance_count: The number of instances that have not yet + begun to be upgraded. + :vartype pending_instance_count: int + """ + + _validation = { + 'successful_instance_count': {'readonly': True}, + 'failed_instance_count': {'readonly': True}, + 'in_progress_instance_count': {'readonly': True}, + 'pending_instance_count': {'readonly': True}, + } + + _attribute_map = { + 'successful_instance_count': {'key': 'successfulInstanceCount', 'type': 'int'}, + 'failed_instance_count': {'key': 'failedInstanceCount', 'type': 'int'}, + 'in_progress_instance_count': {'key': 'inProgressInstanceCount', 'type': 'int'}, + 'pending_instance_count': {'key': 'pendingInstanceCount', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(RollingUpgradeProgressInfo, self).__init__(**kwargs) + self.successful_instance_count = None + self.failed_instance_count = None + self.in_progress_instance_count = None + self.pending_instance_count = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_progress_info_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_progress_info_py3.py new file mode 100644 index 000000000000..060abc3063b4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_progress_info_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RollingUpgradeProgressInfo(Model): + """Information about the number of virtual machine instances in each upgrade + state. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar successful_instance_count: The number of instances that have been + successfully upgraded. + :vartype successful_instance_count: int + :ivar failed_instance_count: The number of instances that have failed to + be upgraded successfully. + :vartype failed_instance_count: int + :ivar in_progress_instance_count: The number of instances that are + currently being upgraded. + :vartype in_progress_instance_count: int + :ivar pending_instance_count: The number of instances that have not yet + begun to be upgraded. + :vartype pending_instance_count: int + """ + + _validation = { + 'successful_instance_count': {'readonly': True}, + 'failed_instance_count': {'readonly': True}, + 'in_progress_instance_count': {'readonly': True}, + 'pending_instance_count': {'readonly': True}, + } + + _attribute_map = { + 'successful_instance_count': {'key': 'successfulInstanceCount', 'type': 'int'}, + 'failed_instance_count': {'key': 'failedInstanceCount', 'type': 'int'}, + 'in_progress_instance_count': {'key': 'inProgressInstanceCount', 'type': 'int'}, + 'pending_instance_count': {'key': 'pendingInstanceCount', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(RollingUpgradeProgressInfo, self).__init__(**kwargs) + self.successful_instance_count = None + self.failed_instance_count = None + self.in_progress_instance_count = None + self.pending_instance_count = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_running_status.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_running_status.py new file mode 100644 index 000000000000..3421e9bad3f5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_running_status.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RollingUpgradeRunningStatus(Model): + """Information about the current running state of the overall upgrade. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: Code indicating the current status of the upgrade. Possible + values include: 'RollingForward', 'Cancelled', 'Completed', 'Faulted' + :vartype code: str or + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeStatusCode + :ivar start_time: Start time of the upgrade. + :vartype start_time: datetime + :ivar last_action: The last action performed on the rolling upgrade. + Possible values include: 'Start', 'Cancel' + :vartype last_action: str or + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeActionType + :ivar last_action_time: Last action time of the upgrade. + :vartype last_action_time: datetime + """ + + _validation = { + 'code': {'readonly': True}, + 'start_time': {'readonly': True}, + 'last_action': {'readonly': True}, + 'last_action_time': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'RollingUpgradeStatusCode'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_action': {'key': 'lastAction', 'type': 'RollingUpgradeActionType'}, + 'last_action_time': {'key': 'lastActionTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(RollingUpgradeRunningStatus, self).__init__(**kwargs) + self.code = None + self.start_time = None + self.last_action = None + self.last_action_time = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_running_status_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_running_status_py3.py new file mode 100644 index 000000000000..20fad17e69e8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_running_status_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RollingUpgradeRunningStatus(Model): + """Information about the current running state of the overall upgrade. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: Code indicating the current status of the upgrade. Possible + values include: 'RollingForward', 'Cancelled', 'Completed', 'Faulted' + :vartype code: str or + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeStatusCode + :ivar start_time: Start time of the upgrade. + :vartype start_time: datetime + :ivar last_action: The last action performed on the rolling upgrade. + Possible values include: 'Start', 'Cancel' + :vartype last_action: str or + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeActionType + :ivar last_action_time: Last action time of the upgrade. + :vartype last_action_time: datetime + """ + + _validation = { + 'code': {'readonly': True}, + 'start_time': {'readonly': True}, + 'last_action': {'readonly': True}, + 'last_action_time': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'RollingUpgradeStatusCode'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_action': {'key': 'lastAction', 'type': 'RollingUpgradeActionType'}, + 'last_action_time': {'key': 'lastActionTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs) -> None: + super(RollingUpgradeRunningStatus, self).__init__(**kwargs) + self.code = None + self.start_time = None + self.last_action = None + self.last_action_time = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_status_info.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_status_info.py new file mode 100644 index 000000000000..e4f4c08df0a7 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_status_info.py @@ -0,0 +1,76 @@ +# 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 .resource import Resource + + +class RollingUpgradeStatusInfo(Resource): + """The status of the latest virtual machine scale set rolling upgrade. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar policy: The rolling upgrade policies applied for this upgrade. + :vartype policy: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradePolicy + :ivar running_status: Information about the current running state of the + overall upgrade. + :vartype running_status: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeRunningStatus + :ivar progress: Information about the number of virtual machine instances + in each upgrade state. + :vartype progress: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeProgressInfo + :ivar error: Error details for this upgrade, if there are any. + :vartype error: ~azure.mgmt.compute.v2018_10_01.models.ApiError + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'policy': {'readonly': True}, + 'running_status': {'readonly': True}, + 'progress': {'readonly': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'policy': {'key': 'properties.policy', 'type': 'RollingUpgradePolicy'}, + 'running_status': {'key': 'properties.runningStatus', 'type': 'RollingUpgradeRunningStatus'}, + 'progress': {'key': 'properties.progress', 'type': 'RollingUpgradeProgressInfo'}, + 'error': {'key': 'properties.error', 'type': 'ApiError'}, + } + + def __init__(self, **kwargs): + super(RollingUpgradeStatusInfo, self).__init__(**kwargs) + self.policy = None + self.running_status = None + self.progress = None + self.error = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_status_info_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_status_info_py3.py new file mode 100644 index 000000000000..3ef830980bd0 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/rolling_upgrade_status_info_py3.py @@ -0,0 +1,76 @@ +# 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 .resource_py3 import Resource + + +class RollingUpgradeStatusInfo(Resource): + """The status of the latest virtual machine scale set rolling upgrade. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar policy: The rolling upgrade policies applied for this upgrade. + :vartype policy: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradePolicy + :ivar running_status: Information about the current running state of the + overall upgrade. + :vartype running_status: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeRunningStatus + :ivar progress: Information about the number of virtual machine instances + in each upgrade state. + :vartype progress: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeProgressInfo + :ivar error: Error details for this upgrade, if there are any. + :vartype error: ~azure.mgmt.compute.v2018_10_01.models.ApiError + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'policy': {'readonly': True}, + 'running_status': {'readonly': True}, + 'progress': {'readonly': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'policy': {'key': 'properties.policy', 'type': 'RollingUpgradePolicy'}, + 'running_status': {'key': 'properties.runningStatus', 'type': 'RollingUpgradeRunningStatus'}, + 'progress': {'key': 'properties.progress', 'type': 'RollingUpgradeProgressInfo'}, + 'error': {'key': 'properties.error', 'type': 'ApiError'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(RollingUpgradeStatusInfo, self).__init__(location=location, tags=tags, **kwargs) + self.policy = None + self.running_status = None + self.progress = None + self.error = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document.py new file mode 100644 index 000000000000..9acf4c9f1065 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document.py @@ -0,0 +1,61 @@ +# 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 .run_command_document_base import RunCommandDocumentBase + + +class RunCommandDocument(RunCommandDocumentBase): + """Describes the properties of a Run Command. + + All required parameters must be populated in order to send to Azure. + + :param schema: Required. The VM run command schema. + :type schema: str + :param id: Required. The VM run command id. + :type id: str + :param os_type: Required. The Operating System type. Possible values + include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param label: Required. The VM run command label. + :type label: str + :param description: Required. The VM run command description. + :type description: str + :param script: Required. The script to be executed. + :type script: list[str] + :param parameters: The parameters used by the script. + :type parameters: + list[~azure.mgmt.compute.v2018_10_01.models.RunCommandParameterDefinition] + """ + + _validation = { + 'schema': {'required': True}, + 'id': {'required': True}, + 'os_type': {'required': True}, + 'label': {'required': True}, + 'description': {'required': True}, + 'script': {'required': True}, + } + + _attribute_map = { + 'schema': {'key': '$schema', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'label': {'key': 'label', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'script': {'key': 'script', 'type': '[str]'}, + 'parameters': {'key': 'parameters', 'type': '[RunCommandParameterDefinition]'}, + } + + def __init__(self, **kwargs): + super(RunCommandDocument, self).__init__(**kwargs) + self.script = kwargs.get('script', None) + self.parameters = kwargs.get('parameters', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base.py new file mode 100644 index 000000000000..10850d805bdb --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandDocumentBase(Model): + """Describes the properties of a Run Command metadata. + + All required parameters must be populated in order to send to Azure. + + :param schema: Required. The VM run command schema. + :type schema: str + :param id: Required. The VM run command id. + :type id: str + :param os_type: Required. The Operating System type. Possible values + include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param label: Required. The VM run command label. + :type label: str + :param description: Required. The VM run command description. + :type description: str + """ + + _validation = { + 'schema': {'required': True}, + 'id': {'required': True}, + 'os_type': {'required': True}, + 'label': {'required': True}, + 'description': {'required': True}, + } + + _attribute_map = { + 'schema': {'key': '$schema', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'label': {'key': 'label', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RunCommandDocumentBase, self).__init__(**kwargs) + self.schema = kwargs.get('schema', None) + self.id = kwargs.get('id', None) + self.os_type = kwargs.get('os_type', None) + self.label = kwargs.get('label', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base_paged.py new file mode 100644 index 000000000000..e7326920a725 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RunCommandDocumentBasePaged(Paged): + """ + A paging container for iterating over a list of :class:`RunCommandDocumentBase ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RunCommandDocumentBase]'} + } + + def __init__(self, *args, **kwargs): + + super(RunCommandDocumentBasePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base_py3.py new file mode 100644 index 000000000000..5ebfc4b1047d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_base_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandDocumentBase(Model): + """Describes the properties of a Run Command metadata. + + All required parameters must be populated in order to send to Azure. + + :param schema: Required. The VM run command schema. + :type schema: str + :param id: Required. The VM run command id. + :type id: str + :param os_type: Required. The Operating System type. Possible values + include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param label: Required. The VM run command label. + :type label: str + :param description: Required. The VM run command description. + :type description: str + """ + + _validation = { + 'schema': {'required': True}, + 'id': {'required': True}, + 'os_type': {'required': True}, + 'label': {'required': True}, + 'description': {'required': True}, + } + + _attribute_map = { + 'schema': {'key': '$schema', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'label': {'key': 'label', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, schema: str, id: str, os_type, label: str, description: str, **kwargs) -> None: + super(RunCommandDocumentBase, self).__init__(**kwargs) + self.schema = schema + self.id = id + self.os_type = os_type + self.label = label + self.description = description diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_py3.py new file mode 100644 index 000000000000..542fe68b0822 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_document_py3.py @@ -0,0 +1,61 @@ +# 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 .run_command_document_base_py3 import RunCommandDocumentBase + + +class RunCommandDocument(RunCommandDocumentBase): + """Describes the properties of a Run Command. + + All required parameters must be populated in order to send to Azure. + + :param schema: Required. The VM run command schema. + :type schema: str + :param id: Required. The VM run command id. + :type id: str + :param os_type: Required. The Operating System type. Possible values + include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param label: Required. The VM run command label. + :type label: str + :param description: Required. The VM run command description. + :type description: str + :param script: Required. The script to be executed. + :type script: list[str] + :param parameters: The parameters used by the script. + :type parameters: + list[~azure.mgmt.compute.v2018_10_01.models.RunCommandParameterDefinition] + """ + + _validation = { + 'schema': {'required': True}, + 'id': {'required': True}, + 'os_type': {'required': True}, + 'label': {'required': True}, + 'description': {'required': True}, + 'script': {'required': True}, + } + + _attribute_map = { + 'schema': {'key': '$schema', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'label': {'key': 'label', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'script': {'key': 'script', 'type': '[str]'}, + 'parameters': {'key': 'parameters', 'type': '[RunCommandParameterDefinition]'}, + } + + def __init__(self, *, schema: str, id: str, os_type, label: str, description: str, script, parameters=None, **kwargs) -> None: + super(RunCommandDocument, self).__init__(schema=schema, id=id, os_type=os_type, label=label, description=description, **kwargs) + self.script = script + self.parameters = parameters diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input.py new file mode 100644 index 000000000000..046e30e1c051 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandInput(Model): + """Capture Virtual Machine parameters. + + All required parameters must be populated in order to send to Azure. + + :param command_id: Required. The run command id. + :type command_id: str + :param script: Optional. The script to be executed. When this value is + given, the given script will override the default script of the command. + :type script: list[str] + :param parameters: The run command parameters. + :type parameters: + list[~azure.mgmt.compute.v2018_10_01.models.RunCommandInputParameter] + """ + + _validation = { + 'command_id': {'required': True}, + } + + _attribute_map = { + 'command_id': {'key': 'commandId', 'type': 'str'}, + 'script': {'key': 'script', 'type': '[str]'}, + 'parameters': {'key': 'parameters', 'type': '[RunCommandInputParameter]'}, + } + + def __init__(self, **kwargs): + super(RunCommandInput, self).__init__(**kwargs) + self.command_id = kwargs.get('command_id', None) + self.script = kwargs.get('script', None) + self.parameters = kwargs.get('parameters', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_parameter.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_parameter.py new file mode 100644 index 000000000000..cd76ad81bfa2 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_parameter.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandInputParameter(Model): + """Describes the properties of a run command parameter. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The run command parameter name. + :type name: str + :param value: Required. The run command parameter value. + :type value: str + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RunCommandInputParameter, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_parameter_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_parameter_py3.py new file mode 100644 index 000000000000..6013f038a1c3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_parameter_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandInputParameter(Model): + """Describes the properties of a run command parameter. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The run command parameter name. + :type name: str + :param value: Required. The run command parameter value. + :type value: str + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, name: str, value: str, **kwargs) -> None: + super(RunCommandInputParameter, self).__init__(**kwargs) + self.name = name + self.value = value diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_py3.py new file mode 100644 index 000000000000..6de9afe96dab --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_input_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandInput(Model): + """Capture Virtual Machine parameters. + + All required parameters must be populated in order to send to Azure. + + :param command_id: Required. The run command id. + :type command_id: str + :param script: Optional. The script to be executed. When this value is + given, the given script will override the default script of the command. + :type script: list[str] + :param parameters: The run command parameters. + :type parameters: + list[~azure.mgmt.compute.v2018_10_01.models.RunCommandInputParameter] + """ + + _validation = { + 'command_id': {'required': True}, + } + + _attribute_map = { + 'command_id': {'key': 'commandId', 'type': 'str'}, + 'script': {'key': 'script', 'type': '[str]'}, + 'parameters': {'key': 'parameters', 'type': '[RunCommandInputParameter]'}, + } + + def __init__(self, *, command_id: str, script=None, parameters=None, **kwargs) -> None: + super(RunCommandInput, self).__init__(**kwargs) + self.command_id = command_id + self.script = script + self.parameters = parameters diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_parameter_definition.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_parameter_definition.py new file mode 100644 index 000000000000..e09f774d8241 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_parameter_definition.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandParameterDefinition(Model): + """Describes the properties of a run command parameter. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The run command parameter name. + :type name: str + :param type: Required. The run command parameter type. + :type type: str + :param default_value: The run command parameter default value. + :type default_value: str + :param required: The run command parameter required. Default value: False + . + :type required: bool + """ + + _validation = { + 'name': {'required': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'default_value': {'key': 'defaultValue', 'type': 'str'}, + 'required': {'key': 'required', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(RunCommandParameterDefinition, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) + self.default_value = kwargs.get('default_value', None) + self.required = kwargs.get('required', False) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_parameter_definition_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_parameter_definition_py3.py new file mode 100644 index 000000000000..e5fbc708f965 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_parameter_definition_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandParameterDefinition(Model): + """Describes the properties of a run command parameter. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The run command parameter name. + :type name: str + :param type: Required. The run command parameter type. + :type type: str + :param default_value: The run command parameter default value. + :type default_value: str + :param required: The run command parameter required. Default value: False + . + :type required: bool + """ + + _validation = { + 'name': {'required': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'default_value': {'key': 'defaultValue', 'type': 'str'}, + 'required': {'key': 'required', 'type': 'bool'}, + } + + def __init__(self, *, name: str, type: str, default_value: str=None, required: bool=False, **kwargs) -> None: + super(RunCommandParameterDefinition, self).__init__(**kwargs) + self.name = name + self.type = type + self.default_value = default_value + self.required = required diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_result.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_result.py new file mode 100644 index 000000000000..7fe68e1ee376 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_result.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandResult(Model): + """RunCommandResult. + + :param value: Run command operation response. + :type value: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, **kwargs): + super(RunCommandResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_result_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_result_py3.py new file mode 100644 index 000000000000..4bf16cadc70e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/run_command_result_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunCommandResult(Model): + """RunCommandResult. + + :param value: Run command operation response. + :type value: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(RunCommandResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sku.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sku.py new file mode 100644 index 000000000000..5c07709435e0 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sku.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """Describes a virtual machine scale set sku. + + :param name: The sku name. + :type name: str + :param tier: Specifies the tier of virtual machines in a scale set.

    Possible Values:

    **Standard**

    **Basic** + :type tier: str + :param capacity: Specifies the number of virtual machines in the scale + set. + :type capacity: long + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(Sku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sku_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sku_py3.py new file mode 100644 index 000000000000..f6bc74afaadc --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sku_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """Describes a virtual machine scale set sku. + + :param name: The sku name. + :type name: str + :param tier: Specifies the tier of virtual machines in a scale set.

    Possible Values:

    **Standard**

    **Basic** + :type tier: str + :param capacity: Specifies the number of virtual machines in the scale + set. + :type capacity: long + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'long'}, + } + + def __init__(self, *, name: str=None, tier: str=None, capacity: int=None, **kwargs) -> None: + super(Sku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_configuration.py new file mode 100644 index 000000000000..e7bae86b788f --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_configuration.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SshConfiguration(Model): + """SSH configuration for Linux based VMs running on Azure. + + :param public_keys: The list of SSH public keys used to authenticate with + linux based VMs. + :type public_keys: + list[~azure.mgmt.compute.v2018_10_01.models.SshPublicKey] + """ + + _attribute_map = { + 'public_keys': {'key': 'publicKeys', 'type': '[SshPublicKey]'}, + } + + def __init__(self, **kwargs): + super(SshConfiguration, self).__init__(**kwargs) + self.public_keys = kwargs.get('public_keys', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_configuration_py3.py new file mode 100644 index 000000000000..111c3078a072 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_configuration_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SshConfiguration(Model): + """SSH configuration for Linux based VMs running on Azure. + + :param public_keys: The list of SSH public keys used to authenticate with + linux based VMs. + :type public_keys: + list[~azure.mgmt.compute.v2018_10_01.models.SshPublicKey] + """ + + _attribute_map = { + 'public_keys': {'key': 'publicKeys', 'type': '[SshPublicKey]'}, + } + + def __init__(self, *, public_keys=None, **kwargs) -> None: + super(SshConfiguration, self).__init__(**kwargs) + self.public_keys = public_keys diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_public_key.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_public_key.py new file mode 100644 index 000000000000..122e0d3b9fdd --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_public_key.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SshPublicKey(Model): + """Contains information about SSH certificate public key and the path on the + Linux VM where the public key is placed. + + :param path: Specifies the full path on the created VM where ssh public + key is stored. If the file already exists, the specified key is appended + to the file. Example: /home/user/.ssh/authorized_keys + :type path: str + :param key_data: SSH public key certificate used to authenticate with the + VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa + format.

    For creating ssh keys, see [Create SSH keys on Linux and + Mac for Linux VMs in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-mac-create-ssh-keys?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). + :type key_data: str + """ + + _attribute_map = { + 'path': {'key': 'path', 'type': 'str'}, + 'key_data': {'key': 'keyData', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SshPublicKey, self).__init__(**kwargs) + self.path = kwargs.get('path', None) + self.key_data = kwargs.get('key_data', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_public_key_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_public_key_py3.py new file mode 100644 index 000000000000..b16ee085b36b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/ssh_public_key_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SshPublicKey(Model): + """Contains information about SSH certificate public key and the path on the + Linux VM where the public key is placed. + + :param path: Specifies the full path on the created VM where ssh public + key is stored. If the file already exists, the specified key is appended + to the file. Example: /home/user/.ssh/authorized_keys + :type path: str + :param key_data: SSH public key certificate used to authenticate with the + VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa + format.

    For creating ssh keys, see [Create SSH keys on Linux and + Mac for Linux VMs in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-mac-create-ssh-keys?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). + :type key_data: str + """ + + _attribute_map = { + 'path': {'key': 'path', 'type': 'str'}, + 'key_data': {'key': 'keyData', 'type': 'str'}, + } + + def __init__(self, *, path: str=None, key_data: str=None, **kwargs) -> None: + super(SshPublicKey, self).__init__(**kwargs) + self.path = path + self.key_data = key_data diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/storage_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/storage_profile.py new file mode 100644 index 000000000000..f0597c929ed8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/storage_profile.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """Specifies the storage settings for the virtual machine disks. + + :param image_reference: Specifies information about the image to use. You + can specify information about platform images, marketplace images, or + virtual machine images. This element is required when you want to use a + platform image, marketplace image, or virtual machine image, but is not + used in other creation operations. + :type image_reference: + ~azure.mgmt.compute.v2018_10_01.models.ImageReference + :param os_disk: Specifies information about the operating system disk used + by the virtual machine.

    For more information about disks, see + [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type os_disk: ~azure.mgmt.compute.v2018_10_01.models.OSDisk + :param data_disks: Specifies the parameters that are used to add a data + disk to a virtual machine.

    For more information about disks, see + [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type data_disks: list[~azure.mgmt.compute.v2018_10_01.models.DataDisk] + """ + + _attribute_map = { + 'image_reference': {'key': 'imageReference', 'type': 'ImageReference'}, + 'os_disk': {'key': 'osDisk', 'type': 'OSDisk'}, + 'data_disks': {'key': 'dataDisks', 'type': '[DataDisk]'}, + } + + def __init__(self, **kwargs): + super(StorageProfile, self).__init__(**kwargs) + self.image_reference = kwargs.get('image_reference', None) + self.os_disk = kwargs.get('os_disk', None) + self.data_disks = kwargs.get('data_disks', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/storage_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/storage_profile_py3.py new file mode 100644 index 000000000000..e3b5222965bb --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/storage_profile_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """Specifies the storage settings for the virtual machine disks. + + :param image_reference: Specifies information about the image to use. You + can specify information about platform images, marketplace images, or + virtual machine images. This element is required when you want to use a + platform image, marketplace image, or virtual machine image, but is not + used in other creation operations. + :type image_reference: + ~azure.mgmt.compute.v2018_10_01.models.ImageReference + :param os_disk: Specifies information about the operating system disk used + by the virtual machine.

    For more information about disks, see + [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type os_disk: ~azure.mgmt.compute.v2018_10_01.models.OSDisk + :param data_disks: Specifies the parameters that are used to add a data + disk to a virtual machine.

    For more information about disks, see + [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type data_disks: list[~azure.mgmt.compute.v2018_10_01.models.DataDisk] + """ + + _attribute_map = { + 'image_reference': {'key': 'imageReference', 'type': 'ImageReference'}, + 'os_disk': {'key': 'osDisk', 'type': 'OSDisk'}, + 'data_disks': {'key': 'dataDisks', 'type': '[DataDisk]'}, + } + + def __init__(self, *, image_reference=None, os_disk=None, data_disks=None, **kwargs) -> None: + super(StorageProfile, self).__init__(**kwargs) + self.image_reference = image_reference + self.os_disk = os_disk + self.data_disks = data_disks diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource.py new file mode 100644 index 000000000000..11e092cc6ff5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResource(Model): + """SubResource. + + :param id: Resource Id + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SubResource, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_py3.py new file mode 100644 index 000000000000..29e5afee38f9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResource(Model): + """SubResource. + + :param id: Resource Id + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(SubResource, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_read_only.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_read_only.py new file mode 100644 index 000000000000..4a0ec466c0d4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_read_only.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResourceReadOnly(Model): + """SubResourceReadOnly. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SubResourceReadOnly, self).__init__(**kwargs) + self.id = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_read_only_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_read_only_py3.py new file mode 100644 index 000000000000..cb918e9a2ac6 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/sub_resource_read_only_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResourceReadOnly(Model): + """SubResourceReadOnly. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(SubResourceReadOnly, self).__init__(**kwargs) + self.id = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/throttled_requests_input.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/throttled_requests_input.py new file mode 100644 index 000000000000..5eac2a5540ac --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/throttled_requests_input.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .log_analytics_input_base import LogAnalyticsInputBase + + +class ThrottledRequestsInput(LogAnalyticsInputBase): + """Api request input for LogAnalytics getThrottledRequests Api. + + All required parameters must be populated in order to send to Azure. + + :param blob_container_sas_uri: Required. SAS Uri of the logging blob + container to which LogAnalytics Api writes output logs to. + :type blob_container_sas_uri: str + :param from_time: Required. From time of the query + :type from_time: datetime + :param to_time: Required. To time of the query + :type to_time: datetime + :param group_by_throttle_policy: Group query result by Throttle Policy + applied. + :type group_by_throttle_policy: bool + :param group_by_operation_name: Group query result by by Operation Name. + :type group_by_operation_name: bool + :param group_by_resource_name: Group query result by Resource Name. + :type group_by_resource_name: bool + """ + + _validation = { + 'blob_container_sas_uri': {'required': True}, + 'from_time': {'required': True}, + 'to_time': {'required': True}, + } + + _attribute_map = { + 'blob_container_sas_uri': {'key': 'blobContainerSasUri', 'type': 'str'}, + 'from_time': {'key': 'fromTime', 'type': 'iso-8601'}, + 'to_time': {'key': 'toTime', 'type': 'iso-8601'}, + 'group_by_throttle_policy': {'key': 'groupByThrottlePolicy', 'type': 'bool'}, + 'group_by_operation_name': {'key': 'groupByOperationName', 'type': 'bool'}, + 'group_by_resource_name': {'key': 'groupByResourceName', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ThrottledRequestsInput, self).__init__(**kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/throttled_requests_input_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/throttled_requests_input_py3.py new file mode 100644 index 000000000000..025900705375 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/throttled_requests_input_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .log_analytics_input_base_py3 import LogAnalyticsInputBase + + +class ThrottledRequestsInput(LogAnalyticsInputBase): + """Api request input for LogAnalytics getThrottledRequests Api. + + All required parameters must be populated in order to send to Azure. + + :param blob_container_sas_uri: Required. SAS Uri of the logging blob + container to which LogAnalytics Api writes output logs to. + :type blob_container_sas_uri: str + :param from_time: Required. From time of the query + :type from_time: datetime + :param to_time: Required. To time of the query + :type to_time: datetime + :param group_by_throttle_policy: Group query result by Throttle Policy + applied. + :type group_by_throttle_policy: bool + :param group_by_operation_name: Group query result by by Operation Name. + :type group_by_operation_name: bool + :param group_by_resource_name: Group query result by Resource Name. + :type group_by_resource_name: bool + """ + + _validation = { + 'blob_container_sas_uri': {'required': True}, + 'from_time': {'required': True}, + 'to_time': {'required': True}, + } + + _attribute_map = { + 'blob_container_sas_uri': {'key': 'blobContainerSasUri', 'type': 'str'}, + 'from_time': {'key': 'fromTime', 'type': 'iso-8601'}, + 'to_time': {'key': 'toTime', 'type': 'iso-8601'}, + 'group_by_throttle_policy': {'key': 'groupByThrottlePolicy', 'type': 'bool'}, + 'group_by_operation_name': {'key': 'groupByOperationName', 'type': 'bool'}, + 'group_by_resource_name': {'key': 'groupByResourceName', 'type': 'bool'}, + } + + def __init__(self, *, blob_container_sas_uri: str, from_time, to_time, group_by_throttle_policy: bool=None, group_by_operation_name: bool=None, group_by_resource_name: bool=None, **kwargs) -> None: + super(ThrottledRequestsInput, self).__init__(blob_container_sas_uri=blob_container_sas_uri, from_time=from_time, to_time=to_time, group_by_throttle_policy=group_by_throttle_policy, group_by_operation_name=group_by_operation_name, group_by_resource_name=group_by_resource_name, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/update_resource.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/update_resource.py new file mode 100644 index 000000000000..b1d2898ff082 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/update_resource.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpdateResource(Model): + """The Update Resource model definition. + + :param tags: Resource tags + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(UpdateResource, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/update_resource_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/update_resource_py3.py new file mode 100644 index 000000000000..c06c17c124d9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/update_resource_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpdateResource(Model): + """The Update Resource model definition. + + :param tags: Resource tags + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(UpdateResource, self).__init__(**kwargs) + self.tags = tags diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info.py new file mode 100644 index 000000000000..1e74afabeca6 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpgradeOperationHistoricalStatusInfo(Model): + """Virtual Machine Scale Set OS Upgrade History operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar properties: Information about the properties of the upgrade + operation. + :vartype properties: + ~azure.mgmt.compute.v2018_10_01.models.UpgradeOperationHistoricalStatusInfoProperties + :ivar type: Resource type + :vartype type: str + :ivar location: Resource location + :vartype location: str + """ + + _validation = { + 'properties': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + } + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'UpgradeOperationHistoricalStatusInfoProperties'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UpgradeOperationHistoricalStatusInfo, self).__init__(**kwargs) + self.properties = None + self.type = None + self.location = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_paged.py new file mode 100644 index 000000000000..20f29bb6d2e5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class UpgradeOperationHistoricalStatusInfoPaged(Paged): + """ + A paging container for iterating over a list of :class:`UpgradeOperationHistoricalStatusInfo ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[UpgradeOperationHistoricalStatusInfo]'} + } + + def __init__(self, *args, **kwargs): + + super(UpgradeOperationHistoricalStatusInfoPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_properties.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_properties.py new file mode 100644 index 000000000000..bf010a02fa9e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_properties.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpgradeOperationHistoricalStatusInfoProperties(Model): + """Describes each OS upgrade on the Virtual Machine Scale Set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar running_status: Information about the overall status of the upgrade + operation. + :vartype running_status: + ~azure.mgmt.compute.v2018_10_01.models.UpgradeOperationHistoryStatus + :ivar progress: Counts of the VM's in each state. + :vartype progress: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeProgressInfo + :ivar error: Error Details for this upgrade if there are any. + :vartype error: ~azure.mgmt.compute.v2018_10_01.models.ApiError + :ivar started_by: Invoker of the Upgrade Operation. Possible values + include: 'Unknown', 'User', 'Platform' + :vartype started_by: str or + ~azure.mgmt.compute.v2018_10_01.models.UpgradeOperationInvoker + :ivar target_image_reference: Image Reference details + :vartype target_image_reference: + ~azure.mgmt.compute.v2018_10_01.models.ImageReference + :ivar rollback_info: Information about OS rollback if performed + :vartype rollback_info: + ~azure.mgmt.compute.v2018_10_01.models.RollbackStatusInfo + """ + + _validation = { + 'running_status': {'readonly': True}, + 'progress': {'readonly': True}, + 'error': {'readonly': True}, + 'started_by': {'readonly': True}, + 'target_image_reference': {'readonly': True}, + 'rollback_info': {'readonly': True}, + } + + _attribute_map = { + 'running_status': {'key': 'runningStatus', 'type': 'UpgradeOperationHistoryStatus'}, + 'progress': {'key': 'progress', 'type': 'RollingUpgradeProgressInfo'}, + 'error': {'key': 'error', 'type': 'ApiError'}, + 'started_by': {'key': 'startedBy', 'type': 'UpgradeOperationInvoker'}, + 'target_image_reference': {'key': 'targetImageReference', 'type': 'ImageReference'}, + 'rollback_info': {'key': 'rollbackInfo', 'type': 'RollbackStatusInfo'}, + } + + def __init__(self, **kwargs): + super(UpgradeOperationHistoricalStatusInfoProperties, self).__init__(**kwargs) + self.running_status = None + self.progress = None + self.error = None + self.started_by = None + self.target_image_reference = None + self.rollback_info = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_properties_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_properties_py3.py new file mode 100644 index 000000000000..ff6b2ff63bf9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_properties_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpgradeOperationHistoricalStatusInfoProperties(Model): + """Describes each OS upgrade on the Virtual Machine Scale Set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar running_status: Information about the overall status of the upgrade + operation. + :vartype running_status: + ~azure.mgmt.compute.v2018_10_01.models.UpgradeOperationHistoryStatus + :ivar progress: Counts of the VM's in each state. + :vartype progress: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeProgressInfo + :ivar error: Error Details for this upgrade if there are any. + :vartype error: ~azure.mgmt.compute.v2018_10_01.models.ApiError + :ivar started_by: Invoker of the Upgrade Operation. Possible values + include: 'Unknown', 'User', 'Platform' + :vartype started_by: str or + ~azure.mgmt.compute.v2018_10_01.models.UpgradeOperationInvoker + :ivar target_image_reference: Image Reference details + :vartype target_image_reference: + ~azure.mgmt.compute.v2018_10_01.models.ImageReference + :ivar rollback_info: Information about OS rollback if performed + :vartype rollback_info: + ~azure.mgmt.compute.v2018_10_01.models.RollbackStatusInfo + """ + + _validation = { + 'running_status': {'readonly': True}, + 'progress': {'readonly': True}, + 'error': {'readonly': True}, + 'started_by': {'readonly': True}, + 'target_image_reference': {'readonly': True}, + 'rollback_info': {'readonly': True}, + } + + _attribute_map = { + 'running_status': {'key': 'runningStatus', 'type': 'UpgradeOperationHistoryStatus'}, + 'progress': {'key': 'progress', 'type': 'RollingUpgradeProgressInfo'}, + 'error': {'key': 'error', 'type': 'ApiError'}, + 'started_by': {'key': 'startedBy', 'type': 'UpgradeOperationInvoker'}, + 'target_image_reference': {'key': 'targetImageReference', 'type': 'ImageReference'}, + 'rollback_info': {'key': 'rollbackInfo', 'type': 'RollbackStatusInfo'}, + } + + def __init__(self, **kwargs) -> None: + super(UpgradeOperationHistoricalStatusInfoProperties, self).__init__(**kwargs) + self.running_status = None + self.progress = None + self.error = None + self.started_by = None + self.target_image_reference = None + self.rollback_info = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_py3.py new file mode 100644 index 000000000000..a2c412671913 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_historical_status_info_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpgradeOperationHistoricalStatusInfo(Model): + """Virtual Machine Scale Set OS Upgrade History operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar properties: Information about the properties of the upgrade + operation. + :vartype properties: + ~azure.mgmt.compute.v2018_10_01.models.UpgradeOperationHistoricalStatusInfoProperties + :ivar type: Resource type + :vartype type: str + :ivar location: Resource location + :vartype location: str + """ + + _validation = { + 'properties': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + } + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'UpgradeOperationHistoricalStatusInfoProperties'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(UpgradeOperationHistoricalStatusInfo, self).__init__(**kwargs) + self.properties = None + self.type = None + self.location = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_history_status.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_history_status.py new file mode 100644 index 000000000000..e1692f63e1ec --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_history_status.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpgradeOperationHistoryStatus(Model): + """Information about the current running state of the overall upgrade. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: Code indicating the current status of the upgrade. Possible + values include: 'RollingForward', 'Cancelled', 'Completed', 'Faulted' + :vartype code: str or ~azure.mgmt.compute.v2018_10_01.models.UpgradeState + :ivar start_time: Start time of the upgrade. + :vartype start_time: datetime + :ivar end_time: End time of the upgrade. + :vartype end_time: datetime + """ + + _validation = { + 'code': {'readonly': True}, + 'start_time': {'readonly': True}, + 'end_time': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'UpgradeState'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(UpgradeOperationHistoryStatus, self).__init__(**kwargs) + self.code = None + self.start_time = None + self.end_time = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_history_status_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_history_status_py3.py new file mode 100644 index 000000000000..a485654a7f07 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_operation_history_status_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpgradeOperationHistoryStatus(Model): + """Information about the current running state of the overall upgrade. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: Code indicating the current status of the upgrade. Possible + values include: 'RollingForward', 'Cancelled', 'Completed', 'Faulted' + :vartype code: str or ~azure.mgmt.compute.v2018_10_01.models.UpgradeState + :ivar start_time: Start time of the upgrade. + :vartype start_time: datetime + :ivar end_time: End time of the upgrade. + :vartype end_time: datetime + """ + + _validation = { + 'code': {'readonly': True}, + 'start_time': {'readonly': True}, + 'end_time': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'UpgradeState'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs) -> None: + super(UpgradeOperationHistoryStatus, self).__init__(**kwargs) + self.code = None + self.start_time = None + self.end_time = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_policy.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_policy.py new file mode 100644 index 000000000000..2b344fc92000 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_policy.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpgradePolicy(Model): + """Describes an upgrade policy - automatic, manual, or rolling. + + :param mode: Specifies the mode of an upgrade to virtual machines in the + scale set.

    Possible values are:

    **Manual** - You + control the application of updates to virtual machines in the scale set. + You do this by using the manualUpgrade action.

    **Automatic** - + All virtual machines in the scale set are automatically updated at the + same time. Possible values include: 'Automatic', 'Manual', 'Rolling' + :type mode: str or ~azure.mgmt.compute.v2018_10_01.models.UpgradeMode + :param rolling_upgrade_policy: The configuration parameters used while + performing a rolling upgrade. + :type rolling_upgrade_policy: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradePolicy + :param automatic_os_upgrade_policy: Configuration parameters used for + performing automatic OS Upgrade. + :type automatic_os_upgrade_policy: + ~azure.mgmt.compute.v2018_10_01.models.AutomaticOSUpgradePolicy + """ + + _attribute_map = { + 'mode': {'key': 'mode', 'type': 'UpgradeMode'}, + 'rolling_upgrade_policy': {'key': 'rollingUpgradePolicy', 'type': 'RollingUpgradePolicy'}, + 'automatic_os_upgrade_policy': {'key': 'automaticOSUpgradePolicy', 'type': 'AutomaticOSUpgradePolicy'}, + } + + def __init__(self, **kwargs): + super(UpgradePolicy, self).__init__(**kwargs) + self.mode = kwargs.get('mode', None) + self.rolling_upgrade_policy = kwargs.get('rolling_upgrade_policy', None) + self.automatic_os_upgrade_policy = kwargs.get('automatic_os_upgrade_policy', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_policy_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_policy_py3.py new file mode 100644 index 000000000000..dfb0346874f5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/upgrade_policy_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpgradePolicy(Model): + """Describes an upgrade policy - automatic, manual, or rolling. + + :param mode: Specifies the mode of an upgrade to virtual machines in the + scale set.

    Possible values are:

    **Manual** - You + control the application of updates to virtual machines in the scale set. + You do this by using the manualUpgrade action.

    **Automatic** - + All virtual machines in the scale set are automatically updated at the + same time. Possible values include: 'Automatic', 'Manual', 'Rolling' + :type mode: str or ~azure.mgmt.compute.v2018_10_01.models.UpgradeMode + :param rolling_upgrade_policy: The configuration parameters used while + performing a rolling upgrade. + :type rolling_upgrade_policy: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradePolicy + :param automatic_os_upgrade_policy: Configuration parameters used for + performing automatic OS Upgrade. + :type automatic_os_upgrade_policy: + ~azure.mgmt.compute.v2018_10_01.models.AutomaticOSUpgradePolicy + """ + + _attribute_map = { + 'mode': {'key': 'mode', 'type': 'UpgradeMode'}, + 'rolling_upgrade_policy': {'key': 'rollingUpgradePolicy', 'type': 'RollingUpgradePolicy'}, + 'automatic_os_upgrade_policy': {'key': 'automaticOSUpgradePolicy', 'type': 'AutomaticOSUpgradePolicy'}, + } + + def __init__(self, *, mode=None, rolling_upgrade_policy=None, automatic_os_upgrade_policy=None, **kwargs) -> None: + super(UpgradePolicy, self).__init__(**kwargs) + self.mode = mode + self.rolling_upgrade_policy = rolling_upgrade_policy + self.automatic_os_upgrade_policy = automatic_os_upgrade_policy diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage.py new file mode 100644 index 000000000000..1eb2b4100c20 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """Describes Compute Resource Usage. + + 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 unit: Required. An enum describing the unit of usage measurement. + Default value: "Count" . + :vartype unit: str + :param current_value: Required. The current usage of the resource. + :type current_value: int + :param limit: Required. The maximum permitted usage of the resource. + :type limit: long + :param name: Required. The name of the type of usage. + :type name: ~azure.mgmt.compute.v2018_10_01.models.UsageName + """ + + _validation = { + 'unit': {'required': True, 'constant': True}, + 'current_value': {'required': True}, + 'limit': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'int'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + unit = "Count" + + def __init__(self, **kwargs): + super(Usage, self).__init__(**kwargs) + self.current_value = kwargs.get('current_value', None) + self.limit = kwargs.get('limit', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_name.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_name.py new file mode 100644 index 000000000000..e2560936493e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_name.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageName(Model): + """The Usage Names. + + :param value: The name of the resource. + :type value: str + :param localized_value: The localized name of the resource. + :type localized_value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UsageName, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.localized_value = kwargs.get('localized_value', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_name_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_name_py3.py new file mode 100644 index 000000000000..ad0b77459f75 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_name_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageName(Model): + """The Usage Names. + + :param value: The name of the resource. + :type value: str + :param localized_value: The localized name of the resource. + :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(UsageName, self).__init__(**kwargs) + self.value = value + self.localized_value = localized_value diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_paged.py new file mode 100644 index 000000000000..9fd8883e112e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class UsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`Usage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Usage]'} + } + + def __init__(self, *args, **kwargs): + + super(UsagePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_py3.py new file mode 100644 index 000000000000..bfb4b0ea9c78 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/usage_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """Describes Compute Resource Usage. + + 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 unit: Required. An enum describing the unit of usage measurement. + Default value: "Count" . + :vartype unit: str + :param current_value: Required. The current usage of the resource. + :type current_value: int + :param limit: Required. The maximum permitted usage of the resource. + :type limit: long + :param name: Required. The name of the type of usage. + :type name: ~azure.mgmt.compute.v2018_10_01.models.UsageName + """ + + _validation = { + 'unit': {'required': True, 'constant': True}, + 'current_value': {'required': True}, + 'limit': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'int'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + unit = "Count" + + def __init__(self, *, current_value: int, limit: int, name, **kwargs) -> None: + super(Usage, self).__init__(**kwargs) + self.current_value = current_value + self.limit = limit + self.name = name diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_certificate.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_certificate.py new file mode 100644 index 000000000000..b173def6f820 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_certificate.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VaultCertificate(Model): + """Describes a single certificate reference in a Key Vault, and where the + certificate should reside on the VM. + + :param certificate_url: This is the URL of a certificate that has been + uploaded to Key Vault as a secret. For adding a secret to the Key Vault, + see [Add a key or secret to the key + vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). + In this case, your certificate needs to be It is the Base64 encoding of + the following JSON Object which is encoded in UTF-8:

    {
    + "data":"",
    "dataType":"pfx",
    + "password":""
    } + :type certificate_url: str + :param certificate_store: For Windows VMs, specifies the certificate store + on the Virtual Machine to which the certificate should be added. The + specified certificate store is implicitly in the LocalMachine account. +

    For Linux VMs, the certificate file is placed under the + /var/lib/waagent directory, with the file name .crt + for the X509 certificate file and .prv for private + key. Both of these files are .pem formatted. + :type certificate_store: str + """ + + _attribute_map = { + 'certificate_url': {'key': 'certificateUrl', 'type': 'str'}, + 'certificate_store': {'key': 'certificateStore', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VaultCertificate, self).__init__(**kwargs) + self.certificate_url = kwargs.get('certificate_url', None) + self.certificate_store = kwargs.get('certificate_store', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_certificate_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_certificate_py3.py new file mode 100644 index 000000000000..eda5ba1c3f1d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_certificate_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VaultCertificate(Model): + """Describes a single certificate reference in a Key Vault, and where the + certificate should reside on the VM. + + :param certificate_url: This is the URL of a certificate that has been + uploaded to Key Vault as a secret. For adding a secret to the Key Vault, + see [Add a key or secret to the key + vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). + In this case, your certificate needs to be It is the Base64 encoding of + the following JSON Object which is encoded in UTF-8:

    {
    + "data":"",
    "dataType":"pfx",
    + "password":""
    } + :type certificate_url: str + :param certificate_store: For Windows VMs, specifies the certificate store + on the Virtual Machine to which the certificate should be added. The + specified certificate store is implicitly in the LocalMachine account. +

    For Linux VMs, the certificate file is placed under the + /var/lib/waagent directory, with the file name .crt + for the X509 certificate file and .prv for private + key. Both of these files are .pem formatted. + :type certificate_store: str + """ + + _attribute_map = { + 'certificate_url': {'key': 'certificateUrl', 'type': 'str'}, + 'certificate_store': {'key': 'certificateStore', 'type': 'str'}, + } + + def __init__(self, *, certificate_url: str=None, certificate_store: str=None, **kwargs) -> None: + super(VaultCertificate, self).__init__(**kwargs) + self.certificate_url = certificate_url + self.certificate_store = certificate_store diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_secret_group.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_secret_group.py new file mode 100644 index 000000000000..430e51fd04c6 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_secret_group.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VaultSecretGroup(Model): + """Describes a set of certificates which are all in the same Key Vault. + + :param source_vault: The relative URL of the Key Vault containing all of + the certificates in VaultCertificates. + :type source_vault: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param vault_certificates: The list of key vault references in SourceVault + which contain certificates. + :type vault_certificates: + list[~azure.mgmt.compute.v2018_10_01.models.VaultCertificate] + """ + + _attribute_map = { + 'source_vault': {'key': 'sourceVault', 'type': 'SubResource'}, + 'vault_certificates': {'key': 'vaultCertificates', 'type': '[VaultCertificate]'}, + } + + def __init__(self, **kwargs): + super(VaultSecretGroup, self).__init__(**kwargs) + self.source_vault = kwargs.get('source_vault', None) + self.vault_certificates = kwargs.get('vault_certificates', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_secret_group_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_secret_group_py3.py new file mode 100644 index 000000000000..915235165c12 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/vault_secret_group_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VaultSecretGroup(Model): + """Describes a set of certificates which are all in the same Key Vault. + + :param source_vault: The relative URL of the Key Vault containing all of + the certificates in VaultCertificates. + :type source_vault: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param vault_certificates: The list of key vault references in SourceVault + which contain certificates. + :type vault_certificates: + list[~azure.mgmt.compute.v2018_10_01.models.VaultCertificate] + """ + + _attribute_map = { + 'source_vault': {'key': 'sourceVault', 'type': 'SubResource'}, + 'vault_certificates': {'key': 'vaultCertificates', 'type': '[VaultCertificate]'}, + } + + def __init__(self, *, source_vault=None, vault_certificates=None, **kwargs) -> None: + super(VaultSecretGroup, self).__init__(**kwargs) + self.source_vault = source_vault + self.vault_certificates = vault_certificates diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_hard_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_hard_disk.py new file mode 100644 index 000000000000..5e3ad9dea7d4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_hard_disk.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualHardDisk(Model): + """Describes the uri of a disk. + + :param uri: Specifies the virtual hard disk's uri. + :type uri: str + """ + + _attribute_map = { + 'uri': {'key': 'uri', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHardDisk, self).__init__(**kwargs) + self.uri = kwargs.get('uri', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_hard_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_hard_disk_py3.py new file mode 100644 index 000000000000..9c069b95f084 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_hard_disk_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualHardDisk(Model): + """Describes the uri of a disk. + + :param uri: Specifies the virtual hard disk's uri. + :type uri: str + """ + + _attribute_map = { + 'uri': {'key': 'uri', 'type': 'str'}, + } + + def __init__(self, *, uri: str=None, **kwargs) -> None: + super(VirtualHardDisk, self).__init__(**kwargs) + self.uri = uri diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine.py new file mode 100644 index 000000000000..d66a901b1e76 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine.py @@ -0,0 +1,156 @@ +# 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 .resource import Resource + + +class VirtualMachine(Resource): + """Describes a Virtual Machine. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param plan: Specifies information about the marketplace image used to + create the virtual machine. This element is only used for marketplace + images. Before you can use a marketplace image from an API, you must + enable the image for programmatic use. In the Azure portal, find the + marketplace image that you want to use and then click **Want to deploy + programmatically, Get Started ->**. Enter any required information and + then click **Save**. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :param hardware_profile: Specifies the hardware settings for the virtual + machine. + :type hardware_profile: + ~azure.mgmt.compute.v2018_10_01.models.HardwareProfile + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_10_01.models.AdditionalCapabilities + :param os_profile: Specifies the operating system settings for the virtual + machine. + :type os_profile: ~azure.mgmt.compute.v2018_10_01.models.OSProfile + :param network_profile: Specifies the network interfaces of the virtual + machine. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.NetworkProfile + :param diagnostics_profile: Specifies the boot diagnostic settings state. +

    Minimum api-version: 2015-06-15. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param availability_set: Specifies information about the availability set + that the virtual machine should be assigned to. Virtual machines specified + in the same availability set are allocated to different nodes to maximize + availability. For more information about availability sets, see [Manage + the availability of virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

    For more information on Azure planned maintainance, see [Planned + maintenance for virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Currently, a VM can only be added to availability set at creation + time. An existing VM cannot be added to an availability set. + :type availability_set: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :ivar instance_view: The virtual machine instance view. + :vartype instance_view: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineInstanceView + :param license_type: Specifies that the image or disk that is being used + was licensed on-premises. This element is only used for images that + contain the Windows Server operating system.

    Possible values are: +

    Windows_Client

    Windows_Server

    If this element + is included in a request for an update, the value must match the initial + value. This value cannot be updated.

    For more information, see + [Azure Hybrid Use Benefit for Windows + Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Minimum api-version: 2015-06-15 + :type license_type: str + :ivar vm_id: Specifies the VM unique ID which is a 128-bits identifier + that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read + using platform BIOS commands. + :vartype vm_id: str + :ivar resources: The virtual machine child extension resources. + :vartype resources: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension] + :param identity: The identity of the virtual machine, if configured. + :type identity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineIdentity + :param zones: The virtual machine zones. + :type zones: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'instance_view': {'readonly': True}, + 'vm_id': {'readonly': True}, + 'resources': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, + 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, + 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, + 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, + 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, + 'resources': {'key': 'resources', 'type': '[VirtualMachineExtension]'}, + 'identity': {'key': 'identity', 'type': 'VirtualMachineIdentity'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachine, self).__init__(**kwargs) + self.plan = kwargs.get('plan', None) + self.hardware_profile = kwargs.get('hardware_profile', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.additional_capabilities = kwargs.get('additional_capabilities', None) + self.os_profile = kwargs.get('os_profile', None) + self.network_profile = kwargs.get('network_profile', None) + self.diagnostics_profile = kwargs.get('diagnostics_profile', None) + self.availability_set = kwargs.get('availability_set', None) + self.provisioning_state = None + self.instance_view = None + self.license_type = kwargs.get('license_type', None) + self.vm_id = None + self.resources = None + self.identity = kwargs.get('identity', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_agent_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_agent_instance_view.py new file mode 100644 index 000000000000..5f34d8af1c1a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_agent_instance_view.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineAgentInstanceView(Model): + """The instance view of the VM Agent running on the virtual machine. + + :param vm_agent_version: The VM Agent full version. + :type vm_agent_version: str + :param extension_handlers: The virtual machine extension handler instance + view. + :type extension_handlers: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionHandlerInstanceView] + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'vm_agent_version': {'key': 'vmAgentVersion', 'type': 'str'}, + 'extension_handlers': {'key': 'extensionHandlers', 'type': '[VirtualMachineExtensionHandlerInstanceView]'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineAgentInstanceView, self).__init__(**kwargs) + self.vm_agent_version = kwargs.get('vm_agent_version', None) + self.extension_handlers = kwargs.get('extension_handlers', None) + self.statuses = kwargs.get('statuses', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_agent_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_agent_instance_view_py3.py new file mode 100644 index 000000000000..24f44c45521e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_agent_instance_view_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineAgentInstanceView(Model): + """The instance view of the VM Agent running on the virtual machine. + + :param vm_agent_version: The VM Agent full version. + :type vm_agent_version: str + :param extension_handlers: The virtual machine extension handler instance + view. + :type extension_handlers: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionHandlerInstanceView] + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'vm_agent_version': {'key': 'vmAgentVersion', 'type': 'str'}, + 'extension_handlers': {'key': 'extensionHandlers', 'type': '[VirtualMachineExtensionHandlerInstanceView]'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, *, vm_agent_version: str=None, extension_handlers=None, statuses=None, **kwargs) -> None: + super(VirtualMachineAgentInstanceView, self).__init__(**kwargs) + self.vm_agent_version = vm_agent_version + self.extension_handlers = extension_handlers + self.statuses = statuses diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_parameters.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_parameters.py new file mode 100644 index 000000000000..4e6ffbea7a4f --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_parameters.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineCaptureParameters(Model): + """Capture Virtual Machine parameters. + + All required parameters must be populated in order to send to Azure. + + :param vhd_prefix: Required. The captured virtual hard disk's name prefix. + :type vhd_prefix: str + :param destination_container_name: Required. The destination container + name. + :type destination_container_name: str + :param overwrite_vhds: Required. Specifies whether to overwrite the + destination virtual hard disk, in case of conflict. + :type overwrite_vhds: bool + """ + + _validation = { + 'vhd_prefix': {'required': True}, + 'destination_container_name': {'required': True}, + 'overwrite_vhds': {'required': True}, + } + + _attribute_map = { + 'vhd_prefix': {'key': 'vhdPrefix', 'type': 'str'}, + 'destination_container_name': {'key': 'destinationContainerName', 'type': 'str'}, + 'overwrite_vhds': {'key': 'overwriteVhds', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineCaptureParameters, self).__init__(**kwargs) + self.vhd_prefix = kwargs.get('vhd_prefix', None) + self.destination_container_name = kwargs.get('destination_container_name', None) + self.overwrite_vhds = kwargs.get('overwrite_vhds', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_parameters_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_parameters_py3.py new file mode 100644 index 000000000000..1866cdc23300 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_parameters_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineCaptureParameters(Model): + """Capture Virtual Machine parameters. + + All required parameters must be populated in order to send to Azure. + + :param vhd_prefix: Required. The captured virtual hard disk's name prefix. + :type vhd_prefix: str + :param destination_container_name: Required. The destination container + name. + :type destination_container_name: str + :param overwrite_vhds: Required. Specifies whether to overwrite the + destination virtual hard disk, in case of conflict. + :type overwrite_vhds: bool + """ + + _validation = { + 'vhd_prefix': {'required': True}, + 'destination_container_name': {'required': True}, + 'overwrite_vhds': {'required': True}, + } + + _attribute_map = { + 'vhd_prefix': {'key': 'vhdPrefix', 'type': 'str'}, + 'destination_container_name': {'key': 'destinationContainerName', 'type': 'str'}, + 'overwrite_vhds': {'key': 'overwriteVhds', 'type': 'bool'}, + } + + def __init__(self, *, vhd_prefix: str, destination_container_name: str, overwrite_vhds: bool, **kwargs) -> None: + super(VirtualMachineCaptureParameters, self).__init__(**kwargs) + self.vhd_prefix = vhd_prefix + self.destination_container_name = destination_container_name + self.overwrite_vhds = overwrite_vhds diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_result.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_result.py new file mode 100644 index 000000000000..2972e1f2fcda --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_result.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class VirtualMachineCaptureResult(SubResource): + """Output of virtual machine capture operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource Id + :type id: str + :ivar schema: the schema of the captured virtual machine + :vartype schema: str + :ivar content_version: the version of the content + :vartype content_version: str + :ivar parameters: parameters of the captured virtual machine + :vartype parameters: object + :ivar resources: a list of resource items of the captured virtual machine + :vartype resources: list[object] + """ + + _validation = { + 'schema': {'readonly': True}, + 'content_version': {'readonly': True}, + 'parameters': {'readonly': True}, + 'resources': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'schema': {'key': '$schema', 'type': 'str'}, + 'content_version': {'key': 'contentVersion', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'object'}, + 'resources': {'key': 'resources', 'type': '[object]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineCaptureResult, self).__init__(**kwargs) + self.schema = None + self.content_version = None + self.parameters = None + self.resources = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_result_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_result_py3.py new file mode 100644 index 000000000000..09e8afde1591 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_capture_result_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class VirtualMachineCaptureResult(SubResource): + """Output of virtual machine capture operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource Id + :type id: str + :ivar schema: the schema of the captured virtual machine + :vartype schema: str + :ivar content_version: the version of the content + :vartype content_version: str + :ivar parameters: parameters of the captured virtual machine + :vartype parameters: object + :ivar resources: a list of resource items of the captured virtual machine + :vartype resources: list[object] + """ + + _validation = { + 'schema': {'readonly': True}, + 'content_version': {'readonly': True}, + 'parameters': {'readonly': True}, + 'resources': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'schema': {'key': '$schema', 'type': 'str'}, + 'content_version': {'key': 'contentVersion', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'object'}, + 'resources': {'key': 'resources', 'type': '[object]'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(VirtualMachineCaptureResult, self).__init__(id=id, **kwargs) + self.schema = None + self.content_version = None + self.parameters = None + self.resources = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension.py new file mode 100644 index 000000000000..894a684f8e55 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension.py @@ -0,0 +1,97 @@ +# 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 .resource import Resource + + +class VirtualMachineExtension(Resource): + """Describes a Virtual Machine Extension. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param force_update_tag: How the extension handler should be forced to + update even if the extension configuration has not changed. + :type force_update_tag: str + :param publisher: The name of the extension handler publisher. + :type publisher: str + :param virtual_machine_extension_type: Specifies the type of the + extension; an example is "CustomScriptExtension". + :type virtual_machine_extension_type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param auto_upgrade_minor_version: Indicates whether the extension should + use a newer minor version if one is available at deployment time. Once + deployed, however, the extension will not upgrade minor versions unless + redeployed, even with this property set to true. + :type auto_upgrade_minor_version: bool + :param settings: Json formatted public settings for the extension. + :type settings: object + :param protected_settings: The extension can contain either + protectedSettings or protectedSettingsFromKeyVault or no protected + settings at all. + :type protected_settings: object + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :param instance_view: The virtual machine extension instance view. + :type instance_view: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionInstanceView + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'force_update_tag': {'key': 'properties.forceUpdateTag', 'type': 'str'}, + 'publisher': {'key': 'properties.publisher', 'type': 'str'}, + 'virtual_machine_extension_type': {'key': 'properties.type', 'type': 'str'}, + 'type_handler_version': {'key': 'properties.typeHandlerVersion', 'type': 'str'}, + 'auto_upgrade_minor_version': {'key': 'properties.autoUpgradeMinorVersion', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': 'object'}, + 'protected_settings': {'key': 'properties.protectedSettings', 'type': 'object'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineExtensionInstanceView'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineExtension, self).__init__(**kwargs) + self.force_update_tag = kwargs.get('force_update_tag', None) + self.publisher = kwargs.get('publisher', None) + self.virtual_machine_extension_type = kwargs.get('virtual_machine_extension_type', None) + self.type_handler_version = kwargs.get('type_handler_version', None) + self.auto_upgrade_minor_version = kwargs.get('auto_upgrade_minor_version', None) + self.settings = kwargs.get('settings', None) + self.protected_settings = kwargs.get('protected_settings', None) + self.provisioning_state = None + self.instance_view = kwargs.get('instance_view', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_handler_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_handler_instance_view.py new file mode 100644 index 000000000000..e13a614f560b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_handler_instance_view.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineExtensionHandlerInstanceView(Model): + """The instance view of a virtual machine extension handler. + + :param type: Specifies the type of the extension; an example is + "CustomScriptExtension". + :type type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param status: The extension handler status. + :type status: ~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'type_handler_version': {'key': 'typeHandlerVersion', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineExtensionHandlerInstanceView, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.type_handler_version = kwargs.get('type_handler_version', None) + self.status = kwargs.get('status', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_handler_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_handler_instance_view_py3.py new file mode 100644 index 000000000000..71211067b4e9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_handler_instance_view_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineExtensionHandlerInstanceView(Model): + """The instance view of a virtual machine extension handler. + + :param type: Specifies the type of the extension; an example is + "CustomScriptExtension". + :type type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param status: The extension handler status. + :type status: ~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'type_handler_version': {'key': 'typeHandlerVersion', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, + } + + def __init__(self, *, type: str=None, type_handler_version: str=None, status=None, **kwargs) -> None: + super(VirtualMachineExtensionHandlerInstanceView, self).__init__(**kwargs) + self.type = type + self.type_handler_version = type_handler_version + self.status = status diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_image.py new file mode 100644 index 000000000000..7273e2b84754 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_image.py @@ -0,0 +1,81 @@ +# 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 .resource import Resource + + +class VirtualMachineExtensionImage(Resource): + """Describes a Virtual Machine Extension Image. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param operating_system: Required. The operating system this extension + supports. + :type operating_system: str + :param compute_role: Required. The type of role (IaaS or PaaS) this + extension supports. + :type compute_role: str + :param handler_schema: Required. The schema defined by publisher, where + extension consumers should provide settings in a matching schema. + :type handler_schema: str + :param vm_scale_set_enabled: Whether the extension can be used on xRP + VMScaleSets. By default existing extensions are usable on scalesets, but + there might be cases where a publisher wants to explicitly indicate the + extension is only enabled for CRP VMs but not VMSS. + :type vm_scale_set_enabled: bool + :param supports_multiple_extensions: Whether the handler can support + multiple extensions. + :type supports_multiple_extensions: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'operating_system': {'required': True}, + 'compute_role': {'required': True}, + 'handler_schema': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'operating_system': {'key': 'properties.operatingSystem', 'type': 'str'}, + 'compute_role': {'key': 'properties.computeRole', 'type': 'str'}, + 'handler_schema': {'key': 'properties.handlerSchema', 'type': 'str'}, + 'vm_scale_set_enabled': {'key': 'properties.vmScaleSetEnabled', 'type': 'bool'}, + 'supports_multiple_extensions': {'key': 'properties.supportsMultipleExtensions', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineExtensionImage, self).__init__(**kwargs) + self.operating_system = kwargs.get('operating_system', None) + self.compute_role = kwargs.get('compute_role', None) + self.handler_schema = kwargs.get('handler_schema', None) + self.vm_scale_set_enabled = kwargs.get('vm_scale_set_enabled', None) + self.supports_multiple_extensions = kwargs.get('supports_multiple_extensions', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_image_py3.py new file mode 100644 index 000000000000..3d48c3a87fb0 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_image_py3.py @@ -0,0 +1,81 @@ +# 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 .resource_py3 import Resource + + +class VirtualMachineExtensionImage(Resource): + """Describes a Virtual Machine Extension Image. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param operating_system: Required. The operating system this extension + supports. + :type operating_system: str + :param compute_role: Required. The type of role (IaaS or PaaS) this + extension supports. + :type compute_role: str + :param handler_schema: Required. The schema defined by publisher, where + extension consumers should provide settings in a matching schema. + :type handler_schema: str + :param vm_scale_set_enabled: Whether the extension can be used on xRP + VMScaleSets. By default existing extensions are usable on scalesets, but + there might be cases where a publisher wants to explicitly indicate the + extension is only enabled for CRP VMs but not VMSS. + :type vm_scale_set_enabled: bool + :param supports_multiple_extensions: Whether the handler can support + multiple extensions. + :type supports_multiple_extensions: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'operating_system': {'required': True}, + 'compute_role': {'required': True}, + 'handler_schema': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'operating_system': {'key': 'properties.operatingSystem', 'type': 'str'}, + 'compute_role': {'key': 'properties.computeRole', 'type': 'str'}, + 'handler_schema': {'key': 'properties.handlerSchema', 'type': 'str'}, + 'vm_scale_set_enabled': {'key': 'properties.vmScaleSetEnabled', 'type': 'bool'}, + 'supports_multiple_extensions': {'key': 'properties.supportsMultipleExtensions', 'type': 'bool'}, + } + + def __init__(self, *, location: str, operating_system: str, compute_role: str, handler_schema: str, tags=None, vm_scale_set_enabled: bool=None, supports_multiple_extensions: bool=None, **kwargs) -> None: + super(VirtualMachineExtensionImage, self).__init__(location=location, tags=tags, **kwargs) + self.operating_system = operating_system + self.compute_role = compute_role + self.handler_schema = handler_schema + self.vm_scale_set_enabled = vm_scale_set_enabled + self.supports_multiple_extensions = supports_multiple_extensions diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_instance_view.py new file mode 100644 index 000000000000..f53500a5dcbe --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_instance_view.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineExtensionInstanceView(Model): + """The instance view of a virtual machine extension. + + :param name: The virtual machine extension name. + :type name: str + :param type: Specifies the type of the extension; an example is + "CustomScriptExtension". + :type type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param substatuses: The resource status information. + :type substatuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'type_handler_version': {'key': 'typeHandlerVersion', 'type': 'str'}, + 'substatuses': {'key': 'substatuses', 'type': '[InstanceViewStatus]'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineExtensionInstanceView, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) + self.type_handler_version = kwargs.get('type_handler_version', None) + self.substatuses = kwargs.get('substatuses', None) + self.statuses = kwargs.get('statuses', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_instance_view_py3.py new file mode 100644 index 000000000000..3c5896ce831d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_instance_view_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineExtensionInstanceView(Model): + """The instance view of a virtual machine extension. + + :param name: The virtual machine extension name. + :type name: str + :param type: Specifies the type of the extension; an example is + "CustomScriptExtension". + :type type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param substatuses: The resource status information. + :type substatuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'type_handler_version': {'key': 'typeHandlerVersion', 'type': 'str'}, + 'substatuses': {'key': 'substatuses', 'type': '[InstanceViewStatus]'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, *, name: str=None, type: str=None, type_handler_version: str=None, substatuses=None, statuses=None, **kwargs) -> None: + super(VirtualMachineExtensionInstanceView, self).__init__(**kwargs) + self.name = name + self.type = type + self.type_handler_version = type_handler_version + self.substatuses = substatuses + self.statuses = statuses diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_py3.py new file mode 100644 index 000000000000..48b6a1773a3b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_py3.py @@ -0,0 +1,97 @@ +# 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 .resource_py3 import Resource + + +class VirtualMachineExtension(Resource): + """Describes a Virtual Machine Extension. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param force_update_tag: How the extension handler should be forced to + update even if the extension configuration has not changed. + :type force_update_tag: str + :param publisher: The name of the extension handler publisher. + :type publisher: str + :param virtual_machine_extension_type: Specifies the type of the + extension; an example is "CustomScriptExtension". + :type virtual_machine_extension_type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param auto_upgrade_minor_version: Indicates whether the extension should + use a newer minor version if one is available at deployment time. Once + deployed, however, the extension will not upgrade minor versions unless + redeployed, even with this property set to true. + :type auto_upgrade_minor_version: bool + :param settings: Json formatted public settings for the extension. + :type settings: object + :param protected_settings: The extension can contain either + protectedSettings or protectedSettingsFromKeyVault or no protected + settings at all. + :type protected_settings: object + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :param instance_view: The virtual machine extension instance view. + :type instance_view: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionInstanceView + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'force_update_tag': {'key': 'properties.forceUpdateTag', 'type': 'str'}, + 'publisher': {'key': 'properties.publisher', 'type': 'str'}, + 'virtual_machine_extension_type': {'key': 'properties.type', 'type': 'str'}, + 'type_handler_version': {'key': 'properties.typeHandlerVersion', 'type': 'str'}, + 'auto_upgrade_minor_version': {'key': 'properties.autoUpgradeMinorVersion', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': 'object'}, + 'protected_settings': {'key': 'properties.protectedSettings', 'type': 'object'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineExtensionInstanceView'}, + } + + def __init__(self, *, location: str, tags=None, force_update_tag: str=None, publisher: str=None, virtual_machine_extension_type: str=None, type_handler_version: str=None, auto_upgrade_minor_version: bool=None, settings=None, protected_settings=None, instance_view=None, **kwargs) -> None: + super(VirtualMachineExtension, self).__init__(location=location, tags=tags, **kwargs) + self.force_update_tag = force_update_tag + self.publisher = publisher + self.virtual_machine_extension_type = virtual_machine_extension_type + self.type_handler_version = type_handler_version + self.auto_upgrade_minor_version = auto_upgrade_minor_version + self.settings = settings + self.protected_settings = protected_settings + self.provisioning_state = None + self.instance_view = instance_view diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_update.py new file mode 100644 index 000000000000..b920ff57ff96 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_update.py @@ -0,0 +1,62 @@ +# 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 .update_resource import UpdateResource + + +class VirtualMachineExtensionUpdate(UpdateResource): + """Describes a Virtual Machine Extension. + + :param tags: Resource tags + :type tags: dict[str, str] + :param force_update_tag: How the extension handler should be forced to + update even if the extension configuration has not changed. + :type force_update_tag: str + :param publisher: The name of the extension handler publisher. + :type publisher: str + :param type: Specifies the type of the extension; an example is + "CustomScriptExtension". + :type type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param auto_upgrade_minor_version: Indicates whether the extension should + use a newer minor version if one is available at deployment time. Once + deployed, however, the extension will not upgrade minor versions unless + redeployed, even with this property set to true. + :type auto_upgrade_minor_version: bool + :param settings: Json formatted public settings for the extension. + :type settings: object + :param protected_settings: The extension can contain either + protectedSettings or protectedSettingsFromKeyVault or no protected + settings at all. + :type protected_settings: object + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'force_update_tag': {'key': 'properties.forceUpdateTag', 'type': 'str'}, + 'publisher': {'key': 'properties.publisher', 'type': 'str'}, + 'type': {'key': 'properties.type', 'type': 'str'}, + 'type_handler_version': {'key': 'properties.typeHandlerVersion', 'type': 'str'}, + 'auto_upgrade_minor_version': {'key': 'properties.autoUpgradeMinorVersion', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': 'object'}, + 'protected_settings': {'key': 'properties.protectedSettings', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineExtensionUpdate, self).__init__(**kwargs) + self.force_update_tag = kwargs.get('force_update_tag', None) + self.publisher = kwargs.get('publisher', None) + self.type = kwargs.get('type', None) + self.type_handler_version = kwargs.get('type_handler_version', None) + self.auto_upgrade_minor_version = kwargs.get('auto_upgrade_minor_version', None) + self.settings = kwargs.get('settings', None) + self.protected_settings = kwargs.get('protected_settings', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_update_py3.py new file mode 100644 index 000000000000..c32c18d32759 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extension_update_py3.py @@ -0,0 +1,62 @@ +# 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 .update_resource_py3 import UpdateResource + + +class VirtualMachineExtensionUpdate(UpdateResource): + """Describes a Virtual Machine Extension. + + :param tags: Resource tags + :type tags: dict[str, str] + :param force_update_tag: How the extension handler should be forced to + update even if the extension configuration has not changed. + :type force_update_tag: str + :param publisher: The name of the extension handler publisher. + :type publisher: str + :param type: Specifies the type of the extension; an example is + "CustomScriptExtension". + :type type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param auto_upgrade_minor_version: Indicates whether the extension should + use a newer minor version if one is available at deployment time. Once + deployed, however, the extension will not upgrade minor versions unless + redeployed, even with this property set to true. + :type auto_upgrade_minor_version: bool + :param settings: Json formatted public settings for the extension. + :type settings: object + :param protected_settings: The extension can contain either + protectedSettings or protectedSettingsFromKeyVault or no protected + settings at all. + :type protected_settings: object + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'force_update_tag': {'key': 'properties.forceUpdateTag', 'type': 'str'}, + 'publisher': {'key': 'properties.publisher', 'type': 'str'}, + 'type': {'key': 'properties.type', 'type': 'str'}, + 'type_handler_version': {'key': 'properties.typeHandlerVersion', 'type': 'str'}, + 'auto_upgrade_minor_version': {'key': 'properties.autoUpgradeMinorVersion', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': 'object'}, + 'protected_settings': {'key': 'properties.protectedSettings', 'type': 'object'}, + } + + def __init__(self, *, tags=None, force_update_tag: str=None, publisher: str=None, type: str=None, type_handler_version: str=None, auto_upgrade_minor_version: bool=None, settings=None, protected_settings=None, **kwargs) -> None: + super(VirtualMachineExtensionUpdate, self).__init__(tags=tags, **kwargs) + self.force_update_tag = force_update_tag + self.publisher = publisher + self.type = type + self.type_handler_version = type_handler_version + self.auto_upgrade_minor_version = auto_upgrade_minor_version + self.settings = settings + self.protected_settings = protected_settings diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extensions_list_result.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extensions_list_result.py new file mode 100644 index 000000000000..6a6546732af0 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extensions_list_result.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineExtensionsListResult(Model): + """The List Extension operation response. + + :param value: The list of extensions + :type value: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[VirtualMachineExtension]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineExtensionsListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extensions_list_result_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extensions_list_result_py3.py new file mode 100644 index 000000000000..a58776dab0cd --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_extensions_list_result_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineExtensionsListResult(Model): + """The List Extension operation response. + + :param value: The list of extensions + :type value: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[VirtualMachineExtension]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(VirtualMachineExtensionsListResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_health_status.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_health_status.py new file mode 100644 index 000000000000..ea6a76ff400a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_health_status.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineHealthStatus(Model): + """The health status of the VM. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar status: The health status information for the VM. + :vartype status: ~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus + """ + + _validation = { + 'status': {'readonly': True}, + } + + _attribute_map = { + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineHealthStatus, self).__init__(**kwargs) + self.status = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_health_status_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_health_status_py3.py new file mode 100644 index 000000000000..0f5c003506aa --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_health_status_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineHealthStatus(Model): + """The health status of the VM. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar status: The health status information for the VM. + :vartype status: ~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus + """ + + _validation = { + 'status': {'readonly': True}, + } + + _attribute_map = { + 'status': {'key': 'status', 'type': 'InstanceViewStatus'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualMachineHealthStatus, self).__init__(**kwargs) + self.status = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity.py new file mode 100644 index 000000000000..57ac63292cef --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineIdentity(Model): + """Identity for the virtual machine. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of virtual machine identity. This + property will only be provided for a system assigned identity. + :vartype principal_id: str + :ivar tenant_id: The tenant id associated with the virtual machine. This + property will only be provided for a system assigned identity. + :vartype tenant_id: str + :param type: The type of identity used for the virtual machine. The type + 'SystemAssigned, UserAssigned' includes both an implicitly created + identity and a set of user assigned identities. The type 'None' will + remove any identities from the virtual machine. Possible values include: + 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' + :type type: str or + ~azure.mgmt.compute.v2018_10_01.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated + with the Virtual Machine. The user identity dictionary key references will + be ARM resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineIdentityUserAssignedIdentitiesValue] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{VirtualMachineIdentityUserAssignedIdentitiesValue}'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = kwargs.get('type', None) + self.user_assigned_identities = kwargs.get('user_assigned_identities', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_py3.py new file mode 100644 index 000000000000..b66f9dc5e4e1 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineIdentity(Model): + """Identity for the virtual machine. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of virtual machine identity. This + property will only be provided for a system assigned identity. + :vartype principal_id: str + :ivar tenant_id: The tenant id associated with the virtual machine. This + property will only be provided for a system assigned identity. + :vartype tenant_id: str + :param type: The type of identity used for the virtual machine. The type + 'SystemAssigned, UserAssigned' includes both an implicitly created + identity and a set of user assigned identities. The type 'None' will + remove any identities from the virtual machine. Possible values include: + 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' + :type type: str or + ~azure.mgmt.compute.v2018_10_01.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated + with the Virtual Machine. The user identity dictionary key references will + be ARM resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineIdentityUserAssignedIdentitiesValue] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{VirtualMachineIdentityUserAssignedIdentitiesValue}'}, + } + + def __init__(self, *, type=None, user_assigned_identities=None, **kwargs) -> None: + super(VirtualMachineIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = type + self.user_assigned_identities = user_assigned_identities diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_user_assigned_identities_value.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_user_assigned_identities_value.py new file mode 100644 index 000000000000..8df9f5c86f49 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_user_assigned_identities_value.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineIdentityUserAssignedIdentitiesValue(Model): + """VirtualMachineIdentityUserAssignedIdentitiesValue. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client id of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineIdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_user_assigned_identities_value_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_user_assigned_identities_value_py3.py new file mode 100644 index 000000000000..0921bb643ccf --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_identity_user_assigned_identities_value_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineIdentityUserAssignedIdentitiesValue(Model): + """VirtualMachineIdentityUserAssignedIdentitiesValue. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client id of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualMachineIdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image.py new file mode 100644 index 000000000000..9fba8ad6bd3b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .virtual_machine_image_resource import VirtualMachineImageResource + + +class VirtualMachineImage(VirtualMachineImageResource): + """Describes a Virtual Machine Image. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource Id + :type id: str + :param name: Required. The name of the resource. + :type name: str + :param location: Required. The supported Azure location of the resource. + :type location: str + :param tags: Specifies the tags that are assigned to the virtual machine. + For more information about using tags, see [Using tags to organize your + Azure + resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md). + :type tags: dict[str, str] + :param plan: + :type plan: ~azure.mgmt.compute.v2018_10_01.models.PurchasePlan + :param os_disk_image: + :type os_disk_image: ~azure.mgmt.compute.v2018_10_01.models.OSDiskImage + :param data_disk_images: + :type data_disk_images: + list[~azure.mgmt.compute.v2018_10_01.models.DataDiskImage] + :param automatic_os_upgrade_properties: + :type automatic_os_upgrade_properties: + ~azure.mgmt.compute.v2018_10_01.models.AutomaticOSUpgradeProperties + """ + + _validation = { + 'name': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'plan': {'key': 'properties.plan', 'type': 'PurchasePlan'}, + 'os_disk_image': {'key': 'properties.osDiskImage', 'type': 'OSDiskImage'}, + 'data_disk_images': {'key': 'properties.dataDiskImages', 'type': '[DataDiskImage]'}, + 'automatic_os_upgrade_properties': {'key': 'properties.automaticOSUpgradeProperties', 'type': 'AutomaticOSUpgradeProperties'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineImage, self).__init__(**kwargs) + self.plan = kwargs.get('plan', None) + self.os_disk_image = kwargs.get('os_disk_image', None) + self.data_disk_images = kwargs.get('data_disk_images', None) + self.automatic_os_upgrade_properties = kwargs.get('automatic_os_upgrade_properties', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_py3.py new file mode 100644 index 000000000000..8a6bf2baea0e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .virtual_machine_image_resource_py3 import VirtualMachineImageResource + + +class VirtualMachineImage(VirtualMachineImageResource): + """Describes a Virtual Machine Image. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource Id + :type id: str + :param name: Required. The name of the resource. + :type name: str + :param location: Required. The supported Azure location of the resource. + :type location: str + :param tags: Specifies the tags that are assigned to the virtual machine. + For more information about using tags, see [Using tags to organize your + Azure + resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md). + :type tags: dict[str, str] + :param plan: + :type plan: ~azure.mgmt.compute.v2018_10_01.models.PurchasePlan + :param os_disk_image: + :type os_disk_image: ~azure.mgmt.compute.v2018_10_01.models.OSDiskImage + :param data_disk_images: + :type data_disk_images: + list[~azure.mgmt.compute.v2018_10_01.models.DataDiskImage] + :param automatic_os_upgrade_properties: + :type automatic_os_upgrade_properties: + ~azure.mgmt.compute.v2018_10_01.models.AutomaticOSUpgradeProperties + """ + + _validation = { + 'name': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'plan': {'key': 'properties.plan', 'type': 'PurchasePlan'}, + 'os_disk_image': {'key': 'properties.osDiskImage', 'type': 'OSDiskImage'}, + 'data_disk_images': {'key': 'properties.dataDiskImages', 'type': '[DataDiskImage]'}, + 'automatic_os_upgrade_properties': {'key': 'properties.automaticOSUpgradeProperties', 'type': 'AutomaticOSUpgradeProperties'}, + } + + def __init__(self, *, name: str, location: str, id: str=None, tags=None, plan=None, os_disk_image=None, data_disk_images=None, automatic_os_upgrade_properties=None, **kwargs) -> None: + super(VirtualMachineImage, self).__init__(id=id, name=name, location=location, tags=tags, **kwargs) + self.plan = plan + self.os_disk_image = os_disk_image + self.data_disk_images = data_disk_images + self.automatic_os_upgrade_properties = automatic_os_upgrade_properties diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_resource.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_resource.py new file mode 100644 index 000000000000..8807cc8f391b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_resource.py @@ -0,0 +1,49 @@ +# 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 .sub_resource import SubResource + + +class VirtualMachineImageResource(SubResource): + """Virtual machine image resource information. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource Id + :type id: str + :param name: Required. The name of the resource. + :type name: str + :param location: Required. The supported Azure location of the resource. + :type location: str + :param tags: Specifies the tags that are assigned to the virtual machine. + For more information about using tags, see [Using tags to organize your + Azure + resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md). + :type tags: dict[str, str] + """ + + _validation = { + 'name': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineImageResource, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_resource_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_resource_py3.py new file mode 100644 index 000000000000..b9d63a8bc9e0 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_image_resource_py3.py @@ -0,0 +1,49 @@ +# 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 .sub_resource_py3 import SubResource + + +class VirtualMachineImageResource(SubResource): + """Virtual machine image resource information. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource Id + :type id: str + :param name: Required. The name of the resource. + :type name: str + :param location: Required. The supported Azure location of the resource. + :type location: str + :param tags: Specifies the tags that are assigned to the virtual machine. + For more information about using tags, see [Using tags to organize your + Azure + resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md). + :type tags: dict[str, str] + """ + + _validation = { + 'name': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, name: str, location: str, id: str=None, tags=None, **kwargs) -> None: + super(VirtualMachineImageResource, self).__init__(id=id, **kwargs) + self.name = name + self.location = location + self.tags = tags diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_instance_view.py new file mode 100644 index 000000000000..e7607023c6a8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_instance_view.py @@ -0,0 +1,84 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineInstanceView(Model): + """The instance view of a virtual machine. + + :param platform_update_domain: Specifies the update domain of the virtual + machine. + :type platform_update_domain: int + :param platform_fault_domain: Specifies the fault domain of the virtual + machine. + :type platform_fault_domain: int + :param computer_name: The computer name assigned to the virtual machine. + :type computer_name: str + :param os_name: The Operating System running on the virtual machine. + :type os_name: str + :param os_version: The version of Operating System running on the virtual + machine. + :type os_version: str + :param rdp_thumb_print: The Remote desktop certificate thumbprint. + :type rdp_thumb_print: str + :param vm_agent: The VM Agent running on the virtual machine. + :type vm_agent: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineAgentInstanceView + :param maintenance_redeploy_status: The Maintenance Operation status on + the virtual machine. + :type maintenance_redeploy_status: + ~azure.mgmt.compute.v2018_10_01.models.MaintenanceRedeployStatus + :param disks: The virtual machine disk information. + :type disks: list[~azure.mgmt.compute.v2018_10_01.models.DiskInstanceView] + :param extensions: The extensions information. + :type extensions: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionInstanceView] + :param boot_diagnostics: Boot Diagnostics is a debugging feature which + allows you to view Console Output and Screenshot to diagnose VM status. +

    You can easily view the output of your console log.

    + Azure also enables you to see a screenshot of the VM from the hypervisor. + :type boot_diagnostics: + ~azure.mgmt.compute.v2018_10_01.models.BootDiagnosticsInstanceView + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'platform_update_domain': {'key': 'platformUpdateDomain', 'type': 'int'}, + 'platform_fault_domain': {'key': 'platformFaultDomain', 'type': 'int'}, + 'computer_name': {'key': 'computerName', 'type': 'str'}, + 'os_name': {'key': 'osName', 'type': 'str'}, + 'os_version': {'key': 'osVersion', 'type': 'str'}, + 'rdp_thumb_print': {'key': 'rdpThumbPrint', 'type': 'str'}, + 'vm_agent': {'key': 'vmAgent', 'type': 'VirtualMachineAgentInstanceView'}, + 'maintenance_redeploy_status': {'key': 'maintenanceRedeployStatus', 'type': 'MaintenanceRedeployStatus'}, + 'disks': {'key': 'disks', 'type': '[DiskInstanceView]'}, + 'extensions': {'key': 'extensions', 'type': '[VirtualMachineExtensionInstanceView]'}, + 'boot_diagnostics': {'key': 'bootDiagnostics', 'type': 'BootDiagnosticsInstanceView'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineInstanceView, self).__init__(**kwargs) + self.platform_update_domain = kwargs.get('platform_update_domain', None) + self.platform_fault_domain = kwargs.get('platform_fault_domain', None) + self.computer_name = kwargs.get('computer_name', None) + self.os_name = kwargs.get('os_name', None) + self.os_version = kwargs.get('os_version', None) + self.rdp_thumb_print = kwargs.get('rdp_thumb_print', None) + self.vm_agent = kwargs.get('vm_agent', None) + self.maintenance_redeploy_status = kwargs.get('maintenance_redeploy_status', None) + self.disks = kwargs.get('disks', None) + self.extensions = kwargs.get('extensions', None) + self.boot_diagnostics = kwargs.get('boot_diagnostics', None) + self.statuses = kwargs.get('statuses', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_instance_view_py3.py new file mode 100644 index 000000000000..5d08ff052a7e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_instance_view_py3.py @@ -0,0 +1,84 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineInstanceView(Model): + """The instance view of a virtual machine. + + :param platform_update_domain: Specifies the update domain of the virtual + machine. + :type platform_update_domain: int + :param platform_fault_domain: Specifies the fault domain of the virtual + machine. + :type platform_fault_domain: int + :param computer_name: The computer name assigned to the virtual machine. + :type computer_name: str + :param os_name: The Operating System running on the virtual machine. + :type os_name: str + :param os_version: The version of Operating System running on the virtual + machine. + :type os_version: str + :param rdp_thumb_print: The Remote desktop certificate thumbprint. + :type rdp_thumb_print: str + :param vm_agent: The VM Agent running on the virtual machine. + :type vm_agent: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineAgentInstanceView + :param maintenance_redeploy_status: The Maintenance Operation status on + the virtual machine. + :type maintenance_redeploy_status: + ~azure.mgmt.compute.v2018_10_01.models.MaintenanceRedeployStatus + :param disks: The virtual machine disk information. + :type disks: list[~azure.mgmt.compute.v2018_10_01.models.DiskInstanceView] + :param extensions: The extensions information. + :type extensions: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionInstanceView] + :param boot_diagnostics: Boot Diagnostics is a debugging feature which + allows you to view Console Output and Screenshot to diagnose VM status. +

    You can easily view the output of your console log.

    + Azure also enables you to see a screenshot of the VM from the hypervisor. + :type boot_diagnostics: + ~azure.mgmt.compute.v2018_10_01.models.BootDiagnosticsInstanceView + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _attribute_map = { + 'platform_update_domain': {'key': 'platformUpdateDomain', 'type': 'int'}, + 'platform_fault_domain': {'key': 'platformFaultDomain', 'type': 'int'}, + 'computer_name': {'key': 'computerName', 'type': 'str'}, + 'os_name': {'key': 'osName', 'type': 'str'}, + 'os_version': {'key': 'osVersion', 'type': 'str'}, + 'rdp_thumb_print': {'key': 'rdpThumbPrint', 'type': 'str'}, + 'vm_agent': {'key': 'vmAgent', 'type': 'VirtualMachineAgentInstanceView'}, + 'maintenance_redeploy_status': {'key': 'maintenanceRedeployStatus', 'type': 'MaintenanceRedeployStatus'}, + 'disks': {'key': 'disks', 'type': '[DiskInstanceView]'}, + 'extensions': {'key': 'extensions', 'type': '[VirtualMachineExtensionInstanceView]'}, + 'boot_diagnostics': {'key': 'bootDiagnostics', 'type': 'BootDiagnosticsInstanceView'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, *, platform_update_domain: int=None, platform_fault_domain: int=None, computer_name: str=None, os_name: str=None, os_version: str=None, rdp_thumb_print: str=None, vm_agent=None, maintenance_redeploy_status=None, disks=None, extensions=None, boot_diagnostics=None, statuses=None, **kwargs) -> None: + super(VirtualMachineInstanceView, self).__init__(**kwargs) + self.platform_update_domain = platform_update_domain + self.platform_fault_domain = platform_fault_domain + self.computer_name = computer_name + self.os_name = os_name + self.os_version = os_version + self.rdp_thumb_print = rdp_thumb_print + self.vm_agent = vm_agent + self.maintenance_redeploy_status = maintenance_redeploy_status + self.disks = disks + self.extensions = extensions + self.boot_diagnostics = boot_diagnostics + self.statuses = statuses diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_paged.py new file mode 100644 index 000000000000..d18284dc47df --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualMachinePaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualMachine ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualMachine]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualMachinePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_py3.py new file mode 100644 index 000000000000..be5bd7af71e2 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_py3.py @@ -0,0 +1,156 @@ +# 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 .resource_py3 import Resource + + +class VirtualMachine(Resource): + """Describes a Virtual Machine. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param plan: Specifies information about the marketplace image used to + create the virtual machine. This element is only used for marketplace + images. Before you can use a marketplace image from an API, you must + enable the image for programmatic use. In the Azure portal, find the + marketplace image that you want to use and then click **Want to deploy + programmatically, Get Started ->**. Enter any required information and + then click **Save**. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :param hardware_profile: Specifies the hardware settings for the virtual + machine. + :type hardware_profile: + ~azure.mgmt.compute.v2018_10_01.models.HardwareProfile + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_10_01.models.AdditionalCapabilities + :param os_profile: Specifies the operating system settings for the virtual + machine. + :type os_profile: ~azure.mgmt.compute.v2018_10_01.models.OSProfile + :param network_profile: Specifies the network interfaces of the virtual + machine. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.NetworkProfile + :param diagnostics_profile: Specifies the boot diagnostic settings state. +

    Minimum api-version: 2015-06-15. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param availability_set: Specifies information about the availability set + that the virtual machine should be assigned to. Virtual machines specified + in the same availability set are allocated to different nodes to maximize + availability. For more information about availability sets, see [Manage + the availability of virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

    For more information on Azure planned maintainance, see [Planned + maintenance for virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Currently, a VM can only be added to availability set at creation + time. An existing VM cannot be added to an availability set. + :type availability_set: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :ivar instance_view: The virtual machine instance view. + :vartype instance_view: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineInstanceView + :param license_type: Specifies that the image or disk that is being used + was licensed on-premises. This element is only used for images that + contain the Windows Server operating system.

    Possible values are: +

    Windows_Client

    Windows_Server

    If this element + is included in a request for an update, the value must match the initial + value. This value cannot be updated.

    For more information, see + [Azure Hybrid Use Benefit for Windows + Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Minimum api-version: 2015-06-15 + :type license_type: str + :ivar vm_id: Specifies the VM unique ID which is a 128-bits identifier + that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read + using platform BIOS commands. + :vartype vm_id: str + :ivar resources: The virtual machine child extension resources. + :vartype resources: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension] + :param identity: The identity of the virtual machine, if configured. + :type identity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineIdentity + :param zones: The virtual machine zones. + :type zones: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'instance_view': {'readonly': True}, + 'vm_id': {'readonly': True}, + 'resources': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, + 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, + 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, + 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, + 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, + 'resources': {'key': 'resources', 'type': '[VirtualMachineExtension]'}, + 'identity': {'key': 'identity', 'type': 'VirtualMachineIdentity'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, location: str, tags=None, plan=None, hardware_profile=None, storage_profile=None, additional_capabilities=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, identity=None, zones=None, **kwargs) -> None: + super(VirtualMachine, self).__init__(location=location, tags=tags, **kwargs) + self.plan = plan + self.hardware_profile = hardware_profile + self.storage_profile = storage_profile + self.additional_capabilities = additional_capabilities + self.os_profile = os_profile + self.network_profile = network_profile + self.diagnostics_profile = diagnostics_profile + self.availability_set = availability_set + self.provisioning_state = None + self.instance_view = None + self.license_type = license_type + self.vm_id = None + self.resources = None + self.identity = identity + self.zones = zones diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set.py new file mode 100644 index 000000000000..bf02801f4561 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set.py @@ -0,0 +1,116 @@ +# 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 .resource import Resource + + +class VirtualMachineScaleSet(Resource): + """Describes a Virtual Machine Scale Set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param sku: The virtual machine scale set sku. + :type sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + :param plan: Specifies information about the marketplace image used to + create the virtual machine. This element is only used for marketplace + images. Before you can use a marketplace image from an API, you must + enable the image for programmatic use. In the Azure portal, find the + marketplace image that you want to use and then click **Want to deploy + programmatically, Get Started ->**. Enter any required information and + then click **Save**. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :param upgrade_policy: The upgrade policy. + :type upgrade_policy: ~azure.mgmt.compute.v2018_10_01.models.UpgradePolicy + :param virtual_machine_profile: The virtual machine profile. + :type virtual_machine_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVMProfile + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :param overprovision: Specifies whether the Virtual Machine Scale Set + should be overprovisioned. + :type overprovision: bool + :ivar unique_id: Specifies the ID which uniquely identifies a Virtual + Machine Scale Set. + :vartype unique_id: str + :param single_placement_group: When true this limits the scale set to a + single placement group, of max size 100 virtual machines. + :type single_placement_group: bool + :param zone_balance: Whether to force stictly even Virtual Machine + distribution cross x-zones in case there is zone outage. + :type zone_balance: bool + :param platform_fault_domain_count: Fault Domain count for each placement + group. + :type platform_fault_domain_count: int + :param identity: The identity of the virtual machine scale set, if + configured. + :type identity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIdentity + :param zones: The virtual machine scale set zones. + :type zones: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'unique_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'upgrade_policy': {'key': 'properties.upgradePolicy', 'type': 'UpgradePolicy'}, + 'virtual_machine_profile': {'key': 'properties.virtualMachineProfile', 'type': 'VirtualMachineScaleSetVMProfile'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'overprovision': {'key': 'properties.overprovision', 'type': 'bool'}, + 'unique_id': {'key': 'properties.uniqueId', 'type': 'str'}, + 'single_placement_group': {'key': 'properties.singlePlacementGroup', 'type': 'bool'}, + 'zone_balance': {'key': 'properties.zoneBalance', 'type': 'bool'}, + 'platform_fault_domain_count': {'key': 'properties.platformFaultDomainCount', 'type': 'int'}, + 'identity': {'key': 'identity', 'type': 'VirtualMachineScaleSetIdentity'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSet, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.plan = kwargs.get('plan', None) + self.upgrade_policy = kwargs.get('upgrade_policy', None) + self.virtual_machine_profile = kwargs.get('virtual_machine_profile', None) + self.provisioning_state = None + self.overprovision = kwargs.get('overprovision', None) + self.unique_id = None + self.single_placement_group = kwargs.get('single_placement_group', None) + self.zone_balance = kwargs.get('zone_balance', None) + self.platform_fault_domain_count = kwargs.get('platform_fault_domain_count', None) + self.identity = kwargs.get('identity', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_data_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_data_disk.py new file mode 100644 index 000000000000..6cbb2a72dc8a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_data_disk.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetDataDisk(Model): + """Describes a virtual machine scale set data disk. + + All required parameters must be populated in order to send to Azure. + + :param name: The disk name. + :type name: str + :param lun: Required. Specifies the logical unit number of the data disk. + This value is used to identify data disks within the VM and therefore must + be unique for each data disk attached to a VM. + :type lun: int + :param caching: Specifies the caching requirements.

    Possible + values are:

    **None**

    **ReadOnly**

    **ReadWrite** +

    Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param create_option: Required. The create option. Possible values + include: 'FromImage', 'Empty', 'Attach' + :type create_option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiskCreateOptionTypes + :param disk_size_gb: Specifies the size of an empty data disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

    This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetManagedDiskParameters + """ + + _validation = { + 'lun': {'required': True}, + 'create_option': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'lun': {'key': 'lun', 'type': 'int'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetDataDisk, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.lun = kwargs.get('lun', None) + self.caching = kwargs.get('caching', None) + self.write_accelerator_enabled = kwargs.get('write_accelerator_enabled', None) + self.create_option = kwargs.get('create_option', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.managed_disk = kwargs.get('managed_disk', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_data_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_data_disk_py3.py new file mode 100644 index 000000000000..0c630fa79251 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_data_disk_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetDataDisk(Model): + """Describes a virtual machine scale set data disk. + + All required parameters must be populated in order to send to Azure. + + :param name: The disk name. + :type name: str + :param lun: Required. Specifies the logical unit number of the data disk. + This value is used to identify data disks within the VM and therefore must + be unique for each data disk attached to a VM. + :type lun: int + :param caching: Specifies the caching requirements.

    Possible + values are:

    **None**

    **ReadOnly**

    **ReadWrite** +

    Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param create_option: Required. The create option. Possible values + include: 'FromImage', 'Empty', 'Attach' + :type create_option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiskCreateOptionTypes + :param disk_size_gb: Specifies the size of an empty data disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

    This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetManagedDiskParameters + """ + + _validation = { + 'lun': {'required': True}, + 'create_option': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'lun': {'key': 'lun', 'type': 'int'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, + } + + def __init__(self, *, lun: int, create_option, name: str=None, caching=None, write_accelerator_enabled: bool=None, disk_size_gb: int=None, managed_disk=None, **kwargs) -> None: + super(VirtualMachineScaleSetDataDisk, self).__init__(**kwargs) + self.name = name + self.lun = lun + self.caching = caching + self.write_accelerator_enabled = write_accelerator_enabled + self.create_option = create_option + self.disk_size_gb = disk_size_gb + self.managed_disk = managed_disk diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension.py new file mode 100644 index 000000000000..24a487547a2a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension.py @@ -0,0 +1,80 @@ +# 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 .sub_resource_read_only import SubResourceReadOnly + + +class VirtualMachineScaleSetExtension(SubResourceReadOnly): + """Describes a Virtual Machine Scale Set Extension. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :param name: The name of the extension. + :type name: str + :param force_update_tag: If a value is provided and is different from the + previous value, the extension handler will be forced to update even if the + extension configuration has not changed. + :type force_update_tag: str + :param publisher: The name of the extension handler publisher. + :type publisher: str + :param type: Specifies the type of the extension; an example is + "CustomScriptExtension". + :type type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param auto_upgrade_minor_version: Indicates whether the extension should + use a newer minor version if one is available at deployment time. Once + deployed, however, the extension will not upgrade minor versions unless + redeployed, even with this property set to true. + :type auto_upgrade_minor_version: bool + :param settings: Json formatted public settings for the extension. + :type settings: object + :param protected_settings: The extension can contain either + protectedSettings or protectedSettingsFromKeyVault or no protected + settings at all. + :type protected_settings: object + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'force_update_tag': {'key': 'properties.forceUpdateTag', 'type': 'str'}, + 'publisher': {'key': 'properties.publisher', 'type': 'str'}, + 'type': {'key': 'properties.type', 'type': 'str'}, + 'type_handler_version': {'key': 'properties.typeHandlerVersion', 'type': 'str'}, + 'auto_upgrade_minor_version': {'key': 'properties.autoUpgradeMinorVersion', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': 'object'}, + 'protected_settings': {'key': 'properties.protectedSettings', 'type': 'object'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetExtension, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.force_update_tag = kwargs.get('force_update_tag', None) + self.publisher = kwargs.get('publisher', None) + self.type = kwargs.get('type', None) + self.type_handler_version = kwargs.get('type_handler_version', None) + self.auto_upgrade_minor_version = kwargs.get('auto_upgrade_minor_version', None) + self.settings = kwargs.get('settings', None) + self.protected_settings = kwargs.get('protected_settings', None) + self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_paged.py new file mode 100644 index 000000000000..247e13f74c21 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualMachineScaleSetExtensionPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualMachineScaleSetExtension ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualMachineScaleSetExtension]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualMachineScaleSetExtensionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_profile.py new file mode 100644 index 000000000000..611016ad56a3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_profile.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetExtensionProfile(Model): + """Describes a virtual machine scale set extension profile. + + :param extensions: The virtual machine scale set child extension + resources. + :type extensions: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtension] + """ + + _attribute_map = { + 'extensions': {'key': 'extensions', 'type': '[VirtualMachineScaleSetExtension]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetExtensionProfile, self).__init__(**kwargs) + self.extensions = kwargs.get('extensions', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_profile_py3.py new file mode 100644 index 000000000000..967b0d6657ce --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_profile_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetExtensionProfile(Model): + """Describes a virtual machine scale set extension profile. + + :param extensions: The virtual machine scale set child extension + resources. + :type extensions: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtension] + """ + + _attribute_map = { + 'extensions': {'key': 'extensions', 'type': '[VirtualMachineScaleSetExtension]'}, + } + + def __init__(self, *, extensions=None, **kwargs) -> None: + super(VirtualMachineScaleSetExtensionProfile, self).__init__(**kwargs) + self.extensions = extensions diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_py3.py new file mode 100644 index 000000000000..27392a2de9fd --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_extension_py3.py @@ -0,0 +1,80 @@ +# 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 .sub_resource_read_only_py3 import SubResourceReadOnly + + +class VirtualMachineScaleSetExtension(SubResourceReadOnly): + """Describes a Virtual Machine Scale Set Extension. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :param name: The name of the extension. + :type name: str + :param force_update_tag: If a value is provided and is different from the + previous value, the extension handler will be forced to update even if the + extension configuration has not changed. + :type force_update_tag: str + :param publisher: The name of the extension handler publisher. + :type publisher: str + :param type: Specifies the type of the extension; an example is + "CustomScriptExtension". + :type type: str + :param type_handler_version: Specifies the version of the script handler. + :type type_handler_version: str + :param auto_upgrade_minor_version: Indicates whether the extension should + use a newer minor version if one is available at deployment time. Once + deployed, however, the extension will not upgrade minor versions unless + redeployed, even with this property set to true. + :type auto_upgrade_minor_version: bool + :param settings: Json formatted public settings for the extension. + :type settings: object + :param protected_settings: The extension can contain either + protectedSettings or protectedSettingsFromKeyVault or no protected + settings at all. + :type protected_settings: object + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'force_update_tag': {'key': 'properties.forceUpdateTag', 'type': 'str'}, + 'publisher': {'key': 'properties.publisher', 'type': 'str'}, + 'type': {'key': 'properties.type', 'type': 'str'}, + 'type_handler_version': {'key': 'properties.typeHandlerVersion', 'type': 'str'}, + 'auto_upgrade_minor_version': {'key': 'properties.autoUpgradeMinorVersion', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': 'object'}, + 'protected_settings': {'key': 'properties.protectedSettings', 'type': 'object'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, force_update_tag: str=None, publisher: str=None, type: str=None, type_handler_version: str=None, auto_upgrade_minor_version: bool=None, settings=None, protected_settings=None, **kwargs) -> None: + super(VirtualMachineScaleSetExtension, self).__init__(**kwargs) + self.name = name + self.force_update_tag = force_update_tag + self.publisher = publisher + self.type = type + self.type_handler_version = type_handler_version + self.auto_upgrade_minor_version = auto_upgrade_minor_version + self.settings = settings + self.protected_settings = protected_settings + self.provisioning_state = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity.py new file mode 100644 index 000000000000..18f709698a79 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetIdentity(Model): + """Identity for the virtual machine scale set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of virtual machine scale set + identity. This property will only be provided for a system assigned + identity. + :vartype principal_id: str + :ivar tenant_id: The tenant id associated with the virtual machine scale + set. This property will only be provided for a system assigned identity. + :vartype tenant_id: str + :param type: The type of identity used for the virtual machine scale set. + The type 'SystemAssigned, UserAssigned' includes both an implicitly + created identity and a set of user assigned identities. The type 'None' + will remove any identities from the virtual machine scale set. Possible + values include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, + UserAssigned', 'None' + :type type: str or + ~azure.mgmt.compute.v2018_10_01.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated + with the virtual machine scale set. The user identity dictionary key + references will be ARM resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue}'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = kwargs.get('type', None) + self.user_assigned_identities = kwargs.get('user_assigned_identities', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_py3.py new file mode 100644 index 000000000000..e390dce4feb3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetIdentity(Model): + """Identity for the virtual machine scale set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of virtual machine scale set + identity. This property will only be provided for a system assigned + identity. + :vartype principal_id: str + :ivar tenant_id: The tenant id associated with the virtual machine scale + set. This property will only be provided for a system assigned identity. + :vartype tenant_id: str + :param type: The type of identity used for the virtual machine scale set. + The type 'SystemAssigned, UserAssigned' includes both an implicitly + created identity and a set of user assigned identities. The type 'None' + will remove any identities from the virtual machine scale set. Possible + values include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, + UserAssigned', 'None' + :type type: str or + ~azure.mgmt.compute.v2018_10_01.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated + with the virtual machine scale set. The user identity dictionary key + references will be ARM resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue}'}, + } + + def __init__(self, *, type=None, user_assigned_identities=None, **kwargs) -> None: + super(VirtualMachineScaleSetIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = type + self.user_assigned_identities = user_assigned_identities diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_user_assigned_identities_value.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_user_assigned_identities_value.py new file mode 100644 index 000000000000..e362323ac96e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_user_assigned_identities_value.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue(Model): + """VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client id of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_user_assigned_identities_value_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_user_assigned_identities_value_py3.py new file mode 100644 index 000000000000..2839c26040cc --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_identity_user_assigned_identities_value_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue(Model): + """VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client id of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view.py new file mode 100644 index 000000000000..2c0af6103a77 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetInstanceView(Model): + """The instance view of a virtual machine scale set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar virtual_machine: The instance view status summary for the virtual + machine scale set. + :vartype virtual_machine: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetInstanceViewStatusesSummary + :ivar extensions: The extensions information. + :vartype extensions: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVMExtensionsSummary] + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _validation = { + 'virtual_machine': {'readonly': True}, + 'extensions': {'readonly': True}, + } + + _attribute_map = { + 'virtual_machine': {'key': 'virtualMachine', 'type': 'VirtualMachineScaleSetInstanceViewStatusesSummary'}, + 'extensions': {'key': 'extensions', 'type': '[VirtualMachineScaleSetVMExtensionsSummary]'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetInstanceView, self).__init__(**kwargs) + self.virtual_machine = None + self.extensions = None + self.statuses = kwargs.get('statuses', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_py3.py new file mode 100644 index 000000000000..6e22ddcdb86d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetInstanceView(Model): + """The instance view of a virtual machine scale set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar virtual_machine: The instance view status summary for the virtual + machine scale set. + :vartype virtual_machine: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetInstanceViewStatusesSummary + :ivar extensions: The extensions information. + :vartype extensions: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVMExtensionsSummary] + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + """ + + _validation = { + 'virtual_machine': {'readonly': True}, + 'extensions': {'readonly': True}, + } + + _attribute_map = { + 'virtual_machine': {'key': 'virtualMachine', 'type': 'VirtualMachineScaleSetInstanceViewStatusesSummary'}, + 'extensions': {'key': 'extensions', 'type': '[VirtualMachineScaleSetVMExtensionsSummary]'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + } + + def __init__(self, *, statuses=None, **kwargs) -> None: + super(VirtualMachineScaleSetInstanceView, self).__init__(**kwargs) + self.virtual_machine = None + self.extensions = None + self.statuses = statuses diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_statuses_summary.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_statuses_summary.py new file mode 100644 index 000000000000..164d1d6ca8b6 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_statuses_summary.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetInstanceViewStatusesSummary(Model): + """Instance view statuses summary for virtual machines of a virtual machine + scale set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar statuses_summary: The extensions information. + :vartype statuses_summary: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineStatusCodeCount] + """ + + _validation = { + 'statuses_summary': {'readonly': True}, + } + + _attribute_map = { + 'statuses_summary': {'key': 'statusesSummary', 'type': '[VirtualMachineStatusCodeCount]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetInstanceViewStatusesSummary, self).__init__(**kwargs) + self.statuses_summary = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_statuses_summary_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_statuses_summary_py3.py new file mode 100644 index 000000000000..47ed18bff23b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_instance_view_statuses_summary_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetInstanceViewStatusesSummary(Model): + """Instance view statuses summary for virtual machines of a virtual machine + scale set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar statuses_summary: The extensions information. + :vartype statuses_summary: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineStatusCodeCount] + """ + + _validation = { + 'statuses_summary': {'readonly': True}, + } + + _attribute_map = { + 'statuses_summary': {'key': 'statusesSummary', 'type': '[VirtualMachineStatusCodeCount]'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualMachineScaleSetInstanceViewStatusesSummary, self).__init__(**kwargs) + self.statuses_summary = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_configuration.py new file mode 100644 index 000000000000..758f5aa49d89 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_configuration.py @@ -0,0 +1,89 @@ +# 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 .sub_resource import SubResource + + +class VirtualMachineScaleSetIPConfiguration(SubResource): + """Describes a virtual machine scale set network profile's IP configuration. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource Id + :type id: str + :param name: Required. The IP configuration name. + :type name: str + :param subnet: Specifies the identifier of the subnet. + :type subnet: ~azure.mgmt.compute.v2018_10_01.models.ApiEntityReference + :param primary: Specifies the primary network interface in case the + virtual machine has more than 1 network interface. + :type primary: bool + :param public_ip_address_configuration: The publicIPAddressConfiguration. + :type public_ip_address_configuration: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetPublicIPAddressConfiguration + :param private_ip_address_version: Available from Api-Version 2017-03-30 + onwards, it represents whether the specific ipconfiguration is IPv4 or + IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. + Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.compute.v2018_10_01.models.IPVersion + :param application_gateway_backend_address_pools: Specifies an array of + references to backend address pools of application gateways. A scale set + can reference backend address pools of multiple application gateways. + Multiple scale sets cannot use the same application gateway. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param application_security_groups: Specifies an array of references to + application security group. + :type application_security_groups: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param load_balancer_backend_address_pools: Specifies an array of + references to backend address pools of load balancers. A scale set can + reference backend address pools of one public and one internal load + balancer. Multiple scale sets cannot use the same load balancer. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param load_balancer_inbound_nat_pools: Specifies an array of references + to inbound Nat pools of the load balancers. A scale set can reference + inbound nat pools of one public and one internal load balancer. Multiple + scale sets cannot use the same load balancer + :type load_balancer_inbound_nat_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'ApiEntityReference'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address_configuration': {'key': 'properties.publicIPAddressConfiguration', 'type': 'VirtualMachineScaleSetPublicIPAddressConfiguration'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[SubResource]'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[SubResource]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[SubResource]'}, + 'load_balancer_inbound_nat_pools': {'key': 'properties.loadBalancerInboundNatPools', 'type': '[SubResource]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetIPConfiguration, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.subnet = kwargs.get('subnet', None) + self.primary = kwargs.get('primary', None) + self.public_ip_address_configuration = kwargs.get('public_ip_address_configuration', None) + self.private_ip_address_version = kwargs.get('private_ip_address_version', None) + self.application_gateway_backend_address_pools = kwargs.get('application_gateway_backend_address_pools', None) + self.application_security_groups = kwargs.get('application_security_groups', None) + self.load_balancer_backend_address_pools = kwargs.get('load_balancer_backend_address_pools', None) + self.load_balancer_inbound_nat_pools = kwargs.get('load_balancer_inbound_nat_pools', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_configuration_py3.py new file mode 100644 index 000000000000..7108bfece974 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_configuration_py3.py @@ -0,0 +1,89 @@ +# 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 .sub_resource_py3 import SubResource + + +class VirtualMachineScaleSetIPConfiguration(SubResource): + """Describes a virtual machine scale set network profile's IP configuration. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource Id + :type id: str + :param name: Required. The IP configuration name. + :type name: str + :param subnet: Specifies the identifier of the subnet. + :type subnet: ~azure.mgmt.compute.v2018_10_01.models.ApiEntityReference + :param primary: Specifies the primary network interface in case the + virtual machine has more than 1 network interface. + :type primary: bool + :param public_ip_address_configuration: The publicIPAddressConfiguration. + :type public_ip_address_configuration: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetPublicIPAddressConfiguration + :param private_ip_address_version: Available from Api-Version 2017-03-30 + onwards, it represents whether the specific ipconfiguration is IPv4 or + IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. + Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.compute.v2018_10_01.models.IPVersion + :param application_gateway_backend_address_pools: Specifies an array of + references to backend address pools of application gateways. A scale set + can reference backend address pools of multiple application gateways. + Multiple scale sets cannot use the same application gateway. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param application_security_groups: Specifies an array of references to + application security group. + :type application_security_groups: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param load_balancer_backend_address_pools: Specifies an array of + references to backend address pools of load balancers. A scale set can + reference backend address pools of one public and one internal load + balancer. Multiple scale sets cannot use the same load balancer. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param load_balancer_inbound_nat_pools: Specifies an array of references + to inbound Nat pools of the load balancers. A scale set can reference + inbound nat pools of one public and one internal load balancer. Multiple + scale sets cannot use the same load balancer + :type load_balancer_inbound_nat_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'ApiEntityReference'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address_configuration': {'key': 'properties.publicIPAddressConfiguration', 'type': 'VirtualMachineScaleSetPublicIPAddressConfiguration'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[SubResource]'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[SubResource]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[SubResource]'}, + 'load_balancer_inbound_nat_pools': {'key': 'properties.loadBalancerInboundNatPools', 'type': '[SubResource]'}, + } + + def __init__(self, *, name: str, id: str=None, subnet=None, primary: bool=None, public_ip_address_configuration=None, private_ip_address_version=None, application_gateway_backend_address_pools=None, application_security_groups=None, load_balancer_backend_address_pools=None, load_balancer_inbound_nat_pools=None, **kwargs) -> None: + super(VirtualMachineScaleSetIPConfiguration, self).__init__(id=id, **kwargs) + self.name = name + self.subnet = subnet + self.primary = primary + self.public_ip_address_configuration = public_ip_address_configuration + self.private_ip_address_version = private_ip_address_version + self.application_gateway_backend_address_pools = application_gateway_backend_address_pools + self.application_security_groups = application_security_groups + self.load_balancer_backend_address_pools = load_balancer_backend_address_pools + self.load_balancer_inbound_nat_pools = load_balancer_inbound_nat_pools diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_tag.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_tag.py new file mode 100644 index 000000000000..36b70260d646 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_tag.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetIpTag(Model): + """Contains the IP tag associated with the public IP address. + + :param ip_tag_type: IP tag type. Example: FirstPartyUsage. + :type ip_tag_type: str + :param tag: IP tag associated with the public IP. Example: SQL, Storage + etc. + :type tag: str + """ + + _attribute_map = { + 'ip_tag_type': {'key': 'ipTagType', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetIpTag, self).__init__(**kwargs) + self.ip_tag_type = kwargs.get('ip_tag_type', None) + self.tag = kwargs.get('tag', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_tag_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_tag_py3.py new file mode 100644 index 000000000000..aaf788c9d772 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_ip_tag_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetIpTag(Model): + """Contains the IP tag associated with the public IP address. + + :param ip_tag_type: IP tag type. Example: FirstPartyUsage. + :type ip_tag_type: str + :param tag: IP tag associated with the public IP. Example: SQL, Storage + etc. + :type tag: str + """ + + _attribute_map = { + 'ip_tag_type': {'key': 'ipTagType', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, *, ip_tag_type: str=None, tag: str=None, **kwargs) -> None: + super(VirtualMachineScaleSetIpTag, self).__init__(**kwargs) + self.ip_tag_type = ip_tag_type + self.tag = tag diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_managed_disk_parameters.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_managed_disk_parameters.py new file mode 100644 index 000000000000..328a08a19b7c --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_managed_disk_parameters.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetManagedDiskParameters(Model): + """Describes the parameters of a ScaleSet managed disk. + + :param storage_account_type: Specifies the storage account type for the + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type storage_account_type: str or + ~azure.mgmt.compute.v2018_10_01.models.StorageAccountTypes + """ + + _attribute_map = { + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetManagedDiskParameters, self).__init__(**kwargs) + self.storage_account_type = kwargs.get('storage_account_type', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_managed_disk_parameters_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_managed_disk_parameters_py3.py new file mode 100644 index 000000000000..d6ef426e05f9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_managed_disk_parameters_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetManagedDiskParameters(Model): + """Describes the parameters of a ScaleSet managed disk. + + :param storage_account_type: Specifies the storage account type for the + managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it + cannot be used with OS Disk. Possible values include: 'Standard_LRS', + 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS' + :type storage_account_type: str or + ~azure.mgmt.compute.v2018_10_01.models.StorageAccountTypes + """ + + _attribute_map = { + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + } + + def __init__(self, *, storage_account_type=None, **kwargs) -> None: + super(VirtualMachineScaleSetManagedDiskParameters, self).__init__(**kwargs) + self.storage_account_type = storage_account_type diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration.py new file mode 100644 index 000000000000..8ce739305c35 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class VirtualMachineScaleSetNetworkConfiguration(SubResource): + """Describes a virtual machine scale set network profile's network + configurations. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource Id + :type id: str + :param name: Required. The network configuration name. + :type name: str + :param primary: Specifies the primary network interface in case the + virtual machine has more than 1 network interface. + :type primary: bool + :param enable_accelerated_networking: Specifies whether the network + interface is accelerated networking-enabled. + :type enable_accelerated_networking: bool + :param network_security_group: The network security group. + :type network_security_group: + ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param dns_settings: The dns settings to be applied on the network + interfaces. + :type dns_settings: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetNetworkConfigurationDnsSettings + :param ip_configurations: Required. Specifies the IP configurations of the + network interface. + :type ip_configurations: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIPConfiguration] + :param enable_ip_forwarding: Whether IP forwarding enabled on this NIC. + :type enable_ip_forwarding: bool + """ + + _validation = { + 'name': {'required': True}, + 'ip_configurations': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'SubResource'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetNetworkConfigurationDnsSettings'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualMachineScaleSetIPConfiguration]'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetNetworkConfiguration, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.primary = kwargs.get('primary', None) + self.enable_accelerated_networking = kwargs.get('enable_accelerated_networking', None) + self.network_security_group = kwargs.get('network_security_group', None) + self.dns_settings = kwargs.get('dns_settings', None) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.enable_ip_forwarding = kwargs.get('enable_ip_forwarding', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_dns_settings.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_dns_settings.py new file mode 100644 index 000000000000..04e1c619383f --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_dns_settings.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetNetworkConfigurationDnsSettings(Model): + """Describes a virtual machines scale sets network configuration's DNS + settings. + + :param dns_servers: List of DNS servers IP addresses + :type dns_servers: list[str] + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetNetworkConfigurationDnsSettings, self).__init__(**kwargs) + self.dns_servers = kwargs.get('dns_servers', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_dns_settings_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_dns_settings_py3.py new file mode 100644 index 000000000000..5607f74d3c6a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_dns_settings_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetNetworkConfigurationDnsSettings(Model): + """Describes a virtual machines scale sets network configuration's DNS + settings. + + :param dns_servers: List of DNS servers IP addresses + :type dns_servers: list[str] + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + } + + def __init__(self, *, dns_servers=None, **kwargs) -> None: + super(VirtualMachineScaleSetNetworkConfigurationDnsSettings, self).__init__(**kwargs) + self.dns_servers = dns_servers diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_py3.py new file mode 100644 index 000000000000..ffc2b196eb68 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_configuration_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class VirtualMachineScaleSetNetworkConfiguration(SubResource): + """Describes a virtual machine scale set network profile's network + configurations. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource Id + :type id: str + :param name: Required. The network configuration name. + :type name: str + :param primary: Specifies the primary network interface in case the + virtual machine has more than 1 network interface. + :type primary: bool + :param enable_accelerated_networking: Specifies whether the network + interface is accelerated networking-enabled. + :type enable_accelerated_networking: bool + :param network_security_group: The network security group. + :type network_security_group: + ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param dns_settings: The dns settings to be applied on the network + interfaces. + :type dns_settings: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetNetworkConfigurationDnsSettings + :param ip_configurations: Required. Specifies the IP configurations of the + network interface. + :type ip_configurations: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIPConfiguration] + :param enable_ip_forwarding: Whether IP forwarding enabled on this NIC. + :type enable_ip_forwarding: bool + """ + + _validation = { + 'name': {'required': True}, + 'ip_configurations': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'SubResource'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetNetworkConfigurationDnsSettings'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualMachineScaleSetIPConfiguration]'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + } + + def __init__(self, *, name: str, ip_configurations, id: str=None, primary: bool=None, enable_accelerated_networking: bool=None, network_security_group=None, dns_settings=None, enable_ip_forwarding: bool=None, **kwargs) -> None: + super(VirtualMachineScaleSetNetworkConfiguration, self).__init__(id=id, **kwargs) + self.name = name + self.primary = primary + self.enable_accelerated_networking = enable_accelerated_networking + self.network_security_group = network_security_group + self.dns_settings = dns_settings + self.ip_configurations = ip_configurations + self.enable_ip_forwarding = enable_ip_forwarding diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_profile.py new file mode 100644 index 000000000000..cbfade34bb3c --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_profile.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetNetworkProfile(Model): + """Describes a virtual machine scale set network profile. + + :param health_probe: A reference to a load balancer probe used to + determine the health of an instance in the virtual machine scale set. The + reference will be in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'. + :type health_probe: + ~azure.mgmt.compute.v2018_10_01.models.ApiEntityReference + :param network_interface_configurations: The list of network + configurations. + :type network_interface_configurations: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetNetworkConfiguration] + """ + + _attribute_map = { + 'health_probe': {'key': 'healthProbe', 'type': 'ApiEntityReference'}, + 'network_interface_configurations': {'key': 'networkInterfaceConfigurations', 'type': '[VirtualMachineScaleSetNetworkConfiguration]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetNetworkProfile, self).__init__(**kwargs) + self.health_probe = kwargs.get('health_probe', None) + self.network_interface_configurations = kwargs.get('network_interface_configurations', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_profile_py3.py new file mode 100644 index 000000000000..521872c86f5a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_network_profile_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetNetworkProfile(Model): + """Describes a virtual machine scale set network profile. + + :param health_probe: A reference to a load balancer probe used to + determine the health of an instance in the virtual machine scale set. The + reference will be in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'. + :type health_probe: + ~azure.mgmt.compute.v2018_10_01.models.ApiEntityReference + :param network_interface_configurations: The list of network + configurations. + :type network_interface_configurations: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetNetworkConfiguration] + """ + + _attribute_map = { + 'health_probe': {'key': 'healthProbe', 'type': 'ApiEntityReference'}, + 'network_interface_configurations': {'key': 'networkInterfaceConfigurations', 'type': '[VirtualMachineScaleSetNetworkConfiguration]'}, + } + + def __init__(self, *, health_probe=None, network_interface_configurations=None, **kwargs) -> None: + super(VirtualMachineScaleSetNetworkProfile, self).__init__(**kwargs) + self.health_probe = health_probe + self.network_interface_configurations = network_interface_configurations diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_disk.py new file mode 100644 index 000000000000..253a1d87f90f --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_disk.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetOSDisk(Model): + """Describes a virtual machine scale set operating system disk. + + All required parameters must be populated in order to send to Azure. + + :param name: The disk name. + :type name: str + :param caching: Specifies the caching requirements.

    Possible + values are:

    **None**

    **ReadOnly**

    **ReadWrite** +

    Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param create_option: Required. Specifies how the virtual machines in the + scale set should be created.

    The only allowed value is: + **FromImage** \\u2013 This value is used when you are using an image to + create the virtual machine. If you are using a platform image, you also + use the imageReference element described above. If you are using a + marketplace image, you also use the plan element previously described. + Possible values include: 'FromImage', 'Empty', 'Attach' + :type create_option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiskCreateOptionTypes + :param diff_disk_settings: Specifies the differencing Disk Settings for + the operating system disk used by the virtual machine scale set. + :type diff_disk_settings: + ~azure.mgmt.compute.v2018_10_01.models.DiffDiskSettings + :param disk_size_gb: Specifies the size of the operating system disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

    This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param os_type: This property allows you to specify the type of the OS + that is included in the disk if creating a VM from user-image or a + specialized VHD.

    Possible values are:

    **Windows** +

    **Linux**. Possible values include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param image: Specifies information about the unmanaged user image to base + the scale set on. + :type image: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param vhd_containers: Specifies the container urls that are used to store + operating system disks for the scale set. + :type vhd_containers: list[str] + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetManagedDiskParameters + """ + + _validation = { + 'create_option': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'diff_disk_settings': {'key': 'diffDiskSettings', 'type': 'DiffDiskSettings'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, + 'vhd_containers': {'key': 'vhdContainers', 'type': '[str]'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetOSDisk, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.caching = kwargs.get('caching', None) + self.write_accelerator_enabled = kwargs.get('write_accelerator_enabled', None) + self.create_option = kwargs.get('create_option', None) + self.diff_disk_settings = kwargs.get('diff_disk_settings', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.os_type = kwargs.get('os_type', None) + self.image = kwargs.get('image', None) + self.vhd_containers = kwargs.get('vhd_containers', None) + self.managed_disk = kwargs.get('managed_disk', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_disk_py3.py new file mode 100644 index 000000000000..ce5cc3da79b4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_disk_py3.py @@ -0,0 +1,92 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetOSDisk(Model): + """Describes a virtual machine scale set operating system disk. + + All required parameters must be populated in order to send to Azure. + + :param name: The disk name. + :type name: str + :param caching: Specifies the caching requirements.

    Possible + values are:

    **None**

    **ReadOnly**

    **ReadWrite** +

    Default: **None for Standard storage. ReadOnly for Premium + storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param create_option: Required. Specifies how the virtual machines in the + scale set should be created.

    The only allowed value is: + **FromImage** \\u2013 This value is used when you are using an image to + create the virtual machine. If you are using a platform image, you also + use the imageReference element described above. If you are using a + marketplace image, you also use the plan element previously described. + Possible values include: 'FromImage', 'Empty', 'Attach' + :type create_option: str or + ~azure.mgmt.compute.v2018_10_01.models.DiskCreateOptionTypes + :param diff_disk_settings: Specifies the differencing Disk Settings for + the operating system disk used by the virtual machine scale set. + :type diff_disk_settings: + ~azure.mgmt.compute.v2018_10_01.models.DiffDiskSettings + :param disk_size_gb: Specifies the size of the operating system disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

    This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param os_type: This property allows you to specify the type of the OS + that is included in the disk if creating a VM from user-image or a + specialized VHD.

    Possible values are:

    **Windows** +

    **Linux**. Possible values include: 'Windows', 'Linux' + :type os_type: str or + ~azure.mgmt.compute.v2018_10_01.models.OperatingSystemTypes + :param image: Specifies information about the unmanaged user image to base + the scale set on. + :type image: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param vhd_containers: Specifies the container urls that are used to store + operating system disks for the scale set. + :type vhd_containers: list[str] + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetManagedDiskParameters + """ + + _validation = { + 'create_option': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'create_option': {'key': 'createOption', 'type': 'str'}, + 'diff_disk_settings': {'key': 'diffDiskSettings', 'type': 'DiffDiskSettings'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'os_type': {'key': 'osType', 'type': 'OperatingSystemTypes'}, + 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, + 'vhd_containers': {'key': 'vhdContainers', 'type': '[str]'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, + } + + def __init__(self, *, create_option, name: str=None, caching=None, write_accelerator_enabled: bool=None, diff_disk_settings=None, disk_size_gb: int=None, os_type=None, image=None, vhd_containers=None, managed_disk=None, **kwargs) -> None: + super(VirtualMachineScaleSetOSDisk, self).__init__(**kwargs) + self.name = name + self.caching = caching + self.write_accelerator_enabled = write_accelerator_enabled + self.create_option = create_option + self.diff_disk_settings = diff_disk_settings + self.disk_size_gb = disk_size_gb + self.os_type = os_type + self.image = image + self.vhd_containers = vhd_containers + self.managed_disk = managed_disk diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_profile.py new file mode 100644 index 000000000000..f1682daccc25 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_profile.py @@ -0,0 +1,97 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetOSProfile(Model): + """Describes a virtual machine scale set OS profile. + + :param computer_name_prefix: Specifies the computer name prefix for all of + the virtual machines in the scale set. Computer name prefixes must be 1 to + 15 characters long. + :type computer_name_prefix: str + :param admin_username: Specifies the name of the administrator account. +

    **Windows-only restriction:** Cannot end in "."

    + **Disallowed values:** "administrator", "admin", "user", "user1", "test", + "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", + "admin2", "aspnet", "backup", "console", "david", "guest", "john", + "owner", "root", "server", "sql", "support", "support_388945a0", "sys", + "test2", "test3", "user4", "user5".

    **Minimum-length (Linux):** 1 + character

    **Max-length (Linux):** 64 characters

    + **Max-length (Windows):** 20 characters

  • For root access to + the Linux VM, see [Using root privileges on Linux virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • + For a list of built-in system users on Linux that should not be used in + this field, see [Selecting User Names for Linux on + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) + :type admin_username: str + :param admin_password: Specifies the password of the administrator + account.

    **Minimum-length (Windows):** 8 characters

    + **Minimum-length (Linux):** 6 characters

    **Max-length + (Windows):** 123 characters

    **Max-length (Linux):** 72 characters +

    **Complexity requirements:** 3 out of 4 conditions below need to + be fulfilled
    Has lower characters
    Has upper characters
    Has a + digit
    Has a special character (Regex match [\\W_])

    + **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", + "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", + "iloveyou!"

    For resetting the password, see [How to reset the + Remote Desktop service or its login password in a Windows + VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    For resetting root password, see [Manage users, SSH, and check or + repair disks on Azure Linux VMs using the VMAccess + Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password) + :type admin_password: str + :param custom_data: Specifies a base-64 encoded string of custom data. The + base-64 encoded string is decoded to a binary array that is saved as a + file on the Virtual Machine. The maximum length of the binary array is + 65535 bytes.

    For using cloud-init for your VM, see [Using + cloud-init to customize a Linux VM during + creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) + :type custom_data: str + :param windows_configuration: Specifies Windows operating system settings + on the virtual machine. + :type windows_configuration: + ~azure.mgmt.compute.v2018_10_01.models.WindowsConfiguration + :param linux_configuration: Specifies the Linux operating system settings + on the virtual machine.

    For a list of supported Linux + distributions, see [Linux on Azure-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) +

    For running non-endorsed distributions, see [Information for + Non-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). + :type linux_configuration: + ~azure.mgmt.compute.v2018_10_01.models.LinuxConfiguration + :param secrets: Specifies set of certificates that should be installed + onto the virtual machines in the scale set. + :type secrets: + list[~azure.mgmt.compute.v2018_10_01.models.VaultSecretGroup] + """ + + _attribute_map = { + 'computer_name_prefix': {'key': 'computerNamePrefix', 'type': 'str'}, + 'admin_username': {'key': 'adminUsername', 'type': 'str'}, + 'admin_password': {'key': 'adminPassword', 'type': 'str'}, + 'custom_data': {'key': 'customData', 'type': 'str'}, + 'windows_configuration': {'key': 'windowsConfiguration', 'type': 'WindowsConfiguration'}, + 'linux_configuration': {'key': 'linuxConfiguration', 'type': 'LinuxConfiguration'}, + 'secrets': {'key': 'secrets', 'type': '[VaultSecretGroup]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetOSProfile, self).__init__(**kwargs) + self.computer_name_prefix = kwargs.get('computer_name_prefix', None) + self.admin_username = kwargs.get('admin_username', None) + self.admin_password = kwargs.get('admin_password', None) + self.custom_data = kwargs.get('custom_data', None) + self.windows_configuration = kwargs.get('windows_configuration', None) + self.linux_configuration = kwargs.get('linux_configuration', None) + self.secrets = kwargs.get('secrets', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_profile_py3.py new file mode 100644 index 000000000000..d60486034c60 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_os_profile_py3.py @@ -0,0 +1,97 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetOSProfile(Model): + """Describes a virtual machine scale set OS profile. + + :param computer_name_prefix: Specifies the computer name prefix for all of + the virtual machines in the scale set. Computer name prefixes must be 1 to + 15 characters long. + :type computer_name_prefix: str + :param admin_username: Specifies the name of the administrator account. +

    **Windows-only restriction:** Cannot end in "."

    + **Disallowed values:** "administrator", "admin", "user", "user1", "test", + "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", + "admin2", "aspnet", "backup", "console", "david", "guest", "john", + "owner", "root", "server", "sql", "support", "support_388945a0", "sys", + "test2", "test3", "user4", "user5".

    **Minimum-length (Linux):** 1 + character

    **Max-length (Linux):** 64 characters

    + **Max-length (Windows):** 20 characters

  • For root access to + the Linux VM, see [Using root privileges on Linux virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • + For a list of built-in system users on Linux that should not be used in + this field, see [Selecting User Names for Linux on + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) + :type admin_username: str + :param admin_password: Specifies the password of the administrator + account.

    **Minimum-length (Windows):** 8 characters

    + **Minimum-length (Linux):** 6 characters

    **Max-length + (Windows):** 123 characters

    **Max-length (Linux):** 72 characters +

    **Complexity requirements:** 3 out of 4 conditions below need to + be fulfilled
    Has lower characters
    Has upper characters
    Has a + digit
    Has a special character (Regex match [\\W_])

    + **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", + "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", + "iloveyou!"

    For resetting the password, see [How to reset the + Remote Desktop service or its login password in a Windows + VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    For resetting root password, see [Manage users, SSH, and check or + repair disks on Azure Linux VMs using the VMAccess + Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password) + :type admin_password: str + :param custom_data: Specifies a base-64 encoded string of custom data. The + base-64 encoded string is decoded to a binary array that is saved as a + file on the Virtual Machine. The maximum length of the binary array is + 65535 bytes.

    For using cloud-init for your VM, see [Using + cloud-init to customize a Linux VM during + creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) + :type custom_data: str + :param windows_configuration: Specifies Windows operating system settings + on the virtual machine. + :type windows_configuration: + ~azure.mgmt.compute.v2018_10_01.models.WindowsConfiguration + :param linux_configuration: Specifies the Linux operating system settings + on the virtual machine.

    For a list of supported Linux + distributions, see [Linux on Azure-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) +

    For running non-endorsed distributions, see [Information for + Non-Endorsed + Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). + :type linux_configuration: + ~azure.mgmt.compute.v2018_10_01.models.LinuxConfiguration + :param secrets: Specifies set of certificates that should be installed + onto the virtual machines in the scale set. + :type secrets: + list[~azure.mgmt.compute.v2018_10_01.models.VaultSecretGroup] + """ + + _attribute_map = { + 'computer_name_prefix': {'key': 'computerNamePrefix', 'type': 'str'}, + 'admin_username': {'key': 'adminUsername', 'type': 'str'}, + 'admin_password': {'key': 'adminPassword', 'type': 'str'}, + 'custom_data': {'key': 'customData', 'type': 'str'}, + 'windows_configuration': {'key': 'windowsConfiguration', 'type': 'WindowsConfiguration'}, + 'linux_configuration': {'key': 'linuxConfiguration', 'type': 'LinuxConfiguration'}, + 'secrets': {'key': 'secrets', 'type': '[VaultSecretGroup]'}, + } + + def __init__(self, *, computer_name_prefix: str=None, admin_username: str=None, admin_password: str=None, custom_data: str=None, windows_configuration=None, linux_configuration=None, secrets=None, **kwargs) -> None: + super(VirtualMachineScaleSetOSProfile, self).__init__(**kwargs) + self.computer_name_prefix = computer_name_prefix + self.admin_username = admin_username + self.admin_password = admin_password + self.custom_data = custom_data + self.windows_configuration = windows_configuration + self.linux_configuration = linux_configuration + self.secrets = secrets diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_paged.py new file mode 100644 index 000000000000..b4193df0b191 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualMachineScaleSetPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualMachineScaleSet ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualMachineScaleSet]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualMachineScaleSetPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration.py new file mode 100644 index 000000000000..f7a13f10c6dc --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetPublicIPAddressConfiguration(Model): + """Describes a virtual machines scale set IP Configuration's PublicIPAddress + configuration. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The publicIP address configuration name. + :type name: str + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :param dns_settings: The dns settings to be applied on the publicIP + addresses . + :type dns_settings: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings + :param ip_tags: The list of IP tags associated with the public IP address. + :type ip_tags: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIpTag] + :param public_ip_prefix: The PublicIPPrefix from which to allocate + publicIP addresses. + :type public_ip_prefix: ~azure.mgmt.compute.v2018_10_01.models.SubResource + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[VirtualMachineScaleSetIpTag]'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetPublicIPAddressConfiguration, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.dns_settings = kwargs.get('dns_settings', None) + self.ip_tags = kwargs.get('ip_tags', None) + self.public_ip_prefix = kwargs.get('public_ip_prefix', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_dns_settings.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_dns_settings.py new file mode 100644 index 000000000000..2fe562244372 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_dns_settings.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings(Model): + """Describes a virtual machines scale sets network configuration's DNS + settings. + + All required parameters must be populated in order to send to Azure. + + :param domain_name_label: Required. The Domain name label.The + concatenation of the domain name label and vm index will be the domain + name labels of the PublicIPAddress resources that will be created + :type domain_name_label: str + """ + + _validation = { + 'domain_name_label': {'required': True}, + } + + _attribute_map = { + 'domain_name_label': {'key': 'domainNameLabel', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings, self).__init__(**kwargs) + self.domain_name_label = kwargs.get('domain_name_label', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_dns_settings_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_dns_settings_py3.py new file mode 100644 index 000000000000..326a36708ff4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_dns_settings_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings(Model): + """Describes a virtual machines scale sets network configuration's DNS + settings. + + All required parameters must be populated in order to send to Azure. + + :param domain_name_label: Required. The Domain name label.The + concatenation of the domain name label and vm index will be the domain + name labels of the PublicIPAddress resources that will be created + :type domain_name_label: str + """ + + _validation = { + 'domain_name_label': {'required': True}, + } + + _attribute_map = { + 'domain_name_label': {'key': 'domainNameLabel', 'type': 'str'}, + } + + def __init__(self, *, domain_name_label: str, **kwargs) -> None: + super(VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings, self).__init__(**kwargs) + self.domain_name_label = domain_name_label diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_py3.py new file mode 100644 index 000000000000..23a034d99222 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_public_ip_address_configuration_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetPublicIPAddressConfiguration(Model): + """Describes a virtual machines scale set IP Configuration's PublicIPAddress + configuration. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The publicIP address configuration name. + :type name: str + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :param dns_settings: The dns settings to be applied on the publicIP + addresses . + :type dns_settings: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings + :param ip_tags: The list of IP tags associated with the public IP address. + :type ip_tags: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIpTag] + :param public_ip_prefix: The PublicIPPrefix from which to allocate + publicIP addresses. + :type public_ip_prefix: ~azure.mgmt.compute.v2018_10_01.models.SubResource + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[VirtualMachineScaleSetIpTag]'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + } + + def __init__(self, *, name: str, idle_timeout_in_minutes: int=None, dns_settings=None, ip_tags=None, public_ip_prefix=None, **kwargs) -> None: + super(VirtualMachineScaleSetPublicIPAddressConfiguration, self).__init__(**kwargs) + self.name = name + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.dns_settings = dns_settings + self.ip_tags = ip_tags + self.public_ip_prefix = public_ip_prefix diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_py3.py new file mode 100644 index 000000000000..1db294839a1b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_py3.py @@ -0,0 +1,116 @@ +# 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 .resource_py3 import Resource + + +class VirtualMachineScaleSet(Resource): + """Describes a Virtual Machine Scale Set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :param sku: The virtual machine scale set sku. + :type sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + :param plan: Specifies information about the marketplace image used to + create the virtual machine. This element is only used for marketplace + images. Before you can use a marketplace image from an API, you must + enable the image for programmatic use. In the Azure portal, find the + marketplace image that you want to use and then click **Want to deploy + programmatically, Get Started ->**. Enter any required information and + then click **Save**. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :param upgrade_policy: The upgrade policy. + :type upgrade_policy: ~azure.mgmt.compute.v2018_10_01.models.UpgradePolicy + :param virtual_machine_profile: The virtual machine profile. + :type virtual_machine_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVMProfile + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :param overprovision: Specifies whether the Virtual Machine Scale Set + should be overprovisioned. + :type overprovision: bool + :ivar unique_id: Specifies the ID which uniquely identifies a Virtual + Machine Scale Set. + :vartype unique_id: str + :param single_placement_group: When true this limits the scale set to a + single placement group, of max size 100 virtual machines. + :type single_placement_group: bool + :param zone_balance: Whether to force stictly even Virtual Machine + distribution cross x-zones in case there is zone outage. + :type zone_balance: bool + :param platform_fault_domain_count: Fault Domain count for each placement + group. + :type platform_fault_domain_count: int + :param identity: The identity of the virtual machine scale set, if + configured. + :type identity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIdentity + :param zones: The virtual machine scale set zones. + :type zones: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'unique_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'upgrade_policy': {'key': 'properties.upgradePolicy', 'type': 'UpgradePolicy'}, + 'virtual_machine_profile': {'key': 'properties.virtualMachineProfile', 'type': 'VirtualMachineScaleSetVMProfile'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'overprovision': {'key': 'properties.overprovision', 'type': 'bool'}, + 'unique_id': {'key': 'properties.uniqueId', 'type': 'str'}, + 'single_placement_group': {'key': 'properties.singlePlacementGroup', 'type': 'bool'}, + 'zone_balance': {'key': 'properties.zoneBalance', 'type': 'bool'}, + 'platform_fault_domain_count': {'key': 'properties.platformFaultDomainCount', 'type': 'int'}, + 'identity': {'key': 'identity', 'type': 'VirtualMachineScaleSetIdentity'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, location: str, tags=None, sku=None, plan=None, upgrade_policy=None, virtual_machine_profile=None, overprovision: bool=None, single_placement_group: bool=None, zone_balance: bool=None, platform_fault_domain_count: int=None, identity=None, zones=None, **kwargs) -> None: + super(VirtualMachineScaleSet, self).__init__(location=location, tags=tags, **kwargs) + self.sku = sku + self.plan = plan + self.upgrade_policy = upgrade_policy + self.virtual_machine_profile = virtual_machine_profile + self.provisioning_state = None + self.overprovision = overprovision + self.unique_id = None + self.single_placement_group = single_placement_group + self.zone_balance = zone_balance + self.platform_fault_domain_count = platform_fault_domain_count + self.identity = identity + self.zones = zones diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku.py new file mode 100644 index 000000000000..6c34f548e1b2 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetSku(Model): + """Describes an available virtual machine scale set sku. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_type: The type of resource the sku applies to. + :vartype resource_type: str + :ivar sku: The Sku. + :vartype sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + :ivar capacity: Specifies the number of virtual machines in the scale set. + :vartype capacity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetSkuCapacity + """ + + _validation = { + 'resource_type': {'readonly': True}, + 'sku': {'readonly': True}, + 'capacity': {'readonly': True}, + } + + _attribute_map = { + 'resource_type': {'key': 'resourceType', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'capacity': {'key': 'capacity', 'type': 'VirtualMachineScaleSetSkuCapacity'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetSku, self).__init__(**kwargs) + self.resource_type = None + self.sku = None + self.capacity = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_capacity.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_capacity.py new file mode 100644 index 000000000000..beff389a7661 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_capacity.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetSkuCapacity(Model): + """Describes scaling information of a sku. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar minimum: The minimum capacity. + :vartype minimum: long + :ivar maximum: The maximum capacity that can be set. + :vartype maximum: long + :ivar default_capacity: The default capacity. + :vartype default_capacity: long + :ivar scale_type: The scale type applicable to the sku. Possible values + include: 'Automatic', 'None' + :vartype scale_type: str or + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetSkuScaleType + """ + + _validation = { + 'minimum': {'readonly': True}, + 'maximum': {'readonly': True}, + 'default_capacity': {'readonly': True}, + 'scale_type': {'readonly': True}, + } + + _attribute_map = { + 'minimum': {'key': 'minimum', 'type': 'long'}, + 'maximum': {'key': 'maximum', 'type': 'long'}, + 'default_capacity': {'key': 'defaultCapacity', 'type': 'long'}, + 'scale_type': {'key': 'scaleType', 'type': 'VirtualMachineScaleSetSkuScaleType'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetSkuCapacity, self).__init__(**kwargs) + self.minimum = None + self.maximum = None + self.default_capacity = None + self.scale_type = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_capacity_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_capacity_py3.py new file mode 100644 index 000000000000..73d117928751 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_capacity_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetSkuCapacity(Model): + """Describes scaling information of a sku. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar minimum: The minimum capacity. + :vartype minimum: long + :ivar maximum: The maximum capacity that can be set. + :vartype maximum: long + :ivar default_capacity: The default capacity. + :vartype default_capacity: long + :ivar scale_type: The scale type applicable to the sku. Possible values + include: 'Automatic', 'None' + :vartype scale_type: str or + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetSkuScaleType + """ + + _validation = { + 'minimum': {'readonly': True}, + 'maximum': {'readonly': True}, + 'default_capacity': {'readonly': True}, + 'scale_type': {'readonly': True}, + } + + _attribute_map = { + 'minimum': {'key': 'minimum', 'type': 'long'}, + 'maximum': {'key': 'maximum', 'type': 'long'}, + 'default_capacity': {'key': 'defaultCapacity', 'type': 'long'}, + 'scale_type': {'key': 'scaleType', 'type': 'VirtualMachineScaleSetSkuScaleType'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualMachineScaleSetSkuCapacity, self).__init__(**kwargs) + self.minimum = None + self.maximum = None + self.default_capacity = None + self.scale_type = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_paged.py new file mode 100644 index 000000000000..33c53d2a8b04 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualMachineScaleSetSkuPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualMachineScaleSetSku ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualMachineScaleSetSku]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualMachineScaleSetSkuPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_py3.py new file mode 100644 index 000000000000..be42b347d30a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_sku_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetSku(Model): + """Describes an available virtual machine scale set sku. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_type: The type of resource the sku applies to. + :vartype resource_type: str + :ivar sku: The Sku. + :vartype sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + :ivar capacity: Specifies the number of virtual machines in the scale set. + :vartype capacity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetSkuCapacity + """ + + _validation = { + 'resource_type': {'readonly': True}, + 'sku': {'readonly': True}, + 'capacity': {'readonly': True}, + } + + _attribute_map = { + 'resource_type': {'key': 'resourceType', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'capacity': {'key': 'capacity', 'type': 'VirtualMachineScaleSetSkuCapacity'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualMachineScaleSetSku, self).__init__(**kwargs) + self.resource_type = None + self.sku = None + self.capacity = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_storage_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_storage_profile.py new file mode 100644 index 000000000000..ea246c181c1a --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_storage_profile.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetStorageProfile(Model): + """Describes a virtual machine scale set storage profile. + + :param image_reference: Specifies information about the image to use. You + can specify information about platform images, marketplace images, or + virtual machine images. This element is required when you want to use a + platform image, marketplace image, or virtual machine image, but is not + used in other creation operations. + :type image_reference: + ~azure.mgmt.compute.v2018_10_01.models.ImageReference + :param os_disk: Specifies information about the operating system disk used + by the virtual machines in the scale set.

    For more information + about disks, see [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type os_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetOSDisk + :param data_disks: Specifies the parameters that are used to add data + disks to the virtual machines in the scale set.

    For more + information about disks, see [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type data_disks: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetDataDisk] + """ + + _attribute_map = { + 'image_reference': {'key': 'imageReference', 'type': 'ImageReference'}, + 'os_disk': {'key': 'osDisk', 'type': 'VirtualMachineScaleSetOSDisk'}, + 'data_disks': {'key': 'dataDisks', 'type': '[VirtualMachineScaleSetDataDisk]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetStorageProfile, self).__init__(**kwargs) + self.image_reference = kwargs.get('image_reference', None) + self.os_disk = kwargs.get('os_disk', None) + self.data_disks = kwargs.get('data_disks', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_storage_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_storage_profile_py3.py new file mode 100644 index 000000000000..cacd54634f88 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_storage_profile_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetStorageProfile(Model): + """Describes a virtual machine scale set storage profile. + + :param image_reference: Specifies information about the image to use. You + can specify information about platform images, marketplace images, or + virtual machine images. This element is required when you want to use a + platform image, marketplace image, or virtual machine image, but is not + used in other creation operations. + :type image_reference: + ~azure.mgmt.compute.v2018_10_01.models.ImageReference + :param os_disk: Specifies information about the operating system disk used + by the virtual machines in the scale set.

    For more information + about disks, see [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type os_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetOSDisk + :param data_disks: Specifies the parameters that are used to add data + disks to the virtual machines in the scale set.

    For more + information about disks, see [About disks and VHDs for Azure virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). + :type data_disks: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetDataDisk] + """ + + _attribute_map = { + 'image_reference': {'key': 'imageReference', 'type': 'ImageReference'}, + 'os_disk': {'key': 'osDisk', 'type': 'VirtualMachineScaleSetOSDisk'}, + 'data_disks': {'key': 'dataDisks', 'type': '[VirtualMachineScaleSetDataDisk]'}, + } + + def __init__(self, *, image_reference=None, os_disk=None, data_disks=None, **kwargs) -> None: + super(VirtualMachineScaleSetStorageProfile, self).__init__(**kwargs) + self.image_reference = image_reference + self.os_disk = os_disk + self.data_disks = data_disks diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update.py new file mode 100644 index 000000000000..8478dbfd9e7e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update.py @@ -0,0 +1,61 @@ +# 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 .update_resource import UpdateResource + + +class VirtualMachineScaleSetUpdate(UpdateResource): + """Describes a Virtual Machine Scale Set. + + :param tags: Resource tags + :type tags: dict[str, str] + :param sku: The virtual machine scale set sku. + :type sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + :param plan: The purchase plan when deploying a virtual machine scale set + from VM Marketplace images. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :param upgrade_policy: The upgrade policy. + :type upgrade_policy: ~azure.mgmt.compute.v2018_10_01.models.UpgradePolicy + :param virtual_machine_profile: The virtual machine profile. + :type virtual_machine_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateVMProfile + :param overprovision: Specifies whether the Virtual Machine Scale Set + should be overprovisioned. + :type overprovision: bool + :param single_placement_group: When true this limits the scale set to a + single placement group, of max size 100 virtual machines. + :type single_placement_group: bool + :param identity: The identity of the virtual machine scale set, if + configured. + :type identity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIdentity + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'upgrade_policy': {'key': 'properties.upgradePolicy', 'type': 'UpgradePolicy'}, + 'virtual_machine_profile': {'key': 'properties.virtualMachineProfile', 'type': 'VirtualMachineScaleSetUpdateVMProfile'}, + 'overprovision': {'key': 'properties.overprovision', 'type': 'bool'}, + 'single_placement_group': {'key': 'properties.singlePlacementGroup', 'type': 'bool'}, + 'identity': {'key': 'identity', 'type': 'VirtualMachineScaleSetIdentity'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdate, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.plan = kwargs.get('plan', None) + self.upgrade_policy = kwargs.get('upgrade_policy', None) + self.virtual_machine_profile = kwargs.get('virtual_machine_profile', None) + self.overprovision = kwargs.get('overprovision', None) + self.single_placement_group = kwargs.get('single_placement_group', None) + self.identity = kwargs.get('identity', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_ip_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_ip_configuration.py new file mode 100644 index 000000000000..8f58b50c381e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_ip_configuration.py @@ -0,0 +1,77 @@ +# 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 .sub_resource import SubResource + + +class VirtualMachineScaleSetUpdateIPConfiguration(SubResource): + """Describes a virtual machine scale set network profile's IP configuration. + + :param id: Resource Id + :type id: str + :param name: The IP configuration name. + :type name: str + :param subnet: The subnet. + :type subnet: ~azure.mgmt.compute.v2018_10_01.models.ApiEntityReference + :param primary: Specifies the primary IP Configuration in case the network + interface has more than one IP Configuration. + :type primary: bool + :param public_ip_address_configuration: The publicIPAddressConfiguration. + :type public_ip_address_configuration: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdatePublicIPAddressConfiguration + :param private_ip_address_version: Available from Api-Version 2017-03-30 + onwards, it represents whether the specific ipconfiguration is IPv4 or + IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. + Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.compute.v2018_10_01.models.IPVersion + :param application_gateway_backend_address_pools: The application gateway + backend address pools. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param application_security_groups: Specifies an array of references to + application security group. + :type application_security_groups: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param load_balancer_backend_address_pools: The load balancer backend + address pools. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param load_balancer_inbound_nat_pools: The load balancer inbound nat + pools. + :type load_balancer_inbound_nat_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'ApiEntityReference'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address_configuration': {'key': 'properties.publicIPAddressConfiguration', 'type': 'VirtualMachineScaleSetUpdatePublicIPAddressConfiguration'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[SubResource]'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[SubResource]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[SubResource]'}, + 'load_balancer_inbound_nat_pools': {'key': 'properties.loadBalancerInboundNatPools', 'type': '[SubResource]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdateIPConfiguration, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.subnet = kwargs.get('subnet', None) + self.primary = kwargs.get('primary', None) + self.public_ip_address_configuration = kwargs.get('public_ip_address_configuration', None) + self.private_ip_address_version = kwargs.get('private_ip_address_version', None) + self.application_gateway_backend_address_pools = kwargs.get('application_gateway_backend_address_pools', None) + self.application_security_groups = kwargs.get('application_security_groups', None) + self.load_balancer_backend_address_pools = kwargs.get('load_balancer_backend_address_pools', None) + self.load_balancer_inbound_nat_pools = kwargs.get('load_balancer_inbound_nat_pools', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_ip_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_ip_configuration_py3.py new file mode 100644 index 000000000000..c3afa2576eb8 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_ip_configuration_py3.py @@ -0,0 +1,77 @@ +# 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 .sub_resource_py3 import SubResource + + +class VirtualMachineScaleSetUpdateIPConfiguration(SubResource): + """Describes a virtual machine scale set network profile's IP configuration. + + :param id: Resource Id + :type id: str + :param name: The IP configuration name. + :type name: str + :param subnet: The subnet. + :type subnet: ~azure.mgmt.compute.v2018_10_01.models.ApiEntityReference + :param primary: Specifies the primary IP Configuration in case the network + interface has more than one IP Configuration. + :type primary: bool + :param public_ip_address_configuration: The publicIPAddressConfiguration. + :type public_ip_address_configuration: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdatePublicIPAddressConfiguration + :param private_ip_address_version: Available from Api-Version 2017-03-30 + onwards, it represents whether the specific ipconfiguration is IPv4 or + IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. + Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.compute.v2018_10_01.models.IPVersion + :param application_gateway_backend_address_pools: The application gateway + backend address pools. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param application_security_groups: Specifies an array of references to + application security group. + :type application_security_groups: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param load_balancer_backend_address_pools: The load balancer backend + address pools. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + :param load_balancer_inbound_nat_pools: The load balancer inbound nat + pools. + :type load_balancer_inbound_nat_pools: + list[~azure.mgmt.compute.v2018_10_01.models.SubResource] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'ApiEntityReference'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address_configuration': {'key': 'properties.publicIPAddressConfiguration', 'type': 'VirtualMachineScaleSetUpdatePublicIPAddressConfiguration'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[SubResource]'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[SubResource]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[SubResource]'}, + 'load_balancer_inbound_nat_pools': {'key': 'properties.loadBalancerInboundNatPools', 'type': '[SubResource]'}, + } + + def __init__(self, *, id: str=None, name: str=None, subnet=None, primary: bool=None, public_ip_address_configuration=None, private_ip_address_version=None, application_gateway_backend_address_pools=None, application_security_groups=None, load_balancer_backend_address_pools=None, load_balancer_inbound_nat_pools=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdateIPConfiguration, self).__init__(id=id, **kwargs) + self.name = name + self.subnet = subnet + self.primary = primary + self.public_ip_address_configuration = public_ip_address_configuration + self.private_ip_address_version = private_ip_address_version + self.application_gateway_backend_address_pools = application_gateway_backend_address_pools + self.application_security_groups = application_security_groups + self.load_balancer_backend_address_pools = load_balancer_backend_address_pools + self.load_balancer_inbound_nat_pools = load_balancer_inbound_nat_pools diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_configuration.py new file mode 100644 index 000000000000..21b8d35411da --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_configuration.py @@ -0,0 +1,61 @@ +# 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 .sub_resource import SubResource + + +class VirtualMachineScaleSetUpdateNetworkConfiguration(SubResource): + """Describes a virtual machine scale set network profile's network + configurations. + + :param id: Resource Id + :type id: str + :param name: The network configuration name. + :type name: str + :param primary: Whether this is a primary NIC on a virtual machine. + :type primary: bool + :param enable_accelerated_networking: Specifies whether the network + interface is accelerated networking-enabled. + :type enable_accelerated_networking: bool + :param network_security_group: The network security group. + :type network_security_group: + ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param dns_settings: The dns settings to be applied on the network + interfaces. + :type dns_settings: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetNetworkConfigurationDnsSettings + :param ip_configurations: The virtual machine scale set IP Configuration. + :type ip_configurations: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateIPConfiguration] + :param enable_ip_forwarding: Whether IP forwarding enabled on this NIC. + :type enable_ip_forwarding: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'SubResource'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetNetworkConfigurationDnsSettings'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualMachineScaleSetUpdateIPConfiguration]'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdateNetworkConfiguration, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.primary = kwargs.get('primary', None) + self.enable_accelerated_networking = kwargs.get('enable_accelerated_networking', None) + self.network_security_group = kwargs.get('network_security_group', None) + self.dns_settings = kwargs.get('dns_settings', None) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.enable_ip_forwarding = kwargs.get('enable_ip_forwarding', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_configuration_py3.py new file mode 100644 index 000000000000..0c829e7f5862 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_configuration_py3.py @@ -0,0 +1,61 @@ +# 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 .sub_resource_py3 import SubResource + + +class VirtualMachineScaleSetUpdateNetworkConfiguration(SubResource): + """Describes a virtual machine scale set network profile's network + configurations. + + :param id: Resource Id + :type id: str + :param name: The network configuration name. + :type name: str + :param primary: Whether this is a primary NIC on a virtual machine. + :type primary: bool + :param enable_accelerated_networking: Specifies whether the network + interface is accelerated networking-enabled. + :type enable_accelerated_networking: bool + :param network_security_group: The network security group. + :type network_security_group: + ~azure.mgmt.compute.v2018_10_01.models.SubResource + :param dns_settings: The dns settings to be applied on the network + interfaces. + :type dns_settings: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetNetworkConfigurationDnsSettings + :param ip_configurations: The virtual machine scale set IP Configuration. + :type ip_configurations: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateIPConfiguration] + :param enable_ip_forwarding: Whether IP forwarding enabled on this NIC. + :type enable_ip_forwarding: bool + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'SubResource'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetNetworkConfigurationDnsSettings'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualMachineScaleSetUpdateIPConfiguration]'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + } + + def __init__(self, *, id: str=None, name: str=None, primary: bool=None, enable_accelerated_networking: bool=None, network_security_group=None, dns_settings=None, ip_configurations=None, enable_ip_forwarding: bool=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdateNetworkConfiguration, self).__init__(id=id, **kwargs) + self.name = name + self.primary = primary + self.enable_accelerated_networking = enable_accelerated_networking + self.network_security_group = network_security_group + self.dns_settings = dns_settings + self.ip_configurations = ip_configurations + self.enable_ip_forwarding = enable_ip_forwarding diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_profile.py new file mode 100644 index 000000000000..0a501bd3bd66 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_profile.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateNetworkProfile(Model): + """Describes a virtual machine scale set network profile. + + :param network_interface_configurations: The list of network + configurations. + :type network_interface_configurations: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateNetworkConfiguration] + """ + + _attribute_map = { + 'network_interface_configurations': {'key': 'networkInterfaceConfigurations', 'type': '[VirtualMachineScaleSetUpdateNetworkConfiguration]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdateNetworkProfile, self).__init__(**kwargs) + self.network_interface_configurations = kwargs.get('network_interface_configurations', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_profile_py3.py new file mode 100644 index 000000000000..f07f067eca34 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_network_profile_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateNetworkProfile(Model): + """Describes a virtual machine scale set network profile. + + :param network_interface_configurations: The list of network + configurations. + :type network_interface_configurations: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateNetworkConfiguration] + """ + + _attribute_map = { + 'network_interface_configurations': {'key': 'networkInterfaceConfigurations', 'type': '[VirtualMachineScaleSetUpdateNetworkConfiguration]'}, + } + + def __init__(self, *, network_interface_configurations=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdateNetworkProfile, self).__init__(**kwargs) + self.network_interface_configurations = network_interface_configurations diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_disk.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_disk.py new file mode 100644 index 000000000000..72edd81b4cab --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_disk.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateOSDisk(Model): + """Describes virtual machine scale set operating system disk Update Object. + This should be used for Updating VMSS OS Disk. + + :param caching: The caching type. Possible values include: 'None', + 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param disk_size_gb: Specifies the size of the operating system disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

    This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param image: The Source User Image VirtualHardDisk. This VirtualHardDisk + will be copied before using it to attach to the Virtual Machine. If + SourceImage is provided, the destination VirtualHardDisk should not exist. + :type image: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param vhd_containers: The list of virtual hard disk container uris. + :type vhd_containers: list[str] + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetManagedDiskParameters + """ + + _attribute_map = { + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, + 'vhd_containers': {'key': 'vhdContainers', 'type': '[str]'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdateOSDisk, self).__init__(**kwargs) + self.caching = kwargs.get('caching', None) + self.write_accelerator_enabled = kwargs.get('write_accelerator_enabled', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) + self.image = kwargs.get('image', None) + self.vhd_containers = kwargs.get('vhd_containers', None) + self.managed_disk = kwargs.get('managed_disk', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_disk_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_disk_py3.py new file mode 100644 index 000000000000..580aa65b9d5d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_disk_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateOSDisk(Model): + """Describes virtual machine scale set operating system disk Update Object. + This should be used for Updating VMSS OS Disk. + + :param caching: The caching type. Possible values include: 'None', + 'ReadOnly', 'ReadWrite' + :type caching: str or ~azure.mgmt.compute.v2018_10_01.models.CachingTypes + :param write_accelerator_enabled: Specifies whether writeAccelerator + should be enabled or disabled on the disk. + :type write_accelerator_enabled: bool + :param disk_size_gb: Specifies the size of the operating system disk in + gigabytes. This element can be used to overwrite the size of the disk in a + virtual machine image.

    This value cannot be larger than 1023 GB + :type disk_size_gb: int + :param image: The Source User Image VirtualHardDisk. This VirtualHardDisk + will be copied before using it to attach to the Virtual Machine. If + SourceImage is provided, the destination VirtualHardDisk should not exist. + :type image: ~azure.mgmt.compute.v2018_10_01.models.VirtualHardDisk + :param vhd_containers: The list of virtual hard disk container uris. + :type vhd_containers: list[str] + :param managed_disk: The managed disk parameters. + :type managed_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetManagedDiskParameters + """ + + _attribute_map = { + 'caching': {'key': 'caching', 'type': 'CachingTypes'}, + 'write_accelerator_enabled': {'key': 'writeAcceleratorEnabled', 'type': 'bool'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'image': {'key': 'image', 'type': 'VirtualHardDisk'}, + 'vhd_containers': {'key': 'vhdContainers', 'type': '[str]'}, + 'managed_disk': {'key': 'managedDisk', 'type': 'VirtualMachineScaleSetManagedDiskParameters'}, + } + + def __init__(self, *, caching=None, write_accelerator_enabled: bool=None, disk_size_gb: int=None, image=None, vhd_containers=None, managed_disk=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdateOSDisk, self).__init__(**kwargs) + self.caching = caching + self.write_accelerator_enabled = write_accelerator_enabled + self.disk_size_gb = disk_size_gb + self.image = image + self.vhd_containers = vhd_containers + self.managed_disk = managed_disk diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_profile.py new file mode 100644 index 000000000000..64c4844a9e47 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_profile.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateOSProfile(Model): + """Describes a virtual machine scale set OS profile. + + :param custom_data: A base-64 encoded string of custom data. + :type custom_data: str + :param windows_configuration: The Windows Configuration of the OS profile. + :type windows_configuration: + ~azure.mgmt.compute.v2018_10_01.models.WindowsConfiguration + :param linux_configuration: The Linux Configuration of the OS profile. + :type linux_configuration: + ~azure.mgmt.compute.v2018_10_01.models.LinuxConfiguration + :param secrets: The List of certificates for addition to the VM. + :type secrets: + list[~azure.mgmt.compute.v2018_10_01.models.VaultSecretGroup] + """ + + _attribute_map = { + 'custom_data': {'key': 'customData', 'type': 'str'}, + 'windows_configuration': {'key': 'windowsConfiguration', 'type': 'WindowsConfiguration'}, + 'linux_configuration': {'key': 'linuxConfiguration', 'type': 'LinuxConfiguration'}, + 'secrets': {'key': 'secrets', 'type': '[VaultSecretGroup]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdateOSProfile, self).__init__(**kwargs) + self.custom_data = kwargs.get('custom_data', None) + self.windows_configuration = kwargs.get('windows_configuration', None) + self.linux_configuration = kwargs.get('linux_configuration', None) + self.secrets = kwargs.get('secrets', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_profile_py3.py new file mode 100644 index 000000000000..feba5c831a3d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_os_profile_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateOSProfile(Model): + """Describes a virtual machine scale set OS profile. + + :param custom_data: A base-64 encoded string of custom data. + :type custom_data: str + :param windows_configuration: The Windows Configuration of the OS profile. + :type windows_configuration: + ~azure.mgmt.compute.v2018_10_01.models.WindowsConfiguration + :param linux_configuration: The Linux Configuration of the OS profile. + :type linux_configuration: + ~azure.mgmt.compute.v2018_10_01.models.LinuxConfiguration + :param secrets: The List of certificates for addition to the VM. + :type secrets: + list[~azure.mgmt.compute.v2018_10_01.models.VaultSecretGroup] + """ + + _attribute_map = { + 'custom_data': {'key': 'customData', 'type': 'str'}, + 'windows_configuration': {'key': 'windowsConfiguration', 'type': 'WindowsConfiguration'}, + 'linux_configuration': {'key': 'linuxConfiguration', 'type': 'LinuxConfiguration'}, + 'secrets': {'key': 'secrets', 'type': '[VaultSecretGroup]'}, + } + + def __init__(self, *, custom_data: str=None, windows_configuration=None, linux_configuration=None, secrets=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdateOSProfile, self).__init__(**kwargs) + self.custom_data = custom_data + self.windows_configuration = windows_configuration + self.linux_configuration = linux_configuration + self.secrets = secrets diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_public_ip_address_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_public_ip_address_configuration.py new file mode 100644 index 000000000000..8a8da382c4ba --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_public_ip_address_configuration.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdatePublicIPAddressConfiguration(Model): + """Describes a virtual machines scale set IP Configuration's PublicIPAddress + configuration. + + :param name: The publicIP address configuration name. + :type name: str + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :param dns_settings: The dns settings to be applied on the publicIP + addresses . + :type dns_settings: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdatePublicIPAddressConfiguration, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.dns_settings = kwargs.get('dns_settings', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_public_ip_address_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_public_ip_address_configuration_py3.py new file mode 100644 index 000000000000..b48f6adae4da --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_public_ip_address_configuration_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdatePublicIPAddressConfiguration(Model): + """Describes a virtual machines scale set IP Configuration's PublicIPAddress + configuration. + + :param name: The publicIP address configuration name. + :type name: str + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :param dns_settings: The dns settings to be applied on the publicIP + addresses . + :type dns_settings: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings'}, + } + + def __init__(self, *, name: str=None, idle_timeout_in_minutes: int=None, dns_settings=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdatePublicIPAddressConfiguration, self).__init__(**kwargs) + self.name = name + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.dns_settings = dns_settings diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_py3.py new file mode 100644 index 000000000000..0e4ae72fbf76 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_py3.py @@ -0,0 +1,61 @@ +# 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 .update_resource_py3 import UpdateResource + + +class VirtualMachineScaleSetUpdate(UpdateResource): + """Describes a Virtual Machine Scale Set. + + :param tags: Resource tags + :type tags: dict[str, str] + :param sku: The virtual machine scale set sku. + :type sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + :param plan: The purchase plan when deploying a virtual machine scale set + from VM Marketplace images. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :param upgrade_policy: The upgrade policy. + :type upgrade_policy: ~azure.mgmt.compute.v2018_10_01.models.UpgradePolicy + :param virtual_machine_profile: The virtual machine profile. + :type virtual_machine_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateVMProfile + :param overprovision: Specifies whether the Virtual Machine Scale Set + should be overprovisioned. + :type overprovision: bool + :param single_placement_group: When true this limits the scale set to a + single placement group, of max size 100 virtual machines. + :type single_placement_group: bool + :param identity: The identity of the virtual machine scale set, if + configured. + :type identity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetIdentity + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'upgrade_policy': {'key': 'properties.upgradePolicy', 'type': 'UpgradePolicy'}, + 'virtual_machine_profile': {'key': 'properties.virtualMachineProfile', 'type': 'VirtualMachineScaleSetUpdateVMProfile'}, + 'overprovision': {'key': 'properties.overprovision', 'type': 'bool'}, + 'single_placement_group': {'key': 'properties.singlePlacementGroup', 'type': 'bool'}, + 'identity': {'key': 'identity', 'type': 'VirtualMachineScaleSetIdentity'}, + } + + def __init__(self, *, tags=None, sku=None, plan=None, upgrade_policy=None, virtual_machine_profile=None, overprovision: bool=None, single_placement_group: bool=None, identity=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdate, self).__init__(tags=tags, **kwargs) + self.sku = sku + self.plan = plan + self.upgrade_policy = upgrade_policy + self.virtual_machine_profile = virtual_machine_profile + self.overprovision = overprovision + self.single_placement_group = single_placement_group + self.identity = identity diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_storage_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_storage_profile.py new file mode 100644 index 000000000000..d7f23cbadc74 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_storage_profile.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateStorageProfile(Model): + """Describes a virtual machine scale set storage profile. + + :param image_reference: The image reference. + :type image_reference: + ~azure.mgmt.compute.v2018_10_01.models.ImageReference + :param os_disk: The OS disk. + :type os_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateOSDisk + :param data_disks: The data disks. + :type data_disks: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetDataDisk] + """ + + _attribute_map = { + 'image_reference': {'key': 'imageReference', 'type': 'ImageReference'}, + 'os_disk': {'key': 'osDisk', 'type': 'VirtualMachineScaleSetUpdateOSDisk'}, + 'data_disks': {'key': 'dataDisks', 'type': '[VirtualMachineScaleSetDataDisk]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdateStorageProfile, self).__init__(**kwargs) + self.image_reference = kwargs.get('image_reference', None) + self.os_disk = kwargs.get('os_disk', None) + self.data_disks = kwargs.get('data_disks', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_storage_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_storage_profile_py3.py new file mode 100644 index 000000000000..eec6f04a730e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_storage_profile_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateStorageProfile(Model): + """Describes a virtual machine scale set storage profile. + + :param image_reference: The image reference. + :type image_reference: + ~azure.mgmt.compute.v2018_10_01.models.ImageReference + :param os_disk: The OS disk. + :type os_disk: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateOSDisk + :param data_disks: The data disks. + :type data_disks: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetDataDisk] + """ + + _attribute_map = { + 'image_reference': {'key': 'imageReference', 'type': 'ImageReference'}, + 'os_disk': {'key': 'osDisk', 'type': 'VirtualMachineScaleSetUpdateOSDisk'}, + 'data_disks': {'key': 'dataDisks', 'type': '[VirtualMachineScaleSetDataDisk]'}, + } + + def __init__(self, *, image_reference=None, os_disk=None, data_disks=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdateStorageProfile, self).__init__(**kwargs) + self.image_reference = image_reference + self.os_disk = os_disk + self.data_disks = data_disks diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_vm_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_vm_profile.py new file mode 100644 index 000000000000..7a8bd8cd4ff9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_vm_profile.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateVMProfile(Model): + """Describes a virtual machine scale set virtual machine profile. + + :param os_profile: The virtual machine scale set OS profile. + :type os_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateOSProfile + :param storage_profile: The virtual machine scale set storage profile. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateStorageProfile + :param network_profile: The virtual machine scale set network profile. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateNetworkProfile + :param diagnostics_profile: The virtual machine scale set diagnostics + profile. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param extension_profile: The virtual machine scale set extension profile. + :type extension_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtensionProfile + :param license_type: The license type, which is for bring your own license + scenario. + :type license_type: str + """ + + _attribute_map = { + 'os_profile': {'key': 'osProfile', 'type': 'VirtualMachineScaleSetUpdateOSProfile'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'VirtualMachineScaleSetUpdateStorageProfile'}, + 'network_profile': {'key': 'networkProfile', 'type': 'VirtualMachineScaleSetUpdateNetworkProfile'}, + 'diagnostics_profile': {'key': 'diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'extension_profile': {'key': 'extensionProfile', 'type': 'VirtualMachineScaleSetExtensionProfile'}, + 'license_type': {'key': 'licenseType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetUpdateVMProfile, self).__init__(**kwargs) + self.os_profile = kwargs.get('os_profile', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.network_profile = kwargs.get('network_profile', None) + self.diagnostics_profile = kwargs.get('diagnostics_profile', None) + self.extension_profile = kwargs.get('extension_profile', None) + self.license_type = kwargs.get('license_type', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_vm_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_vm_profile_py3.py new file mode 100644 index 000000000000..474a3738141f --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_update_vm_profile_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetUpdateVMProfile(Model): + """Describes a virtual machine scale set virtual machine profile. + + :param os_profile: The virtual machine scale set OS profile. + :type os_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateOSProfile + :param storage_profile: The virtual machine scale set storage profile. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateStorageProfile + :param network_profile: The virtual machine scale set network profile. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdateNetworkProfile + :param diagnostics_profile: The virtual machine scale set diagnostics + profile. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param extension_profile: The virtual machine scale set extension profile. + :type extension_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtensionProfile + :param license_type: The license type, which is for bring your own license + scenario. + :type license_type: str + """ + + _attribute_map = { + 'os_profile': {'key': 'osProfile', 'type': 'VirtualMachineScaleSetUpdateOSProfile'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'VirtualMachineScaleSetUpdateStorageProfile'}, + 'network_profile': {'key': 'networkProfile', 'type': 'VirtualMachineScaleSetUpdateNetworkProfile'}, + 'diagnostics_profile': {'key': 'diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'extension_profile': {'key': 'extensionProfile', 'type': 'VirtualMachineScaleSetExtensionProfile'}, + 'license_type': {'key': 'licenseType', 'type': 'str'}, + } + + def __init__(self, *, os_profile=None, storage_profile=None, network_profile=None, diagnostics_profile=None, extension_profile=None, license_type: str=None, **kwargs) -> None: + super(VirtualMachineScaleSetUpdateVMProfile, self).__init__(**kwargs) + self.os_profile = os_profile + self.storage_profile = storage_profile + self.network_profile = network_profile + self.diagnostics_profile = diagnostics_profile + self.extension_profile = extension_profile + self.license_type = license_type diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm.py new file mode 100644 index 000000000000..2c75a6bbc10d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm.py @@ -0,0 +1,168 @@ +# 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 .resource import Resource + + +class VirtualMachineScaleSetVM(Resource): + """Describes a virtual machine scale set virtual machine. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar instance_id: The virtual machine instance ID. + :vartype instance_id: str + :ivar sku: The virtual machine SKU. + :vartype sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + :ivar latest_model_applied: Specifies whether the latest model has been + applied to the virtual machine. + :vartype latest_model_applied: bool + :ivar vm_id: Azure VM unique ID. + :vartype vm_id: str + :ivar instance_view: The virtual machine instance view. + :vartype instance_view: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVMInstanceView + :param hardware_profile: Specifies the hardware settings for the virtual + machine. + :type hardware_profile: + ~azure.mgmt.compute.v2018_10_01.models.HardwareProfile + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine in the scale set. For instance: whether + the virtual machine has the capability to support attaching managed data + disks with UltraSSD_LRS storage account type. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_10_01.models.AdditionalCapabilities + :param os_profile: Specifies the operating system settings for the virtual + machine. + :type os_profile: ~azure.mgmt.compute.v2018_10_01.models.OSProfile + :param network_profile: Specifies the network interfaces of the virtual + machine. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.NetworkProfile + :param diagnostics_profile: Specifies the boot diagnostic settings state. +

    Minimum api-version: 2015-06-15. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param availability_set: Specifies information about the availability set + that the virtual machine should be assigned to. Virtual machines specified + in the same availability set are allocated to different nodes to maximize + availability. For more information about availability sets, see [Manage + the availability of virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

    For more information on Azure planned maintainance, see [Planned + maintenance for virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Currently, a VM can only be added to availability set at creation + time. An existing VM cannot be added to an availability set. + :type availability_set: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :param license_type: Specifies that the image or disk that is being used + was licensed on-premises. This element is only used for images that + contain the Windows Server operating system.

    Possible values are: +

    Windows_Client

    Windows_Server

    If this element + is included in a request for an update, the value must match the initial + value. This value cannot be updated.

    For more information, see + [Azure Hybrid Use Benefit for Windows + Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Minimum api-version: 2015-06-15 + :type license_type: str + :param plan: Specifies information about the marketplace image used to + create the virtual machine. This element is only used for marketplace + images. Before you can use a marketplace image from an API, you must + enable the image for programmatic use. In the Azure portal, find the + marketplace image that you want to use and then click **Want to deploy + programmatically, Get Started ->**. Enter any required information and + then click **Save**. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :ivar resources: The virtual machine child extension resources. + :vartype resources: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension] + :ivar zones: The virtual machine zones. + :vartype zones: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'instance_id': {'readonly': True}, + 'sku': {'readonly': True}, + 'latest_model_applied': {'readonly': True}, + 'vm_id': {'readonly': True}, + 'instance_view': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'resources': {'readonly': True}, + 'zones': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'instance_id': {'key': 'instanceId', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'latest_model_applied': {'key': 'properties.latestModelApplied', 'type': 'bool'}, + 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, + 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, + 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, + 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'resources': {'key': 'resources', 'type': '[VirtualMachineExtension]'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetVM, self).__init__(**kwargs) + self.instance_id = None + self.sku = None + self.latest_model_applied = None + self.vm_id = None + self.instance_view = None + self.hardware_profile = kwargs.get('hardware_profile', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.additional_capabilities = kwargs.get('additional_capabilities', None) + self.os_profile = kwargs.get('os_profile', None) + self.network_profile = kwargs.get('network_profile', None) + self.diagnostics_profile = kwargs.get('diagnostics_profile', None) + self.availability_set = kwargs.get('availability_set', None) + self.provisioning_state = None + self.license_type = kwargs.get('license_type', None) + self.plan = kwargs.get('plan', None) + self.resources = None + self.zones = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_extensions_summary.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_extensions_summary.py new file mode 100644 index 000000000000..aa15752c3e96 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_extensions_summary.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMExtensionsSummary(Model): + """Extensions summary for virtual machines of a virtual machine scale set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The extension name. + :vartype name: str + :ivar statuses_summary: The extensions information. + :vartype statuses_summary: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineStatusCodeCount] + """ + + _validation = { + 'name': {'readonly': True}, + 'statuses_summary': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'statuses_summary': {'key': 'statusesSummary', 'type': '[VirtualMachineStatusCodeCount]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetVMExtensionsSummary, self).__init__(**kwargs) + self.name = None + self.statuses_summary = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_extensions_summary_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_extensions_summary_py3.py new file mode 100644 index 000000000000..35fd5aeefda9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_extensions_summary_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMExtensionsSummary(Model): + """Extensions summary for virtual machines of a virtual machine scale set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The extension name. + :vartype name: str + :ivar statuses_summary: The extensions information. + :vartype statuses_summary: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineStatusCodeCount] + """ + + _validation = { + 'name': {'readonly': True}, + 'statuses_summary': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'statuses_summary': {'key': 'statusesSummary', 'type': '[VirtualMachineStatusCodeCount]'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualMachineScaleSetVMExtensionsSummary, self).__init__(**kwargs) + self.name = None + self.statuses_summary = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_ids.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_ids.py new file mode 100644 index 000000000000..772c66dad326 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_ids.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMInstanceIDs(Model): + """Specifies a list of virtual machine instance IDs from the VM scale set. + + :param instance_ids: The virtual machine scale set instance ids. Omitting + the virtual machine scale set instance ids will result in the operation + being performed on all virtual machines in the virtual machine scale set. + :type instance_ids: list[str] + """ + + _attribute_map = { + 'instance_ids': {'key': 'instanceIds', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetVMInstanceIDs, self).__init__(**kwargs) + self.instance_ids = kwargs.get('instance_ids', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_ids_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_ids_py3.py new file mode 100644 index 000000000000..658a8ccb87d5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_ids_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMInstanceIDs(Model): + """Specifies a list of virtual machine instance IDs from the VM scale set. + + :param instance_ids: The virtual machine scale set instance ids. Omitting + the virtual machine scale set instance ids will result in the operation + being performed on all virtual machines in the virtual machine scale set. + :type instance_ids: list[str] + """ + + _attribute_map = { + 'instance_ids': {'key': 'instanceIds', 'type': '[str]'}, + } + + def __init__(self, *, instance_ids=None, **kwargs) -> None: + super(VirtualMachineScaleSetVMInstanceIDs, self).__init__(**kwargs) + self.instance_ids = instance_ids diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_required_ids.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_required_ids.py new file mode 100644 index 000000000000..ece250dd4fd4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_required_ids.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMInstanceRequiredIDs(Model): + """Specifies a list of virtual machine instance IDs from the VM scale set. + + All required parameters must be populated in order to send to Azure. + + :param instance_ids: Required. The virtual machine scale set instance ids. + :type instance_ids: list[str] + """ + + _validation = { + 'instance_ids': {'required': True}, + } + + _attribute_map = { + 'instance_ids': {'key': 'instanceIds', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetVMInstanceRequiredIDs, self).__init__(**kwargs) + self.instance_ids = kwargs.get('instance_ids', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_required_ids_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_required_ids_py3.py new file mode 100644 index 000000000000..f32c6181467d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_required_ids_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMInstanceRequiredIDs(Model): + """Specifies a list of virtual machine instance IDs from the VM scale set. + + All required parameters must be populated in order to send to Azure. + + :param instance_ids: Required. The virtual machine scale set instance ids. + :type instance_ids: list[str] + """ + + _validation = { + 'instance_ids': {'required': True}, + } + + _attribute_map = { + 'instance_ids': {'key': 'instanceIds', 'type': '[str]'}, + } + + def __init__(self, *, instance_ids, **kwargs) -> None: + super(VirtualMachineScaleSetVMInstanceRequiredIDs, self).__init__(**kwargs) + self.instance_ids = instance_ids diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_view.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_view.py new file mode 100644 index 000000000000..e285f498ac59 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_view.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMInstanceView(Model): + """The instance view of a virtual machine scale set VM. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param platform_update_domain: The Update Domain count. + :type platform_update_domain: int + :param platform_fault_domain: The Fault Domain count. + :type platform_fault_domain: int + :param rdp_thumb_print: The Remote desktop certificate thumbprint. + :type rdp_thumb_print: str + :param vm_agent: The VM Agent running on the virtual machine. + :type vm_agent: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineAgentInstanceView + :param maintenance_redeploy_status: The Maintenance Operation status on + the virtual machine. + :type maintenance_redeploy_status: + ~azure.mgmt.compute.v2018_10_01.models.MaintenanceRedeployStatus + :param disks: The disks information. + :type disks: list[~azure.mgmt.compute.v2018_10_01.models.DiskInstanceView] + :param extensions: The extensions information. + :type extensions: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionInstanceView] + :ivar vm_health: The health status for the VM. + :vartype vm_health: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineHealthStatus + :param boot_diagnostics: Boot Diagnostics is a debugging feature which + allows you to view Console Output and Screenshot to diagnose VM status. +

    You can easily view the output of your console log.

    + Azure also enables you to see a screenshot of the VM from the hypervisor. + :type boot_diagnostics: + ~azure.mgmt.compute.v2018_10_01.models.BootDiagnosticsInstanceView + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + :param placement_group_id: The placement group in which the VM is running. + If the VM is deallocated it will not have a placementGroupId. + :type placement_group_id: str + """ + + _validation = { + 'vm_health': {'readonly': True}, + } + + _attribute_map = { + 'platform_update_domain': {'key': 'platformUpdateDomain', 'type': 'int'}, + 'platform_fault_domain': {'key': 'platformFaultDomain', 'type': 'int'}, + 'rdp_thumb_print': {'key': 'rdpThumbPrint', 'type': 'str'}, + 'vm_agent': {'key': 'vmAgent', 'type': 'VirtualMachineAgentInstanceView'}, + 'maintenance_redeploy_status': {'key': 'maintenanceRedeployStatus', 'type': 'MaintenanceRedeployStatus'}, + 'disks': {'key': 'disks', 'type': '[DiskInstanceView]'}, + 'extensions': {'key': 'extensions', 'type': '[VirtualMachineExtensionInstanceView]'}, + 'vm_health': {'key': 'vmHealth', 'type': 'VirtualMachineHealthStatus'}, + 'boot_diagnostics': {'key': 'bootDiagnostics', 'type': 'BootDiagnosticsInstanceView'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + 'placement_group_id': {'key': 'placementGroupId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetVMInstanceView, self).__init__(**kwargs) + self.platform_update_domain = kwargs.get('platform_update_domain', None) + self.platform_fault_domain = kwargs.get('platform_fault_domain', None) + self.rdp_thumb_print = kwargs.get('rdp_thumb_print', None) + self.vm_agent = kwargs.get('vm_agent', None) + self.maintenance_redeploy_status = kwargs.get('maintenance_redeploy_status', None) + self.disks = kwargs.get('disks', None) + self.extensions = kwargs.get('extensions', None) + self.vm_health = None + self.boot_diagnostics = kwargs.get('boot_diagnostics', None) + self.statuses = kwargs.get('statuses', None) + self.placement_group_id = kwargs.get('placement_group_id', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_view_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_view_py3.py new file mode 100644 index 000000000000..0eb4b0c95ebb --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_instance_view_py3.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMInstanceView(Model): + """The instance view of a virtual machine scale set VM. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param platform_update_domain: The Update Domain count. + :type platform_update_domain: int + :param platform_fault_domain: The Fault Domain count. + :type platform_fault_domain: int + :param rdp_thumb_print: The Remote desktop certificate thumbprint. + :type rdp_thumb_print: str + :param vm_agent: The VM Agent running on the virtual machine. + :type vm_agent: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineAgentInstanceView + :param maintenance_redeploy_status: The Maintenance Operation status on + the virtual machine. + :type maintenance_redeploy_status: + ~azure.mgmt.compute.v2018_10_01.models.MaintenanceRedeployStatus + :param disks: The disks information. + :type disks: list[~azure.mgmt.compute.v2018_10_01.models.DiskInstanceView] + :param extensions: The extensions information. + :type extensions: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionInstanceView] + :ivar vm_health: The health status for the VM. + :vartype vm_health: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineHealthStatus + :param boot_diagnostics: Boot Diagnostics is a debugging feature which + allows you to view Console Output and Screenshot to diagnose VM status. +

    You can easily view the output of your console log.

    + Azure also enables you to see a screenshot of the VM from the hypervisor. + :type boot_diagnostics: + ~azure.mgmt.compute.v2018_10_01.models.BootDiagnosticsInstanceView + :param statuses: The resource status information. + :type statuses: + list[~azure.mgmt.compute.v2018_10_01.models.InstanceViewStatus] + :param placement_group_id: The placement group in which the VM is running. + If the VM is deallocated it will not have a placementGroupId. + :type placement_group_id: str + """ + + _validation = { + 'vm_health': {'readonly': True}, + } + + _attribute_map = { + 'platform_update_domain': {'key': 'platformUpdateDomain', 'type': 'int'}, + 'platform_fault_domain': {'key': 'platformFaultDomain', 'type': 'int'}, + 'rdp_thumb_print': {'key': 'rdpThumbPrint', 'type': 'str'}, + 'vm_agent': {'key': 'vmAgent', 'type': 'VirtualMachineAgentInstanceView'}, + 'maintenance_redeploy_status': {'key': 'maintenanceRedeployStatus', 'type': 'MaintenanceRedeployStatus'}, + 'disks': {'key': 'disks', 'type': '[DiskInstanceView]'}, + 'extensions': {'key': 'extensions', 'type': '[VirtualMachineExtensionInstanceView]'}, + 'vm_health': {'key': 'vmHealth', 'type': 'VirtualMachineHealthStatus'}, + 'boot_diagnostics': {'key': 'bootDiagnostics', 'type': 'BootDiagnosticsInstanceView'}, + 'statuses': {'key': 'statuses', 'type': '[InstanceViewStatus]'}, + 'placement_group_id': {'key': 'placementGroupId', 'type': 'str'}, + } + + def __init__(self, *, platform_update_domain: int=None, platform_fault_domain: int=None, rdp_thumb_print: str=None, vm_agent=None, maintenance_redeploy_status=None, disks=None, extensions=None, boot_diagnostics=None, statuses=None, placement_group_id: str=None, **kwargs) -> None: + super(VirtualMachineScaleSetVMInstanceView, self).__init__(**kwargs) + self.platform_update_domain = platform_update_domain + self.platform_fault_domain = platform_fault_domain + self.rdp_thumb_print = rdp_thumb_print + self.vm_agent = vm_agent + self.maintenance_redeploy_status = maintenance_redeploy_status + self.disks = disks + self.extensions = extensions + self.vm_health = None + self.boot_diagnostics = boot_diagnostics + self.statuses = statuses + self.placement_group_id = placement_group_id diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_paged.py new file mode 100644 index 000000000000..e1f19a79375e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualMachineScaleSetVMPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualMachineScaleSetVM ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualMachineScaleSetVM]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualMachineScaleSetVMPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_profile.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_profile.py new file mode 100644 index 000000000000..53a6384c704f --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_profile.py @@ -0,0 +1,88 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMProfile(Model): + """Describes a virtual machine scale set virtual machine profile. + + :param os_profile: Specifies the operating system settings for the virtual + machines in the scale set. + :type os_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetOSProfile + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetStorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine in the scale set. For instance: whether + the virtual machine has the capability to support attaching managed data + disks with UltraSSD_LRS storage account type. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_10_01.models.AdditionalCapabilities + :param network_profile: Specifies properties of the network interfaces of + the virtual machines in the scale set. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetNetworkProfile + :param diagnostics_profile: Specifies the boot diagnostic settings state. +

    Minimum api-version: 2015-06-15. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param extension_profile: Specifies a collection of settings for + extensions installed on virtual machines in the scale set. + :type extension_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtensionProfile + :param license_type: Specifies that the image or disk that is being used + was licensed on-premises. This element is only used for images that + contain the Windows Server operating system.

    Possible values are: +

    Windows_Client

    Windows_Server

    If this element + is included in a request for an update, the value must match the initial + value. This value cannot be updated.

    For more information, see + [Azure Hybrid Use Benefit for Windows + Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Minimum api-version: 2015-06-15 + :type license_type: str + :param priority: Specifies the priority for the virtual machines in the + scale set.

    Minimum api-version: 2017-10-30-preview. Possible + values include: 'Regular', 'Low' + :type priority: str or + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachinePriorityTypes + :param eviction_policy: Specifies the eviction policy for virtual machines + in a low priority scale set.

    Minimum api-version: + 2017-10-30-preview. Possible values include: 'Deallocate', 'Delete' + :type eviction_policy: str or + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineEvictionPolicyTypes + """ + + _attribute_map = { + 'os_profile': {'key': 'osProfile', 'type': 'VirtualMachineScaleSetOSProfile'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'VirtualMachineScaleSetStorageProfile'}, + 'additional_capabilities': {'key': 'additionalCapabilities', 'type': 'AdditionalCapabilities'}, + 'network_profile': {'key': 'networkProfile', 'type': 'VirtualMachineScaleSetNetworkProfile'}, + 'diagnostics_profile': {'key': 'diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'extension_profile': {'key': 'extensionProfile', 'type': 'VirtualMachineScaleSetExtensionProfile'}, + 'license_type': {'key': 'licenseType', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'str'}, + 'eviction_policy': {'key': 'evictionPolicy', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineScaleSetVMProfile, self).__init__(**kwargs) + self.os_profile = kwargs.get('os_profile', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.additional_capabilities = kwargs.get('additional_capabilities', None) + self.network_profile = kwargs.get('network_profile', None) + self.diagnostics_profile = kwargs.get('diagnostics_profile', None) + self.extension_profile = kwargs.get('extension_profile', None) + self.license_type = kwargs.get('license_type', None) + self.priority = kwargs.get('priority', None) + self.eviction_policy = kwargs.get('eviction_policy', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_profile_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_profile_py3.py new file mode 100644 index 000000000000..f1d9ddca44cd --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_profile_py3.py @@ -0,0 +1,88 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineScaleSetVMProfile(Model): + """Describes a virtual machine scale set virtual machine profile. + + :param os_profile: Specifies the operating system settings for the virtual + machines in the scale set. + :type os_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetOSProfile + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetStorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine in the scale set. For instance: whether + the virtual machine has the capability to support attaching managed data + disks with UltraSSD_LRS storage account type. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_10_01.models.AdditionalCapabilities + :param network_profile: Specifies properties of the network interfaces of + the virtual machines in the scale set. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetNetworkProfile + :param diagnostics_profile: Specifies the boot diagnostic settings state. +

    Minimum api-version: 2015-06-15. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param extension_profile: Specifies a collection of settings for + extensions installed on virtual machines in the scale set. + :type extension_profile: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtensionProfile + :param license_type: Specifies that the image or disk that is being used + was licensed on-premises. This element is only used for images that + contain the Windows Server operating system.

    Possible values are: +

    Windows_Client

    Windows_Server

    If this element + is included in a request for an update, the value must match the initial + value. This value cannot be updated.

    For more information, see + [Azure Hybrid Use Benefit for Windows + Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Minimum api-version: 2015-06-15 + :type license_type: str + :param priority: Specifies the priority for the virtual machines in the + scale set.

    Minimum api-version: 2017-10-30-preview. Possible + values include: 'Regular', 'Low' + :type priority: str or + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachinePriorityTypes + :param eviction_policy: Specifies the eviction policy for virtual machines + in a low priority scale set.

    Minimum api-version: + 2017-10-30-preview. Possible values include: 'Deallocate', 'Delete' + :type eviction_policy: str or + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineEvictionPolicyTypes + """ + + _attribute_map = { + 'os_profile': {'key': 'osProfile', 'type': 'VirtualMachineScaleSetOSProfile'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'VirtualMachineScaleSetStorageProfile'}, + 'additional_capabilities': {'key': 'additionalCapabilities', 'type': 'AdditionalCapabilities'}, + 'network_profile': {'key': 'networkProfile', 'type': 'VirtualMachineScaleSetNetworkProfile'}, + 'diagnostics_profile': {'key': 'diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'extension_profile': {'key': 'extensionProfile', 'type': 'VirtualMachineScaleSetExtensionProfile'}, + 'license_type': {'key': 'licenseType', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'str'}, + 'eviction_policy': {'key': 'evictionPolicy', 'type': 'str'}, + } + + def __init__(self, *, os_profile=None, storage_profile=None, additional_capabilities=None, network_profile=None, diagnostics_profile=None, extension_profile=None, license_type: str=None, priority=None, eviction_policy=None, **kwargs) -> None: + super(VirtualMachineScaleSetVMProfile, self).__init__(**kwargs) + self.os_profile = os_profile + self.storage_profile = storage_profile + self.additional_capabilities = additional_capabilities + self.network_profile = network_profile + self.diagnostics_profile = diagnostics_profile + self.extension_profile = extension_profile + self.license_type = license_type + self.priority = priority + self.eviction_policy = eviction_policy diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_py3.py new file mode 100644 index 000000000000..df9890e67f4b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_scale_set_vm_py3.py @@ -0,0 +1,168 @@ +# 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 .resource_py3 import Resource + + +class VirtualMachineScaleSetVM(Resource): + """Describes a virtual machine scale set virtual machine. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param location: Required. Resource location + :type location: str + :param tags: Resource tags + :type tags: dict[str, str] + :ivar instance_id: The virtual machine instance ID. + :vartype instance_id: str + :ivar sku: The virtual machine SKU. + :vartype sku: ~azure.mgmt.compute.v2018_10_01.models.Sku + :ivar latest_model_applied: Specifies whether the latest model has been + applied to the virtual machine. + :vartype latest_model_applied: bool + :ivar vm_id: Azure VM unique ID. + :vartype vm_id: str + :ivar instance_view: The virtual machine instance view. + :vartype instance_view: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVMInstanceView + :param hardware_profile: Specifies the hardware settings for the virtual + machine. + :type hardware_profile: + ~azure.mgmt.compute.v2018_10_01.models.HardwareProfile + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine in the scale set. For instance: whether + the virtual machine has the capability to support attaching managed data + disks with UltraSSD_LRS storage account type. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_10_01.models.AdditionalCapabilities + :param os_profile: Specifies the operating system settings for the virtual + machine. + :type os_profile: ~azure.mgmt.compute.v2018_10_01.models.OSProfile + :param network_profile: Specifies the network interfaces of the virtual + machine. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.NetworkProfile + :param diagnostics_profile: Specifies the boot diagnostic settings state. +

    Minimum api-version: 2015-06-15. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param availability_set: Specifies information about the availability set + that the virtual machine should be assigned to. Virtual machines specified + in the same availability set are allocated to different nodes to maximize + availability. For more information about availability sets, see [Manage + the availability of virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

    For more information on Azure planned maintainance, see [Planned + maintenance for virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Currently, a VM can only be added to availability set at creation + time. An existing VM cannot be added to an availability set. + :type availability_set: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :param license_type: Specifies that the image or disk that is being used + was licensed on-premises. This element is only used for images that + contain the Windows Server operating system.

    Possible values are: +

    Windows_Client

    Windows_Server

    If this element + is included in a request for an update, the value must match the initial + value. This value cannot be updated.

    For more information, see + [Azure Hybrid Use Benefit for Windows + Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Minimum api-version: 2015-06-15 + :type license_type: str + :param plan: Specifies information about the marketplace image used to + create the virtual machine. This element is only used for marketplace + images. Before you can use a marketplace image from an API, you must + enable the image for programmatic use. In the Azure portal, find the + marketplace image that you want to use and then click **Want to deploy + programmatically, Get Started ->**. Enter any required information and + then click **Save**. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :ivar resources: The virtual machine child extension resources. + :vartype resources: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension] + :ivar zones: The virtual machine zones. + :vartype zones: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'instance_id': {'readonly': True}, + 'sku': {'readonly': True}, + 'latest_model_applied': {'readonly': True}, + 'vm_id': {'readonly': True}, + 'instance_view': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'resources': {'readonly': True}, + 'zones': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'instance_id': {'key': 'instanceId', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'latest_model_applied': {'key': 'properties.latestModelApplied', 'type': 'bool'}, + 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineScaleSetVMInstanceView'}, + 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, + 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, + 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'resources': {'key': 'resources', 'type': '[VirtualMachineExtension]'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, location: str, tags=None, hardware_profile=None, storage_profile=None, additional_capabilities=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, plan=None, **kwargs) -> None: + super(VirtualMachineScaleSetVM, self).__init__(location=location, tags=tags, **kwargs) + self.instance_id = None + self.sku = None + self.latest_model_applied = None + self.vm_id = None + self.instance_view = None + self.hardware_profile = hardware_profile + self.storage_profile = storage_profile + self.additional_capabilities = additional_capabilities + self.os_profile = os_profile + self.network_profile = network_profile + self.diagnostics_profile = diagnostics_profile + self.availability_set = availability_set + self.provisioning_state = None + self.license_type = license_type + self.plan = plan + self.resources = None + self.zones = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size.py new file mode 100644 index 000000000000..0fef3efd6c8e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineSize(Model): + """Describes the properties of a VM size. + + :param name: The name of the virtual machine size. + :type name: str + :param number_of_cores: The number of cores supported by the virtual + machine size. + :type number_of_cores: int + :param os_disk_size_in_mb: The OS disk size, in MB, allowed by the virtual + machine size. + :type os_disk_size_in_mb: int + :param resource_disk_size_in_mb: The resource disk size, in MB, allowed by + the virtual machine size. + :type resource_disk_size_in_mb: int + :param memory_in_mb: The amount of memory, in MB, supported by the virtual + machine size. + :type memory_in_mb: int + :param max_data_disk_count: The maximum number of data disks that can be + attached to the virtual machine size. + :type max_data_disk_count: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'number_of_cores': {'key': 'numberOfCores', 'type': 'int'}, + 'os_disk_size_in_mb': {'key': 'osDiskSizeInMB', 'type': 'int'}, + 'resource_disk_size_in_mb': {'key': 'resourceDiskSizeInMB', 'type': 'int'}, + 'memory_in_mb': {'key': 'memoryInMB', 'type': 'int'}, + 'max_data_disk_count': {'key': 'maxDataDiskCount', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineSize, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.number_of_cores = kwargs.get('number_of_cores', None) + self.os_disk_size_in_mb = kwargs.get('os_disk_size_in_mb', None) + self.resource_disk_size_in_mb = kwargs.get('resource_disk_size_in_mb', None) + self.memory_in_mb = kwargs.get('memory_in_mb', None) + self.max_data_disk_count = kwargs.get('max_data_disk_count', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size_paged.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size_paged.py new file mode 100644 index 000000000000..d991dc65cd02 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualMachineSizePaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualMachineSize ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualMachineSize]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualMachineSizePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size_py3.py new file mode 100644 index 000000000000..9f99ba20ce42 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_size_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineSize(Model): + """Describes the properties of a VM size. + + :param name: The name of the virtual machine size. + :type name: str + :param number_of_cores: The number of cores supported by the virtual + machine size. + :type number_of_cores: int + :param os_disk_size_in_mb: The OS disk size, in MB, allowed by the virtual + machine size. + :type os_disk_size_in_mb: int + :param resource_disk_size_in_mb: The resource disk size, in MB, allowed by + the virtual machine size. + :type resource_disk_size_in_mb: int + :param memory_in_mb: The amount of memory, in MB, supported by the virtual + machine size. + :type memory_in_mb: int + :param max_data_disk_count: The maximum number of data disks that can be + attached to the virtual machine size. + :type max_data_disk_count: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'number_of_cores': {'key': 'numberOfCores', 'type': 'int'}, + 'os_disk_size_in_mb': {'key': 'osDiskSizeInMB', 'type': 'int'}, + 'resource_disk_size_in_mb': {'key': 'resourceDiskSizeInMB', 'type': 'int'}, + 'memory_in_mb': {'key': 'memoryInMB', 'type': 'int'}, + 'max_data_disk_count': {'key': 'maxDataDiskCount', 'type': 'int'}, + } + + def __init__(self, *, name: str=None, number_of_cores: int=None, os_disk_size_in_mb: int=None, resource_disk_size_in_mb: int=None, memory_in_mb: int=None, max_data_disk_count: int=None, **kwargs) -> None: + super(VirtualMachineSize, self).__init__(**kwargs) + self.name = name + self.number_of_cores = number_of_cores + self.os_disk_size_in_mb = os_disk_size_in_mb + self.resource_disk_size_in_mb = resource_disk_size_in_mb + self.memory_in_mb = memory_in_mb + self.max_data_disk_count = max_data_disk_count diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_status_code_count.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_status_code_count.py new file mode 100644 index 000000000000..7df7b702acd7 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_status_code_count.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineStatusCodeCount(Model): + """The status code and count of the virtual machine scale set instance view + status summary. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: The instance view status code. + :vartype code: str + :ivar count: The number of instances having a particular status code. + :vartype count: int + """ + + _validation = { + 'code': {'readonly': True}, + 'count': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'count': {'key': 'count', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineStatusCodeCount, self).__init__(**kwargs) + self.code = None + self.count = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_status_code_count_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_status_code_count_py3.py new file mode 100644 index 000000000000..c38800073a95 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_status_code_count_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualMachineStatusCodeCount(Model): + """The status code and count of the virtual machine scale set instance view + status summary. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: The instance view status code. + :vartype code: str + :ivar count: The number of instances having a particular status code. + :vartype count: int + """ + + _validation = { + 'code': {'readonly': True}, + 'count': {'readonly': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'count': {'key': 'count', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualMachineStatusCodeCount, self).__init__(**kwargs) + self.code = None + self.count = None diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_update.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_update.py new file mode 100644 index 000000000000..c9c69cb1cb0e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_update.py @@ -0,0 +1,132 @@ +# 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 .update_resource import UpdateResource + + +class VirtualMachineUpdate(UpdateResource): + """Describes a Virtual Machine Update. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param tags: Resource tags + :type tags: dict[str, str] + :param plan: Specifies information about the marketplace image used to + create the virtual machine. This element is only used for marketplace + images. Before you can use a marketplace image from an API, you must + enable the image for programmatic use. In the Azure portal, find the + marketplace image that you want to use and then click **Want to deploy + programmatically, Get Started ->**. Enter any required information and + then click **Save**. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :param hardware_profile: Specifies the hardware settings for the virtual + machine. + :type hardware_profile: + ~azure.mgmt.compute.v2018_10_01.models.HardwareProfile + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_10_01.models.AdditionalCapabilities + :param os_profile: Specifies the operating system settings for the virtual + machine. + :type os_profile: ~azure.mgmt.compute.v2018_10_01.models.OSProfile + :param network_profile: Specifies the network interfaces of the virtual + machine. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.NetworkProfile + :param diagnostics_profile: Specifies the boot diagnostic settings state. +

    Minimum api-version: 2015-06-15. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param availability_set: Specifies information about the availability set + that the virtual machine should be assigned to. Virtual machines specified + in the same availability set are allocated to different nodes to maximize + availability. For more information about availability sets, see [Manage + the availability of virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

    For more information on Azure planned maintainance, see [Planned + maintenance for virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Currently, a VM can only be added to availability set at creation + time. An existing VM cannot be added to an availability set. + :type availability_set: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :ivar instance_view: The virtual machine instance view. + :vartype instance_view: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineInstanceView + :param license_type: Specifies that the image or disk that is being used + was licensed on-premises. This element is only used for images that + contain the Windows Server operating system.

    Possible values are: +

    Windows_Client

    Windows_Server

    If this element + is included in a request for an update, the value must match the initial + value. This value cannot be updated.

    For more information, see + [Azure Hybrid Use Benefit for Windows + Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Minimum api-version: 2015-06-15 + :type license_type: str + :ivar vm_id: Specifies the VM unique ID which is a 128-bits identifier + that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read + using platform BIOS commands. + :vartype vm_id: str + :param identity: The identity of the virtual machine, if configured. + :type identity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineIdentity + :param zones: The virtual machine zones. + :type zones: list[str] + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'instance_view': {'readonly': True}, + 'vm_id': {'readonly': True}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, + 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, + 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, + 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, + 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, + 'identity': {'key': 'identity', 'type': 'VirtualMachineIdentity'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VirtualMachineUpdate, self).__init__(**kwargs) + self.plan = kwargs.get('plan', None) + self.hardware_profile = kwargs.get('hardware_profile', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.additional_capabilities = kwargs.get('additional_capabilities', None) + self.os_profile = kwargs.get('os_profile', None) + self.network_profile = kwargs.get('network_profile', None) + self.diagnostics_profile = kwargs.get('diagnostics_profile', None) + self.availability_set = kwargs.get('availability_set', None) + self.provisioning_state = None + self.instance_view = None + self.license_type = kwargs.get('license_type', None) + self.vm_id = None + self.identity = kwargs.get('identity', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_update_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_update_py3.py new file mode 100644 index 000000000000..8717d9cf3f0d --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/virtual_machine_update_py3.py @@ -0,0 +1,132 @@ +# 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 .update_resource_py3 import UpdateResource + + +class VirtualMachineUpdate(UpdateResource): + """Describes a Virtual Machine Update. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param tags: Resource tags + :type tags: dict[str, str] + :param plan: Specifies information about the marketplace image used to + create the virtual machine. This element is only used for marketplace + images. Before you can use a marketplace image from an API, you must + enable the image for programmatic use. In the Azure portal, find the + marketplace image that you want to use and then click **Want to deploy + programmatically, Get Started ->**. Enter any required information and + then click **Save**. + :type plan: ~azure.mgmt.compute.v2018_10_01.models.Plan + :param hardware_profile: Specifies the hardware settings for the virtual + machine. + :type hardware_profile: + ~azure.mgmt.compute.v2018_10_01.models.HardwareProfile + :param storage_profile: Specifies the storage settings for the virtual + machine disks. + :type storage_profile: + ~azure.mgmt.compute.v2018_10_01.models.StorageProfile + :param additional_capabilities: Specifies additional capabilities enabled + or disabled on the virtual machine. + :type additional_capabilities: + ~azure.mgmt.compute.v2018_10_01.models.AdditionalCapabilities + :param os_profile: Specifies the operating system settings for the virtual + machine. + :type os_profile: ~azure.mgmt.compute.v2018_10_01.models.OSProfile + :param network_profile: Specifies the network interfaces of the virtual + machine. + :type network_profile: + ~azure.mgmt.compute.v2018_10_01.models.NetworkProfile + :param diagnostics_profile: Specifies the boot diagnostic settings state. +

    Minimum api-version: 2015-06-15. + :type diagnostics_profile: + ~azure.mgmt.compute.v2018_10_01.models.DiagnosticsProfile + :param availability_set: Specifies information about the availability set + that the virtual machine should be assigned to. Virtual machines specified + in the same availability set are allocated to different nodes to maximize + availability. For more information about availability sets, see [Manage + the availability of virtual + machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). +

    For more information on Azure planned maintainance, see [Planned + maintenance for virtual machines in + Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Currently, a VM can only be added to availability set at creation + time. An existing VM cannot be added to an availability set. + :type availability_set: ~azure.mgmt.compute.v2018_10_01.models.SubResource + :ivar provisioning_state: The provisioning state, which only appears in + the response. + :vartype provisioning_state: str + :ivar instance_view: The virtual machine instance view. + :vartype instance_view: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineInstanceView + :param license_type: Specifies that the image or disk that is being used + was licensed on-premises. This element is only used for images that + contain the Windows Server operating system.

    Possible values are: +

    Windows_Client

    Windows_Server

    If this element + is included in a request for an update, the value must match the initial + value. This value cannot be updated.

    For more information, see + [Azure Hybrid Use Benefit for Windows + Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) +

    Minimum api-version: 2015-06-15 + :type license_type: str + :ivar vm_id: Specifies the VM unique ID which is a 128-bits identifier + that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read + using platform BIOS commands. + :vartype vm_id: str + :param identity: The identity of the virtual machine, if configured. + :type identity: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineIdentity + :param zones: The virtual machine zones. + :type zones: list[str] + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'instance_view': {'readonly': True}, + 'vm_id': {'readonly': True}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'plan': {'key': 'plan', 'type': 'Plan'}, + 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'additional_capabilities': {'key': 'properties.additionalCapabilities', 'type': 'AdditionalCapabilities'}, + 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, + 'diagnostics_profile': {'key': 'properties.diagnosticsProfile', 'type': 'DiagnosticsProfile'}, + 'availability_set': {'key': 'properties.availabilitySet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'instance_view': {'key': 'properties.instanceView', 'type': 'VirtualMachineInstanceView'}, + 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, + 'vm_id': {'key': 'properties.vmId', 'type': 'str'}, + 'identity': {'key': 'identity', 'type': 'VirtualMachineIdentity'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, tags=None, plan=None, hardware_profile=None, storage_profile=None, additional_capabilities=None, os_profile=None, network_profile=None, diagnostics_profile=None, availability_set=None, license_type: str=None, identity=None, zones=None, **kwargs) -> None: + super(VirtualMachineUpdate, self).__init__(tags=tags, **kwargs) + self.plan = plan + self.hardware_profile = hardware_profile + self.storage_profile = storage_profile + self.additional_capabilities = additional_capabilities + self.os_profile = os_profile + self.network_profile = network_profile + self.diagnostics_profile = diagnostics_profile + self.availability_set = availability_set + self.provisioning_state = None + self.instance_view = None + self.license_type = license_type + self.vm_id = None + self.identity = identity + self.zones = zones diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_configuration.py new file mode 100644 index 000000000000..b72210839859 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_configuration.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WinRMConfiguration(Model): + """Describes Windows Remote Management configuration of the VM. + + :param listeners: The list of Windows Remote Management listeners + :type listeners: + list[~azure.mgmt.compute.v2018_10_01.models.WinRMListener] + """ + + _attribute_map = { + 'listeners': {'key': 'listeners', 'type': '[WinRMListener]'}, + } + + def __init__(self, **kwargs): + super(WinRMConfiguration, self).__init__(**kwargs) + self.listeners = kwargs.get('listeners', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_configuration_py3.py new file mode 100644 index 000000000000..7ee36d3a256e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_configuration_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WinRMConfiguration(Model): + """Describes Windows Remote Management configuration of the VM. + + :param listeners: The list of Windows Remote Management listeners + :type listeners: + list[~azure.mgmt.compute.v2018_10_01.models.WinRMListener] + """ + + _attribute_map = { + 'listeners': {'key': 'listeners', 'type': '[WinRMListener]'}, + } + + def __init__(self, *, listeners=None, **kwargs) -> None: + super(WinRMConfiguration, self).__init__(**kwargs) + self.listeners = listeners diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_listener.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_listener.py new file mode 100644 index 000000000000..b70455d84f62 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_listener.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WinRMListener(Model): + """Describes Protocol and thumbprint of Windows Remote Management listener. + + :param protocol: Specifies the protocol of listener.

    Possible + values are:
    **http**

    **https**. Possible values include: + 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.compute.v2018_10_01.models.ProtocolTypes + :param certificate_url: This is the URL of a certificate that has been + uploaded to Key Vault as a secret. For adding a secret to the Key Vault, + see [Add a key or secret to the key + vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). + In this case, your certificate needs to be It is the Base64 encoding of + the following JSON Object which is encoded in UTF-8:

    {
    + "data":"",
    "dataType":"pfx",
    + "password":""
    } + :type certificate_url: str + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'ProtocolTypes'}, + 'certificate_url': {'key': 'certificateUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(WinRMListener, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', None) + self.certificate_url = kwargs.get('certificate_url', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_listener_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_listener_py3.py new file mode 100644 index 000000000000..6f788d7a46c3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/win_rm_listener_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WinRMListener(Model): + """Describes Protocol and thumbprint of Windows Remote Management listener. + + :param protocol: Specifies the protocol of listener.

    Possible + values are:
    **http**

    **https**. Possible values include: + 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.compute.v2018_10_01.models.ProtocolTypes + :param certificate_url: This is the URL of a certificate that has been + uploaded to Key Vault as a secret. For adding a secret to the Key Vault, + see [Add a key or secret to the key + vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). + In this case, your certificate needs to be It is the Base64 encoding of + the following JSON Object which is encoded in UTF-8:

    {
    + "data":"",
    "dataType":"pfx",
    + "password":""
    } + :type certificate_url: str + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'ProtocolTypes'}, + 'certificate_url': {'key': 'certificateUrl', 'type': 'str'}, + } + + def __init__(self, *, protocol=None, certificate_url: str=None, **kwargs) -> None: + super(WinRMListener, self).__init__(**kwargs) + self.protocol = protocol + self.certificate_url = certificate_url diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/windows_configuration.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/windows_configuration.py new file mode 100644 index 000000000000..e32c345c11c4 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/windows_configuration.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WindowsConfiguration(Model): + """Specifies Windows operating system settings on the virtual machine. + + :param provision_vm_agent: Indicates whether virtual machine agent should + be provisioned on the virtual machine.

    When this property is not + specified in the request body, default behavior is to set it to true. + This will ensure that VM Agent is installed on the VM so that extensions + can be added to the VM later. + :type provision_vm_agent: bool + :param enable_automatic_updates: Indicates whether virtual machine is + enabled for automatic updates. + :type enable_automatic_updates: bool + :param time_zone: Specifies the time zone of the virtual machine. e.g. + "Pacific Standard Time" + :type time_zone: str + :param additional_unattend_content: Specifies additional base-64 encoded + XML formatted information that can be included in the Unattend.xml file, + which is used by Windows Setup. + :type additional_unattend_content: + list[~azure.mgmt.compute.v2018_10_01.models.AdditionalUnattendContent] + :param win_rm: Specifies the Windows Remote Management listeners. This + enables remote Windows PowerShell. + :type win_rm: ~azure.mgmt.compute.v2018_10_01.models.WinRMConfiguration + """ + + _attribute_map = { + 'provision_vm_agent': {'key': 'provisionVMAgent', 'type': 'bool'}, + 'enable_automatic_updates': {'key': 'enableAutomaticUpdates', 'type': 'bool'}, + 'time_zone': {'key': 'timeZone', 'type': 'str'}, + 'additional_unattend_content': {'key': 'additionalUnattendContent', 'type': '[AdditionalUnattendContent]'}, + 'win_rm': {'key': 'winRM', 'type': 'WinRMConfiguration'}, + } + + def __init__(self, **kwargs): + super(WindowsConfiguration, self).__init__(**kwargs) + self.provision_vm_agent = kwargs.get('provision_vm_agent', None) + self.enable_automatic_updates = kwargs.get('enable_automatic_updates', None) + self.time_zone = kwargs.get('time_zone', None) + self.additional_unattend_content = kwargs.get('additional_unattend_content', None) + self.win_rm = kwargs.get('win_rm', None) diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/windows_configuration_py3.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/windows_configuration_py3.py new file mode 100644 index 000000000000..f6e91dc1a014 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/models/windows_configuration_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WindowsConfiguration(Model): + """Specifies Windows operating system settings on the virtual machine. + + :param provision_vm_agent: Indicates whether virtual machine agent should + be provisioned on the virtual machine.

    When this property is not + specified in the request body, default behavior is to set it to true. + This will ensure that VM Agent is installed on the VM so that extensions + can be added to the VM later. + :type provision_vm_agent: bool + :param enable_automatic_updates: Indicates whether virtual machine is + enabled for automatic updates. + :type enable_automatic_updates: bool + :param time_zone: Specifies the time zone of the virtual machine. e.g. + "Pacific Standard Time" + :type time_zone: str + :param additional_unattend_content: Specifies additional base-64 encoded + XML formatted information that can be included in the Unattend.xml file, + which is used by Windows Setup. + :type additional_unattend_content: + list[~azure.mgmt.compute.v2018_10_01.models.AdditionalUnattendContent] + :param win_rm: Specifies the Windows Remote Management listeners. This + enables remote Windows PowerShell. + :type win_rm: ~azure.mgmt.compute.v2018_10_01.models.WinRMConfiguration + """ + + _attribute_map = { + 'provision_vm_agent': {'key': 'provisionVMAgent', 'type': 'bool'}, + 'enable_automatic_updates': {'key': 'enableAutomaticUpdates', 'type': 'bool'}, + 'time_zone': {'key': 'timeZone', 'type': 'str'}, + 'additional_unattend_content': {'key': 'additionalUnattendContent', 'type': '[AdditionalUnattendContent]'}, + 'win_rm': {'key': 'winRM', 'type': 'WinRMConfiguration'}, + } + + def __init__(self, *, provision_vm_agent: bool=None, enable_automatic_updates: bool=None, time_zone: str=None, additional_unattend_content=None, win_rm=None, **kwargs) -> None: + super(WindowsConfiguration, self).__init__(**kwargs) + self.provision_vm_agent = provision_vm_agent + self.enable_automatic_updates = enable_automatic_updates + self.time_zone = time_zone + self.additional_unattend_content = additional_unattend_content + self.win_rm = win_rm diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/__init__.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/__init__.py new file mode 100644 index 000000000000..6902a94c1597 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/__init__.py @@ -0,0 +1,44 @@ +# 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 .operations import Operations +from .availability_sets_operations import AvailabilitySetsOperations +from .virtual_machine_extension_images_operations import VirtualMachineExtensionImagesOperations +from .virtual_machine_extensions_operations import VirtualMachineExtensionsOperations +from .virtual_machine_images_operations import VirtualMachineImagesOperations +from .usage_operations import UsageOperations +from .virtual_machines_operations import VirtualMachinesOperations +from .virtual_machine_sizes_operations import VirtualMachineSizesOperations +from .images_operations import ImagesOperations +from .virtual_machine_scale_sets_operations import VirtualMachineScaleSetsOperations +from .virtual_machine_scale_set_extensions_operations import VirtualMachineScaleSetExtensionsOperations +from .virtual_machine_scale_set_rolling_upgrades_operations import VirtualMachineScaleSetRollingUpgradesOperations +from .virtual_machine_scale_set_vms_operations import VirtualMachineScaleSetVMsOperations +from .log_analytics_operations import LogAnalyticsOperations +from .virtual_machine_run_commands_operations import VirtualMachineRunCommandsOperations + +__all__ = [ + 'Operations', + 'AvailabilitySetsOperations', + 'VirtualMachineExtensionImagesOperations', + 'VirtualMachineExtensionsOperations', + 'VirtualMachineImagesOperations', + 'UsageOperations', + 'VirtualMachinesOperations', + 'VirtualMachineSizesOperations', + 'ImagesOperations', + 'VirtualMachineScaleSetsOperations', + 'VirtualMachineScaleSetExtensionsOperations', + 'VirtualMachineScaleSetRollingUpgradesOperations', + 'VirtualMachineScaleSetVMsOperations', + 'LogAnalyticsOperations', + 'VirtualMachineRunCommandsOperations', +] diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/availability_sets_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/availability_sets_operations.py new file mode 100644 index 000000000000..3617327b05fa --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/availability_sets_operations.py @@ -0,0 +1,495 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailabilitySetsOperations(object): + """AvailabilitySetsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def create_or_update( + self, resource_group_name, availability_set_name, parameters, custom_headers=None, raw=False, **operation_config): + """Create or update an availability set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param availability_set_name: The name of the availability set. + :type availability_set_name: str + :param parameters: Parameters supplied to the Create Availability Set + operation. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.AvailabilitySet + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AvailabilitySet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.AvailabilitySet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'availabilitySetName': self._serialize.url("availability_set_name", availability_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AvailabilitySet') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AvailabilitySet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}'} + + def update( + self, resource_group_name, availability_set_name, parameters, custom_headers=None, raw=False, **operation_config): + """Update an availability set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param availability_set_name: The name of the availability set. + :type availability_set_name: str + :param parameters: Parameters supplied to the Update Availability Set + operation. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.AvailabilitySetUpdate + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AvailabilitySet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.AvailabilitySet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'availabilitySetName': self._serialize.url("availability_set_name", availability_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AvailabilitySetUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AvailabilitySet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}'} + + def delete( + self, resource_group_name, availability_set_name, custom_headers=None, raw=False, **operation_config): + """Delete an availability set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param availability_set_name: The name of the availability set. + :type availability_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'availabilitySetName': self._serialize.url("availability_set_name", availability_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}'} + + def get( + self, resource_group_name, availability_set_name, custom_headers=None, raw=False, **operation_config): + """Retrieves information about an availability set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param availability_set_name: The name of the availability set. + :type availability_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AvailabilitySet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.AvailabilitySet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'availabilitySetName': self._serialize.url("availability_set_name", availability_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AvailabilitySet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}'} + + def list_by_subscription( + self, custom_headers=None, raw=False, **operation_config): + """Lists all availability sets in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailabilitySet + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.AvailabilitySetPaged[~azure.mgmt.compute.v2018_10_01.models.AvailabilitySet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_subscription.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AvailabilitySetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AvailabilitySetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all availability sets in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailabilitySet + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.AvailabilitySetPaged[~azure.mgmt.compute.v2018_10_01.models.AvailabilitySet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AvailabilitySetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AvailabilitySetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets'} + + def list_available_sizes( + self, resource_group_name, availability_set_name, custom_headers=None, raw=False, **operation_config): + """Lists all available virtual machine sizes that can be used to create a + new virtual machine in an existing availability set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param availability_set_name: The name of the availability set. + :type availability_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachineSize + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineSizePaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineSize] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_available_sizes.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'availabilitySetName': self._serialize.url("availability_set_name", availability_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachineSizePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachineSizePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_available_sizes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/images_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/images_operations.py new file mode 100644 index 000000000000..b9741edb48bd --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/images_operations.py @@ -0,0 +1,522 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ImagesOperations(object): + """ImagesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, image_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'imageName': self._serialize.url("image_name", image_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Image') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Image', response) + if response.status_code == 201: + deserialized = self._deserialize('Image', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, image_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or update an image. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param image_name: The name of the image. + :type image_name: str + :param parameters: Parameters supplied to the Create Image operation. + :type parameters: ~azure.mgmt.compute.v2018_10_01.models.Image + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Image or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.Image] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.Image]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + image_name=image_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Image', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}'} + + + def _update_initial( + self, resource_group_name, image_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'imageName': self._serialize.url("image_name", image_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ImageUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Image', response) + if response.status_code == 201: + deserialized = self._deserialize('Image', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, image_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Update an image. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param image_name: The name of the image. + :type image_name: str + :param parameters: Parameters supplied to the Update Image operation. + :type parameters: ~azure.mgmt.compute.v2018_10_01.models.ImageUpdate + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Image or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.Image] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.Image]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + image_name=image_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Image', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}'} + + + def _delete_initial( + self, resource_group_name, image_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'imageName': self._serialize.url("image_name", image_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, image_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes an Image. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param image_name: The name of the image. + :type image_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + image_name=image_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}'} + + def get( + self, resource_group_name, image_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets an image. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param image_name: The name of the image. + :type image_name: str + :param expand: The expand expression to apply on the operation. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Image or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.Image or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'imageName': self._serialize.url("image_name", image_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Image', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets the list of images under a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Image + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.ImagePaged[~azure.mgmt.compute.v2018_10_01.models.Image] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ImagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ImagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets the list of Images in the subscription. Use nextLink property in + the response to get the next page of Images. Do this till nextLink is + null to fetch all the Images. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Image + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.ImagePaged[~azure.mgmt.compute.v2018_10_01.models.Image] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ImagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ImagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/images'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/log_analytics_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/log_analytics_operations.py new file mode 100644 index 000000000000..f9a6ce85c0a9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/log_analytics_operations.py @@ -0,0 +1,242 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class LogAnalyticsOperations(object): + """LogAnalyticsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + + def _export_request_rate_by_interval_initial( + self, parameters, location, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.export_request_rate_by_interval.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'RequestRateByIntervalInput') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LogAnalyticsOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def export_request_rate_by_interval( + self, parameters, location, custom_headers=None, raw=False, polling=True, **operation_config): + """Export logs that show Api requests made by this subscription in the + given time window to show throttling activities. + + :param parameters: Parameters supplied to the LogAnalytics + getRequestRateByInterval Api. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.RequestRateByIntervalInput + :param location: The location upon which virtual-machine-sizes is + queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + LogAnalyticsOperationResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.LogAnalyticsOperationResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.LogAnalyticsOperationResult]] + :raises: :class:`CloudError` + """ + raw_result = self._export_request_rate_by_interval_initial( + parameters=parameters, + location=location, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LogAnalyticsOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'azure-async-operation'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + export_request_rate_by_interval.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getRequestRateByInterval'} + + + def _export_throttled_requests_initial( + self, parameters, location, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.export_throttled_requests.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ThrottledRequestsInput') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LogAnalyticsOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def export_throttled_requests( + self, parameters, location, custom_headers=None, raw=False, polling=True, **operation_config): + """Export logs that show total throttled Api requests for this + subscription in the given time window. + + :param parameters: Parameters supplied to the LogAnalytics + getThrottledRequests Api. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.ThrottledRequestsInput + :param location: The location upon which virtual-machine-sizes is + queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + LogAnalyticsOperationResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.LogAnalyticsOperationResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.LogAnalyticsOperationResult]] + :raises: :class:`CloudError` + """ + raw_result = self._export_throttled_requests_initial( + parameters=parameters, + location=location, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LogAnalyticsOperationResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'azure-async-operation'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + export_throttled_requests.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getThrottledRequests'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/operations.py new file mode 100644 index 000000000000..221365ebd88b --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/operations.py @@ -0,0 +1,98 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list of compute operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ComputeOperationValue + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.ComputeOperationValuePaged[~azure.mgmt.compute.v2018_10_01.models.ComputeOperationValue] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ComputeOperationValuePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ComputeOperationValuePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.Compute/operations'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/usage_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/usage_operations.py new file mode 100644 index 000000000000..6be160e988ba --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/usage_operations.py @@ -0,0 +1,107 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class UsageOperations(object): + """UsageOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets, for the specified location, the current compute resource usage + information as well as the limits for compute resources under the + subscription. + + :param location: The location for which resource usage is queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Usage + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.UsagePaged[~azure.mgmt.compute.v2018_10_01.models.Usage] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.UsagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.UsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_extension_images_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_extension_images_operations.py new file mode 100644 index 000000000000..6f64e21be833 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_extension_images_operations.py @@ -0,0 +1,248 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class VirtualMachineExtensionImagesOperations(object): + """VirtualMachineExtensionImagesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def get( + self, location, publisher_name, type, version, custom_headers=None, raw=False, **operation_config): + """Gets a virtual machine extension image. + + :param location: The name of a supported Azure region. + :type location: str + :param publisher_name: + :type publisher_name: str + :param type: + :type type: str + :param version: + :type version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineExtensionImage or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionImage or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'publisherName': self._serialize.url("publisher_name", publisher_name, 'str'), + 'type': self._serialize.url("type", type, 'str'), + 'version': self._serialize.url("version", version, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineExtensionImage', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions/{version}'} + + def list_types( + self, location, publisher_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of virtual machine extension image types. + + :param location: The name of a supported Azure region. + :type location: str + :param publisher_name: + :type publisher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionImage] + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_types.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'publisherName': self._serialize.url("publisher_name", publisher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[VirtualMachineExtensionImage]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_types.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types'} + + def list_versions( + self, location, publisher_name, type, filter=None, top=None, orderby=None, custom_headers=None, raw=False, **operation_config): + """Gets a list of virtual machine extension image versions. + + :param location: The name of a supported Azure region. + :type location: str + :param publisher_name: + :type publisher_name: str + :param type: + :type type: str + :param filter: The filter to apply on the operation. + :type filter: str + :param top: + :type top: int + :param orderby: + :type orderby: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionImage] + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_versions.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'publisherName': self._serialize.url("publisher_name", publisher_name, 'str'), + 'type': self._serialize.url("type", type, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int') + if orderby is not None: + query_parameters['$orderby'] = self._serialize.query("orderby", orderby, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[VirtualMachineExtensionImage]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_versions.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_extensions_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_extensions_operations.py new file mode 100644 index 000000000000..79399d26fe53 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_extensions_operations.py @@ -0,0 +1,479 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualMachineExtensionsOperations(object): + """VirtualMachineExtensionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, vm_name, vm_extension_name, extension_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'vmExtensionName': self._serialize.url("vm_extension_name", vm_extension_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(extension_parameters, 'VirtualMachineExtension') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineExtension', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualMachineExtension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, vm_name, vm_extension_name, extension_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to create or update the extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine where the extension + should be created or updated. + :type vm_name: str + :param vm_extension_name: The name of the virtual machine extension. + :type vm_extension_name: str + :param extension_parameters: Parameters supplied to the Create Virtual + Machine Extension operation. + :type extension_parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualMachineExtension + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + vm_extension_name=vm_extension_name, + extension_parameters=extension_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachineExtension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}'} + + + def _update_initial( + self, resource_group_name, vm_name, vm_extension_name, extension_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'vmExtensionName': self._serialize.url("vm_extension_name", vm_extension_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(extension_parameters, 'VirtualMachineExtensionUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineExtension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, vm_name, vm_extension_name, extension_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to update the extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine where the extension + should be updated. + :type vm_name: str + :param vm_extension_name: The name of the virtual machine extension. + :type vm_extension_name: str + :param extension_parameters: Parameters supplied to the Update Virtual + Machine Extension operation. + :type extension_parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionUpdate + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualMachineExtension + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + vm_extension_name=vm_extension_name, + extension_parameters=extension_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachineExtension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}'} + + + def _delete_initial( + self, resource_group_name, vm_name, vm_extension_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'vmExtensionName': self._serialize.url("vm_extension_name", vm_extension_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vm_name, vm_extension_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to delete the extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine where the extension + should be deleted. + :type vm_name: str + :param vm_extension_name: The name of the virtual machine extension. + :type vm_extension_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + vm_extension_name=vm_extension_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}'} + + def get( + self, resource_group_name, vm_name, vm_extension_name, expand=None, custom_headers=None, raw=False, **operation_config): + """The operation to get the extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine containing the + extension. + :type vm_name: str + :param vm_extension_name: The name of the virtual machine extension. + :type vm_extension_name: str + :param expand: The expand expression to apply on the operation. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineExtension or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtension + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'vmExtensionName': self._serialize.url("vm_extension_name", vm_extension_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineExtension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}'} + + def list( + self, resource_group_name, vm_name, expand=None, custom_headers=None, raw=False, **operation_config): + """The operation to get all extensions of a Virtual Machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine containing the + extension. + :type vm_name: str + :param expand: The expand expression to apply on the operation. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineExtensionsListResult or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineExtensionsListResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineExtensionsListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_images_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_images_operations.py new file mode 100644 index 000000000000..5e79b774c90e --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_images_operations.py @@ -0,0 +1,383 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class VirtualMachineImagesOperations(object): + """VirtualMachineImagesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def get( + self, location, publisher_name, offer, skus, version, custom_headers=None, raw=False, **operation_config): + """Gets a virtual machine image. + + :param location: The name of a supported Azure region. + :type location: str + :param publisher_name: A valid image publisher. + :type publisher_name: str + :param offer: A valid image publisher offer. + :type offer: str + :param skus: A valid image SKU. + :type skus: str + :param version: A valid image SKU version. + :type version: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineImage or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineImage or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'publisherName': self._serialize.url("publisher_name", publisher_name, 'str'), + 'offer': self._serialize.url("offer", offer, 'str'), + 'skus': self._serialize.url("skus", skus, 'str'), + 'version': self._serialize.url("version", version, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineImage', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}'} + + def list( + self, location, publisher_name, offer, skus, filter=None, top=None, orderby=None, custom_headers=None, raw=False, **operation_config): + """Gets a list of all virtual machine image versions for the specified + location, publisher, offer, and SKU. + + :param location: The name of a supported Azure region. + :type location: str + :param publisher_name: A valid image publisher. + :type publisher_name: str + :param offer: A valid image publisher offer. + :type offer: str + :param skus: A valid image SKU. + :type skus: str + :param filter: The filter to apply on the operation. + :type filter: str + :param top: + :type top: int + :param orderby: + :type orderby: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineImageResource] + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'publisherName': self._serialize.url("publisher_name", publisher_name, 'str'), + 'offer': self._serialize.url("offer", offer, 'str'), + 'skus': self._serialize.url("skus", skus, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int') + if orderby is not None: + query_parameters['$orderby'] = self._serialize.query("orderby", orderby, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[VirtualMachineImageResource]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions'} + + def list_offers( + self, location, publisher_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of virtual machine image offers for the specified location + and publisher. + + :param location: The name of a supported Azure region. + :type location: str + :param publisher_name: A valid image publisher. + :type publisher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineImageResource] + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_offers.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'publisherName': self._serialize.url("publisher_name", publisher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[VirtualMachineImageResource]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_offers.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers'} + + def list_publishers( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets a list of virtual machine image publishers for the specified Azure + location. + + :param location: The name of a supported Azure region. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineImageResource] + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_publishers.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[VirtualMachineImageResource]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_publishers.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers'} + + def list_skus( + self, location, publisher_name, offer, custom_headers=None, raw=False, **operation_config): + """Gets a list of virtual machine image SKUs for the specified location, + publisher, and offer. + + :param location: The name of a supported Azure region. + :type location: str + :param publisher_name: A valid image publisher. + :type publisher_name: str + :param offer: A valid image publisher offer. + :type offer: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: + list[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineImageResource] + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_skus.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'publisherName': self._serialize.url("publisher_name", publisher_name, 'str'), + 'offer': self._serialize.url("offer", offer, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('[VirtualMachineImageResource]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_skus.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_run_commands_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_run_commands_operations.py new file mode 100644 index 000000000000..506264ff88d9 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_run_commands_operations.py @@ -0,0 +1,167 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class VirtualMachineRunCommandsOperations(object): + """VirtualMachineRunCommandsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """Lists all available run commands for a subscription in a location. + + :param location: The location upon which run commands is queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RunCommandDocumentBase + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.RunCommandDocumentBasePaged[~azure.mgmt.compute.v2018_10_01.models.RunCommandDocumentBase] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RunCommandDocumentBasePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RunCommandDocumentBasePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands'} + + def get( + self, location, command_id, custom_headers=None, raw=False, **operation_config): + """Gets specific run command for a subscription in a location. + + :param location: The location upon which run commands is queried. + :type location: str + :param command_id: The command id. + :type command_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RunCommandDocument or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.RunCommandDocument or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'commandId': self._serialize.url("command_id", command_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RunCommandDocument', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_extensions_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_extensions_operations.py new file mode 100644 index 000000000000..421713e2d4c5 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_extensions_operations.py @@ -0,0 +1,377 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualMachineScaleSetExtensionsOperations(object): + """VirtualMachineScaleSetExtensionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, vm_scale_set_name, vmss_extension_name, extension_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'vmssExtensionName': self._serialize.url("vmss_extension_name", vmss_extension_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(extension_parameters, 'VirtualMachineScaleSetExtension') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSetExtension', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualMachineScaleSetExtension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, vm_scale_set_name, vmss_extension_name, extension_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to create or update an extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set where the + extension should be create or updated. + :type vm_scale_set_name: str + :param vmss_extension_name: The name of the VM scale set extension. + :type vmss_extension_name: str + :param extension_parameters: Parameters supplied to the Create VM + scale set Extension operation. + :type extension_parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtension + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualMachineScaleSetExtension or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtension] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtension]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + vmss_extension_name=vmss_extension_name, + extension_parameters=extension_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachineScaleSetExtension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}'} + + + def _delete_initial( + self, resource_group_name, vm_scale_set_name, vmss_extension_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'vmssExtensionName': self._serialize.url("vmss_extension_name", vmss_extension_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vm_scale_set_name, vmss_extension_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to delete the extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set where the + extension should be deleted. + :type vm_scale_set_name: str + :param vmss_extension_name: The name of the VM scale set extension. + :type vmss_extension_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + vmss_extension_name=vmss_extension_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}'} + + def get( + self, resource_group_name, vm_scale_set_name, vmss_extension_name, expand=None, custom_headers=None, raw=False, **operation_config): + """The operation to get the extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set containing the + extension. + :type vm_scale_set_name: str + :param vmss_extension_name: The name of the VM scale set extension. + :type vmss_extension_name: str + :param expand: The expand expression to apply on the operation. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineScaleSetExtension or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtension + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'vmssExtensionName': self._serialize.url("vmss_extension_name", vmss_extension_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSetExtension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}'} + + def list( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of all extensions in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set containing the + extension. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachineScaleSetExtension + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtensionPaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetExtension] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachineScaleSetExtensionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachineScaleSetExtensionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_rolling_upgrades_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_rolling_upgrades_operations.py new file mode 100644 index 000000000000..9f7d82a51d23 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_rolling_upgrades_operations.py @@ -0,0 +1,347 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualMachineScaleSetRollingUpgradesOperations(object): + """VirtualMachineScaleSetRollingUpgradesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + + def _cancel_initial( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.cancel.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def cancel( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Cancels the current virtual machine scale set rolling upgrade. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._cancel_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + cancel.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/cancel'} + + + def _start_os_upgrade_initial( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start_os_upgrade.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start_os_upgrade( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts a rolling upgrade to move all virtual machine scale set + instances to the latest available Platform Image OS version. Instances + which are already running the latest available OS version are not + affected. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_os_upgrade_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start_os_upgrade.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osRollingUpgrade'} + + + def _start_extension_upgrade_initial( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start_extension_upgrade.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start_extension_upgrade( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts a rolling upgrade to move all extensions for all virtual machine + scale set instances to the latest available extension version. + Instances which are already running the latest extension versions are + not affected. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_extension_upgrade_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start_extension_upgrade.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade'} + + def get_latest( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets the status of the latest virtual machine scale set rolling + upgrade. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RollingUpgradeStatusInfo or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.RollingUpgradeStatusInfo or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_latest.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RollingUpgradeStatusInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_latest.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/latest'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_vms_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_vms_operations.py new file mode 100644 index 000000000000..d8b6638b82fe --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_set_vms_operations.py @@ -0,0 +1,1226 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualMachineScaleSetVMsOperations(object): + """VirtualMachineScaleSetVMsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + + def _reimage_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reimage.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reimage( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Reimages (upgrade the operating system) a specific virtual machine in a + VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reimage_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reimage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage'} + + + def _reimage_all_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reimage_all.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reimage_all( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Allows you to re-image all the disks ( including data disks ) in the a + VM scale set instance. This operation is only supported for managed + disks. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reimage_all_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reimage_all.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimageall'} + + + def _deallocate_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.deallocate.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def deallocate( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Deallocates a specific virtual machine in a VM scale set. Shuts down + the virtual machine and releases the compute resources it uses. You are + not billed for the compute resources of this virtual machine once it is + deallocated. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._deallocate_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + deallocate.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/deallocate'} + + + def _update_initial( + self, resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualMachineScaleSetVM') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSetVM', response) + if response.status_code == 202: + deserialized = self._deserialize('VirtualMachineScaleSetVM', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual machine of a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set where the + extension should be create or updated. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param parameters: Parameters supplied to the Update Virtual Machine + Scale Sets VM operation. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVM + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualMachineScaleSetVM or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVM] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVM]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachineScaleSetVM', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}'} + + + def _delete_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a virtual machine from a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}'} + + def get( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + """Gets a virtual machine from a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineScaleSetVM or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVM or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSetVM', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}'} + + def get_instance_view( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + """Gets the status of a virtual machine from a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineScaleSetVMInstanceView or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVMInstanceView + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_instance_view.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSetVMInstanceView', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_instance_view.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/instanceView'} + + def list( + self, resource_group_name, virtual_machine_scale_set_name, filter=None, select=None, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets a list of all virtual machines in a VM scale sets. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the VM scale set. + :type virtual_machine_scale_set_name: str + :param filter: The filter to apply to the operation. + :type filter: str + :param select: The list parameters. + :type select: str + :param expand: The expand expression to apply to the operation. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachineScaleSetVM + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVMPaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetVM] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if select is not None: + query_parameters['$select'] = self._serialize.query("select", select, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachineScaleSetVMPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachineScaleSetVMPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines'} + + + def _power_off_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.power_off.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def power_off( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Power off (stop) a virtual machine in a VM scale set. Note that + resources are still attached and you are getting charged for the + resources. Instead, use deallocate to release resources and avoid + charges. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._power_off_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + power_off.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff'} + + + def _restart_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.restart.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def restart( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Restarts a virtual machine in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._restart_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restart.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart'} + + + def _start_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts a virtual machine in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start'} + + + def _redeploy_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.redeploy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def redeploy( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Redeploys a virtual machine in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._redeploy_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + redeploy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy'} + + + def _perform_maintenance_initial( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.perform_maintenance.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def perform_maintenance( + self, resource_group_name, vm_scale_set_name, instance_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Performs maintenance on a virtual machine in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._perform_maintenance_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + perform_maintenance.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance'} + + + def _run_command_initial( + self, resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.run_command.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'RunCommandInput') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RunCommandResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def run_command( + self, resource_group_name, vm_scale_set_name, instance_id, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Run command on a virtual machine in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_id: The instance ID of the virtual machine. + :type instance_id: str + :param parameters: Parameters supplied to the Run command operation. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.RunCommandInput + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RunCommandResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.RunCommandResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.RunCommandResult]] + :raises: :class:`CloudError` + """ + raw_result = self._run_command_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_id=instance_id, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RunCommandResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + run_command.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/runCommand'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_sets_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_sets_operations.py new file mode 100644 index 000000000000..904d18441eec --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_scale_sets_operations.py @@ -0,0 +1,1750 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualMachineScaleSetsOperations(object): + """VirtualMachineScaleSetsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, vm_scale_set_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualMachineScaleSet') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSet', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualMachineScaleSet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, vm_scale_set_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or update a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set to create or + update. + :type vm_scale_set_name: str + :param parameters: The scale set object. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSet + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualMachineScaleSet + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSet] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSet]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachineScaleSet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}'} + + + def _update_initial( + self, resource_group_name, vm_scale_set_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualMachineScaleSetUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, vm_scale_set_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Update a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set to create or + update. + :type vm_scale_set_name: str + :param parameters: The scale set object. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetUpdate + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualMachineScaleSet + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSet] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSet]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachineScaleSet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}'} + + + def _delete_initial( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}'} + + def get( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Display information about a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineScaleSet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSet + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}'} + + + def _deallocate_initial( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = None + if instance_ids is not None: + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceIDs(instance_ids=instance_ids) + + # Construct URL + url = self.deallocate.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if vm_instance_ids is not None: + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceIDs') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def deallocate( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Deallocates specific virtual machines in a VM scale set. Shuts down the + virtual machines and releases the compute resources. You are not billed + for the compute resources that this virtual machine scale set + deallocates. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + Omitting the virtual machine scale set instance ids will result in the + operation being performed on all virtual machines in the virtual + machine scale set. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._deallocate_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + deallocate.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/deallocate'} + + + def _delete_instances_initial( + self, resource_group_name, vm_scale_set_name, instance_ids, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceRequiredIDs(instance_ids=instance_ids) + + # Construct URL + url = self.delete_instances.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceRequiredIDs') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete_instances( + self, resource_group_name, vm_scale_set_name, instance_ids, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes virtual machines in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_instances_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete_instances.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/delete'} + + def get_instance_view( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets the status of a VM scale set instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineScaleSetInstanceView or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetInstanceView + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_instance_view.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineScaleSetInstanceView', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_instance_view.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of all VM scale sets under a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachineScaleSet + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetPaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachineScaleSetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachineScaleSetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list of all VM Scale Sets in the subscription, regardless of the + associated resource group. Use nextLink property in the response to get + the next page of VM Scale Sets. Do this till nextLink is null to fetch + all the VM Scale Sets. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachineScaleSet + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetPaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachineScaleSetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachineScaleSetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachineScaleSets'} + + def list_skus( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of SKUs available for your VM scale set, including the + minimum and maximum VM instances allowed for each SKU. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachineScaleSetSku + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetSkuPaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineScaleSetSku] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_skus.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachineScaleSetSkuPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachineScaleSetSkuPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_skus.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/skus'} + + def get_os_upgrade_history( + self, resource_group_name, vm_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets list of OS upgrades on a VM scale set instance. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + UpgradeOperationHistoricalStatusInfo + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.UpgradeOperationHistoricalStatusInfoPaged[~azure.mgmt.compute.v2018_10_01.models.UpgradeOperationHistoricalStatusInfo] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_os_upgrade_history.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.UpgradeOperationHistoricalStatusInfoPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.UpgradeOperationHistoricalStatusInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_os_upgrade_history.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osUpgradeHistory'} + + + def _power_off_initial( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = None + if instance_ids is not None: + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceIDs(instance_ids=instance_ids) + + # Construct URL + url = self.power_off.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if vm_instance_ids is not None: + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceIDs') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def power_off( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Power off (stop) one or more virtual machines in a VM scale set. Note + that resources are still attached and you are getting charged for the + resources. Instead, use deallocate to release resources and avoid + charges. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + Omitting the virtual machine scale set instance ids will result in the + operation being performed on all virtual machines in the virtual + machine scale set. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._power_off_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + power_off.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/poweroff'} + + + def _restart_initial( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = None + if instance_ids is not None: + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceIDs(instance_ids=instance_ids) + + # Construct URL + url = self.restart.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if vm_instance_ids is not None: + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceIDs') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def restart( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Restarts one or more virtual machines in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + Omitting the virtual machine scale set instance ids will result in the + operation being performed on all virtual machines in the virtual + machine scale set. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._restart_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restart.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/restart'} + + + def _start_initial( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = None + if instance_ids is not None: + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceIDs(instance_ids=instance_ids) + + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if vm_instance_ids is not None: + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceIDs') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts one or more virtual machines in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + Omitting the virtual machine scale set instance ids will result in the + operation being performed on all virtual machines in the virtual + machine scale set. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/start'} + + + def _redeploy_initial( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = None + if instance_ids is not None: + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceIDs(instance_ids=instance_ids) + + # Construct URL + url = self.redeploy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if vm_instance_ids is not None: + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceIDs') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def redeploy( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Redeploy one or more virtual machines in a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + Omitting the virtual machine scale set instance ids will result in the + operation being performed on all virtual machines in the virtual + machine scale set. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._redeploy_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + redeploy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/redeploy'} + + + def _perform_maintenance_initial( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = None + if instance_ids is not None: + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceIDs(instance_ids=instance_ids) + + # Construct URL + url = self.perform_maintenance.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if vm_instance_ids is not None: + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceIDs') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def perform_maintenance( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Perform maintenance on one or more virtual machines in a VM scale set. + Operation on instances which are not eligible for perform maintenance + will be failed. Please refer to best practices for more details: + https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-maintenance-notifications. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + Omitting the virtual machine scale set instance ids will result in the + operation being performed on all virtual machines in the virtual + machine scale set. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._perform_maintenance_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + perform_maintenance.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/performMaintenance'} + + + def _update_instances_initial( + self, resource_group_name, vm_scale_set_name, instance_ids, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceRequiredIDs(instance_ids=instance_ids) + + # Construct URL + url = self.update_instances.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceRequiredIDs') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def update_instances( + self, resource_group_name, vm_scale_set_name, instance_ids, custom_headers=None, raw=False, polling=True, **operation_config): + """Upgrades one or more virtual machines to the latest SKU set in the VM + scale set model. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._update_instances_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_instances.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/manualupgrade'} + + + def _reimage_initial( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = None + if instance_ids is not None: + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceIDs(instance_ids=instance_ids) + + # Construct URL + url = self.reimage.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if vm_instance_ids is not None: + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceIDs') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reimage( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Reimages (upgrade the operating system) one or more virtual machines in + a VM scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + Omitting the virtual machine scale set instance ids will result in the + operation being performed on all virtual machines in the virtual + machine scale set. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reimage_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reimage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimage'} + + + def _reimage_all_initial( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, **operation_config): + vm_instance_ids = None + if instance_ids is not None: + vm_instance_ids = models.VirtualMachineScaleSetVMInstanceIDs(instance_ids=instance_ids) + + # Construct URL + url = self.reimage_all.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if vm_instance_ids is not None: + body_content = self._serialize.body(vm_instance_ids, 'VirtualMachineScaleSetVMInstanceIDs') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reimage_all( + self, resource_group_name, vm_scale_set_name, instance_ids=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Reimages all the disks ( including data disks ) in the virtual machines + in a VM scale set. This operation is only supported for managed disks. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param instance_ids: The virtual machine scale set instance ids. + Omitting the virtual machine scale set instance ids will result in the + operation being performed on all virtual machines in the virtual + machine scale set. + :type instance_ids: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reimage_all_initial( + resource_group_name=resource_group_name, + vm_scale_set_name=vm_scale_set_name, + instance_ids=instance_ids, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reimage_all.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimageall'} + + def force_recovery_service_fabric_platform_update_domain_walk( + self, resource_group_name, vm_scale_set_name, platform_update_domain, custom_headers=None, raw=False, **operation_config): + """Manual platform update domain walk to update virtual machines in a + service fabric virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_scale_set_name: The name of the VM scale set. + :type vm_scale_set_name: str + :param platform_update_domain: The platform update domain for which a + manual recovery walk is requested + :type platform_update_domain: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RecoveryWalkResponse or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.RecoveryWalkResponse or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.force_recovery_service_fabric_platform_update_domain_walk.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmScaleSetName': self._serialize.url("vm_scale_set_name", vm_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + query_parameters['platformUpdateDomain'] = self._serialize.query("platform_update_domain", platform_update_domain, 'int') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RecoveryWalkResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + force_recovery_service_fabric_platform_update_domain_walk.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/forceRecoveryServiceFabricPlatformUpdateDomainWalk'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_sizes_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_sizes_operations.py new file mode 100644 index 000000000000..9c8970331776 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machine_sizes_operations.py @@ -0,0 +1,107 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class VirtualMachineSizesOperations(object): + """VirtualMachineSizesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """This API is deprecated. Use [Resources + Skus](https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list). + + :param location: The location upon which virtual-machine-sizes is + queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachineSize + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineSizePaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineSize] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachineSizePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachineSizePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/vmSizes'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machines_operations.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machines_operations.py new file mode 100644 index 000000000000..009c54f350e3 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/operations/virtual_machines_operations.py @@ -0,0 +1,1551 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualMachinesOperations(object): + """VirtualMachinesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def list_by_location( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets all the virtual machines under the specified subscription for the + specified location. + + :param location: The location for which virtual machines under the + subscription are queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachine + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachinePaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachine] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_location.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_location.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines'} + + + def _capture_initial( + self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.capture.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualMachineCaptureParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def capture( + self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Captures the VM by copying virtual hard disks of the VM and outputs a + template that can be used to create similar VMs. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param parameters: Parameters supplied to the Capture Virtual Machine + operation. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineCaptureParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualMachineCaptureResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineCaptureResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineCaptureResult]] + :raises: :class:`CloudError` + """ + raw_result = self._capture_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachineCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + capture.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/capture'} + + + def _create_or_update_initial( + self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualMachine') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachine', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualMachine', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to create or update a virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param parameters: Parameters supplied to the Create Virtual Machine + operation. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachine + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualMachine or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachine] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachine]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachine', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}'} + + + def _update_initial( + self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualMachineUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachine', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualMachine', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to update a virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param parameters: Parameters supplied to the Update Virtual Machine + operation. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineUpdate + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualMachine or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.VirtualMachine] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.VirtualMachine]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualMachine', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}'} + + + def _delete_initial( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vm_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to delete a virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}'} + + def get( + self, resource_group_name, vm_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Retrieves information about the model view or the instance view of a + virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param expand: The expand expression to apply on the operation. + Possible values include: 'instanceView' + :type expand: str or + ~azure.mgmt.compute.v2018_10_01.models.InstanceViewTypes + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachine or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.compute.v2018_10_01.models.VirtualMachine or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'InstanceViewTypes') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachine', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}'} + + def instance_view( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + """Retrieves information about the run-time state of a virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualMachineInstanceView or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineInstanceView or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.instance_view.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualMachineInstanceView', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + instance_view.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView'} + + + def _convert_to_managed_disks_initial( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.convert_to_managed_disks.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def convert_to_managed_disks( + self, resource_group_name, vm_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Converts virtual machine disks from blob-based to managed disks. + Virtual machine must be stop-deallocated before invoking this + operation. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._convert_to_managed_disks_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + convert_to_managed_disks.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/convertToManagedDisks'} + + + def _deallocate_initial( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.deallocate.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def deallocate( + self, resource_group_name, vm_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Shuts down the virtual machine and releases the compute resources. You + are not billed for the compute resources that this virtual machine + uses. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._deallocate_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + deallocate.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/deallocate'} + + def generalize( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + """Sets the state of the virtual machine to generalized. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.generalize.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + generalize.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/generalize'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all of the virtual machines in the specified resource group. Use + the nextLink property in the response to get the next page of virtual + machines. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachine + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachinePaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachine] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the virtual machines in the specified subscription. Use + the nextLink property in the response to get the next page of virtual + machines. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachine + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachinePaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachine] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachinePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines'} + + def list_available_sizes( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + """Lists all available virtual machine sizes to which the specified + virtual machine can be resized. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualMachineSize + :rtype: + ~azure.mgmt.compute.v2018_10_01.models.VirtualMachineSizePaged[~azure.mgmt.compute.v2018_10_01.models.VirtualMachineSize] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_available_sizes.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualMachineSizePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualMachineSizePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_available_sizes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes'} + + + def _power_off_initial( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.power_off.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def power_off( + self, resource_group_name, vm_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to power off (stop) a virtual machine. The virtual + machine can be restarted with the same provisioned resources. You are + still charged for this virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._power_off_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + power_off.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/powerOff'} + + + def _restart_initial( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.restart.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def restart( + self, resource_group_name, vm_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to restart a virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._restart_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restart.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/restart'} + + + def _start_initial( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, vm_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to start a virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/start'} + + + def _redeploy_initial( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.redeploy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def redeploy( + self, resource_group_name, vm_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to redeploy a virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._redeploy_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + redeploy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/redeploy'} + + + def _perform_maintenance_initial( + self, resource_group_name, vm_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.perform_maintenance.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def perform_maintenance( + self, resource_group_name, vm_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The operation to perform maintenance on a virtual machine. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._perform_maintenance_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + perform_maintenance.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/performMaintenance'} + + + def _run_command_initial( + self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.run_command.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vmName': self._serialize.url("vm_name", vm_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'RunCommandInput') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RunCommandResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def run_command( + self, resource_group_name, vm_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Run command on the VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param vm_name: The name of the virtual machine. + :type vm_name: str + :param parameters: Parameters supplied to the Run command operation. + :type parameters: + ~azure.mgmt.compute.v2018_10_01.models.RunCommandInput + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RunCommandResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.compute.v2018_10_01.models.RunCommandResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.compute.v2018_10_01.models.RunCommandResult]] + :raises: :class:`CloudError` + """ + raw_result = self._run_command_initial( + resource_group_name=resource_group_name, + vm_name=vm_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RunCommandResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + run_command.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommand'} diff --git a/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/version.py b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/version.py new file mode 100644 index 000000000000..ddb74deab6d6 --- /dev/null +++ b/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "2018-10-01" + diff --git a/azure-mgmt-compute/azure/mgmt/compute/version.py b/azure-mgmt-compute/azure/mgmt/compute/version.py index ffdd8a201ce0..97d547bebd31 100644 --- a/azure-mgmt-compute/azure/mgmt/compute/version.py +++ b/azure-mgmt-compute/azure/mgmt/compute/version.py @@ -5,4 +5,4 @@ # license information. # -------------------------------------------------------------------------- -VERSION = "4.0.1" +VERSION = "4.3.1" diff --git a/azure-mgmt-compute/azure_bdist_wheel.py b/azure-mgmt-compute/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-compute/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-compute/build.json b/azure-mgmt-compute/build.json deleted file mode 100644 index 533c288e2cab..000000000000 --- a/azure-mgmt-compute/build.json +++ /dev/null @@ -1,584 +0,0 @@ -{ - "autorest": [ - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4228", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/js-yaml": "^3.10.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.53", - "@types/source-map": "^0.5.0", - "@types/yargs": "^8.0.2", - "@types/z-schema": "^3.16.31", - "dts-generator": "^2.1.0", - "mocha": "^4.0.1", - "mocha-typescript": "^1.1.7", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4228/node_modules/@microsoft.azure/autorest-core", - "_shasum": "b3897b8615417aa07cf9113d4bd18862b32f82f8", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4228", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4228/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "C:\\Users\\lmazuel\\Git\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4228\\node_modules\\@microsoft.azure\\autorest-core", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4228\\node_modules\\@microsoft.azure\\autorest-core", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4228/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4228/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4228\\node_modules\\@microsoft.azure\\autorest-core", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4228\\node_modules\\@microsoft.azure\\autorest-core" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4230", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/js-yaml": "^3.10.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.53", - "@types/source-map": "0.5.0", - "@types/yargs": "^8.0.2", - "@types/z-schema": "^3.16.31", - "dts-generator": "^2.1.0", - "mocha": "^4.0.1", - "mocha-typescript": "^1.1.7", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4230/node_modules/@microsoft.azure/autorest-core", - "_shasum": "3c9b387fbe18ce3a54b68bc0c24ddb0a4c850f25", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4230", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4230/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "C:\\Users\\lmazuel\\Git\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4230\\node_modules\\@microsoft.azure\\autorest-core", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4230\\node_modules\\@microsoft.azure\\autorest-core", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4230/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4230/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4230\\node_modules\\@microsoft.azure\\autorest-core", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4230\\node_modules\\@microsoft.azure\\autorest-core" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4231", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/js-yaml": "^3.10.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.53", - "@types/source-map": "0.5.0", - "@types/yargs": "^8.0.2", - "@types/z-schema": "^3.16.31", - "dts-generator": "^2.1.0", - "mocha": "^4.0.1", - "mocha-typescript": "^1.1.7", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4231/node_modules/@microsoft.azure/autorest-core", - "_shasum": "fa1b2b50cdd91bec9f04542420c3056eda202b87", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4231", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4231/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "C:\\Users\\lmazuel\\Git\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4231\\node_modules\\@microsoft.azure\\autorest-core", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4231\\node_modules\\@microsoft.azure\\autorest-core", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4231/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4231/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4231\\node_modules\\@microsoft.azure\\autorest-core", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4231\\node_modules\\@microsoft.azure\\autorest-core" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4233", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@types/commonmark": "^0.27.0", - "@types/js-yaml": "^3.10.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.53", - "@types/source-map": "0.5.0", - "@types/yargs": "^8.0.2", - "@types/z-schema": "^3.16.31", - "dts-generator": "^2.1.0", - "mocha": "^4.0.1", - "mocha-typescript": "^1.1.7", - "shx": "0.2.2", - "static-link": "^0.2.3", - "vscode-jsonrpc": "^3.3.1" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4233/node_modules/@microsoft.azure/autorest-core", - "_shasum": "85ef8a9fc8065e67218f273a658455739c7dcd4d", - "_shrinkwrap": null, - "bin": { - "autorest-core": "./dist/app.js", - "autorest-language-service": "dist/language-service/language-service.js" - }, - "_id": "@microsoft.azure/autorest-core@2.0.4233", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4233/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "C:\\Users\\lmazuel\\Git\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4233\\node_modules\\@microsoft.azure\\autorest-core", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4233\\node_modules\\@microsoft.azure\\autorest-core", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4233/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest-core@2.0.4233/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4233\\node_modules\\@microsoft.azure\\autorest-core", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest-core@2.0.4233\\node_modules\\@microsoft.azure\\autorest-core" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.3.38", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "2.3.1", - "autorest": "^2.0.4201", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "903bb77932e4ed1b8bc3b25cc39b167143494f6c", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.3.38", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "C:\\Users\\lmazuel\\Git\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.38\\node_modules\\@microsoft.azure\\autorest.modeler", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.38\\node_modules\\@microsoft.azure\\autorest.modeler", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.38/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.38\\node_modules\\@microsoft.azure\\autorest.modeler", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.38\\node_modules\\@microsoft.azure\\autorest.modeler" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.3.44", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "2.3.17", - "autorest": "^2.0.4225", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "9b5a880a77467be33a77f002f03230d3ccc21266", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.3.44", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "C:\\Users\\lmazuel\\Git\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.44\\node_modules\\@microsoft.azure\\autorest.modeler", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.44\\node_modules\\@microsoft.azure\\autorest.modeler", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.modeler@2.3.44/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.44\\node_modules\\@microsoft.azure\\autorest.modeler", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.modeler@2.3.44\\node_modules\\@microsoft.azure\\autorest.modeler" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.python", - "version": "2.1.34", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "^2.3.13", - "autorest": "^2.0.4203", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.python@2.1.34/node_modules/@microsoft.azure/autorest.python", - "_shasum": "b58d7e0542e081cf410fdbcdf8c14acf9cee16a7", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.python@2.1.34", - "_from": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.python@2.1.34/node_modules/@microsoft.azure/autorest.python", - "_requested": { - "type": "directory", - "where": "C:\\Users\\lmazuel\\Git\\swagger-to-sdk", - "raw": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.python@2.1.34\\node_modules\\@microsoft.azure\\autorest.python", - "rawSpec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.python@2.1.34\\node_modules\\@microsoft.azure\\autorest.python", - "saveSpec": "file:C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.python@2.1.34/node_modules/@microsoft.azure/autorest.python", - "fetchSpec": "C:/Users/lmazuel/.autorest/@microsoft.azure_autorest.python@2.1.34/node_modules/@microsoft.azure/autorest.python" - }, - "_spec": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.python@2.1.34\\node_modules\\@microsoft.azure\\autorest.python", - "_where": "C:\\Users\\lmazuel\\.autorest\\@microsoft.azure_autorest.python@2.1.34\\node_modules\\@microsoft.azure\\autorest.python" - }, - "extensionManager": { - "installationPath": "C:\\Users\\lmazuel\\.autorest", - "sharedLock": { - "name": "C:\\Users\\lmazuel\\.autorest", - "exclusiveLock": { - "name": "C__Users_lmazuel_.autorest.exclusive-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.exclusive-lock", - "exclusive": true - } - }, - "busyLock": { - "name": "C__Users_lmazuel_.autorest.busy-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.busy-lock", - "exclusive": true - } - }, - "personalLock": { - "name": "C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "pipe": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "options": { - "path": "\\\\.\\pipe\\C__Users_lmazuel_.autorest.6465.984699645084.personal-lock", - "exclusive": true - } - }, - "file": "C:\\Users\\lmazuel\\AppData\\Local\\Temp/C__Users_lmazuel_.autorest.lock" - }, - "dotnetPath": "C:\\Users\\lmazuel\\.dotnet" - }, - "installationPath": "C:\\Users\\lmazuel\\.autorest" - } - ], - "autorest_bootstrap": { - "dependencies": { - "autorest": { - "version": "2.0.4215", - "from": "autorest", - "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4215.tgz" - } - } - } -} \ No newline at end of file diff --git a/azure-mgmt-compute/setup.cfg b/azure-mgmt-compute/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-compute/setup.cfg +++ b/azure-mgmt-compute/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-compute/setup.py b/azure-mgmt-compute/setup.py index 496fd34c6324..ca24ecb6904a 100644 --- a/azure-mgmt-compute/setup.py +++ b/azure-mgmt-compute/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-compute" @@ -72,14 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ 'msrest>=0.5.0', - 'msrestazure>=0.4.27,<2.0.0', - 'azure-common~=1.1,>=1.1.9', + 'msrestazure>=0.4.32,<2.0.0', + 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_availability_sets.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_availability_sets.yaml index 0327be7f9186..d254c62f4223 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_availability_sets.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_availability_sets.yaml @@ -8,23 +8,23 @@ interactions: Connection: [keep-alive] Content-Length: ['129'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"platformUpdateDomainCount\"\ - : 4,\r\n \"platformFaultDomainCount\": 2\r\n },\r\n \"type\": \"Microsoft.Compute/availabilitySets\"\ - ,\r\n \"location\": \"westus\",\r\n \"tags\": {\r\n \"tag1\": \"value1\"\ - \r\n },\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097\"\ - ,\r\n \"name\": \"pyarmset53ac1097\",\r\n \"sku\": {\r\n \"name\": \"\ - Classic\"\r\n }\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"platformUpdateDomainCount\": + 4,\r\n \"platformFaultDomainCount\": 2\r\n },\r\n \"type\": \"Microsoft.Compute/availabilitySets\",\r\n + \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"tag1\": \"value1\"\r\n + \ },\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097\",\r\n + \ \"name\": \"pyarmset53ac1097\",\r\n \"sku\": {\r\n \"name\": \"Classic\"\r\n + \ }\r\n}"} headers: cache-control: [no-cache] content-length: ['477'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:12:25 GMT'] + date: ['Thu, 27 Sep 2018 22:13:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -32,7 +32,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;238,Microsoft.Compute/PutVM30Min;1198'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1199'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: @@ -41,25 +41,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"platformUpdateDomainCount\"\ - : 4,\r\n \"platformFaultDomainCount\": 2,\r\n \"virtualMachines\": []\r\ - \n },\r\n \"type\": \"Microsoft.Compute/availabilitySets\",\r\n \"location\"\ - : \"westus\",\r\n \"tags\": {\r\n \"tag1\": \"value1\"\r\n },\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097\"\ - ,\r\n \"name\": \"pyarmset53ac1097\",\r\n \"sku\": {\r\n \"name\": \"\ - Classic\"\r\n }\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"platformUpdateDomainCount\": + 4,\r\n \"platformFaultDomainCount\": 2,\r\n \"virtualMachines\": []\r\n + \ },\r\n \"type\": \"Microsoft.Compute/availabilitySets\",\r\n \"location\": + \"westus\",\r\n \"tags\": {\r\n \"tag1\": \"value1\"\r\n },\r\n \"id\": + \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097\",\r\n + \ \"name\": \"pyarmset53ac1097\",\r\n \"sku\": {\r\n \"name\": \"Classic\"\r\n + \ }\r\n}"} headers: cache-control: [no-cache] content-length: ['505'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:12:25 GMT'] + date: ['Thu, 27 Sep 2018 22:13:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -67,7 +66,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4195,Microsoft.Compute/LowCostGet30Min;33593'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3999,Microsoft.Compute/LowCostGet30Min;31999'] status: {code: 200, message: OK} - request: body: null @@ -75,26 +74,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets?api-version=2018-10-01 response: - body: {string: "{\r\n \"value\": [\r\n {\r\n \"properties\": {\r\n \ - \ \"platformUpdateDomainCount\": 4,\r\n \"platformFaultDomainCount\"\ - : 2,\r\n \"virtualMachines\": []\r\n },\r\n \"type\": \"\ - Microsoft.Compute/availabilitySets\",\r\n \"location\": \"westus\",\r\ - \n \"tags\": {\r\n \"tag1\": \"value1\"\r\n },\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097\"\ - ,\r\n \"name\": \"pyarmset53ac1097\",\r\n \"sku\": {\r\n \ - \ \"name\": \"Classic\"\r\n }\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"value\": [\r\n {\r\n \"properties\": {\r\n \"platformUpdateDomainCount\": + 4,\r\n \"platformFaultDomainCount\": 2,\r\n \"virtualMachines\": + []\r\n },\r\n \"type\": \"Microsoft.Compute/availabilitySets\",\r\n + \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"tag1\": + \"value1\"\r\n },\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097\",\r\n + \ \"name\": \"pyarmset53ac1097\",\r\n \"sku\": {\r\n \"name\": + \"Classic\"\r\n }\r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] content-length: ['598'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:12:25 GMT'] + date: ['Thu, 27 Sep 2018 22:13:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -102,7 +99,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4194,Microsoft.Compute/LowCostGet30Min;33592'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3998,Microsoft.Compute/LowCostGet30Min;31998'] status: {code: 200, message: OK} - request: body: null @@ -110,521 +107,519 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097/vmSizes?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097/vmSizes?api-version=2018-10-01 response: - body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"Standard_B1ms\"\ - ,\r\n \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 4096,\r\n \"memoryInMB\": 2048,\r\n\ - \ \"maxDataDiskCount\": 2\r\n },\r\n {\r\n \"name\": \"Standard_B1s\"\ - ,\r\n \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 2048,\r\n \"memoryInMB\": 1024,\r\n\ - \ \"maxDataDiskCount\": 2\r\n },\r\n {\r\n \"name\": \"Standard_B2ms\"\ - ,\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 16384,\r\n \"memoryInMB\": 8192,\r\n\ - \ \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\": \"Standard_B2s\"\ - ,\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 8192,\r\n \"memoryInMB\": 4096,\r\n\ - \ \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\": \"Standard_B4ms\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 32768,\r\n \"memoryInMB\": 16384,\r\n\ - \ \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_B8ms\"\ - ,\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 65536,\r\n \"memoryInMB\": 32768,\r\n\ - \ \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"Standard_DS1_v2\"\ - ,\r\n \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 7168,\r\n \"memoryInMB\": 3584,\r\n\ - \ \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\": \"Standard_DS2_v2\"\ - ,\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 14336,\r\n \"memoryInMB\": 7168,\r\n\ - \ \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_DS3_v2\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 28672,\r\n \"memoryInMB\": 14336,\r\n\ - \ \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"Standard_DS4_v2\"\ - ,\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 57344,\r\n \"memoryInMB\": 28672,\r\n\ - \ \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"Standard_DS5_v2\"\ - ,\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 114688,\r\n \"memoryInMB\": 57344,\r\ - \n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"name\": \"\ - Standard_DS11-1_v2\",\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 28672,\r\n \"memoryInMB\"\ - : 14336,\r\n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\"\ - : \"Standard_DS11_v2\",\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 28672,\r\n \"memoryInMB\"\ - : 14336,\r\n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\"\ - : \"Standard_DS12-1_v2\",\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 57344,\r\n \"memoryInMB\"\ - : 28672,\r\n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"\ - name\": \"Standard_DS12-2_v2\",\r\n \"numberOfCores\": 4,\r\n \"\ - osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 57344,\r\n \ - \ \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n },\r\ - \n {\r\n \"name\": \"Standard_DS12_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS13-2_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS13-4_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS13_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS14-4_v2\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_DS14-8_v2\",\r\n \ - \ \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \ - \ \"resourceDiskSizeInMB\": 229376,\r\n \"memoryInMB\": 114688,\r\n \ - \ \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"name\": \"Standard_DS14_v2\"\ - ,\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 229376,\r\n \"memoryInMB\": 114688,\r\ - \n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"name\": \"\ - Standard_DS15_v2\",\r\n \"numberOfCores\": 20,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 286720,\r\n \"memoryInMB\"\ - : 143360,\r\n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"\ - name\": \"Standard_DS2_v2_Promo\",\r\n \"numberOfCores\": 2,\r\n \ - \ \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 14336,\r\ - \n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n },\r\ - \n {\r\n \"name\": \"Standard_DS3_v2_Promo\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS4_v2_Promo\",\r\n \"\ - numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS5_v2_Promo\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS11_v2_Promo\",\r\n \ - \ \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"\ - resourceDiskSizeInMB\": 28672,\r\n \"memoryInMB\": 14336,\r\n \"\ - maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_DS12_v2_Promo\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 57344,\r\n \"memoryInMB\": 28672,\r\n\ - \ \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"Standard_DS13_v2_Promo\"\ - ,\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 114688,\r\n \"memoryInMB\": 57344,\r\ - \n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"\ - Standard_DS14_v2_Promo\",\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 229376,\r\n \"memoryInMB\"\ - : 114688,\r\n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"\ - name\": \"Standard_F1s\",\r\n \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 4096,\r\n \"memoryInMB\"\ - : 2048,\r\n \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\"\ - : \"Standard_F2s\",\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 8192,\r\n \"memoryInMB\"\ - : 4096,\r\n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\"\ - : \"Standard_F4s\",\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 16384,\r\n \"memoryInMB\"\ - : 8192,\r\n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\"\ - : \"Standard_F8s\",\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 32768,\r\n \"memoryInMB\"\ - : 16384,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_F16s\",\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 65536,\r\n \"memoryInMB\"\ - : 32768,\r\n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"\ - name\": \"Standard_D2s_v3\",\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 16384,\r\n \"memoryInMB\"\ - : 8192,\r\n \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\"\ - : \"Standard_D4s_v3\",\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 32768,\r\n \"memoryInMB\"\ - : 16384,\r\n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\"\ - : \"Standard_D8s_v3\",\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 65536,\r\n \"memoryInMB\"\ - : 32768,\r\n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"\ - name\": \"Standard_D16s_v3\",\r\n \"numberOfCores\": 16,\r\n \"\ - osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 131072,\r\n\ - \ \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_D32s_v3\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_A0\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 20480,\r\n \"memoryInMB\": 768,\r\n \"maxDataDiskCount\": 1\r\n\ - \ },\r\n {\r\n \"name\": \"Standard_A1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 71680,\r\n \"memoryInMB\": 1792,\r\n \"maxDataDiskCount\": 2\r\ - \n },\r\n {\r\n \"name\": \"Standard_A2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 138240,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_A3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 291840,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_A5\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 138240,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_A4\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 619520,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_A6\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 291840,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_A7\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 619520,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Basic_A0\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 20480,\r\n \"memoryInMB\": 768,\r\n \"maxDataDiskCount\": 1\r\n\ - \ },\r\n {\r\n \"name\": \"Basic_A1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 40960,\r\n \"memoryInMB\": 1792,\r\n \"maxDataDiskCount\": 2\r\ - \n },\r\n {\r\n \"name\": \"Basic_A2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 61440,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Basic_A3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 122880,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Basic_A4\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 245760,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D1_v2\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 51200,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_D2_v2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D3_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D4_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D5_v2\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\ - \n },\r\n {\r\n \"name\": \"Standard_D11_v2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D12_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D13_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D14_v2\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_D15_v2\",\r\n \"\ - numberOfCores\": 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 286720,\r\n \"memoryInMB\": 143360,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_D2_v2_Promo\",\r\n \ - \ \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \ - \ \"resourceDiskSizeInMB\": 102400,\r\n \"memoryInMB\": 7168,\r\n \ - \ \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_D3_v2_Promo\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 204800,\r\n \"memoryInMB\": 14336,\r\ - \n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"\ - Standard_D4_v2_Promo\",\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 409600,\r\n \"memoryInMB\"\ - : 28672,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_D5_v2_Promo\",\r\n \"numberOfCores\": 16,\r\n \ - \ \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 819200,\r\ - \n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n },\r\ - \n {\r\n \"name\": \"Standard_D11_v2_Promo\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D12_v2_Promo\",\r\n \"\ - numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D13_v2_Promo\",\r\n \"\ - numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D14_v2_Promo\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_F1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 16384,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_F2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 32768,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_F4\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 65536,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_F8\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_F16\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 262144,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 64\r\ - \n },\r\n {\r\n \"name\": \"Standard_A1_v2\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 10240,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 2\r\ - \n },\r\n {\r\n \"name\": \"Standard_A2m_v2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 20480,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_A2_v2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 20480,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_A4m_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 40960,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_A4_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 40960,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_A8m_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 81920,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_A8_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 81920,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D2_v3\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 51200,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_D4_v3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D8_v3\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D16_v3\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 65636,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D32_v3\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_D1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 51200,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_D2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D4\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D11\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D12\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D13\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D14\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_DS1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 7168,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n\ - \ },\r\n {\r\n \"name\": \"Standard_DS2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 14336,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS4\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS11\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS12\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS13\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS14\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_D64_v3\",\r\n \"\ - numberOfCores\": 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1638400,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\"\ - : 32\r\n },\r\n {\r\n \"name\": \"Standard_D64s_v3\",\r\n \ - \ \"numberOfCores\": 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"\ - resourceDiskSizeInMB\": 524288,\r\n \"memoryInMB\": 262144,\r\n \ - \ \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"Standard_E2_v3\"\ - ,\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 51200,\r\n \"memoryInMB\": 16384,\r\n\ - \ \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\": \"Standard_E4_v3\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 102400,\r\n \"memoryInMB\": 32768,\r\ - \n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_E8_v3\"\ - ,\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 204800,\r\n \"memoryInMB\": 65536,\r\ - \n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"\ - Standard_E16_v3\",\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 409600,\r\n \"memoryInMB\"\ - : 131072,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_E32_v3\",\r\n \"numberOfCores\": 32,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 819200,\r\n \"memoryInMB\"\ - : 262144,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_E64i_v3\",\r\n \"numberOfCores\": 64,\r\n \"\ - osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 1638400,\r\n\ - \ \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_E64_v3\",\r\n \"numberOfCores\"\ - : 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1638400,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\"\ - : 32\r\n },\r\n {\r\n \"name\": \"Standard_E2s_v3\",\r\n \"\ - numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_E4-2s_v3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_E4s_v3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_E8-2s_v3\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_E8-4s_v3\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_E8s_v3\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_E16-4s_v3\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_E16-8s_v3\",\r\n \ - \ \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \ - \ \"resourceDiskSizeInMB\": 262144,\r\n \"memoryInMB\": 131072,\r\n \ - \ \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"Standard_E16s_v3\"\ - ,\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 262144,\r\n \"memoryInMB\": 131072,\r\ - \n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"\ - Standard_E32-8s_v3\",\r\n \"numberOfCores\": 32,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 524288,\r\n \"memoryInMB\"\ - : 262144,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_E32-16s_v3\",\r\n \"numberOfCores\": 32,\r\n \ - \ \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 524288,\r\ - \n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_E32s_v3\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_E64-16s_v3\",\r\n \ - \ \"numberOfCores\": 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \ - \ \"resourceDiskSizeInMB\": 884736,\r\n \"memoryInMB\": 442368,\r\n\ - \ \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"Standard_E64-32s_v3\"\ - ,\r\n \"numberOfCores\": 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 884736,\r\n \"memoryInMB\": 442368,\r\ - \n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"\ - Standard_E64is_v3\",\r\n \"numberOfCores\": 64,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 884736,\r\n \"memoryInMB\"\ - : 442368,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_E64s_v3\",\r\n \"numberOfCores\": 64,\r\n \"\ - osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 884736,\r\n\ - \ \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_G1\",\r\n \"numberOfCores\": 2,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 393216,\r\ - \n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n },\r\ - \n {\r\n \"name\": \"Standard_G2\",\r\n \"numberOfCores\": 4,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 786432,\r\ - \n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n },\r\ - \n {\r\n \"name\": \"Standard_G3\",\r\n \"numberOfCores\": 8,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 1572864,\r\ - \n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_G4\",\r\n \"numberOfCores\": 16,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 3145728,\r\ - \n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n },\r\ - \n {\r\n \"name\": \"Standard_G5\",\r\n \"numberOfCores\": 32,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 6291456,\r\ - \n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS1\",\r\n \"numberOfCores\": 2,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 57344,\r\ - \n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS2\",\r\n \"numberOfCores\": 4,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 114688,\r\ - \n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS3\",\r\n \"numberOfCores\": 8,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 229376,\r\ - \n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS4\",\r\n \"numberOfCores\": 16,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 458752,\r\ - \n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS4-4\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_GS4-8\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_GS5\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_GS5-8\",\r\n \"\ - numberOfCores\": 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_GS5-16\",\r\n \"\ - numberOfCores\": 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_L4s\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 694272,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_L8s\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1421312,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_L16s\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2874368,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_L32s\",\r\n \"\ - numberOfCores\": 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 5765120,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_A8\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 391168,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_A9\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 391168,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_A10\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 391168,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_A11\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 391168,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_H8\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1024000,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_H16\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2048000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_H8m\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1024000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\"\ - : 32\r\n },\r\n {\r\n \"name\": \"Standard_H16m\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2048000,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_H16r\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2048000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_H16mr\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2048000,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_F2s_v2\",\r\n \"\ - numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 16384,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_F4s_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 32768,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_F8s_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 65536,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_F16s_v2\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_F32s_v2\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 262144,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_F64s_v2\",\r\n \"numberOfCores\"\ - : 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 524288,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_F72s_v2\",\r\n \ - \ \"numberOfCores\": 72,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"\ - resourceDiskSizeInMB\": 589824,\r\n \"memoryInMB\": 147456,\r\n \ - \ \"maxDataDiskCount\": 32\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"Standard_B1ms\",\r\n + \ \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 4096,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Standard_B1s\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048,\r\n \"memoryInMB\": 1024,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Standard_B2ms\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_B2s\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 8192,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_B4ms\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_B8ms\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS1_v2\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 7168,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS2_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 14336,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS3_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS4_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS5_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS11-1_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS11_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12-1_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12-2_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13-2_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13-4_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14-4_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14-8_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS15_v2\",\r\n \"numberOfCores\": + 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 286720,\r\n \"memoryInMB\": 143360,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS2_v2_Promo\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 14336,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS3_v2_Promo\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS4_v2_Promo\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS5_v2_Promo\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS11_v2_Promo\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12_v2_Promo\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13_v2_Promo\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14_v2_Promo\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_F1s\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 4096,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_F2s\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 8192,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_F4s\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_F8s\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F16s\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2s_v3\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4s_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D8s_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D16s_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D32s_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_A0\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 20480,\r\n \"memoryInMB\": 768,\r\n \"maxDataDiskCount\": 1\r\n + \ },\r\n {\r\n \"name\": \"Standard_A1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 71680,\r\n \"memoryInMB\": 1792,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Standard_A2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 138240,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_A3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 291840,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_A5\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 138240,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_A4\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 619520,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_A6\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 291840,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_A7\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 619520,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Basic_A0\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 20480,\r\n \"memoryInMB\": 768,\r\n \"maxDataDiskCount\": 1\r\n + \ },\r\n {\r\n \"name\": \"Basic_A1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 40960,\r\n \"memoryInMB\": 1792,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Basic_A2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 61440,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Basic_A3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 122880,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Basic_A4\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 245760,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D1_v2\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 51200,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D3_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D5_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D11_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D12_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D13_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D14_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D15_v2\",\r\n \"numberOfCores\": + 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 286720,\r\n \"memoryInMB\": 143360,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2_v2_Promo\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D3_v2_Promo\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4_v2_Promo\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D5_v2_Promo\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D11_v2_Promo\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D12_v2_Promo\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D13_v2_Promo\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D14_v2_Promo\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_F1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_F2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_F4\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_F8\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F16\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_A1_v2\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 10240,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Standard_A2m_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 20480,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_A2_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 20480,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_A4m_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 40960,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_A4_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 40960,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_A8m_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 81920,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_A8_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 81920,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2_v3\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 51200,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D8_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D16_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 65636,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D32_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 51200,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D11\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D12\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D13\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D14\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 7168,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 14336,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS4\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS11\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D64_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1638400,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D64s_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E2_v3\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 51200,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_E4_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_E8_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_E16_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E20_v3\",\r\n \"numberOfCores\": + 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 512000,\r\n \"memoryInMB\": 163840,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E32_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64i_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1638400,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1638400,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E2s_v3\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_E4-2s_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_E4s_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_E8-2s_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_E8-4s_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_E8s_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_E16-4s_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E16-8s_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E16s_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E20s_v3\",\r\n \"numberOfCores\": + 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 327680,\r\n \"memoryInMB\": 163840,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E32-8s_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E32-16s_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E32s_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64-16s_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 884736,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64-32s_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 884736,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64is_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 884736,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64s_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 884736,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_G1\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 393216,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_G2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 786432,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_G3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1572864,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_G4\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 3145728,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_G5\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 6291456,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS1\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS4\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS4-4\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS4-8\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS5\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS5-8\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS5-16\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_L4s\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 694272,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_L8s\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1421312,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_L16s\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2874368,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_L32s\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 5765120,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_A8\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 391168,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_A9\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 391168,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_A10\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 391168,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_A11\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 391168,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_H8\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1024000,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_H16\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_H8m\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1024000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_H16m\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048000,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_H16r\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_H16mr\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048000,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_F2s_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_F4s_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_F8s_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_F16s_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F32s_v2\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F64s_v2\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F72s_v2\",\r\n \"numberOfCores\": + 72,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 589824,\r\n \"memoryInMB\": 147456,\r\n \"maxDataDiskCount\": 32\r\n + \ }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['34047'] + content-length: ['34466'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:12:26 GMT'] + date: ['Thu, 27 Sep 2018 22:13:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -632,7 +627,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4193,Microsoft.Compute/LowCostGet30Min;33591'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3997,Microsoft.Compute/LowCostGet30Min;31997'] status: {code: 200, message: OK} - request: body: null @@ -641,24 +636,23 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_availability_sets53ac1097/providers/Microsoft.Compute/availabilitySets/pyarmset53ac1097?api-version=2018-10-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 17:12:28 GMT'] + date: ['Thu, 27 Sep 2018 22:13:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/DeleteVM3Min;238,Microsoft.Compute/DeleteVM30Min;1198'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/DeleteVM3Min;239,Microsoft.Compute/DeleteVM30Min;1199'] x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_usage.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_usage.yaml index 2e1d96d206c1..979902d02a11 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_usage.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_usage.yaml @@ -5,155 +5,143 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/usages?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/usages?api-version=2018-10-01 response: - body: {string: "{\r\n \"value\": [\r\n {\r\n \"limit\": 2000,\r\n \ - \ \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\":\ - \ {\r\n \"value\": \"availabilitySets\",\r\n \"localizedValue\"\ - : \"Availability Sets\"\r\n }\r\n },\r\n {\r\n \"limit\":\ - \ 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 4,\r\n \ - \ \"name\": {\r\n \"value\": \"cores\",\r\n \"localizedValue\"\ - : \"Total Regional vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\"\ - : 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 1,\r\n \ - \ \"name\": {\r\n \"value\": \"virtualMachines\",\r\n \"\ - localizedValue\": \"Virtual Machines\"\r\n }\r\n },\r\n {\r\n \ - \ \"limit\": 2000,\r\n \"unit\": \"Count\",\r\n \"currentValue\"\ - : 0,\r\n \"name\": {\r\n \"value\": \"virtualMachineScaleSets\"\ - ,\r\n \"localizedValue\": \"Virtual Machine Scale Sets\"\r\n }\r\ - \n },\r\n {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\ - \n \"currentValue\": 4,\r\n \"name\": {\r\n \"value\": \"\ - standardDSv3Family\",\r\n \"localizedValue\": \"Standard DSv3 Family\ - \ vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\n \ - \ \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": {\r\ - \n \"value\": \"basicAFamily\",\r\n \"localizedValue\": \"Basic\ - \ A Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\ - \n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\"\ - : {\r\n \"value\": \"standardA0_A7Family\",\r\n \"localizedValue\"\ - : \"Standard A0-A7 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"\ - limit\": 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\ - \n \"name\": {\r\n \"value\": \"standardA8_A11Family\",\r\n \ - \ \"localizedValue\": \"Standard A8-A11 Family vCPUs\"\r\n }\r\n\ - \ },\r\n {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\n\ - \ \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"\ - standardDFamily\",\r\n \"localizedValue\": \"Standard D Family vCPUs\"\ - \r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\n \"unit\"\ - : \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": {\r\n \ - \ \"value\": \"standardDv2Family\",\r\n \"localizedValue\": \"Standard\ - \ Dv2 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\ - \n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\"\ - : {\r\n \"value\": \"standardDSFamily\",\r\n \"localizedValue\"\ - : \"Standard DS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\"\ - : 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \ - \ \"name\": {\r\n \"value\": \"standardDSv2Family\",\r\n \"\ - localizedValue\": \"Standard DSv2 Family vCPUs\"\r\n }\r\n },\r\n\ - \ {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\n \"\ - currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"standardGFamily\"\ - ,\r\n \"localizedValue\": \"Standard G Family vCPUs\"\r\n }\r\n\ - \ },\r\n {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\n\ - \ \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"\ - standardGSFamily\",\r\n \"localizedValue\": \"Standard GS Family vCPUs\"\ - \r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\n \"unit\"\ - : \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": {\r\n \ - \ \"value\": \"standardFFamily\",\r\n \"localizedValue\": \"Standard\ - \ F Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\ - \n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\"\ - : {\r\n \"value\": \"standardFSFamily\",\r\n \"localizedValue\"\ - : \"Standard FS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\"\ - : 24,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \ - \ \"name\": {\r\n \"value\": \"standardNVFamily\",\r\n \"localizedValue\"\ - : \"Standard NV Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\"\ - : 48,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \ - \ \"name\": {\r\n \"value\": \"standardNCFamily\",\r\n \"localizedValue\"\ - : \"Standard NC Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\"\ - : 8,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \ - \ \"name\": {\r\n \"value\": \"standardHFamily\",\r\n \"localizedValue\"\ - : \"Standard H Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\"\ - : 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \ - \ \"name\": {\r\n \"value\": \"standardAv2Family\",\r\n \"\ - localizedValue\": \"Standard Av2 Family vCPUs\"\r\n }\r\n },\r\n \ - \ {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\"\ - : 0,\r\n \"name\": {\r\n \"value\": \"standardLSFamily\",\r\n\ - \ \"localizedValue\": \"Standard LS Family vCPUs\"\r\n }\r\n \ - \ },\r\n {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\n\ - \ \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"\ - standardDv2PromoFamily\",\r\n \"localizedValue\": \"Standard Dv2 Promo\ - \ Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\n\ - \ \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\"\ - : {\r\n \"value\": \"standardDSv2PromoFamily\",\r\n \"localizedValue\"\ - : \"Standard DSv2 Promo Family vCPUs\"\r\n }\r\n },\r\n {\r\n \ - \ \"limit\": 0,\r\n \"unit\": \"Count\",\r\n \"currentValue\"\ - : 0,\r\n \"name\": {\r\n \"value\": \"standardMSFamily\",\r\n\ - \ \"localizedValue\": \"Standard MS Family vCPUs\"\r\n }\r\n \ - \ },\r\n {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\n\ - \ \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"\ - standardDv3Family\",\r\n \"localizedValue\": \"Standard Dv3 Family\ - \ vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\n \ - \ \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": {\r\ - \n \"value\": \"standardEv3Family\",\r\n \"localizedValue\"\ - : \"Standard Ev3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"\ - limit\": 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\ - \n \"name\": {\r\n \"value\": \"standardESv3Family\",\r\n \ - \ \"localizedValue\": \"Standard ESv3 Family vCPUs\"\r\n }\r\n \ - \ },\r\n {\r\n \"limit\": 10,\r\n \"unit\": \"Count\",\r\n \ - \ \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"standardBSFamily\"\ - ,\r\n \"localizedValue\": \"Standard BS Family vCPUs\"\r\n }\r\ - \n },\r\n {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\ - \n \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"\ - standardFSv2Family\",\r\n \"localizedValue\": \"Standard FSv2 Family\ - \ vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 0,\r\n \"\ - unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": {\r\n\ - \ \"value\": \"standardNDSFamily\",\r\n \"localizedValue\":\ - \ \"Standard NDS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"\ - limit\": 0,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n\ - \ \"name\": {\r\n \"value\": \"standardNCSv2Family\",\r\n \ - \ \"localizedValue\": \"Standard NCSv2 Family vCPUs\"\r\n }\r\n \ - \ },\r\n {\r\n \"limit\": 0,\r\n \"unit\": \"Count\",\r\n \ - \ \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"standardNCSv3Family\"\ - ,\r\n \"localizedValue\": \"Standard NCSv3 Family vCPUs\"\r\n \ - \ }\r\n },\r\n {\r\n \"limit\": 0,\r\n \"unit\": \"Count\"\ - ,\r\n \"currentValue\": 0,\r\n \"name\": {\r\n \"value\"\ - : \"standardLSv2Family\",\r\n \"localizedValue\": \"Standard LSv2 Family\ - \ vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\n \ - \ \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": {\r\ - \n \"value\": \"standardEIv3Family\",\r\n \"localizedValue\"\ - : \"Standard EIv3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"\ - limit\": 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\ - \n \"name\": {\r\n \"value\": \"standardEISv3Family\",\r\n \ - \ \"localizedValue\": \"Standard EISv3 Family vCPUs\"\r\n }\r\n \ - \ },\r\n {\r\n \"limit\": 10000,\r\n \"unit\": \"Count\",\r\ - \n \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"\ - StandardDiskCount\",\r\n \"localizedValue\": \"Standard Storage Managed\ - \ Disks\"\r\n }\r\n },\r\n {\r\n \"limit\": 10000,\r\n \ - \ \"unit\": \"Count\",\r\n \"currentValue\": 1,\r\n \"name\":\ - \ {\r\n \"value\": \"PremiumDiskCount\",\r\n \"localizedValue\"\ - : \"Premium Storage Managed Disks\"\r\n }\r\n },\r\n {\r\n \ - \ \"limit\": 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\"\ - : 0,\r\n \"name\": {\r\n \"value\": \"StandardSSDDiskCount\",\r\ - \n \"localizedValue\": \"StandardSSDStorageDisks\"\r\n }\r\n \ - \ },\r\n {\r\n \"limit\": 10000,\r\n \"unit\": \"Count\",\r\ - \n \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"\ - DirectDriveDiskCount\",\r\n \"localizedValue\": \"DirectDriveDisks\"\ - \r\n }\r\n },\r\n {\r\n \"limit\": 10000,\r\n \"unit\"\ - : \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": {\r\n \ - \ \"value\": \"StandardSnapshotCount\",\r\n \"localizedValue\": \"\ - StandardStorageSnapshots\"\r\n }\r\n },\r\n {\r\n \"limit\"\ - : 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \ - \ \"name\": {\r\n \"value\": \"PremiumSnapshotCount\",\r\n \ - \ \"localizedValue\": \"PremiumStorageSnapshots\"\r\n }\r\n },\r\ - \n {\r\n \"limit\": 10000,\r\n \"unit\": \"Count\",\r\n \ - \ \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": \"ZRSSnapshotCount\"\ - ,\r\n \"localizedValue\": \"ZrsStorageSnapshots\"\r\n }\r\n \ - \ }\r\n ]\r\n}"} + body: {string: "{\r\n \"value\": [\r\n {\r\n \"limit\": 2000,\r\n \"unit\": + \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": {\r\n \"value\": + \"availabilitySets\",\r\n \"localizedValue\": \"Availability Sets\"\r\n + \ }\r\n },\r\n {\r\n \"limit\": 100,\r\n \"unit\": \"Count\",\r\n + \ \"currentValue\": 1,\r\n \"name\": {\r\n \"value\": \"cores\",\r\n + \ \"localizedValue\": \"Total Regional vCPUs\"\r\n }\r\n },\r\n + \ {\r\n \"limit\": 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\": + 1,\r\n \"name\": {\r\n \"value\": \"virtualMachines\",\r\n \"localizedValue\": + \"Virtual Machines\"\r\n }\r\n },\r\n {\r\n \"limit\": 2000,\r\n + \ \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"virtualMachineScaleSets\",\r\n \"localizedValue\": + \"Virtual Machine Scale Sets\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 1,\r\n \"name\": + {\r\n \"value\": \"standardDSv2Family\",\r\n \"localizedValue\": + \"Standard DSv2 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"basicAFamily\",\r\n \"localizedValue\": \"Basic + A Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": 100,\r\n + \ \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardA0_A7Family\",\r\n \"localizedValue\": + \"Standard A0-A7 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardA8_A11Family\",\r\n \"localizedValue\": + \"Standard A8-A11 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardDFamily\",\r\n \"localizedValue\": + \"Standard D Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardDv2Family\",\r\n \"localizedValue\": + \"Standard Dv2 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardDSFamily\",\r\n \"localizedValue\": + \"Standard DS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardGFamily\",\r\n \"localizedValue\": + \"Standard G Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardGSFamily\",\r\n \"localizedValue\": + \"Standard GS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardFFamily\",\r\n \"localizedValue\": + \"Standard F Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardFSFamily\",\r\n \"localizedValue\": + \"Standard FS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 24,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardNVFamily\",\r\n \"localizedValue\": + \"Standard NV Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 48,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardNCFamily\",\r\n \"localizedValue\": + \"Standard NC Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 8,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardHFamily\",\r\n \"localizedValue\": + \"Standard H Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardAv2Family\",\r\n \"localizedValue\": + \"Standard Av2 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardLSFamily\",\r\n \"localizedValue\": + \"Standard LS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardDv2PromoFamily\",\r\n \"localizedValue\": + \"Standard Dv2 Promo Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardDSv2PromoFamily\",\r\n \"localizedValue\": + \"Standard DSv2 Promo Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 0,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardMSFamily\",\r\n \"localizedValue\": + \"Standard MS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardDv3Family\",\r\n \"localizedValue\": + \"Standard Dv3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardDSv3Family\",\r\n \"localizedValue\": + \"Standard DSv3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardEv3Family\",\r\n \"localizedValue\": + \"Standard Ev3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardESv3Family\",\r\n \"localizedValue\": + \"Standard ESv3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 10,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardBSFamily\",\r\n \"localizedValue\": + \"Standard BS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardFSv2Family\",\r\n \"localizedValue\": + \"Standard FSv2 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 0,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardNDSFamily\",\r\n \"localizedValue\": + \"Standard NDS Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 0,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardNCSv2Family\",\r\n \"localizedValue\": + \"Standard NCSv2 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 0,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardNCSv3Family\",\r\n \"localizedValue\": + \"Standard NCSv3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 0,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardLSv2Family\",\r\n \"localizedValue\": + \"Standard LSv2 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardEIv3Family\",\r\n \"localizedValue\": + \"Standard EIv3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 100,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"standardEISv3Family\",\r\n \"localizedValue\": + \"Standard EISv3 Family vCPUs\"\r\n }\r\n },\r\n {\r\n \"limit\": + 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"StandardDiskCount\",\r\n \"localizedValue\": + \"Standard Storage Managed Disks\"\r\n }\r\n },\r\n {\r\n \"limit\": + 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 1,\r\n \"name\": + {\r\n \"value\": \"PremiumDiskCount\",\r\n \"localizedValue\": + \"Premium Storage Managed Disks\"\r\n }\r\n },\r\n {\r\n \"limit\": + 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"StandardSSDDiskCount\",\r\n \"localizedValue\": + \"StandardSSDStorageDisks\"\r\n }\r\n },\r\n {\r\n \"limit\": + 20,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"UltraSSDDiskCount\",\r\n \"localizedValue\": + \"DirectDriveDisks\"\r\n }\r\n },\r\n {\r\n \"limit\": 10000,\r\n + \ \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"StandardSnapshotCount\",\r\n \"localizedValue\": + \"StandardStorageSnapshots\"\r\n }\r\n },\r\n {\r\n \"limit\": + 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"PremiumSnapshotCount\",\r\n \"localizedValue\": + \"PremiumStorageSnapshots\"\r\n }\r\n },\r\n {\r\n \"limit\": + 10000,\r\n \"unit\": \"Count\",\r\n \"currentValue\": 0,\r\n \"name\": + {\r\n \"value\": \"ZRSSnapshotCount\",\r\n \"localizedValue\": + \"ZrsStorageSnapshots\"\r\n }\r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['8663'] + content-length: ['8657'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:12:34 GMT'] + date: ['Thu, 27 Sep 2018 22:13:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -161,6 +149,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: [Microsoft.Compute/GetSubscriptionInfo3Min;477] + x-ms-ratelimit-remaining-resource: [Microsoft.Compute/GetSubscriptionInfo3Min;419] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_virtual_machine_capture.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_virtual_machine_capture.yaml index a96226503251..2ccb935ba351 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_virtual_machine_capture.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_virtual_machine_capture.yaml @@ -8,20 +8,20 @@ interactions: Connection: [keep-alive] Content-Length: ['148'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-storage/2.0.0rc4 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/3.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Storage/storageAccounts/pyvmirstorc0f9130c?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Storage/storageAccounts/pyvmirstorc0f9130c?api-version=2018-07-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] content-type: [text/plain; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:48:56 GMT'] + date: ['Thu, 27 Sep 2018 22:13:32 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/22033b85-fcbd-423f-9928-f3afde9c9727?monitor=true&api-version=2018-02-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/2aac60f0-721c-48f2-8db0-f0788c8d3b86?monitor=true&api-version=2018-07-01'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0'] @@ -35,17 +35,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-storage/2.0.0rc4 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/3.0.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/22033b85-fcbd-423f-9928-f3afde9c9727?monitor=true&api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/2aac60f0-721c-48f2-8db0-f0788c8d3b86?monitor=true&api-version=2018-07-01 response: - body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Storage/storageAccounts/pyvmirstorc0f9130c","name":"pyvmirstorc0f9130c","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-07-20T18:48:56.5421603Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-07-20T18:48:56.5421603Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-07-20T18:48:56.4327660Z","primaryEndpoints":{"blob":"https://pyvmirstorc0f9130c.blob.core.windows.net/","queue":"https://pyvmirstorc0f9130c.queue.core.windows.net/","table":"https://pyvmirstorc0f9130c.table.core.windows.net/","file":"https://pyvmirstorc0f9130c.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} + body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Storage/storageAccounts/pyvmirstorc0f9130c","name":"pyvmirstorc0f9130c","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-27T22:13:32.5445797Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-27T22:13:32.5445797Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-09-27T22:13:32.4508943Z","primaryEndpoints":{"blob":"https://pyvmirstorc0f9130c.blob.core.windows.net/","queue":"https://pyvmirstorc0f9130c.queue.core.windows.net/","table":"https://pyvmirstorc0f9130c.table.core.windows.net/","file":"https://pyvmirstorc0f9130c.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} headers: cache-control: [no-cache] content-length: ['1195'] content-type: [application/json] - date: ['Fri, 20 Jul 2018 18:49:13 GMT'] + date: ['Thu, 27 Sep 2018 22:13:49 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -58,38 +58,39 @@ interactions: - request: body: '{"location": "westus", "properties": {"addressSpace": {"addressPrefixes": ["10.0.0.0/16"]}, "subnets": [{"properties": {"addressPrefix": "10.0.0.0/24"}, - "name": "pyvmirsubc0f9130c"}]}}' + "name": "pyvmirsubc0f9130c"}], "enableDdosProtection": false, "enableVmProtection": + false}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['184'] + Content-Length: ['244'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnetc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c\"\ - ,\r\n \"etag\": \"W/\\\"08e743ce-7a29-422d-a741-30441ab9c6de\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"462281e4-30e9-4865-9ed9-6d7a4db606ed\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsubc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\"\ - ,\r\n \"etag\": \"W/\\\"08e743ce-7a29-422d-a741-30441ab9c6de\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ee4785d7-a150-42a7-a288-254fe83ee425?api-version=2018-02-01'] + body: {string: "{\r\n \"name\": \"pyvmirnetc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c\",\r\n + \ \"etag\": \"W/\\\"670d8e09-9e1c-414d-9255-f77d92235a8c\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"resourceGuid\": + \"01e0ebef-f2ad-42ce-b268-f49a30e0df24\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsubc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\",\r\n + \ \"etag\": \"W/\\\"670d8e09-9e1c-414d-9255-f77d92235a8c\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/43c25acc-937a-4491-a6e7-f77b33359595?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1175'] + content-length: ['1267'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:49:16 GMT'] + date: ['Thu, 27 Sep 2018 22:13:51 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -103,17 +104,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ee4785d7-a150-42a7-a288-254fe83ee425?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/43c25acc-937a-4491-a6e7-f77b33359595?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:49:21 GMT'] + date: ['Thu, 27 Sep 2018 22:13:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -128,17 +129,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ee4785d7-a150-42a7-a288-254fe83ee425?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/43c25acc-937a-4491-a6e7-f77b33359595?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:49:31 GMT'] + date: ['Thu, 27 Sep 2018 22:14:05 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -153,30 +154,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnetc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c\"\ - ,\r\n \"etag\": \"W/\\\"3a15b0dd-0968-42bf-b3e6-9d0ab1319a49\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"462281e4-30e9-4865-9ed9-6d7a4db606ed\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsubc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\"\ - ,\r\n \"etag\": \"W/\\\"3a15b0dd-0968-42bf-b3e6-9d0ab1319a49\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnetc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c\",\r\n + \ \"etag\": \"W/\\\"a45d9901-209c-4599-8bd8-952b29751ce8\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": + \"01e0ebef-f2ad-42ce-b268-f49a30e0df24\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsubc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\",\r\n + \ \"etag\": \"W/\\\"a45d9901-209c-4599-8bd8-952b29751ce8\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1177'] + content-length: ['1269'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:49:32 GMT'] - etag: [W/"3a15b0dd-0968-42bf-b3e6-9d0ab1319a49"] + date: ['Thu, 27 Sep 2018 22:14:06 GMT'] + etag: [W/"a45d9901-209c-4599-8bd8-952b29751ce8"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -191,23 +192,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirsubc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\"\ - ,\r\n \"etag\": \"W/\\\"3a15b0dd-0968-42bf-b3e6-9d0ab1319a49\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirsubc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\",\r\n + \ \"etag\": \"W/\\\"a45d9901-209c-4599-8bd8-952b29751ce8\\\"\",\r\n \"properties\": + {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.0.0.0/24\",\r\n + \ \"delegations\": []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['414'] + content-length: ['494'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:49:33 GMT'] - etag: [W/"3a15b0dd-0968-42bf-b3e6-9d0ab1319a49"] + date: ['Thu, 27 Sep 2018 22:14:06 GMT'] + etag: [W/"a45d9901-209c-4599-8bd8-952b29751ce8"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -219,45 +219,44 @@ interactions: - request: body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"ipConfigurations": [{"properties": {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c", - "properties": {"addressPrefix": "10.0.0.0/24", "provisioningState": "Succeeded"}, - "name": "pyvmirsubc0f9130c", "etag": "W/\\\\\\\\\\\\\\\\"3a15b0dd-0968-42bf-b3e6-9d0ab1319a49\\\\\\\\\\\\\\\\""}}, + "properties": {"addressPrefix": "10.0.0.0/24", "delegations": [], "provisioningState": + "Succeeded"}, "name": "pyvmirsubc0f9130c", "etag": "W/\\\\\\\\\\\\\\\\"a45d9901-209c-4599-8bd8-952b29751ce8\\\\\\\\\\\\\\\\""}}, "name": "pyarmconfig"}]}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['537'] + Content-Length: ['556'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnicc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c\"\ - ,\r\n \"etag\": \"W/\\\"f6e9811c-fa24-4b4d-8612-db7e3223b74d\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"139216f0-52b2-40a8-8db3-c9e5cc35f02d\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"f6e9811c-fa24-4b4d-8612-db7e3223b74d\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - 2saserxjgbsurhwznv3e1nqg3f.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c87272b8-e344-4a48-8242-1376ea754461?api-version=2018-02-01'] + body: {string: "{\r\n \"name\": \"pyvmirnicc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c\",\r\n + \ \"etag\": \"W/\\\"7378b4da-d648-45ce-b628-9348b07c3930\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"c20d0ab5-dfd8-4f3a-8f4a-eb86d6a60d7f\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"7378b4da-d648-45ce-b628-9348b07c3930\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"35v4aann4lhefmti4sndbyg5ee.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f9068daa-4a12-43ed-b248-8753048978e1?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1740'] + content-length: ['1810'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:49:36 GMT'] + date: ['Thu, 27 Sep 2018 22:14:07 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -271,17 +270,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c87272b8-e344-4a48-8242-1376ea754461?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f9068daa-4a12-43ed-b248-8753048978e1?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:50:06 GMT'] + date: ['Thu, 27 Sep 2018 22:14:37 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -296,35 +295,34 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnicc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c\"\ - ,\r\n \"etag\": \"W/\\\"f6e9811c-fa24-4b4d-8612-db7e3223b74d\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"139216f0-52b2-40a8-8db3-c9e5cc35f02d\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"f6e9811c-fa24-4b4d-8612-db7e3223b74d\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - 2saserxjgbsurhwznv3e1nqg3f.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnicc0f9130c\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c\",\r\n + \ \"etag\": \"W/\\\"7378b4da-d648-45ce-b628-9348b07c3930\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"c20d0ab5-dfd8-4f3a-8f4a-eb86d6a60d7f\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"7378b4da-d648-45ce-b628-9348b07c3930\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/virtualNetworks/pyvmirnetc0f9130c/subnets/pyvmirsubc0f9130c\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"35v4aann4lhefmti4sndbyg5ee.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['1740'] + content-length: ['1810'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:50:07 GMT'] - etag: [W/"f6e9811c-fa24-4b4d-8612-db7e3223b74d"] + date: ['Thu, 27 Sep 2018 22:14:38 GMT'] + etag: [W/"7378b4da-d648-45ce-b628-9348b07c3930"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -347,44 +345,41 @@ interactions: Connection: [keep-alive] Content-Length: ['765'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"f535aa5f-ee8e-41b3-9cc5-36da2b6b00e1\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"test\",\r\n \"createOption\": \"FromImage\",\r\n\ - \ \"vhd\": {\r\n \"uri\": \"https://pyvmirstorc0f9130c.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\"\r\n },\r\n \"dataDisks\"\ - : []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\"\ - ,\r\n \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\":\ - \ {\r\n \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\"\ - : true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\"\ - : true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\"\ - :\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c\"\ - }]},\r\n \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c\"\ - ,\r\n \"name\": \"pyvmirvmc0f9130c\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/af5bacc7-9ccb-4639-b8da-e7a3fb96a380?api-version=2018-06-01'] + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"1c09b6e5-bb0c-472c-a966-65183d3c7c33\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"test\",\r\n \"createOption\": + \"FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmirstorc0f9130c.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\"\r\n },\r\n \"dataDisks\": + []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\",\r\n + \ \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\": {\r\n + \ \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\": + true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\": + true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c\"}]},\r\n + \ \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c\",\r\n + \ \"name\": \"pyvmirvmc0f9130c\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/0dccb525-4eed-4044-8424-2e202ef7d557?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['1487'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:50:09 GMT'] + date: ['Thu, 27 Sep 2018 22:14:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1199'] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;238,Microsoft.Compute/PutVM30Min;1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -392,19 +387,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/af5bacc7-9ccb-4639-b8da-e7a3fb96a380?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/0dccb525-4eed-4044-8424-2e202ef7d557?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:50:09.8167243+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"af5bacc7-9ccb-4639-b8da-e7a3fb96a380\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:14:39.7208926+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"0dccb525-4eed-4044-8424-2e202ef7d557\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:50:20 GMT'] + date: ['Thu, 27 Sep 2018 22:14:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -412,7 +406,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14999,Microsoft.Compute/GetOperation30Min;29996'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14998,Microsoft.Compute/GetOperation30Min;29998'] status: {code: 200, message: OK} - request: body: null @@ -420,19 +414,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/af5bacc7-9ccb-4639-b8da-e7a3fb96a380?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/0dccb525-4eed-4044-8424-2e202ef7d557?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:50:09.8167243+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"af5bacc7-9ccb-4639-b8da-e7a3fb96a380\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:14:39.7208926+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"0dccb525-4eed-4044-8424-2e202ef7d557\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:50:51 GMT'] + date: ['Thu, 27 Sep 2018 22:15:27 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -440,7 +433,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14996,Microsoft.Compute/GetOperation30Min;29993'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14996,Microsoft.Compute/GetOperation30Min;29996'] status: {code: 200, message: OK} - request: body: null @@ -448,19 +441,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/af5bacc7-9ccb-4639-b8da-e7a3fb96a380?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/0dccb525-4eed-4044-8424-2e202ef7d557?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:50:09.8167243+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"af5bacc7-9ccb-4639-b8da-e7a3fb96a380\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:14:39.7208926+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"0dccb525-4eed-4044-8424-2e202ef7d557\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:51:23 GMT'] + date: ['Thu, 27 Sep 2018 22:15:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -468,7 +460,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14993,Microsoft.Compute/GetOperation30Min;29990'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14993,Microsoft.Compute/GetOperation30Min;29993'] status: {code: 200, message: OK} - request: body: null @@ -476,19 +468,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/af5bacc7-9ccb-4639-b8da-e7a3fb96a380?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/0dccb525-4eed-4044-8424-2e202ef7d557?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:50:09.8167243+00:00\",\r\ - \n \"endTime\": \"2018-07-20T18:51:50.7911626+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"af5bacc7-9ccb-4639-b8da-e7a3fb96a380\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:14:39.7208926+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:16:12.5211205+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"0dccb525-4eed-4044-8424-2e202ef7d557\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:51:54 GMT'] + date: ['Thu, 27 Sep 2018 22:16:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -496,7 +488,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14990,Microsoft.Compute/GetOperation30Min;29987'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14990,Microsoft.Compute/GetOperation30Min;29990'] status: {code: 200, message: OK} - request: body: null @@ -504,35 +496,33 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"f535aa5f-ee8e-41b3-9cc5-36da2b6b00e1\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"test\",\r\n \"createOption\": \"FromImage\",\r\n\ - \ \"vhd\": {\r\n \"uri\": \"https://pyvmirstorc0f9130c.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\"\ - : 30\r\n },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\"\ - : {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\"\ - ,\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\"\ - : false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\"\ - : [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\"\ - : {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c\"\ - }]},\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c\"\ - ,\r\n \"name\": \"pyvmirvmc0f9130c\"\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"1c09b6e5-bb0c-472c-a966-65183d3c7c33\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"test\",\r\n \"createOption\": + \"FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmirstorc0f9130c.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\": 30\r\n + \ },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\": {\r\n + \ \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\",\r\n + \ \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Network/networkInterfaces/pyvmirnicc0f9130c\"}]},\r\n + \ \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c\",\r\n + \ \"name\": \"pyvmirvmc0f9130c\"\r\n}"} headers: cache-control: [no-cache] content-length: ['1515'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:51:55 GMT'] + date: ['Thu, 27 Sep 2018 22:16:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -540,7 +530,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4198,Microsoft.Compute/LowCostGet30Min;33589'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3995,Microsoft.Compute/LowCostGet30Min;31992'] status: {code: 200, message: OK} - request: body: null @@ -549,25 +539,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c/deallocate?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c/deallocate?api-version=2018-10-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6c01c1fb-fadf-4c06-87e3-2c8cf2113919?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6e9717cb-07b0-49db-a3ba-1237303d4c32?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 18:51:56 GMT'] + date: ['Thu, 27 Sep 2018 22:16:29 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6c01c1fb-fadf-4c06-87e3-2c8cf2113919?monitor=true&api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6e9717cb-07b0-49db-a3ba-1237303d4c32?monitor=true&api-version=2018-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/DeleteVM3Min;239,Microsoft.Compute/DeleteVM30Min;1199'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/DeleteVM3Min;239,Microsoft.Compute/DeleteVM30Min;1198'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: @@ -576,19 +566,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6c01c1fb-fadf-4c06-87e3-2c8cf2113919?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6e9717cb-07b0-49db-a3ba-1237303d4c32?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:51:56.7421307+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"6c01c1fb-fadf-4c06-87e3-2c8cf2113919\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:16:30.1062656+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"6e9717cb-07b0-49db-a3ba-1237303d4c32\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:52:13 GMT'] + date: ['Thu, 27 Sep 2018 22:16:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -596,7 +585,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29984'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14989,Microsoft.Compute/GetOperation30Min;29989'] status: {code: 200, message: OK} - request: body: null @@ -604,19 +593,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6c01c1fb-fadf-4c06-87e3-2c8cf2113919?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6e9717cb-07b0-49db-a3ba-1237303d4c32?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:51:56.7421307+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"6c01c1fb-fadf-4c06-87e3-2c8cf2113919\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:16:30.1062656+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"6e9717cb-07b0-49db-a3ba-1237303d4c32\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:52:51 GMT'] + date: ['Thu, 27 Sep 2018 22:17:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -624,7 +612,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29982'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29986'] status: {code: 200, message: OK} - request: body: null @@ -632,19 +620,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6c01c1fb-fadf-4c06-87e3-2c8cf2113919?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6e9717cb-07b0-49db-a3ba-1237303d4c32?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:51:56.7421307+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"6c01c1fb-fadf-4c06-87e3-2c8cf2113919\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:16:30.1062656+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"6e9717cb-07b0-49db-a3ba-1237303d4c32\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:53:22 GMT'] + date: ['Thu, 27 Sep 2018 22:17:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -652,7 +639,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29979'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29983'] status: {code: 200, message: OK} - request: body: null @@ -660,19 +647,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6c01c1fb-fadf-4c06-87e3-2c8cf2113919?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/6e9717cb-07b0-49db-a3ba-1237303d4c32?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:51:56.7421307+00:00\",\r\ - \n \"endTime\": \"2018-07-20T18:53:31.3347779+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"6c01c1fb-fadf-4c06-87e3-2c8cf2113919\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:16:30.1062656+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:18:11.5620144+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"6e9717cb-07b0-49db-a3ba-1237303d4c32\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:53:52 GMT'] + date: ['Thu, 27 Sep 2018 22:18:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -680,7 +667,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29977'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29980'] status: {code: 200, message: OK} - request: body: null @@ -689,17 +676,17 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c/generalize?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c/generalize?api-version=2018-10-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 18:53:54 GMT'] + date: ['Thu, 27 Sep 2018 22:18:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -717,26 +704,26 @@ interactions: Connection: [keep-alive] Content-Length: ['81'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c/capture?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machine_capturec0f9130c/providers/Microsoft.Compute/virtualMachines/pyvmirvmc0f9130c/capture?api-version=2018-10-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/d62a11b5-9bf5-4704-8bba-9a5677541ce6?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/b9ed5d92-ee73-45f7-ab5d-d076c6ba0047?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 18:53:54 GMT'] + date: ['Thu, 27 Sep 2018 22:18:18 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/d62a11b5-9bf5-4704-8bba-9a5677541ce6?monitor=true&api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/b9ed5d92-ee73-45f7-ab5d-d076c6ba0047?monitor=true&api-version=2018-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/UpdateVM3Min;238,Microsoft.Compute/UpdateVM30Min;1198'] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: body: null @@ -744,34 +731,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/d62a11b5-9bf5-4704-8bba-9a5677541ce6?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/b9ed5d92-ee73-45f7-ab5d-d076c6ba0047?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:53:54.8340477+00:00\",\r\ - \n \"endTime\": \"2018-07-20T18:53:55.2871588+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"$schema\":\"http://schema.management.azure.com/schemas/2014-04-01-preview/VM_IP.json\"\ - ,\"contentVersion\":\"1.0.0.0\",\"parameters\":{\"vmName\":{\"type\":\"string\"\ - },\"vmSize\":{\"type\":\"string\",\"defaultValue\":\"Standard_A0\"},\"adminUserName\"\ - :{\"type\":\"string\"},\"adminPassword\":{\"type\":\"securestring\"},\"networkInterfaceId\"\ - :{\"type\":\"string\"}},\"resources\":[{\"apiVersion\":\"2018-06-01\",\"properties\"\ - :{\"hardwareProfile\":{\"vmSize\":\"[parameters('vmSize')]\"},\"storageProfile\"\ - :{\"osDisk\":{\"osType\":\"Linux\",\"name\":\"pslib-osDisk.f535aa5f-ee8e-41b3-9cc5-36da2b6b00e1.vhd\"\ - ,\"createOption\":\"FromImage\",\"image\":{\"uri\":\"https://pyvmirstorc0f9130c.blob.core.windows.net/system/Microsoft.Compute/Images/dest/pslib-osDisk.f535aa5f-ee8e-41b3-9cc5-36da2b6b00e1.vhd\"\ - },\"vhd\":{\"uri\":\"https://pyvmirstorc0f9130c.blob.core.windows.net/vmcontainer00d4e2b3-bfbf-4926-b2ab-1be840aa5904/osDisk.00d4e2b3-bfbf-4926-b2ab-1be840aa5904.vhd\"\ - },\"caching\":\"None\"}},\"osProfile\":{\"computerName\":\"[parameters('vmName')]\"\ - ,\"adminUsername\":\"[parameters('adminUsername')]\",\"adminPassword\":\"\ - [parameters('adminPassword')]\"},\"networkProfile\":{\"networkInterfaces\"\ - :[{\"id\":\"[parameters('networkInterfaceId')]\"}]},\"provisioningState\"\ - :0},\"type\":\"Microsoft.Compute/virtualMachines\",\"location\":\"westus\"\ - ,\"name\":\"[parameters('vmName')]\"}]}\r\n },\r\n \"name\": \"d62a11b5-9bf5-4704-8bba-9a5677541ce6\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:18:18.4582878+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:18:19.4735334+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"properties\": {\r\n \"output\": {\"$schema\":\"http://schema.management.azure.com/schemas/2014-04-01-preview/VM_IP.json\",\"contentVersion\":\"1.0.0.0\",\"parameters\":{\"vmName\":{\"type\":\"string\"},\"vmSize\":{\"type\":\"string\",\"defaultValue\":\"Standard_A0\"},\"adminUserName\":{\"type\":\"string\"},\"adminPassword\":{\"type\":\"securestring\"},\"networkInterfaceId\":{\"type\":\"string\"}},\"resources\":[{\"apiVersion\":\"2018-10-01\",\"properties\":{\"hardwareProfile\":{\"vmSize\":\"[parameters('vmSize')]\"},\"storageProfile\":{\"osDisk\":{\"osType\":\"Linux\",\"name\":\"pslib-osDisk.1c09b6e5-bb0c-472c-a966-65183d3c7c33.vhd\",\"createOption\":\"FromImage\",\"image\":{\"uri\":\"https://pyvmirstorc0f9130c.blob.core.windows.net/system/Microsoft.Compute/Images/dest/pslib-osDisk.1c09b6e5-bb0c-472c-a966-65183d3c7c33.vhd\"},\"vhd\":{\"uri\":\"https://pyvmirstorc0f9130c.blob.core.windows.net/vmcontainercdd284ae-41f0-45fa-ae9e-723939a0b483/osDisk.cdd284ae-41f0-45fa-ae9e-723939a0b483.vhd\"},\"caching\":\"None\"}},\"osProfile\":{\"computerName\":\"[parameters('vmName')]\",\"adminUsername\":\"[parameters('adminUsername')]\",\"adminPassword\":\"[parameters('adminPassword')]\"},\"networkProfile\":{\"networkInterfaces\":[{\"id\":\"[parameters('networkInterfaceId')]\"}]},\"provisioningState\":0},\"type\":\"Microsoft.Compute/virtualMachines\",\"location\":\"westus\",\"name\":\"[parameters('vmName')]\"}]}\r\n + \ },\r\n \"name\": \"b9ed5d92-ee73-45f7-ab5d-d076c6ba0047\"\r\n}"} headers: cache-control: [no-cache] content-length: ['1485'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:54:24 GMT'] + date: ['Thu, 27 Sep 2018 22:18:47 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -779,7 +752,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29975'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29977'] status: {code: 200, message: OK} - request: body: null @@ -787,17 +760,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/d62a11b5-9bf5-4704-8bba-9a5677541ce6?monitor=true&api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/b9ed5d92-ee73-45f7-ab5d-d076c6ba0047?monitor=true&api-version=2018-10-01 response: - body: {string: '{"$schema":"http://schema.management.azure.com/schemas/2014-04-01-preview/VM_IP.json","contentVersion":"1.0.0.0","parameters":{"vmName":{"type":"string"},"vmSize":{"type":"string","defaultValue":"Standard_A0"},"adminUserName":{"type":"string"},"adminPassword":{"type":"securestring"},"networkInterfaceId":{"type":"string"}},"resources":[{"apiVersion":"2018-06-01","properties":{"hardwareProfile":{"vmSize":"[parameters(''vmSize'')]"},"storageProfile":{"osDisk":{"osType":"Linux","name":"pslib-osDisk.f535aa5f-ee8e-41b3-9cc5-36da2b6b00e1.vhd","createOption":"FromImage","image":{"uri":"https://pyvmirstorc0f9130c.blob.core.windows.net/system/Microsoft.Compute/Images/dest/pslib-osDisk.f535aa5f-ee8e-41b3-9cc5-36da2b6b00e1.vhd"},"vhd":{"uri":"https://pyvmirstorc0f9130c.blob.core.windows.net/vmcontainer00d4e2b3-bfbf-4926-b2ab-1be840aa5904/osDisk.00d4e2b3-bfbf-4926-b2ab-1be840aa5904.vhd"},"caching":"None"}},"osProfile":{"computerName":"[parameters(''vmName'')]","adminUsername":"[parameters(''adminUsername'')]","adminPassword":"[parameters(''adminPassword'')]"},"networkProfile":{"networkInterfaces":[{"id":"[parameters(''networkInterfaceId'')]"}]},"provisioningState":0},"type":"Microsoft.Compute/virtualMachines","location":"westus","name":"[parameters(''vmName'')]"}]}'} + body: {string: '{"$schema":"http://schema.management.azure.com/schemas/2014-04-01-preview/VM_IP.json","contentVersion":"1.0.0.0","parameters":{"vmName":{"type":"string"},"vmSize":{"type":"string","defaultValue":"Standard_A0"},"adminUserName":{"type":"string"},"adminPassword":{"type":"securestring"},"networkInterfaceId":{"type":"string"}},"resources":[{"apiVersion":"2018-10-01","properties":{"hardwareProfile":{"vmSize":"[parameters(''vmSize'')]"},"storageProfile":{"osDisk":{"osType":"Linux","name":"pslib-osDisk.1c09b6e5-bb0c-472c-a966-65183d3c7c33.vhd","createOption":"FromImage","image":{"uri":"https://pyvmirstorc0f9130c.blob.core.windows.net/system/Microsoft.Compute/Images/dest/pslib-osDisk.1c09b6e5-bb0c-472c-a966-65183d3c7c33.vhd"},"vhd":{"uri":"https://pyvmirstorc0f9130c.blob.core.windows.net/vmcontainercdd284ae-41f0-45fa-ae9e-723939a0b483/osDisk.cdd284ae-41f0-45fa-ae9e-723939a0b483.vhd"},"caching":"None"}},"osProfile":{"computerName":"[parameters(''vmName'')]","adminUsername":"[parameters(''adminUsername'')]","adminPassword":"[parameters(''adminPassword'')]"},"networkProfile":{"networkInterfaces":[{"id":"[parameters(''networkInterfaceId'')]"}]},"provisioningState":0},"type":"Microsoft.Compute/virtualMachines","location":"westus","name":"[parameters(''vmName'')]"}]}'} headers: cache-control: [no-cache] content-length: ['1260'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:54:25 GMT'] + date: ['Thu, 27 Sep 2018 22:18:48 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -805,6 +778,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29974'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29976'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_virtual_machines_operations.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_virtual_machines_operations.yaml index 897adbf26db1..628ed20019a5 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_virtual_machines_operations.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_virtual_machines_operations.yaml @@ -8,26 +8,26 @@ interactions: Connection: [keep-alive] Content-Length: ['148'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 azure-mgmt-storage/2.0.0rc4 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/3.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Storage/storageAccounts/pyvmirstor122014cf?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Storage/storageAccounts/pyvmirstor122014cf?api-version=2018-07-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] content-type: [text/plain; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:18:55 GMT'] + date: ['Thu, 27 Sep 2018 22:18:55 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/94e9dfb8-8172-4afc-a5cb-98dcac70de22?monitor=true&api-version=2018-02-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/5d086d15-8214-43ce-bffc-6041b9e17fa8?monitor=true&api-version=2018-07-01'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0'] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 202, message: Accepted} - request: body: null @@ -35,17 +35,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 azure-mgmt-storage/2.0.0rc4 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/3.0.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/94e9dfb8-8172-4afc-a5cb-98dcac70de22?monitor=true&api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/5d086d15-8214-43ce-bffc-6041b9e17fa8?monitor=true&api-version=2018-07-01 response: - body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Storage/storageAccounts/pyvmirstor122014cf","name":"pyvmirstor122014cf","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-07-20T17:18:56.5349505Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-07-20T17:18:56.5349505Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-07-20T17:18:56.4099368Z","primaryEndpoints":{"blob":"https://pyvmirstor122014cf.blob.core.windows.net/","queue":"https://pyvmirstor122014cf.queue.core.windows.net/","table":"https://pyvmirstor122014cf.table.core.windows.net/","file":"https://pyvmirstor122014cf.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} + body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Storage/storageAccounts/pyvmirstor122014cf","name":"pyvmirstor122014cf","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-27T22:18:54.9362056Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-27T22:18:54.9362056Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-09-27T22:18:54.8425186Z","primaryEndpoints":{"blob":"https://pyvmirstor122014cf.blob.core.windows.net/","queue":"https://pyvmirstor122014cf.queue.core.windows.net/","table":"https://pyvmirstor122014cf.table.core.windows.net/","file":"https://pyvmirstor122014cf.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} headers: cache-control: [no-cache] content-length: ['1199'] content-type: [application/json] - date: ['Fri, 20 Jul 2018 17:19:14 GMT'] + date: ['Thu, 27 Sep 2018 22:19:12 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -58,38 +58,39 @@ interactions: - request: body: '{"location": "westus", "properties": {"addressSpace": {"addressPrefixes": ["10.0.0.0/16"]}, "subnets": [{"properties": {"addressPrefix": "10.0.0.0/24"}, - "name": "pyvmirsub122014cf"}]}}' + "name": "pyvmirsub122014cf"}], "enableDdosProtection": false, "enableVmProtection": + false}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['184'] + Content-Length: ['244'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnet122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf\"\ - ,\r\n \"etag\": \"W/\\\"cb70995e-b4d0-4be9-8f5a-088ee1c562a8\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"adef1d9d-fe92-446e-b24f-18feef70ec76\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsub122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\"\ - ,\r\n \"etag\": \"W/\\\"cb70995e-b4d0-4be9-8f5a-088ee1c562a8\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8679ee1a-b700-409b-9247-e7e1696596b4?api-version=2018-02-01'] + body: {string: "{\r\n \"name\": \"pyvmirnet122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf\",\r\n + \ \"etag\": \"W/\\\"799347bf-3ef9-4278-bbbb-1fb397761947\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"resourceGuid\": + \"4fe4d92e-c3bc-48d5-9597-7741c7005643\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsub122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\",\r\n + \ \"etag\": \"W/\\\"799347bf-3ef9-4278-bbbb-1fb397761947\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/81e9455c-65cc-4340-926f-72b3511cb656?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1183'] + content-length: ['1275'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:19:15 GMT'] + date: ['Thu, 27 Sep 2018 22:19:12 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -103,17 +104,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8679ee1a-b700-409b-9247-e7e1696596b4?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/81e9455c-65cc-4340-926f-72b3511cb656?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:19:20 GMT'] + date: ['Thu, 27 Sep 2018 22:19:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -128,17 +129,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8679ee1a-b700-409b-9247-e7e1696596b4?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/81e9455c-65cc-4340-926f-72b3511cb656?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:19:30 GMT'] + date: ['Thu, 27 Sep 2018 22:19:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -153,30 +154,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnet122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf\"\ - ,\r\n \"etag\": \"W/\\\"933ab87c-0ad2-4338-a2e5-9cf9502fa456\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"adef1d9d-fe92-446e-b24f-18feef70ec76\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsub122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\"\ - ,\r\n \"etag\": \"W/\\\"933ab87c-0ad2-4338-a2e5-9cf9502fa456\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnet122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf\",\r\n + \ \"etag\": \"W/\\\"5245381e-08e3-4657-b144-848c75b3e134\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": + \"4fe4d92e-c3bc-48d5-9597-7741c7005643\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsub122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\",\r\n + \ \"etag\": \"W/\\\"5245381e-08e3-4657-b144-848c75b3e134\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1185'] + content-length: ['1277'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:19:32 GMT'] - etag: [W/"933ab87c-0ad2-4338-a2e5-9cf9502fa456"] + date: ['Thu, 27 Sep 2018 22:19:26 GMT'] + etag: [W/"5245381e-08e3-4657-b144-848c75b3e134"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -191,23 +192,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirsub122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\"\ - ,\r\n \"etag\": \"W/\\\"933ab87c-0ad2-4338-a2e5-9cf9502fa456\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirsub122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\",\r\n + \ \"etag\": \"W/\\\"5245381e-08e3-4657-b144-848c75b3e134\\\"\",\r\n \"properties\": + {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.0.0.0/24\",\r\n + \ \"delegations\": []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['418'] + content-length: ['498'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:19:33 GMT'] - etag: [W/"933ab87c-0ad2-4338-a2e5-9cf9502fa456"] + date: ['Thu, 27 Sep 2018 22:19:27 GMT'] + etag: [W/"5245381e-08e3-4657-b144-848c75b3e134"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -219,51 +219,50 @@ interactions: - request: body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"ipConfigurations": [{"properties": {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf", - "properties": {"addressPrefix": "10.0.0.0/24", "provisioningState": "Succeeded"}, - "name": "pyvmirsub122014cf", "etag": "W/\\\\\\\\\\\\\\\\"933ab87c-0ad2-4338-a2e5-9cf9502fa456\\\\\\\\\\\\\\\\""}}, + "properties": {"addressPrefix": "10.0.0.0/24", "delegations": [], "provisioningState": + "Succeeded"}, "name": "pyvmirsub122014cf", "etag": "W/\\\\\\\\\\\\\\\\"5245381e-08e3-4657-b144-848c75b3e134\\\\\\\\\\\\\\\\""}}, "name": "pyarmconfig"}]}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['541'] + Content-Length: ['560'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnic122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"\ - ,\r\n \"etag\": \"W/\\\"e9ca4f7e-42c9-445c-809a-38894517a80a\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"d37cf6bc-f38c-4732-bdd1-8b888bab8d19\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"e9ca4f7e-42c9-445c-809a-38894517a80a\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - tuo45lms5zxejmspdd5o42hmog.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c7e61fa3-4f98-4f78-bab1-f2a04ae2f3c0?api-version=2018-02-01'] + body: {string: "{\r\n \"name\": \"pyvmirnic122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\",\r\n + \ \"etag\": \"W/\\\"e119ae44-6a48-4961-9ad8-73eed7de2b99\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"a9e7c220-8483-432c-a819-f955a91519d2\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"e119ae44-6a48-4961-9ad8-73eed7de2b99\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"f1m4it32ypkurfmxo3a2oacwid.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d4c2f678-7706-4342-b639-d0a813fe1a99?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1752'] + content-length: ['1822'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:19:35 GMT'] + date: ['Thu, 27 Sep 2018 22:19:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1197'] status: {code: 201, message: Created} - request: body: null @@ -271,17 +270,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c7e61fa3-4f98-4f78-bab1-f2a04ae2f3c0?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d4c2f678-7706-4342-b639-d0a813fe1a99?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:20:05 GMT'] + date: ['Thu, 27 Sep 2018 22:19:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -296,35 +295,34 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnic122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"\ - ,\r\n \"etag\": \"W/\\\"e9ca4f7e-42c9-445c-809a-38894517a80a\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"d37cf6bc-f38c-4732-bdd1-8b888bab8d19\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"e9ca4f7e-42c9-445c-809a-38894517a80a\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - tuo45lms5zxejmspdd5o42hmog.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnic122014cf\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\",\r\n + \ \"etag\": \"W/\\\"e119ae44-6a48-4961-9ad8-73eed7de2b99\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"a9e7c220-8483-432c-a819-f955a91519d2\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"e119ae44-6a48-4961-9ad8-73eed7de2b99\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/virtualNetworks/pyvmirnet122014cf/subnets/pyvmirsub122014cf\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"f1m4it32ypkurfmxo3a2oacwid.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['1752'] + content-length: ['1822'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:20:07 GMT'] - etag: [W/"e9ca4f7e-42c9-445c-809a-38894517a80a"] + date: ['Thu, 27 Sep 2018 22:20:00 GMT'] + etag: [W/"e119ae44-6a48-4961-9ad8-73eed7de2b99"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -347,44 +345,41 @@ interactions: Connection: [keep-alive] Content-Length: ['773'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"fc6910bc-0d0a-49ae-b8f7-498a48d88cc3\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"test\",\r\n \"createOption\": \"FromImage\",\r\n\ - \ \"vhd\": {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\"\r\n },\r\n \"dataDisks\"\ - : []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\"\ - ,\r\n \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\":\ - \ {\r\n \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\"\ - : true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\"\ - : true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\"\ - :\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"\ - }]},\r\n \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\"\ - ,\r\n \"name\": \"pyvmirvm122014cf\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/e8985191-071e-473f-9e14-abb9a8262031?api-version=2018-06-01'] + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"f7238b1f-7d42-4e2f-a2b3-b42a71763685\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"test\",\r\n \"createOption\": + \"FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\"\r\n },\r\n \"dataDisks\": + []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\",\r\n + \ \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\": {\r\n + \ \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\": + true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\": + true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"}]},\r\n + \ \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\",\r\n + \ \"name\": \"pyvmirvm122014cf\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/eb543da6-9671-49ea-a6c9-6e57af2e3e3a?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['1495'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:20:09 GMT'] + date: ['Thu, 27 Sep 2018 22:20:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1196'] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1197'] status: {code: 201, message: Created} - request: body: null @@ -392,19 +387,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/e8985191-071e-473f-9e14-abb9a8262031?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/eb543da6-9671-49ea-a6c9-6e57af2e3e3a?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:20:09.0776386+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"e8985191-071e-473f-9e14-abb9a8262031\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:20:01.2049908+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"eb543da6-9671-49ea-a6c9-6e57af2e3e3a\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:20:25 GMT'] + date: ['Thu, 27 Sep 2018 22:20:11 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -412,7 +406,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14990,Microsoft.Compute/GetOperation30Min;29972'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29973'] status: {code: 200, message: OK} - request: body: null @@ -420,19 +414,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/e8985191-071e-473f-9e14-abb9a8262031?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/eb543da6-9671-49ea-a6c9-6e57af2e3e3a?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:20:09.0776386+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"e8985191-071e-473f-9e14-abb9a8262031\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:20:01.2049908+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"eb543da6-9671-49ea-a6c9-6e57af2e3e3a\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:20:57 GMT'] + date: ['Thu, 27 Sep 2018 22:20:41 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -440,7 +433,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14991,Microsoft.Compute/GetOperation30Min;29970'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29970'] status: {code: 200, message: OK} - request: body: null @@ -448,19 +441,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/e8985191-071e-473f-9e14-abb9a8262031?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/eb543da6-9671-49ea-a6c9-6e57af2e3e3a?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:20:09.0776386+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"e8985191-071e-473f-9e14-abb9a8262031\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:20:01.2049908+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"eb543da6-9671-49ea-a6c9-6e57af2e3e3a\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:21:29 GMT'] + date: ['Thu, 27 Sep 2018 22:21:12 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -468,7 +460,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14989,Microsoft.Compute/GetOperation30Min;29967'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29967'] status: {code: 200, message: OK} - request: body: null @@ -476,47 +468,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/e8985191-071e-473f-9e14-abb9a8262031?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/eb543da6-9671-49ea-a6c9-6e57af2e3e3a?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:20:09.0776386+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"e8985191-071e-473f-9e14-abb9a8262031\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:22:00 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29964'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/e8985191-071e-473f-9e14-abb9a8262031?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:20:09.0776386+00:00\",\r\ - \n \"endTime\": \"2018-07-20T17:22:11.2329319+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"e8985191-071e-473f-9e14-abb9a8262031\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:20:01.2049908+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:21:26.9445181+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"eb543da6-9671-49ea-a6c9-6e57af2e3e3a\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:22:31 GMT'] + date: ['Thu, 27 Sep 2018 22:21:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -524,7 +488,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29961'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29964'] status: {code: 200, message: OK} - request: body: null @@ -532,35 +496,33 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"fc6910bc-0d0a-49ae-b8f7-498a48d88cc3\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"test\",\r\n \"createOption\": \"FromImage\",\r\n\ - \ \"vhd\": {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\"\ - : 30\r\n },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\"\ - : {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\"\ - ,\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\"\ - : false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\"\ - : [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\"\ - : {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"\ - }]},\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\"\ - ,\r\n \"name\": \"pyvmirvm122014cf\"\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"f7238b1f-7d42-4e2f-a2b3-b42a71763685\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"test\",\r\n \"createOption\": + \"FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\": 30\r\n + \ },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\": {\r\n + \ \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\",\r\n + \ \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"}]},\r\n + \ \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\",\r\n + \ \"name\": \"pyvmirvm122014cf\"\r\n}"} headers: cache-control: [no-cache] content-length: ['1523'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:22:32 GMT'] + date: ['Thu, 27 Sep 2018 22:21:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -568,7 +530,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4193,Microsoft.Compute/LowCostGet30Min;33578'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3995,Microsoft.Compute/LowCostGet30Min;31986'] status: {code: 200, message: OK} - request: body: null @@ -576,37 +538,34 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"fc6910bc-0d0a-49ae-b8f7-498a48d88cc3\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"test\",\r\n \"createOption\": \"FromImage\",\r\n\ - \ \"vhd\": {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\"\ - : 30\r\n },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\"\ - : {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\"\ - ,\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\"\ - : false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\"\ - : [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\"\ - : {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"\ - }]},\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\"\ - ,\r\n \"name\": \"pyvmirvm122014cf\"\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"f7238b1f-7d42-4e2f-a2b3-b42a71763685\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"test\",\r\n \"createOption\": + \"FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\": 30\r\n + \ },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\": {\r\n + \ \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\",\r\n + \ \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"}]},\r\n + \ \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\",\r\n + \ \"name\": \"pyvmirvm122014cf\"\r\n}"} headers: cache-control: [no-cache] content-length: ['1523'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:22:32 GMT'] + date: ['Thu, 27 Sep 2018 22:21:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -614,7 +573,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4192,Microsoft.Compute/LowCostGet30Min;33577'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3994,Microsoft.Compute/LowCostGet30Min;31985'] status: {code: 200, message: OK} - request: body: null @@ -622,55 +581,51 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?$expand=instanceView&api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?$expand=instanceView&api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"fc6910bc-0d0a-49ae-b8f7-498a48d88cc3\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"test\",\r\n \"createOption\": \"FromImage\",\r\n\ - \ \"vhd\": {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\"\ - : 30\r\n },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\"\ - : {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\"\ - ,\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\"\ - : false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\"\ - : [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\"\ - : {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"\ - }]},\r\n \"provisioningState\": \"Succeeded\",\r\n \"instanceView\"\ - : {\r\n \"computerName\": \"test\",\r\n \"osName\": \"ubuntu\",\r\ - \n \"osVersion\": \"16.04\",\r\n \"vmAgent\": {\r\n \"vmAgentVersion\"\ - : \"2.2.26\",\r\n \"statuses\": [\r\n {\r\n \"\ - code\": \"ProvisioningState/succeeded\",\r\n \"level\": \"Info\"\ - ,\r\n \"displayStatus\": \"Ready\",\r\n \"message\"\ - : \"Guest Agent is running\",\r\n \"time\": \"2018-07-20T17:22:30+00:00\"\ - \r\n }\r\n ],\r\n \"extensionHandlers\": []\r\n \ - \ },\r\n \"disks\": [\r\n {\r\n \"name\": \"test\"\ - ,\r\n \"statuses\": [\r\n {\r\n \"code\"\ - : \"ProvisioningState/succeeded\",\r\n \"level\": \"Info\",\r\ - \n \"displayStatus\": \"Provisioning succeeded\",\r\n \ - \ \"time\": \"2018-07-20T17:20:10.1088837+00:00\"\r\n }\r\ - \n ]\r\n }\r\n ],\r\n \"statuses\": [\r\n \ - \ {\r\n \"code\": \"ProvisioningState/succeeded\",\r\n \ - \ \"level\": \"Info\",\r\n \"displayStatus\": \"Provisioning succeeded\"\ - ,\r\n \"time\": \"2018-07-20T17:22:11.2173139+00:00\"\r\n \ - \ },\r\n {\r\n \"code\": \"PowerState/running\",\r\n \ - \ \"level\": \"Info\",\r\n \"displayStatus\": \"VM running\"\r\ - \n }\r\n ]\r\n }\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\"\ - ,\r\n \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\"\ - ,\r\n \"name\": \"pyvmirvm122014cf\"\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"f7238b1f-7d42-4e2f-a2b3-b42a71763685\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"test\",\r\n \"createOption\": + \"FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\": 30\r\n + \ },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\": {\r\n + \ \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\",\r\n + \ \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"}]},\r\n + \ \"provisioningState\": \"Succeeded\",\r\n \"instanceView\": {\r\n \"computerName\": + \"test\",\r\n \"osName\": \"ubuntu\",\r\n \"osVersion\": \"16.04\",\r\n + \ \"vmAgent\": {\r\n \"vmAgentVersion\": \"2.2.31\",\r\n \"statuses\": + [\r\n {\r\n \"code\": \"ProvisioningState/succeeded\",\r\n + \ \"level\": \"Info\",\r\n \"displayStatus\": \"Ready\",\r\n + \ \"message\": \"Guest Agent is running\",\r\n \"time\": + \"2018-09-27T22:21:41+00:00\"\r\n }\r\n ],\r\n \"extensionHandlers\": + []\r\n },\r\n \"disks\": [\r\n {\r\n \"name\": \"test\",\r\n + \ \"statuses\": [\r\n {\r\n \"code\": \"ProvisioningState/succeeded\",\r\n + \ \"level\": \"Info\",\r\n \"displayStatus\": \"Provisioning + succeeded\",\r\n \"time\": \"2018-09-27T22:20:02.4861765+00:00\"\r\n + \ }\r\n ]\r\n }\r\n ],\r\n \"statuses\": + [\r\n {\r\n \"code\": \"ProvisioningState/succeeded\",\r\n + \ \"level\": \"Info\",\r\n \"displayStatus\": \"Provisioning + succeeded\",\r\n \"time\": \"2018-09-27T22:21:26.913238+00:00\"\r\n + \ },\r\n {\r\n \"code\": \"PowerState/running\",\r\n + \ \"level\": \"Info\",\r\n \"displayStatus\": \"VM running\"\r\n + \ }\r\n ]\r\n }\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\",\r\n + \ \"name\": \"pyvmirvm122014cf\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['2742'] + content-length: ['2741'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:22:43 GMT'] + date: ['Thu, 27 Sep 2018 22:21:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -678,7 +633,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4191,Microsoft.Compute/LowCostGet30Min;33576'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3993,Microsoft.Compute/LowCostGet30Min;31984'] status: {code: 200, message: OK} - request: body: null @@ -687,26 +642,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf/deallocate?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf/deallocate?api-version=2018-10-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/77ced980-e3a7-49b2-80b5-504b82c8695a?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/c37076b8-4b0f-4f41-bbde-c6c3ccd686cd?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 17:22:45 GMT'] + date: ['Thu, 27 Sep 2018 22:21:55 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/77ced980-e3a7-49b2-80b5-504b82c8695a?monitor=true&api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/c37076b8-4b0f-4f41-bbde-c6c3ccd686cd?monitor=true&api-version=2018-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/DeleteVM3Min;239,Microsoft.Compute/DeleteVM30Min;1195'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/DeleteVM3Min;238,Microsoft.Compute/DeleteVM30Min;1196'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: @@ -715,47 +669,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/77ced980-e3a7-49b2-80b5-504b82c8695a?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:22:45.3671512+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"77ced980-e3a7-49b2-80b5-504b82c8695a\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:23:03 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29959'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/77ced980-e3a7-49b2-80b5-504b82c8695a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/c37076b8-4b0f-4f41-bbde-c6c3ccd686cd?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:22:45.3671512+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"77ced980-e3a7-49b2-80b5-504b82c8695a\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:21:56.4493327+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"c37076b8-4b0f-4f41-bbde-c6c3ccd686cd\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:23:39 GMT'] + date: ['Thu, 27 Sep 2018 22:22:06 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -763,7 +688,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29957'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29963'] status: {code: 200, message: OK} - request: body: null @@ -771,19 +696,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/77ced980-e3a7-49b2-80b5-504b82c8695a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/c37076b8-4b0f-4f41-bbde-c6c3ccd686cd?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:22:45.3671512+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"77ced980-e3a7-49b2-80b5-504b82c8695a\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:21:56.4493327+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"c37076b8-4b0f-4f41-bbde-c6c3ccd686cd\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:24:11 GMT'] + date: ['Thu, 27 Sep 2018 22:22:42 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -791,7 +715,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29954'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29960'] status: {code: 200, message: OK} - request: body: null @@ -799,19 +723,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/77ced980-e3a7-49b2-80b5-504b82c8695a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/c37076b8-4b0f-4f41-bbde-c6c3ccd686cd?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:22:45.3671512+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"77ced980-e3a7-49b2-80b5-504b82c8695a\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:21:56.4493327+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"c37076b8-4b0f-4f41-bbde-c6c3ccd686cd\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:24:43 GMT'] + date: ['Thu, 27 Sep 2018 22:23:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -819,7 +742,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29951'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29957'] status: {code: 200, message: OK} - request: body: null @@ -827,19 +750,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/77ced980-e3a7-49b2-80b5-504b82c8695a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/c37076b8-4b0f-4f41-bbde-c6c3ccd686cd?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:22:45.3671512+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"77ced980-e3a7-49b2-80b5-504b82c8695a\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:21:56.4493327+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"c37076b8-4b0f-4f41-bbde-c6c3ccd686cd\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:25:14 GMT'] + date: ['Thu, 27 Sep 2018 22:23:45 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -847,7 +769,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29948'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29954'] status: {code: 200, message: OK} - request: body: null @@ -855,19 +777,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/77ced980-e3a7-49b2-80b5-504b82c8695a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/c37076b8-4b0f-4f41-bbde-c6c3ccd686cd?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:22:45.3671512+00:00\",\r\ - \n \"endTime\": \"2018-07-20T17:25:15.270999+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"77ced980-e3a7-49b2-80b5-504b82c8695a\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:21:56.4493327+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:24:07.6939129+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"c37076b8-4b0f-4f41-bbde-c6c3ccd686cd\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['183'] + content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:25:44 GMT'] + date: ['Thu, 27 Sep 2018 22:24:14 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -875,7 +797,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29946'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29951'] status: {code: 200, message: OK} - request: body: null @@ -884,21 +806,20 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf/start?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf/start?api-version=2018-10-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/baad4985-37de-4a83-99b9-7a0ed12862f7?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/bdaf31a2-3c74-404a-af77-94910d83bb93?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 17:25:45 GMT'] + date: ['Thu, 27 Sep 2018 22:24:15 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/baad4985-37de-4a83-99b9-7a0ed12862f7?monitor=true&api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/bdaf31a2-3c74-404a-af77-94910d83bb93?monitor=true&api-version=2018-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -912,19 +833,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/baad4985-37de-4a83-99b9-7a0ed12862f7?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/bdaf31a2-3c74-404a-af77-94910d83bb93?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:25:46.7146914+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"baad4985-37de-4a83-99b9-7a0ed12862f7\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:24:15.8510636+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"bdaf31a2-3c74-404a-af77-94910d83bb93\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:25:57 GMT'] + date: ['Thu, 27 Sep 2018 22:24:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -932,7 +852,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29945'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29950'] status: {code: 200, message: OK} - request: body: null @@ -940,19 +860,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/baad4985-37de-4a83-99b9-7a0ed12862f7?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/bdaf31a2-3c74-404a-af77-94910d83bb93?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:25:46.7146914+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"baad4985-37de-4a83-99b9-7a0ed12862f7\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:24:15.8510636+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"bdaf31a2-3c74-404a-af77-94910d83bb93\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:26:11 GMT'] + date: ['Thu, 27 Sep 2018 22:24:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -960,7 +879,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29943'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29948'] status: {code: 200, message: OK} - request: body: null @@ -968,19 +887,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/baad4985-37de-4a83-99b9-7a0ed12862f7?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/bdaf31a2-3c74-404a-af77-94910d83bb93?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:25:46.7146914+00:00\",\r\ - \n \"endTime\": \"2018-07-20T17:26:22.1825315+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"baad4985-37de-4a83-99b9-7a0ed12862f7\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:24:15.8510636+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:24:47.694918+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"bdaf31a2-3c74-404a-af77-94910d83bb93\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['184'] + content-length: ['183'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:26:41 GMT'] + date: ['Thu, 27 Sep 2018 22:25:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -988,7 +907,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29940'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29946'] status: {code: 200, message: OK} - request: body: null @@ -997,21 +916,20 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf/restart?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf/restart?api-version=2018-10-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5ec9e9c9-b3c2-422f-a9a4-629ed7bb6763?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/05d796ff-0468-4257-a1a9-fbd9790b9069?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 17:26:43 GMT'] + date: ['Thu, 27 Sep 2018 22:25:10 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5ec9e9c9-b3c2-422f-a9a4-629ed7bb6763?monitor=true&api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/05d796ff-0468-4257-a1a9-fbd9790b9069?monitor=true&api-version=2018-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -1025,19 +943,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5ec9e9c9-b3c2-422f-a9a4-629ed7bb6763?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/05d796ff-0468-4257-a1a9-fbd9790b9069?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:26:43.5622787+00:00\",\r\ - \n \"endTime\": \"2018-07-20T17:26:57.7995825+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"5ec9e9c9-b3c2-422f-a9a4-629ed7bb6763\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:25:11.1858102+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:25:25.4512385+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"05d796ff-0468-4257-a1a9-fbd9790b9069\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:27:13 GMT'] + date: ['Thu, 27 Sep 2018 22:25:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1045,7 +963,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29938'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29944'] status: {code: 200, message: OK} - request: body: null @@ -1054,21 +972,20 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf/powerOff?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf/powerOff?api-version=2018-10-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7d91a1eb-f0eb-4975-9bfc-6f8e0f84dee5?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/917a691b-3180-4e67-81a3-86aa32fa5841?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 17:27:14 GMT'] + date: ['Thu, 27 Sep 2018 22:25:41 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7d91a1eb-f0eb-4975-9bfc-6f8e0f84dee5?monitor=true&api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/917a691b-3180-4e67-81a3-86aa32fa5841?monitor=true&api-version=2018-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -1082,19 +999,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7d91a1eb-f0eb-4975-9bfc-6f8e0f84dee5?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/917a691b-3180-4e67-81a3-86aa32fa5841?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:27:15.2679315+00:00\",\r\ - \n \"endTime\": \"2018-07-20T17:27:28.142498+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"7d91a1eb-f0eb-4975-9bfc-6f8e0f84dee5\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:25:42.045549+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:25:48.7049683+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"917a691b-3180-4e67-81a3-86aa32fa5841\"\r\n}"} headers: cache-control: [no-cache] content-length: ['183'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:27:44 GMT'] + date: ['Thu, 27 Sep 2018 22:26:11 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1102,7 +1019,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29936'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29942'] status: {code: 200, message: OK} - request: body: null @@ -1110,39 +1027,37 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines?api-version=2018-10-01 response: - body: {string: "{\r\n \"value\": [\r\n {\r\n \"properties\": {\r\n \ - \ \"vmId\": \"fc6910bc-0d0a-49ae-b8f7-498a48d88cc3\",\r\n \"hardwareProfile\"\ - : {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n \"storageProfile\"\ - : {\r\n \"imageReference\": {\r\n \"publisher\": \"Canonical\"\ - ,\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": \"16.04.0-LTS\"\ - ,\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\"\ - : {\r\n \"osType\": \"Linux\",\r\n \"name\": \"test\"\ - ,\r\n \"createOption\": \"FromImage\",\r\n \"vhd\":\ - \ {\r\n \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\",\r\n \"\ - diskSizeGB\": 30\r\n },\r\n \"dataDisks\": []\r\n \ - \ },\r\n \"osProfile\": {\r\n \"computerName\": \"test\"\ - ,\r\n \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\"\ - : {\r\n \"disablePasswordAuthentication\": false,\r\n \ - \ \"provisionVMAgent\": true\r\n },\r\n \"secrets\": [],\r\ - \n \"allowExtensionOperations\": true\r\n },\r\n \"\ - networkProfile\": {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"\ - }]},\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \ - \ \"type\": \"Microsoft.Compute/virtualMachines\",\r\n \"location\":\ - \ \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\"\ - ,\r\n \"name\": \"pyvmirvm122014cf\"\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"value\": [\r\n {\r\n \"properties\": {\r\n \"vmId\": + \"f7238b1f-7d42-4e2f-a2b3-b42a71763685\",\r\n \"hardwareProfile\": + {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n \"storageProfile\": + {\r\n \"imageReference\": {\r\n \"publisher\": \"Canonical\",\r\n + \ \"offer\": \"UbuntuServer\",\r\n \"sku\": \"16.04.0-LTS\",\r\n + \ \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"test\",\r\n + \ \"createOption\": \"FromImage\",\r\n \"vhd\": {\r\n + \ \"uri\": \"https://pyvmirstor122014cf.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\": + 30\r\n },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\": + {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": + \"Foo12\",\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Network/networkInterfaces/pyvmirnic122014cf\"}]},\r\n + \ \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": + \"Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf\",\r\n + \ \"name\": \"pyvmirvm122014cf\"\r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] content-length: ['1720'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:27:45 GMT'] + date: ['Thu, 27 Sep 2018 22:26:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1150,7 +1065,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/HighCostGet3Min;159,Microsoft.Compute/HighCostGet30Min;799'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/HighCostGet3Min;139,Microsoft.Compute/HighCostGet30Min;699'] status: {code: 200, message: OK} - request: body: null @@ -1159,26 +1074,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_virtual_machines_operations122014cf/providers/Microsoft.Compute/virtualMachines/pyvmirvm122014cf?api-version=2018-10-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/119df04a-2d48-4517-b551-fc1957d99d3a?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/07164076-0977-4668-a21b-e9201f634834?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 20 Jul 2018 17:27:46 GMT'] + date: ['Thu, 27 Sep 2018 22:26:13 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/119df04a-2d48-4517-b551-fc1957d99d3a?monitor=true&api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/07164076-0977-4668-a21b-e9201f634834?monitor=true&api-version=2018-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/DeleteVM3Min;239,Microsoft.Compute/DeleteVM30Min;1194'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/DeleteVM3Min;239,Microsoft.Compute/DeleteVM30Min;1195'] x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 202, message: Accepted} - request: @@ -1187,19 +1101,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/119df04a-2d48-4517-b551-fc1957d99d3a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/07164076-0977-4668-a21b-e9201f634834?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:27:47.1625797+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"119df04a-2d48-4517-b551-fc1957d99d3a\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:26:13.3611134+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"07164076-0977-4668-a21b-e9201f634834\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:28:04 GMT'] + date: ['Thu, 27 Sep 2018 22:26:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1207,7 +1120,34 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29934'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29941'] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/07164076-0977-4668-a21b-e9201f634834?api-version=2018-10-01 + response: + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:26:13.3611134+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"07164076-0977-4668-a21b-e9201f634834\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['134'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 27 Sep 2018 22:26:53 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29938'] status: {code: 200, message: OK} - request: body: null @@ -1215,19 +1155,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/119df04a-2d48-4517-b551-fc1957d99d3a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/07164076-0977-4668-a21b-e9201f634834?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:27:47.1625797+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"119df04a-2d48-4517-b551-fc1957d99d3a\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:26:13.3611134+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"07164076-0977-4668-a21b-e9201f634834\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:28:35 GMT'] + date: ['Thu, 27 Sep 2018 22:27:24 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1235,7 +1174,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29932'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29935'] status: {code: 200, message: OK} - request: body: null @@ -1243,19 +1182,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/119df04a-2d48-4517-b551-fc1957d99d3a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/07164076-0977-4668-a21b-e9201f634834?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:27:47.1625797+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"119df04a-2d48-4517-b551-fc1957d99d3a\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:26:13.3611134+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"07164076-0977-4668-a21b-e9201f634834\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:07 GMT'] + date: ['Thu, 27 Sep 2018 22:27:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1263,7 +1201,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29929'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29932'] status: {code: 200, message: OK} - request: body: null @@ -1271,19 +1209,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/119df04a-2d48-4517-b551-fc1957d99d3a?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/07164076-0977-4668-a21b-e9201f634834?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:27:47.1625797+00:00\",\r\ - \n \"endTime\": \"2018-07-20T17:29:12.4528217+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"119df04a-2d48-4517-b551-fc1957d99d3a\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:26:13.3611134+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:28:24.6381151+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"07164076-0977-4668-a21b-e9201f634834\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:38 GMT'] + date: ['Thu, 27 Sep 2018 22:28:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1291,6 +1229,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29927'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29929'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_extension_images.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_extension_images.yaml index 297128cfd09b..9dbb68c1782d 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_extension_images.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_extension_images.yaml @@ -5,1507 +5,1498 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers?api-version=2018-10-01 response: - body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"\ - 1e\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"4psa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/4psa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"5nine-software-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/5nine-software-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"7isolutions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/7isolutions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"a10networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/a10networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"abiquo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/abiquo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accellion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accellion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accessdata-group\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accessdata-group\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accops\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accops\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Acronis\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Acronis.Backup\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actian-corp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actian-corp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actian_matrix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actian_matrix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actifio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actifio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"activeeon\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/activeeon\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"adobe_test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/adobe_test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"advantech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/advantech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"advantech-webaccess\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/advantech-webaccess\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aerospike\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aerospike\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aerospike-database\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aerospike-database\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"affinio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/affinio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aiscaler-cache-control-ddos-and-url-rewriting-\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aiscaler-cache-control-ddos-and-url-rewriting-\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"akamai-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/akamai-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"akumina\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/akumina\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alachisoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alachisoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alces-flight-limited\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alces-flight-limited\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alertlogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alertlogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AlertLogic.Extension\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AlertLogic.Extension\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alienvault\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alienvault\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alldigital-brevity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alldigital-brevity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altair-engineering-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altair-engineering-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altamira-corporation\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altamira-corporation\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alteryx\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alteryx\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altova\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altova\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aod\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aod\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"apigee\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/apigee\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appcelerator\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appcelerator\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appex-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appex-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appistry\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appistry\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appscale-marketplace\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appscale-marketplace\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appspace\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appspace\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aptean-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aptean-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aqua-security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aqua-security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aquaforest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aquaforest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arabesque-group\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arabesque-group\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arangodb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arangodb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aras\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aras\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arista-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arista-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"array_networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/array_networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"artificial-intelligence-techniques-sl\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/artificial-intelligence-techniques-sl\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"asigra\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/asigra\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aspex-managed-cloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aspex-managed-cloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"atlassian\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/atlassian\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"atomicorp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/atomicorp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"attunity_cloudbeam\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/attunity_cloudbeam\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"auraportal\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/auraportal\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"auriq-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/auriq-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"avepoint\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/avepoint\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"avi-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/avi-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aviatrix-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aviatrix-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"awingu\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/awingu\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"axway\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/axway\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azul\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azul\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureChinaMarketplace\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureChinaMarketplace\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureDatabricks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureDatabricks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureRT.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureRT.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuresyncfusion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuresyncfusion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting2\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting2\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting3\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting3\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureTools1type\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureTools1type\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"baas-techbureau\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/baas-techbureau\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"baffle-io\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/baffle-io\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"balabit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/balabit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"barracudanetworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/barracudanetworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"basho\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/basho\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"batch\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/batch\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bdy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bdy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"beyondtrust\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/beyondtrust\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bi-builders-as\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bi-builders-as\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Bitnami\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Bitnami\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bizagi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bizagi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"biztalk360\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/biztalk360\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"black-duck-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/black-duck-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blackberry\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blackberry\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blk-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blk-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockapps\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockapps\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockchain-foundry\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockchain-foundry\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockstack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockstack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bloombase\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bloombase\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bluecat\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bluecat\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bluetalon\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bluetalon\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bmc.ctm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bmc.ctm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bmcctm.test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bmcctm.test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"brainshare-it\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/brainshare-it\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bravura-software-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bravura-software-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"brocade_communications\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/brocade_communications\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bssw\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bssw\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"buddhalabs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/buddhalabs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Canonical\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Canonical\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"carto\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/carto\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cask\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cask\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"catechnologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/catechnologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cautelalabs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cautelalabs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cavirin\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cavirin\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cbreplicator\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cbreplicator\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cds\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cds\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"celum-gmbh\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/celum-gmbh\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"center-for-internet-security-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/center-for-internet-security-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"certivox\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/certivox\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cfd-direct\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cfd-direct\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"chain\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/chain\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"checkpoint\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/checkpoint\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"chef-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/chef-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Chef.Bootstrap.WindowsAzure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Chef.Bootstrap.WindowsAzure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cinegy-gmbh\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cinegy-gmbh\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"circleci\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/circleci\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cires21\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cires21\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cisco\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cisco\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"citrix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/citrix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clear-linux-project\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clear-linux-project\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clouber\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clouber\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-checkr\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-checkr\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-cruiser\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-cruiser\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-infrastructure-services\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-infrastructure-services\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbees\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbees\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbees-enterprise-jenkins\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbees-enterprise-jenkins\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbolt-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbolt-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudboost\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudboost\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudenablers-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudenablers-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudera\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudera\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudera1qaz2wsx\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudera1qaz2wsx\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudhouse\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudhouse\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudhub-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudhub-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudify\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudify\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudlanes\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudlanes\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudlink\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudlink\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"CloudLinkEMC.SecureVM\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/CloudLinkEMC.SecureVM\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudneeti\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudneeti\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudplan-gmbh\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudplan-gmbh\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudsecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudsecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudsoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudsoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clustrix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clustrix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"codelathe\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/codelathe\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"codenvy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/codenvy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cognosys\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cognosys\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cohesity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cohesity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cohesive\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cohesive\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"commvault\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/commvault\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"composable\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/composable\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"comunity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/comunity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Confer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Confer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"confluentinc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/confluentinc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"connecting-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/connecting-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"convertigo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/convertigo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"corda\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/corda\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"CoreOS\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/CoreOS\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cortex-ag\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cortex-ag\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"couchbase\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/couchbase\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"crate-io\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/crate-io\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"credativ\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/credativ\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cryptzone\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cryptzone\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ctm.bmc.com\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ctm.bmc.com\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cybernetica-as\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cybernetica-as\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cyxtera\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cyxtera\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"danielsol.AzureTools1\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/danielsol.AzureTools1\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Dans.Windows.App\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Dans.Windows.App\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Dans3.Windows.App\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Dans3.Windows.App\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dataart\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dataart\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"databricks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/databricks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datacore\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datacore\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Datadog.Agent\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Datadog.Agent\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dataiku\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dataiku\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datalayer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datalayer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datastax\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datastax\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datasunrise\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datasunrise\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datometry\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datometry\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dellemc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dellemc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dell_software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dell_software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"delphix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/delphix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"denodo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/denodo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"denyall\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/denyall\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"derdack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/derdack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dgsecure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dgsecure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diagramics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diagramics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"digitaloffice\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/digitaloffice\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diladele\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diladele\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dimensionalmechanics-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dimensionalmechanics-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diqa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diqa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"docker\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/docker\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"docscorp-us\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/docscorp-us\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dome9\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dome9\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"drizti\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/drizti\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"drone\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/drone\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dsi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dsi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dundas\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dundas\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dyadic_security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dyadic_security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dynatrace\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dynatrace\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dynatrace.ruxit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dynatrace.ruxit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eastbanctech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eastbanctech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eastwind-networks-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eastwind-networks-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"edevtech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/edevtech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"egnyte\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/egnyte\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eip\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eip\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eip-eipower\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eip-eipower\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ekran-system-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ekran-system-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elasticbox\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elasticbox\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elecard\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elecard\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"electric-cloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/electric-cloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elementrem\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elementrem\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elfiqnetworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elfiqnetworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"emercoin\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/emercoin\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enforongo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enforongo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enterprise-ethereum-alliance\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enterprise-ethereum-alliance\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enterprisedb-corp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enterprisedb-corp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"equalum\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/equalum\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"equilibrium\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/equilibrium\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"esdenera\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/esdenera\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ESET\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ESET\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"esri\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/esri\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ethereum\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ethereum\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eventtracker\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eventtracker\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"evostream-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/evostream-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"exasol\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/exasol\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"f5-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/f5-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"falconstorsoftware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/falconstorsoftware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fidesys\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fidesys\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"filecatalyst\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/filecatalyst\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"firehost\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/firehost\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flashgrid-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flashgrid-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flexify-io\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flexify-io\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flynet\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flynet\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"foghorn-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/foghorn-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"forcepoint-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/forcepoint-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"forscene\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/forscene\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fortinet\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fortinet\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fortycloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fortycloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fw\",\r\ - \n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fw\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gbs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gbs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gemalto-safenet\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gemalto-safenet\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Gemalto.SafeNet.ProtectV\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Gemalto.SafeNet.ProtectV\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"genesys-source\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/genesys-source\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gigamon-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gigamon-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"GitHub\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/GitHub\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gitlab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gitlab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"globalscape\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/globalscape\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gordic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gordic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"graphitegtc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/graphitegtc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"great-software-laboratory-private-limited\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/great-software-laboratory-private-limited\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"greathorn\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/greathorn\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"greensql\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/greensql\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gridgain\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gridgain\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"guardicore\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/guardicore\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"h2o-ai\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/h2o-ai\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"haivision\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/haivision\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hanu\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hanu\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"haproxy-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/haproxy-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"harpaitalia\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/harpaitalia\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hcl-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hcl-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"heimdall-data\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/heimdall-data\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"help-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/help-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hewlett-packard\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hewlett-packard\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hillstone-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hillstone-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hitachi-solutions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hitachi-solutions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hortonworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hortonworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hpe\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hpe\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"HPE.Security.ApplicationDefender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/HPE.Security.ApplicationDefender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"huawei\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/huawei\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"humanlogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/humanlogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hush-hush\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hush-hush\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hvr\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hvr\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hyperglance\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hyperglance\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hypergrid\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hypergrid\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hytrust\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hytrust\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iaansys\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iaansys\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ibabs-eu\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ibabs-eu\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ibm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ibm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iboss\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iboss\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ikan\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ikan\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"imaginecommunications\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/imaginecommunications\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"imperva\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/imperva\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"incredibuild\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/incredibuild\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infoblox\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infoblox\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infolibrarian\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infolibrarian\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"informatica\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/informatica\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"informationbuilders\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/informationbuilders\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infront-consulting-group-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infront-consulting-group-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ingrammicro\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ingrammicro\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"integration-objects\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/integration-objects\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel-bigdl\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel-bigdl\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel-fpga\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel-fpga\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intellicus-technologies-pvt-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intellicus-technologies-pvt-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intelligent-plant-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intelligent-plant-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intigua\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intigua\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ipswitch\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ipswitch\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iquest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iquest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ishlangu-load-balancer-adc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ishlangu-load-balancer-adc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"issp-corporation\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/issp-corporation\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"itelios\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/itelios\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jamcracker\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jamcracker\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jedox\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jedox\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jelastic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jelastic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jetnexus\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jetnexus\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jetware-srl\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jetware-srl\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jfrog\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jfrog\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jitterbit_integration\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jitterbit_integration\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jm-technology-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jm-technology-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"juniper-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/juniper-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kaazing\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kaazing\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kali-linux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kali-linux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Kaspersky.Lab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Kaspersky.Lab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"KasperskyLab.SecurityAgent\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/KasperskyLab.SecurityAgent\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kaspersky_lab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kaspersky_lab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kelverion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kelverion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kemptech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kemptech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kepion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kepion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kinetica\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kinetica\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"knime\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/knime\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kobalt\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kobalt\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"krypc-technologies-pvt-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/krypc-technologies-pvt-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lansa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lansa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"leostream-corporation\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/leostream-corporation\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liebsoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liebsoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liquid-files\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liquid-files\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liquidware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liquidware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"literatu\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/literatu\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"loadbalancer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/loadbalancer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"logsign\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/logsign\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"logtrust\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/logtrust\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"looker\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/looker\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lti-lt-infotech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lti-lt-infotech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"luminate-security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/luminate-security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mactores_inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mactores_inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"maketv\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/maketv\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"manageengine\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/manageengine\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mapr-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mapr-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mariadb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mariadb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"marklogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/marklogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"massiveanalytic-\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/massiveanalytic-\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mathworks-deployment\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mathworks-deployment\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mathworks-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mathworks-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mavinglobal\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mavinglobal\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"McAfee.EndpointSecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/McAfee.EndpointSecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"McAfee.EndpointSecurity.test3\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/McAfee.EndpointSecurity.test3\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"meanio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/meanio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"media3-technologies-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/media3-technologies-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"memsql\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/memsql\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mendix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mendix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mfe_azure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mfe_azure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mfiles\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mfiles\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mico\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mico\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"micro-focus\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/micro-focus\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsec-zrt\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsec-zrt\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-ads\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-ads\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-avere\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-avere\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-azure-batch\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-azure-batch\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-azure-compute\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-azure-compute\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-dsvm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-dsvm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-hyperv\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-hyperv\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AKS\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AKS\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.ActiveDirectory\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.ActiveDirectory\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.ActiveDirectory.LinuxSSH\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.ActiveDirectory.LinuxSSH\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Applications\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Applications\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Backup.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Backup.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Backup.Test.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Backup.Test.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Diagnostics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Diagnostics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Diagnostics.Build.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Diagnostics.Build.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Extensions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Extensions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.KeyVault\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.KeyVault\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.KeyVault.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.KeyVault.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Monitoring.DependencyAgent\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Monitoring.DependencyAgent\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Networking.SDN\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Networking.SDN\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.NetworkWatcher\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.NetworkWatcher\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Performance.Diagnostics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Performance.Diagnostics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.SiteRecovery\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.SiteRecovery\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.SiteRecovery2\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.SiteRecovery2\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.WorkloadBackup\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.WorkloadBackup\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.SiteRecovery.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.SiteRecovery.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.SiteRecovery2.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.SiteRecovery2.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Test.Identity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Test.Identity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.WindowsFabric.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.WindowsFabric.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureCAT.AzureEnhancedMonitoring\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureCAT.AzureEnhancedMonitoring\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureCAT.AzureEnhancedMonitoringTest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureCAT.AzureEnhancedMonitoringTest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureSecurity.JITAccess\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureSecurity.JITAccess\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CloudBackup.Workload.Extension\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CloudBackup.Workload.Extension\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CloudBackup.Workload.Extension.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CloudBackup.Workload.Extension.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Compute\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Compute\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CPlat.Core\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CPlat.Core\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CPlat.Core.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CPlat.Core.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.DscPolicy2.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.DscPolicy2.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Golive.Extensions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Golive.Extensions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfig.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfig.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfiguration.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfiguration.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.HpcCompute\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.HpcCompute\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.HpcPack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.HpcPack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.ManagedIdentity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.ManagedIdentity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.ManagedServices\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.ManagedServices\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell.Test01\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell.Test01\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SqlServer.Managability.IaaS.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SqlServer.Managability.IaaS.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SqlServer.Management\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SqlServer.Management\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SystemCenter\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SystemCenter\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.TestSqlServer.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.TestSqlServer.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.ETWTraceListenerService\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.ETWTraceListenerService\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.RemoteDebug\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.RemoteDebug\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.RemoteDebug.Json\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.RemoteDebug.Json\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.ServiceProfiler\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.ServiceProfiler\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Services\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Services\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Windows.AzureRemoteApp.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Windows.AzureRemoteApp.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Windows.RemoteDesktop\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Windows.RemoteDesktop\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.WindowsAzure.Compute\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.WindowsAzure.Compute\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftAzureSiteRecovery\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftAzureSiteRecovery\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftBizTalkServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftBizTalkServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsAX\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsAX\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsGP\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsGP\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsNAV\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsNAV\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftHybridCloudStorage\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftHybridCloudStorage\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftOSTC\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftOSTC\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoftoxa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoftoxa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftRServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftRServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftSharePoint\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftSharePoint\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftSQLServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftSQLServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftVisualStudio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftVisualStudio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsDesktop\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsDesktop\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsServerHPCPack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsServerHPCPack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microstrategy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microstrategy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"midfin\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/midfin\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"midvision\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/midvision\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mindcti\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mindcti\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miraclelinux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miraclelinux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miracl_linux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miracl_linux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miri-infotech-pvt-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miri-infotech-pvt-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mobilab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mobilab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"moogsoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/moogsoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"moviemasher\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/moviemasher\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"msopentech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/msopentech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"msrazuresapservices\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/msrazuresapservices\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mtnfog\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mtnfog\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"multisoft-ab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/multisoft-ab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mvp-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mvp-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mxhero\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mxhero\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"my-com\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/my-com\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"narrativescience\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/narrativescience\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nasuni\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nasuni\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ncbi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ncbi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ndl\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ndl\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nebbiolo-technologies-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nebbiolo-technologies-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netapp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netapp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netatwork\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netatwork\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netgate\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netgate\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netikus-net-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netikus-net-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netiq\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netiq\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netmail\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netmail\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netsil\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netsil\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netsweeper\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netsweeper\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netwrix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netwrix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"neusoft-neteye\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/neusoft-neteye\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nextlimit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nextlimit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nginxinc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nginxinc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nicepeopleatwork\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nicepeopleatwork\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nodejsapi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nodejsapi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"noobaa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/noobaa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"norsync\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/norsync\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"northbridge-secure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/northbridge-secure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nri\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nri\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ntt-data-intellilink-corporation\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ntt-data-intellilink-corporation\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nubeva-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nubeva-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nuco-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nuco-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nuxeo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nuxeo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nvidia\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nvidia\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"o2mc-real-time-data-platform\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/o2mc-real-time-data-platform\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"oceanblue-cloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/oceanblue-cloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"OctopusDeploy.Tentacle\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/OctopusDeploy.Tentacle\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"omega-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/omega-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"onapsis\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/onapsis\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"onyx-point-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/onyx-point-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"op5\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/op5\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opencell\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opencell\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"OpenLogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/OpenLogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opentext\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opentext\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"openvpn\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/openvpn\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opslogix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opslogix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opsview-limited\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opsview-limited\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Oracle\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Oracle\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"oriana\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/oriana\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"orientdb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/orientdb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osirium-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osirium-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osisoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osisoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osnexus\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osnexus\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"paloaltonetworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/paloaltonetworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"panorama-necto\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/panorama-necto\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"panzura-file-system\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/panzura-file-system\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"parallels\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/parallels\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"parasoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/parasoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"passlogy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/passlogy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"paxata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/paxata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"peer-software-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/peer-software-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"penta-security-systems-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/penta-security-systems-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"percona\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/percona\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pivotal\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pivotal\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"plesk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/plesk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"portalarchitects\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/portalarchitects\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"postgres-pro\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/postgres-pro\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"prestashop\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/prestashop\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"prime-strategy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/prime-strategy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"process-one\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/process-one\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Profiler.Master.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Profiler.Master.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"profisee\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/profisee\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"progelspa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/progelspa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ptsecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ptsecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pulse-secure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pulse-secure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"puppet\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/puppet\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"PuppetLabs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/PuppetLabs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"PuppetLabs.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/PuppetLabs.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pydio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pydio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pyramidanalytics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pyramidanalytics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qlik\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qlik\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qore-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qore-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Qualys\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Qualys\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Qualys.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Qualys.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qualysguard\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qualysguard\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"quasardb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/quasardb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qubole\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qubole\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qubole-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qubole-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"quest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/quest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"racknap\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/racknap\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"radiant-logic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/radiant-logic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"radware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/radware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rancher\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rancher\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rapid7\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rapid7\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Rapid7.InsightPlatform\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Rapid7.InsightPlatform\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rapidminer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rapidminer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rds\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rds\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"realm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/realm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"reblaze\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/reblaze\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RedHat\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RedHat\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"redpoint-global\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/redpoint-global\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"relevance-lab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/relevance-lab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"remotelearner\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/remotelearner\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"res\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/res\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"resco\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/resco\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"responder-corp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/responder-corp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"revolution-analytics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/revolution-analytics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RightScaleLinux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RightScaleLinux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RightScaleWindowsServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RightScaleWindowsServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"riverbed\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/riverbed\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RiverbedTechnology\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RiverbedTechnology\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rocketsoftware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rocketsoftware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"roktech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/roktech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rsa-security-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rsa-security-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rsk-labs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rsk-labs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rtts\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rtts\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rubrik-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rubrik-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saama\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saama\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saasame-limited\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saasame-limited\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saltstack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saltstack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"samsung-sds\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/samsung-sds\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"samsungsds-cello\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/samsungsds-cello\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sap\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sap\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scalearc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scalearc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scalegrid\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scalegrid\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scality\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scality\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scsk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scsk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"secureworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/secureworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sentryone\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sentryone\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"service-control-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/service-control-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shadow-soft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shadow-soft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sharefile\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sharefile\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shareshiftneeraj.test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shareshiftneeraj.test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shieldx-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shieldx-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sidm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sidm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sightapps\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sightapps\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"signal-sciences\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/signal-sciences\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"silver-peak-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/silver-peak-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simmachinesinc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simmachinesinc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simplygon\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simplygon\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sinefa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sinefa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sios_datakeeper\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sios_datakeeper\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sisense\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sisense\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Site24x7\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Site24x7\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"skyarc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/skyarc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"smartmessage-autoflow\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/smartmessage-autoflow\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"snaplogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/snaplogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"soasta\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/soasta\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"softnas\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/softnas\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"soha\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/soha\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solanolabs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solanolabs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solar-security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solar-security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solarwinds\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solarwinds\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sonicwall-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sonicwall-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sophos\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sophos\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"south-river-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/south-river-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spacecurve\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spacecurve\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spagobi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spagobi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sparklinglogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sparklinglogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sphere3d\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sphere3d\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"splunk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/splunk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sqlstream\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sqlstream\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"src-solution\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/src-solution\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stackato-platform-as-a-service\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stackato-platform-as-a-service\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Stackify.LinuxAgent.Extension\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Stackify.LinuxAgent.Extension\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stackstorm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stackstorm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"startekfingerprintmatch\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/startekfingerprintmatch\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"starwind\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/starwind\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"StatusReport.Diagnostics.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/StatusReport.Diagnostics.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stealthbits\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stealthbits\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"steelhive\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/steelhive\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stonefly\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stonefly\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stormshield\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stormshield\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"storreduce\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/storreduce\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratalux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratalux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratis-group-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratis-group-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratumn\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratumn\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"streamsets\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/streamsets\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"striim\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/striim\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sumologic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sumologic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"SUSE\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/SUSE\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection.TestOnStage\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection.TestOnStage\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.QA\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.QA\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.staging\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.staging\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"symantectest1\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/symantectest1\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"synack-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/synack-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusionbigdataplatfor\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusionbigdataplatfor\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusiondashboard\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusiondashboard\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"synechron-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/synechron-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syte\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syte\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tableau\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tableau\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tactic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tactic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talari-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talari-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talena-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talena-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talon\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talon\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"targit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/targit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tavendo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tavendo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"te-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/te-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"techdivision\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/techdivision\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"techlatest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/techlatest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"telepat\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/telepat\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tenable\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tenable\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"teradata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/teradata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Teradici\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Teradici\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.Gemalto.SafeNet.ProtectV\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.Gemalto.SafeNet.ProtectV\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.HP.AppDefender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.HP.AppDefender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.Microsoft.VisualStudio.Services\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.Microsoft.VisualStudio.Services\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.NJHP.AppDefender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.NJHP.AppDefender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.TrendMicro.DeepSecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.TrendMicro.DeepSecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test1.NJHP.AppDefender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test1.NJHP.AppDefender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test3.Microsoft.VisualStudio.Services\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test3.Microsoft.VisualStudio.Services\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"thales-vormetric\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/thales-vormetric\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"thoughtspot-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/thoughtspot-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tibco-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tibco-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tig\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tig\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"timextender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/timextender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tmaxsoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tmaxsoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tokyosystemhouse\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tokyosystemhouse\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"topdesk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/topdesk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"torusware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/torusware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"totemo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/totemo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"townsend-security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/townsend-security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"transvault\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/transvault\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"trendmicro\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/trendmicro\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"TrendMicro.DeepSecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/TrendMicro.DeepSecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"TrendMicro.PortalProtect\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/TrendMicro.PortalProtect\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tresorit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tresorit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"truestack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/truestack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tsa-public-service\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tsa-public-service\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tunnelbiz\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tunnelbiz\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"twistlock\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/twistlock\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"typesafe\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/typesafe\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ubeeko\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ubeeko\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ubercloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ubercloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ulex\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ulex\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unidesk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unidesk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unidesk-corp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unidesk-corp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unifi-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unifi-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"uniprint-net\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/uniprint-net\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unitrends\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unitrends\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"usp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/usp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"varnish\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/varnish\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vaultive-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vaultive-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vbot\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vbot\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"veeam\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/veeam\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velocitydb-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velocitydb-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velocloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velocloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velostrata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velostrata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velostrata-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velostrata-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"veritas\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/veritas\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"versasec\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/versasec\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vidispine\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vidispine\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vidizmo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vidizmo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vigyanlabs-innovations-pvt-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vigyanlabs-innovations-pvt-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vintegris\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vintegris\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"viptela\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/viptela\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vircom\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vircom\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vizixiotplatformretail001\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vizixiotplatformretail001\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vmturbo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vmturbo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Vormetric\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Vormetric\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vte\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vte\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vu-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vu-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"WAD2AI.Diagnostics.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/WAD2AI.Diagnostics.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"WAD2EventHub.Diagnostics.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/WAD2EventHub.Diagnostics.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wallix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wallix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wanpath-dba-myworkdrive\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wanpath-dba-myworkdrive\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"waratek\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/waratek\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wardy-it-solutions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wardy-it-solutions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"warewolf-esb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/warewolf-esb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"watchguard-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/watchguard-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"waves\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/waves\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"websense-apmailpe\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/websense-apmailpe\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"winmagic_securedoc_cloudvm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/winmagic_securedoc_cloudvm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wmspanel\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wmspanel\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"workshare-technology\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/workshare-technology\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"workspot\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/workspot\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wowza\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wowza\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xendata-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xendata-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xfinityinc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xfinityinc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xtremedata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xtremedata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xyzrd-group-ou\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xyzrd-group-ou\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"yellowfin\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/yellowfin\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"your-shop-online\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/your-shop-online\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"z1\",\r\ - \n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/z1\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"z4it-aps\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/z4it-aps\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zend\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zend\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zerodown_software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zerodown_software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zerto\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zerto\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zoomdata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zoomdata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zscaler\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zscaler\"\ - \r\n }\r\n]"} + body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"128technology\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/128technology\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"1e\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"4psa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/4psa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"5nine-software-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/5nine-software-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"7isolutions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/7isolutions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"a10networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/a10networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"abiquo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/abiquo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accellion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accellion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accessdata-group\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accessdata-group\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accops\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accops\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Acronis\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Acronis.Backup\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actian-corp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actian-corp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actian_matrix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actian_matrix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actifio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actifio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"activeeon\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/activeeon\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"advantech-webaccess\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/advantech-webaccess\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aerospike\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aerospike\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"affinio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/affinio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aiscaler-cache-control-ddos-and-url-rewriting-\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aiscaler-cache-control-ddos-and-url-rewriting-\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"akamai-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/akamai-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"akumina\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/akumina\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alachisoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alachisoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alces-flight-limited\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alces-flight-limited\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alertlogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alertlogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AlertLogic.Extension\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AlertLogic.Extension\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alienvault\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alienvault\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alldigital-brevity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alldigital-brevity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altair-engineering-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altair-engineering-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altamira-corporation\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altamira-corporation\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alteryx\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alteryx\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altova\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altova\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"antmedia\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/antmedia\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aod\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aod\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"apigee\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/apigee\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appcara\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appcara\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appcelerator\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appcelerator\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appex-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appex-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appistry\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appistry\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"apps-4-rent\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/apps-4-rent\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appscale-marketplace\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appscale-marketplace\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aquaforest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aquaforest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arabesque-group\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arabesque-group\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arangodb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arangodb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aras\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aras\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arista-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arista-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"array_networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/array_networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"artificial-intelligence-techniques-sl\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/artificial-intelligence-techniques-sl\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"asigra\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/asigra\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aspex-managed-cloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aspex-managed-cloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"atlassian\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/atlassian\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"atomicorp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/atomicorp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"attunity_cloudbeam\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/attunity_cloudbeam\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"audiocodes\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/audiocodes\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"auraportal\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/auraportal\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"auriq-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/auriq-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"avepoint\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/avepoint\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"avi-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/avi-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aviatrix-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aviatrix-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"awingu\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/awingu\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"axway\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/axway\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azul\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azul\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azurecyclecloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azurecyclecloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureDatabricks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureDatabricks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureRT.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureRT.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting2\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting2\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting3\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting3\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureTools1type\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureTools1type\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"baas-techbureau\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/baas-techbureau\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"baffle-io\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/baffle-io\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"balabit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/balabit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Barracuda\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Barracuda\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"barracudanetworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/barracudanetworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"basho\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/basho\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"batch\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/batch\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bdy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bdy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"beyondtrust\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/beyondtrust\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bi-builders-as\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bi-builders-as\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Bitnami\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Bitnami\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bizagi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bizagi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"biztalk360\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/biztalk360\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"black-duck-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/black-duck-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blackberry\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blackberry\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blk-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blk-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockapps\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockapps\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockchain-foundry\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockchain-foundry\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockstack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockstack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bloombase\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bloombase\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bluecat\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bluecat\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bluetalon\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bluetalon\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bmc.ctm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bmc.ctm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bmcctm.test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bmcctm.test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bocada\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bocada\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bravura-software-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bravura-software-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"brocade_communications\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/brocade_communications\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bssw\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bssw\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bt-americas-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bt-americas-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"buddhalabs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/buddhalabs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Canonical\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Canonical\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"carto\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/carto\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cask\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cask\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"catechnologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/catechnologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cautelalabs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cautelalabs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cavirin\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cavirin\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cds\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cds\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"celum-gmbh\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/celum-gmbh\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"center-for-internet-security-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/center-for-internet-security-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"certivox\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/certivox\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cfd-direct\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cfd-direct\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"chain\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/chain\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"checkpoint\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/checkpoint\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"chef-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/chef-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Chef.Bootstrap.WindowsAzure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Chef.Bootstrap.WindowsAzure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cinegy-gmbh\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cinegy-gmbh\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"circleci\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/circleci\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cires21\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cires21\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cisco\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cisco\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"citrix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/citrix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clear-linux-project\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clear-linux-project\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clouber\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clouber\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-checkr\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-checkr\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-cruiser\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-cruiser\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-infrastructure-services\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-infrastructure-services\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbees\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbees\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbees-enterprise-jenkins\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbees-enterprise-jenkins\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbolt-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbolt-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudboost\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudboost\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudenablers-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudenablers-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudera\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudera\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudhouse\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudhouse\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudhub-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudhub-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudlanes\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudlanes\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudlink\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudlink\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"CloudLinkEMC.SecureVM\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/CloudLinkEMC.SecureVM\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudneeti\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudneeti\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudplan-gmbh\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudplan-gmbh\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudsecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudsecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudsoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudsoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clustrix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clustrix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"codelathe\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/codelathe\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"codenvy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/codenvy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cognosys\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cognosys\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cohesity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cohesity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cohesive\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cohesive\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"commvault\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/commvault\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"composable\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/composable\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"comunity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/comunity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Confer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Confer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"confluentinc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/confluentinc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"connecting-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/connecting-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"containeraider\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/containeraider\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"convertigo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/convertigo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"corda\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/corda\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"core-stack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/core-stack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"CoreOS\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/CoreOS\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"couchbase\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/couchbase\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"credativ\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/credativ\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cryptzone\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cryptzone\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ctm.bmc.com\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ctm.bmc.com\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cybernetica-as\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cybernetica-as\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cyxtera\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cyxtera\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"danielsol.AzureTools1\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/danielsol.AzureTools1\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Dans.Windows.App\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Dans.Windows.App\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Dans3.Windows.App\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Dans3.Windows.App\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dataart\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dataart\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"databricks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/databricks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datacore\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datacore\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Datadog.Agent\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Datadog.Agent\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dataiku\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dataiku\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datalayer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datalayer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datastax\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datastax\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datasunrise\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datasunrise\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datometry\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datometry\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dellemc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dellemc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dell_software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dell_software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"delphix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/delphix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"denodo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/denodo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"denyall\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/denyall\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"derdack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/derdack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dgsecure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dgsecure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diagramics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diagramics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"digitaloffice\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/digitaloffice\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diladele\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diladele\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dimensionalmechanics-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dimensionalmechanics-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diqa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diqa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"docker\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/docker\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"docscorp-us\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/docscorp-us\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dome9\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dome9\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"drizti\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/drizti\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"drone\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/drone\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dsi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dsi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dundas\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dundas\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dyadic_security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dyadic_security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dynatrace\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dynatrace\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dynatrace.ruxit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dynatrace.ruxit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eastwind-networks-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eastwind-networks-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"edevtech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/edevtech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"egnyte\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/egnyte\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elasticbox\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elasticbox\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elecard\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elecard\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"electric-cloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/electric-cloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elfiqnetworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elfiqnetworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"emercoin\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/emercoin\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enforongo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enforongo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enterprise-ethereum-alliance\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enterprise-ethereum-alliance\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enterprisedb-corp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enterprisedb-corp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"equalum\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/equalum\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"equilibrium\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/equilibrium\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"esdenera\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/esdenera\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ESET\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ESET\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"esri\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/esri\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ethereum\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ethereum\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eventtracker\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eventtracker\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"evostream-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/evostream-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"exact\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/exact\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"exasol\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/exasol\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"exivity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/exivity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"f5-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/f5-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"falconstorsoftware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/falconstorsoftware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fidesys\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fidesys\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"filecatalyst\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/filecatalyst\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"firehost\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/firehost\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flashgrid-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flashgrid-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flexify-io\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flexify-io\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flynet\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flynet\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"foghorn-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/foghorn-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"forcepoint-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/forcepoint-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"forscene\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/forscene\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fortinet\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fortinet\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fortycloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fortycloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fw\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fw\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gbs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gbs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gemalto-safenet\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gemalto-safenet\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Gemalto.SafeNet.ProtectV\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Gemalto.SafeNet.ProtectV\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"genesys-source\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/genesys-source\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gigamon-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gigamon-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"GitHub\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/GitHub\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gitlab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gitlab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"globalscape\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/globalscape\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"graphitegtc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/graphitegtc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"great-software-laboratory-private-limited\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/great-software-laboratory-private-limited\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"greathorn\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/greathorn\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"greensql\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/greensql\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gridgain\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gridgain\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"guardicore\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/guardicore\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"h2o-ai\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/h2o-ai\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"haivision\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/haivision\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hanu\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hanu\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"haproxy-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/haproxy-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"harpaitalia\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/harpaitalia\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hcl-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hcl-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"heimdall-data\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/heimdall-data\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"help-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/help-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hewlett-packard\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hewlett-packard\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hillstone-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hillstone-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hitachi-solutions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hitachi-solutions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hortonworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hortonworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hpe\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hpe\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"HPE.Security.ApplicationDefender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/HPE.Security.ApplicationDefender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"huawei\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/huawei\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hubstor-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hubstor-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hush-hush\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hush-hush\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hvr\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hvr\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hyperglance\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hyperglance\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hypergrid\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hypergrid\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hytrust\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hytrust\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iaansys\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iaansys\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ibm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ibm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iboss\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iboss\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ikan\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ikan\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"image-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/image-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"imaginecommunications\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/imaginecommunications\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"imperva\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/imperva\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"incredibuild\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/incredibuild\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infoblox\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infoblox\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infolibrarian\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infolibrarian\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"informatica\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/informatica\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"informationbuilders\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/informationbuilders\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infront-consulting-group-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infront-consulting-group-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ingrammicro\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ingrammicro\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"integration-objects\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/integration-objects\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel-bigdl\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel-bigdl\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel-fpga\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel-fpga\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intellicus-technologies-pvt-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intellicus-technologies-pvt-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intelligent-plant-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intelligent-plant-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intersystems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intersystems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intigua\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intigua\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ipswitch\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ipswitch\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iquest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iquest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ishlangu-load-balancer-adc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ishlangu-load-balancer-adc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"issp-corporation\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/issp-corporation\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"itelios\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/itelios\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jamcracker\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jamcracker\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jedox\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jedox\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jelastic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jelastic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jetnexus\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jetnexus\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jetware-srl\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jetware-srl\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jitterbit_integration\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jitterbit_integration\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jm-technology-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jm-technology-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"juniper-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/juniper-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kaazing\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kaazing\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kali-linux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kali-linux\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Kaspersky.Lab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Kaspersky.Lab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"KasperskyLab.SecurityAgent\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/KasperskyLab.SecurityAgent\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kaspersky_lab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kaspersky_lab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kelverion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kelverion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kemptech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kemptech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kepion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kepion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kinetica\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kinetica\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"knime\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/knime\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kobalt\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kobalt\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"krypc-technologies-pvt-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/krypc-technologies-pvt-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lancom-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lancom-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lansa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lansa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"leap-orbit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/leap-orbit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"leostream-corporation\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/leostream-corporation\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liebsoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liebsoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liquid-files\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liquid-files\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liquidware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liquidware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"literatu\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/literatu\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"loadbalancer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/loadbalancer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"logsign\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/logsign\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"logtrust\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/logtrust\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"looker\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/looker\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lti-lt-infotech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lti-lt-infotech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"luminate-security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/luminate-security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"maketv\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/maketv\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"manageengine\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/manageengine\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mapr-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mapr-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"marand\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/marand\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mariadb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mariadb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"marklogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/marklogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"massiveanalytic-\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/massiveanalytic-\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mathworks-deployment\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mathworks-deployment\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mathworks-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mathworks-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"matillion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/matillion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mavinglobal\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mavinglobal\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"McAfee.EndpointSecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/McAfee.EndpointSecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"McAfee.EndpointSecurity.test3\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/McAfee.EndpointSecurity.test3\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"meanio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/meanio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"media3-technologies-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/media3-technologies-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"memsql\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/memsql\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mendix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mendix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mfe_azure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mfe_azure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mfiles\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mfiles\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mico\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mico\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"micro-focus\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/micro-focus\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsec-zrt\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsec-zrt\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-ads\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-ads\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-aks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-aks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-avere\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-avere\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-azure-batch\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-azure-batch\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-azure-compute\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-azure-compute\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-dsvm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-dsvm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-hyperv\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-hyperv\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AKS\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AKS\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.ActiveDirectory\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.ActiveDirectory\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.ActiveDirectory.LinuxSSH\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.ActiveDirectory.LinuxSSH\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Applications\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Applications\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Backup.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Backup.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Backup.Test.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Backup.Test.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Diagnostics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Diagnostics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Diagnostics.Build.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Diagnostics.Build.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Extensions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Extensions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Geneva\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Geneva\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.KeyVault\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.KeyVault\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.KeyVault.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.KeyVault.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Monitoring.DependencyAgent\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Monitoring.DependencyAgent\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Networking.SDN\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Networking.SDN\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.NetworkWatcher\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.NetworkWatcher\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Performance.Diagnostics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Performance.Diagnostics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.SiteRecovery\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.SiteRecovery\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.SiteRecovery2\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.SiteRecovery2\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.WorkloadBackup\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.WorkloadBackup\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.SiteRecovery.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.SiteRecovery.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.SiteRecovery2.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.SiteRecovery2.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Test.Identity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Test.Identity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.WindowsFabric.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.WindowsFabric.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureCAT.AzureEnhancedMonitoring\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureCAT.AzureEnhancedMonitoring\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureCAT.AzureEnhancedMonitoringTest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureCAT.AzureEnhancedMonitoringTest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureSecurity.JITAccess\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureSecurity.JITAccess\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CloudBackup.Workload.Extension\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CloudBackup.Workload.Extension\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CloudBackup.Workload.Extension.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CloudBackup.Workload.Extension.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Compute\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Compute\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CPlat.Core\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CPlat.Core\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CPlat.Core.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CPlat.Core.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Golive.Extensions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Golive.Extensions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfig.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfig.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfiguration\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfiguration\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfiguration.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfiguration.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.HpcCompute\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.HpcCompute\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.HpcPack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.HpcPack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.ManagedIdentity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.ManagedIdentity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.ManagedServices\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.ManagedServices\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell.Test01\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell.Test01\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SqlServer.Managability.IaaS.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SqlServer.Managability.IaaS.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SqlServer.Management\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SqlServer.Management\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SystemCenter\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SystemCenter\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.TestSqlServer.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.TestSqlServer.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.ETWTraceListenerService\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.ETWTraceListenerService\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.RemoteDebug\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.RemoteDebug\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.RemoteDebug.Json\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.RemoteDebug.Json\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.ServiceProfiler\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.ServiceProfiler\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Services\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Services\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Windows.AzureRemoteApp.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Windows.AzureRemoteApp.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Windows.RemoteDesktop\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Windows.RemoteDesktop\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.WindowsAzure.Compute\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.WindowsAzure.Compute\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftAzureSiteRecovery\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftAzureSiteRecovery\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftBizTalkServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftBizTalkServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsAX\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsAX\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsGP\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsGP\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsNAV\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsNAV\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftHybridCloudStorage\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftHybridCloudStorage\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftOSTC\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftOSTC\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftRServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftRServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftSharePoint\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftSharePoint\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftSQLServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftSQLServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftVisualStudio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftVisualStudio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsDesktop\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsDesktop\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsServerHPCPack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsServerHPCPack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microstrategy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microstrategy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"midfin\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/midfin\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"midvision\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/midvision\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mindcti\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mindcti\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miraclelinux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miraclelinux\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miracl_linux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miracl_linux\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miri-infotech-pvt-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miri-infotech-pvt-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mobilab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mobilab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"moogsoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/moogsoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"moviemasher\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/moviemasher\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"msopentech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/msopentech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mtnfog\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mtnfog\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"multisoft-ab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/multisoft-ab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mvp-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mvp-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mxhero\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mxhero\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"my-com\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/my-com\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"narrativescience\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/narrativescience\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nasuni\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nasuni\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ncbi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ncbi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ndl\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ndl\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nebbiolo-technologies-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nebbiolo-technologies-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netapp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netapp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netatwork\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netatwork\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netgate\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netgate\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netikus-net-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netikus-net-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netiq\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netiq\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netka\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netka\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netmail\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netmail\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netsweeper\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netsweeper\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netwrix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netwrix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netx\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netx\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"neusoft-neteye\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/neusoft-neteye\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nginxinc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nginxinc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nicepeopleatwork\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nicepeopleatwork\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nodejsapi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nodejsapi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"noobaa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/noobaa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"norsync\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/norsync\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"northbridge-secure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/northbridge-secure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nri\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nri\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ntt-data-intellilink-corporation\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ntt-data-intellilink-corporation\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nubeva-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nubeva-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nuco-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nuco-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nuxeo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nuxeo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nvidia\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nvidia\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"o2mc-real-time-data-platform\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/o2mc-real-time-data-platform\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"oceanblue-cloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/oceanblue-cloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"OctopusDeploy.Tentacle\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/OctopusDeploy.Tentacle\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"officeatwork-ag\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/officeatwork-ag\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"omega-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/omega-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"onapsis\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/onapsis\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"onyx-point-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/onyx-point-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"op5\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/op5\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"open-connect-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/open-connect-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opencell\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opencell\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"OpenLogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/OpenLogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opentext\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opentext\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"openvpn\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/openvpn\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opslogix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opslogix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Oracle\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Oracle\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"oriana\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/oriana\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"orientdb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/orientdb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osirium-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osirium-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osisoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osisoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osnexus\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osnexus\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"outsystems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/outsystems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"paloaltonetworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/paloaltonetworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"panorama-necto\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/panorama-necto\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"panzura-file-system\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/panzura-file-system\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"parallels\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/parallels\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"parasoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/parasoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"passlogy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/passlogy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"paxata\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/paxata\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"peer-software-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/peer-software-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"penta-security-systems-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/penta-security-systems-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"percona\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/percona\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pivotal\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pivotal\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"plesk\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/plesk\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"postgres-pro\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/postgres-pro\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"prestashop\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/prestashop\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"prime-strategy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/prime-strategy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"process-one\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/process-one\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"profecia\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/profecia\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Profiler.Master.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Profiler.Master.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"profisee\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/profisee\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"progelspa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/progelspa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ptsecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ptsecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pulse-secure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pulse-secure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"puppet\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/puppet\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"PuppetLabs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/PuppetLabs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"PuppetLabs.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/PuppetLabs.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pydio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pydio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pyramidanalytics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pyramidanalytics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qlik\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qlik\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qore-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qore-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Qualys\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Qualys\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Qualys.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Qualys.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qualysguard\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qualysguard\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"quasardb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/quasardb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qubole\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qubole\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qubole-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qubole-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"quest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/quest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"racknap\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/racknap\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"radiant-logic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/radiant-logic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"radware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/radware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rancher\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rancher\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rapid7\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rapid7\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Rapid7.InsightPlatform\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Rapid7.InsightPlatform\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rapidminer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rapidminer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rds\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rds\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"realm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/realm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"reblaze\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/reblaze\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RedHat\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RedHat\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"redpoint-global\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/redpoint-global\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"relevance-lab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/relevance-lab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"remotelearner\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/remotelearner\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"res\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/res\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"resco\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/resco\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"responder-corp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/responder-corp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"revolution-analytics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/revolution-analytics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RightScaleLinux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RightScaleLinux\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RightScaleWindowsServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RightScaleWindowsServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"riverbed\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/riverbed\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RiverbedTechnology\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RiverbedTechnology\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rocketsoftware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rocketsoftware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"roktech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/roktech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rsa-security-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rsa-security-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rsk-labs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rsk-labs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rtts\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rtts\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rubrik-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rubrik-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saama\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saama\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saasame-limited\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saasame-limited\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saltstack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saltstack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"samsung-sds\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/samsung-sds\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"samsungsds-cello\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/samsungsds-cello\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sap\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sap\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scalearc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scalearc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scalegrid\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scalegrid\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scality\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scality\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scsk\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scsk\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"secureworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/secureworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"semperis\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/semperis\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sentryone\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sentryone\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"service-control-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/service-control-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shadow-soft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shadow-soft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shareshiftneeraj.test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shareshiftneeraj.test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shieldx-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shieldx-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sightapps\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sightapps\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"signal-sciences\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/signal-sciences\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"silver-peak-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/silver-peak-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simmachinesinc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simmachinesinc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simpligov\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simpligov\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simplygon\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simplygon\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sinefa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sinefa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sios_datakeeper\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sios_datakeeper\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Site24x7\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Site24x7\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"skyarc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/skyarc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"smartmessage-autoflow\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/smartmessage-autoflow\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"snaplogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/snaplogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"snapt-adc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/snapt-adc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"soasta\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/soasta\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"softnas\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/softnas\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"soha\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/soha\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solanolabs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solanolabs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solar-security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solar-security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solarwinds\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solarwinds\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sonicwall-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sonicwall-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sophos\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sophos\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"south-river-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/south-river-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spacecurve\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spacecurve\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spagobi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spagobi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sparklinglogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sparklinglogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spektra\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spektra\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sphere3d\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sphere3d\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"splunk\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/splunk\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sqlstream\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sqlstream\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"src-solution\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/src-solution\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stackato-platform-as-a-service\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stackato-platform-as-a-service\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Stackify.LinuxAgent.Extension\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Stackify.LinuxAgent.Extension\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stackstorm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stackstorm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"startekfingerprintmatch\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/startekfingerprintmatch\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"starwind\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/starwind\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"StatusReport.Diagnostics.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/StatusReport.Diagnostics.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stealthbits\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stealthbits\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"steelhive\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/steelhive\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stonefly\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stonefly\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stormshield\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stormshield\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"storreduce\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/storreduce\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratis-group-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratis-group-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratumn\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratumn\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"streamsets\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/streamsets\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"striim\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/striim\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sumologic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sumologic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"SUSE\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/SUSE\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection.TestOnStage\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection.TestOnStage\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.QA\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.QA\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.staging\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.staging\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"symantectest1\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/symantectest1\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"synack-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/synack-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusionbigdataplatfor\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusionbigdataplatfor\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"synechron-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/synechron-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syte\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syte\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tableau\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tableau\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tactic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tactic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talari-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talari-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talena-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talena-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talon\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talon\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"targit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/targit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tata_communications\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tata_communications\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tavendo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tavendo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"te-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/te-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"techdivision\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/techdivision\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"techlatest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/techlatest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"telepat\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/telepat\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tenable\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tenable\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"teradata\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/teradata\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Teradici\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Teradici\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.Gemalto.SafeNet.ProtectV\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.Gemalto.SafeNet.ProtectV\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.HP.AppDefender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.HP.AppDefender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.Microsoft.VisualStudio.Services\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.Microsoft.VisualStudio.Services\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.NJHP.AppDefender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.NJHP.AppDefender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.TrendMicro.DeepSecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.TrendMicro.DeepSecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test1.NJHP.AppDefender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test1.NJHP.AppDefender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test3.Microsoft.VisualStudio.Services\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test3.Microsoft.VisualStudio.Services\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"thales-vormetric\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/thales-vormetric\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"things-board\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/things-board\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"thoughtspot-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/thoughtspot-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tibco-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tibco-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tig\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tig\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tigergraph\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tigergraph\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"timextender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/timextender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tmaxsoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tmaxsoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tokyosystemhouse\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tokyosystemhouse\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"topdesk\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/topdesk\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"torusware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/torusware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"totemo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/totemo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"townsend-security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/townsend-security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"transvault\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/transvault\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"trendmicro\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/trendmicro\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"TrendMicro.DeepSecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/TrendMicro.DeepSecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"TrendMicro.PortalProtect\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/TrendMicro.PortalProtect\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tresorit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tresorit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"truestack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/truestack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tsa-public-service\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tsa-public-service\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tunnelbiz\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tunnelbiz\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"twistlock\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/twistlock\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"typesafe\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/typesafe\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ubeeko\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ubeeko\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ubercloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ubercloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ulex\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ulex\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unifi-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unifi-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"uniprint-net\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/uniprint-net\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unitrends\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unitrends\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"usp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/usp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"varnish\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/varnish\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vaultive-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vaultive-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vbot\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vbot\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"veeam\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/veeam\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velocitydb-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velocitydb-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velocloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velocloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"veritas\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/veritas\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"versasec\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/versasec\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vidispine\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vidispine\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vidizmo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vidizmo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vigyanlabs-innovations-pvt-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vigyanlabs-innovations-pvt-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"viptela\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/viptela\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vircom\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vircom\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vizixiotplatformretail001\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vizixiotplatformretail001\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vmturbo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vmturbo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Vormetric\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Vormetric\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vte\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vte\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vu-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vu-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"WAD2AI.Diagnostics.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/WAD2AI.Diagnostics.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"WAD2EventHub.Diagnostics.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/WAD2EventHub.Diagnostics.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wallarm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wallarm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wallix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wallix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wanpath-dba-myworkdrive\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wanpath-dba-myworkdrive\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wardy-it-solutions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wardy-it-solutions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"warewolf-esb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/warewolf-esb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"watchguard-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/watchguard-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"waves\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/waves\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"websense-apmailpe\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/websense-apmailpe\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"winmagic_securedoc_cloudvm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/winmagic_securedoc_cloudvm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wmspanel\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wmspanel\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"workshare-technology\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/workshare-technology\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"workspot\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/workspot\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wowza\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wowza\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xendata-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xendata-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xfinityinc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xfinityinc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xtremedata\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xtremedata\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xyzrd-group-ou\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xyzrd-group-ou\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"yellowfin\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/yellowfin\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"your-shop-online\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/your-shop-online\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"z1\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/z1\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"z4it-aps\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/z4it-aps\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zend\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zend\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zerodown_software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zerodown_software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zerto\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zerto\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zoomdata\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zoomdata\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zscaler\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zscaler\"\r\n + \ }\r\n]"} headers: cache-control: [no-cache] - content-length: ['151625'] + content-length: ['150885'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:46 GMT'] + date: ['Thu, 27 Sep 2018 22:28:30 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1520,19 +1511,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/1e/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/128technology/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:47 GMT'] + date: ['Thu, 27 Sep 2018 22:28:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1547,19 +1537,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/4psa/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/1e/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:48 GMT'] + date: ['Thu, 27 Sep 2018 22:28:32 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1574,19 +1563,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/5nine-software-inc/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/4psa/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:49 GMT'] + date: ['Thu, 27 Sep 2018 22:28:32 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1601,19 +1589,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/7isolutions/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/5nine-software-inc/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:49 GMT'] + date: ['Thu, 27 Sep 2018 22:28:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1628,19 +1615,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/a10networks/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/7isolutions/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:50 GMT'] + date: ['Thu, 27 Sep 2018 22:28:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1655,19 +1641,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/abiquo/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/a10networks/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:51 GMT'] + date: ['Thu, 27 Sep 2018 22:28:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1682,19 +1667,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/accellion/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/abiquo/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:52 GMT'] + date: ['Thu, 27 Sep 2018 22:28:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1709,19 +1693,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/accessdata-group/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/accellion/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:52 GMT'] + date: ['Thu, 27 Sep 2018 22:28:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1736,19 +1719,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/accops/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/accessdata-group/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:52 GMT'] + date: ['Thu, 27 Sep 2018 22:28:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1763,19 +1745,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/Acronis/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/accops/artifacttypes/vmextension/types?api-version=2018-10-01 response: body: {string: '[]'} headers: cache-control: [no-cache] content-length: ['2'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:54 GMT'] + date: ['Thu, 27 Sep 2018 22:28:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1790,23 +1771,48 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/Acronis.Backup/artifacttypes/vmextension/types?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/Acronis/artifacttypes/vmextension/types?api-version=2018-10-01 response: - body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"\ - AcronisBackup\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup/ArtifactTypes/VMExtension/Types/AcronisBackup\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AcronisBackupLinux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup/ArtifactTypes/VMExtension/Types/AcronisBackupLinux\"\ - \r\n }\r\n]"} + body: {string: '[]'} + headers: + cache-control: [no-cache] + content-length: ['2'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 27 Sep 2018 22:28:35 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/Acronis.Backup/artifacttypes/vmextension/types?api-version=2018-10-01 + response: + body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AcronisBackup\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup/ArtifactTypes/VMExtension/Types/AcronisBackup\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AcronisBackupLinux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup/ArtifactTypes/VMExtension/Types/AcronisBackupLinux\"\r\n + \ }\r\n]"} headers: cache-control: [no-cache] content-length: ['513'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:54 GMT'] + date: ['Thu, 27 Sep 2018 22:28:35 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1821,21 +1827,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/Acronis.Backup/artifacttypes/vmextension/types/AcronisBackup/versions?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/Acronis.Backup/artifacttypes/vmextension/types/AcronisBackup/versions?api-version=2018-10-01 response: - body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"\ - 1.0.33\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup/ArtifactTypes/VMExtension/Types/AcronisBackup/Versions/1.0.33\"\ - \r\n }\r\n]"} + body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"1.0.33\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup/ArtifactTypes/VMExtension/Types/AcronisBackup/Versions/1.0.33\"\r\n + \ }\r\n]"} headers: cache-control: [no-cache] content-length: ['262'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:55 GMT'] + date: ['Thu, 27 Sep 2018 22:28:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1850,23 +1855,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/Acronis.Backup/artifacttypes/vmextension/types/AcronisBackup/versions/1.0.33?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/Acronis.Backup/artifacttypes/vmextension/types/AcronisBackup/versions/1.0.33?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"operatingSystem\": \"Windows\"\ - ,\r\n \"computeRole\": \"IaaS\",\r\n \"vmScaleSetEnabled\": false,\r\ - \n \"supportsMultipleExtensions\": false\r\n },\r\n \"location\": \"\ - westus\",\r\n \"name\": \"1.0.33\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup/ArtifactTypes/VMExtension/Types/AcronisBackup/Versions/1.0.33\"\ - \r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"operatingSystem\": \"Windows\",\r\n + \ \"computeRole\": \"IaaS\",\r\n \"vmScaleSetEnabled\": false,\r\n \"supportsMultipleExtensions\": + false,\r\n \"rollbackSupported\": false\r\n },\r\n \"location\": \"westus\",\r\n + \ \"name\": \"1.0.33\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup/ArtifactTypes/VMExtension/Types/AcronisBackup/Versions/1.0.33\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['408'] + content-length: ['441'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:29:56 GMT'] + date: ['Thu, 27 Sep 2018 22:28:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_extensions.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_extensions.yaml index 755d5ec9b949..5dd9ee336af2 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_extensions.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_extensions.yaml @@ -8,26 +8,26 @@ interactions: Connection: [keep-alive] Content-Length: ['148'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 azure-mgmt-storage/2.0.0rc4 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/3.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Storage/storageAccounts/pyvmextstor15a60f10?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Storage/storageAccounts/pyvmextstor15a60f10?api-version=2018-07-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] content-type: [text/plain; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:30:06 GMT'] + date: ['Thu, 27 Sep 2018 22:28:42 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/0ef4b146-d69c-42c3-9754-44168567c443?monitor=true&api-version=2018-02-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/776eb45c-3344-494b-a6af-75be4e3151a6?monitor=true&api-version=2018-07-01'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0'] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 202, message: Accepted} - request: body: null @@ -35,17 +35,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 azure-mgmt-storage/2.0.0rc4 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/3.0.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/0ef4b146-d69c-42c3-9754-44168567c443?monitor=true&api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/776eb45c-3344-494b-a6af-75be4e3151a6?monitor=true&api-version=2018-07-01 response: - body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Storage/storageAccounts/pyvmextstor15a60f10","name":"pyvmextstor15a60f10","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-07-20T17:30:06.8465041Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-07-20T17:30:06.8465041Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-07-20T17:30:06.7214742Z","primaryEndpoints":{"blob":"https://pyvmextstor15a60f10.blob.core.windows.net/","queue":"https://pyvmextstor15a60f10.queue.core.windows.net/","table":"https://pyvmextstor15a60f10.table.core.windows.net/","file":"https://pyvmextstor15a60f10.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} + body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Storage/storageAccounts/pyvmextstor15a60f10","name":"pyvmextstor15a60f10","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-27T22:28:42.5096120Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-27T22:28:42.5096120Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-09-27T22:28:42.4159013Z","primaryEndpoints":{"blob":"https://pyvmextstor15a60f10.blob.core.windows.net/","queue":"https://pyvmextstor15a60f10.queue.core.windows.net/","table":"https://pyvmextstor15a60f10.table.core.windows.net/","file":"https://pyvmextstor15a60f10.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} headers: cache-control: [no-cache] content-length: ['1191'] content-type: [application/json] - date: ['Fri, 20 Jul 2018 17:30:24 GMT'] + date: ['Thu, 27 Sep 2018 22:28:59 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -58,38 +58,39 @@ interactions: - request: body: '{"location": "westus", "properties": {"addressSpace": {"addressPrefixes": ["10.0.0.0/16"]}, "subnets": [{"properties": {"addressPrefix": "10.0.0.0/24"}, - "name": "pyvmextsub15a60f10"}]}}' + "name": "pyvmextsub15a60f10"}], "enableDdosProtection": false, "enableVmProtection": + false}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['185'] + Content-Length: ['245'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmextnet15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10\"\ - ,\r\n \"etag\": \"W/\\\"b1609b16-1f14-4299-96e3-b38cb695da4e\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"f8da2361-edfa-4961-b7d7-b98e60a993bc\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmextsub15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\"\ - ,\r\n \"etag\": \"W/\\\"b1609b16-1f14-4299-96e3-b38cb695da4e\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmextnet15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10\",\r\n + \ \"etag\": \"W/\\\"82a72418-8797-49d0-ba8b-201e7388b920\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"resourceGuid\": + \"26c5e0c4-94c5-439c-b5eb-7eb5c721f46a\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmextsub15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\",\r\n + \ \"etag\": \"W/\\\"82a72418-8797-49d0-ba8b-201e7388b920\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b531d4e3-3d1d-4449-bd31-6150afd0805b?api-version=2018-02-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a07b4bd9-8914-4d7a-b56e-9f1305101e7a?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1160'] + content-length: ['1252'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:30:25 GMT'] + date: ['Thu, 27 Sep 2018 22:29:00 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -103,17 +104,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b531d4e3-3d1d-4449-bd31-6150afd0805b?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a07b4bd9-8914-4d7a-b56e-9f1305101e7a?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:30:29 GMT'] + date: ['Thu, 27 Sep 2018 22:29:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -128,17 +129,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b531d4e3-3d1d-4449-bd31-6150afd0805b?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a07b4bd9-8914-4d7a-b56e-9f1305101e7a?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:30:40 GMT'] + date: ['Thu, 27 Sep 2018 22:29:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -153,30 +154,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmextnet15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10\"\ - ,\r\n \"etag\": \"W/\\\"8e38299e-d685-4def-88b4-5c0c191c9427\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"f8da2361-edfa-4961-b7d7-b98e60a993bc\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmextsub15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\"\ - ,\r\n \"etag\": \"W/\\\"8e38299e-d685-4def-88b4-5c0c191c9427\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmextnet15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10\",\r\n + \ \"etag\": \"W/\\\"5c7118ac-c753-4070-bedc-d1b56f2386d1\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": + \"26c5e0c4-94c5-439c-b5eb-7eb5c721f46a\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmextsub15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\",\r\n + \ \"etag\": \"W/\\\"5c7118ac-c753-4070-bedc-d1b56f2386d1\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1162'] + content-length: ['1254'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:30:41 GMT'] - etag: [W/"8e38299e-d685-4def-88b4-5c0c191c9427"] + date: ['Thu, 27 Sep 2018 22:29:15 GMT'] + etag: [W/"5c7118ac-c753-4070-bedc-d1b56f2386d1"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -191,23 +192,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmextsub15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\"\ - ,\r\n \"etag\": \"W/\\\"8e38299e-d685-4def-88b4-5c0c191c9427\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmextsub15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\",\r\n + \ \"etag\": \"W/\\\"5c7118ac-c753-4070-bedc-d1b56f2386d1\\\"\",\r\n \"properties\": + {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.0.0.0/24\",\r\n + \ \"delegations\": []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['407'] + content-length: ['487'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:30:43 GMT'] - etag: [W/"8e38299e-d685-4def-88b4-5c0c191c9427"] + date: ['Thu, 27 Sep 2018 22:29:15 GMT'] + etag: [W/"5c7118ac-c753-4070-bedc-d1b56f2386d1"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -219,51 +219,50 @@ interactions: - request: body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"ipConfigurations": [{"properties": {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10", - "properties": {"addressPrefix": "10.0.0.0/24", "provisioningState": "Succeeded"}, - "name": "pyvmextsub15a60f10", "etag": "W/\\\\\\\\\\\\\\\\"8e38299e-d685-4def-88b4-5c0c191c9427\\\\\\\\\\\\\\\\""}}, + "properties": {"addressPrefix": "10.0.0.0/24", "delegations": [], "provisioningState": + "Succeeded"}, "name": "pyvmextsub15a60f10", "etag": "W/\\\\\\\\\\\\\\\\"5c7118ac-c753-4070-bedc-d1b56f2386d1\\\\\\\\\\\\\\\\""}}, "name": "pyarmconfig"}]}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['530'] + Content-Length: ['549'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmextnic15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10\"\ - ,\r\n \"etag\": \"W/\\\"88daaa8d-8ec4-41b4-b1db-a411bbc5d9e7\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"ce036b1a-5ffd-4891-84b0-61f2dd90b2ca\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"88daaa8d-8ec4-41b4-b1db-a411bbc5d9e7\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - mer3v4h03vqutn4xxghgbkmtxe.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmextnic15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10\",\r\n + \ \"etag\": \"W/\\\"919e4c27-a389-4283-9040-23a0a680eab1\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"4a39fecd-6def-4963-ae61-5ba388911c8b\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"919e4c27-a389-4283-9040-23a0a680eab1\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"ytqmkjwfssoehnplp002oipunc.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/df99cf16-90f7-4690-b90f-843f9465dc58?api-version=2018-02-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b3c49adb-ff57-4204-a5ac-30049a284cdb?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1715'] + content-length: ['1785'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:30:44 GMT'] + date: ['Thu, 27 Sep 2018 22:29:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -271,17 +270,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/df99cf16-90f7-4690-b90f-843f9465dc58?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b3c49adb-ff57-4204-a5ac-30049a284cdb?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:31:15 GMT'] + date: ['Thu, 27 Sep 2018 22:29:47 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -296,35 +295,34 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmextnic15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10\"\ - ,\r\n \"etag\": \"W/\\\"88daaa8d-8ec4-41b4-b1db-a411bbc5d9e7\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"ce036b1a-5ffd-4891-84b0-61f2dd90b2ca\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"88daaa8d-8ec4-41b4-b1db-a411bbc5d9e7\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - mer3v4h03vqutn4xxghgbkmtxe.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmextnic15a60f10\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10\",\r\n + \ \"etag\": \"W/\\\"919e4c27-a389-4283-9040-23a0a680eab1\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"4a39fecd-6def-4963-ae61-5ba388911c8b\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"919e4c27-a389-4283-9040-23a0a680eab1\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"ytqmkjwfssoehnplp002oipunc.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['1715'] + content-length: ['1785'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:31:15 GMT'] - etag: [W/"88daaa8d-8ec4-41b4-b1db-a411bbc5d9e7"] + date: ['Thu, 27 Sep 2018 22:29:48 GMT'] + etag: [W/"919e4c27-a389-4283-9040-23a0a680eab1"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -347,43 +345,40 @@ interactions: Connection: [keep-alive] Content-Length: ['765'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10?api-version=2018-06-01 - response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"78de114e-3de9-4250-8725-8a9c2a68386a\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"MicrosoftWindowsServer\",\r\n \"offer\": \"\ - WindowsServer\",\r\n \"sku\": \"2016-Datacenter\",\r\n \"version\"\ - : \"latest\"\r\n },\r\n \"osDisk\": {\r\n \"osType\": \"\ - Windows\",\r\n \"name\": \"test\",\r\n \"createOption\": \"\ - FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmextstor15a60f10.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\"\r\n },\r\n \"dataDisks\"\ - : []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\"\ - ,\r\n \"adminUsername\": \"Foo12\",\r\n \"windowsConfiguration\"\ - : {\r\n \"provisionVMAgent\": true,\r\n \"enableAutomaticUpdates\"\ - : true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\"\ - : true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\"\ - :\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10\"\ - }]},\r\n \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10\"\ - ,\r\n \"name\": \"pyvmextvm15a60f10\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01'] + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10?api-version=2018-10-01 + response: + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"c8cb1566-21d7-4ed9-b243-166a5edff998\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"MicrosoftWindowsServer\",\r\n \"offer\": \"WindowsServer\",\r\n \"sku\": + \"2016-Datacenter\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Windows\",\r\n \"name\": \"test\",\r\n \"createOption\": + \"FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmextstor15a60f10.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\"\r\n },\r\n \"dataDisks\": + []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\",\r\n + \ \"adminUsername\": \"Foo12\",\r\n \"windowsConfiguration\": {\r\n + \ \"provisionVMAgent\": true,\r\n \"enableAutomaticUpdates\": + true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\": + true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10\"}]},\r\n + \ \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10\",\r\n + \ \"name\": \"pyvmextvm15a60f10\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['1485'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:31:17 GMT'] + date: ['Thu, 27 Sep 2018 22:29:49 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1195'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1196'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: @@ -392,159 +387,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:31:28 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14993,Microsoft.Compute/GetOperation30Min;29926'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:32:45 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14993,Microsoft.Compute/GetOperation30Min;29920'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:33:18 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14990,Microsoft.Compute/GetOperation30Min;29917'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:33:50 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29914'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:34:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29911'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:34:52 GMT'] + date: ['Thu, 27 Sep 2018 22:29:59 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -552,7 +406,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29908'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14992,Microsoft.Compute/GetOperation30Min;29927'] status: {code: 200, message: OK} - request: body: null @@ -560,19 +414,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:35:24 GMT'] + date: ['Thu, 27 Sep 2018 22:31:10 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -580,7 +433,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29905'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14993,Microsoft.Compute/GetOperation30Min;29922'] status: {code: 200, message: OK} - request: body: null @@ -588,19 +441,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:35:55 GMT'] + date: ['Thu, 27 Sep 2018 22:31:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -608,7 +460,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29902'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14991,Microsoft.Compute/GetOperation30Min;29919'] status: {code: 200, message: OK} - request: body: null @@ -616,19 +468,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:36:29 GMT'] + date: ['Thu, 27 Sep 2018 22:32:12 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -636,7 +487,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29899'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29916'] status: {code: 200, message: OK} - request: body: null @@ -644,19 +495,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:37:00 GMT'] + date: ['Thu, 27 Sep 2018 22:32:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -664,7 +514,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29896'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29913'] status: {code: 200, message: OK} - request: body: null @@ -672,19 +522,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:37:32 GMT'] + date: ['Thu, 27 Sep 2018 22:33:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -692,7 +541,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29893'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29910'] status: {code: 200, message: OK} - request: body: null @@ -700,19 +549,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:38:03 GMT'] + date: ['Thu, 27 Sep 2018 22:33:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -720,7 +568,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29890'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29907'] status: {code: 200, message: OK} - request: body: null @@ -728,19 +576,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:38:35 GMT'] + date: ['Thu, 27 Sep 2018 22:34:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -748,7 +595,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29887'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29904'] status: {code: 200, message: OK} - request: body: null @@ -756,19 +603,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:39:06 GMT'] + date: ['Thu, 27 Sep 2018 22:34:51 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -776,7 +622,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29884'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29901'] status: {code: 200, message: OK} - request: body: null @@ -784,19 +630,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:39:38 GMT'] + date: ['Thu, 27 Sep 2018 22:35:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -804,7 +649,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29881'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29898'] status: {code: 200, message: OK} - request: body: null @@ -812,19 +657,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:40:11 GMT'] + date: ['Thu, 27 Sep 2018 22:35:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -832,7 +676,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29883'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29895'] status: {code: 200, message: OK} - request: body: null @@ -840,19 +684,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:40:42 GMT'] + date: ['Thu, 27 Sep 2018 22:36:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -860,7 +703,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29880'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29892'] status: {code: 200, message: OK} - request: body: null @@ -868,19 +711,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:41:14 GMT'] + date: ['Thu, 27 Sep 2018 22:36:57 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -888,7 +730,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29877'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29889'] status: {code: 200, message: OK} - request: body: null @@ -896,19 +738,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:41:46 GMT'] + date: ['Thu, 27 Sep 2018 22:37:28 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -916,7 +757,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29874'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29886'] status: {code: 200, message: OK} - request: body: null @@ -924,19 +765,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:42:17 GMT'] + date: ['Thu, 27 Sep 2018 22:37:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -944,7 +784,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29871'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14982,Microsoft.Compute/GetOperation30Min;29883'] status: {code: 200, message: OK} - request: body: null @@ -952,19 +792,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:42:49 GMT'] + date: ['Thu, 27 Sep 2018 22:38:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -972,7 +811,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29868'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29880'] status: {code: 200, message: OK} - request: body: null @@ -980,19 +819,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:43:20 GMT'] + date: ['Thu, 27 Sep 2018 22:39:03 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1000,7 +838,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29865'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29877'] status: {code: 200, message: OK} - request: body: null @@ -1008,19 +846,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:43:52 GMT'] + date: ['Thu, 27 Sep 2018 22:39:35 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1028,7 +865,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29862'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29874'] status: {code: 200, message: OK} - request: body: null @@ -1036,19 +873,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:44:25 GMT'] + date: ['Thu, 27 Sep 2018 22:40:07 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1056,7 +892,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29859'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29873'] status: {code: 200, message: OK} - request: body: null @@ -1064,19 +900,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:44:56 GMT'] + date: ['Thu, 27 Sep 2018 22:40:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1084,7 +919,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29856'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29870'] status: {code: 200, message: OK} - request: body: null @@ -1092,19 +927,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:45:30 GMT'] + date: ['Thu, 27 Sep 2018 22:41:11 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1112,7 +946,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29873'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29867'] status: {code: 200, message: OK} - request: body: null @@ -1120,19 +954,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:46:01 GMT'] + date: ['Thu, 27 Sep 2018 22:41:42 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1140,7 +973,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29870'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29864'] status: {code: 200, message: OK} - request: body: null @@ -1148,19 +981,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:46:32 GMT'] + date: ['Thu, 27 Sep 2018 22:42:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1168,7 +1000,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29867'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29861'] status: {code: 200, message: OK} - request: body: null @@ -1176,19 +1008,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:47:02 GMT'] + date: ['Thu, 27 Sep 2018 22:42:45 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1196,7 +1027,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29864'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29858'] status: {code: 200, message: OK} - request: body: null @@ -1204,19 +1035,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:47:33 GMT'] + date: ['Thu, 27 Sep 2018 22:43:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1224,7 +1054,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29861'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29855'] status: {code: 200, message: OK} - request: body: null @@ -1232,19 +1062,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:48:06 GMT'] + date: ['Thu, 27 Sep 2018 22:43:50 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1252,7 +1081,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29858'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29852'] status: {code: 200, message: OK} - request: body: null @@ -1260,19 +1089,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:48:38 GMT'] + date: ['Thu, 27 Sep 2018 22:44:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1280,7 +1108,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29855'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29849'] status: {code: 200, message: OK} - request: body: null @@ -1288,19 +1116,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/10fd511d-32a8-4665-a925-ebab17dc0330?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:29:49.8488492+00:00\",\r\n + \ \"endTime\": \"2018-09-27T22:44:26.3018691+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"10fd511d-32a8-4665-a925-ebab17dc0330\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['134'] + content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:49:09 GMT'] + date: ['Thu, 27 Sep 2018 22:44:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1308,7 +1136,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29852'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29847'] status: {code: 200, message: OK} - request: body: null @@ -1316,19 +1144,33 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"c8cb1566-21d7-4ed9-b243-166a5edff998\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"MicrosoftWindowsServer\",\r\n \"offer\": \"WindowsServer\",\r\n \"sku\": + \"2016-Datacenter\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Windows\",\r\n \"name\": \"test\",\r\n \"createOption\": + \"FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmextstor15a60f10.blob.core.windows.net/vhds/osdisk.vhd\"\r\n + \ },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\": 127\r\n + \ },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\": {\r\n + \ \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\",\r\n + \ \"windowsConfiguration\": {\r\n \"provisionVMAgent\": true,\r\n + \ \"enableAutomaticUpdates\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10\"}]},\r\n + \ \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10\",\r\n + \ \"name\": \"pyvmextvm15a60f10\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['134'] + content-length: ['1514'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:49:41 GMT'] + date: ['Thu, 27 Sep 2018 22:44:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1336,55 +1178,62 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29849'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3996,Microsoft.Compute/LowCostGet30Min;31976'] status: {code: 200, message: OK} - request: - body: null + body: '{"location": "westus", "properties": {"publisher": "Microsoft.Compute", + "type": "VMAccessAgent", "typeHandlerVersion": "2.0", "autoUpgradeMinorVersion": + true, "settings": {}, "protectedSettings": {}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + Content-Length: ['200'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"autoUpgradeMinorVersion\": true,\r\n + \ \"settings\": {},\r\n \"provisioningState\": \"Creating\",\r\n \"publisher\": + \"Microsoft.Compute\",\r\n \"type\": \"VMAccessAgent\",\r\n \"typeHandlerVersion\": + \"2.0\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines/extensions\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent\",\r\n + \ \"name\": \"pyvmextvm15a60f10AccessAgent\"\r\n}"} headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01'] cache-control: [no-cache] - content-length: ['134'] + content-length: ['580'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:50:12 GMT'] + date: ['Thu, 27 Sep 2018 22:44:53 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29871'] - status: {code: 200, message: OK} + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/UpdateVM3Min;239,Microsoft.Compute/UpdateVM30Min;1194'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 201, message: Created} - request: body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:50:43 GMT'] + date: ['Thu, 27 Sep 2018 22:45:24 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1392,7 +1241,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29868'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29868'] status: {code: 200, message: OK} - request: body: null @@ -1400,19 +1249,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:51:14 GMT'] + date: ['Thu, 27 Sep 2018 22:45:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1420,7 +1268,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29865'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29865'] status: {code: 200, message: OK} - request: body: null @@ -1428,19 +1276,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:51:46 GMT'] + date: ['Thu, 27 Sep 2018 22:46:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1448,7 +1295,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29862'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29862'] status: {code: 200, message: OK} - request: body: null @@ -1456,19 +1303,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:52:17 GMT'] + date: ['Thu, 27 Sep 2018 22:46:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1476,7 +1322,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29859'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29859'] status: {code: 200, message: OK} - request: body: null @@ -1484,19 +1330,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:52:50 GMT'] + date: ['Thu, 27 Sep 2018 22:47:28 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1504,7 +1349,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29856'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29856'] status: {code: 200, message: OK} - request: body: null @@ -1512,19 +1357,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:53:21 GMT'] + date: ['Thu, 27 Sep 2018 22:47:59 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1540,47 +1384,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:53:52 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29850'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:54:23 GMT'] + date: ['Thu, 27 Sep 2018 22:48:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1588,7 +1403,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29847'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29850'] status: {code: 200, message: OK} - request: body: null @@ -1596,19 +1411,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:54:56 GMT'] + date: ['Thu, 27 Sep 2018 22:49:02 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1616,7 +1430,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29844'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29847'] status: {code: 200, message: OK} - request: body: null @@ -1624,19 +1438,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:55:28 GMT'] + date: ['Thu, 27 Sep 2018 22:49:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1644,7 +1457,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29864'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29844'] status: {code: 200, message: OK} - request: body: null @@ -1652,19 +1465,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:56:01 GMT'] + date: ['Thu, 27 Sep 2018 22:50:06 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1672,7 +1484,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29861'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29869'] status: {code: 200, message: OK} - request: body: null @@ -1680,19 +1492,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:56:31 GMT'] + date: ['Thu, 27 Sep 2018 22:50:38 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1700,7 +1511,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29858'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29866'] status: {code: 200, message: OK} - request: body: null @@ -1708,19 +1519,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:57:04 GMT'] + date: ['Thu, 27 Sep 2018 22:51:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1728,7 +1538,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29855'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29863'] status: {code: 200, message: OK} - request: body: null @@ -1736,19 +1546,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:57:35 GMT'] + date: ['Thu, 27 Sep 2018 22:51:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1756,7 +1565,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29852'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29860'] status: {code: 200, message: OK} - request: body: null @@ -1764,19 +1573,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:58:06 GMT'] + date: ['Thu, 27 Sep 2018 22:52:11 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1784,7 +1592,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29849'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29857'] status: {code: 200, message: OK} - request: body: null @@ -1792,19 +1600,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:58:38 GMT'] + date: ['Thu, 27 Sep 2018 22:52:42 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1812,7 +1619,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29846'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29854'] status: {code: 200, message: OK} - request: body: null @@ -1820,19 +1627,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:59:10 GMT'] + date: ['Thu, 27 Sep 2018 22:53:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1840,7 +1646,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29843'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29851'] status: {code: 200, message: OK} - request: body: null @@ -1848,19 +1654,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 17:59:41 GMT'] + date: ['Thu, 27 Sep 2018 22:53:44 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1868,7 +1673,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29840'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29848'] status: {code: 200, message: OK} - request: body: null @@ -1876,19 +1681,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:00:12 GMT'] + date: ['Thu, 27 Sep 2018 22:54:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1896,7 +1700,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29856'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29845'] status: {code: 200, message: OK} - request: body: null @@ -1904,19 +1708,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:00:43 GMT'] + date: ['Thu, 27 Sep 2018 22:54:47 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1924,7 +1727,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29853'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29842'] status: {code: 200, message: OK} - request: body: null @@ -1932,19 +1735,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:01:14 GMT'] + date: ['Thu, 27 Sep 2018 22:55:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1952,7 +1754,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29850'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29858'] status: {code: 200, message: OK} - request: body: null @@ -1960,19 +1762,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:01:47 GMT'] + date: ['Thu, 27 Sep 2018 22:55:49 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1980,7 +1781,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29847'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29855'] status: {code: 200, message: OK} - request: body: null @@ -1988,19 +1789,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:02:17 GMT'] + date: ['Thu, 27 Sep 2018 22:56:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2008,7 +1808,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29844'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29852'] status: {code: 200, message: OK} - request: body: null @@ -2016,19 +1816,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:02:50 GMT'] + date: ['Thu, 27 Sep 2018 22:56:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2036,7 +1835,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29841'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29849'] status: {code: 200, message: OK} - request: body: null @@ -2044,19 +1843,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:03:22 GMT'] + date: ['Thu, 27 Sep 2018 22:57:24 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2064,7 +1862,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29838'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29846'] status: {code: 200, message: OK} - request: body: null @@ -2072,19 +1870,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:03:53 GMT'] + date: ['Thu, 27 Sep 2018 22:57:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2092,7 +1889,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29835'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29843'] status: {code: 200, message: OK} - request: body: null @@ -2100,91 +1897,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:04:25 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29832'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/28338fc3-8d17-442d-922b-4500ae422420?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T17:31:17.5726582+00:00\",\r\ - \n \"endTime\": \"2018-07-20T18:04:56.2602103+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"28338fc3-8d17-442d-922b-4500ae422420\"\r\n}"} - headers: - cache-control: [no-cache] - content-length: ['184'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:04:57 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29829'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10?api-version=2018-06-01 - response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"78de114e-3de9-4250-8725-8a9c2a68386a\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"MicrosoftWindowsServer\",\r\n \"offer\": \"\ - WindowsServer\",\r\n \"sku\": \"2016-Datacenter\",\r\n \"version\"\ - : \"latest\"\r\n },\r\n \"osDisk\": {\r\n \"osType\": \"\ - Windows\",\r\n \"name\": \"test\",\r\n \"createOption\": \"\ - FromImage\",\r\n \"vhd\": {\r\n \"uri\": \"https://pyvmextstor15a60f10.blob.core.windows.net/vhds/osdisk.vhd\"\ - \r\n },\r\n \"caching\": \"None\",\r\n \"diskSizeGB\"\ - : 127\r\n },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\"\ - : {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\"\ - ,\r\n \"windowsConfiguration\": {\r\n \"provisionVMAgent\": true,\r\ - \n \"enableAutomaticUpdates\": true\r\n },\r\n \"secrets\"\ - : [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\"\ - : {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10\"\ - }]},\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10\"\ - ,\r\n \"name\": \"pyvmextvm15a60f10\"\r\n}"} - headers: - cache-control: [no-cache] - content-length: ['1514'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:04:58 GMT'] + date: ['Thu, 27 Sep 2018 22:58:27 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2192,63 +1916,26 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4198,Microsoft.Compute/LowCostGet30Min;33590'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29840'] status: {code: 200, message: OK} -- request: - body: '{"location": "westus", "properties": {"publisher": "Microsoft.Compute", - "type": "VMAccessAgent", "typeHandlerVersion": "2.0", "autoUpgradeMinorVersion": - true, "settings": {}, "protectedSettings": {}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['200'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent?api-version=2018-06-01 - response: - body: {string: "{\r\n \"properties\": {\r\n \"autoUpgradeMinorVersion\": true,\r\ - \n \"settings\": {},\r\n \"provisioningState\": \"Creating\",\r\n \ - \ \"publisher\": \"Microsoft.Compute\",\r\n \"type\": \"VMAccessAgent\"\ - ,\r\n \"typeHandlerVersion\": \"2.0\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines/extensions\"\ - ,\r\n \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent\"\ - ,\r\n \"name\": \"pyvmextvm15a60f10AccessAgent\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01'] - cache-control: [no-cache] - content-length: ['580'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:04:59 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/UpdateVM3Min;239,Microsoft.Compute/UpdateVM30Min;1199'] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 201, message: Created} - request: body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:05:30 GMT'] + date: ['Thu, 27 Sep 2018 22:58:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2256,7 +1943,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29854'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29837'] status: {code: 200, message: OK} - request: body: null @@ -2264,19 +1951,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:06:01 GMT'] + date: ['Thu, 27 Sep 2018 22:59:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2284,7 +1970,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29851'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14982,Microsoft.Compute/GetOperation30Min;29834'] status: {code: 200, message: OK} - request: body: null @@ -2292,19 +1978,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:06:33 GMT'] + date: ['Thu, 27 Sep 2018 23:00:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2312,7 +1997,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29848'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29858'] status: {code: 200, message: OK} - request: body: null @@ -2320,19 +2005,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:07:05 GMT'] + date: ['Thu, 27 Sep 2018 23:00:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2340,7 +2024,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29845'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29855'] status: {code: 200, message: OK} - request: body: null @@ -2348,19 +2032,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:07:37 GMT'] + date: ['Thu, 27 Sep 2018 23:01:06 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2368,7 +2051,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29842'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29852'] status: {code: 200, message: OK} - request: body: null @@ -2376,19 +2059,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:08:09 GMT'] + date: ['Thu, 27 Sep 2018 23:01:38 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2396,7 +2078,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29839'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29849'] status: {code: 200, message: OK} - request: body: null @@ -2404,19 +2086,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:08:41 GMT'] + date: ['Thu, 27 Sep 2018 23:02:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2424,7 +2105,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29836'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29846'] status: {code: 200, message: OK} - request: body: null @@ -2432,19 +2113,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:09:19 GMT'] + date: ['Thu, 27 Sep 2018 23:02:41 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2452,7 +2132,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29833'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29843'] status: {code: 200, message: OK} - request: body: null @@ -2460,19 +2140,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:09:49 GMT'] + date: ['Thu, 27 Sep 2018 23:03:12 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2480,7 +2159,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29830'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29840'] status: {code: 200, message: OK} - request: body: null @@ -2488,19 +2167,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:10:21 GMT'] + date: ['Thu, 27 Sep 2018 23:03:44 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2508,7 +2186,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29856'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29837'] status: {code: 200, message: OK} - request: body: null @@ -2516,19 +2194,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/50a423e7-fa71-47d6-983b-f1983201913e?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T22:44:54.0684039+00:00\",\r\n + \ \"endTime\": \"2018-09-27T23:03:57.1536297+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"50a423e7-fa71-47d6-983b-f1983201913e\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['134'] + content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:10:54 GMT'] + date: ['Thu, 27 Sep 2018 23:04:14 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2536,7 +2214,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29853'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29834'] status: {code: 200, message: OK} - request: body: null @@ -2544,19 +2222,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"autoUpgradeMinorVersion\": true,\r\n + \ \"settings\": {},\r\n \"provisioningState\": \"Succeeded\",\r\n \"publisher\": + \"Microsoft.Compute\",\r\n \"type\": \"VMAccessAgent\",\r\n \"typeHandlerVersion\": + \"2.0\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines/extensions\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent\",\r\n + \ \"name\": \"pyvmextvm15a60f10AccessAgent\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['134'] + content-length: ['581'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:11:27 GMT'] + date: ['Thu, 27 Sep 2018 23:04:14 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2564,7 +2245,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29850'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3998,Microsoft.Compute/LowCostGet30Min;31985'] status: {code: 200, message: OK} - request: body: null @@ -2572,19 +2253,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] + accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"autoUpgradeMinorVersion\": true,\r\n + \ \"settings\": {},\r\n \"provisioningState\": \"Succeeded\",\r\n \"publisher\": + \"Microsoft.Compute\",\r\n \"type\": \"VMAccessAgent\",\r\n \"typeHandlerVersion\": + \"2.0\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines/extensions\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent\",\r\n + \ \"name\": \"pyvmextvm15a60f10AccessAgent\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['134'] + content-length: ['581'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:11:58 GMT'] + date: ['Thu, 27 Sep 2018 23:04:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2592,7 +2277,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29847'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3997,Microsoft.Compute/LowCostGet30Min;31984'] status: {code: 200, message: OK} - request: body: null @@ -2600,47 +2285,46 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + Content-Length: ['0'] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: ''} headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/a8407dc0-ff64-47c3-94f5-5064a7ebf7d1?api-version=2018-10-01'] cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:12:29 GMT'] + content-length: ['0'] + date: ['Thu, 27 Sep 2018 23:04:15 GMT'] expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/a8407dc0-ff64-47c3-94f5-5064a7ebf7d1?monitor=true&api-version=2018-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29844'] - status: {code: 200, message: OK} + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/UpdateVM3Min;239,Microsoft.Compute/UpdateVM30Min;1198'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + status: {code: 202, message: Accepted} - request: body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/a8407dc0-ff64-47c3-94f5-5064a7ebf7d1?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T23:04:16.1365325+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"a8407dc0-ff64-47c3-94f5-5064a7ebf7d1\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:13:01 GMT'] + date: ['Thu, 27 Sep 2018 23:04:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2648,604 +2332,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29841'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:13:33 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29838'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:14:06 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29835'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:14:39 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29832'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:15:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29857'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:15:42 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29854'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:16:14 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29851'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:16:47 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29848'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:17:19 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29845'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:17:51 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29842'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:18:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29839'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:18:55 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29836'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:19:28 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29833'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:19:59 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29830'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:20:32 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29856'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:21:05 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29853'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/5e60a368-21f3-495b-adef-a45dcafe91b1?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:05:00.2442984+00:00\",\r\ - \n \"endTime\": \"2018-07-20T18:21:33.4039973+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"5e60a368-21f3-495b-adef-a45dcafe91b1\"\r\n}"} - headers: - cache-control: [no-cache] - content-length: ['184'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:21:36 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29850'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent?api-version=2018-06-01 - response: - body: {string: "{\r\n \"properties\": {\r\n \"autoUpgradeMinorVersion\": true,\r\ - \n \"settings\": {},\r\n \"provisioningState\": \"Succeeded\",\r\n \ - \ \"publisher\": \"Microsoft.Compute\",\r\n \"type\": \"VMAccessAgent\"\ - ,\r\n \"typeHandlerVersion\": \"2.0\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines/extensions\"\ - ,\r\n \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent\"\ - ,\r\n \"name\": \"pyvmextvm15a60f10AccessAgent\"\r\n}"} - headers: - cache-control: [no-cache] - content-length: ['581'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:21:36 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4198,Microsoft.Compute/LowCostGet30Min;33583'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent?api-version=2018-06-01 - response: - body: {string: "{\r\n \"properties\": {\r\n \"autoUpgradeMinorVersion\": true,\r\ - \n \"settings\": {},\r\n \"provisioningState\": \"Succeeded\",\r\n \ - \ \"publisher\": \"Microsoft.Compute\",\r\n \"type\": \"VMAccessAgent\"\ - ,\r\n \"typeHandlerVersion\": \"2.0\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines/extensions\"\ - ,\r\n \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent\"\ - ,\r\n \"name\": \"pyvmextvm15a60f10AccessAgent\"\r\n}"} - headers: - cache-control: [no-cache] - content-length: ['581'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:21:37 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4197,Microsoft.Compute/LowCostGet30Min;33582'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10/extensions/pyvmextvm15a60f10AccessAgent?api-version=2018-06-01 - response: - body: {string: ''} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7fadabcb-72df-40a3-b008-2aafa9d070a9?api-version=2018-06-01'] - cache-control: [no-cache] - content-length: ['0'] - date: ['Fri, 20 Jul 2018 18:21:38 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7fadabcb-72df-40a3-b008-2aafa9d070a9?monitor=true&api-version=2018-06-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/UpdateVM3Min;239,Microsoft.Compute/UpdateVM30Min;1198'] - x-ms-ratelimit-remaining-subscription-deletes: ['14999'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7fadabcb-72df-40a3-b008-2aafa9d070a9?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:21:38.8569511+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"7fadabcb-72df-40a3-b008-2aafa9d070a9\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:22:09 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29847'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7fadabcb-72df-40a3-b008-2aafa9d070a9?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:21:38.8569511+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"7fadabcb-72df-40a3-b008-2aafa9d070a9\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:22:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14985,Microsoft.Compute/GetOperation30Min;29844'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29832'] status: {code: 200, message: OK} - request: body: null @@ -3253,19 +2340,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7fadabcb-72df-40a3-b008-2aafa9d070a9?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/a8407dc0-ff64-47c3-94f5-5064a7ebf7d1?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T18:21:38.8569511+00:00\",\r\ - \n \"endTime\": \"2018-07-20T18:22:50.5011745+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"7fadabcb-72df-40a3-b008-2aafa9d070a9\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-27T23:04:16.1365325+00:00\",\r\n + \ \"endTime\": \"2018-09-27T23:05:05.4417517+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"a8407dc0-ff64-47c3-94f5-5064a7ebf7d1\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:23:11 GMT'] + date: ['Thu, 27 Sep 2018 23:05:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3273,6 +2360,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29841'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29857'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_images.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_images.yaml index 102d86e6faef..8dbd3184684c 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_images.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_images.yaml @@ -5,1507 +5,1498 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers?api-version=2018-10-01 response: - body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"\ - 1e\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"4psa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/4psa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"5nine-software-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/5nine-software-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"7isolutions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/7isolutions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"a10networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/a10networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"abiquo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/abiquo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accellion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accellion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accessdata-group\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accessdata-group\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accops\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accops\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Acronis\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Acronis.Backup\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actian-corp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actian-corp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actian_matrix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actian_matrix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actifio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actifio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"activeeon\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/activeeon\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"adobe_test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/adobe_test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"advantech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/advantech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"advantech-webaccess\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/advantech-webaccess\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aerospike\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aerospike\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aerospike-database\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aerospike-database\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"affinio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/affinio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aiscaler-cache-control-ddos-and-url-rewriting-\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aiscaler-cache-control-ddos-and-url-rewriting-\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"akamai-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/akamai-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"akumina\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/akumina\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alachisoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alachisoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alces-flight-limited\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alces-flight-limited\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alertlogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alertlogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AlertLogic.Extension\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AlertLogic.Extension\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alienvault\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alienvault\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alldigital-brevity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alldigital-brevity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altair-engineering-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altair-engineering-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altamira-corporation\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altamira-corporation\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alteryx\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alteryx\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altova\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altova\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aod\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aod\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"apigee\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/apigee\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appcelerator\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appcelerator\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appex-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appex-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appistry\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appistry\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appscale-marketplace\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appscale-marketplace\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appspace\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appspace\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aptean-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aptean-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aqua-security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aqua-security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aquaforest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aquaforest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arabesque-group\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arabesque-group\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arangodb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arangodb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aras\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aras\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arista-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arista-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"array_networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/array_networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"artificial-intelligence-techniques-sl\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/artificial-intelligence-techniques-sl\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"asigra\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/asigra\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aspex-managed-cloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aspex-managed-cloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"atlassian\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/atlassian\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"atomicorp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/atomicorp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"attunity_cloudbeam\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/attunity_cloudbeam\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"auraportal\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/auraportal\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"auriq-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/auriq-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"avepoint\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/avepoint\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"avi-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/avi-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aviatrix-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aviatrix-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"awingu\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/awingu\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"axway\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/axway\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azul\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azul\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureChinaMarketplace\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureChinaMarketplace\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureDatabricks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureDatabricks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureRT.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureRT.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuresyncfusion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuresyncfusion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting2\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting2\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting3\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting3\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureTools1type\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureTools1type\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"baas-techbureau\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/baas-techbureau\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"baffle-io\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/baffle-io\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"balabit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/balabit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"barracudanetworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/barracudanetworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"basho\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/basho\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"batch\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/batch\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bdy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bdy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"beyondtrust\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/beyondtrust\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bi-builders-as\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bi-builders-as\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Bitnami\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Bitnami\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bizagi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bizagi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"biztalk360\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/biztalk360\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"black-duck-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/black-duck-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blackberry\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blackberry\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blk-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blk-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockapps\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockapps\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockchain-foundry\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockchain-foundry\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockstack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockstack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bloombase\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bloombase\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bluecat\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bluecat\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bluetalon\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bluetalon\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bmc.ctm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bmc.ctm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bmcctm.test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bmcctm.test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"brainshare-it\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/brainshare-it\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bravura-software-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bravura-software-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"brocade_communications\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/brocade_communications\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bssw\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bssw\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"buddhalabs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/buddhalabs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Canonical\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Canonical\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"carto\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/carto\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cask\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cask\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"catechnologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/catechnologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cautelalabs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cautelalabs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cavirin\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cavirin\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cbreplicator\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cbreplicator\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cds\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cds\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"celum-gmbh\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/celum-gmbh\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"center-for-internet-security-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/center-for-internet-security-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"certivox\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/certivox\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cfd-direct\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cfd-direct\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"chain\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/chain\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"checkpoint\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/checkpoint\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"chef-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/chef-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Chef.Bootstrap.WindowsAzure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Chef.Bootstrap.WindowsAzure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cinegy-gmbh\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cinegy-gmbh\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"circleci\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/circleci\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cires21\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cires21\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cisco\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cisco\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"citrix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/citrix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clear-linux-project\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clear-linux-project\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clouber\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clouber\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-checkr\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-checkr\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-cruiser\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-cruiser\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-infrastructure-services\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-infrastructure-services\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbees\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbees\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbees-enterprise-jenkins\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbees-enterprise-jenkins\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbolt-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbolt-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudboost\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudboost\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudenablers-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudenablers-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudera\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudera\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudera1qaz2wsx\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudera1qaz2wsx\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudhouse\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudhouse\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudhub-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudhub-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudify\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudify\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudlanes\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudlanes\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudlink\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudlink\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"CloudLinkEMC.SecureVM\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/CloudLinkEMC.SecureVM\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudneeti\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudneeti\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudplan-gmbh\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudplan-gmbh\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudsecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudsecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudsoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudsoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clustrix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clustrix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"codelathe\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/codelathe\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"codenvy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/codenvy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cognosys\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cognosys\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cohesity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cohesity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cohesive\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cohesive\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"commvault\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/commvault\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"composable\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/composable\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"comunity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/comunity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Confer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Confer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"confluentinc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/confluentinc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"connecting-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/connecting-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"convertigo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/convertigo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"corda\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/corda\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"CoreOS\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/CoreOS\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cortex-ag\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cortex-ag\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"couchbase\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/couchbase\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"crate-io\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/crate-io\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"credativ\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/credativ\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cryptzone\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cryptzone\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ctm.bmc.com\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ctm.bmc.com\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cybernetica-as\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cybernetica-as\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cyxtera\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cyxtera\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"danielsol.AzureTools1\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/danielsol.AzureTools1\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Dans.Windows.App\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Dans.Windows.App\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Dans3.Windows.App\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Dans3.Windows.App\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dataart\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dataart\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"databricks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/databricks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datacore\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datacore\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Datadog.Agent\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Datadog.Agent\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dataiku\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dataiku\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datalayer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datalayer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datastax\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datastax\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datasunrise\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datasunrise\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datometry\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datometry\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dellemc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dellemc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dell_software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dell_software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"delphix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/delphix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"denodo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/denodo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"denyall\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/denyall\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"derdack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/derdack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dgsecure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dgsecure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diagramics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diagramics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"digitaloffice\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/digitaloffice\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diladele\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diladele\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dimensionalmechanics-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dimensionalmechanics-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diqa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diqa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"docker\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/docker\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"docscorp-us\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/docscorp-us\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dome9\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dome9\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"drizti\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/drizti\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"drone\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/drone\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dsi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dsi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dundas\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dundas\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dyadic_security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dyadic_security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dynatrace\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dynatrace\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dynatrace.ruxit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dynatrace.ruxit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eastbanctech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eastbanctech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eastwind-networks-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eastwind-networks-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"edevtech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/edevtech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"egnyte\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/egnyte\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eip\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eip\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eip-eipower\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eip-eipower\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ekran-system-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ekran-system-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elasticbox\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elasticbox\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elecard\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elecard\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"electric-cloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/electric-cloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elementrem\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elementrem\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elfiqnetworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elfiqnetworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"emercoin\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/emercoin\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enforongo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enforongo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enterprise-ethereum-alliance\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enterprise-ethereum-alliance\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enterprisedb-corp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enterprisedb-corp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"equalum\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/equalum\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"equilibrium\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/equilibrium\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"esdenera\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/esdenera\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ESET\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ESET\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"esri\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/esri\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ethereum\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ethereum\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eventtracker\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eventtracker\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"evostream-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/evostream-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"exasol\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/exasol\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"f5-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/f5-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"falconstorsoftware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/falconstorsoftware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fidesys\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fidesys\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"filecatalyst\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/filecatalyst\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"firehost\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/firehost\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flashgrid-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flashgrid-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flexify-io\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flexify-io\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flynet\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flynet\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"foghorn-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/foghorn-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"forcepoint-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/forcepoint-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"forscene\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/forscene\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fortinet\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fortinet\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fortycloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fortycloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fw\",\r\ - \n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fw\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gbs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gbs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gemalto-safenet\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gemalto-safenet\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Gemalto.SafeNet.ProtectV\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Gemalto.SafeNet.ProtectV\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"genesys-source\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/genesys-source\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gigamon-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gigamon-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"GitHub\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/GitHub\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gitlab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gitlab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"globalscape\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/globalscape\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gordic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gordic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"graphitegtc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/graphitegtc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"great-software-laboratory-private-limited\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/great-software-laboratory-private-limited\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"greathorn\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/greathorn\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"greensql\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/greensql\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gridgain\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gridgain\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"guardicore\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/guardicore\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"h2o-ai\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/h2o-ai\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"haivision\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/haivision\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hanu\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hanu\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"haproxy-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/haproxy-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"harpaitalia\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/harpaitalia\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hcl-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hcl-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"heimdall-data\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/heimdall-data\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"help-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/help-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hewlett-packard\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hewlett-packard\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hillstone-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hillstone-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hitachi-solutions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hitachi-solutions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hortonworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hortonworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hpe\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hpe\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"HPE.Security.ApplicationDefender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/HPE.Security.ApplicationDefender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"huawei\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/huawei\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"humanlogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/humanlogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hush-hush\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hush-hush\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hvr\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hvr\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hyperglance\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hyperglance\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hypergrid\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hypergrid\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hytrust\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hytrust\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iaansys\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iaansys\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ibabs-eu\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ibabs-eu\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ibm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ibm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iboss\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iboss\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ikan\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ikan\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"imaginecommunications\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/imaginecommunications\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"imperva\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/imperva\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"incredibuild\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/incredibuild\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infoblox\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infoblox\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infolibrarian\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infolibrarian\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"informatica\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/informatica\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"informationbuilders\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/informationbuilders\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infront-consulting-group-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infront-consulting-group-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ingrammicro\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ingrammicro\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"integration-objects\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/integration-objects\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel-bigdl\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel-bigdl\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel-fpga\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel-fpga\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intellicus-technologies-pvt-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intellicus-technologies-pvt-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intelligent-plant-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intelligent-plant-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intigua\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intigua\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ipswitch\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ipswitch\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iquest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iquest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ishlangu-load-balancer-adc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ishlangu-load-balancer-adc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"issp-corporation\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/issp-corporation\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"itelios\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/itelios\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jamcracker\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jamcracker\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jedox\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jedox\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jelastic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jelastic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jetnexus\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jetnexus\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jetware-srl\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jetware-srl\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jfrog\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jfrog\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jitterbit_integration\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jitterbit_integration\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jm-technology-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jm-technology-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"juniper-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/juniper-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kaazing\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kaazing\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kali-linux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kali-linux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Kaspersky.Lab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Kaspersky.Lab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"KasperskyLab.SecurityAgent\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/KasperskyLab.SecurityAgent\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kaspersky_lab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kaspersky_lab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kelverion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kelverion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kemptech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kemptech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kepion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kepion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kinetica\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kinetica\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"knime\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/knime\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kobalt\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kobalt\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"krypc-technologies-pvt-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/krypc-technologies-pvt-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lansa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lansa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"leostream-corporation\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/leostream-corporation\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liebsoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liebsoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liquid-files\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liquid-files\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liquidware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liquidware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"literatu\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/literatu\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"loadbalancer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/loadbalancer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"logsign\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/logsign\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"logtrust\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/logtrust\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"looker\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/looker\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lti-lt-infotech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lti-lt-infotech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"luminate-security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/luminate-security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mactores_inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mactores_inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"maketv\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/maketv\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"manageengine\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/manageengine\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mapr-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mapr-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mariadb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mariadb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"marklogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/marklogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"massiveanalytic-\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/massiveanalytic-\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mathworks-deployment\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mathworks-deployment\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mathworks-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mathworks-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mavinglobal\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mavinglobal\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"McAfee.EndpointSecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/McAfee.EndpointSecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"McAfee.EndpointSecurity.test3\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/McAfee.EndpointSecurity.test3\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"meanio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/meanio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"media3-technologies-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/media3-technologies-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"memsql\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/memsql\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mendix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mendix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mfe_azure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mfe_azure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mfiles\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mfiles\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mico\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mico\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"micro-focus\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/micro-focus\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsec-zrt\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsec-zrt\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-ads\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-ads\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-avere\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-avere\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-azure-batch\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-azure-batch\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-azure-compute\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-azure-compute\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-dsvm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-dsvm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-hyperv\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-hyperv\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AKS\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AKS\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.ActiveDirectory\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.ActiveDirectory\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.ActiveDirectory.LinuxSSH\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.ActiveDirectory.LinuxSSH\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Applications\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Applications\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Backup.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Backup.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Backup.Test.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Backup.Test.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Diagnostics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Diagnostics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Diagnostics.Build.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Diagnostics.Build.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Extensions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Extensions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.KeyVault\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.KeyVault\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.KeyVault.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.KeyVault.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Monitoring.DependencyAgent\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Monitoring.DependencyAgent\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Networking.SDN\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Networking.SDN\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.NetworkWatcher\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.NetworkWatcher\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Performance.Diagnostics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Performance.Diagnostics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.SiteRecovery\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.SiteRecovery\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.SiteRecovery2\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.SiteRecovery2\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.WorkloadBackup\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.WorkloadBackup\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.SiteRecovery.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.SiteRecovery.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.SiteRecovery2.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.SiteRecovery2.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Test.Identity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Test.Identity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.WindowsFabric.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.WindowsFabric.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureCAT.AzureEnhancedMonitoring\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureCAT.AzureEnhancedMonitoring\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureCAT.AzureEnhancedMonitoringTest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureCAT.AzureEnhancedMonitoringTest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureSecurity.JITAccess\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureSecurity.JITAccess\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CloudBackup.Workload.Extension\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CloudBackup.Workload.Extension\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CloudBackup.Workload.Extension.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CloudBackup.Workload.Extension.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Compute\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Compute\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CPlat.Core\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CPlat.Core\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CPlat.Core.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CPlat.Core.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.DscPolicy2.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.DscPolicy2.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Golive.Extensions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Golive.Extensions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfig.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfig.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfiguration.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfiguration.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.HpcCompute\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.HpcCompute\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.HpcPack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.HpcPack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.ManagedIdentity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.ManagedIdentity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.ManagedServices\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.ManagedServices\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell.Test01\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell.Test01\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SqlServer.Managability.IaaS.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SqlServer.Managability.IaaS.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SqlServer.Management\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SqlServer.Management\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SystemCenter\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SystemCenter\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.TestSqlServer.Edp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.TestSqlServer.Edp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.ETWTraceListenerService\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.ETWTraceListenerService\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.RemoteDebug\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.RemoteDebug\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.RemoteDebug.Json\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.RemoteDebug.Json\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.ServiceProfiler\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.ServiceProfiler\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Services\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Services\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Windows.AzureRemoteApp.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Windows.AzureRemoteApp.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Windows.RemoteDesktop\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Windows.RemoteDesktop\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.WindowsAzure.Compute\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.WindowsAzure.Compute\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftAzureSiteRecovery\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftAzureSiteRecovery\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftBizTalkServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftBizTalkServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsAX\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsAX\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsGP\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsGP\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsNAV\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsNAV\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftHybridCloudStorage\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftHybridCloudStorage\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftOSTC\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftOSTC\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoftoxa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoftoxa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftRServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftRServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftSharePoint\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftSharePoint\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftSQLServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftSQLServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftVisualStudio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftVisualStudio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsDesktop\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsDesktop\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsServerHPCPack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsServerHPCPack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microstrategy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microstrategy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"midfin\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/midfin\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"midvision\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/midvision\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mindcti\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mindcti\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miraclelinux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miraclelinux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miracl_linux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miracl_linux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miri-infotech-pvt-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miri-infotech-pvt-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mobilab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mobilab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"moogsoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/moogsoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"moviemasher\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/moviemasher\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"msopentech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/msopentech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"msrazuresapservices\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/msrazuresapservices\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mtnfog\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mtnfog\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"multisoft-ab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/multisoft-ab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mvp-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mvp-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mxhero\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mxhero\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"my-com\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/my-com\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"narrativescience\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/narrativescience\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nasuni\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nasuni\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ncbi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ncbi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ndl\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ndl\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nebbiolo-technologies-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nebbiolo-technologies-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netapp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netapp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netatwork\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netatwork\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netgate\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netgate\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netikus-net-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netikus-net-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netiq\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netiq\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netmail\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netmail\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netsil\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netsil\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netsweeper\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netsweeper\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netwrix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netwrix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"neusoft-neteye\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/neusoft-neteye\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nextlimit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nextlimit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nginxinc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nginxinc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nicepeopleatwork\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nicepeopleatwork\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nodejsapi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nodejsapi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"noobaa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/noobaa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"norsync\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/norsync\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"northbridge-secure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/northbridge-secure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nri\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nri\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ntt-data-intellilink-corporation\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ntt-data-intellilink-corporation\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nubeva-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nubeva-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nuco-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nuco-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nuxeo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nuxeo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nvidia\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nvidia\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"o2mc-real-time-data-platform\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/o2mc-real-time-data-platform\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"oceanblue-cloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/oceanblue-cloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"OctopusDeploy.Tentacle\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/OctopusDeploy.Tentacle\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"omega-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/omega-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"onapsis\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/onapsis\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"onyx-point-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/onyx-point-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"op5\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/op5\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opencell\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opencell\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"OpenLogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/OpenLogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opentext\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opentext\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"openvpn\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/openvpn\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opslogix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opslogix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opsview-limited\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opsview-limited\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Oracle\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Oracle\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"oriana\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/oriana\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"orientdb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/orientdb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osirium-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osirium-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osisoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osisoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osnexus\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osnexus\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"paloaltonetworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/paloaltonetworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"panorama-necto\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/panorama-necto\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"panzura-file-system\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/panzura-file-system\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"parallels\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/parallels\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"parasoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/parasoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"passlogy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/passlogy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"paxata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/paxata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"peer-software-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/peer-software-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"penta-security-systems-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/penta-security-systems-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"percona\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/percona\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pivotal\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pivotal\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"plesk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/plesk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"portalarchitects\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/portalarchitects\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"postgres-pro\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/postgres-pro\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"prestashop\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/prestashop\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"prime-strategy\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/prime-strategy\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"process-one\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/process-one\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Profiler.Master.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Profiler.Master.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"profisee\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/profisee\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"progelspa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/progelspa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ptsecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ptsecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pulse-secure\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pulse-secure\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"puppet\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/puppet\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"PuppetLabs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/PuppetLabs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"PuppetLabs.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/PuppetLabs.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pydio\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pydio\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pyramidanalytics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pyramidanalytics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qlik\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qlik\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qore-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qore-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Qualys\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Qualys\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Qualys.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Qualys.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qualysguard\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qualysguard\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"quasardb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/quasardb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qubole\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qubole\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qubole-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qubole-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"quest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/quest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"racknap\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/racknap\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"radiant-logic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/radiant-logic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"radware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/radware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rancher\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rancher\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rapid7\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rapid7\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Rapid7.InsightPlatform\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Rapid7.InsightPlatform\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rapidminer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rapidminer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rds\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rds\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"realm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/realm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"reblaze\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/reblaze\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RedHat\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RedHat\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"redpoint-global\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/redpoint-global\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"relevance-lab\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/relevance-lab\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"remotelearner\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/remotelearner\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"res\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/res\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"resco\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/resco\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"responder-corp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/responder-corp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"revolution-analytics\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/revolution-analytics\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RightScaleLinux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RightScaleLinux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RightScaleWindowsServer\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RightScaleWindowsServer\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"riverbed\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/riverbed\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RiverbedTechnology\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RiverbedTechnology\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rocketsoftware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rocketsoftware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"roktech\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/roktech\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rsa-security-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rsa-security-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rsk-labs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rsk-labs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rtts\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rtts\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rubrik-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rubrik-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saama\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saama\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saasame-limited\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saasame-limited\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saltstack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saltstack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"samsung-sds\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/samsung-sds\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"samsungsds-cello\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/samsungsds-cello\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sap\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sap\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scalearc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scalearc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scalegrid\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scalegrid\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scality\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scality\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scsk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scsk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"secureworks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/secureworks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sentryone\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sentryone\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"service-control-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/service-control-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shadow-soft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shadow-soft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sharefile\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sharefile\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shareshiftneeraj.test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shareshiftneeraj.test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shieldx-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shieldx-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sidm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sidm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sightapps\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sightapps\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"signal-sciences\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/signal-sciences\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"silver-peak-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/silver-peak-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simmachinesinc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simmachinesinc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simplygon\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simplygon\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sinefa\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sinefa\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sios_datakeeper\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sios_datakeeper\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sisense\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sisense\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Site24x7\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Site24x7\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"skyarc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/skyarc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"smartmessage-autoflow\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/smartmessage-autoflow\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"snaplogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/snaplogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"soasta\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/soasta\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"softnas\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/softnas\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"soha\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/soha\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solanolabs\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solanolabs\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solar-security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solar-security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solarwinds\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solarwinds\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sonicwall-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sonicwall-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sophos\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sophos\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"south-river-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/south-river-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spacecurve\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spacecurve\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spagobi\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spagobi\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sparklinglogic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sparklinglogic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sphere3d\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sphere3d\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"splunk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/splunk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sqlstream\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sqlstream\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"src-solution\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/src-solution\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stackato-platform-as-a-service\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stackato-platform-as-a-service\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Stackify.LinuxAgent.Extension\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Stackify.LinuxAgent.Extension\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stackstorm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stackstorm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"startekfingerprintmatch\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/startekfingerprintmatch\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"starwind\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/starwind\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"StatusReport.Diagnostics.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/StatusReport.Diagnostics.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stealthbits\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stealthbits\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"steelhive\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/steelhive\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stonefly\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stonefly\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stormshield\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stormshield\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"storreduce\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/storreduce\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratalux\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratalux\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratis-group-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratis-group-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratumn\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratumn\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"streamsets\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/streamsets\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"striim\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/striim\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sumologic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sumologic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"SUSE\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/SUSE\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection.TestOnStage\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection.TestOnStage\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.QA\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.QA\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.staging\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.staging\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"symantectest1\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/symantectest1\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"synack-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/synack-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusion\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusion\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusionbigdataplatfor\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusionbigdataplatfor\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusiondashboard\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusiondashboard\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"synechron-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/synechron-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syte\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syte\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tableau\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tableau\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tactic\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tactic\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talari-networks\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talari-networks\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talena-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talena-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talon\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talon\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"targit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/targit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tavendo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tavendo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"te-systems\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/te-systems\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"techdivision\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/techdivision\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"techlatest\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/techlatest\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"telepat\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/telepat\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tenable\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tenable\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"teradata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/teradata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Teradici\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Teradici\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.Gemalto.SafeNet.ProtectV\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.Gemalto.SafeNet.ProtectV\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.HP.AppDefender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.HP.AppDefender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.Microsoft.VisualStudio.Services\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.Microsoft.VisualStudio.Services\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.NJHP.AppDefender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.NJHP.AppDefender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.TrendMicro.DeepSecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.TrendMicro.DeepSecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test1.NJHP.AppDefender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test1.NJHP.AppDefender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test3.Microsoft.VisualStudio.Services\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test3.Microsoft.VisualStudio.Services\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"thales-vormetric\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/thales-vormetric\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"thoughtspot-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/thoughtspot-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tibco-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tibco-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tig\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tig\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"timextender\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/timextender\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tmaxsoft\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tmaxsoft\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tokyosystemhouse\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tokyosystemhouse\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"topdesk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/topdesk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"torusware\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/torusware\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"totemo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/totemo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"townsend-security\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/townsend-security\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"transvault\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/transvault\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"trendmicro\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/trendmicro\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"TrendMicro.DeepSecurity\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/TrendMicro.DeepSecurity\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"TrendMicro.PortalProtect\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/TrendMicro.PortalProtect\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tresorit\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tresorit\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"truestack\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/truestack\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tsa-public-service\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tsa-public-service\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tunnelbiz\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tunnelbiz\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"twistlock\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/twistlock\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"typesafe\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/typesafe\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ubeeko\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ubeeko\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ubercloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ubercloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ulex\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ulex\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unidesk\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unidesk\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unidesk-corp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unidesk-corp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unifi-software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unifi-software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"uniprint-net\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/uniprint-net\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unitrends\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unitrends\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"usp\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/usp\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"varnish\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/varnish\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vaultive-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vaultive-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vbot\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vbot\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"veeam\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/veeam\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velocitydb-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velocitydb-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velocloud\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velocloud\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velostrata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velostrata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velostrata-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velostrata-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"veritas\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/veritas\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"versasec\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/versasec\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vidispine\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vidispine\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vidizmo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vidizmo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vigyanlabs-innovations-pvt-ltd\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vigyanlabs-innovations-pvt-ltd\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vintegris\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vintegris\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"viptela\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/viptela\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vircom\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vircom\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vizixiotplatformretail001\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vizixiotplatformretail001\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vmturbo\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vmturbo\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Vormetric\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Vormetric\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vte\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vte\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vu-llc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vu-llc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"WAD2AI.Diagnostics.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/WAD2AI.Diagnostics.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"WAD2EventHub.Diagnostics.Test\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/WAD2EventHub.Diagnostics.Test\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wallix\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wallix\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wanpath-dba-myworkdrive\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wanpath-dba-myworkdrive\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"waratek\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/waratek\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wardy-it-solutions\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wardy-it-solutions\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"warewolf-esb\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/warewolf-esb\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"watchguard-technologies\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/watchguard-technologies\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"waves\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/waves\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"websense-apmailpe\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/websense-apmailpe\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"winmagic_securedoc_cloudvm\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/winmagic_securedoc_cloudvm\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wmspanel\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wmspanel\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"workshare-technology\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/workshare-technology\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"workspot\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/workspot\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wowza\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wowza\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xendata-inc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xendata-inc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xfinityinc\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xfinityinc\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xtremedata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xtremedata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xyzrd-group-ou\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xyzrd-group-ou\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"yellowfin\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/yellowfin\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"your-shop-online\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/your-shop-online\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"z1\",\r\ - \n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/z1\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"z4it-aps\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/z4it-aps\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zend\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zend\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zerodown_software\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zerodown_software\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zerto\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zerto\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zoomdata\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zoomdata\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zscaler\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zscaler\"\ - \r\n }\r\n]"} + body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"128technology\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/128technology\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"1e\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"4psa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/4psa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"5nine-software-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/5nine-software-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"7isolutions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/7isolutions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"a10networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/a10networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"abiquo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/abiquo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accellion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accellion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accessdata-group\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accessdata-group\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"accops\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/accops\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Acronis\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Acronis.Backup\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Acronis.Backup\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actian-corp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actian-corp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actian_matrix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actian_matrix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"actifio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/actifio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"activeeon\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/activeeon\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"advantech-webaccess\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/advantech-webaccess\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aerospike\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aerospike\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"affinio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/affinio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aiscaler-cache-control-ddos-and-url-rewriting-\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aiscaler-cache-control-ddos-and-url-rewriting-\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"akamai-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/akamai-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"akumina\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/akumina\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alachisoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alachisoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alces-flight-limited\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alces-flight-limited\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alertlogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alertlogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AlertLogic.Extension\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AlertLogic.Extension\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alienvault\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alienvault\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alldigital-brevity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alldigital-brevity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altair-engineering-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altair-engineering-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altamira-corporation\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altamira-corporation\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"alteryx\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/alteryx\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"altova\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/altova\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"antmedia\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/antmedia\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aod\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aod\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"apigee\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/apigee\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appcara\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appcara\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appcelerator\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appcelerator\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appex-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appex-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appistry\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appistry\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"apps-4-rent\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/apps-4-rent\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"appscale-marketplace\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/appscale-marketplace\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aquaforest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aquaforest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arabesque-group\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arabesque-group\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arangodb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arangodb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aras\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aras\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"arista-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/arista-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"array_networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/array_networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"artificial-intelligence-techniques-sl\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/artificial-intelligence-techniques-sl\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"asigra\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/asigra\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aspex-managed-cloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aspex-managed-cloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"atlassian\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/atlassian\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"atomicorp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/atomicorp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"attunity_cloudbeam\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/attunity_cloudbeam\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"audiocodes\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/audiocodes\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"auraportal\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/auraportal\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"auriq-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/auriq-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"avepoint\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/avepoint\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"avi-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/avi-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"aviatrix-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/aviatrix-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"awingu\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/awingu\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"axway\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/axway\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azul\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azul\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azurecyclecloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azurecyclecloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureDatabricks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureDatabricks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureRT.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureRT.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting2\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting2\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"azuretesting3\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/azuretesting3\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"AzureTools1type\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/AzureTools1type\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"baas-techbureau\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/baas-techbureau\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"baffle-io\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/baffle-io\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"balabit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/balabit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Barracuda\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Barracuda\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"barracudanetworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/barracudanetworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"basho\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/basho\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"batch\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/batch\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bdy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bdy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"beyondtrust\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/beyondtrust\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bi-builders-as\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bi-builders-as\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Bitnami\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Bitnami\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bizagi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bizagi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"biztalk360\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/biztalk360\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"black-duck-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/black-duck-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blackberry\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blackberry\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blk-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blk-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockapps\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockapps\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockchain-foundry\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockchain-foundry\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"blockstack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/blockstack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bloombase\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bloombase\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bluecat\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bluecat\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bluetalon\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bluetalon\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bmc.ctm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bmc.ctm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bmcctm.test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bmcctm.test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bocada\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bocada\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bravura-software-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bravura-software-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"brocade_communications\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/brocade_communications\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bssw\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bssw\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"bt-americas-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/bt-americas-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"buddhalabs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/buddhalabs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Canonical\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Canonical\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"carto\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/carto\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cask\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cask\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"catechnologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/catechnologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cautelalabs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cautelalabs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cavirin\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cavirin\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cds\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cds\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"celum-gmbh\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/celum-gmbh\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"center-for-internet-security-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/center-for-internet-security-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"certivox\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/certivox\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cfd-direct\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cfd-direct\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"chain\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/chain\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"checkpoint\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/checkpoint\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"chef-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/chef-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Chef.Bootstrap.WindowsAzure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Chef.Bootstrap.WindowsAzure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cinegy-gmbh\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cinegy-gmbh\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"circleci\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/circleci\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cires21\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cires21\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cisco\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cisco\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"citrix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/citrix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clear-linux-project\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clear-linux-project\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clouber\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clouber\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-checkr\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-checkr\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-cruiser\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-cruiser\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloud-infrastructure-services\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloud-infrastructure-services\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbees\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbees\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbees-enterprise-jenkins\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbees-enterprise-jenkins\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudbolt-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudbolt-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudboost\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudboost\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudenablers-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudenablers-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudera\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudera\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudhouse\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudhouse\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudhub-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudhub-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudlanes\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudlanes\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudlink\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudlink\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"CloudLinkEMC.SecureVM\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/CloudLinkEMC.SecureVM\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudneeti\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudneeti\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudplan-gmbh\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudplan-gmbh\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudsecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudsecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cloudsoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cloudsoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"clustrix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/clustrix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"codelathe\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/codelathe\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"codenvy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/codenvy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cognosys\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cognosys\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cohesity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cohesity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cohesive\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cohesive\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"commvault\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/commvault\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"composable\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/composable\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"comunity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/comunity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Confer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Confer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"confluentinc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/confluentinc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"connecting-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/connecting-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"containeraider\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/containeraider\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"convertigo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/convertigo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"corda\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/corda\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"core-stack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/core-stack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"CoreOS\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/CoreOS\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"couchbase\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/couchbase\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"credativ\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/credativ\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cryptzone\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cryptzone\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ctm.bmc.com\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ctm.bmc.com\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cybernetica-as\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cybernetica-as\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"cyxtera\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/cyxtera\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"danielsol.AzureTools1\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/danielsol.AzureTools1\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Dans.Windows.App\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Dans.Windows.App\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Dans3.Windows.App\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Dans3.Windows.App\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dataart\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dataart\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"databricks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/databricks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datacore\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datacore\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Datadog.Agent\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Datadog.Agent\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dataiku\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dataiku\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datalayer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datalayer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datastax\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datastax\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datasunrise\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datasunrise\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"datometry\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/datometry\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dellemc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dellemc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dell_software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dell_software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"delphix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/delphix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"denodo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/denodo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"denyall\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/denyall\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"derdack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/derdack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dgsecure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dgsecure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diagramics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diagramics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"digitaloffice\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/digitaloffice\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diladele\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diladele\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dimensionalmechanics-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dimensionalmechanics-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"diqa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/diqa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"docker\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/docker\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"docscorp-us\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/docscorp-us\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dome9\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dome9\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"drizti\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/drizti\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"drone\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/drone\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dsi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dsi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dundas\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dundas\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dyadic_security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dyadic_security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dynatrace\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dynatrace\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"dynatrace.ruxit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/dynatrace.ruxit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eastwind-networks-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eastwind-networks-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"edevtech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/edevtech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"egnyte\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/egnyte\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elasticbox\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elasticbox\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elecard\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elecard\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"electric-cloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/electric-cloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"elfiqnetworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/elfiqnetworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"emercoin\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/emercoin\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enforongo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enforongo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enterprise-ethereum-alliance\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enterprise-ethereum-alliance\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"enterprisedb-corp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/enterprisedb-corp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"equalum\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/equalum\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"equilibrium\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/equilibrium\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"esdenera\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/esdenera\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ESET\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ESET\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"esri\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/esri\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ethereum\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ethereum\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"eventtracker\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/eventtracker\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"evostream-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/evostream-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"exact\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/exact\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"exasol\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/exasol\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"exivity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/exivity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"f5-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/f5-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"falconstorsoftware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/falconstorsoftware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fidesys\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fidesys\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"filecatalyst\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/filecatalyst\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"firehost\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/firehost\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flashgrid-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flashgrid-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flexify-io\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flexify-io\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"flynet\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/flynet\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"foghorn-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/foghorn-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"forcepoint-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/forcepoint-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"forscene\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/forscene\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fortinet\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fortinet\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fortycloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fortycloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"fw\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/fw\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gbs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gbs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gemalto-safenet\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gemalto-safenet\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Gemalto.SafeNet.ProtectV\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Gemalto.SafeNet.ProtectV\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"genesys-source\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/genesys-source\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gigamon-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gigamon-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"GitHub\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/GitHub\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gitlab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gitlab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"globalscape\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/globalscape\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"graphitegtc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/graphitegtc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"great-software-laboratory-private-limited\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/great-software-laboratory-private-limited\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"greathorn\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/greathorn\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"greensql\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/greensql\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"gridgain\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/gridgain\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"guardicore\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/guardicore\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"h2o-ai\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/h2o-ai\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"haivision\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/haivision\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hanu\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hanu\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"haproxy-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/haproxy-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"harpaitalia\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/harpaitalia\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hcl-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hcl-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"heimdall-data\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/heimdall-data\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"help-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/help-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hewlett-packard\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hewlett-packard\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hillstone-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hillstone-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hitachi-solutions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hitachi-solutions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hortonworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hortonworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hpe\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hpe\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"HPE.Security.ApplicationDefender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/HPE.Security.ApplicationDefender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"huawei\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/huawei\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hubstor-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hubstor-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hush-hush\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hush-hush\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hvr\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hvr\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hyperglance\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hyperglance\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hypergrid\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hypergrid\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"hytrust\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/hytrust\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iaansys\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iaansys\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ibm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ibm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iboss\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iboss\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ikan\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ikan\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"image-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/image-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"imaginecommunications\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/imaginecommunications\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"imperva\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/imperva\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"incredibuild\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/incredibuild\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infoblox\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infoblox\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infolibrarian\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infolibrarian\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"informatica\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/informatica\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"informationbuilders\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/informationbuilders\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"infront-consulting-group-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/infront-consulting-group-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ingrammicro\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ingrammicro\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"integration-objects\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/integration-objects\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel-bigdl\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel-bigdl\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intel-fpga\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intel-fpga\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intellicus-technologies-pvt-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intellicus-technologies-pvt-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intelligent-plant-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intelligent-plant-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intersystems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intersystems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"intigua\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/intigua\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ipswitch\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ipswitch\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"iquest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/iquest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ishlangu-load-balancer-adc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ishlangu-load-balancer-adc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"issp-corporation\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/issp-corporation\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"itelios\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/itelios\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jamcracker\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jamcracker\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jedox\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jedox\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jelastic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jelastic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jetnexus\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jetnexus\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jetware-srl\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jetware-srl\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jitterbit_integration\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jitterbit_integration\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"jm-technology-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/jm-technology-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"juniper-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/juniper-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kaazing\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kaazing\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kali-linux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kali-linux\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Kaspersky.Lab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Kaspersky.Lab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"KasperskyLab.SecurityAgent\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/KasperskyLab.SecurityAgent\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kaspersky_lab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kaspersky_lab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kelverion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kelverion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kemptech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kemptech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kepion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kepion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kinetica\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kinetica\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"knime\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/knime\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"kobalt\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/kobalt\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"krypc-technologies-pvt-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/krypc-technologies-pvt-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lancom-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lancom-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lansa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lansa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"leap-orbit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/leap-orbit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"leostream-corporation\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/leostream-corporation\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liebsoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liebsoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liquid-files\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liquid-files\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"liquidware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/liquidware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"literatu\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/literatu\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"loadbalancer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/loadbalancer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"logsign\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/logsign\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"logtrust\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/logtrust\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"looker\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/looker\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"lti-lt-infotech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/lti-lt-infotech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"luminate-security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/luminate-security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"maketv\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/maketv\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"manageengine\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/manageengine\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mapr-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mapr-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"marand\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/marand\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mariadb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mariadb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"marklogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/marklogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"massiveanalytic-\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/massiveanalytic-\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mathworks-deployment\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mathworks-deployment\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mathworks-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mathworks-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"matillion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/matillion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mavinglobal\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mavinglobal\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"McAfee.EndpointSecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/McAfee.EndpointSecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"McAfee.EndpointSecurity.test3\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/McAfee.EndpointSecurity.test3\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"meanio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/meanio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"media3-technologies-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/media3-technologies-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"memsql\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/memsql\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mendix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mendix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mfe_azure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mfe_azure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mfiles\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mfiles\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mico\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mico\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"micro-focus\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/micro-focus\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsec-zrt\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsec-zrt\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-ads\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-ads\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-aks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-aks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-avere\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-avere\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-azure-batch\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-azure-batch\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-azure-compute\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-azure-compute\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-dsvm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-dsvm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microsoft-hyperv\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microsoft-hyperv\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AKS\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AKS\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.ActiveDirectory\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.ActiveDirectory\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.ActiveDirectory.LinuxSSH\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.ActiveDirectory.LinuxSSH\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Applications\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Applications\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Backup.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Backup.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Backup.Test.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Backup.Test.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Diagnostics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Diagnostics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Diagnostics.Build.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Diagnostics.Build.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Extensions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Extensions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Geneva\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Geneva\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.KeyVault\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.KeyVault\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.KeyVault.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.KeyVault.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Monitoring.DependencyAgent\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Monitoring.DependencyAgent\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Networking.SDN\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Networking.SDN\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.NetworkWatcher\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.NetworkWatcher\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Performance.Diagnostics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Performance.Diagnostics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.SiteRecovery\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.SiteRecovery\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.SiteRecovery2\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.SiteRecovery2\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.RecoveryServices.WorkloadBackup\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.RecoveryServices.WorkloadBackup\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Security.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Security.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.SiteRecovery.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.SiteRecovery.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.SiteRecovery2.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.SiteRecovery2.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.Test.Identity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.Test.Identity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Azure.WindowsFabric.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Azure.WindowsFabric.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureCAT.AzureEnhancedMonitoring\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureCAT.AzureEnhancedMonitoring\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureCAT.AzureEnhancedMonitoringTest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureCAT.AzureEnhancedMonitoringTest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.AzureSecurity.JITAccess\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.AzureSecurity.JITAccess\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CloudBackup.Workload.Extension\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CloudBackup.Workload.Extension\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CloudBackup.Workload.Extension.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CloudBackup.Workload.Extension.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Compute\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Compute\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CPlat.Core\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CPlat.Core\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.CPlat.Core.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.CPlat.Core.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.EnterpriseCloud.Monitoring.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.EnterpriseCloud.Monitoring.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Golive.Extensions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Golive.Extensions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfig.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfig.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfiguration\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfiguration\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.GuestConfiguration.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.GuestConfiguration.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.HpcCompute\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.HpcCompute\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.HpcPack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.HpcPack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.ManagedIdentity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.ManagedIdentity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.ManagedServices\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.ManagedServices\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.OSTCExtensions.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.OSTCExtensions.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Powershell.Test01\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Powershell.Test01\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SqlServer.Managability.IaaS.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SqlServer.Managability.IaaS.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SqlServer.Management\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SqlServer.Management\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.SystemCenter\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.SystemCenter\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.TestSqlServer.Edp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.TestSqlServer.Edp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.ETWTraceListenerService\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.ETWTraceListenerService\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.RemoteDebug\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.RemoteDebug\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Azure.RemoteDebug.Json\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Azure.RemoteDebug.Json\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.ServiceProfiler\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.ServiceProfiler\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.VisualStudio.Services\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.VisualStudio.Services\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Windows.AzureRemoteApp.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Windows.AzureRemoteApp.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.Windows.RemoteDesktop\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.Windows.RemoteDesktop\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Microsoft.WindowsAzure.Compute\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Microsoft.WindowsAzure.Compute\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftAzureSiteRecovery\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftAzureSiteRecovery\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftBizTalkServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftBizTalkServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsAX\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsAX\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsGP\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsGP\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftDynamicsNAV\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftDynamicsNAV\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftHybridCloudStorage\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftHybridCloudStorage\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftOSTC\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftOSTC\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftRServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftRServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftSharePoint\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftSharePoint\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftSQLServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftSQLServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftVisualStudio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftVisualStudio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsDesktop\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsDesktop\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"MicrosoftWindowsServerHPCPack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/MicrosoftWindowsServerHPCPack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"microstrategy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/microstrategy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"midfin\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/midfin\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"midvision\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/midvision\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mindcti\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mindcti\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miraclelinux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miraclelinux\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miracl_linux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miracl_linux\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"miri-infotech-pvt-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/miri-infotech-pvt-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mobilab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mobilab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"moogsoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/moogsoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"moviemasher\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/moviemasher\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"msopentech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/msopentech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mtnfog\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mtnfog\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"multisoft-ab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/multisoft-ab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mvp-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mvp-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"mxhero\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/mxhero\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"my-com\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/my-com\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"narrativescience\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/narrativescience\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nasuni\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nasuni\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ncbi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ncbi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ndl\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ndl\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nebbiolo-technologies-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nebbiolo-technologies-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netapp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netapp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netatwork\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netatwork\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netgate\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netgate\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netikus-net-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netikus-net-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netiq\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netiq\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netka\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netka\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netmail\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netmail\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netsweeper\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netsweeper\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netwrix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netwrix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"netx\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/netx\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"neusoft-neteye\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/neusoft-neteye\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nginxinc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nginxinc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nicepeopleatwork\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nicepeopleatwork\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nodejsapi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nodejsapi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"noobaa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/noobaa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"norsync\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/norsync\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"northbridge-secure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/northbridge-secure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nri\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nri\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ntt-data-intellilink-corporation\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ntt-data-intellilink-corporation\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nubeva-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nubeva-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nuco-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nuco-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nuxeo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nuxeo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"nvidia\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/nvidia\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"o2mc-real-time-data-platform\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/o2mc-real-time-data-platform\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"oceanblue-cloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/oceanblue-cloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"OctopusDeploy.Tentacle\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/OctopusDeploy.Tentacle\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"officeatwork-ag\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/officeatwork-ag\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"omega-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/omega-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"onapsis\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/onapsis\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"onyx-point-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/onyx-point-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"op5\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/op5\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"open-connect-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/open-connect-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opencell\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opencell\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"OpenLogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/OpenLogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opentext\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opentext\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"openvpn\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/openvpn\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"opslogix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/opslogix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Oracle\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Oracle\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"oriana\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/oriana\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"orientdb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/orientdb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osirium-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osirium-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osisoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osisoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"osnexus\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/osnexus\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"outsystems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/outsystems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"paloaltonetworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/paloaltonetworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"panorama-necto\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/panorama-necto\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"panzura-file-system\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/panzura-file-system\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"parallels\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/parallels\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"parasoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/parasoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"passlogy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/passlogy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"paxata\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/paxata\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"peer-software-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/peer-software-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"penta-security-systems-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/penta-security-systems-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"percona\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/percona\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pivotal\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pivotal\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"plesk\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/plesk\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"postgres-pro\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/postgres-pro\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"prestashop\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/prestashop\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"prime-strategy\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/prime-strategy\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"process-one\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/process-one\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"profecia\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/profecia\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Profiler.Master.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Profiler.Master.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"profisee\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/profisee\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"progelspa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/progelspa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ptsecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ptsecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pulse-secure\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pulse-secure\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"puppet\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/puppet\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"PuppetLabs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/PuppetLabs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"PuppetLabs.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/PuppetLabs.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pydio\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pydio\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"pyramidanalytics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/pyramidanalytics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qlik\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qlik\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qore-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qore-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Qualys\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Qualys\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Qualys.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Qualys.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qualysguard\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qualysguard\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"quasardb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/quasardb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qubole\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qubole\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"qubole-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/qubole-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"quest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/quest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"racknap\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/racknap\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"radiant-logic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/radiant-logic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"radware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/radware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rancher\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rancher\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rapid7\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rapid7\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Rapid7.InsightPlatform\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Rapid7.InsightPlatform\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rapidminer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rapidminer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rds\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rds\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"realm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/realm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"reblaze\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/reblaze\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RedHat\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RedHat\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"redpoint-global\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/redpoint-global\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"relevance-lab\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/relevance-lab\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"remotelearner\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/remotelearner\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"res\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/res\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"resco\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/resco\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"responder-corp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/responder-corp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"revolution-analytics\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/revolution-analytics\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RightScaleLinux\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RightScaleLinux\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RightScaleWindowsServer\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RightScaleWindowsServer\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"riverbed\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/riverbed\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"RiverbedTechnology\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/RiverbedTechnology\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rocketsoftware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rocketsoftware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"roktech\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/roktech\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rsa-security-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rsa-security-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rsk-labs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rsk-labs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rtts\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rtts\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"rubrik-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/rubrik-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saama\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saama\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saasame-limited\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saasame-limited\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"saltstack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/saltstack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"samsung-sds\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/samsung-sds\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"samsungsds-cello\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/samsungsds-cello\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sap\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sap\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scalearc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scalearc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scalegrid\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scalegrid\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scality\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scality\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"scsk\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/scsk\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"secureworks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/secureworks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"semperis\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/semperis\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sentryone\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sentryone\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"service-control-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/service-control-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shadow-soft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shadow-soft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shareshiftneeraj.test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shareshiftneeraj.test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"shieldx-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/shieldx-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sightapps\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sightapps\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"signal-sciences\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/signal-sciences\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"silver-peak-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/silver-peak-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simmachinesinc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simmachinesinc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simpligov\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simpligov\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"simplygon\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/simplygon\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sinefa\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sinefa\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sios_datakeeper\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sios_datakeeper\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Site24x7\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Site24x7\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"skyarc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/skyarc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"smartmessage-autoflow\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/smartmessage-autoflow\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"snaplogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/snaplogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"snapt-adc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/snapt-adc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"soasta\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/soasta\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"softnas\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/softnas\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"soha\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/soha\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solanolabs\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solanolabs\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solar-security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solar-security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"solarwinds\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/solarwinds\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sonicwall-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sonicwall-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sophos\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sophos\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"south-river-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/south-river-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spacecurve\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spacecurve\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spagobi\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spagobi\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sparklinglogic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sparklinglogic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"spektra\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/spektra\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sphere3d\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sphere3d\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"splunk\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/splunk\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sqlstream\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sqlstream\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"src-solution\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/src-solution\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stackato-platform-as-a-service\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stackato-platform-as-a-service\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Stackify.LinuxAgent.Extension\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Stackify.LinuxAgent.Extension\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stackstorm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stackstorm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"startekfingerprintmatch\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/startekfingerprintmatch\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"starwind\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/starwind\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"StatusReport.Diagnostics.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/StatusReport.Diagnostics.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stealthbits\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stealthbits\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"steelhive\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/steelhive\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stonefly\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stonefly\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stormshield\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stormshield\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"storreduce\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/storreduce\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratis-group-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratis-group-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"stratumn\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/stratumn\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"streamsets\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/streamsets\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"striim\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/striim\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"sumologic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/sumologic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"SUSE\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/SUSE\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.CloudWorkloadProtection.TestOnStage\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.CloudWorkloadProtection.TestOnStage\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.QA\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.QA\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.staging\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.staging\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Symantec.test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Symantec.test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"symantectest1\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/symantectest1\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"synack-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/synack-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusion\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusion\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syncfusionbigdataplatfor\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syncfusionbigdataplatfor\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"synechron-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/synechron-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"syte\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/syte\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tableau\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tableau\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tactic\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tactic\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talari-networks\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talari-networks\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talena-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talena-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"talon\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/talon\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"targit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/targit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tata_communications\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tata_communications\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tavendo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tavendo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"te-systems\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/te-systems\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"techdivision\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/techdivision\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"techlatest\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/techlatest\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"telepat\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/telepat\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tenable\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tenable\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"teradata\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/teradata\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Teradici\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Teradici\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.Gemalto.SafeNet.ProtectV\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.Gemalto.SafeNet.ProtectV\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.HP.AppDefender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.HP.AppDefender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.Microsoft.VisualStudio.Services\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.Microsoft.VisualStudio.Services\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.NJHP.AppDefender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.NJHP.AppDefender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test.TrendMicro.DeepSecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test.TrendMicro.DeepSecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test1.NJHP.AppDefender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test1.NJHP.AppDefender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Test3.Microsoft.VisualStudio.Services\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Test3.Microsoft.VisualStudio.Services\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"thales-vormetric\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/thales-vormetric\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"things-board\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/things-board\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"thoughtspot-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/thoughtspot-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tibco-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tibco-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tig\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tig\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tigergraph\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tigergraph\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"timextender\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/timextender\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tmaxsoft\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tmaxsoft\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tokyosystemhouse\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tokyosystemhouse\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"topdesk\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/topdesk\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"torusware\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/torusware\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"totemo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/totemo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"townsend-security\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/townsend-security\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"transvault\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/transvault\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"trendmicro\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/trendmicro\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"TrendMicro.DeepSecurity\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/TrendMicro.DeepSecurity\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"TrendMicro.PortalProtect\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/TrendMicro.PortalProtect\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tresorit\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tresorit\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"truestack\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/truestack\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tsa-public-service\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tsa-public-service\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tunnelbiz\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/tunnelbiz\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"twistlock\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/twistlock\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"typesafe\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/typesafe\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ubeeko\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ubeeko\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ubercloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ubercloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"ulex\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/ulex\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unifi-software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unifi-software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"uniprint-net\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/uniprint-net\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"unitrends\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/unitrends\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"usp\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/usp\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"varnish\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/varnish\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vaultive-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vaultive-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vbot\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vbot\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"veeam\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/veeam\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velocitydb-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velocitydb-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"velocloud\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/velocloud\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"veritas\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/veritas\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"versasec\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/versasec\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vidispine\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vidispine\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vidizmo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vidizmo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vigyanlabs-innovations-pvt-ltd\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vigyanlabs-innovations-pvt-ltd\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"viptela\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/viptela\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vircom\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vircom\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vizixiotplatformretail001\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vizixiotplatformretail001\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vmturbo\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vmturbo\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"Vormetric\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/Vormetric\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vte\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vte\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"vu-llc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/vu-llc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"WAD2AI.Diagnostics.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/WAD2AI.Diagnostics.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"WAD2EventHub.Diagnostics.Test\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/WAD2EventHub.Diagnostics.Test\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wallarm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wallarm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wallix\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wallix\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wanpath-dba-myworkdrive\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wanpath-dba-myworkdrive\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wardy-it-solutions\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wardy-it-solutions\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"warewolf-esb\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/warewolf-esb\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"watchguard-technologies\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/watchguard-technologies\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"waves\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/waves\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"websense-apmailpe\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/websense-apmailpe\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"winmagic_securedoc_cloudvm\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/winmagic_securedoc_cloudvm\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wmspanel\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wmspanel\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"workshare-technology\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/workshare-technology\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"workspot\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/workspot\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"wowza\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/wowza\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xendata-inc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xendata-inc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xfinityinc\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xfinityinc\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xtremedata\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xtremedata\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"xyzrd-group-ou\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/xyzrd-group-ou\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"yellowfin\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/yellowfin\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"your-shop-online\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/your-shop-online\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"z1\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/z1\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"z4it-aps\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/z4it-aps\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zend\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zend\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zerodown_software\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zerodown_software\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zerto\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zerto\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zoomdata\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zoomdata\"\r\n + \ },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"zscaler\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/zscaler\"\r\n + \ }\r\n]"} headers: cache-control: [no-cache] - content-length: ['151625'] + content-length: ['150885'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:23:19 GMT'] + date: ['Thu, 27 Sep 2018 23:05:20 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1520,21 +1511,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/1e/artifacttypes/vmimage/offers?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/128technology/artifacttypes/vmimage/offers?api-version=2018-10-01 response: - body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"\ - tachyonv30-0-100\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e/ArtifactTypes/VMImage/Offers/tachyonv30-0-100\"\ - \r\n }\r\n]"} + body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"128t_networking_platform\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/128technology/ArtifactTypes/VMImage/Offers/128t_networking_platform\"\r\n + \ }\r\n]"} headers: cache-control: [no-cache] - content-length: ['244'] + content-length: ['271'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:23:21 GMT'] + date: ['Thu, 27 Sep 2018 23:05:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1549,23 +1539,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/1e/artifacttypes/vmimage/offers/tachyonv30-0-100/skus?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/128technology/artifacttypes/vmimage/offers/128t_networking_platform/skus?api-version=2018-10-01 response: - body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"\ - tachyonv3-1\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e/ArtifactTypes/VMImage/Offers/tachyonv30-0-100/Skus/tachyonv3-1\"\ - \r\n },\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"tachyonv3-2\"\ - ,\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e/ArtifactTypes/VMImage/Offers/tachyonv30-0-100/Skus/tachyonv3-2\"\ - \r\n }\r\n]"} + body: {string: "[\r\n {\r\n \"properties\": {\r\n \"automaticOSUpgradeProperties\": + {\r\n \"automaticOSUpgradeSupported\": false\r\n }\r\n },\r\n + \ \"location\": \"westus\",\r\n \"name\": \"128t_networking_platform\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/128technology/ArtifactTypes/VMImage/Offers/128t_networking_platform/Skus/128t_networking_platform\"\r\n + \ }\r\n]"} headers: cache-control: [no-cache] - content-length: ['509'] + content-length: ['426'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:23:22 GMT'] + date: ['Thu, 27 Sep 2018 23:05:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1580,21 +1569,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/1e/artifacttypes/vmimage/offers/tachyonv30-0-100/skus/tachyonv3-1/versions?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/128technology/artifacttypes/vmimage/offers/128t_networking_platform/skus/128t_networking_platform/versions?api-version=2018-10-01 response: - body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"\ - 3.1.2\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e/ArtifactTypes/VMImage/Offers/tachyonv30-0-100/Skus/tachyonv3-1/Versions/3.1.2\"\ - \r\n }\r\n]"} + body: {string: "[\r\n {\r\n \"location\": \"westus\",\r\n \"name\": \"1.0.0\",\r\n + \ \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/128technology/ArtifactTypes/VMImage/Offers/128t_networking_platform/Skus/128t_networking_platform/Versions/1.0.0\"\r\n + \ }\r\n]"} headers: cache-control: [no-cache] - content-length: ['265'] + content-length: ['297'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:23:27 GMT'] + date: ['Thu, 27 Sep 2018 23:05:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1609,24 +1597,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/1e/artifacttypes/vmimage/offers/tachyonv30-0-100/skus/tachyonv3-1/versions/3.1.2?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/publishers/128technology/artifacttypes/vmimage/offers/128t_networking_platform/skus/128t_networking_platform/versions/1.0.0?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"plan\": {\r\n \"publisher\"\ - : \"1e\",\r\n \"name\": \"tachyonv3-1\",\r\n \"product\": \"tachyonv30-0-100\"\ - \r\n },\r\n \"osDiskImage\": {\r\n \"operatingSystem\": \"Windows\"\ - \r\n },\r\n \"dataDiskImages\": []\r\n },\r\n \"location\": \"westus\"\ - ,\r\n \"name\": \"3.1.2\",\r\n \"id\": \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/1e/ArtifactTypes/VMImage/Offers/tachyonv30-0-100/Skus/tachyonv3-1/Versions/3.1.2\"\ - \r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"automaticOSUpgradeProperties\": + {\r\n \"automaticOSUpgradeSupported\": false\r\n },\r\n \"plan\": + {\r\n \"publisher\": \"128technology\",\r\n \"name\": \"128t_networking_platform\",\r\n + \ \"product\": \"128t_networking_platform\"\r\n },\r\n \"osDiskImage\": + {\r\n \"operatingSystem\": \"Linux\"\r\n },\r\n \"dataDiskImages\": + []\r\n },\r\n \"location\": \"westus\",\r\n \"name\": \"1.0.0\",\r\n \"id\": + \"/Subscriptions/00000000-0000-0000-0000-000000000000/Providers/Microsoft.Compute/Locations/westus/Publishers/128technology/ArtifactTypes/VMImage/Offers/128t_networking_platform/Skus/128t_networking_platform/Versions/1.0.0\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['482'] + content-length: ['635'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:23:39 GMT'] + date: ['Thu, 27 Sep 2018 23:05:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_sizes.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_sizes.yaml index 0f2f404b4d7f..b5838fa091d7 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_sizes.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_compute.test_vm_sizes.yaml @@ -5,521 +5,519 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/vmSizes?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/vmSizes?api-version=2018-10-01 response: - body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"Standard_B1ms\"\ - ,\r\n \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 4096,\r\n \"memoryInMB\": 2048,\r\n\ - \ \"maxDataDiskCount\": 2\r\n },\r\n {\r\n \"name\": \"Standard_B1s\"\ - ,\r\n \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 2048,\r\n \"memoryInMB\": 1024,\r\n\ - \ \"maxDataDiskCount\": 2\r\n },\r\n {\r\n \"name\": \"Standard_B2ms\"\ - ,\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 16384,\r\n \"memoryInMB\": 8192,\r\n\ - \ \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\": \"Standard_B2s\"\ - ,\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 8192,\r\n \"memoryInMB\": 4096,\r\n\ - \ \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\": \"Standard_B4ms\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 32768,\r\n \"memoryInMB\": 16384,\r\n\ - \ \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_B8ms\"\ - ,\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 65536,\r\n \"memoryInMB\": 32768,\r\n\ - \ \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"Standard_DS1_v2\"\ - ,\r\n \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 7168,\r\n \"memoryInMB\": 3584,\r\n\ - \ \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\": \"Standard_DS2_v2\"\ - ,\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 14336,\r\n \"memoryInMB\": 7168,\r\n\ - \ \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_DS3_v2\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 28672,\r\n \"memoryInMB\": 14336,\r\n\ - \ \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"Standard_DS4_v2\"\ - ,\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 57344,\r\n \"memoryInMB\": 28672,\r\n\ - \ \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"Standard_DS5_v2\"\ - ,\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 114688,\r\n \"memoryInMB\": 57344,\r\ - \n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"name\": \"\ - Standard_DS11-1_v2\",\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 28672,\r\n \"memoryInMB\"\ - : 14336,\r\n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\"\ - : \"Standard_DS11_v2\",\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 28672,\r\n \"memoryInMB\"\ - : 14336,\r\n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\"\ - : \"Standard_DS12-1_v2\",\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 57344,\r\n \"memoryInMB\"\ - : 28672,\r\n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"\ - name\": \"Standard_DS12-2_v2\",\r\n \"numberOfCores\": 4,\r\n \"\ - osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 57344,\r\n \ - \ \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n },\r\ - \n {\r\n \"name\": \"Standard_DS12_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS13-2_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS13-4_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS13_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS14-4_v2\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_DS14-8_v2\",\r\n \ - \ \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \ - \ \"resourceDiskSizeInMB\": 229376,\r\n \"memoryInMB\": 114688,\r\n \ - \ \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"name\": \"Standard_DS14_v2\"\ - ,\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 229376,\r\n \"memoryInMB\": 114688,\r\ - \n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"name\": \"\ - Standard_DS15_v2\",\r\n \"numberOfCores\": 20,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 286720,\r\n \"memoryInMB\"\ - : 143360,\r\n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"\ - name\": \"Standard_DS2_v2_Promo\",\r\n \"numberOfCores\": 2,\r\n \ - \ \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 14336,\r\ - \n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n },\r\ - \n {\r\n \"name\": \"Standard_DS3_v2_Promo\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS4_v2_Promo\",\r\n \"\ - numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS5_v2_Promo\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS11_v2_Promo\",\r\n \ - \ \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"\ - resourceDiskSizeInMB\": 28672,\r\n \"memoryInMB\": 14336,\r\n \"\ - maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_DS12_v2_Promo\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 57344,\r\n \"memoryInMB\": 28672,\r\n\ - \ \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"Standard_DS13_v2_Promo\"\ - ,\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 114688,\r\n \"memoryInMB\": 57344,\r\ - \n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"\ - Standard_DS14_v2_Promo\",\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 229376,\r\n \"memoryInMB\"\ - : 114688,\r\n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"\ - name\": \"Standard_F1s\",\r\n \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 4096,\r\n \"memoryInMB\"\ - : 2048,\r\n \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\"\ - : \"Standard_F2s\",\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 8192,\r\n \"memoryInMB\"\ - : 4096,\r\n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\"\ - : \"Standard_F4s\",\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 16384,\r\n \"memoryInMB\"\ - : 8192,\r\n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\"\ - : \"Standard_F8s\",\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 32768,\r\n \"memoryInMB\"\ - : 16384,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_F16s\",\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 65536,\r\n \"memoryInMB\"\ - : 32768,\r\n \"maxDataDiskCount\": 64\r\n },\r\n {\r\n \"\ - name\": \"Standard_D2s_v3\",\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 16384,\r\n \"memoryInMB\"\ - : 8192,\r\n \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\"\ - : \"Standard_D4s_v3\",\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 32768,\r\n \"memoryInMB\"\ - : 16384,\r\n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\"\ - : \"Standard_D8s_v3\",\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 65536,\r\n \"memoryInMB\"\ - : 32768,\r\n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"\ - name\": \"Standard_D16s_v3\",\r\n \"numberOfCores\": 16,\r\n \"\ - osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 131072,\r\n\ - \ \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_D32s_v3\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_A0\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 20480,\r\n \"memoryInMB\": 768,\r\n \"maxDataDiskCount\": 1\r\n\ - \ },\r\n {\r\n \"name\": \"Standard_A1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 71680,\r\n \"memoryInMB\": 1792,\r\n \"maxDataDiskCount\": 2\r\ - \n },\r\n {\r\n \"name\": \"Standard_A2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 138240,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_A3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 291840,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_A5\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 138240,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_A4\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 619520,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_A6\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 291840,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_A7\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 619520,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Basic_A0\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 20480,\r\n \"memoryInMB\": 768,\r\n \"maxDataDiskCount\": 1\r\n\ - \ },\r\n {\r\n \"name\": \"Basic_A1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 40960,\r\n \"memoryInMB\": 1792,\r\n \"maxDataDiskCount\": 2\r\ - \n },\r\n {\r\n \"name\": \"Basic_A2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 61440,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Basic_A3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 122880,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Basic_A4\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 245760,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D1_v2\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 51200,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_D2_v2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D3_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D4_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D5_v2\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\ - \n },\r\n {\r\n \"name\": \"Standard_D11_v2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D12_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D13_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D14_v2\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_D15_v2\",\r\n \"\ - numberOfCores\": 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 286720,\r\n \"memoryInMB\": 143360,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_D2_v2_Promo\",\r\n \ - \ \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \ - \ \"resourceDiskSizeInMB\": 102400,\r\n \"memoryInMB\": 7168,\r\n \ - \ \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_D3_v2_Promo\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 204800,\r\n \"memoryInMB\": 14336,\r\ - \n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"\ - Standard_D4_v2_Promo\",\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 409600,\r\n \"memoryInMB\"\ - : 28672,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_D5_v2_Promo\",\r\n \"numberOfCores\": 16,\r\n \ - \ \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 819200,\r\ - \n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n },\r\ - \n {\r\n \"name\": \"Standard_D11_v2_Promo\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D12_v2_Promo\",\r\n \"\ - numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D13_v2_Promo\",\r\n \"\ - numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D14_v2_Promo\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_F1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 16384,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_F2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 32768,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_F4\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 65536,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_F8\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_F16\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 262144,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 64\r\ - \n },\r\n {\r\n \"name\": \"Standard_A1_v2\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 10240,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 2\r\ - \n },\r\n {\r\n \"name\": \"Standard_A2m_v2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 20480,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_A2_v2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 20480,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_A4m_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 40960,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_A4_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 40960,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_A8m_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 81920,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_A8_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 81920,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D2_v3\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 51200,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_D4_v3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D8_v3\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D16_v3\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 65636,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D32_v3\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_D1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 51200,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_D2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D4\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D11\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_D12\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_D13\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_D14\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_DS1\",\r\n \"numberOfCores\"\ - : 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 7168,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n\ - \ },\r\n {\r\n \"name\": \"Standard_DS2\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 14336,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS4\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS11\",\r\n \"numberOfCores\"\ - : 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS12\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS13\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_DS14\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_D64_v3\",\r\n \"\ - numberOfCores\": 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1638400,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\"\ - : 32\r\n },\r\n {\r\n \"name\": \"Standard_D64s_v3\",\r\n \ - \ \"numberOfCores\": 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"\ - resourceDiskSizeInMB\": 524288,\r\n \"memoryInMB\": 262144,\r\n \ - \ \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"Standard_E2_v3\"\ - ,\r\n \"numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 51200,\r\n \"memoryInMB\": 16384,\r\n\ - \ \"maxDataDiskCount\": 4\r\n },\r\n {\r\n \"name\": \"Standard_E4_v3\"\ - ,\r\n \"numberOfCores\": 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 102400,\r\n \"memoryInMB\": 32768,\r\ - \n \"maxDataDiskCount\": 8\r\n },\r\n {\r\n \"name\": \"Standard_E8_v3\"\ - ,\r\n \"numberOfCores\": 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 204800,\r\n \"memoryInMB\": 65536,\r\ - \n \"maxDataDiskCount\": 16\r\n },\r\n {\r\n \"name\": \"\ - Standard_E16_v3\",\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 409600,\r\n \"memoryInMB\"\ - : 131072,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_E32_v3\",\r\n \"numberOfCores\": 32,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 819200,\r\n \"memoryInMB\"\ - : 262144,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_E64i_v3\",\r\n \"numberOfCores\": 64,\r\n \"\ - osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 1638400,\r\n\ - \ \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_E64_v3\",\r\n \"numberOfCores\"\ - : 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1638400,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\"\ - : 32\r\n },\r\n {\r\n \"name\": \"Standard_E2s_v3\",\r\n \"\ - numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_E4-2s_v3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_E4s_v3\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_E8-2s_v3\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_E8-4s_v3\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_E8s_v3\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_E16-4s_v3\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_E16-8s_v3\",\r\n \ - \ \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \ - \ \"resourceDiskSizeInMB\": 262144,\r\n \"memoryInMB\": 131072,\r\n \ - \ \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"Standard_E16s_v3\"\ - ,\r\n \"numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 262144,\r\n \"memoryInMB\": 131072,\r\ - \n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"\ - Standard_E32-8s_v3\",\r\n \"numberOfCores\": 32,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 524288,\r\n \"memoryInMB\"\ - : 262144,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_E32-16s_v3\",\r\n \"numberOfCores\": 32,\r\n \ - \ \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 524288,\r\ - \n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_E32s_v3\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_E64-16s_v3\",\r\n \ - \ \"numberOfCores\": 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \ - \ \"resourceDiskSizeInMB\": 884736,\r\n \"memoryInMB\": 442368,\r\n\ - \ \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"Standard_E64-32s_v3\"\ - ,\r\n \"numberOfCores\": 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n\ - \ \"resourceDiskSizeInMB\": 884736,\r\n \"memoryInMB\": 442368,\r\ - \n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"name\": \"\ - Standard_E64is_v3\",\r\n \"numberOfCores\": 64,\r\n \"osDiskSizeInMB\"\ - : 1047552,\r\n \"resourceDiskSizeInMB\": 884736,\r\n \"memoryInMB\"\ - : 442368,\r\n \"maxDataDiskCount\": 32\r\n },\r\n {\r\n \"\ - name\": \"Standard_E64s_v3\",\r\n \"numberOfCores\": 64,\r\n \"\ - osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 884736,\r\n\ - \ \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_G1\",\r\n \"numberOfCores\": 2,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 393216,\r\ - \n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n },\r\ - \n {\r\n \"name\": \"Standard_G2\",\r\n \"numberOfCores\": 4,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 786432,\r\ - \n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n },\r\ - \n {\r\n \"name\": \"Standard_G3\",\r\n \"numberOfCores\": 8,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 1572864,\r\ - \n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_G4\",\r\n \"numberOfCores\": 16,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 3145728,\r\ - \n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n },\r\ - \n {\r\n \"name\": \"Standard_G5\",\r\n \"numberOfCores\": 32,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 6291456,\r\ - \n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS1\",\r\n \"numberOfCores\": 2,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 57344,\r\ - \n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS2\",\r\n \"numberOfCores\": 4,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 114688,\r\ - \n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS3\",\r\n \"numberOfCores\": 8,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 229376,\r\ - \n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS4\",\r\n \"numberOfCores\": 16,\r\ - \n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": 458752,\r\ - \n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n },\r\ - \n {\r\n \"name\": \"Standard_GS4-4\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_GS4-8\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_GS5\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_GS5-8\",\r\n \"\ - numberOfCores\": 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_GS5-16\",\r\n \"\ - numberOfCores\": 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_L4s\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 694272,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_L8s\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1421312,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_L16s\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2874368,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_L32s\",\r\n \"\ - numberOfCores\": 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 5765120,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_A8\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 391168,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_A9\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 391168,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_A10\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 391168,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_A11\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 391168,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\":\ - \ 64\r\n },\r\n {\r\n \"name\": \"Standard_H8\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1024000,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_H16\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2048000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_H8m\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 1024000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\"\ - : 32\r\n },\r\n {\r\n \"name\": \"Standard_H16m\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2048000,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_H16r\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2048000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_H16mr\",\r\n \"\ - numberOfCores\": 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 2048000,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\"\ - : 64\r\n },\r\n {\r\n \"name\": \"Standard_F2s_v2\",\r\n \"\ - numberOfCores\": 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 16384,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\ - \n },\r\n {\r\n \"name\": \"Standard_F4s_v2\",\r\n \"numberOfCores\"\ - : 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 32768,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 8\r\ - \n },\r\n {\r\n \"name\": \"Standard_F8s_v2\",\r\n \"numberOfCores\"\ - : 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 65536,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 16\r\ - \n },\r\n {\r\n \"name\": \"Standard_F16s_v2\",\r\n \"numberOfCores\"\ - : 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 131072,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_F32s_v2\",\r\n \"numberOfCores\"\ - : 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 262144,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\ - \n },\r\n {\r\n \"name\": \"Standard_F64s_v2\",\r\n \"numberOfCores\"\ - : 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\"\ - : 524288,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\":\ - \ 32\r\n },\r\n {\r\n \"name\": \"Standard_F72s_v2\",\r\n \ - \ \"numberOfCores\": 72,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"\ - resourceDiskSizeInMB\": 589824,\r\n \"memoryInMB\": 147456,\r\n \ - \ \"maxDataDiskCount\": 32\r\n }\r\n ]\r\n}"} + body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"Standard_B1ms\",\r\n + \ \"numberOfCores\": 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 4096,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Standard_B1s\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048,\r\n \"memoryInMB\": 1024,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Standard_B2ms\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_B2s\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 8192,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_B4ms\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_B8ms\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS1_v2\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 7168,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS2_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 14336,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS3_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS4_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS5_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS11-1_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS11_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12-1_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12-2_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13-2_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13-4_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14-4_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14-8_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS15_v2\",\r\n \"numberOfCores\": + 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 286720,\r\n \"memoryInMB\": 143360,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS2_v2_Promo\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 14336,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS3_v2_Promo\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS4_v2_Promo\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS5_v2_Promo\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS11_v2_Promo\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12_v2_Promo\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13_v2_Promo\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14_v2_Promo\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_F1s\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 4096,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_F2s\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 8192,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_F4s\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_F8s\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F16s\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2s_v3\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4s_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D8s_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D16s_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D32s_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_A0\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 20480,\r\n \"memoryInMB\": 768,\r\n \"maxDataDiskCount\": 1\r\n + \ },\r\n {\r\n \"name\": \"Standard_A1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 71680,\r\n \"memoryInMB\": 1792,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Standard_A2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 138240,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_A3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 291840,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_A5\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 138240,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_A4\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 619520,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_A6\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 291840,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_A7\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 619520,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Basic_A0\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 20480,\r\n \"memoryInMB\": 768,\r\n \"maxDataDiskCount\": 1\r\n + \ },\r\n {\r\n \"name\": \"Basic_A1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 40960,\r\n \"memoryInMB\": 1792,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Basic_A2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 61440,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Basic_A3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 122880,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Basic_A4\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 245760,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D1_v2\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 51200,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D3_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D5_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D11_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D12_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D13_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D14_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D15_v2\",\r\n \"numberOfCores\": + 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 286720,\r\n \"memoryInMB\": 143360,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2_v2_Promo\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D3_v2_Promo\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4_v2_Promo\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D5_v2_Promo\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D11_v2_Promo\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D12_v2_Promo\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D13_v2_Promo\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D14_v2_Promo\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_F1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_F2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_F4\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_F8\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F16\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_A1_v2\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 10240,\r\n \"memoryInMB\": 2048,\r\n \"maxDataDiskCount\": 2\r\n + \ },\r\n {\r\n \"name\": \"Standard_A2m_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 20480,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_A2_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 20480,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_A4m_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 40960,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_A4_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 40960,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_A8m_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 81920,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_A8_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 81920,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2_v3\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 51200,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D8_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D16_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 65636,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D32_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 51200,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_D2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D4\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D11\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_D12\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_D13\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D14\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS1\",\r\n \"numberOfCores\": + 1,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 7168,\r\n \"memoryInMB\": 3584,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 14336,\r\n \"memoryInMB\": 7168,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS4\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS11\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 28672,\r\n \"memoryInMB\": 14336,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS12\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS13\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_DS14\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_D64_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1638400,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_D64s_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E2_v3\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 51200,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_E4_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 102400,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_E8_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 204800,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_E16_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 409600,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E20_v3\",\r\n \"numberOfCores\": + 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 512000,\r\n \"memoryInMB\": 163840,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E32_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 819200,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64i_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1638400,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1638400,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E2s_v3\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_E4-2s_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_E4s_v3\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_E8-2s_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_E8-4s_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_E8s_v3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_E16-4s_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E16-8s_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E16s_v3\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E20s_v3\",\r\n \"numberOfCores\": + 20,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 327680,\r\n \"memoryInMB\": 163840,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E32-8s_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E32-16s_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E32s_v3\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64-16s_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 884736,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64-32s_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 884736,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64is_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 884736,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_E64s_v3\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 884736,\r\n \"memoryInMB\": 442368,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_G1\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 393216,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_G2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 786432,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_G3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1572864,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_G4\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 3145728,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_G5\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 6291456,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS1\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 57344,\r\n \"memoryInMB\": 28672,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 114688,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS3\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 229376,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS4\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS4-4\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS4-8\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 458752,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS5\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS5-8\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_GS5-16\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 917504,\r\n \"memoryInMB\": 458752,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_L4s\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 694272,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_L8s\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1421312,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_L16s\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2874368,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_L32s\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 5765120,\r\n \"memoryInMB\": 262144,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_A8\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 391168,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_A9\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 391168,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_A10\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 391168,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_A11\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 391168,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_H8\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1024000,\r\n \"memoryInMB\": 57344,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_H16\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_H8m\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 1024000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_H16m\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048000,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_H16r\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048000,\r\n \"memoryInMB\": 114688,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_H16mr\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 2048000,\r\n \"memoryInMB\": 229376,\r\n \"maxDataDiskCount\": 64\r\n + \ },\r\n {\r\n \"name\": \"Standard_F2s_v2\",\r\n \"numberOfCores\": + 2,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 16384,\r\n \"memoryInMB\": 4096,\r\n \"maxDataDiskCount\": 4\r\n + \ },\r\n {\r\n \"name\": \"Standard_F4s_v2\",\r\n \"numberOfCores\": + 4,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 32768,\r\n \"memoryInMB\": 8192,\r\n \"maxDataDiskCount\": 8\r\n + \ },\r\n {\r\n \"name\": \"Standard_F8s_v2\",\r\n \"numberOfCores\": + 8,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 65536,\r\n \"memoryInMB\": 16384,\r\n \"maxDataDiskCount\": 16\r\n + \ },\r\n {\r\n \"name\": \"Standard_F16s_v2\",\r\n \"numberOfCores\": + 16,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 131072,\r\n \"memoryInMB\": 32768,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F32s_v2\",\r\n \"numberOfCores\": + 32,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 262144,\r\n \"memoryInMB\": 65536,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F64s_v2\",\r\n \"numberOfCores\": + 64,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 524288,\r\n \"memoryInMB\": 131072,\r\n \"maxDataDiskCount\": 32\r\n + \ },\r\n {\r\n \"name\": \"Standard_F72s_v2\",\r\n \"numberOfCores\": + 72,\r\n \"osDiskSizeInMB\": 1047552,\r\n \"resourceDiskSizeInMB\": + 589824,\r\n \"memoryInMB\": 147456,\r\n \"maxDataDiskCount\": 32\r\n + \ }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['34047'] + content-length: ['34466'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:23:45 GMT'] + date: ['Thu, 27 Sep 2018 23:05:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -527,6 +525,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: [Microsoft.Compute/GetSubscriptionInfo3Min;479] + x-ms-ratelimit-remaining-resource: [Microsoft.Compute/GetSubscriptionInfo3Min;419] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_change_account_type.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_change_account_type.yaml index 6cf70600eed0..fb10e0d320ea 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_change_account_type.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_change_account_type.yaml @@ -8,24 +8,24 @@ interactions: Connection: [keep-alive] Content-Length: ['99'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"\ createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\": 20,\r\n \"provisioningState\"\ : \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\":\ \ \"westus\",\r\n \"name\": \"myDisk\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/55d2dbb5-98b1-492c-a444-10d921fb6266?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/6b1e1671-70ce-43e8-9a32-10d236d493f9?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['224'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:20:20 GMT'] + date: ['Mon, 10 Sep 2018 23:11:01 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/55d2dbb5-98b1-492c-a444-10d921fb6266?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/6b1e1671-70ce-43e8-9a32-10d236d493f9?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -39,25 +39,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/55d2dbb5-98b1-492c-a444-10d921fb6266?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/6b1e1671-70ce-43e8-9a32-10d236d493f9?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:20:20.8967553+00:00\",\r\ - \n \"endTime\": \"2018-03-21T21:20:21.0529939+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:11:02.0564197+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:11:02.2598918+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ - :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-03-21T21:20:20.8967553+00:00\"\ + :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-09-10T23:11:02.0720484+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk\"\ - ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"55d2dbb5-98b1-492c-a444-10d921fb6266\"\ + ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"6b1e1671-70ce-43e8-9a32-10d236d493f9\"\ \r\n}"} headers: cache-control: [no-cache] content-length: ['693'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:20:51 GMT'] + date: ['Mon, 10 Sep 2018 23:11:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -73,15 +73,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:20:20.8967553+00:00\",\r\n \ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:11:02.0720484+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk\"\ @@ -90,7 +90,7 @@ interactions: cache-control: [no-cache] content-length: ['572'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:20:51 GMT'] + date: ['Mon, 10 Sep 2018 23:11:32 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -98,7 +98,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4998,Microsoft.Compute/LowCostGet30Min;19998'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4997,Microsoft.Compute/LowCostGet30Min;19997'] status: {code: 200, message: OK} - request: body: null @@ -106,17 +106,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:20:20.8967553+00:00\",\r\n \ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:11:02.0720484+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk\"\ @@ -125,7 +124,7 @@ interactions: cache-control: [no-cache] content-length: ['572'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:20:51 GMT'] + date: ['Mon, 10 Sep 2018 23:11:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -133,7 +132,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4997,Microsoft.Compute/LowCostGet30Min;19997'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4996,Microsoft.Compute/LowCostGet30Min;19996'] status: {code: 200, message: OK} - request: body: '{"location": "westus", "sku": {"name": "Standard_LRS"}, "properties": {"creationData": @@ -144,11 +143,11 @@ interactions: Connection: [keep-alive] Content-Length: ['132'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\"\r\n },\r\n\ \ \"properties\": {\r\n \"creationData\": {\r\n \"createOption\"\ @@ -156,13 +155,13 @@ interactions: : \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\":\ \ \"westus\",\r\n \"name\": \"myDisk\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/9bdec6fc-4a76-4492-9227-84ddde7f64a2?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/cc87b6a9-f2d8-4da5-8d66-5b63356806d8?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['270'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:20:52 GMT'] + date: ['Mon, 10 Sep 2018 23:11:33 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/9bdec6fc-4a76-4492-9227-84ddde7f64a2?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/cc87b6a9-f2d8-4da5-8d66-5b63356806d8?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -176,25 +175,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/9bdec6fc-4a76-4492-9227-84ddde7f64a2?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/cc87b6a9-f2d8-4da5-8d66-5b63356806d8?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:20:53.723007+00:00\",\r\n\ - \ \"endTime\": \"2018-03-21T21:20:53.8948486+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:11:34.5443248+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:11:34.7005866+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ - :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-03-21T21:20:20.8967553+00:00\"\ + :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-09-10T23:11:02.0720484+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk\"\ - ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"9bdec6fc-4a76-4492-9227-84ddde7f64a2\"\ + ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"cc87b6a9-f2d8-4da5-8d66-5b63356806d8\"\ \r\n}"} headers: cache-control: [no-cache] - content-length: ['692'] + content-length: ['693'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:21:24 GMT'] + date: ['Mon, 10 Sep 2018 23:12:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -210,15 +209,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:20:20.8967553+00:00\",\r\n \ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:11:02.0720484+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_change_account_typedfe7139e/providers/Microsoft.Compute/disks/myDisk\"\ @@ -227,7 +226,7 @@ interactions: cache-control: [no-cache] content-length: ['572'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:21:25 GMT'] + date: ['Mon, 10 Sep 2018 23:12:05 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -235,6 +234,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4995,Microsoft.Compute/LowCostGet30Min;19995'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4993,Microsoft.Compute/LowCostGet30Min;19993'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_image_from_blob.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_image_from_blob.yaml index e8d38fb35748..20cfaa4d637d 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_image_from_blob.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_image_from_blob.yaml @@ -14,7 +14,7 @@ interactions: accept-language: [en-US] x-ms-client-request-id: [aaefdaec-5d36-11e7-af9e-ecb1d756380e] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_image_from_blob1cfb14b2/providers/Microsoft.Compute/images/myImage?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_image_from_blob1cfb14b2/providers/Microsoft.Compute/images/myImage?api-version=2018-10-01 response: body: {string: "{\r\n \"properties\": {\r\n \"storageProfile\": {\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \"osState\": \"Generalized\",\r\n @@ -24,7 +24,7 @@ interactions: \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_image_from_blob1cfb14b2/providers/Microsoft.Compute/images/myImage\",\r\n \ \"name\": \"myImage\"\r\n}"} headers: - Azure-AsyncOperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/53c76029-51ee-40c5-843a-3ab96eba05f4?api-version=2018-06-01'] + Azure-AsyncOperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/53c76029-51ee-40c5-843a-3ab96eba05f4?api-version=2018-10-01'] Cache-Control: [no-cache] Content-Length: ['622'] Content-Type: [application/json; charset=utf-8] @@ -51,7 +51,7 @@ interactions: accept-language: [en-US] x-ms-client-request-id: [aaefdaec-5d36-11e7-af9e-ecb1d756380e] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/53c76029-51ee-40c5-843a-3ab96eba05f4?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/53c76029-51ee-40c5-843a-3ab96eba05f4?api-version=2018-10-01 response: body: {string: "{\r\n \"startTime\": \"2017-06-30T01:51:43.9432726+00:00\",\r\n \ \"endTime\": \"2017-06-30T01:52:04.5545491+00:00\",\r\n \"status\": \"Succeeded\",\r\n @@ -85,7 +85,7 @@ interactions: accept-language: [en-US] x-ms-client-request-id: [aaefdaec-5d36-11e7-af9e-ecb1d756380e] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_image_from_blob1cfb14b2/providers/Microsoft.Compute/images/myImage?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_image_from_blob1cfb14b2/providers/Microsoft.Compute/images/myImage?api-version=2018-10-01 response: body: {string: "{\r\n \"properties\": {\r\n \"storageProfile\": {\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \"osState\": \"Generalized\",\r\n diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_snapshot.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_snapshot.yaml index 384688282841..637ad41a039d 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_snapshot.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_snapshot.yaml @@ -8,30 +8,30 @@ interactions: Connection: [keep-alive] Content-Length: ['99'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"\ createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\": 20,\r\n \"provisioningState\"\ : \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\":\ \ \"westus\",\r\n \"name\": \"myDisk\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/a54172a2-e9c3-4968-98ce-7e557d23e31f?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/8062ed06-4a60-4d02-8029-255bcc796b73?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['224'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:21:48 GMT'] + date: ['Mon, 10 Sep 2018 23:12:24 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/a54172a2-e9c3-4968-98ce-7e557d23e31f?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/8062ed06-4a60-4d02-8029-255bcc796b73?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/CreateUpdateDisks3Min;997,Microsoft.Compute/CreateUpdateDisks30Min;3997'] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: body: null @@ -39,25 +39,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/a54172a2-e9c3-4968-98ce-7e557d23e31f?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/8062ed06-4a60-4d02-8029-255bcc796b73?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:21:48.5691741+00:00\",\r\ - \n \"endTime\": \"2018-03-21T21:21:48.7441701+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:12:24.5515493+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:12:24.7546854+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ - :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-03-21T21:21:48.584802+00:00\"\ + :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-09-10T23:12:24.5515493+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk\"\ - ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"a54172a2-e9c3-4968-98ce-7e557d23e31f\"\ + ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"8062ed06-4a60-4d02-8029-255bcc796b73\"\ \r\n}"} headers: cache-control: [no-cache] - content-length: ['688'] + content-length: ['689'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:22:18 GMT'] + date: ['Mon, 10 Sep 2018 23:12:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -73,24 +73,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:21:48.584802+00:00\",\r\n \ - \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:12:24.5515493+00:00\",\r\n \ + \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk\"\ ,\r\n \"name\": \"myDisk\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['567'] + content-length: ['568'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:22:20 GMT'] + date: ['Mon, 10 Sep 2018 23:12:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -98,7 +98,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4993,Microsoft.Compute/LowCostGet30Min;19993'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4990,Microsoft.Compute/LowCostGet30Min;19990'] status: {code: 200, message: OK} - request: body: null @@ -106,26 +106,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:21:48.584802+00:00\",\r\n \ - \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:12:24.5515493+00:00\",\r\n \ + \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk\"\ ,\r\n \"name\": \"myDisk\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['567'] + content-length: ['568'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:22:19 GMT'] + date: ['Mon, 10 Sep 2018 23:12:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -133,35 +132,35 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4992,Microsoft.Compute/LowCostGet30Min;19992'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4989,Microsoft.Compute/LowCostGet30Min;19989'] status: {code: 200, message: OK} - request: - body: 'b''b\''b\\\''{"location": "westus", "properties": {"creationData": {"createOption": - "Copy", "sourceUri": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk"}}}\\\''\''''' + body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"creationData": + {"createOption": "Copy", "sourceUri": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk"}}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['257'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2018-06-01 response: body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"\ createOption\": \"Copy\",\r\n \"sourceUri\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk\"\ \r\n },\r\n \"provisioningState\": \"Updating\",\r\n \"isArmResource\"\ : true\r\n },\r\n \"location\": \"westus\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/cf2c9798-a0a8-4c4c-9156-52cb76f4514d?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/a598a802-1410-4685-a2bb-abfc8f93d0c7?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['363'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:22:21 GMT'] + date: ['Mon, 10 Sep 2018 23:12:56 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/cf2c9798-a0a8-4c4c-9156-52cb76f4514d?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/a598a802-1410-4685-a2bb-abfc8f93d0c7?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -175,26 +174,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/cf2c9798-a0a8-4c4c-9156-52cb76f4514d?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/a598a802-1410-4685-a2bb-abfc8f93d0c7?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:22:21.7211275+00:00\",\r\ - \n \"endTime\": \"2018-03-21T21:22:32.6168462+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:12:57.1433752+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:12:58.3935693+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ :{\"createOption\":\"Copy\",\"sourceResourceId\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk\"\ - },\"diskSizeGB\":20,\"timeCreated\":\"2018-03-21T21:22:21.7523604+00:00\"\ + },\"diskSizeGB\":20,\"timeCreated\":\"2018-09-10T23:12:57.1590056+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/snapshots\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/snapshots/mySnapshot\"\ - ,\"name\":\"mySnapshot\"}\r\n },\r\n \"name\": \"cf2c9798-a0a8-4c4c-9156-52cb76f4514d\"\ + ,\"name\":\"mySnapshot\"}\r\n },\r\n \"name\": \"a598a802-1410-4685-a2bb-abfc8f93d0c7\"\ \r\n}"} headers: cache-control: [no-cache] content-length: ['886'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:22:51 GMT'] + date: ['Mon, 10 Sep 2018 23:13:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -210,16 +209,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Copy\",\r\n \"sourceResourceId\": \"\ /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/disks/myDisk\"\ - \r\n },\r\n \"diskSizeGB\": 20,\r\n \"timeCreated\": \"2018-03-21T21:22:21.7523604+00:00\"\ + \r\n },\r\n \"diskSizeGB\": 20,\r\n \"timeCreated\": \"2018-09-10T23:12:57.1590056+00:00\"\ ,\r\n \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/snapshots\",\r\n \"location\"\ : \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_snapshot9571120e/providers/Microsoft.Compute/snapshots/mySnapshot\"\ @@ -228,7 +227,7 @@ interactions: cache-control: [no-cache] content-length: ['774'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:22:52 GMT'] + date: ['Mon, 10 Sep 2018 23:13:27 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -236,6 +235,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4990,Microsoft.Compute/LowCostGet30Min;19990'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4986,Microsoft.Compute/LowCostGet30Min;19986'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_virtual_machine_scale_set.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_virtual_machine_scale_set.yaml index ddbbaba273a0..371d34eab643 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_virtual_machine_scale_set.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_virtual_machine_scale_set.yaml @@ -2,38 +2,39 @@ interactions: - request: body: '{"location": "westus", "properties": {"addressSpace": {"addressPrefixes": ["10.0.0.0/16"]}, "subnets": [{"properties": {"addressPrefix": "10.0.0.0/24"}, - "name": "pyvmirsub5cc18eb"}]}}' + "name": "pyvmirsub5cc18eb"}], "enableDdosProtection": false, "enableVmProtection": + false}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['183'] + Content-Length: ['243'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnet5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb\"\ - ,\r\n \"etag\": \"W/\\\"7c227f05-36cc-41b9-9c1e-24abcdcd74fc\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"5bb4a7a8-2bff-4f31-ba6c-71451e40cdc3\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsub5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\"\ - ,\r\n \"etag\": \"W/\\\"7c227f05-36cc-41b9-9c1e-24abcdcd74fc\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnet5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb\",\r\n + \ \"etag\": \"W/\\\"8ae8b226-cb18-468f-821d-3f4d77a22c74\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"resourceGuid\": + \"640a8ccb-a71a-4c06-a456-c2a30b963ec0\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsub5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\",\r\n + \ \"etag\": \"W/\\\"8ae8b226-cb18-468f-821d-3f4d77a22c74\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db27f74a-74ad-44e1-91fe-e0fba2259a78?api-version=2018-02-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b2a21a0c-0bf4-4dd5-9b82-cd9d4f3cdd00?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1198'] + content-length: ['1290'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:37:05 GMT'] + date: ['Fri, 28 Sep 2018 17:46:32 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -47,17 +48,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db27f74a-74ad-44e1-91fe-e0fba2259a78?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b2a21a0c-0bf4-4dd5-9b82-cd9d4f3cdd00?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:37:09 GMT'] + date: ['Fri, 28 Sep 2018 17:46:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -72,17 +73,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db27f74a-74ad-44e1-91fe-e0fba2259a78?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b2a21a0c-0bf4-4dd5-9b82-cd9d4f3cdd00?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:37:20 GMT'] + date: ['Fri, 28 Sep 2018 17:46:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -97,30 +98,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnet5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb\"\ - ,\r\n \"etag\": \"W/\\\"b9f1d43d-22e4-43c8-8317-850fa2f0b96e\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"5bb4a7a8-2bff-4f31-ba6c-71451e40cdc3\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsub5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\"\ - ,\r\n \"etag\": \"W/\\\"b9f1d43d-22e4-43c8-8317-850fa2f0b96e\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnet5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb\",\r\n + \ \"etag\": \"W/\\\"49242624-1f0d-4ed3-87a8-6cb1739378a0\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": + \"640a8ccb-a71a-4c06-a456-c2a30b963ec0\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsub5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\",\r\n + \ \"etag\": \"W/\\\"49242624-1f0d-4ed3-87a8-6cb1739378a0\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1200'] + content-length: ['1292'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:37:20 GMT'] - etag: [W/"b9f1d43d-22e4-43c8-8317-850fa2f0b96e"] + date: ['Fri, 28 Sep 2018 17:46:46 GMT'] + etag: [W/"49242624-1f0d-4ed3-87a8-6cb1739378a0"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -135,23 +136,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirsub5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\"\ - ,\r\n \"etag\": \"W/\\\"b9f1d43d-22e4-43c8-8317-850fa2f0b96e\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirsub5cc18eb\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\",\r\n + \ \"etag\": \"W/\\\"49242624-1f0d-4ed3-87a8-6cb1739378a0\\\"\",\r\n \"properties\": + {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.0.0.0/24\",\r\n + \ \"delegations\": []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['425'] + content-length: ['505'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:37:22 GMT'] - etag: [W/"b9f1d43d-22e4-43c8-8317-850fa2f0b96e"] + date: ['Fri, 28 Sep 2018 17:46:47 GMT'] + etag: [W/"49242624-1f0d-4ed3-87a8-6cb1739378a0"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -176,43 +176,37 @@ interactions: Connection: [keep-alive] Content-Length: ['867'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Compute/virtualMachineScaleSets/pyvmirvm5cc18eb?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Compute/virtualMachineScaleSets/pyvmirvm5cc18eb?api-version=2018-10-01 response: - body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_A1\",\r\n \"\ - tier\": \"Standard\",\r\n \"capacity\": 5\r\n },\r\n \"properties\":\ - \ {\r\n \"singlePlacementGroup\": true,\r\n \"upgradePolicy\": {\r\n\ - \ \"mode\": \"Manual\",\r\n \"automaticOSUpgrade\": false\r\n \ - \ },\r\n \"virtualMachineProfile\": {\r\n \"osProfile\": {\r\n \ - \ \"computerNamePrefix\": \"PyTestInfix\",\r\n \"adminUsername\"\ - : \"Foo12\",\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\"\ - : false,\r\n \"provisionVMAgent\": true\r\n },\r\n \ - \ \"secrets\": [],\r\n \"allowExtensionOperations\": true\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"osDisk\": {\r\n \ - \ \"createOption\": \"FromImage\",\r\n \"caching\": \"None\",\r\n\ - \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\ - \r\n }\r\n },\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\ - \r\n }\r\n },\r\n \"networkProfile\": {\"networkInterfaceConfigurations\"\ - :[{\"name\":\"PyTestInfixnic\",\"properties\":{\"primary\":true,\"enableAcceleratedNetworking\"\ - :false,\"dnsSettings\":{\"dnsServers\":[]},\"enableIPForwarding\":false,\"\ - ipConfigurations\":[{\"name\":\"PyTestInfixipconfig\",\"properties\":{\"subnet\"\ - :{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\"\ - },\"privateIPAddressVersion\":\"IPv4\"}}]}}]}\r\n },\r\n \"provisioningState\"\ - : \"Creating\",\r\n \"overprovision\": true,\r\n \"uniqueId\": \"1bfeb98c-4800-46ed-a794-0ede0003daf9\"\ - \r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachineScaleSets\",\r\n\ - \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Compute/virtualMachineScaleSets/pyvmirvm5cc18eb\"\ - ,\r\n \"name\": \"pyvmirvm5cc18eb\"\r\n}"} + body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_A1\",\r\n \"tier\": + \"Standard\",\r\n \"capacity\": 5\r\n },\r\n \"properties\": {\r\n \"singlePlacementGroup\": + true,\r\n \"upgradePolicy\": {\r\n \"mode\": \"Manual\"\r\n },\r\n + \ \"virtualMachineProfile\": {\r\n \"osProfile\": {\r\n \"computerNamePrefix\": + \"PyTestInfix\",\r\n \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\": + {\r\n \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\": + true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\": + true\r\n },\r\n \"storageProfile\": {\r\n \"osDisk\": {\r\n + \ \"createOption\": \"FromImage\",\r\n \"caching\": \"None\",\r\n + \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\r\n + \ }\r\n },\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n }\r\n },\r\n + \ \"networkProfile\": {\"networkInterfaceConfigurations\":[{\"name\":\"PyTestInfixnic\",\"properties\":{\"primary\":true,\"enableAcceleratedNetworking\":false,\"dnsSettings\":{\"dnsServers\":[]},\"enableIPForwarding\":false,\"ipConfigurations\":[{\"name\":\"PyTestInfixipconfig\",\"properties\":{\"subnet\":{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\"},\"privateIPAddressVersion\":\"IPv4\"}}]}}]}\r\n + \ },\r\n \"provisioningState\": \"Creating\",\r\n \"overprovision\": + true,\r\n \"uniqueId\": \"e04d1325-f741-4bb5-b056-51aab8258810\"\r\n },\r\n + \ \"type\": \"Microsoft.Compute/virtualMachineScaleSets\",\r\n \"location\": + \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Compute/virtualMachineScaleSets/pyvmirvm5cc18eb\",\r\n + \ \"name\": \"pyvmirvm5cc18eb\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/87aab33f-2ddd-434c-a646-098d5e9b4995?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/63add820-090e-44df-bf61-f03718e6db82?api-version=2018-10-01'] cache-control: [no-cache] - content-length: ['2006'] + content-length: ['1970'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:37:24 GMT'] + date: ['Fri, 28 Sep 2018 17:46:50 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -228,75 +222,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/87aab33f-2ddd-434c-a646-098d5e9b4995?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:37:23.9335637+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"87aab33f-2ddd-434c-a646-098d5e9b4995\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:37:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14994,Microsoft.Compute/GetOperation30Min;29982'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/87aab33f-2ddd-434c-a646-098d5e9b4995?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:37:23.9335637+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"87aab33f-2ddd-434c-a646-098d5e9b4995\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:38:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14994,Microsoft.Compute/GetOperation30Min;29980'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/87aab33f-2ddd-434c-a646-098d5e9b4995?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/63add820-090e-44df-bf61-f03718e6db82?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:37:23.9335637+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"87aab33f-2ddd-434c-a646-098d5e9b4995\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:46:49.9994565+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"63add820-090e-44df-bf61-f03718e6db82\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:38:42 GMT'] + date: ['Fri, 28 Sep 2018 17:47:00 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -304,7 +241,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14991,Microsoft.Compute/GetOperation30Min;29977'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14999,Microsoft.Compute/GetOperation30Min;29977'] status: {code: 200, message: OK} - request: body: null @@ -312,19 +249,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/87aab33f-2ddd-434c-a646-098d5e9b4995?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/63add820-090e-44df-bf61-f03718e6db82?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:37:23.9335637+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"87aab33f-2ddd-434c-a646-098d5e9b4995\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:46:49.9994565+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"63add820-090e-44df-bf61-f03718e6db82\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:39:15 GMT'] + date: ['Fri, 28 Sep 2018 17:48:02 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -332,7 +268,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14989,Microsoft.Compute/GetOperation30Min;29974'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14994,Microsoft.Compute/GetOperation30Min;29972'] status: {code: 200, message: OK} - request: body: null @@ -340,19 +276,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/87aab33f-2ddd-434c-a646-098d5e9b4995?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/63add820-090e-44df-bf61-f03718e6db82?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:37:23.9335637+00:00\",\r\ - \n \"endTime\": \"2018-07-20T19:39:18.955664+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"87aab33f-2ddd-434c-a646-098d5e9b4995\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:46:49.9994565+00:00\",\r\n + \ \"endTime\": \"2018-09-28T17:48:23.240544+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"63add820-090e-44df-bf61-f03718e6db82\"\r\n}"} headers: cache-control: [no-cache] content-length: ['183'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:39:46 GMT'] + date: ['Fri, 28 Sep 2018 17:48:32 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -360,7 +296,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29972'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14991,Microsoft.Compute/GetOperation30Min;29969'] status: {code: 200, message: OK} - request: body: null @@ -368,41 +304,35 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Compute/virtualMachineScaleSets/pyvmirvm5cc18eb?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Compute/virtualMachineScaleSets/pyvmirvm5cc18eb?api-version=2018-10-01 response: - body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_A1\",\r\n \"\ - tier\": \"Standard\",\r\n \"capacity\": 5\r\n },\r\n \"properties\":\ - \ {\r\n \"singlePlacementGroup\": true,\r\n \"upgradePolicy\": {\r\n\ - \ \"mode\": \"Manual\",\r\n \"automaticOSUpgrade\": false\r\n \ - \ },\r\n \"virtualMachineProfile\": {\r\n \"osProfile\": {\r\n \ - \ \"computerNamePrefix\": \"PyTestInfix\",\r\n \"adminUsername\"\ - : \"Foo12\",\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\"\ - : false,\r\n \"provisionVMAgent\": true\r\n },\r\n \ - \ \"secrets\": [],\r\n \"allowExtensionOperations\": true\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"osDisk\": {\r\n \ - \ \"createOption\": \"FromImage\",\r\n \"caching\": \"None\",\r\n\ - \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\ - \r\n }\r\n },\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\ - \r\n }\r\n },\r\n \"networkProfile\": {\"networkInterfaceConfigurations\"\ - :[{\"name\":\"PyTestInfixnic\",\"properties\":{\"primary\":true,\"enableAcceleratedNetworking\"\ - :false,\"dnsSettings\":{\"dnsServers\":[]},\"enableIPForwarding\":false,\"\ - ipConfigurations\":[{\"name\":\"PyTestInfixipconfig\",\"properties\":{\"subnet\"\ - :{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\"\ - },\"privateIPAddressVersion\":\"IPv4\"}}]}}]}\r\n },\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"overprovision\": true,\r\n \"uniqueId\": \"1bfeb98c-4800-46ed-a794-0ede0003daf9\"\ - \r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachineScaleSets\",\r\n\ - \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Compute/virtualMachineScaleSets/pyvmirvm5cc18eb\"\ - ,\r\n \"name\": \"pyvmirvm5cc18eb\"\r\n}"} + body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_A1\",\r\n \"tier\": + \"Standard\",\r\n \"capacity\": 5\r\n },\r\n \"properties\": {\r\n \"singlePlacementGroup\": + true,\r\n \"upgradePolicy\": {\r\n \"mode\": \"Manual\"\r\n },\r\n + \ \"virtualMachineProfile\": {\r\n \"osProfile\": {\r\n \"computerNamePrefix\": + \"PyTestInfix\",\r\n \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\": + {\r\n \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\": + true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\": + true\r\n },\r\n \"storageProfile\": {\r\n \"osDisk\": {\r\n + \ \"createOption\": \"FromImage\",\r\n \"caching\": \"None\",\r\n + \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\r\n + \ }\r\n },\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n }\r\n },\r\n + \ \"networkProfile\": {\"networkInterfaceConfigurations\":[{\"name\":\"PyTestInfixnic\",\"properties\":{\"primary\":true,\"enableAcceleratedNetworking\":false,\"dnsSettings\":{\"dnsServers\":[]},\"enableIPForwarding\":false,\"ipConfigurations\":[{\"name\":\"PyTestInfixipconfig\",\"properties\":{\"subnet\":{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb\"},\"privateIPAddressVersion\":\"IPv4\"}}]}}]}\r\n + \ },\r\n \"provisioningState\": \"Succeeded\",\r\n \"overprovision\": + true,\r\n \"uniqueId\": \"e04d1325-f741-4bb5-b056-51aab8258810\"\r\n },\r\n + \ \"type\": \"Microsoft.Compute/virtualMachineScaleSets\",\r\n \"location\": + \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Compute/virtualMachineScaleSets/pyvmirvm5cc18eb\",\r\n + \ \"name\": \"pyvmirvm5cc18eb\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['2007'] + content-length: ['1971'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:39:47 GMT'] + date: ['Fri, 28 Sep 2018 17:48:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -410,6 +340,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetVMScaleSet3Min;194,Microsoft.Compute/GetVMScaleSet30Min;1494'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetVMScaleSet3Min;194,Microsoft.Compute/GetVMScaleSet30Min;1294'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_vm_implicit_md.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_vm_implicit_md.yaml index be86c18808b9..229a163ffb61 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_vm_implicit_md.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_create_vm_implicit_md.yaml @@ -2,38 +2,39 @@ interactions: - request: body: '{"location": "westus", "properties": {"addressSpace": {"addressPrefixes": ["10.0.0.0/16"]}, "subnets": [{"properties": {"addressPrefix": "10.0.0.0/24"}, - "name": "pyvmirsub9bd146b"}]}}' + "name": "pyvmirsub9bd146b"}], "enableDdosProtection": false, "enableVmProtection": + false}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['183'] + Content-Length: ['243'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnet9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b\"\ - ,\r\n \"etag\": \"W/\\\"64c083b9-3eb4-4c40-9de7-279cc2a038a1\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"036c7e38-bec3-4e4b-86b0-635c5ab9f043\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsub9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\"\ - ,\r\n \"etag\": \"W/\\\"64c083b9-3eb4-4c40-9de7-279cc2a038a1\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/49860094-50ae-4fac-8f8b-e6f99443b8f3?api-version=2018-02-01'] + body: {string: "{\r\n \"name\": \"pyvmirnet9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b\",\r\n + \ \"etag\": \"W/\\\"8bd22969-4efa-47f9-85f6-9d6199557803\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"resourceGuid\": + \"c771853b-a553-4c6c-94fb-f0444eb93f73\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsub9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\",\r\n + \ \"etag\": \"W/\\\"8bd22969-4efa-47f9-85f6-9d6199557803\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a24af8ef-8b5f-4eb9-988e-f1d37cce3650?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1176'] + content-length: ['1268'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:00 GMT'] + date: ['Fri, 28 Sep 2018 17:20:14 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -47,17 +48,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/49860094-50ae-4fac-8f8b-e6f99443b8f3?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a24af8ef-8b5f-4eb9-988e-f1d37cce3650?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:05 GMT'] + date: ['Fri, 28 Sep 2018 17:20:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -72,17 +73,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/49860094-50ae-4fac-8f8b-e6f99443b8f3?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a24af8ef-8b5f-4eb9-988e-f1d37cce3650?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:16 GMT'] + date: ['Fri, 28 Sep 2018 17:20:28 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -97,30 +98,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnet9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b\"\ - ,\r\n \"etag\": \"W/\\\"4719cad4-b57f-41cb-b500-f6bf88d2a39d\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"036c7e38-bec3-4e4b-86b0-635c5ab9f043\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsub9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\"\ - ,\r\n \"etag\": \"W/\\\"4719cad4-b57f-41cb-b500-f6bf88d2a39d\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n }\r\ - \n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ - : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnet9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b\",\r\n + \ \"etag\": \"W/\\\"cd024be0-62e0-4f24-8f0d-213a53e58874\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": + \"c771853b-a553-4c6c-94fb-f0444eb93f73\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsub9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\",\r\n + \ \"etag\": \"W/\\\"cd024be0-62e0-4f24-8f0d-213a53e58874\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1178'] + content-length: ['1270'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:17 GMT'] - etag: [W/"4719cad4-b57f-41cb-b500-f6bf88d2a39d"] + date: ['Fri, 28 Sep 2018 17:20:29 GMT'] + etag: [W/"cd024be0-62e0-4f24-8f0d-213a53e58874"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -135,23 +136,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirsub9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\"\ - ,\r\n \"etag\": \"W/\\\"4719cad4-b57f-41cb-b500-f6bf88d2a39d\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirsub9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\",\r\n + \ \"etag\": \"W/\\\"cd024be0-62e0-4f24-8f0d-213a53e58874\\\"\",\r\n \"properties\": + {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.0.0.0/24\",\r\n + \ \"delegations\": []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['414'] + content-length: ['494'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:17 GMT'] - etag: [W/"4719cad4-b57f-41cb-b500-f6bf88d2a39d"] + date: ['Fri, 28 Sep 2018 17:20:29 GMT'] + etag: [W/"cd024be0-62e0-4f24-8f0d-213a53e58874"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -163,45 +163,44 @@ interactions: - request: body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"ipConfigurations": [{"properties": {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b", - "properties": {"addressPrefix": "10.0.0.0/24", "provisioningState": "Succeeded"}, - "name": "pyvmirsub9bd146b", "etag": "W/\\\\\\\\\\\\\\\\"4719cad4-b57f-41cb-b500-f6bf88d2a39d\\\\\\\\\\\\\\\\""}}, + "properties": {"addressPrefix": "10.0.0.0/24", "delegations": [], "provisioningState": + "Succeeded"}, "name": "pyvmirsub9bd146b", "etag": "W/\\\\\\\\\\\\\\\\"cd024be0-62e0-4f24-8f0d-213a53e58874\\\\\\\\\\\\\\\\""}}, "name": "pyarmconfig"}]}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['537'] + Content-Length: ['556'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnic9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"\ - ,\r\n \"etag\": \"W/\\\"8cfa9197-f4e2-4789-abdd-1d71c60abbd8\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"1771de10-75f8-4a87-a1cf-5076fdd3fe5b\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"8cfa9197-f4e2-4789-abdd-1d71c60abbd8\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - hb5gya4dxzfu3bvqmnofvopqid.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d9b4ae59-1c4a-45f9-98ea-00cded06806b?api-version=2018-02-01'] + body: {string: "{\r\n \"name\": \"pyvmirnic9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\",\r\n + \ \"etag\": \"W/\\\"1262995f-41c5-4441-9e87-0b78e0dfd703\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"c0d086d6-58bf-4957-82fd-4fcc4f46562f\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"1262995f-41c5-4441-9e87-0b78e0dfd703\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"hocxdr0tuvwezfh14bce3oj5od.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c91b77be-b27e-4c6b-b379-59ae42fe5f7f?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1744'] + content-length: ['1814'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:20 GMT'] + date: ['Fri, 28 Sep 2018 17:20:30 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -215,17 +214,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d9b4ae59-1c4a-45f9-98ea-00cded06806b?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c91b77be-b27e-4c6b-b379-59ae42fe5f7f?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:51 GMT'] + date: ['Fri, 28 Sep 2018 17:21:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -240,35 +239,34 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnic9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"\ - ,\r\n \"etag\": \"W/\\\"8cfa9197-f4e2-4789-abdd-1d71c60abbd8\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"1771de10-75f8-4a87-a1cf-5076fdd3fe5b\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"8cfa9197-f4e2-4789-abdd-1d71c60abbd8\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - hb5gya4dxzfu3bvqmnofvopqid.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnic9bd146b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\",\r\n + \ \"etag\": \"W/\\\"1262995f-41c5-4441-9e87-0b78e0dfd703\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"c0d086d6-58bf-4957-82fd-4fcc4f46562f\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"1262995f-41c5-4441-9e87-0b78e0dfd703\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"hocxdr0tuvwezfh14bce3oj5od.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['1744'] + content-length: ['1814'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:52 GMT'] - etag: [W/"8cfa9197-f4e2-4789-abdd-1d71c60abbd8"] + date: ['Fri, 28 Sep 2018 17:21:01 GMT'] + etag: [W/"1262995f-41c5-4441-9e87-0b78e0dfd703"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -290,43 +288,41 @@ interactions: Connection: [keep-alive] Content-Length: ['610'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"6da6cba8-137b-4c4e-88a8-7cab9d83e457\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\"\ - ,\r\n \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\ - \r\n }\r\n },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\"\ - : {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\"\ - ,\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\"\ - : false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\"\ - : [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\"\ - : {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"\ - }]},\r\n \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b\"\ - ,\r\n \"name\": \"pyvmirvm9bd146b\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/853191e6-e8d9-4b0a-87ce-2e680ec27262?api-version=2018-06-01'] + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"3e275daf-7330-4595-a824-c2f0f5ad0ee6\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"createOption\": \"FromImage\",\r\n + \ \"caching\": \"ReadWrite\",\r\n \"managedDisk\": {\r\n \"storageAccountType\": + \"Standard_LRS\"\r\n }\r\n },\r\n \"dataDisks\": []\r\n },\r\n + \ \"osProfile\": {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": + \"Foo12\",\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"}]},\r\n + \ \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b\",\r\n + \ \"name\": \"pyvmirvm9bd146b\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/1fccc659-2acc-4586-befc-fc095bdb3c6a?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['1441'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:31:55 GMT'] + date: ['Fri, 28 Sep 2018 17:21:02 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1199'] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -334,19 +330,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/853191e6-e8d9-4b0a-87ce-2e680ec27262?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/1fccc659-2acc-4586-befc-fc095bdb3c6a?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:31:55.1845156+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"853191e6-e8d9-4b0a-87ce-2e680ec27262\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:21:02.3695429+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"1fccc659-2acc-4586-befc-fc095bdb3c6a\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:32:05 GMT'] + date: ['Fri, 28 Sep 2018 17:21:12 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -354,35 +349,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14999,Microsoft.Compute/GetOperation30Min;29996'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/853191e6-e8d9-4b0a-87ce-2e680ec27262?api-version=2018-06-01 - response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:31:55.1845156+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"853191e6-e8d9-4b0a-87ce-2e680ec27262\"\ - \r\n}"} - headers: - cache-control: [no-cache] - content-length: ['134'] - content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:32:36 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14996,Microsoft.Compute/GetOperation30Min;29993'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14990,Microsoft.Compute/GetOperation30Min;29987'] status: {code: 200, message: OK} - request: body: null @@ -390,19 +357,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/853191e6-e8d9-4b0a-87ce-2e680ec27262?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/1fccc659-2acc-4586-befc-fc095bdb3c6a?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:31:55.1845156+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"853191e6-e8d9-4b0a-87ce-2e680ec27262\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:21:02.3695429+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"1fccc659-2acc-4586-befc-fc095bdb3c6a\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:33:08 GMT'] + date: ['Fri, 28 Sep 2018 17:21:42 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -410,7 +376,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14993,Microsoft.Compute/GetOperation30Min;29990'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14989,Microsoft.Compute/GetOperation30Min;29984'] status: {code: 200, message: OK} - request: body: null @@ -418,19 +384,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/853191e6-e8d9-4b0a-87ce-2e680ec27262?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/1fccc659-2acc-4586-befc-fc095bdb3c6a?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:31:55.1845156+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"853191e6-e8d9-4b0a-87ce-2e680ec27262\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:21:02.3695429+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"1fccc659-2acc-4586-befc-fc095bdb3c6a\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:33:42 GMT'] + date: ['Fri, 28 Sep 2018 17:22:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -438,7 +403,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14990,Microsoft.Compute/GetOperation30Min;29987'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14989,Microsoft.Compute/GetOperation30Min;29981'] status: {code: 200, message: OK} - request: body: null @@ -446,19 +411,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/853191e6-e8d9-4b0a-87ce-2e680ec27262?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/1fccc659-2acc-4586-befc-fc095bdb3c6a?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:31:55.1845156+00:00\",\r\ - \n \"endTime\": \"2018-07-20T19:33:52.6089944+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"853191e6-e8d9-4b0a-87ce-2e680ec27262\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:21:02.3695429+00:00\",\r\n + \ \"endTime\": \"2018-09-28T17:22:37.0139968+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"1fccc659-2acc-4586-befc-fc095bdb3c6a\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:34:12 GMT'] + date: ['Fri, 28 Sep 2018 17:22:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -466,7 +431,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14988,Microsoft.Compute/GetOperation30Min;29985'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29977'] status: {code: 200, message: OK} - request: body: null @@ -474,37 +439,34 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"6da6cba8-137b-4c4e-88a8-7cab9d83e457\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"pyvmirvm9bd146b_OsDisk_1_b5b630048cb34ce9b48f7ce25f52b837\"\ - ,\r\n \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\"\ - ,\r\n \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/pyvmirvm9bd146b_OsDisk_1_b5b630048cb34ce9b48f7ce25f52b837\"\ - \r\n },\r\n \"diskSizeGB\": 30\r\n },\r\n \"dataDisks\"\ - : []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\"\ - ,\r\n \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\":\ - \ {\r\n \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\"\ - : true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\"\ - : true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\"\ - :\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"\ - }]},\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b\"\ - ,\r\n \"name\": \"pyvmirvm9bd146b\"\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"3e275daf-7330-4595-a824-c2f0f5ad0ee6\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"pyvmirvm9bd146b_OsDisk_1_f80823ea07b94e3686dec0fddbda9d31\",\r\n + \ \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\",\r\n + \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\",\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/pyvmirvm9bd146b_OsDisk_1_f80823ea07b94e3686dec0fddbda9d31\"\r\n + \ },\r\n \"diskSizeGB\": 30\r\n },\r\n \"dataDisks\": + []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\",\r\n + \ \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\": {\r\n + \ \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\": + true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\": + true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"}]},\r\n + \ \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b\",\r\n + \ \"name\": \"pyvmirvm9bd146b\"\r\n}"} headers: cache-control: [no-cache] content-length: ['1784'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:34:13 GMT'] + date: ['Fri, 28 Sep 2018 17:22:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -512,7 +474,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4196,Microsoft.Compute/LowCostGet30Min;33584'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3995,Microsoft.Compute/LowCostGet30Min;31989'] status: {code: 200, message: OK} - request: body: '{"location": "westus", "properties": {"creationData": {"createOption": @@ -523,30 +485,30 @@ interactions: Connection: [keep-alive] Content-Length: ['99'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk?api-version=2018-06-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"\ - createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\": 20,\r\n \"provisioningState\"\ - : \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\":\ - \ \"westus\",\r\n \"name\": \"mySecondDisk\"\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"createOption\": + \"Empty\"\r\n },\r\n \"diskSizeGB\": 20,\r\n \"provisioningState\": + \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\": \"westus\",\r\n + \ \"name\": \"mySecondDisk\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/138dc38a-a6be-4be9-abc1-cf8e7afe6dbd?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/62c7574e-062f-4177-a9ce-a0e85f99ed37?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['230'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:34:14 GMT'] + date: ['Fri, 28 Sep 2018 17:22:45 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/138dc38a-a6be-4be9-abc1-cf8e7afe6dbd?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/62c7574e-062f-4177-a9ce-a0e85f99ed37?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/CreateUpdateDisks3Min;998,Microsoft.Compute/CreateUpdateDisks30Min;3998'] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/CreateUpdateDisks3Min;998,Microsoft.Compute/CreateUpdateDisks30Min;3997'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: body: null @@ -554,25 +516,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/138dc38a-a6be-4be9-abc1-cf8e7afe6dbd?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/62c7574e-062f-4177-a9ce-a0e85f99ed37?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:34:15.0985166+00:00\",\r\ - \n \"endTime\": \"2018-07-20T19:34:15.3016555+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ - :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ - :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-07-20T19:34:15.0985166+00:00\"\ - ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ - :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk\"\ - ,\"name\":\"mySecondDisk\"}\r\n },\r\n \"name\": \"138dc38a-a6be-4be9-abc1-cf8e7afe6dbd\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:22:45.2214563+00:00\",\r\n + \ \"endTime\": \"2018-09-28T17:22:45.4714362+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"properties\": {\r\n \"output\": {\"sku\":{\"name\":\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\":{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-09-28T17:22:45.2370765+00:00\",\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\":\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk\",\"name\":\"mySecondDisk\"}\r\n + \ },\r\n \"name\": \"62c7574e-062f-4177-a9ce-a0e85f99ed37\"\r\n}"} headers: cache-control: [no-cache] content-length: ['706'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:34:45 GMT'] + date: ['Fri, 28 Sep 2018 17:23:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -580,7 +537,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49996,Microsoft.Compute/GetOperation30Min;249994'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49998,Microsoft.Compute/GetOperation30Min;249998'] status: {code: 200, message: OK} - request: body: null @@ -588,24 +545,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk?api-version=2018-06-01 response: - body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ - tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ - : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-07-20T19:34:15.0985166+00:00\",\r\n \ - \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ - \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ - westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk\"\ - ,\r\n \"name\": \"mySecondDisk\"\r\n}"} + body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": + \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\": {\r\n + \ \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\": 20,\r\n + \ \"timeCreated\": \"2018-09-28T17:22:45.2370765+00:00\",\r\n \"provisioningState\": + \"Succeeded\",\r\n \"diskState\": \"Unattached\"\r\n },\r\n \"type\": + \"Microsoft.Compute/disks\",\r\n \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk\",\r\n + \ \"name\": \"mySecondDisk\"\r\n}"} headers: cache-control: [no-cache] content-length: ['585'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:34:46 GMT'] + date: ['Fri, 28 Sep 2018 17:23:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -613,15 +569,15 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4997,Microsoft.Compute/LowCostGet30Min;19996'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4996,Microsoft.Compute/LowCostGet30Min;19995'] status: {code: 200, message: OK} - request: body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"hardwareProfile": {"vmSize": "Standard_A0"}, "storageProfile": {"imageReference": {"publisher": "Canonical", "offer": "UbuntuServer", "sku": "16.04.0-LTS", "version": "latest"}, - "osDisk": {"osType": "Linux", "name": "pyvmirvm9bd146b_OsDisk_1_b5b630048cb34ce9b48f7ce25f52b837", + "osDisk": {"osType": "Linux", "name": "pyvmirvm9bd146b_OsDisk_1_f80823ea07b94e3686dec0fddbda9d31", "caching": "ReadWrite", "createOption": "FromImage", "diskSizeGB": 30, "managedDisk": - {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/pyvmirvm9bd146b_OsDisk_1_b5b630048cb34ce9b48f7ce25f52b837", + {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/pyvmirvm9bd146b_OsDisk_1_f80823ea07b94e3686dec0fddbda9d31", "storageAccountType": "Standard_LRS"}}, "dataDisks": [{"lun": 12, "name": "mySecondDisk", "createOption": "Attach", "managedDisk": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk"}}]}, "osProfile": {"computerName": "test", "adminUsername": "Foo12", "linuxConfiguration": @@ -634,44 +590,41 @@ interactions: Connection: [keep-alive] Content-Length: ['1392'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"6da6cba8-137b-4c4e-88a8-7cab9d83e457\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"pyvmirvm9bd146b_OsDisk_1_b5b630048cb34ce9b48f7ce25f52b837\"\ - ,\r\n \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\"\ - ,\r\n \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/pyvmirvm9bd146b_OsDisk_1_b5b630048cb34ce9b48f7ce25f52b837\"\ - \r\n },\r\n \"diskSizeGB\": 30\r\n },\r\n \"dataDisks\"\ - : [\r\n {\r\n \"lun\": 12,\r\n \"name\": \"mySecondDisk\"\ - ,\r\n \"createOption\": \"Attach\",\r\n \"caching\": \"\ - None\",\r\n \"managedDisk\": {\r\n \"storageAccountType\"\ - : \"Standard_LRS\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk\"\ - \r\n },\r\n \"diskSizeGB\": 20\r\n }\r\n ]\r\ - \n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\",\r\n\ - \ \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\": {\r\n\ - \ \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\"\ - : true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\"\ - : true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\"\ - :\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"\ - }]},\r\n \"provisioningState\": \"Updating\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b\"\ - ,\r\n \"name\": \"pyvmirvm9bd146b\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/ab33f265-1de6-4e43-bf2e-9a5a04d089c4?api-version=2018-06-01'] + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"3e275daf-7330-4595-a824-c2f0f5ad0ee6\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"pyvmirvm9bd146b_OsDisk_1_f80823ea07b94e3686dec0fddbda9d31\",\r\n + \ \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\",\r\n + \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\",\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/pyvmirvm9bd146b_OsDisk_1_f80823ea07b94e3686dec0fddbda9d31\"\r\n + \ },\r\n \"diskSizeGB\": 30\r\n },\r\n \"dataDisks\": + [\r\n {\r\n \"lun\": 12,\r\n \"name\": \"mySecondDisk\",\r\n + \ \"createOption\": \"Attach\",\r\n \"caching\": \"None\",\r\n + \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\",\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk\"\r\n + \ },\r\n \"diskSizeGB\": 20\r\n }\r\n ]\r\n },\r\n + \ \"osProfile\": {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": + \"Foo12\",\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"}]},\r\n + \ \"provisioningState\": \"Updating\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b\",\r\n + \ \"name\": \"pyvmirvm9bd146b\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/9ffbffda-3ee9-430e-8446-f87285bf6a28?api-version=2018-10-01'] cache-control: [no-cache] content-length: ['2251'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:34:48 GMT'] + date: ['Fri, 28 Sep 2018 17:23:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -679,7 +632,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1198'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;238,Microsoft.Compute/PutVM30Min;1197'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: @@ -688,19 +641,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/ab33f265-1de6-4e43-bf2e-9a5a04d089c4?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/9ffbffda-3ee9-430e-8446-f87285bf6a28?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:34:48.8166067+00:00\",\r\ - \n \"endTime\": \"2018-07-20T19:35:03.2205728+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"ab33f265-1de6-4e43-bf2e-9a5a04d089c4\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:23:16.6211091+00:00\",\r\n + \ \"endTime\": \"2018-09-28T17:23:22.5739667+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"9ffbffda-3ee9-430e-8446-f87285bf6a28\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:35:19 GMT'] + date: ['Fri, 28 Sep 2018 17:23:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -708,7 +661,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14989,Microsoft.Compute/GetOperation30Min;29986'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14986,Microsoft.Compute/GetOperation30Min;29975'] status: {code: 200, message: OK} - request: body: null @@ -716,42 +669,39 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"6da6cba8-137b-4c4e-88a8-7cab9d83e457\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"pyvmirvm9bd146b_OsDisk_1_b5b630048cb34ce9b48f7ce25f52b837\"\ - ,\r\n \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\"\ - ,\r\n \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/pyvmirvm9bd146b_OsDisk_1_b5b630048cb34ce9b48f7ce25f52b837\"\ - \r\n },\r\n \"diskSizeGB\": 30\r\n },\r\n \"dataDisks\"\ - : [\r\n {\r\n \"lun\": 12,\r\n \"name\": \"mySecondDisk\"\ - ,\r\n \"createOption\": \"Attach\",\r\n \"caching\": \"\ - None\",\r\n \"managedDisk\": {\r\n \"storageAccountType\"\ - : \"Standard_LRS\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk\"\ - \r\n },\r\n \"diskSizeGB\": 20\r\n }\r\n ]\r\ - \n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\",\r\n\ - \ \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\": {\r\n\ - \ \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\"\ - : true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\"\ - : true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\"\ - :\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"\ - }]},\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b\"\ - ,\r\n \"name\": \"pyvmirvm9bd146b\"\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"3e275daf-7330-4595-a824-c2f0f5ad0ee6\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"pyvmirvm9bd146b_OsDisk_1_f80823ea07b94e3686dec0fddbda9d31\",\r\n + \ \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\",\r\n + \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\",\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/pyvmirvm9bd146b_OsDisk_1_f80823ea07b94e3686dec0fddbda9d31\"\r\n + \ },\r\n \"diskSizeGB\": 30\r\n },\r\n \"dataDisks\": + [\r\n {\r\n \"lun\": 12,\r\n \"name\": \"mySecondDisk\",\r\n + \ \"createOption\": \"Attach\",\r\n \"caching\": \"None\",\r\n + \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\",\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/disks/mySecondDisk\"\r\n + \ },\r\n \"diskSizeGB\": 20\r\n }\r\n ]\r\n },\r\n + \ \"osProfile\": {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": + \"Foo12\",\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b\"}]},\r\n + \ \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Compute/virtualMachines/pyvmirvm9bd146b\",\r\n + \ \"name\": \"pyvmirvm9bd146b\"\r\n}"} headers: cache-control: [no-cache] content-length: ['2252'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:35:20 GMT'] + date: ['Fri, 28 Sep 2018 17:23:47 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -759,6 +709,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4191,Microsoft.Compute/LowCostGet30Min;33582'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3988,Microsoft.Compute/LowCostGet30Min;31982'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_empty_md.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_empty_md.yaml index f0c05fbb0216..bf6f9841f94a 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_empty_md.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_empty_md.yaml @@ -8,30 +8,30 @@ interactions: Connection: [keep-alive] Content-Length: ['99'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_empty_md20c90f2a/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_empty_md20c90f2a/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-06-01 response: body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"\ createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\": 20,\r\n \"provisioningState\"\ : \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\":\ \ \"westus\",\r\n \"name\": \"my_disk_name\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/d4c4e808-18e8-4b91-a1e2-59512b3ff60d?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/5c4a08f1-d800-4520-a825-721e258c3725?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['230'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:30:03 GMT'] + date: ['Mon, 10 Sep 2018 23:19:29 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/d4c4e808-18e8-4b91-a1e2-59512b3ff60d?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/5c4a08f1-d800-4520-a825-721e258c3725?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/CreateUpdateDisks3Min;998,Microsoft.Compute/CreateUpdateDisks30Min;3994'] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/CreateUpdateDisks3Min;997,Microsoft.Compute/CreateUpdateDisks30Min;3994'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: body: null @@ -39,25 +39,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/d4c4e808-18e8-4b91-a1e2-59512b3ff60d?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/5c4a08f1-d800-4520-a825-721e258c3725?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:30:04.0463126+00:00\",\r\ - \n \"endTime\": \"2018-03-21T21:30:04.2962841+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:19:29.8435248+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:19:29.9841198+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ - :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-03-21T21:30:04.0463126+00:00\"\ + :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-09-10T23:19:29.8435248+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_empty_md20c90f2a/providers/Microsoft.Compute/disks/my_disk_name\"\ - ,\"name\":\"my_disk_name\"}\r\n },\r\n \"name\": \"d4c4e808-18e8-4b91-a1e2-59512b3ff60d\"\ + ,\"name\":\"my_disk_name\"}\r\n },\r\n \"name\": \"5c4a08f1-d800-4520-a825-721e258c3725\"\ \r\n}"} headers: cache-control: [no-cache] content-length: ['694'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:30:34 GMT'] + date: ['Mon, 10 Sep 2018 23:20:00 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -65,7 +65,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49996,Microsoft.Compute/GetOperation30Min;249976'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49996,Microsoft.Compute/GetOperation30Min;249980'] status: {code: 200, message: OK} - request: body: null @@ -73,15 +73,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_empty_md20c90f2a/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_empty_md20c90f2a/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:30:04.0463126+00:00\",\r\n \ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:19:29.8435248+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_empty_md20c90f2a/providers/Microsoft.Compute/disks/my_disk_name\"\ @@ -90,7 +90,7 @@ interactions: cache-control: [no-cache] content-length: ['573'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:30:34 GMT'] + date: ['Mon, 10 Sep 2018 23:20:00 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -98,6 +98,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4995,Microsoft.Compute/LowCostGet30Min;19985'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4994,Microsoft.Compute/LowCostGet30Min;19979'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_grant_access.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_grant_access.yaml new file mode 100644 index 000000000000..35800a9f79e2 --- /dev/null +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_grant_access.yaml @@ -0,0 +1,191 @@ +interactions: +- request: + body: '{"location": "westus", "properties": {"creationData": {"createOption": + "Empty"}, "diskSizeGB": 20}}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['99'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_grant_access609310b8/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-06-01 + response: + body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ + tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ + : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ + \ 20,\r\n \"provisioningState\": \"Updating\",\r\n \"isArmResource\"\ + : true,\r\n \"faultDomain\": 0\r\n },\r\n \"location\": \"westus\",\r\ + \n \"name\": \"my_disk_name\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/7db72277-5593-47a1-9052-2abfb61c958d?api-version=2018-06-01'] + cache-control: [no-cache] + content-length: ['324'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 25 Sep 2018 18:27:19 GMT'] + expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/7db72277-5593-47a1-9052-2abfb61c958d?monitor=true&api-version=2018-06-01'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/CreateUpdateDisks3Min;999,Microsoft.Compute/CreateUpdateDisks30Min;3998'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.1.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/7db72277-5593-47a1-9052-2abfb61c958d?api-version=2018-06-01 + response: + body: {string: "{\r\n \"startTime\": \"2018-09-25T18:27:19.9691669+00:00\",\r\ + \n \"endTime\": \"2018-09-25T18:27:20.1254636+00:00\",\r\n \"status\": \"\ + Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ + :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ + :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-09-25T18:23:01.8100645+00:00\"\ + ,\"provisioningState\":\"Succeeded\",\"diskState\":\"ActiveSAS\"},\"type\"\ + :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_grant_access609310b8/providers/Microsoft.Compute/disks/my_disk_name\"\ + ,\"name\":\"my_disk_name\"}\r\n },\r\n \"name\": \"7db72277-5593-47a1-9052-2abfb61c958d\"\ + \r\n}"} + headers: + cache-control: [no-cache] + content-length: ['697'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 25 Sep 2018 18:27:50 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49998,Microsoft.Compute/GetOperation30Min;249993'] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.1.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_grant_access609310b8/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-06-01 + response: + body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ + tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ + : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ + \ 20,\r\n \"timeCreated\": \"2018-09-25T18:23:01.8100645+00:00\",\r\n \ + \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"ActiveSAS\"\ + \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ + westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_grant_access609310b8/providers/Microsoft.Compute/disks/my_disk_name\"\ + ,\r\n \"name\": \"my_disk_name\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['576'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 25 Sep 2018 18:27:51 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4997,Microsoft.Compute/LowCostGet30Min;19994'] + status: {code: 200, message: OK} +- request: + body: '{"access": "Read", "durationInSeconds": 1}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['42'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.1.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_grant_access609310b8/providers/Microsoft.Compute/disks/my_disk_name/beginGetAccess?api-version=2018-06-01 + response: + body: {string: ''} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/993880d3-35d5-4d69-95a1-e41256ac1613?api-version=2018-06-01'] + cache-control: [no-cache] + content-length: ['0'] + date: ['Tue, 25 Sep 2018 18:27:51 GMT'] + expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/993880d3-35d5-4d69-95a1-e41256ac1613?monitor=true&api-version=2018-06-01'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/HighCostDiskHydrate3Min;999,Microsoft.Compute/HighCostDiskHydrate30Min;4998'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.1.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/993880d3-35d5-4d69-95a1-e41256ac1613?api-version=2018-06-01 + response: + body: {string: "{\r\n \"startTime\": \"2018-09-25T18:27:51.654499+00:00\",\r\n\ + \ \"endTime\": \"2018-09-25T18:27:51.8264577+00:00\",\r\n \"status\": \"\ + Succeeded\",\r\n \"properties\": {\r\n \"output\": {\r\n \"accessSAS\"\ + : \"https://md-vdd32wngvswn.blob.core.windows.net/xxggg2fjdrc0/abcd?sv=2017-04-17&sr=b&si=65f2b00c-36ab-4483-928b-cef4b46bbffa&sig=TFnp%2BE69nqvjmIf%2Bpi9dX8cIiHQ9nxeDmIioKslwxvs%3D\"\ + \r\n}\r\n },\r\n \"name\": \"993880d3-35d5-4d69-95a1-e41256ac1613\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['424'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 25 Sep 2018 18:28:22 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49996,Microsoft.Compute/GetOperation30Min;249991'] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.1.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/993880d3-35d5-4d69-95a1-e41256ac1613?monitor=true&api-version=2018-06-01 + response: + body: {string: "{\r\n \"accessSAS\": \"https://md-vdd32wngvswn.blob.core.windows.net/xxggg2fjdrc0/abcd?sv=2017-04-17&sr=b&si=65f2b00c-36ab-4483-928b-cef4b46bbffa&sig=TFnp%2BE69nqvjmIf%2Bpi9dX8cIiHQ9nxeDmIioKslwxvs%3D\"\ + \r\n}"} + headers: + cache-control: [no-cache] + content-length: ['200'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 25 Sep 2018 18:28:22 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49995,Microsoft.Compute/GetOperation30Min;249990'] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_list_disks.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_list_disks.yaml index 6ae508a69dfb..af1b5ef9bd9e 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_list_disks.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_list_disks.yaml @@ -5,19 +5,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_list_disks403a1004/providers/Microsoft.Compute/disks?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_list_disks403a1004/providers/Microsoft.Compute/disks?api-version=2018-06-01 response: body: {string: '{"value":[]}'} headers: cache-control: [no-cache] content-length: ['12'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:30:41 GMT'] + date: ['Mon, 10 Sep 2018 23:20:06 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_list_disks_fake.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_list_disks_fake.yaml index 1defa202893b..02273e99cfd4 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_list_disks_fake.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_list_disks_fake.yaml @@ -5,12 +5,11 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fakename/providers/Microsoft.Compute/disks?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fakename/providers/Microsoft.Compute/disks?api-version=2018-06-01 response: body: {string: '{"error":{"code":"ResourceGroupNotFound","message":"Resource group ''fakename'' could not be found."}}'} @@ -18,7 +17,7 @@ interactions: cache-control: [no-cache] content-length: ['100'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:30:45 GMT'] + date: ['Mon, 10 Sep 2018 23:20:10 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_md_from_md_id.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_md_from_md_id.yaml index 15b78c41d850..a2c42a4c121b 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_md_from_md_id.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_md_from_md_id.yaml @@ -8,24 +8,24 @@ interactions: Connection: [keep-alive] Content-Length: ['99'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"\ createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\": 20,\r\n \"provisioningState\"\ : \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\":\ \ \"westus\",\r\n \"name\": \"myImageDisk\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/90a1fad3-dead-4667-b592-ae439b1477c8?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f46b81d1-17a5-419d-b4cb-6bcf1af63fbc?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['229'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:30:52 GMT'] + date: ['Mon, 10 Sep 2018 23:20:15 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/90a1fad3-dead-4667-b592-ae439b1477c8?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f46b81d1-17a5-419d-b4cb-6bcf1af63fbc?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -39,25 +39,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/90a1fad3-dead-4667-b592-ae439b1477c8?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f46b81d1-17a5-419d-b4cb-6bcf1af63fbc?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:30:52.136535+00:00\",\r\n\ - \ \"endTime\": \"2018-03-21T21:30:52.292763+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:20:15.9785179+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:20:16.1053974+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ - :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-03-21T21:30:52.1521389+00:00\"\ + :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-09-10T23:20:15.9785179+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk\"\ - ,\"name\":\"myImageDisk\"}\r\n },\r\n \"name\": \"90a1fad3-dead-4667-b592-ae439b1477c8\"\ + ,\"name\":\"myImageDisk\"}\r\n },\r\n \"name\": \"f46b81d1-17a5-419d-b4cb-6bcf1af63fbc\"\ \r\n}"} headers: cache-control: [no-cache] - content-length: ['695'] + content-length: ['697'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:31:21 GMT'] + date: ['Mon, 10 Sep 2018 23:20:45 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -65,7 +65,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49994,Microsoft.Compute/GetOperation30Min;249974'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49994,Microsoft.Compute/GetOperation30Min;249978'] status: {code: 200, message: OK} - request: body: null @@ -73,15 +73,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:30:52.1521389+00:00\",\r\n \ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:20:15.9785179+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk\"\ @@ -90,7 +90,7 @@ interactions: cache-control: [no-cache] content-length: ['576'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:31:23 GMT'] + date: ['Mon, 10 Sep 2018 23:20:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -98,7 +98,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4991,Microsoft.Compute/LowCostGet30Min;19981'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4990,Microsoft.Compute/LowCostGet30Min;19975'] status: {code: 200, message: OK} - request: body: null @@ -106,17 +106,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:30:52.1521389+00:00\",\r\n \ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:20:15.9785179+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk\"\ @@ -125,7 +124,7 @@ interactions: cache-control: [no-cache] content-length: ['576'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:31:23 GMT'] + date: ['Mon, 10 Sep 2018 23:20:47 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -133,22 +132,22 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4990,Microsoft.Compute/LowCostGet30Min;19980'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4989,Microsoft.Compute/LowCostGet30Min;19974'] status: {code: 200, message: OK} - request: - body: 'b''b\''b\\\''{"location": "westus", "properties": {"creationData": {"createOption": - "Copy", "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk"}}}\\\''\''''' + body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"creationData": + {"createOption": "Copy", "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk"}}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['267'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-06-01 response: body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"\ createOption\": \"Copy\",\r\n \"sourceResourceId\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk\"\ @@ -156,13 +155,13 @@ interactions: : true\r\n },\r\n \"location\": \"westus\",\r\n \"name\": \"my_disk_name\"\ \r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/fb849fb2-8666-453a-be4d-1117e1e7646d?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f180adf0-c9b5-499c-a2d2-855cf5fc60c9?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['400'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:31:25 GMT'] + date: ['Mon, 10 Sep 2018 23:20:48 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/fb849fb2-8666-453a-be4d-1117e1e7646d?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f180adf0-c9b5-499c-a2d2-855cf5fc60c9?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -176,26 +175,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/fb849fb2-8666-453a-be4d-1117e1e7646d?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f180adf0-c9b5-499c-a2d2-855cf5fc60c9?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:31:25.4940287+00:00\",\r\ - \n \"endTime\": \"2018-03-21T21:31:26.1754808+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:20:49.1128609+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:20:50.0503913+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ :{\"createOption\":\"Copy\",\"sourceResourceId\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk\"\ - },\"diskSizeGB\":20,\"timeCreated\":\"2018-03-21T21:31:25.4940287+00:00\"\ + },\"diskSizeGB\":20,\"timeCreated\":\"2018-09-10T23:20:49.1285052+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/my_disk_name\"\ - ,\"name\":\"my_disk_name\"}\r\n },\r\n \"name\": \"fb849fb2-8666-453a-be4d-1117e1e7646d\"\ + ,\"name\":\"my_disk_name\"}\r\n },\r\n \"name\": \"f180adf0-c9b5-499c-a2d2-855cf5fc60c9\"\ \r\n}"} headers: cache-control: [no-cache] content-length: ['883'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:31:55 GMT'] + date: ['Mon, 10 Sep 2018 23:21:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -203,7 +202,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49991,Microsoft.Compute/GetOperation30Min;249971'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49991,Microsoft.Compute/GetOperation30Min;249975'] status: {code: 200, message: OK} - request: body: null @@ -211,16 +210,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Copy\",\r\n \"sourceResourceId\": \"\ /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/myImageDisk\"\ - \r\n },\r\n \"diskSizeGB\": 20,\r\n \"timeCreated\": \"2018-03-21T21:31:25.4940287+00:00\"\ + \r\n },\r\n \"diskSizeGB\": 20,\r\n \"timeCreated\": \"2018-09-10T23:20:49.1285052+00:00\"\ ,\r\n \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_md_id7177110b/providers/Microsoft.Compute/disks/my_disk_name\"\ @@ -229,7 +228,7 @@ interactions: cache-control: [no-cache] content-length: ['771'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:31:56 GMT'] + date: ['Mon, 10 Sep 2018 23:21:20 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -237,6 +236,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4987,Microsoft.Compute/LowCostGet30Min;19977'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4986,Microsoft.Compute/LowCostGet30Min;19971'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_md_from_storage_blob.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_md_from_storage_blob.yaml index 756a9cf61e78..a83674ffe496 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_md_from_storage_blob.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_md_from_storage_blob.yaml @@ -13,20 +13,20 @@ interactions: accept-language: [en-US] x-ms-client-request-id: [661f000a-5d38-11e7-865b-ecb1d756380e] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_storage_blobf5ab1401/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_storage_blobf5ab1401/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-06-01 response: body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"createOption\": \"Import\",\r\n \"sourceUri\": \"https://mystorageaccount.blob.core.windows.net/inputtestdatadonotdelete/ubuntu.vhd\"\r\n \ },\r\n \"provisioningState\": \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\": \"westus\"\r\n}"} headers: - Azure-AsyncOperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/0f24271a-d4a7-44a3-b2bd-adbd304fef23?api-version=2018-04-01'] + Azure-AsyncOperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/0f24271a-d4a7-44a3-b2bd-adbd304fef23?api-version=2018-06-01'] Cache-Control: [no-cache] Content-Length: ['290'] Content-Type: [application/json; charset=utf-8] Date: ['Fri, 30 Jun 2017 02:04:07 GMT'] Expires: ['-1'] - Location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/0f24271a-d4a7-44a3-b2bd-adbd304fef23?monitor=true&api-version=2018-04-01'] + Location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/0f24271a-d4a7-44a3-b2bd-adbd304fef23?monitor=true&api-version=2018-06-01'] Pragma: [no-cache] Server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] Strict-Transport-Security: [max-age=31536000; includeSubDomains] @@ -48,7 +48,7 @@ interactions: accept-language: [en-US] x-ms-client-request-id: [661f000a-5d38-11e7-865b-ecb1d756380e] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/0f24271a-d4a7-44a3-b2bd-adbd304fef23?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/0f24271a-d4a7-44a3-b2bd-adbd304fef23?api-version=2018-06-01 response: body: {string: "{\r\n \"startTime\": \"2017-06-30T02:04:06.8961345+00:00\",\r\n \ \"endTime\": \"2017-06-30T02:04:07.7398687+00:00\",\r\n \"status\": \"Succeeded\",\r\n @@ -83,7 +83,7 @@ interactions: accept-language: [en-US] x-ms-client-request-id: [661f000a-5d38-11e7-865b-ecb1d756380e] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_storage_blobf5ab1401/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_md_from_storage_blobf5ab1401/providers/Microsoft.Compute/disks/my_disk_name?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\": {\r\n diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_resize_md.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_resize_md.yaml index f14b47b95d35..36eb85aef5f3 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_resize_md.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_managed_disks.test_resize_md.yaml @@ -8,24 +8,24 @@ interactions: Connection: [keep-alive] Content-Length: ['99'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"properties\": {\r\n \"creationData\": {\r\n \"\ createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\": 20,\r\n \"provisioningState\"\ : \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\":\ \ \"westus\",\r\n \"name\": \"myDisk\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/24116125-9ce7-48e8-83fa-f13627f8c73c?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/dbdf2a97-cf42-4cc5-bf7b-d7451a63bd73?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['224'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:32:11 GMT'] + date: ['Mon, 10 Sep 2018 23:21:33 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/24116125-9ce7-48e8-83fa-f13627f8c73c?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/dbdf2a97-cf42-4cc5-bf7b-d7451a63bd73?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -39,25 +39,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/24116125-9ce7-48e8-83fa-f13627f8c73c?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/dbdf2a97-cf42-4cc5-bf7b-d7451a63bd73?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:32:11.8178207+00:00\",\r\ - \n \"endTime\": \"2018-03-21T21:32:11.9740591+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:21:34.4331292+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:21:34.5893633+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ - :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-03-21T21:32:11.8178207+00:00\"\ + :{\"createOption\":\"Empty\"},\"diskSizeGB\":20,\"timeCreated\":\"2018-09-10T23:21:34.4487541+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk\"\ - ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"24116125-9ce7-48e8-83fa-f13627f8c73c\"\ + ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"dbdf2a97-cf42-4cc5-bf7b-d7451a63bd73\"\ \r\n}"} headers: cache-control: [no-cache] content-length: ['683'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:32:42 GMT'] + date: ['Mon, 10 Sep 2018 23:22:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -65,7 +65,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49990,Microsoft.Compute/GetOperation30Min;249968'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49990,Microsoft.Compute/GetOperation30Min;249972'] status: {code: 200, message: OK} - request: body: null @@ -73,15 +73,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:32:11.8178207+00:00\",\r\n \ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:21:34.4487541+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk\"\ @@ -90,7 +90,7 @@ interactions: cache-control: [no-cache] content-length: ['562'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:32:42 GMT'] + date: ['Mon, 10 Sep 2018 23:22:05 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -98,7 +98,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4985,Microsoft.Compute/LowCostGet30Min;19972'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4985,Microsoft.Compute/LowCostGet30Min;19966'] status: {code: 200, message: OK} - request: body: null @@ -106,17 +106,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 20,\r\n \"timeCreated\": \"2018-03-21T21:32:11.8178207+00:00\",\r\n \ + \ 20,\r\n \"timeCreated\": \"2018-09-10T23:21:34.4487541+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk\"\ @@ -125,7 +124,7 @@ interactions: cache-control: [no-cache] content-length: ['562'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:32:43 GMT'] + date: ['Mon, 10 Sep 2018 23:22:06 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -133,7 +132,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4984,Microsoft.Compute/LowCostGet30Min;19971'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4984,Microsoft.Compute/LowCostGet30Min;19965'] status: {code: 200, message: OK} - request: body: '{"location": "westus", "sku": {"name": "Standard_LRS"}, "properties": {"creationData": @@ -144,11 +143,11 @@ interactions: Connection: [keep-alive] Content-Length: ['132'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\"\r\n },\r\n\ \ \"properties\": {\r\n \"creationData\": {\r\n \"createOption\"\ @@ -156,19 +155,19 @@ interactions: : \"Updating\",\r\n \"isArmResource\": true\r\n },\r\n \"location\":\ \ \"westus\",\r\n \"name\": \"myDisk\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/1ec43e68-ba46-486b-b034-81f5fbd4189d?api-version=2018-04-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f6435848-f5fa-40e6-8d7e-d8c8f1ceaba6?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['270'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:32:44 GMT'] + date: ['Mon, 10 Sep 2018 23:22:07 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/1ec43e68-ba46-486b-b034-81f5fbd4189d?monitor=true&api-version=2018-04-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f6435848-f5fa-40e6-8d7e-d8c8f1ceaba6?monitor=true&api-version=2018-06-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/CreateUpdateDisks3Min;994,Microsoft.Compute/CreateUpdateDisks30Min;3989'] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/CreateUpdateDisks3Min;995,Microsoft.Compute/CreateUpdateDisks30Min;3989'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: body: null @@ -176,25 +175,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/1ec43e68-ba46-486b-b034-81f5fbd4189d?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/DiskOperations/f6435848-f5fa-40e6-8d7e-d8c8f1ceaba6?api-version=2018-06-01 response: - body: {string: "{\r\n \"startTime\": \"2018-03-21T21:32:45.0010506+00:00\",\r\ - \n \"endTime\": \"2018-03-21T21:32:45.1307564+00:00\",\r\n \"status\": \"\ + body: {string: "{\r\n \"startTime\": \"2018-09-10T23:22:07.6915948+00:00\",\r\ + \n \"endTime\": \"2018-09-10T23:22:07.8790662+00:00\",\r\n \"status\": \"\ Succeeded\",\r\n \"properties\": {\r\n \"output\": {\"sku\":{\"name\"\ :\"Standard_LRS\",\"tier\":\"Standard\"},\"properties\":{\"creationData\"\ - :{\"createOption\":\"Empty\"},\"diskSizeGB\":25,\"timeCreated\":\"2018-03-21T21:32:11.8178207+00:00\"\ + :{\"createOption\":\"Empty\"},\"diskSizeGB\":25,\"timeCreated\":\"2018-09-10T23:21:34.4487541+00:00\"\ ,\"provisioningState\":\"Succeeded\",\"diskState\":\"Unattached\"},\"type\"\ :\"Microsoft.Compute/disks\",\"location\":\"westus\",\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk\"\ - ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"1ec43e68-ba46-486b-b034-81f5fbd4189d\"\ + ,\"name\":\"myDisk\"}\r\n },\r\n \"name\": \"f6435848-f5fa-40e6-8d7e-d8c8f1ceaba6\"\ \r\n}"} headers: cache-control: [no-cache] content-length: ['683'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:33:15 GMT'] + date: ['Mon, 10 Sep 2018 23:22:38 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -202,7 +201,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49987,Microsoft.Compute/GetOperation30Min;249964'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;49987,Microsoft.Compute/GetOperation30Min;249968'] status: {code: 200, message: OK} - request: body: null @@ -210,15 +209,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.20 computemanagementclient/4.0.0rc1 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 computemanagementclient/4.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-04-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk?api-version=2018-06-01 response: body: {string: "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"\ tier\": \"Standard\"\r\n },\r\n \"properties\": {\r\n \"creationData\"\ : {\r\n \"createOption\": \"Empty\"\r\n },\r\n \"diskSizeGB\":\ - \ 25,\r\n \"timeCreated\": \"2018-03-21T21:32:11.8178207+00:00\",\r\n \ + \ 25,\r\n \"timeCreated\": \"2018-09-10T23:21:34.4487541+00:00\",\r\n \ \ \"provisioningState\": \"Succeeded\",\r\n \"diskState\": \"Unattached\"\ \r\n },\r\n \"type\": \"Microsoft.Compute/disks\",\r\n \"location\": \"\ westus\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_resize_md30640f8d/providers/Microsoft.Compute/disks/myDisk\"\ @@ -227,7 +226,7 @@ interactions: cache-control: [no-cache] content-length: ['562'] content-type: [application/json; charset=utf-8] - date: ['Wed, 21 Mar 2018 21:33:15 GMT'] + date: ['Mon, 10 Sep 2018 23:22:38 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -235,6 +234,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4983,Microsoft.Compute/LowCostGet30Min;19969'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4981,Microsoft.Compute/LowCostGet30Min;19961'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-compute/tests/recordings/test_mgmt_msi.test_create_msi_enabled_vm.yaml b/azure-mgmt-compute/tests/recordings/test_mgmt_msi.test_create_msi_enabled_vm.yaml index 44b1f0fe4d8f..7f7086e9a870 100644 --- a/azure-mgmt-compute/tests/recordings/test_mgmt_msi.test_create_msi_enabled_vm.yaml +++ b/azure-mgmt-compute/tests/recordings/test_mgmt_msi.test_create_msi_enabled_vm.yaml @@ -2,66 +2,63 @@ interactions: - request: body: '{"location": "westus", "properties": {"addressSpace": {"addressPrefixes": ["10.0.0.0/16"]}, "subnets": [{"properties": {"addressPrefix": "10.0.0.0/24"}, - "name": "pyvmirsub507d1052"}]}}' + "name": "pyvmirsub507d1052"}], "enableDdosProtection": false, "enableVmProtection": + false}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['184'] + Content-Length: ['244'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnet507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052\"\ - ,\r\n \"etag\": \"W/\\\"b822003c-a09f-48d8-b434-9febc9161d8d\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"c45f6b49-dc06-49b9-8e21-ae6f9812c0dd\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsub507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\"\ - ,\r\n \"etag\": \"W/\\\"b822003c-a09f-48d8-b434-9febc9161d8d\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\",\r\n \"ipConfigurations\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052/ipConfigurations/pyarmconfig\"\ - \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ - \ \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false,\r\ - \n \"enableVmProtection\": false\r\n }\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c85715f6-0991-4296-94c9-f62688952687?api-version=2018-02-01'] + body: {string: "{\r\n \"name\": \"pyvmirnet507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052\",\r\n + \ \"etag\": \"W/\\\"e62a3e17-c70a-433b-ab76-e5ad72602571\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"resourceGuid\": + \"9bd8b5d0-09e8-42de-98e7-cb1cedece28e\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsub507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\",\r\n + \ \"etag\": \"W/\\\"e62a3e17-c70a-433b-ab76-e5ad72602571\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/35a10921-54b7-49c7-8cfa-cfd8fa6f4e02?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1474'] + content-length: ['1255'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 18:59:44 GMT'] + date: ['Fri, 28 Sep 2018 17:17:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - status: {code: 200, message: OK} + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 201, message: Created} - request: body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c85715f6-0991-4296-94c9-f62688952687?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/35a10921-54b7-49c7-8cfa-cfd8fa6f4e02?api-version=2018-08-01 response: - body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['29'] + content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:00:14 GMT'] + date: ['Fri, 28 Sep 2018 17:17:07 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -76,32 +73,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/35a10921-54b7-49c7-8cfa-cfd8fa6f4e02?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnet507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052\"\ - ,\r\n \"etag\": \"W/\\\"b822003c-a09f-48d8-b434-9febc9161d8d\\\"\",\r\n \ - \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"c45f6b49-dc06-49b9-8e21-ae6f9812c0dd\",\r\n \"\ - addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ - \r\n ]\r\n },\r\n \"subnets\": [\r\n {\r\n \"name\"\ - : \"pyvmirsub507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\"\ - ,\r\n \"etag\": \"W/\\\"b822003c-a09f-48d8-b434-9febc9161d8d\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"addressPrefix\": \"10.0.0.0/24\",\r\n \"ipConfigurations\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052/ipConfigurations/pyarmconfig\"\ - \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ - \ \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false,\r\ - \n \"enableVmProtection\": false\r\n }\r\n}"} + body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['1474'] + content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:00:15 GMT'] - etag: [W/"b822003c-a09f-48d8-b434-9febc9161d8d"] + date: ['Fri, 28 Sep 2018 17:17:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -116,25 +98,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] - accept-language: [en-US] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirsub507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\"\ - ,\r\n \"etag\": \"W/\\\"b822003c-a09f-48d8-b434-9febc9161d8d\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\",\r\n \"ipConfigurations\": [\r\n \ - \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052/ipConfigurations/pyarmconfig\"\ - \r\n }\r\n ]\r\n }\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnet507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052\",\r\n + \ \"etag\": \"W/\\\"269dd4a0-ee5a-49f3-afd8-e4cda6fa65e0\\\"\",\r\n \"type\": + \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": + \"9bd8b5d0-09e8-42de-98e7-cb1cedece28e\",\r\n \"addressSpace\": {\r\n \"addressPrefixes\": + [\r\n \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [\r\n + \ {\r\n \"name\": \"pyvmirsub507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\",\r\n + \ \"etag\": \"W/\\\"269dd4a0-ee5a-49f3-afd8-e4cda6fa65e0\\\"\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": + []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n + \ }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": + false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['687'] + content-length: ['1257'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:00:16 GMT'] - etag: [W/"b822003c-a09f-48d8-b434-9febc9161d8d"] + date: ['Fri, 28 Sep 2018 17:17:18 GMT'] + etag: [W/"269dd4a0-ee5a-49f3-afd8-e4cda6fa65e0"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -144,46 +131,27 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"ipConfigurations": - [{"properties": {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052", - "properties": {"addressPrefix": "10.0.0.0/24", "provisioningState": "Succeeded"}, - "name": "pyvmirsub507d1052", "etag": "W/\\\\\\\\\\\\\\\\"b822003c-a09f-48d8-b434-9febc9161d8d\\\\\\\\\\\\\\\\""}}, - "name": "pyarmconfig"}]}}\\\\\\\''\\\''\''''' + body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['531'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052?api-version=2018-02-01 + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052?api-version=2018-08-01 response: - body: {string: "{\r\n \"name\": \"pyvmirnic507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052\"\ - ,\r\n \"etag\": \"W/\\\"8840b2d2-472d-4e84-9d44-044f63bdb36a\\\"\",\r\n \ - \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"ffb2913e-a892-497e-8797-156e42e33e52\"\ - ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"pyarmconfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052/ipConfigurations/pyarmconfig\"\ - ,\r\n \"etag\": \"W/\\\"8840b2d2-472d-4e84-9d44-044f63bdb36a\\\"\"\ - ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\"\ - \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ - : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ - \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ - \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - jfvv5rag1s2utdrbvzxzqewa1f.dx.internal.cloudapp.net\"\r\n },\r\n \"\ - enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n },\r\ - \n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirsub507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\",\r\n + \ \"etag\": \"W/\\\"269dd4a0-ee5a-49f3-afd8-e4cda6fa65e0\\\"\",\r\n \"properties\": + {\r\n \"provisioningState\": \"Succeeded\",\r\n \"addressPrefix\": \"10.0.0.0/24\",\r\n + \ \"delegations\": []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['1722'] + content-length: ['488'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:00:17 GMT'] + date: ['Fri, 28 Sep 2018 17:17:19 GMT'] + etag: [W/"269dd4a0-ee5a-49f3-afd8-e4cda6fa65e0"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -191,60 +159,53 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: - body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"hardwareProfile": - {"vmSize": "Standard_A0"}, "storageProfile": {"imageReference": {"publisher": - "Canonical", "offer": "UbuntuServer", "sku": "16.04.0-LTS", "version": "latest"}}, - "osProfile": {"computerName": "test", "adminUsername": "Foo12", "adminPassword": - "BaR@123test_mgmt_msi_test_create_msi_enabled_vm507d1052"}, "networkProfile": - {"networkInterfaces": [{"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052"}]}}, - "identity": {"type": "SystemAssigned"}}\\\\\\\''\\\''\''''' + body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"ipConfigurations": + [{"properties": {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052", + "properties": {"addressPrefix": "10.0.0.0/24", "delegations": [], "provisioningState": + "Succeeded"}, "name": "pyvmirsub507d1052", "etag": "W/\\\\\\\\\\\\\\\\"269dd4a0-ee5a-49f3-afd8-e4cda6fa65e0\\\\\\\\\\\\\\\\""}}, + "name": "pyarmconfig"}]}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['633'] + Content-Length: ['550'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/virtualMachines/pyvmirvm507d1052?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052?api-version=2018-08-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"48b5e051-e721-4592-933d-d8508c270672\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\"\ - ,\r\n \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\ - \r\n }\r\n },\r\n \"dataDisks\": []\r\n },\r\n \"osProfile\"\ - : {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": \"Foo12\"\ - ,\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\"\ - : false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\"\ - : [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\"\ - : {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052\"\ - }]},\r\n \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - identity\": {\r\n \"type\": \"SystemAssigned\",\r\n \"principalId\"\ - : \"3b8badd3-bb4c-464c-9d0e-0211aed49274\",\r\n \"tenantId\": \"72f988bf-86f1-41af-91ab-2d7cd011db47\"\ - \r\n },\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/virtualMachines/pyvmirvm507d1052\"\ - ,\r\n \"name\": \"pyvmirvm507d1052\"\r\n}"} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/4f476e68-18ea-4134-a026-1643484ef773?api-version=2018-06-01'] + body: {string: "{\r\n \"name\": \"pyvmirnic507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052\",\r\n + \ \"etag\": \"W/\\\"f9200fd4-2808-4b22-97da-c64855d07b5c\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"687f110a-3e4a-4c5d-bd3c-d18c9e68a2b0\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"f9200fd4-2808-4b22-97da-c64855d07b5c\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"0c03rg5ibhpefghhzmoo11hcrg.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7ba6b59c-0d00-4468-b419-6c14c2208851?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1596'] + content-length: ['1792'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:00:23 GMT'] + date: ['Fri, 28 Sep 2018 17:17:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1198'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: @@ -253,19 +214,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/4f476e68-18ea-4134-a026-1643484ef773?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7ba6b59c-0d00-4468-b419-6c14c2208851?api-version=2018-08-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:00:23.7486557+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"4f476e68-18ea-4134-a026-1643484ef773\"\ - \r\n}"} + body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['134'] + content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:00:40 GMT'] + date: ['Fri, 28 Sep 2018 17:17:50 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -273,7 +232,6 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14998,Microsoft.Compute/GetOperation30Min;29973'] status: {code: 200, message: OK} - request: body: null @@ -281,19 +239,34 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.1 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/4f476e68-18ea-4134-a026-1643484ef773?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052?api-version=2018-08-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:00:23.7486557+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"4f476e68-18ea-4134-a026-1643484ef773\"\ - \r\n}"} + body: {string: "{\r\n \"name\": \"pyvmirnic507d1052\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052\",\r\n + \ \"etag\": \"W/\\\"f9200fd4-2808-4b22-97da-c64855d07b5c\\\"\",\r\n \"location\": + \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"resourceGuid\": \"687f110a-3e4a-4c5d-bd3c-d18c9e68a2b0\",\r\n \"ipConfigurations\": + [\r\n {\r\n \"name\": \"pyarmconfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052/ipConfigurations/pyarmconfig\",\r\n + \ \"etag\": \"W/\\\"f9200fd4-2808-4b22-97da-c64855d07b5c\\\"\",\r\n + \ \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\",\r\n + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n + \ \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\": + \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/virtualNetworks/pyvmirnet507d1052/subnets/pyvmirsub507d1052\"\r\n + \ },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\": + \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n }\r\n + \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": + [],\r\n \"internalDomainNameSuffix\": \"0c03rg5ibhpefghhzmoo11hcrg.dx.internal.cloudapp.net\"\r\n + \ },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": + false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n + \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['134'] + content-length: ['1792'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:01:13 GMT'] + date: ['Fri, 28 Sep 2018 17:17:52 GMT'] + etag: [W/"f9200fd4-2808-4b22-97da-c64855d07b5c"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -301,55 +274,77 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14996,Microsoft.Compute/GetOperation30Min;29971'] status: {code: 200, message: OK} - request: - body: null + body: 'b''b\''b\\\''b\\\\\\\''{"location": "westus", "properties": {"hardwareProfile": + {"vmSize": "Standard_A0"}, "storageProfile": {"imageReference": {"publisher": + "Canonical", "offer": "UbuntuServer", "sku": "16.04.0-LTS", "version": "latest"}}, + "osProfile": {"computerName": "test", "adminUsername": "Foo12", "adminPassword": + "BaR@123test_mgmt_msi_test_create_msi_enabled_vm507d1052"}, "networkProfile": + {"networkInterfaces": [{"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052"}]}}, + "identity": {"type": "SystemAssigned"}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/4f476e68-18ea-4134-a026-1643484ef773?api-version=2018-06-01 + Content-Length: ['633'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/virtualMachines/pyvmirvm507d1052?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:00:23.7486557+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"4f476e68-18ea-4134-a026-1643484ef773\"\ - \r\n}"} - headers: + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"b967f965-08c5-4faa-a05c-272736783272\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"createOption\": \"FromImage\",\r\n + \ \"caching\": \"ReadWrite\",\r\n \"managedDisk\": {\r\n \"storageAccountType\": + \"Standard_LRS\"\r\n }\r\n },\r\n \"dataDisks\": []\r\n },\r\n + \ \"osProfile\": {\r\n \"computerName\": \"test\",\r\n \"adminUsername\": + \"Foo12\",\r\n \"linuxConfiguration\": {\r\n \"disablePasswordAuthentication\": + false,\r\n \"provisionVMAgent\": true\r\n },\r\n \"secrets\": + [],\r\n \"allowExtensionOperations\": true\r\n },\r\n \"networkProfile\": + {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052\"}]},\r\n + \ \"provisioningState\": \"Creating\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"identity\": {\r\n \"type\": \"SystemAssigned\",\r\n + \ \"principalId\": \"9a0bd5d6-d1d9-4ce1-9ef2-cbe25cf66495\",\r\n \"tenantId\": + \"72f988bf-86f1-41af-91ab-2d7cd011db47\"\r\n },\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/virtualMachines/pyvmirvm507d1052\",\r\n + \ \"name\": \"pyvmirvm507d1052\"\r\n}"} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7bd49769-21cf-4123-875a-8200d55003ae?api-version=2018-10-01'] cache-control: [no-cache] - content-length: ['134'] + content-length: ['1596'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:01:45 GMT'] + date: ['Fri, 28 Sep 2018 17:17:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14993,Microsoft.Compute/GetOperation30Min;29968'] - status: {code: 200, message: OK} + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/PutVM3Min;239,Microsoft.Compute/PutVM30Min;1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 201, message: Created} - request: body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/4f476e68-18ea-4134-a026-1643484ef773?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7bd49769-21cf-4123-875a-8200d55003ae?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:00:23.7486557+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"4f476e68-18ea-4134-a026-1643484ef773\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:17:55.4034493+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"7bd49769-21cf-4123-875a-8200d55003ae\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:02:17 GMT'] + date: ['Fri, 28 Sep 2018 17:18:05 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -357,7 +352,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14990,Microsoft.Compute/GetOperation30Min;29965'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14999,Microsoft.Compute/GetOperation30Min;29999'] status: {code: 200, message: OK} - request: body: null @@ -365,19 +360,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/4f476e68-18ea-4134-a026-1643484ef773?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7bd49769-21cf-4123-875a-8200d55003ae?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:00:23.7486557+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"4f476e68-18ea-4134-a026-1643484ef773\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:17:55.4034493+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"7bd49769-21cf-4123-875a-8200d55003ae\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:02:48 GMT'] + date: ['Fri, 28 Sep 2018 17:18:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -385,7 +379,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14987,Microsoft.Compute/GetOperation30Min;29962'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14996,Microsoft.Compute/GetOperation30Min;29996'] status: {code: 200, message: OK} - request: body: null @@ -393,19 +387,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/4f476e68-18ea-4134-a026-1643484ef773?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7bd49769-21cf-4123-875a-8200d55003ae?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:00:23.7486557+00:00\",\r\ - \n \"status\": \"InProgress\",\r\n \"name\": \"4f476e68-18ea-4134-a026-1643484ef773\"\ - \r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:17:55.4034493+00:00\",\r\n + \ \"status\": \"InProgress\",\r\n \"name\": \"7bd49769-21cf-4123-875a-8200d55003ae\"\r\n}"} headers: cache-control: [no-cache] content-length: ['134'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:03:19 GMT'] + date: ['Fri, 28 Sep 2018 17:19:08 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -413,7 +406,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14984,Microsoft.Compute/GetOperation30Min;29959'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14993,Microsoft.Compute/GetOperation30Min;29993'] status: {code: 200, message: OK} - request: body: null @@ -421,19 +414,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/4f476e68-18ea-4134-a026-1643484ef773?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/operations/7bd49769-21cf-4123-875a-8200d55003ae?api-version=2018-10-01 response: - body: {string: "{\r\n \"startTime\": \"2018-07-20T19:00:23.7486557+00:00\",\r\ - \n \"endTime\": \"2018-07-20T19:03:41.3751026+00:00\",\r\n \"status\": \"\ - Succeeded\",\r\n \"name\": \"4f476e68-18ea-4134-a026-1643484ef773\"\r\n}"} + body: {string: "{\r\n \"startTime\": \"2018-09-28T17:17:55.4034493+00:00\",\r\n + \ \"endTime\": \"2018-09-28T17:19:24.0528367+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"7bd49769-21cf-4123-875a-8200d55003ae\"\r\n}"} headers: cache-control: [no-cache] content-length: ['184'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:03:50 GMT'] + date: ['Fri, 28 Sep 2018 17:19:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -441,7 +434,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14983,Microsoft.Compute/GetOperation30Min;29956'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/GetOperation3Min;14990,Microsoft.Compute/GetOperation30Min;29990'] status: {code: 200, message: OK} - request: body: null @@ -449,39 +442,36 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 computemanagementclient/4.0.0rc3 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 computemanagementclient/4.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/virtualMachines/pyvmirvm507d1052?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/virtualMachines/pyvmirvm507d1052?api-version=2018-10-01 response: - body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"48b5e051-e721-4592-933d-d8508c270672\"\ - ,\r\n \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n \ - \ },\r\n \"storageProfile\": {\r\n \"imageReference\": {\r\n \ - \ \"publisher\": \"Canonical\",\r\n \"offer\": \"UbuntuServer\"\ - ,\r\n \"sku\": \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\ - \n },\r\n \"osDisk\": {\r\n \"osType\": \"Linux\",\r\n \ - \ \"name\": \"pyvmirvm507d1052_OsDisk_1_f13e840da20b4053aaf8dad6800c2f64\"\ - ,\r\n \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\"\ - ,\r\n \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/disks/pyvmirvm507d1052_OsDisk_1_f13e840da20b4053aaf8dad6800c2f64\"\ - \r\n },\r\n \"diskSizeGB\": 30\r\n },\r\n \"dataDisks\"\ - : []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\"\ - ,\r\n \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\":\ - \ {\r\n \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\"\ - : true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\"\ - : true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\"\ - :\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052\"\ - }]},\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"\ - Microsoft.Compute/virtualMachines\",\r\n \"location\": \"westus\",\r\n \"\ - identity\": {\r\n \"type\": \"SystemAssigned\",\r\n \"principalId\"\ - : \"3b8badd3-bb4c-464c-9d0e-0211aed49274\",\r\n \"tenantId\": \"72f988bf-86f1-41af-91ab-2d7cd011db47\"\ - \r\n },\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/virtualMachines/pyvmirvm507d1052\"\ - ,\r\n \"name\": \"pyvmirvm507d1052\"\r\n}"} + body: {string: "{\r\n \"properties\": {\r\n \"vmId\": \"b967f965-08c5-4faa-a05c-272736783272\",\r\n + \ \"hardwareProfile\": {\r\n \"vmSize\": \"Standard_A0\"\r\n },\r\n + \ \"storageProfile\": {\r\n \"imageReference\": {\r\n \"publisher\": + \"Canonical\",\r\n \"offer\": \"UbuntuServer\",\r\n \"sku\": + \"16.04.0-LTS\",\r\n \"version\": \"latest\"\r\n },\r\n \"osDisk\": + {\r\n \"osType\": \"Linux\",\r\n \"name\": \"pyvmirvm507d1052_OsDisk_1_e0fd2cd0aeab45f4b6694ba96f4aa695\",\r\n + \ \"createOption\": \"FromImage\",\r\n \"caching\": \"ReadWrite\",\r\n + \ \"managedDisk\": {\r\n \"storageAccountType\": \"Standard_LRS\",\r\n + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/disks/pyvmirvm507d1052_OsDisk_1_e0fd2cd0aeab45f4b6694ba96f4aa695\"\r\n + \ },\r\n \"diskSizeGB\": 30\r\n },\r\n \"dataDisks\": + []\r\n },\r\n \"osProfile\": {\r\n \"computerName\": \"test\",\r\n + \ \"adminUsername\": \"Foo12\",\r\n \"linuxConfiguration\": {\r\n + \ \"disablePasswordAuthentication\": false,\r\n \"provisionVMAgent\": + true\r\n },\r\n \"secrets\": [],\r\n \"allowExtensionOperations\": + true\r\n },\r\n \"networkProfile\": {\"networkInterfaces\":[{\"id\":\"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Network/networkInterfaces/pyvmirnic507d1052\"}]},\r\n + \ \"provisioningState\": \"Succeeded\"\r\n },\r\n \"type\": \"Microsoft.Compute/virtualMachines\",\r\n + \ \"location\": \"westus\",\r\n \"identity\": {\r\n \"type\": \"SystemAssigned\",\r\n + \ \"principalId\": \"9a0bd5d6-d1d9-4ce1-9ef2-cbe25cf66495\",\r\n \"tenantId\": + \"72f988bf-86f1-41af-91ab-2d7cd011db47\"\r\n },\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Compute/virtualMachines/pyvmirvm507d1052\",\r\n + \ \"name\": \"pyvmirvm507d1052\"\r\n}"} headers: cache-control: [no-cache] content-length: ['1932'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:03:50 GMT'] + date: ['Fri, 28 Sep 2018 17:19:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -489,7 +479,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;4196,Microsoft.Compute/LowCostGet30Min;33583'] + x-ms-ratelimit-remaining-resource: ['Microsoft.Compute/LowCostGet3Min;3997,Microsoft.Compute/LowCostGet30Min;31997'] status: {code: 200, message: OK} - request: body: null @@ -498,7 +488,7 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.34 azure-mgmt-authorization/0.50.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET @@ -510,7 +500,7 @@ interactions: cache-control: [no-cache] content-length: ['832'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:03:50 GMT'] + date: ['Fri, 28 Sep 2018 17:19:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/10.0] @@ -520,29 +510,28 @@ interactions: vary: [Accept-Encoding] x-content-type-options: [nosniff] x-ms-request-charge: ['1'] - x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: body: 'b''b\''b\\\''b\\\\\\\''{"properties": {"roleDefinitionId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c", - "principalId": "3b8badd3-bb4c-464c-9d0e-0211aed49274"}}\\\\\\\''\\\''\''''' + "principalId": "9a0bd5d6-d1d9-4ce1-9ef2-cbe25cf66495"}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['233'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.34 azure-mgmt-authorization/0.50.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Authorization/roleAssignments/05cabf20-c143-4eb8-9e4e-84ef3bde66c3?api-version=2018-01-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Authorization/roleAssignments/99840a92-3d7e-4fb0-ae69-72d5a65e0057?api-version=2018-01-01-preview response: - body: {string: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c","principalId":"3b8badd3-bb4c-464c-9d0e-0211aed49274","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052","createdOn":"2018-07-20T19:03:53.1958528Z","updatedOn":"2018-07-20T19:03:53.1958528Z","createdBy":null,"updatedBy":"e33fbfd4-bc19-47c6-be55-5f5a7f950b7a"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Authorization/roleAssignments/05cabf20-c143-4eb8-9e4e-84ef3bde66c3","type":"Microsoft.Authorization/roleAssignments","name":"05cabf20-c143-4eb8-9e4e-84ef3bde66c3"}'} + body: {string: '{"properties":{"roleDefinitionId":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c","principalId":"9a0bd5d6-d1d9-4ce1-9ef2-cbe25cf66495","principalType":"ServicePrincipal","scope":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052","createdOn":"2018-09-28T17:19:41.6174529Z","updatedOn":"2018-09-28T17:19:41.6174529Z","createdBy":null,"updatedBy":"e33fbfd4-bc19-47c6-be55-5f5a7f950b7a"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_msi_test_create_msi_enabled_vm507d1052/providers/Microsoft.Authorization/roleAssignments/99840a92-3d7e-4fb0-ae69-72d5a65e0057","type":"Microsoft.Authorization/roleAssignments","name":"99840a92-3d7e-4fb0-ae69-72d5a65e0057"}'} headers: cache-control: [no-cache] content-length: ['849'] content-type: [application/json; charset=utf-8] - date: ['Fri, 20 Jul 2018 19:03:54 GMT'] + date: ['Fri, 28 Sep 2018 17:19:42 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/10.0] @@ -551,6 +540,5 @@ interactions: x-content-type-options: [nosniff] x-ms-ratelimit-remaining-subscription-writes: ['1199'] x-ms-request-charge: ['2'] - x-powered-by: [ASP.NET] status: {code: 201, message: Created} version: 1 diff --git a/azure-mgmt-compute/tests/test_mgmt_managed_disks.py b/azure-mgmt-compute/tests/test_mgmt_managed_disks.py index a1620e326c36..5ab211faee67 100644 --- a/azure-mgmt-compute/tests/test_mgmt_managed_disks.py +++ b/azure-mgmt-compute/tests/test_mgmt_managed_disks.py @@ -54,6 +54,33 @@ def test_empty_md(self, resource_group, location): ) disk_resource = async_creation.result() + @ResourceGroupPreparer() + def test_grant_access(self, resource_group, location): + '''Create an empty Managed Disk.''' + DiskCreateOption = self.compute_client.disks.models.DiskCreateOption + + async_creation = self.compute_client.disks.create_or_update( + resource_group.name, + 'my_disk_name', + { + 'location': location, + 'disk_size_gb': 20, + 'creation_data': { + 'create_option': DiskCreateOption.empty + } + } + ) + disk_resource = async_creation.result() + + grant_access_poller = self.compute_client.disks.grant_access( + resource_group.name, + 'my_disk_name', + 'Read', + '1', + ) + access_uri = grant_access_poller.result() + assert access_uri.access_sas is not None + @ResourceGroupPreparer() def test_md_from_storage_blob(self, resource_group, location): '''Create a Managed Disk from Blob Storage.''' @@ -334,7 +361,7 @@ def test_create_virtual_machine_scale_set(self, resource_group, location): 'name': naming_infix + 'ipconfig', 'subnet': { 'id': subnet_id - } + } }] }] } diff --git a/azure-mgmt-consumption/MANIFEST.in b/azure-mgmt-consumption/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-consumption/MANIFEST.in +++ b/azure-mgmt-consumption/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-consumption/README.rst b/azure-mgmt-consumption/README.rst index 2ae9c2f9ef87..c5aa4878cecc 100644 --- a/azure-mgmt-consumption/README.rst +++ b/azure-mgmt-consumption/README.rst @@ -1,12 +1,12 @@ Microsoft Azure SDK for Python ============================== -This is the Microsoft Azure Consumption Management Client Library. +This is the Microsoft Azure Consumption Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -36,7 +36,7 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `Consumption Management +For code examples, see `Consumption `__ on docs.microsoft.com. diff --git a/azure-mgmt-consumption/azure/__init__.py b/azure-mgmt-consumption/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-consumption/azure/__init__.py +++ b/azure-mgmt-consumption/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-consumption/azure/mgmt/__init__.py b/azure-mgmt-consumption/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-consumption/azure/mgmt/__init__.py +++ b/azure-mgmt-consumption/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-consumption/azure_bdist_wheel.py b/azure-mgmt-consumption/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-consumption/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-consumption/sdk_packaging.toml b/azure-mgmt-consumption/sdk_packaging.toml new file mode 100644 index 000000000000..9d22f9d91e8e --- /dev/null +++ b/azure-mgmt-consumption/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-consumption" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Consumption" +package_doc_id = "consumption" +is_stable = false +is_arm = true diff --git a/azure-mgmt-consumption/setup.cfg b/azure-mgmt-consumption/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-consumption/setup.cfg +++ b/azure-mgmt-consumption/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-consumption/setup.py b/azure-mgmt-consumption/setup.py index 9823c27b0e60..78596402b36d 100644 --- a/azure-mgmt-consumption/setup.py +++ b/azure-mgmt-consumption/setup.py @@ -10,16 +10,10 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-consumption" -PACKAGE_PPRINT_NAME = "Consumption Management" +PACKAGE_PPRINT_NAME = "Consumption" # a-b-c => a/b/c package_folder_path = PACKAGE_NAME.replace('-', '/') @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-containerinstance/HISTORY.rst b/azure-mgmt-containerinstance/HISTORY.rst index e1dd07392c15..6aae6bdc3d16 100644 --- a/azure-mgmt-containerinstance/HISTORY.rst +++ b/azure-mgmt-containerinstance/HISTORY.rst @@ -3,6 +3,45 @@ Release History =============== +1.3.0 (2018-11-05) +++++++++++++++++++ + +**Features** + +- Model ResourceLimits has a new parameter gpu +- Model ResourceRequests has a new parameter gpu +- Model ContainerGroup has a new parameter dns_config + +1.2.1 (2018-10-16) +++++++++++++++++++ + +**Bugfix** + +- Fix sdist broken in 1.2.0. No code change. + +1.2.0 (2018-10-08) +++++++++++++++++++ + +**Features** + +- Model ContainerGroup has a new parameter identity (MSI support) +- Added operation group ServiceAssociationLinkOperations + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + +1.1.0 (2018-09-06) +++++++++++++++++++ + +**Features** + +- Model LogAnalytics has a new parameter log_type +- Model LogAnalytics has a new parameter metadata +- Model ContainerGroup has a new parameter network_profile +- Added operation ContainerGroupsOperations.stop +- Added operation ContainerGroupsOperations.restart + 1.0.0 (2018-06-13) ++++++++++++++++++ diff --git a/azure-mgmt-containerinstance/MANIFEST.in b/azure-mgmt-containerinstance/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-containerinstance/MANIFEST.in +++ b/azure-mgmt-containerinstance/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-containerinstance/README.rst b/azure-mgmt-containerinstance/README.rst index e4f5739fbc89..9f61b79d2a9b 100644 --- a/azure-mgmt-containerinstance/README.rst +++ b/azure-mgmt-containerinstance/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Container Instance Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-containerinstance/azure/__init__.py b/azure-mgmt-containerinstance/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-containerinstance/azure/__init__.py +++ b/azure-mgmt-containerinstance/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-containerinstance/azure/mgmt/__init__.py b/azure-mgmt-containerinstance/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/__init__.py +++ b/azure-mgmt-containerinstance/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/container_instance_management_client.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/container_instance_management_client.py index a969d13ac371..63040e0a0149 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/container_instance_management_client.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/container_instance_management_client.py @@ -17,6 +17,7 @@ from .operations.operations import Operations from .operations.container_group_usage_operations import ContainerGroupUsageOperations from .operations.container_operations import ContainerOperations +from .operations.service_association_link_operations import ServiceAssociationLinkOperations from . import models @@ -68,6 +69,8 @@ class ContainerInstanceManagementClient(SDKClient): :vartype container_group_usage: azure.mgmt.containerinstance.operations.ContainerGroupUsageOperations :ivar container: Container operations :vartype container: azure.mgmt.containerinstance.operations.ContainerOperations + :ivar service_association_link: ServiceAssociationLink operations + :vartype service_association_link: azure.mgmt.containerinstance.operations.ServiceAssociationLinkOperations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -86,7 +89,7 @@ def __init__( super(ContainerInstanceManagementClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '2018-06-01' + self.api_version = '2018-10-01' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) @@ -98,3 +101,5 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.container = ContainerOperations( self._client, self.config, self._serialize, self._deserialize) + self.service_association_link = ServiceAssociationLinkOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/__init__.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/__init__.py index 1ba2cf55de82..29648c6c4f55 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/__init__.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/__init__.py @@ -15,6 +15,7 @@ from .container_state_py3 import ContainerState from .event_py3 import Event from .container_properties_instance_view_py3 import ContainerPropertiesInstanceView + from .gpu_resource_py3 import GpuResource from .resource_requests_py3 import ResourceRequests from .resource_limits_py3 import ResourceLimits from .resource_requirements_py3 import ResourceRequirements @@ -26,12 +27,16 @@ from .azure_file_volume_py3 import AzureFileVolume from .git_repo_volume_py3 import GitRepoVolume from .volume_py3 import Volume + from .container_group_identity_user_assigned_identities_value_py3 import ContainerGroupIdentityUserAssignedIdentitiesValue + from .container_group_identity_py3 import ContainerGroupIdentity from .image_registry_credential_py3 import ImageRegistryCredential from .port_py3 import Port from .ip_address_py3 import IpAddress from .container_group_properties_instance_view_py3 import ContainerGroupPropertiesInstanceView from .log_analytics_py3 import LogAnalytics from .container_group_diagnostics_py3 import ContainerGroupDiagnostics + from .container_group_network_profile_py3 import ContainerGroupNetworkProfile + from .dns_configuration_py3 import DnsConfiguration from .container_group_py3 import ContainerGroup from .operation_display_py3 import OperationDisplay from .operation_py3 import Operation @@ -50,6 +55,7 @@ from .container_state import ContainerState from .event import Event from .container_properties_instance_view import ContainerPropertiesInstanceView + from .gpu_resource import GpuResource from .resource_requests import ResourceRequests from .resource_limits import ResourceLimits from .resource_requirements import ResourceRequirements @@ -61,12 +67,16 @@ from .azure_file_volume import AzureFileVolume from .git_repo_volume import GitRepoVolume from .volume import Volume + from .container_group_identity_user_assigned_identities_value import ContainerGroupIdentityUserAssignedIdentitiesValue + from .container_group_identity import ContainerGroupIdentity from .image_registry_credential import ImageRegistryCredential from .port import Port from .ip_address import IpAddress from .container_group_properties_instance_view import ContainerGroupPropertiesInstanceView from .log_analytics import LogAnalytics from .container_group_diagnostics import ContainerGroupDiagnostics + from .container_group_network_profile import ContainerGroupNetworkProfile + from .dns_configuration import DnsConfiguration from .container_group import ContainerGroup from .operation_display import OperationDisplay from .operation import Operation @@ -82,9 +92,13 @@ from .container_group_paged import ContainerGroupPaged from .container_instance_management_client_enums import ( ContainerNetworkProtocol, + GpuSku, + ResourceIdentityType, ContainerGroupRestartPolicy, ContainerGroupNetworkProtocol, + ContainerGroupIpAddressType, OperatingSystemTypes, + LogAnalyticsLogType, ContainerInstanceOperationsOrigin, ) @@ -94,6 +108,7 @@ 'ContainerState', 'Event', 'ContainerPropertiesInstanceView', + 'GpuResource', 'ResourceRequests', 'ResourceLimits', 'ResourceRequirements', @@ -105,12 +120,16 @@ 'AzureFileVolume', 'GitRepoVolume', 'Volume', + 'ContainerGroupIdentityUserAssignedIdentitiesValue', + 'ContainerGroupIdentity', 'ImageRegistryCredential', 'Port', 'IpAddress', 'ContainerGroupPropertiesInstanceView', 'LogAnalytics', 'ContainerGroupDiagnostics', + 'ContainerGroupNetworkProfile', + 'DnsConfiguration', 'ContainerGroup', 'OperationDisplay', 'Operation', @@ -125,8 +144,12 @@ 'Resource', 'ContainerGroupPaged', 'ContainerNetworkProtocol', + 'GpuSku', + 'ResourceIdentityType', 'ContainerGroupRestartPolicy', 'ContainerGroupNetworkProtocol', + 'ContainerGroupIpAddressType', 'OperatingSystemTypes', + 'LogAnalyticsLogType', 'ContainerInstanceOperationsOrigin', ] diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group.py index fa4a94d911e0..94962b923a53 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group.py @@ -30,6 +30,9 @@ class ContainerGroup(Resource): :type location: str :param tags: The resource tags. :type tags: dict[str, str] + :param identity: The identity of the container group, if configured. + :type identity: + ~azure.mgmt.containerinstance.models.ContainerGroupIdentity :ivar provisioning_state: The provisioning state of the container group. This only appears in the response. :vartype provisioning_state: str @@ -64,6 +67,12 @@ class ContainerGroup(Resource): :param diagnostics: The diagnostic information for a container group. :type diagnostics: ~azure.mgmt.containerinstance.models.ContainerGroupDiagnostics + :param network_profile: The network profile information for a container + group. + :type network_profile: + ~azure.mgmt.containerinstance.models.ContainerGroupNetworkProfile + :param dns_config: The DNS config information for a container group. + :type dns_config: ~azure.mgmt.containerinstance.models.DnsConfiguration """ _validation = { @@ -82,6 +91,7 @@ class ContainerGroup(Resource): 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, + 'identity': {'key': 'identity', 'type': 'ContainerGroupIdentity'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'containers': {'key': 'properties.containers', 'type': '[Container]'}, 'image_registry_credentials': {'key': 'properties.imageRegistryCredentials', 'type': '[ImageRegistryCredential]'}, @@ -91,10 +101,13 @@ class ContainerGroup(Resource): 'volumes': {'key': 'properties.volumes', 'type': '[Volume]'}, 'instance_view': {'key': 'properties.instanceView', 'type': 'ContainerGroupPropertiesInstanceView'}, 'diagnostics': {'key': 'properties.diagnostics', 'type': 'ContainerGroupDiagnostics'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'ContainerGroupNetworkProfile'}, + 'dns_config': {'key': 'properties.dnsConfig', 'type': 'DnsConfiguration'}, } def __init__(self, **kwargs): super(ContainerGroup, self).__init__(**kwargs) + self.identity = kwargs.get('identity', None) self.provisioning_state = None self.containers = kwargs.get('containers', None) self.image_registry_credentials = kwargs.get('image_registry_credentials', None) @@ -104,3 +117,5 @@ def __init__(self, **kwargs): self.volumes = kwargs.get('volumes', None) self.instance_view = None self.diagnostics = kwargs.get('diagnostics', None) + self.network_profile = kwargs.get('network_profile', None) + self.dns_config = kwargs.get('dns_config', None) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity.py new file mode 100644 index 000000000000..3669c19aa62a --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerGroupIdentity(Model): + """Identity for the container group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of the container group identity. This + property will only be provided for a system assigned identity. + :vartype principal_id: str + :ivar tenant_id: The tenant id associated with the container group. This + property will only be provided for a system assigned identity. + :vartype tenant_id: str + :param type: The type of identity used for the container group. The type + 'SystemAssigned, UserAssigned' includes both an implicitly created + identity and a set of user assigned identities. The type 'None' will + remove any identities from the container group. Possible values include: + 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' + :type type: str or + ~azure.mgmt.containerinstance.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated + with the container group. The user identity dictionary key references will + be ARM resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, + ~azure.mgmt.containerinstance.models.ContainerGroupIdentityUserAssignedIdentitiesValue] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{ContainerGroupIdentityUserAssignedIdentitiesValue}'}, + } + + def __init__(self, **kwargs): + super(ContainerGroupIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = kwargs.get('type', None) + self.user_assigned_identities = kwargs.get('user_assigned_identities', None) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_py3.py new file mode 100644 index 000000000000..53ca40da721e --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerGroupIdentity(Model): + """Identity for the container group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of the container group identity. This + property will only be provided for a system assigned identity. + :vartype principal_id: str + :ivar tenant_id: The tenant id associated with the container group. This + property will only be provided for a system assigned identity. + :vartype tenant_id: str + :param type: The type of identity used for the container group. The type + 'SystemAssigned, UserAssigned' includes both an implicitly created + identity and a set of user assigned identities. The type 'None' will + remove any identities from the container group. Possible values include: + 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' + :type type: str or + ~azure.mgmt.containerinstance.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated + with the container group. The user identity dictionary key references will + be ARM resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, + ~azure.mgmt.containerinstance.models.ContainerGroupIdentityUserAssignedIdentitiesValue] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{ContainerGroupIdentityUserAssignedIdentitiesValue}'}, + } + + def __init__(self, *, type=None, user_assigned_identities=None, **kwargs) -> None: + super(ContainerGroupIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = type + self.user_assigned_identities = user_assigned_identities diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_user_assigned_identities_value.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_user_assigned_identities_value.py new file mode 100644 index 000000000000..7e1d1b9f4282 --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_user_assigned_identities_value.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerGroupIdentityUserAssignedIdentitiesValue(Model): + """ContainerGroupIdentityUserAssignedIdentitiesValue. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client id of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerGroupIdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_user_assigned_identities_value_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_user_assigned_identities_value_py3.py new file mode 100644 index 000000000000..24cf7baa0e45 --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_identity_user_assigned_identities_value_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerGroupIdentityUserAssignedIdentitiesValue(Model): + """ContainerGroupIdentityUserAssignedIdentitiesValue. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client id of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ContainerGroupIdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_network_profile.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_network_profile.py new file mode 100644 index 000000000000..026387cb17a8 --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_network_profile.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerGroupNetworkProfile(Model): + """Container group network profile information. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The identifier for a network profile. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerGroupNetworkProfile, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_network_profile_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_network_profile_py3.py new file mode 100644 index 000000000000..72e54d274eec --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_network_profile_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerGroupNetworkProfile(Model): + """Container group network profile information. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The identifier for a network profile. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str, **kwargs) -> None: + super(ContainerGroupNetworkProfile, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_py3.py index da93f1668143..2c31e749d5bd 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_py3.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_group_py3.py @@ -30,6 +30,9 @@ class ContainerGroup(Resource): :type location: str :param tags: The resource tags. :type tags: dict[str, str] + :param identity: The identity of the container group, if configured. + :type identity: + ~azure.mgmt.containerinstance.models.ContainerGroupIdentity :ivar provisioning_state: The provisioning state of the container group. This only appears in the response. :vartype provisioning_state: str @@ -64,6 +67,12 @@ class ContainerGroup(Resource): :param diagnostics: The diagnostic information for a container group. :type diagnostics: ~azure.mgmt.containerinstance.models.ContainerGroupDiagnostics + :param network_profile: The network profile information for a container + group. + :type network_profile: + ~azure.mgmt.containerinstance.models.ContainerGroupNetworkProfile + :param dns_config: The DNS config information for a container group. + :type dns_config: ~azure.mgmt.containerinstance.models.DnsConfiguration """ _validation = { @@ -82,6 +91,7 @@ class ContainerGroup(Resource): 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, + 'identity': {'key': 'identity', 'type': 'ContainerGroupIdentity'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'containers': {'key': 'properties.containers', 'type': '[Container]'}, 'image_registry_credentials': {'key': 'properties.imageRegistryCredentials', 'type': '[ImageRegistryCredential]'}, @@ -91,10 +101,13 @@ class ContainerGroup(Resource): 'volumes': {'key': 'properties.volumes', 'type': '[Volume]'}, 'instance_view': {'key': 'properties.instanceView', 'type': 'ContainerGroupPropertiesInstanceView'}, 'diagnostics': {'key': 'properties.diagnostics', 'type': 'ContainerGroupDiagnostics'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'ContainerGroupNetworkProfile'}, + 'dns_config': {'key': 'properties.dnsConfig', 'type': 'DnsConfiguration'}, } - def __init__(self, *, containers, os_type, location: str=None, tags=None, image_registry_credentials=None, restart_policy=None, ip_address=None, volumes=None, diagnostics=None, **kwargs) -> None: + def __init__(self, *, containers, os_type, location: str=None, tags=None, identity=None, image_registry_credentials=None, restart_policy=None, ip_address=None, volumes=None, diagnostics=None, network_profile=None, dns_config=None, **kwargs) -> None: super(ContainerGroup, self).__init__(location=location, tags=tags, **kwargs) + self.identity = identity self.provisioning_state = None self.containers = containers self.image_registry_credentials = image_registry_credentials @@ -104,3 +117,5 @@ def __init__(self, *, containers, os_type, location: str=None, tags=None, image_ self.volumes = volumes self.instance_view = None self.diagnostics = diagnostics + self.network_profile = network_profile + self.dns_config = dns_config diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_instance_management_client_enums.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_instance_management_client_enums.py index 04280f098e01..b7556beaa4f9 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_instance_management_client_enums.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/container_instance_management_client_enums.py @@ -18,6 +18,21 @@ class ContainerNetworkProtocol(str, Enum): udp = "UDP" +class GpuSku(str, Enum): + + k80 = "K80" + p100 = "P100" + v100 = "V100" + + +class ResourceIdentityType(str, Enum): + + system_assigned = "SystemAssigned" + user_assigned = "UserAssigned" + system_assigned_user_assigned = "SystemAssigned, UserAssigned" + none = "None" + + class ContainerGroupRestartPolicy(str, Enum): always = "Always" @@ -31,12 +46,24 @@ class ContainerGroupNetworkProtocol(str, Enum): udp = "UDP" +class ContainerGroupIpAddressType(str, Enum): + + public = "Public" + private = "Private" + + class OperatingSystemTypes(str, Enum): windows = "Windows" linux = "Linux" +class LogAnalyticsLogType(str, Enum): + + container_insights = "ContainerInsights" + container_instance_logs = "ContainerInstanceLogs" + + class ContainerInstanceOperationsOrigin(str, Enum): user = "User" diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/dns_configuration.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/dns_configuration.py new file mode 100644 index 000000000000..d9775ab31ee1 --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/dns_configuration.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsConfiguration(Model): + """DNS configuration for the container group. + + All required parameters must be populated in order to send to Azure. + + :param name_servers: Required. The DNS servers for the container group. + :type name_servers: list[str] + :param search_domains: The DNS search domains for hostname lookup in the + container group. + :type search_domains: str + :param options: The DNS options for the container group. + :type options: str + """ + + _validation = { + 'name_servers': {'required': True}, + } + + _attribute_map = { + 'name_servers': {'key': 'nameServers', 'type': '[str]'}, + 'search_domains': {'key': 'searchDomains', 'type': 'str'}, + 'options': {'key': 'options', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DnsConfiguration, self).__init__(**kwargs) + self.name_servers = kwargs.get('name_servers', None) + self.search_domains = kwargs.get('search_domains', None) + self.options = kwargs.get('options', None) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/dns_configuration_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/dns_configuration_py3.py new file mode 100644 index 000000000000..73be32358552 --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/dns_configuration_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsConfiguration(Model): + """DNS configuration for the container group. + + All required parameters must be populated in order to send to Azure. + + :param name_servers: Required. The DNS servers for the container group. + :type name_servers: list[str] + :param search_domains: The DNS search domains for hostname lookup in the + container group. + :type search_domains: str + :param options: The DNS options for the container group. + :type options: str + """ + + _validation = { + 'name_servers': {'required': True}, + } + + _attribute_map = { + 'name_servers': {'key': 'nameServers', 'type': '[str]'}, + 'search_domains': {'key': 'searchDomains', 'type': 'str'}, + 'options': {'key': 'options', 'type': 'str'}, + } + + def __init__(self, *, name_servers, search_domains: str=None, options: str=None, **kwargs) -> None: + super(DnsConfiguration, self).__init__(**kwargs) + self.name_servers = name_servers + self.search_domains = search_domains + self.options = options diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/gpu_resource.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/gpu_resource.py new file mode 100644 index 000000000000..6b9bf7d7bf06 --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/gpu_resource.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GpuResource(Model): + """The GPU resource. + + All required parameters must be populated in order to send to Azure. + + :param count: Required. The count of the GPU resource. + :type count: int + :param sku: Required. The SKU of the GPU resource. Possible values + include: 'K80', 'P100', 'V100' + :type sku: str or ~azure.mgmt.containerinstance.models.GpuSku + """ + + _validation = { + 'count': {'required': True}, + 'sku': {'required': True}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + 'sku': {'key': 'sku', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GpuResource, self).__init__(**kwargs) + self.count = kwargs.get('count', None) + self.sku = kwargs.get('sku', None) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/gpu_resource_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/gpu_resource_py3.py new file mode 100644 index 000000000000..c2b110219889 --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/gpu_resource_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GpuResource(Model): + """The GPU resource. + + All required parameters must be populated in order to send to Azure. + + :param count: Required. The count of the GPU resource. + :type count: int + :param sku: Required. The SKU of the GPU resource. Possible values + include: 'K80', 'P100', 'V100' + :type sku: str or ~azure.mgmt.containerinstance.models.GpuSku + """ + + _validation = { + 'count': {'required': True}, + 'sku': {'required': True}, + } + + _attribute_map = { + 'count': {'key': 'count', 'type': 'int'}, + 'sku': {'key': 'sku', 'type': 'str'}, + } + + def __init__(self, *, count: int, sku, **kwargs) -> None: + super(GpuResource, self).__init__(**kwargs) + self.count = count + self.sku = sku diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/ip_address.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/ip_address.py index 07d02792b719..e8a8be371071 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/ip_address.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/ip_address.py @@ -22,9 +22,10 @@ class IpAddress(Model): :param ports: Required. The list of ports exposed on the container group. :type ports: list[~azure.mgmt.containerinstance.models.Port] - :ivar type: Required. Specifies if the IP is exposed to the public - internet. Default value: "Public" . - :vartype type: str + :param type: Required. Specifies if the IP is exposed to the public + internet or private VNET. Possible values include: 'Public', 'Private' + :type type: str or + ~azure.mgmt.containerinstance.models.ContainerGroupIpAddressType :param ip: The IP exposed to the public internet. :type ip: str :param dns_name_label: The Dns name label for the IP. @@ -35,7 +36,7 @@ class IpAddress(Model): _validation = { 'ports': {'required': True}, - 'type': {'required': True, 'constant': True}, + 'type': {'required': True}, 'fqdn': {'readonly': True}, } @@ -47,11 +48,10 @@ class IpAddress(Model): 'fqdn': {'key': 'fqdn', 'type': 'str'}, } - type = "Public" - def __init__(self, **kwargs): super(IpAddress, self).__init__(**kwargs) self.ports = kwargs.get('ports', None) + self.type = kwargs.get('type', None) self.ip = kwargs.get('ip', None) self.dns_name_label = kwargs.get('dns_name_label', None) self.fqdn = None diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/ip_address_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/ip_address_py3.py index 752618b68479..cc21d6cedcc8 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/ip_address_py3.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/ip_address_py3.py @@ -22,9 +22,10 @@ class IpAddress(Model): :param ports: Required. The list of ports exposed on the container group. :type ports: list[~azure.mgmt.containerinstance.models.Port] - :ivar type: Required. Specifies if the IP is exposed to the public - internet. Default value: "Public" . - :vartype type: str + :param type: Required. Specifies if the IP is exposed to the public + internet or private VNET. Possible values include: 'Public', 'Private' + :type type: str or + ~azure.mgmt.containerinstance.models.ContainerGroupIpAddressType :param ip: The IP exposed to the public internet. :type ip: str :param dns_name_label: The Dns name label for the IP. @@ -35,7 +36,7 @@ class IpAddress(Model): _validation = { 'ports': {'required': True}, - 'type': {'required': True, 'constant': True}, + 'type': {'required': True}, 'fqdn': {'readonly': True}, } @@ -47,11 +48,10 @@ class IpAddress(Model): 'fqdn': {'key': 'fqdn', 'type': 'str'}, } - type = "Public" - - def __init__(self, *, ports, ip: str=None, dns_name_label: str=None, **kwargs) -> None: + def __init__(self, *, ports, type, ip: str=None, dns_name_label: str=None, **kwargs) -> None: super(IpAddress, self).__init__(**kwargs) self.ports = ports + self.type = type self.ip = ip self.dns_name_label = dns_name_label self.fqdn = None diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/log_analytics.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/log_analytics.py index 7179478dda9d..b83202bc1dde 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/log_analytics.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/log_analytics.py @@ -21,6 +21,12 @@ class LogAnalytics(Model): :type workspace_id: str :param workspace_key: Required. The workspace key for log analytics :type workspace_key: str + :param log_type: The log type to be used. Possible values include: + 'ContainerInsights', 'ContainerInstanceLogs' + :type log_type: str or + ~azure.mgmt.containerinstance.models.LogAnalyticsLogType + :param metadata: Metadata for log analytics. + :type metadata: dict[str, str] """ _validation = { @@ -31,9 +37,13 @@ class LogAnalytics(Model): _attribute_map = { 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, 'workspace_key': {'key': 'workspaceKey', 'type': 'str'}, + 'log_type': {'key': 'logType', 'type': 'str'}, + 'metadata': {'key': 'metadata', 'type': '{str}'}, } def __init__(self, **kwargs): super(LogAnalytics, self).__init__(**kwargs) self.workspace_id = kwargs.get('workspace_id', None) self.workspace_key = kwargs.get('workspace_key', None) + self.log_type = kwargs.get('log_type', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/log_analytics_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/log_analytics_py3.py index a628d09e0d45..c04a396961c3 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/log_analytics_py3.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/log_analytics_py3.py @@ -21,6 +21,12 @@ class LogAnalytics(Model): :type workspace_id: str :param workspace_key: Required. The workspace key for log analytics :type workspace_key: str + :param log_type: The log type to be used. Possible values include: + 'ContainerInsights', 'ContainerInstanceLogs' + :type log_type: str or + ~azure.mgmt.containerinstance.models.LogAnalyticsLogType + :param metadata: Metadata for log analytics. + :type metadata: dict[str, str] """ _validation = { @@ -31,9 +37,13 @@ class LogAnalytics(Model): _attribute_map = { 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, 'workspace_key': {'key': 'workspaceKey', 'type': 'str'}, + 'log_type': {'key': 'logType', 'type': 'str'}, + 'metadata': {'key': 'metadata', 'type': '{str}'}, } - def __init__(self, *, workspace_id: str, workspace_key: str, **kwargs) -> None: + def __init__(self, *, workspace_id: str, workspace_key: str, log_type=None, metadata=None, **kwargs) -> None: super(LogAnalytics, self).__init__(**kwargs) self.workspace_id = workspace_id self.workspace_key = workspace_key + self.log_type = log_type + self.metadata = metadata diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_limits.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_limits.py index b30fddc28856..d3f4972ff33c 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_limits.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_limits.py @@ -19,14 +19,18 @@ class ResourceLimits(Model): :type memory_in_gb: float :param cpu: The CPU limit of this container instance. :type cpu: float + :param gpu: The GPU limit of this container instance. + :type gpu: ~azure.mgmt.containerinstance.models.GpuResource """ _attribute_map = { 'memory_in_gb': {'key': 'memoryInGB', 'type': 'float'}, 'cpu': {'key': 'cpu', 'type': 'float'}, + 'gpu': {'key': 'gpu', 'type': 'GpuResource'}, } def __init__(self, **kwargs): super(ResourceLimits, self).__init__(**kwargs) self.memory_in_gb = kwargs.get('memory_in_gb', None) self.cpu = kwargs.get('cpu', None) + self.gpu = kwargs.get('gpu', None) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_limits_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_limits_py3.py index ec57b66a1458..a702acaf33b4 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_limits_py3.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_limits_py3.py @@ -19,14 +19,18 @@ class ResourceLimits(Model): :type memory_in_gb: float :param cpu: The CPU limit of this container instance. :type cpu: float + :param gpu: The GPU limit of this container instance. + :type gpu: ~azure.mgmt.containerinstance.models.GpuResource """ _attribute_map = { 'memory_in_gb': {'key': 'memoryInGB', 'type': 'float'}, 'cpu': {'key': 'cpu', 'type': 'float'}, + 'gpu': {'key': 'gpu', 'type': 'GpuResource'}, } - def __init__(self, *, memory_in_gb: float=None, cpu: float=None, **kwargs) -> None: + def __init__(self, *, memory_in_gb: float=None, cpu: float=None, gpu=None, **kwargs) -> None: super(ResourceLimits, self).__init__(**kwargs) self.memory_in_gb = memory_in_gb self.cpu = cpu + self.gpu = gpu diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_requests.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_requests.py index 1ab6580d6eda..74817e729c42 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_requests.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_requests.py @@ -22,6 +22,8 @@ class ResourceRequests(Model): :type memory_in_gb: float :param cpu: Required. The CPU request of this container instance. :type cpu: float + :param gpu: The GPU request of this container instance. + :type gpu: ~azure.mgmt.containerinstance.models.GpuResource """ _validation = { @@ -32,9 +34,11 @@ class ResourceRequests(Model): _attribute_map = { 'memory_in_gb': {'key': 'memoryInGB', 'type': 'float'}, 'cpu': {'key': 'cpu', 'type': 'float'}, + 'gpu': {'key': 'gpu', 'type': 'GpuResource'}, } def __init__(self, **kwargs): super(ResourceRequests, self).__init__(**kwargs) self.memory_in_gb = kwargs.get('memory_in_gb', None) self.cpu = kwargs.get('cpu', None) + self.gpu = kwargs.get('gpu', None) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_requests_py3.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_requests_py3.py index a0c78fc84cd9..f4ab13f5efa8 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_requests_py3.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/models/resource_requests_py3.py @@ -22,6 +22,8 @@ class ResourceRequests(Model): :type memory_in_gb: float :param cpu: Required. The CPU request of this container instance. :type cpu: float + :param gpu: The GPU request of this container instance. + :type gpu: ~azure.mgmt.containerinstance.models.GpuResource """ _validation = { @@ -32,9 +34,11 @@ class ResourceRequests(Model): _attribute_map = { 'memory_in_gb': {'key': 'memoryInGB', 'type': 'float'}, 'cpu': {'key': 'cpu', 'type': 'float'}, + 'gpu': {'key': 'gpu', 'type': 'GpuResource'}, } - def __init__(self, *, memory_in_gb: float, cpu: float, **kwargs) -> None: + def __init__(self, *, memory_in_gb: float, cpu: float, gpu=None, **kwargs) -> None: super(ResourceRequests, self).__init__(**kwargs) self.memory_in_gb = memory_in_gb self.cpu = cpu + self.gpu = gpu diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/__init__.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/__init__.py index 53b4a7945cca..2ddda1c9f4a9 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/__init__.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/__init__.py @@ -13,10 +13,12 @@ from .operations import Operations from .container_group_usage_operations import ContainerGroupUsageOperations from .container_operations import ContainerOperations +from .service_association_link_operations import ServiceAssociationLinkOperations __all__ = [ 'ContainerGroupsOperations', 'Operations', 'ContainerGroupUsageOperations', 'ContainerOperations', + 'ServiceAssociationLinkOperations', ] diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_group_usage_operations.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_group_usage_operations.py index 42b2710e9d49..eb2e67c1af7b 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_group_usage_operations.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_group_usage_operations.py @@ -23,7 +23,7 @@ class ContainerGroupUsageOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API version. Constant value: "2018-06-01". + :ivar api_version: Client API version. Constant value: "2018-10-01". """ models = models @@ -33,7 +33,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01" + self.api_version = "2018-10-01" self.config = config @@ -67,7 +67,7 @@ def list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,8 +76,8 @@ def list( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_groups_operations.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_groups_operations.py index 2c5e3b6647f3..ac232f6e2d82 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_groups_operations.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_groups_operations.py @@ -25,7 +25,7 @@ class ContainerGroupsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API version. Constant value: "2018-06-01". + :ivar api_version: Client API version. Constant value: "2018-10-01". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01" + self.api_version = "2018-10-01" self.config = config @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -152,7 +151,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,9 +160,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -222,7 +220,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -231,8 +229,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -269,6 +267,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -281,9 +280,8 @@ def _create_or_update_initial( body_content = self._serialize.body(container_group, 'ContainerGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -398,6 +396,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -410,9 +409,8 @@ def update( body_content = self._serialize.body(resource, 'Resource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -468,7 +466,7 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -477,8 +475,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -496,3 +494,141 @@ def delete( return deserialized delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}'} + + + def _restart_initial( + self, resource_group_name, container_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.restart.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'containerGroupName': self._serialize.url("container_group_name", container_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def restart( + self, resource_group_name, container_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Restarts all containers in a container group. + + Restarts all containers in a container group in place. If container + image has updates, new image will be downloaded. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param container_group_name: The name of the container group. + :type container_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._restart_initial( + resource_group_name=resource_group_name, + container_group_name=container_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restart.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/restart'} + + def stop( + self, resource_group_name, container_group_name, custom_headers=None, raw=False, **operation_config): + """Stops all containers in a container group. + + Stops all containers in a container group. Compute resources will be + deallocated and billing will stop. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param container_group_name: The name of the container group. + :type container_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'containerGroupName': self._serialize.url("container_group_name", container_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/stop'} diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_operations.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_operations.py index a6d9457580e7..13b83c2053e6 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_operations.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/container_operations.py @@ -23,7 +23,7 @@ class ContainerOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API version. Constant value: "2018-06-01". + :ivar api_version: Client API version. Constant value: "2018-10-01". """ models = models @@ -33,7 +33,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01" + self.api_version = "2018-10-01" self.config = config @@ -82,7 +82,7 @@ def list_logs( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,8 +91,8 @@ def list_logs( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -157,6 +157,7 @@ def execute_command( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -169,9 +170,8 @@ def execute_command( body_content = self._serialize.body(container_exec_request, 'ContainerExecRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/operations.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/operations.py index 9de4177e731e..2b6806d3a7b7 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/operations.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/operations.py @@ -23,7 +23,7 @@ class Operations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Client API version. Constant value: "2018-06-01". + :ivar api_version: Client API version. Constant value: "2018-10-01". """ models = models @@ -33,7 +33,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01" + self.api_version = "2018-10-01" self.config = config @@ -60,7 +60,7 @@ def list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -69,8 +69,8 @@ def list( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/service_association_link_operations.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/service_association_link_operations.py new file mode 100644 index 000000000000..89c383a6eeb3 --- /dev/null +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/operations/service_association_link_operations.py @@ -0,0 +1,97 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ServiceAssociationLinkOperations(object): + """ServiceAssociationLinkOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-10-01" + + self.config = config + + def delete( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, **operation_config): + """Delete the container instance service association link for the subnet. + + Delete the container instance service association link for the subnet. + This operation unblocks user from deleting subnet. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default'} diff --git a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/version.py b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/version.py index a39916c162ce..d24076f8d84b 100644 --- a/azure-mgmt-containerinstance/azure/mgmt/containerinstance/version.py +++ b/azure-mgmt-containerinstance/azure/mgmt/containerinstance/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "1.0.0" +VERSION = "1.3.0" diff --git a/azure-mgmt-containerinstance/azure_bdist_wheel.py b/azure-mgmt-containerinstance/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-containerinstance/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-containerinstance/setup.cfg b/azure-mgmt-containerinstance/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-containerinstance/setup.cfg +++ b/azure-mgmt-containerinstance/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-containerinstance/setup.py b/azure-mgmt-containerinstance/setup.py index 1f016a4e02ef..5d32ceb7f0bc 100644 --- a/azure-mgmt-containerinstance/setup.py +++ b/azure-mgmt-containerinstance/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-containerinstance" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-containerinstance/tests/recordings/test_mgmt_containerinstance.test_container_instance.yaml b/azure-mgmt-containerinstance/tests/recordings/test_mgmt_containerinstance.test_container_instance.yaml index 5957bb309e7e..2f969c89b297 100644 --- a/azure-mgmt-containerinstance/tests/recordings/test_mgmt_containerinstance.test_container_instance.yaml +++ b/azure-mgmt-containerinstance/tests/recordings/test_mgmt_containerinstance.test_container_instance.yaml @@ -1,38 +1,37 @@ interactions: - request: - body: '{"location": "westus", "properties": {"containers": [{"name": "pycontainer26441510", - "properties": {"image": "alpine:latest", "resources": {"requests": {"memoryInGB": - 1.0, "cpu": 1.0}}, "volumeMounts": [{"name": "empty-volume", "mountPath": "/mnt/mydir"}], - "livenessProbe": {"exec": {"command": ["cat/tmp/healthy"]}, "periodSeconds": - 5}}}], "restartPolicy": "OnFailure", "osType": "Linux", "volumes": [{"name": - "empty-volume", "emptyDir": {}}], "diagnostics": {"logAnalytics": {"workspaceId": - "workspaceId", "workspaceKey": "workspaceKey"}}}}' + body: '{"location": "westus", "identity": {"type": "SystemAssigned"}, "properties": + {"containers": [{"name": "pycontainer26441510", "properties": {"image": "alpine:latest", + "resources": {"requests": {"memoryInGB": 1.0, "cpu": 1.0}}, "volumeMounts": + [{"name": "empty-volume", "mountPath": "/mnt/mydir"}], "livenessProbe": {"exec": + {"command": ["cat/tmp/healthy"]}, "periodSeconds": 5}}}], "restartPolicy": "OnFailure", + "osType": "Linux", "volumes": [{"name": "empty-volume", "emptyDir": {}}], "diagnostics": + {"logAnalytics": {"workspaceId": "workspaceId", "workspaceKey": "workspaceKey"}}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['542'] + Content-Length: ['582'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.5.0 - msrest_azure/0.4.31 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510?api-version=2018-10-01 response: - body: {string: '{"properties":{"provisioningState":"Pending","containers":[{"name":"pycontainer26441510","properties":{"image":"alpine:latest","ports":[],"environmentVariables":[],"resources":{"requests":{"memoryInGB":1.0,"cpu":1.0}},"volumeMounts":[{"name":"empty-volume","mountPath":"/mnt/mydir"}],"livenessProbe":{"exec":{"command":["cat/tmp/healthy"]},"periodSeconds":5}}}],"restartPolicy":"OnFailure","osType":"Linux","volumes":[{"name":"empty-volume","emptyDir":{}}],"instanceView":{"state":"Pending"},"diagnostics":{"logAnalytics":{"workspaceId":"workspaceId"}}},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","name":"pycontainer26441510","type":"Microsoft.ContainerInstance/containerGroups","location":"westus"}'} + body: {string: '{"properties":{"provisioningState":"Pending","containers":[{"name":"pycontainer26441510","properties":{"image":"alpine:latest","ports":[],"environmentVariables":[],"resources":{"requests":{"memoryInGB":1.0,"cpu":1.0}},"volumeMounts":[{"name":"empty-volume","mountPath":"/mnt/mydir"}],"livenessProbe":{"exec":{"command":["cat/tmp/healthy"]},"periodSeconds":5}}}],"restartPolicy":"OnFailure","osType":"Linux","volumes":[{"name":"empty-volume","emptyDir":{}}],"instanceView":{"state":"Pending"},"diagnostics":{"logAnalytics":{"workspaceId":"workspaceId"}}},"identity":{"principalId":"5b9c7825-cea3-438c-9d39-67e7284a4c46","tenantId":"72f988bf-86f1-41af-91ab-2d7cd011db47","type":"SystemAssigned"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","name":"pycontainer26441510","type":"Microsoft.ContainerInstance/containerGroups","location":"westus"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerInstance/locations/West - US/operations/38a57cb2-77ab-4dc6-bc1d-c9267e266050?api-version=2018-02-01-preview'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerInstance/locations/westus/operations/badf1f90-0b6a-4f30-bee0-21083e0f91df?api-version=2018-06-01'] cache-control: [no-cache] - content-length: ['864'] + content-length: ['1004'] content-type: [application/json; charset=utf-8] - date: ['Wed, 20 Jun 2018 17:04:01 GMT'] + date: ['Mon, 08 Oct 2018 16:46:22 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests-pt1h: ['95'] - x-ms-ratelimit-remaining-subscription-resource-requests-pt5m: ['98'] + x-ms-ratelimit-remaining-subscription-resource-requests-pt1h: ['96'] + x-ms-ratelimit-remaining-subscription-resource-requests-pt5m: ['99'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: @@ -41,21 +40,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.5.0 - msrest_azure/0.4.31 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerInstance/locations/West%20US/operations/38a57cb2-77ab-4dc6-bc1d-c9267e266050?api-version=2018-02-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerInstance/locations/westus/operations/badf1f90-0b6a-4f30-bee0-21083e0f91df?api-version=2018-06-01 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","status":"Succeeded","startTime":"2018-06-20T17:04:01.7830474Z","properties":{"events":[{"count":1,"firstTimestamp":"2018-06-20T17:04:06Z","lastTimestamp":"2018-06-20T17:04:06Z","name":"Pulling","message":"pulling - image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:08Z","lastTimestamp":"2018-06-20T17:04:08Z","name":"Pulled","message":"Successfully - pulled image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:08Z","lastTimestamp":"2018-06-20T17:04:08Z","name":"Created","message":"Created - container with id d4c98fbf2fac00198db4b3c803f6a959fc9e3dac9b470f67ffe58ffa29f75f5f","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:09Z","lastTimestamp":"2018-06-20T17:04:09Z","name":"Started","message":"Started - container with id d4c98fbf2fac00198db4b3c803f6a959fc9e3dac9b470f67ffe58ffa29f75f5f","type":"Normal"}]}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","status":"Succeeded","startTime":"2018-10-08T16:46:22.8846678Z","properties":{"events":[{"count":1,"firstTimestamp":"2018-10-08T16:46:25Z","lastTimestamp":"2018-10-08T16:46:25Z","name":"Pulling","message":"pulling + image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:29Z","lastTimestamp":"2018-10-08T16:46:29Z","name":"Pulled","message":"Successfully + pulled image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:29Z","lastTimestamp":"2018-10-08T16:46:29Z","name":"Created","message":"Created + container with id 0b19efa0986f5d279fab6c12dde2c658251be7cb4ef7bb693711c43055f6637b","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:30Z","lastTimestamp":"2018-10-08T16:46:30Z","name":"Started","message":"Started + container with id 0b19efa0986f5d279fab6c12dde2c658251be7cb4ef7bb693711c43055f6637b","type":"Normal"}]}}'} headers: cache-control: [no-cache] content-length: ['1100'] content-type: [application/json; charset=utf-8] - date: ['Wed, 20 Jun 2018 17:04:32 GMT'] + date: ['Mon, 08 Oct 2018 16:46:54 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -69,21 +68,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.5.0 - msrest_azure/0.4.31 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510?api-version=2018-10-01 response: - body: {string: '{"properties":{"provisioningState":"Succeeded","containers":[{"name":"pycontainer26441510","properties":{"image":"alpine:latest","ports":[],"environmentVariables":[],"instanceView":{"restartCount":0,"currentState":{"state":"Terminated","startTime":"2018-06-20T17:04:09Z","exitCode":0,"finishTime":"2018-06-20T17:04:09Z","detailStatus":"Completed"},"events":[{"count":1,"firstTimestamp":"2018-06-20T17:04:06Z","lastTimestamp":"2018-06-20T17:04:06Z","name":"Pulling","message":"pulling - image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:08Z","lastTimestamp":"2018-06-20T17:04:08Z","name":"Pulled","message":"Successfully - pulled image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:08Z","lastTimestamp":"2018-06-20T17:04:08Z","name":"Created","message":"Created - container with id d4c98fbf2fac00198db4b3c803f6a959fc9e3dac9b470f67ffe58ffa29f75f5f","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:09Z","lastTimestamp":"2018-06-20T17:04:09Z","name":"Started","message":"Started - container with id d4c98fbf2fac00198db4b3c803f6a959fc9e3dac9b470f67ffe58ffa29f75f5f","type":"Normal"}]},"resources":{"requests":{"memoryInGB":1.0,"cpu":1.0}},"volumeMounts":[{"name":"empty-volume","mountPath":"/mnt/mydir"}],"livenessProbe":{"exec":{"command":["cat/tmp/healthy"]},"periodSeconds":5}}}],"restartPolicy":"OnFailure","osType":"Linux","volumes":[{"name":"empty-volume","emptyDir":{}}],"instanceView":{"events":[],"state":"Succeeded"},"diagnostics":{"logAnalytics":{"workspaceId":"workspaceId"}}},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","name":"pycontainer26441510","type":"Microsoft.ContainerInstance/containerGroups","location":"westus"}'} + body: {string: '{"properties":{"provisioningState":"Succeeded","containers":[{"name":"pycontainer26441510","properties":{"image":"alpine:latest","ports":[],"environmentVariables":[],"instanceView":{"restartCount":0,"currentState":{"state":"Terminated","startTime":"2018-10-08T16:46:30Z","exitCode":0,"finishTime":"2018-10-08T16:46:30Z","detailStatus":"Completed"},"events":[{"count":1,"firstTimestamp":"2018-10-08T16:46:25Z","lastTimestamp":"2018-10-08T16:46:25Z","name":"Pulling","message":"pulling + image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:29Z","lastTimestamp":"2018-10-08T16:46:29Z","name":"Pulled","message":"Successfully + pulled image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:29Z","lastTimestamp":"2018-10-08T16:46:29Z","name":"Created","message":"Created + container with id 0b19efa0986f5d279fab6c12dde2c658251be7cb4ef7bb693711c43055f6637b","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:30Z","lastTimestamp":"2018-10-08T16:46:30Z","name":"Started","message":"Started + container with id 0b19efa0986f5d279fab6c12dde2c658251be7cb4ef7bb693711c43055f6637b","type":"Normal"}]},"resources":{"requests":{"memoryInGB":1.0,"cpu":1.0}},"volumeMounts":[{"name":"empty-volume","mountPath":"/mnt/mydir"}],"livenessProbe":{"exec":{"command":["cat/tmp/healthy"]},"periodSeconds":5}}}],"restartPolicy":"OnFailure","osType":"Linux","volumes":[{"name":"empty-volume","emptyDir":{}}],"instanceView":{"events":[],"state":"Succeeded"},"diagnostics":{"logAnalytics":{"workspaceId":"workspaceId"}}},"identity":{"principalId":"5b9c7825-cea3-438c-9d39-67e7284a4c46","tenantId":"72f988bf-86f1-41af-91ab-2d7cd011db47","type":"SystemAssigned"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","name":"pycontainer26441510","type":"Microsoft.ContainerInstance/containerGroups","location":"westus"}'} headers: cache-control: [no-cache] - content-length: ['1875'] + content-length: ['2015'] content-type: [application/json; charset=utf-8] - date: ['Wed, 20 Jun 2018 17:04:33 GMT'] + date: ['Mon, 08 Oct 2018 16:46:54 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -97,23 +96,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.5.0 - msrest_azure/0.4.31 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510?api-version=2018-10-01 response: - body: {string: '{"properties":{"provisioningState":"Succeeded","containers":[{"name":"pycontainer26441510","properties":{"image":"alpine:latest","ports":[],"environmentVariables":[],"instanceView":{"restartCount":0,"currentState":{"state":"Terminated","startTime":"2018-06-20T17:04:09Z","exitCode":0,"finishTime":"2018-06-20T17:04:09Z","detailStatus":"Completed"},"events":[{"count":1,"firstTimestamp":"2018-06-20T17:04:06Z","lastTimestamp":"2018-06-20T17:04:06Z","name":"Pulling","message":"pulling - image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:08Z","lastTimestamp":"2018-06-20T17:04:08Z","name":"Pulled","message":"Successfully - pulled image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:08Z","lastTimestamp":"2018-06-20T17:04:08Z","name":"Created","message":"Created - container with id d4c98fbf2fac00198db4b3c803f6a959fc9e3dac9b470f67ffe58ffa29f75f5f","type":"Normal"},{"count":1,"firstTimestamp":"2018-06-20T17:04:09Z","lastTimestamp":"2018-06-20T17:04:09Z","name":"Started","message":"Started - container with id d4c98fbf2fac00198db4b3c803f6a959fc9e3dac9b470f67ffe58ffa29f75f5f","type":"Normal"}]},"resources":{"requests":{"memoryInGB":1.0,"cpu":1.0}},"volumeMounts":[{"name":"empty-volume","mountPath":"/mnt/mydir"}],"livenessProbe":{"exec":{"command":["cat/tmp/healthy"]},"periodSeconds":5}}}],"restartPolicy":"OnFailure","osType":"Linux","volumes":[{"name":"empty-volume","emptyDir":{}}],"instanceView":{"events":[],"state":"Succeeded"},"diagnostics":{"logAnalytics":{"workspaceId":"workspaceId"}}},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","name":"pycontainer26441510","type":"Microsoft.ContainerInstance/containerGroups","location":"westus"}'} + body: {string: '{"properties":{"provisioningState":"Succeeded","containers":[{"name":"pycontainer26441510","properties":{"image":"alpine:latest","ports":[],"environmentVariables":[],"instanceView":{"restartCount":0,"currentState":{"state":"Terminated","startTime":"2018-10-08T16:46:30Z","exitCode":0,"finishTime":"2018-10-08T16:46:30Z","detailStatus":"Completed"},"events":[{"count":1,"firstTimestamp":"2018-10-08T16:46:25Z","lastTimestamp":"2018-10-08T16:46:25Z","name":"Pulling","message":"pulling + image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:29Z","lastTimestamp":"2018-10-08T16:46:29Z","name":"Pulled","message":"Successfully + pulled image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:29Z","lastTimestamp":"2018-10-08T16:46:29Z","name":"Created","message":"Created + container with id 0b19efa0986f5d279fab6c12dde2c658251be7cb4ef7bb693711c43055f6637b","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:30Z","lastTimestamp":"2018-10-08T16:46:30Z","name":"Started","message":"Started + container with id 0b19efa0986f5d279fab6c12dde2c658251be7cb4ef7bb693711c43055f6637b","type":"Normal"}]},"resources":{"requests":{"memoryInGB":1.0,"cpu":1.0}},"volumeMounts":[{"name":"empty-volume","mountPath":"/mnt/mydir"}],"livenessProbe":{"exec":{"command":["cat/tmp/healthy"]},"periodSeconds":5}}}],"restartPolicy":"OnFailure","osType":"Linux","volumes":[{"name":"empty-volume","emptyDir":{}}],"instanceView":{"events":[],"state":"Succeeded"},"diagnostics":{"logAnalytics":{"workspaceId":"workspaceId"}}},"identity":{"principalId":"5b9c7825-cea3-438c-9d39-67e7284a4c46","tenantId":"72f988bf-86f1-41af-91ab-2d7cd011db47","type":"SystemAssigned"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","name":"pycontainer26441510","type":"Microsoft.ContainerInstance/containerGroups","location":"westus"}'} headers: cache-control: [no-cache] - content-length: ['1875'] + content-length: ['2015'] content-type: [application/json; charset=utf-8] - date: ['Wed, 20 Jun 2018 17:04:34 GMT'] + date: ['Mon, 08 Oct 2018 16:46:55 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -127,19 +125,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.5.0 - msrest_azure/0.4.31 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups?api-version=2018-10-01 response: - body: {string: '{"value":[{"properties":{"provisioningState":"Succeeded","containers":[{"name":"pycontainer26441510","properties":{"image":"alpine:latest","ports":[],"environmentVariables":[],"resources":{"requests":{"memoryInGB":1.0,"cpu":1.0}},"volumeMounts":[{"name":"empty-volume","mountPath":"/mnt/mydir"}],"livenessProbe":{"exec":{"command":["cat/tmp/healthy"]},"periodSeconds":5}}}],"restartPolicy":"OnFailure","osType":"Linux","volumes":[{"name":"empty-volume","emptyDir":{}}],"diagnostics":{"logAnalytics":{"workspaceId":"workspaceId"}}},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","name":"pycontainer26441510","type":"Microsoft.ContainerInstance/containerGroups","location":"westus"}]}'} + body: {string: '{"value":[{"properties":{"provisioningState":"Succeeded","containers":[{"name":"pycontainer26441510","properties":{"image":"alpine:latest","ports":[],"environmentVariables":[],"resources":{"requests":{"memoryInGB":1.0,"cpu":1.0}},"volumeMounts":[{"name":"empty-volume","mountPath":"/mnt/mydir"}],"livenessProbe":{"exec":{"command":["cat/tmp/healthy"]},"periodSeconds":5}}}],"restartPolicy":"OnFailure","osType":"Linux","volumes":[{"name":"empty-volume","emptyDir":{}}],"diagnostics":{"logAnalytics":{"workspaceId":"workspaceId"}}},"identity":{"principalId":"5b9c7825-cea3-438c-9d39-67e7284a4c46","tenantId":"72f988bf-86f1-41af-91ab-2d7cd011db47","type":"SystemAssigned"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","name":"pycontainer26441510","type":"Microsoft.ContainerInstance/containerGroups","location":"westus"}]}'} headers: cache-control: [no-cache] - content-length: ['843'] + content-length: ['983'] content-type: [application/json; charset=utf-8] - date: ['Wed, 20 Jun 2018 17:04:34 GMT'] + date: ['Mon, 08 Oct 2018 16:46:56 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -155,18 +152,18 @@ interactions: Connection: [keep-alive] Content-Length: ['66'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.5.0 - msrest_azure/0.4.31 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510/containers/pycontainer26441510/exec?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510/containers/pycontainer26441510/exec?api-version=2018-10-01 response: - body: {string: '{"webSocketUri":"wss://bridge-linux-17.westus.management.azurecontainer.io/exec/caas-b366c4d398d2446186000db440d682dd/bridge-9658fa886f0ac586?rows=24&cols=80&api-version=2018-02-01-preview","password":"ACurGmg7CGUu_utlaXMzgOBUkdalQU_3shgrdGzsV5A[[EOM]]"}'} + body: {string: '{"webSocketUri":"wss://bridge-linux-04.westus.management.azurecontainer.io/exec/caas-15dc6bc1d2404ce9bfb7e9e16ac1e70d/bridge-9658fa886f0ac586?rows=24&cols=80&api-version=2018-02-01-preview","password":"Zv3AhfxiTlsEKCIbm8YrLUlwb1Uco2zXllZOsVpJbTE[[EOM]]"}'} headers: cache-control: [no-cache] content-length: ['254'] content-type: [application/json; charset=utf-8] - date: ['Wed, 20 Jun 2018 17:04:35 GMT'] + date: ['Mon, 08 Oct 2018 16:46:57 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -181,19 +178,70 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.5.0 - msrest_azure/0.4.31 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510/containers/pycontainer26441510/logs?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510/containers/pycontainer26441510/logs?api-version=2018-10-01 response: body: {string: '{"content":""}'} headers: cache-control: [no-cache] content-length: ['14'] content-type: [application/json; charset=utf-8] - date: ['Wed, 20 Jun 2018 17:04:35 GMT'] + date: ['Mon, 08 Oct 2018 16:46:58 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: ['Accept-Encoding,Accept-Encoding'] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510/restart?api-version=2018-10-01 + response: + body: {string: ''} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerInstance/locations/westus/operations/5dd8ccdd-4f3e-47a9-a3da-05c76ef89bb2?api-version=2018-06-01'] + cache-control: [no-cache] + date: ['Mon, 08 Oct 2018 16:46:59 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 204, message: No Content} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.2 (Windows-10-10.0.17763-SP0) requests/2.18.4 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-containerinstance/1.0.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerInstance/locations/westus/operations/5dd8ccdd-4f3e-47a9-a3da-05c76ef89bb2?api-version=2018-06-01 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerinstance_test_container_instance26441510/providers/Microsoft.ContainerInstance/containerGroups/pycontainer26441510","status":"Succeeded","startTime":"2018-10-08T16:46:59.7788433Z","properties":{"events":[{"count":1,"firstTimestamp":"2018-10-08T16:46:25Z","lastTimestamp":"2018-10-08T16:46:25Z","name":"Pulling","message":"pulling + image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:29Z","lastTimestamp":"2018-10-08T16:46:29Z","name":"Pulled","message":"Successfully + pulled image \"alpine:latest\"","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:29Z","lastTimestamp":"2018-10-08T16:46:29Z","name":"Created","message":"Created + container with id 0b19efa0986f5d279fab6c12dde2c658251be7cb4ef7bb693711c43055f6637b","type":"Normal"},{"count":1,"firstTimestamp":"2018-10-08T16:46:30Z","lastTimestamp":"2018-10-08T16:46:30Z","name":"Started","message":"Started + container with id 0b19efa0986f5d279fab6c12dde2c658251be7cb4ef7bb693711c43055f6637b","type":"Normal"}]}}'} + headers: + cache-control: [no-cache] + content-length: ['1100'] + content-type: [application/json; charset=utf-8] + date: ['Mon, 08 Oct 2018 16:47:30 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] diff --git a/azure-mgmt-containerinstance/tests/test_mgmt_containerinstance.py b/azure-mgmt-containerinstance/tests/test_mgmt_containerinstance.py index 4b4d56439155..c93e48cc6bc5 100644 --- a/azure-mgmt-containerinstance/tests/test_mgmt_containerinstance.py +++ b/azure-mgmt-containerinstance/tests/test_mgmt_containerinstance.py @@ -32,6 +32,7 @@ def test_container_instance(self, resource_group, location): livenessprob_period_seconds = 5 log_analytics_workspace_id = 'workspaceId' log_analytics_workspace_key = 'workspaceKey' + identity_system_assigned = 'SystemAssigned' empty_volume = Volume(name='empty-volume', empty_dir={}) volume_mount = VolumeMount(name='empty-volume', mount_path='/mnt/mydir') @@ -40,6 +41,9 @@ def test_container_instance(self, resource_group, location): resource_group.name, container_group_name, { + 'identity': { + 'type': identity_system_assigned + }, 'location': location, 'containers': [{ 'name': container_group_name, @@ -76,6 +80,7 @@ def test_container_instance(self, resource_group, location): self.assertEqual(container_group.name, container_group_name) self.assertEqual(container_group.location, location) + self.assertEqual(container_group.identity.type, identity_system_assigned) self.assertEqual(container_group.os_type, os_type) self.assertEqual(container_group.restart_policy, restart_policy) self.assertEqual(container_group.diagnostics.log_analytics.workspace_id, log_analytics_workspace_id) @@ -127,6 +132,9 @@ def test_container_instance(self, resource_group, location): # Testing Container_List_Logs containerLogResponse = self.client.container.list_logs(resource_group.name, container_group.name, container_group.containers[0].name) + # Testing Restart Container Group + poller = self.client.container_groups.restart(resource_group.name, container_group_name) + poller.result() diff --git a/azure-mgmt-containerregistry/HISTORY.rst b/azure-mgmt-containerregistry/HISTORY.rst index fc474c87bcb5..1c69470ac4a8 100644 --- a/azure-mgmt-containerregistry/HISTORY.rst +++ b/azure-mgmt-containerregistry/HISTORY.rst @@ -3,6 +3,31 @@ Release History =============== +2.4.0 (2018-11-05) +++++++++++++++++++ + +**Features** + +- Add context token to task step + +2.3.0 (2018-10-17) +++++++++++++++++++ + +- Support context path, source location URL, and pull request based triggers for task/run. +- Allow specifying credentials for source registry on import image. + +2.2.0 (2018-09-11) +++++++++++++++++++ + +**Features** + +- Added operation RegistriesOperations.get_build_source_upload_url +- Added operation RegistriesOperations.schedule_run +- Added operation group RunsOperations +- Added operation group TasksOperations + +Default API version is now 2018-09-01 + 2.1.0 (2018-07-26) ++++++++++++++++++ diff --git a/azure-mgmt-containerregistry/MANIFEST.in b/azure-mgmt-containerregistry/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-containerregistry/MANIFEST.in +++ b/azure-mgmt-containerregistry/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-containerregistry/azure/__init__.py b/azure-mgmt-containerregistry/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-containerregistry/azure/__init__.py +++ b/azure-mgmt-containerregistry/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-containerregistry/azure/mgmt/__init__.py b/azure-mgmt-containerregistry/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/__init__.py +++ b/azure-mgmt-containerregistry/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/container_registry_management_client.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/container_registry_management_client.py index 6cc46c2522ff..f7a3f3fb9dd8 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/container_registry_management_client.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/container_registry_management_client.py @@ -67,7 +67,7 @@ class ContainerRegistryManagementClient(MultiApiClientMixin, SDKClient): :param profile: A dict using operation group name to API version. :type profile: dict[str, str] """ - DEFAULT_API_VERSION = '2017-10-01' + DEFAULT_API_VERSION = '2018-09-01' _PROFILE_TAG = "azure.mgmt.containerregistry.ContainerRegistryManagementClient" LATEST_PROFILE = ProfileDefinition({ _PROFILE_TAG: { @@ -98,6 +98,7 @@ def models(cls, api_version=DEFAULT_API_VERSION): * 2017-03-01: :mod:`v2017_03_01.models` * 2017-10-01: :mod:`v2017_10_01.models` * 2018-02-01-preview: :mod:`v2018_02_01_preview.models` + * 2018-09-01: :mod:`v2018_09_01.models` """ if api_version == '2017-03-01': from .v2017_03_01 import models @@ -108,8 +109,11 @@ def models(cls, api_version=DEFAULT_API_VERSION): elif api_version == '2018-02-01-preview': from .v2018_02_01_preview import models return models + elif api_version == '2018-09-01': + from .v2018_09_01 import models + return models raise NotImplementedError("APIVersion {} is not available".format(api_version)) - + @property def build_steps(self): """Instance depends on the API version: @@ -156,6 +160,7 @@ def operations(self): * 2017-03-01: :class:`Operations` * 2017-10-01: :class:`Operations` * 2018-02-01-preview: :class:`Operations` + * 2018-09-01: :class:`Operations` """ api_version = self._get_api_version('operations') if api_version == '2017-03-01': @@ -164,6 +169,8 @@ def operations(self): from .v2017_10_01.operations import Operations as OperationClass elif api_version == '2018-02-01-preview': from .v2018_02_01_preview.operations import Operations as OperationClass + elif api_version == '2018-09-01': + from .v2018_09_01.operations import Operations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -175,6 +182,7 @@ def registries(self): * 2017-03-01: :class:`RegistriesOperations` * 2017-10-01: :class:`RegistriesOperations` * 2018-02-01-preview: :class:`RegistriesOperations` + * 2018-09-01: :class:`RegistriesOperations` """ api_version = self._get_api_version('registries') if api_version == '2017-03-01': @@ -183,6 +191,8 @@ def registries(self): from .v2017_10_01.operations import RegistriesOperations as OperationClass elif api_version == '2018-02-01-preview': from .v2018_02_01_preview.operations import RegistriesOperations as OperationClass + elif api_version == '2018-09-01': + from .v2018_09_01.operations import RegistriesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -193,12 +203,41 @@ def replications(self): * 2017-10-01: :class:`ReplicationsOperations` * 2018-02-01-preview: :class:`ReplicationsOperations` + * 2018-09-01: :class:`ReplicationsOperations` """ api_version = self._get_api_version('replications') if api_version == '2017-10-01': from .v2017_10_01.operations import ReplicationsOperations as OperationClass elif api_version == '2018-02-01-preview': from .v2018_02_01_preview.operations import ReplicationsOperations as OperationClass + elif api_version == '2018-09-01': + from .v2018_09_01.operations import ReplicationsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def runs(self): + """Instance depends on the API version: + + * 2018-09-01: :class:`RunsOperations` + """ + api_version = self._get_api_version('runs') + if api_version == '2018-09-01': + from .v2018_09_01.operations import RunsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def tasks(self): + """Instance depends on the API version: + + * 2018-09-01: :class:`TasksOperations` + """ + api_version = self._get_api_version('tasks') + if api_version == '2018-09-01': + from .v2018_09_01.operations import TasksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -209,12 +248,15 @@ def webhooks(self): * 2017-10-01: :class:`WebhooksOperations` * 2018-02-01-preview: :class:`WebhooksOperations` + * 2018-09-01: :class:`WebhooksOperations` """ api_version = self._get_api_version('webhooks') if api_version == '2017-10-01': from .v2017_10_01.operations import WebhooksOperations as OperationClass elif api_version == '2018-02-01-preview': from .v2018_02_01_preview.operations import WebhooksOperations as OperationClass + elif api_version == '2018-09-01': + from .v2018_09_01.operations import WebhooksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_03_01/operations/operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_03_01/operations/operations.py index d7fb26f84728..3fdb96944162 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_03_01/operations/operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_03_01/operations/operations.py @@ -68,7 +68,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -77,9 +77,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_03_01/operations/registries_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_03_01/operations/registries_operations.py index f5d1d26d17fd..3fbd85a74e49 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_03_01/operations/registries_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_03_01/operations/registries_operations.py @@ -73,6 +73,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -85,9 +86,8 @@ def check_name_availability( body_content = self._serialize.body(registry_name_check_request, 'RegistryNameCheckRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -140,7 +140,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -149,8 +149,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -187,6 +187,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -199,9 +200,8 @@ def _create_initial( body_content = self._serialize.body(registry_create_parameters, 'RegistryCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -305,7 +305,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -314,8 +313,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -365,6 +364,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -377,9 +377,8 @@ def update( body_content = self._serialize.body(registry_update_parameters, 'RegistryUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -436,7 +435,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -445,9 +444,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -501,7 +499,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -510,9 +508,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -568,7 +565,7 @@ def list_credentials( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -577,8 +574,8 @@ def list_credentials( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -641,6 +638,7 @@ def regenerate_credential( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -653,9 +651,8 @@ def regenerate_credential( body_content = self._serialize.body(regenerate_credential_parameters, 'RegenerateCredentialParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/__init__.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/__init__.py index 7eb9b6b270dd..964267287ad9 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/__init__.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/__init__.py @@ -10,6 +10,7 @@ # -------------------------------------------------------------------------- try: + from .import_source_credentials_py3 import ImportSourceCredentials from .import_source_py3 import ImportSource from .import_image_parameters_py3 import ImportImageParameters from .registry_name_check_request_py3 import RegistryNameCheckRequest @@ -48,6 +49,7 @@ from .event_py3 import Event from .resource_py3 import Resource except (SyntaxError, ImportError): + from .import_source_credentials import ImportSourceCredentials from .import_source import ImportSource from .import_image_parameters import ImportImageParameters from .registry_name_check_request import RegistryNameCheckRequest @@ -104,6 +106,7 @@ ) __all__ = [ + 'ImportSourceCredentials', 'ImportSource', 'ImportImageParameters', 'RegistryNameCheckRequest', diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source.py index 828a6e5ca30e..f45c51cb6cd9 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source.py @@ -17,9 +17,15 @@ class ImportSource(Model): All required parameters must be populated in order to send to Azure. - :param resource_id: Required. The resource identifier of the target Azure - Container Registry. + :param resource_id: The resource identifier of the source Azure Container + Registry. :type resource_id: str + :param registry_uri: The address of the source registry (e.g. + 'mcr.microsoft.com'). + :type registry_uri: str + :param credentials: Credentials used when importing from a registry uri. + :type credentials: + ~azure.mgmt.containerregistry.v2017_10_01.models.ImportSourceCredentials :param source_image: Required. Repository name of the source image. Specify an image by repository ('hello-world'). This will use the 'latest' tag. @@ -30,16 +36,19 @@ class ImportSource(Model): """ _validation = { - 'resource_id': {'required': True}, 'source_image': {'required': True}, } _attribute_map = { 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'registry_uri': {'key': 'registryUri', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'ImportSourceCredentials'}, 'source_image': {'key': 'sourceImage', 'type': 'str'}, } def __init__(self, **kwargs): super(ImportSource, self).__init__(**kwargs) self.resource_id = kwargs.get('resource_id', None) + self.registry_uri = kwargs.get('registry_uri', None) + self.credentials = kwargs.get('credentials', None) self.source_image = kwargs.get('source_image', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_credentials.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_credentials.py new file mode 100644 index 000000000000..b31e5f7e8405 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_credentials.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportSourceCredentials(Model): + """ImportSourceCredentials. + + All required parameters must be populated in order to send to Azure. + + :param username: The username to authenticate with the source registry. + :type username: str + :param password: Required. The password used to authenticate with the + source registry. + :type password: str + """ + + _validation = { + 'password': {'required': True}, + } + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImportSourceCredentials, self).__init__(**kwargs) + self.username = kwargs.get('username', None) + self.password = kwargs.get('password', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_credentials_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_credentials_py3.py new file mode 100644 index 000000000000..4a610e022f88 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_credentials_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportSourceCredentials(Model): + """ImportSourceCredentials. + + All required parameters must be populated in order to send to Azure. + + :param username: The username to authenticate with the source registry. + :type username: str + :param password: Required. The password used to authenticate with the + source registry. + :type password: str + """ + + _validation = { + 'password': {'required': True}, + } + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, *, password: str, username: str=None, **kwargs) -> None: + super(ImportSourceCredentials, self).__init__(**kwargs) + self.username = username + self.password = password diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_py3.py index e70cc202fe9e..7d09ecbb64f5 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_py3.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/models/import_source_py3.py @@ -17,9 +17,15 @@ class ImportSource(Model): All required parameters must be populated in order to send to Azure. - :param resource_id: Required. The resource identifier of the target Azure - Container Registry. + :param resource_id: The resource identifier of the source Azure Container + Registry. :type resource_id: str + :param registry_uri: The address of the source registry (e.g. + 'mcr.microsoft.com'). + :type registry_uri: str + :param credentials: Credentials used when importing from a registry uri. + :type credentials: + ~azure.mgmt.containerregistry.v2017_10_01.models.ImportSourceCredentials :param source_image: Required. Repository name of the source image. Specify an image by repository ('hello-world'). This will use the 'latest' tag. @@ -30,16 +36,19 @@ class ImportSource(Model): """ _validation = { - 'resource_id': {'required': True}, 'source_image': {'required': True}, } _attribute_map = { 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'registry_uri': {'key': 'registryUri', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'ImportSourceCredentials'}, 'source_image': {'key': 'sourceImage', 'type': 'str'}, } - def __init__(self, *, resource_id: str, source_image: str, **kwargs) -> None: + def __init__(self, *, source_image: str, resource_id: str=None, registry_uri: str=None, credentials=None, **kwargs) -> None: super(ImportSource, self).__init__(**kwargs) self.resource_id = resource_id + self.registry_uri = registry_uri + self.credentials = credentials self.source_image = source_image diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/operations.py index fe098496de23..5a7cc0c5c02b 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/operations.py @@ -68,7 +68,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -77,9 +77,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/registries_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/registries_operations.py index b5a5e7b2dde2..9221a98c7052 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/registries_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/registries_operations.py @@ -69,9 +69,8 @@ def _import_image_initial( body_content = self._serialize.body(parameters, 'ImportImageParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -164,6 +163,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -176,9 +176,8 @@ def check_name_availability( body_content = self._serialize.body(registry_name_check_request, 'RegistryNameCheckRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -231,7 +230,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -240,8 +239,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -278,6 +277,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -290,9 +290,8 @@ def _create_initial( body_content = self._serialize.body(registry, 'Registry') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -382,7 +381,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -391,8 +389,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -463,6 +461,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -475,9 +474,8 @@ def _update_initial( body_content = self._serialize.body(registry_update_parameters, 'RegistryUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -588,7 +586,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -597,9 +595,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -653,7 +650,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -662,9 +659,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -720,7 +716,7 @@ def list_credentials( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -729,8 +725,8 @@ def list_credentials( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -793,6 +789,7 @@ def regenerate_credential( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -805,9 +802,8 @@ def regenerate_credential( body_content = self._serialize.body(regenerate_credential_parameters, 'RegenerateCredentialParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -861,7 +857,7 @@ def list_usages( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -870,8 +866,8 @@ def list_usages( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -925,7 +921,7 @@ def list_policies( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -934,8 +930,8 @@ def list_policies( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -974,6 +970,7 @@ def _update_policies_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -986,9 +983,8 @@ def _update_policies_initial( body_content = self._serialize.body(registry_policies_update_parameters, 'RegistryPolicies') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/replications_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/replications_operations.py index 9293f57f62fc..2df735992f62 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/replications_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/replications_operations.py @@ -76,7 +76,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,8 +85,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -126,6 +126,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -138,9 +139,8 @@ def _create_initial( body_content = self._serialize.body(replication, 'Replication') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -238,7 +238,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -247,8 +246,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -325,6 +324,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -337,9 +337,8 @@ def _update_initial( body_content = self._serialize.body(replication_update_parameters, 'ReplicationUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -455,7 +454,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -464,9 +463,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/webhooks_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/webhooks_operations.py index 7424d54d20f3..b5f3f1e35f23 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/webhooks_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2017_10_01/operations/webhooks_operations.py @@ -76,7 +76,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,8 +85,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -124,6 +124,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -136,9 +137,8 @@ def _create_initial( body_content = self._serialize.body(webhook_create_parameters, 'WebhookCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -234,7 +234,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +242,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -319,6 +318,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -331,9 +331,8 @@ def _update_initial( body_content = self._serialize.body(webhook_update_parameters, 'WebhookUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -450,7 +449,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -459,9 +458,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -518,7 +516,7 @@ def ping( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,8 +525,8 @@ def ping( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -586,7 +584,7 @@ def get_callback_config( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -595,8 +593,8 @@ def get_callback_config( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -659,7 +657,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -668,9 +666,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/__init__.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/__init__.py index fb6da3f656de..adec0c249a71 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/__init__.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/__init__.py @@ -10,6 +10,7 @@ # -------------------------------------------------------------------------- try: + from .import_source_credentials_py3 import ImportSourceCredentials from .import_source_py3 import ImportSource from .import_image_parameters_py3 import ImportImageParameters from .registry_name_check_request_py3 import RegistryNameCheckRequest @@ -75,6 +76,7 @@ from .build_task_build_request_py3 import BuildTaskBuildRequest from .quick_build_request_py3 import QuickBuildRequest except (SyntaxError, ImportError): + from .import_source_credentials import ImportSourceCredentials from .import_source import ImportSource from .import_image_parameters import ImportImageParameters from .registry_name_check_request import RegistryNameCheckRequest @@ -170,6 +172,7 @@ ) __all__ = [ + 'ImportSourceCredentials', 'ImportSource', 'ImportImageParameters', 'RegistryNameCheckRequest', diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source.py index 828a6e5ca30e..c56e01220425 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source.py @@ -17,9 +17,15 @@ class ImportSource(Model): All required parameters must be populated in order to send to Azure. - :param resource_id: Required. The resource identifier of the target Azure - Container Registry. + :param resource_id: The resource identifier of the source Azure Container + Registry. :type resource_id: str + :param registry_uri: The address of the source registry (e.g. + 'mcr.microsoft.com'). + :type registry_uri: str + :param credentials: Credentials used when importing from a registry uri. + :type credentials: + ~azure.mgmt.containerregistry.v2018_02_01_preview.models.ImportSourceCredentials :param source_image: Required. Repository name of the source image. Specify an image by repository ('hello-world'). This will use the 'latest' tag. @@ -30,16 +36,19 @@ class ImportSource(Model): """ _validation = { - 'resource_id': {'required': True}, 'source_image': {'required': True}, } _attribute_map = { 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'registry_uri': {'key': 'registryUri', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'ImportSourceCredentials'}, 'source_image': {'key': 'sourceImage', 'type': 'str'}, } def __init__(self, **kwargs): super(ImportSource, self).__init__(**kwargs) self.resource_id = kwargs.get('resource_id', None) + self.registry_uri = kwargs.get('registry_uri', None) + self.credentials = kwargs.get('credentials', None) self.source_image = kwargs.get('source_image', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_credentials.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_credentials.py new file mode 100644 index 000000000000..b31e5f7e8405 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_credentials.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportSourceCredentials(Model): + """ImportSourceCredentials. + + All required parameters must be populated in order to send to Azure. + + :param username: The username to authenticate with the source registry. + :type username: str + :param password: Required. The password used to authenticate with the + source registry. + :type password: str + """ + + _validation = { + 'password': {'required': True}, + } + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImportSourceCredentials, self).__init__(**kwargs) + self.username = kwargs.get('username', None) + self.password = kwargs.get('password', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_credentials_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_credentials_py3.py new file mode 100644 index 000000000000..4a610e022f88 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_credentials_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportSourceCredentials(Model): + """ImportSourceCredentials. + + All required parameters must be populated in order to send to Azure. + + :param username: The username to authenticate with the source registry. + :type username: str + :param password: Required. The password used to authenticate with the + source registry. + :type password: str + """ + + _validation = { + 'password': {'required': True}, + } + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, *, password: str, username: str=None, **kwargs) -> None: + super(ImportSourceCredentials, self).__init__(**kwargs) + self.username = username + self.password = password diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_py3.py index e70cc202fe9e..6efdf2b4c4b6 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_py3.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/models/import_source_py3.py @@ -17,9 +17,15 @@ class ImportSource(Model): All required parameters must be populated in order to send to Azure. - :param resource_id: Required. The resource identifier of the target Azure - Container Registry. + :param resource_id: The resource identifier of the source Azure Container + Registry. :type resource_id: str + :param registry_uri: The address of the source registry (e.g. + 'mcr.microsoft.com'). + :type registry_uri: str + :param credentials: Credentials used when importing from a registry uri. + :type credentials: + ~azure.mgmt.containerregistry.v2018_02_01_preview.models.ImportSourceCredentials :param source_image: Required. Repository name of the source image. Specify an image by repository ('hello-world'). This will use the 'latest' tag. @@ -30,16 +36,19 @@ class ImportSource(Model): """ _validation = { - 'resource_id': {'required': True}, 'source_image': {'required': True}, } _attribute_map = { 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'registry_uri': {'key': 'registryUri', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'ImportSourceCredentials'}, 'source_image': {'key': 'sourceImage', 'type': 'str'}, } - def __init__(self, *, resource_id: str, source_image: str, **kwargs) -> None: + def __init__(self, *, source_image: str, resource_id: str=None, registry_uri: str=None, credentials=None, **kwargs) -> None: super(ImportSource, self).__init__(**kwargs) self.resource_id = resource_id + self.registry_uri = registry_uri + self.credentials = credentials self.source_image = source_image diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/build_steps_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/build_steps_operations.py index 638000eb398a..af710eb2efaa 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/build_steps_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/build_steps_operations.py @@ -83,7 +83,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -92,9 +92,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_initial( body_content = self._serialize.body(build_step_create_parameters, 'BuildStep') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -320,7 +319,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -329,8 +327,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -412,6 +410,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -424,9 +423,8 @@ def _update_initial( body_content = self._serialize.body(build_step_update_parameters, 'BuildStepUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -556,7 +554,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -565,9 +563,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/build_tasks_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/build_tasks_operations.py index 5a73ba76358e..f8a5af8876c0 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/build_tasks_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/build_tasks_operations.py @@ -89,7 +89,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -98,9 +98,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -206,6 +205,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -218,9 +218,8 @@ def _create_initial( body_content = self._serialize.body(build_task_create_parameters, 'BuildTask') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -316,7 +315,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -325,8 +323,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -401,6 +399,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -413,9 +412,8 @@ def _update_initial( body_content = self._serialize.body(build_task_update_parameters, 'BuildTaskUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -529,7 +527,7 @@ def list_source_repository_properties( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -538,8 +536,8 @@ def list_source_repository_properties( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/builds_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/builds_operations.py index 32e086d6f674..ff51ad18f0f5 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/builds_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/builds_operations.py @@ -94,7 +94,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -103,9 +103,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -162,7 +161,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -171,8 +170,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -212,6 +211,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -224,9 +224,8 @@ def _update_initial( body_content = self._serialize.body(build_update_parameters, 'BuildUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def get_log_link( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,8 +347,8 @@ def get_log_link( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -387,7 +386,6 @@ def _cancel_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -396,8 +394,8 @@ def _cancel_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/operations.py index 47a1a7b6b3a0..669c5097c928 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/operations.py @@ -68,7 +68,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -77,9 +77,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/registries_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/registries_operations.py index c7a73f8e0c2c..2c848bd0dcd6 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/registries_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/registries_operations.py @@ -69,9 +69,8 @@ def _import_image_initial( body_content = self._serialize.body(parameters, 'ImportImageParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -166,6 +165,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -178,9 +178,8 @@ def check_name_availability( body_content = self._serialize.body(registry_name_check_request, 'RegistryNameCheckRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -236,7 +235,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -245,8 +244,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -285,6 +284,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -297,9 +297,8 @@ def _create_initial( body_content = self._serialize.body(registry, 'Registry') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -391,7 +390,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,8 +398,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -474,6 +472,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -486,9 +485,8 @@ def _update_initial( body_content = self._serialize.body(registry_update_parameters, 'RegistryUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -601,7 +599,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -610,9 +608,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -668,7 +665,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -677,9 +674,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -737,7 +733,7 @@ def list_credentials( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -746,8 +742,8 @@ def list_credentials( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -812,6 +808,7 @@ def regenerate_credential( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -824,9 +821,8 @@ def regenerate_credential( body_content = self._serialize.body(regenerate_credential_parameters, 'RegenerateCredentialParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -882,7 +878,7 @@ def list_usages( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -891,8 +887,8 @@ def list_usages( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -948,7 +944,7 @@ def list_policies( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -957,8 +953,8 @@ def list_policies( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -999,6 +995,7 @@ def _update_policies_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1011,9 +1008,8 @@ def _update_policies_initial( body_content = self._serialize.body(registry_policies_update_parameters, 'RegistryPolicies') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1109,6 +1105,7 @@ def _queue_build_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1121,9 +1118,8 @@ def _queue_build_initial( body_content = self._serialize.body(build_request, 'QueueBuildRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1231,7 +1227,7 @@ def get_build_source_upload_url( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1240,8 +1236,8 @@ def get_build_source_upload_url( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/replications_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/replications_operations.py index b56be794ce86..5dee662e59d2 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/replications_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/replications_operations.py @@ -77,7 +77,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,8 +86,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -127,6 +127,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -139,9 +140,8 @@ def _create_initial( body_content = self._serialize.body(replication, 'Replication') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -239,7 +239,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -248,8 +247,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,6 +325,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -338,9 +338,8 @@ def _update_initial( body_content = self._serialize.body(replication_update_parameters, 'ReplicationUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -456,7 +455,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -465,9 +464,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/webhooks_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/webhooks_operations.py index 66a56f0d2cc9..6ff7bf1352c4 100644 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/webhooks_operations.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_02_01_preview/operations/webhooks_operations.py @@ -77,7 +77,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,8 +86,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -125,6 +125,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -137,9 +138,8 @@ def _create_initial( body_content = self._serialize.body(webhook_create_parameters, 'WebhookCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -235,7 +235,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -244,8 +243,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -320,6 +319,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -332,9 +332,8 @@ def _update_initial( body_content = self._serialize.body(webhook_update_parameters, 'WebhookUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -451,7 +450,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -460,9 +459,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -520,7 +518,7 @@ def ping( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -529,8 +527,8 @@ def ping( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -588,7 +586,7 @@ def get_callback_config( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -597,8 +595,8 @@ def get_callback_config( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -661,7 +659,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -670,9 +668,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/__init__.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/__init__.py new file mode 100644 index 000000000000..511d3d37a4aa --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/__init__.py @@ -0,0 +1,18 @@ +# 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 .container_registry_management_client import ContainerRegistryManagementClient +from .version import VERSION + +__all__ = ['ContainerRegistryManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/container_registry_management_client.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/container_registry_management_client.py new file mode 100644 index 000000000000..b97b1dce5e4e --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/container_registry_management_client.py @@ -0,0 +1,105 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.registries_operations import RegistriesOperations +from .operations.operations import Operations +from .operations.replications_operations import ReplicationsOperations +from .operations.webhooks_operations import WebhooksOperations +from .operations.runs_operations import RunsOperations +from .operations.tasks_operations import TasksOperations +from . import models + + +class ContainerRegistryManagementClientConfiguration(AzureConfiguration): + """Configuration for ContainerRegistryManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The Microsoft Azure subscription ID. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(ContainerRegistryManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-containerregistry/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class ContainerRegistryManagementClient(SDKClient): + """ContainerRegistryManagementClient + + :ivar config: Configuration for client. + :vartype config: ContainerRegistryManagementClientConfiguration + + :ivar registries: Registries operations + :vartype registries: azure.mgmt.containerregistry.v2018_09_01.operations.RegistriesOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.containerregistry.v2018_09_01.operations.Operations + :ivar replications: Replications operations + :vartype replications: azure.mgmt.containerregistry.v2018_09_01.operations.ReplicationsOperations + :ivar webhooks: Webhooks operations + :vartype webhooks: azure.mgmt.containerregistry.v2018_09_01.operations.WebhooksOperations + :ivar runs: Runs operations + :vartype runs: azure.mgmt.containerregistry.v2018_09_01.operations.RunsOperations + :ivar tasks: Tasks operations + :vartype tasks: azure.mgmt.containerregistry.v2018_09_01.operations.TasksOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The Microsoft Azure subscription ID. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = ContainerRegistryManagementClientConfiguration(credentials, subscription_id, base_url) + super(ContainerRegistryManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.registries = RegistriesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.replications = ReplicationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.webhooks = WebhooksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.runs = RunsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.tasks = TasksOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/__init__.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/__init__.py new file mode 100644 index 000000000000..6156c3a5cadb --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/__init__.py @@ -0,0 +1,310 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .import_source_credentials_py3 import ImportSourceCredentials + from .import_source_py3 import ImportSource + from .import_image_parameters_py3 import ImportImageParameters + from .registry_name_check_request_py3 import RegistryNameCheckRequest + from .registry_name_status_py3 import RegistryNameStatus + from .operation_display_definition_py3 import OperationDisplayDefinition + from .operation_metric_specification_definition_py3 import OperationMetricSpecificationDefinition + from .operation_service_specification_definition_py3 import OperationServiceSpecificationDefinition + from .operation_definition_py3 import OperationDefinition + from .sku_py3 import Sku + from .status_py3 import Status + from .storage_account_properties_py3 import StorageAccountProperties + from .registry_py3 import Registry + from .registry_update_parameters_py3 import RegistryUpdateParameters + from .registry_password_py3 import RegistryPassword + from .registry_list_credentials_result_py3 import RegistryListCredentialsResult + from .regenerate_credential_parameters_py3 import RegenerateCredentialParameters + from .registry_usage_py3 import RegistryUsage + from .registry_usage_list_result_py3 import RegistryUsageListResult + from .quarantine_policy_py3 import QuarantinePolicy + from .trust_policy_py3 import TrustPolicy + from .registry_policies_py3 import RegistryPolicies + from .replication_py3 import Replication + from .replication_update_parameters_py3 import ReplicationUpdateParameters + from .webhook_py3 import Webhook + from .webhook_create_parameters_py3 import WebhookCreateParameters + from .webhook_update_parameters_py3 import WebhookUpdateParameters + from .event_info_py3 import EventInfo + from .callback_config_py3 import CallbackConfig + from .target_py3 import Target + from .request_py3 import Request + from .actor_py3 import Actor + from .source_py3 import Source + from .event_content_py3 import EventContent + from .event_request_message_py3 import EventRequestMessage + from .event_response_message_py3 import EventResponseMessage + from .event_py3 import Event + from .resource_py3 import Resource + from .run_request_py3 import RunRequest + from .image_descriptor_py3 import ImageDescriptor + from .image_update_trigger_py3 import ImageUpdateTrigger + from .source_trigger_descriptor_py3 import SourceTriggerDescriptor + from .platform_properties_py3 import PlatformProperties + from .agent_properties_py3 import AgentProperties + from .run_py3 import Run + from .source_upload_definition_py3 import SourceUploadDefinition + from .run_filter_py3 import RunFilter + from .run_update_parameters_py3 import RunUpdateParameters + from .run_get_log_result_py3 import RunGetLogResult + from .base_image_dependency_py3 import BaseImageDependency + from .task_step_properties_py3 import TaskStepProperties + from .auth_info_py3 import AuthInfo + from .source_properties_py3 import SourceProperties + from .source_trigger_py3 import SourceTrigger + from .base_image_trigger_py3 import BaseImageTrigger + from .trigger_properties_py3 import TriggerProperties + from .task_py3 import Task + from .platform_update_parameters_py3 import PlatformUpdateParameters + from .task_step_update_parameters_py3 import TaskStepUpdateParameters + from .auth_info_update_parameters_py3 import AuthInfoUpdateParameters + from .source_update_parameters_py3 import SourceUpdateParameters + from .source_trigger_update_parameters_py3 import SourceTriggerUpdateParameters + from .base_image_trigger_update_parameters_py3 import BaseImageTriggerUpdateParameters + from .trigger_update_parameters_py3 import TriggerUpdateParameters + from .task_update_parameters_py3 import TaskUpdateParameters + from .proxy_resource_py3 import ProxyResource + from .argument_py3 import Argument + from .docker_build_request_py3 import DockerBuildRequest + from .set_value_py3 import SetValue + from .file_task_run_request_py3 import FileTaskRunRequest + from .task_run_request_py3 import TaskRunRequest + from .encoded_task_run_request_py3 import EncodedTaskRunRequest + from .docker_build_step_py3 import DockerBuildStep + from .file_task_step_py3 import FileTaskStep + from .encoded_task_step_py3 import EncodedTaskStep + from .docker_build_step_update_parameters_py3 import DockerBuildStepUpdateParameters + from .file_task_step_update_parameters_py3 import FileTaskStepUpdateParameters + from .encoded_task_step_update_parameters_py3 import EncodedTaskStepUpdateParameters +except (SyntaxError, ImportError): + from .import_source_credentials import ImportSourceCredentials + from .import_source import ImportSource + from .import_image_parameters import ImportImageParameters + from .registry_name_check_request import RegistryNameCheckRequest + from .registry_name_status import RegistryNameStatus + from .operation_display_definition import OperationDisplayDefinition + from .operation_metric_specification_definition import OperationMetricSpecificationDefinition + from .operation_service_specification_definition import OperationServiceSpecificationDefinition + from .operation_definition import OperationDefinition + from .sku import Sku + from .status import Status + from .storage_account_properties import StorageAccountProperties + from .registry import Registry + from .registry_update_parameters import RegistryUpdateParameters + from .registry_password import RegistryPassword + from .registry_list_credentials_result import RegistryListCredentialsResult + from .regenerate_credential_parameters import RegenerateCredentialParameters + from .registry_usage import RegistryUsage + from .registry_usage_list_result import RegistryUsageListResult + from .quarantine_policy import QuarantinePolicy + from .trust_policy import TrustPolicy + from .registry_policies import RegistryPolicies + from .replication import Replication + from .replication_update_parameters import ReplicationUpdateParameters + from .webhook import Webhook + from .webhook_create_parameters import WebhookCreateParameters + from .webhook_update_parameters import WebhookUpdateParameters + from .event_info import EventInfo + from .callback_config import CallbackConfig + from .target import Target + from .request import Request + from .actor import Actor + from .source import Source + from .event_content import EventContent + from .event_request_message import EventRequestMessage + from .event_response_message import EventResponseMessage + from .event import Event + from .resource import Resource + from .run_request import RunRequest + from .image_descriptor import ImageDescriptor + from .image_update_trigger import ImageUpdateTrigger + from .source_trigger_descriptor import SourceTriggerDescriptor + from .platform_properties import PlatformProperties + from .agent_properties import AgentProperties + from .run import Run + from .source_upload_definition import SourceUploadDefinition + from .run_filter import RunFilter + from .run_update_parameters import RunUpdateParameters + from .run_get_log_result import RunGetLogResult + from .base_image_dependency import BaseImageDependency + from .task_step_properties import TaskStepProperties + from .auth_info import AuthInfo + from .source_properties import SourceProperties + from .source_trigger import SourceTrigger + from .base_image_trigger import BaseImageTrigger + from .trigger_properties import TriggerProperties + from .task import Task + from .platform_update_parameters import PlatformUpdateParameters + from .task_step_update_parameters import TaskStepUpdateParameters + from .auth_info_update_parameters import AuthInfoUpdateParameters + from .source_update_parameters import SourceUpdateParameters + from .source_trigger_update_parameters import SourceTriggerUpdateParameters + from .base_image_trigger_update_parameters import BaseImageTriggerUpdateParameters + from .trigger_update_parameters import TriggerUpdateParameters + from .task_update_parameters import TaskUpdateParameters + from .proxy_resource import ProxyResource + from .argument import Argument + from .docker_build_request import DockerBuildRequest + from .set_value import SetValue + from .file_task_run_request import FileTaskRunRequest + from .task_run_request import TaskRunRequest + from .encoded_task_run_request import EncodedTaskRunRequest + from .docker_build_step import DockerBuildStep + from .file_task_step import FileTaskStep + from .encoded_task_step import EncodedTaskStep + from .docker_build_step_update_parameters import DockerBuildStepUpdateParameters + from .file_task_step_update_parameters import FileTaskStepUpdateParameters + from .encoded_task_step_update_parameters import EncodedTaskStepUpdateParameters +from .registry_paged import RegistryPaged +from .operation_definition_paged import OperationDefinitionPaged +from .replication_paged import ReplicationPaged +from .webhook_paged import WebhookPaged +from .event_paged import EventPaged +from .run_paged import RunPaged +from .task_paged import TaskPaged +from .container_registry_management_client_enums import ( + ImportMode, + SkuName, + SkuTier, + ProvisioningState, + PasswordName, + RegistryUsageUnit, + PolicyStatus, + TrustPolicyType, + WebhookStatus, + WebhookAction, + RunStatus, + RunType, + OS, + Architecture, + Variant, + TaskStatus, + BaseImageDependencyType, + SourceControlType, + TokenType, + SourceTriggerEvent, + TriggerStatus, + BaseImageTriggerType, +) + +__all__ = [ + 'ImportSourceCredentials', + 'ImportSource', + 'ImportImageParameters', + 'RegistryNameCheckRequest', + 'RegistryNameStatus', + 'OperationDisplayDefinition', + 'OperationMetricSpecificationDefinition', + 'OperationServiceSpecificationDefinition', + 'OperationDefinition', + 'Sku', + 'Status', + 'StorageAccountProperties', + 'Registry', + 'RegistryUpdateParameters', + 'RegistryPassword', + 'RegistryListCredentialsResult', + 'RegenerateCredentialParameters', + 'RegistryUsage', + 'RegistryUsageListResult', + 'QuarantinePolicy', + 'TrustPolicy', + 'RegistryPolicies', + 'Replication', + 'ReplicationUpdateParameters', + 'Webhook', + 'WebhookCreateParameters', + 'WebhookUpdateParameters', + 'EventInfo', + 'CallbackConfig', + 'Target', + 'Request', + 'Actor', + 'Source', + 'EventContent', + 'EventRequestMessage', + 'EventResponseMessage', + 'Event', + 'Resource', + 'RunRequest', + 'ImageDescriptor', + 'ImageUpdateTrigger', + 'SourceTriggerDescriptor', + 'PlatformProperties', + 'AgentProperties', + 'Run', + 'SourceUploadDefinition', + 'RunFilter', + 'RunUpdateParameters', + 'RunGetLogResult', + 'BaseImageDependency', + 'TaskStepProperties', + 'AuthInfo', + 'SourceProperties', + 'SourceTrigger', + 'BaseImageTrigger', + 'TriggerProperties', + 'Task', + 'PlatformUpdateParameters', + 'TaskStepUpdateParameters', + 'AuthInfoUpdateParameters', + 'SourceUpdateParameters', + 'SourceTriggerUpdateParameters', + 'BaseImageTriggerUpdateParameters', + 'TriggerUpdateParameters', + 'TaskUpdateParameters', + 'ProxyResource', + 'Argument', + 'DockerBuildRequest', + 'SetValue', + 'FileTaskRunRequest', + 'TaskRunRequest', + 'EncodedTaskRunRequest', + 'DockerBuildStep', + 'FileTaskStep', + 'EncodedTaskStep', + 'DockerBuildStepUpdateParameters', + 'FileTaskStepUpdateParameters', + 'EncodedTaskStepUpdateParameters', + 'RegistryPaged', + 'OperationDefinitionPaged', + 'ReplicationPaged', + 'WebhookPaged', + 'EventPaged', + 'RunPaged', + 'TaskPaged', + 'ImportMode', + 'SkuName', + 'SkuTier', + 'ProvisioningState', + 'PasswordName', + 'RegistryUsageUnit', + 'PolicyStatus', + 'TrustPolicyType', + 'WebhookStatus', + 'WebhookAction', + 'RunStatus', + 'RunType', + 'OS', + 'Architecture', + 'Variant', + 'TaskStatus', + 'BaseImageDependencyType', + 'SourceControlType', + 'TokenType', + 'SourceTriggerEvent', + 'TriggerStatus', + 'BaseImageTriggerType', +] diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/actor.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/actor.py new file mode 100644 index 000000000000..a662f9008a31 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/actor.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Actor(Model): + """The agent that initiated the event. For most situations, this could be from + the authorization context of the request. + + :param name: The subject or username associated with the request context + that generated the event. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Actor, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/actor_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/actor_py3.py new file mode 100644 index 000000000000..fdd8b96dda52 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/actor_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Actor(Model): + """The agent that initiated the event. For most situations, this could be from + the authorization context of the request. + + :param name: The subject or username associated with the request context + that generated the event. + :type name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(Actor, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/agent_properties.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/agent_properties.py new file mode 100644 index 000000000000..c002042a921b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/agent_properties.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AgentProperties(Model): + """The properties that determine the run agent configuration. + + :param cpu: The CPU configuration in terms of number of cores required for + the run. + :type cpu: int + """ + + _attribute_map = { + 'cpu': {'key': 'cpu', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AgentProperties, self).__init__(**kwargs) + self.cpu = kwargs.get('cpu', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/agent_properties_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/agent_properties_py3.py new file mode 100644 index 000000000000..055a36946db8 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/agent_properties_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AgentProperties(Model): + """The properties that determine the run agent configuration. + + :param cpu: The CPU configuration in terms of number of cores required for + the run. + :type cpu: int + """ + + _attribute_map = { + 'cpu': {'key': 'cpu', 'type': 'int'}, + } + + def __init__(self, *, cpu: int=None, **kwargs) -> None: + super(AgentProperties, self).__init__(**kwargs) + self.cpu = cpu diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/argument.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/argument.py new file mode 100644 index 000000000000..d081a86245b0 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/argument.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Argument(Model): + """The properties of a run argument. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the argument. + :type name: str + :param value: Required. The value of the argument. + :type value: str + :param is_secret: Flag to indicate whether the argument represents a + secret and want to be removed from build logs. Default value: False . + :type is_secret: bool + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + 'is_secret': {'key': 'isSecret', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(Argument, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) + self.is_secret = kwargs.get('is_secret', False) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/argument_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/argument_py3.py new file mode 100644 index 000000000000..1f520368d006 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/argument_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Argument(Model): + """The properties of a run argument. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the argument. + :type name: str + :param value: Required. The value of the argument. + :type value: str + :param is_secret: Flag to indicate whether the argument represents a + secret and want to be removed from build logs. Default value: False . + :type is_secret: bool + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + 'is_secret': {'key': 'isSecret', 'type': 'bool'}, + } + + def __init__(self, *, name: str, value: str, is_secret: bool=False, **kwargs) -> None: + super(Argument, self).__init__(**kwargs) + self.name = name + self.value = value + self.is_secret = is_secret diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info.py new file mode 100644 index 000000000000..cdba1a96d363 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthInfo(Model): + """The authorization properties for accessing the source code repository. + + All required parameters must be populated in order to send to Azure. + + :param token_type: Required. The type of Auth token. Possible values + include: 'PAT', 'OAuth' + :type token_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TokenType + :param token: Required. The access token used to access the source control + provider. + :type token: str + :param refresh_token: The refresh token used to refresh the access token. + :type refresh_token: str + :param scope: The scope of the access token. + :type scope: str + :param expires_in: Time in seconds that the token remains valid + :type expires_in: int + """ + + _validation = { + 'token_type': {'required': True}, + 'token': {'required': True}, + } + + _attribute_map = { + 'token_type': {'key': 'tokenType', 'type': 'str'}, + 'token': {'key': 'token', 'type': 'str'}, + 'refresh_token': {'key': 'refreshToken', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'str'}, + 'expires_in': {'key': 'expiresIn', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AuthInfo, self).__init__(**kwargs) + self.token_type = kwargs.get('token_type', None) + self.token = kwargs.get('token', None) + self.refresh_token = kwargs.get('refresh_token', None) + self.scope = kwargs.get('scope', None) + self.expires_in = kwargs.get('expires_in', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_py3.py new file mode 100644 index 000000000000..cb0ae645585d --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthInfo(Model): + """The authorization properties for accessing the source code repository. + + All required parameters must be populated in order to send to Azure. + + :param token_type: Required. The type of Auth token. Possible values + include: 'PAT', 'OAuth' + :type token_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TokenType + :param token: Required. The access token used to access the source control + provider. + :type token: str + :param refresh_token: The refresh token used to refresh the access token. + :type refresh_token: str + :param scope: The scope of the access token. + :type scope: str + :param expires_in: Time in seconds that the token remains valid + :type expires_in: int + """ + + _validation = { + 'token_type': {'required': True}, + 'token': {'required': True}, + } + + _attribute_map = { + 'token_type': {'key': 'tokenType', 'type': 'str'}, + 'token': {'key': 'token', 'type': 'str'}, + 'refresh_token': {'key': 'refreshToken', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'str'}, + 'expires_in': {'key': 'expiresIn', 'type': 'int'}, + } + + def __init__(self, *, token_type, token: str, refresh_token: str=None, scope: str=None, expires_in: int=None, **kwargs) -> None: + super(AuthInfo, self).__init__(**kwargs) + self.token_type = token_type + self.token = token + self.refresh_token = refresh_token + self.scope = scope + self.expires_in = expires_in diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_update_parameters.py new file mode 100644 index 000000000000..5af5cdd4de54 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_update_parameters.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthInfoUpdateParameters(Model): + """The authorization properties for accessing the source code repository. + + :param token_type: The type of Auth token. Possible values include: 'PAT', + 'OAuth' + :type token_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TokenType + :param token: The access token used to access the source control provider. + :type token: str + :param refresh_token: The refresh token used to refresh the access token. + :type refresh_token: str + :param scope: The scope of the access token. + :type scope: str + :param expires_in: Time in seconds that the token remains valid + :type expires_in: int + """ + + _attribute_map = { + 'token_type': {'key': 'tokenType', 'type': 'str'}, + 'token': {'key': 'token', 'type': 'str'}, + 'refresh_token': {'key': 'refreshToken', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'str'}, + 'expires_in': {'key': 'expiresIn', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AuthInfoUpdateParameters, self).__init__(**kwargs) + self.token_type = kwargs.get('token_type', None) + self.token = kwargs.get('token', None) + self.refresh_token = kwargs.get('refresh_token', None) + self.scope = kwargs.get('scope', None) + self.expires_in = kwargs.get('expires_in', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_update_parameters_py3.py new file mode 100644 index 000000000000..1c938ff2c7e1 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/auth_info_update_parameters_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AuthInfoUpdateParameters(Model): + """The authorization properties for accessing the source code repository. + + :param token_type: The type of Auth token. Possible values include: 'PAT', + 'OAuth' + :type token_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TokenType + :param token: The access token used to access the source control provider. + :type token: str + :param refresh_token: The refresh token used to refresh the access token. + :type refresh_token: str + :param scope: The scope of the access token. + :type scope: str + :param expires_in: Time in seconds that the token remains valid + :type expires_in: int + """ + + _attribute_map = { + 'token_type': {'key': 'tokenType', 'type': 'str'}, + 'token': {'key': 'token', 'type': 'str'}, + 'refresh_token': {'key': 'refreshToken', 'type': 'str'}, + 'scope': {'key': 'scope', 'type': 'str'}, + 'expires_in': {'key': 'expiresIn', 'type': 'int'}, + } + + def __init__(self, *, token_type=None, token: str=None, refresh_token: str=None, scope: str=None, expires_in: int=None, **kwargs) -> None: + super(AuthInfoUpdateParameters, self).__init__(**kwargs) + self.token_type = token_type + self.token = token + self.refresh_token = refresh_token + self.scope = scope + self.expires_in = expires_in diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_dependency.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_dependency.py new file mode 100644 index 000000000000..9591b5f9c6c6 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_dependency.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BaseImageDependency(Model): + """Properties that describe a base image dependency. + + :param type: The type of the base image dependency. Possible values + include: 'BuildTime', 'RunTime' + :type type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependencyType + :param registry: The registry login server. + :type registry: str + :param repository: The repository name. + :type repository: str + :param tag: The tag name. + :type tag: str + :param digest: The sha256-based digest of the image manifest. + :type digest: str + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'registry': {'key': 'registry', 'type': 'str'}, + 'repository': {'key': 'repository', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + 'digest': {'key': 'digest', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BaseImageDependency, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.registry = kwargs.get('registry', None) + self.repository = kwargs.get('repository', None) + self.tag = kwargs.get('tag', None) + self.digest = kwargs.get('digest', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_dependency_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_dependency_py3.py new file mode 100644 index 000000000000..d603b0047521 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_dependency_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BaseImageDependency(Model): + """Properties that describe a base image dependency. + + :param type: The type of the base image dependency. Possible values + include: 'BuildTime', 'RunTime' + :type type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependencyType + :param registry: The registry login server. + :type registry: str + :param repository: The repository name. + :type repository: str + :param tag: The tag name. + :type tag: str + :param digest: The sha256-based digest of the image manifest. + :type digest: str + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'registry': {'key': 'registry', 'type': 'str'}, + 'repository': {'key': 'repository', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + 'digest': {'key': 'digest', 'type': 'str'}, + } + + def __init__(self, *, type=None, registry: str=None, repository: str=None, tag: str=None, digest: str=None, **kwargs) -> None: + super(BaseImageDependency, self).__init__(**kwargs) + self.type = type + self.registry = registry + self.repository = repository + self.tag = tag + self.digest = digest diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger.py new file mode 100644 index 000000000000..77113b28caf7 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BaseImageTrigger(Model): + """The trigger based on base image dependency. + + All required parameters must be populated in order to send to Azure. + + :param base_image_trigger_type: Required. The type of the auto trigger for + base image dependency updates. Possible values include: 'All', 'Runtime' + :type base_image_trigger_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageTriggerType + :param status: The current status of trigger. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerStatus + :param name: Required. The name of the trigger. + :type name: str + """ + + _validation = { + 'base_image_trigger_type': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'base_image_trigger_type': {'key': 'baseImageTriggerType', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BaseImageTrigger, self).__init__(**kwargs) + self.base_image_trigger_type = kwargs.get('base_image_trigger_type', None) + self.status = kwargs.get('status', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_py3.py new file mode 100644 index 000000000000..d73c2c43cd85 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BaseImageTrigger(Model): + """The trigger based on base image dependency. + + All required parameters must be populated in order to send to Azure. + + :param base_image_trigger_type: Required. The type of the auto trigger for + base image dependency updates. Possible values include: 'All', 'Runtime' + :type base_image_trigger_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageTriggerType + :param status: The current status of trigger. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerStatus + :param name: Required. The name of the trigger. + :type name: str + """ + + _validation = { + 'base_image_trigger_type': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'base_image_trigger_type': {'key': 'baseImageTriggerType', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, base_image_trigger_type, name: str, status=None, **kwargs) -> None: + super(BaseImageTrigger, self).__init__(**kwargs) + self.base_image_trigger_type = base_image_trigger_type + self.status = status + self.name = name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_update_parameters.py new file mode 100644 index 000000000000..cd702419ad1d --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_update_parameters.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BaseImageTriggerUpdateParameters(Model): + """The properties for updating base image dependency trigger. + + All required parameters must be populated in order to send to Azure. + + :param base_image_trigger_type: The type of the auto trigger for base + image dependency updates. Possible values include: 'All', 'Runtime' + :type base_image_trigger_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageTriggerType + :param status: The current status of trigger. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerStatus + :param name: Required. The name of the trigger. + :type name: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'base_image_trigger_type': {'key': 'baseImageTriggerType', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BaseImageTriggerUpdateParameters, self).__init__(**kwargs) + self.base_image_trigger_type = kwargs.get('base_image_trigger_type', None) + self.status = kwargs.get('status', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_update_parameters_py3.py new file mode 100644 index 000000000000..7441cf3515fc --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/base_image_trigger_update_parameters_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BaseImageTriggerUpdateParameters(Model): + """The properties for updating base image dependency trigger. + + All required parameters must be populated in order to send to Azure. + + :param base_image_trigger_type: The type of the auto trigger for base + image dependency updates. Possible values include: 'All', 'Runtime' + :type base_image_trigger_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageTriggerType + :param status: The current status of trigger. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerStatus + :param name: Required. The name of the trigger. + :type name: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'base_image_trigger_type': {'key': 'baseImageTriggerType', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str, base_image_trigger_type=None, status=None, **kwargs) -> None: + super(BaseImageTriggerUpdateParameters, self).__init__(**kwargs) + self.base_image_trigger_type = base_image_trigger_type + self.status = status + self.name = name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/callback_config.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/callback_config.py new file mode 100644 index 000000000000..8ad43a9f785a --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/callback_config.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CallbackConfig(Model): + """The configuration of service URI and custom headers for the webhook. + + All required parameters must be populated in order to send to Azure. + + :param service_uri: Required. The service URI for the webhook to post + notifications. + :type service_uri: str + :param custom_headers: Custom headers that will be added to the webhook + notifications. + :type custom_headers: dict[str, str] + """ + + _validation = { + 'service_uri': {'required': True}, + } + + _attribute_map = { + 'service_uri': {'key': 'serviceUri', 'type': 'str'}, + 'custom_headers': {'key': 'customHeaders', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(CallbackConfig, self).__init__(**kwargs) + self.service_uri = kwargs.get('service_uri', None) + self.custom_headers = kwargs.get('custom_headers', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/callback_config_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/callback_config_py3.py new file mode 100644 index 000000000000..27ffc7825431 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/callback_config_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CallbackConfig(Model): + """The configuration of service URI and custom headers for the webhook. + + All required parameters must be populated in order to send to Azure. + + :param service_uri: Required. The service URI for the webhook to post + notifications. + :type service_uri: str + :param custom_headers: Custom headers that will be added to the webhook + notifications. + :type custom_headers: dict[str, str] + """ + + _validation = { + 'service_uri': {'required': True}, + } + + _attribute_map = { + 'service_uri': {'key': 'serviceUri', 'type': 'str'}, + 'custom_headers': {'key': 'customHeaders', 'type': '{str}'}, + } + + def __init__(self, *, service_uri: str, custom_headers=None, **kwargs) -> None: + super(CallbackConfig, self).__init__(**kwargs) + self.service_uri = service_uri + self.custom_headers = custom_headers diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/container_registry_management_client_enums.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/container_registry_management_client_enums.py new file mode 100644 index 000000000000..ae0685705827 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/container_registry_management_client_enums.py @@ -0,0 +1,162 @@ +# 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 enum import Enum + + +class ImportMode(str, Enum): + + no_force = "NoForce" + force = "Force" + + +class SkuName(str, Enum): + + classic = "Classic" + basic = "Basic" + standard = "Standard" + premium = "Premium" + + +class SkuTier(str, Enum): + + classic = "Classic" + basic = "Basic" + standard = "Standard" + premium = "Premium" + + +class ProvisioningState(str, Enum): + + creating = "Creating" + updating = "Updating" + deleting = "Deleting" + succeeded = "Succeeded" + failed = "Failed" + canceled = "Canceled" + + +class PasswordName(str, Enum): + + password = "password" + password2 = "password2" + + +class RegistryUsageUnit(str, Enum): + + count = "Count" + bytes = "Bytes" + + +class PolicyStatus(str, Enum): + + enabled = "enabled" + disabled = "disabled" + + +class TrustPolicyType(str, Enum): + + notary = "Notary" + + +class WebhookStatus(str, Enum): + + enabled = "enabled" + disabled = "disabled" + + +class WebhookAction(str, Enum): + + push = "push" + delete = "delete" + quarantine = "quarantine" + + +class RunStatus(str, Enum): + + queued = "Queued" + started = "Started" + running = "Running" + succeeded = "Succeeded" + failed = "Failed" + canceled = "Canceled" + error = "Error" + timeout = "Timeout" + + +class RunType(str, Enum): + + quick_build = "QuickBuild" + quick_run = "QuickRun" + auto_build = "AutoBuild" + auto_run = "AutoRun" + + +class OS(str, Enum): + + windows = "Windows" + linux = "Linux" + + +class Architecture(str, Enum): + + amd64 = "amd64" + x86 = "x86" + arm = "arm" + + +class Variant(str, Enum): + + v6 = "v6" + v7 = "v7" + v8 = "v8" + + +class TaskStatus(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class BaseImageDependencyType(str, Enum): + + build_time = "BuildTime" + run_time = "RunTime" + + +class SourceControlType(str, Enum): + + github = "Github" + visual_studio_team_service = "VisualStudioTeamService" + + +class TokenType(str, Enum): + + pat = "PAT" + oauth = "OAuth" + + +class SourceTriggerEvent(str, Enum): + + commit = "commit" + pullrequest = "pullrequest" + + +class TriggerStatus(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class BaseImageTriggerType(str, Enum): + + all = "All" + runtime = "Runtime" diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_request.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_request.py new file mode 100644 index 000000000000..80dd5ca1f71b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_request.py @@ -0,0 +1,89 @@ +# 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 .run_request import RunRequest + + +class DockerBuildRequest(RunRequest): + """The parameters for a docker quick build. + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + :param image_names: The fully qualified image names including the + repository and tag. + :type image_names: list[str] + :param is_push_enabled: The value of this property indicates whether the + image built should be pushed to the registry or not. Default value: True . + :type is_push_enabled: bool + :param no_cache: The value of this property indicates whether the image + cache is enabled or not. Default value: False . + :type no_cache: bool + :param docker_file_path: Required. The Docker file path relative to the + source location. + :type docker_file_path: str + :param arguments: The collection of override arguments to be used when + executing the run. + :type arguments: + list[~azure.mgmt.containerregistry.v2018_09_01.models.Argument] + :param timeout: Run timeout in seconds. Default value: 3600 . + :type timeout: int + :param platform: Required. The platform properties against which the run + has to happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param source_location: The URL(absolute or relative) of the source + context. It can be an URL to a tar or git repoistory. + If it is relative URL, the relative path should be obtained from calling + listBuildSourceUploadUrl API. + :type source_location: str + """ + + _validation = { + 'type': {'required': True}, + 'docker_file_path': {'required': True}, + 'timeout': {'maximum': 28800, 'minimum': 300}, + 'platform': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'image_names': {'key': 'imageNames', 'type': '[str]'}, + 'is_push_enabled': {'key': 'isPushEnabled', 'type': 'bool'}, + 'no_cache': {'key': 'noCache', 'type': 'bool'}, + 'docker_file_path': {'key': 'dockerFilePath', 'type': 'str'}, + 'arguments': {'key': 'arguments', 'type': '[Argument]'}, + 'timeout': {'key': 'timeout', 'type': 'int'}, + 'platform': {'key': 'platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'agentConfiguration', 'type': 'AgentProperties'}, + 'source_location': {'key': 'sourceLocation', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DockerBuildRequest, self).__init__(**kwargs) + self.image_names = kwargs.get('image_names', None) + self.is_push_enabled = kwargs.get('is_push_enabled', True) + self.no_cache = kwargs.get('no_cache', False) + self.docker_file_path = kwargs.get('docker_file_path', None) + self.arguments = kwargs.get('arguments', None) + self.timeout = kwargs.get('timeout', 3600) + self.platform = kwargs.get('platform', None) + self.agent_configuration = kwargs.get('agent_configuration', None) + self.source_location = kwargs.get('source_location', None) + self.type = 'DockerBuildRequest' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_request_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_request_py3.py new file mode 100644 index 000000000000..3cf4081f5afb --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_request_py3.py @@ -0,0 +1,89 @@ +# 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 .run_request_py3 import RunRequest + + +class DockerBuildRequest(RunRequest): + """The parameters for a docker quick build. + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + :param image_names: The fully qualified image names including the + repository and tag. + :type image_names: list[str] + :param is_push_enabled: The value of this property indicates whether the + image built should be pushed to the registry or not. Default value: True . + :type is_push_enabled: bool + :param no_cache: The value of this property indicates whether the image + cache is enabled or not. Default value: False . + :type no_cache: bool + :param docker_file_path: Required. The Docker file path relative to the + source location. + :type docker_file_path: str + :param arguments: The collection of override arguments to be used when + executing the run. + :type arguments: + list[~azure.mgmt.containerregistry.v2018_09_01.models.Argument] + :param timeout: Run timeout in seconds. Default value: 3600 . + :type timeout: int + :param platform: Required. The platform properties against which the run + has to happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param source_location: The URL(absolute or relative) of the source + context. It can be an URL to a tar or git repoistory. + If it is relative URL, the relative path should be obtained from calling + listBuildSourceUploadUrl API. + :type source_location: str + """ + + _validation = { + 'type': {'required': True}, + 'docker_file_path': {'required': True}, + 'timeout': {'maximum': 28800, 'minimum': 300}, + 'platform': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'image_names': {'key': 'imageNames', 'type': '[str]'}, + 'is_push_enabled': {'key': 'isPushEnabled', 'type': 'bool'}, + 'no_cache': {'key': 'noCache', 'type': 'bool'}, + 'docker_file_path': {'key': 'dockerFilePath', 'type': 'str'}, + 'arguments': {'key': 'arguments', 'type': '[Argument]'}, + 'timeout': {'key': 'timeout', 'type': 'int'}, + 'platform': {'key': 'platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'agentConfiguration', 'type': 'AgentProperties'}, + 'source_location': {'key': 'sourceLocation', 'type': 'str'}, + } + + def __init__(self, *, docker_file_path: str, platform, is_archive_enabled: bool=False, image_names=None, is_push_enabled: bool=True, no_cache: bool=False, arguments=None, timeout: int=3600, agent_configuration=None, source_location: str=None, **kwargs) -> None: + super(DockerBuildRequest, self).__init__(is_archive_enabled=is_archive_enabled, **kwargs) + self.image_names = image_names + self.is_push_enabled = is_push_enabled + self.no_cache = no_cache + self.docker_file_path = docker_file_path + self.arguments = arguments + self.timeout = timeout + self.platform = platform + self.agent_configuration = agent_configuration + self.source_location = source_location + self.type = 'DockerBuildRequest' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step.py new file mode 100644 index 000000000000..18d487dc8878 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step.py @@ -0,0 +1,77 @@ +# 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 .task_step_properties import TaskStepProperties + + +class DockerBuildStep(TaskStepProperties): + """The Docker build step. + + 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 base_image_dependencies: List of base image dependencies for a step. + :vartype base_image_dependencies: + list[~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependency] + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param image_names: The fully qualified image names including the + repository and tag. + :type image_names: list[str] + :param is_push_enabled: The value of this property indicates whether the + image built should be pushed to the registry or not. Default value: True . + :type is_push_enabled: bool + :param no_cache: The value of this property indicates whether the image + cache is enabled or not. Default value: False . + :type no_cache: bool + :param docker_file_path: Required. The Docker file path relative to the + source context. + :type docker_file_path: str + :param arguments: The collection of override arguments to be used when + executing this build step. + :type arguments: + list[~azure.mgmt.containerregistry.v2018_09_01.models.Argument] + """ + + _validation = { + 'base_image_dependencies': {'readonly': True}, + 'type': {'required': True}, + 'docker_file_path': {'required': True}, + } + + _attribute_map = { + 'base_image_dependencies': {'key': 'baseImageDependencies', 'type': '[BaseImageDependency]'}, + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'image_names': {'key': 'imageNames', 'type': '[str]'}, + 'is_push_enabled': {'key': 'isPushEnabled', 'type': 'bool'}, + 'no_cache': {'key': 'noCache', 'type': 'bool'}, + 'docker_file_path': {'key': 'dockerFilePath', 'type': 'str'}, + 'arguments': {'key': 'arguments', 'type': '[Argument]'}, + } + + def __init__(self, **kwargs): + super(DockerBuildStep, self).__init__(**kwargs) + self.image_names = kwargs.get('image_names', None) + self.is_push_enabled = kwargs.get('is_push_enabled', True) + self.no_cache = kwargs.get('no_cache', False) + self.docker_file_path = kwargs.get('docker_file_path', None) + self.arguments = kwargs.get('arguments', None) + self.type = 'Docker' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_py3.py new file mode 100644 index 000000000000..317db832f540 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_py3.py @@ -0,0 +1,77 @@ +# 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 .task_step_properties_py3 import TaskStepProperties + + +class DockerBuildStep(TaskStepProperties): + """The Docker build step. + + 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 base_image_dependencies: List of base image dependencies for a step. + :vartype base_image_dependencies: + list[~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependency] + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param image_names: The fully qualified image names including the + repository and tag. + :type image_names: list[str] + :param is_push_enabled: The value of this property indicates whether the + image built should be pushed to the registry or not. Default value: True . + :type is_push_enabled: bool + :param no_cache: The value of this property indicates whether the image + cache is enabled or not. Default value: False . + :type no_cache: bool + :param docker_file_path: Required. The Docker file path relative to the + source context. + :type docker_file_path: str + :param arguments: The collection of override arguments to be used when + executing this build step. + :type arguments: + list[~azure.mgmt.containerregistry.v2018_09_01.models.Argument] + """ + + _validation = { + 'base_image_dependencies': {'readonly': True}, + 'type': {'required': True}, + 'docker_file_path': {'required': True}, + } + + _attribute_map = { + 'base_image_dependencies': {'key': 'baseImageDependencies', 'type': '[BaseImageDependency]'}, + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'image_names': {'key': 'imageNames', 'type': '[str]'}, + 'is_push_enabled': {'key': 'isPushEnabled', 'type': 'bool'}, + 'no_cache': {'key': 'noCache', 'type': 'bool'}, + 'docker_file_path': {'key': 'dockerFilePath', 'type': 'str'}, + 'arguments': {'key': 'arguments', 'type': '[Argument]'}, + } + + def __init__(self, *, docker_file_path: str, context_path: str=None, context_access_token: str=None, image_names=None, is_push_enabled: bool=True, no_cache: bool=False, arguments=None, **kwargs) -> None: + super(DockerBuildStep, self).__init__(context_path=context_path, context_access_token=context_access_token, **kwargs) + self.image_names = image_names + self.is_push_enabled = is_push_enabled + self.no_cache = no_cache + self.docker_file_path = docker_file_path + self.arguments = arguments + self.type = 'Docker' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_update_parameters.py new file mode 100644 index 000000000000..4e5eae0ee864 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_update_parameters.py @@ -0,0 +1,68 @@ +# 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 .task_step_update_parameters import TaskStepUpdateParameters + + +class DockerBuildStepUpdateParameters(TaskStepUpdateParameters): + """The properties for updating a docker build step. + + All required parameters must be populated in order to send to Azure. + + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param image_names: The fully qualified image names including the + repository and tag. + :type image_names: list[str] + :param is_push_enabled: The value of this property indicates whether the + image built should be pushed to the registry or not. + :type is_push_enabled: bool + :param no_cache: The value of this property indicates whether the image + cache is enabled or not. + :type no_cache: bool + :param docker_file_path: The Docker file path relative to the source + context. + :type docker_file_path: str + :param arguments: The collection of override arguments to be used when + executing this build step. + :type arguments: + list[~azure.mgmt.containerregistry.v2018_09_01.models.Argument] + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'image_names': {'key': 'imageNames', 'type': '[str]'}, + 'is_push_enabled': {'key': 'isPushEnabled', 'type': 'bool'}, + 'no_cache': {'key': 'noCache', 'type': 'bool'}, + 'docker_file_path': {'key': 'dockerFilePath', 'type': 'str'}, + 'arguments': {'key': 'arguments', 'type': '[Argument]'}, + } + + def __init__(self, **kwargs): + super(DockerBuildStepUpdateParameters, self).__init__(**kwargs) + self.image_names = kwargs.get('image_names', None) + self.is_push_enabled = kwargs.get('is_push_enabled', None) + self.no_cache = kwargs.get('no_cache', None) + self.docker_file_path = kwargs.get('docker_file_path', None) + self.arguments = kwargs.get('arguments', None) + self.type = 'Docker' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_update_parameters_py3.py new file mode 100644 index 000000000000..c489aa168a06 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/docker_build_step_update_parameters_py3.py @@ -0,0 +1,68 @@ +# 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 .task_step_update_parameters_py3 import TaskStepUpdateParameters + + +class DockerBuildStepUpdateParameters(TaskStepUpdateParameters): + """The properties for updating a docker build step. + + All required parameters must be populated in order to send to Azure. + + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param image_names: The fully qualified image names including the + repository and tag. + :type image_names: list[str] + :param is_push_enabled: The value of this property indicates whether the + image built should be pushed to the registry or not. + :type is_push_enabled: bool + :param no_cache: The value of this property indicates whether the image + cache is enabled or not. + :type no_cache: bool + :param docker_file_path: The Docker file path relative to the source + context. + :type docker_file_path: str + :param arguments: The collection of override arguments to be used when + executing this build step. + :type arguments: + list[~azure.mgmt.containerregistry.v2018_09_01.models.Argument] + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'image_names': {'key': 'imageNames', 'type': '[str]'}, + 'is_push_enabled': {'key': 'isPushEnabled', 'type': 'bool'}, + 'no_cache': {'key': 'noCache', 'type': 'bool'}, + 'docker_file_path': {'key': 'dockerFilePath', 'type': 'str'}, + 'arguments': {'key': 'arguments', 'type': '[Argument]'}, + } + + def __init__(self, *, context_path: str=None, context_access_token: str=None, image_names=None, is_push_enabled: bool=None, no_cache: bool=None, docker_file_path: str=None, arguments=None, **kwargs) -> None: + super(DockerBuildStepUpdateParameters, self).__init__(context_path=context_path, context_access_token=context_access_token, **kwargs) + self.image_names = image_names + self.is_push_enabled = is_push_enabled + self.no_cache = no_cache + self.docker_file_path = docker_file_path + self.arguments = arguments + self.type = 'Docker' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_run_request.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_run_request.py new file mode 100644 index 000000000000..bd399328c258 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_run_request.py @@ -0,0 +1,79 @@ +# 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 .run_request import RunRequest + + +class EncodedTaskRunRequest(RunRequest): + """The parameters for a quick task run request. + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + :param encoded_task_content: Required. Base64 encoded value of the + template/definition file content. + :type encoded_task_content: str + :param encoded_values_content: Base64 encoded value of the + parameters/values file content. + :type encoded_values_content: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + :param timeout: Run timeout in seconds. Default value: 3600 . + :type timeout: int + :param platform: Required. The platform properties against which the run + has to happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param source_location: The URL(absolute or relative) of the source + context. It can be an URL to a tar or git repoistory. + If it is relative URL, the relative path should be obtained from calling + listBuildSourceUploadUrl API. + :type source_location: str + """ + + _validation = { + 'type': {'required': True}, + 'encoded_task_content': {'required': True}, + 'timeout': {'maximum': 28800, 'minimum': 300}, + 'platform': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'encoded_task_content': {'key': 'encodedTaskContent', 'type': 'str'}, + 'encoded_values_content': {'key': 'encodedValuesContent', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + 'timeout': {'key': 'timeout', 'type': 'int'}, + 'platform': {'key': 'platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'agentConfiguration', 'type': 'AgentProperties'}, + 'source_location': {'key': 'sourceLocation', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EncodedTaskRunRequest, self).__init__(**kwargs) + self.encoded_task_content = kwargs.get('encoded_task_content', None) + self.encoded_values_content = kwargs.get('encoded_values_content', None) + self.values = kwargs.get('values', None) + self.timeout = kwargs.get('timeout', 3600) + self.platform = kwargs.get('platform', None) + self.agent_configuration = kwargs.get('agent_configuration', None) + self.source_location = kwargs.get('source_location', None) + self.type = 'EncodedTaskRunRequest' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_run_request_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_run_request_py3.py new file mode 100644 index 000000000000..eceaafb5a6ed --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_run_request_py3.py @@ -0,0 +1,79 @@ +# 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 .run_request_py3 import RunRequest + + +class EncodedTaskRunRequest(RunRequest): + """The parameters for a quick task run request. + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + :param encoded_task_content: Required. Base64 encoded value of the + template/definition file content. + :type encoded_task_content: str + :param encoded_values_content: Base64 encoded value of the + parameters/values file content. + :type encoded_values_content: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + :param timeout: Run timeout in seconds. Default value: 3600 . + :type timeout: int + :param platform: Required. The platform properties against which the run + has to happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param source_location: The URL(absolute or relative) of the source + context. It can be an URL to a tar or git repoistory. + If it is relative URL, the relative path should be obtained from calling + listBuildSourceUploadUrl API. + :type source_location: str + """ + + _validation = { + 'type': {'required': True}, + 'encoded_task_content': {'required': True}, + 'timeout': {'maximum': 28800, 'minimum': 300}, + 'platform': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'encoded_task_content': {'key': 'encodedTaskContent', 'type': 'str'}, + 'encoded_values_content': {'key': 'encodedValuesContent', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + 'timeout': {'key': 'timeout', 'type': 'int'}, + 'platform': {'key': 'platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'agentConfiguration', 'type': 'AgentProperties'}, + 'source_location': {'key': 'sourceLocation', 'type': 'str'}, + } + + def __init__(self, *, encoded_task_content: str, platform, is_archive_enabled: bool=False, encoded_values_content: str=None, values=None, timeout: int=3600, agent_configuration=None, source_location: str=None, **kwargs) -> None: + super(EncodedTaskRunRequest, self).__init__(is_archive_enabled=is_archive_enabled, **kwargs) + self.encoded_task_content = encoded_task_content + self.encoded_values_content = encoded_values_content + self.values = values + self.timeout = timeout + self.platform = platform + self.agent_configuration = agent_configuration + self.source_location = source_location + self.type = 'EncodedTaskRunRequest' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step.py new file mode 100644 index 000000000000..ff458e122904 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step.py @@ -0,0 +1,67 @@ +# 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 .task_step_properties import TaskStepProperties + + +class EncodedTaskStep(TaskStepProperties): + """The properties of a encoded task step. + + 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 base_image_dependencies: List of base image dependencies for a step. + :vartype base_image_dependencies: + list[~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependency] + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param encoded_task_content: Required. Base64 encoded value of the + template/definition file content. + :type encoded_task_content: str + :param encoded_values_content: Base64 encoded value of the + parameters/values file content. + :type encoded_values_content: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'base_image_dependencies': {'readonly': True}, + 'type': {'required': True}, + 'encoded_task_content': {'required': True}, + } + + _attribute_map = { + 'base_image_dependencies': {'key': 'baseImageDependencies', 'type': '[BaseImageDependency]'}, + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'encoded_task_content': {'key': 'encodedTaskContent', 'type': 'str'}, + 'encoded_values_content': {'key': 'encodedValuesContent', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, **kwargs): + super(EncodedTaskStep, self).__init__(**kwargs) + self.encoded_task_content = kwargs.get('encoded_task_content', None) + self.encoded_values_content = kwargs.get('encoded_values_content', None) + self.values = kwargs.get('values', None) + self.type = 'EncodedTask' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_py3.py new file mode 100644 index 000000000000..a13cd3a9ced8 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_py3.py @@ -0,0 +1,67 @@ +# 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 .task_step_properties_py3 import TaskStepProperties + + +class EncodedTaskStep(TaskStepProperties): + """The properties of a encoded task step. + + 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 base_image_dependencies: List of base image dependencies for a step. + :vartype base_image_dependencies: + list[~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependency] + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param encoded_task_content: Required. Base64 encoded value of the + template/definition file content. + :type encoded_task_content: str + :param encoded_values_content: Base64 encoded value of the + parameters/values file content. + :type encoded_values_content: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'base_image_dependencies': {'readonly': True}, + 'type': {'required': True}, + 'encoded_task_content': {'required': True}, + } + + _attribute_map = { + 'base_image_dependencies': {'key': 'baseImageDependencies', 'type': '[BaseImageDependency]'}, + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'encoded_task_content': {'key': 'encodedTaskContent', 'type': 'str'}, + 'encoded_values_content': {'key': 'encodedValuesContent', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, *, encoded_task_content: str, context_path: str=None, context_access_token: str=None, encoded_values_content: str=None, values=None, **kwargs) -> None: + super(EncodedTaskStep, self).__init__(context_path=context_path, context_access_token=context_access_token, **kwargs) + self.encoded_task_content = encoded_task_content + self.encoded_values_content = encoded_values_content + self.values = values + self.type = 'EncodedTask' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_update_parameters.py new file mode 100644 index 000000000000..379d3681659c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_update_parameters.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .task_step_update_parameters import TaskStepUpdateParameters + + +class EncodedTaskStepUpdateParameters(TaskStepUpdateParameters): + """The properties for updating encoded task step. + + All required parameters must be populated in order to send to Azure. + + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param encoded_task_content: Base64 encoded value of the + template/definition file content. + :type encoded_task_content: str + :param encoded_values_content: Base64 encoded value of the + parameters/values file content. + :type encoded_values_content: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'encoded_task_content': {'key': 'encodedTaskContent', 'type': 'str'}, + 'encoded_values_content': {'key': 'encodedValuesContent', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, **kwargs): + super(EncodedTaskStepUpdateParameters, self).__init__(**kwargs) + self.encoded_task_content = kwargs.get('encoded_task_content', None) + self.encoded_values_content = kwargs.get('encoded_values_content', None) + self.values = kwargs.get('values', None) + self.type = 'EncodedTask' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_update_parameters_py3.py new file mode 100644 index 000000000000..7551f52c4347 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/encoded_task_step_update_parameters_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .task_step_update_parameters_py3 import TaskStepUpdateParameters + + +class EncodedTaskStepUpdateParameters(TaskStepUpdateParameters): + """The properties for updating encoded task step. + + All required parameters must be populated in order to send to Azure. + + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param encoded_task_content: Base64 encoded value of the + template/definition file content. + :type encoded_task_content: str + :param encoded_values_content: Base64 encoded value of the + parameters/values file content. + :type encoded_values_content: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'encoded_task_content': {'key': 'encodedTaskContent', 'type': 'str'}, + 'encoded_values_content': {'key': 'encodedValuesContent', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, *, context_path: str=None, context_access_token: str=None, encoded_task_content: str=None, encoded_values_content: str=None, values=None, **kwargs) -> None: + super(EncodedTaskStepUpdateParameters, self).__init__(context_path=context_path, context_access_token=context_access_token, **kwargs) + self.encoded_task_content = encoded_task_content + self.encoded_values_content = encoded_values_content + self.values = values + self.type = 'EncodedTask' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event.py new file mode 100644 index 000000000000..9894bf03331b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event.py @@ -0,0 +1,39 @@ +# 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 .event_info import EventInfo + + +class Event(EventInfo): + """The event for a webhook. + + :param id: The event ID. + :type id: str + :param event_request_message: The event request message sent to the + service URI. + :type event_request_message: + ~azure.mgmt.containerregistry.v2018_09_01.models.EventRequestMessage + :param event_response_message: The event response message received from + the service URI. + :type event_response_message: + ~azure.mgmt.containerregistry.v2018_09_01.models.EventResponseMessage + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'event_request_message': {'key': 'eventRequestMessage', 'type': 'EventRequestMessage'}, + 'event_response_message': {'key': 'eventResponseMessage', 'type': 'EventResponseMessage'}, + } + + def __init__(self, **kwargs): + super(Event, self).__init__(**kwargs) + self.event_request_message = kwargs.get('event_request_message', None) + self.event_response_message = kwargs.get('event_response_message', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_content.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_content.py new file mode 100644 index 000000000000..1585c43a8dfd --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_content.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EventContent(Model): + """The content of the event request message. + + :param id: The event ID. + :type id: str + :param timestamp: The time at which the event occurred. + :type timestamp: datetime + :param action: The action that encompasses the provided event. + :type action: str + :param target: The target of the event. + :type target: ~azure.mgmt.containerregistry.v2018_09_01.models.Target + :param request: The request that generated the event. + :type request: ~azure.mgmt.containerregistry.v2018_09_01.models.Request + :param actor: The agent that initiated the event. For most situations, + this could be from the authorization context of the request. + :type actor: ~azure.mgmt.containerregistry.v2018_09_01.models.Actor + :param source: The registry node that generated the event. Put + differently, while the actor initiates the event, the source generates it. + :type source: ~azure.mgmt.containerregistry.v2018_09_01.models.Source + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'action': {'key': 'action', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'Target'}, + 'request': {'key': 'request', 'type': 'Request'}, + 'actor': {'key': 'actor', 'type': 'Actor'}, + 'source': {'key': 'source', 'type': 'Source'}, + } + + def __init__(self, **kwargs): + super(EventContent, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.timestamp = kwargs.get('timestamp', None) + self.action = kwargs.get('action', None) + self.target = kwargs.get('target', None) + self.request = kwargs.get('request', None) + self.actor = kwargs.get('actor', None) + self.source = kwargs.get('source', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_content_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_content_py3.py new file mode 100644 index 000000000000..36c725a24f05 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_content_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EventContent(Model): + """The content of the event request message. + + :param id: The event ID. + :type id: str + :param timestamp: The time at which the event occurred. + :type timestamp: datetime + :param action: The action that encompasses the provided event. + :type action: str + :param target: The target of the event. + :type target: ~azure.mgmt.containerregistry.v2018_09_01.models.Target + :param request: The request that generated the event. + :type request: ~azure.mgmt.containerregistry.v2018_09_01.models.Request + :param actor: The agent that initiated the event. For most situations, + this could be from the authorization context of the request. + :type actor: ~azure.mgmt.containerregistry.v2018_09_01.models.Actor + :param source: The registry node that generated the event. Put + differently, while the actor initiates the event, the source generates it. + :type source: ~azure.mgmt.containerregistry.v2018_09_01.models.Source + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'action': {'key': 'action', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'Target'}, + 'request': {'key': 'request', 'type': 'Request'}, + 'actor': {'key': 'actor', 'type': 'Actor'}, + 'source': {'key': 'source', 'type': 'Source'}, + } + + def __init__(self, *, id: str=None, timestamp=None, action: str=None, target=None, request=None, actor=None, source=None, **kwargs) -> None: + super(EventContent, self).__init__(**kwargs) + self.id = id + self.timestamp = timestamp + self.action = action + self.target = target + self.request = request + self.actor = actor + self.source = source diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_info.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_info.py new file mode 100644 index 000000000000..7199044b2e39 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_info.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EventInfo(Model): + """The basic information of an event. + + :param id: The event ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EventInfo, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_info_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_info_py3.py new file mode 100644 index 000000000000..192990067407 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_info_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EventInfo(Model): + """The basic information of an event. + + :param id: The event ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(EventInfo, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_paged.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_paged.py new file mode 100644 index 000000000000..c185ea7b023b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class EventPaged(Paged): + """ + A paging container for iterating over a list of :class:`Event ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Event]'} + } + + def __init__(self, *args, **kwargs): + + super(EventPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_py3.py new file mode 100644 index 000000000000..e28e63f22ed2 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_py3.py @@ -0,0 +1,39 @@ +# 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 .event_info_py3 import EventInfo + + +class Event(EventInfo): + """The event for a webhook. + + :param id: The event ID. + :type id: str + :param event_request_message: The event request message sent to the + service URI. + :type event_request_message: + ~azure.mgmt.containerregistry.v2018_09_01.models.EventRequestMessage + :param event_response_message: The event response message received from + the service URI. + :type event_response_message: + ~azure.mgmt.containerregistry.v2018_09_01.models.EventResponseMessage + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'event_request_message': {'key': 'eventRequestMessage', 'type': 'EventRequestMessage'}, + 'event_response_message': {'key': 'eventResponseMessage', 'type': 'EventResponseMessage'}, + } + + def __init__(self, *, id: str=None, event_request_message=None, event_response_message=None, **kwargs) -> None: + super(Event, self).__init__(id=id, **kwargs) + self.event_request_message = event_request_message + self.event_response_message = event_response_message diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_request_message.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_request_message.py new file mode 100644 index 000000000000..2f8feb93426f --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_request_message.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EventRequestMessage(Model): + """The event request message sent to the service URI. + + :param content: The content of the event request message. + :type content: + ~azure.mgmt.containerregistry.v2018_09_01.models.EventContent + :param headers: The headers of the event request message. + :type headers: dict[str, str] + :param method: The HTTP method used to send the event request message. + :type method: str + :param request_uri: The URI used to send the event request message. + :type request_uri: str + :param version: The HTTP message version. + :type version: str + """ + + _attribute_map = { + 'content': {'key': 'content', 'type': 'EventContent'}, + 'headers': {'key': 'headers', 'type': '{str}'}, + 'method': {'key': 'method', 'type': 'str'}, + 'request_uri': {'key': 'requestUri', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EventRequestMessage, self).__init__(**kwargs) + self.content = kwargs.get('content', None) + self.headers = kwargs.get('headers', None) + self.method = kwargs.get('method', None) + self.request_uri = kwargs.get('request_uri', None) + self.version = kwargs.get('version', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_request_message_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_request_message_py3.py new file mode 100644 index 000000000000..d954d9085355 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_request_message_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EventRequestMessage(Model): + """The event request message sent to the service URI. + + :param content: The content of the event request message. + :type content: + ~azure.mgmt.containerregistry.v2018_09_01.models.EventContent + :param headers: The headers of the event request message. + :type headers: dict[str, str] + :param method: The HTTP method used to send the event request message. + :type method: str + :param request_uri: The URI used to send the event request message. + :type request_uri: str + :param version: The HTTP message version. + :type version: str + """ + + _attribute_map = { + 'content': {'key': 'content', 'type': 'EventContent'}, + 'headers': {'key': 'headers', 'type': '{str}'}, + 'method': {'key': 'method', 'type': 'str'}, + 'request_uri': {'key': 'requestUri', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, *, content=None, headers=None, method: str=None, request_uri: str=None, version: str=None, **kwargs) -> None: + super(EventRequestMessage, self).__init__(**kwargs) + self.content = content + self.headers = headers + self.method = method + self.request_uri = request_uri + self.version = version diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_response_message.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_response_message.py new file mode 100644 index 000000000000..ffb8feb12a1e --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_response_message.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EventResponseMessage(Model): + """The event response message received from the service URI. + + :param content: The content of the event response message. + :type content: str + :param headers: The headers of the event response message. + :type headers: dict[str, str] + :param reason_phrase: The reason phrase of the event response message. + :type reason_phrase: str + :param status_code: The status code of the event response message. + :type status_code: str + :param version: The HTTP message version. + :type version: str + """ + + _attribute_map = { + 'content': {'key': 'content', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '{str}'}, + 'reason_phrase': {'key': 'reasonPhrase', 'type': 'str'}, + 'status_code': {'key': 'statusCode', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EventResponseMessage, self).__init__(**kwargs) + self.content = kwargs.get('content', None) + self.headers = kwargs.get('headers', None) + self.reason_phrase = kwargs.get('reason_phrase', None) + self.status_code = kwargs.get('status_code', None) + self.version = kwargs.get('version', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_response_message_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_response_message_py3.py new file mode 100644 index 000000000000..4b1351377b4b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/event_response_message_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EventResponseMessage(Model): + """The event response message received from the service URI. + + :param content: The content of the event response message. + :type content: str + :param headers: The headers of the event response message. + :type headers: dict[str, str] + :param reason_phrase: The reason phrase of the event response message. + :type reason_phrase: str + :param status_code: The status code of the event response message. + :type status_code: str + :param version: The HTTP message version. + :type version: str + """ + + _attribute_map = { + 'content': {'key': 'content', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '{str}'}, + 'reason_phrase': {'key': 'reasonPhrase', 'type': 'str'}, + 'status_code': {'key': 'statusCode', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, *, content: str=None, headers=None, reason_phrase: str=None, status_code: str=None, version: str=None, **kwargs) -> None: + super(EventResponseMessage, self).__init__(**kwargs) + self.content = content + self.headers = headers + self.reason_phrase = reason_phrase + self.status_code = status_code + self.version = version diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_run_request.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_run_request.py new file mode 100644 index 000000000000..ad238e4377fe --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_run_request.py @@ -0,0 +1,79 @@ +# 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 .run_request import RunRequest + + +class FileTaskRunRequest(RunRequest): + """The request parameters for a scheduling run against a task file. + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + :param task_file_path: Required. The template/definition file path + relative to the source. + :type task_file_path: str + :param values_file_path: The values/parameters file path relative to the + source. + :type values_file_path: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + :param timeout: Run timeout in seconds. Default value: 3600 . + :type timeout: int + :param platform: Required. The platform properties against which the run + has to happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param source_location: The URL(absolute or relative) of the source + context. It can be an URL to a tar or git repoistory. + If it is relative URL, the relative path should be obtained from calling + listBuildSourceUploadUrl API. + :type source_location: str + """ + + _validation = { + 'type': {'required': True}, + 'task_file_path': {'required': True}, + 'timeout': {'maximum': 28800, 'minimum': 300}, + 'platform': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'task_file_path': {'key': 'taskFilePath', 'type': 'str'}, + 'values_file_path': {'key': 'valuesFilePath', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + 'timeout': {'key': 'timeout', 'type': 'int'}, + 'platform': {'key': 'platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'agentConfiguration', 'type': 'AgentProperties'}, + 'source_location': {'key': 'sourceLocation', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FileTaskRunRequest, self).__init__(**kwargs) + self.task_file_path = kwargs.get('task_file_path', None) + self.values_file_path = kwargs.get('values_file_path', None) + self.values = kwargs.get('values', None) + self.timeout = kwargs.get('timeout', 3600) + self.platform = kwargs.get('platform', None) + self.agent_configuration = kwargs.get('agent_configuration', None) + self.source_location = kwargs.get('source_location', None) + self.type = 'FileTaskRunRequest' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_run_request_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_run_request_py3.py new file mode 100644 index 000000000000..c2a63a9f0857 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_run_request_py3.py @@ -0,0 +1,79 @@ +# 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 .run_request_py3 import RunRequest + + +class FileTaskRunRequest(RunRequest): + """The request parameters for a scheduling run against a task file. + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + :param task_file_path: Required. The template/definition file path + relative to the source. + :type task_file_path: str + :param values_file_path: The values/parameters file path relative to the + source. + :type values_file_path: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + :param timeout: Run timeout in seconds. Default value: 3600 . + :type timeout: int + :param platform: Required. The platform properties against which the run + has to happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param source_location: The URL(absolute or relative) of the source + context. It can be an URL to a tar or git repoistory. + If it is relative URL, the relative path should be obtained from calling + listBuildSourceUploadUrl API. + :type source_location: str + """ + + _validation = { + 'type': {'required': True}, + 'task_file_path': {'required': True}, + 'timeout': {'maximum': 28800, 'minimum': 300}, + 'platform': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'task_file_path': {'key': 'taskFilePath', 'type': 'str'}, + 'values_file_path': {'key': 'valuesFilePath', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + 'timeout': {'key': 'timeout', 'type': 'int'}, + 'platform': {'key': 'platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'agentConfiguration', 'type': 'AgentProperties'}, + 'source_location': {'key': 'sourceLocation', 'type': 'str'}, + } + + def __init__(self, *, task_file_path: str, platform, is_archive_enabled: bool=False, values_file_path: str=None, values=None, timeout: int=3600, agent_configuration=None, source_location: str=None, **kwargs) -> None: + super(FileTaskRunRequest, self).__init__(is_archive_enabled=is_archive_enabled, **kwargs) + self.task_file_path = task_file_path + self.values_file_path = values_file_path + self.values = values + self.timeout = timeout + self.platform = platform + self.agent_configuration = agent_configuration + self.source_location = source_location + self.type = 'FileTaskRunRequest' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step.py new file mode 100644 index 000000000000..6070a401dd60 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step.py @@ -0,0 +1,67 @@ +# 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 .task_step_properties import TaskStepProperties + + +class FileTaskStep(TaskStepProperties): + """The properties of a task step. + + 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 base_image_dependencies: List of base image dependencies for a step. + :vartype base_image_dependencies: + list[~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependency] + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param task_file_path: Required. The task template/definition file path + relative to the source context. + :type task_file_path: str + :param values_file_path: The task values/parameters file path relative to + the source context. + :type values_file_path: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'base_image_dependencies': {'readonly': True}, + 'type': {'required': True}, + 'task_file_path': {'required': True}, + } + + _attribute_map = { + 'base_image_dependencies': {'key': 'baseImageDependencies', 'type': '[BaseImageDependency]'}, + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'task_file_path': {'key': 'taskFilePath', 'type': 'str'}, + 'values_file_path': {'key': 'valuesFilePath', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, **kwargs): + super(FileTaskStep, self).__init__(**kwargs) + self.task_file_path = kwargs.get('task_file_path', None) + self.values_file_path = kwargs.get('values_file_path', None) + self.values = kwargs.get('values', None) + self.type = 'FileTask' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_py3.py new file mode 100644 index 000000000000..9d435e19b2c2 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_py3.py @@ -0,0 +1,67 @@ +# 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 .task_step_properties_py3 import TaskStepProperties + + +class FileTaskStep(TaskStepProperties): + """The properties of a task step. + + 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 base_image_dependencies: List of base image dependencies for a step. + :vartype base_image_dependencies: + list[~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependency] + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param task_file_path: Required. The task template/definition file path + relative to the source context. + :type task_file_path: str + :param values_file_path: The task values/parameters file path relative to + the source context. + :type values_file_path: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'base_image_dependencies': {'readonly': True}, + 'type': {'required': True}, + 'task_file_path': {'required': True}, + } + + _attribute_map = { + 'base_image_dependencies': {'key': 'baseImageDependencies', 'type': '[BaseImageDependency]'}, + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'task_file_path': {'key': 'taskFilePath', 'type': 'str'}, + 'values_file_path': {'key': 'valuesFilePath', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, *, task_file_path: str, context_path: str=None, context_access_token: str=None, values_file_path: str=None, values=None, **kwargs) -> None: + super(FileTaskStep, self).__init__(context_path=context_path, context_access_token=context_access_token, **kwargs) + self.task_file_path = task_file_path + self.values_file_path = values_file_path + self.values = values + self.type = 'FileTask' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_update_parameters.py new file mode 100644 index 000000000000..2c4a570a6953 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_update_parameters.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .task_step_update_parameters import TaskStepUpdateParameters + + +class FileTaskStepUpdateParameters(TaskStepUpdateParameters): + """The properties of updating a task step. + + All required parameters must be populated in order to send to Azure. + + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param task_file_path: The task template/definition file path relative to + the source context. + :type task_file_path: str + :param values_file_path: The values/parameters file path relative to the + source context. + :type values_file_path: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'task_file_path': {'key': 'taskFilePath', 'type': 'str'}, + 'values_file_path': {'key': 'valuesFilePath', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, **kwargs): + super(FileTaskStepUpdateParameters, self).__init__(**kwargs) + self.task_file_path = kwargs.get('task_file_path', None) + self.values_file_path = kwargs.get('values_file_path', None) + self.values = kwargs.get('values', None) + self.type = 'FileTask' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_update_parameters_py3.py new file mode 100644 index 000000000000..663cf20966f1 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/file_task_step_update_parameters_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .task_step_update_parameters_py3 import TaskStepUpdateParameters + + +class FileTaskStepUpdateParameters(TaskStepUpdateParameters): + """The properties of updating a task step. + + All required parameters must be populated in order to send to Azure. + + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + :param task_file_path: The task template/definition file path relative to + the source context. + :type task_file_path: str + :param values_file_path: The values/parameters file path relative to the + source context. + :type values_file_path: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'task_file_path': {'key': 'taskFilePath', 'type': 'str'}, + 'values_file_path': {'key': 'valuesFilePath', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, *, context_path: str=None, context_access_token: str=None, task_file_path: str=None, values_file_path: str=None, values=None, **kwargs) -> None: + super(FileTaskStepUpdateParameters, self).__init__(context_path=context_path, context_access_token=context_access_token, **kwargs) + self.task_file_path = task_file_path + self.values_file_path = values_file_path + self.values = values + self.type = 'FileTask' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_descriptor.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_descriptor.py new file mode 100644 index 000000000000..1cfd03ed778c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_descriptor.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageDescriptor(Model): + """Properties for a registry image. + + :param registry: The registry login server. + :type registry: str + :param repository: The repository name. + :type repository: str + :param tag: The tag name. + :type tag: str + :param digest: The sha256-based digest of the image manifest. + :type digest: str + """ + + _attribute_map = { + 'registry': {'key': 'registry', 'type': 'str'}, + 'repository': {'key': 'repository', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + 'digest': {'key': 'digest', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImageDescriptor, self).__init__(**kwargs) + self.registry = kwargs.get('registry', None) + self.repository = kwargs.get('repository', None) + self.tag = kwargs.get('tag', None) + self.digest = kwargs.get('digest', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_descriptor_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_descriptor_py3.py new file mode 100644 index 000000000000..72928cf47326 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_descriptor_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageDescriptor(Model): + """Properties for a registry image. + + :param registry: The registry login server. + :type registry: str + :param repository: The repository name. + :type repository: str + :param tag: The tag name. + :type tag: str + :param digest: The sha256-based digest of the image manifest. + :type digest: str + """ + + _attribute_map = { + 'registry': {'key': 'registry', 'type': 'str'}, + 'repository': {'key': 'repository', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + 'digest': {'key': 'digest', 'type': 'str'}, + } + + def __init__(self, *, registry: str=None, repository: str=None, tag: str=None, digest: str=None, **kwargs) -> None: + super(ImageDescriptor, self).__init__(**kwargs) + self.registry = registry + self.repository = repository + self.tag = tag + self.digest = digest diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_update_trigger.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_update_trigger.py new file mode 100644 index 000000000000..4203ee9e26f6 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_update_trigger.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageUpdateTrigger(Model): + """The image update trigger that caused a build. + + :param id: The unique ID of the trigger. + :type id: str + :param timestamp: The timestamp when the image update happened. + :type timestamp: datetime + :param images: The list of image updates that caused the build. + :type images: + list[~azure.mgmt.containerregistry.v2018_09_01.models.ImageDescriptor] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'images': {'key': 'images', 'type': '[ImageDescriptor]'}, + } + + def __init__(self, **kwargs): + super(ImageUpdateTrigger, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.timestamp = kwargs.get('timestamp', None) + self.images = kwargs.get('images', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_update_trigger_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_update_trigger_py3.py new file mode 100644 index 000000000000..64c62ad9f07c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/image_update_trigger_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImageUpdateTrigger(Model): + """The image update trigger that caused a build. + + :param id: The unique ID of the trigger. + :type id: str + :param timestamp: The timestamp when the image update happened. + :type timestamp: datetime + :param images: The list of image updates that caused the build. + :type images: + list[~azure.mgmt.containerregistry.v2018_09_01.models.ImageDescriptor] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'images': {'key': 'images', 'type': '[ImageDescriptor]'}, + } + + def __init__(self, *, id: str=None, timestamp=None, images=None, **kwargs) -> None: + super(ImageUpdateTrigger, self).__init__(**kwargs) + self.id = id + self.timestamp = timestamp + self.images = images diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_image_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_image_parameters.py new file mode 100644 index 000000000000..d82648d8e186 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_image_parameters.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportImageParameters(Model): + """ImportImageParameters. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. The source of the image. + :type source: + ~azure.mgmt.containerregistry.v2018_09_01.models.ImportSource + :param target_tags: List of strings of the form repo[:tag]. When tag is + omitted the source will be used (or 'latest' if source tag is also + omitted). + :type target_tags: list[str] + :param untagged_target_repositories: List of strings of repository names + to do a manifest only copy. No tag will be created. + :type untagged_target_repositories: list[str] + :param mode: When Force, any existing target tags will be overwritten. + When NoForce, any existing target tags will fail the operation before any + copying begins. Possible values include: 'NoForce', 'Force'. Default + value: "NoForce" . + :type mode: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ImportMode + """ + + _validation = { + 'source': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ImportSource'}, + 'target_tags': {'key': 'targetTags', 'type': '[str]'}, + 'untagged_target_repositories': {'key': 'untaggedTargetRepositories', 'type': '[str]'}, + 'mode': {'key': 'mode', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImportImageParameters, self).__init__(**kwargs) + self.source = kwargs.get('source', None) + self.target_tags = kwargs.get('target_tags', None) + self.untagged_target_repositories = kwargs.get('untagged_target_repositories', None) + self.mode = kwargs.get('mode', "NoForce") diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_image_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_image_parameters_py3.py new file mode 100644 index 000000000000..fe050e50b1e0 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_image_parameters_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportImageParameters(Model): + """ImportImageParameters. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. The source of the image. + :type source: + ~azure.mgmt.containerregistry.v2018_09_01.models.ImportSource + :param target_tags: List of strings of the form repo[:tag]. When tag is + omitted the source will be used (or 'latest' if source tag is also + omitted). + :type target_tags: list[str] + :param untagged_target_repositories: List of strings of repository names + to do a manifest only copy. No tag will be created. + :type untagged_target_repositories: list[str] + :param mode: When Force, any existing target tags will be overwritten. + When NoForce, any existing target tags will fail the operation before any + copying begins. Possible values include: 'NoForce', 'Force'. Default + value: "NoForce" . + :type mode: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ImportMode + """ + + _validation = { + 'source': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ImportSource'}, + 'target_tags': {'key': 'targetTags', 'type': '[str]'}, + 'untagged_target_repositories': {'key': 'untaggedTargetRepositories', 'type': '[str]'}, + 'mode': {'key': 'mode', 'type': 'str'}, + } + + def __init__(self, *, source, target_tags=None, untagged_target_repositories=None, mode="NoForce", **kwargs) -> None: + super(ImportImageParameters, self).__init__(**kwargs) + self.source = source + self.target_tags = target_tags + self.untagged_target_repositories = untagged_target_repositories + self.mode = mode diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source.py new file mode 100644 index 000000000000..2fd0be86f756 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportSource(Model): + """ImportSource. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: The resource identifier of the source Azure Container + Registry. + :type resource_id: str + :param registry_uri: The address of the source registry (e.g. + 'mcr.microsoft.com'). + :type registry_uri: str + :param credentials: Credentials used when importing from a registry uri. + :type credentials: + ~azure.mgmt.containerregistry.v2018_09_01.models.ImportSourceCredentials + :param source_image: Required. Repository name of the source image. + Specify an image by repository ('hello-world'). This will use the 'latest' + tag. + Specify an image by tag ('hello-world:latest'). + Specify an image by sha256-based manifest digest + ('hello-world@sha256:abc123'). + :type source_image: str + """ + + _validation = { + 'source_image': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'registry_uri': {'key': 'registryUri', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'ImportSourceCredentials'}, + 'source_image': {'key': 'sourceImage', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImportSource, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.registry_uri = kwargs.get('registry_uri', None) + self.credentials = kwargs.get('credentials', None) + self.source_image = kwargs.get('source_image', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_credentials.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_credentials.py new file mode 100644 index 000000000000..b31e5f7e8405 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_credentials.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportSourceCredentials(Model): + """ImportSourceCredentials. + + All required parameters must be populated in order to send to Azure. + + :param username: The username to authenticate with the source registry. + :type username: str + :param password: Required. The password used to authenticate with the + source registry. + :type password: str + """ + + _validation = { + 'password': {'required': True}, + } + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImportSourceCredentials, self).__init__(**kwargs) + self.username = kwargs.get('username', None) + self.password = kwargs.get('password', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_credentials_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_credentials_py3.py new file mode 100644 index 000000000000..4a610e022f88 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_credentials_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportSourceCredentials(Model): + """ImportSourceCredentials. + + All required parameters must be populated in order to send to Azure. + + :param username: The username to authenticate with the source registry. + :type username: str + :param password: Required. The password used to authenticate with the + source registry. + :type password: str + """ + + _validation = { + 'password': {'required': True}, + } + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, *, password: str, username: str=None, **kwargs) -> None: + super(ImportSourceCredentials, self).__init__(**kwargs) + self.username = username + self.password = password diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_py3.py new file mode 100644 index 000000000000..f6989749628d --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/import_source_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImportSource(Model): + """ImportSource. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: The resource identifier of the source Azure Container + Registry. + :type resource_id: str + :param registry_uri: The address of the source registry (e.g. + 'mcr.microsoft.com'). + :type registry_uri: str + :param credentials: Credentials used when importing from a registry uri. + :type credentials: + ~azure.mgmt.containerregistry.v2018_09_01.models.ImportSourceCredentials + :param source_image: Required. Repository name of the source image. + Specify an image by repository ('hello-world'). This will use the 'latest' + tag. + Specify an image by tag ('hello-world:latest'). + Specify an image by sha256-based manifest digest + ('hello-world@sha256:abc123'). + :type source_image: str + """ + + _validation = { + 'source_image': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'registry_uri': {'key': 'registryUri', 'type': 'str'}, + 'credentials': {'key': 'credentials', 'type': 'ImportSourceCredentials'}, + 'source_image': {'key': 'sourceImage', 'type': 'str'}, + } + + def __init__(self, *, source_image: str, resource_id: str=None, registry_uri: str=None, credentials=None, **kwargs) -> None: + super(ImportSource, self).__init__(**kwargs) + self.resource_id = resource_id + self.registry_uri = registry_uri + self.credentials = credentials + self.source_image = source_image diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition.py new file mode 100644 index 000000000000..76a26bc63300 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDefinition(Model): + """The definition of a container registry operation. + + :param origin: The origin information of the container registry operation. + :type origin: str + :param name: Operation name: {provider}/{resource}/{operation}. + :type name: str + :param display: The display information for the container registry + operation. + :type display: + ~azure.mgmt.containerregistry.v2018_09_01.models.OperationDisplayDefinition + :param service_specification: The definition of Azure Monitoring service. + :type service_specification: + ~azure.mgmt.containerregistry.v2018_09_01.models.OperationServiceSpecificationDefinition + """ + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplayDefinition'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'OperationServiceSpecificationDefinition'}, + } + + def __init__(self, **kwargs): + super(OperationDefinition, self).__init__(**kwargs) + self.origin = kwargs.get('origin', None) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.service_specification = kwargs.get('service_specification', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition_paged.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition_paged.py new file mode 100644 index 000000000000..e22ddb00e48c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationDefinitionPaged(Paged): + """ + A paging container for iterating over a list of :class:`OperationDefinition ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[OperationDefinition]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationDefinitionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition_py3.py new file mode 100644 index 000000000000..a7539e326744 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_definition_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDefinition(Model): + """The definition of a container registry operation. + + :param origin: The origin information of the container registry operation. + :type origin: str + :param name: Operation name: {provider}/{resource}/{operation}. + :type name: str + :param display: The display information for the container registry + operation. + :type display: + ~azure.mgmt.containerregistry.v2018_09_01.models.OperationDisplayDefinition + :param service_specification: The definition of Azure Monitoring service. + :type service_specification: + ~azure.mgmt.containerregistry.v2018_09_01.models.OperationServiceSpecificationDefinition + """ + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplayDefinition'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'OperationServiceSpecificationDefinition'}, + } + + def __init__(self, *, origin: str=None, name: str=None, display=None, service_specification=None, **kwargs) -> None: + super(OperationDefinition, self).__init__(**kwargs) + self.origin = origin + self.name = name + self.display = display + self.service_specification = service_specification diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_display_definition.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_display_definition.py new file mode 100644 index 000000000000..6cb8463b21fc --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_display_definition.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplayDefinition(Model): + """The display information for a container registry operation. + + :param provider: The resource provider name: Microsoft.ContainerRegistry. + :type provider: str + :param resource: The resource on which the operation is performed. + :type resource: str + :param operation: The operation that users can perform. + :type operation: str + :param description: The description for the operation. + :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, **kwargs): + super(OperationDisplayDefinition, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_display_definition_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_display_definition_py3.py new file mode 100644 index 000000000000..98abb699335c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_display_definition_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplayDefinition(Model): + """The display information for a container registry operation. + + :param provider: The resource provider name: Microsoft.ContainerRegistry. + :type provider: str + :param resource: The resource on which the operation is performed. + :type resource: str + :param operation: The operation that users can perform. + :type operation: str + :param description: The description for the operation. + :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(OperationDisplayDefinition, self).__init__(**kwargs) + self.provider = provider + self.resource = resource + self.operation = operation + self.description = description diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_metric_specification_definition.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_metric_specification_definition.py new file mode 100644 index 000000000000..8b40b3b4d6f1 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_metric_specification_definition.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationMetricSpecificationDefinition(Model): + """The definition of Azure Monitoring metric. + + :param name: Metric name. + :type name: str + :param display_name: Metric display name. + :type display_name: str + :param display_description: Metric description. + :type display_description: str + :param unit: Metric unit. + :type unit: str + :param aggregation_type: Metric aggregation type. + :type aggregation_type: str + :param internal_metric_name: Internal metric name. + :type internal_metric_name: str + """ + + _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'}, + 'internal_metric_name': {'key': 'internalMetricName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationMetricSpecificationDefinition, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.display_description = kwargs.get('display_description', None) + self.unit = kwargs.get('unit', None) + self.aggregation_type = kwargs.get('aggregation_type', None) + self.internal_metric_name = kwargs.get('internal_metric_name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_metric_specification_definition_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_metric_specification_definition_py3.py new file mode 100644 index 000000000000..db4f31c14a17 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_metric_specification_definition_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationMetricSpecificationDefinition(Model): + """The definition of Azure Monitoring metric. + + :param name: Metric name. + :type name: str + :param display_name: Metric display name. + :type display_name: str + :param display_description: Metric description. + :type display_description: str + :param unit: Metric unit. + :type unit: str + :param aggregation_type: Metric aggregation type. + :type aggregation_type: str + :param internal_metric_name: Internal metric name. + :type internal_metric_name: str + """ + + _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'}, + 'internal_metric_name': {'key': 'internalMetricName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, display_description: str=None, unit: str=None, aggregation_type: str=None, internal_metric_name: str=None, **kwargs) -> None: + super(OperationMetricSpecificationDefinition, 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.internal_metric_name = internal_metric_name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_service_specification_definition.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_service_specification_definition.py new file mode 100644 index 000000000000..a687b3dec8ff --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_service_specification_definition.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationServiceSpecificationDefinition(Model): + """The definition of Azure Monitoring metrics list. + + :param metric_specifications: A list of Azure Monitoring metrics + definition. + :type metric_specifications: + list[~azure.mgmt.containerregistry.v2018_09_01.models.OperationMetricSpecificationDefinition] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[OperationMetricSpecificationDefinition]'}, + } + + def __init__(self, **kwargs): + super(OperationServiceSpecificationDefinition, self).__init__(**kwargs) + self.metric_specifications = kwargs.get('metric_specifications', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_service_specification_definition_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_service_specification_definition_py3.py new file mode 100644 index 000000000000..cd6cdd8969a8 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/operation_service_specification_definition_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationServiceSpecificationDefinition(Model): + """The definition of Azure Monitoring metrics list. + + :param metric_specifications: A list of Azure Monitoring metrics + definition. + :type metric_specifications: + list[~azure.mgmt.containerregistry.v2018_09_01.models.OperationMetricSpecificationDefinition] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[OperationMetricSpecificationDefinition]'}, + } + + def __init__(self, *, metric_specifications=None, **kwargs) -> None: + super(OperationServiceSpecificationDefinition, self).__init__(**kwargs) + self.metric_specifications = metric_specifications diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_properties.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_properties.py new file mode 100644 index 000000000000..cda6c3da72ae --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_properties.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PlatformProperties(Model): + """The platform properties against which the run has to happen. + + All required parameters must be populated in order to send to Azure. + + :param os: Required. The operating system type required for the run. + Possible values include: 'Windows', 'Linux' + :type os: str or ~azure.mgmt.containerregistry.v2018_09_01.models.OS + :param architecture: The OS architecture. Possible values include: + 'amd64', 'x86', 'arm' + :type architecture: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.Architecture + :param variant: Variant of the CPU. Possible values include: 'v6', 'v7', + 'v8' + :type variant: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.Variant + """ + + _validation = { + 'os': {'required': True}, + } + + _attribute_map = { + 'os': {'key': 'os', 'type': 'str'}, + 'architecture': {'key': 'architecture', 'type': 'str'}, + 'variant': {'key': 'variant', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PlatformProperties, self).__init__(**kwargs) + self.os = kwargs.get('os', None) + self.architecture = kwargs.get('architecture', None) + self.variant = kwargs.get('variant', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_properties_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_properties_py3.py new file mode 100644 index 000000000000..a96a315ce7f3 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_properties_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PlatformProperties(Model): + """The platform properties against which the run has to happen. + + All required parameters must be populated in order to send to Azure. + + :param os: Required. The operating system type required for the run. + Possible values include: 'Windows', 'Linux' + :type os: str or ~azure.mgmt.containerregistry.v2018_09_01.models.OS + :param architecture: The OS architecture. Possible values include: + 'amd64', 'x86', 'arm' + :type architecture: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.Architecture + :param variant: Variant of the CPU. Possible values include: 'v6', 'v7', + 'v8' + :type variant: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.Variant + """ + + _validation = { + 'os': {'required': True}, + } + + _attribute_map = { + 'os': {'key': 'os', 'type': 'str'}, + 'architecture': {'key': 'architecture', 'type': 'str'}, + 'variant': {'key': 'variant', 'type': 'str'}, + } + + def __init__(self, *, os, architecture=None, variant=None, **kwargs) -> None: + super(PlatformProperties, self).__init__(**kwargs) + self.os = os + self.architecture = architecture + self.variant = variant diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_update_parameters.py new file mode 100644 index 000000000000..c6ab1705597c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_update_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PlatformUpdateParameters(Model): + """The properties for updating the platform configuration. + + :param os: The operating system type required for the run. Possible values + include: 'Windows', 'Linux' + :type os: str or ~azure.mgmt.containerregistry.v2018_09_01.models.OS + :param architecture: The OS architecture. Possible values include: + 'amd64', 'x86', 'arm' + :type architecture: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.Architecture + :param variant: Variant of the CPU. Possible values include: 'v6', 'v7', + 'v8' + :type variant: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.Variant + """ + + _attribute_map = { + 'os': {'key': 'os', 'type': 'str'}, + 'architecture': {'key': 'architecture', 'type': 'str'}, + 'variant': {'key': 'variant', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PlatformUpdateParameters, self).__init__(**kwargs) + self.os = kwargs.get('os', None) + self.architecture = kwargs.get('architecture', None) + self.variant = kwargs.get('variant', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_update_parameters_py3.py new file mode 100644 index 000000000000..f02f2504c2f2 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/platform_update_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PlatformUpdateParameters(Model): + """The properties for updating the platform configuration. + + :param os: The operating system type required for the run. Possible values + include: 'Windows', 'Linux' + :type os: str or ~azure.mgmt.containerregistry.v2018_09_01.models.OS + :param architecture: The OS architecture. Possible values include: + 'amd64', 'x86', 'arm' + :type architecture: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.Architecture + :param variant: Variant of the CPU. Possible values include: 'v6', 'v7', + 'v8' + :type variant: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.Variant + """ + + _attribute_map = { + 'os': {'key': 'os', 'type': 'str'}, + 'architecture': {'key': 'architecture', 'type': 'str'}, + 'variant': {'key': 'variant', 'type': 'str'}, + } + + def __init__(self, *, os=None, architecture=None, variant=None, **kwargs) -> None: + super(PlatformUpdateParameters, self).__init__(**kwargs) + self.os = os + self.architecture = architecture + self.variant = variant diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/proxy_resource.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/proxy_resource.py new file mode 100644 index 000000000000..5c52aad9de10 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/proxy_resource.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProxyResource(Model): + """The resource model definition for a ARM proxy resource. It will have + everything other than required location and tags. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProxyResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/proxy_resource_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/proxy_resource_py3.py new file mode 100644 index 000000000000..d310c7cbf9b1 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/proxy_resource_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProxyResource(Model): + """The resource model definition for a ARM proxy resource. It will have + everything other than required location and tags. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ProxyResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/quarantine_policy.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/quarantine_policy.py new file mode 100644 index 000000000000..c4ccf93a7e6b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/quarantine_policy.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuarantinePolicy(Model): + """An object that represents quarantine policy for a container registry. + + :param status: The value that indicates whether the policy is enabled or + not. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PolicyStatus + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(QuarantinePolicy, self).__init__(**kwargs) + self.status = kwargs.get('status', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/quarantine_policy_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/quarantine_policy_py3.py new file mode 100644 index 000000000000..33810811b758 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/quarantine_policy_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuarantinePolicy(Model): + """An object that represents quarantine policy for a container registry. + + :param status: The value that indicates whether the policy is enabled or + not. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PolicyStatus + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__(self, *, status=None, **kwargs) -> None: + super(QuarantinePolicy, self).__init__(**kwargs) + self.status = status diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/regenerate_credential_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/regenerate_credential_parameters.py new file mode 100644 index 000000000000..621e21598fd1 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/regenerate_credential_parameters.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegenerateCredentialParameters(Model): + """The parameters used to regenerate the login credential. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Specifies name of the password which should be + regenerated -- password or password2. Possible values include: 'password', + 'password2' + :type name: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PasswordName + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'PasswordName'}, + } + + def __init__(self, **kwargs): + super(RegenerateCredentialParameters, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/regenerate_credential_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/regenerate_credential_parameters_py3.py new file mode 100644 index 000000000000..d860cd10fc97 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/regenerate_credential_parameters_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegenerateCredentialParameters(Model): + """The parameters used to regenerate the login credential. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Specifies name of the password which should be + regenerated -- password or password2. Possible values include: 'password', + 'password2' + :type name: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PasswordName + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'PasswordName'}, + } + + def __init__(self, *, name, **kwargs) -> None: + super(RegenerateCredentialParameters, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry.py new file mode 100644 index 000000000000..620129cafebf --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry.py @@ -0,0 +1,94 @@ +# 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 .resource import Resource + + +class Registry(Resource): + """An object that represents a container registry. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :param sku: Required. The SKU of the container registry. + :type sku: ~azure.mgmt.containerregistry.v2018_09_01.models.Sku + :ivar login_server: The URL that can be used to log into the container + registry. + :vartype login_server: str + :ivar creation_date: The creation date of the container registry in + ISO8601 format. + :vartype creation_date: datetime + :ivar provisioning_state: The provisioning state of the container registry + at the time the operation was called. Possible values include: 'Creating', + 'Updating', 'Deleting', 'Succeeded', 'Failed', 'Canceled' + :vartype provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + :ivar status: The status of the container registry at the time the + operation was called. + :vartype status: ~azure.mgmt.containerregistry.v2018_09_01.models.Status + :param admin_user_enabled: The value that indicates whether the admin user + is enabled. Default value: False . + :type admin_user_enabled: bool + :param storage_account: The properties of the storage account for the + container registry. Only applicable to Classic SKU. + :type storage_account: + ~azure.mgmt.containerregistry.v2018_09_01.models.StorageAccountProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'sku': {'required': True}, + 'login_server': {'readonly': True}, + 'creation_date': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'login_server': {'key': 'properties.loginServer', 'type': 'str'}, + 'creation_date': {'key': 'properties.creationDate', 'type': 'iso-8601'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'status': {'key': 'properties.status', 'type': 'Status'}, + 'admin_user_enabled': {'key': 'properties.adminUserEnabled', 'type': 'bool'}, + 'storage_account': {'key': 'properties.storageAccount', 'type': 'StorageAccountProperties'}, + } + + def __init__(self, **kwargs): + super(Registry, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.login_server = None + self.creation_date = None + self.provisioning_state = None + self.status = None + self.admin_user_enabled = kwargs.get('admin_user_enabled', False) + self.storage_account = kwargs.get('storage_account', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_list_credentials_result.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_list_credentials_result.py new file mode 100644 index 000000000000..5b48b116175b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_list_credentials_result.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryListCredentialsResult(Model): + """The response from the ListCredentials operation. + + :param username: The username for a container registry. + :type username: str + :param passwords: The list of passwords for a container registry. + :type passwords: + list[~azure.mgmt.containerregistry.v2018_09_01.models.RegistryPassword] + """ + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'passwords': {'key': 'passwords', 'type': '[RegistryPassword]'}, + } + + def __init__(self, **kwargs): + super(RegistryListCredentialsResult, self).__init__(**kwargs) + self.username = kwargs.get('username', None) + self.passwords = kwargs.get('passwords', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_list_credentials_result_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_list_credentials_result_py3.py new file mode 100644 index 000000000000..7b59229be4dd --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_list_credentials_result_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryListCredentialsResult(Model): + """The response from the ListCredentials operation. + + :param username: The username for a container registry. + :type username: str + :param passwords: The list of passwords for a container registry. + :type passwords: + list[~azure.mgmt.containerregistry.v2018_09_01.models.RegistryPassword] + """ + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'passwords': {'key': 'passwords', 'type': '[RegistryPassword]'}, + } + + def __init__(self, *, username: str=None, passwords=None, **kwargs) -> None: + super(RegistryListCredentialsResult, self).__init__(**kwargs) + self.username = username + self.passwords = passwords diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_check_request.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_check_request.py new file mode 100644 index 000000000000..9d4a575eac04 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_check_request.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryNameCheckRequest(Model): + """A request to check whether a container registry name is available. + + 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. The name of the container registry. + :type name: str + :ivar type: Required. The resource type of the container registry. This + field must be set to 'Microsoft.ContainerRegistry/registries'. Default + value: "Microsoft.ContainerRegistry/registries" . + :vartype type: str + """ + + _validation = { + 'name': {'required': True, 'max_length': 50, 'min_length': 5, 'pattern': r'^[a-zA-Z0-9]*$'}, + 'type': {'required': True, 'constant': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + type = "Microsoft.ContainerRegistry/registries" + + def __init__(self, **kwargs): + super(RegistryNameCheckRequest, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_check_request_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_check_request_py3.py new file mode 100644 index 000000000000..67f5ff9be671 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_check_request_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryNameCheckRequest(Model): + """A request to check whether a container registry name is available. + + 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. The name of the container registry. + :type name: str + :ivar type: Required. The resource type of the container registry. This + field must be set to 'Microsoft.ContainerRegistry/registries'. Default + value: "Microsoft.ContainerRegistry/registries" . + :vartype type: str + """ + + _validation = { + 'name': {'required': True, 'max_length': 50, 'min_length': 5, 'pattern': r'^[a-zA-Z0-9]*$'}, + 'type': {'required': True, 'constant': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + type = "Microsoft.ContainerRegistry/registries" + + def __init__(self, *, name: str, **kwargs) -> None: + super(RegistryNameCheckRequest, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_status.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_status.py new file mode 100644 index 000000000000..94345ba6d549 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_status.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryNameStatus(Model): + """The result of a request to check the availability of a container registry + name. + + :param name_available: The value that indicates whether the name is + available. + :type name_available: bool + :param reason: If any, the reason that the name is not available. + :type reason: str + :param message: If any, the error message that provides more detail for + the reason that the name is not available. + :type message: str + """ + + _attribute_map = { + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RegistryNameStatus, self).__init__(**kwargs) + self.name_available = kwargs.get('name_available', None) + self.reason = kwargs.get('reason', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_status_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_status_py3.py new file mode 100644 index 000000000000..8b7b264c2d0d --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_name_status_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryNameStatus(Model): + """The result of a request to check the availability of a container registry + name. + + :param name_available: The value that indicates whether the name is + available. + :type name_available: bool + :param reason: If any, the reason that the name is not available. + :type reason: str + :param message: If any, the error message that provides more detail for + the reason that the name is not available. + :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: str=None, message: str=None, **kwargs) -> None: + super(RegistryNameStatus, self).__init__(**kwargs) + self.name_available = name_available + self.reason = reason + self.message = message diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_paged.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_paged.py new file mode 100644 index 000000000000..ff498337cb67 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RegistryPaged(Paged): + """ + A paging container for iterating over a list of :class:`Registry ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Registry]'} + } + + def __init__(self, *args, **kwargs): + + super(RegistryPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_password.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_password.py new file mode 100644 index 000000000000..eda69d0e626f --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_password.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryPassword(Model): + """The login password for the container registry. + + :param name: The password name. Possible values include: 'password', + 'password2' + :type name: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PasswordName + :param value: The password value. + :type value: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'PasswordName'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RegistryPassword, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_password_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_password_py3.py new file mode 100644 index 000000000000..8bbbb90f7ce0 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_password_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryPassword(Model): + """The login password for the container registry. + + :param name: The password name. Possible values include: 'password', + 'password2' + :type name: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PasswordName + :param value: The password value. + :type value: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'PasswordName'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, name=None, value: str=None, **kwargs) -> None: + super(RegistryPassword, self).__init__(**kwargs) + self.name = name + self.value = value diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_policies.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_policies.py new file mode 100644 index 000000000000..0dd49dfe55d6 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_policies.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryPolicies(Model): + """An object that represents policies for a container registry. + + :param quarantine_policy: An object that represents quarantine policy for + a container registry. + :type quarantine_policy: + ~azure.mgmt.containerregistry.v2018_09_01.models.QuarantinePolicy + :param trust_policy: An object that represents content trust policy for a + container registry. + :type trust_policy: + ~azure.mgmt.containerregistry.v2018_09_01.models.TrustPolicy + """ + + _attribute_map = { + 'quarantine_policy': {'key': 'quarantinePolicy', 'type': 'QuarantinePolicy'}, + 'trust_policy': {'key': 'trustPolicy', 'type': 'TrustPolicy'}, + } + + def __init__(self, **kwargs): + super(RegistryPolicies, self).__init__(**kwargs) + self.quarantine_policy = kwargs.get('quarantine_policy', None) + self.trust_policy = kwargs.get('trust_policy', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_policies_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_policies_py3.py new file mode 100644 index 000000000000..a229cd295473 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_policies_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryPolicies(Model): + """An object that represents policies for a container registry. + + :param quarantine_policy: An object that represents quarantine policy for + a container registry. + :type quarantine_policy: + ~azure.mgmt.containerregistry.v2018_09_01.models.QuarantinePolicy + :param trust_policy: An object that represents content trust policy for a + container registry. + :type trust_policy: + ~azure.mgmt.containerregistry.v2018_09_01.models.TrustPolicy + """ + + _attribute_map = { + 'quarantine_policy': {'key': 'quarantinePolicy', 'type': 'QuarantinePolicy'}, + 'trust_policy': {'key': 'trustPolicy', 'type': 'TrustPolicy'}, + } + + def __init__(self, *, quarantine_policy=None, trust_policy=None, **kwargs) -> None: + super(RegistryPolicies, self).__init__(**kwargs) + self.quarantine_policy = quarantine_policy + self.trust_policy = trust_policy diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_py3.py new file mode 100644 index 000000000000..049a2b708dcb --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_py3.py @@ -0,0 +1,94 @@ +# 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 .resource_py3 import Resource + + +class Registry(Resource): + """An object that represents a container registry. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :param sku: Required. The SKU of the container registry. + :type sku: ~azure.mgmt.containerregistry.v2018_09_01.models.Sku + :ivar login_server: The URL that can be used to log into the container + registry. + :vartype login_server: str + :ivar creation_date: The creation date of the container registry in + ISO8601 format. + :vartype creation_date: datetime + :ivar provisioning_state: The provisioning state of the container registry + at the time the operation was called. Possible values include: 'Creating', + 'Updating', 'Deleting', 'Succeeded', 'Failed', 'Canceled' + :vartype provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + :ivar status: The status of the container registry at the time the + operation was called. + :vartype status: ~azure.mgmt.containerregistry.v2018_09_01.models.Status + :param admin_user_enabled: The value that indicates whether the admin user + is enabled. Default value: False . + :type admin_user_enabled: bool + :param storage_account: The properties of the storage account for the + container registry. Only applicable to Classic SKU. + :type storage_account: + ~azure.mgmt.containerregistry.v2018_09_01.models.StorageAccountProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'sku': {'required': True}, + 'login_server': {'readonly': True}, + 'creation_date': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'login_server': {'key': 'properties.loginServer', 'type': 'str'}, + 'creation_date': {'key': 'properties.creationDate', 'type': 'iso-8601'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'status': {'key': 'properties.status', 'type': 'Status'}, + 'admin_user_enabled': {'key': 'properties.adminUserEnabled', 'type': 'bool'}, + 'storage_account': {'key': 'properties.storageAccount', 'type': 'StorageAccountProperties'}, + } + + def __init__(self, *, location: str, sku, tags=None, admin_user_enabled: bool=False, storage_account=None, **kwargs) -> None: + super(Registry, self).__init__(location=location, tags=tags, **kwargs) + self.sku = sku + self.login_server = None + self.creation_date = None + self.provisioning_state = None + self.status = None + self.admin_user_enabled = admin_user_enabled + self.storage_account = storage_account diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_update_parameters.py new file mode 100644 index 000000000000..fa3786ebd673 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_update_parameters.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryUpdateParameters(Model): + """The parameters for updating a container registry. + + :param tags: The tags for the container registry. + :type tags: dict[str, str] + :param sku: The SKU of the container registry. + :type sku: ~azure.mgmt.containerregistry.v2018_09_01.models.Sku + :param admin_user_enabled: The value that indicates whether the admin user + is enabled. + :type admin_user_enabled: bool + :param storage_account: The parameters of a storage account for the + container registry. Only applicable to Classic SKU. If specified, the + storage account must be in the same physical location as the container + registry. + :type storage_account: + ~azure.mgmt.containerregistry.v2018_09_01.models.StorageAccountProperties + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'admin_user_enabled': {'key': 'properties.adminUserEnabled', 'type': 'bool'}, + 'storage_account': {'key': 'properties.storageAccount', 'type': 'StorageAccountProperties'}, + } + + def __init__(self, **kwargs): + super(RegistryUpdateParameters, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + self.sku = kwargs.get('sku', None) + self.admin_user_enabled = kwargs.get('admin_user_enabled', None) + self.storage_account = kwargs.get('storage_account', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_update_parameters_py3.py new file mode 100644 index 000000000000..c487af741eff --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_update_parameters_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryUpdateParameters(Model): + """The parameters for updating a container registry. + + :param tags: The tags for the container registry. + :type tags: dict[str, str] + :param sku: The SKU of the container registry. + :type sku: ~azure.mgmt.containerregistry.v2018_09_01.models.Sku + :param admin_user_enabled: The value that indicates whether the admin user + is enabled. + :type admin_user_enabled: bool + :param storage_account: The parameters of a storage account for the + container registry. Only applicable to Classic SKU. If specified, the + storage account must be in the same physical location as the container + registry. + :type storage_account: + ~azure.mgmt.containerregistry.v2018_09_01.models.StorageAccountProperties + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'admin_user_enabled': {'key': 'properties.adminUserEnabled', 'type': 'bool'}, + 'storage_account': {'key': 'properties.storageAccount', 'type': 'StorageAccountProperties'}, + } + + def __init__(self, *, tags=None, sku=None, admin_user_enabled: bool=None, storage_account=None, **kwargs) -> None: + super(RegistryUpdateParameters, self).__init__(**kwargs) + self.tags = tags + self.sku = sku + self.admin_user_enabled = admin_user_enabled + self.storage_account = storage_account diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage.py new file mode 100644 index 000000000000..8d196c7711f8 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryUsage(Model): + """The quota usage for a container registry. + + :param name: The name of the usage. + :type name: str + :param limit: The limit of the usage. + :type limit: long + :param current_value: The current value of the usage. + :type current_value: long + :param unit: The unit of measurement. Possible values include: 'Count', + 'Bytes' + :type unit: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryUsageUnit + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RegistryUsage, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.limit = kwargs.get('limit', None) + self.current_value = kwargs.get('current_value', None) + self.unit = kwargs.get('unit', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_list_result.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_list_result.py new file mode 100644 index 000000000000..bb2cddc211f3 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_list_result.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryUsageListResult(Model): + """The result of a request to get container registry quota usages. + + :param value: The list of container registry quota usages. + :type value: + list[~azure.mgmt.containerregistry.v2018_09_01.models.RegistryUsage] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RegistryUsage]'}, + } + + def __init__(self, **kwargs): + super(RegistryUsageListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_list_result_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_list_result_py3.py new file mode 100644 index 000000000000..7c29c148e01c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_list_result_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryUsageListResult(Model): + """The result of a request to get container registry quota usages. + + :param value: The list of container registry quota usages. + :type value: + list[~azure.mgmt.containerregistry.v2018_09_01.models.RegistryUsage] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RegistryUsage]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(RegistryUsageListResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_py3.py new file mode 100644 index 000000000000..4580c01f22c3 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/registry_usage_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegistryUsage(Model): + """The quota usage for a container registry. + + :param name: The name of the usage. + :type name: str + :param limit: The limit of the usage. + :type limit: long + :param current_value: The current value of the usage. + :type current_value: long + :param unit: The unit of measurement. Possible values include: 'Count', + 'Bytes' + :type unit: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryUsageUnit + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, limit: int=None, current_value: int=None, unit=None, **kwargs) -> None: + super(RegistryUsage, self).__init__(**kwargs) + self.name = name + self.limit = limit + self.current_value = current_value + self.unit = unit diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication.py new file mode 100644 index 000000000000..dc224cae74df --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication.py @@ -0,0 +1,66 @@ +# 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 .resource import Resource + + +class Replication(Resource): + """An object that represents a replication for a container registry. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the replication at the + time the operation was called. Possible values include: 'Creating', + 'Updating', 'Deleting', 'Succeeded', 'Failed', 'Canceled' + :vartype provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + :ivar status: The status of the replication at the time the operation was + called. + :vartype status: ~azure.mgmt.containerregistry.v2018_09_01.models.Status + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'status': {'key': 'properties.status', 'type': 'Status'}, + } + + def __init__(self, **kwargs): + super(Replication, self).__init__(**kwargs) + self.provisioning_state = None + self.status = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_paged.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_paged.py new file mode 100644 index 000000000000..8f088e8f72f6 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ReplicationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Replication ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Replication]'} + } + + def __init__(self, *args, **kwargs): + + super(ReplicationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_py3.py new file mode 100644 index 000000000000..73bebd419cdb --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_py3.py @@ -0,0 +1,66 @@ +# 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 .resource_py3 import Resource + + +class Replication(Resource): + """An object that represents a replication for a container registry. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the replication at the + time the operation was called. Possible values include: 'Creating', + 'Updating', 'Deleting', 'Succeeded', 'Failed', 'Canceled' + :vartype provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + :ivar status: The status of the replication at the time the operation was + called. + :vartype status: ~azure.mgmt.containerregistry.v2018_09_01.models.Status + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'status': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'status': {'key': 'properties.status', 'type': 'Status'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(Replication, self).__init__(location=location, tags=tags, **kwargs) + self.provisioning_state = None + self.status = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_update_parameters.py new file mode 100644 index 000000000000..003b15583a55 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_update_parameters.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ReplicationUpdateParameters(Model): + """The parameters for updating a replication. + + :param tags: The tags for the replication. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(ReplicationUpdateParameters, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_update_parameters_py3.py new file mode 100644 index 000000000000..5497bcdbc1f7 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/replication_update_parameters_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ReplicationUpdateParameters(Model): + """The parameters for updating a replication. + + :param tags: The tags for the replication. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(ReplicationUpdateParameters, self).__init__(**kwargs) + self.tags = tags diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/request.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/request.py new file mode 100644 index 000000000000..e08090f53205 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/request.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Request(Model): + """The request that generated the event. + + :param id: The ID of the request that initiated the event. + :type id: str + :param addr: The IP or hostname and possibly port of the client connection + that initiated the event. This is the RemoteAddr from the standard http + request. + :type addr: str + :param host: The externally accessible hostname of the registry instance, + as specified by the http host header on incoming requests. + :type host: str + :param method: The request method that generated the event. + :type method: str + :param useragent: The user agent header of the request. + :type useragent: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'addr': {'key': 'addr', 'type': 'str'}, + 'host': {'key': 'host', 'type': 'str'}, + 'method': {'key': 'method', 'type': 'str'}, + 'useragent': {'key': 'useragent', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Request, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.addr = kwargs.get('addr', None) + self.host = kwargs.get('host', None) + self.method = kwargs.get('method', None) + self.useragent = kwargs.get('useragent', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/request_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/request_py3.py new file mode 100644 index 000000000000..f42dae28c955 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/request_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Request(Model): + """The request that generated the event. + + :param id: The ID of the request that initiated the event. + :type id: str + :param addr: The IP or hostname and possibly port of the client connection + that initiated the event. This is the RemoteAddr from the standard http + request. + :type addr: str + :param host: The externally accessible hostname of the registry instance, + as specified by the http host header on incoming requests. + :type host: str + :param method: The request method that generated the event. + :type method: str + :param useragent: The user agent header of the request. + :type useragent: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'addr': {'key': 'addr', 'type': 'str'}, + 'host': {'key': 'host', 'type': 'str'}, + 'method': {'key': 'method', 'type': 'str'}, + 'useragent': {'key': 'useragent', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, addr: str=None, host: str=None, method: str=None, useragent: str=None, **kwargs) -> None: + super(Request, self).__init__(**kwargs) + self.id = id + self.addr = addr + self.host = host + self.method = method + self.useragent = useragent diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/resource.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/resource.py new file mode 100644 index 000000000000..3965a6f0cf40 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/resource.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """An Azure resource. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/resource_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/resource_py3.py new file mode 100644 index 000000000000..3a1d4bc4edd1 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/resource_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """An Azure resource. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = location + self.tags = tags diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run.py new file mode 100644 index 000000000000..246a9872913a --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run.py @@ -0,0 +1,119 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class Run(ProxyResource): + """Run resource properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param run_id: The unique identifier for the run. + :type run_id: str + :param status: The current status of the run. Possible values include: + 'Queued', 'Started', 'Running', 'Succeeded', 'Failed', 'Canceled', + 'Error', 'Timeout' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RunStatus + :param last_updated_time: The last updated time for the run. + :type last_updated_time: datetime + :param run_type: The type of run. Possible values include: 'QuickBuild', + 'QuickRun', 'AutoBuild', 'AutoRun' + :type run_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RunType + :param create_time: The time the run was scheduled. + :type create_time: datetime + :param start_time: The time the run started. + :type start_time: datetime + :param finish_time: The time the run finished. + :type finish_time: datetime + :param output_images: The list of all images that were generated from the + run. This is applicable if the run generates base image dependencies. + :type output_images: + list[~azure.mgmt.containerregistry.v2018_09_01.models.ImageDescriptor] + :param task: The task against which run was scheduled. + :type task: str + :param image_update_trigger: The image update trigger that caused the run. + This is applicable if the task has base image trigger configured. + :type image_update_trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.ImageUpdateTrigger + :param source_trigger: The source trigger that caused the run. + :type source_trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceTriggerDescriptor + :param is_archive_enabled: The value that indicates whether archiving is + enabled or not. Default value: False . + :type is_archive_enabled: bool + :param platform: The platform properties against which the run will + happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param provisioning_state: The provisioning state of a run. Possible + values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Failed', + 'Canceled' + :type provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'run_id': {'key': 'properties.runId', 'type': 'str'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'last_updated_time': {'key': 'properties.lastUpdatedTime', 'type': 'iso-8601'}, + 'run_type': {'key': 'properties.runType', 'type': 'str'}, + 'create_time': {'key': 'properties.createTime', 'type': 'iso-8601'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'finish_time': {'key': 'properties.finishTime', 'type': 'iso-8601'}, + 'output_images': {'key': 'properties.outputImages', 'type': '[ImageDescriptor]'}, + 'task': {'key': 'properties.task', 'type': 'str'}, + 'image_update_trigger': {'key': 'properties.imageUpdateTrigger', 'type': 'ImageUpdateTrigger'}, + 'source_trigger': {'key': 'properties.sourceTrigger', 'type': 'SourceTriggerDescriptor'}, + 'is_archive_enabled': {'key': 'properties.isArchiveEnabled', 'type': 'bool'}, + 'platform': {'key': 'properties.platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'properties.agentConfiguration', 'type': 'AgentProperties'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Run, self).__init__(**kwargs) + self.run_id = kwargs.get('run_id', None) + self.status = kwargs.get('status', None) + self.last_updated_time = kwargs.get('last_updated_time', None) + self.run_type = kwargs.get('run_type', None) + self.create_time = kwargs.get('create_time', None) + self.start_time = kwargs.get('start_time', None) + self.finish_time = kwargs.get('finish_time', None) + self.output_images = kwargs.get('output_images', None) + self.task = kwargs.get('task', None) + self.image_update_trigger = kwargs.get('image_update_trigger', None) + self.source_trigger = kwargs.get('source_trigger', None) + self.is_archive_enabled = kwargs.get('is_archive_enabled', False) + self.platform = kwargs.get('platform', None) + self.agent_configuration = kwargs.get('agent_configuration', None) + self.provisioning_state = kwargs.get('provisioning_state', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_filter.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_filter.py new file mode 100644 index 000000000000..eb87112b749e --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_filter.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunFilter(Model): + """Properties that are enabled for Odata querying on runs. + + :param run_id: The unique identifier for the run. + :type run_id: str + :param run_type: The type of run. Possible values include: 'QuickBuild', + 'QuickRun', 'AutoBuild', 'AutoRun' + :type run_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RunType + :param status: The current status of the run. Possible values include: + 'Queued', 'Started', 'Running', 'Succeeded', 'Failed', 'Canceled', + 'Error', 'Timeout' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RunStatus + :param create_time: The create time for a run. + :type create_time: datetime + :param finish_time: The time the run finished. + :type finish_time: datetime + :param output_image_manifests: The list of comma-separated image manifests + that were generated from the run. This is applicable if the run is of + build type. + :type output_image_manifests: str + :param is_archive_enabled: The value that indicates whether archiving is + enabled or not. + :type is_archive_enabled: bool + :param task_name: The name of the task that the run corresponds to. + :type task_name: str + """ + + _attribute_map = { + 'run_id': {'key': 'runId', 'type': 'str'}, + 'run_type': {'key': 'runType', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'create_time': {'key': 'createTime', 'type': 'iso-8601'}, + 'finish_time': {'key': 'finishTime', 'type': 'iso-8601'}, + 'output_image_manifests': {'key': 'outputImageManifests', 'type': 'str'}, + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'task_name': {'key': 'taskName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RunFilter, self).__init__(**kwargs) + self.run_id = kwargs.get('run_id', None) + self.run_type = kwargs.get('run_type', None) + self.status = kwargs.get('status', None) + self.create_time = kwargs.get('create_time', None) + self.finish_time = kwargs.get('finish_time', None) + self.output_image_manifests = kwargs.get('output_image_manifests', None) + self.is_archive_enabled = kwargs.get('is_archive_enabled', None) + self.task_name = kwargs.get('task_name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_filter_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_filter_py3.py new file mode 100644 index 000000000000..3c37fdffd4ae --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_filter_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunFilter(Model): + """Properties that are enabled for Odata querying on runs. + + :param run_id: The unique identifier for the run. + :type run_id: str + :param run_type: The type of run. Possible values include: 'QuickBuild', + 'QuickRun', 'AutoBuild', 'AutoRun' + :type run_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RunType + :param status: The current status of the run. Possible values include: + 'Queued', 'Started', 'Running', 'Succeeded', 'Failed', 'Canceled', + 'Error', 'Timeout' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RunStatus + :param create_time: The create time for a run. + :type create_time: datetime + :param finish_time: The time the run finished. + :type finish_time: datetime + :param output_image_manifests: The list of comma-separated image manifests + that were generated from the run. This is applicable if the run is of + build type. + :type output_image_manifests: str + :param is_archive_enabled: The value that indicates whether archiving is + enabled or not. + :type is_archive_enabled: bool + :param task_name: The name of the task that the run corresponds to. + :type task_name: str + """ + + _attribute_map = { + 'run_id': {'key': 'runId', 'type': 'str'}, + 'run_type': {'key': 'runType', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'create_time': {'key': 'createTime', 'type': 'iso-8601'}, + 'finish_time': {'key': 'finishTime', 'type': 'iso-8601'}, + 'output_image_manifests': {'key': 'outputImageManifests', 'type': 'str'}, + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'task_name': {'key': 'taskName', 'type': 'str'}, + } + + def __init__(self, *, run_id: str=None, run_type=None, status=None, create_time=None, finish_time=None, output_image_manifests: str=None, is_archive_enabled: bool=None, task_name: str=None, **kwargs) -> None: + super(RunFilter, self).__init__(**kwargs) + self.run_id = run_id + self.run_type = run_type + self.status = status + self.create_time = create_time + self.finish_time = finish_time + self.output_image_manifests = output_image_manifests + self.is_archive_enabled = is_archive_enabled + self.task_name = task_name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_get_log_result.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_get_log_result.py new file mode 100644 index 000000000000..bfe07c60ccee --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_get_log_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunGetLogResult(Model): + """The result of get log link operation. + + :param log_link: The link to logs for a run on a azure container registry. + :type log_link: str + """ + + _attribute_map = { + 'log_link': {'key': 'logLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RunGetLogResult, self).__init__(**kwargs) + self.log_link = kwargs.get('log_link', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_get_log_result_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_get_log_result_py3.py new file mode 100644 index 000000000000..dc68e84d93db --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_get_log_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunGetLogResult(Model): + """The result of get log link operation. + + :param log_link: The link to logs for a run on a azure container registry. + :type log_link: str + """ + + _attribute_map = { + 'log_link': {'key': 'logLink', 'type': 'str'}, + } + + def __init__(self, *, log_link: str=None, **kwargs) -> None: + super(RunGetLogResult, self).__init__(**kwargs) + self.log_link = log_link diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_paged.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_paged.py new file mode 100644 index 000000000000..ff11871fbc20 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RunPaged(Paged): + """ + A paging container for iterating over a list of :class:`Run ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Run]'} + } + + def __init__(self, *args, **kwargs): + + super(RunPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_py3.py new file mode 100644 index 000000000000..758059d25112 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_py3.py @@ -0,0 +1,119 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class Run(ProxyResource): + """Run resource properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param run_id: The unique identifier for the run. + :type run_id: str + :param status: The current status of the run. Possible values include: + 'Queued', 'Started', 'Running', 'Succeeded', 'Failed', 'Canceled', + 'Error', 'Timeout' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RunStatus + :param last_updated_time: The last updated time for the run. + :type last_updated_time: datetime + :param run_type: The type of run. Possible values include: 'QuickBuild', + 'QuickRun', 'AutoBuild', 'AutoRun' + :type run_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.RunType + :param create_time: The time the run was scheduled. + :type create_time: datetime + :param start_time: The time the run started. + :type start_time: datetime + :param finish_time: The time the run finished. + :type finish_time: datetime + :param output_images: The list of all images that were generated from the + run. This is applicable if the run generates base image dependencies. + :type output_images: + list[~azure.mgmt.containerregistry.v2018_09_01.models.ImageDescriptor] + :param task: The task against which run was scheduled. + :type task: str + :param image_update_trigger: The image update trigger that caused the run. + This is applicable if the task has base image trigger configured. + :type image_update_trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.ImageUpdateTrigger + :param source_trigger: The source trigger that caused the run. + :type source_trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceTriggerDescriptor + :param is_archive_enabled: The value that indicates whether archiving is + enabled or not. Default value: False . + :type is_archive_enabled: bool + :param platform: The platform properties against which the run will + happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param provisioning_state: The provisioning state of a run. Possible + values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Failed', + 'Canceled' + :type provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'run_id': {'key': 'properties.runId', 'type': 'str'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'last_updated_time': {'key': 'properties.lastUpdatedTime', 'type': 'iso-8601'}, + 'run_type': {'key': 'properties.runType', 'type': 'str'}, + 'create_time': {'key': 'properties.createTime', 'type': 'iso-8601'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'finish_time': {'key': 'properties.finishTime', 'type': 'iso-8601'}, + 'output_images': {'key': 'properties.outputImages', 'type': '[ImageDescriptor]'}, + 'task': {'key': 'properties.task', 'type': 'str'}, + 'image_update_trigger': {'key': 'properties.imageUpdateTrigger', 'type': 'ImageUpdateTrigger'}, + 'source_trigger': {'key': 'properties.sourceTrigger', 'type': 'SourceTriggerDescriptor'}, + 'is_archive_enabled': {'key': 'properties.isArchiveEnabled', 'type': 'bool'}, + 'platform': {'key': 'properties.platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'properties.agentConfiguration', 'type': 'AgentProperties'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, run_id: str=None, status=None, last_updated_time=None, run_type=None, create_time=None, start_time=None, finish_time=None, output_images=None, task: str=None, image_update_trigger=None, source_trigger=None, is_archive_enabled: bool=False, platform=None, agent_configuration=None, provisioning_state=None, **kwargs) -> None: + super(Run, self).__init__(**kwargs) + self.run_id = run_id + self.status = status + self.last_updated_time = last_updated_time + self.run_type = run_type + self.create_time = create_time + self.start_time = start_time + self.finish_time = finish_time + self.output_images = output_images + self.task = task + self.image_update_trigger = image_update_trigger + self.source_trigger = source_trigger + self.is_archive_enabled = is_archive_enabled + self.platform = platform + self.agent_configuration = agent_configuration + self.provisioning_state = provisioning_state diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_request.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_request.py new file mode 100644 index 000000000000..6a49775b5fe9 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_request.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunRequest(Model): + """The request parameters for scheduling a run. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: DockerBuildRequest, FileTaskRunRequest, TaskRunRequest, + EncodedTaskRunRequest + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + _subtype_map = { + 'type': {'DockerBuildRequest': 'DockerBuildRequest', 'FileTaskRunRequest': 'FileTaskRunRequest', 'TaskRunRequest': 'TaskRunRequest', 'EncodedTaskRunRequest': 'EncodedTaskRunRequest'} + } + + def __init__(self, **kwargs): + super(RunRequest, self).__init__(**kwargs) + self.is_archive_enabled = kwargs.get('is_archive_enabled', False) + self.type = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_request_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_request_py3.py new file mode 100644 index 000000000000..1bf6cabe0c2d --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_request_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunRequest(Model): + """The request parameters for scheduling a run. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: DockerBuildRequest, FileTaskRunRequest, TaskRunRequest, + EncodedTaskRunRequest + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + _subtype_map = { + 'type': {'DockerBuildRequest': 'DockerBuildRequest', 'FileTaskRunRequest': 'FileTaskRunRequest', 'TaskRunRequest': 'TaskRunRequest', 'EncodedTaskRunRequest': 'EncodedTaskRunRequest'} + } + + def __init__(self, *, is_archive_enabled: bool=False, **kwargs) -> None: + super(RunRequest, self).__init__(**kwargs) + self.is_archive_enabled = is_archive_enabled + self.type = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_update_parameters.py new file mode 100644 index 000000000000..7c99f1e212d0 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_update_parameters.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunUpdateParameters(Model): + """The set of run properties that can be updated. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled or not. + :type is_archive_enabled: bool + """ + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(RunUpdateParameters, self).__init__(**kwargs) + self.is_archive_enabled = kwargs.get('is_archive_enabled', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_update_parameters_py3.py new file mode 100644 index 000000000000..62bcd0c6f4bd --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/run_update_parameters_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RunUpdateParameters(Model): + """The set of run properties that can be updated. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled or not. + :type is_archive_enabled: bool + """ + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + } + + def __init__(self, *, is_archive_enabled: bool=None, **kwargs) -> None: + super(RunUpdateParameters, self).__init__(**kwargs) + self.is_archive_enabled = is_archive_enabled diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/set_value.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/set_value.py new file mode 100644 index 000000000000..ec349f6bb414 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/set_value.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SetValue(Model): + """The properties of a overridable value that can be passed to a task + template. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the overridable value. + :type name: str + :param value: Required. The overridable value. + :type value: str + :param is_secret: Flag to indicate whether the value represents a secret + or not. Default value: False . + :type is_secret: bool + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + 'is_secret': {'key': 'isSecret', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SetValue, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) + self.is_secret = kwargs.get('is_secret', False) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/set_value_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/set_value_py3.py new file mode 100644 index 000000000000..cce869040a6a --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/set_value_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SetValue(Model): + """The properties of a overridable value that can be passed to a task + template. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the overridable value. + :type name: str + :param value: Required. The overridable value. + :type value: str + :param is_secret: Flag to indicate whether the value represents a secret + or not. Default value: False . + :type is_secret: bool + """ + + _validation = { + 'name': {'required': True}, + 'value': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + 'is_secret': {'key': 'isSecret', 'type': 'bool'}, + } + + def __init__(self, *, name: str, value: str, is_secret: bool=False, **kwargs) -> None: + super(SetValue, self).__init__(**kwargs) + self.name = name + self.value = value + self.is_secret = is_secret diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/sku.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/sku.py new file mode 100644 index 000000000000..b8111d63942b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/sku.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """The SKU of a container registry. + + 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. The SKU name of the container registry. Required + for registry creation. Possible values include: 'Classic', 'Basic', + 'Standard', 'Premium' + :type name: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SkuName + :ivar tier: The SKU tier based on the SKU name. Possible values include: + 'Classic', 'Basic', 'Standard', 'Premium' + :vartype tier: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SkuTier + """ + + _validation = { + 'name': {'required': True}, + 'tier': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Sku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/sku_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/sku_py3.py new file mode 100644 index 000000000000..7789497c334e --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/sku_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """The SKU of a container registry. + + 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. The SKU name of the container registry. Required + for registry creation. Possible values include: 'Classic', 'Basic', + 'Standard', 'Premium' + :type name: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SkuName + :ivar tier: The SKU tier based on the SKU name. Possible values include: + 'Classic', 'Basic', 'Standard', 'Premium' + :vartype tier: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SkuTier + """ + + _validation = { + 'name': {'required': True}, + 'tier': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, *, name, **kwargs) -> None: + super(Sku, self).__init__(**kwargs) + self.name = name + self.tier = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source.py new file mode 100644 index 000000000000..132f4b2c1324 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Source(Model): + """The registry node that generated the event. Put differently, while the + actor initiates the event, the source generates it. + + :param addr: The IP or hostname and the port of the registry node that + generated the event. Generally, this will be resolved by os.Hostname() + along with the running port. + :type addr: str + :param instance_id: The running instance of an application. Changes after + each restart. + :type instance_id: str + """ + + _attribute_map = { + 'addr': {'key': 'addr', 'type': 'str'}, + 'instance_id': {'key': 'instanceID', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Source, self).__init__(**kwargs) + self.addr = kwargs.get('addr', None) + self.instance_id = kwargs.get('instance_id', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_properties.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_properties.py new file mode 100644 index 000000000000..bc3e6cd13811 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_properties.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceProperties(Model): + """The properties of the source code repository. + + All required parameters must be populated in order to send to Azure. + + :param source_control_type: Required. The type of source control service. + Possible values include: 'Github', 'VisualStudioTeamService' + :type source_control_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceControlType + :param repository_url: Required. The full URL to the source code + respository + :type repository_url: str + :param branch: The branch name of the source code. + :type branch: str + :param source_control_auth_properties: The authorization properties for + accessing the source code repository and to set up + webhooks for notifications. + :type source_control_auth_properties: + ~azure.mgmt.containerregistry.v2018_09_01.models.AuthInfo + """ + + _validation = { + 'source_control_type': {'required': True}, + 'repository_url': {'required': True}, + } + + _attribute_map = { + 'source_control_type': {'key': 'sourceControlType', 'type': 'str'}, + 'repository_url': {'key': 'repositoryUrl', 'type': 'str'}, + 'branch': {'key': 'branch', 'type': 'str'}, + 'source_control_auth_properties': {'key': 'sourceControlAuthProperties', 'type': 'AuthInfo'}, + } + + def __init__(self, **kwargs): + super(SourceProperties, self).__init__(**kwargs) + self.source_control_type = kwargs.get('source_control_type', None) + self.repository_url = kwargs.get('repository_url', None) + self.branch = kwargs.get('branch', None) + self.source_control_auth_properties = kwargs.get('source_control_auth_properties', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_properties_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_properties_py3.py new file mode 100644 index 000000000000..b98beec8ab31 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_properties_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceProperties(Model): + """The properties of the source code repository. + + All required parameters must be populated in order to send to Azure. + + :param source_control_type: Required. The type of source control service. + Possible values include: 'Github', 'VisualStudioTeamService' + :type source_control_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceControlType + :param repository_url: Required. The full URL to the source code + respository + :type repository_url: str + :param branch: The branch name of the source code. + :type branch: str + :param source_control_auth_properties: The authorization properties for + accessing the source code repository and to set up + webhooks for notifications. + :type source_control_auth_properties: + ~azure.mgmt.containerregistry.v2018_09_01.models.AuthInfo + """ + + _validation = { + 'source_control_type': {'required': True}, + 'repository_url': {'required': True}, + } + + _attribute_map = { + 'source_control_type': {'key': 'sourceControlType', 'type': 'str'}, + 'repository_url': {'key': 'repositoryUrl', 'type': 'str'}, + 'branch': {'key': 'branch', 'type': 'str'}, + 'source_control_auth_properties': {'key': 'sourceControlAuthProperties', 'type': 'AuthInfo'}, + } + + def __init__(self, *, source_control_type, repository_url: str, branch: str=None, source_control_auth_properties=None, **kwargs) -> None: + super(SourceProperties, self).__init__(**kwargs) + self.source_control_type = source_control_type + self.repository_url = repository_url + self.branch = branch + self.source_control_auth_properties = source_control_auth_properties diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_py3.py new file mode 100644 index 000000000000..5aadcd407862 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Source(Model): + """The registry node that generated the event. Put differently, while the + actor initiates the event, the source generates it. + + :param addr: The IP or hostname and the port of the registry node that + generated the event. Generally, this will be resolved by os.Hostname() + along with the running port. + :type addr: str + :param instance_id: The running instance of an application. Changes after + each restart. + :type instance_id: str + """ + + _attribute_map = { + 'addr': {'key': 'addr', 'type': 'str'}, + 'instance_id': {'key': 'instanceID', 'type': 'str'}, + } + + def __init__(self, *, addr: str=None, instance_id: str=None, **kwargs) -> None: + super(Source, self).__init__(**kwargs) + self.addr = addr + self.instance_id = instance_id diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger.py new file mode 100644 index 000000000000..2af96a68a937 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceTrigger(Model): + """The properties of a source based trigger. + + All required parameters must be populated in order to send to Azure. + + :param source_repository: Required. The properties that describes the + source(code) for the task. + :type source_repository: + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceProperties + :param source_trigger_events: Required. The source event corresponding to + the trigger. + :type source_trigger_events: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceTriggerEvent] + :param status: The current status of trigger. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerStatus + :param name: Required. The name of the trigger. + :type name: str + """ + + _validation = { + 'source_repository': {'required': True}, + 'source_trigger_events': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'source_repository': {'key': 'sourceRepository', 'type': 'SourceProperties'}, + 'source_trigger_events': {'key': 'sourceTriggerEvents', 'type': '[str]'}, + 'status': {'key': 'status', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SourceTrigger, self).__init__(**kwargs) + self.source_repository = kwargs.get('source_repository', None) + self.source_trigger_events = kwargs.get('source_trigger_events', None) + self.status = kwargs.get('status', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_descriptor.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_descriptor.py new file mode 100644 index 000000000000..4ee9a9b20c64 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_descriptor.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceTriggerDescriptor(Model): + """The source trigger that caused a run. + + :param id: The unique ID of the trigger. + :type id: str + :param event_type: The event type of the trigger. + :type event_type: str + :param commit_id: The unique ID that identifies a commit. + :type commit_id: str + :param pull_request_id: The unique ID that identifies pull request. + :type pull_request_id: str + :param repository_url: The repository URL. + :type repository_url: str + :param branch_name: The branch name in the repository. + :type branch_name: str + :param provider_type: The source control provider type. + :type provider_type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'event_type': {'key': 'eventType', 'type': 'str'}, + 'commit_id': {'key': 'commitId', 'type': 'str'}, + 'pull_request_id': {'key': 'pullRequestId', 'type': 'str'}, + 'repository_url': {'key': 'repositoryUrl', 'type': 'str'}, + 'branch_name': {'key': 'branchName', 'type': 'str'}, + 'provider_type': {'key': 'providerType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SourceTriggerDescriptor, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.event_type = kwargs.get('event_type', None) + self.commit_id = kwargs.get('commit_id', None) + self.pull_request_id = kwargs.get('pull_request_id', None) + self.repository_url = kwargs.get('repository_url', None) + self.branch_name = kwargs.get('branch_name', None) + self.provider_type = kwargs.get('provider_type', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_descriptor_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_descriptor_py3.py new file mode 100644 index 000000000000..bb35eb70537d --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_descriptor_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceTriggerDescriptor(Model): + """The source trigger that caused a run. + + :param id: The unique ID of the trigger. + :type id: str + :param event_type: The event type of the trigger. + :type event_type: str + :param commit_id: The unique ID that identifies a commit. + :type commit_id: str + :param pull_request_id: The unique ID that identifies pull request. + :type pull_request_id: str + :param repository_url: The repository URL. + :type repository_url: str + :param branch_name: The branch name in the repository. + :type branch_name: str + :param provider_type: The source control provider type. + :type provider_type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'event_type': {'key': 'eventType', 'type': 'str'}, + 'commit_id': {'key': 'commitId', 'type': 'str'}, + 'pull_request_id': {'key': 'pullRequestId', 'type': 'str'}, + 'repository_url': {'key': 'repositoryUrl', 'type': 'str'}, + 'branch_name': {'key': 'branchName', 'type': 'str'}, + 'provider_type': {'key': 'providerType', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, event_type: str=None, commit_id: str=None, pull_request_id: str=None, repository_url: str=None, branch_name: str=None, provider_type: str=None, **kwargs) -> None: + super(SourceTriggerDescriptor, self).__init__(**kwargs) + self.id = id + self.event_type = event_type + self.commit_id = commit_id + self.pull_request_id = pull_request_id + self.repository_url = repository_url + self.branch_name = branch_name + self.provider_type = provider_type diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_py3.py new file mode 100644 index 000000000000..0452f6364f93 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceTrigger(Model): + """The properties of a source based trigger. + + All required parameters must be populated in order to send to Azure. + + :param source_repository: Required. The properties that describes the + source(code) for the task. + :type source_repository: + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceProperties + :param source_trigger_events: Required. The source event corresponding to + the trigger. + :type source_trigger_events: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceTriggerEvent] + :param status: The current status of trigger. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerStatus + :param name: Required. The name of the trigger. + :type name: str + """ + + _validation = { + 'source_repository': {'required': True}, + 'source_trigger_events': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'source_repository': {'key': 'sourceRepository', 'type': 'SourceProperties'}, + 'source_trigger_events': {'key': 'sourceTriggerEvents', 'type': '[str]'}, + 'status': {'key': 'status', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, source_repository, source_trigger_events, name: str, status=None, **kwargs) -> None: + super(SourceTrigger, self).__init__(**kwargs) + self.source_repository = source_repository + self.source_trigger_events = source_trigger_events + self.status = status + self.name = name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_update_parameters.py new file mode 100644 index 000000000000..d4738894a459 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_update_parameters.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceTriggerUpdateParameters(Model): + """The properties for updating a source based trigger. + + All required parameters must be populated in order to send to Azure. + + :param source_repository: The properties that describes the source(code) + for the task. + :type source_repository: + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceUpdateParameters + :param source_trigger_events: The source event corresponding to the + trigger. + :type source_trigger_events: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceTriggerEvent] + :param status: The current status of trigger. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerStatus + :param name: Required. The name of the trigger. + :type name: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'source_repository': {'key': 'sourceRepository', 'type': 'SourceUpdateParameters'}, + 'source_trigger_events': {'key': 'sourceTriggerEvents', 'type': '[str]'}, + 'status': {'key': 'status', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SourceTriggerUpdateParameters, self).__init__(**kwargs) + self.source_repository = kwargs.get('source_repository', None) + self.source_trigger_events = kwargs.get('source_trigger_events', None) + self.status = kwargs.get('status', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_update_parameters_py3.py new file mode 100644 index 000000000000..5eab5cb3f457 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_trigger_update_parameters_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceTriggerUpdateParameters(Model): + """The properties for updating a source based trigger. + + All required parameters must be populated in order to send to Azure. + + :param source_repository: The properties that describes the source(code) + for the task. + :type source_repository: + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceUpdateParameters + :param source_trigger_events: The source event corresponding to the + trigger. + :type source_trigger_events: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceTriggerEvent] + :param status: The current status of trigger. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerStatus + :param name: Required. The name of the trigger. + :type name: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'source_repository': {'key': 'sourceRepository', 'type': 'SourceUpdateParameters'}, + 'source_trigger_events': {'key': 'sourceTriggerEvents', 'type': '[str]'}, + 'status': {'key': 'status', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name: str, source_repository=None, source_trigger_events=None, status=None, **kwargs) -> None: + super(SourceTriggerUpdateParameters, self).__init__(**kwargs) + self.source_repository = source_repository + self.source_trigger_events = source_trigger_events + self.status = status + self.name = name diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_update_parameters.py new file mode 100644 index 000000000000..8233824065bf --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_update_parameters.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceUpdateParameters(Model): + """The properties for updating the source code repository. + + :param source_control_type: The type of source control service. Possible + values include: 'Github', 'VisualStudioTeamService' + :type source_control_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceControlType + :param repository_url: The full URL to the source code respository + :type repository_url: str + :param branch: The branch name of the source code. + :type branch: str + :param source_control_auth_properties: The authorization properties for + accessing the source code repository and to set up + webhooks for notifications. + :type source_control_auth_properties: + ~azure.mgmt.containerregistry.v2018_09_01.models.AuthInfoUpdateParameters + """ + + _attribute_map = { + 'source_control_type': {'key': 'sourceControlType', 'type': 'str'}, + 'repository_url': {'key': 'repositoryUrl', 'type': 'str'}, + 'branch': {'key': 'branch', 'type': 'str'}, + 'source_control_auth_properties': {'key': 'sourceControlAuthProperties', 'type': 'AuthInfoUpdateParameters'}, + } + + def __init__(self, **kwargs): + super(SourceUpdateParameters, self).__init__(**kwargs) + self.source_control_type = kwargs.get('source_control_type', None) + self.repository_url = kwargs.get('repository_url', None) + self.branch = kwargs.get('branch', None) + self.source_control_auth_properties = kwargs.get('source_control_auth_properties', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_update_parameters_py3.py new file mode 100644 index 000000000000..80002e5624ab --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_update_parameters_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceUpdateParameters(Model): + """The properties for updating the source code repository. + + :param source_control_type: The type of source control service. Possible + values include: 'Github', 'VisualStudioTeamService' + :type source_control_type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceControlType + :param repository_url: The full URL to the source code respository + :type repository_url: str + :param branch: The branch name of the source code. + :type branch: str + :param source_control_auth_properties: The authorization properties for + accessing the source code repository and to set up + webhooks for notifications. + :type source_control_auth_properties: + ~azure.mgmt.containerregistry.v2018_09_01.models.AuthInfoUpdateParameters + """ + + _attribute_map = { + 'source_control_type': {'key': 'sourceControlType', 'type': 'str'}, + 'repository_url': {'key': 'repositoryUrl', 'type': 'str'}, + 'branch': {'key': 'branch', 'type': 'str'}, + 'source_control_auth_properties': {'key': 'sourceControlAuthProperties', 'type': 'AuthInfoUpdateParameters'}, + } + + def __init__(self, *, source_control_type=None, repository_url: str=None, branch: str=None, source_control_auth_properties=None, **kwargs) -> None: + super(SourceUpdateParameters, self).__init__(**kwargs) + self.source_control_type = source_control_type + self.repository_url = repository_url + self.branch = branch + self.source_control_auth_properties = source_control_auth_properties diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_upload_definition.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_upload_definition.py new file mode 100644 index 000000000000..381fd538e9e3 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_upload_definition.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceUploadDefinition(Model): + """The properties of a response to source upload request. + + :param upload_url: The URL where the client can upload the source. + :type upload_url: str + :param relative_path: The relative path to the source. This is used to + submit the subsequent queue build request. + :type relative_path: str + """ + + _attribute_map = { + 'upload_url': {'key': 'uploadUrl', 'type': 'str'}, + 'relative_path': {'key': 'relativePath', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SourceUploadDefinition, self).__init__(**kwargs) + self.upload_url = kwargs.get('upload_url', None) + self.relative_path = kwargs.get('relative_path', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_upload_definition_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_upload_definition_py3.py new file mode 100644 index 000000000000..cff615964e11 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/source_upload_definition_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SourceUploadDefinition(Model): + """The properties of a response to source upload request. + + :param upload_url: The URL where the client can upload the source. + :type upload_url: str + :param relative_path: The relative path to the source. This is used to + submit the subsequent queue build request. + :type relative_path: str + """ + + _attribute_map = { + 'upload_url': {'key': 'uploadUrl', 'type': 'str'}, + 'relative_path': {'key': 'relativePath', 'type': 'str'}, + } + + def __init__(self, *, upload_url: str=None, relative_path: str=None, **kwargs) -> None: + super(SourceUploadDefinition, self).__init__(**kwargs) + self.upload_url = upload_url + self.relative_path = relative_path diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/status.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/status.py new file mode 100644 index 000000000000..76444c500634 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/status.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Status(Model): + """The status of an Azure resource at the time the operation was called. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar display_status: The short label for the status. + :vartype display_status: str + :ivar message: The detailed message for the status, including alerts and + error messages. + :vartype message: str + :ivar timestamp: The timestamp when the status was changed to the current + value. + :vartype timestamp: datetime + """ + + _validation = { + 'display_status': {'readonly': True}, + 'message': {'readonly': True}, + 'timestamp': {'readonly': True}, + } + + _attribute_map = { + 'display_status': {'key': 'displayStatus', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(Status, self).__init__(**kwargs) + self.display_status = None + self.message = None + self.timestamp = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/status_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/status_py3.py new file mode 100644 index 000000000000..1f4611c49912 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/status_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Status(Model): + """The status of an Azure resource at the time the operation was called. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar display_status: The short label for the status. + :vartype display_status: str + :ivar message: The detailed message for the status, including alerts and + error messages. + :vartype message: str + :ivar timestamp: The timestamp when the status was changed to the current + value. + :vartype timestamp: datetime + """ + + _validation = { + 'display_status': {'readonly': True}, + 'message': {'readonly': True}, + 'timestamp': {'readonly': True}, + } + + _attribute_map = { + 'display_status': {'key': 'displayStatus', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs) -> None: + super(Status, self).__init__(**kwargs) + self.display_status = None + self.message = None + self.timestamp = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/storage_account_properties.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/storage_account_properties.py new file mode 100644 index 000000000000..0541b7651cbd --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/storage_account_properties.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountProperties(Model): + """The properties of a storage account for a container registry. Only + applicable to Classic SKU. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The resource ID of the storage account. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(StorageAccountProperties, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/storage_account_properties_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/storage_account_properties_py3.py new file mode 100644 index 000000000000..5714fde0fcd2 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/storage_account_properties_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountProperties(Model): + """The properties of a storage account for a container registry. Only + applicable to Classic SKU. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The resource ID of the storage account. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str, **kwargs) -> None: + super(StorageAccountProperties, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/target.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/target.py new file mode 100644 index 000000000000..a9bb2a92970d --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/target.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Target(Model): + """The target of the event. + + :param media_type: The MIME type of the referenced object. + :type media_type: str + :param size: The number of bytes of the content. Same as Length field. + :type size: long + :param digest: The digest of the content, as defined by the Registry V2 + HTTP API Specification. + :type digest: str + :param length: The number of bytes of the content. Same as Size field. + :type length: long + :param repository: The repository name. + :type repository: str + :param url: The direct URL to the content. + :type url: str + :param tag: The tag name. + :type tag: str + """ + + _attribute_map = { + 'media_type': {'key': 'mediaType', 'type': 'str'}, + 'size': {'key': 'size', 'type': 'long'}, + 'digest': {'key': 'digest', 'type': 'str'}, + 'length': {'key': 'length', 'type': 'long'}, + 'repository': {'key': 'repository', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Target, self).__init__(**kwargs) + self.media_type = kwargs.get('media_type', None) + self.size = kwargs.get('size', None) + self.digest = kwargs.get('digest', None) + self.length = kwargs.get('length', None) + self.repository = kwargs.get('repository', None) + self.url = kwargs.get('url', None) + self.tag = kwargs.get('tag', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/target_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/target_py3.py new file mode 100644 index 000000000000..013f2d1bedeb --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/target_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Target(Model): + """The target of the event. + + :param media_type: The MIME type of the referenced object. + :type media_type: str + :param size: The number of bytes of the content. Same as Length field. + :type size: long + :param digest: The digest of the content, as defined by the Registry V2 + HTTP API Specification. + :type digest: str + :param length: The number of bytes of the content. Same as Size field. + :type length: long + :param repository: The repository name. + :type repository: str + :param url: The direct URL to the content. + :type url: str + :param tag: The tag name. + :type tag: str + """ + + _attribute_map = { + 'media_type': {'key': 'mediaType', 'type': 'str'}, + 'size': {'key': 'size', 'type': 'long'}, + 'digest': {'key': 'digest', 'type': 'str'}, + 'length': {'key': 'length', 'type': 'long'}, + 'repository': {'key': 'repository', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, *, media_type: str=None, size: int=None, digest: str=None, length: int=None, repository: str=None, url: str=None, tag: str=None, **kwargs) -> None: + super(Target, self).__init__(**kwargs) + self.media_type = media_type + self.size = size + self.digest = digest + self.length = length + self.repository = repository + self.url = url + self.tag = tag diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task.py new file mode 100644 index 000000000000..98b48005acb9 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task.py @@ -0,0 +1,100 @@ +# 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 .resource import Resource + + +class Task(Resource): + """The task that has the ARM resource and task properties. + The task will have all information to schedule a run against it. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the task. Possible + values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Failed', + 'Canceled' + :vartype provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + :ivar creation_date: The creation date of task. + :vartype creation_date: datetime + :param status: The current status of task. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskStatus + :param platform: Required. The platform properties against which the run + has to happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param timeout: Run timeout in seconds. Default value: 3600 . + :type timeout: int + :param step: Required. The properties of a task step. + :type step: + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskStepProperties + :param trigger: The properties that describe all triggers for the task. + :type trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'creation_date': {'readonly': True}, + 'platform': {'required': True}, + 'timeout': {'maximum': 28800, 'minimum': 300}, + 'step': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'creation_date': {'key': 'properties.creationDate', 'type': 'iso-8601'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'platform': {'key': 'properties.platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'properties.agentConfiguration', 'type': 'AgentProperties'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'step': {'key': 'properties.step', 'type': 'TaskStepProperties'}, + 'trigger': {'key': 'properties.trigger', 'type': 'TriggerProperties'}, + } + + def __init__(self, **kwargs): + super(Task, self).__init__(**kwargs) + self.provisioning_state = None + self.creation_date = None + self.status = kwargs.get('status', None) + self.platform = kwargs.get('platform', None) + self.agent_configuration = kwargs.get('agent_configuration', None) + self.timeout = kwargs.get('timeout', 3600) + self.step = kwargs.get('step', None) + self.trigger = kwargs.get('trigger', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_paged.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_paged.py new file mode 100644 index 000000000000..214728818293 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class TaskPaged(Paged): + """ + A paging container for iterating over a list of :class:`Task ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Task]'} + } + + def __init__(self, *args, **kwargs): + + super(TaskPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_py3.py new file mode 100644 index 000000000000..55d58aae9356 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_py3.py @@ -0,0 +1,100 @@ +# 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 .resource_py3 import Resource + + +class Task(Resource): + """The task that has the ARM resource and task properties. + The task will have all information to schedule a run against it. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the task. Possible + values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Failed', + 'Canceled' + :vartype provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + :ivar creation_date: The creation date of task. + :vartype creation_date: datetime + :param status: The current status of task. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskStatus + :param platform: Required. The platform properties against which the run + has to happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformProperties + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param timeout: Run timeout in seconds. Default value: 3600 . + :type timeout: int + :param step: Required. The properties of a task step. + :type step: + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskStepProperties + :param trigger: The properties that describe all triggers for the task. + :type trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'creation_date': {'readonly': True}, + 'platform': {'required': True}, + 'timeout': {'maximum': 28800, 'minimum': 300}, + 'step': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'creation_date': {'key': 'properties.creationDate', 'type': 'iso-8601'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'platform': {'key': 'properties.platform', 'type': 'PlatformProperties'}, + 'agent_configuration': {'key': 'properties.agentConfiguration', 'type': 'AgentProperties'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'step': {'key': 'properties.step', 'type': 'TaskStepProperties'}, + 'trigger': {'key': 'properties.trigger', 'type': 'TriggerProperties'}, + } + + def __init__(self, *, location: str, platform, step, tags=None, status=None, agent_configuration=None, timeout: int=3600, trigger=None, **kwargs) -> None: + super(Task, self).__init__(location=location, tags=tags, **kwargs) + self.provisioning_state = None + self.creation_date = None + self.status = status + self.platform = platform + self.agent_configuration = agent_configuration + self.timeout = timeout + self.step = step + self.trigger = trigger diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_run_request.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_run_request.py new file mode 100644 index 000000000000..2f2ed7a707c8 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_run_request.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .run_request import RunRequest + + +class TaskRunRequest(RunRequest): + """The parameters for a task run request. + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + :param task_name: Required. The name of task against which run has to be + queued. + :type task_name: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'type': {'required': True}, + 'task_name': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'task_name': {'key': 'taskName', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, **kwargs): + super(TaskRunRequest, self).__init__(**kwargs) + self.task_name = kwargs.get('task_name', None) + self.values = kwargs.get('values', None) + self.type = 'TaskRunRequest' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_run_request_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_run_request_py3.py new file mode 100644 index 000000000000..140af55d8132 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_run_request_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .run_request_py3 import RunRequest + + +class TaskRunRequest(RunRequest): + """The parameters for a task run request. + + All required parameters must be populated in order to send to Azure. + + :param is_archive_enabled: The value that indicates whether archiving is + enabled for the run or not. Default value: False . + :type is_archive_enabled: bool + :param type: Required. Constant filled by server. + :type type: str + :param task_name: Required. The name of task against which run has to be + queued. + :type task_name: str + :param values: The collection of overridable values that can be passed + when running a task. + :type values: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SetValue] + """ + + _validation = { + 'type': {'required': True}, + 'task_name': {'required': True}, + } + + _attribute_map = { + 'is_archive_enabled': {'key': 'isArchiveEnabled', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'task_name': {'key': 'taskName', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[SetValue]'}, + } + + def __init__(self, *, task_name: str, is_archive_enabled: bool=False, values=None, **kwargs) -> None: + super(TaskRunRequest, self).__init__(is_archive_enabled=is_archive_enabled, **kwargs) + self.task_name = task_name + self.values = values + self.type = 'TaskRunRequest' diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_properties.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_properties.py new file mode 100644 index 000000000000..20a52b24e8f3 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_properties.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskStepProperties(Model): + """Base properties for any task step. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: DockerBuildStep, FileTaskStep, EncodedTaskStep + + 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 base_image_dependencies: List of base image dependencies for a step. + :vartype base_image_dependencies: + list[~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependency] + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + """ + + _validation = { + 'base_image_dependencies': {'readonly': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'base_image_dependencies': {'key': 'baseImageDependencies', 'type': '[BaseImageDependency]'}, + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + _subtype_map = { + 'type': {'Docker': 'DockerBuildStep', 'FileTask': 'FileTaskStep', 'EncodedTask': 'EncodedTaskStep'} + } + + def __init__(self, **kwargs): + super(TaskStepProperties, self).__init__(**kwargs) + self.base_image_dependencies = None + self.context_path = kwargs.get('context_path', None) + self.context_access_token = kwargs.get('context_access_token', None) + self.type = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_properties_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_properties_py3.py new file mode 100644 index 000000000000..cd74064f5679 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_properties_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskStepProperties(Model): + """Base properties for any task step. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: DockerBuildStep, FileTaskStep, EncodedTaskStep + + 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 base_image_dependencies: List of base image dependencies for a step. + :vartype base_image_dependencies: + list[~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageDependency] + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + """ + + _validation = { + 'base_image_dependencies': {'readonly': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'base_image_dependencies': {'key': 'baseImageDependencies', 'type': '[BaseImageDependency]'}, + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + _subtype_map = { + 'type': {'Docker': 'DockerBuildStep', 'FileTask': 'FileTaskStep', 'EncodedTask': 'EncodedTaskStep'} + } + + def __init__(self, *, context_path: str=None, context_access_token: str=None, **kwargs) -> None: + super(TaskStepProperties, self).__init__(**kwargs) + self.base_image_dependencies = None + self.context_path = context_path + self.context_access_token = context_access_token + self.type = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_update_parameters.py new file mode 100644 index 000000000000..a9047fd426b9 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_update_parameters.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskStepUpdateParameters(Model): + """Base properties for updating any task step. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: DockerBuildStepUpdateParameters, + FileTaskStepUpdateParameters, EncodedTaskStepUpdateParameters + + All required parameters must be populated in order to send to Azure. + + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + _subtype_map = { + 'type': {'Docker': 'DockerBuildStepUpdateParameters', 'FileTask': 'FileTaskStepUpdateParameters', 'EncodedTask': 'EncodedTaskStepUpdateParameters'} + } + + def __init__(self, **kwargs): + super(TaskStepUpdateParameters, self).__init__(**kwargs) + self.context_path = kwargs.get('context_path', None) + self.context_access_token = kwargs.get('context_access_token', None) + self.type = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_update_parameters_py3.py new file mode 100644 index 000000000000..70f77214e15b --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_step_update_parameters_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskStepUpdateParameters(Model): + """Base properties for updating any task step. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: DockerBuildStepUpdateParameters, + FileTaskStepUpdateParameters, EncodedTaskStepUpdateParameters + + All required parameters must be populated in order to send to Azure. + + :param context_path: The URL(absolute or relative) of the source context + for the task step. + :type context_path: str + :param context_access_token: The token (git PAT or SAS token of storage + account blob) associated with the context for a step. + :type context_access_token: str + :param type: Required. Constant filled by server. + :type type: str + """ + + _validation = { + 'type': {'required': True}, + } + + _attribute_map = { + 'context_path': {'key': 'contextPath', 'type': 'str'}, + 'context_access_token': {'key': 'contextAccessToken', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + _subtype_map = { + 'type': {'Docker': 'DockerBuildStepUpdateParameters', 'FileTask': 'FileTaskStepUpdateParameters', 'EncodedTask': 'EncodedTaskStepUpdateParameters'} + } + + def __init__(self, *, context_path: str=None, context_access_token: str=None, **kwargs) -> None: + super(TaskStepUpdateParameters, self).__init__(**kwargs) + self.context_path = context_path + self.context_access_token = context_access_token + self.type = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_update_parameters.py new file mode 100644 index 000000000000..d9bdc15a390f --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_update_parameters.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskUpdateParameters(Model): + """The parameters for updating a task. + + :param status: The current status of task. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskStatus + :param platform: The platform properties against which the run has to + happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformUpdateParameters + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param timeout: Run timeout in seconds. + :type timeout: int + :param step: The properties for updating a task step. + :type step: + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskStepUpdateParameters + :param trigger: The properties for updating trigger properties. + :type trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerUpdateParameters + :param tags: The ARM resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'status': {'key': 'properties.status', 'type': 'str'}, + 'platform': {'key': 'properties.platform', 'type': 'PlatformUpdateParameters'}, + 'agent_configuration': {'key': 'properties.agentConfiguration', 'type': 'AgentProperties'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'step': {'key': 'properties.step', 'type': 'TaskStepUpdateParameters'}, + 'trigger': {'key': 'properties.trigger', 'type': 'TriggerUpdateParameters'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(TaskUpdateParameters, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.platform = kwargs.get('platform', None) + self.agent_configuration = kwargs.get('agent_configuration', None) + self.timeout = kwargs.get('timeout', None) + self.step = kwargs.get('step', None) + self.trigger = kwargs.get('trigger', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_update_parameters_py3.py new file mode 100644 index 000000000000..4a257e6247d4 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/task_update_parameters_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TaskUpdateParameters(Model): + """The parameters for updating a task. + + :param status: The current status of task. Possible values include: + 'Disabled', 'Enabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskStatus + :param platform: The platform properties against which the run has to + happen. + :type platform: + ~azure.mgmt.containerregistry.v2018_09_01.models.PlatformUpdateParameters + :param agent_configuration: The machine configuration of the run agent. + :type agent_configuration: + ~azure.mgmt.containerregistry.v2018_09_01.models.AgentProperties + :param timeout: Run timeout in seconds. + :type timeout: int + :param step: The properties for updating a task step. + :type step: + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskStepUpdateParameters + :param trigger: The properties for updating trigger properties. + :type trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.TriggerUpdateParameters + :param tags: The ARM resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'status': {'key': 'properties.status', 'type': 'str'}, + 'platform': {'key': 'properties.platform', 'type': 'PlatformUpdateParameters'}, + 'agent_configuration': {'key': 'properties.agentConfiguration', 'type': 'AgentProperties'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'step': {'key': 'properties.step', 'type': 'TaskStepUpdateParameters'}, + 'trigger': {'key': 'properties.trigger', 'type': 'TriggerUpdateParameters'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, status=None, platform=None, agent_configuration=None, timeout: int=None, step=None, trigger=None, tags=None, **kwargs) -> None: + super(TaskUpdateParameters, self).__init__(**kwargs) + self.status = status + self.platform = platform + self.agent_configuration = agent_configuration + self.timeout = timeout + self.step = step + self.trigger = trigger + self.tags = tags diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_properties.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_properties.py new file mode 100644 index 000000000000..9c683c3f0977 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_properties.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TriggerProperties(Model): + """The properties of a trigger. + + :param source_triggers: The collection of triggers based on source code + repository. + :type source_triggers: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SourceTrigger] + :param base_image_trigger: The trigger based on base image dependencies. + :type base_image_trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageTrigger + """ + + _attribute_map = { + 'source_triggers': {'key': 'sourceTriggers', 'type': '[SourceTrigger]'}, + 'base_image_trigger': {'key': 'baseImageTrigger', 'type': 'BaseImageTrigger'}, + } + + def __init__(self, **kwargs): + super(TriggerProperties, self).__init__(**kwargs) + self.source_triggers = kwargs.get('source_triggers', None) + self.base_image_trigger = kwargs.get('base_image_trigger', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_properties_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_properties_py3.py new file mode 100644 index 000000000000..80707da8fe49 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_properties_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TriggerProperties(Model): + """The properties of a trigger. + + :param source_triggers: The collection of triggers based on source code + repository. + :type source_triggers: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SourceTrigger] + :param base_image_trigger: The trigger based on base image dependencies. + :type base_image_trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageTrigger + """ + + _attribute_map = { + 'source_triggers': {'key': 'sourceTriggers', 'type': '[SourceTrigger]'}, + 'base_image_trigger': {'key': 'baseImageTrigger', 'type': 'BaseImageTrigger'}, + } + + def __init__(self, *, source_triggers=None, base_image_trigger=None, **kwargs) -> None: + super(TriggerProperties, self).__init__(**kwargs) + self.source_triggers = source_triggers + self.base_image_trigger = base_image_trigger diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_update_parameters.py new file mode 100644 index 000000000000..1a1f5907c52c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_update_parameters.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TriggerUpdateParameters(Model): + """The properties for updating triggers. + + :param source_triggers: The collection of triggers based on source code + repository. + :type source_triggers: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SourceTriggerUpdateParameters] + :param base_image_trigger: The trigger based on base image dependencies. + :type base_image_trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageTriggerUpdateParameters + """ + + _attribute_map = { + 'source_triggers': {'key': 'sourceTriggers', 'type': '[SourceTriggerUpdateParameters]'}, + 'base_image_trigger': {'key': 'baseImageTrigger', 'type': 'BaseImageTriggerUpdateParameters'}, + } + + def __init__(self, **kwargs): + super(TriggerUpdateParameters, self).__init__(**kwargs) + self.source_triggers = kwargs.get('source_triggers', None) + self.base_image_trigger = kwargs.get('base_image_trigger', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_update_parameters_py3.py new file mode 100644 index 000000000000..12c619cf2e11 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trigger_update_parameters_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TriggerUpdateParameters(Model): + """The properties for updating triggers. + + :param source_triggers: The collection of triggers based on source code + repository. + :type source_triggers: + list[~azure.mgmt.containerregistry.v2018_09_01.models.SourceTriggerUpdateParameters] + :param base_image_trigger: The trigger based on base image dependencies. + :type base_image_trigger: + ~azure.mgmt.containerregistry.v2018_09_01.models.BaseImageTriggerUpdateParameters + """ + + _attribute_map = { + 'source_triggers': {'key': 'sourceTriggers', 'type': '[SourceTriggerUpdateParameters]'}, + 'base_image_trigger': {'key': 'baseImageTrigger', 'type': 'BaseImageTriggerUpdateParameters'}, + } + + def __init__(self, *, source_triggers=None, base_image_trigger=None, **kwargs) -> None: + super(TriggerUpdateParameters, self).__init__(**kwargs) + self.source_triggers = source_triggers + self.base_image_trigger = base_image_trigger diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trust_policy.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trust_policy.py new file mode 100644 index 000000000000..ca75381e22c0 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trust_policy.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrustPolicy(Model): + """An object that represents content trust policy for a container registry. + + :param type: The type of trust policy. Possible values include: 'Notary' + :type type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TrustPolicyType + :param status: The value that indicates whether the policy is enabled or + not. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PolicyStatus + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TrustPolicy, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.status = kwargs.get('status', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trust_policy_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trust_policy_py3.py new file mode 100644 index 000000000000..ca89be5aaee9 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/trust_policy_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrustPolicy(Model): + """An object that represents content trust policy for a container registry. + + :param type: The type of trust policy. Possible values include: 'Notary' + :type type: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.TrustPolicyType + :param status: The value that indicates whether the policy is enabled or + not. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PolicyStatus + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + } + + def __init__(self, *, type=None, status=None, **kwargs) -> None: + super(TrustPolicy, self).__init__(**kwargs) + self.type = type + self.status = status diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook.py new file mode 100644 index 000000000000..a0a165cf9022 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook.py @@ -0,0 +1,80 @@ +# 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 .resource import Resource + + +class Webhook(Resource): + """An object that represents a webhook for a container registry. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :param status: The status of the webhook at the time the operation was + called. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookStatus + :param scope: The scope of repositories where the event can be triggered. + For example, 'foo:*' means events for all tags under repository 'foo'. + 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to + 'foo:latest'. Empty means all events. + :type scope: str + :param actions: Required. The list of actions that trigger the webhook to + post notifications. + :type actions: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookAction] + :ivar provisioning_state: The provisioning state of the webhook at the + time the operation was called. Possible values include: 'Creating', + 'Updating', 'Deleting', 'Succeeded', 'Failed', 'Canceled' + :vartype provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'actions': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Webhook, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.scope = kwargs.get('scope', None) + self.actions = kwargs.get('actions', None) + self.provisioning_state = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_create_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_create_parameters.py new file mode 100644 index 000000000000..25b7658722da --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_create_parameters.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WebhookCreateParameters(Model): + """The parameters for creating a webhook. + + All required parameters must be populated in order to send to Azure. + + :param tags: The tags for the webhook. + :type tags: dict[str, str] + :param location: Required. The location of the webhook. This cannot be + changed after the resource is created. + :type location: str + :param service_uri: Required. The service URI for the webhook to post + notifications. + :type service_uri: str + :param custom_headers: Custom headers that will be added to the webhook + notifications. + :type custom_headers: dict[str, str] + :param status: The status of the webhook at the time the operation was + called. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookStatus + :param scope: The scope of repositories where the event can be triggered. + For example, 'foo:*' means events for all tags under repository 'foo'. + 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to + 'foo:latest'. Empty means all events. + :type scope: str + :param actions: Required. The list of actions that trigger the webhook to + post notifications. + :type actions: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookAction] + """ + + _validation = { + 'location': {'required': True}, + 'service_uri': {'required': True}, + 'actions': {'required': True}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + 'service_uri': {'key': 'properties.serviceUri', 'type': 'str'}, + 'custom_headers': {'key': 'properties.customHeaders', 'type': '{str}'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(WebhookCreateParameters, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + self.location = kwargs.get('location', None) + self.service_uri = kwargs.get('service_uri', None) + self.custom_headers = kwargs.get('custom_headers', None) + self.status = kwargs.get('status', None) + self.scope = kwargs.get('scope', None) + self.actions = kwargs.get('actions', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_create_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_create_parameters_py3.py new file mode 100644 index 000000000000..454ab766bd0a --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_create_parameters_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WebhookCreateParameters(Model): + """The parameters for creating a webhook. + + All required parameters must be populated in order to send to Azure. + + :param tags: The tags for the webhook. + :type tags: dict[str, str] + :param location: Required. The location of the webhook. This cannot be + changed after the resource is created. + :type location: str + :param service_uri: Required. The service URI for the webhook to post + notifications. + :type service_uri: str + :param custom_headers: Custom headers that will be added to the webhook + notifications. + :type custom_headers: dict[str, str] + :param status: The status of the webhook at the time the operation was + called. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookStatus + :param scope: The scope of repositories where the event can be triggered. + For example, 'foo:*' means events for all tags under repository 'foo'. + 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to + 'foo:latest'. Empty means all events. + :type scope: str + :param actions: Required. The list of actions that trigger the webhook to + post notifications. + :type actions: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookAction] + """ + + _validation = { + 'location': {'required': True}, + 'service_uri': {'required': True}, + 'actions': {'required': True}, + } + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + 'service_uri': {'key': 'properties.serviceUri', 'type': 'str'}, + 'custom_headers': {'key': 'properties.customHeaders', 'type': '{str}'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + } + + def __init__(self, *, location: str, service_uri: str, actions, tags=None, custom_headers=None, status=None, scope: str=None, **kwargs) -> None: + super(WebhookCreateParameters, self).__init__(**kwargs) + self.tags = tags + self.location = location + self.service_uri = service_uri + self.custom_headers = custom_headers + self.status = status + self.scope = scope + self.actions = actions diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_paged.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_paged.py new file mode 100644 index 000000000000..e12a3393eed7 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class WebhookPaged(Paged): + """ + A paging container for iterating over a list of :class:`Webhook ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Webhook]'} + } + + def __init__(self, *args, **kwargs): + + super(WebhookPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_py3.py new file mode 100644 index 000000000000..47cddd02a515 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_py3.py @@ -0,0 +1,80 @@ +# 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 .resource_py3 import Resource + + +class Webhook(Resource): + """An object that represents a webhook for a container registry. + + 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: The resource ID. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: Required. The location of the resource. This cannot be + changed after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :param status: The status of the webhook at the time the operation was + called. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookStatus + :param scope: The scope of repositories where the event can be triggered. + For example, 'foo:*' means events for all tags under repository 'foo'. + 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to + 'foo:latest'. Empty means all events. + :type scope: str + :param actions: Required. The list of actions that trigger the webhook to + post notifications. + :type actions: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookAction] + :ivar provisioning_state: The provisioning state of the webhook at the + time the operation was called. Possible values include: 'Creating', + 'Updating', 'Deleting', 'Succeeded', 'Failed', 'Canceled' + :vartype provisioning_state: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'actions': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, location: str, actions, tags=None, status=None, scope: str=None, **kwargs) -> None: + super(Webhook, self).__init__(location=location, tags=tags, **kwargs) + self.status = status + self.scope = scope + self.actions = actions + self.provisioning_state = None diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_update_parameters.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_update_parameters.py new file mode 100644 index 000000000000..2e258352f7f4 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_update_parameters.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WebhookUpdateParameters(Model): + """The parameters for updating a webhook. + + :param tags: The tags for the webhook. + :type tags: dict[str, str] + :param service_uri: The service URI for the webhook to post notifications. + :type service_uri: str + :param custom_headers: Custom headers that will be added to the webhook + notifications. + :type custom_headers: dict[str, str] + :param status: The status of the webhook at the time the operation was + called. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookStatus + :param scope: The scope of repositories where the event can be triggered. + For example, 'foo:*' means events for all tags under repository 'foo'. + 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to + 'foo:latest'. Empty means all events. + :type scope: str + :param actions: The list of actions that trigger the webhook to post + notifications. + :type actions: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookAction] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_uri': {'key': 'properties.serviceUri', 'type': 'str'}, + 'custom_headers': {'key': 'properties.customHeaders', 'type': '{str}'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(WebhookUpdateParameters, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + self.service_uri = kwargs.get('service_uri', None) + self.custom_headers = kwargs.get('custom_headers', None) + self.status = kwargs.get('status', None) + self.scope = kwargs.get('scope', None) + self.actions = kwargs.get('actions', None) diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_update_parameters_py3.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_update_parameters_py3.py new file mode 100644 index 000000000000..3cfdfea03e96 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/models/webhook_update_parameters_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class WebhookUpdateParameters(Model): + """The parameters for updating a webhook. + + :param tags: The tags for the webhook. + :type tags: dict[str, str] + :param service_uri: The service URI for the webhook to post notifications. + :type service_uri: str + :param custom_headers: Custom headers that will be added to the webhook + notifications. + :type custom_headers: dict[str, str] + :param status: The status of the webhook at the time the operation was + called. Possible values include: 'enabled', 'disabled' + :type status: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookStatus + :param scope: The scope of repositories where the event can be triggered. + For example, 'foo:*' means events for all tags under repository 'foo'. + 'foo:bar' means events for 'foo:bar' only. 'foo' is equivalent to + 'foo:latest'. Empty means all events. + :type scope: str + :param actions: The list of actions that trigger the webhook to post + notifications. + :type actions: list[str or + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookAction] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_uri': {'key': 'properties.serviceUri', 'type': 'str'}, + 'custom_headers': {'key': 'properties.customHeaders', 'type': '{str}'}, + 'status': {'key': 'properties.status', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + } + + def __init__(self, *, tags=None, service_uri: str=None, custom_headers=None, status=None, scope: str=None, actions=None, **kwargs) -> None: + super(WebhookUpdateParameters, self).__init__(**kwargs) + self.tags = tags + self.service_uri = service_uri + self.custom_headers = custom_headers + self.status = status + self.scope = scope + self.actions = actions diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/__init__.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/__init__.py new file mode 100644 index 000000000000..d9dadb00c503 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/__init__.py @@ -0,0 +1,26 @@ +# 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 .registries_operations import RegistriesOperations +from .operations import Operations +from .replications_operations import ReplicationsOperations +from .webhooks_operations import WebhooksOperations +from .runs_operations import RunsOperations +from .tasks_operations import TasksOperations + +__all__ = [ + 'RegistriesOperations', + 'Operations', + 'ReplicationsOperations', + 'WebhooksOperations', + 'RunsOperations', + 'TasksOperations', +] diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/operations.py new file mode 100644 index 000000000000..394354d46b90 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/operations.py @@ -0,0 +1,99 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The client API version. Constant value: "2017-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-10-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available Azure Container Registry REST API + operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of OperationDefinition + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.OperationDefinitionPaged[~azure.mgmt.containerregistry.v2018_09_01.models.OperationDefinition] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationDefinitionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationDefinitionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.ContainerRegistry/operations'} diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/registries_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/registries_operations.py new file mode 100644 index 000000000000..3464d2ce5608 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/registries_operations.py @@ -0,0 +1,1256 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RegistriesOperations(object): + """RegistriesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + + def _import_image_initial( + self, resource_group_name, registry_name, parameters, custom_headers=None, raw=False, **operation_config): + api_version = "2017-10-01" + + # Construct URL + url = self.import_image.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ImportImageParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def import_image( + self, resource_group_name, registry_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Copies an image to this container registry from the specified container + registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param parameters: The parameters specifying the image to copy and the + source container registry. + :type parameters: + ~azure.mgmt.containerregistry.v2018_09_01.models.ImportImageParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._import_image_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + import_image.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importImage'} + + def check_name_availability( + self, name, custom_headers=None, raw=False, **operation_config): + """Checks whether the container registry name is available for use. The + name must contain only alphanumeric characters, be globally unique, and + between 5 and 50 characters in length. + + :param name: The name of the container registry. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RegistryNameStatus or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryNameStatus or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + registry_name_check_request = models.RegistryNameCheckRequest(name=name) + + api_version = "2017-10-01" + + # Construct URL + url = self.check_name_availability.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(registry_name_check_request, 'RegistryNameCheckRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RegistryNameStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/checkNameAvailability'} + + def get( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + """Gets the properties of the specified container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Registry or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerregistry.v2018_09_01.models.Registry or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-10-01" + + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Registry', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}'} + + + def _create_initial( + self, resource_group_name, registry_name, registry, custom_headers=None, raw=False, **operation_config): + api_version = "2017-10-01" + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(registry, 'Registry') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Registry', response) + if response.status_code == 201: + deserialized = self._deserialize('Registry', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, registry_name, registry, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a container registry with the specified parameters. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param registry: The parameters for creating a container registry. + :type registry: + ~azure.mgmt.containerregistry.v2018_09_01.models.Registry + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Registry or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Registry] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Registry]] + :raises: :class:`CloudError` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + registry=registry, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Registry', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}'} + + + def _delete_initial( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + api_version = "2017-10-01" + + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, registry_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}'} + + + def _update_initial( + self, resource_group_name, registry_name, registry_update_parameters, custom_headers=None, raw=False, **operation_config): + api_version = "2017-10-01" + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(registry_update_parameters, 'RegistryUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Registry', response) + if response.status_code == 201: + deserialized = self._deserialize('Registry', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, registry_name, registry_update_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a container registry with the specified parameters. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param registry_update_parameters: The parameters for updating a + container registry. + :type registry_update_parameters: + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryUpdateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Registry or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Registry] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Registry]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + registry_update_parameters=registry_update_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Registry', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the container registries under the specified resource group. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Registry + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryPaged[~azure.mgmt.containerregistry.v2018_09_01.models.Registry] + :raises: :class:`CloudError` + """ + api_version = "2017-10-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RegistryPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RegistryPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the container registries under the specified subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Registry + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryPaged[~azure.mgmt.containerregistry.v2018_09_01.models.Registry] + :raises: :class:`CloudError` + """ + api_version = "2017-10-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RegistryPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RegistryPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/registries'} + + def list_credentials( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + """Lists the login credentials for the specified container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RegistryListCredentialsResult or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryListCredentialsResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-10-01" + + # Construct URL + url = self.list_credentials.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RegistryListCredentialsResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_credentials.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listCredentials'} + + def regenerate_credential( + self, resource_group_name, registry_name, name, custom_headers=None, raw=False, **operation_config): + """Regenerates one of the login credentials for the specified container + registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param name: Specifies name of the password which should be + regenerated -- password or password2. Possible values include: + 'password', 'password2' + :type name: str or + ~azure.mgmt.containerregistry.v2018_09_01.models.PasswordName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RegistryListCredentialsResult or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryListCredentialsResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + regenerate_credential_parameters = models.RegenerateCredentialParameters(name=name) + + api_version = "2017-10-01" + + # Construct URL + url = self.regenerate_credential.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(regenerate_credential_parameters, 'RegenerateCredentialParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RegistryListCredentialsResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + regenerate_credential.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredential'} + + def list_usages( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + """Gets the quota usages for the specified container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RegistryUsageListResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryUsageListResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-10-01" + + # Construct URL + url = self.list_usages.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RegistryUsageListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_usages.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listUsages'} + + def list_policies( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + """Lists the policies for the specified container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RegistryPolicies or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RegistryPolicies or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-10-01" + + # Construct URL + url = self.list_policies.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RegistryPolicies', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_policies.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listPolicies'} + + + def _update_policies_initial( + self, resource_group_name, registry_name, quarantine_policy=None, trust_policy=None, custom_headers=None, raw=False, **operation_config): + registry_policies_update_parameters = models.RegistryPolicies(quarantine_policy=quarantine_policy, trust_policy=trust_policy) + + api_version = "2017-10-01" + + # Construct URL + url = self.update_policies.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(registry_policies_update_parameters, 'RegistryPolicies') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RegistryPolicies', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_policies( + self, resource_group_name, registry_name, quarantine_policy=None, trust_policy=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates the policies for the specified container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param quarantine_policy: An object that represents quarantine policy + for a container registry. + :type quarantine_policy: + ~azure.mgmt.containerregistry.v2018_09_01.models.QuarantinePolicy + :param trust_policy: An object that represents content trust policy + for a container registry. + :type trust_policy: + ~azure.mgmt.containerregistry.v2018_09_01.models.TrustPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RegistryPolicies or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.RegistryPolicies] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.RegistryPolicies]] + :raises: :class:`CloudError` + """ + raw_result = self._update_policies_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + quarantine_policy=quarantine_policy, + trust_policy=trust_policy, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RegistryPolicies', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_policies.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/updatePolicies'} + + + def _schedule_run_initial( + self, resource_group_name, registry_name, run_request, custom_headers=None, raw=False, **operation_config): + api_version = "2018-09-01" + + # Construct URL + url = self.schedule_run.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(run_request, 'RunRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Run', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def schedule_run( + self, resource_group_name, registry_name, run_request, custom_headers=None, raw=False, polling=True, **operation_config): + """Schedules a new run based on the request parameters and add it to the + run queue. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param run_request: The parameters of a run that needs to scheduled. + :type run_request: + ~azure.mgmt.containerregistry.v2018_09_01.models.RunRequest + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Run or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Run] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Run]] + :raises: :class:`CloudError` + """ + raw_result = self._schedule_run_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + run_request=run_request, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Run', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + schedule_run.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/scheduleRun'} + + def get_build_source_upload_url( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + """Get the upload location for the user to be able to upload the source. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SourceUploadDefinition or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.SourceUploadDefinition + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-09-01" + + # Construct URL + url = self.get_build_source_upload_url.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SourceUploadDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_build_source_upload_url.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/listBuildSourceUploadUrl'} diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/replications_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/replications_operations.py new file mode 100644 index 000000000000..2e77093a9b34 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/replications_operations.py @@ -0,0 +1,485 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ReplicationsOperations(object): + """ReplicationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The client API version. Constant value: "2017-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-10-01" + + self.config = config + + def get( + self, resource_group_name, registry_name, replication_name, custom_headers=None, raw=False, **operation_config): + """Gets the properties of the specified replication. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param replication_name: The name of the replication. + :type replication_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Replication or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerregistry.v2018_09_01.models.Replication + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'replicationName': self._serialize.url("replication_name", replication_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Replication', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}'} + + + def _create_initial( + self, resource_group_name, registry_name, replication_name, location, tags=None, custom_headers=None, raw=False, **operation_config): + replication = models.Replication(location=location, tags=tags) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'replicationName': self._serialize.url("replication_name", replication_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(replication, 'Replication') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Replication', response) + if response.status_code == 201: + deserialized = self._deserialize('Replication', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, registry_name, replication_name, location, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a replication for a container registry with the specified + parameters. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param replication_name: The name of the replication. + :type replication_name: str + :param location: The location of the resource. This cannot be changed + after the resource is created. + :type location: str + :param tags: The tags of the resource. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Replication or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Replication] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Replication]] + :raises: :class:`CloudError` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + replication_name=replication_name, + location=location, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Replication', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}'} + + + def _delete_initial( + self, resource_group_name, registry_name, replication_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'replicationName': self._serialize.url("replication_name", replication_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, registry_name, replication_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a replication from a container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param replication_name: The name of the replication. + :type replication_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + replication_name=replication_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}'} + + + def _update_initial( + self, resource_group_name, registry_name, replication_name, tags=None, custom_headers=None, raw=False, **operation_config): + replication_update_parameters = models.ReplicationUpdateParameters(tags=tags) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'replicationName': self._serialize.url("replication_name", replication_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(replication_update_parameters, 'ReplicationUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Replication', response) + if response.status_code == 201: + deserialized = self._deserialize('Replication', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, registry_name, replication_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a replication for a container registry with the specified + parameters. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param replication_name: The name of the replication. + :type replication_name: str + :param tags: The tags for the replication. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Replication or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Replication] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Replication]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + replication_name=replication_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Replication', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}'} + + def list( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + """Lists all the replications for the specified container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Replication + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.ReplicationPaged[~azure.mgmt.containerregistry.v2018_09_01.models.Replication] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ReplicationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ReplicationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications'} diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/runs_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/runs_operations.py new file mode 100644 index 000000000000..2f0cecc6159c --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/runs_operations.py @@ -0,0 +1,450 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RunsOperations(object): + """RunsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The client API version. Constant value: "2018-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-09-01" + + self.config = config + + def list( + self, resource_group_name, registry_name, filter=None, top=None, custom_headers=None, raw=False, **operation_config): + """Gets all the runs for a registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param filter: The runs filter to apply on the operation. Arithmetic + operators are not supported. The allowed string function is + 'contains'. All logical operators except 'Not', 'Has', 'All' are + allowed. + :type filter: str + :param top: $top is supported for get list of runs, which limits the + maximum number of runs to return. + :type top: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Run + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RunPaged[~azure.mgmt.containerregistry.v2018_09_01.models.Run] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RunPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RunPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/runs'} + + def get( + self, resource_group_name, registry_name, run_id, custom_headers=None, raw=False, **operation_config): + """Gets the detailed information for a given run. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param run_id: The run ID. + :type run_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Run or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerregistry.v2018_09_01.models.Run or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'runId': self._serialize.url("run_id", run_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Run', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/runs/{runId}'} + + + def _update_initial( + self, resource_group_name, registry_name, run_id, is_archive_enabled=None, custom_headers=None, raw=False, **operation_config): + run_update_parameters = models.RunUpdateParameters(is_archive_enabled=is_archive_enabled) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'runId': self._serialize.url("run_id", run_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(run_update_parameters, 'RunUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Run', response) + if response.status_code == 201: + deserialized = self._deserialize('Run', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, registry_name, run_id, is_archive_enabled=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Patch the run properties. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param run_id: The run ID. + :type run_id: str + :param is_archive_enabled: The value that indicates whether archiving + is enabled or not. + :type is_archive_enabled: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Run or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Run] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Run]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + run_id=run_id, + is_archive_enabled=is_archive_enabled, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Run', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/runs/{runId}'} + + def get_log_sas_url( + self, resource_group_name, registry_name, run_id, custom_headers=None, raw=False, **operation_config): + """Gets a link to download the run logs. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param run_id: The run ID. + :type run_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RunGetLogResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.RunGetLogResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_log_sas_url.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'runId': self._serialize.url("run_id", run_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RunGetLogResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_log_sas_url.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/runs/{runId}/listLogSasUrl'} + + + def _cancel_initial( + self, resource_group_name, registry_name, run_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.cancel.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'runId': self._serialize.url("run_id", run_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def cancel( + self, resource_group_name, registry_name, run_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Cancel an existing run. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param run_id: The run ID. + :type run_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._cancel_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + run_id=run_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + cancel.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/runs/{runId}/cancel'} diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/tasks_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/tasks_operations.py new file mode 100644 index 000000000000..9a6bfc9c2d82 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/tasks_operations.py @@ -0,0 +1,543 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class TasksOperations(object): + """TasksOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The client API version. Constant value: "2018-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-09-01" + + self.config = config + + def list( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + """Lists all the tasks for a specified container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Task + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskPaged[~azure.mgmt.containerregistry.v2018_09_01.models.Task] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.TaskPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TaskPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tasks'} + + def get( + self, resource_group_name, registry_name, task_name, custom_headers=None, raw=False, **operation_config): + """Get the properties of a specified task. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param task_name: The name of the container registry task. + :type task_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Task or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerregistry.v2018_09_01.models.Task or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'taskName': self._serialize.url("task_name", task_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9-_]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Task', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tasks/{taskName}'} + + + def _create_initial( + self, resource_group_name, registry_name, task_name, task_create_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'taskName': self._serialize.url("task_name", task_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9-_]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(task_create_parameters, 'Task') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Task', response) + if response.status_code == 201: + deserialized = self._deserialize('Task', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, registry_name, task_name, task_create_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a task for a container registry with the specified parameters. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param task_name: The name of the container registry task. + :type task_name: str + :param task_create_parameters: The parameters for creating a task. + :type task_create_parameters: + ~azure.mgmt.containerregistry.v2018_09_01.models.Task + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Task or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Task] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Task]] + :raises: :class:`CloudError` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + task_name=task_name, + task_create_parameters=task_create_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Task', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tasks/{taskName}'} + + + def _delete_initial( + self, resource_group_name, registry_name, task_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'taskName': self._serialize.url("task_name", task_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9-_]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, registry_name, task_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a specified task. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param task_name: The name of the container registry task. + :type task_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + task_name=task_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tasks/{taskName}'} + + + def _update_initial( + self, resource_group_name, registry_name, task_name, task_update_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'taskName': self._serialize.url("task_name", task_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9-_]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(task_update_parameters, 'TaskUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Task', response) + if response.status_code == 201: + deserialized = self._deserialize('Task', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, registry_name, task_name, task_update_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a task with the specified parameters. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param task_name: The name of the container registry task. + :type task_name: str + :param task_update_parameters: The parameters for updating a task. + :type task_update_parameters: + ~azure.mgmt.containerregistry.v2018_09_01.models.TaskUpdateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Task or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Task] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Task]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + task_name=task_name, + task_update_parameters=task_update_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Task', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tasks/{taskName}'} + + def get_details( + self, resource_group_name, registry_name, task_name, custom_headers=None, raw=False, **operation_config): + """Returns a task with extended information that includes all secrets. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param task_name: The name of the container registry task. + :type task_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Task or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerregistry.v2018_09_01.models.Task or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_details.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'taskName': self._serialize.url("task_name", task_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9-_]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Task', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_details.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/tasks/{taskName}/listDetails'} diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/webhooks_operations.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/webhooks_operations.py new file mode 100644 index 000000000000..9d6ca9fc03d1 --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/operations/webhooks_operations.py @@ -0,0 +1,688 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class WebhooksOperations(object): + """WebhooksOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The client API version. Constant value: "2017-10-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-10-01" + + self.config = config + + def get( + self, resource_group_name, registry_name, webhook_name, custom_headers=None, raw=False, **operation_config): + """Gets the properties of the specified webhook. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param webhook_name: The name of the webhook. + :type webhook_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Webhook or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerregistry.v2018_09_01.models.Webhook or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'webhookName': self._serialize.url("webhook_name", webhook_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Webhook', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}'} + + + def _create_initial( + self, resource_group_name, registry_name, webhook_name, webhook_create_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'webhookName': self._serialize.url("webhook_name", webhook_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(webhook_create_parameters, 'WebhookCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Webhook', response) + if response.status_code == 201: + deserialized = self._deserialize('Webhook', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, registry_name, webhook_name, webhook_create_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a webhook for a container registry with the specified + parameters. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param webhook_name: The name of the webhook. + :type webhook_name: str + :param webhook_create_parameters: The parameters for creating a + webhook. + :type webhook_create_parameters: + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookCreateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Webhook or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Webhook] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Webhook]] + :raises: :class:`CloudError` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + webhook_name=webhook_name, + webhook_create_parameters=webhook_create_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Webhook', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}'} + + + def _delete_initial( + self, resource_group_name, registry_name, webhook_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'webhookName': self._serialize.url("webhook_name", webhook_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, registry_name, webhook_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a webhook from a container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param webhook_name: The name of the webhook. + :type webhook_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + webhook_name=webhook_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}'} + + + def _update_initial( + self, resource_group_name, registry_name, webhook_name, webhook_update_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'webhookName': self._serialize.url("webhook_name", webhook_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(webhook_update_parameters, 'WebhookUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Webhook', response) + if response.status_code == 201: + deserialized = self._deserialize('Webhook', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, registry_name, webhook_name, webhook_update_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a webhook with the specified parameters. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param webhook_name: The name of the webhook. + :type webhook_name: str + :param webhook_update_parameters: The parameters for updating a + webhook. + :type webhook_update_parameters: + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookUpdateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Webhook or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.containerregistry.v2018_09_01.models.Webhook] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.containerregistry.v2018_09_01.models.Webhook]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + registry_name=registry_name, + webhook_name=webhook_name, + webhook_update_parameters=webhook_update_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Webhook', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}'} + + def list( + self, resource_group_name, registry_name, custom_headers=None, raw=False, **operation_config): + """Lists all the webhooks for the specified container registry. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Webhook + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.WebhookPaged[~azure.mgmt.containerregistry.v2018_09_01.models.Webhook] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.WebhookPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.WebhookPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks'} + + def ping( + self, resource_group_name, registry_name, webhook_name, custom_headers=None, raw=False, **operation_config): + """Triggers a ping event to be sent to the webhook. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param webhook_name: The name of the webhook. + :type webhook_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: EventInfo or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.containerregistry.v2018_09_01.models.EventInfo or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.ping.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'webhookName': self._serialize.url("webhook_name", webhook_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EventInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + ping.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/ping'} + + def get_callback_config( + self, resource_group_name, registry_name, webhook_name, custom_headers=None, raw=False, **operation_config): + """Gets the configuration of service URI and custom headers for the + webhook. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param webhook_name: The name of the webhook. + :type webhook_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CallbackConfig or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.CallbackConfig or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_callback_config.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'webhookName': self._serialize.url("webhook_name", webhook_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CallbackConfig', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_callback_config.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/getCallbackConfig'} + + def list_events( + self, resource_group_name, registry_name, webhook_name, custom_headers=None, raw=False, **operation_config): + """Lists recent events for the specified webhook. + + :param resource_group_name: The name of the resource group to which + the container registry belongs. + :type resource_group_name: str + :param registry_name: The name of the container registry. + :type registry_name: str + :param webhook_name: The name of the webhook. + :type webhook_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Event + :rtype: + ~azure.mgmt.containerregistry.v2018_09_01.models.EventPaged[~azure.mgmt.containerregistry.v2018_09_01.models.Event] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_events.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'registryName': self._serialize.url("registry_name", registry_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$'), + 'webhookName': self._serialize.url("webhook_name", webhook_name, 'str', max_length=50, min_length=5, pattern=r'^[a-zA-Z0-9]*$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.EventPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.EventPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_events.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/webhooks/{webhookName}/listEvents'} diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/version.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/version.py new file mode 100644 index 000000000000..53a203f32aaf --- /dev/null +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/v2018_09_01/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "" + diff --git a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/version.py b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/version.py index be75d8eae586..e0fbe90b8dbc 100755 --- a/azure-mgmt-containerregistry/azure/mgmt/containerregistry/version.py +++ b/azure-mgmt-containerregistry/azure/mgmt/containerregistry/version.py @@ -9,5 +9,4 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "2.1.0" - +VERSION = "2.4.0" diff --git a/azure-mgmt-containerregistry/azure_bdist_wheel.py b/azure-mgmt-containerregistry/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-containerregistry/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-containerregistry/setup.cfg b/azure-mgmt-containerregistry/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-containerregistry/setup.cfg +++ b/azure-mgmt-containerregistry/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-containerregistry/setup.py b/azure-mgmt-containerregistry/setup.py index 3b434159845e..188d56267ad0 100644 --- a/azure-mgmt-containerregistry/setup.py +++ b/azure-mgmt-containerregistry/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-containerregistry" @@ -76,11 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', - 'azure-common~=1.1,>=1.1.10', + 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_classic_registry.yaml b/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_classic_registry.yaml index 8b696f773cba..940ae0342997 100644 --- a/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_classic_registry.yaml +++ b/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_classic_registry.yaml @@ -7,8 +7,8 @@ interactions: Connection: [keep-alive] Content-Length: ['75'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/checkNameAvailability?api-version=2017-10-01 @@ -18,7 +18,7 @@ interactions: cache-control: [no-cache] content-length: ['22'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:19:59 GMT'] + date: ['Tue, 11 Sep 2018 16:36:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -28,26 +28,26 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: 'b''b\''b\\\''{"location": "westcentralus", "sku": {"name": "Classic"}, - "properties": {"adminUserEnabled": false, "storageAccount": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"}}}\\\''\''''' + body: 'b''b\''b\\\''b\\\\\\\''{"location": "westcentralus", "sku": {"name": "Classic"}, + "properties": {"adminUserEnabled": false, "storageAccount": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"}}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['312'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Classic","tier":"Classic"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477","name":"pyacrff1e1477","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacrff1e1477.azurecr.io","creationDate":"2018-04-28T06:20:01.7884219Z","provisioningState":"Succeeded","adminUserEnabled":false,"storageAccount":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"}}}'} + body: {string: '{"sku":{"name":"Classic","tier":"Classic"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477","name":"pyacrff1e1477","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacrff1e1477.azurecr.io","creationDate":"2018-09-11T16:36:32.7491697Z","provisioningState":"Succeeded","adminUserEnabled":false,"storageAccount":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"},"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['714'] + content-length: ['762'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:05 GMT'] + date: ['Tue, 11 Sep 2018 16:36:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -55,7 +55,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: null @@ -63,19 +63,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries?api-version=2017-10-01 response: - body: {string: '{"value":[{"sku":{"name":"Classic","tier":"Classic"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477","name":"pyacrff1e1477","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacrff1e1477.azurecr.io","creationDate":"2018-04-28T06:20:01.7884219Z","provisioningState":"Succeeded","adminUserEnabled":false,"storageAccount":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"}}}]}'} + body: {string: '{"value":[{"sku":{"name":"Classic","tier":"Classic"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477","name":"pyacrff1e1477","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacrff1e1477.azurecr.io","creationDate":"2018-09-11T16:36:32.7491697Z","provisioningState":"Succeeded","adminUserEnabled":false,"storageAccount":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"},"firewallRulesEnabled":false,"firewallRules":[]}}]}'} headers: cache-control: [no-cache] - content-length: ['726'] + content-length: ['774'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:05 GMT'] + date: ['Tue, 11 Sep 2018 16:36:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -92,18 +91,18 @@ interactions: Connection: [keep-alive] Content-Length: ['68'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PATCH uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Classic","tier":"Classic"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477","name":"pyacrff1e1477","location":"westcentralus","tags":{"key":"value"},"properties":{"loginServer":"pyacrff1e1477.azurecr.io","creationDate":"2018-04-28T06:20:01.7884219Z","provisioningState":"Succeeded","adminUserEnabled":true,"storageAccount":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"}}}'} + body: {string: '{"sku":{"name":"Classic","tier":"Classic"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477","name":"pyacrff1e1477","location":"westcentralus","tags":{"key":"value"},"properties":{"loginServer":"pyacrff1e1477.azurecr.io","creationDate":"2018-09-11T16:36:32.7491697Z","provisioningState":"Succeeded","adminUserEnabled":true,"storageAccount":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"},"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['726'] + content-length: ['774'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:07 GMT'] + date: ['Tue, 11 Sep 2018 16:36:35 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -111,7 +110,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: null @@ -119,19 +118,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Classic","tier":"Classic"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477","name":"pyacrff1e1477","location":"westcentralus","tags":{"key":"value"},"properties":{"loginServer":"pyacrff1e1477.azurecr.io","creationDate":"2018-04-28T06:20:01.7884219Z","provisioningState":"Succeeded","adminUserEnabled":true,"storageAccount":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"}}}'} + body: {string: '{"sku":{"name":"Classic","tier":"Classic"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477","name":"pyacrff1e1477","location":"westcentralus","tags":{"key":"value"},"properties":{"loginServer":"pyacrff1e1477.azurecr.io","creationDate":"2018-09-11T16:36:32.7491697Z","provisioningState":"Succeeded","adminUserEnabled":true,"storageAccount":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.Storage/storageAccounts/pyacrff1e1477"},"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['726'] + content-length: ['774'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:07 GMT'] + date: ['Tue, 11 Sep 2018 16:36:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -147,19 +145,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477/listCredentials?api-version=2017-10-01 response: - body: {string: '{"username":"pyacrff1e1477","passwords":[{"name":"password","value":"lAR8UYHtB1LgM=vbBLKgj9DMCXhopcFQ"},{"name":"password2","value":"5p0oSq7WKMI==7HUBf4l5f3muP6K040j"}]}'} + body: {string: '{"username":"pyacrff1e1477","passwords":[{"name":"password","value":"260=0Xgx0kOj7UzaMFqvsM6IqwPjS7sO"},{"name":"password2","value":"rWjicosWU8QUmjMSeEQRR=G8nT0Wjd51"}]}'} headers: cache-control: [no-cache] content-length: ['169'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:08 GMT'] + date: ['Tue, 11 Sep 2018 16:36:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -167,7 +164,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: '{"name": "password"}' @@ -177,18 +174,18 @@ interactions: Connection: [keep-alive] Content-Length: ['20'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477/regenerateCredential?api-version=2017-10-01 response: - body: {string: '{"username":"pyacrff1e1477","passwords":[{"name":"password","value":"4VbrDWGN+1PlwB5JreQygsQ0jMQrCqfy"},{"name":"password2","value":"5p0oSq7WKMI==7HUBf4l5f3muP6K040j"}]}'} + body: {string: '{"username":"pyacrff1e1477","passwords":[{"name":"password","value":"bmT7IFanYxGqqCl8sPJ107FnLhg2G6s+"},{"name":"password2","value":"rWjicosWU8QUmjMSeEQRR=G8nT0Wjd51"}]}'} headers: cache-control: [no-cache] content-length: ['169'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:10 GMT'] + date: ['Tue, 11 Sep 2018 16:36:37 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -205,9 +202,8 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_classic_registryff1e1477/providers/Microsoft.ContainerRegistry/registries/pyacrff1e1477?api-version=2017-10-01 @@ -216,12 +212,12 @@ interactions: headers: cache-control: [no-cache] content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:20:15 GMT'] + date: ['Tue, 11 Sep 2018 16:36:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1196'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_managed_registry.yaml b/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_managed_registry.yaml index ec6ac1191865..69ec33c15418 100644 --- a/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_managed_registry.yaml +++ b/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_managed_registry.yaml @@ -7,8 +7,8 @@ interactions: Connection: [keep-alive] Content-Length: ['75'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/checkNameAvailability?api-version=2017-10-01 @@ -18,7 +18,7 @@ interactions: cache-control: [no-cache] content-length: ['22'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:32 GMT'] + date: ['Tue, 11 Sep 2018 16:36:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -27,28 +27,6 @@ interactions: vary: [Accept-Encoding] x-content-type-options: [nosniff] status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 resourcemanagementclient/2.0.0rc1 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1RkNMQVNTSXw4NDM3OTgwMDk4MzkyMThFLVdFU1RDRU5UUkFMVVMiLCJqb2JMb2NhdGlvbiI6Indlc3RjZW50cmFsdXMifQ?api-version=2018-02-01 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:20:34 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1RkNMQVNTSXw4NDM3OTgwMDk4MzkyMThFLVdFU1RDRU5UUkFMVVMiLCJqb2JMb2NhdGlvbiI6Indlc3RjZW50cmFsdXMifQ?api-version=2018-02-01'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} - request: body: '{"location": "westcentralus", "sku": {"name": "Premium"}, "properties": {"adminUserEnabled": false}}' @@ -58,18 +36,18 @@ interactions: Connection: [keep-alive] Content-Length: ['100'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462","name":"pyacrfe331462","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacrfe331462.azurecr.io","creationDate":"2018-04-28T06:20:33.6140549Z","provisioningState":"Succeeded","adminUserEnabled":false}}'} + body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462","name":"pyacrfe331462","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacrfe331462.azurecr.io","creationDate":"2018-09-11T16:36:48.0738284Z","provisioningState":"Succeeded","adminUserEnabled":false,"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['505'] + content-length: ['553'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:37 GMT'] + date: ['Tue, 11 Sep 2018 16:36:48 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -85,19 +63,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries?api-version=2017-10-01 response: - body: {string: '{"value":[{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462","name":"pyacrfe331462","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacrfe331462.azurecr.io","creationDate":"2018-04-28T06:20:33.6140549Z","provisioningState":"Succeeded","adminUserEnabled":false}}]}'} + body: {string: '{"value":[{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462","name":"pyacrfe331462","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacrfe331462.azurecr.io","creationDate":"2018-09-11T16:36:48.0738284Z","provisioningState":"Succeeded","adminUserEnabled":false,"firewallRulesEnabled":false,"firewallRules":[]}}]}'} headers: cache-control: [no-cache] - content-length: ['517'] + content-length: ['565'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:37 GMT'] + date: ['Tue, 11 Sep 2018 16:36:49 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -114,18 +91,18 @@ interactions: Connection: [keep-alive] Content-Length: ['68'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PATCH uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462","name":"pyacrfe331462","location":"westcentralus","tags":{"key":"value"},"properties":{"loginServer":"pyacrfe331462.azurecr.io","creationDate":"2018-04-28T06:20:33.6140549Z","provisioningState":"Succeeded","adminUserEnabled":true}}'} + body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462","name":"pyacrfe331462","location":"westcentralus","tags":{"key":"value"},"properties":{"loginServer":"pyacrfe331462.azurecr.io","creationDate":"2018-09-11T16:36:48.0738284Z","provisioningState":"Succeeded","adminUserEnabled":true,"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['517'] + content-length: ['565'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:39 GMT'] + date: ['Tue, 11 Sep 2018 16:36:50 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -133,7 +110,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: null @@ -141,19 +118,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462","name":"pyacrfe331462","location":"westcentralus","tags":{"key":"value"},"properties":{"loginServer":"pyacrfe331462.azurecr.io","creationDate":"2018-04-28T06:20:33.6140549Z","provisioningState":"Succeeded","adminUserEnabled":true}}'} + body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462","name":"pyacrfe331462","location":"westcentralus","tags":{"key":"value"},"properties":{"loginServer":"pyacrfe331462.azurecr.io","creationDate":"2018-09-11T16:36:48.0738284Z","provisioningState":"Succeeded","adminUserEnabled":true,"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['517'] + content-length: ['565'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:39 GMT'] + date: ['Tue, 11 Sep 2018 16:36:50 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -169,19 +145,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462/listCredentials?api-version=2017-10-01 response: - body: {string: '{"username":"pyacrfe331462","passwords":[{"name":"password","value":"jvca=sklQceshXGHGe5zhePbcMf5Mocb"},{"name":"password2","value":"461b1KINaBYAm+UK2k7eOAihHXOWsa8C"}]}'} + body: {string: '{"username":"pyacrfe331462","passwords":[{"name":"password","value":"3WMODMj0sSD0azNxg01U8Fo02/MYAMSK"},{"name":"password2","value":"zJLdrI8YdaD+hus5DExiJN1AWtWBqmt4"}]}'} headers: cache-control: [no-cache] content-length: ['169'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:40 GMT'] + date: ['Tue, 11 Sep 2018 16:36:51 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -189,7 +164,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: '{"name": "password"}' @@ -199,18 +174,18 @@ interactions: Connection: [keep-alive] Content-Length: ['20'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462/regenerateCredential?api-version=2017-10-01 response: - body: {string: '{"username":"pyacrfe331462","passwords":[{"name":"password","value":"7SaYYuPpfh=AhZTsIHf4G5F+Z9CqHfNO"},{"name":"password2","value":"461b1KINaBYAm+UK2k7eOAihHXOWsa8C"}]}'} + body: {string: '{"username":"pyacrfe331462","passwords":[{"name":"password","value":"f7xq0ZLz4eTaxQaMkk/SuEqSqq642xm4"},{"name":"password2","value":"zJLdrI8YdaD+hus5DExiJN1AWtWBqmt4"}]}'} headers: cache-control: [no-cache] content-length: ['169'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:41 GMT'] + date: ['Tue, 11 Sep 2018 16:36:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -218,7 +193,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: null @@ -226,9 +201,8 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462/listUsages?api-version=2017-10-01 @@ -238,7 +212,7 @@ interactions: cache-control: [no-cache] content-length: ['144'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:42 GMT'] + date: ['Tue, 11 Sep 2018 16:36:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -254,9 +228,8 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_managed_registryfe331462/providers/Microsoft.ContainerRegistry/registries/pyacrfe331462?api-version=2017-10-01 @@ -265,12 +238,12 @@ interactions: headers: cache-control: [no-cache] content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:20:46 GMT'] + date: ['Tue, 11 Sep 2018 16:36:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1196'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_replication.yaml b/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_replication.yaml index e147f9a7824c..6f2999bfdc51 100644 --- a/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_replication.yaml +++ b/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_replication.yaml @@ -8,18 +8,18 @@ interactions: Connection: [keep-alive] Content-Length: ['100'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257","name":"pyacr9dee1257","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacr9dee1257.azurecr.io","creationDate":"2018-04-28T06:20:53.2467829Z","provisioningState":"Succeeded","adminUserEnabled":false}}'} + body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257","name":"pyacr9dee1257","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacr9dee1257.azurecr.io","creationDate":"2018-09-11T16:37:00.5393939Z","provisioningState":"Succeeded","adminUserEnabled":false,"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['500'] + content-length: ['548'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:55 GMT'] + date: ['Tue, 11 Sep 2018 16:37:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -27,7 +27,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: '{"location": "southcentralus"}' @@ -37,19 +37,19 @@ interactions: Connection: [keep-alive] Content-Length: ['30'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus?api-version=2017-10-01 response: - body: {string: '{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{},"properties":{"provisioningState":"Creating","status":{"timestamp":"2018-04-28T06:20:58.8829156Z"}}}'} + body: {string: '{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{},"properties":{"provisioningState":"Creating","status":{"timestamp":"2018-09-11T16:37:05.00876Z"}}}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus/operationStatuses/replications-4f3f6b6c-4aac-11e8-a697-480fcf61db4b?api-version=2017-10-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus/operationStatuses/replications-e9779cb8-b5e0-11e8-94a3-1831bf6ae40e?api-version=2017-10-01'] cache-control: [no-cache] - content-length: ['442'] + content-length: ['440'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:20:59 GMT'] + date: ['Tue, 11 Sep 2018 16:37:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -63,109 +63,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 resourcemanagementclient/2.0.0rc1 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1Rk1BTkFHRXxCOEEwRjExRDIwNjZGMjEyLVdFU1RDRU5UUkFMVVMiLCJqb2JMb2NhdGlvbiI6Indlc3RjZW50cmFsdXMifQ?api-version=2018-02-01 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:21:02 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1Rk1BTkFHRXxCOEEwRjExRDIwNjZGMjEyLVdFU1RDRU5UUkFMVVMiLCJqb2JMb2NhdGlvbiI6Indlc3RjZW50cmFsdXMifQ?api-version=2018-02-01'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 resourcemanagementclient/2.0.0rc1 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1RkNMQVNTSXw4NDM3OTgwMDk4MzkyMThFLVdFU1RDRU5UUkFMVVMiLCJqb2JMb2NhdGlvbiI6Indlc3RjZW50cmFsdXMifQ?api-version=2018-02-01 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:21:06 GMT'] - expires: ['-1'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus/operationStatuses/replications-4f3f6b6c-4aac-11e8-a697-480fcf61db4b?api-version=2017-10-01 - response: - body: {string: '{"status":"Creating"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus/operationStatuses/replications-4f3f6b6c-4aac-11e8-a697-480fcf61db4b?api-version=2017-10-01'] - cache-control: [no-cache] - content-length: ['21'] - content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 resourcemanagementclient/2.0.0rc1 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1Rk1BTkFHRXxCOEEwRjExRDIwNjZGMjEyLVdFU1RDRU5UUkFMVVMiLCJqb2JMb2NhdGlvbiI6Indlc3RjZW50cmFsdXMifQ?api-version=2018-02-01 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:21:18 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1Rk1BTkFHRXxCOEEwRjExRDIwNjZGMjEyLVdFU1RDRU5UUkFMVVMiLCJqb2JMb2NhdGlvbiI6Indlc3RjZW50cmFsdXMifQ?api-version=2018-02-01'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus/operationStatuses/replications-4f3f6b6c-4aac-11e8-a697-480fcf61db4b?api-version=2017-10-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus/operationStatuses/replications-e9779cb8-b5e0-11e8-94a3-1831bf6ae40e?api-version=2017-10-01 response: body: {string: '{"status":"Succeeded"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus/operationStatuses/replications-4f3f6b6c-4aac-11e8-a697-480fcf61db4b?api-version=2017-10-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus/operationStatuses/replications-e9779cb8-b5e0-11e8-94a3-1831bf6ae40e?api-version=2017-10-01'] cache-control: [no-cache] content-length: ['22'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:20 GMT'] + date: ['Tue, 11 Sep 2018 16:37:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -180,17 +89,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus?api-version=2017-10-01 response: - body: {string: '{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Ready","timestamp":"2018-04-28T06:21:21.5056667Z"}}}'} + body: {string: '{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Syncing","timestamp":"2018-09-11T16:37:14.2871247Z"}}}'} headers: cache-control: [no-cache] - content-length: ['467'] + content-length: ['469'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:21 GMT'] + date: ['Tue, 11 Sep 2018 16:37:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -205,19 +114,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications?api-version=2017-10-01 response: - body: {string: '{"value":[{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Ready","timestamp":"2018-04-28T06:21:21.5056667Z"}}},{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/westcentralus","name":"westcentralus","location":"westcentralus","tags":{},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Ready","timestamp":"2018-04-28T06:21:04.7334495Z"}}}]}'} + body: {string: '{"value":[{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Syncing","timestamp":"2018-09-11T16:37:14.2871247Z"}}},{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/westcentralus","name":"westcentralus","location":"westcentralus","tags":{},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Ready","timestamp":"2018-09-11T16:37:08.4629315Z"}}}]}'} headers: cache-control: [no-cache] - content-length: ['944'] + content-length: ['946'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:23 GMT'] + date: ['Tue, 11 Sep 2018 16:37:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -234,18 +142,18 @@ interactions: Connection: [keep-alive] Content-Length: ['26'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PATCH uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus?api-version=2017-10-01 response: - body: {string: '{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Ready","timestamp":"2018-04-28T06:21:21.5056667Z"}}}'} + body: {string: '{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Ready","timestamp":"2018-09-11T16:37:18.3061495Z"}}}'} headers: cache-control: [no-cache] content-length: ['480'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:23 GMT'] + date: ['Tue, 11 Sep 2018 16:37:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -253,7 +161,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1196'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: null @@ -261,19 +169,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus?api-version=2017-10-01 response: - body: {string: '{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Ready","timestamp":"2018-04-28T06:21:21.5056667Z"}}}'} + body: {string: '{"type":"Microsoft.ContainerRegistry/registries/replications","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus","name":"southcentralus","location":"southcentralus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","status":{"displayStatus":"Ready","timestamp":"2018-09-11T16:37:18.3061495Z"}}}'} headers: cache-control: [no-cache] content-length: ['480'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:24 GMT'] + date: ['Tue, 11 Sep 2018 16:37:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -289,9 +196,8 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257/replications/southcentralus?api-version=2017-10-01 @@ -301,179 +207,14 @@ interactions: cache-control: [no-cache] content-length: ['4'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:25 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 resourcemanagementclient/2.0.0rc1 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1Rk1BTkFHRXxCOEEwRjExRDIwNjZGMjEyLVdFU1RDRU5UUkFMVVMiLCJqb2JMb2NhdGlvbiI6Indlc3RjZW50cmFsdXMifQ?api-version=2018-02-01 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:21:34 GMT'] - expires: ['-1'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01 - response: - body: {string: 'null'} - headers: - cache-control: [no-cache] - content-length: ['4'] - content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:36 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01 - response: - body: {string: 'null'} - headers: - cache-control: [no-cache] - content-length: ['4'] - content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:47 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01 - response: - body: {string: 'null'} - headers: - cache-control: [no-cache] - content-length: ['4'] - content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:21:58 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01 - response: - body: {string: 'null'} - headers: - cache-control: [no-cache] - content-length: ['4'] - content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:22:08 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01 - response: - body: {string: 'null'} - headers: - cache-control: [no-cache] - content-length: ['4'] - content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:22:20 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01 - response: - body: {string: 'null'} - headers: - cache-control: [no-cache] - content-length: ['4'] - content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:22:31 GMT'] + date: ['Tue, 11 Sep 2018 16:37:20 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-f4357a38-b5e0-11e8-975f-1831bf6ae40e?api-version=2017-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 202, message: Accepted} - request: body: null @@ -481,16 +222,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-60d954ae-4aac-11e8-bcfe-480fcf61db4b?api-version=2017-10-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/southcentralus/operationResults/replications-f4357a38-b5e0-11e8-975f-1831bf6ae40e?api-version=2017-10-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:22:41 GMT'] + date: ['Tue, 11 Sep 2018 16:37:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -504,26 +245,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257","name":"pyacr9dee1257","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacr9dee1257.azurecr.io","creationDate":"2018-04-28T06:20:53.2467829Z","provisioningState":"Deleting","adminUserEnabled":false}}'} + body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_replication9dee1257/providers/Microsoft.ContainerRegistry/registries/pyacr9dee1257","name":"pyacr9dee1257","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacr9dee1257.azurecr.io","creationDate":"2018-09-11T16:37:00.5393939Z","provisioningState":"Deleting","adminUserEnabled":false,"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['499'] + content-length: ['547'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:22:51 GMT'] + date: ['Tue, 11 Sep 2018 16:37:36 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/westcentralus/operationResults/registries-8eb1eb64-4aac-11e8-b1ff-480fcf61db4b?api-version=2017-10-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/westcentralus/operationResults/registries-fb67c9b4-b5e0-11e8-944b-1831bf6ae40e?api-version=2017-10-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 202, message: Accepted} - request: body: null @@ -531,16 +271,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/westcentralus/operationResults/registries-8eb1eb64-4aac-11e8-b1ff-480fcf61db4b?api-version=2017-10-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ContainerRegistry/locations/westcentralus/operationResults/registries-fb67c9b4-b5e0-11e8-944b-1831bf6ae40e?api-version=2017-10-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:23:01 GMT'] + date: ['Tue, 11 Sep 2018 16:37:47 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_webhook.yaml b/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_webhook.yaml index eabb174d0f62..060f533e637c 100644 --- a/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_webhook.yaml +++ b/azure-mgmt-containerregistry/tests/recordings/test_mgmt_containerregistry.test_webhook.yaml @@ -8,18 +8,18 @@ interactions: Connection: [keep-alive] Content-Length: ['100'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac?api-version=2017-10-01 response: - body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac","name":"pyacr572410ac","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacr572410ac.azurecr.io","creationDate":"2018-04-28T06:23:09.3090401Z","provisioningState":"Succeeded","adminUserEnabled":false}}'} + body: {string: '{"sku":{"name":"Premium","tier":"Premium"},"type":"Microsoft.ContainerRegistry/registries","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac","name":"pyacr572410ac","location":"westcentralus","tags":{},"properties":{"loginServer":"pyacr572410ac.azurecr.io","creationDate":"2018-09-11T16:37:53.6028643Z","provisioningState":"Succeeded","adminUserEnabled":false,"firewallRulesEnabled":false,"firewallRules":[]}}'} headers: cache-control: [no-cache] - content-length: ['496'] + content-length: ['544'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:23:10 GMT'] + date: ['Tue, 11 Sep 2018 16:37:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -27,7 +27,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 200, message: OK} - request: body: '{"location": "westcentralus", "properties": {"serviceUri": "http://www.microsoft.com", @@ -38,18 +38,18 @@ interactions: Connection: [keep-alive] Content-Length: ['108'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac?api-version=2017-10-01 response: - body: {string: '{"type":"Microsoft.ContainerRegistry/registries/webhooks","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac","name":"pyacr572410ac","location":"westcentralus","tags":{},"properties":{"status":"enabled","actions":["push"],"provisioningState":"Succeeded"}}'} + body: {string: '{"type":"Microsoft.ContainerRegistry/registries/webhooks","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac","name":"pyacr572410ac","location":"westcentralus","tags":{},"properties":{"status":"enabled","scope":"","actions":["push"],"provisioningState":"Succeeded"}}'} headers: cache-control: [no-cache] - content-length: ['412'] + content-length: ['423'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:23:12 GMT'] + date: ['Tue, 11 Sep 2018 16:37:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -57,7 +57,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 200, message: OK} - request: body: null @@ -65,19 +65,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks?api-version=2017-10-01 response: - body: {string: '{"value":[{"type":"Microsoft.ContainerRegistry/registries/webhooks","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac","name":"pyacr572410ac","location":"westcentralus","tags":{},"properties":{"status":"enabled","actions":["push"],"provisioningState":"Succeeded"}}]}'} + body: {string: '{"value":[{"type":"Microsoft.ContainerRegistry/registries/webhooks","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac","name":"pyacr572410ac","location":"westcentralus","tags":{},"properties":{"status":"enabled","scope":"","actions":["push"],"provisioningState":"Succeeded"}}]}'} headers: cache-control: [no-cache] - content-length: ['424'] + content-length: ['435'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:23:12 GMT'] + date: ['Tue, 11 Sep 2018 16:37:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -95,8 +94,8 @@ interactions: Connection: [keep-alive] Content-Length: ['101'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PATCH uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac?api-version=2017-10-01 @@ -106,7 +105,7 @@ interactions: cache-control: [no-cache] content-length: ['447'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:23:14 GMT'] + date: ['Tue, 11 Sep 2018 16:37:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -114,7 +113,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: null @@ -122,9 +121,8 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac?api-version=2017-10-01 @@ -134,7 +132,7 @@ interactions: cache-control: [no-cache] content-length: ['447'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:23:15 GMT'] + date: ['Tue, 11 Sep 2018 16:37:57 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -150,9 +148,8 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac/getCallbackConfig?api-version=2017-10-01 @@ -162,7 +159,7 @@ interactions: cache-control: [no-cache] content-length: ['73'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:23:16 GMT'] + date: ['Tue, 11 Sep 2018 16:37:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -170,7 +167,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: null @@ -179,19 +176,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac/ping?api-version=2017-10-01 response: - body: {string: '{"id":"9c9adec3-b8e4-4601-98e8-f7393f9021cd"}'} + body: {string: '{"id":"5129a176-e5cb-4d31-9472-6ad7c53f0eaf"}'} headers: cache-control: [no-cache] content-length: ['45'] content-type: [application/json; charset=utf-8] - date: ['Sat, 28 Apr 2018 06:23:16 GMT'] + date: ['Tue, 11 Sep 2018 16:37:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -199,30 +195,8 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1196'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 resourcemanagementclient/2.0.0rc1 Azure-SDK-For-Python] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1RlJFUExJQ0FUSU9OOURFRTEyNTctV0VTVENFTlRSQUxVUyIsImpvYkxvY2F0aW9uIjoid2VzdGNlbnRyYWx1cyJ9?api-version=2018-02-01 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:23:18 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1URVNUOjVGTUdNVDo1RkNPTlRBSU5FUlJFR0lTVFJZOjVGVEVTVDo1RlJFUExJQ0FUSU9OOURFRTEyNTctV0VTVENFTlRSQUxVUyIsImpvYkxvY2F0aW9uIjoid2VzdGNlbnRyYWx1cyJ9?api-version=2018-02-01'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - status: {code: 202, message: Accepted} - request: body: null headers: @@ -230,9 +204,8 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac/webhooks/pyacr572410ac?api-version=2017-10-01 @@ -241,13 +214,13 @@ interactions: headers: cache-control: [no-cache] content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:23:18 GMT'] + date: ['Tue, 11 Sep 2018 16:38:00 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 200, message: OK} - request: body: null @@ -256,9 +229,8 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.28 - msrest_azure/0.4.28 containerregistrymanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 containerregistrymanagementclient/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_containerregistry_test_webhook572410ac/providers/Microsoft.ContainerRegistry/registries/pyacr572410ac?api-version=2017-10-01 @@ -267,12 +239,12 @@ interactions: headers: cache-control: [no-cache] content-length: ['0'] - date: ['Sat, 28 Apr 2018 06:23:21 GMT'] + date: ['Tue, 11 Sep 2018 16:38:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-containerservice/HISTORY.rst b/azure-mgmt-containerservice/HISTORY.rst index 9ef3f0195062..daa7e410fdc8 100644 --- a/azure-mgmt-containerservice/HISTORY.rst +++ b/azure-mgmt-containerservice/HISTORY.rst @@ -3,6 +3,21 @@ Release History =============== +4.2.2 (2018-08-09) +++++++++++++++++++ + +**Bugfixes** + +- Fix invalid definition of CredentialResult + +4.2.1 (2018-08-08) +++++++++++++++++++ + +**Bugfixes** + +- Fix some invalid regexp +- Fix invalid definition of CredentialResult + 4.2.0 (2018-07-30) ++++++++++++++++++ diff --git a/azure-mgmt-containerservice/MANIFEST.in b/azure-mgmt-containerservice/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-containerservice/MANIFEST.in +++ b/azure-mgmt-containerservice/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-containerservice/README.rst b/azure-mgmt-containerservice/README.rst index 4b0ff63c695d..92bf434c9d09 100644 --- a/azure-mgmt-containerservice/README.rst +++ b/azure-mgmt-containerservice/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Container Service Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-containerservice/azure/__init__.py b/azure-mgmt-containerservice/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-containerservice/azure/__init__.py +++ b/azure-mgmt-containerservice/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-containerservice/azure/mgmt/__init__.py b/azure-mgmt-containerservice/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-containerservice/azure/mgmt/__init__.py +++ b/azure-mgmt-containerservice/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/container_service_linux_profile.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/container_service_linux_profile.py index d9e79e2d2eeb..4ae1aa042b59 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/container_service_linux_profile.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/container_service_linux_profile.py @@ -27,7 +27,7 @@ class ContainerServiceLinuxProfile(Model): """ _validation = { - 'admin_username': {'required': True, 'pattern': r'^[a-z][a-z0-9_-]*$'}, + 'admin_username': {'required': True, 'pattern': r'^[A-Za-z][-A-Za-z0-9_]*$'}, 'ssh': {'required': True}, } diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/container_service_linux_profile_py3.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/container_service_linux_profile_py3.py index 824f20d0da8b..9756107e1c7c 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/container_service_linux_profile_py3.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/container_service_linux_profile_py3.py @@ -27,7 +27,7 @@ class ContainerServiceLinuxProfile(Model): """ _validation = { - 'admin_username': {'required': True, 'pattern': r'^[a-z][a-z0-9_-]*$'}, + 'admin_username': {'required': True, 'pattern': r'^[A-Za-z][-A-Za-z0-9_]*$'}, 'ssh': {'required': True}, } diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_result.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_result.py index 4d9a9c124789..89e748b481b3 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_result.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_result.py @@ -20,8 +20,8 @@ class CredentialResult(Model): :ivar name: The name of the credential. :vartype name: str - :ivar value: The value of the credential. - :vartype value: str + :ivar value: Base64-encoded Kubernetes configuration file. + :vartype value: bytearray """ _validation = { @@ -31,7 +31,7 @@ class CredentialResult(Model): _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'bytearray'}, } def __init__(self, **kwargs): diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_result_py3.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_result_py3.py index 18531e50cb59..6f387834bf06 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_result_py3.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_result_py3.py @@ -20,8 +20,8 @@ class CredentialResult(Model): :ivar name: The name of the credential. :vartype name: str - :ivar value: The value of the credential. - :vartype value: str + :ivar value: Base64-encoded Kubernetes configuration file. + :vartype value: bytearray """ _validation = { @@ -31,7 +31,7 @@ class CredentialResult(Model): _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, - 'value': {'key': 'value', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'bytearray'}, } def __init__(self, **kwargs) -> None: diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_results.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_results.py index 12d8c7ac1fe4..6360ae308c44 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_results.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_results.py @@ -18,19 +18,19 @@ class CredentialResults(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar values: - :vartype values: + :ivar kubeconfigs: + :vartype kubeconfigs: list[~azure.mgmt.containerservice.models.CredentialResult] """ _validation = { - 'values': {'readonly': True}, + 'kubeconfigs': {'readonly': True}, } _attribute_map = { - 'values': {'key': 'values', 'type': '[CredentialResult]'}, + 'kubeconfigs': {'key': 'kubeconfigs', 'type': '[CredentialResult]'}, } def __init__(self, **kwargs): super(CredentialResults, self).__init__(**kwargs) - self.values = None + self.kubeconfigs = None diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_results_py3.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_results_py3.py index fc52b257dc70..ac5e843261f6 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_results_py3.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/credential_results_py3.py @@ -18,19 +18,19 @@ class CredentialResults(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar values: - :vartype values: + :ivar kubeconfigs: + :vartype kubeconfigs: list[~azure.mgmt.containerservice.models.CredentialResult] """ _validation = { - 'values': {'readonly': True}, + 'kubeconfigs': {'readonly': True}, } _attribute_map = { - 'values': {'key': 'values', 'type': '[CredentialResult]'}, + 'kubeconfigs': {'key': 'kubeconfigs', 'type': '[CredentialResult]'}, } def __init__(self, **kwargs) -> None: super(CredentialResults, self).__init__(**kwargs) - self.values = None + self.kubeconfigs = None diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/managed_cluster.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/managed_cluster.py index f7c50b26a586..502abb1807da 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/managed_cluster.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/managed_cluster.py @@ -40,7 +40,8 @@ class ManagedCluster(Resource): :type dns_prefix: str :ivar fqdn: FDQN for the master pool. :vartype fqdn: str - :param agent_pool_profiles: Properties of the agent pool. + :param agent_pool_profiles: Properties of the agent pool. Currently only + one agent pool can exist. :type agent_pool_profiles: list[~azure.mgmt.containerservice.models.ManagedClusterAgentPoolProfile] :param linux_profile: Profile for Linux VMs in the container service diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/managed_cluster_py3.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/managed_cluster_py3.py index 3f1534d09ae1..295ef9894cc9 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/models/managed_cluster_py3.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/models/managed_cluster_py3.py @@ -40,7 +40,8 @@ class ManagedCluster(Resource): :type dns_prefix: str :ivar fqdn: FDQN for the master pool. :vartype fqdn: str - :param agent_pool_profiles: Properties of the agent pool. + :param agent_pool_profiles: Properties of the agent pool. Currently only + one agent pool can exist. :type agent_pool_profiles: list[~azure.mgmt.containerservice.models.ManagedClusterAgentPoolProfile] :param linux_profile: Profile for Linux VMs in the container service diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/container_services_operations.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/container_services_operations.py index 9901518494b7..887569a8a13a 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/container_services_operations.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/container_services_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,6 +128,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -141,9 +141,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ContainerService') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -261,7 +260,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -270,8 +269,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -310,7 +309,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -319,8 +317,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -424,7 +422,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +431,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -498,7 +495,7 @@ def list_orchestrators( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -507,8 +504,8 @@ def list_orchestrators( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/managed_clusters_operations.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/managed_clusters_operations.py index 891d77138aa7..ee38a71b40e3 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/managed_clusters_operations.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/managed_clusters_operations.py @@ -76,7 +76,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,9 +85,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -148,7 +147,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -157,9 +156,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -216,7 +214,7 @@ def get_upgrade_profile( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -225,8 +223,8 @@ def get_upgrade_profile( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -286,7 +284,7 @@ def get_access_profile( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -295,8 +293,8 @@ def get_access_profile( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -351,7 +349,7 @@ def list_cluster_admin_credentials( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -360,8 +358,8 @@ def list_cluster_admin_credentials( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -416,7 +414,7 @@ def list_cluster_user_credentials( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -425,8 +423,8 @@ def list_cluster_user_credentials( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -481,7 +479,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -490,8 +488,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -528,6 +526,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -540,9 +539,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ManagedCluster') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -636,6 +634,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -648,9 +647,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -738,7 +736,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -747,8 +744,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/operations.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/operations.py index 83337ae0311b..a43ead3a313c 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/operations.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-containerservice/azure/mgmt/containerservice/version.py b/azure-mgmt-containerservice/azure/mgmt/containerservice/version.py index 001170437cef..c215e51b49fe 100644 --- a/azure-mgmt-containerservice/azure/mgmt/containerservice/version.py +++ b/azure-mgmt-containerservice/azure/mgmt/containerservice/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "4.2.0" +VERSION = "4.2.2" diff --git a/azure-mgmt-containerservice/azure_bdist_wheel.py b/azure-mgmt-containerservice/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-containerservice/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-containerservice/setup.cfg b/azure-mgmt-containerservice/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-containerservice/setup.cfg +++ b/azure-mgmt-containerservice/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-containerservice/setup.py b/azure-mgmt-containerservice/setup.py index 185d6e666a0e..647197cde70e 100644 --- a/azure-mgmt-containerservice/setup.py +++ b/azure-mgmt-containerservice/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-containerservice" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-cosmosdb/HISTORY.rst b/azure-mgmt-cosmosdb/HISTORY.rst index 4d879a047957..dad29f2663a2 100644 --- a/azure-mgmt-cosmosdb/HISTORY.rst +++ b/azure-mgmt-cosmosdb/HISTORY.rst @@ -3,6 +3,33 @@ Release History =============== +0.5.2 (2018-11-05) +++++++++++++++++++ + +**Features** + +- Add ignore_missing_vnet_service_endpoint support + +0.5.1 (2018-10-16) +++++++++++++++++++ + +**Bugfix** + +- Fix sdist broken in 0.5.0. No code change. + +0.5.0 (2018-10-08) +++++++++++++++++++ + +**Features** + +- Add enable_multiple_write_locations support + +**Note** + +- `database_accounts.list_read_only_keys` is now doing a POST call, and not GET anymore. This should not impact anything. + Old behavior be can found with the `database_accounts.get_read_only_keys` **deprecated** method. +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + 0.4.1 (2018-05-15) ++++++++++++++++++ @@ -33,7 +60,7 @@ This version uses a next-generation code generator that *might* introduce breaki - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same. - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used. - - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, + - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`. - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`, the response of the initial call will be returned without polling. diff --git a/azure-mgmt-cosmosdb/MANIFEST.in b/azure-mgmt-cosmosdb/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-cosmosdb/MANIFEST.in +++ b/azure-mgmt-cosmosdb/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-cosmosdb/README.rst b/azure-mgmt-cosmosdb/README.rst index 4a958d34b8db..82bd979c7bf5 100644 --- a/azure-mgmt-cosmosdb/README.rst +++ b/azure-mgmt-cosmosdb/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Cosmos DB Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -36,7 +36,7 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `CosmosDB Management +For code examples, see `Cosmos DB Management `__ on docs.microsoft.com. diff --git a/azure-mgmt-cosmosdb/azure/__init__.py b/azure-mgmt-cosmosdb/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-cosmosdb/azure/__init__.py +++ b/azure-mgmt-cosmosdb/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-cosmosdb/azure/mgmt/__init__.py b/azure-mgmt-cosmosdb/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/__init__.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account.py index f746e080e25f..debded86eed7 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account.py @@ -77,6 +77,9 @@ class DatabaseAccount(Resource): for the Cosmos DB account. :type virtual_network_rules: list[~azure.mgmt.cosmosdb.models.VirtualNetworkRule] + :param enable_multiple_write_locations: Enables the account to write in + multiple locations + :type enable_multiple_write_locations: bool """ _validation = { @@ -110,6 +113,7 @@ class DatabaseAccount(Resource): 'read_locations': {'key': 'properties.readLocations', 'type': '[Location]'}, 'failover_policies': {'key': 'properties.failoverPolicies', 'type': '[FailoverPolicy]'}, 'virtual_network_rules': {'key': 'properties.virtualNetworkRules', 'type': '[VirtualNetworkRule]'}, + 'enable_multiple_write_locations': {'key': 'properties.enableMultipleWriteLocations', 'type': 'bool'}, } def __init__(self, **kwargs): @@ -127,3 +131,4 @@ def __init__(self, **kwargs): self.read_locations = None self.failover_policies = None self.virtual_network_rules = kwargs.get('virtual_network_rules', None) + self.enable_multiple_write_locations = kwargs.get('enable_multiple_write_locations', None) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_create_update_parameters.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_create_update_parameters.py index 4cd363937f05..9ff548fc3efb 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_create_update_parameters.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_create_update_parameters.py @@ -62,6 +62,9 @@ class DatabaseAccountCreateUpdateParameters(Resource): for the Cosmos DB account. :type virtual_network_rules: list[~azure.mgmt.cosmosdb.models.VirtualNetworkRule] + :param enable_multiple_write_locations: Enables the account to write in + multiple locations + :type enable_multiple_write_locations: bool """ _validation = { @@ -88,6 +91,7 @@ class DatabaseAccountCreateUpdateParameters(Resource): 'enable_automatic_failover': {'key': 'properties.enableAutomaticFailover', 'type': 'bool'}, 'capabilities': {'key': 'properties.capabilities', 'type': '[Capability]'}, 'virtual_network_rules': {'key': 'properties.virtualNetworkRules', 'type': '[VirtualNetworkRule]'}, + 'enable_multiple_write_locations': {'key': 'properties.enableMultipleWriteLocations', 'type': 'bool'}, } database_account_offer_type = "Standard" @@ -102,3 +106,4 @@ def __init__(self, **kwargs): self.enable_automatic_failover = kwargs.get('enable_automatic_failover', None) self.capabilities = kwargs.get('capabilities', None) self.virtual_network_rules = kwargs.get('virtual_network_rules', None) + self.enable_multiple_write_locations = kwargs.get('enable_multiple_write_locations', None) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_create_update_parameters_py3.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_create_update_parameters_py3.py index f8e8e78ee597..491e8e27b2a8 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_create_update_parameters_py3.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_create_update_parameters_py3.py @@ -62,6 +62,9 @@ class DatabaseAccountCreateUpdateParameters(Resource): for the Cosmos DB account. :type virtual_network_rules: list[~azure.mgmt.cosmosdb.models.VirtualNetworkRule] + :param enable_multiple_write_locations: Enables the account to write in + multiple locations + :type enable_multiple_write_locations: bool """ _validation = { @@ -88,11 +91,12 @@ class DatabaseAccountCreateUpdateParameters(Resource): 'enable_automatic_failover': {'key': 'properties.enableAutomaticFailover', 'type': 'bool'}, 'capabilities': {'key': 'properties.capabilities', 'type': '[Capability]'}, 'virtual_network_rules': {'key': 'properties.virtualNetworkRules', 'type': '[VirtualNetworkRule]'}, + 'enable_multiple_write_locations': {'key': 'properties.enableMultipleWriteLocations', 'type': 'bool'}, } database_account_offer_type = "Standard" - def __init__(self, *, location: str, locations, tags=None, kind="GlobalDocumentDB", consistency_policy=None, ip_range_filter: str=None, is_virtual_network_filter_enabled: bool=None, enable_automatic_failover: bool=None, capabilities=None, virtual_network_rules=None, **kwargs) -> None: + def __init__(self, *, location: str, locations, tags=None, kind="GlobalDocumentDB", consistency_policy=None, ip_range_filter: str=None, is_virtual_network_filter_enabled: bool=None, enable_automatic_failover: bool=None, capabilities=None, virtual_network_rules=None, enable_multiple_write_locations: bool=None, **kwargs) -> None: super(DatabaseAccountCreateUpdateParameters, self).__init__(location=location, tags=tags, **kwargs) self.kind = kind self.consistency_policy = consistency_policy @@ -102,3 +106,4 @@ def __init__(self, *, location: str, locations, tags=None, kind="GlobalDocumentD self.enable_automatic_failover = enable_automatic_failover self.capabilities = capabilities self.virtual_network_rules = virtual_network_rules + self.enable_multiple_write_locations = enable_multiple_write_locations diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_py3.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_py3.py index d0c6e603e9d6..98d545f416e0 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_py3.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/database_account_py3.py @@ -77,6 +77,9 @@ class DatabaseAccount(Resource): for the Cosmos DB account. :type virtual_network_rules: list[~azure.mgmt.cosmosdb.models.VirtualNetworkRule] + :param enable_multiple_write_locations: Enables the account to write in + multiple locations + :type enable_multiple_write_locations: bool """ _validation = { @@ -110,9 +113,10 @@ class DatabaseAccount(Resource): 'read_locations': {'key': 'properties.readLocations', 'type': '[Location]'}, 'failover_policies': {'key': 'properties.failoverPolicies', 'type': '[FailoverPolicy]'}, 'virtual_network_rules': {'key': 'properties.virtualNetworkRules', 'type': '[VirtualNetworkRule]'}, + 'enable_multiple_write_locations': {'key': 'properties.enableMultipleWriteLocations', 'type': 'bool'}, } - def __init__(self, *, location: str, tags=None, kind="GlobalDocumentDB", provisioning_state: str=None, ip_range_filter: str=None, is_virtual_network_filter_enabled: bool=None, enable_automatic_failover: bool=None, consistency_policy=None, capabilities=None, virtual_network_rules=None, **kwargs) -> None: + def __init__(self, *, location: str, tags=None, kind="GlobalDocumentDB", provisioning_state: str=None, ip_range_filter: str=None, is_virtual_network_filter_enabled: bool=None, enable_automatic_failover: bool=None, consistency_policy=None, capabilities=None, virtual_network_rules=None, enable_multiple_write_locations: bool=None, **kwargs) -> None: super(DatabaseAccount, self).__init__(location=location, tags=tags, **kwargs) self.kind = kind self.provisioning_state = provisioning_state @@ -127,3 +131,4 @@ def __init__(self, *, location: str, tags=None, kind="GlobalDocumentDB", provisi self.read_locations = None self.failover_policies = None self.virtual_network_rules = virtual_network_rules + self.enable_multiple_write_locations = enable_multiple_write_locations diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/virtual_network_rule.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/virtual_network_rule.py index 6ea87e5236a0..0783593d217e 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/virtual_network_rule.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/virtual_network_rule.py @@ -18,12 +18,17 @@ class VirtualNetworkRule(Model): :param id: Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}. :type id: str + :param ignore_missing_vnet_service_endpoint: Create firewall rule before + the virtual network has vnet service endpoint enabled. + :type ignore_missing_vnet_service_endpoint: bool """ _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, + 'ignore_missing_vnet_service_endpoint': {'key': 'ignoreMissingVNetServiceEndpoint', 'type': 'bool'}, } def __init__(self, **kwargs): super(VirtualNetworkRule, self).__init__(**kwargs) self.id = kwargs.get('id', None) + self.ignore_missing_vnet_service_endpoint = kwargs.get('ignore_missing_vnet_service_endpoint', None) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/virtual_network_rule_py3.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/virtual_network_rule_py3.py index 707c8a3f615c..b85ed8569f57 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/virtual_network_rule_py3.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/models/virtual_network_rule_py3.py @@ -18,12 +18,17 @@ class VirtualNetworkRule(Model): :param id: Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}. :type id: str + :param ignore_missing_vnet_service_endpoint: Create firewall rule before + the virtual network has vnet service endpoint enabled. + :type ignore_missing_vnet_service_endpoint: bool """ _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, + 'ignore_missing_vnet_service_endpoint': {'key': 'ignoreMissingVNetServiceEndpoint', 'type': 'bool'}, } - def __init__(self, *, id: str=None, **kwargs) -> None: + def __init__(self, *, id: str=None, ignore_missing_vnet_service_endpoint: bool=None, **kwargs) -> None: super(VirtualNetworkRule, self).__init__(**kwargs) self.id = id + self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_operations.py index b5dc016df775..38a75081f098 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_operations.py @@ -90,7 +90,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -99,9 +99,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -174,7 +173,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -183,9 +182,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -251,7 +249,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -260,9 +258,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_partition_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_partition_operations.py index 7161a7d94b99..4b50575a8080 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_partition_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_partition_operations.py @@ -90,7 +90,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -99,9 +99,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -174,7 +173,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -183,9 +182,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_partition_region_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_partition_region_operations.py index 6e0db4e6a432..ee0114b6834d 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_partition_region_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_partition_region_operations.py @@ -94,7 +94,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -103,9 +103,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_region_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_region_operations.py index de907ce6479b..52f7f1696eb9 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_region_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/collection_region_operations.py @@ -94,7 +94,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -103,9 +103,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_account_region_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_account_region_operations.py index 787b0bae785b..114759936361 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_account_region_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_account_region_operations.py @@ -88,7 +88,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -97,9 +97,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_accounts_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_accounts_operations.py index c8e3a2f2a818..b486f0ec380e 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_accounts_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_accounts_operations.py @@ -73,7 +73,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,8 +82,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -122,6 +122,7 @@ def _patch_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -134,9 +135,8 @@ def _patch_initial( body_content = self._serialize.body(update_parameters, 'DatabaseAccountPatchParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -225,6 +225,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -237,9 +238,8 @@ def _create_or_update_initial( body_content = self._serialize.body(create_update_parameters, 'DatabaseAccountCreateUpdateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -327,7 +327,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,8 +335,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -421,9 +420,8 @@ def _failover_priority_change_initial( body_content = self._serialize.body(failover_parameters, 'FailoverPolicies') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -587,7 +584,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -596,9 +593,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -653,7 +649,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -662,8 +658,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -718,7 +714,7 @@ def list_connection_strings( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -727,8 +723,8 @@ def list_connection_strings( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -779,9 +775,8 @@ def _offline_region_initial( body_content = self._serialize.body(region_parameter_for_offline, 'RegionForOnlineOffline') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ErrorResponseException(self._deserialize, response) @@ -869,9 +864,8 @@ def _online_region_initial( body_content = self._serialize.body(region_parameter_for_online, 'RegionForOnlineOffline') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ErrorResponseException(self._deserialize, response) @@ -927,6 +921,71 @@ def get_long_running_output(response): return LROPoller(self._client, raw_result, get_long_running_output, polling_method) online_region.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/onlineRegion'} + def get_read_only_keys( + self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): + """Lists the read-only access keys for the specified Azure Cosmos DB + database account. + + :param resource_group_name: Name of an Azure resource group. + :type resource_group_name: str + :param account_name: Cosmos DB database account name. + :type account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DatabaseAccountListReadOnlyKeysResult or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.cosmosdb.models.DatabaseAccountListReadOnlyKeysResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_read_only_keys.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=50, min_length=3) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DatabaseAccountListReadOnlyKeysResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_read_only_keys.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/readonlykeys'} + def list_read_only_keys( self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): """Lists the read-only access keys for the specified Azure Cosmos DB @@ -963,7 +1022,7 @@ def list_read_only_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -972,8 +1031,8 @@ def list_read_only_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1024,9 +1083,8 @@ def _regenerate_key_initial( body_content = self._serialize.body(key_to_regenerate, 'DatabaseAccountRegenerateKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1114,7 +1172,6 @@ def check_name_exists( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1123,8 +1180,8 @@ def check_name_exists( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.head(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.head(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -1185,7 +1242,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1194,9 +1251,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1262,7 +1318,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1271,9 +1327,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1333,7 +1388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1342,9 +1397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_operations.py index c9cb0713069b..626e2282f4a2 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/database_operations.py @@ -87,7 +87,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -96,9 +96,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -167,7 +166,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -176,9 +175,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -241,7 +239,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -250,9 +248,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/operations.py index 245c7d5749b6..083e13901b83 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/partition_key_range_id_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/partition_key_range_id_operations.py index ae0f9366a7ba..a0860fa84e71 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/partition_key_range_id_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/partition_key_range_id_operations.py @@ -94,7 +94,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -103,9 +103,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/partition_key_range_id_region_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/partition_key_range_id_region_operations.py index d8299349f17a..2067f60b402e 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/partition_key_range_id_region_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/partition_key_range_id_region_operations.py @@ -98,7 +98,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -107,9 +107,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_operations.py index adf7d5313b57..07dead5e3111 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_operations.py @@ -85,7 +85,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -94,9 +94,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_source_target_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_source_target_operations.py index 45c02b4bba49..b2b667e70751 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_source_target_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_source_target_operations.py @@ -93,7 +93,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -102,9 +102,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_target_operations.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_target_operations.py index 06395707cc59..58f5674bfdb3 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_target_operations.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/operations/percentile_target_operations.py @@ -89,7 +89,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -98,9 +98,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/version.py b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/version.py index e9983c0d8c01..3c93989b8fef 100644 --- a/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/version.py +++ b/azure-mgmt-cosmosdb/azure/mgmt/cosmosdb/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.4.1" +VERSION = "0.5.2" diff --git a/azure-mgmt-cosmosdb/azure_bdist_wheel.py b/azure-mgmt-cosmosdb/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-cosmosdb/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-cosmosdb/build.json b/azure-mgmt-cosmosdb/build.json deleted file mode 100644 index a7b497bea825..000000000000 --- a/azure-mgmt-cosmosdb/build.json +++ /dev/null @@ -1,226 +0,0 @@ -{ - "autorest": [ - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4168", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/async-io": "~1.0.22", - "@microsoft.azure/extension": "~1.2.12", - "@types/commonmark": "^0.27.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.28", - "@types/pify": "0.0.28", - "@types/source-map": "^0.5.0", - "@types/yargs": "^8.0.2", - "commonmark": "^0.27.0", - "file-url": "^2.0.2", - "get-uri": "^2.0.0", - "jsonpath": "^0.2.11", - "linq-es2015": "^2.4.25", - "mocha": "3.4.2", - "mocha-typescript": "1.1.5", - "pify": "^3.0.0", - "safe-eval": "^0.3.0", - "shx": "^0.2.2", - "source-map": "^0.5.6", - "source-map-support": "^0.4.15", - "strip-bom": "^3.0.0", - "typescript": "2.5.3", - "untildify": "^3.0.2", - "urijs": "^1.18.10", - "vscode-jsonrpc": "^3.3.1", - "yaml-ast-parser": "https://github.com/olydis/yaml-ast-parser/releases/download/0.0.34/yaml-ast-parser-0.0.34.tgz", - "yargs": "^8.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "_shasum": "33813111fc9bfa488bd600fbba48bc53cc9182c7", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest-core@2.0.4168", - "_from": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "_where": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.0.21", - "dependencies": { - "dotnet-2.0.0": "^1.3.2" - }, - "optionalDependencies": {}, - "devDependencies": { - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.1.1", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "3ce7d3939124b31830be15e5de99b9b7768afb90", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.0.21", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.1.22", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "ca425289fa38a210d279729048a4a91673f09c67", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.1.22", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.python", - "version": "2.0.17", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "^1.9.0", - "autorest": "^2.0.0", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "_shasum": "84a951c19c502343726cfe33cf43cefa76219b39", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.python@2.0.17", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python", - "_where": "/root/.autorest/@microsoft.azure_autorest.python@2.0.17/node_modules/@microsoft.azure/autorest.python" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - } - ], - "autorest_bootstrap": {}, - "date": "2017-10-18T20:58:31Z" -} \ No newline at end of file diff --git a/azure-mgmt-cosmosdb/sdk_packaging.toml b/azure-mgmt-cosmosdb/sdk_packaging.toml new file mode 100644 index 000000000000..fca0c23c016e --- /dev/null +++ b/azure-mgmt-cosmosdb/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-cosmosdb" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Cosmos DB Management" +package_doc_id = "cosmosdb" +is_stable = false +is_arm = true diff --git a/azure-mgmt-cosmosdb/setup.cfg b/azure-mgmt-cosmosdb/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-cosmosdb/setup.cfg +++ b/azure-mgmt-cosmosdb/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-cosmosdb/setup.py b/azure-mgmt-cosmosdb/setup.py index e6eefb660f17..4bec3ee72d0e 100644 --- a/azure-mgmt-cosmosdb/setup.py +++ b/azure-mgmt-cosmosdb/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-cosmosdb" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-cosmosdb/tests/recordings/test_mgmt_cosmosdb.test_accounts_features.yaml b/azure-mgmt-cosmosdb/tests/recordings/test_mgmt_cosmosdb.test_accounts_features.yaml index 5f09243f4a03..37bba0514a3a 100644 --- a/azure-mgmt-cosmosdb/tests/recordings/test_mgmt_cosmosdb.test_accounts_features.yaml +++ b/azure-mgmt-cosmosdb/tests/recordings/test_mgmt_cosmosdb.test_accounts_features.yaml @@ -1,39 +1,371 @@ interactions: - request: - body: null + body: '{"location": "westus", "properties": {"locations": [{"locationName": "westus"}], + "databaseAccountOfferType": "Standard"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] + Content-Length: ['121'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9?api-version=2015-04-08 + response: + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9","name":"pycosmosdbtest640310f9","location":"West + US","type":"Microsoft.DocumentDB/databaseAccounts","kind":"GlobalDocumentDB","tags":{},"properties":{"provisioningState":"Initializing","ipRangeFilter":"","enableAutomaticFailover":false,"enableMultipleWriteLocations":false,"isVirtualNetworkFilterEnabled":false,"virtualNetworkRules":[],"databaseAccountOfferType":"Standard","consistencyPolicy":{"defaultConsistencyLevel":"Session","maxIntervalInSeconds":5,"maxStalenessPrefix":100},"configurationOverrides":{},"writeLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West + US","provisioningState":"Initializing","failoverPriority":0}],"readLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West + US","provisioningState":"Initializing","failoverPriority":0}],"failoverPolicies":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West + US","failoverPriority":0}],"capabilities":[]}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['1108'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:39:37 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 200, message: Ok} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:40:08 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:40:39 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:41:10 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:41:40 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:42:10 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:42:41 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:43:11 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:43:42 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:44:13 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:44:42 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Dequeued","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:45:13 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08 + response: + body: {string: '{"status":"Succeeded","error":{}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['33'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/operationResults/cd3ce313-dfed-4543-b03f-c5b6be1c7137?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:45:43 GMT'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + status: {code: 200, message: Ok} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] accept-language: [en-US] - x-ms-client-request-id: [1f342912-5ad2-11e7-819b-ecb1d756380e] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9?api-version=2015-04-08 response: body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9","name":"pycosmosdbtest640310f9","location":"West - US","type":"Microsoft.DocumentDB/databaseAccounts","kind":"GlobalDocumentDB","tags":{},"properties":{"provisioningState":"Succeeded","documentEndpoint":"https://pycosmosdbtest640310f9.documents.azure.com:443/","ipRangeFilter":"","enableAutomaticFailover":false,"databaseAccountOfferType":"Standard","consistencyPolicy":{"defaultConsistencyLevel":"Session","maxIntervalInSeconds":5,"maxStalenessPrefix":100},"configurationOverrides":{},"writeLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West + US","type":"Microsoft.DocumentDB/databaseAccounts","kind":"GlobalDocumentDB","tags":{},"properties":{"provisioningState":"Succeeded","documentEndpoint":"https://pycosmosdbtest640310f9.documents.azure.com:443/","ipRangeFilter":"","enableAutomaticFailover":false,"enableMultipleWriteLocations":false,"isVirtualNetworkFilterEnabled":false,"virtualNetworkRules":[],"databaseAccountOfferType":"Standard","consistencyPolicy":{"defaultConsistencyLevel":"Session","maxIntervalInSeconds":5,"maxStalenessPrefix":100},"configurationOverrides":{},"writeLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West US","documentEndpoint":"https://pycosmosdbtest640310f9-westus.documents.azure.com:443/","provisioningState":"Succeeded","failoverPriority":0}],"readLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West US","documentEndpoint":"https://pycosmosdbtest640310f9-westus.documents.azure.com:443/","provisioningState":"Succeeded","failoverPriority":0}],"failoverPolicies":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West - US","failoverPriority":0}]}}'} - headers: - Cache-Control: ['no-store, no-cache'] - Content-Location: ['https://management.documents.azure.com:450/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9?api-version=2015-04-08'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:46:56 GMT'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['1226'] - x-ms-correlation-request-id: [7d397846-d2b3-48ca-b154-e48102d807c2] - x-ms-gatewayversion: [version=1.14.33.2] - x-ms-ratelimit-remaining-subscription-reads: ['14998'] - x-ms-request-id: [7d397846-d2b3-48ca-b154-e48102d807c2] - x-ms-routing-request-id: ['WESTUS:20170627T004657Z:7d397846-d2b3-48ca-b154-e48102d807c2'] + US","failoverPriority":0}],"capabilities":[]}}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['1344'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:45:44 GMT'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] status: {code: 200, message: Ok} - request: body: null @@ -41,35 +373,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] accept-language: [en-US] - x-ms-client-request-id: [1f6748f6-5ad2-11e7-b4b0-ecb1d756380e] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts?api-version=2015-04-08 response: body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9","name":"pycosmosdbtest640310f9","location":"West - US","type":"Microsoft.DocumentDB/databaseAccounts","kind":"GlobalDocumentDB","tags":{},"properties":{"provisioningState":"Succeeded","documentEndpoint":"https://pycosmosdbtest640310f9.documents.azure.com:443/","ipRangeFilter":"","enableAutomaticFailover":false,"databaseAccountOfferType":"Standard","consistencyPolicy":{"defaultConsistencyLevel":"Session","maxIntervalInSeconds":5,"maxStalenessPrefix":100},"configurationOverrides":{},"writeLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West + US","type":"Microsoft.DocumentDB/databaseAccounts","kind":"GlobalDocumentDB","tags":{},"properties":{"provisioningState":"Succeeded","documentEndpoint":"https://pycosmosdbtest640310f9.documents.azure.com:443/","ipRangeFilter":"","enableAutomaticFailover":false,"enableMultipleWriteLocations":false,"isVirtualNetworkFilterEnabled":false,"virtualNetworkRules":[],"databaseAccountOfferType":"Standard","consistencyPolicy":{"defaultConsistencyLevel":"Session","maxIntervalInSeconds":5,"maxStalenessPrefix":100},"configurationOverrides":{},"writeLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West US","documentEndpoint":"https://pycosmosdbtest640310f9-westus.documents.azure.com:443/","provisioningState":"Succeeded","failoverPriority":0}],"readLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West US","documentEndpoint":"https://pycosmosdbtest640310f9-westus.documents.azure.com:443/","provisioningState":"Succeeded","failoverPriority":0}],"failoverPolicies":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West - US","failoverPriority":0}]}}]}'} - headers: - Cache-Control: ['no-store, no-cache'] - Content-Location: ['https://management.documents.azure.com:450/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts?api-version=2015-04-08'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:46:57 GMT'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['1238'] - x-ms-correlation-request-id: [93bfd4c6-c221-402a-9c3e-e5728ecd2e6f] - x-ms-gatewayversion: [version=1.14.55.2] - x-ms-ratelimit-remaining-subscription-reads: ['14999'] - x-ms-request-id: [93bfd4c6-c221-402a-9c3e-e5728ecd2e6f] - x-ms-routing-request-id: ['WESTUS:20170627T004658Z:93bfd4c6-c221-402a-9c3e-e5728ecd2e6f'] + US","failoverPriority":0}],"capabilities":[]}}]}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['1356'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:45:45 GMT'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] status: {code: 200, message: Ok} - request: body: null @@ -77,39 +404,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] accept-language: [en-US] - x-ms-client-request-id: [1fe5f718-5ad2-11e7-bc76-ecb1d756380e] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/databaseAccounts?api-version=2015-04-08 response: body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9","name":"pycosmosdbtest640310f9","location":"West - US","type":"Microsoft.DocumentDB/databaseAccounts","kind":"GlobalDocumentDB","tags":{},"properties":{"provisioningState":"Succeeded","documentEndpoint":"https://pycosmosdbtest640310f9.documents.azure.com:443/","ipRangeFilter":"","enableAutomaticFailover":false,"databaseAccountOfferType":"Standard","consistencyPolicy":{"defaultConsistencyLevel":"Session","maxIntervalInSeconds":5,"maxStalenessPrefix":100},"configurationOverrides":{},"writeLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West + US","type":"Microsoft.DocumentDB/databaseAccounts","kind":"GlobalDocumentDB","tags":{},"properties":{"provisioningState":"Succeeded","documentEndpoint":"https://pycosmosdbtest640310f9.documents.azure.com:443/","ipRangeFilter":"","enableAutomaticFailover":false,"enableMultipleWriteLocations":false,"isVirtualNetworkFilterEnabled":false,"virtualNetworkRules":[],"databaseAccountOfferType":"Standard","consistencyPolicy":{"defaultConsistencyLevel":"Session","maxIntervalInSeconds":5,"maxStalenessPrefix":100},"configurationOverrides":{},"writeLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West US","documentEndpoint":"https://pycosmosdbtest640310f9-westus.documents.azure.com:443/","provisioningState":"Succeeded","failoverPriority":0}],"readLocations":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West US","documentEndpoint":"https://pycosmosdbtest640310f9-westus.documents.azure.com:443/","provisioningState":"Succeeded","failoverPriority":0}],"failoverPolicies":[{"id":"pycosmosdbtest640310f9-westus","locationName":"West - US","failoverPriority":0}]}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MonitorTestsDoNotDelete/providers/Microsoft.DocumentDB/databaseAccounts/pymonitortest","name":"pymonitortest","location":"West - US","type":"Microsoft.DocumentDB/databaseAccounts","kind":"GlobalDocumentDB","tags":{},"properties":{"provisioningState":"Succeeded","documentEndpoint":"https://pymonitortest.documents.azure.com:443/","ipRangeFilter":"","enableAutomaticFailover":false,"databaseAccountOfferType":"Standard","consistencyPolicy":{"defaultConsistencyLevel":"Session","maxIntervalInSeconds":5,"maxStalenessPrefix":100},"configurationOverrides":{},"writeLocations":[{"id":"pymonitortest-westus","locationName":"West - US","documentEndpoint":"https://pymonitortest-westus.documents.azure.com:443/","provisioningState":"Succeeded","failoverPriority":0}],"readLocations":[{"id":"pymonitortest-westus","locationName":"West - US","documentEndpoint":"https://pymonitortest-westus.documents.azure.com:443/","provisioningState":"Succeeded","failoverPriority":0}],"failoverPolicies":[{"id":"pymonitortest-westus","locationName":"West - US","failoverPriority":0}]}}]}'} - headers: - Cache-Control: ['no-store, no-cache'] - Content-Location: ['https://management.documents.azure.com:450/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DocumentDB/databaseAccounts?api-version=2015-04-08'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:46:58 GMT'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] - content-length: ['2367'] - x-ms-correlation-request-id: [37346454-f14b-4e17-a86a-2fc321c93552] - x-ms-gatewayversion: [version=1.14.55.2] - x-ms-ratelimit-remaining-subscription-reads: ['14997'] - x-ms-request-id: [37346454-f14b-4e17-a86a-2fc321c93552] - x-ms-routing-request-id: ['WESTUS:20170627T004658Z:37346454-f14b-4e17-a86a-2fc321c93552'] + US","failoverPriority":0}],"capabilities":[]}}]}'} + headers: + cache-control: ['no-store, no-cache'] + content-length: ['1356'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/providers/Microsoft.DocumentDB/databaseAccounts?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:45:45 GMT'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] status: {code: 200, message: Ok} - request: body: '{"failoverPolicies": [{"locationName": "westus", "failoverPriority": 0}]}' @@ -119,28 +437,25 @@ interactions: Connection: [keep-alive] Content-Length: ['73'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] accept-language: [en-US] - x-ms-client-request-id: [205ba9e6-5ad2-11e7-9f3f-ecb1d756380e] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/failoverPriorityChange?api-version=2015-04-08 response: body: {string: '{"status":"Enqueued","error":{}}'} headers: - Cache-Control: ['no-store, no-cache'] - Content-Length: ['32'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:47:01 GMT'] - Location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/failoverPriorityChange/operationResults/96109237-d52f-45dc-b79f-4e5be1eda6ba?api-version=2015-04-08'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - x-ms-correlation-request-id: [e73b4d3d-e704-4c36-a024-4c14e4813c00] - x-ms-gatewayversion: [version=1.14.55.2] + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:45:47 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/failoverPriorityChange/operationResults/c2b8961a-826c-41ad-a8a1-030e21d75646?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] x-ms-ratelimit-remaining-subscription-writes: ['1199'] - x-ms-request-id: [96109237-d52f-45dc-b79f-4e5be1eda6ba] - x-ms-routing-request-id: ['WESTUS2:20170627T004702Z:e73b4d3d-e704-4c36-a024-4c14e4813c00'] status: {code: 202, message: Accepted} - request: body: null @@ -148,27 +463,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [205ba9e6-5ad2-11e7-9f3f-ecb1d756380e] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/failoverPriorityChange/operationResults/96109237-d52f-45dc-b79f-4e5be1eda6ba?api-version=2015-04-08 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/failoverPriorityChange/operationResults/c2b8961a-826c-41ad-a8a1-030e21d75646?api-version=2015-04-08 response: body: {string: ''} headers: - Cache-Control: ['no-store, no-cache'] - Content-Length: ['0'] - Date: ['Tue, 27 Jun 2017 00:47:31 GMT'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - x-ms-activity-id: [205ba9e6-5ad2-11e7-9f3f-ecb1d756380e] - x-ms-correlation-request-id: [61901bd8-3fa2-4ab8-9dd8-9ccef1307ecb] - x-ms-ratelimit-remaining-subscription-reads: ['14998'] - x-ms-request-id: [61901bd8-3fa2-4ab8-9dd8-9ccef1307ecb] - x-ms-routing-request-id: ['WESTUS:20170627T004732Z:61901bd8-3fa2-4ab8-9dd8-9ccef1307ecb'] + cache-control: ['no-store, no-cache'] + content-length: ['0'] + date: ['Mon, 08 Oct 2018 20:46:17 GMT'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-activity-id: [21a15fa8-cb3b-11e8-816d-ecb1d756380e] status: {code: 200, message: Ok} - request: body: null @@ -177,30 +486,26 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] accept-language: [en-US] - x-ms-client-request-id: [345d17dc-5ad2-11e7-884d-ecb1d756380e] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/listKeys?api-version=2015-04-08 response: - body: {string: '{"primaryMasterKey":"phUs3qDIL0F6Fg2KOZLgEMcEljky9VhmtqCvo0wWHfAsQFhpoYG2crRZk7z5nUuaBXHCMeKtHPcaRcYOhaF2vg==","secondaryMasterKey":"uJnsjaQNr9PgWkZPPZ9hZiJnzMIDTgYynS6N2zB4BAnbWytZiJjUvKCjiSbq9Zu3RySs84pE0XJOaD2qhBMP8Q==","primaryReadonlyMasterKey":"YXvVtPsCnnwODeE9Zh8XFpz4yRLi7NgQFJvr6u8HDvInZGYkYSrespkbdj9dJww3vN81YcEpF0yhyvzqKbobSQ==","secondaryReadonlyMasterKey":"1oikvi1OYupPSVybwNgVgwATD7nVoP44piAFFEgsWQvg5gvIjcNcQKHUQLZJs8jaGjk8maulLUCRd5IulMp48g=="}'} - headers: - Cache-Control: ['no-store, no-cache'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:47:32 GMT'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] + body: {string: '{"primaryMasterKey":"tVkL0QkNYnmcB6hxVMavzuOpVPxt62HvyoJyJ3stg2rFRAZGgjbUNccJw6kvzJTRG8qzBPTEM8DvEPiQi6y6yw==","secondaryMasterKey":"EFG1k59hyXKXj42aH9VdGHMIdqGodiJRSKV5zynUH14zd3I09Pg8ZEANe1mGQauf4jiUaSwQlkd38DvsWctJkg==","primaryReadonlyMasterKey":"YktaWtgT2Z1mwE1iCW7AOyUulqtTzqyMhz5JQLoUvMQXIWh4GnQg10QBPLBaoffEhEWCXSzzKILP86YxEiWlrQ==","secondaryReadonlyMasterKey":"ZCb2xqBrqpNC6b6p2fPtMExH7HhgUGKCOh7p82ryGBZnabSOk1G2IVpgOFoViiPf9k3xVeDSXW1anJ25kFq26Q=="}'} + headers: + cache-control: ['no-store, no-cache'] content-length: ['461'] - x-ms-correlation-request-id: [b2401d95-402c-49bc-9fd0-6525f3a34c9e] - x-ms-gatewayversion: [version=1.14.55.2] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - x-ms-request-id: [b2401d95-402c-49bc-9fd0-6525f3a34c9e] - x-ms-routing-request-id: ['WESTUS:20170627T004732Z:b2401d95-402c-49bc-9fd0-6525f3a34c9e'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:46:19 GMT'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: Ok} - request: body: null @@ -208,31 +513,27 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] + Content-Length: ['0'] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] accept-language: [en-US] - x-ms-client-request-id: [34ad085c-5ad2-11e7-bf95-ecb1d756380e] - method: GET + method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/readonlykeys?api-version=2015-04-08 response: - body: {string: '{"primaryReadonlyMasterKey":"YXvVtPsCnnwODeE9Zh8XFpz4yRLi7NgQFJvr6u8HDvInZGYkYSrespkbdj9dJww3vN81YcEpF0yhyvzqKbobSQ==","secondaryReadonlyMasterKey":"1oikvi1OYupPSVybwNgVgwATD7nVoP44piAFFEgsWQvg5gvIjcNcQKHUQLZJs8jaGjk8maulLUCRd5IulMp48g=="}'} - headers: - Cache-Control: ['no-store, no-cache'] - Content-Location: ['https://management.documents.azure.com:450/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/readonlykeys?api-version=2015-04-08'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:47:33 GMT'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] + body: {string: '{"primaryReadonlyMasterKey":"YktaWtgT2Z1mwE1iCW7AOyUulqtTzqyMhz5JQLoUvMQXIWh4GnQg10QBPLBaoffEhEWCXSzzKILP86YxEiWlrQ==","secondaryReadonlyMasterKey":"ZCb2xqBrqpNC6b6p2fPtMExH7HhgUGKCOh7p82ryGBZnabSOk1G2IVpgOFoViiPf9k3xVeDSXW1anJ25kFq26Q=="}'} + headers: + cache-control: ['no-store, no-cache'] content-length: ['239'] - x-ms-correlation-request-id: [17d8289b-cc30-4106-9a73-a45e4f91812d] - x-ms-gatewayversion: [version=1.14.33.2] - x-ms-ratelimit-remaining-subscription-reads: ['14999'] - x-ms-request-id: [17d8289b-cc30-4106-9a73-a45e4f91812d] - x-ms-routing-request-id: ['WESTUS:20170627T004733Z:17d8289b-cc30-4106-9a73-a45e4f91812d'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:46:19 GMT'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: Ok} - request: body: '{"keyKind": "primary"}' @@ -242,28 +543,25 @@ interactions: Connection: [keep-alive] Content-Length: ['22'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] accept-language: [en-US] - x-ms-client-request-id: [3501d124-5ad2-11e7-aa65-ecb1d756380e] method: POST uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey?api-version=2015-04-08 response: body: {string: '{"status":"Enqueued","error":{}}'} headers: - Cache-Control: ['no-store, no-cache'] - Content-Length: ['32'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:47:35 GMT'] - Location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2482ba80-35f1-4bd9-96d8-a1510ff5f1b9?api-version=2015-04-08'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - x-ms-correlation-request-id: [3147cd61-a0fe-422c-90ac-99b7b33c9be0] - x-ms-gatewayversion: [version=1.14.33.2] + cache-control: ['no-store, no-cache'] + content-length: ['32'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:46:21 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2d02606a-b4db-49ed-8a9b-5d38a0c92980?api-version=2015-04-08'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] x-ms-ratelimit-remaining-subscription-writes: ['1199'] - x-ms-request-id: [2482ba80-35f1-4bd9-96d8-a1510ff5f1b9] - x-ms-routing-request-id: ['WESTUS:20170627T004735Z:3147cd61-a0fe-422c-90ac-99b7b33c9be0'] status: {code: 202, message: Accepted} - request: body: null @@ -271,61 +569,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [3501d124-5ad2-11e7-aa65-ecb1d756380e] + User-Agent: [python/3.6.4 (Windows-10-10.0.17763-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-cosmosdb/0.3.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2482ba80-35f1-4bd9-96d8-a1510ff5f1b9?api-version=2015-04-08 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2d02606a-b4db-49ed-8a9b-5d38a0c92980?api-version=2015-04-08 response: - body: {string: '{"status":"Dequeued","error":{}}'} + body: {string: '{"primaryMasterKey":"MR9IG9UgUXxTaVy3gcrNpssfD5BfDEg3yWnfBmglJng3C1ZfZ4OJ5L9JsNoQikBHr2JM6PwBJwvNbyXgovtuzA==","secondaryMasterKey":"EFG1k59hyXKXj42aH9VdGHMIdqGodiJRSKV5zynUH14zd3I09Pg8ZEANe1mGQauf4jiUaSwQlkd38DvsWctJkg==","primaryReadonlyMasterKey":"YktaWtgT2Z1mwE1iCW7AOyUulqtTzqyMhz5JQLoUvMQXIWh4GnQg10QBPLBaoffEhEWCXSzzKILP86YxEiWlrQ==","secondaryReadonlyMasterKey":"ZCb2xqBrqpNC6b6p2fPtMExH7HhgUGKCOh7p82ryGBZnabSOk1G2IVpgOFoViiPf9k3xVeDSXW1anJ25kFq26Q=="}'} headers: - Cache-Control: ['no-store, no-cache'] - Content-Length: ['32'] - Content-Location: ['https://management.documents.azure.com:450/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2482ba80-35f1-4bd9-96d8-a1510ff5f1b9?api-version=2015-04-08'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:48:06 GMT'] - Location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2482ba80-35f1-4bd9-96d8-a1510ff5f1b9?api-version=2015-04-08'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - x-ms-correlation-request-id: [cae26ecf-3fc8-4111-8f95-7f92568c9317] - x-ms-gatewayversion: [version=1.14.33.2] - x-ms-ratelimit-remaining-subscription-reads: ['14995'] - x-ms-request-id: [2482ba80-35f1-4bd9-96d8-a1510ff5f1b9] - x-ms-routing-request-id: ['WESTUS:20170627T004806Z:cae26ecf-3fc8-4111-8f95-7f92568c9317'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.17.3 msrest/0.4.11 - msrest_azure/0.4.9 cosmosdb/0.2.0 Azure-SDK-For-Python] - accept-language: [en-US] - x-ms-client-request-id: [3501d124-5ad2-11e7-aa65-ecb1d756380e] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2482ba80-35f1-4bd9-96d8-a1510ff5f1b9?api-version=2015-04-08 - response: - body: {string: '{"primaryMasterKey":"f2EzigVcnk7s3xFkEoD4TebjeEduiEdJJcvlg6eSMjZ3oxgT2ETZZotj7z3Md16ZRy68fIfT1Bs4Oa4nWJOEHg==","secondaryMasterKey":"uJnsjaQNr9PgWkZPPZ9hZiJnzMIDTgYynS6N2zB4BAnbWytZiJjUvKCjiSbq9Zu3RySs84pE0XJOaD2qhBMP8Q==","primaryReadonlyMasterKey":"YXvVtPsCnnwODeE9Zh8XFpz4yRLi7NgQFJvr6u8HDvInZGYkYSrespkbdj9dJww3vN81YcEpF0yhyvzqKbobSQ==","secondaryReadonlyMasterKey":"1oikvi1OYupPSVybwNgVgwATD7nVoP44piAFFEgsWQvg5gvIjcNcQKHUQLZJs8jaGjk8maulLUCRd5IulMp48g=="}'} - headers: - Cache-Control: ['no-store, no-cache'] - Content-Location: ['https://management.documents.azure.com:450/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2482ba80-35f1-4bd9-96d8-a1510ff5f1b9?api-version=2015-04-08'] - Content-Type: [application/json] - Date: ['Tue, 27 Jun 2017 00:48:36 GMT'] - Pragma: [no-cache] - Server: [Microsoft-HTTPAPI/2.0] - Strict-Transport-Security: [max-age=31536000; includeSubDomains] - Transfer-Encoding: [chunked] - Vary: [Accept-Encoding] + cache-control: ['no-store, no-cache'] content-length: ['461'] - x-ms-correlation-request-id: [a9501ddb-b7d4-48ec-800a-9cc6a99ea150] - x-ms-gatewayversion: [version=1.14.55.2] - x-ms-ratelimit-remaining-subscription-reads: ['14998'] - x-ms-request-id: [a9501ddb-b7d4-48ec-800a-9cc6a99ea150] - x-ms-routing-request-id: ['WESTUS:20170627T004836Z:a9501ddb-b7d4-48ec-800a-9cc6a99ea150'] + content-location: ['https://management.documents.azure.com:450/subscriptions/00977cdb-163f-435f-9c32-39ec8ae61f4d/resourceGroups/test_mgmt_cosmosdb_test_accounts_features640310f9/providers/Microsoft.DocumentDB/databaseAccounts/pycosmosdbtest640310f9/regenerateKey/operationResults/2d02606a-b4db-49ed-8a9b-5d38a0c92980?api-version=2015-04-08'] + content-type: [application/json] + date: ['Mon, 08 Oct 2018 20:46:52 GMT'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-gatewayversion: [version=2.1.0.0] status: {code: 200, message: Ok} version: 1 diff --git a/azure-mgmt-datafactory/MANIFEST.in b/azure-mgmt-datafactory/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-datafactory/MANIFEST.in +++ b/azure-mgmt-datafactory/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-datafactory/README.rst b/azure-mgmt-datafactory/README.rst index 1d331b91cec5..04ec9cafb387 100644 --- a/azure-mgmt-datafactory/README.rst +++ b/azure-mgmt-datafactory/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Data Factory Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -36,7 +36,7 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `DataFactory Management +For code examples, see `Data Factory Management `__ on docs.microsoft.com. diff --git a/azure-mgmt-datafactory/azure/__init__.py b/azure-mgmt-datafactory/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-datafactory/azure/__init__.py +++ b/azure-mgmt-datafactory/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datafactory/azure/mgmt/__init__.py b/azure-mgmt-datafactory/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-datafactory/azure/mgmt/__init__.py +++ b/azure-mgmt-datafactory/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datafactory/azure_bdist_wheel.py b/azure-mgmt-datafactory/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-datafactory/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-datafactory/sdk_packaging.toml b/azure-mgmt-datafactory/sdk_packaging.toml new file mode 100644 index 000000000000..9aeaa41a975a --- /dev/null +++ b/azure-mgmt-datafactory/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-datafactory" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Data Factory Management" +package_doc_id = "datafactory" +is_stable = false +is_arm = true diff --git a/azure-mgmt-datafactory/setup.cfg b/azure-mgmt-datafactory/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-datafactory/setup.cfg +++ b/azure-mgmt-datafactory/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-datafactory/setup.py b/azure-mgmt-datafactory/setup.py index 94a4f2de250d..4b3ca4777aca 100644 --- a/azure-mgmt-datafactory/setup.py +++ b/azure-mgmt-datafactory/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-datafactory" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-datalake-analytics/MANIFEST.in b/azure-mgmt-datalake-analytics/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-datalake-analytics/MANIFEST.in +++ b/azure-mgmt-datalake-analytics/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-datalake-analytics/README.rst b/azure-mgmt-datalake-analytics/README.rst index 692903b9d072..54acd0daecf2 100644 --- a/azure-mgmt-datalake-analytics/README.rst +++ b/azure-mgmt-datalake-analytics/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Data Lake Analytics Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-datalake-analytics/azure/__init__.py b/azure-mgmt-datalake-analytics/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-datalake-analytics/azure/__init__.py +++ b/azure-mgmt-datalake-analytics/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-analytics/azure/mgmt/__init__.py b/azure-mgmt-datalake-analytics/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-datalake-analytics/azure/mgmt/__init__.py +++ b/azure-mgmt-datalake-analytics/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-analytics/azure/mgmt/datalake/__init__.py b/azure-mgmt-datalake-analytics/azure/mgmt/datalake/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-datalake-analytics/azure/mgmt/datalake/__init__.py +++ b/azure-mgmt-datalake-analytics/azure/mgmt/datalake/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-analytics/azure_bdist_wheel.py b/azure-mgmt-datalake-analytics/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-datalake-analytics/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-datalake-analytics/setup.cfg b/azure-mgmt-datalake-analytics/setup.cfg index e6761b2e2518..3c6e79cf31da 100644 --- a/azure-mgmt-datalake-analytics/setup.cfg +++ b/azure-mgmt-datalake-analytics/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-datalake-nspkg \ No newline at end of file diff --git a/azure-mgmt-datalake-analytics/setup.py b/azure-mgmt-datalake-analytics/setup.py index c2cb4f55906d..68f340388091 100644 --- a/azure-mgmt-datalake-analytics/setup.py +++ b/azure-mgmt-datalake-analytics/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-datalake-analytics" @@ -72,13 +66,23 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + 'azure.mgmt.datalake', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-datalake-nspkg'], + } ) diff --git a/azure-mgmt-datalake-nspkg/MANIFEST.in b/azure-mgmt-datalake-nspkg/MANIFEST.in index bb37a2723dae..1c9ebaab0de4 100644 --- a/azure-mgmt-datalake-nspkg/MANIFEST.in +++ b/azure-mgmt-datalake-nspkg/MANIFEST.in @@ -1 +1,4 @@ include *.rst +include azure/__init__.py +include azure/mgmt/__init__.py +include azure/mgmt/datalake/__init__.py diff --git a/azure-mgmt-datalake-nspkg/README.rst b/azure-mgmt-datalake-nspkg/README.rst index 49c7fe633b17..e70fee189c2a 100644 --- a/azure-mgmt-datalake-nspkg/README.rst +++ b/azure-mgmt-datalake-nspkg/README.rst @@ -5,6 +5,9 @@ This is the Microsoft Azure Data Lake Management namespace package. This package is not intended to be installed directly by the end user. +Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 `__ as namespace package strategy. +To avoid issues with package servers that does not support `python_requires`, a Python 3 package is installed but is empty. + It provides the necessary files for other packages to extend the azure.mgmt.datalake namespace. If you are looking to install the Azure client libraries, see the diff --git a/azure-mgmt-datalake-nspkg/azure/__init__.py b/azure-mgmt-datalake-nspkg/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-datalake-nspkg/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-nspkg/azure/mgmt/__init__.py b/azure-mgmt-datalake-nspkg/azure/mgmt/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-datalake-nspkg/azure/mgmt/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-nspkg/azure/mgmt/datalake/__init__.py b/azure-mgmt-datalake-nspkg/azure/mgmt/datalake/__init__.py index e69de29bb2d1..0260537a02bb 100644 --- a/azure-mgmt-datalake-nspkg/azure/mgmt/datalake/__init__.py +++ b/azure-mgmt-datalake-nspkg/azure/mgmt/datalake/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-nspkg/sdk_packaging.toml b/azure-mgmt-datalake-nspkg/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-mgmt-datalake-nspkg/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-mgmt-datalake-nspkg/setup.py b/azure-mgmt-datalake-nspkg/setup.py index de929d8e734e..67613203bd80 100644 --- a/azure-mgmt-datalake-nspkg/setup.py +++ b/azure-mgmt-datalake-nspkg/setup.py @@ -5,7 +5,7 @@ # Licensed under the MIT License. See License.txt in the project root for # license information. #-------------------------------------------------------------------------- - +import sys from setuptools import setup # azure v0.x is not compatible with this package @@ -23,34 +23,36 @@ except ImportError: pass +PACKAGES = [] +# Do an empty package on Python 3 and not python_requires, since not everybody is ready +# https://github.com/Azure/azure-sdk-for-python/issues/3447 +# https://github.com/Azure/azure-sdk-for-python/issues/3481 +if sys.version_info[0] < 3: + PACKAGES = ['azure.mgmt.datalake'] + setup( name='azure-mgmt-datalake-nspkg', - version='2.0.0', + version='3.0.1', description='Microsoft Azure Data Lake Management Namespace Package [Internal]', long_description=open('README.rst', 'r').read(), license='MIT License', author='Microsoft Corporation', - author_email='ptvshelp@microsoft.com', + author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ 'Development Status :: 5 - Production/Stable', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=[ - 'azure', - 'azure.mgmt', - 'azure.mgmt.datalake', - ], + packages=PACKAGES, install_requires=[ - 'azure-mgmt-nspkg>=2.0.0', + 'azure-mgmt-nspkg>=3.0.0', ], ) diff --git a/azure-mgmt-datalake-store/MANIFEST.in b/azure-mgmt-datalake-store/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-datalake-store/MANIFEST.in +++ b/azure-mgmt-datalake-store/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-datalake-store/README.rst b/azure-mgmt-datalake-store/README.rst index dd4607d585af..6b24c7857dc9 100644 --- a/azure-mgmt-datalake-store/README.rst +++ b/azure-mgmt-datalake-store/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Data Lake Store Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-datalake-store/azure/__init__.py b/azure-mgmt-datalake-store/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-datalake-store/azure/__init__.py +++ b/azure-mgmt-datalake-store/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-store/azure/mgmt/__init__.py b/azure-mgmt-datalake-store/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-datalake-store/azure/mgmt/__init__.py +++ b/azure-mgmt-datalake-store/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-store/azure/mgmt/datalake/__init__.py b/azure-mgmt-datalake-store/azure/mgmt/datalake/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-datalake-store/azure/mgmt/datalake/__init__.py +++ b/azure-mgmt-datalake-store/azure/mgmt/datalake/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datalake-store/azure_bdist_wheel.py b/azure-mgmt-datalake-store/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-datalake-store/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-datalake-store/setup.cfg b/azure-mgmt-datalake-store/setup.cfg index e6761b2e2518..3c6e79cf31da 100644 --- a/azure-mgmt-datalake-store/setup.cfg +++ b/azure-mgmt-datalake-store/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-datalake-nspkg \ No newline at end of file diff --git a/azure-mgmt-datalake-store/setup.py b/azure-mgmt-datalake-store/setup.py index b60626b64aef..fe17d91a300b 100644 --- a/azure-mgmt-datalake-store/setup.py +++ b/azure-mgmt-datalake-store/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-datalake-store" @@ -72,13 +66,23 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + 'azure.mgmt.datalake', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-datalake-nspkg'], + } ) diff --git a/azure-mgmt-datamigration/HISTORY.rst b/azure-mgmt-datamigration/HISTORY.rst index bea7a8fb41fd..da20ba9cfd00 100644 --- a/azure-mgmt-datamigration/HISTORY.rst +++ b/azure-mgmt-datamigration/HISTORY.rst @@ -3,6 +3,44 @@ Release History =============== +2.1.0 (2018-11-05) +++++++++++++++++++ + +**Features** + +- Model MigrateSchemaSqlServerSqlDbDatabaseInput has a new parameter name +- Added operation group FilesOperations +- Add MongoDB support + +2.0.0 (2018-09-07) +++++++++++++++++++ + +**Features** + +- Model ConnectToSourceSqlServerTaskInput has a new parameter collect_tde_certificate_info +- Model ConnectToTargetSqlDbTaskProperties has a new parameter commands +- Model ConnectToSourceSqlServerTaskProperties has a new parameter commands +- Model MigrateSqlServerSqlDbTaskProperties has a new parameter commands +- Model ConnectToSourceSqlServerTaskOutputTaskLevel has a new parameter database_tde_certificate_mapping +- Model ProjectTaskProperties has a new parameter commands +- Model ConnectToSourceSqlServerTaskOutputAgentJobLevel has a new parameter validation_errors +- Model SqlConnectionInfo has a new parameter platform +- Model GetUserTablesSqlTaskProperties has a new parameter commands +- Model MigrateSqlServerSqlDbTaskOutputMigrationLevel has a new parameter migration_validation_result +- Model MigrateSqlServerSqlDbTaskOutputMigrationLevel has a new parameter migration_report_result +- Model MigrateSqlServerSqlServerDatabaseInput has a new parameter backup_and_restore_folder +- Added operation ServicesOperations.check_children_name_availability +- Added operation TasksOperations.command +- Added operation ProjectsOperations.list + +**Breaking changes** + +- Model MigrateSqlServerSqlDbTaskOutputMigrationLevel no longer has parameter migration_report +- Model MigrateSqlServerSqlServerDatabaseInput no longer has parameter backup_file_share +- Model ReportableException has a new signature +- Removed operation ServicesOperations.nested_check_name_availability +- Removed operation ProjectsOperations.list_by_resource_group + 1.0.0 (2018-06-05) ++++++++++++++++++ diff --git a/azure-mgmt-datamigration/MANIFEST.in b/azure-mgmt-datamigration/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-datamigration/MANIFEST.in +++ b/azure-mgmt-datamigration/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-datamigration/README.rst b/azure-mgmt-datamigration/README.rst index 6ec3c65cdb55..1a45b3f3ba9a 100644 --- a/azure-mgmt-datamigration/README.rst +++ b/azure-mgmt-datamigration/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Data Migration Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-datamigration/azure/__init__.py b/azure-mgmt-datamigration/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-datamigration/azure/__init__.py +++ b/azure-mgmt-datamigration/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datamigration/azure/mgmt/__init__.py b/azure-mgmt-datamigration/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-datamigration/azure/mgmt/__init__.py +++ b/azure-mgmt-datamigration/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/data_migration_service_client.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/data_migration_service_client.py index e378ec10b4be..8f91d1c9f822 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/data_migration_service_client.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/data_migration_service_client.py @@ -19,6 +19,7 @@ from .operations.projects_operations import ProjectsOperations from .operations.usages_operations import UsagesOperations from .operations.operations import Operations +from .operations.files_operations import FilesOperations from . import models @@ -72,6 +73,8 @@ class DataMigrationServiceClient(SDKClient): :vartype usages: azure.mgmt.datamigration.operations.UsagesOperations :ivar operations: Operations operations :vartype operations: azure.mgmt.datamigration.operations.Operations + :ivar files: Files operations + :vartype files: azure.mgmt.datamigration.operations.FilesOperations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -88,7 +91,6 @@ def __init__( super(DataMigrationServiceClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '2018-04-19' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) @@ -104,3 +106,5 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.operations = Operations( self._client, self.config, self._serialize, self._deserialize) + self.files = FilesOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/__init__.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/__init__.py index b72ad77faf01..4c2058abc869 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/__init__.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/__init__.py @@ -12,7 +12,75 @@ try: from .tracked_resource_py3 import TrackedResource from .resource_py3 import Resource + from .project_file_properties_py3 import ProjectFileProperties + from .project_file_py3 import ProjectFile from .odata_error_py3 import ODataError + from .reportable_exception_py3 import ReportableException + from .migrate_sync_complete_command_output_py3 import MigrateSyncCompleteCommandOutput + from .migrate_sync_complete_command_input_py3 import MigrateSyncCompleteCommandInput + from .migrate_sync_complete_command_properties_py3 import MigrateSyncCompleteCommandProperties + from .command_properties_py3 import CommandProperties + from .get_tde_certificates_sql_task_output_py3 import GetTdeCertificatesSqlTaskOutput + from .selected_certificate_input_py3 import SelectedCertificateInput + from .file_share_py3 import FileShare + from .postgre_sql_connection_info_py3 import PostgreSqlConnectionInfo + from .my_sql_connection_info_py3 import MySqlConnectionInfo + from .mongo_db_connection_info_py3 import MongoDbConnectionInfo + from .connection_info_py3 import ConnectionInfo + from .sql_connection_info_py3 import SqlConnectionInfo + from .get_tde_certificates_sql_task_input_py3 import GetTdeCertificatesSqlTaskInput + from .get_tde_certificates_sql_task_properties_py3 import GetTdeCertificatesSqlTaskProperties + from .mongo_db_error_py3 import MongoDbError + from .mongo_db_collection_progress_py3 import MongoDbCollectionProgress + from .mongo_db_database_progress_py3 import MongoDbDatabaseProgress + from .mongo_db_progress_py3 import MongoDbProgress + from .mongo_db_migration_progress_py3 import MongoDbMigrationProgress + from .mongo_db_throttling_settings_py3 import MongoDbThrottlingSettings + from .mongo_db_shard_key_field_py3 import MongoDbShardKeyField + from .mongo_db_shard_key_setting_py3 import MongoDbShardKeySetting + from .mongo_db_collection_settings_py3 import MongoDbCollectionSettings + from .mongo_db_database_settings_py3 import MongoDbDatabaseSettings + from .mongo_db_migration_settings_py3 import MongoDbMigrationSettings + from .validate_mongo_db_task_properties_py3 import ValidateMongoDbTaskProperties + from .database_backup_info_py3 import DatabaseBackupInfo + from .validate_migration_input_sql_server_sql_mi_task_output_py3 import ValidateMigrationInputSqlServerSqlMITaskOutput + from .blob_share_py3 import BlobShare + from .migrate_sql_server_sql_mi_database_input_py3 import MigrateSqlServerSqlMIDatabaseInput + from .validate_migration_input_sql_server_sql_mi_task_input_py3 import ValidateMigrationInputSqlServerSqlMITaskInput + from .validate_migration_input_sql_server_sql_mi_task_properties_py3 import ValidateMigrationInputSqlServerSqlMITaskProperties + from .validate_sync_migration_input_sql_server_task_output_py3 import ValidateSyncMigrationInputSqlServerTaskOutput + from .migrate_sql_server_sql_db_sync_database_input_py3 import MigrateSqlServerSqlDbSyncDatabaseInput + from .validate_sync_migration_input_sql_server_task_input_py3 import ValidateSyncMigrationInputSqlServerTaskInput + from .validate_migration_input_sql_server_sql_db_sync_task_properties_py3 import ValidateMigrationInputSqlServerSqlDbSyncTaskProperties + from .sync_migration_database_error_event_py3 import SyncMigrationDatabaseErrorEvent + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_error_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_error_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_table_level_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_level_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_migration_level_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_database_input_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_input_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_properties_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_error_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_error_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutputError + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_table_level_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_level_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_migration_level_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutput + from .migrate_my_sql_azure_db_for_my_sql_sync_database_input_py3 import MigrateMySqlAzureDbForMySqlSyncDatabaseInput + from .migrate_my_sql_azure_db_for_my_sql_sync_task_input_py3 import MigrateMySqlAzureDbForMySqlSyncTaskInput + from .migrate_my_sql_azure_db_for_my_sql_sync_task_properties_py3 import MigrateMySqlAzureDbForMySqlSyncTaskProperties + from .migrate_sql_server_sql_db_sync_task_output_database_error_py3 import MigrateSqlServerSqlDbSyncTaskOutputDatabaseError + from .migrate_sql_server_sql_db_sync_task_output_error_py3 import MigrateSqlServerSqlDbSyncTaskOutputError + from .migrate_sql_server_sql_db_sync_task_output_table_level_py3 import MigrateSqlServerSqlDbSyncTaskOutputTableLevel + from .migrate_sql_server_sql_db_sync_task_output_database_level_py3 import MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel + from .migrate_sql_server_sql_db_sync_task_output_migration_level_py3 import MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel + from .migrate_sql_server_sql_db_sync_task_output_py3 import MigrateSqlServerSqlDbSyncTaskOutput + from .sql_migration_task_input_py3 import SqlMigrationTaskInput + from .migration_validation_options_py3 import MigrationValidationOptions + from .migrate_sql_server_sql_db_sync_task_input_py3 import MigrateSqlServerSqlDbSyncTaskInput + from .migrate_sql_server_sql_db_sync_task_properties_py3 import MigrateSqlServerSqlDbSyncTaskProperties from .validation_error_py3 import ValidationError from .wait_statistics_py3 import WaitStatistics from .execution_statistics_py3 import ExecutionStatistics @@ -24,7 +92,6 @@ from .migration_validation_database_level_result_py3 import MigrationValidationDatabaseLevelResult from .migration_validation_database_summary_result_py3 import MigrationValidationDatabaseSummaryResult from .migration_validation_result_py3 import MigrationValidationResult - from .reportable_exception_py3 import ReportableException from .migrate_sql_server_sql_db_task_output_error_py3 import MigrateSqlServerSqlDbTaskOutputError from .migrate_sql_server_sql_db_task_output_table_level_py3 import MigrateSqlServerSqlDbTaskOutputTableLevel from .data_item_migration_summary_result_py3 import DataItemMigrationSummaryResult @@ -33,18 +100,35 @@ from .database_summary_result_py3 import DatabaseSummaryResult from .migrate_sql_server_sql_db_task_output_migration_level_py3 import MigrateSqlServerSqlDbTaskOutputMigrationLevel from .migrate_sql_server_sql_db_task_output_py3 import MigrateSqlServerSqlDbTaskOutput - from .connection_info_py3 import ConnectionInfo - from .sql_connection_info_py3 import SqlConnectionInfo - from .sql_migration_task_input_py3 import SqlMigrationTaskInput - from .migration_validation_options_py3 import MigrationValidationOptions from .migrate_sql_server_sql_db_database_input_py3 import MigrateSqlServerSqlDbDatabaseInput from .migrate_sql_server_sql_db_task_input_py3 import MigrateSqlServerSqlDbTaskInput from .migrate_sql_server_sql_db_task_properties_py3 import MigrateSqlServerSqlDbTaskProperties + from .migrate_sql_server_sql_mi_task_output_error_py3 import MigrateSqlServerSqlMITaskOutputError + from .migrate_sql_server_sql_mi_task_output_login_level_py3 import MigrateSqlServerSqlMITaskOutputLoginLevel + from .migrate_sql_server_sql_mi_task_output_agent_job_level_py3 import MigrateSqlServerSqlMITaskOutputAgentJobLevel + from .migrate_sql_server_sql_mi_task_output_database_level_py3 import MigrateSqlServerSqlMITaskOutputDatabaseLevel + from .start_migration_scenario_server_role_result_py3 import StartMigrationScenarioServerRoleResult + from .migrate_sql_server_sql_mi_task_output_migration_level_py3 import MigrateSqlServerSqlMITaskOutputMigrationLevel + from .migrate_sql_server_sql_mi_task_output_py3 import MigrateSqlServerSqlMITaskOutput + from .migrate_sql_server_sql_mi_task_input_py3 import MigrateSqlServerSqlMITaskInput + from .migrate_sql_server_sql_mi_task_properties_py3 import MigrateSqlServerSqlMITaskProperties + from .migrate_mongo_db_task_properties_py3 import MigrateMongoDbTaskProperties + from .connect_to_target_azure_db_for_my_sql_task_output_py3 import ConnectToTargetAzureDbForMySqlTaskOutput + from .connect_to_target_azure_db_for_my_sql_task_input_py3 import ConnectToTargetAzureDbForMySqlTaskInput + from .connect_to_target_azure_db_for_my_sql_task_properties_py3 import ConnectToTargetAzureDbForMySqlTaskProperties + from .connect_to_target_sql_mi_task_output_py3 import ConnectToTargetSqlMITaskOutput + from .connect_to_target_sql_mi_task_input_py3 import ConnectToTargetSqlMITaskInput + from .connect_to_target_sql_mi_task_properties_py3 import ConnectToTargetSqlMITaskProperties from .database_table_py3 import DatabaseTable + from .get_user_tables_sql_sync_task_output_py3 import GetUserTablesSqlSyncTaskOutput + from .get_user_tables_sql_sync_task_input_py3 import GetUserTablesSqlSyncTaskInput + from .get_user_tables_sql_sync_task_properties_py3 import GetUserTablesSqlSyncTaskProperties from .get_user_tables_sql_task_output_py3 import GetUserTablesSqlTaskOutput from .get_user_tables_sql_task_input_py3 import GetUserTablesSqlTaskInput from .get_user_tables_sql_task_properties_py3 import GetUserTablesSqlTaskProperties from .connect_to_target_sql_db_task_output_py3 import ConnectToTargetSqlDbTaskOutput + from .connect_to_target_sql_sql_db_sync_task_input_py3 import ConnectToTargetSqlSqlDbSyncTaskInput + from .connect_to_target_sql_sql_db_sync_task_properties_py3 import ConnectToTargetSqlSqlDbSyncTaskProperties from .connect_to_target_sql_db_task_input_py3 import ConnectToTargetSqlDbTaskInput from .connect_to_target_sql_db_task_properties_py3 import ConnectToTargetSqlDbTaskProperties from .migration_eligibility_info_py3 import MigrationEligibilityInfo @@ -55,7 +139,14 @@ from .connect_to_source_sql_server_task_output_task_level_py3 import ConnectToSourceSqlServerTaskOutputTaskLevel from .connect_to_source_sql_server_task_output_py3 import ConnectToSourceSqlServerTaskOutput from .connect_to_source_sql_server_task_input_py3 import ConnectToSourceSqlServerTaskInput + from .connect_to_source_sql_server_sync_task_properties_py3 import ConnectToSourceSqlServerSyncTaskProperties from .connect_to_source_sql_server_task_properties_py3 import ConnectToSourceSqlServerTaskProperties + from .mongo_db_shard_key_info_py3 import MongoDbShardKeyInfo + from .mongo_db_collection_info_py3 import MongoDbCollectionInfo + from .mongo_db_object_info_py3 import MongoDbObjectInfo + from .mongo_db_database_info_py3 import MongoDbDatabaseInfo + from .mongo_db_cluster_info_py3 import MongoDbClusterInfo + from .connect_to_mongo_db_task_properties_py3 import ConnectToMongoDbTaskProperties from .project_task_properties_py3 import ProjectTaskProperties from .project_task_py3 import ProjectTask from .service_sku_py3 import ServiceSku @@ -64,6 +155,7 @@ from .database_info_py3 import DatabaseInfo from .project_py3 import Project from .api_error_py3 import ApiError, ApiErrorException + from .file_storage_info_py3 import FileStorageInfo from .service_operation_display_py3 import ServiceOperationDisplay from .service_operation_py3 import ServiceOperation from .quota_name_py3 import QuotaName @@ -78,20 +170,108 @@ from .resource_sku_costs_py3 import ResourceSkuCosts from .resource_sku_capacity_py3 import ResourceSkuCapacity from .resource_sku_py3 import ResourceSku + from .connect_to_source_my_sql_task_input_py3 import ConnectToSourceMySqlTaskInput + from .server_properties_py3 import ServerProperties + from .connect_to_source_non_sql_task_output_py3 import ConnectToSourceNonSqlTaskOutput + from .connect_to_source_my_sql_task_properties_py3 import ConnectToSourceMySqlTaskProperties + from .schema_migration_setting_py3 import SchemaMigrationSetting + from .migrate_schema_sql_server_sql_db_database_input_py3 import MigrateSchemaSqlServerSqlDbDatabaseInput + from .migrate_schema_sql_server_sql_db_task_input_py3 import MigrateSchemaSqlServerSqlDbTaskInput + from .migrate_schema_sql_server_sql_db_task_output_py3 import MigrateSchemaSqlServerSqlDbTaskOutput + from .migrate_schema_sql_server_sql_db_task_properties_py3 import MigrateSchemaSqlServerSqlDbTaskProperties + from .migrate_schema_sql_server_sql_db_task_output_migration_level_py3 import MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel + from .migrate_schema_sql_server_sql_db_task_output_database_level_py3 import MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel + from .migrate_schema_sql_server_sql_db_task_output_error_py3 import MigrateSchemaSqlServerSqlDbTaskOutputError + from .migrate_schema_sql_task_output_error_py3 import MigrateSchemaSqlTaskOutputError + from .mongo_db_command_input_py3 import MongoDbCommandInput + from .mongo_db_cancel_command_py3 import MongoDbCancelCommand + from .mongo_db_finish_command_input_py3 import MongoDbFinishCommandInput + from .mongo_db_finish_command_py3 import MongoDbFinishCommand + from .mongo_db_restart_command_py3 import MongoDbRestartCommand from .database_py3 import Database from .database_object_name_py3 import DatabaseObjectName from .migration_table_metadata_py3 import MigrationTableMetadata from .data_migration_project_metadata_py3 import DataMigrationProjectMetadata + from .get_project_details_non_sql_task_input_py3 import GetProjectDetailsNonSqlTaskInput + from .non_sql_data_migration_table_py3 import NonSqlDataMigrationTable + from .non_sql_migration_task_input_py3 import NonSqlMigrationTaskInput from .data_migration_error_py3 import DataMigrationError - from .file_share_py3 import FileShare + from .non_sql_data_migration_table_result_py3 import NonSqlDataMigrationTableResult + from .non_sql_migration_task_output_py3 import NonSqlMigrationTaskOutput from .database_file_input_py3 import DatabaseFileInput from .migrate_sql_server_sql_server_database_input_py3 import MigrateSqlServerSqlServerDatabaseInput - from .blob_share_py3 import BlobShare - from .start_migration_scenario_server_role_result_py3 import StartMigrationScenarioServerRoleResult except (SyntaxError, ImportError): from .tracked_resource import TrackedResource from .resource import Resource + from .project_file_properties import ProjectFileProperties + from .project_file import ProjectFile from .odata_error import ODataError + from .reportable_exception import ReportableException + from .migrate_sync_complete_command_output import MigrateSyncCompleteCommandOutput + from .migrate_sync_complete_command_input import MigrateSyncCompleteCommandInput + from .migrate_sync_complete_command_properties import MigrateSyncCompleteCommandProperties + from .command_properties import CommandProperties + from .get_tde_certificates_sql_task_output import GetTdeCertificatesSqlTaskOutput + from .selected_certificate_input import SelectedCertificateInput + from .file_share import FileShare + from .postgre_sql_connection_info import PostgreSqlConnectionInfo + from .my_sql_connection_info import MySqlConnectionInfo + from .mongo_db_connection_info import MongoDbConnectionInfo + from .connection_info import ConnectionInfo + from .sql_connection_info import SqlConnectionInfo + from .get_tde_certificates_sql_task_input import GetTdeCertificatesSqlTaskInput + from .get_tde_certificates_sql_task_properties import GetTdeCertificatesSqlTaskProperties + from .mongo_db_error import MongoDbError + from .mongo_db_collection_progress import MongoDbCollectionProgress + from .mongo_db_database_progress import MongoDbDatabaseProgress + from .mongo_db_progress import MongoDbProgress + from .mongo_db_migration_progress import MongoDbMigrationProgress + from .mongo_db_throttling_settings import MongoDbThrottlingSettings + from .mongo_db_shard_key_field import MongoDbShardKeyField + from .mongo_db_shard_key_setting import MongoDbShardKeySetting + from .mongo_db_collection_settings import MongoDbCollectionSettings + from .mongo_db_database_settings import MongoDbDatabaseSettings + from .mongo_db_migration_settings import MongoDbMigrationSettings + from .validate_mongo_db_task_properties import ValidateMongoDbTaskProperties + from .database_backup_info import DatabaseBackupInfo + from .validate_migration_input_sql_server_sql_mi_task_output import ValidateMigrationInputSqlServerSqlMITaskOutput + from .blob_share import BlobShare + from .migrate_sql_server_sql_mi_database_input import MigrateSqlServerSqlMIDatabaseInput + from .validate_migration_input_sql_server_sql_mi_task_input import ValidateMigrationInputSqlServerSqlMITaskInput + from .validate_migration_input_sql_server_sql_mi_task_properties import ValidateMigrationInputSqlServerSqlMITaskProperties + from .validate_sync_migration_input_sql_server_task_output import ValidateSyncMigrationInputSqlServerTaskOutput + from .migrate_sql_server_sql_db_sync_database_input import MigrateSqlServerSqlDbSyncDatabaseInput + from .validate_sync_migration_input_sql_server_task_input import ValidateSyncMigrationInputSqlServerTaskInput + from .validate_migration_input_sql_server_sql_db_sync_task_properties import ValidateMigrationInputSqlServerSqlDbSyncTaskProperties + from .sync_migration_database_error_event import SyncMigrationDatabaseErrorEvent + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_error import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_error import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_table_level import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_level import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_migration_level import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_database_input import MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_input import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput + from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_properties import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_error import MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_error import MigrateMySqlAzureDbForMySqlSyncTaskOutputError + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_table_level import MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_level import MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_migration_level import MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel + from .migrate_my_sql_azure_db_for_my_sql_sync_task_output import MigrateMySqlAzureDbForMySqlSyncTaskOutput + from .migrate_my_sql_azure_db_for_my_sql_sync_database_input import MigrateMySqlAzureDbForMySqlSyncDatabaseInput + from .migrate_my_sql_azure_db_for_my_sql_sync_task_input import MigrateMySqlAzureDbForMySqlSyncTaskInput + from .migrate_my_sql_azure_db_for_my_sql_sync_task_properties import MigrateMySqlAzureDbForMySqlSyncTaskProperties + from .migrate_sql_server_sql_db_sync_task_output_database_error import MigrateSqlServerSqlDbSyncTaskOutputDatabaseError + from .migrate_sql_server_sql_db_sync_task_output_error import MigrateSqlServerSqlDbSyncTaskOutputError + from .migrate_sql_server_sql_db_sync_task_output_table_level import MigrateSqlServerSqlDbSyncTaskOutputTableLevel + from .migrate_sql_server_sql_db_sync_task_output_database_level import MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel + from .migrate_sql_server_sql_db_sync_task_output_migration_level import MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel + from .migrate_sql_server_sql_db_sync_task_output import MigrateSqlServerSqlDbSyncTaskOutput + from .sql_migration_task_input import SqlMigrationTaskInput + from .migration_validation_options import MigrationValidationOptions + from .migrate_sql_server_sql_db_sync_task_input import MigrateSqlServerSqlDbSyncTaskInput + from .migrate_sql_server_sql_db_sync_task_properties import MigrateSqlServerSqlDbSyncTaskProperties from .validation_error import ValidationError from .wait_statistics import WaitStatistics from .execution_statistics import ExecutionStatistics @@ -103,7 +283,6 @@ from .migration_validation_database_level_result import MigrationValidationDatabaseLevelResult from .migration_validation_database_summary_result import MigrationValidationDatabaseSummaryResult from .migration_validation_result import MigrationValidationResult - from .reportable_exception import ReportableException from .migrate_sql_server_sql_db_task_output_error import MigrateSqlServerSqlDbTaskOutputError from .migrate_sql_server_sql_db_task_output_table_level import MigrateSqlServerSqlDbTaskOutputTableLevel from .data_item_migration_summary_result import DataItemMigrationSummaryResult @@ -112,18 +291,35 @@ from .database_summary_result import DatabaseSummaryResult from .migrate_sql_server_sql_db_task_output_migration_level import MigrateSqlServerSqlDbTaskOutputMigrationLevel from .migrate_sql_server_sql_db_task_output import MigrateSqlServerSqlDbTaskOutput - from .connection_info import ConnectionInfo - from .sql_connection_info import SqlConnectionInfo - from .sql_migration_task_input import SqlMigrationTaskInput - from .migration_validation_options import MigrationValidationOptions from .migrate_sql_server_sql_db_database_input import MigrateSqlServerSqlDbDatabaseInput from .migrate_sql_server_sql_db_task_input import MigrateSqlServerSqlDbTaskInput from .migrate_sql_server_sql_db_task_properties import MigrateSqlServerSqlDbTaskProperties + from .migrate_sql_server_sql_mi_task_output_error import MigrateSqlServerSqlMITaskOutputError + from .migrate_sql_server_sql_mi_task_output_login_level import MigrateSqlServerSqlMITaskOutputLoginLevel + from .migrate_sql_server_sql_mi_task_output_agent_job_level import MigrateSqlServerSqlMITaskOutputAgentJobLevel + from .migrate_sql_server_sql_mi_task_output_database_level import MigrateSqlServerSqlMITaskOutputDatabaseLevel + from .start_migration_scenario_server_role_result import StartMigrationScenarioServerRoleResult + from .migrate_sql_server_sql_mi_task_output_migration_level import MigrateSqlServerSqlMITaskOutputMigrationLevel + from .migrate_sql_server_sql_mi_task_output import MigrateSqlServerSqlMITaskOutput + from .migrate_sql_server_sql_mi_task_input import MigrateSqlServerSqlMITaskInput + from .migrate_sql_server_sql_mi_task_properties import MigrateSqlServerSqlMITaskProperties + from .migrate_mongo_db_task_properties import MigrateMongoDbTaskProperties + from .connect_to_target_azure_db_for_my_sql_task_output import ConnectToTargetAzureDbForMySqlTaskOutput + from .connect_to_target_azure_db_for_my_sql_task_input import ConnectToTargetAzureDbForMySqlTaskInput + from .connect_to_target_azure_db_for_my_sql_task_properties import ConnectToTargetAzureDbForMySqlTaskProperties + from .connect_to_target_sql_mi_task_output import ConnectToTargetSqlMITaskOutput + from .connect_to_target_sql_mi_task_input import ConnectToTargetSqlMITaskInput + from .connect_to_target_sql_mi_task_properties import ConnectToTargetSqlMITaskProperties from .database_table import DatabaseTable + from .get_user_tables_sql_sync_task_output import GetUserTablesSqlSyncTaskOutput + from .get_user_tables_sql_sync_task_input import GetUserTablesSqlSyncTaskInput + from .get_user_tables_sql_sync_task_properties import GetUserTablesSqlSyncTaskProperties from .get_user_tables_sql_task_output import GetUserTablesSqlTaskOutput from .get_user_tables_sql_task_input import GetUserTablesSqlTaskInput from .get_user_tables_sql_task_properties import GetUserTablesSqlTaskProperties from .connect_to_target_sql_db_task_output import ConnectToTargetSqlDbTaskOutput + from .connect_to_target_sql_sql_db_sync_task_input import ConnectToTargetSqlSqlDbSyncTaskInput + from .connect_to_target_sql_sql_db_sync_task_properties import ConnectToTargetSqlSqlDbSyncTaskProperties from .connect_to_target_sql_db_task_input import ConnectToTargetSqlDbTaskInput from .connect_to_target_sql_db_task_properties import ConnectToTargetSqlDbTaskProperties from .migration_eligibility_info import MigrationEligibilityInfo @@ -134,7 +330,14 @@ from .connect_to_source_sql_server_task_output_task_level import ConnectToSourceSqlServerTaskOutputTaskLevel from .connect_to_source_sql_server_task_output import ConnectToSourceSqlServerTaskOutput from .connect_to_source_sql_server_task_input import ConnectToSourceSqlServerTaskInput + from .connect_to_source_sql_server_sync_task_properties import ConnectToSourceSqlServerSyncTaskProperties from .connect_to_source_sql_server_task_properties import ConnectToSourceSqlServerTaskProperties + from .mongo_db_shard_key_info import MongoDbShardKeyInfo + from .mongo_db_collection_info import MongoDbCollectionInfo + from .mongo_db_object_info import MongoDbObjectInfo + from .mongo_db_database_info import MongoDbDatabaseInfo + from .mongo_db_cluster_info import MongoDbClusterInfo + from .connect_to_mongo_db_task_properties import ConnectToMongoDbTaskProperties from .project_task_properties import ProjectTaskProperties from .project_task import ProjectTask from .service_sku import ServiceSku @@ -143,6 +346,7 @@ from .database_info import DatabaseInfo from .project import Project from .api_error import ApiError, ApiErrorException + from .file_storage_info import FileStorageInfo from .service_operation_display import ServiceOperationDisplay from .service_operation import ServiceOperation from .quota_name import QuotaName @@ -157,16 +361,36 @@ from .resource_sku_costs import ResourceSkuCosts from .resource_sku_capacity import ResourceSkuCapacity from .resource_sku import ResourceSku + from .connect_to_source_my_sql_task_input import ConnectToSourceMySqlTaskInput + from .server_properties import ServerProperties + from .connect_to_source_non_sql_task_output import ConnectToSourceNonSqlTaskOutput + from .connect_to_source_my_sql_task_properties import ConnectToSourceMySqlTaskProperties + from .schema_migration_setting import SchemaMigrationSetting + from .migrate_schema_sql_server_sql_db_database_input import MigrateSchemaSqlServerSqlDbDatabaseInput + from .migrate_schema_sql_server_sql_db_task_input import MigrateSchemaSqlServerSqlDbTaskInput + from .migrate_schema_sql_server_sql_db_task_output import MigrateSchemaSqlServerSqlDbTaskOutput + from .migrate_schema_sql_server_sql_db_task_properties import MigrateSchemaSqlServerSqlDbTaskProperties + from .migrate_schema_sql_server_sql_db_task_output_migration_level import MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel + from .migrate_schema_sql_server_sql_db_task_output_database_level import MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel + from .migrate_schema_sql_server_sql_db_task_output_error import MigrateSchemaSqlServerSqlDbTaskOutputError + from .migrate_schema_sql_task_output_error import MigrateSchemaSqlTaskOutputError + from .mongo_db_command_input import MongoDbCommandInput + from .mongo_db_cancel_command import MongoDbCancelCommand + from .mongo_db_finish_command_input import MongoDbFinishCommandInput + from .mongo_db_finish_command import MongoDbFinishCommand + from .mongo_db_restart_command import MongoDbRestartCommand from .database import Database from .database_object_name import DatabaseObjectName from .migration_table_metadata import MigrationTableMetadata from .data_migration_project_metadata import DataMigrationProjectMetadata + from .get_project_details_non_sql_task_input import GetProjectDetailsNonSqlTaskInput + from .non_sql_data_migration_table import NonSqlDataMigrationTable + from .non_sql_migration_task_input import NonSqlMigrationTaskInput from .data_migration_error import DataMigrationError - from .file_share import FileShare + from .non_sql_data_migration_table_result import NonSqlDataMigrationTableResult + from .non_sql_migration_task_output import NonSqlMigrationTaskOutput from .database_file_input import DatabaseFileInput from .migrate_sql_server_sql_server_database_input import MigrateSqlServerSqlServerDatabaseInput - from .blob_share import BlobShare - from .start_migration_scenario_server_role_result import StartMigrationScenarioServerRoleResult from .resource_sku_paged import ResourceSkuPaged from .available_service_sku_paged import AvailableServiceSkuPaged from .data_migration_service_paged import DataMigrationServicePaged @@ -174,7 +398,19 @@ from .project_paged import ProjectPaged from .quota_paged import QuotaPaged from .service_operation_paged import ServiceOperationPaged +from .project_file_paged import ProjectFilePaged from .data_migration_service_client_enums import ( + CommandState, + SqlSourcePlatform, + AuthenticationType, + MongoDbErrorType, + MongoDbMigrationState, + MongoDbShardKeyOrder, + MongoDbReplication, + BackupType, + BackupMode, + SyncTableMigrationState, + SyncDatabaseMigrationReportingState, ValidationStatus, Severity, UpdateActionType, @@ -182,12 +418,13 @@ MigrationState, DatabaseMigrationStage, MigrationStatus, - AuthenticationType, + LoginMigrationStage, LoginType, DatabaseState, DatabaseCompatLevel, DatabaseFileType, ServerLevelPermissionsGroup, + MongoDbClusterType, TaskState, ServiceProvisioningState, ProjectTargetPlatform, @@ -198,14 +435,85 @@ ResourceSkuRestrictionsType, ResourceSkuRestrictionsReasonCode, ResourceSkuCapacityScaleType, + MySqlTargetPlatformType, + SchemaMigrationOption, + SchemaMigrationStage, + DataMigrationResultCode, ErrorType, - LoginMigrationStage, ) __all__ = [ 'TrackedResource', 'Resource', + 'ProjectFileProperties', + 'ProjectFile', 'ODataError', + 'ReportableException', + 'MigrateSyncCompleteCommandOutput', + 'MigrateSyncCompleteCommandInput', + 'MigrateSyncCompleteCommandProperties', + 'CommandProperties', + 'GetTdeCertificatesSqlTaskOutput', + 'SelectedCertificateInput', + 'FileShare', + 'PostgreSqlConnectionInfo', + 'MySqlConnectionInfo', + 'MongoDbConnectionInfo', + 'ConnectionInfo', + 'SqlConnectionInfo', + 'GetTdeCertificatesSqlTaskInput', + 'GetTdeCertificatesSqlTaskProperties', + 'MongoDbError', + 'MongoDbCollectionProgress', + 'MongoDbDatabaseProgress', + 'MongoDbProgress', + 'MongoDbMigrationProgress', + 'MongoDbThrottlingSettings', + 'MongoDbShardKeyField', + 'MongoDbShardKeySetting', + 'MongoDbCollectionSettings', + 'MongoDbDatabaseSettings', + 'MongoDbMigrationSettings', + 'ValidateMongoDbTaskProperties', + 'DatabaseBackupInfo', + 'ValidateMigrationInputSqlServerSqlMITaskOutput', + 'BlobShare', + 'MigrateSqlServerSqlMIDatabaseInput', + 'ValidateMigrationInputSqlServerSqlMITaskInput', + 'ValidateMigrationInputSqlServerSqlMITaskProperties', + 'ValidateSyncMigrationInputSqlServerTaskOutput', + 'MigrateSqlServerSqlDbSyncDatabaseInput', + 'ValidateSyncMigrationInputSqlServerTaskInput', + 'ValidateMigrationInputSqlServerSqlDbSyncTaskProperties', + 'SyncMigrationDatabaseErrorEvent', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput', + 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties', + 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError', + 'MigrateMySqlAzureDbForMySqlSyncTaskOutputError', + 'MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel', + 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel', + 'MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel', + 'MigrateMySqlAzureDbForMySqlSyncTaskOutput', + 'MigrateMySqlAzureDbForMySqlSyncDatabaseInput', + 'MigrateMySqlAzureDbForMySqlSyncTaskInput', + 'MigrateMySqlAzureDbForMySqlSyncTaskProperties', + 'MigrateSqlServerSqlDbSyncTaskOutputDatabaseError', + 'MigrateSqlServerSqlDbSyncTaskOutputError', + 'MigrateSqlServerSqlDbSyncTaskOutputTableLevel', + 'MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel', + 'MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel', + 'MigrateSqlServerSqlDbSyncTaskOutput', + 'SqlMigrationTaskInput', + 'MigrationValidationOptions', + 'MigrateSqlServerSqlDbSyncTaskInput', + 'MigrateSqlServerSqlDbSyncTaskProperties', 'ValidationError', 'WaitStatistics', 'ExecutionStatistics', @@ -217,7 +525,6 @@ 'MigrationValidationDatabaseLevelResult', 'MigrationValidationDatabaseSummaryResult', 'MigrationValidationResult', - 'ReportableException', 'MigrateSqlServerSqlDbTaskOutputError', 'MigrateSqlServerSqlDbTaskOutputTableLevel', 'DataItemMigrationSummaryResult', @@ -226,18 +533,35 @@ 'DatabaseSummaryResult', 'MigrateSqlServerSqlDbTaskOutputMigrationLevel', 'MigrateSqlServerSqlDbTaskOutput', - 'ConnectionInfo', - 'SqlConnectionInfo', - 'SqlMigrationTaskInput', - 'MigrationValidationOptions', 'MigrateSqlServerSqlDbDatabaseInput', 'MigrateSqlServerSqlDbTaskInput', 'MigrateSqlServerSqlDbTaskProperties', + 'MigrateSqlServerSqlMITaskOutputError', + 'MigrateSqlServerSqlMITaskOutputLoginLevel', + 'MigrateSqlServerSqlMITaskOutputAgentJobLevel', + 'MigrateSqlServerSqlMITaskOutputDatabaseLevel', + 'StartMigrationScenarioServerRoleResult', + 'MigrateSqlServerSqlMITaskOutputMigrationLevel', + 'MigrateSqlServerSqlMITaskOutput', + 'MigrateSqlServerSqlMITaskInput', + 'MigrateSqlServerSqlMITaskProperties', + 'MigrateMongoDbTaskProperties', + 'ConnectToTargetAzureDbForMySqlTaskOutput', + 'ConnectToTargetAzureDbForMySqlTaskInput', + 'ConnectToTargetAzureDbForMySqlTaskProperties', + 'ConnectToTargetSqlMITaskOutput', + 'ConnectToTargetSqlMITaskInput', + 'ConnectToTargetSqlMITaskProperties', 'DatabaseTable', + 'GetUserTablesSqlSyncTaskOutput', + 'GetUserTablesSqlSyncTaskInput', + 'GetUserTablesSqlSyncTaskProperties', 'GetUserTablesSqlTaskOutput', 'GetUserTablesSqlTaskInput', 'GetUserTablesSqlTaskProperties', 'ConnectToTargetSqlDbTaskOutput', + 'ConnectToTargetSqlSqlDbSyncTaskInput', + 'ConnectToTargetSqlSqlDbSyncTaskProperties', 'ConnectToTargetSqlDbTaskInput', 'ConnectToTargetSqlDbTaskProperties', 'MigrationEligibilityInfo', @@ -248,7 +572,14 @@ 'ConnectToSourceSqlServerTaskOutputTaskLevel', 'ConnectToSourceSqlServerTaskOutput', 'ConnectToSourceSqlServerTaskInput', + 'ConnectToSourceSqlServerSyncTaskProperties', 'ConnectToSourceSqlServerTaskProperties', + 'MongoDbShardKeyInfo', + 'MongoDbCollectionInfo', + 'MongoDbObjectInfo', + 'MongoDbDatabaseInfo', + 'MongoDbClusterInfo', + 'ConnectToMongoDbTaskProperties', 'ProjectTaskProperties', 'ProjectTask', 'ServiceSku', @@ -257,6 +588,7 @@ 'DatabaseInfo', 'Project', 'ApiError', 'ApiErrorException', + 'FileStorageInfo', 'ServiceOperationDisplay', 'ServiceOperation', 'QuotaName', @@ -271,16 +603,36 @@ 'ResourceSkuCosts', 'ResourceSkuCapacity', 'ResourceSku', + 'ConnectToSourceMySqlTaskInput', + 'ServerProperties', + 'ConnectToSourceNonSqlTaskOutput', + 'ConnectToSourceMySqlTaskProperties', + 'SchemaMigrationSetting', + 'MigrateSchemaSqlServerSqlDbDatabaseInput', + 'MigrateSchemaSqlServerSqlDbTaskInput', + 'MigrateSchemaSqlServerSqlDbTaskOutput', + 'MigrateSchemaSqlServerSqlDbTaskProperties', + 'MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel', + 'MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel', + 'MigrateSchemaSqlServerSqlDbTaskOutputError', + 'MigrateSchemaSqlTaskOutputError', + 'MongoDbCommandInput', + 'MongoDbCancelCommand', + 'MongoDbFinishCommandInput', + 'MongoDbFinishCommand', + 'MongoDbRestartCommand', 'Database', 'DatabaseObjectName', 'MigrationTableMetadata', 'DataMigrationProjectMetadata', + 'GetProjectDetailsNonSqlTaskInput', + 'NonSqlDataMigrationTable', + 'NonSqlMigrationTaskInput', 'DataMigrationError', - 'FileShare', + 'NonSqlDataMigrationTableResult', + 'NonSqlMigrationTaskOutput', 'DatabaseFileInput', 'MigrateSqlServerSqlServerDatabaseInput', - 'BlobShare', - 'StartMigrationScenarioServerRoleResult', 'ResourceSkuPaged', 'AvailableServiceSkuPaged', 'DataMigrationServicePaged', @@ -288,6 +640,18 @@ 'ProjectPaged', 'QuotaPaged', 'ServiceOperationPaged', + 'ProjectFilePaged', + 'CommandState', + 'SqlSourcePlatform', + 'AuthenticationType', + 'MongoDbErrorType', + 'MongoDbMigrationState', + 'MongoDbShardKeyOrder', + 'MongoDbReplication', + 'BackupType', + 'BackupMode', + 'SyncTableMigrationState', + 'SyncDatabaseMigrationReportingState', 'ValidationStatus', 'Severity', 'UpdateActionType', @@ -295,12 +659,13 @@ 'MigrationState', 'DatabaseMigrationStage', 'MigrationStatus', - 'AuthenticationType', + 'LoginMigrationStage', 'LoginType', 'DatabaseState', 'DatabaseCompatLevel', 'DatabaseFileType', 'ServerLevelPermissionsGroup', + 'MongoDbClusterType', 'TaskState', 'ServiceProvisioningState', 'ProjectTargetPlatform', @@ -311,6 +676,9 @@ 'ResourceSkuRestrictionsType', 'ResourceSkuRestrictionsReasonCode', 'ResourceSkuCapacityScaleType', + 'MySqlTargetPlatformType', + 'SchemaMigrationOption', + 'SchemaMigrationStage', + 'DataMigrationResultCode', 'ErrorType', - 'LoginMigrationStage', ] diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/available_service_sku_sku.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/available_service_sku_sku.py index 856ecbb729dc..dd2a4c97f593 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/available_service_sku_sku.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/available_service_sku_sku.py @@ -21,8 +21,8 @@ class AvailableServiceSkuSku(Model): :type family: str :param size: SKU size :type size: str - :param tier: The tier of the SKU, such as "Free", "Basic", "Standard", or - "Premium" + :param tier: The tier of the SKU, such as "Basic", "General Purpose", or + "Business Critical" :type tier: str """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/available_service_sku_sku_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/available_service_sku_sku_py3.py index f8bd991360d9..6051099d109a 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/available_service_sku_sku_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/available_service_sku_sku_py3.py @@ -21,8 +21,8 @@ class AvailableServiceSkuSku(Model): :type family: str :param size: SKU size :type size: str - :param tier: The tier of the SKU, such as "Free", "Basic", "Standard", or - "Premium" + :param tier: The tier of the SKU, such as "Basic", "General Purpose", or + "Business Critical" :type tier: str """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/command_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/command_properties.py new file mode 100644 index 000000000000..098e974de48e --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/command_properties.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CommandProperties(Model): + """Base class for all types of DMS command properties. If command is not + supported by current client, this object is returned. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateSyncCompleteCommandProperties, + MongoDbCancelCommand, MongoDbFinishCommand, MongoDbRestartCommand + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + } + + _subtype_map = { + 'command_type': {'Migrate.Sync.Complete.Database': 'MigrateSyncCompleteCommandProperties', 'cancel': 'MongoDbCancelCommand', 'finish': 'MongoDbFinishCommand', 'restart': 'MongoDbRestartCommand'} + } + + def __init__(self, **kwargs): + super(CommandProperties, self).__init__(**kwargs) + self.errors = None + self.state = None + self.command_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/command_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/command_properties_py3.py new file mode 100644 index 000000000000..cda890206d25 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/command_properties_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CommandProperties(Model): + """Base class for all types of DMS command properties. If command is not + supported by current client, this object is returned. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateSyncCompleteCommandProperties, + MongoDbCancelCommand, MongoDbFinishCommand, MongoDbRestartCommand + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + } + + _subtype_map = { + 'command_type': {'Migrate.Sync.Complete.Database': 'MigrateSyncCompleteCommandProperties', 'cancel': 'MongoDbCancelCommand', 'finish': 'MongoDbFinishCommand', 'restart': 'MongoDbRestartCommand'} + } + + def __init__(self, **kwargs) -> None: + super(CommandProperties, self).__init__(**kwargs) + self.errors = None + self.state = None + self.command_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_mongo_db_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_mongo_db_task_properties.py new file mode 100644 index 000000000000..f0e771bcbc4f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_mongo_db_task_properties.py @@ -0,0 +1,62 @@ +# 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 .project_task_properties import ProjectTaskProperties + + +class ConnectToMongoDbTaskProperties(ProjectTaskProperties): + """Properties for the task that validates the connection to and provides + information about a MongoDB server. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: + :type input: ~azure.mgmt.datamigration.models.MongoDbConnectionInfo + :ivar output: An array containing a single MongoDbClusterInfo object + :vartype output: list[~azure.mgmt.datamigration.models.MongoDbClusterInfo] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbConnectionInfo'}, + 'output': {'key': 'output', 'type': '[MongoDbClusterInfo]'}, + } + + def __init__(self, **kwargs): + super(ConnectToMongoDbTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'Connect.MongoDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_mongo_db_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_mongo_db_task_properties_py3.py new file mode 100644 index 000000000000..50c4bfae5e9b --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_mongo_db_task_properties_py3.py @@ -0,0 +1,62 @@ +# 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 .project_task_properties_py3 import ProjectTaskProperties + + +class ConnectToMongoDbTaskProperties(ProjectTaskProperties): + """Properties for the task that validates the connection to and provides + information about a MongoDB server. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: + :type input: ~azure.mgmt.datamigration.models.MongoDbConnectionInfo + :ivar output: An array containing a single MongoDbClusterInfo object + :vartype output: list[~azure.mgmt.datamigration.models.MongoDbClusterInfo] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbConnectionInfo'}, + 'output': {'key': 'output', 'type': '[MongoDbClusterInfo]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ConnectToMongoDbTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'Connect.MongoDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_input.py new file mode 100644 index 000000000000..1a558b2caf88 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_input.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToSourceMySqlTaskInput(Model): + """Input for the task that validates MySQL database connection. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + MySQL source + :type source_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param target_platform: Target Platform for the migration. Possible values + include: 'AzureDbForMySQL' + :type target_platform: str or + ~azure.mgmt.datamigration.models.MySqlTargetPlatformType + :param check_permissions_group: Permission group for validations. Possible + values include: 'Default', 'MigrationFromSqlServerToAzureDB', + 'MigrationFromSqlServerToAzureMI', 'MigrationFromMySQLToAzureDBForMySQL' + :type check_permissions_group: str or + ~azure.mgmt.datamigration.models.ServerLevelPermissionsGroup + """ + + _validation = { + 'source_connection_info': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'target_platform': {'key': 'targetPlatform', 'type': 'str'}, + 'check_permissions_group': {'key': 'checkPermissionsGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectToSourceMySqlTaskInput, self).__init__(**kwargs) + self.source_connection_info = kwargs.get('source_connection_info', None) + self.target_platform = kwargs.get('target_platform', None) + self.check_permissions_group = kwargs.get('check_permissions_group', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_input_py3.py new file mode 100644 index 000000000000..7efb73a3bf0f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_input_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToSourceMySqlTaskInput(Model): + """Input for the task that validates MySQL database connection. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + MySQL source + :type source_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param target_platform: Target Platform for the migration. Possible values + include: 'AzureDbForMySQL' + :type target_platform: str or + ~azure.mgmt.datamigration.models.MySqlTargetPlatformType + :param check_permissions_group: Permission group for validations. Possible + values include: 'Default', 'MigrationFromSqlServerToAzureDB', + 'MigrationFromSqlServerToAzureMI', 'MigrationFromMySQLToAzureDBForMySQL' + :type check_permissions_group: str or + ~azure.mgmt.datamigration.models.ServerLevelPermissionsGroup + """ + + _validation = { + 'source_connection_info': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'target_platform': {'key': 'targetPlatform', 'type': 'str'}, + 'check_permissions_group': {'key': 'checkPermissionsGroup', 'type': 'str'}, + } + + def __init__(self, *, source_connection_info, target_platform=None, check_permissions_group=None, **kwargs) -> None: + super(ConnectToSourceMySqlTaskInput, self).__init__(**kwargs) + self.source_connection_info = source_connection_info + self.target_platform = target_platform + self.check_permissions_group = check_permissions_group diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_properties.py new file mode 100644 index 000000000000..48abf926bbfe --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_properties.py @@ -0,0 +1,63 @@ +# 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 .project_task_properties import ProjectTaskProperties + + +class ConnectToSourceMySqlTaskProperties(ProjectTaskProperties): + """Properties for the task that validates MySQL database connection. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToSourceMySqlTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToSourceNonSqlTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToSourceMySqlTaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToSourceNonSqlTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(ConnectToSourceMySqlTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'ConnectToSource.MySql' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_properties_py3.py new file mode 100644 index 000000000000..8ede548132eb --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_my_sql_task_properties_py3.py @@ -0,0 +1,63 @@ +# 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 .project_task_properties_py3 import ProjectTaskProperties + + +class ConnectToSourceMySqlTaskProperties(ProjectTaskProperties): + """Properties for the task that validates MySQL database connection. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToSourceMySqlTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToSourceNonSqlTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToSourceMySqlTaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToSourceNonSqlTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ConnectToSourceMySqlTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'ConnectToSource.MySql' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_non_sql_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_non_sql_task_output.py new file mode 100644 index 000000000000..9cf392d2263a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_non_sql_task_output.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToSourceNonSqlTaskOutput(Model): + """Output for connect to Oracle, MySQL type source. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar source_server_brand_version: Server brand version + :vartype source_server_brand_version: str + :ivar server_properties: Server properties + :vartype server_properties: + ~azure.mgmt.datamigration.models.ServerProperties + :ivar databases: List of databases on the server + :vartype databases: list[str] + :ivar validation_errors: Validation errors associated with the task + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'source_server_brand_version': {'readonly': True}, + 'server_properties': {'readonly': True}, + 'databases': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, + 'server_properties': {'key': 'serverProperties', 'type': 'ServerProperties'}, + 'databases': {'key': 'databases', 'type': '[str]'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(ConnectToSourceNonSqlTaskOutput, self).__init__(**kwargs) + self.id = None + self.source_server_brand_version = None + self.server_properties = None + self.databases = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_non_sql_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_non_sql_task_output_py3.py new file mode 100644 index 000000000000..c29eaeef1cc8 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_non_sql_task_output_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToSourceNonSqlTaskOutput(Model): + """Output for connect to Oracle, MySQL type source. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar source_server_brand_version: Server brand version + :vartype source_server_brand_version: str + :ivar server_properties: Server properties + :vartype server_properties: + ~azure.mgmt.datamigration.models.ServerProperties + :ivar databases: List of databases on the server + :vartype databases: list[str] + :ivar validation_errors: Validation errors associated with the task + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'source_server_brand_version': {'readonly': True}, + 'server_properties': {'readonly': True}, + 'databases': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, + 'server_properties': {'key': 'serverProperties', 'type': 'ServerProperties'}, + 'databases': {'key': 'databases', 'type': '[str]'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectToSourceNonSqlTaskOutput, self).__init__(**kwargs) + self.id = None + self.source_server_brand_version = None + self.server_properties = None + self.databases = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_sync_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_sync_task_properties.py new file mode 100644 index 000000000000..5952b7f6b083 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_sync_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class ConnectToSourceSqlServerSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that validates connection to SQL Server and source + server requirements for online migration. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToSourceSqlServerTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToSourceSqlServerTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToSourceSqlServerTaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToSourceSqlServerTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(ConnectToSourceSqlServerSyncTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'ConnectToSource.SqlServer.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_sync_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_sync_task_properties_py3.py new file mode 100644 index 000000000000..f053267bf88a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_sync_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class ConnectToSourceSqlServerSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that validates connection to SQL Server and source + server requirements for online migration. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToSourceSqlServerTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToSourceSqlServerTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToSourceSqlServerTaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToSourceSqlServerTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ConnectToSourceSqlServerSyncTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'ConnectToSource.SqlServer.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_input.py index a7cc0d41dd7e..a81daa14660e 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_input.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_input.py @@ -23,7 +23,8 @@ class ConnectToSourceSqlServerTaskInput(Model): :type source_connection_info: ~azure.mgmt.datamigration.models.SqlConnectionInfo :param check_permissions_group: Permission group for validations. Possible - values include: 'Default', 'MigrationFromSqlServerToAzureDB' + values include: 'Default', 'MigrationFromSqlServerToAzureDB', + 'MigrationFromSqlServerToAzureMI', 'MigrationFromMySQLToAzureDBForMySQL' :type check_permissions_group: str or ~azure.mgmt.datamigration.models.ServerLevelPermissionsGroup :param collect_logins: Flag for whether to collect logins from source @@ -32,6 +33,9 @@ class ConnectToSourceSqlServerTaskInput(Model): :param collect_agent_jobs: Flag for whether to collect agent jobs from source server. Default value: False . :type collect_agent_jobs: bool + :param collect_tde_certificate_info: Flag for whether to collect TDE + Certificate names from source server. Default value: False . + :type collect_tde_certificate_info: bool """ _validation = { @@ -43,6 +47,7 @@ class ConnectToSourceSqlServerTaskInput(Model): 'check_permissions_group': {'key': 'checkPermissionsGroup', 'type': 'str'}, 'collect_logins': {'key': 'collectLogins', 'type': 'bool'}, 'collect_agent_jobs': {'key': 'collectAgentJobs', 'type': 'bool'}, + 'collect_tde_certificate_info': {'key': 'collectTdeCertificateInfo', 'type': 'bool'}, } def __init__(self, **kwargs): @@ -51,3 +56,4 @@ def __init__(self, **kwargs): self.check_permissions_group = kwargs.get('check_permissions_group', None) self.collect_logins = kwargs.get('collect_logins', False) self.collect_agent_jobs = kwargs.get('collect_agent_jobs', False) + self.collect_tde_certificate_info = kwargs.get('collect_tde_certificate_info', False) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_input_py3.py index db247d3cb17b..30afc6f8d8cd 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_input_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_input_py3.py @@ -23,7 +23,8 @@ class ConnectToSourceSqlServerTaskInput(Model): :type source_connection_info: ~azure.mgmt.datamigration.models.SqlConnectionInfo :param check_permissions_group: Permission group for validations. Possible - values include: 'Default', 'MigrationFromSqlServerToAzureDB' + values include: 'Default', 'MigrationFromSqlServerToAzureDB', + 'MigrationFromSqlServerToAzureMI', 'MigrationFromMySQLToAzureDBForMySQL' :type check_permissions_group: str or ~azure.mgmt.datamigration.models.ServerLevelPermissionsGroup :param collect_logins: Flag for whether to collect logins from source @@ -32,6 +33,9 @@ class ConnectToSourceSqlServerTaskInput(Model): :param collect_agent_jobs: Flag for whether to collect agent jobs from source server. Default value: False . :type collect_agent_jobs: bool + :param collect_tde_certificate_info: Flag for whether to collect TDE + Certificate names from source server. Default value: False . + :type collect_tde_certificate_info: bool """ _validation = { @@ -43,11 +47,13 @@ class ConnectToSourceSqlServerTaskInput(Model): 'check_permissions_group': {'key': 'checkPermissionsGroup', 'type': 'str'}, 'collect_logins': {'key': 'collectLogins', 'type': 'bool'}, 'collect_agent_jobs': {'key': 'collectAgentJobs', 'type': 'bool'}, + 'collect_tde_certificate_info': {'key': 'collectTdeCertificateInfo', 'type': 'bool'}, } - def __init__(self, *, source_connection_info, check_permissions_group=None, collect_logins: bool=False, collect_agent_jobs: bool=False, **kwargs) -> None: + def __init__(self, *, source_connection_info, check_permissions_group=None, collect_logins: bool=False, collect_agent_jobs: bool=False, collect_tde_certificate_info: bool=False, **kwargs) -> None: super(ConnectToSourceSqlServerTaskInput, self).__init__(**kwargs) self.source_connection_info = source_connection_info self.check_permissions_group = check_permissions_group self.collect_logins = collect_logins self.collect_agent_jobs = collect_agent_jobs + self.collect_tde_certificate_info = collect_tde_certificate_info diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_agent_job_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_agent_job_level.py index 973bec72df1e..5e94d9de1293 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_agent_job_level.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_agent_job_level.py @@ -13,7 +13,7 @@ class ConnectToSourceSqlServerTaskOutputAgentJobLevel(ConnectToSourceSqlServerTaskOutput): - """AgentJob level output for the task that validates connection to SQL Server + """Agent Job level output for the task that validates connection to SQL Server and also validates source server requirements. Variables are only populated by the server, and will be ignored when @@ -25,17 +25,20 @@ class ConnectToSourceSqlServerTaskOutputAgentJobLevel(ConnectToSourceSqlServerTa :vartype id: str :param result_type: Required. Constant filled by server. :type result_type: str - :ivar name: AgentJob name + :ivar name: Agent Job name :vartype name: str - :ivar job_category: The type of AgentJob. + :ivar job_category: The type of Agent Job. :vartype job_category: str - :ivar is_enabled: The state of the original AgentJob. + :ivar is_enabled: The state of the original Agent Job. :vartype is_enabled: bool - :ivar job_owner: The owner of the AgentJob + :ivar job_owner: The owner of the Agent Job :vartype job_owner: str - :ivar last_executed_on: UTC Date and time when the AgentJob was last + :ivar last_executed_on: UTC Date and time when the Agent Job was last executed. :vartype last_executed_on: datetime + :ivar validation_errors: Validation errors + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] :ivar migration_eligibility: Information about eligiblity of agent job for migration. :vartype migration_eligibility: @@ -50,6 +53,7 @@ class ConnectToSourceSqlServerTaskOutputAgentJobLevel(ConnectToSourceSqlServerTa 'is_enabled': {'readonly': True}, 'job_owner': {'readonly': True}, 'last_executed_on': {'readonly': True}, + 'validation_errors': {'readonly': True}, 'migration_eligibility': {'readonly': True}, } @@ -61,6 +65,7 @@ class ConnectToSourceSqlServerTaskOutputAgentJobLevel(ConnectToSourceSqlServerTa 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, 'job_owner': {'key': 'jobOwner', 'type': 'str'}, 'last_executed_on': {'key': 'lastExecutedOn', 'type': 'iso-8601'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, 'migration_eligibility': {'key': 'migrationEligibility', 'type': 'MigrationEligibilityInfo'}, } @@ -71,5 +76,6 @@ def __init__(self, **kwargs): self.is_enabled = None self.job_owner = None self.last_executed_on = None + self.validation_errors = None self.migration_eligibility = None self.result_type = 'AgentJobLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_agent_job_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_agent_job_level_py3.py index 2380a3f6ff12..ee49275f2e0b 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_agent_job_level_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_agent_job_level_py3.py @@ -13,7 +13,7 @@ class ConnectToSourceSqlServerTaskOutputAgentJobLevel(ConnectToSourceSqlServerTaskOutput): - """AgentJob level output for the task that validates connection to SQL Server + """Agent Job level output for the task that validates connection to SQL Server and also validates source server requirements. Variables are only populated by the server, and will be ignored when @@ -25,17 +25,20 @@ class ConnectToSourceSqlServerTaskOutputAgentJobLevel(ConnectToSourceSqlServerTa :vartype id: str :param result_type: Required. Constant filled by server. :type result_type: str - :ivar name: AgentJob name + :ivar name: Agent Job name :vartype name: str - :ivar job_category: The type of AgentJob. + :ivar job_category: The type of Agent Job. :vartype job_category: str - :ivar is_enabled: The state of the original AgentJob. + :ivar is_enabled: The state of the original Agent Job. :vartype is_enabled: bool - :ivar job_owner: The owner of the AgentJob + :ivar job_owner: The owner of the Agent Job :vartype job_owner: str - :ivar last_executed_on: UTC Date and time when the AgentJob was last + :ivar last_executed_on: UTC Date and time when the Agent Job was last executed. :vartype last_executed_on: datetime + :ivar validation_errors: Validation errors + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] :ivar migration_eligibility: Information about eligiblity of agent job for migration. :vartype migration_eligibility: @@ -50,6 +53,7 @@ class ConnectToSourceSqlServerTaskOutputAgentJobLevel(ConnectToSourceSqlServerTa 'is_enabled': {'readonly': True}, 'job_owner': {'readonly': True}, 'last_executed_on': {'readonly': True}, + 'validation_errors': {'readonly': True}, 'migration_eligibility': {'readonly': True}, } @@ -61,6 +65,7 @@ class ConnectToSourceSqlServerTaskOutputAgentJobLevel(ConnectToSourceSqlServerTa 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, 'job_owner': {'key': 'jobOwner', 'type': 'str'}, 'last_executed_on': {'key': 'lastExecutedOn', 'type': 'iso-8601'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, 'migration_eligibility': {'key': 'migrationEligibility', 'type': 'MigrationEligibilityInfo'}, } @@ -71,5 +76,6 @@ def __init__(self, **kwargs) -> None: self.is_enabled = None self.job_owner = None self.last_executed_on = None + self.validation_errors = None self.migration_eligibility = None self.result_type = 'AgentJobLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_login_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_login_level.py index ad28eb21c17e..1e66cb6fce94 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_login_level.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_login_level.py @@ -55,7 +55,7 @@ class ConnectToSourceSqlServerTaskOutputLoginLevel(ConnectToSourceSqlServerTaskO 'id': {'key': 'id', 'type': 'str'}, 'result_type': {'key': 'resultType', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, - 'login_type': {'key': 'loginType', 'type': 'LoginType'}, + 'login_type': {'key': 'loginType', 'type': 'str'}, 'default_database': {'key': 'defaultDatabase', 'type': 'str'}, 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, 'migration_eligibility': {'key': 'migrationEligibility', 'type': 'MigrationEligibilityInfo'}, diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_login_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_login_level_py3.py index a02d6b46a3df..43367462ae9c 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_login_level_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_login_level_py3.py @@ -55,7 +55,7 @@ class ConnectToSourceSqlServerTaskOutputLoginLevel(ConnectToSourceSqlServerTaskO 'id': {'key': 'id', 'type': 'str'}, 'result_type': {'key': 'resultType', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, - 'login_type': {'key': 'loginType', 'type': 'LoginType'}, + 'login_type': {'key': 'loginType', 'type': 'str'}, 'default_database': {'key': 'defaultDatabase', 'type': 'str'}, 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, 'migration_eligibility': {'key': 'migrationEligibility', 'type': 'MigrationEligibilityInfo'}, diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_task_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_task_level.py index e6d060ea8e71..387bb04e7ab1 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_task_level.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_task_level.py @@ -32,6 +32,9 @@ class ConnectToSourceSqlServerTaskOutputTaskLevel(ConnectToSourceSqlServerTaskOu :vartype logins: dict[str, str] :ivar agent_jobs: Source agent jobs as a map from agent job name to id. :vartype agent_jobs: dict[str, str] + :ivar database_tde_certificate_mapping: Mapping from database name to TDE + certificate name, if applicable + :vartype database_tde_certificate_mapping: dict[str, str] :ivar source_server_version: Source server version :vartype source_server_version: str :ivar source_server_brand_version: Source server brand version @@ -47,6 +50,7 @@ class ConnectToSourceSqlServerTaskOutputTaskLevel(ConnectToSourceSqlServerTaskOu 'databases': {'readonly': True}, 'logins': {'readonly': True}, 'agent_jobs': {'readonly': True}, + 'database_tde_certificate_mapping': {'readonly': True}, 'source_server_version': {'readonly': True}, 'source_server_brand_version': {'readonly': True}, 'validation_errors': {'readonly': True}, @@ -58,6 +62,7 @@ class ConnectToSourceSqlServerTaskOutputTaskLevel(ConnectToSourceSqlServerTaskOu 'databases': {'key': 'databases', 'type': '{str}'}, 'logins': {'key': 'logins', 'type': '{str}'}, 'agent_jobs': {'key': 'agentJobs', 'type': '{str}'}, + 'database_tde_certificate_mapping': {'key': 'databaseTdeCertificateMapping', 'type': '{str}'}, 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, @@ -68,6 +73,7 @@ def __init__(self, **kwargs): self.databases = None self.logins = None self.agent_jobs = None + self.database_tde_certificate_mapping = None self.source_server_version = None self.source_server_brand_version = None self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_task_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_task_level_py3.py index 35fda096b09d..c5576f17315f 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_task_level_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_output_task_level_py3.py @@ -32,6 +32,9 @@ class ConnectToSourceSqlServerTaskOutputTaskLevel(ConnectToSourceSqlServerTaskOu :vartype logins: dict[str, str] :ivar agent_jobs: Source agent jobs as a map from agent job name to id. :vartype agent_jobs: dict[str, str] + :ivar database_tde_certificate_mapping: Mapping from database name to TDE + certificate name, if applicable + :vartype database_tde_certificate_mapping: dict[str, str] :ivar source_server_version: Source server version :vartype source_server_version: str :ivar source_server_brand_version: Source server brand version @@ -47,6 +50,7 @@ class ConnectToSourceSqlServerTaskOutputTaskLevel(ConnectToSourceSqlServerTaskOu 'databases': {'readonly': True}, 'logins': {'readonly': True}, 'agent_jobs': {'readonly': True}, + 'database_tde_certificate_mapping': {'readonly': True}, 'source_server_version': {'readonly': True}, 'source_server_brand_version': {'readonly': True}, 'validation_errors': {'readonly': True}, @@ -58,6 +62,7 @@ class ConnectToSourceSqlServerTaskOutputTaskLevel(ConnectToSourceSqlServerTaskOu 'databases': {'key': 'databases', 'type': '{str}'}, 'logins': {'key': 'logins', 'type': '{str}'}, 'agent_jobs': {'key': 'agentJobs', 'type': '{str}'}, + 'database_tde_certificate_mapping': {'key': 'databaseTdeCertificateMapping', 'type': '{str}'}, 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, @@ -68,6 +73,7 @@ def __init__(self, **kwargs) -> None: self.databases = None self.logins = None self.agent_jobs = None + self.database_tde_certificate_mapping = None self.source_server_version = None self.source_server_brand_version = None self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_properties.py index 01f6e015c94c..3e7a2f75f429 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_properties.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_properties.py @@ -21,12 +21,15 @@ class ConnectToSourceSqlServerTaskProperties(ProjectTaskProperties): All required parameters must be populated in order to send to Azure. - :param errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str :param input: Task input @@ -38,7 +41,9 @@ class ConnectToSourceSqlServerTaskProperties(ProjectTaskProperties): """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, 'output': {'readonly': True}, } @@ -46,6 +51,7 @@ class ConnectToSourceSqlServerTaskProperties(ProjectTaskProperties): _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, 'input': {'key': 'input', 'type': 'ConnectToSourceSqlServerTaskInput'}, 'output': {'key': 'output', 'type': '[ConnectToSourceSqlServerTaskOutput]'}, diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_properties_py3.py index aff6212ab398..2919e63b85be 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_properties_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_source_sql_server_task_properties_py3.py @@ -21,12 +21,15 @@ class ConnectToSourceSqlServerTaskProperties(ProjectTaskProperties): All required parameters must be populated in order to send to Azure. - :param errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str :param input: Task input @@ -38,7 +41,9 @@ class ConnectToSourceSqlServerTaskProperties(ProjectTaskProperties): """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, 'output': {'readonly': True}, } @@ -46,13 +51,14 @@ class ConnectToSourceSqlServerTaskProperties(ProjectTaskProperties): _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, 'input': {'key': 'input', 'type': 'ConnectToSourceSqlServerTaskInput'}, 'output': {'key': 'output', 'type': '[ConnectToSourceSqlServerTaskOutput]'}, } - def __init__(self, *, errors=None, input=None, **kwargs) -> None: - super(ConnectToSourceSqlServerTaskProperties, self).__init__(errors=errors, **kwargs) + def __init__(self, *, input=None, **kwargs) -> None: + super(ConnectToSourceSqlServerTaskProperties, self).__init__(**kwargs) self.input = input self.output = None self.task_type = 'ConnectToSource.SqlServer' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_input.py new file mode 100644 index 000000000000..3a68faf64099 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_input.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetAzureDbForMySqlTaskInput(Model): + """Input for the task that validates connection to Azure Database for MySQL + and target server requirements. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for source + MySQL server + :type source_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param target_connection_info: Required. Connection information for target + Azure Database for MySQL server + :type target_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, + } + + def __init__(self, **kwargs): + super(ConnectToTargetAzureDbForMySqlTaskInput, self).__init__(**kwargs) + self.source_connection_info = kwargs.get('source_connection_info', None) + self.target_connection_info = kwargs.get('target_connection_info', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_input_py3.py new file mode 100644 index 000000000000..e8c5c825fde4 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_input_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetAzureDbForMySqlTaskInput(Model): + """Input for the task that validates connection to Azure Database for MySQL + and target server requirements. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for source + MySQL server + :type source_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param target_connection_info: Required. Connection information for target + Azure Database for MySQL server + :type target_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, **kwargs) -> None: + super(ConnectToTargetAzureDbForMySqlTaskInput, self).__init__(**kwargs) + self.source_connection_info = source_connection_info + self.target_connection_info = target_connection_info diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_output.py new file mode 100644 index 000000000000..d8422e1ce711 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_output.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetAzureDbForMySqlTaskOutput(Model): + """Output for the task that validates connection to Azure Database for MySQL + and target server requirements. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar server_version: Version of the target server + :vartype server_version: str + :ivar databases: List of databases on target server + :vartype databases: list[str] + :ivar target_server_brand_version: Target server brand version + :vartype target_server_brand_version: str + :ivar validation_errors: Validation errors associated with the task + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'server_version': {'readonly': True}, + 'databases': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'server_version': {'key': 'serverVersion', 'type': 'str'}, + 'databases': {'key': 'databases', 'type': '[str]'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(ConnectToTargetAzureDbForMySqlTaskOutput, self).__init__(**kwargs) + self.id = None + self.server_version = None + self.databases = None + self.target_server_brand_version = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_output_py3.py new file mode 100644 index 000000000000..2d061985a741 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_output_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetAzureDbForMySqlTaskOutput(Model): + """Output for the task that validates connection to Azure Database for MySQL + and target server requirements. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar server_version: Version of the target server + :vartype server_version: str + :ivar databases: List of databases on target server + :vartype databases: list[str] + :ivar target_server_brand_version: Target server brand version + :vartype target_server_brand_version: str + :ivar validation_errors: Validation errors associated with the task + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'server_version': {'readonly': True}, + 'databases': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'server_version': {'key': 'serverVersion', 'type': 'str'}, + 'databases': {'key': 'databases', 'type': '[str]'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectToTargetAzureDbForMySqlTaskOutput, self).__init__(**kwargs) + self.id = None + self.server_version = None + self.databases = None + self.target_server_brand_version = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_properties.py new file mode 100644 index 000000000000..b686097526d9 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class ConnectToTargetAzureDbForMySqlTaskProperties(ProjectTaskProperties): + """Properties for the task that validates connection to Azure Database for + MySQL and target server requirements. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToTargetAzureDbForMySqlTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToTargetAzureDbForMySqlTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToTargetAzureDbForMySqlTaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToTargetAzureDbForMySqlTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(ConnectToTargetAzureDbForMySqlTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'ConnectToTarget.AzureDbForMySql' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_properties_py3.py new file mode 100644 index 000000000000..28869d4a6915 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_azure_db_for_my_sql_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class ConnectToTargetAzureDbForMySqlTaskProperties(ProjectTaskProperties): + """Properties for the task that validates connection to Azure Database for + MySQL and target server requirements. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToTargetAzureDbForMySqlTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToTargetAzureDbForMySqlTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToTargetAzureDbForMySqlTaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToTargetAzureDbForMySqlTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ConnectToTargetAzureDbForMySqlTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'ConnectToTarget.AzureDbForMySql' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_db_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_db_task_properties.py index 4f92302d5253..60310b599545 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_db_task_properties.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_db_task_properties.py @@ -21,12 +21,15 @@ class ConnectToTargetSqlDbTaskProperties(ProjectTaskProperties): All required parameters must be populated in order to send to Azure. - :param errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str :param input: Task input @@ -38,7 +41,9 @@ class ConnectToTargetSqlDbTaskProperties(ProjectTaskProperties): """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, 'output': {'readonly': True}, } @@ -46,6 +51,7 @@ class ConnectToTargetSqlDbTaskProperties(ProjectTaskProperties): _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, 'input': {'key': 'input', 'type': 'ConnectToTargetSqlDbTaskInput'}, 'output': {'key': 'output', 'type': '[ConnectToTargetSqlDbTaskOutput]'}, diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_db_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_db_task_properties_py3.py index 5c8b6a2eaadf..05a178dc988b 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_db_task_properties_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_db_task_properties_py3.py @@ -21,12 +21,15 @@ class ConnectToTargetSqlDbTaskProperties(ProjectTaskProperties): All required parameters must be populated in order to send to Azure. - :param errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str :param input: Task input @@ -38,7 +41,9 @@ class ConnectToTargetSqlDbTaskProperties(ProjectTaskProperties): """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, 'output': {'readonly': True}, } @@ -46,13 +51,14 @@ class ConnectToTargetSqlDbTaskProperties(ProjectTaskProperties): _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, 'input': {'key': 'input', 'type': 'ConnectToTargetSqlDbTaskInput'}, 'output': {'key': 'output', 'type': '[ConnectToTargetSqlDbTaskOutput]'}, } - def __init__(self, *, errors=None, input=None, **kwargs) -> None: - super(ConnectToTargetSqlDbTaskProperties, self).__init__(errors=errors, **kwargs) + def __init__(self, *, input=None, **kwargs) -> None: + super(ConnectToTargetSqlDbTaskProperties, self).__init__(**kwargs) self.input = input self.output = None self.task_type = 'ConnectToTarget.SqlDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_input.py new file mode 100644 index 000000000000..5c4a175938d9 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_input.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetSqlMITaskInput(Model): + """Input for the task that validates connection to Azure SQL Database Managed + Instance. + + All required parameters must be populated in order to send to Azure. + + :param target_connection_info: Required. Connection information for target + SQL Server + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + """ + + _validation = { + 'target_connection_info': {'required': True}, + } + + _attribute_map = { + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + } + + def __init__(self, **kwargs): + super(ConnectToTargetSqlMITaskInput, self).__init__(**kwargs) + self.target_connection_info = kwargs.get('target_connection_info', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_input_py3.py new file mode 100644 index 000000000000..873c751e9c5c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_input_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetSqlMITaskInput(Model): + """Input for the task that validates connection to Azure SQL Database Managed + Instance. + + All required parameters must be populated in order to send to Azure. + + :param target_connection_info: Required. Connection information for target + SQL Server + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + """ + + _validation = { + 'target_connection_info': {'required': True}, + } + + _attribute_map = { + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + } + + def __init__(self, *, target_connection_info, **kwargs) -> None: + super(ConnectToTargetSqlMITaskInput, self).__init__(**kwargs) + self.target_connection_info = target_connection_info diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_output.py new file mode 100644 index 000000000000..e57a86874315 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_output.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetSqlMITaskOutput(Model): + """Output for the task that validates connection to Azure SQL Database Managed + Instance. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server_brand_version: Target server brand version + :vartype target_server_brand_version: str + :ivar logins: List of logins on the target server. + :vartype logins: list[str] + :ivar agent_jobs: List of agent jobs on the target server. + :vartype agent_jobs: list[str] + :ivar validation_errors: Validation errors + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + 'logins': {'readonly': True}, + 'agent_jobs': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + 'logins': {'key': 'logins', 'type': '[str]'}, + 'agent_jobs': {'key': 'agentJobs', 'type': '[str]'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(ConnectToTargetSqlMITaskOutput, self).__init__(**kwargs) + self.id = None + self.target_server_version = None + self.target_server_brand_version = None + self.logins = None + self.agent_jobs = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_output_py3.py new file mode 100644 index 000000000000..1bb59fabd44f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_output_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetSqlMITaskOutput(Model): + """Output for the task that validates connection to Azure SQL Database Managed + Instance. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server_brand_version: Target server brand version + :vartype target_server_brand_version: str + :ivar logins: List of logins on the target server. + :vartype logins: list[str] + :ivar agent_jobs: List of agent jobs on the target server. + :vartype agent_jobs: list[str] + :ivar validation_errors: Validation errors + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + 'logins': {'readonly': True}, + 'agent_jobs': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + 'logins': {'key': 'logins', 'type': '[str]'}, + 'agent_jobs': {'key': 'agentJobs', 'type': '[str]'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectToTargetSqlMITaskOutput, self).__init__(**kwargs) + self.id = None + self.target_server_version = None + self.target_server_brand_version = None + self.logins = None + self.agent_jobs = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_properties.py new file mode 100644 index 000000000000..33fd07ec8710 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class ConnectToTargetSqlMITaskProperties(ProjectTaskProperties): + """Properties for the task that validates connection to Azure SQL Database + Managed Instance. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToTargetSqlMITaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToTargetSqlMITaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToTargetSqlMITaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToTargetSqlMITaskOutput]'}, + } + + def __init__(self, **kwargs): + super(ConnectToTargetSqlMITaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'ConnectToTarget.AzureSqlDbMI' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_properties_py3.py new file mode 100644 index 000000000000..a072295a0a97 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_mi_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class ConnectToTargetSqlMITaskProperties(ProjectTaskProperties): + """Properties for the task that validates connection to Azure SQL Database + Managed Instance. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToTargetSqlMITaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToTargetSqlMITaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToTargetSqlMITaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToTargetSqlMITaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ConnectToTargetSqlMITaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'ConnectToTarget.AzureSqlDbMI' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_input.py new file mode 100644 index 000000000000..625ee797c116 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_input.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetSqlSqlDbSyncTaskInput(Model): + """Input for the task that validates connection to Azure SQL DB and target + server requirements. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for source + SQL Server + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Connection information for target + SQL DB + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + } + + def __init__(self, **kwargs): + super(ConnectToTargetSqlSqlDbSyncTaskInput, self).__init__(**kwargs) + self.source_connection_info = kwargs.get('source_connection_info', None) + self.target_connection_info = kwargs.get('target_connection_info', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_input_py3.py new file mode 100644 index 000000000000..ae6bbdaac350 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_input_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectToTargetSqlSqlDbSyncTaskInput(Model): + """Input for the task that validates connection to Azure SQL DB and target + server requirements. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for source + SQL Server + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Connection information for target + SQL DB + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, **kwargs) -> None: + super(ConnectToTargetSqlSqlDbSyncTaskInput, self).__init__(**kwargs) + self.source_connection_info = source_connection_info + self.target_connection_info = target_connection_info diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_properties.py new file mode 100644 index 000000000000..5d42bea3c97f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class ConnectToTargetSqlSqlDbSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that validates connection to SQL DB and target + server requirements for online migration. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToTargetSqlSqlDbSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToTargetSqlDbTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToTargetSqlSqlDbSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToTargetSqlDbTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(ConnectToTargetSqlSqlDbSyncTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'ConnectToTarget.SqlDb.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_properties_py3.py new file mode 100644 index 000000000000..ac64d25a051d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connect_to_target_sql_sql_db_sync_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class ConnectToTargetSqlSqlDbSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that validates connection to SQL DB and target + server requirements for online migration. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ConnectToTargetSqlSqlDbSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ConnectToTargetSqlDbTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ConnectToTargetSqlSqlDbSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[ConnectToTargetSqlDbTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ConnectToTargetSqlSqlDbSyncTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'ConnectToTarget.SqlDb.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connection_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connection_info.py index 8ea4edeb344c..5b3c0add300c 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connection_info.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connection_info.py @@ -16,7 +16,8 @@ class ConnectionInfo(Model): """Defines the connection properties of a server. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: SqlConnectionInfo + sub-classes are: PostgreSqlConnectionInfo, MySqlConnectionInfo, + MongoDbConnectionInfo, SqlConnectionInfo All required parameters must be populated in order to send to Azure. @@ -39,7 +40,7 @@ class ConnectionInfo(Model): } _subtype_map = { - 'type': {'SqlConnectionInfo': 'SqlConnectionInfo'} + 'type': {'PostgreSqlConnectionInfo': 'PostgreSqlConnectionInfo', 'MySqlConnectionInfo': 'MySqlConnectionInfo', 'MongoDbConnectionInfo': 'MongoDbConnectionInfo', 'SqlConnectionInfo': 'SqlConnectionInfo'} } def __init__(self, **kwargs): diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connection_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connection_info_py3.py index 1a1b80f51376..c2f2208ba3d7 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connection_info_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/connection_info_py3.py @@ -16,7 +16,8 @@ class ConnectionInfo(Model): """Defines the connection properties of a server. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: SqlConnectionInfo + sub-classes are: PostgreSqlConnectionInfo, MySqlConnectionInfo, + MongoDbConnectionInfo, SqlConnectionInfo All required parameters must be populated in order to send to Azure. @@ -39,7 +40,7 @@ class ConnectionInfo(Model): } _subtype_map = { - 'type': {'SqlConnectionInfo': 'SqlConnectionInfo'} + 'type': {'PostgreSqlConnectionInfo': 'PostgreSqlConnectionInfo', 'MySqlConnectionInfo': 'MySqlConnectionInfo', 'MongoDbConnectionInfo': 'MongoDbConnectionInfo', 'SqlConnectionInfo': 'SqlConnectionInfo'} } def __init__(self, *, user_name: str=None, password: str=None, **kwargs) -> None: diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_integrity_validation_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_integrity_validation_result.py index 2a3c8b040b67..7b82ac28cc97 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_integrity_validation_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_integrity_validation_result.py @@ -15,22 +15,14 @@ class DataIntegrityValidationResult(Model): """Results for checksum based Data Integrity validation results. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar failed_objects: List of failed table names of source and target pair - :vartype failed_objects: dict[str, str] - :ivar validation_errors: List of errors that happened while performing + :param failed_objects: List of failed table names of source and target + pair + :type failed_objects: dict[str, str] + :param validation_errors: List of errors that happened while performing data integrity validation - :vartype validation_errors: - ~azure.mgmt.datamigration.models.ValidationError + :type validation_errors: ~azure.mgmt.datamigration.models.ValidationError """ - _validation = { - 'failed_objects': {'readonly': True}, - 'validation_errors': {'readonly': True}, - } - _attribute_map = { 'failed_objects': {'key': 'failedObjects', 'type': '{str}'}, 'validation_errors': {'key': 'validationErrors', 'type': 'ValidationError'}, @@ -38,5 +30,5 @@ class DataIntegrityValidationResult(Model): def __init__(self, **kwargs): super(DataIntegrityValidationResult, self).__init__(**kwargs) - self.failed_objects = None - self.validation_errors = None + self.failed_objects = kwargs.get('failed_objects', None) + self.validation_errors = kwargs.get('validation_errors', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_integrity_validation_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_integrity_validation_result_py3.py index 2a0f4f51dd4e..026a2b642eb8 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_integrity_validation_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_integrity_validation_result_py3.py @@ -15,28 +15,20 @@ class DataIntegrityValidationResult(Model): """Results for checksum based Data Integrity validation results. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar failed_objects: List of failed table names of source and target pair - :vartype failed_objects: dict[str, str] - :ivar validation_errors: List of errors that happened while performing + :param failed_objects: List of failed table names of source and target + pair + :type failed_objects: dict[str, str] + :param validation_errors: List of errors that happened while performing data integrity validation - :vartype validation_errors: - ~azure.mgmt.datamigration.models.ValidationError + :type validation_errors: ~azure.mgmt.datamigration.models.ValidationError """ - _validation = { - 'failed_objects': {'readonly': True}, - 'validation_errors': {'readonly': True}, - } - _attribute_map = { 'failed_objects': {'key': 'failedObjects', 'type': '{str}'}, 'validation_errors': {'key': 'validationErrors', 'type': 'ValidationError'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, failed_objects=None, validation_errors=None, **kwargs) -> None: super(DataIntegrityValidationResult, self).__init__(**kwargs) - self.failed_objects = None - self.validation_errors = None + self.failed_objects = failed_objects + self.validation_errors = validation_errors diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_error.py index 7db00f94bcd5..110159c5b509 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_error.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_error.py @@ -20,8 +20,7 @@ class DataMigrationError(Model): :ivar message: Error description :vartype message: str - :param type: Type of error. Possible values include: 'Default', 'Warning', - 'Error' + :param type: Possible values include: 'Default', 'Warning', 'Error' :type type: str or ~azure.mgmt.datamigration.models.ErrorType """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_error_py3.py index c2d670e0227f..9cb1fa6fc5cb 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_error_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_error_py3.py @@ -20,8 +20,7 @@ class DataMigrationError(Model): :ivar message: Error description :vartype message: str - :param type: Type of error. Possible values include: 'Default', 'Warning', - 'Error' + :param type: Possible values include: 'Default', 'Warning', 'Error' :type type: str or ~azure.mgmt.datamigration.models.ErrorType """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_service_client_enums.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_service_client_enums.py index d239d78e1fbb..627668009aed 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_service_client_enums.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/data_migration_service_client_enums.py @@ -12,6 +12,107 @@ from enum import Enum +class CommandState(str, Enum): + + unknown = "Unknown" + accepted = "Accepted" + running = "Running" + succeeded = "Succeeded" + failed = "Failed" + + +class SqlSourcePlatform(str, Enum): + + sql_on_prem = "SqlOnPrem" + + +class AuthenticationType(str, Enum): + + none = "None" + windows_authentication = "WindowsAuthentication" + sql_authentication = "SqlAuthentication" + active_directory_integrated = "ActiveDirectoryIntegrated" + active_directory_password = "ActiveDirectoryPassword" + + +class MongoDbErrorType(str, Enum): + + error = "Error" + validation_error = "ValidationError" + warning = "Warning" + + +class MongoDbMigrationState(str, Enum): + + not_started = "NotStarted" + validating_input = "ValidatingInput" + initializing = "Initializing" + restarting = "Restarting" + copying = "Copying" + initial_replay = "InitialReplay" + replaying = "Replaying" + finalizing = "Finalizing" + complete = "Complete" + canceled = "Canceled" + failed = "Failed" + + +class MongoDbShardKeyOrder(str, Enum): + + forward = "Forward" + reverse = "Reverse" + hashed = "Hashed" + + +class MongoDbReplication(str, Enum): + + disabled = "Disabled" + one_time = "OneTime" + continuous = "Continuous" + + +class BackupType(str, Enum): + + database = "Database" + transaction_log = "TransactionLog" + file = "File" + differential_database = "DifferentialDatabase" + differential_file = "DifferentialFile" + partial = "Partial" + differential_partial = "DifferentialPartial" + + +class BackupMode(str, Enum): + + create_backup = "CreateBackup" + existing_backup = "ExistingBackup" + + +class SyncTableMigrationState(str, Enum): + + before_load = "BEFORE_LOAD" + full_load = "FULL_LOAD" + completed = "COMPLETED" + canceled = "CANCELED" + error = "ERROR" + failed = "FAILED" + + +class SyncDatabaseMigrationReportingState(str, Enum): + + undefined = "UNDEFINED" + configuring = "CONFIGURING" + initialiazing = "INITIALIAZING" + starting = "STARTING" + running = "RUNNING" + ready_to_complete = "READY_TO_COMPLETE" + completing = "COMPLETING" + complete = "COMPLETE" + cancelling = "CANCELLING" + cancelled = "CANCELLED" + failed = "FAILED" + + class ValidationStatus(str, Enum): default = "Default" @@ -20,8 +121,8 @@ class ValidationStatus(str, Enum): in_progress = "InProgress" completed = "Completed" completed_with_issues = "CompletedWithIssues" - failed = "Failed" stopped = "Stopped" + failed = "Failed" class Severity(str, Enum): @@ -82,13 +183,17 @@ class MigrationStatus(str, Enum): completed_with_warnings = "CompletedWithWarnings" -class AuthenticationType(str, Enum): +class LoginMigrationStage(str, Enum): none = "None" - windows_authentication = "WindowsAuthentication" - sql_authentication = "SqlAuthentication" - active_directory_integrated = "ActiveDirectoryIntegrated" - active_directory_password = "ActiveDirectoryPassword" + initialize = "Initialize" + login_migration = "LoginMigration" + establish_user_mapping = "EstablishUserMapping" + assign_role_membership = "AssignRoleMembership" + assign_role_ownership = "AssignRoleOwnership" + establish_server_permissions = "EstablishServerPermissions" + establish_object_permissions = "EstablishObjectPermissions" + completed = "Completed" class LoginType(str, Enum): @@ -139,6 +244,15 @@ class ServerLevelPermissionsGroup(str, Enum): default = "Default" migration_from_sql_server_to_azure_db = "MigrationFromSqlServerToAzureDB" + migration_from_sql_server_to_azure_mi = "MigrationFromSqlServerToAzureMI" + migration_from_my_sql_to_azure_db_for_my_sql = "MigrationFromMySQLToAzureDBForMySQL" + + +class MongoDbClusterType(str, Enum): + + blob_container = "BlobContainer" + cosmos_db = "CosmosDb" + mongo_db = "MongoDb" class TaskState(str, Enum): @@ -170,12 +284,19 @@ class ServiceProvisioningState(str, Enum): class ProjectTargetPlatform(str, Enum): sqldb = "SQLDB" + sqlmi = "SQLMI" + azure_db_for_my_sql = "AzureDbForMySql" + azure_db_for_postgre_sql = "AzureDbForPostgreSql" + mongo_db = "MongoDb" unknown = "Unknown" class ProjectSourcePlatform(str, Enum): sql = "SQL" + my_sql = "MySQL" + postgre_sql = "PostgreSql" + mongo_db = "MongoDb" unknown = "Unknown" @@ -216,21 +337,44 @@ class ResourceSkuCapacityScaleType(str, Enum): none = "None" -class ErrorType(str, Enum): +class MySqlTargetPlatformType(str, Enum): - default = "Default" - warning = "Warning" - error = "Error" + azure_db_for_my_sql = "AzureDbForMySQL" -class LoginMigrationStage(str, Enum): +class SchemaMigrationOption(str, Enum): none = "None" - initialize = "Initialize" - login_migration = "LoginMigration" - establish_user_mapping = "EstablishUserMapping" - assign_role_membership = "AssignRoleMembership" - assign_role_ownership = "AssignRoleOwnership" - establish_server_permissions = "EstablishServerPermissions" - establish_object_permissions = "EstablishObjectPermissions" + extract_from_source = "ExtractFromSource" + use_storage_file = "UseStorageFile" + + +class SchemaMigrationStage(str, Enum): + + not_started = "NotStarted" + validating_inputs = "ValidatingInputs" + collecting_objects = "CollectingObjects" + downloading_script = "DownloadingScript" + generating_script = "GeneratingScript" + uploading_script = "UploadingScript" + deploying_schema = "DeployingSchema" + completed = "Completed" + completed_with_warnings = "CompletedWithWarnings" + failed = "Failed" + + +class DataMigrationResultCode(str, Enum): + + initial = "Initial" completed = "Completed" + object_not_exists_in_source = "ObjectNotExistsInSource" + object_not_exists_in_target = "ObjectNotExistsInTarget" + target_object_is_inaccessible = "TargetObjectIsInaccessible" + fatal_error = "FatalError" + + +class ErrorType(str, Enum): + + default = "Default" + warning = "Warning" + error = "Error" diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database.py index a098e7c6a412..527ea44ee80c 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database.py @@ -15,73 +15,50 @@ class Database(Model): """Information about a single database. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Unique identifier for the database - :vartype id: str - :ivar name: Name of the database - :vartype name: str - :ivar compatibility_level: SQL Server compatibility level of database. + :param id: Unique identifier for the database + :type id: str + :param name: Name of the database + :type name: str + :param compatibility_level: SQL Server compatibility level of database. Possible values include: 'CompatLevel80', 'CompatLevel90', 'CompatLevel100', 'CompatLevel110', 'CompatLevel120', 'CompatLevel130', 'CompatLevel140' - :vartype compatibility_level: str or + :type compatibility_level: str or ~azure.mgmt.datamigration.models.DatabaseCompatLevel - :ivar collation: Collation name of the database - :vartype collation: str - :ivar server_name: Name of the server - :vartype server_name: str - :ivar fqdn: Fully qualified name - :vartype fqdn: str - :ivar install_id: Install id of the database - :vartype install_id: str - :ivar server_version: Version of the server - :vartype server_version: str - :ivar server_edition: Edition of the server - :vartype server_edition: str - :ivar server_level: Product level of the server (RTM, SP, CTP). - :vartype server_level: str - :ivar server_default_data_path: Default path of the data files - :vartype server_default_data_path: str - :ivar server_default_log_path: Default path of the log files - :vartype server_default_log_path: str - :ivar server_default_backup_path: Default path of the backup folder - :vartype server_default_backup_path: str - :ivar server_core_count: Number of cores on the server - :vartype server_core_count: int - :ivar server_visible_online_core_count: Number of cores on the server that - have VISIBLE ONLINE status - :vartype server_visible_online_core_count: int - :ivar database_state: State of the database. Possible values include: + :param collation: Collation name of the database + :type collation: str + :param server_name: Name of the server + :type server_name: str + :param fqdn: Fully qualified name + :type fqdn: str + :param install_id: Install id of the database + :type install_id: str + :param server_version: Version of the server + :type server_version: str + :param server_edition: Edition of the server + :type server_edition: str + :param server_level: Product level of the server (RTM, SP, CTP). + :type server_level: str + :param server_default_data_path: Default path of the data files + :type server_default_data_path: str + :param server_default_log_path: Default path of the log files + :type server_default_log_path: str + :param server_default_backup_path: Default path of the backup folder + :type server_default_backup_path: str + :param server_core_count: Number of cores on the server + :type server_core_count: int + :param server_visible_online_core_count: Number of cores on the server + that have VISIBLE ONLINE status + :type server_visible_online_core_count: int + :param database_state: State of the database. Possible values include: 'Online', 'Restoring', 'Recovering', 'RecoveryPending', 'Suspect', 'Emergency', 'Offline', 'Copying', 'OfflineSecondary' - :vartype database_state: str or + :type database_state: str or ~azure.mgmt.datamigration.models.DatabaseState - :ivar server_id: The unique Server Id - :vartype server_id: str + :param server_id: The unique Server Id + :type server_id: str """ - _validation = { - 'id': {'readonly': True}, - 'name': {'readonly': True}, - 'compatibility_level': {'readonly': True}, - 'collation': {'readonly': True}, - 'server_name': {'readonly': True}, - 'fqdn': {'readonly': True}, - 'install_id': {'readonly': True}, - 'server_version': {'readonly': True}, - 'server_edition': {'readonly': True}, - 'server_level': {'readonly': True}, - 'server_default_data_path': {'readonly': True}, - 'server_default_log_path': {'readonly': True}, - 'server_default_backup_path': {'readonly': True}, - 'server_core_count': {'readonly': True}, - 'server_visible_online_core_count': {'readonly': True}, - 'database_state': {'readonly': True}, - 'server_id': {'readonly': True}, - } - _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, @@ -104,20 +81,20 @@ class Database(Model): def __init__(self, **kwargs): super(Database, self).__init__(**kwargs) - self.id = None - self.name = None - self.compatibility_level = None - self.collation = None - self.server_name = None - self.fqdn = None - self.install_id = None - self.server_version = None - self.server_edition = None - self.server_level = None - self.server_default_data_path = None - self.server_default_log_path = None - self.server_default_backup_path = None - self.server_core_count = None - self.server_visible_online_core_count = None - self.database_state = None - self.server_id = None + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.compatibility_level = kwargs.get('compatibility_level', None) + self.collation = kwargs.get('collation', None) + self.server_name = kwargs.get('server_name', None) + self.fqdn = kwargs.get('fqdn', None) + self.install_id = kwargs.get('install_id', None) + self.server_version = kwargs.get('server_version', None) + self.server_edition = kwargs.get('server_edition', None) + self.server_level = kwargs.get('server_level', None) + self.server_default_data_path = kwargs.get('server_default_data_path', None) + self.server_default_log_path = kwargs.get('server_default_log_path', None) + self.server_default_backup_path = kwargs.get('server_default_backup_path', None) + self.server_core_count = kwargs.get('server_core_count', None) + self.server_visible_online_core_count = kwargs.get('server_visible_online_core_count', None) + self.database_state = kwargs.get('database_state', None) + self.server_id = kwargs.get('server_id', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_backup_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_backup_info.py new file mode 100644 index 000000000000..781fd1c8aef8 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_backup_info.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DatabaseBackupInfo(Model): + """Information about backup files when existing backup mode is used. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar database_name: Database name. + :vartype database_name: str + :ivar backup_type: Backup Type. Possible values include: 'Database', + 'TransactionLog', 'File', 'DifferentialDatabase', 'DifferentialFile', + 'Partial', 'DifferentialPartial' + :vartype backup_type: str or ~azure.mgmt.datamigration.models.BackupType + :ivar backup_files: The list of backup files for the current database. + :vartype backup_files: list[str] + :ivar position: Position of current database backup in the file. + :vartype position: int + :ivar is_damaged: Database was damaged when backed up, but the backup + operation was requested to continue despite errors. + :vartype is_damaged: bool + :ivar is_compressed: Whether the backup set is compressed + :vartype is_compressed: bool + :ivar family_count: Number of files in the backup set. + :vartype family_count: int + :ivar backup_finish_date: Date and time when the backup operation + finished. + :vartype backup_finish_date: datetime + """ + + _validation = { + 'database_name': {'readonly': True}, + 'backup_type': {'readonly': True}, + 'backup_files': {'readonly': True}, + 'position': {'readonly': True}, + 'is_damaged': {'readonly': True}, + 'is_compressed': {'readonly': True}, + 'family_count': {'readonly': True}, + 'backup_finish_date': {'readonly': True}, + } + + _attribute_map = { + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'backup_type': {'key': 'backupType', 'type': 'str'}, + 'backup_files': {'key': 'backupFiles', 'type': '[str]'}, + 'position': {'key': 'position', 'type': 'int'}, + 'is_damaged': {'key': 'isDamaged', 'type': 'bool'}, + 'is_compressed': {'key': 'isCompressed', 'type': 'bool'}, + 'family_count': {'key': 'familyCount', 'type': 'int'}, + 'backup_finish_date': {'key': 'backupFinishDate', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(DatabaseBackupInfo, self).__init__(**kwargs) + self.database_name = None + self.backup_type = None + self.backup_files = None + self.position = None + self.is_damaged = None + self.is_compressed = None + self.family_count = None + self.backup_finish_date = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_backup_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_backup_info_py3.py new file mode 100644 index 000000000000..dc4cb2780f2b --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_backup_info_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DatabaseBackupInfo(Model): + """Information about backup files when existing backup mode is used. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar database_name: Database name. + :vartype database_name: str + :ivar backup_type: Backup Type. Possible values include: 'Database', + 'TransactionLog', 'File', 'DifferentialDatabase', 'DifferentialFile', + 'Partial', 'DifferentialPartial' + :vartype backup_type: str or ~azure.mgmt.datamigration.models.BackupType + :ivar backup_files: The list of backup files for the current database. + :vartype backup_files: list[str] + :ivar position: Position of current database backup in the file. + :vartype position: int + :ivar is_damaged: Database was damaged when backed up, but the backup + operation was requested to continue despite errors. + :vartype is_damaged: bool + :ivar is_compressed: Whether the backup set is compressed + :vartype is_compressed: bool + :ivar family_count: Number of files in the backup set. + :vartype family_count: int + :ivar backup_finish_date: Date and time when the backup operation + finished. + :vartype backup_finish_date: datetime + """ + + _validation = { + 'database_name': {'readonly': True}, + 'backup_type': {'readonly': True}, + 'backup_files': {'readonly': True}, + 'position': {'readonly': True}, + 'is_damaged': {'readonly': True}, + 'is_compressed': {'readonly': True}, + 'family_count': {'readonly': True}, + 'backup_finish_date': {'readonly': True}, + } + + _attribute_map = { + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'backup_type': {'key': 'backupType', 'type': 'str'}, + 'backup_files': {'key': 'backupFiles', 'type': '[str]'}, + 'position': {'key': 'position', 'type': 'int'}, + 'is_damaged': {'key': 'isDamaged', 'type': 'bool'}, + 'is_compressed': {'key': 'isCompressed', 'type': 'bool'}, + 'family_count': {'key': 'familyCount', 'type': 'int'}, + 'backup_finish_date': {'key': 'backupFinishDate', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs) -> None: + super(DatabaseBackupInfo, self).__init__(**kwargs) + self.database_name = None + self.backup_type = None + self.backup_files = None + self.position = None + self.is_damaged = None + self.is_compressed = None + self.family_count = None + self.backup_finish_date = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_py3.py index b8795479e407..4f11b4f238c7 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/database_py3.py @@ -15,73 +15,50 @@ class Database(Model): """Information about a single database. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Unique identifier for the database - :vartype id: str - :ivar name: Name of the database - :vartype name: str - :ivar compatibility_level: SQL Server compatibility level of database. + :param id: Unique identifier for the database + :type id: str + :param name: Name of the database + :type name: str + :param compatibility_level: SQL Server compatibility level of database. Possible values include: 'CompatLevel80', 'CompatLevel90', 'CompatLevel100', 'CompatLevel110', 'CompatLevel120', 'CompatLevel130', 'CompatLevel140' - :vartype compatibility_level: str or + :type compatibility_level: str or ~azure.mgmt.datamigration.models.DatabaseCompatLevel - :ivar collation: Collation name of the database - :vartype collation: str - :ivar server_name: Name of the server - :vartype server_name: str - :ivar fqdn: Fully qualified name - :vartype fqdn: str - :ivar install_id: Install id of the database - :vartype install_id: str - :ivar server_version: Version of the server - :vartype server_version: str - :ivar server_edition: Edition of the server - :vartype server_edition: str - :ivar server_level: Product level of the server (RTM, SP, CTP). - :vartype server_level: str - :ivar server_default_data_path: Default path of the data files - :vartype server_default_data_path: str - :ivar server_default_log_path: Default path of the log files - :vartype server_default_log_path: str - :ivar server_default_backup_path: Default path of the backup folder - :vartype server_default_backup_path: str - :ivar server_core_count: Number of cores on the server - :vartype server_core_count: int - :ivar server_visible_online_core_count: Number of cores on the server that - have VISIBLE ONLINE status - :vartype server_visible_online_core_count: int - :ivar database_state: State of the database. Possible values include: + :param collation: Collation name of the database + :type collation: str + :param server_name: Name of the server + :type server_name: str + :param fqdn: Fully qualified name + :type fqdn: str + :param install_id: Install id of the database + :type install_id: str + :param server_version: Version of the server + :type server_version: str + :param server_edition: Edition of the server + :type server_edition: str + :param server_level: Product level of the server (RTM, SP, CTP). + :type server_level: str + :param server_default_data_path: Default path of the data files + :type server_default_data_path: str + :param server_default_log_path: Default path of the log files + :type server_default_log_path: str + :param server_default_backup_path: Default path of the backup folder + :type server_default_backup_path: str + :param server_core_count: Number of cores on the server + :type server_core_count: int + :param server_visible_online_core_count: Number of cores on the server + that have VISIBLE ONLINE status + :type server_visible_online_core_count: int + :param database_state: State of the database. Possible values include: 'Online', 'Restoring', 'Recovering', 'RecoveryPending', 'Suspect', 'Emergency', 'Offline', 'Copying', 'OfflineSecondary' - :vartype database_state: str or + :type database_state: str or ~azure.mgmt.datamigration.models.DatabaseState - :ivar server_id: The unique Server Id - :vartype server_id: str + :param server_id: The unique Server Id + :type server_id: str """ - _validation = { - 'id': {'readonly': True}, - 'name': {'readonly': True}, - 'compatibility_level': {'readonly': True}, - 'collation': {'readonly': True}, - 'server_name': {'readonly': True}, - 'fqdn': {'readonly': True}, - 'install_id': {'readonly': True}, - 'server_version': {'readonly': True}, - 'server_edition': {'readonly': True}, - 'server_level': {'readonly': True}, - 'server_default_data_path': {'readonly': True}, - 'server_default_log_path': {'readonly': True}, - 'server_default_backup_path': {'readonly': True}, - 'server_core_count': {'readonly': True}, - 'server_visible_online_core_count': {'readonly': True}, - 'database_state': {'readonly': True}, - 'server_id': {'readonly': True}, - } - _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, @@ -102,22 +79,22 @@ class Database(Model): 'server_id': {'key': 'serverId', 'type': 'str'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, id: str=None, name: str=None, compatibility_level=None, collation: str=None, server_name: str=None, fqdn: str=None, install_id: str=None, server_version: str=None, server_edition: str=None, server_level: str=None, server_default_data_path: str=None, server_default_log_path: str=None, server_default_backup_path: str=None, server_core_count: int=None, server_visible_online_core_count: int=None, database_state=None, server_id: str=None, **kwargs) -> None: super(Database, self).__init__(**kwargs) - self.id = None - self.name = None - self.compatibility_level = None - self.collation = None - self.server_name = None - self.fqdn = None - self.install_id = None - self.server_version = None - self.server_edition = None - self.server_level = None - self.server_default_data_path = None - self.server_default_log_path = None - self.server_default_backup_path = None - self.server_core_count = None - self.server_visible_online_core_count = None - self.database_state = None - self.server_id = None + self.id = id + self.name = name + self.compatibility_level = compatibility_level + self.collation = collation + self.server_name = server_name + self.fqdn = fqdn + self.install_id = install_id + self.server_version = server_version + self.server_edition = server_edition + self.server_level = server_level + self.server_default_data_path = server_default_data_path + self.server_default_log_path = server_default_log_path + self.server_default_backup_path = server_default_backup_path + self.server_core_count = server_core_count + self.server_visible_online_core_count = server_visible_online_core_count + self.database_state = database_state + self.server_id = server_id diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/execution_statistics.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/execution_statistics.py index 098919cb25a7..eb2c318820a1 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/execution_statistics.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/execution_statistics.py @@ -15,34 +15,23 @@ class ExecutionStatistics(Model): """Description about the errors happen while performing migration validation. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar execution_count: No. of query executions - :vartype execution_count: long - :ivar cpu_time_ms: CPU Time in millisecond(s) for the query execution - :vartype cpu_time_ms: float - :ivar elapsed_time_ms: Time taken in millisecond(s) for executing the + :param execution_count: No. of query executions + :type execution_count: long + :param cpu_time_ms: CPU Time in millisecond(s) for the query execution + :type cpu_time_ms: float + :param elapsed_time_ms: Time taken in millisecond(s) for executing the query - :vartype elapsed_time_ms: float + :type elapsed_time_ms: float :param wait_stats: Dictionary of sql query execution wait types and the respective statistics :type wait_stats: dict[str, ~azure.mgmt.datamigration.models.WaitStatistics] - :ivar has_errors: Indicates whether the query resulted in an error - :vartype has_errors: bool - :ivar sql_errors: List of sql Errors - :vartype sql_errors: list[str] + :param has_errors: Indicates whether the query resulted in an error + :type has_errors: bool + :param sql_errors: List of sql Errors + :type sql_errors: list[str] """ - _validation = { - 'execution_count': {'readonly': True}, - 'cpu_time_ms': {'readonly': True}, - 'elapsed_time_ms': {'readonly': True}, - 'has_errors': {'readonly': True}, - 'sql_errors': {'readonly': True}, - } - _attribute_map = { 'execution_count': {'key': 'executionCount', 'type': 'long'}, 'cpu_time_ms': {'key': 'cpuTimeMs', 'type': 'float'}, @@ -54,9 +43,9 @@ class ExecutionStatistics(Model): def __init__(self, **kwargs): super(ExecutionStatistics, self).__init__(**kwargs) - self.execution_count = None - self.cpu_time_ms = None - self.elapsed_time_ms = None + self.execution_count = kwargs.get('execution_count', None) + self.cpu_time_ms = kwargs.get('cpu_time_ms', None) + self.elapsed_time_ms = kwargs.get('elapsed_time_ms', None) self.wait_stats = kwargs.get('wait_stats', None) - self.has_errors = None - self.sql_errors = None + self.has_errors = kwargs.get('has_errors', None) + self.sql_errors = kwargs.get('sql_errors', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/execution_statistics_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/execution_statistics_py3.py index f19075a919ff..7fefb7275b2a 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/execution_statistics_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/execution_statistics_py3.py @@ -15,34 +15,23 @@ class ExecutionStatistics(Model): """Description about the errors happen while performing migration validation. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar execution_count: No. of query executions - :vartype execution_count: long - :ivar cpu_time_ms: CPU Time in millisecond(s) for the query execution - :vartype cpu_time_ms: float - :ivar elapsed_time_ms: Time taken in millisecond(s) for executing the + :param execution_count: No. of query executions + :type execution_count: long + :param cpu_time_ms: CPU Time in millisecond(s) for the query execution + :type cpu_time_ms: float + :param elapsed_time_ms: Time taken in millisecond(s) for executing the query - :vartype elapsed_time_ms: float + :type elapsed_time_ms: float :param wait_stats: Dictionary of sql query execution wait types and the respective statistics :type wait_stats: dict[str, ~azure.mgmt.datamigration.models.WaitStatistics] - :ivar has_errors: Indicates whether the query resulted in an error - :vartype has_errors: bool - :ivar sql_errors: List of sql Errors - :vartype sql_errors: list[str] + :param has_errors: Indicates whether the query resulted in an error + :type has_errors: bool + :param sql_errors: List of sql Errors + :type sql_errors: list[str] """ - _validation = { - 'execution_count': {'readonly': True}, - 'cpu_time_ms': {'readonly': True}, - 'elapsed_time_ms': {'readonly': True}, - 'has_errors': {'readonly': True}, - 'sql_errors': {'readonly': True}, - } - _attribute_map = { 'execution_count': {'key': 'executionCount', 'type': 'long'}, 'cpu_time_ms': {'key': 'cpuTimeMs', 'type': 'float'}, @@ -52,11 +41,11 @@ class ExecutionStatistics(Model): 'sql_errors': {'key': 'sqlErrors', 'type': '[str]'}, } - def __init__(self, *, wait_stats=None, **kwargs) -> None: + def __init__(self, *, execution_count: int=None, cpu_time_ms: float=None, elapsed_time_ms: float=None, wait_stats=None, has_errors: bool=None, sql_errors=None, **kwargs) -> None: super(ExecutionStatistics, self).__init__(**kwargs) - self.execution_count = None - self.cpu_time_ms = None - self.elapsed_time_ms = None + self.execution_count = execution_count + self.cpu_time_ms = cpu_time_ms + self.elapsed_time_ms = elapsed_time_ms self.wait_stats = wait_stats - self.has_errors = None - self.sql_errors = None + self.has_errors = has_errors + self.sql_errors = sql_errors diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/file_storage_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/file_storage_info.py new file mode 100644 index 000000000000..2572d7ba461b --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/file_storage_info.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileStorageInfo(Model): + """File storage information. + + :param uri: A URI that can be used to access the file content. + :type uri: str + :param headers: + :type headers: dict[str, str] + """ + + _attribute_map = { + 'uri': {'key': 'uri', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(FileStorageInfo, self).__init__(**kwargs) + self.uri = kwargs.get('uri', None) + self.headers = kwargs.get('headers', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/file_storage_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/file_storage_info_py3.py new file mode 100644 index 000000000000..c5723ce48949 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/file_storage_info_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileStorageInfo(Model): + """File storage information. + + :param uri: A URI that can be used to access the file content. + :type uri: str + :param headers: + :type headers: dict[str, str] + """ + + _attribute_map = { + 'uri': {'key': 'uri', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '{str}'}, + } + + def __init__(self, *, uri: str=None, headers=None, **kwargs) -> None: + super(FileStorageInfo, self).__init__(**kwargs) + self.uri = uri + self.headers = headers diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_project_details_non_sql_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_project_details_non_sql_task_input.py new file mode 100644 index 000000000000..e1ff11953a80 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_project_details_non_sql_task_input.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetProjectDetailsNonSqlTaskInput(Model): + """Input for the task that reads configuration from project artifacts. + + All required parameters must be populated in order to send to Azure. + + :param project_name: Required. Name of the migration project + :type project_name: str + :param project_location: Required. A URL that points to the location to + access project artifacts + :type project_location: str + """ + + _validation = { + 'project_name': {'required': True}, + 'project_location': {'required': True}, + } + + _attribute_map = { + 'project_name': {'key': 'projectName', 'type': 'str'}, + 'project_location': {'key': 'projectLocation', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GetProjectDetailsNonSqlTaskInput, self).__init__(**kwargs) + self.project_name = kwargs.get('project_name', None) + self.project_location = kwargs.get('project_location', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_project_details_non_sql_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_project_details_non_sql_task_input_py3.py new file mode 100644 index 000000000000..0c7ded3b33fb --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_project_details_non_sql_task_input_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetProjectDetailsNonSqlTaskInput(Model): + """Input for the task that reads configuration from project artifacts. + + All required parameters must be populated in order to send to Azure. + + :param project_name: Required. Name of the migration project + :type project_name: str + :param project_location: Required. A URL that points to the location to + access project artifacts + :type project_location: str + """ + + _validation = { + 'project_name': {'required': True}, + 'project_location': {'required': True}, + } + + _attribute_map = { + 'project_name': {'key': 'projectName', 'type': 'str'}, + 'project_location': {'key': 'projectLocation', 'type': 'str'}, + } + + def __init__(self, *, project_name: str, project_location: str, **kwargs) -> None: + super(GetProjectDetailsNonSqlTaskInput, self).__init__(**kwargs) + self.project_name = project_name + self.project_location = project_location diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_input.py new file mode 100644 index 000000000000..9234e8617bd7 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_input.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetTdeCertificatesSqlTaskInput(Model): + """Input for the task that gets TDE certificates in Base64 encoded format. + + All required parameters must be populated in order to send to Azure. + + :param connection_info: Required. Connection information for SQL Server + :type connection_info: ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param backup_file_share: Required. Backup file share information for file + share to be used for temporarily storing files. + :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param selected_certificates: Required. List containing certificate names + and corresponding password to use for encrypting the exported certificate. + :type selected_certificates: + list[~azure.mgmt.datamigration.models.SelectedCertificateInput] + """ + + _validation = { + 'connection_info': {'required': True}, + 'backup_file_share': {'required': True}, + 'selected_certificates': {'required': True}, + } + + _attribute_map = { + 'connection_info': {'key': 'connectionInfo', 'type': 'SqlConnectionInfo'}, + 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'selected_certificates': {'key': 'selectedCertificates', 'type': '[SelectedCertificateInput]'}, + } + + def __init__(self, **kwargs): + super(GetTdeCertificatesSqlTaskInput, self).__init__(**kwargs) + self.connection_info = kwargs.get('connection_info', None) + self.backup_file_share = kwargs.get('backup_file_share', None) + self.selected_certificates = kwargs.get('selected_certificates', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_input_py3.py new file mode 100644 index 000000000000..90dbe44bac55 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_input_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetTdeCertificatesSqlTaskInput(Model): + """Input for the task that gets TDE certificates in Base64 encoded format. + + All required parameters must be populated in order to send to Azure. + + :param connection_info: Required. Connection information for SQL Server + :type connection_info: ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param backup_file_share: Required. Backup file share information for file + share to be used for temporarily storing files. + :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param selected_certificates: Required. List containing certificate names + and corresponding password to use for encrypting the exported certificate. + :type selected_certificates: + list[~azure.mgmt.datamigration.models.SelectedCertificateInput] + """ + + _validation = { + 'connection_info': {'required': True}, + 'backup_file_share': {'required': True}, + 'selected_certificates': {'required': True}, + } + + _attribute_map = { + 'connection_info': {'key': 'connectionInfo', 'type': 'SqlConnectionInfo'}, + 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'selected_certificates': {'key': 'selectedCertificates', 'type': '[SelectedCertificateInput]'}, + } + + def __init__(self, *, connection_info, backup_file_share, selected_certificates, **kwargs) -> None: + super(GetTdeCertificatesSqlTaskInput, self).__init__(**kwargs) + self.connection_info = connection_info + self.backup_file_share = backup_file_share + self.selected_certificates = selected_certificates diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_output.py new file mode 100644 index 000000000000..723403ca1296 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_output.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetTdeCertificatesSqlTaskOutput(Model): + """Output of the task that gets TDE certificates in Base64 encoded format. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar base64_encoded_certificates: Mapping from certificate name to base + 64 encoded format. + :vartype base64_encoded_certificates: dict[str, list[str]] + :ivar validation_errors: Validation errors + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'base64_encoded_certificates': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'base64_encoded_certificates': {'key': 'base64EncodedCertificates', 'type': '{[str]}'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(GetTdeCertificatesSqlTaskOutput, self).__init__(**kwargs) + self.base64_encoded_certificates = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_output_py3.py new file mode 100644 index 000000000000..16b09d215a62 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_output_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetTdeCertificatesSqlTaskOutput(Model): + """Output of the task that gets TDE certificates in Base64 encoded format. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar base64_encoded_certificates: Mapping from certificate name to base + 64 encoded format. + :vartype base64_encoded_certificates: dict[str, list[str]] + :ivar validation_errors: Validation errors + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'base64_encoded_certificates': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'base64_encoded_certificates': {'key': 'base64EncodedCertificates', 'type': '{[str]}'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(GetTdeCertificatesSqlTaskOutput, self).__init__(**kwargs) + self.base64_encoded_certificates = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_properties.py new file mode 100644 index 000000000000..95c9a800fddf --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class GetTdeCertificatesSqlTaskProperties(ProjectTaskProperties): + """Properties for the task that gets TDE certificates in Base64 encoded + format. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.GetTdeCertificatesSqlTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.GetTdeCertificatesSqlTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'GetTdeCertificatesSqlTaskInput'}, + 'output': {'key': 'output', 'type': '[GetTdeCertificatesSqlTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(GetTdeCertificatesSqlTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'GetTDECertificates.Sql' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_properties_py3.py new file mode 100644 index 000000000000..8ed508a77333 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_tde_certificates_sql_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class GetTdeCertificatesSqlTaskProperties(ProjectTaskProperties): + """Properties for the task that gets TDE certificates in Base64 encoded + format. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.GetTdeCertificatesSqlTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.GetTdeCertificatesSqlTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'GetTdeCertificatesSqlTaskInput'}, + 'output': {'key': 'output', 'type': '[GetTdeCertificatesSqlTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(GetTdeCertificatesSqlTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'GetTDECertificates.Sql' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_input.py new file mode 100644 index 000000000000..edb3ff0086cf --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_input.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetUserTablesSqlSyncTaskInput(Model): + """Input for the task that collects user tables for the given list of + databases. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for SQL + Server + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Connection information for SQL DB + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_source_databases: Required. List of source database names + to collect tables for + :type selected_source_databases: list[str] + :param selected_target_databases: Required. List of target database names + to collect tables for + :type selected_target_databases: list[str] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_source_databases': {'required': True}, + 'selected_target_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_source_databases': {'key': 'selectedSourceDatabases', 'type': '[str]'}, + 'selected_target_databases': {'key': 'selectedTargetDatabases', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(GetUserTablesSqlSyncTaskInput, self).__init__(**kwargs) + self.source_connection_info = kwargs.get('source_connection_info', None) + self.target_connection_info = kwargs.get('target_connection_info', None) + self.selected_source_databases = kwargs.get('selected_source_databases', None) + self.selected_target_databases = kwargs.get('selected_target_databases', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_input_py3.py new file mode 100644 index 000000000000..d5d094e38618 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_input_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetUserTablesSqlSyncTaskInput(Model): + """Input for the task that collects user tables for the given list of + databases. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for SQL + Server + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Connection information for SQL DB + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_source_databases: Required. List of source database names + to collect tables for + :type selected_source_databases: list[str] + :param selected_target_databases: Required. List of target database names + to collect tables for + :type selected_target_databases: list[str] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_source_databases': {'required': True}, + 'selected_target_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_source_databases': {'key': 'selectedSourceDatabases', 'type': '[str]'}, + 'selected_target_databases': {'key': 'selectedTargetDatabases', 'type': '[str]'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, selected_source_databases, selected_target_databases, **kwargs) -> None: + super(GetUserTablesSqlSyncTaskInput, self).__init__(**kwargs) + self.source_connection_info = source_connection_info + self.target_connection_info = target_connection_info + self.selected_source_databases = selected_source_databases + self.selected_target_databases = selected_target_databases diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_output.py new file mode 100644 index 000000000000..d74132c96373 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_output.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetUserTablesSqlSyncTaskOutput(Model): + """Output of the task that collects user tables for the given list of + databases. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar databases_to_source_tables: Mapping from database name to list of + source tables + :vartype databases_to_source_tables: dict[str, + list[~azure.mgmt.datamigration.models.DatabaseTable]] + :ivar databases_to_target_tables: Mapping from database name to list of + target tables + :vartype databases_to_target_tables: dict[str, + list[~azure.mgmt.datamigration.models.DatabaseTable]] + :ivar table_validation_errors: Mapping from database name to list of + validation errors + :vartype table_validation_errors: dict[str, list[str]] + :ivar validation_errors: Validation errors + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'databases_to_source_tables': {'readonly': True}, + 'databases_to_target_tables': {'readonly': True}, + 'table_validation_errors': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'databases_to_source_tables': {'key': 'databasesToSourceTables', 'type': '{[DatabaseTable]}'}, + 'databases_to_target_tables': {'key': 'databasesToTargetTables', 'type': '{[DatabaseTable]}'}, + 'table_validation_errors': {'key': 'tableValidationErrors', 'type': '{[str]}'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(GetUserTablesSqlSyncTaskOutput, self).__init__(**kwargs) + self.databases_to_source_tables = None + self.databases_to_target_tables = None + self.table_validation_errors = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_output_py3.py new file mode 100644 index 000000000000..c5cc317b5991 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_output_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetUserTablesSqlSyncTaskOutput(Model): + """Output of the task that collects user tables for the given list of + databases. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar databases_to_source_tables: Mapping from database name to list of + source tables + :vartype databases_to_source_tables: dict[str, + list[~azure.mgmt.datamigration.models.DatabaseTable]] + :ivar databases_to_target_tables: Mapping from database name to list of + target tables + :vartype databases_to_target_tables: dict[str, + list[~azure.mgmt.datamigration.models.DatabaseTable]] + :ivar table_validation_errors: Mapping from database name to list of + validation errors + :vartype table_validation_errors: dict[str, list[str]] + :ivar validation_errors: Validation errors + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'databases_to_source_tables': {'readonly': True}, + 'databases_to_target_tables': {'readonly': True}, + 'table_validation_errors': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'databases_to_source_tables': {'key': 'databasesToSourceTables', 'type': '{[DatabaseTable]}'}, + 'databases_to_target_tables': {'key': 'databasesToTargetTables', 'type': '{[DatabaseTable]}'}, + 'table_validation_errors': {'key': 'tableValidationErrors', 'type': '{[str]}'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(GetUserTablesSqlSyncTaskOutput, self).__init__(**kwargs) + self.databases_to_source_tables = None + self.databases_to_target_tables = None + self.table_validation_errors = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_properties.py new file mode 100644 index 000000000000..cc02106c367c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class GetUserTablesSqlSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that collects user tables for the given list of + databases. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.GetUserTablesSqlSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.GetUserTablesSqlSyncTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'GetUserTablesSqlSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[GetUserTablesSqlSyncTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(GetUserTablesSqlSyncTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'GetUserTables.AzureSqlDb.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_properties_py3.py new file mode 100644 index 000000000000..cfb16ce27a08 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_sync_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class GetUserTablesSqlSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that collects user tables for the given list of + databases. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.GetUserTablesSqlSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.GetUserTablesSqlSyncTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'GetUserTablesSqlSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[GetUserTablesSqlSyncTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(GetUserTablesSqlSyncTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'GetUserTables.AzureSqlDb.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_task_properties.py index 51f06680e246..4b40b52906ec 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_task_properties.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_task_properties.py @@ -21,12 +21,15 @@ class GetUserTablesSqlTaskProperties(ProjectTaskProperties): All required parameters must be populated in order to send to Azure. - :param errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str :param input: Task input @@ -37,7 +40,9 @@ class GetUserTablesSqlTaskProperties(ProjectTaskProperties): """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, 'output': {'readonly': True}, } @@ -45,6 +50,7 @@ class GetUserTablesSqlTaskProperties(ProjectTaskProperties): _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, 'input': {'key': 'input', 'type': 'GetUserTablesSqlTaskInput'}, 'output': {'key': 'output', 'type': '[GetUserTablesSqlTaskOutput]'}, diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_task_properties_py3.py index af726e4b4e53..0f6fd4ca766d 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_task_properties_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/get_user_tables_sql_task_properties_py3.py @@ -21,12 +21,15 @@ class GetUserTablesSqlTaskProperties(ProjectTaskProperties): All required parameters must be populated in order to send to Azure. - :param errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str :param input: Task input @@ -37,7 +40,9 @@ class GetUserTablesSqlTaskProperties(ProjectTaskProperties): """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, 'output': {'readonly': True}, } @@ -45,13 +50,14 @@ class GetUserTablesSqlTaskProperties(ProjectTaskProperties): _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, 'input': {'key': 'input', 'type': 'GetUserTablesSqlTaskInput'}, 'output': {'key': 'output', 'type': '[GetUserTablesSqlTaskOutput]'}, } - def __init__(self, *, errors=None, input=None, **kwargs) -> None: - super(GetUserTablesSqlTaskProperties, self).__init__(errors=errors, **kwargs) + def __init__(self, *, input=None, **kwargs) -> None: + super(GetUserTablesSqlTaskProperties, self).__init__(**kwargs) self.input = input self.output = None self.task_type = 'GetUserTables.Sql' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_mongo_db_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_mongo_db_task_properties.py new file mode 100644 index 000000000000..7ae0ef518757 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_mongo_db_task_properties.py @@ -0,0 +1,61 @@ +# 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 .project_task_properties import ProjectTaskProperties + + +class MigrateMongoDbTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates data between MongoDB data sources. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: + :type input: ~azure.mgmt.datamigration.models.MongoDbMigrationSettings + :ivar output: + :vartype output: list[~azure.mgmt.datamigration.models.MongoDbProgress] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbMigrationSettings'}, + 'output': {'key': 'output', 'type': '[MongoDbProgress]'}, + } + + def __init__(self, **kwargs): + super(MigrateMongoDbTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'Migrate.MongoDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_mongo_db_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_mongo_db_task_properties_py3.py new file mode 100644 index 000000000000..061cb4b66ff6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_mongo_db_task_properties_py3.py @@ -0,0 +1,61 @@ +# 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 .project_task_properties_py3 import ProjectTaskProperties + + +class MigrateMongoDbTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates data between MongoDB data sources. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: + :type input: ~azure.mgmt.datamigration.models.MongoDbMigrationSettings + :ivar output: + :vartype output: list[~azure.mgmt.datamigration.models.MongoDbProgress] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbMigrationSettings'}, + 'output': {'key': 'output', 'type': '[MongoDbProgress]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MigrateMongoDbTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'Migrate.MongoDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_database_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_database_input.py new file mode 100644 index 000000000000..6ef56a65cc29 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_database_input.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateMySqlAzureDbForMySqlSyncDatabaseInput(Model): + """Database specific information for MySQL to Azure Database for MySQL + migration task inputs. + + :param name: Name of the database + :type name: str + :param target_database_name: Name of target database. Note: Target + database will be truncated before starting migration. + :type target_database_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncDatabaseInput, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.target_database_name = kwargs.get('target_database_name', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_database_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_database_input_py3.py new file mode 100644 index 000000000000..aa813938d691 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_database_input_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateMySqlAzureDbForMySqlSyncDatabaseInput(Model): + """Database specific information for MySQL to Azure Database for MySQL + migration task inputs. + + :param name: Name of the database + :type name: str + :param target_database_name: Name of target database. Note: Target + database will be truncated before starting migration. + :type target_database_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, target_database_name: str=None, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncDatabaseInput, self).__init__(**kwargs) + self.name = name + self.target_database_name = target_database_name diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_input.py new file mode 100644 index 000000000000..b248f0efb40d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_input.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateMySqlAzureDbForMySqlSyncTaskInput(Model): + """Input for the task that migrates MySQL databases to Azure Database for + MySQL for online migrations. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for source + MySQL + :type source_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param target_connection_info: Required. Connection information for target + Azure Database for MySQL + :type target_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncDatabaseInput] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateMySqlAzureDbForMySqlSyncDatabaseInput]'}, + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncTaskInput, self).__init__(**kwargs) + self.source_connection_info = kwargs.get('source_connection_info', None) + self.target_connection_info = kwargs.get('target_connection_info', None) + self.selected_databases = kwargs.get('selected_databases', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_input_py3.py new file mode 100644 index 000000000000..ff72651a7ec1 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_input_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateMySqlAzureDbForMySqlSyncTaskInput(Model): + """Input for the task that migrates MySQL databases to Azure Database for + MySQL for online migrations. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Connection information for source + MySQL + :type source_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param target_connection_info: Required. Connection information for target + Azure Database for MySQL + :type target_connection_info: + ~azure.mgmt.datamigration.models.MySqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncDatabaseInput] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'MySqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateMySqlAzureDbForMySqlSyncDatabaseInput]'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, selected_databases, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncTaskInput, self).__init__(**kwargs) + self.source_connection_info = source_connection_info + self.target_connection_info = target_connection_info + self.selected_databases = selected_databases diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output.py new file mode 100644 index 000000000000..ce87413056b5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutput(Model): + """Output for the task that migrates MySQL databases to Azure Database for + MySQL for online migrations. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, + MigrateMySqlAzureDbForMySqlSyncTaskOutputError, + MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, + MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, + MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'DatabaseLevelErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError', 'ErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputError', 'TableLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel', 'DatabaseLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel', 'MigrationLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel'} + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_error.py new file mode 100644 index 000000000000..19ea595d9431 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_error.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .migrate_my_sql_azure_db_for_my_sql_sync_task_output import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param error_message: Error message + :type error_message: str + :param events: List of error events. + :type events: + list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error_message': {'key': 'errorMessage', 'type': 'str'}, + 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, self).__init__(**kwargs) + self.error_message = kwargs.get('error_message', None) + self.events = kwargs.get('events', None) + self.result_type = 'DatabaseLevelErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_error_py3.py new file mode 100644 index 000000000000..0e9b50426d75 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_error_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param error_message: Error message + :type error_message: str + :param events: List of error events. + :type events: + list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error_message': {'key': 'errorMessage', 'type': 'str'}, + 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + } + + def __init__(self, *, error_message: str=None, events=None, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, self).__init__(**kwargs) + self.error_message = error_message + self.events = events + self.result_type = 'DatabaseLevelErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_level.py new file mode 100644 index 000000000000..05ef91f1fff4 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_level.py @@ -0,0 +1,121 @@ +# 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 .migrate_my_sql_azure_db_for_my_sql_sync_task_output import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar migration_state: Migration state that this database is in. Possible + values include: 'UNDEFINED', 'CONFIGURING', 'INITIALIAZING', 'STARTING', + 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', 'CANCELLING', + 'CANCELLED', 'FAILED' + :vartype migration_state: str or + ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState + :ivar incoming_changes: Number of incoming changes + :vartype incoming_changes: long + :ivar applied_changes: Number of applied changes + :vartype applied_changes: long + :ivar cdc_insert_counter: Number of cdc inserts + :vartype cdc_insert_counter: long + :ivar cdc_delete_counter: Number of cdc deletes + :vartype cdc_delete_counter: long + :ivar cdc_update_counter: Number of cdc updates + :vartype cdc_update_counter: long + :ivar full_load_completed_tables: Number of tables completed in full load + :vartype full_load_completed_tables: long + :ivar full_load_loading_tables: Number of tables loading in full load + :vartype full_load_loading_tables: long + :ivar full_load_queued_tables: Number of tables queued in full load + :vartype full_load_queued_tables: long + :ivar full_load_errored_tables: Number of tables errored in full load + :vartype full_load_errored_tables: long + :ivar initialization_completed: Indicates if initial load (full load) has + been completed + :vartype initialization_completed: bool + :ivar latency: CDC apply latency + :vartype latency: long + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'migration_state': {'readonly': True}, + 'incoming_changes': {'readonly': True}, + 'applied_changes': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'full_load_completed_tables': {'readonly': True}, + 'full_load_loading_tables': {'readonly': True}, + 'full_load_queued_tables': {'readonly': True}, + 'full_load_errored_tables': {'readonly': True}, + 'initialization_completed': {'readonly': True}, + 'latency': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'migration_state': {'key': 'migrationState', 'type': 'str'}, + 'incoming_changes': {'key': 'incomingChanges', 'type': 'long'}, + 'applied_changes': {'key': 'appliedChanges', 'type': 'long'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'full_load_completed_tables': {'key': 'fullLoadCompletedTables', 'type': 'long'}, + 'full_load_loading_tables': {'key': 'fullLoadLoadingTables', 'type': 'long'}, + 'full_load_queued_tables': {'key': 'fullLoadQueuedTables', 'type': 'long'}, + 'full_load_errored_tables': {'key': 'fullLoadErroredTables', 'type': 'long'}, + 'initialization_completed': {'key': 'initializationCompleted', 'type': 'bool'}, + 'latency': {'key': 'latency', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.started_on = None + self.ended_on = None + self.migration_state = None + self.incoming_changes = None + self.applied_changes = None + self.cdc_insert_counter = None + self.cdc_delete_counter = None + self.cdc_update_counter = None + self.full_load_completed_tables = None + self.full_load_loading_tables = None + self.full_load_queued_tables = None + self.full_load_errored_tables = None + self.initialization_completed = None + self.latency = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_level_py3.py new file mode 100644 index 000000000000..6d6af1e1cdaa --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_database_level_py3.py @@ -0,0 +1,121 @@ +# 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 .migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar migration_state: Migration state that this database is in. Possible + values include: 'UNDEFINED', 'CONFIGURING', 'INITIALIAZING', 'STARTING', + 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', 'CANCELLING', + 'CANCELLED', 'FAILED' + :vartype migration_state: str or + ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState + :ivar incoming_changes: Number of incoming changes + :vartype incoming_changes: long + :ivar applied_changes: Number of applied changes + :vartype applied_changes: long + :ivar cdc_insert_counter: Number of cdc inserts + :vartype cdc_insert_counter: long + :ivar cdc_delete_counter: Number of cdc deletes + :vartype cdc_delete_counter: long + :ivar cdc_update_counter: Number of cdc updates + :vartype cdc_update_counter: long + :ivar full_load_completed_tables: Number of tables completed in full load + :vartype full_load_completed_tables: long + :ivar full_load_loading_tables: Number of tables loading in full load + :vartype full_load_loading_tables: long + :ivar full_load_queued_tables: Number of tables queued in full load + :vartype full_load_queued_tables: long + :ivar full_load_errored_tables: Number of tables errored in full load + :vartype full_load_errored_tables: long + :ivar initialization_completed: Indicates if initial load (full load) has + been completed + :vartype initialization_completed: bool + :ivar latency: CDC apply latency + :vartype latency: long + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'migration_state': {'readonly': True}, + 'incoming_changes': {'readonly': True}, + 'applied_changes': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'full_load_completed_tables': {'readonly': True}, + 'full_load_loading_tables': {'readonly': True}, + 'full_load_queued_tables': {'readonly': True}, + 'full_load_errored_tables': {'readonly': True}, + 'initialization_completed': {'readonly': True}, + 'latency': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'migration_state': {'key': 'migrationState', 'type': 'str'}, + 'incoming_changes': {'key': 'incomingChanges', 'type': 'long'}, + 'applied_changes': {'key': 'appliedChanges', 'type': 'long'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'full_load_completed_tables': {'key': 'fullLoadCompletedTables', 'type': 'long'}, + 'full_load_loading_tables': {'key': 'fullLoadLoadingTables', 'type': 'long'}, + 'full_load_queued_tables': {'key': 'fullLoadQueuedTables', 'type': 'long'}, + 'full_load_errored_tables': {'key': 'fullLoadErroredTables', 'type': 'long'}, + 'initialization_completed': {'key': 'initializationCompleted', 'type': 'bool'}, + 'latency': {'key': 'latency', 'type': 'long'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.started_on = None + self.ended_on = None + self.migration_state = None + self.incoming_changes = None + self.applied_changes = None + self.cdc_insert_counter = None + self.cdc_delete_counter = None + self.cdc_update_counter = None + self.full_load_completed_tables = None + self.full_load_loading_tables = None + self.full_load_queued_tables = None + self.full_load_errored_tables = None + self.initialization_completed = None + self.latency = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_error.py new file mode 100644 index 000000000000..b545553163c3 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_error.py @@ -0,0 +1,46 @@ +# 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 .migrate_my_sql_azure_db_for_my_sql_sync_task_output import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputError(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_error_py3.py new file mode 100644 index 000000000000..a250a71f53c6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_error_py3.py @@ -0,0 +1,46 @@ +# 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 .migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputError(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_migration_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_migration_level.py new file mode 100644 index 000000000000..e859a576d331 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_migration_level.py @@ -0,0 +1,71 @@ +# 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 .migrate_my_sql_azure_db_for_my_sql_sync_task_output import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server: Source server name + :vartype source_server: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server: Target server name + :vartype target_server: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server': {'key': 'sourceServer', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server': {'key': 'targetServer', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, self).__init__(**kwargs) + self.started_on = None + self.ended_on = None + self.source_server_version = None + self.source_server = None + self.target_server_version = None + self.target_server = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_migration_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_migration_level_py3.py new file mode 100644 index 000000000000..bd74827ef775 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_migration_level_py3.py @@ -0,0 +1,71 @@ +# 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 .migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server: Source server name + :vartype source_server: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server: Target server name + :vartype target_server: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server': {'key': 'sourceServer', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server': {'key': 'targetServer', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, self).__init__(**kwargs) + self.started_on = None + self.ended_on = None + self.source_server_version = None + self.source_server = None + self.target_server_version = None + self.target_server = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3.py new file mode 100644 index 000000000000..64d731ac887d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutput(Model): + """Output for the task that migrates MySQL databases to Azure Database for + MySQL for online migrations. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, + MigrateMySqlAzureDbForMySqlSyncTaskOutputError, + MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, + MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, + MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'DatabaseLevelErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError', 'ErrorOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputError', 'TableLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel', 'DatabaseLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel', 'MigrationLevelOutput': 'MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel'} + } + + def __init__(self, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_table_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_table_level.py new file mode 100644 index 000000000000..2ec7f6dc726a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_table_level.py @@ -0,0 +1,109 @@ +# 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 .migrate_my_sql_azure_db_for_my_sql_sync_task_output import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar table_name: Name of the table + :vartype table_name: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar cdc_insert_counter: Number of applied inserts + :vartype cdc_insert_counter: str + :ivar cdc_update_counter: Number of applied updates + :vartype cdc_update_counter: str + :ivar cdc_delete_counter: Number of applied deletes + :vartype cdc_delete_counter: str + :ivar full_load_est_finish_time: Estimate to finish full load + :vartype full_load_est_finish_time: datetime + :ivar full_load_started_on: Full load start time + :vartype full_load_started_on: datetime + :ivar full_load_ended_on: Full load end time + :vartype full_load_ended_on: datetime + :ivar full_load_total_rows: Number of rows applied in full load + :vartype full_load_total_rows: long + :ivar state: Current state of the table migration. Possible values + include: 'BEFORE_LOAD', 'FULL_LOAD', 'COMPLETED', 'CANCELED', 'ERROR', + 'FAILED' + :vartype state: str or + ~azure.mgmt.datamigration.models.SyncTableMigrationState + :ivar total_changes_applied: Total number of applied changes + :vartype total_changes_applied: long + :ivar data_errors_counter: Number of data errors occurred + :vartype data_errors_counter: long + :ivar last_modified_time: Last modified time on target + :vartype last_modified_time: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'table_name': {'readonly': True}, + 'database_name': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'full_load_est_finish_time': {'readonly': True}, + 'full_load_started_on': {'readonly': True}, + 'full_load_ended_on': {'readonly': True}, + 'full_load_total_rows': {'readonly': True}, + 'state': {'readonly': True}, + 'total_changes_applied': {'readonly': True}, + 'data_errors_counter': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'table_name': {'key': 'tableName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'str'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'str'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'str'}, + 'full_load_est_finish_time': {'key': 'fullLoadEstFinishTime', 'type': 'iso-8601'}, + 'full_load_started_on': {'key': 'fullLoadStartedOn', 'type': 'iso-8601'}, + 'full_load_ended_on': {'key': 'fullLoadEndedOn', 'type': 'iso-8601'}, + 'full_load_total_rows': {'key': 'fullLoadTotalRows', 'type': 'long'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_changes_applied': {'key': 'totalChangesApplied', 'type': 'long'}, + 'data_errors_counter': {'key': 'dataErrorsCounter', 'type': 'long'}, + 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, self).__init__(**kwargs) + self.table_name = None + self.database_name = None + self.cdc_insert_counter = None + self.cdc_update_counter = None + self.cdc_delete_counter = None + self.full_load_est_finish_time = None + self.full_load_started_on = None + self.full_load_ended_on = None + self.full_load_total_rows = None + self.state = None + self.total_changes_applied = None + self.data_errors_counter = None + self.last_modified_time = None + self.result_type = 'TableLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_table_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_table_level_py3.py new file mode 100644 index 000000000000..012b20615f83 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_output_table_level_py3.py @@ -0,0 +1,109 @@ +# 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 .migrate_my_sql_azure_db_for_my_sql_sync_task_output_py3 import MigrateMySqlAzureDbForMySqlSyncTaskOutput + + +class MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel(MigrateMySqlAzureDbForMySqlSyncTaskOutput): + """MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar table_name: Name of the table + :vartype table_name: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar cdc_insert_counter: Number of applied inserts + :vartype cdc_insert_counter: str + :ivar cdc_update_counter: Number of applied updates + :vartype cdc_update_counter: str + :ivar cdc_delete_counter: Number of applied deletes + :vartype cdc_delete_counter: str + :ivar full_load_est_finish_time: Estimate to finish full load + :vartype full_load_est_finish_time: datetime + :ivar full_load_started_on: Full load start time + :vartype full_load_started_on: datetime + :ivar full_load_ended_on: Full load end time + :vartype full_load_ended_on: datetime + :ivar full_load_total_rows: Number of rows applied in full load + :vartype full_load_total_rows: long + :ivar state: Current state of the table migration. Possible values + include: 'BEFORE_LOAD', 'FULL_LOAD', 'COMPLETED', 'CANCELED', 'ERROR', + 'FAILED' + :vartype state: str or + ~azure.mgmt.datamigration.models.SyncTableMigrationState + :ivar total_changes_applied: Total number of applied changes + :vartype total_changes_applied: long + :ivar data_errors_counter: Number of data errors occurred + :vartype data_errors_counter: long + :ivar last_modified_time: Last modified time on target + :vartype last_modified_time: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'table_name': {'readonly': True}, + 'database_name': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'full_load_est_finish_time': {'readonly': True}, + 'full_load_started_on': {'readonly': True}, + 'full_load_ended_on': {'readonly': True}, + 'full_load_total_rows': {'readonly': True}, + 'state': {'readonly': True}, + 'total_changes_applied': {'readonly': True}, + 'data_errors_counter': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'table_name': {'key': 'tableName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'str'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'str'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'str'}, + 'full_load_est_finish_time': {'key': 'fullLoadEstFinishTime', 'type': 'iso-8601'}, + 'full_load_started_on': {'key': 'fullLoadStartedOn', 'type': 'iso-8601'}, + 'full_load_ended_on': {'key': 'fullLoadEndedOn', 'type': 'iso-8601'}, + 'full_load_total_rows': {'key': 'fullLoadTotalRows', 'type': 'long'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_changes_applied': {'key': 'totalChangesApplied', 'type': 'long'}, + 'data_errors_counter': {'key': 'dataErrorsCounter', 'type': 'long'}, + 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, self).__init__(**kwargs) + self.table_name = None + self.database_name = None + self.cdc_insert_counter = None + self.cdc_update_counter = None + self.cdc_delete_counter = None + self.full_load_est_finish_time = None + self.full_load_started_on = None + self.full_load_ended_on = None + self.full_load_total_rows = None + self.state = None + self.total_changes_applied = None + self.data_errors_counter = None + self.last_modified_time = None + self.result_type = 'TableLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_properties.py new file mode 100644 index 000000000000..a5c24c42dcdd --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class MigrateMySqlAzureDbForMySqlSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates MySQL databases to Azure Database for + MySQL for online migrations. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateMySqlAzureDbForMySqlSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateMySqlAzureDbForMySqlSyncTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(MigrateMySqlAzureDbForMySqlSyncTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'Migrate.MySql.AzureDbForMySql.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_properties_py3.py new file mode 100644 index 000000000000..0c2175b78690 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_my_sql_azure_db_for_my_sql_sync_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class MigrateMySqlAzureDbForMySqlSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates MySQL databases to Azure Database for + MySQL for online migrations. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateMySqlAzureDbForMySqlSyncTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateMySqlAzureDbForMySqlSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateMySqlAzureDbForMySqlSyncTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MigrateMySqlAzureDbForMySqlSyncTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'Migrate.MySql.AzureDbForMySql.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_database_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_database_input.py new file mode 100644 index 000000000000..cdabccddc0b0 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_database_input.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput(Model): + """Database specific information for PostgreSQL to Azure Database for + PostgreSQL migration task inputs. + + :param name: Name of the database + :type name: str + :param target_database_name: Name of target database. Note: Target + database will be truncated before starting migration. + :type target_database_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.target_database_name = kwargs.get('target_database_name', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_database_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_database_input_py3.py new file mode 100644 index 000000000000..8b38aebe0bc3 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_database_input_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput(Model): + """Database specific information for PostgreSQL to Azure Database for + PostgreSQL migration task inputs. + + :param name: Name of the database + :type name: str + :param target_database_name: Name of target database. Note: Target + database will be truncated before starting migration. + :type target_database_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, target_database_name: str=None, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput, self).__init__(**kwargs) + self.name = name + self.target_database_name = target_database_name diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_input.py new file mode 100644 index 000000000000..34cdca4180fa --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_input.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput(Model): + """Input for the task that migrates PostgreSQL databases to Azure Database for + PostgreSQL for online migrations. + + All required parameters must be populated in order to send to Azure. + + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput] + :param target_connection_info: Required. Connection information for target + Azure Database for PostgreSQL + :type target_connection_info: + ~azure.mgmt.datamigration.models.PostgreSqlConnectionInfo + :param source_connection_info: Required. Connection information for source + PostgreSQL + :type source_connection_info: + ~azure.mgmt.datamigration.models.PostgreSqlConnectionInfo + """ + + _validation = { + 'selected_databases': {'required': True}, + 'target_connection_info': {'required': True}, + 'source_connection_info': {'required': True}, + } + + _attribute_map = { + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput]'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'PostgreSqlConnectionInfo'}, + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'PostgreSqlConnectionInfo'}, + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput, self).__init__(**kwargs) + self.selected_databases = kwargs.get('selected_databases', None) + self.target_connection_info = kwargs.get('target_connection_info', None) + self.source_connection_info = kwargs.get('source_connection_info', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_input_py3.py new file mode 100644 index 000000000000..edbcd964ea28 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_input_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput(Model): + """Input for the task that migrates PostgreSQL databases to Azure Database for + PostgreSQL for online migrations. + + All required parameters must be populated in order to send to Azure. + + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput] + :param target_connection_info: Required. Connection information for target + Azure Database for PostgreSQL + :type target_connection_info: + ~azure.mgmt.datamigration.models.PostgreSqlConnectionInfo + :param source_connection_info: Required. Connection information for source + PostgreSQL + :type source_connection_info: + ~azure.mgmt.datamigration.models.PostgreSqlConnectionInfo + """ + + _validation = { + 'selected_databases': {'required': True}, + 'target_connection_info': {'required': True}, + 'source_connection_info': {'required': True}, + } + + _attribute_map = { + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput]'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'PostgreSqlConnectionInfo'}, + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'PostgreSqlConnectionInfo'}, + } + + def __init__(self, *, selected_databases, target_connection_info, source_connection_info, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput, self).__init__(**kwargs) + self.selected_databases = selected_databases + self.target_connection_info = target_connection_info + self.source_connection_info = source_connection_info diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output.py new file mode 100644 index 000000000000..2e67ad72eea5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput(Model): + """Output for the task that migrates PostgreSQL databases to Azure Database + for PostgreSQL for online migrations. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'DatabaseLevelErrorOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError', 'ErrorOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError', 'TableLevelOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel', 'DatabaseLevelOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel', 'MigrationLevelOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel'} + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_error.py new file mode 100644 index 000000000000..2cf6c6f523e4 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_error.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param error_message: Error message + :type error_message: str + :param events: List of error events. + :type events: + list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error_message': {'key': 'errorMessage', 'type': 'str'}, + 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, self).__init__(**kwargs) + self.error_message = kwargs.get('error_message', None) + self.events = kwargs.get('events', None) + self.result_type = 'DatabaseLevelErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_error_py3.py new file mode 100644 index 000000000000..20d8350ca4d9 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_error_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param error_message: Error message + :type error_message: str + :param events: List of error events. + :type events: + list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error_message': {'key': 'errorMessage', 'type': 'str'}, + 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + } + + def __init__(self, *, error_message: str=None, events=None, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, self).__init__(**kwargs) + self.error_message = error_message + self.events = events + self.result_type = 'DatabaseLevelErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_level.py new file mode 100644 index 000000000000..6e6a904277da --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_level.py @@ -0,0 +1,121 @@ +# 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 .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar migration_state: Migration state that this database is in. Possible + values include: 'UNDEFINED', 'CONFIGURING', 'INITIALIAZING', 'STARTING', + 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', 'CANCELLING', + 'CANCELLED', 'FAILED' + :vartype migration_state: str or + ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState + :ivar incoming_changes: Number of incoming changes + :vartype incoming_changes: long + :ivar applied_changes: Number of applied changes + :vartype applied_changes: long + :ivar cdc_insert_counter: Number of cdc inserts + :vartype cdc_insert_counter: long + :ivar cdc_delete_counter: Number of cdc deletes + :vartype cdc_delete_counter: long + :ivar cdc_update_counter: Number of cdc updates + :vartype cdc_update_counter: long + :ivar full_load_completed_tables: Number of tables completed in full load + :vartype full_load_completed_tables: long + :ivar full_load_loading_tables: Number of tables loading in full load + :vartype full_load_loading_tables: long + :ivar full_load_queued_tables: Number of tables queued in full load + :vartype full_load_queued_tables: long + :ivar full_load_errored_tables: Number of tables errored in full load + :vartype full_load_errored_tables: long + :ivar initialization_completed: Indicates if initial load (full load) has + been completed + :vartype initialization_completed: bool + :ivar latency: CDC apply latency + :vartype latency: long + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'migration_state': {'readonly': True}, + 'incoming_changes': {'readonly': True}, + 'applied_changes': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'full_load_completed_tables': {'readonly': True}, + 'full_load_loading_tables': {'readonly': True}, + 'full_load_queued_tables': {'readonly': True}, + 'full_load_errored_tables': {'readonly': True}, + 'initialization_completed': {'readonly': True}, + 'latency': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'migration_state': {'key': 'migrationState', 'type': 'str'}, + 'incoming_changes': {'key': 'incomingChanges', 'type': 'long'}, + 'applied_changes': {'key': 'appliedChanges', 'type': 'long'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'full_load_completed_tables': {'key': 'fullLoadCompletedTables', 'type': 'long'}, + 'full_load_loading_tables': {'key': 'fullLoadLoadingTables', 'type': 'long'}, + 'full_load_queued_tables': {'key': 'fullLoadQueuedTables', 'type': 'long'}, + 'full_load_errored_tables': {'key': 'fullLoadErroredTables', 'type': 'long'}, + 'initialization_completed': {'key': 'initializationCompleted', 'type': 'bool'}, + 'latency': {'key': 'latency', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.started_on = None + self.ended_on = None + self.migration_state = None + self.incoming_changes = None + self.applied_changes = None + self.cdc_insert_counter = None + self.cdc_delete_counter = None + self.cdc_update_counter = None + self.full_load_completed_tables = None + self.full_load_loading_tables = None + self.full_load_queued_tables = None + self.full_load_errored_tables = None + self.initialization_completed = None + self.latency = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_level_py3.py new file mode 100644 index 000000000000..b43b9c0f96c7 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_database_level_py3.py @@ -0,0 +1,121 @@ +# 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 .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar migration_state: Migration state that this database is in. Possible + values include: 'UNDEFINED', 'CONFIGURING', 'INITIALIAZING', 'STARTING', + 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', 'CANCELLING', + 'CANCELLED', 'FAILED' + :vartype migration_state: str or + ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState + :ivar incoming_changes: Number of incoming changes + :vartype incoming_changes: long + :ivar applied_changes: Number of applied changes + :vartype applied_changes: long + :ivar cdc_insert_counter: Number of cdc inserts + :vartype cdc_insert_counter: long + :ivar cdc_delete_counter: Number of cdc deletes + :vartype cdc_delete_counter: long + :ivar cdc_update_counter: Number of cdc updates + :vartype cdc_update_counter: long + :ivar full_load_completed_tables: Number of tables completed in full load + :vartype full_load_completed_tables: long + :ivar full_load_loading_tables: Number of tables loading in full load + :vartype full_load_loading_tables: long + :ivar full_load_queued_tables: Number of tables queued in full load + :vartype full_load_queued_tables: long + :ivar full_load_errored_tables: Number of tables errored in full load + :vartype full_load_errored_tables: long + :ivar initialization_completed: Indicates if initial load (full load) has + been completed + :vartype initialization_completed: bool + :ivar latency: CDC apply latency + :vartype latency: long + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'migration_state': {'readonly': True}, + 'incoming_changes': {'readonly': True}, + 'applied_changes': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'full_load_completed_tables': {'readonly': True}, + 'full_load_loading_tables': {'readonly': True}, + 'full_load_queued_tables': {'readonly': True}, + 'full_load_errored_tables': {'readonly': True}, + 'initialization_completed': {'readonly': True}, + 'latency': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'migration_state': {'key': 'migrationState', 'type': 'str'}, + 'incoming_changes': {'key': 'incomingChanges', 'type': 'long'}, + 'applied_changes': {'key': 'appliedChanges', 'type': 'long'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'full_load_completed_tables': {'key': 'fullLoadCompletedTables', 'type': 'long'}, + 'full_load_loading_tables': {'key': 'fullLoadLoadingTables', 'type': 'long'}, + 'full_load_queued_tables': {'key': 'fullLoadQueuedTables', 'type': 'long'}, + 'full_load_errored_tables': {'key': 'fullLoadErroredTables', 'type': 'long'}, + 'initialization_completed': {'key': 'initializationCompleted', 'type': 'bool'}, + 'latency': {'key': 'latency', 'type': 'long'}, + } + + def __init__(self, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.started_on = None + self.ended_on = None + self.migration_state = None + self.incoming_changes = None + self.applied_changes = None + self.cdc_insert_counter = None + self.cdc_delete_counter = None + self.cdc_update_counter = None + self.full_load_completed_tables = None + self.full_load_loading_tables = None + self.full_load_queued_tables = None + self.full_load_errored_tables = None + self.initialization_completed = None + self.latency = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_error.py new file mode 100644 index 000000000000..84d67be56cd5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_error.py @@ -0,0 +1,46 @@ +# 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 .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_error_py3.py new file mode 100644 index 000000000000..f3c0512f5767 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_error_py3.py @@ -0,0 +1,46 @@ +# 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 .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_migration_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_migration_level.py new file mode 100644 index 000000000000..fdf53d082ab7 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_migration_level.py @@ -0,0 +1,71 @@ +# 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 .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server: Source server name + :vartype source_server: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server: Target server name + :vartype target_server: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server': {'key': 'sourceServer', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server': {'key': 'targetServer', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, self).__init__(**kwargs) + self.started_on = None + self.ended_on = None + self.source_server_version = None + self.source_server = None + self.target_server_version = None + self.target_server = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_migration_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_migration_level_py3.py new file mode 100644 index 000000000000..b69704273b7c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_migration_level_py3.py @@ -0,0 +1,71 @@ +# 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 .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server: Source server name + :vartype source_server: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server: Target server name + :vartype target_server: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server': {'key': 'sourceServer', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server': {'key': 'targetServer', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, self).__init__(**kwargs) + self.started_on = None + self.ended_on = None + self.source_server_version = None + self.source_server = None + self.target_server_version = None + self.target_server = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3.py new file mode 100644 index 000000000000..79f5489e9e8e --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput(Model): + """Output for the task that migrates PostgreSQL databases to Azure Database + for PostgreSQL for online migrations. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'DatabaseLevelErrorOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError', 'ErrorOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError', 'TableLevelOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel', 'DatabaseLevelOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel', 'MigrationLevelOutput': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel'} + } + + def __init__(self, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_table_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_table_level.py new file mode 100644 index 000000000000..d9bd66b4cc7c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_table_level.py @@ -0,0 +1,109 @@ +# 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 .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar table_name: Name of the table + :vartype table_name: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar cdc_insert_counter: Number of applied inserts + :vartype cdc_insert_counter: long + :ivar cdc_update_counter: Number of applied updates + :vartype cdc_update_counter: long + :ivar cdc_delete_counter: Number of applied deletes + :vartype cdc_delete_counter: long + :ivar full_load_est_finish_time: Estimate to finish full load + :vartype full_load_est_finish_time: datetime + :ivar full_load_started_on: Full load start time + :vartype full_load_started_on: datetime + :ivar full_load_ended_on: Full load end time + :vartype full_load_ended_on: datetime + :ivar full_load_total_rows: Number of rows applied in full load + :vartype full_load_total_rows: long + :ivar state: Current state of the table migration. Possible values + include: 'BEFORE_LOAD', 'FULL_LOAD', 'COMPLETED', 'CANCELED', 'ERROR', + 'FAILED' + :vartype state: str or + ~azure.mgmt.datamigration.models.SyncTableMigrationState + :ivar total_changes_applied: Total number of applied changes + :vartype total_changes_applied: long + :ivar data_errors_counter: Number of data errors occurred + :vartype data_errors_counter: long + :ivar last_modified_time: Last modified time on target + :vartype last_modified_time: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'table_name': {'readonly': True}, + 'database_name': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'full_load_est_finish_time': {'readonly': True}, + 'full_load_started_on': {'readonly': True}, + 'full_load_ended_on': {'readonly': True}, + 'full_load_total_rows': {'readonly': True}, + 'state': {'readonly': True}, + 'total_changes_applied': {'readonly': True}, + 'data_errors_counter': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'table_name': {'key': 'tableName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'full_load_est_finish_time': {'key': 'fullLoadEstFinishTime', 'type': 'iso-8601'}, + 'full_load_started_on': {'key': 'fullLoadStartedOn', 'type': 'iso-8601'}, + 'full_load_ended_on': {'key': 'fullLoadEndedOn', 'type': 'iso-8601'}, + 'full_load_total_rows': {'key': 'fullLoadTotalRows', 'type': 'long'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_changes_applied': {'key': 'totalChangesApplied', 'type': 'long'}, + 'data_errors_counter': {'key': 'dataErrorsCounter', 'type': 'long'}, + 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, self).__init__(**kwargs) + self.table_name = None + self.database_name = None + self.cdc_insert_counter = None + self.cdc_update_counter = None + self.cdc_delete_counter = None + self.full_load_est_finish_time = None + self.full_load_started_on = None + self.full_load_ended_on = None + self.full_load_total_rows = None + self.state = None + self.total_changes_applied = None + self.data_errors_counter = None + self.last_modified_time = None + self.result_type = 'TableLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_table_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_table_level_py3.py new file mode 100644 index 000000000000..3735d1b3a54d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_table_level_py3.py @@ -0,0 +1,109 @@ +# 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 .migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_output_py3 import MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput): + """MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar table_name: Name of the table + :vartype table_name: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar cdc_insert_counter: Number of applied inserts + :vartype cdc_insert_counter: long + :ivar cdc_update_counter: Number of applied updates + :vartype cdc_update_counter: long + :ivar cdc_delete_counter: Number of applied deletes + :vartype cdc_delete_counter: long + :ivar full_load_est_finish_time: Estimate to finish full load + :vartype full_load_est_finish_time: datetime + :ivar full_load_started_on: Full load start time + :vartype full_load_started_on: datetime + :ivar full_load_ended_on: Full load end time + :vartype full_load_ended_on: datetime + :ivar full_load_total_rows: Number of rows applied in full load + :vartype full_load_total_rows: long + :ivar state: Current state of the table migration. Possible values + include: 'BEFORE_LOAD', 'FULL_LOAD', 'COMPLETED', 'CANCELED', 'ERROR', + 'FAILED' + :vartype state: str or + ~azure.mgmt.datamigration.models.SyncTableMigrationState + :ivar total_changes_applied: Total number of applied changes + :vartype total_changes_applied: long + :ivar data_errors_counter: Number of data errors occurred + :vartype data_errors_counter: long + :ivar last_modified_time: Last modified time on target + :vartype last_modified_time: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'table_name': {'readonly': True}, + 'database_name': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'full_load_est_finish_time': {'readonly': True}, + 'full_load_started_on': {'readonly': True}, + 'full_load_ended_on': {'readonly': True}, + 'full_load_total_rows': {'readonly': True}, + 'state': {'readonly': True}, + 'total_changes_applied': {'readonly': True}, + 'data_errors_counter': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'table_name': {'key': 'tableName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'full_load_est_finish_time': {'key': 'fullLoadEstFinishTime', 'type': 'iso-8601'}, + 'full_load_started_on': {'key': 'fullLoadStartedOn', 'type': 'iso-8601'}, + 'full_load_ended_on': {'key': 'fullLoadEndedOn', 'type': 'iso-8601'}, + 'full_load_total_rows': {'key': 'fullLoadTotalRows', 'type': 'long'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_changes_applied': {'key': 'totalChangesApplied', 'type': 'long'}, + 'data_errors_counter': {'key': 'dataErrorsCounter', 'type': 'long'}, + 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, self).__init__(**kwargs) + self.table_name = None + self.database_name = None + self.cdc_insert_counter = None + self.cdc_update_counter = None + self.cdc_delete_counter = None + self.full_load_est_finish_time = None + self.full_load_started_on = None + self.full_load_ended_on = None + self.full_load_total_rows = None + self.state = None + self.total_changes_applied = None + self.data_errors_counter = None + self.last_modified_time = None + self.result_type = 'TableLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_properties.py new file mode 100644 index 000000000000..bd681f289119 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates PostgreSQL databases to Azure + Database for PostgreSQL for online migrations. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'Migrate.PostgreSql.AzureDbForPostgreSql.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_properties_py3.py new file mode 100644 index 000000000000..fdd9e444a36c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_postgre_sql_azure_db_for_postgre_sql_sync_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates PostgreSQL databases to Azure + Database for PostgreSQL for online migrations. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'Migrate.PostgreSql.AzureDbForPostgreSql.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_database_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_database_input.py new file mode 100644 index 000000000000..0449ca9b6de5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_database_input.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSchemaSqlServerSqlDbDatabaseInput(Model): + """Database input for migrate schema Sql Server to Azure SQL Server scenario. + + :param name: Name of source database + :type name: str + :param target_database_name: Name of target database + :type target_database_name: str + :param schema_setting: Database schema migration settings + :type schema_setting: + ~azure.mgmt.datamigration.models.SchemaMigrationSetting + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'schema_setting': {'key': 'schemaSetting', 'type': 'SchemaMigrationSetting'}, + } + + def __init__(self, **kwargs): + super(MigrateSchemaSqlServerSqlDbDatabaseInput, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.target_database_name = kwargs.get('target_database_name', None) + self.schema_setting = kwargs.get('schema_setting', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_database_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_database_input_py3.py new file mode 100644 index 000000000000..25029f5cb5f6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_database_input_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSchemaSqlServerSqlDbDatabaseInput(Model): + """Database input for migrate schema Sql Server to Azure SQL Server scenario. + + :param name: Name of source database + :type name: str + :param target_database_name: Name of target database + :type target_database_name: str + :param schema_setting: Database schema migration settings + :type schema_setting: + ~azure.mgmt.datamigration.models.SchemaMigrationSetting + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'schema_setting': {'key': 'schemaSetting', 'type': 'SchemaMigrationSetting'}, + } + + def __init__(self, *, name: str=None, target_database_name: str=None, schema_setting=None, **kwargs) -> None: + super(MigrateSchemaSqlServerSqlDbDatabaseInput, self).__init__(**kwargs) + self.name = name + self.target_database_name = target_database_name + self.schema_setting = schema_setting diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_input.py new file mode 100644 index 000000000000..780840f12dd7 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_input.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sql_migration_task_input import SqlMigrationTaskInput + + +class MigrateSchemaSqlServerSqlDbTaskInput(SqlMigrationTaskInput): + """Input for task that migrates Schema for SQL Server databases to Azure SQL + databases. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSchemaSqlServerSqlDbDatabaseInput] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSchemaSqlServerSqlDbDatabaseInput]'}, + } + + def __init__(self, **kwargs): + super(MigrateSchemaSqlServerSqlDbTaskInput, self).__init__(**kwargs) + self.selected_databases = kwargs.get('selected_databases', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_input_py3.py new file mode 100644 index 000000000000..0af2ff8e749b --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_input_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sql_migration_task_input_py3 import SqlMigrationTaskInput + + +class MigrateSchemaSqlServerSqlDbTaskInput(SqlMigrationTaskInput): + """Input for task that migrates Schema for SQL Server databases to Azure SQL + databases. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSchemaSqlServerSqlDbDatabaseInput] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSchemaSqlServerSqlDbDatabaseInput]'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, selected_databases, **kwargs) -> None: + super(MigrateSchemaSqlServerSqlDbTaskInput, self).__init__(source_connection_info=source_connection_info, target_connection_info=target_connection_info, **kwargs) + self.selected_databases = selected_databases diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output.py new file mode 100644 index 000000000000..cedc5073506a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSchemaSqlServerSqlDbTaskOutput(Model): + """Output for the task that migrates Schema for SQL Server databases to Azure + SQL databases. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, + MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, + MigrateSchemaSqlServerSqlDbTaskOutputError, MigrateSchemaSqlTaskOutputError + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'MigrationLevelOutput': 'MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel', 'DatabaseLevelOutput': 'MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel', 'SchemaErrorOutput': 'MigrateSchemaSqlServerSqlDbTaskOutputError', 'ErrorOutput': 'MigrateSchemaSqlTaskOutputError'} + } + + def __init__(self, **kwargs): + super(MigrateSchemaSqlServerSqlDbTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_database_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_database_level.py new file mode 100644 index 000000000000..bd79bf6e5bc1 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_database_level.py @@ -0,0 +1,102 @@ +# 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 .migrate_schema_sql_server_sql_db_task_output import MigrateSchemaSqlServerSqlDbTaskOutput + + +class MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel(MigrateSchemaSqlServerSqlDbTaskOutput): + """MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: The name of the database + :vartype database_name: str + :ivar state: State of the schema migration for this database. Possible + values include: 'None', 'InProgress', 'Failed', 'Warning', 'Completed', + 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar stage: Schema migration stage for this database. Possible values + include: 'NotStarted', 'ValidatingInputs', 'CollectingObjects', + 'DownloadingScript', 'GeneratingScript', 'UploadingScript', + 'DeployingSchema', 'Completed', 'CompletedWithWarnings', 'Failed' + :vartype stage: str or + ~azure.mgmt.datamigration.models.SchemaMigrationStage + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar database_error_result_prefix: Prefix string to use for querying + errors for this database + :vartype database_error_result_prefix: str + :ivar schema_error_result_prefix: Prefix string to use for querying schema + errors for this database + :vartype schema_error_result_prefix: str + :ivar number_of_successful_operations: Number of successful operations for + this database + :vartype number_of_successful_operations: long + :ivar number_of_failed_operations: Number of failed operations for this + database + :vartype number_of_failed_operations: long + :ivar file_id: Identifier for the file resource containing the schema of + this database + :vartype file_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'state': {'readonly': True}, + 'stage': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'database_error_result_prefix': {'readonly': True}, + 'schema_error_result_prefix': {'readonly': True}, + 'number_of_successful_operations': {'readonly': True}, + 'number_of_failed_operations': {'readonly': True}, + 'file_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'stage': {'key': 'stage', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'database_error_result_prefix': {'key': 'databaseErrorResultPrefix', 'type': 'str'}, + 'schema_error_result_prefix': {'key': 'schemaErrorResultPrefix', 'type': 'str'}, + 'number_of_successful_operations': {'key': 'numberOfSuccessfulOperations', 'type': 'long'}, + 'number_of_failed_operations': {'key': 'numberOfFailedOperations', 'type': 'long'}, + 'file_id': {'key': 'fileId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.state = None + self.stage = None + self.started_on = None + self.ended_on = None + self.database_error_result_prefix = None + self.schema_error_result_prefix = None + self.number_of_successful_operations = None + self.number_of_failed_operations = None + self.file_id = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_database_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_database_level_py3.py new file mode 100644 index 000000000000..40ca965b8ed3 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_database_level_py3.py @@ -0,0 +1,102 @@ +# 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 .migrate_schema_sql_server_sql_db_task_output_py3 import MigrateSchemaSqlServerSqlDbTaskOutput + + +class MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel(MigrateSchemaSqlServerSqlDbTaskOutput): + """MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: The name of the database + :vartype database_name: str + :ivar state: State of the schema migration for this database. Possible + values include: 'None', 'InProgress', 'Failed', 'Warning', 'Completed', + 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar stage: Schema migration stage for this database. Possible values + include: 'NotStarted', 'ValidatingInputs', 'CollectingObjects', + 'DownloadingScript', 'GeneratingScript', 'UploadingScript', + 'DeployingSchema', 'Completed', 'CompletedWithWarnings', 'Failed' + :vartype stage: str or + ~azure.mgmt.datamigration.models.SchemaMigrationStage + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar database_error_result_prefix: Prefix string to use for querying + errors for this database + :vartype database_error_result_prefix: str + :ivar schema_error_result_prefix: Prefix string to use for querying schema + errors for this database + :vartype schema_error_result_prefix: str + :ivar number_of_successful_operations: Number of successful operations for + this database + :vartype number_of_successful_operations: long + :ivar number_of_failed_operations: Number of failed operations for this + database + :vartype number_of_failed_operations: long + :ivar file_id: Identifier for the file resource containing the schema of + this database + :vartype file_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'state': {'readonly': True}, + 'stage': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'database_error_result_prefix': {'readonly': True}, + 'schema_error_result_prefix': {'readonly': True}, + 'number_of_successful_operations': {'readonly': True}, + 'number_of_failed_operations': {'readonly': True}, + 'file_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'stage': {'key': 'stage', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'database_error_result_prefix': {'key': 'databaseErrorResultPrefix', 'type': 'str'}, + 'schema_error_result_prefix': {'key': 'schemaErrorResultPrefix', 'type': 'str'}, + 'number_of_successful_operations': {'key': 'numberOfSuccessfulOperations', 'type': 'long'}, + 'number_of_failed_operations': {'key': 'numberOfFailedOperations', 'type': 'long'}, + 'file_id': {'key': 'fileId', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.state = None + self.stage = None + self.started_on = None + self.ended_on = None + self.database_error_result_prefix = None + self.schema_error_result_prefix = None + self.number_of_successful_operations = None + self.number_of_failed_operations = None + self.file_id = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_error.py new file mode 100644 index 000000000000..3a6c16548eb7 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_error.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .migrate_schema_sql_server_sql_db_task_output import MigrateSchemaSqlServerSqlDbTaskOutput + + +class MigrateSchemaSqlServerSqlDbTaskOutputError(MigrateSchemaSqlServerSqlDbTaskOutput): + """MigrateSchemaSqlServerSqlDbTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar command_text: Schema command which failed + :vartype command_text: str + :ivar error_text: Reason of failure + :vartype error_text: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'command_text': {'readonly': True}, + 'error_text': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'command_text': {'key': 'commandText', 'type': 'str'}, + 'error_text': {'key': 'errorText', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MigrateSchemaSqlServerSqlDbTaskOutputError, self).__init__(**kwargs) + self.command_text = None + self.error_text = None + self.result_type = 'SchemaErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_error_py3.py new file mode 100644 index 000000000000..ba6d5386a5cd --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_error_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .migrate_schema_sql_server_sql_db_task_output_py3 import MigrateSchemaSqlServerSqlDbTaskOutput + + +class MigrateSchemaSqlServerSqlDbTaskOutputError(MigrateSchemaSqlServerSqlDbTaskOutput): + """MigrateSchemaSqlServerSqlDbTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar command_text: Schema command which failed + :vartype command_text: str + :ivar error_text: Reason of failure + :vartype error_text: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'command_text': {'readonly': True}, + 'error_text': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'command_text': {'key': 'commandText', 'type': 'str'}, + 'error_text': {'key': 'errorText', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSchemaSqlServerSqlDbTaskOutputError, self).__init__(**kwargs) + self.command_text = None + self.error_text = None + self.result_type = 'SchemaErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_migration_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_migration_level.py new file mode 100644 index 000000000000..b1f960f98a77 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_migration_level.py @@ -0,0 +1,78 @@ +# 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 .migrate_schema_sql_server_sql_db_task_output import MigrateSchemaSqlServerSqlDbTaskOutput + + +class MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel(MigrateSchemaSqlServerSqlDbTaskOutput): + """MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar state: Overall state of the schema migration. Possible values + include: 'None', 'InProgress', 'Failed', 'Warning', 'Completed', + 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server_brand_version: Source server brand version + :vartype source_server_brand_version: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server_brand_version: Target server brand version + :vartype target_server_brand_version: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'state': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server_brand_version': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, self).__init__(**kwargs) + self.state = None + self.started_on = None + self.ended_on = None + self.source_server_version = None + self.source_server_brand_version = None + self.target_server_version = None + self.target_server_brand_version = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_migration_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_migration_level_py3.py new file mode 100644 index 000000000000..7e5399871ed4 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_migration_level_py3.py @@ -0,0 +1,78 @@ +# 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 .migrate_schema_sql_server_sql_db_task_output_py3 import MigrateSchemaSqlServerSqlDbTaskOutput + + +class MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel(MigrateSchemaSqlServerSqlDbTaskOutput): + """MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar state: Overall state of the schema migration. Possible values + include: 'None', 'InProgress', 'Failed', 'Warning', 'Completed', + 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server_brand_version: Source server brand version + :vartype source_server_brand_version: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server_brand_version: Target server brand version + :vartype target_server_brand_version: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'state': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server_brand_version': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, self).__init__(**kwargs) + self.state = None + self.started_on = None + self.ended_on = None + self.source_server_version = None + self.source_server_brand_version = None + self.target_server_version = None + self.target_server_brand_version = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_py3.py new file mode 100644 index 000000000000..3db08cbd64c4 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_output_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSchemaSqlServerSqlDbTaskOutput(Model): + """Output for the task that migrates Schema for SQL Server databases to Azure + SQL databases. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, + MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, + MigrateSchemaSqlServerSqlDbTaskOutputError, MigrateSchemaSqlTaskOutputError + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'MigrationLevelOutput': 'MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel', 'DatabaseLevelOutput': 'MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel', 'SchemaErrorOutput': 'MigrateSchemaSqlServerSqlDbTaskOutputError', 'ErrorOutput': 'MigrateSchemaSqlTaskOutputError'} + } + + def __init__(self, **kwargs) -> None: + super(MigrateSchemaSqlServerSqlDbTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_properties.py new file mode 100644 index 000000000000..1c98cfad9fd6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class MigrateSchemaSqlServerSqlDbTaskProperties(ProjectTaskProperties): + """Properties for task that migrates Schema for SQL Server databases to Azure + SQL databases. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigrateSchemaSqlServerSqlDbTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateSchemaSqlServerSqlDbTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateSchemaSqlServerSqlDbTaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateSchemaSqlServerSqlDbTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(MigrateSchemaSqlServerSqlDbTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'MigrateSchemaSqlServerSqlDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_properties_py3.py new file mode 100644 index 000000000000..f1cd1fd1dd71 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_server_sql_db_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class MigrateSchemaSqlServerSqlDbTaskProperties(ProjectTaskProperties): + """Properties for task that migrates Schema for SQL Server databases to Azure + SQL databases. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigrateSchemaSqlServerSqlDbTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateSchemaSqlServerSqlDbTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateSchemaSqlServerSqlDbTaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateSchemaSqlServerSqlDbTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MigrateSchemaSqlServerSqlDbTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'MigrateSchemaSqlServerSqlDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_task_output_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_task_output_error.py new file mode 100644 index 000000000000..074885c0322b --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_task_output_error.py @@ -0,0 +1,46 @@ +# 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 .migrate_schema_sql_server_sql_db_task_output import MigrateSchemaSqlServerSqlDbTaskOutput + + +class MigrateSchemaSqlTaskOutputError(MigrateSchemaSqlServerSqlDbTaskOutput): + """MigrateSchemaSqlTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs): + super(MigrateSchemaSqlTaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_task_output_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_task_output_error_py3.py new file mode 100644 index 000000000000..9afffc5b2aa0 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_schema_sql_task_output_error_py3.py @@ -0,0 +1,46 @@ +# 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 .migrate_schema_sql_server_sql_db_task_output_py3 import MigrateSchemaSqlServerSqlDbTaskOutput + + +class MigrateSchemaSqlTaskOutputError(MigrateSchemaSqlServerSqlDbTaskOutput): + """MigrateSchemaSqlTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSchemaSqlTaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_database_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_database_input.py new file mode 100644 index 000000000000..f088fb0680d6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_database_input.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSqlServerSqlDbSyncDatabaseInput(Model): + """Database specific information for SQL to Azure SQL DB sync migration task + inputs. + + :param id: Unique identifier for database + :type id: str + :param name: Name of database + :type name: str + :param target_database_name: Target database name + :type target_database_name: str + :param schema_name: Schema name to be migrated + :type schema_name: str + :param table_map: Mapping of source to target tables + :type table_map: dict[str, str] + :param migration_setting: Migration settings which tune the migration + behavior + :type migration_setting: dict[str, str] + :param source_setting: Source settings to tune source endpoint migration + behavior + :type source_setting: dict[str, str] + :param target_setting: Target settings to tune target endpoint migration + behavior + :type target_setting: dict[str, str] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'schema_name': {'key': 'schemaName', 'type': 'str'}, + 'table_map': {'key': 'tableMap', 'type': '{str}'}, + 'migration_setting': {'key': 'migrationSetting', 'type': '{str}'}, + 'source_setting': {'key': 'sourceSetting', 'type': '{str}'}, + 'target_setting': {'key': 'targetSetting', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncDatabaseInput, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.target_database_name = kwargs.get('target_database_name', None) + self.schema_name = kwargs.get('schema_name', None) + self.table_map = kwargs.get('table_map', None) + self.migration_setting = kwargs.get('migration_setting', None) + self.source_setting = kwargs.get('source_setting', None) + self.target_setting = kwargs.get('target_setting', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_database_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_database_input_py3.py new file mode 100644 index 000000000000..1298fe296799 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_database_input_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSqlServerSqlDbSyncDatabaseInput(Model): + """Database specific information for SQL to Azure SQL DB sync migration task + inputs. + + :param id: Unique identifier for database + :type id: str + :param name: Name of database + :type name: str + :param target_database_name: Target database name + :type target_database_name: str + :param schema_name: Schema name to be migrated + :type schema_name: str + :param table_map: Mapping of source to target tables + :type table_map: dict[str, str] + :param migration_setting: Migration settings which tune the migration + behavior + :type migration_setting: dict[str, str] + :param source_setting: Source settings to tune source endpoint migration + behavior + :type source_setting: dict[str, str] + :param target_setting: Target settings to tune target endpoint migration + behavior + :type target_setting: dict[str, str] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'schema_name': {'key': 'schemaName', 'type': 'str'}, + 'table_map': {'key': 'tableMap', 'type': '{str}'}, + 'migration_setting': {'key': 'migrationSetting', 'type': '{str}'}, + 'source_setting': {'key': 'sourceSetting', 'type': '{str}'}, + 'target_setting': {'key': 'targetSetting', 'type': '{str}'}, + } + + def __init__(self, *, id: str=None, name: str=None, target_database_name: str=None, schema_name: str=None, table_map=None, migration_setting=None, source_setting=None, target_setting=None, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncDatabaseInput, self).__init__(**kwargs) + self.id = id + self.name = name + self.target_database_name = target_database_name + self.schema_name = schema_name + self.table_map = table_map + self.migration_setting = migration_setting + self.source_setting = source_setting + self.target_setting = target_setting diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_input.py new file mode 100644 index 000000000000..be135f30d86d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_input.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sql_migration_task_input import SqlMigrationTaskInput + + +class MigrateSqlServerSqlDbSyncTaskInput(SqlMigrationTaskInput): + """Input for the task that migrates on-prem SQL Server databases to Azure SQL + Database for online migrations. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlDbSyncDatabaseInput] + :param validation_options: Validation options + :type validation_options: + ~azure.mgmt.datamigration.models.MigrationValidationOptions + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSqlServerSqlDbSyncDatabaseInput]'}, + 'validation_options': {'key': 'validationOptions', 'type': 'MigrationValidationOptions'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncTaskInput, self).__init__(**kwargs) + self.selected_databases = kwargs.get('selected_databases', None) + self.validation_options = kwargs.get('validation_options', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_input_py3.py new file mode 100644 index 000000000000..ae48ae6e3ad5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_input_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sql_migration_task_input_py3 import SqlMigrationTaskInput + + +class MigrateSqlServerSqlDbSyncTaskInput(SqlMigrationTaskInput): + """Input for the task that migrates on-prem SQL Server databases to Azure SQL + Database for online migrations. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlDbSyncDatabaseInput] + :param validation_options: Validation options + :type validation_options: + ~azure.mgmt.datamigration.models.MigrationValidationOptions + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSqlServerSqlDbSyncDatabaseInput]'}, + 'validation_options': {'key': 'validationOptions', 'type': 'MigrationValidationOptions'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, selected_databases, validation_options=None, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncTaskInput, self).__init__(source_connection_info=source_connection_info, target_connection_info=target_connection_info, **kwargs) + self.selected_databases = selected_databases + self.validation_options = validation_options diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output.py new file mode 100644 index 000000000000..0f6402a6c73e --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSqlServerSqlDbSyncTaskOutput(Model): + """Output for the task that migrates on-prem SQL Server databases to Azure SQL + Database for online migrations. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, + MigrateSqlServerSqlDbSyncTaskOutputError, + MigrateSqlServerSqlDbSyncTaskOutputTableLevel, + MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, + MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'DatabaseLevelErrorOutput': 'MigrateSqlServerSqlDbSyncTaskOutputDatabaseError', 'ErrorOutput': 'MigrateSqlServerSqlDbSyncTaskOutputError', 'TableLevelOutput': 'MigrateSqlServerSqlDbSyncTaskOutputTableLevel', 'DatabaseLevelOutput': 'MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel', 'MigrationLevelOutput': 'MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel'} + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_error.py new file mode 100644 index 000000000000..3a39650c763a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_error.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .migrate_sql_server_sql_db_sync_task_output import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputDatabaseError(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputDatabaseError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param error_message: Error message + :type error_message: str + :param events: List of error events. + :type events: + list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error_message': {'key': 'errorMessage', 'type': 'str'}, + 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, self).__init__(**kwargs) + self.error_message = kwargs.get('error_message', None) + self.events = kwargs.get('events', None) + self.result_type = 'DatabaseLevelErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_error_py3.py new file mode 100644 index 000000000000..044de6d3d8ad --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_error_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .migrate_sql_server_sql_db_sync_task_output_py3 import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputDatabaseError(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputDatabaseError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param error_message: Error message + :type error_message: str + :param events: List of error events. + :type events: + list[~azure.mgmt.datamigration.models.SyncMigrationDatabaseErrorEvent] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error_message': {'key': 'errorMessage', 'type': 'str'}, + 'events': {'key': 'events', 'type': '[SyncMigrationDatabaseErrorEvent]'}, + } + + def __init__(self, *, error_message: str=None, events=None, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, self).__init__(**kwargs) + self.error_message = error_message + self.events = events + self.result_type = 'DatabaseLevelErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_level.py new file mode 100644 index 000000000000..d2874c104154 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_level.py @@ -0,0 +1,121 @@ +# 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 .migrate_sql_server_sql_db_sync_task_output import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar migration_state: Migration state that this database is in. Possible + values include: 'UNDEFINED', 'CONFIGURING', 'INITIALIAZING', 'STARTING', + 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', 'CANCELLING', + 'CANCELLED', 'FAILED' + :vartype migration_state: str or + ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState + :ivar incoming_changes: Number of incoming changes + :vartype incoming_changes: long + :ivar applied_changes: Number of applied changes + :vartype applied_changes: long + :ivar cdc_insert_counter: Number of cdc inserts + :vartype cdc_insert_counter: long + :ivar cdc_delete_counter: Number of cdc deletes + :vartype cdc_delete_counter: long + :ivar cdc_update_counter: Number of cdc updates + :vartype cdc_update_counter: long + :ivar full_load_completed_tables: Number of tables completed in full load + :vartype full_load_completed_tables: long + :ivar full_load_loading_tables: Number of tables loading in full load + :vartype full_load_loading_tables: long + :ivar full_load_queued_tables: Number of tables queued in full load + :vartype full_load_queued_tables: long + :ivar full_load_errored_tables: Number of tables errored in full load + :vartype full_load_errored_tables: long + :ivar initialization_completed: Indicates if initial load (full load) has + been completed + :vartype initialization_completed: bool + :ivar latency: CDC apply latency + :vartype latency: long + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'migration_state': {'readonly': True}, + 'incoming_changes': {'readonly': True}, + 'applied_changes': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'full_load_completed_tables': {'readonly': True}, + 'full_load_loading_tables': {'readonly': True}, + 'full_load_queued_tables': {'readonly': True}, + 'full_load_errored_tables': {'readonly': True}, + 'initialization_completed': {'readonly': True}, + 'latency': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'migration_state': {'key': 'migrationState', 'type': 'str'}, + 'incoming_changes': {'key': 'incomingChanges', 'type': 'long'}, + 'applied_changes': {'key': 'appliedChanges', 'type': 'long'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'full_load_completed_tables': {'key': 'fullLoadCompletedTables', 'type': 'long'}, + 'full_load_loading_tables': {'key': 'fullLoadLoadingTables', 'type': 'long'}, + 'full_load_queued_tables': {'key': 'fullLoadQueuedTables', 'type': 'long'}, + 'full_load_errored_tables': {'key': 'fullLoadErroredTables', 'type': 'long'}, + 'initialization_completed': {'key': 'initializationCompleted', 'type': 'bool'}, + 'latency': {'key': 'latency', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.started_on = None + self.ended_on = None + self.migration_state = None + self.incoming_changes = None + self.applied_changes = None + self.cdc_insert_counter = None + self.cdc_delete_counter = None + self.cdc_update_counter = None + self.full_load_completed_tables = None + self.full_load_loading_tables = None + self.full_load_queued_tables = None + self.full_load_errored_tables = None + self.initialization_completed = None + self.latency = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_level_py3.py new file mode 100644 index 000000000000..123f2b6972fa --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_database_level_py3.py @@ -0,0 +1,121 @@ +# 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 .migrate_sql_server_sql_db_sync_task_output_py3 import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar migration_state: Migration state that this database is in. Possible + values include: 'UNDEFINED', 'CONFIGURING', 'INITIALIAZING', 'STARTING', + 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', 'CANCELLING', + 'CANCELLED', 'FAILED' + :vartype migration_state: str or + ~azure.mgmt.datamigration.models.SyncDatabaseMigrationReportingState + :ivar incoming_changes: Number of incoming changes + :vartype incoming_changes: long + :ivar applied_changes: Number of applied changes + :vartype applied_changes: long + :ivar cdc_insert_counter: Number of cdc inserts + :vartype cdc_insert_counter: long + :ivar cdc_delete_counter: Number of cdc deletes + :vartype cdc_delete_counter: long + :ivar cdc_update_counter: Number of cdc updates + :vartype cdc_update_counter: long + :ivar full_load_completed_tables: Number of tables completed in full load + :vartype full_load_completed_tables: long + :ivar full_load_loading_tables: Number of tables loading in full load + :vartype full_load_loading_tables: long + :ivar full_load_queued_tables: Number of tables queued in full load + :vartype full_load_queued_tables: long + :ivar full_load_errored_tables: Number of tables errored in full load + :vartype full_load_errored_tables: long + :ivar initialization_completed: Indicates if initial load (full load) has + been completed + :vartype initialization_completed: bool + :ivar latency: CDC apply latency + :vartype latency: long + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'migration_state': {'readonly': True}, + 'incoming_changes': {'readonly': True}, + 'applied_changes': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'full_load_completed_tables': {'readonly': True}, + 'full_load_loading_tables': {'readonly': True}, + 'full_load_queued_tables': {'readonly': True}, + 'full_load_errored_tables': {'readonly': True}, + 'initialization_completed': {'readonly': True}, + 'latency': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'migration_state': {'key': 'migrationState', 'type': 'str'}, + 'incoming_changes': {'key': 'incomingChanges', 'type': 'long'}, + 'applied_changes': {'key': 'appliedChanges', 'type': 'long'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'full_load_completed_tables': {'key': 'fullLoadCompletedTables', 'type': 'long'}, + 'full_load_loading_tables': {'key': 'fullLoadLoadingTables', 'type': 'long'}, + 'full_load_queued_tables': {'key': 'fullLoadQueuedTables', 'type': 'long'}, + 'full_load_errored_tables': {'key': 'fullLoadErroredTables', 'type': 'long'}, + 'initialization_completed': {'key': 'initializationCompleted', 'type': 'bool'}, + 'latency': {'key': 'latency', 'type': 'long'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.started_on = None + self.ended_on = None + self.migration_state = None + self.incoming_changes = None + self.applied_changes = None + self.cdc_insert_counter = None + self.cdc_delete_counter = None + self.cdc_update_counter = None + self.full_load_completed_tables = None + self.full_load_loading_tables = None + self.full_load_queued_tables = None + self.full_load_errored_tables = None + self.initialization_completed = None + self.latency = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_error.py new file mode 100644 index 000000000000..f8da803b0dd5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_error.py @@ -0,0 +1,46 @@ +# 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 .migrate_sql_server_sql_db_sync_task_output import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputError(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncTaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_error_py3.py new file mode 100644 index 000000000000..c09bb4d8add5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_error_py3.py @@ -0,0 +1,46 @@ +# 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 .migrate_sql_server_sql_db_sync_task_output_py3 import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputError(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncTaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_migration_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_migration_level.py new file mode 100644 index 000000000000..03d3e832bbe6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_migration_level.py @@ -0,0 +1,76 @@ +# 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 .migrate_sql_server_sql_db_sync_task_output import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server: Source server name + :vartype source_server: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server: Target server name + :vartype target_server: str + :ivar database_count: Count of databases + :vartype database_count: int + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server': {'readonly': True}, + 'database_count': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server': {'key': 'sourceServer', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server': {'key': 'targetServer', 'type': 'str'}, + 'database_count': {'key': 'databaseCount', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, self).__init__(**kwargs) + self.started_on = None + self.ended_on = None + self.source_server_version = None + self.source_server = None + self.target_server_version = None + self.target_server = None + self.database_count = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_migration_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_migration_level_py3.py new file mode 100644 index 000000000000..6863d9cf96e5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_migration_level_py3.py @@ -0,0 +1,76 @@ +# 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 .migrate_sql_server_sql_db_sync_task_output_py3 import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server: Source server name + :vartype source_server: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server: Target server name + :vartype target_server: str + :ivar database_count: Count of databases + :vartype database_count: int + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server': {'readonly': True}, + 'database_count': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server': {'key': 'sourceServer', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server': {'key': 'targetServer', 'type': 'str'}, + 'database_count': {'key': 'databaseCount', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, self).__init__(**kwargs) + self.started_on = None + self.ended_on = None + self.source_server_version = None + self.source_server = None + self.target_server_version = None + self.target_server = None + self.database_count = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_py3.py new file mode 100644 index 000000000000..b7be743b752b --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSqlServerSqlDbSyncTaskOutput(Model): + """Output for the task that migrates on-prem SQL Server databases to Azure SQL + Database for online migrations. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, + MigrateSqlServerSqlDbSyncTaskOutputError, + MigrateSqlServerSqlDbSyncTaskOutputTableLevel, + MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, + MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'DatabaseLevelErrorOutput': 'MigrateSqlServerSqlDbSyncTaskOutputDatabaseError', 'ErrorOutput': 'MigrateSqlServerSqlDbSyncTaskOutputError', 'TableLevelOutput': 'MigrateSqlServerSqlDbSyncTaskOutputTableLevel', 'DatabaseLevelOutput': 'MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel', 'MigrationLevelOutput': 'MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel'} + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncTaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_table_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_table_level.py new file mode 100644 index 000000000000..6ec5c09b9e1e --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_table_level.py @@ -0,0 +1,109 @@ +# 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 .migrate_sql_server_sql_db_sync_task_output import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputTableLevel(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputTableLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar table_name: Name of the table + :vartype table_name: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar cdc_insert_counter: Number of applied inserts + :vartype cdc_insert_counter: long + :ivar cdc_update_counter: Number of applied updates + :vartype cdc_update_counter: long + :ivar cdc_delete_counter: Number of applied deletes + :vartype cdc_delete_counter: long + :ivar full_load_est_finish_time: Estimate to finish full load + :vartype full_load_est_finish_time: datetime + :ivar full_load_started_on: Full load start time + :vartype full_load_started_on: datetime + :ivar full_load_ended_on: Full load end time + :vartype full_load_ended_on: datetime + :ivar full_load_total_rows: Number of rows applied in full load + :vartype full_load_total_rows: long + :ivar state: Current state of the table migration. Possible values + include: 'BEFORE_LOAD', 'FULL_LOAD', 'COMPLETED', 'CANCELED', 'ERROR', + 'FAILED' + :vartype state: str or + ~azure.mgmt.datamigration.models.SyncTableMigrationState + :ivar total_changes_applied: Total number of applied changes + :vartype total_changes_applied: long + :ivar data_errors_counter: Number of data errors occurred + :vartype data_errors_counter: long + :ivar last_modified_time: Last modified time on target + :vartype last_modified_time: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'table_name': {'readonly': True}, + 'database_name': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'full_load_est_finish_time': {'readonly': True}, + 'full_load_started_on': {'readonly': True}, + 'full_load_ended_on': {'readonly': True}, + 'full_load_total_rows': {'readonly': True}, + 'state': {'readonly': True}, + 'total_changes_applied': {'readonly': True}, + 'data_errors_counter': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'table_name': {'key': 'tableName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'full_load_est_finish_time': {'key': 'fullLoadEstFinishTime', 'type': 'iso-8601'}, + 'full_load_started_on': {'key': 'fullLoadStartedOn', 'type': 'iso-8601'}, + 'full_load_ended_on': {'key': 'fullLoadEndedOn', 'type': 'iso-8601'}, + 'full_load_total_rows': {'key': 'fullLoadTotalRows', 'type': 'long'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_changes_applied': {'key': 'totalChangesApplied', 'type': 'long'}, + 'data_errors_counter': {'key': 'dataErrorsCounter', 'type': 'long'}, + 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncTaskOutputTableLevel, self).__init__(**kwargs) + self.table_name = None + self.database_name = None + self.cdc_insert_counter = None + self.cdc_update_counter = None + self.cdc_delete_counter = None + self.full_load_est_finish_time = None + self.full_load_started_on = None + self.full_load_ended_on = None + self.full_load_total_rows = None + self.state = None + self.total_changes_applied = None + self.data_errors_counter = None + self.last_modified_time = None + self.result_type = 'TableLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_table_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_table_level_py3.py new file mode 100644 index 000000000000..a0fa99b45690 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_output_table_level_py3.py @@ -0,0 +1,109 @@ +# 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 .migrate_sql_server_sql_db_sync_task_output_py3 import MigrateSqlServerSqlDbSyncTaskOutput + + +class MigrateSqlServerSqlDbSyncTaskOutputTableLevel(MigrateSqlServerSqlDbSyncTaskOutput): + """MigrateSqlServerSqlDbSyncTaskOutputTableLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar table_name: Name of the table + :vartype table_name: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar cdc_insert_counter: Number of applied inserts + :vartype cdc_insert_counter: long + :ivar cdc_update_counter: Number of applied updates + :vartype cdc_update_counter: long + :ivar cdc_delete_counter: Number of applied deletes + :vartype cdc_delete_counter: long + :ivar full_load_est_finish_time: Estimate to finish full load + :vartype full_load_est_finish_time: datetime + :ivar full_load_started_on: Full load start time + :vartype full_load_started_on: datetime + :ivar full_load_ended_on: Full load end time + :vartype full_load_ended_on: datetime + :ivar full_load_total_rows: Number of rows applied in full load + :vartype full_load_total_rows: long + :ivar state: Current state of the table migration. Possible values + include: 'BEFORE_LOAD', 'FULL_LOAD', 'COMPLETED', 'CANCELED', 'ERROR', + 'FAILED' + :vartype state: str or + ~azure.mgmt.datamigration.models.SyncTableMigrationState + :ivar total_changes_applied: Total number of applied changes + :vartype total_changes_applied: long + :ivar data_errors_counter: Number of data errors occurred + :vartype data_errors_counter: long + :ivar last_modified_time: Last modified time on target + :vartype last_modified_time: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'table_name': {'readonly': True}, + 'database_name': {'readonly': True}, + 'cdc_insert_counter': {'readonly': True}, + 'cdc_update_counter': {'readonly': True}, + 'cdc_delete_counter': {'readonly': True}, + 'full_load_est_finish_time': {'readonly': True}, + 'full_load_started_on': {'readonly': True}, + 'full_load_ended_on': {'readonly': True}, + 'full_load_total_rows': {'readonly': True}, + 'state': {'readonly': True}, + 'total_changes_applied': {'readonly': True}, + 'data_errors_counter': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'table_name': {'key': 'tableName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'cdc_insert_counter': {'key': 'cdcInsertCounter', 'type': 'long'}, + 'cdc_update_counter': {'key': 'cdcUpdateCounter', 'type': 'long'}, + 'cdc_delete_counter': {'key': 'cdcDeleteCounter', 'type': 'long'}, + 'full_load_est_finish_time': {'key': 'fullLoadEstFinishTime', 'type': 'iso-8601'}, + 'full_load_started_on': {'key': 'fullLoadStartedOn', 'type': 'iso-8601'}, + 'full_load_ended_on': {'key': 'fullLoadEndedOn', 'type': 'iso-8601'}, + 'full_load_total_rows': {'key': 'fullLoadTotalRows', 'type': 'long'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_changes_applied': {'key': 'totalChangesApplied', 'type': 'long'}, + 'data_errors_counter': {'key': 'dataErrorsCounter', 'type': 'long'}, + 'last_modified_time': {'key': 'lastModifiedTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncTaskOutputTableLevel, self).__init__(**kwargs) + self.table_name = None + self.database_name = None + self.cdc_insert_counter = None + self.cdc_update_counter = None + self.cdc_delete_counter = None + self.full_load_est_finish_time = None + self.full_load_started_on = None + self.full_load_ended_on = None + self.full_load_total_rows = None + self.state = None + self.total_changes_applied = None + self.data_errors_counter = None + self.last_modified_time = None + self.result_type = 'TableLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_properties.py new file mode 100644 index 000000000000..41a06fa408e4 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class MigrateSqlServerSqlDbSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates on-prem SQL Server databases to Azure + SQL Database for online migrations. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigrateSqlServerSqlDbSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlDbSyncTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateSqlServerSqlDbSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateSqlServerSqlDbSyncTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlDbSyncTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'Migrate.SqlServer.AzureSqlDb.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_properties_py3.py new file mode 100644 index 000000000000..94b893a58398 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_sync_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class MigrateSqlServerSqlDbSyncTaskProperties(ProjectTaskProperties): + """Properties for the task that migrates on-prem SQL Server databases to Azure + SQL Database for online migrations. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigrateSqlServerSqlDbSyncTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlDbSyncTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateSqlServerSqlDbSyncTaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateSqlServerSqlDbSyncTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MigrateSqlServerSqlDbSyncTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'Migrate.SqlServer.AzureSqlDb.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_database_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_database_level.py index 32badbf078b1..a889f9e00f7b 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_database_level.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_database_level.py @@ -13,7 +13,7 @@ class MigrateSqlServerSqlDbTaskOutputDatabaseLevel(MigrateSqlServerSqlDbTaskOutput): - """Database level result for Sql Server to Azure Sql DB migration. + """MigrateSqlServerSqlDbTaskOutputDatabaseLevel. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_database_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_database_level_py3.py index 1e919575fc96..a5520072991f 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_database_level_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_database_level_py3.py @@ -13,7 +13,7 @@ class MigrateSqlServerSqlDbTaskOutputDatabaseLevel(MigrateSqlServerSqlDbTaskOutput): - """Database level result for Sql Server to Azure Sql DB migration. + """MigrateSqlServerSqlDbTaskOutputDatabaseLevel. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_error.py index e576cdc7e233..01af38599841 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_error.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_error.py @@ -13,7 +13,7 @@ class MigrateSqlServerSqlDbTaskOutputError(MigrateSqlServerSqlDbTaskOutput): - """Task errors for Sql Server to Azure Sql DB migration. + """MigrateSqlServerSqlDbTaskOutputError. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_error_py3.py index addea931935d..156a8d1a7b72 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_error_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_error_py3.py @@ -13,7 +13,7 @@ class MigrateSqlServerSqlDbTaskOutputError(MigrateSqlServerSqlDbTaskOutput): - """Task errors for Sql Server to Azure Sql DB migration. + """MigrateSqlServerSqlDbTaskOutputError. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_migration_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_migration_level.py index 34f22e16d191..28189c56cf93 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_migration_level.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_migration_level.py @@ -13,7 +13,7 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOutput): - """Migration level result for Sql server to Azure Sql DB migration. + """MigrateSqlServerSqlDbTaskOutputMigrationLevel. Variables are only populated by the server, and will be ignored when sending a request. @@ -45,9 +45,12 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOut :ivar database_summary: Summary of database results in the migration :vartype database_summary: dict[str, ~azure.mgmt.datamigration.models.DatabaseSummaryResult] - :ivar migration_report: Migration Report Result, provides unique url for - downloading your migration report. - :vartype migration_report: + :param migration_validation_result: Migration Validation Results + :type migration_validation_result: + ~azure.mgmt.datamigration.models.MigrationValidationResult + :param migration_report_result: Migration Report Result, provides unique + url for downloading your migration report. + :type migration_report_result: ~azure.mgmt.datamigration.models.MigrationReportResult :ivar source_server_version: Source server version :vartype source_server_version: str @@ -73,7 +76,6 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOut 'message': {'readonly': True}, 'databases': {'readonly': True}, 'database_summary': {'readonly': True}, - 'migration_report': {'readonly': True}, 'source_server_version': {'readonly': True}, 'source_server_brand_version': {'readonly': True}, 'target_server_version': {'readonly': True}, @@ -92,7 +94,8 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOut 'message': {'key': 'message', 'type': 'str'}, 'databases': {'key': 'databases', 'type': '{str}'}, 'database_summary': {'key': 'databaseSummary', 'type': '{DatabaseSummaryResult}'}, - 'migration_report': {'key': 'migrationReport', 'type': 'MigrationReportResult'}, + 'migration_validation_result': {'key': 'migrationValidationResult', 'type': 'MigrationValidationResult'}, + 'migration_report_result': {'key': 'migrationReportResult', 'type': 'MigrationReportResult'}, 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, @@ -110,7 +113,8 @@ def __init__(self, **kwargs): self.message = None self.databases = None self.database_summary = None - self.migration_report = None + self.migration_validation_result = kwargs.get('migration_validation_result', None) + self.migration_report_result = kwargs.get('migration_report_result', None) self.source_server_version = None self.source_server_brand_version = None self.target_server_version = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_migration_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_migration_level_py3.py index 71976086a201..3e6a2b7e30b3 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_migration_level_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_migration_level_py3.py @@ -13,7 +13,7 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOutput): - """Migration level result for Sql server to Azure Sql DB migration. + """MigrateSqlServerSqlDbTaskOutputMigrationLevel. Variables are only populated by the server, and will be ignored when sending a request. @@ -45,9 +45,12 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOut :ivar database_summary: Summary of database results in the migration :vartype database_summary: dict[str, ~azure.mgmt.datamigration.models.DatabaseSummaryResult] - :ivar migration_report: Migration Report Result, provides unique url for - downloading your migration report. - :vartype migration_report: + :param migration_validation_result: Migration Validation Results + :type migration_validation_result: + ~azure.mgmt.datamigration.models.MigrationValidationResult + :param migration_report_result: Migration Report Result, provides unique + url for downloading your migration report. + :type migration_report_result: ~azure.mgmt.datamigration.models.MigrationReportResult :ivar source_server_version: Source server version :vartype source_server_version: str @@ -73,7 +76,6 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOut 'message': {'readonly': True}, 'databases': {'readonly': True}, 'database_summary': {'readonly': True}, - 'migration_report': {'readonly': True}, 'source_server_version': {'readonly': True}, 'source_server_brand_version': {'readonly': True}, 'target_server_version': {'readonly': True}, @@ -92,7 +94,8 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOut 'message': {'key': 'message', 'type': 'str'}, 'databases': {'key': 'databases', 'type': '{str}'}, 'database_summary': {'key': 'databaseSummary', 'type': '{DatabaseSummaryResult}'}, - 'migration_report': {'key': 'migrationReport', 'type': 'MigrationReportResult'}, + 'migration_validation_result': {'key': 'migrationValidationResult', 'type': 'MigrationValidationResult'}, + 'migration_report_result': {'key': 'migrationReportResult', 'type': 'MigrationReportResult'}, 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, @@ -100,7 +103,7 @@ class MigrateSqlServerSqlDbTaskOutputMigrationLevel(MigrateSqlServerSqlDbTaskOut 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, migration_validation_result=None, migration_report_result=None, **kwargs) -> None: super(MigrateSqlServerSqlDbTaskOutputMigrationLevel, self).__init__(**kwargs) self.started_on = None self.ended_on = None @@ -110,7 +113,8 @@ def __init__(self, **kwargs) -> None: self.message = None self.databases = None self.database_summary = None - self.migration_report = None + self.migration_validation_result = migration_validation_result + self.migration_report_result = migration_report_result self.source_server_version = None self.source_server_brand_version = None self.target_server_version = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_table_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_table_level.py index 9a149e79792b..7b56087a2627 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_table_level.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_table_level.py @@ -13,7 +13,7 @@ class MigrateSqlServerSqlDbTaskOutputTableLevel(MigrateSqlServerSqlDbTaskOutput): - """Table level result for Sql Server to Azure Sql DB migration. + """MigrateSqlServerSqlDbTaskOutputTableLevel. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_table_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_table_level_py3.py index 8c621fe4aa7e..0543c50a81aa 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_table_level_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_output_table_level_py3.py @@ -13,7 +13,7 @@ class MigrateSqlServerSqlDbTaskOutputTableLevel(MigrateSqlServerSqlDbTaskOutput): - """Table level result for Sql Server to Azure Sql DB migration. + """MigrateSqlServerSqlDbTaskOutputTableLevel. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_properties.py index f3099f7805f2..1ae011ba6c16 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_properties.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_properties.py @@ -21,12 +21,15 @@ class MigrateSqlServerSqlDbTaskProperties(ProjectTaskProperties): All required parameters must be populated in order to send to Azure. - :param errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str :param input: Task input @@ -38,7 +41,9 @@ class MigrateSqlServerSqlDbTaskProperties(ProjectTaskProperties): """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, 'output': {'readonly': True}, } @@ -46,6 +51,7 @@ class MigrateSqlServerSqlDbTaskProperties(ProjectTaskProperties): _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, 'input': {'key': 'input', 'type': 'MigrateSqlServerSqlDbTaskInput'}, 'output': {'key': 'output', 'type': '[MigrateSqlServerSqlDbTaskOutput]'}, diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_properties_py3.py index af6120676665..73aea95b3600 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_properties_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_db_task_properties_py3.py @@ -21,12 +21,15 @@ class MigrateSqlServerSqlDbTaskProperties(ProjectTaskProperties): All required parameters must be populated in order to send to Azure. - :param errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str :param input: Task input @@ -38,7 +41,9 @@ class MigrateSqlServerSqlDbTaskProperties(ProjectTaskProperties): """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, 'output': {'readonly': True}, } @@ -46,13 +51,14 @@ class MigrateSqlServerSqlDbTaskProperties(ProjectTaskProperties): _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, 'input': {'key': 'input', 'type': 'MigrateSqlServerSqlDbTaskInput'}, 'output': {'key': 'output', 'type': '[MigrateSqlServerSqlDbTaskOutput]'}, } - def __init__(self, *, errors=None, input=None, **kwargs) -> None: - super(MigrateSqlServerSqlDbTaskProperties, self).__init__(errors=errors, **kwargs) + def __init__(self, *, input=None, **kwargs) -> None: + super(MigrateSqlServerSqlDbTaskProperties, self).__init__(**kwargs) self.input = input self.output = None self.task_type = 'Migrate.SqlServer.SqlDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_database_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_database_input.py new file mode 100644 index 000000000000..cab20900dc54 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_database_input.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSqlServerSqlMIDatabaseInput(Model): + """Database specific information for SQL to Azure SQL DB Managed Instance + migration task inputs. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Name of the database + :type name: str + :param restore_database_name: Required. Name of the database at + destination + :type restore_database_name: str + :param backup_file_share: Backup file share information for backing up + this database. + :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param backup_file_paths: The list of backup files to be used in case of + existing backups. + :type backup_file_paths: list[str] + """ + + _validation = { + 'name': {'required': True}, + 'restore_database_name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'restore_database_name': {'key': 'restoreDatabaseName', 'type': 'str'}, + 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'backup_file_paths': {'key': 'backupFilePaths', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMIDatabaseInput, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.restore_database_name = kwargs.get('restore_database_name', None) + self.backup_file_share = kwargs.get('backup_file_share', None) + self.backup_file_paths = kwargs.get('backup_file_paths', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_database_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_database_input_py3.py new file mode 100644 index 000000000000..5c609a018b24 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_database_input_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSqlServerSqlMIDatabaseInput(Model): + """Database specific information for SQL to Azure SQL DB Managed Instance + migration task inputs. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Name of the database + :type name: str + :param restore_database_name: Required. Name of the database at + destination + :type restore_database_name: str + :param backup_file_share: Backup file share information for backing up + this database. + :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param backup_file_paths: The list of backup files to be used in case of + existing backups. + :type backup_file_paths: list[str] + """ + + _validation = { + 'name': {'required': True}, + 'restore_database_name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'restore_database_name': {'key': 'restoreDatabaseName', 'type': 'str'}, + 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'backup_file_paths': {'key': 'backupFilePaths', 'type': '[str]'}, + } + + def __init__(self, *, name: str, restore_database_name: str, backup_file_share=None, backup_file_paths=None, **kwargs) -> None: + super(MigrateSqlServerSqlMIDatabaseInput, self).__init__(**kwargs) + self.name = name + self.restore_database_name = restore_database_name + self.backup_file_share = backup_file_share + self.backup_file_paths = backup_file_paths diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_input.py new file mode 100644 index 000000000000..2fd50fede8e0 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_input.py @@ -0,0 +1,74 @@ +# 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 .sql_migration_task_input import SqlMigrationTaskInput + + +class MigrateSqlServerSqlMITaskInput(SqlMigrationTaskInput): + """Input for task that migrates SQL Server databases to Azure SQL Database + Managed Instance. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlMIDatabaseInput] + :param selected_logins: Logins to migrate. + :type selected_logins: list[str] + :param selected_agent_jobs: Agent Jobs to migrate. + :type selected_agent_jobs: list[str] + :param backup_file_share: Backup file share information for all selected + databases. + :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param backup_blob_share: Required. SAS URI of Azure Storage Account + Container to be used for storing backup files. + :type backup_blob_share: ~azure.mgmt.datamigration.models.BlobShare + :param backup_mode: Backup Mode to specify whether to use existing backup + or create new backup. If using existing backups, backup file paths are + required to be provided in selectedDatabases. Possible values include: + 'CreateBackup', 'ExistingBackup' + :type backup_mode: str or ~azure.mgmt.datamigration.models.BackupMode + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + 'backup_blob_share': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSqlServerSqlMIDatabaseInput]'}, + 'selected_logins': {'key': 'selectedLogins', 'type': '[str]'}, + 'selected_agent_jobs': {'key': 'selectedAgentJobs', 'type': '[str]'}, + 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'backup_blob_share': {'key': 'backupBlobShare', 'type': 'BlobShare'}, + 'backup_mode': {'key': 'backupMode', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMITaskInput, self).__init__(**kwargs) + self.selected_databases = kwargs.get('selected_databases', None) + self.selected_logins = kwargs.get('selected_logins', None) + self.selected_agent_jobs = kwargs.get('selected_agent_jobs', None) + self.backup_file_share = kwargs.get('backup_file_share', None) + self.backup_blob_share = kwargs.get('backup_blob_share', None) + self.backup_mode = kwargs.get('backup_mode', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_input_py3.py new file mode 100644 index 000000000000..4d201d1ddcac --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_input_py3.py @@ -0,0 +1,74 @@ +# 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 .sql_migration_task_input_py3 import SqlMigrationTaskInput + + +class MigrateSqlServerSqlMITaskInput(SqlMigrationTaskInput): + """Input for task that migrates SQL Server databases to Azure SQL Database + Managed Instance. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlMIDatabaseInput] + :param selected_logins: Logins to migrate. + :type selected_logins: list[str] + :param selected_agent_jobs: Agent Jobs to migrate. + :type selected_agent_jobs: list[str] + :param backup_file_share: Backup file share information for all selected + databases. + :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param backup_blob_share: Required. SAS URI of Azure Storage Account + Container to be used for storing backup files. + :type backup_blob_share: ~azure.mgmt.datamigration.models.BlobShare + :param backup_mode: Backup Mode to specify whether to use existing backup + or create new backup. If using existing backups, backup file paths are + required to be provided in selectedDatabases. Possible values include: + 'CreateBackup', 'ExistingBackup' + :type backup_mode: str or ~azure.mgmt.datamigration.models.BackupMode + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + 'backup_blob_share': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSqlServerSqlMIDatabaseInput]'}, + 'selected_logins': {'key': 'selectedLogins', 'type': '[str]'}, + 'selected_agent_jobs': {'key': 'selectedAgentJobs', 'type': '[str]'}, + 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'backup_blob_share': {'key': 'backupBlobShare', 'type': 'BlobShare'}, + 'backup_mode': {'key': 'backupMode', 'type': 'str'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, selected_databases, backup_blob_share, selected_logins=None, selected_agent_jobs=None, backup_file_share=None, backup_mode=None, **kwargs) -> None: + super(MigrateSqlServerSqlMITaskInput, self).__init__(source_connection_info=source_connection_info, target_connection_info=target_connection_info, **kwargs) + self.selected_databases = selected_databases + self.selected_logins = selected_logins + self.selected_agent_jobs = selected_agent_jobs + self.backup_file_share = backup_file_share + self.backup_blob_share = backup_blob_share + self.backup_mode = backup_mode diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output.py new file mode 100644 index 000000000000..2c52e1015bb9 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSqlServerSqlMITaskOutput(Model): + """Output for task that migrates SQL Server databases to Azure SQL Database + Managed Instance. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateSqlServerSqlMITaskOutputError, + MigrateSqlServerSqlMITaskOutputLoginLevel, + MigrateSqlServerSqlMITaskOutputAgentJobLevel, + MigrateSqlServerSqlMITaskOutputDatabaseLevel, + MigrateSqlServerSqlMITaskOutputMigrationLevel + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'ErrorOutput': 'MigrateSqlServerSqlMITaskOutputError', 'LoginLevelOutput': 'MigrateSqlServerSqlMITaskOutputLoginLevel', 'AgentJobLevelOutput': 'MigrateSqlServerSqlMITaskOutputAgentJobLevel', 'DatabaseLevelOutput': 'MigrateSqlServerSqlMITaskOutputDatabaseLevel', 'MigrationLevelOutput': 'MigrateSqlServerSqlMITaskOutputMigrationLevel'} + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMITaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_agent_job_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_agent_job_level.py new file mode 100644 index 000000000000..f724aaa61baa --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_agent_job_level.py @@ -0,0 +1,78 @@ +# 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 .migrate_sql_server_sql_mi_task_output import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputAgentJobLevel(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputAgentJobLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar name: Agent Job name. + :vartype name: str + :ivar is_enabled: The state of the original Agent Job. + :vartype is_enabled: bool + :ivar state: Current state of migration. Possible values include: 'None', + 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar message: Migration progress message + :vartype message: str + :ivar exceptions_and_warnings: Migration errors and warnings per job + :vartype exceptions_and_warnings: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'name': {'readonly': True}, + 'is_enabled': {'readonly': True}, + 'state': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'message': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + 'state': {'key': 'state', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'message': {'key': 'message', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMITaskOutputAgentJobLevel, self).__init__(**kwargs) + self.name = None + self.is_enabled = None + self.state = None + self.started_on = None + self.ended_on = None + self.message = None + self.exceptions_and_warnings = None + self.result_type = 'AgentJobLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_agent_job_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_agent_job_level_py3.py new file mode 100644 index 000000000000..2ce2c02210d6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_agent_job_level_py3.py @@ -0,0 +1,78 @@ +# 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 .migrate_sql_server_sql_mi_task_output_py3 import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputAgentJobLevel(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputAgentJobLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar name: Agent Job name. + :vartype name: str + :ivar is_enabled: The state of the original Agent Job. + :vartype is_enabled: bool + :ivar state: Current state of migration. Possible values include: 'None', + 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar message: Migration progress message + :vartype message: str + :ivar exceptions_and_warnings: Migration errors and warnings per job + :vartype exceptions_and_warnings: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'name': {'readonly': True}, + 'is_enabled': {'readonly': True}, + 'state': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'message': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, + 'state': {'key': 'state', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'message': {'key': 'message', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlMITaskOutputAgentJobLevel, self).__init__(**kwargs) + self.name = None + self.is_enabled = None + self.state = None + self.started_on = None + self.ended_on = None + self.message = None + self.exceptions_and_warnings = None + self.result_type = 'AgentJobLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_database_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_database_level.py new file mode 100644 index 000000000000..fb0b68e98fdb --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_database_level.py @@ -0,0 +1,85 @@ +# 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 .migrate_sql_server_sql_mi_task_output import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputDatabaseLevel(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar size_mb: Size of the database in megabytes + :vartype size_mb: float + :ivar state: Current state of migration. Possible values include: 'None', + 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar stage: Current stage of migration. Possible values include: 'None', + 'Initialize', 'Backup', 'FileCopy', 'Restore', 'Completed' + :vartype stage: str or + ~azure.mgmt.datamigration.models.DatabaseMigrationStage + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar message: Migration progress message + :vartype message: str + :ivar exceptions_and_warnings: Migration exceptions and warnings + :vartype exceptions_and_warnings: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'size_mb': {'readonly': True}, + 'state': {'readonly': True}, + 'stage': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'message': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'size_mb': {'key': 'sizeMB', 'type': 'float'}, + 'state': {'key': 'state', 'type': 'str'}, + 'stage': {'key': 'stage', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'message': {'key': 'message', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMITaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.size_mb = None + self.state = None + self.stage = None + self.started_on = None + self.ended_on = None + self.message = None + self.exceptions_and_warnings = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_database_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_database_level_py3.py new file mode 100644 index 000000000000..68477fa457ca --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_database_level_py3.py @@ -0,0 +1,85 @@ +# 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 .migrate_sql_server_sql_mi_task_output_py3 import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputDatabaseLevel(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputDatabaseLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar database_name: Name of the database + :vartype database_name: str + :ivar size_mb: Size of the database in megabytes + :vartype size_mb: float + :ivar state: Current state of migration. Possible values include: 'None', + 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar stage: Current stage of migration. Possible values include: 'None', + 'Initialize', 'Backup', 'FileCopy', 'Restore', 'Completed' + :vartype stage: str or + ~azure.mgmt.datamigration.models.DatabaseMigrationStage + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar message: Migration progress message + :vartype message: str + :ivar exceptions_and_warnings: Migration exceptions and warnings + :vartype exceptions_and_warnings: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'database_name': {'readonly': True}, + 'size_mb': {'readonly': True}, + 'state': {'readonly': True}, + 'stage': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'message': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'size_mb': {'key': 'sizeMB', 'type': 'float'}, + 'state': {'key': 'state', 'type': 'str'}, + 'stage': {'key': 'stage', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'message': {'key': 'message', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlMITaskOutputDatabaseLevel, self).__init__(**kwargs) + self.database_name = None + self.size_mb = None + self.state = None + self.stage = None + self.started_on = None + self.ended_on = None + self.message = None + self.exceptions_and_warnings = None + self.result_type = 'DatabaseLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_error.py new file mode 100644 index 000000000000..a6d243ab35f9 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_error.py @@ -0,0 +1,46 @@ +# 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 .migrate_sql_server_sql_mi_task_output import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputError(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMITaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_error_py3.py new file mode 100644 index 000000000000..3d0a4a9043f8 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_error_py3.py @@ -0,0 +1,46 @@ +# 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 .migrate_sql_server_sql_mi_task_output_py3 import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputError(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputError. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar error: Migration error + :vartype error: ~azure.mgmt.datamigration.models.ReportableException + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'error': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'ReportableException'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlMITaskOutputError, self).__init__(**kwargs) + self.error = None + self.result_type = 'ErrorOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_login_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_login_level.py new file mode 100644 index 000000000000..4a32e8ca6646 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_login_level.py @@ -0,0 +1,83 @@ +# 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 .migrate_sql_server_sql_mi_task_output import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputLoginLevel(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputLoginLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar login_name: Login name. + :vartype login_name: str + :ivar state: Current state of login. Possible values include: 'None', + 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar stage: Current stage of login. Possible values include: 'None', + 'Initialize', 'LoginMigration', 'EstablishUserMapping', + 'AssignRoleMembership', 'AssignRoleOwnership', + 'EstablishServerPermissions', 'EstablishObjectPermissions', 'Completed' + :vartype stage: str or + ~azure.mgmt.datamigration.models.LoginMigrationStage + :ivar started_on: Login migration start time + :vartype started_on: datetime + :ivar ended_on: Login migration end time + :vartype ended_on: datetime + :ivar message: Login migration progress message + :vartype message: str + :ivar exceptions_and_warnings: Login migration errors and warnings per + login + :vartype exceptions_and_warnings: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'login_name': {'readonly': True}, + 'state': {'readonly': True}, + 'stage': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'message': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'login_name': {'key': 'loginName', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'stage': {'key': 'stage', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'message': {'key': 'message', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMITaskOutputLoginLevel, self).__init__(**kwargs) + self.login_name = None + self.state = None + self.stage = None + self.started_on = None + self.ended_on = None + self.message = None + self.exceptions_and_warnings = None + self.result_type = 'LoginLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_login_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_login_level_py3.py new file mode 100644 index 000000000000..ee9980b1b0f6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_login_level_py3.py @@ -0,0 +1,83 @@ +# 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 .migrate_sql_server_sql_mi_task_output_py3 import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputLoginLevel(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputLoginLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar login_name: Login name. + :vartype login_name: str + :ivar state: Current state of login. Possible values include: 'None', + 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar stage: Current stage of login. Possible values include: 'None', + 'Initialize', 'LoginMigration', 'EstablishUserMapping', + 'AssignRoleMembership', 'AssignRoleOwnership', + 'EstablishServerPermissions', 'EstablishObjectPermissions', 'Completed' + :vartype stage: str or + ~azure.mgmt.datamigration.models.LoginMigrationStage + :ivar started_on: Login migration start time + :vartype started_on: datetime + :ivar ended_on: Login migration end time + :vartype ended_on: datetime + :ivar message: Login migration progress message + :vartype message: str + :ivar exceptions_and_warnings: Login migration errors and warnings per + login + :vartype exceptions_and_warnings: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'login_name': {'readonly': True}, + 'state': {'readonly': True}, + 'stage': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'message': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'login_name': {'key': 'loginName', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'stage': {'key': 'stage', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'message': {'key': 'message', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlMITaskOutputLoginLevel, self).__init__(**kwargs) + self.login_name = None + self.state = None + self.stage = None + self.started_on = None + self.ended_on = None + self.message = None + self.exceptions_and_warnings = None + self.result_type = 'LoginLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_migration_level.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_migration_level.py new file mode 100644 index 000000000000..299889910900 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_migration_level.py @@ -0,0 +1,123 @@ +# 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 .migrate_sql_server_sql_mi_task_output import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputMigrationLevel(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar status: Current status of migration. Possible values include: + 'Default', 'Connecting', 'SourceAndTargetSelected', 'SelectLogins', + 'Configured', 'Running', 'Error', 'Stopped', 'Completed', + 'CompletedWithWarnings' + :vartype status: str or ~azure.mgmt.datamigration.models.MigrationStatus + :ivar state: Current state of migration. Possible values include: 'None', + 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar agent_jobs: Selected agent jobs as a map from name to id + :vartype agent_jobs: dict[str, str] + :ivar logins: Selected logins as a map from name to id + :vartype logins: dict[str, str] + :ivar message: Migration progress message + :vartype message: str + :ivar server_role_results: Map of server role migration results. + :vartype server_role_results: dict[str, + ~azure.mgmt.datamigration.models.StartMigrationScenarioServerRoleResult] + :ivar orphaned_users: Map of users to database name of orphaned users. + :vartype orphaned_users: dict[str, str] + :ivar databases: Selected databases as a map from database name to + database id + :vartype databases: dict[str, str] + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server_brand_version: Source server brand version + :vartype source_server_brand_version: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server_brand_version: Target server brand version + :vartype target_server_brand_version: str + :ivar exceptions_and_warnings: Migration exceptions and warnings. + :vartype exceptions_and_warnings: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'status': {'readonly': True}, + 'state': {'readonly': True}, + 'agent_jobs': {'readonly': True}, + 'logins': {'readonly': True}, + 'message': {'readonly': True}, + 'server_role_results': {'readonly': True}, + 'orphaned_users': {'readonly': True}, + 'databases': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server_brand_version': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'status': {'key': 'status', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'agent_jobs': {'key': 'agentJobs', 'type': '{str}'}, + 'logins': {'key': 'logins', 'type': '{str}'}, + 'message': {'key': 'message', 'type': 'str'}, + 'server_role_results': {'key': 'serverRoleResults', 'type': '{StartMigrationScenarioServerRoleResult}'}, + 'orphaned_users': {'key': 'orphanedUsers', 'type': '{str}'}, + 'databases': {'key': 'databases', 'type': '{str}'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMITaskOutputMigrationLevel, self).__init__(**kwargs) + self.started_on = None + self.ended_on = None + self.status = None + self.state = None + self.agent_jobs = None + self.logins = None + self.message = None + self.server_role_results = None + self.orphaned_users = None + self.databases = None + self.source_server_version = None + self.source_server_brand_version = None + self.target_server_version = None + self.target_server_brand_version = None + self.exceptions_and_warnings = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_migration_level_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_migration_level_py3.py new file mode 100644 index 000000000000..b66621161ddb --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_migration_level_py3.py @@ -0,0 +1,123 @@ +# 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 .migrate_sql_server_sql_mi_task_output_py3 import MigrateSqlServerSqlMITaskOutput + + +class MigrateSqlServerSqlMITaskOutputMigrationLevel(MigrateSqlServerSqlMITaskOutput): + """MigrateSqlServerSqlMITaskOutputMigrationLevel. + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar status: Current status of migration. Possible values include: + 'Default', 'Connecting', 'SourceAndTargetSelected', 'SelectLogins', + 'Configured', 'Running', 'Error', 'Stopped', 'Completed', + 'CompletedWithWarnings' + :vartype status: str or ~azure.mgmt.datamigration.models.MigrationStatus + :ivar state: Current state of migration. Possible values include: 'None', + 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' + :vartype state: str or ~azure.mgmt.datamigration.models.MigrationState + :ivar agent_jobs: Selected agent jobs as a map from name to id + :vartype agent_jobs: dict[str, str] + :ivar logins: Selected logins as a map from name to id + :vartype logins: dict[str, str] + :ivar message: Migration progress message + :vartype message: str + :ivar server_role_results: Map of server role migration results. + :vartype server_role_results: dict[str, + ~azure.mgmt.datamigration.models.StartMigrationScenarioServerRoleResult] + :ivar orphaned_users: Map of users to database name of orphaned users. + :vartype orphaned_users: dict[str, str] + :ivar databases: Selected databases as a map from database name to + database id + :vartype databases: dict[str, str] + :ivar source_server_version: Source server version + :vartype source_server_version: str + :ivar source_server_brand_version: Source server brand version + :vartype source_server_brand_version: str + :ivar target_server_version: Target server version + :vartype target_server_version: str + :ivar target_server_brand_version: Target server brand version + :vartype target_server_brand_version: str + :ivar exceptions_and_warnings: Migration exceptions and warnings. + :vartype exceptions_and_warnings: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'status': {'readonly': True}, + 'state': {'readonly': True}, + 'agent_jobs': {'readonly': True}, + 'logins': {'readonly': True}, + 'message': {'readonly': True}, + 'server_role_results': {'readonly': True}, + 'orphaned_users': {'readonly': True}, + 'databases': {'readonly': True}, + 'source_server_version': {'readonly': True}, + 'source_server_brand_version': {'readonly': True}, + 'target_server_version': {'readonly': True}, + 'target_server_brand_version': {'readonly': True}, + 'exceptions_and_warnings': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'status': {'key': 'status', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'agent_jobs': {'key': 'agentJobs', 'type': '{str}'}, + 'logins': {'key': 'logins', 'type': '{str}'}, + 'message': {'key': 'message', 'type': 'str'}, + 'server_role_results': {'key': 'serverRoleResults', 'type': '{StartMigrationScenarioServerRoleResult}'}, + 'orphaned_users': {'key': 'orphanedUsers', 'type': '{str}'}, + 'databases': {'key': 'databases', 'type': '{str}'}, + 'source_server_version': {'key': 'sourceServerVersion', 'type': 'str'}, + 'source_server_brand_version': {'key': 'sourceServerBrandVersion', 'type': 'str'}, + 'target_server_version': {'key': 'targetServerVersion', 'type': 'str'}, + 'target_server_brand_version': {'key': 'targetServerBrandVersion', 'type': 'str'}, + 'exceptions_and_warnings': {'key': 'exceptionsAndWarnings', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlMITaskOutputMigrationLevel, self).__init__(**kwargs) + self.started_on = None + self.ended_on = None + self.status = None + self.state = None + self.agent_jobs = None + self.logins = None + self.message = None + self.server_role_results = None + self.orphaned_users = None + self.databases = None + self.source_server_version = None + self.source_server_brand_version = None + self.target_server_version = None + self.target_server_brand_version = None + self.exceptions_and_warnings = None + self.result_type = 'MigrationLevelOutput' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_py3.py new file mode 100644 index 000000000000..d56b33cdb678 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_output_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSqlServerSqlMITaskOutput(Model): + """Output for task that migrates SQL Server databases to Azure SQL Database + Managed Instance. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: MigrateSqlServerSqlMITaskOutputError, + MigrateSqlServerSqlMITaskOutputLoginLevel, + MigrateSqlServerSqlMITaskOutputAgentJobLevel, + MigrateSqlServerSqlMITaskOutputDatabaseLevel, + MigrateSqlServerSqlMITaskOutputMigrationLevel + + 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: Result identifier + :vartype id: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'ErrorOutput': 'MigrateSqlServerSqlMITaskOutputError', 'LoginLevelOutput': 'MigrateSqlServerSqlMITaskOutputLoginLevel', 'AgentJobLevelOutput': 'MigrateSqlServerSqlMITaskOutputAgentJobLevel', 'DatabaseLevelOutput': 'MigrateSqlServerSqlMITaskOutputDatabaseLevel', 'MigrationLevelOutput': 'MigrateSqlServerSqlMITaskOutputMigrationLevel'} + } + + def __init__(self, **kwargs) -> None: + super(MigrateSqlServerSqlMITaskOutput, self).__init__(**kwargs) + self.id = None + self.result_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_properties.py new file mode 100644 index 000000000000..fe9ad5121056 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class MigrateSqlServerSqlMITaskProperties(ProjectTaskProperties): + """Properties for task that migrates SQL Server databases to Azure SQL + Database Managed Instance. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigrateSqlServerSqlMITaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlMITaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateSqlServerSqlMITaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateSqlServerSqlMITaskOutput]'}, + } + + def __init__(self, **kwargs): + super(MigrateSqlServerSqlMITaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'Migrate.SqlServer.AzureSqlDbMI' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_properties_py3.py new file mode 100644 index 000000000000..11f5ab7be843 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_mi_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class MigrateSqlServerSqlMITaskProperties(ProjectTaskProperties): + """Properties for task that migrates SQL Server databases to Azure SQL + Database Managed Instance. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.MigrateSqlServerSqlMITaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlMITaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateSqlServerSqlMITaskInput'}, + 'output': {'key': 'output', 'type': '[MigrateSqlServerSqlMITaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MigrateSqlServerSqlMITaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'Migrate.SqlServer.AzureSqlDbMI' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_server_database_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_server_database_input.py index 26401dac57f6..fd2a6ced8cd1 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_server_database_input.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_server_database_input.py @@ -19,8 +19,8 @@ class MigrateSqlServerSqlServerDatabaseInput(Model): :type name: str :param restore_database_name: Name of the database at destination :type restore_database_name: str - :param backup_file_share: Backup file share information for this database. - :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param backup_and_restore_folder: The backup and restore folder + :type backup_and_restore_folder: str :param database_files: The list of database files :type database_files: list[~azure.mgmt.datamigration.models.DatabaseFileInput] @@ -29,7 +29,7 @@ class MigrateSqlServerSqlServerDatabaseInput(Model): _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'restore_database_name': {'key': 'restoreDatabaseName', 'type': 'str'}, - 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'backup_and_restore_folder': {'key': 'backupAndRestoreFolder', 'type': 'str'}, 'database_files': {'key': 'databaseFiles', 'type': '[DatabaseFileInput]'}, } @@ -37,5 +37,5 @@ def __init__(self, **kwargs): super(MigrateSqlServerSqlServerDatabaseInput, self).__init__(**kwargs) self.name = kwargs.get('name', None) self.restore_database_name = kwargs.get('restore_database_name', None) - self.backup_file_share = kwargs.get('backup_file_share', None) + self.backup_and_restore_folder = kwargs.get('backup_and_restore_folder', None) self.database_files = kwargs.get('database_files', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_server_database_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_server_database_input_py3.py index 5dd981f5169d..a4306e254350 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_server_database_input_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sql_server_sql_server_database_input_py3.py @@ -19,8 +19,8 @@ class MigrateSqlServerSqlServerDatabaseInput(Model): :type name: str :param restore_database_name: Name of the database at destination :type restore_database_name: str - :param backup_file_share: Backup file share information for this database. - :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param backup_and_restore_folder: The backup and restore folder + :type backup_and_restore_folder: str :param database_files: The list of database files :type database_files: list[~azure.mgmt.datamigration.models.DatabaseFileInput] @@ -29,13 +29,13 @@ class MigrateSqlServerSqlServerDatabaseInput(Model): _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'restore_database_name': {'key': 'restoreDatabaseName', 'type': 'str'}, - 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'backup_and_restore_folder': {'key': 'backupAndRestoreFolder', 'type': 'str'}, 'database_files': {'key': 'databaseFiles', 'type': '[DatabaseFileInput]'}, } - def __init__(self, *, name: str=None, restore_database_name: str=None, backup_file_share=None, database_files=None, **kwargs) -> None: + def __init__(self, *, name: str=None, restore_database_name: str=None, backup_and_restore_folder: str=None, database_files=None, **kwargs) -> None: super(MigrateSqlServerSqlServerDatabaseInput, self).__init__(**kwargs) self.name = name self.restore_database_name = restore_database_name - self.backup_file_share = backup_file_share + self.backup_and_restore_folder = backup_and_restore_folder self.database_files = database_files diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_input.py new file mode 100644 index 000000000000..33544df833c0 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_input.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSyncCompleteCommandInput(Model): + """Input for command that completes sync migration for a database. + + All required parameters must be populated in order to send to Azure. + + :param database_name: Required. Name of database + :type database_name: str + :param commit_time_stamp: Time stamp to complete + :type commit_time_stamp: datetime + """ + + _validation = { + 'database_name': {'required': True}, + } + + _attribute_map = { + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'commit_time_stamp': {'key': 'commitTimeStamp', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(MigrateSyncCompleteCommandInput, self).__init__(**kwargs) + self.database_name = kwargs.get('database_name', None) + self.commit_time_stamp = kwargs.get('commit_time_stamp', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_input_py3.py new file mode 100644 index 000000000000..47c29374b37d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_input_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSyncCompleteCommandInput(Model): + """Input for command that completes sync migration for a database. + + All required parameters must be populated in order to send to Azure. + + :param database_name: Required. Name of database + :type database_name: str + :param commit_time_stamp: Time stamp to complete + :type commit_time_stamp: datetime + """ + + _validation = { + 'database_name': {'required': True}, + } + + _attribute_map = { + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'commit_time_stamp': {'key': 'commitTimeStamp', 'type': 'iso-8601'}, + } + + def __init__(self, *, database_name: str, commit_time_stamp=None, **kwargs) -> None: + super(MigrateSyncCompleteCommandInput, self).__init__(**kwargs) + self.database_name = database_name + self.commit_time_stamp = commit_time_stamp diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_output.py new file mode 100644 index 000000000000..a888777bfb87 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_output.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSyncCompleteCommandOutput(Model): + """Output for command that completes sync migration for a database. + + :param errors: List of errors that happened during the command execution + :type errors: list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(MigrateSyncCompleteCommandOutput, self).__init__(**kwargs) + self.errors = kwargs.get('errors', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_output_py3.py new file mode 100644 index 000000000000..63dc03e1139d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_output_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MigrateSyncCompleteCommandOutput(Model): + """Output for command that completes sync migration for a database. + + :param errors: List of errors that happened during the command execution + :type errors: list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ReportableException]'}, + } + + def __init__(self, *, errors=None, **kwargs) -> None: + super(MigrateSyncCompleteCommandOutput, self).__init__(**kwargs) + self.errors = errors diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_properties.py new file mode 100644 index 000000000000..8f1ca8778a39 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_properties.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .command_properties import CommandProperties + + +class MigrateSyncCompleteCommandProperties(CommandProperties): + """Properties for the command that completes sync migration for a database. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + :param input: Command input + :type input: + ~azure.mgmt.datamigration.models.MigrateSyncCompleteCommandInput + :ivar output: Command output. This is ignored if submitted. + :vartype output: + ~azure.mgmt.datamigration.models.MigrateSyncCompleteCommandOutput + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateSyncCompleteCommandInput'}, + 'output': {'key': 'output', 'type': 'MigrateSyncCompleteCommandOutput'}, + } + + def __init__(self, **kwargs): + super(MigrateSyncCompleteCommandProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.command_type = 'Migrate.Sync.Complete.Database' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_properties_py3.py new file mode 100644 index 000000000000..5596e1f53f14 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migrate_sync_complete_command_properties_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .command_properties_py3 import CommandProperties + + +class MigrateSyncCompleteCommandProperties(CommandProperties): + """Properties for the command that completes sync migration for a database. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + :param input: Command input + :type input: + ~azure.mgmt.datamigration.models.MigrateSyncCompleteCommandInput + :ivar output: Command output. This is ignored if submitted. + :vartype output: + ~azure.mgmt.datamigration.models.MigrateSyncCompleteCommandOutput + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MigrateSyncCompleteCommandInput'}, + 'output': {'key': 'output', 'type': 'MigrateSyncCompleteCommandOutput'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MigrateSyncCompleteCommandProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.command_type = 'Migrate.Sync.Complete.Database' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_report_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_report_result.py index 79e3f9d60bfa..7b059511f6b5 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_report_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_report_result.py @@ -16,20 +16,12 @@ class MigrationReportResult(Model): """Migration validation report result, contains the url for downloading the generated report. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Migration validation result identifier - :vartype id: str - :ivar report_url: The url of the report. - :vartype report_url: str + :param id: Migration validation result identifier + :type id: str + :param report_url: The url of the report. + :type report_url: str """ - _validation = { - 'id': {'readonly': True}, - 'report_url': {'readonly': True}, - } - _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'report_url': {'key': 'reportUrl', 'type': 'str'}, @@ -37,5 +29,5 @@ class MigrationReportResult(Model): def __init__(self, **kwargs): super(MigrationReportResult, self).__init__(**kwargs) - self.id = None - self.report_url = None + self.id = kwargs.get('id', None) + self.report_url = kwargs.get('report_url', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_report_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_report_result_py3.py index f97c133366f8..27eaefba14b7 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_report_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_report_result_py3.py @@ -16,26 +16,18 @@ class MigrationReportResult(Model): """Migration validation report result, contains the url for downloading the generated report. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar id: Migration validation result identifier - :vartype id: str - :ivar report_url: The url of the report. - :vartype report_url: str + :param id: Migration validation result identifier + :type id: str + :param report_url: The url of the report. + :type report_url: str """ - _validation = { - 'id': {'readonly': True}, - 'report_url': {'readonly': True}, - } - _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'report_url': {'key': 'reportUrl', 'type': 'str'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, id: str=None, report_url: str=None, **kwargs) -> None: super(MigrationReportResult, self).__init__(**kwargs) - self.id = None - self.report_url = None + self.id = id + self.report_url = report_url diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_level_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_level_result.py index 30a9772f5e19..4c07312a2375 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_level_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_level_result.py @@ -44,7 +44,7 @@ class MigrationValidationDatabaseLevelResult(Model): ~azure.mgmt.datamigration.models.QueryAnalysisValidationResult :ivar status: Current status of validation at the database level. Possible values include: 'Default', 'NotStarted', 'Initialized', 'InProgress', - 'Completed', 'CompletedWithIssues', 'Failed', 'Stopped' + 'Completed', 'CompletedWithIssues', 'Stopped', 'Failed' :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_level_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_level_result_py3.py index 21a67f608484..b16d85971767 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_level_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_level_result_py3.py @@ -44,7 +44,7 @@ class MigrationValidationDatabaseLevelResult(Model): ~azure.mgmt.datamigration.models.QueryAnalysisValidationResult :ivar status: Current status of validation at the database level. Possible values include: 'Default', 'NotStarted', 'Initialized', 'InProgress', - 'Completed', 'CompletedWithIssues', 'Failed', 'Stopped' + 'Completed', 'CompletedWithIssues', 'Stopped', 'Failed' :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_summary_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_summary_result.py index 1cab17dd2dfb..f86917ac546e 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_summary_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_summary_result.py @@ -32,7 +32,7 @@ class MigrationValidationDatabaseSummaryResult(Model): :vartype ended_on: datetime :ivar status: Current status of validation at the database level. Possible values include: 'Default', 'NotStarted', 'Initialized', 'InProgress', - 'Completed', 'CompletedWithIssues', 'Failed', 'Stopped' + 'Completed', 'CompletedWithIssues', 'Stopped', 'Failed' :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_summary_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_summary_result_py3.py index 1b8c064cc391..8b537036ba04 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_summary_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_database_summary_result_py3.py @@ -32,7 +32,7 @@ class MigrationValidationDatabaseSummaryResult(Model): :vartype ended_on: datetime :ivar status: Current status of validation at the database level. Possible values include: 'Default', 'NotStarted', 'Initialized', 'InProgress', - 'Completed', 'CompletedWithIssues', 'Failed', 'Stopped' + 'Completed', 'CompletedWithIssues', 'Stopped', 'Failed' :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_result.py index 4bbe235c3602..534150a0db08 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_result.py @@ -28,7 +28,7 @@ class MigrationValidationResult(Model): :ivar status: Current status of validation at the migration level. Status from the database validation result status will be aggregated here. Possible values include: 'Default', 'NotStarted', 'Initialized', - 'InProgress', 'Completed', 'CompletedWithIssues', 'Failed', 'Stopped' + 'InProgress', 'Completed', 'CompletedWithIssues', 'Stopped', 'Failed' :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_result_py3.py index db2ae3525035..a13e92b257b4 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/migration_validation_result_py3.py @@ -28,7 +28,7 @@ class MigrationValidationResult(Model): :ivar status: Current status of validation at the migration level. Status from the database validation result status will be aggregated here. Possible values include: 'Default', 'NotStarted', 'Initialized', - 'InProgress', 'Completed', 'CompletedWithIssues', 'Failed', 'Stopped' + 'InProgress', 'Completed', 'CompletedWithIssues', 'Stopped', 'Failed' :vartype status: str or ~azure.mgmt.datamigration.models.ValidationStatus """ diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cancel_command.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cancel_command.py new file mode 100644 index 000000000000..4643f63dcacc --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cancel_command.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .command_properties import CommandProperties + + +class MongoDbCancelCommand(CommandProperties): + """Properties for the command that cancels a migration in whole or in part. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + :param input: Command input + :type input: ~azure.mgmt.datamigration.models.MongoDbCommandInput + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbCommandInput'}, + } + + def __init__(self, **kwargs): + super(MongoDbCancelCommand, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.command_type = 'cancel' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cancel_command_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cancel_command_py3.py new file mode 100644 index 000000000000..83971c52855f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cancel_command_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .command_properties_py3 import CommandProperties + + +class MongoDbCancelCommand(CommandProperties): + """Properties for the command that cancels a migration in whole or in part. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + :param input: Command input + :type input: ~azure.mgmt.datamigration.models.MongoDbCommandInput + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbCommandInput'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MongoDbCancelCommand, self).__init__(**kwargs) + self.input = input + self.command_type = 'cancel' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cluster_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cluster_info.py new file mode 100644 index 000000000000..d8c2c284f24c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cluster_info.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbClusterInfo(Model): + """Describes a MongoDB data source. + + All required parameters must be populated in order to send to Azure. + + :param databases: Required. A list of non-system databases in the cluster + :type databases: + list[~azure.mgmt.datamigration.models.MongoDbDatabaseInfo] + :param supports_sharding: Required. Whether the cluster supports sharded + collections + :type supports_sharding: bool + :param type: Required. The type of data source. Possible values include: + 'BlobContainer', 'CosmosDb', 'MongoDb' + :type type: str or ~azure.mgmt.datamigration.models.MongoDbClusterType + :param version: Required. The version of the data source in the form x.y.z + (e.g. 3.6.7). Not used if Type is BlobContainer. + :type version: str + """ + + _validation = { + 'databases': {'required': True}, + 'supports_sharding': {'required': True}, + 'type': {'required': True}, + 'version': {'required': True}, + } + + _attribute_map = { + 'databases': {'key': 'databases', 'type': '[MongoDbDatabaseInfo]'}, + 'supports_sharding': {'key': 'supportsSharding', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MongoDbClusterInfo, self).__init__(**kwargs) + self.databases = kwargs.get('databases', None) + self.supports_sharding = kwargs.get('supports_sharding', None) + self.type = kwargs.get('type', None) + self.version = kwargs.get('version', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cluster_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cluster_info_py3.py new file mode 100644 index 000000000000..5c47019ed26a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_cluster_info_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbClusterInfo(Model): + """Describes a MongoDB data source. + + All required parameters must be populated in order to send to Azure. + + :param databases: Required. A list of non-system databases in the cluster + :type databases: + list[~azure.mgmt.datamigration.models.MongoDbDatabaseInfo] + :param supports_sharding: Required. Whether the cluster supports sharded + collections + :type supports_sharding: bool + :param type: Required. The type of data source. Possible values include: + 'BlobContainer', 'CosmosDb', 'MongoDb' + :type type: str or ~azure.mgmt.datamigration.models.MongoDbClusterType + :param version: Required. The version of the data source in the form x.y.z + (e.g. 3.6.7). Not used if Type is BlobContainer. + :type version: str + """ + + _validation = { + 'databases': {'required': True}, + 'supports_sharding': {'required': True}, + 'type': {'required': True}, + 'version': {'required': True}, + } + + _attribute_map = { + 'databases': {'key': 'databases', 'type': '[MongoDbDatabaseInfo]'}, + 'supports_sharding': {'key': 'supportsSharding', 'type': 'bool'}, + 'type': {'key': 'type', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, *, databases, supports_sharding: bool, type, version: str, **kwargs) -> None: + super(MongoDbClusterInfo, self).__init__(**kwargs) + self.databases = databases + self.supports_sharding = supports_sharding + self.type = type + self.version = version diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_info.py new file mode 100644 index 000000000000..5cf10b86d90d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_info.py @@ -0,0 +1,94 @@ +# 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 .mongo_db_object_info import MongoDbObjectInfo + + +class MongoDbCollectionInfo(MongoDbObjectInfo): + """Describes a supported collection within a MongoDB database. + + All required parameters must be populated in order to send to Azure. + + :param average_document_size: Required. The average document size, or -1 + if the average size is unknown + :type average_document_size: long + :param data_size: Required. The estimated total data size, in bytes, or -1 + if the size is unknown. + :type data_size: long + :param document_count: Required. The estimated total number of documents, + or -1 if the document count is unknown + :type document_count: long + :param name: Required. The unqualified name of the database or collection + :type name: str + :param qualified_name: Required. The qualified name of the database or + collection. For a collection, this is the database-qualified name. + :type qualified_name: str + :param database_name: Required. The name of the database containing the + collection + :type database_name: str + :param is_capped: Required. Whether the collection is a capped collection + (i.e. whether it has a fixed size and acts like a circular buffer) + :type is_capped: bool + :param is_system_collection: Required. Whether the collection is system + collection + :type is_system_collection: bool + :param is_view: Required. Whether the collection is a view of another + collection + :type is_view: bool + :param shard_key: The shard key on the collection, or null if the + collection is not sharded + :type shard_key: ~azure.mgmt.datamigration.models.MongoDbShardKeyInfo + :param supports_sharding: Required. Whether the database has sharding + enabled. Note that the migration task will enable sharding on the target + if necessary. + :type supports_sharding: bool + :param view_of: The name of the collection that this is a view of, if + IsView is true + :type view_of: str + """ + + _validation = { + 'average_document_size': {'required': True}, + 'data_size': {'required': True}, + 'document_count': {'required': True}, + 'name': {'required': True}, + 'qualified_name': {'required': True}, + 'database_name': {'required': True}, + 'is_capped': {'required': True}, + 'is_system_collection': {'required': True}, + 'is_view': {'required': True}, + 'supports_sharding': {'required': True}, + } + + _attribute_map = { + 'average_document_size': {'key': 'averageDocumentSize', 'type': 'long'}, + 'data_size': {'key': 'dataSize', 'type': 'long'}, + 'document_count': {'key': 'documentCount', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'is_capped': {'key': 'isCapped', 'type': 'bool'}, + 'is_system_collection': {'key': 'isSystemCollection', 'type': 'bool'}, + 'is_view': {'key': 'isView', 'type': 'bool'}, + 'shard_key': {'key': 'shardKey', 'type': 'MongoDbShardKeyInfo'}, + 'supports_sharding': {'key': 'supportsSharding', 'type': 'bool'}, + 'view_of': {'key': 'viewOf', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MongoDbCollectionInfo, self).__init__(**kwargs) + self.database_name = kwargs.get('database_name', None) + self.is_capped = kwargs.get('is_capped', None) + self.is_system_collection = kwargs.get('is_system_collection', None) + self.is_view = kwargs.get('is_view', None) + self.shard_key = kwargs.get('shard_key', None) + self.supports_sharding = kwargs.get('supports_sharding', None) + self.view_of = kwargs.get('view_of', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_info_py3.py new file mode 100644 index 000000000000..32f732da25fb --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_info_py3.py @@ -0,0 +1,94 @@ +# 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 .mongo_db_object_info_py3 import MongoDbObjectInfo + + +class MongoDbCollectionInfo(MongoDbObjectInfo): + """Describes a supported collection within a MongoDB database. + + All required parameters must be populated in order to send to Azure. + + :param average_document_size: Required. The average document size, or -1 + if the average size is unknown + :type average_document_size: long + :param data_size: Required. The estimated total data size, in bytes, or -1 + if the size is unknown. + :type data_size: long + :param document_count: Required. The estimated total number of documents, + or -1 if the document count is unknown + :type document_count: long + :param name: Required. The unqualified name of the database or collection + :type name: str + :param qualified_name: Required. The qualified name of the database or + collection. For a collection, this is the database-qualified name. + :type qualified_name: str + :param database_name: Required. The name of the database containing the + collection + :type database_name: str + :param is_capped: Required. Whether the collection is a capped collection + (i.e. whether it has a fixed size and acts like a circular buffer) + :type is_capped: bool + :param is_system_collection: Required. Whether the collection is system + collection + :type is_system_collection: bool + :param is_view: Required. Whether the collection is a view of another + collection + :type is_view: bool + :param shard_key: The shard key on the collection, or null if the + collection is not sharded + :type shard_key: ~azure.mgmt.datamigration.models.MongoDbShardKeyInfo + :param supports_sharding: Required. Whether the database has sharding + enabled. Note that the migration task will enable sharding on the target + if necessary. + :type supports_sharding: bool + :param view_of: The name of the collection that this is a view of, if + IsView is true + :type view_of: str + """ + + _validation = { + 'average_document_size': {'required': True}, + 'data_size': {'required': True}, + 'document_count': {'required': True}, + 'name': {'required': True}, + 'qualified_name': {'required': True}, + 'database_name': {'required': True}, + 'is_capped': {'required': True}, + 'is_system_collection': {'required': True}, + 'is_view': {'required': True}, + 'supports_sharding': {'required': True}, + } + + _attribute_map = { + 'average_document_size': {'key': 'averageDocumentSize', 'type': 'long'}, + 'data_size': {'key': 'dataSize', 'type': 'long'}, + 'document_count': {'key': 'documentCount', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'is_capped': {'key': 'isCapped', 'type': 'bool'}, + 'is_system_collection': {'key': 'isSystemCollection', 'type': 'bool'}, + 'is_view': {'key': 'isView', 'type': 'bool'}, + 'shard_key': {'key': 'shardKey', 'type': 'MongoDbShardKeyInfo'}, + 'supports_sharding': {'key': 'supportsSharding', 'type': 'bool'}, + 'view_of': {'key': 'viewOf', 'type': 'str'}, + } + + def __init__(self, *, average_document_size: int, data_size: int, document_count: int, name: str, qualified_name: str, database_name: str, is_capped: bool, is_system_collection: bool, is_view: bool, supports_sharding: bool, shard_key=None, view_of: str=None, **kwargs) -> None: + super(MongoDbCollectionInfo, self).__init__(average_document_size=average_document_size, data_size=data_size, document_count=document_count, name=name, qualified_name=qualified_name, **kwargs) + self.database_name = database_name + self.is_capped = is_capped + self.is_system_collection = is_system_collection + self.is_view = is_view + self.shard_key = shard_key + self.supports_sharding = supports_sharding + self.view_of = view_of diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_progress.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_progress.py new file mode 100644 index 000000000000..3df5e998919e --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_progress.py @@ -0,0 +1,101 @@ +# 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 .mongo_db_progress import MongoDbProgress + + +class MongoDbCollectionProgress(MongoDbProgress): + """Describes the progress of a collection. + + All required parameters must be populated in order to send to Azure. + + :param bytes_copied: Required. The number of document bytes copied during + the Copying stage + :type bytes_copied: long + :param documents_copied: Required. The number of documents copied during + the Copying stage + :type documents_copied: long + :param elapsed_time: Required. The elapsed time in the format + [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) + :type elapsed_time: str + :param errors: Required. The errors and warnings that have occurred for + the current object. The keys are the error codes. + :type errors: dict[str, ~azure.mgmt.datamigration.models.MongoDbError] + :param events_pending: Required. The number of oplog events awaiting + replay + :type events_pending: long + :param events_replayed: Required. The number of oplog events replayed so + far + :type events_replayed: long + :param last_event_time: The timestamp of the last oplog event received, or + null if no oplog event has been received yet + :type last_event_time: datetime + :param last_replay_time: The timestamp of the last oplog event replayed, + or null if no oplog event has been replayed yet + :type last_replay_time: datetime + :param name: The name of the progress object. For a collection, this is + the unqualified collection name. For a database, this is the database + name. For the overall migration, this is null. + :type name: str + :param qualified_name: The qualified name of the progress object. For a + collection, this is the database-qualified name. For a database, this is + the database name. For the overall migration, this is null. + :type qualified_name: str + :param result_type: Required. The type of progress object. Possible values + include: 'Migration', 'Database', 'Collection' + :type result_type: str or ~azure.mgmt.datamigration.models.enum + :param state: Required. Possible values include: 'NotStarted', + 'ValidatingInput', 'Initializing', 'Restarting', 'Copying', + 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', + 'Failed' + :type state: str or ~azure.mgmt.datamigration.models.MongoDbMigrationState + :param total_bytes: Required. The total number of document bytes on the + source at the beginning of the Copying stage, or -1 if the total size was + unknown + :type total_bytes: long + :param total_documents: Required. The total number of documents on the + source at the beginning of the Copying stage, or -1 if the total count was + unknown + :type total_documents: long + """ + + _validation = { + 'bytes_copied': {'required': True}, + 'documents_copied': {'required': True}, + 'elapsed_time': {'required': True}, + 'errors': {'required': True}, + 'events_pending': {'required': True}, + 'events_replayed': {'required': True}, + 'result_type': {'required': True}, + 'state': {'required': True}, + 'total_bytes': {'required': True}, + 'total_documents': {'required': True}, + } + + _attribute_map = { + 'bytes_copied': {'key': 'bytesCopied', 'type': 'long'}, + 'documents_copied': {'key': 'documentsCopied', 'type': 'long'}, + 'elapsed_time': {'key': 'elapsedTime', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '{MongoDbError}'}, + 'events_pending': {'key': 'eventsPending', 'type': 'long'}, + 'events_replayed': {'key': 'eventsReplayed', 'type': 'long'}, + 'last_event_time': {'key': 'lastEventTime', 'type': 'iso-8601'}, + 'last_replay_time': {'key': 'lastReplayTime', 'type': 'iso-8601'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_bytes': {'key': 'totalBytes', 'type': 'long'}, + 'total_documents': {'key': 'totalDocuments', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(MongoDbCollectionProgress, self).__init__(**kwargs) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_progress_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_progress_py3.py new file mode 100644 index 000000000000..aa3e17b861a7 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_progress_py3.py @@ -0,0 +1,101 @@ +# 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 .mongo_db_progress_py3 import MongoDbProgress + + +class MongoDbCollectionProgress(MongoDbProgress): + """Describes the progress of a collection. + + All required parameters must be populated in order to send to Azure. + + :param bytes_copied: Required. The number of document bytes copied during + the Copying stage + :type bytes_copied: long + :param documents_copied: Required. The number of documents copied during + the Copying stage + :type documents_copied: long + :param elapsed_time: Required. The elapsed time in the format + [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) + :type elapsed_time: str + :param errors: Required. The errors and warnings that have occurred for + the current object. The keys are the error codes. + :type errors: dict[str, ~azure.mgmt.datamigration.models.MongoDbError] + :param events_pending: Required. The number of oplog events awaiting + replay + :type events_pending: long + :param events_replayed: Required. The number of oplog events replayed so + far + :type events_replayed: long + :param last_event_time: The timestamp of the last oplog event received, or + null if no oplog event has been received yet + :type last_event_time: datetime + :param last_replay_time: The timestamp of the last oplog event replayed, + or null if no oplog event has been replayed yet + :type last_replay_time: datetime + :param name: The name of the progress object. For a collection, this is + the unqualified collection name. For a database, this is the database + name. For the overall migration, this is null. + :type name: str + :param qualified_name: The qualified name of the progress object. For a + collection, this is the database-qualified name. For a database, this is + the database name. For the overall migration, this is null. + :type qualified_name: str + :param result_type: Required. The type of progress object. Possible values + include: 'Migration', 'Database', 'Collection' + :type result_type: str or ~azure.mgmt.datamigration.models.enum + :param state: Required. Possible values include: 'NotStarted', + 'ValidatingInput', 'Initializing', 'Restarting', 'Copying', + 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', + 'Failed' + :type state: str or ~azure.mgmt.datamigration.models.MongoDbMigrationState + :param total_bytes: Required. The total number of document bytes on the + source at the beginning of the Copying stage, or -1 if the total size was + unknown + :type total_bytes: long + :param total_documents: Required. The total number of documents on the + source at the beginning of the Copying stage, or -1 if the total count was + unknown + :type total_documents: long + """ + + _validation = { + 'bytes_copied': {'required': True}, + 'documents_copied': {'required': True}, + 'elapsed_time': {'required': True}, + 'errors': {'required': True}, + 'events_pending': {'required': True}, + 'events_replayed': {'required': True}, + 'result_type': {'required': True}, + 'state': {'required': True}, + 'total_bytes': {'required': True}, + 'total_documents': {'required': True}, + } + + _attribute_map = { + 'bytes_copied': {'key': 'bytesCopied', 'type': 'long'}, + 'documents_copied': {'key': 'documentsCopied', 'type': 'long'}, + 'elapsed_time': {'key': 'elapsedTime', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '{MongoDbError}'}, + 'events_pending': {'key': 'eventsPending', 'type': 'long'}, + 'events_replayed': {'key': 'eventsReplayed', 'type': 'long'}, + 'last_event_time': {'key': 'lastEventTime', 'type': 'iso-8601'}, + 'last_replay_time': {'key': 'lastReplayTime', 'type': 'iso-8601'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_bytes': {'key': 'totalBytes', 'type': 'long'}, + 'total_documents': {'key': 'totalDocuments', 'type': 'long'}, + } + + def __init__(self, *, bytes_copied: int, documents_copied: int, elapsed_time: str, errors, events_pending: int, events_replayed: int, result_type, state, total_bytes: int, total_documents: int, last_event_time=None, last_replay_time=None, name: str=None, qualified_name: str=None, **kwargs) -> None: + super(MongoDbCollectionProgress, self).__init__(bytes_copied=bytes_copied, documents_copied=documents_copied, elapsed_time=elapsed_time, errors=errors, events_pending=events_pending, events_replayed=events_replayed, last_event_time=last_event_time, last_replay_time=last_replay_time, name=name, qualified_name=qualified_name, result_type=result_type, state=state, total_bytes=total_bytes, total_documents=total_documents, **kwargs) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_settings.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_settings.py new file mode 100644 index 000000000000..3413c05f5900 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_settings.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbCollectionSettings(Model): + """Describes how an individual MongoDB collection should be migrated. + + :param can_delete: Whether the migrator is allowed to drop the target + collection in the course of performing a migration. The default is true. + :type can_delete: bool + :param shard_key: + :type shard_key: ~azure.mgmt.datamigration.models.MongoDbShardKeySetting + :param target_rus: The RUs that should be configured on a CosmosDB target, + or null to use the default. This has no effect on non-CosmosDB targets. + :type target_rus: int + """ + + _attribute_map = { + 'can_delete': {'key': 'canDelete', 'type': 'bool'}, + 'shard_key': {'key': 'shardKey', 'type': 'MongoDbShardKeySetting'}, + 'target_rus': {'key': 'targetRUs', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(MongoDbCollectionSettings, self).__init__(**kwargs) + self.can_delete = kwargs.get('can_delete', None) + self.shard_key = kwargs.get('shard_key', None) + self.target_rus = kwargs.get('target_rus', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_settings_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_settings_py3.py new file mode 100644 index 000000000000..1460c4cd5244 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_collection_settings_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbCollectionSettings(Model): + """Describes how an individual MongoDB collection should be migrated. + + :param can_delete: Whether the migrator is allowed to drop the target + collection in the course of performing a migration. The default is true. + :type can_delete: bool + :param shard_key: + :type shard_key: ~azure.mgmt.datamigration.models.MongoDbShardKeySetting + :param target_rus: The RUs that should be configured on a CosmosDB target, + or null to use the default. This has no effect on non-CosmosDB targets. + :type target_rus: int + """ + + _attribute_map = { + 'can_delete': {'key': 'canDelete', 'type': 'bool'}, + 'shard_key': {'key': 'shardKey', 'type': 'MongoDbShardKeySetting'}, + 'target_rus': {'key': 'targetRUs', 'type': 'int'}, + } + + def __init__(self, *, can_delete: bool=None, shard_key=None, target_rus: int=None, **kwargs) -> None: + super(MongoDbCollectionSettings, self).__init__(**kwargs) + self.can_delete = can_delete + self.shard_key = shard_key + self.target_rus = target_rus diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_command_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_command_input.py new file mode 100644 index 000000000000..62ee1e513304 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_command_input.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbCommandInput(Model): + """Describes the input to the 'cancel' and 'restart' MongoDB migration + commands. + + :param object_name: The qualified name of a database or collection to act + upon, or null to act upon the entire migration + :type object_name: str + """ + + _attribute_map = { + 'object_name': {'key': 'objectName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MongoDbCommandInput, self).__init__(**kwargs) + self.object_name = kwargs.get('object_name', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_command_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_command_input_py3.py new file mode 100644 index 000000000000..4581858b8e1a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_command_input_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbCommandInput(Model): + """Describes the input to the 'cancel' and 'restart' MongoDB migration + commands. + + :param object_name: The qualified name of a database or collection to act + upon, or null to act upon the entire migration + :type object_name: str + """ + + _attribute_map = { + 'object_name': {'key': 'objectName', 'type': 'str'}, + } + + def __init__(self, *, object_name: str=None, **kwargs) -> None: + super(MongoDbCommandInput, self).__init__(**kwargs) + self.object_name = object_name diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_connection_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_connection_info.py new file mode 100644 index 000000000000..fdf8107f7194 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_connection_info.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .connection_info import ConnectionInfo + + +class MongoDbConnectionInfo(ConnectionInfo): + """Describes a connection to a MongoDB data source. + + All required parameters must be populated in order to send to Azure. + + :param user_name: User name + :type user_name: str + :param password: Password credential. + :type password: str + :param type: Required. Constant filled by server. + :type type: str + :param connection_string: Required. A MongoDB connection string or blob + container URL. The user name and password can be specified here or in the + userName and password properties + :type connection_string: str + """ + + _validation = { + 'type': {'required': True}, + 'connection_string': {'required': True}, + } + + _attribute_map = { + 'user_name': {'key': 'userName', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'connection_string': {'key': 'connectionString', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MongoDbConnectionInfo, self).__init__(**kwargs) + self.connection_string = kwargs.get('connection_string', None) + self.type = 'MongoDbConnectionInfo' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_connection_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_connection_info_py3.py new file mode 100644 index 000000000000..ac3d78a7bda0 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_connection_info_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .connection_info_py3 import ConnectionInfo + + +class MongoDbConnectionInfo(ConnectionInfo): + """Describes a connection to a MongoDB data source. + + All required parameters must be populated in order to send to Azure. + + :param user_name: User name + :type user_name: str + :param password: Password credential. + :type password: str + :param type: Required. Constant filled by server. + :type type: str + :param connection_string: Required. A MongoDB connection string or blob + container URL. The user name and password can be specified here or in the + userName and password properties + :type connection_string: str + """ + + _validation = { + 'type': {'required': True}, + 'connection_string': {'required': True}, + } + + _attribute_map = { + 'user_name': {'key': 'userName', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'connection_string': {'key': 'connectionString', 'type': 'str'}, + } + + def __init__(self, *, connection_string: str, user_name: str=None, password: str=None, **kwargs) -> None: + super(MongoDbConnectionInfo, self).__init__(user_name=user_name, password=password, **kwargs) + self.connection_string = connection_string + self.type = 'MongoDbConnectionInfo' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_info.py new file mode 100644 index 000000000000..c7fdba42e91e --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_info.py @@ -0,0 +1,67 @@ +# 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 .mongo_db_object_info import MongoDbObjectInfo + + +class MongoDbDatabaseInfo(MongoDbObjectInfo): + """Describes a database within a MongoDB data source. + + All required parameters must be populated in order to send to Azure. + + :param average_document_size: Required. The average document size, or -1 + if the average size is unknown + :type average_document_size: long + :param data_size: Required. The estimated total data size, in bytes, or -1 + if the size is unknown. + :type data_size: long + :param document_count: Required. The estimated total number of documents, + or -1 if the document count is unknown + :type document_count: long + :param name: Required. The unqualified name of the database or collection + :type name: str + :param qualified_name: Required. The qualified name of the database or + collection. For a collection, this is the database-qualified name. + :type qualified_name: str + :param collections: Required. A list of supported collections in a MongoDB + database + :type collections: + list[~azure.mgmt.datamigration.models.MongoDbCollectionInfo] + :param supports_sharding: Required. Whether the database has sharding + enabled. Note that the migration task will enable sharding on the target + if necessary. + :type supports_sharding: bool + """ + + _validation = { + 'average_document_size': {'required': True}, + 'data_size': {'required': True}, + 'document_count': {'required': True}, + 'name': {'required': True}, + 'qualified_name': {'required': True}, + 'collections': {'required': True}, + 'supports_sharding': {'required': True}, + } + + _attribute_map = { + 'average_document_size': {'key': 'averageDocumentSize', 'type': 'long'}, + 'data_size': {'key': 'dataSize', 'type': 'long'}, + 'document_count': {'key': 'documentCount', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'collections': {'key': 'collections', 'type': '[MongoDbCollectionInfo]'}, + 'supports_sharding': {'key': 'supportsSharding', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(MongoDbDatabaseInfo, self).__init__(**kwargs) + self.collections = kwargs.get('collections', None) + self.supports_sharding = kwargs.get('supports_sharding', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_info_py3.py new file mode 100644 index 000000000000..c7ab66747fe2 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_info_py3.py @@ -0,0 +1,67 @@ +# 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 .mongo_db_object_info_py3 import MongoDbObjectInfo + + +class MongoDbDatabaseInfo(MongoDbObjectInfo): + """Describes a database within a MongoDB data source. + + All required parameters must be populated in order to send to Azure. + + :param average_document_size: Required. The average document size, or -1 + if the average size is unknown + :type average_document_size: long + :param data_size: Required. The estimated total data size, in bytes, or -1 + if the size is unknown. + :type data_size: long + :param document_count: Required. The estimated total number of documents, + or -1 if the document count is unknown + :type document_count: long + :param name: Required. The unqualified name of the database or collection + :type name: str + :param qualified_name: Required. The qualified name of the database or + collection. For a collection, this is the database-qualified name. + :type qualified_name: str + :param collections: Required. A list of supported collections in a MongoDB + database + :type collections: + list[~azure.mgmt.datamigration.models.MongoDbCollectionInfo] + :param supports_sharding: Required. Whether the database has sharding + enabled. Note that the migration task will enable sharding on the target + if necessary. + :type supports_sharding: bool + """ + + _validation = { + 'average_document_size': {'required': True}, + 'data_size': {'required': True}, + 'document_count': {'required': True}, + 'name': {'required': True}, + 'qualified_name': {'required': True}, + 'collections': {'required': True}, + 'supports_sharding': {'required': True}, + } + + _attribute_map = { + 'average_document_size': {'key': 'averageDocumentSize', 'type': 'long'}, + 'data_size': {'key': 'dataSize', 'type': 'long'}, + 'document_count': {'key': 'documentCount', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'collections': {'key': 'collections', 'type': '[MongoDbCollectionInfo]'}, + 'supports_sharding': {'key': 'supportsSharding', 'type': 'bool'}, + } + + def __init__(self, *, average_document_size: int, data_size: int, document_count: int, name: str, qualified_name: str, collections, supports_sharding: bool, **kwargs) -> None: + super(MongoDbDatabaseInfo, self).__init__(average_document_size=average_document_size, data_size=data_size, document_count=document_count, name=name, qualified_name=qualified_name, **kwargs) + self.collections = collections + self.supports_sharding = supports_sharding diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_progress.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_progress.py new file mode 100644 index 000000000000..55fe54fe92a8 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_progress.py @@ -0,0 +1,107 @@ +# 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 .mongo_db_progress import MongoDbProgress + + +class MongoDbDatabaseProgress(MongoDbProgress): + """Describes the progress of a database. + + All required parameters must be populated in order to send to Azure. + + :param bytes_copied: Required. The number of document bytes copied during + the Copying stage + :type bytes_copied: long + :param documents_copied: Required. The number of documents copied during + the Copying stage + :type documents_copied: long + :param elapsed_time: Required. The elapsed time in the format + [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) + :type elapsed_time: str + :param errors: Required. The errors and warnings that have occurred for + the current object. The keys are the error codes. + :type errors: dict[str, ~azure.mgmt.datamigration.models.MongoDbError] + :param events_pending: Required. The number of oplog events awaiting + replay + :type events_pending: long + :param events_replayed: Required. The number of oplog events replayed so + far + :type events_replayed: long + :param last_event_time: The timestamp of the last oplog event received, or + null if no oplog event has been received yet + :type last_event_time: datetime + :param last_replay_time: The timestamp of the last oplog event replayed, + or null if no oplog event has been replayed yet + :type last_replay_time: datetime + :param name: The name of the progress object. For a collection, this is + the unqualified collection name. For a database, this is the database + name. For the overall migration, this is null. + :type name: str + :param qualified_name: The qualified name of the progress object. For a + collection, this is the database-qualified name. For a database, this is + the database name. For the overall migration, this is null. + :type qualified_name: str + :param result_type: Required. The type of progress object. Possible values + include: 'Migration', 'Database', 'Collection' + :type result_type: str or ~azure.mgmt.datamigration.models.enum + :param state: Required. Possible values include: 'NotStarted', + 'ValidatingInput', 'Initializing', 'Restarting', 'Copying', + 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', + 'Failed' + :type state: str or ~azure.mgmt.datamigration.models.MongoDbMigrationState + :param total_bytes: Required. The total number of document bytes on the + source at the beginning of the Copying stage, or -1 if the total size was + unknown + :type total_bytes: long + :param total_documents: Required. The total number of documents on the + source at the beginning of the Copying stage, or -1 if the total count was + unknown + :type total_documents: long + :param collections: The progress of the collections in the database. The + keys are the unqualified names of the collections + :type collections: dict[str, + ~azure.mgmt.datamigration.models.MongoDbCollectionProgress] + """ + + _validation = { + 'bytes_copied': {'required': True}, + 'documents_copied': {'required': True}, + 'elapsed_time': {'required': True}, + 'errors': {'required': True}, + 'events_pending': {'required': True}, + 'events_replayed': {'required': True}, + 'result_type': {'required': True}, + 'state': {'required': True}, + 'total_bytes': {'required': True}, + 'total_documents': {'required': True}, + } + + _attribute_map = { + 'bytes_copied': {'key': 'bytesCopied', 'type': 'long'}, + 'documents_copied': {'key': 'documentsCopied', 'type': 'long'}, + 'elapsed_time': {'key': 'elapsedTime', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '{MongoDbError}'}, + 'events_pending': {'key': 'eventsPending', 'type': 'long'}, + 'events_replayed': {'key': 'eventsReplayed', 'type': 'long'}, + 'last_event_time': {'key': 'lastEventTime', 'type': 'iso-8601'}, + 'last_replay_time': {'key': 'lastReplayTime', 'type': 'iso-8601'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_bytes': {'key': 'totalBytes', 'type': 'long'}, + 'total_documents': {'key': 'totalDocuments', 'type': 'long'}, + 'collections': {'key': 'collections', 'type': '{MongoDbCollectionProgress}'}, + } + + def __init__(self, **kwargs): + super(MongoDbDatabaseProgress, self).__init__(**kwargs) + self.collections = kwargs.get('collections', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_progress_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_progress_py3.py new file mode 100644 index 000000000000..2df655e78d05 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_progress_py3.py @@ -0,0 +1,107 @@ +# 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 .mongo_db_progress_py3 import MongoDbProgress + + +class MongoDbDatabaseProgress(MongoDbProgress): + """Describes the progress of a database. + + All required parameters must be populated in order to send to Azure. + + :param bytes_copied: Required. The number of document bytes copied during + the Copying stage + :type bytes_copied: long + :param documents_copied: Required. The number of documents copied during + the Copying stage + :type documents_copied: long + :param elapsed_time: Required. The elapsed time in the format + [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) + :type elapsed_time: str + :param errors: Required. The errors and warnings that have occurred for + the current object. The keys are the error codes. + :type errors: dict[str, ~azure.mgmt.datamigration.models.MongoDbError] + :param events_pending: Required. The number of oplog events awaiting + replay + :type events_pending: long + :param events_replayed: Required. The number of oplog events replayed so + far + :type events_replayed: long + :param last_event_time: The timestamp of the last oplog event received, or + null if no oplog event has been received yet + :type last_event_time: datetime + :param last_replay_time: The timestamp of the last oplog event replayed, + or null if no oplog event has been replayed yet + :type last_replay_time: datetime + :param name: The name of the progress object. For a collection, this is + the unqualified collection name. For a database, this is the database + name. For the overall migration, this is null. + :type name: str + :param qualified_name: The qualified name of the progress object. For a + collection, this is the database-qualified name. For a database, this is + the database name. For the overall migration, this is null. + :type qualified_name: str + :param result_type: Required. The type of progress object. Possible values + include: 'Migration', 'Database', 'Collection' + :type result_type: str or ~azure.mgmt.datamigration.models.enum + :param state: Required. Possible values include: 'NotStarted', + 'ValidatingInput', 'Initializing', 'Restarting', 'Copying', + 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', + 'Failed' + :type state: str or ~azure.mgmt.datamigration.models.MongoDbMigrationState + :param total_bytes: Required. The total number of document bytes on the + source at the beginning of the Copying stage, or -1 if the total size was + unknown + :type total_bytes: long + :param total_documents: Required. The total number of documents on the + source at the beginning of the Copying stage, or -1 if the total count was + unknown + :type total_documents: long + :param collections: The progress of the collections in the database. The + keys are the unqualified names of the collections + :type collections: dict[str, + ~azure.mgmt.datamigration.models.MongoDbCollectionProgress] + """ + + _validation = { + 'bytes_copied': {'required': True}, + 'documents_copied': {'required': True}, + 'elapsed_time': {'required': True}, + 'errors': {'required': True}, + 'events_pending': {'required': True}, + 'events_replayed': {'required': True}, + 'result_type': {'required': True}, + 'state': {'required': True}, + 'total_bytes': {'required': True}, + 'total_documents': {'required': True}, + } + + _attribute_map = { + 'bytes_copied': {'key': 'bytesCopied', 'type': 'long'}, + 'documents_copied': {'key': 'documentsCopied', 'type': 'long'}, + 'elapsed_time': {'key': 'elapsedTime', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '{MongoDbError}'}, + 'events_pending': {'key': 'eventsPending', 'type': 'long'}, + 'events_replayed': {'key': 'eventsReplayed', 'type': 'long'}, + 'last_event_time': {'key': 'lastEventTime', 'type': 'iso-8601'}, + 'last_replay_time': {'key': 'lastReplayTime', 'type': 'iso-8601'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_bytes': {'key': 'totalBytes', 'type': 'long'}, + 'total_documents': {'key': 'totalDocuments', 'type': 'long'}, + 'collections': {'key': 'collections', 'type': '{MongoDbCollectionProgress}'}, + } + + def __init__(self, *, bytes_copied: int, documents_copied: int, elapsed_time: str, errors, events_pending: int, events_replayed: int, result_type, state, total_bytes: int, total_documents: int, last_event_time=None, last_replay_time=None, name: str=None, qualified_name: str=None, collections=None, **kwargs) -> None: + super(MongoDbDatabaseProgress, self).__init__(bytes_copied=bytes_copied, documents_copied=documents_copied, elapsed_time=elapsed_time, errors=errors, events_pending=events_pending, events_replayed=events_replayed, last_event_time=last_event_time, last_replay_time=last_replay_time, name=name, qualified_name=qualified_name, result_type=result_type, state=state, total_bytes=total_bytes, total_documents=total_documents, **kwargs) + self.collections = collections diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_settings.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_settings.py new file mode 100644 index 000000000000..bf175ec1a767 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_settings.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbDatabaseSettings(Model): + """Describes how an individual MongoDB database should be migrated. + + All required parameters must be populated in order to send to Azure. + + :param collections: Required. The collections on the source database to + migrate to the target. The keys are the unqualified names of the + collections. + :type collections: dict[str, + ~azure.mgmt.datamigration.models.MongoDbCollectionSettings] + :param target_rus: The RUs that should be configured on a CosmosDB target, + or null to use the default, or 0 if throughput should not be provisioned + for the database. This has no effect on non-CosmosDB targets. + :type target_rus: int + """ + + _validation = { + 'collections': {'required': True}, + } + + _attribute_map = { + 'collections': {'key': 'collections', 'type': '{MongoDbCollectionSettings}'}, + 'target_rus': {'key': 'targetRUs', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(MongoDbDatabaseSettings, self).__init__(**kwargs) + self.collections = kwargs.get('collections', None) + self.target_rus = kwargs.get('target_rus', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_settings_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_settings_py3.py new file mode 100644 index 000000000000..718b5bb1e83c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_database_settings_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbDatabaseSettings(Model): + """Describes how an individual MongoDB database should be migrated. + + All required parameters must be populated in order to send to Azure. + + :param collections: Required. The collections on the source database to + migrate to the target. The keys are the unqualified names of the + collections. + :type collections: dict[str, + ~azure.mgmt.datamigration.models.MongoDbCollectionSettings] + :param target_rus: The RUs that should be configured on a CosmosDB target, + or null to use the default, or 0 if throughput should not be provisioned + for the database. This has no effect on non-CosmosDB targets. + :type target_rus: int + """ + + _validation = { + 'collections': {'required': True}, + } + + _attribute_map = { + 'collections': {'key': 'collections', 'type': '{MongoDbCollectionSettings}'}, + 'target_rus': {'key': 'targetRUs', 'type': 'int'}, + } + + def __init__(self, *, collections, target_rus: int=None, **kwargs) -> None: + super(MongoDbDatabaseSettings, self).__init__(**kwargs) + self.collections = collections + self.target_rus = target_rus diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_error.py new file mode 100644 index 000000000000..948069427733 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_error.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbError(Model): + """Describes an error or warning that occurred during a MongoDB migration. + + :param code: The non-localized, machine-readable code that describes the + error or warning + :type code: str + :param count: The number of times the error or warning has occurred + :type count: int + :param message: The localized, human-readable message that describes the + error or warning + :type message: str + :param type: The type of error or warning. Possible values include: + 'Error', 'ValidationError', 'Warning' + :type type: str or ~azure.mgmt.datamigration.models.MongoDbErrorType + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'count': {'key': 'count', 'type': 'int'}, + 'message': {'key': 'message', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MongoDbError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.count = kwargs.get('count', None) + self.message = kwargs.get('message', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_error_py3.py new file mode 100644 index 000000000000..c0fce6293719 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_error_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbError(Model): + """Describes an error or warning that occurred during a MongoDB migration. + + :param code: The non-localized, machine-readable code that describes the + error or warning + :type code: str + :param count: The number of times the error or warning has occurred + :type count: int + :param message: The localized, human-readable message that describes the + error or warning + :type message: str + :param type: The type of error or warning. Possible values include: + 'Error', 'ValidationError', 'Warning' + :type type: str or ~azure.mgmt.datamigration.models.MongoDbErrorType + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'count': {'key': 'count', 'type': 'int'}, + 'message': {'key': 'message', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, count: int=None, message: str=None, type=None, **kwargs) -> None: + super(MongoDbError, self).__init__(**kwargs) + self.code = code + self.count = count + self.message = message + self.type = type diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command.py new file mode 100644 index 000000000000..6b6c4ba6de5c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .command_properties import CommandProperties + + +class MongoDbFinishCommand(CommandProperties): + """Properties for the command that finishes a migration in whole or in part. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + :param input: Command input + :type input: ~azure.mgmt.datamigration.models.MongoDbFinishCommandInput + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbFinishCommandInput'}, + } + + def __init__(self, **kwargs): + super(MongoDbFinishCommand, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.command_type = 'finish' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_input.py new file mode 100644 index 000000000000..e8c14aee170f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_input.py @@ -0,0 +1,40 @@ +# 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 .mongo_db_command_input import MongoDbCommandInput + + +class MongoDbFinishCommandInput(MongoDbCommandInput): + """Describes the input to the 'finish' MongoDB migration command. + + All required parameters must be populated in order to send to Azure. + + :param object_name: The qualified name of a database or collection to act + upon, or null to act upon the entire migration + :type object_name: str + :param immediate: Required. If true, replication for the affected objects + will be stopped immediately. If false, the migrator will finish replaying + queued events before finishing the replication. + :type immediate: bool + """ + + _validation = { + 'immediate': {'required': True}, + } + + _attribute_map = { + 'object_name': {'key': 'objectName', 'type': 'str'}, + 'immediate': {'key': 'immediate', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(MongoDbFinishCommandInput, self).__init__(**kwargs) + self.immediate = kwargs.get('immediate', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_input_py3.py new file mode 100644 index 000000000000..49e561fc90fa --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_input_py3.py @@ -0,0 +1,40 @@ +# 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 .mongo_db_command_input_py3 import MongoDbCommandInput + + +class MongoDbFinishCommandInput(MongoDbCommandInput): + """Describes the input to the 'finish' MongoDB migration command. + + All required parameters must be populated in order to send to Azure. + + :param object_name: The qualified name of a database or collection to act + upon, or null to act upon the entire migration + :type object_name: str + :param immediate: Required. If true, replication for the affected objects + will be stopped immediately. If false, the migrator will finish replaying + queued events before finishing the replication. + :type immediate: bool + """ + + _validation = { + 'immediate': {'required': True}, + } + + _attribute_map = { + 'object_name': {'key': 'objectName', 'type': 'str'}, + 'immediate': {'key': 'immediate', 'type': 'bool'}, + } + + def __init__(self, *, immediate: bool, object_name: str=None, **kwargs) -> None: + super(MongoDbFinishCommandInput, self).__init__(object_name=object_name, **kwargs) + self.immediate = immediate diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_py3.py new file mode 100644 index 000000000000..6c52da153511 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_finish_command_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .command_properties_py3 import CommandProperties + + +class MongoDbFinishCommand(CommandProperties): + """Properties for the command that finishes a migration in whole or in part. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + :param input: Command input + :type input: ~azure.mgmt.datamigration.models.MongoDbFinishCommandInput + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbFinishCommandInput'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MongoDbFinishCommand, self).__init__(**kwargs) + self.input = input + self.command_type = 'finish' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_progress.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_progress.py new file mode 100644 index 000000000000..6a4dc415ffc7 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_progress.py @@ -0,0 +1,107 @@ +# 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 .mongo_db_progress import MongoDbProgress + + +class MongoDbMigrationProgress(MongoDbProgress): + """Describes the progress of the overall migration. + + All required parameters must be populated in order to send to Azure. + + :param bytes_copied: Required. The number of document bytes copied during + the Copying stage + :type bytes_copied: long + :param documents_copied: Required. The number of documents copied during + the Copying stage + :type documents_copied: long + :param elapsed_time: Required. The elapsed time in the format + [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) + :type elapsed_time: str + :param errors: Required. The errors and warnings that have occurred for + the current object. The keys are the error codes. + :type errors: dict[str, ~azure.mgmt.datamigration.models.MongoDbError] + :param events_pending: Required. The number of oplog events awaiting + replay + :type events_pending: long + :param events_replayed: Required. The number of oplog events replayed so + far + :type events_replayed: long + :param last_event_time: The timestamp of the last oplog event received, or + null if no oplog event has been received yet + :type last_event_time: datetime + :param last_replay_time: The timestamp of the last oplog event replayed, + or null if no oplog event has been replayed yet + :type last_replay_time: datetime + :param name: The name of the progress object. For a collection, this is + the unqualified collection name. For a database, this is the database + name. For the overall migration, this is null. + :type name: str + :param qualified_name: The qualified name of the progress object. For a + collection, this is the database-qualified name. For a database, this is + the database name. For the overall migration, this is null. + :type qualified_name: str + :param result_type: Required. The type of progress object. Possible values + include: 'Migration', 'Database', 'Collection' + :type result_type: str or ~azure.mgmt.datamigration.models.enum + :param state: Required. Possible values include: 'NotStarted', + 'ValidatingInput', 'Initializing', 'Restarting', 'Copying', + 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', + 'Failed' + :type state: str or ~azure.mgmt.datamigration.models.MongoDbMigrationState + :param total_bytes: Required. The total number of document bytes on the + source at the beginning of the Copying stage, or -1 if the total size was + unknown + :type total_bytes: long + :param total_documents: Required. The total number of documents on the + source at the beginning of the Copying stage, or -1 if the total count was + unknown + :type total_documents: long + :param databases: The progress of the databases in the migration. The keys + are the names of the databases + :type databases: dict[str, + ~azure.mgmt.datamigration.models.MongoDbDatabaseProgress] + """ + + _validation = { + 'bytes_copied': {'required': True}, + 'documents_copied': {'required': True}, + 'elapsed_time': {'required': True}, + 'errors': {'required': True}, + 'events_pending': {'required': True}, + 'events_replayed': {'required': True}, + 'result_type': {'required': True}, + 'state': {'required': True}, + 'total_bytes': {'required': True}, + 'total_documents': {'required': True}, + } + + _attribute_map = { + 'bytes_copied': {'key': 'bytesCopied', 'type': 'long'}, + 'documents_copied': {'key': 'documentsCopied', 'type': 'long'}, + 'elapsed_time': {'key': 'elapsedTime', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '{MongoDbError}'}, + 'events_pending': {'key': 'eventsPending', 'type': 'long'}, + 'events_replayed': {'key': 'eventsReplayed', 'type': 'long'}, + 'last_event_time': {'key': 'lastEventTime', 'type': 'iso-8601'}, + 'last_replay_time': {'key': 'lastReplayTime', 'type': 'iso-8601'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_bytes': {'key': 'totalBytes', 'type': 'long'}, + 'total_documents': {'key': 'totalDocuments', 'type': 'long'}, + 'databases': {'key': 'databases', 'type': '{MongoDbDatabaseProgress}'}, + } + + def __init__(self, **kwargs): + super(MongoDbMigrationProgress, self).__init__(**kwargs) + self.databases = kwargs.get('databases', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_progress_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_progress_py3.py new file mode 100644 index 000000000000..7dac4064b5f8 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_progress_py3.py @@ -0,0 +1,107 @@ +# 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 .mongo_db_progress_py3 import MongoDbProgress + + +class MongoDbMigrationProgress(MongoDbProgress): + """Describes the progress of the overall migration. + + All required parameters must be populated in order to send to Azure. + + :param bytes_copied: Required. The number of document bytes copied during + the Copying stage + :type bytes_copied: long + :param documents_copied: Required. The number of documents copied during + the Copying stage + :type documents_copied: long + :param elapsed_time: Required. The elapsed time in the format + [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) + :type elapsed_time: str + :param errors: Required. The errors and warnings that have occurred for + the current object. The keys are the error codes. + :type errors: dict[str, ~azure.mgmt.datamigration.models.MongoDbError] + :param events_pending: Required. The number of oplog events awaiting + replay + :type events_pending: long + :param events_replayed: Required. The number of oplog events replayed so + far + :type events_replayed: long + :param last_event_time: The timestamp of the last oplog event received, or + null if no oplog event has been received yet + :type last_event_time: datetime + :param last_replay_time: The timestamp of the last oplog event replayed, + or null if no oplog event has been replayed yet + :type last_replay_time: datetime + :param name: The name of the progress object. For a collection, this is + the unqualified collection name. For a database, this is the database + name. For the overall migration, this is null. + :type name: str + :param qualified_name: The qualified name of the progress object. For a + collection, this is the database-qualified name. For a database, this is + the database name. For the overall migration, this is null. + :type qualified_name: str + :param result_type: Required. The type of progress object. Possible values + include: 'Migration', 'Database', 'Collection' + :type result_type: str or ~azure.mgmt.datamigration.models.enum + :param state: Required. Possible values include: 'NotStarted', + 'ValidatingInput', 'Initializing', 'Restarting', 'Copying', + 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', + 'Failed' + :type state: str or ~azure.mgmt.datamigration.models.MongoDbMigrationState + :param total_bytes: Required. The total number of document bytes on the + source at the beginning of the Copying stage, or -1 if the total size was + unknown + :type total_bytes: long + :param total_documents: Required. The total number of documents on the + source at the beginning of the Copying stage, or -1 if the total count was + unknown + :type total_documents: long + :param databases: The progress of the databases in the migration. The keys + are the names of the databases + :type databases: dict[str, + ~azure.mgmt.datamigration.models.MongoDbDatabaseProgress] + """ + + _validation = { + 'bytes_copied': {'required': True}, + 'documents_copied': {'required': True}, + 'elapsed_time': {'required': True}, + 'errors': {'required': True}, + 'events_pending': {'required': True}, + 'events_replayed': {'required': True}, + 'result_type': {'required': True}, + 'state': {'required': True}, + 'total_bytes': {'required': True}, + 'total_documents': {'required': True}, + } + + _attribute_map = { + 'bytes_copied': {'key': 'bytesCopied', 'type': 'long'}, + 'documents_copied': {'key': 'documentsCopied', 'type': 'long'}, + 'elapsed_time': {'key': 'elapsedTime', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '{MongoDbError}'}, + 'events_pending': {'key': 'eventsPending', 'type': 'long'}, + 'events_replayed': {'key': 'eventsReplayed', 'type': 'long'}, + 'last_event_time': {'key': 'lastEventTime', 'type': 'iso-8601'}, + 'last_replay_time': {'key': 'lastReplayTime', 'type': 'iso-8601'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_bytes': {'key': 'totalBytes', 'type': 'long'}, + 'total_documents': {'key': 'totalDocuments', 'type': 'long'}, + 'databases': {'key': 'databases', 'type': '{MongoDbDatabaseProgress}'}, + } + + def __init__(self, *, bytes_copied: int, documents_copied: int, elapsed_time: str, errors, events_pending: int, events_replayed: int, result_type, state, total_bytes: int, total_documents: int, last_event_time=None, last_replay_time=None, name: str=None, qualified_name: str=None, databases=None, **kwargs) -> None: + super(MongoDbMigrationProgress, self).__init__(bytes_copied=bytes_copied, documents_copied=documents_copied, elapsed_time=elapsed_time, errors=errors, events_pending=events_pending, events_replayed=events_replayed, last_event_time=last_event_time, last_replay_time=last_replay_time, name=name, qualified_name=qualified_name, result_type=result_type, state=state, total_bytes=total_bytes, total_documents=total_documents, **kwargs) + self.databases = databases diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_settings.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_settings.py new file mode 100644 index 000000000000..927f525673ee --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_settings.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbMigrationSettings(Model): + """Describes how a MongoDB data migration should be performed. + + All required parameters must be populated in order to send to Azure. + + :param boost_rus: The RU limit on a CosmosDB target that collections will + be temporarily increased to (if lower) during the initial copy of a + migration, from 10,000 to 1,000,000, or 0 to use the default boost (which + is generally the maximum), or null to not boost the RUs. This setting has + no effect on non-CosmosDB targets. + :type boost_rus: int + :param databases: Required. The databases on the source cluster to migrate + to the target. The keys are the names of the databases. + :type databases: dict[str, + ~azure.mgmt.datamigration.models.MongoDbDatabaseSettings] + :param replication: Describes how changes will be replicated from the + source to the target. The default is OneTime. Possible values include: + 'Disabled', 'OneTime', 'Continuous' + :type replication: str or + ~azure.mgmt.datamigration.models.MongoDbReplication + :param source: Required. Settings used to connect to the source cluster + :type source: ~azure.mgmt.datamigration.models.MongoDbConnectionInfo + :param target: Required. Settings used to connect to the target cluster + :type target: ~azure.mgmt.datamigration.models.MongoDbConnectionInfo + :param throttling: Settings used to limit the resource usage of the + migration + :type throttling: + ~azure.mgmt.datamigration.models.MongoDbThrottlingSettings + """ + + _validation = { + 'databases': {'required': True}, + 'source': {'required': True}, + 'target': {'required': True}, + } + + _attribute_map = { + 'boost_rus': {'key': 'boostRUs', 'type': 'int'}, + 'databases': {'key': 'databases', 'type': '{MongoDbDatabaseSettings}'}, + 'replication': {'key': 'replication', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'MongoDbConnectionInfo'}, + 'target': {'key': 'target', 'type': 'MongoDbConnectionInfo'}, + 'throttling': {'key': 'throttling', 'type': 'MongoDbThrottlingSettings'}, + } + + def __init__(self, **kwargs): + super(MongoDbMigrationSettings, self).__init__(**kwargs) + self.boost_rus = kwargs.get('boost_rus', None) + self.databases = kwargs.get('databases', None) + self.replication = kwargs.get('replication', None) + self.source = kwargs.get('source', None) + self.target = kwargs.get('target', None) + self.throttling = kwargs.get('throttling', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_settings_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_settings_py3.py new file mode 100644 index 000000000000..171f8298388f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_migration_settings_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbMigrationSettings(Model): + """Describes how a MongoDB data migration should be performed. + + All required parameters must be populated in order to send to Azure. + + :param boost_rus: The RU limit on a CosmosDB target that collections will + be temporarily increased to (if lower) during the initial copy of a + migration, from 10,000 to 1,000,000, or 0 to use the default boost (which + is generally the maximum), or null to not boost the RUs. This setting has + no effect on non-CosmosDB targets. + :type boost_rus: int + :param databases: Required. The databases on the source cluster to migrate + to the target. The keys are the names of the databases. + :type databases: dict[str, + ~azure.mgmt.datamigration.models.MongoDbDatabaseSettings] + :param replication: Describes how changes will be replicated from the + source to the target. The default is OneTime. Possible values include: + 'Disabled', 'OneTime', 'Continuous' + :type replication: str or + ~azure.mgmt.datamigration.models.MongoDbReplication + :param source: Required. Settings used to connect to the source cluster + :type source: ~azure.mgmt.datamigration.models.MongoDbConnectionInfo + :param target: Required. Settings used to connect to the target cluster + :type target: ~azure.mgmt.datamigration.models.MongoDbConnectionInfo + :param throttling: Settings used to limit the resource usage of the + migration + :type throttling: + ~azure.mgmt.datamigration.models.MongoDbThrottlingSettings + """ + + _validation = { + 'databases': {'required': True}, + 'source': {'required': True}, + 'target': {'required': True}, + } + + _attribute_map = { + 'boost_rus': {'key': 'boostRUs', 'type': 'int'}, + 'databases': {'key': 'databases', 'type': '{MongoDbDatabaseSettings}'}, + 'replication': {'key': 'replication', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'MongoDbConnectionInfo'}, + 'target': {'key': 'target', 'type': 'MongoDbConnectionInfo'}, + 'throttling': {'key': 'throttling', 'type': 'MongoDbThrottlingSettings'}, + } + + def __init__(self, *, databases, source, target, boost_rus: int=None, replication=None, throttling=None, **kwargs) -> None: + super(MongoDbMigrationSettings, self).__init__(**kwargs) + self.boost_rus = boost_rus + self.databases = databases + self.replication = replication + self.source = source + self.target = target + self.throttling = throttling diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_object_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_object_info.py new file mode 100644 index 000000000000..9a63db308564 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_object_info.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbObjectInfo(Model): + """Describes a database or collection within a MongoDB data source. + + All required parameters must be populated in order to send to Azure. + + :param average_document_size: Required. The average document size, or -1 + if the average size is unknown + :type average_document_size: long + :param data_size: Required. The estimated total data size, in bytes, or -1 + if the size is unknown. + :type data_size: long + :param document_count: Required. The estimated total number of documents, + or -1 if the document count is unknown + :type document_count: long + :param name: Required. The unqualified name of the database or collection + :type name: str + :param qualified_name: Required. The qualified name of the database or + collection. For a collection, this is the database-qualified name. + :type qualified_name: str + """ + + _validation = { + 'average_document_size': {'required': True}, + 'data_size': {'required': True}, + 'document_count': {'required': True}, + 'name': {'required': True}, + 'qualified_name': {'required': True}, + } + + _attribute_map = { + 'average_document_size': {'key': 'averageDocumentSize', 'type': 'long'}, + 'data_size': {'key': 'dataSize', 'type': 'long'}, + 'document_count': {'key': 'documentCount', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MongoDbObjectInfo, self).__init__(**kwargs) + self.average_document_size = kwargs.get('average_document_size', None) + self.data_size = kwargs.get('data_size', None) + self.document_count = kwargs.get('document_count', None) + self.name = kwargs.get('name', None) + self.qualified_name = kwargs.get('qualified_name', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_object_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_object_info_py3.py new file mode 100644 index 000000000000..4efc616c9997 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_object_info_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbObjectInfo(Model): + """Describes a database or collection within a MongoDB data source. + + All required parameters must be populated in order to send to Azure. + + :param average_document_size: Required. The average document size, or -1 + if the average size is unknown + :type average_document_size: long + :param data_size: Required. The estimated total data size, in bytes, or -1 + if the size is unknown. + :type data_size: long + :param document_count: Required. The estimated total number of documents, + or -1 if the document count is unknown + :type document_count: long + :param name: Required. The unqualified name of the database or collection + :type name: str + :param qualified_name: Required. The qualified name of the database or + collection. For a collection, this is the database-qualified name. + :type qualified_name: str + """ + + _validation = { + 'average_document_size': {'required': True}, + 'data_size': {'required': True}, + 'document_count': {'required': True}, + 'name': {'required': True}, + 'qualified_name': {'required': True}, + } + + _attribute_map = { + 'average_document_size': {'key': 'averageDocumentSize', 'type': 'long'}, + 'data_size': {'key': 'dataSize', 'type': 'long'}, + 'document_count': {'key': 'documentCount', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + } + + def __init__(self, *, average_document_size: int, data_size: int, document_count: int, name: str, qualified_name: str, **kwargs) -> None: + super(MongoDbObjectInfo, self).__init__(**kwargs) + self.average_document_size = average_document_size + self.data_size = data_size + self.document_count = document_count + self.name = name + self.qualified_name = qualified_name diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_progress.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_progress.py new file mode 100644 index 000000000000..2ea6a350f76d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_progress.py @@ -0,0 +1,115 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbProgress(Model): + """Base class for MongoDB migration outputs. + + All required parameters must be populated in order to send to Azure. + + :param bytes_copied: Required. The number of document bytes copied during + the Copying stage + :type bytes_copied: long + :param documents_copied: Required. The number of documents copied during + the Copying stage + :type documents_copied: long + :param elapsed_time: Required. The elapsed time in the format + [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) + :type elapsed_time: str + :param errors: Required. The errors and warnings that have occurred for + the current object. The keys are the error codes. + :type errors: dict[str, ~azure.mgmt.datamigration.models.MongoDbError] + :param events_pending: Required. The number of oplog events awaiting + replay + :type events_pending: long + :param events_replayed: Required. The number of oplog events replayed so + far + :type events_replayed: long + :param last_event_time: The timestamp of the last oplog event received, or + null if no oplog event has been received yet + :type last_event_time: datetime + :param last_replay_time: The timestamp of the last oplog event replayed, + or null if no oplog event has been replayed yet + :type last_replay_time: datetime + :param name: The name of the progress object. For a collection, this is + the unqualified collection name. For a database, this is the database + name. For the overall migration, this is null. + :type name: str + :param qualified_name: The qualified name of the progress object. For a + collection, this is the database-qualified name. For a database, this is + the database name. For the overall migration, this is null. + :type qualified_name: str + :param result_type: Required. The type of progress object. Possible values + include: 'Migration', 'Database', 'Collection' + :type result_type: str or ~azure.mgmt.datamigration.models.enum + :param state: Required. Possible values include: 'NotStarted', + 'ValidatingInput', 'Initializing', 'Restarting', 'Copying', + 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', + 'Failed' + :type state: str or ~azure.mgmt.datamigration.models.MongoDbMigrationState + :param total_bytes: Required. The total number of document bytes on the + source at the beginning of the Copying stage, or -1 if the total size was + unknown + :type total_bytes: long + :param total_documents: Required. The total number of documents on the + source at the beginning of the Copying stage, or -1 if the total count was + unknown + :type total_documents: long + """ + + _validation = { + 'bytes_copied': {'required': True}, + 'documents_copied': {'required': True}, + 'elapsed_time': {'required': True}, + 'errors': {'required': True}, + 'events_pending': {'required': True}, + 'events_replayed': {'required': True}, + 'result_type': {'required': True}, + 'state': {'required': True}, + 'total_bytes': {'required': True}, + 'total_documents': {'required': True}, + } + + _attribute_map = { + 'bytes_copied': {'key': 'bytesCopied', 'type': 'long'}, + 'documents_copied': {'key': 'documentsCopied', 'type': 'long'}, + 'elapsed_time': {'key': 'elapsedTime', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '{MongoDbError}'}, + 'events_pending': {'key': 'eventsPending', 'type': 'long'}, + 'events_replayed': {'key': 'eventsReplayed', 'type': 'long'}, + 'last_event_time': {'key': 'lastEventTime', 'type': 'iso-8601'}, + 'last_replay_time': {'key': 'lastReplayTime', 'type': 'iso-8601'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_bytes': {'key': 'totalBytes', 'type': 'long'}, + 'total_documents': {'key': 'totalDocuments', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(MongoDbProgress, self).__init__(**kwargs) + self.bytes_copied = kwargs.get('bytes_copied', None) + self.documents_copied = kwargs.get('documents_copied', None) + self.elapsed_time = kwargs.get('elapsed_time', None) + self.errors = kwargs.get('errors', None) + self.events_pending = kwargs.get('events_pending', None) + self.events_replayed = kwargs.get('events_replayed', None) + self.last_event_time = kwargs.get('last_event_time', None) + self.last_replay_time = kwargs.get('last_replay_time', None) + self.name = kwargs.get('name', None) + self.qualified_name = kwargs.get('qualified_name', None) + self.result_type = kwargs.get('result_type', None) + self.state = kwargs.get('state', None) + self.total_bytes = kwargs.get('total_bytes', None) + self.total_documents = kwargs.get('total_documents', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_progress_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_progress_py3.py new file mode 100644 index 000000000000..ff70dcff00d4 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_progress_py3.py @@ -0,0 +1,115 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbProgress(Model): + """Base class for MongoDB migration outputs. + + All required parameters must be populated in order to send to Azure. + + :param bytes_copied: Required. The number of document bytes copied during + the Copying stage + :type bytes_copied: long + :param documents_copied: Required. The number of documents copied during + the Copying stage + :type documents_copied: long + :param elapsed_time: Required. The elapsed time in the format + [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) + :type elapsed_time: str + :param errors: Required. The errors and warnings that have occurred for + the current object. The keys are the error codes. + :type errors: dict[str, ~azure.mgmt.datamigration.models.MongoDbError] + :param events_pending: Required. The number of oplog events awaiting + replay + :type events_pending: long + :param events_replayed: Required. The number of oplog events replayed so + far + :type events_replayed: long + :param last_event_time: The timestamp of the last oplog event received, or + null if no oplog event has been received yet + :type last_event_time: datetime + :param last_replay_time: The timestamp of the last oplog event replayed, + or null if no oplog event has been replayed yet + :type last_replay_time: datetime + :param name: The name of the progress object. For a collection, this is + the unqualified collection name. For a database, this is the database + name. For the overall migration, this is null. + :type name: str + :param qualified_name: The qualified name of the progress object. For a + collection, this is the database-qualified name. For a database, this is + the database name. For the overall migration, this is null. + :type qualified_name: str + :param result_type: Required. The type of progress object. Possible values + include: 'Migration', 'Database', 'Collection' + :type result_type: str or ~azure.mgmt.datamigration.models.enum + :param state: Required. Possible values include: 'NotStarted', + 'ValidatingInput', 'Initializing', 'Restarting', 'Copying', + 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', + 'Failed' + :type state: str or ~azure.mgmt.datamigration.models.MongoDbMigrationState + :param total_bytes: Required. The total number of document bytes on the + source at the beginning of the Copying stage, or -1 if the total size was + unknown + :type total_bytes: long + :param total_documents: Required. The total number of documents on the + source at the beginning of the Copying stage, or -1 if the total count was + unknown + :type total_documents: long + """ + + _validation = { + 'bytes_copied': {'required': True}, + 'documents_copied': {'required': True}, + 'elapsed_time': {'required': True}, + 'errors': {'required': True}, + 'events_pending': {'required': True}, + 'events_replayed': {'required': True}, + 'result_type': {'required': True}, + 'state': {'required': True}, + 'total_bytes': {'required': True}, + 'total_documents': {'required': True}, + } + + _attribute_map = { + 'bytes_copied': {'key': 'bytesCopied', 'type': 'long'}, + 'documents_copied': {'key': 'documentsCopied', 'type': 'long'}, + 'elapsed_time': {'key': 'elapsedTime', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '{MongoDbError}'}, + 'events_pending': {'key': 'eventsPending', 'type': 'long'}, + 'events_replayed': {'key': 'eventsReplayed', 'type': 'long'}, + 'last_event_time': {'key': 'lastEventTime', 'type': 'iso-8601'}, + 'last_replay_time': {'key': 'lastReplayTime', 'type': 'iso-8601'}, + 'name': {'key': 'name', 'type': 'str'}, + 'qualified_name': {'key': 'qualifiedName', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'total_bytes': {'key': 'totalBytes', 'type': 'long'}, + 'total_documents': {'key': 'totalDocuments', 'type': 'long'}, + } + + def __init__(self, *, bytes_copied: int, documents_copied: int, elapsed_time: str, errors, events_pending: int, events_replayed: int, result_type, state, total_bytes: int, total_documents: int, last_event_time=None, last_replay_time=None, name: str=None, qualified_name: str=None, **kwargs) -> None: + super(MongoDbProgress, self).__init__(**kwargs) + self.bytes_copied = bytes_copied + self.documents_copied = documents_copied + self.elapsed_time = elapsed_time + self.errors = errors + self.events_pending = events_pending + self.events_replayed = events_replayed + self.last_event_time = last_event_time + self.last_replay_time = last_replay_time + self.name = name + self.qualified_name = qualified_name + self.result_type = result_type + self.state = state + self.total_bytes = total_bytes + self.total_documents = total_documents diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_restart_command.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_restart_command.py new file mode 100644 index 000000000000..bdd9ffd455fb --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_restart_command.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .command_properties import CommandProperties + + +class MongoDbRestartCommand(CommandProperties): + """Properties for the command that restarts a migration in whole or in part. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + :param input: Command input + :type input: ~azure.mgmt.datamigration.models.MongoDbCommandInput + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbCommandInput'}, + } + + def __init__(self, **kwargs): + super(MongoDbRestartCommand, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.command_type = 'restart' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_restart_command_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_restart_command_py3.py new file mode 100644 index 000000000000..4f61d3606e8e --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_restart_command_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .command_properties_py3 import CommandProperties + + +class MongoDbRestartCommand(CommandProperties): + """Properties for the command that restarts a migration in whole or in part. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the command. This is ignored if submitted. + Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', + 'Failed' + :vartype state: str or ~azure.mgmt.datamigration.models.CommandState + :param command_type: Required. Constant filled by server. + :type command_type: str + :param input: Command input + :type input: ~azure.mgmt.datamigration.models.MongoDbCommandInput + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'command_type': {'required': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'command_type': {'key': 'commandType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbCommandInput'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(MongoDbRestartCommand, self).__init__(**kwargs) + self.input = input + self.command_type = 'restart' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_field.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_field.py new file mode 100644 index 000000000000..f73dbda467ec --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_field.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbShardKeyField(Model): + """Describes a field reference within a MongoDB shard key. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the field + :type name: str + :param order: Required. The field ordering. Possible values include: + 'Forward', 'Reverse', 'Hashed' + :type order: str or ~azure.mgmt.datamigration.models.MongoDbShardKeyOrder + """ + + _validation = { + 'name': {'required': True}, + 'order': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'order': {'key': 'order', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MongoDbShardKeyField, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.order = kwargs.get('order', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_field_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_field_py3.py new file mode 100644 index 000000000000..12955a73ff02 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_field_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbShardKeyField(Model): + """Describes a field reference within a MongoDB shard key. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the field + :type name: str + :param order: Required. The field ordering. Possible values include: + 'Forward', 'Reverse', 'Hashed' + :type order: str or ~azure.mgmt.datamigration.models.MongoDbShardKeyOrder + """ + + _validation = { + 'name': {'required': True}, + 'order': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'order': {'key': 'order', 'type': 'str'}, + } + + def __init__(self, *, name: str, order, **kwargs) -> None: + super(MongoDbShardKeyField, self).__init__(**kwargs) + self.name = name + self.order = order diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_info.py new file mode 100644 index 000000000000..456d4c7db8bd --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_info.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbShardKeyInfo(Model): + """Describes a MongoDB shard key. + + All required parameters must be populated in order to send to Azure. + + :param fields: Required. The fields within the shard key + :type fields: list[~azure.mgmt.datamigration.models.MongoDbShardKeyField] + :param is_unique: Required. Whether the shard key is unique + :type is_unique: bool + """ + + _validation = { + 'fields': {'required': True}, + 'is_unique': {'required': True}, + } + + _attribute_map = { + 'fields': {'key': 'fields', 'type': '[MongoDbShardKeyField]'}, + 'is_unique': {'key': 'isUnique', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(MongoDbShardKeyInfo, self).__init__(**kwargs) + self.fields = kwargs.get('fields', None) + self.is_unique = kwargs.get('is_unique', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_info_py3.py new file mode 100644 index 000000000000..c8f8a53233da --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_info_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbShardKeyInfo(Model): + """Describes a MongoDB shard key. + + All required parameters must be populated in order to send to Azure. + + :param fields: Required. The fields within the shard key + :type fields: list[~azure.mgmt.datamigration.models.MongoDbShardKeyField] + :param is_unique: Required. Whether the shard key is unique + :type is_unique: bool + """ + + _validation = { + 'fields': {'required': True}, + 'is_unique': {'required': True}, + } + + _attribute_map = { + 'fields': {'key': 'fields', 'type': '[MongoDbShardKeyField]'}, + 'is_unique': {'key': 'isUnique', 'type': 'bool'}, + } + + def __init__(self, *, fields, is_unique: bool, **kwargs) -> None: + super(MongoDbShardKeyInfo, self).__init__(**kwargs) + self.fields = fields + self.is_unique = is_unique diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_setting.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_setting.py new file mode 100644 index 000000000000..d77546e97a4d --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_setting.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbShardKeySetting(Model): + """Describes a MongoDB shard key. + + All required parameters must be populated in order to send to Azure. + + :param fields: Required. The fields within the shard key + :type fields: list[~azure.mgmt.datamigration.models.MongoDbShardKeyField] + :param is_unique: Required. Whether the shard key is unique + :type is_unique: bool + """ + + _validation = { + 'fields': {'required': True}, + 'is_unique': {'required': True}, + } + + _attribute_map = { + 'fields': {'key': 'fields', 'type': '[MongoDbShardKeyField]'}, + 'is_unique': {'key': 'isUnique', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(MongoDbShardKeySetting, self).__init__(**kwargs) + self.fields = kwargs.get('fields', None) + self.is_unique = kwargs.get('is_unique', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_setting_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_setting_py3.py new file mode 100644 index 000000000000..13221f2812bb --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_shard_key_setting_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbShardKeySetting(Model): + """Describes a MongoDB shard key. + + All required parameters must be populated in order to send to Azure. + + :param fields: Required. The fields within the shard key + :type fields: list[~azure.mgmt.datamigration.models.MongoDbShardKeyField] + :param is_unique: Required. Whether the shard key is unique + :type is_unique: bool + """ + + _validation = { + 'fields': {'required': True}, + 'is_unique': {'required': True}, + } + + _attribute_map = { + 'fields': {'key': 'fields', 'type': '[MongoDbShardKeyField]'}, + 'is_unique': {'key': 'isUnique', 'type': 'bool'}, + } + + def __init__(self, *, fields, is_unique: bool, **kwargs) -> None: + super(MongoDbShardKeySetting, self).__init__(**kwargs) + self.fields = fields + self.is_unique = is_unique diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_throttling_settings.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_throttling_settings.py new file mode 100644 index 000000000000..d3f2541326a3 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_throttling_settings.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbThrottlingSettings(Model): + """Specifies resource limits for the migration. + + :param min_free_cpu: The percentage of CPU time that the migrator will try + to avoid using, from 0 to 100 + :type min_free_cpu: int + :param min_free_memory_mb: The number of megabytes of RAM that the + migrator will try to avoid using + :type min_free_memory_mb: int + :param max_parallelism: The maximum number of work items (e.g. collection + copies) that will be processed in parallel + :type max_parallelism: int + """ + + _attribute_map = { + 'min_free_cpu': {'key': 'minFreeCpu', 'type': 'int'}, + 'min_free_memory_mb': {'key': 'minFreeMemoryMb', 'type': 'int'}, + 'max_parallelism': {'key': 'maxParallelism', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(MongoDbThrottlingSettings, self).__init__(**kwargs) + self.min_free_cpu = kwargs.get('min_free_cpu', None) + self.min_free_memory_mb = kwargs.get('min_free_memory_mb', None) + self.max_parallelism = kwargs.get('max_parallelism', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_throttling_settings_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_throttling_settings_py3.py new file mode 100644 index 000000000000..e80d791f23d1 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/mongo_db_throttling_settings_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MongoDbThrottlingSettings(Model): + """Specifies resource limits for the migration. + + :param min_free_cpu: The percentage of CPU time that the migrator will try + to avoid using, from 0 to 100 + :type min_free_cpu: int + :param min_free_memory_mb: The number of megabytes of RAM that the + migrator will try to avoid using + :type min_free_memory_mb: int + :param max_parallelism: The maximum number of work items (e.g. collection + copies) that will be processed in parallel + :type max_parallelism: int + """ + + _attribute_map = { + 'min_free_cpu': {'key': 'minFreeCpu', 'type': 'int'}, + 'min_free_memory_mb': {'key': 'minFreeMemoryMb', 'type': 'int'}, + 'max_parallelism': {'key': 'maxParallelism', 'type': 'int'}, + } + + def __init__(self, *, min_free_cpu: int=None, min_free_memory_mb: int=None, max_parallelism: int=None, **kwargs) -> None: + super(MongoDbThrottlingSettings, self).__init__(**kwargs) + self.min_free_cpu = min_free_cpu + self.min_free_memory_mb = min_free_memory_mb + self.max_parallelism = max_parallelism diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/my_sql_connection_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/my_sql_connection_info.py new file mode 100644 index 000000000000..62d5661258aa --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/my_sql_connection_info.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .connection_info import ConnectionInfo + + +class MySqlConnectionInfo(ConnectionInfo): + """Information for connecting to MySQL server. + + All required parameters must be populated in order to send to Azure. + + :param user_name: User name + :type user_name: str + :param password: Password credential. + :type password: str + :param type: Required. Constant filled by server. + :type type: str + :param server_name: Required. Name of the server + :type server_name: str + :param port: Required. Port for Server + :type port: int + """ + + _validation = { + 'type': {'required': True}, + 'server_name': {'required': True}, + 'port': {'required': True}, + } + + _attribute_map = { + 'user_name': {'key': 'userName', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'server_name': {'key': 'serverName', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(MySqlConnectionInfo, self).__init__(**kwargs) + self.server_name = kwargs.get('server_name', None) + self.port = kwargs.get('port', None) + self.type = 'MySqlConnectionInfo' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/my_sql_connection_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/my_sql_connection_info_py3.py new file mode 100644 index 000000000000..2e8815c0dc6a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/my_sql_connection_info_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .connection_info_py3 import ConnectionInfo + + +class MySqlConnectionInfo(ConnectionInfo): + """Information for connecting to MySQL server. + + All required parameters must be populated in order to send to Azure. + + :param user_name: User name + :type user_name: str + :param password: Password credential. + :type password: str + :param type: Required. Constant filled by server. + :type type: str + :param server_name: Required. Name of the server + :type server_name: str + :param port: Required. Port for Server + :type port: int + """ + + _validation = { + 'type': {'required': True}, + 'server_name': {'required': True}, + 'port': {'required': True}, + } + + _attribute_map = { + 'user_name': {'key': 'userName', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'server_name': {'key': 'serverName', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, server_name: str, port: int, user_name: str=None, password: str=None, **kwargs) -> None: + super(MySqlConnectionInfo, self).__init__(user_name=user_name, password=password, **kwargs) + self.server_name = server_name + self.port = port + self.type = 'MySqlConnectionInfo' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/name_availability_response.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/name_availability_response.py index e37e9b0ea619..221f7b81e05c 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/name_availability_response.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/name_availability_response.py @@ -15,27 +15,18 @@ class NameAvailabilityResponse(Model): """Indicates whether a proposed resource name is available. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar name_available: If true, the name is valid and available. If false, + :param name_available: If true, the name is valid and available. If false, 'reason' describes why not. - :vartype name_available: bool - :ivar reason: The reason why the name is not available, if nameAvailable + :type name_available: bool + :param reason: The reason why the name is not available, if nameAvailable is false. Possible values include: 'AlreadyExists', 'Invalid' - :vartype reason: str or + :type reason: str or ~azure.mgmt.datamigration.models.NameCheckFailureReason - :ivar message: The localized reason why the name is not available, if + :param message: The localized reason why the name is not available, if nameAvailable is false - :vartype message: str + :type message: str """ - _validation = { - 'name_available': {'readonly': True}, - 'reason': {'readonly': True}, - 'message': {'readonly': True}, - } - _attribute_map = { 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, 'reason': {'key': 'reason', 'type': 'str'}, @@ -44,6 +35,6 @@ class NameAvailabilityResponse(Model): def __init__(self, **kwargs): super(NameAvailabilityResponse, self).__init__(**kwargs) - self.name_available = None - self.reason = None - self.message = None + self.name_available = kwargs.get('name_available', None) + self.reason = kwargs.get('reason', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/name_availability_response_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/name_availability_response_py3.py index 7a3e3429ef1f..2ab59490aa55 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/name_availability_response_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/name_availability_response_py3.py @@ -15,35 +15,26 @@ class NameAvailabilityResponse(Model): """Indicates whether a proposed resource name is available. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar name_available: If true, the name is valid and available. If false, + :param name_available: If true, the name is valid and available. If false, 'reason' describes why not. - :vartype name_available: bool - :ivar reason: The reason why the name is not available, if nameAvailable + :type name_available: bool + :param reason: The reason why the name is not available, if nameAvailable is false. Possible values include: 'AlreadyExists', 'Invalid' - :vartype reason: str or + :type reason: str or ~azure.mgmt.datamigration.models.NameCheckFailureReason - :ivar message: The localized reason why the name is not available, if + :param message: The localized reason why the name is not available, if nameAvailable is false - :vartype message: str + :type message: str """ - _validation = { - 'name_available': {'readonly': True}, - 'reason': {'readonly': True}, - 'message': {'readonly': True}, - } - _attribute_map = { 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, 'reason': {'key': 'reason', 'type': 'str'}, 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, name_available: bool=None, reason=None, message: str=None, **kwargs) -> None: super(NameAvailabilityResponse, self).__init__(**kwargs) - self.name_available = None - self.reason = None - self.message = None + self.name_available = name_available + self.reason = reason + self.message = message diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table.py new file mode 100644 index 000000000000..52a4ec40a9da --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NonSqlDataMigrationTable(Model): + """Defines metadata for table to be migrated. + + :param source_name: Source table name + :type source_name: str + """ + + _attribute_map = { + 'source_name': {'key': 'sourceName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NonSqlDataMigrationTable, self).__init__(**kwargs) + self.source_name = kwargs.get('source_name', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_py3.py new file mode 100644 index 000000000000..7f5d27b19e61 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NonSqlDataMigrationTable(Model): + """Defines metadata for table to be migrated. + + :param source_name: Source table name + :type source_name: str + """ + + _attribute_map = { + 'source_name': {'key': 'sourceName', 'type': 'str'}, + } + + def __init__(self, *, source_name: str=None, **kwargs) -> None: + super(NonSqlDataMigrationTable, self).__init__(**kwargs) + self.source_name = source_name diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_result.py new file mode 100644 index 000000000000..978ce97b4c2e --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_result.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NonSqlDataMigrationTableResult(Model): + """Object used to report the data migration results of a table. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar result_code: Result code of the data migration. Possible values + include: 'Initial', 'Completed', 'ObjectNotExistsInSource', + 'ObjectNotExistsInTarget', 'TargetObjectIsInaccessible', 'FatalError' + :vartype result_code: str or + ~azure.mgmt.datamigration.models.DataMigrationResultCode + :ivar source_name: Name of the source table + :vartype source_name: str + :ivar target_name: Name of the target table + :vartype target_name: str + :ivar source_row_count: Number of rows in the source table + :vartype source_row_count: long + :ivar target_row_count: Number of rows in the target table + :vartype target_row_count: long + :ivar elapsed_time_in_miliseconds: Time taken to migrate the data + :vartype elapsed_time_in_miliseconds: float + :ivar errors: List of errors, if any, during migration + :vartype errors: list[~azure.mgmt.datamigration.models.DataMigrationError] + """ + + _validation = { + 'result_code': {'readonly': True}, + 'source_name': {'readonly': True}, + 'target_name': {'readonly': True}, + 'source_row_count': {'readonly': True}, + 'target_row_count': {'readonly': True}, + 'elapsed_time_in_miliseconds': {'readonly': True}, + 'errors': {'readonly': True}, + } + + _attribute_map = { + 'result_code': {'key': 'resultCode', 'type': 'str'}, + 'source_name': {'key': 'sourceName', 'type': 'str'}, + 'target_name': {'key': 'targetName', 'type': 'str'}, + 'source_row_count': {'key': 'sourceRowCount', 'type': 'long'}, + 'target_row_count': {'key': 'targetRowCount', 'type': 'long'}, + 'elapsed_time_in_miliseconds': {'key': 'elapsedTimeInMiliseconds', 'type': 'float'}, + 'errors': {'key': 'errors', 'type': '[DataMigrationError]'}, + } + + def __init__(self, **kwargs): + super(NonSqlDataMigrationTableResult, self).__init__(**kwargs) + self.result_code = None + self.source_name = None + self.target_name = None + self.source_row_count = None + self.target_row_count = None + self.elapsed_time_in_miliseconds = None + self.errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_result_py3.py new file mode 100644 index 000000000000..5094fa96ee87 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_data_migration_table_result_py3.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NonSqlDataMigrationTableResult(Model): + """Object used to report the data migration results of a table. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar result_code: Result code of the data migration. Possible values + include: 'Initial', 'Completed', 'ObjectNotExistsInSource', + 'ObjectNotExistsInTarget', 'TargetObjectIsInaccessible', 'FatalError' + :vartype result_code: str or + ~azure.mgmt.datamigration.models.DataMigrationResultCode + :ivar source_name: Name of the source table + :vartype source_name: str + :ivar target_name: Name of the target table + :vartype target_name: str + :ivar source_row_count: Number of rows in the source table + :vartype source_row_count: long + :ivar target_row_count: Number of rows in the target table + :vartype target_row_count: long + :ivar elapsed_time_in_miliseconds: Time taken to migrate the data + :vartype elapsed_time_in_miliseconds: float + :ivar errors: List of errors, if any, during migration + :vartype errors: list[~azure.mgmt.datamigration.models.DataMigrationError] + """ + + _validation = { + 'result_code': {'readonly': True}, + 'source_name': {'readonly': True}, + 'target_name': {'readonly': True}, + 'source_row_count': {'readonly': True}, + 'target_row_count': {'readonly': True}, + 'elapsed_time_in_miliseconds': {'readonly': True}, + 'errors': {'readonly': True}, + } + + _attribute_map = { + 'result_code': {'key': 'resultCode', 'type': 'str'}, + 'source_name': {'key': 'sourceName', 'type': 'str'}, + 'target_name': {'key': 'targetName', 'type': 'str'}, + 'source_row_count': {'key': 'sourceRowCount', 'type': 'long'}, + 'target_row_count': {'key': 'targetRowCount', 'type': 'long'}, + 'elapsed_time_in_miliseconds': {'key': 'elapsedTimeInMiliseconds', 'type': 'float'}, + 'errors': {'key': 'errors', 'type': '[DataMigrationError]'}, + } + + def __init__(self, **kwargs) -> None: + super(NonSqlDataMigrationTableResult, self).__init__(**kwargs) + self.result_code = None + self.source_name = None + self.target_name = None + self.source_row_count = None + self.target_row_count = None + self.elapsed_time_in_miliseconds = None + self.errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_input.py new file mode 100644 index 000000000000..18779fc051d6 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_input.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NonSqlMigrationTaskInput(Model): + """Base class for non sql migration task input. + + All required parameters must be populated in order to send to Azure. + + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_database_name: Required. Target database name + :type target_database_name: str + :param project_name: Required. Name of the migration project + :type project_name: str + :param project_location: Required. A URL that points to the drop location + to access project artifacts + :type project_location: str + :param selected_tables: Required. Metadata of the tables selected for + migration + :type selected_tables: + list[~azure.mgmt.datamigration.models.NonSqlDataMigrationTable] + """ + + _validation = { + 'target_connection_info': {'required': True}, + 'target_database_name': {'required': True}, + 'project_name': {'required': True}, + 'project_location': {'required': True}, + 'selected_tables': {'required': True}, + } + + _attribute_map = { + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'project_name': {'key': 'projectName', 'type': 'str'}, + 'project_location': {'key': 'projectLocation', 'type': 'str'}, + 'selected_tables': {'key': 'selectedTables', 'type': '[NonSqlDataMigrationTable]'}, + } + + def __init__(self, **kwargs): + super(NonSqlMigrationTaskInput, self).__init__(**kwargs) + self.target_connection_info = kwargs.get('target_connection_info', None) + self.target_database_name = kwargs.get('target_database_name', None) + self.project_name = kwargs.get('project_name', None) + self.project_location = kwargs.get('project_location', None) + self.selected_tables = kwargs.get('selected_tables', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_input_py3.py new file mode 100644 index 000000000000..71abb362f727 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_input_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NonSqlMigrationTaskInput(Model): + """Base class for non sql migration task input. + + All required parameters must be populated in order to send to Azure. + + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_database_name: Required. Target database name + :type target_database_name: str + :param project_name: Required. Name of the migration project + :type project_name: str + :param project_location: Required. A URL that points to the drop location + to access project artifacts + :type project_location: str + :param selected_tables: Required. Metadata of the tables selected for + migration + :type selected_tables: + list[~azure.mgmt.datamigration.models.NonSqlDataMigrationTable] + """ + + _validation = { + 'target_connection_info': {'required': True}, + 'target_database_name': {'required': True}, + 'project_name': {'required': True}, + 'project_location': {'required': True}, + 'selected_tables': {'required': True}, + } + + _attribute_map = { + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_database_name': {'key': 'targetDatabaseName', 'type': 'str'}, + 'project_name': {'key': 'projectName', 'type': 'str'}, + 'project_location': {'key': 'projectLocation', 'type': 'str'}, + 'selected_tables': {'key': 'selectedTables', 'type': '[NonSqlDataMigrationTable]'}, + } + + def __init__(self, *, target_connection_info, target_database_name: str, project_name: str, project_location: str, selected_tables, **kwargs) -> None: + super(NonSqlMigrationTaskInput, self).__init__(**kwargs) + self.target_connection_info = target_connection_info + self.target_database_name = target_database_name + self.project_name = project_name + self.project_location = project_location + self.selected_tables = selected_tables diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_output.py new file mode 100644 index 000000000000..e87f50fa47ab --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_output.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NonSqlMigrationTaskOutput(Model): + """Base class for non sql migration task output. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar status: Current state of migration. Possible values include: + 'Default', 'Connecting', 'SourceAndTargetSelected', 'SelectLogins', + 'Configured', 'Running', 'Error', 'Stopped', 'Completed', + 'CompletedWithWarnings' + :vartype status: str or ~azure.mgmt.datamigration.models.MigrationStatus + :ivar data_migration_table_results: Results of the migration. The key + contains the table name and the value the table result object + :vartype data_migration_table_results: dict[str, + ~azure.mgmt.datamigration.models.NonSqlDataMigrationTableResult] + :ivar progress_message: Message about the progress of the migration + :vartype progress_message: str + :ivar source_server_name: Name of source server + :vartype source_server_name: str + :ivar target_server_name: Name of target server + :vartype target_server_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'status': {'readonly': True}, + 'data_migration_table_results': {'readonly': True}, + 'progress_message': {'readonly': True}, + 'source_server_name': {'readonly': True}, + 'target_server_name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'status': {'key': 'status', 'type': 'str'}, + 'data_migration_table_results': {'key': 'dataMigrationTableResults', 'type': '{NonSqlDataMigrationTableResult}'}, + 'progress_message': {'key': 'progressMessage', 'type': 'str'}, + 'source_server_name': {'key': 'sourceServerName', 'type': 'str'}, + 'target_server_name': {'key': 'targetServerName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NonSqlMigrationTaskOutput, self).__init__(**kwargs) + self.id = None + self.started_on = None + self.ended_on = None + self.status = None + self.data_migration_table_results = None + self.progress_message = None + self.source_server_name = None + self.target_server_name = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_output_py3.py new file mode 100644 index 000000000000..368bd6fddca2 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/non_sql_migration_task_output_py3.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NonSqlMigrationTaskOutput(Model): + """Base class for non sql migration task output. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar started_on: Migration start time + :vartype started_on: datetime + :ivar ended_on: Migration end time + :vartype ended_on: datetime + :ivar status: Current state of migration. Possible values include: + 'Default', 'Connecting', 'SourceAndTargetSelected', 'SelectLogins', + 'Configured', 'Running', 'Error', 'Stopped', 'Completed', + 'CompletedWithWarnings' + :vartype status: str or ~azure.mgmt.datamigration.models.MigrationStatus + :ivar data_migration_table_results: Results of the migration. The key + contains the table name and the value the table result object + :vartype data_migration_table_results: dict[str, + ~azure.mgmt.datamigration.models.NonSqlDataMigrationTableResult] + :ivar progress_message: Message about the progress of the migration + :vartype progress_message: str + :ivar source_server_name: Name of source server + :vartype source_server_name: str + :ivar target_server_name: Name of target server + :vartype target_server_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'started_on': {'readonly': True}, + 'ended_on': {'readonly': True}, + 'status': {'readonly': True}, + 'data_migration_table_results': {'readonly': True}, + 'progress_message': {'readonly': True}, + 'source_server_name': {'readonly': True}, + 'target_server_name': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'started_on': {'key': 'startedOn', 'type': 'iso-8601'}, + 'ended_on': {'key': 'endedOn', 'type': 'iso-8601'}, + 'status': {'key': 'status', 'type': 'str'}, + 'data_migration_table_results': {'key': 'dataMigrationTableResults', 'type': '{NonSqlDataMigrationTableResult}'}, + 'progress_message': {'key': 'progressMessage', 'type': 'str'}, + 'source_server_name': {'key': 'sourceServerName', 'type': 'str'}, + 'target_server_name': {'key': 'targetServerName', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(NonSqlMigrationTaskOutput, self).__init__(**kwargs) + self.id = None + self.started_on = None + self.ended_on = None + self.status = None + self.data_migration_table_results = None + self.progress_message = None + self.source_server_name = None + self.target_server_name = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/odata_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/odata_error.py index 6a56c520f2bb..2a35761e0ea5 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/odata_error.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/odata_error.py @@ -15,24 +15,15 @@ class ODataError(Model): """Error information in OData format. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar code: The machine-readable description of the error, such as + :param code: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError' - :vartype code: str - :ivar message: The human-readable description of the error - :vartype message: str - :ivar details: Inner errors that caused this error - :vartype details: list[~azure.mgmt.datamigration.models.ODataError] + :type code: str + :param message: The human-readable description of the error + :type message: str + :param details: Inner errors that caused this error + :type details: list[~azure.mgmt.datamigration.models.ODataError] """ - _validation = { - 'code': {'readonly': True}, - 'message': {'readonly': True}, - 'details': {'readonly': True}, - } - _attribute_map = { 'code': {'key': 'code', 'type': 'str'}, 'message': {'key': 'message', 'type': 'str'}, @@ -41,6 +32,6 @@ class ODataError(Model): def __init__(self, **kwargs): super(ODataError, self).__init__(**kwargs) - self.code = None - self.message = None - self.details = None + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.details = kwargs.get('details', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/odata_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/odata_error_py3.py index fa6ab9d577cf..c5cdfe626026 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/odata_error_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/odata_error_py3.py @@ -15,32 +15,23 @@ class ODataError(Model): """Error information in OData format. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar code: The machine-readable description of the error, such as + :param code: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError' - :vartype code: str - :ivar message: The human-readable description of the error - :vartype message: str - :ivar details: Inner errors that caused this error - :vartype details: list[~azure.mgmt.datamigration.models.ODataError] + :type code: str + :param message: The human-readable description of the error + :type message: str + :param details: Inner errors that caused this error + :type details: list[~azure.mgmt.datamigration.models.ODataError] """ - _validation = { - 'code': {'readonly': True}, - 'message': {'readonly': True}, - 'details': {'readonly': True}, - } - _attribute_map = { 'code': {'key': 'code', 'type': 'str'}, 'message': {'key': 'message', 'type': 'str'}, 'details': {'key': 'details', 'type': '[ODataError]'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, code: str=None, message: str=None, details=None, **kwargs) -> None: super(ODataError, self).__init__(**kwargs) - self.code = None - self.message = None - self.details = None + self.code = code + self.message = message + self.details = details diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/postgre_sql_connection_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/postgre_sql_connection_info.py new file mode 100644 index 000000000000..0752415fddbf --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/postgre_sql_connection_info.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .connection_info import ConnectionInfo + + +class PostgreSqlConnectionInfo(ConnectionInfo): + """Information for connecting to PostgreSQL server. + + All required parameters must be populated in order to send to Azure. + + :param user_name: User name + :type user_name: str + :param password: Password credential. + :type password: str + :param type: Required. Constant filled by server. + :type type: str + :param server_name: Required. Name of the server + :type server_name: str + :param database_name: Name of the database + :type database_name: str + :param port: Required. Port for Server + :type port: int + """ + + _validation = { + 'type': {'required': True}, + 'server_name': {'required': True}, + 'port': {'required': True}, + } + + _attribute_map = { + 'user_name': {'key': 'userName', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'server_name': {'key': 'serverName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(PostgreSqlConnectionInfo, self).__init__(**kwargs) + self.server_name = kwargs.get('server_name', None) + self.database_name = kwargs.get('database_name', None) + self.port = kwargs.get('port', None) + self.type = 'PostgreSqlConnectionInfo' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/postgre_sql_connection_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/postgre_sql_connection_info_py3.py new file mode 100644 index 000000000000..d151e4a2a2aa --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/postgre_sql_connection_info_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .connection_info_py3 import ConnectionInfo + + +class PostgreSqlConnectionInfo(ConnectionInfo): + """Information for connecting to PostgreSQL server. + + All required parameters must be populated in order to send to Azure. + + :param user_name: User name + :type user_name: str + :param password: Password credential. + :type password: str + :param type: Required. Constant filled by server. + :type type: str + :param server_name: Required. Name of the server + :type server_name: str + :param database_name: Name of the database + :type database_name: str + :param port: Required. Port for Server + :type port: int + """ + + _validation = { + 'type': {'required': True}, + 'server_name': {'required': True}, + 'port': {'required': True}, + } + + _attribute_map = { + 'user_name': {'key': 'userName', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'server_name': {'key': 'serverName', 'type': 'str'}, + 'database_name': {'key': 'databaseName', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, server_name: str, port: int, user_name: str=None, password: str=None, database_name: str=None, **kwargs) -> None: + super(PostgreSqlConnectionInfo, self).__init__(user_name=user_name, password=password, **kwargs) + self.server_name = server_name + self.database_name = database_name + self.port = port + self.type = 'PostgreSqlConnectionInfo' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project.py index ad75f31100eb..32952b8ae734 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project.py @@ -31,11 +31,13 @@ class Project(TrackedResource): :param location: Required. Resource location. :type location: str :param source_platform: Required. Source platform for the project. - Possible values include: 'SQL', 'Unknown' + Possible values include: 'SQL', 'MySQL', 'PostgreSql', 'MongoDb', + 'Unknown' :type source_platform: str or ~azure.mgmt.datamigration.models.ProjectSourcePlatform :param target_platform: Required. Target platform for the project. - Possible values include: 'SQLDB', 'Unknown' + Possible values include: 'SQLDB', 'SQLMI', 'AzureDbForMySql', + 'AzureDbForPostgreSql', 'MongoDb', 'Unknown' :type target_platform: str or ~azure.mgmt.datamigration.models.ProjectTargetPlatform :ivar creation_time: UTC Date and time when project was created diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file.py new file mode 100644 index 000000000000..4375bd149b20 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ProjectFile(Resource): + """A file resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param etag: HTTP strong entity tag value. This is ignored if submitted. + :type etag: str + :param properties: Custom file properties + :type properties: ~azure.mgmt.datamigration.models.ProjectFileProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'ProjectFileProperties'}, + } + + def __init__(self, **kwargs): + super(ProjectFile, self).__init__(**kwargs) + self.etag = kwargs.get('etag', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_paged.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_paged.py new file mode 100644 index 000000000000..05b7153634e8 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ProjectFilePaged(Paged): + """ + A paging container for iterating over a list of :class:`ProjectFile ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ProjectFile]'} + } + + def __init__(self, *args, **kwargs): + + super(ProjectFilePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_properties.py new file mode 100644 index 000000000000..1321ae12f150 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_properties.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProjectFileProperties(Model): + """Base class for file properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param extension: Optional File extension. If submitted it should not have + a leading period and must match the extension from filePath. + :type extension: str + :param file_path: Relative path of this file resource. This property can + be set when creating or updating the file resource. + :type file_path: str + :ivar last_modified: Modification DateTime. + :vartype last_modified: datetime + :param media_type: File content type. This propery can be modified to + reflect the file content type. + :type media_type: str + :ivar size: File size. + :vartype size: long + """ + + _validation = { + 'last_modified': {'readonly': True}, + 'size': {'readonly': True}, + } + + _attribute_map = { + 'extension': {'key': 'extension', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'media_type': {'key': 'mediaType', 'type': 'str'}, + 'size': {'key': 'size', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(ProjectFileProperties, self).__init__(**kwargs) + self.extension = kwargs.get('extension', None) + self.file_path = kwargs.get('file_path', None) + self.last_modified = None + self.media_type = kwargs.get('media_type', None) + self.size = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_properties_py3.py new file mode 100644 index 000000000000..f7250920aa8c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_properties_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProjectFileProperties(Model): + """Base class for file properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param extension: Optional File extension. If submitted it should not have + a leading period and must match the extension from filePath. + :type extension: str + :param file_path: Relative path of this file resource. This property can + be set when creating or updating the file resource. + :type file_path: str + :ivar last_modified: Modification DateTime. + :vartype last_modified: datetime + :param media_type: File content type. This propery can be modified to + reflect the file content type. + :type media_type: str + :ivar size: File size. + :vartype size: long + """ + + _validation = { + 'last_modified': {'readonly': True}, + 'size': {'readonly': True}, + } + + _attribute_map = { + 'extension': {'key': 'extension', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'media_type': {'key': 'mediaType', 'type': 'str'}, + 'size': {'key': 'size', 'type': 'long'}, + } + + def __init__(self, *, extension: str=None, file_path: str=None, media_type: str=None, **kwargs) -> None: + super(ProjectFileProperties, self).__init__(**kwargs) + self.extension = extension + self.file_path = file_path + self.last_modified = None + self.media_type = media_type + self.size = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_py3.py new file mode 100644 index 000000000000..16df2bac54c4 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_file_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ProjectFile(Resource): + """A file resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param etag: HTTP strong entity tag value. This is ignored if submitted. + :type etag: str + :param properties: Custom file properties + :type properties: ~azure.mgmt.datamigration.models.ProjectFileProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'ProjectFileProperties'}, + } + + def __init__(self, *, etag: str=None, properties=None, **kwargs) -> None: + super(ProjectFile, self).__init__(**kwargs) + self.etag = etag + self.properties = properties diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_py3.py index 4c9ab4674b1d..0030ce2627f8 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_py3.py @@ -31,11 +31,13 @@ class Project(TrackedResource): :param location: Required. Resource location. :type location: str :param source_platform: Required. Source platform for the project. - Possible values include: 'SQL', 'Unknown' + Possible values include: 'SQL', 'MySQL', 'PostgreSql', 'MongoDb', + 'Unknown' :type source_platform: str or ~azure.mgmt.datamigration.models.ProjectSourcePlatform :param target_platform: Required. Target platform for the project. - Possible values include: 'SQLDB', 'Unknown' + Possible values include: 'SQLDB', 'SQLMI', 'AzureDbForMySql', + 'AzureDbForPostgreSql', 'MongoDb', 'Unknown' :type target_platform: str or ~azure.mgmt.datamigration.models.ProjectTargetPlatform :ivar creation_time: UTC Date and time when project was created diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_task_properties.py index fc353d371570..4cd809b81b17 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_task_properties.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_task_properties.py @@ -17,42 +17,62 @@ class ProjectTaskProperties(Model): by current client, this object is returned. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: MigrateSqlServerSqlDbTaskProperties, - GetUserTablesSqlTaskProperties, ConnectToTargetSqlDbTaskProperties, - ConnectToSourceSqlServerTaskProperties + sub-classes are: GetTdeCertificatesSqlTaskProperties, + ValidateMongoDbTaskProperties, + ValidateMigrationInputSqlServerSqlMITaskProperties, + ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, + MigrateMySqlAzureDbForMySqlSyncTaskProperties, + MigrateSqlServerSqlDbSyncTaskProperties, + MigrateSqlServerSqlDbTaskProperties, MigrateSqlServerSqlMITaskProperties, + MigrateMongoDbTaskProperties, ConnectToTargetAzureDbForMySqlTaskProperties, + ConnectToTargetSqlMITaskProperties, GetUserTablesSqlSyncTaskProperties, + GetUserTablesSqlTaskProperties, ConnectToTargetSqlSqlDbSyncTaskProperties, + ConnectToTargetSqlDbTaskProperties, + ConnectToSourceSqlServerSyncTaskProperties, + ConnectToSourceSqlServerTaskProperties, ConnectToMongoDbTaskProperties, + ConnectToSourceMySqlTaskProperties, + MigrateSchemaSqlServerSqlDbTaskProperties 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 errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, } _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, } _subtype_map = { - 'task_type': {'Migrate.SqlServer.SqlDb': 'MigrateSqlServerSqlDbTaskProperties', 'GetUserTables.Sql': 'GetUserTablesSqlTaskProperties', 'ConnectToTarget.SqlDb': 'ConnectToTargetSqlDbTaskProperties', 'ConnectToSource.SqlServer': 'ConnectToSourceSqlServerTaskProperties'} + 'task_type': {'GetTDECertificates.Sql': 'GetTdeCertificatesSqlTaskProperties', 'Validate.MongoDb': 'ValidateMongoDbTaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI': 'ValidateMigrationInputSqlServerSqlMITaskProperties', 'ValidateMigrationInput.SqlServer.SqlDb.Sync': 'ValidateMigrationInputSqlServerSqlDbSyncTaskProperties', 'Migrate.PostgreSql.AzureDbForPostgreSql.Sync': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.MySql.AzureDbForMySql.Sync': 'MigrateMySqlAzureDbForMySqlSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDb.Sync': 'MigrateSqlServerSqlDbSyncTaskProperties', 'Migrate.SqlServer.SqlDb': 'MigrateSqlServerSqlDbTaskProperties', 'Migrate.SqlServer.AzureSqlDbMI': 'MigrateSqlServerSqlMITaskProperties', 'Migrate.MongoDb': 'MigrateMongoDbTaskProperties', 'ConnectToTarget.AzureDbForMySql': 'ConnectToTargetAzureDbForMySqlTaskProperties', 'ConnectToTarget.AzureSqlDbMI': 'ConnectToTargetSqlMITaskProperties', 'GetUserTables.AzureSqlDb.Sync': 'GetUserTablesSqlSyncTaskProperties', 'GetUserTables.Sql': 'GetUserTablesSqlTaskProperties', 'ConnectToTarget.SqlDb.Sync': 'ConnectToTargetSqlSqlDbSyncTaskProperties', 'ConnectToTarget.SqlDb': 'ConnectToTargetSqlDbTaskProperties', 'ConnectToSource.SqlServer.Sync': 'ConnectToSourceSqlServerSyncTaskProperties', 'ConnectToSource.SqlServer': 'ConnectToSourceSqlServerTaskProperties', 'Connect.MongoDb': 'ConnectToMongoDbTaskProperties', 'ConnectToSource.MySql': 'ConnectToSourceMySqlTaskProperties', 'MigrateSchemaSqlServerSqlDb': 'MigrateSchemaSqlServerSqlDbTaskProperties'} } def __init__(self, **kwargs): super(ProjectTaskProperties, self).__init__(**kwargs) - self.errors = kwargs.get('errors', None) + self.errors = None self.state = None + self.commands = None self.task_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_task_properties_py3.py index e9d89aa108ca..7bee86ae6e56 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_task_properties_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/project_task_properties_py3.py @@ -17,42 +17,62 @@ class ProjectTaskProperties(Model): by current client, this object is returned. You probably want to use the sub-classes and not this class directly. Known - sub-classes are: MigrateSqlServerSqlDbTaskProperties, - GetUserTablesSqlTaskProperties, ConnectToTargetSqlDbTaskProperties, - ConnectToSourceSqlServerTaskProperties + sub-classes are: GetTdeCertificatesSqlTaskProperties, + ValidateMongoDbTaskProperties, + ValidateMigrationInputSqlServerSqlMITaskProperties, + ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, + MigrateMySqlAzureDbForMySqlSyncTaskProperties, + MigrateSqlServerSqlDbSyncTaskProperties, + MigrateSqlServerSqlDbTaskProperties, MigrateSqlServerSqlMITaskProperties, + MigrateMongoDbTaskProperties, ConnectToTargetAzureDbForMySqlTaskProperties, + ConnectToTargetSqlMITaskProperties, GetUserTablesSqlSyncTaskProperties, + GetUserTablesSqlTaskProperties, ConnectToTargetSqlSqlDbSyncTaskProperties, + ConnectToTargetSqlDbTaskProperties, + ConnectToSourceSqlServerSyncTaskProperties, + ConnectToSourceSqlServerTaskProperties, ConnectToMongoDbTaskProperties, + ConnectToSourceMySqlTaskProperties, + MigrateSchemaSqlServerSqlDbTaskProperties 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 errors: Array of errors. This is ignored if submitted. - :type errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] :ivar state: The state of the task. This is ignored if submitted. Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] :param task_type: Required. Constant filled by server. :type task_type: str """ _validation = { + 'errors': {'readonly': True}, 'state': {'readonly': True}, + 'commands': {'readonly': True}, 'task_type': {'required': True}, } _attribute_map = { 'errors': {'key': 'errors', 'type': '[ODataError]'}, 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, 'task_type': {'key': 'taskType', 'type': 'str'}, } _subtype_map = { - 'task_type': {'Migrate.SqlServer.SqlDb': 'MigrateSqlServerSqlDbTaskProperties', 'GetUserTables.Sql': 'GetUserTablesSqlTaskProperties', 'ConnectToTarget.SqlDb': 'ConnectToTargetSqlDbTaskProperties', 'ConnectToSource.SqlServer': 'ConnectToSourceSqlServerTaskProperties'} + 'task_type': {'GetTDECertificates.Sql': 'GetTdeCertificatesSqlTaskProperties', 'Validate.MongoDb': 'ValidateMongoDbTaskProperties', 'ValidateMigrationInput.SqlServer.AzureSqlDbMI': 'ValidateMigrationInputSqlServerSqlMITaskProperties', 'ValidateMigrationInput.SqlServer.SqlDb.Sync': 'ValidateMigrationInputSqlServerSqlDbSyncTaskProperties', 'Migrate.PostgreSql.AzureDbForPostgreSql.Sync': 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties', 'Migrate.MySql.AzureDbForMySql.Sync': 'MigrateMySqlAzureDbForMySqlSyncTaskProperties', 'Migrate.SqlServer.AzureSqlDb.Sync': 'MigrateSqlServerSqlDbSyncTaskProperties', 'Migrate.SqlServer.SqlDb': 'MigrateSqlServerSqlDbTaskProperties', 'Migrate.SqlServer.AzureSqlDbMI': 'MigrateSqlServerSqlMITaskProperties', 'Migrate.MongoDb': 'MigrateMongoDbTaskProperties', 'ConnectToTarget.AzureDbForMySql': 'ConnectToTargetAzureDbForMySqlTaskProperties', 'ConnectToTarget.AzureSqlDbMI': 'ConnectToTargetSqlMITaskProperties', 'GetUserTables.AzureSqlDb.Sync': 'GetUserTablesSqlSyncTaskProperties', 'GetUserTables.Sql': 'GetUserTablesSqlTaskProperties', 'ConnectToTarget.SqlDb.Sync': 'ConnectToTargetSqlSqlDbSyncTaskProperties', 'ConnectToTarget.SqlDb': 'ConnectToTargetSqlDbTaskProperties', 'ConnectToSource.SqlServer.Sync': 'ConnectToSourceSqlServerSyncTaskProperties', 'ConnectToSource.SqlServer': 'ConnectToSourceSqlServerTaskProperties', 'Connect.MongoDb': 'ConnectToMongoDbTaskProperties', 'ConnectToSource.MySql': 'ConnectToSourceMySqlTaskProperties', 'MigrateSchemaSqlServerSqlDb': 'MigrateSchemaSqlServerSqlDbTaskProperties'} } - def __init__(self, *, errors=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(ProjectTaskProperties, self).__init__(**kwargs) - self.errors = errors + self.errors = None self.state = None + self.commands = None self.task_type = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_analysis_validation_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_analysis_validation_result.py index d424fa61efbc..07b83e757fdc 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_analysis_validation_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_analysis_validation_result.py @@ -15,23 +15,13 @@ class QueryAnalysisValidationResult(Model): """Results for query analysis comparison between the source and target. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar query_results: List of queries executed and it's execution results + :param query_results: List of queries executed and it's execution results in source and target - :vartype query_results: - ~azure.mgmt.datamigration.models.QueryExecutionResult - :ivar validation_errors: Errors that are part of the execution - :vartype validation_errors: - ~azure.mgmt.datamigration.models.ValidationError + :type query_results: ~azure.mgmt.datamigration.models.QueryExecutionResult + :param validation_errors: Errors that are part of the execution + :type validation_errors: ~azure.mgmt.datamigration.models.ValidationError """ - _validation = { - 'query_results': {'readonly': True}, - 'validation_errors': {'readonly': True}, - } - _attribute_map = { 'query_results': {'key': 'queryResults', 'type': 'QueryExecutionResult'}, 'validation_errors': {'key': 'validationErrors', 'type': 'ValidationError'}, @@ -39,5 +29,5 @@ class QueryAnalysisValidationResult(Model): def __init__(self, **kwargs): super(QueryAnalysisValidationResult, self).__init__(**kwargs) - self.query_results = None - self.validation_errors = None + self.query_results = kwargs.get('query_results', None) + self.validation_errors = kwargs.get('validation_errors', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_analysis_validation_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_analysis_validation_result_py3.py index 6f259ed6f776..ba46bf53513b 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_analysis_validation_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_analysis_validation_result_py3.py @@ -15,29 +15,19 @@ class QueryAnalysisValidationResult(Model): """Results for query analysis comparison between the source and target. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar query_results: List of queries executed and it's execution results + :param query_results: List of queries executed and it's execution results in source and target - :vartype query_results: - ~azure.mgmt.datamigration.models.QueryExecutionResult - :ivar validation_errors: Errors that are part of the execution - :vartype validation_errors: - ~azure.mgmt.datamigration.models.ValidationError + :type query_results: ~azure.mgmt.datamigration.models.QueryExecutionResult + :param validation_errors: Errors that are part of the execution + :type validation_errors: ~azure.mgmt.datamigration.models.ValidationError """ - _validation = { - 'query_results': {'readonly': True}, - 'validation_errors': {'readonly': True}, - } - _attribute_map = { 'query_results': {'key': 'queryResults', 'type': 'QueryExecutionResult'}, 'validation_errors': {'key': 'validationErrors', 'type': 'ValidationError'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, query_results=None, validation_errors=None, **kwargs) -> None: super(QueryAnalysisValidationResult, self).__init__(**kwargs) - self.query_results = None - self.validation_errors = None + self.query_results = query_results + self.validation_errors = validation_errors diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_execution_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_execution_result.py index 726c9fc2a5c8..eb9d1f20ded4 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_execution_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_execution_result.py @@ -15,28 +15,16 @@ class QueryExecutionResult(Model): """Describes query analysis results for execution in source and target. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar query_text: Query text retrieved from the source server - :vartype query_text: str - :ivar statements_in_batch: Total no. of statements in the batch - :vartype statements_in_batch: long - :ivar source_result: Query analysis result from the source - :vartype source_result: - ~azure.mgmt.datamigration.models.ExecutionStatistics - :ivar target_result: Query analysis result from the target - :vartype target_result: - ~azure.mgmt.datamigration.models.ExecutionStatistics + :param query_text: Query text retrieved from the source server + :type query_text: str + :param statements_in_batch: Total no. of statements in the batch + :type statements_in_batch: long + :param source_result: Query analysis result from the source + :type source_result: ~azure.mgmt.datamigration.models.ExecutionStatistics + :param target_result: Query analysis result from the target + :type target_result: ~azure.mgmt.datamigration.models.ExecutionStatistics """ - _validation = { - 'query_text': {'readonly': True}, - 'statements_in_batch': {'readonly': True}, - 'source_result': {'readonly': True}, - 'target_result': {'readonly': True}, - } - _attribute_map = { 'query_text': {'key': 'queryText', 'type': 'str'}, 'statements_in_batch': {'key': 'statementsInBatch', 'type': 'long'}, @@ -46,7 +34,7 @@ class QueryExecutionResult(Model): def __init__(self, **kwargs): super(QueryExecutionResult, self).__init__(**kwargs) - self.query_text = None - self.statements_in_batch = None - self.source_result = None - self.target_result = None + self.query_text = kwargs.get('query_text', None) + self.statements_in_batch = kwargs.get('statements_in_batch', None) + self.source_result = kwargs.get('source_result', None) + self.target_result = kwargs.get('target_result', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_execution_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_execution_result_py3.py index 3e9bf67bf54c..129ddb35d62a 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_execution_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/query_execution_result_py3.py @@ -15,28 +15,16 @@ class QueryExecutionResult(Model): """Describes query analysis results for execution in source and target. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar query_text: Query text retrieved from the source server - :vartype query_text: str - :ivar statements_in_batch: Total no. of statements in the batch - :vartype statements_in_batch: long - :ivar source_result: Query analysis result from the source - :vartype source_result: - ~azure.mgmt.datamigration.models.ExecutionStatistics - :ivar target_result: Query analysis result from the target - :vartype target_result: - ~azure.mgmt.datamigration.models.ExecutionStatistics + :param query_text: Query text retrieved from the source server + :type query_text: str + :param statements_in_batch: Total no. of statements in the batch + :type statements_in_batch: long + :param source_result: Query analysis result from the source + :type source_result: ~azure.mgmt.datamigration.models.ExecutionStatistics + :param target_result: Query analysis result from the target + :type target_result: ~azure.mgmt.datamigration.models.ExecutionStatistics """ - _validation = { - 'query_text': {'readonly': True}, - 'statements_in_batch': {'readonly': True}, - 'source_result': {'readonly': True}, - 'target_result': {'readonly': True}, - } - _attribute_map = { 'query_text': {'key': 'queryText', 'type': 'str'}, 'statements_in_batch': {'key': 'statementsInBatch', 'type': 'long'}, @@ -44,9 +32,9 @@ class QueryExecutionResult(Model): 'target_result': {'key': 'targetResult', 'type': 'ExecutionStatistics'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, query_text: str=None, statements_in_batch: int=None, source_result=None, target_result=None, **kwargs) -> None: super(QueryExecutionResult, self).__init__(**kwargs) - self.query_text = None - self.statements_in_batch = None - self.source_result = None - self.target_result = None + self.query_text = query_text + self.statements_in_batch = statements_in_batch + self.source_result = source_result + self.target_result = target_result diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/reportable_exception.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/reportable_exception.py index f5d3b861de4c..2fd4ca85dc99 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/reportable_exception.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/reportable_exception.py @@ -15,32 +15,24 @@ class ReportableException(Model): """Exception object for all custom exceptions. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar message: Error message - :vartype message: str - :ivar file_path: The path to the file where exception occurred - :vartype file_path: str - :ivar line_number: The line number where exception occurred - :vartype line_number: str - :ivar h_result: Coded numerical value that is assigned to a specific + :param message: Error message + :type message: str + :param actionable_message: Actionable steps for this exception + :type actionable_message: str + :param file_path: The path to the file where exception occurred + :type file_path: str + :param line_number: The line number where exception occurred + :type line_number: str + :param h_result: Coded numerical value that is assigned to a specific exception - :vartype h_result: int - :ivar stack_trace: Stack trace - :vartype stack_trace: str + :type h_result: int + :param stack_trace: Stack trace + :type stack_trace: str """ - _validation = { - 'message': {'readonly': True}, - 'file_path': {'readonly': True}, - 'line_number': {'readonly': True}, - 'h_result': {'readonly': True}, - 'stack_trace': {'readonly': True}, - } - _attribute_map = { 'message': {'key': 'message', 'type': 'str'}, + 'actionable_message': {'key': 'actionableMessage', 'type': 'str'}, 'file_path': {'key': 'filePath', 'type': 'str'}, 'line_number': {'key': 'lineNumber', 'type': 'str'}, 'h_result': {'key': 'hResult', 'type': 'int'}, @@ -49,8 +41,9 @@ class ReportableException(Model): def __init__(self, **kwargs): super(ReportableException, self).__init__(**kwargs) - self.message = None - self.file_path = None - self.line_number = None - self.h_result = None - self.stack_trace = None + self.message = kwargs.get('message', None) + self.actionable_message = kwargs.get('actionable_message', None) + self.file_path = kwargs.get('file_path', None) + self.line_number = kwargs.get('line_number', None) + self.h_result = kwargs.get('h_result', None) + self.stack_trace = kwargs.get('stack_trace', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/reportable_exception_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/reportable_exception_py3.py index f42f505c63c4..3f97fbc03364 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/reportable_exception_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/reportable_exception_py3.py @@ -15,42 +15,35 @@ class ReportableException(Model): """Exception object for all custom exceptions. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar message: Error message - :vartype message: str - :ivar file_path: The path to the file where exception occurred - :vartype file_path: str - :ivar line_number: The line number where exception occurred - :vartype line_number: str - :ivar h_result: Coded numerical value that is assigned to a specific + :param message: Error message + :type message: str + :param actionable_message: Actionable steps for this exception + :type actionable_message: str + :param file_path: The path to the file where exception occurred + :type file_path: str + :param line_number: The line number where exception occurred + :type line_number: str + :param h_result: Coded numerical value that is assigned to a specific exception - :vartype h_result: int - :ivar stack_trace: Stack trace - :vartype stack_trace: str + :type h_result: int + :param stack_trace: Stack trace + :type stack_trace: str """ - _validation = { - 'message': {'readonly': True}, - 'file_path': {'readonly': True}, - 'line_number': {'readonly': True}, - 'h_result': {'readonly': True}, - 'stack_trace': {'readonly': True}, - } - _attribute_map = { 'message': {'key': 'message', 'type': 'str'}, + 'actionable_message': {'key': 'actionableMessage', 'type': 'str'}, 'file_path': {'key': 'filePath', 'type': 'str'}, 'line_number': {'key': 'lineNumber', 'type': 'str'}, 'h_result': {'key': 'hResult', 'type': 'int'}, 'stack_trace': {'key': 'stackTrace', 'type': 'str'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, message: str=None, actionable_message: str=None, file_path: str=None, line_number: str=None, h_result: int=None, stack_trace: str=None, **kwargs) -> None: super(ReportableException, self).__init__(**kwargs) - self.message = None - self.file_path = None - self.line_number = None - self.h_result = None - self.stack_trace = None + self.message = message + self.actionable_message = actionable_message + self.file_path = file_path + self.line_number = line_number + self.h_result = h_result + self.stack_trace = stack_trace diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result.py index fc3073048378..9cd9e4caf96e 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result.py @@ -15,28 +15,19 @@ class SchemaComparisonValidationResult(Model): """Results for schema comparison between the source and target. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar schema_differences: List of schema differences between the source + :param schema_differences: List of schema differences between the source and target databases - :vartype schema_differences: + :type schema_differences: ~azure.mgmt.datamigration.models.SchemaComparisonValidationResultType - :ivar validation_errors: List of errors that happened while performing + :param validation_errors: List of errors that happened while performing schema compare validation - :vartype validation_errors: - ~azure.mgmt.datamigration.models.ValidationError + :type validation_errors: ~azure.mgmt.datamigration.models.ValidationError :param source_database_object_count: Count of source database objects :type source_database_object_count: dict[str, long] :param target_database_object_count: Count of target database objects :type target_database_object_count: dict[str, long] """ - _validation = { - 'schema_differences': {'readonly': True}, - 'validation_errors': {'readonly': True}, - } - _attribute_map = { 'schema_differences': {'key': 'schemaDifferences', 'type': 'SchemaComparisonValidationResultType'}, 'validation_errors': {'key': 'validationErrors', 'type': 'ValidationError'}, @@ -46,7 +37,7 @@ class SchemaComparisonValidationResult(Model): def __init__(self, **kwargs): super(SchemaComparisonValidationResult, self).__init__(**kwargs) - self.schema_differences = None - self.validation_errors = None + self.schema_differences = kwargs.get('schema_differences', None) + self.validation_errors = kwargs.get('validation_errors', None) self.source_database_object_count = kwargs.get('source_database_object_count', None) self.target_database_object_count = kwargs.get('target_database_object_count', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_py3.py index 1107b6b36d3f..80d4e9462b13 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_py3.py @@ -15,28 +15,19 @@ class SchemaComparisonValidationResult(Model): """Results for schema comparison between the source and target. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar schema_differences: List of schema differences between the source + :param schema_differences: List of schema differences between the source and target databases - :vartype schema_differences: + :type schema_differences: ~azure.mgmt.datamigration.models.SchemaComparisonValidationResultType - :ivar validation_errors: List of errors that happened while performing + :param validation_errors: List of errors that happened while performing schema compare validation - :vartype validation_errors: - ~azure.mgmt.datamigration.models.ValidationError + :type validation_errors: ~azure.mgmt.datamigration.models.ValidationError :param source_database_object_count: Count of source database objects :type source_database_object_count: dict[str, long] :param target_database_object_count: Count of target database objects :type target_database_object_count: dict[str, long] """ - _validation = { - 'schema_differences': {'readonly': True}, - 'validation_errors': {'readonly': True}, - } - _attribute_map = { 'schema_differences': {'key': 'schemaDifferences', 'type': 'SchemaComparisonValidationResultType'}, 'validation_errors': {'key': 'validationErrors', 'type': 'ValidationError'}, @@ -44,9 +35,9 @@ class SchemaComparisonValidationResult(Model): 'target_database_object_count': {'key': 'targetDatabaseObjectCount', 'type': '{long}'}, } - def __init__(self, *, source_database_object_count=None, target_database_object_count=None, **kwargs) -> None: + def __init__(self, *, schema_differences=None, validation_errors=None, source_database_object_count=None, target_database_object_count=None, **kwargs) -> None: super(SchemaComparisonValidationResult, self).__init__(**kwargs) - self.schema_differences = None - self.validation_errors = None + self.schema_differences = schema_differences + self.validation_errors = validation_errors self.source_database_object_count = source_database_object_count self.target_database_object_count = target_database_object_count diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_type.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_type.py index a8aa8c5abb7e..2a53cac4d764 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_type.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_type.py @@ -15,27 +15,18 @@ class SchemaComparisonValidationResultType(Model): """Description about the errors happen while performing migration validation. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar object_name: Name of the object that has the difference - :vartype object_name: str - :ivar object_type: Type of the object that has the difference. e.g + :param object_name: Name of the object that has the difference + :type object_name: str + :param object_type: Type of the object that has the difference. e.g (Table/View/StoredProcedure). Possible values include: 'StoredProcedures', 'Table', 'User', 'View', 'Function' - :vartype object_type: str or ~azure.mgmt.datamigration.models.ObjectType - :ivar update_action: Update action type with respect to target. Possible + :type object_type: str or ~azure.mgmt.datamigration.models.ObjectType + :param update_action: Update action type with respect to target. Possible values include: 'DeletedOnTarget', 'ChangedOnTarget', 'AddedOnTarget' - :vartype update_action: str or + :type update_action: str or ~azure.mgmt.datamigration.models.UpdateActionType """ - _validation = { - 'object_name': {'readonly': True}, - 'object_type': {'readonly': True}, - 'update_action': {'readonly': True}, - } - _attribute_map = { 'object_name': {'key': 'objectName', 'type': 'str'}, 'object_type': {'key': 'objectType', 'type': 'str'}, @@ -44,6 +35,6 @@ class SchemaComparisonValidationResultType(Model): def __init__(self, **kwargs): super(SchemaComparisonValidationResultType, self).__init__(**kwargs) - self.object_name = None - self.object_type = None - self.update_action = None + self.object_name = kwargs.get('object_name', None) + self.object_type = kwargs.get('object_type', None) + self.update_action = kwargs.get('update_action', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_type_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_type_py3.py index 3967a083850a..e469340af8aa 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_type_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_comparison_validation_result_type_py3.py @@ -15,35 +15,26 @@ class SchemaComparisonValidationResultType(Model): """Description about the errors happen while performing migration validation. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar object_name: Name of the object that has the difference - :vartype object_name: str - :ivar object_type: Type of the object that has the difference. e.g + :param object_name: Name of the object that has the difference + :type object_name: str + :param object_type: Type of the object that has the difference. e.g (Table/View/StoredProcedure). Possible values include: 'StoredProcedures', 'Table', 'User', 'View', 'Function' - :vartype object_type: str or ~azure.mgmt.datamigration.models.ObjectType - :ivar update_action: Update action type with respect to target. Possible + :type object_type: str or ~azure.mgmt.datamigration.models.ObjectType + :param update_action: Update action type with respect to target. Possible values include: 'DeletedOnTarget', 'ChangedOnTarget', 'AddedOnTarget' - :vartype update_action: str or + :type update_action: str or ~azure.mgmt.datamigration.models.UpdateActionType """ - _validation = { - 'object_name': {'readonly': True}, - 'object_type': {'readonly': True}, - 'update_action': {'readonly': True}, - } - _attribute_map = { 'object_name': {'key': 'objectName', 'type': 'str'}, 'object_type': {'key': 'objectType', 'type': 'str'}, 'update_action': {'key': 'updateAction', 'type': 'str'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, object_name: str=None, object_type=None, update_action=None, **kwargs) -> None: super(SchemaComparisonValidationResultType, self).__init__(**kwargs) - self.object_name = None - self.object_type = None - self.update_action = None + self.object_name = object_name + self.object_type = object_type + self.update_action = update_action diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_migration_setting.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_migration_setting.py new file mode 100644 index 000000000000..f5aac00590d1 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_migration_setting.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SchemaMigrationSetting(Model): + """Settings for migrating schema from source to target. + + :param schema_option: Option on how to migrate the schema. Possible values + include: 'None', 'ExtractFromSource', 'UseStorageFile' + :type schema_option: str or + ~azure.mgmt.datamigration.models.SchemaMigrationOption + :param file_id: Resource Identifier of a file resource containing the + uploaded schema file + :type file_id: str + """ + + _attribute_map = { + 'schema_option': {'key': 'schemaOption', 'type': 'str'}, + 'file_id': {'key': 'fileId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SchemaMigrationSetting, self).__init__(**kwargs) + self.schema_option = kwargs.get('schema_option', None) + self.file_id = kwargs.get('file_id', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_migration_setting_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_migration_setting_py3.py new file mode 100644 index 000000000000..6b3ef327bd3a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/schema_migration_setting_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SchemaMigrationSetting(Model): + """Settings for migrating schema from source to target. + + :param schema_option: Option on how to migrate the schema. Possible values + include: 'None', 'ExtractFromSource', 'UseStorageFile' + :type schema_option: str or + ~azure.mgmt.datamigration.models.SchemaMigrationOption + :param file_id: Resource Identifier of a file resource containing the + uploaded schema file + :type file_id: str + """ + + _attribute_map = { + 'schema_option': {'key': 'schemaOption', 'type': 'str'}, + 'file_id': {'key': 'fileId', 'type': 'str'}, + } + + def __init__(self, *, schema_option=None, file_id: str=None, **kwargs) -> None: + super(SchemaMigrationSetting, self).__init__(**kwargs) + self.schema_option = schema_option + self.file_id = file_id diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/selected_certificate_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/selected_certificate_input.py new file mode 100644 index 000000000000..46ffa7bfe55a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/selected_certificate_input.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SelectedCertificateInput(Model): + """Info for ertificate to be exported for TDE enabled databases. + + All required parameters must be populated in order to send to Azure. + + :param certificate_name: Required. Name of certificate to be exported. + :type certificate_name: str + :param password: Required. Password to use for encrypting the exported + certificate. + :type password: str + """ + + _validation = { + 'certificate_name': {'required': True}, + 'password': {'required': True}, + } + + _attribute_map = { + 'certificate_name': {'key': 'certificateName', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SelectedCertificateInput, self).__init__(**kwargs) + self.certificate_name = kwargs.get('certificate_name', None) + self.password = kwargs.get('password', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/selected_certificate_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/selected_certificate_input_py3.py new file mode 100644 index 000000000000..e07e18889a10 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/selected_certificate_input_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SelectedCertificateInput(Model): + """Info for ertificate to be exported for TDE enabled databases. + + All required parameters must be populated in order to send to Azure. + + :param certificate_name: Required. Name of certificate to be exported. + :type certificate_name: str + :param password: Required. Password to use for encrypting the exported + certificate. + :type password: str + """ + + _validation = { + 'certificate_name': {'required': True}, + 'password': {'required': True}, + } + + _attribute_map = { + 'certificate_name': {'key': 'certificateName', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + } + + def __init__(self, *, certificate_name: str, password: str, **kwargs) -> None: + super(SelectedCertificateInput, self).__init__(**kwargs) + self.certificate_name = certificate_name + self.password = password diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/server_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/server_properties.py new file mode 100644 index 000000000000..8507c9404cee --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/server_properties.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerProperties(Model): + """Server properties for Oracle, MySQL type source. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar server_platform: Name of the server platform + :vartype server_platform: str + :ivar server_name: Name of the server + :vartype server_name: str + :ivar server_version: Version of the database server + :vartype server_version: str + :ivar server_edition: Edition of the database server + :vartype server_edition: str + :ivar server_operating_system_version: Version of the operating system + :vartype server_operating_system_version: str + :ivar server_database_count: Number of databases in the server + :vartype server_database_count: int + """ + + _validation = { + 'server_platform': {'readonly': True}, + 'server_name': {'readonly': True}, + 'server_version': {'readonly': True}, + 'server_edition': {'readonly': True}, + 'server_operating_system_version': {'readonly': True}, + 'server_database_count': {'readonly': True}, + } + + _attribute_map = { + 'server_platform': {'key': 'serverPlatform', 'type': 'str'}, + 'server_name': {'key': 'serverName', 'type': 'str'}, + 'server_version': {'key': 'serverVersion', 'type': 'str'}, + 'server_edition': {'key': 'serverEdition', 'type': 'str'}, + 'server_operating_system_version': {'key': 'serverOperatingSystemVersion', 'type': 'str'}, + 'server_database_count': {'key': 'serverDatabaseCount', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ServerProperties, self).__init__(**kwargs) + self.server_platform = None + self.server_name = None + self.server_version = None + self.server_edition = None + self.server_operating_system_version = None + self.server_database_count = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/server_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/server_properties_py3.py new file mode 100644 index 000000000000..fbee0abcd1ab --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/server_properties_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerProperties(Model): + """Server properties for Oracle, MySQL type source. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar server_platform: Name of the server platform + :vartype server_platform: str + :ivar server_name: Name of the server + :vartype server_name: str + :ivar server_version: Version of the database server + :vartype server_version: str + :ivar server_edition: Edition of the database server + :vartype server_edition: str + :ivar server_operating_system_version: Version of the operating system + :vartype server_operating_system_version: str + :ivar server_database_count: Number of databases in the server + :vartype server_database_count: int + """ + + _validation = { + 'server_platform': {'readonly': True}, + 'server_name': {'readonly': True}, + 'server_version': {'readonly': True}, + 'server_edition': {'readonly': True}, + 'server_operating_system_version': {'readonly': True}, + 'server_database_count': {'readonly': True}, + } + + _attribute_map = { + 'server_platform': {'key': 'serverPlatform', 'type': 'str'}, + 'server_name': {'key': 'serverName', 'type': 'str'}, + 'server_version': {'key': 'serverVersion', 'type': 'str'}, + 'server_edition': {'key': 'serverEdition', 'type': 'str'}, + 'server_operating_system_version': {'key': 'serverOperatingSystemVersion', 'type': 'str'}, + 'server_database_count': {'key': 'serverDatabaseCount', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(ServerProperties, self).__init__(**kwargs) + self.server_platform = None + self.server_name = None + self.server_version = None + self.server_edition = None + self.server_operating_system_version = None + self.server_database_count = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/service_sku.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/service_sku.py index 3c0035f93d89..4858e045788b 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/service_sku.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/service_sku.py @@ -17,8 +17,8 @@ class ServiceSku(Model): :param name: The unique name of the SKU, such as 'P3' :type name: str - :param tier: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or - 'Premium' + :param tier: The tier of the SKU, such as 'Basic', 'General Purpose', or + 'Business Critical' :type tier: str :param family: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/service_sku_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/service_sku_py3.py index 72e796ed24ac..871514d39280 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/service_sku_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/service_sku_py3.py @@ -17,8 +17,8 @@ class ServiceSku(Model): :param name: The unique name of the SKU, such as 'P3' :type name: str - :param tier: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or - 'Premium' + :param tier: The tier of the SKU, such as 'Basic', 'General Purpose', or + 'Business Critical' :type tier: str :param family: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sql_connection_info.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sql_connection_info.py index 546a8bfb2cc7..49bde37ed708 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sql_connection_info.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sql_connection_info.py @@ -39,6 +39,9 @@ class SqlConnectionInfo(ConnectionInfo): :param trust_server_certificate: Whether to trust the server certificate. Default value: False . :type trust_server_certificate: bool + :param platform: Server platform type for connection. Possible values + include: 'SqlOnPrem' + :type platform: str or ~azure.mgmt.datamigration.models.SqlSourcePlatform """ _validation = { @@ -55,6 +58,7 @@ class SqlConnectionInfo(ConnectionInfo): 'encrypt_connection': {'key': 'encryptConnection', 'type': 'bool'}, 'additional_settings': {'key': 'additionalSettings', 'type': 'str'}, 'trust_server_certificate': {'key': 'trustServerCertificate', 'type': 'bool'}, + 'platform': {'key': 'platform', 'type': 'str'}, } def __init__(self, **kwargs): @@ -64,4 +68,5 @@ def __init__(self, **kwargs): self.encrypt_connection = kwargs.get('encrypt_connection', True) self.additional_settings = kwargs.get('additional_settings', None) self.trust_server_certificate = kwargs.get('trust_server_certificate', False) + self.platform = kwargs.get('platform', None) self.type = 'SqlConnectionInfo' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sql_connection_info_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sql_connection_info_py3.py index 1227cde800a1..51d3a219a987 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sql_connection_info_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sql_connection_info_py3.py @@ -39,6 +39,9 @@ class SqlConnectionInfo(ConnectionInfo): :param trust_server_certificate: Whether to trust the server certificate. Default value: False . :type trust_server_certificate: bool + :param platform: Server platform type for connection. Possible values + include: 'SqlOnPrem' + :type platform: str or ~azure.mgmt.datamigration.models.SqlSourcePlatform """ _validation = { @@ -55,13 +58,15 @@ class SqlConnectionInfo(ConnectionInfo): 'encrypt_connection': {'key': 'encryptConnection', 'type': 'bool'}, 'additional_settings': {'key': 'additionalSettings', 'type': 'str'}, 'trust_server_certificate': {'key': 'trustServerCertificate', 'type': 'bool'}, + 'platform': {'key': 'platform', 'type': 'str'}, } - def __init__(self, *, data_source: str, user_name: str=None, password: str=None, authentication=None, encrypt_connection: bool=True, additional_settings: str=None, trust_server_certificate: bool=False, **kwargs) -> None: + def __init__(self, *, data_source: str, user_name: str=None, password: str=None, authentication=None, encrypt_connection: bool=True, additional_settings: str=None, trust_server_certificate: bool=False, platform=None, **kwargs) -> None: super(SqlConnectionInfo, self).__init__(user_name=user_name, password=password, **kwargs) self.data_source = data_source self.authentication = authentication self.encrypt_connection = encrypt_connection self.additional_settings = additional_settings self.trust_server_certificate = trust_server_certificate + self.platform = platform self.type = 'SqlConnectionInfo' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/start_migration_scenario_server_role_result.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/start_migration_scenario_server_role_result.py index a14f6e618b1e..9af6df887bf7 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/start_migration_scenario_server_role_result.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/start_migration_scenario_server_role_result.py @@ -13,7 +13,7 @@ class StartMigrationScenarioServerRoleResult(Model): - """Migration results from a server role. + """Server role migration result. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/start_migration_scenario_server_role_result_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/start_migration_scenario_server_role_result_py3.py index e351b2d780cb..4ba0d708f5b8 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/start_migration_scenario_server_role_result_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/start_migration_scenario_server_role_result_py3.py @@ -13,7 +13,7 @@ class StartMigrationScenarioServerRoleResult(Model): - """Migration results from a server role. + """Server role migration result. Variables are only populated by the server, and will be ignored when sending a request. diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sync_migration_database_error_event.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sync_migration_database_error_event.py new file mode 100644 index 000000000000..872df745784c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sync_migration_database_error_event.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SyncMigrationDatabaseErrorEvent(Model): + """Database migration errors for online migration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar timestamp_string: String value of timestamp. + :vartype timestamp_string: str + :ivar event_type_string: Event type. + :vartype event_type_string: str + :ivar event_text: Event text. + :vartype event_text: str + """ + + _validation = { + 'timestamp_string': {'readonly': True}, + 'event_type_string': {'readonly': True}, + 'event_text': {'readonly': True}, + } + + _attribute_map = { + 'timestamp_string': {'key': 'timestampString', 'type': 'str'}, + 'event_type_string': {'key': 'eventTypeString', 'type': 'str'}, + 'event_text': {'key': 'eventText', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SyncMigrationDatabaseErrorEvent, self).__init__(**kwargs) + self.timestamp_string = None + self.event_type_string = None + self.event_text = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sync_migration_database_error_event_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sync_migration_database_error_event_py3.py new file mode 100644 index 000000000000..a75f3006aebe --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/sync_migration_database_error_event_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SyncMigrationDatabaseErrorEvent(Model): + """Database migration errors for online migration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar timestamp_string: String value of timestamp. + :vartype timestamp_string: str + :ivar event_type_string: Event type. + :vartype event_type_string: str + :ivar event_text: Event text. + :vartype event_text: str + """ + + _validation = { + 'timestamp_string': {'readonly': True}, + 'event_type_string': {'readonly': True}, + 'event_text': {'readonly': True}, + } + + _attribute_map = { + 'timestamp_string': {'key': 'timestampString', 'type': 'str'}, + 'event_type_string': {'key': 'eventTypeString', 'type': 'str'}, + 'event_text': {'key': 'eventText', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(SyncMigrationDatabaseErrorEvent, self).__init__(**kwargs) + self.timestamp_string = None + self.event_type_string = None + self.event_text = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_db_sync_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_db_sync_task_properties.py new file mode 100644 index 000000000000..7ffaa63a4439 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_db_sync_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class ValidateMigrationInputSqlServerSqlDbSyncTaskProperties(ProjectTaskProperties): + """Properties for task that validates migration input for SQL to Azure SQL DB + sync migrations. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ValidateSyncMigrationInputSqlServerTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ValidateSyncMigrationInputSqlServerTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ValidateSyncMigrationInputSqlServerTaskInput'}, + 'output': {'key': 'output', 'type': '[ValidateSyncMigrationInputSqlServerTaskOutput]'}, + } + + def __init__(self, **kwargs): + super(ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'ValidateMigrationInput.SqlServer.SqlDb.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_db_sync_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_db_sync_task_properties_py3.py new file mode 100644 index 000000000000..e11f201feed2 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_db_sync_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class ValidateMigrationInputSqlServerSqlDbSyncTaskProperties(ProjectTaskProperties): + """Properties for task that validates migration input for SQL to Azure SQL DB + sync migrations. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ValidateSyncMigrationInputSqlServerTaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ValidateSyncMigrationInputSqlServerTaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ValidateSyncMigrationInputSqlServerTaskInput'}, + 'output': {'key': 'output', 'type': '[ValidateSyncMigrationInputSqlServerTaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'ValidateMigrationInput.SqlServer.SqlDb.Sync' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_input.py new file mode 100644 index 000000000000..574508b89d5f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_input.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ValidateMigrationInputSqlServerSqlMITaskInput(Model): + """Input for task that validates migration input for SQL to Azure SQL Managed + Instance. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlMIDatabaseInput] + :param selected_logins: Logins to migrate + :type selected_logins: list[str] + :param backup_file_share: Backup file share information for all selected + databases. + :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param backup_blob_share: Required. SAS URI of Azure Storage Account + Container to be used for storing backup files. + :type backup_blob_share: ~azure.mgmt.datamigration.models.BlobShare + :param backup_mode: Backup Mode to specify whether to use existing backup + or create new backup. Possible values include: 'CreateBackup', + 'ExistingBackup' + :type backup_mode: str or ~azure.mgmt.datamigration.models.BackupMode + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + 'backup_blob_share': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSqlServerSqlMIDatabaseInput]'}, + 'selected_logins': {'key': 'selectedLogins', 'type': '[str]'}, + 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'backup_blob_share': {'key': 'backupBlobShare', 'type': 'BlobShare'}, + 'backup_mode': {'key': 'backupMode', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ValidateMigrationInputSqlServerSqlMITaskInput, self).__init__(**kwargs) + self.source_connection_info = kwargs.get('source_connection_info', None) + self.target_connection_info = kwargs.get('target_connection_info', None) + self.selected_databases = kwargs.get('selected_databases', None) + self.selected_logins = kwargs.get('selected_logins', None) + self.backup_file_share = kwargs.get('backup_file_share', None) + self.backup_blob_share = kwargs.get('backup_blob_share', None) + self.backup_mode = kwargs.get('backup_mode', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_input_py3.py new file mode 100644 index 000000000000..6c1f309299ca --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_input_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ValidateMigrationInputSqlServerSqlMITaskInput(Model): + """Input for task that validates migration input for SQL to Azure SQL Managed + Instance. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlMIDatabaseInput] + :param selected_logins: Logins to migrate + :type selected_logins: list[str] + :param backup_file_share: Backup file share information for all selected + databases. + :type backup_file_share: ~azure.mgmt.datamigration.models.FileShare + :param backup_blob_share: Required. SAS URI of Azure Storage Account + Container to be used for storing backup files. + :type backup_blob_share: ~azure.mgmt.datamigration.models.BlobShare + :param backup_mode: Backup Mode to specify whether to use existing backup + or create new backup. Possible values include: 'CreateBackup', + 'ExistingBackup' + :type backup_mode: str or ~azure.mgmt.datamigration.models.BackupMode + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + 'backup_blob_share': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSqlServerSqlMIDatabaseInput]'}, + 'selected_logins': {'key': 'selectedLogins', 'type': '[str]'}, + 'backup_file_share': {'key': 'backupFileShare', 'type': 'FileShare'}, + 'backup_blob_share': {'key': 'backupBlobShare', 'type': 'BlobShare'}, + 'backup_mode': {'key': 'backupMode', 'type': 'str'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, selected_databases, backup_blob_share, selected_logins=None, backup_file_share=None, backup_mode=None, **kwargs) -> None: + super(ValidateMigrationInputSqlServerSqlMITaskInput, self).__init__(**kwargs) + self.source_connection_info = source_connection_info + self.target_connection_info = target_connection_info + self.selected_databases = selected_databases + self.selected_logins = selected_logins + self.backup_file_share = backup_file_share + self.backup_blob_share = backup_blob_share + self.backup_mode = backup_mode diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_output.py new file mode 100644 index 000000000000..41b0019618e7 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_output.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ValidateMigrationInputSqlServerSqlMITaskOutput(Model): + """Output for task that validates migration input for SQL to Azure SQL Managed + Instance migrations. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar name: Name of database + :vartype name: str + :ivar restore_database_name_errors: Errors associated with the + RestoreDatabaseName + :vartype restore_database_name_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :ivar backup_folder_errors: Errors associated with the BackupFolder path + :vartype backup_folder_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :ivar backup_share_credentials_errors: Errors associated with backup share + user name and password credentials + :vartype backup_share_credentials_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :ivar backup_storage_account_errors: Errors associated with the storage + account provided. + :vartype backup_storage_account_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :ivar existing_backup_errors: Errors associated with existing backup + files. + :vartype existing_backup_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :param database_backup_info: Information about backup files when existing + backup mode is used. + :type database_backup_info: + ~azure.mgmt.datamigration.models.DatabaseBackupInfo + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'restore_database_name_errors': {'readonly': True}, + 'backup_folder_errors': {'readonly': True}, + 'backup_share_credentials_errors': {'readonly': True}, + 'backup_storage_account_errors': {'readonly': True}, + 'existing_backup_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'restore_database_name_errors': {'key': 'restoreDatabaseNameErrors', 'type': '[ReportableException]'}, + 'backup_folder_errors': {'key': 'backupFolderErrors', 'type': '[ReportableException]'}, + 'backup_share_credentials_errors': {'key': 'backupShareCredentialsErrors', 'type': '[ReportableException]'}, + 'backup_storage_account_errors': {'key': 'backupStorageAccountErrors', 'type': '[ReportableException]'}, + 'existing_backup_errors': {'key': 'existingBackupErrors', 'type': '[ReportableException]'}, + 'database_backup_info': {'key': 'databaseBackupInfo', 'type': 'DatabaseBackupInfo'}, + } + + def __init__(self, **kwargs): + super(ValidateMigrationInputSqlServerSqlMITaskOutput, self).__init__(**kwargs) + self.id = None + self.name = None + self.restore_database_name_errors = None + self.backup_folder_errors = None + self.backup_share_credentials_errors = None + self.backup_storage_account_errors = None + self.existing_backup_errors = None + self.database_backup_info = kwargs.get('database_backup_info', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_output_py3.py new file mode 100644 index 000000000000..f5004632764c --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_output_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ValidateMigrationInputSqlServerSqlMITaskOutput(Model): + """Output for task that validates migration input for SQL to Azure SQL Managed + Instance migrations. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Result identifier + :vartype id: str + :ivar name: Name of database + :vartype name: str + :ivar restore_database_name_errors: Errors associated with the + RestoreDatabaseName + :vartype restore_database_name_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :ivar backup_folder_errors: Errors associated with the BackupFolder path + :vartype backup_folder_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :ivar backup_share_credentials_errors: Errors associated with backup share + user name and password credentials + :vartype backup_share_credentials_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :ivar backup_storage_account_errors: Errors associated with the storage + account provided. + :vartype backup_storage_account_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :ivar existing_backup_errors: Errors associated with existing backup + files. + :vartype existing_backup_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + :param database_backup_info: Information about backup files when existing + backup mode is used. + :type database_backup_info: + ~azure.mgmt.datamigration.models.DatabaseBackupInfo + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'restore_database_name_errors': {'readonly': True}, + 'backup_folder_errors': {'readonly': True}, + 'backup_share_credentials_errors': {'readonly': True}, + 'backup_storage_account_errors': {'readonly': True}, + 'existing_backup_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'restore_database_name_errors': {'key': 'restoreDatabaseNameErrors', 'type': '[ReportableException]'}, + 'backup_folder_errors': {'key': 'backupFolderErrors', 'type': '[ReportableException]'}, + 'backup_share_credentials_errors': {'key': 'backupShareCredentialsErrors', 'type': '[ReportableException]'}, + 'backup_storage_account_errors': {'key': 'backupStorageAccountErrors', 'type': '[ReportableException]'}, + 'existing_backup_errors': {'key': 'existingBackupErrors', 'type': '[ReportableException]'}, + 'database_backup_info': {'key': 'databaseBackupInfo', 'type': 'DatabaseBackupInfo'}, + } + + def __init__(self, *, database_backup_info=None, **kwargs) -> None: + super(ValidateMigrationInputSqlServerSqlMITaskOutput, self).__init__(**kwargs) + self.id = None + self.name = None + self.restore_database_name_errors = None + self.backup_folder_errors = None + self.backup_share_credentials_errors = None + self.backup_storage_account_errors = None + self.existing_backup_errors = None + self.database_backup_info = database_backup_info diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_properties.py new file mode 100644 index 000000000000..30670fb2b62b --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_properties.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties import ProjectTaskProperties + + +class ValidateMigrationInputSqlServerSqlMITaskProperties(ProjectTaskProperties): + """Properties for task that validates migration input for SQL to Azure SQL + Database Managed Instance. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ValidateMigrationInputSqlServerSqlMITaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ValidateMigrationInputSqlServerSqlMITaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ValidateMigrationInputSqlServerSqlMITaskInput'}, + 'output': {'key': 'output', 'type': '[ValidateMigrationInputSqlServerSqlMITaskOutput]'}, + } + + def __init__(self, **kwargs): + super(ValidateMigrationInputSqlServerSqlMITaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'ValidateMigrationInput.SqlServer.AzureSqlDbMI' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_properties_py3.py new file mode 100644 index 000000000000..7150ee39c187 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_migration_input_sql_server_sql_mi_task_properties_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .project_task_properties_py3 import ProjectTaskProperties + + +class ValidateMigrationInputSqlServerSqlMITaskProperties(ProjectTaskProperties): + """Properties for task that validates migration input for SQL to Azure SQL + Database Managed Instance. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: Task input + :type input: + ~azure.mgmt.datamigration.models.ValidateMigrationInputSqlServerSqlMITaskInput + :ivar output: Task output. This is ignored if submitted. + :vartype output: + list[~azure.mgmt.datamigration.models.ValidateMigrationInputSqlServerSqlMITaskOutput] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'ValidateMigrationInputSqlServerSqlMITaskInput'}, + 'output': {'key': 'output', 'type': '[ValidateMigrationInputSqlServerSqlMITaskOutput]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ValidateMigrationInputSqlServerSqlMITaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'ValidateMigrationInput.SqlServer.AzureSqlDbMI' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_mongo_db_task_properties.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_mongo_db_task_properties.py new file mode 100644 index 000000000000..10a93f4e5ae5 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_mongo_db_task_properties.py @@ -0,0 +1,63 @@ +# 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 .project_task_properties import ProjectTaskProperties + + +class ValidateMongoDbTaskProperties(ProjectTaskProperties): + """Properties for the task that validates a migration between MongoDB data + sources. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: + :type input: ~azure.mgmt.datamigration.models.MongoDbMigrationSettings + :ivar output: An array containing a single MongoDbMigrationProgress object + :vartype output: + list[~azure.mgmt.datamigration.models.MongoDbMigrationProgress] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbMigrationSettings'}, + 'output': {'key': 'output', 'type': '[MongoDbMigrationProgress]'}, + } + + def __init__(self, **kwargs): + super(ValidateMongoDbTaskProperties, self).__init__(**kwargs) + self.input = kwargs.get('input', None) + self.output = None + self.task_type = 'Validate.MongoDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_mongo_db_task_properties_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_mongo_db_task_properties_py3.py new file mode 100644 index 000000000000..740ed03d1d14 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_mongo_db_task_properties_py3.py @@ -0,0 +1,63 @@ +# 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 .project_task_properties_py3 import ProjectTaskProperties + + +class ValidateMongoDbTaskProperties(ProjectTaskProperties): + """Properties for the task that validates a migration between MongoDB data + sources. + + 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 errors: Array of errors. This is ignored if submitted. + :vartype errors: list[~azure.mgmt.datamigration.models.ODataError] + :ivar state: The state of the task. This is ignored if submitted. Possible + values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', + 'Failed', 'FailedInputValidation', 'Faulted' + :vartype state: str or ~azure.mgmt.datamigration.models.TaskState + :ivar commands: Array of command properties. + :vartype commands: + list[~azure.mgmt.datamigration.models.CommandProperties] + :param task_type: Required. Constant filled by server. + :type task_type: str + :param input: + :type input: ~azure.mgmt.datamigration.models.MongoDbMigrationSettings + :ivar output: An array containing a single MongoDbMigrationProgress object + :vartype output: + list[~azure.mgmt.datamigration.models.MongoDbMigrationProgress] + """ + + _validation = { + 'errors': {'readonly': True}, + 'state': {'readonly': True}, + 'commands': {'readonly': True}, + 'task_type': {'required': True}, + 'output': {'readonly': True}, + } + + _attribute_map = { + 'errors': {'key': 'errors', 'type': '[ODataError]'}, + 'state': {'key': 'state', 'type': 'str'}, + 'commands': {'key': 'commands', 'type': '[CommandProperties]'}, + 'task_type': {'key': 'taskType', 'type': 'str'}, + 'input': {'key': 'input', 'type': 'MongoDbMigrationSettings'}, + 'output': {'key': 'output', 'type': '[MongoDbMigrationProgress]'}, + } + + def __init__(self, *, input=None, **kwargs) -> None: + super(ValidateMongoDbTaskProperties, self).__init__(**kwargs) + self.input = input + self.output = None + self.task_type = 'Validate.MongoDb' diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_input.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_input.py new file mode 100644 index 000000000000..e3ef6578bb7f --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_input.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ValidateSyncMigrationInputSqlServerTaskInput(Model): + """Input for task that validates migration input for SQL sync migrations. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source SQL server + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlDbSyncDatabaseInput] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSqlServerSqlDbSyncDatabaseInput]'}, + } + + def __init__(self, **kwargs): + super(ValidateSyncMigrationInputSqlServerTaskInput, self).__init__(**kwargs) + self.source_connection_info = kwargs.get('source_connection_info', None) + self.target_connection_info = kwargs.get('target_connection_info', None) + self.selected_databases = kwargs.get('selected_databases', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_input_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_input_py3.py new file mode 100644 index 000000000000..03eb1295e946 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_input_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ValidateSyncMigrationInputSqlServerTaskInput(Model): + """Input for task that validates migration input for SQL sync migrations. + + All required parameters must be populated in order to send to Azure. + + :param source_connection_info: Required. Information for connecting to + source SQL server + :type source_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param target_connection_info: Required. Information for connecting to + target + :type target_connection_info: + ~azure.mgmt.datamigration.models.SqlConnectionInfo + :param selected_databases: Required. Databases to migrate + :type selected_databases: + list[~azure.mgmt.datamigration.models.MigrateSqlServerSqlDbSyncDatabaseInput] + """ + + _validation = { + 'source_connection_info': {'required': True}, + 'target_connection_info': {'required': True}, + 'selected_databases': {'required': True}, + } + + _attribute_map = { + 'source_connection_info': {'key': 'sourceConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'target_connection_info': {'key': 'targetConnectionInfo', 'type': 'SqlConnectionInfo'}, + 'selected_databases': {'key': 'selectedDatabases', 'type': '[MigrateSqlServerSqlDbSyncDatabaseInput]'}, + } + + def __init__(self, *, source_connection_info, target_connection_info, selected_databases, **kwargs) -> None: + super(ValidateSyncMigrationInputSqlServerTaskInput, self).__init__(**kwargs) + self.source_connection_info = source_connection_info + self.target_connection_info = target_connection_info + self.selected_databases = selected_databases diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_output.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_output.py new file mode 100644 index 000000000000..acf72153e195 --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_output.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ValidateSyncMigrationInputSqlServerTaskOutput(Model): + """Output for task that validates migration input for SQL sync migrations. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Database identifier + :vartype id: str + :ivar name: Name of database + :vartype name: str + :ivar validation_errors: Errors associated with a selected database object + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs): + super(ValidateSyncMigrationInputSqlServerTaskOutput, self).__init__(**kwargs) + self.id = None + self.name = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_output_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_output_py3.py new file mode 100644 index 000000000000..8b7181f5333a --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validate_sync_migration_input_sql_server_task_output_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ValidateSyncMigrationInputSqlServerTaskOutput(Model): + """Output for task that validates migration input for SQL sync migrations. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Database identifier + :vartype id: str + :ivar name: Name of database + :vartype name: str + :ivar validation_errors: Errors associated with a selected database object + :vartype validation_errors: + list[~azure.mgmt.datamigration.models.ReportableException] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'validation_errors': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'validation_errors': {'key': 'validationErrors', 'type': '[ReportableException]'}, + } + + def __init__(self, **kwargs) -> None: + super(ValidateSyncMigrationInputSqlServerTaskOutput, self).__init__(**kwargs) + self.id = None + self.name = None + self.validation_errors = None diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validation_error.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validation_error.py index 7879e2effa78..2dcb6d4fdf0c 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validation_error.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validation_error.py @@ -15,21 +15,13 @@ class ValidationError(Model): """Description about the errors happen while performing migration validation. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar text: Error Text - :vartype text: str - :ivar severity: Severity of the error. Possible values include: 'Message', - 'Warning', 'Error' - :vartype severity: str or ~azure.mgmt.datamigration.models.Severity + :param text: Error Text + :type text: str + :param severity: Severity of the error. Possible values include: + 'Message', 'Warning', 'Error' + :type severity: str or ~azure.mgmt.datamigration.models.Severity """ - _validation = { - 'text': {'readonly': True}, - 'severity': {'readonly': True}, - } - _attribute_map = { 'text': {'key': 'text', 'type': 'str'}, 'severity': {'key': 'severity', 'type': 'str'}, @@ -37,5 +29,5 @@ class ValidationError(Model): def __init__(self, **kwargs): super(ValidationError, self).__init__(**kwargs) - self.text = None - self.severity = None + self.text = kwargs.get('text', None) + self.severity = kwargs.get('severity', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validation_error_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validation_error_py3.py index cb8f150455cf..6e7ce050ff4e 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validation_error_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/validation_error_py3.py @@ -15,27 +15,19 @@ class ValidationError(Model): """Description about the errors happen while performing migration validation. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar text: Error Text - :vartype text: str - :ivar severity: Severity of the error. Possible values include: 'Message', - 'Warning', 'Error' - :vartype severity: str or ~azure.mgmt.datamigration.models.Severity + :param text: Error Text + :type text: str + :param severity: Severity of the error. Possible values include: + 'Message', 'Warning', 'Error' + :type severity: str or ~azure.mgmt.datamigration.models.Severity """ - _validation = { - 'text': {'readonly': True}, - 'severity': {'readonly': True}, - } - _attribute_map = { 'text': {'key': 'text', 'type': 'str'}, 'severity': {'key': 'severity', 'type': 'str'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, text: str=None, severity=None, **kwargs) -> None: super(ValidationError, self).__init__(**kwargs) - self.text = None - self.severity = None + self.text = text + self.severity = severity diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/wait_statistics.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/wait_statistics.py index 9db8f0f3334c..2e1b9a76d7fc 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/wait_statistics.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/wait_statistics.py @@ -15,23 +15,15 @@ class WaitStatistics(Model): """Wait statistics gathered during query batch execution. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar wait_type: Type of the Wait - :vartype wait_type: str - :ivar wait_time_ms: Total wait time in millisecond(s). Default value: 0 . - :vartype wait_time_ms: float - :ivar wait_count: Total no. of waits - :vartype wait_count: long + :param wait_type: Type of the Wait + :type wait_type: str + :param wait_time_ms: Total wait time in millisecond(s) . Default value: 0 + . + :type wait_time_ms: float + :param wait_count: Total no. of waits + :type wait_count: long """ - _validation = { - 'wait_type': {'readonly': True}, - 'wait_time_ms': {'readonly': True}, - 'wait_count': {'readonly': True}, - } - _attribute_map = { 'wait_type': {'key': 'waitType', 'type': 'str'}, 'wait_time_ms': {'key': 'waitTimeMs', 'type': 'float'}, @@ -40,6 +32,6 @@ class WaitStatistics(Model): def __init__(self, **kwargs): super(WaitStatistics, self).__init__(**kwargs) - self.wait_type = None - self.wait_time_ms = None - self.wait_count = None + self.wait_type = kwargs.get('wait_type', None) + self.wait_time_ms = kwargs.get('wait_time_ms', 0) + self.wait_count = kwargs.get('wait_count', None) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/wait_statistics_py3.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/wait_statistics_py3.py index ae6f3ccdcb29..4ac3fbbb9247 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/models/wait_statistics_py3.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/models/wait_statistics_py3.py @@ -15,31 +15,23 @@ class WaitStatistics(Model): """Wait statistics gathered during query batch execution. - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar wait_type: Type of the Wait - :vartype wait_type: str - :ivar wait_time_ms: Total wait time in millisecond(s). Default value: 0 . - :vartype wait_time_ms: float - :ivar wait_count: Total no. of waits - :vartype wait_count: long + :param wait_type: Type of the Wait + :type wait_type: str + :param wait_time_ms: Total wait time in millisecond(s) . Default value: 0 + . + :type wait_time_ms: float + :param wait_count: Total no. of waits + :type wait_count: long """ - _validation = { - 'wait_type': {'readonly': True}, - 'wait_time_ms': {'readonly': True}, - 'wait_count': {'readonly': True}, - } - _attribute_map = { 'wait_type': {'key': 'waitType', 'type': 'str'}, 'wait_time_ms': {'key': 'waitTimeMs', 'type': 'float'}, 'wait_count': {'key': 'waitCount', 'type': 'long'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, wait_type: str=None, wait_time_ms: float=0, wait_count: int=None, **kwargs) -> None: super(WaitStatistics, self).__init__(**kwargs) - self.wait_type = None - self.wait_time_ms = None - self.wait_count = None + self.wait_type = wait_type + self.wait_time_ms = wait_time_ms + self.wait_count = wait_count diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/__init__.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/__init__.py index dae6a3120660..b06ecfce78cc 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/__init__.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/__init__.py @@ -15,6 +15,7 @@ from .projects_operations import ProjectsOperations from .usages_operations import UsagesOperations from .operations import Operations +from .files_operations import FilesOperations __all__ = [ 'ResourceSkusOperations', @@ -23,4 +24,5 @@ 'ProjectsOperations', 'UsagesOperations', 'Operations', + 'FilesOperations', ] diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/files_operations.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/files_operations.py new file mode 100644 index 000000000000..25033e3714bc --- /dev/null +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/files_operations.py @@ -0,0 +1,548 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class FilesOperations(object): + """FilesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API. Constant value: "2018-07-15-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-15-preview" + + self.config = config + + def list( + self, group_name, service_name, project_name, custom_headers=None, raw=False, **operation_config): + """Get files in a project. + + The project resource is a nested resource representing a stored + migration project. This method returns a list of files owned by a + project resource. + + :param group_name: Name of the resource group + :type group_name: str + :param service_name: Name of the service + :type service_name: str + :param project_name: Name of the project + :type project_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ProjectFile + :rtype: + ~azure.mgmt.datamigration.models.ProjectFilePaged[~azure.mgmt.datamigration.models.ProjectFile] + :raises: + :class:`ApiErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'groupName': self._serialize.url("group_name", group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'projectName': self._serialize.url("project_name", project_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ProjectFilePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ProjectFilePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files'} + + def get( + self, group_name, service_name, project_name, file_name, custom_headers=None, raw=False, **operation_config): + """Get file information. + + The files resource is a nested, proxy-only resource representing a file + stored under the project resource. This method retrieves information + about a file. + + :param group_name: Name of the resource group + :type group_name: str + :param service_name: Name of the service + :type service_name: str + :param project_name: Name of the project + :type project_name: str + :param file_name: Name of the File + :type file_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ProjectFile or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.datamigration.models.ProjectFile or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'groupName': self._serialize.url("group_name", group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'projectName': self._serialize.url("project_name", project_name, 'str'), + 'fileName': self._serialize.url("file_name", file_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ProjectFile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}'} + + def create_or_update( + self, group_name, service_name, project_name, file_name, etag=None, properties=None, custom_headers=None, raw=False, **operation_config): + """Create a file resource. + + The PUT method creates a new file or updates an existing one. + + :param group_name: Name of the resource group + :type group_name: str + :param service_name: Name of the service + :type service_name: str + :param project_name: Name of the project + :type project_name: str + :param file_name: Name of the File + :type file_name: str + :param etag: HTTP strong entity tag value. This is ignored if + submitted. + :type etag: str + :param properties: Custom file properties + :type properties: + ~azure.mgmt.datamigration.models.ProjectFileProperties + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ProjectFile or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.datamigration.models.ProjectFile or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + parameters = models.ProjectFile(etag=etag, properties=properties) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'groupName': self._serialize.url("group_name", group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'projectName': self._serialize.url("project_name", project_name, 'str'), + 'fileName': self._serialize.url("file_name", file_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ProjectFile') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ProjectFile', response) + if response.status_code == 201: + deserialized = self._deserialize('ProjectFile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}'} + + def delete( + self, group_name, service_name, project_name, file_name, custom_headers=None, raw=False, **operation_config): + """Delete file. + + This method deletes a file. + + :param group_name: Name of the resource group + :type group_name: str + :param service_name: Name of the service + :type service_name: str + :param project_name: Name of the project + :type project_name: str + :param file_name: Name of the File + :type file_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'groupName': self._serialize.url("group_name", group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'projectName': self._serialize.url("project_name", project_name, 'str'), + 'fileName': self._serialize.url("file_name", file_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ApiErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}'} + + def update( + self, group_name, service_name, project_name, file_name, etag=None, properties=None, custom_headers=None, raw=False, **operation_config): + """Update a file. + + This method updates an existing file. + + :param group_name: Name of the resource group + :type group_name: str + :param service_name: Name of the service + :type service_name: str + :param project_name: Name of the project + :type project_name: str + :param file_name: Name of the File + :type file_name: str + :param etag: HTTP strong entity tag value. This is ignored if + submitted. + :type etag: str + :param properties: Custom file properties + :type properties: + ~azure.mgmt.datamigration.models.ProjectFileProperties + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ProjectFile or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.datamigration.models.ProjectFile or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + parameters = models.ProjectFile(etag=etag, properties=properties) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'groupName': self._serialize.url("group_name", group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'projectName': self._serialize.url("project_name", project_name, 'str'), + 'fileName': self._serialize.url("file_name", file_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ProjectFile') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ProjectFile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}'} + + def read( + self, group_name, service_name, project_name, file_name, custom_headers=None, raw=False, **operation_config): + """Request storage information for downloading the file content. + + This method is used for requesting storage information using which + contents of the file can be downloaded. + + :param group_name: Name of the resource group + :type group_name: str + :param service_name: Name of the service + :type service_name: str + :param project_name: Name of the project + :type project_name: str + :param file_name: Name of the File + :type file_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FileStorageInfo or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.datamigration.models.FileStorageInfo or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.read.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'groupName': self._serialize.url("group_name", group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'projectName': self._serialize.url("project_name", project_name, 'str'), + 'fileName': self._serialize.url("file_name", file_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FileStorageInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + read.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}/read'} + + def read_write( + self, group_name, service_name, project_name, file_name, custom_headers=None, raw=False, **operation_config): + """Request information for reading and writing file content. + + This method is used for requesting information for reading and writing + the file content. + + :param group_name: Name of the resource group + :type group_name: str + :param service_name: Name of the service + :type service_name: str + :param project_name: Name of the project + :type project_name: str + :param file_name: Name of the File + :type file_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FileStorageInfo or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.datamigration.models.FileStorageInfo or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.read_write.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'groupName': self._serialize.url("group_name", group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'projectName': self._serialize.url("project_name", project_name, 'str'), + 'fileName': self._serialize.url("file_name", file_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FileStorageInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + read_write.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}/readwrite'} diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/operations.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/operations.py index 541b10fbca20..6249ae2fa208 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/operations.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/operations.py @@ -22,7 +22,7 @@ class Operations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API. Constant value: "2018-04-19". + :ivar api_version: Version of the API. Constant value: "2018-07-15-preview". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-04-19" + self.api_version = "2018-07-15-preview" self.config = config @@ -70,7 +70,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -79,9 +79,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/projects_operations.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/projects_operations.py index 9e071cc44f02..07c814971fb0 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/projects_operations.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/projects_operations.py @@ -22,7 +22,7 @@ class ProjectsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API. Constant value: "2018-04-19". + :ivar api_version: Version of the API. Constant value: "2018-07-15-preview". """ models = models @@ -32,11 +32,11 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-04-19" + self.api_version = "2018-07-15-preview" self.config = config - def list_by_resource_group( + def list( self, group_name, service_name, custom_headers=None, raw=False, **operation_config): """Get projects in a service. @@ -63,7 +63,7 @@ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_by_resource_group.metadata['url'] + url = self.list.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), 'groupName': self._serialize.url("group_name", group_name, 'str'), @@ -81,7 +81,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,9 +90,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -108,7 +107,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized - list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects'} + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects'} def create_or_update( self, parameters, group_name, service_name, project_name, custom_headers=None, raw=False, **operation_config): @@ -153,6 +152,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -165,9 +165,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'Project') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ApiErrorException(self._deserialize, response) @@ -227,7 +226,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -236,8 +235,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -298,7 +297,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -307,8 +305,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -360,6 +358,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -372,9 +371,8 @@ def update( body_content = self._serialize.body(parameters, 'Project') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/resource_skus_operations.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/resource_skus_operations.py index a089b020981f..903994cd6ef8 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/resource_skus_operations.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/resource_skus_operations.py @@ -22,7 +22,7 @@ class ResourceSkusOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API. Constant value: "2018-04-19". + :ivar api_version: Version of the API. Constant value: "2018-07-15-preview". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-04-19" + self.api_version = "2018-07-15-preview" self.config = config @@ -73,7 +73,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,9 +82,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/services_operations.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/services_operations.py index 4fd7a95abe38..fd994f8fa23a 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/services_operations.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/services_operations.py @@ -24,7 +24,7 @@ class ServicesOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API. Constant value: "2018-04-19". + :ivar api_version: Version of the API. Constant value: "2018-07-15-preview". """ models = models @@ -34,7 +34,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-04-19" + self.api_version = "2018-07-15-preview" self.config = config @@ -56,6 +56,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -68,9 +69,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'DataMigrationService') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -190,7 +190,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -199,8 +199,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -237,7 +237,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -246,8 +245,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -324,6 +323,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -336,9 +336,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'DataMigrationService') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -452,7 +451,7 @@ def check_status( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -461,8 +460,8 @@ def check_status( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -497,7 +496,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -506,8 +504,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -580,7 +578,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -589,8 +586,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -691,7 +688,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -700,9 +697,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -720,7 +716,7 @@ def internal_paging(next_link=None, raw=False): return deserialized list_skus.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/skus'} - def nested_check_name_availability( + def check_children_name_availability( self, group_name, service_name, name=None, type=None, custom_headers=None, raw=False, **operation_config): """Check nested resource name validity and availability. @@ -749,7 +745,7 @@ def nested_check_name_availability( parameters = models.NameAvailabilityRequest(name=name, type=type) # Construct URL - url = self.nested_check_name_availability.metadata['url'] + url = self.check_children_name_availability.metadata['url'] path_format_arguments = { 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), 'groupName': self._serialize.url("group_name", group_name, 'str'), @@ -763,6 +759,7 @@ def nested_check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -775,9 +772,8 @@ def nested_check_name_availability( body_content = self._serialize.body(parameters, 'NameAvailabilityRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -792,7 +788,7 @@ def nested_check_name_availability( return client_raw_response return deserialized - nested_check_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability'} + check_children_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability'} def list_by_resource_group( self, group_name, custom_headers=None, raw=False, **operation_config): @@ -836,7 +832,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -845,9 +841,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -904,7 +899,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -913,9 +908,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -973,6 +967,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -985,9 +980,8 @@ def check_name_availability( body_content = self._serialize.body(parameters, 'NameAvailabilityRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/tasks_operations.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/tasks_operations.py index 5f5d65d9eacc..18b08b2dadd0 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/tasks_operations.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/tasks_operations.py @@ -22,7 +22,7 @@ class TasksOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API. Constant value: "2018-04-19". + :ivar api_version: Version of the API. Constant value: "2018-07-15-preview". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-04-19" + self.api_version = "2018-07-15-preview" self.config = config @@ -90,7 +90,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -99,9 +99,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -172,6 +171,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -184,9 +184,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'ProjectTask') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ApiErrorException(self._deserialize, response) @@ -253,7 +252,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -262,8 +261,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -328,7 +327,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -337,8 +335,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -401,6 +399,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -413,9 +412,8 @@ def update( body_content = self._serialize.body(parameters, 'ProjectTask') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -476,7 +474,7 @@ def cancel( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -485,8 +483,8 @@ def cancel( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -502,3 +500,80 @@ def cancel( return deserialized cancel.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/cancel'} + + def command( + self, group_name, service_name, project_name, task_name, parameters, custom_headers=None, raw=False, **operation_config): + """Execute a command on a task. + + The tasks resource is a nested, proxy-only resource representing work + performed by a DMS instance. This method executes a command on a + running task. + + :param group_name: Name of the resource group + :type group_name: str + :param service_name: Name of the service + :type service_name: str + :param project_name: Name of the project + :type project_name: str + :param task_name: Name of the Task + :type task_name: str + :param parameters: Command to execute + :type parameters: ~azure.mgmt.datamigration.models.CommandProperties + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CommandProperties or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.datamigration.models.CommandProperties or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.command.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'groupName': self._serialize.url("group_name", group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'projectName': self._serialize.url("project_name", project_name, 'str'), + 'taskName': self._serialize.url("task_name", task_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CommandProperties') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CommandProperties', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + command.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/command'} diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/usages_operations.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/usages_operations.py index 502c3ea22afe..35255c37dbbc 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/usages_operations.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/operations/usages_operations.py @@ -22,7 +22,7 @@ class UsagesOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API. Constant value: "2018-04-19". + :ivar api_version: Version of the API. Constant value: "2018-07-15-preview". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-04-19" + self.api_version = "2018-07-15-preview" self.config = config @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-datamigration/azure/mgmt/datamigration/version.py b/azure-mgmt-datamigration/azure/mgmt/datamigration/version.py index a39916c162ce..be75d8eae586 100644 --- a/azure-mgmt-datamigration/azure/mgmt/datamigration/version.py +++ b/azure-mgmt-datamigration/azure/mgmt/datamigration/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "1.0.0" +VERSION = "2.1.0" diff --git a/azure-mgmt-datamigration/azure_bdist_wheel.py b/azure-mgmt-datamigration/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-datamigration/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-datamigration/setup.cfg b/azure-mgmt-datamigration/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-datamigration/setup.cfg +++ b/azure-mgmt-datamigration/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-datamigration/setup.py b/azure-mgmt-datamigration/setup.py index 57a54a470d6e..135749ea6bc3 100644 --- a/azure-mgmt-datamigration/setup.py +++ b/azure-mgmt-datamigration/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-datamigration" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-datamigration/tests/recordings/test_mgmt_datamigration.test_datamigration.yaml b/azure-mgmt-datamigration/tests/recordings/test_mgmt_datamigration.test_datamigration.yaml index 11f67ab884d3..d4111891072e 100644 --- a/azure-mgmt-datamigration/tests/recordings/test_mgmt_datamigration.test_datamigration.yaml +++ b/azure-mgmt-datamigration/tests/recordings/test_mgmt_datamigration.test_datamigration.yaml @@ -7,18 +7,19 @@ interactions: Connection: [keep-alive] Content-Length: ['59'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/checkNameAvailability?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/checkNameAvailability?api-version=2018-07-15-preview response: body: {string: '{"nameAvailable":true}'} headers: cache-control: [no-cache] content-length: ['22'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:08 GMT'] + date: ['Thu, 06 Sep 2018 23:22:03 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -28,36 +29,37 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"location": "centralus", "properties": {"addressSpace": {"addressPrefixes": - ["10.0.0.0/16"]}}}' + body: '{"properties": {"addressSpace": {"addressPrefixes": ["10.0.0.0/16"]}}, + "location": "centralus"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['95'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 networkmanagementclient/2.0.0rc2 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 networkmanagementclient/2.0.0 + Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149?api-version=2018-06-01 response: body: {string: "{\r\n \"name\": \"pysdkdmstestvnet74501149\",\r\n \"id\": \"\ /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149\"\ - ,\r\n \"etag\": \"W/\\\"78f14562-a606-48ef-8407-22ea4b9b56da\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"fc40861c-fc44-4493-9a2e-2303111c977c\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"centralus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"dc0b0d58-5a46-42d4-8b5b-c251d15dd129\",\r\n \"\ + \ \"resourceGuid\": \"9df078ad-5140-4409-9140-661abf7c0d56\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\"\ : [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ : false\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/0fdf6f56-b97e-425c-aefc-bddf6a3c4340?api-version=2018-02-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/1d6431b4-1e50-4623-9a27-4dd8437e38d6?api-version=2018-06-01'] cache-control: [no-cache] content-length: ['683'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:11 GMT'] + date: ['Thu, 06 Sep 2018 23:22:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -71,17 +73,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 networkmanagementclient/2.0.0rc2 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 networkmanagementclient/2.0.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/0fdf6f56-b97e-425c-aefc-bddf6a3c4340?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/1d6431b4-1e50-4623-9a27-4dd8437e38d6?api-version=2018-06-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:14 GMT'] + date: ['Thu, 06 Sep 2018 23:22:07 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -96,17 +99,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 networkmanagementclient/2.0.0rc2 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 networkmanagementclient/2.0.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/0fdf6f56-b97e-425c-aefc-bddf6a3c4340?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/1d6431b4-1e50-4623-9a27-4dd8437e38d6?api-version=2018-06-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:25 GMT'] + date: ['Thu, 06 Sep 2018 23:22:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -121,17 +125,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 networkmanagementclient/2.0.0rc2 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 networkmanagementclient/2.0.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149?api-version=2018-06-01 response: body: {string: "{\r\n \"name\": \"pysdkdmstestvnet74501149\",\r\n \"id\": \"\ /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149\"\ - ,\r\n \"etag\": \"W/\\\"14c35df8-e39f-43fd-abd8-dc2f51f88e6a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"f7c64019-55b8-4636-a581-4c4fd8c71ae7\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"centralus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"dc0b0d58-5a46-42d4-8b5b-c251d15dd129\",\r\n \"\ + \ \"resourceGuid\": \"9df078ad-5140-4409-9140-661abf7c0d56\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\"\ : [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ @@ -140,8 +145,8 @@ interactions: cache-control: [no-cache] content-length: ['684'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:25 GMT'] - etag: [W/"14c35df8-e39f-43fd-abd8-dc2f51f88e6a"] + date: ['Thu, 06 Sep 2018 23:22:19 GMT'] + etag: [W/"f7c64019-55b8-4636-a581-4c4fd8c71ae7"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -158,27 +163,118 @@ interactions: Connection: [keep-alive] Content-Length: ['48'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 networkmanagementclient/2.0.0rc2 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 networkmanagementclient/2.0.0 + Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1?api-version=2018-06-01 response: body: {string: "{\r\n \"name\": \"subnet1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1\"\ - ,\r\n \"etag\": \"W/\\\"510a90b2-734c-4b60-9c89-8133dc54af4d\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"48a7f266-34ee-4330-91c2-78ca8e87a464\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n}"} + addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": []\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/746dc1ec-e348-494e-885b-34e7f3893b1f?api-version=2018-02-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/da218909-7ea9-4b05-bde9-afd0b15dc576?api-version=2018-06-01'] cache-control: [no-cache] - content-length: ['366'] + content-length: ['446'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:26 GMT'] + date: ['Thu, 06 Sep 2018 23:22:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] + status: {code: 201, message: Created} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 networkmanagementclient/2.0.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/da218909-7ea9-4b05-bde9-afd0b15dc576?api-version=2018-06-01 + response: + body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['29'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:22:22 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 networkmanagementclient/2.0.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1?api-version=2018-06-01 + response: + body: {string: "{\r\n \"name\": \"subnet1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1\"\ + ,\r\n \"etag\": \"W/\\\"98c0e50e-af63-44a6-b3f6-0604a2efd51c\\\"\",\r\n \ + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ + addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": []\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['447'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:22:23 GMT'] + etag: [W/"98c0e50e-af63-44a6-b3f6-0604a2efd51c"] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: 'b''b\''b\\\''b\\\\\\\''{"properties": {"virtualSubnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1"}, + "sku": {"name": "GeneralPurpose_2vCores"}, "location": "centralus"}\\\\\\\''\\\''\''''' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['279'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149?api-version=2018-07-15-preview + response: + body: {string: '{"properties":{"provisioningState":"Accepted","virtualSubnetId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1"},"etag":"lkAGmRuGawcId8LUSrCZylUQ0UrHuuv0ElVl4TNlTmQ=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149","location":"centralus","name":"pysdkdmstestservice74501149","sku":{"name":"GeneralPurpose_2vCores","size":"2 + vCores","tier":"General Purpose"},"type":"Microsoft.DataMigration/services"}'} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview'] + cache-control: [no-cache] + content-length: ['645'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:22:25 GMT'] + etag: ['"lkAGmRuGawcId8LUSrCZylUQ0UrHuuv0ElVl4TNlTmQ="'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: @@ -187,20 +283,411 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 networkmanagementclient/2.0.0rc2 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:22:55 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:23:25 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:23:57 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:24:27 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:24:57 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:25:28 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:25:58 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:26:28 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:26:59 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:27:30 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:28:00 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:28:30 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:29:01 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:29:32 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:30:03 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/centralus/operations/746dc1ec-e348-494e-885b-34e7f3893b1f?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview response: - body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} headers: cache-control: [no-cache] - content-length: ['29'] + content-length: ['234'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:30 GMT'] + date: ['Thu, 06 Sep 2018 23:30:32 GMT'] expires: ['-1'] pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] @@ -212,78 +699,200 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 networkmanagementclient/2.0.0rc2 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview response: - body: {string: "{\r\n \"name\": \"subnet1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1\"\ - ,\r\n \"etag\": \"W/\\\"c069da59-5d5d-434b-92d4-3875e6e1c30d\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\"\r\n }\r\n}"} + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} headers: cache-control: [no-cache] - content-length: ['367'] + content-length: ['234'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:30 GMT'] - etag: [W/"c069da59-5d5d-434b-92d4-3875e6e1c30d"] + date: ['Thu, 06 Sep 2018 23:31:03 GMT'] expires: ['-1'] pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: 'b''b\''b\\\''b\\\\\\\''{"location": "centralus", "properties": {"virtualSubnetId": - "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1"}, - "sku": {"name": "Basic_2vCores"}}\\\\\\\''\\\''\''''' + body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['270'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149?api-version=2018-04-19 + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview response: - body: {string: '{"properties":{"provisioningState":"Accepted","virtualSubnetId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1"},"etag":"53vC4/R7Ph4WE0zUzIkttJCaBKfkEb8lS0zlGxmtfaw=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149","location":"centralus","name":"pysdkdmstestservice74501149","sku":{"name":"Basic_2vCores","size":"2 - vCores","tier":"Basic"},"type":"Microsoft.DataMigration/services"}'} + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/ad1ddc5c-ea2f-4551-9696-8e80aa1dd0a6?api-version=2018-04-19'] cache-control: [no-cache] - content-length: ['626'] + content-length: ['234'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:11:34 GMT'] - etag: ['"53vC4/R7Ph4WE0zUzIkttJCaBKfkEb8lS0zlGxmtfaw="'] + date: ['Thu, 06 Sep 2018 23:31:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 201, message: Created} + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:32:05 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:32:35 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:33:05 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:33:35 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:34:06 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} - request: body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/ad1ddc5c-ea2f-4551-9696-8e80aa1dd0a6?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview response: - body: {string: '{"name":"ad1ddc5c-ea2f-4551-9696-8e80aa1dd0a6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/ad1ddc5c-ea2f-4551-9696-8e80aa1dd0a6","status":"Running"}'} + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} headers: cache-control: [no-cache] content-length: ['234'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:12:04 GMT'] + date: ['Thu, 06 Sep 2018 23:34:37 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -298,17 +907,70 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/ad1ddc5c-ea2f-4551-9696-8e80aa1dd0a6?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview response: - body: {string: '{"name":"ad1ddc5c-ea2f-4551-9696-8e80aa1dd0a6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/ad1ddc5c-ea2f-4551-9696-8e80aa1dd0a6","status":"Succeeded"}'} + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:35:07 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:35:38 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39?api-version=2018-07-15-preview + response: + body: {string: '{"name":"51046827-01e6-49eb-9cc8-db118a612f39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/51046827-01e6-49eb-9cc8-db118a612f39","status":"Succeeded"}'} headers: cache-control: [no-cache] content-length: ['236'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:24:19 GMT'] + date: ['Thu, 06 Sep 2018 23:36:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -323,19 +985,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149?api-version=2018-07-15-preview response: - body: {string: '{"properties":{"provisioningState":"Succeeded","virtualNicId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/networkInterfaces/NIC-q8y37gvd9fkz2jw7yd4j6hd6","virtualSubnetId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1"},"etag":"RCbjT2PLWxCH5cLHF6xz2gS3VNTdE9rGdd4ITxKf7pQ=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149","location":"centralus","name":"pysdkdmstestservice74501149","sku":{"name":"Basic_2vCores","size":"2 - vCores","tier":"Basic"},"type":"Microsoft.DataMigration/services"}'} + body: {string: '{"properties":{"provisioningState":"Succeeded","virtualNicId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/networkInterfaces/NIC-en2f2e9dn2krgg4nnqqes2ef","virtualSubnetId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1"},"etag":"sjsnvFRJnZpMcPxRiQY9x7G1U9hpxPWof3sW5vxzdFM=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149","location":"centralus","name":"pysdkdmstestservice74501149","sku":{"name":"GeneralPurpose_2vCores","size":"2 + vCores","tier":"General Purpose"},"type":"Microsoft.DataMigration/services"}'} headers: cache-control: [no-cache] - content-length: ['807'] + content-length: ['826'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:24:20 GMT'] - etag: ['"RCbjT2PLWxCH5cLHF6xz2gS3VNTdE9rGdd4ITxKf7pQ="'] + date: ['Thu, 06 Sep 2018 23:36:09 GMT'] + etag: ['"sjsnvFRJnZpMcPxRiQY9x7G1U9hpxPWof3sW5vxzdFM="'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -350,21 +1013,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149?api-version=2018-07-15-preview response: - body: {string: '{"properties":{"provisioningState":"Succeeded","virtualNicId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/networkInterfaces/NIC-q8y37gvd9fkz2jw7yd4j6hd6","virtualSubnetId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1"},"etag":"RCbjT2PLWxCH5cLHF6xz2gS3VNTdE9rGdd4ITxKf7pQ=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149","location":"centralus","name":"pysdkdmstestservice74501149","sku":{"name":"Basic_2vCores","size":"2 - vCores","tier":"Basic"},"type":"Microsoft.DataMigration/services"}'} + body: {string: '{"properties":{"provisioningState":"Succeeded","virtualNicId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/networkInterfaces/NIC-en2f2e9dn2krgg4nnqqes2ef","virtualSubnetId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.Network/virtualNetworks/pysdkdmstestvnet74501149/subnets/subnet1"},"etag":"sjsnvFRJnZpMcPxRiQY9x7G1U9hpxPWof3sW5vxzdFM=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149","location":"centralus","name":"pysdkdmstestservice74501149","sku":{"name":"GeneralPurpose_2vCores","size":"2 + vCores","tier":"General Purpose"},"type":"Microsoft.DataMigration/services"}'} headers: cache-control: [no-cache] - content-length: ['807'] + content-length: ['826'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:24:21 GMT'] - etag: ['"RCbjT2PLWxCH5cLHF6xz2gS3VNTdE9rGdd4ITxKf7pQ="'] + date: ['Thu, 06 Sep 2018 23:36:09 GMT'] + etag: ['"sjsnvFRJnZpMcPxRiQY9x7G1U9hpxPWof3sW5vxzdFM="'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -381,11 +1044,12 @@ interactions: Connection: [keep-alive] Content-Length: ['59'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/checkNameAvailability?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/checkNameAvailability?api-version=2018-07-15-preview response: body: {string: '{"reason":"AlreadyExists","message":"The resource name is already in use.","nameAvailable":false}'} @@ -393,7 +1057,7 @@ interactions: cache-control: [no-cache] content-length: ['97'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:24:22 GMT'] + date: ['Thu, 06 Sep 2018 23:36:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -403,33 +1067,34 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"location": "centralus", "properties": {"sourcePlatform": "SQL", "targetPlatform": - "SQLDB"}}' + body: '{"properties": {"targetPlatform": "SQLDB", "sourcePlatform": "SQL"}, "location": + "centralus"}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['93'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149?api-version=2018-07-15-preview response: - body: {string: '{"properties":{"sourcePlatform":"SQL","targetPlatform":"SQLDB","creationTime":"2018-05-16T00:24:25.3368921+00:00","provisioningState":"Succeeded"},"etag":"GakHPelkIUBBsRzpGIyYIQy84b0jjjaKQqZ/8DSBT9s=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149","location":"centralus","name":"pysdkdmstestproject74501149","type":"Microsoft.DataMigration/services/projects"}'} + body: {string: '{"properties":{"sourcePlatform":"SQL","targetPlatform":"SQLDB","creationTime":"2018-09-06T23:36:11.7429734+00:00","provisioningState":"Succeeded"},"etag":"jpRpFq1oCgOfKjIvpN1hdlutGkcsG/DIL0Pa6JZuN9Q=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149","location":"centralus","name":"pysdkdmstestproject74501149","type":"Microsoft.DataMigration/services/projects"}'} headers: cache-control: [no-cache] content-length: ['515'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:24:25 GMT'] - etag: ['"GakHPelkIUBBsRzpGIyYIQy84b0jjjaKQqZ/8DSBT9s="'] + date: ['Thu, 06 Sep 2018 23:36:11 GMT'] + etag: ['"jpRpFq1oCgOfKjIvpN1hdlutGkcsG/DIL0Pa6JZuN9Q="'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -437,20 +1102,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149?api-version=2018-07-15-preview response: - body: {string: '{"properties":{"sourcePlatform":"SQL","targetPlatform":"SQLDB","creationTime":"2018-05-16T00:24:25.3368921+00:00","provisioningState":"Succeeded"},"etag":"GakHPelkIUBBsRzpGIyYIQy84b0jjjaKQqZ/8DSBT9s=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149","location":"centralus","name":"pysdkdmstestproject74501149","type":"Microsoft.DataMigration/services/projects"}'} + body: {string: '{"properties":{"sourcePlatform":"SQL","targetPlatform":"SQLDB","creationTime":"2018-09-06T23:36:11.7429734+00:00","provisioningState":"Succeeded"},"etag":"jpRpFq1oCgOfKjIvpN1hdlutGkcsG/DIL0Pa6JZuN9Q=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149","location":"centralus","name":"pysdkdmstestproject74501149","type":"Microsoft.DataMigration/services/projects"}'} headers: cache-control: [no-cache] content-length: ['515'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:24:25 GMT'] - etag: ['"GakHPelkIUBBsRzpGIyYIQy84b0jjjaKQqZ/8DSBT9s="'] + date: ['Thu, 06 Sep 2018 23:36:12 GMT'] + etag: ['"jpRpFq1oCgOfKjIvpN1hdlutGkcsG/DIL0Pa6JZuN9Q="'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -460,36 +1125,37 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"properties": {"taskType": "Migrate.SqlServer.SqlDb", "input": {"sourceConnectionInfo": - {"userName": "testuser", "password": "password", "type": "SqlConnectionInfo", - "dataSource": "testsource.microsoft.com", "authentication": "SqlAuthentication", - "encryptConnection": true, "trustServerCertificate": true}, "targetConnectionInfo": - {"userName": "testuser", "password": "password", "type": "SqlConnectionInfo", - "dataSource": "testtarget.microsoft.com", "authentication": "SqlAuthentication", - "encryptConnection": true, "trustServerCertificate": true}, "selectedDatabases": - [{"name": "Test_Source", "targetDatabaseName": "Test_Target", "makeSourceDbReadOnly": - false, "tableMap": {"dbo.TestTableForeign": "dbo.TestTableForeign", "dbo.TestTablePrimary": - "dbo.TestTablePrimary"}}], "validationOptions": {"enableSchemaValidation": false, - "enableDataIntegrityValidation": false, "enableQueryAnalysisValidation": false}}}}' + body: '{"properties": {"taskType": "Migrate.SqlServer.SqlDb", "input": {"validationOptions": + {"enableSchemaValidation": false, "enableDataIntegrityValidation": false, "enableQueryAnalysisValidation": + false}, "sourceConnectionInfo": {"password": "password", "dataSource": "testsource.microsoft.com", + "encryptConnection": true, "userName": "testuser", "authentication": "SqlAuthentication", + "type": "SqlConnectionInfo", "trustServerCertificate": true}, "selectedDatabases": + [{"makeSourceDbReadOnly": false, "name": "Test_Source", "tableMap": {"dbo.TestTablePrimary": + "dbo.TestTablePrimary", "dbo.TestTableForeign": "dbo.TestTableForeign"}, "targetDatabaseName": + "Test_Target"}], "targetConnectionInfo": {"password": "password", "dataSource": + "testtarget.microsoft.com", "encryptConnection": true, "userName": "testuser", + "authentication": "SqlAuthentication", "type": "SqlConnectionInfo", "trustServerCertificate": + true}}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['914'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149?api-version=2018-07-15-preview response: - body: {string: '{"properties":{"input":{"sourceConnectionInfo":{"userName":"testuser","type":"SqlConnectionInfo","dataSource":"testsource.microsoft.com","authentication":"SqlAuthentication","encryptConnection":true,"trustServerCertificate":true},"targetConnectionInfo":{"userName":"testuser","type":"SqlConnectionInfo","dataSource":"testtarget.microsoft.com","authentication":"SqlAuthentication","encryptConnection":true,"trustServerCertificate":true},"selectedDatabases":[{"name":"Test_Source","targetDatabaseName":"Test_Target","makeSourceDbReadOnly":false,"tableMap":{"dbo.TestTableForeign":"dbo.TestTableForeign","dbo.TestTablePrimary":"dbo.TestTablePrimary"}}],"validationOptions":{"enableSchemaValidation":false,"enableDataIntegrityValidation":false,"enableQueryAnalysisValidation":false}},"taskType":"Migrate.SqlServer.SqlDb","state":"Queued"},"etag":"AoEOtS7/NnLNspK4PfQdGCwCimVAjs4NSknIxN9KOzU=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149","name":"pysdkdmstesttask74501149","type":"Microsoft.DataMigration/services/projects/tasks"}'} + body: {string: '{"properties":{"input":{"validationOptions":{"enableSchemaValidation":false,"enableDataIntegrityValidation":false,"enableQueryAnalysisValidation":false},"sourceConnectionInfo":{"dataSource":"testsource.microsoft.com","encryptConnection":true,"userName":"testuser","authentication":"SqlAuthentication","type":"SqlConnectionInfo","trustServerCertificate":true},"selectedDatabases":[{"makeSourceDbReadOnly":false,"name":"Test_Source","tableMap":{"dbo.TestTablePrimary":"dbo.TestTablePrimary","dbo.TestTableForeign":"dbo.TestTableForeign"},"targetDatabaseName":"Test_Target"}],"targetConnectionInfo":{"dataSource":"testtarget.microsoft.com","encryptConnection":true,"userName":"testuser","authentication":"SqlAuthentication","type":"SqlConnectionInfo","trustServerCertificate":true}},"taskType":"Migrate.SqlServer.SqlDb","state":"Queued"},"etag":"OjlvxiIKKjOfPPy1G8CKPiM8UyaO0JgZcrOKbeb6ZI0=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149","name":"pysdkdmstesttask74501149","type":"Microsoft.DataMigration/services/projects/tasks"}'} headers: cache-control: [no-cache] content-length: ['1214'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:24:28 GMT'] - etag: ['"AoEOtS7/NnLNspK4PfQdGCwCimVAjs4NSknIxN9KOzU="'] + date: ['Thu, 06 Sep 2018 23:36:13 GMT'] + etag: ['"OjlvxiIKKjOfPPy1G8CKPiM8UyaO0JgZcrOKbeb6ZI0="'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -503,20 +1169,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149?api-version=2018-07-15-preview response: - body: {string: '{"properties":{"input":{"sourceConnectionInfo":{"userName":"testuser","type":"SqlConnectionInfo","dataSource":"testsource.microsoft.com","authentication":"SqlAuthentication","encryptConnection":true,"trustServerCertificate":true},"targetConnectionInfo":{"userName":"testuser","type":"SqlConnectionInfo","dataSource":"testtarget.microsoft.com","authentication":"SqlAuthentication","encryptConnection":true,"trustServerCertificate":true},"selectedDatabases":[{"name":"Test_Source","targetDatabaseName":"Test_Target","makeSourceDbReadOnly":false,"tableMap":{"dbo.TestTableForeign":"dbo.TestTableForeign","dbo.TestTablePrimary":"dbo.TestTablePrimary"}}],"validationOptions":{"enableSchemaValidation":false,"enableDataIntegrityValidation":false,"enableQueryAnalysisValidation":false}},"taskType":"Migrate.SqlServer.SqlDb","state":"Running"},"etag":"qbEoubDiFIl9GMwviCGsJlfQPlrf5QVpwlexppjozLQ=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149","name":"pysdkdmstesttask74501149","type":"Microsoft.DataMigration/services/projects/tasks"}'} + body: {string: '{"properties":{"input":{"validationOptions":{"enableSchemaValidation":false,"enableDataIntegrityValidation":false,"enableQueryAnalysisValidation":false},"sourceConnectionInfo":{"dataSource":"testsource.microsoft.com","encryptConnection":true,"userName":"testuser","authentication":"SqlAuthentication","type":"SqlConnectionInfo","trustServerCertificate":true},"selectedDatabases":[{"makeSourceDbReadOnly":false,"name":"Test_Source","tableMap":{"dbo.TestTablePrimary":"dbo.TestTablePrimary","dbo.TestTableForeign":"dbo.TestTableForeign"},"targetDatabaseName":"Test_Target"}],"targetConnectionInfo":{"dataSource":"testtarget.microsoft.com","encryptConnection":true,"userName":"testuser","authentication":"SqlAuthentication","type":"SqlConnectionInfo","trustServerCertificate":true}},"taskType":"Migrate.SqlServer.SqlDb","state":"Queued"},"etag":"OjlvxiIKKjOfPPy1G8CKPiM8UyaO0JgZcrOKbeb6ZI0=","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149","name":"pysdkdmstesttask74501149","type":"Microsoft.DataMigration/services/projects/tasks"}'} headers: cache-control: [no-cache] - content-length: ['1215'] + content-length: ['1214'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:24:30 GMT'] - etag: ['"qbEoubDiFIl9GMwviCGsJlfQPlrf5QVpwlexppjozLQ="'] + date: ['Thu, 06 Sep 2018 23:36:13 GMT'] + etag: ['"OjlvxiIKKjOfPPy1G8CKPiM8UyaO0JgZcrOKbeb6ZI0="'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -532,18 +1198,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149?deleteRunningTasks=true&api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149/tasks/pysdkdmstesttask74501149?deleteRunningTasks=true&api-version=2018-07-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 16 May 2018 00:24:30 GMT'] + date: ['Thu, 06 Sep 2018 23:36:14 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -558,18 +1224,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149/projects/pysdkdmstestproject74501149?api-version=2018-07-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 16 May 2018 00:24:33 GMT'] + date: ['Thu, 06 Sep 2018 23:36:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -584,21 +1250,21 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dms_sdk_test74501149/providers/Microsoft.DataMigration/services/pysdkdmstestservice74501149?api-version=2018-07-15-preview response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/9d5fba26-090f-4123-969e-d6464c9462e4?api-version=2018-04-19'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b?api-version=2018-07-15-preview'] cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 16 May 2018 00:24:34 GMT'] + date: ['Thu, 06 Sep 2018 23:36:18 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationResults/9d5fba26-090f-4123-969e-d6464c9462e4?api-version=2018-04-19'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationResults/31ea7d37-fe76-4f26-aa98-31df44cd8f8b?api-version=2018-07-15-preview'] pragma: [no-cache] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -611,17 +1277,122 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b?api-version=2018-07-15-preview + response: + body: {string: '{"name":"31ea7d37-fe76-4f26-aa98-31df44cd8f8b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:36:48 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b?api-version=2018-07-15-preview + response: + body: {string: '{"name":"31ea7d37-fe76-4f26-aa98-31df44cd8f8b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:37:19 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b?api-version=2018-07-15-preview + response: + body: {string: '{"name":"31ea7d37-fe76-4f26-aa98-31df44cd8f8b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:37:50 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b?api-version=2018-07-15-preview + response: + body: {string: '{"name":"31ea7d37-fe76-4f26-aa98-31df44cd8f8b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b","status":"Running"}'} + headers: + cache-control: [no-cache] + content-length: ['234'] + content-type: [application/json; charset=utf-8] + date: ['Thu, 06 Sep 2018 23:38:20 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-IIS/8.5] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/9d5fba26-090f-4123-969e-d6464c9462e4?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b?api-version=2018-07-15-preview response: - body: {string: '{"name":"9d5fba26-090f-4123-969e-d6464c9462e4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/9d5fba26-090f-4123-969e-d6464c9462e4","status":"Running"}'} + body: {string: '{"name":"31ea7d37-fe76-4f26-aa98-31df44cd8f8b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b","status":"Running"}'} headers: cache-control: [no-cache] content-length: ['234'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:25:03 GMT'] + date: ['Thu, 06 Sep 2018 23:38:50 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -636,17 +1407,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/9d5fba26-090f-4123-969e-d6464c9462e4?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b?api-version=2018-07-15-preview response: - body: {string: '{"name":"9d5fba26-090f-4123-969e-d6464c9462e4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/9d5fba26-090f-4123-969e-d6464c9462e4","status":"Succeeded"}'} + body: {string: '{"name":"31ea7d37-fe76-4f26-aa98-31df44cd8f8b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/operationStatuses/31ea7d37-fe76-4f26-aa98-31df44cd8f8b","status":"Succeeded"}'} headers: cache-control: [no-cache] content-length: ['236'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:28:38 GMT'] + date: ['Thu, 06 Sep 2018 23:39:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] @@ -663,18 +1435,19 @@ interactions: Connection: [keep-alive] Content-Length: ['59'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-datamigration/0.1.0 Azure-SDK-For-Python] + User-Agent: [python/3.5.2 (Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial) + requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.32 azure-mgmt-datamigration/0.1.0 + Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/checkNameAvailability?api-version=2018-04-19 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DataMigration/locations/centralus/checkNameAvailability?api-version=2018-07-15-preview response: body: {string: '{"nameAvailable":true}'} headers: cache-control: [no-cache] content-length: ['22'] content-type: [application/json; charset=utf-8] - date: ['Wed, 16 May 2018 00:28:39 GMT'] + date: ['Thu, 06 Sep 2018 23:39:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-IIS/8.5] diff --git a/azure-mgmt-datamigration/tests/test_mgmt_datamigration.py b/azure-mgmt-datamigration/tests/test_mgmt_datamigration.py index bf82ee5201b3..67c3bc341bad 100644 --- a/azure-mgmt-datamigration/tests/test_mgmt_datamigration.py +++ b/azure-mgmt-datamigration/tests/test_mgmt_datamigration.py @@ -33,7 +33,7 @@ def test_datamigration(self, resource_group): vnet_name = self.get_resource_name('pysdkdmstestvnet') vsubnet_id = '/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworks/{}/subnets/subnet1' service_name = self.get_resource_name('pysdkdmstestservice') - sku_name = 'Basic_2vCores' + sku_name = 'GeneralPurpose_2vCores' project_name = self.get_resource_name('pysdkdmstestproject') task_name = self.get_resource_name('pysdkdmstesttask') diff --git a/azure-mgmt-devspaces/MANIFEST.in b/azure-mgmt-devspaces/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-devspaces/MANIFEST.in +++ b/azure-mgmt-devspaces/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-devspaces/azure/__init__.py b/azure-mgmt-devspaces/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-devspaces/azure/__init__.py +++ b/azure-mgmt-devspaces/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-devspaces/azure/mgmt/__init__.py b/azure-mgmt-devspaces/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-devspaces/azure/mgmt/__init__.py +++ b/azure-mgmt-devspaces/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-devspaces/azure_bdist_wheel.py b/azure-mgmt-devspaces/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-devspaces/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-devspaces/setup.cfg b/azure-mgmt-devspaces/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-devspaces/setup.cfg +++ b/azure-mgmt-devspaces/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-devspaces/setup.py b/azure-mgmt-devspaces/setup.py index 3fad3248177b..e14033a3af4b 100644 --- a/azure-mgmt-devspaces/setup.py +++ b/azure-mgmt-devspaces/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-devspaces" @@ -76,10 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ + 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-devtestlabs/MANIFEST.in b/azure-mgmt-devtestlabs/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-devtestlabs/MANIFEST.in +++ b/azure-mgmt-devtestlabs/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-devtestlabs/README.rst b/azure-mgmt-devtestlabs/README.rst index 0fc0da3a061f..09b0c54db4db 100644 --- a/azure-mgmt-devtestlabs/README.rst +++ b/azure-mgmt-devtestlabs/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure DevTestLabs Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-devtestlabs/azure/__init__.py b/azure-mgmt-devtestlabs/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-devtestlabs/azure/__init__.py +++ b/azure-mgmt-devtestlabs/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-devtestlabs/azure/mgmt/__init__.py b/azure-mgmt-devtestlabs/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-devtestlabs/azure/mgmt/__init__.py +++ b/azure-mgmt-devtestlabs/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-devtestlabs/azure_bdist_wheel.py b/azure-mgmt-devtestlabs/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-devtestlabs/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-devtestlabs/sdk_packaging.toml b/azure-mgmt-devtestlabs/sdk_packaging.toml new file mode 100644 index 000000000000..8bcd468c8d60 --- /dev/null +++ b/azure-mgmt-devtestlabs/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-devtestlabs" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "DevTestLabs Management" +package_doc_id = "devtest-labs" +is_stable = true +is_arm = true diff --git a/azure-mgmt-devtestlabs/setup.cfg b/azure-mgmt-devtestlabs/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-devtestlabs/setup.cfg +++ b/azure-mgmt-devtestlabs/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-devtestlabs/setup.py b/azure-mgmt-devtestlabs/setup.py index c4275b45c75b..c74bcc7d5281 100644 --- a/azure-mgmt-devtestlabs/setup.py +++ b/azure-mgmt-devtestlabs/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-devtestlabs" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-dns/HISTORY.rst b/azure-mgmt-dns/HISTORY.rst index f077b6bad6b6..6cefb5ff00d4 100644 --- a/azure-mgmt-dns/HISTORY.rst +++ b/azure-mgmt-dns/HISTORY.rst @@ -3,6 +3,14 @@ Release History =============== +2.1.0 (2018-09-10) +++++++++++++++++++ + +**Features** + +- Model RecordSet has a new parameter target_resource +- Added operation group DnsResourceReferenceOperations + 2.0.0 (2018-07-01) ++++++++++++++++++ diff --git a/azure-mgmt-dns/MANIFEST.in b/azure-mgmt-dns/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-dns/MANIFEST.in +++ b/azure-mgmt-dns/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-dns/azure/__init__.py b/azure-mgmt-dns/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-dns/azure/__init__.py +++ b/azure-mgmt-dns/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-dns/azure/mgmt/__init__.py b/azure-mgmt-dns/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-dns/azure/mgmt/__init__.py +++ b/azure-mgmt-dns/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-dns/azure/mgmt/dns/dns_management_client.py b/azure-mgmt-dns/azure/mgmt/dns/dns_management_client.py index 5bcc6182a53a..da965cf33489 100644 --- a/azure-mgmt-dns/azure/mgmt/dns/dns_management_client.py +++ b/azure-mgmt-dns/azure/mgmt/dns/dns_management_client.py @@ -76,7 +76,7 @@ class DnsManagementClient(MultiApiClientMixin, SDKClient): :type profile: azure.profiles.KnownProfiles """ - DEFAULT_API_VERSION = '2018-03-01-preview' + DEFAULT_API_VERSION = '2018-05-01' _PROFILE_TAG = "azure.mgmt.dns.DnsManagementClient" LATEST_PROFILE = ProfileDefinition({ _PROFILE_TAG: { @@ -106,6 +106,7 @@ def models(cls, api_version=DEFAULT_API_VERSION): * 2016-04-01: :mod:`v2016_04_01.models` * 2018-03-01-preview: :mod:`v2018_03_01_preview.models` + * 2018-05-01: :mod:`v2018_05_01.models` """ if api_version == '2016-04-01': from .v2016_04_01 import models @@ -113,20 +114,39 @@ def models(cls, api_version=DEFAULT_API_VERSION): elif api_version == '2018-03-01-preview': from .v2018_03_01_preview import models return models + elif api_version == '2018-05-01': + from .v2018_05_01 import models + return models raise NotImplementedError("APIVersion {} is not available".format(api_version)) - + + @property + def dns_resource_reference(self): + """Instance depends on the API version: + + * 2018-05-01: :class:`DnsResourceReferenceOperations` + """ + api_version = self._get_api_version('dns_resource_reference') + if api_version == '2018-05-01': + from .v2018_05_01.operations import DnsResourceReferenceOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + @property def record_sets(self): """Instance depends on the API version: * 2016-04-01: :class:`RecordSetsOperations` * 2018-03-01-preview: :class:`RecordSetsOperations` + * 2018-05-01: :class:`RecordSetsOperations` """ api_version = self._get_api_version('record_sets') if api_version == '2016-04-01': from .v2016_04_01.operations import RecordSetsOperations as OperationClass elif api_version == '2018-03-01-preview': from .v2018_03_01_preview.operations import RecordSetsOperations as OperationClass + elif api_version == '2018-05-01': + from .v2018_05_01.operations import RecordSetsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -137,12 +157,15 @@ def zones(self): * 2016-04-01: :class:`ZonesOperations` * 2018-03-01-preview: :class:`ZonesOperations` + * 2018-05-01: :class:`ZonesOperations` """ api_version = self._get_api_version('zones') if api_version == '2016-04-01': from .v2016_04_01.operations import ZonesOperations as OperationClass elif api_version == '2018-03-01-preview': from .v2018_03_01_preview.operations import ZonesOperations as OperationClass + elif api_version == '2018-05-01': + from .v2018_05_01.operations import ZonesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/__init__.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/__init__.py new file mode 100644 index 000000000000..07ed3e0ff7ee --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/__init__.py @@ -0,0 +1,18 @@ +# 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 .dns_management_client import DnsManagementClient +from .version import VERSION + +__all__ = ['DnsManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/dns_management_client.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/dns_management_client.py new file mode 100644 index 000000000000..2bdc838f8a27 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/dns_management_client.py @@ -0,0 +1,93 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.record_sets_operations import RecordSetsOperations +from .operations.zones_operations import ZonesOperations +from .operations.dns_resource_reference_operations import DnsResourceReferenceOperations +from . import models + + +class DnsManagementClientConfiguration(AzureConfiguration): + """Configuration for DnsManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Specifies the Azure subscription ID, which + uniquely identifies the Microsoft Azure subscription. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(DnsManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-dns/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class DnsManagementClient(SDKClient): + """The DNS Management Client. + + :ivar config: Configuration for client. + :vartype config: DnsManagementClientConfiguration + + :ivar record_sets: RecordSets operations + :vartype record_sets: azure.mgmt.dns.v2018_05_01.operations.RecordSetsOperations + :ivar zones: Zones operations + :vartype zones: azure.mgmt.dns.v2018_05_01.operations.ZonesOperations + :ivar dns_resource_reference: DnsResourceReference operations + :vartype dns_resource_reference: azure.mgmt.dns.v2018_05_01.operations.DnsResourceReferenceOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Specifies the Azure subscription ID, which + uniquely identifies the Microsoft Azure subscription. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = DnsManagementClientConfiguration(credentials, subscription_id, base_url) + super(DnsManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2018-05-01' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.record_sets = RecordSetsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.zones = ZonesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.dns_resource_reference = DnsResourceReferenceOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/__init__.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/__init__.py new file mode 100644 index 000000000000..304d0419355e --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/__init__.py @@ -0,0 +1,83 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .arecord_py3 import ARecord + from .aaaa_record_py3 import AaaaRecord + from .mx_record_py3 import MxRecord + from .ns_record_py3 import NsRecord + from .ptr_record_py3 import PtrRecord + from .srv_record_py3 import SrvRecord + from .txt_record_py3 import TxtRecord + from .cname_record_py3 import CnameRecord + from .soa_record_py3 import SoaRecord + from .caa_record_py3 import CaaRecord + from .sub_resource_py3 import SubResource + from .record_set_py3 import RecordSet + from .record_set_update_parameters_py3 import RecordSetUpdateParameters + from .zone_py3 import Zone + from .zone_update_py3 import ZoneUpdate + from .dns_resource_reference_request_py3 import DnsResourceReferenceRequest + from .dns_resource_reference_py3 import DnsResourceReference + from .dns_resource_reference_result_py3 import DnsResourceReferenceResult + from .resource_py3 import Resource +except (SyntaxError, ImportError): + from .arecord import ARecord + from .aaaa_record import AaaaRecord + from .mx_record import MxRecord + from .ns_record import NsRecord + from .ptr_record import PtrRecord + from .srv_record import SrvRecord + from .txt_record import TxtRecord + from .cname_record import CnameRecord + from .soa_record import SoaRecord + from .caa_record import CaaRecord + from .sub_resource import SubResource + from .record_set import RecordSet + from .record_set_update_parameters import RecordSetUpdateParameters + from .zone import Zone + from .zone_update import ZoneUpdate + from .dns_resource_reference_request import DnsResourceReferenceRequest + from .dns_resource_reference import DnsResourceReference + from .dns_resource_reference_result import DnsResourceReferenceResult + from .resource import Resource +from .record_set_paged import RecordSetPaged +from .zone_paged import ZonePaged +from .dns_management_client_enums import ( + ZoneType, + RecordType, +) + +__all__ = [ + 'ARecord', + 'AaaaRecord', + 'MxRecord', + 'NsRecord', + 'PtrRecord', + 'SrvRecord', + 'TxtRecord', + 'CnameRecord', + 'SoaRecord', + 'CaaRecord', + 'SubResource', + 'RecordSet', + 'RecordSetUpdateParameters', + 'Zone', + 'ZoneUpdate', + 'DnsResourceReferenceRequest', + 'DnsResourceReference', + 'DnsResourceReferenceResult', + 'Resource', + 'RecordSetPaged', + 'ZonePaged', + 'ZoneType', + 'RecordType', +] diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/aaaa_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/aaaa_record.py new file mode 100644 index 000000000000..4f4b45183a80 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/aaaa_record.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AaaaRecord(Model): + """An AAAA record. + + :param ipv6_address: The IPv6 address of this AAAA record. + :type ipv6_address: str + """ + + _attribute_map = { + 'ipv6_address': {'key': 'ipv6Address', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AaaaRecord, self).__init__(**kwargs) + self.ipv6_address = kwargs.get('ipv6_address', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/aaaa_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/aaaa_record_py3.py new file mode 100644 index 000000000000..2cd662761ff9 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/aaaa_record_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AaaaRecord(Model): + """An AAAA record. + + :param ipv6_address: The IPv6 address of this AAAA record. + :type ipv6_address: str + """ + + _attribute_map = { + 'ipv6_address': {'key': 'ipv6Address', 'type': 'str'}, + } + + def __init__(self, *, ipv6_address: str=None, **kwargs) -> None: + super(AaaaRecord, self).__init__(**kwargs) + self.ipv6_address = ipv6_address diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/arecord.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/arecord.py new file mode 100644 index 000000000000..7172ccbb9011 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/arecord.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ARecord(Model): + """An A record. + + :param ipv4_address: The IPv4 address of this A record. + :type ipv4_address: str + """ + + _attribute_map = { + 'ipv4_address': {'key': 'ipv4Address', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ARecord, self).__init__(**kwargs) + self.ipv4_address = kwargs.get('ipv4_address', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/arecord_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/arecord_py3.py new file mode 100644 index 000000000000..d38c7f033aae --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/arecord_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ARecord(Model): + """An A record. + + :param ipv4_address: The IPv4 address of this A record. + :type ipv4_address: str + """ + + _attribute_map = { + 'ipv4_address': {'key': 'ipv4Address', 'type': 'str'}, + } + + def __init__(self, *, ipv4_address: str=None, **kwargs) -> None: + super(ARecord, self).__init__(**kwargs) + self.ipv4_address = ipv4_address diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/caa_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/caa_record.py new file mode 100644 index 000000000000..e3672d03f6aa --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/caa_record.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CaaRecord(Model): + """A CAA record. + + :param flags: The flags for this CAA record as an integer between 0 and + 255. + :type flags: int + :param tag: The tag for this CAA record. + :type tag: str + :param value: The value for this CAA record. + :type value: str + """ + + _attribute_map = { + 'flags': {'key': 'flags', 'type': 'int'}, + 'tag': {'key': 'tag', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CaaRecord, self).__init__(**kwargs) + self.flags = kwargs.get('flags', None) + self.tag = kwargs.get('tag', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/caa_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/caa_record_py3.py new file mode 100644 index 000000000000..0a8b89b5e515 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/caa_record_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CaaRecord(Model): + """A CAA record. + + :param flags: The flags for this CAA record as an integer between 0 and + 255. + :type flags: int + :param tag: The tag for this CAA record. + :type tag: str + :param value: The value for this CAA record. + :type value: str + """ + + _attribute_map = { + 'flags': {'key': 'flags', 'type': 'int'}, + 'tag': {'key': 'tag', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, flags: int=None, tag: str=None, value: str=None, **kwargs) -> None: + super(CaaRecord, self).__init__(**kwargs) + self.flags = flags + self.tag = tag + self.value = value diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/cname_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/cname_record.py new file mode 100644 index 000000000000..3812539e3504 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/cname_record.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CnameRecord(Model): + """A CNAME record. + + :param cname: The canonical name for this CNAME record. + :type cname: str + """ + + _attribute_map = { + 'cname': {'key': 'cname', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CnameRecord, self).__init__(**kwargs) + self.cname = kwargs.get('cname', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/cname_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/cname_record_py3.py new file mode 100644 index 000000000000..903f7071d615 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/cname_record_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CnameRecord(Model): + """A CNAME record. + + :param cname: The canonical name for this CNAME record. + :type cname: str + """ + + _attribute_map = { + 'cname': {'key': 'cname', 'type': 'str'}, + } + + def __init__(self, *, cname: str=None, **kwargs) -> None: + super(CnameRecord, self).__init__(**kwargs) + self.cname = cname diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_management_client_enums.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_management_client_enums.py new file mode 100644 index 000000000000..05db7027d336 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_management_client_enums.py @@ -0,0 +1,32 @@ +# 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 enum import Enum + + +class ZoneType(str, Enum): + + public = "Public" + private = "Private" + + +class RecordType(str, Enum): + + a = "A" + aaaa = "AAAA" + caa = "CAA" + cname = "CNAME" + mx = "MX" + ns = "NS" + ptr = "PTR" + soa = "SOA" + srv = "SRV" + txt = "TXT" diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference.py new file mode 100644 index 000000000000..2a0844fdca19 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsResourceReference(Model): + """Represents a single Azure resource and its referencing DNS records. + + :param dns_resources: A list of dns Records + :type dns_resources: list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + :param target_resource: A reference to an azure resource from where the + dns resource value is taken. + :type target_resource: ~azure.mgmt.dns.v2018_05_01.models.SubResource + """ + + _attribute_map = { + 'dns_resources': {'key': 'dnsResources', 'type': '[SubResource]'}, + 'target_resource': {'key': 'targetResource', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(DnsResourceReference, self).__init__(**kwargs) + self.dns_resources = kwargs.get('dns_resources', None) + self.target_resource = kwargs.get('target_resource', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_py3.py new file mode 100644 index 000000000000..950d7bea2dad --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsResourceReference(Model): + """Represents a single Azure resource and its referencing DNS records. + + :param dns_resources: A list of dns Records + :type dns_resources: list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + :param target_resource: A reference to an azure resource from where the + dns resource value is taken. + :type target_resource: ~azure.mgmt.dns.v2018_05_01.models.SubResource + """ + + _attribute_map = { + 'dns_resources': {'key': 'dnsResources', 'type': '[SubResource]'}, + 'target_resource': {'key': 'targetResource', 'type': 'SubResource'}, + } + + def __init__(self, *, dns_resources=None, target_resource=None, **kwargs) -> None: + super(DnsResourceReference, self).__init__(**kwargs) + self.dns_resources = dns_resources + self.target_resource = target_resource diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_request.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_request.py new file mode 100644 index 000000000000..ff6e649173d2 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_request.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsResourceReferenceRequest(Model): + """Represents the properties of the Dns Resource Reference Request. + + :param target_resources: A list of references to azure resources for which + referencing dns records need to be queried. + :type target_resources: + list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + """ + + _attribute_map = { + 'target_resources': {'key': 'properties.targetResources', 'type': '[SubResource]'}, + } + + def __init__(self, **kwargs): + super(DnsResourceReferenceRequest, self).__init__(**kwargs) + self.target_resources = kwargs.get('target_resources', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_request_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_request_py3.py new file mode 100644 index 000000000000..52669e93eca9 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_request_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsResourceReferenceRequest(Model): + """Represents the properties of the Dns Resource Reference Request. + + :param target_resources: A list of references to azure resources for which + referencing dns records need to be queried. + :type target_resources: + list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + """ + + _attribute_map = { + 'target_resources': {'key': 'properties.targetResources', 'type': '[SubResource]'}, + } + + def __init__(self, *, target_resources=None, **kwargs) -> None: + super(DnsResourceReferenceRequest, self).__init__(**kwargs) + self.target_resources = target_resources diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_result.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_result.py new file mode 100644 index 000000000000..314eb3222021 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_result.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsResourceReferenceResult(Model): + """Represents the properties of the Dns Resource Reference Result. + + :param dns_resource_references: The result of dns resource reference + request. A list of dns resource references for each of the azure resource + in the request + :type dns_resource_references: + list[~azure.mgmt.dns.v2018_05_01.models.DnsResourceReference] + """ + + _attribute_map = { + 'dns_resource_references': {'key': 'properties.dnsResourceReferences', 'type': '[DnsResourceReference]'}, + } + + def __init__(self, **kwargs): + super(DnsResourceReferenceResult, self).__init__(**kwargs) + self.dns_resource_references = kwargs.get('dns_resource_references', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_result_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_result_py3.py new file mode 100644 index 000000000000..b886cbf3e150 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/dns_resource_reference_result_py3.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsResourceReferenceResult(Model): + """Represents the properties of the Dns Resource Reference Result. + + :param dns_resource_references: The result of dns resource reference + request. A list of dns resource references for each of the azure resource + in the request + :type dns_resource_references: + list[~azure.mgmt.dns.v2018_05_01.models.DnsResourceReference] + """ + + _attribute_map = { + 'dns_resource_references': {'key': 'properties.dnsResourceReferences', 'type': '[DnsResourceReference]'}, + } + + def __init__(self, *, dns_resource_references=None, **kwargs) -> None: + super(DnsResourceReferenceResult, self).__init__(**kwargs) + self.dns_resource_references = dns_resource_references diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/mx_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/mx_record.py new file mode 100644 index 000000000000..8027663c4de5 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/mx_record.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MxRecord(Model): + """An MX record. + + :param preference: The preference value for this MX record. + :type preference: int + :param exchange: The domain name of the mail host for this MX record. + :type exchange: str + """ + + _attribute_map = { + 'preference': {'key': 'preference', 'type': 'int'}, + 'exchange': {'key': 'exchange', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MxRecord, self).__init__(**kwargs) + self.preference = kwargs.get('preference', None) + self.exchange = kwargs.get('exchange', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/mx_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/mx_record_py3.py new file mode 100644 index 000000000000..6476cd65eb3a --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/mx_record_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MxRecord(Model): + """An MX record. + + :param preference: The preference value for this MX record. + :type preference: int + :param exchange: The domain name of the mail host for this MX record. + :type exchange: str + """ + + _attribute_map = { + 'preference': {'key': 'preference', 'type': 'int'}, + 'exchange': {'key': 'exchange', 'type': 'str'}, + } + + def __init__(self, *, preference: int=None, exchange: str=None, **kwargs) -> None: + super(MxRecord, self).__init__(**kwargs) + self.preference = preference + self.exchange = exchange diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ns_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ns_record.py new file mode 100644 index 000000000000..ecef3918a591 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ns_record.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NsRecord(Model): + """An NS record. + + :param nsdname: The name server name for this NS record. + :type nsdname: str + """ + + _attribute_map = { + 'nsdname': {'key': 'nsdname', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NsRecord, self).__init__(**kwargs) + self.nsdname = kwargs.get('nsdname', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ns_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ns_record_py3.py new file mode 100644 index 000000000000..c13d10f102e1 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ns_record_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NsRecord(Model): + """An NS record. + + :param nsdname: The name server name for this NS record. + :type nsdname: str + """ + + _attribute_map = { + 'nsdname': {'key': 'nsdname', 'type': 'str'}, + } + + def __init__(self, *, nsdname: str=None, **kwargs) -> None: + super(NsRecord, self).__init__(**kwargs) + self.nsdname = nsdname diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ptr_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ptr_record.py new file mode 100644 index 000000000000..1b14721c9855 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ptr_record.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PtrRecord(Model): + """A PTR record. + + :param ptrdname: The PTR target domain name for this PTR record. + :type ptrdname: str + """ + + _attribute_map = { + 'ptrdname': {'key': 'ptrdname', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PtrRecord, self).__init__(**kwargs) + self.ptrdname = kwargs.get('ptrdname', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ptr_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ptr_record_py3.py new file mode 100644 index 000000000000..523afce05a26 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/ptr_record_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PtrRecord(Model): + """A PTR record. + + :param ptrdname: The PTR target domain name for this PTR record. + :type ptrdname: str + """ + + _attribute_map = { + 'ptrdname': {'key': 'ptrdname', 'type': 'str'}, + } + + def __init__(self, *, ptrdname: str=None, **kwargs) -> None: + super(PtrRecord, self).__init__(**kwargs) + self.ptrdname = ptrdname diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set.py new file mode 100644 index 000000000000..1bcba05cc30a --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set.py @@ -0,0 +1,113 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecordSet(Model): + """Describes a DNS record set (a collection of DNS records with the same name + and type). + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The ID of the record set. + :vartype id: str + :ivar name: The name of the record set. + :vartype name: str + :ivar type: The type of the record set. + :vartype type: str + :param etag: The etag of the record set. + :type etag: str + :param metadata: The metadata attached to the record set. + :type metadata: dict[str, str] + :param ttl: The TTL (time-to-live) of the records in the record set. + :type ttl: long + :ivar fqdn: Fully qualified domain name of the record set. + :vartype fqdn: str + :ivar provisioning_state: provisioning State of the record set. + :vartype provisioning_state: str + :param target_resource: A reference to an azure resource from where the + dns resource value is taken. + :type target_resource: ~azure.mgmt.dns.v2018_05_01.models.SubResource + :param arecords: The list of A records in the record set. + :type arecords: list[~azure.mgmt.dns.v2018_05_01.models.ARecord] + :param aaaa_records: The list of AAAA records in the record set. + :type aaaa_records: list[~azure.mgmt.dns.v2018_05_01.models.AaaaRecord] + :param mx_records: The list of MX records in the record set. + :type mx_records: list[~azure.mgmt.dns.v2018_05_01.models.MxRecord] + :param ns_records: The list of NS records in the record set. + :type ns_records: list[~azure.mgmt.dns.v2018_05_01.models.NsRecord] + :param ptr_records: The list of PTR records in the record set. + :type ptr_records: list[~azure.mgmt.dns.v2018_05_01.models.PtrRecord] + :param srv_records: The list of SRV records in the record set. + :type srv_records: list[~azure.mgmt.dns.v2018_05_01.models.SrvRecord] + :param txt_records: The list of TXT records in the record set. + :type txt_records: list[~azure.mgmt.dns.v2018_05_01.models.TxtRecord] + :param cname_record: The CNAME record in the record set. + :type cname_record: ~azure.mgmt.dns.v2018_05_01.models.CnameRecord + :param soa_record: The SOA record in the record set. + :type soa_record: ~azure.mgmt.dns.v2018_05_01.models.SoaRecord + :param caa_records: The list of CAA records in the record set. + :type caa_records: list[~azure.mgmt.dns.v2018_05_01.models.CaaRecord] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'fqdn': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'metadata': {'key': 'properties.metadata', 'type': '{str}'}, + 'ttl': {'key': 'properties.TTL', 'type': 'long'}, + 'fqdn': {'key': 'properties.fqdn', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'target_resource': {'key': 'properties.targetResource', 'type': 'SubResource'}, + 'arecords': {'key': 'properties.ARecords', 'type': '[ARecord]'}, + 'aaaa_records': {'key': 'properties.AAAARecords', 'type': '[AaaaRecord]'}, + 'mx_records': {'key': 'properties.MXRecords', 'type': '[MxRecord]'}, + 'ns_records': {'key': 'properties.NSRecords', 'type': '[NsRecord]'}, + 'ptr_records': {'key': 'properties.PTRRecords', 'type': '[PtrRecord]'}, + 'srv_records': {'key': 'properties.SRVRecords', 'type': '[SrvRecord]'}, + 'txt_records': {'key': 'properties.TXTRecords', 'type': '[TxtRecord]'}, + 'cname_record': {'key': 'properties.CNAMERecord', 'type': 'CnameRecord'}, + 'soa_record': {'key': 'properties.SOARecord', 'type': 'SoaRecord'}, + 'caa_records': {'key': 'properties.caaRecords', 'type': '[CaaRecord]'}, + } + + def __init__(self, **kwargs): + super(RecordSet, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.etag = kwargs.get('etag', None) + self.metadata = kwargs.get('metadata', None) + self.ttl = kwargs.get('ttl', None) + self.fqdn = None + self.provisioning_state = None + self.target_resource = kwargs.get('target_resource', None) + self.arecords = kwargs.get('arecords', None) + self.aaaa_records = kwargs.get('aaaa_records', None) + self.mx_records = kwargs.get('mx_records', None) + self.ns_records = kwargs.get('ns_records', None) + self.ptr_records = kwargs.get('ptr_records', None) + self.srv_records = kwargs.get('srv_records', None) + self.txt_records = kwargs.get('txt_records', None) + self.cname_record = kwargs.get('cname_record', None) + self.soa_record = kwargs.get('soa_record', None) + self.caa_records = kwargs.get('caa_records', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_paged.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_paged.py new file mode 100644 index 000000000000..2457d36900b1 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RecordSetPaged(Paged): + """ + A paging container for iterating over a list of :class:`RecordSet ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RecordSet]'} + } + + def __init__(self, *args, **kwargs): + + super(RecordSetPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_py3.py new file mode 100644 index 000000000000..a583c89a337a --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_py3.py @@ -0,0 +1,113 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecordSet(Model): + """Describes a DNS record set (a collection of DNS records with the same name + and type). + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The ID of the record set. + :vartype id: str + :ivar name: The name of the record set. + :vartype name: str + :ivar type: The type of the record set. + :vartype type: str + :param etag: The etag of the record set. + :type etag: str + :param metadata: The metadata attached to the record set. + :type metadata: dict[str, str] + :param ttl: The TTL (time-to-live) of the records in the record set. + :type ttl: long + :ivar fqdn: Fully qualified domain name of the record set. + :vartype fqdn: str + :ivar provisioning_state: provisioning State of the record set. + :vartype provisioning_state: str + :param target_resource: A reference to an azure resource from where the + dns resource value is taken. + :type target_resource: ~azure.mgmt.dns.v2018_05_01.models.SubResource + :param arecords: The list of A records in the record set. + :type arecords: list[~azure.mgmt.dns.v2018_05_01.models.ARecord] + :param aaaa_records: The list of AAAA records in the record set. + :type aaaa_records: list[~azure.mgmt.dns.v2018_05_01.models.AaaaRecord] + :param mx_records: The list of MX records in the record set. + :type mx_records: list[~azure.mgmt.dns.v2018_05_01.models.MxRecord] + :param ns_records: The list of NS records in the record set. + :type ns_records: list[~azure.mgmt.dns.v2018_05_01.models.NsRecord] + :param ptr_records: The list of PTR records in the record set. + :type ptr_records: list[~azure.mgmt.dns.v2018_05_01.models.PtrRecord] + :param srv_records: The list of SRV records in the record set. + :type srv_records: list[~azure.mgmt.dns.v2018_05_01.models.SrvRecord] + :param txt_records: The list of TXT records in the record set. + :type txt_records: list[~azure.mgmt.dns.v2018_05_01.models.TxtRecord] + :param cname_record: The CNAME record in the record set. + :type cname_record: ~azure.mgmt.dns.v2018_05_01.models.CnameRecord + :param soa_record: The SOA record in the record set. + :type soa_record: ~azure.mgmt.dns.v2018_05_01.models.SoaRecord + :param caa_records: The list of CAA records in the record set. + :type caa_records: list[~azure.mgmt.dns.v2018_05_01.models.CaaRecord] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'fqdn': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'metadata': {'key': 'properties.metadata', 'type': '{str}'}, + 'ttl': {'key': 'properties.TTL', 'type': 'long'}, + 'fqdn': {'key': 'properties.fqdn', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'target_resource': {'key': 'properties.targetResource', 'type': 'SubResource'}, + 'arecords': {'key': 'properties.ARecords', 'type': '[ARecord]'}, + 'aaaa_records': {'key': 'properties.AAAARecords', 'type': '[AaaaRecord]'}, + 'mx_records': {'key': 'properties.MXRecords', 'type': '[MxRecord]'}, + 'ns_records': {'key': 'properties.NSRecords', 'type': '[NsRecord]'}, + 'ptr_records': {'key': 'properties.PTRRecords', 'type': '[PtrRecord]'}, + 'srv_records': {'key': 'properties.SRVRecords', 'type': '[SrvRecord]'}, + 'txt_records': {'key': 'properties.TXTRecords', 'type': '[TxtRecord]'}, + 'cname_record': {'key': 'properties.CNAMERecord', 'type': 'CnameRecord'}, + 'soa_record': {'key': 'properties.SOARecord', 'type': 'SoaRecord'}, + 'caa_records': {'key': 'properties.caaRecords', 'type': '[CaaRecord]'}, + } + + def __init__(self, *, etag: str=None, metadata=None, ttl: int=None, target_resource=None, arecords=None, aaaa_records=None, mx_records=None, ns_records=None, ptr_records=None, srv_records=None, txt_records=None, cname_record=None, soa_record=None, caa_records=None, **kwargs) -> None: + super(RecordSet, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.etag = etag + self.metadata = metadata + self.ttl = ttl + self.fqdn = None + self.provisioning_state = None + self.target_resource = target_resource + self.arecords = arecords + self.aaaa_records = aaaa_records + self.mx_records = mx_records + self.ns_records = ns_records + self.ptr_records = ptr_records + self.srv_records = srv_records + self.txt_records = txt_records + self.cname_record = cname_record + self.soa_record = soa_record + self.caa_records = caa_records diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_update_parameters.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_update_parameters.py new file mode 100644 index 000000000000..3f9f8e3acc5d --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_update_parameters.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecordSetUpdateParameters(Model): + """Parameters supplied to update a record set. + + :param record_set: Specifies information about the record set being + updated. + :type record_set: ~azure.mgmt.dns.v2018_05_01.models.RecordSet + """ + + _attribute_map = { + 'record_set': {'key': 'RecordSet', 'type': 'RecordSet'}, + } + + def __init__(self, **kwargs): + super(RecordSetUpdateParameters, self).__init__(**kwargs) + self.record_set = kwargs.get('record_set', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_update_parameters_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_update_parameters_py3.py new file mode 100644 index 000000000000..0bcf84869e1d --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/record_set_update_parameters_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RecordSetUpdateParameters(Model): + """Parameters supplied to update a record set. + + :param record_set: Specifies information about the record set being + updated. + :type record_set: ~azure.mgmt.dns.v2018_05_01.models.RecordSet + """ + + _attribute_map = { + 'record_set': {'key': 'RecordSet', 'type': 'RecordSet'}, + } + + def __init__(self, *, record_set=None, **kwargs) -> None: + super(RecordSetUpdateParameters, self).__init__(**kwargs) + self.record_set = record_set diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/resource.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/resource.py new file mode 100644 index 000000000000..f552ada2093d --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/resource.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Common properties of an Azure Resource Manager resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/resource_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/resource_py3.py new file mode 100644 index 000000000000..85e37d57f9d9 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/resource_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Common properties of an Azure Resource Manager resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = location + self.tags = tags diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/soa_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/soa_record.py new file mode 100644 index 000000000000..c38fcd00789c --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/soa_record.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SoaRecord(Model): + """An SOA record. + + :param host: The domain name of the authoritative name server for this SOA + record. + :type host: str + :param email: The email contact for this SOA record. + :type email: str + :param serial_number: The serial number for this SOA record. + :type serial_number: long + :param refresh_time: The refresh value for this SOA record. + :type refresh_time: long + :param retry_time: The retry time for this SOA record. + :type retry_time: long + :param expire_time: The expire time for this SOA record. + :type expire_time: long + :param minimum_ttl: The minimum value for this SOA record. By convention + this is used to determine the negative caching duration. + :type minimum_ttl: long + """ + + _attribute_map = { + 'host': {'key': 'host', 'type': 'str'}, + 'email': {'key': 'email', 'type': 'str'}, + 'serial_number': {'key': 'serialNumber', 'type': 'long'}, + 'refresh_time': {'key': 'refreshTime', 'type': 'long'}, + 'retry_time': {'key': 'retryTime', 'type': 'long'}, + 'expire_time': {'key': 'expireTime', 'type': 'long'}, + 'minimum_ttl': {'key': 'minimumTTL', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(SoaRecord, self).__init__(**kwargs) + self.host = kwargs.get('host', None) + self.email = kwargs.get('email', None) + self.serial_number = kwargs.get('serial_number', None) + self.refresh_time = kwargs.get('refresh_time', None) + self.retry_time = kwargs.get('retry_time', None) + self.expire_time = kwargs.get('expire_time', None) + self.minimum_ttl = kwargs.get('minimum_ttl', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/soa_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/soa_record_py3.py new file mode 100644 index 000000000000..a9143fa2359b --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/soa_record_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SoaRecord(Model): + """An SOA record. + + :param host: The domain name of the authoritative name server for this SOA + record. + :type host: str + :param email: The email contact for this SOA record. + :type email: str + :param serial_number: The serial number for this SOA record. + :type serial_number: long + :param refresh_time: The refresh value for this SOA record. + :type refresh_time: long + :param retry_time: The retry time for this SOA record. + :type retry_time: long + :param expire_time: The expire time for this SOA record. + :type expire_time: long + :param minimum_ttl: The minimum value for this SOA record. By convention + this is used to determine the negative caching duration. + :type minimum_ttl: long + """ + + _attribute_map = { + 'host': {'key': 'host', 'type': 'str'}, + 'email': {'key': 'email', 'type': 'str'}, + 'serial_number': {'key': 'serialNumber', 'type': 'long'}, + 'refresh_time': {'key': 'refreshTime', 'type': 'long'}, + 'retry_time': {'key': 'retryTime', 'type': 'long'}, + 'expire_time': {'key': 'expireTime', 'type': 'long'}, + 'minimum_ttl': {'key': 'minimumTTL', 'type': 'long'}, + } + + def __init__(self, *, host: str=None, email: str=None, serial_number: int=None, refresh_time: int=None, retry_time: int=None, expire_time: int=None, minimum_ttl: int=None, **kwargs) -> None: + super(SoaRecord, self).__init__(**kwargs) + self.host = host + self.email = email + self.serial_number = serial_number + self.refresh_time = refresh_time + self.retry_time = retry_time + self.expire_time = expire_time + self.minimum_ttl = minimum_ttl diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/srv_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/srv_record.py new file mode 100644 index 000000000000..c7dc5fcdcbbd --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/srv_record.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SrvRecord(Model): + """An SRV record. + + :param priority: The priority value for this SRV record. + :type priority: int + :param weight: The weight value for this SRV record. + :type weight: int + :param port: The port value for this SRV record. + :type port: int + :param target: The target domain name for this SRV record. + :type target: str + """ + + _attribute_map = { + 'priority': {'key': 'priority', 'type': 'int'}, + 'weight': {'key': 'weight', 'type': 'int'}, + 'port': {'key': 'port', 'type': 'int'}, + 'target': {'key': 'target', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SrvRecord, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.weight = kwargs.get('weight', None) + self.port = kwargs.get('port', None) + self.target = kwargs.get('target', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/srv_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/srv_record_py3.py new file mode 100644 index 000000000000..9a464f27cb09 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/srv_record_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SrvRecord(Model): + """An SRV record. + + :param priority: The priority value for this SRV record. + :type priority: int + :param weight: The weight value for this SRV record. + :type weight: int + :param port: The port value for this SRV record. + :type port: int + :param target: The target domain name for this SRV record. + :type target: str + """ + + _attribute_map = { + 'priority': {'key': 'priority', 'type': 'int'}, + 'weight': {'key': 'weight', 'type': 'int'}, + 'port': {'key': 'port', 'type': 'int'}, + 'target': {'key': 'target', 'type': 'str'}, + } + + def __init__(self, *, priority: int=None, weight: int=None, port: int=None, target: str=None, **kwargs) -> None: + super(SrvRecord, self).__init__(**kwargs) + self.priority = priority + self.weight = weight + self.port = port + self.target = target diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/sub_resource.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/sub_resource.py new file mode 100644 index 000000000000..610b6a201149 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/sub_resource.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResource(Model): + """A reference to a another resource. + + :param id: Resource Id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SubResource, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/sub_resource_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/sub_resource_py3.py new file mode 100644 index 000000000000..1e17ddf43fca --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/sub_resource_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResource(Model): + """A reference to a another resource. + + :param id: Resource Id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(SubResource, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/txt_record.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/txt_record.py new file mode 100644 index 000000000000..472f1f22b5d3 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/txt_record.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TxtRecord(Model): + """A TXT record. + + :param value: The text value of this TXT record. + :type value: list[str] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(TxtRecord, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/txt_record_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/txt_record_py3.py new file mode 100644 index 000000000000..4faef766e859 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/txt_record_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TxtRecord(Model): + """A TXT record. + + :param value: The text value of this TXT record. + :type value: list[str] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[str]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(TxtRecord, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone.py new file mode 100644 index 000000000000..785ee79159f4 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone.py @@ -0,0 +1,94 @@ +# 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 .resource import Resource + + +class Zone(Resource): + """Describes a DNS zone. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param etag: The etag of the zone. + :type etag: str + :ivar max_number_of_record_sets: The maximum number of record sets that + can be created in this DNS zone. This is a read-only property and any + attempt to set this value will be ignored. + :vartype max_number_of_record_sets: long + :ivar number_of_record_sets: The current number of record sets in this DNS + zone. This is a read-only property and any attempt to set this value will + be ignored. + :vartype number_of_record_sets: long + :ivar name_servers: The name servers for this DNS zone. This is a + read-only property and any attempt to set this value will be ignored. + :vartype name_servers: list[str] + :param zone_type: The type of this DNS zone (Public or Private). Possible + values include: 'Public', 'Private'. Default value: "Public" . + :type zone_type: str or ~azure.mgmt.dns.v2018_05_01.models.ZoneType + :param registration_virtual_networks: A list of references to virtual + networks that register hostnames in this DNS zone. This is a only when + ZoneType is Private. + :type registration_virtual_networks: + list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + :param resolution_virtual_networks: A list of references to virtual + networks that resolve records in this DNS zone. This is a only when + ZoneType is Private. + :type resolution_virtual_networks: + list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'max_number_of_record_sets': {'readonly': True}, + 'number_of_record_sets': {'readonly': True}, + 'name_servers': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'max_number_of_record_sets': {'key': 'properties.maxNumberOfRecordSets', 'type': 'long'}, + 'number_of_record_sets': {'key': 'properties.numberOfRecordSets', 'type': 'long'}, + 'name_servers': {'key': 'properties.nameServers', 'type': '[str]'}, + 'zone_type': {'key': 'properties.zoneType', 'type': 'ZoneType'}, + 'registration_virtual_networks': {'key': 'properties.registrationVirtualNetworks', 'type': '[SubResource]'}, + 'resolution_virtual_networks': {'key': 'properties.resolutionVirtualNetworks', 'type': '[SubResource]'}, + } + + def __init__(self, **kwargs): + super(Zone, self).__init__(**kwargs) + self.etag = kwargs.get('etag', None) + self.max_number_of_record_sets = None + self.number_of_record_sets = None + self.name_servers = None + self.zone_type = kwargs.get('zone_type', "Public") + self.registration_virtual_networks = kwargs.get('registration_virtual_networks', None) + self.resolution_virtual_networks = kwargs.get('resolution_virtual_networks', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_paged.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_paged.py new file mode 100644 index 000000000000..29552b328530 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ZonePaged(Paged): + """ + A paging container for iterating over a list of :class:`Zone ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Zone]'} + } + + def __init__(self, *args, **kwargs): + + super(ZonePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_py3.py new file mode 100644 index 000000000000..bb89a8e44c47 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_py3.py @@ -0,0 +1,94 @@ +# 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 .resource_py3 import Resource + + +class Zone(Resource): + """Describes a DNS zone. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param etag: The etag of the zone. + :type etag: str + :ivar max_number_of_record_sets: The maximum number of record sets that + can be created in this DNS zone. This is a read-only property and any + attempt to set this value will be ignored. + :vartype max_number_of_record_sets: long + :ivar number_of_record_sets: The current number of record sets in this DNS + zone. This is a read-only property and any attempt to set this value will + be ignored. + :vartype number_of_record_sets: long + :ivar name_servers: The name servers for this DNS zone. This is a + read-only property and any attempt to set this value will be ignored. + :vartype name_servers: list[str] + :param zone_type: The type of this DNS zone (Public or Private). Possible + values include: 'Public', 'Private'. Default value: "Public" . + :type zone_type: str or ~azure.mgmt.dns.v2018_05_01.models.ZoneType + :param registration_virtual_networks: A list of references to virtual + networks that register hostnames in this DNS zone. This is a only when + ZoneType is Private. + :type registration_virtual_networks: + list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + :param resolution_virtual_networks: A list of references to virtual + networks that resolve records in this DNS zone. This is a only when + ZoneType is Private. + :type resolution_virtual_networks: + list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'max_number_of_record_sets': {'readonly': True}, + 'number_of_record_sets': {'readonly': True}, + 'name_servers': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'max_number_of_record_sets': {'key': 'properties.maxNumberOfRecordSets', 'type': 'long'}, + 'number_of_record_sets': {'key': 'properties.numberOfRecordSets', 'type': 'long'}, + 'name_servers': {'key': 'properties.nameServers', 'type': '[str]'}, + 'zone_type': {'key': 'properties.zoneType', 'type': 'ZoneType'}, + 'registration_virtual_networks': {'key': 'properties.registrationVirtualNetworks', 'type': '[SubResource]'}, + 'resolution_virtual_networks': {'key': 'properties.resolutionVirtualNetworks', 'type': '[SubResource]'}, + } + + def __init__(self, *, location: str, tags=None, etag: str=None, zone_type="Public", registration_virtual_networks=None, resolution_virtual_networks=None, **kwargs) -> None: + super(Zone, self).__init__(location=location, tags=tags, **kwargs) + self.etag = etag + self.max_number_of_record_sets = None + self.number_of_record_sets = None + self.name_servers = None + self.zone_type = zone_type + self.registration_virtual_networks = registration_virtual_networks + self.resolution_virtual_networks = resolution_virtual_networks diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_update.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_update.py new file mode 100644 index 000000000000..35b9948f7243 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_update.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ZoneUpdate(Model): + """Describes a request to update a DNS zone. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(ZoneUpdate, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_update_py3.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_update_py3.py new file mode 100644 index 000000000000..f8e85fa3f389 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/models/zone_update_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ZoneUpdate(Model): + """Describes a request to update a DNS zone. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(ZoneUpdate, self).__init__(**kwargs) + self.tags = tags diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/__init__.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/__init__.py new file mode 100644 index 000000000000..12cc0859f756 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/__init__.py @@ -0,0 +1,20 @@ +# 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 .record_sets_operations import RecordSetsOperations +from .zones_operations import ZonesOperations +from .dns_resource_reference_operations import DnsResourceReferenceOperations + +__all__ = [ + 'RecordSetsOperations', + 'ZonesOperations', + 'DnsResourceReferenceOperations', +] diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/dns_resource_reference_operations.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/dns_resource_reference_operations.py new file mode 100644 index 000000000000..a974b8dca76b --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/dns_resource_reference_operations.py @@ -0,0 +1,104 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class DnsResourceReferenceOperations(object): + """DnsResourceReferenceOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Specifies the API version. Constant value: "2018-05-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-05-01" + + self.config = config + + def get_by_target_resources( + self, target_resources=None, custom_headers=None, raw=False, **operation_config): + """Returns the DNS records specified by the referencing targetResourceIds. + + :param target_resources: A list of references to azure resources for + which referencing dns records need to be queried. + :type target_resources: + list[~azure.mgmt.dns.v2018_05_01.models.SubResource] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DnsResourceReferenceResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.dns.v2018_05_01.models.DnsResourceReferenceResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.DnsResourceReferenceRequest(target_resources=target_resources) + + # Construct URL + url = self.get_by_target_resources.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DnsResourceReferenceRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DnsResourceReferenceResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_by_target_resources.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/getDnsResourceReference'} diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/record_sets_operations.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/record_sets_operations.py new file mode 100644 index 000000000000..ad7840a69617 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/record_sets_operations.py @@ -0,0 +1,617 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class RecordSetsOperations(object): + """RecordSetsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Specifies the API version. Constant value: "2018-05-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-05-01" + + self.config = config + + def update( + self, resource_group_name, zone_name, relative_record_set_name, record_type, parameters, if_match=None, custom_headers=None, raw=False, **operation_config): + """Updates a record set within a DNS zone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param relative_record_set_name: The name of the record set, relative + to the name of the zone. + :type relative_record_set_name: str + :param record_type: The type of DNS record in this record set. + Possible values include: 'A', 'AAAA', 'CAA', 'CNAME', 'MX', 'NS', + 'PTR', 'SOA', 'SRV', 'TXT' + :type record_type: str or + ~azure.mgmt.dns.v2018_05_01.models.RecordType + :param parameters: Parameters supplied to the Update operation. + :type parameters: ~azure.mgmt.dns.v2018_05_01.models.RecordSet + :param if_match: The etag of the record set. Omit this value to always + overwrite the current record set. Specify the last-seen etag value to + prevent accidentally overwritting concurrent changes. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RecordSet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.dns.v2018_05_01.models.RecordSet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'relativeRecordSetName': self._serialize.url("relative_record_set_name", relative_record_set_name, 'str', skip_quote=True), + 'recordType': self._serialize.url("record_type", record_type, 'RecordType'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'RecordSet') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RecordSet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}'} + + def create_or_update( + self, resource_group_name, zone_name, relative_record_set_name, record_type, parameters, if_match=None, if_none_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates a record set within a DNS zone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param relative_record_set_name: The name of the record set, relative + to the name of the zone. + :type relative_record_set_name: str + :param record_type: The type of DNS record in this record set. Record + sets of type SOA can be updated but not created (they are created when + the DNS zone is created). Possible values include: 'A', 'AAAA', 'CAA', + 'CNAME', 'MX', 'NS', 'PTR', 'SOA', 'SRV', 'TXT' + :type record_type: str or + ~azure.mgmt.dns.v2018_05_01.models.RecordType + :param parameters: Parameters supplied to the CreateOrUpdate + operation. + :type parameters: ~azure.mgmt.dns.v2018_05_01.models.RecordSet + :param if_match: The etag of the record set. Omit this value to always + overwrite the current record set. Specify the last-seen etag value to + prevent accidentally overwritting any concurrent changes. + :type if_match: str + :param if_none_match: Set to '*' to allow a new record set to be + created, but to prevent updating an existing record set. Other values + will be ignored. + :type if_none_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RecordSet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.dns.v2018_05_01.models.RecordSet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'relativeRecordSetName': self._serialize.url("relative_record_set_name", relative_record_set_name, 'str', skip_quote=True), + 'recordType': self._serialize.url("record_type", record_type, 'RecordType'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if if_none_match is not None: + header_parameters['If-None-Match'] = self._serialize.header("if_none_match", if_none_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'RecordSet') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RecordSet', response) + if response.status_code == 201: + deserialized = self._deserialize('RecordSet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}'} + + def delete( + self, resource_group_name, zone_name, relative_record_set_name, record_type, if_match=None, custom_headers=None, raw=False, **operation_config): + """Deletes a record set from a DNS zone. This operation cannot be undone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param relative_record_set_name: The name of the record set, relative + to the name of the zone. + :type relative_record_set_name: str + :param record_type: The type of DNS record in this record set. Record + sets of type SOA cannot be deleted (they are deleted when the DNS zone + is deleted). Possible values include: 'A', 'AAAA', 'CAA', 'CNAME', + 'MX', 'NS', 'PTR', 'SOA', 'SRV', 'TXT' + :type record_type: str or + ~azure.mgmt.dns.v2018_05_01.models.RecordType + :param if_match: The etag of the record set. Omit this value to always + delete the current record set. Specify the last-seen etag value to + prevent accidentally deleting any concurrent changes. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'relativeRecordSetName': self._serialize.url("relative_record_set_name", relative_record_set_name, 'str', skip_quote=True), + 'recordType': self._serialize.url("record_type", record_type, 'RecordType'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}'} + + def get( + self, resource_group_name, zone_name, relative_record_set_name, record_type, custom_headers=None, raw=False, **operation_config): + """Gets a record set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param relative_record_set_name: The name of the record set, relative + to the name of the zone. + :type relative_record_set_name: str + :param record_type: The type of DNS record in this record set. + Possible values include: 'A', 'AAAA', 'CAA', 'CNAME', 'MX', 'NS', + 'PTR', 'SOA', 'SRV', 'TXT' + :type record_type: str or + ~azure.mgmt.dns.v2018_05_01.models.RecordType + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RecordSet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.dns.v2018_05_01.models.RecordSet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'relativeRecordSetName': self._serialize.url("relative_record_set_name", relative_record_set_name, 'str', skip_quote=True), + 'recordType': self._serialize.url("record_type", record_type, 'RecordType'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RecordSet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}'} + + def list_by_type( + self, resource_group_name, zone_name, record_type, top=None, recordsetnamesuffix=None, custom_headers=None, raw=False, **operation_config): + """Lists the record sets of a specified type in a DNS zone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param record_type: The type of record sets to enumerate. Possible + values include: 'A', 'AAAA', 'CAA', 'CNAME', 'MX', 'NS', 'PTR', 'SOA', + 'SRV', 'TXT' + :type record_type: str or + ~azure.mgmt.dns.v2018_05_01.models.RecordType + :param top: The maximum number of record sets to return. If not + specified, returns up to 100 record sets. + :type top: int + :param recordsetnamesuffix: The suffix label of the record set name + that has to be used to filter the record set enumerations. If this + parameter is specified, Enumeration will return only records that end + with . + :type recordsetnamesuffix: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RecordSet + :rtype: + ~azure.mgmt.dns.v2018_05_01.models.RecordSetPaged[~azure.mgmt.dns.v2018_05_01.models.RecordSet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_type.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'recordType': self._serialize.url("record_type", record_type, 'RecordType'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int') + if recordsetnamesuffix is not None: + query_parameters['$recordsetnamesuffix'] = self._serialize.query("recordsetnamesuffix", recordsetnamesuffix, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RecordSetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RecordSetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_type.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}'} + + def list_by_dns_zone( + self, resource_group_name, zone_name, top=None, recordsetnamesuffix=None, custom_headers=None, raw=False, **operation_config): + """Lists all record sets in a DNS zone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param top: The maximum number of record sets to return. If not + specified, returns up to 100 record sets. + :type top: int + :param recordsetnamesuffix: The suffix label of the record set name + that has to be used to filter the record set enumerations. If this + parameter is specified, Enumeration will return only records that end + with . + :type recordsetnamesuffix: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RecordSet + :rtype: + ~azure.mgmt.dns.v2018_05_01.models.RecordSetPaged[~azure.mgmt.dns.v2018_05_01.models.RecordSet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_dns_zone.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int') + if recordsetnamesuffix is not None: + query_parameters['$recordsetnamesuffix'] = self._serialize.query("recordsetnamesuffix", recordsetnamesuffix, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RecordSetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RecordSetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_dns_zone.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/recordsets'} + + def list_all_by_dns_zone( + self, resource_group_name, zone_name, top=None, record_set_name_suffix=None, custom_headers=None, raw=False, **operation_config): + """Lists all record sets in a DNS zone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param top: The maximum number of record sets to return. If not + specified, returns up to 100 record sets. + :type top: int + :param record_set_name_suffix: The suffix label of the record set name + that has to be used to filter the record set enumerations. If this + parameter is specified, Enumeration will return only records that end + with . + :type record_set_name_suffix: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RecordSet + :rtype: + ~azure.mgmt.dns.v2018_05_01.models.RecordSetPaged[~azure.mgmt.dns.v2018_05_01.models.RecordSet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all_by_dns_zone.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int') + if record_set_name_suffix is not None: + query_parameters['$recordsetnamesuffix'] = self._serialize.query("record_set_name_suffix", record_set_name_suffix, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RecordSetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RecordSetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all_by_dns_zone.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/all'} diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/zones_operations.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/zones_operations.py new file mode 100644 index 000000000000..fb5cff652f0d --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/operations/zones_operations.py @@ -0,0 +1,495 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ZonesOperations(object): + """ZonesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Specifies the API version. Constant value: "2018-05-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-05-01" + + self.config = config + + def create_or_update( + self, resource_group_name, zone_name, parameters, if_match=None, if_none_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates a DNS zone. Does not modify DNS records within the + zone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param parameters: Parameters supplied to the CreateOrUpdate + operation. + :type parameters: ~azure.mgmt.dns.v2018_05_01.models.Zone + :param if_match: The etag of the DNS zone. Omit this value to always + overwrite the current zone. Specify the last-seen etag value to + prevent accidentally overwritting any concurrent changes. + :type if_match: str + :param if_none_match: Set to '*' to allow a new DNS zone to be + created, but to prevent updating an existing zone. Other values will + be ignored. + :type if_none_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Zone or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.dns.v2018_05_01.models.Zone or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if if_none_match is not None: + header_parameters['If-None-Match'] = self._serialize.header("if_none_match", if_none_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Zone') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Zone', response) + if response.status_code == 201: + deserialized = self._deserialize('Zone', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}'} + + + def _delete_initial( + self, resource_group_name, zone_name, if_match=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, zone_name, if_match=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a DNS zone. WARNING: All DNS records in the zone will also be + deleted. This operation cannot be undone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param if_match: The etag of the DNS zone. Omit this value to always + delete the current zone. Specify the last-seen etag value to prevent + accidentally deleting any concurrent changes. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + zone_name=zone_name, + if_match=if_match, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}'} + + def get( + self, resource_group_name, zone_name, custom_headers=None, raw=False, **operation_config): + """Gets a DNS zone. Retrieves the zone properties, but not the record sets + within the zone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Zone or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.dns.v2018_05_01.models.Zone or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Zone', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}'} + + def update( + self, resource_group_name, zone_name, if_match=None, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a DNS zone. Does not modify DNS records within the zone. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param zone_name: The name of the DNS zone (without a terminating + dot). + :type zone_name: str + :param if_match: The etag of the DNS zone. Omit this value to always + overwrite the current zone. Specify the last-seen etag value to + prevent accidentally overwritting any concurrent changes. + :type if_match: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Zone or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.dns.v2018_05_01.models.Zone or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.ZoneUpdate(tags=tags) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'zoneName': self._serialize.url("zone_name", zone_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ZoneUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Zone', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}'} + + def list_by_resource_group( + self, resource_group_name, top=None, custom_headers=None, raw=False, **operation_config): + """Lists the DNS zones within a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param top: The maximum number of record sets to return. If not + specified, returns up to 100 record sets. + :type top: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Zone + :rtype: + ~azure.mgmt.dns.v2018_05_01.models.ZonePaged[~azure.mgmt.dns.v2018_05_01.models.Zone] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ZonePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ZonePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones'} + + def list( + self, top=None, custom_headers=None, raw=False, **operation_config): + """Lists the DNS zones in all resource groups in a subscription. + + :param top: The maximum number of DNS zones to return. If not + specified, returns up to 100 zones. + :type top: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Zone + :rtype: + ~azure.mgmt.dns.v2018_05_01.models.ZonePaged[~azure.mgmt.dns.v2018_05_01.models.Zone] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if top is not None: + query_parameters['$top'] = self._serialize.query("top", top, 'int') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ZonePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ZonePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/dnszones'} diff --git a/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/version.py b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/version.py new file mode 100644 index 000000000000..5bfc801ce220 --- /dev/null +++ b/azure-mgmt-dns/azure/mgmt/dns/v2018_05_01/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "2018-05-01" + diff --git a/azure-mgmt-dns/azure/mgmt/dns/version.py b/azure-mgmt-dns/azure/mgmt/dns/version.py index 53c4c7ea05e8..be75d8eae586 100644 --- a/azure-mgmt-dns/azure/mgmt/dns/version.py +++ b/azure-mgmt-dns/azure/mgmt/dns/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "2.0.0" +VERSION = "2.1.0" diff --git a/azure-mgmt-dns/azure_bdist_wheel.py b/azure-mgmt-dns/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-dns/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-dns/setup.cfg b/azure-mgmt-dns/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-dns/setup.cfg +++ b/azure-mgmt-dns/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-dns/setup.py b/azure-mgmt-dns/setup.py index 7f52550571f4..d292c8aaacff 100644 --- a/azure-mgmt-dns/setup.py +++ b/azure-mgmt-dns/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-dns" @@ -76,11 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-dns/tests/recordings/test_mgmt_dns.test_private_zone.yaml b/azure-mgmt-dns/tests/recordings/test_mgmt_dns.test_private_zone.yaml index e7f3140e73d7..949e76e2790d 100644 --- a/azure-mgmt-dns/tests/recordings/test_mgmt_dns.test_private_zone.yaml +++ b/azure-mgmt-dns/tests/recordings/test_mgmt_dns.test_private_zone.yaml @@ -1,33 +1,32 @@ interactions: - request: - body: '{"properties": {"zoneType": "Private", "resolutionVirtualNetworks": - [{"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/virtualNetworks/pvtzonevnetcd720cdcres"}], - "registrationVirtualNetworks": [{"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/virtualNetworks/pvtzonevnetcd720cdcreg"}]}, - "location": "global"}' + body: 'b''b\''b\\\''b\\\\\\\''{"location": "global", "properties": {"zoneType": + "Private", "registrationVirtualNetworks": [{"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/virtualNetworks/pvtzonevnetcd720cdcreg"}], + "resolutionVirtualNetworks": [{"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/virtualNetworks/pvtzonevnetcd720cdcres"}]}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['495'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc?api-version=2018-05-01 response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc","name":"pydns.comcd720cdc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4088-f439e3b4d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcreg"}],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcres"}],"zoneType":"Private"}}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc","name":"pydns.comcd720cdc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-70eb-3b1b4149d401","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"maxNumberOfRecordsPerRecordSet":null,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcreg"}],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcres"}],"zoneType":"Private"}}'} headers: cache-control: [private] - content-length: ['873'] + content-length: ['907'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:36:54 GMT'] - etag: [00000002-0000-0000-4088-f439e3b4d301] + date: ['Mon, 10 Sep 2018 20:01:48 GMT'] + etag: [00000002-0000-0000-70eb-3b1b4149d401] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 201, message: Created} - request: @@ -36,139 +35,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc?api-version=2018-03-01-preview - response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc","name":"pydns.comcd720cdc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4088-f439e3b4d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcreg"}],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcres"}],"zoneType":"Private"}}'} - headers: - cache-control: [private] - content-length: ['873'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:36:56 GMT'] - etag: [00000002-0000-0000-4088-f439e3b4d301] - server: [Microsoft-IIS/8.5] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones?api-version=2018-03-01-preview - response: - body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc","name":"pydns.comcd720cdc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4088-f439e3b4d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcreg"}],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcres"}],"zoneType":"Private"}}]}'} - headers: - cache-control: [private] - content-length: ['885'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:36:57 GMT'] - server: [Microsoft-IIS/8.5] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview - response: - body: {string: '{"nextLink":"https:\/\/api-dogfood.resources.windows-int.net:443\/subscriptions\/00000000-0000-0000-0000-000000000000\/providers\/Microsoft.Network\/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrMTI4Mi96b25lcy9vbmVzZGs4MzI2LnBzdGVzdC50ZXN0","value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrandomgroup2\/providers\/Microsoft.Network\/dnszones\/armmove.test","name":"armmove.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-5c2f-45e7b4ccd101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg11366e27-2af5-4dd1-9637-aab4153031c32\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-5aff546f-1003-448a-a4d8-c0b5dd4d8538.com","name":"fetestszonename.test-5aff546f-1003-448a-a4d8-c0b5dd4d8538.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-7f28-2b68bc57d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg1a0a1f60-91f8-4868-867c-935e097256732\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-ea41c932-0a6c-4950-adad-30e199cce97c.com","name":"fetestszonename.test-ea41c932-0a6c-4950-adad-30e199cce97c.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-887b-1f77915bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg1de4d643-137f-45cc-b880-c5f6b81456902\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-e5eaa924-5894-46f5-8465-dd7b546679b9.com","name":"fetestszonename.test-e5eaa924-5894-46f5-8465-dd7b546679b9.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-9f40-e14be957d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg1f97cd1e-c59b-480c-be67-063210865ac8\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-1db20ddf-1b1d-428b-83b9-7f91e84d422b.com","name":"fetestszonename.test-1db20ddf-1b1d-428b-83b9-7f91e84d422b.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-c54c-e6148c58d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg2964cd5a-0c75-43df-aadd-056bf241f6f52\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-572f839a-eb6f-43e0-a1aa-f42f1f517108.com","name":"fetestszonename.test-572f839a-eb6f-43e0-a1aa-f42f1f517108.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-71ce-92aa7058d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg345e33d1-e3fc-45be-8ca3-95c3030a8827\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-9f4b5753-0fd4-4ef9-8582-2fcb903e5da8.com","name":"fetestszonename.test-9f4b5753-0fd4-4ef9-8582-2fcb903e5da8.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-334d-c2272e36d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg350585d6-5c59-4a68-8d00-bf272faae66b2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-eb6ac564-4dce-4200-b768-36af6e2b9aa1.com","name":"fetestszonename.test-eb6ac564-4dce-4200-b768-36af6e2b9aa1.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-c017-1dab3959d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg3a95092d-6084-4715-bed0-6de9880362a72\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-9d1fe88a-7332-4e28-926a-9a4f6a7476c6.com","name":"fetestszonename.test-9d1fe88a-7332-4e28-926a-9a4f6a7476c6.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-cbf4-7af40258d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg451cf024-71be-414a-98ef-e060dcf34e8d\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-8c1592a2-a3cc-4214-b509-13b3becf9daf.com","name":"fetestszonename.test-8c1592a2-a3cc-4214-b509-13b3becf9daf.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-5411-11d957a3d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg45ee12ac-fa5b-4df8-af0d-57a81f489c0a\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-13d2cb2d-14d4-4837-8db8-ee7d477a4f6e.com","name":"fetestszonename.test-13d2cb2d-14d4-4837-8db8-ee7d477a4f6e.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-0e05-88375559d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg4b050ceb-7c51-46a5-aa15-0b24caa54908\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-947cf18a-6db3-4e4c-b61f-5ea05f101cdd.com","name":"fetestszonename.test-947cf18a-6db3-4e4c-b61f-5ea05f101cdd.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-93d8-4904e6f0d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg4d6686fd-d01c-4be4-acb0-e6af2040a475\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-71ba4bc4-39dc-4e28-b4c8-f853f271b32b.com","name":"fetestszonename.test-71ba4bc4-39dc-4e28-b4c8-f853f271b32b.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-e435-d8106922d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg5d95213a-3b09-4f4a-9bd5-b8f7535b3fb8\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-a525ea52-8eb0-4f02-8620-9cc5a127bceb.com","name":"fetestszonename.test-a525ea52-8eb0-4f02-8620-9cc5a127bceb.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-f036-b07cf135d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg652edd88-186f-4432-9286-d7f048a0e7f82\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-fd5796c2-c92f-490b-afbf-e43af19f7214.com","name":"fetestszonename.test-fd5796c2-c92f-490b-afbf-e43af19f7214.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-6b14-26a0145ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg664c931e-caf0-4b67-89e6-9526a64c579f2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-028879a2-373e-4fd9-bdfa-cc101948c492.com","name":"fetestszonename.test-028879a2-373e-4fd9-bdfa-cc101948c492.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-76f9-46bd8158d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg66628ec0-570d-4126-889b-359bbda30731\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-0f1623ab-2571-4723-b057-07aa2e16e0a5.com","name":"fetestszonename.test-0f1623ab-2571-4723-b057-07aa2e16e0a5.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-de04-401d68abd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg69881656-d2f7-49b7-a1b2-2979e8beadb12\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-4b002e4a-61bb-4106-91a4-6ebdee80cde3.com","name":"fetestszonename.test-4b002e4a-61bb-4106-91a4-6ebdee80cde3.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-22f9-5c49ad57d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg6bd7dc7f-beb0-417d-a718-0e9f7835b985\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-2afaa1d7-29eb-419b-93bb-80d8779ffc67.com","name":"fetestszonename.test-2afaa1d7-29eb-419b-93bb-80d8779ffc67.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-d12e-6f828fc9d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg7276389c-6a59-4177-bccd-83ac96ea5ae3\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-3f35ec1e-0264-4dda-9da8-768a2fc4cffc.com","name":"fetestszonename.test-3f35ec1e-0264-4dda-9da8-768a2fc4cffc.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-926f-a5686621d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg74147c6a-238e-43ea-88cd-b43b20ab5713\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-6988c68a-9ade-44d5-af50-cb808bae904d.com","name":"fetestszonename.test-6988c68a-9ade-44d5-af50-cb808bae904d.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-9255-78c02de9d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg7c46cb75-0d01-4b20-ac1a-398c49b55c212\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-6953c7bd-bc77-402f-b6f4-eedb595f8da3.com","name":"fetestszonename.test-6953c7bd-bc77-402f-b6f4-eedb595f8da3.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-df38-b2af6978d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg7c89c527-fafb-436f-bb97-739f7ce3bcfc2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-22a7acf6-a3b8-47e3-bef3-4d71662c0db8.com","name":"fetestszonename.test-22a7acf6-a3b8-47e3-bef3-4d71662c0db8.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-9c9a-ae874959d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg8ac60837-ce43-43e7-805c-e70cce6f83a12\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-df63cdde-e5c3-408d-8d60-55bac7cb24af.com","name":"fetestszonename.test-df63cdde-e5c3-408d-8d60-55bac7cb24af.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-1b60-65e6db57d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg8f707ac9-7b19-46f7-b8da-acda6018f861\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-db418789-c452-4765-a277-e06d969a92b8.com","name":"fetestszonename.test-db418789-c452-4765-a277-e06d969a92b8.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-caab-1330706bd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg935c1881-65b2-4a29-ba07-656e85523d54\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-6d40f8c0-820c-4525-b9ef-92ca33f57a44.com","name":"fetestszonename.test-6d40f8c0-820c-4525-b9ef-92ca33f57a44.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-1a33-1f2fbe33d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg9e1077b6-a187-4454-913a-dec03c9eaba52\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-b7a172f2-aabe-4ee9-9e4f-d9cbf0a1b203.com","name":"fetestszonename.test-b7a172f2-aabe-4ee9-9e4f-d9cbf0a1b203.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-49f3-80c6a35bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverga4a64851-466d-402a-9ca9-6108cb6b4d8d\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-c7a5c0e1-c7b8-4774-98aa-5672301b5886.com","name":"fetestszonename.test-c7a5c0e1-c7b8-4774-98aa-5672301b5886.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f1f7-2744d148d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergbe2e87b4-1d76-429a-860e-6d796e9e340b\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-99a483bd-ad8c-444e-b977-c0951df2aba2.com","name":"fetestszonename.test-99a483bd-ad8c-444e-b977-c0951df2aba2.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-00b1-2bdad9abd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergbf472a78-3508-4863-9a65-96795acfb1e22\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-cc4f4049-2cf0-4200-ae49-10fab5a69170.com","name":"fetestszonename.test-cc4f4049-2cf0-4200-ae49-10fab5a69170.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-ea7d-d0f9eaa7d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergc47a312c-e8d6-4560-9bef-6797c0fa48c6\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-f84850e4-80d9-4888-92fb-827d00b513e2.com","name":"fetestszonename.test-f84850e4-80d9-4888-92fb-827d00b513e2.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cb07-5d5cac6bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergc79de5d0-3a46-42e3-8daf-7dcee973d62a\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-c38794fa-4c7e-4e42-a4df-df2377d3e6d8.com","name":"fetestszonename.test-c38794fa-4c7e-4e42-a4df-df2377d3e6d8.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4326-ddbd256bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergcf339632-52ce-43ca-ad38-e3fe3512aefb\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-cfad6629-0c46-486a-9521-5daa164b75df.com","name":"fetestszonename.test-cfad6629-0c46-486a-9521-5daa164b75df.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-803c-5c881e5ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergcf5472ae-78af-4e4e-8856-a4629c65571e2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-3d0603d6-ba85-4d28-83bb-dd8fae34aed3.com","name":"fetestszonename.test-3d0603d6-ba85-4d28-83bb-dd8fae34aed3.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-1f1d-e93c415bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergecb52982-7c98-4367-a6ed-e2830e11b79d2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-0de38a05-5f28-47cc-8d4d-5a14c1129120.com","name":"fetestszonename.test-0de38a05-5f28-47cc-8d4d-5a14c1129120.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-9b25-eb214257d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergf019a24f-04b9-48c1-aa03-3d3e45383f30\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-311429ec-af68-4567-84d2-098e44a8d780.com","name":"fetestszonename.test-311429ec-af68-4567-84d2-098e44a8d780.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-1349-3fc637c9d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergff39196d-2180-4984-b5e8-12246e00de9a2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-a919309c-2d77-4360-baf8-d470fab01d43.com","name":"fetestszonename.test-a919309c-2d77-4360-baf8-d470fab01d43.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-d0e3-3596005ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/commontestgroup\/providers\/Microsoft.Network\/dnszones\/hitesh.test","name":"hitesh.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a431-27edb490d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/dnszones\/providers\/Microsoft.Network\/dnszones\/karthikbulk.com","name":"karthikbulk.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e4d6-bbb8e5b5d101","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":38003,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/dnszones\/providers\/Microsoft.Network\/dnszones\/karthikbulk2.com","name":"karthikbulk2.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-aa47-222eeab5d101","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":10001,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/dnszones\/providers\/Microsoft.Network\/dnszones\/karthiktest.com","name":"karthiktest.com","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-6e4e-118a22b5d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/basicscenarios.azuredns.internal.test","name":"basicscenarios.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3130-70c348c3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":17,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/delegations.azuredns.internal.test","name":"delegations.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d77f-56f72428d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":8,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/foo.com.1","name":"foo.com.1","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a130-a1256405d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/supportedtypes.azuredns.internal.test","name":"supportedtypes.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8cc3-92c62428d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":11,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f007-dd1e2528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup1\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-145c-922b2528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup2\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cc93-b7372528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup3\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b4bb-c2442528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup4\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8eeb-48502528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup5\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1be2-835c2528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup6\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8a62-18692528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup7\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3f6e-13752528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup8\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8eda-b0802528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/albertozone.com","name":"albertozone.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-d006-58f3c480d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-1ed41e6d-5a94-415d-9bb0-1dcb7d5dc301.com","name":"fetestszonename.test-1ed41e6d-5a94-415d-9bb0-1dcb7d5dc301.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a58e-db8ebc9ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/ww.rules","name":"ww.rules","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-0fc3-eeeaed62d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/wwa.rules","name":"wwa.rules","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5b33-b520ee62d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.ashx","name":"www.ashx","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-15d8-d1d92a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.asmx","name":"www.asmx","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-efd5-864f2a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.aspq","name":"www.aspq","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-56d9-831f2b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.axd","name":"www.axd","type":"Microsoft.Network\/dnszones","etag":"00000005-0000-0000-bcc5-f4142b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.cshtml","name":"www.cshtml","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4b7c-a01b2b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.rules","name":"www.rules","type":"Microsoft.Network\/dnszones","etag":"00000008-0000-0000-46df-cf84ed62d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.soap","name":"www.soap","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-8118-96102b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.svc","name":"www.svc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-58fd-0ad32a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.vbhtm","name":"www.vbhtm","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-b34c-92cc2a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.vbhtml","name":"www.vbhtml","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-3cf7-5cc32a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.x","name":"www.x","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-ff2d-55a12a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.xamlx","name":"www.xamlx","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-10cd-daaf2a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.xoml","name":"www.xoml","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-cbd9-aff82a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.xshtml","name":"www.xshtml","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-e293-61182b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www2.rules","name":"www2.rules","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-6482-2ec84170d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www3.rules","name":"www3.rules","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-3cd6-d6ca4270d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www4.rules","name":"www4.rules","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f65a-85464370d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www5.rules","name":"www5.rules","type":"Microsoft.Network\/dnszones","etag":"00000007-0000-0000-dcae-46d74370d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www6.rules1","name":"www6.rules1","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-effe-85c73a71d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/hydratestdnsrg2296\/providers\/Microsoft.Network\/dnszones\/hydratest.dnszone.com2982","name":"hydratest.dnszone.com2982","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-8bf1-68346f44d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/hydratestdnsrg6951\/providers\/Microsoft.Network\/dnszones\/hydratest.dnszone.com1418","name":"hydratest.dnszone.com1418","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4569-d7b1e86ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-cloudapptesting\/providers\/Microsoft.Network\/dnszones\/jwesth-cloudapp.com","name":"jwesth-cloudapp.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1b2a-01758cc2d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":7,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-cloudapptesting\/providers\/Microsoft.Network\/dnszones\/jwesth-cloudapp1.com","name":"jwesth-cloudapp1.com","type":"Microsoft.Network\/dnszones","etag":"0000001c-0000-0000-f128-a14cdeded101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-rg\/providers\/Microsoft.Network\/dnszones\/169.181.185.in-addr.arpa","name":"169.181.185.in-addr.arpa","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3734-04a70a66d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-rg\/providers\/Microsoft.Network\/dnszones\/jwesth-test1.com","name":"jwesth-test1.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0134-e43384bbd101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-rg\/providers\/Microsoft.Network\/dnszones\/jwesth.com","name":"jwesth.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f8ae-daeaea3ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130a\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a4a4-a9695b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130b\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-f3c9-ac795b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130c\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-e8ff-d2835b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130d\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4943-808f5b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130e\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-cd92-64995b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/karthikpvtzones\/providers\/Microsoft.Network\/dnszones\/karthikpvt1.com","name":"karthikpvt1.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-c968-711cd333d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/karthikpvtzones\/providers\/Microsoft.Network\/virtualNetworks\/karthikvnet2"}],"zoneType":"Private"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/karthikpvtzones\/providers\/Microsoft.Network\/dnszones\/karthikpvt2.com","name":"karthikpvt2.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-63a7-a0a3f533d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/karthikpvtzones\/providers\/Microsoft.Network\/virtualNetworks\/karthikvnet2"}],"zoneType":"Private"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/limitstestrg\/providers\/Microsoft.Network\/dnszones\/expect20.1.com","name":"expect20.1.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-34c8-abfc977ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/mikebugbash\/providers\/Microsoft.Network\/dnszones\/mitest.com","name":"mitest.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4ec5-f6e23a36d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1048\/providers\/Microsoft.Network\/dnszones\/onesdk8502.pstest.test","name":"onesdk8502.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-aded-5045bf2ad201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1060\/providers\/Microsoft.Network\/dnszones\/onesdk2287.pstest.test","name":"onesdk2287.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-8f2b-2782ff52d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1064\/providers\/Microsoft.Network\/dnszones\/onesdk4225.pstest.test","name":"onesdk4225.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cd3f-83d8711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1096\/providers\/Microsoft.Network\/dnszones\/onesdk6719.pstest.test","name":"onesdk6719.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1ead-eb9db81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1247\/providers\/Microsoft.Network\/dnszones\/onesdk2090.pstest.test","name":"onesdk2090.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e4b0-2d82b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1281\/providers\/Microsoft.Network\/dnszones\/onesdk9190.pstest.test","name":"onesdk9190.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cdb0-3151f51fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1282\/providers\/Microsoft.Network\/dnszones\/onesdk8326.pstest.test","name":"onesdk8326.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-fc5a-0488fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} - headers: - cache-control: [private] - content-length: ['57520'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:36:59 GMT'] - server: [Microsoft-IIS/8.5] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5998'] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrMTI4Mi96b25lcy9vbmVzZGs4MzI2LnBzdGVzdC50ZXN0 - response: - body: {string: '{"nextLink":"https:\/\/api-dogfood.resources.windows-int.net:443\/subscriptions\/00000000-0000-0000-0000-000000000000\/providers\/Microsoft.Network\/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrNDAxMS96b25lcy9vbmVzZGs0MzQ3LnBzdGVzdC50ZXN0","value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk129\/providers\/Microsoft.Network\/dnszones\/onesdk989.pstest.test","name":"onesdk989.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3974-12df711fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1293\/providers\/Microsoft.Network\/dnszones\/onesdk1432.pstest.test","name":"onesdk1432.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-db36-0bbe474ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1348\/providers\/Microsoft.Network\/dnszones\/onesdk5170.pstest.test","name":"onesdk5170.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-39fc-657f611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1357\/providers\/Microsoft.Network\/dnszones\/onesdk1913.pstest.test","name":"onesdk1913.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7cd3-4ba4f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1363\/providers\/Microsoft.Network\/dnszones\/onesdk8210.pstest.test","name":"onesdk8210.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-221d-b4940a26d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1384\/providers\/Microsoft.Network\/dnszones\/onesdk6128.pstest.test","name":"onesdk6128.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-f69b-f78b6346d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1387\/providers\/Microsoft.Network\/dnszones\/onesdk3798.pstest.test","name":"onesdk3798.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-219f-67f28849d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1390\/providers\/Microsoft.Network\/dnszones\/onesdk7618.pstest.test","name":"onesdk7618.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-2b9b-604df12dd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1459\/providers\/Microsoft.Network\/dnszones\/onesdk4021.pstest.test","name":"onesdk4021.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-18f9-8b8ec853d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1481\/providers\/Microsoft.Network\/dnszones\/onesdk5772.pstest.test","name":"onesdk5772.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4625-1c97721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1493\/providers\/Microsoft.Network\/dnszones\/onesdk1429.pstest.test","name":"onesdk1429.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-b63d-0e021422d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1542\/providers\/Microsoft.Network\/dnszones\/onesdk7729.pstest.test","name":"onesdk7729.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f379-f423f81fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1562\/providers\/Microsoft.Network\/dnszones\/onesdk2146.pstest.test","name":"onesdk2146.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a7d8-7a690f39d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1575\/providers\/Microsoft.Network\/dnszones\/onesdk6718.pstest.test","name":"onesdk6718.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bfda-cfec711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1600\/providers\/Microsoft.Network\/dnszones\/onesdk8063.pstest.test","name":"onesdk8063.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2a9f-cd19062ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1606\/providers\/Microsoft.Network\/dnszones\/onesdk7391.pstest.test","name":"onesdk7391.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-63b9-87ae711fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk162\/providers\/Microsoft.Network\/dnszones\/onesdk1843.pstest.test","name":"onesdk1843.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1675-ab60fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1621\/providers\/Microsoft.Network\/dnszones\/onesdk2482.pstest.test","name":"onesdk2482.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3299-aa02f91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1622\/providers\/Microsoft.Network\/dnszones\/onesdk1489.pstest.test","name":"onesdk1489.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-66f6-7b347337d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1624\/providers\/Microsoft.Network\/dnszones\/onesdk7204.pstest.test","name":"onesdk7204.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e360-5427d839d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1675\/providers\/Microsoft.Network\/dnszones\/onesdk7311.pstest.test","name":"onesdk7311.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-192e-7766f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1703\/providers\/Microsoft.Network\/dnszones\/onesdk7165.pstest.test","name":"onesdk7165.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ad1f-1074721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1727\/providers\/Microsoft.Network\/dnszones\/onesdk9804.pstest.test","name":"onesdk9804.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7742-7dbfee1fd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1729\/providers\/Microsoft.Network\/dnszones\/onesdk7610.pstest.test","name":"onesdk7610.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-29a5-a9263447d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1734\/providers\/Microsoft.Network\/dnszones\/onesdk8881.pstest.test","name":"onesdk8881.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bcd6-ba11f91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1757\/providers\/Microsoft.Network\/dnszones\/onesdk3391.pstest.test","name":"onesdk3391.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e4fd-2496f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk178\/providers\/Microsoft.Network\/dnszones\/onesdk90.pstest.test","name":"onesdk90.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-9aea-3f153f25d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1840\/providers\/Microsoft.Network\/dnszones\/onesdk8954.pstest.test","name":"onesdk8954.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-e73f-dba0e940d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1896\/providers\/Microsoft.Network\/dnszones\/onesdk2653.pstest.test","name":"onesdk2653.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9aee-3e3a0f4fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1904\/providers\/Microsoft.Network\/dnszones\/onesdk2093.pstest.test","name":"onesdk2093.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1986-77c0b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1918\/providers\/Microsoft.Network\/dnszones\/onesdk6500.pstest.test","name":"onesdk6500.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f0da-b94d721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1987\/providers\/Microsoft.Network\/dnszones\/onesdk2408.pstest.test","name":"onesdk2408.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f5b1-94caee23d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2018\/providers\/Microsoft.Network\/dnszones\/onesdk6598.pstest.test","name":"onesdk6598.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-17d6-a1466623d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2090\/providers\/Microsoft.Network\/dnszones\/onesdk5299.pstest.test","name":"onesdk5299.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-af69-c2a7711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2090\/providers\/Microsoft.Network\/dnszones\/onesdk7065.pstest.test","name":"onesdk7065.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7c49-5b256623d201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2090\/providers\/Microsoft.Network\/dnszones\/onesdk7065.pstest.testa","name":"onesdk7065.pstest.testa","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ad8c-d0256623d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2172\/providers\/Microsoft.Network\/dnszones\/onesdk496.pstest.test","name":"onesdk496.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5f17-b3c6b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2304\/providers\/Microsoft.Network\/dnszones\/onesdk7239.pstest.test","name":"onesdk7239.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-113e-68072040d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2308\/providers\/Microsoft.Network\/dnszones\/onesdk1393.pstest.test","name":"onesdk1393.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-39b9-9de9b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2310\/providers\/Microsoft.Network\/dnszones\/onesdk2284.pstest.test","name":"onesdk2284.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-39f8-b070b541d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2333\/providers\/Microsoft.Network\/dnszones\/onesdk1256.pstest.test","name":"onesdk1256.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2e7e-de17fe3cd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2380\/providers\/Microsoft.Network\/dnszones\/onesdk3168.pstest.test","name":"onesdk3168.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-88b4-d461c453d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2383\/providers\/Microsoft.Network\/dnszones\/onesdk2901.pstest.test","name":"onesdk2901.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-342f-78b3611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2398\/providers\/Microsoft.Network\/dnszones\/onesdk8782.pstest.test","name":"onesdk8782.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-38ed-87f2062ed201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2407\/providers\/Microsoft.Network\/dnszones\/onesdk7250.pstest.test","name":"onesdk7250.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b310-a66e611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2421\/providers\/Microsoft.Network\/dnszones\/onesdk6907.pstest.test","name":"onesdk6907.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d9d8-ca16721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2503\/providers\/Microsoft.Network\/dnszones\/onesdk640.pstest.test","name":"onesdk640.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7a55-f581721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2503\/providers\/Microsoft.Network\/dnszones\/onesdk9998.pstest.test","name":"onesdk9998.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-550b-12bc711fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2530\/providers\/Microsoft.Network\/dnszones\/onesdk5712.pstest.test","name":"onesdk5712.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-eb48-cd0cfa1fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2530\/providers\/Microsoft.Network\/dnszones\/onesdk7614.pstest.test","name":"onesdk7614.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1faf-3101fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2556\/providers\/Microsoft.Network\/dnszones\/onesdk7928.pstest.test","name":"onesdk7928.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d950-d5e5711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2563\/providers\/Microsoft.Network\/dnszones\/onesdk4397.pstest.test","name":"onesdk4397.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8b49-7420fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2573\/providers\/Microsoft.Network\/dnszones\/onesdk7056.pstest.test","name":"onesdk7056.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-43a9-215b1c22d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2585\/providers\/Microsoft.Network\/dnszones\/onesdk2458.pstest.test","name":"onesdk2458.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7bfe-4344fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk264\/providers\/Microsoft.Network\/dnszones\/onesdk2107.pstest.test","name":"onesdk2107.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6bb1-2861404ed201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2644\/providers\/Microsoft.Network\/dnszones\/onesdk2865.pstest.test","name":"onesdk2865.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-d03b-00e8873ed201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2675\/providers\/Microsoft.Network\/dnszones\/onesdk4444.pstest.test","name":"onesdk4444.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-2ea6-dc528d2ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2715\/providers\/Microsoft.Network\/dnszones\/onesdk3768.pstest.test","name":"onesdk3768.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0f1c-2b7def1fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2743\/providers\/Microsoft.Network\/dnszones\/onesdk4.pstest.test","name":"onesdk4.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4c8f-60fa711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2745\/providers\/Microsoft.Network\/dnszones\/onesdk828.pstest.test","name":"onesdk828.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-31db-1c44b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2807\/providers\/Microsoft.Network\/dnszones\/onesdk2558.pstest.test","name":"onesdk2558.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0255-15d3fd1fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2823\/providers\/Microsoft.Network\/dnszones\/onesdk2112.pstest.test","name":"onesdk2112.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2e0d-2a26f91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2835\/providers\/Microsoft.Network\/dnszones\/onesdk8180.pstest.test","name":"onesdk8180.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-297f-3f36fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2881\/providers\/Microsoft.Network\/dnszones\/onesdk8706.pstest.test","name":"onesdk8706.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ec87-e7f8fc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2923\/providers\/Microsoft.Network\/dnszones\/onesdk8493.pstest.test","name":"onesdk8493.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-066c-41fbf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2942\/providers\/Microsoft.Network\/dnszones\/onesdk2839.pstest.test","name":"onesdk2839.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-89cd-f76f512ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2963\/providers\/Microsoft.Network\/dnszones\/onesdk4380.pstest.test","name":"onesdk4380.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7fab-a6affc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3016\/providers\/Microsoft.Network\/dnszones\/onesdk5815.pstest.test","name":"onesdk5815.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-75ac-a5218a4fd301","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3052\/providers\/Microsoft.Network\/dnszones\/onesdk6450.pstest.test","name":"onesdk6450.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-dfc9-7c482f29d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3077\/providers\/Microsoft.Network\/dnszones\/onesdk8057.pstest.test","name":"onesdk8057.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7330-6d80fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3082\/providers\/Microsoft.Network\/dnszones\/onesdk8403.pstest.test","name":"onesdk8403.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-754e-2e1ff91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3085\/providers\/Microsoft.Network\/dnszones\/onesdk8393.pstest.test","name":"onesdk8393.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-da3a-2e2df91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk315\/providers\/Microsoft.Network\/dnszones\/onesdk3996.pstest.test","name":"onesdk3996.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d50b-4608721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3157\/providers\/Microsoft.Network\/dnszones\/onesdk2650.pstest.test","name":"onesdk2650.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f76c-aa52d739d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3172\/providers\/Microsoft.Network\/dnszones\/onesdk379.pstest.test","name":"onesdk379.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6a8b-0297b91fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3192\/providers\/Microsoft.Network\/dnszones\/onesdk8717.pstest.test","name":"onesdk8717.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-15ae-8f21b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3306\/providers\/Microsoft.Network\/dnszones\/onesdk2738.pstest.test","name":"onesdk2738.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5007-cc5b611fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk335\/providers\/Microsoft.Network\/dnszones\/onesdk3359.pstest.test","name":"onesdk3359.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-372f-00a5721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3390\/providers\/Microsoft.Network\/dnszones\/onesdk5878.pstest.test","name":"onesdk5878.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5e2e-ae7dfb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3478\/providers\/Microsoft.Network\/dnszones\/onesdk3730.pstest.test","name":"onesdk3730.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-235f-d463d126d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3497\/providers\/Microsoft.Network\/dnszones\/onesdk5097.pstest.test","name":"onesdk5097.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-dadd-c0bfb81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3557\/providers\/Microsoft.Network\/dnszones\/onesdk8390.pstest.test","name":"onesdk8390.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a228-ad9a7c4dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3600\/providers\/Microsoft.Network\/dnszones\/onesdk2599.pstest.test","name":"onesdk2599.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-74a0-5ec1c648d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3626\/providers\/Microsoft.Network\/dnszones\/onesdk9818.pstest.test","name":"onesdk9818.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9e0c-f6d4fc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3668\/providers\/Microsoft.Network\/dnszones\/onesdk3479.pstest.test","name":"onesdk3479.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3c4a-9bd1711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3711\/providers\/Microsoft.Network\/dnszones\/onesdk8697.pstest.test","name":"onesdk8697.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-66ac-ddb3ad41d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3752\/providers\/Microsoft.Network\/dnszones\/onesdk5592.pstest.test","name":"onesdk5592.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bfc2-9751b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3791\/providers\/Microsoft.Network\/dnszones\/onesdk4990.pstest.test","name":"onesdk4990.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-320e-0706781fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3794\/providers\/Microsoft.Network\/dnszones\/onesdk1760.pstest.test","name":"onesdk1760.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9ea5-4b7c693bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3869\/providers\/Microsoft.Network\/dnszones\/onesdk7008.pstest.test","name":"onesdk7008.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a062-24088851d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3872\/providers\/Microsoft.Network\/dnszones\/onesdk9743.pstest.test","name":"onesdk9743.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-511e-6589b91fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3891\/providers\/Microsoft.Network\/dnszones\/onesdk8901.pstest.test","name":"onesdk8901.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6ef1-4eca611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3943\/providers\/Microsoft.Network\/dnszones\/onesdk7060.pstest.test","name":"onesdk7060.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6e4d-a628b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3946\/providers\/Microsoft.Network\/dnszones\/onesdk2283.pstest.test","name":"onesdk2283.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3283-64f5c548d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3956\/providers\/Microsoft.Network\/dnszones\/onesdk9718.pstest.test","name":"onesdk9718.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-fb2e-2f2aa150d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3957\/providers\/Microsoft.Network\/dnszones\/onesdk1310.pstest.test","name":"onesdk1310.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-7057-b4cb5a55d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3963\/providers\/Microsoft.Network\/dnszones\/onesdk2916.pstest.test","name":"onesdk2916.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-055d-01af6c2cd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3997\/providers\/Microsoft.Network\/dnszones\/onesdk3527.pstest.test","name":"onesdk3527.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7a8e-37c5fd1fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk401\/providers\/Microsoft.Network\/dnszones\/onesdk2615.pstest.test","name":"onesdk2615.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b3c2-2455eb4bd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4011\/providers\/Microsoft.Network\/dnszones\/onesdk4347.pstest.test","name":"onesdk4347.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5775-c6c10125d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}}]}'} - headers: - cache-control: [private] - content-length: ['53703'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:01 GMT'] - server: [Microsoft-IIS/8.5] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrNDAxMS96b25lcy9vbmVzZGs0MzQ3LnBzdGVzdC50ZXN0 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc?api-version=2018-05-01 response: - body: {string: '{"nextLink":"https:\/\/api-dogfood.resources.windows-int.net:443\/subscriptions\/00000000-0000-0000-0000-000000000000\/providers\/Microsoft.Network\/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrNzA4OC96b25lcy9vbmVzZGs2NTYwLnBzdGVzdC50ZXN0","value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4038\/providers\/Microsoft.Network\/dnszones\/onesdk9742.pstest.test","name":"onesdk9742.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-116e-dd81f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4042\/providers\/Microsoft.Network\/dnszones\/onesdk6110.pstest.test","name":"onesdk6110.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3099-a3e3a234d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4050\/providers\/Microsoft.Network\/dnszones\/onesdk2653.pstest.test","name":"onesdk2653.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3d85-5731752cd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4076\/providers\/Microsoft.Network\/dnszones\/onesdk6687.pstest.test","name":"onesdk6687.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-687b-8e0afb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4081\/providers\/Microsoft.Network\/dnszones\/onesdk2629.pstest.test","name":"onesdk2629.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3531-875d721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4129\/providers\/Microsoft.Network\/dnszones\/onesdk5232.pstest.test","name":"onesdk5232.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3082-d9fd584ad201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4161\/providers\/Microsoft.Network\/dnszones\/onesdk3953.pstest.test","name":"onesdk3953.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-560e-1828fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4179\/providers\/Microsoft.Network\/dnszones\/onesdk6739.pstest.test","name":"onesdk6739.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-783a-1e50fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4201\/providers\/Microsoft.Network\/dnszones\/onesdk1912.pstest.test","name":"onesdk1912.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-91c7-be08601fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4202\/providers\/Microsoft.Network\/dnszones\/onesdk8794.pstest.test","name":"onesdk8794.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-78df-63edf529d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4214\/providers\/Microsoft.Network\/dnszones\/onesdk8488.pstest.test","name":"onesdk8488.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7a6e-07ff0d39d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4234\/providers\/Microsoft.Network\/dnszones\/onesdk7584.pstest.test","name":"onesdk7584.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-67f3-ac7e2629d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4263\/providers\/Microsoft.Network\/dnszones\/onesdk5331.pstest.test","name":"onesdk5331.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7e2d-0b2fc82ed201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4302\/providers\/Microsoft.Network\/dnszones\/onesdk4345.pstest.test","name":"onesdk4345.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7a69-f469fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4348\/providers\/Microsoft.Network\/dnszones\/onesdk5365.pstest.test","name":"onesdk5365.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bee0-caf1fc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4363\/providers\/Microsoft.Network\/dnszones\/onesdk1745.pstest.test","name":"onesdk1745.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bb7f-8f30fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4371\/providers\/Microsoft.Network\/dnszones\/onesdk3277.pstest.test","name":"onesdk3277.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c0f7-10b9b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk438\/providers\/Microsoft.Network\/dnszones\/onesdk5801.pstest.test","name":"onesdk5801.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5ff5-1397fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4412\/providers\/Microsoft.Network\/dnszones\/onesdk3735.pstest.test","name":"onesdk3735.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5279-2d2e3447d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4449\/providers\/Microsoft.Network\/dnszones\/onesdk3359.pstest.test","name":"onesdk3359.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7b07-b5d6611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4462\/providers\/Microsoft.Network\/dnszones\/onesdk8278.pstest.test","name":"onesdk8278.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8858-f99a1b4bd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4474\/providers\/Microsoft.Network\/dnszones\/onesdk5545.pstest.test","name":"onesdk5545.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-daee-9517fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4553\/providers\/Microsoft.Network\/dnszones\/onesdk7120.pstest.test","name":"onesdk7120.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a7b6-ffc3fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4573\/providers\/Microsoft.Network\/dnszones\/onesdk785.pstest.test","name":"onesdk785.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ce8b-8b64721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4613\/providers\/Microsoft.Network\/dnszones\/onesdk8420.pstest.test","name":"onesdk8420.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-78c9-efd7fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk466\/providers\/Microsoft.Network\/dnszones\/onesdk8888.pstest.test","name":"onesdk8888.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-c6e0-39d9502ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4668\/providers\/Microsoft.Network\/dnszones\/onesdk1495.pstest.test","name":"onesdk1495.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c531-e005e422d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk471\/providers\/Microsoft.Network\/dnszones\/onesdk8865.pstest.test","name":"onesdk8865.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-550f-fadbc43dd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4743\/providers\/Microsoft.Network\/dnszones\/onesdk1635.pstest.test","name":"onesdk1635.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-47bd-29c49a34d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4762\/providers\/Microsoft.Network\/dnszones\/onesdk1821.pstest.test","name":"onesdk1821.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5186-0a98d14fd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4834\/providers\/Microsoft.Network\/dnszones\/onesdk9711.pstest.test","name":"onesdk9711.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0059-1d52b34cd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk488\/providers\/Microsoft.Network\/dnszones\/onesdk8545.pstest.test","name":"onesdk8545.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f58e-a75bfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4891\/providers\/Microsoft.Network\/dnszones\/onesdk513.pstest.test","name":"onesdk513.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-efee-a9bbfa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4936\/providers\/Microsoft.Network\/dnszones\/onesdk2772.pstest.test","name":"onesdk2772.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d091-83740e4fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4958\/providers\/Microsoft.Network\/dnszones\/onesdk7482.pstest.test","name":"onesdk7482.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e139-f513a03ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5061\/providers\/Microsoft.Network\/dnszones\/onesdk7650.pstest.test","name":"onesdk7650.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ce49-6a88f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5155\/providers\/Microsoft.Network\/dnszones\/onesdk97.pstest.test","name":"onesdk97.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d36f-3d97b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5202\/providers\/Microsoft.Network\/dnszones\/onesdk2445.pstest.test","name":"onesdk2445.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-355b-80f3711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5216\/providers\/Microsoft.Network\/dnszones\/onesdk5449.pstest.test","name":"onesdk5449.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c515-315cd126d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5228\/providers\/Microsoft.Network\/dnszones\/onesdk7389.pstest.test","name":"onesdk7389.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d957-ade1f71fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5231\/providers\/Microsoft.Network\/dnszones\/onesdk7994.pstest.test","name":"onesdk7994.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2642-d6f4af25d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5236\/providers\/Microsoft.Network\/dnszones\/onesdk3237.pstest.test","name":"onesdk3237.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d3af-963ef81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5267\/providers\/Microsoft.Network\/dnszones\/onesdk748.pstest.test","name":"onesdk748.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-0320-77c76523d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5321\/providers\/Microsoft.Network\/dnszones\/onesdk9913.pstest.test","name":"onesdk9913.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8b17-e448fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5375\/providers\/Microsoft.Network\/dnszones\/onesdk6291.pstest.test","name":"onesdk6291.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3ca1-2d5bbf53d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5589\/providers\/Microsoft.Network\/dnszones\/onesdk548.pstest.test","name":"onesdk548.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-60c6-af58fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5598\/providers\/Microsoft.Network\/dnszones\/onesdk2400.pstest.test","name":"onesdk2400.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b9df-ae1aaa36d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk560\/providers\/Microsoft.Network\/dnszones\/onesdk4022.pstest.test","name":"onesdk4022.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7b2f-a130f924d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5605\/providers\/Microsoft.Network\/dnszones\/onesdk6812.pstest.test","name":"onesdk6812.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5e70-7f8f3e38d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5613\/providers\/Microsoft.Network\/dnszones\/onesdk4887.pstest.test","name":"onesdk4887.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9ea3-46abf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk563\/providers\/Microsoft.Network\/dnszones\/onesdk5622.pstest.test","name":"onesdk5622.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-35b6-0f3dfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5633\/providers\/Microsoft.Network\/dnszones\/onesdk957.pstest.test","name":"onesdk957.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9794-b7bb721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5662\/providers\/Microsoft.Network\/dnszones\/onesdk5551.pstest.test","name":"onesdk5551.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-ea04-868ff53cd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5717\/providers\/Microsoft.Network\/dnszones\/onesdk8803.pstest.test","name":"onesdk8803.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-3693-7ac0e035d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5741\/providers\/Microsoft.Network\/dnszones\/onesdk4971.pstest.test","name":"onesdk4971.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-16d7-fe67fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5849\/providers\/Microsoft.Network\/dnszones\/onesdk6028.pstest.test","name":"onesdk6028.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9703-59baf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5891\/providers\/Microsoft.Network\/dnszones\/onesdk1490.pstest.test","name":"onesdk1490.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a513-4c577d4dd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5986\/providers\/Microsoft.Network\/dnszones\/onesdk1426.pstest.test","name":"onesdk1426.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3620-6eb4721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5986\/providers\/Microsoft.Network\/dnszones\/onesdk75.pstest.test","name":"onesdk75.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5d72-53dafd1fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6001\/providers\/Microsoft.Network\/dnszones\/onesdk7554.pstest.test","name":"onesdk7554.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5e36-2123aa36d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk602\/providers\/Microsoft.Network\/dnszones\/onesdk3442.pstest.test","name":"onesdk3442.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-05d9-d16cea40d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6031\/providers\/Microsoft.Network\/dnszones\/onesdk4501.pstest.test","name":"onesdk4501.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-1d39-ce5da623d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6043\/providers\/Microsoft.Network\/dnszones\/onesdk7277.pstest.test","name":"onesdk7277.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b920-1869611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6125\/providers\/Microsoft.Network\/dnszones\/onesdk8691.pstest.test","name":"onesdk8691.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-16ad-47b51735d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6142\/providers\/Microsoft.Network\/dnszones\/onesdk3174.pstest.test","name":"onesdk3174.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-402f-2bd0611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6180\/providers\/Microsoft.Network\/dnszones\/onesdk1410.pstest.test","name":"onesdk1410.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-8076-e7087252d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6194\/providers\/Microsoft.Network\/dnszones\/onesdk2606.pstest.test","name":"onesdk2606.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8036-7ff3f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6218\/providers\/Microsoft.Network\/dnszones\/onesdk182.pstest.test","name":"onesdk182.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e269-5f00fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6230\/providers\/Microsoft.Network\/dnszones\/onesdk794.pstest.test","name":"onesdk794.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-eb5c-688ffa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6238\/providers\/Microsoft.Network\/dnszones\/onesdk1437.pstest.test","name":"onesdk1437.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c4ec-c2cafa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6270\/providers\/Microsoft.Network\/dnszones\/onesdk5966.pstest.test","name":"onesdk5966.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5adc-c19fa725d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6293\/providers\/Microsoft.Network\/dnszones\/onesdk8153.pstest.test","name":"onesdk8153.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-df7c-e132584ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk63\/providers\/Microsoft.Network\/dnszones\/onesdk9277.pstest.test","name":"onesdk9277.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-492a-773cbf2ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6327\/providers\/Microsoft.Network\/dnszones\/onesdk7018.pstest.test","name":"onesdk7018.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-837f-71ddf547d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6327\/providers\/Microsoft.Network\/dnszones\/onesdk9735.pstest.test","name":"onesdk9735.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b606-337b721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6360\/providers\/Microsoft.Network\/dnszones\/onesdk7945.pstest.test","name":"onesdk7945.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6d8c-0a0af91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6364\/providers\/Microsoft.Network\/dnszones\/onesdk9096.pstest.test","name":"onesdk9096.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e729-cdf0b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6456\/providers\/Microsoft.Network\/dnszones\/onesdk5828.pstest.test","name":"onesdk5828.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5187-58e4f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6478\/providers\/Microsoft.Network\/dnszones\/onesdk1379.pstest.test","name":"onesdk1379.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-2b8e-6425062ed201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6572\/providers\/Microsoft.Network\/dnszones\/onesdk6230.pstest.test","name":"onesdk6230.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-68e8-4f34f91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6588\/providers\/Microsoft.Network\/dnszones\/onesdk1156.pstest.test","name":"onesdk1156.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-765b-82c7302ad201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6593\/providers\/Microsoft.Network\/dnszones\/onesdk5086.pstest.test","name":"onesdk5086.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-c920-1caa9a27d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6606\/providers\/Microsoft.Network\/dnszones\/onesdk9026.pstest.test","name":"onesdk9026.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-03d3-7bc3711fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6610\/providers\/Microsoft.Network\/dnszones\/onesdk6999.pstest.test","name":"onesdk6999.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ad57-12c53f2dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6616\/providers\/Microsoft.Network\/dnszones\/onesdk3188.pstest.test","name":"onesdk3188.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5cfc-0989721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6626\/providers\/Microsoft.Network\/dnszones\/onesdk2901.pstest.test","name":"onesdk2901.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-26f8-16f3fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6674\/providers\/Microsoft.Network\/dnszones\/onesdk7395.pstest.test","name":"onesdk7395.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2a8e-dda2ef23d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6713\/providers\/Microsoft.Network\/dnszones\/onesdk6982.pstest.test","name":"onesdk6982.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ac62-ac6eae23d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6721\/providers\/Microsoft.Network\/dnszones\/onesdk9507.pstest.test","name":"onesdk9507.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-b55f-a3ad323cd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6749\/providers\/Microsoft.Network\/dnszones\/onesdk201.pstest.test","name":"onesdk201.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-eb32-dfa19a27d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6784\/providers\/Microsoft.Network\/dnszones\/onesdk3572.pstest.test","name":"onesdk3572.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9a21-418dfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6793\/providers\/Microsoft.Network\/dnszones\/onesdk5306.pstest.test","name":"onesdk5306.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-015a-23f5f529d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6848\/providers\/Microsoft.Network\/dnszones\/onesdk6703.pstest.test","name":"onesdk6703.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-35e9-4ea3c53dd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6880\/providers\/Microsoft.Network\/dnszones\/onesdk2778.pstest.test","name":"onesdk2778.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-752e-1cd4c43dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6898\/providers\/Microsoft.Network\/dnszones\/onesdk5795.pstest.test","name":"onesdk5795.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8ce2-6c62fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6906\/providers\/Microsoft.Network\/dnszones\/onesdk1794.pstest.test","name":"onesdk1794.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cbce-d7b3fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6917\/providers\/Microsoft.Network\/dnszones\/onesdk8494.pstest.test","name":"onesdk8494.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-c3eb-f5d2ee23d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7040\/providers\/Microsoft.Network\/dnszones\/onesdk6420.pstest.test","name":"onesdk6420.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-f329-8dfdc548d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7065\/providers\/Microsoft.Network\/dnszones\/onesdk7252.pstest.test","name":"onesdk7252.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f81d-071b3e52d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7088\/providers\/Microsoft.Network\/dnszones\/onesdk6560.pstest.test","name":"onesdk6560.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ee5b-e561da4fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}}]}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc","name":"pydns.comcd720cdc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-70eb-3b1b4149d401","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"maxNumberOfRecordsPerRecordSet":null,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcreg"}],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcres"}],"zoneType":"Private"}}'} headers: cache-control: [private] - content-length: ['53872'] + content-length: ['907'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:02 GMT'] + date: ['Mon, 10 Sep 2018 20:01:48 GMT'] + etag: [00000002-0000-0000-70eb-3b1b4149d401] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5998'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -177,26 +63,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrNzA4OC96b25lcy9vbmVzZGs2NTYwLnBzdGVzdC50ZXN0 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones?api-version=2018-05-01 response: - body: {string: '{"nextLink":"https:\/\/api-dogfood.resources.windows-int.net:443\/subscriptions\/00000000-0000-0000-0000-000000000000\/providers\/Microsoft.Network\/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrOTU3L3pvbmVzL29uZXNkazQzOC5wc3Rlc3QudGVzdA==","value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7119\/providers\/Microsoft.Network\/dnszones\/onesdk551.pstest.test","name":"onesdk551.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-10cf-30070e39d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7125\/providers\/Microsoft.Network\/dnszones\/onesdk8217.pstest.test","name":"onesdk8217.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ea00-444df81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7136\/providers\/Microsoft.Network\/dnszones\/onesdk480.pstest.test","name":"onesdk480.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-b1af-fa0e2040d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7140\/providers\/Microsoft.Network\/dnszones\/onesdk6605.pstest.test","name":"onesdk6605.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d5e1-5d0e2156d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7176\/providers\/Microsoft.Network\/dnszones\/onesdk9349.pstest.test","name":"onesdk9349.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bb71-6f98e940d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7242\/providers\/Microsoft.Network\/dnszones\/onesdk4616.pstest.test","name":"onesdk4616.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e0eb-890cf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7332\/providers\/Microsoft.Network\/dnszones\/onesdk3587.pstest.test","name":"onesdk3587.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-fe40-dd818b2ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7337\/providers\/Microsoft.Network\/dnszones\/onesdk5635.pstest.test","name":"onesdk5635.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-22bb-86338f54d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7344\/providers\/Microsoft.Network\/dnszones\/onesdk6001.pstest.test","name":"onesdk6001.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-0395-d5c2f12dd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7355\/providers\/Microsoft.Network\/dnszones\/onesdk2943.pstest.test","name":"onesdk2943.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3842-9679333cd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7356\/providers\/Microsoft.Network\/dnszones\/onesdk4147.pstest.test","name":"onesdk4147.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9c54-14ff382ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7406\/providers\/Microsoft.Network\/dnszones\/onesdk4171.pstest.test","name":"onesdk4171.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-9b6c-1be1352dd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk744\/providers\/Microsoft.Network\/dnszones\/onesdk9600.pstest.test","name":"onesdk9600.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5736-5a1fe322d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7442\/providers\/Microsoft.Network\/dnszones\/onesdk5915.pstest.test","name":"onesdk5915.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9cd7-ecca711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7466\/providers\/Microsoft.Network\/dnszones\/onesdk7233.pstest.test","name":"onesdk7233.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-cfe4-e0368849d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7529\/providers\/Microsoft.Network\/dnszones\/onesdk6493.pstest.test","name":"onesdk6493.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9549-bbb2b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7530\/providers\/Microsoft.Network\/dnszones\/onesdk3045.pstest.test","name":"onesdk3045.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7789-af31a150d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7535\/providers\/Microsoft.Network\/dnszones\/onesdk3217.pstest.test","name":"onesdk3217.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9a77-e81c593fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7585\/providers\/Microsoft.Network\/dnszones\/onesdk1523.pstest.test","name":"onesdk1523.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6aac-ab4a883ed201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7585\/providers\/Microsoft.Network\/dnszones\/onesdk1523.pstest.testa","name":"onesdk1523.pstest.testa","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-432a-244b883ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7585\/providers\/Microsoft.Network\/dnszones\/onesdk9365.pstest.test","name":"onesdk9365.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d8c8-a5ac721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7594\/providers\/Microsoft.Network\/dnszones\/onesdk4695.pstest.test","name":"onesdk4695.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7bfd-8530903ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk763\/providers\/Microsoft.Network\/dnszones\/onesdk2995.pstest.test","name":"onesdk2995.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-7016-c9d4f02dd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7656\/providers\/Microsoft.Network\/dnszones\/onesdk4165.pstest.test","name":"onesdk4165.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-154e-0c89ea4bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7699\/providers\/Microsoft.Network\/dnszones\/onesdk746.pstest.test","name":"onesdk746.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-da71-176d8a2bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7705\/providers\/Microsoft.Network\/dnszones\/onesdk632.pstest.test","name":"onesdk632.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-65e2-3a49611fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7710\/providers\/Microsoft.Network\/dnszones\/onesdk4259.pstest.test","name":"onesdk4259.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9ddc-badbb81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk779\/providers\/Microsoft.Network\/dnszones\/onesdk1696.pstest.test","name":"onesdk1696.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-68dd-d707fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7822\/providers\/Microsoft.Network\/dnszones\/onesdk7725.pstest.test","name":"onesdk7725.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e203-be0c3f25d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7837\/providers\/Microsoft.Network\/dnszones\/onesdk3168.pstest.test","name":"onesdk3168.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-75cd-825ad739d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7913\/providers\/Microsoft.Network\/dnszones\/onesdk5889.pstest.test","name":"onesdk5889.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-1e44-8594ac41d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7964\/providers\/Microsoft.Network\/dnszones\/onesdk5306.pstest.test","name":"onesdk5306.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4548-76c96528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7983\/providers\/Microsoft.Network\/dnszones\/onesdk1262.pstest.test","name":"onesdk1262.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1107-69bf611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7991\/providers\/Microsoft.Network\/dnszones\/onesdk8675.pstest.test","name":"onesdk8675.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-305d-d5319149d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8038\/providers\/Microsoft.Network\/dnszones\/onesdk3192.pstest.test","name":"onesdk3192.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ccea-1b31f652d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8043\/providers\/Microsoft.Network\/dnszones\/onesdk7041.pstest.test","name":"onesdk7041.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-9055-fe90ea4bd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8109\/providers\/Microsoft.Network\/dnszones\/onesdk6495.pstest.test","name":"onesdk6495.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-cf40-9859b34cd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8122\/providers\/Microsoft.Network\/dnszones\/onesdk253.pstest.test","name":"onesdk253.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b190-2e52fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8154\/providers\/Microsoft.Network\/dnszones\/onesdk153.pstest.test","name":"onesdk153.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-308d-cfad611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk822\/providers\/Microsoft.Network\/dnszones\/onesdk8520.pstest.test","name":"onesdk8520.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b7de-e27efd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8222\/providers\/Microsoft.Network\/dnszones\/onesdk6033.pstest.test","name":"onesdk6033.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7374-4d746c46d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8268\/providers\/Microsoft.Network\/dnszones\/onesdk1602.pstest.test","name":"onesdk1602.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1dc5-edbdfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8272\/providers\/Microsoft.Network\/dnszones\/onesdk1083.pstest.test","name":"onesdk1083.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-08d9-5d7bf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8300\/providers\/Microsoft.Network\/dnszones\/onesdk5050.pstest.test","name":"onesdk5050.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6728-d2bef629d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8307\/providers\/Microsoft.Network\/dnszones\/onesdk128.pstest.test","name":"onesdk128.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b309-a4eafc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8357\/providers\/Microsoft.Network\/dnszones\/onesdk52.pstest.test","name":"onesdk52.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5d6b-4232721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8365\/providers\/Microsoft.Network\/dnszones\/onesdk708.pstest.test","name":"onesdk708.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a6a5-b75bfa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8377\/providers\/Microsoft.Network\/dnszones\/onesdk7016.pstest.test","name":"onesdk7016.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ed2e-4a36b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8456\/providers\/Microsoft.Network\/dnszones\/onesdk1593.pstest.test","name":"onesdk1593.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b68d-8e9c611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8479\/providers\/Microsoft.Network\/dnszones\/onesdk9111.pstest.test","name":"onesdk9111.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-00d5-4f63611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8487\/providers\/Microsoft.Network\/dnszones\/onesdk6497.pstest.test","name":"onesdk6497.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bd89-2c7e711fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8499\/providers\/Microsoft.Network\/dnszones\/onesdk2786.pstest.test","name":"onesdk2786.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-887c-5c2fb91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8522\/providers\/Microsoft.Network\/dnszones\/onesdk8790.pstest.test","name":"onesdk8790.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b879-d2d4b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8552\/providers\/Microsoft.Network\/dnszones\/onesdk4250.pstest.test","name":"onesdk4250.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ef5e-96007252d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8559\/providers\/Microsoft.Network\/dnszones\/onesdk501.pstest.test","name":"onesdk501.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1b5b-734a3f38d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8580\/providers\/Microsoft.Network\/dnszones\/onesdk1493.pstest.test","name":"onesdk1493.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-980c-f138721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8598\/providers\/Microsoft.Network\/dnszones\/onesdk2766.pstest.test","name":"onesdk2766.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b1c5-520f721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8603\/providers\/Microsoft.Network\/dnszones\/onesdk1068.pstest.test","name":"onesdk1068.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-80e1-600a822bd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8609\/providers\/Microsoft.Network\/dnszones\/onesdk9705.pstest.test","name":"onesdk9705.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-abd3-7179fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8625\/providers\/Microsoft.Network\/dnszones\/onesdk8944.pstest.test","name":"onesdk8944.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4d22-3d6ffb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8644\/providers\/Microsoft.Network\/dnszones\/onesdk4244.pstest.test","name":"onesdk4244.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-052f-06e3b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk869\/providers\/Microsoft.Network\/dnszones\/onesdk2868.pstest.test","name":"onesdk2868.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cffa-aa45f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8699\/providers\/Microsoft.Network\/dnszones\/onesdk1043.pstest.test","name":"onesdk1043.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-0235-60062156d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8708\/providers\/Microsoft.Network\/dnszones\/onesdk7157.pstest.test","name":"onesdk7157.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4281-8685234bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8840\/providers\/Microsoft.Network\/dnszones\/onesdk9197.pstest.test","name":"onesdk9197.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7bc8-3777e135d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8869\/providers\/Microsoft.Network\/dnszones\/onesdk2810.pstest.test","name":"onesdk2810.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-29cd-5058b91fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8903\/providers\/Microsoft.Network\/dnszones\/onesdk3123.pstest.test","name":"onesdk3123.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4e1b-c219611fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk891\/providers\/Microsoft.Network\/dnszones\/onesdk696.pstest.test","name":"onesdk696.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8235-fe80de15d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8920\/providers\/Microsoft.Network\/dnszones\/onesdk2672.pstest.test","name":"onesdk2672.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0f6b-9a38fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8924\/providers\/Microsoft.Network\/dnszones\/onesdk6190.pstest.test","name":"onesdk6190.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9e05-5051f63cd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8932\/providers\/Microsoft.Network\/dnszones\/onesdk6647.pstest.test","name":"onesdk6647.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-1ad4-0fa27c4dd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8951\/providers\/Microsoft.Network\/dnszones\/onesdk4871.pstest.test","name":"onesdk4871.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7c83-fb77fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8967\/providers\/Microsoft.Network\/dnszones\/onesdk8737.pstest.test","name":"onesdk8737.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a41d-62d6f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8987\/providers\/Microsoft.Network\/dnszones\/onesdk3928.pstest.test","name":"onesdk3928.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-88e8-86f64638d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8992\/providers\/Microsoft.Network\/dnszones\/onesdk8784.pstest.test","name":"onesdk8784.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4f37-b762fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9005\/providers\/Microsoft.Network\/dnszones\/onesdk5815.pstest.test","name":"onesdk5815.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e7f3-8ab05155d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk901\/providers\/Microsoft.Network\/dnszones\/onesdk8722.pstest.test","name":"onesdk8722.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2c01-cc55721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9035\/providers\/Microsoft.Network\/dnszones\/onesdk7935.pstest.test","name":"onesdk7935.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c10f-7074f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9049\/providers\/Microsoft.Network\/dnszones\/onesdk1994.pstest.test","name":"onesdk1994.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4e15-b5578a2ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9068\/providers\/Microsoft.Network\/dnszones\/onesdk8660.pstest.test","name":"onesdk8660.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5ef6-de152140d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9084\/providers\/Microsoft.Network\/dnszones\/onesdk8158.pstest.test","name":"onesdk8158.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-24fa-ba41fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9090\/providers\/Microsoft.Network\/dnszones\/onesdk4457.pstest.test","name":"onesdk4457.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7e5d-cf1ba03ad201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9134\/providers\/Microsoft.Network\/dnszones\/onesdk6175.pstest.test","name":"onesdk6175.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-c01a-2697f41fd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9139\/providers\/Microsoft.Network\/dnszones\/onesdk417.pstest.test","name":"onesdk417.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f47e-5679d02ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9160\/providers\/Microsoft.Network\/dnszones\/onesdk6148.pstest.test","name":"onesdk6148.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0be8-c83f721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9164\/providers\/Microsoft.Network\/dnszones\/onesdk9827.pstest.test","name":"onesdk9827.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-df85-fbf87337d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9175\/providers\/Microsoft.Network\/dnszones\/onesdk5076.pstest.test","name":"onesdk5076.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-61d3-4f3bf91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9247\/providers\/Microsoft.Network\/dnszones\/onesdk6135.pstest.test","name":"onesdk6135.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-d81b-f72a8f54d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9265\/providers\/Microsoft.Network\/dnszones\/onesdk5743.pstest.test","name":"onesdk5743.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-9d87-f284693bd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9270\/providers\/Microsoft.Network\/dnszones\/onesdk5482.pstest.test","name":"onesdk5482.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e2d9-f811fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9323\/providers\/Microsoft.Network\/dnszones\/onesdk9813.pstest.test","name":"onesdk9813.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b8f8-b541fe47d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9361\/providers\/Microsoft.Network\/dnszones\/onesdk4646.pstest.test","name":"onesdk4646.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5a19-0ac3721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9412\/providers\/Microsoft.Network\/dnszones\/onesdk4765.pstest.test","name":"onesdk4765.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a534-50e48a2ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9423\/providers\/Microsoft.Network\/dnszones\/onesdk8561.pstest.test","name":"onesdk8561.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-40f2-c3a4b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9462\/providers\/Microsoft.Network\/dnszones\/onesdk4580.pstest.test","name":"onesdk4580.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-704d-79befc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9466\/providers\/Microsoft.Network\/dnszones\/onesdk2434.pstest.test","name":"onesdk2434.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-204e-b882d44fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk947\/providers\/Microsoft.Network\/dnszones\/onesdk8857.pstest.test","name":"onesdk8857.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7103-354bfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9543\/providers\/Microsoft.Network\/dnszones\/onesdk8652.pstest.test","name":"onesdk8652.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7808-a7dfa03ad201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9551\/providers\/Microsoft.Network\/dnszones\/onesdk433.pstest.test","name":"onesdk433.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9d5f-94b8e035d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk957\/providers\/Microsoft.Network\/dnszones\/onesdk438.pstest.test","name":"onesdk438.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d859-f085fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} + body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc","name":"pydns.comcd720cdc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-70eb-3b1b4149d401","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"maxNumberOfRecordsPerRecordSet":null,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcreg"}],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcres"}],"zoneType":"Private"}}]}'} headers: cache-control: [private] - content-length: ['53757'] + content-length: ['919'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:05 GMT'] + date: ['Mon, 10 Sep 2018 20:01:49 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-entities-read: ['59999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -205,86 +91,85 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrOTU3L3pvbmVzL29uZXNkazQzOC5wc3Rlc3QudGVzdA== + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-05-01 response: - body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9570\/providers\/Microsoft.Network\/dnszones\/onesdk3559.pstest.test","name":"onesdk3559.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-14b0-78a8611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9600\/providers\/Microsoft.Network\/dnszones\/onesdk8840.pstest.test","name":"onesdk8840.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e2e0-930bb91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9614\/providers\/Microsoft.Network\/dnszones\/onesdk27.pstest.test","name":"onesdk27.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-447a-b854f81fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9647\/providers\/Microsoft.Network\/dnszones\/onesdk6702.pstest.test","name":"onesdk6702.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8c22-6176fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9674\/providers\/Microsoft.Network\/dnszones\/onesdk3247.pstest.test","name":"onesdk3247.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5344-235b3547d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9700\/providers\/Microsoft.Network\/dnszones\/onesdk3208.pstest.test","name":"onesdk3208.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1821-f313f81fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9755\/providers\/Microsoft.Network\/dnszones\/onesdk1281.pstest.test","name":"onesdk1281.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-84be-b137fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9770\/providers\/Microsoft.Network\/dnszones\/onesdk7520.pstest.test","name":"onesdk7520.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-684e-151ab91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9792\/providers\/Microsoft.Network\/dnszones\/onesdk4698.pstest.test","name":"onesdk4698.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4070-a5c1f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk98\/providers\/Microsoft.Network\/dnszones\/onesdk5779.pstest.test","name":"onesdk5779.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d0cb-1c90721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9865\/providers\/Microsoft.Network\/dnszones\/onesdk1690.pstest.test","name":"onesdk1690.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8100-507f6851d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9877\/providers\/Microsoft.Network\/dnszones\/onesdk4260.pstest.test","name":"onesdk4260.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a704-b95ef81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9910\/providers\/Microsoft.Network\/dnszones\/onesdk8222.pstest.test","name":"onesdk8222.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-864f-9dacfa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9986\/providers\/Microsoft.Network\/dnszones\/onesdk7796.pstest.test","name":"onesdk7796.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5661-d8b9b91fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9990\/providers\/Microsoft.Network\/dnszones\/onesdk3.pstest.test","name":"onesdk3.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b60d-8590b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9993\/providers\/Microsoft.Network\/dnszones\/onesdk6809.pstest.test","name":"onesdk6809.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6ea8-8a46721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/origintestresourcegroup\/providers\/Microsoft.Network\/dnszones\/basicscenarios.azuredns.internal.test","name":"basicscenarios.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-634d-c14347c3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":17,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/origintestresourcegroup\/providers\/Microsoft.Network\/dnszones\/foo.com","name":"foo.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1f3d-d6f047c3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/rg1\/providers\/Microsoft.Network\/dnszones\/jt-test.com","name":"jt-test.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a2fd-97bef6d5d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":9,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/rg1\/providers\/Microsoft.Network\/dnszones\/jt-test.net","name":"jt-test.net","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4753-2e0d1ec3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/rg1\/providers\/Microsoft.Network\/dnszones\/jt-test2.com","name":"jt-test2.com","type":"Microsoft.Network\/dnszones","etag":"00000007-0000-0000-63a9-32a82bc3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/rg2\/providers\/Microsoft.Network\/dnszones\/jt-test.com","name":"jt-test.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c20f-4c6b21c3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc","name":"pydns.comcd720cdc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4088-f439e3b4d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcreg"}],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcres"}],"zoneType":"Private"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest.test","name":"onesdkrand.10500onesdk.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b9a2-cbc94123d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest1.1test","name":"onesdkrand.10500onesdk.pstest1.1test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4dd5-44834423d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest21.22test","name":"onesdkrand.10500onesdk.pstest21.22test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-afef-8d834c23d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest22.22test","name":"onesdkrand.10500onesdk.pstest22.22test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2b55-ff294723d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest23.22test","name":"onesdkrand.10500onesdk.pstest23.22test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bfac-f6bd5023d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest24.24test","name":"onesdkrand.10500onesdk.pstest24.24test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d222-73015123d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest33.23test","name":"onesdkrand.10500onesdk.pstest33.23test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b9eb-dfae4d23d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/test.zone","name":"test.zone","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-38ec-78aeccd3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone34","name":"testsome.zone34","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ba21-2ccaeb23d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone35","name":"testsome.zone35","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-fddc-7d88f123d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone36","name":"testsome.zone36","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-72b6-45e90124d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone37","name":"testsome.zone37","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6b72-82e1db24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone38","name":"testsome.zone38","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5a68-a1c2dc24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone39","name":"testsome.zone39","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4ba3-41d6dc24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone40","name":"testsome.zone40","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-004a-d1f0dc24d201","location":"global","tags":{"a":"b"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone41","name":"testsome.zone41","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-35ec-c705dd24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone42","name":"testsome.zone42","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0653-37e9dd24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone43","name":"testsome.zone43","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bff9-0cb3de24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone44","name":"testsome.zone44","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7627-24e6de24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone45","name":"testsome.zone45","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6f69-5fbc0c25d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone46","name":"testsome.zone46","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c2bf-b1e60e25d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone47","name":"testsome.zone47","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6799-720a0f25d201","location":"global","tags":{"name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone49","name":"testsome.zone49","type":"Microsoft.Network\/dnszones","etag":"00000008-0000-0000-0b92-8ab20f25d201","location":"global","tags":{"Name":"tag1","Value":"tag2"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone1","name":"testsome1.zone1","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-faa0-5c2d0e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone2","name":"testsome1.zone2","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-378b-aa750e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone3","name":"testsome1.zone3","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c833-d5a90e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone4","name":"testsome1.zone4","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0160-e0a17d25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone5","name":"testsome1.zone5","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-17e8-90bf7d25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone1","name":"testsome2.zone1","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2cb2-47267e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone10","name":"testsome2.zone10","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-40b3-4aec9925d201","location":"global","tags":{"value":"Value1","name":"Tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone11","name":"testsome2.zone11","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7dfe-edeea025d201","location":"global","tags":{"value":"Value1","Name":"Tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone2","name":"testsome2.zone2","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c994-c0447e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone3","name":"testsome2.zone3","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-53f6-5e497e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone4","name":"testsome2.zone4","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a8a1-98dd8725d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone5","name":"testsome2.zone5","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f8c9-b1ed8725d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone6","name":"testsome2.zone6","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e816-2ff78725d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone7","name":"testsome2.zone7","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-529e-046a9125d201","location":"global","tags":{"value":"Value1","name":"Tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone8","name":"testsome2.zone8","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5fc0-64ac9925d201","location":"global","tags":{"value":"Value1","name":"Tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} + body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc","name":"pydns.comcd720cdc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-70eb-3b1b4149d401","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"maxNumberOfRecordsPerRecordSet":null,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcreg"}],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/virtualNetworks\/pvtzonevnetcd720cdcres"}],"zoneType":"Private"}}]}'} headers: cache-control: [private] - content-length: ['32745'] + content-length: ['919'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:06 GMT'] + date: ['Mon, 10 Sep 2018 20:01:51 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5997'] + x-ms-ratelimit-remaining-subscription-resource-entities-read: ['59999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: - body: '{"properties": {"ARecords": [{"ipv4Address": "1.2.3.4"}], - "TTL": 300}}' + body: '{"properties": {"TTL": 300, "ARecords": [{"ipv4Address": "1.2.3.4"}]}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['70'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A/record_setcd720cdc?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A/record_setcd720cdc?api-version=2018-05-01 response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"b69ca693-5e23-4b66-b4f7-99b343af6615","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"}]}}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"76dd80c9-2569-4e19-a7a2-b2ee60a001bc","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"}],"targetResource":{},"provisioningState":"Succeeded"}}'} headers: cache-control: [private] - content-length: ['426'] + content-length: ['478'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:08 GMT'] - etag: [b69ca693-5e23-4b66-b4f7-99b343af6615] + date: ['Mon, 10 Sep 2018 20:01:52 GMT'] + etag: [76dd80c9-2569-4e19-a7a2-b2ee60a001bc] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 201, message: Created} - request: - body: '{"properties": {"ARecords": [{"ipv4Address": "1.2.3.4"}, - {"ipv4Address": "5.6.7.8"}], "TTL": 300}}' + body: '{"properties": {"TTL": 300, "ARecords": [{"ipv4Address": "1.2.3.4"}, {"ipv4Address": + "5.6.7.8"}]}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['98'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PATCH - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A/record_setcd720cdc?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A/record_setcd720cdc?api-version=2018-05-01 response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"c151555d-654c-4ad8-b5f1-9e88ba2b2070","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}]}}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"663925c8-265f-494f-86b1-f111ea5d702c","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}],"targetResource":{},"provisioningState":"Succeeded"}}'} headers: cache-control: [private] - content-length: ['452'] + content-length: ['504'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:10 GMT'] - etag: [c151555d-654c-4ad8-b5f1-9e88ba2b2070] + date: ['Mon, 10 Sep 2018 20:01:54 GMT'] + etag: [663925c8-265f-494f-86b1-f111ea5d702c] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -293,27 +178,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A/record_setcd720cdc?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A/record_setcd720cdc?api-version=2018-05-01 response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"c151555d-654c-4ad8-b5f1-9e88ba2b2070","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}]}}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"663925c8-265f-494f-86b1-f111ea5d702c","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}],"targetResource":{},"provisioningState":"Unknown"}}'} headers: cache-control: [private] - content-length: ['452'] + content-length: ['502'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:10 GMT'] - etag: [c151555d-654c-4ad8-b5f1-9e88ba2b2070] + date: ['Mon, 10 Sep 2018 20:01:55 GMT'] + etag: [663925c8-265f-494f-86b1-f111ea5d702c] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -322,26 +206,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A?api-version=2018-05-01 response: - body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"c151555d-654c-4ad8-b5f1-9e88ba2b2070","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}]}}]}'} + body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"663925c8-265f-494f-86b1-f111ea5d702c","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}],"targetResource":{},"provisioningState":"Unknown"}}]}'} headers: cache-control: [private] - content-length: ['464'] + content-length: ['514'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:11 GMT'] + date: ['Mon, 10 Sep 2018 20:01:56 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-entities-read: ['59999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -350,26 +234,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/recordsets?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/recordsets?api-version=2018-05-01 response: - body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/SOA\/@","name":"@","type":"Microsoft.Network\/dnszones\/SOA","etag":"da66e695-5a23-4e61-ab99-1eff0fd6d689","properties":{"fqdn":"pydns.comcd720cdc.","TTL":3600,"SOARecord":{"email":"azuredns-hostmaster.microsoft.com","expireTime":2419200,"host":"internal.cloudapp.net","minimumTTL":300,"refreshTime":3600,"retryTime":300,"serialNumber":1}}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"c151555d-654c-4ad8-b5f1-9e88ba2b2070","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}]}}]}'} + body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/SOA\/@","name":"@","type":"Microsoft.Network\/dnszones\/SOA","etag":"dce8e169-d096-4c68-b545-6bd1bfa2ed2a","properties":{"fqdn":"pydns.comcd720cdc.","TTL":3600,"SOARecord":{"email":"azuredns-hostmaster.microsoft.com","expireTime":2419200,"host":"internal.cloudapp.net","minimumTTL":300,"refreshTime":3600,"retryTime":300,"serialNumber":1},"targetResource":{},"provisioningState":"Unknown"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_private_zonecd720cdc\/providers\/Microsoft.Network\/dnszones\/pydns.comcd720cdc\/A\/record_setcd720cdc","name":"record_setcd720cdc","type":"Microsoft.Network\/dnszones\/A","etag":"663925c8-265f-494f-86b1-f111ea5d702c","properties":{"fqdn":"record_setcd720cdc.pydns.comcd720cdc.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}],"targetResource":{},"provisioningState":"Unknown"}}]}'} headers: cache-control: [private] - content-length: ['983'] + content-length: ['1083'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:12 GMT'] + date: ['Mon, 10 Sep 2018 20:01:57 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-entities-read: ['59998'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -379,23 +263,22 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A/record_setcd720cdc?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc/A/record_setcd720cdc?api-version=2018-05-01 response: body: {string: ''} headers: cache-control: [private] content-length: ['0'] - date: ['Tue, 06 Mar 2018 00:37:14 GMT'] + date: ['Mon, 10 Sep 2018 20:01:59 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -405,25 +288,24 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsZones/pydns.comcd720cdc?api-version=2018-05-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://api-dogfood.resources.windows-int.net:443/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsOperationStatuses/delzone6365589343549750815ce1a8ac?api-version=2018-03-01-preview'] + azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsOperationStatuses/delzone636722065211212079fc52f562?api-version=2018-05-01'] cache-control: [private] content-length: ['0'] - date: ['Tue, 06 Mar 2018 00:37:16 GMT'] - location: ['https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsOperationResults/delzone6365589343549750815ce1a8ac?api-version=2018-03-01-preview'] + date: ['Mon, 10 Sep 2018 20:02:01 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsOperationResults/delzone636722065211212079fc52f562?api-version=2018-05-01'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 202, message: Accepted} - request: @@ -432,24 +314,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsOperationStatuses/delzone6365589343549750815ce1a8ac?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_private_zonecd720cdc/providers/Microsoft.Network/dnsOperationStatuses/delzone636722065211212079fc52f562?api-version=2018-05-01 response: body: {string: '{"status":"Succeeded"}'} headers: cache-control: [private] content-length: ['22'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:19 GMT'] + date: ['Mon, 10 Sep 2018 20:02:04 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-dns/tests/recordings/test_mgmt_dns.test_public_zone.yaml b/azure-mgmt-dns/tests/recordings/test_mgmt_dns.test_public_zone.yaml index feb66b523dcd..18eb41b809b1 100644 --- a/azure-mgmt-dns/tests/recordings/test_mgmt_dns.test_public_zone.yaml +++ b/azure-mgmt-dns/tests/recordings/test_mgmt_dns.test_public_zone.yaml @@ -7,24 +7,24 @@ interactions: Connection: [keep-alive] Content-Length: ['60'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60?api-version=2018-05-01 response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60","name":"pydns.comc0190c60","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a957-b24ce3b4d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60","name":"pydns.comc0190c60","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-ac28-222a4149d401","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"maxNumberOfRecordsPerRecordSet":null,"nameServers":["ns1-07.azure-dns.com.","ns2-07.azure-dns.net.","ns3-07.azure-dns.org.","ns4-07.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}'} headers: cache-control: [private] - content-length: ['545'] + content-length: ['555'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:26 GMT'] - etag: [00000002-0000-0000-a957-b24ce3b4d301] + date: ['Mon, 10 Sep 2018 20:02:12 GMT'] + etag: [00000002-0000-0000-ac28-222a4149d401] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 201, message: Created} - request: @@ -33,139 +33,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60?api-version=2018-03-01-preview - response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60","name":"pydns.comc0190c60","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a957-b24ce3b4d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}'} - headers: - cache-control: [private] - content-length: ['545'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:26 GMT'] - etag: [00000002-0000-0000-a957-b24ce3b4d301] - server: [Microsoft-IIS/8.5] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones?api-version=2018-03-01-preview - response: - body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60","name":"pydns.comc0190c60","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a957-b24ce3b4d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} - headers: - cache-control: [private] - content-length: ['557'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:27 GMT'] - server: [Microsoft-IIS/8.5] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5998'] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview - response: - body: {string: '{"nextLink":"https:\/\/api-dogfood.resources.windows-int.net:443\/subscriptions\/00000000-0000-0000-0000-000000000000\/providers\/Microsoft.Network\/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrMTI4Mi96b25lcy9vbmVzZGs4MzI2LnBzdGVzdC50ZXN0","value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrandomgroup2\/providers\/Microsoft.Network\/dnszones\/armmove.test","name":"armmove.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-5c2f-45e7b4ccd101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg11366e27-2af5-4dd1-9637-aab4153031c32\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-5aff546f-1003-448a-a4d8-c0b5dd4d8538.com","name":"fetestszonename.test-5aff546f-1003-448a-a4d8-c0b5dd4d8538.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-7f28-2b68bc57d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg1a0a1f60-91f8-4868-867c-935e097256732\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-ea41c932-0a6c-4950-adad-30e199cce97c.com","name":"fetestszonename.test-ea41c932-0a6c-4950-adad-30e199cce97c.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-887b-1f77915bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg1de4d643-137f-45cc-b880-c5f6b81456902\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-e5eaa924-5894-46f5-8465-dd7b546679b9.com","name":"fetestszonename.test-e5eaa924-5894-46f5-8465-dd7b546679b9.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-9f40-e14be957d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg1f97cd1e-c59b-480c-be67-063210865ac8\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-1db20ddf-1b1d-428b-83b9-7f91e84d422b.com","name":"fetestszonename.test-1db20ddf-1b1d-428b-83b9-7f91e84d422b.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-c54c-e6148c58d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg2964cd5a-0c75-43df-aadd-056bf241f6f52\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-572f839a-eb6f-43e0-a1aa-f42f1f517108.com","name":"fetestszonename.test-572f839a-eb6f-43e0-a1aa-f42f1f517108.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-71ce-92aa7058d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg345e33d1-e3fc-45be-8ca3-95c3030a8827\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-9f4b5753-0fd4-4ef9-8582-2fcb903e5da8.com","name":"fetestszonename.test-9f4b5753-0fd4-4ef9-8582-2fcb903e5da8.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-334d-c2272e36d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg350585d6-5c59-4a68-8d00-bf272faae66b2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-eb6ac564-4dce-4200-b768-36af6e2b9aa1.com","name":"fetestszonename.test-eb6ac564-4dce-4200-b768-36af6e2b9aa1.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-c017-1dab3959d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg3a95092d-6084-4715-bed0-6de9880362a72\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-9d1fe88a-7332-4e28-926a-9a4f6a7476c6.com","name":"fetestszonename.test-9d1fe88a-7332-4e28-926a-9a4f6a7476c6.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-cbf4-7af40258d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg451cf024-71be-414a-98ef-e060dcf34e8d\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-8c1592a2-a3cc-4214-b509-13b3becf9daf.com","name":"fetestszonename.test-8c1592a2-a3cc-4214-b509-13b3becf9daf.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-5411-11d957a3d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg45ee12ac-fa5b-4df8-af0d-57a81f489c0a\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-13d2cb2d-14d4-4837-8db8-ee7d477a4f6e.com","name":"fetestszonename.test-13d2cb2d-14d4-4837-8db8-ee7d477a4f6e.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-0e05-88375559d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg4b050ceb-7c51-46a5-aa15-0b24caa54908\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-947cf18a-6db3-4e4c-b61f-5ea05f101cdd.com","name":"fetestszonename.test-947cf18a-6db3-4e4c-b61f-5ea05f101cdd.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-93d8-4904e6f0d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg4d6686fd-d01c-4be4-acb0-e6af2040a475\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-71ba4bc4-39dc-4e28-b4c8-f853f271b32b.com","name":"fetestszonename.test-71ba4bc4-39dc-4e28-b4c8-f853f271b32b.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-e435-d8106922d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg5d95213a-3b09-4f4a-9bd5-b8f7535b3fb8\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-a525ea52-8eb0-4f02-8620-9cc5a127bceb.com","name":"fetestszonename.test-a525ea52-8eb0-4f02-8620-9cc5a127bceb.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-f036-b07cf135d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg652edd88-186f-4432-9286-d7f048a0e7f82\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-fd5796c2-c92f-490b-afbf-e43af19f7214.com","name":"fetestszonename.test-fd5796c2-c92f-490b-afbf-e43af19f7214.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-6b14-26a0145ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg664c931e-caf0-4b67-89e6-9526a64c579f2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-028879a2-373e-4fd9-bdfa-cc101948c492.com","name":"fetestszonename.test-028879a2-373e-4fd9-bdfa-cc101948c492.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-76f9-46bd8158d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg66628ec0-570d-4126-889b-359bbda30731\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-0f1623ab-2571-4723-b057-07aa2e16e0a5.com","name":"fetestszonename.test-0f1623ab-2571-4723-b057-07aa2e16e0a5.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-de04-401d68abd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg69881656-d2f7-49b7-a1b2-2979e8beadb12\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-4b002e4a-61bb-4106-91a4-6ebdee80cde3.com","name":"fetestszonename.test-4b002e4a-61bb-4106-91a4-6ebdee80cde3.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-22f9-5c49ad57d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg6bd7dc7f-beb0-417d-a718-0e9f7835b985\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-2afaa1d7-29eb-419b-93bb-80d8779ffc67.com","name":"fetestszonename.test-2afaa1d7-29eb-419b-93bb-80d8779ffc67.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-d12e-6f828fc9d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg7276389c-6a59-4177-bccd-83ac96ea5ae3\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-3f35ec1e-0264-4dda-9da8-768a2fc4cffc.com","name":"fetestszonename.test-3f35ec1e-0264-4dda-9da8-768a2fc4cffc.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-926f-a5686621d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg74147c6a-238e-43ea-88cd-b43b20ab5713\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-6988c68a-9ade-44d5-af50-cb808bae904d.com","name":"fetestszonename.test-6988c68a-9ade-44d5-af50-cb808bae904d.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-9255-78c02de9d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg7c46cb75-0d01-4b20-ac1a-398c49b55c212\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-6953c7bd-bc77-402f-b6f4-eedb595f8da3.com","name":"fetestszonename.test-6953c7bd-bc77-402f-b6f4-eedb595f8da3.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-df38-b2af6978d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg7c89c527-fafb-436f-bb97-739f7ce3bcfc2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-22a7acf6-a3b8-47e3-bef3-4d71662c0db8.com","name":"fetestszonename.test-22a7acf6-a3b8-47e3-bef3-4d71662c0db8.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-9c9a-ae874959d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg8ac60837-ce43-43e7-805c-e70cce6f83a12\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-df63cdde-e5c3-408d-8d60-55bac7cb24af.com","name":"fetestszonename.test-df63cdde-e5c3-408d-8d60-55bac7cb24af.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-1b60-65e6db57d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg8f707ac9-7b19-46f7-b8da-acda6018f861\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-db418789-c452-4765-a277-e06d969a92b8.com","name":"fetestszonename.test-db418789-c452-4765-a277-e06d969a92b8.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-caab-1330706bd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg935c1881-65b2-4a29-ba07-656e85523d54\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-6d40f8c0-820c-4525-b9ef-92ca33f57a44.com","name":"fetestszonename.test-6d40f8c0-820c-4525-b9ef-92ca33f57a44.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-1a33-1f2fbe33d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverg9e1077b6-a187-4454-913a-dec03c9eaba52\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-b7a172f2-aabe-4ee9-9e4f-d9cbf0a1b203.com","name":"fetestszonename.test-b7a172f2-aabe-4ee9-9e4f-d9cbf0a1b203.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-49f3-80c6a35bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmoverga4a64851-466d-402a-9ca9-6108cb6b4d8d\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-c7a5c0e1-c7b8-4774-98aa-5672301b5886.com","name":"fetestszonename.test-c7a5c0e1-c7b8-4774-98aa-5672301b5886.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f1f7-2744d148d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergbe2e87b4-1d76-429a-860e-6d796e9e340b\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-99a483bd-ad8c-444e-b977-c0951df2aba2.com","name":"fetestszonename.test-99a483bd-ad8c-444e-b977-c0951df2aba2.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-00b1-2bdad9abd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergbf472a78-3508-4863-9a65-96795acfb1e22\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-cc4f4049-2cf0-4200-ae49-10fab5a69170.com","name":"fetestszonename.test-cc4f4049-2cf0-4200-ae49-10fab5a69170.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-ea7d-d0f9eaa7d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergc47a312c-e8d6-4560-9bef-6797c0fa48c6\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-f84850e4-80d9-4888-92fb-827d00b513e2.com","name":"fetestszonename.test-f84850e4-80d9-4888-92fb-827d00b513e2.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cb07-5d5cac6bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergc79de5d0-3a46-42e3-8daf-7dcee973d62a\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-c38794fa-4c7e-4e42-a4df-df2377d3e6d8.com","name":"fetestszonename.test-c38794fa-4c7e-4e42-a4df-df2377d3e6d8.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4326-ddbd256bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergcf339632-52ce-43ca-ad38-e3fe3512aefb\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-cfad6629-0c46-486a-9521-5daa164b75df.com","name":"fetestszonename.test-cfad6629-0c46-486a-9521-5daa164b75df.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-803c-5c881e5ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergcf5472ae-78af-4e4e-8856-a4629c65571e2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-3d0603d6-ba85-4d28-83bb-dd8fae34aed3.com","name":"fetestszonename.test-3d0603d6-ba85-4d28-83bb-dd8fae34aed3.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-1f1d-e93c415bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergecb52982-7c98-4367-a6ed-e2830e11b79d2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-0de38a05-5f28-47cc-8d4d-5a14c1129120.com","name":"fetestszonename.test-0de38a05-5f28-47cc-8d4d-5a14c1129120.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-9b25-eb214257d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergf019a24f-04b9-48c1-aa03-3d3e45383f30\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-311429ec-af68-4567-84d2-098e44a8d780.com","name":"fetestszonename.test-311429ec-af68-4567-84d2-098e44a8d780.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-1349-3fc637c9d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/armrmovergff39196d-2180-4984-b5e8-12246e00de9a2\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-a919309c-2d77-4360-baf8-d470fab01d43.com","name":"fetestszonename.test-a919309c-2d77-4360-baf8-d470fab01d43.com","type":"Microsoft.Network\/dnszones","etag":"00000001-0000-0000-d0e3-3596005ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/commontestgroup\/providers\/Microsoft.Network\/dnszones\/hitesh.test","name":"hitesh.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a431-27edb490d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/dnszones\/providers\/Microsoft.Network\/dnszones\/karthikbulk.com","name":"karthikbulk.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e4d6-bbb8e5b5d101","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":38003,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/dnszones\/providers\/Microsoft.Network\/dnszones\/karthikbulk2.com","name":"karthikbulk2.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-aa47-222eeab5d101","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":10001,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/dnszones\/providers\/Microsoft.Network\/dnszones\/karthiktest.com","name":"karthiktest.com","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-6e4e-118a22b5d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/basicscenarios.azuredns.internal.test","name":"basicscenarios.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3130-70c348c3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":17,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/delegations.azuredns.internal.test","name":"delegations.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d77f-56f72428d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":8,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/foo.com.1","name":"foo.com.1","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a130-a1256405d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/supportedtypes.azuredns.internal.test","name":"supportedtypes.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8cc3-92c62428d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":11,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f007-dd1e2528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup1\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-145c-922b2528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup2\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cc93-b7372528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup3\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b4bb-c2442528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup4\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8eeb-48502528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup5\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1be2-835c2528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup6\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8a62-18692528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup7\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3f6e-13752528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/endtoendtestresourcegroup8\/providers\/Microsoft.Network\/dnszones\/wildcards.azuredns.internal.test","name":"wildcards.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8eda-b0802528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/albertozone.com","name":"albertozone.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-d006-58f3c480d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/fetestszonename.test-1ed41e6d-5a94-415d-9bb0-1dcb7d5dc301.com","name":"fetestszonename.test-1ed41e6d-5a94-415d-9bb0-1dcb7d5dc301.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a58e-db8ebc9ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/ww.rules","name":"ww.rules","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-0fc3-eeeaed62d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/wwa.rules","name":"wwa.rules","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5b33-b520ee62d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.ashx","name":"www.ashx","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-15d8-d1d92a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.asmx","name":"www.asmx","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-efd5-864f2a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.aspq","name":"www.aspq","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-56d9-831f2b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.axd","name":"www.axd","type":"Microsoft.Network\/dnszones","etag":"00000005-0000-0000-bcc5-f4142b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.cshtml","name":"www.cshtml","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4b7c-a01b2b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.rules","name":"www.rules","type":"Microsoft.Network\/dnszones","etag":"00000008-0000-0000-46df-cf84ed62d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.soap","name":"www.soap","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-8118-96102b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.svc","name":"www.svc","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-58fd-0ad32a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.vbhtm","name":"www.vbhtm","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-b34c-92cc2a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.vbhtml","name":"www.vbhtml","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-3cf7-5cc32a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.x","name":"www.x","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-ff2d-55a12a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.xamlx","name":"www.xamlx","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-10cd-daaf2a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.xoml","name":"www.xoml","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-cbd9-aff82a6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www.xshtml","name":"www.xshtml","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-e293-61182b6dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www2.rules","name":"www2.rules","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-6482-2ec84170d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www3.rules","name":"www3.rules","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-3cd6-d6ca4270d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www4.rules","name":"www4.rules","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f65a-85464370d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www5.rules","name":"www5.rules","type":"Microsoft.Network\/dnszones","etag":"00000007-0000-0000-dcae-46d74370d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/frontendtestresourcegroupnamenew\/providers\/Microsoft.Network\/dnszones\/www6.rules1","name":"www6.rules1","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-effe-85c73a71d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/hydratestdnsrg2296\/providers\/Microsoft.Network\/dnszones\/hydratest.dnszone.com2982","name":"hydratest.dnszone.com2982","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-8bf1-68346f44d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/hydratestdnsrg6951\/providers\/Microsoft.Network\/dnszones\/hydratest.dnszone.com1418","name":"hydratest.dnszone.com1418","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4569-d7b1e86ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-cloudapptesting\/providers\/Microsoft.Network\/dnszones\/jwesth-cloudapp.com","name":"jwesth-cloudapp.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1b2a-01758cc2d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":7,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-cloudapptesting\/providers\/Microsoft.Network\/dnszones\/jwesth-cloudapp1.com","name":"jwesth-cloudapp1.com","type":"Microsoft.Network\/dnszones","etag":"0000001c-0000-0000-f128-a14cdeded101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-rg\/providers\/Microsoft.Network\/dnszones\/169.181.185.in-addr.arpa","name":"169.181.185.in-addr.arpa","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3734-04a70a66d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-rg\/providers\/Microsoft.Network\/dnszones\/jwesth-test1.com","name":"jwesth-test1.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0134-e43384bbd101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth-rg\/providers\/Microsoft.Network\/dnszones\/jwesth.com","name":"jwesth.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f8ae-daeaea3ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130a\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a4a4-a9695b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130b\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-f3c9-ac795b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130c\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-e8ff-d2835b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130d\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4943-808f5b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/jwesth1130e\/providers\/Microsoft.Network\/dnszones\/westhead.site","name":"westhead.site","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-cd92-64995b6ad301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/karthikpvtzones\/providers\/Microsoft.Network\/dnszones\/karthikpvt1.com","name":"karthikpvt1.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-c968-711cd333d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/karthikpvtzones\/providers\/Microsoft.Network\/virtualNetworks\/karthikvnet2"}],"zoneType":"Private"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/karthikpvtzones\/providers\/Microsoft.Network\/dnszones\/karthikpvt2.com","name":"karthikpvt2.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-63a7-a0a3f533d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":null,"numberOfRecordSets":1,"registrationVirtualNetworks":[],"resolutionVirtualNetworks":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/karthikpvtzones\/providers\/Microsoft.Network\/virtualNetworks\/karthikvnet2"}],"zoneType":"Private"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/limitstestrg\/providers\/Microsoft.Network\/dnszones\/expect20.1.com","name":"expect20.1.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-34c8-abfc977ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/mikebugbash\/providers\/Microsoft.Network\/dnszones\/mitest.com","name":"mitest.com","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4ec5-f6e23a36d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1048\/providers\/Microsoft.Network\/dnszones\/onesdk8502.pstest.test","name":"onesdk8502.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-aded-5045bf2ad201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1060\/providers\/Microsoft.Network\/dnszones\/onesdk2287.pstest.test","name":"onesdk2287.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-8f2b-2782ff52d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1064\/providers\/Microsoft.Network\/dnszones\/onesdk4225.pstest.test","name":"onesdk4225.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cd3f-83d8711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1096\/providers\/Microsoft.Network\/dnszones\/onesdk6719.pstest.test","name":"onesdk6719.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1ead-eb9db81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1247\/providers\/Microsoft.Network\/dnszones\/onesdk2090.pstest.test","name":"onesdk2090.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e4b0-2d82b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1281\/providers\/Microsoft.Network\/dnszones\/onesdk9190.pstest.test","name":"onesdk9190.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cdb0-3151f51fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1282\/providers\/Microsoft.Network\/dnszones\/onesdk8326.pstest.test","name":"onesdk8326.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-fc5a-0488fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} - headers: - cache-control: [private] - content-length: ['57520'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:30 GMT'] - server: [Microsoft-IIS/8.5] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5997'] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] - accept-language: [en-US] - method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrMTI4Mi96b25lcy9vbmVzZGs4MzI2LnBzdGVzdC50ZXN0 - response: - body: {string: '{"nextLink":"https:\/\/api-dogfood.resources.windows-int.net:443\/subscriptions\/00000000-0000-0000-0000-000000000000\/providers\/Microsoft.Network\/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrNDAxMS96b25lcy9vbmVzZGs0MzQ3LnBzdGVzdC50ZXN0","value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk129\/providers\/Microsoft.Network\/dnszones\/onesdk989.pstest.test","name":"onesdk989.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3974-12df711fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1293\/providers\/Microsoft.Network\/dnszones\/onesdk1432.pstest.test","name":"onesdk1432.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-db36-0bbe474ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1348\/providers\/Microsoft.Network\/dnszones\/onesdk5170.pstest.test","name":"onesdk5170.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-39fc-657f611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1357\/providers\/Microsoft.Network\/dnszones\/onesdk1913.pstest.test","name":"onesdk1913.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7cd3-4ba4f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1363\/providers\/Microsoft.Network\/dnszones\/onesdk8210.pstest.test","name":"onesdk8210.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-221d-b4940a26d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1384\/providers\/Microsoft.Network\/dnszones\/onesdk6128.pstest.test","name":"onesdk6128.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-f69b-f78b6346d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1387\/providers\/Microsoft.Network\/dnszones\/onesdk3798.pstest.test","name":"onesdk3798.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-219f-67f28849d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1390\/providers\/Microsoft.Network\/dnszones\/onesdk7618.pstest.test","name":"onesdk7618.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-2b9b-604df12dd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1459\/providers\/Microsoft.Network\/dnszones\/onesdk4021.pstest.test","name":"onesdk4021.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-18f9-8b8ec853d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1481\/providers\/Microsoft.Network\/dnszones\/onesdk5772.pstest.test","name":"onesdk5772.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4625-1c97721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1493\/providers\/Microsoft.Network\/dnszones\/onesdk1429.pstest.test","name":"onesdk1429.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-b63d-0e021422d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1542\/providers\/Microsoft.Network\/dnszones\/onesdk7729.pstest.test","name":"onesdk7729.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f379-f423f81fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1562\/providers\/Microsoft.Network\/dnszones\/onesdk2146.pstest.test","name":"onesdk2146.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a7d8-7a690f39d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1575\/providers\/Microsoft.Network\/dnszones\/onesdk6718.pstest.test","name":"onesdk6718.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bfda-cfec711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1600\/providers\/Microsoft.Network\/dnszones\/onesdk8063.pstest.test","name":"onesdk8063.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2a9f-cd19062ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1606\/providers\/Microsoft.Network\/dnszones\/onesdk7391.pstest.test","name":"onesdk7391.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-63b9-87ae711fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk162\/providers\/Microsoft.Network\/dnszones\/onesdk1843.pstest.test","name":"onesdk1843.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1675-ab60fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1621\/providers\/Microsoft.Network\/dnszones\/onesdk2482.pstest.test","name":"onesdk2482.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3299-aa02f91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1622\/providers\/Microsoft.Network\/dnszones\/onesdk1489.pstest.test","name":"onesdk1489.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-66f6-7b347337d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1624\/providers\/Microsoft.Network\/dnszones\/onesdk7204.pstest.test","name":"onesdk7204.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e360-5427d839d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1675\/providers\/Microsoft.Network\/dnszones\/onesdk7311.pstest.test","name":"onesdk7311.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-192e-7766f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1703\/providers\/Microsoft.Network\/dnszones\/onesdk7165.pstest.test","name":"onesdk7165.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ad1f-1074721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1727\/providers\/Microsoft.Network\/dnszones\/onesdk9804.pstest.test","name":"onesdk9804.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7742-7dbfee1fd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1729\/providers\/Microsoft.Network\/dnszones\/onesdk7610.pstest.test","name":"onesdk7610.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-29a5-a9263447d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1734\/providers\/Microsoft.Network\/dnszones\/onesdk8881.pstest.test","name":"onesdk8881.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bcd6-ba11f91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1757\/providers\/Microsoft.Network\/dnszones\/onesdk3391.pstest.test","name":"onesdk3391.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e4fd-2496f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk178\/providers\/Microsoft.Network\/dnszones\/onesdk90.pstest.test","name":"onesdk90.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-9aea-3f153f25d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1840\/providers\/Microsoft.Network\/dnszones\/onesdk8954.pstest.test","name":"onesdk8954.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-e73f-dba0e940d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1896\/providers\/Microsoft.Network\/dnszones\/onesdk2653.pstest.test","name":"onesdk2653.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9aee-3e3a0f4fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1904\/providers\/Microsoft.Network\/dnszones\/onesdk2093.pstest.test","name":"onesdk2093.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1986-77c0b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1918\/providers\/Microsoft.Network\/dnszones\/onesdk6500.pstest.test","name":"onesdk6500.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f0da-b94d721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk1987\/providers\/Microsoft.Network\/dnszones\/onesdk2408.pstest.test","name":"onesdk2408.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f5b1-94caee23d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2018\/providers\/Microsoft.Network\/dnszones\/onesdk6598.pstest.test","name":"onesdk6598.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-17d6-a1466623d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2090\/providers\/Microsoft.Network\/dnszones\/onesdk5299.pstest.test","name":"onesdk5299.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-af69-c2a7711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2090\/providers\/Microsoft.Network\/dnszones\/onesdk7065.pstest.test","name":"onesdk7065.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7c49-5b256623d201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2090\/providers\/Microsoft.Network\/dnszones\/onesdk7065.pstest.testa","name":"onesdk7065.pstest.testa","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ad8c-d0256623d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2172\/providers\/Microsoft.Network\/dnszones\/onesdk496.pstest.test","name":"onesdk496.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5f17-b3c6b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2304\/providers\/Microsoft.Network\/dnszones\/onesdk7239.pstest.test","name":"onesdk7239.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-113e-68072040d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2308\/providers\/Microsoft.Network\/dnszones\/onesdk1393.pstest.test","name":"onesdk1393.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-39b9-9de9b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2310\/providers\/Microsoft.Network\/dnszones\/onesdk2284.pstest.test","name":"onesdk2284.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-39f8-b070b541d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2333\/providers\/Microsoft.Network\/dnszones\/onesdk1256.pstest.test","name":"onesdk1256.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2e7e-de17fe3cd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2380\/providers\/Microsoft.Network\/dnszones\/onesdk3168.pstest.test","name":"onesdk3168.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-88b4-d461c453d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2383\/providers\/Microsoft.Network\/dnszones\/onesdk2901.pstest.test","name":"onesdk2901.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-342f-78b3611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2398\/providers\/Microsoft.Network\/dnszones\/onesdk8782.pstest.test","name":"onesdk8782.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-38ed-87f2062ed201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2407\/providers\/Microsoft.Network\/dnszones\/onesdk7250.pstest.test","name":"onesdk7250.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b310-a66e611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2421\/providers\/Microsoft.Network\/dnszones\/onesdk6907.pstest.test","name":"onesdk6907.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d9d8-ca16721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2503\/providers\/Microsoft.Network\/dnszones\/onesdk640.pstest.test","name":"onesdk640.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7a55-f581721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2503\/providers\/Microsoft.Network\/dnszones\/onesdk9998.pstest.test","name":"onesdk9998.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-550b-12bc711fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2530\/providers\/Microsoft.Network\/dnszones\/onesdk5712.pstest.test","name":"onesdk5712.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-eb48-cd0cfa1fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2530\/providers\/Microsoft.Network\/dnszones\/onesdk7614.pstest.test","name":"onesdk7614.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1faf-3101fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2556\/providers\/Microsoft.Network\/dnszones\/onesdk7928.pstest.test","name":"onesdk7928.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d950-d5e5711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2563\/providers\/Microsoft.Network\/dnszones\/onesdk4397.pstest.test","name":"onesdk4397.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8b49-7420fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2573\/providers\/Microsoft.Network\/dnszones\/onesdk7056.pstest.test","name":"onesdk7056.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-43a9-215b1c22d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2585\/providers\/Microsoft.Network\/dnszones\/onesdk2458.pstest.test","name":"onesdk2458.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7bfe-4344fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk264\/providers\/Microsoft.Network\/dnszones\/onesdk2107.pstest.test","name":"onesdk2107.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6bb1-2861404ed201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2644\/providers\/Microsoft.Network\/dnszones\/onesdk2865.pstest.test","name":"onesdk2865.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-d03b-00e8873ed201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2675\/providers\/Microsoft.Network\/dnszones\/onesdk4444.pstest.test","name":"onesdk4444.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-2ea6-dc528d2ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2715\/providers\/Microsoft.Network\/dnszones\/onesdk3768.pstest.test","name":"onesdk3768.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0f1c-2b7def1fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2743\/providers\/Microsoft.Network\/dnszones\/onesdk4.pstest.test","name":"onesdk4.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4c8f-60fa711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2745\/providers\/Microsoft.Network\/dnszones\/onesdk828.pstest.test","name":"onesdk828.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-31db-1c44b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2807\/providers\/Microsoft.Network\/dnszones\/onesdk2558.pstest.test","name":"onesdk2558.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0255-15d3fd1fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2823\/providers\/Microsoft.Network\/dnszones\/onesdk2112.pstest.test","name":"onesdk2112.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2e0d-2a26f91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2835\/providers\/Microsoft.Network\/dnszones\/onesdk8180.pstest.test","name":"onesdk8180.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-297f-3f36fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2881\/providers\/Microsoft.Network\/dnszones\/onesdk8706.pstest.test","name":"onesdk8706.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ec87-e7f8fc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2923\/providers\/Microsoft.Network\/dnszones\/onesdk8493.pstest.test","name":"onesdk8493.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-066c-41fbf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2942\/providers\/Microsoft.Network\/dnszones\/onesdk2839.pstest.test","name":"onesdk2839.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-89cd-f76f512ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk2963\/providers\/Microsoft.Network\/dnszones\/onesdk4380.pstest.test","name":"onesdk4380.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7fab-a6affc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3016\/providers\/Microsoft.Network\/dnszones\/onesdk5815.pstest.test","name":"onesdk5815.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-75ac-a5218a4fd301","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3052\/providers\/Microsoft.Network\/dnszones\/onesdk6450.pstest.test","name":"onesdk6450.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-dfc9-7c482f29d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3077\/providers\/Microsoft.Network\/dnszones\/onesdk8057.pstest.test","name":"onesdk8057.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7330-6d80fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3082\/providers\/Microsoft.Network\/dnszones\/onesdk8403.pstest.test","name":"onesdk8403.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-754e-2e1ff91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3085\/providers\/Microsoft.Network\/dnszones\/onesdk8393.pstest.test","name":"onesdk8393.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-da3a-2e2df91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk315\/providers\/Microsoft.Network\/dnszones\/onesdk3996.pstest.test","name":"onesdk3996.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d50b-4608721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3157\/providers\/Microsoft.Network\/dnszones\/onesdk2650.pstest.test","name":"onesdk2650.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f76c-aa52d739d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3172\/providers\/Microsoft.Network\/dnszones\/onesdk379.pstest.test","name":"onesdk379.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6a8b-0297b91fd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3192\/providers\/Microsoft.Network\/dnszones\/onesdk8717.pstest.test","name":"onesdk8717.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-15ae-8f21b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3306\/providers\/Microsoft.Network\/dnszones\/onesdk2738.pstest.test","name":"onesdk2738.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5007-cc5b611fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk335\/providers\/Microsoft.Network\/dnszones\/onesdk3359.pstest.test","name":"onesdk3359.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-372f-00a5721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3390\/providers\/Microsoft.Network\/dnszones\/onesdk5878.pstest.test","name":"onesdk5878.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5e2e-ae7dfb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3478\/providers\/Microsoft.Network\/dnszones\/onesdk3730.pstest.test","name":"onesdk3730.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-235f-d463d126d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3497\/providers\/Microsoft.Network\/dnszones\/onesdk5097.pstest.test","name":"onesdk5097.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-dadd-c0bfb81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3557\/providers\/Microsoft.Network\/dnszones\/onesdk8390.pstest.test","name":"onesdk8390.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a228-ad9a7c4dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3600\/providers\/Microsoft.Network\/dnszones\/onesdk2599.pstest.test","name":"onesdk2599.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-74a0-5ec1c648d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3626\/providers\/Microsoft.Network\/dnszones\/onesdk9818.pstest.test","name":"onesdk9818.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9e0c-f6d4fc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3668\/providers\/Microsoft.Network\/dnszones\/onesdk3479.pstest.test","name":"onesdk3479.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3c4a-9bd1711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3711\/providers\/Microsoft.Network\/dnszones\/onesdk8697.pstest.test","name":"onesdk8697.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-66ac-ddb3ad41d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3752\/providers\/Microsoft.Network\/dnszones\/onesdk5592.pstest.test","name":"onesdk5592.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bfc2-9751b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3791\/providers\/Microsoft.Network\/dnszones\/onesdk4990.pstest.test","name":"onesdk4990.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-320e-0706781fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3794\/providers\/Microsoft.Network\/dnszones\/onesdk1760.pstest.test","name":"onesdk1760.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9ea5-4b7c693bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3869\/providers\/Microsoft.Network\/dnszones\/onesdk7008.pstest.test","name":"onesdk7008.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a062-24088851d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3872\/providers\/Microsoft.Network\/dnszones\/onesdk9743.pstest.test","name":"onesdk9743.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-511e-6589b91fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3891\/providers\/Microsoft.Network\/dnszones\/onesdk8901.pstest.test","name":"onesdk8901.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6ef1-4eca611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3943\/providers\/Microsoft.Network\/dnszones\/onesdk7060.pstest.test","name":"onesdk7060.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6e4d-a628b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3946\/providers\/Microsoft.Network\/dnszones\/onesdk2283.pstest.test","name":"onesdk2283.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3283-64f5c548d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3956\/providers\/Microsoft.Network\/dnszones\/onesdk9718.pstest.test","name":"onesdk9718.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-fb2e-2f2aa150d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3957\/providers\/Microsoft.Network\/dnszones\/onesdk1310.pstest.test","name":"onesdk1310.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-7057-b4cb5a55d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3963\/providers\/Microsoft.Network\/dnszones\/onesdk2916.pstest.test","name":"onesdk2916.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-055d-01af6c2cd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk3997\/providers\/Microsoft.Network\/dnszones\/onesdk3527.pstest.test","name":"onesdk3527.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7a8e-37c5fd1fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk401\/providers\/Microsoft.Network\/dnszones\/onesdk2615.pstest.test","name":"onesdk2615.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b3c2-2455eb4bd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4011\/providers\/Microsoft.Network\/dnszones\/onesdk4347.pstest.test","name":"onesdk4347.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5775-c6c10125d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}}]}'} - headers: - cache-control: [private] - content-length: ['53703'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:31 GMT'] - server: [Microsoft-IIS/8.5] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-aspnet-version: [4.0.30319] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5997'] - x-powered-by: [ASP.NET] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrNDAxMS96b25lcy9vbmVzZGs0MzQ3LnBzdGVzdC50ZXN0 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60?api-version=2018-05-01 response: - body: {string: '{"nextLink":"https:\/\/api-dogfood.resources.windows-int.net:443\/subscriptions\/00000000-0000-0000-0000-000000000000\/providers\/Microsoft.Network\/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrNzA4OC96b25lcy9vbmVzZGs2NTYwLnBzdGVzdC50ZXN0","value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4038\/providers\/Microsoft.Network\/dnszones\/onesdk9742.pstest.test","name":"onesdk9742.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-116e-dd81f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4042\/providers\/Microsoft.Network\/dnszones\/onesdk6110.pstest.test","name":"onesdk6110.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3099-a3e3a234d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4050\/providers\/Microsoft.Network\/dnszones\/onesdk2653.pstest.test","name":"onesdk2653.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3d85-5731752cd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4076\/providers\/Microsoft.Network\/dnszones\/onesdk6687.pstest.test","name":"onesdk6687.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-687b-8e0afb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4081\/providers\/Microsoft.Network\/dnszones\/onesdk2629.pstest.test","name":"onesdk2629.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3531-875d721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4129\/providers\/Microsoft.Network\/dnszones\/onesdk5232.pstest.test","name":"onesdk5232.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3082-d9fd584ad201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4161\/providers\/Microsoft.Network\/dnszones\/onesdk3953.pstest.test","name":"onesdk3953.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-560e-1828fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4179\/providers\/Microsoft.Network\/dnszones\/onesdk6739.pstest.test","name":"onesdk6739.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-783a-1e50fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4201\/providers\/Microsoft.Network\/dnszones\/onesdk1912.pstest.test","name":"onesdk1912.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-91c7-be08601fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4202\/providers\/Microsoft.Network\/dnszones\/onesdk8794.pstest.test","name":"onesdk8794.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-78df-63edf529d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4214\/providers\/Microsoft.Network\/dnszones\/onesdk8488.pstest.test","name":"onesdk8488.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7a6e-07ff0d39d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4234\/providers\/Microsoft.Network\/dnszones\/onesdk7584.pstest.test","name":"onesdk7584.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-67f3-ac7e2629d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4263\/providers\/Microsoft.Network\/dnszones\/onesdk5331.pstest.test","name":"onesdk5331.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7e2d-0b2fc82ed201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4302\/providers\/Microsoft.Network\/dnszones\/onesdk4345.pstest.test","name":"onesdk4345.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7a69-f469fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4348\/providers\/Microsoft.Network\/dnszones\/onesdk5365.pstest.test","name":"onesdk5365.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bee0-caf1fc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4363\/providers\/Microsoft.Network\/dnszones\/onesdk1745.pstest.test","name":"onesdk1745.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bb7f-8f30fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4371\/providers\/Microsoft.Network\/dnszones\/onesdk3277.pstest.test","name":"onesdk3277.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c0f7-10b9b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk438\/providers\/Microsoft.Network\/dnszones\/onesdk5801.pstest.test","name":"onesdk5801.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5ff5-1397fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4412\/providers\/Microsoft.Network\/dnszones\/onesdk3735.pstest.test","name":"onesdk3735.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5279-2d2e3447d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4449\/providers\/Microsoft.Network\/dnszones\/onesdk3359.pstest.test","name":"onesdk3359.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7b07-b5d6611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4462\/providers\/Microsoft.Network\/dnszones\/onesdk8278.pstest.test","name":"onesdk8278.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8858-f99a1b4bd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4474\/providers\/Microsoft.Network\/dnszones\/onesdk5545.pstest.test","name":"onesdk5545.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-daee-9517fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4553\/providers\/Microsoft.Network\/dnszones\/onesdk7120.pstest.test","name":"onesdk7120.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a7b6-ffc3fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4573\/providers\/Microsoft.Network\/dnszones\/onesdk785.pstest.test","name":"onesdk785.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ce8b-8b64721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4613\/providers\/Microsoft.Network\/dnszones\/onesdk8420.pstest.test","name":"onesdk8420.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-78c9-efd7fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk466\/providers\/Microsoft.Network\/dnszones\/onesdk8888.pstest.test","name":"onesdk8888.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-c6e0-39d9502ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4668\/providers\/Microsoft.Network\/dnszones\/onesdk1495.pstest.test","name":"onesdk1495.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c531-e005e422d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk471\/providers\/Microsoft.Network\/dnszones\/onesdk8865.pstest.test","name":"onesdk8865.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-550f-fadbc43dd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4743\/providers\/Microsoft.Network\/dnszones\/onesdk1635.pstest.test","name":"onesdk1635.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-47bd-29c49a34d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4762\/providers\/Microsoft.Network\/dnszones\/onesdk1821.pstest.test","name":"onesdk1821.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5186-0a98d14fd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4834\/providers\/Microsoft.Network\/dnszones\/onesdk9711.pstest.test","name":"onesdk9711.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0059-1d52b34cd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk488\/providers\/Microsoft.Network\/dnszones\/onesdk8545.pstest.test","name":"onesdk8545.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f58e-a75bfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4891\/providers\/Microsoft.Network\/dnszones\/onesdk513.pstest.test","name":"onesdk513.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-efee-a9bbfa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4936\/providers\/Microsoft.Network\/dnszones\/onesdk2772.pstest.test","name":"onesdk2772.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d091-83740e4fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk4958\/providers\/Microsoft.Network\/dnszones\/onesdk7482.pstest.test","name":"onesdk7482.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e139-f513a03ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5061\/providers\/Microsoft.Network\/dnszones\/onesdk7650.pstest.test","name":"onesdk7650.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ce49-6a88f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5155\/providers\/Microsoft.Network\/dnszones\/onesdk97.pstest.test","name":"onesdk97.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d36f-3d97b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5202\/providers\/Microsoft.Network\/dnszones\/onesdk2445.pstest.test","name":"onesdk2445.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-355b-80f3711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5216\/providers\/Microsoft.Network\/dnszones\/onesdk5449.pstest.test","name":"onesdk5449.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c515-315cd126d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5228\/providers\/Microsoft.Network\/dnszones\/onesdk7389.pstest.test","name":"onesdk7389.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d957-ade1f71fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5231\/providers\/Microsoft.Network\/dnszones\/onesdk7994.pstest.test","name":"onesdk7994.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2642-d6f4af25d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5236\/providers\/Microsoft.Network\/dnszones\/onesdk3237.pstest.test","name":"onesdk3237.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d3af-963ef81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5267\/providers\/Microsoft.Network\/dnszones\/onesdk748.pstest.test","name":"onesdk748.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-0320-77c76523d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5321\/providers\/Microsoft.Network\/dnszones\/onesdk9913.pstest.test","name":"onesdk9913.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8b17-e448fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5375\/providers\/Microsoft.Network\/dnszones\/onesdk6291.pstest.test","name":"onesdk6291.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3ca1-2d5bbf53d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5589\/providers\/Microsoft.Network\/dnszones\/onesdk548.pstest.test","name":"onesdk548.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-60c6-af58fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5598\/providers\/Microsoft.Network\/dnszones\/onesdk2400.pstest.test","name":"onesdk2400.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b9df-ae1aaa36d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk560\/providers\/Microsoft.Network\/dnszones\/onesdk4022.pstest.test","name":"onesdk4022.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7b2f-a130f924d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5605\/providers\/Microsoft.Network\/dnszones\/onesdk6812.pstest.test","name":"onesdk6812.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5e70-7f8f3e38d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5613\/providers\/Microsoft.Network\/dnszones\/onesdk4887.pstest.test","name":"onesdk4887.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9ea3-46abf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk563\/providers\/Microsoft.Network\/dnszones\/onesdk5622.pstest.test","name":"onesdk5622.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-35b6-0f3dfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5633\/providers\/Microsoft.Network\/dnszones\/onesdk957.pstest.test","name":"onesdk957.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9794-b7bb721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5662\/providers\/Microsoft.Network\/dnszones\/onesdk5551.pstest.test","name":"onesdk5551.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-ea04-868ff53cd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5717\/providers\/Microsoft.Network\/dnszones\/onesdk8803.pstest.test","name":"onesdk8803.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-3693-7ac0e035d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5741\/providers\/Microsoft.Network\/dnszones\/onesdk4971.pstest.test","name":"onesdk4971.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-16d7-fe67fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5849\/providers\/Microsoft.Network\/dnszones\/onesdk6028.pstest.test","name":"onesdk6028.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9703-59baf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5891\/providers\/Microsoft.Network\/dnszones\/onesdk1490.pstest.test","name":"onesdk1490.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a513-4c577d4dd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5986\/providers\/Microsoft.Network\/dnszones\/onesdk1426.pstest.test","name":"onesdk1426.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3620-6eb4721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk5986\/providers\/Microsoft.Network\/dnszones\/onesdk75.pstest.test","name":"onesdk75.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5d72-53dafd1fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6001\/providers\/Microsoft.Network\/dnszones\/onesdk7554.pstest.test","name":"onesdk7554.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5e36-2123aa36d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk602\/providers\/Microsoft.Network\/dnszones\/onesdk3442.pstest.test","name":"onesdk3442.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-05d9-d16cea40d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6031\/providers\/Microsoft.Network\/dnszones\/onesdk4501.pstest.test","name":"onesdk4501.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-1d39-ce5da623d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6043\/providers\/Microsoft.Network\/dnszones\/onesdk7277.pstest.test","name":"onesdk7277.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b920-1869611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6125\/providers\/Microsoft.Network\/dnszones\/onesdk8691.pstest.test","name":"onesdk8691.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-16ad-47b51735d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6142\/providers\/Microsoft.Network\/dnszones\/onesdk3174.pstest.test","name":"onesdk3174.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-402f-2bd0611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6180\/providers\/Microsoft.Network\/dnszones\/onesdk1410.pstest.test","name":"onesdk1410.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-8076-e7087252d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6194\/providers\/Microsoft.Network\/dnszones\/onesdk2606.pstest.test","name":"onesdk2606.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8036-7ff3f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6218\/providers\/Microsoft.Network\/dnszones\/onesdk182.pstest.test","name":"onesdk182.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e269-5f00fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6230\/providers\/Microsoft.Network\/dnszones\/onesdk794.pstest.test","name":"onesdk794.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-eb5c-688ffa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6238\/providers\/Microsoft.Network\/dnszones\/onesdk1437.pstest.test","name":"onesdk1437.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c4ec-c2cafa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6270\/providers\/Microsoft.Network\/dnszones\/onesdk5966.pstest.test","name":"onesdk5966.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5adc-c19fa725d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6293\/providers\/Microsoft.Network\/dnszones\/onesdk8153.pstest.test","name":"onesdk8153.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-df7c-e132584ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk63\/providers\/Microsoft.Network\/dnszones\/onesdk9277.pstest.test","name":"onesdk9277.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-492a-773cbf2ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6327\/providers\/Microsoft.Network\/dnszones\/onesdk7018.pstest.test","name":"onesdk7018.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-837f-71ddf547d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6327\/providers\/Microsoft.Network\/dnszones\/onesdk9735.pstest.test","name":"onesdk9735.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b606-337b721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6360\/providers\/Microsoft.Network\/dnszones\/onesdk7945.pstest.test","name":"onesdk7945.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6d8c-0a0af91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6364\/providers\/Microsoft.Network\/dnszones\/onesdk9096.pstest.test","name":"onesdk9096.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e729-cdf0b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6456\/providers\/Microsoft.Network\/dnszones\/onesdk5828.pstest.test","name":"onesdk5828.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5187-58e4f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6478\/providers\/Microsoft.Network\/dnszones\/onesdk1379.pstest.test","name":"onesdk1379.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-2b8e-6425062ed201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6572\/providers\/Microsoft.Network\/dnszones\/onesdk6230.pstest.test","name":"onesdk6230.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-68e8-4f34f91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6588\/providers\/Microsoft.Network\/dnszones\/onesdk1156.pstest.test","name":"onesdk1156.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-765b-82c7302ad201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6593\/providers\/Microsoft.Network\/dnszones\/onesdk5086.pstest.test","name":"onesdk5086.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-c920-1caa9a27d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6606\/providers\/Microsoft.Network\/dnszones\/onesdk9026.pstest.test","name":"onesdk9026.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-03d3-7bc3711fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6610\/providers\/Microsoft.Network\/dnszones\/onesdk6999.pstest.test","name":"onesdk6999.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ad57-12c53f2dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6616\/providers\/Microsoft.Network\/dnszones\/onesdk3188.pstest.test","name":"onesdk3188.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5cfc-0989721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6626\/providers\/Microsoft.Network\/dnszones\/onesdk2901.pstest.test","name":"onesdk2901.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-26f8-16f3fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6674\/providers\/Microsoft.Network\/dnszones\/onesdk7395.pstest.test","name":"onesdk7395.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2a8e-dda2ef23d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6713\/providers\/Microsoft.Network\/dnszones\/onesdk6982.pstest.test","name":"onesdk6982.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ac62-ac6eae23d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6721\/providers\/Microsoft.Network\/dnszones\/onesdk9507.pstest.test","name":"onesdk9507.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-b55f-a3ad323cd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6749\/providers\/Microsoft.Network\/dnszones\/onesdk201.pstest.test","name":"onesdk201.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-eb32-dfa19a27d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6784\/providers\/Microsoft.Network\/dnszones\/onesdk3572.pstest.test","name":"onesdk3572.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9a21-418dfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6793\/providers\/Microsoft.Network\/dnszones\/onesdk5306.pstest.test","name":"onesdk5306.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-015a-23f5f529d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6848\/providers\/Microsoft.Network\/dnszones\/onesdk6703.pstest.test","name":"onesdk6703.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-35e9-4ea3c53dd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6880\/providers\/Microsoft.Network\/dnszones\/onesdk2778.pstest.test","name":"onesdk2778.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-752e-1cd4c43dd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6898\/providers\/Microsoft.Network\/dnszones\/onesdk5795.pstest.test","name":"onesdk5795.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8ce2-6c62fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6906\/providers\/Microsoft.Network\/dnszones\/onesdk1794.pstest.test","name":"onesdk1794.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cbce-d7b3fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk6917\/providers\/Microsoft.Network\/dnszones\/onesdk8494.pstest.test","name":"onesdk8494.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-c3eb-f5d2ee23d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7040\/providers\/Microsoft.Network\/dnszones\/onesdk6420.pstest.test","name":"onesdk6420.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-f329-8dfdc548d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7065\/providers\/Microsoft.Network\/dnszones\/onesdk7252.pstest.test","name":"onesdk7252.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f81d-071b3e52d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7088\/providers\/Microsoft.Network\/dnszones\/onesdk6560.pstest.test","name":"onesdk6560.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ee5b-e561da4fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}}]}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60","name":"pydns.comc0190c60","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-ac28-222a4149d401","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"maxNumberOfRecordsPerRecordSet":null,"nameServers":["ns1-07.azure-dns.com.","ns2-07.azure-dns.net.","ns3-07.azure-dns.org.","ns4-07.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}'} headers: cache-control: [private] - content-length: ['53872'] + content-length: ['555'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:33 GMT'] + date: ['Mon, 10 Sep 2018 20:02:13 GMT'] + etag: [00000002-0000-0000-ac28-222a4149d401] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5998'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -174,26 +61,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrNzA4OC96b25lcy9vbmVzZGs2NTYwLnBzdGVzdC50ZXN0 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones?api-version=2018-05-01 response: - body: {string: '{"nextLink":"https:\/\/api-dogfood.resources.windows-int.net:443\/subscriptions\/00000000-0000-0000-0000-000000000000\/providers\/Microsoft.Network\/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrOTU3L3pvbmVzL29uZXNkazQzOC5wc3Rlc3QudGVzdA==","value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7119\/providers\/Microsoft.Network\/dnszones\/onesdk551.pstest.test","name":"onesdk551.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-10cf-30070e39d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7125\/providers\/Microsoft.Network\/dnszones\/onesdk8217.pstest.test","name":"onesdk8217.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ea00-444df81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7136\/providers\/Microsoft.Network\/dnszones\/onesdk480.pstest.test","name":"onesdk480.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-b1af-fa0e2040d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7140\/providers\/Microsoft.Network\/dnszones\/onesdk6605.pstest.test","name":"onesdk6605.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d5e1-5d0e2156d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7176\/providers\/Microsoft.Network\/dnszones\/onesdk9349.pstest.test","name":"onesdk9349.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bb71-6f98e940d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7242\/providers\/Microsoft.Network\/dnszones\/onesdk4616.pstest.test","name":"onesdk4616.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e0eb-890cf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7332\/providers\/Microsoft.Network\/dnszones\/onesdk3587.pstest.test","name":"onesdk3587.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-fe40-dd818b2ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7337\/providers\/Microsoft.Network\/dnszones\/onesdk5635.pstest.test","name":"onesdk5635.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-22bb-86338f54d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7344\/providers\/Microsoft.Network\/dnszones\/onesdk6001.pstest.test","name":"onesdk6001.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-0395-d5c2f12dd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7355\/providers\/Microsoft.Network\/dnszones\/onesdk2943.pstest.test","name":"onesdk2943.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-3842-9679333cd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7356\/providers\/Microsoft.Network\/dnszones\/onesdk4147.pstest.test","name":"onesdk4147.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9c54-14ff382ad201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7406\/providers\/Microsoft.Network\/dnszones\/onesdk4171.pstest.test","name":"onesdk4171.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-9b6c-1be1352dd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk744\/providers\/Microsoft.Network\/dnszones\/onesdk9600.pstest.test","name":"onesdk9600.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-5736-5a1fe322d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7442\/providers\/Microsoft.Network\/dnszones\/onesdk5915.pstest.test","name":"onesdk5915.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9cd7-ecca711fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7466\/providers\/Microsoft.Network\/dnszones\/onesdk7233.pstest.test","name":"onesdk7233.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-cfe4-e0368849d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7529\/providers\/Microsoft.Network\/dnszones\/onesdk6493.pstest.test","name":"onesdk6493.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9549-bbb2b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7530\/providers\/Microsoft.Network\/dnszones\/onesdk3045.pstest.test","name":"onesdk3045.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7789-af31a150d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7535\/providers\/Microsoft.Network\/dnszones\/onesdk3217.pstest.test","name":"onesdk3217.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9a77-e81c593fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7585\/providers\/Microsoft.Network\/dnszones\/onesdk1523.pstest.test","name":"onesdk1523.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6aac-ab4a883ed201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7585\/providers\/Microsoft.Network\/dnszones\/onesdk1523.pstest.testa","name":"onesdk1523.pstest.testa","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-432a-244b883ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7585\/providers\/Microsoft.Network\/dnszones\/onesdk9365.pstest.test","name":"onesdk9365.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d8c8-a5ac721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7594\/providers\/Microsoft.Network\/dnszones\/onesdk4695.pstest.test","name":"onesdk4695.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7bfd-8530903ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk763\/providers\/Microsoft.Network\/dnszones\/onesdk2995.pstest.test","name":"onesdk2995.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-7016-c9d4f02dd301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7656\/providers\/Microsoft.Network\/dnszones\/onesdk4165.pstest.test","name":"onesdk4165.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-154e-0c89ea4bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7699\/providers\/Microsoft.Network\/dnszones\/onesdk746.pstest.test","name":"onesdk746.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-da71-176d8a2bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7705\/providers\/Microsoft.Network\/dnszones\/onesdk632.pstest.test","name":"onesdk632.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-65e2-3a49611fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7710\/providers\/Microsoft.Network\/dnszones\/onesdk4259.pstest.test","name":"onesdk4259.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9ddc-badbb81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk779\/providers\/Microsoft.Network\/dnszones\/onesdk1696.pstest.test","name":"onesdk1696.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-68dd-d707fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7822\/providers\/Microsoft.Network\/dnszones\/onesdk7725.pstest.test","name":"onesdk7725.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e203-be0c3f25d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7837\/providers\/Microsoft.Network\/dnszones\/onesdk3168.pstest.test","name":"onesdk3168.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-75cd-825ad739d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7913\/providers\/Microsoft.Network\/dnszones\/onesdk5889.pstest.test","name":"onesdk5889.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-1e44-8594ac41d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7964\/providers\/Microsoft.Network\/dnszones\/onesdk5306.pstest.test","name":"onesdk5306.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4548-76c96528d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7983\/providers\/Microsoft.Network\/dnszones\/onesdk1262.pstest.test","name":"onesdk1262.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1107-69bf611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk7991\/providers\/Microsoft.Network\/dnszones\/onesdk8675.pstest.test","name":"onesdk8675.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-305d-d5319149d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8038\/providers\/Microsoft.Network\/dnszones\/onesdk3192.pstest.test","name":"onesdk3192.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ccea-1b31f652d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8043\/providers\/Microsoft.Network\/dnszones\/onesdk7041.pstest.test","name":"onesdk7041.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-9055-fe90ea4bd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8109\/providers\/Microsoft.Network\/dnszones\/onesdk6495.pstest.test","name":"onesdk6495.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-cf40-9859b34cd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8122\/providers\/Microsoft.Network\/dnszones\/onesdk253.pstest.test","name":"onesdk253.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b190-2e52fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8154\/providers\/Microsoft.Network\/dnszones\/onesdk153.pstest.test","name":"onesdk153.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-308d-cfad611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk822\/providers\/Microsoft.Network\/dnszones\/onesdk8520.pstest.test","name":"onesdk8520.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b7de-e27efd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8222\/providers\/Microsoft.Network\/dnszones\/onesdk6033.pstest.test","name":"onesdk6033.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7374-4d746c46d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8268\/providers\/Microsoft.Network\/dnszones\/onesdk1602.pstest.test","name":"onesdk1602.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1dc5-edbdfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8272\/providers\/Microsoft.Network\/dnszones\/onesdk1083.pstest.test","name":"onesdk1083.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-08d9-5d7bf81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8300\/providers\/Microsoft.Network\/dnszones\/onesdk5050.pstest.test","name":"onesdk5050.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6728-d2bef629d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8307\/providers\/Microsoft.Network\/dnszones\/onesdk128.pstest.test","name":"onesdk128.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b309-a4eafc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8357\/providers\/Microsoft.Network\/dnszones\/onesdk52.pstest.test","name":"onesdk52.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5d6b-4232721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8365\/providers\/Microsoft.Network\/dnszones\/onesdk708.pstest.test","name":"onesdk708.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a6a5-b75bfa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8377\/providers\/Microsoft.Network\/dnszones\/onesdk7016.pstest.test","name":"onesdk7016.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ed2e-4a36b91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8456\/providers\/Microsoft.Network\/dnszones\/onesdk1593.pstest.test","name":"onesdk1593.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b68d-8e9c611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8479\/providers\/Microsoft.Network\/dnszones\/onesdk9111.pstest.test","name":"onesdk9111.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-00d5-4f63611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8487\/providers\/Microsoft.Network\/dnszones\/onesdk6497.pstest.test","name":"onesdk6497.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bd89-2c7e711fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8499\/providers\/Microsoft.Network\/dnszones\/onesdk2786.pstest.test","name":"onesdk2786.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-887c-5c2fb91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8522\/providers\/Microsoft.Network\/dnszones\/onesdk8790.pstest.test","name":"onesdk8790.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b879-d2d4b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8552\/providers\/Microsoft.Network\/dnszones\/onesdk4250.pstest.test","name":"onesdk4250.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ef5e-96007252d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8559\/providers\/Microsoft.Network\/dnszones\/onesdk501.pstest.test","name":"onesdk501.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1b5b-734a3f38d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8580\/providers\/Microsoft.Network\/dnszones\/onesdk1493.pstest.test","name":"onesdk1493.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-980c-f138721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8598\/providers\/Microsoft.Network\/dnszones\/onesdk2766.pstest.test","name":"onesdk2766.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b1c5-520f721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8603\/providers\/Microsoft.Network\/dnszones\/onesdk1068.pstest.test","name":"onesdk1068.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-80e1-600a822bd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8609\/providers\/Microsoft.Network\/dnszones\/onesdk9705.pstest.test","name":"onesdk9705.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-abd3-7179fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8625\/providers\/Microsoft.Network\/dnszones\/onesdk8944.pstest.test","name":"onesdk8944.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4d22-3d6ffb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8644\/providers\/Microsoft.Network\/dnszones\/onesdk4244.pstest.test","name":"onesdk4244.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-052f-06e3b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk869\/providers\/Microsoft.Network\/dnszones\/onesdk2868.pstest.test","name":"onesdk2868.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-cffa-aa45f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8699\/providers\/Microsoft.Network\/dnszones\/onesdk1043.pstest.test","name":"onesdk1043.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-0235-60062156d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8708\/providers\/Microsoft.Network\/dnszones\/onesdk7157.pstest.test","name":"onesdk7157.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4281-8685234bd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8840\/providers\/Microsoft.Network\/dnszones\/onesdk9197.pstest.test","name":"onesdk9197.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7bc8-3777e135d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8869\/providers\/Microsoft.Network\/dnszones\/onesdk2810.pstest.test","name":"onesdk2810.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-29cd-5058b91fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8903\/providers\/Microsoft.Network\/dnszones\/onesdk3123.pstest.test","name":"onesdk3123.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4e1b-c219611fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk891\/providers\/Microsoft.Network\/dnszones\/onesdk696.pstest.test","name":"onesdk696.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8235-fe80de15d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8920\/providers\/Microsoft.Network\/dnszones\/onesdk2672.pstest.test","name":"onesdk2672.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0f6b-9a38fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8924\/providers\/Microsoft.Network\/dnszones\/onesdk6190.pstest.test","name":"onesdk6190.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9e05-5051f63cd201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8932\/providers\/Microsoft.Network\/dnszones\/onesdk6647.pstest.test","name":"onesdk6647.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-1ad4-0fa27c4dd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8951\/providers\/Microsoft.Network\/dnszones\/onesdk4871.pstest.test","name":"onesdk4871.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7c83-fb77fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8967\/providers\/Microsoft.Network\/dnszones\/onesdk8737.pstest.test","name":"onesdk8737.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a41d-62d6f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8987\/providers\/Microsoft.Network\/dnszones\/onesdk3928.pstest.test","name":"onesdk3928.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-88e8-86f64638d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk8992\/providers\/Microsoft.Network\/dnszones\/onesdk8784.pstest.test","name":"onesdk8784.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4f37-b762fa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9005\/providers\/Microsoft.Network\/dnszones\/onesdk5815.pstest.test","name":"onesdk5815.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e7f3-8ab05155d201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk901\/providers\/Microsoft.Network\/dnszones\/onesdk8722.pstest.test","name":"onesdk8722.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2c01-cc55721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9035\/providers\/Microsoft.Network\/dnszones\/onesdk7935.pstest.test","name":"onesdk7935.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c10f-7074f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9049\/providers\/Microsoft.Network\/dnszones\/onesdk1994.pstest.test","name":"onesdk1994.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-4e15-b5578a2ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9068\/providers\/Microsoft.Network\/dnszones\/onesdk8660.pstest.test","name":"onesdk8660.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5ef6-de152140d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9084\/providers\/Microsoft.Network\/dnszones\/onesdk8158.pstest.test","name":"onesdk8158.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-24fa-ba41fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9090\/providers\/Microsoft.Network\/dnszones\/onesdk4457.pstest.test","name":"onesdk4457.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-7e5d-cf1ba03ad201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9134\/providers\/Microsoft.Network\/dnszones\/onesdk6175.pstest.test","name":"onesdk6175.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-c01a-2697f41fd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9139\/providers\/Microsoft.Network\/dnszones\/onesdk417.pstest.test","name":"onesdk417.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f47e-5679d02ed201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9160\/providers\/Microsoft.Network\/dnszones\/onesdk6148.pstest.test","name":"onesdk6148.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0be8-c83f721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9164\/providers\/Microsoft.Network\/dnszones\/onesdk9827.pstest.test","name":"onesdk9827.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-df85-fbf87337d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9175\/providers\/Microsoft.Network\/dnszones\/onesdk5076.pstest.test","name":"onesdk5076.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-61d3-4f3bf91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9247\/providers\/Microsoft.Network\/dnszones\/onesdk6135.pstest.test","name":"onesdk6135.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-d81b-f72a8f54d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9265\/providers\/Microsoft.Network\/dnszones\/onesdk5743.pstest.test","name":"onesdk5743.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-9d87-f284693bd201","location":"global","tags":{"tag2":"value2","tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9270\/providers\/Microsoft.Network\/dnszones\/onesdk5482.pstest.test","name":"onesdk5482.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e2d9-f811fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9323\/providers\/Microsoft.Network\/dnszones\/onesdk9813.pstest.test","name":"onesdk9813.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b8f8-b541fe47d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9361\/providers\/Microsoft.Network\/dnszones\/onesdk4646.pstest.test","name":"onesdk4646.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5a19-0ac3721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9412\/providers\/Microsoft.Network\/dnszones\/onesdk4765.pstest.test","name":"onesdk4765.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a534-50e48a2ed301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9423\/providers\/Microsoft.Network\/dnszones\/onesdk8561.pstest.test","name":"onesdk8561.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-40f2-c3a4b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9462\/providers\/Microsoft.Network\/dnszones\/onesdk4580.pstest.test","name":"onesdk4580.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-704d-79befc1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9466\/providers\/Microsoft.Network\/dnszones\/onesdk2434.pstest.test","name":"onesdk2434.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-204e-b882d44fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk947\/providers\/Microsoft.Network\/dnszones\/onesdk8857.pstest.test","name":"onesdk8857.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7103-354bfd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9543\/providers\/Microsoft.Network\/dnszones\/onesdk8652.pstest.test","name":"onesdk8652.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7808-a7dfa03ad201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9551\/providers\/Microsoft.Network\/dnszones\/onesdk433.pstest.test","name":"onesdk433.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-9d5f-94b8e035d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":3,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk957\/providers\/Microsoft.Network\/dnszones\/onesdk438.pstest.test","name":"onesdk438.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d859-f085fd1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} + body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60","name":"pydns.comc0190c60","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-ac28-222a4149d401","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"maxNumberOfRecordsPerRecordSet":null,"nameServers":["ns1-07.azure-dns.com.","ns2-07.azure-dns.net.","ns3-07.azure-dns.org.","ns4-07.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} headers: cache-control: [private] - content-length: ['53757'] + content-length: ['567'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:36 GMT'] + date: ['Mon, 10 Sep 2018 20:02:15 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5997'] + x-ms-ratelimit-remaining-subscription-resource-entities-read: ['59999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -202,86 +89,85 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-03-01-preview&$skipToken=b25lc2RrOTU3L3pvbmVzL29uZXNkazQzOC5wc3Rlc3QudGVzdA== + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/dnszones?api-version=2018-05-01 response: - body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9570\/providers\/Microsoft.Network\/dnszones\/onesdk3559.pstest.test","name":"onesdk3559.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-14b0-78a8611fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9600\/providers\/Microsoft.Network\/dnszones\/onesdk8840.pstest.test","name":"onesdk8840.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e2e0-930bb91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9614\/providers\/Microsoft.Network\/dnszones\/onesdk27.pstest.test","name":"onesdk27.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-447a-b854f81fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9647\/providers\/Microsoft.Network\/dnszones\/onesdk6702.pstest.test","name":"onesdk6702.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8c22-6176fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9674\/providers\/Microsoft.Network\/dnszones\/onesdk3247.pstest.test","name":"onesdk3247.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5344-235b3547d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9700\/providers\/Microsoft.Network\/dnszones\/onesdk3208.pstest.test","name":"onesdk3208.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1821-f313f81fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9755\/providers\/Microsoft.Network\/dnszones\/onesdk1281.pstest.test","name":"onesdk1281.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-84be-b137fb1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9770\/providers\/Microsoft.Network\/dnszones\/onesdk7520.pstest.test","name":"onesdk7520.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-684e-151ab91fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9792\/providers\/Microsoft.Network\/dnszones\/onesdk4698.pstest.test","name":"onesdk4698.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4070-a5c1f81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk98\/providers\/Microsoft.Network\/dnszones\/onesdk5779.pstest.test","name":"onesdk5779.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d0cb-1c90721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9865\/providers\/Microsoft.Network\/dnszones\/onesdk1690.pstest.test","name":"onesdk1690.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-8100-507f6851d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9877\/providers\/Microsoft.Network\/dnszones\/onesdk4260.pstest.test","name":"onesdk4260.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a704-b95ef81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9910\/providers\/Microsoft.Network\/dnszones\/onesdk8222.pstest.test","name":"onesdk8222.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-864f-9dacfa1fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9986\/providers\/Microsoft.Network\/dnszones\/onesdk7796.pstest.test","name":"onesdk7796.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5661-d8b9b91fd201","location":"global","tags":{"tag1":"value1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9990\/providers\/Microsoft.Network\/dnszones\/onesdk3.pstest.test","name":"onesdk3.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b60d-8590b81fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/onesdk9993\/providers\/Microsoft.Network\/dnszones\/onesdk6809.pstest.test","name":"onesdk6809.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6ea8-8a46721fd201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/origintestresourcegroup\/providers\/Microsoft.Network\/dnszones\/basicscenarios.azuredns.internal.test","name":"basicscenarios.azuredns.internal.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-634d-c14347c3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":17,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/origintestresourcegroup\/providers\/Microsoft.Network\/dnszones\/foo.com","name":"foo.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-1f3d-d6f047c3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/rg1\/providers\/Microsoft.Network\/dnszones\/jt-test.com","name":"jt-test.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a2fd-97bef6d5d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":9,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/rg1\/providers\/Microsoft.Network\/dnszones\/jt-test.net","name":"jt-test.net","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4753-2e0d1ec3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":6,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/rg1\/providers\/Microsoft.Network\/dnszones\/jt-test2.com","name":"jt-test2.com","type":"Microsoft.Network\/dnszones","etag":"00000007-0000-0000-63a9-32a82bc3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/rg2\/providers\/Microsoft.Network\/dnszones\/jt-test.com","name":"jt-test.com","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c20f-4c6b21c3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60","name":"pydns.comc0190c60","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-a957-b24ce3b4d301","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":10000000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest.test","name":"onesdkrand.10500onesdk.pstest.test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b9a2-cbc94123d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest1.1test","name":"onesdkrand.10500onesdk.pstest1.1test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4dd5-44834423d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest21.22test","name":"onesdkrand.10500onesdk.pstest21.22test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-afef-8d834c23d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest22.22test","name":"onesdkrand.10500onesdk.pstest22.22test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2b55-ff294723d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest23.22test","name":"onesdkrand.10500onesdk.pstest23.22test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bfac-f6bd5023d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest24.24test","name":"onesdkrand.10500onesdk.pstest24.24test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-d222-73015123d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/onesdkrand.10500onesdk.pstest33.23test","name":"onesdkrand.10500onesdk.pstest33.23test","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-b9eb-dfae4d23d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/test.zone","name":"test.zone","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-38ec-78aeccd3d101","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone34","name":"testsome.zone34","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-ba21-2ccaeb23d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone35","name":"testsome.zone35","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-fddc-7d88f123d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone36","name":"testsome.zone36","type":"Microsoft.Network\/dnszones","etag":"00000004-0000-0000-72b6-45e90124d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone37","name":"testsome.zone37","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6b72-82e1db24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone38","name":"testsome.zone38","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5a68-a1c2dc24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone39","name":"testsome.zone39","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-4ba3-41d6dc24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone40","name":"testsome.zone40","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-004a-d1f0dc24d201","location":"global","tags":{"a":"b"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone41","name":"testsome.zone41","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-35ec-c705dd24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone42","name":"testsome.zone42","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0653-37e9dd24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone43","name":"testsome.zone43","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-bff9-0cb3de24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone44","name":"testsome.zone44","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7627-24e6de24d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone45","name":"testsome.zone45","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6f69-5fbc0c25d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone46","name":"testsome.zone46","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c2bf-b1e60e25d201","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone47","name":"testsome.zone47","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-6799-720a0f25d201","location":"global","tags":{"name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome.zone49","name":"testsome.zone49","type":"Microsoft.Network\/dnszones","etag":"00000008-0000-0000-0b92-8ab20f25d201","location":"global","tags":{"Name":"tag1","Value":"tag2"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone1","name":"testsome1.zone1","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-faa0-5c2d0e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-06.daily.azure-dns.com.","ns2-06.daily.azure-dns.net.","ns3-06.daily.azure-dns.org.","ns4-06.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone2","name":"testsome1.zone2","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-378b-aa750e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone3","name":"testsome1.zone3","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c833-d5a90e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone4","name":"testsome1.zone4","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-0160-e0a17d25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome1.zone5","name":"testsome1.zone5","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-17e8-90bf7d25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-01.daily.azure-dns.com.","ns2-01.daily.azure-dns.net.","ns3-01.daily.azure-dns.org.","ns4-01.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone1","name":"testsome2.zone1","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-2cb2-47267e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone10","name":"testsome2.zone10","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-40b3-4aec9925d201","location":"global","tags":{"value":"Value1","name":"Tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone11","name":"testsome2.zone11","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-7dfe-edeea025d201","location":"global","tags":{"value":"Value1","Name":"Tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone2","name":"testsome2.zone2","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-c994-c0447e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-08.daily.azure-dns.com.","ns2-08.daily.azure-dns.net.","ns3-08.daily.azure-dns.org.","ns4-08.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone3","name":"testsome2.zone3","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-53f6-5e497e25d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-07.daily.azure-dns.com.","ns2-07.daily.azure-dns.net.","ns3-07.daily.azure-dns.org.","ns4-07.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone4","name":"testsome2.zone4","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-a8a1-98dd8725d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-05.daily.azure-dns.com.","ns2-05.daily.azure-dns.net.","ns3-05.daily.azure-dns.org.","ns4-05.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone5","name":"testsome2.zone5","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-f8c9-b1ed8725d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-04.daily.azure-dns.com.","ns2-04.daily.azure-dns.net.","ns3-04.daily.azure-dns.org.","ns4-04.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone6","name":"testsome2.zone6","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-e816-2ff78725d201","location":"global","tags":{"value":"value1","name":"tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-03.daily.azure-dns.com.","ns2-03.daily.azure-dns.net.","ns3-03.daily.azure-dns.org.","ns4-03.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone7","name":"testsome2.zone7","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-529e-046a9125d201","location":"global","tags":{"value":"Value1","name":"Tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-02.daily.azure-dns.com.","ns2-02.daily.azure-dns.net.","ns3-02.daily.azure-dns.org.","ns4-02.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/testrg\/providers\/Microsoft.Network\/dnszones\/testsome2.zone8","name":"testsome2.zone8","type":"Microsoft.Network\/dnszones","etag":"00000003-0000-0000-5fc0-64ac9925d201","location":"global","tags":{"value":"Value1","name":"Tag1"},"properties":{"maxNumberOfRecordSets":100000,"nameServers":["ns1-09.daily.azure-dns.com.","ns2-09.daily.azure-dns.net.","ns3-09.daily.azure-dns.org.","ns4-09.daily.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} + body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60","name":"pydns.comc0190c60","type":"Microsoft.Network\/dnszones","etag":"00000002-0000-0000-ac28-222a4149d401","location":"global","tags":{},"properties":{"maxNumberOfRecordSets":5000,"maxNumberOfRecordsPerRecordSet":null,"nameServers":["ns1-07.azure-dns.com.","ns2-07.azure-dns.net.","ns3-07.azure-dns.org.","ns4-07.azure-dns.info."],"numberOfRecordSets":2,"zoneType":"Public"}}]}'} headers: cache-control: [private] - content-length: ['32417'] + content-length: ['567'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:37 GMT'] + date: ['Mon, 10 Sep 2018 20:02:15 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5996'] + x-ms-ratelimit-remaining-subscription-resource-entities-read: ['59999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: - body: '{"properties": {"ARecords": [{"ipv4Address": "1.2.3.4"}], - "TTL": 300}}' + body: '{"properties": {"TTL": 300, "ARecords": [{"ipv4Address": "1.2.3.4"}]}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['70'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A/record_setc0190c60?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A/record_setc0190c60?api-version=2018-05-01 response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"9ae5cbf9-525b-449b-8cac-658af4c72277","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"}]}}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"1d5f6971-3018-4e56-b16c-b64e72d10ca2","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"}],"targetResource":{},"provisioningState":"Succeeded"}}'} headers: cache-control: [private] - content-length: ['425'] + content-length: ['477'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:38 GMT'] - etag: [9ae5cbf9-525b-449b-8cac-658af4c72277] + date: ['Mon, 10 Sep 2018 20:02:17 GMT'] + etag: [1d5f6971-3018-4e56-b16c-b64e72d10ca2] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 201, message: Created} - request: - body: '{"properties": {"ARecords": [{"ipv4Address": "1.2.3.4"}, - {"ipv4Address": "5.6.7.8"}], "TTL": 300}}' + body: '{"properties": {"TTL": 300, "ARecords": [{"ipv4Address": "1.2.3.4"}, {"ipv4Address": + "5.6.7.8"}]}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['98'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: PATCH - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A/record_setc0190c60?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A/record_setc0190c60?api-version=2018-05-01 response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"61065f12-b45e-4a2d-a023-a33a425d01f0","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}]}}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"10c480ef-c892-4b1f-8d55-f5fa766f501a","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}],"targetResource":{},"provisioningState":"Succeeded"}}'} headers: cache-control: [private] - content-length: ['451'] + content-length: ['503'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:39 GMT'] - etag: [61065f12-b45e-4a2d-a023-a33a425d01f0] + date: ['Mon, 10 Sep 2018 20:02:19 GMT'] + etag: [10c480ef-c892-4b1f-8d55-f5fa766f501a] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5998'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -290,27 +176,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A/record_setc0190c60?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A/record_setc0190c60?api-version=2018-05-01 response: - body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"61065f12-b45e-4a2d-a023-a33a425d01f0","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}]}}'} + body: {string: '{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"10c480ef-c892-4b1f-8d55-f5fa766f501a","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}],"targetResource":{},"provisioningState":"Unknown"}}'} headers: cache-control: [private] - content-length: ['451'] + content-length: ['501'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:40 GMT'] - etag: [61065f12-b45e-4a2d-a023-a33a425d01f0] + date: ['Mon, 10 Sep 2018 20:02:19 GMT'] + etag: [10c480ef-c892-4b1f-8d55-f5fa766f501a] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -319,26 +204,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A?api-version=2018-05-01 response: - body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"61065f12-b45e-4a2d-a023-a33a425d01f0","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}]}}]}'} + body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"10c480ef-c892-4b1f-8d55-f5fa766f501a","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}],"targetResource":{},"provisioningState":"Unknown"}}]}'} headers: cache-control: [private] - content-length: ['463'] + content-length: ['513'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:42 GMT'] + date: ['Mon, 10 Sep 2018 20:02:20 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-entities-read: ['59999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -347,26 +232,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/recordsets?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/recordsets?api-version=2018-05-01 response: - body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/NS\/@","name":"@","type":"Microsoft.Network\/dnszones\/NS","etag":"9c058684-236e-42e9-8778-8fba0358001b","properties":{"fqdn":"pydns.comc0190c60.","TTL":172800,"NSRecords":[{"nsdname":"ns1-02.daily.azure-dns.com."},{"nsdname":"ns2-02.daily.azure-dns.net."},{"nsdname":"ns3-02.daily.azure-dns.org."},{"nsdname":"ns4-02.daily.azure-dns.info."}]}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/SOA\/@","name":"@","type":"Microsoft.Network\/dnszones\/SOA","etag":"5b62f1f8-721c-4331-bb26-838b38627141","properties":{"fqdn":"pydns.comc0190c60.","TTL":3600,"SOARecord":{"email":"azuredns-hostmaster.microsoft.com","expireTime":2419200,"host":"ns1-02.daily.azure-dns.com.","minimumTTL":300,"refreshTime":3600,"retryTime":300,"serialNumber":1}}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"61065f12-b45e-4a2d-a023-a33a425d01f0","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}]}}]}'} + body: {string: '{"value":[{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/NS\/@","name":"@","type":"Microsoft.Network\/dnszones\/NS","etag":"eb2c26ef-9001-48b8-a95c-058d83ba8cfe","properties":{"fqdn":"pydns.comc0190c60.","TTL":172800,"NSRecords":[{"nsdname":"ns1-07.azure-dns.com."},{"nsdname":"ns2-07.azure-dns.net."},{"nsdname":"ns3-07.azure-dns.org."},{"nsdname":"ns4-07.azure-dns.info."}],"targetResource":{},"provisioningState":"Unknown"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/SOA\/@","name":"@","type":"Microsoft.Network\/dnszones\/SOA","etag":"b5bc9f1b-3ebf-4f30-bcca-480e48fc01d6","properties":{"fqdn":"pydns.comc0190c60.","TTL":3600,"SOARecord":{"email":"azuredns-hostmaster.microsoft.com","expireTime":2419200,"host":"ns1-07.azure-dns.com.","minimumTTL":300,"refreshTime":3600,"retryTime":300,"serialNumber":1},"targetResource":{},"provisioningState":"Unknown"}},{"id":"\/subscriptions\/00000000-0000-0000-0000-000000000000\/resourceGroups\/test_mgmt_dns_test_public_zonec0190c60\/providers\/Microsoft.Network\/dnszones\/pydns.comc0190c60\/A\/record_setc0190c60","name":"record_setc0190c60","type":"Microsoft.Network\/dnszones\/A","etag":"10c480ef-c892-4b1f-8d55-f5fa766f501a","properties":{"fqdn":"record_setc0190c60.pydns.comc0190c60.","TTL":300,"ARecords":[{"ipv4Address":"1.2.3.4"},{"ipv4Address":"5.6.7.8"}],"targetResource":{},"provisioningState":"Unknown"}}]}'} headers: cache-control: [private] - content-length: ['1509'] + content-length: ['1629'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:42 GMT'] + date: ['Mon, 10 Sep 2018 20:02:20 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-entities-read: ['59997'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -376,23 +261,22 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A/record_setc0190c60?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60/A/record_setc0190c60?api-version=2018-05-01 response: body: {string: ''} headers: cache-control: [private] content-length: ['0'] - date: ['Tue, 06 Mar 2018 00:37:44 GMT'] + date: ['Mon, 10 Sep 2018 20:02:23 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} - request: @@ -402,25 +286,24 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsZones/pydns.comc0190c60?api-version=2018-05-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://api-dogfood.resources.windows-int.net:443/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsOperationStatuses/delzone636558934661537654a432b047?api-version=2018-03-01-preview'] + azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsOperationStatuses/delzone636722065444574090c3302a54?api-version=2018-05-01'] cache-control: [private] content-length: ['0'] - date: ['Tue, 06 Mar 2018 00:37:46 GMT'] - location: ['https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsOperationResults/delzone636558934661537654a432b047?api-version=2018-03-01-preview'] + date: ['Mon, 10 Sep 2018 20:02:24 GMT'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsOperationResults/delzone636722065444574090c3302a54?api-version=2018-05-01'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['11999'] x-powered-by: [ASP.NET] status: {code: 202, message: Accepted} - request: @@ -429,24 +312,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/2.7.14 (Windows-10-10.0.17101) requests/2.18.4 msrest/0.4.26 - msrest_azure/0.4.22 azure-mgmt-dns/2018-03-01-preview Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.5.0 azure-mgmt-dns/2.1.0 Azure-SDK-For-Python] method: GET - uri: https://api-dogfood.resources.windows-int.net/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsOperationStatuses/delzone636558934661537654a432b047?api-version=2018-03-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_dns_test_public_zonec0190c60/providers/Microsoft.Network/dnsOperationStatuses/delzone636722065444574090c3302a54?api-version=2018-05-01 response: body: {string: '{"status":"Succeeded"}'} headers: cache-control: [private] content-length: ['22'] content-type: [application/json; charset=utf-8] - date: ['Tue, 06 Mar 2018 00:37:50 GMT'] + date: ['Mon, 10 Sep 2018 20:02:27 GMT'] server: [Microsoft-IIS/8.5] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] x-aspnet-version: [4.0.30319] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-resource-requests: ['5999'] + x-ms-ratelimit-remaining-subscription-resource-requests: ['499'] x-powered-by: [ASP.NET] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-dns/tests/test_mgmt_dns.py b/azure-mgmt-dns/tests/test_mgmt_dns.py index b2c40446677b..5b5b43c0f640 100644 --- a/azure-mgmt-dns/tests/test_mgmt_dns.py +++ b/azure-mgmt-dns/tests/test_mgmt_dns.py @@ -75,15 +75,12 @@ def setUp(self): super(MgmtDnsTest, self).setUp() self.dns_client = self.create_mgmt_client( azure.mgmt.dns.DnsManagementClient, - base_url='https://api-dogfood.resources.windows-int.net/' ) self.network_client = self.create_mgmt_client( azure.mgmt.network.NetworkManagementClient, - api_version='2017-09-01', - base_url='https://api-dogfood.resources.windows-int.net/' ) - @ResourceGroupPreparer(client_kwargs={'base_url':'https://api-dogfood.resources.windows-int.net/'}) + @ResourceGroupPreparer() def test_public_zone(self, resource_group, location): zone_name = self.get_resource_name('pydns.com') @@ -182,7 +179,7 @@ def test_public_zone(self, resource_group, location): ) async_delete.wait() - @ResourceGroupPreparer(client_kwargs={'base_url':'https://api-dogfood.resources.windows-int.net/'}) + @ResourceGroupPreparer() @VirtualNetworkPreparer() def test_private_zone(self, resource_group, location, registration_virtual_network, resolution_virtual_network): zone_name = self.get_resource_name('pydns.com') diff --git a/azure-mgmt-documentdb/azure/__init__.py b/azure-mgmt-documentdb/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-documentdb/azure/__init__.py +++ b/azure-mgmt-documentdb/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-documentdb/azure/mgmt/__init__.py b/azure-mgmt-documentdb/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-documentdb/azure/mgmt/__init__.py +++ b/azure-mgmt-documentdb/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-documentdb/sdk_packaging.toml b/azure-mgmt-documentdb/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-mgmt-documentdb/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-mgmt-eventgrid/HISTORY.rst b/azure-mgmt-eventgrid/HISTORY.rst index aa923796a13c..192e5dcec83d 100644 --- a/azure-mgmt-eventgrid/HISTORY.rst +++ b/azure-mgmt-eventgrid/HISTORY.rst @@ -3,6 +3,20 @@ Release History =============== +2.0.0rc2 (2018-10-24) ++++++++++++++++++++++ + +**Features** + +- Model EventSubscriptionFilter has a new parameter advanced_filters +- Model EventSubscriptionUpdateParameters has a new parameter expiration_time_utc +- Model EventSubscription has a new parameter expiration_time_utc +- Added operation EventSubscriptionsOperations.list_by_domain_topic +- Added operation group DomainTopicsOperations +- Added operation group DomainsOperations + +Internal API version is 2018-09-15-preview + 2.0.0rc1 (2018-05-04) +++++++++++++++++++++ @@ -14,9 +28,9 @@ Release History - delivering events to Azure Storage queue and Azure hybrid connections - deadlettering - retry policies -- manual subscription validation handshake validation. +- manual subscription validation handshake validation. -Internal API version is 2018-05-01-preview +Internal API version is 2018-05-01-preview 1.0.0 (2018-04-26) ++++++++++++++++++ @@ -39,7 +53,7 @@ This version uses a next-generation code generator that *might* introduce breaki - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same. - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used. - - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, + - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`. - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`, the response of the initial call will be returned without polling. diff --git a/azure-mgmt-eventgrid/MANIFEST.in b/azure-mgmt-eventgrid/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-eventgrid/MANIFEST.in +++ b/azure-mgmt-eventgrid/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-eventgrid/README.rst b/azure-mgmt-eventgrid/README.rst index 1ec01a03bffe..7792414c6dda 100644 --- a/azure-mgmt-eventgrid/README.rst +++ b/azure-mgmt-eventgrid/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure EventGrid Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `EventGrid Management -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-eventgrid/azure/__init__.py b/azure-mgmt-eventgrid/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-eventgrid/azure/__init__.py +++ b/azure-mgmt-eventgrid/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-eventgrid/azure/mgmt/__init__.py b/azure-mgmt-eventgrid/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/__init__.py +++ b/azure-mgmt-eventgrid/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/event_grid_management_client.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/event_grid_management_client.py index b5a272315294..b0378dea2479 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/event_grid_management_client.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/event_grid_management_client.py @@ -13,6 +13,8 @@ from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION +from .operations.domains_operations import DomainsOperations +from .operations.domain_topics_operations import DomainTopicsOperations from .operations.event_subscriptions_operations import EventSubscriptionsOperations from .operations.operations import Operations from .operations.topics_operations import TopicsOperations @@ -60,6 +62,10 @@ class EventGridManagementClient(SDKClient): :ivar config: Configuration for client. :vartype config: EventGridManagementClientConfiguration + :ivar domains: Domains operations + :vartype domains: azure.mgmt.eventgrid.operations.DomainsOperations + :ivar domain_topics: DomainTopics operations + :vartype domain_topics: azure.mgmt.eventgrid.operations.DomainTopicsOperations :ivar event_subscriptions: EventSubscriptions operations :vartype event_subscriptions: azure.mgmt.eventgrid.operations.EventSubscriptionsOperations :ivar operations: Operations operations @@ -86,10 +92,14 @@ def __init__( super(EventGridManagementClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '2018-05-01-preview' + self.api_version = '2018-09-15-preview' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) + self.domains = DomainsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.domain_topics = DomainTopicsOperations( + self._client, self.config, self._serialize, self._deserialize) self.event_subscriptions = EventSubscriptionsOperations( self._client, self.config, self._serialize, self._deserialize) self.operations = Operations( diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/__init__.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/__init__.py index 633b89b64252..9a4da95511c0 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/__init__.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/__init__.py @@ -10,12 +10,31 @@ # -------------------------------------------------------------------------- try: + from .input_schema_mapping_py3 import InputSchemaMapping + from .domain_py3 import Domain + from .domain_update_parameters_py3 import DomainUpdateParameters + from .domain_shared_access_keys_py3 import DomainSharedAccessKeys + from .domain_regenerate_key_request_py3 import DomainRegenerateKeyRequest + from .domain_topic_py3 import DomainTopic from .event_subscription_destination_py3 import EventSubscriptionDestination + from .advanced_filter_py3 import AdvancedFilter from .event_subscription_filter_py3 import EventSubscriptionFilter from .retry_policy_py3 import RetryPolicy from .dead_letter_destination_py3 import DeadLetterDestination from .resource_py3 import Resource + from .number_in_advanced_filter_py3 import NumberInAdvancedFilter from .storage_blob_dead_letter_destination_py3 import StorageBlobDeadLetterDestination + from .number_not_in_advanced_filter_py3 import NumberNotInAdvancedFilter + from .number_less_than_advanced_filter_py3 import NumberLessThanAdvancedFilter + from .number_greater_than_advanced_filter_py3 import NumberGreaterThanAdvancedFilter + from .number_less_than_or_equals_advanced_filter_py3 import NumberLessThanOrEqualsAdvancedFilter + from .number_greater_than_or_equals_advanced_filter_py3 import NumberGreaterThanOrEqualsAdvancedFilter + from .bool_equals_advanced_filter_py3 import BoolEqualsAdvancedFilter + from .string_in_advanced_filter_py3 import StringInAdvancedFilter + from .string_not_in_advanced_filter_py3 import StringNotInAdvancedFilter + from .string_begins_with_advanced_filter_py3 import StringBeginsWithAdvancedFilter + from .string_ends_with_advanced_filter_py3 import StringEndsWithAdvancedFilter + from .string_contains_advanced_filter_py3 import StringContainsAdvancedFilter from .web_hook_event_subscription_destination_py3 import WebHookEventSubscriptionDestination from .event_hub_event_subscription_destination_py3 import EventHubEventSubscriptionDestination from .storage_queue_event_subscription_destination_py3 import StorageQueueEventSubscriptionDestination @@ -25,7 +44,6 @@ from .event_subscription_full_url_py3 import EventSubscriptionFullUrl from .operation_info_py3 import OperationInfo from .operation_py3 import Operation - from .input_schema_mapping_py3 import InputSchemaMapping from .json_field_py3 import JsonField from .json_field_with_default_py3 import JsonFieldWithDefault from .json_input_schema_mapping_py3 import JsonInputSchemaMapping @@ -37,12 +55,31 @@ from .event_type_py3 import EventType from .topic_type_info_py3 import TopicTypeInfo except (SyntaxError, ImportError): + from .input_schema_mapping import InputSchemaMapping + from .domain import Domain + from .domain_update_parameters import DomainUpdateParameters + from .domain_shared_access_keys import DomainSharedAccessKeys + from .domain_regenerate_key_request import DomainRegenerateKeyRequest + from .domain_topic import DomainTopic from .event_subscription_destination import EventSubscriptionDestination + from .advanced_filter import AdvancedFilter from .event_subscription_filter import EventSubscriptionFilter from .retry_policy import RetryPolicy from .dead_letter_destination import DeadLetterDestination from .resource import Resource + from .number_in_advanced_filter import NumberInAdvancedFilter from .storage_blob_dead_letter_destination import StorageBlobDeadLetterDestination + from .number_not_in_advanced_filter import NumberNotInAdvancedFilter + from .number_less_than_advanced_filter import NumberLessThanAdvancedFilter + from .number_greater_than_advanced_filter import NumberGreaterThanAdvancedFilter + from .number_less_than_or_equals_advanced_filter import NumberLessThanOrEqualsAdvancedFilter + from .number_greater_than_or_equals_advanced_filter import NumberGreaterThanOrEqualsAdvancedFilter + from .bool_equals_advanced_filter import BoolEqualsAdvancedFilter + from .string_in_advanced_filter import StringInAdvancedFilter + from .string_not_in_advanced_filter import StringNotInAdvancedFilter + from .string_begins_with_advanced_filter import StringBeginsWithAdvancedFilter + from .string_ends_with_advanced_filter import StringEndsWithAdvancedFilter + from .string_contains_advanced_filter import StringContainsAdvancedFilter from .web_hook_event_subscription_destination import WebHookEventSubscriptionDestination from .event_hub_event_subscription_destination import EventHubEventSubscriptionDestination from .storage_queue_event_subscription_destination import StorageQueueEventSubscriptionDestination @@ -52,7 +89,6 @@ from .event_subscription_full_url import EventSubscriptionFullUrl from .operation_info import OperationInfo from .operation import Operation - from .input_schema_mapping import InputSchemaMapping from .json_field import JsonField from .json_field_with_default import JsonFieldWithDefault from .json_input_schema_mapping import JsonInputSchemaMapping @@ -63,27 +99,49 @@ from .topic_regenerate_key_request import TopicRegenerateKeyRequest from .event_type import EventType from .topic_type_info import TopicTypeInfo +from .domain_paged import DomainPaged +from .domain_topic_paged import DomainTopicPaged from .event_subscription_paged import EventSubscriptionPaged from .operation_paged import OperationPaged from .topic_paged import TopicPaged from .event_type_paged import EventTypePaged from .topic_type_info_paged import TopicTypeInfoPaged from .event_grid_management_client_enums import ( + DomainProvisioningState, + InputSchema, EventSubscriptionProvisioningState, EventDeliverySchema, TopicProvisioningState, - InputSchema, ResourceRegionType, TopicTypeProvisioningState, ) __all__ = [ + 'InputSchemaMapping', + 'Domain', + 'DomainUpdateParameters', + 'DomainSharedAccessKeys', + 'DomainRegenerateKeyRequest', + 'DomainTopic', 'EventSubscriptionDestination', + 'AdvancedFilter', 'EventSubscriptionFilter', 'RetryPolicy', 'DeadLetterDestination', 'Resource', + 'NumberInAdvancedFilter', 'StorageBlobDeadLetterDestination', + 'NumberNotInAdvancedFilter', + 'NumberLessThanAdvancedFilter', + 'NumberGreaterThanAdvancedFilter', + 'NumberLessThanOrEqualsAdvancedFilter', + 'NumberGreaterThanOrEqualsAdvancedFilter', + 'BoolEqualsAdvancedFilter', + 'StringInAdvancedFilter', + 'StringNotInAdvancedFilter', + 'StringBeginsWithAdvancedFilter', + 'StringEndsWithAdvancedFilter', + 'StringContainsAdvancedFilter', 'WebHookEventSubscriptionDestination', 'EventHubEventSubscriptionDestination', 'StorageQueueEventSubscriptionDestination', @@ -93,7 +151,6 @@ 'EventSubscriptionFullUrl', 'OperationInfo', 'Operation', - 'InputSchemaMapping', 'JsonField', 'JsonFieldWithDefault', 'JsonInputSchemaMapping', @@ -104,15 +161,18 @@ 'TopicRegenerateKeyRequest', 'EventType', 'TopicTypeInfo', + 'DomainPaged', + 'DomainTopicPaged', 'EventSubscriptionPaged', 'OperationPaged', 'TopicPaged', 'EventTypePaged', 'TopicTypeInfoPaged', + 'DomainProvisioningState', + 'InputSchema', 'EventSubscriptionProvisioningState', 'EventDeliverySchema', 'TopicProvisioningState', - 'InputSchema', 'ResourceRegionType', 'TopicTypeProvisioningState', ] diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/advanced_filter.py new file mode 100644 index 000000000000..0b166b4a1015 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/advanced_filter.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdvancedFilter(Model): + """Represents an advanced filter that can be used to filter events based on + various event envelope/data fields. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: NumberInAdvancedFilter, NumberNotInAdvancedFilter, + NumberLessThanAdvancedFilter, NumberGreaterThanAdvancedFilter, + NumberLessThanOrEqualsAdvancedFilter, + NumberGreaterThanOrEqualsAdvancedFilter, BoolEqualsAdvancedFilter, + StringInAdvancedFilter, StringNotInAdvancedFilter, + StringBeginsWithAdvancedFilter, StringEndsWithAdvancedFilter, + StringContainsAdvancedFilter + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + } + + _subtype_map = { + 'operator_type': {'NumberIn': 'NumberInAdvancedFilter', 'NumberNotIn': 'NumberNotInAdvancedFilter', 'NumberLessThan': 'NumberLessThanAdvancedFilter', 'NumberGreaterThan': 'NumberGreaterThanAdvancedFilter', 'NumberLessThanOrEquals': 'NumberLessThanOrEqualsAdvancedFilter', 'NumberGreaterThanOrEquals': 'NumberGreaterThanOrEqualsAdvancedFilter', 'BoolEquals': 'BoolEqualsAdvancedFilter', 'StringIn': 'StringInAdvancedFilter', 'StringNotIn': 'StringNotInAdvancedFilter', 'StringBeginsWith': 'StringBeginsWithAdvancedFilter', 'StringEndsWith': 'StringEndsWithAdvancedFilter', 'StringContains': 'StringContainsAdvancedFilter'} + } + + def __init__(self, **kwargs): + super(AdvancedFilter, self).__init__(**kwargs) + self.key = kwargs.get('key', None) + self.operator_type = None diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/advanced_filter_py3.py new file mode 100644 index 000000000000..1330bddfa4fa --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/advanced_filter_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AdvancedFilter(Model): + """Represents an advanced filter that can be used to filter events based on + various event envelope/data fields. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: NumberInAdvancedFilter, NumberNotInAdvancedFilter, + NumberLessThanAdvancedFilter, NumberGreaterThanAdvancedFilter, + NumberLessThanOrEqualsAdvancedFilter, + NumberGreaterThanOrEqualsAdvancedFilter, BoolEqualsAdvancedFilter, + StringInAdvancedFilter, StringNotInAdvancedFilter, + StringBeginsWithAdvancedFilter, StringEndsWithAdvancedFilter, + StringContainsAdvancedFilter + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + } + + _subtype_map = { + 'operator_type': {'NumberIn': 'NumberInAdvancedFilter', 'NumberNotIn': 'NumberNotInAdvancedFilter', 'NumberLessThan': 'NumberLessThanAdvancedFilter', 'NumberGreaterThan': 'NumberGreaterThanAdvancedFilter', 'NumberLessThanOrEquals': 'NumberLessThanOrEqualsAdvancedFilter', 'NumberGreaterThanOrEquals': 'NumberGreaterThanOrEqualsAdvancedFilter', 'BoolEquals': 'BoolEqualsAdvancedFilter', 'StringIn': 'StringInAdvancedFilter', 'StringNotIn': 'StringNotInAdvancedFilter', 'StringBeginsWith': 'StringBeginsWithAdvancedFilter', 'StringEndsWith': 'StringEndsWithAdvancedFilter', 'StringContains': 'StringContainsAdvancedFilter'} + } + + def __init__(self, *, key: str=None, **kwargs) -> None: + super(AdvancedFilter, self).__init__(**kwargs) + self.key = key + self.operator_type = None diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/bool_equals_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/bool_equals_advanced_filter.py new file mode 100644 index 000000000000..ac55b0091505 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/bool_equals_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class BoolEqualsAdvancedFilter(AdvancedFilter): + """BoolEquals Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: bool + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(BoolEqualsAdvancedFilter, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.operator_type = 'BoolEquals' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/bool_equals_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/bool_equals_advanced_filter_py3.py new file mode 100644 index 000000000000..c648cc1db73f --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/bool_equals_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class BoolEqualsAdvancedFilter(AdvancedFilter): + """BoolEquals Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: bool + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'bool'}, + } + + def __init__(self, *, key: str=None, value: bool=None, **kwargs) -> None: + super(BoolEqualsAdvancedFilter, self).__init__(key=key, **kwargs) + self.value = value + self.operator_type = 'BoolEquals' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain.py new file mode 100644 index 000000000000..868394ac75f0 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource import TrackedResource + + +class Domain(TrackedResource): + """EventGrid Domain. + + 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: Fully qualified identifier of the resource + :vartype id: str + :ivar name: Name of the resource + :vartype name: str + :ivar type: Type of the resource + :vartype type: str + :param location: Required. Location of the resource + :type location: str + :param tags: Tags of the resource + :type tags: dict[str, str] + :ivar provisioning_state: Provisioning state of the domain. Possible + values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', + 'Canceled', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.eventgrid.models.DomainProvisioningState + :ivar endpoint: Endpoint for the domain. + :vartype endpoint: str + :param input_schema: This determines the format that Event Grid should + expect for incoming events published to the domain. Possible values + include: 'EventGridSchema', 'CustomEventSchema', 'CloudEventV01Schema' + :type input_schema: str or ~azure.mgmt.eventgrid.models.InputSchema + :param input_schema_mapping: Information about the InputSchemaMapping + which specified the info about mapping event payload. + :type input_schema_mapping: + ~azure.mgmt.eventgrid.models.InputSchemaMapping + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'endpoint': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'endpoint': {'key': 'properties.endpoint', 'type': 'str'}, + 'input_schema': {'key': 'properties.inputSchema', 'type': 'str'}, + 'input_schema_mapping': {'key': 'properties.inputSchemaMapping', 'type': 'InputSchemaMapping'}, + } + + def __init__(self, **kwargs): + super(Domain, self).__init__(**kwargs) + self.provisioning_state = None + self.endpoint = None + self.input_schema = kwargs.get('input_schema', None) + self.input_schema_mapping = kwargs.get('input_schema_mapping', None) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_paged.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_paged.py new file mode 100644 index 000000000000..ed7fa29c5786 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DomainPaged(Paged): + """ + A paging container for iterating over a list of :class:`Domain ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Domain]'} + } + + def __init__(self, *args, **kwargs): + + super(DomainPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_py3.py new file mode 100644 index 000000000000..3ad4d5ed9b64 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_py3.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource_py3 import TrackedResource + + +class Domain(TrackedResource): + """EventGrid Domain. + + 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: Fully qualified identifier of the resource + :vartype id: str + :ivar name: Name of the resource + :vartype name: str + :ivar type: Type of the resource + :vartype type: str + :param location: Required. Location of the resource + :type location: str + :param tags: Tags of the resource + :type tags: dict[str, str] + :ivar provisioning_state: Provisioning state of the domain. Possible + values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', + 'Canceled', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.eventgrid.models.DomainProvisioningState + :ivar endpoint: Endpoint for the domain. + :vartype endpoint: str + :param input_schema: This determines the format that Event Grid should + expect for incoming events published to the domain. Possible values + include: 'EventGridSchema', 'CustomEventSchema', 'CloudEventV01Schema' + :type input_schema: str or ~azure.mgmt.eventgrid.models.InputSchema + :param input_schema_mapping: Information about the InputSchemaMapping + which specified the info about mapping event payload. + :type input_schema_mapping: + ~azure.mgmt.eventgrid.models.InputSchemaMapping + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'endpoint': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'endpoint': {'key': 'properties.endpoint', 'type': 'str'}, + 'input_schema': {'key': 'properties.inputSchema', 'type': 'str'}, + 'input_schema_mapping': {'key': 'properties.inputSchemaMapping', 'type': 'InputSchemaMapping'}, + } + + def __init__(self, *, location: str, tags=None, input_schema=None, input_schema_mapping=None, **kwargs) -> None: + super(Domain, self).__init__(location=location, tags=tags, **kwargs) + self.provisioning_state = None + self.endpoint = None + self.input_schema = input_schema + self.input_schema_mapping = input_schema_mapping diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_regenerate_key_request.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_regenerate_key_request.py new file mode 100644 index 000000000000..cacf0e74fb26 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_regenerate_key_request.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainRegenerateKeyRequest(Model): + """Domain regenerate share access key request. + + All required parameters must be populated in order to send to Azure. + + :param key_name: Required. Key name to regenerate key1 or key2 + :type key_name: str + """ + + _validation = { + 'key_name': {'required': True}, + } + + _attribute_map = { + 'key_name': {'key': 'keyName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DomainRegenerateKeyRequest, self).__init__(**kwargs) + self.key_name = kwargs.get('key_name', None) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_regenerate_key_request_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_regenerate_key_request_py3.py new file mode 100644 index 000000000000..9d024c87c0c6 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_regenerate_key_request_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainRegenerateKeyRequest(Model): + """Domain regenerate share access key request. + + All required parameters must be populated in order to send to Azure. + + :param key_name: Required. Key name to regenerate key1 or key2 + :type key_name: str + """ + + _validation = { + 'key_name': {'required': True}, + } + + _attribute_map = { + 'key_name': {'key': 'keyName', 'type': 'str'}, + } + + def __init__(self, *, key_name: str, **kwargs) -> None: + super(DomainRegenerateKeyRequest, self).__init__(**kwargs) + self.key_name = key_name diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_shared_access_keys.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_shared_access_keys.py new file mode 100644 index 000000000000..d04032da4981 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_shared_access_keys.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainSharedAccessKeys(Model): + """Shared access keys of the Domain. + + :param key1: Shared access key1 for the domain. + :type key1: str + :param key2: Shared access key2 for the domain. + :type key2: str + """ + + _attribute_map = { + 'key1': {'key': 'key1', 'type': 'str'}, + 'key2': {'key': 'key2', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DomainSharedAccessKeys, self).__init__(**kwargs) + self.key1 = kwargs.get('key1', None) + self.key2 = kwargs.get('key2', None) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_shared_access_keys_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_shared_access_keys_py3.py new file mode 100644 index 000000000000..2c13d4ab0367 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_shared_access_keys_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainSharedAccessKeys(Model): + """Shared access keys of the Domain. + + :param key1: Shared access key1 for the domain. + :type key1: str + :param key2: Shared access key2 for the domain. + :type key2: str + """ + + _attribute_map = { + 'key1': {'key': 'key1', 'type': 'str'}, + 'key2': {'key': 'key2', 'type': 'str'}, + } + + def __init__(self, *, key1: str=None, key2: str=None, **kwargs) -> None: + super(DomainSharedAccessKeys, self).__init__(**kwargs) + self.key1 = key1 + self.key2 = key2 diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic.py new file mode 100644 index 000000000000..df6ae9d607d4 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic.py @@ -0,0 +1,42 @@ +# 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 .resource import Resource + + +class DomainTopic(Resource): + """Domain Topic. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified identifier of the resource + :vartype id: str + :ivar name: Name of the resource + :vartype name: str + :ivar type: Type of the resource + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DomainTopic, self).__init__(**kwargs) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic_paged.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic_paged.py new file mode 100644 index 000000000000..b5f599064d3e --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DomainTopicPaged(Paged): + """ + A paging container for iterating over a list of :class:`DomainTopic ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DomainTopic]'} + } + + def __init__(self, *args, **kwargs): + + super(DomainTopicPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic_py3.py new file mode 100644 index 000000000000..04e31b7eae80 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_topic_py3.py @@ -0,0 +1,42 @@ +# 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 .resource_py3 import Resource + + +class DomainTopic(Resource): + """Domain Topic. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified identifier of the resource + :vartype id: str + :ivar name: Name of the resource + :vartype name: str + :ivar type: Type of the resource + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(DomainTopic, self).__init__(**kwargs) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_update_parameters.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_update_parameters.py new file mode 100644 index 000000000000..1bc4fca2bc30 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_update_parameters.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainUpdateParameters(Model): + """Properties of the Domain update. + + :param tags: Tags of the domains resource + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(DomainUpdateParameters, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_update_parameters_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_update_parameters_py3.py new file mode 100644 index 000000000000..f876c6e4adbd --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/domain_update_parameters_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainUpdateParameters(Model): + """Properties of the Domain update. + + :param tags: Tags of the domains resource + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(DomainUpdateParameters, self).__init__(**kwargs) + self.tags = tags diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_grid_management_client_enums.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_grid_management_client_enums.py index 3a265b2304c5..2c766d90cdb4 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_grid_management_client_enums.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_grid_management_client_enums.py @@ -12,7 +12,7 @@ from enum import Enum -class EventSubscriptionProvisioningState(str, Enum): +class DomainProvisioningState(str, Enum): creating = "Creating" updating = "Updating" @@ -20,17 +20,16 @@ class EventSubscriptionProvisioningState(str, Enum): succeeded = "Succeeded" canceled = "Canceled" failed = "Failed" - awaiting_manual_action = "AwaitingManualAction" -class EventDeliverySchema(str, Enum): +class InputSchema(str, Enum): event_grid_schema = "EventGridSchema" - input_event_schema = "InputEventSchema" + custom_event_schema = "CustomEventSchema" cloud_event_v01_schema = "CloudEventV01Schema" -class TopicProvisioningState(str, Enum): +class EventSubscriptionProvisioningState(str, Enum): creating = "Creating" updating = "Updating" @@ -38,13 +37,24 @@ class TopicProvisioningState(str, Enum): succeeded = "Succeeded" canceled = "Canceled" failed = "Failed" + awaiting_manual_action = "AwaitingManualAction" -class InputSchema(str, Enum): +class EventDeliverySchema(str, Enum): event_grid_schema = "EventGridSchema" - custom_event_schema = "CustomEventSchema" cloud_event_v01_schema = "CloudEventV01Schema" + custom_input_schema = "CustomInputSchema" + + +class TopicProvisioningState(str, Enum): + + creating = "Creating" + updating = "Updating" + deleting = "Deleting" + succeeded = "Succeeded" + canceled = "Canceled" + failed = "Failed" class ResourceRegionType(str, Enum): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_hub_event_subscription_destination_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_hub_event_subscription_destination_py3.py index 5d6d29000b39..3e86991a1375 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_hub_event_subscription_destination_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_hub_event_subscription_destination_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .event_subscription_destination import EventSubscriptionDestination +from .event_subscription_destination_py3 import EventSubscriptionDestination class EventHubEventSubscriptionDestination(EventSubscriptionDestination): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription.py index 747419ac4275..fb5f0a3419ce 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription.py @@ -39,10 +39,11 @@ class EventSubscription(Resource): :type filter: ~azure.mgmt.eventgrid.models.EventSubscriptionFilter :param labels: List of user defined labels. :type labels: list[str] + :param expiration_time_utc: Expiration time of the event subscription. + :type expiration_time_utc: datetime :param event_delivery_schema: The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', - 'InputEventSchema', 'CloudEventV01Schema'. Default value: - "EventGridSchema" . + 'CloudEventV01Schema', 'CustomInputSchema' :type event_delivery_schema: str or ~azure.mgmt.eventgrid.models.EventDeliverySchema :param retry_policy: The retry policy for events. This can be used to @@ -71,6 +72,7 @@ class EventSubscription(Resource): 'destination': {'key': 'properties.destination', 'type': 'EventSubscriptionDestination'}, 'filter': {'key': 'properties.filter', 'type': 'EventSubscriptionFilter'}, 'labels': {'key': 'properties.labels', 'type': '[str]'}, + 'expiration_time_utc': {'key': 'properties.expirationTimeUtc', 'type': 'iso-8601'}, 'event_delivery_schema': {'key': 'properties.eventDeliverySchema', 'type': 'str'}, 'retry_policy': {'key': 'properties.retryPolicy', 'type': 'RetryPolicy'}, 'dead_letter_destination': {'key': 'properties.deadLetterDestination', 'type': 'DeadLetterDestination'}, @@ -83,6 +85,7 @@ def __init__(self, **kwargs): self.destination = kwargs.get('destination', None) self.filter = kwargs.get('filter', None) self.labels = kwargs.get('labels', None) - self.event_delivery_schema = kwargs.get('event_delivery_schema', "EventGridSchema") + self.expiration_time_utc = kwargs.get('expiration_time_utc', None) + self.event_delivery_schema = kwargs.get('event_delivery_schema', None) self.retry_policy = kwargs.get('retry_policy', None) self.dead_letter_destination = kwargs.get('dead_letter_destination', None) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_filter.py index 0b2466b19281..df5e5050e604 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_filter.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_filter.py @@ -33,6 +33,8 @@ class EventSubscriptionFilter(Model): SubjectEndsWith properties of the filter should be compared in a case sensitive manner. Default value: False . :type is_subject_case_sensitive: bool + :param advanced_filters: A list of advanced filters. + :type advanced_filters: list[~azure.mgmt.eventgrid.models.AdvancedFilter] """ _attribute_map = { @@ -40,6 +42,7 @@ class EventSubscriptionFilter(Model): 'subject_ends_with': {'key': 'subjectEndsWith', 'type': 'str'}, 'included_event_types': {'key': 'includedEventTypes', 'type': '[str]'}, 'is_subject_case_sensitive': {'key': 'isSubjectCaseSensitive', 'type': 'bool'}, + 'advanced_filters': {'key': 'advancedFilters', 'type': '[AdvancedFilter]'}, } def __init__(self, **kwargs): @@ -48,3 +51,4 @@ def __init__(self, **kwargs): self.subject_ends_with = kwargs.get('subject_ends_with', None) self.included_event_types = kwargs.get('included_event_types', None) self.is_subject_case_sensitive = kwargs.get('is_subject_case_sensitive', False) + self.advanced_filters = kwargs.get('advanced_filters', None) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_filter_py3.py index cc9ddbce65d2..16c946cd2363 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_filter_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_filter_py3.py @@ -33,6 +33,8 @@ class EventSubscriptionFilter(Model): SubjectEndsWith properties of the filter should be compared in a case sensitive manner. Default value: False . :type is_subject_case_sensitive: bool + :param advanced_filters: A list of advanced filters. + :type advanced_filters: list[~azure.mgmt.eventgrid.models.AdvancedFilter] """ _attribute_map = { @@ -40,11 +42,13 @@ class EventSubscriptionFilter(Model): 'subject_ends_with': {'key': 'subjectEndsWith', 'type': 'str'}, 'included_event_types': {'key': 'includedEventTypes', 'type': '[str]'}, 'is_subject_case_sensitive': {'key': 'isSubjectCaseSensitive', 'type': 'bool'}, + 'advanced_filters': {'key': 'advancedFilters', 'type': '[AdvancedFilter]'}, } - def __init__(self, *, subject_begins_with: str=None, subject_ends_with: str=None, included_event_types=None, is_subject_case_sensitive: bool=False, **kwargs) -> None: + def __init__(self, *, subject_begins_with: str=None, subject_ends_with: str=None, included_event_types=None, is_subject_case_sensitive: bool=False, advanced_filters=None, **kwargs) -> None: super(EventSubscriptionFilter, self).__init__(**kwargs) self.subject_begins_with = subject_begins_with self.subject_ends_with = subject_ends_with self.included_event_types = included_event_types self.is_subject_case_sensitive = is_subject_case_sensitive + self.advanced_filters = advanced_filters diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_py3.py index 2343a939d830..246622ce3702 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .resource import Resource +from .resource_py3 import Resource class EventSubscription(Resource): @@ -39,10 +39,11 @@ class EventSubscription(Resource): :type filter: ~azure.mgmt.eventgrid.models.EventSubscriptionFilter :param labels: List of user defined labels. :type labels: list[str] + :param expiration_time_utc: Expiration time of the event subscription. + :type expiration_time_utc: datetime :param event_delivery_schema: The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', - 'InputEventSchema', 'CloudEventV01Schema'. Default value: - "EventGridSchema" . + 'CloudEventV01Schema', 'CustomInputSchema' :type event_delivery_schema: str or ~azure.mgmt.eventgrid.models.EventDeliverySchema :param retry_policy: The retry policy for events. This can be used to @@ -71,18 +72,20 @@ class EventSubscription(Resource): 'destination': {'key': 'properties.destination', 'type': 'EventSubscriptionDestination'}, 'filter': {'key': 'properties.filter', 'type': 'EventSubscriptionFilter'}, 'labels': {'key': 'properties.labels', 'type': '[str]'}, + 'expiration_time_utc': {'key': 'properties.expirationTimeUtc', 'type': 'iso-8601'}, 'event_delivery_schema': {'key': 'properties.eventDeliverySchema', 'type': 'str'}, 'retry_policy': {'key': 'properties.retryPolicy', 'type': 'RetryPolicy'}, 'dead_letter_destination': {'key': 'properties.deadLetterDestination', 'type': 'DeadLetterDestination'}, } - def __init__(self, *, destination=None, filter=None, labels=None, event_delivery_schema="EventGridSchema", retry_policy=None, dead_letter_destination=None, **kwargs) -> None: + def __init__(self, *, destination=None, filter=None, labels=None, expiration_time_utc=None, event_delivery_schema=None, retry_policy=None, dead_letter_destination=None, **kwargs) -> None: super(EventSubscription, self).__init__(**kwargs) self.topic = None self.provisioning_state = None self.destination = destination self.filter = filter self.labels = labels + self.expiration_time_utc = expiration_time_utc self.event_delivery_schema = event_delivery_schema self.retry_policy = retry_policy self.dead_letter_destination = dead_letter_destination diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_update_parameters.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_update_parameters.py index c077f27fc04e..5371a06679cc 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_update_parameters.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_update_parameters.py @@ -23,10 +23,12 @@ class EventSubscriptionUpdateParameters(Model): :type filter: ~azure.mgmt.eventgrid.models.EventSubscriptionFilter :param labels: List of user defined labels. :type labels: list[str] + :param expiration_time_utc: Information about the expiration time for the + event subscription. + :type expiration_time_utc: datetime :param event_delivery_schema: The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', - 'InputEventSchema', 'CloudEventV01Schema'. Default value: - "EventGridSchema" . + 'CloudEventV01Schema', 'CustomInputSchema' :type event_delivery_schema: str or ~azure.mgmt.eventgrid.models.EventDeliverySchema :param retry_policy: The retry policy for events. This can be used to @@ -42,6 +44,7 @@ class EventSubscriptionUpdateParameters(Model): 'destination': {'key': 'destination', 'type': 'EventSubscriptionDestination'}, 'filter': {'key': 'filter', 'type': 'EventSubscriptionFilter'}, 'labels': {'key': 'labels', 'type': '[str]'}, + 'expiration_time_utc': {'key': 'expirationTimeUtc', 'type': 'iso-8601'}, 'event_delivery_schema': {'key': 'eventDeliverySchema', 'type': 'str'}, 'retry_policy': {'key': 'retryPolicy', 'type': 'RetryPolicy'}, 'dead_letter_destination': {'key': 'deadLetterDestination', 'type': 'DeadLetterDestination'}, @@ -52,6 +55,7 @@ def __init__(self, **kwargs): self.destination = kwargs.get('destination', None) self.filter = kwargs.get('filter', None) self.labels = kwargs.get('labels', None) - self.event_delivery_schema = kwargs.get('event_delivery_schema', "EventGridSchema") + self.expiration_time_utc = kwargs.get('expiration_time_utc', None) + self.event_delivery_schema = kwargs.get('event_delivery_schema', None) self.retry_policy = kwargs.get('retry_policy', None) self.dead_letter_destination = kwargs.get('dead_letter_destination', None) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_update_parameters_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_update_parameters_py3.py index 18bb5ec06d64..3f415aa3e8cb 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_update_parameters_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_subscription_update_parameters_py3.py @@ -23,10 +23,12 @@ class EventSubscriptionUpdateParameters(Model): :type filter: ~azure.mgmt.eventgrid.models.EventSubscriptionFilter :param labels: List of user defined labels. :type labels: list[str] + :param expiration_time_utc: Information about the expiration time for the + event subscription. + :type expiration_time_utc: datetime :param event_delivery_schema: The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', - 'InputEventSchema', 'CloudEventV01Schema'. Default value: - "EventGridSchema" . + 'CloudEventV01Schema', 'CustomInputSchema' :type event_delivery_schema: str or ~azure.mgmt.eventgrid.models.EventDeliverySchema :param retry_policy: The retry policy for events. This can be used to @@ -42,16 +44,18 @@ class EventSubscriptionUpdateParameters(Model): 'destination': {'key': 'destination', 'type': 'EventSubscriptionDestination'}, 'filter': {'key': 'filter', 'type': 'EventSubscriptionFilter'}, 'labels': {'key': 'labels', 'type': '[str]'}, + 'expiration_time_utc': {'key': 'expirationTimeUtc', 'type': 'iso-8601'}, 'event_delivery_schema': {'key': 'eventDeliverySchema', 'type': 'str'}, 'retry_policy': {'key': 'retryPolicy', 'type': 'RetryPolicy'}, 'dead_letter_destination': {'key': 'deadLetterDestination', 'type': 'DeadLetterDestination'}, } - def __init__(self, *, destination=None, filter=None, labels=None, event_delivery_schema="EventGridSchema", retry_policy=None, dead_letter_destination=None, **kwargs) -> None: + def __init__(self, *, destination=None, filter=None, labels=None, expiration_time_utc=None, event_delivery_schema=None, retry_policy=None, dead_letter_destination=None, **kwargs) -> None: super(EventSubscriptionUpdateParameters, self).__init__(**kwargs) self.destination = destination self.filter = filter self.labels = labels + self.expiration_time_utc = expiration_time_utc self.event_delivery_schema = event_delivery_schema self.retry_policy = retry_policy self.dead_letter_destination = dead_letter_destination diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_type_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_type_py3.py index 1ecafe196244..b2fb69868f3f 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_type_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/event_type_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .resource import Resource +from .resource_py3 import Resource class EventType(Resource): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/hybrid_connection_event_subscription_destination_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/hybrid_connection_event_subscription_destination_py3.py index 54d0fe6e5202..cbc2c2800399 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/hybrid_connection_event_subscription_destination_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/hybrid_connection_event_subscription_destination_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .event_subscription_destination import EventSubscriptionDestination +from .event_subscription_destination_py3 import EventSubscriptionDestination class HybridConnectionEventSubscriptionDestination(EventSubscriptionDestination): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/json_input_schema_mapping_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/json_input_schema_mapping_py3.py index 64c492a5c4f2..4d3ff8a1b8f4 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/json_input_schema_mapping_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/json_input_schema_mapping_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .input_schema_mapping import InputSchemaMapping +from .input_schema_mapping_py3 import InputSchemaMapping class JsonInputSchemaMapping(InputSchemaMapping): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_advanced_filter.py new file mode 100644 index 000000000000..d613515b9528 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class NumberGreaterThanAdvancedFilter(AdvancedFilter): + """NumberGreaterThan Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: float + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(NumberGreaterThanAdvancedFilter, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.operator_type = 'NumberGreaterThan' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_advanced_filter_py3.py new file mode 100644 index 000000000000..29a878af007f --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class NumberGreaterThanAdvancedFilter(AdvancedFilter): + """NumberGreaterThan Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: float + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, *, key: str=None, value: float=None, **kwargs) -> None: + super(NumberGreaterThanAdvancedFilter, self).__init__(key=key, **kwargs) + self.value = value + self.operator_type = 'NumberGreaterThan' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_or_equals_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_or_equals_advanced_filter.py new file mode 100644 index 000000000000..47e4bf38b609 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_or_equals_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class NumberGreaterThanOrEqualsAdvancedFilter(AdvancedFilter): + """NumberGreaterThanOrEquals Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: float + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(NumberGreaterThanOrEqualsAdvancedFilter, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.operator_type = 'NumberGreaterThanOrEquals' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_or_equals_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_or_equals_advanced_filter_py3.py new file mode 100644 index 000000000000..07597f50cf46 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_greater_than_or_equals_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class NumberGreaterThanOrEqualsAdvancedFilter(AdvancedFilter): + """NumberGreaterThanOrEquals Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: float + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, *, key: str=None, value: float=None, **kwargs) -> None: + super(NumberGreaterThanOrEqualsAdvancedFilter, self).__init__(key=key, **kwargs) + self.value = value + self.operator_type = 'NumberGreaterThanOrEquals' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_in_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_in_advanced_filter.py new file mode 100644 index 000000000000..ab5211aa1247 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_in_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class NumberInAdvancedFilter(AdvancedFilter): + """NumberIn filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[float] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[float]'}, + } + + def __init__(self, **kwargs): + super(NumberInAdvancedFilter, self).__init__(**kwargs) + self.values = kwargs.get('values', None) + self.operator_type = 'NumberIn' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_in_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_in_advanced_filter_py3.py new file mode 100644 index 000000000000..5358d30a87df --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_in_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class NumberInAdvancedFilter(AdvancedFilter): + """NumberIn filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[float] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[float]'}, + } + + def __init__(self, *, key: str=None, values=None, **kwargs) -> None: + super(NumberInAdvancedFilter, self).__init__(key=key, **kwargs) + self.values = values + self.operator_type = 'NumberIn' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_advanced_filter.py new file mode 100644 index 000000000000..f2f24e157e32 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class NumberLessThanAdvancedFilter(AdvancedFilter): + """NumberLessThan Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: float + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(NumberLessThanAdvancedFilter, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.operator_type = 'NumberLessThan' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_advanced_filter_py3.py new file mode 100644 index 000000000000..f1e2d64c692f --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class NumberLessThanAdvancedFilter(AdvancedFilter): + """NumberLessThan Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: float + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, *, key: str=None, value: float=None, **kwargs) -> None: + super(NumberLessThanAdvancedFilter, self).__init__(key=key, **kwargs) + self.value = value + self.operator_type = 'NumberLessThan' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_or_equals_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_or_equals_advanced_filter.py new file mode 100644 index 000000000000..fc563b5f1480 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_or_equals_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class NumberLessThanOrEqualsAdvancedFilter(AdvancedFilter): + """NumberLessThanOrEquals Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: float + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(NumberLessThanOrEqualsAdvancedFilter, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.operator_type = 'NumberLessThanOrEquals' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_or_equals_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_or_equals_advanced_filter_py3.py new file mode 100644 index 000000000000..d0cb3a127cec --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_less_than_or_equals_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class NumberLessThanOrEqualsAdvancedFilter(AdvancedFilter): + """NumberLessThanOrEquals Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param value: The filter value + :type value: float + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, *, key: str=None, value: float=None, **kwargs) -> None: + super(NumberLessThanOrEqualsAdvancedFilter, self).__init__(key=key, **kwargs) + self.value = value + self.operator_type = 'NumberLessThanOrEquals' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_not_in_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_not_in_advanced_filter.py new file mode 100644 index 000000000000..790f5f48697f --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_not_in_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class NumberNotInAdvancedFilter(AdvancedFilter): + """NumberNotIn Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[float] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[float]'}, + } + + def __init__(self, **kwargs): + super(NumberNotInAdvancedFilter, self).__init__(**kwargs) + self.values = kwargs.get('values', None) + self.operator_type = 'NumberNotIn' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_not_in_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_not_in_advanced_filter_py3.py new file mode 100644 index 000000000000..8fa0af24af0e --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/number_not_in_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class NumberNotInAdvancedFilter(AdvancedFilter): + """NumberNotIn Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[float] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[float]'}, + } + + def __init__(self, *, key: str=None, values=None, **kwargs) -> None: + super(NumberNotInAdvancedFilter, self).__init__(key=key, **kwargs) + self.values = values + self.operator_type = 'NumberNotIn' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/storage_blob_dead_letter_destination_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/storage_blob_dead_letter_destination_py3.py index 44c3330323ce..65e0813f852e 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/storage_blob_dead_letter_destination_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/storage_blob_dead_letter_destination_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .dead_letter_destination import DeadLetterDestination +from .dead_letter_destination_py3 import DeadLetterDestination class StorageBlobDeadLetterDestination(DeadLetterDestination): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/storage_queue_event_subscription_destination_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/storage_queue_event_subscription_destination_py3.py index 3b331c76ac26..0804b774727a 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/storage_queue_event_subscription_destination_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/storage_queue_event_subscription_destination_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .event_subscription_destination import EventSubscriptionDestination +from .event_subscription_destination_py3 import EventSubscriptionDestination class StorageQueueEventSubscriptionDestination(EventSubscriptionDestination): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_begins_with_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_begins_with_advanced_filter.py new file mode 100644 index 000000000000..a6d1f91f8eaa --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_begins_with_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class StringBeginsWithAdvancedFilter(AdvancedFilter): + """StringBeginsWith Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(StringBeginsWithAdvancedFilter, self).__init__(**kwargs) + self.values = kwargs.get('values', None) + self.operator_type = 'StringBeginsWith' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_begins_with_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_begins_with_advanced_filter_py3.py new file mode 100644 index 000000000000..4b33c1bf1bd1 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_begins_with_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class StringBeginsWithAdvancedFilter(AdvancedFilter): + """StringBeginsWith Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, *, key: str=None, values=None, **kwargs) -> None: + super(StringBeginsWithAdvancedFilter, self).__init__(key=key, **kwargs) + self.values = values + self.operator_type = 'StringBeginsWith' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_contains_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_contains_advanced_filter.py new file mode 100644 index 000000000000..04667aeeb31d --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_contains_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class StringContainsAdvancedFilter(AdvancedFilter): + """StringContains Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(StringContainsAdvancedFilter, self).__init__(**kwargs) + self.values = kwargs.get('values', None) + self.operator_type = 'StringContains' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_contains_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_contains_advanced_filter_py3.py new file mode 100644 index 000000000000..53b7a530d9ed --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_contains_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class StringContainsAdvancedFilter(AdvancedFilter): + """StringContains Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, *, key: str=None, values=None, **kwargs) -> None: + super(StringContainsAdvancedFilter, self).__init__(key=key, **kwargs) + self.values = values + self.operator_type = 'StringContains' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_ends_with_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_ends_with_advanced_filter.py new file mode 100644 index 000000000000..8413d1ae330d --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_ends_with_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class StringEndsWithAdvancedFilter(AdvancedFilter): + """StringEndsWith Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(StringEndsWithAdvancedFilter, self).__init__(**kwargs) + self.values = kwargs.get('values', None) + self.operator_type = 'StringEndsWith' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_ends_with_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_ends_with_advanced_filter_py3.py new file mode 100644 index 000000000000..47b469c98e79 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_ends_with_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class StringEndsWithAdvancedFilter(AdvancedFilter): + """StringEndsWith Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, *, key: str=None, values=None, **kwargs) -> None: + super(StringEndsWithAdvancedFilter, self).__init__(key=key, **kwargs) + self.values = values + self.operator_type = 'StringEndsWith' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_in_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_in_advanced_filter.py new file mode 100644 index 000000000000..52b480d90433 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_in_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class StringInAdvancedFilter(AdvancedFilter): + """StringIn Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(StringInAdvancedFilter, self).__init__(**kwargs) + self.values = kwargs.get('values', None) + self.operator_type = 'StringIn' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_in_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_in_advanced_filter_py3.py new file mode 100644 index 000000000000..1da9dc34ac6b --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_in_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class StringInAdvancedFilter(AdvancedFilter): + """StringIn Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, *, key: str=None, values=None, **kwargs) -> None: + super(StringInAdvancedFilter, self).__init__(key=key, **kwargs) + self.values = values + self.operator_type = 'StringIn' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_not_in_advanced_filter.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_not_in_advanced_filter.py new file mode 100644 index 000000000000..0621f0f9dfc4 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_not_in_advanced_filter.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter import AdvancedFilter + + +class StringNotInAdvancedFilter(AdvancedFilter): + """StringNotIn Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(StringNotInAdvancedFilter, self).__init__(**kwargs) + self.values = kwargs.get('values', None) + self.operator_type = 'StringNotIn' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_not_in_advanced_filter_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_not_in_advanced_filter_py3.py new file mode 100644 index 000000000000..d115f4c12266 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/string_not_in_advanced_filter_py3.py @@ -0,0 +1,42 @@ +# 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 .advanced_filter_py3 import AdvancedFilter + + +class StringNotInAdvancedFilter(AdvancedFilter): + """StringNotIn Filter. + + All required parameters must be populated in order to send to Azure. + + :param key: The filter key. Represents an event property with upto two + levels of nesting. + :type key: str + :param operator_type: Required. Constant filled by server. + :type operator_type: str + :param values: The set of filter values + :type values: list[str] + """ + + _validation = { + 'operator_type': {'required': True}, + } + + _attribute_map = { + 'key': {'key': 'key', 'type': 'str'}, + 'operator_type': {'key': 'operatorType', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + } + + def __init__(self, *, key: str=None, values=None, **kwargs) -> None: + super(StringNotInAdvancedFilter, self).__init__(key=key, **kwargs) + self.values = values + self.operator_type = 'StringNotIn' diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/topic_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/topic_py3.py index 59235fefaed1..9c562e93663a 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/topic_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/topic_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .tracked_resource import TrackedResource +from .tracked_resource_py3 import TrackedResource class Topic(TrackedResource): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/topic_type_info_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/topic_type_info_py3.py index 2061b765cba3..c5bae7879489 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/topic_type_info_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/topic_type_info_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .resource import Resource +from .resource_py3 import Resource class TopicTypeInfo(Resource): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/tracked_resource_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/tracked_resource_py3.py index a1f410b1b1ae..dd17171e3b84 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/tracked_resource_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/tracked_resource_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .resource import Resource +from .resource_py3 import Resource class TrackedResource(Resource): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/web_hook_event_subscription_destination_py3.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/web_hook_event_subscription_destination_py3.py index 924e23deb39a..2aa7e58c0cf3 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/web_hook_event_subscription_destination_py3.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/models/web_hook_event_subscription_destination_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .event_subscription_destination import EventSubscriptionDestination +from .event_subscription_destination_py3 import EventSubscriptionDestination class WebHookEventSubscriptionDestination(EventSubscriptionDestination): diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/__init__.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/__init__.py index db9b4311e47c..809a02494719 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/__init__.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/__init__.py @@ -9,12 +9,16 @@ # regenerated. # -------------------------------------------------------------------------- +from .domains_operations import DomainsOperations +from .domain_topics_operations import DomainTopicsOperations from .event_subscriptions_operations import EventSubscriptionsOperations from .operations import Operations from .topics_operations import TopicsOperations from .topic_types_operations import TopicTypesOperations __all__ = [ + 'DomainsOperations', + 'DomainTopicsOperations', 'EventSubscriptionsOperations', 'Operations', 'TopicsOperations', diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/domain_topics_operations.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/domain_topics_operations.py new file mode 100644 index 000000000000..8c89845989e1 --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/domain_topics_operations.py @@ -0,0 +1,179 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class DomainTopicsOperations(object): + """DomainTopicsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-09-15-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-09-15-preview" + + self.config = config + + def get( + self, resource_group_name, domain_name, topic_name, custom_headers=None, raw=False, **operation_config): + """Get a domain topic. + + Get properties of a domain topic. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Name of the domain + :type domain_name: str + :param topic_name: Name of the topic + :type topic_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DomainTopic or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.eventgrid.models.DomainTopic or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str'), + 'topicName': self._serialize.url("topic_name", topic_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DomainTopic', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{topicName}'} + + def list_by_domain( + self, resource_group_name, domain_name, custom_headers=None, raw=False, **operation_config): + """List domain topics. + + List all the topics in a domain. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Domain name. + :type domain_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DomainTopic + :rtype: + ~azure.mgmt.eventgrid.models.DomainTopicPaged[~azure.mgmt.eventgrid.models.DomainTopic] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_domain.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DomainTopicPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DomainTopicPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_domain.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics'} diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/domains_operations.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/domains_operations.py new file mode 100644 index 000000000000..f7f9bd42690d --- /dev/null +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/domains_operations.py @@ -0,0 +1,669 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class DomainsOperations(object): + """DomainsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-09-15-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-09-15-preview" + + self.config = config + + def get( + self, resource_group_name, domain_name, custom_headers=None, raw=False, **operation_config): + """Get a domain. + + Get properties of a domain. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Name of the domain + :type domain_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Domain or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.eventgrid.models.Domain or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Domain', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}'} + + + def _create_or_update_initial( + self, resource_group_name, domain_name, domain_info, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(domain_info, 'Domain') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('Domain', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, domain_name, domain_info, custom_headers=None, raw=False, polling=True, **operation_config): + """Create a domain. + + Asynchronously creates a new domain with the specified parameters. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Name of the domain + :type domain_name: str + :param domain_info: Domain information + :type domain_info: ~azure.mgmt.eventgrid.models.Domain + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Domain or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.eventgrid.models.Domain] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.eventgrid.models.Domain]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + domain_name=domain_name, + domain_info=domain_info, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Domain', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}'} + + + def _delete_initial( + self, resource_group_name, domain_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, domain_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Delete a domain. + + Delete existing domain. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Name of the domain + :type domain_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + domain_name=domain_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}'} + + + def _update_initial( + self, resource_group_name, domain_name, tags=None, custom_headers=None, raw=False, **operation_config): + domain_update_parameters = models.DomainUpdateParameters(tags=tags) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(domain_update_parameters, 'DomainUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('Domain', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, domain_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Update a domain. + + Asynchronously updates a domain with the specified parameters. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Name of the domain + :type domain_name: str + :param tags: Tags of the domains resource + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Domain or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.eventgrid.models.Domain] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.eventgrid.models.Domain]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + domain_name=domain_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Domain', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}'} + + def list_by_subscription( + self, custom_headers=None, raw=False, **operation_config): + """List domains under an Azure subscription. + + List all the domains under an Azure subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Domain + :rtype: + ~azure.mgmt.eventgrid.models.DomainPaged[~azure.mgmt.eventgrid.models.Domain] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_subscription.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DomainPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DomainPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/domains'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """List domains under a resource group. + + List all the domains under a resource group. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Domain + :rtype: + ~azure.mgmt.eventgrid.models.DomainPaged[~azure.mgmt.eventgrid.models.Domain] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DomainPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DomainPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains'} + + def list_shared_access_keys( + self, resource_group_name, domain_name, custom_headers=None, raw=False, **operation_config): + """List keys for a domain. + + List the two keys used to publish to a domain. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Name of the domain + :type domain_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DomainSharedAccessKeys or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.eventgrid.models.DomainSharedAccessKeys or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_shared_access_keys.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DomainSharedAccessKeys', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_shared_access_keys.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/listKeys'} + + def regenerate_key( + self, resource_group_name, domain_name, key_name, custom_headers=None, raw=False, **operation_config): + """Regenerate key for a domain. + + Regenerate a shared access key for a domain. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Name of the domain + :type domain_name: str + :param key_name: Key name to regenerate key1 or key2 + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DomainSharedAccessKeys or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.eventgrid.models.DomainSharedAccessKeys or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + regenerate_key_request = models.DomainRegenerateKeyRequest(key_name=key_name) + + # Construct URL + url = self.regenerate_key.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(regenerate_key_request, 'DomainRegenerateKeyRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DomainSharedAccessKeys', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + regenerate_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/regenerateKey'} diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/event_subscriptions_operations.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/event_subscriptions_operations.py index 4c0f4207c460..e0babad2bffc 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/event_subscriptions_operations.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/event_subscriptions_operations.py @@ -25,7 +25,7 @@ class EventSubscriptionsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-05-01-preview". + :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-09-15-preview". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-05-01-preview" + self.api_version = "2018-09-15-preview" self.config = config @@ -82,7 +82,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,8 +91,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -128,6 +128,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -140,9 +141,8 @@ def _create_or_update_initial( body_content = self._serialize.body(event_subscription_info, 'EventSubscription') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -244,7 +244,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -253,8 +252,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -334,6 +333,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -346,9 +346,8 @@ def _update_initial( body_content = self._serialize.body(event_subscription_update_parameters, 'EventSubscriptionUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -473,7 +472,7 @@ def get_full_url( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -482,8 +481,8 @@ def get_full_url( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -540,7 +539,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -549,9 +548,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -611,7 +609,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -620,9 +618,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -684,7 +681,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -693,9 +690,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -760,7 +756,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -769,9 +765,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -831,7 +826,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -840,9 +835,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -907,7 +901,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -916,9 +910,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -982,7 +975,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -991,9 +984,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1061,7 +1053,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1070,9 +1062,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1142,7 +1133,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1151,9 +1142,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1172,3 +1162,80 @@ def internal_paging(next_link=None, raw=False): return deserialized list_by_resource.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{providerNamespace}/{resourceTypeName}/{resourceName}/providers/Microsoft.EventGrid/eventSubscriptions'} + + def list_by_domain_topic( + self, resource_group_name, domain_name, topic_name, custom_headers=None, raw=False, **operation_config): + """List all event subscriptions for a specific domain topic. + + List all event subscriptions that have been created for a specific + domain topic. + + :param resource_group_name: The name of the resource group within the + user's subscription. + :type resource_group_name: str + :param domain_name: Name of the top level domain + :type domain_name: str + :param topic_name: Name of the domain topic + :type topic_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of EventSubscription + :rtype: + ~azure.mgmt.eventgrid.models.EventSubscriptionPaged[~azure.mgmt.eventgrid.models.EventSubscription] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_domain_topic.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'domainName': self._serialize.url("domain_name", domain_name, 'str'), + 'topicName': self._serialize.url("topic_name", topic_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.EventSubscriptionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.EventSubscriptionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_domain_topic.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{topicName}/providers/Microsoft.EventGrid/eventSubscriptions'} diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/operations.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/operations.py index 364a1340c93d..d7e84f37b171 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/operations.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/operations.py @@ -23,7 +23,7 @@ class Operations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-05-01-preview". + :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-09-15-preview". """ models = models @@ -33,7 +33,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-05-01-preview" + self.api_version = "2018-09-15-preview" self.config = config @@ -70,7 +70,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -79,9 +79,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/topic_types_operations.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/topic_types_operations.py index da5486135b71..a1bb6fb80e13 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/topic_types_operations.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/topic_types_operations.py @@ -23,7 +23,7 @@ class TopicTypesOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-05-01-preview". + :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-09-15-preview". """ models = models @@ -33,7 +33,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-05-01-preview" + self.api_version = "2018-09-15-preview" self.config = config @@ -69,7 +69,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -78,9 +78,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -131,7 +130,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -140,8 +139,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -198,7 +197,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -207,9 +206,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/topics_operations.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/topics_operations.py index c0edd40647bb..7c58f7ef1a5a 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/topics_operations.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/operations/topics_operations.py @@ -25,7 +25,7 @@ class TopicsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-05-01-preview". + :ivar api_version: Version of the API to be used with the client request. Constant value: "2018-09-15-preview". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-05-01-preview" + self.api_version = "2018-09-15-preview" self.config = config @@ -75,7 +75,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,8 +84,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -122,6 +122,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -134,9 +135,8 @@ def _create_or_update_initial( body_content = self._serialize.body(topic_info, 'Topic') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -225,7 +225,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -234,8 +233,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -310,6 +309,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -322,9 +322,8 @@ def _update_initial( body_content = self._serialize.body(topic_update_parameters, 'TopicUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -431,7 +430,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -440,9 +439,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -502,7 +500,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,9 +509,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -569,7 +566,7 @@ def list_shared_access_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -578,8 +575,8 @@ def list_shared_access_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -638,6 +635,7 @@ def regenerate_key( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -650,9 +648,8 @@ def regenerate_key( body_content = self._serialize.body(regenerate_key_request, 'TopicRegenerateKeyRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -720,7 +717,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -729,9 +726,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/version.py b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/version.py index 8d86cf0470d7..fa6594091164 100644 --- a/azure-mgmt-eventgrid/azure/mgmt/eventgrid/version.py +++ b/azure-mgmt-eventgrid/azure/mgmt/eventgrid/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "2.0.0rc1" +VERSION = "2.0.0rc2" diff --git a/azure-mgmt-eventgrid/azure_bdist_wheel.py b/azure-mgmt-eventgrid/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-eventgrid/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-eventgrid/sdk_packaging.toml b/azure-mgmt-eventgrid/sdk_packaging.toml new file mode 100644 index 000000000000..e23ce4df07ab --- /dev/null +++ b/azure-mgmt-eventgrid/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-eventgrid" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "EventGrid Management" +package_doc_id = "event-grid" +is_stable = false +is_arm = true diff --git a/azure-mgmt-eventgrid/setup.cfg b/azure-mgmt-eventgrid/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-eventgrid/setup.cfg +++ b/azure-mgmt-eventgrid/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-eventgrid/setup.py b/azure-mgmt-eventgrid/setup.py index 8323ed33996b..8fd5d1b00bde 100644 --- a/azure-mgmt-eventgrid/setup.py +++ b/azure-mgmt-eventgrid/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-eventgrid" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_domains_and_advanced_filter.yaml b/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_domains_and_advanced_filter.yaml new file mode 100644 index 000000000000..2a35cd4baf8e --- /dev/null +++ b/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_domains_and_advanced_filter.yaml @@ -0,0 +1,257 @@ +interactions: +- request: + body: '{"location": "westcentralus"}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['29'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1?api-version=2018-09-15-preview + response: + body: {string: '{"properties":{"provisioningState":"Creating","endpoint":null},"location":"westcentralus","tags":null,"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1","name":"kalspythond1","type":"Microsoft.EventGrid/domains"}'} + headers: + azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/28CE187F-D697-4B3A-AE05-1D20D028AA1D?api-version=2018-09-15-preview'] + cache-control: [no-cache] + content-length: ['353'] + content-type: [application/json; charset=utf-8] + date: ['Fri, 26 Oct 2018 04:24:26 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 201, message: Created} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/28CE187F-D697-4B3A-AE05-1D20D028AA1D?api-version=2018-09-15-preview + response: + body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/28CE187F-D697-4B3A-AE05-1D20D028AA1D?api-version=2018-09-15-preview","name":"28ce187f-d697-4b3a-ae05-1d20d028aa1d","status":"Succeeded"}'} + headers: + cache-control: [no-cache] + content-length: ['294'] + content-type: [application/json; charset=utf-8] + date: ['Fri, 26 Oct 2018 04:24:36 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1?api-version=2018-09-15-preview + response: + body: {string: '{"properties":{"provisioningState":"Succeeded","endpoint":"https://kalspythond1.westcentralus-1.eventgrid.azure.net/api/events","inputSchema":"EventGridSchema"},"location":"westcentralus","tags":null,"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1","name":"kalspythond1","type":"Microsoft.EventGrid/domains"}'} + headers: + cache-control: [no-cache] + content-length: ['451'] + content-type: [application/json; charset=utf-8] + date: ['Fri, 26 Oct 2018 04:24:37 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: '{"properties": {"destination": {"endpointType": "WebHook", "properties": + {"endpointUrl": "https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1?code=D5/lX4xgFOvJrgvgZsjhMpg9h/eC3XVdQzGuDvwQuGmrDUfxFNeyiQ=="}}, + "filter": {"isSubjectCaseSensitive": false, "advancedFilters": [{"key": "data.key1", + "operatorType": "NumberLessThan", "value": 4.0}]}}}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['351'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-09-15-preview + response: + body: {string: '{"properties":{"topic":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/microsoft.eventgrid/domains/kalspythond1","provisioningState":"Creating","destination":{"properties":{"endpointUrl":null,"endpointBaseUrl":"https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1"},"endpointType":"WebHook"},"filter":{"advancedFilters":[{"value":4.0,"operatorType":"NumberLessThan","key":"data.key1"}]},"labels":null},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2","name":"kalspythonEventSubscription2","type":"Microsoft.EventGrid/eventSubscriptions"}'} + headers: + azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/5187EA1A-FB80-4D24-B389-1E7333B64028?api-version=2018-09-15-preview'] + cache-control: [no-cache] + content-length: ['861'] + content-type: [application/json; charset=utf-8] + date: ['Fri, 26 Oct 2018 04:24:39 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 201, message: Created} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/5187EA1A-FB80-4D24-B389-1E7333B64028?api-version=2018-09-15-preview + response: + body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/5187EA1A-FB80-4D24-B389-1E7333B64028?api-version=2018-09-15-preview","name":"5187ea1a-fb80-4d24-b389-1e7333b64028","status":"Succeeded"}'} + headers: + cache-control: [no-cache] + content-length: ['294'] + content-type: [application/json; charset=utf-8] + date: ['Fri, 26 Oct 2018 04:24:50 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-09-15-preview + response: + body: {string: '{"properties":{"topic":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/microsoft.eventgrid/domains/kalspythond1","provisioningState":"Succeeded","destination":{"properties":{"endpointUrl":null,"endpointBaseUrl":"https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1"},"endpointType":"WebHook"},"filter":{"subjectBeginsWith":"","subjectEndsWith":"","includedEventTypes":["All"],"advancedFilters":[{"value":4.0,"operatorType":"NumberLessThan","key":"data.key1"}]},"labels":null,"eventDeliverySchema":"EventGridSchema","retryPolicy":{"maxDeliveryAttempts":30,"eventTimeToLiveInMinutes":1440}},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2","name":"kalspythonEventSubscription2","type":"Microsoft.EventGrid/eventSubscriptions"}'} + headers: + cache-control: [no-cache] + content-length: ['1048'] + content-type: [application/json; charset=utf-8] + date: ['Fri, 26 Oct 2018 04:24:50 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-09-15-preview + response: + body: {string: ''} + headers: + cache-control: [no-cache] + content-length: ['0'] + date: ['Fri, 26 Oct 2018 04:24:50 GMT'] + expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/6E04D057-93FA-4CBA-8872-40452786DDC3?api-version=2018-09-15-preview'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/6E04D057-93FA-4CBA-8872-40452786DDC3?api-version=2018-09-15-preview + response: + body: {string: ''} + headers: + cache-control: [no-cache] + content-length: ['0'] + date: ['Fri, 26 Oct 2018 04:25:01 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_domains_and_advanced_filterc2ee17c6/providers/Microsoft.EventGrid/domains/kalspythond1?api-version=2018-09-15-preview + response: + body: {string: ''} + headers: + cache-control: [no-cache] + content-length: ['0'] + date: ['Fri, 26 Oct 2018 04:25:02 GMT'] + expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/E6BD5C77-985A-43E3-AD01-3B0FDB9824E2?api-version=2018-09-15-preview'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/E6BD5C77-985A-43E3-AD01-3B0FDB9824E2?api-version=2018-09-15-preview + response: + body: {string: ''} + headers: + cache-control: [no-cache] + content-length: ['0'] + date: ['Fri, 26 Oct 2018 04:25:12 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_input_mappings_and_queue_destination.yaml b/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_input_mappings_and_queue_destination.yaml index a03d6812aa27..297e810bc55f 100644 --- a/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_input_mappings_and_queue_destination.yaml +++ b/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_input_mappings_and_queue_destination.yaml @@ -7,25 +7,25 @@ interactions: Connection: [keep-alive] Content-Length: ['83'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2?api-version=2018-09-15-preview response: body: {string: '{"properties":{"provisioningState":"Creating","endpoint":null,"inputSchema":"CloudEventV01Schema"},"location":"westcentralus","tags":null,"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2","name":"kalspython2","type":"Microsoft.EventGrid/topics"}'} headers: - azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/655A788C-9FF7-4B3E-AA76-10C824168F89?api-version=2018-05-01-preview'] + azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/4AF3912A-9B5A-44FE-87EE-4986D976F16E?api-version=2018-09-15-preview'] cache-control: [no-cache] content-length: ['394'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:35:36 GMT'] + date: ['Fri, 26 Oct 2018 04:25:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: body: null @@ -33,17 +33,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/655A788C-9FF7-4B3E-AA76-10C824168F89?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/4AF3912A-9B5A-44FE-87EE-4986D976F16E?api-version=2018-09-15-preview response: - body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/655A788C-9FF7-4B3E-AA76-10C824168F89?api-version=2018-05-01-preview","name":"655a788c-9ff7-4b3e-aa76-10c824168f89","status":"Succeeded"}'} + body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/4AF3912A-9B5A-44FE-87EE-4986D976F16E?api-version=2018-09-15-preview","name":"4af3912a-9b5a-44fe-87ee-4986d976f16e","status":"Succeeded"}'} headers: cache-control: [no-cache] content-length: ['294'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:35:47 GMT'] + date: ['Fri, 26 Oct 2018 04:25:27 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -58,17 +58,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2?api-version=2018-09-15-preview response: body: {string: '{"properties":{"provisioningState":"Succeeded","endpoint":"https://kalspython2.westcentralus-1.eventgrid.azure.net/api/events","inputSchema":"CloudEventV01Schema"},"location":"westcentralus","tags":null,"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2","name":"kalspython2","type":"Microsoft.EventGrid/topics"}'} headers: cache-control: [no-cache] content-length: ['459'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:35:47 GMT'] + date: ['Fri, 26 Oct 2018 04:25:28 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -78,38 +78,38 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: 'b''b\''b\\\''{"properties": {"destination": {"endpointType": "StorageQueue", - "properties": {"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kalstest/providers/Microsoft.Storage/storageAccounts/kalsdemo", + body: 'b''b\''b\\\''b\\\\\\\''{"properties": {"destination": {"endpointType": + "StorageQueue", "properties": {"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kalstest/providers/Microsoft.Storage/storageAccounts/kalsdemo", "queueName": "kalsdemoqueue"}}, "filter": {"isSubjectCaseSensitive": false}, "eventDeliverySchema": "CloudEventV01Schema", "retryPolicy": {"maxDeliveryAttempts": 10, "eventTimeToLiveInMinutes": 5}, "deadLetterDestination": {"endpointType": "StorageBlob", "properties": {"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kalstest/providers/Microsoft.Storage/storageAccounts/kalsdemo", - "blobContainerName": "dlq"}}}}\\\''\''''' + "blobContainerName": "dlq"}}}}\\\\\\\''\\\''\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['671'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription3?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription3?api-version=2018-09-15-preview response: body: {string: '{"properties":{"topic":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/microsoft.eventgrid/topics/kalspython2","provisioningState":"Creating","destination":{"properties":{"resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kalstest/providers/Microsoft.Storage/storageAccounts/kalsdemo","queueName":"kalsdemoqueue"},"endpointType":"StorageQueue"},"filter":{},"labels":null,"eventDeliverySchema":"CloudEventV01Schema","retryPolicy":{"maxDeliveryAttempts":10,"eventTimeToLiveInMinutes":5},"deadLetterDestination":{"properties":{"resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kalstest/providers/Microsoft.Storage/storageAccounts/kalsdemo","blobContainerName":"dlq"},"endpointType":"StorageBlob"}},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription3","name":"kalspythonEventSubscription3","type":"Microsoft.EventGrid/eventSubscriptions"}'} headers: - azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/B4124FB7-4046-4140-A4B0-3604CF6C97E9?api-version=2018-05-01-preview'] + azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/C8F43E26-38C3-4361-AEE8-DAE56CF81DDF?api-version=2018-09-15-preview'] cache-control: [no-cache] content-length: ['1225'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:35:49 GMT'] + date: ['Fri, 26 Oct 2018 04:25:30 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -117,17 +117,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/B4124FB7-4046-4140-A4B0-3604CF6C97E9?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/C8F43E26-38C3-4361-AEE8-DAE56CF81DDF?api-version=2018-09-15-preview response: - body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/B4124FB7-4046-4140-A4B0-3604CF6C97E9?api-version=2018-05-01-preview","name":"b4124fb7-4046-4140-a4b0-3604cf6c97e9","status":"Succeeded"}'} + body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/C8F43E26-38C3-4361-AEE8-DAE56CF81DDF?api-version=2018-09-15-preview","name":"c8f43e26-38c3-4361-aee8-dae56cf81ddf","status":"Succeeded"}'} headers: cache-control: [no-cache] content-length: ['294'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:36:00 GMT'] + date: ['Fri, 26 Oct 2018 04:25:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -142,17 +142,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription3?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription3?api-version=2018-09-15-preview response: body: {string: '{"properties":{"topic":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/microsoft.eventgrid/topics/kalspython2","provisioningState":"Succeeded","destination":{"properties":{"resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kalstest/providers/Microsoft.Storage/storageAccounts/kalsdemo","queueName":"kalsdemoqueue"},"endpointType":"StorageQueue"},"filter":{"subjectBeginsWith":"","subjectEndsWith":"","includedEventTypes":["All"]},"labels":null,"eventDeliverySchema":"CloudEventV01Schema","retryPolicy":{"maxDeliveryAttempts":10,"eventTimeToLiveInMinutes":5},"deadLetterDestination":{"properties":{"resourceId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kalstest/providers/Microsoft.Storage/storageAccounts/kalsdemo","blobContainerName":"dlq"},"endpointType":"StorageBlob"}},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription3","name":"kalspythonEventSubscription3","type":"Microsoft.EventGrid/eventSubscriptions"}'} headers: cache-control: [no-cache] content-length: ['1298'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:36:00 GMT'] + date: ['Fri, 26 Oct 2018 04:25:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -168,25 +168,24 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription3?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription3?api-version=2018-09-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 02 May 2018 05:36:01 GMT'] + date: ['Fri, 26 Oct 2018 04:25:42 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/548CBC66-CB7C-425A-8FB0-B38473795946?api-version=2018-05-01-preview'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/FEBF399C-2DE2-4E40-AC18-3FA6D1470C05?api-version=2018-09-15-preview'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] status: {code: 202, message: Accepted} - request: body: null @@ -194,16 +193,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/548CBC66-CB7C-425A-8FB0-B38473795946?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/FEBF399C-2DE2-4E40-AC18-3FA6D1470C05?api-version=2018-09-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 02 May 2018 05:36:11 GMT'] + date: ['Fri, 26 Oct 2018 04:25:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -217,25 +216,24 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_input_mappings_and_queue_destinationb3481bd4/providers/Microsoft.EventGrid/topics/kalspython2?api-version=2018-09-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 02 May 2018 05:36:12 GMT'] + date: ['Fri, 26 Oct 2018 04:25:53 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/B5873B89-5726-4F57-B730-A16150F16810?api-version=2018-05-01-preview'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/39D6B2D4-F89C-4564-9487-0AF3C33D55D2?api-version=2018-09-15-preview'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] status: {code: 202, message: Accepted} - request: body: null @@ -243,16 +241,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/B5873B89-5726-4F57-B730-A16150F16810?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/39D6B2D4-F89C-4564-9487-0AF3C33D55D2?api-version=2018-09-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 02 May 2018 05:36:24 GMT'] + date: ['Fri, 26 Oct 2018 04:26:03 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_topic_types.yaml b/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_topic_types.yaml new file mode 100644 index 000000000000..51fc06e4f4bb --- /dev/null +++ b/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_topic_types.yaml @@ -0,0 +1,75 @@ +interactions: +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/providers/Microsoft.EventGrid/topicTypes?api-version=2018-09-15-preview + response: + body: {string: '{"value":[{"properties":{"provider":"Microsoft.Eventhub","displayName":"Event + Hubs Namespaces","description":"Microsoft Event Hubs service events.","resourceRegionType":"RegionalResource","provisioningState":"Succeeded","supportedLocations":["West + US 2","West Central US","East US 2 EUAP","East US","West US","Central US","East + US 2","West Europe","North Europe","Southeast Asia","East Asia","Japan East","Japan + West","Australia East","Australia Southeast","North Central US","South Central + US","Canada Central","Canada East","Central India","South India","France Central","UK + West","Korea Central","Korea South","Central US EUAP","West India","Brazil + South","UK South","Australia Central","Australia Central 2","France South"]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.Eventhub.Namespaces","name":"Microsoft.Eventhub.Namespaces","type":"Microsoft.EventGrid/topicTypes"},{"properties":{"provider":"Microsoft.Storage","displayName":"Storage + Accounts","description":"Microsoft Storage service events.","resourceRegionType":"RegionalResource","provisioningState":"Succeeded","supportedLocations":["West + US 2","West Central US","East US 2 EUAP","East US","West US","Central US","East + US 2","West Europe","North Europe","Southeast Asia","East Asia","Japan East","Japan + West","Australia East","Australia Southeast","North Central US","South Central + US","Canada Central","Canada East","Central India","South India","France Central","UK + West","Korea Central","Korea South","Central US EUAP","West India","Brazil + South","UK South","Australia Central","Australia Central 2","France South"]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.Storage.StorageAccounts","name":"Microsoft.Storage.StorageAccounts","type":"Microsoft.EventGrid/topicTypes"},{"properties":{"provider":"Microsoft.Resources","displayName":"Azure + Subscriptions","description":"Resource management events under an Azure subscription","resourceRegionType":"GlobalResource","provisioningState":"Succeeded","supportedLocations":[]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.Resources.Subscriptions","name":"Microsoft.Resources.Subscriptions","type":"Microsoft.EventGrid/topicTypes"},{"properties":{"provider":"Microsoft.Resources","displayName":"Resource + Groups","description":"Resource management events under a resource group.","resourceRegionType":"GlobalResource","provisioningState":"Succeeded","supportedLocations":[]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.Resources.ResourceGroups","name":"Microsoft.Resources.ResourceGroups","type":"Microsoft.EventGrid/topicTypes"},{"properties":{"provider":"Microsoft.Devices","displayName":"Azure + IoT Hub Accounts","description":"Azure IoT Hub service events","resourceRegionType":"RegionalResource","provisioningState":"Succeeded","supportedLocations":["West + US 2","West Central US","East US","West US","Central US","East US 2","West + Europe","North Europe","Southeast Asia","East Asia","Japan East","Japan West","Australia + East","Australia Southeast","Canada Central","Canada East","Central India","South + India","UK West","Central US EUAP","West India","Brazil South","UK South","South + Central US","Korea Central","Korea South"]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.Devices.IoTHubs","name":"Microsoft.Devices.IoTHubs","type":"Microsoft.EventGrid/topicTypes"},{"properties":{"provider":"Microsoft.EventGrid","displayName":"Event + Grid Topics","description":"Custom events via Event Grid Topics","resourceRegionType":"RegionalResource","provisioningState":"Succeeded","supportedLocations":["West + US 2","West Central US","East US 2 EUAP","East US","West US","Central US","East + US 2","West Europe","North Europe","Southeast Asia","East Asia","Japan East","Japan + West","Australia East","Australia Southeast","North Central US","South Central + US","Canada Central","Canada East","Central India","South India","France Central","UK + West","Korea Central","Korea South","Central US EUAP","West India","Brazil + South","UK South","Australia Central","Australia Central 2","France South"]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.EventGrid.Topics","name":"Microsoft.EventGrid.Topics","type":"Microsoft.EventGrid/topicTypes"},{"properties":{"provider":"Microsoft.ServiceBus","displayName":"Service + Bus Namespaces","description":"Service Bus events","resourceRegionType":"RegionalResource","provisioningState":"Succeeded","supportedLocations":["West + US 2","West Central US","East US 2 EUAP","East US","West US","Central US","East + US 2","West Europe","North Europe","Southeast Asia","East Asia","Japan East","Japan + West","Australia East","Australia Southeast","North Central US","South Central + US","Canada Central","Canada East","Central India","South India","France Central","UK + West","Korea Central","Korea South","Central US EUAP","West India","Brazil + South","UK South"]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.ServiceBus.Namespaces","name":"Microsoft.ServiceBus.Namespaces","type":"Microsoft.EventGrid/topicTypes"},{"properties":{"provider":"Microsoft.ContainerRegistry","displayName":"Azure + Container Registry","description":"Azure Container Registry service events","resourceRegionType":"RegionalResource","provisioningState":"Succeeded","supportedLocations":["West + US 2","West Central US","East US 2 EUAP","East US","West US","Central US","East + US 2","West Europe","North Europe","Southeast Asia","East Asia","South Central + US","North Central US","Central US EUAP","Brazil South","Canada East","Canada + Central","UK South","UK West","Australia East","Australia Southeast","Central + India","Japan East","Japan West","South India"]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.ContainerRegistry.Registries","name":"Microsoft.ContainerRegistry.Registries","type":"Microsoft.EventGrid/topicTypes"},{"properties":{"provider":"Microsoft.Media","displayName":"Microsoft + Azure Media Services","description":"Microsoft Azure Media Services events","resourceRegionType":"RegionalResource","provisioningState":"Succeeded","supportedLocations":["Australia + East","Australia Southeast","Brazil South","Canada Central","Canada East","Central + India","Central US","Central US EUAP","East Asia","East US","East US 2","Japan + East","Japan West","North Europe","South Central US","South India","Southeast + Asia","West Central US","West Europe","West India","West US","West US 2"]},"id":"providers/Microsoft.EventGrid/topicTypes/Microsoft.Media.MediaServices","name":"Microsoft.Media.MediaServices","type":"Microsoft.EventGrid/topicTypes"}]}'} + headers: + cache-control: [no-cache] + content-length: ['6533'] + content-type: [application/json; charset=utf-8] + date: ['Fri, 26 Oct 2018 04:26:06 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_user_topics.yaml b/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_user_topics.yaml index dae1e62eaa76..76eff4681f0f 100644 --- a/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_user_topics.yaml +++ b/azure-mgmt-eventgrid/tests/recordings/test_azure_mgmt_eventgrid.test_user_topics.yaml @@ -7,25 +7,25 @@ interactions: Connection: [keep-alive] Content-Length: ['79'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1?api-version=2018-09-15-preview response: body: {string: '{"properties":{"provisioningState":"Creating","endpoint":null,"inputSchema":"EventGridSchema"},"location":"westcentralus","tags":null,"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1","name":"kalspython1","type":"Microsoft.EventGrid/topics"}'} headers: - azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/44C4CF5C-8A0B-409F-A2A2-E6FA165CDE36?api-version=2018-05-01-preview'] + azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/3C72AC27-D137-47A3-B0A6-96A0D4F0CD10?api-version=2018-09-15-preview'] cache-control: [no-cache] content-length: ['365'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:36:29 GMT'] + date: ['Fri, 26 Oct 2018 04:26:11 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -33,17 +33,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/44C4CF5C-8A0B-409F-A2A2-E6FA165CDE36?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/3C72AC27-D137-47A3-B0A6-96A0D4F0CD10?api-version=2018-09-15-preview response: - body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/44C4CF5C-8A0B-409F-A2A2-E6FA165CDE36?api-version=2018-05-01-preview","name":"44c4cf5c-8a0b-409f-a2a2-e6fa165cde36","status":"Succeeded"}'} + body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/3C72AC27-D137-47A3-B0A6-96A0D4F0CD10?api-version=2018-09-15-preview","name":"3c72ac27-d137-47a3-b0a6-96a0d4f0cd10","status":"Succeeded"}'} headers: cache-control: [no-cache] content-length: ['294'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:36:40 GMT'] + date: ['Fri, 26 Oct 2018 04:26:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -58,17 +58,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1?api-version=2018-09-15-preview response: body: {string: '{"properties":{"provisioningState":"Succeeded","endpoint":"https://kalspython1.westcentralus-1.eventgrid.azure.net/api/events","inputSchema":"EventGridSchema"},"location":"westcentralus","tags":null,"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1","name":"kalspython1","type":"Microsoft.EventGrid/topics"}'} headers: cache-control: [no-cache] content-length: ['430'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:36:41 GMT'] + date: ['Fri, 26 Oct 2018 04:26:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -79,27 +79,27 @@ interactions: status: {code: 200, message: OK} - request: body: '{"properties": {"destination": {"endpointType": "WebHook", "properties": - {"endpointUrl": "https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1?code=69AbujfvYn77Ccf5OySDcTk9CYM1b9Ua2lO37ayoWb97fGRWELGbnA=="}}, - "filter": {"isSubjectCaseSensitive": false}, "eventDeliverySchema": "EventGridSchema"}}' + {"endpointUrl": "https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1?code=D5/lX4xgFOvJrgvgZsjhMpg9h/eC3XVdQzGuDvwQuGmrDUfxFNeyiQ=="}}, + "filter": {"isSubjectCaseSensitive": false}}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['302'] + Content-Length: ['260'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-09-15-preview response: - body: {string: '{"properties":{"topic":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/microsoft.eventgrid/topics/kalspython1","provisioningState":"Creating","destination":{"properties":{"endpointUrl":null,"endpointBaseUrl":"https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1"},"endpointType":"WebHook"},"filter":{},"labels":null,"eventDeliverySchema":"EventGridSchema"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2","name":"kalspythonEventSubscription2","type":"Microsoft.EventGrid/eventSubscriptions"}'} + body: {string: '{"properties":{"topic":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/microsoft.eventgrid/topics/kalspython1","provisioningState":"Creating","destination":{"properties":{"endpointUrl":null,"endpointBaseUrl":"https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1"},"endpointType":"WebHook"},"filter":{},"labels":null},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2","name":"kalspythonEventSubscription2","type":"Microsoft.EventGrid/eventSubscriptions"}'} headers: - azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/C6641190-B450-41B4-B60D-40A9126BF707?api-version=2018-05-01-preview'] + azure-asyncoperation: ['https://management.azure.com:443/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/4DD9ECAE-3F54-49BA-AB3A-487A4D35D51F?api-version=2018-09-15-preview'] cache-control: [no-cache] - content-length: ['782'] + content-length: ['742'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:36:41 GMT'] + date: ['Fri, 26 Oct 2018 04:26:23 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -113,17 +113,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/C6641190-B450-41B4-B60D-40A9126BF707?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/4DD9ECAE-3F54-49BA-AB3A-487A4D35D51F?api-version=2018-09-15-preview response: - body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/C6641190-B450-41B4-B60D-40A9126BF707?api-version=2018-05-01-preview","name":"c6641190-b450-41b4-b60d-40a9126bf707","status":"Succeeded"}'} + body: {string: '{"id":"https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationsStatus/4DD9ECAE-3F54-49BA-AB3A-487A4D35D51F?api-version=2018-09-15-preview","name":"4dd9ecae-3f54-49ba-ab3a-487a4d35d51f","status":"Succeeded"}'} headers: cache-control: [no-cache] content-length: ['294'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:36:52 GMT'] + date: ['Fri, 26 Oct 2018 04:26:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -138,17 +138,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-09-15-preview response: - body: {string: '{"properties":{"topic":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/microsoft.eventgrid/topics/kalspython1","provisioningState":"Succeeded","destination":{"properties":{"endpointUrl":null,"endpointBaseUrl":"https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1"},"endpointType":"WebHook"},"filter":{"subjectBeginsWith":"","subjectEndsWith":"","includedEventTypes":["All"]},"labels":null,"eventDeliverySchema":"EventGridSchema"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2","name":"kalspythonEventSubscription2","type":"Microsoft.EventGrid/eventSubscriptions"}'} + body: {string: '{"properties":{"topic":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/microsoft.eventgrid/topics/kalspython1","provisioningState":"Succeeded","destination":{"properties":{"endpointUrl":null,"endpointBaseUrl":"https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1"},"endpointType":"WebHook"},"filter":{"subjectBeginsWith":"","subjectEndsWith":"","includedEventTypes":["All"]},"labels":null,"eventDeliverySchema":"EventGridSchema","retryPolicy":{"maxDeliveryAttempts":30,"eventTimeToLiveInMinutes":1440}},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2","name":"kalspythonEventSubscription2","type":"Microsoft.EventGrid/eventSubscriptions"}'} headers: cache-control: [no-cache] - content-length: ['855'] + content-length: ['928'] content-type: [application/json; charset=utf-8] - date: ['Wed, 02 May 2018 05:36:53 GMT'] + date: ['Fri, 26 Oct 2018 04:26:35 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -164,25 +164,24 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1/providers/Microsoft.EventGrid/eventSubscriptions/kalspythonEventSubscription2?api-version=2018-09-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 02 May 2018 05:36:54 GMT'] + date: ['Fri, 26 Oct 2018 04:26:36 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/5D0C64CC-A970-49B4-BADD-67A8ECF7FD39?api-version=2018-05-01-preview'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/84CA43BE-CE79-4CA1-B64E-D075BD4546F5?api-version=2018-09-15-preview'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] status: {code: 202, message: Accepted} - request: body: null @@ -190,16 +189,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/5D0C64CC-A970-49B4-BADD-67A8ECF7FD39?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/84CA43BE-CE79-4CA1-B64E-D075BD4546F5?api-version=2018-09-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 02 May 2018 05:37:04 GMT'] + date: ['Fri, 26 Oct 2018 04:26:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -213,25 +212,24 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_azure_mgmt_eventgrid_test_user_topics7929117f/providers/Microsoft.EventGrid/topics/kalspython1?api-version=2018-09-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 02 May 2018 05:37:05 GMT'] + date: ['Fri, 26 Oct 2018 04:26:47 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/31508444-2625-4E19-9879-56C52082E701?api-version=2018-05-01-preview'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/F626D398-8172-4AC3-A1BC-CA140F676B55?api-version=2018-09-15-preview'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1196'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] status: {code: 202, message: Accepted} - request: body: null @@ -239,16 +237,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.1 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-eventgrid/2.0.0b1 Azure-SDK-For-Python] + User-Agent: [python/3.6.5 (Windows-10-10.0.17134-SP0) msrest/0.6.1 msrest_azure/0.4.34 + azure-mgmt-eventgrid/2.0.0rc2 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/31508444-2625-4E19-9879-56C52082E701?api-version=2018-05-01-preview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.EventGrid/locations/westcentralus/operationResults/F626D398-8172-4AC3-A1BC-CA140F676B55?api-version=2018-09-15-preview response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] - date: ['Wed, 02 May 2018 05:37:16 GMT'] + date: ['Fri, 26 Oct 2018 04:26:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-eventgrid/tests/test_azure_mgmt_eventgrid.py b/azure-mgmt-eventgrid/tests/test_azure_mgmt_eventgrid.py index 5e917d8822d6..988d721618f0 100644 --- a/azure-mgmt-eventgrid/tests/test_azure_mgmt_eventgrid.py +++ b/azure-mgmt-eventgrid/tests/test_azure_mgmt_eventgrid.py @@ -19,6 +19,8 @@ InputSchema, EventDeliverySchema, Topic, + Domain, + NumberLessThanAdvancedFilter, RetryPolicy ) @@ -35,7 +37,6 @@ def process(self, result): pass @ResourceGroupPreparer() - @unittest.skip('Not currently enabled for the 2018-05-01-preview API version') def test_topic_types(self, resource_group, location): # List all topic types for result in self.eventgrid_client.topic_types.list(): @@ -122,6 +123,42 @@ def test_input_mappings_and_queue_destination(self, resource_group, location): self.eventgrid_client.topics.delete(resource_group.name, topic_name).wait() + @ResourceGroupPreparer() + def test_domains_and_advanced_filter(self, resource_group, location): + domain_name = "kalspythond1" + eventsubscription_name = "kalspythonEventSubscription2" + + # Create a new domain and verify that it is created successfully + domain_result_create = self.eventgrid_client.domains.create_or_update(resource_group.name, domain_name, Domain(location="westcentralus")) + domain = domain_result_create.result() + self.assertEqual(domain.name, domain_name) + + # Create a new event subscription to this domain + # Use this for recording mode + # scope = "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/" + resource_group.name + "/providers/Microsoft.EventGrid/domains/" + domain_name + scope = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/" + resource_group.name + "/providers/Microsoft.EventGrid/domains/" + domain_name + + destination = WebHookEventSubscriptionDestination( + # TODO: Before recording tests, replace with a valid Azure function URL + endpoint_url="https://kalsfunc1.azurewebsites.net/api/HttpTriggerCSharp1?code=hidden" + ) + filter = EventSubscriptionFilter() + advanced_filter = NumberLessThanAdvancedFilter(key="data.key1", value=4.0) + filter.advanced_filters = [] + filter.advanced_filters.append(advanced_filter) + + event_subscription_info = EventSubscription(destination=destination, filter=filter) + es_result_create = self.eventgrid_client.event_subscriptions.create_or_update(scope, eventsubscription_name, event_subscription_info) + event_subscription = es_result_create.result() + self.assertEqual(eventsubscription_name, event_subscription.name) + + # Delete the event subscription + self.eventgrid_client.event_subscriptions.delete(scope, eventsubscription_name).wait() + + # Delete the domain + self.eventgrid_client.domains.delete(resource_group.name, domain_name).wait() + + #------------------------------------------------------------------------------ if __name__ == '__main__': unittest.main() diff --git a/azure-mgmt-eventhub/HISTORY.rst b/azure-mgmt-eventhub/HISTORY.rst index 8ba7504e3a2c..d5b7d14afdc2 100644 --- a/azure-mgmt-eventhub/HISTORY.rst +++ b/azure-mgmt-eventhub/HISTORY.rst @@ -3,6 +3,17 @@ Release History =============== +2.2.0 (2018-10-29) +++++++++++++++++++ + +**Features** + +- Add kafka_enabled attribute + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + 2.1.0 (2018-07-31) ++++++++++++++++++ diff --git a/azure-mgmt-eventhub/MANIFEST.in b/azure-mgmt-eventhub/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-eventhub/MANIFEST.in +++ b/azure-mgmt-eventhub/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-eventhub/azure/__init__.py b/azure-mgmt-eventhub/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-eventhub/azure/__init__.py +++ b/azure-mgmt-eventhub/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-eventhub/azure/mgmt/__init__.py b/azure-mgmt-eventhub/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-eventhub/azure/mgmt/__init__.py +++ b/azure-mgmt-eventhub/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/models/eh_namespace.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/models/eh_namespace.py index 8fdc61e63eb1..bc01bea977a1 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/models/eh_namespace.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/models/eh_namespace.py @@ -48,6 +48,9 @@ class EHNamespace(TrackedResource): AutoInflate is enabled, vaule should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true) :type maximum_throughput_units: int + :param kafka_enabled: Value that indicates whether Kafka is enabled for + eventhub namespace. + :type kafka_enabled: bool """ _validation = { @@ -76,6 +79,7 @@ class EHNamespace(TrackedResource): 'metric_id': {'key': 'properties.metricId', 'type': 'str'}, 'is_auto_inflate_enabled': {'key': 'properties.isAutoInflateEnabled', 'type': 'bool'}, 'maximum_throughput_units': {'key': 'properties.maximumThroughputUnits', 'type': 'int'}, + 'kafka_enabled': {'key': 'properties.kafkaEnabled', 'type': 'bool'}, } def __init__(self, **kwargs): @@ -88,3 +92,4 @@ def __init__(self, **kwargs): self.metric_id = None self.is_auto_inflate_enabled = kwargs.get('is_auto_inflate_enabled', None) self.maximum_throughput_units = kwargs.get('maximum_throughput_units', None) + self.kafka_enabled = kwargs.get('kafka_enabled', None) diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/models/eh_namespace_py3.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/models/eh_namespace_py3.py index e12e521ea75c..e07c19070582 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/models/eh_namespace_py3.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/models/eh_namespace_py3.py @@ -48,6 +48,9 @@ class EHNamespace(TrackedResource): AutoInflate is enabled, vaule should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true) :type maximum_throughput_units: int + :param kafka_enabled: Value that indicates whether Kafka is enabled for + eventhub namespace. + :type kafka_enabled: bool """ _validation = { @@ -76,9 +79,10 @@ class EHNamespace(TrackedResource): 'metric_id': {'key': 'properties.metricId', 'type': 'str'}, 'is_auto_inflate_enabled': {'key': 'properties.isAutoInflateEnabled', 'type': 'bool'}, 'maximum_throughput_units': {'key': 'properties.maximumThroughputUnits', 'type': 'int'}, + 'kafka_enabled': {'key': 'properties.kafkaEnabled', 'type': 'bool'}, } - def __init__(self, *, location: str=None, tags=None, sku=None, is_auto_inflate_enabled: bool=None, maximum_throughput_units: int=None, **kwargs) -> None: + def __init__(self, *, location: str=None, tags=None, sku=None, is_auto_inflate_enabled: bool=None, maximum_throughput_units: int=None, kafka_enabled: bool=None, **kwargs) -> None: super(EHNamespace, self).__init__(location=location, tags=tags, **kwargs) self.sku = sku self.provisioning_state = None @@ -88,3 +92,4 @@ def __init__(self, *, location: str=None, tags=None, sku=None, is_auto_inflate_e self.metric_id = None self.is_auto_inflate_enabled = is_auto_inflate_enabled self.maximum_throughput_units = maximum_throughput_units + self.kafka_enabled = kafka_enabled diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/consumer_groups_operations.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/consumer_groups_operations.py index 03c4bc31bd36..b0895b206050 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/consumer_groups_operations.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/consumer_groups_operations.py @@ -85,6 +85,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -97,9 +98,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'ConsumerGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -157,7 +157,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -166,8 +165,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -218,7 +217,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -227,8 +226,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -303,7 +302,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -312,9 +311,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/disaster_recovery_configs_operations.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/disaster_recovery_configs_operations.py index b58d874d0e4c..da4c4712c00f 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/disaster_recovery_configs_operations.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/disaster_recovery_configs_operations.py @@ -75,6 +75,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -87,9 +88,8 @@ def check_name_availability( body_content = self._serialize.body(parameters, 'CheckNameAvailabilityParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -148,7 +148,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -157,9 +157,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -223,6 +222,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -235,9 +235,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'ArmDisasterRecovery') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorResponseException(self._deserialize, response) @@ -291,7 +290,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -300,8 +298,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -350,7 +348,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -359,8 +357,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -415,7 +413,6 @@ def break_pairing( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -424,8 +421,8 @@ def break_pairing( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -473,7 +470,6 @@ def fail_over( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -482,8 +478,8 @@ def fail_over( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -538,7 +534,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -547,9 +543,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -608,7 +603,7 @@ def get_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -617,8 +612,8 @@ def get_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -676,7 +671,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -685,8 +680,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/event_hubs_operations.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/event_hubs_operations.py index c2d509c2bbd6..90f382ac520b 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/event_hubs_operations.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/event_hubs_operations.py @@ -90,7 +90,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -99,9 +99,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -161,6 +160,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -173,9 +173,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'Eventhub') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -229,7 +228,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -238,8 +236,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -287,7 +285,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -296,8 +294,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -359,7 +357,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -368,9 +366,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -433,6 +430,7 @@ def create_or_update_authorization_rule( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -445,9 +443,8 @@ def create_or_update_authorization_rule( body_content = self._serialize.body(parameters, 'AuthorizationRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -505,7 +502,7 @@ def get_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -514,8 +511,8 @@ def get_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -572,7 +569,6 @@ def delete_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -581,8 +577,8 @@ def delete_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -633,7 +629,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -642,8 +638,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -709,6 +705,7 @@ def regenerate_keys( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -721,9 +718,8 @@ def regenerate_keys( body_content = self._serialize.body(parameters, 'RegenerateAccessKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/namespaces_operations.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/namespaces_operations.py index 61a4b3159122..e1b2282a886a 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/namespaces_operations.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/namespaces_operations.py @@ -70,6 +70,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -82,9 +83,8 @@ def check_name_availability( body_content = self._serialize.body(parameters, 'CheckNameAvailabilityParameter') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -137,7 +137,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -146,9 +146,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -205,7 +204,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -214,9 +213,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -252,6 +250,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -264,9 +263,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'EHNamespace') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: raise models.ErrorResponseException(self._deserialize, response) @@ -355,7 +353,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -364,8 +361,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -453,7 +450,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -462,8 +459,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorResponseException(self._deserialize, response) @@ -520,6 +517,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -532,9 +530,8 @@ def update( body_content = self._serialize.body(parameters, 'EHNamespace') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: raise models.ErrorResponseException(self._deserialize, response) @@ -588,7 +585,7 @@ def get_messaging_plan( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -597,8 +594,8 @@ def get_messaging_plan( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -657,7 +654,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -666,9 +663,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -728,6 +724,7 @@ def create_or_update_authorization_rule( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -740,9 +737,8 @@ def create_or_update_authorization_rule( body_content = self._serialize.body(parameters, 'AuthorizationRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -796,7 +792,6 @@ def delete_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -805,8 +800,8 @@ def delete_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -854,7 +849,7 @@ def get_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -863,8 +858,8 @@ def get_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -919,7 +914,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -928,8 +923,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -993,6 +988,7 @@ def regenerate_keys( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1005,9 +1001,8 @@ def regenerate_keys( body_content = self._serialize.body(parameters, 'RegenerateAccessKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/operations.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/operations.py index 432f14fe232e..4fa4b10679f5 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/operations.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/regions_operations.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/regions_operations.py index 3fb66301049a..cb0e98cba0a0 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/regions_operations.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/operations/regions_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-eventhub/azure/mgmt/eventhub/version.py b/azure-mgmt-eventhub/azure/mgmt/eventhub/version.py index be75d8eae586..1a46faeb7ce7 100644 --- a/azure-mgmt-eventhub/azure/mgmt/eventhub/version.py +++ b/azure-mgmt-eventhub/azure/mgmt/eventhub/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "2.1.0" +VERSION = "2.2.0" diff --git a/azure-mgmt-eventhub/azure_bdist_wheel.py b/azure-mgmt-eventhub/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-eventhub/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-eventhub/setup.cfg b/azure-mgmt-eventhub/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-eventhub/setup.cfg +++ b/azure-mgmt-eventhub/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-eventhub/setup.py b/azure-mgmt-eventhub/setup.py index 08d1540be539..c816b44375be 100644 --- a/azure-mgmt-eventhub/setup.py +++ b/azure-mgmt-eventhub/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-eventhub" @@ -76,11 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-hanaonazure/HISTORY.rst b/azure-mgmt-hanaonazure/HISTORY.rst index 35b9082e8e69..5bd5e91b90b9 100644 --- a/azure-mgmt-hanaonazure/HISTORY.rst +++ b/azure-mgmt-hanaonazure/HISTORY.rst @@ -3,6 +3,50 @@ Release History =============== +0.2.1 (2018-08-31) +++++++++++++++++++ + +**Features** + +- Add restart operation + +0.2.0 (2018-08-06) +++++++++++++++++++ + +**Features** + +- Add power state to Hana instance +- Client class can be used as a context manager to keep the underlying HTTP session open for performance + +**General Breaking changes** + +This version uses a next-generation code generator that *might* introduce breaking changes. + +- Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments. + To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments. +- Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered. + While this is not a breaking change, the distinctions are important, and are documented here: + https://docs.python.org/3/library/enum.html#others + At a glance: + + - "is" should not be used at all. + - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered. + +- New Long Running Operation: + + - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same. + - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used. + - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, + without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`. + - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`, + the response of the initial call will be returned without polling. + - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`. + - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away. + +**Bugfixes** + +- Compatibility of the sdist with wheel 0.31.0 + 0.1.1 (2018-05-17) ++++++++++++++++++ diff --git a/azure-mgmt-hanaonazure/MANIFEST.in b/azure-mgmt-hanaonazure/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-hanaonazure/MANIFEST.in +++ b/azure-mgmt-hanaonazure/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-hanaonazure/README.rst b/azure-mgmt-hanaonazure/README.rst index f13617ebc27e..107775d425a7 100644 --- a/azure-mgmt-hanaonazure/README.rst +++ b/azure-mgmt-hanaonazure/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure SAP Hana on Azure Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `SAP Hana on Azure Management -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-hanaonazure/azure/__init__.py b/azure-mgmt-hanaonazure/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-hanaonazure/azure/__init__.py +++ b/azure-mgmt-hanaonazure/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-hanaonazure/azure/mgmt/__init__.py b/azure-mgmt-hanaonazure/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/__init__.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/hana_management_client.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/hana_management_client.py index 4ae425fe40a4..8b660e12b291 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/hana_management_client.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/hana_management_client.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.service_client import ServiceClient +from msrest.service_client import SDKClient from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION @@ -52,7 +52,7 @@ def __init__( self.subscription_id = subscription_id -class HanaManagementClient(object): +class HanaManagementClient(SDKClient): """HANA on Azure Client :ivar config: Configuration for client. @@ -77,7 +77,7 @@ def __init__( self, credentials, subscription_id, base_url=None): self.config = HanaManagementClientConfiguration(credentials, subscription_id, base_url) - self._client = ServiceClient(self.config.credentials, self.config) + super(HanaManagementClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} self.api_version = '2017-11-03-preview' diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/__init__.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/__init__.py index 97f5996fb578..92a1fb68367c 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/__init__.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/__init__.py @@ -9,22 +9,36 @@ # regenerated. # -------------------------------------------------------------------------- -from .resource import Resource -from .hardware_profile import HardwareProfile -from .disk import Disk -from .storage_profile import StorageProfile -from .os_profile import OSProfile -from .ip_address import IpAddress -from .network_profile import NetworkProfile -from .hana_instance import HanaInstance -from .display import Display -from .operation import Operation -from .error_response import ErrorResponse, ErrorResponseException +try: + from .resource_py3 import Resource + from .hardware_profile_py3 import HardwareProfile + from .disk_py3 import Disk + from .storage_profile_py3 import StorageProfile + from .os_profile_py3 import OSProfile + from .ip_address_py3 import IpAddress + from .network_profile_py3 import NetworkProfile + from .hana_instance_py3 import HanaInstance + from .display_py3 import Display + from .operation_py3 import Operation + from .error_response_py3 import ErrorResponse, ErrorResponseException +except (SyntaxError, ImportError): + from .resource import Resource + from .hardware_profile import HardwareProfile + from .disk import Disk + from .storage_profile import StorageProfile + from .os_profile import OSProfile + from .ip_address import IpAddress + from .network_profile import NetworkProfile + from .hana_instance import HanaInstance + from .display import Display + from .operation import Operation + from .error_response import ErrorResponse, ErrorResponseException from .operation_paged import OperationPaged from .hana_instance_paged import HanaInstancePaged from .hana_management_client_enums import ( HanaHardwareTypeNamesEnum, HanaInstanceSizeNamesEnum, + HanaInstancePowerStateEnum, ) __all__ = [ @@ -43,4 +57,5 @@ 'HanaInstancePaged', 'HanaHardwareTypeNamesEnum', 'HanaInstanceSizeNamesEnum', + 'HanaInstancePowerStateEnum', ] diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/disk.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/disk.py index 3f532722b1c9..9f1a2df57b27 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/disk.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/disk.py @@ -39,8 +39,8 @@ class Disk(Model): 'lun': {'key': 'lun', 'type': 'int'}, } - def __init__(self, name=None, disk_size_gb=None): - super(Disk, self).__init__() - self.name = name - self.disk_size_gb = disk_size_gb + def __init__(self, **kwargs): + super(Disk, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.disk_size_gb = kwargs.get('disk_size_gb', None) self.lun = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/disk_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/disk_py3.py new file mode 100644 index 000000000000..aa72032ca814 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/disk_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Disk(Model): + """Specifies the disk information fo the HANA instance. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: The disk name. + :type name: str + :param disk_size_gb: Specifies the size of an empty data disk in + gigabytes. + :type disk_size_gb: int + :ivar lun: Specifies the logical unit number of the data disk. This value + is used to identify data disks within the VM and therefore must be unique + for each data disk attached to a VM. + :vartype lun: int + """ + + _validation = { + 'lun': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + 'lun': {'key': 'lun', 'type': 'int'}, + } + + def __init__(self, *, name: str=None, disk_size_gb: int=None, **kwargs) -> None: + super(Disk, self).__init__(**kwargs) + self.name = name + self.disk_size_gb = disk_size_gb + self.lun = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/display.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/display.py index 417c784cf736..25baa3464325 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/display.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/display.py @@ -20,7 +20,7 @@ class Display(Model): :ivar provider: The localized friendly form of the resource provider name. This form is also expected to include the publisher/company responsible. - Use Title Casing. Begin with “Microsoft” for 1st party services. + Use Title Casing. Begin with "Microsoft" for 1st party services. :vartype provider: str :ivar resource: The localized friendly form of the resource type related to this action/operation. This form should match the public documentation @@ -58,8 +58,8 @@ class Display(Model): 'origin': {'key': 'origin', 'type': 'str'}, } - def __init__(self): - super(Display, self).__init__() + def __init__(self, **kwargs): + super(Display, self).__init__(**kwargs) self.provider = None self.resource = None self.operation = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/display_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/display_py3.py new file mode 100644 index 000000000000..311420d15b7e --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/display_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Display(Model): + """Detailed HANA operation information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provider: The localized friendly form of the resource provider name. + This form is also expected to include the publisher/company responsible. + Use Title Casing. Begin with "Microsoft" for 1st party services. + :vartype provider: str + :ivar resource: The localized friendly form of the resource type related + to this action/operation. This form should match the public documentation + for the resource provider. Use Title Casing. For examples, refer to the + “name” section. + :vartype resource: str + :ivar operation: The localized friendly name for the operation as shown to + the user. This name should be concise (to fit in drop downs), but clear + (self-documenting). Use Title Casing and include the entity/resource to + which it applies. + :vartype operation: str + :ivar description: The localized friendly description for the operation as + shown to the user. This description should be thorough, yet concise. It + will be used in tool-tips and detailed views. + :vartype description: str + :ivar origin: The intended executor of the operation; governs the display + of the operation in the RBAC UX and the audit logs UX. Default value is + 'user,system' + :vartype origin: str + """ + + _validation = { + 'provider': {'readonly': True}, + 'resource': {'readonly': True}, + 'operation': {'readonly': True}, + 'description': {'readonly': True}, + 'origin': {'readonly': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Display, self).__init__(**kwargs) + self.provider = None + self.resource = None + self.operation = None + self.description = None + self.origin = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/error_response.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/error_response.py index 1a399569811b..b3d490a49503 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/error_response.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/error_response.py @@ -27,10 +27,10 @@ class ErrorResponse(Model): 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, code=None, message=None): - super(ErrorResponse, self).__init__() - self.code = code - self.message = message + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) class ErrorResponseException(HttpOperationError): diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/error_response_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/error_response_py3.py new file mode 100644 index 000000000000..5504940d6873 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/error_response_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class ErrorResponse(Model): + """Describes the format of Error response. + + :param code: Error code + :type code: str + :param message: Error message indicating why the operation failed. + :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(ErrorResponse, self).__init__(**kwargs) + self.code = code + self.message = message + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_instance.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_instance.py index e6f634ef83c6..c5e5d27c6bfc 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_instance.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_instance.py @@ -42,6 +42,10 @@ class HanaInstance(Resource): :type network_profile: ~azure.mgmt.hanaonazure.models.NetworkProfile :ivar hana_instance_id: Specifies the HANA instance unique ID. :vartype hana_instance_id: str + :ivar power_state: Resource power state. Possible values include: + 'starting', 'started', 'stopping', 'stopped', 'restarting', 'unknown' + :vartype power_state: str or + ~azure.mgmt.hanaonazure.models.HanaInstancePowerStateEnum """ _validation = { @@ -51,6 +55,7 @@ class HanaInstance(Resource): 'location': {'readonly': True}, 'tags': {'readonly': True}, 'hana_instance_id': {'readonly': True}, + 'power_state': {'readonly': True}, } _attribute_map = { @@ -64,12 +69,14 @@ class HanaInstance(Resource): 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, 'hana_instance_id': {'key': 'properties.hanaInstanceId', 'type': 'str'}, + 'power_state': {'key': 'properties.powerState', 'type': 'str'}, } - def __init__(self, hardware_profile=None, storage_profile=None, os_profile=None, network_profile=None): - super(HanaInstance, self).__init__() - self.hardware_profile = hardware_profile - self.storage_profile = storage_profile - self.os_profile = os_profile - self.network_profile = network_profile + def __init__(self, **kwargs): + super(HanaInstance, self).__init__(**kwargs) + self.hardware_profile = kwargs.get('hardware_profile', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.os_profile = kwargs.get('os_profile', None) + self.network_profile = kwargs.get('network_profile', None) self.hana_instance_id = None + self.power_state = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_instance_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_instance_py3.py new file mode 100644 index 000000000000..665d12f92664 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_instance_py3.py @@ -0,0 +1,82 @@ +# 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 .resource_py3 import Resource + + +class HanaInstance(Resource): + """HANA instance info on Azure (ARM properties and HANA properties). + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Resource location + :vartype location: str + :ivar tags: Resource tags + :vartype tags: dict[str, str] + :param hardware_profile: Specifies the hardware settings for the HANA + instance. + :type hardware_profile: ~azure.mgmt.hanaonazure.models.HardwareProfile + :param storage_profile: Specifies the storage settings for the HANA + instance disks. + :type storage_profile: ~azure.mgmt.hanaonazure.models.StorageProfile + :param os_profile: Specifies the operating system settings for the HANA + instance. + :type os_profile: ~azure.mgmt.hanaonazure.models.OSProfile + :param network_profile: Specifies the network settings for the HANA + instance. + :type network_profile: ~azure.mgmt.hanaonazure.models.NetworkProfile + :ivar hana_instance_id: Specifies the HANA instance unique ID. + :vartype hana_instance_id: str + :ivar power_state: Resource power state. Possible values include: + 'starting', 'started', 'stopping', 'stopped', 'restarting', 'unknown' + :vartype power_state: str or + ~azure.mgmt.hanaonazure.models.HanaInstancePowerStateEnum + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'tags': {'readonly': True}, + 'hana_instance_id': {'readonly': True}, + 'power_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'hardware_profile': {'key': 'properties.hardwareProfile', 'type': 'HardwareProfile'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'os_profile': {'key': 'properties.osProfile', 'type': 'OSProfile'}, + 'network_profile': {'key': 'properties.networkProfile', 'type': 'NetworkProfile'}, + 'hana_instance_id': {'key': 'properties.hanaInstanceId', 'type': 'str'}, + 'power_state': {'key': 'properties.powerState', 'type': 'str'}, + } + + def __init__(self, *, hardware_profile=None, storage_profile=None, os_profile=None, network_profile=None, **kwargs) -> None: + super(HanaInstance, self).__init__(**kwargs) + self.hardware_profile = hardware_profile + self.storage_profile = storage_profile + self.os_profile = os_profile + self.network_profile = network_profile + self.hana_instance_id = None + self.power_state = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_management_client_enums.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_management_client_enums.py index bff5c84bf32f..14c2d7027d1a 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_management_client_enums.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hana_management_client_enums.py @@ -12,13 +12,13 @@ from enum import Enum -class HanaHardwareTypeNamesEnum(Enum): +class HanaHardwareTypeNamesEnum(str, Enum): cisco_ucs = "Cisco_UCS" hpe = "HPE" -class HanaInstanceSizeNamesEnum(Enum): +class HanaInstanceSizeNamesEnum(str, Enum): s72m = "S72m" s144m = "S144m" @@ -37,3 +37,13 @@ class HanaInstanceSizeNamesEnum(Enum): s768m = "S768m" s768xm = "S768xm" s960m = "S960m" + + +class HanaInstancePowerStateEnum(str, Enum): + + starting = "starting" + started = "started" + stopping = "stopping" + stopped = "stopped" + restarting = "restarting" + unknown = "unknown" diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hardware_profile.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hardware_profile.py index 05d162766fc5..ed283992ccfa 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hardware_profile.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hardware_profile.py @@ -40,7 +40,7 @@ class HardwareProfile(Model): 'hana_instance_size': {'key': 'hanaInstanceSize', 'type': 'str'}, } - def __init__(self): - super(HardwareProfile, self).__init__() + def __init__(self, **kwargs): + super(HardwareProfile, self).__init__(**kwargs) self.hardware_type = None self.hana_instance_size = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hardware_profile_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hardware_profile_py3.py new file mode 100644 index 000000000000..09adb7de1e60 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/hardware_profile_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HardwareProfile(Model): + """Specifies the hardware settings for the HANA instance. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar hardware_type: Name of the hardware type (vendor and/or their + product name). Possible values include: 'Cisco_UCS', 'HPE' + :vartype hardware_type: str or + ~azure.mgmt.hanaonazure.models.HanaHardwareTypeNamesEnum + :ivar hana_instance_size: Specifies the HANA instance SKU. Possible values + include: 'S72m', 'S144m', 'S72', 'S144', 'S192', 'S192m', 'S192xm', + 'S384', 'S384m', 'S384xm', 'S384xxm', 'S576m', 'S576xm', 'S768', 'S768m', + 'S768xm', 'S960m' + :vartype hana_instance_size: str or + ~azure.mgmt.hanaonazure.models.HanaInstanceSizeNamesEnum + """ + + _validation = { + 'hardware_type': {'readonly': True}, + 'hana_instance_size': {'readonly': True}, + } + + _attribute_map = { + 'hardware_type': {'key': 'hardwareType', 'type': 'str'}, + 'hana_instance_size': {'key': 'hanaInstanceSize', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(HardwareProfile, self).__init__(**kwargs) + self.hardware_type = None + self.hana_instance_size = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/ip_address.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/ip_address.py index a69655326ef0..a0d1cb8961ed 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/ip_address.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/ip_address.py @@ -30,6 +30,6 @@ class IpAddress(Model): 'ip_address': {'key': 'ipAddress', 'type': 'str'}, } - def __init__(self): - super(IpAddress, self).__init__() + def __init__(self, **kwargs): + super(IpAddress, self).__init__(**kwargs) self.ip_address = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/ip_address_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/ip_address_py3.py new file mode 100644 index 000000000000..92c31926f971 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/ip_address_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpAddress(Model): + """Specifies the IP address of the network interaface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar ip_address: Specifies the IP address of the network interface. + :vartype ip_address: str + """ + + _validation = { + 'ip_address': {'readonly': True}, + } + + _attribute_map = { + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(IpAddress, self).__init__(**kwargs) + self.ip_address = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/network_profile.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/network_profile.py index b0efb56d7d5a..ba74ee635792 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/network_profile.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/network_profile.py @@ -35,7 +35,7 @@ class NetworkProfile(Model): 'circuit_id': {'key': 'circuitId', 'type': 'str'}, } - def __init__(self, network_interfaces=None): - super(NetworkProfile, self).__init__() - self.network_interfaces = network_interfaces + def __init__(self, **kwargs): + super(NetworkProfile, self).__init__(**kwargs) + self.network_interfaces = kwargs.get('network_interfaces', None) self.circuit_id = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/network_profile_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/network_profile_py3.py new file mode 100644 index 000000000000..42eeddf025c7 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/network_profile_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkProfile(Model): + """Specifies the network settings for the HANA instance disks. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_interfaces: Specifies the network interfaces for the HANA + instance. + :type network_interfaces: list[~azure.mgmt.hanaonazure.models.IpAddress] + :ivar circuit_id: Specifies the circuit id for connecting to express + route. + :vartype circuit_id: str + """ + + _validation = { + 'circuit_id': {'readonly': True}, + } + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[IpAddress]'}, + 'circuit_id': {'key': 'circuitId', 'type': 'str'}, + } + + def __init__(self, *, network_interfaces=None, **kwargs) -> None: + super(NetworkProfile, self).__init__(**kwargs) + self.network_interfaces = network_interfaces + self.circuit_id = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/operation.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/operation.py index 624602063c98..0c18726636c4 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/operation.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/operation.py @@ -35,7 +35,7 @@ class Operation(Model): 'display': {'key': 'display', 'type': 'Display'}, } - def __init__(self, display=None): - super(Operation, self).__init__() + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) self.name = None - self.display = display + self.display = kwargs.get('display', None) diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/operation_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/operation_py3.py new file mode 100644 index 000000000000..a95d21640f4e --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/operation_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """HANA operation information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the operation being performed on this particular + object. This name should match the action name that appears in RBAC / the + event service. + :vartype name: str + :param display: Displayed HANA operation information + :type display: ~azure.mgmt.hanaonazure.models.Display + """ + + _validation = { + 'name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'Display'}, + } + + def __init__(self, *, display=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = None + self.display = display diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/os_profile.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/os_profile.py index 5fe9e3911c0f..775aa4320575 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/os_profile.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/os_profile.py @@ -38,8 +38,8 @@ class OSProfile(Model): 'version': {'key': 'version', 'type': 'str'}, } - def __init__(self): - super(OSProfile, self).__init__() + def __init__(self, **kwargs): + super(OSProfile, self).__init__(**kwargs) self.computer_name = None self.os_type = None self.version = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/os_profile_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/os_profile_py3.py new file mode 100644 index 000000000000..17fbeff93e45 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/os_profile_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OSProfile(Model): + """Specifies the operating system settings for the HANA instance. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar computer_name: Specifies the host OS name of the HANA instance. + :vartype computer_name: str + :ivar os_type: This property allows you to specify the type of the OS. + :vartype os_type: str + :ivar version: Specifies version of operating system. + :vartype version: str + """ + + _validation = { + 'computer_name': {'readonly': True}, + 'os_type': {'readonly': True}, + 'version': {'readonly': True}, + } + + _attribute_map = { + 'computer_name': {'key': 'computerName', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(OSProfile, self).__init__(**kwargs) + self.computer_name = None + self.os_type = None + self.version = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/resource.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/resource.py index 10f2b7aef9d4..99b32af0d9fe 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/resource.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/resource.py @@ -46,8 +46,8 @@ class Resource(Model): 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self): - super(Resource, self).__init__() + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) self.id = None self.name = None self.type = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/resource_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/resource_py3.py new file mode 100644 index 000000000000..0696665423e1 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/resource_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """The resource model 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 + :ivar type: Resource type + :vartype type: str + :ivar location: Resource location + :vartype location: str + :ivar tags: Resource tags + :vartype tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'tags': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = None + self.tags = None diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/storage_profile.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/storage_profile.py index 037455f5b716..d39fde22aab7 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/storage_profile.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/storage_profile.py @@ -34,7 +34,7 @@ class StorageProfile(Model): 'os_disks': {'key': 'osDisks', 'type': '[Disk]'}, } - def __init__(self, os_disks=None): - super(StorageProfile, self).__init__() + def __init__(self, **kwargs): + super(StorageProfile, self).__init__(**kwargs) self.nfs_ip_address = None - self.os_disks = os_disks + self.os_disks = kwargs.get('os_disks', None) diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/storage_profile_py3.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/storage_profile_py3.py new file mode 100644 index 000000000000..dae247db8738 --- /dev/null +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/models/storage_profile_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """Specifies the storage settings for the HANA instance disks. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar nfs_ip_address: IP Address to connect to storage. + :vartype nfs_ip_address: str + :param os_disks: Specifies information about the operating system disk + used by the hana instance. + :type os_disks: list[~azure.mgmt.hanaonazure.models.Disk] + """ + + _validation = { + 'nfs_ip_address': {'readonly': True}, + } + + _attribute_map = { + 'nfs_ip_address': {'key': 'nfsIpAddress', 'type': 'str'}, + 'os_disks': {'key': 'osDisks', 'type': '[Disk]'}, + } + + def __init__(self, *, os_disks=None, **kwargs) -> None: + super(StorageProfile, self).__init__(**kwargs) + self.nfs_ip_address = None + self.os_disks = os_disks diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/operations/hana_instances_operations.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/operations/hana_instances_operations.py index 90b217293975..c0cf8275c92c 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/operations/hana_instances_operations.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/operations/hana_instances_operations.py @@ -11,6 +11,7 @@ import uuid from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError from .. import models @@ -75,7 +76,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,9 +85,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -147,7 +147,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,9 +156,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -213,7 +212,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -222,8 +221,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -239,3 +238,56 @@ def get( return deserialized get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HanaOnAzure/hanaInstances/{hanaInstanceName}'} + + def restart( + self, resource_group_name, hana_instance_name, custom_headers=None, raw=False, **operation_config): + """The operation to restart a SAP HANA instance. + + :param resource_group_name: Name of the resource group. + :type resource_group_name: str + :param hana_instance_name: Name of the SAP HANA on Azure instance. + :type hana_instance_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.restart.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'hanaInstanceName': self._serialize.url("hana_instance_name", hana_instance_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + restart.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HanaOnAzure/hanaInstances/{hanaInstanceName}/restart'} diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/operations/operations.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/operations/operations.py index 3d9de7845b23..6cf82ecc3229 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/operations/operations.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/version.py b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/version.py index e7efe25ea7e0..3da0f49f071f 100644 --- a/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/version.py +++ b/azure-mgmt-hanaonazure/azure/mgmt/hanaonazure/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.1.1" +VERSION = "0.2.1" diff --git a/azure-mgmt-hanaonazure/azure_bdist_wheel.py b/azure-mgmt-hanaonazure/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-hanaonazure/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-hanaonazure/sdk_packaging.toml b/azure-mgmt-hanaonazure/sdk_packaging.toml new file mode 100644 index 000000000000..dc6e1c109f6d --- /dev/null +++ b/azure-mgmt-hanaonazure/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-hanaonazure" +package_pprint_name = "SAP Hana on Azure Management" +package_doc_id = "hanaonazure" +is_stable = false +is_arm = true diff --git a/azure-mgmt-hanaonazure/setup.cfg b/azure-mgmt-hanaonazure/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-hanaonazure/setup.cfg +++ b/azure-mgmt-hanaonazure/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-hanaonazure/setup.py b/azure-mgmt-hanaonazure/setup.py index e5eedde24c28..9f44001ba520 100644 --- a/azure-mgmt-hanaonazure/setup.py +++ b/azure-mgmt-hanaonazure/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-hanaonazure" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-hdinsight/HISTORY.rst b/azure-mgmt-hdinsight/HISTORY.rst new file mode 100644 index 000000000000..e67398f65bb4 --- /dev/null +++ b/azure-mgmt-hdinsight/HISTORY.rst @@ -0,0 +1,9 @@ +.. :changelog: + +Release History +=============== + +0.1.0 (2018-08-08) +++++++++++++++++++ + +* Initial Release diff --git a/azure-mgmt-hdinsight/MANIFEST.in b/azure-mgmt-hdinsight/MANIFEST.in new file mode 100644 index 000000000000..bb37a2723dae --- /dev/null +++ b/azure-mgmt-hdinsight/MANIFEST.in @@ -0,0 +1 @@ +include *.rst diff --git a/azure-mgmt-hdinsight/README.rst b/azure-mgmt-hdinsight/README.rst new file mode 100644 index 000000000000..333cb3912ec5 --- /dev/null +++ b/azure-mgmt-hdinsight/README.rst @@ -0,0 +1,49 @@ +Microsoft Azure SDK for Python +============================== + +This is the Microsoft Azure HDInsight Management Client Library. + +Azure Resource Manager (ARM) is the next generation of management APIs that +replace the old Azure Service Management (ASM). + +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For the older Azure Service Management (ASM) libraries, see +`azure-servicemanagement-legacy `__ library. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. + + +Compatibility +============= + +**IMPORTANT**: If you have an earlier version of the azure package +(version < 1.0), you should uninstall it before installing this package. + +You can check the version using pip: + +.. code:: shell + + pip freeze + +If you see azure==0.11.0 (or any version below 1.0), uninstall it first: + +.. code:: shell + + pip uninstall azure + + +Usage +===== + +For code examples, see `HDInsight Management +`__ +on docs.microsoft.com. + + +Provide Feedback +================ + +If you encounter any bugs or have suggestions, please file an issue in the +`Issues `__ +section of the project. diff --git a/azure-mgmt-hdinsight/azure/__init__.py b/azure-mgmt-hdinsight/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-hdinsight/azure/mgmt/__init__.py b/azure-mgmt-hdinsight/azure/mgmt/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/__init__.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/__init__.py new file mode 100644 index 000000000000..d2acd294f586 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/__init__.py @@ -0,0 +1,18 @@ +# 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 .hd_insight_management_client import HDInsightManagementClient +from .version import VERSION + +__all__ = ['HDInsightManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/hd_insight_management_client.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/hd_insight_management_client.py new file mode 100644 index 000000000000..43afe47bc32b --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/hd_insight_management_client.py @@ -0,0 +1,120 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.clusters_operations import ClustersOperations +from .operations.applications_operations import ApplicationsOperations +from .operations.locations_operations import LocationsOperations +from .operations.configurations_operations import ConfigurationsOperations +from .operations.extension_operations import ExtensionOperations +from .operations.script_actions_operations import ScriptActionsOperations +from .operations.script_execution_history_operations import ScriptExecutionHistoryOperations +from .operations.operations import Operations +from . import models + + +class HDInsightManagementClientConfiguration(AzureConfiguration): + """Configuration for HDInsightManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription credentials which uniquely + identify Microsoft Azure subscription. The subscription ID forms part of + the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(HDInsightManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-hdinsight/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class HDInsightManagementClient(SDKClient): + """HDInsight Management Client + + :ivar config: Configuration for client. + :vartype config: HDInsightManagementClientConfiguration + + :ivar clusters: Clusters operations + :vartype clusters: azure.mgmt.hdinsight.operations.ClustersOperations + :ivar applications: Applications operations + :vartype applications: azure.mgmt.hdinsight.operations.ApplicationsOperations + :ivar locations: Locations operations + :vartype locations: azure.mgmt.hdinsight.operations.LocationsOperations + :ivar configurations: Configurations operations + :vartype configurations: azure.mgmt.hdinsight.operations.ConfigurationsOperations + :ivar extension: Extension operations + :vartype extension: azure.mgmt.hdinsight.operations.ExtensionOperations + :ivar script_actions: ScriptActions operations + :vartype script_actions: azure.mgmt.hdinsight.operations.ScriptActionsOperations + :ivar script_execution_history: ScriptExecutionHistory operations + :vartype script_execution_history: azure.mgmt.hdinsight.operations.ScriptExecutionHistoryOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.hdinsight.operations.Operations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription credentials which uniquely + identify Microsoft Azure subscription. The subscription ID forms part of + the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = HDInsightManagementClientConfiguration(credentials, subscription_id, base_url) + super(HDInsightManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2015-03-01-preview' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.clusters = ClustersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.applications = ApplicationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.locations = LocationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.configurations = ConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.extension = ExtensionOperations( + self._client, self.config, self._serialize, self._deserialize) + self.script_actions = ScriptActionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.script_execution_history = ScriptExecutionHistoryOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/__init__.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/__init__.py new file mode 100644 index 000000000000..20db57166905 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/__init__.py @@ -0,0 +1,201 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .cluster_definition_py3 import ClusterDefinition + from .security_profile_py3 import SecurityProfile + from .hardware_profile_py3 import HardwareProfile + from .virtual_network_profile_py3 import VirtualNetworkProfile + from .data_disks_groups_py3 import DataDisksGroups + from .ssh_public_key_py3 import SshPublicKey + from .ssh_profile_py3 import SshProfile + from .linux_operating_system_profile_py3 import LinuxOperatingSystemProfile + from .os_profile_py3 import OsProfile + from .script_action_py3 import ScriptAction + from .role_py3 import Role + from .compute_profile_py3 import ComputeProfile + from .storage_account_py3 import StorageAccount + from .storage_profile_py3 import StorageProfile + from .cluster_create_properties_py3 import ClusterCreateProperties + from .cluster_create_parameters_extended_py3 import ClusterCreateParametersExtended + from .cluster_patch_parameters_py3 import ClusterPatchParameters + from .quota_info_py3 import QuotaInfo + from .errors_py3 import Errors + from .connectivity_endpoint_py3 import ConnectivityEndpoint + from .cluster_get_properties_py3 import ClusterGetProperties + from .cluster_py3 import Cluster + from .runtime_script_action_py3 import RuntimeScriptAction + from .execute_script_action_parameters_py3 import ExecuteScriptActionParameters + from .cluster_list_persisted_script_actions_result_py3 import ClusterListPersistedScriptActionsResult + from .script_action_execution_summary_py3 import ScriptActionExecutionSummary + from .runtime_script_action_detail_py3 import RuntimeScriptActionDetail + from .cluster_list_runtime_script_action_detail_result_py3 import ClusterListRuntimeScriptActionDetailResult + from .cluster_resize_parameters_py3 import ClusterResizeParameters + from .operation_resource_py3 import OperationResource + from .resource_py3 import Resource + from .tracked_resource_py3 import TrackedResource + from .proxy_resource_py3 import ProxyResource + from .error_response_py3 import ErrorResponse, ErrorResponseException + from .application_get_https_endpoint_py3 import ApplicationGetHttpsEndpoint + from .application_get_endpoint_py3 import ApplicationGetEndpoint + from .application_properties_py3 import ApplicationProperties + from .application_py3 import Application + from .version_spec_py3 import VersionSpec + from .versions_capability_py3 import VersionsCapability + from .regions_capability_py3 import RegionsCapability + from .vm_sizes_capability_py3 import VmSizesCapability + from .vm_size_compatibility_filter_py3 import VmSizeCompatibilityFilter + from .regional_quota_capability_py3 import RegionalQuotaCapability + from .quota_capability_py3 import QuotaCapability + from .capabilities_result_py3 import CapabilitiesResult + from .localized_name_py3 import LocalizedName + from .usage_py3 import Usage + from .usages_list_result_py3 import UsagesListResult + from .extension_py3 import Extension + from .cluster_monitoring_response_py3 import ClusterMonitoringResponse + from .cluster_monitoring_request_py3 import ClusterMonitoringRequest + from .script_action_persisted_get_response_spec_py3 import ScriptActionPersistedGetResponseSpec + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation +except (SyntaxError, ImportError): + from .cluster_definition import ClusterDefinition + from .security_profile import SecurityProfile + from .hardware_profile import HardwareProfile + from .virtual_network_profile import VirtualNetworkProfile + from .data_disks_groups import DataDisksGroups + from .ssh_public_key import SshPublicKey + from .ssh_profile import SshProfile + from .linux_operating_system_profile import LinuxOperatingSystemProfile + from .os_profile import OsProfile + from .script_action import ScriptAction + from .role import Role + from .compute_profile import ComputeProfile + from .storage_account import StorageAccount + from .storage_profile import StorageProfile + from .cluster_create_properties import ClusterCreateProperties + from .cluster_create_parameters_extended import ClusterCreateParametersExtended + from .cluster_patch_parameters import ClusterPatchParameters + from .quota_info import QuotaInfo + from .errors import Errors + from .connectivity_endpoint import ConnectivityEndpoint + from .cluster_get_properties import ClusterGetProperties + from .cluster import Cluster + from .runtime_script_action import RuntimeScriptAction + from .execute_script_action_parameters import ExecuteScriptActionParameters + from .cluster_list_persisted_script_actions_result import ClusterListPersistedScriptActionsResult + from .script_action_execution_summary import ScriptActionExecutionSummary + from .runtime_script_action_detail import RuntimeScriptActionDetail + from .cluster_list_runtime_script_action_detail_result import ClusterListRuntimeScriptActionDetailResult + from .cluster_resize_parameters import ClusterResizeParameters + from .operation_resource import OperationResource + from .resource import Resource + from .tracked_resource import TrackedResource + from .proxy_resource import ProxyResource + from .error_response import ErrorResponse, ErrorResponseException + from .application_get_https_endpoint import ApplicationGetHttpsEndpoint + from .application_get_endpoint import ApplicationGetEndpoint + from .application_properties import ApplicationProperties + from .application import Application + from .version_spec import VersionSpec + from .versions_capability import VersionsCapability + from .regions_capability import RegionsCapability + from .vm_sizes_capability import VmSizesCapability + from .vm_size_compatibility_filter import VmSizeCompatibilityFilter + from .regional_quota_capability import RegionalQuotaCapability + from .quota_capability import QuotaCapability + from .capabilities_result import CapabilitiesResult + from .localized_name import LocalizedName + from .usage import Usage + from .usages_list_result import UsagesListResult + from .extension import Extension + from .cluster_monitoring_response import ClusterMonitoringResponse + from .cluster_monitoring_request import ClusterMonitoringRequest + from .script_action_persisted_get_response_spec import ScriptActionPersistedGetResponseSpec + from .operation_display import OperationDisplay + from .operation import Operation +from .cluster_paged import ClusterPaged +from .application_paged import ApplicationPaged +from .runtime_script_action_detail_paged import RuntimeScriptActionDetailPaged +from .operation_paged import OperationPaged +from .hd_insight_management_client_enums import ( + DirectoryType, + OSType, + Tier, + HDInsightClusterProvisioningState, + AsyncOperationState, +) + +__all__ = [ + 'ClusterDefinition', + 'SecurityProfile', + 'HardwareProfile', + 'VirtualNetworkProfile', + 'DataDisksGroups', + 'SshPublicKey', + 'SshProfile', + 'LinuxOperatingSystemProfile', + 'OsProfile', + 'ScriptAction', + 'Role', + 'ComputeProfile', + 'StorageAccount', + 'StorageProfile', + 'ClusterCreateProperties', + 'ClusterCreateParametersExtended', + 'ClusterPatchParameters', + 'QuotaInfo', + 'Errors', + 'ConnectivityEndpoint', + 'ClusterGetProperties', + 'Cluster', + 'RuntimeScriptAction', + 'ExecuteScriptActionParameters', + 'ClusterListPersistedScriptActionsResult', + 'ScriptActionExecutionSummary', + 'RuntimeScriptActionDetail', + 'ClusterListRuntimeScriptActionDetailResult', + 'ClusterResizeParameters', + 'OperationResource', + 'Resource', + 'TrackedResource', + 'ProxyResource', + 'ErrorResponse', 'ErrorResponseException', + 'ApplicationGetHttpsEndpoint', + 'ApplicationGetEndpoint', + 'ApplicationProperties', + 'Application', + 'VersionSpec', + 'VersionsCapability', + 'RegionsCapability', + 'VmSizesCapability', + 'VmSizeCompatibilityFilter', + 'RegionalQuotaCapability', + 'QuotaCapability', + 'CapabilitiesResult', + 'LocalizedName', + 'Usage', + 'UsagesListResult', + 'Extension', + 'ClusterMonitoringResponse', + 'ClusterMonitoringRequest', + 'ScriptActionPersistedGetResponseSpec', + 'OperationDisplay', + 'Operation', + 'ClusterPaged', + 'ApplicationPaged', + 'RuntimeScriptActionDetailPaged', + 'OperationPaged', + 'DirectoryType', + 'OSType', + 'Tier', + 'HDInsightClusterProvisioningState', + 'AsyncOperationState', +] diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application.py new file mode 100644 index 000000000000..fa0ede6700d4 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class Application(ProxyResource): + """The HDInsight cluster application. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param etag: The ETag for the application + :type etag: str + :param tags: The tags for the application. + :type tags: dict[str, str] + :param properties: The properties of the application. + :type properties: ~azure.mgmt.hdinsight.models.ApplicationProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'properties': {'key': 'properties', 'type': 'ApplicationProperties'}, + } + + def __init__(self, **kwargs): + super(Application, self).__init__(**kwargs) + self.etag = kwargs.get('etag', None) + self.tags = kwargs.get('tags', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_endpoint.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_endpoint.py new file mode 100644 index 000000000000..c4b9f5cd1be7 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_endpoint.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGetEndpoint(Model): + """Gets the application SSH endpoint. + + :param location: The location of the endpoint. + :type location: str + :param destination_port: The destination port to connect to. + :type destination_port: int + :param public_port: The public port to connect to. + :type public_port: int + """ + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'int'}, + 'public_port': {'key': 'publicPort', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGetEndpoint, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.destination_port = kwargs.get('destination_port', None) + self.public_port = kwargs.get('public_port', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_endpoint_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_endpoint_py3.py new file mode 100644 index 000000000000..7496fb1c7693 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_endpoint_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGetEndpoint(Model): + """Gets the application SSH endpoint. + + :param location: The location of the endpoint. + :type location: str + :param destination_port: The destination port to connect to. + :type destination_port: int + :param public_port: The public port to connect to. + :type public_port: int + """ + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'int'}, + 'public_port': {'key': 'publicPort', 'type': 'int'}, + } + + def __init__(self, *, location: str=None, destination_port: int=None, public_port: int=None, **kwargs) -> None: + super(ApplicationGetEndpoint, self).__init__(**kwargs) + self.location = location + self.destination_port = destination_port + self.public_port = public_port diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_https_endpoint.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_https_endpoint.py new file mode 100644 index 000000000000..b8f265d5e4d4 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_https_endpoint.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGetHttpsEndpoint(Model): + """Gets the application HTTP endpoints. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, str] + :param access_modes: The list of access modes for the application. + :type access_modes: list[str] + :param location: The location of the endpoint. + :type location: str + :param destination_port: The destination port to connect to. + :type destination_port: int + :param public_port: The public port to connect to. + :type public_port: int + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{str}'}, + 'access_modes': {'key': 'accessModes', 'type': '[str]'}, + 'location': {'key': 'location', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'int'}, + 'public_port': {'key': 'publicPort', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGetHttpsEndpoint, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.access_modes = kwargs.get('access_modes', None) + self.location = kwargs.get('location', None) + self.destination_port = kwargs.get('destination_port', None) + self.public_port = kwargs.get('public_port', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_https_endpoint_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_https_endpoint_py3.py new file mode 100644 index 000000000000..48942687a50a --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_get_https_endpoint_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGetHttpsEndpoint(Model): + """Gets the application HTTP endpoints. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, str] + :param access_modes: The list of access modes for the application. + :type access_modes: list[str] + :param location: The location of the endpoint. + :type location: str + :param destination_port: The destination port to connect to. + :type destination_port: int + :param public_port: The public port to connect to. + :type public_port: int + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{str}'}, + 'access_modes': {'key': 'accessModes', 'type': '[str]'}, + 'location': {'key': 'location', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'int'}, + 'public_port': {'key': 'publicPort', 'type': 'int'}, + } + + def __init__(self, *, additional_properties=None, access_modes=None, location: str=None, destination_port: int=None, public_port: int=None, **kwargs) -> None: + super(ApplicationGetHttpsEndpoint, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.access_modes = access_modes + self.location = location + self.destination_port = destination_port + self.public_port = public_port diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_paged.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_paged.py new file mode 100644 index 000000000000..4d8b02340d69 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ApplicationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Application ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Application]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_properties.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_properties.py new file mode 100644 index 000000000000..5f5e67ca6d47 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_properties.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationProperties(Model): + """The HDInsight cluster application GET response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param compute_profile: The list of roles in the cluster. + :type compute_profile: ~azure.mgmt.hdinsight.models.ComputeProfile + :param install_script_actions: The list of install script actions. + :type install_script_actions: + list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :param uninstall_script_actions: The list of uninstall script actions. + :type uninstall_script_actions: + list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :param https_endpoints: The list of application HTTPS endpoints. + :type https_endpoints: + list[~azure.mgmt.hdinsight.models.ApplicationGetHttpsEndpoint] + :param ssh_endpoints: The list of application SSH endpoints. + :type ssh_endpoints: + list[~azure.mgmt.hdinsight.models.ApplicationGetEndpoint] + :ivar provisioning_state: The provisioning state of the application. + :vartype provisioning_state: str + :param application_type: The application type. + :type application_type: str + :ivar application_state: The application state. + :vartype application_state: str + :param errors: The list of errors. + :type errors: list[~azure.mgmt.hdinsight.models.Errors] + :ivar created_date: The application create date time. + :vartype created_date: str + :ivar marketplace_identifier: The marketplace identifier. + :vartype marketplace_identifier: str + :param additional_properties: The additional properties for application. + :type additional_properties: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'application_state': {'readonly': True}, + 'created_date': {'readonly': True}, + 'marketplace_identifier': {'readonly': True}, + } + + _attribute_map = { + 'compute_profile': {'key': 'computeProfile', 'type': 'ComputeProfile'}, + 'install_script_actions': {'key': 'installScriptActions', 'type': '[RuntimeScriptAction]'}, + 'uninstall_script_actions': {'key': 'uninstallScriptActions', 'type': '[RuntimeScriptAction]'}, + 'https_endpoints': {'key': 'httpsEndpoints', 'type': '[ApplicationGetHttpsEndpoint]'}, + 'ssh_endpoints': {'key': 'sshEndpoints', 'type': '[ApplicationGetEndpoint]'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + 'application_type': {'key': 'applicationType', 'type': 'str'}, + 'application_state': {'key': 'applicationState', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '[Errors]'}, + 'created_date': {'key': 'createdDate', 'type': 'str'}, + 'marketplace_identifier': {'key': 'marketplaceIdentifier', 'type': 'str'}, + 'additional_properties': {'key': 'additionalProperties', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationProperties, self).__init__(**kwargs) + self.compute_profile = kwargs.get('compute_profile', None) + self.install_script_actions = kwargs.get('install_script_actions', None) + self.uninstall_script_actions = kwargs.get('uninstall_script_actions', None) + self.https_endpoints = kwargs.get('https_endpoints', None) + self.ssh_endpoints = kwargs.get('ssh_endpoints', None) + self.provisioning_state = None + self.application_type = kwargs.get('application_type', None) + self.application_state = None + self.errors = kwargs.get('errors', None) + self.created_date = None + self.marketplace_identifier = None + self.additional_properties = kwargs.get('additional_properties', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_properties_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_properties_py3.py new file mode 100644 index 000000000000..81d958ec3648 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_properties_py3.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationProperties(Model): + """The HDInsight cluster application GET response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param compute_profile: The list of roles in the cluster. + :type compute_profile: ~azure.mgmt.hdinsight.models.ComputeProfile + :param install_script_actions: The list of install script actions. + :type install_script_actions: + list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :param uninstall_script_actions: The list of uninstall script actions. + :type uninstall_script_actions: + list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :param https_endpoints: The list of application HTTPS endpoints. + :type https_endpoints: + list[~azure.mgmt.hdinsight.models.ApplicationGetHttpsEndpoint] + :param ssh_endpoints: The list of application SSH endpoints. + :type ssh_endpoints: + list[~azure.mgmt.hdinsight.models.ApplicationGetEndpoint] + :ivar provisioning_state: The provisioning state of the application. + :vartype provisioning_state: str + :param application_type: The application type. + :type application_type: str + :ivar application_state: The application state. + :vartype application_state: str + :param errors: The list of errors. + :type errors: list[~azure.mgmt.hdinsight.models.Errors] + :ivar created_date: The application create date time. + :vartype created_date: str + :ivar marketplace_identifier: The marketplace identifier. + :vartype marketplace_identifier: str + :param additional_properties: The additional properties for application. + :type additional_properties: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'application_state': {'readonly': True}, + 'created_date': {'readonly': True}, + 'marketplace_identifier': {'readonly': True}, + } + + _attribute_map = { + 'compute_profile': {'key': 'computeProfile', 'type': 'ComputeProfile'}, + 'install_script_actions': {'key': 'installScriptActions', 'type': '[RuntimeScriptAction]'}, + 'uninstall_script_actions': {'key': 'uninstallScriptActions', 'type': '[RuntimeScriptAction]'}, + 'https_endpoints': {'key': 'httpsEndpoints', 'type': '[ApplicationGetHttpsEndpoint]'}, + 'ssh_endpoints': {'key': 'sshEndpoints', 'type': '[ApplicationGetEndpoint]'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + 'application_type': {'key': 'applicationType', 'type': 'str'}, + 'application_state': {'key': 'applicationState', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '[Errors]'}, + 'created_date': {'key': 'createdDate', 'type': 'str'}, + 'marketplace_identifier': {'key': 'marketplaceIdentifier', 'type': 'str'}, + 'additional_properties': {'key': 'additionalProperties', 'type': 'str'}, + } + + def __init__(self, *, compute_profile=None, install_script_actions=None, uninstall_script_actions=None, https_endpoints=None, ssh_endpoints=None, application_type: str=None, errors=None, additional_properties: str=None, **kwargs) -> None: + super(ApplicationProperties, self).__init__(**kwargs) + self.compute_profile = compute_profile + self.install_script_actions = install_script_actions + self.uninstall_script_actions = uninstall_script_actions + self.https_endpoints = https_endpoints + self.ssh_endpoints = ssh_endpoints + self.provisioning_state = None + self.application_type = application_type + self.application_state = None + self.errors = errors + self.created_date = None + self.marketplace_identifier = None + self.additional_properties = additional_properties diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_py3.py new file mode 100644 index 000000000000..f7628ebf413c --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/application_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class Application(ProxyResource): + """The HDInsight cluster application. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param etag: The ETag for the application + :type etag: str + :param tags: The tags for the application. + :type tags: dict[str, str] + :param properties: The properties of the application. + :type properties: ~azure.mgmt.hdinsight.models.ApplicationProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'properties': {'key': 'properties', 'type': 'ApplicationProperties'}, + } + + def __init__(self, *, etag: str=None, tags=None, properties=None, **kwargs) -> None: + super(Application, self).__init__(**kwargs) + self.etag = etag + self.tags = tags + self.properties = properties diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/capabilities_result.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/capabilities_result.py new file mode 100644 index 000000000000..cbb4cd877acc --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/capabilities_result.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CapabilitiesResult(Model): + """The Get Capabilities operation response. + + :param versions: The version capability. + :type versions: dict[str, ~azure.mgmt.hdinsight.models.VersionsCapability] + :param regions: The virtual machine size compatibilty features. + :type regions: dict[str, ~azure.mgmt.hdinsight.models.RegionsCapability] + :param vm_sizes: The virtual machine sizes. + :type vm_sizes: dict[str, ~azure.mgmt.hdinsight.models.VmSizesCapability] + :param vm_size_filters: The virtual machine size compatibilty filters. + :type vm_size_filters: + list[~azure.mgmt.hdinsight.models.VmSizeCompatibilityFilter] + :param features: The capabilty features. + :type features: list[str] + :param quota: The quota capability. + :type quota: ~azure.mgmt.hdinsight.models.QuotaCapability + """ + + _attribute_map = { + 'versions': {'key': 'versions', 'type': '{VersionsCapability}'}, + 'regions': {'key': 'regions', 'type': '{RegionsCapability}'}, + 'vm_sizes': {'key': 'vmSizes', 'type': '{VmSizesCapability}'}, + 'vm_size_filters': {'key': 'vmSize_filters', 'type': '[VmSizeCompatibilityFilter]'}, + 'features': {'key': 'features', 'type': '[str]'}, + 'quota': {'key': 'quota', 'type': 'QuotaCapability'}, + } + + def __init__(self, **kwargs): + super(CapabilitiesResult, self).__init__(**kwargs) + self.versions = kwargs.get('versions', None) + self.regions = kwargs.get('regions', None) + self.vm_sizes = kwargs.get('vm_sizes', None) + self.vm_size_filters = kwargs.get('vm_size_filters', None) + self.features = kwargs.get('features', None) + self.quota = kwargs.get('quota', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/capabilities_result_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/capabilities_result_py3.py new file mode 100644 index 000000000000..e057697f9f3f --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/capabilities_result_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CapabilitiesResult(Model): + """The Get Capabilities operation response. + + :param versions: The version capability. + :type versions: dict[str, ~azure.mgmt.hdinsight.models.VersionsCapability] + :param regions: The virtual machine size compatibilty features. + :type regions: dict[str, ~azure.mgmt.hdinsight.models.RegionsCapability] + :param vm_sizes: The virtual machine sizes. + :type vm_sizes: dict[str, ~azure.mgmt.hdinsight.models.VmSizesCapability] + :param vm_size_filters: The virtual machine size compatibilty filters. + :type vm_size_filters: + list[~azure.mgmt.hdinsight.models.VmSizeCompatibilityFilter] + :param features: The capabilty features. + :type features: list[str] + :param quota: The quota capability. + :type quota: ~azure.mgmt.hdinsight.models.QuotaCapability + """ + + _attribute_map = { + 'versions': {'key': 'versions', 'type': '{VersionsCapability}'}, + 'regions': {'key': 'regions', 'type': '{RegionsCapability}'}, + 'vm_sizes': {'key': 'vmSizes', 'type': '{VmSizesCapability}'}, + 'vm_size_filters': {'key': 'vmSize_filters', 'type': '[VmSizeCompatibilityFilter]'}, + 'features': {'key': 'features', 'type': '[str]'}, + 'quota': {'key': 'quota', 'type': 'QuotaCapability'}, + } + + def __init__(self, *, versions=None, regions=None, vm_sizes=None, vm_size_filters=None, features=None, quota=None, **kwargs) -> None: + super(CapabilitiesResult, self).__init__(**kwargs) + self.versions = versions + self.regions = regions + self.vm_sizes = vm_sizes + self.vm_size_filters = vm_size_filters + self.features = features + self.quota = quota diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster.py new file mode 100644 index 000000000000..cff55f384b0c --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource import TrackedResource + + +class Cluster(TrackedResource): + """The HDInsight cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: The Azure Region where the resource lives + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param etag: The ETag for the resource + :type etag: str + :param properties: The properties of the cluster. + :type properties: ~azure.mgmt.hdinsight.models.ClusterGetProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'ClusterGetProperties'}, + } + + def __init__(self, **kwargs): + super(Cluster, self).__init__(**kwargs) + self.etag = kwargs.get('etag', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_parameters_extended.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_parameters_extended.py new file mode 100644 index 000000000000..898754c65466 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_parameters_extended.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterCreateParametersExtended(Model): + """The CreateCluster request parameters. + + :param location: The location of the cluster. + :type location: str + :param tags: The resource tags. + :type tags: dict[str, str] + :param properties: The cluster create parameters. + :type properties: ~azure.mgmt.hdinsight.models.ClusterCreateProperties + """ + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'properties': {'key': 'properties', 'type': 'ClusterCreateProperties'}, + } + + def __init__(self, **kwargs): + super(ClusterCreateParametersExtended, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_parameters_extended_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_parameters_extended_py3.py new file mode 100644 index 000000000000..31dfb47324d2 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_parameters_extended_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterCreateParametersExtended(Model): + """The CreateCluster request parameters. + + :param location: The location of the cluster. + :type location: str + :param tags: The resource tags. + :type tags: dict[str, str] + :param properties: The cluster create parameters. + :type properties: ~azure.mgmt.hdinsight.models.ClusterCreateProperties + """ + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'properties': {'key': 'properties', 'type': 'ClusterCreateProperties'}, + } + + def __init__(self, *, location: str=None, tags=None, properties=None, **kwargs) -> None: + super(ClusterCreateParametersExtended, self).__init__(**kwargs) + self.location = location + self.tags = tags + self.properties = properties diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_properties.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_properties.py new file mode 100644 index 000000000000..2a3d9d82b770 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_properties.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterCreateProperties(Model): + """The cluster create parameters. + + :param cluster_version: The version of the cluster. + :type cluster_version: str + :param os_type: The type of operating system. Possible values include: + 'Windows', 'Linux' + :type os_type: str or ~azure.mgmt.hdinsight.models.OSType + :param tier: The cluster tier. Possible values include: 'Standard', + 'Premium' + :type tier: str or ~azure.mgmt.hdinsight.models.Tier + :param cluster_definition: The cluster definition. + :type cluster_definition: ~azure.mgmt.hdinsight.models.ClusterDefinition + :param security_profile: The security profile. + :type security_profile: ~azure.mgmt.hdinsight.models.SecurityProfile + :param compute_profile: The compute profile. + :type compute_profile: ~azure.mgmt.hdinsight.models.ComputeProfile + :param storage_profile: The storage profile. + :type storage_profile: ~azure.mgmt.hdinsight.models.StorageProfile + """ + + _attribute_map = { + 'cluster_version': {'key': 'clusterVersion', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'OSType'}, + 'tier': {'key': 'tier', 'type': 'Tier'}, + 'cluster_definition': {'key': 'clusterDefinition', 'type': 'ClusterDefinition'}, + 'security_profile': {'key': 'securityProfile', 'type': 'SecurityProfile'}, + 'compute_profile': {'key': 'computeProfile', 'type': 'ComputeProfile'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + } + + def __init__(self, **kwargs): + super(ClusterCreateProperties, self).__init__(**kwargs) + self.cluster_version = kwargs.get('cluster_version', None) + self.os_type = kwargs.get('os_type', None) + self.tier = kwargs.get('tier', None) + self.cluster_definition = kwargs.get('cluster_definition', None) + self.security_profile = kwargs.get('security_profile', None) + self.compute_profile = kwargs.get('compute_profile', None) + self.storage_profile = kwargs.get('storage_profile', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_properties_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_properties_py3.py new file mode 100644 index 000000000000..116d6af0eb95 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_create_properties_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterCreateProperties(Model): + """The cluster create parameters. + + :param cluster_version: The version of the cluster. + :type cluster_version: str + :param os_type: The type of operating system. Possible values include: + 'Windows', 'Linux' + :type os_type: str or ~azure.mgmt.hdinsight.models.OSType + :param tier: The cluster tier. Possible values include: 'Standard', + 'Premium' + :type tier: str or ~azure.mgmt.hdinsight.models.Tier + :param cluster_definition: The cluster definition. + :type cluster_definition: ~azure.mgmt.hdinsight.models.ClusterDefinition + :param security_profile: The security profile. + :type security_profile: ~azure.mgmt.hdinsight.models.SecurityProfile + :param compute_profile: The compute profile. + :type compute_profile: ~azure.mgmt.hdinsight.models.ComputeProfile + :param storage_profile: The storage profile. + :type storage_profile: ~azure.mgmt.hdinsight.models.StorageProfile + """ + + _attribute_map = { + 'cluster_version': {'key': 'clusterVersion', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'OSType'}, + 'tier': {'key': 'tier', 'type': 'Tier'}, + 'cluster_definition': {'key': 'clusterDefinition', 'type': 'ClusterDefinition'}, + 'security_profile': {'key': 'securityProfile', 'type': 'SecurityProfile'}, + 'compute_profile': {'key': 'computeProfile', 'type': 'ComputeProfile'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + } + + def __init__(self, *, cluster_version: str=None, os_type=None, tier=None, cluster_definition=None, security_profile=None, compute_profile=None, storage_profile=None, **kwargs) -> None: + super(ClusterCreateProperties, self).__init__(**kwargs) + self.cluster_version = cluster_version + self.os_type = os_type + self.tier = tier + self.cluster_definition = cluster_definition + self.security_profile = security_profile + self.compute_profile = compute_profile + self.storage_profile = storage_profile diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_definition.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_definition.py new file mode 100644 index 000000000000..7cd8bc5cb68d --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_definition.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterDefinition(Model): + """The cluster definition. + + :param blueprint: The link to the blueprint. + :type blueprint: str + :param kind: The type of cluster. + :type kind: str + :param component_version: The versions of different services in the + cluster. + :type component_version: dict[str, str] + :param configurations: The cluster configurations. + :type configurations: object + """ + + _attribute_map = { + 'blueprint': {'key': 'blueprint', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'component_version': {'key': 'componentVersion', 'type': '{str}'}, + 'configurations': {'key': 'configurations', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(ClusterDefinition, self).__init__(**kwargs) + self.blueprint = kwargs.get('blueprint', None) + self.kind = kwargs.get('kind', None) + self.component_version = kwargs.get('component_version', None) + self.configurations = kwargs.get('configurations', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_definition_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_definition_py3.py new file mode 100644 index 000000000000..5ee220847c74 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_definition_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterDefinition(Model): + """The cluster definition. + + :param blueprint: The link to the blueprint. + :type blueprint: str + :param kind: The type of cluster. + :type kind: str + :param component_version: The versions of different services in the + cluster. + :type component_version: dict[str, str] + :param configurations: The cluster configurations. + :type configurations: object + """ + + _attribute_map = { + 'blueprint': {'key': 'blueprint', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'component_version': {'key': 'componentVersion', 'type': '{str}'}, + 'configurations': {'key': 'configurations', 'type': 'object'}, + } + + def __init__(self, *, blueprint: str=None, kind: str=None, component_version=None, configurations=None, **kwargs) -> None: + super(ClusterDefinition, self).__init__(**kwargs) + self.blueprint = blueprint + self.kind = kind + self.component_version = component_version + self.configurations = configurations diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_get_properties.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_get_properties.py new file mode 100644 index 000000000000..988d03dbf1a7 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_get_properties.py @@ -0,0 +1,84 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterGetProperties(Model): + """The properties of cluster. + + All required parameters must be populated in order to send to Azure. + + :param cluster_version: The version of the cluster. + :type cluster_version: str + :param os_type: The type of operating system. Possible values include: + 'Windows', 'Linux' + :type os_type: str or ~azure.mgmt.hdinsight.models.OSType + :param tier: The cluster tier. Possible values include: 'Standard', + 'Premium' + :type tier: str or ~azure.mgmt.hdinsight.models.Tier + :param cluster_definition: Required. The cluster definition. + :type cluster_definition: ~azure.mgmt.hdinsight.models.ClusterDefinition + :param security_profile: The security profile. + :type security_profile: ~azure.mgmt.hdinsight.models.SecurityProfile + :param compute_profile: The compute profile. + :type compute_profile: ~azure.mgmt.hdinsight.models.ComputeProfile + :param provisioning_state: The provisioning state, which only appears in + the response. Possible values include: 'InProgress', 'Failed', + 'Succeeded', 'Canceled', 'Deleting' + :type provisioning_state: str or + ~azure.mgmt.hdinsight.models.HDInsightClusterProvisioningState + :param created_date: The date on which the cluster was created. + :type created_date: str + :param cluster_state: The state of the cluster. + :type cluster_state: str + :param quota_info: The quota information. + :type quota_info: ~azure.mgmt.hdinsight.models.QuotaInfo + :param errors: The list of errors. + :type errors: list[~azure.mgmt.hdinsight.models.Errors] + :param connectivity_endpoints: The list of connectivity endpoints. + :type connectivity_endpoints: + list[~azure.mgmt.hdinsight.models.ConnectivityEndpoint] + """ + + _validation = { + 'cluster_definition': {'required': True}, + } + + _attribute_map = { + 'cluster_version': {'key': 'clusterVersion', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'OSType'}, + 'tier': {'key': 'tier', 'type': 'Tier'}, + 'cluster_definition': {'key': 'clusterDefinition', 'type': 'ClusterDefinition'}, + 'security_profile': {'key': 'securityProfile', 'type': 'SecurityProfile'}, + 'compute_profile': {'key': 'computeProfile', 'type': 'ComputeProfile'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'HDInsightClusterProvisioningState'}, + 'created_date': {'key': 'createdDate', 'type': 'str'}, + 'cluster_state': {'key': 'clusterState', 'type': 'str'}, + 'quota_info': {'key': 'quotaInfo', 'type': 'QuotaInfo'}, + 'errors': {'key': 'errors', 'type': '[Errors]'}, + 'connectivity_endpoints': {'key': 'connectivityEndpoints', 'type': '[ConnectivityEndpoint]'}, + } + + def __init__(self, **kwargs): + super(ClusterGetProperties, self).__init__(**kwargs) + self.cluster_version = kwargs.get('cluster_version', None) + self.os_type = kwargs.get('os_type', None) + self.tier = kwargs.get('tier', None) + self.cluster_definition = kwargs.get('cluster_definition', None) + self.security_profile = kwargs.get('security_profile', None) + self.compute_profile = kwargs.get('compute_profile', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.created_date = kwargs.get('created_date', None) + self.cluster_state = kwargs.get('cluster_state', None) + self.quota_info = kwargs.get('quota_info', None) + self.errors = kwargs.get('errors', None) + self.connectivity_endpoints = kwargs.get('connectivity_endpoints', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_get_properties_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_get_properties_py3.py new file mode 100644 index 000000000000..1c9024117dab --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_get_properties_py3.py @@ -0,0 +1,84 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterGetProperties(Model): + """The properties of cluster. + + All required parameters must be populated in order to send to Azure. + + :param cluster_version: The version of the cluster. + :type cluster_version: str + :param os_type: The type of operating system. Possible values include: + 'Windows', 'Linux' + :type os_type: str or ~azure.mgmt.hdinsight.models.OSType + :param tier: The cluster tier. Possible values include: 'Standard', + 'Premium' + :type tier: str or ~azure.mgmt.hdinsight.models.Tier + :param cluster_definition: Required. The cluster definition. + :type cluster_definition: ~azure.mgmt.hdinsight.models.ClusterDefinition + :param security_profile: The security profile. + :type security_profile: ~azure.mgmt.hdinsight.models.SecurityProfile + :param compute_profile: The compute profile. + :type compute_profile: ~azure.mgmt.hdinsight.models.ComputeProfile + :param provisioning_state: The provisioning state, which only appears in + the response. Possible values include: 'InProgress', 'Failed', + 'Succeeded', 'Canceled', 'Deleting' + :type provisioning_state: str or + ~azure.mgmt.hdinsight.models.HDInsightClusterProvisioningState + :param created_date: The date on which the cluster was created. + :type created_date: str + :param cluster_state: The state of the cluster. + :type cluster_state: str + :param quota_info: The quota information. + :type quota_info: ~azure.mgmt.hdinsight.models.QuotaInfo + :param errors: The list of errors. + :type errors: list[~azure.mgmt.hdinsight.models.Errors] + :param connectivity_endpoints: The list of connectivity endpoints. + :type connectivity_endpoints: + list[~azure.mgmt.hdinsight.models.ConnectivityEndpoint] + """ + + _validation = { + 'cluster_definition': {'required': True}, + } + + _attribute_map = { + 'cluster_version': {'key': 'clusterVersion', 'type': 'str'}, + 'os_type': {'key': 'osType', 'type': 'OSType'}, + 'tier': {'key': 'tier', 'type': 'Tier'}, + 'cluster_definition': {'key': 'clusterDefinition', 'type': 'ClusterDefinition'}, + 'security_profile': {'key': 'securityProfile', 'type': 'SecurityProfile'}, + 'compute_profile': {'key': 'computeProfile', 'type': 'ComputeProfile'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'HDInsightClusterProvisioningState'}, + 'created_date': {'key': 'createdDate', 'type': 'str'}, + 'cluster_state': {'key': 'clusterState', 'type': 'str'}, + 'quota_info': {'key': 'quotaInfo', 'type': 'QuotaInfo'}, + 'errors': {'key': 'errors', 'type': '[Errors]'}, + 'connectivity_endpoints': {'key': 'connectivityEndpoints', 'type': '[ConnectivityEndpoint]'}, + } + + def __init__(self, *, cluster_definition, cluster_version: str=None, os_type=None, tier=None, security_profile=None, compute_profile=None, provisioning_state=None, created_date: str=None, cluster_state: str=None, quota_info=None, errors=None, connectivity_endpoints=None, **kwargs) -> None: + super(ClusterGetProperties, self).__init__(**kwargs) + self.cluster_version = cluster_version + self.os_type = os_type + self.tier = tier + self.cluster_definition = cluster_definition + self.security_profile = security_profile + self.compute_profile = compute_profile + self.provisioning_state = provisioning_state + self.created_date = created_date + self.cluster_state = cluster_state + self.quota_info = quota_info + self.errors = errors + self.connectivity_endpoints = connectivity_endpoints diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_persisted_script_actions_result.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_persisted_script_actions_result.py new file mode 100644 index 000000000000..861f9c41b350 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_persisted_script_actions_result.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterListPersistedScriptActionsResult(Model): + """The ListPersistedScriptActions operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The list of Persisted Script Actions. + :type value: list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :ivar next_link: The link (url) to the next page of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RuntimeScriptAction]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ClusterListPersistedScriptActionsResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_persisted_script_actions_result_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_persisted_script_actions_result_py3.py new file mode 100644 index 000000000000..4127fa03333e --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_persisted_script_actions_result_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterListPersistedScriptActionsResult(Model): + """The ListPersistedScriptActions operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The list of Persisted Script Actions. + :type value: list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :ivar next_link: The link (url) to the next page of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RuntimeScriptAction]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ClusterListPersistedScriptActionsResult, self).__init__(**kwargs) + self.value = value + self.next_link = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_runtime_script_action_detail_result.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_runtime_script_action_detail_result.py new file mode 100644 index 000000000000..35fa9900f8ea --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_runtime_script_action_detail_result.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterListRuntimeScriptActionDetailResult(Model): + """The list runtime script action detail response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: The list of persisted script action details for the cluster. + :vartype value: + list[~azure.mgmt.hdinsight.models.RuntimeScriptActionDetail] + :ivar next_link: The link (url) to the next page of results. + :vartype next_link: str + """ + + _validation = { + 'value': {'readonly': True}, + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RuntimeScriptActionDetail]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ClusterListRuntimeScriptActionDetailResult, self).__init__(**kwargs) + self.value = None + self.next_link = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_runtime_script_action_detail_result_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_runtime_script_action_detail_result_py3.py new file mode 100644 index 000000000000..53ba6e0e8ebb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_list_runtime_script_action_detail_result_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterListRuntimeScriptActionDetailResult(Model): + """The list runtime script action detail response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: The list of persisted script action details for the cluster. + :vartype value: + list[~azure.mgmt.hdinsight.models.RuntimeScriptActionDetail] + :ivar next_link: The link (url) to the next page of results. + :vartype next_link: str + """ + + _validation = { + 'value': {'readonly': True}, + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[RuntimeScriptActionDetail]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ClusterListRuntimeScriptActionDetailResult, self).__init__(**kwargs) + self.value = None + self.next_link = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_request.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_request.py new file mode 100644 index 000000000000..27e116b7d044 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_request.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterMonitoringRequest(Model): + """The Operations Management Suite (OMS) parameters. + + :param workspace_id: The Operations Management Suite (OMS) workspace ID. + :type workspace_id: str + :param primary_key: The Operations Management Suite (OMS) workspace key. + :type primary_key: str + """ + + _attribute_map = { + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'primary_key': {'key': 'primaryKey', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ClusterMonitoringRequest, self).__init__(**kwargs) + self.workspace_id = kwargs.get('workspace_id', None) + self.primary_key = kwargs.get('primary_key', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_request_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_request_py3.py new file mode 100644 index 000000000000..c987cd545c14 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_request_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterMonitoringRequest(Model): + """The Operations Management Suite (OMS) parameters. + + :param workspace_id: The Operations Management Suite (OMS) workspace ID. + :type workspace_id: str + :param primary_key: The Operations Management Suite (OMS) workspace key. + :type primary_key: str + """ + + _attribute_map = { + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'primary_key': {'key': 'primaryKey', 'type': 'str'}, + } + + def __init__(self, *, workspace_id: str=None, primary_key: str=None, **kwargs) -> None: + super(ClusterMonitoringRequest, self).__init__(**kwargs) + self.workspace_id = workspace_id + self.primary_key = primary_key diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_response.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_response.py new file mode 100644 index 000000000000..f77384d2d485 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_response.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterMonitoringResponse(Model): + """The Operations Management Suite (OMS) status response. + + :param cluster_monitoring_enabled: The status of the Operations Management + Suite (OMS) on the HDInsight cluster. + :type cluster_monitoring_enabled: bool + :param workspace_id: The workspace ID of the Operations Management Suite + (OMS) on the HDInsight cluster. + :type workspace_id: str + """ + + _attribute_map = { + 'cluster_monitoring_enabled': {'key': 'clusterMonitoringEnabled', 'type': 'bool'}, + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ClusterMonitoringResponse, self).__init__(**kwargs) + self.cluster_monitoring_enabled = kwargs.get('cluster_monitoring_enabled', None) + self.workspace_id = kwargs.get('workspace_id', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_response_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_response_py3.py new file mode 100644 index 000000000000..c9cbae2530bc --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_monitoring_response_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterMonitoringResponse(Model): + """The Operations Management Suite (OMS) status response. + + :param cluster_monitoring_enabled: The status of the Operations Management + Suite (OMS) on the HDInsight cluster. + :type cluster_monitoring_enabled: bool + :param workspace_id: The workspace ID of the Operations Management Suite + (OMS) on the HDInsight cluster. + :type workspace_id: str + """ + + _attribute_map = { + 'cluster_monitoring_enabled': {'key': 'clusterMonitoringEnabled', 'type': 'bool'}, + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + } + + def __init__(self, *, cluster_monitoring_enabled: bool=None, workspace_id: str=None, **kwargs) -> None: + super(ClusterMonitoringResponse, self).__init__(**kwargs) + self.cluster_monitoring_enabled = cluster_monitoring_enabled + self.workspace_id = workspace_id diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_paged.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_paged.py new file mode 100644 index 000000000000..ac485f03e31a --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ClusterPaged(Paged): + """ + A paging container for iterating over a list of :class:`Cluster ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Cluster]'} + } + + def __init__(self, *args, **kwargs): + + super(ClusterPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_patch_parameters.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_patch_parameters.py new file mode 100644 index 000000000000..932f65ddf95e --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_patch_parameters.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterPatchParameters(Model): + """The PatchCluster request parameters. + + :param tags: The resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(ClusterPatchParameters, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_patch_parameters_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_patch_parameters_py3.py new file mode 100644 index 000000000000..f4d55f5a33b9 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_patch_parameters_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterPatchParameters(Model): + """The PatchCluster request parameters. + + :param tags: The resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(ClusterPatchParameters, self).__init__(**kwargs) + self.tags = tags diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_py3.py new file mode 100644 index 000000000000..c73049d9c383 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource_py3 import TrackedResource + + +class Cluster(TrackedResource): + """The HDInsight cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: The Azure Region where the resource lives + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param etag: The ETag for the resource + :type etag: str + :param properties: The properties of the cluster. + :type properties: ~azure.mgmt.hdinsight.models.ClusterGetProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'ClusterGetProperties'}, + } + + def __init__(self, *, location: str=None, tags=None, etag: str=None, properties=None, **kwargs) -> None: + super(Cluster, self).__init__(location=location, tags=tags, **kwargs) + self.etag = etag + self.properties = properties diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_resize_parameters.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_resize_parameters.py new file mode 100644 index 000000000000..f0361279c481 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_resize_parameters.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterResizeParameters(Model): + """The Resize Cluster request parameters. + + :param target_instance_count: The target instance count for the operation. + :type target_instance_count: int + """ + + _attribute_map = { + 'target_instance_count': {'key': 'targetInstanceCount', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ClusterResizeParameters, self).__init__(**kwargs) + self.target_instance_count = kwargs.get('target_instance_count', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_resize_parameters_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_resize_parameters_py3.py new file mode 100644 index 000000000000..cb065480e2e2 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/cluster_resize_parameters_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ClusterResizeParameters(Model): + """The Resize Cluster request parameters. + + :param target_instance_count: The target instance count for the operation. + :type target_instance_count: int + """ + + _attribute_map = { + 'target_instance_count': {'key': 'targetInstanceCount', 'type': 'int'}, + } + + def __init__(self, *, target_instance_count: int=None, **kwargs) -> None: + super(ClusterResizeParameters, self).__init__(**kwargs) + self.target_instance_count = target_instance_count diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/compute_profile.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/compute_profile.py new file mode 100644 index 000000000000..1ec4e2e32c7d --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/compute_profile.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeProfile(Model): + """Describes the compute profile. + + :param roles: The list of roles in the cluster. + :type roles: list[~azure.mgmt.hdinsight.models.Role] + """ + + _attribute_map = { + 'roles': {'key': 'roles', 'type': '[Role]'}, + } + + def __init__(self, **kwargs): + super(ComputeProfile, self).__init__(**kwargs) + self.roles = kwargs.get('roles', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/compute_profile_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/compute_profile_py3.py new file mode 100644 index 000000000000..74e7648c9dd0 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/compute_profile_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComputeProfile(Model): + """Describes the compute profile. + + :param roles: The list of roles in the cluster. + :type roles: list[~azure.mgmt.hdinsight.models.Role] + """ + + _attribute_map = { + 'roles': {'key': 'roles', 'type': '[Role]'}, + } + + def __init__(self, *, roles=None, **kwargs) -> None: + super(ComputeProfile, self).__init__(**kwargs) + self.roles = roles diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/connectivity_endpoint.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/connectivity_endpoint.py new file mode 100644 index 000000000000..4695541e6fad --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/connectivity_endpoint.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityEndpoint(Model): + """The connectivity properties. + + :param name: The name of the endpoint. + :type name: str + :param protocol: The protocol of the endpoint. + :type protocol: str + :param location: The location of the endpoint. + :type location: str + :param port: The port to connect to. + :type port: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivityEndpoint, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol = kwargs.get('protocol', None) + self.location = kwargs.get('location', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/connectivity_endpoint_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/connectivity_endpoint_py3.py new file mode 100644 index 000000000000..70f26074f5e8 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/connectivity_endpoint_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityEndpoint(Model): + """The connectivity properties. + + :param name: The name of the endpoint. + :type name: str + :param protocol: The protocol of the endpoint. + :type protocol: str + :param location: The location of the endpoint. + :type location: str + :param port: The port to connect to. + :type port: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, name: str=None, protocol: str=None, location: str=None, port: int=None, **kwargs) -> None: + super(ConnectivityEndpoint, self).__init__(**kwargs) + self.name = name + self.protocol = protocol + self.location = location + self.port = port diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/data_disks_groups.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/data_disks_groups.py new file mode 100644 index 000000000000..642a5b98cde2 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/data_disks_groups.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DataDisksGroups(Model): + """The data disks groups for the role. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param disks_per_node: The number of disks per node. + :type disks_per_node: int + :ivar storage_account_type: ReadOnly. The storage account type. Do not set + this value. + :vartype storage_account_type: str + :ivar disk_size_gb: ReadOnly. The DiskSize in GB. Do not set this value. + :vartype disk_size_gb: int + """ + + _validation = { + 'storage_account_type': {'readonly': True}, + 'disk_size_gb': {'readonly': True}, + } + + _attribute_map = { + 'disks_per_node': {'key': 'disksPerNode', 'type': 'int'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(DataDisksGroups, self).__init__(**kwargs) + self.disks_per_node = kwargs.get('disks_per_node', None) + self.storage_account_type = None + self.disk_size_gb = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/data_disks_groups_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/data_disks_groups_py3.py new file mode 100644 index 000000000000..acdd3538dfd5 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/data_disks_groups_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DataDisksGroups(Model): + """The data disks groups for the role. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param disks_per_node: The number of disks per node. + :type disks_per_node: int + :ivar storage_account_type: ReadOnly. The storage account type. Do not set + this value. + :vartype storage_account_type: str + :ivar disk_size_gb: ReadOnly. The DiskSize in GB. Do not set this value. + :vartype disk_size_gb: int + """ + + _validation = { + 'storage_account_type': {'readonly': True}, + 'disk_size_gb': {'readonly': True}, + } + + _attribute_map = { + 'disks_per_node': {'key': 'disksPerNode', 'type': 'int'}, + 'storage_account_type': {'key': 'storageAccountType', 'type': 'str'}, + 'disk_size_gb': {'key': 'diskSizeGB', 'type': 'int'}, + } + + def __init__(self, *, disks_per_node: int=None, **kwargs) -> None: + super(DataDisksGroups, self).__init__(**kwargs) + self.disks_per_node = disks_per_node + self.storage_account_type = None + self.disk_size_gb = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/error_response.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/error_response.py new file mode 100644 index 000000000000..b3d490a49503 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/error_response.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class ErrorResponse(Model): + """Describes the format of Error response. + + :param code: Error code + :type code: str + :param message: Error message indicating why the operation failed. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/error_response_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/error_response_py3.py new file mode 100644 index 000000000000..5504940d6873 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/error_response_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class ErrorResponse(Model): + """Describes the format of Error response. + + :param code: Error code + :type code: str + :param message: Error message indicating why the operation failed. + :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(ErrorResponse, self).__init__(**kwargs) + self.code = code + self.message = message + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/errors.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/errors.py new file mode 100644 index 000000000000..86ac51877c6f --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/errors.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Errors(Model): + """The error message associated with the cluster creation. + + :param code: The error code. + :type code: str + :param message: The error message. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Errors, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/errors_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/errors_py3.py new file mode 100644 index 000000000000..5b81c03b7630 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/errors_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Errors(Model): + """The error message associated with the cluster creation. + + :param code: The error code. + :type code: str + :param message: The 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(Errors, self).__init__(**kwargs) + self.code = code + self.message = message diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/execute_script_action_parameters.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/execute_script_action_parameters.py new file mode 100644 index 000000000000..c1d58cfcb6c4 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/execute_script_action_parameters.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExecuteScriptActionParameters(Model): + """The parameters for the script actions to execute on a running cluster. + + All required parameters must be populated in order to send to Azure. + + :param script_actions: The list of run time script actions. + :type script_actions: + list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :param persist_on_success: Required. Gets or sets if the scripts needs to + be persisted. + :type persist_on_success: bool + """ + + _validation = { + 'persist_on_success': {'required': True}, + } + + _attribute_map = { + 'script_actions': {'key': 'scriptActions', 'type': '[RuntimeScriptAction]'}, + 'persist_on_success': {'key': 'persistOnSuccess', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ExecuteScriptActionParameters, self).__init__(**kwargs) + self.script_actions = kwargs.get('script_actions', None) + self.persist_on_success = kwargs.get('persist_on_success', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/execute_script_action_parameters_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/execute_script_action_parameters_py3.py new file mode 100644 index 000000000000..7cdffae8852e --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/execute_script_action_parameters_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExecuteScriptActionParameters(Model): + """The parameters for the script actions to execute on a running cluster. + + All required parameters must be populated in order to send to Azure. + + :param script_actions: The list of run time script actions. + :type script_actions: + list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :param persist_on_success: Required. Gets or sets if the scripts needs to + be persisted. + :type persist_on_success: bool + """ + + _validation = { + 'persist_on_success': {'required': True}, + } + + _attribute_map = { + 'script_actions': {'key': 'scriptActions', 'type': '[RuntimeScriptAction]'}, + 'persist_on_success': {'key': 'persistOnSuccess', 'type': 'bool'}, + } + + def __init__(self, *, persist_on_success: bool, script_actions=None, **kwargs) -> None: + super(ExecuteScriptActionParameters, self).__init__(**kwargs) + self.script_actions = script_actions + self.persist_on_success = persist_on_success diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/extension.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/extension.py new file mode 100644 index 000000000000..dee5628923f1 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/extension.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Extension(Model): + """Cluster monitoring extensions. + + :param workspace_id: The workspace ID for the cluster monitoring + extension. + :type workspace_id: str + :param primary_key: The certificate for the cluster monitoring extensions. + :type primary_key: str + """ + + _attribute_map = { + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'primary_key': {'key': 'primaryKey', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Extension, self).__init__(**kwargs) + self.workspace_id = kwargs.get('workspace_id', None) + self.primary_key = kwargs.get('primary_key', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/extension_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/extension_py3.py new file mode 100644 index 000000000000..b7b21187fa01 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/extension_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Extension(Model): + """Cluster monitoring extensions. + + :param workspace_id: The workspace ID for the cluster monitoring + extension. + :type workspace_id: str + :param primary_key: The certificate for the cluster monitoring extensions. + :type primary_key: str + """ + + _attribute_map = { + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'primary_key': {'key': 'primaryKey', 'type': 'str'}, + } + + def __init__(self, *, workspace_id: str=None, primary_key: str=None, **kwargs) -> None: + super(Extension, self).__init__(**kwargs) + self.workspace_id = workspace_id + self.primary_key = primary_key diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hardware_profile.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hardware_profile.py new file mode 100644 index 000000000000..50b7736f9e6a --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hardware_profile.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HardwareProfile(Model): + """The hardware profile. + + :param vm_size: The size of the VM + :type vm_size: str + """ + + _attribute_map = { + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HardwareProfile, self).__init__(**kwargs) + self.vm_size = kwargs.get('vm_size', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hardware_profile_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hardware_profile_py3.py new file mode 100644 index 000000000000..cbcd0a0653d8 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hardware_profile_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HardwareProfile(Model): + """The hardware profile. + + :param vm_size: The size of the VM + :type vm_size: str + """ + + _attribute_map = { + 'vm_size': {'key': 'vmSize', 'type': 'str'}, + } + + def __init__(self, *, vm_size: str=None, **kwargs) -> None: + super(HardwareProfile, self).__init__(**kwargs) + self.vm_size = vm_size diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hd_insight_management_client_enums.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hd_insight_management_client_enums.py new file mode 100644 index 000000000000..5c9779b9846e --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/hd_insight_management_client_enums.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from enum import Enum + + +class DirectoryType(str, Enum): + + active_directory = "ActiveDirectory" + + +class OSType(str, Enum): + + windows = "Windows" + linux = "Linux" + + +class Tier(str, Enum): + + standard = "Standard" + premium = "Premium" + + +class HDInsightClusterProvisioningState(str, Enum): + + in_progress = "InProgress" + failed = "Failed" + succeeded = "Succeeded" + canceled = "Canceled" + deleting = "Deleting" + + +class AsyncOperationState(str, Enum): + + in_progress = "InProgress" + succeeded = "Succeeded" + failed = "Failed" diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/linux_operating_system_profile.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/linux_operating_system_profile.py new file mode 100644 index 000000000000..72a5c2f774c7 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/linux_operating_system_profile.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LinuxOperatingSystemProfile(Model): + """The ssh username, password, and ssh public key. + + :param username: The username. + :type username: str + :param password: The password. + :type password: str + :param ssh_profile: The SSH profile. + :type ssh_profile: ~azure.mgmt.hdinsight.models.SshProfile + """ + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'ssh_profile': {'key': 'sshProfile', 'type': 'SshProfile'}, + } + + def __init__(self, **kwargs): + super(LinuxOperatingSystemProfile, self).__init__(**kwargs) + self.username = kwargs.get('username', None) + self.password = kwargs.get('password', None) + self.ssh_profile = kwargs.get('ssh_profile', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/linux_operating_system_profile_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/linux_operating_system_profile_py3.py new file mode 100644 index 000000000000..57b35deee57b --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/linux_operating_system_profile_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LinuxOperatingSystemProfile(Model): + """The ssh username, password, and ssh public key. + + :param username: The username. + :type username: str + :param password: The password. + :type password: str + :param ssh_profile: The SSH profile. + :type ssh_profile: ~azure.mgmt.hdinsight.models.SshProfile + """ + + _attribute_map = { + 'username': {'key': 'username', 'type': 'str'}, + 'password': {'key': 'password', 'type': 'str'}, + 'ssh_profile': {'key': 'sshProfile', 'type': 'SshProfile'}, + } + + def __init__(self, *, username: str=None, password: str=None, ssh_profile=None, **kwargs) -> None: + super(LinuxOperatingSystemProfile, self).__init__(**kwargs) + self.username = username + self.password = password + self.ssh_profile = ssh_profile diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/localized_name.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/localized_name.py new file mode 100644 index 000000000000..4a730481459c --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/localized_name.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LocalizedName(Model): + """The details about the localizable name of a type of usage. + + :param value: The name of the used resource. + :type value: str + :param localized_value: The localized name of the used resource. + :type localized_value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LocalizedName, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.localized_value = kwargs.get('localized_value', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/localized_name_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/localized_name_py3.py new file mode 100644 index 000000000000..445e0c9cc294 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/localized_name_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LocalizedName(Model): + """The details about the localizable name of a type of usage. + + :param value: The name of the used resource. + :type value: str + :param localized_value: The localized name of the used resource. + :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(LocalizedName, self).__init__(**kwargs) + self.value = value + self.localized_value = localized_value diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation.py new file mode 100644 index 000000000000..984a6875094a --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """The HDInsight REST API operation. + + :param name: The operation name: {provider}/{resource}/{operation} + :type name: str + :param display: The object that represents the operation. + :type display: ~azure.mgmt.hdinsight.models.OperationDisplay + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_display.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_display.py new file mode 100644 index 000000000000..a3c546ef0bdf --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_display.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """The object that represents the operation. + + :param provider: The service provider: Microsoft.HDInsight + :type provider: str + :param resource: The resource on which the operation is performed: + Cluster, Applications, etc. + :type resource: str + :param operation: The operation type: read, write, delete, etc. + :type operation: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_display_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_display_py3.py new file mode 100644 index 000000000000..ebccaf41a426 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_display_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """The object that represents the operation. + + :param provider: The service provider: Microsoft.HDInsight + :type provider: str + :param resource: The resource on which the operation is performed: + Cluster, Applications, etc. + :type resource: str + :param operation: The operation type: read, write, delete, etc. + :type operation: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + } + + def __init__(self, *, provider: str=None, resource: str=None, operation: str=None, **kwargs) -> None: + super(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.resource = resource + self.operation = operation diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_paged.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_paged.py new file mode 100644 index 000000000000..79215385687d --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_py3.py new file mode 100644 index 000000000000..9d888fda108c --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """The HDInsight REST API operation. + + :param name: The operation name: {provider}/{resource}/{operation} + :type name: str + :param display: The object that represents the operation. + :type display: ~azure.mgmt.hdinsight.models.OperationDisplay + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + } + + def __init__(self, *, name: str=None, display=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_resource.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_resource.py new file mode 100644 index 000000000000..d942d89b7d18 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_resource.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationResource(Model): + """The azure async operation response. + + :param status: The async operation state. Possible values include: + 'InProgress', 'Succeeded', 'Failed' + :type status: str or ~azure.mgmt.hdinsight.models.AsyncOperationState + :param error: The operation error information. + :type error: ~azure.mgmt.hdinsight.models.Errors + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'AsyncOperationState'}, + 'error': {'key': 'error', 'type': 'Errors'}, + } + + def __init__(self, **kwargs): + super(OperationResource, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.error = kwargs.get('error', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_resource_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_resource_py3.py new file mode 100644 index 000000000000..b5be1c09332a --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/operation_resource_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationResource(Model): + """The azure async operation response. + + :param status: The async operation state. Possible values include: + 'InProgress', 'Succeeded', 'Failed' + :type status: str or ~azure.mgmt.hdinsight.models.AsyncOperationState + :param error: The operation error information. + :type error: ~azure.mgmt.hdinsight.models.Errors + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'AsyncOperationState'}, + 'error': {'key': 'error', 'type': 'Errors'}, + } + + def __init__(self, *, status=None, error=None, **kwargs) -> None: + super(OperationResource, self).__init__(**kwargs) + self.status = status + self.error = error diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/os_profile.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/os_profile.py new file mode 100644 index 000000000000..9bcd6b66b142 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/os_profile.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OsProfile(Model): + """The Linux operation systems profile. + + :param linux_operating_system_profile: The Linux OS profile. + :type linux_operating_system_profile: + ~azure.mgmt.hdinsight.models.LinuxOperatingSystemProfile + """ + + _attribute_map = { + 'linux_operating_system_profile': {'key': 'linuxOperatingSystemProfile', 'type': 'LinuxOperatingSystemProfile'}, + } + + def __init__(self, **kwargs): + super(OsProfile, self).__init__(**kwargs) + self.linux_operating_system_profile = kwargs.get('linux_operating_system_profile', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/os_profile_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/os_profile_py3.py new file mode 100644 index 000000000000..2af52010b99a --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/os_profile_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OsProfile(Model): + """The Linux operation systems profile. + + :param linux_operating_system_profile: The Linux OS profile. + :type linux_operating_system_profile: + ~azure.mgmt.hdinsight.models.LinuxOperatingSystemProfile + """ + + _attribute_map = { + 'linux_operating_system_profile': {'key': 'linuxOperatingSystemProfile', 'type': 'LinuxOperatingSystemProfile'}, + } + + def __init__(self, *, linux_operating_system_profile=None, **kwargs) -> None: + super(OsProfile, self).__init__(**kwargs) + self.linux_operating_system_profile = linux_operating_system_profile diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/proxy_resource.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/proxy_resource.py new file mode 100644 index 000000000000..aecd353e9b87 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/proxy_resource.py @@ -0,0 +1,43 @@ +# 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 .resource import Resource + + +class ProxyResource(Resource): + """The resource model definition for a ARM proxy resource. It will have + everything other than required location and tags. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProxyResource, self).__init__(**kwargs) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/proxy_resource_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/proxy_resource_py3.py new file mode 100644 index 000000000000..057f44c7e108 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/proxy_resource_py3.py @@ -0,0 +1,43 @@ +# 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 .resource_py3 import Resource + + +class ProxyResource(Resource): + """The resource model definition for a ARM proxy resource. It will have + everything other than required location and tags. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ProxyResource, self).__init__(**kwargs) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_capability.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_capability.py new file mode 100644 index 000000000000..49e7fae6b6d5 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_capability.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCapability(Model): + """The regional quota capability. + + :param regional_quotas: The list of region quota capabilities. + :type regional_quotas: + list[~azure.mgmt.hdinsight.models.RegionalQuotaCapability] + """ + + _attribute_map = { + 'regional_quotas': {'key': 'regionalQuotas', 'type': '[RegionalQuotaCapability]'}, + } + + def __init__(self, **kwargs): + super(QuotaCapability, self).__init__(**kwargs) + self.regional_quotas = kwargs.get('regional_quotas', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_capability_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_capability_py3.py new file mode 100644 index 000000000000..486c9832fd7d --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_capability_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaCapability(Model): + """The regional quota capability. + + :param regional_quotas: The list of region quota capabilities. + :type regional_quotas: + list[~azure.mgmt.hdinsight.models.RegionalQuotaCapability] + """ + + _attribute_map = { + 'regional_quotas': {'key': 'regionalQuotas', 'type': '[RegionalQuotaCapability]'}, + } + + def __init__(self, *, regional_quotas=None, **kwargs) -> None: + super(QuotaCapability, self).__init__(**kwargs) + self.regional_quotas = regional_quotas diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_info.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_info.py new file mode 100644 index 000000000000..f90d132a7b79 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_info.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaInfo(Model): + """The quota properties for the cluster. + + :param cores_used: The cores used by the cluster. + :type cores_used: int + """ + + _attribute_map = { + 'cores_used': {'key': 'coresUsed', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(QuotaInfo, self).__init__(**kwargs) + self.cores_used = kwargs.get('cores_used', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_info_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_info_py3.py new file mode 100644 index 000000000000..ddd13b43c9ef --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/quota_info_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QuotaInfo(Model): + """The quota properties for the cluster. + + :param cores_used: The cores used by the cluster. + :type cores_used: int + """ + + _attribute_map = { + 'cores_used': {'key': 'coresUsed', 'type': 'int'}, + } + + def __init__(self, *, cores_used: int=None, **kwargs) -> None: + super(QuotaInfo, self).__init__(**kwargs) + self.cores_used = cores_used diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regional_quota_capability.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regional_quota_capability.py new file mode 100644 index 000000000000..4e8819bbfeb0 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regional_quota_capability.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegionalQuotaCapability(Model): + """The regional quota capacity. + + :param region_name: The region name. + :type region_name: str + :param cores_used: The number of cores used in the region. + :type cores_used: long + :param cores_available: The number of courses available in the region. + :type cores_available: long + """ + + _attribute_map = { + 'region_name': {'key': 'region_name', 'type': 'str'}, + 'cores_used': {'key': 'cores_used', 'type': 'long'}, + 'cores_available': {'key': 'cores_available', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(RegionalQuotaCapability, self).__init__(**kwargs) + self.region_name = kwargs.get('region_name', None) + self.cores_used = kwargs.get('cores_used', None) + self.cores_available = kwargs.get('cores_available', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regional_quota_capability_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regional_quota_capability_py3.py new file mode 100644 index 000000000000..70ce7a01fa75 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regional_quota_capability_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegionalQuotaCapability(Model): + """The regional quota capacity. + + :param region_name: The region name. + :type region_name: str + :param cores_used: The number of cores used in the region. + :type cores_used: long + :param cores_available: The number of courses available in the region. + :type cores_available: long + """ + + _attribute_map = { + 'region_name': {'key': 'region_name', 'type': 'str'}, + 'cores_used': {'key': 'cores_used', 'type': 'long'}, + 'cores_available': {'key': 'cores_available', 'type': 'long'}, + } + + def __init__(self, *, region_name: str=None, cores_used: int=None, cores_available: int=None, **kwargs) -> None: + super(RegionalQuotaCapability, self).__init__(**kwargs) + self.region_name = region_name + self.cores_used = cores_used + self.cores_available = cores_available diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regions_capability.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regions_capability.py new file mode 100644 index 000000000000..d6fa51ff1f94 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regions_capability.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegionsCapability(Model): + """The regions capability. + + :param available: The list of region capabilities. + :type available: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(RegionsCapability, self).__init__(**kwargs) + self.available = kwargs.get('available', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regions_capability_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regions_capability_py3.py new file mode 100644 index 000000000000..aa424b372b14 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/regions_capability_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RegionsCapability(Model): + """The regions capability. + + :param available: The list of region capabilities. + :type available: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': '[str]'}, + } + + def __init__(self, *, available=None, **kwargs) -> None: + super(RegionsCapability, self).__init__(**kwargs) + self.available = available diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/resource.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/resource.py new file mode 100644 index 000000000000..abc2407bbed3 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/resource.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """The core properties of ARM resources. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/resource_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/resource_py3.py new file mode 100644 index 000000000000..8604d1c4419b --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """The core properties of ARM resources. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/role.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/role.py new file mode 100644 index 000000000000..51ee38b3ec0b --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/role.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Role(Model): + """Describes a role on the cluster. + + :param name: The name of the role. + :type name: str + :param min_instance_count: The minimum instance count of the cluster. + :type min_instance_count: int + :param target_instance_count: The instance count of the cluster. + :type target_instance_count: int + :param hardware_profile: The hardware profile. + :type hardware_profile: ~azure.mgmt.hdinsight.models.HardwareProfile + :param os_profile: The operating system profile. + :type os_profile: ~azure.mgmt.hdinsight.models.OsProfile + :param virtual_network_profile: The virtual network profile. + :type virtual_network_profile: + ~azure.mgmt.hdinsight.models.VirtualNetworkProfile + :param data_disks_groups: The data disks groups for the role. + :type data_disks_groups: + list[~azure.mgmt.hdinsight.models.DataDisksGroups] + :param script_actions: The list of script actions on the role. + :type script_actions: list[~azure.mgmt.hdinsight.models.ScriptAction] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'min_instance_count': {'key': 'minInstanceCount', 'type': 'int'}, + 'target_instance_count': {'key': 'targetInstanceCount', 'type': 'int'}, + 'hardware_profile': {'key': 'hardwareProfile', 'type': 'HardwareProfile'}, + 'os_profile': {'key': 'osProfile', 'type': 'OsProfile'}, + 'virtual_network_profile': {'key': 'virtualNetworkProfile', 'type': 'VirtualNetworkProfile'}, + 'data_disks_groups': {'key': 'dataDisksGroups', 'type': '[DataDisksGroups]'}, + 'script_actions': {'key': 'scriptActions', 'type': '[ScriptAction]'}, + } + + def __init__(self, **kwargs): + super(Role, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.min_instance_count = kwargs.get('min_instance_count', None) + self.target_instance_count = kwargs.get('target_instance_count', None) + self.hardware_profile = kwargs.get('hardware_profile', None) + self.os_profile = kwargs.get('os_profile', None) + self.virtual_network_profile = kwargs.get('virtual_network_profile', None) + self.data_disks_groups = kwargs.get('data_disks_groups', None) + self.script_actions = kwargs.get('script_actions', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/role_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/role_py3.py new file mode 100644 index 000000000000..efcc4734449b --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/role_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Role(Model): + """Describes a role on the cluster. + + :param name: The name of the role. + :type name: str + :param min_instance_count: The minimum instance count of the cluster. + :type min_instance_count: int + :param target_instance_count: The instance count of the cluster. + :type target_instance_count: int + :param hardware_profile: The hardware profile. + :type hardware_profile: ~azure.mgmt.hdinsight.models.HardwareProfile + :param os_profile: The operating system profile. + :type os_profile: ~azure.mgmt.hdinsight.models.OsProfile + :param virtual_network_profile: The virtual network profile. + :type virtual_network_profile: + ~azure.mgmt.hdinsight.models.VirtualNetworkProfile + :param data_disks_groups: The data disks groups for the role. + :type data_disks_groups: + list[~azure.mgmt.hdinsight.models.DataDisksGroups] + :param script_actions: The list of script actions on the role. + :type script_actions: list[~azure.mgmt.hdinsight.models.ScriptAction] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'min_instance_count': {'key': 'minInstanceCount', 'type': 'int'}, + 'target_instance_count': {'key': 'targetInstanceCount', 'type': 'int'}, + 'hardware_profile': {'key': 'hardwareProfile', 'type': 'HardwareProfile'}, + 'os_profile': {'key': 'osProfile', 'type': 'OsProfile'}, + 'virtual_network_profile': {'key': 'virtualNetworkProfile', 'type': 'VirtualNetworkProfile'}, + 'data_disks_groups': {'key': 'dataDisksGroups', 'type': '[DataDisksGroups]'}, + 'script_actions': {'key': 'scriptActions', 'type': '[ScriptAction]'}, + } + + def __init__(self, *, name: str=None, min_instance_count: int=None, target_instance_count: int=None, hardware_profile=None, os_profile=None, virtual_network_profile=None, data_disks_groups=None, script_actions=None, **kwargs) -> None: + super(Role, self).__init__(**kwargs) + self.name = name + self.min_instance_count = min_instance_count + self.target_instance_count = target_instance_count + self.hardware_profile = hardware_profile + self.os_profile = os_profile + self.virtual_network_profile = virtual_network_profile + self.data_disks_groups = data_disks_groups + self.script_actions = script_actions diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action.py new file mode 100644 index 000000000000..760e1621ef60 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RuntimeScriptAction(Model): + """Describes a script action on a running cluster. + + 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. The name of the script action. + :type name: str + :param uri: Required. The URI to the script. + :type uri: str + :param parameters: The parameters for the script + :type parameters: str + :param roles: Required. The list of roles where script will be executed. + :type roles: list[str] + :ivar application_name: The application name of the script action, if any. + :vartype application_name: str + """ + + _validation = { + 'name': {'required': True}, + 'uri': {'required': True}, + 'roles': {'required': True}, + 'application_name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'uri': {'key': 'uri', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + 'application_name': {'key': 'applicationName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RuntimeScriptAction, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.uri = kwargs.get('uri', None) + self.parameters = kwargs.get('parameters', None) + self.roles = kwargs.get('roles', None) + self.application_name = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail.py new file mode 100644 index 000000000000..5d68a1bb0521 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail.py @@ -0,0 +1,87 @@ +# 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 .runtime_script_action import RuntimeScriptAction + + +class RuntimeScriptActionDetail(RuntimeScriptAction): + """The execution details of a script action. + + 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. The name of the script action. + :type name: str + :param uri: Required. The URI to the script. + :type uri: str + :param parameters: The parameters for the script + :type parameters: str + :param roles: Required. The list of roles where script will be executed. + :type roles: list[str] + :ivar application_name: The application name of the script action, if any. + :vartype application_name: str + :ivar script_execution_id: The execution id of the script action. + :vartype script_execution_id: long + :ivar start_time: The start time of script action execution. + :vartype start_time: str + :ivar end_time: The end time of script action execution. + :vartype end_time: str + :ivar status: The current execution status of the script action. + :vartype status: str + :ivar operation: The reason why the script action was executed. + :vartype operation: str + :ivar execution_summary: The summary of script action execution result. + :vartype execution_summary: + list[~azure.mgmt.hdinsight.models.ScriptActionExecutionSummary] + :ivar debug_information: The script action execution debug information. + :vartype debug_information: str + """ + + _validation = { + 'name': {'required': True}, + 'uri': {'required': True}, + 'roles': {'required': True}, + 'application_name': {'readonly': True}, + 'script_execution_id': {'readonly': True}, + 'start_time': {'readonly': True}, + 'end_time': {'readonly': True}, + 'status': {'readonly': True}, + 'operation': {'readonly': True}, + 'execution_summary': {'readonly': True}, + 'debug_information': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'uri': {'key': 'uri', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + 'application_name': {'key': 'applicationName', 'type': 'str'}, + 'script_execution_id': {'key': 'scriptExecutionId', 'type': 'long'}, + 'start_time': {'key': 'startTime', 'type': 'str'}, + 'end_time': {'key': 'endTime', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'execution_summary': {'key': 'executionSummary', 'type': '[ScriptActionExecutionSummary]'}, + 'debug_information': {'key': 'debugInformation', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RuntimeScriptActionDetail, self).__init__(**kwargs) + self.script_execution_id = None + self.start_time = None + self.end_time = None + self.status = None + self.operation = None + self.execution_summary = None + self.debug_information = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail_paged.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail_paged.py new file mode 100644 index 000000000000..2555f4b6b584 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RuntimeScriptActionDetailPaged(Paged): + """ + A paging container for iterating over a list of :class:`RuntimeScriptActionDetail ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RuntimeScriptActionDetail]'} + } + + def __init__(self, *args, **kwargs): + + super(RuntimeScriptActionDetailPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail_py3.py new file mode 100644 index 000000000000..39200a35d922 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_detail_py3.py @@ -0,0 +1,87 @@ +# 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 .runtime_script_action_py3 import RuntimeScriptAction + + +class RuntimeScriptActionDetail(RuntimeScriptAction): + """The execution details of a script action. + + 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. The name of the script action. + :type name: str + :param uri: Required. The URI to the script. + :type uri: str + :param parameters: The parameters for the script + :type parameters: str + :param roles: Required. The list of roles where script will be executed. + :type roles: list[str] + :ivar application_name: The application name of the script action, if any. + :vartype application_name: str + :ivar script_execution_id: The execution id of the script action. + :vartype script_execution_id: long + :ivar start_time: The start time of script action execution. + :vartype start_time: str + :ivar end_time: The end time of script action execution. + :vartype end_time: str + :ivar status: The current execution status of the script action. + :vartype status: str + :ivar operation: The reason why the script action was executed. + :vartype operation: str + :ivar execution_summary: The summary of script action execution result. + :vartype execution_summary: + list[~azure.mgmt.hdinsight.models.ScriptActionExecutionSummary] + :ivar debug_information: The script action execution debug information. + :vartype debug_information: str + """ + + _validation = { + 'name': {'required': True}, + 'uri': {'required': True}, + 'roles': {'required': True}, + 'application_name': {'readonly': True}, + 'script_execution_id': {'readonly': True}, + 'start_time': {'readonly': True}, + 'end_time': {'readonly': True}, + 'status': {'readonly': True}, + 'operation': {'readonly': True}, + 'execution_summary': {'readonly': True}, + 'debug_information': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'uri': {'key': 'uri', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + 'application_name': {'key': 'applicationName', 'type': 'str'}, + 'script_execution_id': {'key': 'scriptExecutionId', 'type': 'long'}, + 'start_time': {'key': 'startTime', 'type': 'str'}, + 'end_time': {'key': 'endTime', 'type': 'str'}, + 'status': {'key': 'status', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'execution_summary': {'key': 'executionSummary', 'type': '[ScriptActionExecutionSummary]'}, + 'debug_information': {'key': 'debugInformation', 'type': 'str'}, + } + + def __init__(self, *, name: str, uri: str, roles, parameters: str=None, **kwargs) -> None: + super(RuntimeScriptActionDetail, self).__init__(name=name, uri=uri, parameters=parameters, roles=roles, **kwargs) + self.script_execution_id = None + self.start_time = None + self.end_time = None + self.status = None + self.operation = None + self.execution_summary = None + self.debug_information = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_py3.py new file mode 100644 index 000000000000..0f2088085838 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/runtime_script_action_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RuntimeScriptAction(Model): + """Describes a script action on a running cluster. + + 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. The name of the script action. + :type name: str + :param uri: Required. The URI to the script. + :type uri: str + :param parameters: The parameters for the script + :type parameters: str + :param roles: Required. The list of roles where script will be executed. + :type roles: list[str] + :ivar application_name: The application name of the script action, if any. + :vartype application_name: str + """ + + _validation = { + 'name': {'required': True}, + 'uri': {'required': True}, + 'roles': {'required': True}, + 'application_name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'uri': {'key': 'uri', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + 'application_name': {'key': 'applicationName', 'type': 'str'}, + } + + def __init__(self, *, name: str, uri: str, roles, parameters: str=None, **kwargs) -> None: + super(RuntimeScriptAction, self).__init__(**kwargs) + self.name = name + self.uri = uri + self.parameters = parameters + self.roles = roles + self.application_name = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action.py new file mode 100644 index 000000000000..2f3d7ef356da --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ScriptAction(Model): + """Describes a script action on role on the cluster. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the script action. + :type name: str + :param uri: Required. The URI to the script. + :type uri: str + :param parameters: Required. The parameters for the script provided. + :type parameters: str + """ + + _validation = { + 'name': {'required': True}, + 'uri': {'required': True}, + 'parameters': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'uri': {'key': 'uri', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ScriptAction, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.uri = kwargs.get('uri', None) + self.parameters = kwargs.get('parameters', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_execution_summary.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_execution_summary.py new file mode 100644 index 000000000000..a0a561f4a440 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_execution_summary.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ScriptActionExecutionSummary(Model): + """The execution summary of a script action. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar status: The status of script action execution. + :vartype status: str + :ivar instance_count: The instance count for a given script action + execution status. + :vartype instance_count: int + """ + + _validation = { + 'status': {'readonly': True}, + 'instance_count': {'readonly': True}, + } + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'instance_count': {'key': 'instanceCount', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ScriptActionExecutionSummary, self).__init__(**kwargs) + self.status = None + self.instance_count = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_execution_summary_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_execution_summary_py3.py new file mode 100644 index 000000000000..e940e9d90c34 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_execution_summary_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ScriptActionExecutionSummary(Model): + """The execution summary of a script action. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar status: The status of script action execution. + :vartype status: str + :ivar instance_count: The instance count for a given script action + execution status. + :vartype instance_count: int + """ + + _validation = { + 'status': {'readonly': True}, + 'instance_count': {'readonly': True}, + } + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'instance_count': {'key': 'instanceCount', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(ScriptActionExecutionSummary, self).__init__(**kwargs) + self.status = None + self.instance_count = None diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_persisted_get_response_spec.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_persisted_get_response_spec.py new file mode 100644 index 000000000000..684928022db3 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_persisted_get_response_spec.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ScriptActionPersistedGetResponseSpec(Model): + """The persisted script action for cluster. + + :param name: The name of script action. + :type name: str + :param uri: The URI to the script. + :type uri: str + :param parameters: The parameters for the script provided. + :type parameters: str + :param roles: The list of roles where script will be executed. + :type roles: list[str] + :param application_name: The application name for the script action. + :type application_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'uri': {'key': 'uri', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + 'application_name': {'key': 'applicationName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ScriptActionPersistedGetResponseSpec, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.uri = kwargs.get('uri', None) + self.parameters = kwargs.get('parameters', None) + self.roles = kwargs.get('roles', None) + self.application_name = kwargs.get('application_name', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_persisted_get_response_spec_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_persisted_get_response_spec_py3.py new file mode 100644 index 000000000000..e0cd9c1c9453 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_persisted_get_response_spec_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ScriptActionPersistedGetResponseSpec(Model): + """The persisted script action for cluster. + + :param name: The name of script action. + :type name: str + :param uri: The URI to the script. + :type uri: str + :param parameters: The parameters for the script provided. + :type parameters: str + :param roles: The list of roles where script will be executed. + :type roles: list[str] + :param application_name: The application name for the script action. + :type application_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'uri': {'key': 'uri', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'str'}, + 'roles': {'key': 'roles', 'type': '[str]'}, + 'application_name': {'key': 'applicationName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, uri: str=None, parameters: str=None, roles=None, application_name: str=None, **kwargs) -> None: + super(ScriptActionPersistedGetResponseSpec, self).__init__(**kwargs) + self.name = name + self.uri = uri + self.parameters = parameters + self.roles = roles + self.application_name = application_name diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_py3.py new file mode 100644 index 000000000000..b35024f9c4f6 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/script_action_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ScriptAction(Model): + """Describes a script action on role on the cluster. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. The name of the script action. + :type name: str + :param uri: Required. The URI to the script. + :type uri: str + :param parameters: Required. The parameters for the script provided. + :type parameters: str + """ + + _validation = { + 'name': {'required': True}, + 'uri': {'required': True}, + 'parameters': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'uri': {'key': 'uri', 'type': 'str'}, + 'parameters': {'key': 'parameters', 'type': 'str'}, + } + + def __init__(self, *, name: str, uri: str, parameters: str, **kwargs) -> None: + super(ScriptAction, self).__init__(**kwargs) + self.name = name + self.uri = uri + self.parameters = parameters diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/security_profile.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/security_profile.py new file mode 100644 index 000000000000..8b75c890167d --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/security_profile.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityProfile(Model): + """The security profile which contains Ssh public key for the HDInsight + cluster. + + :param directory_type: The directory type. Possible values include: + 'ActiveDirectory' + :type directory_type: str or ~azure.mgmt.hdinsight.models.DirectoryType + :param domain: The organization's active directory domain. + :type domain: str + :param organizational_unit_dn: The organizational unit within the Active + Directory to place the cluster and service accounts. + :type organizational_unit_dn: str + :param ldaps_urls: The LDAPS protocol URLs to communicate with the Active + Directory. + :type ldaps_urls: list[str] + :param domain_username: The domain user account that will have admin + privileges on the cluster. + :type domain_username: str + :param domain_user_password: The domain admin password. + :type domain_user_password: str + :param cluster_users_group_dns: Optional. The Distinguished Names for + cluster user groups + :type cluster_users_group_dns: list[str] + """ + + _attribute_map = { + 'directory_type': {'key': 'directoryType', 'type': 'DirectoryType'}, + 'domain': {'key': 'domain', 'type': 'str'}, + 'organizational_unit_dn': {'key': 'organizationalUnitDN', 'type': 'str'}, + 'ldaps_urls': {'key': 'ldapsUrls', 'type': '[str]'}, + 'domain_username': {'key': 'domainUsername', 'type': 'str'}, + 'domain_user_password': {'key': 'domainUserPassword', 'type': 'str'}, + 'cluster_users_group_dns': {'key': 'clusterUsersGroupDNs', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(SecurityProfile, self).__init__(**kwargs) + self.directory_type = kwargs.get('directory_type', None) + self.domain = kwargs.get('domain', None) + self.organizational_unit_dn = kwargs.get('organizational_unit_dn', None) + self.ldaps_urls = kwargs.get('ldaps_urls', None) + self.domain_username = kwargs.get('domain_username', None) + self.domain_user_password = kwargs.get('domain_user_password', None) + self.cluster_users_group_dns = kwargs.get('cluster_users_group_dns', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/security_profile_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/security_profile_py3.py new file mode 100644 index 000000000000..08abec9760cb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/security_profile_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityProfile(Model): + """The security profile which contains Ssh public key for the HDInsight + cluster. + + :param directory_type: The directory type. Possible values include: + 'ActiveDirectory' + :type directory_type: str or ~azure.mgmt.hdinsight.models.DirectoryType + :param domain: The organization's active directory domain. + :type domain: str + :param organizational_unit_dn: The organizational unit within the Active + Directory to place the cluster and service accounts. + :type organizational_unit_dn: str + :param ldaps_urls: The LDAPS protocol URLs to communicate with the Active + Directory. + :type ldaps_urls: list[str] + :param domain_username: The domain user account that will have admin + privileges on the cluster. + :type domain_username: str + :param domain_user_password: The domain admin password. + :type domain_user_password: str + :param cluster_users_group_dns: Optional. The Distinguished Names for + cluster user groups + :type cluster_users_group_dns: list[str] + """ + + _attribute_map = { + 'directory_type': {'key': 'directoryType', 'type': 'DirectoryType'}, + 'domain': {'key': 'domain', 'type': 'str'}, + 'organizational_unit_dn': {'key': 'organizationalUnitDN', 'type': 'str'}, + 'ldaps_urls': {'key': 'ldapsUrls', 'type': '[str]'}, + 'domain_username': {'key': 'domainUsername', 'type': 'str'}, + 'domain_user_password': {'key': 'domainUserPassword', 'type': 'str'}, + 'cluster_users_group_dns': {'key': 'clusterUsersGroupDNs', 'type': '[str]'}, + } + + def __init__(self, *, directory_type=None, domain: str=None, organizational_unit_dn: str=None, ldaps_urls=None, domain_username: str=None, domain_user_password: str=None, cluster_users_group_dns=None, **kwargs) -> None: + super(SecurityProfile, self).__init__(**kwargs) + self.directory_type = directory_type + self.domain = domain + self.organizational_unit_dn = organizational_unit_dn + self.ldaps_urls = ldaps_urls + self.domain_username = domain_username + self.domain_user_password = domain_user_password + self.cluster_users_group_dns = cluster_users_group_dns diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_profile.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_profile.py new file mode 100644 index 000000000000..7921883012c0 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_profile.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SshProfile(Model): + """The list of SSH public keys. + + :param public_keys: The list of SSH public keys. + :type public_keys: list[~azure.mgmt.hdinsight.models.SshPublicKey] + """ + + _attribute_map = { + 'public_keys': {'key': 'publicKeys', 'type': '[SshPublicKey]'}, + } + + def __init__(self, **kwargs): + super(SshProfile, self).__init__(**kwargs) + self.public_keys = kwargs.get('public_keys', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_profile_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_profile_py3.py new file mode 100644 index 000000000000..05adf2f5d14c --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_profile_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SshProfile(Model): + """The list of SSH public keys. + + :param public_keys: The list of SSH public keys. + :type public_keys: list[~azure.mgmt.hdinsight.models.SshPublicKey] + """ + + _attribute_map = { + 'public_keys': {'key': 'publicKeys', 'type': '[SshPublicKey]'}, + } + + def __init__(self, *, public_keys=None, **kwargs) -> None: + super(SshProfile, self).__init__(**kwargs) + self.public_keys = public_keys diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_public_key.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_public_key.py new file mode 100644 index 000000000000..cf6119114b89 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_public_key.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SshPublicKey(Model): + """The SSH public key for the cluster nodes. + + :param certificate_data: The certificate for SSH. + :type certificate_data: str + """ + + _attribute_map = { + 'certificate_data': {'key': 'certificateData', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SshPublicKey, self).__init__(**kwargs) + self.certificate_data = kwargs.get('certificate_data', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_public_key_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_public_key_py3.py new file mode 100644 index 000000000000..d57a2dbaeb38 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/ssh_public_key_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SshPublicKey(Model): + """The SSH public key for the cluster nodes. + + :param certificate_data: The certificate for SSH. + :type certificate_data: str + """ + + _attribute_map = { + 'certificate_data': {'key': 'certificateData', 'type': 'str'}, + } + + def __init__(self, *, certificate_data: str=None, **kwargs) -> None: + super(SshPublicKey, self).__init__(**kwargs) + self.certificate_data = certificate_data diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_account.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_account.py new file mode 100644 index 000000000000..d5bde1b626bb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_account.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccount(Model): + """The storage Account. + + :param name: The name of the storage account. + :type name: str + :param is_default: Whether or not the storage account is the default + storage account. + :type is_default: bool + :param container: The container in the storage account, only to be + specified for WASB storage accounts. + :type container: str + :param file_system: The filesystem, only to be specified for Azure Data + Lake Storage Gen 2. + :type file_system: str + :param key: The storage account access key. + :type key: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'is_default': {'key': 'isDefault', 'type': 'bool'}, + 'container': {'key': 'container', 'type': 'str'}, + 'file_system': {'key': 'fileSystem', 'type': 'str'}, + 'key': {'key': 'key', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(StorageAccount, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.is_default = kwargs.get('is_default', None) + self.container = kwargs.get('container', None) + self.file_system = kwargs.get('file_system', None) + self.key = kwargs.get('key', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_account_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_account_py3.py new file mode 100644 index 000000000000..544b49927dde --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_account_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccount(Model): + """The storage Account. + + :param name: The name of the storage account. + :type name: str + :param is_default: Whether or not the storage account is the default + storage account. + :type is_default: bool + :param container: The container in the storage account, only to be + specified for WASB storage accounts. + :type container: str + :param file_system: The filesystem, only to be specified for Azure Data + Lake Storage Gen 2. + :type file_system: str + :param key: The storage account access key. + :type key: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'is_default': {'key': 'isDefault', 'type': 'bool'}, + 'container': {'key': 'container', 'type': 'str'}, + 'file_system': {'key': 'fileSystem', 'type': 'str'}, + 'key': {'key': 'key', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, is_default: bool=None, container: str=None, file_system: str=None, key: str=None, **kwargs) -> None: + super(StorageAccount, self).__init__(**kwargs) + self.name = name + self.is_default = is_default + self.container = container + self.file_system = file_system + self.key = key diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_profile.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_profile.py new file mode 100644 index 000000000000..5c38b31f7345 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_profile.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """The storage profile. + + :param storageaccounts: The list of storage accounts in the cluster. + :type storageaccounts: list[~azure.mgmt.hdinsight.models.StorageAccount] + """ + + _attribute_map = { + 'storageaccounts': {'key': 'storageaccounts', 'type': '[StorageAccount]'}, + } + + def __init__(self, **kwargs): + super(StorageProfile, self).__init__(**kwargs) + self.storageaccounts = kwargs.get('storageaccounts', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_profile_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_profile_py3.py new file mode 100644 index 000000000000..ab18eb99a564 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/storage_profile_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """The storage profile. + + :param storageaccounts: The list of storage accounts in the cluster. + :type storageaccounts: list[~azure.mgmt.hdinsight.models.StorageAccount] + """ + + _attribute_map = { + 'storageaccounts': {'key': 'storageaccounts', 'type': '[StorageAccount]'}, + } + + def __init__(self, *, storageaccounts=None, **kwargs) -> None: + super(StorageProfile, self).__init__(**kwargs) + self.storageaccounts = storageaccounts diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/tracked_resource.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/tracked_resource.py new file mode 100644 index 000000000000..86e0a2ce4814 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/tracked_resource.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class TrackedResource(Resource): + """The resource model definition for a ARM tracked top level resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: The Azure Region where the resource lives + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(TrackedResource, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/tracked_resource_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/tracked_resource_py3.py new file mode 100644 index 000000000000..aa56cc64c60e --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/tracked_resource_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class TrackedResource(Resource): + """The resource model definition for a ARM tracked top level resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param location: The Azure Region where the resource lives + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, location: str=None, tags=None, **kwargs) -> None: + super(TrackedResource, self).__init__(**kwargs) + self.location = location + self.tags = tags diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usage.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usage.py new file mode 100644 index 000000000000..691bb96ece5d --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usage.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """The details about the usage of a particular limited resource. + + :param unit: The type of measurement for usage. + :type unit: str + :param current_value: The current usage. + :type current_value: int + :param limit: The maximum allowed usage. + :type limit: int + :param name: The details about the localizable name of the used resource. + :type name: ~azure.mgmt.hdinsight.models.LocalizedName + """ + + _attribute_map = { + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'int'}, + 'limit': {'key': 'limit', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'LocalizedName'}, + } + + def __init__(self, **kwargs): + super(Usage, self).__init__(**kwargs) + self.unit = kwargs.get('unit', None) + self.current_value = kwargs.get('current_value', None) + self.limit = kwargs.get('limit', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usage_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usage_py3.py new file mode 100644 index 000000000000..7f400863cc17 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usage_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """The details about the usage of a particular limited resource. + + :param unit: The type of measurement for usage. + :type unit: str + :param current_value: The current usage. + :type current_value: int + :param limit: The maximum allowed usage. + :type limit: int + :param name: The details about the localizable name of the used resource. + :type name: ~azure.mgmt.hdinsight.models.LocalizedName + """ + + _attribute_map = { + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'int'}, + 'limit': {'key': 'limit', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'LocalizedName'}, + } + + def __init__(self, *, unit: str=None, current_value: int=None, limit: int=None, name=None, **kwargs) -> None: + super(Usage, self).__init__(**kwargs) + self.unit = unit + self.current_value = current_value + self.limit = limit + self.name = name diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usages_list_result.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usages_list_result.py new file mode 100644 index 000000000000..53610662ee09 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usages_list_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsagesListResult(Model): + """The response for the operation to get regional usages for a subscription. + + :param value: The list of usages. + :type value: list[~azure.mgmt.hdinsight.models.Usage] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[Usage]'}, + } + + def __init__(self, **kwargs): + super(UsagesListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usages_list_result_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usages_list_result_py3.py new file mode 100644 index 000000000000..8b104ecb2001 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/usages_list_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsagesListResult(Model): + """The response for the operation to get regional usages for a subscription. + + :param value: The list of usages. + :type value: list[~azure.mgmt.hdinsight.models.Usage] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[Usage]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(UsagesListResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/version_spec.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/version_spec.py new file mode 100644 index 000000000000..d3d95d985f43 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/version_spec.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VersionSpec(Model): + """The version properties. + + :param friendly_name: The friendly name + :type friendly_name: str + :param display_name: The display name + :type display_name: str + :param is_default: Whether or not the version is the default version. + :type is_default: str + :param component_versions: The component version property. + :type component_versions: dict[str, str] + """ + + _attribute_map = { + 'friendly_name': {'key': 'friendlyName', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'is_default': {'key': 'isDefault', 'type': 'str'}, + 'component_versions': {'key': 'componentVersions', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(VersionSpec, self).__init__(**kwargs) + self.friendly_name = kwargs.get('friendly_name', None) + self.display_name = kwargs.get('display_name', None) + self.is_default = kwargs.get('is_default', None) + self.component_versions = kwargs.get('component_versions', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/version_spec_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/version_spec_py3.py new file mode 100644 index 000000000000..a993e923a313 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/version_spec_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VersionSpec(Model): + """The version properties. + + :param friendly_name: The friendly name + :type friendly_name: str + :param display_name: The display name + :type display_name: str + :param is_default: Whether or not the version is the default version. + :type is_default: str + :param component_versions: The component version property. + :type component_versions: dict[str, str] + """ + + _attribute_map = { + 'friendly_name': {'key': 'friendlyName', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'is_default': {'key': 'isDefault', 'type': 'str'}, + 'component_versions': {'key': 'componentVersions', 'type': '{str}'}, + } + + def __init__(self, *, friendly_name: str=None, display_name: str=None, is_default: str=None, component_versions=None, **kwargs) -> None: + super(VersionSpec, self).__init__(**kwargs) + self.friendly_name = friendly_name + self.display_name = display_name + self.is_default = is_default + self.component_versions = component_versions diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/versions_capability.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/versions_capability.py new file mode 100644 index 000000000000..9b059cd8058f --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/versions_capability.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VersionsCapability(Model): + """The version capability. + + :param available: The list of version capabilities. + :type available: list[~azure.mgmt.hdinsight.models.VersionSpec] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': '[VersionSpec]'}, + } + + def __init__(self, **kwargs): + super(VersionsCapability, self).__init__(**kwargs) + self.available = kwargs.get('available', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/versions_capability_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/versions_capability_py3.py new file mode 100644 index 000000000000..869811057316 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/versions_capability_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VersionsCapability(Model): + """The version capability. + + :param available: The list of version capabilities. + :type available: list[~azure.mgmt.hdinsight.models.VersionSpec] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': '[VersionSpec]'}, + } + + def __init__(self, *, available=None, **kwargs) -> None: + super(VersionsCapability, self).__init__(**kwargs) + self.available = available diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/virtual_network_profile.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/virtual_network_profile.py new file mode 100644 index 000000000000..215c0db2b763 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/virtual_network_profile.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkProfile(Model): + """The virtual network properties. + + :param id: The ID of the virtual network. + :type id: str + :param subnet: The name of the subnet. + :type subnet: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'subnet', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkProfile, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.subnet = kwargs.get('subnet', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/virtual_network_profile_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/virtual_network_profile_py3.py new file mode 100644 index 000000000000..6687f9a6d9a4 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/virtual_network_profile_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkProfile(Model): + """The virtual network properties. + + :param id: The ID of the virtual network. + :type id: str + :param subnet: The name of the subnet. + :type subnet: str + """ + + _attribute_map = { + 'id': {'key': 'id', '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.subnet = subnet diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_size_compatibility_filter.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_size_compatibility_filter.py new file mode 100644 index 000000000000..de0164b831e6 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_size_compatibility_filter.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VmSizeCompatibilityFilter(Model): + """The virtual machine type compatibility filter. + + :param filter_mode: The mode for the filter. + :type filter_mode: str + :param regions: The list of regions. + :type regions: list[str] + :param cluster_flavors: The list of cluster types available. + :type cluster_flavors: list[str] + :param node_types: The list of node types. + :type node_types: list[str] + :param cluster_versions: The list of cluster versions. + :type cluster_versions: list[str] + :param vmsizes: The list of virtual machine sizes. + :type vmsizes: list[str] + """ + + _attribute_map = { + 'filter_mode': {'key': 'FilterMode', 'type': 'str'}, + 'regions': {'key': 'Regions', 'type': '[str]'}, + 'cluster_flavors': {'key': 'ClusterFlavors', 'type': '[str]'}, + 'node_types': {'key': 'NodeTypes', 'type': '[str]'}, + 'cluster_versions': {'key': 'ClusterVersions', 'type': '[str]'}, + 'vmsizes': {'key': 'vmsizes', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VmSizeCompatibilityFilter, self).__init__(**kwargs) + self.filter_mode = kwargs.get('filter_mode', None) + self.regions = kwargs.get('regions', None) + self.cluster_flavors = kwargs.get('cluster_flavors', None) + self.node_types = kwargs.get('node_types', None) + self.cluster_versions = kwargs.get('cluster_versions', None) + self.vmsizes = kwargs.get('vmsizes', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_size_compatibility_filter_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_size_compatibility_filter_py3.py new file mode 100644 index 000000000000..0e1e15cdf30b --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_size_compatibility_filter_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VmSizeCompatibilityFilter(Model): + """The virtual machine type compatibility filter. + + :param filter_mode: The mode for the filter. + :type filter_mode: str + :param regions: The list of regions. + :type regions: list[str] + :param cluster_flavors: The list of cluster types available. + :type cluster_flavors: list[str] + :param node_types: The list of node types. + :type node_types: list[str] + :param cluster_versions: The list of cluster versions. + :type cluster_versions: list[str] + :param vmsizes: The list of virtual machine sizes. + :type vmsizes: list[str] + """ + + _attribute_map = { + 'filter_mode': {'key': 'FilterMode', 'type': 'str'}, + 'regions': {'key': 'Regions', 'type': '[str]'}, + 'cluster_flavors': {'key': 'ClusterFlavors', 'type': '[str]'}, + 'node_types': {'key': 'NodeTypes', 'type': '[str]'}, + 'cluster_versions': {'key': 'ClusterVersions', 'type': '[str]'}, + 'vmsizes': {'key': 'vmsizes', 'type': '[str]'}, + } + + def __init__(self, *, filter_mode: str=None, regions=None, cluster_flavors=None, node_types=None, cluster_versions=None, vmsizes=None, **kwargs) -> None: + super(VmSizeCompatibilityFilter, self).__init__(**kwargs) + self.filter_mode = filter_mode + self.regions = regions + self.cluster_flavors = cluster_flavors + self.node_types = node_types + self.cluster_versions = cluster_versions + self.vmsizes = vmsizes diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_sizes_capability.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_sizes_capability.py new file mode 100644 index 000000000000..4ea9c0b45ae5 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_sizes_capability.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VmSizesCapability(Model): + """The virtual machine sizes capability. + + :param available: The list of virtual machine size capabilities. + :type available: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VmSizesCapability, self).__init__(**kwargs) + self.available = kwargs.get('available', None) diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_sizes_capability_py3.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_sizes_capability_py3.py new file mode 100644 index 000000000000..eb83370cbc7c --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/models/vm_sizes_capability_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VmSizesCapability(Model): + """The virtual machine sizes capability. + + :param available: The list of virtual machine size capabilities. + :type available: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': '[str]'}, + } + + def __init__(self, *, available=None, **kwargs) -> None: + super(VmSizesCapability, self).__init__(**kwargs) + self.available = available diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/__init__.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/__init__.py new file mode 100644 index 000000000000..4775164d2e41 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/__init__.py @@ -0,0 +1,30 @@ +# 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 .clusters_operations import ClustersOperations +from .applications_operations import ApplicationsOperations +from .locations_operations import LocationsOperations +from .configurations_operations import ConfigurationsOperations +from .extension_operations import ExtensionOperations +from .script_actions_operations import ScriptActionsOperations +from .script_execution_history_operations import ScriptExecutionHistoryOperations +from .operations import Operations + +__all__ = [ + 'ClustersOperations', + 'ApplicationsOperations', + 'LocationsOperations', + 'ConfigurationsOperations', + 'ExtensionOperations', + 'ScriptActionsOperations', + 'ScriptExecutionHistoryOperations', + 'Operations', +] diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/applications_operations.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/applications_operations.py new file mode 100644 index 000000000000..ac32a4c915fb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/applications_operations.py @@ -0,0 +1,357 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApplicationsOperations(object): + """ApplicationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The HDInsight client API Version. Constant value: "2015-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-03-01-preview" + + self.config = config + + def list( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + """Lists all of the applications for the HDInsight cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Application + :rtype: + ~azure.mgmt.hdinsight.models.ApplicationPaged[~azure.mgmt.hdinsight.models.Application] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ApplicationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/applications'} + + def get( + self, resource_group_name, cluster_name, application_name, custom_headers=None, raw=False, **operation_config): + """Lists properties of the specified application. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param application_name: The constant value for the application name. + :type application_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Application or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.hdinsight.models.Application or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'applicationName': self._serialize.url("application_name", application_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Application', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/applications/{applicationName}'} + + + def _create_initial( + self, resource_group_name, cluster_name, application_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'applicationName': self._serialize.url("application_name", application_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Application') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Application', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, cluster_name, application_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates applications for the HDInsight cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param application_name: The constant value for the application name. + :type application_name: str + :param parameters: The application create request. + :type parameters: ~azure.mgmt.hdinsight.models.Application + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Application or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.hdinsight.models.Application] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.hdinsight.models.Application]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + application_name=application_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Application', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/applications/{applicationName}'} + + + def _delete_initial( + self, resource_group_name, cluster_name, application_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'applicationName': self._serialize.url("application_name", application_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, cluster_name, application_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified application on the HDInsight cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param application_name: The constant value for the application name. + :type application_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + application_name=application_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/applications/{applicationName}'} diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/clusters_operations.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/clusters_operations.py new file mode 100644 index 000000000000..fd2103ccfcbb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/clusters_operations.py @@ -0,0 +1,659 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ClustersOperations(object): + """ClustersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The HDInsight client API Version. Constant value: "2015-03-01-preview". + :ivar role_name: The constant value for the roleName. Constant value: "workernode". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-03-01-preview" + self.role_name = "workernode" + + self.config = config + + + def _create_initial( + self, resource_group_name, cluster_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ClusterCreateParametersExtended') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, cluster_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a new HDInsight cluster with the specified parameters. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param parameters: The cluster create request. + :type parameters: + ~azure.mgmt.hdinsight.models.ClusterCreateParametersExtended + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Cluster or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.hdinsight.models.Cluster] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.hdinsight.models.Cluster]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}'} + + def update( + self, resource_group_name, cluster_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Patch HDInsight cluster with the specified parameters. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param tags: The resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Cluster or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.hdinsight.models.Cluster or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.ClusterPatchParameters(tags=tags) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ClusterPatchParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}'} + + + def _delete_initial( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified HDInsight cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}'} + + def get( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Cluster or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.hdinsight.models.Cluster or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists the HDInsight clusters in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Cluster + :rtype: + ~azure.mgmt.hdinsight.models.ClusterPaged[~azure.mgmt.hdinsight.models.Cluster] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ClusterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ClusterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters'} + + + def _resize_initial( + self, resource_group_name, cluster_name, target_instance_count=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ClusterResizeParameters(target_instance_count=target_instance_count) + + # Construct URL + url = self.resize.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'roleName': self._serialize.url("self.role_name", self.role_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ClusterResizeParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def resize( + self, resource_group_name, cluster_name, target_instance_count=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Resizes the specified HDInsight cluster to the specified size. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param target_instance_count: The target instance count for the + operation. + :type target_instance_count: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._resize_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + target_instance_count=target_instance_count, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + resize.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/roles/{roleName}/resize'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the HDInsight clusters under the subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Cluster + :rtype: + ~azure.mgmt.hdinsight.models.ClusterPaged[~azure.mgmt.hdinsight.models.Cluster] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ClusterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ClusterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.HDInsight/clusters'} + + + def _execute_script_actions_initial( + self, resource_group_name, cluster_name, persist_on_success, script_actions=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ExecuteScriptActionParameters(script_actions=script_actions, persist_on_success=persist_on_success) + + # Construct URL + url = self.execute_script_actions.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExecuteScriptActionParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def execute_script_actions( + self, resource_group_name, cluster_name, persist_on_success, script_actions=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Executes script actions on the specified HDInsight cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param persist_on_success: Gets or sets if the scripts needs to be + persisted. + :type persist_on_success: bool + :param script_actions: The list of run time script actions. + :type script_actions: + list[~azure.mgmt.hdinsight.models.RuntimeScriptAction] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._execute_script_actions_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + persist_on_success=persist_on_success, + script_actions=script_actions, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + execute_script_actions.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/executeScriptActions'} diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/configurations_operations.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/configurations_operations.py new file mode 100644 index 000000000000..c34316103990 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/configurations_operations.py @@ -0,0 +1,191 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ConfigurationsOperations(object): + """ConfigurationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The HDInsight client API Version. Constant value: "2015-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-03-01-preview" + + self.config = config + + + def _update_http_settings_initial( + self, resource_group_name, cluster_name, configuration_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update_http_settings.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'configurationName': self._serialize.url("configuration_name", configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, '{str}') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def update_http_settings( + self, resource_group_name, cluster_name, configuration_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Configures the HTTP settings on the specified cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param configuration_name: The name of the cluster configuration. + :type configuration_name: str + :param parameters: The cluster configurations. + :type parameters: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._update_http_settings_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + configuration_name=configuration_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_http_settings.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/configurations/{configurationName}'} + + def get( + self, resource_group_name, cluster_name, configuration_name, custom_headers=None, raw=False, **operation_config): + """The configuration object for the specified cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param configuration_name: The name of the cluster configuration. + :type configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: dict or ClientRawResponse if raw=true + :rtype: dict[str, str] or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'configurationName': self._serialize.url("configuration_name", configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('{str}', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/configurations/{configurationName}'} diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/extension_operations.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/extension_operations.py new file mode 100644 index 000000000000..a9296779ebed --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/extension_operations.py @@ -0,0 +1,459 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExtensionOperations(object): + """ExtensionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The HDInsight client API Version. Constant value: "2015-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-03-01-preview" + + self.config = config + + + def _enable_monitoring_initial( + self, resource_group_name, cluster_name, workspace_id=None, primary_key=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ClusterMonitoringRequest(workspace_id=workspace_id, primary_key=primary_key) + + # Construct URL + url = self.enable_monitoring.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ClusterMonitoringRequest') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def enable_monitoring( + self, resource_group_name, cluster_name, workspace_id=None, primary_key=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Enables the Operations Management Suite (OMS) on the HDInsight cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param workspace_id: The Operations Management Suite (OMS) workspace + ID. + :type workspace_id: str + :param primary_key: The Operations Management Suite (OMS) workspace + key. + :type primary_key: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._enable_monitoring_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + workspace_id=workspace_id, + primary_key=primary_key, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + enable_monitoring.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/clustermonitoring'} + + def get_monitoring_status( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + """Gets the status of Operations Management Suite (OMS) on the HDInsight + cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ClusterMonitoringResponse or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.hdinsight.models.ClusterMonitoringResponse or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_monitoring_status.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ClusterMonitoringResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_monitoring_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/clustermonitoring'} + + + def _disable_monitoring_initial( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.disable_monitoring.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def disable_monitoring( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Disables the Operations Management Suite (OMS) on the HDInsight + cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._disable_monitoring_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + disable_monitoring.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/clustermonitoring'} + + def create( + self, resource_group_name, cluster_name, extension_name, workspace_id=None, primary_key=None, custom_headers=None, raw=False, **operation_config): + """Creates an HDInsight cluster extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param extension_name: The name of the cluster extension. + :type extension_name: str + :param workspace_id: The workspace ID for the cluster monitoring + extension. + :type workspace_id: str + :param primary_key: The certificate for the cluster monitoring + extensions. + :type primary_key: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.Extension(workspace_id=workspace_id, primary_key=primary_key) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'extensionName': self._serialize.url("extension_name", extension_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Extension') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/{extensionName}'} + + def get( + self, resource_group_name, cluster_name, extension_name, custom_headers=None, raw=False, **operation_config): + """Gets the extension properties for the specified HDInsight cluster + extension. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param extension_name: The name of the cluster extension. + :type extension_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Extension or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.hdinsight.models.Extension or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'extensionName': self._serialize.url("extension_name", extension_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Extension', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/{extensionName}'} + + def delete( + self, resource_group_name, cluster_name, extension_name, custom_headers=None, raw=False, **operation_config): + """Deletes the specified extension for HDInsight cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param extension_name: The name of the cluster extension. + :type extension_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'extensionName': self._serialize.url("extension_name", extension_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/extensions/{extensionName}'} diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/locations_operations.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/locations_operations.py new file mode 100644 index 000000000000..fddc5bd6cbd8 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/locations_operations.py @@ -0,0 +1,153 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class LocationsOperations(object): + """LocationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The HDInsight client API Version. Constant value: "2015-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-03-01-preview" + + self.config = config + + def get_capabilities( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets the capabilities for the specified location. + + :param location: The location. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CapabilitiesResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.hdinsight.models.CapabilitiesResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_capabilities.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'location': self._serialize.url("location", location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CapabilitiesResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_capabilities.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.HDInsight/locations/{location}/capabilities'} + + def list_usages( + self, location, custom_headers=None, raw=False, **operation_config): + """Lists the usages for the specified location. + + :param location: The location. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: UsagesListResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.hdinsight.models.UsagesListResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.list_usages.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'location': self._serialize.url("location", location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('UsagesListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_usages.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.HDInsight/locations/{location}/usages'} diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/operations.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/operations.py new file mode 100644 index 000000000000..8978d9d1a856 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/operations.py @@ -0,0 +1,96 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The HDInsight client API Version. Constant value: "2015-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-03-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available HDInsight REST API operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.hdinsight.models.OperationPaged[~azure.mgmt.hdinsight.models.Operation] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.HDInsight/operations'} diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/script_actions_operations.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/script_actions_operations.py new file mode 100644 index 000000000000..23b9d13e4e60 --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/script_actions_operations.py @@ -0,0 +1,225 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ScriptActionsOperations(object): + """ScriptActionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The HDInsight client API Version. Constant value: "2015-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-03-01-preview" + + self.config = config + + def delete( + self, resource_group_name, cluster_name, script_name, custom_headers=None, raw=False, **operation_config): + """Deletes a specified persisted script action of the cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param script_name: The name of the script. + :type script_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'scriptName': self._serialize.url("script_name", script_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/scriptActions/{scriptName}'} + + def list_persisted_scripts( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + """Lists all the persisted script actions for the specified cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RuntimeScriptActionDetail + :rtype: + ~azure.mgmt.hdinsight.models.RuntimeScriptActionDetailPaged[~azure.mgmt.hdinsight.models.RuntimeScriptActionDetail] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_persisted_scripts.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.RuntimeScriptActionDetailPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RuntimeScriptActionDetailPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_persisted_scripts.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/scriptActions'} + + def get_execution_detail( + self, resource_group_name, cluster_name, script_execution_id, custom_headers=None, raw=False, **operation_config): + """Gets the script execution detail for the given script execution ID. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param script_execution_id: The script execution Id + :type script_execution_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RuntimeScriptActionDetail or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.hdinsight.models.RuntimeScriptActionDetail or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_execution_detail.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'scriptExecutionId': self._serialize.url("script_execution_id", script_execution_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RuntimeScriptActionDetail', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_execution_detail.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/scriptExecutionHistory/{scriptExecutionId}'} diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/script_execution_history_operations.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/script_execution_history_operations.py new file mode 100644 index 000000000000..1deb836e4bbb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/operations/script_execution_history_operations.py @@ -0,0 +1,161 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ScriptExecutionHistoryOperations(object): + """ScriptExecutionHistoryOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The HDInsight client API Version. Constant value: "2015-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-03-01-preview" + + self.config = config + + def list( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + """Lists all scripts' execution history for the specified cluster. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RuntimeScriptActionDetail + :rtype: + ~azure.mgmt.hdinsight.models.RuntimeScriptActionDetailPaged[~azure.mgmt.hdinsight.models.RuntimeScriptActionDetail] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.RuntimeScriptActionDetailPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RuntimeScriptActionDetailPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/scriptExecutionHistory'} + + def promote( + self, resource_group_name, cluster_name, script_execution_id, custom_headers=None, raw=False, **operation_config): + """Promotes the specified ad-hoc script execution to a persisted script. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cluster_name: The name of the cluster. + :type cluster_name: str + :param script_execution_id: The script execution Id + :type script_execution_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.promote.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'scriptExecutionId': self._serialize.url("script_execution_id", script_execution_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + promote.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/scriptExecutionHistory/{scriptExecutionId}/promote'} diff --git a/azure-mgmt-hdinsight/azure/mgmt/hdinsight/version.py b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/version.py new file mode 100644 index 000000000000..e0ec669828cb --- /dev/null +++ b/azure-mgmt-hdinsight/azure/mgmt/hdinsight/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "0.1.0" + diff --git a/azure-mgmt-hdinsight/sdk_packaging.toml b/azure-mgmt-hdinsight/sdk_packaging.toml new file mode 100644 index 000000000000..5811cd9b381e --- /dev/null +++ b/azure-mgmt-hdinsight/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-hdinsight" +package_pprint_name = "HDInsight Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-nspkg/setup.cfg b/azure-mgmt-hdinsight/setup.cfg similarity index 100% rename from azure-nspkg/setup.cfg rename to azure-mgmt-hdinsight/setup.cfg diff --git a/azure-mgmt-hdinsight/setup.py b/azure-mgmt-hdinsight/setup.py new file mode 100644 index 000000000000..2f83fd18f271 --- /dev/null +++ b/azure-mgmt-hdinsight/setup.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python + +#------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +#-------------------------------------------------------------------------- + +import re +import os.path +from io import open +from setuptools import find_packages, setup + +# Change the PACKAGE_NAME only to change folder and different name +PACKAGE_NAME = "azure-mgmt-hdinsight" +PACKAGE_PPRINT_NAME = "HDInsight Management" + +# a-b-c => a/b/c +package_folder_path = PACKAGE_NAME.replace('-', '/') +# a-b-c => a.b.c +namespace_name = PACKAGE_NAME.replace('-', '.') + +# azure v0.x is not compatible with this package +# azure v0.x used to have a __version__ attribute (newer versions don't) +try: + import azure + try: + ver = azure.__version__ + raise Exception( + 'This package is incompatible with azure=={}. '.format(ver) + + 'Uninstall it with "pip uninstall azure".' + ) + except AttributeError: + pass +except ImportError: + pass + +# Version extraction inspired from 'requests' +with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: + version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', + fd.read(), re.MULTILINE).group(1) + +if not version: + raise RuntimeError('Cannot find version information') + +with open('README.rst', encoding='utf-8') as f: + readme = f.read() +with open('HISTORY.rst', encoding='utf-8') as f: + history = f.read() + +setup( + name=PACKAGE_NAME, + version=version, + description='Microsoft Azure {} Client Library for Python'.format(PACKAGE_PPRINT_NAME), + long_description=readme + '\n\n' + history, + license='MIT License', + author='Microsoft Corporation', + author_email='azpysdkhelp@microsoft.com', + url='https://github.com/Azure/azure-sdk-for-python', + classifiers=[ + 'Development Status :: 4 - Beta', + 'Programming Language :: Python', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'License :: OSI Approved :: MIT License', + ], + zip_safe=False, + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), + install_requires=[ + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', + 'azure-common~=1.1', + ], + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } +) diff --git a/azure-mgmt-hdinsight/test/recordings/test_mgmt_hdinsight.test_cluster_create.yaml b/azure-mgmt-hdinsight/test/recordings/test_mgmt_hdinsight.test_cluster_create.yaml new file mode 100644 index 000000000000..81678ca067be --- /dev/null +++ b/azure-mgmt-hdinsight/test/recordings/test_mgmt_hdinsight.test_cluster_create.yaml @@ -0,0 +1,1399 @@ +interactions: +- request: + body: !!python/unicode '{"tags": {}, "properties": {"computeProfile": {"roles": + [{"hardwareProfile": {"vmSize": "Large"}, "osProfile": {"linuxOperatingSystemProfile": + {"username": "sshuser", "password": "Password1!"}}, "targetInstanceCount": 2, + "name": "headnode"}, {"hardwareProfile": {"vmSize": "Large"}, "osProfile": {"linuxOperatingSystemProfile": + {"username": "sshuser", "password": "Password1!"}}, "targetInstanceCount": 1, + "name": "workernode"}]}, "tier": "Standard", "clusterVersion": "3.6", "clusterDefinition": + {"kind": "hadoop", "configurations": {"gateway": {"restAuthCredential.enabled_credential": + "True", "restAuthCredential.username": "admin", "restAuthCredential.password": + "Password1!"}}}, "storageProfile": {"storageaccounts": [{"key": "E9Rz4cwkow1pdAXMEheSehexmUM2gqO455grmiK48TwgBqbAbBfUKLF78MRdkhBPo69qc4UX+BDUHpeJffHLOA==", + "container": "hdisdk-py-humboldt42fd1018", "name": "wawonsdkncentralus.blob.core.windows.net", + "isDefault": true}]}, "osType": "Linux"}, "location": "North Central US"}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['991'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + accept-language: [en-US] + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018","name":"hdisdk-py-humboldt42fd1018","type":"Microsoft.HDInsight/clusters","location":"North + Central US","etag":"32e11f66-c84d-4f5f-b65a-b4c10f79be41","tags":{},"properties":{"clusterVersion":"3.6.1000.65","osType":"Linux","clusterDefinition":{"blueprint":"https://blueprints.azurehdinsight.net/hadoop-3.6.1000.65.1807162004.json","kind":"hadoop","componentVersion":{"hadoop":"2.7"}},"computeProfile":{"roles":[{"name":"headnode","targetInstanceCount":2,"hardwareProfile":{"vmSize":"Large"},"osProfile":{"linuxOperatingSystemProfile":{"username":"sshuser"}},"encryptDataDisks":false},{"name":"workernode","targetInstanceCount":1,"hardwareProfile":{"vmSize":"Large"},"osProfile":{"linuxOperatingSystemProfile":{"username":"sshuser"}},"encryptDataDisks":false}]},"provisioningState":"InProgress","clusterState":"Accepted","createdDate":"2018-08-07T03:02:48.57","quotaInfo":{"coresUsed":12},"tier":"standard"}}'} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview'] + cache-control: [no-cache] + content-length: ['1095'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:02:48 GMT'] + etag: ['"32e11f66-c84d-4f5f-b65a-b4c10f79be41"'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-clusteruri: ['https://management.azure.com/subscriptions/964c10bb-8a6c-43bc-83d3-6b318c6c7305/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018?api-version=2015-03-01-preview'] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:03:19 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:03:50 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:04:21 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:04:51 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:05:22 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:05:53 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:06:24 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:06:54 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:07:25 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:07:56 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:08:26 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:08:57 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:09:27 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:09:59 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:10:30 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:11:01 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:11:32 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:12:02 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:12:33 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:13:03 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:13:35 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:14:06 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:14:36 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:15:07 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:15:37 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:16:08 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:16:38 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:17:09 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/create?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"Succeeded"}'} + headers: + cache-control: [no-cache] + content-length: ['22'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:17:40 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018","name":"hdisdk-py-humboldt42fd1018","type":"Microsoft.HDInsight/clusters","location":"North + Central US","etag":"32e11f66-c84d-4f5f-b65a-b4c10f79be41","tags":{},"properties":{"clusterVersion":"3.6.1000.65","osType":"Linux","clusterDefinition":{"blueprint":"https://blueprints.azurehdinsight.net/hadoop-3.6.1000.65.1807162004.json","kind":"hadoop","componentVersion":{"hadoop":"2.7"}},"computeProfile":{"roles":[{"name":"headnode","targetInstanceCount":2,"hardwareProfile":{"vmSize":"Large"},"osProfile":{"linuxOperatingSystemProfile":{"username":"sshuser"}},"encryptDataDisks":false},{"name":"workernode","targetInstanceCount":1,"hardwareProfile":{"vmSize":"Large"},"osProfile":{"linuxOperatingSystemProfile":{"username":"sshuser"}},"encryptDataDisks":false},{"name":"zookeepernode","targetInstanceCount":3,"hardwareProfile":{"vmSize":"Medium"},"osProfile":{"linuxOperatingSystemProfile":{"username":"sshuser"}},"encryptDataDisks":false}]},"provisioningState":"Succeeded","clusterState":"Running","createdDate":"2018-08-07T03:02:48.57","quotaInfo":{"coresUsed":12},"connectivityEndpoints":[{"name":"SSH","protocol":"TCP","location":"hdisdk-py-humboldt42fd1018-ssh.azurehdinsight.net","port":22},{"name":"HTTPS","protocol":"TCP","location":"hdisdk-py-humboldt42fd1018.azurehdinsight.net","port":443}],"tier":"standard"}}'} + headers: + cache-control: [no-cache] + content-length: ['1507'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:17:41 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: !!python/unicode '{"targetInstanceCount": 2}' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['26'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/roles/workernode/resize?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode ''} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview'] + cache-control: [no-cache] + content-length: ['0'] + date: ['Tue, 07 Aug 2018 03:17:42 GMT'] + expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/operationresults/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:18:43 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:19:14 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:19:45 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:20:15 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:20:46 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:21:17 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:21:47 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:22:17 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:22:48 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:23:20 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:23:49 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:24:20 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:24:50 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018/azureasyncoperations/a2c15844-f76e-4c87-b05f-77b3ded0a44e-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"Succeeded"}'} + headers: + cache-control: [no-cache] + content-length: ['22'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:25:21 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['0'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + accept-language: [en-US] + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_hdinsight_test_cluster_create42fd1018/providers/Microsoft.HDInsight/clusters/hdisdk-py-humboldt42fd1018?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode ''} + headers: + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.HDInsight/locations/North%20Central%20US/azureasyncoperations/58fac6c1-5dc4-4462-bfcd-881dee581f12-0-r?api-version=2015-03-01-preview'] + cache-control: [no-cache] + content-length: ['0'] + date: ['Tue, 07 Aug 2018 03:25:23 GMT'] + expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.HDInsight/locations/North%20Central%20US/operationresults/58fac6c1-5dc4-4462-bfcd-881dee581f12-0-r?api-version=2015-03-01-preview'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [ClusterResourcesAndSubResources] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.HDInsight/locations/North%20Central%20US/azureasyncoperations/58fac6c1-5dc4-4462-bfcd-881dee581f12-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"InProgress"}'} + headers: + cache-control: [no-cache] + content-length: ['23'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:26:24 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [AsyncOperationsWithRegionalSuffix] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/2.7.15rc1 (Linux-4.15.0-1018-azure-x86_64-with-Ubuntu-18.04-bionic) + requests/2.19.1 msrest/0.5.4 msrest_azure/0.4.34 azure-mgmt-hdinsight/0.1.0 + Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.HDInsight/locations/North%20Central%20US/azureasyncoperations/58fac6c1-5dc4-4462-bfcd-881dee581f12-0-r?api-version=2015-03-01-preview + response: + body: {string: !!python/unicode '{"status":"Succeeded"}'} + headers: + cache-control: [no-cache] + content-length: ['22'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 07 Aug 2018 03:26:54 GMT'] + expires: ['-1'] + pragma: [no-cache] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-hdi-matched-rule: [AsyncOperationsWithRegionalSuffix] + x-ms-hdi-routed-to: [RegionalRp] + x-ms-hdi-served-by: [northcentralus] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-hdinsight/test/test_mgmt_hdinsight.py b/azure-mgmt-hdinsight/test/test_mgmt_hdinsight.py new file mode 100644 index 000000000000..5896b748f483 --- /dev/null +++ b/azure-mgmt-hdinsight/test/test_mgmt_hdinsight.py @@ -0,0 +1,124 @@ +# 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. +#-------------------------------------------------------------------------- +import unittest + +from azure.mgmt.hdinsight import HDInsightManagementClient +from azure.mgmt.hdinsight.models import * +from devtools_testutils import AzureMgmtTestCase, ResourceGroupPreparer + + +class HDInsightTestConfig: + # Non-sensitive test configs + location = "North Central US" + cluster_username = "admin" + cluster_password = "Password1!" + ssh_username = "sshuser" + ssh_password = "Password1!" + storage_account = "wawonsdkncentralus.blob.core.windows.net" + + # Sensitive test configs + storage_account_key = "" + + +class MgmtHDInsightTest(AzureMgmtTestCase): + + def setUp(self): + super(MgmtHDInsightTest, self).setUp() + self.hdinsight_client = self.create_mgmt_client( + HDInsightManagementClient + ) + + @ResourceGroupPreparer(location=HDInsightTestConfig.location) + def test_cluster_create(self, resource_group, location): + cluster_name = self.get_resource_name('hdisdk-py-humboldt') + + create_params = ClusterCreateParametersExtended( + location=location, + tags={}, + properties=ClusterCreateProperties( + cluster_version="3.6", + os_type=OSType.linux, + tier=Tier.standard, + cluster_definition=ClusterDefinition( + kind="hadoop", + configurations={ + "gateway": { + "restAuthCredential.enabled_credential": "True", + "restAuthCredential.username": HDInsightTestConfig.cluster_username, + "restAuthCredential.password": HDInsightTestConfig.cluster_password + } + } + ), + compute_profile=ComputeProfile( + roles=[ + Role( + name="headnode", + target_instance_count=2, + hardware_profile=HardwareProfile(vm_size="Large"), + os_profile=OsProfile( + linux_operating_system_profile=LinuxOperatingSystemProfile( + username=HDInsightTestConfig.ssh_username, + password=HDInsightTestConfig.ssh_password + ) + ) + ), + Role( + name="workernode", + target_instance_count=1, + hardware_profile=HardwareProfile(vm_size="Large"), + os_profile=OsProfile( + linux_operating_system_profile=LinuxOperatingSystemProfile( + username=HDInsightTestConfig.ssh_username, + password=HDInsightTestConfig.ssh_password + ) + ) + ) + ] + ), + storage_profile=StorageProfile( + storageaccounts=[StorageAccount( + name=HDInsightTestConfig.storage_account, + key=HDInsightTestConfig.storage_account_key, + container=cluster_name.lower(), + is_default=True + )] + ) + ) + ) + + create_poller = self.hdinsight_client.clusters.create(resource_group.name, cluster_name, create_params) + cluster = create_poller.result() + self.validate_cluster(create_params, cluster) + + scale_poller = self.hdinsight_client.clusters.resize(resource_group.name, cluster_name, target_instance_count=2) + scale_poller.wait() + + delete_poller = self.hdinsight_client.clusters.delete(resource_group.name, cluster_name) + delete_poller.wait() + + def validate_cluster(self, create_parameters, cluster_response): + self.assertEqual(create_parameters.properties.tier, cluster_response.properties.tier) + self.assertEqual("Running", cluster_response.properties.cluster_state) + self.assertIsNotNone(cluster_response.etag) + self.assertEqual("Microsoft.HDInsight/clusters", cluster_response.type) + self.assertEqual(create_parameters.location, cluster_response.location) + self.assertEqual(create_parameters.tags, cluster_response.tags) + self.assertEqual(1, len([endpoint for endpoint in cluster_response.properties.connectivity_endpoints + if endpoint.name == "HTTPS"])) + self.assertEqual(1, len([endpoint for endpoint in cluster_response.properties.connectivity_endpoints + if endpoint.name == "SSH"])) + self.assertEqual(create_parameters.properties.os_type, cluster_response.properties.os_type) + self.assertIsNone(cluster_response.properties.errors) + self.assertEqual(HDInsightClusterProvisioningState.succeeded, cluster_response.properties.provisioning_state) + self.assertEqual(create_parameters.properties.cluster_definition.kind, cluster_response.properties.cluster_definition.kind) + self.assertEqual(create_parameters.properties.cluster_version, cluster_response.properties.cluster_version[0:3]) + + +#------------------------------------------------------------------------------ +if __name__ == '__main__': + unittest.main() diff --git a/azure-mgmt-iotcentral/HISTORY.rst b/azure-mgmt-iotcentral/HISTORY.rst index 88e184b5d124..afdf15c48011 100644 --- a/azure-mgmt-iotcentral/HISTORY.rst +++ b/azure-mgmt-iotcentral/HISTORY.rst @@ -3,6 +3,28 @@ Release History =============== +1.0.0 (2018-10-26) +++++++++++++++++++ + +**Features** + +- Model OperationInputs has a new parameter type +- Model ErrorDetails has a new parameter details +- Added operation AppsOperations.check_subdomain_availability + +**Breaking changes** + +- Operation AppsOperations.check_name_availability has a new signature + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + +0.2.0 (2018-08-07) +++++++++++++++++++ + +* Replace API version by 2018-09-01 + 0.1.0 (2018-07-16) ++++++++++++++++++ diff --git a/azure-mgmt-iotcentral/MANIFEST.in b/azure-mgmt-iotcentral/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-iotcentral/MANIFEST.in +++ b/azure-mgmt-iotcentral/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-iotcentral/README.rst b/azure-mgmt-iotcentral/README.rst index d45bb4460624..ba50a01e0d1a 100644 --- a/azure-mgmt-iotcentral/README.rst +++ b/azure-mgmt-iotcentral/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure IoTCentral Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-iotcentral/azure/__init__.py b/azure-mgmt-iotcentral/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-iotcentral/azure/__init__.py +++ b/azure-mgmt-iotcentral/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-iotcentral/azure/mgmt/__init__.py b/azure-mgmt-iotcentral/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/__init__.py +++ b/azure-mgmt-iotcentral/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/iot_central_client.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/iot_central_client.py index 6ad9e0b45917..31859e58bed7 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/iot_central_client.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/iot_central_client.py @@ -76,7 +76,7 @@ def __init__( super(IotCentralClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '2017-07-01-privatepreview' + self.api_version = '2018-09-01' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/__init__.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/__init__.py index dc2d42d83462..2819b4e949e1 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/__init__.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/__init__.py @@ -14,26 +14,27 @@ from .app_py3 import App from .app_patch_py3 import AppPatch from .resource_py3 import Resource + from .error_response_body_py3 import ErrorResponseBody from .error_details_py3 import ErrorDetails, ErrorDetailsException from .operation_display_py3 import OperationDisplay from .operation_py3 import Operation from .operation_inputs_py3 import OperationInputs - from .app_name_availability_info_py3 import AppNameAvailabilityInfo + from .app_availability_info_py3 import AppAvailabilityInfo except (SyntaxError, ImportError): from .app_sku_info import AppSkuInfo from .app import App from .app_patch import AppPatch from .resource import Resource + from .error_response_body import ErrorResponseBody from .error_details import ErrorDetails, ErrorDetailsException from .operation_display import OperationDisplay from .operation import Operation from .operation_inputs import OperationInputs - from .app_name_availability_info import AppNameAvailabilityInfo + from .app_availability_info import AppAvailabilityInfo from .app_paged import AppPaged from .operation_paged import OperationPaged from .iot_central_client_enums import ( AppSku, - AppNameUnavailabilityReason, ) __all__ = [ @@ -41,13 +42,13 @@ 'App', 'AppPatch', 'Resource', + 'ErrorResponseBody', 'ErrorDetails', 'ErrorDetailsException', 'OperationDisplay', 'Operation', 'OperationInputs', - 'AppNameAvailabilityInfo', + 'AppAvailabilityInfo', 'AppPaged', 'OperationPaged', 'AppSku', - 'AppNameUnavailabilityReason', ] diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_availability_info.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_availability_info.py new file mode 100644 index 000000000000..b690919a286d --- /dev/null +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_availability_info.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AppAvailabilityInfo(Model): + """The properties indicating whether a given IoT Central application name or + subdomain is available. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name_available: The value which indicates whether the provided name + is available. + :vartype name_available: bool + :ivar reason: The reason for unavailability. + :vartype reason: str + :ivar message: The detailed reason message. + :vartype message: str + """ + + _validation = { + 'name_available': {'readonly': True}, + 'reason': {'readonly': True}, + 'message': {'readonly': True}, + } + + _attribute_map = { + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AppAvailabilityInfo, self).__init__(**kwargs) + self.name_available = None + self.reason = None + self.message = None diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_availability_info_py3.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_availability_info_py3.py new file mode 100644 index 000000000000..64c94d994ad1 --- /dev/null +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_availability_info_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AppAvailabilityInfo(Model): + """The properties indicating whether a given IoT Central application name or + subdomain is available. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name_available: The value which indicates whether the provided name + is available. + :vartype name_available: bool + :ivar reason: The reason for unavailability. + :vartype reason: str + :ivar message: The detailed reason message. + :vartype message: str + """ + + _validation = { + 'name_available': {'readonly': True}, + 'reason': {'readonly': True}, + 'message': {'readonly': True}, + } + + _attribute_map = { + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(AppAvailabilityInfo, self).__init__(**kwargs) + self.name_available = None + self.reason = None + self.message = None diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_name_availability_info.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_name_availability_info.py deleted file mode 100644 index 5121fecc7259..000000000000 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_name_availability_info.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AppNameAvailabilityInfo(Model): - """The properties indicating whether a given IoT Central application name is - available. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar name_available: The value which indicates whether the provided name - is available. - :vartype name_available: bool - :ivar reason: The reason for unavailability. Possible values include: - 'Invalid', 'AlreadyExists' - :vartype reason: str or - ~azure.mgmt.iotcentral.models.AppNameUnavailabilityReason - :param message: The detailed reason message. - :type message: str - """ - - _validation = { - 'name_available': {'readonly': True}, - 'reason': {'readonly': True}, - } - - _attribute_map = { - 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, - 'reason': {'key': 'reason', 'type': 'AppNameUnavailabilityReason'}, - 'message': {'key': 'message', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(AppNameAvailabilityInfo, self).__init__(**kwargs) - self.name_available = None - self.reason = None - self.message = kwargs.get('message', None) diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_name_availability_info_py3.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_name_availability_info_py3.py deleted file mode 100644 index 7549acd0baee..000000000000 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/app_name_availability_info_py3.py +++ /dev/null @@ -1,48 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AppNameAvailabilityInfo(Model): - """The properties indicating whether a given IoT Central application name is - available. - - Variables are only populated by the server, and will be ignored when - sending a request. - - :ivar name_available: The value which indicates whether the provided name - is available. - :vartype name_available: bool - :ivar reason: The reason for unavailability. Possible values include: - 'Invalid', 'AlreadyExists' - :vartype reason: str or - ~azure.mgmt.iotcentral.models.AppNameUnavailabilityReason - :param message: The detailed reason message. - :type message: str - """ - - _validation = { - 'name_available': {'readonly': True}, - 'reason': {'readonly': True}, - } - - _attribute_map = { - 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, - 'reason': {'key': 'reason', 'type': 'AppNameUnavailabilityReason'}, - 'message': {'key': 'message', 'type': 'str'}, - } - - def __init__(self, *, message: str=None, **kwargs) -> None: - super(AppNameAvailabilityInfo, self).__init__(**kwargs) - self.name_available = None - self.reason = None - self.message = message diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_details.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_details.py index a4886654fbff..b7f72f1b01b8 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_details.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_details.py @@ -25,6 +25,8 @@ class ErrorDetails(Model): :vartype message: str :ivar target: The target of the particular error. :vartype target: str + :param details: A list of additional details about the error. + :type details: list[~azure.mgmt.iotcentral.models.ErrorResponseBody] """ _validation = { @@ -34,9 +36,10 @@ class ErrorDetails(Model): } _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'target': {'key': 'target', 'type': 'str'}, + 'code': {'key': 'error.code', 'type': 'str'}, + 'message': {'key': 'error.message', 'type': 'str'}, + 'target': {'key': 'error.target', 'type': 'str'}, + 'details': {'key': 'error.details', 'type': '[ErrorResponseBody]'}, } def __init__(self, **kwargs): @@ -44,6 +47,7 @@ def __init__(self, **kwargs): self.code = None self.message = None self.target = None + self.details = kwargs.get('details', None) class ErrorDetailsException(HttpOperationError): diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_details_py3.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_details_py3.py index c219c199294e..fadfc552be75 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_details_py3.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_details_py3.py @@ -25,6 +25,8 @@ class ErrorDetails(Model): :vartype message: str :ivar target: The target of the particular error. :vartype target: str + :param details: A list of additional details about the error. + :type details: list[~azure.mgmt.iotcentral.models.ErrorResponseBody] """ _validation = { @@ -34,16 +36,18 @@ class ErrorDetails(Model): } _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'target': {'key': 'target', 'type': 'str'}, + 'code': {'key': 'error.code', 'type': 'str'}, + 'message': {'key': 'error.message', 'type': 'str'}, + 'target': {'key': 'error.target', 'type': 'str'}, + 'details': {'key': 'error.details', 'type': '[ErrorResponseBody]'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, details=None, **kwargs) -> None: super(ErrorDetails, self).__init__(**kwargs) self.code = None self.message = None self.target = None + self.details = details class ErrorDetailsException(HttpOperationError): diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_response_body.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_response_body.py new file mode 100644 index 000000000000..2eb41a34cfe7 --- /dev/null +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_response_body.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorResponseBody(Model): + """Details of error response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The target of the particular error. + :vartype target: str + :param details: A list of additional details about the error. + :type details: list[~azure.mgmt.iotcentral.models.ErrorResponseBody] + """ + + _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'}, + 'details': {'key': 'details', 'type': '[ErrorResponseBody]'}, + } + + def __init__(self, **kwargs): + super(ErrorResponseBody, self).__init__(**kwargs) + self.code = None + self.message = None + self.target = None + self.details = kwargs.get('details', None) diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_response_body_py3.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_response_body_py3.py new file mode 100644 index 000000000000..1e7115c11cb7 --- /dev/null +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/error_response_body_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorResponseBody(Model): + """Details of error response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The target of the particular error. + :vartype target: str + :param details: A list of additional details about the error. + :type details: list[~azure.mgmt.iotcentral.models.ErrorResponseBody] + """ + + _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'}, + 'details': {'key': 'details', 'type': '[ErrorResponseBody]'}, + } + + def __init__(self, *, details=None, **kwargs) -> None: + super(ErrorResponseBody, self).__init__(**kwargs) + self.code = None + self.message = None + self.target = None + self.details = details diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/iot_central_client_enums.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/iot_central_client_enums.py index 91780df77e5f..8883b672464f 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/iot_central_client_enums.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/iot_central_client_enums.py @@ -16,9 +16,3 @@ class AppSku(str, Enum): f1 = "F1" s1 = "S1" - - -class AppNameUnavailabilityReason(str, Enum): - - invalid = "Invalid" - already_exists = "AlreadyExists" diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/operation_inputs.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/operation_inputs.py index 71bb28eb8639..e04c6fb8a4ad 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/operation_inputs.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/operation_inputs.py @@ -20,16 +20,21 @@ class OperationInputs(Model): :param name: Required. The name of the IoT Central application instance to check. :type name: str + :param type: The type of the IoT Central resource to query. Default value: + "IoTApps" . + :type type: str """ _validation = { - 'name': {'required': True}, + 'name': {'required': True, 'pattern': r'^[a-z0-9-]{1,63}$'}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, } def __init__(self, **kwargs): super(OperationInputs, self).__init__(**kwargs) self.name = kwargs.get('name', None) + self.type = kwargs.get('type', "IoTApps") diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/operation_inputs_py3.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/operation_inputs_py3.py index e99d4a561bc4..b5ac59194737 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/operation_inputs_py3.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/models/operation_inputs_py3.py @@ -20,16 +20,21 @@ class OperationInputs(Model): :param name: Required. The name of the IoT Central application instance to check. :type name: str + :param type: The type of the IoT Central resource to query. Default value: + "IoTApps" . + :type type: str """ _validation = { - 'name': {'required': True}, + 'name': {'required': True, 'pattern': r'^[a-z0-9-]{1,63}$'}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self, *, name: str, **kwargs) -> None: + def __init__(self, *, name: str, type: str="IoTApps", **kwargs) -> None: super(OperationInputs, self).__init__(**kwargs) self.name = name + self.type = type diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/operations/apps_operations.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/operations/apps_operations.py index 64fa9529ec62..72c8f74b58ad 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/operations/apps_operations.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/operations/apps_operations.py @@ -24,7 +24,7 @@ class AppsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The version of the API. Constant value: "2017-07-01-privatepreview". + :ivar api_version: The version of the API. Constant value: "2018-09-01". """ models = models @@ -34,7 +34,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2017-07-01-privatepreview" + self.api_version = "2018-09-01" self.config = config @@ -74,7 +74,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,8 +83,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -119,6 +119,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -131,9 +132,8 @@ def _create_or_update_initial( body_content = self._serialize.body(app, 'App') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: raise models.ErrorDetailsException(self._deserialize, response) @@ -226,6 +226,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -238,9 +239,8 @@ def _update_initial( body_content = self._serialize.body(app_patch, 'AppPatch') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ErrorDetailsException(self._deserialize, response) @@ -328,7 +328,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -337,8 +336,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorDetailsException(self._deserialize, response) @@ -426,7 +425,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -435,9 +434,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -494,7 +492,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -503,9 +501,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -524,24 +521,26 @@ def internal_paging(next_link=None, raw=False): list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/IoTApps'} def check_name_availability( - self, name, custom_headers=None, raw=False, **operation_config): + self, name, type="IoTApps", custom_headers=None, raw=False, **operation_config): """Check if an IoT Central application name is available. :param name: The name of the IoT Central application instance to check. :type name: str + :param type: The type of the IoT Central resource to query. + :type type: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: AppNameAvailabilityInfo or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.iotcentral.models.AppNameAvailabilityInfo or + :return: AppAvailabilityInfo or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.iotcentral.models.AppAvailabilityInfo or ~msrest.pipeline.ClientRawResponse :raises: :class:`ErrorDetailsException` """ - operation_inputs = models.OperationInputs(name=name) + operation_inputs = models.OperationInputs(name=name, type=type) # Construct URL url = self.check_name_availability.metadata['url'] @@ -556,6 +555,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -568,9 +568,8 @@ def check_name_availability( body_content = self._serialize.body(operation_inputs, 'OperationInputs') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -578,7 +577,7 @@ def check_name_availability( deserialized = None if response.status_code == 200: - deserialized = self._deserialize('AppNameAvailabilityInfo', response) + deserialized = self._deserialize('AppAvailabilityInfo', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -586,3 +585,69 @@ def check_name_availability( return deserialized check_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.IoTCentral/checkNameAvailability'} + + def check_subdomain_availability( + self, name, type="IoTApps", custom_headers=None, raw=False, **operation_config): + """Check if an IoT Central application subdomain is available. + + :param name: The name of the IoT Central application instance to + check. + :type name: str + :param type: The type of the IoT Central resource to query. + :type type: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AppAvailabilityInfo or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.iotcentral.models.AppAvailabilityInfo or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorDetailsException` + """ + operation_inputs = models.OperationInputs(name=name, type=type) + + # Construct URL + url = self.check_subdomain_availability.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(operation_inputs, 'OperationInputs') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorDetailsException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AppAvailabilityInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_subdomain_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.IoTCentral/checkSubdomainAvailability'} diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/operations/operations.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/operations/operations.py index b53cd27c7205..27e672e4d79b 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/operations/operations.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/operations/operations.py @@ -22,7 +22,7 @@ class Operations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The version of the API. Constant value: "2017-07-01-privatepreview". + :ivar api_version: The version of the API. Constant value: "2018-09-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2017-07-01-privatepreview" + self.api_version = "2018-09-01" self.config = config @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) diff --git a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/version.py b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/version.py index e0ec669828cb..a39916c162ce 100644 --- a/azure-mgmt-iotcentral/azure/mgmt/iotcentral/version.py +++ b/azure-mgmt-iotcentral/azure/mgmt/iotcentral/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.1.0" +VERSION = "1.0.0" diff --git a/azure-mgmt-iotcentral/azure_bdist_wheel.py b/azure-mgmt-iotcentral/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-iotcentral/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-iotcentral/setup.cfg b/azure-mgmt-iotcentral/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-iotcentral/setup.cfg +++ b/azure-mgmt-iotcentral/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-iotcentral/setup.py b/azure-mgmt-iotcentral/setup.py index 7bd8ef6247f1..632e3aab0ccb 100644 --- a/azure-mgmt-iotcentral/setup.py +++ b/azure-mgmt-iotcentral/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-iotcentral" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-iotcentral/tests/recordings/test_mgmt_iotcentral.test_iotcentral.yaml b/azure-mgmt-iotcentral/tests/recordings/test_mgmt_iotcentral.test_iotcentral.yaml index 7e78ae89f6e0..a2c0505e6e92 100644 --- a/azure-mgmt-iotcentral/tests/recordings/test_mgmt_iotcentral.test_iotcentral.yaml +++ b/azure-mgmt-iotcentral/tests/recordings/test_mgmt_iotcentral.test_iotcentral.yaml @@ -8,10 +8,10 @@ interactions: Content-Length: ['23'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/2.7.14 (Windows-10-10.0.17134) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-iotcentral/2017-07-01-privatepreview Azure-SDK-For-Python] + msrest_azure/0.4.34 azure-mgmt-iotcentral/2018-09-01 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/checkNameAvailability?api-version=2017-07-01-privatepreview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/checkNameAvailability?api-version=2018-09-01 response: body: {string: !!python/unicode '{"nameAvailable":true}'} headers: @@ -19,17 +19,17 @@ interactions: post-check=0, pre-check=0'] content-length: ['22'] content-type: [application/json; charset=utf-8] - date: ['Tue, 17 Jul 2018 04:55:38 GMT'] + date: ['Tue, 07 Aug 2018 22:32:19 GMT'] etag: [W/"16-4/x+wI91pK3bZiWtoOg+Zr/n2HE"] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-iot-cluster: [iotcprodwestus01] - x-iot-version: ['20180713.4'] + x-iot-version: ['20180802.3'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] - x-msedge-ref: ['Ref A: 4B41CCBE8946485186EFE5A15767BC04 Ref B: CO1EDGE0209 Ref - C: 2018-07-17T04:55:39Z'] + x-msedge-ref: ['Ref A: AB72A9E754DF4C12A6495241C9D8E9AA Ref B: CO1EDGE0309 Ref + C: 2018-08-07T22:32:19Z'] x-powered-by: [Express] status: {code: 200, message: OK} - request: @@ -42,26 +42,26 @@ interactions: Content-Length: ['119'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/2.7.14 (Windows-10-10.0.17134) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-iotcentral/2017-07-01-privatepreview Azure-SDK-For-Python] + msrest_azure/0.4.34 azure-mgmt-iotcentral/2018-09-01 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb?api-version=2017-07-01-privatepreview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb?api-version=2018-09-01 response: - body: {string: !!python/unicode '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"6e6180ee-848d-4db2-b799-6485d41e3cc3","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-07-17T04:55:41.692Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"ad0546d3-0000-0000-0000-5b4d76cd0000\""}'} + body: {string: !!python/unicode '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"c0758e98-633e-4cb2-95ba-4703af94befc","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-08-07T22:32:21.265Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"3700b296-0000-0000-0000-5b6a1df50000\""}'} headers: cache-control: ['no-store, must-revalidate, no-cache, max-stale=0, private, post-check=0, pre-check=0'] content-length: ['535'] content-type: [application/json; charset=utf-8] - date: ['Tue, 17 Jul 2018 04:55:41 GMT'] - etag: ['"ad0546d3-0000-0000-0000-5b4d76cd0000"'] + date: ['Tue, 07 Aug 2018 22:32:20 GMT'] + etag: ['"3700b296-0000-0000-0000-5b6a1df50000"'] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] x-iot-cluster: [iotcprodwestus01] - x-iot-version: ['20180713.4'] + x-iot-version: ['20180802.3'] x-ms-ratelimit-remaining-subscription-writes: ['1199'] - x-msedge-ref: ['Ref A: 97E7C9A38B7743FF991800D9CC52DA8B Ref B: CO1EDGE0112 Ref - C: 2018-07-17T04:55:41Z'] + x-msedge-ref: ['Ref A: 8E12F790B3AC4FC4BBB4567736AB8513 Ref B: CO1EDGE0414 Ref + C: 2018-08-07T22:32:21Z'] x-powered-by: [Express] status: {code: 201, message: Created} - request: @@ -71,26 +71,26 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] User-Agent: [python/2.7.14 (Windows-10-10.0.17134) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-iotcentral/2017-07-01-privatepreview Azure-SDK-For-Python] + msrest_azure/0.4.34 azure-mgmt-iotcentral/2018-09-01 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb?api-version=2017-07-01-privatepreview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb?api-version=2018-09-01 response: - body: {string: !!python/unicode '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"6e6180ee-848d-4db2-b799-6485d41e3cc3","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-07-17T04:55:41.692Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"ad0546d3-0000-0000-0000-5b4d76cd0000\""}'} + body: {string: !!python/unicode '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"c0758e98-633e-4cb2-95ba-4703af94befc","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-08-07T22:32:21.265Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"3700b296-0000-0000-0000-5b6a1df50000\""}'} headers: cache-control: ['no-store, must-revalidate, no-cache, max-stale=0, private, post-check=0, pre-check=0'] content-length: ['535'] content-type: [application/json; charset=utf-8] - date: ['Tue, 17 Jul 2018 04:56:13 GMT'] - etag: [W/"ad0546d3-0000-0000-0000-5b4d76cd0000"] + date: ['Tue, 07 Aug 2018 22:32:51 GMT'] + etag: [W/"3700b296-0000-0000-0000-5b6a1df50000"] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-iot-cluster: [iotcprodwestus01] - x-iot-version: ['20180713.4'] - x-msedge-ref: ['Ref A: 701D22B5B1784B2BA9DF3A2127653BF6 Ref B: CO1EDGE0517 Ref - C: 2018-07-17T04:56:13Z'] + x-iot-version: ['20180802.3'] + x-msedge-ref: ['Ref A: 59FE983BB8224351A7FFCCA236392473 Ref B: CO1EDGE0316 Ref + C: 2018-08-07T22:32:52Z'] x-powered-by: [Express] status: {code: 200, message: OK} - request: @@ -101,27 +101,27 @@ interactions: Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/2.7.14 (Windows-10-10.0.17134) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-iotcentral/2017-07-01-privatepreview Azure-SDK-For-Python] + msrest_azure/0.4.34 azure-mgmt-iotcentral/2018-09-01 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb?api-version=2017-07-01-privatepreview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb?api-version=2018-09-01 response: - body: {string: !!python/unicode '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"6e6180ee-848d-4db2-b799-6485d41e3cc3","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-07-17T04:55:41.692Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"ad0546d3-0000-0000-0000-5b4d76cd0000\""}'} + body: {string: !!python/unicode '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"c0758e98-633e-4cb2-95ba-4703af94befc","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-08-07T22:32:21.265Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"3700b296-0000-0000-0000-5b6a1df50000\""}'} headers: cache-control: ['no-store, must-revalidate, no-cache, max-stale=0, private, post-check=0, pre-check=0'] content-length: ['535'] content-type: [application/json; charset=utf-8] - date: ['Tue, 17 Jul 2018 04:56:13 GMT'] - etag: [W/"ad0546d3-0000-0000-0000-5b4d76cd0000"] + date: ['Tue, 07 Aug 2018 22:32:52 GMT'] + etag: [W/"3700b296-0000-0000-0000-5b6a1df50000"] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-iot-cluster: [iotcprodwestus01] - x-iot-version: ['20180713.4'] - x-msedge-ref: ['Ref A: 4BB978D7AA7140CAB2ECC96A3AAE001B Ref B: CO1EDGE0322 Ref - C: 2018-07-17T04:56:13Z'] + x-iot-version: ['20180802.3'] + x-msedge-ref: ['Ref A: 97AB6F00987644DBBC363BD79CD9E64D Ref B: CO1EDGE0120 Ref + C: 2018-08-07T22:32:53Z'] x-powered-by: [Express] status: {code: 200, message: OK} - request: @@ -132,27 +132,27 @@ interactions: Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/2.7.14 (Windows-10-10.0.17134) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-iotcentral/2017-07-01-privatepreview Azure-SDK-For-Python] + msrest_azure/0.4.34 azure-mgmt-iotcentral/2018-09-01 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps?api-version=2017-07-01-privatepreview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps?api-version=2018-09-01 response: - body: {string: !!python/unicode '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"6e6180ee-848d-4db2-b799-6485d41e3cc3","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-07-17T04:55:41.692Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"ad0546d3-0000-0000-0000-5b4d76cd0000\""}],"nextLink":null}'} + body: {string: !!python/unicode '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"c0758e98-633e-4cb2-95ba-4703af94befc","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-08-07T22:32:21.265Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"3700b296-0000-0000-0000-5b6a1df50000\""}],"nextLink":null}'} headers: cache-control: ['no-store, must-revalidate, no-cache, max-stale=0, private, post-check=0, pre-check=0'] content-length: ['563'] content-type: [application/json; charset=utf-8] - date: ['Tue, 17 Jul 2018 04:56:14 GMT'] - etag: [W/"233-hXriBvXlRcSweK2V6YmT80XXHsQ"] + date: ['Tue, 07 Aug 2018 22:32:53 GMT'] + etag: [W/"233-BnIpv1RHNNAAoc1FKzm/EIHckac"] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-iot-cluster: [iotcprodwestus01] - x-iot-version: ['20180713.4'] - x-msedge-ref: ['Ref A: C28C2311346A4C4DACCACEA4E0CF1FDD Ref B: CO1EDGE0413 Ref - C: 2018-07-17T04:56:14Z'] + x-iot-version: ['20180802.3'] + x-msedge-ref: ['Ref A: BA6D248D15B144F2869D380A777AA8EF Ref B: CO1EDGE0111 Ref + C: 2018-08-07T22:32:53Z'] x-powered-by: [Express] status: {code: 200, message: OK} - request: @@ -163,27 +163,27 @@ interactions: Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/2.7.14 (Windows-10-10.0.17134) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-iotcentral/2017-07-01-privatepreview Azure-SDK-For-Python] + msrest_azure/0.4.34 azure-mgmt-iotcentral/2018-09-01 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/IoTApps?api-version=2017-07-01-privatepreview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/IoTApps?api-version=2018-09-01 response: - body: {string: !!python/unicode '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/IOTC/providers/Microsoft.IoTCentral/IoTApps/shakpaid01-91c6e47b","name":"shakpaid01-91c6e47b","type":"Microsoft.IoTCentral/IoTApps","location":"eastus","tags":{},"properties":{"applicationId":"34480abf-808b-4b60-8ca9-c29af2d59762","state":"created","displayName":"shakpaid01","tenant":"72f988bf-86f1-41af-91ab-2d7cd011db47","subdomain":"shakpaid01","createdDate":"2018-07-12T00:32:24.408Z","template":"iotc-demo@1.0.0"},"sku":{"name":"S1"},"etag":"\"59029e24-0000-0000-0000-5b46a1980000\""},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/juste/providers/Microsoft.IoTCentral/IoTApps/juste-test","name":"juste-test","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"1ad2651a-9c5d-4925-b3f3-f1335917ff86","state":"created","displayName":"juste-test","subdomain":"juste-test","createdDate":"2018-07-16T18:42:18.314Z","template":"iotc-default@1.0.0"},"sku":{"name":"F1"},"etag":"\"a8057a79-0000-0000-0000-5b4ce70a0000\""},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"6e6180ee-848d-4db2-b799-6485d41e3cc3","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-07-17T04:55:41.692Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"ad0546d3-0000-0000-0000-5b4d76cd0000\""}],"nextLink":null}'} + body: {string: !!python/unicode '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/IOTC/providers/Microsoft.IoTCentral/IoTApps/shakpaid01-91c6e47b","name":"shakpaid01-91c6e47b","type":"Microsoft.IoTCentral/IoTApps","location":"eastus","tags":{},"properties":{"applicationId":"34480abf-808b-4b60-8ca9-c29af2d59762","state":"created","displayName":"shakpaid01","tenant":"72f988bf-86f1-41af-91ab-2d7cd011db47","subdomain":"shakpaid01","createdDate":"2018-07-12T00:32:24.408Z","template":"iotc-demo@1.0.0"},"sku":{"name":"S1"},"etag":"\"59029e24-0000-0000-0000-5b46a1980000\""},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb","name":"iot14f90eeb","type":"Microsoft.IoTCentral/IoTApps","location":"westus","properties":{"applicationId":"c0758e98-633e-4cb2-95ba-4703af94befc","state":"created","displayName":"iot14f90eeb","subdomain":"iot14f90eeb","createdDate":"2018-08-07T22:32:21.265Z","template":"iotc-default@1.0.0"},"sku":{"name":"S1"},"etag":"\"3700b296-0000-0000-0000-5b6a1df50000\""}],"nextLink":null}'} headers: cache-control: ['no-store, must-revalidate, no-cache, max-stale=0, private, post-check=0, pre-check=0'] - content-length: ['1621'] + content-length: ['1128'] content-type: [application/json; charset=utf-8] - date: ['Tue, 17 Jul 2018 04:56:15 GMT'] - etag: [W/"655-8HYdqOzkhWlr0zM37lPGN0ZyJrs"] + date: ['Tue, 07 Aug 2018 22:32:54 GMT'] + etag: [W/"468-+wQuWNZkr1CpklVAEEdolDEo79Y"] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: ['Accept-Encoding,Accept-Encoding'] x-content-type-options: [nosniff] x-iot-cluster: [iotcprodwestus01] - x-iot-version: ['20180713.4'] - x-msedge-ref: ['Ref A: CC7E00D41601432EB228F231B6C18261 Ref B: CO1EDGE0121 Ref - C: 2018-07-17T04:56:15Z'] + x-iot-version: ['20180802.3'] + x-msedge-ref: ['Ref A: 8D4D85CDB7F84A0DBD0B51996B3D4510 Ref B: CO1EDGE0210 Ref + C: 2018-08-07T22:32:54Z'] x-powered-by: [Express] status: {code: 200, message: OK} - request: @@ -195,24 +195,24 @@ interactions: Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/2.7.14 (Windows-10-10.0.17134) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 azure-mgmt-iotcentral/2017-07-01-privatepreview Azure-SDK-For-Python] + msrest_azure/0.4.34 azure-mgmt-iotcentral/2018-09-01 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb?api-version=2017-07-01-privatepreview + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_iotcentral_test_iotcentral14f90eeb/providers/Microsoft.IoTCentral/IoTApps/iot14f90eeb?api-version=2018-09-01 response: body: {string: !!python/unicode ''} headers: cache-control: ['no-store, must-revalidate, no-cache, max-stale=0, private, post-check=0, pre-check=0'] content-length: ['0'] - date: ['Tue, 17 Jul 2018 04:56:17 GMT'] + date: ['Tue, 07 Aug 2018 22:32:57 GMT'] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] x-iot-cluster: [iotcprodwestus01] - x-iot-version: ['20180713.4'] + x-iot-version: ['20180802.3'] x-ms-ratelimit-remaining-subscription-deletes: ['14999'] - x-msedge-ref: ['Ref A: C1613914BC874622AE0246A141AED4C9 Ref B: CO1EDGE0311 Ref - C: 2018-07-17T04:56:16Z'] + x-msedge-ref: ['Ref A: F018916BC5304106A2C999E33D4D16F0 Ref B: CO1EDGE0210 Ref + C: 2018-08-07T22:32:55Z'] x-powered-by: [Express] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-iothub/HISTORY.rst b/azure-mgmt-iothub/HISTORY.rst index fae2e7497c24..a6f71dcaa2a4 100644 --- a/azure-mgmt-iothub/HISTORY.rst +++ b/azure-mgmt-iothub/HISTORY.rst @@ -3,6 +3,19 @@ Release History =============== +0.6.0 (2018-08-27) +++++++++++++++++++ + +**Features** + +- Model CertificatePropertiesWithNonce has a new parameter certificate +- Model CertificateProperties has a new parameter certificate +- Added operation IotHubResourceOperations.test_all_routes +- Added operation IotHubResourceOperations.test_route +- Added operation IotHubResourceOperations.get_endpoint_health +- Added operation group ResourceProviderCommonOperations +- Client class can be used as a context manager to keep the underlying HTTP session open for performance + 0.5.0 (2018-04-17) ++++++++++++++++++ @@ -24,7 +37,7 @@ This version uses a next-generation code generator that *might* introduce breaki - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same. - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used. - - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, + - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`. - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`, the response of the initial call will be returned without polling. diff --git a/azure-mgmt-iothub/MANIFEST.in b/azure-mgmt-iothub/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-iothub/MANIFEST.in +++ b/azure-mgmt-iothub/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-iothub/README.rst b/azure-mgmt-iothub/README.rst index bcf1a922c072..1b800cdaf83d 100644 --- a/azure-mgmt-iothub/README.rst +++ b/azure-mgmt-iothub/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure IoTHub Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-iothub/azure/__init__.py b/azure-mgmt-iothub/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-iothub/azure/__init__.py +++ b/azure-mgmt-iothub/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-iothub/azure/mgmt/__init__.py b/azure-mgmt-iothub/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-iothub/azure/mgmt/__init__.py +++ b/azure-mgmt-iothub/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/iot_hub_client.py b/azure-mgmt-iothub/azure/mgmt/iothub/iot_hub_client.py index b6a87665f44f..5875b7ed560f 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/iot_hub_client.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/iot_hub_client.py @@ -9,12 +9,13 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.service_client import ServiceClient +from msrest.service_client import SDKClient from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION from .operations.operations import Operations from .operations.iot_hub_resource_operations import IotHubResourceOperations +from .operations.resource_provider_common_operations import ResourceProviderCommonOperations from .operations.certificates_operations import CertificatesOperations from . import models @@ -51,7 +52,7 @@ def __init__( self.subscription_id = subscription_id -class IotHubClient(object): +class IotHubClient(SDKClient): """Use this API to manage the IoT hubs in your Azure subscription. :ivar config: Configuration for client. @@ -61,6 +62,8 @@ class IotHubClient(object): :vartype operations: azure.mgmt.iothub.operations.Operations :ivar iot_hub_resource: IotHubResource operations :vartype iot_hub_resource: azure.mgmt.iothub.operations.IotHubResourceOperations + :ivar resource_provider_common: ResourceProviderCommon operations + :vartype resource_provider_common: azure.mgmt.iothub.operations.ResourceProviderCommonOperations :ivar certificates: Certificates operations :vartype certificates: azure.mgmt.iothub.operations.CertificatesOperations @@ -76,7 +79,7 @@ def __init__( self, credentials, subscription_id, base_url=None): self.config = IotHubClientConfiguration(credentials, subscription_id, base_url) - self._client = ServiceClient(self.config.credentials, self.config) + super(IotHubClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} self.api_version = '2018-04-01' @@ -87,5 +90,7 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.iot_hub_resource = IotHubResourceOperations( self._client, self.config, self._serialize, self._deserialize) + self.resource_provider_common = ResourceProviderCommonOperations( + self._client, self.config, self._serialize, self._deserialize) self.certificates = CertificatesOperations( self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/__init__.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/__init__.py index 125031202c9f..c7db4806796e 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/__init__.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/__init__.py @@ -11,10 +11,10 @@ try: from .certificate_verification_description_py3 import CertificateVerificationDescription - from .certificate_body_description_py3 import CertificateBodyDescription from .certificate_properties_py3 import CertificateProperties from .certificate_description_py3 import CertificateDescription from .certificate_list_description_py3 import CertificateListDescription + from .certificate_body_description_py3 import CertificateBodyDescription from .certificate_properties_with_nonce_py3 import CertificatePropertiesWithNonce from .certificate_with_nonce_description_py3 import CertificateWithNonceDescription from .shared_access_signature_authorization_rule_py3 import SharedAccessSignatureAuthorizationRule @@ -41,6 +41,7 @@ from .operation_py3 import Operation from .error_details_py3 import ErrorDetails, ErrorDetailsException from .iot_hub_quota_metric_info_py3 import IotHubQuotaMetricInfo + from .endpoint_health_data_py3 import EndpointHealthData from .registry_statistics_py3 import RegistryStatistics from .job_response_py3 import JobResponse from .iot_hub_capacity_py3 import IotHubCapacity @@ -49,14 +50,27 @@ from .event_hub_consumer_group_info_py3 import EventHubConsumerGroupInfo from .operation_inputs_py3 import OperationInputs from .iot_hub_name_availability_info_py3 import IotHubNameAvailabilityInfo + from .name_py3 import Name + from .user_subscription_quota_py3 import UserSubscriptionQuota + from .user_subscription_quota_list_result_py3 import UserSubscriptionQuotaListResult + from .routing_message_py3 import RoutingMessage + from .test_all_routes_input_py3 import TestAllRoutesInput + from .matched_route_py3 import MatchedRoute + from .test_all_routes_result_py3 import TestAllRoutesResult + from .test_route_input_py3 import TestRouteInput + from .route_error_position_py3 import RouteErrorPosition + from .route_error_range_py3 import RouteErrorRange + from .route_compilation_error_py3 import RouteCompilationError + from .test_route_result_details_py3 import TestRouteResultDetails + from .test_route_result_py3 import TestRouteResult from .export_devices_request_py3 import ExportDevicesRequest from .import_devices_request_py3 import ImportDevicesRequest except (SyntaxError, ImportError): from .certificate_verification_description import CertificateVerificationDescription - from .certificate_body_description import CertificateBodyDescription from .certificate_properties import CertificateProperties from .certificate_description import CertificateDescription from .certificate_list_description import CertificateListDescription + from .certificate_body_description import CertificateBodyDescription from .certificate_properties_with_nonce import CertificatePropertiesWithNonce from .certificate_with_nonce_description import CertificateWithNonceDescription from .shared_access_signature_authorization_rule import SharedAccessSignatureAuthorizationRule @@ -83,6 +97,7 @@ from .operation import Operation from .error_details import ErrorDetails, ErrorDetailsException from .iot_hub_quota_metric_info import IotHubQuotaMetricInfo + from .endpoint_health_data import EndpointHealthData from .registry_statistics import RegistryStatistics from .job_response import JobResponse from .iot_hub_capacity import IotHubCapacity @@ -91,6 +106,19 @@ from .event_hub_consumer_group_info import EventHubConsumerGroupInfo from .operation_inputs import OperationInputs from .iot_hub_name_availability_info import IotHubNameAvailabilityInfo + from .name import Name + from .user_subscription_quota import UserSubscriptionQuota + from .user_subscription_quota_list_result import UserSubscriptionQuotaListResult + from .routing_message import RoutingMessage + from .test_all_routes_input import TestAllRoutesInput + from .matched_route import MatchedRoute + from .test_all_routes_result import TestAllRoutesResult + from .test_route_input import TestRouteInput + from .route_error_position import RouteErrorPosition + from .route_error_range import RouteErrorRange + from .route_compilation_error import RouteCompilationError + from .test_route_result_details import TestRouteResultDetails + from .test_route_result import TestRouteResult from .export_devices_request import ExportDevicesRequest from .import_devices_request import ImportDevicesRequest from .operation_paged import OperationPaged @@ -99,6 +127,7 @@ from .event_hub_consumer_group_info_paged import EventHubConsumerGroupInfoPaged from .job_response_paged import JobResponsePaged from .iot_hub_quota_metric_info_paged import IotHubQuotaMetricInfoPaged +from .endpoint_health_data_paged import EndpointHealthDataPaged from .shared_access_signature_authorization_rule_paged import SharedAccessSignatureAuthorizationRulePaged from .iot_hub_client_enums import ( AccessRights, @@ -108,18 +137,21 @@ Capabilities, IotHubSku, IotHubSkuTier, + EndpointHealthStatus, JobType, JobStatus, IotHubScaleType, IotHubNameUnavailabilityReason, + TestResultStatus, + RouteErrorSeverity, ) __all__ = [ 'CertificateVerificationDescription', - 'CertificateBodyDescription', 'CertificateProperties', 'CertificateDescription', 'CertificateListDescription', + 'CertificateBodyDescription', 'CertificatePropertiesWithNonce', 'CertificateWithNonceDescription', 'SharedAccessSignatureAuthorizationRule', @@ -146,6 +178,7 @@ 'Operation', 'ErrorDetails', 'ErrorDetailsException', 'IotHubQuotaMetricInfo', + 'EndpointHealthData', 'RegistryStatistics', 'JobResponse', 'IotHubCapacity', @@ -154,6 +187,19 @@ 'EventHubConsumerGroupInfo', 'OperationInputs', 'IotHubNameAvailabilityInfo', + 'Name', + 'UserSubscriptionQuota', + 'UserSubscriptionQuotaListResult', + 'RoutingMessage', + 'TestAllRoutesInput', + 'MatchedRoute', + 'TestAllRoutesResult', + 'TestRouteInput', + 'RouteErrorPosition', + 'RouteErrorRange', + 'RouteCompilationError', + 'TestRouteResultDetails', + 'TestRouteResult', 'ExportDevicesRequest', 'ImportDevicesRequest', 'OperationPaged', @@ -162,6 +208,7 @@ 'EventHubConsumerGroupInfoPaged', 'JobResponsePaged', 'IotHubQuotaMetricInfoPaged', + 'EndpointHealthDataPaged', 'SharedAccessSignatureAuthorizationRulePaged', 'AccessRights', 'IpFilterActionType', @@ -170,8 +217,11 @@ 'Capabilities', 'IotHubSku', 'IotHubSkuTier', + 'EndpointHealthStatus', 'JobType', 'JobStatus', 'IotHubScaleType', 'IotHubNameUnavailabilityReason', + 'TestResultStatus', + 'RouteErrorSeverity', ] diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties.py index d91afb9c0adb..eaf2548f0f76 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties.py @@ -30,6 +30,8 @@ class CertificateProperties(Model): :vartype created: datetime :ivar updated: The certificate's last update date and time. :vartype updated: datetime + :param certificate: The certificate content + :type certificate: str """ _validation = { @@ -48,6 +50,7 @@ class CertificateProperties(Model): 'is_verified': {'key': 'isVerified', 'type': 'bool'}, 'created': {'key': 'created', 'type': 'rfc-1123'}, 'updated': {'key': 'updated', 'type': 'rfc-1123'}, + 'certificate': {'key': 'certificate', 'type': 'str'}, } def __init__(self, **kwargs): @@ -58,3 +61,4 @@ def __init__(self, **kwargs): self.is_verified = None self.created = None self.updated = None + self.certificate = kwargs.get('certificate', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_py3.py index 334b0791a801..d9ac812152ce 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_py3.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_py3.py @@ -30,6 +30,8 @@ class CertificateProperties(Model): :vartype created: datetime :ivar updated: The certificate's last update date and time. :vartype updated: datetime + :param certificate: The certificate content + :type certificate: str """ _validation = { @@ -48,9 +50,10 @@ class CertificateProperties(Model): 'is_verified': {'key': 'isVerified', 'type': 'bool'}, 'created': {'key': 'created', 'type': 'rfc-1123'}, 'updated': {'key': 'updated', 'type': 'rfc-1123'}, + 'certificate': {'key': 'certificate', 'type': 'str'}, } - def __init__(self, **kwargs) -> None: + def __init__(self, *, certificate: str=None, **kwargs) -> None: super(CertificateProperties, self).__init__(**kwargs) self.subject = None self.expiry = None @@ -58,3 +61,4 @@ def __init__(self, **kwargs) -> None: self.is_verified = None self.created = None self.updated = None + self.certificate = certificate diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_with_nonce.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_with_nonce.py index 31d81c0e18b3..b5c2e7eb3a5f 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_with_nonce.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_with_nonce.py @@ -34,6 +34,8 @@ class CertificatePropertiesWithNonce(Model): :ivar verification_code: The certificate's verification code that will be used for proof of possession. :vartype verification_code: str + :ivar certificate: The certificate content + :vartype certificate: str """ _validation = { @@ -44,6 +46,7 @@ class CertificatePropertiesWithNonce(Model): 'created': {'readonly': True}, 'updated': {'readonly': True}, 'verification_code': {'readonly': True}, + 'certificate': {'readonly': True}, } _attribute_map = { @@ -54,6 +57,7 @@ class CertificatePropertiesWithNonce(Model): 'created': {'key': 'created', 'type': 'rfc-1123'}, 'updated': {'key': 'updated', 'type': 'rfc-1123'}, 'verification_code': {'key': 'verificationCode', 'type': 'str'}, + 'certificate': {'key': 'certificate', 'type': 'str'}, } def __init__(self, **kwargs): @@ -65,3 +69,4 @@ def __init__(self, **kwargs): self.created = None self.updated = None self.verification_code = None + self.certificate = None diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_with_nonce_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_with_nonce_py3.py index 384b1533b1fd..019bbed44de5 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_with_nonce_py3.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/certificate_properties_with_nonce_py3.py @@ -34,6 +34,8 @@ class CertificatePropertiesWithNonce(Model): :ivar verification_code: The certificate's verification code that will be used for proof of possession. :vartype verification_code: str + :ivar certificate: The certificate content + :vartype certificate: str """ _validation = { @@ -44,6 +46,7 @@ class CertificatePropertiesWithNonce(Model): 'created': {'readonly': True}, 'updated': {'readonly': True}, 'verification_code': {'readonly': True}, + 'certificate': {'readonly': True}, } _attribute_map = { @@ -54,6 +57,7 @@ class CertificatePropertiesWithNonce(Model): 'created': {'key': 'created', 'type': 'rfc-1123'}, 'updated': {'key': 'updated', 'type': 'rfc-1123'}, 'verification_code': {'key': 'verificationCode', 'type': 'str'}, + 'certificate': {'key': 'certificate', 'type': 'str'}, } def __init__(self, **kwargs) -> None: @@ -65,3 +69,4 @@ def __init__(self, **kwargs) -> None: self.created = None self.updated = None self.verification_code = None + self.certificate = None diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data.py new file mode 100644 index 000000000000..eccd8e602362 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EndpointHealthData(Model): + """The health data for an endpoint. + + :param endpoint_id: Id of the endpoint + :type endpoint_id: str + :param health_status: Health status. Possible values include: 'unknown', + 'healthy', 'unhealthy', 'dead' + :type health_status: str or ~azure.mgmt.iothub.models.EndpointHealthStatus + """ + + _attribute_map = { + 'endpoint_id': {'key': 'endpointId', 'type': 'str'}, + 'health_status': {'key': 'healthStatus', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EndpointHealthData, self).__init__(**kwargs) + self.endpoint_id = kwargs.get('endpoint_id', None) + self.health_status = kwargs.get('health_status', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data_paged.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data_paged.py new file mode 100644 index 000000000000..7f46f9c3517d --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class EndpointHealthDataPaged(Paged): + """ + A paging container for iterating over a list of :class:`EndpointHealthData ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[EndpointHealthData]'} + } + + def __init__(self, *args, **kwargs): + + super(EndpointHealthDataPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data_py3.py new file mode 100644 index 000000000000..40432163cf1a --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/endpoint_health_data_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EndpointHealthData(Model): + """The health data for an endpoint. + + :param endpoint_id: Id of the endpoint + :type endpoint_id: str + :param health_status: Health status. Possible values include: 'unknown', + 'healthy', 'unhealthy', 'dead' + :type health_status: str or ~azure.mgmt.iothub.models.EndpointHealthStatus + """ + + _attribute_map = { + 'endpoint_id': {'key': 'endpointId', 'type': 'str'}, + 'health_status': {'key': 'healthStatus', 'type': 'str'}, + } + + def __init__(self, *, endpoint_id: str=None, health_status=None, **kwargs) -> None: + super(EndpointHealthData, self).__init__(**kwargs) + self.endpoint_id = endpoint_id + self.health_status = health_status diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_client_enums.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_client_enums.py index 66ebf1fc7592..8540e106c59b 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_client_enums.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_client_enums.py @@ -39,6 +39,7 @@ class IpFilterActionType(str, Enum): class RoutingSource(str, Enum): + invalid = "Invalid" device_messages = "DeviceMessages" twin_change_events = "TwinChangeEvents" device_lifecycle_events = "DeviceLifecycleEvents" @@ -77,6 +78,14 @@ class IotHubSkuTier(str, Enum): basic = "Basic" +class EndpointHealthStatus(str, Enum): + + unknown = "unknown" + healthy = "healthy" + unhealthy = "unhealthy" + dead = "dead" + + class JobType(str, Enum): unknown = "unknown" @@ -112,3 +121,16 @@ class IotHubNameUnavailabilityReason(str, Enum): invalid = "Invalid" already_exists = "AlreadyExists" + + +class TestResultStatus(str, Enum): + + undefined = "undefined" + false = "false" + true = "true" + + +class RouteErrorSeverity(str, Enum): + + error = "error" + warning = "warning" diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_description.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_description.py index aaac4a514926..ce2fa05c9870 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_description.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_description.py @@ -34,9 +34,9 @@ class IotHubDescription(Resource): response body, it must also be provided as a header per the normal ETag convention. :type etag: str - :param properties: + :param properties: IotHub properties :type properties: ~azure.mgmt.iothub.models.IotHubProperties - :param sku: Required. + :param sku: Required. IotHub SKU info :type sku: ~azure.mgmt.iothub.models.IotHubSkuInfo """ diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_description_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_description_py3.py index 84edd6c8d3bc..74b29768460e 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_description_py3.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_description_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .resource import Resource +from .resource_py3 import Resource class IotHubDescription(Resource): @@ -34,9 +34,9 @@ class IotHubDescription(Resource): response body, it must also be provided as a header per the normal ETag convention. :type etag: str - :param properties: + :param properties: IotHub properties :type properties: ~azure.mgmt.iothub.models.IotHubProperties - :param sku: Required. + :param sku: Required. IotHub SKU info :type sku: ~azure.mgmt.iothub.models.IotHubSkuInfo """ diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_sku_description.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_sku_description.py index 0837ddca79eb..b21fec3001d0 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_sku_description.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_sku_description.py @@ -24,7 +24,7 @@ class IotHubSkuDescription(Model): :vartype resource_type: str :param sku: Required. The type of the resource. :type sku: ~azure.mgmt.iothub.models.IotHubSkuInfo - :param capacity: Required. + :param capacity: Required. IotHub capacity :type capacity: ~azure.mgmt.iothub.models.IotHubCapacity """ diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_sku_description_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_sku_description_py3.py index e2cf73c436cb..7aa551a81b79 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_sku_description_py3.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/iot_hub_sku_description_py3.py @@ -24,7 +24,7 @@ class IotHubSkuDescription(Model): :vartype resource_type: str :param sku: Required. The type of the resource. :type sku: ~azure.mgmt.iothub.models.IotHubSkuInfo - :param capacity: Required. + :param capacity: Required. IotHub capacity :type capacity: ~azure.mgmt.iothub.models.IotHubCapacity """ diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/matched_route.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/matched_route.py new file mode 100644 index 000000000000..c0734abfdece --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/matched_route.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MatchedRoute(Model): + """Routes that matched. + + :param properties: Properties of routes that matched + :type properties: ~azure.mgmt.iothub.models.RouteProperties + """ + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'RouteProperties'}, + } + + def __init__(self, **kwargs): + super(MatchedRoute, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/matched_route_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/matched_route_py3.py new file mode 100644 index 000000000000..eecd24fd49b7 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/matched_route_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MatchedRoute(Model): + """Routes that matched. + + :param properties: Properties of routes that matched + :type properties: ~azure.mgmt.iothub.models.RouteProperties + """ + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'RouteProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(MatchedRoute, self).__init__(**kwargs) + self.properties = properties diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/name.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/name.py new file mode 100644 index 000000000000..119fdb10cea5 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/name.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Name(Model): + """Name of Iot Hub type. + + :param value: IotHub type + :type value: str + :param localized_value: Localized value of name + :type localized_value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Name, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.localized_value = kwargs.get('localized_value', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/name_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/name_py3.py new file mode 100644 index 000000000000..d40236f73bc7 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/name_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Name(Model): + """Name of Iot Hub type. + + :param value: IotHub type + :type value: str + :param localized_value: Localized value of 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(Name, self).__init__(**kwargs) + self.value = value + self.localized_value = localized_value diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_compilation_error.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_compilation_error.py new file mode 100644 index 000000000000..c11e230581d6 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_compilation_error.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RouteCompilationError(Model): + """Compilation error when evaluating route. + + :param message: Route error message + :type message: str + :param severity: Severity of the route error. Possible values include: + 'error', 'warning' + :type severity: str or ~azure.mgmt.iothub.models.RouteErrorSeverity + :param location: Location where the route error happened + :type location: ~azure.mgmt.iothub.models.RouteErrorRange + """ + + _attribute_map = { + 'message': {'key': 'message', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'RouteErrorRange'}, + } + + def __init__(self, **kwargs): + super(RouteCompilationError, self).__init__(**kwargs) + self.message = kwargs.get('message', None) + self.severity = kwargs.get('severity', None) + self.location = kwargs.get('location', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_compilation_error_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_compilation_error_py3.py new file mode 100644 index 000000000000..f179c58b5f91 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_compilation_error_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RouteCompilationError(Model): + """Compilation error when evaluating route. + + :param message: Route error message + :type message: str + :param severity: Severity of the route error. Possible values include: + 'error', 'warning' + :type severity: str or ~azure.mgmt.iothub.models.RouteErrorSeverity + :param location: Location where the route error happened + :type location: ~azure.mgmt.iothub.models.RouteErrorRange + """ + + _attribute_map = { + 'message': {'key': 'message', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'RouteErrorRange'}, + } + + def __init__(self, *, message: str=None, severity=None, location=None, **kwargs) -> None: + super(RouteCompilationError, self).__init__(**kwargs) + self.message = message + self.severity = severity + self.location = location diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_position.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_position.py new file mode 100644 index 000000000000..5c2c05a70195 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_position.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RouteErrorPosition(Model): + """Position where the route error happened. + + :param line: Line where the route error happened + :type line: int + :param column: Column where the route error happened + :type column: int + """ + + _attribute_map = { + 'line': {'key': 'line', 'type': 'int'}, + 'column': {'key': 'column', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(RouteErrorPosition, self).__init__(**kwargs) + self.line = kwargs.get('line', None) + self.column = kwargs.get('column', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_position_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_position_py3.py new file mode 100644 index 000000000000..a8d6b7c139bf --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_position_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RouteErrorPosition(Model): + """Position where the route error happened. + + :param line: Line where the route error happened + :type line: int + :param column: Column where the route error happened + :type column: int + """ + + _attribute_map = { + 'line': {'key': 'line', 'type': 'int'}, + 'column': {'key': 'column', 'type': 'int'}, + } + + def __init__(self, *, line: int=None, column: int=None, **kwargs) -> None: + super(RouteErrorPosition, self).__init__(**kwargs) + self.line = line + self.column = column diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_range.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_range.py new file mode 100644 index 000000000000..2bc28d2281f6 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_range.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RouteErrorRange(Model): + """Range of route errors. + + :param start: Start where the route error happened + :type start: ~azure.mgmt.iothub.models.RouteErrorPosition + :param end: End where the route error happened + :type end: ~azure.mgmt.iothub.models.RouteErrorPosition + """ + + _attribute_map = { + 'start': {'key': 'start', 'type': 'RouteErrorPosition'}, + 'end': {'key': 'end', 'type': 'RouteErrorPosition'}, + } + + def __init__(self, **kwargs): + super(RouteErrorRange, self).__init__(**kwargs) + self.start = kwargs.get('start', None) + self.end = kwargs.get('end', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_range_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_range_py3.py new file mode 100644 index 000000000000..bcafcaa32fa4 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_error_range_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RouteErrorRange(Model): + """Range of route errors. + + :param start: Start where the route error happened + :type start: ~azure.mgmt.iothub.models.RouteErrorPosition + :param end: End where the route error happened + :type end: ~azure.mgmt.iothub.models.RouteErrorPosition + """ + + _attribute_map = { + 'start': {'key': 'start', 'type': 'RouteErrorPosition'}, + 'end': {'key': 'end', 'type': 'RouteErrorPosition'}, + } + + def __init__(self, *, start=None, end=None, **kwargs) -> None: + super(RouteErrorRange, self).__init__(**kwargs) + self.start = start + self.end = end diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_properties.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_properties.py index 91c75e1d8c8b..cb23780b6f71 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_properties.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_properties.py @@ -23,8 +23,9 @@ class RouteProperties(Model): length of 64 characters, and must be unique. :type name: str :param source: Required. The source that the routing rule is to be applied - to, such as DeviceMessages. Possible values include: 'DeviceMessages', - 'TwinChangeEvents', 'DeviceLifecycleEvents', 'DeviceJobLifecycleEvents' + to, such as DeviceMessages. Possible values include: 'Invalid', + 'DeviceMessages', 'TwinChangeEvents', 'DeviceLifecycleEvents', + 'DeviceJobLifecycleEvents' :type source: str or ~azure.mgmt.iothub.models.RoutingSource :param condition: The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_properties_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_properties_py3.py index e66f0009a123..a913d4880714 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/models/route_properties_py3.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/route_properties_py3.py @@ -23,8 +23,9 @@ class RouteProperties(Model): length of 64 characters, and must be unique. :type name: str :param source: Required. The source that the routing rule is to be applied - to, such as DeviceMessages. Possible values include: 'DeviceMessages', - 'TwinChangeEvents', 'DeviceLifecycleEvents', 'DeviceJobLifecycleEvents' + to, such as DeviceMessages. Possible values include: 'Invalid', + 'DeviceMessages', 'TwinChangeEvents', 'DeviceLifecycleEvents', + 'DeviceJobLifecycleEvents' :type source: str or ~azure.mgmt.iothub.models.RoutingSource :param condition: The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/routing_message.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/routing_message.py new file mode 100644 index 000000000000..542d091cd9d5 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/routing_message.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RoutingMessage(Model): + """Routing message. + + :param body: Body of routing message + :type body: str + :param app_properties: App properties + :type app_properties: dict[str, str] + :param system_properties: System properties + :type system_properties: dict[str, str] + """ + + _attribute_map = { + 'body': {'key': 'body', 'type': 'str'}, + 'app_properties': {'key': 'appProperties', 'type': '{str}'}, + 'system_properties': {'key': 'systemProperties', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(RoutingMessage, self).__init__(**kwargs) + self.body = kwargs.get('body', None) + self.app_properties = kwargs.get('app_properties', None) + self.system_properties = kwargs.get('system_properties', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/routing_message_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/routing_message_py3.py new file mode 100644 index 000000000000..049f4a5a427b --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/routing_message_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RoutingMessage(Model): + """Routing message. + + :param body: Body of routing message + :type body: str + :param app_properties: App properties + :type app_properties: dict[str, str] + :param system_properties: System properties + :type system_properties: dict[str, str] + """ + + _attribute_map = { + 'body': {'key': 'body', 'type': 'str'}, + 'app_properties': {'key': 'appProperties', 'type': '{str}'}, + 'system_properties': {'key': 'systemProperties', 'type': '{str}'}, + } + + def __init__(self, *, body: str=None, app_properties=None, system_properties=None, **kwargs) -> None: + super(RoutingMessage, self).__init__(**kwargs) + self.body = body + self.app_properties = app_properties + self.system_properties = system_properties diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_input.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_input.py new file mode 100644 index 000000000000..a05ffeb7498f --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_input.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestAllRoutesInput(Model): + """Input for testing all routes. + + :param routing_source: Routing source. Possible values include: 'Invalid', + 'DeviceMessages', 'TwinChangeEvents', 'DeviceLifecycleEvents', + 'DeviceJobLifecycleEvents' + :type routing_source: str or ~azure.mgmt.iothub.models.RoutingSource + :param message: Routing message + :type message: ~azure.mgmt.iothub.models.RoutingMessage + """ + + _attribute_map = { + 'routing_source': {'key': 'routingSource', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'RoutingMessage'}, + } + + def __init__(self, **kwargs): + super(TestAllRoutesInput, self).__init__(**kwargs) + self.routing_source = kwargs.get('routing_source', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_input_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_input_py3.py new file mode 100644 index 000000000000..b9b31d6efe97 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_input_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestAllRoutesInput(Model): + """Input for testing all routes. + + :param routing_source: Routing source. Possible values include: 'Invalid', + 'DeviceMessages', 'TwinChangeEvents', 'DeviceLifecycleEvents', + 'DeviceJobLifecycleEvents' + :type routing_source: str or ~azure.mgmt.iothub.models.RoutingSource + :param message: Routing message + :type message: ~azure.mgmt.iothub.models.RoutingMessage + """ + + _attribute_map = { + 'routing_source': {'key': 'routingSource', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'RoutingMessage'}, + } + + def __init__(self, *, routing_source=None, message=None, **kwargs) -> None: + super(TestAllRoutesInput, self).__init__(**kwargs) + self.routing_source = routing_source + self.message = message diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_result.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_result.py new file mode 100644 index 000000000000..7d9488f8c551 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestAllRoutesResult(Model): + """Result of testing all routes. + + :param routes: JSON-serialized array of matched routes + :type routes: list[~azure.mgmt.iothub.models.MatchedRoute] + """ + + _attribute_map = { + 'routes': {'key': 'routes', 'type': '[MatchedRoute]'}, + } + + def __init__(self, **kwargs): + super(TestAllRoutesResult, self).__init__(**kwargs) + self.routes = kwargs.get('routes', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_result_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_result_py3.py new file mode 100644 index 000000000000..da5c085f8e0a --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_all_routes_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestAllRoutesResult(Model): + """Result of testing all routes. + + :param routes: JSON-serialized array of matched routes + :type routes: list[~azure.mgmt.iothub.models.MatchedRoute] + """ + + _attribute_map = { + 'routes': {'key': 'routes', 'type': '[MatchedRoute]'}, + } + + def __init__(self, *, routes=None, **kwargs) -> None: + super(TestAllRoutesResult, self).__init__(**kwargs) + self.routes = routes diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_input.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_input.py new file mode 100644 index 000000000000..f89938514813 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_input.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestRouteInput(Model): + """Input for testing route. + + All required parameters must be populated in order to send to Azure. + + :param message: Routing message + :type message: ~azure.mgmt.iothub.models.RoutingMessage + :param route: Required. Route properties + :type route: ~azure.mgmt.iothub.models.RouteProperties + """ + + _validation = { + 'route': {'required': True}, + } + + _attribute_map = { + 'message': {'key': 'message', 'type': 'RoutingMessage'}, + 'route': {'key': 'route', 'type': 'RouteProperties'}, + } + + def __init__(self, **kwargs): + super(TestRouteInput, self).__init__(**kwargs) + self.message = kwargs.get('message', None) + self.route = kwargs.get('route', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_input_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_input_py3.py new file mode 100644 index 000000000000..054145312070 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_input_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestRouteInput(Model): + """Input for testing route. + + All required parameters must be populated in order to send to Azure. + + :param message: Routing message + :type message: ~azure.mgmt.iothub.models.RoutingMessage + :param route: Required. Route properties + :type route: ~azure.mgmt.iothub.models.RouteProperties + """ + + _validation = { + 'route': {'required': True}, + } + + _attribute_map = { + 'message': {'key': 'message', 'type': 'RoutingMessage'}, + 'route': {'key': 'route', 'type': 'RouteProperties'}, + } + + def __init__(self, *, route, message=None, **kwargs) -> None: + super(TestRouteInput, self).__init__(**kwargs) + self.message = message + self.route = route diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result.py new file mode 100644 index 000000000000..5c0ae7ff8f1d --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestRouteResult(Model): + """Result of testing one route. + + :param result: Result of testing route. Possible values include: + 'undefined', 'false', 'true' + :type result: str or ~azure.mgmt.iothub.models.TestResultStatus + :param details: Detailed result of testing route + :type details: ~azure.mgmt.iothub.models.TestRouteResultDetails + """ + + _attribute_map = { + 'result': {'key': 'result', 'type': 'str'}, + 'details': {'key': 'details', 'type': 'TestRouteResultDetails'}, + } + + def __init__(self, **kwargs): + super(TestRouteResult, self).__init__(**kwargs) + self.result = kwargs.get('result', None) + self.details = kwargs.get('details', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_details.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_details.py new file mode 100644 index 000000000000..53e3b99b6e8e --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_details.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestRouteResultDetails(Model): + """Detailed result of testing a route. + + :param compilation_errors: JSON-serialized list of route compilation + errors + :type compilation_errors: + list[~azure.mgmt.iothub.models.RouteCompilationError] + """ + + _attribute_map = { + 'compilation_errors': {'key': 'compilationErrors', 'type': '[RouteCompilationError]'}, + } + + def __init__(self, **kwargs): + super(TestRouteResultDetails, self).__init__(**kwargs) + self.compilation_errors = kwargs.get('compilation_errors', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_details_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_details_py3.py new file mode 100644 index 000000000000..6a1b850bb223 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_details_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestRouteResultDetails(Model): + """Detailed result of testing a route. + + :param compilation_errors: JSON-serialized list of route compilation + errors + :type compilation_errors: + list[~azure.mgmt.iothub.models.RouteCompilationError] + """ + + _attribute_map = { + 'compilation_errors': {'key': 'compilationErrors', 'type': '[RouteCompilationError]'}, + } + + def __init__(self, *, compilation_errors=None, **kwargs) -> None: + super(TestRouteResultDetails, self).__init__(**kwargs) + self.compilation_errors = compilation_errors diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_py3.py new file mode 100644 index 000000000000..40bc12b3c63c --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/test_route_result_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TestRouteResult(Model): + """Result of testing one route. + + :param result: Result of testing route. Possible values include: + 'undefined', 'false', 'true' + :type result: str or ~azure.mgmt.iothub.models.TestResultStatus + :param details: Detailed result of testing route + :type details: ~azure.mgmt.iothub.models.TestRouteResultDetails + """ + + _attribute_map = { + 'result': {'key': 'result', 'type': 'str'}, + 'details': {'key': 'details', 'type': 'TestRouteResultDetails'}, + } + + def __init__(self, *, result=None, details=None, **kwargs) -> None: + super(TestRouteResult, self).__init__(**kwargs) + self.result = result + self.details = details diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota.py new file mode 100644 index 000000000000..5c5e474c74d4 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserSubscriptionQuota(Model): + """User subscription quota response. + + :param id: IotHub type id + :type id: str + :param type: Response type + :type type: str + :param unit: Unit of IotHub type + :type unit: str + :param current_value: Current number of IotHub type + :type current_value: int + :param limit: Numerical limit on IotHub type + :type limit: int + :param name: IotHub type + :type name: ~azure.mgmt.iothub.models.Name + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'int'}, + 'limit': {'key': 'limit', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'Name'}, + } + + def __init__(self, **kwargs): + super(UserSubscriptionQuota, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.type = kwargs.get('type', None) + self.unit = kwargs.get('unit', None) + self.current_value = kwargs.get('current_value', None) + self.limit = kwargs.get('limit', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_list_result.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_list_result.py new file mode 100644 index 000000000000..28595a1a5dbb --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_list_result.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserSubscriptionQuotaListResult(Model): + """Json-serialized array of User subscription quota response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: + :type value: list[~azure.mgmt.iothub.models.UserSubscriptionQuota] + :ivar next_link: + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[UserSubscriptionQuota]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UserSubscriptionQuotaListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_list_result_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_list_result_py3.py new file mode 100644 index 000000000000..23ee4346bc48 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_list_result_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserSubscriptionQuotaListResult(Model): + """Json-serialized array of User subscription quota response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: + :type value: list[~azure.mgmt.iothub.models.UserSubscriptionQuota] + :ivar next_link: + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[UserSubscriptionQuota]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(UserSubscriptionQuotaListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_py3.py b/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_py3.py new file mode 100644 index 000000000000..fb3011550948 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/models/user_subscription_quota_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UserSubscriptionQuota(Model): + """User subscription quota response. + + :param id: IotHub type id + :type id: str + :param type: Response type + :type type: str + :param unit: Unit of IotHub type + :type unit: str + :param current_value: Current number of IotHub type + :type current_value: int + :param limit: Numerical limit on IotHub type + :type limit: int + :param name: IotHub type + :type name: ~azure.mgmt.iothub.models.Name + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'int'}, + 'limit': {'key': 'limit', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'Name'}, + } + + def __init__(self, *, id: str=None, type: str=None, unit: str=None, current_value: int=None, limit: int=None, name=None, **kwargs) -> None: + super(UserSubscriptionQuota, self).__init__(**kwargs) + self.id = id + self.type = type + self.unit = unit + self.current_value = current_value + self.limit = limit + self.name = name diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/operations/__init__.py b/azure-mgmt-iothub/azure/mgmt/iothub/operations/__init__.py index 80ee066a9304..bee99168ebe3 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/operations/__init__.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/operations/__init__.py @@ -11,10 +11,12 @@ from .operations import Operations from .iot_hub_resource_operations import IotHubResourceOperations +from .resource_provider_common_operations import ResourceProviderCommonOperations from .certificates_operations import CertificatesOperations __all__ = [ 'Operations', 'IotHubResourceOperations', + 'ResourceProviderCommonOperations', 'CertificatesOperations', ] diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/operations/certificates_operations.py b/azure-mgmt-iothub/azure/mgmt/iothub/operations/certificates_operations.py index 7550e5328ca0..97425c41acd4 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/operations/certificates_operations.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/operations/certificates_operations.py @@ -73,7 +73,7 @@ def list_by_iot_hub( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,8 +82,8 @@ def list_by_iot_hub( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -140,7 +140,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -149,8 +149,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -215,6 +215,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -229,9 +230,8 @@ def create_or_update( body_content = self._serialize.body(certificate_description, 'CertificateBodyDescription') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorDetailsException(self._deserialize, response) @@ -292,7 +292,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -302,8 +301,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorDetailsException(self._deserialize, response) @@ -357,7 +356,7 @@ def generate_verification_code( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -367,8 +366,8 @@ def generate_verification_code( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -433,6 +432,7 @@ def verify( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -446,9 +446,8 @@ def verify( body_content = self._serialize.body(certificate_verification_body, 'CertificateVerificationDescription') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/operations/iot_hub_resource_operations.py b/azure-mgmt-iothub/azure/mgmt/iothub/operations/iot_hub_resource_operations.py index 26ee37a489db..9a5359e55915 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/operations/iot_hub_resource_operations.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/operations/iot_hub_resource_operations.py @@ -76,7 +76,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,8 +85,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -121,6 +121,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -135,9 +136,8 @@ def _create_or_update_initial( body_content = self._serialize.body(iot_hub_description, 'IotHubDescription') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorDetailsException(self._deserialize, response) @@ -237,6 +237,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -249,9 +250,8 @@ def _update_initial( body_content = self._serialize.body(iot_hub_tags, 'TagsResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -340,7 +340,7 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -349,8 +349,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204, 404]: raise models.ErrorDetailsException(self._deserialize, response) @@ -456,7 +456,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -465,9 +465,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -526,7 +525,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -535,9 +534,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -592,7 +590,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -601,8 +599,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -663,7 +661,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -672,9 +670,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -742,7 +739,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -751,9 +748,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -817,7 +813,7 @@ def get_event_hub_consumer_group( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -826,8 +822,8 @@ def get_event_hub_consumer_group( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -888,7 +884,7 @@ def create_event_hub_consumer_group( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -897,8 +893,8 @@ def create_event_hub_consumer_group( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -960,7 +956,6 @@ def delete_event_hub_consumer_group( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -969,8 +964,8 @@ def delete_event_hub_consumer_group( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -1026,7 +1021,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1035,9 +1030,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -1097,7 +1091,7 @@ def get_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1106,8 +1100,8 @@ def get_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -1168,7 +1162,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1177,9 +1171,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -1197,6 +1190,77 @@ def internal_paging(next_link=None, raw=False): return deserialized get_quota_metrics.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/quotaMetrics'} + def get_endpoint_health( + self, resource_group_name, iot_hub_name, custom_headers=None, raw=False, **operation_config): + """Get the health for routing endpoints. + + Get the health for routing endpoints. + + :param resource_group_name: + :type resource_group_name: str + :param iot_hub_name: + :type iot_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of EndpointHealthData + :rtype: + ~azure.mgmt.iothub.models.EndpointHealthDataPaged[~azure.mgmt.iothub.models.EndpointHealthData] + :raises: + :class:`ErrorDetailsException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.get_endpoint_health.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'iotHubName': self._serialize.url("iot_hub_name", iot_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorDetailsException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.EndpointHealthDataPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.EndpointHealthDataPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + get_endpoint_health.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routingEndpointsHealth'} + def check_name_availability( self, name, custom_headers=None, raw=False, **operation_config): """Check if an IoT hub name is available. @@ -1231,6 +1295,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1243,9 +1308,8 @@ def check_name_availability( body_content = self._serialize.body(operation_inputs, 'OperationInputs') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -1262,6 +1326,154 @@ def check_name_availability( return deserialized check_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkNameAvailability'} + def test_all_routes( + self, iot_hub_name, resource_group_name, routing_source=None, message=None, custom_headers=None, raw=False, **operation_config): + """Test all routes. + + Test all routes configured in this Iot Hub. + + :param iot_hub_name: IotHub to be tested + :type iot_hub_name: str + :param resource_group_name: resource group which Iot Hub belongs to + :type resource_group_name: str + :param routing_source: Routing source. Possible values include: + 'Invalid', 'DeviceMessages', 'TwinChangeEvents', + 'DeviceLifecycleEvents', 'DeviceJobLifecycleEvents' + :type routing_source: str or ~azure.mgmt.iothub.models.RoutingSource + :param message: Routing message + :type message: ~azure.mgmt.iothub.models.RoutingMessage + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TestAllRoutesResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.iothub.models.TestAllRoutesResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorDetailsException` + """ + input = models.TestAllRoutesInput(routing_source=routing_source, message=message) + + # Construct URL + url = self.test_all_routes.metadata['url'] + path_format_arguments = { + 'iotHubName': self._serialize.url("iot_hub_name", iot_hub_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(input, 'TestAllRoutesInput') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorDetailsException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TestAllRoutesResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + test_all_routes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testall'} + + def test_route( + self, iot_hub_name, resource_group_name, route, message=None, custom_headers=None, raw=False, **operation_config): + """Test the new route. + + Test the new route for this Iot Hub. + + :param iot_hub_name: IotHub to be tested + :type iot_hub_name: str + :param resource_group_name: resource group which Iot Hub belongs to + :type resource_group_name: str + :param route: Route properties + :type route: ~azure.mgmt.iothub.models.RouteProperties + :param message: Routing message + :type message: ~azure.mgmt.iothub.models.RoutingMessage + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TestRouteResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.iothub.models.TestRouteResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorDetailsException` + """ + input = models.TestRouteInput(message=message, route=route) + + # Construct URL + url = self.test_route.metadata['url'] + path_format_arguments = { + 'iotHubName': self._serialize.url("iot_hub_name", iot_hub_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(input, 'TestRouteInput') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorDetailsException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TestRouteResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + test_route.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testnew'} + def list_keys( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): """Get the security metadata for an IoT hub. For more information, see: @@ -1309,7 +1521,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1318,9 +1530,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -1384,7 +1595,7 @@ def get_keys_for_key_name( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1393,8 +1604,8 @@ def get_keys_for_key_name( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -1459,6 +1670,7 @@ def export_devices( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1471,9 +1683,8 @@ def export_devices( body_content = self._serialize.body(export_devices_parameters, 'ExportDevicesRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) @@ -1537,6 +1748,7 @@ def import_devices( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1549,9 +1761,8 @@ def import_devices( body_content = self._serialize.body(import_devices_parameters, 'ImportDevicesRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/operations/operations.py b/azure-mgmt-iothub/azure/mgmt/iothub/operations/operations.py index ebcdf5d1b068..d6bb6115948f 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/operations/operations.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorDetailsException(self._deserialize, response) diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/operations/resource_provider_common_operations.py b/azure-mgmt-iothub/azure/mgmt/iothub/operations/resource_provider_common_operations.py new file mode 100644 index 000000000000..78d3bb5be0c8 --- /dev/null +++ b/azure-mgmt-iothub/azure/mgmt/iothub/operations/resource_provider_common_operations.py @@ -0,0 +1,95 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ResourceProviderCommonOperations(object): + """ResourceProviderCommonOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The version of the API. Constant value: "2018-04-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-04-01" + + self.config = config + + def get_subscription_quota( + self, custom_headers=None, raw=False, **operation_config): + """Get the number of iot hubs in the subscription. + + Get the number of free and paid iot hubs in the subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: UserSubscriptionQuotaListResult or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.iothub.models.UserSubscriptionQuotaListResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorDetailsException` + """ + # Construct URL + url = self.get_subscription_quota.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorDetailsException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('UserSubscriptionQuotaListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_subscription_quota.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Devices/usages'} diff --git a/azure-mgmt-iothub/azure/mgmt/iothub/version.py b/azure-mgmt-iothub/azure/mgmt/iothub/version.py index 266f5a486d79..5a7feab42d26 100644 --- a/azure-mgmt-iothub/azure/mgmt/iothub/version.py +++ b/azure-mgmt-iothub/azure/mgmt/iothub/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.5.0" +VERSION = "0.6.0" diff --git a/azure-mgmt-iothub/azure_bdist_wheel.py b/azure-mgmt-iothub/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-iothub/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-iothub/build.json b/azure-mgmt-iothub/build.json deleted file mode 100644 index 9a4eaa711b59..000000000000 --- a/azure-mgmt-iothub/build.json +++ /dev/null @@ -1,183 +0,0 @@ -{ - "autorest": [ - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4147", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/async-io": "~1.0.21", - "@microsoft.azure/extension": "~1.1.5", - "@types/commonmark": "^0.27.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.28", - "@types/pify": "0.0.28", - "@types/source-map": "^0.5.0", - "@types/yargs": "^8.0.2", - "commonmark": "^0.27.0", - "file-url": "^2.0.2", - "get-uri": "^2.0.0", - "jsonpath": "^0.2.11", - "linq-es2015": "^2.4.25", - "mocha": "3.4.2", - "mocha-typescript": "1.1.5", - "pify": "^3.0.0", - "safe-eval": "^0.3.0", - "shx": "^0.2.2", - "source-map": "^0.5.6", - "source-map-support": "^0.4.15", - "strip-bom": "^3.0.0", - "typescript": "2.4.1", - "untildify": "^3.0.2", - "urijs": "^1.18.10", - "vscode-jsonrpc": "^3.3.1", - "yaml-ast-parser": "https://github.com/olydis/yaml-ast-parser/releases/download/0.0.34/yaml-ast-parser-0.0.34.tgz", - "yargs": "^8.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "_shasum": "cfad16a831757f2f55e53bf56669d126cd36113a", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest-core@2.0.4147", - "_from": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core", - "_where": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4147/node_modules/@microsoft.azure/autorest-core" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.0.18", - "dependencies": { - "dotnet-2.0.0": "^1.1.0" - }, - "optionalDependencies": {}, - "devDependencies": { - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.1.1", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.18/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "b8e853f83b99b2a37ad534cb8463da5de4b11418", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.0.18", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.18/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.18/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.18/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.18/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.18/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.18/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.18/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.python", - "version": "2.0.13", - "dependencies": { - "dotnet-2.0.0": "^1.1.0" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "^1.9.0", - "autorest": "^2.0.0", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.1.1", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.python@2.0.13/node_modules/@microsoft.azure/autorest.python", - "_shasum": "ddbbf3e3f1f90ae4132b687cfa8450425ab4ffcd", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.python@2.0.13", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.python@2.0.13/node_modules/@microsoft.azure/autorest.python", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.python@2.0.13/node_modules/@microsoft.azure/autorest.python", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.13/node_modules/@microsoft.azure/autorest.python", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.python@2.0.13/node_modules/@microsoft.azure/autorest.python", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.13/node_modules/@microsoft.azure/autorest.python" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.13/node_modules/@microsoft.azure/autorest.python", - "_where": "/root/.autorest/@microsoft.azure_autorest.python@2.0.13/node_modules/@microsoft.azure/autorest.python" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - } - ], - "autorest_bootstrap": { - "dependencies": { - "autorest": { - "version": "2.0.4147", - "from": "autorest@latest", - "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4147.tgz" - } - } - }, - "date": "2017-10-04T18:07:02Z" -} \ No newline at end of file diff --git a/azure-mgmt-iothub/sdk_packaging.toml b/azure-mgmt-iothub/sdk_packaging.toml new file mode 100644 index 000000000000..04e30388fd54 --- /dev/null +++ b/azure-mgmt-iothub/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-iothub" +package_pprint_name = "IoTHub Management" +package_doc_id = "iot" +is_stable = false +is_arm = true diff --git a/azure-mgmt-iothub/setup.cfg b/azure-mgmt-iothub/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-iothub/setup.cfg +++ b/azure-mgmt-iothub/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-iothub/setup.py b/azure-mgmt-iothub/setup.py index 504e113de5e8..b74fae46b4b5 100644 --- a/azure-mgmt-iothub/setup.py +++ b/azure-mgmt-iothub/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-iothub" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-iothubprovisioningservices/MANIFEST.in b/azure-mgmt-iothubprovisioningservices/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-iothubprovisioningservices/MANIFEST.in +++ b/azure-mgmt-iothubprovisioningservices/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-iothubprovisioningservices/README.rst b/azure-mgmt-iothubprovisioningservices/README.rst index 8866c376cdbe..875e40fd73d3 100644 --- a/azure-mgmt-iothubprovisioningservices/README.rst +++ b/azure-mgmt-iothubprovisioningservices/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure IoTHub Provisioning Services Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-iothubprovisioningservices/azure/__init__.py b/azure-mgmt-iothubprovisioningservices/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-iothubprovisioningservices/azure/__init__.py +++ b/azure-mgmt-iothubprovisioningservices/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-iothubprovisioningservices/azure/mgmt/__init__.py b/azure-mgmt-iothubprovisioningservices/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-iothubprovisioningservices/azure/mgmt/__init__.py +++ b/azure-mgmt-iothubprovisioningservices/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-iothubprovisioningservices/azure_bdist_wheel.py b/azure-mgmt-iothubprovisioningservices/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-iothubprovisioningservices/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-iothubprovisioningservices/sdk_packaging.toml b/azure-mgmt-iothubprovisioningservices/sdk_packaging.toml new file mode 100644 index 000000000000..4a5b1deca17f --- /dev/null +++ b/azure-mgmt-iothubprovisioningservices/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-iothubprovisioningservices" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "IoTHub Provisioning Services" +package_doc_id = "iot" +is_stable = false +is_arm = true diff --git a/azure-mgmt-iothubprovisioningservices/setup.cfg b/azure-mgmt-iothubprovisioningservices/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-iothubprovisioningservices/setup.cfg +++ b/azure-mgmt-iothubprovisioningservices/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-iothubprovisioningservices/setup.py b/azure-mgmt-iothubprovisioningservices/setup.py index f8d19f74c507..456f8bc235cb 100644 --- a/azure-mgmt-iothubprovisioningservices/setup.py +++ b/azure-mgmt-iothubprovisioningservices/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-iothubprovisioningservices" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-keyvault/HISTORY.rst b/azure-mgmt-keyvault/HISTORY.rst index f40d1c0688fe..54aef90eb413 100644 --- a/azure-mgmt-keyvault/HISTORY.rst +++ b/azure-mgmt-keyvault/HISTORY.rst @@ -2,6 +2,11 @@ Release History =============== +1.1.0 (2018-08-07) +++++++++++++++++++++ + +* Adding support for multi-api and API profiles + 1.0.0 (2018-06-27) ++++++++++++++++++++ diff --git a/azure-mgmt-keyvault/MANIFEST.in b/azure-mgmt-keyvault/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-keyvault/MANIFEST.in +++ b/azure-mgmt-keyvault/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-keyvault/README.rst b/azure-mgmt-keyvault/README.rst index ae12064e473d..b7ee4573a02a 100644 --- a/azure-mgmt-keyvault/README.rst +++ b/azure-mgmt-keyvault/README.rst @@ -6,7 +6,10 @@ This is the Microsoft Azure Key Vault Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For the older Azure Service Management (ASM) libraries, see +`azure-servicemanagement-legacy `__ library. For a more complete set of Azure libraries, see the `azure `__ bundle package. diff --git a/azure-mgmt-keyvault/azure/__init__.py b/azure-mgmt-keyvault/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-keyvault/azure/__init__.py +++ b/azure-mgmt-keyvault/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-keyvault/azure/mgmt/__init__.py b/azure-mgmt-keyvault/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-keyvault/azure/mgmt/__init__.py +++ b/azure-mgmt-keyvault/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-keyvault/azure_bdist_wheel.py b/azure-mgmt-keyvault/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-keyvault/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-keyvault/setup.cfg b/azure-mgmt-keyvault/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-keyvault/setup.cfg +++ b/azure-mgmt-keyvault/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-keyvault/setup.py b/azure-mgmt-keyvault/setup.py index 82f1c1dfb1f2..68ca6c9980c4 100644 --- a/azure-mgmt-keyvault/setup.py +++ b/azure-mgmt-keyvault/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-keyvault" @@ -61,7 +55,7 @@ long_description=readme + '\n\n' + history, license='MIT License', author='Microsoft Corporation', - author_email='azurekeyvault@microsoft.com', + author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ 'Development Status :: 4 - Beta', @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-kusto/HISTORY.rst b/azure-mgmt-kusto/HISTORY.rst new file mode 100644 index 000000000000..26ca45d778f9 --- /dev/null +++ b/azure-mgmt-kusto/HISTORY.rst @@ -0,0 +1,9 @@ +.. :changelog: + +Release History +=============== + +0.1.0 (2018-08-09) +++++++++++++++++++ + +* Initial Release diff --git a/azure-mgmt-kusto/MANIFEST.in b/azure-mgmt-kusto/MANIFEST.in new file mode 100644 index 000000000000..bb37a2723dae --- /dev/null +++ b/azure-mgmt-kusto/MANIFEST.in @@ -0,0 +1 @@ +include *.rst diff --git a/azure-mgmt-kusto/README.rst b/azure-mgmt-kusto/README.rst new file mode 100644 index 000000000000..01fec01b6754 --- /dev/null +++ b/azure-mgmt-kusto/README.rst @@ -0,0 +1,49 @@ +Microsoft Azure SDK for Python +============================== + +This is the Microsoft Azure Kusto Management Client Library. + +Azure Resource Manager (ARM) is the next generation of management APIs that +replace the old Azure Service Management (ASM). + +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For the older Azure Service Management (ASM) libraries, see +`azure-servicemanagement-legacy `__ library. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. + + +Compatibility +============= + +**IMPORTANT**: If you have an earlier version of the azure package +(version < 1.0), you should uninstall it before installing this package. + +You can check the version using pip: + +.. code:: shell + + pip freeze + +If you see azure==0.11.0 (or any version below 1.0), uninstall it first: + +.. code:: shell + + pip uninstall azure + + +Usage +===== + +For code examples, see `Kusto Management +`__ +on docs.microsoft.com. + + +Provide Feedback +================ + +If you encounter any bugs or have suggestions, please file an issue in the +`Issues `__ +section of the project. diff --git a/azure-mgmt-kusto/azure/__init__.py b/azure-mgmt-kusto/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-kusto/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-kusto/azure/mgmt/__init__.py b/azure-mgmt-kusto/azure/mgmt/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/__init__.py b/azure-mgmt-kusto/azure/mgmt/kusto/__init__.py new file mode 100644 index 000000000000..ab4927454444 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/__init__.py @@ -0,0 +1,18 @@ +# 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 .kusto_management_client import KustoManagementClient +from .version import VERSION + +__all__ = ['KustoManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/kusto_management_client.py b/azure-mgmt-kusto/azure/mgmt/kusto/kusto_management_client.py new file mode 100644 index 000000000000..69437bed699b --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/kusto_management_client.py @@ -0,0 +1,95 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.clusters_operations import ClustersOperations +from .operations.databases_operations import DatabasesOperations +from .operations.operations import Operations +from . import models + + +class KustoManagementClientConfiguration(AzureConfiguration): + """Configuration for KustoManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Gets subscription credentials which uniquely + identify Microsoft Azure subscription. The subscription ID forms part of + the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(KustoManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-kusto/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class KustoManagementClient(SDKClient): + """The Azure Kusto management API provides a RESTful set of web services that interact with Azure Kusto services to manage your clusters and databases. The API enables you to create, update, and delete clusters and databases. + + :ivar config: Configuration for client. + :vartype config: KustoManagementClientConfiguration + + :ivar clusters: Clusters operations + :vartype clusters: azure.mgmt.kusto.operations.ClustersOperations + :ivar databases: Databases operations + :vartype databases: azure.mgmt.kusto.operations.DatabasesOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.kusto.operations.Operations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Gets subscription credentials which uniquely + identify Microsoft Azure subscription. The subscription ID forms part of + the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = KustoManagementClientConfiguration(credentials, subscription_id, base_url) + super(KustoManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2017-09-07-privatepreview' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.clusters = ClustersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.databases = DatabasesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/__init__.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/__init__.py new file mode 100644 index 000000000000..31108c7330d1 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/__init__.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +try: + from .cluster_py3 import Cluster + from .cluster_update_py3 import ClusterUpdate + from .database_py3 import Database + from .database_update_py3 import DatabaseUpdate + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation + from .proxy_resource_py3 import ProxyResource + from .tracked_resource_py3 import TrackedResource + from .azure_entity_resource_py3 import AzureEntityResource + from .resource_py3 import Resource +except (SyntaxError, ImportError): + from .cluster import Cluster + from .cluster_update import ClusterUpdate + from .database import Database + from .database_update import DatabaseUpdate + from .operation_display import OperationDisplay + from .operation import Operation + from .proxy_resource import ProxyResource + from .tracked_resource import TrackedResource + from .azure_entity_resource import AzureEntityResource + from .resource import Resource +from .cluster_paged import ClusterPaged +from .database_paged import DatabasePaged +from .operation_paged import OperationPaged +from .kusto_management_client_enums import ( + ProvisioningState, +) + +__all__ = [ + 'Cluster', + 'ClusterUpdate', + 'Database', + 'DatabaseUpdate', + 'OperationDisplay', + 'Operation', + 'ProxyResource', + 'TrackedResource', + 'AzureEntityResource', + 'Resource', + 'ClusterPaged', + 'DatabasePaged', + 'OperationPaged', + 'ProvisioningState', +] diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/azure_entity_resource.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/azure_entity_resource.py new file mode 100644 index 000000000000..3bffaab8d35b --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/azure_entity_resource.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class AzureEntityResource(Resource): + """The resource model definition for a Azure Resource Manager resource with an + etag. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureEntityResource, self).__init__(**kwargs) + self.etag = None diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/azure_entity_resource_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/azure_entity_resource_py3.py new file mode 100644 index 000000000000..d3f80d87498a --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/azure_entity_resource_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class AzureEntityResource(Resource): + """The resource model definition for a Azure Resource Manager resource with an + etag. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(AzureEntityResource, self).__init__(**kwargs) + self.etag = None diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster.py new file mode 100644 index 000000000000..e3e4eb57e3bf --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource import TrackedResource + + +class Cluster(TrackedResource): + """Class representing a Kusto cluster. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + :ivar etag: An etag of the resource created + :vartype etag: str + :ivar provisioning_state: The provisioned state of the resource. Possible + values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.kusto.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'etag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Cluster, self).__init__(**kwargs) + self.etag = None + self.provisioning_state = None diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_paged.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_paged.py new file mode 100644 index 000000000000..c481b50a1897 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ClusterPaged(Paged): + """ + A paging container for iterating over a list of :class:`Cluster ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Cluster]'} + } + + def __init__(self, *args, **kwargs): + + super(ClusterPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_py3.py new file mode 100644 index 000000000000..c0a842f5b2f9 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource_py3 import TrackedResource + + +class Cluster(TrackedResource): + """Class representing a Kusto cluster. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + :ivar etag: An etag of the resource created + :vartype etag: str + :ivar provisioning_state: The provisioned state of the resource. Possible + values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.kusto.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'etag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(Cluster, self).__init__(tags=tags, location=location, **kwargs) + self.etag = None + self.provisioning_state = None diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_update.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_update.py new file mode 100644 index 000000000000..db697b6af82c --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_update.py @@ -0,0 +1,55 @@ +# 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 .resource import Resource + + +class ClusterUpdate(Resource): + """Class representing an update to a Kusto cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param location: Resource location + :type location: str + :ivar provisioning_state: The provisioned state of the resource. Possible + values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.kusto.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ClusterUpdate, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.provisioning_state = None diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_update_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_update_py3.py new file mode 100644 index 000000000000..0474a4493010 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/cluster_update_py3.py @@ -0,0 +1,55 @@ +# 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 .resource_py3 import Resource + + +class ClusterUpdate(Resource): + """Class representing an update to a Kusto cluster. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param location: Resource location + :type location: str + :ivar provisioning_state: The provisioned state of the resource. Possible + values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.kusto.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, location: str=None, **kwargs) -> None: + super(ClusterUpdate, self).__init__(**kwargs) + self.location = location + self.provisioning_state = None diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/database.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/database.py new file mode 100644 index 000000000000..4c6d2f361bfb --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/database.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource import TrackedResource + + +class Database(TrackedResource): + """Class representing a Kusto database. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + :ivar etag: An etag of the resource created + :vartype etag: str + :ivar provisioning_state: The provisioned state of the resource. Possible + values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.kusto.models.ProvisioningState + :param soft_delete_period_in_days: Required. The number of days data + should be kept before it stops being accessible to queries. + :type soft_delete_period_in_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'etag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'soft_delete_period_in_days': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'soft_delete_period_in_days': {'key': 'properties.softDeletePeriodInDays', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(Database, self).__init__(**kwargs) + self.etag = None + self.provisioning_state = None + self.soft_delete_period_in_days = kwargs.get('soft_delete_period_in_days', None) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/database_paged.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/database_paged.py new file mode 100644 index 000000000000..d925609492ce --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/database_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DatabasePaged(Paged): + """ + A paging container for iterating over a list of :class:`Database ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Database]'} + } + + def __init__(self, *args, **kwargs): + + super(DatabasePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/database_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/database_py3.py new file mode 100644 index 000000000000..1e5aacd37d19 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/database_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource_py3 import TrackedResource + + +class Database(TrackedResource): + """Class representing a Kusto database. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + :ivar etag: An etag of the resource created + :vartype etag: str + :ivar provisioning_state: The provisioned state of the resource. Possible + values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.kusto.models.ProvisioningState + :param soft_delete_period_in_days: Required. The number of days data + should be kept before it stops being accessible to queries. + :type soft_delete_period_in_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'etag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'soft_delete_period_in_days': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'soft_delete_period_in_days': {'key': 'properties.softDeletePeriodInDays', 'type': 'int'}, + } + + def __init__(self, *, location: str, soft_delete_period_in_days: int, tags=None, **kwargs) -> None: + super(Database, self).__init__(tags=tags, location=location, **kwargs) + self.etag = None + self.provisioning_state = None + self.soft_delete_period_in_days = soft_delete_period_in_days diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/database_update.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/database_update.py new file mode 100644 index 000000000000..bdd5b7c79379 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/database_update.py @@ -0,0 +1,63 @@ +# 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 .resource import Resource + + +class DatabaseUpdate(Resource): + """Class representing an update to a Kusto database. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param location: Resource location + :type location: str + :ivar provisioning_state: The provisioned state of the resource. Possible + values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.kusto.models.ProvisioningState + :param soft_delete_period_in_days: Required. The number of days data + should be kept before it stops being accessible to queries. + :type soft_delete_period_in_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'soft_delete_period_in_days': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'soft_delete_period_in_days': {'key': 'properties.softDeletePeriodInDays', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(DatabaseUpdate, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.provisioning_state = None + self.soft_delete_period_in_days = kwargs.get('soft_delete_period_in_days', None) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/database_update_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/database_update_py3.py new file mode 100644 index 000000000000..5a4f73ca458a --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/database_update_py3.py @@ -0,0 +1,63 @@ +# 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 .resource_py3 import Resource + + +class DatabaseUpdate(Resource): + """Class representing an update to a Kusto database. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param location: Resource location + :type location: str + :ivar provisioning_state: The provisioned state of the resource. Possible + values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.kusto.models.ProvisioningState + :param soft_delete_period_in_days: Required. The number of days data + should be kept before it stops being accessible to queries. + :type soft_delete_period_in_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'soft_delete_period_in_days': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'soft_delete_period_in_days': {'key': 'properties.softDeletePeriodInDays', 'type': 'int'}, + } + + def __init__(self, *, soft_delete_period_in_days: int, location: str=None, **kwargs) -> None: + super(DatabaseUpdate, self).__init__(**kwargs) + self.location = location + self.provisioning_state = None + self.soft_delete_period_in_days = soft_delete_period_in_days diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/kusto_management_client_enums.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/kusto_management_client_enums.py new file mode 100644 index 000000000000..411375e9cce7 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/kusto_management_client_enums.py @@ -0,0 +1,21 @@ +# 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 enum import Enum + + +class ProvisioningState(str, Enum): + + running = "Running" + creating = "Creating" + deleting = "Deleting" + succeeded = "Succeeded" + failed = "Failed" diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/operation.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation.py new file mode 100644 index 000000000000..a2fb1cc9353d --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """A REST API operation. + + :param name: The operation name. This is of the format + {provider}/{resource}/{operation} + :type name: str + :param display: The object that describes the operation. + :type display: ~azure.mgmt.kusto.models.OperationDisplay + :param origin: The intended executor of the operation. + :type origin: str + :param properties: Properties of the operation. + :type properties: object + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_display.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_display.py new file mode 100644 index 000000000000..cd0461e72f15 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_display.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """The object that describes the operation. + + :param provider: Friendly name of the resource provider. + :type provider: str + :param operation: The operation type. For example: read, write, delete. + :type operation: str + :param resource: The resource type on which the operation is performed. + :type resource: str + :param description: The friendly name of the operation. + :type description: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.operation = kwargs.get('operation', None) + self.resource = kwargs.get('resource', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_display_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_display_py3.py new file mode 100644 index 000000000000..bfe8cb3f3656 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_display_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """The object that describes the operation. + + :param provider: Friendly name of the resource provider. + :type provider: str + :param operation: The operation type. For example: read, write, delete. + :type operation: str + :param resource: The resource type on which the operation is performed. + :type resource: str + :param description: The friendly name of the operation. + :type description: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, provider: str=None, operation: str=None, resource: str=None, description: str=None, **kwargs) -> None: + super(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.operation = operation + self.resource = resource + self.description = description diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_paged.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_paged.py new file mode 100644 index 000000000000..35e6863fe30f --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_py3.py new file mode 100644 index 000000000000..50308e732f38 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/operation_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """A REST API operation. + + :param name: The operation name. This is of the format + {provider}/{resource}/{operation} + :type name: str + :param display: The object that describes the operation. + :type display: ~azure.mgmt.kusto.models.OperationDisplay + :param origin: The intended executor of the operation. + :type origin: str + :param properties: Properties of the operation. + :type properties: object + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'object'}, + } + + def __init__(self, *, name: str=None, display=None, origin: str=None, properties=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display + self.origin = origin + self.properties = properties diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/proxy_resource.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/proxy_resource.py new file mode 100644 index 000000000000..0de8fb6bd420 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/proxy_resource.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ProxyResource(Resource): + """The resource model definition for a ARM proxy resource. It will have + everything other than required location and tags. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProxyResource, self).__init__(**kwargs) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/proxy_resource_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/proxy_resource_py3.py new file mode 100644 index 000000000000..2e8391f912d6 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/proxy_resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ProxyResource(Resource): + """The resource model definition for a ARM proxy resource. It will have + everything other than required location and tags. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ProxyResource, self).__init__(**kwargs) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/resource.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/resource.py new file mode 100644 index 000000000000..9333a2ac49ef --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/resource.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/resource_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/resource_py3.py new file mode 100644 index 000000000000..370e6c506581 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/resource_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/tracked_resource.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/tracked_resource.py new file mode 100644 index 000000000000..27ab94c7a8dd --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/tracked_resource.py @@ -0,0 +1,55 @@ +# 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 .resource import Resource + + +class TrackedResource(Resource): + """The resource model definition for a ARM tracked top level resource. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TrackedResource, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + self.location = kwargs.get('location', None) diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/models/tracked_resource_py3.py b/azure-mgmt-kusto/azure/mgmt/kusto/models/tracked_resource_py3.py new file mode 100644 index 000000000000..b28cc1859448 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/models/tracked_resource_py3.py @@ -0,0 +1,55 @@ +# 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 .resource_py3 import Resource + + +class TrackedResource(Resource): + """The resource model definition for a ARM tracked top level resource. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(TrackedResource, self).__init__(**kwargs) + self.tags = tags + self.location = location diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/operations/__init__.py b/azure-mgmt-kusto/azure/mgmt/kusto/operations/__init__.py new file mode 100644 index 000000000000..3e3275672746 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/operations/__init__.py @@ -0,0 +1,20 @@ +# 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 .clusters_operations import ClustersOperations +from .databases_operations import DatabasesOperations +from .operations import Operations + +__all__ = [ + 'ClustersOperations', + 'DatabasesOperations', + 'Operations', +] diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/operations/clusters_operations.py b/azure-mgmt-kusto/azure/mgmt/kusto/operations/clusters_operations.py new file mode 100644 index 000000000000..9de601a448de --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/operations/clusters_operations.py @@ -0,0 +1,528 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ClustersOperations(object): + """ClustersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2017-09-07-privatepreview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-09-07-privatepreview" + + self.config = config + + def get( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + """Gets a Kusto cluster. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Cluster or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.kusto.models.Cluster or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}'} + + + def _create_or_update_initial( + self, resource_group_name, cluster_name, location, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.Cluster(tags=tags, location=location) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Cluster') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Cluster', response) + if response.status_code == 201: + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, cluster_name, location, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or update a Kusto cluster. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param location: The geo-location where the resource lives + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Cluster or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.kusto.models.Cluster] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.kusto.models.Cluster]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + location=location, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}'} + + + def _update_initial( + self, resource_group_name, cluster_name, location=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ClusterUpdate(location=location) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ClusterUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Cluster', response) + if response.status_code == 201: + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, cluster_name, location=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Update a Kusto cluster. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param location: Resource location + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Cluster or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.kusto.models.Cluster] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.kusto.models.Cluster]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + location=location, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Cluster', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}'} + + + def _delete_initial( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a Kusto cluster. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all Kusto clusters within a resource group. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Cluster + :rtype: + ~azure.mgmt.kusto.models.ClusterPaged[~azure.mgmt.kusto.models.Cluster] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ClusterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ClusterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all Kusto clusters within a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Cluster + :rtype: + ~azure.mgmt.kusto.models.ClusterPaged[~azure.mgmt.kusto.models.Cluster] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ClusterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ClusterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/clusters'} diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/operations/databases_operations.py b/azure-mgmt-kusto/azure/mgmt/kusto/operations/databases_operations.py new file mode 100644 index 000000000000..993f4e3b09e7 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/operations/databases_operations.py @@ -0,0 +1,482 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class DatabasesOperations(object): + """DatabasesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2017-09-07-privatepreview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-09-07-privatepreview" + + self.config = config + + def list_by_cluster( + self, resource_group_name, cluster_name, custom_headers=None, raw=False, **operation_config): + """Returns the list of databases of the given Kusto cluster. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Database + :rtype: + ~azure.mgmt.kusto.models.DatabasePaged[~azure.mgmt.kusto.models.Database] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_cluster.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DatabasePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DatabasePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_cluster.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases'} + + def get( + self, resource_group_name, cluster_name, database_name, custom_headers=None, raw=False, **operation_config): + """Returns a database. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param database_name: The name of the database in the Kusto cluster. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Database or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.kusto.models.Database or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Database', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}'} + + + def _create_or_update_initial( + self, resource_group_name, cluster_name, database_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Database') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Database', response) + if response.status_code == 201: + deserialized = self._deserialize('Database', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, cluster_name, database_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a database. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param database_name: The name of the database in the Kusto cluster. + :type database_name: str + :param parameters: The database parameters supplied to the + CreateOrUpdate operation. + :type parameters: ~azure.mgmt.kusto.models.Database + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Database or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.kusto.models.Database] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.kusto.models.Database]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + database_name=database_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Database', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}'} + + + def _update_initial( + self, resource_group_name, cluster_name, database_name, soft_delete_period_in_days, location=None, custom_headers=None, raw=False, **operation_config): + parameters = models.DatabaseUpdate(location=location, soft_delete_period_in_days=soft_delete_period_in_days) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DatabaseUpdate') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Database', response) + if response.status_code == 201: + deserialized = self._deserialize('Database', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, cluster_name, database_name, soft_delete_period_in_days, location=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a database. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param database_name: The name of the database in the Kusto cluster. + :type database_name: str + :param soft_delete_period_in_days: The number of days data should be + kept before it stops being accessible to queries. + :type soft_delete_period_in_days: int + :param location: Resource location + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Database or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.kusto.models.Database] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.kusto.models.Database]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + database_name=database_name, + soft_delete_period_in_days=soft_delete_period_in_days, + location=location, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Database', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}'} + + + def _delete_initial( + self, resource_group_name, cluster_name, database_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'clusterName': self._serialize.url("cluster_name", cluster_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, cluster_name, database_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the database with the given name. + + :param resource_group_name: The name of the resource group containing + the Kusto cluster. + :type resource_group_name: str + :param cluster_name: The name of the Kusto cluster. + :type cluster_name: str + :param database_name: The name of the database in the Kusto cluster. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cluster_name=cluster_name, + database_name=database_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}'} diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/operations/operations.py b/azure-mgmt-kusto/azure/mgmt/kusto/operations/operations.py new file mode 100644 index 000000000000..37750b3f7aa9 --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/operations/operations.py @@ -0,0 +1,98 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2017-09-07-privatepreview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-09-07-privatepreview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists available operations for the Microsoft.Kusto provider. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.kusto.models.OperationPaged[~azure.mgmt.kusto.models.Operation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.Kusto/operations'} diff --git a/azure-mgmt-kusto/azure/mgmt/kusto/version.py b/azure-mgmt-kusto/azure/mgmt/kusto/version.py new file mode 100644 index 000000000000..e0ec669828cb --- /dev/null +++ b/azure-mgmt-kusto/azure/mgmt/kusto/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "0.1.0" + diff --git a/azure-mgmt-kusto/sdk_packaging.toml b/azure-mgmt-kusto/sdk_packaging.toml new file mode 100644 index 000000000000..c11ab78a8dc9 --- /dev/null +++ b/azure-mgmt-kusto/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-kusto" +package_pprint_name = "Kusto Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-kusto/setup.cfg b/azure-mgmt-kusto/setup.cfg new file mode 100644 index 000000000000..3c6e79cf31da --- /dev/null +++ b/azure-mgmt-kusto/setup.cfg @@ -0,0 +1,2 @@ +[bdist_wheel] +universal=1 diff --git a/azure-mgmt-kusto/setup.py b/azure-mgmt-kusto/setup.py new file mode 100644 index 000000000000..112eab2cff1b --- /dev/null +++ b/azure-mgmt-kusto/setup.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python + +#------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +#-------------------------------------------------------------------------- + +import re +import os.path +from io import open +from setuptools import find_packages, setup + +# Change the PACKAGE_NAME only to change folder and different name +PACKAGE_NAME = "azure-mgmt-kusto" +PACKAGE_PPRINT_NAME = "Kusto Management" + +# a-b-c => a/b/c +package_folder_path = PACKAGE_NAME.replace('-', '/') +# a-b-c => a.b.c +namespace_name = PACKAGE_NAME.replace('-', '.') + +# azure v0.x is not compatible with this package +# azure v0.x used to have a __version__ attribute (newer versions don't) +try: + import azure + try: + ver = azure.__version__ + raise Exception( + 'This package is incompatible with azure=={}. '.format(ver) + + 'Uninstall it with "pip uninstall azure".' + ) + except AttributeError: + pass +except ImportError: + pass + +# Version extraction inspired from 'requests' +with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: + version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', + fd.read(), re.MULTILINE).group(1) + +if not version: + raise RuntimeError('Cannot find version information') + +with open('README.rst', encoding='utf-8') as f: + readme = f.read() +with open('HISTORY.rst', encoding='utf-8') as f: + history = f.read() + +setup( + name=PACKAGE_NAME, + version=version, + description='Microsoft Azure {} Client Library for Python'.format(PACKAGE_PPRINT_NAME), + long_description=readme + '\n\n' + history, + license='MIT License', + author='Microsoft Corporation', + author_email='azpysdkhelp@microsoft.com', + url='https://github.com/Azure/azure-sdk-for-python', + classifiers=[ + 'Development Status :: 4 - Beta', + 'Programming Language :: Python', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'License :: OSI Approved :: MIT License', + ], + zip_safe=False, + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), + install_requires=[ + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', + 'azure-common~=1.1', + ], + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } +) diff --git a/azure-mgmt-loganalytics/MANIFEST.in b/azure-mgmt-loganalytics/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-loganalytics/MANIFEST.in +++ b/azure-mgmt-loganalytics/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-loganalytics/README.rst b/azure-mgmt-loganalytics/README.rst index b2a999cb07a1..1dfa343cdad7 100644 --- a/azure-mgmt-loganalytics/README.rst +++ b/azure-mgmt-loganalytics/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Log Analytics Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-loganalytics/azure/__init__.py b/azure-mgmt-loganalytics/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-loganalytics/azure/__init__.py +++ b/azure-mgmt-loganalytics/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-loganalytics/azure/mgmt/__init__.py b/azure-mgmt-loganalytics/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-loganalytics/azure/mgmt/__init__.py +++ b/azure-mgmt-loganalytics/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-loganalytics/azure_bdist_wheel.py b/azure-mgmt-loganalytics/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-loganalytics/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-loganalytics/setup.cfg b/azure-mgmt-loganalytics/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-loganalytics/setup.cfg +++ b/azure-mgmt-loganalytics/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-loganalytics/setup.py b/azure-mgmt-loganalytics/setup.py index 96f4ca887a06..1b9006391b22 100644 --- a/azure-mgmt-loganalytics/setup.py +++ b/azure-mgmt-loganalytics/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-loganalytics" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-logic/MANIFEST.in b/azure-mgmt-logic/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-logic/MANIFEST.in +++ b/azure-mgmt-logic/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-logic/README.rst b/azure-mgmt-logic/README.rst index 095902143154..c380cdb9816d 100644 --- a/azure-mgmt-logic/README.rst +++ b/azure-mgmt-logic/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Logic Apps Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-logic/azure/__init__.py b/azure-mgmt-logic/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-logic/azure/__init__.py +++ b/azure-mgmt-logic/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-logic/azure/mgmt/__init__.py b/azure-mgmt-logic/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-logic/azure/mgmt/__init__.py +++ b/azure-mgmt-logic/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-logic/azure_bdist_wheel.py b/azure-mgmt-logic/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-logic/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-logic/setup.cfg b/azure-mgmt-logic/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-logic/setup.cfg +++ b/azure-mgmt-logic/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-logic/setup.py b/azure-mgmt-logic/setup.py index 17ac0d37f0d3..760812b2cf0b 100644 --- a/azure-mgmt-logic/setup.py +++ b/azure-mgmt-logic/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-logic" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-machinelearningcompute/MANIFEST.in b/azure-mgmt-machinelearningcompute/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-machinelearningcompute/MANIFEST.in +++ b/azure-mgmt-machinelearningcompute/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-machinelearningcompute/README.rst b/azure-mgmt-machinelearningcompute/README.rst index 2faf43ef630d..dc9bdb64b890 100644 --- a/azure-mgmt-machinelearningcompute/README.rst +++ b/azure-mgmt-machinelearningcompute/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Machine Learning Compute Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-machinelearningcompute/azure/__init__.py b/azure-mgmt-machinelearningcompute/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-machinelearningcompute/azure/__init__.py +++ b/azure-mgmt-machinelearningcompute/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-machinelearningcompute/azure/mgmt/__init__.py b/azure-mgmt-machinelearningcompute/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-machinelearningcompute/azure/mgmt/__init__.py +++ b/azure-mgmt-machinelearningcompute/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-machinelearningcompute/azure_bdist_wheel.py b/azure-mgmt-machinelearningcompute/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-machinelearningcompute/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-machinelearningcompute/setup.cfg b/azure-mgmt-machinelearningcompute/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-machinelearningcompute/setup.cfg +++ b/azure-mgmt-machinelearningcompute/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-machinelearningcompute/setup.py b/azure-mgmt-machinelearningcompute/setup.py index dd0ec4d9388e..3c98c5242388 100644 --- a/azure-mgmt-machinelearningcompute/setup.py +++ b/azure-mgmt-machinelearningcompute/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-machinelearningcompute" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-managementgroups/MANIFEST.in b/azure-mgmt-managementgroups/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-managementgroups/MANIFEST.in +++ b/azure-mgmt-managementgroups/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-managementgroups/README.rst b/azure-mgmt-managementgroups/README.rst index 972b9e4942b3..706430e52cfc 100644 --- a/azure-mgmt-managementgroups/README.rst +++ b/azure-mgmt-managementgroups/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Management Groups Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-managementgroups/azure/__init__.py b/azure-mgmt-managementgroups/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-managementgroups/azure/__init__.py +++ b/azure-mgmt-managementgroups/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-managementgroups/azure/mgmt/__init__.py b/azure-mgmt-managementgroups/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-managementgroups/azure/mgmt/__init__.py +++ b/azure-mgmt-managementgroups/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-managementgroups/azure_bdist_wheel.py b/azure-mgmt-managementgroups/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-managementgroups/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-managementgroups/setup.cfg b/azure-mgmt-managementgroups/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-managementgroups/setup.cfg +++ b/azure-mgmt-managementgroups/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-managementgroups/setup.py b/azure-mgmt-managementgroups/setup.py index 0149e4864dfa..1c1d1caa9200 100644 --- a/azure-mgmt-managementgroups/setup.py +++ b/azure-mgmt-managementgroups/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-managementgroups" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-managementpartner/MANIFEST.in b/azure-mgmt-managementpartner/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-managementpartner/MANIFEST.in +++ b/azure-mgmt-managementpartner/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-managementpartner/README.rst b/azure-mgmt-managementpartner/README.rst index d1e577c52b27..1a9601ca680c 100644 --- a/azure-mgmt-managementpartner/README.rst +++ b/azure-mgmt-managementpartner/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure ManagementPartner Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -36,7 +36,9 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -no examples yet +For code examples, see `ManagementPartner Management +`__ +on docs.microsoft.com. Provide Feedback diff --git a/azure-mgmt-managementpartner/azure/__init__.py b/azure-mgmt-managementpartner/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-managementpartner/azure/__init__.py +++ b/azure-mgmt-managementpartner/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-managementpartner/azure/mgmt/__init__.py b/azure-mgmt-managementpartner/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-managementpartner/azure/mgmt/__init__.py +++ b/azure-mgmt-managementpartner/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-managementpartner/azure_bdist_wheel.py b/azure-mgmt-managementpartner/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-managementpartner/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-managementpartner/sdk_packaging.toml b/azure-mgmt-managementpartner/sdk_packaging.toml new file mode 100644 index 000000000000..c3130a663044 --- /dev/null +++ b/azure-mgmt-managementpartner/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-managementpartner" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "ManagementPartner Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-managementpartner/setup.cfg b/azure-mgmt-managementpartner/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-managementpartner/setup.cfg +++ b/azure-mgmt-managementpartner/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-managementpartner/setup.py b/azure-mgmt-managementpartner/setup.py index 0691da19ad35..4f2d5c01c87a 100644 --- a/azure-mgmt-managementpartner/setup.py +++ b/azure-mgmt-managementpartner/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-managementpartner" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-maps/MANIFEST.in b/azure-mgmt-maps/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-maps/MANIFEST.in +++ b/azure-mgmt-maps/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-maps/README.rst b/azure-mgmt-maps/README.rst index dce98f14d369..b5d13ab9f75c 100644 --- a/azure-mgmt-maps/README.rst +++ b/azure-mgmt-maps/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Maps Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Maps -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-maps/azure/__init__.py b/azure-mgmt-maps/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-maps/azure/__init__.py +++ b/azure-mgmt-maps/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-maps/azure/mgmt/__init__.py b/azure-mgmt-maps/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-maps/azure/mgmt/__init__.py +++ b/azure-mgmt-maps/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-maps/azure_bdist_wheel.py b/azure-mgmt-maps/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-maps/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-maps/sdk_packaging.toml b/azure-mgmt-maps/sdk_packaging.toml new file mode 100644 index 000000000000..d5bdfdc4180e --- /dev/null +++ b/azure-mgmt-maps/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-maps" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Maps" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-maps/setup.cfg b/azure-mgmt-maps/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-maps/setup.cfg +++ b/azure-mgmt-maps/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-maps/setup.py b/azure-mgmt-maps/setup.py index c9454a079e72..b2a19d8b995d 100644 --- a/azure-mgmt-maps/setup.py +++ b/azure-mgmt-maps/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-maps" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-marketplaceordering/MANIFEST.in b/azure-mgmt-marketplaceordering/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-marketplaceordering/MANIFEST.in +++ b/azure-mgmt-marketplaceordering/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-marketplaceordering/README.rst b/azure-mgmt-marketplaceordering/README.rst index 328e2c3e28f5..beb100b029fc 100644 --- a/azure-mgmt-marketplaceordering/README.rst +++ b/azure-mgmt-marketplaceordering/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Market Place Ordering Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Market Place Ordering -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-marketplaceordering/azure/__init__.py b/azure-mgmt-marketplaceordering/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-marketplaceordering/azure/__init__.py +++ b/azure-mgmt-marketplaceordering/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-marketplaceordering/azure/mgmt/__init__.py b/azure-mgmt-marketplaceordering/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-marketplaceordering/azure/mgmt/__init__.py +++ b/azure-mgmt-marketplaceordering/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-marketplaceordering/azure_bdist_wheel.py b/azure-mgmt-marketplaceordering/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-marketplaceordering/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-marketplaceordering/sdk_packaging.toml b/azure-mgmt-marketplaceordering/sdk_packaging.toml new file mode 100644 index 000000000000..11e17b4459cd --- /dev/null +++ b/azure-mgmt-marketplaceordering/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-marketplaceordering" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Market Place Ordering" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-marketplaceordering/setup.cfg b/azure-mgmt-marketplaceordering/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-marketplaceordering/setup.cfg +++ b/azure-mgmt-marketplaceordering/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-marketplaceordering/setup.py b/azure-mgmt-marketplaceordering/setup.py index 7d54ced52576..14af2b977719 100644 --- a/azure-mgmt-marketplaceordering/setup.py +++ b/azure-mgmt-marketplaceordering/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-marketplaceordering" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-media/HISTORY.rst b/azure-mgmt-media/HISTORY.rst index 24ce8046dc59..97ccf71a7892 100644 --- a/azure-mgmt-media/HISTORY.rst +++ b/azure-mgmt-media/HISTORY.rst @@ -3,6 +3,44 @@ Release History =============== +1.0.1 (2018-10-16) +++++++++++++++++++ + +**Bugfix** + +- Fix sdist broken in 1.0.0. No code change. + +1.0.0 (2018-10-03) +++++++++++++++++++ + +**Features** + +- Model JobOutput has a new parameter label +- Model StreamingLocatorContentKey has a new parameter label_reference_in_streaming_policy +- Model Operation has a new parameter origin +- Model Operation has a new parameter properties +- Model VideoAnalyzerPreset has a new parameter insights_to_extract +- Model LiveEventInput has a new parameter access_control +- Model JobOutputAsset has a new parameter label +- Added operation AssetsOperations.list_streaming_locators +- Added operation JobsOperations.update +- Added operation group AssetFiltersOperations +- Added operation group AccountFiltersOperations + +**Breaking changes** + +- Parameter scale_units of model StreamingEndpoint is now required +- Model StreamingLocatorContentKey no longer has parameter label +- Model VideoAnalyzerPreset no longer has parameter audio_insights_only +- Model JobInput no longer has parameter label +- Model JobInputs no longer has parameter label + +API version endpoint is now 2018-07-01 + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + 1.0.0rc2 (2018-07-19) +++++++++++++++++++++ diff --git a/azure-mgmt-media/MANIFEST.in b/azure-mgmt-media/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-media/MANIFEST.in +++ b/azure-mgmt-media/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-media/azure/__init__.py b/azure-mgmt-media/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-media/azure/__init__.py +++ b/azure-mgmt-media/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-media/azure/mgmt/__init__.py b/azure-mgmt-media/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-media/azure/mgmt/__init__.py +++ b/azure-mgmt-media/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-media/azure/mgmt/media/azure_media_services.py b/azure-mgmt-media/azure/mgmt/media/azure_media_services.py index 746a9a325e6d..e62aea9c5796 100644 --- a/azure-mgmt-media/azure/mgmt/media/azure_media_services.py +++ b/azure-mgmt-media/azure/mgmt/media/azure_media_services.py @@ -13,10 +13,12 @@ from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION +from .operations.account_filters_operations import AccountFiltersOperations from .operations.operations import Operations from .operations.mediaservices_operations import MediaservicesOperations from .operations.locations_operations import LocationsOperations from .operations.assets_operations import AssetsOperations +from .operations.asset_filters_operations import AssetFiltersOperations from .operations.content_key_policies_operations import ContentKeyPoliciesOperations from .operations.transforms_operations import TransformsOperations from .operations.jobs_operations import JobsOperations @@ -67,6 +69,8 @@ class AzureMediaServices(SDKClient): :ivar config: Configuration for client. :vartype config: AzureMediaServicesConfiguration + :ivar account_filters: AccountFilters operations + :vartype account_filters: azure.mgmt.media.operations.AccountFiltersOperations :ivar operations: Operations operations :vartype operations: azure.mgmt.media.operations.Operations :ivar mediaservices: Mediaservices operations @@ -75,6 +79,8 @@ class AzureMediaServices(SDKClient): :vartype locations: azure.mgmt.media.operations.LocationsOperations :ivar assets: Assets operations :vartype assets: azure.mgmt.media.operations.AssetsOperations + :ivar asset_filters: AssetFilters operations + :vartype asset_filters: azure.mgmt.media.operations.AssetFiltersOperations :ivar content_key_policies: ContentKeyPolicies operations :vartype content_key_policies: azure.mgmt.media.operations.ContentKeyPoliciesOperations :ivar transforms: Transforms operations @@ -108,10 +114,12 @@ def __init__( super(AzureMediaServices, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} - self.api_version = '2018-06-01-preview' + self.api_version = '2018-07-01' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) + self.account_filters = AccountFiltersOperations( + self._client, self.config, self._serialize, self._deserialize) self.operations = Operations( self._client, self.config, self._serialize, self._deserialize) self.mediaservices = MediaservicesOperations( @@ -120,6 +128,8 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.assets = AssetsOperations( self._client, self.config, self._serialize, self._deserialize) + self.asset_filters = AssetFiltersOperations( + self._client, self.config, self._serialize, self._deserialize) self.content_key_policies = ContentKeyPoliciesOperations( self._client, self.config, self._serialize, self._deserialize) self.transforms = TransformsOperations( diff --git a/azure-mgmt-media/azure/mgmt/media/models/__init__.py b/azure-mgmt-media/azure/mgmt/media/models/__init__.py index d07fed7bfdb1..313de9af0224 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/__init__.py +++ b/azure-mgmt-media/azure/mgmt/media/models/__init__.py @@ -10,8 +10,22 @@ # -------------------------------------------------------------------------- try: + from .presentation_time_range_py3 import PresentationTimeRange + from .filter_track_property_condition_py3 import FilterTrackPropertyCondition + from .first_quality_py3 import FirstQuality + from .filter_track_selection_py3 import FilterTrackSelection + from .account_filter_py3 import AccountFilter + from .odata_error_py3 import ODataError + from .api_error_py3 import ApiError, ApiErrorException + from .tracked_resource_py3 import TrackedResource + from .resource_py3 import Resource + from .proxy_resource_py3 import ProxyResource from .provider_py3 import Provider from .operation_display_py3 import OperationDisplay + from .metric_dimension_py3 import MetricDimension + from .metric_py3 import Metric + from .service_specification_py3 import ServiceSpecification + from .metric_properties_py3 import MetricProperties from .operation_py3 import Operation from .location_py3 import Location from .entity_name_availability_check_output_py3 import EntityNameAvailabilityCheckOutput @@ -19,15 +33,14 @@ from .sync_storage_keys_input_py3 import SyncStorageKeysInput from .media_service_py3 import MediaService from .subscription_media_service_py3 import SubscriptionMediaService - from .odata_error_py3 import ODataError - from .api_error_py3 import ApiError, ApiErrorException from .check_name_availability_input_py3 import CheckNameAvailabilityInput - from .proxy_resource_py3 import ProxyResource - from .resource_py3 import Resource - from .tracked_resource_py3 import TrackedResource from .asset_container_sas_py3 import AssetContainerSas - from .asset_storage_encryption_key_py3 import AssetStorageEncryptionKey + from .asset_file_encryption_metadata_py3 import AssetFileEncryptionMetadata + from .storage_encrypted_asset_decryption_data_py3 import StorageEncryptedAssetDecryptionData + from .asset_streaming_locator_py3 import AssetStreamingLocator + from .list_streaming_locators_response_py3 import ListStreamingLocatorsResponse from .asset_py3 import Asset + from .asset_filter_py3 import AssetFilter from .list_container_sas_input_py3 import ListContainerSasInput from .content_key_policy_play_ready_explicit_analog_television_restriction_py3 import ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction from .content_key_policy_play_ready_content_key_location_py3 import ContentKeyPolicyPlayReadyContentKeyLocation @@ -123,9 +136,10 @@ from .hls_py3 import Hls from .live_output_py3 import LiveOutput from .live_event_endpoint_py3 import LiveEventEndpoint - from .live_event_input_py3 import LiveEventInput from .ip_range_py3 import IPRange from .ip_access_control_py3 import IPAccessControl + from .live_event_input_access_control_py3 import LiveEventInputAccessControl + from .live_event_input_py3 import LiveEventInput from .live_event_preview_access_control_py3 import LiveEventPreviewAccessControl from .live_event_preview_py3 import LiveEventPreview from .live_event_encoding_py3 import LiveEventEncoding @@ -138,8 +152,22 @@ from .streaming_entity_scale_unit_py3 import StreamingEntityScaleUnit from .streaming_endpoint_py3 import StreamingEndpoint except (SyntaxError, ImportError): + from .presentation_time_range import PresentationTimeRange + from .filter_track_property_condition import FilterTrackPropertyCondition + from .first_quality import FirstQuality + from .filter_track_selection import FilterTrackSelection + from .account_filter import AccountFilter + from .odata_error import ODataError + from .api_error import ApiError, ApiErrorException + from .tracked_resource import TrackedResource + from .resource import Resource + from .proxy_resource import ProxyResource from .provider import Provider from .operation_display import OperationDisplay + from .metric_dimension import MetricDimension + from .metric import Metric + from .service_specification import ServiceSpecification + from .metric_properties import MetricProperties from .operation import Operation from .location import Location from .entity_name_availability_check_output import EntityNameAvailabilityCheckOutput @@ -147,15 +175,14 @@ from .sync_storage_keys_input import SyncStorageKeysInput from .media_service import MediaService from .subscription_media_service import SubscriptionMediaService - from .odata_error import ODataError - from .api_error import ApiError, ApiErrorException from .check_name_availability_input import CheckNameAvailabilityInput - from .proxy_resource import ProxyResource - from .resource import Resource - from .tracked_resource import TrackedResource from .asset_container_sas import AssetContainerSas - from .asset_storage_encryption_key import AssetStorageEncryptionKey + from .asset_file_encryption_metadata import AssetFileEncryptionMetadata + from .storage_encrypted_asset_decryption_data import StorageEncryptedAssetDecryptionData + from .asset_streaming_locator import AssetStreamingLocator + from .list_streaming_locators_response import ListStreamingLocatorsResponse from .asset import Asset + from .asset_filter import AssetFilter from .list_container_sas_input import ListContainerSasInput from .content_key_policy_play_ready_explicit_analog_television_restriction import ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction from .content_key_policy_play_ready_content_key_location import ContentKeyPolicyPlayReadyContentKeyLocation @@ -251,9 +278,10 @@ from .hls import Hls from .live_output import LiveOutput from .live_event_endpoint import LiveEventEndpoint - from .live_event_input import LiveEventInput from .ip_range import IPRange from .ip_access_control import IPAccessControl + from .live_event_input_access_control import LiveEventInputAccessControl + from .live_event_input import LiveEventInput from .live_event_preview_access_control import LiveEventPreviewAccessControl from .live_event_preview import LiveEventPreview from .live_event_encoding import LiveEventEncoding @@ -265,10 +293,12 @@ from .streaming_endpoint_access_control import StreamingEndpointAccessControl from .streaming_entity_scale_unit import StreamingEntityScaleUnit from .streaming_endpoint import StreamingEndpoint +from .account_filter_paged import AccountFilterPaged from .operation_paged import OperationPaged from .media_service_paged import MediaServicePaged from .subscription_media_service_paged import SubscriptionMediaServicePaged from .asset_paged import AssetPaged +from .asset_filter_paged import AssetFilterPaged from .content_key_policy_paged import ContentKeyPolicyPaged from .transform_paged import TransformPaged from .job_paged import JobPaged @@ -278,6 +308,10 @@ from .live_output_paged import LiveOutputPaged from .streaming_endpoint_paged import StreamingEndpointPaged from .azure_media_services_enums import ( + FilterTrackPropertyType, + FilterTrackPropertyCompareOperation, + MetricUnit, + MetricAggregationType, StorageAccountType, AssetStorageEncryptionFormat, AssetContainerPermission, @@ -295,6 +329,7 @@ EntropyMode, H264Complexity, EncoderNamedPreset, + InsightsType, OnErrorType, Priority, JobErrorCode, @@ -315,8 +350,22 @@ ) __all__ = [ + 'PresentationTimeRange', + 'FilterTrackPropertyCondition', + 'FirstQuality', + 'FilterTrackSelection', + 'AccountFilter', + 'ODataError', + 'ApiError', 'ApiErrorException', + 'TrackedResource', + 'Resource', + 'ProxyResource', 'Provider', 'OperationDisplay', + 'MetricDimension', + 'Metric', + 'ServiceSpecification', + 'MetricProperties', 'Operation', 'Location', 'EntityNameAvailabilityCheckOutput', @@ -324,15 +373,14 @@ 'SyncStorageKeysInput', 'MediaService', 'SubscriptionMediaService', - 'ODataError', - 'ApiError', 'ApiErrorException', 'CheckNameAvailabilityInput', - 'ProxyResource', - 'Resource', - 'TrackedResource', 'AssetContainerSas', - 'AssetStorageEncryptionKey', + 'AssetFileEncryptionMetadata', + 'StorageEncryptedAssetDecryptionData', + 'AssetStreamingLocator', + 'ListStreamingLocatorsResponse', 'Asset', + 'AssetFilter', 'ListContainerSasInput', 'ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction', 'ContentKeyPolicyPlayReadyContentKeyLocation', @@ -428,9 +476,10 @@ 'Hls', 'LiveOutput', 'LiveEventEndpoint', - 'LiveEventInput', 'IPRange', 'IPAccessControl', + 'LiveEventInputAccessControl', + 'LiveEventInput', 'LiveEventPreviewAccessControl', 'LiveEventPreview', 'LiveEventEncoding', @@ -442,10 +491,12 @@ 'StreamingEndpointAccessControl', 'StreamingEntityScaleUnit', 'StreamingEndpoint', + 'AccountFilterPaged', 'OperationPaged', 'MediaServicePaged', 'SubscriptionMediaServicePaged', 'AssetPaged', + 'AssetFilterPaged', 'ContentKeyPolicyPaged', 'TransformPaged', 'JobPaged', @@ -454,6 +505,10 @@ 'LiveEventPaged', 'LiveOutputPaged', 'StreamingEndpointPaged', + 'FilterTrackPropertyType', + 'FilterTrackPropertyCompareOperation', + 'MetricUnit', + 'MetricAggregationType', 'StorageAccountType', 'AssetStorageEncryptionFormat', 'AssetContainerPermission', @@ -471,6 +526,7 @@ 'EntropyMode', 'H264Complexity', 'EncoderNamedPreset', + 'InsightsType', 'OnErrorType', 'Priority', 'JobErrorCode', diff --git a/azure-mgmt-media/azure/mgmt/media/models/account_filter.py b/azure-mgmt-media/azure/mgmt/media/models/account_filter.py new file mode 100644 index 000000000000..1fbb17b33478 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/account_filter.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class AccountFilter(ProxyResource): + """An Account Filter. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource ID for the resource. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param presentation_time_range: The presentation time range. + :type presentation_time_range: + ~azure.mgmt.media.models.PresentationTimeRange + :param first_quality: The first quality. + :type first_quality: ~azure.mgmt.media.models.FirstQuality + :param tracks: The tracks selection conditions. + :type tracks: list[~azure.mgmt.media.models.FilterTrackSelection] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'presentation_time_range': {'key': 'properties.presentationTimeRange', 'type': 'PresentationTimeRange'}, + 'first_quality': {'key': 'properties.firstQuality', 'type': 'FirstQuality'}, + 'tracks': {'key': 'properties.tracks', 'type': '[FilterTrackSelection]'}, + } + + def __init__(self, **kwargs): + super(AccountFilter, self).__init__(**kwargs) + self.presentation_time_range = kwargs.get('presentation_time_range', None) + self.first_quality = kwargs.get('first_quality', None) + self.tracks = kwargs.get('tracks', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/account_filter_paged.py b/azure-mgmt-media/azure/mgmt/media/models/account_filter_paged.py new file mode 100644 index 000000000000..85be59b48d21 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/account_filter_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AccountFilterPaged(Paged): + """ + A paging container for iterating over a list of :class:`AccountFilter ` object + """ + + _attribute_map = { + 'next_link': {'key': '@odata\\.nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AccountFilter]'} + } + + def __init__(self, *args, **kwargs): + + super(AccountFilterPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-media/azure/mgmt/media/models/account_filter_py3.py b/azure-mgmt-media/azure/mgmt/media/models/account_filter_py3.py new file mode 100644 index 000000000000..ad44b4042617 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/account_filter_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class AccountFilter(ProxyResource): + """An Account Filter. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource ID for the resource. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param presentation_time_range: The presentation time range. + :type presentation_time_range: + ~azure.mgmt.media.models.PresentationTimeRange + :param first_quality: The first quality. + :type first_quality: ~azure.mgmt.media.models.FirstQuality + :param tracks: The tracks selection conditions. + :type tracks: list[~azure.mgmt.media.models.FilterTrackSelection] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'presentation_time_range': {'key': 'properties.presentationTimeRange', 'type': 'PresentationTimeRange'}, + 'first_quality': {'key': 'properties.firstQuality', 'type': 'FirstQuality'}, + 'tracks': {'key': 'properties.tracks', 'type': '[FilterTrackSelection]'}, + } + + def __init__(self, *, presentation_time_range=None, first_quality=None, tracks=None, **kwargs) -> None: + super(AccountFilter, self).__init__(**kwargs) + self.presentation_time_range = presentation_time_range + self.first_quality = first_quality + self.tracks = tracks diff --git a/azure-mgmt-media/azure/mgmt/media/models/akamai_signature_header_authentication_key.py b/azure-mgmt-media/azure/mgmt/media/models/akamai_signature_header_authentication_key.py index 72aae07435fd..a8f5cf92b2a1 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/akamai_signature_header_authentication_key.py +++ b/azure-mgmt-media/azure/mgmt/media/models/akamai_signature_header_authentication_key.py @@ -19,7 +19,7 @@ class AkamaiSignatureHeaderAuthenticationKey(Model): :type identifier: str :param base64_key: authentication key :type base64_key: str - :param expiration: The exact time the authentication key. + :param expiration: The expiration time of the authentication key. :type expiration: datetime """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/akamai_signature_header_authentication_key_py3.py b/azure-mgmt-media/azure/mgmt/media/models/akamai_signature_header_authentication_key_py3.py index 3e8a54eb85f9..ca8fcf6ec53c 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/akamai_signature_header_authentication_key_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/akamai_signature_header_authentication_key_py3.py @@ -19,7 +19,7 @@ class AkamaiSignatureHeaderAuthenticationKey(Model): :type identifier: str :param base64_key: authentication key :type base64_key: str - :param expiration: The exact time the authentication key. + :param expiration: The expiration time of the authentication key. :type expiration: datetime """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/api_error.py b/azure-mgmt-media/azure/mgmt/media/models/api_error.py index 2f1bcdff16e7..0443e9b1e04a 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/api_error.py +++ b/azure-mgmt-media/azure/mgmt/media/models/api_error.py @@ -16,7 +16,7 @@ class ApiError(Model): """The API error. - :param error: The error properties. + :param error: ApiError. The error properties. :type error: ~azure.mgmt.media.models.ODataError """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/api_error_py3.py b/azure-mgmt-media/azure/mgmt/media/models/api_error_py3.py index b73c93202d2b..ba67fd69a832 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/api_error_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/api_error_py3.py @@ -16,7 +16,7 @@ class ApiError(Model): """The API error. - :param error: The error properties. + :param error: ApiError. The error properties. :type error: ~azure.mgmt.media.models.ODataError """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_file_encryption_metadata.py b/azure-mgmt-media/azure/mgmt/media/models/asset_file_encryption_metadata.py new file mode 100644 index 000000000000..5c10d567373d --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/asset_file_encryption_metadata.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AssetFileEncryptionMetadata(Model): + """The Asset File Storage encryption metadata. + + All required parameters must be populated in order to send to Azure. + + :param initialization_vector: The Asset File initialization vector. + :type initialization_vector: str + :param asset_file_name: The Asset File name. + :type asset_file_name: str + :param asset_file_id: Required. The Asset File Id. + :type asset_file_id: str + """ + + _validation = { + 'asset_file_id': {'required': True}, + } + + _attribute_map = { + 'initialization_vector': {'key': 'initializationVector', 'type': 'str'}, + 'asset_file_name': {'key': 'assetFileName', 'type': 'str'}, + 'asset_file_id': {'key': 'assetFileId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AssetFileEncryptionMetadata, self).__init__(**kwargs) + self.initialization_vector = kwargs.get('initialization_vector', None) + self.asset_file_name = kwargs.get('asset_file_name', None) + self.asset_file_id = kwargs.get('asset_file_id', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_file_encryption_metadata_py3.py b/azure-mgmt-media/azure/mgmt/media/models/asset_file_encryption_metadata_py3.py new file mode 100644 index 000000000000..e4e0fd18382e --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/asset_file_encryption_metadata_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AssetFileEncryptionMetadata(Model): + """The Asset File Storage encryption metadata. + + All required parameters must be populated in order to send to Azure. + + :param initialization_vector: The Asset File initialization vector. + :type initialization_vector: str + :param asset_file_name: The Asset File name. + :type asset_file_name: str + :param asset_file_id: Required. The Asset File Id. + :type asset_file_id: str + """ + + _validation = { + 'asset_file_id': {'required': True}, + } + + _attribute_map = { + 'initialization_vector': {'key': 'initializationVector', 'type': 'str'}, + 'asset_file_name': {'key': 'assetFileName', 'type': 'str'}, + 'asset_file_id': {'key': 'assetFileId', 'type': 'str'}, + } + + def __init__(self, *, asset_file_id: str, initialization_vector: str=None, asset_file_name: str=None, **kwargs) -> None: + super(AssetFileEncryptionMetadata, self).__init__(**kwargs) + self.initialization_vector = initialization_vector + self.asset_file_name = asset_file_name + self.asset_file_id = asset_file_id diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_filter.py b/azure-mgmt-media/azure/mgmt/media/models/asset_filter.py new file mode 100644 index 000000000000..3ce9ac059845 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/asset_filter.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class AssetFilter(ProxyResource): + """An Asset Filter. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource ID for the resource. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param presentation_time_range: The presentation time range. + :type presentation_time_range: + ~azure.mgmt.media.models.PresentationTimeRange + :param first_quality: The first quality. + :type first_quality: ~azure.mgmt.media.models.FirstQuality + :param tracks: The tracks selection conditions. + :type tracks: list[~azure.mgmt.media.models.FilterTrackSelection] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'presentation_time_range': {'key': 'properties.presentationTimeRange', 'type': 'PresentationTimeRange'}, + 'first_quality': {'key': 'properties.firstQuality', 'type': 'FirstQuality'}, + 'tracks': {'key': 'properties.tracks', 'type': '[FilterTrackSelection]'}, + } + + def __init__(self, **kwargs): + super(AssetFilter, self).__init__(**kwargs) + self.presentation_time_range = kwargs.get('presentation_time_range', None) + self.first_quality = kwargs.get('first_quality', None) + self.tracks = kwargs.get('tracks', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_filter_paged.py b/azure-mgmt-media/azure/mgmt/media/models/asset_filter_paged.py new file mode 100644 index 000000000000..a4811a6f843b --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/asset_filter_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AssetFilterPaged(Paged): + """ + A paging container for iterating over a list of :class:`AssetFilter ` object + """ + + _attribute_map = { + 'next_link': {'key': '@odata\\.nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AssetFilter]'} + } + + def __init__(self, *args, **kwargs): + + super(AssetFilterPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_filter_py3.py b/azure-mgmt-media/azure/mgmt/media/models/asset_filter_py3.py new file mode 100644 index 000000000000..b502bdd4f2d2 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/asset_filter_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class AssetFilter(ProxyResource): + """An Asset Filter. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource ID for the resource. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. + :vartype type: str + :param presentation_time_range: The presentation time range. + :type presentation_time_range: + ~azure.mgmt.media.models.PresentationTimeRange + :param first_quality: The first quality. + :type first_quality: ~azure.mgmt.media.models.FirstQuality + :param tracks: The tracks selection conditions. + :type tracks: list[~azure.mgmt.media.models.FilterTrackSelection] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'presentation_time_range': {'key': 'properties.presentationTimeRange', 'type': 'PresentationTimeRange'}, + 'first_quality': {'key': 'properties.firstQuality', 'type': 'FirstQuality'}, + 'tracks': {'key': 'properties.tracks', 'type': '[FilterTrackSelection]'}, + } + + def __init__(self, *, presentation_time_range=None, first_quality=None, tracks=None, **kwargs) -> None: + super(AssetFilter, self).__init__(**kwargs) + self.presentation_time_range = presentation_time_range + self.first_quality = first_quality + self.tracks = tracks diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_storage_encryption_key.py b/azure-mgmt-media/azure/mgmt/media/models/asset_storage_encryption_key.py deleted file mode 100644 index 33599d1256b4..000000000000 --- a/azure-mgmt-media/azure/mgmt/media/models/asset_storage_encryption_key.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AssetStorageEncryptionKey(Model): - """The Asset Storage encryption key. - - :param storage_encryption_key: The Asset storage encryption key. - :type storage_encryption_key: str - """ - - _attribute_map = { - 'storage_encryption_key': {'key': 'storageEncryptionKey', 'type': 'str'}, - } - - def __init__(self, **kwargs): - super(AssetStorageEncryptionKey, self).__init__(**kwargs) - self.storage_encryption_key = kwargs.get('storage_encryption_key', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_storage_encryption_key_py3.py b/azure-mgmt-media/azure/mgmt/media/models/asset_storage_encryption_key_py3.py deleted file mode 100644 index 510fbb0af58b..000000000000 --- a/azure-mgmt-media/azure/mgmt/media/models/asset_storage_encryption_key_py3.py +++ /dev/null @@ -1,28 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class AssetStorageEncryptionKey(Model): - """The Asset Storage encryption key. - - :param storage_encryption_key: The Asset storage encryption key. - :type storage_encryption_key: str - """ - - _attribute_map = { - 'storage_encryption_key': {'key': 'storageEncryptionKey', 'type': 'str'}, - } - - def __init__(self, *, storage_encryption_key: str=None, **kwargs) -> None: - super(AssetStorageEncryptionKey, self).__init__(**kwargs) - self.storage_encryption_key = storage_encryption_key diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_streaming_locator.py b/azure-mgmt-media/azure/mgmt/media/models/asset_streaming_locator.py new file mode 100644 index 000000000000..836dba6a6dd4 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/asset_streaming_locator.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AssetStreamingLocator(Model): + """Properties of the Streaming Locator. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Streaming Locator name. + :vartype name: str + :ivar asset_name: Asset Name. + :vartype asset_name: str + :ivar created: The creation time of the Streaming Locator. + :vartype created: datetime + :ivar start_time: The start time of the Streaming Locator. + :vartype start_time: datetime + :ivar end_time: The end time of the Streaming Locator. + :vartype end_time: datetime + :ivar streaming_locator_id: StreamingLocatorId of the Streaming Locator. + :vartype streaming_locator_id: str + :ivar streaming_policy_name: Name of the Streaming Policy used by this + Streaming Locator. + :vartype streaming_policy_name: str + :ivar default_content_key_policy_name: Name of the default + ContentKeyPolicy used by this Streaming Locator. + :vartype default_content_key_policy_name: str + """ + + _validation = { + 'name': {'readonly': True}, + 'asset_name': {'readonly': True}, + 'created': {'readonly': True}, + 'start_time': {'readonly': True}, + 'end_time': {'readonly': True}, + 'streaming_locator_id': {'readonly': True}, + 'streaming_policy_name': {'readonly': True}, + 'default_content_key_policy_name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'asset_name': {'key': 'assetName', 'type': 'str'}, + 'created': {'key': 'created', 'type': 'iso-8601'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'streaming_locator_id': {'key': 'streamingLocatorId', 'type': 'str'}, + 'streaming_policy_name': {'key': 'streamingPolicyName', 'type': 'str'}, + 'default_content_key_policy_name': {'key': 'defaultContentKeyPolicyName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AssetStreamingLocator, self).__init__(**kwargs) + self.name = None + self.asset_name = None + self.created = None + self.start_time = None + self.end_time = None + self.streaming_locator_id = None + self.streaming_policy_name = None + self.default_content_key_policy_name = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/asset_streaming_locator_py3.py b/azure-mgmt-media/azure/mgmt/media/models/asset_streaming_locator_py3.py new file mode 100644 index 000000000000..7e0a49d60455 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/asset_streaming_locator_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AssetStreamingLocator(Model): + """Properties of the Streaming Locator. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Streaming Locator name. + :vartype name: str + :ivar asset_name: Asset Name. + :vartype asset_name: str + :ivar created: The creation time of the Streaming Locator. + :vartype created: datetime + :ivar start_time: The start time of the Streaming Locator. + :vartype start_time: datetime + :ivar end_time: The end time of the Streaming Locator. + :vartype end_time: datetime + :ivar streaming_locator_id: StreamingLocatorId of the Streaming Locator. + :vartype streaming_locator_id: str + :ivar streaming_policy_name: Name of the Streaming Policy used by this + Streaming Locator. + :vartype streaming_policy_name: str + :ivar default_content_key_policy_name: Name of the default + ContentKeyPolicy used by this Streaming Locator. + :vartype default_content_key_policy_name: str + """ + + _validation = { + 'name': {'readonly': True}, + 'asset_name': {'readonly': True}, + 'created': {'readonly': True}, + 'start_time': {'readonly': True}, + 'end_time': {'readonly': True}, + 'streaming_locator_id': {'readonly': True}, + 'streaming_policy_name': {'readonly': True}, + 'default_content_key_policy_name': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'asset_name': {'key': 'assetName', 'type': 'str'}, + 'created': {'key': 'created', 'type': 'iso-8601'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'streaming_locator_id': {'key': 'streamingLocatorId', 'type': 'str'}, + 'streaming_policy_name': {'key': 'streamingPolicyName', 'type': 'str'}, + 'default_content_key_policy_name': {'key': 'defaultContentKeyPolicyName', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(AssetStreamingLocator, self).__init__(**kwargs) + self.name = None + self.asset_name = None + self.created = None + self.start_time = None + self.end_time = None + self.streaming_locator_id = None + self.streaming_policy_name = None + self.default_content_key_policy_name = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/audio_analyzer_preset.py b/azure-mgmt-media/azure/mgmt/media/models/audio_analyzer_preset.py index 1333892c607d..9f5f5f61defd 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/audio_analyzer_preset.py +++ b/azure-mgmt-media/azure/mgmt/media/models/audio_analyzer_preset.py @@ -27,7 +27,13 @@ class AudioAnalyzerPreset(Preset): :param audio_language: The language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of supported languages are, 'en-US', 'en-GB', 'es-ES', 'es-MX', 'fr-FR', - 'it-IT', 'ja-JP', 'pt-BR', 'zh-CN'. + 'it-IT', 'ja-JP', 'pt-BR', 'zh-CN', 'de-DE', 'ar-EG', 'ru-RU', 'hi-IN'. If + not specified, automatic language detection would be employed. This + feature currently supports English, Chinese, French, German, Italian, + Japanese, Spanish, Russian, and Portuguese. The automatic detection works + best with audio recordings with clearly discernable speech. If automatic + detection fails to find the language, transcription would fallback to + English. :type audio_language: str """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/audio_analyzer_preset_py3.py b/azure-mgmt-media/azure/mgmt/media/models/audio_analyzer_preset_py3.py index 2f0b32645a49..fb0c4f426094 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/audio_analyzer_preset_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/audio_analyzer_preset_py3.py @@ -27,7 +27,13 @@ class AudioAnalyzerPreset(Preset): :param audio_language: The language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of supported languages are, 'en-US', 'en-GB', 'es-ES', 'es-MX', 'fr-FR', - 'it-IT', 'ja-JP', 'pt-BR', 'zh-CN'. + 'it-IT', 'ja-JP', 'pt-BR', 'zh-CN', 'de-DE', 'ar-EG', 'ru-RU', 'hi-IN'. If + not specified, automatic language detection would be employed. This + feature currently supports English, Chinese, French, German, Italian, + Japanese, Spanish, Russian, and Portuguese. The automatic detection works + best with audio recordings with clearly discernable speech. If automatic + detection fails to find the language, transcription would fallback to + English. :type audio_language: str """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/azure_media_services_enums.py b/azure-mgmt-media/azure/mgmt/media/models/azure_media_services_enums.py index ce57fe502188..6798d1b9d5fe 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/azure_media_services_enums.py +++ b/azure-mgmt-media/azure/mgmt/media/models/azure_media_services_enums.py @@ -12,6 +12,36 @@ from enum import Enum +class FilterTrackPropertyType(str, Enum): + + unknown = "Unknown" #: The unknown track property type. + type = "Type" #: The type. + name = "Name" #: The name. + language = "Language" #: The language. + four_cc = "FourCC" #: The fourCC. + bitrate = "Bitrate" #: The bitrate. + + +class FilterTrackPropertyCompareOperation(str, Enum): + + equal = "Equal" #: The equal operation. + not_equal = "NotEqual" #: The not equal operation. + + +class MetricUnit(str, Enum): + + bytes = "Bytes" #: The number of bytes. + count = "Count" #: The count. + milliseconds = "Milliseconds" #: The number of milliseconds. + + +class MetricAggregationType(str, Enum): + + average = "Average" #: The average. + count = "Count" #: The count of a number of items, usually requests. + total = "Total" #: The sum. + + class StorageAccountType(str, Enum): primary = "Primary" #: The primary storage account for the Media Services account. @@ -131,6 +161,9 @@ class H264Complexity(str, Enum): class EncoderNamedPreset(str, Enum): + h264_single_bitrate_sd = "H264SingleBitrateSD" #: Produces an MP4 file where the video is encoded with H.264 codec at 2200 kbps and a picture height of 480 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps. + h264_single_bitrate720p = "H264SingleBitrate720p" #: Produces an MP4 file where the video is encoded with H.264 codec at 4500 kbps and a picture height of 720 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps. + h264_single_bitrate1080p = "H264SingleBitrate1080p" #: Produces an MP4 file where the video is encoded with H.264 codec at 6750 kbps and a picture height of 1080 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps. adaptive_streaming = "AdaptiveStreaming" #: Produces a set of GOP aligned MP4 files with H.264 video and stereo AAC audio. Auto-generates a bitrate ladder based on the input resolution and bitrate. The auto-generated preset will never exceed the input resolution and bitrate. For example, if the input is 720p at 3 Mbps, output will remain 720p at best, and will start at rates lower than 3 Mbps. The output will will have video and audio in separate MP4 files, which is optimal for adaptive streaming. aac_good_quality_audio = "AACGoodQualityAudio" #: Produces a single MP4 file containing only stereo audio encoded at 192 kbps. h264_multiple_bitrate1080p = "H264MultipleBitrate1080p" #: Produces a set of 8 GOP-aligned MP4 files, ranging from 6000 kbps to 400 kbps, and stereo AAC audio. Resolution starts at 1080p and goes down to 360p. @@ -138,6 +171,13 @@ class EncoderNamedPreset(str, Enum): h264_multiple_bitrate_sd = "H264MultipleBitrateSD" #: Produces a set of 5 GOP-aligned MP4 files, ranging from 1600kbps to 400 kbps, and stereo AAC audio. Resolution starts at 480p and goes down to 360p. +class InsightsType(str, Enum): + + audio_insights_only = "AudioInsightsOnly" #: Generate audio only insights. Ignore video even if present. Fails if no audio is present. + video_insights_only = "VideoInsightsOnly" #: Generate video only insights. Ignore audio if present. Fails if no video is present. + all_insights = "AllInsights" #: Generate both audio and video insights. Fails if either audio or video Insights fail. + + class OnErrorType(str, Enum): stop_processing_job = "StopProcessingJob" #: Tells the service that if this TransformOutput fails, then any other incomplete TransformOutputs can be stopped. diff --git a/azure-mgmt-media/azure/mgmt/media/models/built_in_standard_encoder_preset.py b/azure-mgmt-media/azure/mgmt/media/models/built_in_standard_encoder_preset.py index ca3160283985..e38ec79bbd0d 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/built_in_standard_encoder_preset.py +++ b/azure-mgmt-media/azure/mgmt/media/models/built_in_standard_encoder_preset.py @@ -21,7 +21,8 @@ class BuiltInStandardEncoderPreset(Preset): :param odatatype: Required. Constant filled by server. :type odatatype: str :param preset_name: Required. The built-in preset to be used for encoding - videos. Possible values include: 'AdaptiveStreaming', + videos. Possible values include: 'H264SingleBitrateSD', + 'H264SingleBitrate720p', 'H264SingleBitrate1080p', 'AdaptiveStreaming', 'AACGoodQualityAudio', 'H264MultipleBitrate1080p', 'H264MultipleBitrate720p', 'H264MultipleBitrateSD' :type preset_name: str or ~azure.mgmt.media.models.EncoderNamedPreset diff --git a/azure-mgmt-media/azure/mgmt/media/models/built_in_standard_encoder_preset_py3.py b/azure-mgmt-media/azure/mgmt/media/models/built_in_standard_encoder_preset_py3.py index c9e25be5cff7..f5a25712acd3 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/built_in_standard_encoder_preset_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/built_in_standard_encoder_preset_py3.py @@ -21,7 +21,8 @@ class BuiltInStandardEncoderPreset(Preset): :param odatatype: Required. Constant filled by server. :type odatatype: str :param preset_name: Required. The built-in preset to be used for encoding - videos. Possible values include: 'AdaptiveStreaming', + videos. Possible values include: 'H264SingleBitrateSD', + 'H264SingleBitrate720p', 'H264SingleBitrate1080p', 'AdaptiveStreaming', 'AACGoodQualityAudio', 'H264MultipleBitrate1080p', 'H264MultipleBitrate720p', 'H264MultipleBitrateSD' :type preset_name: str or ~azure.mgmt.media.models.EncoderNamedPreset diff --git a/azure-mgmt-media/azure/mgmt/media/models/content_key_policy_fair_play_configuration.py b/azure-mgmt-media/azure/mgmt/media/models/content_key_policy_fair_play_configuration.py index 41f284bf3af5..c03e24b9d77b 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/content_key_policy_fair_play_configuration.py +++ b/azure-mgmt-media/azure/mgmt/media/models/content_key_policy_fair_play_configuration.py @@ -19,7 +19,8 @@ class ContentKeyPolicyFairPlayConfiguration(ContentKeyPolicyConfiguration): :param odatatype: Required. Constant filled by server. :type odatatype: str - :param ask: Required. The key that must be used as FairPlay ASk. + :param ask: Required. The key that must be used as FairPlay Application + Secret key. :type ask: bytearray :param fair_play_pfx_password: Required. The password encrypting FairPlay certificate in PKCS 12 (pfx) format. diff --git a/azure-mgmt-media/azure/mgmt/media/models/content_key_policy_fair_play_configuration_py3.py b/azure-mgmt-media/azure/mgmt/media/models/content_key_policy_fair_play_configuration_py3.py index b0e4cb88d280..4d97e09b7a34 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/content_key_policy_fair_play_configuration_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/content_key_policy_fair_play_configuration_py3.py @@ -19,7 +19,8 @@ class ContentKeyPolicyFairPlayConfiguration(ContentKeyPolicyConfiguration): :param odatatype: Required. Constant filled by server. :type odatatype: str - :param ask: Required. The key that must be used as FairPlay ASk. + :param ask: Required. The key that must be used as FairPlay Application + Secret key. :type ask: bytearray :param fair_play_pfx_password: Required. The password encrypting FairPlay certificate in PKCS 12 (pfx) format. diff --git a/azure-mgmt-media/azure/mgmt/media/models/filter_track_property_condition.py b/azure-mgmt-media/azure/mgmt/media/models/filter_track_property_condition.py new file mode 100644 index 000000000000..87bdd8310918 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/filter_track_property_condition.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FilterTrackPropertyCondition(Model): + """The class to specify one track property condition. + + All required parameters must be populated in order to send to Azure. + + :param property: Required. The track property type. Possible values + include: 'Unknown', 'Type', 'Name', 'Language', 'FourCC', 'Bitrate' + :type property: str or ~azure.mgmt.media.models.FilterTrackPropertyType + :param value: Required. The track proprty value. + :type value: str + :param operation: Required. The track property condition operation. + Possible values include: 'Equal', 'NotEqual' + :type operation: str or + ~azure.mgmt.media.models.FilterTrackPropertyCompareOperation + """ + + _validation = { + 'property': {'required': True}, + 'value': {'required': True}, + 'operation': {'required': True}, + } + + _attribute_map = { + 'property': {'key': 'property', 'type': 'FilterTrackPropertyType'}, + 'value': {'key': 'value', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'FilterTrackPropertyCompareOperation'}, + } + + def __init__(self, **kwargs): + super(FilterTrackPropertyCondition, self).__init__(**kwargs) + self.property = kwargs.get('property', None) + self.value = kwargs.get('value', None) + self.operation = kwargs.get('operation', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/filter_track_property_condition_py3.py b/azure-mgmt-media/azure/mgmt/media/models/filter_track_property_condition_py3.py new file mode 100644 index 000000000000..e39b0da1bb01 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/filter_track_property_condition_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FilterTrackPropertyCondition(Model): + """The class to specify one track property condition. + + All required parameters must be populated in order to send to Azure. + + :param property: Required. The track property type. Possible values + include: 'Unknown', 'Type', 'Name', 'Language', 'FourCC', 'Bitrate' + :type property: str or ~azure.mgmt.media.models.FilterTrackPropertyType + :param value: Required. The track proprty value. + :type value: str + :param operation: Required. The track property condition operation. + Possible values include: 'Equal', 'NotEqual' + :type operation: str or + ~azure.mgmt.media.models.FilterTrackPropertyCompareOperation + """ + + _validation = { + 'property': {'required': True}, + 'value': {'required': True}, + 'operation': {'required': True}, + } + + _attribute_map = { + 'property': {'key': 'property', 'type': 'FilterTrackPropertyType'}, + 'value': {'key': 'value', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'FilterTrackPropertyCompareOperation'}, + } + + def __init__(self, *, property, value: str, operation, **kwargs) -> None: + super(FilterTrackPropertyCondition, self).__init__(**kwargs) + self.property = property + self.value = value + self.operation = operation diff --git a/azure-mgmt-media/azure/mgmt/media/models/filter_track_selection.py b/azure-mgmt-media/azure/mgmt/media/models/filter_track_selection.py new file mode 100644 index 000000000000..04ad9d71c383 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/filter_track_selection.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FilterTrackSelection(Model): + """Representing a list of FilterTrackPropertyConditions to select a track. + The filters are combined using a logical AND operation. + + All required parameters must be populated in order to send to Azure. + + :param track_selections: Required. The track selections. + :type track_selections: + list[~azure.mgmt.media.models.FilterTrackPropertyCondition] + """ + + _validation = { + 'track_selections': {'required': True}, + } + + _attribute_map = { + 'track_selections': {'key': 'trackSelections', 'type': '[FilterTrackPropertyCondition]'}, + } + + def __init__(self, **kwargs): + super(FilterTrackSelection, self).__init__(**kwargs) + self.track_selections = kwargs.get('track_selections', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/filter_track_selection_py3.py b/azure-mgmt-media/azure/mgmt/media/models/filter_track_selection_py3.py new file mode 100644 index 000000000000..e3dd68283ba3 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/filter_track_selection_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FilterTrackSelection(Model): + """Representing a list of FilterTrackPropertyConditions to select a track. + The filters are combined using a logical AND operation. + + All required parameters must be populated in order to send to Azure. + + :param track_selections: Required. The track selections. + :type track_selections: + list[~azure.mgmt.media.models.FilterTrackPropertyCondition] + """ + + _validation = { + 'track_selections': {'required': True}, + } + + _attribute_map = { + 'track_selections': {'key': 'trackSelections', 'type': '[FilterTrackPropertyCondition]'}, + } + + def __init__(self, *, track_selections, **kwargs) -> None: + super(FilterTrackSelection, self).__init__(**kwargs) + self.track_selections = track_selections diff --git a/azure-mgmt-media/azure/mgmt/media/models/first_quality.py b/azure-mgmt-media/azure/mgmt/media/models/first_quality.py new file mode 100644 index 000000000000..bb814dad000c --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/first_quality.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FirstQuality(Model): + """Filter First Quality. + + All required parameters must be populated in order to send to Azure. + + :param bitrate: Required. The first quality bitrate. + :type bitrate: int + """ + + _validation = { + 'bitrate': {'required': True}, + } + + _attribute_map = { + 'bitrate': {'key': 'bitrate', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(FirstQuality, self).__init__(**kwargs) + self.bitrate = kwargs.get('bitrate', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/first_quality_py3.py b/azure-mgmt-media/azure/mgmt/media/models/first_quality_py3.py new file mode 100644 index 000000000000..1b68b1b79a52 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/first_quality_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FirstQuality(Model): + """Filter First Quality. + + All required parameters must be populated in order to send to Azure. + + :param bitrate: Required. The first quality bitrate. + :type bitrate: int + """ + + _validation = { + 'bitrate': {'required': True}, + } + + _attribute_map = { + 'bitrate': {'key': 'bitrate', 'type': 'int'}, + } + + def __init__(self, *, bitrate: int, **kwargs) -> None: + super(FirstQuality, self).__init__(**kwargs) + self.bitrate = bitrate diff --git a/azure-mgmt-media/azure/mgmt/media/models/job.py b/azure-mgmt-media/azure/mgmt/media/models/job.py index 24dd1a3ad3f6..b7e28c275d68 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job.py @@ -48,7 +48,7 @@ class Job(ProxyResource): default is normal. Possible values include: 'Low', 'Normal', 'High' :type priority: str or ~azure.mgmt.media.models.Priority :param correlation_data: Customer provided correlation data that will be - returned in Job completed events. + returned in Job and JobOutput state events. :type correlation_data: dict[str, str] """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_input.py b/azure-mgmt-media/azure/mgmt/media/models/job_input.py index 90ea8ff41864..5a65a203cc3e 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_input.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_input.py @@ -20,13 +20,6 @@ class JobInput(Model): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to - satisfy a reference used in the Transform. For example, a Transform can be - authored so as to take an image file with the label 'xyz' and apply it as - an overlay onto the input video before it is encoded. When submitting a - Job, exactly one of the JobInputs should be the image file, and it should - have the label 'xyz'. - :type label: str :param odatatype: Required. Constant filled by server. :type odatatype: str """ @@ -36,7 +29,6 @@ class JobInput(Model): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, } @@ -46,5 +38,4 @@ class JobInput(Model): def __init__(self, **kwargs): super(JobInput, self).__init__(**kwargs) - self.label = kwargs.get('label', None) self.odatatype = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_input_asset.py b/azure-mgmt-media/azure/mgmt/media/models/job_input_asset.py index e83a706c7921..db205ff0064e 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_input_asset.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_input_asset.py @@ -17,17 +17,17 @@ class JobInputAsset(JobInputClip): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to + :param odatatype: Required. Constant filled by server. + :type odatatype: str + :param files: List of files. Required for JobInputHttp. + :type files: list[str] + :param label: A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. :type label: str - :param odatatype: Required. Constant filled by server. - :type odatatype: str - :param files: List of files. Required for JobInputHttp. - :type files: list[str] :param asset_name: Required. The name of the input Asset. :type asset_name: str """ @@ -38,9 +38,9 @@ class JobInputAsset(JobInputClip): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'files': {'key': 'files', 'type': '[str]'}, + 'label': {'key': 'label', 'type': 'str'}, 'asset_name': {'key': 'assetName', 'type': 'str'}, } diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_input_asset_py3.py b/azure-mgmt-media/azure/mgmt/media/models/job_input_asset_py3.py index 0bb6932fa19b..ea95bb8d8ced 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_input_asset_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_input_asset_py3.py @@ -17,17 +17,17 @@ class JobInputAsset(JobInputClip): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to + :param odatatype: Required. Constant filled by server. + :type odatatype: str + :param files: List of files. Required for JobInputHttp. + :type files: list[str] + :param label: A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. :type label: str - :param odatatype: Required. Constant filled by server. - :type odatatype: str - :param files: List of files. Required for JobInputHttp. - :type files: list[str] :param asset_name: Required. The name of the input Asset. :type asset_name: str """ @@ -38,13 +38,13 @@ class JobInputAsset(JobInputClip): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'files': {'key': 'files', 'type': '[str]'}, + 'label': {'key': 'label', 'type': 'str'}, 'asset_name': {'key': 'assetName', 'type': 'str'}, } - def __init__(self, *, asset_name: str, label: str=None, files=None, **kwargs) -> None: - super(JobInputAsset, self).__init__(label=label, files=files, **kwargs) + def __init__(self, *, asset_name: str, files=None, label: str=None, **kwargs) -> None: + super(JobInputAsset, self).__init__(files=files, label=label, **kwargs) self.asset_name = asset_name self.odatatype = '#Microsoft.Media.JobInputAsset' diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_input_clip.py b/azure-mgmt-media/azure/mgmt/media/models/job_input_clip.py index 35ae5d3acdd3..5c36848da19b 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_input_clip.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_input_clip.py @@ -20,17 +20,17 @@ class JobInputClip(JobInput): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to + :param odatatype: Required. Constant filled by server. + :type odatatype: str + :param files: List of files. Required for JobInputHttp. + :type files: list[str] + :param label: A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. :type label: str - :param odatatype: Required. Constant filled by server. - :type odatatype: str - :param files: List of files. Required for JobInputHttp. - :type files: list[str] """ _validation = { @@ -38,9 +38,9 @@ class JobInputClip(JobInput): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'files': {'key': 'files', 'type': '[str]'}, + 'label': {'key': 'label', 'type': 'str'}, } _subtype_map = { @@ -50,4 +50,5 @@ class JobInputClip(JobInput): def __init__(self, **kwargs): super(JobInputClip, self).__init__(**kwargs) self.files = kwargs.get('files', None) + self.label = kwargs.get('label', None) self.odatatype = '#Microsoft.Media.JobInputClip' diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_input_clip_py3.py b/azure-mgmt-media/azure/mgmt/media/models/job_input_clip_py3.py index 69f390a41eac..18af26239f74 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_input_clip_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_input_clip_py3.py @@ -20,17 +20,17 @@ class JobInputClip(JobInput): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to + :param odatatype: Required. Constant filled by server. + :type odatatype: str + :param files: List of files. Required for JobInputHttp. + :type files: list[str] + :param label: A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. :type label: str - :param odatatype: Required. Constant filled by server. - :type odatatype: str - :param files: List of files. Required for JobInputHttp. - :type files: list[str] """ _validation = { @@ -38,16 +38,17 @@ class JobInputClip(JobInput): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'files': {'key': 'files', 'type': '[str]'}, + 'label': {'key': 'label', 'type': 'str'}, } _subtype_map = { 'odatatype': {'#Microsoft.Media.JobInputAsset': 'JobInputAsset', '#Microsoft.Media.JobInputHttp': 'JobInputHttp'} } - def __init__(self, *, label: str=None, files=None, **kwargs) -> None: - super(JobInputClip, self).__init__(label=label, **kwargs) + def __init__(self, *, files=None, label: str=None, **kwargs) -> None: + super(JobInputClip, self).__init__(**kwargs) self.files = files + self.label = label self.odatatype = '#Microsoft.Media.JobInputClip' diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_input_http.py b/azure-mgmt-media/azure/mgmt/media/models/job_input_http.py index e330c0f5a234..3c739e4ee848 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_input_http.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_input_http.py @@ -17,17 +17,17 @@ class JobInputHttp(JobInputClip): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to + :param odatatype: Required. Constant filled by server. + :type odatatype: str + :param files: List of files. Required for JobInputHttp. + :type files: list[str] + :param label: A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. :type label: str - :param odatatype: Required. Constant filled by server. - :type odatatype: str - :param files: List of files. Required for JobInputHttp. - :type files: list[str] :param base_uri: Base URI for HTTPS job input. It will be concatenated with provided file names. If no base uri is given, then the provided file list is assumed to be fully qualified uris. @@ -39,9 +39,9 @@ class JobInputHttp(JobInputClip): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'files': {'key': 'files', 'type': '[str]'}, + 'label': {'key': 'label', 'type': 'str'}, 'base_uri': {'key': 'baseUri', 'type': 'str'}, } diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_input_http_py3.py b/azure-mgmt-media/azure/mgmt/media/models/job_input_http_py3.py index 7dda64a529c6..55436af89760 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_input_http_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_input_http_py3.py @@ -17,17 +17,17 @@ class JobInputHttp(JobInputClip): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to + :param odatatype: Required. Constant filled by server. + :type odatatype: str + :param files: List of files. Required for JobInputHttp. + :type files: list[str] + :param label: A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. :type label: str - :param odatatype: Required. Constant filled by server. - :type odatatype: str - :param files: List of files. Required for JobInputHttp. - :type files: list[str] :param base_uri: Base URI for HTTPS job input. It will be concatenated with provided file names. If no base uri is given, then the provided file list is assumed to be fully qualified uris. @@ -39,13 +39,13 @@ class JobInputHttp(JobInputClip): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'files': {'key': 'files', 'type': '[str]'}, + 'label': {'key': 'label', 'type': 'str'}, 'base_uri': {'key': 'baseUri', 'type': 'str'}, } - def __init__(self, *, label: str=None, files=None, base_uri: str=None, **kwargs) -> None: - super(JobInputHttp, self).__init__(label=label, files=files, **kwargs) + def __init__(self, *, files=None, label: str=None, base_uri: str=None, **kwargs) -> None: + super(JobInputHttp, self).__init__(files=files, label=label, **kwargs) self.base_uri = base_uri self.odatatype = '#Microsoft.Media.JobInputHttp' diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_input_py3.py b/azure-mgmt-media/azure/mgmt/media/models/job_input_py3.py index 17e20e9ec76b..e67513fe2f42 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_input_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_input_py3.py @@ -20,13 +20,6 @@ class JobInput(Model): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to - satisfy a reference used in the Transform. For example, a Transform can be - authored so as to take an image file with the label 'xyz' and apply it as - an overlay onto the input video before it is encoded. When submitting a - Job, exactly one of the JobInputs should be the image file, and it should - have the label 'xyz'. - :type label: str :param odatatype: Required. Constant filled by server. :type odatatype: str """ @@ -36,7 +29,6 @@ class JobInput(Model): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, } @@ -44,7 +36,6 @@ class JobInput(Model): 'odatatype': {'#Microsoft.Media.JobInputClip': 'JobInputClip', '#Microsoft.Media.JobInputs': 'JobInputs'} } - def __init__(self, *, label: str=None, **kwargs) -> None: + def __init__(self, **kwargs) -> None: super(JobInput, self).__init__(**kwargs) - self.label = label self.odatatype = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_inputs.py b/azure-mgmt-media/azure/mgmt/media/models/job_inputs.py index 8dadccb695b5..e5ead7fc055a 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_inputs.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_inputs.py @@ -17,13 +17,6 @@ class JobInputs(JobInput): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to - satisfy a reference used in the Transform. For example, a Transform can be - authored so as to take an image file with the label 'xyz' and apply it as - an overlay onto the input video before it is encoded. When submitting a - Job, exactly one of the JobInputs should be the image file, and it should - have the label 'xyz'. - :type label: str :param odatatype: Required. Constant filled by server. :type odatatype: str :param inputs: List of inputs to a Job. @@ -35,7 +28,6 @@ class JobInputs(JobInput): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'inputs': {'key': 'inputs', 'type': '[JobInput]'}, } diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_inputs_py3.py b/azure-mgmt-media/azure/mgmt/media/models/job_inputs_py3.py index 2b81a299310b..91c7ef1339f7 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_inputs_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_inputs_py3.py @@ -17,13 +17,6 @@ class JobInputs(JobInput): All required parameters must be populated in order to send to Azure. - :param label: A label that is assigned to a JobInput, that is used to - satisfy a reference used in the Transform. For example, a Transform can be - authored so as to take an image file with the label 'xyz' and apply it as - an overlay onto the input video before it is encoded. When submitting a - Job, exactly one of the JobInputs should be the image file, and it should - have the label 'xyz'. - :type label: str :param odatatype: Required. Constant filled by server. :type odatatype: str :param inputs: List of inputs to a Job. @@ -35,12 +28,11 @@ class JobInputs(JobInput): } _attribute_map = { - 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'inputs': {'key': 'inputs', 'type': '[JobInput]'}, } - def __init__(self, *, label: str=None, inputs=None, **kwargs) -> None: - super(JobInputs, self).__init__(label=label, **kwargs) + def __init__(self, *, inputs=None, **kwargs) -> None: + super(JobInputs, self).__init__(**kwargs) self.inputs = inputs self.odatatype = '#Microsoft.Media.JobInputs' diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_output.py b/azure-mgmt-media/azure/mgmt/media/models/job_output.py index b9c0c9890478..b25474b06424 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_output.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_output.py @@ -31,10 +31,23 @@ class JobOutput(Model): 'Queued', 'Scheduled' :vartype state: str or ~azure.mgmt.media.models.JobState :ivar progress: If the JobOutput is in a Processing state, this contains - the job completion percentage. The value is an estimate and not intended - to be used to predict job completion times. To determine if the JobOutput + the Job completion percentage. The value is an estimate and not intended + to be used to predict Job completion times. To determine if the JobOutput is complete, use the State property. :vartype progress: int + :param label: A label that is assigned to a JobOutput in order to help + uniquely identify it. This is useful when your Transform has more than one + TransformOutput, whereby your Job has more than one JobOutput. In such + cases, when you submit the Job, you will add two or more JobOutputs, in + the same order as TransformOutputs in the Transform. Subsequently, when + you retrieve the Job, either through events or on a GET request, you can + use the label to easily identify the JobOutput. If a label is not + provided, a default value of '{presetName}_{outputIndex}' will be used, + where the preset name is the name of the preset in the corresponding + TransformOutput and the output index is the relative index of the this + JobOutput within the Job. Note that this index is the same as the relative + index of the corresponding TransformOutput within its Transform. + :type label: str :param odatatype: Required. Constant filled by server. :type odatatype: str """ @@ -50,6 +63,7 @@ class JobOutput(Model): 'error': {'key': 'error', 'type': 'JobError'}, 'state': {'key': 'state', 'type': 'JobState'}, 'progress': {'key': 'progress', 'type': 'int'}, + 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, } @@ -62,4 +76,5 @@ def __init__(self, **kwargs): self.error = None self.state = None self.progress = None + self.label = kwargs.get('label', None) self.odatatype = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_output_asset.py b/azure-mgmt-media/azure/mgmt/media/models/job_output_asset.py index 929b4b449645..c0205ad529b9 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_output_asset.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_output_asset.py @@ -28,10 +28,23 @@ class JobOutputAsset(JobOutput): 'Queued', 'Scheduled' :vartype state: str or ~azure.mgmt.media.models.JobState :ivar progress: If the JobOutput is in a Processing state, this contains - the job completion percentage. The value is an estimate and not intended - to be used to predict job completion times. To determine if the JobOutput + the Job completion percentage. The value is an estimate and not intended + to be used to predict Job completion times. To determine if the JobOutput is complete, use the State property. :vartype progress: int + :param label: A label that is assigned to a JobOutput in order to help + uniquely identify it. This is useful when your Transform has more than one + TransformOutput, whereby your Job has more than one JobOutput. In such + cases, when you submit the Job, you will add two or more JobOutputs, in + the same order as TransformOutputs in the Transform. Subsequently, when + you retrieve the Job, either through events or on a GET request, you can + use the label to easily identify the JobOutput. If a label is not + provided, a default value of '{presetName}_{outputIndex}' will be used, + where the preset name is the name of the preset in the corresponding + TransformOutput and the output index is the relative index of the this + JobOutput within the Job. Note that this index is the same as the relative + index of the corresponding TransformOutput within its Transform. + :type label: str :param odatatype: Required. Constant filled by server. :type odatatype: str :param asset_name: Required. The name of the output Asset. @@ -50,6 +63,7 @@ class JobOutputAsset(JobOutput): 'error': {'key': 'error', 'type': 'JobError'}, 'state': {'key': 'state', 'type': 'JobState'}, 'progress': {'key': 'progress', 'type': 'int'}, + 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'asset_name': {'key': 'assetName', 'type': 'str'}, } diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_output_asset_py3.py b/azure-mgmt-media/azure/mgmt/media/models/job_output_asset_py3.py index 562b6353687e..6affa709dc2a 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_output_asset_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_output_asset_py3.py @@ -28,10 +28,23 @@ class JobOutputAsset(JobOutput): 'Queued', 'Scheduled' :vartype state: str or ~azure.mgmt.media.models.JobState :ivar progress: If the JobOutput is in a Processing state, this contains - the job completion percentage. The value is an estimate and not intended - to be used to predict job completion times. To determine if the JobOutput + the Job completion percentage. The value is an estimate and not intended + to be used to predict Job completion times. To determine if the JobOutput is complete, use the State property. :vartype progress: int + :param label: A label that is assigned to a JobOutput in order to help + uniquely identify it. This is useful when your Transform has more than one + TransformOutput, whereby your Job has more than one JobOutput. In such + cases, when you submit the Job, you will add two or more JobOutputs, in + the same order as TransformOutputs in the Transform. Subsequently, when + you retrieve the Job, either through events or on a GET request, you can + use the label to easily identify the JobOutput. If a label is not + provided, a default value of '{presetName}_{outputIndex}' will be used, + where the preset name is the name of the preset in the corresponding + TransformOutput and the output index is the relative index of the this + JobOutput within the Job. Note that this index is the same as the relative + index of the corresponding TransformOutput within its Transform. + :type label: str :param odatatype: Required. Constant filled by server. :type odatatype: str :param asset_name: Required. The name of the output Asset. @@ -50,11 +63,12 @@ class JobOutputAsset(JobOutput): 'error': {'key': 'error', 'type': 'JobError'}, 'state': {'key': 'state', 'type': 'JobState'}, 'progress': {'key': 'progress', 'type': 'int'}, + 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'asset_name': {'key': 'assetName', 'type': 'str'}, } - def __init__(self, *, asset_name: str, **kwargs) -> None: - super(JobOutputAsset, self).__init__(**kwargs) + def __init__(self, *, asset_name: str, label: str=None, **kwargs) -> None: + super(JobOutputAsset, self).__init__(label=label, **kwargs) self.asset_name = asset_name self.odatatype = '#Microsoft.Media.JobOutputAsset' diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_output_py3.py b/azure-mgmt-media/azure/mgmt/media/models/job_output_py3.py index ab4f3ef23549..9bb7548f1772 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_output_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_output_py3.py @@ -31,10 +31,23 @@ class JobOutput(Model): 'Queued', 'Scheduled' :vartype state: str or ~azure.mgmt.media.models.JobState :ivar progress: If the JobOutput is in a Processing state, this contains - the job completion percentage. The value is an estimate and not intended - to be used to predict job completion times. To determine if the JobOutput + the Job completion percentage. The value is an estimate and not intended + to be used to predict Job completion times. To determine if the JobOutput is complete, use the State property. :vartype progress: int + :param label: A label that is assigned to a JobOutput in order to help + uniquely identify it. This is useful when your Transform has more than one + TransformOutput, whereby your Job has more than one JobOutput. In such + cases, when you submit the Job, you will add two or more JobOutputs, in + the same order as TransformOutputs in the Transform. Subsequently, when + you retrieve the Job, either through events or on a GET request, you can + use the label to easily identify the JobOutput. If a label is not + provided, a default value of '{presetName}_{outputIndex}' will be used, + where the preset name is the name of the preset in the corresponding + TransformOutput and the output index is the relative index of the this + JobOutput within the Job. Note that this index is the same as the relative + index of the corresponding TransformOutput within its Transform. + :type label: str :param odatatype: Required. Constant filled by server. :type odatatype: str """ @@ -50,6 +63,7 @@ class JobOutput(Model): 'error': {'key': 'error', 'type': 'JobError'}, 'state': {'key': 'state', 'type': 'JobState'}, 'progress': {'key': 'progress', 'type': 'int'}, + 'label': {'key': 'label', 'type': 'str'}, 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, } @@ -57,9 +71,10 @@ class JobOutput(Model): 'odatatype': {'#Microsoft.Media.JobOutputAsset': 'JobOutputAsset'} } - def __init__(self, **kwargs) -> None: + def __init__(self, *, label: str=None, **kwargs) -> None: super(JobOutput, self).__init__(**kwargs) self.error = None self.state = None self.progress = None + self.label = label self.odatatype = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/job_py3.py b/azure-mgmt-media/azure/mgmt/media/models/job_py3.py index 34f35a4eb8aa..2b3ee6745134 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/job_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/job_py3.py @@ -48,7 +48,7 @@ class Job(ProxyResource): default is normal. Possible values include: 'Low', 'Normal', 'High' :type priority: str or ~azure.mgmt.media.models.Priority :param correlation_data: Customer provided correlation data that will be - returned in Job completed events. + returned in Job and JobOutput state events. :type correlation_data: dict[str, str] """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/list_container_sas_input.py b/azure-mgmt-media/azure/mgmt/media/models/list_container_sas_input.py index 7958825c6ebb..737995c2b770 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/list_container_sas_input.py +++ b/azure-mgmt-media/azure/mgmt/media/models/list_container_sas_input.py @@ -13,7 +13,7 @@ class ListContainerSasInput(Model): - """The parameters to the list SAS requet. + """The parameters to the list SAS request. :param permissions: The permissions to set on the SAS URL. Possible values include: 'Read', 'ReadWrite', 'ReadWriteDelete' diff --git a/azure-mgmt-media/azure/mgmt/media/models/list_container_sas_input_py3.py b/azure-mgmt-media/azure/mgmt/media/models/list_container_sas_input_py3.py index 8dde54180d9c..54183398e7de 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/list_container_sas_input_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/list_container_sas_input_py3.py @@ -13,7 +13,7 @@ class ListContainerSasInput(Model): - """The parameters to the list SAS requet. + """The parameters to the list SAS request. :param permissions: The permissions to set on the SAS URL. Possible values include: 'Read', 'ReadWrite', 'ReadWriteDelete' diff --git a/azure-mgmt-media/azure/mgmt/media/models/list_streaming_locators_response.py b/azure-mgmt-media/azure/mgmt/media/models/list_streaming_locators_response.py new file mode 100644 index 000000000000..f165f46b19d1 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/list_streaming_locators_response.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ListStreamingLocatorsResponse(Model): + """The Streaming Locators associated with this Asset. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar streaming_locators: The list of Streaming Locators. + :vartype streaming_locators: + list[~azure.mgmt.media.models.AssetStreamingLocator] + """ + + _validation = { + 'streaming_locators': {'readonly': True}, + } + + _attribute_map = { + 'streaming_locators': {'key': 'streamingLocators', 'type': '[AssetStreamingLocator]'}, + } + + def __init__(self, **kwargs): + super(ListStreamingLocatorsResponse, self).__init__(**kwargs) + self.streaming_locators = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/list_streaming_locators_response_py3.py b/azure-mgmt-media/azure/mgmt/media/models/list_streaming_locators_response_py3.py new file mode 100644 index 000000000000..a9f307de2cc5 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/list_streaming_locators_response_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ListStreamingLocatorsResponse(Model): + """The Streaming Locators associated with this Asset. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar streaming_locators: The list of Streaming Locators. + :vartype streaming_locators: + list[~azure.mgmt.media.models.AssetStreamingLocator] + """ + + _validation = { + 'streaming_locators': {'readonly': True}, + } + + _attribute_map = { + 'streaming_locators': {'key': 'streamingLocators', 'type': '[AssetStreamingLocator]'}, + } + + def __init__(self, **kwargs) -> None: + super(ListStreamingLocatorsResponse, self).__init__(**kwargs) + self.streaming_locators = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event.py b/azure-mgmt-media/azure/mgmt/media/models/live_event.py index d4550e9bf1f9..ee3e149c9db5 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_event.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event.py @@ -47,9 +47,11 @@ class LiveEvent(TrackedResource): :param cross_site_access_policies: The Live Event access policies. :type cross_site_access_policies: ~azure.mgmt.media.models.CrossSiteAccessPolicies - :param vanity_url: The Live Event vanity URL flag. + :param vanity_url: Specifies whether to use a vanity url with the Live + Event. This value is specified at creation time and cannot be updated. :type vanity_url: bool - :param stream_options: The stream options. + :param stream_options: The options to use for the LiveEvent. This value + is specified at creation time and cannot be updated. :type stream_options: list[str or ~azure.mgmt.media.models.StreamOptionsFlag] :ivar created: The exact time the Live Event was created. diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_encoding.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_encoding.py index 88ce519ee2f2..4e2a35b36756 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_event_encoding.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_encoding.py @@ -15,10 +15,12 @@ class LiveEventEncoding(Model): """The Live Event encoding. - :param encoding_type: The encoding type for Live Event. Possible values - include: 'None', 'Basic' + :param encoding_type: The encoding type for Live Event. This value is + specified at creation time and cannot be updated. Possible values include: + 'None', 'Basic' :type encoding_type: str or ~azure.mgmt.media.models.LiveEventEncodingType - :param preset_name: The encoding preset name. + :param preset_name: The encoding preset name. This value is specified at + creation time and cannot be updated. :type preset_name: str """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_encoding_py3.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_encoding_py3.py index c964f9949875..cad68859f1db 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_event_encoding_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_encoding_py3.py @@ -15,10 +15,12 @@ class LiveEventEncoding(Model): """The Live Event encoding. - :param encoding_type: The encoding type for Live Event. Possible values - include: 'None', 'Basic' + :param encoding_type: The encoding type for Live Event. This value is + specified at creation time and cannot be updated. Possible values include: + 'None', 'Basic' :type encoding_type: str or ~azure.mgmt.media.models.LiveEventEncodingType - :param preset_name: The encoding preset name. + :param preset_name: The encoding preset name. This value is specified at + creation time and cannot be updated. :type preset_name: str """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_input.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_input.py index 07018e2075f3..5182171471fa 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_event_input.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_input.py @@ -18,13 +18,18 @@ class LiveEventInput(Model): All required parameters must be populated in order to send to Azure. :param streaming_protocol: Required. The streaming protocol for the Live - Event. Possible values include: 'FragmentedMP4', 'RTMP' + Event. This is specified at creation time and cannot be updated. Possible + values include: 'FragmentedMP4', 'RTMP' :type streaming_protocol: str or ~azure.mgmt.media.models.LiveEventInputProtocol + :param access_control: The access control for LiveEvent Input. + :type access_control: ~azure.mgmt.media.models.LiveEventInputAccessControl :param key_frame_interval_duration: ISO 8601 timespan duration of the key frame interval duration. :type key_frame_interval_duration: str - :param access_token: The access token. + :param access_token: A unique identifier for a stream. This can be + specified at creation time but cannot be updated. If omitted, the service + will generate a unique value. :type access_token: str :param endpoints: The input endpoints for the Live Event. :type endpoints: list[~azure.mgmt.media.models.LiveEventEndpoint] @@ -36,6 +41,7 @@ class LiveEventInput(Model): _attribute_map = { 'streaming_protocol': {'key': 'streamingProtocol', 'type': 'LiveEventInputProtocol'}, + 'access_control': {'key': 'accessControl', 'type': 'LiveEventInputAccessControl'}, 'key_frame_interval_duration': {'key': 'keyFrameIntervalDuration', 'type': 'str'}, 'access_token': {'key': 'accessToken', 'type': 'str'}, 'endpoints': {'key': 'endpoints', 'type': '[LiveEventEndpoint]'}, @@ -44,6 +50,7 @@ class LiveEventInput(Model): def __init__(self, **kwargs): super(LiveEventInput, self).__init__(**kwargs) self.streaming_protocol = kwargs.get('streaming_protocol', None) + self.access_control = kwargs.get('access_control', None) self.key_frame_interval_duration = kwargs.get('key_frame_interval_duration', None) self.access_token = kwargs.get('access_token', None) self.endpoints = kwargs.get('endpoints', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_input_access_control.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_input_access_control.py new file mode 100644 index 000000000000..00f0b5b5af32 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_input_access_control.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LiveEventInputAccessControl(Model): + """The IP access control for Live Event Input. + + :param ip: The IP access control properties. + :type ip: ~azure.mgmt.media.models.IPAccessControl + """ + + _attribute_map = { + 'ip': {'key': 'ip', 'type': 'IPAccessControl'}, + } + + def __init__(self, **kwargs): + super(LiveEventInputAccessControl, self).__init__(**kwargs) + self.ip = kwargs.get('ip', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_input_access_control_py3.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_input_access_control_py3.py new file mode 100644 index 000000000000..976f68002798 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_input_access_control_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LiveEventInputAccessControl(Model): + """The IP access control for Live Event Input. + + :param ip: The IP access control properties. + :type ip: ~azure.mgmt.media.models.IPAccessControl + """ + + _attribute_map = { + 'ip': {'key': 'ip', 'type': 'IPAccessControl'}, + } + + def __init__(self, *, ip=None, **kwargs) -> None: + super(LiveEventInputAccessControl, self).__init__(**kwargs) + self.ip = ip diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_input_py3.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_input_py3.py index 46a4b68928a3..278eec4b9e0c 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_event_input_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_input_py3.py @@ -18,13 +18,18 @@ class LiveEventInput(Model): All required parameters must be populated in order to send to Azure. :param streaming_protocol: Required. The streaming protocol for the Live - Event. Possible values include: 'FragmentedMP4', 'RTMP' + Event. This is specified at creation time and cannot be updated. Possible + values include: 'FragmentedMP4', 'RTMP' :type streaming_protocol: str or ~azure.mgmt.media.models.LiveEventInputProtocol + :param access_control: The access control for LiveEvent Input. + :type access_control: ~azure.mgmt.media.models.LiveEventInputAccessControl :param key_frame_interval_duration: ISO 8601 timespan duration of the key frame interval duration. :type key_frame_interval_duration: str - :param access_token: The access token. + :param access_token: A unique identifier for a stream. This can be + specified at creation time but cannot be updated. If omitted, the service + will generate a unique value. :type access_token: str :param endpoints: The input endpoints for the Live Event. :type endpoints: list[~azure.mgmt.media.models.LiveEventEndpoint] @@ -36,14 +41,16 @@ class LiveEventInput(Model): _attribute_map = { 'streaming_protocol': {'key': 'streamingProtocol', 'type': 'LiveEventInputProtocol'}, + 'access_control': {'key': 'accessControl', 'type': 'LiveEventInputAccessControl'}, 'key_frame_interval_duration': {'key': 'keyFrameIntervalDuration', 'type': 'str'}, 'access_token': {'key': 'accessToken', 'type': 'str'}, 'endpoints': {'key': 'endpoints', 'type': '[LiveEventEndpoint]'}, } - def __init__(self, *, streaming_protocol, key_frame_interval_duration: str=None, access_token: str=None, endpoints=None, **kwargs) -> None: + def __init__(self, *, streaming_protocol, access_control=None, key_frame_interval_duration: str=None, access_token: str=None, endpoints=None, **kwargs) -> None: super(LiveEventInput, self).__init__(**kwargs) self.streaming_protocol = streaming_protocol + self.access_control = access_control self.key_frame_interval_duration = key_frame_interval_duration self.access_token = access_token self.endpoints = endpoints diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_preview.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_preview.py index 4e7aca455f41..0c69f5653ef7 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_event_preview.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_preview.py @@ -20,16 +20,22 @@ class LiveEventPreview(Model): :param access_control: The access control for LiveEvent preview. :type access_control: ~azure.mgmt.media.models.LiveEventPreviewAccessControl - :param preview_locator: The preview locator Guid. + :param preview_locator: The identifier of the preview locator in Guid + format. Specifying this at creation time allows the caller to know the + preview locator url before the event is created. If omitted, the service + will generate a random identifier. This value cannot be updated once the + live event is created. :type preview_locator: str - :param streaming_policy_name: The name of streaming policy used for - LiveEvent preview + :param streaming_policy_name: The name of streaming policy used for the + LiveEvent preview. This value is specified at creation time and cannot be + updated. :type streaming_policy_name: str :param alternative_media_id: An Alternative Media Identifier associated - with the preview url. This identifier can be used to distinguish the - preview of different live events for authorization purposes in the - CustomLicenseAcquisitionUrlTemplate or the CustomKeyAcquisitionUrlTemplate - of the StreamingPolicy specified in the StreamingPolicyName field. + with the StreamingLocator created for the preview. This value is + specified at creation time and cannot be updated. The identifier can be + used in the CustomLicenseAcquisitionUrlTemplate or the + CustomKeyAcquisitionUrlTemplate of the StreamingPolicy specified in the + StreamingPolicyName field. :type alternative_media_id: str """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_preview_py3.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_preview_py3.py index c071c9854d95..8240b773b9d3 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_event_preview_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_preview_py3.py @@ -20,16 +20,22 @@ class LiveEventPreview(Model): :param access_control: The access control for LiveEvent preview. :type access_control: ~azure.mgmt.media.models.LiveEventPreviewAccessControl - :param preview_locator: The preview locator Guid. + :param preview_locator: The identifier of the preview locator in Guid + format. Specifying this at creation time allows the caller to know the + preview locator url before the event is created. If omitted, the service + will generate a random identifier. This value cannot be updated once the + live event is created. :type preview_locator: str - :param streaming_policy_name: The name of streaming policy used for - LiveEvent preview + :param streaming_policy_name: The name of streaming policy used for the + LiveEvent preview. This value is specified at creation time and cannot be + updated. :type streaming_policy_name: str :param alternative_media_id: An Alternative Media Identifier associated - with the preview url. This identifier can be used to distinguish the - preview of different live events for authorization purposes in the - CustomLicenseAcquisitionUrlTemplate or the CustomKeyAcquisitionUrlTemplate - of the StreamingPolicy specified in the StreamingPolicyName field. + with the StreamingLocator created for the preview. This value is + specified at creation time and cannot be updated. The identifier can be + used in the CustomLicenseAcquisitionUrlTemplate or the + CustomKeyAcquisitionUrlTemplate of the StreamingPolicy specified in the + StreamingPolicyName field. :type alternative_media_id: str """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_event_py3.py b/azure-mgmt-media/azure/mgmt/media/models/live_event_py3.py index 62878a1aab90..75659a2a9e1c 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_event_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_event_py3.py @@ -47,9 +47,11 @@ class LiveEvent(TrackedResource): :param cross_site_access_policies: The Live Event access policies. :type cross_site_access_policies: ~azure.mgmt.media.models.CrossSiteAccessPolicies - :param vanity_url: The Live Event vanity URL flag. + :param vanity_url: Specifies whether to use a vanity url with the Live + Event. This value is specified at creation time and cannot be updated. :type vanity_url: bool - :param stream_options: The stream options. + :param stream_options: The options to use for the LiveEvent. This value + is specified at creation time and cannot be updated. :type stream_options: list[str or ~azure.mgmt.media.models.StreamOptionsFlag] :ivar created: The exact time the Live Event was created. diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_output.py b/azure-mgmt-media/azure/mgmt/media/models/live_output.py index 5b9238b53d96..aacba416697b 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_output.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_output.py @@ -34,7 +34,8 @@ class LiveOutput(ProxyResource): archive window length. This is duration that customer want to retain the recorded content. :type archive_window_length: timedelta - :param manifest_name: The manifest file name. + :param manifest_name: The manifest file name. If not provided, the + service will generate one automatically. :type manifest_name: str :param hls: The HLS configuration. :type hls: ~azure.mgmt.media.models.Hls diff --git a/azure-mgmt-media/azure/mgmt/media/models/live_output_py3.py b/azure-mgmt-media/azure/mgmt/media/models/live_output_py3.py index f5e5682d05a7..529f2da31efa 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/live_output_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/live_output_py3.py @@ -34,7 +34,8 @@ class LiveOutput(ProxyResource): archive window length. This is duration that customer want to retain the recorded content. :type archive_window_length: timedelta - :param manifest_name: The manifest file name. + :param manifest_name: The manifest file name. If not provided, the + service will generate one automatically. :type manifest_name: str :param hls: The HLS configuration. :type hls: ~azure.mgmt.media.models.Hls diff --git a/azure-mgmt-media/azure/mgmt/media/models/metric.py b/azure-mgmt-media/azure/mgmt/media/models/metric.py new file mode 100644 index 000000000000..72bbed5d2179 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/metric.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Metric(Model): + """A metric emitted by service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The metric name. + :vartype name: str + :ivar display_name: The metric display name. + :vartype display_name: str + :ivar display_description: The metric display description. + :vartype display_description: str + :ivar unit: The metric unit. Possible values include: 'Bytes', 'Count', + 'Milliseconds' + :vartype unit: str or ~azure.mgmt.media.models.MetricUnit + :ivar aggregation_type: The metric aggregation type. Possible values + include: 'Average', 'Count', 'Total' + :vartype aggregation_type: str or + ~azure.mgmt.media.models.MetricAggregationType + :ivar dimensions: The metric dimensions. + :vartype dimensions: list[~azure.mgmt.media.models.MetricDimension] + """ + + _validation = { + 'name': {'readonly': True}, + 'display_name': {'readonly': True}, + 'display_description': {'readonly': True}, + 'unit': {'readonly': True}, + 'aggregation_type': {'readonly': True}, + 'dimensions': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'display_description': {'key': 'displayDescription', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'MetricUnit'}, + 'aggregation_type': {'key': 'aggregationType', 'type': 'MetricAggregationType'}, + 'dimensions': {'key': 'dimensions', 'type': '[MetricDimension]'}, + } + + def __init__(self, **kwargs): + super(Metric, self).__init__(**kwargs) + self.name = None + self.display_name = None + self.display_description = None + self.unit = None + self.aggregation_type = None + self.dimensions = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/metric_dimension.py b/azure-mgmt-media/azure/mgmt/media/models/metric_dimension.py new file mode 100644 index 000000000000..cbf83600fed5 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/metric_dimension.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricDimension(Model): + """A metric dimension. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The metric dimension name. + :vartype name: str + :ivar display_name: The display name for the dimension. + :vartype display_name: str + :ivar to_be_exported_for_shoebox: Whether to export metric to shoebox. + :vartype to_be_exported_for_shoebox: bool + """ + + _validation = { + 'name': {'readonly': True}, + 'display_name': {'readonly': True}, + 'to_be_exported_for_shoebox': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'to_be_exported_for_shoebox': {'key': 'toBeExportedForShoebox', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(MetricDimension, self).__init__(**kwargs) + self.name = None + self.display_name = None + self.to_be_exported_for_shoebox = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/metric_dimension_py3.py b/azure-mgmt-media/azure/mgmt/media/models/metric_dimension_py3.py new file mode 100644 index 000000000000..8304cbeac402 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/metric_dimension_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricDimension(Model): + """A metric dimension. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The metric dimension name. + :vartype name: str + :ivar display_name: The display name for the dimension. + :vartype display_name: str + :ivar to_be_exported_for_shoebox: Whether to export metric to shoebox. + :vartype to_be_exported_for_shoebox: bool + """ + + _validation = { + 'name': {'readonly': True}, + 'display_name': {'readonly': True}, + 'to_be_exported_for_shoebox': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'to_be_exported_for_shoebox': {'key': 'toBeExportedForShoebox', 'type': 'bool'}, + } + + def __init__(self, **kwargs) -> None: + super(MetricDimension, self).__init__(**kwargs) + self.name = None + self.display_name = None + self.to_be_exported_for_shoebox = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/metric_properties.py b/azure-mgmt-media/azure/mgmt/media/models/metric_properties.py new file mode 100644 index 000000000000..6c8713c20666 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/metric_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricProperties(Model): + """Metric properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar service_specification: The service specifications. + :vartype service_specification: + ~azure.mgmt.media.models.ServiceSpecification + """ + + _validation = { + 'service_specification': {'readonly': True}, + } + + _attribute_map = { + 'service_specification': {'key': 'serviceSpecification', 'type': 'ServiceSpecification'}, + } + + def __init__(self, **kwargs): + super(MetricProperties, self).__init__(**kwargs) + self.service_specification = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/metric_properties_py3.py b/azure-mgmt-media/azure/mgmt/media/models/metric_properties_py3.py new file mode 100644 index 000000000000..39e9393415d1 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/metric_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricProperties(Model): + """Metric properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar service_specification: The service specifications. + :vartype service_specification: + ~azure.mgmt.media.models.ServiceSpecification + """ + + _validation = { + 'service_specification': {'readonly': True}, + } + + _attribute_map = { + 'service_specification': {'key': 'serviceSpecification', 'type': 'ServiceSpecification'}, + } + + def __init__(self, **kwargs) -> None: + super(MetricProperties, self).__init__(**kwargs) + self.service_specification = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/metric_py3.py b/azure-mgmt-media/azure/mgmt/media/models/metric_py3.py new file mode 100644 index 000000000000..64011bedf65c --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/metric_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Metric(Model): + """A metric emitted by service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The metric name. + :vartype name: str + :ivar display_name: The metric display name. + :vartype display_name: str + :ivar display_description: The metric display description. + :vartype display_description: str + :ivar unit: The metric unit. Possible values include: 'Bytes', 'Count', + 'Milliseconds' + :vartype unit: str or ~azure.mgmt.media.models.MetricUnit + :ivar aggregation_type: The metric aggregation type. Possible values + include: 'Average', 'Count', 'Total' + :vartype aggregation_type: str or + ~azure.mgmt.media.models.MetricAggregationType + :ivar dimensions: The metric dimensions. + :vartype dimensions: list[~azure.mgmt.media.models.MetricDimension] + """ + + _validation = { + 'name': {'readonly': True}, + 'display_name': {'readonly': True}, + 'display_description': {'readonly': True}, + 'unit': {'readonly': True}, + 'aggregation_type': {'readonly': True}, + 'dimensions': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'display_description': {'key': 'displayDescription', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'MetricUnit'}, + 'aggregation_type': {'key': 'aggregationType', 'type': 'MetricAggregationType'}, + 'dimensions': {'key': 'dimensions', 'type': '[MetricDimension]'}, + } + + def __init__(self, **kwargs) -> None: + super(Metric, self).__init__(**kwargs) + self.name = None + self.display_name = None + self.display_description = None + self.unit = None + self.aggregation_type = None + self.dimensions = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/operation.py b/azure-mgmt-media/azure/mgmt/media/models/operation.py index 1ae9bfb6ec1e..c10dee416561 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/operation.py +++ b/azure-mgmt-media/azure/mgmt/media/models/operation.py @@ -21,6 +21,10 @@ class Operation(Model): :type name: str :param display: The operation display name. :type display: ~azure.mgmt.media.models.OperationDisplay + :param origin: Origin of the operation. + :type origin: str + :param properties: Operation properties format. + :type properties: ~azure.mgmt.media.models.MetricProperties """ _validation = { @@ -30,9 +34,13 @@ class Operation(Model): _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'MetricProperties'}, } def __init__(self, **kwargs): super(Operation, self).__init__(**kwargs) self.name = kwargs.get('name', None) self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/operation_py3.py b/azure-mgmt-media/azure/mgmt/media/models/operation_py3.py index 43e4d8ee6f2b..7d2026e582f0 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/operation_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/operation_py3.py @@ -21,6 +21,10 @@ class Operation(Model): :type name: str :param display: The operation display name. :type display: ~azure.mgmt.media.models.OperationDisplay + :param origin: Origin of the operation. + :type origin: str + :param properties: Operation properties format. + :type properties: ~azure.mgmt.media.models.MetricProperties """ _validation = { @@ -30,9 +34,13 @@ class Operation(Model): _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'MetricProperties'}, } - def __init__(self, *, name: str, display=None, **kwargs) -> None: + def __init__(self, *, name: str, display=None, origin: str=None, properties=None, **kwargs) -> None: super(Operation, self).__init__(**kwargs) self.name = name self.display = display + self.origin = origin + self.properties = properties diff --git a/azure-mgmt-media/azure/mgmt/media/models/presentation_time_range.py b/azure-mgmt-media/azure/mgmt/media/models/presentation_time_range.py new file mode 100644 index 000000000000..79d9ce841aca --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/presentation_time_range.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PresentationTimeRange(Model): + """The presentation time range, this is asset related and not recommended for + Account Filter. + + All required parameters must be populated in order to send to Azure. + + :param start_timestamp: Required. The absolute start time boundary. + :type start_timestamp: long + :param end_timestamp: Required. The absolute end time boundary. + :type end_timestamp: long + :param presentation_window_duration: Required. The relative to end sliding + window. + :type presentation_window_duration: long + :param live_backoff_duration: Required. The relative to end right edge. + :type live_backoff_duration: long + :param timescale: Required. The time scale of time stamps. + :type timescale: long + :param force_end_timestamp: Required. The indicator of forcing exsiting of + end time stamp. + :type force_end_timestamp: bool + """ + + _validation = { + 'start_timestamp': {'required': True}, + 'end_timestamp': {'required': True}, + 'presentation_window_duration': {'required': True}, + 'live_backoff_duration': {'required': True}, + 'timescale': {'required': True}, + 'force_end_timestamp': {'required': True}, + } + + _attribute_map = { + 'start_timestamp': {'key': 'startTimestamp', 'type': 'long'}, + 'end_timestamp': {'key': 'endTimestamp', 'type': 'long'}, + 'presentation_window_duration': {'key': 'presentationWindowDuration', 'type': 'long'}, + 'live_backoff_duration': {'key': 'liveBackoffDuration', 'type': 'long'}, + 'timescale': {'key': 'timescale', 'type': 'long'}, + 'force_end_timestamp': {'key': 'forceEndTimestamp', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PresentationTimeRange, self).__init__(**kwargs) + self.start_timestamp = kwargs.get('start_timestamp', None) + self.end_timestamp = kwargs.get('end_timestamp', None) + self.presentation_window_duration = kwargs.get('presentation_window_duration', None) + self.live_backoff_duration = kwargs.get('live_backoff_duration', None) + self.timescale = kwargs.get('timescale', None) + self.force_end_timestamp = kwargs.get('force_end_timestamp', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/presentation_time_range_py3.py b/azure-mgmt-media/azure/mgmt/media/models/presentation_time_range_py3.py new file mode 100644 index 000000000000..57a4306cf30d --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/presentation_time_range_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PresentationTimeRange(Model): + """The presentation time range, this is asset related and not recommended for + Account Filter. + + All required parameters must be populated in order to send to Azure. + + :param start_timestamp: Required. The absolute start time boundary. + :type start_timestamp: long + :param end_timestamp: Required. The absolute end time boundary. + :type end_timestamp: long + :param presentation_window_duration: Required. The relative to end sliding + window. + :type presentation_window_duration: long + :param live_backoff_duration: Required. The relative to end right edge. + :type live_backoff_duration: long + :param timescale: Required. The time scale of time stamps. + :type timescale: long + :param force_end_timestamp: Required. The indicator of forcing exsiting of + end time stamp. + :type force_end_timestamp: bool + """ + + _validation = { + 'start_timestamp': {'required': True}, + 'end_timestamp': {'required': True}, + 'presentation_window_duration': {'required': True}, + 'live_backoff_duration': {'required': True}, + 'timescale': {'required': True}, + 'force_end_timestamp': {'required': True}, + } + + _attribute_map = { + 'start_timestamp': {'key': 'startTimestamp', 'type': 'long'}, + 'end_timestamp': {'key': 'endTimestamp', 'type': 'long'}, + 'presentation_window_duration': {'key': 'presentationWindowDuration', 'type': 'long'}, + 'live_backoff_duration': {'key': 'liveBackoffDuration', 'type': 'long'}, + 'timescale': {'key': 'timescale', 'type': 'long'}, + 'force_end_timestamp': {'key': 'forceEndTimestamp', 'type': 'bool'}, + } + + def __init__(self, *, start_timestamp: int, end_timestamp: int, presentation_window_duration: int, live_backoff_duration: int, timescale: int, force_end_timestamp: bool, **kwargs) -> None: + super(PresentationTimeRange, self).__init__(**kwargs) + self.start_timestamp = start_timestamp + self.end_timestamp = end_timestamp + self.presentation_window_duration = presentation_window_duration + self.live_backoff_duration = live_backoff_duration + self.timescale = timescale + self.force_end_timestamp = force_end_timestamp diff --git a/azure-mgmt-media/azure/mgmt/media/models/service_specification.py b/azure-mgmt-media/azure/mgmt/media/models/service_specification.py new file mode 100644 index 000000000000..c1b360d2ee40 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/service_specification.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceSpecification(Model): + """The service metric specifications. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar metric_specifications: List of metric specifications. + :vartype metric_specifications: list[~azure.mgmt.media.models.Metric] + """ + + _validation = { + 'metric_specifications': {'readonly': True}, + } + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[Metric]'}, + } + + def __init__(self, **kwargs): + super(ServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/service_specification_py3.py b/azure-mgmt-media/azure/mgmt/media/models/service_specification_py3.py new file mode 100644 index 000000000000..c46af945238e --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/service_specification_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceSpecification(Model): + """The service metric specifications. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar metric_specifications: List of metric specifications. + :vartype metric_specifications: list[~azure.mgmt.media.models.Metric] + """ + + _validation = { + 'metric_specifications': {'readonly': True}, + } + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[Metric]'}, + } + + def __init__(self, **kwargs) -> None: + super(ServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/storage_encrypted_asset_decryption_data.py b/azure-mgmt-media/azure/mgmt/media/models/storage_encrypted_asset_decryption_data.py new file mode 100644 index 000000000000..b5dd5feb9bda --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/storage_encrypted_asset_decryption_data.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageEncryptedAssetDecryptionData(Model): + """Data needed to decrypt asset files encrypted with legacy storage + encryption. + + :param key: The Asset File storage encryption key. + :type key: bytearray + :param asset_file_encryption_metadata: Asset File encryption metadata. + :type asset_file_encryption_metadata: + list[~azure.mgmt.media.models.AssetFileEncryptionMetadata] + """ + + _attribute_map = { + 'key': {'key': 'key', 'type': 'bytearray'}, + 'asset_file_encryption_metadata': {'key': 'assetFileEncryptionMetadata', 'type': '[AssetFileEncryptionMetadata]'}, + } + + def __init__(self, **kwargs): + super(StorageEncryptedAssetDecryptionData, self).__init__(**kwargs) + self.key = kwargs.get('key', None) + self.asset_file_encryption_metadata = kwargs.get('asset_file_encryption_metadata', None) diff --git a/azure-mgmt-media/azure/mgmt/media/models/storage_encrypted_asset_decryption_data_py3.py b/azure-mgmt-media/azure/mgmt/media/models/storage_encrypted_asset_decryption_data_py3.py new file mode 100644 index 000000000000..2180f3000c68 --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/models/storage_encrypted_asset_decryption_data_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageEncryptedAssetDecryptionData(Model): + """Data needed to decrypt asset files encrypted with legacy storage + encryption. + + :param key: The Asset File storage encryption key. + :type key: bytearray + :param asset_file_encryption_metadata: Asset File encryption metadata. + :type asset_file_encryption_metadata: + list[~azure.mgmt.media.models.AssetFileEncryptionMetadata] + """ + + _attribute_map = { + 'key': {'key': 'key', 'type': 'bytearray'}, + 'asset_file_encryption_metadata': {'key': 'assetFileEncryptionMetadata', 'type': '[AssetFileEncryptionMetadata]'}, + } + + def __init__(self, *, key: bytearray=None, asset_file_encryption_metadata=None, **kwargs) -> None: + super(StorageEncryptedAssetDecryptionData, self).__init__(**kwargs) + self.key = key + self.asset_file_encryption_metadata = asset_file_encryption_metadata diff --git a/azure-mgmt-media/azure/mgmt/media/models/streaming_endpoint.py b/azure-mgmt-media/azure/mgmt/media/models/streaming_endpoint.py index 54ca78ba316c..9e09f9317e07 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/streaming_endpoint.py +++ b/azure-mgmt-media/azure/mgmt/media/models/streaming_endpoint.py @@ -18,6 +18,8 @@ class StreamingEndpoint(TrackedResource): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Fully qualified resource ID for the resource. :vartype id: str :ivar name: The name of the resource. @@ -30,9 +32,12 @@ class StreamingEndpoint(TrackedResource): :type location: str :param description: The StreamingEndpoint description. :type description: str - :param scale_units: The number of scale units. + :param scale_units: Required. The number of scale units. Use the Scale + operation to adjust this value. :type scale_units: int - :param availability_set_name: AvailabilitySet name + :param availability_set_name: The name of the AvailabilitySet used with + this StreamingEndpoint for high availability streaming. This value can + only be set at creation time. :type availability_set_name: str :param access_control: The access control definition of the StreamingEndpoint. @@ -73,6 +78,7 @@ class StreamingEndpoint(TrackedResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'scale_units': {'required': True}, 'host_name': {'readonly': True}, 'provisioning_state': {'readonly': True}, 'resource_state': {'readonly': True}, diff --git a/azure-mgmt-media/azure/mgmt/media/models/streaming_endpoint_py3.py b/azure-mgmt-media/azure/mgmt/media/models/streaming_endpoint_py3.py index 111e28e6e79f..155128da3000 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/streaming_endpoint_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/streaming_endpoint_py3.py @@ -18,6 +18,8 @@ class StreamingEndpoint(TrackedResource): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Fully qualified resource ID for the resource. :vartype id: str :ivar name: The name of the resource. @@ -30,9 +32,12 @@ class StreamingEndpoint(TrackedResource): :type location: str :param description: The StreamingEndpoint description. :type description: str - :param scale_units: The number of scale units. + :param scale_units: Required. The number of scale units. Use the Scale + operation to adjust this value. :type scale_units: int - :param availability_set_name: AvailabilitySet name + :param availability_set_name: The name of the AvailabilitySet used with + this StreamingEndpoint for high availability streaming. This value can + only be set at creation time. :type availability_set_name: str :param access_control: The access control definition of the StreamingEndpoint. @@ -73,6 +78,7 @@ class StreamingEndpoint(TrackedResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'scale_units': {'required': True}, 'host_name': {'readonly': True}, 'provisioning_state': {'readonly': True}, 'resource_state': {'readonly': True}, @@ -105,7 +111,7 @@ class StreamingEndpoint(TrackedResource): 'last_modified': {'key': 'properties.lastModified', 'type': 'iso-8601'}, } - def __init__(self, *, tags=None, location: str=None, description: str=None, scale_units: int=None, availability_set_name: str=None, access_control=None, max_cache_age: int=None, custom_host_names=None, cdn_enabled: bool=None, cdn_provider: str=None, cdn_profile: str=None, cross_site_access_policies=None, **kwargs) -> None: + def __init__(self, *, scale_units: int, tags=None, location: str=None, description: str=None, availability_set_name: str=None, access_control=None, max_cache_age: int=None, custom_host_names=None, cdn_enabled: bool=None, cdn_provider: str=None, cdn_profile: str=None, cross_site_access_policies=None, **kwargs) -> None: super(StreamingEndpoint, self).__init__(tags=tags, location=location, **kwargs) self.description = description self.scale_units = scale_units diff --git a/azure-mgmt-media/azure/mgmt/media/models/streaming_entity_scale_unit.py b/azure-mgmt-media/azure/mgmt/media/models/streaming_entity_scale_unit.py index 0c77d5894b54..4f74310062f3 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/streaming_entity_scale_unit.py +++ b/azure-mgmt-media/azure/mgmt/media/models/streaming_entity_scale_unit.py @@ -15,8 +15,7 @@ class StreamingEntityScaleUnit(Model): """scale units definition. - :param scale_unit: ScaleUnit. The scale unit number of the - StreamingEndpoint. + :param scale_unit: The scale unit number of the StreamingEndpoint. :type scale_unit: int """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/streaming_entity_scale_unit_py3.py b/azure-mgmt-media/azure/mgmt/media/models/streaming_entity_scale_unit_py3.py index e38310c79f76..a419e3158946 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/streaming_entity_scale_unit_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/streaming_entity_scale_unit_py3.py @@ -15,8 +15,7 @@ class StreamingEntityScaleUnit(Model): """scale units definition. - :param scale_unit: ScaleUnit. The scale unit number of the - StreamingEndpoint. + :param scale_unit: The scale unit number of the StreamingEndpoint. :type scale_unit: int """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/streaming_locator.py b/azure-mgmt-media/azure/mgmt/media/models/streaming_locator.py index c33ebff92bc8..45e12258448b 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/streaming_locator.py +++ b/azure-mgmt-media/azure/mgmt/media/models/streaming_locator.py @@ -28,34 +28,31 @@ class StreamingLocator(ProxyResource): :vartype type: str :param asset_name: Required. Asset Name :type asset_name: str - :ivar created: Creation time of Streaming Locator + :ivar created: The creation time of the Streaming Locator. :vartype created: datetime - :param start_time: StartTime of Streaming Locator + :param start_time: The start time of the Streaming Locator. :type start_time: datetime - :param end_time: EndTime of Streaming Locator + :param end_time: The end time of the Streaming Locator. :type end_time: datetime - :param streaming_locator_id: StreamingLocatorId of Streaming Locator + :param streaming_locator_id: The StreamingLocatorId of the Streaming + Locator. :type streaming_locator_id: str - :param streaming_policy_name: Required. Streaming policy name used by this - streaming locator. Either specify the name of streaming policy you created - or use one of the predefined streaming polices. The predefined streaming - policies available are: 'Predefined_DownloadOnly', + :param streaming_policy_name: Required. Name of the Streaming Policy used + by this Streaming Locator. Either specify the name of Streaming Policy you + created or use one of the predefined Streaming Policies. The predefined + Streaming Policies available are: 'Predefined_DownloadOnly', 'Predefined_ClearStreamingOnly', 'Predefined_DownloadAndClearStreaming', - 'Predefined_ClearKey', 'Predefined_SecureStreaming' and - 'Predefined_SecureStreamingWithFairPlay' + 'Predefined_ClearKey', 'Predefined_MultiDrmCencStreaming' and + 'Predefined_MultiDrmStreaming' :type streaming_policy_name: str - :param default_content_key_policy_name: Default ContentKeyPolicy used by - this Streaming Locator + :param default_content_key_policy_name: Name of the default + ContentKeyPolicy used by this Streaming Locator. :type default_content_key_policy_name: str - :param content_keys: ContentKeys used by this Streaming Locator + :param content_keys: The ContentKeys used by this Streaming Locator. :type content_keys: list[~azure.mgmt.media.models.StreamingLocatorContentKey] - :param alternative_media_id: An Alternative Media Identifier associated - with the StreamingLocator. This identifier can be used to distinguish - different StreamingLocators for the same Asset for authorization purposes - in the CustomLicenseAcquisitionUrlTemplate or the - CustomKeyAcquisitionUrlTemplate of the StreamingPolicy specified in the - StreamingPolicyName field. + :param alternative_media_id: Alternative Media ID of this Streaming + Locator :type alternative_media_id: str """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_content_key.py b/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_content_key.py index 2c03ee059d94..3b5d0ac57245 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_content_key.py +++ b/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_content_key.py @@ -26,26 +26,28 @@ class StreamingLocatorContentKey(Model): 'CommonEncryptionCenc', 'CommonEncryptionCbcs', 'EnvelopeEncryption' :vartype type: str or ~azure.mgmt.media.models.StreamingLocatorContentKeyType - :param label: Label of Content Key - :type label: str + :param label_reference_in_streaming_policy: Label of Content Key as + specified in the Streaming Policy + :type label_reference_in_streaming_policy: str :param value: Value of of Content Key :type value: str :ivar policy_name: ContentKeyPolicy used by Content Key :vartype policy_name: str - :param tracks: Tracks which use this Content Key - :type tracks: list[~azure.mgmt.media.models.TrackSelection] + :ivar tracks: Tracks which use this Content Key + :vartype tracks: list[~azure.mgmt.media.models.TrackSelection] """ _validation = { 'id': {'required': True}, 'type': {'readonly': True}, 'policy_name': {'readonly': True}, + 'tracks': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'type': {'key': 'type', 'type': 'StreamingLocatorContentKeyType'}, - 'label': {'key': 'label', 'type': 'str'}, + 'label_reference_in_streaming_policy': {'key': 'labelReferenceInStreamingPolicy', 'type': 'str'}, 'value': {'key': 'value', 'type': 'str'}, 'policy_name': {'key': 'policyName', 'type': 'str'}, 'tracks': {'key': 'tracks', 'type': '[TrackSelection]'}, @@ -55,7 +57,7 @@ def __init__(self, **kwargs): super(StreamingLocatorContentKey, self).__init__(**kwargs) self.id = kwargs.get('id', None) self.type = None - self.label = kwargs.get('label', None) + self.label_reference_in_streaming_policy = kwargs.get('label_reference_in_streaming_policy', None) self.value = kwargs.get('value', None) self.policy_name = None - self.tracks = kwargs.get('tracks', None) + self.tracks = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_content_key_py3.py b/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_content_key_py3.py index a905b73f3c8e..0f39bb963e77 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_content_key_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_content_key_py3.py @@ -26,36 +26,38 @@ class StreamingLocatorContentKey(Model): 'CommonEncryptionCenc', 'CommonEncryptionCbcs', 'EnvelopeEncryption' :vartype type: str or ~azure.mgmt.media.models.StreamingLocatorContentKeyType - :param label: Label of Content Key - :type label: str + :param label_reference_in_streaming_policy: Label of Content Key as + specified in the Streaming Policy + :type label_reference_in_streaming_policy: str :param value: Value of of Content Key :type value: str :ivar policy_name: ContentKeyPolicy used by Content Key :vartype policy_name: str - :param tracks: Tracks which use this Content Key - :type tracks: list[~azure.mgmt.media.models.TrackSelection] + :ivar tracks: Tracks which use this Content Key + :vartype tracks: list[~azure.mgmt.media.models.TrackSelection] """ _validation = { 'id': {'required': True}, 'type': {'readonly': True}, 'policy_name': {'readonly': True}, + 'tracks': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'type': {'key': 'type', 'type': 'StreamingLocatorContentKeyType'}, - 'label': {'key': 'label', 'type': 'str'}, + 'label_reference_in_streaming_policy': {'key': 'labelReferenceInStreamingPolicy', 'type': 'str'}, 'value': {'key': 'value', 'type': 'str'}, 'policy_name': {'key': 'policyName', 'type': 'str'}, 'tracks': {'key': 'tracks', 'type': '[TrackSelection]'}, } - def __init__(self, *, id: str, label: str=None, value: str=None, tracks=None, **kwargs) -> None: + def __init__(self, *, id: str, label_reference_in_streaming_policy: str=None, value: str=None, **kwargs) -> None: super(StreamingLocatorContentKey, self).__init__(**kwargs) self.id = id self.type = None - self.label = label + self.label_reference_in_streaming_policy = label_reference_in_streaming_policy self.value = value self.policy_name = None - self.tracks = tracks + self.tracks = None diff --git a/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_py3.py b/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_py3.py index 9d260824f2fd..fb6670dabaf5 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/streaming_locator_py3.py @@ -28,34 +28,31 @@ class StreamingLocator(ProxyResource): :vartype type: str :param asset_name: Required. Asset Name :type asset_name: str - :ivar created: Creation time of Streaming Locator + :ivar created: The creation time of the Streaming Locator. :vartype created: datetime - :param start_time: StartTime of Streaming Locator + :param start_time: The start time of the Streaming Locator. :type start_time: datetime - :param end_time: EndTime of Streaming Locator + :param end_time: The end time of the Streaming Locator. :type end_time: datetime - :param streaming_locator_id: StreamingLocatorId of Streaming Locator + :param streaming_locator_id: The StreamingLocatorId of the Streaming + Locator. :type streaming_locator_id: str - :param streaming_policy_name: Required. Streaming policy name used by this - streaming locator. Either specify the name of streaming policy you created - or use one of the predefined streaming polices. The predefined streaming - policies available are: 'Predefined_DownloadOnly', + :param streaming_policy_name: Required. Name of the Streaming Policy used + by this Streaming Locator. Either specify the name of Streaming Policy you + created or use one of the predefined Streaming Policies. The predefined + Streaming Policies available are: 'Predefined_DownloadOnly', 'Predefined_ClearStreamingOnly', 'Predefined_DownloadAndClearStreaming', - 'Predefined_ClearKey', 'Predefined_SecureStreaming' and - 'Predefined_SecureStreamingWithFairPlay' + 'Predefined_ClearKey', 'Predefined_MultiDrmCencStreaming' and + 'Predefined_MultiDrmStreaming' :type streaming_policy_name: str - :param default_content_key_policy_name: Default ContentKeyPolicy used by - this Streaming Locator + :param default_content_key_policy_name: Name of the default + ContentKeyPolicy used by this Streaming Locator. :type default_content_key_policy_name: str - :param content_keys: ContentKeys used by this Streaming Locator + :param content_keys: The ContentKeys used by this Streaming Locator. :type content_keys: list[~azure.mgmt.media.models.StreamingLocatorContentKey] - :param alternative_media_id: An Alternative Media Identifier associated - with the StreamingLocator. This identifier can be used to distinguish - different StreamingLocators for the same Asset for authorization purposes - in the CustomLicenseAcquisitionUrlTemplate or the - CustomKeyAcquisitionUrlTemplate of the StreamingPolicy specified in the - StreamingPolicyName field. + :param alternative_media_id: Alternative Media ID of this Streaming + Locator :type alternative_media_id: str """ diff --git a/azure-mgmt-media/azure/mgmt/media/models/transform_output.py b/azure-mgmt-media/azure/mgmt/media/models/transform_output.py index 785ff6972137..c55989028d02 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/transform_output.py +++ b/azure-mgmt-media/azure/mgmt/media/models/transform_output.py @@ -20,8 +20,10 @@ class TransformOutput(Model): :param on_error: A Transform can define more than one outputs. This property defines what the service should do when one output fails - either - continue to produce other outputs, or, stop the other outputs. The default - is stop. Possible values include: 'StopProcessingJob', 'ContinueJob' + continue to produce other outputs, or, stop the other outputs. The overall + Job state will not reflect failures of outputs that are specified with + 'ContinueJob'. The default is 'StopProcessingJob'. Possible values + include: 'StopProcessingJob', 'ContinueJob' :type on_error: str or ~azure.mgmt.media.models.OnErrorType :param relative_priority: Sets the relative priority of the TransformOutputs within a Transform. This sets the priority that the diff --git a/azure-mgmt-media/azure/mgmt/media/models/transform_output_py3.py b/azure-mgmt-media/azure/mgmt/media/models/transform_output_py3.py index 4413f1b3f8d5..b941aee9f4c4 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/transform_output_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/transform_output_py3.py @@ -20,8 +20,10 @@ class TransformOutput(Model): :param on_error: A Transform can define more than one outputs. This property defines what the service should do when one output fails - either - continue to produce other outputs, or, stop the other outputs. The default - is stop. Possible values include: 'StopProcessingJob', 'ContinueJob' + continue to produce other outputs, or, stop the other outputs. The overall + Job state will not reflect failures of outputs that are specified with + 'ContinueJob'. The default is 'StopProcessingJob'. Possible values + include: 'StopProcessingJob', 'ContinueJob' :type on_error: str or ~azure.mgmt.media.models.OnErrorType :param relative_priority: Sets the relative priority of the TransformOutputs within a Transform. This sets the priority that the diff --git a/azure-mgmt-media/azure/mgmt/media/models/video_analyzer_preset.py b/azure-mgmt-media/azure/mgmt/media/models/video_analyzer_preset.py index b940656eedc3..2da00b718057 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/video_analyzer_preset.py +++ b/azure-mgmt-media/azure/mgmt/media/models/video_analyzer_preset.py @@ -23,11 +23,20 @@ class VideoAnalyzerPreset(AudioAnalyzerPreset): :param audio_language: The language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of supported languages are, 'en-US', 'en-GB', 'es-ES', 'es-MX', 'fr-FR', - 'it-IT', 'ja-JP', 'pt-BR', 'zh-CN'. + 'it-IT', 'ja-JP', 'pt-BR', 'zh-CN', 'de-DE', 'ar-EG', 'ru-RU', 'hi-IN'. If + not specified, automatic language detection would be employed. This + feature currently supports English, Chinese, French, German, Italian, + Japanese, Spanish, Russian, and Portuguese. The automatic detection works + best with audio recordings with clearly discernable speech. If automatic + detection fails to find the language, transcription would fallback to + English. :type audio_language: str - :param audio_insights_only: Whether to only extract audio insights when - processing a video file. - :type audio_insights_only: bool + :param insights_to_extract: The type of insights to be extracted. If not + set then based on the content the type will selected. If the content is + audi only then only audio insights are extraced and if it is video only. + Possible values include: 'AudioInsightsOnly', 'VideoInsightsOnly', + 'AllInsights' + :type insights_to_extract: str or ~azure.mgmt.media.models.InsightsType """ _validation = { @@ -37,10 +46,10 @@ class VideoAnalyzerPreset(AudioAnalyzerPreset): _attribute_map = { 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'audio_language': {'key': 'audioLanguage', 'type': 'str'}, - 'audio_insights_only': {'key': 'audioInsightsOnly', 'type': 'bool'}, + 'insights_to_extract': {'key': 'insightsToExtract', 'type': 'InsightsType'}, } def __init__(self, **kwargs): super(VideoAnalyzerPreset, self).__init__(**kwargs) - self.audio_insights_only = kwargs.get('audio_insights_only', None) + self.insights_to_extract = kwargs.get('insights_to_extract', None) self.odatatype = '#Microsoft.Media.VideoAnalyzerPreset' diff --git a/azure-mgmt-media/azure/mgmt/media/models/video_analyzer_preset_py3.py b/azure-mgmt-media/azure/mgmt/media/models/video_analyzer_preset_py3.py index 39ae967e81a4..d0c2ede45f48 100644 --- a/azure-mgmt-media/azure/mgmt/media/models/video_analyzer_preset_py3.py +++ b/azure-mgmt-media/azure/mgmt/media/models/video_analyzer_preset_py3.py @@ -23,11 +23,20 @@ class VideoAnalyzerPreset(AudioAnalyzerPreset): :param audio_language: The language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). The list of supported languages are, 'en-US', 'en-GB', 'es-ES', 'es-MX', 'fr-FR', - 'it-IT', 'ja-JP', 'pt-BR', 'zh-CN'. + 'it-IT', 'ja-JP', 'pt-BR', 'zh-CN', 'de-DE', 'ar-EG', 'ru-RU', 'hi-IN'. If + not specified, automatic language detection would be employed. This + feature currently supports English, Chinese, French, German, Italian, + Japanese, Spanish, Russian, and Portuguese. The automatic detection works + best with audio recordings with clearly discernable speech. If automatic + detection fails to find the language, transcription would fallback to + English. :type audio_language: str - :param audio_insights_only: Whether to only extract audio insights when - processing a video file. - :type audio_insights_only: bool + :param insights_to_extract: The type of insights to be extracted. If not + set then based on the content the type will selected. If the content is + audi only then only audio insights are extraced and if it is video only. + Possible values include: 'AudioInsightsOnly', 'VideoInsightsOnly', + 'AllInsights' + :type insights_to_extract: str or ~azure.mgmt.media.models.InsightsType """ _validation = { @@ -37,10 +46,10 @@ class VideoAnalyzerPreset(AudioAnalyzerPreset): _attribute_map = { 'odatatype': {'key': '@odata\\.type', 'type': 'str'}, 'audio_language': {'key': 'audioLanguage', 'type': 'str'}, - 'audio_insights_only': {'key': 'audioInsightsOnly', 'type': 'bool'}, + 'insights_to_extract': {'key': 'insightsToExtract', 'type': 'InsightsType'}, } - def __init__(self, *, audio_language: str=None, audio_insights_only: bool=None, **kwargs) -> None: + def __init__(self, *, audio_language: str=None, insights_to_extract=None, **kwargs) -> None: super(VideoAnalyzerPreset, self).__init__(audio_language=audio_language, **kwargs) - self.audio_insights_only = audio_insights_only + self.insights_to_extract = insights_to_extract self.odatatype = '#Microsoft.Media.VideoAnalyzerPreset' diff --git a/azure-mgmt-media/azure/mgmt/media/operations/__init__.py b/azure-mgmt-media/azure/mgmt/media/operations/__init__.py index 2b71a38b9fd2..42693e437634 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/__init__.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/__init__.py @@ -9,10 +9,12 @@ # regenerated. # -------------------------------------------------------------------------- +from .account_filters_operations import AccountFiltersOperations from .operations import Operations from .mediaservices_operations import MediaservicesOperations from .locations_operations import LocationsOperations from .assets_operations import AssetsOperations +from .asset_filters_operations import AssetFiltersOperations from .content_key_policies_operations import ContentKeyPoliciesOperations from .transforms_operations import TransformsOperations from .jobs_operations import JobsOperations @@ -23,10 +25,12 @@ from .streaming_endpoints_operations import StreamingEndpointsOperations __all__ = [ + 'AccountFiltersOperations', 'Operations', 'MediaservicesOperations', 'LocationsOperations', 'AssetsOperations', + 'AssetFiltersOperations', 'ContentKeyPoliciesOperations', 'TransformsOperations', 'JobsOperations', diff --git a/azure-mgmt-media/azure/mgmt/media/operations/account_filters_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/account_filters_operations.py new file mode 100644 index 000000000000..891e32e3dc9c --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/operations/account_filters_operations.py @@ -0,0 +1,382 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class AccountFiltersOperations(object): + """AccountFiltersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): + """List Account Filters. + + List Account Filters in the Media Services account. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AccountFilter + :rtype: + ~azure.mgmt.media.models.AccountFilterPaged[~azure.mgmt.media.models.AccountFilter] + :raises: + :class:`ApiErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.AccountFilterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AccountFilterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/accountFilters'} + + def get( + self, resource_group_name, account_name, filter_name, custom_headers=None, raw=False, **operation_config): + """Get an Account Filter. + + Get the details of an Account Filter in the Media Services account. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param filter_name: The Account Filter name + :type filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AccountFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.media.models.AccountFilter or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'filterName': self._serialize.url("filter_name", filter_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 404]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AccountFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/accountFilters/{filterName}'} + + def create_or_update( + self, resource_group_name, account_name, filter_name, parameters, custom_headers=None, raw=False, **operation_config): + """Create or update an Account Filter. + + Creates or updates an Account Filter in the Media Services account. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param filter_name: The Account Filter name + :type filter_name: str + :param parameters: The request parameters + :type parameters: ~azure.mgmt.media.models.AccountFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AccountFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.media.models.AccountFilter or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'filterName': self._serialize.url("filter_name", filter_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AccountFilter') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AccountFilter', response) + if response.status_code == 201: + deserialized = self._deserialize('AccountFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/accountFilters/{filterName}'} + + def delete( + self, resource_group_name, account_name, filter_name, custom_headers=None, raw=False, **operation_config): + """Delete an Account Filter. + + Deletes an Account Filter in the Media Services account. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param filter_name: The Account Filter name + :type filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'filterName': self._serialize.url("filter_name", filter_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ApiErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/accountFilters/{filterName}'} + + def update( + self, resource_group_name, account_name, filter_name, parameters, custom_headers=None, raw=False, **operation_config): + """Update an Account Filter. + + Updates an existing Account Filter in the Media Services account. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param filter_name: The Account Filter name + :type filter_name: str + :param parameters: The request parameters + :type parameters: ~azure.mgmt.media.models.AccountFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AccountFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.media.models.AccountFilter or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'filterName': self._serialize.url("filter_name", filter_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AccountFilter') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AccountFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/accountFilters/{filterName}'} diff --git a/azure-mgmt-media/azure/mgmt/media/operations/asset_filters_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/asset_filters_operations.py new file mode 100644 index 000000000000..45bb5fa9ab1e --- /dev/null +++ b/azure-mgmt-media/azure/mgmt/media/operations/asset_filters_operations.py @@ -0,0 +1,397 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class AssetFiltersOperations(object): + """AssetFiltersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, account_name, asset_name, custom_headers=None, raw=False, **operation_config): + """List Asset Filters. + + List Asset Filters associated with the specified Asset. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param asset_name: The Asset name. + :type asset_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AssetFilter + :rtype: + ~azure.mgmt.media.models.AssetFilterPaged[~azure.mgmt.media.models.AssetFilter] + :raises: + :class:`ApiErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'assetName': self._serialize.url("asset_name", asset_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.AssetFilterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AssetFilterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/assets/{assetName}/assetFilters'} + + def get( + self, resource_group_name, account_name, asset_name, filter_name, custom_headers=None, raw=False, **operation_config): + """Get an Asset Filter. + + Get the details of an Asset Filter associated with the specified Asset. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param asset_name: The Asset name. + :type asset_name: str + :param filter_name: The Asset Filter name + :type filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AssetFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.media.models.AssetFilter or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'assetName': self._serialize.url("asset_name", asset_name, 'str'), + 'filterName': self._serialize.url("filter_name", filter_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 404]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AssetFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/assets/{assetName}/assetFilters/{filterName}'} + + def create_or_update( + self, resource_group_name, account_name, asset_name, filter_name, parameters, custom_headers=None, raw=False, **operation_config): + """Create or update an Asset Filter. + + Creates or updates an Asset Filter associated with the specified Asset. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param asset_name: The Asset name. + :type asset_name: str + :param filter_name: The Asset Filter name + :type filter_name: str + :param parameters: The request parameters + :type parameters: ~azure.mgmt.media.models.AssetFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AssetFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.media.models.AssetFilter or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'assetName': self._serialize.url("asset_name", asset_name, 'str'), + 'filterName': self._serialize.url("filter_name", filter_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AssetFilter') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AssetFilter', response) + if response.status_code == 201: + deserialized = self._deserialize('AssetFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/assets/{assetName}/assetFilters/{filterName}'} + + def delete( + self, resource_group_name, account_name, asset_name, filter_name, custom_headers=None, raw=False, **operation_config): + """Delete an Asset Filter. + + Deletes an Asset Filter associated with the specified Asset. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param asset_name: The Asset name. + :type asset_name: str + :param filter_name: The Asset Filter name + :type filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'assetName': self._serialize.url("asset_name", asset_name, 'str'), + 'filterName': self._serialize.url("filter_name", filter_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + raise models.ApiErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/assets/{assetName}/assetFilters/{filterName}'} + + def update( + self, resource_group_name, account_name, asset_name, filter_name, parameters, custom_headers=None, raw=False, **operation_config): + """Update an Asset Filter. + + Updates an existing Asset Filter associated with the specified Asset. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param asset_name: The Asset name. + :type asset_name: str + :param filter_name: The Asset Filter name + :type filter_name: str + :param parameters: The request parameters + :type parameters: ~azure.mgmt.media.models.AssetFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AssetFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.media.models.AssetFilter or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'assetName': self._serialize.url("asset_name", asset_name, 'str'), + 'filterName': self._serialize.url("filter_name", filter_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AssetFilter') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AssetFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/assets/{assetName}/assetFilters/{filterName}'} diff --git a/azure-mgmt-media/azure/mgmt/media/operations/assets_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/assets_operations.py index 89f5234824e4..02511f0c2476 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/assets_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/assets_operations.py @@ -22,7 +22,7 @@ class AssetsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -96,7 +96,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -105,9 +105,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -165,7 +164,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -174,8 +173,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -234,6 +233,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -246,9 +246,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'Asset') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ApiErrorException(self._deserialize, response) @@ -306,7 +305,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -315,8 +313,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -368,6 +366,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -380,9 +379,8 @@ def update( body_content = self._serialize.body(parameters, 'Asset') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -450,6 +448,7 @@ def list_container_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -462,9 +461,8 @@ def list_container_sas( body_content = self._serialize.body(parameters, 'ListContainerSasInput') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -500,9 +498,10 @@ def get_encryption_key( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: AssetStorageEncryptionKey or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.media.models.AssetStorageEncryptionKey or - ~msrest.pipeline.ClientRawResponse + :return: StorageEncryptedAssetDecryptionData or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.media.models.StorageEncryptedAssetDecryptionData + or ~msrest.pipeline.ClientRawResponse :raises: :class:`ApiErrorException` """ @@ -522,7 +521,7 @@ def get_encryption_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -531,8 +530,8 @@ def get_encryption_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -540,7 +539,7 @@ def get_encryption_key( deserialized = None if response.status_code == 200: - deserialized = self._deserialize('AssetStorageEncryptionKey', response) + deserialized = self._deserialize('StorageEncryptedAssetDecryptionData', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -548,3 +547,71 @@ def get_encryption_key( return deserialized get_encryption_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/assets/{assetName}/getEncryptionKey'} + + def list_streaming_locators( + self, resource_group_name, account_name, asset_name, custom_headers=None, raw=False, **operation_config): + """List Streaming Locators. + + Lists Streaming Locators which are associated with this asset. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param asset_name: The Asset name. + :type asset_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ListStreamingLocatorsResponse or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.media.models.ListStreamingLocatorsResponse or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.list_streaming_locators.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'assetName': self._serialize.url("asset_name", asset_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ListStreamingLocatorsResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_streaming_locators.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/assets/{assetName}/listStreamingLocators'} diff --git a/azure-mgmt-media/azure/mgmt/media/operations/content_key_policies_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/content_key_policies_operations.py index a5d2809b1093..51a53ba8bfe7 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/content_key_policies_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/content_key_policies_operations.py @@ -22,7 +22,7 @@ class ContentKeyPoliciesOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -95,7 +95,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -104,9 +104,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -164,7 +163,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -173,8 +172,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -237,6 +236,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -249,9 +249,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'ContentKeyPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ApiErrorException(self._deserialize, response) @@ -309,7 +308,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -318,8 +316,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -375,6 +373,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -387,9 +386,8 @@ def update( body_content = self._serialize.body(parameters, 'ContentKeyPolicy') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -446,7 +444,7 @@ def get_policy_properties_with_secrets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -455,8 +453,8 @@ def get_policy_properties_with_secrets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/jobs_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/jobs_operations.py index bb59c5478e1a..f16c91831fcf 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/jobs_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/jobs_operations.py @@ -22,7 +22,7 @@ class JobsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -99,7 +99,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -108,9 +108,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -171,7 +170,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -180,8 +179,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -243,6 +242,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -255,9 +255,8 @@ def create( body_content = self._serialize.body(parameters, 'Job') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.ApiErrorException(self._deserialize, response) @@ -316,7 +315,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -325,8 +323,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -336,6 +334,82 @@ def delete( return client_raw_response delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/transforms/{transformName}/jobs/{jobName}'} + def update( + self, resource_group_name, account_name, transform_name, job_name, parameters, custom_headers=None, raw=False, **operation_config): + """Update Job. + + Updates a Job. + + :param resource_group_name: The name of the resource group within the + Azure subscription. + :type resource_group_name: str + :param account_name: The Media Services account name. + :type account_name: str + :param transform_name: The Transform name. + :type transform_name: str + :param job_name: The Job name. + :type job_name: str + :param parameters: The request parameters + :type parameters: ~azure.mgmt.media.models.Job + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Job or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.media.models.Job or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ApiErrorException` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'accountName': self._serialize.url("account_name", account_name, 'str'), + 'transformName': self._serialize.url("transform_name", transform_name, 'str'), + 'jobName': self._serialize.url("job_name", job_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Job') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ApiErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Job', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/transforms/{transformName}/jobs/{jobName}'} + def cancel_job( self, resource_group_name, account_name, transform_name, job_name, custom_headers=None, raw=False, **operation_config): """Cancel Job. @@ -378,7 +452,6 @@ def cancel_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -387,8 +460,8 @@ def cancel_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/live_events_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/live_events_operations.py index e25ab34f493f..6af08112a079 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/live_events_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/live_events_operations.py @@ -24,7 +24,7 @@ class LiveEventsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -34,7 +34,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -82,7 +82,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,9 +91,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -151,7 +150,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -160,8 +159,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -199,6 +198,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'LiveEvent') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -246,7 +245,8 @@ def create( :type live_event_name: str :param parameters: Live Event properties needed for creation. :type parameters: ~azure.mgmt.media.models.LiveEvent - :param auto_start: The flag indicates if auto start the Live Event. + :param auto_start: The flag indicates if the resource should be + automatically started on creation. :type auto_start: bool :param dict custom_headers: headers that will be added to the request :param bool raw: The poller return type is ClientRawResponse, the @@ -310,6 +310,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -322,9 +323,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'LiveEvent') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -416,7 +416,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -425,8 +424,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -502,7 +501,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,8 +509,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -602,9 +600,8 @@ def _stop_initial( body_content = self._serialize.body(parameters, 'LiveEventActionInput') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -684,7 +681,6 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -693,8 +689,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/live_outputs_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/live_outputs_operations.py index 2dff2d2c0147..536bc9772000 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/live_outputs_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/live_outputs_operations.py @@ -24,7 +24,7 @@ class LiveOutputsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -34,7 +34,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -85,7 +85,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -94,9 +94,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -157,7 +156,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -166,8 +165,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -204,6 +203,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -216,9 +216,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'LiveOutput') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -316,7 +315,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -325,8 +323,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/locations_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/locations_operations.py index 00e53e9e2219..36f04426d5a2 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/locations_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/locations_operations.py @@ -22,7 +22,7 @@ class LocationsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -42,7 +42,7 @@ def check_name_availability( Checks whether the Media Service resource name is available. - :param location_name: + :param location_name: The name of the location :type location_name: str :param name: The account name. :type name: str @@ -77,6 +77,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -89,9 +90,8 @@ def check_name_availability( body_content = self._serialize.body(parameters, 'CheckNameAvailabilityInput') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/mediaservices_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/mediaservices_operations.py index 254717aa692d..ef7b236eca31 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/mediaservices_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/mediaservices_operations.py @@ -22,7 +22,7 @@ class MediaservicesOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -143,7 +142,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -152,8 +151,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -209,6 +208,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'MediaService') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ApiErrorException(self._deserialize, response) @@ -278,7 +277,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -287,8 +285,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -337,6 +335,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -349,9 +348,8 @@ def update( body_content = self._serialize.body(parameters, 'MediaService') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -421,9 +419,8 @@ def sync_storage_keys( body_content = self._serialize.body(parameters, 'SyncStorageKeysInput') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -470,7 +467,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -479,9 +476,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -532,7 +528,7 @@ def get_by_subscription( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -541,8 +537,8 @@ def get_by_subscription( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/operations.py b/azure-mgmt-media/azure/mgmt/media/operations/operations.py index fbf16f510d84..b595bda1c84f 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/operations.py @@ -22,7 +22,7 @@ class Operations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -69,7 +69,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -78,9 +78,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/streaming_endpoints_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/streaming_endpoints_operations.py index 97550b18c87f..2c2c6511076f 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/streaming_endpoints_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/streaming_endpoints_operations.py @@ -24,7 +24,7 @@ class StreamingEndpointsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -34,7 +34,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -82,7 +82,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,9 +91,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -151,7 +150,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -160,8 +159,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -199,6 +198,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'StreamingEndpoint') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -246,7 +245,8 @@ def create( :type streaming_endpoint_name: str :param parameters: StreamingEndpoint properties needed for creation. :type parameters: ~azure.mgmt.media.models.StreamingEndpoint - :param auto_start: The flag indicates if auto start the Live Event. + :param auto_start: The flag indicates if the resource should be + automatically started on creation. :type auto_start: bool :param dict custom_headers: headers that will be added to the request :param bool raw: The poller return type is ClientRawResponse, the @@ -310,6 +310,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -322,9 +323,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'StreamingEndpoint') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -418,7 +418,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -427,8 +426,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -504,7 +503,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -513,8 +511,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -590,7 +588,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -599,8 +596,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -690,9 +687,8 @@ def _scale_initial( body_content = self._serialize.body(parameters, 'StreamingEntityScaleUnit') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ApiErrorException(self._deserialize, response) @@ -714,8 +710,7 @@ def scale( :type account_name: str :param streaming_endpoint_name: The name of the StreamingEndpoint. :type streaming_endpoint_name: str - :param scale_unit: ScaleUnit The scale unit number of the - StreamingEndpoint. + :param scale_unit: The scale unit number of the StreamingEndpoint. :type scale_unit: int :param dict custom_headers: headers that will be added to the request :param bool raw: The poller return type is ClientRawResponse, the diff --git a/azure-mgmt-media/azure/mgmt/media/operations/streaming_locators_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/streaming_locators_operations.py index 7c23eaafddc0..3b4c78540c63 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/streaming_locators_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/streaming_locators_operations.py @@ -22,7 +22,7 @@ class StreamingLocatorsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -95,7 +95,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -104,9 +104,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -164,7 +163,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -173,8 +172,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -233,6 +232,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -245,9 +245,8 @@ def create( body_content = self._serialize.body(parameters, 'StreamingLocator') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.ApiErrorException(self._deserialize, response) @@ -303,7 +302,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -312,8 +310,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -363,7 +361,7 @@ def list_content_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -372,8 +370,8 @@ def list_content_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -430,7 +428,7 @@ def list_paths( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -439,8 +437,8 @@ def list_paths( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/streaming_policies_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/streaming_policies_operations.py index 930de467a644..4af7dab71dfb 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/streaming_policies_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/streaming_policies_operations.py @@ -22,7 +22,7 @@ class StreamingPoliciesOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -95,7 +95,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -104,9 +104,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -164,7 +163,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -173,8 +172,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -233,6 +232,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -245,9 +245,8 @@ def create( body_content = self._serialize.body(parameters, 'StreamingPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: raise models.ApiErrorException(self._deserialize, response) @@ -303,7 +302,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -312,8 +310,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/operations/transforms_operations.py b/azure-mgmt-media/azure/mgmt/media/operations/transforms_operations.py index 528edb66b958..7b2d2c316596 100644 --- a/azure-mgmt-media/azure/mgmt/media/operations/transforms_operations.py +++ b/azure-mgmt-media/azure/mgmt/media/operations/transforms_operations.py @@ -22,7 +22,7 @@ class TransformsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-06-01-preview". + :ivar api_version: The Version of the API to be used with the client request. Constant value: "2018-07-01". """ models = models @@ -32,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2018-06-01-preview" + self.api_version = "2018-07-01" self.config = config @@ -96,7 +96,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -105,9 +105,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) @@ -165,7 +164,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -174,8 +173,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: raise models.ApiErrorException(self._deserialize, response) @@ -239,6 +238,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -251,9 +251,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'Transform') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ApiErrorException(self._deserialize, response) @@ -311,7 +310,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -320,8 +318,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ApiErrorException(self._deserialize, response) @@ -378,6 +376,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -390,9 +389,8 @@ def update( body_content = self._serialize.body(parameters, 'Transform') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ApiErrorException(self._deserialize, response) diff --git a/azure-mgmt-media/azure/mgmt/media/version.py b/azure-mgmt-media/azure/mgmt/media/version.py index 99dcc0aea3f2..44e69c49c178 100644 --- a/azure-mgmt-media/azure/mgmt/media/version.py +++ b/azure-mgmt-media/azure/mgmt/media/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "1.0.0rc2" +VERSION = "1.0.1" diff --git a/azure-mgmt-media/azure_bdist_wheel.py b/azure-mgmt-media/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-media/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-media/sdk_packaging.toml b/azure-mgmt-media/sdk_packaging.toml index 9e39b0b507ad..b48c0615ca53 100644 --- a/azure-mgmt-media/sdk_packaging.toml +++ b/azure-mgmt-media/sdk_packaging.toml @@ -2,5 +2,5 @@ package_name = "azure-mgmt-media" package_pprint_name = "Media Services" package_doc_id = "media-services" -is_stable = false +is_stable = true is_arm = true diff --git a/azure-mgmt-media/setup.cfg b/azure-mgmt-media/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-media/setup.cfg +++ b/azure-mgmt-media/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-media/setup.py b/azure-mgmt-media/setup.py index 49be05b7b104..3b6aca28ce9e 100644 --- a/azure-mgmt-media/setup.py +++ b/azure-mgmt-media/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-media" @@ -64,7 +58,7 @@ author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ - 'Development Status :: 4 - Beta', + 'Development Status :: 5 - Production/Stable', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', @@ -76,10 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ + 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-monitor/MANIFEST.in b/azure-mgmt-monitor/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-monitor/MANIFEST.in +++ b/azure-mgmt-monitor/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-monitor/README.rst b/azure-mgmt-monitor/README.rst index dbfab2bfccfb..04af85e3ba61 100644 --- a/azure-mgmt-monitor/README.rst +++ b/azure-mgmt-monitor/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Monitor Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-monitor/azure/__init__.py b/azure-mgmt-monitor/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-monitor/azure/__init__.py +++ b/azure-mgmt-monitor/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-monitor/azure/mgmt/__init__.py b/azure-mgmt-monitor/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-monitor/azure/mgmt/__init__.py +++ b/azure-mgmt-monitor/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-monitor/azure_bdist_wheel.py b/azure-mgmt-monitor/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-monitor/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-monitor/setup.cfg b/azure-mgmt-monitor/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-monitor/setup.cfg +++ b/azure-mgmt-monitor/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-monitor/setup.py b/azure-mgmt-monitor/setup.py index 6c95e69612cd..e26e0db3cc39 100644 --- a/azure-mgmt-monitor/setup.py +++ b/azure-mgmt-monitor/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-monitor" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-msi/MANIFEST.in b/azure-mgmt-msi/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-msi/MANIFEST.in +++ b/azure-mgmt-msi/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-msi/README.rst b/azure-mgmt-msi/README.rst index 6d2ecf1dd4b2..5ffcdf2d16fa 100644 --- a/azure-mgmt-msi/README.rst +++ b/azure-mgmt-msi/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure MSI Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-msi/azure/__init__.py b/azure-mgmt-msi/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-msi/azure/__init__.py +++ b/azure-mgmt-msi/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-msi/azure/mgmt/__init__.py b/azure-mgmt-msi/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-msi/azure/mgmt/__init__.py +++ b/azure-mgmt-msi/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-msi/azure_bdist_wheel.py b/azure-mgmt-msi/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-msi/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-msi/setup.cfg b/azure-mgmt-msi/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-msi/setup.cfg +++ b/azure-mgmt-msi/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-msi/setup.py b/azure-mgmt-msi/setup.py index 54211cbc9f6b..9cb911bb28bb 100644 --- a/azure-mgmt-msi/setup.py +++ b/azure-mgmt-msi/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-msi" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-network/HISTORY.rst b/azure-mgmt-network/HISTORY.rst index 0bc55f3f0d82..2e3b030c3ef6 100644 --- a/azure-mgmt-network/HISTORY.rst +++ b/azure-mgmt-network/HISTORY.rst @@ -3,6 +3,115 @@ Release History =============== +2.2.1 (2018-09-14) +++++++++++++++++++ + +**Bugfixes** + +- Fix unexpected exception with network_profiles.delete + +2.2.0 (2018-09-11) +++++++++++++++++++ + +Default API version is now 2018-08-01 + +**Features** + +- Model AzureFirewall has a new parameter nat_rule_collections +- Model VirtualHub has a new parameter route_table +- Model VirtualHub has a new parameter virtual_network_connections +- Model VirtualHub has a new parameter p2_svpn_gateway +- Model VirtualHub has a new parameter express_route_gateway +- Model VirtualHub has a new parameter vpn_gateway +- Model VirtualWAN has a new parameter allow_vnet_to_vnet_traffic +- Model VirtualWAN has a new parameter p2_svpn_server_configurations +- Model VirtualWAN has a new parameter office365_local_breakout_category +- Model VirtualWAN has a new parameter allow_branch_to_branch_traffic +- Model VirtualWAN has a new parameter security_provider_name +- Model VpnSite has a new parameter is_security_site +- Model VpnConnection has a new parameter connection_bandwidth +- Model VpnConnection has a new parameter enable_internet_security +- Model VpnConnection has a new parameter vpn_connection_protocol_type +- Model VpnConnection has a new parameter enable_rate_limiting +- Model ServiceEndpointPolicy has a new parameter subnets +- Model AzureFirewallApplicationRule has a new parameter fqdn_tags +- Model AzureFirewallApplicationRule has a new parameter target_fqdns +- Model VpnGateway has a new parameter vpn_gateway_scale_unit +- Model ApplicationGatewayBackendHttpSettings has a new parameter trusted_root_certificates +- Model VirtualNetworkGatewayConnection has a new parameter connection_protocol +- Model ExpressRouteCircuitPeering has a new parameter express_route_connection +- Model Subnet has a new parameter delegations +- Model Subnet has a new parameter address_prefixes +- Model Subnet has a new parameter ip_configuration_profiles +- Model Subnet has a new parameter service_association_links +- Model Subnet has a new parameter interface_endpoints +- Model Subnet has a new parameter purpose +- Model ApplicationGateway has a new parameter trusted_root_certificates +- Model NetworkInterface has a new parameter tap_configurations +- Model NetworkInterface has a new parameter hosted_workloads +- Model NetworkInterface has a new parameter interface_endpoint +- Model VirtualNetworkGatewayConnectionListEntity has a new parameter connection_protocol +- Model HubVirtualNetworkConnection has a new parameter enable_internet_security +- Model NetworkInterfaceIPConfiguration has a new parameter virtual_network_taps +- Added operation VirtualNetworkGatewaysOperations.reset_vpn_client_shared_key +- Added operation group ExpressRouteConnectionsOperations +- Added operation group AzureFirewallFqdnTagsOperations +- Added operation group VirtualNetworkTapsOperations +- Added operation group NetworkProfilesOperations +- Added operation group P2sVpnServerConfigurationsOperations +- Added operation group AvailableDelegationsOperations +- Added operation group InterfaceEndpointsOperations +- Added operation group P2sVpnGatewaysOperations +- Added operation group AvailableResourceGroupDelegationsOperations +- Added operation group ExpressRouteGatewaysOperations +- Added operation group NetworkInterfaceTapConfigurationsOperations + +**Breaking changes** + +- Model VirtualHub no longer has parameter hub_virtual_network_connections +- Model VpnConnection no longer has parameter connection_bandwidth_in_mbps +- Model AzureFirewallApplicationRule no longer has parameter target_urls +- Model VpnGateway no longer has parameter policies +- Model AzureFirewallIPConfiguration no longer has parameter internal_public_ip_address +- Model ApplicationGatewayAutoscaleConfiguration has a new signature +- Renamed virtual_wa_ns to virtual_wans + +2.1.0 (2018-08-28) +++++++++++++++++++ + +Default API version is now 2018-07-01 + +**Features** + +- Model ExpressRouteCircuit has a new parameter allow_global_reach +- Model PublicIPAddress has a new parameter public_ip_prefix +- Model BackendAddressPool has a new parameter outbound_rule (replaces outbound_nat_rule) +- Model FrontendIPConfiguration has a new parameter outbound_rules (replaces outbound_nat_rule) +- Model FrontendIPConfiguration has a new parameter public_ip_prefix +- Model LoadBalancingRule has a new parameter enable_tcp_reset +- Model VirtualNetworkGatewayConnectionListEntity has a new parameter express_route_gateway_bypass +- Model VirtualNetworkGatewayConnection has a new parameter express_route_gateway_bypass +- Model Subnet has a new parameter service_endpoint_policies +- Model InboundNatPool has a new parameter enable_tcp_reset +- Model LoadBalancer has a new parameter outbound_rules (replaces outbound_nat_rule) +- Model InboundNatRule has a new parameter enable_tcp_reset +- Added operation group ServiceEndpointPolicyDefinitionsOperations +- Added operation group ServiceEndpointPoliciesOperations +- Added operation group PublicIPPrefixesOperations + +**Breaking changes** + +- Model BackendAddressPool no longer has parameter outbound_nat_rule (now outbound_rules) +- Model FrontendIPConfiguration no longer has parameter outbound_nat_rules (now outbound_rules) +- Model LoadBalancer no longer has parameter outbound_nat_rules (now outbound_rules) + +2.0.1 (2018-08-07) +++++++++++++++++++ + +**Bugfixes** + +- Fix packet_captures.get_status empty output + 2.0.0 (2018-07-27) ++++++++++++++++++ diff --git a/azure-mgmt-network/MANIFEST.in b/azure-mgmt-network/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-network/MANIFEST.in +++ b/azure-mgmt-network/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-network/azure/__init__.py b/azure-mgmt-network/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-network/azure/__init__.py +++ b/azure-mgmt-network/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-network/azure/mgmt/__init__.py b/azure-mgmt-network/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-network/azure/mgmt/__init__.py +++ b/azure-mgmt-network/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-network/azure/mgmt/network/models.py b/azure-mgmt-network/azure/mgmt/network/models.py index 56d82efc4d57..1ee2c295f517 100644 --- a/azure-mgmt-network/azure/mgmt/network/models.py +++ b/azure-mgmt-network/azure/mgmt/network/models.py @@ -4,4 +4,4 @@ # Licensed under the MIT License. See License.txt in the project root for # license information. # -------------------------------------------------------------------------- -from .v2018_06_01.models import * \ No newline at end of file +from .v2018_08_01.models import * \ No newline at end of file diff --git a/azure-mgmt-network/azure/mgmt/network/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/network_management_client.py index b0f3dad9f39c..1d13d18293f8 100644 --- a/azure-mgmt-network/azure/mgmt/network/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/network_management_client.py @@ -79,7 +79,7 @@ class NetworkManagementClient(MultiApiClientMixin, SDKClient): :type profile: azure.profiles.KnownProfiles """ - DEFAULT_API_VERSION = '2018-06-01' + DEFAULT_API_VERSION = '2018-08-01' _PROFILE_TAG = "azure.mgmt.network.NetworkManagementClient" LATEST_PROFILE = ProfileDefinition({ _PROFILE_TAG: { @@ -114,16 +114,20 @@ def check_dns_name_availability( :param operation_config: :ref:`Operation configuration overrides`. :return: :class:`DnsNameAvailabilityResult - ` or + ` or :class:`ClientRawResponse` if raw=true :rtype: :class:`DnsNameAvailabilityResult - ` or + ` or :class:`ClientRawResponse` :raises: :class:`CloudError` """ api_version = self._get_api_version('check_dns_name_availability') - if api_version == '2018-06-01': + if api_version == '2018-08-01': + from .v2018_08_01 import NetworkManagementClient as ClientClass + elif api_version == '2018-07-01': + from .v2018_07_01 import NetworkManagementClient as ClientClass + elif api_version == '2018-06-01': from .v2018_06_01 import NetworkManagementClient as ClientClass elif api_version == '2018-04-01': from .v2018_04_01 import NetworkManagementClient as ClientClass @@ -181,6 +185,8 @@ def models(cls, api_version=DEFAULT_API_VERSION): * 2018-02-01: :mod:`v2018_02_01.models` * 2018-04-01: :mod:`v2018_04_01.models` * 2018-06-01: :mod:`v2018_06_01.models` + * 2018-07-01: :mod:`v2018_07_01.models` + * 2018-08-01: :mod:`v2018_08_01.models` """ if api_version == '2015-06-15': from .v2015_06_15 import models @@ -221,6 +227,12 @@ def models(cls, api_version=DEFAULT_API_VERSION): elif api_version == '2018-06-01': from .v2018_06_01 import models return models + elif api_version == '2018-07-01': + from .v2018_07_01 import models + return models + elif api_version == '2018-08-01': + from .v2018_08_01 import models + return models raise NotImplementedError("APIVersion {} is not available".format(api_version)) @property @@ -240,6 +252,8 @@ def application_gateways(self): * 2018-02-01: :class:`ApplicationGatewaysOperations` * 2018-04-01: :class:`ApplicationGatewaysOperations` * 2018-06-01: :class:`ApplicationGatewaysOperations` + * 2018-07-01: :class:`ApplicationGatewaysOperations` + * 2018-08-01: :class:`ApplicationGatewaysOperations` """ api_version = self._get_api_version('application_gateways') if api_version == '2015-06-15': @@ -268,6 +282,10 @@ def application_gateways(self): from .v2018_04_01.operations import ApplicationGatewaysOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ApplicationGatewaysOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ApplicationGatewaysOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ApplicationGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -283,6 +301,8 @@ def application_security_groups(self): * 2018-02-01: :class:`ApplicationSecurityGroupsOperations` * 2018-04-01: :class:`ApplicationSecurityGroupsOperations` * 2018-06-01: :class:`ApplicationSecurityGroupsOperations` + * 2018-07-01: :class:`ApplicationSecurityGroupsOperations` + * 2018-08-01: :class:`ApplicationSecurityGroupsOperations` """ api_version = self._get_api_version('application_security_groups') if api_version == '2017-09-01': @@ -299,6 +319,23 @@ def application_security_groups(self): from .v2018_04_01.operations import ApplicationSecurityGroupsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ApplicationSecurityGroupsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ApplicationSecurityGroupsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ApplicationSecurityGroupsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def available_delegations(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`AvailableDelegationsOperations` + """ + api_version = self._get_api_version('available_delegations') + if api_version == '2018-08-01': + from .v2018_08_01.operations import AvailableDelegationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -316,6 +353,8 @@ def available_endpoint_services(self): * 2018-02-01: :class:`AvailableEndpointServicesOperations` * 2018-04-01: :class:`AvailableEndpointServicesOperations` * 2018-06-01: :class:`AvailableEndpointServicesOperations` + * 2018-07-01: :class:`AvailableEndpointServicesOperations` + * 2018-08-01: :class:`AvailableEndpointServicesOperations` """ api_version = self._get_api_version('available_endpoint_services') if api_version == '2017-06-01': @@ -336,6 +375,36 @@ def available_endpoint_services(self): from .v2018_04_01.operations import AvailableEndpointServicesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import AvailableEndpointServicesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import AvailableEndpointServicesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import AvailableEndpointServicesOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def available_resource_group_delegations(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`AvailableResourceGroupDelegationsOperations` + """ + api_version = self._get_api_version('available_resource_group_delegations') + if api_version == '2018-08-01': + from .v2018_08_01.operations import AvailableResourceGroupDelegationsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def azure_firewall_fqdn_tags(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`AzureFirewallFqdnTagsOperations` + """ + api_version = self._get_api_version('azure_firewall_fqdn_tags') + if api_version == '2018-08-01': + from .v2018_08_01.operations import AzureFirewallFqdnTagsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -346,12 +415,18 @@ def azure_firewalls(self): * 2018-04-01: :class:`AzureFirewallsOperations` * 2018-06-01: :class:`AzureFirewallsOperations` + * 2018-07-01: :class:`AzureFirewallsOperations` + * 2018-08-01: :class:`AzureFirewallsOperations` """ api_version = self._get_api_version('azure_firewalls') if api_version == '2018-04-01': from .v2018_04_01.operations import AzureFirewallsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import AzureFirewallsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import AzureFirewallsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import AzureFirewallsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -371,6 +446,8 @@ def bgp_service_communities(self): * 2018-02-01: :class:`BgpServiceCommunitiesOperations` * 2018-04-01: :class:`BgpServiceCommunitiesOperations` * 2018-06-01: :class:`BgpServiceCommunitiesOperations` + * 2018-07-01: :class:`BgpServiceCommunitiesOperations` + * 2018-08-01: :class:`BgpServiceCommunitiesOperations` """ api_version = self._get_api_version('bgp_service_communities') if api_version == '2016-12-01': @@ -395,6 +472,10 @@ def bgp_service_communities(self): from .v2018_04_01.operations import BgpServiceCommunitiesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import BgpServiceCommunitiesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import BgpServiceCommunitiesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import BgpServiceCommunitiesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -409,6 +490,8 @@ def connection_monitors(self): * 2018-02-01: :class:`ConnectionMonitorsOperations` * 2018-04-01: :class:`ConnectionMonitorsOperations` * 2018-06-01: :class:`ConnectionMonitorsOperations` + * 2018-07-01: :class:`ConnectionMonitorsOperations` + * 2018-08-01: :class:`ConnectionMonitorsOperations` """ api_version = self._get_api_version('connection_monitors') if api_version == '2017-10-01': @@ -423,6 +506,10 @@ def connection_monitors(self): from .v2018_04_01.operations import ConnectionMonitorsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ConnectionMonitorsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ConnectionMonitorsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ConnectionMonitorsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -434,6 +521,8 @@ def ddos_protection_plans(self): * 2018-02-01: :class:`DdosProtectionPlansOperations` * 2018-04-01: :class:`DdosProtectionPlansOperations` * 2018-06-01: :class:`DdosProtectionPlansOperations` + * 2018-07-01: :class:`DdosProtectionPlansOperations` + * 2018-08-01: :class:`DdosProtectionPlansOperations` """ api_version = self._get_api_version('ddos_protection_plans') if api_version == '2018-02-01': @@ -442,6 +531,10 @@ def ddos_protection_plans(self): from .v2018_04_01.operations import DdosProtectionPlansOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import DdosProtectionPlansOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import DdosProtectionPlansOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import DdosProtectionPlansOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -459,6 +552,8 @@ def default_security_rules(self): * 2018-02-01: :class:`DefaultSecurityRulesOperations` * 2018-04-01: :class:`DefaultSecurityRulesOperations` * 2018-06-01: :class:`DefaultSecurityRulesOperations` + * 2018-07-01: :class:`DefaultSecurityRulesOperations` + * 2018-08-01: :class:`DefaultSecurityRulesOperations` """ api_version = self._get_api_version('default_security_rules') if api_version == '2017-06-01': @@ -479,6 +574,10 @@ def default_security_rules(self): from .v2018_04_01.operations import DefaultSecurityRulesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import DefaultSecurityRulesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import DefaultSecurityRulesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import DefaultSecurityRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -500,6 +599,8 @@ def express_route_circuit_authorizations(self): * 2018-02-01: :class:`ExpressRouteCircuitAuthorizationsOperations` * 2018-04-01: :class:`ExpressRouteCircuitAuthorizationsOperations` * 2018-06-01: :class:`ExpressRouteCircuitAuthorizationsOperations` + * 2018-07-01: :class:`ExpressRouteCircuitAuthorizationsOperations` + * 2018-08-01: :class:`ExpressRouteCircuitAuthorizationsOperations` """ api_version = self._get_api_version('express_route_circuit_authorizations') if api_version == '2015-06-15': @@ -528,6 +629,10 @@ def express_route_circuit_authorizations(self): from .v2018_04_01.operations import ExpressRouteCircuitAuthorizationsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ExpressRouteCircuitAuthorizationsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ExpressRouteCircuitAuthorizationsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteCircuitAuthorizationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -539,6 +644,8 @@ def express_route_circuit_connections(self): * 2018-02-01: :class:`ExpressRouteCircuitConnectionsOperations` * 2018-04-01: :class:`ExpressRouteCircuitConnectionsOperations` * 2018-06-01: :class:`ExpressRouteCircuitConnectionsOperations` + * 2018-07-01: :class:`ExpressRouteCircuitConnectionsOperations` + * 2018-08-01: :class:`ExpressRouteCircuitConnectionsOperations` """ api_version = self._get_api_version('express_route_circuit_connections') if api_version == '2018-02-01': @@ -547,6 +654,10 @@ def express_route_circuit_connections(self): from .v2018_04_01.operations import ExpressRouteCircuitConnectionsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ExpressRouteCircuitConnectionsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ExpressRouteCircuitConnectionsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteCircuitConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -568,6 +679,8 @@ def express_route_circuit_peerings(self): * 2018-02-01: :class:`ExpressRouteCircuitPeeringsOperations` * 2018-04-01: :class:`ExpressRouteCircuitPeeringsOperations` * 2018-06-01: :class:`ExpressRouteCircuitPeeringsOperations` + * 2018-07-01: :class:`ExpressRouteCircuitPeeringsOperations` + * 2018-08-01: :class:`ExpressRouteCircuitPeeringsOperations` """ api_version = self._get_api_version('express_route_circuit_peerings') if api_version == '2015-06-15': @@ -596,6 +709,10 @@ def express_route_circuit_peerings(self): from .v2018_04_01.operations import ExpressRouteCircuitPeeringsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ExpressRouteCircuitPeeringsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ExpressRouteCircuitPeeringsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteCircuitPeeringsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -617,6 +734,8 @@ def express_route_circuits(self): * 2018-02-01: :class:`ExpressRouteCircuitsOperations` * 2018-04-01: :class:`ExpressRouteCircuitsOperations` * 2018-06-01: :class:`ExpressRouteCircuitsOperations` + * 2018-07-01: :class:`ExpressRouteCircuitsOperations` + * 2018-08-01: :class:`ExpressRouteCircuitsOperations` """ api_version = self._get_api_version('express_route_circuits') if api_version == '2015-06-15': @@ -645,6 +764,23 @@ def express_route_circuits(self): from .v2018_04_01.operations import ExpressRouteCircuitsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ExpressRouteCircuitsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ExpressRouteCircuitsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteCircuitsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def express_route_connections(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`ExpressRouteConnectionsOperations` + """ + api_version = self._get_api_version('express_route_connections') + if api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -656,6 +792,8 @@ def express_route_cross_connection_peerings(self): * 2018-02-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` * 2018-04-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` * 2018-06-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` + * 2018-07-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` + * 2018-08-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` """ api_version = self._get_api_version('express_route_cross_connection_peerings') if api_version == '2018-02-01': @@ -664,6 +802,10 @@ def express_route_cross_connection_peerings(self): from .v2018_04_01.operations import ExpressRouteCrossConnectionPeeringsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ExpressRouteCrossConnectionPeeringsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ExpressRouteCrossConnectionPeeringsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteCrossConnectionPeeringsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -675,6 +817,8 @@ def express_route_cross_connections(self): * 2018-02-01: :class:`ExpressRouteCrossConnectionsOperations` * 2018-04-01: :class:`ExpressRouteCrossConnectionsOperations` * 2018-06-01: :class:`ExpressRouteCrossConnectionsOperations` + * 2018-07-01: :class:`ExpressRouteCrossConnectionsOperations` + * 2018-08-01: :class:`ExpressRouteCrossConnectionsOperations` """ api_version = self._get_api_version('express_route_cross_connections') if api_version == '2018-02-01': @@ -683,6 +827,23 @@ def express_route_cross_connections(self): from .v2018_04_01.operations import ExpressRouteCrossConnectionsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ExpressRouteCrossConnectionsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ExpressRouteCrossConnectionsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteCrossConnectionsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def express_route_gateways(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`ExpressRouteGatewaysOperations` + """ + api_version = self._get_api_version('express_route_gateways') + if api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -704,6 +865,8 @@ def express_route_service_providers(self): * 2018-02-01: :class:`ExpressRouteServiceProvidersOperations` * 2018-04-01: :class:`ExpressRouteServiceProvidersOperations` * 2018-06-01: :class:`ExpressRouteServiceProvidersOperations` + * 2018-07-01: :class:`ExpressRouteServiceProvidersOperations` + * 2018-08-01: :class:`ExpressRouteServiceProvidersOperations` """ api_version = self._get_api_version('express_route_service_providers') if api_version == '2015-06-15': @@ -732,6 +895,10 @@ def express_route_service_providers(self): from .v2018_04_01.operations import ExpressRouteServiceProvidersOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import ExpressRouteServiceProvidersOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import ExpressRouteServiceProvidersOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ExpressRouteServiceProvidersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -742,12 +909,18 @@ def hub_virtual_network_connections(self): * 2018-04-01: :class:`HubVirtualNetworkConnectionsOperations` * 2018-06-01: :class:`HubVirtualNetworkConnectionsOperations` + * 2018-07-01: :class:`HubVirtualNetworkConnectionsOperations` + * 2018-08-01: :class:`HubVirtualNetworkConnectionsOperations` """ api_version = self._get_api_version('hub_virtual_network_connections') if api_version == '2018-04-01': from .v2018_04_01.operations import HubVirtualNetworkConnectionsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import HubVirtualNetworkConnectionsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import HubVirtualNetworkConnectionsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import HubVirtualNetworkConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -765,6 +938,8 @@ def inbound_nat_rules(self): * 2018-02-01: :class:`InboundNatRulesOperations` * 2018-04-01: :class:`InboundNatRulesOperations` * 2018-06-01: :class:`InboundNatRulesOperations` + * 2018-07-01: :class:`InboundNatRulesOperations` + * 2018-08-01: :class:`InboundNatRulesOperations` """ api_version = self._get_api_version('inbound_nat_rules') if api_version == '2017-06-01': @@ -785,6 +960,23 @@ def inbound_nat_rules(self): from .v2018_04_01.operations import InboundNatRulesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import InboundNatRulesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import InboundNatRulesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import InboundNatRulesOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def interface_endpoints(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`InterfaceEndpointsOperations` + """ + api_version = self._get_api_version('interface_endpoints') + if api_version == '2018-08-01': + from .v2018_08_01.operations import InterfaceEndpointsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -802,6 +994,8 @@ def load_balancer_backend_address_pools(self): * 2018-02-01: :class:`LoadBalancerBackendAddressPoolsOperations` * 2018-04-01: :class:`LoadBalancerBackendAddressPoolsOperations` * 2018-06-01: :class:`LoadBalancerBackendAddressPoolsOperations` + * 2018-07-01: :class:`LoadBalancerBackendAddressPoolsOperations` + * 2018-08-01: :class:`LoadBalancerBackendAddressPoolsOperations` """ api_version = self._get_api_version('load_balancer_backend_address_pools') if api_version == '2017-06-01': @@ -822,6 +1016,10 @@ def load_balancer_backend_address_pools(self): from .v2018_04_01.operations import LoadBalancerBackendAddressPoolsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import LoadBalancerBackendAddressPoolsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import LoadBalancerBackendAddressPoolsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import LoadBalancerBackendAddressPoolsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -839,6 +1037,8 @@ def load_balancer_frontend_ip_configurations(self): * 2018-02-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` * 2018-04-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` * 2018-06-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` + * 2018-07-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` + * 2018-08-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` """ api_version = self._get_api_version('load_balancer_frontend_ip_configurations') if api_version == '2017-06-01': @@ -859,6 +1059,10 @@ def load_balancer_frontend_ip_configurations(self): from .v2018_04_01.operations import LoadBalancerFrontendIPConfigurationsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import LoadBalancerFrontendIPConfigurationsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import LoadBalancerFrontendIPConfigurationsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import LoadBalancerFrontendIPConfigurationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -876,6 +1080,8 @@ def load_balancer_load_balancing_rules(self): * 2018-02-01: :class:`LoadBalancerLoadBalancingRulesOperations` * 2018-04-01: :class:`LoadBalancerLoadBalancingRulesOperations` * 2018-06-01: :class:`LoadBalancerLoadBalancingRulesOperations` + * 2018-07-01: :class:`LoadBalancerLoadBalancingRulesOperations` + * 2018-08-01: :class:`LoadBalancerLoadBalancingRulesOperations` """ api_version = self._get_api_version('load_balancer_load_balancing_rules') if api_version == '2017-06-01': @@ -896,6 +1102,10 @@ def load_balancer_load_balancing_rules(self): from .v2018_04_01.operations import LoadBalancerLoadBalancingRulesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import LoadBalancerLoadBalancingRulesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import LoadBalancerLoadBalancingRulesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import LoadBalancerLoadBalancingRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -913,6 +1123,8 @@ def load_balancer_network_interfaces(self): * 2018-02-01: :class:`LoadBalancerNetworkInterfacesOperations` * 2018-04-01: :class:`LoadBalancerNetworkInterfacesOperations` * 2018-06-01: :class:`LoadBalancerNetworkInterfacesOperations` + * 2018-07-01: :class:`LoadBalancerNetworkInterfacesOperations` + * 2018-08-01: :class:`LoadBalancerNetworkInterfacesOperations` """ api_version = self._get_api_version('load_balancer_network_interfaces') if api_version == '2017-06-01': @@ -933,6 +1145,10 @@ def load_balancer_network_interfaces(self): from .v2018_04_01.operations import LoadBalancerNetworkInterfacesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import LoadBalancerNetworkInterfacesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import LoadBalancerNetworkInterfacesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import LoadBalancerNetworkInterfacesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -950,6 +1166,8 @@ def load_balancer_probes(self): * 2018-02-01: :class:`LoadBalancerProbesOperations` * 2018-04-01: :class:`LoadBalancerProbesOperations` * 2018-06-01: :class:`LoadBalancerProbesOperations` + * 2018-07-01: :class:`LoadBalancerProbesOperations` + * 2018-08-01: :class:`LoadBalancerProbesOperations` """ api_version = self._get_api_version('load_balancer_probes') if api_version == '2017-06-01': @@ -970,6 +1188,10 @@ def load_balancer_probes(self): from .v2018_04_01.operations import LoadBalancerProbesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import LoadBalancerProbesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import LoadBalancerProbesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import LoadBalancerProbesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -991,6 +1213,8 @@ def load_balancers(self): * 2018-02-01: :class:`LoadBalancersOperations` * 2018-04-01: :class:`LoadBalancersOperations` * 2018-06-01: :class:`LoadBalancersOperations` + * 2018-07-01: :class:`LoadBalancersOperations` + * 2018-08-01: :class:`LoadBalancersOperations` """ api_version = self._get_api_version('load_balancers') if api_version == '2015-06-15': @@ -1019,6 +1243,10 @@ def load_balancers(self): from .v2018_04_01.operations import LoadBalancersOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import LoadBalancersOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import LoadBalancersOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import LoadBalancersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1040,6 +1268,8 @@ def local_network_gateways(self): * 2018-02-01: :class:`LocalNetworkGatewaysOperations` * 2018-04-01: :class:`LocalNetworkGatewaysOperations` * 2018-06-01: :class:`LocalNetworkGatewaysOperations` + * 2018-07-01: :class:`LocalNetworkGatewaysOperations` + * 2018-08-01: :class:`LocalNetworkGatewaysOperations` """ api_version = self._get_api_version('local_network_gateways') if api_version == '2015-06-15': @@ -1068,6 +1298,10 @@ def local_network_gateways(self): from .v2018_04_01.operations import LocalNetworkGatewaysOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import LocalNetworkGatewaysOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import LocalNetworkGatewaysOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import LocalNetworkGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1085,6 +1319,8 @@ def network_interface_ip_configurations(self): * 2018-02-01: :class:`NetworkInterfaceIPConfigurationsOperations` * 2018-04-01: :class:`NetworkInterfaceIPConfigurationsOperations` * 2018-06-01: :class:`NetworkInterfaceIPConfigurationsOperations` + * 2018-07-01: :class:`NetworkInterfaceIPConfigurationsOperations` + * 2018-08-01: :class:`NetworkInterfaceIPConfigurationsOperations` """ api_version = self._get_api_version('network_interface_ip_configurations') if api_version == '2017-06-01': @@ -1105,6 +1341,10 @@ def network_interface_ip_configurations(self): from .v2018_04_01.operations import NetworkInterfaceIPConfigurationsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import NetworkInterfaceIPConfigurationsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import NetworkInterfaceIPConfigurationsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import NetworkInterfaceIPConfigurationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1122,6 +1362,8 @@ def network_interface_load_balancers(self): * 2018-02-01: :class:`NetworkInterfaceLoadBalancersOperations` * 2018-04-01: :class:`NetworkInterfaceLoadBalancersOperations` * 2018-06-01: :class:`NetworkInterfaceLoadBalancersOperations` + * 2018-07-01: :class:`NetworkInterfaceLoadBalancersOperations` + * 2018-08-01: :class:`NetworkInterfaceLoadBalancersOperations` """ api_version = self._get_api_version('network_interface_load_balancers') if api_version == '2017-06-01': @@ -1142,6 +1384,23 @@ def network_interface_load_balancers(self): from .v2018_04_01.operations import NetworkInterfaceLoadBalancersOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import NetworkInterfaceLoadBalancersOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import NetworkInterfaceLoadBalancersOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import NetworkInterfaceLoadBalancersOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def network_interface_tap_configurations(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`NetworkInterfaceTapConfigurationsOperations` + """ + api_version = self._get_api_version('network_interface_tap_configurations') + if api_version == '2018-08-01': + from .v2018_08_01.operations import NetworkInterfaceTapConfigurationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1163,6 +1422,8 @@ def network_interfaces(self): * 2018-02-01: :class:`NetworkInterfacesOperations` * 2018-04-01: :class:`NetworkInterfacesOperations` * 2018-06-01: :class:`NetworkInterfacesOperations` + * 2018-07-01: :class:`NetworkInterfacesOperations` + * 2018-08-01: :class:`NetworkInterfacesOperations` """ api_version = self._get_api_version('network_interfaces') if api_version == '2015-06-15': @@ -1191,6 +1452,23 @@ def network_interfaces(self): from .v2018_04_01.operations import NetworkInterfacesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import NetworkInterfacesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import NetworkInterfacesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import NetworkInterfacesOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def network_profiles(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`NetworkProfilesOperations` + """ + api_version = self._get_api_version('network_profiles') + if api_version == '2018-08-01': + from .v2018_08_01.operations import NetworkProfilesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1212,6 +1490,8 @@ def network_security_groups(self): * 2018-02-01: :class:`NetworkSecurityGroupsOperations` * 2018-04-01: :class:`NetworkSecurityGroupsOperations` * 2018-06-01: :class:`NetworkSecurityGroupsOperations` + * 2018-07-01: :class:`NetworkSecurityGroupsOperations` + * 2018-08-01: :class:`NetworkSecurityGroupsOperations` """ api_version = self._get_api_version('network_security_groups') if api_version == '2015-06-15': @@ -1240,6 +1520,10 @@ def network_security_groups(self): from .v2018_04_01.operations import NetworkSecurityGroupsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import NetworkSecurityGroupsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import NetworkSecurityGroupsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import NetworkSecurityGroupsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1260,6 +1544,8 @@ def network_watchers(self): * 2018-02-01: :class:`NetworkWatchersOperations` * 2018-04-01: :class:`NetworkWatchersOperations` * 2018-06-01: :class:`NetworkWatchersOperations` + * 2018-07-01: :class:`NetworkWatchersOperations` + * 2018-08-01: :class:`NetworkWatchersOperations` """ api_version = self._get_api_version('network_watchers') if api_version == '2016-09-01': @@ -1286,6 +1572,10 @@ def network_watchers(self): from .v2018_04_01.operations import NetworkWatchersOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import NetworkWatchersOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import NetworkWatchersOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import NetworkWatchersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1301,6 +1591,8 @@ def operations(self): * 2018-02-01: :class:`Operations` * 2018-04-01: :class:`Operations` * 2018-06-01: :class:`Operations` + * 2018-07-01: :class:`Operations` + * 2018-08-01: :class:`Operations` """ api_version = self._get_api_version('operations') if api_version == '2017-09-01': @@ -1317,6 +1609,10 @@ def operations(self): from .v2018_04_01.operations import Operations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import Operations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import Operations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import Operations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1337,6 +1633,8 @@ def packet_captures(self): * 2018-02-01: :class:`PacketCapturesOperations` * 2018-04-01: :class:`PacketCapturesOperations` * 2018-06-01: :class:`PacketCapturesOperations` + * 2018-07-01: :class:`PacketCapturesOperations` + * 2018-08-01: :class:`PacketCapturesOperations` """ api_version = self._get_api_version('packet_captures') if api_version == '2016-09-01': @@ -1363,6 +1661,10 @@ def packet_captures(self): from .v2018_04_01.operations import PacketCapturesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import PacketCapturesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import PacketCapturesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import PacketCapturesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1384,6 +1686,8 @@ def public_ip_addresses(self): * 2018-02-01: :class:`PublicIPAddressesOperations` * 2018-04-01: :class:`PublicIPAddressesOperations` * 2018-06-01: :class:`PublicIPAddressesOperations` + * 2018-07-01: :class:`PublicIPAddressesOperations` + * 2018-08-01: :class:`PublicIPAddressesOperations` """ api_version = self._get_api_version('public_ip_addresses') if api_version == '2015-06-15': @@ -1412,6 +1716,26 @@ def public_ip_addresses(self): from .v2018_04_01.operations import PublicIPAddressesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import PublicIPAddressesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import PublicIPAddressesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import PublicIPAddressesOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def public_ip_prefixes(self): + """Instance depends on the API version: + + * 2018-07-01: :class:`PublicIPPrefixesOperations` + * 2018-08-01: :class:`PublicIPPrefixesOperations` + """ + api_version = self._get_api_version('public_ip_prefixes') + if api_version == '2018-07-01': + from .v2018_07_01.operations import PublicIPPrefixesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import PublicIPPrefixesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1431,6 +1755,8 @@ def route_filter_rules(self): * 2018-02-01: :class:`RouteFilterRulesOperations` * 2018-04-01: :class:`RouteFilterRulesOperations` * 2018-06-01: :class:`RouteFilterRulesOperations` + * 2018-07-01: :class:`RouteFilterRulesOperations` + * 2018-08-01: :class:`RouteFilterRulesOperations` """ api_version = self._get_api_version('route_filter_rules') if api_version == '2016-12-01': @@ -1455,6 +1781,10 @@ def route_filter_rules(self): from .v2018_04_01.operations import RouteFilterRulesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import RouteFilterRulesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import RouteFilterRulesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import RouteFilterRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1474,6 +1804,8 @@ def route_filters(self): * 2018-02-01: :class:`RouteFiltersOperations` * 2018-04-01: :class:`RouteFiltersOperations` * 2018-06-01: :class:`RouteFiltersOperations` + * 2018-07-01: :class:`RouteFiltersOperations` + * 2018-08-01: :class:`RouteFiltersOperations` """ api_version = self._get_api_version('route_filters') if api_version == '2016-12-01': @@ -1498,6 +1830,10 @@ def route_filters(self): from .v2018_04_01.operations import RouteFiltersOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import RouteFiltersOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import RouteFiltersOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import RouteFiltersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1519,6 +1855,8 @@ def route_tables(self): * 2018-02-01: :class:`RouteTablesOperations` * 2018-04-01: :class:`RouteTablesOperations` * 2018-06-01: :class:`RouteTablesOperations` + * 2018-07-01: :class:`RouteTablesOperations` + * 2018-08-01: :class:`RouteTablesOperations` """ api_version = self._get_api_version('route_tables') if api_version == '2015-06-15': @@ -1547,6 +1885,10 @@ def route_tables(self): from .v2018_04_01.operations import RouteTablesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import RouteTablesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import RouteTablesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import RouteTablesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1568,6 +1910,8 @@ def routes(self): * 2018-02-01: :class:`RoutesOperations` * 2018-04-01: :class:`RoutesOperations` * 2018-06-01: :class:`RoutesOperations` + * 2018-07-01: :class:`RoutesOperations` + * 2018-08-01: :class:`RoutesOperations` """ api_version = self._get_api_version('routes') if api_version == '2015-06-15': @@ -1596,6 +1940,10 @@ def routes(self): from .v2018_04_01.operations import RoutesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import RoutesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import RoutesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import RoutesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1617,6 +1965,8 @@ def security_rules(self): * 2018-02-01: :class:`SecurityRulesOperations` * 2018-04-01: :class:`SecurityRulesOperations` * 2018-06-01: :class:`SecurityRulesOperations` + * 2018-07-01: :class:`SecurityRulesOperations` + * 2018-08-01: :class:`SecurityRulesOperations` """ api_version = self._get_api_version('security_rules') if api_version == '2015-06-15': @@ -1645,6 +1995,42 @@ def security_rules(self): from .v2018_04_01.operations import SecurityRulesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import SecurityRulesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import SecurityRulesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import SecurityRulesOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def service_endpoint_policies(self): + """Instance depends on the API version: + + * 2018-07-01: :class:`ServiceEndpointPoliciesOperations` + * 2018-08-01: :class:`ServiceEndpointPoliciesOperations` + """ + api_version = self._get_api_version('service_endpoint_policies') + if api_version == '2018-07-01': + from .v2018_07_01.operations import ServiceEndpointPoliciesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ServiceEndpointPoliciesOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def service_endpoint_policy_definitions(self): + """Instance depends on the API version: + + * 2018-07-01: :class:`ServiceEndpointPolicyDefinitionsOperations` + * 2018-08-01: :class:`ServiceEndpointPolicyDefinitionsOperations` + """ + api_version = self._get_api_version('service_endpoint_policy_definitions') + if api_version == '2018-07-01': + from .v2018_07_01.operations import ServiceEndpointPolicyDefinitionsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import ServiceEndpointPolicyDefinitionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1666,6 +2052,8 @@ def subnets(self): * 2018-02-01: :class:`SubnetsOperations` * 2018-04-01: :class:`SubnetsOperations` * 2018-06-01: :class:`SubnetsOperations` + * 2018-07-01: :class:`SubnetsOperations` + * 2018-08-01: :class:`SubnetsOperations` """ api_version = self._get_api_version('subnets') if api_version == '2015-06-15': @@ -1694,6 +2082,10 @@ def subnets(self): from .v2018_04_01.operations import SubnetsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import SubnetsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import SubnetsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import SubnetsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1715,6 +2107,8 @@ def usages(self): * 2018-02-01: :class:`UsagesOperations` * 2018-04-01: :class:`UsagesOperations` * 2018-06-01: :class:`UsagesOperations` + * 2018-07-01: :class:`UsagesOperations` + * 2018-08-01: :class:`UsagesOperations` """ api_version = self._get_api_version('usages') if api_version == '2015-06-15': @@ -1743,6 +2137,10 @@ def usages(self): from .v2018_04_01.operations import UsagesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import UsagesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import UsagesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import UsagesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1753,12 +2151,18 @@ def virtual_hubs(self): * 2018-04-01: :class:`VirtualHubsOperations` * 2018-06-01: :class:`VirtualHubsOperations` + * 2018-07-01: :class:`VirtualHubsOperations` + * 2018-08-01: :class:`VirtualHubsOperations` """ api_version = self._get_api_version('virtual_hubs') if api_version == '2018-04-01': from .v2018_04_01.operations import VirtualHubsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualHubsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VirtualHubsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VirtualHubsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1780,6 +2184,8 @@ def virtual_network_gateway_connections(self): * 2018-02-01: :class:`VirtualNetworkGatewayConnectionsOperations` * 2018-04-01: :class:`VirtualNetworkGatewayConnectionsOperations` * 2018-06-01: :class:`VirtualNetworkGatewayConnectionsOperations` + * 2018-07-01: :class:`VirtualNetworkGatewayConnectionsOperations` + * 2018-08-01: :class:`VirtualNetworkGatewayConnectionsOperations` """ api_version = self._get_api_version('virtual_network_gateway_connections') if api_version == '2015-06-15': @@ -1808,6 +2214,10 @@ def virtual_network_gateway_connections(self): from .v2018_04_01.operations import VirtualNetworkGatewayConnectionsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualNetworkGatewayConnectionsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VirtualNetworkGatewayConnectionsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VirtualNetworkGatewayConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1829,6 +2239,8 @@ def virtual_network_gateways(self): * 2018-02-01: :class:`VirtualNetworkGatewaysOperations` * 2018-04-01: :class:`VirtualNetworkGatewaysOperations` * 2018-06-01: :class:`VirtualNetworkGatewaysOperations` + * 2018-07-01: :class:`VirtualNetworkGatewaysOperations` + * 2018-08-01: :class:`VirtualNetworkGatewaysOperations` """ api_version = self._get_api_version('virtual_network_gateways') if api_version == '2015-06-15': @@ -1857,6 +2269,10 @@ def virtual_network_gateways(self): from .v2018_04_01.operations import VirtualNetworkGatewaysOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualNetworkGatewaysOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VirtualNetworkGatewaysOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VirtualNetworkGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1877,6 +2293,8 @@ def virtual_network_peerings(self): * 2018-02-01: :class:`VirtualNetworkPeeringsOperations` * 2018-04-01: :class:`VirtualNetworkPeeringsOperations` * 2018-06-01: :class:`VirtualNetworkPeeringsOperations` + * 2018-07-01: :class:`VirtualNetworkPeeringsOperations` + * 2018-08-01: :class:`VirtualNetworkPeeringsOperations` """ api_version = self._get_api_version('virtual_network_peerings') if api_version == '2016-09-01': @@ -1903,6 +2321,23 @@ def virtual_network_peerings(self): from .v2018_04_01.operations import VirtualNetworkPeeringsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualNetworkPeeringsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VirtualNetworkPeeringsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VirtualNetworkPeeringsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def virtual_network_taps(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`VirtualNetworkTapsOperations` + """ + api_version = self._get_api_version('virtual_network_taps') + if api_version == '2018-08-01': + from .v2018_08_01.operations import VirtualNetworkTapsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1924,6 +2359,8 @@ def virtual_networks(self): * 2018-02-01: :class:`VirtualNetworksOperations` * 2018-04-01: :class:`VirtualNetworksOperations` * 2018-06-01: :class:`VirtualNetworksOperations` + * 2018-07-01: :class:`VirtualNetworksOperations` + * 2018-08-01: :class:`VirtualNetworksOperations` """ api_version = self._get_api_version('virtual_networks') if api_version == '2015-06-15': @@ -1952,6 +2389,10 @@ def virtual_networks(self): from .v2018_04_01.operations import VirtualNetworksOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualNetworksOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VirtualNetworksOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VirtualNetworksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1962,12 +2403,28 @@ def virtual_wa_ns(self): * 2018-04-01: :class:`VirtualWANsOperations` * 2018-06-01: :class:`VirtualWANsOperations` + * 2018-07-01: :class:`VirtualWANsOperations` """ api_version = self._get_api_version('virtual_wa_ns') if api_version == '2018-04-01': from .v2018_04_01.operations import VirtualWANsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VirtualWANsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VirtualWANsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def virtual_wans(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`VirtualWansOperations` + """ + api_version = self._get_api_version('virtual_wans') + if api_version == '2018-08-01': + from .v2018_08_01.operations import VirtualWansOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1978,12 +2435,18 @@ def vpn_connections(self): * 2018-04-01: :class:`VpnConnectionsOperations` * 2018-06-01: :class:`VpnConnectionsOperations` + * 2018-07-01: :class:`VpnConnectionsOperations` + * 2018-08-01: :class:`VpnConnectionsOperations` """ api_version = self._get_api_version('vpn_connections') if api_version == '2018-04-01': from .v2018_04_01.operations import VpnConnectionsOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VpnConnectionsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VpnConnectionsOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VpnConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1994,12 +2457,18 @@ def vpn_gateways(self): * 2018-04-01: :class:`VpnGatewaysOperations` * 2018-06-01: :class:`VpnGatewaysOperations` + * 2018-07-01: :class:`VpnGatewaysOperations` + * 2018-08-01: :class:`VpnGatewaysOperations` """ api_version = self._get_api_version('vpn_gateways') if api_version == '2018-04-01': from .v2018_04_01.operations import VpnGatewaysOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VpnGatewaysOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VpnGatewaysOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VpnGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2010,12 +2479,18 @@ def vpn_sites(self): * 2018-04-01: :class:`VpnSitesOperations` * 2018-06-01: :class:`VpnSitesOperations` + * 2018-07-01: :class:`VpnSitesOperations` + * 2018-08-01: :class:`VpnSitesOperations` """ api_version = self._get_api_version('vpn_sites') if api_version == '2018-04-01': from .v2018_04_01.operations import VpnSitesOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VpnSitesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VpnSitesOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VpnSitesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2026,12 +2501,18 @@ def vpn_sites_configuration(self): * 2018-04-01: :class:`VpnSitesConfigurationOperations` * 2018-06-01: :class:`VpnSitesConfigurationOperations` + * 2018-07-01: :class:`VpnSitesConfigurationOperations` + * 2018-08-01: :class:`VpnSitesConfigurationOperations` """ api_version = self._get_api_version('vpn_sites_configuration') if api_version == '2018-04-01': from .v2018_04_01.operations import VpnSitesConfigurationOperations as OperationClass elif api_version == '2018-06-01': from .v2018_06_01.operations import VpnSitesConfigurationOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import VpnSitesConfigurationOperations as OperationClass + elif api_version == '2018-08-01': + from .v2018_08_01.operations import VpnSitesConfigurationOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/network_management_client.py index 67ebc03a056b..927e1bcfdd85 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/network_management_client.py @@ -212,7 +212,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -221,8 +221,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/application_gateways_operations.py index b9bfd4a51f4d..d15508134983 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -387,7 +385,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -396,9 +394,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -436,7 +433,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -445,8 +441,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -516,7 +512,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -525,8 +520,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuit_authorizations_operations.py index 2773df60999d..240f05a8824f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuit_peerings_operations.py index 51e4832b954c..48c31d66ee54 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuits_operations.py index f9cb8b37986e..b4ecc4abbd04 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -327,7 +326,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,9 +335,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -400,7 +398,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -409,9 +407,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -472,7 +469,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -481,9 +478,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -540,7 +536,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -549,9 +545,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -605,7 +600,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -614,9 +609,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_service_providers_operations.py index 0124fb6bd8bd..2ee3f029bb23 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/load_balancers_operations.py index fc390eaba5b5..aee1448f4dc5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/local_network_gateways_operations.py index c8368bf7704e..9636d1a7d9a2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/network_interfaces_operations.py index a4718eed0700..0f1778608855 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -467,7 +464,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -476,9 +473,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -539,7 +535,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -548,9 +544,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -614,7 +609,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -623,8 +618,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/network_security_groups_operations.py index dae054cab08b..bcc41c61ade8 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -327,7 +326,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,9 +335,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -395,7 +393,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -404,9 +402,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/public_ip_addresses_operations.py index fef4de29650f..edc5acf0fce2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/route_tables_operations.py index 550e8368f444..55aace46381a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -325,7 +324,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,9 +333,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/routes_operations.py index f159fb5fad51..c069988980d9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/security_rules_operations.py index c4dda9e3d689..09f4d8bd1a60 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/subnets_operations.py index 476d986c190c..47397e9be1d1 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/usages_operations.py index abbcb4e333d5..2d42a540969f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_network_gateway_connections_operations.py index 040481830f97..a46cff23efe6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -330,7 +329,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -339,8 +338,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -397,7 +396,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -406,9 +405,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -448,6 +446,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -460,9 +459,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -556,6 +554,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -568,9 +567,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_network_gateways_operations.py index a7fa5d8c4bfb..f457e23564ab 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -375,6 +373,7 @@ def _reset_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -387,9 +386,8 @@ def _reset_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -502,6 +500,7 @@ def generatevpnclientpackage( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -514,9 +513,8 @@ def generatevpnclientpackage( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_networks_operations.py index 157347935449..fe7203cb7f4e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2015_06_15/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/network_management_client.py index 7100a271308e..68f8cc2056cb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/network_management_client.py @@ -227,7 +227,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -236,8 +236,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/application_gateways_operations.py index 4ea2842f82cb..a9e0f036edf7 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -387,7 +385,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -396,9 +394,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -436,7 +433,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -445,8 +441,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -516,7 +512,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -525,8 +520,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -598,7 +593,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -607,8 +602,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuit_authorizations_operations.py index 7ad58db0065c..12156f2205be 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuit_peerings_operations.py index 4670c7e5700c..a6192f4b27af 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuits_operations.py index 951787d29d44..d92e16dcbb6a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,7 +304,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -314,8 +313,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -408,7 +407,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -417,8 +416,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -512,7 +511,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -521,8 +520,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -630,7 +629,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -639,8 +638,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -696,7 +695,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -705,8 +704,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -762,7 +761,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -771,9 +770,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -827,7 +825,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -836,9 +834,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_service_providers_operations.py index 37c544f65b84..4336f82f3707 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/load_balancers_operations.py index 7d23e1e73bee..800f1e497c4a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/local_network_gateways_operations.py index e4fd468ce9dc..218923b25742 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_interfaces_operations.py index 21941f2292ab..d54f6d92f26e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_interfaces_operations.py @@ -84,7 +84,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -93,9 +93,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -156,7 +155,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,9 +164,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -231,7 +229,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -240,8 +238,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -278,7 +276,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -287,8 +284,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -377,7 +374,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -386,8 +383,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,6 +421,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -436,9 +434,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -544,7 +541,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -553,9 +550,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -612,7 +608,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -621,9 +617,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -661,7 +656,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -670,8 +665,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -755,7 +750,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -764,8 +759,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_security_groups_operations.py index cfc14a0b8786..2309a0bb90f1 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -327,7 +326,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,9 +335,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -395,7 +393,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -404,9 +402,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_watchers_operations.py index 9cfdce42a401..1f65f12560ee 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,7 +289,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -299,9 +298,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -355,7 +353,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -364,9 +362,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,6 +421,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -436,9 +434,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -475,6 +472,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -487,9 +485,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -580,6 +577,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -592,9 +590,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -686,6 +683,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -698,9 +696,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -789,6 +786,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -801,9 +799,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -895,6 +892,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -907,9 +905,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -998,6 +995,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1010,9 +1008,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1105,6 +1102,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1117,9 +1115,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/packet_captures_operations.py index 8a2ed9a6fb63..1d390a1f8f05 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/public_ip_addresses_operations.py index 19b8bcf3d4e0..7772273fcb40 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/route_tables_operations.py index e82d56d6ad54..c3b42eeeecf5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -325,7 +324,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,9 +333,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/routes_operations.py index e6ee36947c44..965f8c37baff 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/security_rules_operations.py index 1736b6b07741..4834b74e5ad0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/subnets_operations.py index eb5bca99a683..ce7a52d23be0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/usages_operations.py index 185d6149c659..63ee7241d274 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_gateway_connections_operations.py index e4b008ba2093..f99ec0682d8d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -437,7 +436,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -446,8 +445,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -504,7 +503,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -513,9 +512,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -555,6 +553,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -567,9 +566,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_gateways_operations.py index 8126f68ff709..5640bbe0df15 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -377,7 +375,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -386,8 +384,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -499,6 +497,7 @@ def generatevpnclientpackage( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -511,9 +510,8 @@ def generatevpnclientpackage( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: exp = CloudError(response) @@ -552,7 +550,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -561,8 +559,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -649,7 +647,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -658,8 +656,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -745,7 +743,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +752,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_peerings_operations.py index a88692fb6191..a62a18b6d706 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_networks_operations.py index a260c89ba0a7..a76f432c3ade 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_09_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -460,7 +457,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -469,8 +466,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/network_management_client.py index 2e6c8cbfcd31..753d65ff422d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/network_management_client.py @@ -242,7 +242,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -251,8 +251,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/application_gateways_operations.py index fa3bc8f0da8a..536c46918bb5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -387,7 +385,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -396,9 +394,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -436,7 +433,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -445,8 +441,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -516,7 +512,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -525,8 +520,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -598,7 +593,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -607,8 +602,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/bgp_service_communities_operations.py index 43f5640ce4e2..7698cc0e0183 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuit_authorizations_operations.py index 358f084f63d6..4a3d865ffffb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuit_peerings_operations.py index 87a6daa10303..4780b093ac6e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuits_operations.py index 1b54397858b5..8b3cf95a7baa 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,7 +304,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -314,8 +313,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -408,7 +407,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -417,8 +416,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -512,7 +511,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -521,8 +520,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -630,7 +629,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -639,8 +638,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -696,7 +695,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -705,8 +704,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -762,7 +761,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -771,9 +770,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -827,7 +825,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -836,9 +834,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_service_providers_operations.py index 1b60895a665c..abe210b36d94 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/load_balancers_operations.py index 80ab49e22836..19610ee2fa46 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/local_network_gateways_operations.py index abd46191c0b6..7a68e7e4efcb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_interfaces_operations.py index 37da15c099ad..2410b719e125 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_interfaces_operations.py @@ -84,7 +84,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -93,9 +93,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -158,7 +157,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,9 +166,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -235,7 +233,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -244,8 +242,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -284,7 +282,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -293,8 +290,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -385,7 +382,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -394,8 +391,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -434,6 +431,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -446,9 +444,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -556,7 +553,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -565,9 +562,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -626,7 +622,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -635,9 +631,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -677,7 +672,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -686,8 +681,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -773,7 +768,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -782,8 +777,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_security_groups_operations.py index 151989f33cdb..3171ff5831f8 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -327,7 +326,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,9 +335,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -395,7 +393,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -404,9 +402,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_watchers_operations.py index b636217f5910..ae55040a4d83 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,7 +289,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -299,9 +298,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -355,7 +353,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -364,9 +362,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,6 +421,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -436,9 +434,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -475,6 +472,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -487,9 +485,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -580,6 +577,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -592,9 +590,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -686,6 +683,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -698,9 +696,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -789,6 +786,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -801,9 +799,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -895,6 +892,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -907,9 +905,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -998,6 +995,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1010,9 +1008,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1105,6 +1102,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1117,9 +1115,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/packet_captures_operations.py index 6e23ee00b8b4..670007ff0156 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/public_ip_addresses_operations.py index a6a89f92eeb4..c06ff87a040b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_filter_rules_operations.py index b6c448fc916d..ee0bf02b434b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_filters_operations.py index ff1f7747e001..53efb73f793b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_tables_operations.py index d53834438edc..719e01892baf 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -325,7 +324,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,9 +333,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/routes_operations.py index 00de820cbba7..38d93c7c81ef 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/security_rules_operations.py index c5279082cc6c..4ef25b2751dc 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/subnets_operations.py index e75e3db7e947..18779ea186dd 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/usages_operations.py index 5cdce3410655..4b6851cce01c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_gateway_connections_operations.py index 83a17936cb3d..6103cab00566 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -437,7 +436,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -446,8 +445,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -504,7 +503,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -513,9 +512,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -555,6 +553,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -567,9 +566,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_gateways_operations.py index beca9290deef..91b961b4e3eb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -377,7 +375,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -386,8 +384,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -499,6 +497,7 @@ def generatevpnclientpackage( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -511,9 +510,8 @@ def generatevpnclientpackage( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: exp = CloudError(response) @@ -552,7 +550,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -561,8 +559,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -649,7 +647,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -658,8 +656,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -745,7 +743,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +752,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_peerings_operations.py index 332fa6bbd772..f547ed9b1a66 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_networks_operations.py index 101b31d733ae..e3b485fd830a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2016_12_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -460,7 +457,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -469,8 +466,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/network_management_client.py index 2038ad13a152..1446b279b10a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/network_management_client.py @@ -243,7 +243,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -252,8 +252,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/application_gateways_operations.py index 1e19d5cb011d..6124b777cbee 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -387,7 +385,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -396,9 +394,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -436,7 +433,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -445,8 +441,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -516,7 +512,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -525,8 +520,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -598,7 +593,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -607,8 +602,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -708,7 +703,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -717,8 +712,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/bgp_service_communities_operations.py index 78dcf1ea90cb..c3e968b3ca17 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuit_authorizations_operations.py index 6e495e596ba7..ad0c73a7efcb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuit_peerings_operations.py index cb154c9cb410..157134f99b45 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuits_operations.py index 52cc8d3f1f53..f99a7d9d6d37 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,7 +304,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -314,8 +313,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -408,7 +407,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -417,8 +416,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -512,7 +511,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -521,8 +520,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -630,7 +629,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -639,8 +638,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -696,7 +695,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -705,8 +704,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -762,7 +761,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -771,9 +770,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -827,7 +825,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -836,9 +834,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_service_providers_operations.py index 7b1728569782..a7a39d6bcf01 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/load_balancers_operations.py index 977bafe03604..6f341e7d5fbd 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/local_network_gateways_operations.py index 671327420a16..b6827ecdb324 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_interfaces_operations.py index 95a4cf477174..47334f60659d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -329,7 +328,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -338,9 +337,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -399,7 +397,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -408,9 +406,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -450,7 +447,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -459,8 +456,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -546,7 +543,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -555,8 +552,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -670,7 +667,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -679,9 +676,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -744,7 +740,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -753,9 +749,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -821,7 +816,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -830,8 +825,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_security_groups_operations.py index 5b588c36029c..480ecb7cf09d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -327,7 +326,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,9 +335,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -395,7 +393,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -404,9 +402,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_watchers_operations.py index 610a8c469045..1803e75a3c16 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,7 +289,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -299,9 +298,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -355,7 +353,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -364,9 +362,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,6 +421,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -436,9 +434,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -475,6 +472,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -487,9 +485,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -580,6 +577,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -592,9 +590,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -686,6 +683,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -698,9 +696,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -789,6 +786,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -801,9 +799,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -895,6 +892,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -907,9 +905,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -998,6 +995,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1010,9 +1008,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1105,6 +1102,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1117,9 +1115,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1211,6 +1208,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1223,9 +1221,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/packet_captures_operations.py index 4cb99cf611b2..c4d234635726 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/public_ip_addresses_operations.py index e47695214d80..5141b22f2483 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -329,7 +328,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -338,9 +337,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -399,7 +397,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -408,9 +406,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -474,7 +471,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -483,9 +480,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -558,7 +554,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -567,9 +563,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -641,7 +636,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -650,8 +645,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_filter_rules_operations.py index d6ee40dd0fcf..7c7fd74ba745 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_filters_operations.py index f17b7a9102ca..f7daca0f0362 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_tables_operations.py index 78cc446b6dd7..da3edadc979e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -325,7 +324,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,9 +333,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/routes_operations.py index d329dc9204d5..9bfa9e088a4e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/security_rules_operations.py index 7871fbdce2c4..713a1151cc09 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/subnets_operations.py index 14e8da047e40..bc1df0a4e282 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/usages_operations.py index bbcb185ceaca..bfc3122484e2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_gateway_connections_operations.py index ff82f6c42ff8..0858cd18e5a9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -437,7 +436,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -446,8 +445,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -504,7 +503,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -513,9 +512,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -555,6 +553,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -567,9 +566,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_gateways_operations.py index f555377aa370..4840f11622e2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -377,7 +375,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -386,8 +384,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -499,6 +497,7 @@ def generatevpnclientpackage( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -511,9 +510,8 @@ def generatevpnclientpackage( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202]: exp = CloudError(response) @@ -552,7 +550,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -561,8 +559,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -649,7 +647,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -658,8 +656,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -745,7 +743,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +752,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_peerings_operations.py index 69972ca5a32e..2c09c7bf9fa0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_networks_operations.py index 2e1bebbdfd2a..bbca239f9416 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_03_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -460,7 +457,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -469,8 +466,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -529,7 +526,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -538,9 +535,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/network_management_client.py index 75784b8b0a08..28a0d4c3e3b1 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/network_management_client.py @@ -293,7 +293,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -302,8 +302,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/application_gateways_operations.py index 5aac6e35e411..6269883ab0a7 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -387,7 +385,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -396,9 +394,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -436,7 +433,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -445,8 +441,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -516,7 +512,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -525,8 +520,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -598,7 +593,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -607,8 +602,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -708,7 +703,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -717,8 +712,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -766,7 +761,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -775,8 +770,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -830,7 +825,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -839,9 +834,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -893,7 +887,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -902,8 +896,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/available_endpoint_services_operations.py index 461564963b38..f89f2fe43ed3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/bgp_service_communities_operations.py index f613bdaea40c..f20bdffa2afe 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/default_security_rules_operations.py index f3b770314bfb..415d268f1d3a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuit_authorizations_operations.py index 16002f32d795..4dda5ca6e555 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuit_peerings_operations.py index ec4bd8d48289..e8166929c5a9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuits_operations.py index af3e10780a9e..a76041032c01 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,7 +304,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -314,8 +313,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -408,7 +407,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -417,8 +416,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -512,7 +511,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -521,8 +520,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -630,7 +629,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -639,8 +638,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -696,7 +695,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -705,8 +704,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -762,7 +761,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -771,9 +770,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -827,7 +825,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -836,9 +834,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_service_providers_operations.py index e718030c1fc8..b789b6a56e20 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/inbound_nat_rules_operations.py index 2bd270c27a65..9375077cdba4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_backend_address_pools_operations.py index 106d7873d036..0c6411934a47 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_frontend_ip_configurations_operations.py index c82ee08681b3..e931e57c9a0c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_load_balancing_rules_operations.py index b3d58692a8d0..bb275e85ec8b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_network_interfaces_operations.py index 17c8656d981a..bed4c1fc010a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_probes_operations.py index e5a8e27d6980..4a7afe3c609b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancers_operations.py index 8c8c82348329..946b84e9b526 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/local_network_gateways_operations.py index be553d8d87bd..e6e4bb556691 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interface_ip_configurations_operations.py index b5db73db907f..d9648b1cff62 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interface_load_balancers_operations.py index 7cb9b0b68347..3623aa5a05cf 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interfaces_operations.py index 148d88181368..920591e4a8c2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -329,7 +328,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -338,9 +337,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -399,7 +397,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -408,9 +406,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -450,7 +447,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -459,8 +456,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -546,7 +543,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -555,8 +552,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -670,7 +667,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -679,9 +676,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -744,7 +740,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -753,9 +749,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -821,7 +816,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -830,8 +825,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_security_groups_operations.py index 5bd7aeb1df45..6c7e1aa99a2f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -327,7 +326,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,9 +335,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -395,7 +393,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -404,9 +402,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_watchers_operations.py index 99a71cba88bc..addee55db018 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,7 +289,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -299,9 +298,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -355,7 +353,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -364,9 +362,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,6 +421,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -436,9 +434,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -475,6 +472,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -487,9 +485,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -580,6 +577,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -592,9 +590,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -686,6 +683,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -698,9 +696,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -789,6 +786,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -801,9 +799,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -895,6 +892,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -907,9 +905,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -998,6 +995,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1010,9 +1008,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1105,6 +1102,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1117,9 +1115,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1211,6 +1208,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1223,9 +1221,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/packet_captures_operations.py index 7bb2d82756d8..11233034a715 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/public_ip_addresses_operations.py index 3d7e60475ee9..5d494c93b80c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -329,7 +328,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -338,9 +337,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -399,7 +397,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -408,9 +406,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -474,7 +471,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -483,9 +480,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -558,7 +554,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -567,9 +563,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -641,7 +636,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -650,8 +645,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_filter_rules_operations.py index 14106c0c8b52..b928e1440d2d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_filters_operations.py index 49bdf3b23838..ad7579b9c620 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_tables_operations.py index 129eae8077e9..3007c4c524c5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -325,7 +324,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,9 +333,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/routes_operations.py index 3284abd81238..17030325dda6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/security_rules_operations.py index 80806bd8c287..4616c004ebae 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/subnets_operations.py index 1202b657d919..d81da2360924 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/usages_operations.py index 6c6804b2d42b..7a791704c56f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_gateway_connections_operations.py index 6e8537d0adc1..1eaec9c1b3c0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -437,7 +436,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -446,8 +445,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -504,7 +503,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -513,9 +512,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -555,6 +553,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -567,9 +566,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_gateways_operations.py index e012ee1a4128..d2ba6681bec0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -399,7 +397,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -408,9 +406,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -450,7 +447,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -459,8 +456,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -549,6 +546,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -561,9 +559,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -651,6 +648,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -663,9 +661,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -756,7 +753,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -765,8 +762,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -853,7 +850,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -862,8 +859,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -949,7 +946,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -958,8 +955,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_peerings_operations.py index 835262120904..cc2d7578c5cc 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_networks_operations.py index 4c6d2c18edb2..6c38f6cf806e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_06_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -460,7 +457,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -469,8 +466,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -529,7 +526,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -538,9 +535,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/network_management_client.py index 0928a3bcc00c..f5738a4bb191 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/network_management_client.py @@ -292,7 +292,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -301,8 +301,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/application_gateways_operations.py index c45d485530ed..31eaa88c732b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -387,7 +385,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -396,9 +394,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -436,7 +433,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -445,8 +441,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -516,7 +512,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -525,8 +520,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -598,7 +593,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -607,8 +602,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -708,7 +703,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -717,8 +712,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -766,7 +761,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -775,8 +770,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -830,7 +825,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -839,9 +834,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -893,7 +887,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -902,8 +896,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/available_endpoint_services_operations.py index bbe8144a3e51..1b2f415abc8b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/bgp_service_communities_operations.py index 2bc998d68016..fe7e41e8a289 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/default_security_rules_operations.py index 2396f65dfa48..bae8e1fa7ee4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuit_authorizations_operations.py index 3383c69b7fb3..7a456813205d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuit_peerings_operations.py index 1715259177bd..40ca44d1cbeb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuits_operations.py index 3b6c6f36acef..304b854dd51b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,7 +304,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -314,8 +313,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -408,7 +407,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -417,8 +416,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -512,7 +511,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -521,8 +520,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -630,7 +629,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -639,8 +638,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -696,7 +695,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -705,8 +704,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -762,7 +761,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -771,9 +770,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -827,7 +825,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -836,9 +834,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_service_providers_operations.py index 4ed2d10f4e6a..222016738ce3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/inbound_nat_rules_operations.py index a2d7fc0eab6c..7acf5ade5d81 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_backend_address_pools_operations.py index 123378befaf3..3da68c1c32be 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_frontend_ip_configurations_operations.py index 061e61e00bf4..9d38839fbd1d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_load_balancing_rules_operations.py index 52c5c406b992..cb5ee3462300 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_network_interfaces_operations.py index 6eb185b8913f..f16ac273e09a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_probes_operations.py index 6664265408d0..993a28866700 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancers_operations.py index 8318ad1e8421..5537e0f0e42f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/local_network_gateways_operations.py index ec400f5939cf..acd13d6cdd18 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interface_ip_configurations_operations.py index 7d22c4f95097..44054c0707a9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interface_load_balancers_operations.py index edb9d744bc49..ea0e86d4b3d2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interfaces_operations.py index 9682866766f2..51460939d356 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -329,7 +328,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -338,9 +337,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -399,7 +397,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -408,9 +406,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -450,7 +447,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -459,8 +456,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -546,7 +543,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -555,8 +552,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -670,7 +667,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -679,9 +676,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -744,7 +740,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -753,9 +749,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -821,7 +816,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -830,8 +825,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_security_groups_operations.py index ba3d9c3555c8..aa24b7f4d9a9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -327,7 +326,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,9 +335,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -395,7 +393,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -404,9 +402,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_watchers_operations.py index 50a0fe66b9f3..dca87393ea2a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,7 +289,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -299,9 +298,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -355,7 +353,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -364,9 +362,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,6 +421,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -436,9 +434,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -475,6 +472,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -487,9 +485,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -580,6 +577,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -592,9 +590,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -686,6 +683,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -698,9 +696,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -789,6 +786,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -801,9 +799,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -895,6 +892,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -907,9 +905,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -998,6 +995,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1010,9 +1008,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1105,6 +1102,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1117,9 +1115,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1211,6 +1208,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1223,9 +1221,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/packet_captures_operations.py index 4d53bdda9383..b46aa1f66ce3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/public_ip_addresses_operations.py index 91ef570f5db8..939ba6c64fc4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -329,7 +328,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -338,9 +337,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -399,7 +397,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -408,9 +406,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -474,7 +471,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -483,9 +480,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -558,7 +554,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -567,9 +563,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -641,7 +636,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -650,8 +645,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_filter_rules_operations.py index 7c5c8cc9f9f6..3eebf1b23ea9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_filters_operations.py index 0befd722c605..47722c3ebd32 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_tables_operations.py index 19397314052e..78fd1b44328c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -325,7 +324,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,9 +333,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/routes_operations.py index 4473688b01e1..506112ee9163 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/security_rules_operations.py index caaf504bb8f8..60afa24ccbb9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/subnets_operations.py index 3270afb5419c..840602fec8bc 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/usages_operations.py index 7f37b01b5f13..70a7d11c5a7c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_gateway_connections_operations.py index 9c88aba75335..dd44322652c9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -437,7 +436,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -446,8 +445,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -504,7 +503,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -513,9 +512,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -555,6 +553,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -567,9 +566,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_gateways_operations.py index ad5f9e309b99..d893458882aa 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -326,7 +325,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,9 +334,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -399,7 +397,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -408,9 +406,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -450,7 +447,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -459,8 +456,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -549,6 +546,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -561,9 +559,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -651,6 +648,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -663,9 +661,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -754,7 +751,7 @@ def _get_vpn_profile_package_url_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -763,8 +760,8 @@ def _get_vpn_profile_package_url_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -850,7 +847,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -859,8 +856,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -947,7 +944,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -956,8 +953,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1043,7 +1040,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1052,8 +1049,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_peerings_operations.py index aa8075b07880..5c67da06c86a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_networks_operations.py index 61f26fc2d5d8..5021c6f7891e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_08_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -323,7 +322,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -332,9 +331,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -391,7 +389,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -400,9 +398,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -460,7 +457,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -469,8 +466,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -529,7 +526,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -538,9 +535,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/network_management_client.py index a6660a669738..fc78c6f53f96 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/network_management_client.py @@ -302,7 +302,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -311,8 +311,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/application_gateways_operations.py index 9e733f797008..84403a2f6eaa 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -489,7 +487,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -498,9 +496,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -538,7 +535,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -547,8 +543,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -618,7 +614,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -627,8 +622,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -700,7 +695,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -709,8 +704,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -810,7 +805,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -819,8 +814,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -868,7 +863,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -877,8 +872,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -932,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -941,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -995,7 +989,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1004,8 +998,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/application_security_groups_operations.py index 5b63a80b94c7..105faecd2128 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/application_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/application_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -155,7 +154,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -164,8 +163,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -202,6 +201,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -214,9 +214,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -324,7 +323,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,9 +332,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -392,7 +390,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -401,9 +399,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/available_endpoint_services_operations.py index 07adde1d940b..6928c0abda20 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/bgp_service_communities_operations.py index 818a33c8e616..8567fd6a02e3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/default_security_rules_operations.py index 2e9b406585bd..8056ef02d82e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuit_authorizations_operations.py index d49d94a312bd..d007e21cda46 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuit_peerings_operations.py index 908974b0d513..54912f042d0b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuits_operations.py index f97ad5d08a42..c0f95e6f58de 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -407,7 +406,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -416,8 +415,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -510,7 +509,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -519,8 +518,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -614,7 +613,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -623,8 +622,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -732,7 +731,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -741,8 +740,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -798,7 +797,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -807,8 +806,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -864,7 +863,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -873,9 +872,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -929,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -938,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_service_providers_operations.py index 2f91abf10aae..31bfc6530e85 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/inbound_nat_rules_operations.py index f2e5853b975e..9194e06fcecb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_backend_address_pools_operations.py index 2de9e81128a3..58c474896f37 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_frontend_ip_configurations_operations.py index eda1d3eccec8..0a899df36b6c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_load_balancing_rules_operations.py index f81abea90f9e..72c38f20d147 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_network_interfaces_operations.py index 02351a6db68e..f8a8e676eb74 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_probes_operations.py index eeff273b6f65..b972c02181a8 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancers_operations.py index 4ae922ab13a8..f556c4baffb0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/local_network_gateways_operations.py index f56dca7fcfd9..b346ebb79e0a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interface_ip_configurations_operations.py index 17f5d47a39cd..facdc3cb331e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interface_load_balancers_operations.py index 87846c5e610f..52f6e88f0c02 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interfaces_operations.py index 92760e5697c6..b964f6f9f455 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -554,7 +551,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -563,8 +560,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -650,7 +647,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -659,8 +656,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -774,7 +771,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -783,9 +780,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -848,7 +844,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -857,9 +853,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -925,7 +920,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -934,8 +929,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1008,7 +1003,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1017,9 +1012,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1091,7 +1085,7 @@ def get_virtual_machine_scale_set_ip_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1100,8 +1094,8 @@ def get_virtual_machine_scale_set_ip_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_security_groups_operations.py index 09e44ef306e3..f322a31a3832 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -430,7 +429,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -439,9 +438,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -498,7 +496,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -507,9 +505,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_watchers_operations.py index 9df65690d0cb..5396ccdd839f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,6 +289,7 @@ def update_tags( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -302,9 +302,8 @@ def update_tags( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -360,7 +359,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -369,9 +368,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -494,6 +491,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -506,9 +504,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -545,6 +542,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -557,9 +555,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -650,6 +647,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -662,9 +660,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -756,6 +753,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -768,9 +766,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -859,6 +856,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -871,9 +869,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -965,6 +962,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -977,9 +975,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1068,6 +1065,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1080,9 +1078,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1175,6 +1172,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1187,9 +1185,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1281,6 +1278,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1293,9 +1291,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1391,6 +1388,7 @@ def _get_azure_reachability_report_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1403,9 +1401,8 @@ def _get_azure_reachability_report_initial( body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1497,6 +1494,7 @@ def _list_available_providers_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1509,9 +1507,8 @@ def _list_available_providers_initial( body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/operations.py index 616c62296262..b41c38a1914a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/packet_captures_operations.py index 43d6333325d1..ea9fa20781ca 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/public_ip_addresses_operations.py index 405a7a1fc5e9..24ee0e25846a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -578,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -587,9 +584,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,7 +658,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -671,9 +667,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -745,7 +740,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +749,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_filter_rules_operations.py index b7050b1f9361..86079a6f3805 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_filters_operations.py index d291e20acb05..2e08b9b7ae74 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_tables_operations.py index e11aad1a48ec..d623a2b42fa0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -427,7 +426,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -436,9 +435,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/routes_operations.py index 82a1b98cafe8..3134a57d4b87 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/security_rules_operations.py index f4473419f51d..9b8b76293715 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/subnets_operations.py index 89d71920a318..02d3200281f2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/usages_operations.py index b54d542f29ea..377722c8a149 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_gateway_connections_operations.py index 932d6c3931b6..bde66e0033db 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -418,6 +417,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -430,9 +430,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -542,7 +541,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -551,8 +550,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -609,7 +608,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -618,9 +617,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -660,6 +658,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -672,9 +671,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_gateways_operations.py index e7d2b1a808e8..0c87dde489b8 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -502,7 +500,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,9 +509,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -553,7 +550,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -562,8 +559,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -652,6 +649,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -664,9 +662,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -754,6 +751,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -766,9 +764,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -857,7 +854,7 @@ def _get_vpn_profile_package_url_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -866,8 +863,8 @@ def _get_vpn_profile_package_url_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -953,7 +950,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -962,8 +959,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1065,7 +1062,7 @@ def supported_vpn_devices( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1074,8 +1071,8 @@ def supported_vpn_devices( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1112,7 +1109,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1121,8 +1118,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1208,7 +1205,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1217,8 +1214,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1326,6 +1323,7 @@ def vpn_device_configuration_script( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1338,9 +1336,8 @@ def vpn_device_configuration_script( body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_peerings_operations.py index b537d07b4654..f5f2fa8398ca 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_networks_operations.py index f91f7f235b54..5ce2005ec0c5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_09_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +424,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +433,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -562,7 +559,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -571,8 +568,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -631,7 +628,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -640,9 +637,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/network_management_client.py index a8705d53fdbc..2a51ef1d7b84 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/network_management_client.py @@ -307,7 +307,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -316,8 +316,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/application_gateways_operations.py index bba5c93fca84..d5877377d8fe 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -489,7 +487,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -498,9 +496,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -538,7 +535,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -547,8 +543,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -618,7 +614,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -627,8 +622,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -700,7 +695,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -709,8 +704,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -810,7 +805,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -819,8 +814,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -868,7 +863,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -877,8 +872,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -932,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -941,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -995,7 +989,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1004,8 +998,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/application_security_groups_operations.py index 135e670a245b..2a667dc9dcd0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/application_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/application_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -155,7 +154,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -164,8 +163,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -202,6 +201,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -214,9 +214,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -324,7 +323,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,9 +332,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -392,7 +390,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -401,9 +399,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/available_endpoint_services_operations.py index 60c6c2077e9c..65dc4a2e712c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/bgp_service_communities_operations.py index c715cf4851c2..cb0d103f4cca 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/connection_monitors_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/connection_monitors_operations.py index 9c55f54c7a82..f9a07d895e93 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/connection_monitors_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/connection_monitors_operations.py @@ -58,6 +58,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ConnectionMonitor') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -185,7 +185,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -194,8 +194,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -233,7 +233,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -242,8 +241,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -318,7 +317,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,8 +325,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -403,7 +401,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -412,8 +409,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -488,7 +485,7 @@ def _query_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,8 +494,8 @@ def _query_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -612,7 +609,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -621,9 +618,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/default_security_rules_operations.py index 3ab0237b1f24..e9dbc7c00228 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuit_authorizations_operations.py index 1c655829e462..852c86ea86d0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuit_peerings_operations.py index 3a401f12d4e4..3a7a349a055f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuits_operations.py index d2bdde804516..afcb3b1610bc 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -407,7 +406,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -416,8 +415,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -510,7 +509,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -519,8 +518,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -614,7 +613,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -623,8 +622,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -732,7 +731,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -741,8 +740,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -798,7 +797,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -807,8 +806,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -864,7 +863,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -873,9 +872,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -929,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -938,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_service_providers_operations.py index 2d608c703e9e..a29dd9b2a025 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/inbound_nat_rules_operations.py index 62c5f7b29d4d..d61db000fe98 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_backend_address_pools_operations.py index eb987ddd7470..a4c4dd9730bb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_frontend_ip_configurations_operations.py index 6a44485ef7a0..ae3d08e59b7f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_load_balancing_rules_operations.py index a638e7c637a4..9a6498f618be 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_network_interfaces_operations.py index 084a50accaae..b0f47120af5e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_probes_operations.py index 36e13ae8ca71..f7a5262ba8a3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancers_operations.py index 79ea7341e761..84713deacccd 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/local_network_gateways_operations.py index ad15587af715..2fcabd4f0644 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interface_ip_configurations_operations.py index b42c30f32d08..247162b115ce 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interface_load_balancers_operations.py index 2d1051022564..8dbebf34813f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interfaces_operations.py index 283e5eb786f6..a75adad9fc52 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -554,7 +551,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -563,8 +560,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -650,7 +647,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -659,8 +656,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -774,7 +771,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -783,9 +780,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -848,7 +844,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -857,9 +853,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -925,7 +920,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -934,8 +929,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1008,7 +1003,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1017,9 +1012,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1091,7 +1085,7 @@ def get_virtual_machine_scale_set_ip_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1100,8 +1094,8 @@ def get_virtual_machine_scale_set_ip_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_security_groups_operations.py index 1c2a6c6acf66..c1e642444044 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -430,7 +429,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -439,9 +438,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -498,7 +496,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -507,9 +505,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_watchers_operations.py index 2920734756d8..9ab7e421fbcb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,6 +289,7 @@ def update_tags( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -302,9 +302,8 @@ def update_tags( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -360,7 +359,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -369,9 +368,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,6 +490,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -505,9 +503,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -544,6 +541,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -556,9 +554,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -649,6 +646,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -661,9 +659,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -755,6 +752,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -767,9 +765,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -858,6 +855,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -870,9 +868,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -964,6 +961,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -976,9 +974,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1067,6 +1064,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1079,9 +1077,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1174,6 +1171,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1186,9 +1184,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1280,6 +1277,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1292,9 +1290,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1390,6 +1387,7 @@ def _get_azure_reachability_report_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1402,9 +1400,8 @@ def _get_azure_reachability_report_initial( body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1496,6 +1493,7 @@ def _list_available_providers_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1508,9 +1506,8 @@ def _list_available_providers_initial( body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/operations.py index ce90aa930fb6..2c4931dbcb3d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/packet_captures_operations.py index 912aa43efa19..5c3dc0d592dc 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/public_ip_addresses_operations.py index 76f275c96b2e..00916481e497 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -578,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -587,9 +584,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,7 +658,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -671,9 +667,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -745,7 +740,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +749,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_filter_rules_operations.py index 09fd271ac7c7..b4289e751cbb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_filters_operations.py index 4bf0a47b67d0..302ad9d9fbcf 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_tables_operations.py index c29a504cf78d..e25321c5a6c6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -427,7 +426,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -436,9 +435,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/routes_operations.py index 72a03a378ca5..334d0e100452 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/security_rules_operations.py index fcf843c4ad5c..cb3892255853 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/subnets_operations.py index 8819345bc3ed..41cfbf097f13 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/usages_operations.py index 3d808e39c46e..41aa2531e34a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_gateway_connections_operations.py index f532169a4853..f54475f3be35 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -418,6 +417,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -430,9 +430,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -542,7 +541,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -551,8 +550,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -609,7 +608,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -618,9 +617,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -660,6 +658,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -672,9 +671,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_gateways_operations.py index 9a28e6326a66..50d9eb3ed4e4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -502,7 +500,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,9 +509,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -553,7 +550,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -562,8 +559,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -652,6 +649,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -664,9 +662,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -754,6 +751,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -766,9 +764,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -857,7 +854,7 @@ def _get_vpn_profile_package_url_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -866,8 +863,8 @@ def _get_vpn_profile_package_url_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -953,7 +950,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -962,8 +959,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1065,7 +1062,7 @@ def supported_vpn_devices( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1074,8 +1071,8 @@ def supported_vpn_devices( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1112,7 +1109,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1121,8 +1118,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1208,7 +1205,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1217,8 +1214,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1326,6 +1323,7 @@ def vpn_device_configuration_script( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1338,9 +1336,8 @@ def vpn_device_configuration_script( body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_peerings_operations.py index 104833a54a44..5c7c26a34d37 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_networks_operations.py index 8f064e045b66..e07c097282b6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_10_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +424,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +433,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -562,7 +559,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -571,8 +568,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -631,7 +628,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -640,9 +637,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/network_management_client.py index a35d83f8360a..fb8835906fd2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/network_management_client.py @@ -307,7 +307,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -316,8 +316,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/application_gateways_operations.py index 7723e995d213..90fa5f3997a2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -489,7 +487,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -498,9 +496,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -538,7 +535,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -547,8 +543,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -618,7 +614,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -627,8 +622,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -700,7 +695,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -709,8 +704,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -810,7 +805,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -819,8 +814,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -868,7 +863,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -877,8 +872,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -932,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -941,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -995,7 +989,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1004,8 +998,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/application_security_groups_operations.py index bcbd7752fd0d..90b38eab019d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/application_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/application_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -155,7 +154,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -164,8 +163,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -202,6 +201,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -214,9 +214,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -324,7 +323,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,9 +332,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -392,7 +390,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -401,9 +399,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/available_endpoint_services_operations.py index ea9361a8cd0a..ed0aeb84c5b2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/bgp_service_communities_operations.py index 7ea25b19f297..5f7ee969d068 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/connection_monitors_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/connection_monitors_operations.py index 8831479a5bb1..deb894eb8185 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/connection_monitors_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/connection_monitors_operations.py @@ -58,6 +58,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ConnectionMonitor') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -185,7 +185,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -194,8 +194,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -233,7 +233,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -242,8 +241,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -318,7 +317,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,8 +325,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -403,7 +401,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -412,8 +409,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -488,7 +485,7 @@ def _query_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,8 +494,8 @@ def _query_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -612,7 +609,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -621,9 +618,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/default_security_rules_operations.py index 1ba1f7d420b8..9d6bf529b9af 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuit_authorizations_operations.py index 8779b070c27a..9873a757e08e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuit_peerings_operations.py index db152d3bfd03..016fcf118ec8 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuits_operations.py index 5823e876fce3..37981925b1e1 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -407,7 +406,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -416,8 +415,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -510,7 +509,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -519,8 +518,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -614,7 +613,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -623,8 +622,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -732,7 +731,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -741,8 +740,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -798,7 +797,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -807,8 +806,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -864,7 +863,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -873,9 +872,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -929,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -938,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_service_providers_operations.py index b87cbaa694a5..1c3566a8da17 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/inbound_nat_rules_operations.py index 79c0e8b40282..0d2fa4017888 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_backend_address_pools_operations.py index 82a7bf53c3ad..b41289c03a35 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_frontend_ip_configurations_operations.py index 762ba7021d74..b04748d25481 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_load_balancing_rules_operations.py index e3e49701c017..5f5e520fe3f4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_network_interfaces_operations.py index 168a653b0377..458815ff34b3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_probes_operations.py index 3b4ae3406b16..a611187ca48a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancers_operations.py index f742fad106ad..9ad7949a0706 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/local_network_gateways_operations.py index 116d5d3af9fe..3deb80895790 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interface_ip_configurations_operations.py index 6eac76762409..394217a9c3cc 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interface_load_balancers_operations.py index 4955e9ca57af..03df7cad5236 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interfaces_operations.py index d8523c5cf63e..b917b15354e7 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -554,7 +551,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -563,8 +560,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -650,7 +647,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -659,8 +656,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -774,7 +771,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -783,9 +780,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -848,7 +844,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -857,9 +853,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -925,7 +920,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -934,8 +929,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1008,7 +1003,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1017,9 +1012,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1091,7 +1085,7 @@ def get_virtual_machine_scale_set_ip_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1100,8 +1094,8 @@ def get_virtual_machine_scale_set_ip_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_security_groups_operations.py index 81217d24d381..17bc2662f31d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -430,7 +429,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -439,9 +438,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -498,7 +496,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -507,9 +505,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_watchers_operations.py index 444be3d38ff3..75a2a1715d4c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,6 +289,7 @@ def update_tags( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -302,9 +302,8 @@ def update_tags( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -360,7 +359,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -369,9 +368,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,6 +490,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -505,9 +503,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -544,6 +541,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -556,9 +554,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -649,6 +646,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -661,9 +659,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -755,6 +752,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -767,9 +765,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -858,6 +855,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -870,9 +868,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -964,6 +961,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -976,9 +974,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1067,6 +1064,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1079,9 +1077,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1174,6 +1171,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1186,9 +1184,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1280,6 +1277,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1292,9 +1290,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1390,6 +1387,7 @@ def _get_azure_reachability_report_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1402,9 +1400,8 @@ def _get_azure_reachability_report_initial( body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1496,6 +1493,7 @@ def _list_available_providers_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1508,9 +1506,8 @@ def _list_available_providers_initial( body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/operations.py index 294038bec3d2..1d48d6a5f1dd 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/packet_captures_operations.py index 3aff82b28741..5f7bec6505d4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/public_ip_addresses_operations.py index 010633881a5c..4d2835c803b3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -578,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -587,9 +584,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,7 +658,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -671,9 +667,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -745,7 +740,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +749,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_filter_rules_operations.py index ecac8e41dd04..571f07e670cf 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_filters_operations.py index 65519144024c..a502e90ded1b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_tables_operations.py index d1f760b2a236..458eaf9e961d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -427,7 +426,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -436,9 +435,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/routes_operations.py index 51932a8f1f25..48445b70b10f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/security_rules_operations.py index 8d2c9a0bc39f..300b665539d1 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/subnets_operations.py index 5ebb0be4ae17..453613031045 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/usages_operations.py index 2d6ea888e7f9..9717447d943b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_gateway_connections_operations.py index d59d0e575e9c..9759e137a590 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -418,6 +417,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -430,9 +430,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -542,7 +541,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -551,8 +550,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -609,7 +608,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -618,9 +617,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -660,6 +658,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -672,9 +671,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_gateways_operations.py index 2d5d677fbc16..e601b7ba2db4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -502,7 +500,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,9 +509,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -553,7 +550,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -562,8 +559,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -652,6 +649,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -664,9 +662,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -754,6 +751,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -766,9 +764,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -857,7 +854,7 @@ def _get_vpn_profile_package_url_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -866,8 +863,8 @@ def _get_vpn_profile_package_url_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -953,7 +950,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -962,8 +959,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1065,7 +1062,7 @@ def supported_vpn_devices( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1074,8 +1071,8 @@ def supported_vpn_devices( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1112,7 +1109,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1121,8 +1118,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1208,7 +1205,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1217,8 +1214,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1326,6 +1323,7 @@ def vpn_device_configuration_script( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1338,9 +1336,8 @@ def vpn_device_configuration_script( body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_peerings_operations.py index 13a546d6d149..36af5a20d35f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_networks_operations.py index 7bd7c13744f4..0cea761c2b3a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2017_11_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +424,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +433,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -562,7 +559,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -571,8 +568,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -631,7 +628,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -640,9 +637,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/network_management_client.py index 33c858d31bb0..969a0a0f17d0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/network_management_client.py @@ -307,7 +307,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -316,8 +316,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/application_gateways_operations.py index f0c16e439c1f..40dfc60f0c1e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -489,7 +487,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -498,9 +496,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -538,7 +535,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -547,8 +543,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -618,7 +614,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -627,8 +622,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -700,7 +695,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -709,8 +704,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -810,7 +805,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -819,8 +814,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -868,7 +863,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -877,8 +872,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -932,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -941,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -995,7 +989,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1004,8 +998,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/application_security_groups_operations.py index 4c780394f520..0ac3f735f52c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/application_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/application_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -155,7 +154,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -164,8 +163,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -202,6 +201,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -214,9 +214,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -324,7 +323,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,9 +332,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -392,7 +390,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -401,9 +399,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/available_endpoint_services_operations.py index 9bc3ff11ecc2..d4c50b5a0c81 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/bgp_service_communities_operations.py index 7dab1f1b2397..2e551dfa6174 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/connection_monitors_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/connection_monitors_operations.py index 23e2e45c7497..c02712867daa 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/connection_monitors_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/connection_monitors_operations.py @@ -58,6 +58,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ConnectionMonitor') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -185,7 +185,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -194,8 +194,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -233,7 +233,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -242,8 +241,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -318,7 +317,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,8 +325,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -403,7 +401,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -412,8 +409,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -488,7 +485,7 @@ def _query_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,8 +494,8 @@ def _query_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -612,7 +609,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -621,9 +618,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/default_security_rules_operations.py index e83517f41008..3820b4807e7e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuit_authorizations_operations.py index ce1d78a2f99b..58c7b0f6a459 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuit_peerings_operations.py index e802faf1ddad..28d543502074 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuits_operations.py index 977cbfc985f0..b47a286e6c19 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -407,7 +406,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -416,8 +415,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -510,7 +509,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -519,8 +518,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -614,7 +613,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -623,8 +622,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -732,7 +731,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -741,8 +740,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -798,7 +797,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -807,8 +806,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -864,7 +863,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -873,9 +872,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -929,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -938,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_service_providers_operations.py index 6072b854e1c1..df3960663d20 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/inbound_nat_rules_operations.py index 201ff22af705..b98bb643172e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_backend_address_pools_operations.py index 1b50067ed0f3..2d351e78d042 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_frontend_ip_configurations_operations.py index 22244a095d31..38cb015d731a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_load_balancing_rules_operations.py index 57aa41b58848..3f9d588e0501 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_network_interfaces_operations.py index df21916c6079..0e99e1c9c4c0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_probes_operations.py index 4a5e70efcfca..5a95f422d192 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancers_operations.py index be5e69de6e06..ccfc2d8b6258 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/local_network_gateways_operations.py index d59b8f8b600a..8a394e0b801f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interface_ip_configurations_operations.py index 85329ea6f795..88e0d20a5c65 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interface_load_balancers_operations.py index 4da33762d5c8..5f84e2cde709 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interfaces_operations.py index 6abfd8896c7b..f8a9827b3bfb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -554,7 +551,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -563,8 +560,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -650,7 +647,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -659,8 +656,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -774,7 +771,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -783,9 +780,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -848,7 +844,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -857,9 +853,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -925,7 +920,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -934,8 +929,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1008,7 +1003,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1017,9 +1012,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1091,7 +1085,7 @@ def get_virtual_machine_scale_set_ip_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1100,8 +1094,8 @@ def get_virtual_machine_scale_set_ip_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_security_groups_operations.py index 51c9d5b49471..8edd7a1f177d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -430,7 +429,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -439,9 +438,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -498,7 +496,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -507,9 +505,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_watchers_operations.py index 81db04e1082b..3b8757c7d5d0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,6 +289,7 @@ def update_tags( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -302,9 +302,8 @@ def update_tags( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -360,7 +359,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -369,9 +368,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,6 +490,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -505,9 +503,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -544,6 +541,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -556,9 +554,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -649,6 +646,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -661,9 +659,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -755,6 +752,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -767,9 +765,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -858,6 +855,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -870,9 +868,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -964,6 +961,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -976,9 +974,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1067,6 +1064,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1079,9 +1077,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1175,6 +1172,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1187,9 +1185,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1282,6 +1279,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1294,9 +1292,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1392,6 +1389,7 @@ def _get_azure_reachability_report_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1404,9 +1402,8 @@ def _get_azure_reachability_report_initial( body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1498,6 +1495,7 @@ def _list_available_providers_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1510,9 +1508,8 @@ def _list_available_providers_initial( body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/operations.py index e6cb621b5701..8cbb24a3af96 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/packet_captures_operations.py index b285e1ef66c8..49ee45494249 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/public_ip_addresses_operations.py index 0eaf42b89de3..4471b0b1493d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -578,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -587,9 +584,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,7 +658,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -671,9 +667,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -745,7 +740,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +749,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_filter_rules_operations.py index 1ba765becf55..cd58bcb74703 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_filters_operations.py index 5dcaa5d090c4..5bbb598715c1 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_tables_operations.py index 3bdc92eff377..950e1d404d73 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -427,7 +426,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -436,9 +435,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/routes_operations.py index 18d72b337c73..7d530a937197 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/security_rules_operations.py index 844fa7235dfa..315431e813c3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/subnets_operations.py index 43962bcbf9ef..c862532ef2bd 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/usages_operations.py index 8c4d11870c31..b63053d158f0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_gateway_connections_operations.py index e38370fb2d6c..9776f02787cc 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -418,6 +417,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -430,9 +430,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -542,7 +541,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -551,8 +550,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -609,7 +608,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -618,9 +617,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -660,6 +658,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -672,9 +671,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_gateways_operations.py index 49c4abd032ff..60123a18f6e9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -502,7 +500,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,9 +509,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -553,7 +550,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -562,8 +559,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -652,6 +649,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -664,9 +662,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -754,6 +751,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -766,9 +764,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -857,7 +854,7 @@ def _get_vpn_profile_package_url_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -866,8 +863,8 @@ def _get_vpn_profile_package_url_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -953,7 +950,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -962,8 +959,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1065,7 +1062,7 @@ def supported_vpn_devices( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1074,8 +1071,8 @@ def supported_vpn_devices( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1112,7 +1109,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1121,8 +1118,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1208,7 +1205,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1217,8 +1214,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1326,6 +1323,7 @@ def vpn_device_configuration_script( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1338,9 +1336,8 @@ def vpn_device_configuration_script( body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_peerings_operations.py index 9b0e497a4dd4..4a4a9f6f2fa6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_networks_operations.py index 20348aee0975..174f5e482b8b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_01_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +424,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +433,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -562,7 +559,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -571,8 +568,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -631,7 +628,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -640,9 +637,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/network_management_client.py index 7dcc83da9494..2eebb9931c93 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/network_management_client.py @@ -327,7 +327,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -336,8 +336,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/application_gateways_operations.py index c1366d28e6c6..332fdec15dda 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -489,7 +487,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -498,9 +496,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -538,7 +535,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -547,8 +543,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -618,7 +614,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -627,8 +622,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -700,7 +695,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -709,8 +704,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -810,7 +805,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -819,8 +814,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -868,7 +863,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -877,8 +872,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -932,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -941,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -995,7 +989,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1004,8 +998,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/application_security_groups_operations.py index b4f5d634a956..ac426737b32d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/application_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/application_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -155,7 +154,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -164,8 +163,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -202,6 +201,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -214,9 +214,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -324,7 +323,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,9 +332,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -392,7 +390,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -401,9 +399,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/available_endpoint_services_operations.py index e966cfbab11d..5234fe77ff68 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/bgp_service_communities_operations.py index 038effb03380..7d4ba74a07b0 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/connection_monitors_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/connection_monitors_operations.py index e713b3e66be8..993979147171 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/connection_monitors_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/connection_monitors_operations.py @@ -58,6 +58,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ConnectionMonitor') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -185,7 +185,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -194,8 +194,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -233,7 +233,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -242,8 +241,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -318,7 +317,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,8 +325,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -403,7 +401,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -412,8 +409,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -488,7 +485,7 @@ def _query_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,8 +494,8 @@ def _query_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -612,7 +609,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -621,9 +618,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/ddos_protection_plans_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/ddos_protection_plans_operations.py index a2c6543447b5..6787eed3dece 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/ddos_protection_plans_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/ddos_protection_plans_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -154,7 +153,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -163,8 +162,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -201,6 +200,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -213,9 +213,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'DdosProtectionPlan') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -322,7 +321,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -331,9 +330,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -390,7 +388,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -399,9 +397,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/default_security_rules_operations.py index 5b48084e7bcb..c77333573a0c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_authorizations_operations.py index 4aa4d10a6c84..ee7da5c80d2c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_connections_operations.py index 4fe501ce863a..20c7e3f22a9e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_connections_operations.py @@ -59,7 +59,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -68,8 +67,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -172,7 +171,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -181,8 +180,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -221,6 +220,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -233,9 +233,8 @@ def _create_or_update_initial( body_content = self._serialize.body(express_route_circuit_connection_parameters, 'ExpressRouteCircuitConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_peerings_operations.py index 8419734791bf..1ad4de04c158 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuits_operations.py index 6276e106389b..3f54bb957557 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -407,7 +406,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -416,8 +415,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -510,7 +509,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -519,8 +518,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -614,7 +613,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -623,8 +622,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -732,7 +731,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -741,8 +740,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -798,7 +797,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -807,8 +806,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -864,7 +863,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -873,9 +872,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -929,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -938,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_cross_connection_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_cross_connection_peerings_operations.py index de94083ae155..e5297f909732 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_cross_connection_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_cross_connection_peerings_operations.py @@ -81,7 +81,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,9 +90,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -131,7 +130,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -140,8 +138,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -236,7 +234,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -245,8 +243,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -284,6 +282,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -296,9 +295,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCrossConnectionPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_cross_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_cross_connections_operations.py index e5b73a358d17..80c46be9bceb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_cross_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_cross_connections_operations.py @@ -73,7 +73,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,9 +82,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -141,7 +140,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -150,9 +149,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -208,7 +206,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -217,8 +215,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -255,6 +253,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -267,9 +266,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCrossConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -361,6 +359,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -373,9 +372,8 @@ def _update_tags_initial( body_content = self._serialize.body(cross_connection_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -464,7 +462,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -473,8 +471,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -568,7 +566,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -577,8 +575,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -673,7 +671,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -682,8 +680,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_service_providers_operations.py index 0a0428c4bdba..6f83049e24e3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/inbound_nat_rules_operations.py index cdafdac1dbb6..4114cae1a67d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_backend_address_pools_operations.py index 347c3f8069f2..ce2239e321f1 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_frontend_ip_configurations_operations.py index 7aa2792efc51..250c3a608831 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_load_balancing_rules_operations.py index a5ce4dd7ca83..d2e776dc157b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_network_interfaces_operations.py index 249602de0104..9800d522ccc5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_probes_operations.py index f3a050327516..220a2327233f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancers_operations.py index 5444997d5b49..7bfa4f344ee7 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/local_network_gateways_operations.py index b0bfa2aef73a..69ab9ef6efc4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interface_ip_configurations_operations.py index 3e3d7c3c263d..73b93d4b4fd5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interface_load_balancers_operations.py index cdb392199174..5c2429c4f722 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interfaces_operations.py index 30defb666ec1..738f41002363 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -554,7 +551,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -563,8 +560,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -650,7 +647,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -659,8 +656,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -774,7 +771,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -783,9 +780,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -848,7 +844,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -857,9 +853,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -925,7 +920,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -934,8 +929,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1008,7 +1003,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1017,9 +1012,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1091,7 +1085,7 @@ def get_virtual_machine_scale_set_ip_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1100,8 +1094,8 @@ def get_virtual_machine_scale_set_ip_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_security_groups_operations.py index a73081d75ee3..dcdc56698d89 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -430,7 +429,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -439,9 +438,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -498,7 +496,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -507,9 +505,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_watchers_operations.py index afbc5e02c71b..92378619cb78 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,6 +289,7 @@ def update_tags( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -302,9 +302,8 @@ def update_tags( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -360,7 +359,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -369,9 +368,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,6 +490,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -505,9 +503,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -544,6 +541,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -556,9 +554,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -649,6 +646,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -661,9 +659,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -755,6 +752,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -767,9 +765,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -858,6 +855,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -870,9 +868,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -964,6 +961,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -976,9 +974,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1067,6 +1064,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1079,9 +1077,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1174,6 +1171,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1186,9 +1184,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1278,6 +1275,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1290,9 +1288,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1385,6 +1382,7 @@ def _get_azure_reachability_report_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1397,9 +1395,8 @@ def _get_azure_reachability_report_initial( body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1491,6 +1488,7 @@ def _list_available_providers_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1503,9 +1501,8 @@ def _list_available_providers_initial( body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/operations.py index 7a3d6e575212..0aa0a0755616 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/packet_captures_operations.py index 9db11401b018..63c9b6e868ec 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/public_ip_addresses_operations.py index b671457dfb20..83acb0512960 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -578,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -587,9 +584,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,7 +658,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -671,9 +667,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -745,7 +740,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +749,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_filter_rules_operations.py index eb8d70ffb9d5..5e52424186e7 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_filters_operations.py index e07912aaa0b7..d8727bed9905 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_tables_operations.py index 7029eb13fc69..39f1fcec316c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -427,7 +426,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -436,9 +435,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/routes_operations.py index ac8cd1fb1ac9..fbfaf34e0025 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/security_rules_operations.py index 5b7cd318a882..34da393f5175 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/subnets_operations.py index 6d27ea0cc17b..8b3331f35c02 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/usages_operations.py index 4dacef86a4e4..8e71b0d2a641 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_gateway_connections_operations.py index bfd9ec57eff4..05daa80ad8a4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -418,6 +417,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -430,9 +430,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -542,7 +541,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -551,8 +550,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -609,7 +608,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -618,9 +617,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -660,6 +658,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -672,9 +671,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_gateways_operations.py index a43f209fc670..4a3bc1ae84af 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -502,7 +500,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,9 +509,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -553,7 +550,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -562,8 +559,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -652,6 +649,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -664,9 +662,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -754,6 +751,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -766,9 +764,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -857,7 +854,7 @@ def _get_vpn_profile_package_url_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -866,8 +863,8 @@ def _get_vpn_profile_package_url_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -953,7 +950,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -962,8 +959,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1065,7 +1062,7 @@ def supported_vpn_devices( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1074,8 +1071,8 @@ def supported_vpn_devices( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1112,7 +1109,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1121,8 +1118,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1208,7 +1205,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1217,8 +1214,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1306,6 +1303,7 @@ def _set_vpnclient_ipsec_parameters_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1318,9 +1316,8 @@ def _set_vpnclient_ipsec_parameters_initial( body_content = self._serialize.body(vpnclient_ipsec_params, 'VpnClientIPsecParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1413,7 +1410,7 @@ def _get_vpnclient_ipsec_parameters_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1422,8 +1419,8 @@ def _get_vpnclient_ipsec_parameters_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1529,6 +1526,7 @@ def vpn_device_configuration_script( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1541,9 +1539,8 @@ def vpn_device_configuration_script( body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_peerings_operations.py index 1cd86f0337bf..82d706379721 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_networks_operations.py index 05f7701d7705..3d88535b634e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_02_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +424,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +433,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -562,7 +559,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -571,8 +568,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -631,7 +628,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -640,9 +637,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/network_management_client.py index 76d6126daca5..d430cfd0c399 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/network_management_client.py @@ -367,7 +367,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -376,8 +376,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/application_gateways_operations.py index 50b16091272c..76f4a7e698d2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -489,7 +487,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -498,9 +496,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -538,7 +535,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -547,8 +543,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -618,7 +614,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -627,8 +622,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -700,7 +695,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -709,8 +704,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -810,7 +805,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -819,8 +814,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -868,7 +863,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -877,8 +872,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -932,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -941,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -995,7 +989,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1004,8 +998,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/application_security_groups_operations.py index 143dee4af678..3b5950edd560 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/application_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/application_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -155,7 +154,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -164,8 +163,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -202,6 +201,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -214,9 +214,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -324,7 +323,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,9 +332,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -392,7 +390,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -401,9 +399,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/available_endpoint_services_operations.py index 4f62260e8cfd..e63f1429d3a5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/azure_firewalls_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/azure_firewalls_operations.py index b044c86fa4e7..4108ce0dd2bf 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/azure_firewalls_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/azure_firewalls_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'AzureFirewall') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -321,7 +320,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -330,9 +329,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -386,7 +384,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -395,9 +393,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/bgp_service_communities_operations.py index 24a66a5041cf..8536f35eb63f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/connection_monitors_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/connection_monitors_operations.py index eae5645d2fdb..3d3982fa280f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/connection_monitors_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/connection_monitors_operations.py @@ -58,6 +58,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ConnectionMonitor') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -185,7 +185,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -194,8 +194,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -233,7 +233,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -242,8 +241,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -318,7 +317,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,8 +325,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -403,7 +401,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -412,8 +409,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -488,7 +485,7 @@ def _query_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,8 +494,8 @@ def _query_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -612,7 +609,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -621,9 +618,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/ddos_protection_plans_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/ddos_protection_plans_operations.py index ce8c2ba2ca3b..114bcaeda40f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/ddos_protection_plans_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/ddos_protection_plans_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -154,7 +153,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -163,8 +162,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'DdosProtectionPlan') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -325,7 +324,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,9 +333,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -393,7 +391,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -402,9 +400,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/default_security_rules_operations.py index 76e09fe071c0..cf800d29bb93 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_authorizations_operations.py index 43236e8c7a79..3851df4edfd9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_connections_operations.py index e94c9823008a..8d58da485368 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_connections_operations.py @@ -59,7 +59,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -68,8 +67,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -172,7 +171,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -181,8 +180,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -221,6 +220,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -233,9 +233,8 @@ def _create_or_update_initial( body_content = self._serialize.body(express_route_circuit_connection_parameters, 'ExpressRouteCircuitConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_peerings_operations.py index bde86bf6ea5f..f7dbb9782bc6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -160,7 +159,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -169,8 +168,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -208,6 +207,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -220,9 +220,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuits_operations.py index 4a824ce34d99..5fd41bece30a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -407,7 +406,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -416,8 +415,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -510,7 +509,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -519,8 +518,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -614,7 +613,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -623,8 +622,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -732,7 +731,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -741,8 +740,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -798,7 +797,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -807,8 +806,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -864,7 +863,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -873,9 +872,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -929,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -938,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_cross_connection_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_cross_connection_peerings_operations.py index cf13b0cf877d..bf1926dfcdad 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_cross_connection_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_cross_connection_peerings_operations.py @@ -81,7 +81,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,9 +90,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -131,7 +130,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -140,8 +138,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -236,7 +234,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -245,8 +243,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -284,6 +282,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -296,9 +295,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCrossConnectionPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_cross_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_cross_connections_operations.py index 84c47aaccc47..a1b4ad431b32 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_cross_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_cross_connections_operations.py @@ -73,7 +73,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,9 +82,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -141,7 +140,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -150,9 +149,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -208,7 +206,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -217,8 +215,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -255,6 +253,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -267,9 +266,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCrossConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -361,6 +359,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -373,9 +372,8 @@ def _update_tags_initial( body_content = self._serialize.body(cross_connection_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -464,7 +462,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -473,8 +471,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -568,7 +566,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -577,8 +575,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -673,7 +671,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -682,8 +680,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_service_providers_operations.py index e8c0484347c3..22da013811b5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/hub_virtual_network_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/hub_virtual_network_connections_operations.py index ba40d2434437..0d45e4a7072d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/hub_virtual_network_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/hub_virtual_network_connections_operations.py @@ -74,7 +74,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,8 +83,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -142,7 +142,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -151,9 +151,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/inbound_nat_rules_operations.py index 632dd381195b..b325378fee4e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_backend_address_pools_operations.py index 61d9bf40166c..b0cbdd604813 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_frontend_ip_configurations_operations.py index 816a6ddc1b9e..2eccf261627f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_load_balancing_rules_operations.py index d2b1aa8f8f2d..898d83bbd31c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_network_interfaces_operations.py index 920e8a873cc6..ca75f4331f05 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_probes_operations.py index e94178445f9f..2862676f1891 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancers_operations.py index aa655f4794a5..b24df2fb359c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/local_network_gateways_operations.py index 59a55533c6d0..a8962d90f50d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interface_ip_configurations_operations.py index 68b11dd7b164..b505752d131e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interface_load_balancers_operations.py index 7f7fa95c1b73..2974be087c2a 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interfaces_operations.py index f8d9075a3f21..3e2efb819e88 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -554,7 +551,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -563,8 +560,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -650,7 +647,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -659,8 +656,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -774,7 +771,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -783,9 +780,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -848,7 +844,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -857,9 +853,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -925,7 +920,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -934,8 +929,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1008,7 +1003,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1017,9 +1012,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1091,7 +1085,7 @@ def get_virtual_machine_scale_set_ip_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1100,8 +1094,8 @@ def get_virtual_machine_scale_set_ip_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_security_groups_operations.py index 55fe5bd51081..d5af47728686 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -430,7 +429,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -439,9 +438,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -498,7 +496,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -507,9 +505,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_watchers_operations.py index 2d738f88e21b..96bd01be53fa 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/network_watchers_operations.py @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,9 +89,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -144,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +191,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +199,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -290,6 +289,7 @@ def update_tags( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -302,9 +302,8 @@ def update_tags( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -360,7 +359,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -369,9 +368,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,6 +490,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -505,9 +503,8 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -544,6 +541,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -556,9 +554,8 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -649,6 +646,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -661,9 +659,8 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -755,6 +752,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -767,9 +765,8 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -858,6 +855,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -870,9 +868,8 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -964,6 +961,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -976,9 +974,8 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1067,6 +1064,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1079,9 +1077,8 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1175,6 +1172,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1187,9 +1185,8 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1280,6 +1277,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1292,9 +1290,8 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1387,6 +1384,7 @@ def _get_azure_reachability_report_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1399,9 +1397,8 @@ def _get_azure_reachability_report_initial( body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1493,6 +1490,7 @@ def _list_available_providers_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1505,9 +1503,8 @@ def _list_available_providers_initial( body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/operations.py index c7487634770e..70341e5dc039 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/packet_captures_operations.py index a44937357b71..c70c21a73d83 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/packet_captures_operations.py @@ -58,6 +58,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,9 +71,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -180,7 +180,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,8 +189,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -312,7 +311,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -472,7 +470,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -518,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/public_ip_addresses_operations.py index 4dda01462aac..0b4f0d38c40c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -578,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -587,9 +584,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,7 +658,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -671,9 +667,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -745,7 +740,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +749,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_filter_rules_operations.py index 05371052040c..796c50a931d5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_filters_operations.py index fbe36e8f9a43..5db34c64db9c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_tables_operations.py index 01a73a194f22..efb0d2073ede 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -427,7 +426,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -436,9 +435,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/routes_operations.py index c89efa986546..8f584260d1cb 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/security_rules_operations.py index 62de49217c33..09730a407278 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/subnets_operations.py index 77fe972b3043..cdaa8aab91d5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/usages_operations.py index 88f7074eb945..119a694feee9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_hubs_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_hubs_operations.py index 327f64172a26..d62b59e009c8 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_hubs_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_hubs_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -117,6 +117,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -129,9 +130,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_hub_parameters, 'VirtualHub') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -223,6 +223,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -235,9 +236,8 @@ def _update_tags_initial( body_content = self._serialize.body(virtual_hub_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -324,7 +324,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,8 +332,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -423,7 +422,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -432,9 +431,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -487,7 +485,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -496,9 +494,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_gateway_connections_operations.py index b7b0061ef018..e6404ad934e3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -417,6 +416,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -429,9 +429,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -544,7 +543,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -553,8 +552,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -611,7 +610,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -620,9 +619,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,6 +660,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -674,9 +673,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_gateways_operations.py index 9dc98a4b03e9..aefda60ef8b4 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -502,7 +500,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,9 +509,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -553,7 +550,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -562,8 +559,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -652,6 +649,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -664,9 +662,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -754,6 +751,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -766,9 +764,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -857,7 +854,7 @@ def _get_vpn_profile_package_url_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -866,8 +863,8 @@ def _get_vpn_profile_package_url_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -953,7 +950,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -962,8 +959,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1065,7 +1062,7 @@ def supported_vpn_devices( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1074,8 +1071,8 @@ def supported_vpn_devices( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1112,7 +1109,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1121,8 +1118,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1208,7 +1205,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1217,8 +1214,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1306,6 +1303,7 @@ def _set_vpnclient_ipsec_parameters_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1318,9 +1316,8 @@ def _set_vpnclient_ipsec_parameters_initial( body_content = self._serialize.body(vpnclient_ipsec_params, 'VpnClientIPsecParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1413,7 +1410,7 @@ def _get_vpnclient_ipsec_parameters_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1422,8 +1419,8 @@ def _get_vpnclient_ipsec_parameters_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1529,6 +1526,7 @@ def vpn_device_configuration_script( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1541,9 +1539,8 @@ def vpn_device_configuration_script( body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_peerings_operations.py index 0ddae57f4424..3b9d7959a5bf 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_networks_operations.py index f55d0e9d5dd4..d3cd1330b5c6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +424,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +433,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -562,7 +559,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -571,8 +568,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -631,7 +628,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -640,9 +637,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_wa_ns_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_wa_ns_operations.py index ceea0fbc11fd..bf8af64bee5b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_wa_ns_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/virtual_wa_ns_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -117,6 +117,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -129,9 +130,8 @@ def _create_or_update_initial( body_content = self._serialize.body(wan_parameters, 'VirtualWAN') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -224,6 +224,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -236,9 +237,8 @@ def _update_tags_initial( body_content = self._serialize.body(wan_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -325,7 +325,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,8 +333,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -488,7 +486,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,9 +495,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_connections_operations.py index a433e9d9b9e5..1737be75ad40 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_connections_operations.py @@ -75,7 +75,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,8 +84,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -121,6 +121,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -133,9 +134,8 @@ def _create_or_update_initial( body_content = self._serialize.body(vpn_connection_parameters, 'VpnConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -229,7 +229,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -238,8 +237,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -334,7 +333,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -343,9 +342,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_gateways_operations.py index 83de1cb91e64..94a351624488 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_gateways_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -117,6 +117,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -129,9 +130,8 @@ def _create_or_update_initial( body_content = self._serialize.body(vpn_gateway_parameters, 'VpnGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -223,6 +223,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -235,9 +236,8 @@ def _update_tags_initial( body_content = self._serialize.body(vpn_gateway_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -324,7 +324,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,8 +332,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -423,7 +422,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -432,9 +431,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -487,7 +485,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -496,9 +494,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_sites_configuration_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_sites_configuration_operations.py index 75771e4554fd..1468e06e6d2e 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_sites_configuration_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_sites_configuration_operations.py @@ -70,9 +70,8 @@ def _download_initial( body_content = self._serialize.body(request, 'GetVpnSitesConfigurationRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_sites_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_sites_operations.py index 93c723a6508d..06c4572d8005 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_sites_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_04_01/operations/vpn_sites_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -117,6 +117,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -129,9 +130,8 @@ def _create_or_update_initial( body_content = self._serialize.body(vpn_site_parameters, 'VpnSite') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -224,6 +224,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -236,9 +237,8 @@ def _update_tags_initial( body_content = self._serialize.body(vpn_site_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -325,7 +325,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,8 +333,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -488,7 +486,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,9 +495,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/__init__.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/__init__.py index 5dbefcc0eb66..6c54ff47aeb8 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/__init__.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/__init__.py @@ -115,6 +115,7 @@ from .effective_network_security_group_list_result_py3 import EffectiveNetworkSecurityGroupListResult from .effective_route_py3 import EffectiveRoute from .effective_route_list_result_py3 import EffectiveRouteListResult + from .error_response_py3 import ErrorResponse, ErrorResponseException from .network_watcher_py3 import NetworkWatcher from .topology_parameters_py3 import TopologyParameters from .topology_association_py3 import TopologyAssociation @@ -172,6 +173,14 @@ from .connection_monitor_result_py3 import ConnectionMonitorResult from .connection_state_snapshot_py3 import ConnectionStateSnapshot from .connection_monitor_query_result_py3 import ConnectionMonitorQueryResult + from .traffic_query_py3 import TrafficQuery + from .network_configuration_diagnostic_parameters_py3 import NetworkConfigurationDiagnosticParameters + from .matched_rule_py3 import MatchedRule + from .network_security_rules_evaluation_result_py3 import NetworkSecurityRulesEvaluationResult + from .evaluated_network_security_group_py3 import EvaluatedNetworkSecurityGroup + from .network_security_group_result_py3 import NetworkSecurityGroupResult + from .network_configuration_diagnostic_result_py3 import NetworkConfigurationDiagnosticResult + from .network_configuration_diagnostic_response_py3 import NetworkConfigurationDiagnosticResponse from .operation_display_py3 import OperationDisplay from .availability_py3 import Availability from .dimension_py3 import Dimension @@ -330,6 +339,7 @@ from .effective_network_security_group_list_result import EffectiveNetworkSecurityGroupListResult from .effective_route import EffectiveRoute from .effective_route_list_result import EffectiveRouteListResult + from .error_response import ErrorResponse, ErrorResponseException from .network_watcher import NetworkWatcher from .topology_parameters import TopologyParameters from .topology_association import TopologyAssociation @@ -387,6 +397,14 @@ from .connection_monitor_result import ConnectionMonitorResult from .connection_state_snapshot import ConnectionStateSnapshot from .connection_monitor_query_result import ConnectionMonitorQueryResult + from .traffic_query import TrafficQuery + from .network_configuration_diagnostic_parameters import NetworkConfigurationDiagnosticParameters + from .matched_rule import MatchedRule + from .network_security_rules_evaluation_result import NetworkSecurityRulesEvaluationResult + from .evaluated_network_security_group import EvaluatedNetworkSecurityGroup + from .network_security_group_result import NetworkSecurityGroupResult + from .network_configuration_diagnostic_result import NetworkConfigurationDiagnosticResult + from .network_configuration_diagnostic_response import NetworkConfigurationDiagnosticResponse from .operation_display import OperationDisplay from .availability import Availability from .dimension import Dimension @@ -673,6 +691,7 @@ 'EffectiveNetworkSecurityGroupListResult', 'EffectiveRoute', 'EffectiveRouteListResult', + 'ErrorResponse', 'ErrorResponseException', 'NetworkWatcher', 'TopologyParameters', 'TopologyAssociation', @@ -730,6 +749,14 @@ 'ConnectionMonitorResult', 'ConnectionStateSnapshot', 'ConnectionMonitorQueryResult', + 'TrafficQuery', + 'NetworkConfigurationDiagnosticParameters', + 'MatchedRule', + 'NetworkSecurityRulesEvaluationResult', + 'EvaluatedNetworkSecurityGroup', + 'NetworkSecurityGroupResult', + 'NetworkConfigurationDiagnosticResult', + 'NetworkConfigurationDiagnosticResponse', 'OperationDisplay', 'Availability', 'Dimension', diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/connection_state_snapshot.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/connection_state_snapshot.py index 1c17f0ab012e..adbc9e1251ab 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/connection_state_snapshot.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/connection_state_snapshot.py @@ -30,6 +30,16 @@ class ConnectionStateSnapshot(Model): values include: 'NotStarted', 'InProgress', 'Completed' :type evaluation_state: str or ~azure.mgmt.network.v2018_06_01.models.EvaluationState + :param avg_latency_in_ms: Average latency in ms. + :type avg_latency_in_ms: int + :param min_latency_in_ms: Minimum latency in ms. + :type min_latency_in_ms: int + :param max_latency_in_ms: Maximum latency in ms. + :type max_latency_in_ms: int + :param probes_sent: The number of sent probes. + :type probes_sent: int + :param probes_failed: The number of failed probes. + :type probes_failed: int :ivar hops: List of hops between the source and the destination. :vartype hops: list[~azure.mgmt.network.v2018_06_01.models.ConnectivityHop] @@ -44,6 +54,11 @@ class ConnectionStateSnapshot(Model): 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, 'evaluation_state': {'key': 'evaluationState', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, } @@ -53,4 +68,9 @@ def __init__(self, **kwargs): self.start_time = kwargs.get('start_time', None) self.end_time = kwargs.get('end_time', None) self.evaluation_state = kwargs.get('evaluation_state', None) + self.avg_latency_in_ms = kwargs.get('avg_latency_in_ms', None) + self.min_latency_in_ms = kwargs.get('min_latency_in_ms', None) + self.max_latency_in_ms = kwargs.get('max_latency_in_ms', None) + self.probes_sent = kwargs.get('probes_sent', None) + self.probes_failed = kwargs.get('probes_failed', None) self.hops = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/connection_state_snapshot_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/connection_state_snapshot_py3.py index d4580aaa36d1..73ccc65a31de 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/connection_state_snapshot_py3.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/connection_state_snapshot_py3.py @@ -30,6 +30,16 @@ class ConnectionStateSnapshot(Model): values include: 'NotStarted', 'InProgress', 'Completed' :type evaluation_state: str or ~azure.mgmt.network.v2018_06_01.models.EvaluationState + :param avg_latency_in_ms: Average latency in ms. + :type avg_latency_in_ms: int + :param min_latency_in_ms: Minimum latency in ms. + :type min_latency_in_ms: int + :param max_latency_in_ms: Maximum latency in ms. + :type max_latency_in_ms: int + :param probes_sent: The number of sent probes. + :type probes_sent: int + :param probes_failed: The number of failed probes. + :type probes_failed: int :ivar hops: List of hops between the source and the destination. :vartype hops: list[~azure.mgmt.network.v2018_06_01.models.ConnectivityHop] @@ -44,13 +54,23 @@ class ConnectionStateSnapshot(Model): 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, 'evaluation_state': {'key': 'evaluationState', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, } - def __init__(self, *, connection_state=None, start_time=None, end_time=None, evaluation_state=None, **kwargs) -> None: + def __init__(self, *, connection_state=None, start_time=None, end_time=None, evaluation_state=None, avg_latency_in_ms: int=None, min_latency_in_ms: int=None, max_latency_in_ms: int=None, probes_sent: int=None, probes_failed: int=None, **kwargs) -> None: super(ConnectionStateSnapshot, self).__init__(**kwargs) self.connection_state = connection_state self.start_time = start_time self.end_time = end_time self.evaluation_state = evaluation_state + self.avg_latency_in_ms = avg_latency_in_ms + self.min_latency_in_ms = min_latency_in_ms + self.max_latency_in_ms = max_latency_in_ms + self.probes_sent = probes_sent + self.probes_failed = probes_failed self.hops = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/error_response.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/error_response.py new file mode 100644 index 000000000000..8695cf6db9cc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/error_response.py @@ -0,0 +1,41 @@ +# 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 + + +class ErrorResponse(Model): + """The error object. + + :param error: Error. + :type error: ~azure.mgmt.network.v2018_06_01.models.ErrorDetails + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorDetails'}, + } + + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.error = kwargs.get('error', None) + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/error_response_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/error_response_py3.py new file mode 100644 index 000000000000..a2bf4e9aa21c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/error_response_py3.py @@ -0,0 +1,41 @@ +# 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 + + +class ErrorResponse(Model): + """The error object. + + :param error: Error. + :type error: ~azure.mgmt.network.v2018_06_01.models.ErrorDetails + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorDetails'}, + } + + def __init__(self, *, error=None, **kwargs) -> None: + super(ErrorResponse, self).__init__(**kwargs) + self.error = error + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/evaluated_network_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/evaluated_network_security_group.py new file mode 100644 index 000000000000..8f545dfdc3bd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/evaluated_network_security_group.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EvaluatedNetworkSecurityGroup(Model): + """Results of network security group evaluation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_security_group_id: Network security group ID. + :type network_security_group_id: str + :param matched_rule: + :type matched_rule: ~azure.mgmt.network.v2018_06_01.models.MatchedRule + :ivar rules_evaluation_result: List of network security rules evaluation + results. + :vartype rules_evaluation_result: + list[~azure.mgmt.network.v2018_06_01.models.NetworkSecurityRulesEvaluationResult] + """ + + _validation = { + 'rules_evaluation_result': {'readonly': True}, + } + + _attribute_map = { + 'network_security_group_id': {'key': 'networkSecurityGroupId', 'type': 'str'}, + 'matched_rule': {'key': 'matchedRule', 'type': 'MatchedRule'}, + 'rules_evaluation_result': {'key': 'rulesEvaluationResult', 'type': '[NetworkSecurityRulesEvaluationResult]'}, + } + + def __init__(self, **kwargs): + super(EvaluatedNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group_id = kwargs.get('network_security_group_id', None) + self.matched_rule = kwargs.get('matched_rule', None) + self.rules_evaluation_result = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/evaluated_network_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/evaluated_network_security_group_py3.py new file mode 100644 index 000000000000..2afe0aab6d23 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/evaluated_network_security_group_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EvaluatedNetworkSecurityGroup(Model): + """Results of network security group evaluation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_security_group_id: Network security group ID. + :type network_security_group_id: str + :param matched_rule: + :type matched_rule: ~azure.mgmt.network.v2018_06_01.models.MatchedRule + :ivar rules_evaluation_result: List of network security rules evaluation + results. + :vartype rules_evaluation_result: + list[~azure.mgmt.network.v2018_06_01.models.NetworkSecurityRulesEvaluationResult] + """ + + _validation = { + 'rules_evaluation_result': {'readonly': True}, + } + + _attribute_map = { + 'network_security_group_id': {'key': 'networkSecurityGroupId', 'type': 'str'}, + 'matched_rule': {'key': 'matchedRule', 'type': 'MatchedRule'}, + 'rules_evaluation_result': {'key': 'rulesEvaluationResult', 'type': '[NetworkSecurityRulesEvaluationResult]'}, + } + + def __init__(self, *, network_security_group_id: str=None, matched_rule=None, **kwargs) -> None: + super(EvaluatedNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group_id = network_security_group_id + self.matched_rule = matched_rule + self.rules_evaluation_result = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/matched_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/matched_rule.py new file mode 100644 index 000000000000..ffa2f54f52fd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/matched_rule.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MatchedRule(Model): + """Matched rule. + + :param rule_name: Name of the matched network security rule. + :type rule_name: str + :param action: The network traffic is allowed or denied. Possible values + are 'Allow' and 'Deny'. + :type action: str + """ + + _attribute_map = { + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MatchedRule, self).__init__(**kwargs) + self.rule_name = kwargs.get('rule_name', None) + self.action = kwargs.get('action', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/matched_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/matched_rule_py3.py new file mode 100644 index 000000000000..67868d929d0c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/matched_rule_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MatchedRule(Model): + """Matched rule. + + :param rule_name: Name of the matched network security rule. + :type rule_name: str + :param action: The network traffic is allowed or denied. Possible values + are 'Allow' and 'Deny'. + :type action: str + """ + + _attribute_map = { + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, *, rule_name: str=None, action: str=None, **kwargs) -> None: + super(MatchedRule, self).__init__(**kwargs) + self.rule_name = rule_name + self.action = action diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_parameters.py new file mode 100644 index 000000000000..60493d6726f8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticParameters(Model): + """Parameters to get network configuration diagnostic. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: Required. List of traffic queries. + :type queries: list[~azure.mgmt.network.v2018_06_01.models.TrafficQuery] + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'queries': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'queries': {'key': 'queries', 'type': '[TrafficQuery]'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.queries = kwargs.get('queries', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_parameters_py3.py new file mode 100644 index 000000000000..6c6e44dd2afb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticParameters(Model): + """Parameters to get network configuration diagnostic. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: Required. List of traffic queries. + :type queries: list[~azure.mgmt.network.v2018_06_01.models.TrafficQuery] + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'queries': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'queries': {'key': 'queries', 'type': '[TrafficQuery]'}, + } + + def __init__(self, *, target_resource_id: str, queries, **kwargs) -> None: + super(NetworkConfigurationDiagnosticParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.queries = queries diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_response.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_response.py new file mode 100644 index 000000000000..479c797577fb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_response.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResponse(Model): + """Results of network configuration diagnostic on the target resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar results: List of network configuration diagnostic results. + :vartype results: + list[~azure.mgmt.network.v2018_06_01.models.NetworkConfigurationDiagnosticResult] + """ + + _validation = { + 'results': {'readonly': True}, + } + + _attribute_map = { + 'results': {'key': 'results', 'type': '[NetworkConfigurationDiagnosticResult]'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticResponse, self).__init__(**kwargs) + self.results = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_response_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_response_py3.py new file mode 100644 index 000000000000..18d7aad6e566 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_response_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResponse(Model): + """Results of network configuration diagnostic on the target resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar results: List of network configuration diagnostic results. + :vartype results: + list[~azure.mgmt.network.v2018_06_01.models.NetworkConfigurationDiagnosticResult] + """ + + _validation = { + 'results': {'readonly': True}, + } + + _attribute_map = { + 'results': {'key': 'results', 'type': '[NetworkConfigurationDiagnosticResult]'}, + } + + def __init__(self, **kwargs) -> None: + super(NetworkConfigurationDiagnosticResponse, self).__init__(**kwargs) + self.results = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_result.py new file mode 100644 index 000000000000..15ff152ed766 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResult(Model): + """Network configuration diagnostic result corresponded to provided traffic + query. + + :param traffic_query: + :type traffic_query: ~azure.mgmt.network.v2018_06_01.models.TrafficQuery + :param network_security_group_result: + :type network_security_group_result: + ~azure.mgmt.network.v2018_06_01.models.NetworkSecurityGroupResult + """ + + _attribute_map = { + 'traffic_query': {'key': 'trafficQuery', 'type': 'TrafficQuery'}, + 'network_security_group_result': {'key': 'networkSecurityGroupResult', 'type': 'NetworkSecurityGroupResult'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticResult, self).__init__(**kwargs) + self.traffic_query = kwargs.get('traffic_query', None) + self.network_security_group_result = kwargs.get('network_security_group_result', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_result_py3.py new file mode 100644 index 000000000000..8050ce584804 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_configuration_diagnostic_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResult(Model): + """Network configuration diagnostic result corresponded to provided traffic + query. + + :param traffic_query: + :type traffic_query: ~azure.mgmt.network.v2018_06_01.models.TrafficQuery + :param network_security_group_result: + :type network_security_group_result: + ~azure.mgmt.network.v2018_06_01.models.NetworkSecurityGroupResult + """ + + _attribute_map = { + 'traffic_query': {'key': 'trafficQuery', 'type': 'TrafficQuery'}, + 'network_security_group_result': {'key': 'networkSecurityGroupResult', 'type': 'NetworkSecurityGroupResult'}, + } + + def __init__(self, *, traffic_query=None, network_security_group_result=None, **kwargs) -> None: + super(NetworkConfigurationDiagnosticResult, self).__init__(**kwargs) + self.traffic_query = traffic_query + self.network_security_group_result = network_security_group_result diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_group_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_group_result.py new file mode 100644 index 000000000000..bf1800b1e8fd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_group_result.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityGroupResult(Model): + """Network configuration diagnostic result corresponded provided traffic + query. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param security_rule_access_result: The network traffic is allowed or + denied. Possible values are 'Allow' and 'Deny'. Possible values include: + 'Allow', 'Deny' + :type security_rule_access_result: str or + ~azure.mgmt.network.v2018_06_01.models.SecurityRuleAccess + :ivar evaluated_network_security_groups: List of results network security + groups diagnostic. + :vartype evaluated_network_security_groups: + list[~azure.mgmt.network.v2018_06_01.models.EvaluatedNetworkSecurityGroup] + """ + + _validation = { + 'evaluated_network_security_groups': {'readonly': True}, + } + + _attribute_map = { + 'security_rule_access_result': {'key': 'securityRuleAccessResult', 'type': 'str'}, + 'evaluated_network_security_groups': {'key': 'evaluatedNetworkSecurityGroups', 'type': '[EvaluatedNetworkSecurityGroup]'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityGroupResult, self).__init__(**kwargs) + self.security_rule_access_result = kwargs.get('security_rule_access_result', None) + self.evaluated_network_security_groups = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_group_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_group_result_py3.py new file mode 100644 index 000000000000..5ce4e0d71fca --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_group_result_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityGroupResult(Model): + """Network configuration diagnostic result corresponded provided traffic + query. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param security_rule_access_result: The network traffic is allowed or + denied. Possible values are 'Allow' and 'Deny'. Possible values include: + 'Allow', 'Deny' + :type security_rule_access_result: str or + ~azure.mgmt.network.v2018_06_01.models.SecurityRuleAccess + :ivar evaluated_network_security_groups: List of results network security + groups diagnostic. + :vartype evaluated_network_security_groups: + list[~azure.mgmt.network.v2018_06_01.models.EvaluatedNetworkSecurityGroup] + """ + + _validation = { + 'evaluated_network_security_groups': {'readonly': True}, + } + + _attribute_map = { + 'security_rule_access_result': {'key': 'securityRuleAccessResult', 'type': 'str'}, + 'evaluated_network_security_groups': {'key': 'evaluatedNetworkSecurityGroups', 'type': '[EvaluatedNetworkSecurityGroup]'}, + } + + def __init__(self, *, security_rule_access_result=None, **kwargs) -> None: + super(NetworkSecurityGroupResult, self).__init__(**kwargs) + self.security_rule_access_result = security_rule_access_result + self.evaluated_network_security_groups = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_rules_evaluation_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_rules_evaluation_result.py new file mode 100644 index 000000000000..63c680f2093f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_rules_evaluation_result.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityRulesEvaluationResult(Model): + """Network security rules evaluation result. + + :param name: Name of the network security rule. + :type name: str + :param protocol_matched: Value indicating whether protocol is matched. + :type protocol_matched: bool + :param source_matched: Value indicating whether source is matched. + :type source_matched: bool + :param source_port_matched: Value indicating whether source port is + matched. + :type source_port_matched: bool + :param destination_matched: Value indicating whether destination is + matched. + :type destination_matched: bool + :param destination_port_matched: Value indicating whether destination port + is matched. + :type destination_port_matched: bool + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol_matched': {'key': 'protocolMatched', 'type': 'bool'}, + 'source_matched': {'key': 'sourceMatched', 'type': 'bool'}, + 'source_port_matched': {'key': 'sourcePortMatched', 'type': 'bool'}, + 'destination_matched': {'key': 'destinationMatched', 'type': 'bool'}, + 'destination_port_matched': {'key': 'destinationPortMatched', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityRulesEvaluationResult, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol_matched = kwargs.get('protocol_matched', None) + self.source_matched = kwargs.get('source_matched', None) + self.source_port_matched = kwargs.get('source_port_matched', None) + self.destination_matched = kwargs.get('destination_matched', None) + self.destination_port_matched = kwargs.get('destination_port_matched', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_rules_evaluation_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_rules_evaluation_result_py3.py new file mode 100644 index 000000000000..3958fc34a17b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/network_security_rules_evaluation_result_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityRulesEvaluationResult(Model): + """Network security rules evaluation result. + + :param name: Name of the network security rule. + :type name: str + :param protocol_matched: Value indicating whether protocol is matched. + :type protocol_matched: bool + :param source_matched: Value indicating whether source is matched. + :type source_matched: bool + :param source_port_matched: Value indicating whether source port is + matched. + :type source_port_matched: bool + :param destination_matched: Value indicating whether destination is + matched. + :type destination_matched: bool + :param destination_port_matched: Value indicating whether destination port + is matched. + :type destination_port_matched: bool + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol_matched': {'key': 'protocolMatched', 'type': 'bool'}, + 'source_matched': {'key': 'sourceMatched', 'type': 'bool'}, + 'source_port_matched': {'key': 'sourcePortMatched', 'type': 'bool'}, + 'destination_matched': {'key': 'destinationMatched', 'type': 'bool'}, + 'destination_port_matched': {'key': 'destinationPortMatched', 'type': 'bool'}, + } + + def __init__(self, *, name: str=None, protocol_matched: bool=None, source_matched: bool=None, source_port_matched: bool=None, destination_matched: bool=None, destination_port_matched: bool=None, **kwargs) -> None: + super(NetworkSecurityRulesEvaluationResult, self).__init__(**kwargs) + self.name = name + self.protocol_matched = protocol_matched + self.source_matched = source_matched + self.source_port_matched = source_port_matched + self.destination_matched = destination_matched + self.destination_port_matched = destination_port_matched diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/traffic_query.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/traffic_query.py new file mode 100644 index 000000000000..b753c1eb01d8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/traffic_query.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficQuery(Model): + """Parameters to compare with network configuration. + + All required parameters must be populated in order to send to Azure. + + :param direction: Required. The direction of the traffic. Accepted values + are 'Inbound' and 'Outbound'. Possible values include: 'Inbound', + 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_06_01.models.Direction + :param protocol: Required. Protocol to be verified on. Accepted values are + '*', TCP, UDP. + :type protocol: str + :param source: Required. Traffic source. Accepted values are '*', IP + Address/CIDR, Service Tag. + :type source: str + :param destination: Required. Traffic destination. Accepted values are: + '*', IP Address/CIDR, Service Tag. + :type destination: str + :param destination_port: Required. Traffice destination port. Accepted + values are '*', port (for example, 3389) and port range (for example, + 80-100). + :type destination_port: str + """ + + _validation = { + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + 'destination_port': {'required': True}, + } + + _attribute_map = { + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TrafficQuery, self).__init__(**kwargs) + self.direction = kwargs.get('direction', None) + self.protocol = kwargs.get('protocol', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.destination_port = kwargs.get('destination_port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/traffic_query_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/traffic_query_py3.py new file mode 100644 index 000000000000..346799b3a992 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/models/traffic_query_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficQuery(Model): + """Parameters to compare with network configuration. + + All required parameters must be populated in order to send to Azure. + + :param direction: Required. The direction of the traffic. Accepted values + are 'Inbound' and 'Outbound'. Possible values include: 'Inbound', + 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_06_01.models.Direction + :param protocol: Required. Protocol to be verified on. Accepted values are + '*', TCP, UDP. + :type protocol: str + :param source: Required. Traffic source. Accepted values are '*', IP + Address/CIDR, Service Tag. + :type source: str + :param destination: Required. Traffic destination. Accepted values are: + '*', IP Address/CIDR, Service Tag. + :type destination: str + :param destination_port: Required. Traffice destination port. Accepted + values are '*', port (for example, 3389) and port range (for example, + 80-100). + :type destination_port: str + """ + + _validation = { + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + 'destination_port': {'required': True}, + } + + _attribute_map = { + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'str'}, + } + + def __init__(self, *, direction, protocol: str, source: str, destination: str, destination_port: str, **kwargs) -> None: + super(TrafficQuery, self).__init__(**kwargs) + self.direction = direction + self.protocol = protocol + self.source = source + self.destination = destination + self.destination_port = destination_port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/network_management_client.py index 29dfacd920d8..4aaa3abdaa6b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/network_management_client.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/network_management_client.py @@ -367,7 +367,7 @@ def check_dns_name_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -376,8 +376,8 @@ def check_dns_name_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/application_gateways_operations.py index 34edd86ed487..206346bdb7fa 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/application_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/application_gateways_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -489,7 +487,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -498,9 +496,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -538,7 +535,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -547,8 +543,8 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -618,7 +614,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -627,8 +622,8 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -700,7 +695,7 @@ def _backend_health_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -709,8 +704,8 @@ def _backend_health_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -810,7 +805,7 @@ def list_available_waf_rule_sets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -819,8 +814,8 @@ def list_available_waf_rule_sets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -868,7 +863,7 @@ def list_available_ssl_options( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -877,8 +872,8 @@ def list_available_ssl_options( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -932,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -941,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -995,7 +989,7 @@ def get_ssl_predefined_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1004,8 +998,8 @@ def get_ssl_predefined_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/application_security_groups_operations.py index 83b8b5dfc0eb..5d49b2ee3053 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/application_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/application_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -155,7 +154,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -164,8 +163,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -202,6 +201,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -214,9 +214,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -324,7 +323,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,9 +332,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -392,7 +390,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -401,9 +399,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/available_endpoint_services_operations.py index b9f3a3a8c75f..5c53204c03ea 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/available_endpoint_services_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/available_endpoint_services_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/azure_firewalls_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/azure_firewalls_operations.py index 181bfad2032d..0e779d4a1a83 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/azure_firewalls_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/azure_firewalls_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'AzureFirewall') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -321,7 +320,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -330,9 +329,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -386,7 +384,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -395,9 +393,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/bgp_service_communities_operations.py index 010b070fb3b6..277965f92770 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/bgp_service_communities_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/bgp_service_communities_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/connection_monitors_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/connection_monitors_operations.py index 9e1f24e66712..8d02855b0574 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/connection_monitors_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/connection_monitors_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from msrest.polling import LROPoller, NoPolling from msrestazure.polling.arm_polling import ARMPolling @@ -58,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,14 +70,11 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ConnectionMonitor') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -118,7 +115,8 @@ def create_or_update( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.ConnectionMonitorResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.ConnectionMonitorResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, @@ -167,7 +165,8 @@ def get( :return: ConnectionMonitorResult or ClientRawResponse if raw=true :rtype: ~azure.mgmt.network.v2018_06_01.models.ConnectionMonitorResult or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ # Construct URL url = self.get.metadata['url'] @@ -185,7 +184,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -194,13 +193,11 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -233,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -242,13 +238,11 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) if raw: client_raw_response = ClientRawResponse(None, response) @@ -274,7 +268,8 @@ def delete( ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._delete_initial( resource_group_name=resource_group_name, @@ -318,7 +313,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,13 +321,11 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) if raw: client_raw_response = ClientRawResponse(None, response) @@ -359,7 +351,8 @@ def stop( ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._stop_initial( resource_group_name=resource_group_name, @@ -403,7 +396,6 @@ def _start_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -412,13 +404,11 @@ def _start_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) if raw: client_raw_response = ClientRawResponse(None, response) @@ -444,7 +434,8 @@ def start( ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._start_initial( resource_group_name=resource_group_name, @@ -488,7 +479,7 @@ def _query_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,13 +488,11 @@ def _query_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -542,7 +531,8 @@ def query( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.ConnectionMonitorQueryResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.ConnectionMonitorQueryResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._query_initial( resource_group_name=resource_group_name, @@ -588,7 +578,8 @@ def list( :return: An iterator like instance of ConnectionMonitorResult :rtype: ~azure.mgmt.network.v2018_06_01.models.ConnectionMonitorResultPaged[~azure.mgmt.network.v2018_06_01.models.ConnectionMonitorResult] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -612,7 +603,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -621,14 +612,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) return response diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/ddos_protection_plans_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/ddos_protection_plans_operations.py index 29d01712207e..b4d5773a6b02 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/ddos_protection_plans_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/ddos_protection_plans_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -154,7 +153,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -163,8 +162,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'DdosProtectionPlan') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -325,7 +324,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,9 +333,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -393,7 +391,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -402,9 +400,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/default_security_rules_operations.py index 1afbcb7258a6..92c6111b9950 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/default_security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/default_security_rules_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +146,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,8 +155,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_authorizations_operations.py index 46b5d5a28889..2c578db987de 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_authorizations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_authorizations_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -342,7 +341,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +350,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_connections_operations.py index a0e773a579c3..241a062428df 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_connections_operations.py @@ -59,7 +59,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -68,8 +67,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -172,7 +171,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -181,8 +180,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -221,6 +220,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -233,9 +233,8 @@ def _create_or_update_initial( body_content = self._serialize.body(express_route_circuit_connection_parameters, 'ExpressRouteCircuitConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_peerings_operations.py index 4c4ed20f60ea..be453bac9e59 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuit_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -160,7 +159,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -169,8 +168,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -208,6 +207,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -220,9 +220,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuits_operations.py index d8fc4c2df8b9..29f3ffb55d29 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuits_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_circuits_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -152,7 +151,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +160,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,6 +198,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -211,9 +211,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,6 +304,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -317,9 +317,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -407,7 +406,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -416,8 +415,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -510,7 +509,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -519,8 +518,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -614,7 +613,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -623,8 +622,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -732,7 +731,7 @@ def get_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -741,8 +740,8 @@ def get_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -798,7 +797,7 @@ def get_peering_stats( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -807,8 +806,8 @@ def get_peering_stats( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -864,7 +863,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -873,9 +872,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -929,7 +927,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -938,9 +936,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_cross_connection_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_cross_connection_peerings_operations.py index dc6768e062a7..02bfe5bae772 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_cross_connection_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_cross_connection_peerings_operations.py @@ -81,7 +81,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,9 +90,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -131,7 +130,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -140,8 +138,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -236,7 +234,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -245,8 +243,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -284,6 +282,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -296,9 +295,8 @@ def _create_or_update_initial( body_content = self._serialize.body(peering_parameters, 'ExpressRouteCrossConnectionPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_cross_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_cross_connections_operations.py index d3d2bc52589b..88432086d50f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_cross_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_cross_connections_operations.py @@ -73,7 +73,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,9 +82,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -141,7 +140,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -150,9 +149,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -208,7 +206,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -217,8 +215,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -255,6 +253,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -267,9 +266,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ExpressRouteCrossConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -361,6 +359,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -373,9 +372,8 @@ def _update_tags_initial( body_content = self._serialize.body(cross_connection_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -464,7 +462,7 @@ def _list_arp_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -473,8 +471,8 @@ def _list_arp_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -568,7 +566,7 @@ def _list_routes_table_summary_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -577,8 +575,8 @@ def _list_routes_table_summary_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -673,7 +671,7 @@ def _list_routes_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -682,8 +680,8 @@ def _list_routes_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_service_providers_operations.py index b506594b70b1..47956153e33f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_service_providers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/express_route_service_providers_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/hub_virtual_network_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/hub_virtual_network_connections_operations.py index 56af6a4ba882..d4cc773dc4a6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/hub_virtual_network_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/hub_virtual_network_connections_operations.py @@ -74,7 +74,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,8 +83,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -142,7 +142,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -151,9 +151,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/inbound_nat_rules_operations.py index d9092c90c575..0f7a99e637bf 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/inbound_nat_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/inbound_nat_rules_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -129,7 +128,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -138,8 +136,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -234,7 +232,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -243,8 +241,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -282,6 +280,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -294,9 +293,8 @@ def _create_or_update_initial( body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_backend_address_pools_operations.py index fd93b95fbac4..97d4c88cf098 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_backend_address_pools_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_backend_address_pools_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_frontend_ip_configurations_operations.py index 3a6566e82e8a..cf1c91ad9bd9 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_frontend_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,7 +144,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -154,8 +153,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_load_balancing_rules_operations.py index 4b0b20f326bc..b618db105a49 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_load_balancing_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_load_balancing_rules_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_network_interfaces_operations.py index 52ea4aa5b9f8..97095f55f670 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_network_interfaces_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_probes_operations.py index bfad0c2f6da5..ab6f75d1b69b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_probes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancer_probes_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,8 +152,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancers_operations.py index 5e2a0cd354e2..9c240daaf205 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/load_balancers_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LoadBalancer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/local_network_gateways_operations.py index f4c140f82636..9340f173199b 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/local_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/local_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'LocalNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interface_ip_configurations_operations.py index ebc51e78cb3c..b79f9d07ce4d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interface_ip_configurations_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interface_ip_configurations_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -146,7 +145,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,8 +154,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interface_load_balancers_operations.py index 247f01610dfd..0c32e2bad5ac 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interface_load_balancers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interface_load_balancers_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interfaces_operations.py index c87d7156bd7d..9855cba9ffc8 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interfaces_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_interfaces_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkInterface') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -554,7 +551,7 @@ def _get_effective_route_table_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -563,8 +560,8 @@ def _get_effective_route_table_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -650,7 +647,7 @@ def _list_effective_network_security_groups_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -659,8 +656,8 @@ def _list_effective_network_security_groups_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -774,7 +771,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -783,9 +780,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -848,7 +844,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -857,9 +853,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -925,7 +920,7 @@ def get_virtual_machine_scale_set_network_interface( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -934,8 +929,8 @@ def get_virtual_machine_scale_set_network_interface( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1008,7 +1003,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1017,9 +1012,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1091,7 +1085,7 @@ def get_virtual_machine_scale_set_ip_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1100,8 +1094,8 @@ def get_virtual_machine_scale_set_ip_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_security_groups_operations.py index a06453cfc4d6..5eb8a99eeb01 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_security_groups_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_security_groups_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -205,6 +204,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -217,9 +217,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -430,7 +429,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -439,9 +438,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -498,7 +496,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -507,9 +505,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_watchers_operations.py index 35b8c9d567f0..31963c0a4477 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_watchers_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/network_watchers_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from msrest.polling import LROPoller, NoPolling from msrestazure.polling.arm_polling import ARMPolling @@ -59,7 +58,8 @@ def create_or_update( :return: NetworkWatcher or ClientRawResponse if raw=true :rtype: ~azure.mgmt.network.v2018_06_01.models.NetworkWatcher or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ # Construct URL url = self.create_or_update.metadata['url'] @@ -76,6 +76,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -88,14 +89,11 @@ def create_or_update( body_content = self._serialize.body(parameters, 'NetworkWatcher') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -127,7 +125,8 @@ def get( :return: NetworkWatcher or ClientRawResponse if raw=true :rtype: ~azure.mgmt.network.v2018_06_01.models.NetworkWatcher or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ # Construct URL url = self.get.metadata['url'] @@ -144,7 +143,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,13 +152,11 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -191,7 +188,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,13 +196,11 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) if raw: client_raw_response = ClientRawResponse(None, response) @@ -229,7 +223,8 @@ def delete( ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._delete_initial( resource_group_name=resource_group_name, @@ -271,7 +266,8 @@ def update_tags( :return: NetworkWatcher or ClientRawResponse if raw=true :rtype: ~azure.mgmt.network.v2018_06_01.models.NetworkWatcher or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ parameters = models.TagsObject(tags=tags) @@ -290,6 +286,7 @@ def update_tags( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -302,14 +299,11 @@ def update_tags( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -337,7 +331,8 @@ def list( :return: An iterator like instance of NetworkWatcher :rtype: ~azure.mgmt.network.v2018_06_01.models.NetworkWatcherPaged[~azure.mgmt.network.v2018_06_01.models.NetworkWatcher] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -360,7 +355,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -369,14 +364,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) return response @@ -403,7 +395,8 @@ def list_all( :return: An iterator like instance of NetworkWatcher :rtype: ~azure.mgmt.network.v2018_06_01.models.NetworkWatcherPaged[~azure.mgmt.network.v2018_06_01.models.NetworkWatcher] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -425,7 +418,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,14 +427,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) return response @@ -476,7 +466,8 @@ def get_topology( :return: Topology or ClientRawResponse if raw=true :rtype: ~azure.mgmt.network.v2018_06_01.models.Topology or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ # Construct URL url = self.get_topology.metadata['url'] @@ -493,6 +484,7 @@ def get_topology( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -505,14 +497,11 @@ def get_topology( body_content = self._serialize.body(parameters, 'TopologyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -544,6 +533,7 @@ def _verify_ip_flow_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -556,14 +546,11 @@ def _verify_ip_flow_initial( body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -602,7 +589,8 @@ def verify_ip_flow( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.VerificationIPFlowResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.VerificationIPFlowResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._verify_ip_flow_initial( resource_group_name=resource_group_name, @@ -649,6 +637,7 @@ def _get_next_hop_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -661,14 +650,11 @@ def _get_next_hop_initial( body_content = self._serialize.body(parameters, 'NextHopParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -706,7 +692,8 @@ def get_next_hop( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.NextHopResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.NextHopResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._get_next_hop_initial( resource_group_name=resource_group_name, @@ -755,6 +742,7 @@ def _get_vm_security_rules_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -767,14 +755,11 @@ def _get_vm_security_rules_initial( body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -811,7 +796,8 @@ def get_vm_security_rules( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.SecurityGroupViewResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.SecurityGroupViewResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._get_vm_security_rules_initial( resource_group_name=resource_group_name, @@ -858,6 +844,7 @@ def _get_troubleshooting_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -870,14 +857,11 @@ def _get_troubleshooting_initial( body_content = self._serialize.body(parameters, 'TroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -915,7 +899,8 @@ def get_troubleshooting( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.TroubleshootingResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.TroubleshootingResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._get_troubleshooting_initial( resource_group_name=resource_group_name, @@ -964,6 +949,7 @@ def _get_troubleshooting_result_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -976,14 +962,11 @@ def _get_troubleshooting_result_initial( body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -1020,7 +1003,8 @@ def get_troubleshooting_result( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.TroubleshootingResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.TroubleshootingResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._get_troubleshooting_result_initial( resource_group_name=resource_group_name, @@ -1067,6 +1051,7 @@ def _set_flow_log_configuration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1079,14 +1064,11 @@ def _set_flow_log_configuration_initial( body_content = self._serialize.body(parameters, 'FlowLogInformation') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -1126,7 +1108,8 @@ def set_flow_log_configuration( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.FlowLogInformation] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.FlowLogInformation]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._set_flow_log_configuration_initial( resource_group_name=resource_group_name, @@ -1175,6 +1158,7 @@ def _get_flow_log_status_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1187,14 +1171,11 @@ def _get_flow_log_status_initial( body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -1233,7 +1214,8 @@ def get_flow_log_status( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.FlowLogInformation] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.FlowLogInformation]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._get_flow_log_status_initial( resource_group_name=resource_group_name, @@ -1280,6 +1262,7 @@ def _check_connectivity_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1292,14 +1275,11 @@ def _check_connectivity_initial( body_content = self._serialize.body(parameters, 'ConnectivityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -1340,7 +1320,8 @@ def check_connectivity( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.ConnectivityInformation] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.ConnectivityInformation]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._check_connectivity_initial( resource_group_name=resource_group_name, @@ -1387,6 +1368,7 @@ def _get_azure_reachability_report_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1399,14 +1381,11 @@ def _get_azure_reachability_report_initial( body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -1446,7 +1425,8 @@ def get_azure_reachability_report( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.AzureReachabilityReport] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.AzureReachabilityReport]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._get_azure_reachability_report_initial( resource_group_name=resource_group_name, @@ -1493,6 +1473,7 @@ def _list_available_providers_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1505,14 +1486,11 @@ def _list_available_providers_initial( body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -1552,7 +1530,8 @@ def list_available_providers( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.AvailableProvidersList] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.AvailableProvidersList]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._list_available_providers_initial( resource_group_name=resource_group_name, @@ -1580,3 +1559,113 @@ def get_long_running_output(response): else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) list_available_providers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList'} + + + def _get_network_configuration_diagnostic_initial( + self, resource_group_name, network_watcher_name, target_resource_id, queries, custom_headers=None, raw=False, **operation_config): + parameters = models.NetworkConfigurationDiagnosticParameters(target_resource_id=target_resource_id, queries=queries) + + # Construct URL + url = self.get_network_configuration_diagnostic.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkConfigurationDiagnosticParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + if response.status_code == 202: + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_network_configuration_diagnostic( + self, resource_group_name, network_watcher_name, target_resource_id, queries, custom_headers=None, raw=False, polling=True, **operation_config): + """Get network configuration diagnostic. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param target_resource_id: The ID of the target resource to perform + network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: List of traffic queries. + :type queries: + list[~azure.mgmt.network.v2018_06_01.models.TrafficQuery] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + NetworkConfigurationDiagnosticResponse or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.NetworkConfigurationDiagnosticResponse] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.NetworkConfigurationDiagnosticResponse]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_network_configuration_diagnostic_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + queries=queries, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_network_configuration_diagnostic.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/operations.py index 650582f966a8..0343c3be5da6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/packet_captures_operations.py index bb2ba0e0020f..a309a5b87267 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/packet_captures_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/packet_captures_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from msrest.polling import LROPoller, NoPolling from msrestazure.polling.arm_polling import ARMPolling @@ -58,6 +57,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -70,14 +70,11 @@ def _create_initial( body_content = self._serialize.body(parameters, 'PacketCapture') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -114,7 +111,8 @@ def create( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.PacketCaptureResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.PacketCaptureResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._create_initial( resource_group_name=resource_group_name, @@ -162,7 +160,8 @@ def get( :return: PacketCaptureResult or ClientRawResponse if raw=true :rtype: ~azure.mgmt.network.v2018_06_01.models.PacketCaptureResult or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ # Construct URL url = self.get.metadata['url'] @@ -180,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -189,13 +188,11 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -228,7 +225,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,13 +233,11 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) if raw: client_raw_response = ClientRawResponse(None, response) @@ -268,7 +262,8 @@ def delete( ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._delete_initial( resource_group_name=resource_group_name, @@ -312,7 +307,6 @@ def _stop_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,13 +315,11 @@ def _stop_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) if raw: client_raw_response = ClientRawResponse(None, response) @@ -352,7 +344,8 @@ def stop( ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._stop_initial( resource_group_name=resource_group_name, @@ -396,7 +389,7 @@ def _get_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,13 +398,11 @@ def _get_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) deserialized = None @@ -449,7 +440,8 @@ def get_status( ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_06_01.models.PacketCaptureQueryStatusResult] or ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_06_01.models.PacketCaptureQueryStatusResult]] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ raw_result = self._get_status_initial( resource_group_name=resource_group_name, @@ -472,7 +464,7 @@ def get_long_running_output(response): lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) elif polling is False: polling_method = NoPolling() else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) @@ -494,7 +486,8 @@ def list( :return: An iterator like instance of PacketCaptureResult :rtype: ~azure.mgmt.network.v2018_06_01.models.PacketCaptureResultPaged[~azure.mgmt.network.v2018_06_01.models.PacketCaptureResult] - :raises: :class:`CloudError` + :raises: + :class:`ErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -518,7 +511,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -527,14 +520,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.ErrorResponseException(self._deserialize, response) return response diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/public_ip_addresses_operations.py index e105ee7b42a8..ebd58baccf3c 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/public_ip_addresses_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/public_ip_addresses_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -158,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -167,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'PublicIPAddress') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -433,7 +432,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -442,9 +441,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,9 +510,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -578,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -587,9 +584,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,7 +658,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -671,9 +667,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -745,7 +740,7 @@ def get_virtual_machine_scale_set_public_ip_address( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -754,8 +749,8 @@ def get_virtual_machine_scale_set_public_ip_address( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_filter_rules_operations.py index 3f61a6dec582..c64945e22d34 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_filter_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_filter_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -315,6 +314,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -327,9 +327,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -442,7 +441,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -451,9 +450,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_filters_operations.py index aa71847f9f56..4e341907b444 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_filters_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_filters_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -307,6 +306,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -319,9 +319,8 @@ def _update_initial( body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -428,7 +427,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -437,9 +436,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_tables_operations.py index 34c4659e9131..c3c8c162f283 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_tables_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/route_tables_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'RouteTable') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -308,6 +307,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -320,9 +320,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -427,7 +426,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -436,9 +435,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +490,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +499,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/routes_operations.py index 5668f5dc3ffa..3810f1616fde 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/routes_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/routes_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -159,7 +158,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -168,8 +167,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -207,6 +206,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -219,9 +219,8 @@ def _create_or_update_initial( body_content = self._serialize.body(route_parameters, 'Route') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -335,7 +334,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,9 +343,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/security_rules_operations.py index c678179f58ee..06f6c4a7e3b6 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/security_rules_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/security_rules_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -341,7 +340,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -350,9 +349,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/subnets_operations.py index 206ddc1f2223..47b20fb1197d 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/subnets_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/subnets_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -163,7 +162,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -172,8 +171,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -211,6 +210,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -223,9 +223,8 @@ def _create_or_update_initial( body_content = self._serialize.body(subnet_parameters, 'Subnet') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/usages_operations.py index 112d422d1dfd..89a7694050a3 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/usages_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/usages_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_hubs_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_hubs_operations.py index a4145384e26d..a3b1cd002203 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_hubs_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_hubs_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -117,6 +117,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -129,9 +130,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_hub_parameters, 'VirtualHub') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -223,6 +223,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -235,9 +236,8 @@ def _update_tags_initial( body_content = self._serialize.body(virtual_hub_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -324,7 +324,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,8 +332,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -423,7 +422,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -432,9 +431,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -487,7 +485,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -496,9 +494,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_gateway_connections_operations.py index d55c54181a55..f8a118aff766 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_gateway_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_gateway_connections_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -183,7 +183,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -192,8 +192,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,7 +230,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -239,8 +238,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -313,6 +312,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -325,9 +325,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -417,6 +416,7 @@ def _set_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -429,9 +429,8 @@ def _set_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionSharedKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -544,7 +543,7 @@ def get_shared_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -553,8 +552,8 @@ def get_shared_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -611,7 +610,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -620,9 +619,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -662,6 +660,7 @@ def _reset_shared_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -674,9 +673,8 @@ def _reset_shared_key_initial( body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_gateways_operations.py index 02fc7961f984..db3c1e536e57 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_gateways_operations.py @@ -57,6 +57,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -179,7 +179,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -188,8 +188,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -226,7 +226,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -235,8 +234,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -429,7 +428,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -438,9 +437,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -502,7 +500,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -511,9 +509,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -553,7 +550,7 @@ def _reset_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -562,8 +559,8 @@ def _reset_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -635,6 +632,87 @@ def get_long_running_output(response): reset.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset'} + def _reset_vpn_client_shared_key_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reset_vpn_client_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reset_vpn_client_shared_key( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Resets the VPN client shared key of the virtual network gateway in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_vpn_client_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset_vpn_client_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey'} + + def _generatevpnclientpackage_initial( self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): # Construct URL @@ -652,6 +730,7 @@ def _generatevpnclientpackage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -664,9 +743,8 @@ def _generatevpnclientpackage_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -754,6 +832,7 @@ def _generate_vpn_profile_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -766,9 +845,8 @@ def _generate_vpn_profile_initial( body_content = self._serialize.body(parameters, 'VpnClientParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -857,7 +935,7 @@ def _get_vpn_profile_package_url_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -866,8 +944,8 @@ def _get_vpn_profile_package_url_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -953,7 +1031,7 @@ def _get_bgp_peer_status_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -962,8 +1040,8 @@ def _get_bgp_peer_status_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1065,7 +1143,7 @@ def supported_vpn_devices( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1074,8 +1152,8 @@ def supported_vpn_devices( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1112,7 +1190,7 @@ def _get_learned_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1121,8 +1199,8 @@ def _get_learned_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1208,7 +1286,7 @@ def _get_advertised_routes_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1217,8 +1295,8 @@ def _get_advertised_routes_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1306,6 +1384,7 @@ def _set_vpnclient_ipsec_parameters_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1318,9 +1397,8 @@ def _set_vpnclient_ipsec_parameters_initial( body_content = self._serialize.body(vpnclient_ipsec_params, 'VpnClientIPsecParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1413,7 +1491,7 @@ def _get_vpnclient_ipsec_parameters_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1422,8 +1500,8 @@ def _get_vpnclient_ipsec_parameters_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1529,6 +1607,7 @@ def vpn_device_configuration_script( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1541,9 +1620,8 @@ def vpn_device_configuration_script( body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_peerings_operations.py index 3de52572e382..aa46cf9e04e2 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_peerings_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_network_peerings_operations.py @@ -58,7 +58,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -67,8 +66,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -161,7 +160,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +169,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,6 +208,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -221,9 +221,8 @@ def _create_or_update_initial( body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -338,7 +337,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -347,9 +346,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_networks_operations.py index 0ea20346b933..25b4771be3fd 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_networks_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_networks_operations.py @@ -57,7 +57,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -66,8 +65,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -156,7 +155,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -165,8 +164,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -203,6 +202,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -215,9 +215,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -309,6 +308,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -321,9 +321,8 @@ def _update_tags_initial( body_content = self._serialize.body(parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -425,7 +424,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -434,9 +433,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -493,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -562,7 +559,7 @@ def check_ip_address_availability( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -571,8 +568,8 @@ def check_ip_address_availability( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -631,7 +628,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -640,9 +637,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_wa_ns_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_wa_ns_operations.py index c81e1c990792..247c54bc85d5 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_wa_ns_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/virtual_wa_ns_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -117,6 +117,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -129,9 +130,8 @@ def _create_or_update_initial( body_content = self._serialize.body(wan_parameters, 'VirtualWAN') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -224,6 +224,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -236,9 +237,8 @@ def _update_tags_initial( body_content = self._serialize.body(wan_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -325,7 +325,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,8 +333,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -488,7 +486,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,9 +495,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_connections_operations.py index 297625ca0aac..546cd69ed644 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_connections_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_connections_operations.py @@ -75,7 +75,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,8 +84,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -121,6 +121,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -133,9 +134,8 @@ def _create_or_update_initial( body_content = self._serialize.body(vpn_connection_parameters, 'VpnConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -229,7 +229,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -238,8 +237,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -334,7 +333,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -343,9 +342,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_gateways_operations.py index 6fcba9a49a7a..c4788820e69f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_gateways_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_gateways_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -117,6 +117,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -129,9 +130,8 @@ def _create_or_update_initial( body_content = self._serialize.body(vpn_gateway_parameters, 'VpnGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -223,6 +223,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -235,9 +236,8 @@ def _update_tags_initial( body_content = self._serialize.body(vpn_gateway_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -324,7 +324,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -333,8 +332,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -423,7 +422,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -432,9 +431,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -487,7 +485,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -496,9 +494,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_sites_configuration_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_sites_configuration_operations.py index a06314b15e75..af1597c40c05 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_sites_configuration_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_sites_configuration_operations.py @@ -70,9 +70,8 @@ def _download_initial( body_content = self._serialize.body(request, 'GetVpnSitesConfigurationRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_sites_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_sites_operations.py index ead73f1dfb65..2d190a66c48f 100644 --- a/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_sites_operations.py +++ b/azure-mgmt-network/azure/mgmt/network/v2018_06_01/operations/vpn_sites_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -117,6 +117,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -129,9 +130,8 @@ def _create_or_update_initial( body_content = self._serialize.body(vpn_site_parameters, 'VpnSite') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -224,6 +224,7 @@ def _update_tags_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -236,9 +237,8 @@ def _update_tags_initial( body_content = self._serialize.body(vpn_site_parameters, 'TagsObject') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorException(self._deserialize, response) @@ -325,7 +325,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,8 +333,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorException(self._deserialize, response) @@ -424,7 +423,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -433,9 +432,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -488,7 +486,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -497,9 +495,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/__init__.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/__init__.py new file mode 100644 index 000000000000..2a2f032f38aa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/__init__.py @@ -0,0 +1,18 @@ +# 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 .network_management_client import NetworkManagementClient +from .version import VERSION + +__all__ = ['NetworkManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/__init__.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/__init__.py new file mode 100644 index 000000000000..190f6f26ac9f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/__init__.py @@ -0,0 +1,960 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .sub_resource_py3 import SubResource + from .azure_firewall_ip_configuration_py3 import AzureFirewallIPConfiguration + from .azure_firewall_rc_action_py3 import AzureFirewallRCAction + from .azure_firewall_application_rule_protocol_py3 import AzureFirewallApplicationRuleProtocol + from .azure_firewall_application_rule_py3 import AzureFirewallApplicationRule + from .azure_firewall_application_rule_collection_py3 import AzureFirewallApplicationRuleCollection + from .azure_firewall_network_rule_py3 import AzureFirewallNetworkRule + from .azure_firewall_network_rule_collection_py3 import AzureFirewallNetworkRuleCollection + from .azure_firewall_py3 import AzureFirewall + from .resource_py3 import Resource + from .backend_address_pool_py3 import BackendAddressPool + from .inbound_nat_rule_py3 import InboundNatRule + from .application_security_group_py3 import ApplicationSecurityGroup + from .security_rule_py3 import SecurityRule + from .network_interface_dns_settings_py3 import NetworkInterfaceDnsSettings + from .network_interface_py3 import NetworkInterface + from .network_security_group_py3 import NetworkSecurityGroup + from .route_py3 import Route + from .route_table_py3 import RouteTable + from .service_endpoint_properties_format_py3 import ServiceEndpointPropertiesFormat + from .service_endpoint_policy_definition_py3 import ServiceEndpointPolicyDefinition + from .service_endpoint_policy_py3 import ServiceEndpointPolicy + from .public_ip_address_sku_py3 import PublicIPAddressSku + from .public_ip_address_dns_settings_py3 import PublicIPAddressDnsSettings + from .ip_tag_py3 import IpTag + from .public_ip_address_py3 import PublicIPAddress + from .ip_configuration_py3 import IPConfiguration + from .resource_navigation_link_py3 import ResourceNavigationLink + from .subnet_py3 import Subnet + from .network_interface_ip_configuration_py3 import NetworkInterfaceIPConfiguration + from .application_gateway_backend_address_py3 import ApplicationGatewayBackendAddress + from .application_gateway_backend_address_pool_py3 import ApplicationGatewayBackendAddressPool + from .application_gateway_connection_draining_py3 import ApplicationGatewayConnectionDraining + from .application_gateway_backend_http_settings_py3 import ApplicationGatewayBackendHttpSettings + from .application_gateway_backend_health_server_py3 import ApplicationGatewayBackendHealthServer + from .application_gateway_backend_health_http_settings_py3 import ApplicationGatewayBackendHealthHttpSettings + from .application_gateway_backend_health_pool_py3 import ApplicationGatewayBackendHealthPool + from .application_gateway_backend_health_py3 import ApplicationGatewayBackendHealth + from .application_gateway_sku_py3 import ApplicationGatewaySku + from .application_gateway_ssl_policy_py3 import ApplicationGatewaySslPolicy + from .application_gateway_ip_configuration_py3 import ApplicationGatewayIPConfiguration + from .application_gateway_authentication_certificate_py3 import ApplicationGatewayAuthenticationCertificate + from .application_gateway_ssl_certificate_py3 import ApplicationGatewaySslCertificate + from .application_gateway_frontend_ip_configuration_py3 import ApplicationGatewayFrontendIPConfiguration + from .application_gateway_frontend_port_py3 import ApplicationGatewayFrontendPort + from .application_gateway_http_listener_py3 import ApplicationGatewayHttpListener + from .application_gateway_path_rule_py3 import ApplicationGatewayPathRule + from .application_gateway_probe_health_response_match_py3 import ApplicationGatewayProbeHealthResponseMatch + from .application_gateway_probe_py3 import ApplicationGatewayProbe + from .application_gateway_request_routing_rule_py3 import ApplicationGatewayRequestRoutingRule + from .application_gateway_redirect_configuration_py3 import ApplicationGatewayRedirectConfiguration + from .application_gateway_url_path_map_py3 import ApplicationGatewayUrlPathMap + from .application_gateway_firewall_disabled_rule_group_py3 import ApplicationGatewayFirewallDisabledRuleGroup + from .application_gateway_web_application_firewall_configuration_py3 import ApplicationGatewayWebApplicationFirewallConfiguration + from .application_gateway_autoscale_bounds_py3 import ApplicationGatewayAutoscaleBounds + from .application_gateway_autoscale_configuration_py3 import ApplicationGatewayAutoscaleConfiguration + from .application_gateway_py3 import ApplicationGateway + from .application_gateway_firewall_rule_py3 import ApplicationGatewayFirewallRule + from .application_gateway_firewall_rule_group_py3 import ApplicationGatewayFirewallRuleGroup + from .application_gateway_firewall_rule_set_py3 import ApplicationGatewayFirewallRuleSet + from .application_gateway_available_waf_rule_sets_result_py3 import ApplicationGatewayAvailableWafRuleSetsResult + from .application_gateway_available_ssl_options_py3 import ApplicationGatewayAvailableSslOptions + from .application_gateway_ssl_predefined_policy_py3 import ApplicationGatewaySslPredefinedPolicy + from .tags_object_py3 import TagsObject + from .dns_name_availability_result_py3 import DnsNameAvailabilityResult + from .ddos_protection_plan_py3 import DdosProtectionPlan + from .endpoint_service_result_py3 import EndpointServiceResult + from .express_route_circuit_authorization_py3 import ExpressRouteCircuitAuthorization + from .express_route_circuit_peering_config_py3 import ExpressRouteCircuitPeeringConfig + from .route_filter_rule_py3 import RouteFilterRule + from .express_route_circuit_stats_py3 import ExpressRouteCircuitStats + from .express_route_circuit_connection_py3 import ExpressRouteCircuitConnection + from .express_route_circuit_peering_py3 import ExpressRouteCircuitPeering + from .route_filter_py3 import RouteFilter + from .ipv6_express_route_circuit_peering_config_py3 import Ipv6ExpressRouteCircuitPeeringConfig + from .express_route_circuit_sku_py3 import ExpressRouteCircuitSku + from .express_route_circuit_service_provider_properties_py3 import ExpressRouteCircuitServiceProviderProperties + from .express_route_circuit_py3 import ExpressRouteCircuit + from .express_route_circuit_arp_table_py3 import ExpressRouteCircuitArpTable + from .express_route_circuits_arp_table_list_result_py3 import ExpressRouteCircuitsArpTableListResult + from .express_route_circuit_routes_table_py3 import ExpressRouteCircuitRoutesTable + from .express_route_circuits_routes_table_list_result_py3 import ExpressRouteCircuitsRoutesTableListResult + from .express_route_circuit_routes_table_summary_py3 import ExpressRouteCircuitRoutesTableSummary + from .express_route_circuits_routes_table_summary_list_result_py3 import ExpressRouteCircuitsRoutesTableSummaryListResult + from .express_route_service_provider_bandwidths_offered_py3 import ExpressRouteServiceProviderBandwidthsOffered + from .express_route_service_provider_py3 import ExpressRouteServiceProvider + from .express_route_cross_connection_routes_table_summary_py3 import ExpressRouteCrossConnectionRoutesTableSummary + from .express_route_cross_connections_routes_table_summary_list_result_py3 import ExpressRouteCrossConnectionsRoutesTableSummaryListResult + from .express_route_circuit_reference_py3 import ExpressRouteCircuitReference + from .express_route_cross_connection_peering_py3 import ExpressRouteCrossConnectionPeering + from .express_route_cross_connection_py3 import ExpressRouteCrossConnection + from .load_balancer_sku_py3 import LoadBalancerSku + from .frontend_ip_configuration_py3 import FrontendIPConfiguration + from .load_balancing_rule_py3 import LoadBalancingRule + from .probe_py3 import Probe + from .inbound_nat_pool_py3 import InboundNatPool + from .outbound_rule_py3 import OutboundRule + from .load_balancer_py3 import LoadBalancer + from .error_details_py3 import ErrorDetails + from .error_py3 import Error, ErrorException + from .azure_async_operation_result_py3 import AzureAsyncOperationResult + from .effective_network_security_group_association_py3 import EffectiveNetworkSecurityGroupAssociation + from .effective_network_security_rule_py3 import EffectiveNetworkSecurityRule + from .effective_network_security_group_py3 import EffectiveNetworkSecurityGroup + from .effective_network_security_group_list_result_py3 import EffectiveNetworkSecurityGroupListResult + from .effective_route_py3 import EffectiveRoute + from .effective_route_list_result_py3 import EffectiveRouteListResult + from .error_response_py3 import ErrorResponse, ErrorResponseException + from .network_watcher_py3 import NetworkWatcher + from .topology_parameters_py3 import TopologyParameters + from .topology_association_py3 import TopologyAssociation + from .topology_resource_py3 import TopologyResource + from .topology_py3 import Topology + from .verification_ip_flow_parameters_py3 import VerificationIPFlowParameters + from .verification_ip_flow_result_py3 import VerificationIPFlowResult + from .next_hop_parameters_py3 import NextHopParameters + from .next_hop_result_py3 import NextHopResult + from .security_group_view_parameters_py3 import SecurityGroupViewParameters + from .network_interface_association_py3 import NetworkInterfaceAssociation + from .subnet_association_py3 import SubnetAssociation + from .security_rule_associations_py3 import SecurityRuleAssociations + from .security_group_network_interface_py3 import SecurityGroupNetworkInterface + from .security_group_view_result_py3 import SecurityGroupViewResult + from .packet_capture_storage_location_py3 import PacketCaptureStorageLocation + from .packet_capture_filter_py3 import PacketCaptureFilter + from .packet_capture_parameters_py3 import PacketCaptureParameters + from .packet_capture_py3 import PacketCapture + from .packet_capture_result_py3 import PacketCaptureResult + from .packet_capture_query_status_result_py3 import PacketCaptureQueryStatusResult + from .troubleshooting_parameters_py3 import TroubleshootingParameters + from .query_troubleshooting_parameters_py3 import QueryTroubleshootingParameters + from .troubleshooting_recommended_actions_py3 import TroubleshootingRecommendedActions + from .troubleshooting_details_py3 import TroubleshootingDetails + from .troubleshooting_result_py3 import TroubleshootingResult + from .retention_policy_parameters_py3 import RetentionPolicyParameters + from .flow_log_status_parameters_py3 import FlowLogStatusParameters + from .traffic_analytics_configuration_properties_py3 import TrafficAnalyticsConfigurationProperties + from .traffic_analytics_properties_py3 import TrafficAnalyticsProperties + from .flow_log_information_py3 import FlowLogInformation + from .connectivity_source_py3 import ConnectivitySource + from .connectivity_destination_py3 import ConnectivityDestination + from .http_header_py3 import HTTPHeader + from .http_configuration_py3 import HTTPConfiguration + from .protocol_configuration_py3 import ProtocolConfiguration + from .connectivity_parameters_py3 import ConnectivityParameters + from .connectivity_issue_py3 import ConnectivityIssue + from .connectivity_hop_py3 import ConnectivityHop + from .connectivity_information_py3 import ConnectivityInformation + from .azure_reachability_report_location_py3 import AzureReachabilityReportLocation + from .azure_reachability_report_parameters_py3 import AzureReachabilityReportParameters + from .azure_reachability_report_latency_info_py3 import AzureReachabilityReportLatencyInfo + from .azure_reachability_report_item_py3 import AzureReachabilityReportItem + from .azure_reachability_report_py3 import AzureReachabilityReport + from .available_providers_list_parameters_py3 import AvailableProvidersListParameters + from .available_providers_list_city_py3 import AvailableProvidersListCity + from .available_providers_list_state_py3 import AvailableProvidersListState + from .available_providers_list_country_py3 import AvailableProvidersListCountry + from .available_providers_list_py3 import AvailableProvidersList + from .connection_monitor_source_py3 import ConnectionMonitorSource + from .connection_monitor_destination_py3 import ConnectionMonitorDestination + from .connection_monitor_parameters_py3 import ConnectionMonitorParameters + from .connection_monitor_py3 import ConnectionMonitor + from .connection_monitor_result_py3 import ConnectionMonitorResult + from .connection_state_snapshot_py3 import ConnectionStateSnapshot + from .connection_monitor_query_result_py3 import ConnectionMonitorQueryResult + from .traffic_query_py3 import TrafficQuery + from .network_configuration_diagnostic_parameters_py3 import NetworkConfigurationDiagnosticParameters + from .matched_rule_py3 import MatchedRule + from .network_security_rules_evaluation_result_py3 import NetworkSecurityRulesEvaluationResult + from .evaluated_network_security_group_py3 import EvaluatedNetworkSecurityGroup + from .network_security_group_result_py3 import NetworkSecurityGroupResult + from .network_configuration_diagnostic_result_py3 import NetworkConfigurationDiagnosticResult + from .network_configuration_diagnostic_response_py3 import NetworkConfigurationDiagnosticResponse + from .operation_display_py3 import OperationDisplay + from .availability_py3 import Availability + from .dimension_py3 import Dimension + from .metric_specification_py3 import MetricSpecification + from .log_specification_py3 import LogSpecification + from .operation_properties_format_service_specification_py3 import OperationPropertiesFormatServiceSpecification + from .operation_py3 import Operation + from .public_ip_prefix_sku_py3 import PublicIPPrefixSku + from .referenced_public_ip_address_py3 import ReferencedPublicIpAddress + from .public_ip_prefix_py3 import PublicIPPrefix + from .patch_route_filter_rule_py3 import PatchRouteFilterRule + from .patch_route_filter_py3 import PatchRouteFilter + from .bgp_community_py3 import BGPCommunity + from .bgp_service_community_py3 import BgpServiceCommunity + from .usage_name_py3 import UsageName + from .usage_py3 import Usage + from .address_space_py3 import AddressSpace + from .virtual_network_peering_py3 import VirtualNetworkPeering + from .dhcp_options_py3 import DhcpOptions + from .virtual_network_py3 import VirtualNetwork + from .ip_address_availability_result_py3 import IPAddressAvailabilityResult + from .virtual_network_usage_name_py3 import VirtualNetworkUsageName + from .virtual_network_usage_py3 import VirtualNetworkUsage + from .virtual_network_gateway_ip_configuration_py3 import VirtualNetworkGatewayIPConfiguration + from .virtual_network_gateway_sku_py3 import VirtualNetworkGatewaySku + from .vpn_client_root_certificate_py3 import VpnClientRootCertificate + from .vpn_client_revoked_certificate_py3 import VpnClientRevokedCertificate + from .ipsec_policy_py3 import IpsecPolicy + from .vpn_client_configuration_py3 import VpnClientConfiguration + from .bgp_settings_py3 import BgpSettings + from .bgp_peer_status_py3 import BgpPeerStatus + from .gateway_route_py3 import GatewayRoute + from .virtual_network_gateway_py3 import VirtualNetworkGateway + from .vpn_client_parameters_py3 import VpnClientParameters + from .bgp_peer_status_list_result_py3 import BgpPeerStatusListResult + from .gateway_route_list_result_py3 import GatewayRouteListResult + from .tunnel_connection_health_py3 import TunnelConnectionHealth + from .local_network_gateway_py3 import LocalNetworkGateway + from .virtual_network_gateway_connection_py3 import VirtualNetworkGatewayConnection + from .connection_reset_shared_key_py3 import ConnectionResetSharedKey + from .connection_shared_key_py3 import ConnectionSharedKey + from .vpn_client_ipsec_parameters_py3 import VpnClientIPsecParameters + from .virtual_network_connection_gateway_reference_py3 import VirtualNetworkConnectionGatewayReference + from .virtual_network_gateway_connection_list_entity_py3 import VirtualNetworkGatewayConnectionListEntity + from .vpn_device_script_parameters_py3 import VpnDeviceScriptParameters + from .virtual_wan_py3 import VirtualWAN + from .device_properties_py3 import DeviceProperties + from .vpn_site_py3 import VpnSite + from .get_vpn_sites_configuration_request_py3 import GetVpnSitesConfigurationRequest + from .hub_virtual_network_connection_py3 import HubVirtualNetworkConnection + from .virtual_hub_py3 import VirtualHub + from .vpn_connection_py3 import VpnConnection + from .policies_py3 import Policies + from .vpn_gateway_py3 import VpnGateway + from .vpn_site_id_py3 import VpnSiteId +except (SyntaxError, ImportError): + from .sub_resource import SubResource + from .azure_firewall_ip_configuration import AzureFirewallIPConfiguration + from .azure_firewall_rc_action import AzureFirewallRCAction + from .azure_firewall_application_rule_protocol import AzureFirewallApplicationRuleProtocol + from .azure_firewall_application_rule import AzureFirewallApplicationRule + from .azure_firewall_application_rule_collection import AzureFirewallApplicationRuleCollection + from .azure_firewall_network_rule import AzureFirewallNetworkRule + from .azure_firewall_network_rule_collection import AzureFirewallNetworkRuleCollection + from .azure_firewall import AzureFirewall + from .resource import Resource + from .backend_address_pool import BackendAddressPool + from .inbound_nat_rule import InboundNatRule + from .application_security_group import ApplicationSecurityGroup + from .security_rule import SecurityRule + from .network_interface_dns_settings import NetworkInterfaceDnsSettings + from .network_interface import NetworkInterface + from .network_security_group import NetworkSecurityGroup + from .route import Route + from .route_table import RouteTable + from .service_endpoint_properties_format import ServiceEndpointPropertiesFormat + from .service_endpoint_policy_definition import ServiceEndpointPolicyDefinition + from .service_endpoint_policy import ServiceEndpointPolicy + from .public_ip_address_sku import PublicIPAddressSku + from .public_ip_address_dns_settings import PublicIPAddressDnsSettings + from .ip_tag import IpTag + from .public_ip_address import PublicIPAddress + from .ip_configuration import IPConfiguration + from .resource_navigation_link import ResourceNavigationLink + from .subnet import Subnet + from .network_interface_ip_configuration import NetworkInterfaceIPConfiguration + from .application_gateway_backend_address import ApplicationGatewayBackendAddress + from .application_gateway_backend_address_pool import ApplicationGatewayBackendAddressPool + from .application_gateway_connection_draining import ApplicationGatewayConnectionDraining + from .application_gateway_backend_http_settings import ApplicationGatewayBackendHttpSettings + from .application_gateway_backend_health_server import ApplicationGatewayBackendHealthServer + from .application_gateway_backend_health_http_settings import ApplicationGatewayBackendHealthHttpSettings + from .application_gateway_backend_health_pool import ApplicationGatewayBackendHealthPool + from .application_gateway_backend_health import ApplicationGatewayBackendHealth + from .application_gateway_sku import ApplicationGatewaySku + from .application_gateway_ssl_policy import ApplicationGatewaySslPolicy + from .application_gateway_ip_configuration import ApplicationGatewayIPConfiguration + from .application_gateway_authentication_certificate import ApplicationGatewayAuthenticationCertificate + from .application_gateway_ssl_certificate import ApplicationGatewaySslCertificate + from .application_gateway_frontend_ip_configuration import ApplicationGatewayFrontendIPConfiguration + from .application_gateway_frontend_port import ApplicationGatewayFrontendPort + from .application_gateway_http_listener import ApplicationGatewayHttpListener + from .application_gateway_path_rule import ApplicationGatewayPathRule + from .application_gateway_probe_health_response_match import ApplicationGatewayProbeHealthResponseMatch + from .application_gateway_probe import ApplicationGatewayProbe + from .application_gateway_request_routing_rule import ApplicationGatewayRequestRoutingRule + from .application_gateway_redirect_configuration import ApplicationGatewayRedirectConfiguration + from .application_gateway_url_path_map import ApplicationGatewayUrlPathMap + from .application_gateway_firewall_disabled_rule_group import ApplicationGatewayFirewallDisabledRuleGroup + from .application_gateway_web_application_firewall_configuration import ApplicationGatewayWebApplicationFirewallConfiguration + from .application_gateway_autoscale_bounds import ApplicationGatewayAutoscaleBounds + from .application_gateway_autoscale_configuration import ApplicationGatewayAutoscaleConfiguration + from .application_gateway import ApplicationGateway + from .application_gateway_firewall_rule import ApplicationGatewayFirewallRule + from .application_gateway_firewall_rule_group import ApplicationGatewayFirewallRuleGroup + from .application_gateway_firewall_rule_set import ApplicationGatewayFirewallRuleSet + from .application_gateway_available_waf_rule_sets_result import ApplicationGatewayAvailableWafRuleSetsResult + from .application_gateway_available_ssl_options import ApplicationGatewayAvailableSslOptions + from .application_gateway_ssl_predefined_policy import ApplicationGatewaySslPredefinedPolicy + from .tags_object import TagsObject + from .dns_name_availability_result import DnsNameAvailabilityResult + from .ddos_protection_plan import DdosProtectionPlan + from .endpoint_service_result import EndpointServiceResult + from .express_route_circuit_authorization import ExpressRouteCircuitAuthorization + from .express_route_circuit_peering_config import ExpressRouteCircuitPeeringConfig + from .route_filter_rule import RouteFilterRule + from .express_route_circuit_stats import ExpressRouteCircuitStats + from .express_route_circuit_connection import ExpressRouteCircuitConnection + from .express_route_circuit_peering import ExpressRouteCircuitPeering + from .route_filter import RouteFilter + from .ipv6_express_route_circuit_peering_config import Ipv6ExpressRouteCircuitPeeringConfig + from .express_route_circuit_sku import ExpressRouteCircuitSku + from .express_route_circuit_service_provider_properties import ExpressRouteCircuitServiceProviderProperties + from .express_route_circuit import ExpressRouteCircuit + from .express_route_circuit_arp_table import ExpressRouteCircuitArpTable + from .express_route_circuits_arp_table_list_result import ExpressRouteCircuitsArpTableListResult + from .express_route_circuit_routes_table import ExpressRouteCircuitRoutesTable + from .express_route_circuits_routes_table_list_result import ExpressRouteCircuitsRoutesTableListResult + from .express_route_circuit_routes_table_summary import ExpressRouteCircuitRoutesTableSummary + from .express_route_circuits_routes_table_summary_list_result import ExpressRouteCircuitsRoutesTableSummaryListResult + from .express_route_service_provider_bandwidths_offered import ExpressRouteServiceProviderBandwidthsOffered + from .express_route_service_provider import ExpressRouteServiceProvider + from .express_route_cross_connection_routes_table_summary import ExpressRouteCrossConnectionRoutesTableSummary + from .express_route_cross_connections_routes_table_summary_list_result import ExpressRouteCrossConnectionsRoutesTableSummaryListResult + from .express_route_circuit_reference import ExpressRouteCircuitReference + from .express_route_cross_connection_peering import ExpressRouteCrossConnectionPeering + from .express_route_cross_connection import ExpressRouteCrossConnection + from .load_balancer_sku import LoadBalancerSku + from .frontend_ip_configuration import FrontendIPConfiguration + from .load_balancing_rule import LoadBalancingRule + from .probe import Probe + from .inbound_nat_pool import InboundNatPool + from .outbound_rule import OutboundRule + from .load_balancer import LoadBalancer + from .error_details import ErrorDetails + from .error import Error, ErrorException + from .azure_async_operation_result import AzureAsyncOperationResult + from .effective_network_security_group_association import EffectiveNetworkSecurityGroupAssociation + from .effective_network_security_rule import EffectiveNetworkSecurityRule + from .effective_network_security_group import EffectiveNetworkSecurityGroup + from .effective_network_security_group_list_result import EffectiveNetworkSecurityGroupListResult + from .effective_route import EffectiveRoute + from .effective_route_list_result import EffectiveRouteListResult + from .error_response import ErrorResponse, ErrorResponseException + from .network_watcher import NetworkWatcher + from .topology_parameters import TopologyParameters + from .topology_association import TopologyAssociation + from .topology_resource import TopologyResource + from .topology import Topology + from .verification_ip_flow_parameters import VerificationIPFlowParameters + from .verification_ip_flow_result import VerificationIPFlowResult + from .next_hop_parameters import NextHopParameters + from .next_hop_result import NextHopResult + from .security_group_view_parameters import SecurityGroupViewParameters + from .network_interface_association import NetworkInterfaceAssociation + from .subnet_association import SubnetAssociation + from .security_rule_associations import SecurityRuleAssociations + from .security_group_network_interface import SecurityGroupNetworkInterface + from .security_group_view_result import SecurityGroupViewResult + from .packet_capture_storage_location import PacketCaptureStorageLocation + from .packet_capture_filter import PacketCaptureFilter + from .packet_capture_parameters import PacketCaptureParameters + from .packet_capture import PacketCapture + from .packet_capture_result import PacketCaptureResult + from .packet_capture_query_status_result import PacketCaptureQueryStatusResult + from .troubleshooting_parameters import TroubleshootingParameters + from .query_troubleshooting_parameters import QueryTroubleshootingParameters + from .troubleshooting_recommended_actions import TroubleshootingRecommendedActions + from .troubleshooting_details import TroubleshootingDetails + from .troubleshooting_result import TroubleshootingResult + from .retention_policy_parameters import RetentionPolicyParameters + from .flow_log_status_parameters import FlowLogStatusParameters + from .traffic_analytics_configuration_properties import TrafficAnalyticsConfigurationProperties + from .traffic_analytics_properties import TrafficAnalyticsProperties + from .flow_log_information import FlowLogInformation + from .connectivity_source import ConnectivitySource + from .connectivity_destination import ConnectivityDestination + from .http_header import HTTPHeader + from .http_configuration import HTTPConfiguration + from .protocol_configuration import ProtocolConfiguration + from .connectivity_parameters import ConnectivityParameters + from .connectivity_issue import ConnectivityIssue + from .connectivity_hop import ConnectivityHop + from .connectivity_information import ConnectivityInformation + from .azure_reachability_report_location import AzureReachabilityReportLocation + from .azure_reachability_report_parameters import AzureReachabilityReportParameters + from .azure_reachability_report_latency_info import AzureReachabilityReportLatencyInfo + from .azure_reachability_report_item import AzureReachabilityReportItem + from .azure_reachability_report import AzureReachabilityReport + from .available_providers_list_parameters import AvailableProvidersListParameters + from .available_providers_list_city import AvailableProvidersListCity + from .available_providers_list_state import AvailableProvidersListState + from .available_providers_list_country import AvailableProvidersListCountry + from .available_providers_list import AvailableProvidersList + from .connection_monitor_source import ConnectionMonitorSource + from .connection_monitor_destination import ConnectionMonitorDestination + from .connection_monitor_parameters import ConnectionMonitorParameters + from .connection_monitor import ConnectionMonitor + from .connection_monitor_result import ConnectionMonitorResult + from .connection_state_snapshot import ConnectionStateSnapshot + from .connection_monitor_query_result import ConnectionMonitorQueryResult + from .traffic_query import TrafficQuery + from .network_configuration_diagnostic_parameters import NetworkConfigurationDiagnosticParameters + from .matched_rule import MatchedRule + from .network_security_rules_evaluation_result import NetworkSecurityRulesEvaluationResult + from .evaluated_network_security_group import EvaluatedNetworkSecurityGroup + from .network_security_group_result import NetworkSecurityGroupResult + from .network_configuration_diagnostic_result import NetworkConfigurationDiagnosticResult + from .network_configuration_diagnostic_response import NetworkConfigurationDiagnosticResponse + from .operation_display import OperationDisplay + from .availability import Availability + from .dimension import Dimension + from .metric_specification import MetricSpecification + from .log_specification import LogSpecification + from .operation_properties_format_service_specification import OperationPropertiesFormatServiceSpecification + from .operation import Operation + from .public_ip_prefix_sku import PublicIPPrefixSku + from .referenced_public_ip_address import ReferencedPublicIpAddress + from .public_ip_prefix import PublicIPPrefix + from .patch_route_filter_rule import PatchRouteFilterRule + from .patch_route_filter import PatchRouteFilter + from .bgp_community import BGPCommunity + from .bgp_service_community import BgpServiceCommunity + from .usage_name import UsageName + from .usage import Usage + from .address_space import AddressSpace + from .virtual_network_peering import VirtualNetworkPeering + from .dhcp_options import DhcpOptions + from .virtual_network import VirtualNetwork + from .ip_address_availability_result import IPAddressAvailabilityResult + from .virtual_network_usage_name import VirtualNetworkUsageName + from .virtual_network_usage import VirtualNetworkUsage + from .virtual_network_gateway_ip_configuration import VirtualNetworkGatewayIPConfiguration + from .virtual_network_gateway_sku import VirtualNetworkGatewaySku + from .vpn_client_root_certificate import VpnClientRootCertificate + from .vpn_client_revoked_certificate import VpnClientRevokedCertificate + from .ipsec_policy import IpsecPolicy + from .vpn_client_configuration import VpnClientConfiguration + from .bgp_settings import BgpSettings + from .bgp_peer_status import BgpPeerStatus + from .gateway_route import GatewayRoute + from .virtual_network_gateway import VirtualNetworkGateway + from .vpn_client_parameters import VpnClientParameters + from .bgp_peer_status_list_result import BgpPeerStatusListResult + from .gateway_route_list_result import GatewayRouteListResult + from .tunnel_connection_health import TunnelConnectionHealth + from .local_network_gateway import LocalNetworkGateway + from .virtual_network_gateway_connection import VirtualNetworkGatewayConnection + from .connection_reset_shared_key import ConnectionResetSharedKey + from .connection_shared_key import ConnectionSharedKey + from .vpn_client_ipsec_parameters import VpnClientIPsecParameters + from .virtual_network_connection_gateway_reference import VirtualNetworkConnectionGatewayReference + from .virtual_network_gateway_connection_list_entity import VirtualNetworkGatewayConnectionListEntity + from .vpn_device_script_parameters import VpnDeviceScriptParameters + from .virtual_wan import VirtualWAN + from .device_properties import DeviceProperties + from .vpn_site import VpnSite + from .get_vpn_sites_configuration_request import GetVpnSitesConfigurationRequest + from .hub_virtual_network_connection import HubVirtualNetworkConnection + from .virtual_hub import VirtualHub + from .vpn_connection import VpnConnection + from .policies import Policies + from .vpn_gateway import VpnGateway + from .vpn_site_id import VpnSiteId +from .azure_firewall_paged import AzureFirewallPaged +from .application_gateway_paged import ApplicationGatewayPaged +from .application_gateway_ssl_predefined_policy_paged import ApplicationGatewaySslPredefinedPolicyPaged +from .application_security_group_paged import ApplicationSecurityGroupPaged +from .ddos_protection_plan_paged import DdosProtectionPlanPaged +from .endpoint_service_result_paged import EndpointServiceResultPaged +from .express_route_circuit_authorization_paged import ExpressRouteCircuitAuthorizationPaged +from .express_route_circuit_peering_paged import ExpressRouteCircuitPeeringPaged +from .express_route_circuit_paged import ExpressRouteCircuitPaged +from .express_route_service_provider_paged import ExpressRouteServiceProviderPaged +from .express_route_cross_connection_paged import ExpressRouteCrossConnectionPaged +from .express_route_cross_connection_peering_paged import ExpressRouteCrossConnectionPeeringPaged +from .load_balancer_paged import LoadBalancerPaged +from .backend_address_pool_paged import BackendAddressPoolPaged +from .frontend_ip_configuration_paged import FrontendIPConfigurationPaged +from .inbound_nat_rule_paged import InboundNatRulePaged +from .load_balancing_rule_paged import LoadBalancingRulePaged +from .network_interface_paged import NetworkInterfacePaged +from .probe_paged import ProbePaged +from .network_interface_ip_configuration_paged import NetworkInterfaceIPConfigurationPaged +from .network_security_group_paged import NetworkSecurityGroupPaged +from .security_rule_paged import SecurityRulePaged +from .network_watcher_paged import NetworkWatcherPaged +from .packet_capture_result_paged import PacketCaptureResultPaged +from .connection_monitor_result_paged import ConnectionMonitorResultPaged +from .operation_paged import OperationPaged +from .public_ip_address_paged import PublicIPAddressPaged +from .public_ip_prefix_paged import PublicIPPrefixPaged +from .route_filter_paged import RouteFilterPaged +from .route_filter_rule_paged import RouteFilterRulePaged +from .route_table_paged import RouteTablePaged +from .route_paged import RoutePaged +from .bgp_service_community_paged import BgpServiceCommunityPaged +from .usage_paged import UsagePaged +from .virtual_network_paged import VirtualNetworkPaged +from .virtual_network_usage_paged import VirtualNetworkUsagePaged +from .subnet_paged import SubnetPaged +from .virtual_network_peering_paged import VirtualNetworkPeeringPaged +from .virtual_network_gateway_paged import VirtualNetworkGatewayPaged +from .virtual_network_gateway_connection_list_entity_paged import VirtualNetworkGatewayConnectionListEntityPaged +from .virtual_network_gateway_connection_paged import VirtualNetworkGatewayConnectionPaged +from .local_network_gateway_paged import LocalNetworkGatewayPaged +from .virtual_wan_paged import VirtualWANPaged +from .vpn_site_paged import VpnSitePaged +from .virtual_hub_paged import VirtualHubPaged +from .hub_virtual_network_connection_paged import HubVirtualNetworkConnectionPaged +from .vpn_gateway_paged import VpnGatewayPaged +from .vpn_connection_paged import VpnConnectionPaged +from .service_endpoint_policy_paged import ServiceEndpointPolicyPaged +from .service_endpoint_policy_definition_paged import ServiceEndpointPolicyDefinitionPaged +from .network_management_client_enums import ( + ProvisioningState, + AzureFirewallRCActionType, + AzureFirewallApplicationRuleProtocolType, + AzureFirewallNetworkRuleProtocol, + TransportProtocol, + IPAllocationMethod, + IPVersion, + SecurityRuleProtocol, + SecurityRuleAccess, + SecurityRuleDirection, + RouteNextHopType, + PublicIPAddressSkuName, + ApplicationGatewayProtocol, + ApplicationGatewayCookieBasedAffinity, + ApplicationGatewayBackendHealthServerHealth, + ApplicationGatewaySkuName, + ApplicationGatewayTier, + ApplicationGatewaySslProtocol, + ApplicationGatewaySslPolicyType, + ApplicationGatewaySslPolicyName, + ApplicationGatewaySslCipherSuite, + ApplicationGatewayRequestRoutingRuleType, + ApplicationGatewayRedirectType, + ApplicationGatewayOperationalState, + ApplicationGatewayFirewallMode, + AuthorizationUseStatus, + ExpressRouteCircuitPeeringAdvertisedPublicPrefixState, + Access, + ExpressRoutePeeringType, + ExpressRoutePeeringState, + CircuitConnectionStatus, + ExpressRouteCircuitPeeringState, + ExpressRouteCircuitSkuTier, + ExpressRouteCircuitSkuFamily, + ServiceProviderProvisioningState, + LoadBalancerSkuName, + LoadDistribution, + ProbeProtocol, + NetworkOperationStatus, + EffectiveSecurityRuleProtocol, + EffectiveRouteSource, + EffectiveRouteState, + AssociationType, + Direction, + IpFlowProtocol, + NextHopType, + PcProtocol, + PcStatus, + PcError, + Protocol, + HTTPMethod, + Origin, + Severity, + IssueType, + ConnectionStatus, + ConnectionMonitorSourceStatus, + ConnectionState, + EvaluationState, + PublicIPPrefixSkuName, + VirtualNetworkPeeringState, + VirtualNetworkGatewayType, + VpnType, + VirtualNetworkGatewaySkuName, + VirtualNetworkGatewaySkuTier, + VpnClientProtocol, + IpsecEncryption, + IpsecIntegrity, + IkeEncryption, + IkeIntegrity, + DhGroup, + PfsGroup, + BgpPeerState, + ProcessorArchitecture, + AuthenticationMethod, + VirtualNetworkGatewayConnectionStatus, + VirtualNetworkGatewayConnectionType, + VpnConnectionStatus, + TunnelConnectionStatus, + HubVirtualNetworkConnectionStatus, +) + +__all__ = [ + 'SubResource', + 'AzureFirewallIPConfiguration', + 'AzureFirewallRCAction', + 'AzureFirewallApplicationRuleProtocol', + 'AzureFirewallApplicationRule', + 'AzureFirewallApplicationRuleCollection', + 'AzureFirewallNetworkRule', + 'AzureFirewallNetworkRuleCollection', + 'AzureFirewall', + 'Resource', + 'BackendAddressPool', + 'InboundNatRule', + 'ApplicationSecurityGroup', + 'SecurityRule', + 'NetworkInterfaceDnsSettings', + 'NetworkInterface', + 'NetworkSecurityGroup', + 'Route', + 'RouteTable', + 'ServiceEndpointPropertiesFormat', + 'ServiceEndpointPolicyDefinition', + 'ServiceEndpointPolicy', + 'PublicIPAddressSku', + 'PublicIPAddressDnsSettings', + 'IpTag', + 'PublicIPAddress', + 'IPConfiguration', + 'ResourceNavigationLink', + 'Subnet', + 'NetworkInterfaceIPConfiguration', + 'ApplicationGatewayBackendAddress', + 'ApplicationGatewayBackendAddressPool', + 'ApplicationGatewayConnectionDraining', + 'ApplicationGatewayBackendHttpSettings', + 'ApplicationGatewayBackendHealthServer', + 'ApplicationGatewayBackendHealthHttpSettings', + 'ApplicationGatewayBackendHealthPool', + 'ApplicationGatewayBackendHealth', + 'ApplicationGatewaySku', + 'ApplicationGatewaySslPolicy', + 'ApplicationGatewayIPConfiguration', + 'ApplicationGatewayAuthenticationCertificate', + 'ApplicationGatewaySslCertificate', + 'ApplicationGatewayFrontendIPConfiguration', + 'ApplicationGatewayFrontendPort', + 'ApplicationGatewayHttpListener', + 'ApplicationGatewayPathRule', + 'ApplicationGatewayProbeHealthResponseMatch', + 'ApplicationGatewayProbe', + 'ApplicationGatewayRequestRoutingRule', + 'ApplicationGatewayRedirectConfiguration', + 'ApplicationGatewayUrlPathMap', + 'ApplicationGatewayFirewallDisabledRuleGroup', + 'ApplicationGatewayWebApplicationFirewallConfiguration', + 'ApplicationGatewayAutoscaleBounds', + 'ApplicationGatewayAutoscaleConfiguration', + 'ApplicationGateway', + 'ApplicationGatewayFirewallRule', + 'ApplicationGatewayFirewallRuleGroup', + 'ApplicationGatewayFirewallRuleSet', + 'ApplicationGatewayAvailableWafRuleSetsResult', + 'ApplicationGatewayAvailableSslOptions', + 'ApplicationGatewaySslPredefinedPolicy', + 'TagsObject', + 'DnsNameAvailabilityResult', + 'DdosProtectionPlan', + 'EndpointServiceResult', + 'ExpressRouteCircuitAuthorization', + 'ExpressRouteCircuitPeeringConfig', + 'RouteFilterRule', + 'ExpressRouteCircuitStats', + 'ExpressRouteCircuitConnection', + 'ExpressRouteCircuitPeering', + 'RouteFilter', + 'Ipv6ExpressRouteCircuitPeeringConfig', + 'ExpressRouteCircuitSku', + 'ExpressRouteCircuitServiceProviderProperties', + 'ExpressRouteCircuit', + 'ExpressRouteCircuitArpTable', + 'ExpressRouteCircuitsArpTableListResult', + 'ExpressRouteCircuitRoutesTable', + 'ExpressRouteCircuitsRoutesTableListResult', + 'ExpressRouteCircuitRoutesTableSummary', + 'ExpressRouteCircuitsRoutesTableSummaryListResult', + 'ExpressRouteServiceProviderBandwidthsOffered', + 'ExpressRouteServiceProvider', + 'ExpressRouteCrossConnectionRoutesTableSummary', + 'ExpressRouteCrossConnectionsRoutesTableSummaryListResult', + 'ExpressRouteCircuitReference', + 'ExpressRouteCrossConnectionPeering', + 'ExpressRouteCrossConnection', + 'LoadBalancerSku', + 'FrontendIPConfiguration', + 'LoadBalancingRule', + 'Probe', + 'InboundNatPool', + 'OutboundRule', + 'LoadBalancer', + 'ErrorDetails', + 'Error', 'ErrorException', + 'AzureAsyncOperationResult', + 'EffectiveNetworkSecurityGroupAssociation', + 'EffectiveNetworkSecurityRule', + 'EffectiveNetworkSecurityGroup', + 'EffectiveNetworkSecurityGroupListResult', + 'EffectiveRoute', + 'EffectiveRouteListResult', + 'ErrorResponse', 'ErrorResponseException', + 'NetworkWatcher', + 'TopologyParameters', + 'TopologyAssociation', + 'TopologyResource', + 'Topology', + 'VerificationIPFlowParameters', + 'VerificationIPFlowResult', + 'NextHopParameters', + 'NextHopResult', + 'SecurityGroupViewParameters', + 'NetworkInterfaceAssociation', + 'SubnetAssociation', + 'SecurityRuleAssociations', + 'SecurityGroupNetworkInterface', + 'SecurityGroupViewResult', + 'PacketCaptureStorageLocation', + 'PacketCaptureFilter', + 'PacketCaptureParameters', + 'PacketCapture', + 'PacketCaptureResult', + 'PacketCaptureQueryStatusResult', + 'TroubleshootingParameters', + 'QueryTroubleshootingParameters', + 'TroubleshootingRecommendedActions', + 'TroubleshootingDetails', + 'TroubleshootingResult', + 'RetentionPolicyParameters', + 'FlowLogStatusParameters', + 'TrafficAnalyticsConfigurationProperties', + 'TrafficAnalyticsProperties', + 'FlowLogInformation', + 'ConnectivitySource', + 'ConnectivityDestination', + 'HTTPHeader', + 'HTTPConfiguration', + 'ProtocolConfiguration', + 'ConnectivityParameters', + 'ConnectivityIssue', + 'ConnectivityHop', + 'ConnectivityInformation', + 'AzureReachabilityReportLocation', + 'AzureReachabilityReportParameters', + 'AzureReachabilityReportLatencyInfo', + 'AzureReachabilityReportItem', + 'AzureReachabilityReport', + 'AvailableProvidersListParameters', + 'AvailableProvidersListCity', + 'AvailableProvidersListState', + 'AvailableProvidersListCountry', + 'AvailableProvidersList', + 'ConnectionMonitorSource', + 'ConnectionMonitorDestination', + 'ConnectionMonitorParameters', + 'ConnectionMonitor', + 'ConnectionMonitorResult', + 'ConnectionStateSnapshot', + 'ConnectionMonitorQueryResult', + 'TrafficQuery', + 'NetworkConfigurationDiagnosticParameters', + 'MatchedRule', + 'NetworkSecurityRulesEvaluationResult', + 'EvaluatedNetworkSecurityGroup', + 'NetworkSecurityGroupResult', + 'NetworkConfigurationDiagnosticResult', + 'NetworkConfigurationDiagnosticResponse', + 'OperationDisplay', + 'Availability', + 'Dimension', + 'MetricSpecification', + 'LogSpecification', + 'OperationPropertiesFormatServiceSpecification', + 'Operation', + 'PublicIPPrefixSku', + 'ReferencedPublicIpAddress', + 'PublicIPPrefix', + 'PatchRouteFilterRule', + 'PatchRouteFilter', + 'BGPCommunity', + 'BgpServiceCommunity', + 'UsageName', + 'Usage', + 'AddressSpace', + 'VirtualNetworkPeering', + 'DhcpOptions', + 'VirtualNetwork', + 'IPAddressAvailabilityResult', + 'VirtualNetworkUsageName', + 'VirtualNetworkUsage', + 'VirtualNetworkGatewayIPConfiguration', + 'VirtualNetworkGatewaySku', + 'VpnClientRootCertificate', + 'VpnClientRevokedCertificate', + 'IpsecPolicy', + 'VpnClientConfiguration', + 'BgpSettings', + 'BgpPeerStatus', + 'GatewayRoute', + 'VirtualNetworkGateway', + 'VpnClientParameters', + 'BgpPeerStatusListResult', + 'GatewayRouteListResult', + 'TunnelConnectionHealth', + 'LocalNetworkGateway', + 'VirtualNetworkGatewayConnection', + 'ConnectionResetSharedKey', + 'ConnectionSharedKey', + 'VpnClientIPsecParameters', + 'VirtualNetworkConnectionGatewayReference', + 'VirtualNetworkGatewayConnectionListEntity', + 'VpnDeviceScriptParameters', + 'VirtualWAN', + 'DeviceProperties', + 'VpnSite', + 'GetVpnSitesConfigurationRequest', + 'HubVirtualNetworkConnection', + 'VirtualHub', + 'VpnConnection', + 'Policies', + 'VpnGateway', + 'VpnSiteId', + 'AzureFirewallPaged', + 'ApplicationGatewayPaged', + 'ApplicationGatewaySslPredefinedPolicyPaged', + 'ApplicationSecurityGroupPaged', + 'DdosProtectionPlanPaged', + 'EndpointServiceResultPaged', + 'ExpressRouteCircuitAuthorizationPaged', + 'ExpressRouteCircuitPeeringPaged', + 'ExpressRouteCircuitPaged', + 'ExpressRouteServiceProviderPaged', + 'ExpressRouteCrossConnectionPaged', + 'ExpressRouteCrossConnectionPeeringPaged', + 'LoadBalancerPaged', + 'BackendAddressPoolPaged', + 'FrontendIPConfigurationPaged', + 'InboundNatRulePaged', + 'LoadBalancingRulePaged', + 'NetworkInterfacePaged', + 'ProbePaged', + 'NetworkInterfaceIPConfigurationPaged', + 'NetworkSecurityGroupPaged', + 'SecurityRulePaged', + 'NetworkWatcherPaged', + 'PacketCaptureResultPaged', + 'ConnectionMonitorResultPaged', + 'OperationPaged', + 'PublicIPAddressPaged', + 'PublicIPPrefixPaged', + 'RouteFilterPaged', + 'RouteFilterRulePaged', + 'RouteTablePaged', + 'RoutePaged', + 'BgpServiceCommunityPaged', + 'UsagePaged', + 'VirtualNetworkPaged', + 'VirtualNetworkUsagePaged', + 'SubnetPaged', + 'VirtualNetworkPeeringPaged', + 'VirtualNetworkGatewayPaged', + 'VirtualNetworkGatewayConnectionListEntityPaged', + 'VirtualNetworkGatewayConnectionPaged', + 'LocalNetworkGatewayPaged', + 'VirtualWANPaged', + 'VpnSitePaged', + 'VirtualHubPaged', + 'HubVirtualNetworkConnectionPaged', + 'VpnGatewayPaged', + 'VpnConnectionPaged', + 'ServiceEndpointPolicyPaged', + 'ServiceEndpointPolicyDefinitionPaged', + 'ProvisioningState', + 'AzureFirewallRCActionType', + 'AzureFirewallApplicationRuleProtocolType', + 'AzureFirewallNetworkRuleProtocol', + 'TransportProtocol', + 'IPAllocationMethod', + 'IPVersion', + 'SecurityRuleProtocol', + 'SecurityRuleAccess', + 'SecurityRuleDirection', + 'RouteNextHopType', + 'PublicIPAddressSkuName', + 'ApplicationGatewayProtocol', + 'ApplicationGatewayCookieBasedAffinity', + 'ApplicationGatewayBackendHealthServerHealth', + 'ApplicationGatewaySkuName', + 'ApplicationGatewayTier', + 'ApplicationGatewaySslProtocol', + 'ApplicationGatewaySslPolicyType', + 'ApplicationGatewaySslPolicyName', + 'ApplicationGatewaySslCipherSuite', + 'ApplicationGatewayRequestRoutingRuleType', + 'ApplicationGatewayRedirectType', + 'ApplicationGatewayOperationalState', + 'ApplicationGatewayFirewallMode', + 'AuthorizationUseStatus', + 'ExpressRouteCircuitPeeringAdvertisedPublicPrefixState', + 'Access', + 'ExpressRoutePeeringType', + 'ExpressRoutePeeringState', + 'CircuitConnectionStatus', + 'ExpressRouteCircuitPeeringState', + 'ExpressRouteCircuitSkuTier', + 'ExpressRouteCircuitSkuFamily', + 'ServiceProviderProvisioningState', + 'LoadBalancerSkuName', + 'LoadDistribution', + 'ProbeProtocol', + 'NetworkOperationStatus', + 'EffectiveSecurityRuleProtocol', + 'EffectiveRouteSource', + 'EffectiveRouteState', + 'AssociationType', + 'Direction', + 'IpFlowProtocol', + 'NextHopType', + 'PcProtocol', + 'PcStatus', + 'PcError', + 'Protocol', + 'HTTPMethod', + 'Origin', + 'Severity', + 'IssueType', + 'ConnectionStatus', + 'ConnectionMonitorSourceStatus', + 'ConnectionState', + 'EvaluationState', + 'PublicIPPrefixSkuName', + 'VirtualNetworkPeeringState', + 'VirtualNetworkGatewayType', + 'VpnType', + 'VirtualNetworkGatewaySkuName', + 'VirtualNetworkGatewaySkuTier', + 'VpnClientProtocol', + 'IpsecEncryption', + 'IpsecIntegrity', + 'IkeEncryption', + 'IkeIntegrity', + 'DhGroup', + 'PfsGroup', + 'BgpPeerState', + 'ProcessorArchitecture', + 'AuthenticationMethod', + 'VirtualNetworkGatewayConnectionStatus', + 'VirtualNetworkGatewayConnectionType', + 'VpnConnectionStatus', + 'TunnelConnectionStatus', + 'HubVirtualNetworkConnectionStatus', +] diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/address_space.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/address_space.py new file mode 100644 index 000000000000..fbf42c9e0ade --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/address_space.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AddressSpace(Model): + """AddressSpace contains an array of IP address ranges that can be used by + subnets of the virtual network. + + :param address_prefixes: A list of address blocks reserved for this + virtual network in CIDR notation. + :type address_prefixes: list[str] + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AddressSpace, self).__init__(**kwargs) + self.address_prefixes = kwargs.get('address_prefixes', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/address_space_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/address_space_py3.py new file mode 100644 index 000000000000..9794cc805efa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/address_space_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AddressSpace(Model): + """AddressSpace contains an array of IP address ranges that can be used by + subnets of the virtual network. + + :param address_prefixes: A list of address blocks reserved for this + virtual network in CIDR notation. + :type address_prefixes: list[str] + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + } + + def __init__(self, *, address_prefixes=None, **kwargs) -> None: + super(AddressSpace, self).__init__(**kwargs) + self.address_prefixes = address_prefixes diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway.py new file mode 100644 index 000000000000..dc1fd59b4e2e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway.py @@ -0,0 +1,173 @@ +# 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 .resource import Resource + + +class ApplicationGateway(Resource): + """Application gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: SKU of the application gateway resource. + :type sku: ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySku + :param ssl_policy: SSL policy of the application gateway resource. + :type ssl_policy: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPolicy + :ivar operational_state: Operational state of the application gateway + resource. Possible values include: 'Stopped', 'Starting', 'Running', + 'Stopping' + :vartype operational_state: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayOperationalState + :param gateway_ip_configurations: Subnets of application the gateway + resource. + :type gateway_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayIPConfiguration] + :param authentication_certificates: Authentication certificates of the + application gateway resource. + :type authentication_certificates: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayAuthenticationCertificate] + :param ssl_certificates: SSL certificates of the application gateway + resource. + :type ssl_certificates: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslCertificate] + :param frontend_ip_configurations: Frontend IP addresses of the + application gateway resource. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFrontendIPConfiguration] + :param frontend_ports: Frontend ports of the application gateway resource. + :type frontend_ports: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFrontendPort] + :param probes: Probes of the application gateway resource. + :type probes: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProbe] + :param backend_address_pools: Backend address pool of the application + gateway resource. + :type backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendAddressPool] + :param backend_http_settings_collection: Backend http settings of the + application gateway resource. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHttpSettings] + :param http_listeners: Http listeners of the application gateway resource. + :type http_listeners: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayHttpListener] + :param url_path_maps: URL path map of the application gateway resource. + :type url_path_maps: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayUrlPathMap] + :param request_routing_rules: Request routing rules of the application + gateway resource. + :type request_routing_rules: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayRequestRoutingRule] + :param redirect_configurations: Redirect configurations of the application + gateway resource. + :type redirect_configurations: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayRedirectConfiguration] + :param web_application_firewall_configuration: Web application firewall + configuration. + :type web_application_firewall_configuration: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayWebApplicationFirewallConfiguration + :param enable_http2: Whether HTTP2 is enabled on the application gateway + resource. + :type enable_http2: bool + :param enable_fips: Whether FIPS is enabled on the application gateway + resource. + :type enable_fips: bool + :param autoscale_configuration: Autoscale Configuration. + :type autoscale_configuration: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayAutoscaleConfiguration + :param resource_guid: Resource GUID property of the application gateway + resource. + :type resource_guid: str + :param provisioning_state: Provisioning state of the application gateway + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting where the resource + needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'operational_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'properties.sku', 'type': 'ApplicationGatewaySku'}, + 'ssl_policy': {'key': 'properties.sslPolicy', 'type': 'ApplicationGatewaySslPolicy'}, + 'operational_state': {'key': 'properties.operationalState', 'type': 'str'}, + 'gateway_ip_configurations': {'key': 'properties.gatewayIPConfigurations', 'type': '[ApplicationGatewayIPConfiguration]'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[ApplicationGatewayAuthenticationCertificate]'}, + 'ssl_certificates': {'key': 'properties.sslCertificates', 'type': '[ApplicationGatewaySslCertificate]'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[ApplicationGatewayFrontendIPConfiguration]'}, + 'frontend_ports': {'key': 'properties.frontendPorts', 'type': '[ApplicationGatewayFrontendPort]'}, + 'probes': {'key': 'properties.probes', 'type': '[ApplicationGatewayProbe]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'backend_http_settings_collection': {'key': 'properties.backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHttpSettings]'}, + 'http_listeners': {'key': 'properties.httpListeners', 'type': '[ApplicationGatewayHttpListener]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[ApplicationGatewayUrlPathMap]'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[ApplicationGatewayRequestRoutingRule]'}, + 'redirect_configurations': {'key': 'properties.redirectConfigurations', 'type': '[ApplicationGatewayRedirectConfiguration]'}, + 'web_application_firewall_configuration': {'key': 'properties.webApplicationFirewallConfiguration', 'type': 'ApplicationGatewayWebApplicationFirewallConfiguration'}, + 'enable_http2': {'key': 'properties.enableHttp2', 'type': 'bool'}, + 'enable_fips': {'key': 'properties.enableFips', 'type': 'bool'}, + 'autoscale_configuration': {'key': 'properties.autoscaleConfiguration', 'type': 'ApplicationGatewayAutoscaleConfiguration'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGateway, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.ssl_policy = kwargs.get('ssl_policy', None) + self.operational_state = None + self.gateway_ip_configurations = kwargs.get('gateway_ip_configurations', None) + self.authentication_certificates = kwargs.get('authentication_certificates', None) + self.ssl_certificates = kwargs.get('ssl_certificates', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.frontend_ports = kwargs.get('frontend_ports', None) + self.probes = kwargs.get('probes', None) + self.backend_address_pools = kwargs.get('backend_address_pools', None) + self.backend_http_settings_collection = kwargs.get('backend_http_settings_collection', None) + self.http_listeners = kwargs.get('http_listeners', None) + self.url_path_maps = kwargs.get('url_path_maps', None) + self.request_routing_rules = kwargs.get('request_routing_rules', None) + self.redirect_configurations = kwargs.get('redirect_configurations', None) + self.web_application_firewall_configuration = kwargs.get('web_application_firewall_configuration', None) + self.enable_http2 = kwargs.get('enable_http2', None) + self.enable_fips = kwargs.get('enable_fips', None) + self.autoscale_configuration = kwargs.get('autoscale_configuration', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_authentication_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_authentication_certificate.py new file mode 100644 index 000000000000..3b766e657c6b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_authentication_certificate.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ApplicationGatewayAuthenticationCertificate(SubResource): + """Authentication certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :param provisioning_state: Provisioning state of the authentication + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the authentication certificate that is unique within + an Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAuthenticationCertificate, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_authentication_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_authentication_certificate_py3.py new file mode 100644 index 000000000000..d0c7f378884b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_authentication_certificate_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ApplicationGatewayAuthenticationCertificate(SubResource): + """Authentication certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :param provisioning_state: Provisioning state of the authentication + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the authentication certificate that is unique within + an Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, data: str=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayAuthenticationCertificate, self).__init__(id=id, **kwargs) + self.data = data + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_bounds.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_bounds.py new file mode 100644 index 000000000000..f36b8744e511 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_bounds.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAutoscaleBounds(Model): + """Application Gateway autoscale bounds on number of Application Gateway + instance. + + All required parameters must be populated in order to send to Azure. + + :param min: Required. Lower bound on number of Application Gateway + instances. + :type min: int + :param max: Required. Upper bound on number of Application Gateway + instances. + :type max: int + """ + + _validation = { + 'min': {'required': True}, + 'max': {'required': True}, + } + + _attribute_map = { + 'min': {'key': 'min', 'type': 'int'}, + 'max': {'key': 'max', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAutoscaleBounds, self).__init__(**kwargs) + self.min = kwargs.get('min', None) + self.max = kwargs.get('max', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_bounds_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_bounds_py3.py new file mode 100644 index 000000000000..fd93bf10f8f2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_bounds_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAutoscaleBounds(Model): + """Application Gateway autoscale bounds on number of Application Gateway + instance. + + All required parameters must be populated in order to send to Azure. + + :param min: Required. Lower bound on number of Application Gateway + instances. + :type min: int + :param max: Required. Upper bound on number of Application Gateway + instances. + :type max: int + """ + + _validation = { + 'min': {'required': True}, + 'max': {'required': True}, + } + + _attribute_map = { + 'min': {'key': 'min', 'type': 'int'}, + 'max': {'key': 'max', 'type': 'int'}, + } + + def __init__(self, *, min: int, max: int, **kwargs) -> None: + super(ApplicationGatewayAutoscaleBounds, self).__init__(**kwargs) + self.min = min + self.max = max diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_configuration.py new file mode 100644 index 000000000000..1a22f9b29c98 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_configuration.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAutoscaleConfiguration(Model): + """Application Gateway autoscale configuration. + + All required parameters must be populated in order to send to Azure. + + :param bounds: Required. Autoscale bounds + :type bounds: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayAutoscaleBounds + """ + + _validation = { + 'bounds': {'required': True}, + } + + _attribute_map = { + 'bounds': {'key': 'bounds', 'type': 'ApplicationGatewayAutoscaleBounds'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAutoscaleConfiguration, self).__init__(**kwargs) + self.bounds = kwargs.get('bounds', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_configuration_py3.py new file mode 100644 index 000000000000..ac671bd7d338 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_autoscale_configuration_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAutoscaleConfiguration(Model): + """Application Gateway autoscale configuration. + + All required parameters must be populated in order to send to Azure. + + :param bounds: Required. Autoscale bounds + :type bounds: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayAutoscaleBounds + """ + + _validation = { + 'bounds': {'required': True}, + } + + _attribute_map = { + 'bounds': {'key': 'bounds', 'type': 'ApplicationGatewayAutoscaleBounds'}, + } + + def __init__(self, *, bounds, **kwargs) -> None: + super(ApplicationGatewayAutoscaleConfiguration, self).__init__(**kwargs) + self.bounds = bounds diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_ssl_options.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_ssl_options.py new file mode 100644 index 000000000000..6402b2b540a9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_ssl_options.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ApplicationGatewayAvailableSslOptions(Resource): + """Response for ApplicationGatewayAvailableSslOptions API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param predefined_policies: List of available Ssl predefined policy. + :type predefined_policies: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param default_policy: Name of the Ssl predefined policy applied by + default to application gateway. Possible values include: + 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type default_policy: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPolicyName + :param available_cipher_suites: List of available Ssl cipher suites. + :type available_cipher_suites: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslCipherSuite] + :param available_protocols: List of available Ssl protocols. + :type available_protocols: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslProtocol] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'predefined_policies': {'key': 'properties.predefinedPolicies', 'type': '[SubResource]'}, + 'default_policy': {'key': 'properties.defaultPolicy', 'type': 'str'}, + 'available_cipher_suites': {'key': 'properties.availableCipherSuites', 'type': '[str]'}, + 'available_protocols': {'key': 'properties.availableProtocols', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAvailableSslOptions, self).__init__(**kwargs) + self.predefined_policies = kwargs.get('predefined_policies', None) + self.default_policy = kwargs.get('default_policy', None) + self.available_cipher_suites = kwargs.get('available_cipher_suites', None) + self.available_protocols = kwargs.get('available_protocols', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_ssl_options_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_ssl_options_py3.py new file mode 100644 index 000000000000..6f7af03aa8e2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_ssl_options_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ApplicationGatewayAvailableSslOptions(Resource): + """Response for ApplicationGatewayAvailableSslOptions API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param predefined_policies: List of available Ssl predefined policy. + :type predefined_policies: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param default_policy: Name of the Ssl predefined policy applied by + default to application gateway. Possible values include: + 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type default_policy: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPolicyName + :param available_cipher_suites: List of available Ssl cipher suites. + :type available_cipher_suites: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslCipherSuite] + :param available_protocols: List of available Ssl protocols. + :type available_protocols: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslProtocol] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'predefined_policies': {'key': 'properties.predefinedPolicies', 'type': '[SubResource]'}, + 'default_policy': {'key': 'properties.defaultPolicy', 'type': 'str'}, + 'available_cipher_suites': {'key': 'properties.availableCipherSuites', 'type': '[str]'}, + 'available_protocols': {'key': 'properties.availableProtocols', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, predefined_policies=None, default_policy=None, available_cipher_suites=None, available_protocols=None, **kwargs) -> None: + super(ApplicationGatewayAvailableSslOptions, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.predefined_policies = predefined_policies + self.default_policy = default_policy + self.available_cipher_suites = available_cipher_suites + self.available_protocols = available_protocols diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_waf_rule_sets_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_waf_rule_sets_result.py new file mode 100644 index 000000000000..b5f399e4d657 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_waf_rule_sets_result.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAvailableWafRuleSetsResult(Model): + """Response for ApplicationGatewayAvailableWafRuleSets API service call. + + :param value: The list of application gateway rule sets. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallRuleSet] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ApplicationGatewayFirewallRuleSet]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAvailableWafRuleSetsResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_waf_rule_sets_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_waf_rule_sets_result_py3.py new file mode 100644 index 000000000000..bcc5a76e0822 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_available_waf_rule_sets_result_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAvailableWafRuleSetsResult(Model): + """Response for ApplicationGatewayAvailableWafRuleSets API service call. + + :param value: The list of application gateway rule sets. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallRuleSet] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ApplicationGatewayFirewallRuleSet]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ApplicationGatewayAvailableWafRuleSetsResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address.py new file mode 100644 index 000000000000..e7a61fe1705c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendAddress(Model): + """Backend address of an application gateway. + + :param fqdn: Fully qualified domain name (FQDN). + :type fqdn: str + :param ip_address: IP address + :type ip_address: str + """ + + _attribute_map = { + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendAddress, self).__init__(**kwargs) + self.fqdn = kwargs.get('fqdn', None) + self.ip_address = kwargs.get('ip_address', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_pool.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_pool.py new file mode 100644 index 000000000000..096fdae53e42 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_pool.py @@ -0,0 +1,57 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayBackendAddressPool(SubResource): + """Backend Address Pool of an application gateway. + + :param id: Resource ID. + :type id: str + :param backend_ip_configurations: Collection of references to IPs defined + in network interfaces. + :type backend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration] + :param backend_addresses: Backend addresses + :type backend_addresses: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendAddress] + :param provisioning_state: Provisioning state of the backend address pool + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the backend address pool that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'backend_addresses': {'key': 'properties.backendAddresses', 'type': '[ApplicationGatewayBackendAddress]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendAddressPool, self).__init__(**kwargs) + self.backend_ip_configurations = kwargs.get('backend_ip_configurations', None) + self.backend_addresses = kwargs.get('backend_addresses', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_pool_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_pool_py3.py new file mode 100644 index 000000000000..5990080fc441 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_pool_py3.py @@ -0,0 +1,57 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayBackendAddressPool(SubResource): + """Backend Address Pool of an application gateway. + + :param id: Resource ID. + :type id: str + :param backend_ip_configurations: Collection of references to IPs defined + in network interfaces. + :type backend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration] + :param backend_addresses: Backend addresses + :type backend_addresses: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendAddress] + :param provisioning_state: Provisioning state of the backend address pool + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the backend address pool that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'backend_addresses': {'key': 'properties.backendAddresses', 'type': '[ApplicationGatewayBackendAddress]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, backend_ip_configurations=None, backend_addresses=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendAddressPool, self).__init__(id=id, **kwargs) + self.backend_ip_configurations = backend_ip_configurations + self.backend_addresses = backend_addresses + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_py3.py new file mode 100644 index 000000000000..d18e476244d8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_address_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendAddress(Model): + """Backend address of an application gateway. + + :param fqdn: Fully qualified domain name (FQDN). + :type fqdn: str + :param ip_address: IP address + :type ip_address: str + """ + + _attribute_map = { + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + } + + def __init__(self, *, fqdn: str=None, ip_address: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendAddress, self).__init__(**kwargs) + self.fqdn = fqdn + self.ip_address = ip_address diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health.py new file mode 100644 index 000000000000..b8fb8a604127 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealth(Model): + """List of ApplicationGatewayBackendHealthPool resources. + + :param backend_address_pools: + :type backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealthPool] + """ + + _attribute_map = { + 'backend_address_pools': {'key': 'backendAddressPools', 'type': '[ApplicationGatewayBackendHealthPool]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealth, self).__init__(**kwargs) + self.backend_address_pools = kwargs.get('backend_address_pools', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_http_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_http_settings.py new file mode 100644 index 000000000000..112723a5f605 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_http_settings.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthHttpSettings(Model): + """Application gateway BackendHealthHttp settings. + + :param backend_http_settings: Reference of an + ApplicationGatewayBackendHttpSettings resource. + :type backend_http_settings: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHttpSettings + :param servers: List of ApplicationGatewayBackendHealthServer resources. + :type servers: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealthServer] + """ + + _attribute_map = { + 'backend_http_settings': {'key': 'backendHttpSettings', 'type': 'ApplicationGatewayBackendHttpSettings'}, + 'servers': {'key': 'servers', 'type': '[ApplicationGatewayBackendHealthServer]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthHttpSettings, self).__init__(**kwargs) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.servers = kwargs.get('servers', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_http_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_http_settings_py3.py new file mode 100644 index 000000000000..655eab9b7728 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_http_settings_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthHttpSettings(Model): + """Application gateway BackendHealthHttp settings. + + :param backend_http_settings: Reference of an + ApplicationGatewayBackendHttpSettings resource. + :type backend_http_settings: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHttpSettings + :param servers: List of ApplicationGatewayBackendHealthServer resources. + :type servers: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealthServer] + """ + + _attribute_map = { + 'backend_http_settings': {'key': 'backendHttpSettings', 'type': 'ApplicationGatewayBackendHttpSettings'}, + 'servers': {'key': 'servers', 'type': '[ApplicationGatewayBackendHealthServer]'}, + } + + def __init__(self, *, backend_http_settings=None, servers=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthHttpSettings, self).__init__(**kwargs) + self.backend_http_settings = backend_http_settings + self.servers = servers diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_pool.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_pool.py new file mode 100644 index 000000000000..3a7cdba692fe --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_pool.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthPool(Model): + """Application gateway BackendHealth pool. + + :param backend_address_pool: Reference of an + ApplicationGatewayBackendAddressPool resource. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendAddressPool + :param backend_http_settings_collection: List of + ApplicationGatewayBackendHealthHttpSettings resources. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealthHttpSettings] + """ + + _attribute_map = { + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'ApplicationGatewayBackendAddressPool'}, + 'backend_http_settings_collection': {'key': 'backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHealthHttpSettings]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthPool, self).__init__(**kwargs) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings_collection = kwargs.get('backend_http_settings_collection', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_pool_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_pool_py3.py new file mode 100644 index 000000000000..8a406805d0bd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_pool_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthPool(Model): + """Application gateway BackendHealth pool. + + :param backend_address_pool: Reference of an + ApplicationGatewayBackendAddressPool resource. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendAddressPool + :param backend_http_settings_collection: List of + ApplicationGatewayBackendHealthHttpSettings resources. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealthHttpSettings] + """ + + _attribute_map = { + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'ApplicationGatewayBackendAddressPool'}, + 'backend_http_settings_collection': {'key': 'backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHealthHttpSettings]'}, + } + + def __init__(self, *, backend_address_pool=None, backend_http_settings_collection=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthPool, self).__init__(**kwargs) + self.backend_address_pool = backend_address_pool + self.backend_http_settings_collection = backend_http_settings_collection diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_py3.py new file mode 100644 index 000000000000..e0b6625a2560 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealth(Model): + """List of ApplicationGatewayBackendHealthPool resources. + + :param backend_address_pools: + :type backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealthPool] + """ + + _attribute_map = { + 'backend_address_pools': {'key': 'backendAddressPools', 'type': '[ApplicationGatewayBackendHealthPool]'}, + } + + def __init__(self, *, backend_address_pools=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealth, self).__init__(**kwargs) + self.backend_address_pools = backend_address_pools diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_server.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_server.py new file mode 100644 index 000000000000..fcddc8e017de --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_server.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthServer(Model): + """Application gateway backendhealth http settings. + + :param address: IP address or FQDN of backend server. + :type address: str + :param ip_configuration: Reference of IP configuration of backend server. + :type ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration + :param health: Health of backend server. Possible values include: + 'Unknown', 'Up', 'Down', 'Partial', 'Draining' + :type health: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealthServerHealth + """ + + _attribute_map = { + 'address': {'key': 'address', 'type': 'str'}, + 'ip_configuration': {'key': 'ipConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'health': {'key': 'health', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthServer, self).__init__(**kwargs) + self.address = kwargs.get('address', None) + self.ip_configuration = kwargs.get('ip_configuration', None) + self.health = kwargs.get('health', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_server_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_server_py3.py new file mode 100644 index 000000000000..33153445fe10 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_health_server_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthServer(Model): + """Application gateway backendhealth http settings. + + :param address: IP address or FQDN of backend server. + :type address: str + :param ip_configuration: Reference of IP configuration of backend server. + :type ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration + :param health: Health of backend server. Possible values include: + 'Unknown', 'Up', 'Down', 'Partial', 'Draining' + :type health: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealthServerHealth + """ + + _attribute_map = { + 'address': {'key': 'address', 'type': 'str'}, + 'ip_configuration': {'key': 'ipConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'health': {'key': 'health', 'type': 'str'}, + } + + def __init__(self, *, address: str=None, ip_configuration=None, health=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthServer, self).__init__(**kwargs) + self.address = address + self.ip_configuration = ip_configuration + self.health = health diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_http_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_http_settings.py new file mode 100644 index 000000000000..c4b6df1740cb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_http_settings.py @@ -0,0 +1,109 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayBackendHttpSettings(SubResource): + """Backend address pool settings of an application gateway. + + :param id: Resource ID. + :type id: str + :param port: The destination port on the backend. + :type port: int + :param protocol: The protocol used to communicate with the backend. + Possible values are 'Http' and 'Https'. Possible values include: 'Http', + 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProtocol + :param cookie_based_affinity: Cookie based affinity. Possible values + include: 'Enabled', 'Disabled' + :type cookie_based_affinity: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayCookieBasedAffinity + :param request_timeout: Request timeout in seconds. Application Gateway + will fail the request if response is not received within RequestTimeout. + Acceptable values are from 1 second to 86400 seconds. + :type request_timeout: int + :param probe: Probe resource of an application gateway. + :type probe: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param authentication_certificates: Array of references to application + gateway authentication certificates. + :type authentication_certificates: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param connection_draining: Connection draining of the backend http + settings resource. + :type connection_draining: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayConnectionDraining + :param host_name: Host header to be sent to the backend servers. + :type host_name: str + :param pick_host_name_from_backend_address: Whether to pick host header + should be picked from the host name of the backend server. Default value + is false. + :type pick_host_name_from_backend_address: bool + :param affinity_cookie_name: Cookie name to use for the affinity cookie. + :type affinity_cookie_name: str + :param probe_enabled: Whether the probe is enabled. Default value is + false. + :type probe_enabled: bool + :param path: Path which should be used as a prefix for all HTTP requests. + Null means no path will be prefixed. Default value is null. + :type path: str + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the backend http settings that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'cookie_based_affinity': {'key': 'properties.cookieBasedAffinity', 'type': 'str'}, + 'request_timeout': {'key': 'properties.requestTimeout', 'type': 'int'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[SubResource]'}, + 'connection_draining': {'key': 'properties.connectionDraining', 'type': 'ApplicationGatewayConnectionDraining'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'pick_host_name_from_backend_address': {'key': 'properties.pickHostNameFromBackendAddress', 'type': 'bool'}, + 'affinity_cookie_name': {'key': 'properties.affinityCookieName', 'type': 'str'}, + 'probe_enabled': {'key': 'properties.probeEnabled', 'type': 'bool'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHttpSettings, self).__init__(**kwargs) + self.port = kwargs.get('port', None) + self.protocol = kwargs.get('protocol', None) + self.cookie_based_affinity = kwargs.get('cookie_based_affinity', None) + self.request_timeout = kwargs.get('request_timeout', None) + self.probe = kwargs.get('probe', None) + self.authentication_certificates = kwargs.get('authentication_certificates', None) + self.connection_draining = kwargs.get('connection_draining', None) + self.host_name = kwargs.get('host_name', None) + self.pick_host_name_from_backend_address = kwargs.get('pick_host_name_from_backend_address', None) + self.affinity_cookie_name = kwargs.get('affinity_cookie_name', None) + self.probe_enabled = kwargs.get('probe_enabled', None) + self.path = kwargs.get('path', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_http_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_http_settings_py3.py new file mode 100644 index 000000000000..984fa2e9b3bd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_backend_http_settings_py3.py @@ -0,0 +1,109 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayBackendHttpSettings(SubResource): + """Backend address pool settings of an application gateway. + + :param id: Resource ID. + :type id: str + :param port: The destination port on the backend. + :type port: int + :param protocol: The protocol used to communicate with the backend. + Possible values are 'Http' and 'Https'. Possible values include: 'Http', + 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProtocol + :param cookie_based_affinity: Cookie based affinity. Possible values + include: 'Enabled', 'Disabled' + :type cookie_based_affinity: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayCookieBasedAffinity + :param request_timeout: Request timeout in seconds. Application Gateway + will fail the request if response is not received within RequestTimeout. + Acceptable values are from 1 second to 86400 seconds. + :type request_timeout: int + :param probe: Probe resource of an application gateway. + :type probe: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param authentication_certificates: Array of references to application + gateway authentication certificates. + :type authentication_certificates: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param connection_draining: Connection draining of the backend http + settings resource. + :type connection_draining: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayConnectionDraining + :param host_name: Host header to be sent to the backend servers. + :type host_name: str + :param pick_host_name_from_backend_address: Whether to pick host header + should be picked from the host name of the backend server. Default value + is false. + :type pick_host_name_from_backend_address: bool + :param affinity_cookie_name: Cookie name to use for the affinity cookie. + :type affinity_cookie_name: str + :param probe_enabled: Whether the probe is enabled. Default value is + false. + :type probe_enabled: bool + :param path: Path which should be used as a prefix for all HTTP requests. + Null means no path will be prefixed. Default value is null. + :type path: str + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the backend http settings that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'cookie_based_affinity': {'key': 'properties.cookieBasedAffinity', 'type': 'str'}, + 'request_timeout': {'key': 'properties.requestTimeout', 'type': 'int'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[SubResource]'}, + 'connection_draining': {'key': 'properties.connectionDraining', 'type': 'ApplicationGatewayConnectionDraining'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'pick_host_name_from_backend_address': {'key': 'properties.pickHostNameFromBackendAddress', 'type': 'bool'}, + 'affinity_cookie_name': {'key': 'properties.affinityCookieName', 'type': 'str'}, + 'probe_enabled': {'key': 'properties.probeEnabled', 'type': 'bool'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, port: int=None, protocol=None, cookie_based_affinity=None, request_timeout: int=None, probe=None, authentication_certificates=None, connection_draining=None, host_name: str=None, pick_host_name_from_backend_address: bool=None, affinity_cookie_name: str=None, probe_enabled: bool=None, path: str=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendHttpSettings, self).__init__(id=id, **kwargs) + self.port = port + self.protocol = protocol + self.cookie_based_affinity = cookie_based_affinity + self.request_timeout = request_timeout + self.probe = probe + self.authentication_certificates = authentication_certificates + self.connection_draining = connection_draining + self.host_name = host_name + self.pick_host_name_from_backend_address = pick_host_name_from_backend_address + self.affinity_cookie_name = affinity_cookie_name + self.probe_enabled = probe_enabled + self.path = path + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_connection_draining.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_connection_draining.py new file mode 100644 index 000000000000..531b3cb05dd3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_connection_draining.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayConnectionDraining(Model): + """Connection draining allows open connections to a backend server to be + active for a specified time after the backend server got removed from the + configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether connection draining is enabled or not. + :type enabled: bool + :param drain_timeout_in_sec: Required. The number of seconds connection + draining is active. Acceptable values are from 1 second to 3600 seconds. + :type drain_timeout_in_sec: int + """ + + _validation = { + 'enabled': {'required': True}, + 'drain_timeout_in_sec': {'required': True, 'maximum': 3600, 'minimum': 1}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'drain_timeout_in_sec': {'key': 'drainTimeoutInSec', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayConnectionDraining, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.drain_timeout_in_sec = kwargs.get('drain_timeout_in_sec', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_connection_draining_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_connection_draining_py3.py new file mode 100644 index 000000000000..c46fb01cae72 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_connection_draining_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayConnectionDraining(Model): + """Connection draining allows open connections to a backend server to be + active for a specified time after the backend server got removed from the + configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether connection draining is enabled or not. + :type enabled: bool + :param drain_timeout_in_sec: Required. The number of seconds connection + draining is active. Acceptable values are from 1 second to 3600 seconds. + :type drain_timeout_in_sec: int + """ + + _validation = { + 'enabled': {'required': True}, + 'drain_timeout_in_sec': {'required': True, 'maximum': 3600, 'minimum': 1}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'drain_timeout_in_sec': {'key': 'drainTimeoutInSec', 'type': 'int'}, + } + + def __init__(self, *, enabled: bool, drain_timeout_in_sec: int, **kwargs) -> None: + super(ApplicationGatewayConnectionDraining, self).__init__(**kwargs) + self.enabled = enabled + self.drain_timeout_in_sec = drain_timeout_in_sec diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_disabled_rule_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_disabled_rule_group.py new file mode 100644 index 000000000000..085ae3d78c5c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_disabled_rule_group.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallDisabledRuleGroup(Model): + """Allows to disable rules within a rule group or an entire rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the rule group that will be + disabled. + :type rule_group_name: str + :param rules: The list of rules that will be disabled. If null, all rules + of the rule group will be disabled. + :type rules: list[int] + """ + + _validation = { + 'rule_group_name': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[int]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallDisabledRuleGroup, self).__init__(**kwargs) + self.rule_group_name = kwargs.get('rule_group_name', None) + self.rules = kwargs.get('rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_disabled_rule_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_disabled_rule_group_py3.py new file mode 100644 index 000000000000..44ac696b801c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_disabled_rule_group_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallDisabledRuleGroup(Model): + """Allows to disable rules within a rule group or an entire rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the rule group that will be + disabled. + :type rule_group_name: str + :param rules: The list of rules that will be disabled. If null, all rules + of the rule group will be disabled. + :type rules: list[int] + """ + + _validation = { + 'rule_group_name': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[int]'}, + } + + def __init__(self, *, rule_group_name: str, rules=None, **kwargs) -> None: + super(ApplicationGatewayFirewallDisabledRuleGroup, self).__init__(**kwargs) + self.rule_group_name = rule_group_name + self.rules = rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule.py new file mode 100644 index 000000000000..661b0d146e16 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallRule(Model): + """A web application firewall rule. + + All required parameters must be populated in order to send to Azure. + + :param rule_id: Required. The identifier of the web application firewall + rule. + :type rule_id: int + :param description: The description of the web application firewall rule. + :type description: str + """ + + _validation = { + 'rule_id': {'required': True}, + } + + _attribute_map = { + 'rule_id': {'key': 'ruleId', 'type': 'int'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRule, self).__init__(**kwargs) + self.rule_id = kwargs.get('rule_id', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_group.py new file mode 100644 index 000000000000..4eabca9c1d24 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_group.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallRuleGroup(Model): + """A web application firewall rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the web application firewall + rule group. + :type rule_group_name: str + :param description: The description of the web application firewall rule + group. + :type description: str + :param rules: Required. The rules of the web application firewall rule + group. + :type rules: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallRule] + """ + + _validation = { + 'rule_group_name': {'required': True}, + 'rules': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[ApplicationGatewayFirewallRule]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRuleGroup, self).__init__(**kwargs) + self.rule_group_name = kwargs.get('rule_group_name', None) + self.description = kwargs.get('description', None) + self.rules = kwargs.get('rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_group_py3.py new file mode 100644 index 000000000000..35815c859945 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_group_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallRuleGroup(Model): + """A web application firewall rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the web application firewall + rule group. + :type rule_group_name: str + :param description: The description of the web application firewall rule + group. + :type description: str + :param rules: Required. The rules of the web application firewall rule + group. + :type rules: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallRule] + """ + + _validation = { + 'rule_group_name': {'required': True}, + 'rules': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[ApplicationGatewayFirewallRule]'}, + } + + def __init__(self, *, rule_group_name: str, rules, description: str=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRuleGroup, self).__init__(**kwargs) + self.rule_group_name = rule_group_name + self.description = description + self.rules = rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_py3.py new file mode 100644 index 000000000000..e332fbd16853 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallRule(Model): + """A web application firewall rule. + + All required parameters must be populated in order to send to Azure. + + :param rule_id: Required. The identifier of the web application firewall + rule. + :type rule_id: int + :param description: The description of the web application firewall rule. + :type description: str + """ + + _validation = { + 'rule_id': {'required': True}, + } + + _attribute_map = { + 'rule_id': {'key': 'ruleId', 'type': 'int'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, rule_id: int, description: str=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRule, self).__init__(**kwargs) + self.rule_id = rule_id + self.description = description diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_set.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_set.py new file mode 100644 index 000000000000..410def4e673b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_set.py @@ -0,0 +1,73 @@ +# 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 .resource import Resource + + +class ApplicationGatewayFirewallRuleSet(Resource): + """A web application firewall rule set. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param provisioning_state: The provisioning state of the web application + firewall rule set. + :type provisioning_state: str + :param rule_set_type: Required. The type of the web application firewall + rule set. + :type rule_set_type: str + :param rule_set_version: Required. The version of the web application + firewall rule set type. + :type rule_set_version: str + :param rule_groups: Required. The rule groups of the web application + firewall rule set. + :type rule_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallRuleGroup] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'rule_groups': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'rule_set_type': {'key': 'properties.ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'properties.ruleSetVersion', 'type': 'str'}, + 'rule_groups': {'key': 'properties.ruleGroups', 'type': '[ApplicationGatewayFirewallRuleGroup]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRuleSet, self).__init__(**kwargs) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.rule_set_type = kwargs.get('rule_set_type', None) + self.rule_set_version = kwargs.get('rule_set_version', None) + self.rule_groups = kwargs.get('rule_groups', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_set_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_set_py3.py new file mode 100644 index 000000000000..f320e39f8410 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_firewall_rule_set_py3.py @@ -0,0 +1,73 @@ +# 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 .resource_py3 import Resource + + +class ApplicationGatewayFirewallRuleSet(Resource): + """A web application firewall rule set. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param provisioning_state: The provisioning state of the web application + firewall rule set. + :type provisioning_state: str + :param rule_set_type: Required. The type of the web application firewall + rule set. + :type rule_set_type: str + :param rule_set_version: Required. The version of the web application + firewall rule set type. + :type rule_set_version: str + :param rule_groups: Required. The rule groups of the web application + firewall rule set. + :type rule_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallRuleGroup] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'rule_groups': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'rule_set_type': {'key': 'properties.ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'properties.ruleSetVersion', 'type': 'str'}, + 'rule_groups': {'key': 'properties.ruleGroups', 'type': '[ApplicationGatewayFirewallRuleGroup]'}, + } + + def __init__(self, *, rule_set_type: str, rule_set_version: str, rule_groups, id: str=None, location: str=None, tags=None, provisioning_state: str=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRuleSet, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.provisioning_state = provisioning_state + self.rule_set_type = rule_set_type + self.rule_set_version = rule_set_version + self.rule_groups = rule_groups diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_ip_configuration.py new file mode 100644 index 000000000000..16ac139f42cf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_ip_configuration.py @@ -0,0 +1,66 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayFrontendIPConfiguration(SubResource): + """Frontend IP configuration of an application gateway. + + :param id: Resource ID. + :type id: str + :param private_ip_address: PrivateIPAddress of the network interface IP + Configuration. + :type private_ip_address: str + :param private_ip_allocation_method: PrivateIP allocation method. Possible + values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param subnet: Reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Provisioning state of the public IP resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the frontend IP configuration that is unique within + an Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFrontendIPConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_ip_configuration_py3.py new file mode 100644 index 000000000000..e496fbe0b71b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_ip_configuration_py3.py @@ -0,0 +1,66 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayFrontendIPConfiguration(SubResource): + """Frontend IP configuration of an application gateway. + + :param id: Resource ID. + :type id: str + :param private_ip_address: PrivateIPAddress of the network interface IP + Configuration. + :type private_ip_address: str + :param private_ip_allocation_method: PrivateIP allocation method. Possible + values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param subnet: Reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Provisioning state of the public IP resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the frontend IP configuration that is unique within + an Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayFrontendIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_port.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_port.py new file mode 100644 index 000000000000..b245c950f3ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_port.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ApplicationGatewayFrontendPort(SubResource): + """Frontend port of an application gateway. + + :param id: Resource ID. + :type id: str + :param port: Frontend port + :type port: int + :param provisioning_state: Provisioning state of the frontend port + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the frontend port that is unique within an + Application Gateway + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFrontendPort, self).__init__(**kwargs) + self.port = kwargs.get('port', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_port_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_port_py3.py new file mode 100644 index 000000000000..a6bd3f7a3606 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_frontend_port_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ApplicationGatewayFrontendPort(SubResource): + """Frontend port of an application gateway. + + :param id: Resource ID. + :type id: str + :param port: Frontend port + :type port: int + :param provisioning_state: Provisioning state of the frontend port + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the frontend port that is unique within an + Application Gateway + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, port: int=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayFrontendPort, self).__init__(id=id, **kwargs) + self.port = port + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_http_listener.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_http_listener.py new file mode 100644 index 000000000000..a69b5d6fa8f8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_http_listener.py @@ -0,0 +1,76 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayHttpListener(SubResource): + """Http listener of an application gateway. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: Frontend IP configuration resource of an + application gateway. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param frontend_port: Frontend port resource of an application gateway. + :type frontend_port: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param protocol: Protocol of the HTTP listener. Possible values are 'Http' + and 'Https'. Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProtocol + :param host_name: Host name of HTTP listener. + :type host_name: str + :param ssl_certificate: SSL certificate resource of an application + gateway. + :type ssl_certificate: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param require_server_name_indication: Applicable only if protocol is + https. Enables SNI for multi-hosting. + :type require_server_name_indication: bool + :param provisioning_state: Provisioning state of the HTTP listener + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the HTTP listener that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'ssl_certificate': {'key': 'properties.sslCertificate', 'type': 'SubResource'}, + 'require_server_name_indication': {'key': 'properties.requireServerNameIndication', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayHttpListener, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.protocol = kwargs.get('protocol', None) + self.host_name = kwargs.get('host_name', None) + self.ssl_certificate = kwargs.get('ssl_certificate', None) + self.require_server_name_indication = kwargs.get('require_server_name_indication', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_http_listener_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_http_listener_py3.py new file mode 100644 index 000000000000..5fe4cf784a2d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_http_listener_py3.py @@ -0,0 +1,76 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayHttpListener(SubResource): + """Http listener of an application gateway. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: Frontend IP configuration resource of an + application gateway. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param frontend_port: Frontend port resource of an application gateway. + :type frontend_port: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param protocol: Protocol of the HTTP listener. Possible values are 'Http' + and 'Https'. Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProtocol + :param host_name: Host name of HTTP listener. + :type host_name: str + :param ssl_certificate: SSL certificate resource of an application + gateway. + :type ssl_certificate: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param require_server_name_indication: Applicable only if protocol is + https. Enables SNI for multi-hosting. + :type require_server_name_indication: bool + :param provisioning_state: Provisioning state of the HTTP listener + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the HTTP listener that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'ssl_certificate': {'key': 'properties.sslCertificate', 'type': 'SubResource'}, + 'require_server_name_indication': {'key': 'properties.requireServerNameIndication', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, frontend_ip_configuration=None, frontend_port=None, protocol=None, host_name: str=None, ssl_certificate=None, require_server_name_indication: bool=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayHttpListener, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.frontend_port = frontend_port + self.protocol = protocol + self.host_name = host_name + self.ssl_certificate = ssl_certificate + self.require_server_name_indication = require_server_name_indication + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ip_configuration.py new file mode 100644 index 000000000000..9847b6e906bc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ip_configuration.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ApplicationGatewayIPConfiguration(SubResource): + """IP configuration of an application gateway. Currently 1 public and 1 + private IP configuration is allowed. + + :param id: Resource ID. + :type id: str + :param subnet: Reference of the subnet resource. A subnet from where + application gateway gets its private address. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Provisioning state of the application gateway + subnet resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the IP configuration that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayIPConfiguration, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ip_configuration_py3.py new file mode 100644 index 000000000000..f4a3e8ac9040 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ip_configuration_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ApplicationGatewayIPConfiguration(SubResource): + """IP configuration of an application gateway. Currently 1 public and 1 + private IP configuration is allowed. + + :param id: Resource ID. + :type id: str + :param subnet: Reference of the subnet resource. A subnet from where + application gateway gets its private address. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Provisioning state of the application gateway + subnet resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the IP configuration that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, subnet=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayIPConfiguration, self).__init__(id=id, **kwargs) + self.subnet = subnet + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_paged.py new file mode 100644 index 000000000000..0b7788e3a9d0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ApplicationGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_path_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_path_rule.py new file mode 100644 index 000000000000..71a9577c6609 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_path_rule.py @@ -0,0 +1,68 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayPathRule(SubResource): + """Path rule of URL path map of an application gateway. + + :param id: Resource ID. + :type id: str + :param paths: Path rules of URL path map. + :type paths: list[str] + :param backend_address_pool: Backend address pool resource of URL path map + path rule. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param backend_http_settings: Backend http settings resource of URL path + map path rule. + :type backend_http_settings: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of URL path + map path rule. + :type redirect_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Path rule of URL path map resource. Possible + values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the path rule that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'paths': {'key': 'properties.paths', 'type': '[str]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayPathRule, self).__init__(**kwargs) + self.paths = kwargs.get('paths', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.redirect_configuration = kwargs.get('redirect_configuration', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_path_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_path_rule_py3.py new file mode 100644 index 000000000000..65db30f4e4a3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_path_rule_py3.py @@ -0,0 +1,68 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayPathRule(SubResource): + """Path rule of URL path map of an application gateway. + + :param id: Resource ID. + :type id: str + :param paths: Path rules of URL path map. + :type paths: list[str] + :param backend_address_pool: Backend address pool resource of URL path map + path rule. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param backend_http_settings: Backend http settings resource of URL path + map path rule. + :type backend_http_settings: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of URL path + map path rule. + :type redirect_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Path rule of URL path map resource. Possible + values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the path rule that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'paths': {'key': 'properties.paths', 'type': '[str]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, paths=None, backend_address_pool=None, backend_http_settings=None, redirect_configuration=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayPathRule, self).__init__(id=id, **kwargs) + self.paths = paths + self.backend_address_pool = backend_address_pool + self.backend_http_settings = backend_http_settings + self.redirect_configuration = redirect_configuration + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe.py new file mode 100644 index 000000000000..3a80b53999a2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe.py @@ -0,0 +1,94 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayProbe(SubResource): + """Probe of the application gateway. + + :param id: Resource ID. + :type id: str + :param protocol: The protocol used for the probe. Possible values are + 'Http' and 'Https'. Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProtocol + :param host: Host name to send the probe to. + :type host: str + :param path: Relative path of probe. Valid path starts from '/'. Probe is + sent to ://: + :type path: str + :param interval: The probing interval in seconds. This is the time + interval between two consecutive probes. Acceptable values are from 1 + second to 86400 seconds. + :type interval: int + :param timeout: the probe timeout in seconds. Probe marked as failed if + valid response is not received with this timeout period. Acceptable values + are from 1 second to 86400 seconds. + :type timeout: int + :param unhealthy_threshold: The probe retry count. Backend server is + marked down after consecutive probe failure count reaches + UnhealthyThreshold. Acceptable values are from 1 second to 20. + :type unhealthy_threshold: int + :param pick_host_name_from_backend_http_settings: Whether the host header + should be picked from the backend http settings. Default value is false. + :type pick_host_name_from_backend_http_settings: bool + :param min_servers: Minimum number of servers that are always marked + healthy. Default value is 0. + :type min_servers: int + :param match: Criterion for classifying a healthy probe response. + :type match: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProbeHealthResponseMatch + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the probe that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host': {'key': 'properties.host', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'interval': {'key': 'properties.interval', 'type': 'int'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'unhealthy_threshold': {'key': 'properties.unhealthyThreshold', 'type': 'int'}, + 'pick_host_name_from_backend_http_settings': {'key': 'properties.pickHostNameFromBackendHttpSettings', 'type': 'bool'}, + 'min_servers': {'key': 'properties.minServers', 'type': 'int'}, + 'match': {'key': 'properties.match', 'type': 'ApplicationGatewayProbeHealthResponseMatch'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayProbe, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', None) + self.host = kwargs.get('host', None) + self.path = kwargs.get('path', None) + self.interval = kwargs.get('interval', None) + self.timeout = kwargs.get('timeout', None) + self.unhealthy_threshold = kwargs.get('unhealthy_threshold', None) + self.pick_host_name_from_backend_http_settings = kwargs.get('pick_host_name_from_backend_http_settings', None) + self.min_servers = kwargs.get('min_servers', None) + self.match = kwargs.get('match', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_health_response_match.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_health_response_match.py new file mode 100644 index 000000000000..b439b9677f8b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_health_response_match.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayProbeHealthResponseMatch(Model): + """Application gateway probe health response match. + + :param body: Body that must be contained in the health response. Default + value is empty. + :type body: str + :param status_codes: Allowed ranges of healthy status codes. Default range + of healthy status codes is 200-399. + :type status_codes: list[str] + """ + + _attribute_map = { + 'body': {'key': 'body', 'type': 'str'}, + 'status_codes': {'key': 'statusCodes', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayProbeHealthResponseMatch, self).__init__(**kwargs) + self.body = kwargs.get('body', None) + self.status_codes = kwargs.get('status_codes', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_health_response_match_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_health_response_match_py3.py new file mode 100644 index 000000000000..6ed2ee8c04ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_health_response_match_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayProbeHealthResponseMatch(Model): + """Application gateway probe health response match. + + :param body: Body that must be contained in the health response. Default + value is empty. + :type body: str + :param status_codes: Allowed ranges of healthy status codes. Default range + of healthy status codes is 200-399. + :type status_codes: list[str] + """ + + _attribute_map = { + 'body': {'key': 'body', 'type': 'str'}, + 'status_codes': {'key': 'statusCodes', 'type': '[str]'}, + } + + def __init__(self, *, body: str=None, status_codes=None, **kwargs) -> None: + super(ApplicationGatewayProbeHealthResponseMatch, self).__init__(**kwargs) + self.body = body + self.status_codes = status_codes diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_py3.py new file mode 100644 index 000000000000..119f2549ea19 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_probe_py3.py @@ -0,0 +1,94 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayProbe(SubResource): + """Probe of the application gateway. + + :param id: Resource ID. + :type id: str + :param protocol: The protocol used for the probe. Possible values are + 'Http' and 'Https'. Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProtocol + :param host: Host name to send the probe to. + :type host: str + :param path: Relative path of probe. Valid path starts from '/'. Probe is + sent to ://: + :type path: str + :param interval: The probing interval in seconds. This is the time + interval between two consecutive probes. Acceptable values are from 1 + second to 86400 seconds. + :type interval: int + :param timeout: the probe timeout in seconds. Probe marked as failed if + valid response is not received with this timeout period. Acceptable values + are from 1 second to 86400 seconds. + :type timeout: int + :param unhealthy_threshold: The probe retry count. Backend server is + marked down after consecutive probe failure count reaches + UnhealthyThreshold. Acceptable values are from 1 second to 20. + :type unhealthy_threshold: int + :param pick_host_name_from_backend_http_settings: Whether the host header + should be picked from the backend http settings. Default value is false. + :type pick_host_name_from_backend_http_settings: bool + :param min_servers: Minimum number of servers that are always marked + healthy. Default value is 0. + :type min_servers: int + :param match: Criterion for classifying a healthy probe response. + :type match: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProbeHealthResponseMatch + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the probe that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host': {'key': 'properties.host', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'interval': {'key': 'properties.interval', 'type': 'int'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'unhealthy_threshold': {'key': 'properties.unhealthyThreshold', 'type': 'int'}, + 'pick_host_name_from_backend_http_settings': {'key': 'properties.pickHostNameFromBackendHttpSettings', 'type': 'bool'}, + 'min_servers': {'key': 'properties.minServers', 'type': 'int'}, + 'match': {'key': 'properties.match', 'type': 'ApplicationGatewayProbeHealthResponseMatch'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, protocol=None, host: str=None, path: str=None, interval: int=None, timeout: int=None, unhealthy_threshold: int=None, pick_host_name_from_backend_http_settings: bool=None, min_servers: int=None, match=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayProbe, self).__init__(id=id, **kwargs) + self.protocol = protocol + self.host = host + self.path = path + self.interval = interval + self.timeout = timeout + self.unhealthy_threshold = unhealthy_threshold + self.pick_host_name_from_backend_http_settings = pick_host_name_from_backend_http_settings + self.min_servers = min_servers + self.match = match + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_py3.py new file mode 100644 index 000000000000..963f62e61ef4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_py3.py @@ -0,0 +1,173 @@ +# 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 .resource_py3 import Resource + + +class ApplicationGateway(Resource): + """Application gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: SKU of the application gateway resource. + :type sku: ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySku + :param ssl_policy: SSL policy of the application gateway resource. + :type ssl_policy: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPolicy + :ivar operational_state: Operational state of the application gateway + resource. Possible values include: 'Stopped', 'Starting', 'Running', + 'Stopping' + :vartype operational_state: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayOperationalState + :param gateway_ip_configurations: Subnets of application the gateway + resource. + :type gateway_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayIPConfiguration] + :param authentication_certificates: Authentication certificates of the + application gateway resource. + :type authentication_certificates: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayAuthenticationCertificate] + :param ssl_certificates: SSL certificates of the application gateway + resource. + :type ssl_certificates: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslCertificate] + :param frontend_ip_configurations: Frontend IP addresses of the + application gateway resource. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFrontendIPConfiguration] + :param frontend_ports: Frontend ports of the application gateway resource. + :type frontend_ports: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFrontendPort] + :param probes: Probes of the application gateway resource. + :type probes: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayProbe] + :param backend_address_pools: Backend address pool of the application + gateway resource. + :type backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendAddressPool] + :param backend_http_settings_collection: Backend http settings of the + application gateway resource. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHttpSettings] + :param http_listeners: Http listeners of the application gateway resource. + :type http_listeners: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayHttpListener] + :param url_path_maps: URL path map of the application gateway resource. + :type url_path_maps: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayUrlPathMap] + :param request_routing_rules: Request routing rules of the application + gateway resource. + :type request_routing_rules: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayRequestRoutingRule] + :param redirect_configurations: Redirect configurations of the application + gateway resource. + :type redirect_configurations: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayRedirectConfiguration] + :param web_application_firewall_configuration: Web application firewall + configuration. + :type web_application_firewall_configuration: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayWebApplicationFirewallConfiguration + :param enable_http2: Whether HTTP2 is enabled on the application gateway + resource. + :type enable_http2: bool + :param enable_fips: Whether FIPS is enabled on the application gateway + resource. + :type enable_fips: bool + :param autoscale_configuration: Autoscale Configuration. + :type autoscale_configuration: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayAutoscaleConfiguration + :param resource_guid: Resource GUID property of the application gateway + resource. + :type resource_guid: str + :param provisioning_state: Provisioning state of the application gateway + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting where the resource + needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'operational_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'properties.sku', 'type': 'ApplicationGatewaySku'}, + 'ssl_policy': {'key': 'properties.sslPolicy', 'type': 'ApplicationGatewaySslPolicy'}, + 'operational_state': {'key': 'properties.operationalState', 'type': 'str'}, + 'gateway_ip_configurations': {'key': 'properties.gatewayIPConfigurations', 'type': '[ApplicationGatewayIPConfiguration]'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[ApplicationGatewayAuthenticationCertificate]'}, + 'ssl_certificates': {'key': 'properties.sslCertificates', 'type': '[ApplicationGatewaySslCertificate]'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[ApplicationGatewayFrontendIPConfiguration]'}, + 'frontend_ports': {'key': 'properties.frontendPorts', 'type': '[ApplicationGatewayFrontendPort]'}, + 'probes': {'key': 'properties.probes', 'type': '[ApplicationGatewayProbe]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'backend_http_settings_collection': {'key': 'properties.backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHttpSettings]'}, + 'http_listeners': {'key': 'properties.httpListeners', 'type': '[ApplicationGatewayHttpListener]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[ApplicationGatewayUrlPathMap]'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[ApplicationGatewayRequestRoutingRule]'}, + 'redirect_configurations': {'key': 'properties.redirectConfigurations', 'type': '[ApplicationGatewayRedirectConfiguration]'}, + 'web_application_firewall_configuration': {'key': 'properties.webApplicationFirewallConfiguration', 'type': 'ApplicationGatewayWebApplicationFirewallConfiguration'}, + 'enable_http2': {'key': 'properties.enableHttp2', 'type': 'bool'}, + 'enable_fips': {'key': 'properties.enableFips', 'type': 'bool'}, + 'autoscale_configuration': {'key': 'properties.autoscaleConfiguration', 'type': 'ApplicationGatewayAutoscaleConfiguration'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, ssl_policy=None, gateway_ip_configurations=None, authentication_certificates=None, ssl_certificates=None, frontend_ip_configurations=None, frontend_ports=None, probes=None, backend_address_pools=None, backend_http_settings_collection=None, http_listeners=None, url_path_maps=None, request_routing_rules=None, redirect_configurations=None, web_application_firewall_configuration=None, enable_http2: bool=None, enable_fips: bool=None, autoscale_configuration=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, zones=None, **kwargs) -> None: + super(ApplicationGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.ssl_policy = ssl_policy + self.operational_state = None + self.gateway_ip_configurations = gateway_ip_configurations + self.authentication_certificates = authentication_certificates + self.ssl_certificates = ssl_certificates + self.frontend_ip_configurations = frontend_ip_configurations + self.frontend_ports = frontend_ports + self.probes = probes + self.backend_address_pools = backend_address_pools + self.backend_http_settings_collection = backend_http_settings_collection + self.http_listeners = http_listeners + self.url_path_maps = url_path_maps + self.request_routing_rules = request_routing_rules + self.redirect_configurations = redirect_configurations + self.web_application_firewall_configuration = web_application_firewall_configuration + self.enable_http2 = enable_http2 + self.enable_fips = enable_fips + self.autoscale_configuration = autoscale_configuration + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag + self.zones = zones diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_redirect_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_redirect_configuration.py new file mode 100644 index 000000000000..75d442db2265 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_redirect_configuration.py @@ -0,0 +1,81 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayRedirectConfiguration(SubResource): + """Redirect configuration of an application gateway. + + :param id: Resource ID. + :type id: str + :param redirect_type: Supported http redirection types - Permanent, + Temporary, Found, SeeOther. Possible values include: 'Permanent', 'Found', + 'SeeOther', 'Temporary' + :type redirect_type: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayRedirectType + :param target_listener: Reference to a listener to redirect the request + to. + :type target_listener: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param target_url: Url to redirect the request to. + :type target_url: str + :param include_path: Include path in the redirected url. + :type include_path: bool + :param include_query_string: Include query string in the redirected url. + :type include_query_string: bool + :param request_routing_rules: Request routing specifying redirect + configuration. + :type request_routing_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param url_path_maps: Url path maps specifying default redirect + configuration. + :type url_path_maps: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param path_rules: Path rules specifying redirect configuration. + :type path_rules: list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param name: Name of the redirect configuration that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'redirect_type': {'key': 'properties.redirectType', 'type': 'str'}, + 'target_listener': {'key': 'properties.targetListener', 'type': 'SubResource'}, + 'target_url': {'key': 'properties.targetUrl', 'type': 'str'}, + 'include_path': {'key': 'properties.includePath', 'type': 'bool'}, + 'include_query_string': {'key': 'properties.includeQueryString', 'type': 'bool'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[SubResource]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[SubResource]'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[SubResource]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRedirectConfiguration, self).__init__(**kwargs) + self.redirect_type = kwargs.get('redirect_type', None) + self.target_listener = kwargs.get('target_listener', None) + self.target_url = kwargs.get('target_url', None) + self.include_path = kwargs.get('include_path', None) + self.include_query_string = kwargs.get('include_query_string', None) + self.request_routing_rules = kwargs.get('request_routing_rules', None) + self.url_path_maps = kwargs.get('url_path_maps', None) + self.path_rules = kwargs.get('path_rules', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_redirect_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_redirect_configuration_py3.py new file mode 100644 index 000000000000..f8c6f52a0200 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_redirect_configuration_py3.py @@ -0,0 +1,81 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayRedirectConfiguration(SubResource): + """Redirect configuration of an application gateway. + + :param id: Resource ID. + :type id: str + :param redirect_type: Supported http redirection types - Permanent, + Temporary, Found, SeeOther. Possible values include: 'Permanent', 'Found', + 'SeeOther', 'Temporary' + :type redirect_type: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayRedirectType + :param target_listener: Reference to a listener to redirect the request + to. + :type target_listener: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param target_url: Url to redirect the request to. + :type target_url: str + :param include_path: Include path in the redirected url. + :type include_path: bool + :param include_query_string: Include query string in the redirected url. + :type include_query_string: bool + :param request_routing_rules: Request routing specifying redirect + configuration. + :type request_routing_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param url_path_maps: Url path maps specifying default redirect + configuration. + :type url_path_maps: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param path_rules: Path rules specifying redirect configuration. + :type path_rules: list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param name: Name of the redirect configuration that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'redirect_type': {'key': 'properties.redirectType', 'type': 'str'}, + 'target_listener': {'key': 'properties.targetListener', 'type': 'SubResource'}, + 'target_url': {'key': 'properties.targetUrl', 'type': 'str'}, + 'include_path': {'key': 'properties.includePath', 'type': 'bool'}, + 'include_query_string': {'key': 'properties.includeQueryString', 'type': 'bool'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[SubResource]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[SubResource]'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[SubResource]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, redirect_type=None, target_listener=None, target_url: str=None, include_path: bool=None, include_query_string: bool=None, request_routing_rules=None, url_path_maps=None, path_rules=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayRedirectConfiguration, self).__init__(id=id, **kwargs) + self.redirect_type = redirect_type + self.target_listener = target_listener + self.target_url = target_url + self.include_path = include_path + self.include_query_string = include_query_string + self.request_routing_rules = request_routing_rules + self.url_path_maps = url_path_maps + self.path_rules = path_rules + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_request_routing_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_request_routing_rule.py new file mode 100644 index 000000000000..0d4a982c2e9b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_request_routing_rule.py @@ -0,0 +1,78 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayRequestRoutingRule(SubResource): + """Request routing rule of an application gateway. + + :param id: Resource ID. + :type id: str + :param rule_type: Rule type. Possible values include: 'Basic', + 'PathBasedRouting' + :type rule_type: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayRequestRoutingRuleType + :param backend_address_pool: Backend address pool resource of the + application gateway. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param backend_http_settings: Backend http settings resource of the + application gateway. + :type backend_http_settings: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param http_listener: Http listener resource of the application gateway. + :type http_listener: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param url_path_map: URL path map resource of the application gateway. + :type url_path_map: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of the + application gateway. + :type redirect_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Provisioning state of the request routing rule + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the request routing rule that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rule_type': {'key': 'properties.ruleType', 'type': 'str'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'http_listener': {'key': 'properties.httpListener', 'type': 'SubResource'}, + 'url_path_map': {'key': 'properties.urlPathMap', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRequestRoutingRule, self).__init__(**kwargs) + self.rule_type = kwargs.get('rule_type', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.http_listener = kwargs.get('http_listener', None) + self.url_path_map = kwargs.get('url_path_map', None) + self.redirect_configuration = kwargs.get('redirect_configuration', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_request_routing_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_request_routing_rule_py3.py new file mode 100644 index 000000000000..b6172e0f49ce --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_request_routing_rule_py3.py @@ -0,0 +1,78 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayRequestRoutingRule(SubResource): + """Request routing rule of an application gateway. + + :param id: Resource ID. + :type id: str + :param rule_type: Rule type. Possible values include: 'Basic', + 'PathBasedRouting' + :type rule_type: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayRequestRoutingRuleType + :param backend_address_pool: Backend address pool resource of the + application gateway. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param backend_http_settings: Backend http settings resource of the + application gateway. + :type backend_http_settings: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param http_listener: Http listener resource of the application gateway. + :type http_listener: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param url_path_map: URL path map resource of the application gateway. + :type url_path_map: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of the + application gateway. + :type redirect_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Provisioning state of the request routing rule + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the request routing rule that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rule_type': {'key': 'properties.ruleType', 'type': 'str'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'http_listener': {'key': 'properties.httpListener', 'type': 'SubResource'}, + 'url_path_map': {'key': 'properties.urlPathMap', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, rule_type=None, backend_address_pool=None, backend_http_settings=None, http_listener=None, url_path_map=None, redirect_configuration=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayRequestRoutingRule, self).__init__(id=id, **kwargs) + self.rule_type = rule_type + self.backend_address_pool = backend_address_pool + self.backend_http_settings = backend_http_settings + self.http_listener = http_listener + self.url_path_map = url_path_map + self.redirect_configuration = redirect_configuration + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_sku.py new file mode 100644 index 000000000000..45e58496169c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_sku.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewaySku(Model): + """SKU of an application gateway. + + :param name: Name of an application gateway SKU. Possible values include: + 'Standard_Small', 'Standard_Medium', 'Standard_Large', 'WAF_Medium', + 'WAF_Large', 'Standard_v2', 'WAF_v2' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySkuName + :param tier: Tier of an application gateway. Possible values include: + 'Standard', 'WAF', 'Standard_v2', 'WAF_v2' + :type tier: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayTier + :param capacity: Capacity (instance count) of an application gateway. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_sku_py3.py new file mode 100644 index 000000000000..45b2bbe277af --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_sku_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewaySku(Model): + """SKU of an application gateway. + + :param name: Name of an application gateway SKU. Possible values include: + 'Standard_Small', 'Standard_Medium', 'Standard_Large', 'WAF_Medium', + 'WAF_Large', 'Standard_v2', 'WAF_v2' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySkuName + :param tier: Tier of an application gateway. Possible values include: + 'Standard', 'WAF', 'Standard_v2', 'WAF_v2' + :type tier: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayTier + :param capacity: Capacity (instance count) of an application gateway. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, *, name=None, tier=None, capacity: int=None, **kwargs) -> None: + super(ApplicationGatewaySku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_certificate.py new file mode 100644 index 000000000000..20c9614fe87e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_certificate.py @@ -0,0 +1,61 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewaySslCertificate(SubResource): + """SSL certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Base-64 encoded pfx certificate. Only applicable in PUT + Request. + :type data: str + :param password: Password for the pfx file specified in data. Only + applicable in PUT request. + :type password: str + :param public_cert_data: Base-64 encoded Public cert data corresponding to + pfx specified in data. Only applicable in GET request. + :type public_cert_data: str + :param provisioning_state: Provisioning state of the SSL certificate + resource Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the SSL certificate that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslCertificate, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.password = kwargs.get('password', None) + self.public_cert_data = kwargs.get('public_cert_data', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_certificate_py3.py new file mode 100644 index 000000000000..4ed572592e87 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_certificate_py3.py @@ -0,0 +1,61 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewaySslCertificate(SubResource): + """SSL certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Base-64 encoded pfx certificate. Only applicable in PUT + Request. + :type data: str + :param password: Password for the pfx file specified in data. Only + applicable in PUT request. + :type password: str + :param public_cert_data: Base-64 encoded Public cert data corresponding to + pfx specified in data. Only applicable in GET request. + :type public_cert_data: str + :param provisioning_state: Provisioning state of the SSL certificate + resource Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the SSL certificate that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, data: str=None, password: str=None, public_cert_data: str=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewaySslCertificate, self).__init__(id=id, **kwargs) + self.data = data + self.password = password + self.public_cert_data = public_cert_data + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_policy.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_policy.py new file mode 100644 index 000000000000..c6f872b4d1ea --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_policy.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewaySslPolicy(Model): + """Application Gateway Ssl policy. + + :param disabled_ssl_protocols: Ssl protocols to be disabled on application + gateway. + :type disabled_ssl_protocols: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslProtocol] + :param policy_type: Type of Ssl Policy. Possible values include: + 'Predefined', 'Custom' + :type policy_type: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPolicyType + :param policy_name: Name of Ssl predefined policy. Possible values + include: 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type policy_name: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPolicyName + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order to application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'disabled_ssl_protocols': {'key': 'disabledSslProtocols', 'type': '[str]'}, + 'policy_type': {'key': 'policyType', 'type': 'str'}, + 'policy_name': {'key': 'policyName', 'type': 'str'}, + 'cipher_suites': {'key': 'cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslPolicy, self).__init__(**kwargs) + self.disabled_ssl_protocols = kwargs.get('disabled_ssl_protocols', None) + self.policy_type = kwargs.get('policy_type', None) + self.policy_name = kwargs.get('policy_name', None) + self.cipher_suites = kwargs.get('cipher_suites', None) + self.min_protocol_version = kwargs.get('min_protocol_version', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_policy_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_policy_py3.py new file mode 100644 index 000000000000..316c7a67a1b0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_policy_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewaySslPolicy(Model): + """Application Gateway Ssl policy. + + :param disabled_ssl_protocols: Ssl protocols to be disabled on application + gateway. + :type disabled_ssl_protocols: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslProtocol] + :param policy_type: Type of Ssl Policy. Possible values include: + 'Predefined', 'Custom' + :type policy_type: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPolicyType + :param policy_name: Name of Ssl predefined policy. Possible values + include: 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type policy_name: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPolicyName + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order to application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'disabled_ssl_protocols': {'key': 'disabledSslProtocols', 'type': '[str]'}, + 'policy_type': {'key': 'policyType', 'type': 'str'}, + 'policy_name': {'key': 'policyName', 'type': 'str'}, + 'cipher_suites': {'key': 'cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, *, disabled_ssl_protocols=None, policy_type=None, policy_name=None, cipher_suites=None, min_protocol_version=None, **kwargs) -> None: + super(ApplicationGatewaySslPolicy, self).__init__(**kwargs) + self.disabled_ssl_protocols = disabled_ssl_protocols + self.policy_type = policy_type + self.policy_name = policy_name + self.cipher_suites = cipher_suites + self.min_protocol_version = min_protocol_version diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy.py new file mode 100644 index 000000000000..cf47ec02bfa3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy.py @@ -0,0 +1,44 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewaySslPredefinedPolicy(SubResource): + """An Ssl predefined policy. + + :param id: Resource ID. + :type id: str + :param name: Name of the Ssl predefined policy. + :type name: str + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order for application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'cipher_suites': {'key': 'properties.cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'properties.minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslPredefinedPolicy, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.cipher_suites = kwargs.get('cipher_suites', None) + self.min_protocol_version = kwargs.get('min_protocol_version', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy_paged.py new file mode 100644 index 000000000000..7e307859654b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ApplicationGatewaySslPredefinedPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationGatewaySslPredefinedPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationGatewaySslPredefinedPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationGatewaySslPredefinedPolicyPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy_py3.py new file mode 100644 index 000000000000..3f9abec1d9bd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_ssl_predefined_policy_py3.py @@ -0,0 +1,44 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewaySslPredefinedPolicy(SubResource): + """An Ssl predefined policy. + + :param id: Resource ID. + :type id: str + :param name: Name of the Ssl predefined policy. + :type name: str + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order for application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'cipher_suites': {'key': 'properties.cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'properties.minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, cipher_suites=None, min_protocol_version=None, **kwargs) -> None: + super(ApplicationGatewaySslPredefinedPolicy, self).__init__(id=id, **kwargs) + self.name = name + self.cipher_suites = cipher_suites + self.min_protocol_version = min_protocol_version diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_url_path_map.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_url_path_map.py new file mode 100644 index 000000000000..2e5d950040e2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_url_path_map.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ApplicationGatewayUrlPathMap(SubResource): + """UrlPathMaps give a url path to the backend mapping information for + PathBasedRouting. + + :param id: Resource ID. + :type id: str + :param default_backend_address_pool: Default backend address pool resource + of URL path map. + :type default_backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param default_backend_http_settings: Default backend http settings + resource of URL path map. + :type default_backend_http_settings: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param default_redirect_configuration: Default redirect configuration + resource of URL path map. + :type default_redirect_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param path_rules: Path rule of URL path map resource. + :type path_rules: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayPathRule] + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the URL path map that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'default_backend_address_pool': {'key': 'properties.defaultBackendAddressPool', 'type': 'SubResource'}, + 'default_backend_http_settings': {'key': 'properties.defaultBackendHttpSettings', 'type': 'SubResource'}, + 'default_redirect_configuration': {'key': 'properties.defaultRedirectConfiguration', 'type': 'SubResource'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[ApplicationGatewayPathRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayUrlPathMap, self).__init__(**kwargs) + self.default_backend_address_pool = kwargs.get('default_backend_address_pool', None) + self.default_backend_http_settings = kwargs.get('default_backend_http_settings', None) + self.default_redirect_configuration = kwargs.get('default_redirect_configuration', None) + self.path_rules = kwargs.get('path_rules', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_url_path_map_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_url_path_map_py3.py new file mode 100644 index 000000000000..52301dd841b9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_url_path_map_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ApplicationGatewayUrlPathMap(SubResource): + """UrlPathMaps give a url path to the backend mapping information for + PathBasedRouting. + + :param id: Resource ID. + :type id: str + :param default_backend_address_pool: Default backend address pool resource + of URL path map. + :type default_backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param default_backend_http_settings: Default backend http settings + resource of URL path map. + :type default_backend_http_settings: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param default_redirect_configuration: Default redirect configuration + resource of URL path map. + :type default_redirect_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param path_rules: Path rule of URL path map resource. + :type path_rules: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayPathRule] + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the URL path map that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'default_backend_address_pool': {'key': 'properties.defaultBackendAddressPool', 'type': 'SubResource'}, + 'default_backend_http_settings': {'key': 'properties.defaultBackendHttpSettings', 'type': 'SubResource'}, + 'default_redirect_configuration': {'key': 'properties.defaultRedirectConfiguration', 'type': 'SubResource'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[ApplicationGatewayPathRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, default_backend_address_pool=None, default_backend_http_settings=None, default_redirect_configuration=None, path_rules=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayUrlPathMap, self).__init__(id=id, **kwargs) + self.default_backend_address_pool = default_backend_address_pool + self.default_backend_http_settings = default_backend_http_settings + self.default_redirect_configuration = default_redirect_configuration + self.path_rules = path_rules + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_web_application_firewall_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_web_application_firewall_configuration.py new file mode 100644 index 000000000000..ef36239b28d9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_web_application_firewall_configuration.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayWebApplicationFirewallConfiguration(Model): + """Application gateway web application firewall configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the web application firewall is enabled + or not. + :type enabled: bool + :param firewall_mode: Required. Web application firewall mode. Possible + values include: 'Detection', 'Prevention' + :type firewall_mode: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallMode + :param rule_set_type: Required. The type of the web application firewall + rule set. Possible values are: 'OWASP'. + :type rule_set_type: str + :param rule_set_version: Required. The version of the rule set type. + :type rule_set_version: str + :param disabled_rule_groups: The disabled rule groups. + :type disabled_rule_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallDisabledRuleGroup] + :param request_body_check: Whether allow WAF to check request Body. + :type request_body_check: bool + :param max_request_body_size: Maxium request body size for WAF. + :type max_request_body_size: int + """ + + _validation = { + 'enabled': {'required': True}, + 'firewall_mode': {'required': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'max_request_body_size': {'maximum': 128, 'minimum': 8}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'firewall_mode': {'key': 'firewallMode', 'type': 'str'}, + 'rule_set_type': {'key': 'ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'ruleSetVersion', 'type': 'str'}, + 'disabled_rule_groups': {'key': 'disabledRuleGroups', 'type': '[ApplicationGatewayFirewallDisabledRuleGroup]'}, + 'request_body_check': {'key': 'requestBodyCheck', 'type': 'bool'}, + 'max_request_body_size': {'key': 'maxRequestBodySize', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayWebApplicationFirewallConfiguration, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.firewall_mode = kwargs.get('firewall_mode', None) + self.rule_set_type = kwargs.get('rule_set_type', None) + self.rule_set_version = kwargs.get('rule_set_version', None) + self.disabled_rule_groups = kwargs.get('disabled_rule_groups', None) + self.request_body_check = kwargs.get('request_body_check', None) + self.max_request_body_size = kwargs.get('max_request_body_size', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_web_application_firewall_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_web_application_firewall_configuration_py3.py new file mode 100644 index 000000000000..84ad27f1d846 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_gateway_web_application_firewall_configuration_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayWebApplicationFirewallConfiguration(Model): + """Application gateway web application firewall configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the web application firewall is enabled + or not. + :type enabled: bool + :param firewall_mode: Required. Web application firewall mode. Possible + values include: 'Detection', 'Prevention' + :type firewall_mode: str or + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallMode + :param rule_set_type: Required. The type of the web application firewall + rule set. Possible values are: 'OWASP'. + :type rule_set_type: str + :param rule_set_version: Required. The version of the rule set type. + :type rule_set_version: str + :param disabled_rule_groups: The disabled rule groups. + :type disabled_rule_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayFirewallDisabledRuleGroup] + :param request_body_check: Whether allow WAF to check request Body. + :type request_body_check: bool + :param max_request_body_size: Maxium request body size for WAF. + :type max_request_body_size: int + """ + + _validation = { + 'enabled': {'required': True}, + 'firewall_mode': {'required': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'max_request_body_size': {'maximum': 128, 'minimum': 8}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'firewall_mode': {'key': 'firewallMode', 'type': 'str'}, + 'rule_set_type': {'key': 'ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'ruleSetVersion', 'type': 'str'}, + 'disabled_rule_groups': {'key': 'disabledRuleGroups', 'type': '[ApplicationGatewayFirewallDisabledRuleGroup]'}, + 'request_body_check': {'key': 'requestBodyCheck', 'type': 'bool'}, + 'max_request_body_size': {'key': 'maxRequestBodySize', 'type': 'int'}, + } + + def __init__(self, *, enabled: bool, firewall_mode, rule_set_type: str, rule_set_version: str, disabled_rule_groups=None, request_body_check: bool=None, max_request_body_size: int=None, **kwargs) -> None: + super(ApplicationGatewayWebApplicationFirewallConfiguration, self).__init__(**kwargs) + self.enabled = enabled + self.firewall_mode = firewall_mode + self.rule_set_type = rule_set_type + self.rule_set_version = rule_set_version + self.disabled_rule_groups = disabled_rule_groups + self.request_body_check = request_body_check + self.max_request_body_size = max_request_body_size diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group.py new file mode 100644 index 000000000000..1372f778ae62 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group.py @@ -0,0 +1,68 @@ +# 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 .resource import Resource + + +class ApplicationSecurityGroup(Resource): + """An application security group in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the application + security group resource. It uniquely identifies a resource, even if the + user changes its name or migrate the resource across subscriptions or + resource groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the application + security group resource. Possible values are: 'Succeeded', 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationSecurityGroup, self).__init__(**kwargs) + self.resource_guid = None + self.provisioning_state = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group_paged.py new file mode 100644 index 000000000000..4930e3b7d4c2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ApplicationSecurityGroupPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationSecurityGroup ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationSecurityGroup]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationSecurityGroupPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group_py3.py new file mode 100644 index 000000000000..fba3b3a222a5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/application_security_group_py3.py @@ -0,0 +1,68 @@ +# 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 .resource_py3 import Resource + + +class ApplicationSecurityGroup(Resource): + """An application security group in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the application + security group resource. It uniquely identifies a resource, even if the + user changes its name or migrate the resource across subscriptions or + resource groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the application + security group resource. Possible values are: 'Succeeded', 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(ApplicationSecurityGroup, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.resource_guid = None + self.provisioning_state = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/availability.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/availability.py new file mode 100644 index 000000000000..16b7cfa04955 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/availability.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Availability(Model): + """Availability of the metric. + + :param time_grain: The time grain of the availability. + :type time_grain: str + :param retention: The retention of the availability. + :type retention: str + :param blob_duration: Duration of the availability blob. + :type blob_duration: str + """ + + _attribute_map = { + 'time_grain': {'key': 'timeGrain', 'type': 'str'}, + 'retention': {'key': 'retention', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Availability, self).__init__(**kwargs) + self.time_grain = kwargs.get('time_grain', None) + self.retention = kwargs.get('retention', None) + self.blob_duration = kwargs.get('blob_duration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/availability_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/availability_py3.py new file mode 100644 index 000000000000..874d8878184f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/availability_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Availability(Model): + """Availability of the metric. + + :param time_grain: The time grain of the availability. + :type time_grain: str + :param retention: The retention of the availability. + :type retention: str + :param blob_duration: Duration of the availability blob. + :type blob_duration: str + """ + + _attribute_map = { + 'time_grain': {'key': 'timeGrain', 'type': 'str'}, + 'retention': {'key': 'retention', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, *, time_grain: str=None, retention: str=None, blob_duration: str=None, **kwargs) -> None: + super(Availability, self).__init__(**kwargs) + self.time_grain = time_grain + self.retention = retention + self.blob_duration = blob_duration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list.py new file mode 100644 index 000000000000..cac479b7ebfe --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersList(Model): + """List of available countries with details. + + All required parameters must be populated in order to send to Azure. + + :param countries: Required. List of available countries. + :type countries: + list[~azure.mgmt.network.v2018_07_01.models.AvailableProvidersListCountry] + """ + + _validation = { + 'countries': {'required': True}, + } + + _attribute_map = { + 'countries': {'key': 'countries', 'type': '[AvailableProvidersListCountry]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersList, self).__init__(**kwargs) + self.countries = kwargs.get('countries', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_city.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_city.py new file mode 100644 index 000000000000..5f9aa271b981 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_city.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListCity(Model): + """City or town details. + + :param city_name: The city or town name. + :type city_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + """ + + _attribute_map = { + 'city_name': {'key': 'cityName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListCity, self).__init__(**kwargs) + self.city_name = kwargs.get('city_name', None) + self.providers = kwargs.get('providers', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_city_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_city_py3.py new file mode 100644 index 000000000000..888aa46a7cfc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_city_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListCity(Model): + """City or town details. + + :param city_name: The city or town name. + :type city_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + """ + + _attribute_map = { + 'city_name': {'key': 'cityName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + } + + def __init__(self, *, city_name: str=None, providers=None, **kwargs) -> None: + super(AvailableProvidersListCity, self).__init__(**kwargs) + self.city_name = city_name + self.providers = providers diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_country.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_country.py new file mode 100644 index 000000000000..6f24d5457190 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_country.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListCountry(Model): + """Country details. + + :param country_name: The country name. + :type country_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param states: List of available states in the country. + :type states: + list[~azure.mgmt.network.v2018_07_01.models.AvailableProvidersListState] + """ + + _attribute_map = { + 'country_name': {'key': 'countryName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'states': {'key': 'states', 'type': '[AvailableProvidersListState]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListCountry, self).__init__(**kwargs) + self.country_name = kwargs.get('country_name', None) + self.providers = kwargs.get('providers', None) + self.states = kwargs.get('states', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_country_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_country_py3.py new file mode 100644 index 000000000000..26030fe5d563 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_country_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListCountry(Model): + """Country details. + + :param country_name: The country name. + :type country_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param states: List of available states in the country. + :type states: + list[~azure.mgmt.network.v2018_07_01.models.AvailableProvidersListState] + """ + + _attribute_map = { + 'country_name': {'key': 'countryName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'states': {'key': 'states', 'type': '[AvailableProvidersListState]'}, + } + + def __init__(self, *, country_name: str=None, providers=None, states=None, **kwargs) -> None: + super(AvailableProvidersListCountry, self).__init__(**kwargs) + self.country_name = country_name + self.providers = providers + self.states = states diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_parameters.py new file mode 100644 index 000000000000..152b3b787c2b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListParameters(Model): + """Constraints that determine the list of available Internet service + providers. + + :param azure_locations: A list of Azure regions. + :type azure_locations: list[str] + :param country: The country for available providers list. + :type country: str + :param state: The state for available providers list. + :type state: str + :param city: The city or town for available providers list. + :type city: str + """ + + _attribute_map = { + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListParameters, self).__init__(**kwargs) + self.azure_locations = kwargs.get('azure_locations', None) + self.country = kwargs.get('country', None) + self.state = kwargs.get('state', None) + self.city = kwargs.get('city', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_parameters_py3.py new file mode 100644 index 000000000000..d5c541a7fcb6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListParameters(Model): + """Constraints that determine the list of available Internet service + providers. + + :param azure_locations: A list of Azure regions. + :type azure_locations: list[str] + :param country: The country for available providers list. + :type country: str + :param state: The state for available providers list. + :type state: str + :param city: The city or town for available providers list. + :type city: str + """ + + _attribute_map = { + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, *, azure_locations=None, country: str=None, state: str=None, city: str=None, **kwargs) -> None: + super(AvailableProvidersListParameters, self).__init__(**kwargs) + self.azure_locations = azure_locations + self.country = country + self.state = state + self.city = city diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_py3.py new file mode 100644 index 000000000000..a047b74732a4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersList(Model): + """List of available countries with details. + + All required parameters must be populated in order to send to Azure. + + :param countries: Required. List of available countries. + :type countries: + list[~azure.mgmt.network.v2018_07_01.models.AvailableProvidersListCountry] + """ + + _validation = { + 'countries': {'required': True}, + } + + _attribute_map = { + 'countries': {'key': 'countries', 'type': '[AvailableProvidersListCountry]'}, + } + + def __init__(self, *, countries, **kwargs) -> None: + super(AvailableProvidersList, self).__init__(**kwargs) + self.countries = countries diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_state.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_state.py new file mode 100644 index 000000000000..578f13da122c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_state.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListState(Model): + """State details. + + :param state_name: The state name. + :type state_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param cities: List of available cities or towns in the state. + :type cities: + list[~azure.mgmt.network.v2018_07_01.models.AvailableProvidersListCity] + """ + + _attribute_map = { + 'state_name': {'key': 'stateName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'cities': {'key': 'cities', 'type': '[AvailableProvidersListCity]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListState, self).__init__(**kwargs) + self.state_name = kwargs.get('state_name', None) + self.providers = kwargs.get('providers', None) + self.cities = kwargs.get('cities', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_state_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_state_py3.py new file mode 100644 index 000000000000..5d01191f1b8d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/available_providers_list_state_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListState(Model): + """State details. + + :param state_name: The state name. + :type state_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param cities: List of available cities or towns in the state. + :type cities: + list[~azure.mgmt.network.v2018_07_01.models.AvailableProvidersListCity] + """ + + _attribute_map = { + 'state_name': {'key': 'stateName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'cities': {'key': 'cities', 'type': '[AvailableProvidersListCity]'}, + } + + def __init__(self, *, state_name: str=None, providers=None, cities=None, **kwargs) -> None: + super(AvailableProvidersListState, self).__init__(**kwargs) + self.state_name = state_name + self.providers = providers + self.cities = cities diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_async_operation_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_async_operation_result.py new file mode 100644 index 000000000000..06c14db3f1e9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_async_operation_result.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureAsyncOperationResult(Model): + """The response body contains the status of the specified asynchronous + operation, indicating whether it has succeeded, is in progress, or has + failed. Note that this status is distinct from the HTTP status code + returned for the Get Operation Status operation itself. If the asynchronous + operation succeeded, the response body includes the HTTP status code for + the successful request. If the asynchronous operation failed, the response + body includes the HTTP status code for the failed request and error + information regarding the failure. + + :param status: Status of the Azure async operation. Possible values are: + 'InProgress', 'Succeeded', and 'Failed'. Possible values include: + 'InProgress', 'Succeeded', 'Failed' + :type status: str or + ~azure.mgmt.network.v2018_07_01.models.NetworkOperationStatus + :param error: + :type error: ~azure.mgmt.network.v2018_07_01.models.Error + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, **kwargs): + super(AzureAsyncOperationResult, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.error = kwargs.get('error', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_async_operation_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_async_operation_result_py3.py new file mode 100644 index 000000000000..272414ecf785 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_async_operation_result_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureAsyncOperationResult(Model): + """The response body contains the status of the specified asynchronous + operation, indicating whether it has succeeded, is in progress, or has + failed. Note that this status is distinct from the HTTP status code + returned for the Get Operation Status operation itself. If the asynchronous + operation succeeded, the response body includes the HTTP status code for + the successful request. If the asynchronous operation failed, the response + body includes the HTTP status code for the failed request and error + information regarding the failure. + + :param status: Status of the Azure async operation. Possible values are: + 'InProgress', 'Succeeded', and 'Failed'. Possible values include: + 'InProgress', 'Succeeded', 'Failed' + :type status: str or + ~azure.mgmt.network.v2018_07_01.models.NetworkOperationStatus + :param error: + :type error: ~azure.mgmt.network.v2018_07_01.models.Error + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, *, status=None, error=None, **kwargs) -> None: + super(AzureAsyncOperationResult, self).__init__(**kwargs) + self.status = status + self.error = error diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall.py new file mode 100644 index 000000000000..f3a3cf1f7794 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall.py @@ -0,0 +1,76 @@ +# 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 .resource import Resource + + +class AzureFirewall(Resource): + """Azure Firewall resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param application_rule_collections: Collection of application rule + collections used by a Azure Firewall. + :type application_rule_collections: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallApplicationRuleCollection] + :param network_rule_collections: Collection of network rule collections + used by a Azure Firewall. + :type network_rule_collections: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallNetworkRuleCollection] + :param ip_configurations: IP configuration of the Azure Firewall resource. + :type ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallIPConfiguration] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'application_rule_collections': {'key': 'properties.applicationRuleCollections', 'type': '[AzureFirewallApplicationRuleCollection]'}, + 'network_rule_collections': {'key': 'properties.networkRuleCollections', 'type': '[AzureFirewallNetworkRuleCollection]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[AzureFirewallIPConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewall, self).__init__(**kwargs) + self.application_rule_collections = kwargs.get('application_rule_collections', None) + self.network_rule_collections = kwargs.get('network_rule_collections', None) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule.py new file mode 100644 index 000000000000..b891c183fc98 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallApplicationRule(Model): + """Properties of an application rule. + + :param name: Name of the application rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param protocols: Array of ApplicationRuleProtocols. + :type protocols: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallApplicationRuleProtocol] + :param target_urls: List of URLs for this rule. + :type target_urls: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[AzureFirewallApplicationRuleProtocol]'}, + 'target_urls': {'key': 'targetUrls', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.protocols = kwargs.get('protocols', None) + self.target_urls = kwargs.get('target_urls', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_collection.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_collection.py new file mode 100644 index 000000000000..f1423d7f1f04 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_collection.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class AzureFirewallApplicationRuleCollection(SubResource): + """Application rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the application rule collection resource. + :type priority: int + :param action: The action type of a rule collection + :type action: ~azure.mgmt.network.v2018_07_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a application rule collection. + :type rules: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallApplicationRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallApplicationRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRuleCollection, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.action = kwargs.get('action', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_collection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_collection_py3.py new file mode 100644 index 000000000000..f88d7ca15939 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_collection_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class AzureFirewallApplicationRuleCollection(SubResource): + """Application rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the application rule collection resource. + :type priority: int + :param action: The action type of a rule collection + :type action: ~azure.mgmt.network.v2018_07_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a application rule collection. + :type rules: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallApplicationRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallApplicationRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, action=None, rules=None, provisioning_state=None, name: str=None, **kwargs) -> None: + super(AzureFirewallApplicationRuleCollection, self).__init__(id=id, **kwargs) + self.priority = priority + self.action = action + self.rules = rules + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_protocol.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_protocol.py new file mode 100644 index 000000000000..b80c42256d45 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_protocol.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallApplicationRuleProtocol(Model): + """Properties of the application rule protocol. + + :param protocol_type: Protocol type. Possible values include: 'Http', + 'Https' + :type protocol_type: str or + ~azure.mgmt.network.v2018_07_01.models.AzureFirewallApplicationRuleProtocolType + :param port: Port number for the protocol, cannot be greater than 64000. + This field is optional. + :type port: int + """ + + _validation = { + 'port': {'maximum': 64000, 'minimum': 0}, + } + + _attribute_map = { + 'protocol_type': {'key': 'protocolType', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRuleProtocol, self).__init__(**kwargs) + self.protocol_type = kwargs.get('protocol_type', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_protocol_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_protocol_py3.py new file mode 100644 index 000000000000..362a5a6a6d7d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_protocol_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallApplicationRuleProtocol(Model): + """Properties of the application rule protocol. + + :param protocol_type: Protocol type. Possible values include: 'Http', + 'Https' + :type protocol_type: str or + ~azure.mgmt.network.v2018_07_01.models.AzureFirewallApplicationRuleProtocolType + :param port: Port number for the protocol, cannot be greater than 64000. + This field is optional. + :type port: int + """ + + _validation = { + 'port': {'maximum': 64000, 'minimum': 0}, + } + + _attribute_map = { + 'protocol_type': {'key': 'protocolType', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, protocol_type=None, port: int=None, **kwargs) -> None: + super(AzureFirewallApplicationRuleProtocol, self).__init__(**kwargs) + self.protocol_type = protocol_type + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_py3.py new file mode 100644 index 000000000000..ae13b1b3eaa2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_application_rule_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallApplicationRule(Model): + """Properties of an application rule. + + :param name: Name of the application rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param protocols: Array of ApplicationRuleProtocols. + :type protocols: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallApplicationRuleProtocol] + :param target_urls: List of URLs for this rule. + :type target_urls: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[AzureFirewallApplicationRuleProtocol]'}, + 'target_urls': {'key': 'targetUrls', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, source_addresses=None, protocols=None, target_urls=None, **kwargs) -> None: + super(AzureFirewallApplicationRule, self).__init__(**kwargs) + self.name = name + self.description = description + self.source_addresses = source_addresses + self.protocols = protocols + self.target_urls = target_urls diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_ip_configuration.py new file mode 100644 index 000000000000..a4ba95cea307 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_ip_configuration.py @@ -0,0 +1,65 @@ +# 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 .sub_resource import SubResource + + +class AzureFirewallIPConfiguration(SubResource): + """IP configuration of an Azure Firewall. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The Firewall Internal Load Balancer IP to be + used as the next hop in User Defined Routes. + :type private_ip_address: str + :param subnet: Reference of the subnet resource. This resource must be + named 'AzureFirewallSubnet'. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param internal_public_ip_address: Reference of the PublicIP resource. + This field is a mandatory input. + :type internal_public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. This field + is populated in the output. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'internal_public_ip_address': {'key': 'properties.internalPublicIpAddress', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallIPConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.subnet = kwargs.get('subnet', None) + self.internal_public_ip_address = kwargs.get('internal_public_ip_address', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_ip_configuration_py3.py new file mode 100644 index 000000000000..d732ad5ad385 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_ip_configuration_py3.py @@ -0,0 +1,65 @@ +# 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 .sub_resource_py3 import SubResource + + +class AzureFirewallIPConfiguration(SubResource): + """IP configuration of an Azure Firewall. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The Firewall Internal Load Balancer IP to be + used as the next hop in User Defined Routes. + :type private_ip_address: str + :param subnet: Reference of the subnet resource. This resource must be + named 'AzureFirewallSubnet'. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param internal_public_ip_address: Reference of the PublicIP resource. + This field is a mandatory input. + :type internal_public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. This field + is populated in the output. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'internal_public_ip_address': {'key': 'properties.internalPublicIpAddress', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, subnet=None, internal_public_ip_address=None, public_ip_address=None, provisioning_state=None, name: str=None, etag: str=None, **kwargs) -> None: + super(AzureFirewallIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.subnet = subnet + self.internal_public_ip_address = internal_public_ip_address + self.public_ip_address = public_ip_address + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule.py new file mode 100644 index 000000000000..00a936d99b77 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallNetworkRule(Model): + """Properties of the network rule. + + :param name: Name of the network rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param protocols: Array of AzureFirewallNetworkRuleProtocols. + :type protocols: list[str or + ~azure.mgmt.network.v2018_07_01.models.AzureFirewallNetworkRuleProtocol] + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNetworkRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.protocols = kwargs.get('protocols', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.destination_addresses = kwargs.get('destination_addresses', None) + self.destination_ports = kwargs.get('destination_ports', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_collection.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_collection.py new file mode 100644 index 000000000000..092130afdbef --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_collection.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class AzureFirewallNetworkRuleCollection(SubResource): + """Network rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the network rule collection resource. + :type priority: int + :param action: The action type of a rule collection + :type action: ~azure.mgmt.network.v2018_07_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a network rule collection. + :type rules: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallNetworkRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNetworkRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNetworkRuleCollection, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.action = kwargs.get('action', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_collection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_collection_py3.py new file mode 100644 index 000000000000..3b644d67578b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_collection_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class AzureFirewallNetworkRuleCollection(SubResource): + """Network rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the network rule collection resource. + :type priority: int + :param action: The action type of a rule collection + :type action: ~azure.mgmt.network.v2018_07_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a network rule collection. + :type rules: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallNetworkRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNetworkRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, action=None, rules=None, provisioning_state=None, name: str=None, **kwargs) -> None: + super(AzureFirewallNetworkRuleCollection, self).__init__(id=id, **kwargs) + self.priority = priority + self.action = action + self.rules = rules + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_py3.py new file mode 100644 index 000000000000..6d996455e3df --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_network_rule_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallNetworkRule(Model): + """Properties of the network rule. + + :param name: Name of the network rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param protocols: Array of AzureFirewallNetworkRuleProtocols. + :type protocols: list[str or + ~azure.mgmt.network.v2018_07_01.models.AzureFirewallNetworkRuleProtocol] + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, protocols=None, source_addresses=None, destination_addresses=None, destination_ports=None, **kwargs) -> None: + super(AzureFirewallNetworkRule, self).__init__(**kwargs) + self.name = name + self.description = description + self.protocols = protocols + self.source_addresses = source_addresses + self.destination_addresses = destination_addresses + self.destination_ports = destination_ports diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_paged.py new file mode 100644 index 000000000000..deb7e90acbdc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AzureFirewallPaged(Paged): + """ + A paging container for iterating over a list of :class:`AzureFirewall ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AzureFirewall]'} + } + + def __init__(self, *args, **kwargs): + + super(AzureFirewallPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_py3.py new file mode 100644 index 000000000000..d631803822a9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_py3.py @@ -0,0 +1,76 @@ +# 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 .resource_py3 import Resource + + +class AzureFirewall(Resource): + """Azure Firewall resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param application_rule_collections: Collection of application rule + collections used by a Azure Firewall. + :type application_rule_collections: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallApplicationRuleCollection] + :param network_rule_collections: Collection of network rule collections + used by a Azure Firewall. + :type network_rule_collections: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallNetworkRuleCollection] + :param ip_configurations: IP configuration of the Azure Firewall resource. + :type ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.AzureFirewallIPConfiguration] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'application_rule_collections': {'key': 'properties.applicationRuleCollections', 'type': '[AzureFirewallApplicationRuleCollection]'}, + 'network_rule_collections': {'key': 'properties.networkRuleCollections', 'type': '[AzureFirewallNetworkRuleCollection]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[AzureFirewallIPConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, application_rule_collections=None, network_rule_collections=None, ip_configurations=None, provisioning_state=None, **kwargs) -> None: + super(AzureFirewall, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.application_rule_collections = application_rule_collections + self.network_rule_collections = network_rule_collections + self.ip_configurations = ip_configurations + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_rc_action.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_rc_action.py new file mode 100644 index 000000000000..f7c8ae881854 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_rc_action.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallRCAction(Model): + """Properties of the AzureFirewallRCAction. + + :param type: The type of action. Possible values include: 'Allow', 'Deny' + :type type: str or + ~azure.mgmt.network.v2018_07_01.models.AzureFirewallRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallRCAction, self).__init__(**kwargs) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_rc_action_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_rc_action_py3.py new file mode 100644 index 000000000000..3469bf0385a8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_firewall_rc_action_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallRCAction(Model): + """Properties of the AzureFirewallRCAction. + + :param type: The type of action. Possible values include: 'Allow', 'Deny' + :type type: str or + ~azure.mgmt.network.v2018_07_01.models.AzureFirewallRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, type=None, **kwargs) -> None: + super(AzureFirewallRCAction, self).__init__(**kwargs) + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report.py new file mode 100644 index 000000000000..ebd2eb053f2b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReport(Model): + """Azure reachability report details. + + All required parameters must be populated in order to send to Azure. + + :param aggregation_level: Required. The aggregation level of Azure + reachability report. Can be Country, State or City. + :type aggregation_level: str + :param provider_location: Required. + :type provider_location: + ~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportLocation + :param reachability_report: Required. List of Azure reachability report + items. + :type reachability_report: + list[~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportItem] + """ + + _validation = { + 'aggregation_level': {'required': True}, + 'provider_location': {'required': True}, + 'reachability_report': {'required': True}, + } + + _attribute_map = { + 'aggregation_level': {'key': 'aggregationLevel', 'type': 'str'}, + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'reachability_report': {'key': 'reachabilityReport', 'type': '[AzureReachabilityReportItem]'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReport, self).__init__(**kwargs) + self.aggregation_level = kwargs.get('aggregation_level', None) + self.provider_location = kwargs.get('provider_location', None) + self.reachability_report = kwargs.get('reachability_report', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_item.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_item.py new file mode 100644 index 000000000000..25d39156e102 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_item.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportItem(Model): + """Azure reachability report details for a given provider location. + + :param provider: The Internet service provider. + :type provider: str + :param azure_location: The Azure region. + :type azure_location: str + :param latencies: List of latency details for each of the time series. + :type latencies: + list[~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportLatencyInfo] + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'azure_location': {'key': 'azureLocation', 'type': 'str'}, + 'latencies': {'key': 'latencies', 'type': '[AzureReachabilityReportLatencyInfo]'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportItem, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.azure_location = kwargs.get('azure_location', None) + self.latencies = kwargs.get('latencies', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_item_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_item_py3.py new file mode 100644 index 000000000000..db7bcea79eb4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_item_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportItem(Model): + """Azure reachability report details for a given provider location. + + :param provider: The Internet service provider. + :type provider: str + :param azure_location: The Azure region. + :type azure_location: str + :param latencies: List of latency details for each of the time series. + :type latencies: + list[~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportLatencyInfo] + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'azure_location': {'key': 'azureLocation', 'type': 'str'}, + 'latencies': {'key': 'latencies', 'type': '[AzureReachabilityReportLatencyInfo]'}, + } + + def __init__(self, *, provider: str=None, azure_location: str=None, latencies=None, **kwargs) -> None: + super(AzureReachabilityReportItem, self).__init__(**kwargs) + self.provider = provider + self.azure_location = azure_location + self.latencies = latencies diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_latency_info.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_latency_info.py new file mode 100644 index 000000000000..e5f77641a138 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_latency_info.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportLatencyInfo(Model): + """Details on latency for a time series. + + :param time_stamp: The time stamp. + :type time_stamp: datetime + :param score: The relative latency score between 1 and 100, higher values + indicating a faster connection. + :type score: int + """ + + _validation = { + 'score': {'maximum': 100, 'minimum': 1}, + } + + _attribute_map = { + 'time_stamp': {'key': 'timeStamp', 'type': 'iso-8601'}, + 'score': {'key': 'score', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportLatencyInfo, self).__init__(**kwargs) + self.time_stamp = kwargs.get('time_stamp', None) + self.score = kwargs.get('score', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_latency_info_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_latency_info_py3.py new file mode 100644 index 000000000000..dd9d8fda369c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_latency_info_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportLatencyInfo(Model): + """Details on latency for a time series. + + :param time_stamp: The time stamp. + :type time_stamp: datetime + :param score: The relative latency score between 1 and 100, higher values + indicating a faster connection. + :type score: int + """ + + _validation = { + 'score': {'maximum': 100, 'minimum': 1}, + } + + _attribute_map = { + 'time_stamp': {'key': 'timeStamp', 'type': 'iso-8601'}, + 'score': {'key': 'score', 'type': 'int'}, + } + + def __init__(self, *, time_stamp=None, score: int=None, **kwargs) -> None: + super(AzureReachabilityReportLatencyInfo, self).__init__(**kwargs) + self.time_stamp = time_stamp + self.score = score diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_location.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_location.py new file mode 100644 index 000000000000..76c132e89575 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportLocation(Model): + """Parameters that define a geographic location. + + All required parameters must be populated in order to send to Azure. + + :param country: Required. The name of the country. + :type country: str + :param state: The name of the state. + :type state: str + :param city: The name of the city or town. + :type city: str + """ + + _validation = { + 'country': {'required': True}, + } + + _attribute_map = { + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportLocation, self).__init__(**kwargs) + self.country = kwargs.get('country', None) + self.state = kwargs.get('state', None) + self.city = kwargs.get('city', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_location_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_location_py3.py new file mode 100644 index 000000000000..1db868eab46f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_location_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportLocation(Model): + """Parameters that define a geographic location. + + All required parameters must be populated in order to send to Azure. + + :param country: Required. The name of the country. + :type country: str + :param state: The name of the state. + :type state: str + :param city: The name of the city or town. + :type city: str + """ + + _validation = { + 'country': {'required': True}, + } + + _attribute_map = { + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, *, country: str, state: str=None, city: str=None, **kwargs) -> None: + super(AzureReachabilityReportLocation, self).__init__(**kwargs) + self.country = country + self.state = state + self.city = city diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_parameters.py new file mode 100644 index 000000000000..c233ca4d6379 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_parameters.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportParameters(Model): + """Geographic and time constraints for Azure reachability report. + + All required parameters must be populated in order to send to Azure. + + :param provider_location: Required. + :type provider_location: + ~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportLocation + :param providers: List of Internet service providers. + :type providers: list[str] + :param azure_locations: Optional Azure regions to scope the query to. + :type azure_locations: list[str] + :param start_time: Required. The start time for the Azure reachability + report. + :type start_time: datetime + :param end_time: Required. The end time for the Azure reachability report. + :type end_time: datetime + """ + + _validation = { + 'provider_location': {'required': True}, + 'start_time': {'required': True}, + 'end_time': {'required': True}, + } + + _attribute_map = { + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportParameters, self).__init__(**kwargs) + self.provider_location = kwargs.get('provider_location', None) + self.providers = kwargs.get('providers', None) + self.azure_locations = kwargs.get('azure_locations', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_parameters_py3.py new file mode 100644 index 000000000000..df3146cdfeef --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_parameters_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportParameters(Model): + """Geographic and time constraints for Azure reachability report. + + All required parameters must be populated in order to send to Azure. + + :param provider_location: Required. + :type provider_location: + ~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportLocation + :param providers: List of Internet service providers. + :type providers: list[str] + :param azure_locations: Optional Azure regions to scope the query to. + :type azure_locations: list[str] + :param start_time: Required. The start time for the Azure reachability + report. + :type start_time: datetime + :param end_time: Required. The end time for the Azure reachability report. + :type end_time: datetime + """ + + _validation = { + 'provider_location': {'required': True}, + 'start_time': {'required': True}, + 'end_time': {'required': True}, + } + + _attribute_map = { + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, provider_location, start_time, end_time, providers=None, azure_locations=None, **kwargs) -> None: + super(AzureReachabilityReportParameters, self).__init__(**kwargs) + self.provider_location = provider_location + self.providers = providers + self.azure_locations = azure_locations + self.start_time = start_time + self.end_time = end_time diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_py3.py new file mode 100644 index 000000000000..db4da0b28e5d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/azure_reachability_report_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReport(Model): + """Azure reachability report details. + + All required parameters must be populated in order to send to Azure. + + :param aggregation_level: Required. The aggregation level of Azure + reachability report. Can be Country, State or City. + :type aggregation_level: str + :param provider_location: Required. + :type provider_location: + ~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportLocation + :param reachability_report: Required. List of Azure reachability report + items. + :type reachability_report: + list[~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportItem] + """ + + _validation = { + 'aggregation_level': {'required': True}, + 'provider_location': {'required': True}, + 'reachability_report': {'required': True}, + } + + _attribute_map = { + 'aggregation_level': {'key': 'aggregationLevel', 'type': 'str'}, + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'reachability_report': {'key': 'reachabilityReport', 'type': '[AzureReachabilityReportItem]'}, + } + + def __init__(self, *, aggregation_level: str, provider_location, reachability_report, **kwargs) -> None: + super(AzureReachabilityReport, self).__init__(**kwargs) + self.aggregation_level = aggregation_level + self.provider_location = provider_location + self.reachability_report = reachability_report diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool.py new file mode 100644 index 000000000000..b3faa4ea9637 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool.py @@ -0,0 +1,68 @@ +# 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 .sub_resource import SubResource + + +class BackendAddressPool(SubResource): + """Pool of backend IP addresses. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar backend_ip_configurations: Gets collection of references to IP + addresses defined in network interfaces. + :vartype backend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration] + :ivar load_balancing_rules: Gets load balancing rules that use this + backend address pool. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar outbound_rule: Gets outbound rules that use this backend address + pool. + :vartype outbound_rule: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Get provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'backend_ip_configurations': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + 'outbound_rule': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'outbound_rule': {'key': 'properties.outboundRule', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BackendAddressPool, self).__init__(**kwargs) + self.backend_ip_configurations = None + self.load_balancing_rules = None + self.outbound_rule = None + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool_paged.py new file mode 100644 index 000000000000..fb4cd0c5d25c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class BackendAddressPoolPaged(Paged): + """ + A paging container for iterating over a list of :class:`BackendAddressPool ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BackendAddressPool]'} + } + + def __init__(self, *args, **kwargs): + + super(BackendAddressPoolPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool_py3.py new file mode 100644 index 000000000000..b22f35e644a2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/backend_address_pool_py3.py @@ -0,0 +1,68 @@ +# 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 .sub_resource_py3 import SubResource + + +class BackendAddressPool(SubResource): + """Pool of backend IP addresses. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar backend_ip_configurations: Gets collection of references to IP + addresses defined in network interfaces. + :vartype backend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration] + :ivar load_balancing_rules: Gets load balancing rules that use this + backend address pool. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar outbound_rule: Gets outbound rules that use this backend address + pool. + :vartype outbound_rule: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Get provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'backend_ip_configurations': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + 'outbound_rule': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'outbound_rule': {'key': 'properties.outboundRule', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(BackendAddressPool, self).__init__(id=id, **kwargs) + self.backend_ip_configurations = None + self.load_balancing_rules = None + self.outbound_rule = None + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_community.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_community.py new file mode 100644 index 000000000000..472a170e9ceb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_community.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BGPCommunity(Model): + """Contains bgp community information offered in Service Community resources. + + :param service_supported_region: The region which the service support. + e.g. For O365, region is Global. + :type service_supported_region: str + :param community_name: The name of the bgp community. e.g. Skype. + :type community_name: str + :param community_value: The value of the bgp community. For more + information: + https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing. + :type community_value: str + :param community_prefixes: The prefixes that the bgp community contains. + :type community_prefixes: list[str] + :param is_authorized_to_use: Customer is authorized to use bgp community + or not. + :type is_authorized_to_use: bool + :param service_group: The service group of the bgp community contains. + :type service_group: str + """ + + _attribute_map = { + 'service_supported_region': {'key': 'serviceSupportedRegion', 'type': 'str'}, + 'community_name': {'key': 'communityName', 'type': 'str'}, + 'community_value': {'key': 'communityValue', 'type': 'str'}, + 'community_prefixes': {'key': 'communityPrefixes', 'type': '[str]'}, + 'is_authorized_to_use': {'key': 'isAuthorizedToUse', 'type': 'bool'}, + 'service_group': {'key': 'serviceGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BGPCommunity, self).__init__(**kwargs) + self.service_supported_region = kwargs.get('service_supported_region', None) + self.community_name = kwargs.get('community_name', None) + self.community_value = kwargs.get('community_value', None) + self.community_prefixes = kwargs.get('community_prefixes', None) + self.is_authorized_to_use = kwargs.get('is_authorized_to_use', None) + self.service_group = kwargs.get('service_group', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_community_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_community_py3.py new file mode 100644 index 000000000000..86b740c84404 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_community_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BGPCommunity(Model): + """Contains bgp community information offered in Service Community resources. + + :param service_supported_region: The region which the service support. + e.g. For O365, region is Global. + :type service_supported_region: str + :param community_name: The name of the bgp community. e.g. Skype. + :type community_name: str + :param community_value: The value of the bgp community. For more + information: + https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing. + :type community_value: str + :param community_prefixes: The prefixes that the bgp community contains. + :type community_prefixes: list[str] + :param is_authorized_to_use: Customer is authorized to use bgp community + or not. + :type is_authorized_to_use: bool + :param service_group: The service group of the bgp community contains. + :type service_group: str + """ + + _attribute_map = { + 'service_supported_region': {'key': 'serviceSupportedRegion', 'type': 'str'}, + 'community_name': {'key': 'communityName', 'type': 'str'}, + 'community_value': {'key': 'communityValue', 'type': 'str'}, + 'community_prefixes': {'key': 'communityPrefixes', 'type': '[str]'}, + 'is_authorized_to_use': {'key': 'isAuthorizedToUse', 'type': 'bool'}, + 'service_group': {'key': 'serviceGroup', 'type': 'str'}, + } + + def __init__(self, *, service_supported_region: str=None, community_name: str=None, community_value: str=None, community_prefixes=None, is_authorized_to_use: bool=None, service_group: str=None, **kwargs) -> None: + super(BGPCommunity, self).__init__(**kwargs) + self.service_supported_region = service_supported_region + self.community_name = community_name + self.community_value = community_value + self.community_prefixes = community_prefixes + self.is_authorized_to_use = is_authorized_to_use + self.service_group = service_group diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status.py new file mode 100644 index 000000000000..3efbb44ca8bc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpPeerStatus(Model): + """BGP peer status details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The virtual network gateway's local address + :vartype local_address: str + :ivar neighbor: The remote BGP peer + :vartype neighbor: str + :ivar asn: The autonomous system number of the remote BGP peer + :vartype asn: int + :ivar state: The BGP peer state. Possible values include: 'Unknown', + 'Stopped', 'Idle', 'Connecting', 'Connected' + :vartype state: str or ~azure.mgmt.network.v2018_07_01.models.BgpPeerState + :ivar connected_duration: For how long the peering has been up + :vartype connected_duration: str + :ivar routes_received: The number of routes learned from this peer + :vartype routes_received: long + :ivar messages_sent: The number of BGP messages sent + :vartype messages_sent: long + :ivar messages_received: The number of BGP messages received + :vartype messages_received: long + """ + + _validation = { + 'local_address': {'readonly': True}, + 'neighbor': {'readonly': True}, + 'asn': {'readonly': True}, + 'state': {'readonly': True}, + 'connected_duration': {'readonly': True}, + 'routes_received': {'readonly': True}, + 'messages_sent': {'readonly': True}, + 'messages_received': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'str'}, + 'connected_duration': {'key': 'connectedDuration', 'type': 'str'}, + 'routes_received': {'key': 'routesReceived', 'type': 'long'}, + 'messages_sent': {'key': 'messagesSent', 'type': 'long'}, + 'messages_received': {'key': 'messagesReceived', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(BgpPeerStatus, self).__init__(**kwargs) + self.local_address = None + self.neighbor = None + self.asn = None + self.state = None + self.connected_duration = None + self.routes_received = None + self.messages_sent = None + self.messages_received = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_list_result.py new file mode 100644 index 000000000000..21ed7c200a3d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_list_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpPeerStatusListResult(Model): + """Response for list BGP peer status API service call. + + :param value: List of BGP peers + :type value: list[~azure.mgmt.network.v2018_07_01.models.BgpPeerStatus] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[BgpPeerStatus]'}, + } + + def __init__(self, **kwargs): + super(BgpPeerStatusListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_list_result_py3.py new file mode 100644 index 000000000000..c1994c712d7e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_list_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpPeerStatusListResult(Model): + """Response for list BGP peer status API service call. + + :param value: List of BGP peers + :type value: list[~azure.mgmt.network.v2018_07_01.models.BgpPeerStatus] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[BgpPeerStatus]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(BgpPeerStatusListResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_py3.py new file mode 100644 index 000000000000..e3c671c6d623 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_peer_status_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpPeerStatus(Model): + """BGP peer status details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The virtual network gateway's local address + :vartype local_address: str + :ivar neighbor: The remote BGP peer + :vartype neighbor: str + :ivar asn: The autonomous system number of the remote BGP peer + :vartype asn: int + :ivar state: The BGP peer state. Possible values include: 'Unknown', + 'Stopped', 'Idle', 'Connecting', 'Connected' + :vartype state: str or ~azure.mgmt.network.v2018_07_01.models.BgpPeerState + :ivar connected_duration: For how long the peering has been up + :vartype connected_duration: str + :ivar routes_received: The number of routes learned from this peer + :vartype routes_received: long + :ivar messages_sent: The number of BGP messages sent + :vartype messages_sent: long + :ivar messages_received: The number of BGP messages received + :vartype messages_received: long + """ + + _validation = { + 'local_address': {'readonly': True}, + 'neighbor': {'readonly': True}, + 'asn': {'readonly': True}, + 'state': {'readonly': True}, + 'connected_duration': {'readonly': True}, + 'routes_received': {'readonly': True}, + 'messages_sent': {'readonly': True}, + 'messages_received': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'str'}, + 'connected_duration': {'key': 'connectedDuration', 'type': 'str'}, + 'routes_received': {'key': 'routesReceived', 'type': 'long'}, + 'messages_sent': {'key': 'messagesSent', 'type': 'long'}, + 'messages_received': {'key': 'messagesReceived', 'type': 'long'}, + } + + def __init__(self, **kwargs) -> None: + super(BgpPeerStatus, self).__init__(**kwargs) + self.local_address = None + self.neighbor = None + self.asn = None + self.state = None + self.connected_duration = None + self.routes_received = None + self.messages_sent = None + self.messages_received = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community.py new file mode 100644 index 000000000000..c712808767c4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class BgpServiceCommunity(Resource): + """Service Community Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_name: The name of the bgp community. e.g. Skype. + :type service_name: str + :param bgp_communities: Get a list of bgp communities. + :type bgp_communities: + list[~azure.mgmt.network.v2018_07_01.models.BGPCommunity] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'bgp_communities': {'key': 'properties.bgpCommunities', 'type': '[BGPCommunity]'}, + } + + def __init__(self, **kwargs): + super(BgpServiceCommunity, self).__init__(**kwargs) + self.service_name = kwargs.get('service_name', None) + self.bgp_communities = kwargs.get('bgp_communities', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community_paged.py new file mode 100644 index 000000000000..646372fc210a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class BgpServiceCommunityPaged(Paged): + """ + A paging container for iterating over a list of :class:`BgpServiceCommunity ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BgpServiceCommunity]'} + } + + def __init__(self, *args, **kwargs): + + super(BgpServiceCommunityPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community_py3.py new file mode 100644 index 000000000000..09155d616882 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_service_community_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class BgpServiceCommunity(Resource): + """Service Community Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_name: The name of the bgp community. e.g. Skype. + :type service_name: str + :param bgp_communities: Get a list of bgp communities. + :type bgp_communities: + list[~azure.mgmt.network.v2018_07_01.models.BGPCommunity] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'bgp_communities': {'key': 'properties.bgpCommunities', 'type': '[BGPCommunity]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, service_name: str=None, bgp_communities=None, **kwargs) -> None: + super(BgpServiceCommunity, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.service_name = service_name + self.bgp_communities = bgp_communities diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_settings.py new file mode 100644 index 000000000000..e6e8d1b90aa6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_settings.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpSettings(Model): + """BGP settings details. + + :param asn: The BGP speaker's ASN. + :type asn: long + :param bgp_peering_address: The BGP peering address and BGP identifier of + this BGP speaker. + :type bgp_peering_address: str + :param peer_weight: The weight added to routes learned from this BGP + speaker. + :type peer_weight: int + """ + + _attribute_map = { + 'asn': {'key': 'asn', 'type': 'long'}, + 'bgp_peering_address': {'key': 'bgpPeeringAddress', 'type': 'str'}, + 'peer_weight': {'key': 'peerWeight', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(BgpSettings, self).__init__(**kwargs) + self.asn = kwargs.get('asn', None) + self.bgp_peering_address = kwargs.get('bgp_peering_address', None) + self.peer_weight = kwargs.get('peer_weight', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_settings_py3.py new file mode 100644 index 000000000000..cb3b3e6795f7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/bgp_settings_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpSettings(Model): + """BGP settings details. + + :param asn: The BGP speaker's ASN. + :type asn: long + :param bgp_peering_address: The BGP peering address and BGP identifier of + this BGP speaker. + :type bgp_peering_address: str + :param peer_weight: The weight added to routes learned from this BGP + speaker. + :type peer_weight: int + """ + + _attribute_map = { + 'asn': {'key': 'asn', 'type': 'long'}, + 'bgp_peering_address': {'key': 'bgpPeeringAddress', 'type': 'str'}, + 'peer_weight': {'key': 'peerWeight', 'type': 'int'}, + } + + def __init__(self, *, asn: int=None, bgp_peering_address: str=None, peer_weight: int=None, **kwargs) -> None: + super(BgpSettings, self).__init__(**kwargs) + self.asn = asn + self.bgp_peering_address = bgp_peering_address + self.peer_weight = peer_weight diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor.py new file mode 100644 index 000000000000..734e05aa7ff4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitor(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitor, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_destination.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_destination.py new file mode 100644 index 000000000000..9d1e3885cb38 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_destination.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorDestination(Model): + """Describes the destination of connection monitor. + + :param resource_id: The ID of the resource used as the destination by + connection monitor. + :type resource_id: str + :param address: Address of the connection monitor destination (IP or + domain name). + :type address: str + :param port: The destination port used by connection monitor. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorDestination, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.address = kwargs.get('address', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_destination_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_destination_py3.py new file mode 100644 index 000000000000..59e7465804ce --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_destination_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorDestination(Model): + """Describes the destination of connection monitor. + + :param resource_id: The ID of the resource used as the destination by + connection monitor. + :type resource_id: str + :param address: Address of the connection monitor destination (IP or + domain name). + :type address: str + :param port: The destination port used by connection monitor. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str=None, address: str=None, port: int=None, **kwargs) -> None: + super(ConnectionMonitorDestination, self).__init__(**kwargs) + self.resource_id = resource_id + self.address = address + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_parameters.py new file mode 100644 index 000000000000..32733472a060 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_parameters.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorParameters(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorParameters, self).__init__(**kwargs) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_parameters_py3.py new file mode 100644 index 000000000000..6a08ec52564e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_parameters_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorParameters(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, *, source, destination, auto_start: bool=True, monitoring_interval_in_seconds: int=60, **kwargs) -> None: + super(ConnectionMonitorParameters, self).__init__(**kwargs) + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_py3.py new file mode 100644 index 000000000000..c9771c969061 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitor(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, *, source, destination, location: str=None, tags=None, auto_start: bool=True, monitoring_interval_in_seconds: int=60, **kwargs) -> None: + super(ConnectionMonitor, self).__init__(**kwargs) + self.location = location + self.tags = tags + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_query_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_query_result.py new file mode 100644 index 000000000000..c260bd0fefe9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_query_result.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorQueryResult(Model): + """List of connection states snaphots. + + :param source_status: Status of connection monitor source. Possible values + include: 'Uknown', 'Active', 'Inactive' + :type source_status: str or + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorSourceStatus + :param states: Information about connection states. + :type states: + list[~azure.mgmt.network.v2018_07_01.models.ConnectionStateSnapshot] + """ + + _attribute_map = { + 'source_status': {'key': 'sourceStatus', 'type': 'str'}, + 'states': {'key': 'states', 'type': '[ConnectionStateSnapshot]'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorQueryResult, self).__init__(**kwargs) + self.source_status = kwargs.get('source_status', None) + self.states = kwargs.get('states', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_query_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_query_result_py3.py new file mode 100644 index 000000000000..5ffac4cd84f5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_query_result_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorQueryResult(Model): + """List of connection states snaphots. + + :param source_status: Status of connection monitor source. Possible values + include: 'Uknown', 'Active', 'Inactive' + :type source_status: str or + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorSourceStatus + :param states: Information about connection states. + :type states: + list[~azure.mgmt.network.v2018_07_01.models.ConnectionStateSnapshot] + """ + + _attribute_map = { + 'source_status': {'key': 'sourceStatus', 'type': 'str'}, + 'states': {'key': 'states', 'type': '[ConnectionStateSnapshot]'}, + } + + def __init__(self, *, source_status=None, states=None, **kwargs) -> None: + super(ConnectionMonitorQueryResult, self).__init__(**kwargs) + self.source_status = source_status + self.states = states diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result.py new file mode 100644 index 000000000000..b6927fdeafc7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result.py @@ -0,0 +1,98 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorResult(Model): + """Information about the connection monitor. + + 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 name: Name of the connection monitor. + :vartype name: str + :ivar id: ID of the connection monitor. + :vartype id: str + :param etag: Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :ivar type: Connection monitor type. + :vartype type: str + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + :param provisioning_state: The provisioning state of the connection + monitor. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param start_time: The date and time when the connection monitor was + started. + :type start_time: datetime + :param monitoring_status: The monitoring status of the connection monitor. + :type monitoring_status: str + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'monitoring_status': {'key': 'properties.monitoringStatus', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = kwargs.get('etag', "A unique read-only string that changes whenever the resource is updated.") + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.start_time = kwargs.get('start_time', None) + self.monitoring_status = kwargs.get('monitoring_status', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result_paged.py new file mode 100644 index 000000000000..8a571d139a7b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ConnectionMonitorResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`ConnectionMonitorResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ConnectionMonitorResult]'} + } + + def __init__(self, *args, **kwargs): + + super(ConnectionMonitorResultPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result_py3.py new file mode 100644 index 000000000000..8833dd250095 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_result_py3.py @@ -0,0 +1,98 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorResult(Model): + """Information about the connection monitor. + + 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 name: Name of the connection monitor. + :vartype name: str + :ivar id: ID of the connection monitor. + :vartype id: str + :param etag: Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :ivar type: Connection monitor type. + :vartype type: str + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + :param provisioning_state: The provisioning state of the connection + monitor. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param start_time: The date and time when the connection monitor was + started. + :type start_time: datetime + :param monitoring_status: The monitoring status of the connection monitor. + :type monitoring_status: str + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'monitoring_status': {'key': 'properties.monitoringStatus', 'type': 'str'}, + } + + def __init__(self, *, source, destination, etag: str="A unique read-only string that changes whenever the resource is updated.", location: str=None, tags=None, auto_start: bool=True, monitoring_interval_in_seconds: int=60, provisioning_state=None, start_time=None, monitoring_status: str=None, **kwargs) -> None: + super(ConnectionMonitorResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = etag + self.type = None + self.location = location + self.tags = tags + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds + self.provisioning_state = provisioning_state + self.start_time = start_time + self.monitoring_status = monitoring_status diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_source.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_source.py new file mode 100644 index 000000000000..1425fa613ce5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_source.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorSource(Model): + """Describes the source of connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource used as the source by + connection monitor. + :type resource_id: str + :param port: The source port used by connection monitor. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorSource, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_source_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_source_py3.py new file mode 100644 index 000000000000..4d44fcaf8bf0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_monitor_source_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorSource(Model): + """Describes the source of connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource used as the source by + connection monitor. + :type resource_id: str + :param port: The source port used by connection monitor. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str, port: int=None, **kwargs) -> None: + super(ConnectionMonitorSource, self).__init__(**kwargs) + self.resource_id = resource_id + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_reset_shared_key.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_reset_shared_key.py new file mode 100644 index 000000000000..1ade077795ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_reset_shared_key.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionResetSharedKey(Model): + """The virtual network connection reset shared key. + + All required parameters must be populated in order to send to Azure. + + :param key_length: Required. The virtual network connection reset shared + key length, should between 1 and 128. + :type key_length: int + """ + + _validation = { + 'key_length': {'required': True, 'maximum': 128, 'minimum': 1}, + } + + _attribute_map = { + 'key_length': {'key': 'keyLength', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionResetSharedKey, self).__init__(**kwargs) + self.key_length = kwargs.get('key_length', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_reset_shared_key_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_reset_shared_key_py3.py new file mode 100644 index 000000000000..47326d4c2082 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_reset_shared_key_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionResetSharedKey(Model): + """The virtual network connection reset shared key. + + All required parameters must be populated in order to send to Azure. + + :param key_length: Required. The virtual network connection reset shared + key length, should between 1 and 128. + :type key_length: int + """ + + _validation = { + 'key_length': {'required': True, 'maximum': 128, 'minimum': 1}, + } + + _attribute_map = { + 'key_length': {'key': 'keyLength', 'type': 'int'}, + } + + def __init__(self, *, key_length: int, **kwargs) -> None: + super(ConnectionResetSharedKey, self).__init__(**kwargs) + self.key_length = key_length diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_shared_key.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_shared_key.py new file mode 100644 index 000000000000..f6d742dac00f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_shared_key.py @@ -0,0 +1,37 @@ +# 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 .sub_resource import SubResource + + +class ConnectionSharedKey(SubResource): + """Response for GetConnectionSharedKey API service call. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param value: Required. The virtual network connection shared key value. + :type value: str + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectionSharedKey, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_shared_key_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_shared_key_py3.py new file mode 100644 index 000000000000..819965ba3dbf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_shared_key_py3.py @@ -0,0 +1,37 @@ +# 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 .sub_resource_py3 import SubResource + + +class ConnectionSharedKey(SubResource): + """Response for GetConnectionSharedKey API service call. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param value: Required. The virtual network connection shared key value. + :type value: str + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, value: str, id: str=None, **kwargs) -> None: + super(ConnectionSharedKey, self).__init__(id=id, **kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_state_snapshot.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_state_snapshot.py new file mode 100644 index 000000000000..b811da1b3ba6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_state_snapshot.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionStateSnapshot(Model): + """Connection state snapshot. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param connection_state: The connection state. Possible values include: + 'Reachable', 'Unreachable', 'Unknown' + :type connection_state: str or + ~azure.mgmt.network.v2018_07_01.models.ConnectionState + :param start_time: The start time of the connection snapshot. + :type start_time: datetime + :param end_time: The end time of the connection snapshot. + :type end_time: datetime + :param evaluation_state: Connectivity analysis evaluation state. Possible + values include: 'NotStarted', 'InProgress', 'Completed' + :type evaluation_state: str or + ~azure.mgmt.network.v2018_07_01.models.EvaluationState + :param avg_latency_in_ms: Average latency in ms. + :type avg_latency_in_ms: int + :param min_latency_in_ms: Minimum latency in ms. + :type min_latency_in_ms: int + :param max_latency_in_ms: Maximum latency in ms. + :type max_latency_in_ms: int + :param probes_sent: The number of sent probes. + :type probes_sent: int + :param probes_failed: The number of failed probes. + :type probes_failed: int + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2018_07_01.models.ConnectivityHop] + """ + + _validation = { + 'hops': {'readonly': True}, + } + + _attribute_map = { + 'connection_state': {'key': 'connectionState', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'evaluation_state': {'key': 'evaluationState', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + } + + def __init__(self, **kwargs): + super(ConnectionStateSnapshot, self).__init__(**kwargs) + self.connection_state = kwargs.get('connection_state', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.evaluation_state = kwargs.get('evaluation_state', None) + self.avg_latency_in_ms = kwargs.get('avg_latency_in_ms', None) + self.min_latency_in_ms = kwargs.get('min_latency_in_ms', None) + self.max_latency_in_ms = kwargs.get('max_latency_in_ms', None) + self.probes_sent = kwargs.get('probes_sent', None) + self.probes_failed = kwargs.get('probes_failed', None) + self.hops = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_state_snapshot_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_state_snapshot_py3.py new file mode 100644 index 000000000000..6e941ace9bc6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connection_state_snapshot_py3.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionStateSnapshot(Model): + """Connection state snapshot. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param connection_state: The connection state. Possible values include: + 'Reachable', 'Unreachable', 'Unknown' + :type connection_state: str or + ~azure.mgmt.network.v2018_07_01.models.ConnectionState + :param start_time: The start time of the connection snapshot. + :type start_time: datetime + :param end_time: The end time of the connection snapshot. + :type end_time: datetime + :param evaluation_state: Connectivity analysis evaluation state. Possible + values include: 'NotStarted', 'InProgress', 'Completed' + :type evaluation_state: str or + ~azure.mgmt.network.v2018_07_01.models.EvaluationState + :param avg_latency_in_ms: Average latency in ms. + :type avg_latency_in_ms: int + :param min_latency_in_ms: Minimum latency in ms. + :type min_latency_in_ms: int + :param max_latency_in_ms: Maximum latency in ms. + :type max_latency_in_ms: int + :param probes_sent: The number of sent probes. + :type probes_sent: int + :param probes_failed: The number of failed probes. + :type probes_failed: int + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2018_07_01.models.ConnectivityHop] + """ + + _validation = { + 'hops': {'readonly': True}, + } + + _attribute_map = { + 'connection_state': {'key': 'connectionState', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'evaluation_state': {'key': 'evaluationState', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + } + + def __init__(self, *, connection_state=None, start_time=None, end_time=None, evaluation_state=None, avg_latency_in_ms: int=None, min_latency_in_ms: int=None, max_latency_in_ms: int=None, probes_sent: int=None, probes_failed: int=None, **kwargs) -> None: + super(ConnectionStateSnapshot, self).__init__(**kwargs) + self.connection_state = connection_state + self.start_time = start_time + self.end_time = end_time + self.evaluation_state = evaluation_state + self.avg_latency_in_ms = avg_latency_in_ms + self.min_latency_in_ms = min_latency_in_ms + self.max_latency_in_ms = max_latency_in_ms + self.probes_sent = probes_sent + self.probes_failed = probes_failed + self.hops = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_destination.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_destination.py new file mode 100644 index 000000000000..964c425a29d3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_destination.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityDestination(Model): + """Parameters that define destination of connection. + + :param resource_id: The ID of the resource to which a connection attempt + will be made. + :type resource_id: str + :param address: The IP address or URI the resource to which a connection + attempt will be made. + :type address: str + :param port: Port on which check connectivity will be performed. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivityDestination, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.address = kwargs.get('address', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_destination_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_destination_py3.py new file mode 100644 index 000000000000..c51619081ed6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_destination_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityDestination(Model): + """Parameters that define destination of connection. + + :param resource_id: The ID of the resource to which a connection attempt + will be made. + :type resource_id: str + :param address: The IP address or URI the resource to which a connection + attempt will be made. + :type address: str + :param port: Port on which check connectivity will be performed. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str=None, address: str=None, port: int=None, **kwargs) -> None: + super(ConnectivityDestination, self).__init__(**kwargs) + self.resource_id = resource_id + self.address = address + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_hop.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_hop.py new file mode 100644 index 000000000000..95809fd0ee97 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_hop.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityHop(Model): + """Information about a hop between the source and the destination. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: The type of the hop. + :vartype type: str + :ivar id: The ID of the hop. + :vartype id: str + :ivar address: The IP address of the hop. + :vartype address: str + :ivar resource_id: The ID of the resource corresponding to this hop. + :vartype resource_id: str + :ivar next_hop_ids: List of next hop identifiers. + :vartype next_hop_ids: list[str] + :ivar issues: List of issues. + :vartype issues: + list[~azure.mgmt.network.v2018_07_01.models.ConnectivityIssue] + """ + + _validation = { + 'type': {'readonly': True}, + 'id': {'readonly': True}, + 'address': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'next_hop_ids': {'readonly': True}, + 'issues': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'next_hop_ids': {'key': 'nextHopIds', 'type': '[str]'}, + 'issues': {'key': 'issues', 'type': '[ConnectivityIssue]'}, + } + + def __init__(self, **kwargs): + super(ConnectivityHop, self).__init__(**kwargs) + self.type = None + self.id = None + self.address = None + self.resource_id = None + self.next_hop_ids = None + self.issues = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_hop_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_hop_py3.py new file mode 100644 index 000000000000..14ba48fb3e1e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_hop_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityHop(Model): + """Information about a hop between the source and the destination. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: The type of the hop. + :vartype type: str + :ivar id: The ID of the hop. + :vartype id: str + :ivar address: The IP address of the hop. + :vartype address: str + :ivar resource_id: The ID of the resource corresponding to this hop. + :vartype resource_id: str + :ivar next_hop_ids: List of next hop identifiers. + :vartype next_hop_ids: list[str] + :ivar issues: List of issues. + :vartype issues: + list[~azure.mgmt.network.v2018_07_01.models.ConnectivityIssue] + """ + + _validation = { + 'type': {'readonly': True}, + 'id': {'readonly': True}, + 'address': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'next_hop_ids': {'readonly': True}, + 'issues': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'next_hop_ids': {'key': 'nextHopIds', 'type': '[str]'}, + 'issues': {'key': 'issues', 'type': '[ConnectivityIssue]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityHop, self).__init__(**kwargs) + self.type = None + self.id = None + self.address = None + self.resource_id = None + self.next_hop_ids = None + self.issues = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_information.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_information.py new file mode 100644 index 000000000000..c7bb774a714c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_information.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityInformation(Model): + """Information on the connectivity status. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2018_07_01.models.ConnectivityHop] + :ivar connection_status: The connection status. Possible values include: + 'Unknown', 'Connected', 'Disconnected', 'Degraded' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.ConnectionStatus + :ivar avg_latency_in_ms: Average latency in milliseconds. + :vartype avg_latency_in_ms: int + :ivar min_latency_in_ms: Minimum latency in milliseconds. + :vartype min_latency_in_ms: int + :ivar max_latency_in_ms: Maximum latency in milliseconds. + :vartype max_latency_in_ms: int + :ivar probes_sent: Total number of probes sent. + :vartype probes_sent: int + :ivar probes_failed: Number of failed probes. + :vartype probes_failed: int + """ + + _validation = { + 'hops': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'avg_latency_in_ms': {'readonly': True}, + 'min_latency_in_ms': {'readonly': True}, + 'max_latency_in_ms': {'readonly': True}, + 'probes_sent': {'readonly': True}, + 'probes_failed': {'readonly': True}, + } + + _attribute_map = { + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivityInformation, self).__init__(**kwargs) + self.hops = None + self.connection_status = None + self.avg_latency_in_ms = None + self.min_latency_in_ms = None + self.max_latency_in_ms = None + self.probes_sent = None + self.probes_failed = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_information_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_information_py3.py new file mode 100644 index 000000000000..a8bb1eba27d6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_information_py3.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityInformation(Model): + """Information on the connectivity status. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2018_07_01.models.ConnectivityHop] + :ivar connection_status: The connection status. Possible values include: + 'Unknown', 'Connected', 'Disconnected', 'Degraded' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.ConnectionStatus + :ivar avg_latency_in_ms: Average latency in milliseconds. + :vartype avg_latency_in_ms: int + :ivar min_latency_in_ms: Minimum latency in milliseconds. + :vartype min_latency_in_ms: int + :ivar max_latency_in_ms: Maximum latency in milliseconds. + :vartype max_latency_in_ms: int + :ivar probes_sent: Total number of probes sent. + :vartype probes_sent: int + :ivar probes_failed: Number of failed probes. + :vartype probes_failed: int + """ + + _validation = { + 'hops': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'avg_latency_in_ms': {'readonly': True}, + 'min_latency_in_ms': {'readonly': True}, + 'max_latency_in_ms': {'readonly': True}, + 'probes_sent': {'readonly': True}, + 'probes_failed': {'readonly': True}, + } + + _attribute_map = { + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityInformation, self).__init__(**kwargs) + self.hops = None + self.connection_status = None + self.avg_latency_in_ms = None + self.min_latency_in_ms = None + self.max_latency_in_ms = None + self.probes_sent = None + self.probes_failed = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_issue.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_issue.py new file mode 100644 index 000000000000..03b492616eb9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_issue.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityIssue(Model): + """Information about an issue encountered in the process of checking for + connectivity. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the issue. Possible values include: 'Local', + 'Inbound', 'Outbound' + :vartype origin: str or ~azure.mgmt.network.v2018_07_01.models.Origin + :ivar severity: The severity of the issue. Possible values include: + 'Error', 'Warning' + :vartype severity: str or ~azure.mgmt.network.v2018_07_01.models.Severity + :ivar type: The type of issue. Possible values include: 'Unknown', + 'AgentStopped', 'GuestFirewall', 'DnsResolution', 'SocketBind', + 'NetworkSecurityRule', 'UserDefinedRoute', 'PortThrottled', 'Platform' + :vartype type: str or ~azure.mgmt.network.v2018_07_01.models.IssueType + :ivar context: Provides additional context on the issue. + :vartype context: list[dict[str, str]] + """ + + _validation = { + 'origin': {'readonly': True}, + 'severity': {'readonly': True}, + 'type': {'readonly': True}, + 'context': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'context': {'key': 'context', 'type': '[{str}]'}, + } + + def __init__(self, **kwargs): + super(ConnectivityIssue, self).__init__(**kwargs) + self.origin = None + self.severity = None + self.type = None + self.context = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_issue_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_issue_py3.py new file mode 100644 index 000000000000..1339a63dc430 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_issue_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityIssue(Model): + """Information about an issue encountered in the process of checking for + connectivity. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the issue. Possible values include: 'Local', + 'Inbound', 'Outbound' + :vartype origin: str or ~azure.mgmt.network.v2018_07_01.models.Origin + :ivar severity: The severity of the issue. Possible values include: + 'Error', 'Warning' + :vartype severity: str or ~azure.mgmt.network.v2018_07_01.models.Severity + :ivar type: The type of issue. Possible values include: 'Unknown', + 'AgentStopped', 'GuestFirewall', 'DnsResolution', 'SocketBind', + 'NetworkSecurityRule', 'UserDefinedRoute', 'PortThrottled', 'Platform' + :vartype type: str or ~azure.mgmt.network.v2018_07_01.models.IssueType + :ivar context: Provides additional context on the issue. + :vartype context: list[dict[str, str]] + """ + + _validation = { + 'origin': {'readonly': True}, + 'severity': {'readonly': True}, + 'type': {'readonly': True}, + 'context': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'context': {'key': 'context', 'type': '[{str}]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityIssue, self).__init__(**kwargs) + self.origin = None + self.severity = None + self.type = None + self.context = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_parameters.py new file mode 100644 index 000000000000..7a1a2f430a9b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_parameters.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityParameters(Model): + """Parameters that determine how the connectivity check will be performed. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. + :type source: ~azure.mgmt.network.v2018_07_01.models.ConnectivitySource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_07_01.models.ConnectivityDestination + :param protocol: Network protocol. Possible values include: 'Tcp', 'Http', + 'Https', 'Icmp' + :type protocol: str or ~azure.mgmt.network.v2018_07_01.models.Protocol + :param protocol_configuration: + :type protocol_configuration: + ~azure.mgmt.network.v2018_07_01.models.ProtocolConfiguration + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectivitySource'}, + 'destination': {'key': 'destination', 'type': 'ConnectivityDestination'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'protocol_configuration': {'key': 'protocolConfiguration', 'type': 'ProtocolConfiguration'}, + } + + def __init__(self, **kwargs): + super(ConnectivityParameters, self).__init__(**kwargs) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.protocol = kwargs.get('protocol', None) + self.protocol_configuration = kwargs.get('protocol_configuration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_parameters_py3.py new file mode 100644 index 000000000000..4ae25cef08bd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_parameters_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityParameters(Model): + """Parameters that determine how the connectivity check will be performed. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. + :type source: ~azure.mgmt.network.v2018_07_01.models.ConnectivitySource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_07_01.models.ConnectivityDestination + :param protocol: Network protocol. Possible values include: 'Tcp', 'Http', + 'Https', 'Icmp' + :type protocol: str or ~azure.mgmt.network.v2018_07_01.models.Protocol + :param protocol_configuration: + :type protocol_configuration: + ~azure.mgmt.network.v2018_07_01.models.ProtocolConfiguration + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectivitySource'}, + 'destination': {'key': 'destination', 'type': 'ConnectivityDestination'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'protocol_configuration': {'key': 'protocolConfiguration', 'type': 'ProtocolConfiguration'}, + } + + def __init__(self, *, source, destination, protocol=None, protocol_configuration=None, **kwargs) -> None: + super(ConnectivityParameters, self).__init__(**kwargs) + self.source = source + self.destination = destination + self.protocol = protocol + self.protocol_configuration = protocol_configuration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_source.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_source.py new file mode 100644 index 000000000000..3fd82793f8d7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_source.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivitySource(Model): + """Parameters that define the source of the connection. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource from which a + connectivity check will be initiated. + :type resource_id: str + :param port: The source port from which a connectivity check will be + performed. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivitySource, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_source_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_source_py3.py new file mode 100644 index 000000000000..f7833d1bef76 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/connectivity_source_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivitySource(Model): + """Parameters that define the source of the connection. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource from which a + connectivity check will be initiated. + :type resource_id: str + :param port: The source port from which a connectivity check will be + performed. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str, port: int=None, **kwargs) -> None: + super(ConnectivitySource, self).__init__(**kwargs) + self.resource_id = resource_id + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan.py new file mode 100644 index 000000000000..7cb918a35429 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DdosProtectionPlan(Model): + """A DDoS protection plan in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the DDoS protection + plan resource. It uniquely identifies the resource, even if the user + changes its name or migrate the resource across subscriptions or resource + groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the DDoS protection + plan resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', + and 'Failed'. + :vartype provisioning_state: str + :ivar virtual_networks: The list of virtual networks associated with the + DDoS protection plan resource. This list is read-only. + :vartype virtual_networks: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_networks': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_networks': {'key': 'properties.virtualNetworks', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DdosProtectionPlan, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.resource_guid = None + self.provisioning_state = None + self.virtual_networks = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan_paged.py new file mode 100644 index 000000000000..3e8b37de7046 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DdosProtectionPlanPaged(Paged): + """ + A paging container for iterating over a list of :class:`DdosProtectionPlan ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DdosProtectionPlan]'} + } + + def __init__(self, *args, **kwargs): + + super(DdosProtectionPlanPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan_py3.py new file mode 100644 index 000000000000..a94d570dbb98 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ddos_protection_plan_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DdosProtectionPlan(Model): + """A DDoS protection plan in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the DDoS protection + plan resource. It uniquely identifies the resource, even if the user + changes its name or migrate the resource across subscriptions or resource + groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the DDoS protection + plan resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', + and 'Failed'. + :vartype provisioning_state: str + :ivar virtual_networks: The list of virtual networks associated with the + DDoS protection plan resource. This list is read-only. + :vartype virtual_networks: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_networks': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_networks': {'key': 'properties.virtualNetworks', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, location: str=None, tags=None, **kwargs) -> None: + super(DdosProtectionPlan, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = location + self.tags = tags + self.resource_guid = None + self.provisioning_state = None + self.virtual_networks = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/device_properties.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/device_properties.py new file mode 100644 index 000000000000..8a1653ad020b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/device_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeviceProperties(Model): + """List of properties of the device. + + :param device_vendor: Name of the device Vendor. + :type device_vendor: str + :param device_model: Model of the device. + :type device_model: str + :param link_speed_in_mbps: Link speed. + :type link_speed_in_mbps: int + """ + + _attribute_map = { + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_model': {'key': 'deviceModel', 'type': 'str'}, + 'link_speed_in_mbps': {'key': 'linkSpeedInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(DeviceProperties, self).__init__(**kwargs) + self.device_vendor = kwargs.get('device_vendor', None) + self.device_model = kwargs.get('device_model', None) + self.link_speed_in_mbps = kwargs.get('link_speed_in_mbps', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/device_properties_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/device_properties_py3.py new file mode 100644 index 000000000000..03d9850cbf21 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/device_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeviceProperties(Model): + """List of properties of the device. + + :param device_vendor: Name of the device Vendor. + :type device_vendor: str + :param device_model: Model of the device. + :type device_model: str + :param link_speed_in_mbps: Link speed. + :type link_speed_in_mbps: int + """ + + _attribute_map = { + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_model': {'key': 'deviceModel', 'type': 'str'}, + 'link_speed_in_mbps': {'key': 'linkSpeedInMbps', 'type': 'int'}, + } + + def __init__(self, *, device_vendor: str=None, device_model: str=None, link_speed_in_mbps: int=None, **kwargs) -> None: + super(DeviceProperties, self).__init__(**kwargs) + self.device_vendor = device_vendor + self.device_model = device_model + self.link_speed_in_mbps = link_speed_in_mbps diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dhcp_options.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dhcp_options.py new file mode 100644 index 000000000000..93b68a7f037c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dhcp_options.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DhcpOptions(Model): + """DhcpOptions contains an array of DNS servers available to VMs deployed in + the virtual network. Standard DHCP option for a subnet overrides VNET DHCP + options. + + :param dns_servers: The list of DNS servers IP addresses. + :type dns_servers: list[str] + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(DhcpOptions, self).__init__(**kwargs) + self.dns_servers = kwargs.get('dns_servers', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dhcp_options_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dhcp_options_py3.py new file mode 100644 index 000000000000..7dc4651973a5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dhcp_options_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DhcpOptions(Model): + """DhcpOptions contains an array of DNS servers available to VMs deployed in + the virtual network. Standard DHCP option for a subnet overrides VNET DHCP + options. + + :param dns_servers: The list of DNS servers IP addresses. + :type dns_servers: list[str] + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + } + + def __init__(self, *, dns_servers=None, **kwargs) -> None: + super(DhcpOptions, self).__init__(**kwargs) + self.dns_servers = dns_servers diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dimension.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dimension.py new file mode 100644 index 000000000000..e9c8cd977a54 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dimension.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Dimension(Model): + """Dimension of the metric. + + :param name: The name of the dimension. + :type name: str + :param display_name: The display name of the dimension. + :type display_name: str + :param internal_name: The internal name of the dimension. + :type internal_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'internal_name': {'key': 'internalName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Dimension, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.internal_name = kwargs.get('internal_name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dimension_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dimension_py3.py new file mode 100644 index 000000000000..20743b6424c1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dimension_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Dimension(Model): + """Dimension of the metric. + + :param name: The name of the dimension. + :type name: str + :param display_name: The display name of the dimension. + :type display_name: str + :param internal_name: The internal name of the dimension. + :type internal_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'internal_name': {'key': 'internalName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, internal_name: str=None, **kwargs) -> None: + super(Dimension, self).__init__(**kwargs) + self.name = name + self.display_name = display_name + self.internal_name = internal_name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dns_name_availability_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dns_name_availability_result.py new file mode 100644 index 000000000000..86ba19eb407b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dns_name_availability_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsNameAvailabilityResult(Model): + """Response for the CheckDnsNameAvailability API service call. + + :param available: Domain availability (True/False). + :type available: bool + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(DnsNameAvailabilityResult, self).__init__(**kwargs) + self.available = kwargs.get('available', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dns_name_availability_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dns_name_availability_result_py3.py new file mode 100644 index 000000000000..de0117c27715 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/dns_name_availability_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsNameAvailabilityResult(Model): + """Response for the CheckDnsNameAvailability API service call. + + :param available: Domain availability (True/False). + :type available: bool + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + } + + def __init__(self, *, available: bool=None, **kwargs) -> None: + super(DnsNameAvailabilityResult, self).__init__(**kwargs) + self.available = available diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group.py new file mode 100644 index 000000000000..8c307b6f98df --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroup(Model): + """Effective network security group. + + :param network_security_group: The ID of network security group that is + applied. + :type network_security_group: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param association: Associated resources. + :type association: + ~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityGroupAssociation + :param effective_security_rules: A collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityRule] + :param tag_map: Mapping of tags to list of IP Addresses included within + the tag. + :type tag_map: dict[str, list[str]] + """ + + _attribute_map = { + 'network_security_group': {'key': 'networkSecurityGroup', 'type': 'SubResource'}, + 'association': {'key': 'association', 'type': 'EffectiveNetworkSecurityGroupAssociation'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + 'tag_map': {'key': 'tagMap', 'type': '{[str]}'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group = kwargs.get('network_security_group', None) + self.association = kwargs.get('association', None) + self.effective_security_rules = kwargs.get('effective_security_rules', None) + self.tag_map = kwargs.get('tag_map', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_association.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_association.py new file mode 100644 index 000000000000..1d7294710fca --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_association.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroupAssociation(Model): + """The effective network security group association. + + :param subnet: The ID of the subnet if assigned. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param network_interface: The ID of the network interface if assigned. + :type network_interface: + ~azure.mgmt.network.v2018_07_01.models.SubResource + """ + + _attribute_map = { + 'subnet': {'key': 'subnet', 'type': 'SubResource'}, + 'network_interface': {'key': 'networkInterface', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroupAssociation, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.network_interface = kwargs.get('network_interface', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_association_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_association_py3.py new file mode 100644 index 000000000000..009d8b241459 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_association_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroupAssociation(Model): + """The effective network security group association. + + :param subnet: The ID of the subnet if assigned. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param network_interface: The ID of the network interface if assigned. + :type network_interface: + ~azure.mgmt.network.v2018_07_01.models.SubResource + """ + + _attribute_map = { + 'subnet': {'key': 'subnet', 'type': 'SubResource'}, + 'network_interface': {'key': 'networkInterface', 'type': 'SubResource'}, + } + + def __init__(self, *, subnet=None, network_interface=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroupAssociation, self).__init__(**kwargs) + self.subnet = subnet + self.network_interface = network_interface diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_list_result.py new file mode 100644 index 000000000000..5e68621b5004 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_list_result.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroupListResult(Model): + """Response for list effective network security groups API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective network security groups. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityGroup] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveNetworkSecurityGroup]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroupListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_list_result_py3.py new file mode 100644 index 000000000000..5f694e46dd90 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_list_result_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroupListResult(Model): + """Response for list effective network security groups API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective network security groups. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityGroup] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveNetworkSecurityGroup]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroupListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_py3.py new file mode 100644 index 000000000000..3012fc978eea --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_group_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroup(Model): + """Effective network security group. + + :param network_security_group: The ID of network security group that is + applied. + :type network_security_group: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param association: Associated resources. + :type association: + ~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityGroupAssociation + :param effective_security_rules: A collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityRule] + :param tag_map: Mapping of tags to list of IP Addresses included within + the tag. + :type tag_map: dict[str, list[str]] + """ + + _attribute_map = { + 'network_security_group': {'key': 'networkSecurityGroup', 'type': 'SubResource'}, + 'association': {'key': 'association', 'type': 'EffectiveNetworkSecurityGroupAssociation'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + 'tag_map': {'key': 'tagMap', 'type': '{[str]}'}, + } + + def __init__(self, *, network_security_group=None, association=None, effective_security_rules=None, tag_map=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group = network_security_group + self.association = association + self.effective_security_rules = effective_security_rules + self.tag_map = tag_map diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_rule.py new file mode 100644 index 000000000000..81a2ba1f9c8d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_rule.py @@ -0,0 +1,101 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityRule(Model): + """Effective network security rules. + + :param name: The name of the security rule specified by the user (if + created by the user). + :type name: str + :param protocol: The network protocol this rule applies to. Possible + values are: 'Tcp', 'Udp', and 'All'. Possible values include: 'Tcp', + 'Udp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.EffectiveSecurityRuleProtocol + :param source_port_range: The source port or range. + :type source_port_range: str + :param destination_port_range: The destination port or range. + :type destination_port_range: str + :param source_port_ranges: The source port ranges. Expected values include + a single integer between 0 and 65535, a range using '-' as seperator (e.g. + 100-400), or an asterix (*) + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. Expected + values include a single integer between 0 and 65535, a range using '-' as + seperator (e.g. 100-400), or an asterix (*) + :type destination_port_ranges: list[str] + :param source_address_prefix: The source address prefix. + :type source_address_prefix: str + :param destination_address_prefix: The destination address prefix. + :type destination_address_prefix: str + :param source_address_prefixes: The source address prefixes. Expected + values include CIDR IP ranges, Default Tags (VirtualNetwork, + AureLoadBalancer, Internet), System Tags, and the asterix (*). + :type source_address_prefixes: list[str] + :param destination_address_prefixes: The destination address prefixes. + Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, + AureLoadBalancer, Internet), System Tags, and the asterix (*). + :type destination_address_prefixes: list[str] + :param expanded_source_address_prefix: The expanded source address prefix. + :type expanded_source_address_prefix: list[str] + :param expanded_destination_address_prefix: Expanded destination address + prefix. + :type expanded_destination_address_prefix: list[str] + :param access: Whether network traffic is allowed or denied. Possible + values are: 'Allow' and 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleAccess + :param priority: The priority of the rule. + :type priority: int + :param direction: The direction of the rule. Possible values are: 'Inbound + and Outbound'. Possible values include: 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleDirection + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source_port_range': {'key': 'sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'destinationPortRange', 'type': 'str'}, + 'source_port_ranges': {'key': 'sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'destinationPortRanges', 'type': '[str]'}, + 'source_address_prefix': {'key': 'sourceAddressPrefix', 'type': 'str'}, + 'destination_address_prefix': {'key': 'destinationAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'sourceAddressPrefixes', 'type': '[str]'}, + 'destination_address_prefixes': {'key': 'destinationAddressPrefixes', 'type': '[str]'}, + 'expanded_source_address_prefix': {'key': 'expandedSourceAddressPrefix', 'type': '[str]'}, + 'expanded_destination_address_prefix': {'key': 'expandedDestinationAddressPrefix', 'type': '[str]'}, + 'access': {'key': 'access', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'direction': {'key': 'direction', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol = kwargs.get('protocol', None) + self.source_port_range = kwargs.get('source_port_range', None) + self.destination_port_range = kwargs.get('destination_port_range', None) + self.source_port_ranges = kwargs.get('source_port_ranges', None) + self.destination_port_ranges = kwargs.get('destination_port_ranges', None) + self.source_address_prefix = kwargs.get('source_address_prefix', None) + self.destination_address_prefix = kwargs.get('destination_address_prefix', None) + self.source_address_prefixes = kwargs.get('source_address_prefixes', None) + self.destination_address_prefixes = kwargs.get('destination_address_prefixes', None) + self.expanded_source_address_prefix = kwargs.get('expanded_source_address_prefix', None) + self.expanded_destination_address_prefix = kwargs.get('expanded_destination_address_prefix', None) + self.access = kwargs.get('access', None) + self.priority = kwargs.get('priority', None) + self.direction = kwargs.get('direction', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_rule_py3.py new file mode 100644 index 000000000000..25c629fa565c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_network_security_rule_py3.py @@ -0,0 +1,101 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityRule(Model): + """Effective network security rules. + + :param name: The name of the security rule specified by the user (if + created by the user). + :type name: str + :param protocol: The network protocol this rule applies to. Possible + values are: 'Tcp', 'Udp', and 'All'. Possible values include: 'Tcp', + 'Udp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.EffectiveSecurityRuleProtocol + :param source_port_range: The source port or range. + :type source_port_range: str + :param destination_port_range: The destination port or range. + :type destination_port_range: str + :param source_port_ranges: The source port ranges. Expected values include + a single integer between 0 and 65535, a range using '-' as seperator (e.g. + 100-400), or an asterix (*) + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. Expected + values include a single integer between 0 and 65535, a range using '-' as + seperator (e.g. 100-400), or an asterix (*) + :type destination_port_ranges: list[str] + :param source_address_prefix: The source address prefix. + :type source_address_prefix: str + :param destination_address_prefix: The destination address prefix. + :type destination_address_prefix: str + :param source_address_prefixes: The source address prefixes. Expected + values include CIDR IP ranges, Default Tags (VirtualNetwork, + AureLoadBalancer, Internet), System Tags, and the asterix (*). + :type source_address_prefixes: list[str] + :param destination_address_prefixes: The destination address prefixes. + Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, + AureLoadBalancer, Internet), System Tags, and the asterix (*). + :type destination_address_prefixes: list[str] + :param expanded_source_address_prefix: The expanded source address prefix. + :type expanded_source_address_prefix: list[str] + :param expanded_destination_address_prefix: Expanded destination address + prefix. + :type expanded_destination_address_prefix: list[str] + :param access: Whether network traffic is allowed or denied. Possible + values are: 'Allow' and 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleAccess + :param priority: The priority of the rule. + :type priority: int + :param direction: The direction of the rule. Possible values are: 'Inbound + and Outbound'. Possible values include: 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleDirection + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source_port_range': {'key': 'sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'destinationPortRange', 'type': 'str'}, + 'source_port_ranges': {'key': 'sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'destinationPortRanges', 'type': '[str]'}, + 'source_address_prefix': {'key': 'sourceAddressPrefix', 'type': 'str'}, + 'destination_address_prefix': {'key': 'destinationAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'sourceAddressPrefixes', 'type': '[str]'}, + 'destination_address_prefixes': {'key': 'destinationAddressPrefixes', 'type': '[str]'}, + 'expanded_source_address_prefix': {'key': 'expandedSourceAddressPrefix', 'type': '[str]'}, + 'expanded_destination_address_prefix': {'key': 'expandedDestinationAddressPrefix', 'type': '[str]'}, + 'access': {'key': 'access', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'direction': {'key': 'direction', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, protocol=None, source_port_range: str=None, destination_port_range: str=None, source_port_ranges=None, destination_port_ranges=None, source_address_prefix: str=None, destination_address_prefix: str=None, source_address_prefixes=None, destination_address_prefixes=None, expanded_source_address_prefix=None, expanded_destination_address_prefix=None, access=None, priority: int=None, direction=None, **kwargs) -> None: + super(EffectiveNetworkSecurityRule, self).__init__(**kwargs) + self.name = name + self.protocol = protocol + self.source_port_range = source_port_range + self.destination_port_range = destination_port_range + self.source_port_ranges = source_port_ranges + self.destination_port_ranges = destination_port_ranges + self.source_address_prefix = source_address_prefix + self.destination_address_prefix = destination_address_prefix + self.source_address_prefixes = source_address_prefixes + self.destination_address_prefixes = destination_address_prefixes + self.expanded_source_address_prefix = expanded_source_address_prefix + self.expanded_destination_address_prefix = expanded_destination_address_prefix + self.access = access + self.priority = priority + self.direction = direction diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route.py new file mode 100644 index 000000000000..f4b07d4a75f4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveRoute(Model): + """Effective Route. + + :param name: The name of the user defined route. This is optional. + :type name: str + :param source: Who created the route. Possible values are: 'Unknown', + 'User', 'VirtualNetworkGateway', and 'Default'. Possible values include: + 'Unknown', 'User', 'VirtualNetworkGateway', 'Default' + :type source: str or + ~azure.mgmt.network.v2018_07_01.models.EffectiveRouteSource + :param state: The value of effective route. Possible values are: 'Active' + and 'Invalid'. Possible values include: 'Active', 'Invalid' + :type state: str or + ~azure.mgmt.network.v2018_07_01.models.EffectiveRouteState + :param address_prefix: The address prefixes of the effective routes in + CIDR notation. + :type address_prefix: list[str] + :param next_hop_ip_address: The IP address of the next hop of the + effective route. + :type next_hop_ip_address: list[str] + :param next_hop_type: The type of Azure hop the packet should be sent to. + Possible values are: 'VirtualNetworkGateway', 'VnetLocal', 'Internet', + 'VirtualAppliance', and 'None'. Possible values include: + 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', + 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_07_01.models.RouteNextHopType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'address_prefix': {'key': 'addressPrefix', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': '[str]'}, + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveRoute, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.source = kwargs.get('source', None) + self.state = kwargs.get('state', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.next_hop_type = kwargs.get('next_hop_type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_list_result.py new file mode 100644 index 000000000000..288b360205b6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_list_result.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveRouteListResult(Model): + """Response for list effective route API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective routes. + :type value: list[~azure.mgmt.network.v2018_07_01.models.EffectiveRoute] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveRoute]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveRouteListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_list_result_py3.py new file mode 100644 index 000000000000..e4e42c460dc6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_list_result_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveRouteListResult(Model): + """Response for list effective route API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective routes. + :type value: list[~azure.mgmt.network.v2018_07_01.models.EffectiveRoute] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveRoute]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(EffectiveRouteListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_py3.py new file mode 100644 index 000000000000..7ec71fd15aa0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/effective_route_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveRoute(Model): + """Effective Route. + + :param name: The name of the user defined route. This is optional. + :type name: str + :param source: Who created the route. Possible values are: 'Unknown', + 'User', 'VirtualNetworkGateway', and 'Default'. Possible values include: + 'Unknown', 'User', 'VirtualNetworkGateway', 'Default' + :type source: str or + ~azure.mgmt.network.v2018_07_01.models.EffectiveRouteSource + :param state: The value of effective route. Possible values are: 'Active' + and 'Invalid'. Possible values include: 'Active', 'Invalid' + :type state: str or + ~azure.mgmt.network.v2018_07_01.models.EffectiveRouteState + :param address_prefix: The address prefixes of the effective routes in + CIDR notation. + :type address_prefix: list[str] + :param next_hop_ip_address: The IP address of the next hop of the + effective route. + :type next_hop_ip_address: list[str] + :param next_hop_type: The type of Azure hop the packet should be sent to. + Possible values are: 'VirtualNetworkGateway', 'VnetLocal', 'Internet', + 'VirtualAppliance', and 'None'. Possible values include: + 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', + 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_07_01.models.RouteNextHopType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'address_prefix': {'key': 'addressPrefix', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': '[str]'}, + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, source=None, state=None, address_prefix=None, next_hop_ip_address=None, next_hop_type=None, **kwargs) -> None: + super(EffectiveRoute, self).__init__(**kwargs) + self.name = name + self.source = source + self.state = state + self.address_prefix = address_prefix + self.next_hop_ip_address = next_hop_ip_address + self.next_hop_type = next_hop_type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result.py new file mode 100644 index 000000000000..9ca0e203a834 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result.py @@ -0,0 +1,43 @@ +# 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 .sub_resource import SubResource + + +class EndpointServiceResult(SubResource): + """Endpoint service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Name of the endpoint service. + :vartype name: str + :ivar type: Type of the endpoint service. + :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, **kwargs): + super(EndpointServiceResult, self).__init__(**kwargs) + self.name = None + self.type = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result_paged.py new file mode 100644 index 000000000000..0f069f3ddb6d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class EndpointServiceResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`EndpointServiceResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[EndpointServiceResult]'} + } + + def __init__(self, *args, **kwargs): + + super(EndpointServiceResultPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result_py3.py new file mode 100644 index 000000000000..489a2a2681ca --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/endpoint_service_result_py3.py @@ -0,0 +1,43 @@ +# 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 .sub_resource_py3 import SubResource + + +class EndpointServiceResult(SubResource): + """Endpoint service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Name of the endpoint service. + :vartype name: str + :ivar type: Type of the endpoint service. + :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(EndpointServiceResult, self).__init__(id=id, **kwargs) + self.name = None + self.type = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error.py new file mode 100644 index 000000000000..1ae0796f4e5b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error.py @@ -0,0 +1,57 @@ +# 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 + + +class Error(Model): + """Error. + + :param code: + :type code: str + :param message: + :type message: str + :param target: + :type target: str + :param details: + :type details: list[~azure.mgmt.network.v2018_07_01.models.ErrorDetails] + :param inner_error: + :type inner_error: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorDetails]'}, + 'inner_error': {'key': 'innerError', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Error, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.target = kwargs.get('target', None) + self.details = kwargs.get('details', None) + self.inner_error = kwargs.get('inner_error', None) + + +class ErrorException(HttpOperationError): + """Server responsed with exception of type: 'Error'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorException, self).__init__(deserialize, response, 'Error', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_details.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_details.py new file mode 100644 index 000000000000..a8c4da6ba955 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_details.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorDetails(Model): + """ErrorDetails. + + :param code: + :type code: str + :param target: + :type target: str + :param message: + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ErrorDetails, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.target = kwargs.get('target', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_details_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_details_py3.py new file mode 100644 index 000000000000..d791f0895345 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_details_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorDetails(Model): + """ErrorDetails. + + :param code: + :type code: str + :param target: + :type target: str + :param message: + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, target: str=None, message: str=None, **kwargs) -> None: + super(ErrorDetails, self).__init__(**kwargs) + self.code = code + self.target = target + self.message = message diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_py3.py new file mode 100644 index 000000000000..9bf2504d2492 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_py3.py @@ -0,0 +1,57 @@ +# 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 + + +class Error(Model): + """Error. + + :param code: + :type code: str + :param message: + :type message: str + :param target: + :type target: str + :param details: + :type details: list[~azure.mgmt.network.v2018_07_01.models.ErrorDetails] + :param inner_error: + :type inner_error: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorDetails]'}, + 'inner_error': {'key': 'innerError', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, message: str=None, target: str=None, details=None, inner_error: str=None, **kwargs) -> None: + super(Error, self).__init__(**kwargs) + self.code = code + self.message = message + self.target = target + self.details = details + self.inner_error = inner_error + + +class ErrorException(HttpOperationError): + """Server responsed with exception of type: 'Error'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorException, self).__init__(deserialize, response, 'Error', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_response.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_response.py new file mode 100644 index 000000000000..e272c9edbe6e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_response.py @@ -0,0 +1,41 @@ +# 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 + + +class ErrorResponse(Model): + """The error object. + + :param error: Error. + :type error: ~azure.mgmt.network.v2018_07_01.models.ErrorDetails + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorDetails'}, + } + + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.error = kwargs.get('error', None) + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_response_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_response_py3.py new file mode 100644 index 000000000000..7b9c92812733 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/error_response_py3.py @@ -0,0 +1,41 @@ +# 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 + + +class ErrorResponse(Model): + """The error object. + + :param error: Error. + :type error: ~azure.mgmt.network.v2018_07_01.models.ErrorDetails + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorDetails'}, + } + + def __init__(self, *, error=None, **kwargs) -> None: + super(ErrorResponse, self).__init__(**kwargs) + self.error = error + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/evaluated_network_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/evaluated_network_security_group.py new file mode 100644 index 000000000000..d1aa368a44cd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/evaluated_network_security_group.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EvaluatedNetworkSecurityGroup(Model): + """Results of network security group evaluation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_security_group_id: Network security group ID. + :type network_security_group_id: str + :param matched_rule: + :type matched_rule: ~azure.mgmt.network.v2018_07_01.models.MatchedRule + :ivar rules_evaluation_result: List of network security rules evaluation + results. + :vartype rules_evaluation_result: + list[~azure.mgmt.network.v2018_07_01.models.NetworkSecurityRulesEvaluationResult] + """ + + _validation = { + 'rules_evaluation_result': {'readonly': True}, + } + + _attribute_map = { + 'network_security_group_id': {'key': 'networkSecurityGroupId', 'type': 'str'}, + 'matched_rule': {'key': 'matchedRule', 'type': 'MatchedRule'}, + 'rules_evaluation_result': {'key': 'rulesEvaluationResult', 'type': '[NetworkSecurityRulesEvaluationResult]'}, + } + + def __init__(self, **kwargs): + super(EvaluatedNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group_id = kwargs.get('network_security_group_id', None) + self.matched_rule = kwargs.get('matched_rule', None) + self.rules_evaluation_result = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/evaluated_network_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/evaluated_network_security_group_py3.py new file mode 100644 index 000000000000..0a3536e50f5a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/evaluated_network_security_group_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EvaluatedNetworkSecurityGroup(Model): + """Results of network security group evaluation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_security_group_id: Network security group ID. + :type network_security_group_id: str + :param matched_rule: + :type matched_rule: ~azure.mgmt.network.v2018_07_01.models.MatchedRule + :ivar rules_evaluation_result: List of network security rules evaluation + results. + :vartype rules_evaluation_result: + list[~azure.mgmt.network.v2018_07_01.models.NetworkSecurityRulesEvaluationResult] + """ + + _validation = { + 'rules_evaluation_result': {'readonly': True}, + } + + _attribute_map = { + 'network_security_group_id': {'key': 'networkSecurityGroupId', 'type': 'str'}, + 'matched_rule': {'key': 'matchedRule', 'type': 'MatchedRule'}, + 'rules_evaluation_result': {'key': 'rulesEvaluationResult', 'type': '[NetworkSecurityRulesEvaluationResult]'}, + } + + def __init__(self, *, network_security_group_id: str=None, matched_rule=None, **kwargs) -> None: + super(EvaluatedNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group_id = network_security_group_id + self.matched_rule = matched_rule + self.rules_evaluation_result = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit.py new file mode 100644 index 000000000000..5465899a5bbf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit.py @@ -0,0 +1,111 @@ +# 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 .resource import Resource + + +class ExpressRouteCircuit(Resource): + """ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The SKU. + :type sku: ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitSku + :param allow_classic_operations: Allow classic operations + :type allow_classic_operations: bool + :param circuit_provisioning_state: The CircuitProvisioningState state of + the resource. + :type circuit_provisioning_state: str + :param service_provider_provisioning_state: The + ServiceProviderProvisioningState state of the resource. Possible values + are 'NotProvisioned', 'Provisioning', 'Provisioned', and 'Deprovisioning'. + Possible values include: 'NotProvisioned', 'Provisioning', 'Provisioned', + 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ServiceProviderProvisioningState + :param authorizations: The list of authorizations. + :type authorizations: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitAuthorization] + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering] + :param service_key: The ServiceKey. + :type service_key: str + :param service_provider_notes: The ServiceProviderNotes. + :type service_provider_notes: str + :param service_provider_properties: The ServiceProviderProperties. + :type service_provider_properties: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitServiceProviderProperties + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param allow_global_reach: Flag to enable Global Reach on the circuit. + :type allow_global_reach: bool + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'ExpressRouteCircuitSku'}, + 'allow_classic_operations': {'key': 'properties.allowClassicOperations', 'type': 'bool'}, + 'circuit_provisioning_state': {'key': 'properties.circuitProvisioningState', 'type': 'str'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'authorizations': {'key': 'properties.authorizations', 'type': '[ExpressRouteCircuitAuthorization]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'service_key': {'key': 'properties.serviceKey', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'service_provider_properties': {'key': 'properties.serviceProviderProperties', 'type': 'ExpressRouteCircuitServiceProviderProperties'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'allow_global_reach': {'key': 'properties.allowGlobalReach', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuit, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.allow_classic_operations = kwargs.get('allow_classic_operations', None) + self.circuit_provisioning_state = kwargs.get('circuit_provisioning_state', None) + self.service_provider_provisioning_state = kwargs.get('service_provider_provisioning_state', None) + self.authorizations = kwargs.get('authorizations', None) + self.peerings = kwargs.get('peerings', None) + self.service_key = kwargs.get('service_key', None) + self.service_provider_notes = kwargs.get('service_provider_notes', None) + self.service_provider_properties = kwargs.get('service_provider_properties', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.allow_global_reach = kwargs.get('allow_global_reach', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_arp_table.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_arp_table.py new file mode 100644 index 000000000000..ed7864d35e09 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_arp_table.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitArpTable(Model): + """The ARP table associated with the ExpressRouteCircuit. + + :param age: Entry age in minutes + :type age: int + :param interface: Interface address + :type interface: str + :param ip_address: The IP address. + :type ip_address: str + :param mac_address: The MAC address. + :type mac_address: str + """ + + _attribute_map = { + 'age': {'key': 'age', 'type': 'int'}, + 'interface': {'key': 'interface', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'mac_address': {'key': 'macAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitArpTable, self).__init__(**kwargs) + self.age = kwargs.get('age', None) + self.interface = kwargs.get('interface', None) + self.ip_address = kwargs.get('ip_address', None) + self.mac_address = kwargs.get('mac_address', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_arp_table_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_arp_table_py3.py new file mode 100644 index 000000000000..e8c637a092d4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_arp_table_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitArpTable(Model): + """The ARP table associated with the ExpressRouteCircuit. + + :param age: Entry age in minutes + :type age: int + :param interface: Interface address + :type interface: str + :param ip_address: The IP address. + :type ip_address: str + :param mac_address: The MAC address. + :type mac_address: str + """ + + _attribute_map = { + 'age': {'key': 'age', 'type': 'int'}, + 'interface': {'key': 'interface', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'mac_address': {'key': 'macAddress', 'type': 'str'}, + } + + def __init__(self, *, age: int=None, interface: str=None, ip_address: str=None, mac_address: str=None, **kwargs) -> None: + super(ExpressRouteCircuitArpTable, self).__init__(**kwargs) + self.age = age + self.interface = interface + self.ip_address = ip_address + self.mac_address = mac_address diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization.py new file mode 100644 index 000000000000..4105987a77fa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization.py @@ -0,0 +1,60 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteCircuitAuthorization(SubResource): + """Authorization in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param authorization_key: The authorization key. + :type authorization_key: str + :param authorization_use_status: AuthorizationUseStatus. Possible values + are: 'Available' and 'InUse'. Possible values include: 'Available', + 'InUse' + :type authorization_use_status: str or + ~azure.mgmt.network.v2018_07_01.models.AuthorizationUseStatus + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'authorization_use_status': {'key': 'properties.authorizationUseStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitAuthorization, self).__init__(**kwargs) + self.authorization_key = kwargs.get('authorization_key', None) + self.authorization_use_status = kwargs.get('authorization_use_status', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization_paged.py new file mode 100644 index 000000000000..0198e94af491 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCircuitAuthorizationPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuitAuthorization ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuitAuthorization]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitAuthorizationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization_py3.py new file mode 100644 index 000000000000..482f37e3f722 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_authorization_py3.py @@ -0,0 +1,60 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteCircuitAuthorization(SubResource): + """Authorization in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param authorization_key: The authorization key. + :type authorization_key: str + :param authorization_use_status: AuthorizationUseStatus. Possible values + are: 'Available' and 'InUse'. Possible values include: 'Available', + 'InUse' + :type authorization_use_status: str or + ~azure.mgmt.network.v2018_07_01.models.AuthorizationUseStatus + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'authorization_use_status': {'key': 'properties.authorizationUseStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, authorization_key: str=None, authorization_use_status=None, provisioning_state: str=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitAuthorization, self).__init__(id=id, **kwargs) + self.authorization_key = authorization_key + self.authorization_use_status = authorization_use_status + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_connection.py new file mode 100644 index 000000000000..cdde179cf634 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_connection.py @@ -0,0 +1,80 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteCircuitConnection(SubResource): + """Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param express_route_circuit_peering: Reference to Express Route Circuit + Private Peering Resource of the circuit initiating connection. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param peer_express_route_circuit_peering: Reference to Express Route + Circuit Private Peering Resource of the peered circuit. + :type peer_express_route_circuit_peering: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param address_prefix: /29 IP address space to carve out Customer + addresses for tunnels. + :type address_prefix: str + :param authorization_key: The authorization key. + :type authorization_key: str + :ivar circuit_connection_status: Express Route Circuit Connection State. + Possible values are: 'Connected' and 'Disconnected'. Possible values + include: 'Connected', 'Connecting', 'Disconnected' + :vartype circuit_connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.CircuitConnectionStatus + :ivar provisioning_state: Provisioning state of the circuit connection + resource. Possible values are: 'Succeded', 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'circuit_connection_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'SubResource'}, + 'peer_express_route_circuit_peering': {'key': 'properties.peerExpressRouteCircuitPeering', 'type': 'SubResource'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'circuit_connection_status': {'key': 'properties.circuitConnectionStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitConnection, self).__init__(**kwargs) + self.express_route_circuit_peering = kwargs.get('express_route_circuit_peering', None) + self.peer_express_route_circuit_peering = kwargs.get('peer_express_route_circuit_peering', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.authorization_key = kwargs.get('authorization_key', None) + self.circuit_connection_status = None + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_connection_py3.py new file mode 100644 index 000000000000..190675dd2a06 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_connection_py3.py @@ -0,0 +1,80 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteCircuitConnection(SubResource): + """Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param express_route_circuit_peering: Reference to Express Route Circuit + Private Peering Resource of the circuit initiating connection. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param peer_express_route_circuit_peering: Reference to Express Route + Circuit Private Peering Resource of the peered circuit. + :type peer_express_route_circuit_peering: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param address_prefix: /29 IP address space to carve out Customer + addresses for tunnels. + :type address_prefix: str + :param authorization_key: The authorization key. + :type authorization_key: str + :ivar circuit_connection_status: Express Route Circuit Connection State. + Possible values are: 'Connected' and 'Disconnected'. Possible values + include: 'Connected', 'Connecting', 'Disconnected' + :vartype circuit_connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.CircuitConnectionStatus + :ivar provisioning_state: Provisioning state of the circuit connection + resource. Possible values are: 'Succeded', 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'circuit_connection_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'SubResource'}, + 'peer_express_route_circuit_peering': {'key': 'properties.peerExpressRouteCircuitPeering', 'type': 'SubResource'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'circuit_connection_status': {'key': 'properties.circuitConnectionStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, express_route_circuit_peering=None, peer_express_route_circuit_peering=None, address_prefix: str=None, authorization_key: str=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitConnection, self).__init__(id=id, **kwargs) + self.express_route_circuit_peering = express_route_circuit_peering + self.peer_express_route_circuit_peering = peer_express_route_circuit_peering + self.address_prefix = address_prefix + self.authorization_key = authorization_key + self.circuit_connection_status = None + self.provisioning_state = None + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_paged.py new file mode 100644 index 000000000000..b7abc33ff9c3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCircuitPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuit ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuit]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering.py new file mode 100644 index 000000000000..eddc95ac6112 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering.py @@ -0,0 +1,128 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteCircuitPeering(SubResource): + """Peering in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRoutePeeringState + :param azure_asn: The Azure ASN. + :type azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param primary_azure_port: The primary port. + :type primary_azure_port: str + :param secondary_azure_port: The secondary port. + :type secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringConfig + :param stats: Gets peering stats. + :type stats: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitStats + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param last_modified_by: Gets whether the provider or the customer last + modified the peering. + :type last_modified_by: str + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2018_07_01.models.RouteFilter + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2018_07_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param connections: The list of circuit connections associated with Azure + Private Peering for this circuit. + :type connections: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitConnection] + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'stats': {'key': 'properties.stats', 'type': 'ExpressRouteCircuitStats'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'route_filter': {'key': 'properties.routeFilter', 'type': 'RouteFilter'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'connections': {'key': 'properties.connections', 'type': '[ExpressRouteCircuitConnection]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitPeering, self).__init__(**kwargs) + self.peering_type = kwargs.get('peering_type', None) + self.state = kwargs.get('state', None) + self.azure_asn = kwargs.get('azure_asn', None) + self.peer_asn = kwargs.get('peer_asn', None) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.primary_azure_port = kwargs.get('primary_azure_port', None) + self.secondary_azure_port = kwargs.get('secondary_azure_port', None) + self.shared_key = kwargs.get('shared_key', None) + self.vlan_id = kwargs.get('vlan_id', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.stats = kwargs.get('stats', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.last_modified_by = kwargs.get('last_modified_by', None) + self.route_filter = kwargs.get('route_filter', None) + self.ipv6_peering_config = kwargs.get('ipv6_peering_config', None) + self.connections = kwargs.get('connections', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_config.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_config.py new file mode 100644 index 000000000000..5b617175d797 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_config.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitPeeringConfig(Model): + """Specifies the peering configuration. + + :param advertised_public_prefixes: The reference of + AdvertisedPublicPrefixes. + :type advertised_public_prefixes: list[str] + :param advertised_communities: The communities of bgp peering. Spepcified + for microsoft peering + :type advertised_communities: list[str] + :param advertised_public_prefixes_state: AdvertisedPublicPrefixState of + the Peering resource. Possible values are 'NotConfigured', 'Configuring', + 'Configured', and 'ValidationNeeded'. Possible values include: + 'NotConfigured', 'Configuring', 'Configured', 'ValidationNeeded' + :type advertised_public_prefixes_state: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringAdvertisedPublicPrefixState + :param legacy_mode: The legacy mode of the peering. + :type legacy_mode: int + :param customer_asn: The CustomerASN of the peering. + :type customer_asn: int + :param routing_registry_name: The RoutingRegistryName of the + configuration. + :type routing_registry_name: str + """ + + _attribute_map = { + 'advertised_public_prefixes': {'key': 'advertisedPublicPrefixes', 'type': '[str]'}, + 'advertised_communities': {'key': 'advertisedCommunities', 'type': '[str]'}, + 'advertised_public_prefixes_state': {'key': 'advertisedPublicPrefixesState', 'type': 'str'}, + 'legacy_mode': {'key': 'legacyMode', 'type': 'int'}, + 'customer_asn': {'key': 'customerASN', 'type': 'int'}, + 'routing_registry_name': {'key': 'routingRegistryName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.advertised_public_prefixes = kwargs.get('advertised_public_prefixes', None) + self.advertised_communities = kwargs.get('advertised_communities', None) + self.advertised_public_prefixes_state = kwargs.get('advertised_public_prefixes_state', None) + self.legacy_mode = kwargs.get('legacy_mode', None) + self.customer_asn = kwargs.get('customer_asn', None) + self.routing_registry_name = kwargs.get('routing_registry_name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_config_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_config_py3.py new file mode 100644 index 000000000000..6903aae45815 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_config_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitPeeringConfig(Model): + """Specifies the peering configuration. + + :param advertised_public_prefixes: The reference of + AdvertisedPublicPrefixes. + :type advertised_public_prefixes: list[str] + :param advertised_communities: The communities of bgp peering. Spepcified + for microsoft peering + :type advertised_communities: list[str] + :param advertised_public_prefixes_state: AdvertisedPublicPrefixState of + the Peering resource. Possible values are 'NotConfigured', 'Configuring', + 'Configured', and 'ValidationNeeded'. Possible values include: + 'NotConfigured', 'Configuring', 'Configured', 'ValidationNeeded' + :type advertised_public_prefixes_state: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringAdvertisedPublicPrefixState + :param legacy_mode: The legacy mode of the peering. + :type legacy_mode: int + :param customer_asn: The CustomerASN of the peering. + :type customer_asn: int + :param routing_registry_name: The RoutingRegistryName of the + configuration. + :type routing_registry_name: str + """ + + _attribute_map = { + 'advertised_public_prefixes': {'key': 'advertisedPublicPrefixes', 'type': '[str]'}, + 'advertised_communities': {'key': 'advertisedCommunities', 'type': '[str]'}, + 'advertised_public_prefixes_state': {'key': 'advertisedPublicPrefixesState', 'type': 'str'}, + 'legacy_mode': {'key': 'legacyMode', 'type': 'int'}, + 'customer_asn': {'key': 'customerASN', 'type': 'int'}, + 'routing_registry_name': {'key': 'routingRegistryName', 'type': 'str'}, + } + + def __init__(self, *, advertised_public_prefixes=None, advertised_communities=None, advertised_public_prefixes_state=None, legacy_mode: int=None, customer_asn: int=None, routing_registry_name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.advertised_public_prefixes = advertised_public_prefixes + self.advertised_communities = advertised_communities + self.advertised_public_prefixes_state = advertised_public_prefixes_state + self.legacy_mode = legacy_mode + self.customer_asn = customer_asn + self.routing_registry_name = routing_registry_name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_paged.py new file mode 100644 index 000000000000..c14d248cfe2c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCircuitPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuitPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuitPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitPeeringPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_py3.py new file mode 100644 index 000000000000..c6666b73bab7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_peering_py3.py @@ -0,0 +1,128 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteCircuitPeering(SubResource): + """Peering in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRoutePeeringState + :param azure_asn: The Azure ASN. + :type azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param primary_azure_port: The primary port. + :type primary_azure_port: str + :param secondary_azure_port: The secondary port. + :type secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringConfig + :param stats: Gets peering stats. + :type stats: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitStats + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param last_modified_by: Gets whether the provider or the customer last + modified the peering. + :type last_modified_by: str + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2018_07_01.models.RouteFilter + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2018_07_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param connections: The list of circuit connections associated with Azure + Private Peering for this circuit. + :type connections: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitConnection] + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'stats': {'key': 'properties.stats', 'type': 'ExpressRouteCircuitStats'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'route_filter': {'key': 'properties.routeFilter', 'type': 'RouteFilter'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'connections': {'key': 'properties.connections', 'type': '[ExpressRouteCircuitConnection]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, peering_type=None, state=None, azure_asn: int=None, peer_asn: int=None, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, primary_azure_port: str=None, secondary_azure_port: str=None, shared_key: str=None, vlan_id: int=None, microsoft_peering_config=None, stats=None, provisioning_state: str=None, gateway_manager_etag: str=None, last_modified_by: str=None, route_filter=None, ipv6_peering_config=None, connections=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitPeering, self).__init__(id=id, **kwargs) + self.peering_type = peering_type + self.state = state + self.azure_asn = azure_asn + self.peer_asn = peer_asn + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.primary_azure_port = primary_azure_port + self.secondary_azure_port = secondary_azure_port + self.shared_key = shared_key + self.vlan_id = vlan_id + self.microsoft_peering_config = microsoft_peering_config + self.stats = stats + self.provisioning_state = provisioning_state + self.gateway_manager_etag = gateway_manager_etag + self.last_modified_by = last_modified_by + self.route_filter = route_filter + self.ipv6_peering_config = ipv6_peering_config + self.connections = connections + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_py3.py new file mode 100644 index 000000000000..5bf7f80f5dcf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_py3.py @@ -0,0 +1,111 @@ +# 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 .resource_py3 import Resource + + +class ExpressRouteCircuit(Resource): + """ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The SKU. + :type sku: ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitSku + :param allow_classic_operations: Allow classic operations + :type allow_classic_operations: bool + :param circuit_provisioning_state: The CircuitProvisioningState state of + the resource. + :type circuit_provisioning_state: str + :param service_provider_provisioning_state: The + ServiceProviderProvisioningState state of the resource. Possible values + are 'NotProvisioned', 'Provisioning', 'Provisioned', and 'Deprovisioning'. + Possible values include: 'NotProvisioned', 'Provisioning', 'Provisioned', + 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ServiceProviderProvisioningState + :param authorizations: The list of authorizations. + :type authorizations: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitAuthorization] + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering] + :param service_key: The ServiceKey. + :type service_key: str + :param service_provider_notes: The ServiceProviderNotes. + :type service_provider_notes: str + :param service_provider_properties: The ServiceProviderProperties. + :type service_provider_properties: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitServiceProviderProperties + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param allow_global_reach: Flag to enable Global Reach on the circuit. + :type allow_global_reach: bool + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'ExpressRouteCircuitSku'}, + 'allow_classic_operations': {'key': 'properties.allowClassicOperations', 'type': 'bool'}, + 'circuit_provisioning_state': {'key': 'properties.circuitProvisioningState', 'type': 'str'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'authorizations': {'key': 'properties.authorizations', 'type': '[ExpressRouteCircuitAuthorization]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'service_key': {'key': 'properties.serviceKey', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'service_provider_properties': {'key': 'properties.serviceProviderProperties', 'type': 'ExpressRouteCircuitServiceProviderProperties'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'allow_global_reach': {'key': 'properties.allowGlobalReach', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, allow_classic_operations: bool=None, circuit_provisioning_state: str=None, service_provider_provisioning_state=None, authorizations=None, peerings=None, service_key: str=None, service_provider_notes: str=None, service_provider_properties=None, provisioning_state: str=None, gateway_manager_etag: str=None, allow_global_reach: bool=None, **kwargs) -> None: + super(ExpressRouteCircuit, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.allow_classic_operations = allow_classic_operations + self.circuit_provisioning_state = circuit_provisioning_state + self.service_provider_provisioning_state = service_provider_provisioning_state + self.authorizations = authorizations + self.peerings = peerings + self.service_key = service_key + self.service_provider_notes = service_provider_notes + self.service_provider_properties = service_provider_properties + self.provisioning_state = provisioning_state + self.gateway_manager_etag = gateway_manager_etag + self.allow_global_reach = allow_global_reach + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_reference.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_reference.py new file mode 100644 index 000000000000..63275cc15917 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_reference.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitReference(Model): + """ExpressRouteCircuitReference. + + :param id: Corresponding Express Route Circuit Id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_reference_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_reference_py3.py new file mode 100644 index 000000000000..7f6880552144 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_reference_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitReference(Model): + """ExpressRouteCircuitReference. + + :param id: Corresponding Express Route Circuit Id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ExpressRouteCircuitReference, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table.py new file mode 100644 index 000000000000..5150924765f9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitRoutesTable(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param network: IP address of a network entity + :type network: str + :param next_hop: NextHop address + :type next_hop: str + :param loc_prf: Local preference value as set with the set + local-preference route-map configuration command + :type loc_prf: str + :param weight: Route Weight. + :type weight: int + :param path: Autonomous system paths to the destination network. + :type path: str + """ + + _attribute_map = { + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'loc_prf': {'key': 'locPrf', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + 'path': {'key': 'path', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitRoutesTable, self).__init__(**kwargs) + self.network = kwargs.get('network', None) + self.next_hop = kwargs.get('next_hop', None) + self.loc_prf = kwargs.get('loc_prf', None) + self.weight = kwargs.get('weight', None) + self.path = kwargs.get('path', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_py3.py new file mode 100644 index 000000000000..3b5829937b83 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitRoutesTable(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param network: IP address of a network entity + :type network: str + :param next_hop: NextHop address + :type next_hop: str + :param loc_prf: Local preference value as set with the set + local-preference route-map configuration command + :type loc_prf: str + :param weight: Route Weight. + :type weight: int + :param path: Autonomous system paths to the destination network. + :type path: str + """ + + _attribute_map = { + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'loc_prf': {'key': 'locPrf', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + 'path': {'key': 'path', 'type': 'str'}, + } + + def __init__(self, *, network: str=None, next_hop: str=None, loc_prf: str=None, weight: int=None, path: str=None, **kwargs) -> None: + super(ExpressRouteCircuitRoutesTable, self).__init__(**kwargs) + self.network = network + self.next_hop = next_hop + self.loc_prf = loc_prf + self.weight = weight + self.path = path diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_summary.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_summary.py new file mode 100644 index 000000000000..1f398383a9f0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_summary.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of the neighbor. + :type neighbor: str + :param v: BGP version number spoken to the neighbor. + :type v: int + :param as_property: Autonomous system number. + :type as_property: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_pfx_rcd: Current state of the BGP session, and the number of + prefixes that have been received from a neighbor or peer group. + :type state_pfx_rcd: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'v': {'key': 'v', 'type': 'int'}, + 'as_property': {'key': 'as', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_pfx_rcd': {'key': 'statePfxRcd', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = kwargs.get('neighbor', None) + self.v = kwargs.get('v', None) + self.as_property = kwargs.get('as_property', None) + self.up_down = kwargs.get('up_down', None) + self.state_pfx_rcd = kwargs.get('state_pfx_rcd', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_summary_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_summary_py3.py new file mode 100644 index 000000000000..13f52d9951f3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_routes_table_summary_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of the neighbor. + :type neighbor: str + :param v: BGP version number spoken to the neighbor. + :type v: int + :param as_property: Autonomous system number. + :type as_property: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_pfx_rcd: Current state of the BGP session, and the number of + prefixes that have been received from a neighbor or peer group. + :type state_pfx_rcd: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'v': {'key': 'v', 'type': 'int'}, + 'as_property': {'key': 'as', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_pfx_rcd': {'key': 'statePfxRcd', 'type': 'str'}, + } + + def __init__(self, *, neighbor: str=None, v: int=None, as_property: int=None, up_down: str=None, state_pfx_rcd: str=None, **kwargs) -> None: + super(ExpressRouteCircuitRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = neighbor + self.v = v + self.as_property = as_property + self.up_down = up_down + self.state_pfx_rcd = state_pfx_rcd diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_service_provider_properties.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_service_provider_properties.py new file mode 100644 index 000000000000..c51e6d8d653b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_service_provider_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitServiceProviderProperties(Model): + """Contains ServiceProviderProperties in an ExpressRouteCircuit. + + :param service_provider_name: The serviceProviderName. + :type service_provider_name: str + :param peering_location: The peering location. + :type peering_location: str + :param bandwidth_in_mbps: The BandwidthInMbps. + :type bandwidth_in_mbps: int + """ + + _attribute_map = { + 'service_provider_name': {'key': 'serviceProviderName', 'type': 'str'}, + 'peering_location': {'key': 'peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'bandwidthInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitServiceProviderProperties, self).__init__(**kwargs) + self.service_provider_name = kwargs.get('service_provider_name', None) + self.peering_location = kwargs.get('peering_location', None) + self.bandwidth_in_mbps = kwargs.get('bandwidth_in_mbps', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_service_provider_properties_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_service_provider_properties_py3.py new file mode 100644 index 000000000000..ea701a54c3fe --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_service_provider_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitServiceProviderProperties(Model): + """Contains ServiceProviderProperties in an ExpressRouteCircuit. + + :param service_provider_name: The serviceProviderName. + :type service_provider_name: str + :param peering_location: The peering location. + :type peering_location: str + :param bandwidth_in_mbps: The BandwidthInMbps. + :type bandwidth_in_mbps: int + """ + + _attribute_map = { + 'service_provider_name': {'key': 'serviceProviderName', 'type': 'str'}, + 'peering_location': {'key': 'peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'bandwidthInMbps', 'type': 'int'}, + } + + def __init__(self, *, service_provider_name: str=None, peering_location: str=None, bandwidth_in_mbps: int=None, **kwargs) -> None: + super(ExpressRouteCircuitServiceProviderProperties, self).__init__(**kwargs) + self.service_provider_name = service_provider_name + self.peering_location = peering_location + self.bandwidth_in_mbps = bandwidth_in_mbps diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_sku.py new file mode 100644 index 000000000000..0a51cb6834c6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_sku.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitSku(Model): + """Contains SKU in an ExpressRouteCircuit. + + :param name: The name of the SKU. + :type name: str + :param tier: The tier of the SKU. Possible values are 'Standard' and + 'Premium'. Possible values include: 'Standard', 'Premium' + :type tier: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitSkuTier + :param family: The family of the SKU. Possible values are: 'UnlimitedData' + and 'MeteredData'. Possible values include: 'UnlimitedData', 'MeteredData' + :type family: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitSkuFamily + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.family = kwargs.get('family', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_sku_py3.py new file mode 100644 index 000000000000..0f94f7ffce1c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_sku_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitSku(Model): + """Contains SKU in an ExpressRouteCircuit. + + :param name: The name of the SKU. + :type name: str + :param tier: The tier of the SKU. Possible values are 'Standard' and + 'Premium'. Possible values include: 'Standard', 'Premium' + :type tier: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitSkuTier + :param family: The family of the SKU. Possible values are: 'UnlimitedData' + and 'MeteredData'. Possible values include: 'UnlimitedData', 'MeteredData' + :type family: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitSkuFamily + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, tier=None, family=None, **kwargs) -> None: + super(ExpressRouteCircuitSku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.family = family diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_stats.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_stats.py new file mode 100644 index 000000000000..41c45ae2b19a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_stats.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitStats(Model): + """Contains stats associated with the peering. + + :param primarybytes_in: Gets BytesIn of the peering. + :type primarybytes_in: long + :param primarybytes_out: Gets BytesOut of the peering. + :type primarybytes_out: long + :param secondarybytes_in: Gets BytesIn of the peering. + :type secondarybytes_in: long + :param secondarybytes_out: Gets BytesOut of the peering. + :type secondarybytes_out: long + """ + + _attribute_map = { + 'primarybytes_in': {'key': 'primarybytesIn', 'type': 'long'}, + 'primarybytes_out': {'key': 'primarybytesOut', 'type': 'long'}, + 'secondarybytes_in': {'key': 'secondarybytesIn', 'type': 'long'}, + 'secondarybytes_out': {'key': 'secondarybytesOut', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitStats, self).__init__(**kwargs) + self.primarybytes_in = kwargs.get('primarybytes_in', None) + self.primarybytes_out = kwargs.get('primarybytes_out', None) + self.secondarybytes_in = kwargs.get('secondarybytes_in', None) + self.secondarybytes_out = kwargs.get('secondarybytes_out', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_stats_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_stats_py3.py new file mode 100644 index 000000000000..f78335343544 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuit_stats_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitStats(Model): + """Contains stats associated with the peering. + + :param primarybytes_in: Gets BytesIn of the peering. + :type primarybytes_in: long + :param primarybytes_out: Gets BytesOut of the peering. + :type primarybytes_out: long + :param secondarybytes_in: Gets BytesIn of the peering. + :type secondarybytes_in: long + :param secondarybytes_out: Gets BytesOut of the peering. + :type secondarybytes_out: long + """ + + _attribute_map = { + 'primarybytes_in': {'key': 'primarybytesIn', 'type': 'long'}, + 'primarybytes_out': {'key': 'primarybytesOut', 'type': 'long'}, + 'secondarybytes_in': {'key': 'secondarybytesIn', 'type': 'long'}, + 'secondarybytes_out': {'key': 'secondarybytesOut', 'type': 'long'}, + } + + def __init__(self, *, primarybytes_in: int=None, primarybytes_out: int=None, secondarybytes_in: int=None, secondarybytes_out: int=None, **kwargs) -> None: + super(ExpressRouteCircuitStats, self).__init__(**kwargs) + self.primarybytes_in = primarybytes_in + self.primarybytes_out = primarybytes_out + self.secondarybytes_in = secondarybytes_in + self.secondarybytes_out = secondarybytes_out diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_arp_table_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_arp_table_list_result.py new file mode 100644 index 000000000000..55dcf8e703f8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_arp_table_list_result.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsArpTableListResult(Model): + """Response for ListArpTable associated with the Express Route Circuits API. + + :param value: Gets list of the ARP table. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitArpTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitArpTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsArpTableListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_arp_table_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_arp_table_list_result_py3.py new file mode 100644 index 000000000000..d04d438ec830 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_arp_table_list_result_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsArpTableListResult(Model): + """Response for ListArpTable associated with the Express Route Circuits API. + + :param value: Gets list of the ARP table. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitArpTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitArpTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsArpTableListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_list_result.py new file mode 100644 index 000000000000..692bb9903130 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_list_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsRoutesTableListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: The list of routes table. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitRoutesTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsRoutesTableListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_list_result_py3.py new file mode 100644 index 000000000000..bfdb9ab20c15 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_list_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsRoutesTableListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: The list of routes table. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitRoutesTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsRoutesTableListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_summary_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_summary_list_result.py new file mode 100644 index 000000000000..a486c1fb9542 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_summary_list_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitRoutesTableSummary] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_summary_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_summary_list_result_py3.py new file mode 100644 index 000000000000..5a6757e97e90 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_circuits_routes_table_summary_list_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitRoutesTableSummary] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection.py new file mode 100644 index 000000000000..7ae85ce323d5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection.py @@ -0,0 +1,105 @@ +# 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 .resource import Resource + + +class ExpressRouteCrossConnection(Resource): + """ExpressRouteCrossConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar primary_azure_port: The name of the primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The name of the secondary port. + :vartype secondary_azure_port: str + :ivar s_tag: The identifier of the circuit traffic. + :vartype s_tag: int + :param peering_location: The peering location of the ExpressRoute circuit. + :type peering_location: str + :param bandwidth_in_mbps: The circuit bandwidth In Mbps. + :type bandwidth_in_mbps: int + :param express_route_circuit: The ExpressRouteCircuit + :type express_route_circuit: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitReference + :param service_provider_provisioning_state: The provisioning state of the + circuit in the connectivity provider system. Possible values are + 'NotProvisioned', 'Provisioning', 'Provisioned'. Possible values include: + 'NotProvisioned', 'Provisioning', 'Provisioned', 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ServiceProviderProvisioningState + :param service_provider_notes: Additional read only notes set by the + connectivity provider. + :type service_provider_notes: str + :ivar provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPeering] + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 's_tag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 's_tag': {'key': 'properties.sTag', 'type': 'int'}, + 'peering_location': {'key': 'properties.peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'properties.bandwidthInMbps', 'type': 'int'}, + 'express_route_circuit': {'key': 'properties.expressRouteCircuit', 'type': 'ExpressRouteCircuitReference'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCrossConnectionPeering]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnection, self).__init__(**kwargs) + self.primary_azure_port = None + self.secondary_azure_port = None + self.s_tag = None + self.peering_location = kwargs.get('peering_location', None) + self.bandwidth_in_mbps = kwargs.get('bandwidth_in_mbps', None) + self.express_route_circuit = kwargs.get('express_route_circuit', None) + self.service_provider_provisioning_state = kwargs.get('service_provider_provisioning_state', None) + self.service_provider_notes = kwargs.get('service_provider_notes', None) + self.provisioning_state = None + self.peerings = kwargs.get('peerings', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_paged.py new file mode 100644 index 000000000000..4827a52f7cb8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCrossConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCrossConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCrossConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCrossConnectionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering.py new file mode 100644 index 000000000000..cf7555c3a31a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering.py @@ -0,0 +1,117 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteCrossConnectionPeering(SubResource): + """Peering in an ExpressRoute Cross Connection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRoutePeeringState + :ivar azure_asn: The Azure ASN. + :vartype azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :ivar primary_azure_port: The primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The secondary port. + :vartype secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringConfig + :ivar provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param last_modified_by: Gets whether the provider or the customer last + modified the peering. + :type last_modified_by: str + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2018_07_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'azure_asn': {'readonly': True}, + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionPeering, self).__init__(**kwargs) + self.peering_type = kwargs.get('peering_type', None) + self.state = kwargs.get('state', None) + self.azure_asn = None + self.peer_asn = kwargs.get('peer_asn', None) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.primary_azure_port = None + self.secondary_azure_port = None + self.shared_key = kwargs.get('shared_key', None) + self.vlan_id = kwargs.get('vlan_id', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.provisioning_state = None + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.last_modified_by = kwargs.get('last_modified_by', None) + self.ipv6_peering_config = kwargs.get('ipv6_peering_config', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering_paged.py new file mode 100644 index 000000000000..55d11c0c5916 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCrossConnectionPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCrossConnectionPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCrossConnectionPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCrossConnectionPeeringPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering_py3.py new file mode 100644 index 000000000000..b59b1a3958ab --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_peering_py3.py @@ -0,0 +1,117 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteCrossConnectionPeering(SubResource): + """Peering in an ExpressRoute Cross Connection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRoutePeeringState + :ivar azure_asn: The Azure ASN. + :vartype azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :ivar primary_azure_port: The primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The secondary port. + :vartype secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringConfig + :ivar provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param last_modified_by: Gets whether the provider or the customer last + modified the peering. + :type last_modified_by: str + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2018_07_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'azure_asn': {'readonly': True}, + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, peering_type=None, state=None, peer_asn: int=None, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, shared_key: str=None, vlan_id: int=None, microsoft_peering_config=None, gateway_manager_etag: str=None, last_modified_by: str=None, ipv6_peering_config=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionPeering, self).__init__(id=id, **kwargs) + self.peering_type = peering_type + self.state = state + self.azure_asn = None + self.peer_asn = peer_asn + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.primary_azure_port = None + self.secondary_azure_port = None + self.shared_key = shared_key + self.vlan_id = vlan_id + self.microsoft_peering_config = microsoft_peering_config + self.provisioning_state = None + self.gateway_manager_etag = gateway_manager_etag + self.last_modified_by = last_modified_by + self.ipv6_peering_config = ipv6_peering_config + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_py3.py new file mode 100644 index 000000000000..ef46ec6d65c6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_py3.py @@ -0,0 +1,105 @@ +# 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 .resource_py3 import Resource + + +class ExpressRouteCrossConnection(Resource): + """ExpressRouteCrossConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar primary_azure_port: The name of the primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The name of the secondary port. + :vartype secondary_azure_port: str + :ivar s_tag: The identifier of the circuit traffic. + :vartype s_tag: int + :param peering_location: The peering location of the ExpressRoute circuit. + :type peering_location: str + :param bandwidth_in_mbps: The circuit bandwidth In Mbps. + :type bandwidth_in_mbps: int + :param express_route_circuit: The ExpressRouteCircuit + :type express_route_circuit: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitReference + :param service_provider_provisioning_state: The provisioning state of the + circuit in the connectivity provider system. Possible values are + 'NotProvisioned', 'Provisioning', 'Provisioned'. Possible values include: + 'NotProvisioned', 'Provisioning', 'Provisioned', 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ServiceProviderProvisioningState + :param service_provider_notes: Additional read only notes set by the + connectivity provider. + :type service_provider_notes: str + :ivar provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPeering] + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 's_tag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 's_tag': {'key': 'properties.sTag', 'type': 'int'}, + 'peering_location': {'key': 'properties.peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'properties.bandwidthInMbps', 'type': 'int'}, + 'express_route_circuit': {'key': 'properties.expressRouteCircuit', 'type': 'ExpressRouteCircuitReference'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCrossConnectionPeering]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, peering_location: str=None, bandwidth_in_mbps: int=None, express_route_circuit=None, service_provider_provisioning_state=None, service_provider_notes: str=None, peerings=None, **kwargs) -> None: + super(ExpressRouteCrossConnection, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.primary_azure_port = None + self.secondary_azure_port = None + self.s_tag = None + self.peering_location = peering_location + self.bandwidth_in_mbps = bandwidth_in_mbps + self.express_route_circuit = express_route_circuit + self.service_provider_provisioning_state = service_provider_provisioning_state + self.service_provider_notes = service_provider_notes + self.provisioning_state = None + self.peerings = peerings + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_routes_table_summary.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_routes_table_summary.py new file mode 100644 index 000000000000..f6f4ab635293 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_routes_table_summary.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCrossConnectionRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of Neighbor router + :type neighbor: str + :param asn: Autonomous system number. + :type asn: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_or_prefixes_received: Current state of the BGP session, and + the number of prefixes that have been received from a neighbor or peer + group. + :type state_or_prefixes_received: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_or_prefixes_received': {'key': 'stateOrPrefixesReceived', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = kwargs.get('neighbor', None) + self.asn = kwargs.get('asn', None) + self.up_down = kwargs.get('up_down', None) + self.state_or_prefixes_received = kwargs.get('state_or_prefixes_received', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_routes_table_summary_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_routes_table_summary_py3.py new file mode 100644 index 000000000000..cbf47398ba2e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connection_routes_table_summary_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCrossConnectionRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of Neighbor router + :type neighbor: str + :param asn: Autonomous system number. + :type asn: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_or_prefixes_received: Current state of the BGP session, and + the number of prefixes that have been received from a neighbor or peer + group. + :type state_or_prefixes_received: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_or_prefixes_received': {'key': 'stateOrPrefixesReceived', 'type': 'str'}, + } + + def __init__(self, *, neighbor: str=None, asn: int=None, up_down: str=None, state_or_prefixes_received: str=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = neighbor + self.asn = asn + self.up_down = up_down + self.state_or_prefixes_received = state_or_prefixes_received diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connections_routes_table_summary_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connections_routes_table_summary_list_result.py new file mode 100644 index 000000000000..23cf3f170ff3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connections_routes_table_summary_list_result.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCrossConnectionsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Cross + Connections. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionRoutesTableSummary] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCrossConnectionRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connections_routes_table_summary_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connections_routes_table_summary_list_result_py3.py new file mode 100644 index 000000000000..503d491ac540 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_cross_connections_routes_table_summary_list_result_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCrossConnectionsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Cross + Connections. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionRoutesTableSummary] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCrossConnectionRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider.py new file mode 100644 index 000000000000..4233218290a5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider.py @@ -0,0 +1,60 @@ +# 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 .resource import Resource + + +class ExpressRouteServiceProvider(Resource): + """A ExpressRouteResourceProvider object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param peering_locations: Get a list of peering locations. + :type peering_locations: list[str] + :param bandwidths_offered: Gets bandwidths offered. + :type bandwidths_offered: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteServiceProviderBandwidthsOffered] + :param provisioning_state: Gets the provisioning state of the resource. + :type provisioning_state: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'peering_locations': {'key': 'properties.peeringLocations', 'type': '[str]'}, + 'bandwidths_offered': {'key': 'properties.bandwidthsOffered', 'type': '[ExpressRouteServiceProviderBandwidthsOffered]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteServiceProvider, self).__init__(**kwargs) + self.peering_locations = kwargs.get('peering_locations', None) + self.bandwidths_offered = kwargs.get('bandwidths_offered', None) + self.provisioning_state = kwargs.get('provisioning_state', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_bandwidths_offered.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_bandwidths_offered.py new file mode 100644 index 000000000000..b27622af42d1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_bandwidths_offered.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteServiceProviderBandwidthsOffered(Model): + """Contains bandwidths offered in ExpressRouteServiceProvider resources. + + :param offer_name: The OfferName. + :type offer_name: str + :param value_in_mbps: The ValueInMbps. + :type value_in_mbps: int + """ + + _attribute_map = { + 'offer_name': {'key': 'offerName', 'type': 'str'}, + 'value_in_mbps': {'key': 'valueInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteServiceProviderBandwidthsOffered, self).__init__(**kwargs) + self.offer_name = kwargs.get('offer_name', None) + self.value_in_mbps = kwargs.get('value_in_mbps', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_bandwidths_offered_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_bandwidths_offered_py3.py new file mode 100644 index 000000000000..88516a0dfcf8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_bandwidths_offered_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteServiceProviderBandwidthsOffered(Model): + """Contains bandwidths offered in ExpressRouteServiceProvider resources. + + :param offer_name: The OfferName. + :type offer_name: str + :param value_in_mbps: The ValueInMbps. + :type value_in_mbps: int + """ + + _attribute_map = { + 'offer_name': {'key': 'offerName', 'type': 'str'}, + 'value_in_mbps': {'key': 'valueInMbps', 'type': 'int'}, + } + + def __init__(self, *, offer_name: str=None, value_in_mbps: int=None, **kwargs) -> None: + super(ExpressRouteServiceProviderBandwidthsOffered, self).__init__(**kwargs) + self.offer_name = offer_name + self.value_in_mbps = value_in_mbps diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_paged.py new file mode 100644 index 000000000000..d5cfa1f4a753 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteServiceProviderPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteServiceProvider ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteServiceProvider]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteServiceProviderPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_py3.py new file mode 100644 index 000000000000..497e5d396a82 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/express_route_service_provider_py3.py @@ -0,0 +1,60 @@ +# 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 .resource_py3 import Resource + + +class ExpressRouteServiceProvider(Resource): + """A ExpressRouteResourceProvider object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param peering_locations: Get a list of peering locations. + :type peering_locations: list[str] + :param bandwidths_offered: Gets bandwidths offered. + :type bandwidths_offered: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteServiceProviderBandwidthsOffered] + :param provisioning_state: Gets the provisioning state of the resource. + :type provisioning_state: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'peering_locations': {'key': 'properties.peeringLocations', 'type': '[str]'}, + 'bandwidths_offered': {'key': 'properties.bandwidthsOffered', 'type': '[ExpressRouteServiceProviderBandwidthsOffered]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, peering_locations=None, bandwidths_offered=None, provisioning_state: str=None, **kwargs) -> None: + super(ExpressRouteServiceProvider, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.peering_locations = peering_locations + self.bandwidths_offered = bandwidths_offered + self.provisioning_state = provisioning_state diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_information.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_information.py new file mode 100644 index 000000000000..9764bfb79aad --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_information.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FlowLogInformation(Model): + """Information on the configuration of flow log and traffic analytics + (optional) . + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the resource to configure + for flow log and traffic analytics (optional) . + :type target_resource_id: str + :param storage_id: Required. ID of the storage account which is used to + store the flow log. + :type storage_id: str + :param enabled: Required. Flag to enable/disable flow logging. + :type enabled: bool + :param retention_policy: + :type retention_policy: + ~azure.mgmt.network.v2018_07_01.models.RetentionPolicyParameters + :param flow_analytics_configuration: + :type flow_analytics_configuration: + ~azure.mgmt.network.v2018_07_01.models.TrafficAnalyticsProperties + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'enabled': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'retention_policy': {'key': 'properties.retentionPolicy', 'type': 'RetentionPolicyParameters'}, + 'flow_analytics_configuration': {'key': 'flowAnalyticsConfiguration', 'type': 'TrafficAnalyticsProperties'}, + } + + def __init__(self, **kwargs): + super(FlowLogInformation, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.storage_id = kwargs.get('storage_id', None) + self.enabled = kwargs.get('enabled', None) + self.retention_policy = kwargs.get('retention_policy', None) + self.flow_analytics_configuration = kwargs.get('flow_analytics_configuration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_information_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_information_py3.py new file mode 100644 index 000000000000..c18b203f1a5b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_information_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FlowLogInformation(Model): + """Information on the configuration of flow log and traffic analytics + (optional) . + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the resource to configure + for flow log and traffic analytics (optional) . + :type target_resource_id: str + :param storage_id: Required. ID of the storage account which is used to + store the flow log. + :type storage_id: str + :param enabled: Required. Flag to enable/disable flow logging. + :type enabled: bool + :param retention_policy: + :type retention_policy: + ~azure.mgmt.network.v2018_07_01.models.RetentionPolicyParameters + :param flow_analytics_configuration: + :type flow_analytics_configuration: + ~azure.mgmt.network.v2018_07_01.models.TrafficAnalyticsProperties + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'enabled': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'retention_policy': {'key': 'properties.retentionPolicy', 'type': 'RetentionPolicyParameters'}, + 'flow_analytics_configuration': {'key': 'flowAnalyticsConfiguration', 'type': 'TrafficAnalyticsProperties'}, + } + + def __init__(self, *, target_resource_id: str, storage_id: str, enabled: bool, retention_policy=None, flow_analytics_configuration=None, **kwargs) -> None: + super(FlowLogInformation, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.storage_id = storage_id + self.enabled = enabled + self.retention_policy = retention_policy + self.flow_analytics_configuration = flow_analytics_configuration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_status_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_status_parameters.py new file mode 100644 index 000000000000..1e290526a28e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_status_parameters.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FlowLogStatusParameters(Model): + """Parameters that define a resource to query flow log and traffic analytics + (optional) status. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource where getting the + flow log and traffic analytics (optional) status. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FlowLogStatusParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_status_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_status_parameters_py3.py new file mode 100644 index 000000000000..89d079fdb715 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/flow_log_status_parameters_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FlowLogStatusParameters(Model): + """Parameters that define a resource to query flow log and traffic analytics + (optional) status. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource where getting the + flow log and traffic analytics (optional) status. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(FlowLogStatusParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration.py new file mode 100644 index 000000000000..1fadcbc17b22 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration.py @@ -0,0 +1,105 @@ +# 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 .sub_resource import SubResource + + +class FrontendIPConfiguration(SubResource): + """Frontend IP address of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar inbound_nat_rules: Read only. Inbound rules URIs that use this + frontend IP. + :vartype inbound_nat_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar inbound_nat_pools: Read only. Inbound pools URIs that use this + frontend IP. + :vartype inbound_nat_pools: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar outbound_rules: Read only. Outbound rules URIs that use this + frontend IP. + :vartype outbound_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar load_balancing_rules: Gets load balancing rules URIs that use this + frontend IP. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The Private IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.Subnet + :param public_ip_address: The reference of the Public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress + :param public_ip_prefix: The reference of the Public IP Prefix resource. + :type public_ip_prefix: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'inbound_nat_rules': {'readonly': True}, + 'inbound_nat_pools': {'readonly': True}, + 'outbound_rules': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[SubResource]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[SubResource]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[SubResource]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(FrontendIPConfiguration, self).__init__(**kwargs) + self.inbound_nat_rules = None + self.inbound_nat_pools = None + self.outbound_rules = None + self.load_balancing_rules = None + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.public_ip_prefix = kwargs.get('public_ip_prefix', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration_paged.py new file mode 100644 index 000000000000..9d3f23200504 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class FrontendIPConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`FrontendIPConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[FrontendIPConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(FrontendIPConfigurationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration_py3.py new file mode 100644 index 000000000000..5c5be720946c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/frontend_ip_configuration_py3.py @@ -0,0 +1,105 @@ +# 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 .sub_resource_py3 import SubResource + + +class FrontendIPConfiguration(SubResource): + """Frontend IP address of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar inbound_nat_rules: Read only. Inbound rules URIs that use this + frontend IP. + :vartype inbound_nat_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar inbound_nat_pools: Read only. Inbound pools URIs that use this + frontend IP. + :vartype inbound_nat_pools: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar outbound_rules: Read only. Outbound rules URIs that use this + frontend IP. + :vartype outbound_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar load_balancing_rules: Gets load balancing rules URIs that use this + frontend IP. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The Private IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.Subnet + :param public_ip_address: The reference of the Public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress + :param public_ip_prefix: The reference of the Public IP Prefix resource. + :type public_ip_prefix: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'inbound_nat_rules': {'readonly': True}, + 'inbound_nat_pools': {'readonly': True}, + 'outbound_rules': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[SubResource]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[SubResource]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[SubResource]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, public_ip_prefix=None, provisioning_state: str=None, name: str=None, etag: str=None, zones=None, **kwargs) -> None: + super(FrontendIPConfiguration, self).__init__(id=id, **kwargs) + self.inbound_nat_rules = None + self.inbound_nat_pools = None + self.outbound_rules = None + self.load_balancing_rules = None + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.public_ip_prefix = public_ip_prefix + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.zones = zones diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route.py new file mode 100644 index 000000000000..0b96cb661e70 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GatewayRoute(Model): + """Gateway routing details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The gateway's local address + :vartype local_address: str + :ivar network: The route's network prefix + :vartype network: str + :ivar next_hop: The route's next hop + :vartype next_hop: str + :ivar source_peer: The peer this route was learned from + :vartype source_peer: str + :ivar origin: The source this route was learned from + :vartype origin: str + :ivar as_path: The route's AS path sequence + :vartype as_path: str + :ivar weight: The route's weight + :vartype weight: int + """ + + _validation = { + 'local_address': {'readonly': True}, + 'network': {'readonly': True}, + 'next_hop': {'readonly': True}, + 'source_peer': {'readonly': True}, + 'origin': {'readonly': True}, + 'as_path': {'readonly': True}, + 'weight': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'source_peer': {'key': 'sourcePeer', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'as_path': {'key': 'asPath', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(GatewayRoute, self).__init__(**kwargs) + self.local_address = None + self.network = None + self.next_hop = None + self.source_peer = None + self.origin = None + self.as_path = None + self.weight = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_list_result.py new file mode 100644 index 000000000000..bbc08b549e67 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_list_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GatewayRouteListResult(Model): + """List of virtual network gateway routes. + + :param value: List of gateway routes + :type value: list[~azure.mgmt.network.v2018_07_01.models.GatewayRoute] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[GatewayRoute]'}, + } + + def __init__(self, **kwargs): + super(GatewayRouteListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_list_result_py3.py new file mode 100644 index 000000000000..77b881b3375f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_list_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GatewayRouteListResult(Model): + """List of virtual network gateway routes. + + :param value: List of gateway routes + :type value: list[~azure.mgmt.network.v2018_07_01.models.GatewayRoute] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[GatewayRoute]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(GatewayRouteListResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_py3.py new file mode 100644 index 000000000000..1aa3ba60605f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/gateway_route_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GatewayRoute(Model): + """Gateway routing details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The gateway's local address + :vartype local_address: str + :ivar network: The route's network prefix + :vartype network: str + :ivar next_hop: The route's next hop + :vartype next_hop: str + :ivar source_peer: The peer this route was learned from + :vartype source_peer: str + :ivar origin: The source this route was learned from + :vartype origin: str + :ivar as_path: The route's AS path sequence + :vartype as_path: str + :ivar weight: The route's weight + :vartype weight: int + """ + + _validation = { + 'local_address': {'readonly': True}, + 'network': {'readonly': True}, + 'next_hop': {'readonly': True}, + 'source_peer': {'readonly': True}, + 'origin': {'readonly': True}, + 'as_path': {'readonly': True}, + 'weight': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'source_peer': {'key': 'sourcePeer', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'as_path': {'key': 'asPath', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(GatewayRoute, self).__init__(**kwargs) + self.local_address = None + self.network = None + self.next_hop = None + self.source_peer = None + self.origin = None + self.as_path = None + self.weight = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/get_vpn_sites_configuration_request.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/get_vpn_sites_configuration_request.py new file mode 100644 index 000000000000..86ea87766a9f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/get_vpn_sites_configuration_request.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetVpnSitesConfigurationRequest(Model): + """List of Vpn-Sites. + + :param vpn_sites: List of resource-ids of the vpn-sites for which config + is to be downloaded. + :type vpn_sites: list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param output_blob_sas_url: The sas-url to download the configurations for + vpn-sites + :type output_blob_sas_url: str + """ + + _attribute_map = { + 'vpn_sites': {'key': 'vpnSites', 'type': '[SubResource]'}, + 'output_blob_sas_url': {'key': 'outputBlobSasUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GetVpnSitesConfigurationRequest, self).__init__(**kwargs) + self.vpn_sites = kwargs.get('vpn_sites', None) + self.output_blob_sas_url = kwargs.get('output_blob_sas_url', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/get_vpn_sites_configuration_request_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/get_vpn_sites_configuration_request_py3.py new file mode 100644 index 000000000000..4b62f481a9a4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/get_vpn_sites_configuration_request_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetVpnSitesConfigurationRequest(Model): + """List of Vpn-Sites. + + :param vpn_sites: List of resource-ids of the vpn-sites for which config + is to be downloaded. + :type vpn_sites: list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param output_blob_sas_url: The sas-url to download the configurations for + vpn-sites + :type output_blob_sas_url: str + """ + + _attribute_map = { + 'vpn_sites': {'key': 'vpnSites', 'type': '[SubResource]'}, + 'output_blob_sas_url': {'key': 'outputBlobSasUrl', 'type': 'str'}, + } + + def __init__(self, *, vpn_sites=None, output_blob_sas_url: str=None, **kwargs) -> None: + super(GetVpnSitesConfigurationRequest, self).__init__(**kwargs) + self.vpn_sites = vpn_sites + self.output_blob_sas_url = output_blob_sas_url diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_configuration.py new file mode 100644 index 000000000000..d7560ff43a77 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_configuration.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HTTPConfiguration(Model): + """HTTP configuration of the connectivity check. + + :param method: HTTP method. Possible values include: 'Get' + :type method: str or ~azure.mgmt.network.v2018_07_01.models.HTTPMethod + :param headers: List of HTTP headers. + :type headers: list[~azure.mgmt.network.v2018_07_01.models.HTTPHeader] + :param valid_status_codes: Valid status codes. + :type valid_status_codes: list[int] + """ + + _attribute_map = { + 'method': {'key': 'method', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '[HTTPHeader]'}, + 'valid_status_codes': {'key': 'validStatusCodes', 'type': '[int]'}, + } + + def __init__(self, **kwargs): + super(HTTPConfiguration, self).__init__(**kwargs) + self.method = kwargs.get('method', None) + self.headers = kwargs.get('headers', None) + self.valid_status_codes = kwargs.get('valid_status_codes', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_configuration_py3.py new file mode 100644 index 000000000000..057ec8e40a9f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_configuration_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HTTPConfiguration(Model): + """HTTP configuration of the connectivity check. + + :param method: HTTP method. Possible values include: 'Get' + :type method: str or ~azure.mgmt.network.v2018_07_01.models.HTTPMethod + :param headers: List of HTTP headers. + :type headers: list[~azure.mgmt.network.v2018_07_01.models.HTTPHeader] + :param valid_status_codes: Valid status codes. + :type valid_status_codes: list[int] + """ + + _attribute_map = { + 'method': {'key': 'method', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '[HTTPHeader]'}, + 'valid_status_codes': {'key': 'validStatusCodes', 'type': '[int]'}, + } + + def __init__(self, *, method=None, headers=None, valid_status_codes=None, **kwargs) -> None: + super(HTTPConfiguration, self).__init__(**kwargs) + self.method = method + self.headers = headers + self.valid_status_codes = valid_status_codes diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_header.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_header.py new file mode 100644 index 000000000000..0d0a9a93cd5a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_header.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HTTPHeader(Model): + """Describes the HTTP header. + + :param name: The name in HTTP header. + :type name: str + :param value: The value in HTTP header. + :type value: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HTTPHeader, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_header_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_header_py3.py new file mode 100644 index 000000000000..366f1a2bf681 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/http_header_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HTTPHeader(Model): + """Describes the HTTP header. + + :param name: The name in HTTP header. + :type name: str + :param value: The value in HTTP header. + :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(HTTPHeader, self).__init__(**kwargs) + self.name = name + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection.py new file mode 100644 index 000000000000..1dafdefdc64f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection.py @@ -0,0 +1,74 @@ +# 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 .resource import Resource + + +class HubVirtualNetworkConnection(Resource): + """HubVirtualNetworkConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param remote_virtual_network: Reference to the remote virtual network. + :type remote_virtual_network: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param allow_hub_to_remote_vnet_transit: VirtualHub to RemoteVnet transit + to enabled or not. + :type allow_hub_to_remote_vnet_transit: bool + :param allow_remote_vnet_to_use_hub_vnet_gateways: Allow RemoteVnet to use + Virtual Hub's gateways. + :type allow_remote_vnet_to_use_hub_vnet_gateways: bool + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'allow_hub_to_remote_vnet_transit': {'key': 'properties.allowHubToRemoteVnetTransit', 'type': 'bool'}, + 'allow_remote_vnet_to_use_hub_vnet_gateways': {'key': 'properties.allowRemoteVnetToUseHubVnetGateways', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HubVirtualNetworkConnection, self).__init__(**kwargs) + self.remote_virtual_network = kwargs.get('remote_virtual_network', None) + self.allow_hub_to_remote_vnet_transit = kwargs.get('allow_hub_to_remote_vnet_transit', None) + self.allow_remote_vnet_to_use_hub_vnet_gateways = kwargs.get('allow_remote_vnet_to_use_hub_vnet_gateways', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection_paged.py new file mode 100644 index 000000000000..330711eaf7ef --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class HubVirtualNetworkConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`HubVirtualNetworkConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[HubVirtualNetworkConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(HubVirtualNetworkConnectionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection_py3.py new file mode 100644 index 000000000000..c13a887c8438 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/hub_virtual_network_connection_py3.py @@ -0,0 +1,74 @@ +# 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 .resource_py3 import Resource + + +class HubVirtualNetworkConnection(Resource): + """HubVirtualNetworkConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param remote_virtual_network: Reference to the remote virtual network. + :type remote_virtual_network: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param allow_hub_to_remote_vnet_transit: VirtualHub to RemoteVnet transit + to enabled or not. + :type allow_hub_to_remote_vnet_transit: bool + :param allow_remote_vnet_to_use_hub_vnet_gateways: Allow RemoteVnet to use + Virtual Hub's gateways. + :type allow_remote_vnet_to_use_hub_vnet_gateways: bool + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'allow_hub_to_remote_vnet_transit': {'key': 'properties.allowHubToRemoteVnetTransit', 'type': 'bool'}, + 'allow_remote_vnet_to_use_hub_vnet_gateways': {'key': 'properties.allowRemoteVnetToUseHubVnetGateways', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, remote_virtual_network=None, allow_hub_to_remote_vnet_transit: bool=None, allow_remote_vnet_to_use_hub_vnet_gateways: bool=None, provisioning_state=None, **kwargs) -> None: + super(HubVirtualNetworkConnection, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.remote_virtual_network = remote_virtual_network + self.allow_hub_to_remote_vnet_transit = allow_hub_to_remote_vnet_transit + self.allow_remote_vnet_to_use_hub_vnet_gateways = allow_remote_vnet_to_use_hub_vnet_gateways + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_pool.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_pool.py new file mode 100644 index 000000000000..29126fd82b40 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_pool.py @@ -0,0 +1,100 @@ +# 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 .sub_resource import SubResource + + +class InboundNatPool(SubResource): + """Inbound NAT pool of the load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param protocol: Required. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.TransportProtocol + :param frontend_port_range_start: Required. The first port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65534. + :type frontend_port_range_start: int + :param frontend_port_range_end: Required. The last port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65535. + :type frontend_port_range_end: int + :param backend_port: Required. The port used for internal connections on + the endpoint. Acceptable values are between 1 and 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port_range_start': {'required': True}, + 'frontend_port_range_end': {'required': True}, + 'backend_port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port_range_start': {'key': 'properties.frontendPortRangeStart', 'type': 'int'}, + 'frontend_port_range_end': {'key': 'properties.frontendPortRangeEnd', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(InboundNatPool, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.protocol = kwargs.get('protocol', None) + self.frontend_port_range_start = kwargs.get('frontend_port_range_start', None) + self.frontend_port_range_end = kwargs.get('frontend_port_range_end', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_pool_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_pool_py3.py new file mode 100644 index 000000000000..b98f94acdd05 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_pool_py3.py @@ -0,0 +1,100 @@ +# 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 .sub_resource_py3 import SubResource + + +class InboundNatPool(SubResource): + """Inbound NAT pool of the load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param protocol: Required. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.TransportProtocol + :param frontend_port_range_start: Required. The first port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65534. + :type frontend_port_range_start: int + :param frontend_port_range_end: Required. The last port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65535. + :type frontend_port_range_end: int + :param backend_port: Required. The port used for internal connections on + the endpoint. Acceptable values are between 1 and 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port_range_start': {'required': True}, + 'frontend_port_range_end': {'required': True}, + 'backend_port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port_range_start': {'key': 'properties.frontendPortRangeStart', 'type': 'int'}, + 'frontend_port_range_end': {'key': 'properties.frontendPortRangeEnd', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, frontend_port_range_start: int, frontend_port_range_end: int, backend_port: int, id: str=None, frontend_ip_configuration=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(InboundNatPool, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.protocol = protocol + self.frontend_port_range_start = frontend_port_range_start + self.frontend_port_range_end = frontend_port_range_end + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule.py new file mode 100644 index 000000000000..7155bee14c14 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule.py @@ -0,0 +1,97 @@ +# 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 .sub_resource import SubResource + + +class InboundNatRule(SubResource): + """Inbound NAT rule of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :ivar backend_ip_configuration: A reference to a private IP address + defined on a network interface of a VM. Traffic sent to the frontend port + of each of the frontend IP configurations is forwarded to the backend IP. + :vartype backend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration + :param protocol: Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.TransportProtocol + :param frontend_port: The port for the external endpoint. Port numbers for + each rule must be unique within the Load Balancer. Acceptable values range + from 1 to 65534. + :type frontend_port: int + :param backend_port: The port used for the internal endpoint. Acceptable + values range from 1 to 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'backend_ip_configuration': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_ip_configuration': {'key': 'properties.backendIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(InboundNatRule, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.backend_ip_configuration = None + self.protocol = kwargs.get('protocol', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule_paged.py new file mode 100644 index 000000000000..e750ba028185 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class InboundNatRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`InboundNatRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[InboundNatRule]'} + } + + def __init__(self, *args, **kwargs): + + super(InboundNatRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule_py3.py new file mode 100644 index 000000000000..08f6eadbc804 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/inbound_nat_rule_py3.py @@ -0,0 +1,97 @@ +# 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 .sub_resource_py3 import SubResource + + +class InboundNatRule(SubResource): + """Inbound NAT rule of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :ivar backend_ip_configuration: A reference to a private IP address + defined on a network interface of a VM. Traffic sent to the frontend port + of each of the frontend IP configurations is forwarded to the backend IP. + :vartype backend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration + :param protocol: Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.TransportProtocol + :param frontend_port: The port for the external endpoint. Port numbers for + each rule must be unique within the Load Balancer. Acceptable values range + from 1 to 65534. + :type frontend_port: int + :param backend_port: The port used for the internal endpoint. Acceptable + values range from 1 to 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'backend_ip_configuration': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_ip_configuration': {'key': 'properties.backendIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, frontend_ip_configuration=None, protocol=None, frontend_port: int=None, backend_port: int=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(InboundNatRule, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.backend_ip_configuration = None + self.protocol = protocol + self.frontend_port = frontend_port + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_address_availability_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_address_availability_result.py new file mode 100644 index 000000000000..6bcf52275711 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_address_availability_result.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IPAddressAvailabilityResult(Model): + """Response for CheckIPAddressAvailability API service call. + + :param available: Private IP address availability. + :type available: bool + :param available_ip_addresses: Contains other available private IP + addresses if the asked for address is taken. + :type available_ip_addresses: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + 'available_ip_addresses': {'key': 'availableIPAddresses', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(IPAddressAvailabilityResult, self).__init__(**kwargs) + self.available = kwargs.get('available', None) + self.available_ip_addresses = kwargs.get('available_ip_addresses', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_address_availability_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_address_availability_result_py3.py new file mode 100644 index 000000000000..e5fc4340d370 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_address_availability_result_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IPAddressAvailabilityResult(Model): + """Response for CheckIPAddressAvailability API service call. + + :param available: Private IP address availability. + :type available: bool + :param available_ip_addresses: Contains other available private IP + addresses if the asked for address is taken. + :type available_ip_addresses: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + 'available_ip_addresses': {'key': 'availableIPAddresses', 'type': '[str]'}, + } + + def __init__(self, *, available: bool=None, available_ip_addresses=None, **kwargs) -> None: + super(IPAddressAvailabilityResult, self).__init__(**kwargs) + self.available = available + self.available_ip_addresses = available_ip_addresses diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_configuration.py new file mode 100644 index 000000000000..45fb42461727 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_configuration.py @@ -0,0 +1,62 @@ +# 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 .sub_resource import SubResource + + +class IPConfiguration(SubResource): + """IP configuration. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP allocation method. + Possible values are 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.Subnet + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IPConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_configuration_py3.py new file mode 100644 index 000000000000..42a74cf6e104 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_configuration_py3.py @@ -0,0 +1,62 @@ +# 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 .sub_resource_py3 import SubResource + + +class IPConfiguration(SubResource): + """IP configuration. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP allocation method. + Possible values are 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.Subnet + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(IPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_tag.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_tag.py new file mode 100644 index 000000000000..559dddc661d2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_tag.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpTag(Model): + """Contains the IpTag associated with the object. + + :param ip_tag_type: Gets or sets the ipTag type: Example FirstPartyUsage. + :type ip_tag_type: str + :param tag: Gets or sets value of the IpTag associated with the public IP. + Example SQL, Storage etc + :type tag: str + """ + + _attribute_map = { + 'ip_tag_type': {'key': 'ipTagType', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IpTag, self).__init__(**kwargs) + self.ip_tag_type = kwargs.get('ip_tag_type', None) + self.tag = kwargs.get('tag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_tag_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_tag_py3.py new file mode 100644 index 000000000000..2370c408761c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ip_tag_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpTag(Model): + """Contains the IpTag associated with the object. + + :param ip_tag_type: Gets or sets the ipTag type: Example FirstPartyUsage. + :type ip_tag_type: str + :param tag: Gets or sets value of the IpTag associated with the public IP. + Example SQL, Storage etc + :type tag: str + """ + + _attribute_map = { + 'ip_tag_type': {'key': 'ipTagType', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, *, ip_tag_type: str=None, tag: str=None, **kwargs) -> None: + super(IpTag, self).__init__(**kwargs) + self.ip_tag_type = ip_tag_type + self.tag = tag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipsec_policy.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipsec_policy.py new file mode 100644 index 000000000000..a0b855314a8c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipsec_policy.py @@ -0,0 +1,89 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpsecPolicy(Model): + """An IPSec Policy configuration for a virtual network gateway connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to + site VPN tunnel. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for a site to + site VPN tunnel. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2018_07_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2018_07_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2018_07_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2018_07_01.models.IkeIntegrity + :param dh_group: Required. The DH Groups used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2018_07_01.models.DhGroup + :param pfs_group: Required. The Pfs Groups used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2018_07_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IpsecPolicy, self).__init__(**kwargs) + self.sa_life_time_seconds = kwargs.get('sa_life_time_seconds', None) + self.sa_data_size_kilobytes = kwargs.get('sa_data_size_kilobytes', None) + self.ipsec_encryption = kwargs.get('ipsec_encryption', None) + self.ipsec_integrity = kwargs.get('ipsec_integrity', None) + self.ike_encryption = kwargs.get('ike_encryption', None) + self.ike_integrity = kwargs.get('ike_integrity', None) + self.dh_group = kwargs.get('dh_group', None) + self.pfs_group = kwargs.get('pfs_group', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipsec_policy_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipsec_policy_py3.py new file mode 100644 index 000000000000..ada123aa21f2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipsec_policy_py3.py @@ -0,0 +1,89 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpsecPolicy(Model): + """An IPSec Policy configuration for a virtual network gateway connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to + site VPN tunnel. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for a site to + site VPN tunnel. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2018_07_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2018_07_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2018_07_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2018_07_01.models.IkeIntegrity + :param dh_group: Required. The DH Groups used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2018_07_01.models.DhGroup + :param pfs_group: Required. The Pfs Groups used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2018_07_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, *, sa_life_time_seconds: int, sa_data_size_kilobytes: int, ipsec_encryption, ipsec_integrity, ike_encryption, ike_integrity, dh_group, pfs_group, **kwargs) -> None: + super(IpsecPolicy, self).__init__(**kwargs) + self.sa_life_time_seconds = sa_life_time_seconds + self.sa_data_size_kilobytes = sa_data_size_kilobytes + self.ipsec_encryption = ipsec_encryption + self.ipsec_integrity = ipsec_integrity + self.ike_encryption = ike_encryption + self.ike_integrity = ike_integrity + self.dh_group = dh_group + self.pfs_group = pfs_group diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipv6_express_route_circuit_peering_config.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipv6_express_route_circuit_peering_config.py new file mode 100644 index 000000000000..c2a1e3013c6d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipv6_express_route_circuit_peering_config.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Ipv6ExpressRouteCircuitPeeringConfig(Model): + """Contains IPv6 peering config. + + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringConfig + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2018_07_01.models.RouteFilter + :param state: The state of peering. Possible values are: 'Disabled' and + 'Enabled'. Possible values include: 'Disabled', 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringState + """ + + _attribute_map = { + 'primary_peer_address_prefix': {'key': 'primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'secondaryPeerAddressPrefix', 'type': 'str'}, + 'microsoft_peering_config': {'key': 'microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'route_filter': {'key': 'routeFilter', 'type': 'RouteFilter'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Ipv6ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.route_filter = kwargs.get('route_filter', None) + self.state = kwargs.get('state', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipv6_express_route_circuit_peering_config_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipv6_express_route_circuit_peering_config_py3.py new file mode 100644 index 000000000000..a6725e91cd8b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/ipv6_express_route_circuit_peering_config_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Ipv6ExpressRouteCircuitPeeringConfig(Model): + """Contains IPv6 peering config. + + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringConfig + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2018_07_01.models.RouteFilter + :param state: The state of peering. Possible values are: 'Disabled' and + 'Enabled'. Possible values include: 'Disabled', 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringState + """ + + _attribute_map = { + 'primary_peer_address_prefix': {'key': 'primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'secondaryPeerAddressPrefix', 'type': 'str'}, + 'microsoft_peering_config': {'key': 'microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'route_filter': {'key': 'routeFilter', 'type': 'RouteFilter'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, *, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, microsoft_peering_config=None, route_filter=None, state=None, **kwargs) -> None: + super(Ipv6ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.microsoft_peering_config = microsoft_peering_config + self.route_filter = route_filter + self.state = state diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer.py new file mode 100644 index 000000000000..4ca942e927cc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer.py @@ -0,0 +1,115 @@ +# 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 .resource import Resource + + +class LoadBalancer(Resource): + """LoadBalancer resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The load balancer SKU. + :type sku: ~azure.mgmt.network.v2018_07_01.models.LoadBalancerSku + :param frontend_ip_configurations: Object representing the frontend IPs to + be used for the load balancer + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.FrontendIPConfiguration] + :param backend_address_pools: Collection of backend address pools used by + a load balancer + :type backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.BackendAddressPool] + :param load_balancing_rules: Object collection representing the load + balancing rules Gets the provisioning + :type load_balancing_rules: + list[~azure.mgmt.network.v2018_07_01.models.LoadBalancingRule] + :param probes: Collection of probe objects used in the load balancer + :type probes: list[~azure.mgmt.network.v2018_07_01.models.Probe] + :param inbound_nat_rules: Collection of inbound NAT Rules used by a load + balancer. Defining inbound NAT rules on your load balancer is mutually + exclusive with defining an inbound NAT pool. Inbound NAT pools are + referenced from virtual machine scale sets. NICs that are associated with + individual virtual machines cannot reference an Inbound NAT pool. They + have to reference individual inbound NAT rules. + :type inbound_nat_rules: + list[~azure.mgmt.network.v2018_07_01.models.InboundNatRule] + :param inbound_nat_pools: Defines an external port range for inbound NAT + to a single backend port on NICs associated with a load balancer. Inbound + NAT rules are created automatically for each NIC associated with the Load + Balancer using an external port from this range. Defining an Inbound NAT + pool on your Load Balancer is mutually exclusive with defining inbound Nat + rules. Inbound NAT pools are referenced from virtual machine scale sets. + NICs that are associated with individual virtual machines cannot reference + an inbound NAT pool. They have to reference individual inbound NAT rules. + :type inbound_nat_pools: + list[~azure.mgmt.network.v2018_07_01.models.InboundNatPool] + :param outbound_rules: The outbound rules. + :type outbound_rules: + list[~azure.mgmt.network.v2018_07_01.models.OutboundRule] + :param resource_guid: The resource GUID property of the load balancer + resource. + :type resource_guid: str + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'LoadBalancerSku'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[FrontendIPConfiguration]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[LoadBalancingRule]'}, + 'probes': {'key': 'properties.probes', 'type': '[Probe]'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[InboundNatRule]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[InboundNatPool]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[OutboundRule]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancer, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.backend_address_pools = kwargs.get('backend_address_pools', None) + self.load_balancing_rules = kwargs.get('load_balancing_rules', None) + self.probes = kwargs.get('probes', None) + self.inbound_nat_rules = kwargs.get('inbound_nat_rules', None) + self.inbound_nat_pools = kwargs.get('inbound_nat_pools', None) + self.outbound_rules = kwargs.get('outbound_rules', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_paged.py new file mode 100644 index 000000000000..76e42c244de5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class LoadBalancerPaged(Paged): + """ + A paging container for iterating over a list of :class:`LoadBalancer ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LoadBalancer]'} + } + + def __init__(self, *args, **kwargs): + + super(LoadBalancerPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_py3.py new file mode 100644 index 000000000000..098a4e4f4eee --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_py3.py @@ -0,0 +1,115 @@ +# 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 .resource_py3 import Resource + + +class LoadBalancer(Resource): + """LoadBalancer resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The load balancer SKU. + :type sku: ~azure.mgmt.network.v2018_07_01.models.LoadBalancerSku + :param frontend_ip_configurations: Object representing the frontend IPs to + be used for the load balancer + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.FrontendIPConfiguration] + :param backend_address_pools: Collection of backend address pools used by + a load balancer + :type backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.BackendAddressPool] + :param load_balancing_rules: Object collection representing the load + balancing rules Gets the provisioning + :type load_balancing_rules: + list[~azure.mgmt.network.v2018_07_01.models.LoadBalancingRule] + :param probes: Collection of probe objects used in the load balancer + :type probes: list[~azure.mgmt.network.v2018_07_01.models.Probe] + :param inbound_nat_rules: Collection of inbound NAT Rules used by a load + balancer. Defining inbound NAT rules on your load balancer is mutually + exclusive with defining an inbound NAT pool. Inbound NAT pools are + referenced from virtual machine scale sets. NICs that are associated with + individual virtual machines cannot reference an Inbound NAT pool. They + have to reference individual inbound NAT rules. + :type inbound_nat_rules: + list[~azure.mgmt.network.v2018_07_01.models.InboundNatRule] + :param inbound_nat_pools: Defines an external port range for inbound NAT + to a single backend port on NICs associated with a load balancer. Inbound + NAT rules are created automatically for each NIC associated with the Load + Balancer using an external port from this range. Defining an Inbound NAT + pool on your Load Balancer is mutually exclusive with defining inbound Nat + rules. Inbound NAT pools are referenced from virtual machine scale sets. + NICs that are associated with individual virtual machines cannot reference + an inbound NAT pool. They have to reference individual inbound NAT rules. + :type inbound_nat_pools: + list[~azure.mgmt.network.v2018_07_01.models.InboundNatPool] + :param outbound_rules: The outbound rules. + :type outbound_rules: + list[~azure.mgmt.network.v2018_07_01.models.OutboundRule] + :param resource_guid: The resource GUID property of the load balancer + resource. + :type resource_guid: str + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'LoadBalancerSku'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[FrontendIPConfiguration]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[LoadBalancingRule]'}, + 'probes': {'key': 'properties.probes', 'type': '[Probe]'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[InboundNatRule]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[InboundNatPool]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[OutboundRule]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, frontend_ip_configurations=None, backend_address_pools=None, load_balancing_rules=None, probes=None, inbound_nat_rules=None, inbound_nat_pools=None, outbound_rules=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(LoadBalancer, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.frontend_ip_configurations = frontend_ip_configurations + self.backend_address_pools = backend_address_pools + self.load_balancing_rules = load_balancing_rules + self.probes = probes + self.inbound_nat_rules = inbound_nat_rules + self.inbound_nat_pools = inbound_nat_pools + self.outbound_rules = outbound_rules + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_sku.py new file mode 100644 index 000000000000..4f30b79b1df0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_sku.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LoadBalancerSku(Model): + """SKU of a load balancer. + + :param name: Name of a load balancer SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.LoadBalancerSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancerSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_sku_py3.py new file mode 100644 index 000000000000..1a0482d4c5e6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancer_sku_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LoadBalancerSku(Model): + """SKU of a load balancer. + + :param name: Name of a load balancer SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.LoadBalancerSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(LoadBalancerSku, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule.py new file mode 100644 index 000000000000..59389f2b298d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule.py @@ -0,0 +1,115 @@ +# 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 .sub_resource import SubResource + + +class LoadBalancingRule(SubResource): + """A load balancing rule for a load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param backend_address_pool: A reference to a pool of DIPs. Inbound + traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param probe: The reference of the load balancer probe used by the load + balancing rule. + :type probe: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param protocol: Required. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.TransportProtocol + :param load_distribution: The load distribution policy for this rule. + Possible values are 'Default', 'SourceIP', and 'SourceIPProtocol'. + Possible values include: 'Default', 'SourceIP', 'SourceIPProtocol' + :type load_distribution: str or + ~azure.mgmt.network.v2018_07_01.models.LoadDistribution + :param frontend_port: Required. The port for the external endpoint. Port + numbers for each rule must be unique within the Load Balancer. Acceptable + values are between 0 and 65534. Note that value 0 enables "Any Port" + :type frontend_port: int + :param backend_port: The port used for internal connections on the + endpoint. Acceptable values are between 0 and 65535. Note that value 0 + enables "Any Port" + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param disable_outbound_snat: Configures SNAT for the VMs in the backend + pool to use the publicIP address specified in the frontend of the load + balancing rule. + :type disable_outbound_snat: bool + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'load_distribution': {'key': 'properties.loadDistribution', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'disable_outbound_snat': {'key': 'properties.disableOutboundSnat', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancingRule, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.probe = kwargs.get('probe', None) + self.protocol = kwargs.get('protocol', None) + self.load_distribution = kwargs.get('load_distribution', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.disable_outbound_snat = kwargs.get('disable_outbound_snat', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule_paged.py new file mode 100644 index 000000000000..d97915cad64c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class LoadBalancingRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`LoadBalancingRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LoadBalancingRule]'} + } + + def __init__(self, *args, **kwargs): + + super(LoadBalancingRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule_py3.py new file mode 100644 index 000000000000..9538cea25492 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/load_balancing_rule_py3.py @@ -0,0 +1,115 @@ +# 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 .sub_resource_py3 import SubResource + + +class LoadBalancingRule(SubResource): + """A load balancing rule for a load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param backend_address_pool: A reference to a pool of DIPs. Inbound + traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param probe: The reference of the load balancer probe used by the load + balancing rule. + :type probe: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param protocol: Required. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.TransportProtocol + :param load_distribution: The load distribution policy for this rule. + Possible values are 'Default', 'SourceIP', and 'SourceIPProtocol'. + Possible values include: 'Default', 'SourceIP', 'SourceIPProtocol' + :type load_distribution: str or + ~azure.mgmt.network.v2018_07_01.models.LoadDistribution + :param frontend_port: Required. The port for the external endpoint. Port + numbers for each rule must be unique within the Load Balancer. Acceptable + values are between 0 and 65534. Note that value 0 enables "Any Port" + :type frontend_port: int + :param backend_port: The port used for internal connections on the + endpoint. Acceptable values are between 0 and 65535. Note that value 0 + enables "Any Port" + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param disable_outbound_snat: Configures SNAT for the VMs in the backend + pool to use the publicIP address specified in the frontend of the load + balancing rule. + :type disable_outbound_snat: bool + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'load_distribution': {'key': 'properties.loadDistribution', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'disable_outbound_snat': {'key': 'properties.disableOutboundSnat', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, frontend_port: int, id: str=None, frontend_ip_configuration=None, backend_address_pool=None, probe=None, load_distribution=None, backend_port: int=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, disable_outbound_snat: bool=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(LoadBalancingRule, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.backend_address_pool = backend_address_pool + self.probe = probe + self.protocol = protocol + self.load_distribution = load_distribution + self.frontend_port = frontend_port + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.disable_outbound_snat = disable_outbound_snat + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway.py new file mode 100644 index 000000000000..7602bd1d5ef9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway.py @@ -0,0 +1,77 @@ +# 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 .resource import Resource + + +class LocalNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param local_network_address_space: Local network site address space. + :type local_network_address_space: + ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param gateway_ip_address: IP address of local network gateway. + :type gateway_ip_address: str + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_07_01.models.BgpSettings + :param resource_guid: The resource GUID property of the + LocalNetworkGateway resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + LocalNetworkGateway resource. Possible values are: 'Updating', 'Deleting', + and 'Failed'. + :vartype provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'local_network_address_space': {'key': 'properties.localNetworkAddressSpace', 'type': 'AddressSpace'}, + 'gateway_ip_address': {'key': 'properties.gatewayIpAddress', 'type': 'str'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LocalNetworkGateway, self).__init__(**kwargs) + self.local_network_address_space = kwargs.get('local_network_address_space', None) + self.gateway_ip_address = kwargs.get('gateway_ip_address', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway_paged.py new file mode 100644 index 000000000000..3cfd8e1b6170 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class LocalNetworkGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`LocalNetworkGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LocalNetworkGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(LocalNetworkGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway_py3.py new file mode 100644 index 000000000000..621294a4ab0b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/local_network_gateway_py3.py @@ -0,0 +1,77 @@ +# 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 .resource_py3 import Resource + + +class LocalNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param local_network_address_space: Local network site address space. + :type local_network_address_space: + ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param gateway_ip_address: IP address of local network gateway. + :type gateway_ip_address: str + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_07_01.models.BgpSettings + :param resource_guid: The resource GUID property of the + LocalNetworkGateway resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + LocalNetworkGateway resource. Possible values are: 'Updating', 'Deleting', + and 'Failed'. + :vartype provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'local_network_address_space': {'key': 'properties.localNetworkAddressSpace', 'type': 'AddressSpace'}, + 'gateway_ip_address': {'key': 'properties.gatewayIpAddress', 'type': 'str'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, local_network_address_space=None, gateway_ip_address: str=None, bgp_settings=None, resource_guid: str=None, etag: str=None, **kwargs) -> None: + super(LocalNetworkGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.local_network_address_space = local_network_address_space + self.gateway_ip_address = gateway_ip_address + self.bgp_settings = bgp_settings + self.resource_guid = resource_guid + self.provisioning_state = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/log_specification.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/log_specification.py new file mode 100644 index 000000000000..ab592992d904 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/log_specification.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogSpecification(Model): + """Description of logging specification. + + :param name: The name of the specification. + :type name: str + :param display_name: The display name of the specification. + :type display_name: str + :param blob_duration: Duration of the blob. + :type blob_duration: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LogSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.blob_duration = kwargs.get('blob_duration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/log_specification_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/log_specification_py3.py new file mode 100644 index 000000000000..6184811d393e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/log_specification_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogSpecification(Model): + """Description of logging specification. + + :param name: The name of the specification. + :type name: str + :param display_name: The display name of the specification. + :type display_name: str + :param blob_duration: Duration of the blob. + :type blob_duration: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, blob_duration: str=None, **kwargs) -> None: + super(LogSpecification, self).__init__(**kwargs) + self.name = name + self.display_name = display_name + self.blob_duration = blob_duration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/matched_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/matched_rule.py new file mode 100644 index 000000000000..ffa2f54f52fd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/matched_rule.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MatchedRule(Model): + """Matched rule. + + :param rule_name: Name of the matched network security rule. + :type rule_name: str + :param action: The network traffic is allowed or denied. Possible values + are 'Allow' and 'Deny'. + :type action: str + """ + + _attribute_map = { + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MatchedRule, self).__init__(**kwargs) + self.rule_name = kwargs.get('rule_name', None) + self.action = kwargs.get('action', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/matched_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/matched_rule_py3.py new file mode 100644 index 000000000000..67868d929d0c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/matched_rule_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MatchedRule(Model): + """Matched rule. + + :param rule_name: Name of the matched network security rule. + :type rule_name: str + :param action: The network traffic is allowed or denied. Possible values + are 'Allow' and 'Deny'. + :type action: str + """ + + _attribute_map = { + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, *, rule_name: str=None, action: str=None, **kwargs) -> None: + super(MatchedRule, self).__init__(**kwargs) + self.rule_name = rule_name + self.action = action diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/metric_specification.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/metric_specification.py new file mode 100644 index 000000000000..20548ef0d2a2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/metric_specification.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricSpecification(Model): + """Description of metrics specification. + + :param name: The name of the metric. + :type name: str + :param display_name: The display name of the metric. + :type display_name: str + :param display_description: The description of the metric. + :type display_description: str + :param unit: Units the metric to be displayed in. + :type unit: str + :param aggregation_type: The aggregation type. + :type aggregation_type: str + :param availabilities: List of availability. + :type availabilities: + list[~azure.mgmt.network.v2018_07_01.models.Availability] + :param enable_regional_mdm_account: Whether regional MDM account enabled. + :type enable_regional_mdm_account: bool + :param fill_gap_with_zero: Whether gaps would be filled with zeros. + :type fill_gap_with_zero: bool + :param metric_filter_pattern: Pattern for the filter of the metric. + :type metric_filter_pattern: str + :param dimensions: List of dimensions. + :type dimensions: list[~azure.mgmt.network.v2018_07_01.models.Dimension] + :param is_internal: Whether the metric is internal. + :type is_internal: bool + :param source_mdm_account: The source MDM account. + :type source_mdm_account: str + :param source_mdm_namespace: The source MDM namespace. + :type source_mdm_namespace: str + :param resource_id_dimension_name_override: The resource Id dimension name + override. + :type resource_id_dimension_name_override: str + """ + + _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'}, + 'availabilities': {'key': 'availabilities', 'type': '[Availability]'}, + 'enable_regional_mdm_account': {'key': 'enableRegionalMdmAccount', 'type': 'bool'}, + 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'}, + 'metric_filter_pattern': {'key': 'metricFilterPattern', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, + 'is_internal': {'key': 'isInternal', 'type': 'bool'}, + 'source_mdm_account': {'key': 'sourceMdmAccount', 'type': 'str'}, + 'source_mdm_namespace': {'key': 'sourceMdmNamespace', 'type': 'str'}, + 'resource_id_dimension_name_override': {'key': 'resourceIdDimensionNameOverride', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MetricSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.display_description = kwargs.get('display_description', None) + self.unit = kwargs.get('unit', None) + self.aggregation_type = kwargs.get('aggregation_type', None) + self.availabilities = kwargs.get('availabilities', None) + self.enable_regional_mdm_account = kwargs.get('enable_regional_mdm_account', None) + self.fill_gap_with_zero = kwargs.get('fill_gap_with_zero', None) + self.metric_filter_pattern = kwargs.get('metric_filter_pattern', None) + self.dimensions = kwargs.get('dimensions', None) + self.is_internal = kwargs.get('is_internal', None) + self.source_mdm_account = kwargs.get('source_mdm_account', None) + self.source_mdm_namespace = kwargs.get('source_mdm_namespace', None) + self.resource_id_dimension_name_override = kwargs.get('resource_id_dimension_name_override', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/metric_specification_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/metric_specification_py3.py new file mode 100644 index 000000000000..a9e961e09603 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/metric_specification_py3.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricSpecification(Model): + """Description of metrics specification. + + :param name: The name of the metric. + :type name: str + :param display_name: The display name of the metric. + :type display_name: str + :param display_description: The description of the metric. + :type display_description: str + :param unit: Units the metric to be displayed in. + :type unit: str + :param aggregation_type: The aggregation type. + :type aggregation_type: str + :param availabilities: List of availability. + :type availabilities: + list[~azure.mgmt.network.v2018_07_01.models.Availability] + :param enable_regional_mdm_account: Whether regional MDM account enabled. + :type enable_regional_mdm_account: bool + :param fill_gap_with_zero: Whether gaps would be filled with zeros. + :type fill_gap_with_zero: bool + :param metric_filter_pattern: Pattern for the filter of the metric. + :type metric_filter_pattern: str + :param dimensions: List of dimensions. + :type dimensions: list[~azure.mgmt.network.v2018_07_01.models.Dimension] + :param is_internal: Whether the metric is internal. + :type is_internal: bool + :param source_mdm_account: The source MDM account. + :type source_mdm_account: str + :param source_mdm_namespace: The source MDM namespace. + :type source_mdm_namespace: str + :param resource_id_dimension_name_override: The resource Id dimension name + override. + :type resource_id_dimension_name_override: str + """ + + _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'}, + 'availabilities': {'key': 'availabilities', 'type': '[Availability]'}, + 'enable_regional_mdm_account': {'key': 'enableRegionalMdmAccount', 'type': 'bool'}, + 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'}, + 'metric_filter_pattern': {'key': 'metricFilterPattern', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, + 'is_internal': {'key': 'isInternal', 'type': 'bool'}, + 'source_mdm_account': {'key': 'sourceMdmAccount', 'type': 'str'}, + 'source_mdm_namespace': {'key': 'sourceMdmNamespace', 'type': 'str'}, + 'resource_id_dimension_name_override': {'key': 'resourceIdDimensionNameOverride', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, display_description: str=None, unit: str=None, aggregation_type: str=None, availabilities=None, enable_regional_mdm_account: bool=None, fill_gap_with_zero: bool=None, metric_filter_pattern: str=None, dimensions=None, is_internal: bool=None, source_mdm_account: str=None, source_mdm_namespace: str=None, resource_id_dimension_name_override: str=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.availabilities = availabilities + self.enable_regional_mdm_account = enable_regional_mdm_account + self.fill_gap_with_zero = fill_gap_with_zero + self.metric_filter_pattern = metric_filter_pattern + self.dimensions = dimensions + self.is_internal = is_internal + self.source_mdm_account = source_mdm_account + self.source_mdm_namespace = source_mdm_namespace + self.resource_id_dimension_name_override = resource_id_dimension_name_override diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_parameters.py new file mode 100644 index 000000000000..f86d2f26494e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticParameters(Model): + """Parameters to get network configuration diagnostic. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: Required. List of traffic queries. + :type queries: list[~azure.mgmt.network.v2018_07_01.models.TrafficQuery] + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'queries': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'queries': {'key': 'queries', 'type': '[TrafficQuery]'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.queries = kwargs.get('queries', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_parameters_py3.py new file mode 100644 index 000000000000..4d06fa264a7a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticParameters(Model): + """Parameters to get network configuration diagnostic. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: Required. List of traffic queries. + :type queries: list[~azure.mgmt.network.v2018_07_01.models.TrafficQuery] + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'queries': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'queries': {'key': 'queries', 'type': '[TrafficQuery]'}, + } + + def __init__(self, *, target_resource_id: str, queries, **kwargs) -> None: + super(NetworkConfigurationDiagnosticParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.queries = queries diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_response.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_response.py new file mode 100644 index 000000000000..099306603d57 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_response.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResponse(Model): + """Results of network configuration diagnostic on the target resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar results: List of network configuration diagnostic results. + :vartype results: + list[~azure.mgmt.network.v2018_07_01.models.NetworkConfigurationDiagnosticResult] + """ + + _validation = { + 'results': {'readonly': True}, + } + + _attribute_map = { + 'results': {'key': 'results', 'type': '[NetworkConfigurationDiagnosticResult]'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticResponse, self).__init__(**kwargs) + self.results = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_response_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_response_py3.py new file mode 100644 index 000000000000..7f90eb867dbb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_response_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResponse(Model): + """Results of network configuration diagnostic on the target resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar results: List of network configuration diagnostic results. + :vartype results: + list[~azure.mgmt.network.v2018_07_01.models.NetworkConfigurationDiagnosticResult] + """ + + _validation = { + 'results': {'readonly': True}, + } + + _attribute_map = { + 'results': {'key': 'results', 'type': '[NetworkConfigurationDiagnosticResult]'}, + } + + def __init__(self, **kwargs) -> None: + super(NetworkConfigurationDiagnosticResponse, self).__init__(**kwargs) + self.results = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_result.py new file mode 100644 index 000000000000..dab21d2cf4cf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResult(Model): + """Network configuration diagnostic result corresponded to provided traffic + query. + + :param traffic_query: + :type traffic_query: ~azure.mgmt.network.v2018_07_01.models.TrafficQuery + :param network_security_group_result: + :type network_security_group_result: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroupResult + """ + + _attribute_map = { + 'traffic_query': {'key': 'trafficQuery', 'type': 'TrafficQuery'}, + 'network_security_group_result': {'key': 'networkSecurityGroupResult', 'type': 'NetworkSecurityGroupResult'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticResult, self).__init__(**kwargs) + self.traffic_query = kwargs.get('traffic_query', None) + self.network_security_group_result = kwargs.get('network_security_group_result', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_result_py3.py new file mode 100644 index 000000000000..02dc97c097c8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_configuration_diagnostic_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResult(Model): + """Network configuration diagnostic result corresponded to provided traffic + query. + + :param traffic_query: + :type traffic_query: ~azure.mgmt.network.v2018_07_01.models.TrafficQuery + :param network_security_group_result: + :type network_security_group_result: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroupResult + """ + + _attribute_map = { + 'traffic_query': {'key': 'trafficQuery', 'type': 'TrafficQuery'}, + 'network_security_group_result': {'key': 'networkSecurityGroupResult', 'type': 'NetworkSecurityGroupResult'}, + } + + def __init__(self, *, traffic_query=None, network_security_group_result=None, **kwargs) -> None: + super(NetworkConfigurationDiagnosticResult, self).__init__(**kwargs) + self.traffic_query = traffic_query + self.network_security_group_result = network_security_group_result diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface.py new file mode 100644 index 000000000000..365c2f75ac2a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface.py @@ -0,0 +1,102 @@ +# 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 .resource import Resource + + +class NetworkInterface(Resource): + """A network interface in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_machine: The reference of a virtual machine. + :type virtual_machine: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup + :param ip_configurations: A list of IPConfigurations of the network + interface. + :type ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration] + :param dns_settings: The DNS settings in network interface. + :type dns_settings: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceDnsSettings + :param mac_address: The MAC address of the network interface. + :type mac_address: str + :param primary: Gets whether this is a primary network interface on a + virtual machine. + :type primary: bool + :param enable_accelerated_networking: If the network interface is + accelerated networking enabled. + :type enable_accelerated_networking: bool + :param enable_ip_forwarding: Indicates whether IP forwarding is enabled on + this network interface. + :type enable_ip_forwarding: bool + :param resource_guid: The resource GUID property of the network interface + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_machine': {'key': 'properties.virtualMachine', 'type': 'SubResource'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'NetworkInterfaceDnsSettings'}, + 'mac_address': {'key': 'properties.macAddress', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterface, self).__init__(**kwargs) + self.virtual_machine = kwargs.get('virtual_machine', None) + self.network_security_group = kwargs.get('network_security_group', None) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.dns_settings = kwargs.get('dns_settings', None) + self.mac_address = kwargs.get('mac_address', None) + self.primary = kwargs.get('primary', None) + self.enable_accelerated_networking = kwargs.get('enable_accelerated_networking', None) + self.enable_ip_forwarding = kwargs.get('enable_ip_forwarding', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_association.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_association.py new file mode 100644 index 000000000000..1c4f3bf18704 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_association.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkInterfaceAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Network interface ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = kwargs.get('security_rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_association_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_association_py3.py new file mode 100644 index 000000000000..bd85f478d46d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_association_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkInterfaceAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Network interface ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, *, security_rules=None, **kwargs) -> None: + super(NetworkInterfaceAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = security_rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_dns_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_dns_settings.py new file mode 100644 index 000000000000..b6ee0ff40d51 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_dns_settings.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkInterfaceDnsSettings(Model): + """DNS settings of a network interface. + + :param dns_servers: List of DNS servers IP addresses. Use + 'AzureProvidedDNS' to switch to azure provided DNS resolution. + 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the + only value in dnsServers collection. + :type dns_servers: list[str] + :param applied_dns_servers: If the VM that uses this NIC is part of an + Availability Set, then this list will have the union of all DNS servers + from all NICs that are part of the Availability Set. This property is what + is configured on each of those VMs. + :type applied_dns_servers: list[str] + :param internal_dns_name_label: Relative DNS name for this NIC used for + internal communications between VMs in the same virtual network. + :type internal_dns_name_label: str + :param internal_fqdn: Fully qualified DNS name supporting internal + communications between VMs in the same virtual network. + :type internal_fqdn: str + :param internal_domain_name_suffix: Even if internalDnsNameLabel is not + specified, a DNS entry is created for the primary NIC of the VM. This DNS + name can be constructed by concatenating the VM name with the value of + internalDomainNameSuffix. + :type internal_domain_name_suffix: str + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + 'applied_dns_servers': {'key': 'appliedDnsServers', 'type': '[str]'}, + 'internal_dns_name_label': {'key': 'internalDnsNameLabel', 'type': 'str'}, + 'internal_fqdn': {'key': 'internalFqdn', 'type': 'str'}, + 'internal_domain_name_suffix': {'key': 'internalDomainNameSuffix', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceDnsSettings, self).__init__(**kwargs) + self.dns_servers = kwargs.get('dns_servers', None) + self.applied_dns_servers = kwargs.get('applied_dns_servers', None) + self.internal_dns_name_label = kwargs.get('internal_dns_name_label', None) + self.internal_fqdn = kwargs.get('internal_fqdn', None) + self.internal_domain_name_suffix = kwargs.get('internal_domain_name_suffix', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_dns_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_dns_settings_py3.py new file mode 100644 index 000000000000..ccdcc937def8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_dns_settings_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkInterfaceDnsSettings(Model): + """DNS settings of a network interface. + + :param dns_servers: List of DNS servers IP addresses. Use + 'AzureProvidedDNS' to switch to azure provided DNS resolution. + 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the + only value in dnsServers collection. + :type dns_servers: list[str] + :param applied_dns_servers: If the VM that uses this NIC is part of an + Availability Set, then this list will have the union of all DNS servers + from all NICs that are part of the Availability Set. This property is what + is configured on each of those VMs. + :type applied_dns_servers: list[str] + :param internal_dns_name_label: Relative DNS name for this NIC used for + internal communications between VMs in the same virtual network. + :type internal_dns_name_label: str + :param internal_fqdn: Fully qualified DNS name supporting internal + communications between VMs in the same virtual network. + :type internal_fqdn: str + :param internal_domain_name_suffix: Even if internalDnsNameLabel is not + specified, a DNS entry is created for the primary NIC of the VM. This DNS + name can be constructed by concatenating the VM name with the value of + internalDomainNameSuffix. + :type internal_domain_name_suffix: str + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + 'applied_dns_servers': {'key': 'appliedDnsServers', 'type': '[str]'}, + 'internal_dns_name_label': {'key': 'internalDnsNameLabel', 'type': 'str'}, + 'internal_fqdn': {'key': 'internalFqdn', 'type': 'str'}, + 'internal_domain_name_suffix': {'key': 'internalDomainNameSuffix', 'type': 'str'}, + } + + def __init__(self, *, dns_servers=None, applied_dns_servers=None, internal_dns_name_label: str=None, internal_fqdn: str=None, internal_domain_name_suffix: str=None, **kwargs) -> None: + super(NetworkInterfaceDnsSettings, self).__init__(**kwargs) + self.dns_servers = dns_servers + self.applied_dns_servers = applied_dns_servers + self.internal_dns_name_label = internal_dns_name_label + self.internal_fqdn = internal_fqdn + self.internal_domain_name_suffix = internal_domain_name_suffix diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration.py new file mode 100644 index 000000000000..2d6df26b4854 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration.py @@ -0,0 +1,100 @@ +# 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 .sub_resource import SubResource + + +class NetworkInterfaceIPConfiguration(SubResource): + """IPConfiguration in a network interface. + + :param id: Resource ID. + :type id: str + :param application_gateway_backend_address_pools: The reference of + ApplicationGatewayBackendAddressPool resource. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendAddressPool] + :param load_balancer_backend_address_pools: The reference of + LoadBalancerBackendAddressPool resource. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.BackendAddressPool] + :param load_balancer_inbound_nat_rules: A list of references of + LoadBalancerInboundNatRules. + :type load_balancer_inbound_nat_rules: + list[~azure.mgmt.network.v2018_07_01.models.InboundNatRule] + :param private_ip_address: Private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: Defines how a private IP address is + assigned. Possible values are: 'Static' and 'Dynamic'. Possible values + include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param private_ip_address_version: Available from Api-Version 2016-03-30 + onwards, it represents whether the specific ipconfiguration is IPv4 or + IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. + Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2018_07_01.models.IPVersion + :param subnet: Subnet bound to the IP configuration. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.Subnet + :param primary: Gets whether this is a primary customer address on the + network interface. + :type primary: bool + :param public_ip_address: Public IP address bound to the IP configuration. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress + :param application_security_groups: Application security groups in which + the IP configuration is included. + :type application_security_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + :param provisioning_state: The provisioning state of the network interface + IP configuration. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancer_inbound_nat_rules': {'key': 'properties.loadBalancerInboundNatRules', 'type': '[InboundNatRule]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceIPConfiguration, self).__init__(**kwargs) + self.application_gateway_backend_address_pools = kwargs.get('application_gateway_backend_address_pools', None) + self.load_balancer_backend_address_pools = kwargs.get('load_balancer_backend_address_pools', None) + self.load_balancer_inbound_nat_rules = kwargs.get('load_balancer_inbound_nat_rules', None) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.private_ip_address_version = kwargs.get('private_ip_address_version', None) + self.subnet = kwargs.get('subnet', None) + self.primary = kwargs.get('primary', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.application_security_groups = kwargs.get('application_security_groups', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration_paged.py new file mode 100644 index 000000000000..22a12b916b25 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkInterfaceIPConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkInterfaceIPConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkInterfaceIPConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkInterfaceIPConfigurationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration_py3.py new file mode 100644 index 000000000000..496de9fee85f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_ip_configuration_py3.py @@ -0,0 +1,100 @@ +# 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 .sub_resource_py3 import SubResource + + +class NetworkInterfaceIPConfiguration(SubResource): + """IPConfiguration in a network interface. + + :param id: Resource ID. + :type id: str + :param application_gateway_backend_address_pools: The reference of + ApplicationGatewayBackendAddressPool resource. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendAddressPool] + :param load_balancer_backend_address_pools: The reference of + LoadBalancerBackendAddressPool resource. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.network.v2018_07_01.models.BackendAddressPool] + :param load_balancer_inbound_nat_rules: A list of references of + LoadBalancerInboundNatRules. + :type load_balancer_inbound_nat_rules: + list[~azure.mgmt.network.v2018_07_01.models.InboundNatRule] + :param private_ip_address: Private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: Defines how a private IP address is + assigned. Possible values are: 'Static' and 'Dynamic'. Possible values + include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param private_ip_address_version: Available from Api-Version 2016-03-30 + onwards, it represents whether the specific ipconfiguration is IPv4 or + IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. + Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2018_07_01.models.IPVersion + :param subnet: Subnet bound to the IP configuration. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.Subnet + :param primary: Gets whether this is a primary customer address on the + network interface. + :type primary: bool + :param public_ip_address: Public IP address bound to the IP configuration. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress + :param application_security_groups: Application security groups in which + the IP configuration is included. + :type application_security_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + :param provisioning_state: The provisioning state of the network interface + IP configuration. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancer_inbound_nat_rules': {'key': 'properties.loadBalancerInboundNatRules', 'type': '[InboundNatRule]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, application_gateway_backend_address_pools=None, load_balancer_backend_address_pools=None, load_balancer_inbound_nat_rules=None, private_ip_address: str=None, private_ip_allocation_method=None, private_ip_address_version=None, subnet=None, primary: bool=None, public_ip_address=None, application_security_groups=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(NetworkInterfaceIPConfiguration, self).__init__(id=id, **kwargs) + self.application_gateway_backend_address_pools = application_gateway_backend_address_pools + self.load_balancer_backend_address_pools = load_balancer_backend_address_pools + self.load_balancer_inbound_nat_rules = load_balancer_inbound_nat_rules + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.private_ip_address_version = private_ip_address_version + self.subnet = subnet + self.primary = primary + self.public_ip_address = public_ip_address + self.application_security_groups = application_security_groups + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_paged.py new file mode 100644 index 000000000000..97bbe6fb54e9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkInterfacePaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkInterface ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkInterface]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkInterfacePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_py3.py new file mode 100644 index 000000000000..796c440bffa9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_interface_py3.py @@ -0,0 +1,102 @@ +# 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 .resource_py3 import Resource + + +class NetworkInterface(Resource): + """A network interface in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_machine: The reference of a virtual machine. + :type virtual_machine: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup + :param ip_configurations: A list of IPConfigurations of the network + interface. + :type ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration] + :param dns_settings: The DNS settings in network interface. + :type dns_settings: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceDnsSettings + :param mac_address: The MAC address of the network interface. + :type mac_address: str + :param primary: Gets whether this is a primary network interface on a + virtual machine. + :type primary: bool + :param enable_accelerated_networking: If the network interface is + accelerated networking enabled. + :type enable_accelerated_networking: bool + :param enable_ip_forwarding: Indicates whether IP forwarding is enabled on + this network interface. + :type enable_ip_forwarding: bool + :param resource_guid: The resource GUID property of the network interface + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_machine': {'key': 'properties.virtualMachine', 'type': 'SubResource'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'NetworkInterfaceDnsSettings'}, + 'mac_address': {'key': 'properties.macAddress', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_machine=None, network_security_group=None, ip_configurations=None, dns_settings=None, mac_address: str=None, primary: bool=None, enable_accelerated_networking: bool=None, enable_ip_forwarding: bool=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(NetworkInterface, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_machine = virtual_machine + self.network_security_group = network_security_group + self.ip_configurations = ip_configurations + self.dns_settings = dns_settings + self.mac_address = mac_address + self.primary = primary + self.enable_accelerated_networking = enable_accelerated_networking + self.enable_ip_forwarding = enable_ip_forwarding + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_management_client_enums.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_management_client_enums.py new file mode 100644 index 000000000000..91c620d605e4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_management_client_enums.py @@ -0,0 +1,640 @@ +# 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 enum import Enum + + +class ProvisioningState(str, Enum): + + succeeded = "Succeeded" + updating = "Updating" + deleting = "Deleting" + failed = "Failed" + + +class AzureFirewallRCActionType(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class AzureFirewallApplicationRuleProtocolType(str, Enum): + + http = "Http" + https = "Https" + + +class AzureFirewallNetworkRuleProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + any = "Any" + icmp = "ICMP" + + +class TransportProtocol(str, Enum): + + udp = "Udp" + tcp = "Tcp" + all = "All" + + +class IPAllocationMethod(str, Enum): + + static = "Static" + dynamic = "Dynamic" + + +class IPVersion(str, Enum): + + ipv4 = "IPv4" + ipv6 = "IPv6" + + +class SecurityRuleProtocol(str, Enum): + + tcp = "Tcp" + udp = "Udp" + asterisk = "*" + + +class SecurityRuleAccess(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class SecurityRuleDirection(str, Enum): + + inbound = "Inbound" + outbound = "Outbound" + + +class RouteNextHopType(str, Enum): + + virtual_network_gateway = "VirtualNetworkGateway" + vnet_local = "VnetLocal" + internet = "Internet" + virtual_appliance = "VirtualAppliance" + none = "None" + + +class PublicIPAddressSkuName(str, Enum): + + basic = "Basic" + standard = "Standard" + + +class ApplicationGatewayProtocol(str, Enum): + + http = "Http" + https = "Https" + + +class ApplicationGatewayCookieBasedAffinity(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" + + +class ApplicationGatewayBackendHealthServerHealth(str, Enum): + + unknown = "Unknown" + up = "Up" + down = "Down" + partial = "Partial" + draining = "Draining" + + +class ApplicationGatewaySkuName(str, Enum): + + standard_small = "Standard_Small" + standard_medium = "Standard_Medium" + standard_large = "Standard_Large" + waf_medium = "WAF_Medium" + waf_large = "WAF_Large" + standard_v2 = "Standard_v2" + waf_v2 = "WAF_v2" + + +class ApplicationGatewayTier(str, Enum): + + standard = "Standard" + waf = "WAF" + standard_v2 = "Standard_v2" + waf_v2 = "WAF_v2" + + +class ApplicationGatewaySslProtocol(str, Enum): + + tl_sv1_0 = "TLSv1_0" + tl_sv1_1 = "TLSv1_1" + tl_sv1_2 = "TLSv1_2" + + +class ApplicationGatewaySslPolicyType(str, Enum): + + predefined = "Predefined" + custom = "Custom" + + +class ApplicationGatewaySslPolicyName(str, Enum): + + app_gw_ssl_policy20150501 = "AppGwSslPolicy20150501" + app_gw_ssl_policy20170401 = "AppGwSslPolicy20170401" + app_gw_ssl_policy20170401_s = "AppGwSslPolicy20170401S" + + +class ApplicationGatewaySslCipherSuite(str, Enum): + + tls_ecdhe_rsa_with_aes_256_cbc_sha384 = "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384" + tls_ecdhe_rsa_with_aes_128_cbc_sha256 = "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + tls_ecdhe_rsa_with_aes_256_cbc_sha = "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA" + tls_ecdhe_rsa_with_aes_128_cbc_sha = "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA" + tls_dhe_rsa_with_aes_256_gcm_sha384 = "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384" + tls_dhe_rsa_with_aes_128_gcm_sha256 = "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" + tls_dhe_rsa_with_aes_256_cbc_sha = "TLS_DHE_RSA_WITH_AES_256_CBC_SHA" + tls_dhe_rsa_with_aes_128_cbc_sha = "TLS_DHE_RSA_WITH_AES_128_CBC_SHA" + tls_rsa_with_aes_256_gcm_sha384 = "TLS_RSA_WITH_AES_256_GCM_SHA384" + tls_rsa_with_aes_128_gcm_sha256 = "TLS_RSA_WITH_AES_128_GCM_SHA256" + tls_rsa_with_aes_256_cbc_sha256 = "TLS_RSA_WITH_AES_256_CBC_SHA256" + tls_rsa_with_aes_128_cbc_sha256 = "TLS_RSA_WITH_AES_128_CBC_SHA256" + tls_rsa_with_aes_256_cbc_sha = "TLS_RSA_WITH_AES_256_CBC_SHA" + tls_rsa_with_aes_128_cbc_sha = "TLS_RSA_WITH_AES_128_CBC_SHA" + tls_ecdhe_ecdsa_with_aes_256_gcm_sha384 = "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384" + tls_ecdhe_ecdsa_with_aes_128_gcm_sha256 = "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256" + tls_ecdhe_ecdsa_with_aes_256_cbc_sha384 = "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384" + tls_ecdhe_ecdsa_with_aes_128_cbc_sha256 = "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256" + tls_ecdhe_ecdsa_with_aes_256_cbc_sha = "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" + tls_ecdhe_ecdsa_with_aes_128_cbc_sha = "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA" + tls_dhe_dss_with_aes_256_cbc_sha256 = "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256" + tls_dhe_dss_with_aes_128_cbc_sha256 = "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256" + tls_dhe_dss_with_aes_256_cbc_sha = "TLS_DHE_DSS_WITH_AES_256_CBC_SHA" + tls_dhe_dss_with_aes_128_cbc_sha = "TLS_DHE_DSS_WITH_AES_128_CBC_SHA" + tls_rsa_with_3_des_ede_cbc_sha = "TLS_RSA_WITH_3DES_EDE_CBC_SHA" + + +class ApplicationGatewayRequestRoutingRuleType(str, Enum): + + basic = "Basic" + path_based_routing = "PathBasedRouting" + + +class ApplicationGatewayRedirectType(str, Enum): + + permanent = "Permanent" + found = "Found" + see_other = "SeeOther" + temporary = "Temporary" + + +class ApplicationGatewayOperationalState(str, Enum): + + stopped = "Stopped" + starting = "Starting" + running = "Running" + stopping = "Stopping" + + +class ApplicationGatewayFirewallMode(str, Enum): + + detection = "Detection" + prevention = "Prevention" + + +class AuthorizationUseStatus(str, Enum): + + available = "Available" + in_use = "InUse" + + +class ExpressRouteCircuitPeeringAdvertisedPublicPrefixState(str, Enum): + + not_configured = "NotConfigured" + configuring = "Configuring" + configured = "Configured" + validation_needed = "ValidationNeeded" + + +class Access(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class ExpressRoutePeeringType(str, Enum): + + azure_public_peering = "AzurePublicPeering" + azure_private_peering = "AzurePrivatePeering" + microsoft_peering = "MicrosoftPeering" + + +class ExpressRoutePeeringState(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class CircuitConnectionStatus(str, Enum): + + connected = "Connected" + connecting = "Connecting" + disconnected = "Disconnected" + + +class ExpressRouteCircuitPeeringState(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class ExpressRouteCircuitSkuTier(str, Enum): + + standard = "Standard" + premium = "Premium" + + +class ExpressRouteCircuitSkuFamily(str, Enum): + + unlimited_data = "UnlimitedData" + metered_data = "MeteredData" + + +class ServiceProviderProvisioningState(str, Enum): + + not_provisioned = "NotProvisioned" + provisioning = "Provisioning" + provisioned = "Provisioned" + deprovisioning = "Deprovisioning" + + +class LoadBalancerSkuName(str, Enum): + + basic = "Basic" + standard = "Standard" + + +class LoadDistribution(str, Enum): + + default = "Default" + source_ip = "SourceIP" + source_ip_protocol = "SourceIPProtocol" + + +class ProbeProtocol(str, Enum): + + http = "Http" + tcp = "Tcp" + https = "Https" + + +class NetworkOperationStatus(str, Enum): + + in_progress = "InProgress" + succeeded = "Succeeded" + failed = "Failed" + + +class EffectiveSecurityRuleProtocol(str, Enum): + + tcp = "Tcp" + udp = "Udp" + all = "All" + + +class EffectiveRouteSource(str, Enum): + + unknown = "Unknown" + user = "User" + virtual_network_gateway = "VirtualNetworkGateway" + default = "Default" + + +class EffectiveRouteState(str, Enum): + + active = "Active" + invalid = "Invalid" + + +class AssociationType(str, Enum): + + associated = "Associated" + contains = "Contains" + + +class Direction(str, Enum): + + inbound = "Inbound" + outbound = "Outbound" + + +class IpFlowProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + + +class NextHopType(str, Enum): + + internet = "Internet" + virtual_appliance = "VirtualAppliance" + virtual_network_gateway = "VirtualNetworkGateway" + vnet_local = "VnetLocal" + hyper_net_gateway = "HyperNetGateway" + none = "None" + + +class PcProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + any = "Any" + + +class PcStatus(str, Enum): + + not_started = "NotStarted" + running = "Running" + stopped = "Stopped" + error = "Error" + unknown = "Unknown" + + +class PcError(str, Enum): + + internal_error = "InternalError" + agent_stopped = "AgentStopped" + capture_failed = "CaptureFailed" + local_file_failed = "LocalFileFailed" + storage_failed = "StorageFailed" + + +class Protocol(str, Enum): + + tcp = "Tcp" + http = "Http" + https = "Https" + icmp = "Icmp" + + +class HTTPMethod(str, Enum): + + get = "Get" + + +class Origin(str, Enum): + + local = "Local" + inbound = "Inbound" + outbound = "Outbound" + + +class Severity(str, Enum): + + error = "Error" + warning = "Warning" + + +class IssueType(str, Enum): + + unknown = "Unknown" + agent_stopped = "AgentStopped" + guest_firewall = "GuestFirewall" + dns_resolution = "DnsResolution" + socket_bind = "SocketBind" + network_security_rule = "NetworkSecurityRule" + user_defined_route = "UserDefinedRoute" + port_throttled = "PortThrottled" + platform = "Platform" + + +class ConnectionStatus(str, Enum): + + unknown = "Unknown" + connected = "Connected" + disconnected = "Disconnected" + degraded = "Degraded" + + +class ConnectionMonitorSourceStatus(str, Enum): + + uknown = "Uknown" + active = "Active" + inactive = "Inactive" + + +class ConnectionState(str, Enum): + + reachable = "Reachable" + unreachable = "Unreachable" + unknown = "Unknown" + + +class EvaluationState(str, Enum): + + not_started = "NotStarted" + in_progress = "InProgress" + completed = "Completed" + + +class PublicIPPrefixSkuName(str, Enum): + + standard = "Standard" + + +class VirtualNetworkPeeringState(str, Enum): + + initiated = "Initiated" + connected = "Connected" + disconnected = "Disconnected" + + +class VirtualNetworkGatewayType(str, Enum): + + vpn = "Vpn" + express_route = "ExpressRoute" + + +class VpnType(str, Enum): + + policy_based = "PolicyBased" + route_based = "RouteBased" + + +class VirtualNetworkGatewaySkuName(str, Enum): + + basic = "Basic" + high_performance = "HighPerformance" + standard = "Standard" + ultra_performance = "UltraPerformance" + vpn_gw1 = "VpnGw1" + vpn_gw2 = "VpnGw2" + vpn_gw3 = "VpnGw3" + vpn_gw1_az = "VpnGw1AZ" + vpn_gw2_az = "VpnGw2AZ" + vpn_gw3_az = "VpnGw3AZ" + er_gw1_az = "ErGw1AZ" + er_gw2_az = "ErGw2AZ" + er_gw3_az = "ErGw3AZ" + + +class VirtualNetworkGatewaySkuTier(str, Enum): + + basic = "Basic" + high_performance = "HighPerformance" + standard = "Standard" + ultra_performance = "UltraPerformance" + vpn_gw1 = "VpnGw1" + vpn_gw2 = "VpnGw2" + vpn_gw3 = "VpnGw3" + vpn_gw1_az = "VpnGw1AZ" + vpn_gw2_az = "VpnGw2AZ" + vpn_gw3_az = "VpnGw3AZ" + er_gw1_az = "ErGw1AZ" + er_gw2_az = "ErGw2AZ" + er_gw3_az = "ErGw3AZ" + + +class VpnClientProtocol(str, Enum): + + ike_v2 = "IkeV2" + sstp = "SSTP" + open_vpn = "OpenVPN" + + +class IpsecEncryption(str, Enum): + + none = "None" + des = "DES" + des3 = "DES3" + aes128 = "AES128" + aes192 = "AES192" + aes256 = "AES256" + gcmaes128 = "GCMAES128" + gcmaes192 = "GCMAES192" + gcmaes256 = "GCMAES256" + + +class IpsecIntegrity(str, Enum): + + md5 = "MD5" + sha1 = "SHA1" + sha256 = "SHA256" + gcmaes128 = "GCMAES128" + gcmaes192 = "GCMAES192" + gcmaes256 = "GCMAES256" + + +class IkeEncryption(str, Enum): + + des = "DES" + des3 = "DES3" + aes128 = "AES128" + aes192 = "AES192" + aes256 = "AES256" + gcmaes256 = "GCMAES256" + gcmaes128 = "GCMAES128" + + +class IkeIntegrity(str, Enum): + + md5 = "MD5" + sha1 = "SHA1" + sha256 = "SHA256" + sha384 = "SHA384" + gcmaes256 = "GCMAES256" + gcmaes128 = "GCMAES128" + + +class DhGroup(str, Enum): + + none = "None" + dh_group1 = "DHGroup1" + dh_group2 = "DHGroup2" + dh_group14 = "DHGroup14" + dh_group2048 = "DHGroup2048" + ecp256 = "ECP256" + ecp384 = "ECP384" + dh_group24 = "DHGroup24" + + +class PfsGroup(str, Enum): + + none = "None" + pfs1 = "PFS1" + pfs2 = "PFS2" + pfs2048 = "PFS2048" + ecp256 = "ECP256" + ecp384 = "ECP384" + pfs24 = "PFS24" + pfs14 = "PFS14" + pfsmm = "PFSMM" + + +class BgpPeerState(str, Enum): + + unknown = "Unknown" + stopped = "Stopped" + idle = "Idle" + connecting = "Connecting" + connected = "Connected" + + +class ProcessorArchitecture(str, Enum): + + amd64 = "Amd64" + x86 = "X86" + + +class AuthenticationMethod(str, Enum): + + eaptls = "EAPTLS" + eapmscha_pv2 = "EAPMSCHAPv2" + + +class VirtualNetworkGatewayConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class VirtualNetworkGatewayConnectionType(str, Enum): + + ipsec = "IPsec" + vnet2_vnet = "Vnet2Vnet" + express_route = "ExpressRoute" + vpn_client = "VPNClient" + + +class VpnConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class TunnelConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class HubVirtualNetworkConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group.py new file mode 100644 index 000000000000..e8091c7553c5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group.py @@ -0,0 +1,86 @@ +# 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 .resource import Resource + + +class NetworkSecurityGroup(Resource): + """NetworkSecurityGroup resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param security_rules: A collection of security rules of the network + security group. + :type security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + :param default_security_rules: The default security rules of network + security group. + :type default_security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + :ivar network_interfaces: A collection of references to network + interfaces. + :vartype network_interfaces: + list[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_07_01.models.Subnet] + :param resource_guid: The resource GUID property of the network security + group resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'subnets': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'security_rules': {'key': 'properties.securityRules', 'type': '[SecurityRule]'}, + 'default_security_rules': {'key': 'properties.defaultSecurityRules', 'type': '[SecurityRule]'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityGroup, self).__init__(**kwargs) + self.security_rules = kwargs.get('security_rules', None) + self.default_security_rules = kwargs.get('default_security_rules', None) + self.network_interfaces = None + self.subnets = None + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_paged.py new file mode 100644 index 000000000000..c2e4ab1cadf0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkSecurityGroupPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkSecurityGroup ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkSecurityGroup]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkSecurityGroupPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_py3.py new file mode 100644 index 000000000000..de2041894027 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_py3.py @@ -0,0 +1,86 @@ +# 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 .resource_py3 import Resource + + +class NetworkSecurityGroup(Resource): + """NetworkSecurityGroup resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param security_rules: A collection of security rules of the network + security group. + :type security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + :param default_security_rules: The default security rules of network + security group. + :type default_security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + :ivar network_interfaces: A collection of references to network + interfaces. + :vartype network_interfaces: + list[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_07_01.models.Subnet] + :param resource_guid: The resource GUID property of the network security + group resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'subnets': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'security_rules': {'key': 'properties.securityRules', 'type': '[SecurityRule]'}, + 'default_security_rules': {'key': 'properties.defaultSecurityRules', 'type': '[SecurityRule]'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, security_rules=None, default_security_rules=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(NetworkSecurityGroup, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.security_rules = security_rules + self.default_security_rules = default_security_rules + self.network_interfaces = None + self.subnets = None + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_result.py new file mode 100644 index 000000000000..299c08126fc6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_result.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityGroupResult(Model): + """Network configuration diagnostic result corresponded provided traffic + query. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param security_rule_access_result: The network traffic is allowed or + denied. Possible values are 'Allow' and 'Deny'. Possible values include: + 'Allow', 'Deny' + :type security_rule_access_result: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleAccess + :ivar evaluated_network_security_groups: List of results network security + groups diagnostic. + :vartype evaluated_network_security_groups: + list[~azure.mgmt.network.v2018_07_01.models.EvaluatedNetworkSecurityGroup] + """ + + _validation = { + 'evaluated_network_security_groups': {'readonly': True}, + } + + _attribute_map = { + 'security_rule_access_result': {'key': 'securityRuleAccessResult', 'type': 'str'}, + 'evaluated_network_security_groups': {'key': 'evaluatedNetworkSecurityGroups', 'type': '[EvaluatedNetworkSecurityGroup]'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityGroupResult, self).__init__(**kwargs) + self.security_rule_access_result = kwargs.get('security_rule_access_result', None) + self.evaluated_network_security_groups = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_result_py3.py new file mode 100644 index 000000000000..7ffbe8959fd6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_group_result_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityGroupResult(Model): + """Network configuration diagnostic result corresponded provided traffic + query. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param security_rule_access_result: The network traffic is allowed or + denied. Possible values are 'Allow' and 'Deny'. Possible values include: + 'Allow', 'Deny' + :type security_rule_access_result: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleAccess + :ivar evaluated_network_security_groups: List of results network security + groups diagnostic. + :vartype evaluated_network_security_groups: + list[~azure.mgmt.network.v2018_07_01.models.EvaluatedNetworkSecurityGroup] + """ + + _validation = { + 'evaluated_network_security_groups': {'readonly': True}, + } + + _attribute_map = { + 'security_rule_access_result': {'key': 'securityRuleAccessResult', 'type': 'str'}, + 'evaluated_network_security_groups': {'key': 'evaluatedNetworkSecurityGroups', 'type': '[EvaluatedNetworkSecurityGroup]'}, + } + + def __init__(self, *, security_rule_access_result=None, **kwargs) -> None: + super(NetworkSecurityGroupResult, self).__init__(**kwargs) + self.security_rule_access_result = security_rule_access_result + self.evaluated_network_security_groups = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_rules_evaluation_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_rules_evaluation_result.py new file mode 100644 index 000000000000..63c680f2093f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_rules_evaluation_result.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityRulesEvaluationResult(Model): + """Network security rules evaluation result. + + :param name: Name of the network security rule. + :type name: str + :param protocol_matched: Value indicating whether protocol is matched. + :type protocol_matched: bool + :param source_matched: Value indicating whether source is matched. + :type source_matched: bool + :param source_port_matched: Value indicating whether source port is + matched. + :type source_port_matched: bool + :param destination_matched: Value indicating whether destination is + matched. + :type destination_matched: bool + :param destination_port_matched: Value indicating whether destination port + is matched. + :type destination_port_matched: bool + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol_matched': {'key': 'protocolMatched', 'type': 'bool'}, + 'source_matched': {'key': 'sourceMatched', 'type': 'bool'}, + 'source_port_matched': {'key': 'sourcePortMatched', 'type': 'bool'}, + 'destination_matched': {'key': 'destinationMatched', 'type': 'bool'}, + 'destination_port_matched': {'key': 'destinationPortMatched', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityRulesEvaluationResult, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol_matched = kwargs.get('protocol_matched', None) + self.source_matched = kwargs.get('source_matched', None) + self.source_port_matched = kwargs.get('source_port_matched', None) + self.destination_matched = kwargs.get('destination_matched', None) + self.destination_port_matched = kwargs.get('destination_port_matched', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_rules_evaluation_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_rules_evaluation_result_py3.py new file mode 100644 index 000000000000..3958fc34a17b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_security_rules_evaluation_result_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityRulesEvaluationResult(Model): + """Network security rules evaluation result. + + :param name: Name of the network security rule. + :type name: str + :param protocol_matched: Value indicating whether protocol is matched. + :type protocol_matched: bool + :param source_matched: Value indicating whether source is matched. + :type source_matched: bool + :param source_port_matched: Value indicating whether source port is + matched. + :type source_port_matched: bool + :param destination_matched: Value indicating whether destination is + matched. + :type destination_matched: bool + :param destination_port_matched: Value indicating whether destination port + is matched. + :type destination_port_matched: bool + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol_matched': {'key': 'protocolMatched', 'type': 'bool'}, + 'source_matched': {'key': 'sourceMatched', 'type': 'bool'}, + 'source_port_matched': {'key': 'sourcePortMatched', 'type': 'bool'}, + 'destination_matched': {'key': 'destinationMatched', 'type': 'bool'}, + 'destination_port_matched': {'key': 'destinationPortMatched', 'type': 'bool'}, + } + + def __init__(self, *, name: str=None, protocol_matched: bool=None, source_matched: bool=None, source_port_matched: bool=None, destination_matched: bool=None, destination_port_matched: bool=None, **kwargs) -> None: + super(NetworkSecurityRulesEvaluationResult, self).__init__(**kwargs) + self.name = name + self.protocol_matched = protocol_matched + self.source_matched = source_matched + self.source_port_matched = source_port_matched + self.destination_matched = destination_matched + self.destination_port_matched = destination_port_matched diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher.py new file mode 100644 index 000000000000..d23b7d199fcd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class NetworkWatcher(Resource): + """Network watcher in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkWatcher, self).__init__(**kwargs) + self.etag = kwargs.get('etag', None) + self.provisioning_state = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher_paged.py new file mode 100644 index 000000000000..b26397778f80 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkWatcherPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkWatcher ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkWatcher]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkWatcherPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher_py3.py new file mode 100644 index 000000000000..f3e633ff11bc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/network_watcher_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class NetworkWatcher(Resource): + """Network watcher in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, etag: str=None, **kwargs) -> None: + super(NetworkWatcher, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.etag = etag + self.provisioning_state = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_parameters.py new file mode 100644 index 000000000000..54d8674c8884 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_parameters.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NextHopParameters(Model): + """Parameters that define the source and destination endpoint. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The resource identifier of the target + resource against which the action is to be performed. + :type target_resource_id: str + :param source_ip_address: Required. The source IP address. + :type source_ip_address: str + :param destination_ip_address: Required. The destination IP address. + :type destination_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of the nics, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'source_ip_address': {'required': True}, + 'destination_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'source_ip_address': {'key': 'sourceIPAddress', 'type': 'str'}, + 'destination_ip_address': {'key': 'destinationIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NextHopParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.source_ip_address = kwargs.get('source_ip_address', None) + self.destination_ip_address = kwargs.get('destination_ip_address', None) + self.target_nic_resource_id = kwargs.get('target_nic_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_parameters_py3.py new file mode 100644 index 000000000000..50ee3d334e91 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_parameters_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NextHopParameters(Model): + """Parameters that define the source and destination endpoint. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The resource identifier of the target + resource against which the action is to be performed. + :type target_resource_id: str + :param source_ip_address: Required. The source IP address. + :type source_ip_address: str + :param destination_ip_address: Required. The destination IP address. + :type destination_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of the nics, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'source_ip_address': {'required': True}, + 'destination_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'source_ip_address': {'key': 'sourceIPAddress', 'type': 'str'}, + 'destination_ip_address': {'key': 'destinationIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, source_ip_address: str, destination_ip_address: str, target_nic_resource_id: str=None, **kwargs) -> None: + super(NextHopParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.source_ip_address = source_ip_address + self.destination_ip_address = destination_ip_address + self.target_nic_resource_id = target_nic_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_result.py new file mode 100644 index 000000000000..06bb2202ba2a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_result.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NextHopResult(Model): + """The information about next hop from the specified VM. + + :param next_hop_type: Next hop type. Possible values include: 'Internet', + 'VirtualAppliance', 'VirtualNetworkGateway', 'VnetLocal', + 'HyperNetGateway', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_07_01.models.NextHopType + :param next_hop_ip_address: Next hop IP Address + :type next_hop_ip_address: str + :param route_table_id: The resource identifier for the route table + associated with the route being returned. If the route being returned does + not correspond to any user created routes then this field will be the + string 'System Route'. + :type route_table_id: str + """ + + _attribute_map = { + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + 'route_table_id': {'key': 'routeTableId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NextHopResult, self).__init__(**kwargs) + self.next_hop_type = kwargs.get('next_hop_type', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.route_table_id = kwargs.get('route_table_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_result_py3.py new file mode 100644 index 000000000000..35c5c9a2a7b9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/next_hop_result_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NextHopResult(Model): + """The information about next hop from the specified VM. + + :param next_hop_type: Next hop type. Possible values include: 'Internet', + 'VirtualAppliance', 'VirtualNetworkGateway', 'VnetLocal', + 'HyperNetGateway', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_07_01.models.NextHopType + :param next_hop_ip_address: Next hop IP Address + :type next_hop_ip_address: str + :param route_table_id: The resource identifier for the route table + associated with the route being returned. If the route being returned does + not correspond to any user created routes then this field will be the + string 'System Route'. + :type route_table_id: str + """ + + _attribute_map = { + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + 'route_table_id': {'key': 'routeTableId', 'type': 'str'}, + } + + def __init__(self, *, next_hop_type=None, next_hop_ip_address: str=None, route_table_id: str=None, **kwargs) -> None: + super(NextHopResult, self).__init__(**kwargs) + self.next_hop_type = next_hop_type + self.next_hop_ip_address = next_hop_ip_address + self.route_table_id = route_table_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation.py new file mode 100644 index 000000000000..d2b8ce2dcd8d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Network REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.network.v2018_07_01.models.OperationDisplay + :param origin: Origin of the operation. + :type origin: str + :param service_specification: Specification of the service. + :type service_specification: + ~azure.mgmt.network.v2018_07_01.models.OperationPropertiesFormatServiceSpecification + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'OperationPropertiesFormatServiceSpecification'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.service_specification = kwargs.get('service_specification', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_display.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_display.py new file mode 100644 index 000000000000..6e37c2433f56 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_display.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Network. + :type provider: str + :param resource: Resource on which the operation is performed. + :type resource: str + :param operation: Type of the operation: get, read, delete, etc. + :type operation: str + :param description: Description of the operation. + :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, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_display_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_display_py3.py new file mode 100644 index 000000000000..c0508a41bd48 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_display_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Network. + :type provider: str + :param resource: Resource on which the operation is performed. + :type resource: str + :param operation: Type of the operation: get, read, delete, etc. + :type operation: str + :param description: Description of the operation. + :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(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.resource = resource + self.operation = operation + self.description = description diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_paged.py new file mode 100644 index 000000000000..b1d6c0a64aef --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_properties_format_service_specification.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_properties_format_service_specification.py new file mode 100644 index 000000000000..9124786645ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_properties_format_service_specification.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationPropertiesFormatServiceSpecification(Model): + """Specification of the service. + + :param metric_specifications: Operation service specification. + :type metric_specifications: + list[~azure.mgmt.network.v2018_07_01.models.MetricSpecification] + :param log_specifications: Operation log specification. + :type log_specifications: + list[~azure.mgmt.network.v2018_07_01.models.LogSpecification] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + 'log_specifications': {'key': 'logSpecifications', 'type': '[LogSpecification]'}, + } + + def __init__(self, **kwargs): + super(OperationPropertiesFormatServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = kwargs.get('metric_specifications', None) + self.log_specifications = kwargs.get('log_specifications', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_properties_format_service_specification_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_properties_format_service_specification_py3.py new file mode 100644 index 000000000000..1750a8750321 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_properties_format_service_specification_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationPropertiesFormatServiceSpecification(Model): + """Specification of the service. + + :param metric_specifications: Operation service specification. + :type metric_specifications: + list[~azure.mgmt.network.v2018_07_01.models.MetricSpecification] + :param log_specifications: Operation log specification. + :type log_specifications: + list[~azure.mgmt.network.v2018_07_01.models.LogSpecification] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + 'log_specifications': {'key': 'logSpecifications', 'type': '[LogSpecification]'}, + } + + def __init__(self, *, metric_specifications=None, log_specifications=None, **kwargs) -> None: + super(OperationPropertiesFormatServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = metric_specifications + self.log_specifications = log_specifications diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_py3.py new file mode 100644 index 000000000000..194740df3c6a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/operation_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Network REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.network.v2018_07_01.models.OperationDisplay + :param origin: Origin of the operation. + :type origin: str + :param service_specification: Specification of the service. + :type service_specification: + ~azure.mgmt.network.v2018_07_01.models.OperationPropertiesFormatServiceSpecification + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'OperationPropertiesFormatServiceSpecification'}, + } + + def __init__(self, *, name: str=None, display=None, origin: str=None, service_specification=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display + self.origin = origin + self.service_specification = service_specification diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/outbound_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/outbound_rule.py new file mode 100644 index 000000000000..ef8d73bde0b7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/outbound_rule.py @@ -0,0 +1,82 @@ +# 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 .sub_resource import SubResource + + +class OutboundRule(SubResource): + """Outbound pool of the load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param allocated_outbound_ports: The number of outbound ports to be used + for NAT. + :type allocated_outbound_ports: int + :param frontend_ip_configurations: Required. The Frontend IP addresses of + the load balancer. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param backend_address_pool: Required. A reference to a pool of DIPs. + Outbound traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param protocol: Required. Protocol - TCP, UDP or All. Possible values + include: 'Tcp', 'Udp', 'All' + :type protocol: str or ~azure.mgmt.network.v2018_07_01.models.enum + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param idle_timeout_in_minutes: The timeout for the TCP idle connection + :type idle_timeout_in_minutes: int + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'frontend_ip_configurations': {'required': True}, + 'backend_address_pool': {'required': True}, + 'protocol': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allocated_outbound_ports': {'key': 'properties.allocatedOutboundPorts', 'type': 'int'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[SubResource]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OutboundRule, self).__init__(**kwargs) + self.allocated_outbound_ports = kwargs.get('allocated_outbound_ports', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.protocol = kwargs.get('protocol', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/outbound_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/outbound_rule_py3.py new file mode 100644 index 000000000000..1ac22c81d284 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/outbound_rule_py3.py @@ -0,0 +1,82 @@ +# 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 .sub_resource_py3 import SubResource + + +class OutboundRule(SubResource): + """Outbound pool of the load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param allocated_outbound_ports: The number of outbound ports to be used + for NAT. + :type allocated_outbound_ports: int + :param frontend_ip_configurations: Required. The Frontend IP addresses of + the load balancer. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param backend_address_pool: Required. A reference to a pool of DIPs. + Outbound traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param protocol: Required. Protocol - TCP, UDP or All. Possible values + include: 'Tcp', 'Udp', 'All' + :type protocol: str or ~azure.mgmt.network.v2018_07_01.models.enum + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param idle_timeout_in_minutes: The timeout for the TCP idle connection + :type idle_timeout_in_minutes: int + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'frontend_ip_configurations': {'required': True}, + 'backend_address_pool': {'required': True}, + 'protocol': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allocated_outbound_ports': {'key': 'properties.allocatedOutboundPorts', 'type': 'int'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[SubResource]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, frontend_ip_configurations, backend_address_pool, protocol, id: str=None, allocated_outbound_ports: int=None, provisioning_state: str=None, enable_tcp_reset: bool=None, idle_timeout_in_minutes: int=None, name: str=None, etag: str=None, **kwargs) -> None: + super(OutboundRule, self).__init__(id=id, **kwargs) + self.allocated_outbound_ports = allocated_outbound_ports + self.frontend_ip_configurations = frontend_ip_configurations + self.backend_address_pool = backend_address_pool + self.provisioning_state = provisioning_state + self.protocol = protocol + self.enable_tcp_reset = enable_tcp_reset + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture.py new file mode 100644 index 000000000000..0d468a2dea63 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCapture(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_07_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_07_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, **kwargs): + super(PacketCapture, self).__init__(**kwargs) + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_filter.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_filter.py new file mode 100644 index 000000000000..456f75db9830 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_filter.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureFilter(Model): + """Filter that is applied to packet capture request. Multiple filters can be + applied. + + :param protocol: Protocol to be filtered on. Possible values include: + 'TCP', 'UDP', 'Any'. Default value: "Any" . + :type protocol: str or ~azure.mgmt.network.v2018_07_01.models.PcProtocol + :param local_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5"? for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type local_ip_address: str + :param remote_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type remote_ip_address: str + :param local_port: Local port to be filtered on. Notation: "80" for single + port entry."80-85" for range. "80;443;" for multiple entries. Multiple + ranges not currently supported. Mixing ranges with multiple entries not + currently supported. Default = null. + :type local_port: str + :param remote_port: Remote port to be filtered on. Notation: "80" for + single port entry."80-85" for range. "80;443;" for multiple entries. + Multiple ranges not currently supported. Mixing ranges with multiple + entries not currently supported. Default = null. + :type remote_port: str + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureFilter, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', "Any") + self.local_ip_address = kwargs.get('local_ip_address', None) + self.remote_ip_address = kwargs.get('remote_ip_address', None) + self.local_port = kwargs.get('local_port', None) + self.remote_port = kwargs.get('remote_port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_filter_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_filter_py3.py new file mode 100644 index 000000000000..5e962fab6fd7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_filter_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureFilter(Model): + """Filter that is applied to packet capture request. Multiple filters can be + applied. + + :param protocol: Protocol to be filtered on. Possible values include: + 'TCP', 'UDP', 'Any'. Default value: "Any" . + :type protocol: str or ~azure.mgmt.network.v2018_07_01.models.PcProtocol + :param local_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5"? for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type local_ip_address: str + :param remote_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type remote_ip_address: str + :param local_port: Local port to be filtered on. Notation: "80" for single + port entry."80-85" for range. "80;443;" for multiple entries. Multiple + ranges not currently supported. Mixing ranges with multiple entries not + currently supported. Default = null. + :type local_port: str + :param remote_port: Remote port to be filtered on. Notation: "80" for + single port entry."80-85" for range. "80;443;" for multiple entries. + Multiple ranges not currently supported. Mixing ranges with multiple + entries not currently supported. Default = null. + :type remote_port: str + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + } + + def __init__(self, *, protocol="Any", local_ip_address: str=None, remote_ip_address: str=None, local_port: str=None, remote_port: str=None, **kwargs) -> None: + super(PacketCaptureFilter, self).__init__(**kwargs) + self.protocol = protocol + self.local_ip_address = local_ip_address + self.remote_ip_address = remote_ip_address + self.local_port = local_port + self.remote_port = remote_port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_parameters.py new file mode 100644 index 000000000000..30a63ab251fa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_parameters.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureParameters(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_07_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_07_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureParameters, self).__init__(**kwargs) + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_parameters_py3.py new file mode 100644 index 000000000000..0504486c6052 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_parameters_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureParameters(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_07_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_07_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, *, target: str, storage_location, bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, **kwargs) -> None: + super(PacketCaptureParameters, self).__init__(**kwargs) + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_py3.py new file mode 100644 index 000000000000..62497659756c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCapture(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_07_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_07_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, *, target: str, storage_location, bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, **kwargs) -> None: + super(PacketCapture, self).__init__(**kwargs) + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_query_status_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_query_status_result.py new file mode 100644 index 000000000000..6b6e33c351cb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_query_status_result.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureQueryStatusResult(Model): + """Status of packet capture session. + + :param name: The name of the packet capture resource. + :type name: str + :param id: The ID of the packet capture resource. + :type id: str + :param capture_start_time: The start time of the packet capture session. + :type capture_start_time: datetime + :param packet_capture_status: The status of the packet capture session. + Possible values include: 'NotStarted', 'Running', 'Stopped', 'Error', + 'Unknown' + :type packet_capture_status: str or + ~azure.mgmt.network.v2018_07_01.models.PcStatus + :param stop_reason: The reason the current packet capture session was + stopped. + :type stop_reason: str + :param packet_capture_error: List of errors of packet capture session. + :type packet_capture_error: list[str or + ~azure.mgmt.network.v2018_07_01.models.PcError] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'capture_start_time': {'key': 'captureStartTime', 'type': 'iso-8601'}, + 'packet_capture_status': {'key': 'packetCaptureStatus', 'type': 'str'}, + 'stop_reason': {'key': 'stopReason', 'type': 'str'}, + 'packet_capture_error': {'key': 'packetCaptureError', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureQueryStatusResult, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.capture_start_time = kwargs.get('capture_start_time', None) + self.packet_capture_status = kwargs.get('packet_capture_status', None) + self.stop_reason = kwargs.get('stop_reason', None) + self.packet_capture_error = kwargs.get('packet_capture_error', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_query_status_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_query_status_result_py3.py new file mode 100644 index 000000000000..65a2913406e5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_query_status_result_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureQueryStatusResult(Model): + """Status of packet capture session. + + :param name: The name of the packet capture resource. + :type name: str + :param id: The ID of the packet capture resource. + :type id: str + :param capture_start_time: The start time of the packet capture session. + :type capture_start_time: datetime + :param packet_capture_status: The status of the packet capture session. + Possible values include: 'NotStarted', 'Running', 'Stopped', 'Error', + 'Unknown' + :type packet_capture_status: str or + ~azure.mgmt.network.v2018_07_01.models.PcStatus + :param stop_reason: The reason the current packet capture session was + stopped. + :type stop_reason: str + :param packet_capture_error: List of errors of packet capture session. + :type packet_capture_error: list[str or + ~azure.mgmt.network.v2018_07_01.models.PcError] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'capture_start_time': {'key': 'captureStartTime', 'type': 'iso-8601'}, + 'packet_capture_status': {'key': 'packetCaptureStatus', 'type': 'str'}, + 'stop_reason': {'key': 'stopReason', 'type': 'str'}, + 'packet_capture_error': {'key': 'packetCaptureError', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, id: str=None, capture_start_time=None, packet_capture_status=None, stop_reason: str=None, packet_capture_error=None, **kwargs) -> None: + super(PacketCaptureQueryStatusResult, self).__init__(**kwargs) + self.name = name + self.id = id + self.capture_start_time = capture_start_time + self.packet_capture_status = packet_capture_status + self.stop_reason = stop_reason + self.packet_capture_error = packet_capture_error diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result.py new file mode 100644 index 000000000000..b2436bf7002a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureResult(Model): + """Information about packet capture session. + + 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 name: Name of the packet capture session. + :vartype name: str + :ivar id: ID of the packet capture operation. + :vartype id: str + :param etag: Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_07_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_07_01.models.PacketCaptureFilter] + :param provisioning_state: The provisioning state of the packet capture + session. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = kwargs.get('etag', "A unique read-only string that changes whenever the resource is updated.") + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) + self.provisioning_state = kwargs.get('provisioning_state', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result_paged.py new file mode 100644 index 000000000000..af99c267cda6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class PacketCaptureResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`PacketCaptureResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PacketCaptureResult]'} + } + + def __init__(self, *args, **kwargs): + + super(PacketCaptureResultPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result_py3.py new file mode 100644 index 000000000000..99d8c8c7808d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_result_py3.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureResult(Model): + """Information about packet capture session. + + 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 name: Name of the packet capture session. + :vartype name: str + :ivar id: ID of the packet capture operation. + :vartype id: str + :param etag: Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_07_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_07_01.models.PacketCaptureFilter] + :param provisioning_state: The provisioning state of the packet capture + session. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, target: str, storage_location, etag: str="A unique read-only string that changes whenever the resource is updated.", bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, provisioning_state=None, **kwargs) -> None: + super(PacketCaptureResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = etag + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters + self.provisioning_state = provisioning_state diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_storage_location.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_storage_location.py new file mode 100644 index 000000000000..62ed83d592b3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_storage_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureStorageLocation(Model): + """Describes the storage location for a packet capture session. + + :param storage_id: The ID of the storage account to save the packet + capture session. Required if no local file path is provided. + :type storage_id: str + :param storage_path: The URI of the storage path to save the packet + capture. Must be a well-formed URI describing the location to save the + packet capture. + :type storage_path: str + :param file_path: A valid local path on the targeting VM. Must include the + name of the capture file (*.cap). For linux virtual machine it must start + with /var/captures. Required if no storage ID is provided, otherwise + optional. + :type file_path: str + """ + + _attribute_map = { + 'storage_id': {'key': 'storageId', 'type': 'str'}, + 'storage_path': {'key': 'storagePath', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureStorageLocation, self).__init__(**kwargs) + self.storage_id = kwargs.get('storage_id', None) + self.storage_path = kwargs.get('storage_path', None) + self.file_path = kwargs.get('file_path', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_storage_location_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_storage_location_py3.py new file mode 100644 index 000000000000..6925dd4f9bdf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/packet_capture_storage_location_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureStorageLocation(Model): + """Describes the storage location for a packet capture session. + + :param storage_id: The ID of the storage account to save the packet + capture session. Required if no local file path is provided. + :type storage_id: str + :param storage_path: The URI of the storage path to save the packet + capture. Must be a well-formed URI describing the location to save the + packet capture. + :type storage_path: str + :param file_path: A valid local path on the targeting VM. Must include the + name of the capture file (*.cap). For linux virtual machine it must start + with /var/captures. Required if no storage ID is provided, otherwise + optional. + :type file_path: str + """ + + _attribute_map = { + 'storage_id': {'key': 'storageId', 'type': 'str'}, + 'storage_path': {'key': 'storagePath', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + } + + def __init__(self, *, storage_id: str=None, storage_path: str=None, file_path: str=None, **kwargs) -> None: + super(PacketCaptureStorageLocation, self).__init__(**kwargs) + self.storage_id = storage_id + self.storage_path = storage_path + self.file_path = file_path diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter.py new file mode 100644 index 000000000000..a9ef39bd0e57 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter.py @@ -0,0 +1,71 @@ +# 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 .sub_resource import SubResource + + +class PatchRouteFilter(SubResource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule] + :param peerings: A collection of references to express route circuit + peerings. + :type peerings: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(PatchRouteFilter, self).__init__(**kwargs) + self.rules = kwargs.get('rules', None) + self.peerings = kwargs.get('peerings', None) + self.provisioning_state = None + self.name = None + self.etag = None + self.type = None + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_py3.py new file mode 100644 index 000000000000..6596451a92b1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_py3.py @@ -0,0 +1,71 @@ +# 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 .sub_resource_py3 import SubResource + + +class PatchRouteFilter(SubResource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule] + :param peerings: A collection of references to express route circuit + peerings. + :type peerings: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, id: str=None, rules=None, peerings=None, tags=None, **kwargs) -> None: + super(PatchRouteFilter, self).__init__(id=id, **kwargs) + self.rules = rules + self.peerings = peerings + self.provisioning_state = None + self.name = None + self.etag = None + self.type = None + self.tags = tags diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_rule.py new file mode 100644 index 000000000000..c9180f6e2c4a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_rule.py @@ -0,0 +1,72 @@ +# 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 .sub_resource import SubResource + + +class PatchRouteFilterRule(SubResource): + """Route Filter Rule Resource. + + 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 id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Valid values are: + 'Allow', 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_07_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Valid + value is: 'Community'. Default value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020'] + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, **kwargs): + super(PatchRouteFilterRule, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.communities = kwargs.get('communities', None) + self.provisioning_state = None + self.name = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_rule_py3.py new file mode 100644 index 000000000000..5375dbb4b396 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/patch_route_filter_rule_py3.py @@ -0,0 +1,72 @@ +# 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 .sub_resource_py3 import SubResource + + +class PatchRouteFilterRule(SubResource): + """Route Filter Rule Resource. + + 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 id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Valid values are: + 'Allow', 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_07_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Valid + value is: 'Community'. Default value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020'] + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, *, access, communities, id: str=None, **kwargs) -> None: + super(PatchRouteFilterRule, self).__init__(id=id, **kwargs) + self.access = access + self.communities = communities + self.provisioning_state = None + self.name = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/policies.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/policies.py new file mode 100644 index 000000000000..069d98b7c83c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/policies.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Policies(Model): + """Policies for vpn gateway. + + :param allow_branch_to_branch_traffic: True if branch to branch traffic is + allowed. + :type allow_branch_to_branch_traffic: bool + :param allow_vnet_to_vnet_traffic: True if Vnet to Vnet traffic is + allowed. + :type allow_vnet_to_vnet_traffic: bool + """ + + _attribute_map = { + 'allow_branch_to_branch_traffic': {'key': 'allowBranchToBranchTraffic', 'type': 'bool'}, + 'allow_vnet_to_vnet_traffic': {'key': 'allowVnetToVnetTraffic', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(Policies, self).__init__(**kwargs) + self.allow_branch_to_branch_traffic = kwargs.get('allow_branch_to_branch_traffic', None) + self.allow_vnet_to_vnet_traffic = kwargs.get('allow_vnet_to_vnet_traffic', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/policies_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/policies_py3.py new file mode 100644 index 000000000000..895c01fcd8a0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/policies_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Policies(Model): + """Policies for vpn gateway. + + :param allow_branch_to_branch_traffic: True if branch to branch traffic is + allowed. + :type allow_branch_to_branch_traffic: bool + :param allow_vnet_to_vnet_traffic: True if Vnet to Vnet traffic is + allowed. + :type allow_vnet_to_vnet_traffic: bool + """ + + _attribute_map = { + 'allow_branch_to_branch_traffic': {'key': 'allowBranchToBranchTraffic', 'type': 'bool'}, + 'allow_vnet_to_vnet_traffic': {'key': 'allowVnetToVnetTraffic', 'type': 'bool'}, + } + + def __init__(self, *, allow_branch_to_branch_traffic: bool=None, allow_vnet_to_vnet_traffic: bool=None, **kwargs) -> None: + super(Policies, self).__init__(**kwargs) + self.allow_branch_to_branch_traffic = allow_branch_to_branch_traffic + self.allow_vnet_to_vnet_traffic = allow_vnet_to_vnet_traffic diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe.py new file mode 100644 index 000000000000..4909875dce29 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe.py @@ -0,0 +1,93 @@ +# 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 .sub_resource import SubResource + + +class Probe(SubResource): + """A load balancer probe. + + 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 id: Resource ID. + :type id: str + :ivar load_balancing_rules: The load balancer rules that use this probe. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param protocol: Required. The protocol of the end point. Possible values + are: 'Http', 'Tcp', or 'Https'. If 'Tcp' is specified, a received ACK is + required for the probe to be successful. If 'Http' or 'Https' is + specified, a 200 OK response from the specifies URI is required for the + probe to be successful. Possible values include: 'Http', 'Tcp', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.ProbeProtocol + :param port: Required. The port for communicating the probe. Possible + values range from 1 to 65535, inclusive. + :type port: int + :param interval_in_seconds: The interval, in seconds, for how frequently + to probe the endpoint for health status. Typically, the interval is + slightly less than half the allocated timeout period (in seconds) which + allows two full probes before taking the instance out of rotation. The + default value is 15, the minimum value is 5. + :type interval_in_seconds: int + :param number_of_probes: The number of probes where if no response, will + result in stopping further traffic from being delivered to the endpoint. + This values allows endpoints to be taken out of rotation faster or slower + than the typical times used in Azure. + :type number_of_probes: int + :param request_path: The URI used for requesting health status from the + VM. Path is required if a protocol is set to http. Otherwise, it is not + allowed. There is no default value. + :type request_path: str + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'load_balancing_rules': {'readonly': True}, + 'protocol': {'required': True}, + 'port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'interval_in_seconds': {'key': 'properties.intervalInSeconds', 'type': 'int'}, + 'number_of_probes': {'key': 'properties.numberOfProbes', 'type': 'int'}, + 'request_path': {'key': 'properties.requestPath', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Probe, self).__init__(**kwargs) + self.load_balancing_rules = None + self.protocol = kwargs.get('protocol', None) + self.port = kwargs.get('port', None) + self.interval_in_seconds = kwargs.get('interval_in_seconds', None) + self.number_of_probes = kwargs.get('number_of_probes', None) + self.request_path = kwargs.get('request_path', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe_paged.py new file mode 100644 index 000000000000..f44316d0e476 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ProbePaged(Paged): + """ + A paging container for iterating over a list of :class:`Probe ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Probe]'} + } + + def __init__(self, *args, **kwargs): + + super(ProbePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe_py3.py new file mode 100644 index 000000000000..992413a89112 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/probe_py3.py @@ -0,0 +1,93 @@ +# 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 .sub_resource_py3 import SubResource + + +class Probe(SubResource): + """A load balancer probe. + + 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 id: Resource ID. + :type id: str + :ivar load_balancing_rules: The load balancer rules that use this probe. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param protocol: Required. The protocol of the end point. Possible values + are: 'Http', 'Tcp', or 'Https'. If 'Tcp' is specified, a received ACK is + required for the probe to be successful. If 'Http' or 'Https' is + specified, a 200 OK response from the specifies URI is required for the + probe to be successful. Possible values include: 'Http', 'Tcp', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.ProbeProtocol + :param port: Required. The port for communicating the probe. Possible + values range from 1 to 65535, inclusive. + :type port: int + :param interval_in_seconds: The interval, in seconds, for how frequently + to probe the endpoint for health status. Typically, the interval is + slightly less than half the allocated timeout period (in seconds) which + allows two full probes before taking the instance out of rotation. The + default value is 15, the minimum value is 5. + :type interval_in_seconds: int + :param number_of_probes: The number of probes where if no response, will + result in stopping further traffic from being delivered to the endpoint. + This values allows endpoints to be taken out of rotation faster or slower + than the typical times used in Azure. + :type number_of_probes: int + :param request_path: The URI used for requesting health status from the + VM. Path is required if a protocol is set to http. Otherwise, it is not + allowed. There is no default value. + :type request_path: str + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'load_balancing_rules': {'readonly': True}, + 'protocol': {'required': True}, + 'port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'interval_in_seconds': {'key': 'properties.intervalInSeconds', 'type': 'int'}, + 'number_of_probes': {'key': 'properties.numberOfProbes', 'type': 'int'}, + 'request_path': {'key': 'properties.requestPath', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, port: int, id: str=None, interval_in_seconds: int=None, number_of_probes: int=None, request_path: str=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(Probe, self).__init__(id=id, **kwargs) + self.load_balancing_rules = None + self.protocol = protocol + self.port = port + self.interval_in_seconds = interval_in_seconds + self.number_of_probes = number_of_probes + self.request_path = request_path + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/protocol_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/protocol_configuration.py new file mode 100644 index 000000000000..cb8dcd86c048 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/protocol_configuration.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProtocolConfiguration(Model): + """Configuration of the protocol. + + :param http_configuration: + :type http_configuration: + ~azure.mgmt.network.v2018_07_01.models.HTTPConfiguration + """ + + _attribute_map = { + 'http_configuration': {'key': 'HTTPConfiguration', 'type': 'HTTPConfiguration'}, + } + + def __init__(self, **kwargs): + super(ProtocolConfiguration, self).__init__(**kwargs) + self.http_configuration = kwargs.get('http_configuration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/protocol_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/protocol_configuration_py3.py new file mode 100644 index 000000000000..588e5b094138 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/protocol_configuration_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProtocolConfiguration(Model): + """Configuration of the protocol. + + :param http_configuration: + :type http_configuration: + ~azure.mgmt.network.v2018_07_01.models.HTTPConfiguration + """ + + _attribute_map = { + 'http_configuration': {'key': 'HTTPConfiguration', 'type': 'HTTPConfiguration'}, + } + + def __init__(self, *, http_configuration=None, **kwargs) -> None: + super(ProtocolConfiguration, self).__init__(**kwargs) + self.http_configuration = http_configuration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address.py new file mode 100644 index 000000000000..6e89df12d94a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address.py @@ -0,0 +1,115 @@ +# 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 .resource import Resource + + +class PublicIPAddress(Resource): + """Public IP address resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP address SKU. + :type sku: ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressSku + :param public_ip_allocation_method: The public IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type public_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param public_ip_address_version: The public IP address version. Possible + values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2018_07_01.models.IPVersion + :ivar ip_configuration: The IP configuration associated with the public IP + address. + :vartype ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.IPConfiguration + :param dns_settings: The FQDN of the DNS record associated with the public + IP address. + :type dns_settings: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressDnsSettings + :param ip_tags: The list of tags associated with the public IP address. + :type ip_tags: list[~azure.mgmt.network.v2018_07_01.models.IpTag] + :param ip_address: The IP address associated with the public IP address + resource. + :type ip_address: str + :param public_ip_prefix: The Public IP Prefix this Public IP Address + should be allocated from. + :type public_ip_prefix: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :param resource_guid: The resource GUID property of the public IP + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ip_configuration': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPAddressSku'}, + 'public_ip_allocation_method': {'key': 'properties.publicIPAllocationMethod', 'type': 'str'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_configuration': {'key': 'properties.ipConfiguration', 'type': 'IPConfiguration'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'PublicIPAddressDnsSettings'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddress, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.public_ip_allocation_method = kwargs.get('public_ip_allocation_method', None) + self.public_ip_address_version = kwargs.get('public_ip_address_version', None) + self.ip_configuration = None + self.dns_settings = kwargs.get('dns_settings', None) + self.ip_tags = kwargs.get('ip_tags', None) + self.ip_address = kwargs.get('ip_address', None) + self.public_ip_prefix = kwargs.get('public_ip_prefix', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_dns_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_dns_settings.py new file mode 100644 index 000000000000..07dfe30433a6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_dns_settings.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPAddressDnsSettings(Model): + """Contains FQDN of the DNS record associated with the public IP address. + + :param domain_name_label: Gets or sets the Domain name label.The + concatenation of the domain name label and the regionalized DNS zone make + up the fully qualified domain name associated with the public IP address. + If a domain name label is specified, an A DNS record is created for the + public IP in the Microsoft Azure DNS system. + :type domain_name_label: str + :param fqdn: Gets the FQDN, Fully qualified domain name of the A DNS + record associated with the public IP. This is the concatenation of the + domainNameLabel and the regionalized DNS zone. + :type fqdn: str + :param reverse_fqdn: Gets or Sets the Reverse FQDN. A user-visible, fully + qualified domain name that resolves to this public IP address. If the + reverseFqdn is specified, then a PTR DNS record is created pointing from + the IP address in the in-addr.arpa domain to the reverse FQDN. + :type reverse_fqdn: str + """ + + _attribute_map = { + 'domain_name_label': {'key': 'domainNameLabel', 'type': 'str'}, + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'reverse_fqdn': {'key': 'reverseFqdn', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddressDnsSettings, self).__init__(**kwargs) + self.domain_name_label = kwargs.get('domain_name_label', None) + self.fqdn = kwargs.get('fqdn', None) + self.reverse_fqdn = kwargs.get('reverse_fqdn', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_dns_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_dns_settings_py3.py new file mode 100644 index 000000000000..e84aa9c10bf5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_dns_settings_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPAddressDnsSettings(Model): + """Contains FQDN of the DNS record associated with the public IP address. + + :param domain_name_label: Gets or sets the Domain name label.The + concatenation of the domain name label and the regionalized DNS zone make + up the fully qualified domain name associated with the public IP address. + If a domain name label is specified, an A DNS record is created for the + public IP in the Microsoft Azure DNS system. + :type domain_name_label: str + :param fqdn: Gets the FQDN, Fully qualified domain name of the A DNS + record associated with the public IP. This is the concatenation of the + domainNameLabel and the regionalized DNS zone. + :type fqdn: str + :param reverse_fqdn: Gets or Sets the Reverse FQDN. A user-visible, fully + qualified domain name that resolves to this public IP address. If the + reverseFqdn is specified, then a PTR DNS record is created pointing from + the IP address in the in-addr.arpa domain to the reverse FQDN. + :type reverse_fqdn: str + """ + + _attribute_map = { + 'domain_name_label': {'key': 'domainNameLabel', 'type': 'str'}, + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'reverse_fqdn': {'key': 'reverseFqdn', 'type': 'str'}, + } + + def __init__(self, *, domain_name_label: str=None, fqdn: str=None, reverse_fqdn: str=None, **kwargs) -> None: + super(PublicIPAddressDnsSettings, self).__init__(**kwargs) + self.domain_name_label = domain_name_label + self.fqdn = fqdn + self.reverse_fqdn = reverse_fqdn diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_paged.py new file mode 100644 index 000000000000..9e862ba60404 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class PublicIPAddressPaged(Paged): + """ + A paging container for iterating over a list of :class:`PublicIPAddress ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PublicIPAddress]'} + } + + def __init__(self, *args, **kwargs): + + super(PublicIPAddressPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_py3.py new file mode 100644 index 000000000000..1d36013db0b9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_py3.py @@ -0,0 +1,115 @@ +# 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 .resource_py3 import Resource + + +class PublicIPAddress(Resource): + """Public IP address resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP address SKU. + :type sku: ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressSku + :param public_ip_allocation_method: The public IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type public_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param public_ip_address_version: The public IP address version. Possible + values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2018_07_01.models.IPVersion + :ivar ip_configuration: The IP configuration associated with the public IP + address. + :vartype ip_configuration: + ~azure.mgmt.network.v2018_07_01.models.IPConfiguration + :param dns_settings: The FQDN of the DNS record associated with the public + IP address. + :type dns_settings: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressDnsSettings + :param ip_tags: The list of tags associated with the public IP address. + :type ip_tags: list[~azure.mgmt.network.v2018_07_01.models.IpTag] + :param ip_address: The IP address associated with the public IP address + resource. + :type ip_address: str + :param public_ip_prefix: The Public IP Prefix this Public IP Address + should be allocated from. + :type public_ip_prefix: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :param resource_guid: The resource GUID property of the public IP + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ip_configuration': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPAddressSku'}, + 'public_ip_allocation_method': {'key': 'properties.publicIPAllocationMethod', 'type': 'str'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_configuration': {'key': 'properties.ipConfiguration', 'type': 'IPConfiguration'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'PublicIPAddressDnsSettings'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, public_ip_allocation_method=None, public_ip_address_version=None, dns_settings=None, ip_tags=None, ip_address: str=None, public_ip_prefix=None, idle_timeout_in_minutes: int=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, zones=None, **kwargs) -> None: + super(PublicIPAddress, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.public_ip_allocation_method = public_ip_allocation_method + self.public_ip_address_version = public_ip_address_version + self.ip_configuration = None + self.dns_settings = dns_settings + self.ip_tags = ip_tags + self.ip_address = ip_address + self.public_ip_prefix = public_ip_prefix + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag + self.zones = zones diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_sku.py new file mode 100644 index 000000000000..525dc7280a29 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_sku.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPAddressSku(Model): + """SKU of a public IP address. + + :param name: Name of a public IP address SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddressSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_sku_py3.py new file mode 100644 index 000000000000..c7e310eca7bc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_address_sku_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPAddressSku(Model): + """SKU of a public IP address. + + :param name: Name of a public IP address SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(PublicIPAddressSku, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix.py new file mode 100644 index 000000000000..b4c0e4585c1a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix.py @@ -0,0 +1,94 @@ +# 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 .resource import Resource + + +class PublicIPPrefix(Resource): + """Public IP prefix resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP prefix SKU. + :type sku: ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefixSku + :param public_ip_address_version: The public IP address version. Possible + values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2018_07_01.models.IPVersion + :param ip_tags: The list of tags associated with the public IP prefix. + :type ip_tags: list[~azure.mgmt.network.v2018_07_01.models.IpTag] + :param prefix_length: The Length of the Public IP Prefix. + :type prefix_length: int + :param ip_prefix: The allocated Prefix + :type ip_prefix: str + :param public_ip_addresses: The list of all referenced PublicIPAddresses + :type public_ip_addresses: + list[~azure.mgmt.network.v2018_07_01.models.ReferencedPublicIpAddress] + :param resource_guid: The resource GUID property of the public IP prefix + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the Public IP prefix + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPPrefixSku'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'prefix_length': {'key': 'properties.prefixLength', 'type': 'int'}, + 'ip_prefix': {'key': 'properties.ipPrefix', 'type': 'str'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[ReferencedPublicIpAddress]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PublicIPPrefix, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.public_ip_address_version = kwargs.get('public_ip_address_version', None) + self.ip_tags = kwargs.get('ip_tags', None) + self.prefix_length = kwargs.get('prefix_length', None) + self.ip_prefix = kwargs.get('ip_prefix', None) + self.public_ip_addresses = kwargs.get('public_ip_addresses', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_paged.py new file mode 100644 index 000000000000..eca84093553c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class PublicIPPrefixPaged(Paged): + """ + A paging container for iterating over a list of :class:`PublicIPPrefix ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PublicIPPrefix]'} + } + + def __init__(self, *args, **kwargs): + + super(PublicIPPrefixPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_py3.py new file mode 100644 index 000000000000..37acb9a065e8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_py3.py @@ -0,0 +1,94 @@ +# 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 .resource_py3 import Resource + + +class PublicIPPrefix(Resource): + """Public IP prefix resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP prefix SKU. + :type sku: ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefixSku + :param public_ip_address_version: The public IP address version. Possible + values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2018_07_01.models.IPVersion + :param ip_tags: The list of tags associated with the public IP prefix. + :type ip_tags: list[~azure.mgmt.network.v2018_07_01.models.IpTag] + :param prefix_length: The Length of the Public IP Prefix. + :type prefix_length: int + :param ip_prefix: The allocated Prefix + :type ip_prefix: str + :param public_ip_addresses: The list of all referenced PublicIPAddresses + :type public_ip_addresses: + list[~azure.mgmt.network.v2018_07_01.models.ReferencedPublicIpAddress] + :param resource_guid: The resource GUID property of the public IP prefix + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the Public IP prefix + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPPrefixSku'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'prefix_length': {'key': 'properties.prefixLength', 'type': 'int'}, + 'ip_prefix': {'key': 'properties.ipPrefix', 'type': 'str'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[ReferencedPublicIpAddress]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, public_ip_address_version=None, ip_tags=None, prefix_length: int=None, ip_prefix: str=None, public_ip_addresses=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, zones=None, **kwargs) -> None: + super(PublicIPPrefix, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.public_ip_address_version = public_ip_address_version + self.ip_tags = ip_tags + self.prefix_length = prefix_length + self.ip_prefix = ip_prefix + self.public_ip_addresses = public_ip_addresses + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag + self.zones = zones diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_sku.py new file mode 100644 index 000000000000..d462fd131686 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_sku.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPPrefixSku(Model): + """SKU of a public IP prefix. + + :param name: Name of a public IP prefix SKU. Possible values include: + 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefixSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPPrefixSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_sku_py3.py new file mode 100644 index 000000000000..84a889d84ae4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/public_ip_prefix_sku_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPPrefixSku(Model): + """SKU of a public IP prefix. + + :param name: Name of a public IP prefix SKU. Possible values include: + 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefixSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(PublicIPPrefixSku, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/query_troubleshooting_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/query_troubleshooting_parameters.py new file mode 100644 index 000000000000..6ae1924916c6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/query_troubleshooting_parameters.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryTroubleshootingParameters(Model): + """Parameters that define the resource to query the troubleshooting result. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(QueryTroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/query_troubleshooting_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/query_troubleshooting_parameters_py3.py new file mode 100644 index 000000000000..b5fccb87857c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/query_troubleshooting_parameters_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryTroubleshootingParameters(Model): + """Parameters that define the resource to query the troubleshooting result. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(QueryTroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/referenced_public_ip_address.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/referenced_public_ip_address.py new file mode 100644 index 000000000000..76807023de75 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/referenced_public_ip_address.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ReferencedPublicIpAddress(Model): + """ReferencedPublicIpAddress. + + :param id: The PublicIPAddress Reference + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ReferencedPublicIpAddress, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/referenced_public_ip_address_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/referenced_public_ip_address_py3.py new file mode 100644 index 000000000000..3d078b57123a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/referenced_public_ip_address_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ReferencedPublicIpAddress(Model): + """ReferencedPublicIpAddress. + + :param id: The PublicIPAddress Reference + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ReferencedPublicIpAddress, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource.py new file mode 100644 index 000000000000..7dabab29ac9d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Common resource representation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_navigation_link.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_navigation_link.py new file mode 100644 index 000000000000..705698f513f6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_navigation_link.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ResourceNavigationLink(SubResource): + """ResourceNavigationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource + :type link: str + :ivar provisioning_state: Provisioning state of the ResourceNavigationLink + resource. + :vartype provisioning_state: str + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceNavigationLink, self).__init__(**kwargs) + self.linked_resource_type = kwargs.get('linked_resource_type', None) + self.link = kwargs.get('link', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_navigation_link_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_navigation_link_py3.py new file mode 100644 index 000000000000..ba7329e863a1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_navigation_link_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ResourceNavigationLink(SubResource): + """ResourceNavigationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource + :type link: str + :ivar provisioning_state: Provisioning state of the ResourceNavigationLink + resource. + :vartype provisioning_state: str + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, linked_resource_type: str=None, link: str=None, name: str=None, **kwargs) -> None: + super(ResourceNavigationLink, self).__init__(id=id, **kwargs) + self.linked_resource_type = linked_resource_type + self.link = link + self.provisioning_state = None + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_py3.py new file mode 100644 index 000000000000..ae95b78b4f23 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/resource_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Common resource representation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = id + self.name = None + self.type = None + self.location = location + self.tags = tags diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/retention_policy_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/retention_policy_parameters.py new file mode 100644 index 000000000000..28cb43056d47 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/retention_policy_parameters.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RetentionPolicyParameters(Model): + """Parameters that define the retention policy for flow log. + + :param days: Number of days to retain flow log records. Default value: 0 . + :type days: int + :param enabled: Flag to enable/disable retention. Default value: False . + :type enabled: bool + """ + + _attribute_map = { + 'days': {'key': 'days', 'type': 'int'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(RetentionPolicyParameters, self).__init__(**kwargs) + self.days = kwargs.get('days', 0) + self.enabled = kwargs.get('enabled', False) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/retention_policy_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/retention_policy_parameters_py3.py new file mode 100644 index 000000000000..3b2ffc5e741e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/retention_policy_parameters_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RetentionPolicyParameters(Model): + """Parameters that define the retention policy for flow log. + + :param days: Number of days to retain flow log records. Default value: 0 . + :type days: int + :param enabled: Flag to enable/disable retention. Default value: False . + :type enabled: bool + """ + + _attribute_map = { + 'days': {'key': 'days', 'type': 'int'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, days: int=0, enabled: bool=False, **kwargs) -> None: + super(RetentionPolicyParameters, self).__init__(**kwargs) + self.days = days + self.enabled = enabled diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route.py new file mode 100644 index 000000000000..703661c7d5db --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route.py @@ -0,0 +1,67 @@ +# 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 .sub_resource import SubResource + + +class Route(SubResource): + """Route resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param address_prefix: The destination CIDR to which the route applies. + :type address_prefix: str + :param next_hop_type: Required. The type of Azure hop the packet should be + sent to. Possible values are: 'VirtualNetworkGateway', 'VnetLocal', + 'Internet', 'VirtualAppliance', and 'None'. Possible values include: + 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', + 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_07_01.models.RouteNextHopType + :param next_hop_ip_address: The IP address packets should be forwarded to. + Next hop values are only allowed in routes where the next hop type is + VirtualAppliance. + :type next_hop_ip_address: str + :param provisioning_state: The provisioning state of the resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'next_hop_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'next_hop_type': {'key': 'properties.nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'properties.nextHopIpAddress', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Route, self).__init__(**kwargs) + self.address_prefix = kwargs.get('address_prefix', None) + self.next_hop_type = kwargs.get('next_hop_type', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter.py new file mode 100644 index 000000000000..9496da68e4c0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class RouteFilter(Resource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule] + :param peerings: A collection of references to express route circuit + peerings. + :type peerings: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RouteFilter, self).__init__(**kwargs) + self.rules = kwargs.get('rules', None) + self.peerings = kwargs.get('peerings', None) + self.provisioning_state = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_paged.py new file mode 100644 index 000000000000..c0d0837b3c88 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RouteFilterPaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteFilter ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteFilter]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteFilterPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_py3.py new file mode 100644 index 000000000000..fbaeba2e4dbf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class RouteFilter(Resource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule] + :param peerings: A collection of references to express route circuit + peerings. + :type peerings: + list[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, rules=None, peerings=None, **kwargs) -> None: + super(RouteFilter, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.rules = rules + self.peerings = peerings + self.provisioning_state = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule.py new file mode 100644 index 000000000000..2d9ac851a9a1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule.py @@ -0,0 +1,75 @@ +# 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 .sub_resource import SubResource + + +class RouteFilterRule(SubResource): + """Route Filter Rule Resource. + + 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 id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Valid values are: + 'Allow', 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_07_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Valid + value is: 'Community'. Default value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020'] + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param location: Resource location. + :type location: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, **kwargs): + super(RouteFilterRule, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.communities = kwargs.get('communities', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.location = kwargs.get('location', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule_paged.py new file mode 100644 index 000000000000..e221a66a70c5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RouteFilterRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteFilterRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteFilterRule]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteFilterRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule_py3.py new file mode 100644 index 000000000000..f8faa622cbb1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_filter_rule_py3.py @@ -0,0 +1,75 @@ +# 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 .sub_resource_py3 import SubResource + + +class RouteFilterRule(SubResource): + """Route Filter Rule Resource. + + 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 id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Valid values are: + 'Allow', 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_07_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Valid + value is: 'Community'. Default value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020'] + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param location: Resource location. + :type location: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, *, access, communities, id: str=None, name: str=None, location: str=None, **kwargs) -> None: + super(RouteFilterRule, self).__init__(id=id, **kwargs) + self.access = access + self.communities = communities + self.provisioning_state = None + self.name = name + self.location = location + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_paged.py new file mode 100644 index 000000000000..a35eda63c6ae --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RoutePaged(Paged): + """ + A paging container for iterating over a list of :class:`Route ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Route]'} + } + + def __init__(self, *args, **kwargs): + + super(RoutePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_py3.py new file mode 100644 index 000000000000..614ed5361b0e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_py3.py @@ -0,0 +1,67 @@ +# 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 .sub_resource_py3 import SubResource + + +class Route(SubResource): + """Route resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param address_prefix: The destination CIDR to which the route applies. + :type address_prefix: str + :param next_hop_type: Required. The type of Azure hop the packet should be + sent to. Possible values are: 'VirtualNetworkGateway', 'VnetLocal', + 'Internet', 'VirtualAppliance', and 'None'. Possible values include: + 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', + 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_07_01.models.RouteNextHopType + :param next_hop_ip_address: The IP address packets should be forwarded to. + Next hop values are only allowed in routes where the next hop type is + VirtualAppliance. + :type next_hop_ip_address: str + :param provisioning_state: The provisioning state of the resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'next_hop_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'next_hop_type': {'key': 'properties.nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'properties.nextHopIpAddress', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, next_hop_type, id: str=None, address_prefix: str=None, next_hop_ip_address: str=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(Route, self).__init__(id=id, **kwargs) + self.address_prefix = address_prefix + self.next_hop_type = next_hop_type + self.next_hop_ip_address = next_hop_ip_address + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table.py new file mode 100644 index 000000000000..3b8072885ca8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table.py @@ -0,0 +1,71 @@ +# 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 .resource import Resource + + +class RouteTable(Resource): + """Route table resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param routes: Collection of routes contained within a route table. + :type routes: list[~azure.mgmt.network.v2018_07_01.models.Route] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_07_01.models.Subnet] + :param disable_bgp_route_propagation: Gets or sets whether to disable the + routes learned by BGP on that route table. True means disable. + :type disable_bgp_route_propagation: bool + :param provisioning_state: The provisioning state of the resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'routes': {'key': 'properties.routes', 'type': '[Route]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'disable_bgp_route_propagation': {'key': 'properties.disableBgpRoutePropagation', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RouteTable, self).__init__(**kwargs) + self.routes = kwargs.get('routes', None) + self.subnets = None + self.disable_bgp_route_propagation = kwargs.get('disable_bgp_route_propagation', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table_paged.py new file mode 100644 index 000000000000..5ee7b67f3371 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RouteTablePaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteTable ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteTable]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteTablePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table_py3.py new file mode 100644 index 000000000000..24a20a39731b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/route_table_py3.py @@ -0,0 +1,71 @@ +# 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 .resource_py3 import Resource + + +class RouteTable(Resource): + """Route table resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param routes: Collection of routes contained within a route table. + :type routes: list[~azure.mgmt.network.v2018_07_01.models.Route] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_07_01.models.Subnet] + :param disable_bgp_route_propagation: Gets or sets whether to disable the + routes learned by BGP on that route table. True means disable. + :type disable_bgp_route_propagation: bool + :param provisioning_state: The provisioning state of the resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'routes': {'key': 'properties.routes', 'type': '[Route]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'disable_bgp_route_propagation': {'key': 'properties.disableBgpRoutePropagation', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, routes=None, disable_bgp_route_propagation: bool=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(RouteTable, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.routes = routes + self.subnets = None + self.disable_bgp_route_propagation = disable_bgp_route_propagation + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_network_interface.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_network_interface.py new file mode 100644 index 000000000000..56443717446e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_network_interface.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupNetworkInterface(Model): + """Network interface and all its associated security rules. + + :param id: ID of the network interface. + :type id: str + :param security_rule_associations: + :type security_rule_associations: + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleAssociations + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rule_associations': {'key': 'securityRuleAssociations', 'type': 'SecurityRuleAssociations'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupNetworkInterface, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.security_rule_associations = kwargs.get('security_rule_associations', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_network_interface_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_network_interface_py3.py new file mode 100644 index 000000000000..590b934cbb65 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_network_interface_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupNetworkInterface(Model): + """Network interface and all its associated security rules. + + :param id: ID of the network interface. + :type id: str + :param security_rule_associations: + :type security_rule_associations: + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleAssociations + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rule_associations': {'key': 'securityRuleAssociations', 'type': 'SecurityRuleAssociations'}, + } + + def __init__(self, *, id: str=None, security_rule_associations=None, **kwargs) -> None: + super(SecurityGroupNetworkInterface, self).__init__(**kwargs) + self.id = id + self.security_rule_associations = security_rule_associations diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_parameters.py new file mode 100644 index 000000000000..1d547b0b0e2b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_parameters.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupViewParameters(Model): + """Parameters that define the VM to check security groups for. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. ID of the target VM. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupViewParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_parameters_py3.py new file mode 100644 index 000000000000..7ccc48017444 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_parameters_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupViewParameters(Model): + """Parameters that define the VM to check security groups for. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. ID of the target VM. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(SecurityGroupViewParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_result.py new file mode 100644 index 000000000000..eb13124fc028 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_result.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupViewResult(Model): + """The information about security rules applied to the specified VM. + + :param network_interfaces: List of network interfaces on the specified VM. + :type network_interfaces: + list[~azure.mgmt.network.v2018_07_01.models.SecurityGroupNetworkInterface] + """ + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[SecurityGroupNetworkInterface]'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupViewResult, self).__init__(**kwargs) + self.network_interfaces = kwargs.get('network_interfaces', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_result_py3.py new file mode 100644 index 000000000000..b45c6e059f47 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_group_view_result_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupViewResult(Model): + """The information about security rules applied to the specified VM. + + :param network_interfaces: List of network interfaces on the specified VM. + :type network_interfaces: + list[~azure.mgmt.network.v2018_07_01.models.SecurityGroupNetworkInterface] + """ + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[SecurityGroupNetworkInterface]'}, + } + + def __init__(self, *, network_interfaces=None, **kwargs) -> None: + super(SecurityGroupViewResult, self).__init__(**kwargs) + self.network_interfaces = network_interfaces diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule.py new file mode 100644 index 000000000000..dcd43c15052c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule.py @@ -0,0 +1,137 @@ +# 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 .sub_resource import SubResource + + +class SecurityRule(SubResource): + """Network security rule. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param protocol: Required. Network protocol this rule applies to. Possible + values are 'Tcp', 'Udp', and '*'. Possible values include: 'Tcp', 'Udp', + '*' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleProtocol + :param source_port_range: The source port or range. Integer or range + between 0 and 65535. Asterix '*' can also be used to match all ports. + :type source_port_range: str + :param destination_port_range: The destination port or range. Integer or + range between 0 and 65535. Asterix '*' can also be used to match all + ports. + :type destination_port_range: str + :param source_address_prefix: The CIDR or source IP range. Asterix '*' can + also be used to match all source IPs. Default tags such as + 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If + this is an ingress rule, specifies where network traffic originates from. + :type source_address_prefix: str + :param source_address_prefixes: The CIDR or source IP ranges. + :type source_address_prefixes: list[str] + :param source_application_security_groups: The application security group + specified as source. + :type source_application_security_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + :param destination_address_prefix: The destination address prefix. CIDR or + destination IP range. Asterix '*' can also be used to match all source + IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and + 'Internet' can also be used. + :type destination_address_prefix: str + :param destination_address_prefixes: The destination address prefixes. + CIDR or destination IP ranges. + :type destination_address_prefixes: list[str] + :param destination_application_security_groups: The application security + group specified as destination. + :type destination_application_security_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + :param source_port_ranges: The source port ranges. + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. + :type destination_port_ranges: list[str] + :param access: Required. The network traffic is allowed or denied. + Possible values are: 'Allow' and 'Deny'. Possible values include: 'Allow', + 'Deny' + :type access: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleAccess + :param priority: The priority of the rule. The value can be between 100 + and 4096. The priority number must be unique for each rule in the + collection. The lower the priority number, the higher the priority of the + rule. + :type priority: int + :param direction: Required. The direction of the rule. The direction + specifies if rule will be evaluated on incoming or outcoming traffic. + Possible values are: 'Inbound' and 'Outbound'. Possible values include: + 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleDirection + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'access': {'required': True}, + 'direction': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'source_port_range': {'key': 'properties.sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'properties.destinationPortRange', 'type': 'str'}, + 'source_address_prefix': {'key': 'properties.sourceAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'properties.sourceAddressPrefixes', 'type': '[str]'}, + 'source_application_security_groups': {'key': 'properties.sourceApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'destination_address_prefix': {'key': 'properties.destinationAddressPrefix', 'type': 'str'}, + 'destination_address_prefixes': {'key': 'properties.destinationAddressPrefixes', 'type': '[str]'}, + 'destination_application_security_groups': {'key': 'properties.destinationApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'source_port_ranges': {'key': 'properties.sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'properties.destinationPortRanges', 'type': '[str]'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'direction': {'key': 'properties.direction', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityRule, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.protocol = kwargs.get('protocol', None) + self.source_port_range = kwargs.get('source_port_range', None) + self.destination_port_range = kwargs.get('destination_port_range', None) + self.source_address_prefix = kwargs.get('source_address_prefix', None) + self.source_address_prefixes = kwargs.get('source_address_prefixes', None) + self.source_application_security_groups = kwargs.get('source_application_security_groups', None) + self.destination_address_prefix = kwargs.get('destination_address_prefix', None) + self.destination_address_prefixes = kwargs.get('destination_address_prefixes', None) + self.destination_application_security_groups = kwargs.get('destination_application_security_groups', None) + self.source_port_ranges = kwargs.get('source_port_ranges', None) + self.destination_port_ranges = kwargs.get('destination_port_ranges', None) + self.access = kwargs.get('access', None) + self.priority = kwargs.get('priority', None) + self.direction = kwargs.get('direction', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_associations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_associations.py new file mode 100644 index 000000000000..26d0743c3a35 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_associations.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityRuleAssociations(Model): + """All security rules associated with the network interface. + + :param network_interface_association: + :type network_interface_association: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceAssociation + :param subnet_association: + :type subnet_association: + ~azure.mgmt.network.v2018_07_01.models.SubnetAssociation + :param default_security_rules: Collection of default security rules of the + network security group. + :type default_security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + :param effective_security_rules: Collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityRule] + """ + + _attribute_map = { + 'network_interface_association': {'key': 'networkInterfaceAssociation', 'type': 'NetworkInterfaceAssociation'}, + 'subnet_association': {'key': 'subnetAssociation', 'type': 'SubnetAssociation'}, + 'default_security_rules': {'key': 'defaultSecurityRules', 'type': '[SecurityRule]'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + } + + def __init__(self, **kwargs): + super(SecurityRuleAssociations, self).__init__(**kwargs) + self.network_interface_association = kwargs.get('network_interface_association', None) + self.subnet_association = kwargs.get('subnet_association', None) + self.default_security_rules = kwargs.get('default_security_rules', None) + self.effective_security_rules = kwargs.get('effective_security_rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_associations_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_associations_py3.py new file mode 100644 index 000000000000..da9389c911d9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_associations_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityRuleAssociations(Model): + """All security rules associated with the network interface. + + :param network_interface_association: + :type network_interface_association: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceAssociation + :param subnet_association: + :type subnet_association: + ~azure.mgmt.network.v2018_07_01.models.SubnetAssociation + :param default_security_rules: Collection of default security rules of the + network security group. + :type default_security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + :param effective_security_rules: Collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityRule] + """ + + _attribute_map = { + 'network_interface_association': {'key': 'networkInterfaceAssociation', 'type': 'NetworkInterfaceAssociation'}, + 'subnet_association': {'key': 'subnetAssociation', 'type': 'SubnetAssociation'}, + 'default_security_rules': {'key': 'defaultSecurityRules', 'type': '[SecurityRule]'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + } + + def __init__(self, *, network_interface_association=None, subnet_association=None, default_security_rules=None, effective_security_rules=None, **kwargs) -> None: + super(SecurityRuleAssociations, self).__init__(**kwargs) + self.network_interface_association = network_interface_association + self.subnet_association = subnet_association + self.default_security_rules = default_security_rules + self.effective_security_rules = effective_security_rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_paged.py new file mode 100644 index 000000000000..4b95517d88ac --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SecurityRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`SecurityRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SecurityRule]'} + } + + def __init__(self, *args, **kwargs): + + super(SecurityRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_py3.py new file mode 100644 index 000000000000..f8e7dcf514ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/security_rule_py3.py @@ -0,0 +1,137 @@ +# 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 .sub_resource_py3 import SubResource + + +class SecurityRule(SubResource): + """Network security rule. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param protocol: Required. Network protocol this rule applies to. Possible + values are 'Tcp', 'Udp', and '*'. Possible values include: 'Tcp', 'Udp', + '*' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleProtocol + :param source_port_range: The source port or range. Integer or range + between 0 and 65535. Asterix '*' can also be used to match all ports. + :type source_port_range: str + :param destination_port_range: The destination port or range. Integer or + range between 0 and 65535. Asterix '*' can also be used to match all + ports. + :type destination_port_range: str + :param source_address_prefix: The CIDR or source IP range. Asterix '*' can + also be used to match all source IPs. Default tags such as + 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If + this is an ingress rule, specifies where network traffic originates from. + :type source_address_prefix: str + :param source_address_prefixes: The CIDR or source IP ranges. + :type source_address_prefixes: list[str] + :param source_application_security_groups: The application security group + specified as source. + :type source_application_security_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + :param destination_address_prefix: The destination address prefix. CIDR or + destination IP range. Asterix '*' can also be used to match all source + IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and + 'Internet' can also be used. + :type destination_address_prefix: str + :param destination_address_prefixes: The destination address prefixes. + CIDR or destination IP ranges. + :type destination_address_prefixes: list[str] + :param destination_application_security_groups: The application security + group specified as destination. + :type destination_application_security_groups: + list[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + :param source_port_ranges: The source port ranges. + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. + :type destination_port_ranges: list[str] + :param access: Required. The network traffic is allowed or denied. + Possible values are: 'Allow' and 'Deny'. Possible values include: 'Allow', + 'Deny' + :type access: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleAccess + :param priority: The priority of the rule. The value can be between 100 + and 4096. The priority number must be unique for each rule in the + collection. The lower the priority number, the higher the priority of the + rule. + :type priority: int + :param direction: Required. The direction of the rule. The direction + specifies if rule will be evaluated on incoming or outcoming traffic. + Possible values are: 'Inbound' and 'Outbound'. Possible values include: + 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2018_07_01.models.SecurityRuleDirection + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'access': {'required': True}, + 'direction': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'source_port_range': {'key': 'properties.sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'properties.destinationPortRange', 'type': 'str'}, + 'source_address_prefix': {'key': 'properties.sourceAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'properties.sourceAddressPrefixes', 'type': '[str]'}, + 'source_application_security_groups': {'key': 'properties.sourceApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'destination_address_prefix': {'key': 'properties.destinationAddressPrefix', 'type': 'str'}, + 'destination_address_prefixes': {'key': 'properties.destinationAddressPrefixes', 'type': '[str]'}, + 'destination_application_security_groups': {'key': 'properties.destinationApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'source_port_ranges': {'key': 'properties.sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'properties.destinationPortRanges', 'type': '[str]'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'direction': {'key': 'properties.direction', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, access, direction, id: str=None, description: str=None, source_port_range: str=None, destination_port_range: str=None, source_address_prefix: str=None, source_address_prefixes=None, source_application_security_groups=None, destination_address_prefix: str=None, destination_address_prefixes=None, destination_application_security_groups=None, source_port_ranges=None, destination_port_ranges=None, priority: int=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(SecurityRule, self).__init__(id=id, **kwargs) + self.description = description + self.protocol = protocol + self.source_port_range = source_port_range + self.destination_port_range = destination_port_range + self.source_address_prefix = source_address_prefix + self.source_address_prefixes = source_address_prefixes + self.source_application_security_groups = source_application_security_groups + self.destination_address_prefix = destination_address_prefix + self.destination_address_prefixes = destination_address_prefixes + self.destination_application_security_groups = destination_application_security_groups + self.source_port_ranges = source_port_ranges + self.destination_port_ranges = destination_port_ranges + self.access = access + self.priority = priority + self.direction = direction + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy.py new file mode 100644 index 000000000000..eccec5aee1de --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy.py @@ -0,0 +1,68 @@ +# 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 .resource import Resource + + +class ServiceEndpointPolicy(Resource): + """Service End point policy resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_endpoint_policy_definitions: A collection of service + endpoint policy definitions of the service endpoint policy. + :type service_endpoint_policy_definitions: + list[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyDefinition] + :param resource_guid: The resource GUID property of the service endpoint + policy resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the service endpoint + policy. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_endpoint_policy_definitions': {'key': 'properties.serviceEndpointPolicyDefinitions', 'type': '[ServiceEndpointPolicyDefinition]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPolicy, self).__init__(**kwargs) + self.service_endpoint_policy_definitions = kwargs.get('service_endpoint_policy_definitions', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition.py new file mode 100644 index 000000000000..2e8c421e8a11 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition.py @@ -0,0 +1,55 @@ +# 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 .sub_resource import SubResource + + +class ServiceEndpointPolicyDefinition(SubResource): + """Service Endpoint policy definitions. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param service: service endpoint name. + :type service: str + :param service_resources: A list of service resources. + :type service_resources: list[str] + :param provisioning_state: The provisioning state of the service end point + policy definition. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'service': {'key': 'properties.service', 'type': 'str'}, + 'service_resources': {'key': 'properties.serviceResources', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPolicyDefinition, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.service = kwargs.get('service', None) + self.service_resources = kwargs.get('service_resources', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition_paged.py new file mode 100644 index 000000000000..74376b4a1cc6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ServiceEndpointPolicyDefinitionPaged(Paged): + """ + A paging container for iterating over a list of :class:`ServiceEndpointPolicyDefinition ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ServiceEndpointPolicyDefinition]'} + } + + def __init__(self, *args, **kwargs): + + super(ServiceEndpointPolicyDefinitionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition_py3.py new file mode 100644 index 000000000000..973e02e6dcdd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_definition_py3.py @@ -0,0 +1,55 @@ +# 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 .sub_resource_py3 import SubResource + + +class ServiceEndpointPolicyDefinition(SubResource): + """Service Endpoint policy definitions. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param service: service endpoint name. + :type service: str + :param service_resources: A list of service resources. + :type service_resources: list[str] + :param provisioning_state: The provisioning state of the service end point + policy definition. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'service': {'key': 'properties.service', 'type': 'str'}, + 'service_resources': {'key': 'properties.serviceResources', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, description: str=None, service: str=None, service_resources=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(ServiceEndpointPolicyDefinition, self).__init__(id=id, **kwargs) + self.description = description + self.service = service + self.service_resources = service_resources + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_paged.py new file mode 100644 index 000000000000..adbf3349cb59 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ServiceEndpointPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`ServiceEndpointPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ServiceEndpointPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(ServiceEndpointPolicyPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_py3.py new file mode 100644 index 000000000000..1166dc0856a7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_policy_py3.py @@ -0,0 +1,68 @@ +# 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 .resource_py3 import Resource + + +class ServiceEndpointPolicy(Resource): + """Service End point policy resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_endpoint_policy_definitions: A collection of service + endpoint policy definitions of the service endpoint policy. + :type service_endpoint_policy_definitions: + list[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyDefinition] + :param resource_guid: The resource GUID property of the service endpoint + policy resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the service endpoint + policy. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_endpoint_policy_definitions': {'key': 'properties.serviceEndpointPolicyDefinitions', 'type': '[ServiceEndpointPolicyDefinition]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, service_endpoint_policy_definitions=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(ServiceEndpointPolicy, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.service_endpoint_policy_definitions = service_endpoint_policy_definitions + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_properties_format.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_properties_format.py new file mode 100644 index 000000000000..87ca01e64540 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_properties_format.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceEndpointPropertiesFormat(Model): + """The service endpoint properties. + + :param service: The type of the endpoint service. + :type service: str + :param locations: A list of locations. + :type locations: list[str] + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + """ + + _attribute_map = { + 'service': {'key': 'service', 'type': 'str'}, + 'locations': {'key': 'locations', 'type': '[str]'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPropertiesFormat, self).__init__(**kwargs) + self.service = kwargs.get('service', None) + self.locations = kwargs.get('locations', None) + self.provisioning_state = kwargs.get('provisioning_state', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_properties_format_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_properties_format_py3.py new file mode 100644 index 000000000000..8d3d2e5e8347 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/service_endpoint_properties_format_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceEndpointPropertiesFormat(Model): + """The service endpoint properties. + + :param service: The type of the endpoint service. + :type service: str + :param locations: A list of locations. + :type locations: list[str] + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + """ + + _attribute_map = { + 'service': {'key': 'service', 'type': 'str'}, + 'locations': {'key': 'locations', 'type': '[str]'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + } + + def __init__(self, *, service: str=None, locations=None, provisioning_state: str=None, **kwargs) -> None: + super(ServiceEndpointPropertiesFormat, self).__init__(**kwargs) + self.service = service + self.locations = locations + self.provisioning_state = provisioning_state diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/sub_resource.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/sub_resource.py new file mode 100644 index 000000000000..6ab81f55f21b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/sub_resource.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResource(Model): + """Reference to another subresource. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SubResource, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/sub_resource_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/sub_resource_py3.py new file mode 100644 index 000000000000..8f4c4c816061 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/sub_resource_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResource(Model): + """Reference to another subresource. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(SubResource, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet.py new file mode 100644 index 000000000000..4a175b67889b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet.py @@ -0,0 +1,84 @@ +# 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 .sub_resource import SubResource + + +class Subnet(SubResource): + """Subnet in a virtual network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param address_prefix: The address prefix for the subnet. + :type address_prefix: str + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup + :param route_table: The reference of the RouteTable resource. + :type route_table: ~azure.mgmt.network.v2018_07_01.models.RouteTable + :param service_endpoints: An array of service endpoints. + :type service_endpoints: + list[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPropertiesFormat] + :param service_endpoint_policies: An array of service endpoint policies. + :type service_endpoint_policies: + list[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy] + :ivar ip_configurations: Gets an array of references to the network + interface IP configurations using subnet. + :vartype ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.IPConfiguration] + :param resource_navigation_links: Gets an array of references to the + external resources using subnet. + :type resource_navigation_links: + list[~azure.mgmt.network.v2018_07_01.models.ResourceNavigationLink] + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'ip_configurations': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'RouteTable'}, + 'service_endpoints': {'key': 'properties.serviceEndpoints', 'type': '[ServiceEndpointPropertiesFormat]'}, + 'service_endpoint_policies': {'key': 'properties.serviceEndpointPolicies', 'type': '[ServiceEndpointPolicy]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfiguration]'}, + 'resource_navigation_links': {'key': 'properties.resourceNavigationLinks', 'type': '[ResourceNavigationLink]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Subnet, self).__init__(**kwargs) + self.address_prefix = kwargs.get('address_prefix', None) + self.network_security_group = kwargs.get('network_security_group', None) + self.route_table = kwargs.get('route_table', None) + self.service_endpoints = kwargs.get('service_endpoints', None) + self.service_endpoint_policies = kwargs.get('service_endpoint_policies', None) + self.ip_configurations = None + self.resource_navigation_links = kwargs.get('resource_navigation_links', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_association.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_association.py new file mode 100644 index 000000000000..d0ec93321025 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_association.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubnetAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Subnet ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, **kwargs): + super(SubnetAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = kwargs.get('security_rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_association_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_association_py3.py new file mode 100644 index 000000000000..7e952a65a9d9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_association_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubnetAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Subnet ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, *, security_rules=None, **kwargs) -> None: + super(SubnetAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = security_rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_paged.py new file mode 100644 index 000000000000..8f400b2f269b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SubnetPaged(Paged): + """ + A paging container for iterating over a list of :class:`Subnet ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Subnet]'} + } + + def __init__(self, *args, **kwargs): + + super(SubnetPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_py3.py new file mode 100644 index 000000000000..8861808ee7e5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/subnet_py3.py @@ -0,0 +1,84 @@ +# 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 .sub_resource_py3 import SubResource + + +class Subnet(SubResource): + """Subnet in a virtual network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param address_prefix: The address prefix for the subnet. + :type address_prefix: str + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup + :param route_table: The reference of the RouteTable resource. + :type route_table: ~azure.mgmt.network.v2018_07_01.models.RouteTable + :param service_endpoints: An array of service endpoints. + :type service_endpoints: + list[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPropertiesFormat] + :param service_endpoint_policies: An array of service endpoint policies. + :type service_endpoint_policies: + list[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy] + :ivar ip_configurations: Gets an array of references to the network + interface IP configurations using subnet. + :vartype ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.IPConfiguration] + :param resource_navigation_links: Gets an array of references to the + external resources using subnet. + :type resource_navigation_links: + list[~azure.mgmt.network.v2018_07_01.models.ResourceNavigationLink] + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'ip_configurations': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'RouteTable'}, + 'service_endpoints': {'key': 'properties.serviceEndpoints', 'type': '[ServiceEndpointPropertiesFormat]'}, + 'service_endpoint_policies': {'key': 'properties.serviceEndpointPolicies', 'type': '[ServiceEndpointPolicy]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfiguration]'}, + 'resource_navigation_links': {'key': 'properties.resourceNavigationLinks', 'type': '[ResourceNavigationLink]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, address_prefix: str=None, network_security_group=None, route_table=None, service_endpoints=None, service_endpoint_policies=None, resource_navigation_links=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(Subnet, self).__init__(id=id, **kwargs) + self.address_prefix = address_prefix + self.network_security_group = network_security_group + self.route_table = route_table + self.service_endpoints = service_endpoints + self.service_endpoint_policies = service_endpoint_policies + self.ip_configurations = None + self.resource_navigation_links = resource_navigation_links + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tags_object.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tags_object.py new file mode 100644 index 000000000000..2966ec220f94 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tags_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagsObject(Model): + """Tags object for patch operations. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(TagsObject, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tags_object_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tags_object_py3.py new file mode 100644 index 000000000000..8be0bb4a15d7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tags_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagsObject(Model): + """Tags object for patch operations. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(TagsObject, self).__init__(**kwargs) + self.tags = tags diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology.py new file mode 100644 index 000000000000..af368b4c3c55 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Topology(Model): + """Topology of the specified resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: GUID representing the operation id. + :vartype id: str + :ivar created_date_time: The datetime when the topology was initially + created for the resource group. + :vartype created_date_time: datetime + :ivar last_modified: The datetime when the topology was last modified. + :vartype last_modified: datetime + :param resources: + :type resources: + list[~azure.mgmt.network.v2018_07_01.models.TopologyResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'created_date_time': {'readonly': True}, + 'last_modified': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'resources': {'key': 'resources', 'type': '[TopologyResource]'}, + } + + def __init__(self, **kwargs): + super(Topology, self).__init__(**kwargs) + self.id = None + self.created_date_time = None + self.last_modified = None + self.resources = kwargs.get('resources', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_association.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_association.py new file mode 100644 index 000000000000..bb9d06ce63ea --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_association.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyAssociation(Model): + """Resources that have an association with the parent resource. + + :param name: The name of the resource that is associated with the parent + resource. + :type name: str + :param resource_id: The ID of the resource that is associated with the + parent resource. + :type resource_id: str + :param association_type: The association type of the child resource to the + parent resource. Possible values include: 'Associated', 'Contains' + :type association_type: str or + ~azure.mgmt.network.v2018_07_01.models.AssociationType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'association_type': {'key': 'associationType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TopologyAssociation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.resource_id = kwargs.get('resource_id', None) + self.association_type = kwargs.get('association_type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_association_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_association_py3.py new file mode 100644 index 000000000000..eed2c485723c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_association_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyAssociation(Model): + """Resources that have an association with the parent resource. + + :param name: The name of the resource that is associated with the parent + resource. + :type name: str + :param resource_id: The ID of the resource that is associated with the + parent resource. + :type resource_id: str + :param association_type: The association type of the child resource to the + parent resource. Possible values include: 'Associated', 'Contains' + :type association_type: str or + ~azure.mgmt.network.v2018_07_01.models.AssociationType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'association_type': {'key': 'associationType', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, resource_id: str=None, association_type=None, **kwargs) -> None: + super(TopologyAssociation, self).__init__(**kwargs) + self.name = name + self.resource_id = resource_id + self.association_type = association_type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_parameters.py new file mode 100644 index 000000000000..d8f8b61e39da --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_parameters.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyParameters(Model): + """Parameters that define the representation of topology. + + :param target_resource_group_name: The name of the target resource group + to perform topology on. + :type target_resource_group_name: str + :param target_virtual_network: The reference of the Virtual Network + resource. + :type target_virtual_network: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param target_subnet: The reference of the Subnet resource. + :type target_subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + """ + + _attribute_map = { + 'target_resource_group_name': {'key': 'targetResourceGroupName', 'type': 'str'}, + 'target_virtual_network': {'key': 'targetVirtualNetwork', 'type': 'SubResource'}, + 'target_subnet': {'key': 'targetSubnet', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(TopologyParameters, self).__init__(**kwargs) + self.target_resource_group_name = kwargs.get('target_resource_group_name', None) + self.target_virtual_network = kwargs.get('target_virtual_network', None) + self.target_subnet = kwargs.get('target_subnet', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_parameters_py3.py new file mode 100644 index 000000000000..845677a9be14 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_parameters_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyParameters(Model): + """Parameters that define the representation of topology. + + :param target_resource_group_name: The name of the target resource group + to perform topology on. + :type target_resource_group_name: str + :param target_virtual_network: The reference of the Virtual Network + resource. + :type target_virtual_network: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param target_subnet: The reference of the Subnet resource. + :type target_subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + """ + + _attribute_map = { + 'target_resource_group_name': {'key': 'targetResourceGroupName', 'type': 'str'}, + 'target_virtual_network': {'key': 'targetVirtualNetwork', 'type': 'SubResource'}, + 'target_subnet': {'key': 'targetSubnet', 'type': 'SubResource'}, + } + + def __init__(self, *, target_resource_group_name: str=None, target_virtual_network=None, target_subnet=None, **kwargs) -> None: + super(TopologyParameters, self).__init__(**kwargs) + self.target_resource_group_name = target_resource_group_name + self.target_virtual_network = target_virtual_network + self.target_subnet = target_subnet diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_py3.py new file mode 100644 index 000000000000..739d184b25b4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Topology(Model): + """Topology of the specified resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: GUID representing the operation id. + :vartype id: str + :ivar created_date_time: The datetime when the topology was initially + created for the resource group. + :vartype created_date_time: datetime + :ivar last_modified: The datetime when the topology was last modified. + :vartype last_modified: datetime + :param resources: + :type resources: + list[~azure.mgmt.network.v2018_07_01.models.TopologyResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'created_date_time': {'readonly': True}, + 'last_modified': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'resources': {'key': 'resources', 'type': '[TopologyResource]'}, + } + + def __init__(self, *, resources=None, **kwargs) -> None: + super(Topology, self).__init__(**kwargs) + self.id = None + self.created_date_time = None + self.last_modified = None + self.resources = resources diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_resource.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_resource.py new file mode 100644 index 000000000000..7ab061c74bad --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_resource.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyResource(Model): + """The network resource topology information for the given resource group. + + :param name: Name of the resource. + :type name: str + :param id: ID of the resource. + :type id: str + :param location: Resource location. + :type location: str + :param associations: Holds the associations the resource has with other + resources in the resource group. + :type associations: + list[~azure.mgmt.network.v2018_07_01.models.TopologyAssociation] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'associations': {'key': 'associations', 'type': '[TopologyAssociation]'}, + } + + def __init__(self, **kwargs): + super(TopologyResource, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.location = kwargs.get('location', None) + self.associations = kwargs.get('associations', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_resource_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_resource_py3.py new file mode 100644 index 000000000000..1be08700c985 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/topology_resource_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyResource(Model): + """The network resource topology information for the given resource group. + + :param name: Name of the resource. + :type name: str + :param id: ID of the resource. + :type id: str + :param location: Resource location. + :type location: str + :param associations: Holds the associations the resource has with other + resources in the resource group. + :type associations: + list[~azure.mgmt.network.v2018_07_01.models.TopologyAssociation] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'associations': {'key': 'associations', 'type': '[TopologyAssociation]'}, + } + + def __init__(self, *, name: str=None, id: str=None, location: str=None, associations=None, **kwargs) -> None: + super(TopologyResource, self).__init__(**kwargs) + self.name = name + self.id = id + self.location = location + self.associations = associations diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_configuration_properties.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_configuration_properties.py new file mode 100644 index 000000000000..07ec840d9ed3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_configuration_properties.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficAnalyticsConfigurationProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Flag to enable/disable traffic analytics. + :type enabled: bool + :param workspace_id: Required. The resource guid of the attached workspace + :type workspace_id: str + :param workspace_region: Required. The location of the attached workspace + :type workspace_region: str + :param workspace_resource_id: Required. Resource Id of the attached + workspace + :type workspace_resource_id: str + """ + + _validation = { + 'enabled': {'required': True}, + 'workspace_id': {'required': True}, + 'workspace_region': {'required': True}, + 'workspace_resource_id': {'required': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'workspace_region': {'key': 'workspaceRegion', 'type': 'str'}, + 'workspace_resource_id': {'key': 'workspaceResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TrafficAnalyticsConfigurationProperties, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.workspace_id = kwargs.get('workspace_id', None) + self.workspace_region = kwargs.get('workspace_region', None) + self.workspace_resource_id = kwargs.get('workspace_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_configuration_properties_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_configuration_properties_py3.py new file mode 100644 index 000000000000..bbc5ad2372c3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_configuration_properties_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficAnalyticsConfigurationProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Flag to enable/disable traffic analytics. + :type enabled: bool + :param workspace_id: Required. The resource guid of the attached workspace + :type workspace_id: str + :param workspace_region: Required. The location of the attached workspace + :type workspace_region: str + :param workspace_resource_id: Required. Resource Id of the attached + workspace + :type workspace_resource_id: str + """ + + _validation = { + 'enabled': {'required': True}, + 'workspace_id': {'required': True}, + 'workspace_region': {'required': True}, + 'workspace_resource_id': {'required': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'workspace_region': {'key': 'workspaceRegion', 'type': 'str'}, + 'workspace_resource_id': {'key': 'workspaceResourceId', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool, workspace_id: str, workspace_region: str, workspace_resource_id: str, **kwargs) -> None: + super(TrafficAnalyticsConfigurationProperties, self).__init__(**kwargs) + self.enabled = enabled + self.workspace_id = workspace_id + self.workspace_region = workspace_region + self.workspace_resource_id = workspace_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_properties.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_properties.py new file mode 100644 index 000000000000..1f093309e57a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_properties.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficAnalyticsProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param network_watcher_flow_analytics_configuration: Required. + :type network_watcher_flow_analytics_configuration: + ~azure.mgmt.network.v2018_07_01.models.TrafficAnalyticsConfigurationProperties + """ + + _validation = { + 'network_watcher_flow_analytics_configuration': {'required': True}, + } + + _attribute_map = { + 'network_watcher_flow_analytics_configuration': {'key': 'networkWatcherFlowAnalyticsConfiguration', 'type': 'TrafficAnalyticsConfigurationProperties'}, + } + + def __init__(self, **kwargs): + super(TrafficAnalyticsProperties, self).__init__(**kwargs) + self.network_watcher_flow_analytics_configuration = kwargs.get('network_watcher_flow_analytics_configuration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_properties_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_properties_py3.py new file mode 100644 index 000000000000..a7d02cdcdae2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_analytics_properties_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficAnalyticsProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param network_watcher_flow_analytics_configuration: Required. + :type network_watcher_flow_analytics_configuration: + ~azure.mgmt.network.v2018_07_01.models.TrafficAnalyticsConfigurationProperties + """ + + _validation = { + 'network_watcher_flow_analytics_configuration': {'required': True}, + } + + _attribute_map = { + 'network_watcher_flow_analytics_configuration': {'key': 'networkWatcherFlowAnalyticsConfiguration', 'type': 'TrafficAnalyticsConfigurationProperties'}, + } + + def __init__(self, *, network_watcher_flow_analytics_configuration, **kwargs) -> None: + super(TrafficAnalyticsProperties, self).__init__(**kwargs) + self.network_watcher_flow_analytics_configuration = network_watcher_flow_analytics_configuration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_query.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_query.py new file mode 100644 index 000000000000..e62d7793bafc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_query.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficQuery(Model): + """Parameters to compare with network configuration. + + All required parameters must be populated in order to send to Azure. + + :param direction: Required. The direction of the traffic. Accepted values + are 'Inbound' and 'Outbound'. Possible values include: 'Inbound', + 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_07_01.models.Direction + :param protocol: Required. Protocol to be verified on. Accepted values are + '*', TCP, UDP. + :type protocol: str + :param source: Required. Traffic source. Accepted values are '*', IP + Address/CIDR, Service Tag. + :type source: str + :param destination: Required. Traffic destination. Accepted values are: + '*', IP Address/CIDR, Service Tag. + :type destination: str + :param destination_port: Required. Traffice destination port. Accepted + values are '*', port (for example, 3389) and port range (for example, + 80-100). + :type destination_port: str + """ + + _validation = { + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + 'destination_port': {'required': True}, + } + + _attribute_map = { + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TrafficQuery, self).__init__(**kwargs) + self.direction = kwargs.get('direction', None) + self.protocol = kwargs.get('protocol', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.destination_port = kwargs.get('destination_port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_query_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_query_py3.py new file mode 100644 index 000000000000..012bcfdfa1ac --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/traffic_query_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficQuery(Model): + """Parameters to compare with network configuration. + + All required parameters must be populated in order to send to Azure. + + :param direction: Required. The direction of the traffic. Accepted values + are 'Inbound' and 'Outbound'. Possible values include: 'Inbound', + 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_07_01.models.Direction + :param protocol: Required. Protocol to be verified on. Accepted values are + '*', TCP, UDP. + :type protocol: str + :param source: Required. Traffic source. Accepted values are '*', IP + Address/CIDR, Service Tag. + :type source: str + :param destination: Required. Traffic destination. Accepted values are: + '*', IP Address/CIDR, Service Tag. + :type destination: str + :param destination_port: Required. Traffice destination port. Accepted + values are '*', port (for example, 3389) and port range (for example, + 80-100). + :type destination_port: str + """ + + _validation = { + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + 'destination_port': {'required': True}, + } + + _attribute_map = { + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'str'}, + } + + def __init__(self, *, direction, protocol: str, source: str, destination: str, destination_port: str, **kwargs) -> None: + super(TrafficQuery, self).__init__(**kwargs) + self.direction = direction + self.protocol = protocol + self.source = source + self.destination = destination + self.destination_port = destination_port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_details.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_details.py new file mode 100644 index 000000000000..1fc2d03d9559 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_details.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingDetails(Model): + """Information gained from troubleshooting of specified resource. + + :param id: The id of the get troubleshoot operation. + :type id: str + :param reason_type: Reason type of failure. + :type reason_type: str + :param summary: A summary of troubleshooting. + :type summary: str + :param detail: Details on troubleshooting results. + :type detail: str + :param recommended_actions: List of recommended actions. + :type recommended_actions: + list[~azure.mgmt.network.v2018_07_01.models.TroubleshootingRecommendedActions] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'reason_type': {'key': 'reasonType', 'type': 'str'}, + 'summary': {'key': 'summary', 'type': 'str'}, + 'detail': {'key': 'detail', 'type': 'str'}, + 'recommended_actions': {'key': 'recommendedActions', 'type': '[TroubleshootingRecommendedActions]'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingDetails, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.reason_type = kwargs.get('reason_type', None) + self.summary = kwargs.get('summary', None) + self.detail = kwargs.get('detail', None) + self.recommended_actions = kwargs.get('recommended_actions', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_details_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_details_py3.py new file mode 100644 index 000000000000..5c347b2c456b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_details_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingDetails(Model): + """Information gained from troubleshooting of specified resource. + + :param id: The id of the get troubleshoot operation. + :type id: str + :param reason_type: Reason type of failure. + :type reason_type: str + :param summary: A summary of troubleshooting. + :type summary: str + :param detail: Details on troubleshooting results. + :type detail: str + :param recommended_actions: List of recommended actions. + :type recommended_actions: + list[~azure.mgmt.network.v2018_07_01.models.TroubleshootingRecommendedActions] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'reason_type': {'key': 'reasonType', 'type': 'str'}, + 'summary': {'key': 'summary', 'type': 'str'}, + 'detail': {'key': 'detail', 'type': 'str'}, + 'recommended_actions': {'key': 'recommendedActions', 'type': '[TroubleshootingRecommendedActions]'}, + } + + def __init__(self, *, id: str=None, reason_type: str=None, summary: str=None, detail: str=None, recommended_actions=None, **kwargs) -> None: + super(TroubleshootingDetails, self).__init__(**kwargs) + self.id = id + self.reason_type = reason_type + self.summary = summary + self.detail = detail + self.recommended_actions = recommended_actions diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_parameters.py new file mode 100644 index 000000000000..6b11d3eb5ffc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_parameters.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingParameters(Model): + """Parameters that define the resource to troubleshoot. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource to troubleshoot. + :type target_resource_id: str + :param storage_id: Required. The ID for the storage account to save the + troubleshoot result. + :type storage_id: str + :param storage_path: Required. The path to the blob to save the + troubleshoot result in. + :type storage_path: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'storage_path': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'storage_path': {'key': 'properties.storagePath', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.storage_id = kwargs.get('storage_id', None) + self.storage_path = kwargs.get('storage_path', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_parameters_py3.py new file mode 100644 index 000000000000..e010b7bdc9de --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_parameters_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingParameters(Model): + """Parameters that define the resource to troubleshoot. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource to troubleshoot. + :type target_resource_id: str + :param storage_id: Required. The ID for the storage account to save the + troubleshoot result. + :type storage_id: str + :param storage_path: Required. The path to the blob to save the + troubleshoot result in. + :type storage_path: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'storage_path': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'storage_path': {'key': 'properties.storagePath', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, storage_id: str, storage_path: str, **kwargs) -> None: + super(TroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.storage_id = storage_id + self.storage_path = storage_path diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_recommended_actions.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_recommended_actions.py new file mode 100644 index 000000000000..be395be4ad54 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_recommended_actions.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingRecommendedActions(Model): + """Recommended actions based on discovered issues. + + :param action_id: ID of the recommended action. + :type action_id: str + :param action_text: Description of recommended actions. + :type action_text: str + :param action_uri: The uri linking to a documentation for the recommended + troubleshooting actions. + :type action_uri: str + :param action_uri_text: The information from the URI for the recommended + troubleshooting actions. + :type action_uri_text: str + """ + + _attribute_map = { + 'action_id': {'key': 'actionId', 'type': 'str'}, + 'action_text': {'key': 'actionText', 'type': 'str'}, + 'action_uri': {'key': 'actionUri', 'type': 'str'}, + 'action_uri_text': {'key': 'actionUriText', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingRecommendedActions, self).__init__(**kwargs) + self.action_id = kwargs.get('action_id', None) + self.action_text = kwargs.get('action_text', None) + self.action_uri = kwargs.get('action_uri', None) + self.action_uri_text = kwargs.get('action_uri_text', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_recommended_actions_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_recommended_actions_py3.py new file mode 100644 index 000000000000..05c3f654353b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_recommended_actions_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingRecommendedActions(Model): + """Recommended actions based on discovered issues. + + :param action_id: ID of the recommended action. + :type action_id: str + :param action_text: Description of recommended actions. + :type action_text: str + :param action_uri: The uri linking to a documentation for the recommended + troubleshooting actions. + :type action_uri: str + :param action_uri_text: The information from the URI for the recommended + troubleshooting actions. + :type action_uri_text: str + """ + + _attribute_map = { + 'action_id': {'key': 'actionId', 'type': 'str'}, + 'action_text': {'key': 'actionText', 'type': 'str'}, + 'action_uri': {'key': 'actionUri', 'type': 'str'}, + 'action_uri_text': {'key': 'actionUriText', 'type': 'str'}, + } + + def __init__(self, *, action_id: str=None, action_text: str=None, action_uri: str=None, action_uri_text: str=None, **kwargs) -> None: + super(TroubleshootingRecommendedActions, self).__init__(**kwargs) + self.action_id = action_id + self.action_text = action_text + self.action_uri = action_uri + self.action_uri_text = action_uri_text diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_result.py new file mode 100644 index 000000000000..12cadf02d89d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_result.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingResult(Model): + """Troubleshooting information gained from specified resource. + + :param start_time: The start time of the troubleshooting. + :type start_time: datetime + :param end_time: The end time of the troubleshooting. + :type end_time: datetime + :param code: The result code of the troubleshooting. + :type code: str + :param results: Information from troubleshooting. + :type results: + list[~azure.mgmt.network.v2018_07_01.models.TroubleshootingDetails] + """ + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'code': {'key': 'code', 'type': 'str'}, + 'results': {'key': 'results', 'type': '[TroubleshootingDetails]'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingResult, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.code = kwargs.get('code', None) + self.results = kwargs.get('results', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_result_py3.py new file mode 100644 index 000000000000..ef617d3d8842 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/troubleshooting_result_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingResult(Model): + """Troubleshooting information gained from specified resource. + + :param start_time: The start time of the troubleshooting. + :type start_time: datetime + :param end_time: The end time of the troubleshooting. + :type end_time: datetime + :param code: The result code of the troubleshooting. + :type code: str + :param results: Information from troubleshooting. + :type results: + list[~azure.mgmt.network.v2018_07_01.models.TroubleshootingDetails] + """ + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'code': {'key': 'code', 'type': 'str'}, + 'results': {'key': 'results', 'type': '[TroubleshootingDetails]'}, + } + + def __init__(self, *, start_time=None, end_time=None, code: str=None, results=None, **kwargs) -> None: + super(TroubleshootingResult, self).__init__(**kwargs) + self.start_time = start_time + self.end_time = end_time + self.code = code + self.results = results diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tunnel_connection_health.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tunnel_connection_health.py new file mode 100644 index 000000000000..cffaa1162a79 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tunnel_connection_health.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TunnelConnectionHealth(Model): + """VirtualNetworkGatewayConnection properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar tunnel: Tunnel name. + :vartype tunnel: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionStatus + :ivar ingress_bytes_transferred: The Ingress Bytes Transferred in this + connection + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: The Egress Bytes Transferred in this + connection + :vartype egress_bytes_transferred: long + :ivar last_connection_established_utc_time: The time at which connection + was established in Utc format. + :vartype last_connection_established_utc_time: str + """ + + _validation = { + 'tunnel': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'last_connection_established_utc_time': {'readonly': True}, + } + + _attribute_map = { + 'tunnel': {'key': 'tunnel', 'type': 'str'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'egressBytesTransferred', 'type': 'long'}, + 'last_connection_established_utc_time': {'key': 'lastConnectionEstablishedUtcTime', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TunnelConnectionHealth, self).__init__(**kwargs) + self.tunnel = None + self.connection_status = None + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.last_connection_established_utc_time = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tunnel_connection_health_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tunnel_connection_health_py3.py new file mode 100644 index 000000000000..a50522e3def9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/tunnel_connection_health_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TunnelConnectionHealth(Model): + """VirtualNetworkGatewayConnection properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar tunnel: Tunnel name. + :vartype tunnel: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionStatus + :ivar ingress_bytes_transferred: The Ingress Bytes Transferred in this + connection + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: The Egress Bytes Transferred in this + connection + :vartype egress_bytes_transferred: long + :ivar last_connection_established_utc_time: The time at which connection + was established in Utc format. + :vartype last_connection_established_utc_time: str + """ + + _validation = { + 'tunnel': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'last_connection_established_utc_time': {'readonly': True}, + } + + _attribute_map = { + 'tunnel': {'key': 'tunnel', 'type': 'str'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'egressBytesTransferred', 'type': 'long'}, + 'last_connection_established_utc_time': {'key': 'lastConnectionEstablishedUtcTime', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(TunnelConnectionHealth, self).__init__(**kwargs) + self.tunnel = None + self.connection_status = None + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.last_connection_established_utc_time = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage.py new file mode 100644 index 000000000000..e0581733fcc4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """Describes network resource usage. + + 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 identifier. + :vartype id: str + :ivar unit: Required. An enum describing the unit of measurement. Default + value: "Count" . + :vartype unit: str + :param current_value: Required. The current value of the usage. + :type current_value: long + :param limit: Required. The limit of usage. + :type limit: long + :param name: Required. The name of the type of usage. + :type name: ~azure.mgmt.network.v2018_07_01.models.UsageName + """ + + _validation = { + 'id': {'readonly': True}, + 'unit': {'required': True, 'constant': True}, + 'current_value': {'required': True}, + 'limit': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + unit = "Count" + + def __init__(self, **kwargs): + super(Usage, self).__init__(**kwargs) + self.id = None + self.current_value = kwargs.get('current_value', None) + self.limit = kwargs.get('limit', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_name.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_name.py new file mode 100644 index 000000000000..bd1813944fdc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_name.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageName(Model): + """The usage names. + + :param value: A string describing the resource name. + :type value: str + :param localized_value: A localized string describing the resource name. + :type localized_value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UsageName, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.localized_value = kwargs.get('localized_value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_name_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_name_py3.py new file mode 100644 index 000000000000..4e5e3e10de15 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_name_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageName(Model): + """The usage names. + + :param value: A string describing the resource name. + :type value: str + :param localized_value: A localized string describing the resource 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(UsageName, self).__init__(**kwargs) + self.value = value + self.localized_value = localized_value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_paged.py new file mode 100644 index 000000000000..809aa37ad4c7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class UsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`Usage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Usage]'} + } + + def __init__(self, *args, **kwargs): + + super(UsagePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_py3.py new file mode 100644 index 000000000000..4db78a52186d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/usage_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """Describes network resource usage. + + 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 identifier. + :vartype id: str + :ivar unit: Required. An enum describing the unit of measurement. Default + value: "Count" . + :vartype unit: str + :param current_value: Required. The current value of the usage. + :type current_value: long + :param limit: Required. The limit of usage. + :type limit: long + :param name: Required. The name of the type of usage. + :type name: ~azure.mgmt.network.v2018_07_01.models.UsageName + """ + + _validation = { + 'id': {'readonly': True}, + 'unit': {'required': True, 'constant': True}, + 'current_value': {'required': True}, + 'limit': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + unit = "Count" + + def __init__(self, *, current_value: int, limit: int, name, **kwargs) -> None: + super(Usage, self).__init__(**kwargs) + self.id = None + self.current_value = current_value + self.limit = limit + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_parameters.py new file mode 100644 index 000000000000..2b4ca65bc413 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_parameters.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerificationIPFlowParameters(Model): + """Parameters that define the IP flow to be verified. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform next-hop on. + :type target_resource_id: str + :param direction: Required. The direction of the packet represented as a + 5-tuple. Possible values include: 'Inbound', 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_07_01.models.Direction + :param protocol: Required. Protocol to be verified on. Possible values + include: 'TCP', 'UDP' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.IpFlowProtocol + :param local_port: Required. The local port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type local_port: str + :param remote_port: Required. The remote port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type remote_port: str + :param local_ip_address: Required. The local IP address. Acceptable values + are valid IPv4 addresses. + :type local_ip_address: str + :param remote_ip_address: Required. The remote IP address. Acceptable + values are valid IPv4 addresses. + :type remote_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of them, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'local_port': {'required': True}, + 'remote_port': {'required': True}, + 'local_ip_address': {'required': True}, + 'remote_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VerificationIPFlowParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.direction = kwargs.get('direction', None) + self.protocol = kwargs.get('protocol', None) + self.local_port = kwargs.get('local_port', None) + self.remote_port = kwargs.get('remote_port', None) + self.local_ip_address = kwargs.get('local_ip_address', None) + self.remote_ip_address = kwargs.get('remote_ip_address', None) + self.target_nic_resource_id = kwargs.get('target_nic_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_parameters_py3.py new file mode 100644 index 000000000000..a02b2caed95f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_parameters_py3.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerificationIPFlowParameters(Model): + """Parameters that define the IP flow to be verified. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform next-hop on. + :type target_resource_id: str + :param direction: Required. The direction of the packet represented as a + 5-tuple. Possible values include: 'Inbound', 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_07_01.models.Direction + :param protocol: Required. Protocol to be verified on. Possible values + include: 'TCP', 'UDP' + :type protocol: str or + ~azure.mgmt.network.v2018_07_01.models.IpFlowProtocol + :param local_port: Required. The local port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type local_port: str + :param remote_port: Required. The remote port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type remote_port: str + :param local_ip_address: Required. The local IP address. Acceptable values + are valid IPv4 addresses. + :type local_ip_address: str + :param remote_ip_address: Required. The remote IP address. Acceptable + values are valid IPv4 addresses. + :type remote_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of them, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'local_port': {'required': True}, + 'remote_port': {'required': True}, + 'local_ip_address': {'required': True}, + 'remote_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, direction, protocol, local_port: str, remote_port: str, local_ip_address: str, remote_ip_address: str, target_nic_resource_id: str=None, **kwargs) -> None: + super(VerificationIPFlowParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.direction = direction + self.protocol = protocol + self.local_port = local_port + self.remote_port = remote_port + self.local_ip_address = local_ip_address + self.remote_ip_address = remote_ip_address + self.target_nic_resource_id = target_nic_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_result.py new file mode 100644 index 000000000000..232d51310f8a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerificationIPFlowResult(Model): + """Results of IP flow verification on the target resource. + + :param access: Indicates whether the traffic is allowed or denied. + Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_07_01.models.Access + :param rule_name: Name of the rule. If input is not matched against any + security rule, it is not displayed. + :type rule_name: str + """ + + _attribute_map = { + 'access': {'key': 'access', 'type': 'str'}, + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VerificationIPFlowResult, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.rule_name = kwargs.get('rule_name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_result_py3.py new file mode 100644 index 000000000000..3cecdf248d3f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/verification_ip_flow_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerificationIPFlowResult(Model): + """Results of IP flow verification on the target resource. + + :param access: Indicates whether the traffic is allowed or denied. + Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_07_01.models.Access + :param rule_name: Name of the rule. If input is not matched against any + security rule, it is not displayed. + :type rule_name: str + """ + + _attribute_map = { + 'access': {'key': 'access', 'type': 'str'}, + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + } + + def __init__(self, *, access=None, rule_name: str=None, **kwargs) -> None: + super(VerificationIPFlowResult, self).__init__(**kwargs) + self.access = access + self.rule_name = rule_name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub.py new file mode 100644 index 000000000000..76ae4b092091 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub.py @@ -0,0 +1,73 @@ +# 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 .resource import Resource + + +class VirtualHub(Resource): + """VirtualHub Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the VirtualHub belongs + :type virtual_wan: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param hub_virtual_network_connections: list of all vnet connections with + this VirtualHub. + :type hub_virtual_network_connections: + list[~azure.mgmt.network.v2018_07_01.models.HubVirtualNetworkConnection] + :param address_prefix: Address-prefix for this VirtualHub. + :type address_prefix: str + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'hub_virtual_network_connections': {'key': 'properties.hubVirtualNetworkConnections', 'type': '[HubVirtualNetworkConnection]'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHub, self).__init__(**kwargs) + self.virtual_wan = kwargs.get('virtual_wan', None) + self.hub_virtual_network_connections = kwargs.get('hub_virtual_network_connections', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub_paged.py new file mode 100644 index 000000000000..40bb1179c201 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualHubPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualHub ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualHub]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualHubPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub_py3.py new file mode 100644 index 000000000000..ad6383475ab4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_hub_py3.py @@ -0,0 +1,73 @@ +# 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 .resource_py3 import Resource + + +class VirtualHub(Resource): + """VirtualHub Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the VirtualHub belongs + :type virtual_wan: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param hub_virtual_network_connections: list of all vnet connections with + this VirtualHub. + :type hub_virtual_network_connections: + list[~azure.mgmt.network.v2018_07_01.models.HubVirtualNetworkConnection] + :param address_prefix: Address-prefix for this VirtualHub. + :type address_prefix: str + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'hub_virtual_network_connections': {'key': 'properties.hubVirtualNetworkConnections', 'type': '[HubVirtualNetworkConnection]'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_wan=None, hub_virtual_network_connections=None, address_prefix: str=None, provisioning_state=None, **kwargs) -> None: + super(VirtualHub, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_wan = virtual_wan + self.hub_virtual_network_connections = hub_virtual_network_connections + self.address_prefix = address_prefix + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network.py new file mode 100644 index 000000000000..369c34a4bc6f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network.py @@ -0,0 +1,98 @@ +# 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 .resource import Resource + + +class VirtualNetwork(Resource): + """Virtual Network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param address_space: The AddressSpace that contains an array of IP + address ranges that can be used by subnets. + :type address_space: ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param dhcp_options: The dhcpOptions that contains an array of DNS servers + available to VMs deployed in the virtual network. + :type dhcp_options: ~azure.mgmt.network.v2018_07_01.models.DhcpOptions + :param subnets: A list of subnets in a Virtual Network. + :type subnets: list[~azure.mgmt.network.v2018_07_01.models.Subnet] + :param virtual_network_peerings: A list of peerings in a Virtual Network. + :type virtual_network_peerings: + list[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeering] + :param resource_guid: The resourceGuid property of the Virtual Network + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param enable_ddos_protection: Indicates if DDoS protection is enabled for + all the protected resources in the virtual network. It requires a DDoS + protection plan associated with the resource. Default value: False . + :type enable_ddos_protection: bool + :param enable_vm_protection: Indicates if VM protection is enabled for all + the subnets in the virtual network. Default value: False . + :type enable_vm_protection: bool + :param ddos_protection_plan: The DDoS protection plan associated with the + virtual network. + :type ddos_protection_plan: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'dhcp_options': {'key': 'properties.dhcpOptions', 'type': 'DhcpOptions'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'virtual_network_peerings': {'key': 'properties.virtualNetworkPeerings', 'type': '[VirtualNetworkPeering]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'enable_ddos_protection': {'key': 'properties.enableDdosProtection', 'type': 'bool'}, + 'enable_vm_protection': {'key': 'properties.enableVmProtection', 'type': 'bool'}, + 'ddos_protection_plan': {'key': 'properties.ddosProtectionPlan', 'type': 'SubResource'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetwork, self).__init__(**kwargs) + self.address_space = kwargs.get('address_space', None) + self.dhcp_options = kwargs.get('dhcp_options', None) + self.subnets = kwargs.get('subnets', None) + self.virtual_network_peerings = kwargs.get('virtual_network_peerings', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.enable_ddos_protection = kwargs.get('enable_ddos_protection', False) + self.enable_vm_protection = kwargs.get('enable_vm_protection', False) + self.ddos_protection_plan = kwargs.get('ddos_protection_plan', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_connection_gateway_reference.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_connection_gateway_reference.py new file mode 100644 index 000000000000..aa10101778f6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_connection_gateway_reference.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkConnectionGatewayReference(Model): + """A reference to VirtualNetworkGateway or LocalNetworkGateway resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of VirtualNetworkGateway or + LocalNetworkGateway resource. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkConnectionGatewayReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_connection_gateway_reference_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_connection_gateway_reference_py3.py new file mode 100644 index 000000000000..b2d9734baf3c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_connection_gateway_reference_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkConnectionGatewayReference(Model): + """A reference to VirtualNetworkGateway or LocalNetworkGateway resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of VirtualNetworkGateway or + LocalNetworkGateway resource. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str, **kwargs) -> None: + super(VirtualNetworkConnectionGatewayReference, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway.py new file mode 100644 index 000000000000..1528ed8a2ab2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway.py @@ -0,0 +1,114 @@ +# 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 .resource import Resource + + +class VirtualNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param ip_configurations: IP configurations for virtual network gateway. + :type ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayIPConfiguration] + :param gateway_type: The type of this virtual network gateway. Possible + values are: 'Vpn' and 'ExpressRoute'. Possible values include: 'Vpn', + 'ExpressRoute' + :type gateway_type: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayType + :param vpn_type: The type of this virtual network gateway. Possible values + are: 'PolicyBased' and 'RouteBased'. Possible values include: + 'PolicyBased', 'RouteBased' + :type vpn_type: str or ~azure.mgmt.network.v2018_07_01.models.VpnType + :param enable_bgp: Whether BGP is enabled for this virtual network gateway + or not. + :type enable_bgp: bool + :param active_active: ActiveActive flag + :type active_active: bool + :param gateway_default_site: The reference of the LocalNetworkGateway + resource which represents local network site having default routes. Assign + Null value in case of removing existing default site setting. + :type gateway_default_site: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param sku: The reference of the VirtualNetworkGatewaySku resource which + represents the SKU selected for Virtual network gateway. + :type sku: ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewaySku + :param vpn_client_configuration: The reference of the + VpnClientConfiguration resource which represents the P2S VpnClient + configurations. + :type vpn_client_configuration: + ~azure.mgmt.network.v2018_07_01.models.VpnClientConfiguration + :param bgp_settings: Virtual network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_07_01.models.BgpSettings + :param resource_guid: The resource GUID property of the + VirtualNetworkGateway resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGateway resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualNetworkGatewayIPConfiguration]'}, + 'gateway_type': {'key': 'properties.gatewayType', 'type': 'str'}, + 'vpn_type': {'key': 'properties.vpnType', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'active_active': {'key': 'properties.activeActive', 'type': 'bool'}, + 'gateway_default_site': {'key': 'properties.gatewayDefaultSite', 'type': 'SubResource'}, + 'sku': {'key': 'properties.sku', 'type': 'VirtualNetworkGatewaySku'}, + 'vpn_client_configuration': {'key': 'properties.vpnClientConfiguration', 'type': 'VpnClientConfiguration'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGateway, self).__init__(**kwargs) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.gateway_type = kwargs.get('gateway_type', None) + self.vpn_type = kwargs.get('vpn_type', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.active_active = kwargs.get('active_active', None) + self.gateway_default_site = kwargs.get('gateway_default_site', None) + self.sku = kwargs.get('sku', None) + self.vpn_client_configuration = kwargs.get('vpn_client_configuration', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection.py new file mode 100644 index 000000000000..fad2588b5be4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection.py @@ -0,0 +1,157 @@ +# 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 .resource import Resource + + +class VirtualNetworkGatewayConnection(Resource): + """A common class for general resource information. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway + :param connection_type: Required. Gateway connection type. Possible values + are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionType + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values are 'Unknown', 'Connecting', 'Connected' and + 'NotConnected'. Possible values include: 'Unknown', 'Connecting', + 'Connected', 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2018_07_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_07_01.models.IpsecPolicy] + :param resource_guid: The resource GUID property of the + VirtualNetworkGatewayConnection resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding + :type express_route_gateway_bypass: bool + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkGateway'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkGateway'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'LocalNetworkGateway'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayConnection, self).__init__(**kwargs) + self.authorization_key = kwargs.get('authorization_key', None) + self.virtual_network_gateway1 = kwargs.get('virtual_network_gateway1', None) + self.virtual_network_gateway2 = kwargs.get('virtual_network_gateway2', None) + self.local_network_gateway2 = kwargs.get('local_network_gateway2', None) + self.connection_type = kwargs.get('connection_type', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.shared_key = kwargs.get('shared_key', None) + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = kwargs.get('peer', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.use_policy_based_traffic_selectors = kwargs.get('use_policy_based_traffic_selectors', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = None + self.express_route_gateway_bypass = kwargs.get('express_route_gateway_bypass', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity.py new file mode 100644 index 000000000000..bfd47134549c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity.py @@ -0,0 +1,157 @@ +# 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 .resource import Resource + + +class VirtualNetworkGatewayConnectionListEntity(Resource): + """A common class for general resource information. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkConnectionGatewayReference + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkConnectionGatewayReference + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkConnectionGatewayReference + :param connection_type: Required. Gateway connection type. Possible values + are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionType + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values are 'Unknown', 'Connecting', 'Connected' and + 'NotConnected'. Possible values include: 'Unknown', 'Connecting', + 'Connected', 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2018_07_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_07_01.models.IpsecPolicy] + :param resource_guid: The resource GUID property of the + VirtualNetworkGatewayConnection resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding + :type express_route_gateway_bypass: bool + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayConnectionListEntity, self).__init__(**kwargs) + self.authorization_key = kwargs.get('authorization_key', None) + self.virtual_network_gateway1 = kwargs.get('virtual_network_gateway1', None) + self.virtual_network_gateway2 = kwargs.get('virtual_network_gateway2', None) + self.local_network_gateway2 = kwargs.get('local_network_gateway2', None) + self.connection_type = kwargs.get('connection_type', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.shared_key = kwargs.get('shared_key', None) + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = kwargs.get('peer', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.use_policy_based_traffic_selectors = kwargs.get('use_policy_based_traffic_selectors', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = None + self.express_route_gateway_bypass = kwargs.get('express_route_gateway_bypass', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity_paged.py new file mode 100644 index 000000000000..5bbe5e1c0e47 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkGatewayConnectionListEntityPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGatewayConnectionListEntity ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGatewayConnectionListEntity]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayConnectionListEntityPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity_py3.py new file mode 100644 index 000000000000..e8d61906420d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_list_entity_py3.py @@ -0,0 +1,157 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetworkGatewayConnectionListEntity(Resource): + """A common class for general resource information. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkConnectionGatewayReference + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkConnectionGatewayReference + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkConnectionGatewayReference + :param connection_type: Required. Gateway connection type. Possible values + are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionType + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values are 'Unknown', 'Connecting', 'Connected' and + 'NotConnected'. Possible values include: 'Unknown', 'Connecting', + 'Connected', 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2018_07_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_07_01.models.IpsecPolicy] + :param resource_guid: The resource GUID property of the + VirtualNetworkGatewayConnection resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding + :type express_route_gateway_bypass: bool + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, virtual_network_gateway1, connection_type, id: str=None, location: str=None, tags=None, authorization_key: str=None, virtual_network_gateway2=None, local_network_gateway2=None, routing_weight: int=None, shared_key: str=None, peer=None, enable_bgp: bool=None, use_policy_based_traffic_selectors: bool=None, ipsec_policies=None, resource_guid: str=None, express_route_gateway_bypass: bool=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkGatewayConnectionListEntity, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.authorization_key = authorization_key + self.virtual_network_gateway1 = virtual_network_gateway1 + self.virtual_network_gateway2 = virtual_network_gateway2 + self.local_network_gateway2 = local_network_gateway2 + self.connection_type = connection_type + self.routing_weight = routing_weight + self.shared_key = shared_key + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = peer + self.enable_bgp = enable_bgp + self.use_policy_based_traffic_selectors = use_policy_based_traffic_selectors + self.ipsec_policies = ipsec_policies + self.resource_guid = resource_guid + self.provisioning_state = None + self.express_route_gateway_bypass = express_route_gateway_bypass + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_paged.py new file mode 100644 index 000000000000..9c2725606e09 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkGatewayConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGatewayConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGatewayConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayConnectionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_py3.py new file mode 100644 index 000000000000..fb6f378cb6d3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_connection_py3.py @@ -0,0 +1,157 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetworkGatewayConnection(Resource): + """A common class for general resource information. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway + :param connection_type: Required. Gateway connection type. Possible values + are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionType + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values are 'Unknown', 'Connecting', 'Connected' and + 'NotConnected'. Possible values include: 'Unknown', 'Connecting', + 'Connected', 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2018_07_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_07_01.models.IpsecPolicy] + :param resource_guid: The resource GUID property of the + VirtualNetworkGatewayConnection resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding + :type express_route_gateway_bypass: bool + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkGateway'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkGateway'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'LocalNetworkGateway'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, virtual_network_gateway1, connection_type, id: str=None, location: str=None, tags=None, authorization_key: str=None, virtual_network_gateway2=None, local_network_gateway2=None, routing_weight: int=None, shared_key: str=None, peer=None, enable_bgp: bool=None, use_policy_based_traffic_selectors: bool=None, ipsec_policies=None, resource_guid: str=None, express_route_gateway_bypass: bool=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkGatewayConnection, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.authorization_key = authorization_key + self.virtual_network_gateway1 = virtual_network_gateway1 + self.virtual_network_gateway2 = virtual_network_gateway2 + self.local_network_gateway2 = local_network_gateway2 + self.connection_type = connection_type + self.routing_weight = routing_weight + self.shared_key = shared_key + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = peer + self.enable_bgp = enable_bgp + self.use_policy_based_traffic_selectors = use_policy_based_traffic_selectors + self.ipsec_policies = ipsec_policies + self.resource_guid = resource_guid + self.provisioning_state = None + self.express_route_gateway_bypass = express_route_gateway_bypass + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_ip_configuration.py new file mode 100644 index 000000000000..3d0611e455e7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_ip_configuration.py @@ -0,0 +1,65 @@ +# 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 .sub_resource import SubResource + + +class VirtualNetworkGatewayIPConfiguration(SubResource): + """IP configuration for virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_allocation_method: The private IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :ivar provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayIPConfiguration, self).__init__(**kwargs) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_ip_configuration_py3.py new file mode 100644 index 000000000000..b73bf65e542c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_ip_configuration_py3.py @@ -0,0 +1,65 @@ +# 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 .sub_resource_py3 import SubResource + + +class VirtualNetworkGatewayIPConfiguration(SubResource): + """IP configuration for virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_allocation_method: The private IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_07_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :ivar provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, name: str=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkGatewayIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_paged.py new file mode 100644 index 000000000000..e67f0ab63de7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_py3.py new file mode 100644 index 000000000000..9dcd4906db64 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_py3.py @@ -0,0 +1,114 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param ip_configurations: IP configurations for virtual network gateway. + :type ip_configurations: + list[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayIPConfiguration] + :param gateway_type: The type of this virtual network gateway. Possible + values are: 'Vpn' and 'ExpressRoute'. Possible values include: 'Vpn', + 'ExpressRoute' + :type gateway_type: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayType + :param vpn_type: The type of this virtual network gateway. Possible values + are: 'PolicyBased' and 'RouteBased'. Possible values include: + 'PolicyBased', 'RouteBased' + :type vpn_type: str or ~azure.mgmt.network.v2018_07_01.models.VpnType + :param enable_bgp: Whether BGP is enabled for this virtual network gateway + or not. + :type enable_bgp: bool + :param active_active: ActiveActive flag + :type active_active: bool + :param gateway_default_site: The reference of the LocalNetworkGateway + resource which represents local network site having default routes. Assign + Null value in case of removing existing default site setting. + :type gateway_default_site: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param sku: The reference of the VirtualNetworkGatewaySku resource which + represents the SKU selected for Virtual network gateway. + :type sku: ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewaySku + :param vpn_client_configuration: The reference of the + VpnClientConfiguration resource which represents the P2S VpnClient + configurations. + :type vpn_client_configuration: + ~azure.mgmt.network.v2018_07_01.models.VpnClientConfiguration + :param bgp_settings: Virtual network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_07_01.models.BgpSettings + :param resource_guid: The resource GUID property of the + VirtualNetworkGateway resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGateway resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualNetworkGatewayIPConfiguration]'}, + 'gateway_type': {'key': 'properties.gatewayType', 'type': 'str'}, + 'vpn_type': {'key': 'properties.vpnType', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'active_active': {'key': 'properties.activeActive', 'type': 'bool'}, + 'gateway_default_site': {'key': 'properties.gatewayDefaultSite', 'type': 'SubResource'}, + 'sku': {'key': 'properties.sku', 'type': 'VirtualNetworkGatewaySku'}, + 'vpn_client_configuration': {'key': 'properties.vpnClientConfiguration', 'type': 'VpnClientConfiguration'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, ip_configurations=None, gateway_type=None, vpn_type=None, enable_bgp: bool=None, active_active: bool=None, gateway_default_site=None, sku=None, vpn_client_configuration=None, bgp_settings=None, resource_guid: str=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.ip_configurations = ip_configurations + self.gateway_type = gateway_type + self.vpn_type = vpn_type + self.enable_bgp = enable_bgp + self.active_active = active_active + self.gateway_default_site = gateway_default_site + self.sku = sku + self.vpn_client_configuration = vpn_client_configuration + self.bgp_settings = bgp_settings + self.resource_guid = resource_guid + self.provisioning_state = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_sku.py new file mode 100644 index 000000000000..f759fa3e84c2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_sku.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkGatewaySku(Model): + """VirtualNetworkGatewaySku details. + + :param name: Gateway SKU name. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', 'ErGw1AZ', 'ErGw2AZ', + 'ErGw3AZ' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewaySkuName + :param tier: Gateway SKU tier. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', 'ErGw1AZ', 'ErGw2AZ', + 'ErGw3AZ' + :type tier: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewaySkuTier + :param capacity: The capacity. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewaySku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_sku_py3.py new file mode 100644 index 000000000000..d04d54cfc9a5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_gateway_sku_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkGatewaySku(Model): + """VirtualNetworkGatewaySku details. + + :param name: Gateway SKU name. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', 'ErGw1AZ', 'ErGw2AZ', + 'ErGw3AZ' + :type name: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewaySkuName + :param tier: Gateway SKU tier. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', 'ErGw1AZ', 'ErGw2AZ', + 'ErGw3AZ' + :type tier: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewaySkuTier + :param capacity: The capacity. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, *, name=None, tier=None, capacity: int=None, **kwargs) -> None: + super(VirtualNetworkGatewaySku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_paged.py new file mode 100644 index 000000000000..0253aab6a808 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetwork ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetwork]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering.py new file mode 100644 index 000000000000..bd3aad4bf414 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering.py @@ -0,0 +1,86 @@ +# 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 .sub_resource import SubResource + + +class VirtualNetworkPeering(SubResource): + """Peerings in a virtual network resource. + + :param id: Resource ID. + :type id: str + :param allow_virtual_network_access: Whether the VMs in the linked virtual + network space would be able to access all the VMs in local Virtual network + space. + :type allow_virtual_network_access: bool + :param allow_forwarded_traffic: Whether the forwarded traffic from the VMs + in the remote virtual network will be allowed/disallowed. + :type allow_forwarded_traffic: bool + :param allow_gateway_transit: If gateway links can be used in remote + virtual networking to link to this virtual network. + :type allow_gateway_transit: bool + :param use_remote_gateways: If remote gateways can be used on this virtual + network. If the flag is set to true, and allowGatewayTransit on remote + peering is also true, virtual network will use gateways of remote virtual + network for transit. Only one peering can have this flag set to true. This + flag cannot be set if virtual network already has a gateway. + :type use_remote_gateways: bool + :param remote_virtual_network: The reference of the remote virtual + network. The remote virtual network can be in the same or different region + (preview). See here to register for the preview and learn more + (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering). + :type remote_virtual_network: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param remote_address_space: The reference of the remote virtual network + address space. + :type remote_address_space: + ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param peering_state: The status of the virtual network peering. Possible + values are 'Initiated', 'Connected', and 'Disconnected'. Possible values + include: 'Initiated', 'Connected', 'Disconnected' + :type peering_state: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeeringState + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allow_virtual_network_access': {'key': 'properties.allowVirtualNetworkAccess', 'type': 'bool'}, + 'allow_forwarded_traffic': {'key': 'properties.allowForwardedTraffic', 'type': 'bool'}, + 'allow_gateway_transit': {'key': 'properties.allowGatewayTransit', 'type': 'bool'}, + 'use_remote_gateways': {'key': 'properties.useRemoteGateways', 'type': 'bool'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'remote_address_space': {'key': 'properties.remoteAddressSpace', 'type': 'AddressSpace'}, + 'peering_state': {'key': 'properties.peeringState', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkPeering, self).__init__(**kwargs) + self.allow_virtual_network_access = kwargs.get('allow_virtual_network_access', None) + self.allow_forwarded_traffic = kwargs.get('allow_forwarded_traffic', None) + self.allow_gateway_transit = kwargs.get('allow_gateway_transit', None) + self.use_remote_gateways = kwargs.get('use_remote_gateways', None) + self.remote_virtual_network = kwargs.get('remote_virtual_network', None) + self.remote_address_space = kwargs.get('remote_address_space', None) + self.peering_state = kwargs.get('peering_state', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering_paged.py new file mode 100644 index 000000000000..72dec7be52af --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkPeeringPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering_py3.py new file mode 100644 index 000000000000..43197bcbb95b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_peering_py3.py @@ -0,0 +1,86 @@ +# 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 .sub_resource_py3 import SubResource + + +class VirtualNetworkPeering(SubResource): + """Peerings in a virtual network resource. + + :param id: Resource ID. + :type id: str + :param allow_virtual_network_access: Whether the VMs in the linked virtual + network space would be able to access all the VMs in local Virtual network + space. + :type allow_virtual_network_access: bool + :param allow_forwarded_traffic: Whether the forwarded traffic from the VMs + in the remote virtual network will be allowed/disallowed. + :type allow_forwarded_traffic: bool + :param allow_gateway_transit: If gateway links can be used in remote + virtual networking to link to this virtual network. + :type allow_gateway_transit: bool + :param use_remote_gateways: If remote gateways can be used on this virtual + network. If the flag is set to true, and allowGatewayTransit on remote + peering is also true, virtual network will use gateways of remote virtual + network for transit. Only one peering can have this flag set to true. This + flag cannot be set if virtual network already has a gateway. + :type use_remote_gateways: bool + :param remote_virtual_network: The reference of the remote virtual + network. The remote virtual network can be in the same or different region + (preview). See here to register for the preview and learn more + (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering). + :type remote_virtual_network: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param remote_address_space: The reference of the remote virtual network + address space. + :type remote_address_space: + ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param peering_state: The status of the virtual network peering. Possible + values are 'Initiated', 'Connected', and 'Disconnected'. Possible values + include: 'Initiated', 'Connected', 'Disconnected' + :type peering_state: str or + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeeringState + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allow_virtual_network_access': {'key': 'properties.allowVirtualNetworkAccess', 'type': 'bool'}, + 'allow_forwarded_traffic': {'key': 'properties.allowForwardedTraffic', 'type': 'bool'}, + 'allow_gateway_transit': {'key': 'properties.allowGatewayTransit', 'type': 'bool'}, + 'use_remote_gateways': {'key': 'properties.useRemoteGateways', 'type': 'bool'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'remote_address_space': {'key': 'properties.remoteAddressSpace', 'type': 'AddressSpace'}, + 'peering_state': {'key': 'properties.peeringState', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, allow_virtual_network_access: bool=None, allow_forwarded_traffic: bool=None, allow_gateway_transit: bool=None, use_remote_gateways: bool=None, remote_virtual_network=None, remote_address_space=None, peering_state=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkPeering, self).__init__(id=id, **kwargs) + self.allow_virtual_network_access = allow_virtual_network_access + self.allow_forwarded_traffic = allow_forwarded_traffic + self.allow_gateway_transit = allow_gateway_transit + self.use_remote_gateways = use_remote_gateways + self.remote_virtual_network = remote_virtual_network + self.remote_address_space = remote_address_space + self.peering_state = peering_state + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_py3.py new file mode 100644 index 000000000000..dc622eee033b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_py3.py @@ -0,0 +1,98 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetwork(Resource): + """Virtual Network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param address_space: The AddressSpace that contains an array of IP + address ranges that can be used by subnets. + :type address_space: ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param dhcp_options: The dhcpOptions that contains an array of DNS servers + available to VMs deployed in the virtual network. + :type dhcp_options: ~azure.mgmt.network.v2018_07_01.models.DhcpOptions + :param subnets: A list of subnets in a Virtual Network. + :type subnets: list[~azure.mgmt.network.v2018_07_01.models.Subnet] + :param virtual_network_peerings: A list of peerings in a Virtual Network. + :type virtual_network_peerings: + list[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeering] + :param resource_guid: The resourceGuid property of the Virtual Network + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param enable_ddos_protection: Indicates if DDoS protection is enabled for + all the protected resources in the virtual network. It requires a DDoS + protection plan associated with the resource. Default value: False . + :type enable_ddos_protection: bool + :param enable_vm_protection: Indicates if VM protection is enabled for all + the subnets in the virtual network. Default value: False . + :type enable_vm_protection: bool + :param ddos_protection_plan: The DDoS protection plan associated with the + virtual network. + :type ddos_protection_plan: + ~azure.mgmt.network.v2018_07_01.models.SubResource + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'dhcp_options': {'key': 'properties.dhcpOptions', 'type': 'DhcpOptions'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'virtual_network_peerings': {'key': 'properties.virtualNetworkPeerings', 'type': '[VirtualNetworkPeering]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'enable_ddos_protection': {'key': 'properties.enableDdosProtection', 'type': 'bool'}, + 'enable_vm_protection': {'key': 'properties.enableVmProtection', 'type': 'bool'}, + 'ddos_protection_plan': {'key': 'properties.ddosProtectionPlan', 'type': 'SubResource'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, address_space=None, dhcp_options=None, subnets=None, virtual_network_peerings=None, resource_guid: str=None, provisioning_state: str=None, enable_ddos_protection: bool=False, enable_vm_protection: bool=False, ddos_protection_plan=None, etag: str=None, **kwargs) -> None: + super(VirtualNetwork, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.address_space = address_space + self.dhcp_options = dhcp_options + self.subnets = subnets + self.virtual_network_peerings = virtual_network_peerings + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.enable_ddos_protection = enable_ddos_protection + self.enable_vm_protection = enable_vm_protection + self.ddos_protection_plan = ddos_protection_plan + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage.py new file mode 100644 index 000000000000..484396223669 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkUsage(Model): + """Usage details for subnet. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar current_value: Indicates number of IPs used from the Subnet. + :vartype current_value: float + :ivar id: Subnet identifier. + :vartype id: str + :ivar limit: Indicates the size of the subnet. + :vartype limit: float + :ivar name: The name containing common and localized value for usage. + :vartype name: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkUsageName + :ivar unit: Usage units. Returns 'Count' + :vartype unit: str + """ + + _validation = { + 'current_value': {'readonly': True}, + 'id': {'readonly': True}, + 'limit': {'readonly': True}, + 'name': {'readonly': True}, + 'unit': {'readonly': True}, + } + + _attribute_map = { + 'current_value': {'key': 'currentValue', 'type': 'float'}, + 'id': {'key': 'id', 'type': 'str'}, + 'limit': {'key': 'limit', 'type': 'float'}, + 'name': {'key': 'name', 'type': 'VirtualNetworkUsageName'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkUsage, self).__init__(**kwargs) + self.current_value = None + self.id = None + self.limit = None + self.name = None + self.unit = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_name.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_name.py new file mode 100644 index 000000000000..607ccec3b964 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_name.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkUsageName(Model): + """Usage strings container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar localized_value: Localized subnet size and usage string. + :vartype localized_value: str + :ivar value: Subnet size and usage string. + :vartype value: str + """ + + _validation = { + 'localized_value': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkUsageName, self).__init__(**kwargs) + self.localized_value = None + self.value = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_name_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_name_py3.py new file mode 100644 index 000000000000..1651ebda7e77 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_name_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkUsageName(Model): + """Usage strings container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar localized_value: Localized subnet size and usage string. + :vartype localized_value: str + :ivar value: Subnet size and usage string. + :vartype value: str + """ + + _validation = { + 'localized_value': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualNetworkUsageName, self).__init__(**kwargs) + self.localized_value = None + self.value = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_paged.py new file mode 100644 index 000000000000..32ce82c03f91 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkUsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkUsage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkUsage]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkUsagePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_py3.py new file mode 100644 index 000000000000..cefd975a928d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_network_usage_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkUsage(Model): + """Usage details for subnet. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar current_value: Indicates number of IPs used from the Subnet. + :vartype current_value: float + :ivar id: Subnet identifier. + :vartype id: str + :ivar limit: Indicates the size of the subnet. + :vartype limit: float + :ivar name: The name containing common and localized value for usage. + :vartype name: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkUsageName + :ivar unit: Usage units. Returns 'Count' + :vartype unit: str + """ + + _validation = { + 'current_value': {'readonly': True}, + 'id': {'readonly': True}, + 'limit': {'readonly': True}, + 'name': {'readonly': True}, + 'unit': {'readonly': True}, + } + + _attribute_map = { + 'current_value': {'key': 'currentValue', 'type': 'float'}, + 'id': {'key': 'id', 'type': 'str'}, + 'limit': {'key': 'limit', 'type': 'float'}, + 'name': {'key': 'name', 'type': 'VirtualNetworkUsageName'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualNetworkUsage, self).__init__(**kwargs) + self.current_value = None + self.id = None + self.limit = None + self.name = None + self.unit = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan.py new file mode 100644 index 000000000000..96ca73544111 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan.py @@ -0,0 +1,75 @@ +# 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 .resource import Resource + + +class VirtualWAN(Resource): + """VirtualWAN Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param disable_vpn_encryption: Vpn encryption to be disabled or not. + :type disable_vpn_encryption: bool + :ivar virtual_hubs: List of VirtualHubs in the VirtualWAN. + :vartype virtual_hubs: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar vpn_sites: + :vartype vpn_sites: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_hubs': {'readonly': True}, + 'vpn_sites': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'disable_vpn_encryption': {'key': 'properties.disableVpnEncryption', 'type': 'bool'}, + 'virtual_hubs': {'key': 'properties.virtualHubs', 'type': '[SubResource]'}, + 'vpn_sites': {'key': 'properties.vpnSites', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualWAN, self).__init__(**kwargs) + self.disable_vpn_encryption = kwargs.get('disable_vpn_encryption', None) + self.virtual_hubs = None + self.vpn_sites = None + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan_paged.py new file mode 100644 index 000000000000..067119d5ca93 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualWANPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualWAN ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualWAN]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualWANPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan_py3.py new file mode 100644 index 000000000000..4d8842ad9c37 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/virtual_wan_py3.py @@ -0,0 +1,75 @@ +# 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 .resource_py3 import Resource + + +class VirtualWAN(Resource): + """VirtualWAN Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param disable_vpn_encryption: Vpn encryption to be disabled or not. + :type disable_vpn_encryption: bool + :ivar virtual_hubs: List of VirtualHubs in the VirtualWAN. + :vartype virtual_hubs: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :ivar vpn_sites: + :vartype vpn_sites: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_hubs': {'readonly': True}, + 'vpn_sites': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'disable_vpn_encryption': {'key': 'properties.disableVpnEncryption', 'type': 'bool'}, + 'virtual_hubs': {'key': 'properties.virtualHubs', 'type': '[SubResource]'}, + 'vpn_sites': {'key': 'properties.vpnSites', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, disable_vpn_encryption: bool=None, provisioning_state=None, **kwargs) -> None: + super(VirtualWAN, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.disable_vpn_encryption = disable_vpn_encryption + self.virtual_hubs = None + self.vpn_sites = None + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_configuration.py new file mode 100644 index 000000000000..fc3336db8163 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_configuration.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientConfiguration(Model): + """VpnClientConfiguration for P2S client. + + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param vpn_client_root_certificates: VpnClientRootCertificate for virtual + network gateway. + :type vpn_client_root_certificates: + list[~azure.mgmt.network.v2018_07_01.models.VpnClientRootCertificate] + :param vpn_client_revoked_certificates: VpnClientRevokedCertificate for + Virtual network gateway. + :type vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2018_07_01.models.VpnClientRevokedCertificate] + :param vpn_client_protocols: VpnClientProtocols for Virtual network + gateway. + :type vpn_client_protocols: list[str or + ~azure.mgmt.network.v2018_07_01.models.VpnClientProtocol] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for virtual + network gateway P2S client. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2018_07_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_secret: str + """ + + _attribute_map = { + 'vpn_client_address_pool': {'key': 'vpnClientAddressPool', 'type': 'AddressSpace'}, + 'vpn_client_root_certificates': {'key': 'vpnClientRootCertificates', 'type': '[VpnClientRootCertificate]'}, + 'vpn_client_revoked_certificates': {'key': 'vpnClientRevokedCertificates', 'type': '[VpnClientRevokedCertificate]'}, + 'vpn_client_protocols': {'key': 'vpnClientProtocols', 'type': '[str]'}, + 'vpn_client_ipsec_policies': {'key': 'vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'radiusServerSecret', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientConfiguration, self).__init__(**kwargs) + self.vpn_client_address_pool = kwargs.get('vpn_client_address_pool', None) + self.vpn_client_root_certificates = kwargs.get('vpn_client_root_certificates', None) + self.vpn_client_revoked_certificates = kwargs.get('vpn_client_revoked_certificates', None) + self.vpn_client_protocols = kwargs.get('vpn_client_protocols', None) + self.vpn_client_ipsec_policies = kwargs.get('vpn_client_ipsec_policies', None) + self.radius_server_address = kwargs.get('radius_server_address', None) + self.radius_server_secret = kwargs.get('radius_server_secret', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_configuration_py3.py new file mode 100644 index 000000000000..bd6e61ee4d55 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_configuration_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientConfiguration(Model): + """VpnClientConfiguration for P2S client. + + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param vpn_client_root_certificates: VpnClientRootCertificate for virtual + network gateway. + :type vpn_client_root_certificates: + list[~azure.mgmt.network.v2018_07_01.models.VpnClientRootCertificate] + :param vpn_client_revoked_certificates: VpnClientRevokedCertificate for + Virtual network gateway. + :type vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2018_07_01.models.VpnClientRevokedCertificate] + :param vpn_client_protocols: VpnClientProtocols for Virtual network + gateway. + :type vpn_client_protocols: list[str or + ~azure.mgmt.network.v2018_07_01.models.VpnClientProtocol] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for virtual + network gateway P2S client. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2018_07_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_secret: str + """ + + _attribute_map = { + 'vpn_client_address_pool': {'key': 'vpnClientAddressPool', 'type': 'AddressSpace'}, + 'vpn_client_root_certificates': {'key': 'vpnClientRootCertificates', 'type': '[VpnClientRootCertificate]'}, + 'vpn_client_revoked_certificates': {'key': 'vpnClientRevokedCertificates', 'type': '[VpnClientRevokedCertificate]'}, + 'vpn_client_protocols': {'key': 'vpnClientProtocols', 'type': '[str]'}, + 'vpn_client_ipsec_policies': {'key': 'vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'radiusServerSecret', 'type': 'str'}, + } + + def __init__(self, *, vpn_client_address_pool=None, vpn_client_root_certificates=None, vpn_client_revoked_certificates=None, vpn_client_protocols=None, vpn_client_ipsec_policies=None, radius_server_address: str=None, radius_server_secret: str=None, **kwargs) -> None: + super(VpnClientConfiguration, self).__init__(**kwargs) + self.vpn_client_address_pool = vpn_client_address_pool + self.vpn_client_root_certificates = vpn_client_root_certificates + self.vpn_client_revoked_certificates = vpn_client_revoked_certificates + self.vpn_client_protocols = vpn_client_protocols + self.vpn_client_ipsec_policies = vpn_client_ipsec_policies + self.radius_server_address = radius_server_address + self.radius_server_secret = radius_server_secret diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_ipsec_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_ipsec_parameters.py new file mode 100644 index 000000000000..cf90885714d9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_ipsec_parameters.py @@ -0,0 +1,87 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientIPsecParameters(Model): + """An IPSec parameters for a virtual network gateway P2S connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2018_07_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2018_07_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2018_07_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2018_07_01.models.IkeIntegrity + :param dh_group: Required. The DH Groups used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2018_07_01.models.DhGroup + :param pfs_group: Required. The Pfs Groups used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2018_07_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientIPsecParameters, self).__init__(**kwargs) + self.sa_life_time_seconds = kwargs.get('sa_life_time_seconds', None) + self.sa_data_size_kilobytes = kwargs.get('sa_data_size_kilobytes', None) + self.ipsec_encryption = kwargs.get('ipsec_encryption', None) + self.ipsec_integrity = kwargs.get('ipsec_integrity', None) + self.ike_encryption = kwargs.get('ike_encryption', None) + self.ike_integrity = kwargs.get('ike_integrity', None) + self.dh_group = kwargs.get('dh_group', None) + self.pfs_group = kwargs.get('pfs_group', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_ipsec_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_ipsec_parameters_py3.py new file mode 100644 index 000000000000..eeca20056c86 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_ipsec_parameters_py3.py @@ -0,0 +1,87 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientIPsecParameters(Model): + """An IPSec parameters for a virtual network gateway P2S connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2018_07_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2018_07_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2018_07_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2018_07_01.models.IkeIntegrity + :param dh_group: Required. The DH Groups used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2018_07_01.models.DhGroup + :param pfs_group: Required. The Pfs Groups used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2018_07_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, *, sa_life_time_seconds: int, sa_data_size_kilobytes: int, ipsec_encryption, ipsec_integrity, ike_encryption, ike_integrity, dh_group, pfs_group, **kwargs) -> None: + super(VpnClientIPsecParameters, self).__init__(**kwargs) + self.sa_life_time_seconds = sa_life_time_seconds + self.sa_data_size_kilobytes = sa_data_size_kilobytes + self.ipsec_encryption = ipsec_encryption + self.ipsec_integrity = ipsec_integrity + self.ike_encryption = ike_encryption + self.ike_integrity = ike_integrity + self.dh_group = dh_group + self.pfs_group = pfs_group diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_parameters.py new file mode 100644 index 000000000000..05f5507bb22b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_parameters.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientParameters(Model): + """Vpn Client Parameters for package generation. + + :param processor_architecture: VPN client Processor Architecture. Possible + values are: 'AMD64' and 'X86'. Possible values include: 'Amd64', 'X86' + :type processor_architecture: str or + ~azure.mgmt.network.v2018_07_01.models.ProcessorArchitecture + :param authentication_method: VPN client Authentication Method. Possible + values are: 'EAPTLS' and 'EAPMSCHAPv2'. Possible values include: 'EAPTLS', + 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2018_07_01.models.AuthenticationMethod + :param radius_server_auth_certificate: The public certificate data for the + radius server authentication certificate as a Base-64 encoded string. + Required only if external radius authentication has been configured with + EAPTLS authentication. + :type radius_server_auth_certificate: str + :param client_root_certificates: A list of client root certificates public + certificate data encoded as Base-64 strings. Optional parameter for + external radius based authentication with EAPTLS. + :type client_root_certificates: list[str] + """ + + _attribute_map = { + 'processor_architecture': {'key': 'processorArchitecture', 'type': 'str'}, + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + 'radius_server_auth_certificate': {'key': 'radiusServerAuthCertificate', 'type': 'str'}, + 'client_root_certificates': {'key': 'clientRootCertificates', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VpnClientParameters, self).__init__(**kwargs) + self.processor_architecture = kwargs.get('processor_architecture', None) + self.authentication_method = kwargs.get('authentication_method', None) + self.radius_server_auth_certificate = kwargs.get('radius_server_auth_certificate', None) + self.client_root_certificates = kwargs.get('client_root_certificates', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_parameters_py3.py new file mode 100644 index 000000000000..751c039f8c1c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_parameters_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientParameters(Model): + """Vpn Client Parameters for package generation. + + :param processor_architecture: VPN client Processor Architecture. Possible + values are: 'AMD64' and 'X86'. Possible values include: 'Amd64', 'X86' + :type processor_architecture: str or + ~azure.mgmt.network.v2018_07_01.models.ProcessorArchitecture + :param authentication_method: VPN client Authentication Method. Possible + values are: 'EAPTLS' and 'EAPMSCHAPv2'. Possible values include: 'EAPTLS', + 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2018_07_01.models.AuthenticationMethod + :param radius_server_auth_certificate: The public certificate data for the + radius server authentication certificate as a Base-64 encoded string. + Required only if external radius authentication has been configured with + EAPTLS authentication. + :type radius_server_auth_certificate: str + :param client_root_certificates: A list of client root certificates public + certificate data encoded as Base-64 strings. Optional parameter for + external radius based authentication with EAPTLS. + :type client_root_certificates: list[str] + """ + + _attribute_map = { + 'processor_architecture': {'key': 'processorArchitecture', 'type': 'str'}, + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + 'radius_server_auth_certificate': {'key': 'radiusServerAuthCertificate', 'type': 'str'}, + 'client_root_certificates': {'key': 'clientRootCertificates', 'type': '[str]'}, + } + + def __init__(self, *, processor_architecture=None, authentication_method=None, radius_server_auth_certificate: str=None, client_root_certificates=None, **kwargs) -> None: + super(VpnClientParameters, self).__init__(**kwargs) + self.processor_architecture = processor_architecture + self.authentication_method = authentication_method + self.radius_server_auth_certificate = radius_server_auth_certificate + self.client_root_certificates = client_root_certificates diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_revoked_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_revoked_certificate.py new file mode 100644 index 000000000000..1fa6f6a1ef23 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_revoked_certificate.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class VpnClientRevokedCertificate(SubResource): + """VPN client revoked certificate of virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the VPN client revoked + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientRevokedCertificate, self).__init__(**kwargs) + self.thumbprint = kwargs.get('thumbprint', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_revoked_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_revoked_certificate_py3.py new file mode 100644 index 000000000000..e540c5ff2068 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_revoked_certificate_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class VpnClientRevokedCertificate(SubResource): + """VPN client revoked certificate of virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the VPN client revoked + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, thumbprint: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(VpnClientRevokedCertificate, self).__init__(id=id, **kwargs) + self.thumbprint = thumbprint + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_root_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_root_certificate.py new file mode 100644 index 000000000000..48c7033d42ec --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_root_certificate.py @@ -0,0 +1,57 @@ +# 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 .sub_resource import SubResource + + +class VpnClientRootCertificate(SubResource): + """VPN client root certificate of virtual network gateway. + + 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 id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the VPN client root + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientRootCertificate, self).__init__(**kwargs) + self.public_cert_data = kwargs.get('public_cert_data', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_root_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_root_certificate_py3.py new file mode 100644 index 000000000000..6567985eee0b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_client_root_certificate_py3.py @@ -0,0 +1,57 @@ +# 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 .sub_resource_py3 import SubResource + + +class VpnClientRootCertificate(SubResource): + """VPN client root certificate of virtual network gateway. + + 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 id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the VPN client root + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, public_cert_data: str, id: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(VpnClientRootCertificate, self).__init__(id=id, **kwargs) + self.public_cert_data = public_cert_data + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection.py new file mode 100644 index 000000000000..d7d71957ba45 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection.py @@ -0,0 +1,102 @@ +# 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 .resource import Resource + + +class VpnConnection(Resource): + """VpnConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param remote_vpn_site: Id of the connected vpn site. + :type remote_vpn_site: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param routing_weight: routing weight for vpn connection. + :type routing_weight: int + :param connection_status: The connection status. Possible values include: + 'Unknown', 'Connecting', 'Connected', 'NotConnected' + :type connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.VpnConnectionStatus + :ivar ingress_bytes_transferred: Ingress bytes transferred. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: Egress bytes transferred. + :vartype egress_bytes_transferred: long + :ivar connection_bandwidth_in_mbps: Expected bandwidth in MBPS. + :vartype connection_bandwidth_in_mbps: int + :param shared_key: SharedKey for the vpn connection. + :type shared_key: str + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_07_01.models.IpsecPolicy] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'connection_bandwidth_in_mbps': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'remote_vpn_site': {'key': 'properties.remoteVpnSite', 'type': 'SubResource'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'connection_bandwidth_in_mbps': {'key': 'properties.connectionBandwidthInMbps', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnConnection, self).__init__(**kwargs) + self.remote_vpn_site = kwargs.get('remote_vpn_site', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.connection_status = kwargs.get('connection_status', None) + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.connection_bandwidth_in_mbps = None + self.shared_key = kwargs.get('shared_key', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection_paged.py new file mode 100644 index 000000000000..aced1a653aeb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VpnConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnConnectionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection_py3.py new file mode 100644 index 000000000000..eed884991fe4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_connection_py3.py @@ -0,0 +1,102 @@ +# 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 .resource_py3 import Resource + + +class VpnConnection(Resource): + """VpnConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param remote_vpn_site: Id of the connected vpn site. + :type remote_vpn_site: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param routing_weight: routing weight for vpn connection. + :type routing_weight: int + :param connection_status: The connection status. Possible values include: + 'Unknown', 'Connecting', 'Connected', 'NotConnected' + :type connection_status: str or + ~azure.mgmt.network.v2018_07_01.models.VpnConnectionStatus + :ivar ingress_bytes_transferred: Ingress bytes transferred. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: Egress bytes transferred. + :vartype egress_bytes_transferred: long + :ivar connection_bandwidth_in_mbps: Expected bandwidth in MBPS. + :vartype connection_bandwidth_in_mbps: int + :param shared_key: SharedKey for the vpn connection. + :type shared_key: str + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_07_01.models.IpsecPolicy] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'connection_bandwidth_in_mbps': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'remote_vpn_site': {'key': 'properties.remoteVpnSite', 'type': 'SubResource'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'connection_bandwidth_in_mbps': {'key': 'properties.connectionBandwidthInMbps', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, remote_vpn_site=None, routing_weight: int=None, connection_status=None, shared_key: str=None, enable_bgp: bool=None, ipsec_policies=None, provisioning_state=None, **kwargs) -> None: + super(VpnConnection, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.remote_vpn_site = remote_vpn_site + self.routing_weight = routing_weight + self.connection_status = connection_status + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.connection_bandwidth_in_mbps = None + self.shared_key = shared_key + self.enable_bgp = enable_bgp + self.ipsec_policies = ipsec_policies + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_device_script_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_device_script_parameters.py new file mode 100644 index 000000000000..e4f8f12701b7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_device_script_parameters.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnDeviceScriptParameters(Model): + """Vpn device configuration script generation parameters. + + :param vendor: The vendor for the vpn device. + :type vendor: str + :param device_family: The device family for the vpn device. + :type device_family: str + :param firmware_version: The firmware version for the vpn device. + :type firmware_version: str + """ + + _attribute_map = { + 'vendor': {'key': 'vendor', 'type': 'str'}, + 'device_family': {'key': 'deviceFamily', 'type': 'str'}, + 'firmware_version': {'key': 'firmwareVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnDeviceScriptParameters, self).__init__(**kwargs) + self.vendor = kwargs.get('vendor', None) + self.device_family = kwargs.get('device_family', None) + self.firmware_version = kwargs.get('firmware_version', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_device_script_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_device_script_parameters_py3.py new file mode 100644 index 000000000000..e5520ffb5a18 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_device_script_parameters_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnDeviceScriptParameters(Model): + """Vpn device configuration script generation parameters. + + :param vendor: The vendor for the vpn device. + :type vendor: str + :param device_family: The device family for the vpn device. + :type device_family: str + :param firmware_version: The firmware version for the vpn device. + :type firmware_version: str + """ + + _attribute_map = { + 'vendor': {'key': 'vendor', 'type': 'str'}, + 'device_family': {'key': 'deviceFamily', 'type': 'str'}, + 'firmware_version': {'key': 'firmwareVersion', 'type': 'str'}, + } + + def __init__(self, *, vendor: str=None, device_family: str=None, firmware_version: str=None, **kwargs) -> None: + super(VpnDeviceScriptParameters, self).__init__(**kwargs) + self.vendor = vendor + self.device_family = device_family + self.firmware_version = firmware_version diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway.py new file mode 100644 index 000000000000..754bb40fd05b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway.py @@ -0,0 +1,76 @@ +# 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 .resource import Resource + + +class VpnGateway(Resource): + """VpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs + :type virtual_hub: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param connections: list of all vpn connections to the gateway. + :type connections: + list[~azure.mgmt.network.v2018_07_01.models.VpnConnection] + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_07_01.models.BgpSettings + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param policies: The policies applied to this vpn gateway. + :type policies: ~azure.mgmt.network.v2018_07_01.models.Policies + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'connections': {'key': 'properties.connections', 'type': '[VpnConnection]'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'policies': {'key': 'properties.policies', 'type': 'Policies'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnGateway, self).__init__(**kwargs) + self.virtual_hub = kwargs.get('virtual_hub', None) + self.connections = kwargs.get('connections', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.policies = kwargs.get('policies', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway_paged.py new file mode 100644 index 000000000000..fe2328c1ea4e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VpnGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway_py3.py new file mode 100644 index 000000000000..59b908187bf9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_gateway_py3.py @@ -0,0 +1,76 @@ +# 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 .resource_py3 import Resource + + +class VpnGateway(Resource): + """VpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs + :type virtual_hub: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param connections: list of all vpn connections to the gateway. + :type connections: + list[~azure.mgmt.network.v2018_07_01.models.VpnConnection] + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_07_01.models.BgpSettings + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :param policies: The policies applied to this vpn gateway. + :type policies: ~azure.mgmt.network.v2018_07_01.models.Policies + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'connections': {'key': 'properties.connections', 'type': '[VpnConnection]'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'policies': {'key': 'properties.policies', 'type': 'Policies'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_hub=None, connections=None, bgp_settings=None, provisioning_state=None, policies=None, **kwargs) -> None: + super(VpnGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_hub = virtual_hub + self.connections = connections + self.bgp_settings = bgp_settings + self.provisioning_state = provisioning_state + self.policies = policies + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site.py new file mode 100644 index 000000000000..d32ccdbba21c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site.py @@ -0,0 +1,85 @@ +# 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 .resource import Resource + + +class VpnSite(Resource): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the vpnSite belongs + :type virtual_wan: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param device_properties: The device properties + :type device_properties: + ~azure.mgmt.network.v2018_07_01.models.DeviceProperties + :param ip_address: The ip-address for the vpn-site. + :type ip_address: str + :param site_key: The key for vpn-site that can be used for connections. + :type site_key: str + :param address_space: The AddressSpace that contains an array of IP + address ranges. + :type address_space: ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param bgp_properties: The set of bgp properties. + :type bgp_properties: ~azure.mgmt.network.v2018_07_01.models.BgpSettings + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWAN', 'type': 'SubResource'}, + 'device_properties': {'key': 'properties.deviceProperties', 'type': 'DeviceProperties'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'site_key': {'key': 'properties.siteKey', 'type': 'str'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'bgp_properties': {'key': 'properties.bgpProperties', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnSite, self).__init__(**kwargs) + self.virtual_wan = kwargs.get('virtual_wan', None) + self.device_properties = kwargs.get('device_properties', None) + self.ip_address = kwargs.get('ip_address', None) + self.site_key = kwargs.get('site_key', None) + self.address_space = kwargs.get('address_space', None) + self.bgp_properties = kwargs.get('bgp_properties', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_id.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_id.py new file mode 100644 index 000000000000..f033d813f347 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_id.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnSiteId(Model): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vpn_site: The resource-uri of the vpn-site for which config is to be + fetched. + :vartype vpn_site: str + """ + + _validation = { + 'vpn_site': {'readonly': True}, + } + + _attribute_map = { + 'vpn_site': {'key': 'vpnSite', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnSiteId, self).__init__(**kwargs) + self.vpn_site = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_id_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_id_py3.py new file mode 100644 index 000000000000..3a12683973e3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_id_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnSiteId(Model): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vpn_site: The resource-uri of the vpn-site for which config is to be + fetched. + :vartype vpn_site: str + """ + + _validation = { + 'vpn_site': {'readonly': True}, + } + + _attribute_map = { + 'vpn_site': {'key': 'vpnSite', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VpnSiteId, self).__init__(**kwargs) + self.vpn_site = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_paged.py new file mode 100644 index 000000000000..a917c140af26 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VpnSitePaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnSite ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnSite]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnSitePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_py3.py new file mode 100644 index 000000000000..9d8d94e2cedb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/models/vpn_site_py3.py @@ -0,0 +1,85 @@ +# 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 .resource_py3 import Resource + + +class VpnSite(Resource): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the vpnSite belongs + :type virtual_wan: ~azure.mgmt.network.v2018_07_01.models.SubResource + :param device_properties: The device properties + :type device_properties: + ~azure.mgmt.network.v2018_07_01.models.DeviceProperties + :param ip_address: The ip-address for the vpn-site. + :type ip_address: str + :param site_key: The key for vpn-site that can be used for connections. + :type site_key: str + :param address_space: The AddressSpace that contains an array of IP + address ranges. + :type address_space: ~azure.mgmt.network.v2018_07_01.models.AddressSpace + :param bgp_properties: The set of bgp properties. + :type bgp_properties: ~azure.mgmt.network.v2018_07_01.models.BgpSettings + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_07_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWAN', 'type': 'SubResource'}, + 'device_properties': {'key': 'properties.deviceProperties', 'type': 'DeviceProperties'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'site_key': {'key': 'properties.siteKey', 'type': 'str'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'bgp_properties': {'key': 'properties.bgpProperties', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_wan=None, device_properties=None, ip_address: str=None, site_key: str=None, address_space=None, bgp_properties=None, provisioning_state=None, **kwargs) -> None: + super(VpnSite, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_wan = virtual_wan + self.device_properties = device_properties + self.ip_address = ip_address + self.site_key = site_key + self.address_space = address_space + self.bgp_properties = bgp_properties + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/network_management_client.py new file mode 100644 index 000000000000..389b4de2b145 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/network_management_client.py @@ -0,0 +1,412 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling +import uuid +from .operations.azure_firewalls_operations import AzureFirewallsOperations +from .operations.application_gateways_operations import ApplicationGatewaysOperations +from .operations.application_security_groups_operations import ApplicationSecurityGroupsOperations +from .operations.ddos_protection_plans_operations import DdosProtectionPlansOperations +from .operations.available_endpoint_services_operations import AvailableEndpointServicesOperations +from .operations.express_route_circuit_authorizations_operations import ExpressRouteCircuitAuthorizationsOperations +from .operations.express_route_circuit_peerings_operations import ExpressRouteCircuitPeeringsOperations +from .operations.express_route_circuit_connections_operations import ExpressRouteCircuitConnectionsOperations +from .operations.express_route_circuits_operations import ExpressRouteCircuitsOperations +from .operations.express_route_service_providers_operations import ExpressRouteServiceProvidersOperations +from .operations.express_route_cross_connections_operations import ExpressRouteCrossConnectionsOperations +from .operations.express_route_cross_connection_peerings_operations import ExpressRouteCrossConnectionPeeringsOperations +from .operations.load_balancers_operations import LoadBalancersOperations +from .operations.load_balancer_backend_address_pools_operations import LoadBalancerBackendAddressPoolsOperations +from .operations.load_balancer_frontend_ip_configurations_operations import LoadBalancerFrontendIPConfigurationsOperations +from .operations.inbound_nat_rules_operations import InboundNatRulesOperations +from .operations.load_balancer_load_balancing_rules_operations import LoadBalancerLoadBalancingRulesOperations +from .operations.load_balancer_network_interfaces_operations import LoadBalancerNetworkInterfacesOperations +from .operations.load_balancer_probes_operations import LoadBalancerProbesOperations +from .operations.network_interfaces_operations import NetworkInterfacesOperations +from .operations.network_interface_ip_configurations_operations import NetworkInterfaceIPConfigurationsOperations +from .operations.network_interface_load_balancers_operations import NetworkInterfaceLoadBalancersOperations +from .operations.network_security_groups_operations import NetworkSecurityGroupsOperations +from .operations.security_rules_operations import SecurityRulesOperations +from .operations.default_security_rules_operations import DefaultSecurityRulesOperations +from .operations.network_watchers_operations import NetworkWatchersOperations +from .operations.packet_captures_operations import PacketCapturesOperations +from .operations.connection_monitors_operations import ConnectionMonitorsOperations +from .operations.operations import Operations +from .operations.public_ip_addresses_operations import PublicIPAddressesOperations +from .operations.public_ip_prefixes_operations import PublicIPPrefixesOperations +from .operations.route_filters_operations import RouteFiltersOperations +from .operations.route_filter_rules_operations import RouteFilterRulesOperations +from .operations.route_tables_operations import RouteTablesOperations +from .operations.routes_operations import RoutesOperations +from .operations.bgp_service_communities_operations import BgpServiceCommunitiesOperations +from .operations.usages_operations import UsagesOperations +from .operations.virtual_networks_operations import VirtualNetworksOperations +from .operations.subnets_operations import SubnetsOperations +from .operations.virtual_network_peerings_operations import VirtualNetworkPeeringsOperations +from .operations.virtual_network_gateways_operations import VirtualNetworkGatewaysOperations +from .operations.virtual_network_gateway_connections_operations import VirtualNetworkGatewayConnectionsOperations +from .operations.local_network_gateways_operations import LocalNetworkGatewaysOperations +from .operations.virtual_wa_ns_operations import VirtualWANsOperations +from .operations.vpn_sites_operations import VpnSitesOperations +from .operations.vpn_sites_configuration_operations import VpnSitesConfigurationOperations +from .operations.virtual_hubs_operations import VirtualHubsOperations +from .operations.hub_virtual_network_connections_operations import HubVirtualNetworkConnectionsOperations +from .operations.vpn_gateways_operations import VpnGatewaysOperations +from .operations.vpn_connections_operations import VpnConnectionsOperations +from .operations.service_endpoint_policies_operations import ServiceEndpointPoliciesOperations +from .operations.service_endpoint_policy_definitions_operations import ServiceEndpointPolicyDefinitionsOperations +from . import models + + +class NetworkManagementClientConfiguration(AzureConfiguration): + """Configuration for NetworkManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription credentials which uniquely + identify the Microsoft Azure subscription. The subscription ID forms part + of the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(NetworkManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-network/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class NetworkManagementClient(SDKClient): + """Network Client + + :ivar config: Configuration for client. + :vartype config: NetworkManagementClientConfiguration + + :ivar azure_firewalls: AzureFirewalls operations + :vartype azure_firewalls: azure.mgmt.network.v2018_07_01.operations.AzureFirewallsOperations + :ivar application_gateways: ApplicationGateways operations + :vartype application_gateways: azure.mgmt.network.v2018_07_01.operations.ApplicationGatewaysOperations + :ivar application_security_groups: ApplicationSecurityGroups operations + :vartype application_security_groups: azure.mgmt.network.v2018_07_01.operations.ApplicationSecurityGroupsOperations + :ivar ddos_protection_plans: DdosProtectionPlans operations + :vartype ddos_protection_plans: azure.mgmt.network.v2018_07_01.operations.DdosProtectionPlansOperations + :ivar available_endpoint_services: AvailableEndpointServices operations + :vartype available_endpoint_services: azure.mgmt.network.v2018_07_01.operations.AvailableEndpointServicesOperations + :ivar express_route_circuit_authorizations: ExpressRouteCircuitAuthorizations operations + :vartype express_route_circuit_authorizations: azure.mgmt.network.v2018_07_01.operations.ExpressRouteCircuitAuthorizationsOperations + :ivar express_route_circuit_peerings: ExpressRouteCircuitPeerings operations + :vartype express_route_circuit_peerings: azure.mgmt.network.v2018_07_01.operations.ExpressRouteCircuitPeeringsOperations + :ivar express_route_circuit_connections: ExpressRouteCircuitConnections operations + :vartype express_route_circuit_connections: azure.mgmt.network.v2018_07_01.operations.ExpressRouteCircuitConnectionsOperations + :ivar express_route_circuits: ExpressRouteCircuits operations + :vartype express_route_circuits: azure.mgmt.network.v2018_07_01.operations.ExpressRouteCircuitsOperations + :ivar express_route_service_providers: ExpressRouteServiceProviders operations + :vartype express_route_service_providers: azure.mgmt.network.v2018_07_01.operations.ExpressRouteServiceProvidersOperations + :ivar express_route_cross_connections: ExpressRouteCrossConnections operations + :vartype express_route_cross_connections: azure.mgmt.network.v2018_07_01.operations.ExpressRouteCrossConnectionsOperations + :ivar express_route_cross_connection_peerings: ExpressRouteCrossConnectionPeerings operations + :vartype express_route_cross_connection_peerings: azure.mgmt.network.v2018_07_01.operations.ExpressRouteCrossConnectionPeeringsOperations + :ivar load_balancers: LoadBalancers operations + :vartype load_balancers: azure.mgmt.network.v2018_07_01.operations.LoadBalancersOperations + :ivar load_balancer_backend_address_pools: LoadBalancerBackendAddressPools operations + :vartype load_balancer_backend_address_pools: azure.mgmt.network.v2018_07_01.operations.LoadBalancerBackendAddressPoolsOperations + :ivar load_balancer_frontend_ip_configurations: LoadBalancerFrontendIPConfigurations operations + :vartype load_balancer_frontend_ip_configurations: azure.mgmt.network.v2018_07_01.operations.LoadBalancerFrontendIPConfigurationsOperations + :ivar inbound_nat_rules: InboundNatRules operations + :vartype inbound_nat_rules: azure.mgmt.network.v2018_07_01.operations.InboundNatRulesOperations + :ivar load_balancer_load_balancing_rules: LoadBalancerLoadBalancingRules operations + :vartype load_balancer_load_balancing_rules: azure.mgmt.network.v2018_07_01.operations.LoadBalancerLoadBalancingRulesOperations + :ivar load_balancer_network_interfaces: LoadBalancerNetworkInterfaces operations + :vartype load_balancer_network_interfaces: azure.mgmt.network.v2018_07_01.operations.LoadBalancerNetworkInterfacesOperations + :ivar load_balancer_probes: LoadBalancerProbes operations + :vartype load_balancer_probes: azure.mgmt.network.v2018_07_01.operations.LoadBalancerProbesOperations + :ivar network_interfaces: NetworkInterfaces operations + :vartype network_interfaces: azure.mgmt.network.v2018_07_01.operations.NetworkInterfacesOperations + :ivar network_interface_ip_configurations: NetworkInterfaceIPConfigurations operations + :vartype network_interface_ip_configurations: azure.mgmt.network.v2018_07_01.operations.NetworkInterfaceIPConfigurationsOperations + :ivar network_interface_load_balancers: NetworkInterfaceLoadBalancers operations + :vartype network_interface_load_balancers: azure.mgmt.network.v2018_07_01.operations.NetworkInterfaceLoadBalancersOperations + :ivar network_security_groups: NetworkSecurityGroups operations + :vartype network_security_groups: azure.mgmt.network.v2018_07_01.operations.NetworkSecurityGroupsOperations + :ivar security_rules: SecurityRules operations + :vartype security_rules: azure.mgmt.network.v2018_07_01.operations.SecurityRulesOperations + :ivar default_security_rules: DefaultSecurityRules operations + :vartype default_security_rules: azure.mgmt.network.v2018_07_01.operations.DefaultSecurityRulesOperations + :ivar network_watchers: NetworkWatchers operations + :vartype network_watchers: azure.mgmt.network.v2018_07_01.operations.NetworkWatchersOperations + :ivar packet_captures: PacketCaptures operations + :vartype packet_captures: azure.mgmt.network.v2018_07_01.operations.PacketCapturesOperations + :ivar connection_monitors: ConnectionMonitors operations + :vartype connection_monitors: azure.mgmt.network.v2018_07_01.operations.ConnectionMonitorsOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.network.v2018_07_01.operations.Operations + :ivar public_ip_addresses: PublicIPAddresses operations + :vartype public_ip_addresses: azure.mgmt.network.v2018_07_01.operations.PublicIPAddressesOperations + :ivar public_ip_prefixes: PublicIPPrefixes operations + :vartype public_ip_prefixes: azure.mgmt.network.v2018_07_01.operations.PublicIPPrefixesOperations + :ivar route_filters: RouteFilters operations + :vartype route_filters: azure.mgmt.network.v2018_07_01.operations.RouteFiltersOperations + :ivar route_filter_rules: RouteFilterRules operations + :vartype route_filter_rules: azure.mgmt.network.v2018_07_01.operations.RouteFilterRulesOperations + :ivar route_tables: RouteTables operations + :vartype route_tables: azure.mgmt.network.v2018_07_01.operations.RouteTablesOperations + :ivar routes: Routes operations + :vartype routes: azure.mgmt.network.v2018_07_01.operations.RoutesOperations + :ivar bgp_service_communities: BgpServiceCommunities operations + :vartype bgp_service_communities: azure.mgmt.network.v2018_07_01.operations.BgpServiceCommunitiesOperations + :ivar usages: Usages operations + :vartype usages: azure.mgmt.network.v2018_07_01.operations.UsagesOperations + :ivar virtual_networks: VirtualNetworks operations + :vartype virtual_networks: azure.mgmt.network.v2018_07_01.operations.VirtualNetworksOperations + :ivar subnets: Subnets operations + :vartype subnets: azure.mgmt.network.v2018_07_01.operations.SubnetsOperations + :ivar virtual_network_peerings: VirtualNetworkPeerings operations + :vartype virtual_network_peerings: azure.mgmt.network.v2018_07_01.operations.VirtualNetworkPeeringsOperations + :ivar virtual_network_gateways: VirtualNetworkGateways operations + :vartype virtual_network_gateways: azure.mgmt.network.v2018_07_01.operations.VirtualNetworkGatewaysOperations + :ivar virtual_network_gateway_connections: VirtualNetworkGatewayConnections operations + :vartype virtual_network_gateway_connections: azure.mgmt.network.v2018_07_01.operations.VirtualNetworkGatewayConnectionsOperations + :ivar local_network_gateways: LocalNetworkGateways operations + :vartype local_network_gateways: azure.mgmt.network.v2018_07_01.operations.LocalNetworkGatewaysOperations + :ivar virtual_wa_ns: VirtualWANs operations + :vartype virtual_wa_ns: azure.mgmt.network.v2018_07_01.operations.VirtualWANsOperations + :ivar vpn_sites: VpnSites operations + :vartype vpn_sites: azure.mgmt.network.v2018_07_01.operations.VpnSitesOperations + :ivar vpn_sites_configuration: VpnSitesConfiguration operations + :vartype vpn_sites_configuration: azure.mgmt.network.v2018_07_01.operations.VpnSitesConfigurationOperations + :ivar virtual_hubs: VirtualHubs operations + :vartype virtual_hubs: azure.mgmt.network.v2018_07_01.operations.VirtualHubsOperations + :ivar hub_virtual_network_connections: HubVirtualNetworkConnections operations + :vartype hub_virtual_network_connections: azure.mgmt.network.v2018_07_01.operations.HubVirtualNetworkConnectionsOperations + :ivar vpn_gateways: VpnGateways operations + :vartype vpn_gateways: azure.mgmt.network.v2018_07_01.operations.VpnGatewaysOperations + :ivar vpn_connections: VpnConnections operations + :vartype vpn_connections: azure.mgmt.network.v2018_07_01.operations.VpnConnectionsOperations + :ivar service_endpoint_policies: ServiceEndpointPolicies operations + :vartype service_endpoint_policies: azure.mgmt.network.v2018_07_01.operations.ServiceEndpointPoliciesOperations + :ivar service_endpoint_policy_definitions: ServiceEndpointPolicyDefinitions operations + :vartype service_endpoint_policy_definitions: azure.mgmt.network.v2018_07_01.operations.ServiceEndpointPolicyDefinitionsOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription credentials which uniquely + identify the Microsoft Azure subscription. The subscription ID forms part + of the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = NetworkManagementClientConfiguration(credentials, subscription_id, base_url) + super(NetworkManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.azure_firewalls = AzureFirewallsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.application_gateways = ApplicationGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.application_security_groups = ApplicationSecurityGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.ddos_protection_plans = DdosProtectionPlansOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_endpoint_services = AvailableEndpointServicesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_authorizations = ExpressRouteCircuitAuthorizationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_peerings = ExpressRouteCircuitPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_connections = ExpressRouteCircuitConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuits = ExpressRouteCircuitsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_service_providers = ExpressRouteServiceProvidersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_cross_connections = ExpressRouteCrossConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_cross_connection_peerings = ExpressRouteCrossConnectionPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancers = LoadBalancersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_backend_address_pools = LoadBalancerBackendAddressPoolsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_frontend_ip_configurations = LoadBalancerFrontendIPConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.inbound_nat_rules = InboundNatRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_load_balancing_rules = LoadBalancerLoadBalancingRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_network_interfaces = LoadBalancerNetworkInterfacesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_probes = LoadBalancerProbesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interfaces = NetworkInterfacesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interface_ip_configurations = NetworkInterfaceIPConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interface_load_balancers = NetworkInterfaceLoadBalancersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_security_groups = NetworkSecurityGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.security_rules = SecurityRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.default_security_rules = DefaultSecurityRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_watchers = NetworkWatchersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.packet_captures = PacketCapturesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.connection_monitors = ConnectionMonitorsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.public_ip_addresses = PublicIPAddressesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.public_ip_prefixes = PublicIPPrefixesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_filters = RouteFiltersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_filter_rules = RouteFilterRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_tables = RouteTablesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.routes = RoutesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.bgp_service_communities = BgpServiceCommunitiesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.usages = UsagesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_networks = VirtualNetworksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.subnets = SubnetsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_peerings = VirtualNetworkPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_gateways = VirtualNetworkGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_gateway_connections = VirtualNetworkGatewayConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.local_network_gateways = LocalNetworkGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_wa_ns = VirtualWANsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_sites = VpnSitesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_sites_configuration = VpnSitesConfigurationOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_hubs = VirtualHubsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.hub_virtual_network_connections = HubVirtualNetworkConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_gateways = VpnGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_connections = VpnConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.service_endpoint_policies = ServiceEndpointPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.service_endpoint_policy_definitions = ServiceEndpointPolicyDefinitionsOperations( + self._client, self.config, self._serialize, self._deserialize) + + def check_dns_name_availability( + self, location, domain_name_label, custom_headers=None, raw=False, **operation_config): + """Checks whether a domain name in the cloudapp.azure.com zone is + available for use. + + :param location: The location of the domain name. + :type location: str + :param domain_name_label: The domain name to be verified. It must + conform to the following regular expression: + ^[a-z][a-z0-9-]{1,61}[a-z0-9]$. + :type domain_name_label: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DnsNameAvailabilityResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.DnsNameAvailabilityResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-07-01" + + # Construct URL + url = self.check_dns_name_availability.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['domainNameLabel'] = self._serialize.query("domain_name_label", domain_name_label, 'str') + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DnsNameAvailabilityResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_dns_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/CheckDnsNameAvailability'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/__init__.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/__init__.py new file mode 100644 index 000000000000..8f68aa77b5f6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/__init__.py @@ -0,0 +1,118 @@ +# 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 .azure_firewalls_operations import AzureFirewallsOperations +from .application_gateways_operations import ApplicationGatewaysOperations +from .application_security_groups_operations import ApplicationSecurityGroupsOperations +from .ddos_protection_plans_operations import DdosProtectionPlansOperations +from .available_endpoint_services_operations import AvailableEndpointServicesOperations +from .express_route_circuit_authorizations_operations import ExpressRouteCircuitAuthorizationsOperations +from .express_route_circuit_peerings_operations import ExpressRouteCircuitPeeringsOperations +from .express_route_circuit_connections_operations import ExpressRouteCircuitConnectionsOperations +from .express_route_circuits_operations import ExpressRouteCircuitsOperations +from .express_route_service_providers_operations import ExpressRouteServiceProvidersOperations +from .express_route_cross_connections_operations import ExpressRouteCrossConnectionsOperations +from .express_route_cross_connection_peerings_operations import ExpressRouteCrossConnectionPeeringsOperations +from .load_balancers_operations import LoadBalancersOperations +from .load_balancer_backend_address_pools_operations import LoadBalancerBackendAddressPoolsOperations +from .load_balancer_frontend_ip_configurations_operations import LoadBalancerFrontendIPConfigurationsOperations +from .inbound_nat_rules_operations import InboundNatRulesOperations +from .load_balancer_load_balancing_rules_operations import LoadBalancerLoadBalancingRulesOperations +from .load_balancer_network_interfaces_operations import LoadBalancerNetworkInterfacesOperations +from .load_balancer_probes_operations import LoadBalancerProbesOperations +from .network_interfaces_operations import NetworkInterfacesOperations +from .network_interface_ip_configurations_operations import NetworkInterfaceIPConfigurationsOperations +from .network_interface_load_balancers_operations import NetworkInterfaceLoadBalancersOperations +from .network_security_groups_operations import NetworkSecurityGroupsOperations +from .security_rules_operations import SecurityRulesOperations +from .default_security_rules_operations import DefaultSecurityRulesOperations +from .network_watchers_operations import NetworkWatchersOperations +from .packet_captures_operations import PacketCapturesOperations +from .connection_monitors_operations import ConnectionMonitorsOperations +from .operations import Operations +from .public_ip_addresses_operations import PublicIPAddressesOperations +from .public_ip_prefixes_operations import PublicIPPrefixesOperations +from .route_filters_operations import RouteFiltersOperations +from .route_filter_rules_operations import RouteFilterRulesOperations +from .route_tables_operations import RouteTablesOperations +from .routes_operations import RoutesOperations +from .bgp_service_communities_operations import BgpServiceCommunitiesOperations +from .usages_operations import UsagesOperations +from .virtual_networks_operations import VirtualNetworksOperations +from .subnets_operations import SubnetsOperations +from .virtual_network_peerings_operations import VirtualNetworkPeeringsOperations +from .virtual_network_gateways_operations import VirtualNetworkGatewaysOperations +from .virtual_network_gateway_connections_operations import VirtualNetworkGatewayConnectionsOperations +from .local_network_gateways_operations import LocalNetworkGatewaysOperations +from .virtual_wa_ns_operations import VirtualWANsOperations +from .vpn_sites_operations import VpnSitesOperations +from .vpn_sites_configuration_operations import VpnSitesConfigurationOperations +from .virtual_hubs_operations import VirtualHubsOperations +from .hub_virtual_network_connections_operations import HubVirtualNetworkConnectionsOperations +from .vpn_gateways_operations import VpnGatewaysOperations +from .vpn_connections_operations import VpnConnectionsOperations +from .service_endpoint_policies_operations import ServiceEndpointPoliciesOperations +from .service_endpoint_policy_definitions_operations import ServiceEndpointPolicyDefinitionsOperations + +__all__ = [ + 'AzureFirewallsOperations', + 'ApplicationGatewaysOperations', + 'ApplicationSecurityGroupsOperations', + 'DdosProtectionPlansOperations', + 'AvailableEndpointServicesOperations', + 'ExpressRouteCircuitAuthorizationsOperations', + 'ExpressRouteCircuitPeeringsOperations', + 'ExpressRouteCircuitConnectionsOperations', + 'ExpressRouteCircuitsOperations', + 'ExpressRouteServiceProvidersOperations', + 'ExpressRouteCrossConnectionsOperations', + 'ExpressRouteCrossConnectionPeeringsOperations', + 'LoadBalancersOperations', + 'LoadBalancerBackendAddressPoolsOperations', + 'LoadBalancerFrontendIPConfigurationsOperations', + 'InboundNatRulesOperations', + 'LoadBalancerLoadBalancingRulesOperations', + 'LoadBalancerNetworkInterfacesOperations', + 'LoadBalancerProbesOperations', + 'NetworkInterfacesOperations', + 'NetworkInterfaceIPConfigurationsOperations', + 'NetworkInterfaceLoadBalancersOperations', + 'NetworkSecurityGroupsOperations', + 'SecurityRulesOperations', + 'DefaultSecurityRulesOperations', + 'NetworkWatchersOperations', + 'PacketCapturesOperations', + 'ConnectionMonitorsOperations', + 'Operations', + 'PublicIPAddressesOperations', + 'PublicIPPrefixesOperations', + 'RouteFiltersOperations', + 'RouteFilterRulesOperations', + 'RouteTablesOperations', + 'RoutesOperations', + 'BgpServiceCommunitiesOperations', + 'UsagesOperations', + 'VirtualNetworksOperations', + 'SubnetsOperations', + 'VirtualNetworkPeeringsOperations', + 'VirtualNetworkGatewaysOperations', + 'VirtualNetworkGatewayConnectionsOperations', + 'LocalNetworkGatewaysOperations', + 'VirtualWANsOperations', + 'VpnSitesOperations', + 'VpnSitesConfigurationOperations', + 'VirtualHubsOperations', + 'HubVirtualNetworkConnectionsOperations', + 'VpnGatewaysOperations', + 'VpnConnectionsOperations', + 'ServiceEndpointPoliciesOperations', + 'ServiceEndpointPolicyDefinitionsOperations', +] diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/application_gateways_operations.py new file mode 100644 index 000000000000..234996072f50 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/application_gateways_operations.py @@ -0,0 +1,1019 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApplicationGatewaysOperations(object): + """ApplicationGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + def get( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.ApplicationGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, application_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApplicationGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, application_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param parameters: Parameters supplied to the create or update + application gateway operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ApplicationGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ApplicationGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ApplicationGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, application_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, application_gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates the specified application gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ApplicationGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ApplicationGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ApplicationGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all application gateways in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationGateway + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayPaged[~azure.mgmt.network.v2018_07_01.models.ApplicationGateway] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the application gateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationGateway + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayPaged[~azure.mgmt.network.v2018_07_01.models.ApplicationGateway] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways'} + + + def _start_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start'} + + + def _stop_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops the specified application gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop'} + + + def _backend_health_initial( + self, resource_group_name, application_gateway_name, expand=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.backend_health.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayBackendHealth', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def backend_health( + self, resource_group_name, application_gateway_name, expand=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the backend health of the specified application gateway in a + resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param expand: Expands BackendAddressPool and BackendHttpSettings + referenced in backend health. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApplicationGatewayBackendHealth or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealth] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayBackendHealth]] + :raises: :class:`CloudError` + """ + raw_result = self._backend_health_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + expand=expand, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGatewayBackendHealth', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + backend_health.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth'} + + def list_available_waf_rule_sets( + self, custom_headers=None, raw=False, **operation_config): + """Lists all available web application firewall rule sets. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewayAvailableWafRuleSetsResult or + ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayAvailableWafRuleSetsResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_available_waf_rule_sets.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayAvailableWafRuleSetsResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_waf_rule_sets.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets'} + + def list_available_ssl_options( + self, custom_headers=None, raw=False, **operation_config): + """Lists available Ssl options for configuring Ssl policy. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewayAvailableSslOptions or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewayAvailableSslOptions + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_available_ssl_options.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayAvailableSslOptions', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_ssl_options.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default'} + + def list_available_ssl_predefined_policies( + self, custom_headers=None, raw=False, **operation_config): + """Lists all SSL predefined policies for configuring Ssl policy. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + ApplicationGatewaySslPredefinedPolicy + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPredefinedPolicyPaged[~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPredefinedPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_available_ssl_predefined_policies.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationGatewaySslPredefinedPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationGatewaySslPredefinedPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_available_ssl_predefined_policies.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies'} + + def get_ssl_predefined_policy( + self, predefined_policy_name, custom_headers=None, raw=False, **operation_config): + """Gets Ssl predefined policy with the specified policy name. + + :param predefined_policy_name: Name of Ssl predefined policy. + :type predefined_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewaySslPredefinedPolicy or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationGatewaySslPredefinedPolicy + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_ssl_predefined_policy.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'predefinedPolicyName': self._serialize.url("predefined_policy_name", predefined_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewaySslPredefinedPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_ssl_predefined_policy.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/application_security_groups_operations.py new file mode 100644 index 000000000000..b1269ac8c36e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/application_security_groups_operations.py @@ -0,0 +1,421 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApplicationSecurityGroupsOperations(object): + """ApplicationSecurityGroupsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + application_security_group_name=application_security_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + def get( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationSecurityGroup or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + + def _create_or_update_initial( + self, resource_group_name, application_security_group_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + if response.status_code == 201: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, application_security_group_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param parameters: Parameters supplied to the create or update + ApplicationSecurityGroup operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApplicationSecurityGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + application_security_group_name=application_security_group_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all application security groups in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationSecurityGroup + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroupPaged[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the application security groups in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationSecurityGroup + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroupPaged[~azure.mgmt.network.v2018_07_01.models.ApplicationSecurityGroup] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/available_endpoint_services_operations.py new file mode 100644 index 000000000000..f2ccb8e07783 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/available_endpoint_services_operations.py @@ -0,0 +1,105 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailableEndpointServicesOperations(object): + """AvailableEndpointServicesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """List what values of endpoint services are available for use. + + :param location: The location to check available endpoint services. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of EndpointServiceResult + :rtype: + ~azure.mgmt.network.v2018_07_01.models.EndpointServiceResultPaged[~azure.mgmt.network.v2018_07_01.models.EndpointServiceResult] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.EndpointServiceResultPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.EndpointServiceResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/virtualNetworkAvailableEndpointServices'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/azure_firewalls_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/azure_firewalls_operations.py new file mode 100644 index 000000000000..1bc520401966 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/azure_firewalls_operations.py @@ -0,0 +1,415 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class AzureFirewallsOperations(object): + """AzureFirewallsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + azure_firewall_name=azure_firewall_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + def get( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AzureFirewall or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.AzureFirewall or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + + def _create_or_update_initial( + self, resource_group_name, azure_firewall_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AzureFirewall') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureFirewall', response) + if response.status_code == 201: + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, azure_firewall_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param parameters: Parameters supplied to the create or update Azure + Firewall operation. + :type parameters: ~azure.mgmt.network.v2018_07_01.models.AzureFirewall + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AzureFirewall or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.AzureFirewall] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.AzureFirewall]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + azure_firewall_name=azure_firewall_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all Azure Firewalls in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AzureFirewall + :rtype: + ~azure.mgmt.network.v2018_07_01.models.AzureFirewallPaged[~azure.mgmt.network.v2018_07_01.models.AzureFirewall] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the Azure Firewalls in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AzureFirewall + :rtype: + ~azure.mgmt.network.v2018_07_01.models.AzureFirewallPaged[~azure.mgmt.network.v2018_07_01.models.AzureFirewall] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/bgp_service_communities_operations.py new file mode 100644 index 000000000000..427048e0bac9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/bgp_service_communities_operations.py @@ -0,0 +1,102 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class BgpServiceCommunitiesOperations(object): + """BgpServiceCommunitiesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the available bgp service communities. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BgpServiceCommunity + :rtype: + ~azure.mgmt.network.v2018_07_01.models.BgpServiceCommunityPaged[~azure.mgmt.network.v2018_07_01.models.BgpServiceCommunity] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.BgpServiceCommunityPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BgpServiceCommunityPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/bgpServiceCommunities'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/connection_monitors_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/connection_monitors_operations.py new file mode 100644 index 000000000000..035ac41f17b8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/connection_monitors_operations.py @@ -0,0 +1,632 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ConnectionMonitorsOperations(object): + """ConnectionMonitorsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionMonitor') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorResult', response) + if response.status_code == 201: + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_watcher_name, connection_monitor_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or update a connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param parameters: Parameters that define the operation to create a + connection monitor. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitor + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectionMonitorResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + def get( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + """Gets a connection monitor by name. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionMonitorResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorResult + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + + def _stop_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop'} + + + def _start_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start'} + + + def _query_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.query.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + if response.status_code == 202: + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def query( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Query a snapshot of the most recent connection states. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name given to the connection + monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ConnectionMonitorQueryResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorQueryResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorQueryResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._query_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + query.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query'} + + def list( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Lists all connection monitors for the specified Network Watcher. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ConnectionMonitorResult + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorResultPaged[~azure.mgmt.network.v2018_07_01.models.ConnectionMonitorResult] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ConnectionMonitorResultPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ConnectionMonitorResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/ddos_protection_plans_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/ddos_protection_plans_operations.py new file mode 100644 index 000000000000..6d8866c613e1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/ddos_protection_plans_operations.py @@ -0,0 +1,422 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class DdosProtectionPlansOperations(object): + """DdosProtectionPlansOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + ddos_protection_plan_name=ddos_protection_plan_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + def get( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DdosProtectionPlan or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.DdosProtectionPlan or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + + def _create_or_update_initial( + self, resource_group_name, ddos_protection_plan_name, location=None, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.DdosProtectionPlan(location=location, tags=tags) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DdosProtectionPlan') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DdosProtectionPlan', response) + if response.status_code == 201: + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, ddos_protection_plan_name, location=None, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns DdosProtectionPlan or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.DdosProtectionPlan] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.DdosProtectionPlan]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + ddos_protection_plan_name=ddos_protection_plan_name, + location=location, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all DDoS protection plans in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DdosProtectionPlan + :rtype: + ~azure.mgmt.network.v2018_07_01.models.DdosProtectionPlanPaged[~azure.mgmt.network.v2018_07_01.models.DdosProtectionPlan] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the DDoS protection plans in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DdosProtectionPlan + :rtype: + ~azure.mgmt.network.v2018_07_01.models.DdosProtectionPlanPaged[~azure.mgmt.network.v2018_07_01.models.DdosProtectionPlan] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/default_security_rules_operations.py new file mode 100644 index 000000000000..1067071d960a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/default_security_rules_operations.py @@ -0,0 +1,176 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class DefaultSecurityRulesOperations(object): + """DefaultSecurityRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all default security rules in a network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityRule + :rtype: + ~azure.mgmt.network.v2018_07_01.models.SecurityRulePaged[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules'} + + def get( + self, resource_group_name, network_security_group_name, default_security_rule_name, custom_headers=None, raw=False, **operation_config): + """Get the specified default network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param default_security_rule_name: The name of the default security + rule. + :type default_security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.SecurityRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'defaultSecurityRuleName': self._serialize.url("default_security_rule_name", default_security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_authorizations_operations.py new file mode 100644 index 000000000000..a15aab75d907 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_authorizations_operations.py @@ -0,0 +1,372 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitAuthorizationsOperations(object): + """ExpressRouteCircuitAuthorizationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified authorization from the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + authorization_name=authorization_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + def get( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified authorization from the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitAuthorization or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitAuthorization + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, authorization_name, authorization_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, authorization_name, authorization_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an authorization in the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param authorization_parameters: Parameters supplied to the create or + update express route circuit authorization operation. + :type authorization_parameters: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitAuthorization + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitAuthorization or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitAuthorization] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitAuthorization]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + authorization_name=authorization_name, + authorization_parameters=authorization_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + def list( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all authorizations in an express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuitAuthorization + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitAuthorizationPaged[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitAuthorization] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCircuitAuthorizationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCircuitAuthorizationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_connections_operations.py new file mode 100644 index 000000000000..45a4bbe7f173 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_connections_operations.py @@ -0,0 +1,317 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitConnectionsOperations(object): + """ExpressRouteCircuitConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Express Route Circuit Connection from the + specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + connection_name=connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} + + def get( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Express Route Circuit Connection from the specified + express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitConnection or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, peering_name, connection_name, express_route_circuit_connection_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(express_route_circuit_connection_parameters, 'ExpressRouteCircuitConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, peering_name, connection_name, express_route_circuit_connection_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a Express Route Circuit Connection in the specified + express route circuits. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param express_route_circuit_connection_parameters: Parameters + supplied to the create or update express route circuit circuit + connection operation. + :type express_route_circuit_connection_parameters: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + connection_name=connection_name, + express_route_circuit_connection_parameters=express_route_circuit_connection_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_peerings_operations.py new file mode 100644 index 000000000000..21c37c220a2d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuit_peerings_operations.py @@ -0,0 +1,368 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitPeeringsOperations(object): + """ExpressRouteCircuitPeeringsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified peering from the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + def get( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified peering for the express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitPeering or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, peering_name, peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, peering_name, peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified express route circuits. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param peering_parameters: Parameters supplied to the create or update + express route circuit peering operation. + :type peering_parameters: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitPeering or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + peering_parameters=peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + def list( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all peerings in a specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuitPeering + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeeringPaged[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPeering] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCircuitPeeringPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCircuitPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuits_operations.py new file mode 100644 index 000000000000..10af8cb80906 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_circuits_operations.py @@ -0,0 +1,958 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitsOperations(object): + """ExpressRouteCircuitsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + def get( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuit or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuit or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param parameters: Parameters supplied to the create or update express + route circuit operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuit + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteCircuit or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuit] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuit]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + + def _update_tags_initial( + self, resource_group_name, circuit_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, circuit_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates an express route circuit tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteCircuit or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuit] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuit]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + + def _list_arp_table_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_arp_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_arp_table( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised ARP table associated with the express + route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsArpTableListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsArpTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsArpTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_arp_table_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_arp_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}'} + + + def _list_routes_table_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table associated with the express + route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsRoutesTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsRoutesTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}'} + + + def _list_routes_table_summary_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table_summary.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table_summary( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table summary associated with the + express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableSummaryListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsRoutesTableSummaryListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsRoutesTableSummaryListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_summary_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table_summary.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}'} + + def get_stats( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all the stats from an express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitStats or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitStats or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_stats.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitStats', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_stats.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats'} + + def get_peering_stats( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets all stats from an express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitStats or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitStats or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_peering_stats.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitStats', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_peering_stats.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the express route circuits in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuit + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPaged[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuit] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the express route circuits in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuit + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitPaged[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuit] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_cross_connection_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_cross_connection_peerings_operations.py new file mode 100644 index 000000000000..5fb225da1e06 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_cross_connection_peerings_operations.py @@ -0,0 +1,375 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCrossConnectionPeeringsOperations(object): + """ExpressRouteCrossConnectionPeeringsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, cross_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets all peerings in a specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + ExpressRouteCrossConnectionPeering + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPeeringPaged[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPeering] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCrossConnectionPeeringPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCrossConnectionPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings'} + + + def _delete_initial( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified peering from the ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} + + def get( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified peering for the ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCrossConnectionPeering or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPeering + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, cross_connection_name, peering_name, peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(peering_parameters, 'ExpressRouteCrossConnectionPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, cross_connection_name, peering_name, peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified + ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param peering_parameters: Parameters supplied to the create or update + ExpressRouteCrossConnection peering operation. + :type peering_parameters: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnectionPeering or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + peering_parameters=peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_cross_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_cross_connections_operations.py new file mode 100644 index 000000000000..56cccd6dd1aa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_cross_connections_operations.py @@ -0,0 +1,757 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCrossConnectionsOperations(object): + """ExpressRouteCrossConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Retrieves all the ExpressRouteCrossConnections in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCrossConnection + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPaged[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnection] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCrossConnections'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Retrieves all the ExpressRouteCrossConnections in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCrossConnection + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionPaged[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnection] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections'} + + def get( + self, resource_group_name, cross_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets details about the specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group (peering + location of the circuit). + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection (service key of the circuit). + :type cross_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCrossConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnection or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, cross_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExpressRouteCrossConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, cross_connection_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Update the specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param parameters: Parameters supplied to the update express route + crossConnection operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + + def _update_tags_initial( + self, resource_group_name, cross_connection_name, tags=None, custom_headers=None, raw=False, **operation_config): + cross_connection_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(cross_connection_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, cross_connection_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates an express route cross connection tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the cross connection. + :type cross_connection_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + + def _list_arp_table_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_arp_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_arp_table( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised ARP table associated with the express + route cross connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsArpTableListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsArpTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsArpTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_arp_table_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_arp_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}'} + + + def _list_routes_table_summary_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table_summary.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table_summary( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the route table summary associated with the express route cross + connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnectionsRoutesTableSummaryListResult or + ClientRawResponse + if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionsRoutesTableSummaryListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCrossConnectionsRoutesTableSummaryListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_summary_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnectionsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table_summary.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}'} + + + def _list_routes_table_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table associated with the express + route cross connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsRoutesTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ExpressRouteCircuitsRoutesTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_service_providers_operations.py new file mode 100644 index 000000000000..cf7e80ff39da --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/express_route_service_providers_operations.py @@ -0,0 +1,102 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ExpressRouteServiceProvidersOperations(object): + """ExpressRouteServiceProvidersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the available express route service providers. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteServiceProvider + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ExpressRouteServiceProviderPaged[~azure.mgmt.network.v2018_07_01.models.ExpressRouteServiceProvider] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteServiceProviderPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteServiceProviderPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/hub_virtual_network_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/hub_virtual_network_connections_operations.py new file mode 100644 index 000000000000..923660b80431 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/hub_virtual_network_connections_operations.py @@ -0,0 +1,171 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class HubVirtualNetworkConnectionsOperations(object): + """HubVirtualNetworkConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def get( + self, resource_group_name, virtual_hub_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a HubVirtualNetworkConnection. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param connection_name: The name of the vpn connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: HubVirtualNetworkConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.HubVirtualNetworkConnection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('HubVirtualNetworkConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}'} + + def list( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of all HubVirtualNetworkConnections. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of HubVirtualNetworkConnection + :rtype: + ~azure.mgmt.network.v2018_07_01.models.HubVirtualNetworkConnectionPaged[~azure.mgmt.network.v2018_07_01.models.HubVirtualNetworkConnection] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.HubVirtualNetworkConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.HubVirtualNetworkConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/inbound_nat_rules_operations.py new file mode 100644 index 000000000000..a55b97cc00b2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/inbound_nat_rules_operations.py @@ -0,0 +1,370 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class InboundNatRulesOperations(object): + """InboundNatRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the inbound nat rules in a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of InboundNatRule + :rtype: + ~azure.mgmt.network.v2018_07_01.models.InboundNatRulePaged[~azure.mgmt.network.v2018_07_01.models.InboundNatRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.InboundNatRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.InboundNatRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules'} + + + def _delete_initial( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + inbound_nat_rule_name=inbound_nat_rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} + + def get( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: InboundNatRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.InboundNatRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} + + + def _create_or_update_initial( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, inbound_nat_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InboundNatRule', response) + if response.status_code == 201: + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, inbound_nat_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param inbound_nat_rule_parameters: Parameters supplied to the create + or update inbound nat rule operation. + :type inbound_nat_rule_parameters: + ~azure.mgmt.network.v2018_07_01.models.InboundNatRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns InboundNatRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.InboundNatRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.InboundNatRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + inbound_nat_rule_name=inbound_nat_rule_name, + inbound_nat_rule_parameters=inbound_nat_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_backend_address_pools_operations.py new file mode 100644 index 000000000000..e3c85df37280 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_backend_address_pools_operations.py @@ -0,0 +1,174 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerBackendAddressPoolsOperations(object): + """LoadBalancerBackendAddressPoolsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer backed address pools. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BackendAddressPool + :rtype: + ~azure.mgmt.network.v2018_07_01.models.BackendAddressPoolPaged[~azure.mgmt.network.v2018_07_01.models.BackendAddressPool] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.BackendAddressPoolPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BackendAddressPoolPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools'} + + def get( + self, resource_group_name, load_balancer_name, backend_address_pool_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer backend address pool. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param backend_address_pool_name: The name of the backend address + pool. + :type backend_address_pool_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackendAddressPool or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.BackendAddressPool or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'backendAddressPoolName': self._serialize.url("backend_address_pool_name", backend_address_pool_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackendAddressPool', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_frontend_ip_configurations_operations.py new file mode 100644 index 000000000000..207704dda1df --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -0,0 +1,174 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerFrontendIPConfigurationsOperations(object): + """LoadBalancerFrontendIPConfigurationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer frontend IP configurations. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of FrontendIPConfiguration + :rtype: + ~azure.mgmt.network.v2018_07_01.models.FrontendIPConfigurationPaged[~azure.mgmt.network.v2018_07_01.models.FrontendIPConfiguration] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.FrontendIPConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.FrontendIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations'} + + def get( + self, resource_group_name, load_balancer_name, frontend_ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer frontend IP configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param frontend_ip_configuration_name: The name of the frontend IP + configuration. + :type frontend_ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FrontendIPConfiguration or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.FrontendIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'frontendIPConfigurationName': self._serialize.url("frontend_ip_configuration_name", frontend_ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FrontendIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_load_balancing_rules_operations.py new file mode 100644 index 000000000000..16963a9c6c97 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_load_balancing_rules_operations.py @@ -0,0 +1,173 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerLoadBalancingRulesOperations(object): + """LoadBalancerLoadBalancingRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancing rules in a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancingRule + :rtype: + ~azure.mgmt.network.v2018_07_01.models.LoadBalancingRulePaged[~azure.mgmt.network.v2018_07_01.models.LoadBalancingRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LoadBalancingRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoadBalancingRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules'} + + def get( + self, resource_group_name, load_balancer_name, load_balancing_rule_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer load balancing rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param load_balancing_rule_name: The name of the load balancing rule. + :type load_balancing_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoadBalancingRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.LoadBalancingRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'loadBalancingRuleName': self._serialize.url("load_balancing_rule_name", load_balancing_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancingRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_network_interfaces_operations.py new file mode 100644 index 000000000000..e4cfee875fed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_network_interfaces_operations.py @@ -0,0 +1,108 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerNetworkInterfacesOperations(object): + """LoadBalancerNetworkInterfacesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets associated load balancer network interfaces. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_probes_operations.py new file mode 100644 index 000000000000..0e3316f8296c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancer_probes_operations.py @@ -0,0 +1,173 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerProbesOperations(object): + """LoadBalancerProbesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer probes. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Probe + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ProbePaged[~azure.mgmt.network.v2018_07_01.models.Probe] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ProbePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ProbePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes'} + + def get( + self, resource_group_name, load_balancer_name, probe_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer probe. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param probe_name: The name of the probe. + :type probe_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Probe or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.Probe or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'probeName': self._serialize.url("probe_name", probe_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Probe', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancers_operations.py new file mode 100644 index 000000000000..8e483a4f517d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/load_balancers_operations.py @@ -0,0 +1,521 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class LoadBalancersOperations(object): + """LoadBalancersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + def get( + self, resource_group_name, load_balancer_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoadBalancer or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.LoadBalancer or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + + def _create_or_update_initial( + self, resource_group_name, load_balancer_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'LoadBalancer') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + if response.status_code == 201: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, load_balancer_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param parameters: Parameters supplied to the create or update load + balancer operation. + :type parameters: ~azure.mgmt.network.v2018_07_01.models.LoadBalancer + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LoadBalancer or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.LoadBalancer] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.LoadBalancer]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + + def _update_tags_initial( + self, resource_group_name, load_balancer_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, load_balancer_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a load balancer tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LoadBalancer or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.LoadBalancer] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.LoadBalancer]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancers in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2018_07_01.models.LoadBalancerPaged[~azure.mgmt.network.v2018_07_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancers in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2018_07_01.models.LoadBalancerPaged[~azure.mgmt.network.v2018_07_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/local_network_gateways_operations.py new file mode 100644 index 000000000000..43d119b41c53 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/local_network_gateways_operations.py @@ -0,0 +1,459 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class LocalNetworkGatewaysOperations(object): + """LocalNetworkGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, local_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'LocalNetworkGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, local_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a local network gateway in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param parameters: Parameters supplied to the create or update local + network gateway operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LocalNetworkGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + local_network_gateway_name=local_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + def get( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified local network gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LocalNetworkGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + + def _delete_initial( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified local network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + local_network_gateway_name=local_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, local_network_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, local_network_gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a local network gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LocalNetworkGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + local_network_gateway_name=local_network_gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the local network gateways in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LocalNetworkGateway + :rtype: + ~azure.mgmt.network.v2018_07_01.models.LocalNetworkGatewayPaged[~azure.mgmt.network.v2018_07_01.models.LocalNetworkGateway] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LocalNetworkGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LocalNetworkGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interface_ip_configurations_operations.py new file mode 100644 index 000000000000..034ff0addab2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interface_ip_configurations_operations.py @@ -0,0 +1,175 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class NetworkInterfaceIPConfigurationsOperations(object): + """NetworkInterfaceIPConfigurationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + """Get all ip configurations in a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterfaceIPConfiguration + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfigurationPaged[~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations'} + + def get( + self, resource_group_name, network_interface_name, ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified network interface ip configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the ip configuration name. + :type ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterfaceIPConfiguration or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interface_load_balancers_operations.py new file mode 100644 index 000000000000..3ab39aee12fd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interface_load_balancers_operations.py @@ -0,0 +1,108 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class NetworkInterfaceLoadBalancersOperations(object): + """NetworkInterfaceLoadBalancersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + """List all load balancers in a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2018_07_01.models.LoadBalancerPaged[~azure.mgmt.network.v2018_07_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interfaces_operations.py new file mode 100644 index 000000000000..d70ff8f73ee0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_interfaces_operations.py @@ -0,0 +1,1115 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkInterfacesOperations(object): + """NetworkInterfacesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2018-07-01" + + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + def get( + self, resource_group_name, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterface or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.NetworkInterface or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-07-01" + + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_interface_name, parameters, custom_headers=None, raw=False, **operation_config): + api_version = "2018-07-01" + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkInterface') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_interface_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param parameters: Parameters supplied to the create or update network + interface operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterface + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkInterface or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.NetworkInterface]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + + def _update_tags_initial( + self, resource_group_name, network_interface_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + api_version = "2018-07-01" + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, network_interface_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a network interface tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkInterface or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.NetworkInterface]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2018-07-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2018-07-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces'} + + + def _get_effective_route_table_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2018-07-01" + + # Construct URL + url = self.get_effective_route_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EffectiveRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_effective_route_table( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets all route tables applied to a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + EffectiveRouteListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.EffectiveRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.EffectiveRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_effective_route_table_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('EffectiveRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_effective_route_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable'} + + + def _list_effective_network_security_groups_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2018-07-01" + + # Construct URL + url = self.list_effective_network_security_groups.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EffectiveNetworkSecurityGroupListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_effective_network_security_groups( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets all network security groups applied to a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + EffectiveNetworkSecurityGroupListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityGroupListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.EffectiveNetworkSecurityGroupListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_effective_network_security_groups_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('EffectiveNetworkSecurityGroupListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_effective_network_security_groups.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups'} + + def list_virtual_machine_scale_set_vm_network_interfaces( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, custom_headers=None, raw=False, **operation_config): + """Gets information about all network interfaces in a virtual machine in a + virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_vm_network_interfaces.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_vm_network_interfaces.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces'} + + def list_virtual_machine_scale_set_network_interfaces( + self, resource_group_name, virtual_machine_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_07_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_network_interfaces.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_network_interfaces.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces'} + + def get_virtual_machine_scale_set_network_interface( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterface or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.NetworkInterface or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + # Construct URL + url = self.get_virtual_machine_scale_set_network_interface.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_network_interface.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}'} + + def list_virtual_machine_scale_set_ip_configurations( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface ip configuration in a virtual + machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterfaceIPConfiguration + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfigurationPaged[~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_ip_configurations.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_ip_configurations.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations'} + + def get_virtual_machine_scale_set_ip_configuration( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface ip configuration in a virtual + machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the ip configuration. + :type ip_configuration_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterfaceIPConfiguration or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkInterfaceIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + # Construct URL + url = self.get_virtual_machine_scale_set_ip_configuration.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_ip_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_security_groups_operations.py new file mode 100644 index 000000000000..a0bda11f60ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_security_groups_operations.py @@ -0,0 +1,527 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkSecurityGroupsOperations(object): + """NetworkSecurityGroupsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + def get( + self, resource_group_name, network_security_group_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkSecurityGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_security_group_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_security_group_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a network security group in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param parameters: Parameters supplied to the create or update network + security group operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkSecurityGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + + def _update_tags_initial( + self, resource_group_name, network_security_group_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, network_security_group_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a network security group tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkSecurityGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network security groups in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkSecurityGroup + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroupPaged[~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network security groups in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkSecurityGroup + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroupPaged[~azure.mgmt.network.v2018_07_01.models.NetworkSecurityGroup] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_watchers_operations.py new file mode 100644 index 000000000000..c6f35b685fed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/network_watchers_operations.py @@ -0,0 +1,1671 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkWatchersOperations(object): + """NetworkWatchersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def create_or_update( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + """Creates or updates a network watcher in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the network watcher + resource. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.NetworkWatcher + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkWatcher') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def get( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified network watcher by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network watcher resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def update_tags( + self, resource_group_name, network_watcher_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a network watcher tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network watchers by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkWatcher + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkWatcherPaged[~azure.mgmt.network.v2018_07_01.models.NetworkWatcher] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network watchers by subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkWatcher + :rtype: + ~azure.mgmt.network.v2018_07_01.models.NetworkWatcherPaged[~azure.mgmt.network.v2018_07_01.models.NetworkWatcher] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers'} + + def get_topology( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + """Gets the current network topology by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the representation of + topology. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.TopologyParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Topology or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.Topology or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_topology.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TopologyParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Topology', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_topology.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology'} + + + def _verify_ip_flow_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.verify_ip_flow.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VerificationIPFlowResult', response) + if response.status_code == 202: + deserialized = self._deserialize('VerificationIPFlowResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def verify_ip_flow( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Verify IP flow from the specified VM to a location given the currently + configured NSG rules. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the IP flow to be verified. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.VerificationIPFlowParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VerificationIPFlowResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VerificationIPFlowResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VerificationIPFlowResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._verify_ip_flow_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VerificationIPFlowResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + verify_ip_flow.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify'} + + + def _get_next_hop_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_next_hop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NextHopParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NextHopResult', response) + if response.status_code == 202: + deserialized = self._deserialize('NextHopResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_next_hop( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the next hop from the specified VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the source and destination + endpoint. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.NextHopParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NextHopResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.NextHopResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.NextHopResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_next_hop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NextHopResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_next_hop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop'} + + + def _get_vm_security_rules_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.SecurityGroupViewParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_vm_security_rules.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityGroupViewResult', response) + if response.status_code == 202: + deserialized = self._deserialize('SecurityGroupViewResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vm_security_rules( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the configured and effective security group rules on the specified + VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param target_resource_id: ID of the target VM. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SecurityGroupViewResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.SecurityGroupViewResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.SecurityGroupViewResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_vm_security_rules_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('SecurityGroupViewResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vm_security_rules.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView'} + + + def _get_troubleshooting_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_troubleshooting.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TroubleshootingParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TroubleshootingResult', response) + if response.status_code == 202: + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_troubleshooting( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Initiate troubleshooting on a specified resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that define the resource to + troubleshoot. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.TroubleshootingParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns TroubleshootingResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.TroubleshootingResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.TroubleshootingResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_troubleshooting_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_troubleshooting.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot'} + + + def _get_troubleshooting_result_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.QueryTroubleshootingParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_troubleshooting_result.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TroubleshootingResult', response) + if response.status_code == 202: + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_troubleshooting_result( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Get the last completed troubleshooting result on a specified resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param target_resource_id: The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns TroubleshootingResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.TroubleshootingResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.TroubleshootingResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_troubleshooting_result_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_troubleshooting_result.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult'} + + + def _set_flow_log_configuration_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.set_flow_log_configuration.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FlowLogInformation') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FlowLogInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_flow_log_configuration( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Configures flow log and traffic analytics (optional) on a specified + resource. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that define the configuration of flow + log. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.FlowLogInformation + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FlowLogInformation or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.FlowLogInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.FlowLogInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._set_flow_log_configuration_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_flow_log_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog'} + + + def _get_flow_log_status_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.FlowLogStatusParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_flow_log_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FlowLogInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_flow_log_status( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Queries status of flow log and traffic analytics (optional) on a + specified resource. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param target_resource_id: The target resource where getting the flow + log and traffic analytics (optional) status. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FlowLogInformation or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.FlowLogInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.FlowLogInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_flow_log_status_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_flow_log_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus'} + + + def _check_connectivity_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.check_connectivity.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectivityParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectivityInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('ConnectivityInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def check_connectivity( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Verifies the possibility of establishing a direct TCP connection from a + virtual machine to a given endpoint including another VM or an + arbitrary remote server. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that determine how the connectivity + check will be performed. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.ConnectivityParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectivityInformation + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ConnectivityInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ConnectivityInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._check_connectivity_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectivityInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + check_connectivity.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck'} + + + def _get_azure_reachability_report_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_azure_reachability_report.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureReachabilityReport', response) + if response.status_code == 202: + deserialized = self._deserialize('AzureReachabilityReport', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_azure_reachability_report( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the relative latency score for internet service providers from a + specified location to Azure regions. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that determine Azure reachability report + configuration. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReportParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AzureReachabilityReport + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReport] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.AzureReachabilityReport]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_azure_reachability_report_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AzureReachabilityReport', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_azure_reachability_report.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport'} + + + def _list_available_providers_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_available_providers.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AvailableProvidersList', response) + if response.status_code == 202: + deserialized = self._deserialize('AvailableProvidersList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_available_providers( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Lists all available internet service providers for a specified Azure + region. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that scope the list of available + providers. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.AvailableProvidersListParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AvailableProvidersList + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.AvailableProvidersList] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.AvailableProvidersList]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._list_available_providers_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AvailableProvidersList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_available_providers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList'} + + + def _get_network_configuration_diagnostic_initial( + self, resource_group_name, network_watcher_name, target_resource_id, queries, custom_headers=None, raw=False, **operation_config): + parameters = models.NetworkConfigurationDiagnosticParameters(target_resource_id=target_resource_id, queries=queries) + + # Construct URL + url = self.get_network_configuration_diagnostic.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkConfigurationDiagnosticParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + if response.status_code == 202: + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_network_configuration_diagnostic( + self, resource_group_name, network_watcher_name, target_resource_id, queries, custom_headers=None, raw=False, polling=True, **operation_config): + """Get network configuration diagnostic. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param target_resource_id: The ID of the target resource to perform + network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: List of traffic queries. + :type queries: + list[~azure.mgmt.network.v2018_07_01.models.TrafficQuery] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + NetworkConfigurationDiagnosticResponse or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.NetworkConfigurationDiagnosticResponse] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.NetworkConfigurationDiagnosticResponse]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_network_configuration_diagnostic_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + queries=queries, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_network_configuration_diagnostic.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/operations.py new file mode 100644 index 000000000000..44dbd47c4470 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/operations.py @@ -0,0 +1,98 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available Network Rest API operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.network.v2018_07_01.models.OperationPaged[~azure.mgmt.network.v2018_07_01.models.Operation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.Network/operations'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/packet_captures_operations.py new file mode 100644 index 000000000000..5e56414bdc6f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/packet_captures_operations.py @@ -0,0 +1,540 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PacketCapturesOperations(object): + """PacketCapturesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _create_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PacketCapture') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, network_watcher_name, packet_capture_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create and start a packet capture on the specified VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param parameters: Parameters that define the create packet capture + operation. + :type parameters: ~azure.mgmt.network.v2018_07_01.models.PacketCapture + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PacketCaptureResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.PacketCaptureResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.PacketCaptureResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + def get( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + """Gets a packet capture session by name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PacketCaptureResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.PacketCaptureResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + + def _stop_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops a specified packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop'} + + + def _get_status_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + if response.status_code == 202: + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_status( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Query the status of a running packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param packet_capture_name: The name given to the packet capture + session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + PacketCaptureQueryStatusResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.PacketCaptureQueryStatusResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.PacketCaptureQueryStatusResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_status_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus'} + + def list( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Lists all packet capture sessions within the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PacketCaptureResult + :rtype: + ~azure.mgmt.network.v2018_07_01.models.PacketCaptureResultPaged[~azure.mgmt.network.v2018_07_01.models.PacketCaptureResult] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.PacketCaptureResultPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PacketCaptureResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/public_ip_addresses_operations.py new file mode 100644 index 000000000000..3c09b75deea8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/public_ip_addresses_operations.py @@ -0,0 +1,770 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PublicIPAddressesOperations(object): + """PublicIPAddressesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + + def _delete_initial( + self, resource_group_name, public_ip_address_name, custom_headers=None, raw=False, **operation_config): + api_version = "2018-07-01" + + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, public_ip_address_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified public IP address. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the subnet. + :type public_ip_address_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + public_ip_address_name=public_ip_address_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + def get( + self, resource_group_name, public_ip_address_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified public IP address in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the subnet. + :type public_ip_address_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPAddress or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-07-01" + + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + + def _create_or_update_initial( + self, resource_group_name, public_ip_address_name, parameters, custom_headers=None, raw=False, **operation_config): + api_version = "2018-07-01" + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PublicIPAddress') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + if response.status_code == 201: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, public_ip_address_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a static or dynamic public IP address. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the public IP address. + :type public_ip_address_name: str + :param parameters: Parameters supplied to the create or update public + IP address operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPAddress or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.PublicIPAddress] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.PublicIPAddress]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + public_ip_address_name=public_ip_address_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + + def _update_tags_initial( + self, resource_group_name, public_ip_address_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + api_version = "2018-07-01" + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, public_ip_address_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates public IP address tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the public IP address. + :type public_ip_address_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPAddress or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.PublicIPAddress] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.PublicIPAddress]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + public_ip_address_name=public_ip_address_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the public IP addresses in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2018_07_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2018-07-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all public IP addresses in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2018_07_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2018-07-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses'} + + def list_virtual_machine_scale_set_public_ip_addresses( + self, resource_group_name, virtual_machine_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets information about all public IP addresses on a virtual machine + scale set level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2018_07_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_public_ip_addresses.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_public_ip_addresses.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses'} + + def list_virtual_machine_scale_set_vm_public_ip_addresses( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets information about all public IP addresses in a virtual machine IP + configuration in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The network interface name. + :type network_interface_name: str + :param ip_configuration_name: The IP configuration name. + :type ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2018_07_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2018_07_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_vm_public_ip_addresses.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_vm_public_ip_addresses.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses'} + + def get_virtual_machine_scale_set_public_ip_address( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, public_ip_address_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified public IP address in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the IP configuration. + :type ip_configuration_name: str + :param public_ip_address_name: The name of the public IP Address. + :type public_ip_address_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPAddress or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.PublicIPAddress or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + # Construct URL + url = self.get_virtual_machine_scale_set_public_ip_address.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_public_ip_address.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/public_ip_prefixes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/public_ip_prefixes_operations.py new file mode 100644 index 000000000000..632b245510de --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/public_ip_prefixes_operations.py @@ -0,0 +1,522 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PublicIPPrefixesOperations(object): + """PublicIPPrefixesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, public_ip_prefix_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, public_ip_prefix_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified public IP prefix. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the PublicIpPrefix. + :type public_ip_prefix_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + public_ip_prefix_name=public_ip_prefix_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + def get( + self, resource_group_name, public_ip_prefix_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified public IP prefix in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the PublicIPPrefx. + :type public_ip_prefix_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPPrefix or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + + def _create_or_update_initial( + self, resource_group_name, public_ip_prefix_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PublicIPPrefix') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + if response.status_code == 201: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, public_ip_prefix_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a static or dynamic public IP prefix. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the public IP prefix. + :type public_ip_prefix_name: str + :param parameters: Parameters supplied to the create or update public + IP prefix operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPPrefix or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + public_ip_prefix_name=public_ip_prefix_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + + def _update_tags_initial( + self, resource_group_name, public_ip_prefix_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, public_ip_prefix_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates public IP prefix tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the public IP prefix. + :type public_ip_prefix_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPPrefix or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + public_ip_prefix_name=public_ip_prefix_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the public IP prefixes in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPPrefix + :rtype: + ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefixPaged[~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all public IP prefixes in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPPrefix + :rtype: + ~azure.mgmt.network.v2018_07_01.models.PublicIPPrefixPaged[~azure.mgmt.network.v2018_07_01.models.PublicIPPrefix] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_filter_rules_operations.py new file mode 100644 index 000000000000..45bb8a42a066 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_filter_rules_operations.py @@ -0,0 +1,472 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteFilterRulesOperations(object): + """RouteFilterRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified rule from a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the rule. + :type rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + rule_name=rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + def get( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified rule from a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the rule. + :type rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteFilterRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.RouteFilterRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilterRule', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route in the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the route filter rule. + :type rule_name: str + :param route_filter_rule_parameters: Parameters supplied to the create + or update route filter rule operation. + :type route_filter_rule_parameters: + ~azure.mgmt.network.v2018_07_01.models.RouteFilterRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilterRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + rule_name=rule_name, + route_filter_rule_parameters=route_filter_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + + def _update_initial( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a route in the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the route filter rule. + :type rule_name: str + :param route_filter_rule_parameters: Parameters supplied to the update + route filter rule operation. + :type route_filter_rule_parameters: + ~azure.mgmt.network.v2018_07_01.models.PatchRouteFilterRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilterRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + rule_name=rule_name, + route_filter_rule_parameters=route_filter_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + def list_by_route_filter( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, **operation_config): + """Gets all RouteFilterRules in a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilterRule + :rtype: + ~azure.mgmt.network.v2018_07_01.models.RouteFilterRulePaged[~azure.mgmt.network.v2018_07_01.models.RouteFilterRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_route_filter.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteFilterRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteFilterRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_route_filter.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_filters_operations.py new file mode 100644 index 000000000000..ffe606cf0f37 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_filters_operations.py @@ -0,0 +1,522 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteFiltersOperations(object): + """RouteFiltersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + def get( + self, resource_group_name, route_filter_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param expand: Expands referenced express route bgp peering resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.RouteFilter or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route filter in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param route_filter_parameters: Parameters supplied to the create or + update route filter operation. + :type route_filter_parameters: + ~azure.mgmt.network.v2018_07_01.models.RouteFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilter or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.RouteFilter] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.RouteFilter]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + route_filter_parameters=route_filter_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + + def _update_initial( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a route filter in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param route_filter_parameters: Parameters supplied to the update + route filter operation. + :type route_filter_parameters: + ~azure.mgmt.network.v2018_07_01.models.PatchRouteFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilter or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.RouteFilter] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.RouteFilter]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + route_filter_parameters=route_filter_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all route filters in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilter + :rtype: + ~azure.mgmt.network.v2018_07_01.models.RouteFilterPaged[~azure.mgmt.network.v2018_07_01.models.RouteFilter] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all route filters in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilter + :rtype: + ~azure.mgmt.network.v2018_07_01.models.RouteFilterPaged[~azure.mgmt.network.v2018_07_01.models.RouteFilter] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_tables_operations.py new file mode 100644 index 000000000000..08c4a7472483 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/route_tables_operations.py @@ -0,0 +1,521 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteTablesOperations(object): + """RouteTablesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + def get( + self, resource_group_name, route_table_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteTable or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.RouteTable or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_table_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'RouteTable') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_table_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or updates a route table in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param parameters: Parameters supplied to the create or update route + table operation. + :type parameters: ~azure.mgmt.network.v2018_07_01.models.RouteTable + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteTable or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.RouteTable] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.RouteTable]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + + def _update_tags_initial( + self, resource_group_name, route_table_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, route_table_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a route table tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteTable or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.RouteTable] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.RouteTable]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all route tables in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteTable + :rtype: + ~azure.mgmt.network.v2018_07_01.models.RouteTablePaged[~azure.mgmt.network.v2018_07_01.models.RouteTable] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteTablePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteTablePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all route tables in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteTable + :rtype: + ~azure.mgmt.network.v2018_07_01.models.RouteTablePaged[~azure.mgmt.network.v2018_07_01.models.RouteTable] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteTablePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteTablePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/routes_operations.py new file mode 100644 index 000000000000..d6a3aa97684d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/routes_operations.py @@ -0,0 +1,365 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RoutesOperations(object): + """RoutesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route from a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + route_name=route_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + def get( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified route from a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Route or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.Route or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_table_name, route_name, route_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_parameters, 'Route') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Route', response) + if response.status_code == 201: + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_table_name, route_name, route_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route in the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param route_parameters: Parameters supplied to the create or update + route operation. + :type route_parameters: ~azure.mgmt.network.v2018_07_01.models.Route + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Route or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.Route] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.Route]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + route_name=route_name, + route_parameters=route_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + def list( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, **operation_config): + """Gets all routes in a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Route + :rtype: + ~azure.mgmt.network.v2018_07_01.models.RoutePaged[~azure.mgmt.network.v2018_07_01.models.Route] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RoutePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RoutePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/security_rules_operations.py new file mode 100644 index 000000000000..3c4769e26993 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/security_rules_operations.py @@ -0,0 +1,371 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class SecurityRulesOperations(object): + """SecurityRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + security_rule_name=security_rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + def get( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, **operation_config): + """Get the specified network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.SecurityRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_security_group_name, security_rule_name, security_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + if response.status_code == 201: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_security_group_name, security_rule_name, security_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a security rule in the specified network security + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param security_rule_parameters: Parameters supplied to the create or + update network security rule operation. + :type security_rule_parameters: + ~azure.mgmt.network.v2018_07_01.models.SecurityRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SecurityRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.SecurityRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + security_rule_name=security_rule_name, + security_rule_parameters=security_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + def list( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all security rules in a network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityRule + :rtype: + ~azure.mgmt.network.v2018_07_01.models.SecurityRulePaged[~azure.mgmt.network.v2018_07_01.models.SecurityRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/service_endpoint_policies_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/service_endpoint_policies_operations.py new file mode 100644 index 000000000000..d6645e2fc07a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/service_endpoint_policies_operations.py @@ -0,0 +1,527 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServiceEndpointPoliciesOperations(object): + """ServiceEndpointPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified service endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + def get( + self, resource_group_name, service_endpoint_policy_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified service Endpoint Policies in a specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceEndpointPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, service_endpoint_policy_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServiceEndpointPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + if response.status_code == 201: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_endpoint_policy_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a service Endpoint Policies. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param parameters: Parameters supplied to the create or update service + endpoint policy operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ServiceEndpointPolicy + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + + def _update_initial( + self, resource_group_name, service_endpoint_policy_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, service_endpoint_policy_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates service Endpoint Policies. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ServiceEndpointPolicy + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the service endpoint policies in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicy + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyPaged[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all service endpoint Policies in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicy + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyPaged[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/service_endpoint_policy_definitions_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/service_endpoint_policy_definitions_operations.py new file mode 100644 index 000000000000..ce2f3d8da9f0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/service_endpoint_policy_definitions_operations.py @@ -0,0 +1,379 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServiceEndpointPolicyDefinitionsOperations(object): + """ServiceEndpointPolicyDefinitionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified ServiceEndpoint policy definitions. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the Service Endpoint + Policy. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition. + :type service_endpoint_policy_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + service_endpoint_policy_definition_name=service_endpoint_policy_definition_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + def get( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, **operation_config): + """Get the specified service endpoint policy definitions from service + endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy name. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition name. + :type service_endpoint_policy_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceEndpointPolicyDefinition or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyDefinition + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + + def _create_or_update_initial( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, service_endpoint_policy_definitions, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(service_endpoint_policy_definitions, 'ServiceEndpointPolicyDefinition') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + if response.status_code == 201: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, service_endpoint_policy_definitions, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a service endpoint policy definition in the + specified service endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition name. + :type service_endpoint_policy_definition_name: str + :param service_endpoint_policy_definitions: Parameters supplied to the + create or update service endpoint policy operation. + :type service_endpoint_policy_definitions: + ~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyDefinition + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ServiceEndpointPolicyDefinition or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyDefinition] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyDefinition]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + service_endpoint_policy_definition_name=service_endpoint_policy_definition_name, + service_endpoint_policy_definitions=service_endpoint_policy_definitions, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + def list_by_resource_group( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, **operation_config): + """Gets all service endpoint policy definitions in a service end point + policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy name. + :type service_endpoint_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicyDefinition + :rtype: + ~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyDefinitionPaged[~azure.mgmt.network.v2018_07_01.models.ServiceEndpointPolicyDefinition] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServiceEndpointPolicyDefinitionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServiceEndpointPolicyDefinitionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/subnets_operations.py new file mode 100644 index 000000000000..45233bb75a6c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/subnets_operations.py @@ -0,0 +1,369 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class SubnetsOperations(object): + """SubnetsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified subnet. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + subnet_name=subnet_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + def get( + self, resource_group_name, virtual_network_name, subnet_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified subnet by virtual network and resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Subnet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.Subnet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, subnet_name, subnet_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(subnet_parameters, 'Subnet') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Subnet', response) + if response.status_code == 201: + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, subnet_name, subnet_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a subnet in the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param subnet_parameters: Parameters supplied to the create or update + subnet operation. + :type subnet_parameters: ~azure.mgmt.network.v2018_07_01.models.Subnet + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Subnet or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.Subnet] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.Subnet]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + subnet_name=subnet_name, + subnet_parameters=subnet_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + def list( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Gets all subnets in a virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Subnet + :rtype: + ~azure.mgmt.network.v2018_07_01.models.SubnetPaged[~azure.mgmt.network.v2018_07_01.models.Subnet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SubnetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SubnetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/usages_operations.py new file mode 100644 index 000000000000..516527bf7b76 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/usages_operations.py @@ -0,0 +1,105 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class UsagesOperations(object): + """UsagesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """List network usages for a subscription. + + :param location: The location where resource usage is queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Usage + :rtype: + ~azure.mgmt.network.v2018_07_01.models.UsagePaged[~azure.mgmt.network.v2018_07_01.models.Usage] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._ ]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.UsagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.UsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/usages'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_hubs_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_hubs_operations.py new file mode 100644 index 000000000000..85c31c50d683 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_hubs_operations.py @@ -0,0 +1,514 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualHubsOperations(object): + """VirtualHubsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def get( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualHub or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.VirtualHub or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_hub_name, virtual_hub_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_hub_parameters, 'VirtualHub') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_hub_name, virtual_hub_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VirtualHub resource if it doesn't exist else updates the + existing VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param virtual_hub_parameters: Parameters supplied to create or update + VirtualHub. + :type virtual_hub_parameters: + ~azure.mgmt.network.v2018_07_01.models.VirtualHub + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualHub or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualHub] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualHub]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + virtual_hub_parameters=virtual_hub_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_hub_name, tags=None, custom_headers=None, raw=False, **operation_config): + virtual_hub_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_hub_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_hub_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates VirtualHub tags. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualHub or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualHub] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualHub]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + + def _delete_initial( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualHubs in a resource group. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualHub + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualHubPaged[~azure.mgmt.network.v2018_07_01.models.VirtualHub] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualHubs in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualHub + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualHubPaged[~azure.mgmt.network.v2018_07_01.models.VirtualHub] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_gateway_connections_operations.py new file mode 100644 index 000000000000..a8b3c27974d7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_gateway_connections_operations.py @@ -0,0 +1,749 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkGatewayConnectionsOperations(object): + """VirtualNetworkGatewayConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network gateway connection in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param parameters: Parameters supplied to the create or update virtual + network gateway connection operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualNetworkGatewayConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + def get( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network gateway connection by resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkGatewayConnection or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _delete_initial( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network Gateway connection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_network_gateway_connection_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_network_gateway_connection_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual network gateway connection tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualNetworkGatewayConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _set_shared_key_initial( + self, resource_group_name, virtual_network_gateway_connection_name, value, id=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ConnectionSharedKey(id=id, value=value) + + # Construct URL + url = self.set_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionSharedKey') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSharedKey', response) + if response.status_code == 201: + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, value, id=None, custom_headers=None, raw=False, polling=True, **operation_config): + """The Put VirtualNetworkGatewayConnectionSharedKey operation sets the + virtual network gateway connection shared key for passed virtual + network gateway connection in the specified resource group through + Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection name. + :type virtual_network_gateway_connection_name: str + :param value: The virtual network connection shared key value. + :type value: str + :param id: Resource ID. + :type id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectionSharedKey or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ConnectionSharedKey] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ConnectionSharedKey]] + :raises: :class:`CloudError` + """ + raw_result = self._set_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + value=value, + id=id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey'} + + def get_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + """The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves + information about the specified virtual network gateway connection + shared key through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection shared key name. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionSharedKey or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.ConnectionSharedKey or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """The List VirtualNetworkGatewayConnections operation retrieves all the + virtual network gateways connections created. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkGatewayConnection + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionPaged[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnection] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkGatewayConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkGatewayConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections'} + + + def _reset_shared_key_initial( + self, resource_group_name, virtual_network_gateway_connection_name, key_length, custom_headers=None, raw=False, **operation_config): + parameters = models.ConnectionResetSharedKey(key_length=key_length) + + # Construct URL + url = self.reset_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionResetSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def reset_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, key_length, custom_headers=None, raw=False, polling=True, **operation_config): + """The VirtualNetworkGatewayConnectionResetSharedKey operation resets the + virtual network gateway connection shared key for passed virtual + network gateway connection in the specified resource group through + Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection reset shared key Name. + :type virtual_network_gateway_connection_name: str + :param key_length: The virtual network connection reset shared key + length, should between 1 and 128. + :type key_length: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ConnectionResetSharedKey or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.ConnectionResetSharedKey] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.ConnectionResetSharedKey]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + key_length=key_length, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionResetSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_gateways_operations.py new file mode 100644 index 000000000000..89b88f4f187f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_gateways_operations.py @@ -0,0 +1,1560 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkGatewaysOperations(object): + """VirtualNetworkGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network gateway in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to create or update virtual + network gateway operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + def get( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network gateway by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + + def _delete_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_network_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_network_gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual network gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual network gateways by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkGateway + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayPaged[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways'} + + def list_connections( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets all the connections in a virtual network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + VirtualNetworkGatewayConnectionListEntity + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionListEntityPaged[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGatewayConnectionListEntity] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_connections.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkGatewayConnectionListEntityPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkGatewayConnectionListEntityPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_connections.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections'} + + + def _reset_initial( + self, resource_group_name, virtual_network_gateway_name, gateway_vip=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reset.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if gateway_vip is not None: + query_parameters['gatewayVip'] = self._serialize.query("gateway_vip", gateway_vip, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def reset( + self, resource_group_name, virtual_network_gateway_name, gateway_vip=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Resets the primary of the virtual network gateway in the specified + resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param gateway_vip: Virtual network gateway vip address supplied to + the begin reset of the active-active feature enabled gateway. + :type gateway_vip: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + gateway_vip=gateway_vip, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset'} + + + def _generatevpnclientpackage_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.generatevpnclientpackage.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnClientParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generatevpnclientpackage( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates VPN client package for P2S client of the virtual network + gateway in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to the generate virtual network + gateway VPN client package operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.VpnClientParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._generatevpnclientpackage_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generatevpnclientpackage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage'} + + + def _generate_vpn_profile_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.generate_vpn_profile.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnClientParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generate_vpn_profile( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates VPN profile for P2S client of the virtual network gateway in + the specified resource group. Used for IKEV2 and radius based + authentication. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to the generate virtual network + gateway VPN client package operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.VpnClientParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._generate_vpn_profile_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generate_vpn_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile'} + + + def _get_vpn_profile_package_url_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_vpn_profile_package_url.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vpn_profile_package_url( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets pre-generated VPN profile for P2S client of the virtual network + gateway in the specified resource group. The profile needs to be + generated first using generateVpnProfile. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._get_vpn_profile_package_url_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vpn_profile_package_url.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl'} + + + def _get_bgp_peer_status_initial( + self, resource_group_name, virtual_network_gateway_name, peer=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_bgp_peer_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if peer is not None: + query_parameters['peer'] = self._serialize.query("peer", peer, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BgpPeerStatusListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_bgp_peer_status( + self, resource_group_name, virtual_network_gateway_name, peer=None, custom_headers=None, raw=False, polling=True, **operation_config): + """The GetBgpPeerStatus operation retrieves the status of all BGP peers. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param peer: The IP address of the peer to retrieve the status of. + :type peer: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns BgpPeerStatusListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.BgpPeerStatusListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.BgpPeerStatusListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_bgp_peer_status_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + peer=peer, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('BgpPeerStatusListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_bgp_peer_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus'} + + def supported_vpn_devices( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets a xml format representation for supported vpn devices. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.supported_vpn_devices.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + supported_vpn_devices.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices'} + + + def _get_learned_routes_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_learned_routes.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_learned_routes( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation retrieves a list of routes the virtual network gateway + has learned, including routes learned from BGP peers. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns GatewayRouteListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.GatewayRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.GatewayRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_learned_routes_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_learned_routes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes'} + + + def _get_advertised_routes_initial( + self, resource_group_name, virtual_network_gateway_name, peer, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_advertised_routes.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['peer'] = self._serialize.query("peer", peer, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_advertised_routes( + self, resource_group_name, virtual_network_gateway_name, peer, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation retrieves a list of routes the virtual network gateway + is advertising to the specified peer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param peer: The IP address of the peer + :type peer: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns GatewayRouteListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.GatewayRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.GatewayRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_advertised_routes_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + peer=peer, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_advertised_routes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes'} + + + def _set_vpnclient_ipsec_parameters_initial( + self, resource_group_name, virtual_network_gateway_name, vpnclient_ipsec_params, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.set_vpnclient_ipsec_parameters.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpnclient_ipsec_params, 'VpnClientIPsecParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_vpnclient_ipsec_parameters( + self, resource_group_name, virtual_network_gateway_name, vpnclient_ipsec_params, custom_headers=None, raw=False, polling=True, **operation_config): + """The Set VpnclientIpsecParameters operation sets the vpnclient ipsec + policy for P2S client of virtual network gateway in the specified + resource group through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param vpnclient_ipsec_params: Parameters supplied to the Begin Set + vpnclient ipsec parameters of Virtual Network Gateway P2S client + operation through Network resource provider. + :type vpnclient_ipsec_params: + ~azure.mgmt.network.v2018_07_01.models.VpnClientIPsecParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VpnClientIPsecParameters or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VpnClientIPsecParameters] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VpnClientIPsecParameters]] + :raises: :class:`CloudError` + """ + raw_result = self._set_vpnclient_ipsec_parameters_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + vpnclient_ipsec_params=vpnclient_ipsec_params, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_vpnclient_ipsec_parameters.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters'} + + + def _get_vpnclient_ipsec_parameters_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_vpnclient_ipsec_parameters.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vpnclient_ipsec_parameters( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The Get VpnclientIpsecParameters operation retrieves information about + the vpnclient ipsec policy for P2S client of virtual network gateway in + the specified resource group through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The virtual network gateway name. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VpnClientIPsecParameters or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VpnClientIPsecParameters] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VpnClientIPsecParameters]] + :raises: :class:`CloudError` + """ + raw_result = self._get_vpnclient_ipsec_parameters_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vpnclient_ipsec_parameters.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters'} + + def vpn_device_configuration_script( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + """Gets a xml format representation for vpn device configuration script. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection for which the configuration script + is generated. + :type virtual_network_gateway_connection_name: str + :param parameters: Parameters supplied to the generate vpn device + script operation. + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.VpnDeviceScriptParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.vpn_device_configuration_script.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + vpn_device_configuration_script.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_peerings_operations.py new file mode 100644 index 000000000000..02d3398ffdd4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_network_peerings_operations.py @@ -0,0 +1,368 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkPeeringsOperations(object): + """VirtualNetworkPeeringsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network peering. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the virtual network + peering. + :type virtual_network_peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + virtual_network_peering_name=virtual_network_peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + def get( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network peering. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the virtual network + peering. + :type virtual_network_peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkPeering or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeering + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, virtual_network_peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, virtual_network_peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the peering. + :type virtual_network_peering_name: str + :param virtual_network_peering_parameters: Parameters supplied to the + create or update virtual network peering operation. + :type virtual_network_peering_parameters: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkPeering + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + virtual_network_peering_name=virtual_network_peering_name, + virtual_network_peering_parameters=virtual_network_peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + def list( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual network peerings in a virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkPeering + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeeringPaged[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPeering] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkPeeringPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_networks_operations.py new file mode 100644 index 000000000000..81d7723e8b8a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_networks_operations.py @@ -0,0 +1,659 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworksOperations(object): + """VirtualNetworksOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + def get( + self, resource_group_name, virtual_network_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.VirtualNetwork or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetwork') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param parameters: Parameters supplied to the create or update virtual + network operation + :type parameters: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetwork + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetwork or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualNetwork] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualNetwork]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_network_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_network_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual network tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetwork or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualNetwork] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualNetwork]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all virtual networks in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetwork + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPaged[~azure.mgmt.network.v2018_07_01.models.VirtualNetwork] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual networks in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetwork + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkPaged[~azure.mgmt.network.v2018_07_01.models.VirtualNetwork] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks'} + + def check_ip_address_availability( + self, resource_group_name, virtual_network_name, ip_address=None, custom_headers=None, raw=False, **operation_config): + """Checks whether a private IP address is available for use. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param ip_address: The private IP address to be verified. + :type ip_address: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IPAddressAvailabilityResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_07_01.models.IPAddressAvailabilityResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.check_ip_address_availability.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if ip_address is not None: + query_parameters['ipAddress'] = self._serialize.query("ip_address", ip_address, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IPAddressAvailabilityResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_ip_address_availability.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability'} + + def list_usage( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Lists usage stats. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkUsage + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualNetworkUsagePaged[~azure.mgmt.network.v2018_07_01.models.VirtualNetworkUsage] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_usage.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkUsagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkUsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_usage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_wa_ns_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_wa_ns_operations.py new file mode 100644 index 000000000000..9075d8ab7751 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/virtual_wa_ns_operations.py @@ -0,0 +1,515 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualWANsOperations(object): + """VirtualWANsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def get( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being retrieved. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualWAN or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.VirtualWAN or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_wan_name, wan_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(wan_parameters, 'VirtualWAN') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_wan_name, wan_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VirtualWAN resource if it doesn't exist else updates the + existing VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being created or + updated. + :type virtual_wan_name: str + :param wan_parameters: Parameters supplied to create or update + VirtualWAN. + :type wan_parameters: + ~azure.mgmt.network.v2018_07_01.models.VirtualWAN + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualWAN or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualWAN] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualWAN]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + wan_parameters=wan_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_wan_name, tags=None, custom_headers=None, raw=False, **operation_config): + wan_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(wan_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_wan_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a VirtualWAN tags. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being updated. + :type virtual_wan_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualWAN or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VirtualWAN] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VirtualWAN]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + + def _delete_initial( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being deleted. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualWANs in a resource group. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualWAN + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualWANPaged[~azure.mgmt.network.v2018_07_01.models.VirtualWAN] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualWANs in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualWAN + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VirtualWANPaged[~azure.mgmt.network.v2018_07_01.models.VirtualWAN] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_connections_operations.py new file mode 100644 index 000000000000..b8dcb2e7a075 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_connections_operations.py @@ -0,0 +1,362 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnConnectionsOperations(object): + """VpnConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a vpn connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the vpn connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.VpnConnection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, gateway_name, connection_name, vpn_connection_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_connection_parameters, 'VpnConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, gateway_name, connection_name, vpn_connection_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a vpn connection to a scalable vpn gateway if it doesn't exist + else updates the existing connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the connection. + :type connection_name: str + :param vpn_connection_parameters: Parameters supplied to create or + Update a VPN Connection. + :type vpn_connection_parameters: + ~azure.mgmt.network.v2018_07_01.models.VpnConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VpnConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VpnConnection]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + connection_name=connection_name, + vpn_connection_parameters=vpn_connection_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + + def _delete_initial( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a vpn connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + connection_name=connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + def list_by_vpn_gateway( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + """Retrieves all vpn connections for a particular virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnConnection + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VpnConnectionPaged[~azure.mgmt.network.v2018_07_01.models.VpnConnection] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_vpn_gateway.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_vpn_gateway.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_gateways_operations.py new file mode 100644 index 000000000000..44cd7493a190 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_gateways_operations.py @@ -0,0 +1,514 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnGatewaysOperations(object): + """VpnGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.VpnGateway or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, gateway_name, vpn_gateway_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_gateway_parameters, 'VpnGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, gateway_name, vpn_gateway_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a virtual wan vpn gateway if it doesn't exist else updates the + existing gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param vpn_gateway_parameters: Parameters supplied to create or Update + a virtual wan vpn gateway. + :type vpn_gateway_parameters: + ~azure.mgmt.network.v2018_07_01.models.VpnGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VpnGateway]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + vpn_gateway_parameters=vpn_gateway_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + vpn_gateway_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_gateway_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates virtual wan vpn gateway tags. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VpnGateway]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _delete_initial( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnGateways in a resource group. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnGateway + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VpnGatewayPaged[~azure.mgmt.network.v2018_07_01.models.VpnGateway] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnGateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnGateway + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VpnGatewayPaged[~azure.mgmt.network.v2018_07_01.models.VpnGateway] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_sites_configuration_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_sites_configuration_operations.py new file mode 100644 index 000000000000..0354fa54fe45 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_sites_configuration_operations.py @@ -0,0 +1,134 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnSitesConfigurationOperations(object): + """VpnSitesConfigurationOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + + def _download_initial( + self, resource_group_name, virtual_wan_name, vpn_sites=None, output_blob_sas_url=None, custom_headers=None, raw=False, **operation_config): + request = models.GetVpnSitesConfigurationRequest(vpn_sites=vpn_sites, output_blob_sas_url=output_blob_sas_url) + + # Construct URL + url = self.download.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(request, 'GetVpnSitesConfigurationRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def download( + self, resource_group_name, virtual_wan_name, vpn_sites=None, output_blob_sas_url=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Gives the sas-url to download the configurations for vpn-sites in a + resource group. + + :param resource_group_name: The resource group name. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN for which + configuration of all vpn-sites is needed. + :type virtual_wan_name: str + :param vpn_sites: List of resource-ids of the vpn-sites for which + config is to be downloaded. + :type vpn_sites: + list[~azure.mgmt.network.v2018_07_01.models.SubResource] + :param output_blob_sas_url: The sas-url to download the configurations + for vpn-sites + :type output_blob_sas_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._download_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + vpn_sites=vpn_sites, + output_blob_sas_url=output_blob_sas_url, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + download.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_sites_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_sites_operations.py new file mode 100644 index 000000000000..6f43cf1024d9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/operations/vpn_sites_operations.py @@ -0,0 +1,515 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnSitesOperations(object): + """VpnSitesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def get( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VPNsite. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being retrieved. + :type vpn_site_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnSite or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_07_01.models.VpnSite or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + + def _create_or_update_initial( + self, resource_group_name, vpn_site_name, vpn_site_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_site_parameters, 'VpnSite') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, vpn_site_name, vpn_site_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VpnSite resource if it doesn't exist else updates the + existing VpnSite. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being created or + updated. + :type vpn_site_name: str + :param vpn_site_parameters: Parameters supplied to create or update + VpnSite. + :type vpn_site_parameters: + ~azure.mgmt.network.v2018_07_01.models.VpnSite + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnSite or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VpnSite] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VpnSite]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + vpn_site_name=vpn_site_name, + vpn_site_parameters=vpn_site_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + + def _update_tags_initial( + self, resource_group_name, vpn_site_name, tags=None, custom_headers=None, raw=False, **operation_config): + vpn_site_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_site_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, vpn_site_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates VpnSite tags. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being updated. + :type vpn_site_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnSite or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_07_01.models.VpnSite] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_07_01.models.VpnSite]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + vpn_site_name=vpn_site_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + + def _delete_initial( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VpnSite. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being deleted. + :type vpn_site_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vpn_site_name=vpn_site_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the vpnSites in a resource group. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnSite + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VpnSitePaged[~azure.mgmt.network.v2018_07_01.models.VpnSite] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnSitePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnSitePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnSites in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnSite + :rtype: + ~azure.mgmt.network.v2018_07_01.models.VpnSitePaged[~azure.mgmt.network.v2018_07_01.models.VpnSite] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnSitePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnSitePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_07_01/version.py b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/version.py new file mode 100644 index 000000000000..53a203f32aaf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_07_01/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "" + diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/__init__.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/__init__.py new file mode 100644 index 000000000000..2a2f032f38aa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/__init__.py @@ -0,0 +1,18 @@ +# 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 .network_management_client import NetworkManagementClient +from .version import VERSION + +__all__ = ['NetworkManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/__init__.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/__init__.py new file mode 100644 index 000000000000..4c5a7e5cb869 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/__init__.py @@ -0,0 +1,1100 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .network_interface_tap_configuration_py3 import NetworkInterfaceTapConfiguration + from .sub_resource_py3 import SubResource + from .application_security_group_py3 import ApplicationSecurityGroup + from .security_rule_py3 import SecurityRule + from .endpoint_service_py3 import EndpointService + from .interface_endpoint_py3 import InterfaceEndpoint + from .network_interface_dns_settings_py3 import NetworkInterfaceDnsSettings + from .network_interface_py3 import NetworkInterface + from .network_security_group_py3 import NetworkSecurityGroup + from .route_py3 import Route + from .route_table_py3 import RouteTable + from .service_endpoint_properties_format_py3 import ServiceEndpointPropertiesFormat + from .service_endpoint_policy_definition_py3 import ServiceEndpointPolicyDefinition + from .service_endpoint_policy_py3 import ServiceEndpointPolicy + from .public_ip_address_sku_py3 import PublicIPAddressSku + from .public_ip_address_dns_settings_py3 import PublicIPAddressDnsSettings + from .ip_tag_py3 import IpTag + from .public_ip_address_py3 import PublicIPAddress + from .ip_configuration_py3 import IPConfiguration + from .ip_configuration_profile_py3 import IPConfigurationProfile + from .resource_navigation_link_py3 import ResourceNavigationLink + from .service_association_link_py3 import ServiceAssociationLink + from .delegation_py3 import Delegation + from .subnet_py3 import Subnet + from .frontend_ip_configuration_py3 import FrontendIPConfiguration + from .virtual_network_tap_py3 import VirtualNetworkTap + from .backend_address_pool_py3 import BackendAddressPool + from .inbound_nat_rule_py3 import InboundNatRule + from .network_interface_ip_configuration_py3 import NetworkInterfaceIPConfiguration + from .application_gateway_backend_address_py3 import ApplicationGatewayBackendAddress + from .application_gateway_backend_address_pool_py3 import ApplicationGatewayBackendAddressPool + from .application_gateway_connection_draining_py3 import ApplicationGatewayConnectionDraining + from .application_gateway_backend_http_settings_py3 import ApplicationGatewayBackendHttpSettings + from .application_gateway_backend_health_server_py3 import ApplicationGatewayBackendHealthServer + from .application_gateway_backend_health_http_settings_py3 import ApplicationGatewayBackendHealthHttpSettings + from .application_gateway_backend_health_pool_py3 import ApplicationGatewayBackendHealthPool + from .application_gateway_backend_health_py3 import ApplicationGatewayBackendHealth + from .application_gateway_sku_py3 import ApplicationGatewaySku + from .application_gateway_ssl_policy_py3 import ApplicationGatewaySslPolicy + from .application_gateway_ip_configuration_py3 import ApplicationGatewayIPConfiguration + from .application_gateway_authentication_certificate_py3 import ApplicationGatewayAuthenticationCertificate + from .application_gateway_trusted_root_certificate_py3 import ApplicationGatewayTrustedRootCertificate + from .application_gateway_ssl_certificate_py3 import ApplicationGatewaySslCertificate + from .application_gateway_frontend_ip_configuration_py3 import ApplicationGatewayFrontendIPConfiguration + from .application_gateway_frontend_port_py3 import ApplicationGatewayFrontendPort + from .application_gateway_http_listener_py3 import ApplicationGatewayHttpListener + from .application_gateway_path_rule_py3 import ApplicationGatewayPathRule + from .application_gateway_probe_health_response_match_py3 import ApplicationGatewayProbeHealthResponseMatch + from .application_gateway_probe_py3 import ApplicationGatewayProbe + from .application_gateway_request_routing_rule_py3 import ApplicationGatewayRequestRoutingRule + from .application_gateway_redirect_configuration_py3 import ApplicationGatewayRedirectConfiguration + from .application_gateway_url_path_map_py3 import ApplicationGatewayUrlPathMap + from .application_gateway_firewall_disabled_rule_group_py3 import ApplicationGatewayFirewallDisabledRuleGroup + from .application_gateway_web_application_firewall_configuration_py3 import ApplicationGatewayWebApplicationFirewallConfiguration + from .application_gateway_autoscale_configuration_py3 import ApplicationGatewayAutoscaleConfiguration + from .application_gateway_py3 import ApplicationGateway + from .application_gateway_firewall_rule_py3 import ApplicationGatewayFirewallRule + from .application_gateway_firewall_rule_group_py3 import ApplicationGatewayFirewallRuleGroup + from .application_gateway_firewall_rule_set_py3 import ApplicationGatewayFirewallRuleSet + from .application_gateway_available_waf_rule_sets_result_py3 import ApplicationGatewayAvailableWafRuleSetsResult + from .application_gateway_available_ssl_options_py3 import ApplicationGatewayAvailableSslOptions + from .application_gateway_ssl_predefined_policy_py3 import ApplicationGatewaySslPredefinedPolicy + from .resource_py3 import Resource + from .tags_object_py3 import TagsObject + from .available_delegation_py3 import AvailableDelegation + from .azure_firewall_ip_configuration_py3 import AzureFirewallIPConfiguration + from .azure_firewall_rc_action_py3 import AzureFirewallRCAction + from .azure_firewall_application_rule_protocol_py3 import AzureFirewallApplicationRuleProtocol + from .azure_firewall_application_rule_py3 import AzureFirewallApplicationRule + from .azure_firewall_application_rule_collection_py3 import AzureFirewallApplicationRuleCollection + from .azure_firewall_nat_rc_action_py3 import AzureFirewallNatRCAction + from .azure_firewall_nat_rule_py3 import AzureFirewallNatRule + from .azure_firewall_nat_rule_collection_py3 import AzureFirewallNatRuleCollection + from .azure_firewall_network_rule_py3 import AzureFirewallNetworkRule + from .azure_firewall_network_rule_collection_py3 import AzureFirewallNetworkRuleCollection + from .azure_firewall_py3 import AzureFirewall + from .azure_firewall_fqdn_tag_py3 import AzureFirewallFqdnTag + from .dns_name_availability_result_py3 import DnsNameAvailabilityResult + from .ddos_protection_plan_py3 import DdosProtectionPlan + from .endpoint_service_result_py3 import EndpointServiceResult + from .express_route_circuit_authorization_py3 import ExpressRouteCircuitAuthorization + from .express_route_circuit_peering_config_py3 import ExpressRouteCircuitPeeringConfig + from .route_filter_rule_py3 import RouteFilterRule + from .express_route_circuit_stats_py3 import ExpressRouteCircuitStats + from .express_route_connection_id_py3 import ExpressRouteConnectionId + from .express_route_circuit_connection_py3 import ExpressRouteCircuitConnection + from .express_route_circuit_peering_py3 import ExpressRouteCircuitPeering + from .route_filter_py3 import RouteFilter + from .ipv6_express_route_circuit_peering_config_py3 import Ipv6ExpressRouteCircuitPeeringConfig + from .express_route_circuit_sku_py3 import ExpressRouteCircuitSku + from .express_route_circuit_service_provider_properties_py3 import ExpressRouteCircuitServiceProviderProperties + from .express_route_circuit_py3 import ExpressRouteCircuit + from .express_route_circuit_arp_table_py3 import ExpressRouteCircuitArpTable + from .express_route_circuits_arp_table_list_result_py3 import ExpressRouteCircuitsArpTableListResult + from .express_route_circuit_routes_table_py3 import ExpressRouteCircuitRoutesTable + from .express_route_circuits_routes_table_list_result_py3 import ExpressRouteCircuitsRoutesTableListResult + from .express_route_circuit_routes_table_summary_py3 import ExpressRouteCircuitRoutesTableSummary + from .express_route_circuits_routes_table_summary_list_result_py3 import ExpressRouteCircuitsRoutesTableSummaryListResult + from .express_route_service_provider_bandwidths_offered_py3 import ExpressRouteServiceProviderBandwidthsOffered + from .express_route_service_provider_py3 import ExpressRouteServiceProvider + from .express_route_cross_connection_routes_table_summary_py3 import ExpressRouteCrossConnectionRoutesTableSummary + from .express_route_cross_connections_routes_table_summary_list_result_py3 import ExpressRouteCrossConnectionsRoutesTableSummaryListResult + from .express_route_circuit_reference_py3 import ExpressRouteCircuitReference + from .express_route_cross_connection_peering_py3 import ExpressRouteCrossConnectionPeering + from .express_route_cross_connection_py3 import ExpressRouteCrossConnection + from .virtual_hub_id_py3 import VirtualHubId + from .express_route_circuit_peering_id_py3 import ExpressRouteCircuitPeeringId + from .express_route_gateway_properties_auto_scale_configuration_bounds_py3 import ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds + from .express_route_gateway_properties_auto_scale_configuration_py3 import ExpressRouteGatewayPropertiesAutoScaleConfiguration + from .express_route_connection_py3 import ExpressRouteConnection + from .express_route_gateway_py3 import ExpressRouteGateway + from .express_route_gateway_list_py3 import ExpressRouteGatewayList + from .express_route_connection_list_py3 import ExpressRouteConnectionList + from .load_balancer_sku_py3 import LoadBalancerSku + from .load_balancing_rule_py3 import LoadBalancingRule + from .probe_py3 import Probe + from .inbound_nat_pool_py3 import InboundNatPool + from .outbound_rule_py3 import OutboundRule + from .load_balancer_py3 import LoadBalancer + from .error_details_py3 import ErrorDetails + from .error_py3 import Error, ErrorException + from .azure_async_operation_result_py3 import AzureAsyncOperationResult + from .effective_network_security_group_association_py3 import EffectiveNetworkSecurityGroupAssociation + from .effective_network_security_rule_py3 import EffectiveNetworkSecurityRule + from .effective_network_security_group_py3 import EffectiveNetworkSecurityGroup + from .effective_network_security_group_list_result_py3 import EffectiveNetworkSecurityGroupListResult + from .effective_route_py3 import EffectiveRoute + from .effective_route_list_result_py3 import EffectiveRouteListResult + from .container_network_interface_configuration_py3 import ContainerNetworkInterfaceConfiguration + from .container_py3 import Container + from .container_network_interface_ip_configuration_py3 import ContainerNetworkInterfaceIpConfiguration + from .container_network_interface_py3 import ContainerNetworkInterface + from .network_profile_py3 import NetworkProfile + from .error_response_py3 import ErrorResponse, ErrorResponseException + from .network_watcher_py3 import NetworkWatcher + from .topology_parameters_py3 import TopologyParameters + from .topology_association_py3 import TopologyAssociation + from .topology_resource_py3 import TopologyResource + from .topology_py3 import Topology + from .verification_ip_flow_parameters_py3 import VerificationIPFlowParameters + from .verification_ip_flow_result_py3 import VerificationIPFlowResult + from .next_hop_parameters_py3 import NextHopParameters + from .next_hop_result_py3 import NextHopResult + from .security_group_view_parameters_py3 import SecurityGroupViewParameters + from .network_interface_association_py3 import NetworkInterfaceAssociation + from .subnet_association_py3 import SubnetAssociation + from .security_rule_associations_py3 import SecurityRuleAssociations + from .security_group_network_interface_py3 import SecurityGroupNetworkInterface + from .security_group_view_result_py3 import SecurityGroupViewResult + from .packet_capture_storage_location_py3 import PacketCaptureStorageLocation + from .packet_capture_filter_py3 import PacketCaptureFilter + from .packet_capture_parameters_py3 import PacketCaptureParameters + from .packet_capture_py3 import PacketCapture + from .packet_capture_result_py3 import PacketCaptureResult + from .packet_capture_query_status_result_py3 import PacketCaptureQueryStatusResult + from .troubleshooting_parameters_py3 import TroubleshootingParameters + from .query_troubleshooting_parameters_py3 import QueryTroubleshootingParameters + from .troubleshooting_recommended_actions_py3 import TroubleshootingRecommendedActions + from .troubleshooting_details_py3 import TroubleshootingDetails + from .troubleshooting_result_py3 import TroubleshootingResult + from .retention_policy_parameters_py3 import RetentionPolicyParameters + from .flow_log_status_parameters_py3 import FlowLogStatusParameters + from .traffic_analytics_configuration_properties_py3 import TrafficAnalyticsConfigurationProperties + from .traffic_analytics_properties_py3 import TrafficAnalyticsProperties + from .flow_log_information_py3 import FlowLogInformation + from .connectivity_source_py3 import ConnectivitySource + from .connectivity_destination_py3 import ConnectivityDestination + from .http_header_py3 import HTTPHeader + from .http_configuration_py3 import HTTPConfiguration + from .protocol_configuration_py3 import ProtocolConfiguration + from .connectivity_parameters_py3 import ConnectivityParameters + from .connectivity_issue_py3 import ConnectivityIssue + from .connectivity_hop_py3 import ConnectivityHop + from .connectivity_information_py3 import ConnectivityInformation + from .azure_reachability_report_location_py3 import AzureReachabilityReportLocation + from .azure_reachability_report_parameters_py3 import AzureReachabilityReportParameters + from .azure_reachability_report_latency_info_py3 import AzureReachabilityReportLatencyInfo + from .azure_reachability_report_item_py3 import AzureReachabilityReportItem + from .azure_reachability_report_py3 import AzureReachabilityReport + from .available_providers_list_parameters_py3 import AvailableProvidersListParameters + from .available_providers_list_city_py3 import AvailableProvidersListCity + from .available_providers_list_state_py3 import AvailableProvidersListState + from .available_providers_list_country_py3 import AvailableProvidersListCountry + from .available_providers_list_py3 import AvailableProvidersList + from .connection_monitor_source_py3 import ConnectionMonitorSource + from .connection_monitor_destination_py3 import ConnectionMonitorDestination + from .connection_monitor_parameters_py3 import ConnectionMonitorParameters + from .connection_monitor_py3 import ConnectionMonitor + from .connection_monitor_result_py3 import ConnectionMonitorResult + from .connection_state_snapshot_py3 import ConnectionStateSnapshot + from .connection_monitor_query_result_py3 import ConnectionMonitorQueryResult + from .traffic_query_py3 import TrafficQuery + from .network_configuration_diagnostic_parameters_py3 import NetworkConfigurationDiagnosticParameters + from .matched_rule_py3 import MatchedRule + from .network_security_rules_evaluation_result_py3 import NetworkSecurityRulesEvaluationResult + from .evaluated_network_security_group_py3 import EvaluatedNetworkSecurityGroup + from .network_security_group_result_py3 import NetworkSecurityGroupResult + from .network_configuration_diagnostic_result_py3 import NetworkConfigurationDiagnosticResult + from .network_configuration_diagnostic_response_py3 import NetworkConfigurationDiagnosticResponse + from .operation_display_py3 import OperationDisplay + from .availability_py3 import Availability + from .dimension_py3 import Dimension + from .metric_specification_py3 import MetricSpecification + from .log_specification_py3 import LogSpecification + from .operation_properties_format_service_specification_py3 import OperationPropertiesFormatServiceSpecification + from .operation_py3 import Operation + from .public_ip_prefix_sku_py3 import PublicIPPrefixSku + from .referenced_public_ip_address_py3 import ReferencedPublicIpAddress + from .public_ip_prefix_py3 import PublicIPPrefix + from .patch_route_filter_rule_py3 import PatchRouteFilterRule + from .patch_route_filter_py3 import PatchRouteFilter + from .bgp_community_py3 import BGPCommunity + from .bgp_service_community_py3 import BgpServiceCommunity + from .usage_name_py3 import UsageName + from .usage_py3 import Usage + from .address_space_py3 import AddressSpace + from .virtual_network_peering_py3 import VirtualNetworkPeering + from .dhcp_options_py3 import DhcpOptions + from .virtual_network_py3 import VirtualNetwork + from .ip_address_availability_result_py3 import IPAddressAvailabilityResult + from .virtual_network_usage_name_py3 import VirtualNetworkUsageName + from .virtual_network_usage_py3 import VirtualNetworkUsage + from .virtual_network_gateway_ip_configuration_py3 import VirtualNetworkGatewayIPConfiguration + from .virtual_network_gateway_sku_py3 import VirtualNetworkGatewaySku + from .vpn_client_root_certificate_py3 import VpnClientRootCertificate + from .vpn_client_revoked_certificate_py3 import VpnClientRevokedCertificate + from .ipsec_policy_py3 import IpsecPolicy + from .vpn_client_configuration_py3 import VpnClientConfiguration + from .bgp_settings_py3 import BgpSettings + from .bgp_peer_status_py3 import BgpPeerStatus + from .gateway_route_py3 import GatewayRoute + from .virtual_network_gateway_py3 import VirtualNetworkGateway + from .vpn_client_parameters_py3 import VpnClientParameters + from .bgp_peer_status_list_result_py3 import BgpPeerStatusListResult + from .gateway_route_list_result_py3 import GatewayRouteListResult + from .tunnel_connection_health_py3 import TunnelConnectionHealth + from .local_network_gateway_py3 import LocalNetworkGateway + from .virtual_network_gateway_connection_py3 import VirtualNetworkGatewayConnection + from .connection_reset_shared_key_py3 import ConnectionResetSharedKey + from .connection_shared_key_py3 import ConnectionSharedKey + from .vpn_client_ipsec_parameters_py3 import VpnClientIPsecParameters + from .virtual_network_connection_gateway_reference_py3 import VirtualNetworkConnectionGatewayReference + from .virtual_network_gateway_connection_list_entity_py3 import VirtualNetworkGatewayConnectionListEntity + from .vpn_device_script_parameters_py3 import VpnDeviceScriptParameters + from .p2_svpn_server_config_vpn_client_root_certificate_py3 import P2SVpnServerConfigVpnClientRootCertificate + from .p2_svpn_server_config_vpn_client_revoked_certificate_py3 import P2SVpnServerConfigVpnClientRevokedCertificate + from .p2_svpn_server_config_radius_server_root_certificate_py3 import P2SVpnServerConfigRadiusServerRootCertificate + from .p2_svpn_server_config_radius_client_root_certificate_py3 import P2SVpnServerConfigRadiusClientRootCertificate + from .p2_svpn_server_configuration_py3 import P2SVpnServerConfiguration + from .virtual_wan_py3 import VirtualWAN + from .device_properties_py3 import DeviceProperties + from .vpn_site_py3 import VpnSite + from .get_vpn_sites_configuration_request_py3 import GetVpnSitesConfigurationRequest + from .hub_virtual_network_connection_py3 import HubVirtualNetworkConnection + from .virtual_hub_route_py3 import VirtualHubRoute + from .virtual_hub_route_table_py3 import VirtualHubRouteTable + from .virtual_hub_py3 import VirtualHub + from .vpn_connection_py3 import VpnConnection + from .vpn_gateway_py3 import VpnGateway + from .vpn_site_id_py3 import VpnSiteId + from .virtual_wan_security_provider_py3 import VirtualWanSecurityProvider + from .virtual_wan_security_providers_py3 import VirtualWanSecurityProviders + from .vpn_client_connection_health_py3 import VpnClientConnectionHealth + from .p2_svpn_gateway_py3 import P2SVpnGateway + from .p2_svpn_profile_parameters_py3 import P2SVpnProfileParameters + from .vpn_profile_response_py3 import VpnProfileResponse +except (SyntaxError, ImportError): + from .network_interface_tap_configuration import NetworkInterfaceTapConfiguration + from .sub_resource import SubResource + from .application_security_group import ApplicationSecurityGroup + from .security_rule import SecurityRule + from .endpoint_service import EndpointService + from .interface_endpoint import InterfaceEndpoint + from .network_interface_dns_settings import NetworkInterfaceDnsSettings + from .network_interface import NetworkInterface + from .network_security_group import NetworkSecurityGroup + from .route import Route + from .route_table import RouteTable + from .service_endpoint_properties_format import ServiceEndpointPropertiesFormat + from .service_endpoint_policy_definition import ServiceEndpointPolicyDefinition + from .service_endpoint_policy import ServiceEndpointPolicy + from .public_ip_address_sku import PublicIPAddressSku + from .public_ip_address_dns_settings import PublicIPAddressDnsSettings + from .ip_tag import IpTag + from .public_ip_address import PublicIPAddress + from .ip_configuration import IPConfiguration + from .ip_configuration_profile import IPConfigurationProfile + from .resource_navigation_link import ResourceNavigationLink + from .service_association_link import ServiceAssociationLink + from .delegation import Delegation + from .subnet import Subnet + from .frontend_ip_configuration import FrontendIPConfiguration + from .virtual_network_tap import VirtualNetworkTap + from .backend_address_pool import BackendAddressPool + from .inbound_nat_rule import InboundNatRule + from .network_interface_ip_configuration import NetworkInterfaceIPConfiguration + from .application_gateway_backend_address import ApplicationGatewayBackendAddress + from .application_gateway_backend_address_pool import ApplicationGatewayBackendAddressPool + from .application_gateway_connection_draining import ApplicationGatewayConnectionDraining + from .application_gateway_backend_http_settings import ApplicationGatewayBackendHttpSettings + from .application_gateway_backend_health_server import ApplicationGatewayBackendHealthServer + from .application_gateway_backend_health_http_settings import ApplicationGatewayBackendHealthHttpSettings + from .application_gateway_backend_health_pool import ApplicationGatewayBackendHealthPool + from .application_gateway_backend_health import ApplicationGatewayBackendHealth + from .application_gateway_sku import ApplicationGatewaySku + from .application_gateway_ssl_policy import ApplicationGatewaySslPolicy + from .application_gateway_ip_configuration import ApplicationGatewayIPConfiguration + from .application_gateway_authentication_certificate import ApplicationGatewayAuthenticationCertificate + from .application_gateway_trusted_root_certificate import ApplicationGatewayTrustedRootCertificate + from .application_gateway_ssl_certificate import ApplicationGatewaySslCertificate + from .application_gateway_frontend_ip_configuration import ApplicationGatewayFrontendIPConfiguration + from .application_gateway_frontend_port import ApplicationGatewayFrontendPort + from .application_gateway_http_listener import ApplicationGatewayHttpListener + from .application_gateway_path_rule import ApplicationGatewayPathRule + from .application_gateway_probe_health_response_match import ApplicationGatewayProbeHealthResponseMatch + from .application_gateway_probe import ApplicationGatewayProbe + from .application_gateway_request_routing_rule import ApplicationGatewayRequestRoutingRule + from .application_gateway_redirect_configuration import ApplicationGatewayRedirectConfiguration + from .application_gateway_url_path_map import ApplicationGatewayUrlPathMap + from .application_gateway_firewall_disabled_rule_group import ApplicationGatewayFirewallDisabledRuleGroup + from .application_gateway_web_application_firewall_configuration import ApplicationGatewayWebApplicationFirewallConfiguration + from .application_gateway_autoscale_configuration import ApplicationGatewayAutoscaleConfiguration + from .application_gateway import ApplicationGateway + from .application_gateway_firewall_rule import ApplicationGatewayFirewallRule + from .application_gateway_firewall_rule_group import ApplicationGatewayFirewallRuleGroup + from .application_gateway_firewall_rule_set import ApplicationGatewayFirewallRuleSet + from .application_gateway_available_waf_rule_sets_result import ApplicationGatewayAvailableWafRuleSetsResult + from .application_gateway_available_ssl_options import ApplicationGatewayAvailableSslOptions + from .application_gateway_ssl_predefined_policy import ApplicationGatewaySslPredefinedPolicy + from .resource import Resource + from .tags_object import TagsObject + from .available_delegation import AvailableDelegation + from .azure_firewall_ip_configuration import AzureFirewallIPConfiguration + from .azure_firewall_rc_action import AzureFirewallRCAction + from .azure_firewall_application_rule_protocol import AzureFirewallApplicationRuleProtocol + from .azure_firewall_application_rule import AzureFirewallApplicationRule + from .azure_firewall_application_rule_collection import AzureFirewallApplicationRuleCollection + from .azure_firewall_nat_rc_action import AzureFirewallNatRCAction + from .azure_firewall_nat_rule import AzureFirewallNatRule + from .azure_firewall_nat_rule_collection import AzureFirewallNatRuleCollection + from .azure_firewall_network_rule import AzureFirewallNetworkRule + from .azure_firewall_network_rule_collection import AzureFirewallNetworkRuleCollection + from .azure_firewall import AzureFirewall + from .azure_firewall_fqdn_tag import AzureFirewallFqdnTag + from .dns_name_availability_result import DnsNameAvailabilityResult + from .ddos_protection_plan import DdosProtectionPlan + from .endpoint_service_result import EndpointServiceResult + from .express_route_circuit_authorization import ExpressRouteCircuitAuthorization + from .express_route_circuit_peering_config import ExpressRouteCircuitPeeringConfig + from .route_filter_rule import RouteFilterRule + from .express_route_circuit_stats import ExpressRouteCircuitStats + from .express_route_connection_id import ExpressRouteConnectionId + from .express_route_circuit_connection import ExpressRouteCircuitConnection + from .express_route_circuit_peering import ExpressRouteCircuitPeering + from .route_filter import RouteFilter + from .ipv6_express_route_circuit_peering_config import Ipv6ExpressRouteCircuitPeeringConfig + from .express_route_circuit_sku import ExpressRouteCircuitSku + from .express_route_circuit_service_provider_properties import ExpressRouteCircuitServiceProviderProperties + from .express_route_circuit import ExpressRouteCircuit + from .express_route_circuit_arp_table import ExpressRouteCircuitArpTable + from .express_route_circuits_arp_table_list_result import ExpressRouteCircuitsArpTableListResult + from .express_route_circuit_routes_table import ExpressRouteCircuitRoutesTable + from .express_route_circuits_routes_table_list_result import ExpressRouteCircuitsRoutesTableListResult + from .express_route_circuit_routes_table_summary import ExpressRouteCircuitRoutesTableSummary + from .express_route_circuits_routes_table_summary_list_result import ExpressRouteCircuitsRoutesTableSummaryListResult + from .express_route_service_provider_bandwidths_offered import ExpressRouteServiceProviderBandwidthsOffered + from .express_route_service_provider import ExpressRouteServiceProvider + from .express_route_cross_connection_routes_table_summary import ExpressRouteCrossConnectionRoutesTableSummary + from .express_route_cross_connections_routes_table_summary_list_result import ExpressRouteCrossConnectionsRoutesTableSummaryListResult + from .express_route_circuit_reference import ExpressRouteCircuitReference + from .express_route_cross_connection_peering import ExpressRouteCrossConnectionPeering + from .express_route_cross_connection import ExpressRouteCrossConnection + from .virtual_hub_id import VirtualHubId + from .express_route_circuit_peering_id import ExpressRouteCircuitPeeringId + from .express_route_gateway_properties_auto_scale_configuration_bounds import ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds + from .express_route_gateway_properties_auto_scale_configuration import ExpressRouteGatewayPropertiesAutoScaleConfiguration + from .express_route_connection import ExpressRouteConnection + from .express_route_gateway import ExpressRouteGateway + from .express_route_gateway_list import ExpressRouteGatewayList + from .express_route_connection_list import ExpressRouteConnectionList + from .load_balancer_sku import LoadBalancerSku + from .load_balancing_rule import LoadBalancingRule + from .probe import Probe + from .inbound_nat_pool import InboundNatPool + from .outbound_rule import OutboundRule + from .load_balancer import LoadBalancer + from .error_details import ErrorDetails + from .error import Error, ErrorException + from .azure_async_operation_result import AzureAsyncOperationResult + from .effective_network_security_group_association import EffectiveNetworkSecurityGroupAssociation + from .effective_network_security_rule import EffectiveNetworkSecurityRule + from .effective_network_security_group import EffectiveNetworkSecurityGroup + from .effective_network_security_group_list_result import EffectiveNetworkSecurityGroupListResult + from .effective_route import EffectiveRoute + from .effective_route_list_result import EffectiveRouteListResult + from .container_network_interface_configuration import ContainerNetworkInterfaceConfiguration + from .container import Container + from .container_network_interface_ip_configuration import ContainerNetworkInterfaceIpConfiguration + from .container_network_interface import ContainerNetworkInterface + from .network_profile import NetworkProfile + from .error_response import ErrorResponse, ErrorResponseException + from .network_watcher import NetworkWatcher + from .topology_parameters import TopologyParameters + from .topology_association import TopologyAssociation + from .topology_resource import TopologyResource + from .topology import Topology + from .verification_ip_flow_parameters import VerificationIPFlowParameters + from .verification_ip_flow_result import VerificationIPFlowResult + from .next_hop_parameters import NextHopParameters + from .next_hop_result import NextHopResult + from .security_group_view_parameters import SecurityGroupViewParameters + from .network_interface_association import NetworkInterfaceAssociation + from .subnet_association import SubnetAssociation + from .security_rule_associations import SecurityRuleAssociations + from .security_group_network_interface import SecurityGroupNetworkInterface + from .security_group_view_result import SecurityGroupViewResult + from .packet_capture_storage_location import PacketCaptureStorageLocation + from .packet_capture_filter import PacketCaptureFilter + from .packet_capture_parameters import PacketCaptureParameters + from .packet_capture import PacketCapture + from .packet_capture_result import PacketCaptureResult + from .packet_capture_query_status_result import PacketCaptureQueryStatusResult + from .troubleshooting_parameters import TroubleshootingParameters + from .query_troubleshooting_parameters import QueryTroubleshootingParameters + from .troubleshooting_recommended_actions import TroubleshootingRecommendedActions + from .troubleshooting_details import TroubleshootingDetails + from .troubleshooting_result import TroubleshootingResult + from .retention_policy_parameters import RetentionPolicyParameters + from .flow_log_status_parameters import FlowLogStatusParameters + from .traffic_analytics_configuration_properties import TrafficAnalyticsConfigurationProperties + from .traffic_analytics_properties import TrafficAnalyticsProperties + from .flow_log_information import FlowLogInformation + from .connectivity_source import ConnectivitySource + from .connectivity_destination import ConnectivityDestination + from .http_header import HTTPHeader + from .http_configuration import HTTPConfiguration + from .protocol_configuration import ProtocolConfiguration + from .connectivity_parameters import ConnectivityParameters + from .connectivity_issue import ConnectivityIssue + from .connectivity_hop import ConnectivityHop + from .connectivity_information import ConnectivityInformation + from .azure_reachability_report_location import AzureReachabilityReportLocation + from .azure_reachability_report_parameters import AzureReachabilityReportParameters + from .azure_reachability_report_latency_info import AzureReachabilityReportLatencyInfo + from .azure_reachability_report_item import AzureReachabilityReportItem + from .azure_reachability_report import AzureReachabilityReport + from .available_providers_list_parameters import AvailableProvidersListParameters + from .available_providers_list_city import AvailableProvidersListCity + from .available_providers_list_state import AvailableProvidersListState + from .available_providers_list_country import AvailableProvidersListCountry + from .available_providers_list import AvailableProvidersList + from .connection_monitor_source import ConnectionMonitorSource + from .connection_monitor_destination import ConnectionMonitorDestination + from .connection_monitor_parameters import ConnectionMonitorParameters + from .connection_monitor import ConnectionMonitor + from .connection_monitor_result import ConnectionMonitorResult + from .connection_state_snapshot import ConnectionStateSnapshot + from .connection_monitor_query_result import ConnectionMonitorQueryResult + from .traffic_query import TrafficQuery + from .network_configuration_diagnostic_parameters import NetworkConfigurationDiagnosticParameters + from .matched_rule import MatchedRule + from .network_security_rules_evaluation_result import NetworkSecurityRulesEvaluationResult + from .evaluated_network_security_group import EvaluatedNetworkSecurityGroup + from .network_security_group_result import NetworkSecurityGroupResult + from .network_configuration_diagnostic_result import NetworkConfigurationDiagnosticResult + from .network_configuration_diagnostic_response import NetworkConfigurationDiagnosticResponse + from .operation_display import OperationDisplay + from .availability import Availability + from .dimension import Dimension + from .metric_specification import MetricSpecification + from .log_specification import LogSpecification + from .operation_properties_format_service_specification import OperationPropertiesFormatServiceSpecification + from .operation import Operation + from .public_ip_prefix_sku import PublicIPPrefixSku + from .referenced_public_ip_address import ReferencedPublicIpAddress + from .public_ip_prefix import PublicIPPrefix + from .patch_route_filter_rule import PatchRouteFilterRule + from .patch_route_filter import PatchRouteFilter + from .bgp_community import BGPCommunity + from .bgp_service_community import BgpServiceCommunity + from .usage_name import UsageName + from .usage import Usage + from .address_space import AddressSpace + from .virtual_network_peering import VirtualNetworkPeering + from .dhcp_options import DhcpOptions + from .virtual_network import VirtualNetwork + from .ip_address_availability_result import IPAddressAvailabilityResult + from .virtual_network_usage_name import VirtualNetworkUsageName + from .virtual_network_usage import VirtualNetworkUsage + from .virtual_network_gateway_ip_configuration import VirtualNetworkGatewayIPConfiguration + from .virtual_network_gateway_sku import VirtualNetworkGatewaySku + from .vpn_client_root_certificate import VpnClientRootCertificate + from .vpn_client_revoked_certificate import VpnClientRevokedCertificate + from .ipsec_policy import IpsecPolicy + from .vpn_client_configuration import VpnClientConfiguration + from .bgp_settings import BgpSettings + from .bgp_peer_status import BgpPeerStatus + from .gateway_route import GatewayRoute + from .virtual_network_gateway import VirtualNetworkGateway + from .vpn_client_parameters import VpnClientParameters + from .bgp_peer_status_list_result import BgpPeerStatusListResult + from .gateway_route_list_result import GatewayRouteListResult + from .tunnel_connection_health import TunnelConnectionHealth + from .local_network_gateway import LocalNetworkGateway + from .virtual_network_gateway_connection import VirtualNetworkGatewayConnection + from .connection_reset_shared_key import ConnectionResetSharedKey + from .connection_shared_key import ConnectionSharedKey + from .vpn_client_ipsec_parameters import VpnClientIPsecParameters + from .virtual_network_connection_gateway_reference import VirtualNetworkConnectionGatewayReference + from .virtual_network_gateway_connection_list_entity import VirtualNetworkGatewayConnectionListEntity + from .vpn_device_script_parameters import VpnDeviceScriptParameters + from .p2_svpn_server_config_vpn_client_root_certificate import P2SVpnServerConfigVpnClientRootCertificate + from .p2_svpn_server_config_vpn_client_revoked_certificate import P2SVpnServerConfigVpnClientRevokedCertificate + from .p2_svpn_server_config_radius_server_root_certificate import P2SVpnServerConfigRadiusServerRootCertificate + from .p2_svpn_server_config_radius_client_root_certificate import P2SVpnServerConfigRadiusClientRootCertificate + from .p2_svpn_server_configuration import P2SVpnServerConfiguration + from .virtual_wan import VirtualWAN + from .device_properties import DeviceProperties + from .vpn_site import VpnSite + from .get_vpn_sites_configuration_request import GetVpnSitesConfigurationRequest + from .hub_virtual_network_connection import HubVirtualNetworkConnection + from .virtual_hub_route import VirtualHubRoute + from .virtual_hub_route_table import VirtualHubRouteTable + from .virtual_hub import VirtualHub + from .vpn_connection import VpnConnection + from .vpn_gateway import VpnGateway + from .vpn_site_id import VpnSiteId + from .virtual_wan_security_provider import VirtualWanSecurityProvider + from .virtual_wan_security_providers import VirtualWanSecurityProviders + from .vpn_client_connection_health import VpnClientConnectionHealth + from .p2_svpn_gateway import P2SVpnGateway + from .p2_svpn_profile_parameters import P2SVpnProfileParameters + from .vpn_profile_response import VpnProfileResponse +from .application_gateway_paged import ApplicationGatewayPaged +from .application_gateway_ssl_predefined_policy_paged import ApplicationGatewaySslPredefinedPolicyPaged +from .application_security_group_paged import ApplicationSecurityGroupPaged +from .available_delegation_paged import AvailableDelegationPaged +from .azure_firewall_paged import AzureFirewallPaged +from .azure_firewall_fqdn_tag_paged import AzureFirewallFqdnTagPaged +from .ddos_protection_plan_paged import DdosProtectionPlanPaged +from .endpoint_service_result_paged import EndpointServiceResultPaged +from .express_route_circuit_authorization_paged import ExpressRouteCircuitAuthorizationPaged +from .express_route_circuit_peering_paged import ExpressRouteCircuitPeeringPaged +from .express_route_circuit_paged import ExpressRouteCircuitPaged +from .express_route_service_provider_paged import ExpressRouteServiceProviderPaged +from .express_route_cross_connection_paged import ExpressRouteCrossConnectionPaged +from .express_route_cross_connection_peering_paged import ExpressRouteCrossConnectionPeeringPaged +from .interface_endpoint_paged import InterfaceEndpointPaged +from .load_balancer_paged import LoadBalancerPaged +from .backend_address_pool_paged import BackendAddressPoolPaged +from .frontend_ip_configuration_paged import FrontendIPConfigurationPaged +from .inbound_nat_rule_paged import InboundNatRulePaged +from .load_balancing_rule_paged import LoadBalancingRulePaged +from .network_interface_paged import NetworkInterfacePaged +from .probe_paged import ProbePaged +from .network_interface_ip_configuration_paged import NetworkInterfaceIPConfigurationPaged +from .network_interface_tap_configuration_paged import NetworkInterfaceTapConfigurationPaged +from .network_profile_paged import NetworkProfilePaged +from .network_security_group_paged import NetworkSecurityGroupPaged +from .security_rule_paged import SecurityRulePaged +from .network_watcher_paged import NetworkWatcherPaged +from .packet_capture_result_paged import PacketCaptureResultPaged +from .connection_monitor_result_paged import ConnectionMonitorResultPaged +from .operation_paged import OperationPaged +from .public_ip_address_paged import PublicIPAddressPaged +from .public_ip_prefix_paged import PublicIPPrefixPaged +from .route_filter_paged import RouteFilterPaged +from .route_filter_rule_paged import RouteFilterRulePaged +from .route_table_paged import RouteTablePaged +from .route_paged import RoutePaged +from .bgp_service_community_paged import BgpServiceCommunityPaged +from .service_endpoint_policy_paged import ServiceEndpointPolicyPaged +from .service_endpoint_policy_definition_paged import ServiceEndpointPolicyDefinitionPaged +from .usage_paged import UsagePaged +from .virtual_network_paged import VirtualNetworkPaged +from .virtual_network_usage_paged import VirtualNetworkUsagePaged +from .subnet_paged import SubnetPaged +from .virtual_network_peering_paged import VirtualNetworkPeeringPaged +from .virtual_network_tap_paged import VirtualNetworkTapPaged +from .virtual_network_gateway_paged import VirtualNetworkGatewayPaged +from .virtual_network_gateway_connection_list_entity_paged import VirtualNetworkGatewayConnectionListEntityPaged +from .virtual_network_gateway_connection_paged import VirtualNetworkGatewayConnectionPaged +from .local_network_gateway_paged import LocalNetworkGatewayPaged +from .virtual_wan_paged import VirtualWANPaged +from .vpn_site_paged import VpnSitePaged +from .virtual_hub_paged import VirtualHubPaged +from .hub_virtual_network_connection_paged import HubVirtualNetworkConnectionPaged +from .vpn_gateway_paged import VpnGatewayPaged +from .vpn_connection_paged import VpnConnectionPaged +from .p2_svpn_server_configuration_paged import P2SVpnServerConfigurationPaged +from .p2_svpn_gateway_paged import P2SVpnGatewayPaged +from .network_management_client_enums import ( + IPAllocationMethod, + SecurityRuleProtocol, + SecurityRuleAccess, + SecurityRuleDirection, + RouteNextHopType, + PublicIPAddressSkuName, + IPVersion, + TransportProtocol, + ApplicationGatewayProtocol, + ApplicationGatewayCookieBasedAffinity, + ApplicationGatewayBackendHealthServerHealth, + ApplicationGatewaySkuName, + ApplicationGatewayTier, + ApplicationGatewaySslProtocol, + ApplicationGatewaySslPolicyType, + ApplicationGatewaySslPolicyName, + ApplicationGatewaySslCipherSuite, + ApplicationGatewayRequestRoutingRuleType, + ApplicationGatewayRedirectType, + ApplicationGatewayOperationalState, + ApplicationGatewayFirewallMode, + ProvisioningState, + AzureFirewallRCActionType, + AzureFirewallApplicationRuleProtocolType, + AzureFirewallNatRCActionType, + AzureFirewallNetworkRuleProtocol, + AuthorizationUseStatus, + ExpressRouteCircuitPeeringAdvertisedPublicPrefixState, + Access, + ExpressRoutePeeringType, + ExpressRoutePeeringState, + CircuitConnectionStatus, + ExpressRouteCircuitPeeringState, + ExpressRouteCircuitSkuTier, + ExpressRouteCircuitSkuFamily, + ServiceProviderProvisioningState, + LoadBalancerSkuName, + LoadDistribution, + ProbeProtocol, + NetworkOperationStatus, + EffectiveSecurityRuleProtocol, + EffectiveRouteSource, + EffectiveRouteState, + AssociationType, + Direction, + IpFlowProtocol, + NextHopType, + PcProtocol, + PcStatus, + PcError, + Protocol, + HTTPMethod, + Origin, + Severity, + IssueType, + ConnectionStatus, + ConnectionMonitorSourceStatus, + ConnectionState, + EvaluationState, + PublicIPPrefixSkuName, + VirtualNetworkPeeringState, + VirtualNetworkGatewayType, + VpnType, + VirtualNetworkGatewaySkuName, + VirtualNetworkGatewaySkuTier, + VpnClientProtocol, + IpsecEncryption, + IpsecIntegrity, + IkeEncryption, + IkeIntegrity, + DhGroup, + PfsGroup, + BgpPeerState, + ProcessorArchitecture, + AuthenticationMethod, + VirtualNetworkGatewayConnectionStatus, + VirtualNetworkGatewayConnectionType, + VirtualNetworkGatewayConnectionProtocol, + OfficeTrafficCategory, + VpnGatewayTunnelingProtocol, + VpnConnectionStatus, + VirtualWanSecurityProviderType, + TunnelConnectionStatus, + HubVirtualNetworkConnectionStatus, +) + +__all__ = [ + 'NetworkInterfaceTapConfiguration', + 'SubResource', + 'ApplicationSecurityGroup', + 'SecurityRule', + 'EndpointService', + 'InterfaceEndpoint', + 'NetworkInterfaceDnsSettings', + 'NetworkInterface', + 'NetworkSecurityGroup', + 'Route', + 'RouteTable', + 'ServiceEndpointPropertiesFormat', + 'ServiceEndpointPolicyDefinition', + 'ServiceEndpointPolicy', + 'PublicIPAddressSku', + 'PublicIPAddressDnsSettings', + 'IpTag', + 'PublicIPAddress', + 'IPConfiguration', + 'IPConfigurationProfile', + 'ResourceNavigationLink', + 'ServiceAssociationLink', + 'Delegation', + 'Subnet', + 'FrontendIPConfiguration', + 'VirtualNetworkTap', + 'BackendAddressPool', + 'InboundNatRule', + 'NetworkInterfaceIPConfiguration', + 'ApplicationGatewayBackendAddress', + 'ApplicationGatewayBackendAddressPool', + 'ApplicationGatewayConnectionDraining', + 'ApplicationGatewayBackendHttpSettings', + 'ApplicationGatewayBackendHealthServer', + 'ApplicationGatewayBackendHealthHttpSettings', + 'ApplicationGatewayBackendHealthPool', + 'ApplicationGatewayBackendHealth', + 'ApplicationGatewaySku', + 'ApplicationGatewaySslPolicy', + 'ApplicationGatewayIPConfiguration', + 'ApplicationGatewayAuthenticationCertificate', + 'ApplicationGatewayTrustedRootCertificate', + 'ApplicationGatewaySslCertificate', + 'ApplicationGatewayFrontendIPConfiguration', + 'ApplicationGatewayFrontendPort', + 'ApplicationGatewayHttpListener', + 'ApplicationGatewayPathRule', + 'ApplicationGatewayProbeHealthResponseMatch', + 'ApplicationGatewayProbe', + 'ApplicationGatewayRequestRoutingRule', + 'ApplicationGatewayRedirectConfiguration', + 'ApplicationGatewayUrlPathMap', + 'ApplicationGatewayFirewallDisabledRuleGroup', + 'ApplicationGatewayWebApplicationFirewallConfiguration', + 'ApplicationGatewayAutoscaleConfiguration', + 'ApplicationGateway', + 'ApplicationGatewayFirewallRule', + 'ApplicationGatewayFirewallRuleGroup', + 'ApplicationGatewayFirewallRuleSet', + 'ApplicationGatewayAvailableWafRuleSetsResult', + 'ApplicationGatewayAvailableSslOptions', + 'ApplicationGatewaySslPredefinedPolicy', + 'Resource', + 'TagsObject', + 'AvailableDelegation', + 'AzureFirewallIPConfiguration', + 'AzureFirewallRCAction', + 'AzureFirewallApplicationRuleProtocol', + 'AzureFirewallApplicationRule', + 'AzureFirewallApplicationRuleCollection', + 'AzureFirewallNatRCAction', + 'AzureFirewallNatRule', + 'AzureFirewallNatRuleCollection', + 'AzureFirewallNetworkRule', + 'AzureFirewallNetworkRuleCollection', + 'AzureFirewall', + 'AzureFirewallFqdnTag', + 'DnsNameAvailabilityResult', + 'DdosProtectionPlan', + 'EndpointServiceResult', + 'ExpressRouteCircuitAuthorization', + 'ExpressRouteCircuitPeeringConfig', + 'RouteFilterRule', + 'ExpressRouteCircuitStats', + 'ExpressRouteConnectionId', + 'ExpressRouteCircuitConnection', + 'ExpressRouteCircuitPeering', + 'RouteFilter', + 'Ipv6ExpressRouteCircuitPeeringConfig', + 'ExpressRouteCircuitSku', + 'ExpressRouteCircuitServiceProviderProperties', + 'ExpressRouteCircuit', + 'ExpressRouteCircuitArpTable', + 'ExpressRouteCircuitsArpTableListResult', + 'ExpressRouteCircuitRoutesTable', + 'ExpressRouteCircuitsRoutesTableListResult', + 'ExpressRouteCircuitRoutesTableSummary', + 'ExpressRouteCircuitsRoutesTableSummaryListResult', + 'ExpressRouteServiceProviderBandwidthsOffered', + 'ExpressRouteServiceProvider', + 'ExpressRouteCrossConnectionRoutesTableSummary', + 'ExpressRouteCrossConnectionsRoutesTableSummaryListResult', + 'ExpressRouteCircuitReference', + 'ExpressRouteCrossConnectionPeering', + 'ExpressRouteCrossConnection', + 'VirtualHubId', + 'ExpressRouteCircuitPeeringId', + 'ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds', + 'ExpressRouteGatewayPropertiesAutoScaleConfiguration', + 'ExpressRouteConnection', + 'ExpressRouteGateway', + 'ExpressRouteGatewayList', + 'ExpressRouteConnectionList', + 'LoadBalancerSku', + 'LoadBalancingRule', + 'Probe', + 'InboundNatPool', + 'OutboundRule', + 'LoadBalancer', + 'ErrorDetails', + 'Error', 'ErrorException', + 'AzureAsyncOperationResult', + 'EffectiveNetworkSecurityGroupAssociation', + 'EffectiveNetworkSecurityRule', + 'EffectiveNetworkSecurityGroup', + 'EffectiveNetworkSecurityGroupListResult', + 'EffectiveRoute', + 'EffectiveRouteListResult', + 'ContainerNetworkInterfaceConfiguration', + 'Container', + 'ContainerNetworkInterfaceIpConfiguration', + 'ContainerNetworkInterface', + 'NetworkProfile', + 'ErrorResponse', 'ErrorResponseException', + 'NetworkWatcher', + 'TopologyParameters', + 'TopologyAssociation', + 'TopologyResource', + 'Topology', + 'VerificationIPFlowParameters', + 'VerificationIPFlowResult', + 'NextHopParameters', + 'NextHopResult', + 'SecurityGroupViewParameters', + 'NetworkInterfaceAssociation', + 'SubnetAssociation', + 'SecurityRuleAssociations', + 'SecurityGroupNetworkInterface', + 'SecurityGroupViewResult', + 'PacketCaptureStorageLocation', + 'PacketCaptureFilter', + 'PacketCaptureParameters', + 'PacketCapture', + 'PacketCaptureResult', + 'PacketCaptureQueryStatusResult', + 'TroubleshootingParameters', + 'QueryTroubleshootingParameters', + 'TroubleshootingRecommendedActions', + 'TroubleshootingDetails', + 'TroubleshootingResult', + 'RetentionPolicyParameters', + 'FlowLogStatusParameters', + 'TrafficAnalyticsConfigurationProperties', + 'TrafficAnalyticsProperties', + 'FlowLogInformation', + 'ConnectivitySource', + 'ConnectivityDestination', + 'HTTPHeader', + 'HTTPConfiguration', + 'ProtocolConfiguration', + 'ConnectivityParameters', + 'ConnectivityIssue', + 'ConnectivityHop', + 'ConnectivityInformation', + 'AzureReachabilityReportLocation', + 'AzureReachabilityReportParameters', + 'AzureReachabilityReportLatencyInfo', + 'AzureReachabilityReportItem', + 'AzureReachabilityReport', + 'AvailableProvidersListParameters', + 'AvailableProvidersListCity', + 'AvailableProvidersListState', + 'AvailableProvidersListCountry', + 'AvailableProvidersList', + 'ConnectionMonitorSource', + 'ConnectionMonitorDestination', + 'ConnectionMonitorParameters', + 'ConnectionMonitor', + 'ConnectionMonitorResult', + 'ConnectionStateSnapshot', + 'ConnectionMonitorQueryResult', + 'TrafficQuery', + 'NetworkConfigurationDiagnosticParameters', + 'MatchedRule', + 'NetworkSecurityRulesEvaluationResult', + 'EvaluatedNetworkSecurityGroup', + 'NetworkSecurityGroupResult', + 'NetworkConfigurationDiagnosticResult', + 'NetworkConfigurationDiagnosticResponse', + 'OperationDisplay', + 'Availability', + 'Dimension', + 'MetricSpecification', + 'LogSpecification', + 'OperationPropertiesFormatServiceSpecification', + 'Operation', + 'PublicIPPrefixSku', + 'ReferencedPublicIpAddress', + 'PublicIPPrefix', + 'PatchRouteFilterRule', + 'PatchRouteFilter', + 'BGPCommunity', + 'BgpServiceCommunity', + 'UsageName', + 'Usage', + 'AddressSpace', + 'VirtualNetworkPeering', + 'DhcpOptions', + 'VirtualNetwork', + 'IPAddressAvailabilityResult', + 'VirtualNetworkUsageName', + 'VirtualNetworkUsage', + 'VirtualNetworkGatewayIPConfiguration', + 'VirtualNetworkGatewaySku', + 'VpnClientRootCertificate', + 'VpnClientRevokedCertificate', + 'IpsecPolicy', + 'VpnClientConfiguration', + 'BgpSettings', + 'BgpPeerStatus', + 'GatewayRoute', + 'VirtualNetworkGateway', + 'VpnClientParameters', + 'BgpPeerStatusListResult', + 'GatewayRouteListResult', + 'TunnelConnectionHealth', + 'LocalNetworkGateway', + 'VirtualNetworkGatewayConnection', + 'ConnectionResetSharedKey', + 'ConnectionSharedKey', + 'VpnClientIPsecParameters', + 'VirtualNetworkConnectionGatewayReference', + 'VirtualNetworkGatewayConnectionListEntity', + 'VpnDeviceScriptParameters', + 'P2SVpnServerConfigVpnClientRootCertificate', + 'P2SVpnServerConfigVpnClientRevokedCertificate', + 'P2SVpnServerConfigRadiusServerRootCertificate', + 'P2SVpnServerConfigRadiusClientRootCertificate', + 'P2SVpnServerConfiguration', + 'VirtualWAN', + 'DeviceProperties', + 'VpnSite', + 'GetVpnSitesConfigurationRequest', + 'HubVirtualNetworkConnection', + 'VirtualHubRoute', + 'VirtualHubRouteTable', + 'VirtualHub', + 'VpnConnection', + 'VpnGateway', + 'VpnSiteId', + 'VirtualWanSecurityProvider', + 'VirtualWanSecurityProviders', + 'VpnClientConnectionHealth', + 'P2SVpnGateway', + 'P2SVpnProfileParameters', + 'VpnProfileResponse', + 'ApplicationGatewayPaged', + 'ApplicationGatewaySslPredefinedPolicyPaged', + 'ApplicationSecurityGroupPaged', + 'AvailableDelegationPaged', + 'AzureFirewallPaged', + 'AzureFirewallFqdnTagPaged', + 'DdosProtectionPlanPaged', + 'EndpointServiceResultPaged', + 'ExpressRouteCircuitAuthorizationPaged', + 'ExpressRouteCircuitPeeringPaged', + 'ExpressRouteCircuitPaged', + 'ExpressRouteServiceProviderPaged', + 'ExpressRouteCrossConnectionPaged', + 'ExpressRouteCrossConnectionPeeringPaged', + 'InterfaceEndpointPaged', + 'LoadBalancerPaged', + 'BackendAddressPoolPaged', + 'FrontendIPConfigurationPaged', + 'InboundNatRulePaged', + 'LoadBalancingRulePaged', + 'NetworkInterfacePaged', + 'ProbePaged', + 'NetworkInterfaceIPConfigurationPaged', + 'NetworkInterfaceTapConfigurationPaged', + 'NetworkProfilePaged', + 'NetworkSecurityGroupPaged', + 'SecurityRulePaged', + 'NetworkWatcherPaged', + 'PacketCaptureResultPaged', + 'ConnectionMonitorResultPaged', + 'OperationPaged', + 'PublicIPAddressPaged', + 'PublicIPPrefixPaged', + 'RouteFilterPaged', + 'RouteFilterRulePaged', + 'RouteTablePaged', + 'RoutePaged', + 'BgpServiceCommunityPaged', + 'ServiceEndpointPolicyPaged', + 'ServiceEndpointPolicyDefinitionPaged', + 'UsagePaged', + 'VirtualNetworkPaged', + 'VirtualNetworkUsagePaged', + 'SubnetPaged', + 'VirtualNetworkPeeringPaged', + 'VirtualNetworkTapPaged', + 'VirtualNetworkGatewayPaged', + 'VirtualNetworkGatewayConnectionListEntityPaged', + 'VirtualNetworkGatewayConnectionPaged', + 'LocalNetworkGatewayPaged', + 'VirtualWANPaged', + 'VpnSitePaged', + 'VirtualHubPaged', + 'HubVirtualNetworkConnectionPaged', + 'VpnGatewayPaged', + 'VpnConnectionPaged', + 'P2SVpnServerConfigurationPaged', + 'P2SVpnGatewayPaged', + 'IPAllocationMethod', + 'SecurityRuleProtocol', + 'SecurityRuleAccess', + 'SecurityRuleDirection', + 'RouteNextHopType', + 'PublicIPAddressSkuName', + 'IPVersion', + 'TransportProtocol', + 'ApplicationGatewayProtocol', + 'ApplicationGatewayCookieBasedAffinity', + 'ApplicationGatewayBackendHealthServerHealth', + 'ApplicationGatewaySkuName', + 'ApplicationGatewayTier', + 'ApplicationGatewaySslProtocol', + 'ApplicationGatewaySslPolicyType', + 'ApplicationGatewaySslPolicyName', + 'ApplicationGatewaySslCipherSuite', + 'ApplicationGatewayRequestRoutingRuleType', + 'ApplicationGatewayRedirectType', + 'ApplicationGatewayOperationalState', + 'ApplicationGatewayFirewallMode', + 'ProvisioningState', + 'AzureFirewallRCActionType', + 'AzureFirewallApplicationRuleProtocolType', + 'AzureFirewallNatRCActionType', + 'AzureFirewallNetworkRuleProtocol', + 'AuthorizationUseStatus', + 'ExpressRouteCircuitPeeringAdvertisedPublicPrefixState', + 'Access', + 'ExpressRoutePeeringType', + 'ExpressRoutePeeringState', + 'CircuitConnectionStatus', + 'ExpressRouteCircuitPeeringState', + 'ExpressRouteCircuitSkuTier', + 'ExpressRouteCircuitSkuFamily', + 'ServiceProviderProvisioningState', + 'LoadBalancerSkuName', + 'LoadDistribution', + 'ProbeProtocol', + 'NetworkOperationStatus', + 'EffectiveSecurityRuleProtocol', + 'EffectiveRouteSource', + 'EffectiveRouteState', + 'AssociationType', + 'Direction', + 'IpFlowProtocol', + 'NextHopType', + 'PcProtocol', + 'PcStatus', + 'PcError', + 'Protocol', + 'HTTPMethod', + 'Origin', + 'Severity', + 'IssueType', + 'ConnectionStatus', + 'ConnectionMonitorSourceStatus', + 'ConnectionState', + 'EvaluationState', + 'PublicIPPrefixSkuName', + 'VirtualNetworkPeeringState', + 'VirtualNetworkGatewayType', + 'VpnType', + 'VirtualNetworkGatewaySkuName', + 'VirtualNetworkGatewaySkuTier', + 'VpnClientProtocol', + 'IpsecEncryption', + 'IpsecIntegrity', + 'IkeEncryption', + 'IkeIntegrity', + 'DhGroup', + 'PfsGroup', + 'BgpPeerState', + 'ProcessorArchitecture', + 'AuthenticationMethod', + 'VirtualNetworkGatewayConnectionStatus', + 'VirtualNetworkGatewayConnectionType', + 'VirtualNetworkGatewayConnectionProtocol', + 'OfficeTrafficCategory', + 'VpnGatewayTunnelingProtocol', + 'VpnConnectionStatus', + 'VirtualWanSecurityProviderType', + 'TunnelConnectionStatus', + 'HubVirtualNetworkConnectionStatus', +] diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/address_space.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/address_space.py new file mode 100644 index 000000000000..fbf42c9e0ade --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/address_space.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AddressSpace(Model): + """AddressSpace contains an array of IP address ranges that can be used by + subnets of the virtual network. + + :param address_prefixes: A list of address blocks reserved for this + virtual network in CIDR notation. + :type address_prefixes: list[str] + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AddressSpace, self).__init__(**kwargs) + self.address_prefixes = kwargs.get('address_prefixes', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/address_space_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/address_space_py3.py new file mode 100644 index 000000000000..9794cc805efa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/address_space_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AddressSpace(Model): + """AddressSpace contains an array of IP address ranges that can be used by + subnets of the virtual network. + + :param address_prefixes: A list of address blocks reserved for this + virtual network in CIDR notation. + :type address_prefixes: list[str] + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + } + + def __init__(self, *, address_prefixes=None, **kwargs) -> None: + super(AddressSpace, self).__init__(**kwargs) + self.address_prefixes = address_prefixes diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway.py new file mode 100644 index 000000000000..b0e63598a14d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway.py @@ -0,0 +1,179 @@ +# 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 .resource import Resource + + +class ApplicationGateway(Resource): + """Application gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: SKU of the application gateway resource. + :type sku: ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySku + :param ssl_policy: SSL policy of the application gateway resource. + :type ssl_policy: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPolicy + :ivar operational_state: Operational state of the application gateway + resource. Possible values include: 'Stopped', 'Starting', 'Running', + 'Stopping' + :vartype operational_state: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayOperationalState + :param gateway_ip_configurations: Subnets of application the gateway + resource. + :type gateway_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayIPConfiguration] + :param authentication_certificates: Authentication certificates of the + application gateway resource. + :type authentication_certificates: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayAuthenticationCertificate] + :param trusted_root_certificates: Trusted Root certificates of the + application gateway resource. + :type trusted_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayTrustedRootCertificate] + :param ssl_certificates: SSL certificates of the application gateway + resource. + :type ssl_certificates: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslCertificate] + :param frontend_ip_configurations: Frontend IP addresses of the + application gateway resource. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFrontendIPConfiguration] + :param frontend_ports: Frontend ports of the application gateway resource. + :type frontend_ports: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFrontendPort] + :param probes: Probes of the application gateway resource. + :type probes: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProbe] + :param backend_address_pools: Backend address pool of the application + gateway resource. + :type backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendAddressPool] + :param backend_http_settings_collection: Backend http settings of the + application gateway resource. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHttpSettings] + :param http_listeners: Http listeners of the application gateway resource. + :type http_listeners: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayHttpListener] + :param url_path_maps: URL path map of the application gateway resource. + :type url_path_maps: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayUrlPathMap] + :param request_routing_rules: Request routing rules of the application + gateway resource. + :type request_routing_rules: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayRequestRoutingRule] + :param redirect_configurations: Redirect configurations of the application + gateway resource. + :type redirect_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayRedirectConfiguration] + :param web_application_firewall_configuration: Web application firewall + configuration. + :type web_application_firewall_configuration: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayWebApplicationFirewallConfiguration + :param enable_http2: Whether HTTP2 is enabled on the application gateway + resource. + :type enable_http2: bool + :param enable_fips: Whether FIPS is enabled on the application gateway + resource. + :type enable_fips: bool + :param autoscale_configuration: Autoscale Configuration. + :type autoscale_configuration: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayAutoscaleConfiguration + :param resource_guid: Resource GUID property of the application gateway + resource. + :type resource_guid: str + :param provisioning_state: Provisioning state of the application gateway + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting where the resource + needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'operational_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'properties.sku', 'type': 'ApplicationGatewaySku'}, + 'ssl_policy': {'key': 'properties.sslPolicy', 'type': 'ApplicationGatewaySslPolicy'}, + 'operational_state': {'key': 'properties.operationalState', 'type': 'str'}, + 'gateway_ip_configurations': {'key': 'properties.gatewayIPConfigurations', 'type': '[ApplicationGatewayIPConfiguration]'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[ApplicationGatewayAuthenticationCertificate]'}, + 'trusted_root_certificates': {'key': 'properties.trustedRootCertificates', 'type': '[ApplicationGatewayTrustedRootCertificate]'}, + 'ssl_certificates': {'key': 'properties.sslCertificates', 'type': '[ApplicationGatewaySslCertificate]'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[ApplicationGatewayFrontendIPConfiguration]'}, + 'frontend_ports': {'key': 'properties.frontendPorts', 'type': '[ApplicationGatewayFrontendPort]'}, + 'probes': {'key': 'properties.probes', 'type': '[ApplicationGatewayProbe]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'backend_http_settings_collection': {'key': 'properties.backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHttpSettings]'}, + 'http_listeners': {'key': 'properties.httpListeners', 'type': '[ApplicationGatewayHttpListener]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[ApplicationGatewayUrlPathMap]'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[ApplicationGatewayRequestRoutingRule]'}, + 'redirect_configurations': {'key': 'properties.redirectConfigurations', 'type': '[ApplicationGatewayRedirectConfiguration]'}, + 'web_application_firewall_configuration': {'key': 'properties.webApplicationFirewallConfiguration', 'type': 'ApplicationGatewayWebApplicationFirewallConfiguration'}, + 'enable_http2': {'key': 'properties.enableHttp2', 'type': 'bool'}, + 'enable_fips': {'key': 'properties.enableFips', 'type': 'bool'}, + 'autoscale_configuration': {'key': 'properties.autoscaleConfiguration', 'type': 'ApplicationGatewayAutoscaleConfiguration'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGateway, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.ssl_policy = kwargs.get('ssl_policy', None) + self.operational_state = None + self.gateway_ip_configurations = kwargs.get('gateway_ip_configurations', None) + self.authentication_certificates = kwargs.get('authentication_certificates', None) + self.trusted_root_certificates = kwargs.get('trusted_root_certificates', None) + self.ssl_certificates = kwargs.get('ssl_certificates', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.frontend_ports = kwargs.get('frontend_ports', None) + self.probes = kwargs.get('probes', None) + self.backend_address_pools = kwargs.get('backend_address_pools', None) + self.backend_http_settings_collection = kwargs.get('backend_http_settings_collection', None) + self.http_listeners = kwargs.get('http_listeners', None) + self.url_path_maps = kwargs.get('url_path_maps', None) + self.request_routing_rules = kwargs.get('request_routing_rules', None) + self.redirect_configurations = kwargs.get('redirect_configurations', None) + self.web_application_firewall_configuration = kwargs.get('web_application_firewall_configuration', None) + self.enable_http2 = kwargs.get('enable_http2', None) + self.enable_fips = kwargs.get('enable_fips', None) + self.autoscale_configuration = kwargs.get('autoscale_configuration', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_authentication_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_authentication_certificate.py new file mode 100644 index 000000000000..3b766e657c6b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_authentication_certificate.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ApplicationGatewayAuthenticationCertificate(SubResource): + """Authentication certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :param provisioning_state: Provisioning state of the authentication + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the authentication certificate that is unique within + an Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAuthenticationCertificate, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_authentication_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_authentication_certificate_py3.py new file mode 100644 index 000000000000..d0c7f378884b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_authentication_certificate_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ApplicationGatewayAuthenticationCertificate(SubResource): + """Authentication certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :param provisioning_state: Provisioning state of the authentication + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the authentication certificate that is unique within + an Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, data: str=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayAuthenticationCertificate, self).__init__(id=id, **kwargs) + self.data = data + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_autoscale_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_autoscale_configuration.py new file mode 100644 index 000000000000..ae12d7fb1ad6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_autoscale_configuration.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAutoscaleConfiguration(Model): + """Application Gateway autoscale configuration. + + All required parameters must be populated in order to send to Azure. + + :param min_capacity: Required. Lower bound on number of Application + Gateway instances + :type min_capacity: int + """ + + _validation = { + 'min_capacity': {'required': True, 'minimum': 2}, + } + + _attribute_map = { + 'min_capacity': {'key': 'minCapacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAutoscaleConfiguration, self).__init__(**kwargs) + self.min_capacity = kwargs.get('min_capacity', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_autoscale_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_autoscale_configuration_py3.py new file mode 100644 index 000000000000..b5408acfde22 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_autoscale_configuration_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAutoscaleConfiguration(Model): + """Application Gateway autoscale configuration. + + All required parameters must be populated in order to send to Azure. + + :param min_capacity: Required. Lower bound on number of Application + Gateway instances + :type min_capacity: int + """ + + _validation = { + 'min_capacity': {'required': True, 'minimum': 2}, + } + + _attribute_map = { + 'min_capacity': {'key': 'minCapacity', 'type': 'int'}, + } + + def __init__(self, *, min_capacity: int, **kwargs) -> None: + super(ApplicationGatewayAutoscaleConfiguration, self).__init__(**kwargs) + self.min_capacity = min_capacity diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_ssl_options.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_ssl_options.py new file mode 100644 index 000000000000..cf08d8a3c8ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_ssl_options.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ApplicationGatewayAvailableSslOptions(Resource): + """Response for ApplicationGatewayAvailableSslOptions API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param predefined_policies: List of available Ssl predefined policy. + :type predefined_policies: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param default_policy: Name of the Ssl predefined policy applied by + default to application gateway. Possible values include: + 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type default_policy: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPolicyName + :param available_cipher_suites: List of available Ssl cipher suites. + :type available_cipher_suites: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslCipherSuite] + :param available_protocols: List of available Ssl protocols. + :type available_protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslProtocol] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'predefined_policies': {'key': 'properties.predefinedPolicies', 'type': '[SubResource]'}, + 'default_policy': {'key': 'properties.defaultPolicy', 'type': 'str'}, + 'available_cipher_suites': {'key': 'properties.availableCipherSuites', 'type': '[str]'}, + 'available_protocols': {'key': 'properties.availableProtocols', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAvailableSslOptions, self).__init__(**kwargs) + self.predefined_policies = kwargs.get('predefined_policies', None) + self.default_policy = kwargs.get('default_policy', None) + self.available_cipher_suites = kwargs.get('available_cipher_suites', None) + self.available_protocols = kwargs.get('available_protocols', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_ssl_options_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_ssl_options_py3.py new file mode 100644 index 000000000000..d4962067f6ad --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_ssl_options_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ApplicationGatewayAvailableSslOptions(Resource): + """Response for ApplicationGatewayAvailableSslOptions API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param predefined_policies: List of available Ssl predefined policy. + :type predefined_policies: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param default_policy: Name of the Ssl predefined policy applied by + default to application gateway. Possible values include: + 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type default_policy: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPolicyName + :param available_cipher_suites: List of available Ssl cipher suites. + :type available_cipher_suites: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslCipherSuite] + :param available_protocols: List of available Ssl protocols. + :type available_protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslProtocol] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'predefined_policies': {'key': 'properties.predefinedPolicies', 'type': '[SubResource]'}, + 'default_policy': {'key': 'properties.defaultPolicy', 'type': 'str'}, + 'available_cipher_suites': {'key': 'properties.availableCipherSuites', 'type': '[str]'}, + 'available_protocols': {'key': 'properties.availableProtocols', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, predefined_policies=None, default_policy=None, available_cipher_suites=None, available_protocols=None, **kwargs) -> None: + super(ApplicationGatewayAvailableSslOptions, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.predefined_policies = predefined_policies + self.default_policy = default_policy + self.available_cipher_suites = available_cipher_suites + self.available_protocols = available_protocols diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_waf_rule_sets_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_waf_rule_sets_result.py new file mode 100644 index 000000000000..ccb1279fb89e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_waf_rule_sets_result.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAvailableWafRuleSetsResult(Model): + """Response for ApplicationGatewayAvailableWafRuleSets API service call. + + :param value: The list of application gateway rule sets. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallRuleSet] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ApplicationGatewayFirewallRuleSet]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAvailableWafRuleSetsResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_waf_rule_sets_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_waf_rule_sets_result_py3.py new file mode 100644 index 000000000000..69c19902d626 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_available_waf_rule_sets_result_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayAvailableWafRuleSetsResult(Model): + """Response for ApplicationGatewayAvailableWafRuleSets API service call. + + :param value: The list of application gateway rule sets. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallRuleSet] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ApplicationGatewayFirewallRuleSet]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ApplicationGatewayAvailableWafRuleSetsResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address.py new file mode 100644 index 000000000000..e7a61fe1705c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendAddress(Model): + """Backend address of an application gateway. + + :param fqdn: Fully qualified domain name (FQDN). + :type fqdn: str + :param ip_address: IP address + :type ip_address: str + """ + + _attribute_map = { + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendAddress, self).__init__(**kwargs) + self.fqdn = kwargs.get('fqdn', None) + self.ip_address = kwargs.get('ip_address', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_pool.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_pool.py new file mode 100644 index 000000000000..28b231006fa3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_pool.py @@ -0,0 +1,57 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayBackendAddressPool(SubResource): + """Backend Address Pool of an application gateway. + + :param id: Resource ID. + :type id: str + :param backend_ip_configurations: Collection of references to IPs defined + in network interfaces. + :type backend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration] + :param backend_addresses: Backend addresses + :type backend_addresses: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendAddress] + :param provisioning_state: Provisioning state of the backend address pool + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the backend address pool that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'backend_addresses': {'key': 'properties.backendAddresses', 'type': '[ApplicationGatewayBackendAddress]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendAddressPool, self).__init__(**kwargs) + self.backend_ip_configurations = kwargs.get('backend_ip_configurations', None) + self.backend_addresses = kwargs.get('backend_addresses', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_pool_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_pool_py3.py new file mode 100644 index 000000000000..f6a6132c9ac3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_pool_py3.py @@ -0,0 +1,57 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayBackendAddressPool(SubResource): + """Backend Address Pool of an application gateway. + + :param id: Resource ID. + :type id: str + :param backend_ip_configurations: Collection of references to IPs defined + in network interfaces. + :type backend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration] + :param backend_addresses: Backend addresses + :type backend_addresses: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendAddress] + :param provisioning_state: Provisioning state of the backend address pool + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the backend address pool that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'backend_addresses': {'key': 'properties.backendAddresses', 'type': '[ApplicationGatewayBackendAddress]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, backend_ip_configurations=None, backend_addresses=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendAddressPool, self).__init__(id=id, **kwargs) + self.backend_ip_configurations = backend_ip_configurations + self.backend_addresses = backend_addresses + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_py3.py new file mode 100644 index 000000000000..d18e476244d8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_address_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendAddress(Model): + """Backend address of an application gateway. + + :param fqdn: Fully qualified domain name (FQDN). + :type fqdn: str + :param ip_address: IP address + :type ip_address: str + """ + + _attribute_map = { + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + } + + def __init__(self, *, fqdn: str=None, ip_address: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendAddress, self).__init__(**kwargs) + self.fqdn = fqdn + self.ip_address = ip_address diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health.py new file mode 100644 index 000000000000..91e077492574 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealth(Model): + """List of ApplicationGatewayBackendHealthPool resources. + + :param backend_address_pools: + :type backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealthPool] + """ + + _attribute_map = { + 'backend_address_pools': {'key': 'backendAddressPools', 'type': '[ApplicationGatewayBackendHealthPool]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealth, self).__init__(**kwargs) + self.backend_address_pools = kwargs.get('backend_address_pools', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_http_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_http_settings.py new file mode 100644 index 000000000000..9b3eae09eb04 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_http_settings.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthHttpSettings(Model): + """Application gateway BackendHealthHttp settings. + + :param backend_http_settings: Reference of an + ApplicationGatewayBackendHttpSettings resource. + :type backend_http_settings: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHttpSettings + :param servers: List of ApplicationGatewayBackendHealthServer resources. + :type servers: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealthServer] + """ + + _attribute_map = { + 'backend_http_settings': {'key': 'backendHttpSettings', 'type': 'ApplicationGatewayBackendHttpSettings'}, + 'servers': {'key': 'servers', 'type': '[ApplicationGatewayBackendHealthServer]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthHttpSettings, self).__init__(**kwargs) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.servers = kwargs.get('servers', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_http_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_http_settings_py3.py new file mode 100644 index 000000000000..2353eaf3f82d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_http_settings_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthHttpSettings(Model): + """Application gateway BackendHealthHttp settings. + + :param backend_http_settings: Reference of an + ApplicationGatewayBackendHttpSettings resource. + :type backend_http_settings: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHttpSettings + :param servers: List of ApplicationGatewayBackendHealthServer resources. + :type servers: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealthServer] + """ + + _attribute_map = { + 'backend_http_settings': {'key': 'backendHttpSettings', 'type': 'ApplicationGatewayBackendHttpSettings'}, + 'servers': {'key': 'servers', 'type': '[ApplicationGatewayBackendHealthServer]'}, + } + + def __init__(self, *, backend_http_settings=None, servers=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthHttpSettings, self).__init__(**kwargs) + self.backend_http_settings = backend_http_settings + self.servers = servers diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_pool.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_pool.py new file mode 100644 index 000000000000..ec615c1d2471 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_pool.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthPool(Model): + """Application gateway BackendHealth pool. + + :param backend_address_pool: Reference of an + ApplicationGatewayBackendAddressPool resource. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendAddressPool + :param backend_http_settings_collection: List of + ApplicationGatewayBackendHealthHttpSettings resources. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealthHttpSettings] + """ + + _attribute_map = { + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'ApplicationGatewayBackendAddressPool'}, + 'backend_http_settings_collection': {'key': 'backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHealthHttpSettings]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthPool, self).__init__(**kwargs) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings_collection = kwargs.get('backend_http_settings_collection', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_pool_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_pool_py3.py new file mode 100644 index 000000000000..fe90c5599317 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_pool_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthPool(Model): + """Application gateway BackendHealth pool. + + :param backend_address_pool: Reference of an + ApplicationGatewayBackendAddressPool resource. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendAddressPool + :param backend_http_settings_collection: List of + ApplicationGatewayBackendHealthHttpSettings resources. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealthHttpSettings] + """ + + _attribute_map = { + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'ApplicationGatewayBackendAddressPool'}, + 'backend_http_settings_collection': {'key': 'backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHealthHttpSettings]'}, + } + + def __init__(self, *, backend_address_pool=None, backend_http_settings_collection=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthPool, self).__init__(**kwargs) + self.backend_address_pool = backend_address_pool + self.backend_http_settings_collection = backend_http_settings_collection diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_py3.py new file mode 100644 index 000000000000..d0d5f89b8c75 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealth(Model): + """List of ApplicationGatewayBackendHealthPool resources. + + :param backend_address_pools: + :type backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealthPool] + """ + + _attribute_map = { + 'backend_address_pools': {'key': 'backendAddressPools', 'type': '[ApplicationGatewayBackendHealthPool]'}, + } + + def __init__(self, *, backend_address_pools=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealth, self).__init__(**kwargs) + self.backend_address_pools = backend_address_pools diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_server.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_server.py new file mode 100644 index 000000000000..1cee27552ada --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_server.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthServer(Model): + """Application gateway backendhealth http settings. + + :param address: IP address or FQDN of backend server. + :type address: str + :param ip_configuration: Reference of IP configuration of backend server. + :type ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration + :param health: Health of backend server. Possible values include: + 'Unknown', 'Up', 'Down', 'Partial', 'Draining' + :type health: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealthServerHealth + """ + + _attribute_map = { + 'address': {'key': 'address', 'type': 'str'}, + 'ip_configuration': {'key': 'ipConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'health': {'key': 'health', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthServer, self).__init__(**kwargs) + self.address = kwargs.get('address', None) + self.ip_configuration = kwargs.get('ip_configuration', None) + self.health = kwargs.get('health', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_server_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_server_py3.py new file mode 100644 index 000000000000..1160c3f09aa4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_health_server_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayBackendHealthServer(Model): + """Application gateway backendhealth http settings. + + :param address: IP address or FQDN of backend server. + :type address: str + :param ip_configuration: Reference of IP configuration of backend server. + :type ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration + :param health: Health of backend server. Possible values include: + 'Unknown', 'Up', 'Down', 'Partial', 'Draining' + :type health: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealthServerHealth + """ + + _attribute_map = { + 'address': {'key': 'address', 'type': 'str'}, + 'ip_configuration': {'key': 'ipConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'health': {'key': 'health', 'type': 'str'}, + } + + def __init__(self, *, address: str=None, ip_configuration=None, health=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthServer, self).__init__(**kwargs) + self.address = address + self.ip_configuration = ip_configuration + self.health = health diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_http_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_http_settings.py new file mode 100644 index 000000000000..80ca0d6f3417 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_http_settings.py @@ -0,0 +1,115 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayBackendHttpSettings(SubResource): + """Backend address pool settings of an application gateway. + + :param id: Resource ID. + :type id: str + :param port: The destination port on the backend. + :type port: int + :param protocol: The protocol used to communicate with the backend. + Possible values are 'Http' and 'Https'. Possible values include: 'Http', + 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProtocol + :param cookie_based_affinity: Cookie based affinity. Possible values + include: 'Enabled', 'Disabled' + :type cookie_based_affinity: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayCookieBasedAffinity + :param request_timeout: Request timeout in seconds. Application Gateway + will fail the request if response is not received within RequestTimeout. + Acceptable values are from 1 second to 86400 seconds. + :type request_timeout: int + :param probe: Probe resource of an application gateway. + :type probe: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param authentication_certificates: Array of references to application + gateway authentication certificates. + :type authentication_certificates: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param trusted_root_certificates: Array of references to application + gateway trusted root certificates. + :type trusted_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param connection_draining: Connection draining of the backend http + settings resource. + :type connection_draining: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayConnectionDraining + :param host_name: Host header to be sent to the backend servers. + :type host_name: str + :param pick_host_name_from_backend_address: Whether to pick host header + should be picked from the host name of the backend server. Default value + is false. + :type pick_host_name_from_backend_address: bool + :param affinity_cookie_name: Cookie name to use for the affinity cookie. + :type affinity_cookie_name: str + :param probe_enabled: Whether the probe is enabled. Default value is + false. + :type probe_enabled: bool + :param path: Path which should be used as a prefix for all HTTP requests. + Null means no path will be prefixed. Default value is null. + :type path: str + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the backend http settings that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'cookie_based_affinity': {'key': 'properties.cookieBasedAffinity', 'type': 'str'}, + 'request_timeout': {'key': 'properties.requestTimeout', 'type': 'int'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[SubResource]'}, + 'trusted_root_certificates': {'key': 'properties.trustedRootCertificates', 'type': '[SubResource]'}, + 'connection_draining': {'key': 'properties.connectionDraining', 'type': 'ApplicationGatewayConnectionDraining'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'pick_host_name_from_backend_address': {'key': 'properties.pickHostNameFromBackendAddress', 'type': 'bool'}, + 'affinity_cookie_name': {'key': 'properties.affinityCookieName', 'type': 'str'}, + 'probe_enabled': {'key': 'properties.probeEnabled', 'type': 'bool'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHttpSettings, self).__init__(**kwargs) + self.port = kwargs.get('port', None) + self.protocol = kwargs.get('protocol', None) + self.cookie_based_affinity = kwargs.get('cookie_based_affinity', None) + self.request_timeout = kwargs.get('request_timeout', None) + self.probe = kwargs.get('probe', None) + self.authentication_certificates = kwargs.get('authentication_certificates', None) + self.trusted_root_certificates = kwargs.get('trusted_root_certificates', None) + self.connection_draining = kwargs.get('connection_draining', None) + self.host_name = kwargs.get('host_name', None) + self.pick_host_name_from_backend_address = kwargs.get('pick_host_name_from_backend_address', None) + self.affinity_cookie_name = kwargs.get('affinity_cookie_name', None) + self.probe_enabled = kwargs.get('probe_enabled', None) + self.path = kwargs.get('path', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_http_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_http_settings_py3.py new file mode 100644 index 000000000000..7c216a9cd32b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_backend_http_settings_py3.py @@ -0,0 +1,115 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayBackendHttpSettings(SubResource): + """Backend address pool settings of an application gateway. + + :param id: Resource ID. + :type id: str + :param port: The destination port on the backend. + :type port: int + :param protocol: The protocol used to communicate with the backend. + Possible values are 'Http' and 'Https'. Possible values include: 'Http', + 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProtocol + :param cookie_based_affinity: Cookie based affinity. Possible values + include: 'Enabled', 'Disabled' + :type cookie_based_affinity: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayCookieBasedAffinity + :param request_timeout: Request timeout in seconds. Application Gateway + will fail the request if response is not received within RequestTimeout. + Acceptable values are from 1 second to 86400 seconds. + :type request_timeout: int + :param probe: Probe resource of an application gateway. + :type probe: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param authentication_certificates: Array of references to application + gateway authentication certificates. + :type authentication_certificates: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param trusted_root_certificates: Array of references to application + gateway trusted root certificates. + :type trusted_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param connection_draining: Connection draining of the backend http + settings resource. + :type connection_draining: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayConnectionDraining + :param host_name: Host header to be sent to the backend servers. + :type host_name: str + :param pick_host_name_from_backend_address: Whether to pick host header + should be picked from the host name of the backend server. Default value + is false. + :type pick_host_name_from_backend_address: bool + :param affinity_cookie_name: Cookie name to use for the affinity cookie. + :type affinity_cookie_name: str + :param probe_enabled: Whether the probe is enabled. Default value is + false. + :type probe_enabled: bool + :param path: Path which should be used as a prefix for all HTTP requests. + Null means no path will be prefixed. Default value is null. + :type path: str + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the backend http settings that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'cookie_based_affinity': {'key': 'properties.cookieBasedAffinity', 'type': 'str'}, + 'request_timeout': {'key': 'properties.requestTimeout', 'type': 'int'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[SubResource]'}, + 'trusted_root_certificates': {'key': 'properties.trustedRootCertificates', 'type': '[SubResource]'}, + 'connection_draining': {'key': 'properties.connectionDraining', 'type': 'ApplicationGatewayConnectionDraining'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'pick_host_name_from_backend_address': {'key': 'properties.pickHostNameFromBackendAddress', 'type': 'bool'}, + 'affinity_cookie_name': {'key': 'properties.affinityCookieName', 'type': 'str'}, + 'probe_enabled': {'key': 'properties.probeEnabled', 'type': 'bool'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, port: int=None, protocol=None, cookie_based_affinity=None, request_timeout: int=None, probe=None, authentication_certificates=None, trusted_root_certificates=None, connection_draining=None, host_name: str=None, pick_host_name_from_backend_address: bool=None, affinity_cookie_name: str=None, probe_enabled: bool=None, path: str=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendHttpSettings, self).__init__(id=id, **kwargs) + self.port = port + self.protocol = protocol + self.cookie_based_affinity = cookie_based_affinity + self.request_timeout = request_timeout + self.probe = probe + self.authentication_certificates = authentication_certificates + self.trusted_root_certificates = trusted_root_certificates + self.connection_draining = connection_draining + self.host_name = host_name + self.pick_host_name_from_backend_address = pick_host_name_from_backend_address + self.affinity_cookie_name = affinity_cookie_name + self.probe_enabled = probe_enabled + self.path = path + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_connection_draining.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_connection_draining.py new file mode 100644 index 000000000000..531b3cb05dd3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_connection_draining.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayConnectionDraining(Model): + """Connection draining allows open connections to a backend server to be + active for a specified time after the backend server got removed from the + configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether connection draining is enabled or not. + :type enabled: bool + :param drain_timeout_in_sec: Required. The number of seconds connection + draining is active. Acceptable values are from 1 second to 3600 seconds. + :type drain_timeout_in_sec: int + """ + + _validation = { + 'enabled': {'required': True}, + 'drain_timeout_in_sec': {'required': True, 'maximum': 3600, 'minimum': 1}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'drain_timeout_in_sec': {'key': 'drainTimeoutInSec', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayConnectionDraining, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.drain_timeout_in_sec = kwargs.get('drain_timeout_in_sec', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_connection_draining_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_connection_draining_py3.py new file mode 100644 index 000000000000..c46fb01cae72 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_connection_draining_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayConnectionDraining(Model): + """Connection draining allows open connections to a backend server to be + active for a specified time after the backend server got removed from the + configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether connection draining is enabled or not. + :type enabled: bool + :param drain_timeout_in_sec: Required. The number of seconds connection + draining is active. Acceptable values are from 1 second to 3600 seconds. + :type drain_timeout_in_sec: int + """ + + _validation = { + 'enabled': {'required': True}, + 'drain_timeout_in_sec': {'required': True, 'maximum': 3600, 'minimum': 1}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'drain_timeout_in_sec': {'key': 'drainTimeoutInSec', 'type': 'int'}, + } + + def __init__(self, *, enabled: bool, drain_timeout_in_sec: int, **kwargs) -> None: + super(ApplicationGatewayConnectionDraining, self).__init__(**kwargs) + self.enabled = enabled + self.drain_timeout_in_sec = drain_timeout_in_sec diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_disabled_rule_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_disabled_rule_group.py new file mode 100644 index 000000000000..085ae3d78c5c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_disabled_rule_group.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallDisabledRuleGroup(Model): + """Allows to disable rules within a rule group or an entire rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the rule group that will be + disabled. + :type rule_group_name: str + :param rules: The list of rules that will be disabled. If null, all rules + of the rule group will be disabled. + :type rules: list[int] + """ + + _validation = { + 'rule_group_name': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[int]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallDisabledRuleGroup, self).__init__(**kwargs) + self.rule_group_name = kwargs.get('rule_group_name', None) + self.rules = kwargs.get('rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_disabled_rule_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_disabled_rule_group_py3.py new file mode 100644 index 000000000000..44ac696b801c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_disabled_rule_group_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallDisabledRuleGroup(Model): + """Allows to disable rules within a rule group or an entire rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the rule group that will be + disabled. + :type rule_group_name: str + :param rules: The list of rules that will be disabled. If null, all rules + of the rule group will be disabled. + :type rules: list[int] + """ + + _validation = { + 'rule_group_name': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[int]'}, + } + + def __init__(self, *, rule_group_name: str, rules=None, **kwargs) -> None: + super(ApplicationGatewayFirewallDisabledRuleGroup, self).__init__(**kwargs) + self.rule_group_name = rule_group_name + self.rules = rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule.py new file mode 100644 index 000000000000..661b0d146e16 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallRule(Model): + """A web application firewall rule. + + All required parameters must be populated in order to send to Azure. + + :param rule_id: Required. The identifier of the web application firewall + rule. + :type rule_id: int + :param description: The description of the web application firewall rule. + :type description: str + """ + + _validation = { + 'rule_id': {'required': True}, + } + + _attribute_map = { + 'rule_id': {'key': 'ruleId', 'type': 'int'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRule, self).__init__(**kwargs) + self.rule_id = kwargs.get('rule_id', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_group.py new file mode 100644 index 000000000000..416cd6beab12 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_group.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallRuleGroup(Model): + """A web application firewall rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the web application firewall + rule group. + :type rule_group_name: str + :param description: The description of the web application firewall rule + group. + :type description: str + :param rules: Required. The rules of the web application firewall rule + group. + :type rules: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallRule] + """ + + _validation = { + 'rule_group_name': {'required': True}, + 'rules': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[ApplicationGatewayFirewallRule]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRuleGroup, self).__init__(**kwargs) + self.rule_group_name = kwargs.get('rule_group_name', None) + self.description = kwargs.get('description', None) + self.rules = kwargs.get('rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_group_py3.py new file mode 100644 index 000000000000..627d45594291 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_group_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallRuleGroup(Model): + """A web application firewall rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the web application firewall + rule group. + :type rule_group_name: str + :param description: The description of the web application firewall rule + group. + :type description: str + :param rules: Required. The rules of the web application firewall rule + group. + :type rules: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallRule] + """ + + _validation = { + 'rule_group_name': {'required': True}, + 'rules': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[ApplicationGatewayFirewallRule]'}, + } + + def __init__(self, *, rule_group_name: str, rules, description: str=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRuleGroup, self).__init__(**kwargs) + self.rule_group_name = rule_group_name + self.description = description + self.rules = rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_py3.py new file mode 100644 index 000000000000..e332fbd16853 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayFirewallRule(Model): + """A web application firewall rule. + + All required parameters must be populated in order to send to Azure. + + :param rule_id: Required. The identifier of the web application firewall + rule. + :type rule_id: int + :param description: The description of the web application firewall rule. + :type description: str + """ + + _validation = { + 'rule_id': {'required': True}, + } + + _attribute_map = { + 'rule_id': {'key': 'ruleId', 'type': 'int'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, rule_id: int, description: str=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRule, self).__init__(**kwargs) + self.rule_id = rule_id + self.description = description diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_set.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_set.py new file mode 100644 index 000000000000..a2145cffcd02 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_set.py @@ -0,0 +1,73 @@ +# 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 .resource import Resource + + +class ApplicationGatewayFirewallRuleSet(Resource): + """A web application firewall rule set. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param provisioning_state: The provisioning state of the web application + firewall rule set. + :type provisioning_state: str + :param rule_set_type: Required. The type of the web application firewall + rule set. + :type rule_set_type: str + :param rule_set_version: Required. The version of the web application + firewall rule set type. + :type rule_set_version: str + :param rule_groups: Required. The rule groups of the web application + firewall rule set. + :type rule_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallRuleGroup] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'rule_groups': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'rule_set_type': {'key': 'properties.ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'properties.ruleSetVersion', 'type': 'str'}, + 'rule_groups': {'key': 'properties.ruleGroups', 'type': '[ApplicationGatewayFirewallRuleGroup]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRuleSet, self).__init__(**kwargs) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.rule_set_type = kwargs.get('rule_set_type', None) + self.rule_set_version = kwargs.get('rule_set_version', None) + self.rule_groups = kwargs.get('rule_groups', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_set_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_set_py3.py new file mode 100644 index 000000000000..1b571bf0c71c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_firewall_rule_set_py3.py @@ -0,0 +1,73 @@ +# 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 .resource_py3 import Resource + + +class ApplicationGatewayFirewallRuleSet(Resource): + """A web application firewall rule set. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param provisioning_state: The provisioning state of the web application + firewall rule set. + :type provisioning_state: str + :param rule_set_type: Required. The type of the web application firewall + rule set. + :type rule_set_type: str + :param rule_set_version: Required. The version of the web application + firewall rule set type. + :type rule_set_version: str + :param rule_groups: Required. The rule groups of the web application + firewall rule set. + :type rule_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallRuleGroup] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'rule_groups': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'rule_set_type': {'key': 'properties.ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'properties.ruleSetVersion', 'type': 'str'}, + 'rule_groups': {'key': 'properties.ruleGroups', 'type': '[ApplicationGatewayFirewallRuleGroup]'}, + } + + def __init__(self, *, rule_set_type: str, rule_set_version: str, rule_groups, id: str=None, location: str=None, tags=None, provisioning_state: str=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRuleSet, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.provisioning_state = provisioning_state + self.rule_set_type = rule_set_type + self.rule_set_version = rule_set_version + self.rule_groups = rule_groups diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_ip_configuration.py new file mode 100644 index 000000000000..51b89de30634 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_ip_configuration.py @@ -0,0 +1,66 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayFrontendIPConfiguration(SubResource): + """Frontend IP configuration of an application gateway. + + :param id: Resource ID. + :type id: str + :param private_ip_address: PrivateIPAddress of the network interface IP + Configuration. + :type private_ip_address: str + :param private_ip_allocation_method: PrivateIP allocation method. Possible + values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param subnet: Reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Provisioning state of the public IP resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the frontend IP configuration that is unique within + an Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFrontendIPConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_ip_configuration_py3.py new file mode 100644 index 000000000000..81b61ce7255b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_ip_configuration_py3.py @@ -0,0 +1,66 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayFrontendIPConfiguration(SubResource): + """Frontend IP configuration of an application gateway. + + :param id: Resource ID. + :type id: str + :param private_ip_address: PrivateIPAddress of the network interface IP + Configuration. + :type private_ip_address: str + :param private_ip_allocation_method: PrivateIP allocation method. Possible + values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param subnet: Reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Provisioning state of the public IP resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the frontend IP configuration that is unique within + an Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayFrontendIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_port.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_port.py new file mode 100644 index 000000000000..b245c950f3ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_port.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ApplicationGatewayFrontendPort(SubResource): + """Frontend port of an application gateway. + + :param id: Resource ID. + :type id: str + :param port: Frontend port + :type port: int + :param provisioning_state: Provisioning state of the frontend port + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the frontend port that is unique within an + Application Gateway + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFrontendPort, self).__init__(**kwargs) + self.port = kwargs.get('port', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_port_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_port_py3.py new file mode 100644 index 000000000000..a6bd3f7a3606 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_frontend_port_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ApplicationGatewayFrontendPort(SubResource): + """Frontend port of an application gateway. + + :param id: Resource ID. + :type id: str + :param port: Frontend port + :type port: int + :param provisioning_state: Provisioning state of the frontend port + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the frontend port that is unique within an + Application Gateway + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, port: int=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayFrontendPort, self).__init__(id=id, **kwargs) + self.port = port + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_http_listener.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_http_listener.py new file mode 100644 index 000000000000..76292850ac5b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_http_listener.py @@ -0,0 +1,76 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayHttpListener(SubResource): + """Http listener of an application gateway. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: Frontend IP configuration resource of an + application gateway. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param frontend_port: Frontend port resource of an application gateway. + :type frontend_port: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param protocol: Protocol of the HTTP listener. Possible values are 'Http' + and 'Https'. Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProtocol + :param host_name: Host name of HTTP listener. + :type host_name: str + :param ssl_certificate: SSL certificate resource of an application + gateway. + :type ssl_certificate: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param require_server_name_indication: Applicable only if protocol is + https. Enables SNI for multi-hosting. + :type require_server_name_indication: bool + :param provisioning_state: Provisioning state of the HTTP listener + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the HTTP listener that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'ssl_certificate': {'key': 'properties.sslCertificate', 'type': 'SubResource'}, + 'require_server_name_indication': {'key': 'properties.requireServerNameIndication', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayHttpListener, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.protocol = kwargs.get('protocol', None) + self.host_name = kwargs.get('host_name', None) + self.ssl_certificate = kwargs.get('ssl_certificate', None) + self.require_server_name_indication = kwargs.get('require_server_name_indication', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_http_listener_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_http_listener_py3.py new file mode 100644 index 000000000000..3961fb7637d7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_http_listener_py3.py @@ -0,0 +1,76 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayHttpListener(SubResource): + """Http listener of an application gateway. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: Frontend IP configuration resource of an + application gateway. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param frontend_port: Frontend port resource of an application gateway. + :type frontend_port: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param protocol: Protocol of the HTTP listener. Possible values are 'Http' + and 'Https'. Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProtocol + :param host_name: Host name of HTTP listener. + :type host_name: str + :param ssl_certificate: SSL certificate resource of an application + gateway. + :type ssl_certificate: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param require_server_name_indication: Applicable only if protocol is + https. Enables SNI for multi-hosting. + :type require_server_name_indication: bool + :param provisioning_state: Provisioning state of the HTTP listener + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the HTTP listener that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'ssl_certificate': {'key': 'properties.sslCertificate', 'type': 'SubResource'}, + 'require_server_name_indication': {'key': 'properties.requireServerNameIndication', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, frontend_ip_configuration=None, frontend_port=None, protocol=None, host_name: str=None, ssl_certificate=None, require_server_name_indication: bool=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayHttpListener, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.frontend_port = frontend_port + self.protocol = protocol + self.host_name = host_name + self.ssl_certificate = ssl_certificate + self.require_server_name_indication = require_server_name_indication + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ip_configuration.py new file mode 100644 index 000000000000..2cf3c3064e76 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ip_configuration.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ApplicationGatewayIPConfiguration(SubResource): + """IP configuration of an application gateway. Currently 1 public and 1 + private IP configuration is allowed. + + :param id: Resource ID. + :type id: str + :param subnet: Reference of the subnet resource. A subnet from where + application gateway gets its private address. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Provisioning state of the application gateway + subnet resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the IP configuration that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayIPConfiguration, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ip_configuration_py3.py new file mode 100644 index 000000000000..12db8c16c070 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ip_configuration_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ApplicationGatewayIPConfiguration(SubResource): + """IP configuration of an application gateway. Currently 1 public and 1 + private IP configuration is allowed. + + :param id: Resource ID. + :type id: str + :param subnet: Reference of the subnet resource. A subnet from where + application gateway gets its private address. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Provisioning state of the application gateway + subnet resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the IP configuration that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, subnet=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayIPConfiguration, self).__init__(id=id, **kwargs) + self.subnet = subnet + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_paged.py new file mode 100644 index 000000000000..054e6059950d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ApplicationGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_path_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_path_rule.py new file mode 100644 index 000000000000..dea8be8f64b3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_path_rule.py @@ -0,0 +1,68 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayPathRule(SubResource): + """Path rule of URL path map of an application gateway. + + :param id: Resource ID. + :type id: str + :param paths: Path rules of URL path map. + :type paths: list[str] + :param backend_address_pool: Backend address pool resource of URL path map + path rule. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param backend_http_settings: Backend http settings resource of URL path + map path rule. + :type backend_http_settings: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of URL path + map path rule. + :type redirect_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Path rule of URL path map resource. Possible + values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the path rule that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'paths': {'key': 'properties.paths', 'type': '[str]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayPathRule, self).__init__(**kwargs) + self.paths = kwargs.get('paths', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.redirect_configuration = kwargs.get('redirect_configuration', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_path_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_path_rule_py3.py new file mode 100644 index 000000000000..8b5cd20ec430 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_path_rule_py3.py @@ -0,0 +1,68 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayPathRule(SubResource): + """Path rule of URL path map of an application gateway. + + :param id: Resource ID. + :type id: str + :param paths: Path rules of URL path map. + :type paths: list[str] + :param backend_address_pool: Backend address pool resource of URL path map + path rule. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param backend_http_settings: Backend http settings resource of URL path + map path rule. + :type backend_http_settings: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of URL path + map path rule. + :type redirect_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Path rule of URL path map resource. Possible + values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the path rule that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'paths': {'key': 'properties.paths', 'type': '[str]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, paths=None, backend_address_pool=None, backend_http_settings=None, redirect_configuration=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayPathRule, self).__init__(id=id, **kwargs) + self.paths = paths + self.backend_address_pool = backend_address_pool + self.backend_http_settings = backend_http_settings + self.redirect_configuration = redirect_configuration + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe.py new file mode 100644 index 000000000000..31c1821a3018 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe.py @@ -0,0 +1,94 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayProbe(SubResource): + """Probe of the application gateway. + + :param id: Resource ID. + :type id: str + :param protocol: The protocol used for the probe. Possible values are + 'Http' and 'Https'. Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProtocol + :param host: Host name to send the probe to. + :type host: str + :param path: Relative path of probe. Valid path starts from '/'. Probe is + sent to ://: + :type path: str + :param interval: The probing interval in seconds. This is the time + interval between two consecutive probes. Acceptable values are from 1 + second to 86400 seconds. + :type interval: int + :param timeout: the probe timeout in seconds. Probe marked as failed if + valid response is not received with this timeout period. Acceptable values + are from 1 second to 86400 seconds. + :type timeout: int + :param unhealthy_threshold: The probe retry count. Backend server is + marked down after consecutive probe failure count reaches + UnhealthyThreshold. Acceptable values are from 1 second to 20. + :type unhealthy_threshold: int + :param pick_host_name_from_backend_http_settings: Whether the host header + should be picked from the backend http settings. Default value is false. + :type pick_host_name_from_backend_http_settings: bool + :param min_servers: Minimum number of servers that are always marked + healthy. Default value is 0. + :type min_servers: int + :param match: Criterion for classifying a healthy probe response. + :type match: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProbeHealthResponseMatch + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the probe that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host': {'key': 'properties.host', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'interval': {'key': 'properties.interval', 'type': 'int'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'unhealthy_threshold': {'key': 'properties.unhealthyThreshold', 'type': 'int'}, + 'pick_host_name_from_backend_http_settings': {'key': 'properties.pickHostNameFromBackendHttpSettings', 'type': 'bool'}, + 'min_servers': {'key': 'properties.minServers', 'type': 'int'}, + 'match': {'key': 'properties.match', 'type': 'ApplicationGatewayProbeHealthResponseMatch'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayProbe, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', None) + self.host = kwargs.get('host', None) + self.path = kwargs.get('path', None) + self.interval = kwargs.get('interval', None) + self.timeout = kwargs.get('timeout', None) + self.unhealthy_threshold = kwargs.get('unhealthy_threshold', None) + self.pick_host_name_from_backend_http_settings = kwargs.get('pick_host_name_from_backend_http_settings', None) + self.min_servers = kwargs.get('min_servers', None) + self.match = kwargs.get('match', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_health_response_match.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_health_response_match.py new file mode 100644 index 000000000000..b439b9677f8b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_health_response_match.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayProbeHealthResponseMatch(Model): + """Application gateway probe health response match. + + :param body: Body that must be contained in the health response. Default + value is empty. + :type body: str + :param status_codes: Allowed ranges of healthy status codes. Default range + of healthy status codes is 200-399. + :type status_codes: list[str] + """ + + _attribute_map = { + 'body': {'key': 'body', 'type': 'str'}, + 'status_codes': {'key': 'statusCodes', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayProbeHealthResponseMatch, self).__init__(**kwargs) + self.body = kwargs.get('body', None) + self.status_codes = kwargs.get('status_codes', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_health_response_match_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_health_response_match_py3.py new file mode 100644 index 000000000000..6ed2ee8c04ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_health_response_match_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayProbeHealthResponseMatch(Model): + """Application gateway probe health response match. + + :param body: Body that must be contained in the health response. Default + value is empty. + :type body: str + :param status_codes: Allowed ranges of healthy status codes. Default range + of healthy status codes is 200-399. + :type status_codes: list[str] + """ + + _attribute_map = { + 'body': {'key': 'body', 'type': 'str'}, + 'status_codes': {'key': 'statusCodes', 'type': '[str]'}, + } + + def __init__(self, *, body: str=None, status_codes=None, **kwargs) -> None: + super(ApplicationGatewayProbeHealthResponseMatch, self).__init__(**kwargs) + self.body = body + self.status_codes = status_codes diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_py3.py new file mode 100644 index 000000000000..72b23b744820 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_probe_py3.py @@ -0,0 +1,94 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayProbe(SubResource): + """Probe of the application gateway. + + :param id: Resource ID. + :type id: str + :param protocol: The protocol used for the probe. Possible values are + 'Http' and 'Https'. Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProtocol + :param host: Host name to send the probe to. + :type host: str + :param path: Relative path of probe. Valid path starts from '/'. Probe is + sent to ://: + :type path: str + :param interval: The probing interval in seconds. This is the time + interval between two consecutive probes. Acceptable values are from 1 + second to 86400 seconds. + :type interval: int + :param timeout: the probe timeout in seconds. Probe marked as failed if + valid response is not received with this timeout period. Acceptable values + are from 1 second to 86400 seconds. + :type timeout: int + :param unhealthy_threshold: The probe retry count. Backend server is + marked down after consecutive probe failure count reaches + UnhealthyThreshold. Acceptable values are from 1 second to 20. + :type unhealthy_threshold: int + :param pick_host_name_from_backend_http_settings: Whether the host header + should be picked from the backend http settings. Default value is false. + :type pick_host_name_from_backend_http_settings: bool + :param min_servers: Minimum number of servers that are always marked + healthy. Default value is 0. + :type min_servers: int + :param match: Criterion for classifying a healthy probe response. + :type match: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProbeHealthResponseMatch + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the probe that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host': {'key': 'properties.host', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'interval': {'key': 'properties.interval', 'type': 'int'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'unhealthy_threshold': {'key': 'properties.unhealthyThreshold', 'type': 'int'}, + 'pick_host_name_from_backend_http_settings': {'key': 'properties.pickHostNameFromBackendHttpSettings', 'type': 'bool'}, + 'min_servers': {'key': 'properties.minServers', 'type': 'int'}, + 'match': {'key': 'properties.match', 'type': 'ApplicationGatewayProbeHealthResponseMatch'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, protocol=None, host: str=None, path: str=None, interval: int=None, timeout: int=None, unhealthy_threshold: int=None, pick_host_name_from_backend_http_settings: bool=None, min_servers: int=None, match=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayProbe, self).__init__(id=id, **kwargs) + self.protocol = protocol + self.host = host + self.path = path + self.interval = interval + self.timeout = timeout + self.unhealthy_threshold = unhealthy_threshold + self.pick_host_name_from_backend_http_settings = pick_host_name_from_backend_http_settings + self.min_servers = min_servers + self.match = match + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_py3.py new file mode 100644 index 000000000000..894aae564b12 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_py3.py @@ -0,0 +1,179 @@ +# 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 .resource_py3 import Resource + + +class ApplicationGateway(Resource): + """Application gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: SKU of the application gateway resource. + :type sku: ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySku + :param ssl_policy: SSL policy of the application gateway resource. + :type ssl_policy: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPolicy + :ivar operational_state: Operational state of the application gateway + resource. Possible values include: 'Stopped', 'Starting', 'Running', + 'Stopping' + :vartype operational_state: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayOperationalState + :param gateway_ip_configurations: Subnets of application the gateway + resource. + :type gateway_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayIPConfiguration] + :param authentication_certificates: Authentication certificates of the + application gateway resource. + :type authentication_certificates: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayAuthenticationCertificate] + :param trusted_root_certificates: Trusted Root certificates of the + application gateway resource. + :type trusted_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayTrustedRootCertificate] + :param ssl_certificates: SSL certificates of the application gateway + resource. + :type ssl_certificates: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslCertificate] + :param frontend_ip_configurations: Frontend IP addresses of the + application gateway resource. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFrontendIPConfiguration] + :param frontend_ports: Frontend ports of the application gateway resource. + :type frontend_ports: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFrontendPort] + :param probes: Probes of the application gateway resource. + :type probes: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayProbe] + :param backend_address_pools: Backend address pool of the application + gateway resource. + :type backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendAddressPool] + :param backend_http_settings_collection: Backend http settings of the + application gateway resource. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHttpSettings] + :param http_listeners: Http listeners of the application gateway resource. + :type http_listeners: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayHttpListener] + :param url_path_maps: URL path map of the application gateway resource. + :type url_path_maps: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayUrlPathMap] + :param request_routing_rules: Request routing rules of the application + gateway resource. + :type request_routing_rules: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayRequestRoutingRule] + :param redirect_configurations: Redirect configurations of the application + gateway resource. + :type redirect_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayRedirectConfiguration] + :param web_application_firewall_configuration: Web application firewall + configuration. + :type web_application_firewall_configuration: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayWebApplicationFirewallConfiguration + :param enable_http2: Whether HTTP2 is enabled on the application gateway + resource. + :type enable_http2: bool + :param enable_fips: Whether FIPS is enabled on the application gateway + resource. + :type enable_fips: bool + :param autoscale_configuration: Autoscale Configuration. + :type autoscale_configuration: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayAutoscaleConfiguration + :param resource_guid: Resource GUID property of the application gateway + resource. + :type resource_guid: str + :param provisioning_state: Provisioning state of the application gateway + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting where the resource + needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'operational_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'properties.sku', 'type': 'ApplicationGatewaySku'}, + 'ssl_policy': {'key': 'properties.sslPolicy', 'type': 'ApplicationGatewaySslPolicy'}, + 'operational_state': {'key': 'properties.operationalState', 'type': 'str'}, + 'gateway_ip_configurations': {'key': 'properties.gatewayIPConfigurations', 'type': '[ApplicationGatewayIPConfiguration]'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[ApplicationGatewayAuthenticationCertificate]'}, + 'trusted_root_certificates': {'key': 'properties.trustedRootCertificates', 'type': '[ApplicationGatewayTrustedRootCertificate]'}, + 'ssl_certificates': {'key': 'properties.sslCertificates', 'type': '[ApplicationGatewaySslCertificate]'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[ApplicationGatewayFrontendIPConfiguration]'}, + 'frontend_ports': {'key': 'properties.frontendPorts', 'type': '[ApplicationGatewayFrontendPort]'}, + 'probes': {'key': 'properties.probes', 'type': '[ApplicationGatewayProbe]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'backend_http_settings_collection': {'key': 'properties.backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHttpSettings]'}, + 'http_listeners': {'key': 'properties.httpListeners', 'type': '[ApplicationGatewayHttpListener]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[ApplicationGatewayUrlPathMap]'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[ApplicationGatewayRequestRoutingRule]'}, + 'redirect_configurations': {'key': 'properties.redirectConfigurations', 'type': '[ApplicationGatewayRedirectConfiguration]'}, + 'web_application_firewall_configuration': {'key': 'properties.webApplicationFirewallConfiguration', 'type': 'ApplicationGatewayWebApplicationFirewallConfiguration'}, + 'enable_http2': {'key': 'properties.enableHttp2', 'type': 'bool'}, + 'enable_fips': {'key': 'properties.enableFips', 'type': 'bool'}, + 'autoscale_configuration': {'key': 'properties.autoscaleConfiguration', 'type': 'ApplicationGatewayAutoscaleConfiguration'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, ssl_policy=None, gateway_ip_configurations=None, authentication_certificates=None, trusted_root_certificates=None, ssl_certificates=None, frontend_ip_configurations=None, frontend_ports=None, probes=None, backend_address_pools=None, backend_http_settings_collection=None, http_listeners=None, url_path_maps=None, request_routing_rules=None, redirect_configurations=None, web_application_firewall_configuration=None, enable_http2: bool=None, enable_fips: bool=None, autoscale_configuration=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, zones=None, **kwargs) -> None: + super(ApplicationGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.ssl_policy = ssl_policy + self.operational_state = None + self.gateway_ip_configurations = gateway_ip_configurations + self.authentication_certificates = authentication_certificates + self.trusted_root_certificates = trusted_root_certificates + self.ssl_certificates = ssl_certificates + self.frontend_ip_configurations = frontend_ip_configurations + self.frontend_ports = frontend_ports + self.probes = probes + self.backend_address_pools = backend_address_pools + self.backend_http_settings_collection = backend_http_settings_collection + self.http_listeners = http_listeners + self.url_path_maps = url_path_maps + self.request_routing_rules = request_routing_rules + self.redirect_configurations = redirect_configurations + self.web_application_firewall_configuration = web_application_firewall_configuration + self.enable_http2 = enable_http2 + self.enable_fips = enable_fips + self.autoscale_configuration = autoscale_configuration + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag + self.zones = zones diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_redirect_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_redirect_configuration.py new file mode 100644 index 000000000000..97c3f9df6dee --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_redirect_configuration.py @@ -0,0 +1,81 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayRedirectConfiguration(SubResource): + """Redirect configuration of an application gateway. + + :param id: Resource ID. + :type id: str + :param redirect_type: Supported http redirection types - Permanent, + Temporary, Found, SeeOther. Possible values include: 'Permanent', 'Found', + 'SeeOther', 'Temporary' + :type redirect_type: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayRedirectType + :param target_listener: Reference to a listener to redirect the request + to. + :type target_listener: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param target_url: Url to redirect the request to. + :type target_url: str + :param include_path: Include path in the redirected url. + :type include_path: bool + :param include_query_string: Include query string in the redirected url. + :type include_query_string: bool + :param request_routing_rules: Request routing specifying redirect + configuration. + :type request_routing_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param url_path_maps: Url path maps specifying default redirect + configuration. + :type url_path_maps: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param path_rules: Path rules specifying redirect configuration. + :type path_rules: list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param name: Name of the redirect configuration that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'redirect_type': {'key': 'properties.redirectType', 'type': 'str'}, + 'target_listener': {'key': 'properties.targetListener', 'type': 'SubResource'}, + 'target_url': {'key': 'properties.targetUrl', 'type': 'str'}, + 'include_path': {'key': 'properties.includePath', 'type': 'bool'}, + 'include_query_string': {'key': 'properties.includeQueryString', 'type': 'bool'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[SubResource]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[SubResource]'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[SubResource]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRedirectConfiguration, self).__init__(**kwargs) + self.redirect_type = kwargs.get('redirect_type', None) + self.target_listener = kwargs.get('target_listener', None) + self.target_url = kwargs.get('target_url', None) + self.include_path = kwargs.get('include_path', None) + self.include_query_string = kwargs.get('include_query_string', None) + self.request_routing_rules = kwargs.get('request_routing_rules', None) + self.url_path_maps = kwargs.get('url_path_maps', None) + self.path_rules = kwargs.get('path_rules', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_redirect_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_redirect_configuration_py3.py new file mode 100644 index 000000000000..aed6322f8611 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_redirect_configuration_py3.py @@ -0,0 +1,81 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayRedirectConfiguration(SubResource): + """Redirect configuration of an application gateway. + + :param id: Resource ID. + :type id: str + :param redirect_type: Supported http redirection types - Permanent, + Temporary, Found, SeeOther. Possible values include: 'Permanent', 'Found', + 'SeeOther', 'Temporary' + :type redirect_type: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayRedirectType + :param target_listener: Reference to a listener to redirect the request + to. + :type target_listener: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param target_url: Url to redirect the request to. + :type target_url: str + :param include_path: Include path in the redirected url. + :type include_path: bool + :param include_query_string: Include query string in the redirected url. + :type include_query_string: bool + :param request_routing_rules: Request routing specifying redirect + configuration. + :type request_routing_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param url_path_maps: Url path maps specifying default redirect + configuration. + :type url_path_maps: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param path_rules: Path rules specifying redirect configuration. + :type path_rules: list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param name: Name of the redirect configuration that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'redirect_type': {'key': 'properties.redirectType', 'type': 'str'}, + 'target_listener': {'key': 'properties.targetListener', 'type': 'SubResource'}, + 'target_url': {'key': 'properties.targetUrl', 'type': 'str'}, + 'include_path': {'key': 'properties.includePath', 'type': 'bool'}, + 'include_query_string': {'key': 'properties.includeQueryString', 'type': 'bool'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[SubResource]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[SubResource]'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[SubResource]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, redirect_type=None, target_listener=None, target_url: str=None, include_path: bool=None, include_query_string: bool=None, request_routing_rules=None, url_path_maps=None, path_rules=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayRedirectConfiguration, self).__init__(id=id, **kwargs) + self.redirect_type = redirect_type + self.target_listener = target_listener + self.target_url = target_url + self.include_path = include_path + self.include_query_string = include_query_string + self.request_routing_rules = request_routing_rules + self.url_path_maps = url_path_maps + self.path_rules = path_rules + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_request_routing_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_request_routing_rule.py new file mode 100644 index 000000000000..6e5c12e3ee4e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_request_routing_rule.py @@ -0,0 +1,78 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayRequestRoutingRule(SubResource): + """Request routing rule of an application gateway. + + :param id: Resource ID. + :type id: str + :param rule_type: Rule type. Possible values include: 'Basic', + 'PathBasedRouting' + :type rule_type: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayRequestRoutingRuleType + :param backend_address_pool: Backend address pool resource of the + application gateway. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param backend_http_settings: Backend http settings resource of the + application gateway. + :type backend_http_settings: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param http_listener: Http listener resource of the application gateway. + :type http_listener: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param url_path_map: URL path map resource of the application gateway. + :type url_path_map: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of the + application gateway. + :type redirect_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Provisioning state of the request routing rule + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the request routing rule that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rule_type': {'key': 'properties.ruleType', 'type': 'str'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'http_listener': {'key': 'properties.httpListener', 'type': 'SubResource'}, + 'url_path_map': {'key': 'properties.urlPathMap', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRequestRoutingRule, self).__init__(**kwargs) + self.rule_type = kwargs.get('rule_type', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.http_listener = kwargs.get('http_listener', None) + self.url_path_map = kwargs.get('url_path_map', None) + self.redirect_configuration = kwargs.get('redirect_configuration', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_request_routing_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_request_routing_rule_py3.py new file mode 100644 index 000000000000..10d703d35de9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_request_routing_rule_py3.py @@ -0,0 +1,78 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayRequestRoutingRule(SubResource): + """Request routing rule of an application gateway. + + :param id: Resource ID. + :type id: str + :param rule_type: Rule type. Possible values include: 'Basic', + 'PathBasedRouting' + :type rule_type: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayRequestRoutingRuleType + :param backend_address_pool: Backend address pool resource of the + application gateway. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param backend_http_settings: Backend http settings resource of the + application gateway. + :type backend_http_settings: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param http_listener: Http listener resource of the application gateway. + :type http_listener: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param url_path_map: URL path map resource of the application gateway. + :type url_path_map: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of the + application gateway. + :type redirect_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Provisioning state of the request routing rule + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the request routing rule that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rule_type': {'key': 'properties.ruleType', 'type': 'str'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'http_listener': {'key': 'properties.httpListener', 'type': 'SubResource'}, + 'url_path_map': {'key': 'properties.urlPathMap', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, rule_type=None, backend_address_pool=None, backend_http_settings=None, http_listener=None, url_path_map=None, redirect_configuration=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayRequestRoutingRule, self).__init__(id=id, **kwargs) + self.rule_type = rule_type + self.backend_address_pool = backend_address_pool + self.backend_http_settings = backend_http_settings + self.http_listener = http_listener + self.url_path_map = url_path_map + self.redirect_configuration = redirect_configuration + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_sku.py new file mode 100644 index 000000000000..7424551f5455 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_sku.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewaySku(Model): + """SKU of an application gateway. + + :param name: Name of an application gateway SKU. Possible values include: + 'Standard_Small', 'Standard_Medium', 'Standard_Large', 'WAF_Medium', + 'WAF_Large', 'Standard_v2', 'WAF_v2' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySkuName + :param tier: Tier of an application gateway. Possible values include: + 'Standard', 'WAF', 'Standard_v2', 'WAF_v2' + :type tier: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayTier + :param capacity: Capacity (instance count) of an application gateway. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_sku_py3.py new file mode 100644 index 000000000000..0696d87600fd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_sku_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewaySku(Model): + """SKU of an application gateway. + + :param name: Name of an application gateway SKU. Possible values include: + 'Standard_Small', 'Standard_Medium', 'Standard_Large', 'WAF_Medium', + 'WAF_Large', 'Standard_v2', 'WAF_v2' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySkuName + :param tier: Tier of an application gateway. Possible values include: + 'Standard', 'WAF', 'Standard_v2', 'WAF_v2' + :type tier: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayTier + :param capacity: Capacity (instance count) of an application gateway. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, *, name=None, tier=None, capacity: int=None, **kwargs) -> None: + super(ApplicationGatewaySku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_certificate.py new file mode 100644 index 000000000000..20c9614fe87e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_certificate.py @@ -0,0 +1,61 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewaySslCertificate(SubResource): + """SSL certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Base-64 encoded pfx certificate. Only applicable in PUT + Request. + :type data: str + :param password: Password for the pfx file specified in data. Only + applicable in PUT request. + :type password: str + :param public_cert_data: Base-64 encoded Public cert data corresponding to + pfx specified in data. Only applicable in GET request. + :type public_cert_data: str + :param provisioning_state: Provisioning state of the SSL certificate + resource Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the SSL certificate that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslCertificate, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.password = kwargs.get('password', None) + self.public_cert_data = kwargs.get('public_cert_data', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_certificate_py3.py new file mode 100644 index 000000000000..4ed572592e87 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_certificate_py3.py @@ -0,0 +1,61 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewaySslCertificate(SubResource): + """SSL certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Base-64 encoded pfx certificate. Only applicable in PUT + Request. + :type data: str + :param password: Password for the pfx file specified in data. Only + applicable in PUT request. + :type password: str + :param public_cert_data: Base-64 encoded Public cert data corresponding to + pfx specified in data. Only applicable in GET request. + :type public_cert_data: str + :param provisioning_state: Provisioning state of the SSL certificate + resource Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the SSL certificate that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, data: str=None, password: str=None, public_cert_data: str=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewaySslCertificate, self).__init__(id=id, **kwargs) + self.data = data + self.password = password + self.public_cert_data = public_cert_data + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_policy.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_policy.py new file mode 100644 index 000000000000..a2d1b8d2d53d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_policy.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewaySslPolicy(Model): + """Application Gateway Ssl policy. + + :param disabled_ssl_protocols: Ssl protocols to be disabled on application + gateway. + :type disabled_ssl_protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslProtocol] + :param policy_type: Type of Ssl Policy. Possible values include: + 'Predefined', 'Custom' + :type policy_type: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPolicyType + :param policy_name: Name of Ssl predefined policy. Possible values + include: 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type policy_name: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPolicyName + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order to application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'disabled_ssl_protocols': {'key': 'disabledSslProtocols', 'type': '[str]'}, + 'policy_type': {'key': 'policyType', 'type': 'str'}, + 'policy_name': {'key': 'policyName', 'type': 'str'}, + 'cipher_suites': {'key': 'cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslPolicy, self).__init__(**kwargs) + self.disabled_ssl_protocols = kwargs.get('disabled_ssl_protocols', None) + self.policy_type = kwargs.get('policy_type', None) + self.policy_name = kwargs.get('policy_name', None) + self.cipher_suites = kwargs.get('cipher_suites', None) + self.min_protocol_version = kwargs.get('min_protocol_version', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_policy_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_policy_py3.py new file mode 100644 index 000000000000..1bb4ef84b90f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_policy_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewaySslPolicy(Model): + """Application Gateway Ssl policy. + + :param disabled_ssl_protocols: Ssl protocols to be disabled on application + gateway. + :type disabled_ssl_protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslProtocol] + :param policy_type: Type of Ssl Policy. Possible values include: + 'Predefined', 'Custom' + :type policy_type: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPolicyType + :param policy_name: Name of Ssl predefined policy. Possible values + include: 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type policy_name: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPolicyName + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order to application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'disabled_ssl_protocols': {'key': 'disabledSslProtocols', 'type': '[str]'}, + 'policy_type': {'key': 'policyType', 'type': 'str'}, + 'policy_name': {'key': 'policyName', 'type': 'str'}, + 'cipher_suites': {'key': 'cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, *, disabled_ssl_protocols=None, policy_type=None, policy_name=None, cipher_suites=None, min_protocol_version=None, **kwargs) -> None: + super(ApplicationGatewaySslPolicy, self).__init__(**kwargs) + self.disabled_ssl_protocols = disabled_ssl_protocols + self.policy_type = policy_type + self.policy_name = policy_name + self.cipher_suites = cipher_suites + self.min_protocol_version = min_protocol_version diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy.py new file mode 100644 index 000000000000..b9102e61f8f0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy.py @@ -0,0 +1,44 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewaySslPredefinedPolicy(SubResource): + """An Ssl predefined policy. + + :param id: Resource ID. + :type id: str + :param name: Name of the Ssl predefined policy. + :type name: str + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order for application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'cipher_suites': {'key': 'properties.cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'properties.minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslPredefinedPolicy, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.cipher_suites = kwargs.get('cipher_suites', None) + self.min_protocol_version = kwargs.get('min_protocol_version', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy_paged.py new file mode 100644 index 000000000000..99edc2d41a59 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ApplicationGatewaySslPredefinedPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationGatewaySslPredefinedPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationGatewaySslPredefinedPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationGatewaySslPredefinedPolicyPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy_py3.py new file mode 100644 index 000000000000..c27d3b8277e0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_ssl_predefined_policy_py3.py @@ -0,0 +1,44 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewaySslPredefinedPolicy(SubResource): + """An Ssl predefined policy. + + :param id: Resource ID. + :type id: str + :param name: Name of the Ssl predefined policy. + :type name: str + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order for application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'cipher_suites': {'key': 'properties.cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'properties.minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, cipher_suites=None, min_protocol_version=None, **kwargs) -> None: + super(ApplicationGatewaySslPredefinedPolicy, self).__init__(id=id, **kwargs) + self.name = name + self.cipher_suites = cipher_suites + self.min_protocol_version = min_protocol_version diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_trusted_root_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_trusted_root_certificate.py new file mode 100644 index 000000000000..87739161a4cb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_trusted_root_certificate.py @@ -0,0 +1,55 @@ +# 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 .sub_resource import SubResource + + +class ApplicationGatewayTrustedRootCertificate(SubResource): + """Trusted Root certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :param keyvault_secret_id: KeyVault Secret Id for certificate. + :type keyvault_secret_id: str + :param provisioning_state: Provisioning state of the trusted root + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the trusted root certificate that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'keyvault_secret_id': {'key': 'properties.keyvaultSecretId', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayTrustedRootCertificate, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.keyvault_secret_id = kwargs.get('keyvault_secret_id', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_trusted_root_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_trusted_root_certificate_py3.py new file mode 100644 index 000000000000..9ce1b7ab11e0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_trusted_root_certificate_py3.py @@ -0,0 +1,55 @@ +# 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 .sub_resource_py3 import SubResource + + +class ApplicationGatewayTrustedRootCertificate(SubResource): + """Trusted Root certificates of an application gateway. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :param keyvault_secret_id: KeyVault Secret Id for certificate. + :type keyvault_secret_id: str + :param provisioning_state: Provisioning state of the trusted root + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: Name of the trusted root certificate that is unique within an + Application Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'keyvault_secret_id': {'key': 'properties.keyvaultSecretId', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, data: str=None, keyvault_secret_id: str=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayTrustedRootCertificate, self).__init__(id=id, **kwargs) + self.data = data + self.keyvault_secret_id = keyvault_secret_id + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_url_path_map.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_url_path_map.py new file mode 100644 index 000000000000..00f08832fede --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_url_path_map.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ApplicationGatewayUrlPathMap(SubResource): + """UrlPathMaps give a url path to the backend mapping information for + PathBasedRouting. + + :param id: Resource ID. + :type id: str + :param default_backend_address_pool: Default backend address pool resource + of URL path map. + :type default_backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param default_backend_http_settings: Default backend http settings + resource of URL path map. + :type default_backend_http_settings: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param default_redirect_configuration: Default redirect configuration + resource of URL path map. + :type default_redirect_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param path_rules: Path rule of URL path map resource. + :type path_rules: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayPathRule] + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the URL path map that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'default_backend_address_pool': {'key': 'properties.defaultBackendAddressPool', 'type': 'SubResource'}, + 'default_backend_http_settings': {'key': 'properties.defaultBackendHttpSettings', 'type': 'SubResource'}, + 'default_redirect_configuration': {'key': 'properties.defaultRedirectConfiguration', 'type': 'SubResource'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[ApplicationGatewayPathRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayUrlPathMap, self).__init__(**kwargs) + self.default_backend_address_pool = kwargs.get('default_backend_address_pool', None) + self.default_backend_http_settings = kwargs.get('default_backend_http_settings', None) + self.default_redirect_configuration = kwargs.get('default_redirect_configuration', None) + self.path_rules = kwargs.get('path_rules', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_url_path_map_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_url_path_map_py3.py new file mode 100644 index 000000000000..b51b9c65d1d8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_url_path_map_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ApplicationGatewayUrlPathMap(SubResource): + """UrlPathMaps give a url path to the backend mapping information for + PathBasedRouting. + + :param id: Resource ID. + :type id: str + :param default_backend_address_pool: Default backend address pool resource + of URL path map. + :type default_backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param default_backend_http_settings: Default backend http settings + resource of URL path map. + :type default_backend_http_settings: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param default_redirect_configuration: Default redirect configuration + resource of URL path map. + :type default_redirect_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param path_rules: Path rule of URL path map resource. + :type path_rules: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayPathRule] + :param provisioning_state: Provisioning state of the backend http settings + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Name of the URL path map that is unique within an Application + Gateway. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param type: Type of the resource. + :type type: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'default_backend_address_pool': {'key': 'properties.defaultBackendAddressPool', 'type': 'SubResource'}, + 'default_backend_http_settings': {'key': 'properties.defaultBackendHttpSettings', 'type': 'SubResource'}, + 'default_redirect_configuration': {'key': 'properties.defaultRedirectConfiguration', 'type': 'SubResource'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[ApplicationGatewayPathRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, default_backend_address_pool=None, default_backend_http_settings=None, default_redirect_configuration=None, path_rules=None, provisioning_state: str=None, name: str=None, etag: str=None, type: str=None, **kwargs) -> None: + super(ApplicationGatewayUrlPathMap, self).__init__(id=id, **kwargs) + self.default_backend_address_pool = default_backend_address_pool + self.default_backend_http_settings = default_backend_http_settings + self.default_redirect_configuration = default_redirect_configuration + self.path_rules = path_rules + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_web_application_firewall_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_web_application_firewall_configuration.py new file mode 100644 index 000000000000..4658d15fc1cb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_web_application_firewall_configuration.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayWebApplicationFirewallConfiguration(Model): + """Application gateway web application firewall configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the web application firewall is enabled + or not. + :type enabled: bool + :param firewall_mode: Required. Web application firewall mode. Possible + values include: 'Detection', 'Prevention' + :type firewall_mode: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallMode + :param rule_set_type: Required. The type of the web application firewall + rule set. Possible values are: 'OWASP'. + :type rule_set_type: str + :param rule_set_version: Required. The version of the rule set type. + :type rule_set_version: str + :param disabled_rule_groups: The disabled rule groups. + :type disabled_rule_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallDisabledRuleGroup] + :param request_body_check: Whether allow WAF to check request Body. + :type request_body_check: bool + :param max_request_body_size: Maxium request body size for WAF. + :type max_request_body_size: int + """ + + _validation = { + 'enabled': {'required': True}, + 'firewall_mode': {'required': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'max_request_body_size': {'maximum': 128, 'minimum': 8}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'firewall_mode': {'key': 'firewallMode', 'type': 'str'}, + 'rule_set_type': {'key': 'ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'ruleSetVersion', 'type': 'str'}, + 'disabled_rule_groups': {'key': 'disabledRuleGroups', 'type': '[ApplicationGatewayFirewallDisabledRuleGroup]'}, + 'request_body_check': {'key': 'requestBodyCheck', 'type': 'bool'}, + 'max_request_body_size': {'key': 'maxRequestBodySize', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayWebApplicationFirewallConfiguration, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.firewall_mode = kwargs.get('firewall_mode', None) + self.rule_set_type = kwargs.get('rule_set_type', None) + self.rule_set_version = kwargs.get('rule_set_version', None) + self.disabled_rule_groups = kwargs.get('disabled_rule_groups', None) + self.request_body_check = kwargs.get('request_body_check', None) + self.max_request_body_size = kwargs.get('max_request_body_size', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_web_application_firewall_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_web_application_firewall_configuration_py3.py new file mode 100644 index 000000000000..55cd31b00be4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_gateway_web_application_firewall_configuration_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationGatewayWebApplicationFirewallConfiguration(Model): + """Application gateway web application firewall configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the web application firewall is enabled + or not. + :type enabled: bool + :param firewall_mode: Required. Web application firewall mode. Possible + values include: 'Detection', 'Prevention' + :type firewall_mode: str or + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallMode + :param rule_set_type: Required. The type of the web application firewall + rule set. Possible values are: 'OWASP'. + :type rule_set_type: str + :param rule_set_version: Required. The version of the rule set type. + :type rule_set_version: str + :param disabled_rule_groups: The disabled rule groups. + :type disabled_rule_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayFirewallDisabledRuleGroup] + :param request_body_check: Whether allow WAF to check request Body. + :type request_body_check: bool + :param max_request_body_size: Maxium request body size for WAF. + :type max_request_body_size: int + """ + + _validation = { + 'enabled': {'required': True}, + 'firewall_mode': {'required': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'max_request_body_size': {'maximum': 128, 'minimum': 8}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'firewall_mode': {'key': 'firewallMode', 'type': 'str'}, + 'rule_set_type': {'key': 'ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'ruleSetVersion', 'type': 'str'}, + 'disabled_rule_groups': {'key': 'disabledRuleGroups', 'type': '[ApplicationGatewayFirewallDisabledRuleGroup]'}, + 'request_body_check': {'key': 'requestBodyCheck', 'type': 'bool'}, + 'max_request_body_size': {'key': 'maxRequestBodySize', 'type': 'int'}, + } + + def __init__(self, *, enabled: bool, firewall_mode, rule_set_type: str, rule_set_version: str, disabled_rule_groups=None, request_body_check: bool=None, max_request_body_size: int=None, **kwargs) -> None: + super(ApplicationGatewayWebApplicationFirewallConfiguration, self).__init__(**kwargs) + self.enabled = enabled + self.firewall_mode = firewall_mode + self.rule_set_type = rule_set_type + self.rule_set_version = rule_set_version + self.disabled_rule_groups = disabled_rule_groups + self.request_body_check = request_body_check + self.max_request_body_size = max_request_body_size diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group.py new file mode 100644 index 000000000000..1372f778ae62 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group.py @@ -0,0 +1,68 @@ +# 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 .resource import Resource + + +class ApplicationSecurityGroup(Resource): + """An application security group in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the application + security group resource. It uniquely identifies a resource, even if the + user changes its name or migrate the resource across subscriptions or + resource groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the application + security group resource. Possible values are: 'Succeeded', 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationSecurityGroup, self).__init__(**kwargs) + self.resource_guid = None + self.provisioning_state = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group_paged.py new file mode 100644 index 000000000000..86a6171f37ac --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ApplicationSecurityGroupPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationSecurityGroup ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationSecurityGroup]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationSecurityGroupPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group_py3.py new file mode 100644 index 000000000000..fba3b3a222a5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/application_security_group_py3.py @@ -0,0 +1,68 @@ +# 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 .resource_py3 import Resource + + +class ApplicationSecurityGroup(Resource): + """An application security group in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the application + security group resource. It uniquely identifies a resource, even if the + user changes its name or migrate the resource across subscriptions or + resource groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the application + security group resource. Possible values are: 'Succeeded', 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(ApplicationSecurityGroup, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.resource_guid = None + self.provisioning_state = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/availability.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/availability.py new file mode 100644 index 000000000000..16b7cfa04955 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/availability.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Availability(Model): + """Availability of the metric. + + :param time_grain: The time grain of the availability. + :type time_grain: str + :param retention: The retention of the availability. + :type retention: str + :param blob_duration: Duration of the availability blob. + :type blob_duration: str + """ + + _attribute_map = { + 'time_grain': {'key': 'timeGrain', 'type': 'str'}, + 'retention': {'key': 'retention', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Availability, self).__init__(**kwargs) + self.time_grain = kwargs.get('time_grain', None) + self.retention = kwargs.get('retention', None) + self.blob_duration = kwargs.get('blob_duration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/availability_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/availability_py3.py new file mode 100644 index 000000000000..874d8878184f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/availability_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Availability(Model): + """Availability of the metric. + + :param time_grain: The time grain of the availability. + :type time_grain: str + :param retention: The retention of the availability. + :type retention: str + :param blob_duration: Duration of the availability blob. + :type blob_duration: str + """ + + _attribute_map = { + 'time_grain': {'key': 'timeGrain', 'type': 'str'}, + 'retention': {'key': 'retention', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, *, time_grain: str=None, retention: str=None, blob_duration: str=None, **kwargs) -> None: + super(Availability, self).__init__(**kwargs) + self.time_grain = time_grain + self.retention = retention + self.blob_duration = blob_duration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation.py new file mode 100644 index 000000000000..71c61ffa9624 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableDelegation(Model): + """The serviceName of an AvailableDelegation indicates a possible delegation + for a subnet. + + :param name: The name of the AvailableDelegation resource. + :type name: str + :param id: A unique identifier of the AvailableDelegation resource. + :type id: str + :param type: Resource type. + :type type: str + :param service_name: The name of the service and resource + :type service_name: str + :param actions: Describes the actions permitted to the service upon + delegation + :type actions: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'service_name': {'key': 'serviceName', 'type': 'str'}, + 'actions': {'key': 'actions', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AvailableDelegation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.type = kwargs.get('type', None) + self.service_name = kwargs.get('service_name', None) + self.actions = kwargs.get('actions', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation_paged.py new file mode 100644 index 000000000000..dbf7c7817882 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AvailableDelegationPaged(Paged): + """ + A paging container for iterating over a list of :class:`AvailableDelegation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AvailableDelegation]'} + } + + def __init__(self, *args, **kwargs): + + super(AvailableDelegationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation_py3.py new file mode 100644 index 000000000000..c5e8ae7405b5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_delegation_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableDelegation(Model): + """The serviceName of an AvailableDelegation indicates a possible delegation + for a subnet. + + :param name: The name of the AvailableDelegation resource. + :type name: str + :param id: A unique identifier of the AvailableDelegation resource. + :type id: str + :param type: Resource type. + :type type: str + :param service_name: The name of the service and resource + :type service_name: str + :param actions: Describes the actions permitted to the service upon + delegation + :type actions: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'service_name': {'key': 'serviceName', 'type': 'str'}, + 'actions': {'key': 'actions', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, id: str=None, type: str=None, service_name: str=None, actions=None, **kwargs) -> None: + super(AvailableDelegation, self).__init__(**kwargs) + self.name = name + self.id = id + self.type = type + self.service_name = service_name + self.actions = actions diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list.py new file mode 100644 index 000000000000..ee0f2ba874ae --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersList(Model): + """List of available countries with details. + + All required parameters must be populated in order to send to Azure. + + :param countries: Required. List of available countries. + :type countries: + list[~azure.mgmt.network.v2018_08_01.models.AvailableProvidersListCountry] + """ + + _validation = { + 'countries': {'required': True}, + } + + _attribute_map = { + 'countries': {'key': 'countries', 'type': '[AvailableProvidersListCountry]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersList, self).__init__(**kwargs) + self.countries = kwargs.get('countries', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_city.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_city.py new file mode 100644 index 000000000000..5f9aa271b981 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_city.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListCity(Model): + """City or town details. + + :param city_name: The city or town name. + :type city_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + """ + + _attribute_map = { + 'city_name': {'key': 'cityName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListCity, self).__init__(**kwargs) + self.city_name = kwargs.get('city_name', None) + self.providers = kwargs.get('providers', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_city_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_city_py3.py new file mode 100644 index 000000000000..888aa46a7cfc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_city_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListCity(Model): + """City or town details. + + :param city_name: The city or town name. + :type city_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + """ + + _attribute_map = { + 'city_name': {'key': 'cityName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + } + + def __init__(self, *, city_name: str=None, providers=None, **kwargs) -> None: + super(AvailableProvidersListCity, self).__init__(**kwargs) + self.city_name = city_name + self.providers = providers diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_country.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_country.py new file mode 100644 index 000000000000..8267d354134e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_country.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListCountry(Model): + """Country details. + + :param country_name: The country name. + :type country_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param states: List of available states in the country. + :type states: + list[~azure.mgmt.network.v2018_08_01.models.AvailableProvidersListState] + """ + + _attribute_map = { + 'country_name': {'key': 'countryName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'states': {'key': 'states', 'type': '[AvailableProvidersListState]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListCountry, self).__init__(**kwargs) + self.country_name = kwargs.get('country_name', None) + self.providers = kwargs.get('providers', None) + self.states = kwargs.get('states', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_country_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_country_py3.py new file mode 100644 index 000000000000..331c3ee276b6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_country_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListCountry(Model): + """Country details. + + :param country_name: The country name. + :type country_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param states: List of available states in the country. + :type states: + list[~azure.mgmt.network.v2018_08_01.models.AvailableProvidersListState] + """ + + _attribute_map = { + 'country_name': {'key': 'countryName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'states': {'key': 'states', 'type': '[AvailableProvidersListState]'}, + } + + def __init__(self, *, country_name: str=None, providers=None, states=None, **kwargs) -> None: + super(AvailableProvidersListCountry, self).__init__(**kwargs) + self.country_name = country_name + self.providers = providers + self.states = states diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_parameters.py new file mode 100644 index 000000000000..152b3b787c2b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListParameters(Model): + """Constraints that determine the list of available Internet service + providers. + + :param azure_locations: A list of Azure regions. + :type azure_locations: list[str] + :param country: The country for available providers list. + :type country: str + :param state: The state for available providers list. + :type state: str + :param city: The city or town for available providers list. + :type city: str + """ + + _attribute_map = { + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListParameters, self).__init__(**kwargs) + self.azure_locations = kwargs.get('azure_locations', None) + self.country = kwargs.get('country', None) + self.state = kwargs.get('state', None) + self.city = kwargs.get('city', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_parameters_py3.py new file mode 100644 index 000000000000..d5c541a7fcb6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListParameters(Model): + """Constraints that determine the list of available Internet service + providers. + + :param azure_locations: A list of Azure regions. + :type azure_locations: list[str] + :param country: The country for available providers list. + :type country: str + :param state: The state for available providers list. + :type state: str + :param city: The city or town for available providers list. + :type city: str + """ + + _attribute_map = { + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, *, azure_locations=None, country: str=None, state: str=None, city: str=None, **kwargs) -> None: + super(AvailableProvidersListParameters, self).__init__(**kwargs) + self.azure_locations = azure_locations + self.country = country + self.state = state + self.city = city diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_py3.py new file mode 100644 index 000000000000..535abdb33826 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersList(Model): + """List of available countries with details. + + All required parameters must be populated in order to send to Azure. + + :param countries: Required. List of available countries. + :type countries: + list[~azure.mgmt.network.v2018_08_01.models.AvailableProvidersListCountry] + """ + + _validation = { + 'countries': {'required': True}, + } + + _attribute_map = { + 'countries': {'key': 'countries', 'type': '[AvailableProvidersListCountry]'}, + } + + def __init__(self, *, countries, **kwargs) -> None: + super(AvailableProvidersList, self).__init__(**kwargs) + self.countries = countries diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_state.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_state.py new file mode 100644 index 000000000000..86c8a7cc3a72 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_state.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListState(Model): + """State details. + + :param state_name: The state name. + :type state_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param cities: List of available cities or towns in the state. + :type cities: + list[~azure.mgmt.network.v2018_08_01.models.AvailableProvidersListCity] + """ + + _attribute_map = { + 'state_name': {'key': 'stateName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'cities': {'key': 'cities', 'type': '[AvailableProvidersListCity]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListState, self).__init__(**kwargs) + self.state_name = kwargs.get('state_name', None) + self.providers = kwargs.get('providers', None) + self.cities = kwargs.get('cities', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_state_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_state_py3.py new file mode 100644 index 000000000000..82f3c6a478eb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/available_providers_list_state_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AvailableProvidersListState(Model): + """State details. + + :param state_name: The state name. + :type state_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param cities: List of available cities or towns in the state. + :type cities: + list[~azure.mgmt.network.v2018_08_01.models.AvailableProvidersListCity] + """ + + _attribute_map = { + 'state_name': {'key': 'stateName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'cities': {'key': 'cities', 'type': '[AvailableProvidersListCity]'}, + } + + def __init__(self, *, state_name: str=None, providers=None, cities=None, **kwargs) -> None: + super(AvailableProvidersListState, self).__init__(**kwargs) + self.state_name = state_name + self.providers = providers + self.cities = cities diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_async_operation_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_async_operation_result.py new file mode 100644 index 000000000000..8fdca8f9f4db --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_async_operation_result.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureAsyncOperationResult(Model): + """The response body contains the status of the specified asynchronous + operation, indicating whether it has succeeded, is in progress, or has + failed. Note that this status is distinct from the HTTP status code + returned for the Get Operation Status operation itself. If the asynchronous + operation succeeded, the response body includes the HTTP status code for + the successful request. If the asynchronous operation failed, the response + body includes the HTTP status code for the failed request and error + information regarding the failure. + + :param status: Status of the Azure async operation. Possible values are: + 'InProgress', 'Succeeded', and 'Failed'. Possible values include: + 'InProgress', 'Succeeded', 'Failed' + :type status: str or + ~azure.mgmt.network.v2018_08_01.models.NetworkOperationStatus + :param error: + :type error: ~azure.mgmt.network.v2018_08_01.models.Error + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, **kwargs): + super(AzureAsyncOperationResult, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.error = kwargs.get('error', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_async_operation_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_async_operation_result_py3.py new file mode 100644 index 000000000000..b7b4060f1608 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_async_operation_result_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureAsyncOperationResult(Model): + """The response body contains the status of the specified asynchronous + operation, indicating whether it has succeeded, is in progress, or has + failed. Note that this status is distinct from the HTTP status code + returned for the Get Operation Status operation itself. If the asynchronous + operation succeeded, the response body includes the HTTP status code for + the successful request. If the asynchronous operation failed, the response + body includes the HTTP status code for the failed request and error + information regarding the failure. + + :param status: Status of the Azure async operation. Possible values are: + 'InProgress', 'Succeeded', and 'Failed'. Possible values include: + 'InProgress', 'Succeeded', 'Failed' + :type status: str or + ~azure.mgmt.network.v2018_08_01.models.NetworkOperationStatus + :param error: + :type error: ~azure.mgmt.network.v2018_08_01.models.Error + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, *, status=None, error=None, **kwargs) -> None: + super(AzureAsyncOperationResult, self).__init__(**kwargs) + self.status = status + self.error = error diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall.py new file mode 100644 index 000000000000..721cf439f5cf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall.py @@ -0,0 +1,82 @@ +# 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 .resource import Resource + + +class AzureFirewall(Resource): + """Azure Firewall resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param application_rule_collections: Collection of application rule + collections used by Azure Firewall. + :type application_rule_collections: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallApplicationRuleCollection] + :param nat_rule_collections: Collection of NAT rule collections used by + Azure Firewall. + :type nat_rule_collections: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallNatRuleCollection] + :param network_rule_collections: Collection of network rule collections + used by Azure Firewall. + :type network_rule_collections: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallNetworkRuleCollection] + :param ip_configurations: IP configuration of the Azure Firewall resource. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallIPConfiguration] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'application_rule_collections': {'key': 'properties.applicationRuleCollections', 'type': '[AzureFirewallApplicationRuleCollection]'}, + 'nat_rule_collections': {'key': 'properties.natRuleCollections', 'type': '[AzureFirewallNatRuleCollection]'}, + 'network_rule_collections': {'key': 'properties.networkRuleCollections', 'type': '[AzureFirewallNetworkRuleCollection]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[AzureFirewallIPConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewall, self).__init__(**kwargs) + self.application_rule_collections = kwargs.get('application_rule_collections', None) + self.nat_rule_collections = kwargs.get('nat_rule_collections', None) + self.network_rule_collections = kwargs.get('network_rule_collections', None) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule.py new file mode 100644 index 000000000000..fde1a159d7c6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallApplicationRule(Model): + """Properties of an application rule. + + :param name: Name of the application rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param protocols: Array of ApplicationRuleProtocols. + :type protocols: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallApplicationRuleProtocol] + :param target_fqdns: List of FQDNs for this rule. + :type target_fqdns: list[str] + :param fqdn_tags: List of FQDN Tags for this rule. + :type fqdn_tags: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[AzureFirewallApplicationRuleProtocol]'}, + 'target_fqdns': {'key': 'targetFqdns', 'type': '[str]'}, + 'fqdn_tags': {'key': 'fqdnTags', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.protocols = kwargs.get('protocols', None) + self.target_fqdns = kwargs.get('target_fqdns', None) + self.fqdn_tags = kwargs.get('fqdn_tags', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_collection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_collection.py new file mode 100644 index 000000000000..3f89fcaa6a0e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_collection.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class AzureFirewallApplicationRuleCollection(SubResource): + """Application rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the application rule collection resource. + :type priority: int + :param action: The action type of a rule collection + :type action: ~azure.mgmt.network.v2018_08_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a application rule collection. + :type rules: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallApplicationRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallApplicationRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRuleCollection, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.action = kwargs.get('action', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_collection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_collection_py3.py new file mode 100644 index 000000000000..f95182d53ca1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_collection_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class AzureFirewallApplicationRuleCollection(SubResource): + """Application rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the application rule collection resource. + :type priority: int + :param action: The action type of a rule collection + :type action: ~azure.mgmt.network.v2018_08_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a application rule collection. + :type rules: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallApplicationRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallApplicationRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, action=None, rules=None, provisioning_state=None, name: str=None, **kwargs) -> None: + super(AzureFirewallApplicationRuleCollection, self).__init__(id=id, **kwargs) + self.priority = priority + self.action = action + self.rules = rules + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_protocol.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_protocol.py new file mode 100644 index 000000000000..1dd7160b3cc8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_protocol.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallApplicationRuleProtocol(Model): + """Properties of the application rule protocol. + + :param protocol_type: Protocol type. Possible values include: 'Http', + 'Https' + :type protocol_type: str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallApplicationRuleProtocolType + :param port: Port number for the protocol, cannot be greater than 64000. + This field is optional. + :type port: int + """ + + _validation = { + 'port': {'maximum': 64000, 'minimum': 0}, + } + + _attribute_map = { + 'protocol_type': {'key': 'protocolType', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRuleProtocol, self).__init__(**kwargs) + self.protocol_type = kwargs.get('protocol_type', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_protocol_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_protocol_py3.py new file mode 100644 index 000000000000..dbea85adb1bf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_protocol_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallApplicationRuleProtocol(Model): + """Properties of the application rule protocol. + + :param protocol_type: Protocol type. Possible values include: 'Http', + 'Https' + :type protocol_type: str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallApplicationRuleProtocolType + :param port: Port number for the protocol, cannot be greater than 64000. + This field is optional. + :type port: int + """ + + _validation = { + 'port': {'maximum': 64000, 'minimum': 0}, + } + + _attribute_map = { + 'protocol_type': {'key': 'protocolType', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, protocol_type=None, port: int=None, **kwargs) -> None: + super(AzureFirewallApplicationRuleProtocol, self).__init__(**kwargs) + self.protocol_type = protocol_type + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_py3.py new file mode 100644 index 000000000000..8fb0e1b8ec36 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_application_rule_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallApplicationRule(Model): + """Properties of an application rule. + + :param name: Name of the application rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param protocols: Array of ApplicationRuleProtocols. + :type protocols: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallApplicationRuleProtocol] + :param target_fqdns: List of FQDNs for this rule. + :type target_fqdns: list[str] + :param fqdn_tags: List of FQDN Tags for this rule. + :type fqdn_tags: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[AzureFirewallApplicationRuleProtocol]'}, + 'target_fqdns': {'key': 'targetFqdns', 'type': '[str]'}, + 'fqdn_tags': {'key': 'fqdnTags', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, source_addresses=None, protocols=None, target_fqdns=None, fqdn_tags=None, **kwargs) -> None: + super(AzureFirewallApplicationRule, self).__init__(**kwargs) + self.name = name + self.description = description + self.source_addresses = source_addresses + self.protocols = protocols + self.target_fqdns = target_fqdns + self.fqdn_tags = fqdn_tags diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag.py new file mode 100644 index 000000000000..bdcfb4d45e6c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag.py @@ -0,0 +1,63 @@ +# 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 .resource import Resource + + +class AzureFirewallFqdnTag(Resource): + """Azure Firewall FQDN Tag Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :ivar fqdn_tag_name: The name of this FQDN Tag. + :vartype fqdn_tag_name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'fqdn_tag_name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'fqdn_tag_name': {'key': 'properties.fqdnTagName', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallFqdnTag, self).__init__(**kwargs) + self.provisioning_state = None + self.fqdn_tag_name = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag_paged.py new file mode 100644 index 000000000000..6cc01a07ba2d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AzureFirewallFqdnTagPaged(Paged): + """ + A paging container for iterating over a list of :class:`AzureFirewallFqdnTag ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AzureFirewallFqdnTag]'} + } + + def __init__(self, *args, **kwargs): + + super(AzureFirewallFqdnTagPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag_py3.py new file mode 100644 index 000000000000..cb9e4ca2158d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_fqdn_tag_py3.py @@ -0,0 +1,63 @@ +# 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 .resource_py3 import Resource + + +class AzureFirewallFqdnTag(Resource): + """Azure Firewall FQDN Tag Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :ivar fqdn_tag_name: The name of this FQDN Tag. + :vartype fqdn_tag_name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'fqdn_tag_name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'fqdn_tag_name': {'key': 'properties.fqdnTagName', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(AzureFirewallFqdnTag, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.provisioning_state = None + self.fqdn_tag_name = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_ip_configuration.py new file mode 100644 index 000000000000..92d83cd68dfb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_ip_configuration.py @@ -0,0 +1,66 @@ +# 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 .sub_resource import SubResource + + +class AzureFirewallIPConfiguration(SubResource): + """IP configuration of an Azure Firewall. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The Firewall Internal Load Balancer IP to be + used as the next hop in User Defined Routes. + :type private_ip_address: str + :param subnet: Reference of the subnet resource. This resource must be + named 'AzureFirewallSubnet'. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. This field + is a mandatory input if subnet is not null. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallIPConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_ip_configuration_py3.py new file mode 100644 index 000000000000..d323072599bd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_ip_configuration_py3.py @@ -0,0 +1,66 @@ +# 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 .sub_resource_py3 import SubResource + + +class AzureFirewallIPConfiguration(SubResource): + """IP configuration of an Azure Firewall. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The Firewall Internal Load Balancer IP to be + used as the next hop in User Defined Routes. + :type private_ip_address: str + :param subnet: Reference of the subnet resource. This resource must be + named 'AzureFirewallSubnet'. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. This field + is a mandatory input if subnet is not null. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, subnet=None, public_ip_address=None, provisioning_state=None, name: str=None, **kwargs) -> None: + super(AzureFirewallIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rc_action.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rc_action.py new file mode 100644 index 000000000000..d88b34fa9b6d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rc_action.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallNatRCAction(Model): + """AzureFirewall NAT Rule Collection Action. + + :param type: The type of action. Possible values include: 'Snat', 'Dnat' + :type type: str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallNatRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNatRCAction, self).__init__(**kwargs) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rc_action_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rc_action_py3.py new file mode 100644 index 000000000000..ec47f0f5460a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rc_action_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallNatRCAction(Model): + """AzureFirewall NAT Rule Collection Action. + + :param type: The type of action. Possible values include: 'Snat', 'Dnat' + :type type: str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallNatRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, type=None, **kwargs) -> None: + super(AzureFirewallNatRCAction, self).__init__(**kwargs) + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule.py new file mode 100644 index 000000000000..7e8ea9122445 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallNatRule(Model): + """Properties of a NAT rule. + + :param name: Name of the NAT rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses for this + rule. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + :param protocols: Array of AzureFirewallNetworkRuleProtocols applicable to + this NAT rule. + :type protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallNetworkRuleProtocol] + :param translated_address: The translated address for this NAT rule. + :type translated_address: str + :param translated_port: The translated port for this NAT rule. + :type translated_port: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'translated_address': {'key': 'translatedAddress', 'type': 'str'}, + 'translated_port': {'key': 'translatedPort', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNatRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.destination_addresses = kwargs.get('destination_addresses', None) + self.destination_ports = kwargs.get('destination_ports', None) + self.protocols = kwargs.get('protocols', None) + self.translated_address = kwargs.get('translated_address', None) + self.translated_port = kwargs.get('translated_port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_collection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_collection.py new file mode 100644 index 000000000000..5627fdb3af20 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_collection.py @@ -0,0 +1,65 @@ +# 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 .sub_resource import SubResource + + +class AzureFirewallNatRuleCollection(SubResource): + """NAT rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the NAT rule collection resource. + :type priority: int + :param action: The action type of a NAT rule collection + :type action: + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallNatRCAction + :param rules: Collection of rules used by a NAT rule collection. + :type rules: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallNatRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallNatRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNatRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNatRuleCollection, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.action = kwargs.get('action', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_collection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_collection_py3.py new file mode 100644 index 000000000000..e73c4abadc0e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_collection_py3.py @@ -0,0 +1,65 @@ +# 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 .sub_resource_py3 import SubResource + + +class AzureFirewallNatRuleCollection(SubResource): + """NAT rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the NAT rule collection resource. + :type priority: int + :param action: The action type of a NAT rule collection + :type action: + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallNatRCAction + :param rules: Collection of rules used by a NAT rule collection. + :type rules: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallNatRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallNatRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNatRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, action=None, rules=None, provisioning_state=None, name: str=None, **kwargs) -> None: + super(AzureFirewallNatRuleCollection, self).__init__(id=id, **kwargs) + self.priority = priority + self.action = action + self.rules = rules + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_py3.py new file mode 100644 index 000000000000..ddc715746307 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_nat_rule_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallNatRule(Model): + """Properties of a NAT rule. + + :param name: Name of the NAT rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses for this + rule. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + :param protocols: Array of AzureFirewallNetworkRuleProtocols applicable to + this NAT rule. + :type protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallNetworkRuleProtocol] + :param translated_address: The translated address for this NAT rule. + :type translated_address: str + :param translated_port: The translated port for this NAT rule. + :type translated_port: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'translated_address': {'key': 'translatedAddress', 'type': 'str'}, + 'translated_port': {'key': 'translatedPort', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, description: str=None, source_addresses=None, destination_addresses=None, destination_ports=None, protocols=None, translated_address: str=None, translated_port: str=None, **kwargs) -> None: + super(AzureFirewallNatRule, self).__init__(**kwargs) + self.name = name + self.description = description + self.source_addresses = source_addresses + self.destination_addresses = destination_addresses + self.destination_ports = destination_ports + self.protocols = protocols + self.translated_address = translated_address + self.translated_port = translated_port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule.py new file mode 100644 index 000000000000..dc1bc0ac6004 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallNetworkRule(Model): + """Properties of the network rule. + + :param name: Name of the network rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param protocols: Array of AzureFirewallNetworkRuleProtocols. + :type protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallNetworkRuleProtocol] + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNetworkRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.protocols = kwargs.get('protocols', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.destination_addresses = kwargs.get('destination_addresses', None) + self.destination_ports = kwargs.get('destination_ports', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_collection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_collection.py new file mode 100644 index 000000000000..d4a1dd0f1c32 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_collection.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class AzureFirewallNetworkRuleCollection(SubResource): + """Network rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the network rule collection resource. + :type priority: int + :param action: The action type of a rule collection + :type action: ~azure.mgmt.network.v2018_08_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a network rule collection. + :type rules: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallNetworkRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNetworkRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNetworkRuleCollection, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.action = kwargs.get('action', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_collection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_collection_py3.py new file mode 100644 index 000000000000..94a0845c25b7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_collection_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class AzureFirewallNetworkRuleCollection(SubResource): + """Network rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the network rule collection resource. + :type priority: int + :param action: The action type of a rule collection + :type action: ~azure.mgmt.network.v2018_08_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a network rule collection. + :type rules: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallNetworkRule] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNetworkRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, action=None, rules=None, provisioning_state=None, name: str=None, **kwargs) -> None: + super(AzureFirewallNetworkRuleCollection, self).__init__(id=id, **kwargs) + self.priority = priority + self.action = action + self.rules = rules + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_py3.py new file mode 100644 index 000000000000..e1f6620a7731 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_network_rule_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallNetworkRule(Model): + """Properties of the network rule. + + :param name: Name of the network rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param protocols: Array of AzureFirewallNetworkRuleProtocols. + :type protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallNetworkRuleProtocol] + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, protocols=None, source_addresses=None, destination_addresses=None, destination_ports=None, **kwargs) -> None: + super(AzureFirewallNetworkRule, self).__init__(**kwargs) + self.name = name + self.description = description + self.protocols = protocols + self.source_addresses = source_addresses + self.destination_addresses = destination_addresses + self.destination_ports = destination_ports diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_paged.py new file mode 100644 index 000000000000..766a0bca7428 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AzureFirewallPaged(Paged): + """ + A paging container for iterating over a list of :class:`AzureFirewall ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AzureFirewall]'} + } + + def __init__(self, *args, **kwargs): + + super(AzureFirewallPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_py3.py new file mode 100644 index 000000000000..f622bc7e7012 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_py3.py @@ -0,0 +1,82 @@ +# 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 .resource_py3 import Resource + + +class AzureFirewall(Resource): + """Azure Firewall resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param application_rule_collections: Collection of application rule + collections used by Azure Firewall. + :type application_rule_collections: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallApplicationRuleCollection] + :param nat_rule_collections: Collection of NAT rule collections used by + Azure Firewall. + :type nat_rule_collections: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallNatRuleCollection] + :param network_rule_collections: Collection of network rule collections + used by Azure Firewall. + :type network_rule_collections: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallNetworkRuleCollection] + :param ip_configurations: IP configuration of the Azure Firewall resource. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.AzureFirewallIPConfiguration] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'application_rule_collections': {'key': 'properties.applicationRuleCollections', 'type': '[AzureFirewallApplicationRuleCollection]'}, + 'nat_rule_collections': {'key': 'properties.natRuleCollections', 'type': '[AzureFirewallNatRuleCollection]'}, + 'network_rule_collections': {'key': 'properties.networkRuleCollections', 'type': '[AzureFirewallNetworkRuleCollection]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[AzureFirewallIPConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, application_rule_collections=None, nat_rule_collections=None, network_rule_collections=None, ip_configurations=None, provisioning_state=None, **kwargs) -> None: + super(AzureFirewall, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.application_rule_collections = application_rule_collections + self.nat_rule_collections = nat_rule_collections + self.network_rule_collections = network_rule_collections + self.ip_configurations = ip_configurations + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_rc_action.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_rc_action.py new file mode 100644 index 000000000000..352b810f2610 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_rc_action.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallRCAction(Model): + """Properties of the AzureFirewallRCAction. + + :param type: The type of action. Possible values include: 'Allow', 'Deny' + :type type: str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallRCAction, self).__init__(**kwargs) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_rc_action_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_rc_action_py3.py new file mode 100644 index 000000000000..91f33ba5544e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_firewall_rc_action_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureFirewallRCAction(Model): + """Properties of the AzureFirewallRCAction. + + :param type: The type of action. Possible values include: 'Allow', 'Deny' + :type type: str or + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, type=None, **kwargs) -> None: + super(AzureFirewallRCAction, self).__init__(**kwargs) + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report.py new file mode 100644 index 000000000000..32cc33d6ae5d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReport(Model): + """Azure reachability report details. + + All required parameters must be populated in order to send to Azure. + + :param aggregation_level: Required. The aggregation level of Azure + reachability report. Can be Country, State or City. + :type aggregation_level: str + :param provider_location: Required. + :type provider_location: + ~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportLocation + :param reachability_report: Required. List of Azure reachability report + items. + :type reachability_report: + list[~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportItem] + """ + + _validation = { + 'aggregation_level': {'required': True}, + 'provider_location': {'required': True}, + 'reachability_report': {'required': True}, + } + + _attribute_map = { + 'aggregation_level': {'key': 'aggregationLevel', 'type': 'str'}, + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'reachability_report': {'key': 'reachabilityReport', 'type': '[AzureReachabilityReportItem]'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReport, self).__init__(**kwargs) + self.aggregation_level = kwargs.get('aggregation_level', None) + self.provider_location = kwargs.get('provider_location', None) + self.reachability_report = kwargs.get('reachability_report', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_item.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_item.py new file mode 100644 index 000000000000..6667ea91c417 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_item.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportItem(Model): + """Azure reachability report details for a given provider location. + + :param provider: The Internet service provider. + :type provider: str + :param azure_location: The Azure region. + :type azure_location: str + :param latencies: List of latency details for each of the time series. + :type latencies: + list[~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportLatencyInfo] + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'azure_location': {'key': 'azureLocation', 'type': 'str'}, + 'latencies': {'key': 'latencies', 'type': '[AzureReachabilityReportLatencyInfo]'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportItem, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.azure_location = kwargs.get('azure_location', None) + self.latencies = kwargs.get('latencies', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_item_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_item_py3.py new file mode 100644 index 000000000000..a8cde188ef61 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_item_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportItem(Model): + """Azure reachability report details for a given provider location. + + :param provider: The Internet service provider. + :type provider: str + :param azure_location: The Azure region. + :type azure_location: str + :param latencies: List of latency details for each of the time series. + :type latencies: + list[~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportLatencyInfo] + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'azure_location': {'key': 'azureLocation', 'type': 'str'}, + 'latencies': {'key': 'latencies', 'type': '[AzureReachabilityReportLatencyInfo]'}, + } + + def __init__(self, *, provider: str=None, azure_location: str=None, latencies=None, **kwargs) -> None: + super(AzureReachabilityReportItem, self).__init__(**kwargs) + self.provider = provider + self.azure_location = azure_location + self.latencies = latencies diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_latency_info.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_latency_info.py new file mode 100644 index 000000000000..e5f77641a138 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_latency_info.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportLatencyInfo(Model): + """Details on latency for a time series. + + :param time_stamp: The time stamp. + :type time_stamp: datetime + :param score: The relative latency score between 1 and 100, higher values + indicating a faster connection. + :type score: int + """ + + _validation = { + 'score': {'maximum': 100, 'minimum': 1}, + } + + _attribute_map = { + 'time_stamp': {'key': 'timeStamp', 'type': 'iso-8601'}, + 'score': {'key': 'score', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportLatencyInfo, self).__init__(**kwargs) + self.time_stamp = kwargs.get('time_stamp', None) + self.score = kwargs.get('score', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_latency_info_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_latency_info_py3.py new file mode 100644 index 000000000000..dd9d8fda369c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_latency_info_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportLatencyInfo(Model): + """Details on latency for a time series. + + :param time_stamp: The time stamp. + :type time_stamp: datetime + :param score: The relative latency score between 1 and 100, higher values + indicating a faster connection. + :type score: int + """ + + _validation = { + 'score': {'maximum': 100, 'minimum': 1}, + } + + _attribute_map = { + 'time_stamp': {'key': 'timeStamp', 'type': 'iso-8601'}, + 'score': {'key': 'score', 'type': 'int'}, + } + + def __init__(self, *, time_stamp=None, score: int=None, **kwargs) -> None: + super(AzureReachabilityReportLatencyInfo, self).__init__(**kwargs) + self.time_stamp = time_stamp + self.score = score diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_location.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_location.py new file mode 100644 index 000000000000..76c132e89575 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportLocation(Model): + """Parameters that define a geographic location. + + All required parameters must be populated in order to send to Azure. + + :param country: Required. The name of the country. + :type country: str + :param state: The name of the state. + :type state: str + :param city: The name of the city or town. + :type city: str + """ + + _validation = { + 'country': {'required': True}, + } + + _attribute_map = { + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportLocation, self).__init__(**kwargs) + self.country = kwargs.get('country', None) + self.state = kwargs.get('state', None) + self.city = kwargs.get('city', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_location_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_location_py3.py new file mode 100644 index 000000000000..1db868eab46f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_location_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportLocation(Model): + """Parameters that define a geographic location. + + All required parameters must be populated in order to send to Azure. + + :param country: Required. The name of the country. + :type country: str + :param state: The name of the state. + :type state: str + :param city: The name of the city or town. + :type city: str + """ + + _validation = { + 'country': {'required': True}, + } + + _attribute_map = { + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, *, country: str, state: str=None, city: str=None, **kwargs) -> None: + super(AzureReachabilityReportLocation, self).__init__(**kwargs) + self.country = country + self.state = state + self.city = city diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_parameters.py new file mode 100644 index 000000000000..b2b32e741e95 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_parameters.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportParameters(Model): + """Geographic and time constraints for Azure reachability report. + + All required parameters must be populated in order to send to Azure. + + :param provider_location: Required. + :type provider_location: + ~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportLocation + :param providers: List of Internet service providers. + :type providers: list[str] + :param azure_locations: Optional Azure regions to scope the query to. + :type azure_locations: list[str] + :param start_time: Required. The start time for the Azure reachability + report. + :type start_time: datetime + :param end_time: Required. The end time for the Azure reachability report. + :type end_time: datetime + """ + + _validation = { + 'provider_location': {'required': True}, + 'start_time': {'required': True}, + 'end_time': {'required': True}, + } + + _attribute_map = { + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportParameters, self).__init__(**kwargs) + self.provider_location = kwargs.get('provider_location', None) + self.providers = kwargs.get('providers', None) + self.azure_locations = kwargs.get('azure_locations', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_parameters_py3.py new file mode 100644 index 000000000000..0500c449a9d1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_parameters_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReportParameters(Model): + """Geographic and time constraints for Azure reachability report. + + All required parameters must be populated in order to send to Azure. + + :param provider_location: Required. + :type provider_location: + ~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportLocation + :param providers: List of Internet service providers. + :type providers: list[str] + :param azure_locations: Optional Azure regions to scope the query to. + :type azure_locations: list[str] + :param start_time: Required. The start time for the Azure reachability + report. + :type start_time: datetime + :param end_time: Required. The end time for the Azure reachability report. + :type end_time: datetime + """ + + _validation = { + 'provider_location': {'required': True}, + 'start_time': {'required': True}, + 'end_time': {'required': True}, + } + + _attribute_map = { + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, provider_location, start_time, end_time, providers=None, azure_locations=None, **kwargs) -> None: + super(AzureReachabilityReportParameters, self).__init__(**kwargs) + self.provider_location = provider_location + self.providers = providers + self.azure_locations = azure_locations + self.start_time = start_time + self.end_time = end_time diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_py3.py new file mode 100644 index 000000000000..00064909580c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/azure_reachability_report_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureReachabilityReport(Model): + """Azure reachability report details. + + All required parameters must be populated in order to send to Azure. + + :param aggregation_level: Required. The aggregation level of Azure + reachability report. Can be Country, State or City. + :type aggregation_level: str + :param provider_location: Required. + :type provider_location: + ~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportLocation + :param reachability_report: Required. List of Azure reachability report + items. + :type reachability_report: + list[~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportItem] + """ + + _validation = { + 'aggregation_level': {'required': True}, + 'provider_location': {'required': True}, + 'reachability_report': {'required': True}, + } + + _attribute_map = { + 'aggregation_level': {'key': 'aggregationLevel', 'type': 'str'}, + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'reachability_report': {'key': 'reachabilityReport', 'type': '[AzureReachabilityReportItem]'}, + } + + def __init__(self, *, aggregation_level: str, provider_location, reachability_report, **kwargs) -> None: + super(AzureReachabilityReport, self).__init__(**kwargs) + self.aggregation_level = aggregation_level + self.provider_location = provider_location + self.reachability_report = reachability_report diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool.py new file mode 100644 index 000000000000..fa18934e17ae --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool.py @@ -0,0 +1,68 @@ +# 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 .sub_resource import SubResource + + +class BackendAddressPool(SubResource): + """Pool of backend IP addresses. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar backend_ip_configurations: Gets collection of references to IP + addresses defined in network interfaces. + :vartype backend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration] + :ivar load_balancing_rules: Gets load balancing rules that use this + backend address pool. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar outbound_rule: Gets outbound rules that use this backend address + pool. + :vartype outbound_rule: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Get provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'backend_ip_configurations': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + 'outbound_rule': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'outbound_rule': {'key': 'properties.outboundRule', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BackendAddressPool, self).__init__(**kwargs) + self.backend_ip_configurations = None + self.load_balancing_rules = None + self.outbound_rule = None + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool_paged.py new file mode 100644 index 000000000000..c40df0fbe012 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class BackendAddressPoolPaged(Paged): + """ + A paging container for iterating over a list of :class:`BackendAddressPool ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BackendAddressPool]'} + } + + def __init__(self, *args, **kwargs): + + super(BackendAddressPoolPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool_py3.py new file mode 100644 index 000000000000..8f64ed2dfa7a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/backend_address_pool_py3.py @@ -0,0 +1,68 @@ +# 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 .sub_resource_py3 import SubResource + + +class BackendAddressPool(SubResource): + """Pool of backend IP addresses. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar backend_ip_configurations: Gets collection of references to IP + addresses defined in network interfaces. + :vartype backend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration] + :ivar load_balancing_rules: Gets load balancing rules that use this + backend address pool. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar outbound_rule: Gets outbound rules that use this backend address + pool. + :vartype outbound_rule: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Get provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'backend_ip_configurations': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + 'outbound_rule': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'outbound_rule': {'key': 'properties.outboundRule', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(BackendAddressPool, self).__init__(id=id, **kwargs) + self.backend_ip_configurations = None + self.load_balancing_rules = None + self.outbound_rule = None + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_community.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_community.py new file mode 100644 index 000000000000..472a170e9ceb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_community.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BGPCommunity(Model): + """Contains bgp community information offered in Service Community resources. + + :param service_supported_region: The region which the service support. + e.g. For O365, region is Global. + :type service_supported_region: str + :param community_name: The name of the bgp community. e.g. Skype. + :type community_name: str + :param community_value: The value of the bgp community. For more + information: + https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing. + :type community_value: str + :param community_prefixes: The prefixes that the bgp community contains. + :type community_prefixes: list[str] + :param is_authorized_to_use: Customer is authorized to use bgp community + or not. + :type is_authorized_to_use: bool + :param service_group: The service group of the bgp community contains. + :type service_group: str + """ + + _attribute_map = { + 'service_supported_region': {'key': 'serviceSupportedRegion', 'type': 'str'}, + 'community_name': {'key': 'communityName', 'type': 'str'}, + 'community_value': {'key': 'communityValue', 'type': 'str'}, + 'community_prefixes': {'key': 'communityPrefixes', 'type': '[str]'}, + 'is_authorized_to_use': {'key': 'isAuthorizedToUse', 'type': 'bool'}, + 'service_group': {'key': 'serviceGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BGPCommunity, self).__init__(**kwargs) + self.service_supported_region = kwargs.get('service_supported_region', None) + self.community_name = kwargs.get('community_name', None) + self.community_value = kwargs.get('community_value', None) + self.community_prefixes = kwargs.get('community_prefixes', None) + self.is_authorized_to_use = kwargs.get('is_authorized_to_use', None) + self.service_group = kwargs.get('service_group', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_community_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_community_py3.py new file mode 100644 index 000000000000..86b740c84404 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_community_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BGPCommunity(Model): + """Contains bgp community information offered in Service Community resources. + + :param service_supported_region: The region which the service support. + e.g. For O365, region is Global. + :type service_supported_region: str + :param community_name: The name of the bgp community. e.g. Skype. + :type community_name: str + :param community_value: The value of the bgp community. For more + information: + https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing. + :type community_value: str + :param community_prefixes: The prefixes that the bgp community contains. + :type community_prefixes: list[str] + :param is_authorized_to_use: Customer is authorized to use bgp community + or not. + :type is_authorized_to_use: bool + :param service_group: The service group of the bgp community contains. + :type service_group: str + """ + + _attribute_map = { + 'service_supported_region': {'key': 'serviceSupportedRegion', 'type': 'str'}, + 'community_name': {'key': 'communityName', 'type': 'str'}, + 'community_value': {'key': 'communityValue', 'type': 'str'}, + 'community_prefixes': {'key': 'communityPrefixes', 'type': '[str]'}, + 'is_authorized_to_use': {'key': 'isAuthorizedToUse', 'type': 'bool'}, + 'service_group': {'key': 'serviceGroup', 'type': 'str'}, + } + + def __init__(self, *, service_supported_region: str=None, community_name: str=None, community_value: str=None, community_prefixes=None, is_authorized_to_use: bool=None, service_group: str=None, **kwargs) -> None: + super(BGPCommunity, self).__init__(**kwargs) + self.service_supported_region = service_supported_region + self.community_name = community_name + self.community_value = community_value + self.community_prefixes = community_prefixes + self.is_authorized_to_use = is_authorized_to_use + self.service_group = service_group diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status.py new file mode 100644 index 000000000000..b846d98a1bc2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpPeerStatus(Model): + """BGP peer status details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The virtual network gateway's local address + :vartype local_address: str + :ivar neighbor: The remote BGP peer + :vartype neighbor: str + :ivar asn: The autonomous system number of the remote BGP peer + :vartype asn: int + :ivar state: The BGP peer state. Possible values include: 'Unknown', + 'Stopped', 'Idle', 'Connecting', 'Connected' + :vartype state: str or ~azure.mgmt.network.v2018_08_01.models.BgpPeerState + :ivar connected_duration: For how long the peering has been up + :vartype connected_duration: str + :ivar routes_received: The number of routes learned from this peer + :vartype routes_received: long + :ivar messages_sent: The number of BGP messages sent + :vartype messages_sent: long + :ivar messages_received: The number of BGP messages received + :vartype messages_received: long + """ + + _validation = { + 'local_address': {'readonly': True}, + 'neighbor': {'readonly': True}, + 'asn': {'readonly': True}, + 'state': {'readonly': True}, + 'connected_duration': {'readonly': True}, + 'routes_received': {'readonly': True}, + 'messages_sent': {'readonly': True}, + 'messages_received': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'str'}, + 'connected_duration': {'key': 'connectedDuration', 'type': 'str'}, + 'routes_received': {'key': 'routesReceived', 'type': 'long'}, + 'messages_sent': {'key': 'messagesSent', 'type': 'long'}, + 'messages_received': {'key': 'messagesReceived', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(BgpPeerStatus, self).__init__(**kwargs) + self.local_address = None + self.neighbor = None + self.asn = None + self.state = None + self.connected_duration = None + self.routes_received = None + self.messages_sent = None + self.messages_received = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_list_result.py new file mode 100644 index 000000000000..7ebe2c7dc33d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_list_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpPeerStatusListResult(Model): + """Response for list BGP peer status API service call. + + :param value: List of BGP peers + :type value: list[~azure.mgmt.network.v2018_08_01.models.BgpPeerStatus] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[BgpPeerStatus]'}, + } + + def __init__(self, **kwargs): + super(BgpPeerStatusListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_list_result_py3.py new file mode 100644 index 000000000000..182bb4545824 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_list_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpPeerStatusListResult(Model): + """Response for list BGP peer status API service call. + + :param value: List of BGP peers + :type value: list[~azure.mgmt.network.v2018_08_01.models.BgpPeerStatus] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[BgpPeerStatus]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(BgpPeerStatusListResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_py3.py new file mode 100644 index 000000000000..7515118503e1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_peer_status_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpPeerStatus(Model): + """BGP peer status details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The virtual network gateway's local address + :vartype local_address: str + :ivar neighbor: The remote BGP peer + :vartype neighbor: str + :ivar asn: The autonomous system number of the remote BGP peer + :vartype asn: int + :ivar state: The BGP peer state. Possible values include: 'Unknown', + 'Stopped', 'Idle', 'Connecting', 'Connected' + :vartype state: str or ~azure.mgmt.network.v2018_08_01.models.BgpPeerState + :ivar connected_duration: For how long the peering has been up + :vartype connected_duration: str + :ivar routes_received: The number of routes learned from this peer + :vartype routes_received: long + :ivar messages_sent: The number of BGP messages sent + :vartype messages_sent: long + :ivar messages_received: The number of BGP messages received + :vartype messages_received: long + """ + + _validation = { + 'local_address': {'readonly': True}, + 'neighbor': {'readonly': True}, + 'asn': {'readonly': True}, + 'state': {'readonly': True}, + 'connected_duration': {'readonly': True}, + 'routes_received': {'readonly': True}, + 'messages_sent': {'readonly': True}, + 'messages_received': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'str'}, + 'connected_duration': {'key': 'connectedDuration', 'type': 'str'}, + 'routes_received': {'key': 'routesReceived', 'type': 'long'}, + 'messages_sent': {'key': 'messagesSent', 'type': 'long'}, + 'messages_received': {'key': 'messagesReceived', 'type': 'long'}, + } + + def __init__(self, **kwargs) -> None: + super(BgpPeerStatus, self).__init__(**kwargs) + self.local_address = None + self.neighbor = None + self.asn = None + self.state = None + self.connected_duration = None + self.routes_received = None + self.messages_sent = None + self.messages_received = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community.py new file mode 100644 index 000000000000..aec1275700cc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class BgpServiceCommunity(Resource): + """Service Community Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_name: The name of the bgp community. e.g. Skype. + :type service_name: str + :param bgp_communities: Get a list of bgp communities. + :type bgp_communities: + list[~azure.mgmt.network.v2018_08_01.models.BGPCommunity] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'bgp_communities': {'key': 'properties.bgpCommunities', 'type': '[BGPCommunity]'}, + } + + def __init__(self, **kwargs): + super(BgpServiceCommunity, self).__init__(**kwargs) + self.service_name = kwargs.get('service_name', None) + self.bgp_communities = kwargs.get('bgp_communities', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community_paged.py new file mode 100644 index 000000000000..ce5739dda800 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class BgpServiceCommunityPaged(Paged): + """ + A paging container for iterating over a list of :class:`BgpServiceCommunity ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BgpServiceCommunity]'} + } + + def __init__(self, *args, **kwargs): + + super(BgpServiceCommunityPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community_py3.py new file mode 100644 index 000000000000..30f2035b0948 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_service_community_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class BgpServiceCommunity(Resource): + """Service Community Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_name: The name of the bgp community. e.g. Skype. + :type service_name: str + :param bgp_communities: Get a list of bgp communities. + :type bgp_communities: + list[~azure.mgmt.network.v2018_08_01.models.BGPCommunity] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'bgp_communities': {'key': 'properties.bgpCommunities', 'type': '[BGPCommunity]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, service_name: str=None, bgp_communities=None, **kwargs) -> None: + super(BgpServiceCommunity, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.service_name = service_name + self.bgp_communities = bgp_communities diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_settings.py new file mode 100644 index 000000000000..e6e8d1b90aa6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_settings.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpSettings(Model): + """BGP settings details. + + :param asn: The BGP speaker's ASN. + :type asn: long + :param bgp_peering_address: The BGP peering address and BGP identifier of + this BGP speaker. + :type bgp_peering_address: str + :param peer_weight: The weight added to routes learned from this BGP + speaker. + :type peer_weight: int + """ + + _attribute_map = { + 'asn': {'key': 'asn', 'type': 'long'}, + 'bgp_peering_address': {'key': 'bgpPeeringAddress', 'type': 'str'}, + 'peer_weight': {'key': 'peerWeight', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(BgpSettings, self).__init__(**kwargs) + self.asn = kwargs.get('asn', None) + self.bgp_peering_address = kwargs.get('bgp_peering_address', None) + self.peer_weight = kwargs.get('peer_weight', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_settings_py3.py new file mode 100644 index 000000000000..cb3b3e6795f7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/bgp_settings_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BgpSettings(Model): + """BGP settings details. + + :param asn: The BGP speaker's ASN. + :type asn: long + :param bgp_peering_address: The BGP peering address and BGP identifier of + this BGP speaker. + :type bgp_peering_address: str + :param peer_weight: The weight added to routes learned from this BGP + speaker. + :type peer_weight: int + """ + + _attribute_map = { + 'asn': {'key': 'asn', 'type': 'long'}, + 'bgp_peering_address': {'key': 'bgpPeeringAddress', 'type': 'str'}, + 'peer_weight': {'key': 'peerWeight', 'type': 'int'}, + } + + def __init__(self, *, asn: int=None, bgp_peering_address: str=None, peer_weight: int=None, **kwargs) -> None: + super(BgpSettings, self).__init__(**kwargs) + self.asn = asn + self.bgp_peering_address = bgp_peering_address + self.peer_weight = peer_weight diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor.py new file mode 100644 index 000000000000..fadf15753543 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitor(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitor, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_destination.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_destination.py new file mode 100644 index 000000000000..9d1e3885cb38 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_destination.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorDestination(Model): + """Describes the destination of connection monitor. + + :param resource_id: The ID of the resource used as the destination by + connection monitor. + :type resource_id: str + :param address: Address of the connection monitor destination (IP or + domain name). + :type address: str + :param port: The destination port used by connection monitor. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorDestination, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.address = kwargs.get('address', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_destination_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_destination_py3.py new file mode 100644 index 000000000000..59e7465804ce --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_destination_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorDestination(Model): + """Describes the destination of connection monitor. + + :param resource_id: The ID of the resource used as the destination by + connection monitor. + :type resource_id: str + :param address: Address of the connection monitor destination (IP or + domain name). + :type address: str + :param port: The destination port used by connection monitor. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str=None, address: str=None, port: int=None, **kwargs) -> None: + super(ConnectionMonitorDestination, self).__init__(**kwargs) + self.resource_id = resource_id + self.address = address + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_parameters.py new file mode 100644 index 000000000000..ed0e9a3a6118 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_parameters.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorParameters(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorParameters, self).__init__(**kwargs) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_parameters_py3.py new file mode 100644 index 000000000000..9bd397e0104e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_parameters_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorParameters(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, *, source, destination, auto_start: bool=True, monitoring_interval_in_seconds: int=60, **kwargs) -> None: + super(ConnectionMonitorParameters, self).__init__(**kwargs) + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_py3.py new file mode 100644 index 000000000000..2f6984769c69 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitor(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, *, source, destination, location: str=None, tags=None, auto_start: bool=True, monitoring_interval_in_seconds: int=60, **kwargs) -> None: + super(ConnectionMonitor, self).__init__(**kwargs) + self.location = location + self.tags = tags + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_query_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_query_result.py new file mode 100644 index 000000000000..8f6936ad6881 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_query_result.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorQueryResult(Model): + """List of connection states snaphots. + + :param source_status: Status of connection monitor source. Possible values + include: 'Uknown', 'Active', 'Inactive' + :type source_status: str or + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorSourceStatus + :param states: Information about connection states. + :type states: + list[~azure.mgmt.network.v2018_08_01.models.ConnectionStateSnapshot] + """ + + _attribute_map = { + 'source_status': {'key': 'sourceStatus', 'type': 'str'}, + 'states': {'key': 'states', 'type': '[ConnectionStateSnapshot]'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorQueryResult, self).__init__(**kwargs) + self.source_status = kwargs.get('source_status', None) + self.states = kwargs.get('states', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_query_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_query_result_py3.py new file mode 100644 index 000000000000..abf19f804556 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_query_result_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorQueryResult(Model): + """List of connection states snaphots. + + :param source_status: Status of connection monitor source. Possible values + include: 'Uknown', 'Active', 'Inactive' + :type source_status: str or + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorSourceStatus + :param states: Information about connection states. + :type states: + list[~azure.mgmt.network.v2018_08_01.models.ConnectionStateSnapshot] + """ + + _attribute_map = { + 'source_status': {'key': 'sourceStatus', 'type': 'str'}, + 'states': {'key': 'states', 'type': '[ConnectionStateSnapshot]'}, + } + + def __init__(self, *, source_status=None, states=None, **kwargs) -> None: + super(ConnectionMonitorQueryResult, self).__init__(**kwargs) + self.source_status = source_status + self.states = states diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result.py new file mode 100644 index 000000000000..fc0dc5eac790 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result.py @@ -0,0 +1,98 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorResult(Model): + """Information about the connection monitor. + + 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 name: Name of the connection monitor. + :vartype name: str + :ivar id: ID of the connection monitor. + :vartype id: str + :param etag: Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :ivar type: Connection monitor type. + :vartype type: str + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + :param provisioning_state: The provisioning state of the connection + monitor. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param start_time: The date and time when the connection monitor was + started. + :type start_time: datetime + :param monitoring_status: The monitoring status of the connection monitor. + :type monitoring_status: str + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'monitoring_status': {'key': 'properties.monitoringStatus', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = kwargs.get('etag', "A unique read-only string that changes whenever the resource is updated.") + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.start_time = kwargs.get('start_time', None) + self.monitoring_status = kwargs.get('monitoring_status', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result_paged.py new file mode 100644 index 000000000000..8a2ad2280441 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ConnectionMonitorResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`ConnectionMonitorResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ConnectionMonitorResult]'} + } + + def __init__(self, *args, **kwargs): + + super(ConnectionMonitorResultPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result_py3.py new file mode 100644 index 000000000000..097ee30d2549 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_result_py3.py @@ -0,0 +1,98 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorResult(Model): + """Information about the connection monitor. + + 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 name: Name of the connection monitor. + :vartype name: str + :ivar id: ID of the connection monitor. + :vartype id: str + :param etag: Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :ivar type: Connection monitor type. + :vartype type: str + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. + :type source: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorSource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + :param provisioning_state: The provisioning state of the connection + monitor. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param start_time: The date and time when the connection monitor was + started. + :type start_time: datetime + :param monitoring_status: The monitoring status of the connection monitor. + :type monitoring_status: str + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'monitoring_status': {'key': 'properties.monitoringStatus', 'type': 'str'}, + } + + def __init__(self, *, source, destination, etag: str="A unique read-only string that changes whenever the resource is updated.", location: str=None, tags=None, auto_start: bool=True, monitoring_interval_in_seconds: int=60, provisioning_state=None, start_time=None, monitoring_status: str=None, **kwargs) -> None: + super(ConnectionMonitorResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = etag + self.type = None + self.location = location + self.tags = tags + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds + self.provisioning_state = provisioning_state + self.start_time = start_time + self.monitoring_status = monitoring_status diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_source.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_source.py new file mode 100644 index 000000000000..1425fa613ce5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_source.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorSource(Model): + """Describes the source of connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource used as the source by + connection monitor. + :type resource_id: str + :param port: The source port used by connection monitor. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorSource, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_source_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_source_py3.py new file mode 100644 index 000000000000..4d44fcaf8bf0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_monitor_source_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionMonitorSource(Model): + """Describes the source of connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource used as the source by + connection monitor. + :type resource_id: str + :param port: The source port used by connection monitor. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str, port: int=None, **kwargs) -> None: + super(ConnectionMonitorSource, self).__init__(**kwargs) + self.resource_id = resource_id + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_reset_shared_key.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_reset_shared_key.py new file mode 100644 index 000000000000..1ade077795ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_reset_shared_key.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionResetSharedKey(Model): + """The virtual network connection reset shared key. + + All required parameters must be populated in order to send to Azure. + + :param key_length: Required. The virtual network connection reset shared + key length, should between 1 and 128. + :type key_length: int + """ + + _validation = { + 'key_length': {'required': True, 'maximum': 128, 'minimum': 1}, + } + + _attribute_map = { + 'key_length': {'key': 'keyLength', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionResetSharedKey, self).__init__(**kwargs) + self.key_length = kwargs.get('key_length', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_reset_shared_key_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_reset_shared_key_py3.py new file mode 100644 index 000000000000..47326d4c2082 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_reset_shared_key_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionResetSharedKey(Model): + """The virtual network connection reset shared key. + + All required parameters must be populated in order to send to Azure. + + :param key_length: Required. The virtual network connection reset shared + key length, should between 1 and 128. + :type key_length: int + """ + + _validation = { + 'key_length': {'required': True, 'maximum': 128, 'minimum': 1}, + } + + _attribute_map = { + 'key_length': {'key': 'keyLength', 'type': 'int'}, + } + + def __init__(self, *, key_length: int, **kwargs) -> None: + super(ConnectionResetSharedKey, self).__init__(**kwargs) + self.key_length = key_length diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_shared_key.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_shared_key.py new file mode 100644 index 000000000000..f6d742dac00f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_shared_key.py @@ -0,0 +1,37 @@ +# 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 .sub_resource import SubResource + + +class ConnectionSharedKey(SubResource): + """Response for GetConnectionSharedKey API service call. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param value: Required. The virtual network connection shared key value. + :type value: str + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectionSharedKey, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_shared_key_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_shared_key_py3.py new file mode 100644 index 000000000000..819965ba3dbf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_shared_key_py3.py @@ -0,0 +1,37 @@ +# 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 .sub_resource_py3 import SubResource + + +class ConnectionSharedKey(SubResource): + """Response for GetConnectionSharedKey API service call. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param value: Required. The virtual network connection shared key value. + :type value: str + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, value: str, id: str=None, **kwargs) -> None: + super(ConnectionSharedKey, self).__init__(id=id, **kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_state_snapshot.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_state_snapshot.py new file mode 100644 index 000000000000..9f98c7910ace --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_state_snapshot.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionStateSnapshot(Model): + """Connection state snapshot. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param connection_state: The connection state. Possible values include: + 'Reachable', 'Unreachable', 'Unknown' + :type connection_state: str or + ~azure.mgmt.network.v2018_08_01.models.ConnectionState + :param start_time: The start time of the connection snapshot. + :type start_time: datetime + :param end_time: The end time of the connection snapshot. + :type end_time: datetime + :param evaluation_state: Connectivity analysis evaluation state. Possible + values include: 'NotStarted', 'InProgress', 'Completed' + :type evaluation_state: str or + ~azure.mgmt.network.v2018_08_01.models.EvaluationState + :param avg_latency_in_ms: Average latency in ms. + :type avg_latency_in_ms: int + :param min_latency_in_ms: Minimum latency in ms. + :type min_latency_in_ms: int + :param max_latency_in_ms: Maximum latency in ms. + :type max_latency_in_ms: int + :param probes_sent: The number of sent probes. + :type probes_sent: int + :param probes_failed: The number of failed probes. + :type probes_failed: int + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2018_08_01.models.ConnectivityHop] + """ + + _validation = { + 'hops': {'readonly': True}, + } + + _attribute_map = { + 'connection_state': {'key': 'connectionState', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'evaluation_state': {'key': 'evaluationState', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + } + + def __init__(self, **kwargs): + super(ConnectionStateSnapshot, self).__init__(**kwargs) + self.connection_state = kwargs.get('connection_state', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.evaluation_state = kwargs.get('evaluation_state', None) + self.avg_latency_in_ms = kwargs.get('avg_latency_in_ms', None) + self.min_latency_in_ms = kwargs.get('min_latency_in_ms', None) + self.max_latency_in_ms = kwargs.get('max_latency_in_ms', None) + self.probes_sent = kwargs.get('probes_sent', None) + self.probes_failed = kwargs.get('probes_failed', None) + self.hops = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_state_snapshot_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_state_snapshot_py3.py new file mode 100644 index 000000000000..88758ebb1b92 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connection_state_snapshot_py3.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectionStateSnapshot(Model): + """Connection state snapshot. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param connection_state: The connection state. Possible values include: + 'Reachable', 'Unreachable', 'Unknown' + :type connection_state: str or + ~azure.mgmt.network.v2018_08_01.models.ConnectionState + :param start_time: The start time of the connection snapshot. + :type start_time: datetime + :param end_time: The end time of the connection snapshot. + :type end_time: datetime + :param evaluation_state: Connectivity analysis evaluation state. Possible + values include: 'NotStarted', 'InProgress', 'Completed' + :type evaluation_state: str or + ~azure.mgmt.network.v2018_08_01.models.EvaluationState + :param avg_latency_in_ms: Average latency in ms. + :type avg_latency_in_ms: int + :param min_latency_in_ms: Minimum latency in ms. + :type min_latency_in_ms: int + :param max_latency_in_ms: Maximum latency in ms. + :type max_latency_in_ms: int + :param probes_sent: The number of sent probes. + :type probes_sent: int + :param probes_failed: The number of failed probes. + :type probes_failed: int + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2018_08_01.models.ConnectivityHop] + """ + + _validation = { + 'hops': {'readonly': True}, + } + + _attribute_map = { + 'connection_state': {'key': 'connectionState', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'evaluation_state': {'key': 'evaluationState', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + } + + def __init__(self, *, connection_state=None, start_time=None, end_time=None, evaluation_state=None, avg_latency_in_ms: int=None, min_latency_in_ms: int=None, max_latency_in_ms: int=None, probes_sent: int=None, probes_failed: int=None, **kwargs) -> None: + super(ConnectionStateSnapshot, self).__init__(**kwargs) + self.connection_state = connection_state + self.start_time = start_time + self.end_time = end_time + self.evaluation_state = evaluation_state + self.avg_latency_in_ms = avg_latency_in_ms + self.min_latency_in_ms = min_latency_in_ms + self.max_latency_in_ms = max_latency_in_ms + self.probes_sent = probes_sent + self.probes_failed = probes_failed + self.hops = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_destination.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_destination.py new file mode 100644 index 000000000000..964c425a29d3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_destination.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityDestination(Model): + """Parameters that define destination of connection. + + :param resource_id: The ID of the resource to which a connection attempt + will be made. + :type resource_id: str + :param address: The IP address or URI the resource to which a connection + attempt will be made. + :type address: str + :param port: Port on which check connectivity will be performed. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivityDestination, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.address = kwargs.get('address', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_destination_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_destination_py3.py new file mode 100644 index 000000000000..c51619081ed6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_destination_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityDestination(Model): + """Parameters that define destination of connection. + + :param resource_id: The ID of the resource to which a connection attempt + will be made. + :type resource_id: str + :param address: The IP address or URI the resource to which a connection + attempt will be made. + :type address: str + :param port: Port on which check connectivity will be performed. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str=None, address: str=None, port: int=None, **kwargs) -> None: + super(ConnectivityDestination, self).__init__(**kwargs) + self.resource_id = resource_id + self.address = address + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_hop.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_hop.py new file mode 100644 index 000000000000..32ab7254229c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_hop.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityHop(Model): + """Information about a hop between the source and the destination. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: The type of the hop. + :vartype type: str + :ivar id: The ID of the hop. + :vartype id: str + :ivar address: The IP address of the hop. + :vartype address: str + :ivar resource_id: The ID of the resource corresponding to this hop. + :vartype resource_id: str + :ivar next_hop_ids: List of next hop identifiers. + :vartype next_hop_ids: list[str] + :ivar issues: List of issues. + :vartype issues: + list[~azure.mgmt.network.v2018_08_01.models.ConnectivityIssue] + """ + + _validation = { + 'type': {'readonly': True}, + 'id': {'readonly': True}, + 'address': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'next_hop_ids': {'readonly': True}, + 'issues': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'next_hop_ids': {'key': 'nextHopIds', 'type': '[str]'}, + 'issues': {'key': 'issues', 'type': '[ConnectivityIssue]'}, + } + + def __init__(self, **kwargs): + super(ConnectivityHop, self).__init__(**kwargs) + self.type = None + self.id = None + self.address = None + self.resource_id = None + self.next_hop_ids = None + self.issues = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_hop_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_hop_py3.py new file mode 100644 index 000000000000..e8c38c6812ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_hop_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityHop(Model): + """Information about a hop between the source and the destination. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: The type of the hop. + :vartype type: str + :ivar id: The ID of the hop. + :vartype id: str + :ivar address: The IP address of the hop. + :vartype address: str + :ivar resource_id: The ID of the resource corresponding to this hop. + :vartype resource_id: str + :ivar next_hop_ids: List of next hop identifiers. + :vartype next_hop_ids: list[str] + :ivar issues: List of issues. + :vartype issues: + list[~azure.mgmt.network.v2018_08_01.models.ConnectivityIssue] + """ + + _validation = { + 'type': {'readonly': True}, + 'id': {'readonly': True}, + 'address': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'next_hop_ids': {'readonly': True}, + 'issues': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'next_hop_ids': {'key': 'nextHopIds', 'type': '[str]'}, + 'issues': {'key': 'issues', 'type': '[ConnectivityIssue]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityHop, self).__init__(**kwargs) + self.type = None + self.id = None + self.address = None + self.resource_id = None + self.next_hop_ids = None + self.issues = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_information.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_information.py new file mode 100644 index 000000000000..c75839ea6eae --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_information.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityInformation(Model): + """Information on the connectivity status. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2018_08_01.models.ConnectivityHop] + :ivar connection_status: The connection status. Possible values include: + 'Unknown', 'Connected', 'Disconnected', 'Degraded' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.ConnectionStatus + :ivar avg_latency_in_ms: Average latency in milliseconds. + :vartype avg_latency_in_ms: int + :ivar min_latency_in_ms: Minimum latency in milliseconds. + :vartype min_latency_in_ms: int + :ivar max_latency_in_ms: Maximum latency in milliseconds. + :vartype max_latency_in_ms: int + :ivar probes_sent: Total number of probes sent. + :vartype probes_sent: int + :ivar probes_failed: Number of failed probes. + :vartype probes_failed: int + """ + + _validation = { + 'hops': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'avg_latency_in_ms': {'readonly': True}, + 'min_latency_in_ms': {'readonly': True}, + 'max_latency_in_ms': {'readonly': True}, + 'probes_sent': {'readonly': True}, + 'probes_failed': {'readonly': True}, + } + + _attribute_map = { + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivityInformation, self).__init__(**kwargs) + self.hops = None + self.connection_status = None + self.avg_latency_in_ms = None + self.min_latency_in_ms = None + self.max_latency_in_ms = None + self.probes_sent = None + self.probes_failed = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_information_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_information_py3.py new file mode 100644 index 000000000000..40f060dc8bac --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_information_py3.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityInformation(Model): + """Information on the connectivity status. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2018_08_01.models.ConnectivityHop] + :ivar connection_status: The connection status. Possible values include: + 'Unknown', 'Connected', 'Disconnected', 'Degraded' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.ConnectionStatus + :ivar avg_latency_in_ms: Average latency in milliseconds. + :vartype avg_latency_in_ms: int + :ivar min_latency_in_ms: Minimum latency in milliseconds. + :vartype min_latency_in_ms: int + :ivar max_latency_in_ms: Maximum latency in milliseconds. + :vartype max_latency_in_ms: int + :ivar probes_sent: Total number of probes sent. + :vartype probes_sent: int + :ivar probes_failed: Number of failed probes. + :vartype probes_failed: int + """ + + _validation = { + 'hops': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'avg_latency_in_ms': {'readonly': True}, + 'min_latency_in_ms': {'readonly': True}, + 'max_latency_in_ms': {'readonly': True}, + 'probes_sent': {'readonly': True}, + 'probes_failed': {'readonly': True}, + } + + _attribute_map = { + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityInformation, self).__init__(**kwargs) + self.hops = None + self.connection_status = None + self.avg_latency_in_ms = None + self.min_latency_in_ms = None + self.max_latency_in_ms = None + self.probes_sent = None + self.probes_failed = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_issue.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_issue.py new file mode 100644 index 000000000000..c5c094c631fa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_issue.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityIssue(Model): + """Information about an issue encountered in the process of checking for + connectivity. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the issue. Possible values include: 'Local', + 'Inbound', 'Outbound' + :vartype origin: str or ~azure.mgmt.network.v2018_08_01.models.Origin + :ivar severity: The severity of the issue. Possible values include: + 'Error', 'Warning' + :vartype severity: str or ~azure.mgmt.network.v2018_08_01.models.Severity + :ivar type: The type of issue. Possible values include: 'Unknown', + 'AgentStopped', 'GuestFirewall', 'DnsResolution', 'SocketBind', + 'NetworkSecurityRule', 'UserDefinedRoute', 'PortThrottled', 'Platform' + :vartype type: str or ~azure.mgmt.network.v2018_08_01.models.IssueType + :ivar context: Provides additional context on the issue. + :vartype context: list[dict[str, str]] + """ + + _validation = { + 'origin': {'readonly': True}, + 'severity': {'readonly': True}, + 'type': {'readonly': True}, + 'context': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'context': {'key': 'context', 'type': '[{str}]'}, + } + + def __init__(self, **kwargs): + super(ConnectivityIssue, self).__init__(**kwargs) + self.origin = None + self.severity = None + self.type = None + self.context = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_issue_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_issue_py3.py new file mode 100644 index 000000000000..db8fda9f6fd0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_issue_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityIssue(Model): + """Information about an issue encountered in the process of checking for + connectivity. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the issue. Possible values include: 'Local', + 'Inbound', 'Outbound' + :vartype origin: str or ~azure.mgmt.network.v2018_08_01.models.Origin + :ivar severity: The severity of the issue. Possible values include: + 'Error', 'Warning' + :vartype severity: str or ~azure.mgmt.network.v2018_08_01.models.Severity + :ivar type: The type of issue. Possible values include: 'Unknown', + 'AgentStopped', 'GuestFirewall', 'DnsResolution', 'SocketBind', + 'NetworkSecurityRule', 'UserDefinedRoute', 'PortThrottled', 'Platform' + :vartype type: str or ~azure.mgmt.network.v2018_08_01.models.IssueType + :ivar context: Provides additional context on the issue. + :vartype context: list[dict[str, str]] + """ + + _validation = { + 'origin': {'readonly': True}, + 'severity': {'readonly': True}, + 'type': {'readonly': True}, + 'context': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'context': {'key': 'context', 'type': '[{str}]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityIssue, self).__init__(**kwargs) + self.origin = None + self.severity = None + self.type = None + self.context = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_parameters.py new file mode 100644 index 000000000000..e97830213cde --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_parameters.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityParameters(Model): + """Parameters that determine how the connectivity check will be performed. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. + :type source: ~azure.mgmt.network.v2018_08_01.models.ConnectivitySource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_08_01.models.ConnectivityDestination + :param protocol: Network protocol. Possible values include: 'Tcp', 'Http', + 'Https', 'Icmp' + :type protocol: str or ~azure.mgmt.network.v2018_08_01.models.Protocol + :param protocol_configuration: + :type protocol_configuration: + ~azure.mgmt.network.v2018_08_01.models.ProtocolConfiguration + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectivitySource'}, + 'destination': {'key': 'destination', 'type': 'ConnectivityDestination'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'protocol_configuration': {'key': 'protocolConfiguration', 'type': 'ProtocolConfiguration'}, + } + + def __init__(self, **kwargs): + super(ConnectivityParameters, self).__init__(**kwargs) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.protocol = kwargs.get('protocol', None) + self.protocol_configuration = kwargs.get('protocol_configuration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_parameters_py3.py new file mode 100644 index 000000000000..bbf3b4755f81 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_parameters_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivityParameters(Model): + """Parameters that determine how the connectivity check will be performed. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. + :type source: ~azure.mgmt.network.v2018_08_01.models.ConnectivitySource + :param destination: Required. + :type destination: + ~azure.mgmt.network.v2018_08_01.models.ConnectivityDestination + :param protocol: Network protocol. Possible values include: 'Tcp', 'Http', + 'Https', 'Icmp' + :type protocol: str or ~azure.mgmt.network.v2018_08_01.models.Protocol + :param protocol_configuration: + :type protocol_configuration: + ~azure.mgmt.network.v2018_08_01.models.ProtocolConfiguration + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectivitySource'}, + 'destination': {'key': 'destination', 'type': 'ConnectivityDestination'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'protocol_configuration': {'key': 'protocolConfiguration', 'type': 'ProtocolConfiguration'}, + } + + def __init__(self, *, source, destination, protocol=None, protocol_configuration=None, **kwargs) -> None: + super(ConnectivityParameters, self).__init__(**kwargs) + self.source = source + self.destination = destination + self.protocol = protocol + self.protocol_configuration = protocol_configuration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_source.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_source.py new file mode 100644 index 000000000000..3fd82793f8d7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_source.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivitySource(Model): + """Parameters that define the source of the connection. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource from which a + connectivity check will be initiated. + :type resource_id: str + :param port: The source port from which a connectivity check will be + performed. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivitySource, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.port = kwargs.get('port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_source_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_source_py3.py new file mode 100644 index 000000000000..f7833d1bef76 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/connectivity_source_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectivitySource(Model): + """Parameters that define the source of the connection. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource from which a + connectivity check will be initiated. + :type resource_id: str + :param port: The source port from which a connectivity check will be + performed. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str, port: int=None, **kwargs) -> None: + super(ConnectivitySource, self).__init__(**kwargs) + self.resource_id = resource_id + self.port = port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container.py new file mode 100644 index 000000000000..4fa66f106881 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container.py @@ -0,0 +1,27 @@ +# 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 .sub_resource import SubResource + + +class Container(SubResource): + """Reference to container resource in remote resource provider. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Container, self).__init__(**kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface.py new file mode 100644 index 000000000000..1f87ccf41989 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface.py @@ -0,0 +1,71 @@ +# 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 .sub_resource import SubResource + + +class ContainerNetworkInterface(SubResource): + """Container network interface child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param container_network_interface_configuration: Container network + interface configuration from which this container network interface is + created. + :type container_network_interface_configuration: + ~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterfaceConfiguration + :param container: Reference to the conatinaer to which this container + network interface is attached. + :type container: ~azure.mgmt.network.v2018_08_01.models.Container + :param ip_configurations: Reference to the ip configuration on this + container nic. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterfaceIpConfiguration] + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'container_network_interface_configuration': {'key': 'properties.containerNetworkInterfaceConfiguration', 'type': 'ContainerNetworkInterfaceConfiguration'}, + 'container': {'key': 'properties.container', 'type': 'Container'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[ContainerNetworkInterfaceIpConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerNetworkInterface, self).__init__(**kwargs) + self.container_network_interface_configuration = kwargs.get('container_network_interface_configuration', None) + self.container = kwargs.get('container', None) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_configuration.py new file mode 100644 index 000000000000..3ec4f4935837 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_configuration.py @@ -0,0 +1,65 @@ +# 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 .sub_resource import SubResource + + +class ContainerNetworkInterfaceConfiguration(SubResource): + """Container network interface configruation child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param ip_configurations: A list of ip configurations of the container + network interface configuration. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.IPConfigurationProfile] + :param container_network_interfaces: A list of container network + interfaces created from this container network interface configuration. + :type container_network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterface] + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfigurationProfile]'}, + 'container_network_interfaces': {'key': 'properties.containerNetworkInterfaces', 'type': '[ContainerNetworkInterface]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerNetworkInterfaceConfiguration, self).__init__(**kwargs) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.container_network_interfaces = kwargs.get('container_network_interfaces', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_configuration_py3.py new file mode 100644 index 000000000000..9f18bda7fc78 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_configuration_py3.py @@ -0,0 +1,65 @@ +# 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 .sub_resource_py3 import SubResource + + +class ContainerNetworkInterfaceConfiguration(SubResource): + """Container network interface configruation child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param ip_configurations: A list of ip configurations of the container + network interface configuration. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.IPConfigurationProfile] + :param container_network_interfaces: A list of container network + interfaces created from this container network interface configuration. + :type container_network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterface] + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfigurationProfile]'}, + 'container_network_interfaces': {'key': 'properties.containerNetworkInterfaces', 'type': '[ContainerNetworkInterface]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, ip_configurations=None, container_network_interfaces=None, name: str=None, etag: str=None, **kwargs) -> None: + super(ContainerNetworkInterfaceConfiguration, self).__init__(id=id, **kwargs) + self.ip_configurations = ip_configurations + self.container_network_interfaces = container_network_interfaces + self.provisioning_state = None + self.name = name + self.type = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_ip_configuration.py new file mode 100644 index 000000000000..457fc24a3f67 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_ip_configuration.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerNetworkInterfaceIpConfiguration(Model): + """The ip configuration for a container network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerNetworkInterfaceIpConfiguration, self).__init__(**kwargs) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_ip_configuration_py3.py new file mode 100644 index 000000000000..adea92da1db9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_ip_configuration_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ContainerNetworkInterfaceIpConfiguration(Model): + """The ip configuration for a container network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, etag: str=None, **kwargs) -> None: + super(ContainerNetworkInterfaceIpConfiguration, self).__init__(**kwargs) + self.provisioning_state = None + self.name = name + self.type = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_py3.py new file mode 100644 index 000000000000..accf1a78f17b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_network_interface_py3.py @@ -0,0 +1,71 @@ +# 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 .sub_resource_py3 import SubResource + + +class ContainerNetworkInterface(SubResource): + """Container network interface child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param container_network_interface_configuration: Container network + interface configuration from which this container network interface is + created. + :type container_network_interface_configuration: + ~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterfaceConfiguration + :param container: Reference to the conatinaer to which this container + network interface is attached. + :type container: ~azure.mgmt.network.v2018_08_01.models.Container + :param ip_configurations: Reference to the ip configuration on this + container nic. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterfaceIpConfiguration] + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'container_network_interface_configuration': {'key': 'properties.containerNetworkInterfaceConfiguration', 'type': 'ContainerNetworkInterfaceConfiguration'}, + 'container': {'key': 'properties.container', 'type': 'Container'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[ContainerNetworkInterfaceIpConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, container_network_interface_configuration=None, container=None, ip_configurations=None, name: str=None, etag: str=None, **kwargs) -> None: + super(ContainerNetworkInterface, self).__init__(id=id, **kwargs) + self.container_network_interface_configuration = container_network_interface_configuration + self.container = container + self.ip_configurations = ip_configurations + self.provisioning_state = None + self.name = name + self.type = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_py3.py new file mode 100644 index 000000000000..cb5f7e247934 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/container_py3.py @@ -0,0 +1,27 @@ +# 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 .sub_resource_py3 import SubResource + + +class Container(SubResource): + """Reference to container resource in remote resource provider. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(Container, self).__init__(id=id, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan.py new file mode 100644 index 000000000000..683a9c8cfedc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DdosProtectionPlan(Model): + """A DDoS protection plan in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the DDoS protection + plan resource. It uniquely identifies the resource, even if the user + changes its name or migrate the resource across subscriptions or resource + groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the DDoS protection + plan resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', + and 'Failed'. + :vartype provisioning_state: str + :ivar virtual_networks: The list of virtual networks associated with the + DDoS protection plan resource. This list is read-only. + :vartype virtual_networks: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_networks': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_networks': {'key': 'properties.virtualNetworks', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DdosProtectionPlan, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.resource_guid = None + self.provisioning_state = None + self.virtual_networks = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan_paged.py new file mode 100644 index 000000000000..8e22c86c90c7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DdosProtectionPlanPaged(Paged): + """ + A paging container for iterating over a list of :class:`DdosProtectionPlan ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DdosProtectionPlan]'} + } + + def __init__(self, *args, **kwargs): + + super(DdosProtectionPlanPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan_py3.py new file mode 100644 index 000000000000..58902bf71187 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ddos_protection_plan_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DdosProtectionPlan(Model): + """A DDoS protection plan in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the DDoS protection + plan resource. It uniquely identifies the resource, even if the user + changes its name or migrate the resource across subscriptions or resource + groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the DDoS protection + plan resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', + and 'Failed'. + :vartype provisioning_state: str + :ivar virtual_networks: The list of virtual networks associated with the + DDoS protection plan resource. This list is read-only. + :vartype virtual_networks: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_networks': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_networks': {'key': 'properties.virtualNetworks', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, location: str=None, tags=None, **kwargs) -> None: + super(DdosProtectionPlan, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = location + self.tags = tags + self.resource_guid = None + self.provisioning_state = None + self.virtual_networks = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/delegation.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/delegation.py new file mode 100644 index 000000000000..b9db5da4add2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/delegation.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class Delegation(SubResource): + """Details the service to which the subnet is delegated. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param service_name: The name of the service to whom the subnet should be + delegated (e.g. Microsoft.Sql/servers) + :type service_name: str + :param actions: Describes the actions permitted to the service upon + delegation + :type actions: list[str] + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a subnet. This + name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Delegation, self).__init__(**kwargs) + self.service_name = kwargs.get('service_name', None) + self.actions = kwargs.get('actions', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/delegation_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/delegation_py3.py new file mode 100644 index 000000000000..d374f9d48282 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/delegation_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class Delegation(SubResource): + """Details the service to which the subnet is delegated. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param service_name: The name of the service to whom the subnet should be + delegated (e.g. Microsoft.Sql/servers) + :type service_name: str + :param actions: Describes the actions permitted to the service upon + delegation + :type actions: list[str] + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a subnet. This + name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, service_name: str=None, actions=None, name: str=None, etag: str=None, **kwargs) -> None: + super(Delegation, self).__init__(id=id, **kwargs) + self.service_name = service_name + self.actions = actions + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/device_properties.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/device_properties.py new file mode 100644 index 000000000000..8a1653ad020b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/device_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeviceProperties(Model): + """List of properties of the device. + + :param device_vendor: Name of the device Vendor. + :type device_vendor: str + :param device_model: Model of the device. + :type device_model: str + :param link_speed_in_mbps: Link speed. + :type link_speed_in_mbps: int + """ + + _attribute_map = { + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_model': {'key': 'deviceModel', 'type': 'str'}, + 'link_speed_in_mbps': {'key': 'linkSpeedInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(DeviceProperties, self).__init__(**kwargs) + self.device_vendor = kwargs.get('device_vendor', None) + self.device_model = kwargs.get('device_model', None) + self.link_speed_in_mbps = kwargs.get('link_speed_in_mbps', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/device_properties_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/device_properties_py3.py new file mode 100644 index 000000000000..03d9850cbf21 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/device_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DeviceProperties(Model): + """List of properties of the device. + + :param device_vendor: Name of the device Vendor. + :type device_vendor: str + :param device_model: Model of the device. + :type device_model: str + :param link_speed_in_mbps: Link speed. + :type link_speed_in_mbps: int + """ + + _attribute_map = { + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_model': {'key': 'deviceModel', 'type': 'str'}, + 'link_speed_in_mbps': {'key': 'linkSpeedInMbps', 'type': 'int'}, + } + + def __init__(self, *, device_vendor: str=None, device_model: str=None, link_speed_in_mbps: int=None, **kwargs) -> None: + super(DeviceProperties, self).__init__(**kwargs) + self.device_vendor = device_vendor + self.device_model = device_model + self.link_speed_in_mbps = link_speed_in_mbps diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dhcp_options.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dhcp_options.py new file mode 100644 index 000000000000..93b68a7f037c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dhcp_options.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DhcpOptions(Model): + """DhcpOptions contains an array of DNS servers available to VMs deployed in + the virtual network. Standard DHCP option for a subnet overrides VNET DHCP + options. + + :param dns_servers: The list of DNS servers IP addresses. + :type dns_servers: list[str] + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(DhcpOptions, self).__init__(**kwargs) + self.dns_servers = kwargs.get('dns_servers', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dhcp_options_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dhcp_options_py3.py new file mode 100644 index 000000000000..7dc4651973a5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dhcp_options_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DhcpOptions(Model): + """DhcpOptions contains an array of DNS servers available to VMs deployed in + the virtual network. Standard DHCP option for a subnet overrides VNET DHCP + options. + + :param dns_servers: The list of DNS servers IP addresses. + :type dns_servers: list[str] + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + } + + def __init__(self, *, dns_servers=None, **kwargs) -> None: + super(DhcpOptions, self).__init__(**kwargs) + self.dns_servers = dns_servers diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dimension.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dimension.py new file mode 100644 index 000000000000..e9c8cd977a54 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dimension.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Dimension(Model): + """Dimension of the metric. + + :param name: The name of the dimension. + :type name: str + :param display_name: The display name of the dimension. + :type display_name: str + :param internal_name: The internal name of the dimension. + :type internal_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'internal_name': {'key': 'internalName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Dimension, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.internal_name = kwargs.get('internal_name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dimension_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dimension_py3.py new file mode 100644 index 000000000000..20743b6424c1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dimension_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Dimension(Model): + """Dimension of the metric. + + :param name: The name of the dimension. + :type name: str + :param display_name: The display name of the dimension. + :type display_name: str + :param internal_name: The internal name of the dimension. + :type internal_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'internal_name': {'key': 'internalName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, internal_name: str=None, **kwargs) -> None: + super(Dimension, self).__init__(**kwargs) + self.name = name + self.display_name = display_name + self.internal_name = internal_name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dns_name_availability_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dns_name_availability_result.py new file mode 100644 index 000000000000..86ba19eb407b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dns_name_availability_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsNameAvailabilityResult(Model): + """Response for the CheckDnsNameAvailability API service call. + + :param available: Domain availability (True/False). + :type available: bool + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(DnsNameAvailabilityResult, self).__init__(**kwargs) + self.available = kwargs.get('available', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dns_name_availability_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dns_name_availability_result_py3.py new file mode 100644 index 000000000000..de0117c27715 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/dns_name_availability_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DnsNameAvailabilityResult(Model): + """Response for the CheckDnsNameAvailability API service call. + + :param available: Domain availability (True/False). + :type available: bool + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + } + + def __init__(self, *, available: bool=None, **kwargs) -> None: + super(DnsNameAvailabilityResult, self).__init__(**kwargs) + self.available = available diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group.py new file mode 100644 index 000000000000..70488db11867 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroup(Model): + """Effective network security group. + + :param network_security_group: The ID of network security group that is + applied. + :type network_security_group: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param association: Associated resources. + :type association: + ~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityGroupAssociation + :param effective_security_rules: A collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityRule] + :param tag_map: Mapping of tags to list of IP Addresses included within + the tag. + :type tag_map: dict[str, list[str]] + """ + + _attribute_map = { + 'network_security_group': {'key': 'networkSecurityGroup', 'type': 'SubResource'}, + 'association': {'key': 'association', 'type': 'EffectiveNetworkSecurityGroupAssociation'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + 'tag_map': {'key': 'tagMap', 'type': '{[str]}'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group = kwargs.get('network_security_group', None) + self.association = kwargs.get('association', None) + self.effective_security_rules = kwargs.get('effective_security_rules', None) + self.tag_map = kwargs.get('tag_map', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_association.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_association.py new file mode 100644 index 000000000000..b26716109c78 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_association.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroupAssociation(Model): + """The effective network security group association. + + :param subnet: The ID of the subnet if assigned. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param network_interface: The ID of the network interface if assigned. + :type network_interface: + ~azure.mgmt.network.v2018_08_01.models.SubResource + """ + + _attribute_map = { + 'subnet': {'key': 'subnet', 'type': 'SubResource'}, + 'network_interface': {'key': 'networkInterface', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroupAssociation, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.network_interface = kwargs.get('network_interface', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_association_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_association_py3.py new file mode 100644 index 000000000000..8b47e8c8dccf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_association_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroupAssociation(Model): + """The effective network security group association. + + :param subnet: The ID of the subnet if assigned. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param network_interface: The ID of the network interface if assigned. + :type network_interface: + ~azure.mgmt.network.v2018_08_01.models.SubResource + """ + + _attribute_map = { + 'subnet': {'key': 'subnet', 'type': 'SubResource'}, + 'network_interface': {'key': 'networkInterface', 'type': 'SubResource'}, + } + + def __init__(self, *, subnet=None, network_interface=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroupAssociation, self).__init__(**kwargs) + self.subnet = subnet + self.network_interface = network_interface diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_list_result.py new file mode 100644 index 000000000000..4745b0f5f7e0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_list_result.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroupListResult(Model): + """Response for list effective network security groups API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective network security groups. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityGroup] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveNetworkSecurityGroup]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroupListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_list_result_py3.py new file mode 100644 index 000000000000..9abeb5741cc5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_list_result_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroupListResult(Model): + """Response for list effective network security groups API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective network security groups. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityGroup] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveNetworkSecurityGroup]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroupListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_py3.py new file mode 100644 index 000000000000..ccfd7a271343 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_group_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityGroup(Model): + """Effective network security group. + + :param network_security_group: The ID of network security group that is + applied. + :type network_security_group: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param association: Associated resources. + :type association: + ~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityGroupAssociation + :param effective_security_rules: A collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityRule] + :param tag_map: Mapping of tags to list of IP Addresses included within + the tag. + :type tag_map: dict[str, list[str]] + """ + + _attribute_map = { + 'network_security_group': {'key': 'networkSecurityGroup', 'type': 'SubResource'}, + 'association': {'key': 'association', 'type': 'EffectiveNetworkSecurityGroupAssociation'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + 'tag_map': {'key': 'tagMap', 'type': '{[str]}'}, + } + + def __init__(self, *, network_security_group=None, association=None, effective_security_rules=None, tag_map=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group = network_security_group + self.association = association + self.effective_security_rules = effective_security_rules + self.tag_map = tag_map diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_rule.py new file mode 100644 index 000000000000..c8f7549b730f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_rule.py @@ -0,0 +1,101 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityRule(Model): + """Effective network security rules. + + :param name: The name of the security rule specified by the user (if + created by the user). + :type name: str + :param protocol: The network protocol this rule applies to. Possible + values are: 'Tcp', 'Udp', and 'All'. Possible values include: 'Tcp', + 'Udp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.EffectiveSecurityRuleProtocol + :param source_port_range: The source port or range. + :type source_port_range: str + :param destination_port_range: The destination port or range. + :type destination_port_range: str + :param source_port_ranges: The source port ranges. Expected values include + a single integer between 0 and 65535, a range using '-' as seperator (e.g. + 100-400), or an asterix (*) + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. Expected + values include a single integer between 0 and 65535, a range using '-' as + seperator (e.g. 100-400), or an asterix (*) + :type destination_port_ranges: list[str] + :param source_address_prefix: The source address prefix. + :type source_address_prefix: str + :param destination_address_prefix: The destination address prefix. + :type destination_address_prefix: str + :param source_address_prefixes: The source address prefixes. Expected + values include CIDR IP ranges, Default Tags (VirtualNetwork, + AureLoadBalancer, Internet), System Tags, and the asterix (*). + :type source_address_prefixes: list[str] + :param destination_address_prefixes: The destination address prefixes. + Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, + AureLoadBalancer, Internet), System Tags, and the asterix (*). + :type destination_address_prefixes: list[str] + :param expanded_source_address_prefix: The expanded source address prefix. + :type expanded_source_address_prefix: list[str] + :param expanded_destination_address_prefix: Expanded destination address + prefix. + :type expanded_destination_address_prefix: list[str] + :param access: Whether network traffic is allowed or denied. Possible + values are: 'Allow' and 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleAccess + :param priority: The priority of the rule. + :type priority: int + :param direction: The direction of the rule. Possible values are: 'Inbound + and Outbound'. Possible values include: 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleDirection + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source_port_range': {'key': 'sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'destinationPortRange', 'type': 'str'}, + 'source_port_ranges': {'key': 'sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'destinationPortRanges', 'type': '[str]'}, + 'source_address_prefix': {'key': 'sourceAddressPrefix', 'type': 'str'}, + 'destination_address_prefix': {'key': 'destinationAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'sourceAddressPrefixes', 'type': '[str]'}, + 'destination_address_prefixes': {'key': 'destinationAddressPrefixes', 'type': '[str]'}, + 'expanded_source_address_prefix': {'key': 'expandedSourceAddressPrefix', 'type': '[str]'}, + 'expanded_destination_address_prefix': {'key': 'expandedDestinationAddressPrefix', 'type': '[str]'}, + 'access': {'key': 'access', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'direction': {'key': 'direction', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol = kwargs.get('protocol', None) + self.source_port_range = kwargs.get('source_port_range', None) + self.destination_port_range = kwargs.get('destination_port_range', None) + self.source_port_ranges = kwargs.get('source_port_ranges', None) + self.destination_port_ranges = kwargs.get('destination_port_ranges', None) + self.source_address_prefix = kwargs.get('source_address_prefix', None) + self.destination_address_prefix = kwargs.get('destination_address_prefix', None) + self.source_address_prefixes = kwargs.get('source_address_prefixes', None) + self.destination_address_prefixes = kwargs.get('destination_address_prefixes', None) + self.expanded_source_address_prefix = kwargs.get('expanded_source_address_prefix', None) + self.expanded_destination_address_prefix = kwargs.get('expanded_destination_address_prefix', None) + self.access = kwargs.get('access', None) + self.priority = kwargs.get('priority', None) + self.direction = kwargs.get('direction', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_rule_py3.py new file mode 100644 index 000000000000..018279230e4b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_network_security_rule_py3.py @@ -0,0 +1,101 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveNetworkSecurityRule(Model): + """Effective network security rules. + + :param name: The name of the security rule specified by the user (if + created by the user). + :type name: str + :param protocol: The network protocol this rule applies to. Possible + values are: 'Tcp', 'Udp', and 'All'. Possible values include: 'Tcp', + 'Udp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.EffectiveSecurityRuleProtocol + :param source_port_range: The source port or range. + :type source_port_range: str + :param destination_port_range: The destination port or range. + :type destination_port_range: str + :param source_port_ranges: The source port ranges. Expected values include + a single integer between 0 and 65535, a range using '-' as seperator (e.g. + 100-400), or an asterix (*) + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. Expected + values include a single integer between 0 and 65535, a range using '-' as + seperator (e.g. 100-400), or an asterix (*) + :type destination_port_ranges: list[str] + :param source_address_prefix: The source address prefix. + :type source_address_prefix: str + :param destination_address_prefix: The destination address prefix. + :type destination_address_prefix: str + :param source_address_prefixes: The source address prefixes. Expected + values include CIDR IP ranges, Default Tags (VirtualNetwork, + AureLoadBalancer, Internet), System Tags, and the asterix (*). + :type source_address_prefixes: list[str] + :param destination_address_prefixes: The destination address prefixes. + Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, + AureLoadBalancer, Internet), System Tags, and the asterix (*). + :type destination_address_prefixes: list[str] + :param expanded_source_address_prefix: The expanded source address prefix. + :type expanded_source_address_prefix: list[str] + :param expanded_destination_address_prefix: Expanded destination address + prefix. + :type expanded_destination_address_prefix: list[str] + :param access: Whether network traffic is allowed or denied. Possible + values are: 'Allow' and 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleAccess + :param priority: The priority of the rule. + :type priority: int + :param direction: The direction of the rule. Possible values are: 'Inbound + and Outbound'. Possible values include: 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleDirection + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source_port_range': {'key': 'sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'destinationPortRange', 'type': 'str'}, + 'source_port_ranges': {'key': 'sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'destinationPortRanges', 'type': '[str]'}, + 'source_address_prefix': {'key': 'sourceAddressPrefix', 'type': 'str'}, + 'destination_address_prefix': {'key': 'destinationAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'sourceAddressPrefixes', 'type': '[str]'}, + 'destination_address_prefixes': {'key': 'destinationAddressPrefixes', 'type': '[str]'}, + 'expanded_source_address_prefix': {'key': 'expandedSourceAddressPrefix', 'type': '[str]'}, + 'expanded_destination_address_prefix': {'key': 'expandedDestinationAddressPrefix', 'type': '[str]'}, + 'access': {'key': 'access', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'direction': {'key': 'direction', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, protocol=None, source_port_range: str=None, destination_port_range: str=None, source_port_ranges=None, destination_port_ranges=None, source_address_prefix: str=None, destination_address_prefix: str=None, source_address_prefixes=None, destination_address_prefixes=None, expanded_source_address_prefix=None, expanded_destination_address_prefix=None, access=None, priority: int=None, direction=None, **kwargs) -> None: + super(EffectiveNetworkSecurityRule, self).__init__(**kwargs) + self.name = name + self.protocol = protocol + self.source_port_range = source_port_range + self.destination_port_range = destination_port_range + self.source_port_ranges = source_port_ranges + self.destination_port_ranges = destination_port_ranges + self.source_address_prefix = source_address_prefix + self.destination_address_prefix = destination_address_prefix + self.source_address_prefixes = source_address_prefixes + self.destination_address_prefixes = destination_address_prefixes + self.expanded_source_address_prefix = expanded_source_address_prefix + self.expanded_destination_address_prefix = expanded_destination_address_prefix + self.access = access + self.priority = priority + self.direction = direction diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route.py new file mode 100644 index 000000000000..48a62e9712a8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveRoute(Model): + """Effective Route. + + :param name: The name of the user defined route. This is optional. + :type name: str + :param source: Who created the route. Possible values are: 'Unknown', + 'User', 'VirtualNetworkGateway', and 'Default'. Possible values include: + 'Unknown', 'User', 'VirtualNetworkGateway', 'Default' + :type source: str or + ~azure.mgmt.network.v2018_08_01.models.EffectiveRouteSource + :param state: The value of effective route. Possible values are: 'Active' + and 'Invalid'. Possible values include: 'Active', 'Invalid' + :type state: str or + ~azure.mgmt.network.v2018_08_01.models.EffectiveRouteState + :param address_prefix: The address prefixes of the effective routes in + CIDR notation. + :type address_prefix: list[str] + :param next_hop_ip_address: The IP address of the next hop of the + effective route. + :type next_hop_ip_address: list[str] + :param next_hop_type: The type of Azure hop the packet should be sent to. + Possible values are: 'VirtualNetworkGateway', 'VnetLocal', 'Internet', + 'VirtualAppliance', and 'None'. Possible values include: + 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', + 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_08_01.models.RouteNextHopType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'address_prefix': {'key': 'addressPrefix', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': '[str]'}, + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveRoute, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.source = kwargs.get('source', None) + self.state = kwargs.get('state', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.next_hop_type = kwargs.get('next_hop_type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_list_result.py new file mode 100644 index 000000000000..4246cc470b1a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_list_result.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveRouteListResult(Model): + """Response for list effective route API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective routes. + :type value: list[~azure.mgmt.network.v2018_08_01.models.EffectiveRoute] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveRoute]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveRouteListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_list_result_py3.py new file mode 100644 index 000000000000..81fba03a77c9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_list_result_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveRouteListResult(Model): + """Response for list effective route API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective routes. + :type value: list[~azure.mgmt.network.v2018_08_01.models.EffectiveRoute] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveRoute]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(EffectiveRouteListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_py3.py new file mode 100644 index 000000000000..39011924bf63 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/effective_route_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EffectiveRoute(Model): + """Effective Route. + + :param name: The name of the user defined route. This is optional. + :type name: str + :param source: Who created the route. Possible values are: 'Unknown', + 'User', 'VirtualNetworkGateway', and 'Default'. Possible values include: + 'Unknown', 'User', 'VirtualNetworkGateway', 'Default' + :type source: str or + ~azure.mgmt.network.v2018_08_01.models.EffectiveRouteSource + :param state: The value of effective route. Possible values are: 'Active' + and 'Invalid'. Possible values include: 'Active', 'Invalid' + :type state: str or + ~azure.mgmt.network.v2018_08_01.models.EffectiveRouteState + :param address_prefix: The address prefixes of the effective routes in + CIDR notation. + :type address_prefix: list[str] + :param next_hop_ip_address: The IP address of the next hop of the + effective route. + :type next_hop_ip_address: list[str] + :param next_hop_type: The type of Azure hop the packet should be sent to. + Possible values are: 'VirtualNetworkGateway', 'VnetLocal', 'Internet', + 'VirtualAppliance', and 'None'. Possible values include: + 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', + 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_08_01.models.RouteNextHopType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'address_prefix': {'key': 'addressPrefix', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': '[str]'}, + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, source=None, state=None, address_prefix=None, next_hop_ip_address=None, next_hop_type=None, **kwargs) -> None: + super(EffectiveRoute, self).__init__(**kwargs) + self.name = name + self.source = source + self.state = state + self.address_prefix = address_prefix + self.next_hop_ip_address = next_hop_ip_address + self.next_hop_type = next_hop_type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service.py new file mode 100644 index 000000000000..988ccdb20608 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EndpointService(Model): + """Identifies the service being brought into the virtual network. + + :param id: A unique identifier of the service being referenced by the + interface endpoint. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EndpointService, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_py3.py new file mode 100644 index 000000000000..84a14658f0eb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EndpointService(Model): + """Identifies the service being brought into the virtual network. + + :param id: A unique identifier of the service being referenced by the + interface endpoint. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(EndpointService, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result.py new file mode 100644 index 000000000000..9ca0e203a834 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result.py @@ -0,0 +1,43 @@ +# 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 .sub_resource import SubResource + + +class EndpointServiceResult(SubResource): + """Endpoint service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Name of the endpoint service. + :vartype name: str + :ivar type: Type of the endpoint service. + :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, **kwargs): + super(EndpointServiceResult, self).__init__(**kwargs) + self.name = None + self.type = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result_paged.py new file mode 100644 index 000000000000..d5275afc687b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class EndpointServiceResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`EndpointServiceResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[EndpointServiceResult]'} + } + + def __init__(self, *args, **kwargs): + + super(EndpointServiceResultPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result_py3.py new file mode 100644 index 000000000000..489a2a2681ca --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/endpoint_service_result_py3.py @@ -0,0 +1,43 @@ +# 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 .sub_resource_py3 import SubResource + + +class EndpointServiceResult(SubResource): + """Endpoint service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Name of the endpoint service. + :vartype name: str + :ivar type: Type of the endpoint service. + :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(EndpointServiceResult, self).__init__(id=id, **kwargs) + self.name = None + self.type = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error.py new file mode 100644 index 000000000000..99f29d651c41 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error.py @@ -0,0 +1,57 @@ +# 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 + + +class Error(Model): + """Error. + + :param code: + :type code: str + :param message: + :type message: str + :param target: + :type target: str + :param details: + :type details: list[~azure.mgmt.network.v2018_08_01.models.ErrorDetails] + :param inner_error: + :type inner_error: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorDetails]'}, + 'inner_error': {'key': 'innerError', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Error, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.target = kwargs.get('target', None) + self.details = kwargs.get('details', None) + self.inner_error = kwargs.get('inner_error', None) + + +class ErrorException(HttpOperationError): + """Server responsed with exception of type: 'Error'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorException, self).__init__(deserialize, response, 'Error', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_details.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_details.py new file mode 100644 index 000000000000..a8c4da6ba955 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_details.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorDetails(Model): + """ErrorDetails. + + :param code: + :type code: str + :param target: + :type target: str + :param message: + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ErrorDetails, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.target = kwargs.get('target', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_details_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_details_py3.py new file mode 100644 index 000000000000..d791f0895345 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_details_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorDetails(Model): + """ErrorDetails. + + :param code: + :type code: str + :param target: + :type target: str + :param message: + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, target: str=None, message: str=None, **kwargs) -> None: + super(ErrorDetails, self).__init__(**kwargs) + self.code = code + self.target = target + self.message = message diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_py3.py new file mode 100644 index 000000000000..3451e27531cb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_py3.py @@ -0,0 +1,57 @@ +# 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 + + +class Error(Model): + """Error. + + :param code: + :type code: str + :param message: + :type message: str + :param target: + :type target: str + :param details: + :type details: list[~azure.mgmt.network.v2018_08_01.models.ErrorDetails] + :param inner_error: + :type inner_error: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorDetails]'}, + 'inner_error': {'key': 'innerError', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, message: str=None, target: str=None, details=None, inner_error: str=None, **kwargs) -> None: + super(Error, self).__init__(**kwargs) + self.code = code + self.message = message + self.target = target + self.details = details + self.inner_error = inner_error + + +class ErrorException(HttpOperationError): + """Server responsed with exception of type: 'Error'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorException, self).__init__(deserialize, response, 'Error', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_response.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_response.py new file mode 100644 index 000000000000..b20c163c62a7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_response.py @@ -0,0 +1,41 @@ +# 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 + + +class ErrorResponse(Model): + """The error object. + + :param error: Error. + :type error: ~azure.mgmt.network.v2018_08_01.models.ErrorDetails + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorDetails'}, + } + + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.error = kwargs.get('error', None) + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_response_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_response_py3.py new file mode 100644 index 000000000000..a08d2b6c5a9a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/error_response_py3.py @@ -0,0 +1,41 @@ +# 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 + + +class ErrorResponse(Model): + """The error object. + + :param error: Error. + :type error: ~azure.mgmt.network.v2018_08_01.models.ErrorDetails + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorDetails'}, + } + + def __init__(self, *, error=None, **kwargs) -> None: + super(ErrorResponse, self).__init__(**kwargs) + self.error = error + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/evaluated_network_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/evaluated_network_security_group.py new file mode 100644 index 000000000000..22d13bc85570 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/evaluated_network_security_group.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EvaluatedNetworkSecurityGroup(Model): + """Results of network security group evaluation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_security_group_id: Network security group ID. + :type network_security_group_id: str + :param matched_rule: + :type matched_rule: ~azure.mgmt.network.v2018_08_01.models.MatchedRule + :ivar rules_evaluation_result: List of network security rules evaluation + results. + :vartype rules_evaluation_result: + list[~azure.mgmt.network.v2018_08_01.models.NetworkSecurityRulesEvaluationResult] + """ + + _validation = { + 'rules_evaluation_result': {'readonly': True}, + } + + _attribute_map = { + 'network_security_group_id': {'key': 'networkSecurityGroupId', 'type': 'str'}, + 'matched_rule': {'key': 'matchedRule', 'type': 'MatchedRule'}, + 'rules_evaluation_result': {'key': 'rulesEvaluationResult', 'type': '[NetworkSecurityRulesEvaluationResult]'}, + } + + def __init__(self, **kwargs): + super(EvaluatedNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group_id = kwargs.get('network_security_group_id', None) + self.matched_rule = kwargs.get('matched_rule', None) + self.rules_evaluation_result = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/evaluated_network_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/evaluated_network_security_group_py3.py new file mode 100644 index 000000000000..b29d2c935adb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/evaluated_network_security_group_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EvaluatedNetworkSecurityGroup(Model): + """Results of network security group evaluation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_security_group_id: Network security group ID. + :type network_security_group_id: str + :param matched_rule: + :type matched_rule: ~azure.mgmt.network.v2018_08_01.models.MatchedRule + :ivar rules_evaluation_result: List of network security rules evaluation + results. + :vartype rules_evaluation_result: + list[~azure.mgmt.network.v2018_08_01.models.NetworkSecurityRulesEvaluationResult] + """ + + _validation = { + 'rules_evaluation_result': {'readonly': True}, + } + + _attribute_map = { + 'network_security_group_id': {'key': 'networkSecurityGroupId', 'type': 'str'}, + 'matched_rule': {'key': 'matchedRule', 'type': 'MatchedRule'}, + 'rules_evaluation_result': {'key': 'rulesEvaluationResult', 'type': '[NetworkSecurityRulesEvaluationResult]'}, + } + + def __init__(self, *, network_security_group_id: str=None, matched_rule=None, **kwargs) -> None: + super(EvaluatedNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group_id = network_security_group_id + self.matched_rule = matched_rule + self.rules_evaluation_result = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit.py new file mode 100644 index 000000000000..3a8423be9f1a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit.py @@ -0,0 +1,111 @@ +# 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 .resource import Resource + + +class ExpressRouteCircuit(Resource): + """ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The SKU. + :type sku: ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitSku + :param allow_classic_operations: Allow classic operations + :type allow_classic_operations: bool + :param circuit_provisioning_state: The CircuitProvisioningState state of + the resource. + :type circuit_provisioning_state: str + :param service_provider_provisioning_state: The + ServiceProviderProvisioningState state of the resource. Possible values + are 'NotProvisioned', 'Provisioning', 'Provisioned', and 'Deprovisioning'. + Possible values include: 'NotProvisioned', 'Provisioning', 'Provisioned', + 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ServiceProviderProvisioningState + :param authorizations: The list of authorizations. + :type authorizations: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitAuthorization] + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering] + :param service_key: The ServiceKey. + :type service_key: str + :param service_provider_notes: The ServiceProviderNotes. + :type service_provider_notes: str + :param service_provider_properties: The ServiceProviderProperties. + :type service_provider_properties: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitServiceProviderProperties + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param allow_global_reach: Flag to enable Global Reach on the circuit. + :type allow_global_reach: bool + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'ExpressRouteCircuitSku'}, + 'allow_classic_operations': {'key': 'properties.allowClassicOperations', 'type': 'bool'}, + 'circuit_provisioning_state': {'key': 'properties.circuitProvisioningState', 'type': 'str'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'authorizations': {'key': 'properties.authorizations', 'type': '[ExpressRouteCircuitAuthorization]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'service_key': {'key': 'properties.serviceKey', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'service_provider_properties': {'key': 'properties.serviceProviderProperties', 'type': 'ExpressRouteCircuitServiceProviderProperties'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'allow_global_reach': {'key': 'properties.allowGlobalReach', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuit, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.allow_classic_operations = kwargs.get('allow_classic_operations', None) + self.circuit_provisioning_state = kwargs.get('circuit_provisioning_state', None) + self.service_provider_provisioning_state = kwargs.get('service_provider_provisioning_state', None) + self.authorizations = kwargs.get('authorizations', None) + self.peerings = kwargs.get('peerings', None) + self.service_key = kwargs.get('service_key', None) + self.service_provider_notes = kwargs.get('service_provider_notes', None) + self.service_provider_properties = kwargs.get('service_provider_properties', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.allow_global_reach = kwargs.get('allow_global_reach', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_arp_table.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_arp_table.py new file mode 100644 index 000000000000..ed7864d35e09 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_arp_table.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitArpTable(Model): + """The ARP table associated with the ExpressRouteCircuit. + + :param age: Entry age in minutes + :type age: int + :param interface: Interface address + :type interface: str + :param ip_address: The IP address. + :type ip_address: str + :param mac_address: The MAC address. + :type mac_address: str + """ + + _attribute_map = { + 'age': {'key': 'age', 'type': 'int'}, + 'interface': {'key': 'interface', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'mac_address': {'key': 'macAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitArpTable, self).__init__(**kwargs) + self.age = kwargs.get('age', None) + self.interface = kwargs.get('interface', None) + self.ip_address = kwargs.get('ip_address', None) + self.mac_address = kwargs.get('mac_address', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_arp_table_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_arp_table_py3.py new file mode 100644 index 000000000000..e8c637a092d4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_arp_table_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitArpTable(Model): + """The ARP table associated with the ExpressRouteCircuit. + + :param age: Entry age in minutes + :type age: int + :param interface: Interface address + :type interface: str + :param ip_address: The IP address. + :type ip_address: str + :param mac_address: The MAC address. + :type mac_address: str + """ + + _attribute_map = { + 'age': {'key': 'age', 'type': 'int'}, + 'interface': {'key': 'interface', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'mac_address': {'key': 'macAddress', 'type': 'str'}, + } + + def __init__(self, *, age: int=None, interface: str=None, ip_address: str=None, mac_address: str=None, **kwargs) -> None: + super(ExpressRouteCircuitArpTable, self).__init__(**kwargs) + self.age = age + self.interface = interface + self.ip_address = ip_address + self.mac_address = mac_address diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization.py new file mode 100644 index 000000000000..36adb386e196 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization.py @@ -0,0 +1,60 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteCircuitAuthorization(SubResource): + """Authorization in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param authorization_key: The authorization key. + :type authorization_key: str + :param authorization_use_status: AuthorizationUseStatus. Possible values + are: 'Available' and 'InUse'. Possible values include: 'Available', + 'InUse' + :type authorization_use_status: str or + ~azure.mgmt.network.v2018_08_01.models.AuthorizationUseStatus + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'authorization_use_status': {'key': 'properties.authorizationUseStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitAuthorization, self).__init__(**kwargs) + self.authorization_key = kwargs.get('authorization_key', None) + self.authorization_use_status = kwargs.get('authorization_use_status', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization_paged.py new file mode 100644 index 000000000000..df8cb7000504 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCircuitAuthorizationPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuitAuthorization ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuitAuthorization]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitAuthorizationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization_py3.py new file mode 100644 index 000000000000..24931d57a495 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_authorization_py3.py @@ -0,0 +1,60 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteCircuitAuthorization(SubResource): + """Authorization in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param authorization_key: The authorization key. + :type authorization_key: str + :param authorization_use_status: AuthorizationUseStatus. Possible values + are: 'Available' and 'InUse'. Possible values include: 'Available', + 'InUse' + :type authorization_use_status: str or + ~azure.mgmt.network.v2018_08_01.models.AuthorizationUseStatus + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'authorization_use_status': {'key': 'properties.authorizationUseStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, authorization_key: str=None, authorization_use_status=None, provisioning_state: str=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitAuthorization, self).__init__(id=id, **kwargs) + self.authorization_key = authorization_key + self.authorization_use_status = authorization_use_status + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_connection.py new file mode 100644 index 000000000000..6ad789473637 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_connection.py @@ -0,0 +1,80 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteCircuitConnection(SubResource): + """Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param express_route_circuit_peering: Reference to Express Route Circuit + Private Peering Resource of the circuit initiating connection. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param peer_express_route_circuit_peering: Reference to Express Route + Circuit Private Peering Resource of the peered circuit. + :type peer_express_route_circuit_peering: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param address_prefix: /29 IP address space to carve out Customer + addresses for tunnels. + :type address_prefix: str + :param authorization_key: The authorization key. + :type authorization_key: str + :ivar circuit_connection_status: Express Route Circuit Connection State. + Possible values are: 'Connected' and 'Disconnected'. Possible values + include: 'Connected', 'Connecting', 'Disconnected' + :vartype circuit_connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.CircuitConnectionStatus + :ivar provisioning_state: Provisioning state of the circuit connection + resource. Possible values are: 'Succeded', 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'circuit_connection_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'SubResource'}, + 'peer_express_route_circuit_peering': {'key': 'properties.peerExpressRouteCircuitPeering', 'type': 'SubResource'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'circuit_connection_status': {'key': 'properties.circuitConnectionStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitConnection, self).__init__(**kwargs) + self.express_route_circuit_peering = kwargs.get('express_route_circuit_peering', None) + self.peer_express_route_circuit_peering = kwargs.get('peer_express_route_circuit_peering', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.authorization_key = kwargs.get('authorization_key', None) + self.circuit_connection_status = None + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_connection_py3.py new file mode 100644 index 000000000000..a995b009ffc8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_connection_py3.py @@ -0,0 +1,80 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteCircuitConnection(SubResource): + """Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param express_route_circuit_peering: Reference to Express Route Circuit + Private Peering Resource of the circuit initiating connection. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param peer_express_route_circuit_peering: Reference to Express Route + Circuit Private Peering Resource of the peered circuit. + :type peer_express_route_circuit_peering: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param address_prefix: /29 IP address space to carve out Customer + addresses for tunnels. + :type address_prefix: str + :param authorization_key: The authorization key. + :type authorization_key: str + :ivar circuit_connection_status: Express Route Circuit Connection State. + Possible values are: 'Connected' and 'Disconnected'. Possible values + include: 'Connected', 'Connecting', 'Disconnected' + :vartype circuit_connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.CircuitConnectionStatus + :ivar provisioning_state: Provisioning state of the circuit connection + resource. Possible values are: 'Succeded', 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'circuit_connection_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'SubResource'}, + 'peer_express_route_circuit_peering': {'key': 'properties.peerExpressRouteCircuitPeering', 'type': 'SubResource'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'circuit_connection_status': {'key': 'properties.circuitConnectionStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, express_route_circuit_peering=None, peer_express_route_circuit_peering=None, address_prefix: str=None, authorization_key: str=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitConnection, self).__init__(id=id, **kwargs) + self.express_route_circuit_peering = express_route_circuit_peering + self.peer_express_route_circuit_peering = peer_express_route_circuit_peering + self.address_prefix = address_prefix + self.authorization_key = authorization_key + self.circuit_connection_status = None + self.provisioning_state = None + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_paged.py new file mode 100644 index 000000000000..bcc6a9f08301 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCircuitPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuit ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuit]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering.py new file mode 100644 index 000000000000..03307dbb6001 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering.py @@ -0,0 +1,133 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteCircuitPeering(SubResource): + """Peering in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRoutePeeringState + :param azure_asn: The Azure ASN. + :type azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param primary_azure_port: The primary port. + :type primary_azure_port: str + :param secondary_azure_port: The secondary port. + :type secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringConfig + :param stats: Gets peering stats. + :type stats: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitStats + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param last_modified_by: Gets whether the provider or the customer last + modified the peering. + :type last_modified_by: str + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2018_08_01.models.RouteFilter + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2018_08_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param express_route_connection: The ExpressRoute connection. + :type express_route_connection: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnectionId + :param connections: The list of circuit connections associated with Azure + Private Peering for this circuit. + :type connections: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitConnection] + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'stats': {'key': 'properties.stats', 'type': 'ExpressRouteCircuitStats'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'route_filter': {'key': 'properties.routeFilter', 'type': 'RouteFilter'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'express_route_connection': {'key': 'properties.expressRouteConnection', 'type': 'ExpressRouteConnectionId'}, + 'connections': {'key': 'properties.connections', 'type': '[ExpressRouteCircuitConnection]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitPeering, self).__init__(**kwargs) + self.peering_type = kwargs.get('peering_type', None) + self.state = kwargs.get('state', None) + self.azure_asn = kwargs.get('azure_asn', None) + self.peer_asn = kwargs.get('peer_asn', None) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.primary_azure_port = kwargs.get('primary_azure_port', None) + self.secondary_azure_port = kwargs.get('secondary_azure_port', None) + self.shared_key = kwargs.get('shared_key', None) + self.vlan_id = kwargs.get('vlan_id', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.stats = kwargs.get('stats', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.last_modified_by = kwargs.get('last_modified_by', None) + self.route_filter = kwargs.get('route_filter', None) + self.ipv6_peering_config = kwargs.get('ipv6_peering_config', None) + self.express_route_connection = kwargs.get('express_route_connection', None) + self.connections = kwargs.get('connections', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_config.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_config.py new file mode 100644 index 000000000000..ca8c3c067976 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_config.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitPeeringConfig(Model): + """Specifies the peering configuration. + + :param advertised_public_prefixes: The reference of + AdvertisedPublicPrefixes. + :type advertised_public_prefixes: list[str] + :param advertised_communities: The communities of bgp peering. Spepcified + for microsoft peering + :type advertised_communities: list[str] + :param advertised_public_prefixes_state: AdvertisedPublicPrefixState of + the Peering resource. Possible values are 'NotConfigured', 'Configuring', + 'Configured', and 'ValidationNeeded'. Possible values include: + 'NotConfigured', 'Configuring', 'Configured', 'ValidationNeeded' + :type advertised_public_prefixes_state: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringAdvertisedPublicPrefixState + :param legacy_mode: The legacy mode of the peering. + :type legacy_mode: int + :param customer_asn: The CustomerASN of the peering. + :type customer_asn: int + :param routing_registry_name: The RoutingRegistryName of the + configuration. + :type routing_registry_name: str + """ + + _attribute_map = { + 'advertised_public_prefixes': {'key': 'advertisedPublicPrefixes', 'type': '[str]'}, + 'advertised_communities': {'key': 'advertisedCommunities', 'type': '[str]'}, + 'advertised_public_prefixes_state': {'key': 'advertisedPublicPrefixesState', 'type': 'str'}, + 'legacy_mode': {'key': 'legacyMode', 'type': 'int'}, + 'customer_asn': {'key': 'customerASN', 'type': 'int'}, + 'routing_registry_name': {'key': 'routingRegistryName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.advertised_public_prefixes = kwargs.get('advertised_public_prefixes', None) + self.advertised_communities = kwargs.get('advertised_communities', None) + self.advertised_public_prefixes_state = kwargs.get('advertised_public_prefixes_state', None) + self.legacy_mode = kwargs.get('legacy_mode', None) + self.customer_asn = kwargs.get('customer_asn', None) + self.routing_registry_name = kwargs.get('routing_registry_name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_config_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_config_py3.py new file mode 100644 index 000000000000..25b26582f310 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_config_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitPeeringConfig(Model): + """Specifies the peering configuration. + + :param advertised_public_prefixes: The reference of + AdvertisedPublicPrefixes. + :type advertised_public_prefixes: list[str] + :param advertised_communities: The communities of bgp peering. Spepcified + for microsoft peering + :type advertised_communities: list[str] + :param advertised_public_prefixes_state: AdvertisedPublicPrefixState of + the Peering resource. Possible values are 'NotConfigured', 'Configuring', + 'Configured', and 'ValidationNeeded'. Possible values include: + 'NotConfigured', 'Configuring', 'Configured', 'ValidationNeeded' + :type advertised_public_prefixes_state: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringAdvertisedPublicPrefixState + :param legacy_mode: The legacy mode of the peering. + :type legacy_mode: int + :param customer_asn: The CustomerASN of the peering. + :type customer_asn: int + :param routing_registry_name: The RoutingRegistryName of the + configuration. + :type routing_registry_name: str + """ + + _attribute_map = { + 'advertised_public_prefixes': {'key': 'advertisedPublicPrefixes', 'type': '[str]'}, + 'advertised_communities': {'key': 'advertisedCommunities', 'type': '[str]'}, + 'advertised_public_prefixes_state': {'key': 'advertisedPublicPrefixesState', 'type': 'str'}, + 'legacy_mode': {'key': 'legacyMode', 'type': 'int'}, + 'customer_asn': {'key': 'customerASN', 'type': 'int'}, + 'routing_registry_name': {'key': 'routingRegistryName', 'type': 'str'}, + } + + def __init__(self, *, advertised_public_prefixes=None, advertised_communities=None, advertised_public_prefixes_state=None, legacy_mode: int=None, customer_asn: int=None, routing_registry_name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.advertised_public_prefixes = advertised_public_prefixes + self.advertised_communities = advertised_communities + self.advertised_public_prefixes_state = advertised_public_prefixes_state + self.legacy_mode = legacy_mode + self.customer_asn = customer_asn + self.routing_registry_name = routing_registry_name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_id.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_id.py new file mode 100644 index 000000000000..8e20d23a582d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_id.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitPeeringId(Model): + """ExpressRoute circuit peering identifier. + + :param id: The ID of the ExpressRoute circuit peering. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitPeeringId, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_id_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_id_py3.py new file mode 100644 index 000000000000..0261435f5ecc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_id_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitPeeringId(Model): + """ExpressRoute circuit peering identifier. + + :param id: The ID of the ExpressRoute circuit peering. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ExpressRouteCircuitPeeringId, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_paged.py new file mode 100644 index 000000000000..3c6254dcc9f1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCircuitPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuitPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuitPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitPeeringPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_py3.py new file mode 100644 index 000000000000..307b39452e22 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_peering_py3.py @@ -0,0 +1,133 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteCircuitPeering(SubResource): + """Peering in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRoutePeeringState + :param azure_asn: The Azure ASN. + :type azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param primary_azure_port: The primary port. + :type primary_azure_port: str + :param secondary_azure_port: The secondary port. + :type secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringConfig + :param stats: Gets peering stats. + :type stats: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitStats + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param last_modified_by: Gets whether the provider or the customer last + modified the peering. + :type last_modified_by: str + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2018_08_01.models.RouteFilter + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2018_08_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param express_route_connection: The ExpressRoute connection. + :type express_route_connection: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnectionId + :param connections: The list of circuit connections associated with Azure + Private Peering for this circuit. + :type connections: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitConnection] + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'stats': {'key': 'properties.stats', 'type': 'ExpressRouteCircuitStats'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'route_filter': {'key': 'properties.routeFilter', 'type': 'RouteFilter'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'express_route_connection': {'key': 'properties.expressRouteConnection', 'type': 'ExpressRouteConnectionId'}, + 'connections': {'key': 'properties.connections', 'type': '[ExpressRouteCircuitConnection]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, peering_type=None, state=None, azure_asn: int=None, peer_asn: int=None, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, primary_azure_port: str=None, secondary_azure_port: str=None, shared_key: str=None, vlan_id: int=None, microsoft_peering_config=None, stats=None, provisioning_state: str=None, gateway_manager_etag: str=None, last_modified_by: str=None, route_filter=None, ipv6_peering_config=None, express_route_connection=None, connections=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitPeering, self).__init__(id=id, **kwargs) + self.peering_type = peering_type + self.state = state + self.azure_asn = azure_asn + self.peer_asn = peer_asn + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.primary_azure_port = primary_azure_port + self.secondary_azure_port = secondary_azure_port + self.shared_key = shared_key + self.vlan_id = vlan_id + self.microsoft_peering_config = microsoft_peering_config + self.stats = stats + self.provisioning_state = provisioning_state + self.gateway_manager_etag = gateway_manager_etag + self.last_modified_by = last_modified_by + self.route_filter = route_filter + self.ipv6_peering_config = ipv6_peering_config + self.express_route_connection = express_route_connection + self.connections = connections + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_py3.py new file mode 100644 index 000000000000..06a104c8b458 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_py3.py @@ -0,0 +1,111 @@ +# 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 .resource_py3 import Resource + + +class ExpressRouteCircuit(Resource): + """ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The SKU. + :type sku: ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitSku + :param allow_classic_operations: Allow classic operations + :type allow_classic_operations: bool + :param circuit_provisioning_state: The CircuitProvisioningState state of + the resource. + :type circuit_provisioning_state: str + :param service_provider_provisioning_state: The + ServiceProviderProvisioningState state of the resource. Possible values + are 'NotProvisioned', 'Provisioning', 'Provisioned', and 'Deprovisioning'. + Possible values include: 'NotProvisioned', 'Provisioning', 'Provisioned', + 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ServiceProviderProvisioningState + :param authorizations: The list of authorizations. + :type authorizations: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitAuthorization] + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering] + :param service_key: The ServiceKey. + :type service_key: str + :param service_provider_notes: The ServiceProviderNotes. + :type service_provider_notes: str + :param service_provider_properties: The ServiceProviderProperties. + :type service_provider_properties: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitServiceProviderProperties + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param allow_global_reach: Flag to enable Global Reach on the circuit. + :type allow_global_reach: bool + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'ExpressRouteCircuitSku'}, + 'allow_classic_operations': {'key': 'properties.allowClassicOperations', 'type': 'bool'}, + 'circuit_provisioning_state': {'key': 'properties.circuitProvisioningState', 'type': 'str'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'authorizations': {'key': 'properties.authorizations', 'type': '[ExpressRouteCircuitAuthorization]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'service_key': {'key': 'properties.serviceKey', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'service_provider_properties': {'key': 'properties.serviceProviderProperties', 'type': 'ExpressRouteCircuitServiceProviderProperties'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'allow_global_reach': {'key': 'properties.allowGlobalReach', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, allow_classic_operations: bool=None, circuit_provisioning_state: str=None, service_provider_provisioning_state=None, authorizations=None, peerings=None, service_key: str=None, service_provider_notes: str=None, service_provider_properties=None, provisioning_state: str=None, gateway_manager_etag: str=None, allow_global_reach: bool=None, **kwargs) -> None: + super(ExpressRouteCircuit, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.allow_classic_operations = allow_classic_operations + self.circuit_provisioning_state = circuit_provisioning_state + self.service_provider_provisioning_state = service_provider_provisioning_state + self.authorizations = authorizations + self.peerings = peerings + self.service_key = service_key + self.service_provider_notes = service_provider_notes + self.service_provider_properties = service_provider_properties + self.provisioning_state = provisioning_state + self.gateway_manager_etag = gateway_manager_etag + self.allow_global_reach = allow_global_reach + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_reference.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_reference.py new file mode 100644 index 000000000000..63275cc15917 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_reference.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitReference(Model): + """ExpressRouteCircuitReference. + + :param id: Corresponding Express Route Circuit Id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_reference_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_reference_py3.py new file mode 100644 index 000000000000..7f6880552144 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_reference_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitReference(Model): + """ExpressRouteCircuitReference. + + :param id: Corresponding Express Route Circuit Id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ExpressRouteCircuitReference, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table.py new file mode 100644 index 000000000000..5150924765f9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitRoutesTable(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param network: IP address of a network entity + :type network: str + :param next_hop: NextHop address + :type next_hop: str + :param loc_prf: Local preference value as set with the set + local-preference route-map configuration command + :type loc_prf: str + :param weight: Route Weight. + :type weight: int + :param path: Autonomous system paths to the destination network. + :type path: str + """ + + _attribute_map = { + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'loc_prf': {'key': 'locPrf', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + 'path': {'key': 'path', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitRoutesTable, self).__init__(**kwargs) + self.network = kwargs.get('network', None) + self.next_hop = kwargs.get('next_hop', None) + self.loc_prf = kwargs.get('loc_prf', None) + self.weight = kwargs.get('weight', None) + self.path = kwargs.get('path', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_py3.py new file mode 100644 index 000000000000..3b5829937b83 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitRoutesTable(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param network: IP address of a network entity + :type network: str + :param next_hop: NextHop address + :type next_hop: str + :param loc_prf: Local preference value as set with the set + local-preference route-map configuration command + :type loc_prf: str + :param weight: Route Weight. + :type weight: int + :param path: Autonomous system paths to the destination network. + :type path: str + """ + + _attribute_map = { + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'loc_prf': {'key': 'locPrf', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + 'path': {'key': 'path', 'type': 'str'}, + } + + def __init__(self, *, network: str=None, next_hop: str=None, loc_prf: str=None, weight: int=None, path: str=None, **kwargs) -> None: + super(ExpressRouteCircuitRoutesTable, self).__init__(**kwargs) + self.network = network + self.next_hop = next_hop + self.loc_prf = loc_prf + self.weight = weight + self.path = path diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_summary.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_summary.py new file mode 100644 index 000000000000..1f398383a9f0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_summary.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of the neighbor. + :type neighbor: str + :param v: BGP version number spoken to the neighbor. + :type v: int + :param as_property: Autonomous system number. + :type as_property: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_pfx_rcd: Current state of the BGP session, and the number of + prefixes that have been received from a neighbor or peer group. + :type state_pfx_rcd: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'v': {'key': 'v', 'type': 'int'}, + 'as_property': {'key': 'as', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_pfx_rcd': {'key': 'statePfxRcd', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = kwargs.get('neighbor', None) + self.v = kwargs.get('v', None) + self.as_property = kwargs.get('as_property', None) + self.up_down = kwargs.get('up_down', None) + self.state_pfx_rcd = kwargs.get('state_pfx_rcd', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_summary_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_summary_py3.py new file mode 100644 index 000000000000..13f52d9951f3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_routes_table_summary_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of the neighbor. + :type neighbor: str + :param v: BGP version number spoken to the neighbor. + :type v: int + :param as_property: Autonomous system number. + :type as_property: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_pfx_rcd: Current state of the BGP session, and the number of + prefixes that have been received from a neighbor or peer group. + :type state_pfx_rcd: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'v': {'key': 'v', 'type': 'int'}, + 'as_property': {'key': 'as', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_pfx_rcd': {'key': 'statePfxRcd', 'type': 'str'}, + } + + def __init__(self, *, neighbor: str=None, v: int=None, as_property: int=None, up_down: str=None, state_pfx_rcd: str=None, **kwargs) -> None: + super(ExpressRouteCircuitRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = neighbor + self.v = v + self.as_property = as_property + self.up_down = up_down + self.state_pfx_rcd = state_pfx_rcd diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_service_provider_properties.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_service_provider_properties.py new file mode 100644 index 000000000000..c51e6d8d653b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_service_provider_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitServiceProviderProperties(Model): + """Contains ServiceProviderProperties in an ExpressRouteCircuit. + + :param service_provider_name: The serviceProviderName. + :type service_provider_name: str + :param peering_location: The peering location. + :type peering_location: str + :param bandwidth_in_mbps: The BandwidthInMbps. + :type bandwidth_in_mbps: int + """ + + _attribute_map = { + 'service_provider_name': {'key': 'serviceProviderName', 'type': 'str'}, + 'peering_location': {'key': 'peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'bandwidthInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitServiceProviderProperties, self).__init__(**kwargs) + self.service_provider_name = kwargs.get('service_provider_name', None) + self.peering_location = kwargs.get('peering_location', None) + self.bandwidth_in_mbps = kwargs.get('bandwidth_in_mbps', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_service_provider_properties_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_service_provider_properties_py3.py new file mode 100644 index 000000000000..ea701a54c3fe --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_service_provider_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitServiceProviderProperties(Model): + """Contains ServiceProviderProperties in an ExpressRouteCircuit. + + :param service_provider_name: The serviceProviderName. + :type service_provider_name: str + :param peering_location: The peering location. + :type peering_location: str + :param bandwidth_in_mbps: The BandwidthInMbps. + :type bandwidth_in_mbps: int + """ + + _attribute_map = { + 'service_provider_name': {'key': 'serviceProviderName', 'type': 'str'}, + 'peering_location': {'key': 'peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'bandwidthInMbps', 'type': 'int'}, + } + + def __init__(self, *, service_provider_name: str=None, peering_location: str=None, bandwidth_in_mbps: int=None, **kwargs) -> None: + super(ExpressRouteCircuitServiceProviderProperties, self).__init__(**kwargs) + self.service_provider_name = service_provider_name + self.peering_location = peering_location + self.bandwidth_in_mbps = bandwidth_in_mbps diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_sku.py new file mode 100644 index 000000000000..27d030efe05b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_sku.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitSku(Model): + """Contains SKU in an ExpressRouteCircuit. + + :param name: The name of the SKU. + :type name: str + :param tier: The tier of the SKU. Possible values are 'Standard' and + 'Premium'. Possible values include: 'Standard', 'Premium' + :type tier: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitSkuTier + :param family: The family of the SKU. Possible values are: 'UnlimitedData' + and 'MeteredData'. Possible values include: 'UnlimitedData', 'MeteredData' + :type family: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitSkuFamily + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.family = kwargs.get('family', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_sku_py3.py new file mode 100644 index 000000000000..565fc298dd06 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_sku_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitSku(Model): + """Contains SKU in an ExpressRouteCircuit. + + :param name: The name of the SKU. + :type name: str + :param tier: The tier of the SKU. Possible values are 'Standard' and + 'Premium'. Possible values include: 'Standard', 'Premium' + :type tier: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitSkuTier + :param family: The family of the SKU. Possible values are: 'UnlimitedData' + and 'MeteredData'. Possible values include: 'UnlimitedData', 'MeteredData' + :type family: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitSkuFamily + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, tier=None, family=None, **kwargs) -> None: + super(ExpressRouteCircuitSku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.family = family diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_stats.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_stats.py new file mode 100644 index 000000000000..41c45ae2b19a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_stats.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitStats(Model): + """Contains stats associated with the peering. + + :param primarybytes_in: Gets BytesIn of the peering. + :type primarybytes_in: long + :param primarybytes_out: Gets BytesOut of the peering. + :type primarybytes_out: long + :param secondarybytes_in: Gets BytesIn of the peering. + :type secondarybytes_in: long + :param secondarybytes_out: Gets BytesOut of the peering. + :type secondarybytes_out: long + """ + + _attribute_map = { + 'primarybytes_in': {'key': 'primarybytesIn', 'type': 'long'}, + 'primarybytes_out': {'key': 'primarybytesOut', 'type': 'long'}, + 'secondarybytes_in': {'key': 'secondarybytesIn', 'type': 'long'}, + 'secondarybytes_out': {'key': 'secondarybytesOut', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitStats, self).__init__(**kwargs) + self.primarybytes_in = kwargs.get('primarybytes_in', None) + self.primarybytes_out = kwargs.get('primarybytes_out', None) + self.secondarybytes_in = kwargs.get('secondarybytes_in', None) + self.secondarybytes_out = kwargs.get('secondarybytes_out', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_stats_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_stats_py3.py new file mode 100644 index 000000000000..f78335343544 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuit_stats_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitStats(Model): + """Contains stats associated with the peering. + + :param primarybytes_in: Gets BytesIn of the peering. + :type primarybytes_in: long + :param primarybytes_out: Gets BytesOut of the peering. + :type primarybytes_out: long + :param secondarybytes_in: Gets BytesIn of the peering. + :type secondarybytes_in: long + :param secondarybytes_out: Gets BytesOut of the peering. + :type secondarybytes_out: long + """ + + _attribute_map = { + 'primarybytes_in': {'key': 'primarybytesIn', 'type': 'long'}, + 'primarybytes_out': {'key': 'primarybytesOut', 'type': 'long'}, + 'secondarybytes_in': {'key': 'secondarybytesIn', 'type': 'long'}, + 'secondarybytes_out': {'key': 'secondarybytesOut', 'type': 'long'}, + } + + def __init__(self, *, primarybytes_in: int=None, primarybytes_out: int=None, secondarybytes_in: int=None, secondarybytes_out: int=None, **kwargs) -> None: + super(ExpressRouteCircuitStats, self).__init__(**kwargs) + self.primarybytes_in = primarybytes_in + self.primarybytes_out = primarybytes_out + self.secondarybytes_in = secondarybytes_in + self.secondarybytes_out = secondarybytes_out diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_arp_table_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_arp_table_list_result.py new file mode 100644 index 000000000000..ebd151744ea7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_arp_table_list_result.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsArpTableListResult(Model): + """Response for ListArpTable associated with the Express Route Circuits API. + + :param value: Gets list of the ARP table. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitArpTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitArpTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsArpTableListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_arp_table_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_arp_table_list_result_py3.py new file mode 100644 index 000000000000..6a1891e6ea50 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_arp_table_list_result_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsArpTableListResult(Model): + """Response for ListArpTable associated with the Express Route Circuits API. + + :param value: Gets list of the ARP table. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitArpTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitArpTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsArpTableListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_list_result.py new file mode 100644 index 000000000000..ea13c96f01bc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_list_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsRoutesTableListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: The list of routes table. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitRoutesTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsRoutesTableListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_list_result_py3.py new file mode 100644 index 000000000000..b437d6cd9eb5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_list_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsRoutesTableListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: The list of routes table. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitRoutesTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsRoutesTableListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_summary_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_summary_list_result.py new file mode 100644 index 000000000000..c050948c5bb0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_summary_list_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitRoutesTableSummary] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_summary_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_summary_list_result_py3.py new file mode 100644 index 000000000000..0c81209a36b0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_circuits_routes_table_summary_list_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCircuitsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitRoutesTableSummary] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection.py new file mode 100644 index 000000000000..b8ab0ea3fd24 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection.py @@ -0,0 +1,62 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteConnection(SubResource): + """ExpressRouteConnection resource. + + 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 id: Resource ID. + :type id: str + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param express_route_circuit_peering: Required. The ExpressRoute circuit + peering. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringId + :param authorization_key: Authorization key to establish the connection. + :type authorization_key: str + :param routing_weight: The routing weight associated to the connection. + :type routing_weight: int + :param name: Required. The name of the resource. + :type name: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'express_route_circuit_peering': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'ExpressRouteCircuitPeeringId'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteConnection, self).__init__(**kwargs) + self.provisioning_state = None + self.express_route_circuit_peering = kwargs.get('express_route_circuit_peering', None) + self.authorization_key = kwargs.get('authorization_key', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_id.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_id.py new file mode 100644 index 000000000000..05d8fb5b1d33 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_id.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteConnectionId(Model): + """The ID of the ExpressRouteConnection. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The ID of the ExpressRouteConnection. + :vartype id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteConnectionId, self).__init__(**kwargs) + self.id = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_id_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_id_py3.py new file mode 100644 index 000000000000..ac3331079355 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_id_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteConnectionId(Model): + """The ID of the ExpressRouteConnection. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The ID of the ExpressRouteConnection. + :vartype id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ExpressRouteConnectionId, self).__init__(**kwargs) + self.id = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_list.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_list.py new file mode 100644 index 000000000000..5b282799dd73 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_list.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteConnectionList(Model): + """ExpressRouteConnection list. + + :param value: The list of ExpressRoute connections + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnection] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteConnection]'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteConnectionList, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_list_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_list_py3.py new file mode 100644 index 000000000000..bd063e3a7d88 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_list_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteConnectionList(Model): + """ExpressRouteConnection list. + + :param value: The list of ExpressRoute connections + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnection] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteConnection]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ExpressRouteConnectionList, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_py3.py new file mode 100644 index 000000000000..247cc748523b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_connection_py3.py @@ -0,0 +1,62 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteConnection(SubResource): + """ExpressRouteConnection resource. + + 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 id: Resource ID. + :type id: str + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param express_route_circuit_peering: Required. The ExpressRoute circuit + peering. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringId + :param authorization_key: Authorization key to establish the connection. + :type authorization_key: str + :param routing_weight: The routing weight associated to the connection. + :type routing_weight: int + :param name: Required. The name of the resource. + :type name: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'express_route_circuit_peering': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'ExpressRouteCircuitPeeringId'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, express_route_circuit_peering, name: str, id: str=None, authorization_key: str=None, routing_weight: int=None, **kwargs) -> None: + super(ExpressRouteConnection, self).__init__(id=id, **kwargs) + self.provisioning_state = None + self.express_route_circuit_peering = express_route_circuit_peering + self.authorization_key = authorization_key + self.routing_weight = routing_weight + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection.py new file mode 100644 index 000000000000..4a1783e03093 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection.py @@ -0,0 +1,105 @@ +# 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 .resource import Resource + + +class ExpressRouteCrossConnection(Resource): + """ExpressRouteCrossConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar primary_azure_port: The name of the primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The name of the secondary port. + :vartype secondary_azure_port: str + :ivar s_tag: The identifier of the circuit traffic. + :vartype s_tag: int + :param peering_location: The peering location of the ExpressRoute circuit. + :type peering_location: str + :param bandwidth_in_mbps: The circuit bandwidth In Mbps. + :type bandwidth_in_mbps: int + :param express_route_circuit: The ExpressRouteCircuit + :type express_route_circuit: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitReference + :param service_provider_provisioning_state: The provisioning state of the + circuit in the connectivity provider system. Possible values are + 'NotProvisioned', 'Provisioning', 'Provisioned'. Possible values include: + 'NotProvisioned', 'Provisioning', 'Provisioned', 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ServiceProviderProvisioningState + :param service_provider_notes: Additional read only notes set by the + connectivity provider. + :type service_provider_notes: str + :ivar provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPeering] + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 's_tag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 's_tag': {'key': 'properties.sTag', 'type': 'int'}, + 'peering_location': {'key': 'properties.peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'properties.bandwidthInMbps', 'type': 'int'}, + 'express_route_circuit': {'key': 'properties.expressRouteCircuit', 'type': 'ExpressRouteCircuitReference'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCrossConnectionPeering]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnection, self).__init__(**kwargs) + self.primary_azure_port = None + self.secondary_azure_port = None + self.s_tag = None + self.peering_location = kwargs.get('peering_location', None) + self.bandwidth_in_mbps = kwargs.get('bandwidth_in_mbps', None) + self.express_route_circuit = kwargs.get('express_route_circuit', None) + self.service_provider_provisioning_state = kwargs.get('service_provider_provisioning_state', None) + self.service_provider_notes = kwargs.get('service_provider_notes', None) + self.provisioning_state = None + self.peerings = kwargs.get('peerings', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_paged.py new file mode 100644 index 000000000000..585bef2e3845 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCrossConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCrossConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCrossConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCrossConnectionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering.py new file mode 100644 index 000000000000..6eb439457dc1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering.py @@ -0,0 +1,117 @@ +# 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 .sub_resource import SubResource + + +class ExpressRouteCrossConnectionPeering(SubResource): + """Peering in an ExpressRoute Cross Connection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRoutePeeringState + :ivar azure_asn: The Azure ASN. + :vartype azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :ivar primary_azure_port: The primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The secondary port. + :vartype secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringConfig + :ivar provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param last_modified_by: Gets whether the provider or the customer last + modified the peering. + :type last_modified_by: str + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2018_08_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'azure_asn': {'readonly': True}, + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionPeering, self).__init__(**kwargs) + self.peering_type = kwargs.get('peering_type', None) + self.state = kwargs.get('state', None) + self.azure_asn = None + self.peer_asn = kwargs.get('peer_asn', None) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.primary_azure_port = None + self.secondary_azure_port = None + self.shared_key = kwargs.get('shared_key', None) + self.vlan_id = kwargs.get('vlan_id', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.provisioning_state = None + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.last_modified_by = kwargs.get('last_modified_by', None) + self.ipv6_peering_config = kwargs.get('ipv6_peering_config', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering_paged.py new file mode 100644 index 000000000000..55e5bfc92f1a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteCrossConnectionPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCrossConnectionPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCrossConnectionPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCrossConnectionPeeringPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering_py3.py new file mode 100644 index 000000000000..8232c26477a4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_peering_py3.py @@ -0,0 +1,117 @@ +# 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 .sub_resource_py3 import SubResource + + +class ExpressRouteCrossConnectionPeering(SubResource): + """Peering in an ExpressRoute Cross Connection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRoutePeeringState + :ivar azure_asn: The Azure ASN. + :vartype azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :ivar primary_azure_port: The primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The secondary port. + :vartype secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringConfig + :ivar provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :param last_modified_by: Gets whether the provider or the customer last + modified the peering. + :type last_modified_by: str + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2018_08_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'azure_asn': {'readonly': True}, + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, peering_type=None, state=None, peer_asn: int=None, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, shared_key: str=None, vlan_id: int=None, microsoft_peering_config=None, gateway_manager_etag: str=None, last_modified_by: str=None, ipv6_peering_config=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionPeering, self).__init__(id=id, **kwargs) + self.peering_type = peering_type + self.state = state + self.azure_asn = None + self.peer_asn = peer_asn + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.primary_azure_port = None + self.secondary_azure_port = None + self.shared_key = shared_key + self.vlan_id = vlan_id + self.microsoft_peering_config = microsoft_peering_config + self.provisioning_state = None + self.gateway_manager_etag = gateway_manager_etag + self.last_modified_by = last_modified_by + self.ipv6_peering_config = ipv6_peering_config + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_py3.py new file mode 100644 index 000000000000..75a1afc119e0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_py3.py @@ -0,0 +1,105 @@ +# 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 .resource_py3 import Resource + + +class ExpressRouteCrossConnection(Resource): + """ExpressRouteCrossConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar primary_azure_port: The name of the primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The name of the secondary port. + :vartype secondary_azure_port: str + :ivar s_tag: The identifier of the circuit traffic. + :vartype s_tag: int + :param peering_location: The peering location of the ExpressRoute circuit. + :type peering_location: str + :param bandwidth_in_mbps: The circuit bandwidth In Mbps. + :type bandwidth_in_mbps: int + :param express_route_circuit: The ExpressRouteCircuit + :type express_route_circuit: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitReference + :param service_provider_provisioning_state: The provisioning state of the + circuit in the connectivity provider system. Possible values are + 'NotProvisioned', 'Provisioning', 'Provisioned'. Possible values include: + 'NotProvisioned', 'Provisioning', 'Provisioned', 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ServiceProviderProvisioningState + :param service_provider_notes: Additional read only notes set by the + connectivity provider. + :type service_provider_notes: str + :ivar provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPeering] + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 's_tag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 's_tag': {'key': 'properties.sTag', 'type': 'int'}, + 'peering_location': {'key': 'properties.peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'properties.bandwidthInMbps', 'type': 'int'}, + 'express_route_circuit': {'key': 'properties.expressRouteCircuit', 'type': 'ExpressRouteCircuitReference'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCrossConnectionPeering]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, peering_location: str=None, bandwidth_in_mbps: int=None, express_route_circuit=None, service_provider_provisioning_state=None, service_provider_notes: str=None, peerings=None, **kwargs) -> None: + super(ExpressRouteCrossConnection, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.primary_azure_port = None + self.secondary_azure_port = None + self.s_tag = None + self.peering_location = peering_location + self.bandwidth_in_mbps = bandwidth_in_mbps + self.express_route_circuit = express_route_circuit + self.service_provider_provisioning_state = service_provider_provisioning_state + self.service_provider_notes = service_provider_notes + self.provisioning_state = None + self.peerings = peerings + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_routes_table_summary.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_routes_table_summary.py new file mode 100644 index 000000000000..f6f4ab635293 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_routes_table_summary.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCrossConnectionRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of Neighbor router + :type neighbor: str + :param asn: Autonomous system number. + :type asn: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_or_prefixes_received: Current state of the BGP session, and + the number of prefixes that have been received from a neighbor or peer + group. + :type state_or_prefixes_received: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_or_prefixes_received': {'key': 'stateOrPrefixesReceived', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = kwargs.get('neighbor', None) + self.asn = kwargs.get('asn', None) + self.up_down = kwargs.get('up_down', None) + self.state_or_prefixes_received = kwargs.get('state_or_prefixes_received', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_routes_table_summary_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_routes_table_summary_py3.py new file mode 100644 index 000000000000..cbf47398ba2e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connection_routes_table_summary_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCrossConnectionRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of Neighbor router + :type neighbor: str + :param asn: Autonomous system number. + :type asn: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_or_prefixes_received: Current state of the BGP session, and + the number of prefixes that have been received from a neighbor or peer + group. + :type state_or_prefixes_received: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_or_prefixes_received': {'key': 'stateOrPrefixesReceived', 'type': 'str'}, + } + + def __init__(self, *, neighbor: str=None, asn: int=None, up_down: str=None, state_or_prefixes_received: str=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = neighbor + self.asn = asn + self.up_down = up_down + self.state_or_prefixes_received = state_or_prefixes_received diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connections_routes_table_summary_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connections_routes_table_summary_list_result.py new file mode 100644 index 000000000000..23b760b3fae3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connections_routes_table_summary_list_result.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCrossConnectionsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Cross + Connections. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionRoutesTableSummary] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCrossConnectionRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connections_routes_table_summary_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connections_routes_table_summary_list_result_py3.py new file mode 100644 index 000000000000..9e773a3cd44a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_cross_connections_routes_table_summary_list_result_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteCrossConnectionsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Cross + Connections. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionRoutesTableSummary] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCrossConnectionRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway.py new file mode 100644 index 000000000000..07d9850a9ebc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway.py @@ -0,0 +1,80 @@ +# 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 .resource import Resource + + +class ExpressRouteGateway(Resource): + """ExpressRoute gateway resource. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param auto_scale_configuration: Configuration for auto scaling. + :type auto_scale_configuration: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteGatewayPropertiesAutoScaleConfiguration + :ivar express_route_connections: List of ExpressRoute connections to the + ExpressRoute gateway. + :vartype express_route_connections: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnection] + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param virtual_hub: Required. The Virtual Hub where the ExpressRoute + gateway is or will be deployed. + :type virtual_hub: ~azure.mgmt.network.v2018_08_01.models.VirtualHubId + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'express_route_connections': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_hub': {'required': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'auto_scale_configuration': {'key': 'properties.autoScaleConfiguration', 'type': 'ExpressRouteGatewayPropertiesAutoScaleConfiguration'}, + 'express_route_connections': {'key': 'properties.expressRouteConnections', 'type': '[ExpressRouteConnection]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'VirtualHubId'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteGateway, self).__init__(**kwargs) + self.auto_scale_configuration = kwargs.get('auto_scale_configuration', None) + self.express_route_connections = None + self.provisioning_state = None + self.virtual_hub = kwargs.get('virtual_hub', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_list.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_list.py new file mode 100644 index 000000000000..1659678bdbd9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_list.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteGatewayList(Model): + """List of ExpressRoute gateways. + + :param value: List of ExpressRoute gateways. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteGateway] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteGateway]'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteGatewayList, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_list_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_list_py3.py new file mode 100644 index 000000000000..5eac67191c52 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_list_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteGatewayList(Model): + """List of ExpressRoute gateways. + + :param value: List of ExpressRoute gateways. + :type value: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteGateway] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteGateway]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ExpressRouteGatewayList, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration.py new file mode 100644 index 000000000000..42f28cf5a964 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteGatewayPropertiesAutoScaleConfiguration(Model): + """Configuration for auto scaling. + + :param bounds: Minimum and maximum number of scale units to deploy. + :type bounds: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds + """ + + _attribute_map = { + 'bounds': {'key': 'bounds', 'type': 'ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteGatewayPropertiesAutoScaleConfiguration, self).__init__(**kwargs) + self.bounds = kwargs.get('bounds', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_bounds.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_bounds.py new file mode 100644 index 000000000000..0f842805e117 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_bounds.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds(Model): + """Minimum and maximum number of scale units to deploy. + + :param min: Minimum number of scale units deployed for ExpressRoute + gateway. + :type min: int + :param max: Maximum number of scale units deployed for ExpressRoute + gateway. + :type max: int + """ + + _attribute_map = { + 'min': {'key': 'min', 'type': 'int'}, + 'max': {'key': 'max', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds, self).__init__(**kwargs) + self.min = kwargs.get('min', None) + self.max = kwargs.get('max', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_bounds_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_bounds_py3.py new file mode 100644 index 000000000000..9ea3e23886e0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_bounds_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds(Model): + """Minimum and maximum number of scale units to deploy. + + :param min: Minimum number of scale units deployed for ExpressRoute + gateway. + :type min: int + :param max: Maximum number of scale units deployed for ExpressRoute + gateway. + :type max: int + """ + + _attribute_map = { + 'min': {'key': 'min', 'type': 'int'}, + 'max': {'key': 'max', 'type': 'int'}, + } + + def __init__(self, *, min: int=None, max: int=None, **kwargs) -> None: + super(ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds, self).__init__(**kwargs) + self.min = min + self.max = max diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_py3.py new file mode 100644 index 000000000000..0498c1bab0a7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_properties_auto_scale_configuration_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteGatewayPropertiesAutoScaleConfiguration(Model): + """Configuration for auto scaling. + + :param bounds: Minimum and maximum number of scale units to deploy. + :type bounds: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds + """ + + _attribute_map = { + 'bounds': {'key': 'bounds', 'type': 'ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds'}, + } + + def __init__(self, *, bounds=None, **kwargs) -> None: + super(ExpressRouteGatewayPropertiesAutoScaleConfiguration, self).__init__(**kwargs) + self.bounds = bounds diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_py3.py new file mode 100644 index 000000000000..9154f326ddc8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_gateway_py3.py @@ -0,0 +1,80 @@ +# 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 .resource_py3 import Resource + + +class ExpressRouteGateway(Resource): + """ExpressRoute gateway resource. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param auto_scale_configuration: Configuration for auto scaling. + :type auto_scale_configuration: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteGatewayPropertiesAutoScaleConfiguration + :ivar express_route_connections: List of ExpressRoute connections to the + ExpressRoute gateway. + :vartype express_route_connections: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnection] + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param virtual_hub: Required. The Virtual Hub where the ExpressRoute + gateway is or will be deployed. + :type virtual_hub: ~azure.mgmt.network.v2018_08_01.models.VirtualHubId + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'express_route_connections': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_hub': {'required': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'auto_scale_configuration': {'key': 'properties.autoScaleConfiguration', 'type': 'ExpressRouteGatewayPropertiesAutoScaleConfiguration'}, + 'express_route_connections': {'key': 'properties.expressRouteConnections', 'type': '[ExpressRouteConnection]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'VirtualHubId'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, virtual_hub, id: str=None, location: str=None, tags=None, auto_scale_configuration=None, **kwargs) -> None: + super(ExpressRouteGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.auto_scale_configuration = auto_scale_configuration + self.express_route_connections = None + self.provisioning_state = None + self.virtual_hub = virtual_hub + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider.py new file mode 100644 index 000000000000..03c61d0ecac9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider.py @@ -0,0 +1,60 @@ +# 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 .resource import Resource + + +class ExpressRouteServiceProvider(Resource): + """A ExpressRouteResourceProvider object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param peering_locations: Get a list of peering locations. + :type peering_locations: list[str] + :param bandwidths_offered: Gets bandwidths offered. + :type bandwidths_offered: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteServiceProviderBandwidthsOffered] + :param provisioning_state: Gets the provisioning state of the resource. + :type provisioning_state: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'peering_locations': {'key': 'properties.peeringLocations', 'type': '[str]'}, + 'bandwidths_offered': {'key': 'properties.bandwidthsOffered', 'type': '[ExpressRouteServiceProviderBandwidthsOffered]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteServiceProvider, self).__init__(**kwargs) + self.peering_locations = kwargs.get('peering_locations', None) + self.bandwidths_offered = kwargs.get('bandwidths_offered', None) + self.provisioning_state = kwargs.get('provisioning_state', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_bandwidths_offered.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_bandwidths_offered.py new file mode 100644 index 000000000000..b27622af42d1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_bandwidths_offered.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteServiceProviderBandwidthsOffered(Model): + """Contains bandwidths offered in ExpressRouteServiceProvider resources. + + :param offer_name: The OfferName. + :type offer_name: str + :param value_in_mbps: The ValueInMbps. + :type value_in_mbps: int + """ + + _attribute_map = { + 'offer_name': {'key': 'offerName', 'type': 'str'}, + 'value_in_mbps': {'key': 'valueInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteServiceProviderBandwidthsOffered, self).__init__(**kwargs) + self.offer_name = kwargs.get('offer_name', None) + self.value_in_mbps = kwargs.get('value_in_mbps', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_bandwidths_offered_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_bandwidths_offered_py3.py new file mode 100644 index 000000000000..88516a0dfcf8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_bandwidths_offered_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExpressRouteServiceProviderBandwidthsOffered(Model): + """Contains bandwidths offered in ExpressRouteServiceProvider resources. + + :param offer_name: The OfferName. + :type offer_name: str + :param value_in_mbps: The ValueInMbps. + :type value_in_mbps: int + """ + + _attribute_map = { + 'offer_name': {'key': 'offerName', 'type': 'str'}, + 'value_in_mbps': {'key': 'valueInMbps', 'type': 'int'}, + } + + def __init__(self, *, offer_name: str=None, value_in_mbps: int=None, **kwargs) -> None: + super(ExpressRouteServiceProviderBandwidthsOffered, self).__init__(**kwargs) + self.offer_name = offer_name + self.value_in_mbps = value_in_mbps diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_paged.py new file mode 100644 index 000000000000..150daf64d45e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExpressRouteServiceProviderPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteServiceProvider ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteServiceProvider]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteServiceProviderPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_py3.py new file mode 100644 index 000000000000..8f5d0264dc85 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/express_route_service_provider_py3.py @@ -0,0 +1,60 @@ +# 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 .resource_py3 import Resource + + +class ExpressRouteServiceProvider(Resource): + """A ExpressRouteResourceProvider object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param peering_locations: Get a list of peering locations. + :type peering_locations: list[str] + :param bandwidths_offered: Gets bandwidths offered. + :type bandwidths_offered: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteServiceProviderBandwidthsOffered] + :param provisioning_state: Gets the provisioning state of the resource. + :type provisioning_state: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'peering_locations': {'key': 'properties.peeringLocations', 'type': '[str]'}, + 'bandwidths_offered': {'key': 'properties.bandwidthsOffered', 'type': '[ExpressRouteServiceProviderBandwidthsOffered]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, peering_locations=None, bandwidths_offered=None, provisioning_state: str=None, **kwargs) -> None: + super(ExpressRouteServiceProvider, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.peering_locations = peering_locations + self.bandwidths_offered = bandwidths_offered + self.provisioning_state = provisioning_state diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_information.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_information.py new file mode 100644 index 000000000000..73a58e647e62 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_information.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FlowLogInformation(Model): + """Information on the configuration of flow log and traffic analytics + (optional) . + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the resource to configure + for flow log and traffic analytics (optional) . + :type target_resource_id: str + :param storage_id: Required. ID of the storage account which is used to + store the flow log. + :type storage_id: str + :param enabled: Required. Flag to enable/disable flow logging. + :type enabled: bool + :param retention_policy: + :type retention_policy: + ~azure.mgmt.network.v2018_08_01.models.RetentionPolicyParameters + :param flow_analytics_configuration: + :type flow_analytics_configuration: + ~azure.mgmt.network.v2018_08_01.models.TrafficAnalyticsProperties + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'enabled': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'retention_policy': {'key': 'properties.retentionPolicy', 'type': 'RetentionPolicyParameters'}, + 'flow_analytics_configuration': {'key': 'flowAnalyticsConfiguration', 'type': 'TrafficAnalyticsProperties'}, + } + + def __init__(self, **kwargs): + super(FlowLogInformation, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.storage_id = kwargs.get('storage_id', None) + self.enabled = kwargs.get('enabled', None) + self.retention_policy = kwargs.get('retention_policy', None) + self.flow_analytics_configuration = kwargs.get('flow_analytics_configuration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_information_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_information_py3.py new file mode 100644 index 000000000000..c6179062cb7e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_information_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FlowLogInformation(Model): + """Information on the configuration of flow log and traffic analytics + (optional) . + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the resource to configure + for flow log and traffic analytics (optional) . + :type target_resource_id: str + :param storage_id: Required. ID of the storage account which is used to + store the flow log. + :type storage_id: str + :param enabled: Required. Flag to enable/disable flow logging. + :type enabled: bool + :param retention_policy: + :type retention_policy: + ~azure.mgmt.network.v2018_08_01.models.RetentionPolicyParameters + :param flow_analytics_configuration: + :type flow_analytics_configuration: + ~azure.mgmt.network.v2018_08_01.models.TrafficAnalyticsProperties + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'enabled': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'retention_policy': {'key': 'properties.retentionPolicy', 'type': 'RetentionPolicyParameters'}, + 'flow_analytics_configuration': {'key': 'flowAnalyticsConfiguration', 'type': 'TrafficAnalyticsProperties'}, + } + + def __init__(self, *, target_resource_id: str, storage_id: str, enabled: bool, retention_policy=None, flow_analytics_configuration=None, **kwargs) -> None: + super(FlowLogInformation, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.storage_id = storage_id + self.enabled = enabled + self.retention_policy = retention_policy + self.flow_analytics_configuration = flow_analytics_configuration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_status_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_status_parameters.py new file mode 100644 index 000000000000..1e290526a28e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_status_parameters.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FlowLogStatusParameters(Model): + """Parameters that define a resource to query flow log and traffic analytics + (optional) status. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource where getting the + flow log and traffic analytics (optional) status. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FlowLogStatusParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_status_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_status_parameters_py3.py new file mode 100644 index 000000000000..89d079fdb715 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/flow_log_status_parameters_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FlowLogStatusParameters(Model): + """Parameters that define a resource to query flow log and traffic analytics + (optional) status. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource where getting the + flow log and traffic analytics (optional) status. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(FlowLogStatusParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration.py new file mode 100644 index 000000000000..b501d663e8de --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration.py @@ -0,0 +1,105 @@ +# 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 .sub_resource import SubResource + + +class FrontendIPConfiguration(SubResource): + """Frontend IP address of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar inbound_nat_rules: Read only. Inbound rules URIs that use this + frontend IP. + :vartype inbound_nat_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar inbound_nat_pools: Read only. Inbound pools URIs that use this + frontend IP. + :vartype inbound_nat_pools: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar outbound_rules: Read only. Outbound rules URIs that use this + frontend IP. + :vartype outbound_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar load_balancing_rules: Gets load balancing rules URIs that use this + frontend IP. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The Private IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :param public_ip_address: The reference of the Public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress + :param public_ip_prefix: The reference of the Public IP Prefix resource. + :type public_ip_prefix: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'inbound_nat_rules': {'readonly': True}, + 'inbound_nat_pools': {'readonly': True}, + 'outbound_rules': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[SubResource]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[SubResource]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[SubResource]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(FrontendIPConfiguration, self).__init__(**kwargs) + self.inbound_nat_rules = None + self.inbound_nat_pools = None + self.outbound_rules = None + self.load_balancing_rules = None + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.public_ip_prefix = kwargs.get('public_ip_prefix', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration_paged.py new file mode 100644 index 000000000000..a67761020fae --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class FrontendIPConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`FrontendIPConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[FrontendIPConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(FrontendIPConfigurationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration_py3.py new file mode 100644 index 000000000000..4afe321bd401 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/frontend_ip_configuration_py3.py @@ -0,0 +1,105 @@ +# 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 .sub_resource_py3 import SubResource + + +class FrontendIPConfiguration(SubResource): + """Frontend IP address of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar inbound_nat_rules: Read only. Inbound rules URIs that use this + frontend IP. + :vartype inbound_nat_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar inbound_nat_pools: Read only. Inbound pools URIs that use this + frontend IP. + :vartype inbound_nat_pools: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar outbound_rules: Read only. Outbound rules URIs that use this + frontend IP. + :vartype outbound_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar load_balancing_rules: Gets load balancing rules URIs that use this + frontend IP. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The Private IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :param public_ip_address: The reference of the Public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress + :param public_ip_prefix: The reference of the Public IP Prefix resource. + :type public_ip_prefix: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'inbound_nat_rules': {'readonly': True}, + 'inbound_nat_pools': {'readonly': True}, + 'outbound_rules': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[SubResource]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[SubResource]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[SubResource]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, public_ip_prefix=None, provisioning_state: str=None, name: str=None, etag: str=None, zones=None, **kwargs) -> None: + super(FrontendIPConfiguration, self).__init__(id=id, **kwargs) + self.inbound_nat_rules = None + self.inbound_nat_pools = None + self.outbound_rules = None + self.load_balancing_rules = None + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.public_ip_prefix = public_ip_prefix + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag + self.zones = zones diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route.py new file mode 100644 index 000000000000..0b96cb661e70 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GatewayRoute(Model): + """Gateway routing details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The gateway's local address + :vartype local_address: str + :ivar network: The route's network prefix + :vartype network: str + :ivar next_hop: The route's next hop + :vartype next_hop: str + :ivar source_peer: The peer this route was learned from + :vartype source_peer: str + :ivar origin: The source this route was learned from + :vartype origin: str + :ivar as_path: The route's AS path sequence + :vartype as_path: str + :ivar weight: The route's weight + :vartype weight: int + """ + + _validation = { + 'local_address': {'readonly': True}, + 'network': {'readonly': True}, + 'next_hop': {'readonly': True}, + 'source_peer': {'readonly': True}, + 'origin': {'readonly': True}, + 'as_path': {'readonly': True}, + 'weight': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'source_peer': {'key': 'sourcePeer', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'as_path': {'key': 'asPath', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(GatewayRoute, self).__init__(**kwargs) + self.local_address = None + self.network = None + self.next_hop = None + self.source_peer = None + self.origin = None + self.as_path = None + self.weight = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_list_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_list_result.py new file mode 100644 index 000000000000..14eba8e631e5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_list_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GatewayRouteListResult(Model): + """List of virtual network gateway routes. + + :param value: List of gateway routes + :type value: list[~azure.mgmt.network.v2018_08_01.models.GatewayRoute] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[GatewayRoute]'}, + } + + def __init__(self, **kwargs): + super(GatewayRouteListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_list_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_list_result_py3.py new file mode 100644 index 000000000000..db8b7be2767f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_list_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GatewayRouteListResult(Model): + """List of virtual network gateway routes. + + :param value: List of gateway routes + :type value: list[~azure.mgmt.network.v2018_08_01.models.GatewayRoute] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[GatewayRoute]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(GatewayRouteListResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_py3.py new file mode 100644 index 000000000000..1aa3ba60605f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/gateway_route_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GatewayRoute(Model): + """Gateway routing details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The gateway's local address + :vartype local_address: str + :ivar network: The route's network prefix + :vartype network: str + :ivar next_hop: The route's next hop + :vartype next_hop: str + :ivar source_peer: The peer this route was learned from + :vartype source_peer: str + :ivar origin: The source this route was learned from + :vartype origin: str + :ivar as_path: The route's AS path sequence + :vartype as_path: str + :ivar weight: The route's weight + :vartype weight: int + """ + + _validation = { + 'local_address': {'readonly': True}, + 'network': {'readonly': True}, + 'next_hop': {'readonly': True}, + 'source_peer': {'readonly': True}, + 'origin': {'readonly': True}, + 'as_path': {'readonly': True}, + 'weight': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'source_peer': {'key': 'sourcePeer', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'as_path': {'key': 'asPath', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(GatewayRoute, self).__init__(**kwargs) + self.local_address = None + self.network = None + self.next_hop = None + self.source_peer = None + self.origin = None + self.as_path = None + self.weight = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/get_vpn_sites_configuration_request.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/get_vpn_sites_configuration_request.py new file mode 100644 index 000000000000..7c8732192d6d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/get_vpn_sites_configuration_request.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetVpnSitesConfigurationRequest(Model): + """List of Vpn-Sites. + + :param vpn_sites: List of resource-ids of the vpn-sites for which config + is to be downloaded. + :type vpn_sites: list[str] + :param output_blob_sas_url: The sas-url to download the configurations for + vpn-sites + :type output_blob_sas_url: str + """ + + _attribute_map = { + 'vpn_sites': {'key': 'vpnSites', 'type': '[str]'}, + 'output_blob_sas_url': {'key': 'outputBlobSasUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GetVpnSitesConfigurationRequest, self).__init__(**kwargs) + self.vpn_sites = kwargs.get('vpn_sites', None) + self.output_blob_sas_url = kwargs.get('output_blob_sas_url', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/get_vpn_sites_configuration_request_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/get_vpn_sites_configuration_request_py3.py new file mode 100644 index 000000000000..f15efad67f06 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/get_vpn_sites_configuration_request_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class GetVpnSitesConfigurationRequest(Model): + """List of Vpn-Sites. + + :param vpn_sites: List of resource-ids of the vpn-sites for which config + is to be downloaded. + :type vpn_sites: list[str] + :param output_blob_sas_url: The sas-url to download the configurations for + vpn-sites + :type output_blob_sas_url: str + """ + + _attribute_map = { + 'vpn_sites': {'key': 'vpnSites', 'type': '[str]'}, + 'output_blob_sas_url': {'key': 'outputBlobSasUrl', 'type': 'str'}, + } + + def __init__(self, *, vpn_sites=None, output_blob_sas_url: str=None, **kwargs) -> None: + super(GetVpnSitesConfigurationRequest, self).__init__(**kwargs) + self.vpn_sites = vpn_sites + self.output_blob_sas_url = output_blob_sas_url diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_configuration.py new file mode 100644 index 000000000000..d014609162c0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_configuration.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HTTPConfiguration(Model): + """HTTP configuration of the connectivity check. + + :param method: HTTP method. Possible values include: 'Get' + :type method: str or ~azure.mgmt.network.v2018_08_01.models.HTTPMethod + :param headers: List of HTTP headers. + :type headers: list[~azure.mgmt.network.v2018_08_01.models.HTTPHeader] + :param valid_status_codes: Valid status codes. + :type valid_status_codes: list[int] + """ + + _attribute_map = { + 'method': {'key': 'method', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '[HTTPHeader]'}, + 'valid_status_codes': {'key': 'validStatusCodes', 'type': '[int]'}, + } + + def __init__(self, **kwargs): + super(HTTPConfiguration, self).__init__(**kwargs) + self.method = kwargs.get('method', None) + self.headers = kwargs.get('headers', None) + self.valid_status_codes = kwargs.get('valid_status_codes', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_configuration_py3.py new file mode 100644 index 000000000000..0c0f7929b76d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_configuration_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HTTPConfiguration(Model): + """HTTP configuration of the connectivity check. + + :param method: HTTP method. Possible values include: 'Get' + :type method: str or ~azure.mgmt.network.v2018_08_01.models.HTTPMethod + :param headers: List of HTTP headers. + :type headers: list[~azure.mgmt.network.v2018_08_01.models.HTTPHeader] + :param valid_status_codes: Valid status codes. + :type valid_status_codes: list[int] + """ + + _attribute_map = { + 'method': {'key': 'method', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '[HTTPHeader]'}, + 'valid_status_codes': {'key': 'validStatusCodes', 'type': '[int]'}, + } + + def __init__(self, *, method=None, headers=None, valid_status_codes=None, **kwargs) -> None: + super(HTTPConfiguration, self).__init__(**kwargs) + self.method = method + self.headers = headers + self.valid_status_codes = valid_status_codes diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_header.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_header.py new file mode 100644 index 000000000000..0d0a9a93cd5a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_header.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HTTPHeader(Model): + """Describes the HTTP header. + + :param name: The name in HTTP header. + :type name: str + :param value: The value in HTTP header. + :type value: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HTTPHeader, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_header_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_header_py3.py new file mode 100644 index 000000000000..366f1a2bf681 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/http_header_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HTTPHeader(Model): + """Describes the HTTP header. + + :param name: The name in HTTP header. + :type name: str + :param value: The value in HTTP header. + :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(HTTPHeader, self).__init__(**kwargs) + self.name = name + self.value = value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection.py new file mode 100644 index 000000000000..946fa5bc42a9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection.py @@ -0,0 +1,69 @@ +# 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 .sub_resource import SubResource + + +class HubVirtualNetworkConnection(SubResource): + """HubVirtualNetworkConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param remote_virtual_network: Reference to the remote virtual network. + :type remote_virtual_network: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param allow_hub_to_remote_vnet_transit: VirtualHub to RemoteVnet transit + to enabled or not. + :type allow_hub_to_remote_vnet_transit: bool + :param allow_remote_vnet_to_use_hub_vnet_gateways: Allow RemoteVnet to use + Virtual Hub's gateways. + :type allow_remote_vnet_to_use_hub_vnet_gateways: bool + :param enable_internet_security: Enable internet security + :type enable_internet_security: bool + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'allow_hub_to_remote_vnet_transit': {'key': 'properties.allowHubToRemoteVnetTransit', 'type': 'bool'}, + 'allow_remote_vnet_to_use_hub_vnet_gateways': {'key': 'properties.allowRemoteVnetToUseHubVnetGateways', 'type': 'bool'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HubVirtualNetworkConnection, self).__init__(**kwargs) + self.remote_virtual_network = kwargs.get('remote_virtual_network', None) + self.allow_hub_to_remote_vnet_transit = kwargs.get('allow_hub_to_remote_vnet_transit', None) + self.allow_remote_vnet_to_use_hub_vnet_gateways = kwargs.get('allow_remote_vnet_to_use_hub_vnet_gateways', None) + self.enable_internet_security = kwargs.get('enable_internet_security', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection_paged.py new file mode 100644 index 000000000000..f14680e0a986 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class HubVirtualNetworkConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`HubVirtualNetworkConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[HubVirtualNetworkConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(HubVirtualNetworkConnectionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection_py3.py new file mode 100644 index 000000000000..d822fbb43033 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/hub_virtual_network_connection_py3.py @@ -0,0 +1,69 @@ +# 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 .sub_resource_py3 import SubResource + + +class HubVirtualNetworkConnection(SubResource): + """HubVirtualNetworkConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param remote_virtual_network: Reference to the remote virtual network. + :type remote_virtual_network: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param allow_hub_to_remote_vnet_transit: VirtualHub to RemoteVnet transit + to enabled or not. + :type allow_hub_to_remote_vnet_transit: bool + :param allow_remote_vnet_to_use_hub_vnet_gateways: Allow RemoteVnet to use + Virtual Hub's gateways. + :type allow_remote_vnet_to_use_hub_vnet_gateways: bool + :param enable_internet_security: Enable internet security + :type enable_internet_security: bool + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'allow_hub_to_remote_vnet_transit': {'key': 'properties.allowHubToRemoteVnetTransit', 'type': 'bool'}, + 'allow_remote_vnet_to_use_hub_vnet_gateways': {'key': 'properties.allowRemoteVnetToUseHubVnetGateways', 'type': 'bool'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, remote_virtual_network=None, allow_hub_to_remote_vnet_transit: bool=None, allow_remote_vnet_to_use_hub_vnet_gateways: bool=None, enable_internet_security: bool=None, provisioning_state=None, name: str=None, **kwargs) -> None: + super(HubVirtualNetworkConnection, self).__init__(id=id, **kwargs) + self.remote_virtual_network = remote_virtual_network + self.allow_hub_to_remote_vnet_transit = allow_hub_to_remote_vnet_transit + self.allow_remote_vnet_to_use_hub_vnet_gateways = allow_remote_vnet_to_use_hub_vnet_gateways + self.enable_internet_security = enable_internet_security + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_pool.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_pool.py new file mode 100644 index 000000000000..3df1ecb41a8e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_pool.py @@ -0,0 +1,100 @@ +# 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 .sub_resource import SubResource + + +class InboundNatPool(SubResource): + """Inbound NAT pool of the load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param protocol: Required. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.TransportProtocol + :param frontend_port_range_start: Required. The first port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65534. + :type frontend_port_range_start: int + :param frontend_port_range_end: Required. The last port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65535. + :type frontend_port_range_end: int + :param backend_port: Required. The port used for internal connections on + the endpoint. Acceptable values are between 1 and 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port_range_start': {'required': True}, + 'frontend_port_range_end': {'required': True}, + 'backend_port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port_range_start': {'key': 'properties.frontendPortRangeStart', 'type': 'int'}, + 'frontend_port_range_end': {'key': 'properties.frontendPortRangeEnd', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(InboundNatPool, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.protocol = kwargs.get('protocol', None) + self.frontend_port_range_start = kwargs.get('frontend_port_range_start', None) + self.frontend_port_range_end = kwargs.get('frontend_port_range_end', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_pool_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_pool_py3.py new file mode 100644 index 000000000000..a738f9d04c79 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_pool_py3.py @@ -0,0 +1,100 @@ +# 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 .sub_resource_py3 import SubResource + + +class InboundNatPool(SubResource): + """Inbound NAT pool of the load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param protocol: Required. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.TransportProtocol + :param frontend_port_range_start: Required. The first port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65534. + :type frontend_port_range_start: int + :param frontend_port_range_end: Required. The last port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65535. + :type frontend_port_range_end: int + :param backend_port: Required. The port used for internal connections on + the endpoint. Acceptable values are between 1 and 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port_range_start': {'required': True}, + 'frontend_port_range_end': {'required': True}, + 'backend_port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port_range_start': {'key': 'properties.frontendPortRangeStart', 'type': 'int'}, + 'frontend_port_range_end': {'key': 'properties.frontendPortRangeEnd', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, frontend_port_range_start: int, frontend_port_range_end: int, backend_port: int, id: str=None, frontend_ip_configuration=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(InboundNatPool, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.protocol = protocol + self.frontend_port_range_start = frontend_port_range_start + self.frontend_port_range_end = frontend_port_range_end + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule.py new file mode 100644 index 000000000000..471ac027b30c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule.py @@ -0,0 +1,97 @@ +# 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 .sub_resource import SubResource + + +class InboundNatRule(SubResource): + """Inbound NAT rule of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :ivar backend_ip_configuration: A reference to a private IP address + defined on a network interface of a VM. Traffic sent to the frontend port + of each of the frontend IP configurations is forwarded to the backend IP. + :vartype backend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration + :param protocol: Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.TransportProtocol + :param frontend_port: The port for the external endpoint. Port numbers for + each rule must be unique within the Load Balancer. Acceptable values range + from 1 to 65534. + :type frontend_port: int + :param backend_port: The port used for the internal endpoint. Acceptable + values range from 1 to 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'backend_ip_configuration': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_ip_configuration': {'key': 'properties.backendIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(InboundNatRule, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.backend_ip_configuration = None + self.protocol = kwargs.get('protocol', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule_paged.py new file mode 100644 index 000000000000..29d47d96b767 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class InboundNatRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`InboundNatRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[InboundNatRule]'} + } + + def __init__(self, *args, **kwargs): + + super(InboundNatRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule_py3.py new file mode 100644 index 000000000000..635978451ade --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/inbound_nat_rule_py3.py @@ -0,0 +1,97 @@ +# 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 .sub_resource_py3 import SubResource + + +class InboundNatRule(SubResource): + """Inbound NAT rule of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :ivar backend_ip_configuration: A reference to a private IP address + defined on a network interface of a VM. Traffic sent to the frontend port + of each of the frontend IP configurations is forwarded to the backend IP. + :vartype backend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration + :param protocol: Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.TransportProtocol + :param frontend_port: The port for the external endpoint. Port numbers for + each rule must be unique within the Load Balancer. Acceptable values range + from 1 to 65534. + :type frontend_port: int + :param backend_port: The port used for the internal endpoint. Acceptable + values range from 1 to 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'backend_ip_configuration': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_ip_configuration': {'key': 'properties.backendIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, frontend_ip_configuration=None, protocol=None, frontend_port: int=None, backend_port: int=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(InboundNatRule, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.backend_ip_configuration = None + self.protocol = protocol + self.frontend_port = frontend_port + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint.py new file mode 100644 index 000000000000..ed05bb1b9035 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint.py @@ -0,0 +1,87 @@ +# 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 .resource import Resource + + +class InterfaceEndpoint(Resource): + """Interface endpoint resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param fqdn: A first-party service's FQDN that is mapped to the private IP + allocated via this interface endpoint. + :type fqdn: str + :param endpoint_service: A reference to the service being brought into the + virtual network. + :type endpoint_service: + ~azure.mgmt.network.v2018_08_01.models.EndpointService + :param subnet: The ID of the subnet from which the private IP will be + allocated. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :ivar network_interfaces: Gets an array of references to the network + interfaces created for this interface endpoint. + :vartype network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :ivar owner: A read-only property that identifies who created this + interface endpoint. + :vartype owner: str + :ivar provisioning_state: The provisioning state of the interface + endpoint. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'owner': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'fqdn': {'key': 'properties.fqdn', 'type': 'str'}, + 'endpoint_service': {'key': 'properties.endpointService', 'type': 'EndpointService'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'owner': {'key': 'properties.owner', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(InterfaceEndpoint, self).__init__(**kwargs) + self.fqdn = kwargs.get('fqdn', None) + self.endpoint_service = kwargs.get('endpoint_service', None) + self.subnet = kwargs.get('subnet', None) + self.network_interfaces = None + self.owner = None + self.provisioning_state = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint_paged.py new file mode 100644 index 000000000000..8150414b7fd7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class InterfaceEndpointPaged(Paged): + """ + A paging container for iterating over a list of :class:`InterfaceEndpoint ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[InterfaceEndpoint]'} + } + + def __init__(self, *args, **kwargs): + + super(InterfaceEndpointPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint_py3.py new file mode 100644 index 000000000000..ae58dab272fa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/interface_endpoint_py3.py @@ -0,0 +1,87 @@ +# 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 .resource_py3 import Resource + + +class InterfaceEndpoint(Resource): + """Interface endpoint resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param fqdn: A first-party service's FQDN that is mapped to the private IP + allocated via this interface endpoint. + :type fqdn: str + :param endpoint_service: A reference to the service being brought into the + virtual network. + :type endpoint_service: + ~azure.mgmt.network.v2018_08_01.models.EndpointService + :param subnet: The ID of the subnet from which the private IP will be + allocated. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :ivar network_interfaces: Gets an array of references to the network + interfaces created for this interface endpoint. + :vartype network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :ivar owner: A read-only property that identifies who created this + interface endpoint. + :vartype owner: str + :ivar provisioning_state: The provisioning state of the interface + endpoint. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'owner': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'fqdn': {'key': 'properties.fqdn', 'type': 'str'}, + 'endpoint_service': {'key': 'properties.endpointService', 'type': 'EndpointService'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'owner': {'key': 'properties.owner', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, fqdn: str=None, endpoint_service=None, subnet=None, etag: str=None, **kwargs) -> None: + super(InterfaceEndpoint, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.fqdn = fqdn + self.endpoint_service = endpoint_service + self.subnet = subnet + self.network_interfaces = None + self.owner = None + self.provisioning_state = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_address_availability_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_address_availability_result.py new file mode 100644 index 000000000000..6bcf52275711 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_address_availability_result.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IPAddressAvailabilityResult(Model): + """Response for CheckIPAddressAvailability API service call. + + :param available: Private IP address availability. + :type available: bool + :param available_ip_addresses: Contains other available private IP + addresses if the asked for address is taken. + :type available_ip_addresses: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + 'available_ip_addresses': {'key': 'availableIPAddresses', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(IPAddressAvailabilityResult, self).__init__(**kwargs) + self.available = kwargs.get('available', None) + self.available_ip_addresses = kwargs.get('available_ip_addresses', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_address_availability_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_address_availability_result_py3.py new file mode 100644 index 000000000000..e5fc4340d370 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_address_availability_result_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IPAddressAvailabilityResult(Model): + """Response for CheckIPAddressAvailability API service call. + + :param available: Private IP address availability. + :type available: bool + :param available_ip_addresses: Contains other available private IP + addresses if the asked for address is taken. + :type available_ip_addresses: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + 'available_ip_addresses': {'key': 'availableIPAddresses', 'type': '[str]'}, + } + + def __init__(self, *, available: bool=None, available_ip_addresses=None, **kwargs) -> None: + super(IPAddressAvailabilityResult, self).__init__(**kwargs) + self.available = available + self.available_ip_addresses = available_ip_addresses diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration.py new file mode 100644 index 000000000000..42e29f5cfad7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration.py @@ -0,0 +1,62 @@ +# 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 .sub_resource import SubResource + + +class IPConfiguration(SubResource): + """IP configuration. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP allocation method. + Possible values are 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IPConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_profile.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_profile.py new file mode 100644 index 000000000000..6fdf21023fbb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_profile.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class IPConfigurationProfile(SubResource): + """IP configuration profile child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param subnet: The reference of the subnet resource to create a + contatainer network interface ip configruation. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IPConfigurationProfile, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_profile_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_profile_py3.py new file mode 100644 index 000000000000..4d6af84b55e5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_profile_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class IPConfigurationProfile(SubResource): + """IP configuration profile child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param subnet: The reference of the subnet resource to create a + contatainer network interface ip configruation. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, subnet=None, name: str=None, etag: str=None, **kwargs) -> None: + super(IPConfigurationProfile, self).__init__(id=id, **kwargs) + self.subnet = subnet + self.provisioning_state = None + self.name = name + self.type = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_py3.py new file mode 100644 index 000000000000..1e81a11a54ce --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_configuration_py3.py @@ -0,0 +1,62 @@ +# 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 .sub_resource_py3 import SubResource + + +class IPConfiguration(SubResource): + """IP configuration. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP allocation method. + Possible values are 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(IPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_tag.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_tag.py new file mode 100644 index 000000000000..559dddc661d2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_tag.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpTag(Model): + """Contains the IpTag associated with the object. + + :param ip_tag_type: Gets or sets the ipTag type: Example FirstPartyUsage. + :type ip_tag_type: str + :param tag: Gets or sets value of the IpTag associated with the public IP. + Example SQL, Storage etc + :type tag: str + """ + + _attribute_map = { + 'ip_tag_type': {'key': 'ipTagType', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IpTag, self).__init__(**kwargs) + self.ip_tag_type = kwargs.get('ip_tag_type', None) + self.tag = kwargs.get('tag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_tag_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_tag_py3.py new file mode 100644 index 000000000000..2370c408761c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ip_tag_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpTag(Model): + """Contains the IpTag associated with the object. + + :param ip_tag_type: Gets or sets the ipTag type: Example FirstPartyUsage. + :type ip_tag_type: str + :param tag: Gets or sets value of the IpTag associated with the public IP. + Example SQL, Storage etc + :type tag: str + """ + + _attribute_map = { + 'ip_tag_type': {'key': 'ipTagType', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, *, ip_tag_type: str=None, tag: str=None, **kwargs) -> None: + super(IpTag, self).__init__(**kwargs) + self.ip_tag_type = ip_tag_type + self.tag = tag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipsec_policy.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipsec_policy.py new file mode 100644 index 000000000000..1c5c3b9289b4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipsec_policy.py @@ -0,0 +1,89 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpsecPolicy(Model): + """An IPSec Policy configuration for a virtual network gateway connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to + site VPN tunnel. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for a site to + site VPN tunnel. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2018_08_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2018_08_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2018_08_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2018_08_01.models.IkeIntegrity + :param dh_group: Required. The DH Groups used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2018_08_01.models.DhGroup + :param pfs_group: Required. The Pfs Groups used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2018_08_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IpsecPolicy, self).__init__(**kwargs) + self.sa_life_time_seconds = kwargs.get('sa_life_time_seconds', None) + self.sa_data_size_kilobytes = kwargs.get('sa_data_size_kilobytes', None) + self.ipsec_encryption = kwargs.get('ipsec_encryption', None) + self.ipsec_integrity = kwargs.get('ipsec_integrity', None) + self.ike_encryption = kwargs.get('ike_encryption', None) + self.ike_integrity = kwargs.get('ike_integrity', None) + self.dh_group = kwargs.get('dh_group', None) + self.pfs_group = kwargs.get('pfs_group', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipsec_policy_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipsec_policy_py3.py new file mode 100644 index 000000000000..629bf1f10318 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipsec_policy_py3.py @@ -0,0 +1,89 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IpsecPolicy(Model): + """An IPSec Policy configuration for a virtual network gateway connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to + site VPN tunnel. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for a site to + site VPN tunnel. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2018_08_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2018_08_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2018_08_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2018_08_01.models.IkeIntegrity + :param dh_group: Required. The DH Groups used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2018_08_01.models.DhGroup + :param pfs_group: Required. The Pfs Groups used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2018_08_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, *, sa_life_time_seconds: int, sa_data_size_kilobytes: int, ipsec_encryption, ipsec_integrity, ike_encryption, ike_integrity, dh_group, pfs_group, **kwargs) -> None: + super(IpsecPolicy, self).__init__(**kwargs) + self.sa_life_time_seconds = sa_life_time_seconds + self.sa_data_size_kilobytes = sa_data_size_kilobytes + self.ipsec_encryption = ipsec_encryption + self.ipsec_integrity = ipsec_integrity + self.ike_encryption = ike_encryption + self.ike_integrity = ike_integrity + self.dh_group = dh_group + self.pfs_group = pfs_group diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipv6_express_route_circuit_peering_config.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipv6_express_route_circuit_peering_config.py new file mode 100644 index 000000000000..16cb3eba09b0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipv6_express_route_circuit_peering_config.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Ipv6ExpressRouteCircuitPeeringConfig(Model): + """Contains IPv6 peering config. + + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringConfig + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2018_08_01.models.RouteFilter + :param state: The state of peering. Possible values are: 'Disabled' and + 'Enabled'. Possible values include: 'Disabled', 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringState + """ + + _attribute_map = { + 'primary_peer_address_prefix': {'key': 'primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'secondaryPeerAddressPrefix', 'type': 'str'}, + 'microsoft_peering_config': {'key': 'microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'route_filter': {'key': 'routeFilter', 'type': 'RouteFilter'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Ipv6ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.route_filter = kwargs.get('route_filter', None) + self.state = kwargs.get('state', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipv6_express_route_circuit_peering_config_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipv6_express_route_circuit_peering_config_py3.py new file mode 100644 index 000000000000..01f7f85914b2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/ipv6_express_route_circuit_peering_config_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Ipv6ExpressRouteCircuitPeeringConfig(Model): + """Contains IPv6 peering config. + + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringConfig + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2018_08_01.models.RouteFilter + :param state: The state of peering. Possible values are: 'Disabled' and + 'Enabled'. Possible values include: 'Disabled', 'Enabled' + :type state: str or + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringState + """ + + _attribute_map = { + 'primary_peer_address_prefix': {'key': 'primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'secondaryPeerAddressPrefix', 'type': 'str'}, + 'microsoft_peering_config': {'key': 'microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'route_filter': {'key': 'routeFilter', 'type': 'RouteFilter'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, *, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, microsoft_peering_config=None, route_filter=None, state=None, **kwargs) -> None: + super(Ipv6ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.microsoft_peering_config = microsoft_peering_config + self.route_filter = route_filter + self.state = state diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer.py new file mode 100644 index 000000000000..b3555cc00eb8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer.py @@ -0,0 +1,115 @@ +# 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 .resource import Resource + + +class LoadBalancer(Resource): + """LoadBalancer resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The load balancer SKU. + :type sku: ~azure.mgmt.network.v2018_08_01.models.LoadBalancerSku + :param frontend_ip_configurations: Object representing the frontend IPs to + be used for the load balancer + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.FrontendIPConfiguration] + :param backend_address_pools: Collection of backend address pools used by + a load balancer + :type backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.BackendAddressPool] + :param load_balancing_rules: Object collection representing the load + balancing rules Gets the provisioning + :type load_balancing_rules: + list[~azure.mgmt.network.v2018_08_01.models.LoadBalancingRule] + :param probes: Collection of probe objects used in the load balancer + :type probes: list[~azure.mgmt.network.v2018_08_01.models.Probe] + :param inbound_nat_rules: Collection of inbound NAT Rules used by a load + balancer. Defining inbound NAT rules on your load balancer is mutually + exclusive with defining an inbound NAT pool. Inbound NAT pools are + referenced from virtual machine scale sets. NICs that are associated with + individual virtual machines cannot reference an Inbound NAT pool. They + have to reference individual inbound NAT rules. + :type inbound_nat_rules: + list[~azure.mgmt.network.v2018_08_01.models.InboundNatRule] + :param inbound_nat_pools: Defines an external port range for inbound NAT + to a single backend port on NICs associated with a load balancer. Inbound + NAT rules are created automatically for each NIC associated with the Load + Balancer using an external port from this range. Defining an Inbound NAT + pool on your Load Balancer is mutually exclusive with defining inbound Nat + rules. Inbound NAT pools are referenced from virtual machine scale sets. + NICs that are associated with individual virtual machines cannot reference + an inbound NAT pool. They have to reference individual inbound NAT rules. + :type inbound_nat_pools: + list[~azure.mgmt.network.v2018_08_01.models.InboundNatPool] + :param outbound_rules: The outbound rules. + :type outbound_rules: + list[~azure.mgmt.network.v2018_08_01.models.OutboundRule] + :param resource_guid: The resource GUID property of the load balancer + resource. + :type resource_guid: str + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'LoadBalancerSku'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[FrontendIPConfiguration]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[LoadBalancingRule]'}, + 'probes': {'key': 'properties.probes', 'type': '[Probe]'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[InboundNatRule]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[InboundNatPool]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[OutboundRule]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancer, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.backend_address_pools = kwargs.get('backend_address_pools', None) + self.load_balancing_rules = kwargs.get('load_balancing_rules', None) + self.probes = kwargs.get('probes', None) + self.inbound_nat_rules = kwargs.get('inbound_nat_rules', None) + self.inbound_nat_pools = kwargs.get('inbound_nat_pools', None) + self.outbound_rules = kwargs.get('outbound_rules', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_paged.py new file mode 100644 index 000000000000..8cc0bd2316a3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class LoadBalancerPaged(Paged): + """ + A paging container for iterating over a list of :class:`LoadBalancer ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LoadBalancer]'} + } + + def __init__(self, *args, **kwargs): + + super(LoadBalancerPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_py3.py new file mode 100644 index 000000000000..871934d5bf17 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_py3.py @@ -0,0 +1,115 @@ +# 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 .resource_py3 import Resource + + +class LoadBalancer(Resource): + """LoadBalancer resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The load balancer SKU. + :type sku: ~azure.mgmt.network.v2018_08_01.models.LoadBalancerSku + :param frontend_ip_configurations: Object representing the frontend IPs to + be used for the load balancer + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.FrontendIPConfiguration] + :param backend_address_pools: Collection of backend address pools used by + a load balancer + :type backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.BackendAddressPool] + :param load_balancing_rules: Object collection representing the load + balancing rules Gets the provisioning + :type load_balancing_rules: + list[~azure.mgmt.network.v2018_08_01.models.LoadBalancingRule] + :param probes: Collection of probe objects used in the load balancer + :type probes: list[~azure.mgmt.network.v2018_08_01.models.Probe] + :param inbound_nat_rules: Collection of inbound NAT Rules used by a load + balancer. Defining inbound NAT rules on your load balancer is mutually + exclusive with defining an inbound NAT pool. Inbound NAT pools are + referenced from virtual machine scale sets. NICs that are associated with + individual virtual machines cannot reference an Inbound NAT pool. They + have to reference individual inbound NAT rules. + :type inbound_nat_rules: + list[~azure.mgmt.network.v2018_08_01.models.InboundNatRule] + :param inbound_nat_pools: Defines an external port range for inbound NAT + to a single backend port on NICs associated with a load balancer. Inbound + NAT rules are created automatically for each NIC associated with the Load + Balancer using an external port from this range. Defining an Inbound NAT + pool on your Load Balancer is mutually exclusive with defining inbound Nat + rules. Inbound NAT pools are referenced from virtual machine scale sets. + NICs that are associated with individual virtual machines cannot reference + an inbound NAT pool. They have to reference individual inbound NAT rules. + :type inbound_nat_pools: + list[~azure.mgmt.network.v2018_08_01.models.InboundNatPool] + :param outbound_rules: The outbound rules. + :type outbound_rules: + list[~azure.mgmt.network.v2018_08_01.models.OutboundRule] + :param resource_guid: The resource GUID property of the load balancer + resource. + :type resource_guid: str + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'LoadBalancerSku'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[FrontendIPConfiguration]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[LoadBalancingRule]'}, + 'probes': {'key': 'properties.probes', 'type': '[Probe]'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[InboundNatRule]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[InboundNatPool]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[OutboundRule]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, frontend_ip_configurations=None, backend_address_pools=None, load_balancing_rules=None, probes=None, inbound_nat_rules=None, inbound_nat_pools=None, outbound_rules=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(LoadBalancer, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.frontend_ip_configurations = frontend_ip_configurations + self.backend_address_pools = backend_address_pools + self.load_balancing_rules = load_balancing_rules + self.probes = probes + self.inbound_nat_rules = inbound_nat_rules + self.inbound_nat_pools = inbound_nat_pools + self.outbound_rules = outbound_rules + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_sku.py new file mode 100644 index 000000000000..f744a48ddac7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_sku.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LoadBalancerSku(Model): + """SKU of a load balancer. + + :param name: Name of a load balancer SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.LoadBalancerSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancerSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_sku_py3.py new file mode 100644 index 000000000000..d438afa32c95 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancer_sku_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LoadBalancerSku(Model): + """SKU of a load balancer. + + :param name: Name of a load balancer SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.LoadBalancerSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(LoadBalancerSku, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule.py new file mode 100644 index 000000000000..23220ff61070 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule.py @@ -0,0 +1,115 @@ +# 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 .sub_resource import SubResource + + +class LoadBalancingRule(SubResource): + """A load balancing rule for a load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param backend_address_pool: A reference to a pool of DIPs. Inbound + traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param probe: The reference of the load balancer probe used by the load + balancing rule. + :type probe: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param protocol: Required. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.TransportProtocol + :param load_distribution: The load distribution policy for this rule. + Possible values are 'Default', 'SourceIP', and 'SourceIPProtocol'. + Possible values include: 'Default', 'SourceIP', 'SourceIPProtocol' + :type load_distribution: str or + ~azure.mgmt.network.v2018_08_01.models.LoadDistribution + :param frontend_port: Required. The port for the external endpoint. Port + numbers for each rule must be unique within the Load Balancer. Acceptable + values are between 0 and 65534. Note that value 0 enables "Any Port" + :type frontend_port: int + :param backend_port: The port used for internal connections on the + endpoint. Acceptable values are between 0 and 65535. Note that value 0 + enables "Any Port" + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param disable_outbound_snat: Configures SNAT for the VMs in the backend + pool to use the publicIP address specified in the frontend of the load + balancing rule. + :type disable_outbound_snat: bool + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'load_distribution': {'key': 'properties.loadDistribution', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'disable_outbound_snat': {'key': 'properties.disableOutboundSnat', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancingRule, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.probe = kwargs.get('probe', None) + self.protocol = kwargs.get('protocol', None) + self.load_distribution = kwargs.get('load_distribution', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.disable_outbound_snat = kwargs.get('disable_outbound_snat', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule_paged.py new file mode 100644 index 000000000000..a587ac9e33a6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class LoadBalancingRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`LoadBalancingRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LoadBalancingRule]'} + } + + def __init__(self, *args, **kwargs): + + super(LoadBalancingRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule_py3.py new file mode 100644 index 000000000000..6b05948c2409 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/load_balancing_rule_py3.py @@ -0,0 +1,115 @@ +# 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 .sub_resource_py3 import SubResource + + +class LoadBalancingRule(SubResource): + """A load balancing rule for a load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param backend_address_pool: A reference to a pool of DIPs. Inbound + traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param probe: The reference of the load balancer probe used by the load + balancing rule. + :type probe: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param protocol: Required. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.TransportProtocol + :param load_distribution: The load distribution policy for this rule. + Possible values are 'Default', 'SourceIP', and 'SourceIPProtocol'. + Possible values include: 'Default', 'SourceIP', 'SourceIPProtocol' + :type load_distribution: str or + ~azure.mgmt.network.v2018_08_01.models.LoadDistribution + :param frontend_port: Required. The port for the external endpoint. Port + numbers for each rule must be unique within the Load Balancer. Acceptable + values are between 0 and 65534. Note that value 0 enables "Any Port" + :type frontend_port: int + :param backend_port: The port used for internal connections on the + endpoint. Acceptable values are between 0 and 65535. Note that value 0 + enables "Any Port" + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param disable_outbound_snat: Configures SNAT for the VMs in the backend + pool to use the publicIP address specified in the frontend of the load + balancing rule. + :type disable_outbound_snat: bool + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'load_distribution': {'key': 'properties.loadDistribution', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'disable_outbound_snat': {'key': 'properties.disableOutboundSnat', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, frontend_port: int, id: str=None, frontend_ip_configuration=None, backend_address_pool=None, probe=None, load_distribution=None, backend_port: int=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, disable_outbound_snat: bool=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(LoadBalancingRule, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.backend_address_pool = backend_address_pool + self.probe = probe + self.protocol = protocol + self.load_distribution = load_distribution + self.frontend_port = frontend_port + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.disable_outbound_snat = disable_outbound_snat + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway.py new file mode 100644 index 000000000000..3418355aad79 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway.py @@ -0,0 +1,77 @@ +# 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 .resource import Resource + + +class LocalNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param local_network_address_space: Local network site address space. + :type local_network_address_space: + ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param gateway_ip_address: IP address of local network gateway. + :type gateway_ip_address: str + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_08_01.models.BgpSettings + :param resource_guid: The resource GUID property of the + LocalNetworkGateway resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + LocalNetworkGateway resource. Possible values are: 'Updating', 'Deleting', + and 'Failed'. + :vartype provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'local_network_address_space': {'key': 'properties.localNetworkAddressSpace', 'type': 'AddressSpace'}, + 'gateway_ip_address': {'key': 'properties.gatewayIpAddress', 'type': 'str'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LocalNetworkGateway, self).__init__(**kwargs) + self.local_network_address_space = kwargs.get('local_network_address_space', None) + self.gateway_ip_address = kwargs.get('gateway_ip_address', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway_paged.py new file mode 100644 index 000000000000..02302d8a572b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class LocalNetworkGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`LocalNetworkGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LocalNetworkGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(LocalNetworkGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway_py3.py new file mode 100644 index 000000000000..9b81be68f5f4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/local_network_gateway_py3.py @@ -0,0 +1,77 @@ +# 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 .resource_py3 import Resource + + +class LocalNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param local_network_address_space: Local network site address space. + :type local_network_address_space: + ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param gateway_ip_address: IP address of local network gateway. + :type gateway_ip_address: str + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_08_01.models.BgpSettings + :param resource_guid: The resource GUID property of the + LocalNetworkGateway resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + LocalNetworkGateway resource. Possible values are: 'Updating', 'Deleting', + and 'Failed'. + :vartype provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'local_network_address_space': {'key': 'properties.localNetworkAddressSpace', 'type': 'AddressSpace'}, + 'gateway_ip_address': {'key': 'properties.gatewayIpAddress', 'type': 'str'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, local_network_address_space=None, gateway_ip_address: str=None, bgp_settings=None, resource_guid: str=None, etag: str=None, **kwargs) -> None: + super(LocalNetworkGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.local_network_address_space = local_network_address_space + self.gateway_ip_address = gateway_ip_address + self.bgp_settings = bgp_settings + self.resource_guid = resource_guid + self.provisioning_state = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/log_specification.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/log_specification.py new file mode 100644 index 000000000000..ab592992d904 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/log_specification.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogSpecification(Model): + """Description of logging specification. + + :param name: The name of the specification. + :type name: str + :param display_name: The display name of the specification. + :type display_name: str + :param blob_duration: Duration of the blob. + :type blob_duration: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LogSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.blob_duration = kwargs.get('blob_duration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/log_specification_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/log_specification_py3.py new file mode 100644 index 000000000000..6184811d393e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/log_specification_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogSpecification(Model): + """Description of logging specification. + + :param name: The name of the specification. + :type name: str + :param display_name: The display name of the specification. + :type display_name: str + :param blob_duration: Duration of the blob. + :type blob_duration: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, blob_duration: str=None, **kwargs) -> None: + super(LogSpecification, self).__init__(**kwargs) + self.name = name + self.display_name = display_name + self.blob_duration = blob_duration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/matched_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/matched_rule.py new file mode 100644 index 000000000000..ffa2f54f52fd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/matched_rule.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MatchedRule(Model): + """Matched rule. + + :param rule_name: Name of the matched network security rule. + :type rule_name: str + :param action: The network traffic is allowed or denied. Possible values + are 'Allow' and 'Deny'. + :type action: str + """ + + _attribute_map = { + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MatchedRule, self).__init__(**kwargs) + self.rule_name = kwargs.get('rule_name', None) + self.action = kwargs.get('action', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/matched_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/matched_rule_py3.py new file mode 100644 index 000000000000..67868d929d0c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/matched_rule_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MatchedRule(Model): + """Matched rule. + + :param rule_name: Name of the matched network security rule. + :type rule_name: str + :param action: The network traffic is allowed or denied. Possible values + are 'Allow' and 'Deny'. + :type action: str + """ + + _attribute_map = { + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, *, rule_name: str=None, action: str=None, **kwargs) -> None: + super(MatchedRule, self).__init__(**kwargs) + self.rule_name = rule_name + self.action = action diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/metric_specification.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/metric_specification.py new file mode 100644 index 000000000000..6bcdf1b5d105 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/metric_specification.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricSpecification(Model): + """Description of metrics specification. + + :param name: The name of the metric. + :type name: str + :param display_name: The display name of the metric. + :type display_name: str + :param display_description: The description of the metric. + :type display_description: str + :param unit: Units the metric to be displayed in. + :type unit: str + :param aggregation_type: The aggregation type. + :type aggregation_type: str + :param availabilities: List of availability. + :type availabilities: + list[~azure.mgmt.network.v2018_08_01.models.Availability] + :param enable_regional_mdm_account: Whether regional MDM account enabled. + :type enable_regional_mdm_account: bool + :param fill_gap_with_zero: Whether gaps would be filled with zeros. + :type fill_gap_with_zero: bool + :param metric_filter_pattern: Pattern for the filter of the metric. + :type metric_filter_pattern: str + :param dimensions: List of dimensions. + :type dimensions: list[~azure.mgmt.network.v2018_08_01.models.Dimension] + :param is_internal: Whether the metric is internal. + :type is_internal: bool + :param source_mdm_account: The source MDM account. + :type source_mdm_account: str + :param source_mdm_namespace: The source MDM namespace. + :type source_mdm_namespace: str + :param resource_id_dimension_name_override: The resource Id dimension name + override. + :type resource_id_dimension_name_override: str + """ + + _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'}, + 'availabilities': {'key': 'availabilities', 'type': '[Availability]'}, + 'enable_regional_mdm_account': {'key': 'enableRegionalMdmAccount', 'type': 'bool'}, + 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'}, + 'metric_filter_pattern': {'key': 'metricFilterPattern', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, + 'is_internal': {'key': 'isInternal', 'type': 'bool'}, + 'source_mdm_account': {'key': 'sourceMdmAccount', 'type': 'str'}, + 'source_mdm_namespace': {'key': 'sourceMdmNamespace', 'type': 'str'}, + 'resource_id_dimension_name_override': {'key': 'resourceIdDimensionNameOverride', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MetricSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.display_description = kwargs.get('display_description', None) + self.unit = kwargs.get('unit', None) + self.aggregation_type = kwargs.get('aggregation_type', None) + self.availabilities = kwargs.get('availabilities', None) + self.enable_regional_mdm_account = kwargs.get('enable_regional_mdm_account', None) + self.fill_gap_with_zero = kwargs.get('fill_gap_with_zero', None) + self.metric_filter_pattern = kwargs.get('metric_filter_pattern', None) + self.dimensions = kwargs.get('dimensions', None) + self.is_internal = kwargs.get('is_internal', None) + self.source_mdm_account = kwargs.get('source_mdm_account', None) + self.source_mdm_namespace = kwargs.get('source_mdm_namespace', None) + self.resource_id_dimension_name_override = kwargs.get('resource_id_dimension_name_override', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/metric_specification_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/metric_specification_py3.py new file mode 100644 index 000000000000..34100de77491 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/metric_specification_py3.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricSpecification(Model): + """Description of metrics specification. + + :param name: The name of the metric. + :type name: str + :param display_name: The display name of the metric. + :type display_name: str + :param display_description: The description of the metric. + :type display_description: str + :param unit: Units the metric to be displayed in. + :type unit: str + :param aggregation_type: The aggregation type. + :type aggregation_type: str + :param availabilities: List of availability. + :type availabilities: + list[~azure.mgmt.network.v2018_08_01.models.Availability] + :param enable_regional_mdm_account: Whether regional MDM account enabled. + :type enable_regional_mdm_account: bool + :param fill_gap_with_zero: Whether gaps would be filled with zeros. + :type fill_gap_with_zero: bool + :param metric_filter_pattern: Pattern for the filter of the metric. + :type metric_filter_pattern: str + :param dimensions: List of dimensions. + :type dimensions: list[~azure.mgmt.network.v2018_08_01.models.Dimension] + :param is_internal: Whether the metric is internal. + :type is_internal: bool + :param source_mdm_account: The source MDM account. + :type source_mdm_account: str + :param source_mdm_namespace: The source MDM namespace. + :type source_mdm_namespace: str + :param resource_id_dimension_name_override: The resource Id dimension name + override. + :type resource_id_dimension_name_override: str + """ + + _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'}, + 'availabilities': {'key': 'availabilities', 'type': '[Availability]'}, + 'enable_regional_mdm_account': {'key': 'enableRegionalMdmAccount', 'type': 'bool'}, + 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'}, + 'metric_filter_pattern': {'key': 'metricFilterPattern', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, + 'is_internal': {'key': 'isInternal', 'type': 'bool'}, + 'source_mdm_account': {'key': 'sourceMdmAccount', 'type': 'str'}, + 'source_mdm_namespace': {'key': 'sourceMdmNamespace', 'type': 'str'}, + 'resource_id_dimension_name_override': {'key': 'resourceIdDimensionNameOverride', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, display_description: str=None, unit: str=None, aggregation_type: str=None, availabilities=None, enable_regional_mdm_account: bool=None, fill_gap_with_zero: bool=None, metric_filter_pattern: str=None, dimensions=None, is_internal: bool=None, source_mdm_account: str=None, source_mdm_namespace: str=None, resource_id_dimension_name_override: str=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.availabilities = availabilities + self.enable_regional_mdm_account = enable_regional_mdm_account + self.fill_gap_with_zero = fill_gap_with_zero + self.metric_filter_pattern = metric_filter_pattern + self.dimensions = dimensions + self.is_internal = is_internal + self.source_mdm_account = source_mdm_account + self.source_mdm_namespace = source_mdm_namespace + self.resource_id_dimension_name_override = resource_id_dimension_name_override diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_parameters.py new file mode 100644 index 000000000000..6e10c5624a31 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticParameters(Model): + """Parameters to get network configuration diagnostic. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: Required. List of traffic queries. + :type queries: list[~azure.mgmt.network.v2018_08_01.models.TrafficQuery] + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'queries': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'queries': {'key': 'queries', 'type': '[TrafficQuery]'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.queries = kwargs.get('queries', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_parameters_py3.py new file mode 100644 index 000000000000..222296e26b94 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticParameters(Model): + """Parameters to get network configuration diagnostic. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: Required. List of traffic queries. + :type queries: list[~azure.mgmt.network.v2018_08_01.models.TrafficQuery] + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'queries': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'queries': {'key': 'queries', 'type': '[TrafficQuery]'}, + } + + def __init__(self, *, target_resource_id: str, queries, **kwargs) -> None: + super(NetworkConfigurationDiagnosticParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.queries = queries diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_response.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_response.py new file mode 100644 index 000000000000..04a84f56dce7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_response.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResponse(Model): + """Results of network configuration diagnostic on the target resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar results: List of network configuration diagnostic results. + :vartype results: + list[~azure.mgmt.network.v2018_08_01.models.NetworkConfigurationDiagnosticResult] + """ + + _validation = { + 'results': {'readonly': True}, + } + + _attribute_map = { + 'results': {'key': 'results', 'type': '[NetworkConfigurationDiagnosticResult]'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticResponse, self).__init__(**kwargs) + self.results = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_response_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_response_py3.py new file mode 100644 index 000000000000..0b020aa7db15 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_response_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResponse(Model): + """Results of network configuration diagnostic on the target resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar results: List of network configuration diagnostic results. + :vartype results: + list[~azure.mgmt.network.v2018_08_01.models.NetworkConfigurationDiagnosticResult] + """ + + _validation = { + 'results': {'readonly': True}, + } + + _attribute_map = { + 'results': {'key': 'results', 'type': '[NetworkConfigurationDiagnosticResult]'}, + } + + def __init__(self, **kwargs) -> None: + super(NetworkConfigurationDiagnosticResponse, self).__init__(**kwargs) + self.results = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_result.py new file mode 100644 index 000000000000..7b8bc0ac12db --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResult(Model): + """Network configuration diagnostic result corresponded to provided traffic + query. + + :param traffic_query: + :type traffic_query: ~azure.mgmt.network.v2018_08_01.models.TrafficQuery + :param network_security_group_result: + :type network_security_group_result: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroupResult + """ + + _attribute_map = { + 'traffic_query': {'key': 'trafficQuery', 'type': 'TrafficQuery'}, + 'network_security_group_result': {'key': 'networkSecurityGroupResult', 'type': 'NetworkSecurityGroupResult'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticResult, self).__init__(**kwargs) + self.traffic_query = kwargs.get('traffic_query', None) + self.network_security_group_result = kwargs.get('network_security_group_result', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_result_py3.py new file mode 100644 index 000000000000..e88307a490e3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_configuration_diagnostic_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkConfigurationDiagnosticResult(Model): + """Network configuration diagnostic result corresponded to provided traffic + query. + + :param traffic_query: + :type traffic_query: ~azure.mgmt.network.v2018_08_01.models.TrafficQuery + :param network_security_group_result: + :type network_security_group_result: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroupResult + """ + + _attribute_map = { + 'traffic_query': {'key': 'trafficQuery', 'type': 'TrafficQuery'}, + 'network_security_group_result': {'key': 'networkSecurityGroupResult', 'type': 'NetworkSecurityGroupResult'}, + } + + def __init__(self, *, traffic_query=None, network_security_group_result=None, **kwargs) -> None: + super(NetworkConfigurationDiagnosticResult, self).__init__(**kwargs) + self.traffic_query = traffic_query + self.network_security_group_result = network_security_group_result diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface.py new file mode 100644 index 000000000000..0c17094c3751 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface.py @@ -0,0 +1,120 @@ +# 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 .resource import Resource + + +class NetworkInterface(Resource): + """A network interface in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_machine: The reference of a virtual machine. + :type virtual_machine: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup + :ivar interface_endpoint: A reference to the interface endpoint to which + the network interface is linked. + :vartype interface_endpoint: + ~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint + :param ip_configurations: A list of IPConfigurations of the network + interface. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration] + :param tap_configurations: A list of TapConfigurations of the network + interface. + :type tap_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration] + :param dns_settings: The DNS settings in network interface. + :type dns_settings: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceDnsSettings + :param mac_address: The MAC address of the network interface. + :type mac_address: str + :param primary: Gets whether this is a primary network interface on a + virtual machine. + :type primary: bool + :param enable_accelerated_networking: If the network interface is + accelerated networking enabled. + :type enable_accelerated_networking: bool + :param enable_ip_forwarding: Indicates whether IP forwarding is enabled on + this network interface. + :type enable_ip_forwarding: bool + :ivar hosted_workloads: A list of references to linked BareMetal resources + :vartype hosted_workloads: list[str] + :param resource_guid: The resource GUID property of the network interface + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'interface_endpoint': {'readonly': True}, + 'hosted_workloads': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_machine': {'key': 'properties.virtualMachine', 'type': 'SubResource'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'interface_endpoint': {'key': 'properties.interfaceEndpoint', 'type': 'InterfaceEndpoint'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'tap_configurations': {'key': 'properties.tapConfigurations', 'type': '[NetworkInterfaceTapConfiguration]'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'NetworkInterfaceDnsSettings'}, + 'mac_address': {'key': 'properties.macAddress', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + 'hosted_workloads': {'key': 'properties.hostedWorkloads', 'type': '[str]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterface, self).__init__(**kwargs) + self.virtual_machine = kwargs.get('virtual_machine', None) + self.network_security_group = kwargs.get('network_security_group', None) + self.interface_endpoint = None + self.ip_configurations = kwargs.get('ip_configurations', None) + self.tap_configurations = kwargs.get('tap_configurations', None) + self.dns_settings = kwargs.get('dns_settings', None) + self.mac_address = kwargs.get('mac_address', None) + self.primary = kwargs.get('primary', None) + self.enable_accelerated_networking = kwargs.get('enable_accelerated_networking', None) + self.enable_ip_forwarding = kwargs.get('enable_ip_forwarding', None) + self.hosted_workloads = None + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_association.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_association.py new file mode 100644 index 000000000000..a75f6dec4b99 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_association.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkInterfaceAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Network interface ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = kwargs.get('security_rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_association_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_association_py3.py new file mode 100644 index 000000000000..d11d251b72a9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_association_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkInterfaceAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Network interface ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, *, security_rules=None, **kwargs) -> None: + super(NetworkInterfaceAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = security_rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_dns_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_dns_settings.py new file mode 100644 index 000000000000..b6ee0ff40d51 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_dns_settings.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkInterfaceDnsSettings(Model): + """DNS settings of a network interface. + + :param dns_servers: List of DNS servers IP addresses. Use + 'AzureProvidedDNS' to switch to azure provided DNS resolution. + 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the + only value in dnsServers collection. + :type dns_servers: list[str] + :param applied_dns_servers: If the VM that uses this NIC is part of an + Availability Set, then this list will have the union of all DNS servers + from all NICs that are part of the Availability Set. This property is what + is configured on each of those VMs. + :type applied_dns_servers: list[str] + :param internal_dns_name_label: Relative DNS name for this NIC used for + internal communications between VMs in the same virtual network. + :type internal_dns_name_label: str + :param internal_fqdn: Fully qualified DNS name supporting internal + communications between VMs in the same virtual network. + :type internal_fqdn: str + :param internal_domain_name_suffix: Even if internalDnsNameLabel is not + specified, a DNS entry is created for the primary NIC of the VM. This DNS + name can be constructed by concatenating the VM name with the value of + internalDomainNameSuffix. + :type internal_domain_name_suffix: str + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + 'applied_dns_servers': {'key': 'appliedDnsServers', 'type': '[str]'}, + 'internal_dns_name_label': {'key': 'internalDnsNameLabel', 'type': 'str'}, + 'internal_fqdn': {'key': 'internalFqdn', 'type': 'str'}, + 'internal_domain_name_suffix': {'key': 'internalDomainNameSuffix', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceDnsSettings, self).__init__(**kwargs) + self.dns_servers = kwargs.get('dns_servers', None) + self.applied_dns_servers = kwargs.get('applied_dns_servers', None) + self.internal_dns_name_label = kwargs.get('internal_dns_name_label', None) + self.internal_fqdn = kwargs.get('internal_fqdn', None) + self.internal_domain_name_suffix = kwargs.get('internal_domain_name_suffix', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_dns_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_dns_settings_py3.py new file mode 100644 index 000000000000..ccdcc937def8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_dns_settings_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkInterfaceDnsSettings(Model): + """DNS settings of a network interface. + + :param dns_servers: List of DNS servers IP addresses. Use + 'AzureProvidedDNS' to switch to azure provided DNS resolution. + 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the + only value in dnsServers collection. + :type dns_servers: list[str] + :param applied_dns_servers: If the VM that uses this NIC is part of an + Availability Set, then this list will have the union of all DNS servers + from all NICs that are part of the Availability Set. This property is what + is configured on each of those VMs. + :type applied_dns_servers: list[str] + :param internal_dns_name_label: Relative DNS name for this NIC used for + internal communications between VMs in the same virtual network. + :type internal_dns_name_label: str + :param internal_fqdn: Fully qualified DNS name supporting internal + communications between VMs in the same virtual network. + :type internal_fqdn: str + :param internal_domain_name_suffix: Even if internalDnsNameLabel is not + specified, a DNS entry is created for the primary NIC of the VM. This DNS + name can be constructed by concatenating the VM name with the value of + internalDomainNameSuffix. + :type internal_domain_name_suffix: str + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + 'applied_dns_servers': {'key': 'appliedDnsServers', 'type': '[str]'}, + 'internal_dns_name_label': {'key': 'internalDnsNameLabel', 'type': 'str'}, + 'internal_fqdn': {'key': 'internalFqdn', 'type': 'str'}, + 'internal_domain_name_suffix': {'key': 'internalDomainNameSuffix', 'type': 'str'}, + } + + def __init__(self, *, dns_servers=None, applied_dns_servers=None, internal_dns_name_label: str=None, internal_fqdn: str=None, internal_domain_name_suffix: str=None, **kwargs) -> None: + super(NetworkInterfaceDnsSettings, self).__init__(**kwargs) + self.dns_servers = dns_servers + self.applied_dns_servers = applied_dns_servers + self.internal_dns_name_label = internal_dns_name_label + self.internal_fqdn = internal_fqdn + self.internal_domain_name_suffix = internal_domain_name_suffix diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration.py new file mode 100644 index 000000000000..1e95a2fe4100 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration.py @@ -0,0 +1,105 @@ +# 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 .sub_resource import SubResource + + +class NetworkInterfaceIPConfiguration(SubResource): + """IPConfiguration in a network interface. + + :param id: Resource ID. + :type id: str + :param virtual_network_taps: The reference to Virtual Network Taps. + :type virtual_network_taps: + list[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap] + :param application_gateway_backend_address_pools: The reference of + ApplicationGatewayBackendAddressPool resource. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendAddressPool] + :param load_balancer_backend_address_pools: The reference of + LoadBalancerBackendAddressPool resource. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.BackendAddressPool] + :param load_balancer_inbound_nat_rules: A list of references of + LoadBalancerInboundNatRules. + :type load_balancer_inbound_nat_rules: + list[~azure.mgmt.network.v2018_08_01.models.InboundNatRule] + :param private_ip_address: Private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: Defines how a private IP address is + assigned. Possible values are: 'Static' and 'Dynamic'. Possible values + include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param private_ip_address_version: Available from Api-Version 2016-03-30 + onwards, it represents whether the specific ipconfiguration is IPv4 or + IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. + Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2018_08_01.models.IPVersion + :param subnet: Subnet bound to the IP configuration. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :param primary: Gets whether this is a primary customer address on the + network interface. + :type primary: bool + :param public_ip_address: Public IP address bound to the IP configuration. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress + :param application_security_groups: Application security groups in which + the IP configuration is included. + :type application_security_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + :param provisioning_state: The provisioning state of the network interface + IP configuration. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'virtual_network_taps': {'key': 'properties.virtualNetworkTaps', 'type': '[VirtualNetworkTap]'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancer_inbound_nat_rules': {'key': 'properties.loadBalancerInboundNatRules', 'type': '[InboundNatRule]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceIPConfiguration, self).__init__(**kwargs) + self.virtual_network_taps = kwargs.get('virtual_network_taps', None) + self.application_gateway_backend_address_pools = kwargs.get('application_gateway_backend_address_pools', None) + self.load_balancer_backend_address_pools = kwargs.get('load_balancer_backend_address_pools', None) + self.load_balancer_inbound_nat_rules = kwargs.get('load_balancer_inbound_nat_rules', None) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.private_ip_address_version = kwargs.get('private_ip_address_version', None) + self.subnet = kwargs.get('subnet', None) + self.primary = kwargs.get('primary', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.application_security_groups = kwargs.get('application_security_groups', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration_paged.py new file mode 100644 index 000000000000..4571aebf772a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkInterfaceIPConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkInterfaceIPConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkInterfaceIPConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkInterfaceIPConfigurationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration_py3.py new file mode 100644 index 000000000000..f1fd7706aa8a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_ip_configuration_py3.py @@ -0,0 +1,105 @@ +# 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 .sub_resource_py3 import SubResource + + +class NetworkInterfaceIPConfiguration(SubResource): + """IPConfiguration in a network interface. + + :param id: Resource ID. + :type id: str + :param virtual_network_taps: The reference to Virtual Network Taps. + :type virtual_network_taps: + list[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap] + :param application_gateway_backend_address_pools: The reference of + ApplicationGatewayBackendAddressPool resource. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendAddressPool] + :param load_balancer_backend_address_pools: The reference of + LoadBalancerBackendAddressPool resource. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.network.v2018_08_01.models.BackendAddressPool] + :param load_balancer_inbound_nat_rules: A list of references of + LoadBalancerInboundNatRules. + :type load_balancer_inbound_nat_rules: + list[~azure.mgmt.network.v2018_08_01.models.InboundNatRule] + :param private_ip_address: Private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: Defines how a private IP address is + assigned. Possible values are: 'Static' and 'Dynamic'. Possible values + include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param private_ip_address_version: Available from Api-Version 2016-03-30 + onwards, it represents whether the specific ipconfiguration is IPv4 or + IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. + Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2018_08_01.models.IPVersion + :param subnet: Subnet bound to the IP configuration. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.Subnet + :param primary: Gets whether this is a primary customer address on the + network interface. + :type primary: bool + :param public_ip_address: Public IP address bound to the IP configuration. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress + :param application_security_groups: Application security groups in which + the IP configuration is included. + :type application_security_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + :param provisioning_state: The provisioning state of the network interface + IP configuration. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'virtual_network_taps': {'key': 'properties.virtualNetworkTaps', 'type': '[VirtualNetworkTap]'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancer_inbound_nat_rules': {'key': 'properties.loadBalancerInboundNatRules', 'type': '[InboundNatRule]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, virtual_network_taps=None, application_gateway_backend_address_pools=None, load_balancer_backend_address_pools=None, load_balancer_inbound_nat_rules=None, private_ip_address: str=None, private_ip_allocation_method=None, private_ip_address_version=None, subnet=None, primary: bool=None, public_ip_address=None, application_security_groups=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(NetworkInterfaceIPConfiguration, self).__init__(id=id, **kwargs) + self.virtual_network_taps = virtual_network_taps + self.application_gateway_backend_address_pools = application_gateway_backend_address_pools + self.load_balancer_backend_address_pools = load_balancer_backend_address_pools + self.load_balancer_inbound_nat_rules = load_balancer_inbound_nat_rules + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.private_ip_address_version = private_ip_address_version + self.subnet = subnet + self.primary = primary + self.public_ip_address = public_ip_address + self.application_security_groups = application_security_groups + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_paged.py new file mode 100644 index 000000000000..b4e3f7645fa0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkInterfacePaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkInterface ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkInterface]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkInterfacePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_py3.py new file mode 100644 index 000000000000..cb7f1e39b06f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_py3.py @@ -0,0 +1,120 @@ +# 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 .resource_py3 import Resource + + +class NetworkInterface(Resource): + """A network interface in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_machine: The reference of a virtual machine. + :type virtual_machine: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup + :ivar interface_endpoint: A reference to the interface endpoint to which + the network interface is linked. + :vartype interface_endpoint: + ~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint + :param ip_configurations: A list of IPConfigurations of the network + interface. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration] + :param tap_configurations: A list of TapConfigurations of the network + interface. + :type tap_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration] + :param dns_settings: The DNS settings in network interface. + :type dns_settings: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceDnsSettings + :param mac_address: The MAC address of the network interface. + :type mac_address: str + :param primary: Gets whether this is a primary network interface on a + virtual machine. + :type primary: bool + :param enable_accelerated_networking: If the network interface is + accelerated networking enabled. + :type enable_accelerated_networking: bool + :param enable_ip_forwarding: Indicates whether IP forwarding is enabled on + this network interface. + :type enable_ip_forwarding: bool + :ivar hosted_workloads: A list of references to linked BareMetal resources + :vartype hosted_workloads: list[str] + :param resource_guid: The resource GUID property of the network interface + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'interface_endpoint': {'readonly': True}, + 'hosted_workloads': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_machine': {'key': 'properties.virtualMachine', 'type': 'SubResource'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'interface_endpoint': {'key': 'properties.interfaceEndpoint', 'type': 'InterfaceEndpoint'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'tap_configurations': {'key': 'properties.tapConfigurations', 'type': '[NetworkInterfaceTapConfiguration]'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'NetworkInterfaceDnsSettings'}, + 'mac_address': {'key': 'properties.macAddress', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + 'hosted_workloads': {'key': 'properties.hostedWorkloads', 'type': '[str]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_machine=None, network_security_group=None, ip_configurations=None, tap_configurations=None, dns_settings=None, mac_address: str=None, primary: bool=None, enable_accelerated_networking: bool=None, enable_ip_forwarding: bool=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(NetworkInterface, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_machine = virtual_machine + self.network_security_group = network_security_group + self.interface_endpoint = None + self.ip_configurations = ip_configurations + self.tap_configurations = tap_configurations + self.dns_settings = dns_settings + self.mac_address = mac_address + self.primary = primary + self.enable_accelerated_networking = enable_accelerated_networking + self.enable_ip_forwarding = enable_ip_forwarding + self.hosted_workloads = None + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration.py new file mode 100644 index 000000000000..a2dcf35f26aa --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration.py @@ -0,0 +1,61 @@ +# 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 .sub_resource import SubResource + + +class NetworkInterfaceTapConfiguration(SubResource): + """Tap configuration in a Network Interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param virtual_network_tap: The reference of the Virtual Network Tap + resource. + :type virtual_network_tap: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap + :ivar provisioning_state: The provisioning state of the network interface + tap configuration. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :ivar type: Sub Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'virtual_network_tap': {'key': 'properties.virtualNetworkTap', 'type': 'VirtualNetworkTap'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceTapConfiguration, self).__init__(**kwargs) + self.virtual_network_tap = kwargs.get('virtual_network_tap', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) + self.type = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration_paged.py new file mode 100644 index 000000000000..155db4f86bdd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkInterfaceTapConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkInterfaceTapConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkInterfaceTapConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkInterfaceTapConfigurationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration_py3.py new file mode 100644 index 000000000000..17fc8ee4a1db --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_interface_tap_configuration_py3.py @@ -0,0 +1,61 @@ +# 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 .sub_resource_py3 import SubResource + + +class NetworkInterfaceTapConfiguration(SubResource): + """Tap configuration in a Network Interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param virtual_network_tap: The reference of the Virtual Network Tap + resource. + :type virtual_network_tap: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap + :ivar provisioning_state: The provisioning state of the network interface + tap configuration. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :ivar type: Sub Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'virtual_network_tap': {'key': 'properties.virtualNetworkTap', 'type': 'VirtualNetworkTap'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, virtual_network_tap=None, name: str=None, etag: str=None, **kwargs) -> None: + super(NetworkInterfaceTapConfiguration, self).__init__(id=id, **kwargs) + self.virtual_network_tap = virtual_network_tap + self.provisioning_state = None + self.name = name + self.etag = etag + self.type = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_management_client_enums.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_management_client_enums.py new file mode 100644 index 000000000000..e443490e1126 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_management_client_enums.py @@ -0,0 +1,671 @@ +# 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 enum import Enum + + +class IPAllocationMethod(str, Enum): + + static = "Static" + dynamic = "Dynamic" + + +class SecurityRuleProtocol(str, Enum): + + tcp = "Tcp" + udp = "Udp" + asterisk = "*" + + +class SecurityRuleAccess(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class SecurityRuleDirection(str, Enum): + + inbound = "Inbound" + outbound = "Outbound" + + +class RouteNextHopType(str, Enum): + + virtual_network_gateway = "VirtualNetworkGateway" + vnet_local = "VnetLocal" + internet = "Internet" + virtual_appliance = "VirtualAppliance" + none = "None" + + +class PublicIPAddressSkuName(str, Enum): + + basic = "Basic" + standard = "Standard" + + +class IPVersion(str, Enum): + + ipv4 = "IPv4" + ipv6 = "IPv6" + + +class TransportProtocol(str, Enum): + + udp = "Udp" + tcp = "Tcp" + all = "All" + + +class ApplicationGatewayProtocol(str, Enum): + + http = "Http" + https = "Https" + + +class ApplicationGatewayCookieBasedAffinity(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" + + +class ApplicationGatewayBackendHealthServerHealth(str, Enum): + + unknown = "Unknown" + up = "Up" + down = "Down" + partial = "Partial" + draining = "Draining" + + +class ApplicationGatewaySkuName(str, Enum): + + standard_small = "Standard_Small" + standard_medium = "Standard_Medium" + standard_large = "Standard_Large" + waf_medium = "WAF_Medium" + waf_large = "WAF_Large" + standard_v2 = "Standard_v2" + waf_v2 = "WAF_v2" + + +class ApplicationGatewayTier(str, Enum): + + standard = "Standard" + waf = "WAF" + standard_v2 = "Standard_v2" + waf_v2 = "WAF_v2" + + +class ApplicationGatewaySslProtocol(str, Enum): + + tl_sv1_0 = "TLSv1_0" + tl_sv1_1 = "TLSv1_1" + tl_sv1_2 = "TLSv1_2" + + +class ApplicationGatewaySslPolicyType(str, Enum): + + predefined = "Predefined" + custom = "Custom" + + +class ApplicationGatewaySslPolicyName(str, Enum): + + app_gw_ssl_policy20150501 = "AppGwSslPolicy20150501" + app_gw_ssl_policy20170401 = "AppGwSslPolicy20170401" + app_gw_ssl_policy20170401_s = "AppGwSslPolicy20170401S" + + +class ApplicationGatewaySslCipherSuite(str, Enum): + + tls_ecdhe_rsa_with_aes_256_cbc_sha384 = "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384" + tls_ecdhe_rsa_with_aes_128_cbc_sha256 = "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + tls_ecdhe_rsa_with_aes_256_cbc_sha = "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA" + tls_ecdhe_rsa_with_aes_128_cbc_sha = "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA" + tls_dhe_rsa_with_aes_256_gcm_sha384 = "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384" + tls_dhe_rsa_with_aes_128_gcm_sha256 = "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" + tls_dhe_rsa_with_aes_256_cbc_sha = "TLS_DHE_RSA_WITH_AES_256_CBC_SHA" + tls_dhe_rsa_with_aes_128_cbc_sha = "TLS_DHE_RSA_WITH_AES_128_CBC_SHA" + tls_rsa_with_aes_256_gcm_sha384 = "TLS_RSA_WITH_AES_256_GCM_SHA384" + tls_rsa_with_aes_128_gcm_sha256 = "TLS_RSA_WITH_AES_128_GCM_SHA256" + tls_rsa_with_aes_256_cbc_sha256 = "TLS_RSA_WITH_AES_256_CBC_SHA256" + tls_rsa_with_aes_128_cbc_sha256 = "TLS_RSA_WITH_AES_128_CBC_SHA256" + tls_rsa_with_aes_256_cbc_sha = "TLS_RSA_WITH_AES_256_CBC_SHA" + tls_rsa_with_aes_128_cbc_sha = "TLS_RSA_WITH_AES_128_CBC_SHA" + tls_ecdhe_ecdsa_with_aes_256_gcm_sha384 = "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384" + tls_ecdhe_ecdsa_with_aes_128_gcm_sha256 = "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256" + tls_ecdhe_ecdsa_with_aes_256_cbc_sha384 = "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384" + tls_ecdhe_ecdsa_with_aes_128_cbc_sha256 = "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256" + tls_ecdhe_ecdsa_with_aes_256_cbc_sha = "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" + tls_ecdhe_ecdsa_with_aes_128_cbc_sha = "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA" + tls_dhe_dss_with_aes_256_cbc_sha256 = "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256" + tls_dhe_dss_with_aes_128_cbc_sha256 = "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256" + tls_dhe_dss_with_aes_256_cbc_sha = "TLS_DHE_DSS_WITH_AES_256_CBC_SHA" + tls_dhe_dss_with_aes_128_cbc_sha = "TLS_DHE_DSS_WITH_AES_128_CBC_SHA" + tls_rsa_with_3_des_ede_cbc_sha = "TLS_RSA_WITH_3DES_EDE_CBC_SHA" + + +class ApplicationGatewayRequestRoutingRuleType(str, Enum): + + basic = "Basic" + path_based_routing = "PathBasedRouting" + + +class ApplicationGatewayRedirectType(str, Enum): + + permanent = "Permanent" + found = "Found" + see_other = "SeeOther" + temporary = "Temporary" + + +class ApplicationGatewayOperationalState(str, Enum): + + stopped = "Stopped" + starting = "Starting" + running = "Running" + stopping = "Stopping" + + +class ApplicationGatewayFirewallMode(str, Enum): + + detection = "Detection" + prevention = "Prevention" + + +class ProvisioningState(str, Enum): + + succeeded = "Succeeded" + updating = "Updating" + deleting = "Deleting" + failed = "Failed" + + +class AzureFirewallRCActionType(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class AzureFirewallApplicationRuleProtocolType(str, Enum): + + http = "Http" + https = "Https" + + +class AzureFirewallNatRCActionType(str, Enum): + + snat = "Snat" + dnat = "Dnat" + + +class AzureFirewallNetworkRuleProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + any = "Any" + + +class AuthorizationUseStatus(str, Enum): + + available = "Available" + in_use = "InUse" + + +class ExpressRouteCircuitPeeringAdvertisedPublicPrefixState(str, Enum): + + not_configured = "NotConfigured" + configuring = "Configuring" + configured = "Configured" + validation_needed = "ValidationNeeded" + + +class Access(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class ExpressRoutePeeringType(str, Enum): + + azure_public_peering = "AzurePublicPeering" + azure_private_peering = "AzurePrivatePeering" + microsoft_peering = "MicrosoftPeering" + + +class ExpressRoutePeeringState(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class CircuitConnectionStatus(str, Enum): + + connected = "Connected" + connecting = "Connecting" + disconnected = "Disconnected" + + +class ExpressRouteCircuitPeeringState(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class ExpressRouteCircuitSkuTier(str, Enum): + + standard = "Standard" + premium = "Premium" + + +class ExpressRouteCircuitSkuFamily(str, Enum): + + unlimited_data = "UnlimitedData" + metered_data = "MeteredData" + + +class ServiceProviderProvisioningState(str, Enum): + + not_provisioned = "NotProvisioned" + provisioning = "Provisioning" + provisioned = "Provisioned" + deprovisioning = "Deprovisioning" + + +class LoadBalancerSkuName(str, Enum): + + basic = "Basic" + standard = "Standard" + + +class LoadDistribution(str, Enum): + + default = "Default" + source_ip = "SourceIP" + source_ip_protocol = "SourceIPProtocol" + + +class ProbeProtocol(str, Enum): + + http = "Http" + tcp = "Tcp" + https = "Https" + + +class NetworkOperationStatus(str, Enum): + + in_progress = "InProgress" + succeeded = "Succeeded" + failed = "Failed" + + +class EffectiveSecurityRuleProtocol(str, Enum): + + tcp = "Tcp" + udp = "Udp" + all = "All" + + +class EffectiveRouteSource(str, Enum): + + unknown = "Unknown" + user = "User" + virtual_network_gateway = "VirtualNetworkGateway" + default = "Default" + + +class EffectiveRouteState(str, Enum): + + active = "Active" + invalid = "Invalid" + + +class AssociationType(str, Enum): + + associated = "Associated" + contains = "Contains" + + +class Direction(str, Enum): + + inbound = "Inbound" + outbound = "Outbound" + + +class IpFlowProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + + +class NextHopType(str, Enum): + + internet = "Internet" + virtual_appliance = "VirtualAppliance" + virtual_network_gateway = "VirtualNetworkGateway" + vnet_local = "VnetLocal" + hyper_net_gateway = "HyperNetGateway" + none = "None" + + +class PcProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + any = "Any" + + +class PcStatus(str, Enum): + + not_started = "NotStarted" + running = "Running" + stopped = "Stopped" + error = "Error" + unknown = "Unknown" + + +class PcError(str, Enum): + + internal_error = "InternalError" + agent_stopped = "AgentStopped" + capture_failed = "CaptureFailed" + local_file_failed = "LocalFileFailed" + storage_failed = "StorageFailed" + + +class Protocol(str, Enum): + + tcp = "Tcp" + http = "Http" + https = "Https" + icmp = "Icmp" + + +class HTTPMethod(str, Enum): + + get = "Get" + + +class Origin(str, Enum): + + local = "Local" + inbound = "Inbound" + outbound = "Outbound" + + +class Severity(str, Enum): + + error = "Error" + warning = "Warning" + + +class IssueType(str, Enum): + + unknown = "Unknown" + agent_stopped = "AgentStopped" + guest_firewall = "GuestFirewall" + dns_resolution = "DnsResolution" + socket_bind = "SocketBind" + network_security_rule = "NetworkSecurityRule" + user_defined_route = "UserDefinedRoute" + port_throttled = "PortThrottled" + platform = "Platform" + + +class ConnectionStatus(str, Enum): + + unknown = "Unknown" + connected = "Connected" + disconnected = "Disconnected" + degraded = "Degraded" + + +class ConnectionMonitorSourceStatus(str, Enum): + + uknown = "Uknown" + active = "Active" + inactive = "Inactive" + + +class ConnectionState(str, Enum): + + reachable = "Reachable" + unreachable = "Unreachable" + unknown = "Unknown" + + +class EvaluationState(str, Enum): + + not_started = "NotStarted" + in_progress = "InProgress" + completed = "Completed" + + +class PublicIPPrefixSkuName(str, Enum): + + standard = "Standard" + + +class VirtualNetworkPeeringState(str, Enum): + + initiated = "Initiated" + connected = "Connected" + disconnected = "Disconnected" + + +class VirtualNetworkGatewayType(str, Enum): + + vpn = "Vpn" + express_route = "ExpressRoute" + + +class VpnType(str, Enum): + + policy_based = "PolicyBased" + route_based = "RouteBased" + + +class VirtualNetworkGatewaySkuName(str, Enum): + + basic = "Basic" + high_performance = "HighPerformance" + standard = "Standard" + ultra_performance = "UltraPerformance" + vpn_gw1 = "VpnGw1" + vpn_gw2 = "VpnGw2" + vpn_gw3 = "VpnGw3" + vpn_gw1_az = "VpnGw1AZ" + vpn_gw2_az = "VpnGw2AZ" + vpn_gw3_az = "VpnGw3AZ" + er_gw1_az = "ErGw1AZ" + er_gw2_az = "ErGw2AZ" + er_gw3_az = "ErGw3AZ" + + +class VirtualNetworkGatewaySkuTier(str, Enum): + + basic = "Basic" + high_performance = "HighPerformance" + standard = "Standard" + ultra_performance = "UltraPerformance" + vpn_gw1 = "VpnGw1" + vpn_gw2 = "VpnGw2" + vpn_gw3 = "VpnGw3" + vpn_gw1_az = "VpnGw1AZ" + vpn_gw2_az = "VpnGw2AZ" + vpn_gw3_az = "VpnGw3AZ" + er_gw1_az = "ErGw1AZ" + er_gw2_az = "ErGw2AZ" + er_gw3_az = "ErGw3AZ" + + +class VpnClientProtocol(str, Enum): + + ike_v2 = "IkeV2" + sstp = "SSTP" + open_vpn = "OpenVPN" + + +class IpsecEncryption(str, Enum): + + none = "None" + des = "DES" + des3 = "DES3" + aes128 = "AES128" + aes192 = "AES192" + aes256 = "AES256" + gcmaes128 = "GCMAES128" + gcmaes192 = "GCMAES192" + gcmaes256 = "GCMAES256" + + +class IpsecIntegrity(str, Enum): + + md5 = "MD5" + sha1 = "SHA1" + sha256 = "SHA256" + gcmaes128 = "GCMAES128" + gcmaes192 = "GCMAES192" + gcmaes256 = "GCMAES256" + + +class IkeEncryption(str, Enum): + + des = "DES" + des3 = "DES3" + aes128 = "AES128" + aes192 = "AES192" + aes256 = "AES256" + gcmaes256 = "GCMAES256" + gcmaes128 = "GCMAES128" + + +class IkeIntegrity(str, Enum): + + md5 = "MD5" + sha1 = "SHA1" + sha256 = "SHA256" + sha384 = "SHA384" + gcmaes256 = "GCMAES256" + gcmaes128 = "GCMAES128" + + +class DhGroup(str, Enum): + + none = "None" + dh_group1 = "DHGroup1" + dh_group2 = "DHGroup2" + dh_group14 = "DHGroup14" + dh_group2048 = "DHGroup2048" + ecp256 = "ECP256" + ecp384 = "ECP384" + dh_group24 = "DHGroup24" + + +class PfsGroup(str, Enum): + + none = "None" + pfs1 = "PFS1" + pfs2 = "PFS2" + pfs2048 = "PFS2048" + ecp256 = "ECP256" + ecp384 = "ECP384" + pfs24 = "PFS24" + pfs14 = "PFS14" + pfsmm = "PFSMM" + + +class BgpPeerState(str, Enum): + + unknown = "Unknown" + stopped = "Stopped" + idle = "Idle" + connecting = "Connecting" + connected = "Connected" + + +class ProcessorArchitecture(str, Enum): + + amd64 = "Amd64" + x86 = "X86" + + +class AuthenticationMethod(str, Enum): + + eaptls = "EAPTLS" + eapmscha_pv2 = "EAPMSCHAPv2" + + +class VirtualNetworkGatewayConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class VirtualNetworkGatewayConnectionType(str, Enum): + + ipsec = "IPsec" + vnet2_vnet = "Vnet2Vnet" + express_route = "ExpressRoute" + vpn_client = "VPNClient" + + +class VirtualNetworkGatewayConnectionProtocol(str, Enum): + + ik_ev2 = "IKEv2" + ik_ev1 = "IKEv1" + + +class OfficeTrafficCategory(str, Enum): + + optimize = "Optimize" + optimize_and_allow = "OptimizeAndAllow" + all = "All" + none = "None" + + +class VpnGatewayTunnelingProtocol(str, Enum): + + ike_v2 = "IkeV2" + open_vpn = "OpenVPN" + + +class VpnConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class VirtualWanSecurityProviderType(str, Enum): + + external = "External" + native = "Native" + + +class TunnelConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class HubVirtualNetworkConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile.py new file mode 100644 index 000000000000..2cb8ec273245 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile.py @@ -0,0 +1,75 @@ +# 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 .resource import Resource + + +class NetworkProfile(Resource): + """Network profile resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param container_network_interfaces: List of child container network + interfaces. + :type container_network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterface] + :param container_network_interface_configurations: List of chid container + network interface configurations. + :type container_network_interface_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterfaceConfiguration] + :ivar resource_guid: The resource GUID property of the network interface + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'container_network_interfaces': {'key': 'properties.containerNetworkInterfaces', 'type': '[ContainerNetworkInterface]'}, + 'container_network_interface_configurations': {'key': 'properties.containerNetworkInterfaceConfigurations', 'type': '[ContainerNetworkInterfaceConfiguration]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkProfile, self).__init__(**kwargs) + self.container_network_interfaces = kwargs.get('container_network_interfaces', None) + self.container_network_interface_configurations = kwargs.get('container_network_interface_configurations', None) + self.resource_guid = None + self.provisioning_state = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile_paged.py new file mode 100644 index 000000000000..1e95ba3a03c4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkProfilePaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkProfile ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkProfile]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkProfilePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile_py3.py new file mode 100644 index 000000000000..e20879cd92e3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_profile_py3.py @@ -0,0 +1,75 @@ +# 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 .resource_py3 import Resource + + +class NetworkProfile(Resource): + """Network profile resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param container_network_interfaces: List of child container network + interfaces. + :type container_network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterface] + :param container_network_interface_configurations: List of chid container + network interface configurations. + :type container_network_interface_configurations: + list[~azure.mgmt.network.v2018_08_01.models.ContainerNetworkInterfaceConfiguration] + :ivar resource_guid: The resource GUID property of the network interface + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the resource. + :vartype provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'container_network_interfaces': {'key': 'properties.containerNetworkInterfaces', 'type': '[ContainerNetworkInterface]'}, + 'container_network_interface_configurations': {'key': 'properties.containerNetworkInterfaceConfigurations', 'type': '[ContainerNetworkInterfaceConfiguration]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, container_network_interfaces=None, container_network_interface_configurations=None, etag: str=None, **kwargs) -> None: + super(NetworkProfile, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.container_network_interfaces = container_network_interfaces + self.container_network_interface_configurations = container_network_interface_configurations + self.resource_guid = None + self.provisioning_state = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group.py new file mode 100644 index 000000000000..4791dd207792 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group.py @@ -0,0 +1,86 @@ +# 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 .resource import Resource + + +class NetworkSecurityGroup(Resource): + """NetworkSecurityGroup resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param security_rules: A collection of security rules of the network + security group. + :type security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + :param default_security_rules: The default security rules of network + security group. + :type default_security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + :ivar network_interfaces: A collection of references to network + interfaces. + :vartype network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_08_01.models.Subnet] + :param resource_guid: The resource GUID property of the network security + group resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'subnets': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'security_rules': {'key': 'properties.securityRules', 'type': '[SecurityRule]'}, + 'default_security_rules': {'key': 'properties.defaultSecurityRules', 'type': '[SecurityRule]'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityGroup, self).__init__(**kwargs) + self.security_rules = kwargs.get('security_rules', None) + self.default_security_rules = kwargs.get('default_security_rules', None) + self.network_interfaces = None + self.subnets = None + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_paged.py new file mode 100644 index 000000000000..1f70c4130af7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkSecurityGroupPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkSecurityGroup ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkSecurityGroup]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkSecurityGroupPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_py3.py new file mode 100644 index 000000000000..540fd7d9fb08 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_py3.py @@ -0,0 +1,86 @@ +# 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 .resource_py3 import Resource + + +class NetworkSecurityGroup(Resource): + """NetworkSecurityGroup resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param security_rules: A collection of security rules of the network + security group. + :type security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + :param default_security_rules: The default security rules of network + security group. + :type default_security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + :ivar network_interfaces: A collection of references to network + interfaces. + :vartype network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_08_01.models.Subnet] + :param resource_guid: The resource GUID property of the network security + group resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'subnets': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'security_rules': {'key': 'properties.securityRules', 'type': '[SecurityRule]'}, + 'default_security_rules': {'key': 'properties.defaultSecurityRules', 'type': '[SecurityRule]'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, security_rules=None, default_security_rules=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(NetworkSecurityGroup, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.security_rules = security_rules + self.default_security_rules = default_security_rules + self.network_interfaces = None + self.subnets = None + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_result.py new file mode 100644 index 000000000000..9bcd86b7b1ee --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_result.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityGroupResult(Model): + """Network configuration diagnostic result corresponded provided traffic + query. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param security_rule_access_result: The network traffic is allowed or + denied. Possible values are 'Allow' and 'Deny'. Possible values include: + 'Allow', 'Deny' + :type security_rule_access_result: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleAccess + :ivar evaluated_network_security_groups: List of results network security + groups diagnostic. + :vartype evaluated_network_security_groups: + list[~azure.mgmt.network.v2018_08_01.models.EvaluatedNetworkSecurityGroup] + """ + + _validation = { + 'evaluated_network_security_groups': {'readonly': True}, + } + + _attribute_map = { + 'security_rule_access_result': {'key': 'securityRuleAccessResult', 'type': 'str'}, + 'evaluated_network_security_groups': {'key': 'evaluatedNetworkSecurityGroups', 'type': '[EvaluatedNetworkSecurityGroup]'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityGroupResult, self).__init__(**kwargs) + self.security_rule_access_result = kwargs.get('security_rule_access_result', None) + self.evaluated_network_security_groups = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_result_py3.py new file mode 100644 index 000000000000..e0add74d78b5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_group_result_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityGroupResult(Model): + """Network configuration diagnostic result corresponded provided traffic + query. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param security_rule_access_result: The network traffic is allowed or + denied. Possible values are 'Allow' and 'Deny'. Possible values include: + 'Allow', 'Deny' + :type security_rule_access_result: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleAccess + :ivar evaluated_network_security_groups: List of results network security + groups diagnostic. + :vartype evaluated_network_security_groups: + list[~azure.mgmt.network.v2018_08_01.models.EvaluatedNetworkSecurityGroup] + """ + + _validation = { + 'evaluated_network_security_groups': {'readonly': True}, + } + + _attribute_map = { + 'security_rule_access_result': {'key': 'securityRuleAccessResult', 'type': 'str'}, + 'evaluated_network_security_groups': {'key': 'evaluatedNetworkSecurityGroups', 'type': '[EvaluatedNetworkSecurityGroup]'}, + } + + def __init__(self, *, security_rule_access_result=None, **kwargs) -> None: + super(NetworkSecurityGroupResult, self).__init__(**kwargs) + self.security_rule_access_result = security_rule_access_result + self.evaluated_network_security_groups = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_rules_evaluation_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_rules_evaluation_result.py new file mode 100644 index 000000000000..63c680f2093f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_rules_evaluation_result.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityRulesEvaluationResult(Model): + """Network security rules evaluation result. + + :param name: Name of the network security rule. + :type name: str + :param protocol_matched: Value indicating whether protocol is matched. + :type protocol_matched: bool + :param source_matched: Value indicating whether source is matched. + :type source_matched: bool + :param source_port_matched: Value indicating whether source port is + matched. + :type source_port_matched: bool + :param destination_matched: Value indicating whether destination is + matched. + :type destination_matched: bool + :param destination_port_matched: Value indicating whether destination port + is matched. + :type destination_port_matched: bool + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol_matched': {'key': 'protocolMatched', 'type': 'bool'}, + 'source_matched': {'key': 'sourceMatched', 'type': 'bool'}, + 'source_port_matched': {'key': 'sourcePortMatched', 'type': 'bool'}, + 'destination_matched': {'key': 'destinationMatched', 'type': 'bool'}, + 'destination_port_matched': {'key': 'destinationPortMatched', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityRulesEvaluationResult, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol_matched = kwargs.get('protocol_matched', None) + self.source_matched = kwargs.get('source_matched', None) + self.source_port_matched = kwargs.get('source_port_matched', None) + self.destination_matched = kwargs.get('destination_matched', None) + self.destination_port_matched = kwargs.get('destination_port_matched', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_rules_evaluation_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_rules_evaluation_result_py3.py new file mode 100644 index 000000000000..3958fc34a17b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_security_rules_evaluation_result_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkSecurityRulesEvaluationResult(Model): + """Network security rules evaluation result. + + :param name: Name of the network security rule. + :type name: str + :param protocol_matched: Value indicating whether protocol is matched. + :type protocol_matched: bool + :param source_matched: Value indicating whether source is matched. + :type source_matched: bool + :param source_port_matched: Value indicating whether source port is + matched. + :type source_port_matched: bool + :param destination_matched: Value indicating whether destination is + matched. + :type destination_matched: bool + :param destination_port_matched: Value indicating whether destination port + is matched. + :type destination_port_matched: bool + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol_matched': {'key': 'protocolMatched', 'type': 'bool'}, + 'source_matched': {'key': 'sourceMatched', 'type': 'bool'}, + 'source_port_matched': {'key': 'sourcePortMatched', 'type': 'bool'}, + 'destination_matched': {'key': 'destinationMatched', 'type': 'bool'}, + 'destination_port_matched': {'key': 'destinationPortMatched', 'type': 'bool'}, + } + + def __init__(self, *, name: str=None, protocol_matched: bool=None, source_matched: bool=None, source_port_matched: bool=None, destination_matched: bool=None, destination_port_matched: bool=None, **kwargs) -> None: + super(NetworkSecurityRulesEvaluationResult, self).__init__(**kwargs) + self.name = name + self.protocol_matched = protocol_matched + self.source_matched = source_matched + self.source_port_matched = source_port_matched + self.destination_matched = destination_matched + self.destination_port_matched = destination_port_matched diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher.py new file mode 100644 index 000000000000..beb8fedb22bf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class NetworkWatcher(Resource): + """Network watcher in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkWatcher, self).__init__(**kwargs) + self.etag = kwargs.get('etag', None) + self.provisioning_state = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher_paged.py new file mode 100644 index 000000000000..7eae4443c61c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class NetworkWatcherPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkWatcher ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkWatcher]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkWatcherPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher_py3.py new file mode 100644 index 000000000000..8ed4975c47da --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/network_watcher_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class NetworkWatcher(Resource): + """Network watcher in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, etag: str=None, **kwargs) -> None: + super(NetworkWatcher, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.etag = etag + self.provisioning_state = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_parameters.py new file mode 100644 index 000000000000..54d8674c8884 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_parameters.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NextHopParameters(Model): + """Parameters that define the source and destination endpoint. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The resource identifier of the target + resource against which the action is to be performed. + :type target_resource_id: str + :param source_ip_address: Required. The source IP address. + :type source_ip_address: str + :param destination_ip_address: Required. The destination IP address. + :type destination_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of the nics, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'source_ip_address': {'required': True}, + 'destination_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'source_ip_address': {'key': 'sourceIPAddress', 'type': 'str'}, + 'destination_ip_address': {'key': 'destinationIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NextHopParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.source_ip_address = kwargs.get('source_ip_address', None) + self.destination_ip_address = kwargs.get('destination_ip_address', None) + self.target_nic_resource_id = kwargs.get('target_nic_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_parameters_py3.py new file mode 100644 index 000000000000..50ee3d334e91 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_parameters_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NextHopParameters(Model): + """Parameters that define the source and destination endpoint. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The resource identifier of the target + resource against which the action is to be performed. + :type target_resource_id: str + :param source_ip_address: Required. The source IP address. + :type source_ip_address: str + :param destination_ip_address: Required. The destination IP address. + :type destination_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of the nics, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'source_ip_address': {'required': True}, + 'destination_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'source_ip_address': {'key': 'sourceIPAddress', 'type': 'str'}, + 'destination_ip_address': {'key': 'destinationIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, source_ip_address: str, destination_ip_address: str, target_nic_resource_id: str=None, **kwargs) -> None: + super(NextHopParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.source_ip_address = source_ip_address + self.destination_ip_address = destination_ip_address + self.target_nic_resource_id = target_nic_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_result.py new file mode 100644 index 000000000000..f40e1bbe94ef --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_result.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NextHopResult(Model): + """The information about next hop from the specified VM. + + :param next_hop_type: Next hop type. Possible values include: 'Internet', + 'VirtualAppliance', 'VirtualNetworkGateway', 'VnetLocal', + 'HyperNetGateway', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_08_01.models.NextHopType + :param next_hop_ip_address: Next hop IP Address + :type next_hop_ip_address: str + :param route_table_id: The resource identifier for the route table + associated with the route being returned. If the route being returned does + not correspond to any user created routes then this field will be the + string 'System Route'. + :type route_table_id: str + """ + + _attribute_map = { + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + 'route_table_id': {'key': 'routeTableId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NextHopResult, self).__init__(**kwargs) + self.next_hop_type = kwargs.get('next_hop_type', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.route_table_id = kwargs.get('route_table_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_result_py3.py new file mode 100644 index 000000000000..22cd3f8cb957 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/next_hop_result_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NextHopResult(Model): + """The information about next hop from the specified VM. + + :param next_hop_type: Next hop type. Possible values include: 'Internet', + 'VirtualAppliance', 'VirtualNetworkGateway', 'VnetLocal', + 'HyperNetGateway', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_08_01.models.NextHopType + :param next_hop_ip_address: Next hop IP Address + :type next_hop_ip_address: str + :param route_table_id: The resource identifier for the route table + associated with the route being returned. If the route being returned does + not correspond to any user created routes then this field will be the + string 'System Route'. + :type route_table_id: str + """ + + _attribute_map = { + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + 'route_table_id': {'key': 'routeTableId', 'type': 'str'}, + } + + def __init__(self, *, next_hop_type=None, next_hop_ip_address: str=None, route_table_id: str=None, **kwargs) -> None: + super(NextHopResult, self).__init__(**kwargs) + self.next_hop_type = next_hop_type + self.next_hop_ip_address = next_hop_ip_address + self.route_table_id = route_table_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation.py new file mode 100644 index 000000000000..1c886d927d5b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Network REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.network.v2018_08_01.models.OperationDisplay + :param origin: Origin of the operation. + :type origin: str + :param service_specification: Specification of the service. + :type service_specification: + ~azure.mgmt.network.v2018_08_01.models.OperationPropertiesFormatServiceSpecification + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'OperationPropertiesFormatServiceSpecification'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.service_specification = kwargs.get('service_specification', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_display.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_display.py new file mode 100644 index 000000000000..6e37c2433f56 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_display.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Network. + :type provider: str + :param resource: Resource on which the operation is performed. + :type resource: str + :param operation: Type of the operation: get, read, delete, etc. + :type operation: str + :param description: Description of the operation. + :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, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_display_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_display_py3.py new file mode 100644 index 000000000000..c0508a41bd48 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_display_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Network. + :type provider: str + :param resource: Resource on which the operation is performed. + :type resource: str + :param operation: Type of the operation: get, read, delete, etc. + :type operation: str + :param description: Description of the operation. + :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(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.resource = resource + self.operation = operation + self.description = description diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_paged.py new file mode 100644 index 000000000000..099320a90939 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_properties_format_service_specification.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_properties_format_service_specification.py new file mode 100644 index 000000000000..001813fe189e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_properties_format_service_specification.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationPropertiesFormatServiceSpecification(Model): + """Specification of the service. + + :param metric_specifications: Operation service specification. + :type metric_specifications: + list[~azure.mgmt.network.v2018_08_01.models.MetricSpecification] + :param log_specifications: Operation log specification. + :type log_specifications: + list[~azure.mgmt.network.v2018_08_01.models.LogSpecification] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + 'log_specifications': {'key': 'logSpecifications', 'type': '[LogSpecification]'}, + } + + def __init__(self, **kwargs): + super(OperationPropertiesFormatServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = kwargs.get('metric_specifications', None) + self.log_specifications = kwargs.get('log_specifications', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_properties_format_service_specification_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_properties_format_service_specification_py3.py new file mode 100644 index 000000000000..6b30df2b02f8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_properties_format_service_specification_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationPropertiesFormatServiceSpecification(Model): + """Specification of the service. + + :param metric_specifications: Operation service specification. + :type metric_specifications: + list[~azure.mgmt.network.v2018_08_01.models.MetricSpecification] + :param log_specifications: Operation log specification. + :type log_specifications: + list[~azure.mgmt.network.v2018_08_01.models.LogSpecification] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + 'log_specifications': {'key': 'logSpecifications', 'type': '[LogSpecification]'}, + } + + def __init__(self, *, metric_specifications=None, log_specifications=None, **kwargs) -> None: + super(OperationPropertiesFormatServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = metric_specifications + self.log_specifications = log_specifications diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_py3.py new file mode 100644 index 000000000000..22252f00fdcf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/operation_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Network REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.network.v2018_08_01.models.OperationDisplay + :param origin: Origin of the operation. + :type origin: str + :param service_specification: Specification of the service. + :type service_specification: + ~azure.mgmt.network.v2018_08_01.models.OperationPropertiesFormatServiceSpecification + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'OperationPropertiesFormatServiceSpecification'}, + } + + def __init__(self, *, name: str=None, display=None, origin: str=None, service_specification=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display + self.origin = origin + self.service_specification = service_specification diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/outbound_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/outbound_rule.py new file mode 100644 index 000000000000..a181c1695860 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/outbound_rule.py @@ -0,0 +1,82 @@ +# 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 .sub_resource import SubResource + + +class OutboundRule(SubResource): + """Outbound pool of the load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param allocated_outbound_ports: The number of outbound ports to be used + for NAT. + :type allocated_outbound_ports: int + :param frontend_ip_configurations: Required. The Frontend IP addresses of + the load balancer. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param backend_address_pool: Required. A reference to a pool of DIPs. + Outbound traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param protocol: Required. Protocol - TCP, UDP or All. Possible values + include: 'Tcp', 'Udp', 'All' + :type protocol: str or ~azure.mgmt.network.v2018_08_01.models.enum + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param idle_timeout_in_minutes: The timeout for the TCP idle connection + :type idle_timeout_in_minutes: int + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'frontend_ip_configurations': {'required': True}, + 'backend_address_pool': {'required': True}, + 'protocol': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allocated_outbound_ports': {'key': 'properties.allocatedOutboundPorts', 'type': 'int'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[SubResource]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OutboundRule, self).__init__(**kwargs) + self.allocated_outbound_ports = kwargs.get('allocated_outbound_ports', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.protocol = kwargs.get('protocol', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/outbound_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/outbound_rule_py3.py new file mode 100644 index 000000000000..98012f441c87 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/outbound_rule_py3.py @@ -0,0 +1,82 @@ +# 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 .sub_resource_py3 import SubResource + + +class OutboundRule(SubResource): + """Outbound pool of the load balancer. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param allocated_outbound_ports: The number of outbound ports to be used + for NAT. + :type allocated_outbound_ports: int + :param frontend_ip_configurations: Required. The Frontend IP addresses of + the load balancer. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param backend_address_pool: Required. A reference to a pool of DIPs. + Outbound traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: Gets the provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param protocol: Required. Protocol - TCP, UDP or All. Possible values + include: 'Tcp', 'Udp', 'All' + :type protocol: str or ~azure.mgmt.network.v2018_08_01.models.enum + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param idle_timeout_in_minutes: The timeout for the TCP idle connection + :type idle_timeout_in_minutes: int + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'frontend_ip_configurations': {'required': True}, + 'backend_address_pool': {'required': True}, + 'protocol': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allocated_outbound_ports': {'key': 'properties.allocatedOutboundPorts', 'type': 'int'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[SubResource]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, frontend_ip_configurations, backend_address_pool, protocol, id: str=None, allocated_outbound_ports: int=None, provisioning_state: str=None, enable_tcp_reset: bool=None, idle_timeout_in_minutes: int=None, name: str=None, etag: str=None, **kwargs) -> None: + super(OutboundRule, self).__init__(id=id, **kwargs) + self.allocated_outbound_ports = allocated_outbound_ports + self.frontend_ip_configurations = frontend_ip_configurations + self.backend_address_pool = backend_address_pool + self.provisioning_state = provisioning_state + self.protocol = protocol + self.enable_tcp_reset = enable_tcp_reset + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway.py new file mode 100644 index 000000000000..2a0cc486f365 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway.py @@ -0,0 +1,86 @@ +# 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 .resource import Resource + + +class P2SVpnGateway(Resource): + """P2SVpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs + :type virtual_hub: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param vpn_gateway_scale_unit: The scale unit for this p2s vpn gateway. + :type vpn_gateway_scale_unit: int + :param p2_svpn_server_configuration: The P2SVpnServerConfiguration to + which the p2sVpnGateway is attached to. + :type p2_svpn_server_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :ivar vpn_client_connection_health: All P2S vpnclients' connection health + status. + :vartype vpn_client_connection_health: + ~azure.mgmt.network.v2018_08_01.models.VpnClientConnectionHealth + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'vpn_client_connection_health': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_gateway_scale_unit': {'key': 'properties.vpnGatewayScaleUnit', 'type': 'int'}, + 'p2_svpn_server_configuration': {'key': 'properties.p2SVpnServerConfiguration', 'type': 'SubResource'}, + 'vpn_client_address_pool': {'key': 'properties.vpnClientAddressPool', 'type': 'AddressSpace'}, + 'vpn_client_connection_health': {'key': 'properties.vpnClientConnectionHealth', 'type': 'VpnClientConnectionHealth'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnGateway, self).__init__(**kwargs) + self.virtual_hub = kwargs.get('virtual_hub', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.vpn_gateway_scale_unit = kwargs.get('vpn_gateway_scale_unit', None) + self.p2_svpn_server_configuration = kwargs.get('p2_svpn_server_configuration', None) + self.vpn_client_address_pool = kwargs.get('vpn_client_address_pool', None) + self.vpn_client_connection_health = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway_paged.py new file mode 100644 index 000000000000..bcab3232c665 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class P2SVpnGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`P2SVpnGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[P2SVpnGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(P2SVpnGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway_py3.py new file mode 100644 index 000000000000..8ef097f8b9b6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_gateway_py3.py @@ -0,0 +1,86 @@ +# 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 .resource_py3 import Resource + + +class P2SVpnGateway(Resource): + """P2SVpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs + :type virtual_hub: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param vpn_gateway_scale_unit: The scale unit for this p2s vpn gateway. + :type vpn_gateway_scale_unit: int + :param p2_svpn_server_configuration: The P2SVpnServerConfiguration to + which the p2sVpnGateway is attached to. + :type p2_svpn_server_configuration: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :ivar vpn_client_connection_health: All P2S vpnclients' connection health + status. + :vartype vpn_client_connection_health: + ~azure.mgmt.network.v2018_08_01.models.VpnClientConnectionHealth + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'vpn_client_connection_health': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_gateway_scale_unit': {'key': 'properties.vpnGatewayScaleUnit', 'type': 'int'}, + 'p2_svpn_server_configuration': {'key': 'properties.p2SVpnServerConfiguration', 'type': 'SubResource'}, + 'vpn_client_address_pool': {'key': 'properties.vpnClientAddressPool', 'type': 'AddressSpace'}, + 'vpn_client_connection_health': {'key': 'properties.vpnClientConnectionHealth', 'type': 'VpnClientConnectionHealth'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_hub=None, provisioning_state=None, vpn_gateway_scale_unit: int=None, p2_svpn_server_configuration=None, vpn_client_address_pool=None, **kwargs) -> None: + super(P2SVpnGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_hub = virtual_hub + self.provisioning_state = provisioning_state + self.vpn_gateway_scale_unit = vpn_gateway_scale_unit + self.p2_svpn_server_configuration = p2_svpn_server_configuration + self.vpn_client_address_pool = vpn_client_address_pool + self.vpn_client_connection_health = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_profile_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_profile_parameters.py new file mode 100644 index 000000000000..9d5e8ac5f929 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_profile_parameters.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class P2SVpnProfileParameters(Model): + """Vpn Client Parameters for package generation. + + :param authentication_method: VPN client Authentication Method. Possible + values are: 'EAPTLS' and 'EAPMSCHAPv2'. Possible values include: 'EAPTLS', + 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2018_08_01.models.AuthenticationMethod + """ + + _attribute_map = { + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnProfileParameters, self).__init__(**kwargs) + self.authentication_method = kwargs.get('authentication_method', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_profile_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_profile_parameters_py3.py new file mode 100644 index 000000000000..855411734a9e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_profile_parameters_py3.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class P2SVpnProfileParameters(Model): + """Vpn Client Parameters for package generation. + + :param authentication_method: VPN client Authentication Method. Possible + values are: 'EAPTLS' and 'EAPMSCHAPv2'. Possible values include: 'EAPTLS', + 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2018_08_01.models.AuthenticationMethod + """ + + _attribute_map = { + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + } + + def __init__(self, *, authentication_method=None, **kwargs) -> None: + super(P2SVpnProfileParameters, self).__init__(**kwargs) + self.authentication_method = authentication_method diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_client_root_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_client_root_certificate.py new file mode 100644 index 000000000000..673c6dfc00f4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_client_root_certificate.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class P2SVpnServerConfigRadiusClientRootCertificate(SubResource): + """Radius client root certificate of P2SVpnServerConfiguration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The Radius client root certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the Radius client root + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnServerConfigRadiusClientRootCertificate, self).__init__(**kwargs) + self.thumbprint = kwargs.get('thumbprint', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_client_root_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_client_root_certificate_py3.py new file mode 100644 index 000000000000..32272e60c00a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_client_root_certificate_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class P2SVpnServerConfigRadiusClientRootCertificate(SubResource): + """Radius client root certificate of P2SVpnServerConfiguration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The Radius client root certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the Radius client root + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, thumbprint: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(P2SVpnServerConfigRadiusClientRootCertificate, self).__init__(id=id, **kwargs) + self.thumbprint = thumbprint + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_server_root_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_server_root_certificate.py new file mode 100644 index 000000000000..6b672a8a3852 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_server_root_certificate.py @@ -0,0 +1,57 @@ +# 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 .sub_resource import SubResource + + +class P2SVpnServerConfigRadiusServerRootCertificate(SubResource): + """Radius Server root certificate of P2SVpnServerConfiguration. + + 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 id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the + P2SVpnServerConfiguration Radius Server root certificate resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnServerConfigRadiusServerRootCertificate, self).__init__(**kwargs) + self.public_cert_data = kwargs.get('public_cert_data', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_server_root_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_server_root_certificate_py3.py new file mode 100644 index 000000000000..e64cd1975c4e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_radius_server_root_certificate_py3.py @@ -0,0 +1,57 @@ +# 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 .sub_resource_py3 import SubResource + + +class P2SVpnServerConfigRadiusServerRootCertificate(SubResource): + """Radius Server root certificate of P2SVpnServerConfiguration. + + 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 id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the + P2SVpnServerConfiguration Radius Server root certificate resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, public_cert_data: str, id: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(P2SVpnServerConfigRadiusServerRootCertificate, self).__init__(id=id, **kwargs) + self.public_cert_data = public_cert_data + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_revoked_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_revoked_certificate.py new file mode 100644 index 000000000000..d237930f2cec --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_revoked_certificate.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class P2SVpnServerConfigVpnClientRevokedCertificate(SubResource): + """VPN client revoked certificate of P2SVpnServerConfiguration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the VPN client revoked + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnServerConfigVpnClientRevokedCertificate, self).__init__(**kwargs) + self.thumbprint = kwargs.get('thumbprint', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_revoked_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_revoked_certificate_py3.py new file mode 100644 index 000000000000..90e200a44f84 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_revoked_certificate_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class P2SVpnServerConfigVpnClientRevokedCertificate(SubResource): + """VPN client revoked certificate of P2SVpnServerConfiguration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the VPN client revoked + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, thumbprint: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(P2SVpnServerConfigVpnClientRevokedCertificate, self).__init__(id=id, **kwargs) + self.thumbprint = thumbprint + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_root_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_root_certificate.py new file mode 100644 index 000000000000..0f0dcc8042af --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_root_certificate.py @@ -0,0 +1,57 @@ +# 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 .sub_resource import SubResource + + +class P2SVpnServerConfigVpnClientRootCertificate(SubResource): + """VPN client root certificate of P2SVpnServerConfiguration. + + 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 id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the + P2SVpnServerConfiguration VPN client root certificate resource. Possible + values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnServerConfigVpnClientRootCertificate, self).__init__(**kwargs) + self.public_cert_data = kwargs.get('public_cert_data', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_root_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_root_certificate_py3.py new file mode 100644 index 000000000000..adc301b576a5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_config_vpn_client_root_certificate_py3.py @@ -0,0 +1,57 @@ +# 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 .sub_resource_py3 import SubResource + + +class P2SVpnServerConfigVpnClientRootCertificate(SubResource): + """VPN client root certificate of P2SVpnServerConfiguration. + + 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 id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the + P2SVpnServerConfiguration VPN client root certificate resource. Possible + values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, public_cert_data: str, id: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(P2SVpnServerConfigVpnClientRootCertificate, self).__init__(id=id, **kwargs) + self.public_cert_data = public_cert_data + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration.py new file mode 100644 index 000000000000..d838ed3938c4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration.py @@ -0,0 +1,115 @@ +# 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 .sub_resource import SubResource + + +class P2SVpnServerConfiguration(SubResource): + """P2SVpnServerConfiguration Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param p2_svpn_server_configuration_properties_name: The name of the + P2SVpnServerConfiguration that is unique within a VirtualWan in a resource + group. This name can be used to access the resource along with Paren + VirtualWan resource name. + :type p2_svpn_server_configuration_properties_name: str + :param vpn_protocols: vpnProtocols for the P2SVpnServerConfiguration. + :type vpn_protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.VpnGatewayTunnelingProtocol] + :param p2_svpn_server_config_vpn_client_root_certificates: VPN client root + certificate of P2SVpnServerConfiguration. + :type p2_svpn_server_config_vpn_client_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigVpnClientRootCertificate] + :param p2_svpn_server_config_vpn_client_revoked_certificates: VPN client + revoked certificate of P2SVpnServerConfiguration. + :type p2_svpn_server_config_vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigVpnClientRevokedCertificate] + :param p2_svpn_server_config_radius_server_root_certificates: Radius + Server root certificate of P2SVpnServerConfiguration. + :type p2_svpn_server_config_radius_server_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigRadiusServerRootCertificate] + :param p2_svpn_server_config_radius_client_root_certificates: Radius + client root certificate of P2SVpnServerConfiguration. + :type p2_svpn_server_config_radius_client_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigRadiusClientRootCertificate] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for + P2SVpnServerConfiguration. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + P2SVpnServerConfiguration resource for point to site client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + P2SVpnServerConfiguration resource for for point to site client + connection. + :type radius_server_secret: str + :ivar provisioning_state: The provisioning state of the + P2SVpnServerConfiguration resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :ivar p2_svpn_gateways: + :vartype p2_svpn_gateways: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param p2_svpn_server_configuration_properties_etag: A unique read-only + string that changes whenever the resource is updated. + :type p2_svpn_server_configuration_properties_etag: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'p2_svpn_gateways': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'p2_svpn_server_configuration_properties_name': {'key': 'properties.name', 'type': 'str'}, + 'vpn_protocols': {'key': 'properties.vpnProtocols', 'type': '[str]'}, + 'p2_svpn_server_config_vpn_client_root_certificates': {'key': 'properties.p2SVpnServerConfigVpnClientRootCertificates', 'type': '[P2SVpnServerConfigVpnClientRootCertificate]'}, + 'p2_svpn_server_config_vpn_client_revoked_certificates': {'key': 'properties.p2SVpnServerConfigVpnClientRevokedCertificates', 'type': '[P2SVpnServerConfigVpnClientRevokedCertificate]'}, + 'p2_svpn_server_config_radius_server_root_certificates': {'key': 'properties.p2SVpnServerConfigRadiusServerRootCertificates', 'type': '[P2SVpnServerConfigRadiusServerRootCertificate]'}, + 'p2_svpn_server_config_radius_client_root_certificates': {'key': 'properties.p2SVpnServerConfigRadiusClientRootCertificates', 'type': '[P2SVpnServerConfigRadiusClientRootCertificate]'}, + 'vpn_client_ipsec_policies': {'key': 'properties.vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'properties.radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'properties.radiusServerSecret', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'p2_svpn_gateways': {'key': 'properties.p2SVpnGateways', 'type': '[SubResource]'}, + 'p2_svpn_server_configuration_properties_etag': {'key': 'properties.etag', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnServerConfiguration, self).__init__(**kwargs) + self.p2_svpn_server_configuration_properties_name = kwargs.get('p2_svpn_server_configuration_properties_name', None) + self.vpn_protocols = kwargs.get('vpn_protocols', None) + self.p2_svpn_server_config_vpn_client_root_certificates = kwargs.get('p2_svpn_server_config_vpn_client_root_certificates', None) + self.p2_svpn_server_config_vpn_client_revoked_certificates = kwargs.get('p2_svpn_server_config_vpn_client_revoked_certificates', None) + self.p2_svpn_server_config_radius_server_root_certificates = kwargs.get('p2_svpn_server_config_radius_server_root_certificates', None) + self.p2_svpn_server_config_radius_client_root_certificates = kwargs.get('p2_svpn_server_config_radius_client_root_certificates', None) + self.vpn_client_ipsec_policies = kwargs.get('vpn_client_ipsec_policies', None) + self.radius_server_address = kwargs.get('radius_server_address', None) + self.radius_server_secret = kwargs.get('radius_server_secret', None) + self.provisioning_state = None + self.p2_svpn_gateways = None + self.p2_svpn_server_configuration_properties_etag = kwargs.get('p2_svpn_server_configuration_properties_etag', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration_paged.py new file mode 100644 index 000000000000..aebfe8a54ec5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class P2SVpnServerConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`P2SVpnServerConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[P2SVpnServerConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(P2SVpnServerConfigurationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration_py3.py new file mode 100644 index 000000000000..8677f556bcf5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/p2_svpn_server_configuration_py3.py @@ -0,0 +1,115 @@ +# 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 .sub_resource_py3 import SubResource + + +class P2SVpnServerConfiguration(SubResource): + """P2SVpnServerConfiguration Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param p2_svpn_server_configuration_properties_name: The name of the + P2SVpnServerConfiguration that is unique within a VirtualWan in a resource + group. This name can be used to access the resource along with Paren + VirtualWan resource name. + :type p2_svpn_server_configuration_properties_name: str + :param vpn_protocols: vpnProtocols for the P2SVpnServerConfiguration. + :type vpn_protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.VpnGatewayTunnelingProtocol] + :param p2_svpn_server_config_vpn_client_root_certificates: VPN client root + certificate of P2SVpnServerConfiguration. + :type p2_svpn_server_config_vpn_client_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigVpnClientRootCertificate] + :param p2_svpn_server_config_vpn_client_revoked_certificates: VPN client + revoked certificate of P2SVpnServerConfiguration. + :type p2_svpn_server_config_vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigVpnClientRevokedCertificate] + :param p2_svpn_server_config_radius_server_root_certificates: Radius + Server root certificate of P2SVpnServerConfiguration. + :type p2_svpn_server_config_radius_server_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigRadiusServerRootCertificate] + :param p2_svpn_server_config_radius_client_root_certificates: Radius + client root certificate of P2SVpnServerConfiguration. + :type p2_svpn_server_config_radius_client_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigRadiusClientRootCertificate] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for + P2SVpnServerConfiguration. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + P2SVpnServerConfiguration resource for point to site client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + P2SVpnServerConfiguration resource for for point to site client + connection. + :type radius_server_secret: str + :ivar provisioning_state: The provisioning state of the + P2SVpnServerConfiguration resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :ivar p2_svpn_gateways: + :vartype p2_svpn_gateways: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param p2_svpn_server_configuration_properties_etag: A unique read-only + string that changes whenever the resource is updated. + :type p2_svpn_server_configuration_properties_etag: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'p2_svpn_gateways': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'p2_svpn_server_configuration_properties_name': {'key': 'properties.name', 'type': 'str'}, + 'vpn_protocols': {'key': 'properties.vpnProtocols', 'type': '[str]'}, + 'p2_svpn_server_config_vpn_client_root_certificates': {'key': 'properties.p2SVpnServerConfigVpnClientRootCertificates', 'type': '[P2SVpnServerConfigVpnClientRootCertificate]'}, + 'p2_svpn_server_config_vpn_client_revoked_certificates': {'key': 'properties.p2SVpnServerConfigVpnClientRevokedCertificates', 'type': '[P2SVpnServerConfigVpnClientRevokedCertificate]'}, + 'p2_svpn_server_config_radius_server_root_certificates': {'key': 'properties.p2SVpnServerConfigRadiusServerRootCertificates', 'type': '[P2SVpnServerConfigRadiusServerRootCertificate]'}, + 'p2_svpn_server_config_radius_client_root_certificates': {'key': 'properties.p2SVpnServerConfigRadiusClientRootCertificates', 'type': '[P2SVpnServerConfigRadiusClientRootCertificate]'}, + 'vpn_client_ipsec_policies': {'key': 'properties.vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'properties.radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'properties.radiusServerSecret', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'p2_svpn_gateways': {'key': 'properties.p2SVpnGateways', 'type': '[SubResource]'}, + 'p2_svpn_server_configuration_properties_etag': {'key': 'properties.etag', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, p2_svpn_server_configuration_properties_name: str=None, vpn_protocols=None, p2_svpn_server_config_vpn_client_root_certificates=None, p2_svpn_server_config_vpn_client_revoked_certificates=None, p2_svpn_server_config_radius_server_root_certificates=None, p2_svpn_server_config_radius_client_root_certificates=None, vpn_client_ipsec_policies=None, radius_server_address: str=None, radius_server_secret: str=None, p2_svpn_server_configuration_properties_etag: str=None, name: str=None, **kwargs) -> None: + super(P2SVpnServerConfiguration, self).__init__(id=id, **kwargs) + self.p2_svpn_server_configuration_properties_name = p2_svpn_server_configuration_properties_name + self.vpn_protocols = vpn_protocols + self.p2_svpn_server_config_vpn_client_root_certificates = p2_svpn_server_config_vpn_client_root_certificates + self.p2_svpn_server_config_vpn_client_revoked_certificates = p2_svpn_server_config_vpn_client_revoked_certificates + self.p2_svpn_server_config_radius_server_root_certificates = p2_svpn_server_config_radius_server_root_certificates + self.p2_svpn_server_config_radius_client_root_certificates = p2_svpn_server_config_radius_client_root_certificates + self.vpn_client_ipsec_policies = vpn_client_ipsec_policies + self.radius_server_address = radius_server_address + self.radius_server_secret = radius_server_secret + self.provisioning_state = None + self.p2_svpn_gateways = None + self.p2_svpn_server_configuration_properties_etag = p2_svpn_server_configuration_properties_etag + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture.py new file mode 100644 index 000000000000..92cca0dc7cc1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCapture(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_08_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_08_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, **kwargs): + super(PacketCapture, self).__init__(**kwargs) + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_filter.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_filter.py new file mode 100644 index 000000000000..9b51166a15e2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_filter.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureFilter(Model): + """Filter that is applied to packet capture request. Multiple filters can be + applied. + + :param protocol: Protocol to be filtered on. Possible values include: + 'TCP', 'UDP', 'Any'. Default value: "Any" . + :type protocol: str or ~azure.mgmt.network.v2018_08_01.models.PcProtocol + :param local_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5"? for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type local_ip_address: str + :param remote_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type remote_ip_address: str + :param local_port: Local port to be filtered on. Notation: "80" for single + port entry."80-85" for range. "80;443;" for multiple entries. Multiple + ranges not currently supported. Mixing ranges with multiple entries not + currently supported. Default = null. + :type local_port: str + :param remote_port: Remote port to be filtered on. Notation: "80" for + single port entry."80-85" for range. "80;443;" for multiple entries. + Multiple ranges not currently supported. Mixing ranges with multiple + entries not currently supported. Default = null. + :type remote_port: str + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureFilter, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', "Any") + self.local_ip_address = kwargs.get('local_ip_address', None) + self.remote_ip_address = kwargs.get('remote_ip_address', None) + self.local_port = kwargs.get('local_port', None) + self.remote_port = kwargs.get('remote_port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_filter_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_filter_py3.py new file mode 100644 index 000000000000..75a09611cfd3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_filter_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureFilter(Model): + """Filter that is applied to packet capture request. Multiple filters can be + applied. + + :param protocol: Protocol to be filtered on. Possible values include: + 'TCP', 'UDP', 'Any'. Default value: "Any" . + :type protocol: str or ~azure.mgmt.network.v2018_08_01.models.PcProtocol + :param local_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5"? for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type local_ip_address: str + :param remote_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type remote_ip_address: str + :param local_port: Local port to be filtered on. Notation: "80" for single + port entry."80-85" for range. "80;443;" for multiple entries. Multiple + ranges not currently supported. Mixing ranges with multiple entries not + currently supported. Default = null. + :type local_port: str + :param remote_port: Remote port to be filtered on. Notation: "80" for + single port entry."80-85" for range. "80;443;" for multiple entries. + Multiple ranges not currently supported. Mixing ranges with multiple + entries not currently supported. Default = null. + :type remote_port: str + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + } + + def __init__(self, *, protocol="Any", local_ip_address: str=None, remote_ip_address: str=None, local_port: str=None, remote_port: str=None, **kwargs) -> None: + super(PacketCaptureFilter, self).__init__(**kwargs) + self.protocol = protocol + self.local_ip_address = local_ip_address + self.remote_ip_address = remote_ip_address + self.local_port = local_port + self.remote_port = remote_port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_parameters.py new file mode 100644 index 000000000000..4b36dc42b3c3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_parameters.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureParameters(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_08_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_08_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureParameters, self).__init__(**kwargs) + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_parameters_py3.py new file mode 100644 index 000000000000..996e33f331eb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_parameters_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureParameters(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_08_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_08_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, *, target: str, storage_location, bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, **kwargs) -> None: + super(PacketCaptureParameters, self).__init__(**kwargs) + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_py3.py new file mode 100644 index 000000000000..787e8dc96cf3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCapture(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_08_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_08_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, *, target: str, storage_location, bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, **kwargs) -> None: + super(PacketCapture, self).__init__(**kwargs) + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_query_status_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_query_status_result.py new file mode 100644 index 000000000000..8990adc7c676 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_query_status_result.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureQueryStatusResult(Model): + """Status of packet capture session. + + :param name: The name of the packet capture resource. + :type name: str + :param id: The ID of the packet capture resource. + :type id: str + :param capture_start_time: The start time of the packet capture session. + :type capture_start_time: datetime + :param packet_capture_status: The status of the packet capture session. + Possible values include: 'NotStarted', 'Running', 'Stopped', 'Error', + 'Unknown' + :type packet_capture_status: str or + ~azure.mgmt.network.v2018_08_01.models.PcStatus + :param stop_reason: The reason the current packet capture session was + stopped. + :type stop_reason: str + :param packet_capture_error: List of errors of packet capture session. + :type packet_capture_error: list[str or + ~azure.mgmt.network.v2018_08_01.models.PcError] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'capture_start_time': {'key': 'captureStartTime', 'type': 'iso-8601'}, + 'packet_capture_status': {'key': 'packetCaptureStatus', 'type': 'str'}, + 'stop_reason': {'key': 'stopReason', 'type': 'str'}, + 'packet_capture_error': {'key': 'packetCaptureError', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureQueryStatusResult, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.capture_start_time = kwargs.get('capture_start_time', None) + self.packet_capture_status = kwargs.get('packet_capture_status', None) + self.stop_reason = kwargs.get('stop_reason', None) + self.packet_capture_error = kwargs.get('packet_capture_error', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_query_status_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_query_status_result_py3.py new file mode 100644 index 000000000000..6387e05e4552 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_query_status_result_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureQueryStatusResult(Model): + """Status of packet capture session. + + :param name: The name of the packet capture resource. + :type name: str + :param id: The ID of the packet capture resource. + :type id: str + :param capture_start_time: The start time of the packet capture session. + :type capture_start_time: datetime + :param packet_capture_status: The status of the packet capture session. + Possible values include: 'NotStarted', 'Running', 'Stopped', 'Error', + 'Unknown' + :type packet_capture_status: str or + ~azure.mgmt.network.v2018_08_01.models.PcStatus + :param stop_reason: The reason the current packet capture session was + stopped. + :type stop_reason: str + :param packet_capture_error: List of errors of packet capture session. + :type packet_capture_error: list[str or + ~azure.mgmt.network.v2018_08_01.models.PcError] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'capture_start_time': {'key': 'captureStartTime', 'type': 'iso-8601'}, + 'packet_capture_status': {'key': 'packetCaptureStatus', 'type': 'str'}, + 'stop_reason': {'key': 'stopReason', 'type': 'str'}, + 'packet_capture_error': {'key': 'packetCaptureError', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, id: str=None, capture_start_time=None, packet_capture_status=None, stop_reason: str=None, packet_capture_error=None, **kwargs) -> None: + super(PacketCaptureQueryStatusResult, self).__init__(**kwargs) + self.name = name + self.id = id + self.capture_start_time = capture_start_time + self.packet_capture_status = packet_capture_status + self.stop_reason = stop_reason + self.packet_capture_error = packet_capture_error diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result.py new file mode 100644 index 000000000000..233d4ab103b5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureResult(Model): + """Information about packet capture session. + + 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 name: Name of the packet capture session. + :vartype name: str + :ivar id: ID of the packet capture operation. + :vartype id: str + :param etag: Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_08_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_08_01.models.PacketCaptureFilter] + :param provisioning_state: The provisioning state of the packet capture + session. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = kwargs.get('etag', "A unique read-only string that changes whenever the resource is updated.") + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) + self.provisioning_state = kwargs.get('provisioning_state', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result_paged.py new file mode 100644 index 000000000000..ef2a79b1920e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class PacketCaptureResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`PacketCaptureResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PacketCaptureResult]'} + } + + def __init__(self, *args, **kwargs): + + super(PacketCaptureResultPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result_py3.py new file mode 100644 index 000000000000..b09e325131ff --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_result_py3.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureResult(Model): + """Information about packet capture session. + + 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 name: Name of the packet capture session. + :vartype name: str + :ivar id: ID of the packet capture operation. + :vartype id: str + :param etag: Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. + :type storage_location: + ~azure.mgmt.network.v2018_08_01.models.PacketCaptureStorageLocation + :param filters: + :type filters: + list[~azure.mgmt.network.v2018_08_01.models.PacketCaptureFilter] + :param provisioning_state: The provisioning state of the packet capture + session. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, target: str, storage_location, etag: str="A unique read-only string that changes whenever the resource is updated.", bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, provisioning_state=None, **kwargs) -> None: + super(PacketCaptureResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = etag + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters + self.provisioning_state = provisioning_state diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_storage_location.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_storage_location.py new file mode 100644 index 000000000000..62ed83d592b3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_storage_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureStorageLocation(Model): + """Describes the storage location for a packet capture session. + + :param storage_id: The ID of the storage account to save the packet + capture session. Required if no local file path is provided. + :type storage_id: str + :param storage_path: The URI of the storage path to save the packet + capture. Must be a well-formed URI describing the location to save the + packet capture. + :type storage_path: str + :param file_path: A valid local path on the targeting VM. Must include the + name of the capture file (*.cap). For linux virtual machine it must start + with /var/captures. Required if no storage ID is provided, otherwise + optional. + :type file_path: str + """ + + _attribute_map = { + 'storage_id': {'key': 'storageId', 'type': 'str'}, + 'storage_path': {'key': 'storagePath', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureStorageLocation, self).__init__(**kwargs) + self.storage_id = kwargs.get('storage_id', None) + self.storage_path = kwargs.get('storage_path', None) + self.file_path = kwargs.get('file_path', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_storage_location_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_storage_location_py3.py new file mode 100644 index 000000000000..6925dd4f9bdf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/packet_capture_storage_location_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PacketCaptureStorageLocation(Model): + """Describes the storage location for a packet capture session. + + :param storage_id: The ID of the storage account to save the packet + capture session. Required if no local file path is provided. + :type storage_id: str + :param storage_path: The URI of the storage path to save the packet + capture. Must be a well-formed URI describing the location to save the + packet capture. + :type storage_path: str + :param file_path: A valid local path on the targeting VM. Must include the + name of the capture file (*.cap). For linux virtual machine it must start + with /var/captures. Required if no storage ID is provided, otherwise + optional. + :type file_path: str + """ + + _attribute_map = { + 'storage_id': {'key': 'storageId', 'type': 'str'}, + 'storage_path': {'key': 'storagePath', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + } + + def __init__(self, *, storage_id: str=None, storage_path: str=None, file_path: str=None, **kwargs) -> None: + super(PacketCaptureStorageLocation, self).__init__(**kwargs) + self.storage_id = storage_id + self.storage_path = storage_path + self.file_path = file_path diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter.py new file mode 100644 index 000000000000..bd211cc892ed --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter.py @@ -0,0 +1,71 @@ +# 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 .sub_resource import SubResource + + +class PatchRouteFilter(SubResource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule] + :param peerings: A collection of references to express route circuit + peerings. + :type peerings: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(PatchRouteFilter, self).__init__(**kwargs) + self.rules = kwargs.get('rules', None) + self.peerings = kwargs.get('peerings', None) + self.provisioning_state = None + self.name = None + self.etag = None + self.type = None + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_py3.py new file mode 100644 index 000000000000..b0cb1f3e964a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_py3.py @@ -0,0 +1,71 @@ +# 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 .sub_resource_py3 import SubResource + + +class PatchRouteFilter(SubResource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule] + :param peerings: A collection of references to express route circuit + peerings. + :type peerings: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, id: str=None, rules=None, peerings=None, tags=None, **kwargs) -> None: + super(PatchRouteFilter, self).__init__(id=id, **kwargs) + self.rules = rules + self.peerings = peerings + self.provisioning_state = None + self.name = None + self.etag = None + self.type = None + self.tags = tags diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_rule.py new file mode 100644 index 000000000000..8629e5573a56 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_rule.py @@ -0,0 +1,72 @@ +# 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 .sub_resource import SubResource + + +class PatchRouteFilterRule(SubResource): + """Route Filter Rule Resource. + + 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 id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Valid values are: + 'Allow', 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_08_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Valid + value is: 'Community'. Default value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020'] + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, **kwargs): + super(PatchRouteFilterRule, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.communities = kwargs.get('communities', None) + self.provisioning_state = None + self.name = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_rule_py3.py new file mode 100644 index 000000000000..41ae43ffaa0b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/patch_route_filter_rule_py3.py @@ -0,0 +1,72 @@ +# 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 .sub_resource_py3 import SubResource + + +class PatchRouteFilterRule(SubResource): + """Route Filter Rule Resource. + + 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 id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Valid values are: + 'Allow', 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_08_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Valid + value is: 'Community'. Default value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020'] + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, *, access, communities, id: str=None, **kwargs) -> None: + super(PatchRouteFilterRule, self).__init__(id=id, **kwargs) + self.access = access + self.communities = communities + self.provisioning_state = None + self.name = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe.py new file mode 100644 index 000000000000..0896bcffb8d3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe.py @@ -0,0 +1,93 @@ +# 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 .sub_resource import SubResource + + +class Probe(SubResource): + """A load balancer probe. + + 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 id: Resource ID. + :type id: str + :ivar load_balancing_rules: The load balancer rules that use this probe. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param protocol: Required. The protocol of the end point. Possible values + are: 'Http', 'Tcp', or 'Https'. If 'Tcp' is specified, a received ACK is + required for the probe to be successful. If 'Http' or 'Https' is + specified, a 200 OK response from the specifies URI is required for the + probe to be successful. Possible values include: 'Http', 'Tcp', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.ProbeProtocol + :param port: Required. The port for communicating the probe. Possible + values range from 1 to 65535, inclusive. + :type port: int + :param interval_in_seconds: The interval, in seconds, for how frequently + to probe the endpoint for health status. Typically, the interval is + slightly less than half the allocated timeout period (in seconds) which + allows two full probes before taking the instance out of rotation. The + default value is 15, the minimum value is 5. + :type interval_in_seconds: int + :param number_of_probes: The number of probes where if no response, will + result in stopping further traffic from being delivered to the endpoint. + This values allows endpoints to be taken out of rotation faster or slower + than the typical times used in Azure. + :type number_of_probes: int + :param request_path: The URI used for requesting health status from the + VM. Path is required if a protocol is set to http. Otherwise, it is not + allowed. There is no default value. + :type request_path: str + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'load_balancing_rules': {'readonly': True}, + 'protocol': {'required': True}, + 'port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'interval_in_seconds': {'key': 'properties.intervalInSeconds', 'type': 'int'}, + 'number_of_probes': {'key': 'properties.numberOfProbes', 'type': 'int'}, + 'request_path': {'key': 'properties.requestPath', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Probe, self).__init__(**kwargs) + self.load_balancing_rules = None + self.protocol = kwargs.get('protocol', None) + self.port = kwargs.get('port', None) + self.interval_in_seconds = kwargs.get('interval_in_seconds', None) + self.number_of_probes = kwargs.get('number_of_probes', None) + self.request_path = kwargs.get('request_path', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe_paged.py new file mode 100644 index 000000000000..865b0aa77a84 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ProbePaged(Paged): + """ + A paging container for iterating over a list of :class:`Probe ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Probe]'} + } + + def __init__(self, *args, **kwargs): + + super(ProbePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe_py3.py new file mode 100644 index 000000000000..6887f44c5434 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/probe_py3.py @@ -0,0 +1,93 @@ +# 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 .sub_resource_py3 import SubResource + + +class Probe(SubResource): + """A load balancer probe. + + 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 id: Resource ID. + :type id: str + :ivar load_balancing_rules: The load balancer rules that use this probe. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param protocol: Required. The protocol of the end point. Possible values + are: 'Http', 'Tcp', or 'Https'. If 'Tcp' is specified, a received ACK is + required for the probe to be successful. If 'Http' or 'Https' is + specified, a 200 OK response from the specifies URI is required for the + probe to be successful. Possible values include: 'Http', 'Tcp', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.ProbeProtocol + :param port: Required. The port for communicating the probe. Possible + values range from 1 to 65535, inclusive. + :type port: int + :param interval_in_seconds: The interval, in seconds, for how frequently + to probe the endpoint for health status. Typically, the interval is + slightly less than half the allocated timeout period (in seconds) which + allows two full probes before taking the instance out of rotation. The + default value is 15, the minimum value is 5. + :type interval_in_seconds: int + :param number_of_probes: The number of probes where if no response, will + result in stopping further traffic from being delivered to the endpoint. + This values allows endpoints to be taken out of rotation faster or slower + than the typical times used in Azure. + :type number_of_probes: int + :param request_path: The URI used for requesting health status from the + VM. Path is required if a protocol is set to http. Otherwise, it is not + allowed. There is no default value. + :type request_path: str + :param provisioning_state: Gets the provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: Gets name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'load_balancing_rules': {'readonly': True}, + 'protocol': {'required': True}, + 'port': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'interval_in_seconds': {'key': 'properties.intervalInSeconds', 'type': 'int'}, + 'number_of_probes': {'key': 'properties.numberOfProbes', 'type': 'int'}, + 'request_path': {'key': 'properties.requestPath', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, port: int, id: str=None, interval_in_seconds: int=None, number_of_probes: int=None, request_path: str=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(Probe, self).__init__(id=id, **kwargs) + self.load_balancing_rules = None + self.protocol = protocol + self.port = port + self.interval_in_seconds = interval_in_seconds + self.number_of_probes = number_of_probes + self.request_path = request_path + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/protocol_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/protocol_configuration.py new file mode 100644 index 000000000000..4ddac620f431 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/protocol_configuration.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProtocolConfiguration(Model): + """Configuration of the protocol. + + :param http_configuration: + :type http_configuration: + ~azure.mgmt.network.v2018_08_01.models.HTTPConfiguration + """ + + _attribute_map = { + 'http_configuration': {'key': 'HTTPConfiguration', 'type': 'HTTPConfiguration'}, + } + + def __init__(self, **kwargs): + super(ProtocolConfiguration, self).__init__(**kwargs) + self.http_configuration = kwargs.get('http_configuration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/protocol_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/protocol_configuration_py3.py new file mode 100644 index 000000000000..4ca2f5e3cd07 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/protocol_configuration_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProtocolConfiguration(Model): + """Configuration of the protocol. + + :param http_configuration: + :type http_configuration: + ~azure.mgmt.network.v2018_08_01.models.HTTPConfiguration + """ + + _attribute_map = { + 'http_configuration': {'key': 'HTTPConfiguration', 'type': 'HTTPConfiguration'}, + } + + def __init__(self, *, http_configuration=None, **kwargs) -> None: + super(ProtocolConfiguration, self).__init__(**kwargs) + self.http_configuration = http_configuration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address.py new file mode 100644 index 000000000000..054e94a2e4f5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address.py @@ -0,0 +1,115 @@ +# 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 .resource import Resource + + +class PublicIPAddress(Resource): + """Public IP address resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP address SKU. + :type sku: ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressSku + :param public_ip_allocation_method: The public IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type public_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param public_ip_address_version: The public IP address version. Possible + values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2018_08_01.models.IPVersion + :ivar ip_configuration: The IP configuration associated with the public IP + address. + :vartype ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.IPConfiguration + :param dns_settings: The FQDN of the DNS record associated with the public + IP address. + :type dns_settings: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressDnsSettings + :param ip_tags: The list of tags associated with the public IP address. + :type ip_tags: list[~azure.mgmt.network.v2018_08_01.models.IpTag] + :param ip_address: The IP address associated with the public IP address + resource. + :type ip_address: str + :param public_ip_prefix: The Public IP Prefix this Public IP Address + should be allocated from. + :type public_ip_prefix: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :param resource_guid: The resource GUID property of the public IP + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ip_configuration': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPAddressSku'}, + 'public_ip_allocation_method': {'key': 'properties.publicIPAllocationMethod', 'type': 'str'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_configuration': {'key': 'properties.ipConfiguration', 'type': 'IPConfiguration'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'PublicIPAddressDnsSettings'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddress, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.public_ip_allocation_method = kwargs.get('public_ip_allocation_method', None) + self.public_ip_address_version = kwargs.get('public_ip_address_version', None) + self.ip_configuration = None + self.dns_settings = kwargs.get('dns_settings', None) + self.ip_tags = kwargs.get('ip_tags', None) + self.ip_address = kwargs.get('ip_address', None) + self.public_ip_prefix = kwargs.get('public_ip_prefix', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_dns_settings.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_dns_settings.py new file mode 100644 index 000000000000..07dfe30433a6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_dns_settings.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPAddressDnsSettings(Model): + """Contains FQDN of the DNS record associated with the public IP address. + + :param domain_name_label: Gets or sets the Domain name label.The + concatenation of the domain name label and the regionalized DNS zone make + up the fully qualified domain name associated with the public IP address. + If a domain name label is specified, an A DNS record is created for the + public IP in the Microsoft Azure DNS system. + :type domain_name_label: str + :param fqdn: Gets the FQDN, Fully qualified domain name of the A DNS + record associated with the public IP. This is the concatenation of the + domainNameLabel and the regionalized DNS zone. + :type fqdn: str + :param reverse_fqdn: Gets or Sets the Reverse FQDN. A user-visible, fully + qualified domain name that resolves to this public IP address. If the + reverseFqdn is specified, then a PTR DNS record is created pointing from + the IP address in the in-addr.arpa domain to the reverse FQDN. + :type reverse_fqdn: str + """ + + _attribute_map = { + 'domain_name_label': {'key': 'domainNameLabel', 'type': 'str'}, + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'reverse_fqdn': {'key': 'reverseFqdn', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddressDnsSettings, self).__init__(**kwargs) + self.domain_name_label = kwargs.get('domain_name_label', None) + self.fqdn = kwargs.get('fqdn', None) + self.reverse_fqdn = kwargs.get('reverse_fqdn', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_dns_settings_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_dns_settings_py3.py new file mode 100644 index 000000000000..e84aa9c10bf5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_dns_settings_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPAddressDnsSettings(Model): + """Contains FQDN of the DNS record associated with the public IP address. + + :param domain_name_label: Gets or sets the Domain name label.The + concatenation of the domain name label and the regionalized DNS zone make + up the fully qualified domain name associated with the public IP address. + If a domain name label is specified, an A DNS record is created for the + public IP in the Microsoft Azure DNS system. + :type domain_name_label: str + :param fqdn: Gets the FQDN, Fully qualified domain name of the A DNS + record associated with the public IP. This is the concatenation of the + domainNameLabel and the regionalized DNS zone. + :type fqdn: str + :param reverse_fqdn: Gets or Sets the Reverse FQDN. A user-visible, fully + qualified domain name that resolves to this public IP address. If the + reverseFqdn is specified, then a PTR DNS record is created pointing from + the IP address in the in-addr.arpa domain to the reverse FQDN. + :type reverse_fqdn: str + """ + + _attribute_map = { + 'domain_name_label': {'key': 'domainNameLabel', 'type': 'str'}, + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'reverse_fqdn': {'key': 'reverseFqdn', 'type': 'str'}, + } + + def __init__(self, *, domain_name_label: str=None, fqdn: str=None, reverse_fqdn: str=None, **kwargs) -> None: + super(PublicIPAddressDnsSettings, self).__init__(**kwargs) + self.domain_name_label = domain_name_label + self.fqdn = fqdn + self.reverse_fqdn = reverse_fqdn diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_paged.py new file mode 100644 index 000000000000..c5f8810dd1cf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class PublicIPAddressPaged(Paged): + """ + A paging container for iterating over a list of :class:`PublicIPAddress ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PublicIPAddress]'} + } + + def __init__(self, *args, **kwargs): + + super(PublicIPAddressPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_py3.py new file mode 100644 index 000000000000..5facfa33f92d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_py3.py @@ -0,0 +1,115 @@ +# 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 .resource_py3 import Resource + + +class PublicIPAddress(Resource): + """Public IP address resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP address SKU. + :type sku: ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressSku + :param public_ip_allocation_method: The public IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type public_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param public_ip_address_version: The public IP address version. Possible + values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2018_08_01.models.IPVersion + :ivar ip_configuration: The IP configuration associated with the public IP + address. + :vartype ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.IPConfiguration + :param dns_settings: The FQDN of the DNS record associated with the public + IP address. + :type dns_settings: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressDnsSettings + :param ip_tags: The list of tags associated with the public IP address. + :type ip_tags: list[~azure.mgmt.network.v2018_08_01.models.IpTag] + :param ip_address: The IP address associated with the public IP address + resource. + :type ip_address: str + :param public_ip_prefix: The Public IP Prefix this Public IP Address + should be allocated from. + :type public_ip_prefix: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :param resource_guid: The resource GUID property of the public IP + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ip_configuration': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPAddressSku'}, + 'public_ip_allocation_method': {'key': 'properties.publicIPAllocationMethod', 'type': 'str'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_configuration': {'key': 'properties.ipConfiguration', 'type': 'IPConfiguration'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'PublicIPAddressDnsSettings'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, public_ip_allocation_method=None, public_ip_address_version=None, dns_settings=None, ip_tags=None, ip_address: str=None, public_ip_prefix=None, idle_timeout_in_minutes: int=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, zones=None, **kwargs) -> None: + super(PublicIPAddress, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.public_ip_allocation_method = public_ip_allocation_method + self.public_ip_address_version = public_ip_address_version + self.ip_configuration = None + self.dns_settings = dns_settings + self.ip_tags = ip_tags + self.ip_address = ip_address + self.public_ip_prefix = public_ip_prefix + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag + self.zones = zones diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_sku.py new file mode 100644 index 000000000000..bca2e95b4ac9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_sku.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPAddressSku(Model): + """SKU of a public IP address. + + :param name: Name of a public IP address SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddressSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_sku_py3.py new file mode 100644 index 000000000000..ab8ec85843f9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_address_sku_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPAddressSku(Model): + """SKU of a public IP address. + + :param name: Name of a public IP address SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(PublicIPAddressSku, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix.py new file mode 100644 index 000000000000..1ea57b4bef12 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix.py @@ -0,0 +1,94 @@ +# 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 .resource import Resource + + +class PublicIPPrefix(Resource): + """Public IP prefix resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP prefix SKU. + :type sku: ~azure.mgmt.network.v2018_08_01.models.PublicIPPrefixSku + :param public_ip_address_version: The public IP address version. Possible + values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2018_08_01.models.IPVersion + :param ip_tags: The list of tags associated with the public IP prefix. + :type ip_tags: list[~azure.mgmt.network.v2018_08_01.models.IpTag] + :param prefix_length: The Length of the Public IP Prefix. + :type prefix_length: int + :param ip_prefix: The allocated Prefix + :type ip_prefix: str + :param public_ip_addresses: The list of all referenced PublicIPAddresses + :type public_ip_addresses: + list[~azure.mgmt.network.v2018_08_01.models.ReferencedPublicIpAddress] + :param resource_guid: The resource GUID property of the public IP prefix + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the Public IP prefix + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPPrefixSku'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'prefix_length': {'key': 'properties.prefixLength', 'type': 'int'}, + 'ip_prefix': {'key': 'properties.ipPrefix', 'type': 'str'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[ReferencedPublicIpAddress]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PublicIPPrefix, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.public_ip_address_version = kwargs.get('public_ip_address_version', None) + self.ip_tags = kwargs.get('ip_tags', None) + self.prefix_length = kwargs.get('prefix_length', None) + self.ip_prefix = kwargs.get('ip_prefix', None) + self.public_ip_addresses = kwargs.get('public_ip_addresses', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) + self.zones = kwargs.get('zones', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_paged.py new file mode 100644 index 000000000000..b6979fe2a2f8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class PublicIPPrefixPaged(Paged): + """ + A paging container for iterating over a list of :class:`PublicIPPrefix ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PublicIPPrefix]'} + } + + def __init__(self, *args, **kwargs): + + super(PublicIPPrefixPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_py3.py new file mode 100644 index 000000000000..e6448c9bbe91 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_py3.py @@ -0,0 +1,94 @@ +# 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 .resource_py3 import Resource + + +class PublicIPPrefix(Resource): + """Public IP prefix resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP prefix SKU. + :type sku: ~azure.mgmt.network.v2018_08_01.models.PublicIPPrefixSku + :param public_ip_address_version: The public IP address version. Possible + values are: 'IPv4' and 'IPv6'. Possible values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2018_08_01.models.IPVersion + :param ip_tags: The list of tags associated with the public IP prefix. + :type ip_tags: list[~azure.mgmt.network.v2018_08_01.models.IpTag] + :param prefix_length: The Length of the Public IP Prefix. + :type prefix_length: int + :param ip_prefix: The allocated Prefix + :type ip_prefix: str + :param public_ip_addresses: The list of all referenced PublicIPAddresses + :type public_ip_addresses: + list[~azure.mgmt.network.v2018_08_01.models.ReferencedPublicIpAddress] + :param resource_guid: The resource GUID property of the public IP prefix + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the Public IP prefix + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPPrefixSku'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'prefix_length': {'key': 'properties.prefixLength', 'type': 'int'}, + 'ip_prefix': {'key': 'properties.ipPrefix', 'type': 'str'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[ReferencedPublicIpAddress]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, public_ip_address_version=None, ip_tags=None, prefix_length: int=None, ip_prefix: str=None, public_ip_addresses=None, resource_guid: str=None, provisioning_state: str=None, etag: str=None, zones=None, **kwargs) -> None: + super(PublicIPPrefix, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.public_ip_address_version = public_ip_address_version + self.ip_tags = ip_tags + self.prefix_length = prefix_length + self.ip_prefix = ip_prefix + self.public_ip_addresses = public_ip_addresses + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.etag = etag + self.zones = zones diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_sku.py new file mode 100644 index 000000000000..8f1ec570e0bb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_sku.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPPrefixSku(Model): + """SKU of a public IP prefix. + + :param name: Name of a public IP prefix SKU. Possible values include: + 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.PublicIPPrefixSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPPrefixSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_sku_py3.py new file mode 100644 index 000000000000..8ade5d9a839a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/public_ip_prefix_sku_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PublicIPPrefixSku(Model): + """SKU of a public IP prefix. + + :param name: Name of a public IP prefix SKU. Possible values include: + 'Standard' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.PublicIPPrefixSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(PublicIPPrefixSku, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/query_troubleshooting_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/query_troubleshooting_parameters.py new file mode 100644 index 000000000000..6ae1924916c6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/query_troubleshooting_parameters.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryTroubleshootingParameters(Model): + """Parameters that define the resource to query the troubleshooting result. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(QueryTroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/query_troubleshooting_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/query_troubleshooting_parameters_py3.py new file mode 100644 index 000000000000..b5fccb87857c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/query_troubleshooting_parameters_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryTroubleshootingParameters(Model): + """Parameters that define the resource to query the troubleshooting result. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(QueryTroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/referenced_public_ip_address.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/referenced_public_ip_address.py new file mode 100644 index 000000000000..76807023de75 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/referenced_public_ip_address.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ReferencedPublicIpAddress(Model): + """ReferencedPublicIpAddress. + + :param id: The PublicIPAddress Reference + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ReferencedPublicIpAddress, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/referenced_public_ip_address_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/referenced_public_ip_address_py3.py new file mode 100644 index 000000000000..3d078b57123a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/referenced_public_ip_address_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ReferencedPublicIpAddress(Model): + """ReferencedPublicIpAddress. + + :param id: The PublicIPAddress Reference + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ReferencedPublicIpAddress, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource.py new file mode 100644 index 000000000000..7dabab29ac9d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Common resource representation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_navigation_link.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_navigation_link.py new file mode 100644 index 000000000000..705698f513f6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_navigation_link.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ResourceNavigationLink(SubResource): + """ResourceNavigationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource + :type link: str + :ivar provisioning_state: Provisioning state of the ResourceNavigationLink + resource. + :vartype provisioning_state: str + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceNavigationLink, self).__init__(**kwargs) + self.linked_resource_type = kwargs.get('linked_resource_type', None) + self.link = kwargs.get('link', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_navigation_link_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_navigation_link_py3.py new file mode 100644 index 000000000000..ba7329e863a1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_navigation_link_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ResourceNavigationLink(SubResource): + """ResourceNavigationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource + :type link: str + :ivar provisioning_state: Provisioning state of the ResourceNavigationLink + resource. + :vartype provisioning_state: str + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, linked_resource_type: str=None, link: str=None, name: str=None, **kwargs) -> None: + super(ResourceNavigationLink, self).__init__(id=id, **kwargs) + self.linked_resource_type = linked_resource_type + self.link = link + self.provisioning_state = None + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_py3.py new file mode 100644 index 000000000000..ae95b78b4f23 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/resource_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Common resource representation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = id + self.name = None + self.type = None + self.location = location + self.tags = tags diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/retention_policy_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/retention_policy_parameters.py new file mode 100644 index 000000000000..28cb43056d47 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/retention_policy_parameters.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RetentionPolicyParameters(Model): + """Parameters that define the retention policy for flow log. + + :param days: Number of days to retain flow log records. Default value: 0 . + :type days: int + :param enabled: Flag to enable/disable retention. Default value: False . + :type enabled: bool + """ + + _attribute_map = { + 'days': {'key': 'days', 'type': 'int'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(RetentionPolicyParameters, self).__init__(**kwargs) + self.days = kwargs.get('days', 0) + self.enabled = kwargs.get('enabled', False) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/retention_policy_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/retention_policy_parameters_py3.py new file mode 100644 index 000000000000..3b2ffc5e741e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/retention_policy_parameters_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class RetentionPolicyParameters(Model): + """Parameters that define the retention policy for flow log. + + :param days: Number of days to retain flow log records. Default value: 0 . + :type days: int + :param enabled: Flag to enable/disable retention. Default value: False . + :type enabled: bool + """ + + _attribute_map = { + 'days': {'key': 'days', 'type': 'int'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, days: int=0, enabled: bool=False, **kwargs) -> None: + super(RetentionPolicyParameters, self).__init__(**kwargs) + self.days = days + self.enabled = enabled diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route.py new file mode 100644 index 000000000000..a29e6bc927e8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route.py @@ -0,0 +1,67 @@ +# 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 .sub_resource import SubResource + + +class Route(SubResource): + """Route resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param address_prefix: The destination CIDR to which the route applies. + :type address_prefix: str + :param next_hop_type: Required. The type of Azure hop the packet should be + sent to. Possible values are: 'VirtualNetworkGateway', 'VnetLocal', + 'Internet', 'VirtualAppliance', and 'None'. Possible values include: + 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', + 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_08_01.models.RouteNextHopType + :param next_hop_ip_address: The IP address packets should be forwarded to. + Next hop values are only allowed in routes where the next hop type is + VirtualAppliance. + :type next_hop_ip_address: str + :param provisioning_state: The provisioning state of the resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'next_hop_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'next_hop_type': {'key': 'properties.nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'properties.nextHopIpAddress', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Route, self).__init__(**kwargs) + self.address_prefix = kwargs.get('address_prefix', None) + self.next_hop_type = kwargs.get('next_hop_type', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter.py new file mode 100644 index 000000000000..6579a20c4c7c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class RouteFilter(Resource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule] + :param peerings: A collection of references to express route circuit + peerings. + :type peerings: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RouteFilter, self).__init__(**kwargs) + self.rules = kwargs.get('rules', None) + self.peerings = kwargs.get('peerings', None) + self.provisioning_state = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_paged.py new file mode 100644 index 000000000000..7c94765a5aa7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RouteFilterPaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteFilter ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteFilter]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteFilterPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_py3.py new file mode 100644 index 000000000000..499c4f6cb832 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class RouteFilter(Resource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule] + :param peerings: A collection of references to express route circuit + peerings. + :type peerings: + list[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, rules=None, peerings=None, **kwargs) -> None: + super(RouteFilter, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.rules = rules + self.peerings = peerings + self.provisioning_state = None + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule.py new file mode 100644 index 000000000000..3b2d9c9f6284 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule.py @@ -0,0 +1,75 @@ +# 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 .sub_resource import SubResource + + +class RouteFilterRule(SubResource): + """Route Filter Rule Resource. + + 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 id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Valid values are: + 'Allow', 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_08_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Valid + value is: 'Community'. Default value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020'] + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param location: Resource location. + :type location: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, **kwargs): + super(RouteFilterRule, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.communities = kwargs.get('communities', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.location = kwargs.get('location', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule_paged.py new file mode 100644 index 000000000000..ba79918f8b99 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RouteFilterRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteFilterRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteFilterRule]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteFilterRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule_py3.py new file mode 100644 index 000000000000..fb76393bc734 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_filter_rule_py3.py @@ -0,0 +1,75 @@ +# 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 .sub_resource_py3 import SubResource + + +class RouteFilterRule(SubResource): + """Route Filter Rule Resource. + + 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 id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Valid values are: + 'Allow', 'Deny'. Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_08_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Valid + value is: 'Community'. Default value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020'] + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the resource. Possible + values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param location: Resource location. + :type location: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, *, access, communities, id: str=None, name: str=None, location: str=None, **kwargs) -> None: + super(RouteFilterRule, self).__init__(id=id, **kwargs) + self.access = access + self.communities = communities + self.provisioning_state = None + self.name = name + self.location = location + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_paged.py new file mode 100644 index 000000000000..f0bebd9ca8fe --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RoutePaged(Paged): + """ + A paging container for iterating over a list of :class:`Route ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Route]'} + } + + def __init__(self, *args, **kwargs): + + super(RoutePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_py3.py new file mode 100644 index 000000000000..e562701c25bb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_py3.py @@ -0,0 +1,67 @@ +# 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 .sub_resource_py3 import SubResource + + +class Route(SubResource): + """Route resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param address_prefix: The destination CIDR to which the route applies. + :type address_prefix: str + :param next_hop_type: Required. The type of Azure hop the packet should be + sent to. Possible values are: 'VirtualNetworkGateway', 'VnetLocal', + 'Internet', 'VirtualAppliance', and 'None'. Possible values include: + 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', + 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2018_08_01.models.RouteNextHopType + :param next_hop_ip_address: The IP address packets should be forwarded to. + Next hop values are only allowed in routes where the next hop type is + VirtualAppliance. + :type next_hop_ip_address: str + :param provisioning_state: The provisioning state of the resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'next_hop_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'next_hop_type': {'key': 'properties.nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'properties.nextHopIpAddress', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, next_hop_type, id: str=None, address_prefix: str=None, next_hop_ip_address: str=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(Route, self).__init__(id=id, **kwargs) + self.address_prefix = address_prefix + self.next_hop_type = next_hop_type + self.next_hop_ip_address = next_hop_ip_address + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table.py new file mode 100644 index 000000000000..135cca0b9a07 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table.py @@ -0,0 +1,71 @@ +# 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 .resource import Resource + + +class RouteTable(Resource): + """Route table resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param routes: Collection of routes contained within a route table. + :type routes: list[~azure.mgmt.network.v2018_08_01.models.Route] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_08_01.models.Subnet] + :param disable_bgp_route_propagation: Gets or sets whether to disable the + routes learned by BGP on that route table. True means disable. + :type disable_bgp_route_propagation: bool + :param provisioning_state: The provisioning state of the resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'routes': {'key': 'properties.routes', 'type': '[Route]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'disable_bgp_route_propagation': {'key': 'properties.disableBgpRoutePropagation', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RouteTable, self).__init__(**kwargs) + self.routes = kwargs.get('routes', None) + self.subnets = None + self.disable_bgp_route_propagation = kwargs.get('disable_bgp_route_propagation', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table_paged.py new file mode 100644 index 000000000000..7fc45791acca --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RouteTablePaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteTable ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteTable]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteTablePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table_py3.py new file mode 100644 index 000000000000..2152a90ac7b9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/route_table_py3.py @@ -0,0 +1,71 @@ +# 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 .resource_py3 import Resource + + +class RouteTable(Resource): + """Route table resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param routes: Collection of routes contained within a route table. + :type routes: list[~azure.mgmt.network.v2018_08_01.models.Route] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_08_01.models.Subnet] + :param disable_bgp_route_propagation: Gets or sets whether to disable the + routes learned by BGP on that route table. True means disable. + :type disable_bgp_route_propagation: bool + :param provisioning_state: The provisioning state of the resource. + Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'routes': {'key': 'properties.routes', 'type': '[Route]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'disable_bgp_route_propagation': {'key': 'properties.disableBgpRoutePropagation', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, routes=None, disable_bgp_route_propagation: bool=None, provisioning_state: str=None, etag: str=None, **kwargs) -> None: + super(RouteTable, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.routes = routes + self.subnets = None + self.disable_bgp_route_propagation = disable_bgp_route_propagation + self.provisioning_state = provisioning_state + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_network_interface.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_network_interface.py new file mode 100644 index 000000000000..fe7b213594a4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_network_interface.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupNetworkInterface(Model): + """Network interface and all its associated security rules. + + :param id: ID of the network interface. + :type id: str + :param security_rule_associations: + :type security_rule_associations: + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleAssociations + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rule_associations': {'key': 'securityRuleAssociations', 'type': 'SecurityRuleAssociations'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupNetworkInterface, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.security_rule_associations = kwargs.get('security_rule_associations', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_network_interface_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_network_interface_py3.py new file mode 100644 index 000000000000..e0067dbe0169 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_network_interface_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupNetworkInterface(Model): + """Network interface and all its associated security rules. + + :param id: ID of the network interface. + :type id: str + :param security_rule_associations: + :type security_rule_associations: + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleAssociations + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rule_associations': {'key': 'securityRuleAssociations', 'type': 'SecurityRuleAssociations'}, + } + + def __init__(self, *, id: str=None, security_rule_associations=None, **kwargs) -> None: + super(SecurityGroupNetworkInterface, self).__init__(**kwargs) + self.id = id + self.security_rule_associations = security_rule_associations diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_parameters.py new file mode 100644 index 000000000000..1d547b0b0e2b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_parameters.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupViewParameters(Model): + """Parameters that define the VM to check security groups for. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. ID of the target VM. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupViewParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_parameters_py3.py new file mode 100644 index 000000000000..7ccc48017444 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_parameters_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupViewParameters(Model): + """Parameters that define the VM to check security groups for. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. ID of the target VM. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(SecurityGroupViewParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_result.py new file mode 100644 index 000000000000..fef9138f581c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_result.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupViewResult(Model): + """The information about security rules applied to the specified VM. + + :param network_interfaces: List of network interfaces on the specified VM. + :type network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.SecurityGroupNetworkInterface] + """ + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[SecurityGroupNetworkInterface]'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupViewResult, self).__init__(**kwargs) + self.network_interfaces = kwargs.get('network_interfaces', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_result_py3.py new file mode 100644 index 000000000000..3baa994c0dcb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_group_view_result_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityGroupViewResult(Model): + """The information about security rules applied to the specified VM. + + :param network_interfaces: List of network interfaces on the specified VM. + :type network_interfaces: + list[~azure.mgmt.network.v2018_08_01.models.SecurityGroupNetworkInterface] + """ + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[SecurityGroupNetworkInterface]'}, + } + + def __init__(self, *, network_interfaces=None, **kwargs) -> None: + super(SecurityGroupViewResult, self).__init__(**kwargs) + self.network_interfaces = network_interfaces diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule.py new file mode 100644 index 000000000000..786a7a3102ef --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule.py @@ -0,0 +1,137 @@ +# 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 .sub_resource import SubResource + + +class SecurityRule(SubResource): + """Network security rule. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param protocol: Required. Network protocol this rule applies to. Possible + values are 'Tcp', 'Udp', and '*'. Possible values include: 'Tcp', 'Udp', + '*' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleProtocol + :param source_port_range: The source port or range. Integer or range + between 0 and 65535. Asterix '*' can also be used to match all ports. + :type source_port_range: str + :param destination_port_range: The destination port or range. Integer or + range between 0 and 65535. Asterix '*' can also be used to match all + ports. + :type destination_port_range: str + :param source_address_prefix: The CIDR or source IP range. Asterix '*' can + also be used to match all source IPs. Default tags such as + 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If + this is an ingress rule, specifies where network traffic originates from. + :type source_address_prefix: str + :param source_address_prefixes: The CIDR or source IP ranges. + :type source_address_prefixes: list[str] + :param source_application_security_groups: The application security group + specified as source. + :type source_application_security_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + :param destination_address_prefix: The destination address prefix. CIDR or + destination IP range. Asterix '*' can also be used to match all source + IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and + 'Internet' can also be used. + :type destination_address_prefix: str + :param destination_address_prefixes: The destination address prefixes. + CIDR or destination IP ranges. + :type destination_address_prefixes: list[str] + :param destination_application_security_groups: The application security + group specified as destination. + :type destination_application_security_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + :param source_port_ranges: The source port ranges. + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. + :type destination_port_ranges: list[str] + :param access: Required. The network traffic is allowed or denied. + Possible values are: 'Allow' and 'Deny'. Possible values include: 'Allow', + 'Deny' + :type access: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleAccess + :param priority: The priority of the rule. The value can be between 100 + and 4096. The priority number must be unique for each rule in the + collection. The lower the priority number, the higher the priority of the + rule. + :type priority: int + :param direction: Required. The direction of the rule. The direction + specifies if rule will be evaluated on incoming or outcoming traffic. + Possible values are: 'Inbound' and 'Outbound'. Possible values include: + 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleDirection + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'access': {'required': True}, + 'direction': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'source_port_range': {'key': 'properties.sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'properties.destinationPortRange', 'type': 'str'}, + 'source_address_prefix': {'key': 'properties.sourceAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'properties.sourceAddressPrefixes', 'type': '[str]'}, + 'source_application_security_groups': {'key': 'properties.sourceApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'destination_address_prefix': {'key': 'properties.destinationAddressPrefix', 'type': 'str'}, + 'destination_address_prefixes': {'key': 'properties.destinationAddressPrefixes', 'type': '[str]'}, + 'destination_application_security_groups': {'key': 'properties.destinationApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'source_port_ranges': {'key': 'properties.sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'properties.destinationPortRanges', 'type': '[str]'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'direction': {'key': 'properties.direction', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityRule, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.protocol = kwargs.get('protocol', None) + self.source_port_range = kwargs.get('source_port_range', None) + self.destination_port_range = kwargs.get('destination_port_range', None) + self.source_address_prefix = kwargs.get('source_address_prefix', None) + self.source_address_prefixes = kwargs.get('source_address_prefixes', None) + self.source_application_security_groups = kwargs.get('source_application_security_groups', None) + self.destination_address_prefix = kwargs.get('destination_address_prefix', None) + self.destination_address_prefixes = kwargs.get('destination_address_prefixes', None) + self.destination_application_security_groups = kwargs.get('destination_application_security_groups', None) + self.source_port_ranges = kwargs.get('source_port_ranges', None) + self.destination_port_ranges = kwargs.get('destination_port_ranges', None) + self.access = kwargs.get('access', None) + self.priority = kwargs.get('priority', None) + self.direction = kwargs.get('direction', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_associations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_associations.py new file mode 100644 index 000000000000..c5949a8e4d8c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_associations.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityRuleAssociations(Model): + """All security rules associated with the network interface. + + :param network_interface_association: + :type network_interface_association: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceAssociation + :param subnet_association: + :type subnet_association: + ~azure.mgmt.network.v2018_08_01.models.SubnetAssociation + :param default_security_rules: Collection of default security rules of the + network security group. + :type default_security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + :param effective_security_rules: Collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityRule] + """ + + _attribute_map = { + 'network_interface_association': {'key': 'networkInterfaceAssociation', 'type': 'NetworkInterfaceAssociation'}, + 'subnet_association': {'key': 'subnetAssociation', 'type': 'SubnetAssociation'}, + 'default_security_rules': {'key': 'defaultSecurityRules', 'type': '[SecurityRule]'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + } + + def __init__(self, **kwargs): + super(SecurityRuleAssociations, self).__init__(**kwargs) + self.network_interface_association = kwargs.get('network_interface_association', None) + self.subnet_association = kwargs.get('subnet_association', None) + self.default_security_rules = kwargs.get('default_security_rules', None) + self.effective_security_rules = kwargs.get('effective_security_rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_associations_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_associations_py3.py new file mode 100644 index 000000000000..bbf8af579762 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_associations_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityRuleAssociations(Model): + """All security rules associated with the network interface. + + :param network_interface_association: + :type network_interface_association: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceAssociation + :param subnet_association: + :type subnet_association: + ~azure.mgmt.network.v2018_08_01.models.SubnetAssociation + :param default_security_rules: Collection of default security rules of the + network security group. + :type default_security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + :param effective_security_rules: Collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityRule] + """ + + _attribute_map = { + 'network_interface_association': {'key': 'networkInterfaceAssociation', 'type': 'NetworkInterfaceAssociation'}, + 'subnet_association': {'key': 'subnetAssociation', 'type': 'SubnetAssociation'}, + 'default_security_rules': {'key': 'defaultSecurityRules', 'type': '[SecurityRule]'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + } + + def __init__(self, *, network_interface_association=None, subnet_association=None, default_security_rules=None, effective_security_rules=None, **kwargs) -> None: + super(SecurityRuleAssociations, self).__init__(**kwargs) + self.network_interface_association = network_interface_association + self.subnet_association = subnet_association + self.default_security_rules = default_security_rules + self.effective_security_rules = effective_security_rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_paged.py new file mode 100644 index 000000000000..ad628fb0c621 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SecurityRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`SecurityRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SecurityRule]'} + } + + def __init__(self, *args, **kwargs): + + super(SecurityRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_py3.py new file mode 100644 index 000000000000..e7540ec3b34f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/security_rule_py3.py @@ -0,0 +1,137 @@ +# 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 .sub_resource_py3 import SubResource + + +class SecurityRule(SubResource): + """Network security rule. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param protocol: Required. Network protocol this rule applies to. Possible + values are 'Tcp', 'Udp', and '*'. Possible values include: 'Tcp', 'Udp', + '*' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleProtocol + :param source_port_range: The source port or range. Integer or range + between 0 and 65535. Asterix '*' can also be used to match all ports. + :type source_port_range: str + :param destination_port_range: The destination port or range. Integer or + range between 0 and 65535. Asterix '*' can also be used to match all + ports. + :type destination_port_range: str + :param source_address_prefix: The CIDR or source IP range. Asterix '*' can + also be used to match all source IPs. Default tags such as + 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If + this is an ingress rule, specifies where network traffic originates from. + :type source_address_prefix: str + :param source_address_prefixes: The CIDR or source IP ranges. + :type source_address_prefixes: list[str] + :param source_application_security_groups: The application security group + specified as source. + :type source_application_security_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + :param destination_address_prefix: The destination address prefix. CIDR or + destination IP range. Asterix '*' can also be used to match all source + IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and + 'Internet' can also be used. + :type destination_address_prefix: str + :param destination_address_prefixes: The destination address prefixes. + CIDR or destination IP ranges. + :type destination_address_prefixes: list[str] + :param destination_application_security_groups: The application security + group specified as destination. + :type destination_application_security_groups: + list[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + :param source_port_ranges: The source port ranges. + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. + :type destination_port_ranges: list[str] + :param access: Required. The network traffic is allowed or denied. + Possible values are: 'Allow' and 'Deny'. Possible values include: 'Allow', + 'Deny' + :type access: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleAccess + :param priority: The priority of the rule. The value can be between 100 + and 4096. The priority number must be unique for each rule in the + collection. The lower the priority number, the higher the priority of the + rule. + :type priority: int + :param direction: Required. The direction of the rule. The direction + specifies if rule will be evaluated on incoming or outcoming traffic. + Possible values are: 'Inbound' and 'Outbound'. Possible values include: + 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2018_08_01.models.SecurityRuleDirection + :param provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'access': {'required': True}, + 'direction': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'source_port_range': {'key': 'properties.sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'properties.destinationPortRange', 'type': 'str'}, + 'source_address_prefix': {'key': 'properties.sourceAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'properties.sourceAddressPrefixes', 'type': '[str]'}, + 'source_application_security_groups': {'key': 'properties.sourceApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'destination_address_prefix': {'key': 'properties.destinationAddressPrefix', 'type': 'str'}, + 'destination_address_prefixes': {'key': 'properties.destinationAddressPrefixes', 'type': '[str]'}, + 'destination_application_security_groups': {'key': 'properties.destinationApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'source_port_ranges': {'key': 'properties.sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'properties.destinationPortRanges', 'type': '[str]'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'direction': {'key': 'properties.direction', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, access, direction, id: str=None, description: str=None, source_port_range: str=None, destination_port_range: str=None, source_address_prefix: str=None, source_address_prefixes=None, source_application_security_groups=None, destination_address_prefix: str=None, destination_address_prefixes=None, destination_application_security_groups=None, source_port_ranges=None, destination_port_ranges=None, priority: int=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(SecurityRule, self).__init__(id=id, **kwargs) + self.description = description + self.protocol = protocol + self.source_port_range = source_port_range + self.destination_port_range = destination_port_range + self.source_address_prefix = source_address_prefix + self.source_address_prefixes = source_address_prefixes + self.source_application_security_groups = source_application_security_groups + self.destination_address_prefix = destination_address_prefix + self.destination_address_prefixes = destination_address_prefixes + self.destination_application_security_groups = destination_application_security_groups + self.source_port_ranges = source_port_ranges + self.destination_port_ranges = destination_port_ranges + self.access = access + self.priority = priority + self.direction = direction + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_association_link.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_association_link.py new file mode 100644 index 000000000000..b8d1818022dd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_association_link.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class ServiceAssociationLink(SubResource): + """ServiceAssociationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource. + :type link: str + :ivar provisioning_state: Provisioning state of the ServiceAssociationLink + resource. + :vartype provisioning_state: str + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceAssociationLink, self).__init__(**kwargs) + self.linked_resource_type = kwargs.get('linked_resource_type', None) + self.link = kwargs.get('link', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_association_link_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_association_link_py3.py new file mode 100644 index 000000000000..2e01412e05a1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_association_link_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class ServiceAssociationLink(SubResource): + """ServiceAssociationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource. + :type link: str + :ivar provisioning_state: Provisioning state of the ServiceAssociationLink + resource. + :vartype provisioning_state: str + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, linked_resource_type: str=None, link: str=None, name: str=None, **kwargs) -> None: + super(ServiceAssociationLink, self).__init__(id=id, **kwargs) + self.linked_resource_type = linked_resource_type + self.link = link + self.provisioning_state = None + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy.py new file mode 100644 index 000000000000..a711ba0da779 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy.py @@ -0,0 +1,75 @@ +# 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 .resource import Resource + + +class ServiceEndpointPolicy(Resource): + """Service End point policy resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_endpoint_policy_definitions: A collection of service + endpoint policy definitions of the service endpoint policy. + :type service_endpoint_policy_definitions: + list[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyDefinition] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_08_01.models.Subnet] + :ivar resource_guid: The resource GUID property of the service endpoint + policy resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the service endpoint + policy. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_endpoint_policy_definitions': {'key': 'properties.serviceEndpointPolicyDefinitions', 'type': '[ServiceEndpointPolicyDefinition]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPolicy, self).__init__(**kwargs) + self.service_endpoint_policy_definitions = kwargs.get('service_endpoint_policy_definitions', None) + self.subnets = None + self.resource_guid = None + self.provisioning_state = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition.py new file mode 100644 index 000000000000..45d6ab8ff556 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition.py @@ -0,0 +1,62 @@ +# 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 .sub_resource import SubResource + + +class ServiceEndpointPolicyDefinition(SubResource): + """Service Endpoint policy definitions. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param service: service endpoint name. + :type service: str + :param service_resources: A list of service resources. + :type service_resources: list[str] + :ivar provisioning_state: The provisioning state of the service end point + policy definition. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'service': {'key': 'properties.service', 'type': 'str'}, + 'service_resources': {'key': 'properties.serviceResources', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPolicyDefinition, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.service = kwargs.get('service', None) + self.service_resources = kwargs.get('service_resources', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition_paged.py new file mode 100644 index 000000000000..e8dbbd0d9a8b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ServiceEndpointPolicyDefinitionPaged(Paged): + """ + A paging container for iterating over a list of :class:`ServiceEndpointPolicyDefinition ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ServiceEndpointPolicyDefinition]'} + } + + def __init__(self, *args, **kwargs): + + super(ServiceEndpointPolicyDefinitionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition_py3.py new file mode 100644 index 000000000000..e8c274a6a823 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_definition_py3.py @@ -0,0 +1,62 @@ +# 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 .sub_resource_py3 import SubResource + + +class ServiceEndpointPolicyDefinition(SubResource): + """Service Endpoint policy definitions. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param service: service endpoint name. + :type service: str + :param service_resources: A list of service resources. + :type service_resources: list[str] + :ivar provisioning_state: The provisioning state of the service end point + policy definition. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'service': {'key': 'properties.service', 'type': 'str'}, + 'service_resources': {'key': 'properties.serviceResources', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, description: str=None, service: str=None, service_resources=None, name: str=None, etag: str=None, **kwargs) -> None: + super(ServiceEndpointPolicyDefinition, self).__init__(id=id, **kwargs) + self.description = description + self.service = service + self.service_resources = service_resources + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_paged.py new file mode 100644 index 000000000000..3312d08b51e5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ServiceEndpointPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`ServiceEndpointPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ServiceEndpointPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(ServiceEndpointPolicyPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_py3.py new file mode 100644 index 000000000000..d67c88ea5ec4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_policy_py3.py @@ -0,0 +1,75 @@ +# 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 .resource_py3 import Resource + + +class ServiceEndpointPolicy(Resource): + """Service End point policy resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_endpoint_policy_definitions: A collection of service + endpoint policy definitions of the service endpoint policy. + :type service_endpoint_policy_definitions: + list[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyDefinition] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2018_08_01.models.Subnet] + :ivar resource_guid: The resource GUID property of the service endpoint + policy resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the service endpoint + policy. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_endpoint_policy_definitions': {'key': 'properties.serviceEndpointPolicyDefinitions', 'type': '[ServiceEndpointPolicyDefinition]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, service_endpoint_policy_definitions=None, etag: str=None, **kwargs) -> None: + super(ServiceEndpointPolicy, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.service_endpoint_policy_definitions = service_endpoint_policy_definitions + self.subnets = None + self.resource_guid = None + self.provisioning_state = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_properties_format.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_properties_format.py new file mode 100644 index 000000000000..87ca01e64540 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_properties_format.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceEndpointPropertiesFormat(Model): + """The service endpoint properties. + + :param service: The type of the endpoint service. + :type service: str + :param locations: A list of locations. + :type locations: list[str] + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + """ + + _attribute_map = { + 'service': {'key': 'service', 'type': 'str'}, + 'locations': {'key': 'locations', 'type': '[str]'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPropertiesFormat, self).__init__(**kwargs) + self.service = kwargs.get('service', None) + self.locations = kwargs.get('locations', None) + self.provisioning_state = kwargs.get('provisioning_state', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_properties_format_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_properties_format_py3.py new file mode 100644 index 000000000000..8d3d2e5e8347 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/service_endpoint_properties_format_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceEndpointPropertiesFormat(Model): + """The service endpoint properties. + + :param service: The type of the endpoint service. + :type service: str + :param locations: A list of locations. + :type locations: list[str] + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + """ + + _attribute_map = { + 'service': {'key': 'service', 'type': 'str'}, + 'locations': {'key': 'locations', 'type': '[str]'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + } + + def __init__(self, *, service: str=None, locations=None, provisioning_state: str=None, **kwargs) -> None: + super(ServiceEndpointPropertiesFormat, self).__init__(**kwargs) + self.service = service + self.locations = locations + self.provisioning_state = provisioning_state diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/sub_resource.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/sub_resource.py new file mode 100644 index 000000000000..6ab81f55f21b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/sub_resource.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResource(Model): + """Reference to another subresource. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SubResource, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/sub_resource_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/sub_resource_py3.py new file mode 100644 index 000000000000..8f4c4c816061 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/sub_resource_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubResource(Model): + """Reference to another subresource. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(SubResource, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet.py new file mode 100644 index 000000000000..880201b9346a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet.py @@ -0,0 +1,118 @@ +# 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 .sub_resource import SubResource + + +class Subnet(SubResource): + """Subnet in a virtual network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param address_prefix: The address prefix for the subnet. + :type address_prefix: str + :param address_prefixes: List of address prefixes for the subnet. + :type address_prefixes: list[str] + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup + :param route_table: The reference of the RouteTable resource. + :type route_table: ~azure.mgmt.network.v2018_08_01.models.RouteTable + :param service_endpoints: An array of service endpoints. + :type service_endpoints: + list[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPropertiesFormat] + :param service_endpoint_policies: An array of service endpoint policies. + :type service_endpoint_policies: + list[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy] + :ivar interface_endpoints: An array of references to interface endpoints + :vartype interface_endpoints: + list[~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint] + :ivar ip_configurations: Gets an array of references to the network + interface IP configurations using subnet. + :vartype ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.IPConfiguration] + :ivar ip_configuration_profiles: Array of IP configuration profiles which + reference this subnet. + :vartype ip_configuration_profiles: + list[~azure.mgmt.network.v2018_08_01.models.IPConfigurationProfile] + :param resource_navigation_links: Gets an array of references to the + external resources using subnet. + :type resource_navigation_links: + list[~azure.mgmt.network.v2018_08_01.models.ResourceNavigationLink] + :param service_association_links: Gets an array of references to services + injecting into this subnet. + :type service_association_links: + list[~azure.mgmt.network.v2018_08_01.models.ServiceAssociationLink] + :param delegations: Gets an array of references to the delegations on the + subnet. + :type delegations: list[~azure.mgmt.network.v2018_08_01.models.Delegation] + :ivar purpose: A read-only string identifying the intention of use for + this subnet based on delegations and other user-defined properties. + :vartype purpose: str + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'interface_endpoints': {'readonly': True}, + 'ip_configurations': {'readonly': True}, + 'ip_configuration_profiles': {'readonly': True}, + 'purpose': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'address_prefixes': {'key': 'properties.addressPrefixes', 'type': '[str]'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'RouteTable'}, + 'service_endpoints': {'key': 'properties.serviceEndpoints', 'type': '[ServiceEndpointPropertiesFormat]'}, + 'service_endpoint_policies': {'key': 'properties.serviceEndpointPolicies', 'type': '[ServiceEndpointPolicy]'}, + 'interface_endpoints': {'key': 'properties.interfaceEndpoints', 'type': '[InterfaceEndpoint]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfiguration]'}, + 'ip_configuration_profiles': {'key': 'properties.ipConfigurationProfiles', 'type': '[IPConfigurationProfile]'}, + 'resource_navigation_links': {'key': 'properties.resourceNavigationLinks', 'type': '[ResourceNavigationLink]'}, + 'service_association_links': {'key': 'properties.serviceAssociationLinks', 'type': '[ServiceAssociationLink]'}, + 'delegations': {'key': 'properties.delegations', 'type': '[Delegation]'}, + 'purpose': {'key': 'properties.purpose', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Subnet, self).__init__(**kwargs) + self.address_prefix = kwargs.get('address_prefix', None) + self.address_prefixes = kwargs.get('address_prefixes', None) + self.network_security_group = kwargs.get('network_security_group', None) + self.route_table = kwargs.get('route_table', None) + self.service_endpoints = kwargs.get('service_endpoints', None) + self.service_endpoint_policies = kwargs.get('service_endpoint_policies', None) + self.interface_endpoints = None + self.ip_configurations = None + self.ip_configuration_profiles = None + self.resource_navigation_links = kwargs.get('resource_navigation_links', None) + self.service_association_links = kwargs.get('service_association_links', None) + self.delegations = kwargs.get('delegations', None) + self.purpose = None + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_association.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_association.py new file mode 100644 index 000000000000..790bdef2fee7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_association.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubnetAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Subnet ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, **kwargs): + super(SubnetAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = kwargs.get('security_rules', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_association_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_association_py3.py new file mode 100644 index 000000000000..e43e4e85d5e9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_association_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SubnetAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Subnet ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, *, security_rules=None, **kwargs) -> None: + super(SubnetAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = security_rules diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_paged.py new file mode 100644 index 000000000000..d65b2ab00d6b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SubnetPaged(Paged): + """ + A paging container for iterating over a list of :class:`Subnet ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Subnet]'} + } + + def __init__(self, *args, **kwargs): + + super(SubnetPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_py3.py new file mode 100644 index 000000000000..144f4007696e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/subnet_py3.py @@ -0,0 +1,118 @@ +# 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 .sub_resource_py3 import SubResource + + +class Subnet(SubResource): + """Subnet in a virtual network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param address_prefix: The address prefix for the subnet. + :type address_prefix: str + :param address_prefixes: List of address prefixes for the subnet. + :type address_prefixes: list[str] + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup + :param route_table: The reference of the RouteTable resource. + :type route_table: ~azure.mgmt.network.v2018_08_01.models.RouteTable + :param service_endpoints: An array of service endpoints. + :type service_endpoints: + list[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPropertiesFormat] + :param service_endpoint_policies: An array of service endpoint policies. + :type service_endpoint_policies: + list[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy] + :ivar interface_endpoints: An array of references to interface endpoints + :vartype interface_endpoints: + list[~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint] + :ivar ip_configurations: Gets an array of references to the network + interface IP configurations using subnet. + :vartype ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.IPConfiguration] + :ivar ip_configuration_profiles: Array of IP configuration profiles which + reference this subnet. + :vartype ip_configuration_profiles: + list[~azure.mgmt.network.v2018_08_01.models.IPConfigurationProfile] + :param resource_navigation_links: Gets an array of references to the + external resources using subnet. + :type resource_navigation_links: + list[~azure.mgmt.network.v2018_08_01.models.ResourceNavigationLink] + :param service_association_links: Gets an array of references to services + injecting into this subnet. + :type service_association_links: + list[~azure.mgmt.network.v2018_08_01.models.ServiceAssociationLink] + :param delegations: Gets an array of references to the delegations on the + subnet. + :type delegations: list[~azure.mgmt.network.v2018_08_01.models.Delegation] + :ivar purpose: A read-only string identifying the intention of use for + this subnet based on delegations and other user-defined properties. + :vartype purpose: str + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'interface_endpoints': {'readonly': True}, + 'ip_configurations': {'readonly': True}, + 'ip_configuration_profiles': {'readonly': True}, + 'purpose': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'address_prefixes': {'key': 'properties.addressPrefixes', 'type': '[str]'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'RouteTable'}, + 'service_endpoints': {'key': 'properties.serviceEndpoints', 'type': '[ServiceEndpointPropertiesFormat]'}, + 'service_endpoint_policies': {'key': 'properties.serviceEndpointPolicies', 'type': '[ServiceEndpointPolicy]'}, + 'interface_endpoints': {'key': 'properties.interfaceEndpoints', 'type': '[InterfaceEndpoint]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfiguration]'}, + 'ip_configuration_profiles': {'key': 'properties.ipConfigurationProfiles', 'type': '[IPConfigurationProfile]'}, + 'resource_navigation_links': {'key': 'properties.resourceNavigationLinks', 'type': '[ResourceNavigationLink]'}, + 'service_association_links': {'key': 'properties.serviceAssociationLinks', 'type': '[ServiceAssociationLink]'}, + 'delegations': {'key': 'properties.delegations', 'type': '[Delegation]'}, + 'purpose': {'key': 'properties.purpose', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, address_prefix: str=None, address_prefixes=None, network_security_group=None, route_table=None, service_endpoints=None, service_endpoint_policies=None, resource_navigation_links=None, service_association_links=None, delegations=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(Subnet, self).__init__(id=id, **kwargs) + self.address_prefix = address_prefix + self.address_prefixes = address_prefixes + self.network_security_group = network_security_group + self.route_table = route_table + self.service_endpoints = service_endpoints + self.service_endpoint_policies = service_endpoint_policies + self.interface_endpoints = None + self.ip_configurations = None + self.ip_configuration_profiles = None + self.resource_navigation_links = resource_navigation_links + self.service_association_links = service_association_links + self.delegations = delegations + self.purpose = None + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tags_object.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tags_object.py new file mode 100644 index 000000000000..2966ec220f94 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tags_object.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagsObject(Model): + """Tags object for patch operations. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(TagsObject, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tags_object_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tags_object_py3.py new file mode 100644 index 000000000000..8be0bb4a15d7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tags_object_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagsObject(Model): + """Tags object for patch operations. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(TagsObject, self).__init__(**kwargs) + self.tags = tags diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology.py new file mode 100644 index 000000000000..7dbc1eec9606 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Topology(Model): + """Topology of the specified resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: GUID representing the operation id. + :vartype id: str + :ivar created_date_time: The datetime when the topology was initially + created for the resource group. + :vartype created_date_time: datetime + :ivar last_modified: The datetime when the topology was last modified. + :vartype last_modified: datetime + :param resources: + :type resources: + list[~azure.mgmt.network.v2018_08_01.models.TopologyResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'created_date_time': {'readonly': True}, + 'last_modified': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'resources': {'key': 'resources', 'type': '[TopologyResource]'}, + } + + def __init__(self, **kwargs): + super(Topology, self).__init__(**kwargs) + self.id = None + self.created_date_time = None + self.last_modified = None + self.resources = kwargs.get('resources', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_association.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_association.py new file mode 100644 index 000000000000..c6c67ae995cb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_association.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyAssociation(Model): + """Resources that have an association with the parent resource. + + :param name: The name of the resource that is associated with the parent + resource. + :type name: str + :param resource_id: The ID of the resource that is associated with the + parent resource. + :type resource_id: str + :param association_type: The association type of the child resource to the + parent resource. Possible values include: 'Associated', 'Contains' + :type association_type: str or + ~azure.mgmt.network.v2018_08_01.models.AssociationType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'association_type': {'key': 'associationType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TopologyAssociation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.resource_id = kwargs.get('resource_id', None) + self.association_type = kwargs.get('association_type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_association_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_association_py3.py new file mode 100644 index 000000000000..27821e94c9f1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_association_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyAssociation(Model): + """Resources that have an association with the parent resource. + + :param name: The name of the resource that is associated with the parent + resource. + :type name: str + :param resource_id: The ID of the resource that is associated with the + parent resource. + :type resource_id: str + :param association_type: The association type of the child resource to the + parent resource. Possible values include: 'Associated', 'Contains' + :type association_type: str or + ~azure.mgmt.network.v2018_08_01.models.AssociationType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'association_type': {'key': 'associationType', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, resource_id: str=None, association_type=None, **kwargs) -> None: + super(TopologyAssociation, self).__init__(**kwargs) + self.name = name + self.resource_id = resource_id + self.association_type = association_type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_parameters.py new file mode 100644 index 000000000000..803e854461e0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_parameters.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyParameters(Model): + """Parameters that define the representation of topology. + + :param target_resource_group_name: The name of the target resource group + to perform topology on. + :type target_resource_group_name: str + :param target_virtual_network: The reference of the Virtual Network + resource. + :type target_virtual_network: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param target_subnet: The reference of the Subnet resource. + :type target_subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + """ + + _attribute_map = { + 'target_resource_group_name': {'key': 'targetResourceGroupName', 'type': 'str'}, + 'target_virtual_network': {'key': 'targetVirtualNetwork', 'type': 'SubResource'}, + 'target_subnet': {'key': 'targetSubnet', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(TopologyParameters, self).__init__(**kwargs) + self.target_resource_group_name = kwargs.get('target_resource_group_name', None) + self.target_virtual_network = kwargs.get('target_virtual_network', None) + self.target_subnet = kwargs.get('target_subnet', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_parameters_py3.py new file mode 100644 index 000000000000..8db9406e4670 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_parameters_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyParameters(Model): + """Parameters that define the representation of topology. + + :param target_resource_group_name: The name of the target resource group + to perform topology on. + :type target_resource_group_name: str + :param target_virtual_network: The reference of the Virtual Network + resource. + :type target_virtual_network: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param target_subnet: The reference of the Subnet resource. + :type target_subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + """ + + _attribute_map = { + 'target_resource_group_name': {'key': 'targetResourceGroupName', 'type': 'str'}, + 'target_virtual_network': {'key': 'targetVirtualNetwork', 'type': 'SubResource'}, + 'target_subnet': {'key': 'targetSubnet', 'type': 'SubResource'}, + } + + def __init__(self, *, target_resource_group_name: str=None, target_virtual_network=None, target_subnet=None, **kwargs) -> None: + super(TopologyParameters, self).__init__(**kwargs) + self.target_resource_group_name = target_resource_group_name + self.target_virtual_network = target_virtual_network + self.target_subnet = target_subnet diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_py3.py new file mode 100644 index 000000000000..d5bf57239698 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Topology(Model): + """Topology of the specified resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: GUID representing the operation id. + :vartype id: str + :ivar created_date_time: The datetime when the topology was initially + created for the resource group. + :vartype created_date_time: datetime + :ivar last_modified: The datetime when the topology was last modified. + :vartype last_modified: datetime + :param resources: + :type resources: + list[~azure.mgmt.network.v2018_08_01.models.TopologyResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'created_date_time': {'readonly': True}, + 'last_modified': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'resources': {'key': 'resources', 'type': '[TopologyResource]'}, + } + + def __init__(self, *, resources=None, **kwargs) -> None: + super(Topology, self).__init__(**kwargs) + self.id = None + self.created_date_time = None + self.last_modified = None + self.resources = resources diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_resource.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_resource.py new file mode 100644 index 000000000000..a09d27a0e700 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_resource.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyResource(Model): + """The network resource topology information for the given resource group. + + :param name: Name of the resource. + :type name: str + :param id: ID of the resource. + :type id: str + :param location: Resource location. + :type location: str + :param associations: Holds the associations the resource has with other + resources in the resource group. + :type associations: + list[~azure.mgmt.network.v2018_08_01.models.TopologyAssociation] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'associations': {'key': 'associations', 'type': '[TopologyAssociation]'}, + } + + def __init__(self, **kwargs): + super(TopologyResource, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.location = kwargs.get('location', None) + self.associations = kwargs.get('associations', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_resource_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_resource_py3.py new file mode 100644 index 000000000000..d341e6b76fa8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/topology_resource_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyResource(Model): + """The network resource topology information for the given resource group. + + :param name: Name of the resource. + :type name: str + :param id: ID of the resource. + :type id: str + :param location: Resource location. + :type location: str + :param associations: Holds the associations the resource has with other + resources in the resource group. + :type associations: + list[~azure.mgmt.network.v2018_08_01.models.TopologyAssociation] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'associations': {'key': 'associations', 'type': '[TopologyAssociation]'}, + } + + def __init__(self, *, name: str=None, id: str=None, location: str=None, associations=None, **kwargs) -> None: + super(TopologyResource, self).__init__(**kwargs) + self.name = name + self.id = id + self.location = location + self.associations = associations diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_configuration_properties.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_configuration_properties.py new file mode 100644 index 000000000000..07ec840d9ed3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_configuration_properties.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficAnalyticsConfigurationProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Flag to enable/disable traffic analytics. + :type enabled: bool + :param workspace_id: Required. The resource guid of the attached workspace + :type workspace_id: str + :param workspace_region: Required. The location of the attached workspace + :type workspace_region: str + :param workspace_resource_id: Required. Resource Id of the attached + workspace + :type workspace_resource_id: str + """ + + _validation = { + 'enabled': {'required': True}, + 'workspace_id': {'required': True}, + 'workspace_region': {'required': True}, + 'workspace_resource_id': {'required': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'workspace_region': {'key': 'workspaceRegion', 'type': 'str'}, + 'workspace_resource_id': {'key': 'workspaceResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TrafficAnalyticsConfigurationProperties, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.workspace_id = kwargs.get('workspace_id', None) + self.workspace_region = kwargs.get('workspace_region', None) + self.workspace_resource_id = kwargs.get('workspace_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_configuration_properties_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_configuration_properties_py3.py new file mode 100644 index 000000000000..bbc5ad2372c3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_configuration_properties_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficAnalyticsConfigurationProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Flag to enable/disable traffic analytics. + :type enabled: bool + :param workspace_id: Required. The resource guid of the attached workspace + :type workspace_id: str + :param workspace_region: Required. The location of the attached workspace + :type workspace_region: str + :param workspace_resource_id: Required. Resource Id of the attached + workspace + :type workspace_resource_id: str + """ + + _validation = { + 'enabled': {'required': True}, + 'workspace_id': {'required': True}, + 'workspace_region': {'required': True}, + 'workspace_resource_id': {'required': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'workspace_region': {'key': 'workspaceRegion', 'type': 'str'}, + 'workspace_resource_id': {'key': 'workspaceResourceId', 'type': 'str'}, + } + + def __init__(self, *, enabled: bool, workspace_id: str, workspace_region: str, workspace_resource_id: str, **kwargs) -> None: + super(TrafficAnalyticsConfigurationProperties, self).__init__(**kwargs) + self.enabled = enabled + self.workspace_id = workspace_id + self.workspace_region = workspace_region + self.workspace_resource_id = workspace_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_properties.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_properties.py new file mode 100644 index 000000000000..cc28ea69561d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_properties.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficAnalyticsProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param network_watcher_flow_analytics_configuration: Required. + :type network_watcher_flow_analytics_configuration: + ~azure.mgmt.network.v2018_08_01.models.TrafficAnalyticsConfigurationProperties + """ + + _validation = { + 'network_watcher_flow_analytics_configuration': {'required': True}, + } + + _attribute_map = { + 'network_watcher_flow_analytics_configuration': {'key': 'networkWatcherFlowAnalyticsConfiguration', 'type': 'TrafficAnalyticsConfigurationProperties'}, + } + + def __init__(self, **kwargs): + super(TrafficAnalyticsProperties, self).__init__(**kwargs) + self.network_watcher_flow_analytics_configuration = kwargs.get('network_watcher_flow_analytics_configuration', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_properties_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_properties_py3.py new file mode 100644 index 000000000000..27e2dde067e1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_analytics_properties_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficAnalyticsProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param network_watcher_flow_analytics_configuration: Required. + :type network_watcher_flow_analytics_configuration: + ~azure.mgmt.network.v2018_08_01.models.TrafficAnalyticsConfigurationProperties + """ + + _validation = { + 'network_watcher_flow_analytics_configuration': {'required': True}, + } + + _attribute_map = { + 'network_watcher_flow_analytics_configuration': {'key': 'networkWatcherFlowAnalyticsConfiguration', 'type': 'TrafficAnalyticsConfigurationProperties'}, + } + + def __init__(self, *, network_watcher_flow_analytics_configuration, **kwargs) -> None: + super(TrafficAnalyticsProperties, self).__init__(**kwargs) + self.network_watcher_flow_analytics_configuration = network_watcher_flow_analytics_configuration diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_query.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_query.py new file mode 100644 index 000000000000..1ba916ade144 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_query.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficQuery(Model): + """Parameters to compare with network configuration. + + All required parameters must be populated in order to send to Azure. + + :param direction: Required. The direction of the traffic. Accepted values + are 'Inbound' and 'Outbound'. Possible values include: 'Inbound', + 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_08_01.models.Direction + :param protocol: Required. Protocol to be verified on. Accepted values are + '*', TCP, UDP. + :type protocol: str + :param source: Required. Traffic source. Accepted values are '*', IP + Address/CIDR, Service Tag. + :type source: str + :param destination: Required. Traffic destination. Accepted values are: + '*', IP Address/CIDR, Service Tag. + :type destination: str + :param destination_port: Required. Traffice destination port. Accepted + values are '*', port (for example, 3389) and port range (for example, + 80-100). + :type destination_port: str + """ + + _validation = { + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + 'destination_port': {'required': True}, + } + + _attribute_map = { + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TrafficQuery, self).__init__(**kwargs) + self.direction = kwargs.get('direction', None) + self.protocol = kwargs.get('protocol', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.destination_port = kwargs.get('destination_port', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_query_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_query_py3.py new file mode 100644 index 000000000000..1251b1d00794 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/traffic_query_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TrafficQuery(Model): + """Parameters to compare with network configuration. + + All required parameters must be populated in order to send to Azure. + + :param direction: Required. The direction of the traffic. Accepted values + are 'Inbound' and 'Outbound'. Possible values include: 'Inbound', + 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_08_01.models.Direction + :param protocol: Required. Protocol to be verified on. Accepted values are + '*', TCP, UDP. + :type protocol: str + :param source: Required. Traffic source. Accepted values are '*', IP + Address/CIDR, Service Tag. + :type source: str + :param destination: Required. Traffic destination. Accepted values are: + '*', IP Address/CIDR, Service Tag. + :type destination: str + :param destination_port: Required. Traffice destination port. Accepted + values are '*', port (for example, 3389) and port range (for example, + 80-100). + :type destination_port: str + """ + + _validation = { + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + 'destination_port': {'required': True}, + } + + _attribute_map = { + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'str'}, + } + + def __init__(self, *, direction, protocol: str, source: str, destination: str, destination_port: str, **kwargs) -> None: + super(TrafficQuery, self).__init__(**kwargs) + self.direction = direction + self.protocol = protocol + self.source = source + self.destination = destination + self.destination_port = destination_port diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_details.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_details.py new file mode 100644 index 000000000000..2a346e430fb0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_details.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingDetails(Model): + """Information gained from troubleshooting of specified resource. + + :param id: The id of the get troubleshoot operation. + :type id: str + :param reason_type: Reason type of failure. + :type reason_type: str + :param summary: A summary of troubleshooting. + :type summary: str + :param detail: Details on troubleshooting results. + :type detail: str + :param recommended_actions: List of recommended actions. + :type recommended_actions: + list[~azure.mgmt.network.v2018_08_01.models.TroubleshootingRecommendedActions] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'reason_type': {'key': 'reasonType', 'type': 'str'}, + 'summary': {'key': 'summary', 'type': 'str'}, + 'detail': {'key': 'detail', 'type': 'str'}, + 'recommended_actions': {'key': 'recommendedActions', 'type': '[TroubleshootingRecommendedActions]'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingDetails, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.reason_type = kwargs.get('reason_type', None) + self.summary = kwargs.get('summary', None) + self.detail = kwargs.get('detail', None) + self.recommended_actions = kwargs.get('recommended_actions', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_details_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_details_py3.py new file mode 100644 index 000000000000..df13e0609e27 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_details_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingDetails(Model): + """Information gained from troubleshooting of specified resource. + + :param id: The id of the get troubleshoot operation. + :type id: str + :param reason_type: Reason type of failure. + :type reason_type: str + :param summary: A summary of troubleshooting. + :type summary: str + :param detail: Details on troubleshooting results. + :type detail: str + :param recommended_actions: List of recommended actions. + :type recommended_actions: + list[~azure.mgmt.network.v2018_08_01.models.TroubleshootingRecommendedActions] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'reason_type': {'key': 'reasonType', 'type': 'str'}, + 'summary': {'key': 'summary', 'type': 'str'}, + 'detail': {'key': 'detail', 'type': 'str'}, + 'recommended_actions': {'key': 'recommendedActions', 'type': '[TroubleshootingRecommendedActions]'}, + } + + def __init__(self, *, id: str=None, reason_type: str=None, summary: str=None, detail: str=None, recommended_actions=None, **kwargs) -> None: + super(TroubleshootingDetails, self).__init__(**kwargs) + self.id = id + self.reason_type = reason_type + self.summary = summary + self.detail = detail + self.recommended_actions = recommended_actions diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_parameters.py new file mode 100644 index 000000000000..6b11d3eb5ffc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_parameters.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingParameters(Model): + """Parameters that define the resource to troubleshoot. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource to troubleshoot. + :type target_resource_id: str + :param storage_id: Required. The ID for the storage account to save the + troubleshoot result. + :type storage_id: str + :param storage_path: Required. The path to the blob to save the + troubleshoot result in. + :type storage_path: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'storage_path': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'storage_path': {'key': 'properties.storagePath', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.storage_id = kwargs.get('storage_id', None) + self.storage_path = kwargs.get('storage_path', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_parameters_py3.py new file mode 100644 index 000000000000..e010b7bdc9de --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_parameters_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingParameters(Model): + """Parameters that define the resource to troubleshoot. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource to troubleshoot. + :type target_resource_id: str + :param storage_id: Required. The ID for the storage account to save the + troubleshoot result. + :type storage_id: str + :param storage_path: Required. The path to the blob to save the + troubleshoot result in. + :type storage_path: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'storage_path': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'storage_path': {'key': 'properties.storagePath', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, storage_id: str, storage_path: str, **kwargs) -> None: + super(TroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.storage_id = storage_id + self.storage_path = storage_path diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_recommended_actions.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_recommended_actions.py new file mode 100644 index 000000000000..be395be4ad54 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_recommended_actions.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingRecommendedActions(Model): + """Recommended actions based on discovered issues. + + :param action_id: ID of the recommended action. + :type action_id: str + :param action_text: Description of recommended actions. + :type action_text: str + :param action_uri: The uri linking to a documentation for the recommended + troubleshooting actions. + :type action_uri: str + :param action_uri_text: The information from the URI for the recommended + troubleshooting actions. + :type action_uri_text: str + """ + + _attribute_map = { + 'action_id': {'key': 'actionId', 'type': 'str'}, + 'action_text': {'key': 'actionText', 'type': 'str'}, + 'action_uri': {'key': 'actionUri', 'type': 'str'}, + 'action_uri_text': {'key': 'actionUriText', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingRecommendedActions, self).__init__(**kwargs) + self.action_id = kwargs.get('action_id', None) + self.action_text = kwargs.get('action_text', None) + self.action_uri = kwargs.get('action_uri', None) + self.action_uri_text = kwargs.get('action_uri_text', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_recommended_actions_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_recommended_actions_py3.py new file mode 100644 index 000000000000..05c3f654353b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_recommended_actions_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingRecommendedActions(Model): + """Recommended actions based on discovered issues. + + :param action_id: ID of the recommended action. + :type action_id: str + :param action_text: Description of recommended actions. + :type action_text: str + :param action_uri: The uri linking to a documentation for the recommended + troubleshooting actions. + :type action_uri: str + :param action_uri_text: The information from the URI for the recommended + troubleshooting actions. + :type action_uri_text: str + """ + + _attribute_map = { + 'action_id': {'key': 'actionId', 'type': 'str'}, + 'action_text': {'key': 'actionText', 'type': 'str'}, + 'action_uri': {'key': 'actionUri', 'type': 'str'}, + 'action_uri_text': {'key': 'actionUriText', 'type': 'str'}, + } + + def __init__(self, *, action_id: str=None, action_text: str=None, action_uri: str=None, action_uri_text: str=None, **kwargs) -> None: + super(TroubleshootingRecommendedActions, self).__init__(**kwargs) + self.action_id = action_id + self.action_text = action_text + self.action_uri = action_uri + self.action_uri_text = action_uri_text diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_result.py new file mode 100644 index 000000000000..6ebdd124a37f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_result.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingResult(Model): + """Troubleshooting information gained from specified resource. + + :param start_time: The start time of the troubleshooting. + :type start_time: datetime + :param end_time: The end time of the troubleshooting. + :type end_time: datetime + :param code: The result code of the troubleshooting. + :type code: str + :param results: Information from troubleshooting. + :type results: + list[~azure.mgmt.network.v2018_08_01.models.TroubleshootingDetails] + """ + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'code': {'key': 'code', 'type': 'str'}, + 'results': {'key': 'results', 'type': '[TroubleshootingDetails]'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingResult, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.code = kwargs.get('code', None) + self.results = kwargs.get('results', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_result_py3.py new file mode 100644 index 000000000000..80e98338846f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/troubleshooting_result_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TroubleshootingResult(Model): + """Troubleshooting information gained from specified resource. + + :param start_time: The start time of the troubleshooting. + :type start_time: datetime + :param end_time: The end time of the troubleshooting. + :type end_time: datetime + :param code: The result code of the troubleshooting. + :type code: str + :param results: Information from troubleshooting. + :type results: + list[~azure.mgmt.network.v2018_08_01.models.TroubleshootingDetails] + """ + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'code': {'key': 'code', 'type': 'str'}, + 'results': {'key': 'results', 'type': '[TroubleshootingDetails]'}, + } + + def __init__(self, *, start_time=None, end_time=None, code: str=None, results=None, **kwargs) -> None: + super(TroubleshootingResult, self).__init__(**kwargs) + self.start_time = start_time + self.end_time = end_time + self.code = code + self.results = results diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tunnel_connection_health.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tunnel_connection_health.py new file mode 100644 index 000000000000..a5af819f4467 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tunnel_connection_health.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TunnelConnectionHealth(Model): + """VirtualNetworkGatewayConnection properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar tunnel: Tunnel name. + :vartype tunnel: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionStatus + :ivar ingress_bytes_transferred: The Ingress Bytes Transferred in this + connection + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: The Egress Bytes Transferred in this + connection + :vartype egress_bytes_transferred: long + :ivar last_connection_established_utc_time: The time at which connection + was established in Utc format. + :vartype last_connection_established_utc_time: str + """ + + _validation = { + 'tunnel': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'last_connection_established_utc_time': {'readonly': True}, + } + + _attribute_map = { + 'tunnel': {'key': 'tunnel', 'type': 'str'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'egressBytesTransferred', 'type': 'long'}, + 'last_connection_established_utc_time': {'key': 'lastConnectionEstablishedUtcTime', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TunnelConnectionHealth, self).__init__(**kwargs) + self.tunnel = None + self.connection_status = None + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.last_connection_established_utc_time = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tunnel_connection_health_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tunnel_connection_health_py3.py new file mode 100644 index 000000000000..34ca2f858eee --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/tunnel_connection_health_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TunnelConnectionHealth(Model): + """VirtualNetworkGatewayConnection properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar tunnel: Tunnel name. + :vartype tunnel: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionStatus + :ivar ingress_bytes_transferred: The Ingress Bytes Transferred in this + connection + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: The Egress Bytes Transferred in this + connection + :vartype egress_bytes_transferred: long + :ivar last_connection_established_utc_time: The time at which connection + was established in Utc format. + :vartype last_connection_established_utc_time: str + """ + + _validation = { + 'tunnel': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'last_connection_established_utc_time': {'readonly': True}, + } + + _attribute_map = { + 'tunnel': {'key': 'tunnel', 'type': 'str'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'egressBytesTransferred', 'type': 'long'}, + 'last_connection_established_utc_time': {'key': 'lastConnectionEstablishedUtcTime', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(TunnelConnectionHealth, self).__init__(**kwargs) + self.tunnel = None + self.connection_status = None + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.last_connection_established_utc_time = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage.py new file mode 100644 index 000000000000..331a3adc946d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """Describes network resource usage. + + 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 identifier. + :vartype id: str + :ivar unit: Required. An enum describing the unit of measurement. Default + value: "Count" . + :vartype unit: str + :param current_value: Required. The current value of the usage. + :type current_value: long + :param limit: Required. The limit of usage. + :type limit: long + :param name: Required. The name of the type of usage. + :type name: ~azure.mgmt.network.v2018_08_01.models.UsageName + """ + + _validation = { + 'id': {'readonly': True}, + 'unit': {'required': True, 'constant': True}, + 'current_value': {'required': True}, + 'limit': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + unit = "Count" + + def __init__(self, **kwargs): + super(Usage, self).__init__(**kwargs) + self.id = None + self.current_value = kwargs.get('current_value', None) + self.limit = kwargs.get('limit', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_name.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_name.py new file mode 100644 index 000000000000..bd1813944fdc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_name.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageName(Model): + """The usage names. + + :param value: A string describing the resource name. + :type value: str + :param localized_value: A localized string describing the resource name. + :type localized_value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UsageName, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.localized_value = kwargs.get('localized_value', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_name_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_name_py3.py new file mode 100644 index 000000000000..4e5e3e10de15 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_name_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageName(Model): + """The usage names. + + :param value: A string describing the resource name. + :type value: str + :param localized_value: A localized string describing the resource 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(UsageName, self).__init__(**kwargs) + self.value = value + self.localized_value = localized_value diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_paged.py new file mode 100644 index 000000000000..41483a234b5b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class UsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`Usage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Usage]'} + } + + def __init__(self, *args, **kwargs): + + super(UsagePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_py3.py new file mode 100644 index 000000000000..8c958ac9c552 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/usage_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """Describes network resource usage. + + 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 identifier. + :vartype id: str + :ivar unit: Required. An enum describing the unit of measurement. Default + value: "Count" . + :vartype unit: str + :param current_value: Required. The current value of the usage. + :type current_value: long + :param limit: Required. The limit of usage. + :type limit: long + :param name: Required. The name of the type of usage. + :type name: ~azure.mgmt.network.v2018_08_01.models.UsageName + """ + + _validation = { + 'id': {'readonly': True}, + 'unit': {'required': True, 'constant': True}, + 'current_value': {'required': True}, + 'limit': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + unit = "Count" + + def __init__(self, *, current_value: int, limit: int, name, **kwargs) -> None: + super(Usage, self).__init__(**kwargs) + self.id = None + self.current_value = current_value + self.limit = limit + self.name = name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_parameters.py new file mode 100644 index 000000000000..097e81c24439 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_parameters.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerificationIPFlowParameters(Model): + """Parameters that define the IP flow to be verified. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform next-hop on. + :type target_resource_id: str + :param direction: Required. The direction of the packet represented as a + 5-tuple. Possible values include: 'Inbound', 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_08_01.models.Direction + :param protocol: Required. Protocol to be verified on. Possible values + include: 'TCP', 'UDP' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.IpFlowProtocol + :param local_port: Required. The local port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type local_port: str + :param remote_port: Required. The remote port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type remote_port: str + :param local_ip_address: Required. The local IP address. Acceptable values + are valid IPv4 addresses. + :type local_ip_address: str + :param remote_ip_address: Required. The remote IP address. Acceptable + values are valid IPv4 addresses. + :type remote_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of them, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'local_port': {'required': True}, + 'remote_port': {'required': True}, + 'local_ip_address': {'required': True}, + 'remote_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VerificationIPFlowParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.direction = kwargs.get('direction', None) + self.protocol = kwargs.get('protocol', None) + self.local_port = kwargs.get('local_port', None) + self.remote_port = kwargs.get('remote_port', None) + self.local_ip_address = kwargs.get('local_ip_address', None) + self.remote_ip_address = kwargs.get('remote_ip_address', None) + self.target_nic_resource_id = kwargs.get('target_nic_resource_id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_parameters_py3.py new file mode 100644 index 000000000000..f2ad541e78a0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_parameters_py3.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerificationIPFlowParameters(Model): + """Parameters that define the IP flow to be verified. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform next-hop on. + :type target_resource_id: str + :param direction: Required. The direction of the packet represented as a + 5-tuple. Possible values include: 'Inbound', 'Outbound' + :type direction: str or ~azure.mgmt.network.v2018_08_01.models.Direction + :param protocol: Required. Protocol to be verified on. Possible values + include: 'TCP', 'UDP' + :type protocol: str or + ~azure.mgmt.network.v2018_08_01.models.IpFlowProtocol + :param local_port: Required. The local port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type local_port: str + :param remote_port: Required. The remote port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type remote_port: str + :param local_ip_address: Required. The local IP address. Acceptable values + are valid IPv4 addresses. + :type local_ip_address: str + :param remote_ip_address: Required. The remote IP address. Acceptable + values are valid IPv4 addresses. + :type remote_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of them, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'local_port': {'required': True}, + 'remote_port': {'required': True}, + 'local_ip_address': {'required': True}, + 'remote_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, direction, protocol, local_port: str, remote_port: str, local_ip_address: str, remote_ip_address: str, target_nic_resource_id: str=None, **kwargs) -> None: + super(VerificationIPFlowParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.direction = direction + self.protocol = protocol + self.local_port = local_port + self.remote_port = remote_port + self.local_ip_address = local_ip_address + self.remote_ip_address = remote_ip_address + self.target_nic_resource_id = target_nic_resource_id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_result.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_result.py new file mode 100644 index 000000000000..9ae863be7bc8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_result.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerificationIPFlowResult(Model): + """Results of IP flow verification on the target resource. + + :param access: Indicates whether the traffic is allowed or denied. + Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_08_01.models.Access + :param rule_name: Name of the rule. If input is not matched against any + security rule, it is not displayed. + :type rule_name: str + """ + + _attribute_map = { + 'access': {'key': 'access', 'type': 'str'}, + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VerificationIPFlowResult, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.rule_name = kwargs.get('rule_name', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_result_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_result_py3.py new file mode 100644 index 000000000000..35f7275cff79 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/verification_ip_flow_result_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VerificationIPFlowResult(Model): + """Results of IP flow verification on the target resource. + + :param access: Indicates whether the traffic is allowed or denied. + Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2018_08_01.models.Access + :param rule_name: Name of the rule. If input is not matched against any + security rule, it is not displayed. + :type rule_name: str + """ + + _attribute_map = { + 'access': {'key': 'access', 'type': 'str'}, + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + } + + def __init__(self, *, access=None, rule_name: str=None, **kwargs) -> None: + super(VerificationIPFlowResult, self).__init__(**kwargs) + self.access = access + self.rule_name = rule_name diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub.py new file mode 100644 index 000000000000..6abc530872bc --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub.py @@ -0,0 +1,92 @@ +# 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 .resource import Resource + + +class VirtualHub(Resource): + """VirtualHub Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the VirtualHub belongs + :type virtual_wan: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param vpn_gateway: The VpnGateway associated with this VirtualHub + :type vpn_gateway: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param p2_svpn_gateway: The P2SVpnGateway associated with this VirtualHub + :type p2_svpn_gateway: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param express_route_gateway: The expressRouteGateway associated with this + VirtualHub + :type express_route_gateway: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param virtual_network_connections: list of all vnet connections with this + VirtualHub. + :type virtual_network_connections: + list[~azure.mgmt.network.v2018_08_01.models.HubVirtualNetworkConnection] + :param address_prefix: Address-prefix for this VirtualHub. + :type address_prefix: str + :param route_table: The routeTable associated with this virtual hub. + :type route_table: + ~azure.mgmt.network.v2018_08_01.models.VirtualHubRouteTable + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'vpn_gateway': {'key': 'properties.vpnGateway', 'type': 'SubResource'}, + 'p2_svpn_gateway': {'key': 'properties.p2SVpnGateway', 'type': 'SubResource'}, + 'express_route_gateway': {'key': 'properties.expressRouteGateway', 'type': 'SubResource'}, + 'virtual_network_connections': {'key': 'properties.virtualNetworkConnections', 'type': '[HubVirtualNetworkConnection]'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'VirtualHubRouteTable'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHub, self).__init__(**kwargs) + self.virtual_wan = kwargs.get('virtual_wan', None) + self.vpn_gateway = kwargs.get('vpn_gateway', None) + self.p2_svpn_gateway = kwargs.get('p2_svpn_gateway', None) + self.express_route_gateway = kwargs.get('express_route_gateway', None) + self.virtual_network_connections = kwargs.get('virtual_network_connections', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.route_table = kwargs.get('route_table', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_id.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_id.py new file mode 100644 index 000000000000..6754cbd3b4f6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_id.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualHubId(Model): + """Virtual Hub identifier. + + :param id: The resource URI for the Virtual Hub where the ExpressRoute + gateway is or will be deployed. The Virtual Hub resource and the + ExpressRoute gateway resource reside in the same subscription. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHubId, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_id_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_id_py3.py new file mode 100644 index 000000000000..730c061d5b7e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_id_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualHubId(Model): + """Virtual Hub identifier. + + :param id: The resource URI for the Virtual Hub where the ExpressRoute + gateway is or will be deployed. The Virtual Hub resource and the + ExpressRoute gateway resource reside in the same subscription. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(VirtualHubId, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_paged.py new file mode 100644 index 000000000000..f5c9236ee137 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualHubPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualHub ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualHub]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualHubPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_py3.py new file mode 100644 index 000000000000..971fb7e47aea --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_py3.py @@ -0,0 +1,92 @@ +# 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 .resource_py3 import Resource + + +class VirtualHub(Resource): + """VirtualHub Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the VirtualHub belongs + :type virtual_wan: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param vpn_gateway: The VpnGateway associated with this VirtualHub + :type vpn_gateway: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param p2_svpn_gateway: The P2SVpnGateway associated with this VirtualHub + :type p2_svpn_gateway: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param express_route_gateway: The expressRouteGateway associated with this + VirtualHub + :type express_route_gateway: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param virtual_network_connections: list of all vnet connections with this + VirtualHub. + :type virtual_network_connections: + list[~azure.mgmt.network.v2018_08_01.models.HubVirtualNetworkConnection] + :param address_prefix: Address-prefix for this VirtualHub. + :type address_prefix: str + :param route_table: The routeTable associated with this virtual hub. + :type route_table: + ~azure.mgmt.network.v2018_08_01.models.VirtualHubRouteTable + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'vpn_gateway': {'key': 'properties.vpnGateway', 'type': 'SubResource'}, + 'p2_svpn_gateway': {'key': 'properties.p2SVpnGateway', 'type': 'SubResource'}, + 'express_route_gateway': {'key': 'properties.expressRouteGateway', 'type': 'SubResource'}, + 'virtual_network_connections': {'key': 'properties.virtualNetworkConnections', 'type': '[HubVirtualNetworkConnection]'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'VirtualHubRouteTable'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_wan=None, vpn_gateway=None, p2_svpn_gateway=None, express_route_gateway=None, virtual_network_connections=None, address_prefix: str=None, route_table=None, provisioning_state=None, **kwargs) -> None: + super(VirtualHub, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_wan = virtual_wan + self.vpn_gateway = vpn_gateway + self.p2_svpn_gateway = p2_svpn_gateway + self.express_route_gateway = express_route_gateway + self.virtual_network_connections = virtual_network_connections + self.address_prefix = address_prefix + self.route_table = route_table + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route.py new file mode 100644 index 000000000000..d25fdb71ad64 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualHubRoute(Model): + """VirtualHub route. + + :param address_prefixes: list of all addressPrefixes. + :type address_prefixes: list[str] + :param next_hop_ip_address: NextHop ip address. + :type next_hop_ip_address: str + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHubRoute, self).__init__(**kwargs) + self.address_prefixes = kwargs.get('address_prefixes', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_py3.py new file mode 100644 index 000000000000..b5430f758c76 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualHubRoute(Model): + """VirtualHub route. + + :param address_prefixes: list of all addressPrefixes. + :type address_prefixes: list[str] + :param next_hop_ip_address: NextHop ip address. + :type next_hop_ip_address: str + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + } + + def __init__(self, *, address_prefixes=None, next_hop_ip_address: str=None, **kwargs) -> None: + super(VirtualHubRoute, self).__init__(**kwargs) + self.address_prefixes = address_prefixes + self.next_hop_ip_address = next_hop_ip_address diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_table.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_table.py new file mode 100644 index 000000000000..79c1550f98a1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_table.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualHubRouteTable(Model): + """VirtualHub route table. + + :param routes: list of all routes. + :type routes: list[~azure.mgmt.network.v2018_08_01.models.VirtualHubRoute] + """ + + _attribute_map = { + 'routes': {'key': 'routes', 'type': '[VirtualHubRoute]'}, + } + + def __init__(self, **kwargs): + super(VirtualHubRouteTable, self).__init__(**kwargs) + self.routes = kwargs.get('routes', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_table_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_table_py3.py new file mode 100644 index 000000000000..1d49b1563f49 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_hub_route_table_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualHubRouteTable(Model): + """VirtualHub route table. + + :param routes: list of all routes. + :type routes: list[~azure.mgmt.network.v2018_08_01.models.VirtualHubRoute] + """ + + _attribute_map = { + 'routes': {'key': 'routes', 'type': '[VirtualHubRoute]'}, + } + + def __init__(self, *, routes=None, **kwargs) -> None: + super(VirtualHubRouteTable, self).__init__(**kwargs) + self.routes = routes diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network.py new file mode 100644 index 000000000000..69b2d5254a45 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network.py @@ -0,0 +1,98 @@ +# 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 .resource import Resource + + +class VirtualNetwork(Resource): + """Virtual Network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param address_space: The AddressSpace that contains an array of IP + address ranges that can be used by subnets. + :type address_space: ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param dhcp_options: The dhcpOptions that contains an array of DNS servers + available to VMs deployed in the virtual network. + :type dhcp_options: ~azure.mgmt.network.v2018_08_01.models.DhcpOptions + :param subnets: A list of subnets in a Virtual Network. + :type subnets: list[~azure.mgmt.network.v2018_08_01.models.Subnet] + :param virtual_network_peerings: A list of peerings in a Virtual Network. + :type virtual_network_peerings: + list[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeering] + :param resource_guid: The resourceGuid property of the Virtual Network + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param enable_ddos_protection: Indicates if DDoS protection is enabled for + all the protected resources in the virtual network. It requires a DDoS + protection plan associated with the resource. Default value: False . + :type enable_ddos_protection: bool + :param enable_vm_protection: Indicates if VM protection is enabled for all + the subnets in the virtual network. Default value: False . + :type enable_vm_protection: bool + :param ddos_protection_plan: The DDoS protection plan associated with the + virtual network. + :type ddos_protection_plan: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'dhcp_options': {'key': 'properties.dhcpOptions', 'type': 'DhcpOptions'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'virtual_network_peerings': {'key': 'properties.virtualNetworkPeerings', 'type': '[VirtualNetworkPeering]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'enable_ddos_protection': {'key': 'properties.enableDdosProtection', 'type': 'bool'}, + 'enable_vm_protection': {'key': 'properties.enableVmProtection', 'type': 'bool'}, + 'ddos_protection_plan': {'key': 'properties.ddosProtectionPlan', 'type': 'SubResource'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetwork, self).__init__(**kwargs) + self.address_space = kwargs.get('address_space', None) + self.dhcp_options = kwargs.get('dhcp_options', None) + self.subnets = kwargs.get('subnets', None) + self.virtual_network_peerings = kwargs.get('virtual_network_peerings', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.enable_ddos_protection = kwargs.get('enable_ddos_protection', False) + self.enable_vm_protection = kwargs.get('enable_vm_protection', False) + self.ddos_protection_plan = kwargs.get('ddos_protection_plan', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_connection_gateway_reference.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_connection_gateway_reference.py new file mode 100644 index 000000000000..aa10101778f6 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_connection_gateway_reference.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkConnectionGatewayReference(Model): + """A reference to VirtualNetworkGateway or LocalNetworkGateway resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of VirtualNetworkGateway or + LocalNetworkGateway resource. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkConnectionGatewayReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_connection_gateway_reference_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_connection_gateway_reference_py3.py new file mode 100644 index 000000000000..b2d9734baf3c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_connection_gateway_reference_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkConnectionGatewayReference(Model): + """A reference to VirtualNetworkGateway or LocalNetworkGateway resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of VirtualNetworkGateway or + LocalNetworkGateway resource. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str, **kwargs) -> None: + super(VirtualNetworkConnectionGatewayReference, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway.py new file mode 100644 index 000000000000..6cfa77b79947 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway.py @@ -0,0 +1,114 @@ +# 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 .resource import Resource + + +class VirtualNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param ip_configurations: IP configurations for virtual network gateway. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayIPConfiguration] + :param gateway_type: The type of this virtual network gateway. Possible + values are: 'Vpn' and 'ExpressRoute'. Possible values include: 'Vpn', + 'ExpressRoute' + :type gateway_type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayType + :param vpn_type: The type of this virtual network gateway. Possible values + are: 'PolicyBased' and 'RouteBased'. Possible values include: + 'PolicyBased', 'RouteBased' + :type vpn_type: str or ~azure.mgmt.network.v2018_08_01.models.VpnType + :param enable_bgp: Whether BGP is enabled for this virtual network gateway + or not. + :type enable_bgp: bool + :param active_active: ActiveActive flag + :type active_active: bool + :param gateway_default_site: The reference of the LocalNetworkGateway + resource which represents local network site having default routes. Assign + Null value in case of removing existing default site setting. + :type gateway_default_site: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param sku: The reference of the VirtualNetworkGatewaySku resource which + represents the SKU selected for Virtual network gateway. + :type sku: ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewaySku + :param vpn_client_configuration: The reference of the + VpnClientConfiguration resource which represents the P2S VpnClient + configurations. + :type vpn_client_configuration: + ~azure.mgmt.network.v2018_08_01.models.VpnClientConfiguration + :param bgp_settings: Virtual network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_08_01.models.BgpSettings + :param resource_guid: The resource GUID property of the + VirtualNetworkGateway resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGateway resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualNetworkGatewayIPConfiguration]'}, + 'gateway_type': {'key': 'properties.gatewayType', 'type': 'str'}, + 'vpn_type': {'key': 'properties.vpnType', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'active_active': {'key': 'properties.activeActive', 'type': 'bool'}, + 'gateway_default_site': {'key': 'properties.gatewayDefaultSite', 'type': 'SubResource'}, + 'sku': {'key': 'properties.sku', 'type': 'VirtualNetworkGatewaySku'}, + 'vpn_client_configuration': {'key': 'properties.vpnClientConfiguration', 'type': 'VpnClientConfiguration'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGateway, self).__init__(**kwargs) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.gateway_type = kwargs.get('gateway_type', None) + self.vpn_type = kwargs.get('vpn_type', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.active_active = kwargs.get('active_active', None) + self.gateway_default_site = kwargs.get('gateway_default_site', None) + self.sku = kwargs.get('sku', None) + self.vpn_client_configuration = kwargs.get('vpn_client_configuration', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = None + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection.py new file mode 100644 index 000000000000..23978c600c0e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection.py @@ -0,0 +1,163 @@ +# 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 .resource import Resource + + +class VirtualNetworkGatewayConnection(Resource): + """A common class for general resource information. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway + :param connection_type: Required. Gateway connection type. Possible values + are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionType + :param connection_protocol: Connection protocol used for this connection. + Possible values include: 'IKEv2', 'IKEv1' + :type connection_protocol: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionProtocol + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values are 'Unknown', 'Connecting', 'Connected' and + 'NotConnected'. Possible values include: 'Unknown', 'Connecting', + 'Connected', 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2018_08_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param resource_guid: The resource GUID property of the + VirtualNetworkGatewayConnection resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding + :type express_route_gateway_bypass: bool + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkGateway'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkGateway'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'LocalNetworkGateway'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'connection_protocol': {'key': 'properties.connectionProtocol', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayConnection, self).__init__(**kwargs) + self.authorization_key = kwargs.get('authorization_key', None) + self.virtual_network_gateway1 = kwargs.get('virtual_network_gateway1', None) + self.virtual_network_gateway2 = kwargs.get('virtual_network_gateway2', None) + self.local_network_gateway2 = kwargs.get('local_network_gateway2', None) + self.connection_type = kwargs.get('connection_type', None) + self.connection_protocol = kwargs.get('connection_protocol', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.shared_key = kwargs.get('shared_key', None) + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = kwargs.get('peer', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.use_policy_based_traffic_selectors = kwargs.get('use_policy_based_traffic_selectors', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = None + self.express_route_gateway_bypass = kwargs.get('express_route_gateway_bypass', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity.py new file mode 100644 index 000000000000..97a5f924d2dd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity.py @@ -0,0 +1,163 @@ +# 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 .resource import Resource + + +class VirtualNetworkGatewayConnectionListEntity(Resource): + """A common class for general resource information. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkConnectionGatewayReference + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkConnectionGatewayReference + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkConnectionGatewayReference + :param connection_type: Required. Gateway connection type. Possible values + are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionType + :param connection_protocol: Connection protocol used for this connection. + Possible values include: 'IKEv2', 'IKEv1' + :type connection_protocol: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionProtocol + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values are 'Unknown', 'Connecting', 'Connected' and + 'NotConnected'. Possible values include: 'Unknown', 'Connecting', + 'Connected', 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2018_08_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param resource_guid: The resource GUID property of the + VirtualNetworkGatewayConnection resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding + :type express_route_gateway_bypass: bool + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'connection_protocol': {'key': 'properties.connectionProtocol', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayConnectionListEntity, self).__init__(**kwargs) + self.authorization_key = kwargs.get('authorization_key', None) + self.virtual_network_gateway1 = kwargs.get('virtual_network_gateway1', None) + self.virtual_network_gateway2 = kwargs.get('virtual_network_gateway2', None) + self.local_network_gateway2 = kwargs.get('local_network_gateway2', None) + self.connection_type = kwargs.get('connection_type', None) + self.connection_protocol = kwargs.get('connection_protocol', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.shared_key = kwargs.get('shared_key', None) + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = kwargs.get('peer', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.use_policy_based_traffic_selectors = kwargs.get('use_policy_based_traffic_selectors', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.resource_guid = kwargs.get('resource_guid', None) + self.provisioning_state = None + self.express_route_gateway_bypass = kwargs.get('express_route_gateway_bypass', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity_paged.py new file mode 100644 index 000000000000..299f8799d124 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkGatewayConnectionListEntityPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGatewayConnectionListEntity ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGatewayConnectionListEntity]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayConnectionListEntityPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity_py3.py new file mode 100644 index 000000000000..248cdc63a1dd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_list_entity_py3.py @@ -0,0 +1,163 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetworkGatewayConnectionListEntity(Resource): + """A common class for general resource information. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkConnectionGatewayReference + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkConnectionGatewayReference + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkConnectionGatewayReference + :param connection_type: Required. Gateway connection type. Possible values + are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionType + :param connection_protocol: Connection protocol used for this connection. + Possible values include: 'IKEv2', 'IKEv1' + :type connection_protocol: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionProtocol + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values are 'Unknown', 'Connecting', 'Connected' and + 'NotConnected'. Possible values include: 'Unknown', 'Connecting', + 'Connected', 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2018_08_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param resource_guid: The resource GUID property of the + VirtualNetworkGatewayConnection resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding + :type express_route_gateway_bypass: bool + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'connection_protocol': {'key': 'properties.connectionProtocol', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, virtual_network_gateway1, connection_type, id: str=None, location: str=None, tags=None, authorization_key: str=None, virtual_network_gateway2=None, local_network_gateway2=None, connection_protocol=None, routing_weight: int=None, shared_key: str=None, peer=None, enable_bgp: bool=None, use_policy_based_traffic_selectors: bool=None, ipsec_policies=None, resource_guid: str=None, express_route_gateway_bypass: bool=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkGatewayConnectionListEntity, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.authorization_key = authorization_key + self.virtual_network_gateway1 = virtual_network_gateway1 + self.virtual_network_gateway2 = virtual_network_gateway2 + self.local_network_gateway2 = local_network_gateway2 + self.connection_type = connection_type + self.connection_protocol = connection_protocol + self.routing_weight = routing_weight + self.shared_key = shared_key + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = peer + self.enable_bgp = enable_bgp + self.use_policy_based_traffic_selectors = use_policy_based_traffic_selectors + self.ipsec_policies = ipsec_policies + self.resource_guid = resource_guid + self.provisioning_state = None + self.express_route_gateway_bypass = express_route_gateway_bypass + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_paged.py new file mode 100644 index 000000000000..5233ae193c2b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkGatewayConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGatewayConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGatewayConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayConnectionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_py3.py new file mode 100644 index 000000000000..f07637a15682 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_connection_py3.py @@ -0,0 +1,163 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetworkGatewayConnection(Resource): + """A common class for general resource information. + + 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 id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway + :param connection_type: Required. Gateway connection type. Possible values + are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionType + :param connection_protocol: Connection protocol used for this connection. + Possible values include: 'IKEv2', 'IKEv1' + :type connection_protocol: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionProtocol + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual network Gateway connection status. + Possible values are 'Unknown', 'Connecting', 'Connected' and + 'NotConnected'. Possible values include: 'Unknown', 'Connecting', + 'Connected', 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2018_08_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param resource_guid: The resource GUID property of the + VirtualNetworkGatewayConnection resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding + :type express_route_gateway_bypass: bool + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkGateway'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkGateway'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'LocalNetworkGateway'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'connection_protocol': {'key': 'properties.connectionProtocol', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, virtual_network_gateway1, connection_type, id: str=None, location: str=None, tags=None, authorization_key: str=None, virtual_network_gateway2=None, local_network_gateway2=None, connection_protocol=None, routing_weight: int=None, shared_key: str=None, peer=None, enable_bgp: bool=None, use_policy_based_traffic_selectors: bool=None, ipsec_policies=None, resource_guid: str=None, express_route_gateway_bypass: bool=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkGatewayConnection, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.authorization_key = authorization_key + self.virtual_network_gateway1 = virtual_network_gateway1 + self.virtual_network_gateway2 = virtual_network_gateway2 + self.local_network_gateway2 = local_network_gateway2 + self.connection_type = connection_type + self.connection_protocol = connection_protocol + self.routing_weight = routing_weight + self.shared_key = shared_key + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = peer + self.enable_bgp = enable_bgp + self.use_policy_based_traffic_selectors = use_policy_based_traffic_selectors + self.ipsec_policies = ipsec_policies + self.resource_guid = resource_guid + self.provisioning_state = None + self.express_route_gateway_bypass = express_route_gateway_bypass + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_ip_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_ip_configuration.py new file mode 100644 index 000000000000..f1fbc98a7c10 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_ip_configuration.py @@ -0,0 +1,65 @@ +# 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 .sub_resource import SubResource + + +class VirtualNetworkGatewayIPConfiguration(SubResource): + """IP configuration for virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_allocation_method: The private IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :ivar provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayIPConfiguration, self).__init__(**kwargs) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_ip_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_ip_configuration_py3.py new file mode 100644 index 000000000000..3159f2f37e4c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_ip_configuration_py3.py @@ -0,0 +1,65 @@ +# 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 .sub_resource_py3 import SubResource + + +class VirtualNetworkGatewayIPConfiguration(SubResource): + """IP configuration for virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_allocation_method: The private IP allocation method. + Possible values are: 'Static' and 'Dynamic'. Possible values include: + 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2018_08_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :ivar provisioning_state: The provisioning state of the public IP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, name: str=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkGatewayIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_paged.py new file mode 100644 index 000000000000..a028be60deaf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_py3.py new file mode 100644 index 000000000000..43e268795330 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_py3.py @@ -0,0 +1,114 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param ip_configurations: IP configurations for virtual network gateway. + :type ip_configurations: + list[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayIPConfiguration] + :param gateway_type: The type of this virtual network gateway. Possible + values are: 'Vpn' and 'ExpressRoute'. Possible values include: 'Vpn', + 'ExpressRoute' + :type gateway_type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayType + :param vpn_type: The type of this virtual network gateway. Possible values + are: 'PolicyBased' and 'RouteBased'. Possible values include: + 'PolicyBased', 'RouteBased' + :type vpn_type: str or ~azure.mgmt.network.v2018_08_01.models.VpnType + :param enable_bgp: Whether BGP is enabled for this virtual network gateway + or not. + :type enable_bgp: bool + :param active_active: ActiveActive flag + :type active_active: bool + :param gateway_default_site: The reference of the LocalNetworkGateway + resource which represents local network site having default routes. Assign + Null value in case of removing existing default site setting. + :type gateway_default_site: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param sku: The reference of the VirtualNetworkGatewaySku resource which + represents the SKU selected for Virtual network gateway. + :type sku: ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewaySku + :param vpn_client_configuration: The reference of the + VpnClientConfiguration resource which represents the P2S VpnClient + configurations. + :type vpn_client_configuration: + ~azure.mgmt.network.v2018_08_01.models.VpnClientConfiguration + :param bgp_settings: Virtual network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_08_01.models.BgpSettings + :param resource_guid: The resource GUID property of the + VirtualNetworkGateway resource. + :type resource_guid: str + :ivar provisioning_state: The provisioning state of the + VirtualNetworkGateway resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualNetworkGatewayIPConfiguration]'}, + 'gateway_type': {'key': 'properties.gatewayType', 'type': 'str'}, + 'vpn_type': {'key': 'properties.vpnType', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'active_active': {'key': 'properties.activeActive', 'type': 'bool'}, + 'gateway_default_site': {'key': 'properties.gatewayDefaultSite', 'type': 'SubResource'}, + 'sku': {'key': 'properties.sku', 'type': 'VirtualNetworkGatewaySku'}, + 'vpn_client_configuration': {'key': 'properties.vpnClientConfiguration', 'type': 'VpnClientConfiguration'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, ip_configurations=None, gateway_type=None, vpn_type=None, enable_bgp: bool=None, active_active: bool=None, gateway_default_site=None, sku=None, vpn_client_configuration=None, bgp_settings=None, resource_guid: str=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.ip_configurations = ip_configurations + self.gateway_type = gateway_type + self.vpn_type = vpn_type + self.enable_bgp = enable_bgp + self.active_active = active_active + self.gateway_default_site = gateway_default_site + self.sku = sku + self.vpn_client_configuration = vpn_client_configuration + self.bgp_settings = bgp_settings + self.resource_guid = resource_guid + self.provisioning_state = None + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_sku.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_sku.py new file mode 100644 index 000000000000..7d4c5e9e1452 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_sku.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkGatewaySku(Model): + """VirtualNetworkGatewaySku details. + + :param name: Gateway SKU name. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', 'ErGw1AZ', 'ErGw2AZ', + 'ErGw3AZ' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewaySkuName + :param tier: Gateway SKU tier. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', 'ErGw1AZ', 'ErGw2AZ', + 'ErGw3AZ' + :type tier: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewaySkuTier + :param capacity: The capacity. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewaySku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_sku_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_sku_py3.py new file mode 100644 index 000000000000..0150bfa65b9f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_gateway_sku_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkGatewaySku(Model): + """VirtualNetworkGatewaySku details. + + :param name: Gateway SKU name. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', 'ErGw1AZ', 'ErGw2AZ', + 'ErGw3AZ' + :type name: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewaySkuName + :param tier: Gateway SKU tier. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', 'ErGw1AZ', 'ErGw2AZ', + 'ErGw3AZ' + :type tier: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewaySkuTier + :param capacity: The capacity. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, *, name=None, tier=None, capacity: int=None, **kwargs) -> None: + super(VirtualNetworkGatewaySku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_paged.py new file mode 100644 index 000000000000..ad617cd55de9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetwork ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetwork]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering.py new file mode 100644 index 000000000000..6fdbc845f49a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering.py @@ -0,0 +1,86 @@ +# 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 .sub_resource import SubResource + + +class VirtualNetworkPeering(SubResource): + """Peerings in a virtual network resource. + + :param id: Resource ID. + :type id: str + :param allow_virtual_network_access: Whether the VMs in the linked virtual + network space would be able to access all the VMs in local Virtual network + space. + :type allow_virtual_network_access: bool + :param allow_forwarded_traffic: Whether the forwarded traffic from the VMs + in the remote virtual network will be allowed/disallowed. + :type allow_forwarded_traffic: bool + :param allow_gateway_transit: If gateway links can be used in remote + virtual networking to link to this virtual network. + :type allow_gateway_transit: bool + :param use_remote_gateways: If remote gateways can be used on this virtual + network. If the flag is set to true, and allowGatewayTransit on remote + peering is also true, virtual network will use gateways of remote virtual + network for transit. Only one peering can have this flag set to true. This + flag cannot be set if virtual network already has a gateway. + :type use_remote_gateways: bool + :param remote_virtual_network: The reference of the remote virtual + network. The remote virtual network can be in the same or different region + (preview). See here to register for the preview and learn more + (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering). + :type remote_virtual_network: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param remote_address_space: The reference of the remote virtual network + address space. + :type remote_address_space: + ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param peering_state: The status of the virtual network peering. Possible + values are 'Initiated', 'Connected', and 'Disconnected'. Possible values + include: 'Initiated', 'Connected', 'Disconnected' + :type peering_state: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeeringState + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allow_virtual_network_access': {'key': 'properties.allowVirtualNetworkAccess', 'type': 'bool'}, + 'allow_forwarded_traffic': {'key': 'properties.allowForwardedTraffic', 'type': 'bool'}, + 'allow_gateway_transit': {'key': 'properties.allowGatewayTransit', 'type': 'bool'}, + 'use_remote_gateways': {'key': 'properties.useRemoteGateways', 'type': 'bool'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'remote_address_space': {'key': 'properties.remoteAddressSpace', 'type': 'AddressSpace'}, + 'peering_state': {'key': 'properties.peeringState', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkPeering, self).__init__(**kwargs) + self.allow_virtual_network_access = kwargs.get('allow_virtual_network_access', None) + self.allow_forwarded_traffic = kwargs.get('allow_forwarded_traffic', None) + self.allow_gateway_transit = kwargs.get('allow_gateway_transit', None) + self.use_remote_gateways = kwargs.get('use_remote_gateways', None) + self.remote_virtual_network = kwargs.get('remote_virtual_network', None) + self.remote_address_space = kwargs.get('remote_address_space', None) + self.peering_state = kwargs.get('peering_state', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering_paged.py new file mode 100644 index 000000000000..b002f94a6ed8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkPeeringPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering_py3.py new file mode 100644 index 000000000000..b7fa72add218 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_peering_py3.py @@ -0,0 +1,86 @@ +# 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 .sub_resource_py3 import SubResource + + +class VirtualNetworkPeering(SubResource): + """Peerings in a virtual network resource. + + :param id: Resource ID. + :type id: str + :param allow_virtual_network_access: Whether the VMs in the linked virtual + network space would be able to access all the VMs in local Virtual network + space. + :type allow_virtual_network_access: bool + :param allow_forwarded_traffic: Whether the forwarded traffic from the VMs + in the remote virtual network will be allowed/disallowed. + :type allow_forwarded_traffic: bool + :param allow_gateway_transit: If gateway links can be used in remote + virtual networking to link to this virtual network. + :type allow_gateway_transit: bool + :param use_remote_gateways: If remote gateways can be used on this virtual + network. If the flag is set to true, and allowGatewayTransit on remote + peering is also true, virtual network will use gateways of remote virtual + network for transit. Only one peering can have this flag set to true. This + flag cannot be set if virtual network already has a gateway. + :type use_remote_gateways: bool + :param remote_virtual_network: The reference of the remote virtual + network. The remote virtual network can be in the same or different region + (preview). See here to register for the preview and learn more + (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering). + :type remote_virtual_network: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param remote_address_space: The reference of the remote virtual network + address space. + :type remote_address_space: + ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param peering_state: The status of the virtual network peering. Possible + values are 'Initiated', 'Connected', and 'Disconnected'. Possible values + include: 'Initiated', 'Connected', 'Disconnected' + :type peering_state: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeeringState + :param provisioning_state: The provisioning state of the resource. + :type provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allow_virtual_network_access': {'key': 'properties.allowVirtualNetworkAccess', 'type': 'bool'}, + 'allow_forwarded_traffic': {'key': 'properties.allowForwardedTraffic', 'type': 'bool'}, + 'allow_gateway_transit': {'key': 'properties.allowGatewayTransit', 'type': 'bool'}, + 'use_remote_gateways': {'key': 'properties.useRemoteGateways', 'type': 'bool'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'remote_address_space': {'key': 'properties.remoteAddressSpace', 'type': 'AddressSpace'}, + 'peering_state': {'key': 'properties.peeringState', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, allow_virtual_network_access: bool=None, allow_forwarded_traffic: bool=None, allow_gateway_transit: bool=None, use_remote_gateways: bool=None, remote_virtual_network=None, remote_address_space=None, peering_state=None, provisioning_state: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkPeering, self).__init__(id=id, **kwargs) + self.allow_virtual_network_access = allow_virtual_network_access + self.allow_forwarded_traffic = allow_forwarded_traffic + self.allow_gateway_transit = allow_gateway_transit + self.use_remote_gateways = use_remote_gateways + self.remote_virtual_network = remote_virtual_network + self.remote_address_space = remote_address_space + self.peering_state = peering_state + self.provisioning_state = provisioning_state + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_py3.py new file mode 100644 index 000000000000..8e455fa58e64 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_py3.py @@ -0,0 +1,98 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetwork(Resource): + """Virtual Network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param address_space: The AddressSpace that contains an array of IP + address ranges that can be used by subnets. + :type address_space: ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param dhcp_options: The dhcpOptions that contains an array of DNS servers + available to VMs deployed in the virtual network. + :type dhcp_options: ~azure.mgmt.network.v2018_08_01.models.DhcpOptions + :param subnets: A list of subnets in a Virtual Network. + :type subnets: list[~azure.mgmt.network.v2018_08_01.models.Subnet] + :param virtual_network_peerings: A list of peerings in a Virtual Network. + :type virtual_network_peerings: + list[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeering] + :param resource_guid: The resourceGuid property of the Virtual Network + resource. + :type resource_guid: str + :param provisioning_state: The provisioning state of the PublicIP + resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :type provisioning_state: str + :param enable_ddos_protection: Indicates if DDoS protection is enabled for + all the protected resources in the virtual network. It requires a DDoS + protection plan associated with the resource. Default value: False . + :type enable_ddos_protection: bool + :param enable_vm_protection: Indicates if VM protection is enabled for all + the subnets in the virtual network. Default value: False . + :type enable_vm_protection: bool + :param ddos_protection_plan: The DDoS protection plan associated with the + virtual network. + :type ddos_protection_plan: + ~azure.mgmt.network.v2018_08_01.models.SubResource + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: 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'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'dhcp_options': {'key': 'properties.dhcpOptions', 'type': 'DhcpOptions'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'virtual_network_peerings': {'key': 'properties.virtualNetworkPeerings', 'type': '[VirtualNetworkPeering]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'enable_ddos_protection': {'key': 'properties.enableDdosProtection', 'type': 'bool'}, + 'enable_vm_protection': {'key': 'properties.enableVmProtection', 'type': 'bool'}, + 'ddos_protection_plan': {'key': 'properties.ddosProtectionPlan', 'type': 'SubResource'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, address_space=None, dhcp_options=None, subnets=None, virtual_network_peerings=None, resource_guid: str=None, provisioning_state: str=None, enable_ddos_protection: bool=False, enable_vm_protection: bool=False, ddos_protection_plan=None, etag: str=None, **kwargs) -> None: + super(VirtualNetwork, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.address_space = address_space + self.dhcp_options = dhcp_options + self.subnets = subnets + self.virtual_network_peerings = virtual_network_peerings + self.resource_guid = resource_guid + self.provisioning_state = provisioning_state + self.enable_ddos_protection = enable_ddos_protection + self.enable_vm_protection = enable_vm_protection + self.ddos_protection_plan = ddos_protection_plan + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap.py new file mode 100644 index 000000000000..6f89b1a46ffd --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap.py @@ -0,0 +1,88 @@ +# 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 .resource import Resource + + +class VirtualNetworkTap(Resource): + """Virtual Network Tap resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar network_interface_tap_configurations: Specifies the list of resource + IDs for the network interface IP configuration that needs to be tapped. + :vartype network_interface_tap_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration] + :ivar resource_guid: The resourceGuid property of the virtual network tap. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + tap. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param destination_network_interface_ip_configuration: The reference to + the private IP Address of the collector nic that will receive the tap + :type destination_network_interface_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration + :param destination_load_balancer_front_end_ip_configuration: The reference + to the private IP address on the internal Load Balancer that will receive + the tap + :type destination_load_balancer_front_end_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.FrontendIPConfiguration + :param destination_port: The VXLAN destination port that will receive the + tapped traffic. + :type destination_port: int + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interface_tap_configurations': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'network_interface_tap_configurations': {'key': 'properties.networkInterfaceTapConfigurations', 'type': '[NetworkInterfaceTapConfiguration]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'destination_network_interface_ip_configuration': {'key': 'properties.destinationNetworkInterfaceIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'destination_load_balancer_front_end_ip_configuration': {'key': 'properties.destinationLoadBalancerFrontEndIPConfiguration', 'type': 'FrontendIPConfiguration'}, + 'destination_port': {'key': 'properties.destinationPort', 'type': 'int'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkTap, self).__init__(**kwargs) + self.network_interface_tap_configurations = None + self.resource_guid = None + self.provisioning_state = None + self.destination_network_interface_ip_configuration = kwargs.get('destination_network_interface_ip_configuration', None) + self.destination_load_balancer_front_end_ip_configuration = kwargs.get('destination_load_balancer_front_end_ip_configuration', None) + self.destination_port = kwargs.get('destination_port', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap_paged.py new file mode 100644 index 000000000000..3324c9558721 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkTapPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkTap ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkTap]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkTapPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap_py3.py new file mode 100644 index 000000000000..adf3e2a95f96 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_tap_py3.py @@ -0,0 +1,88 @@ +# 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 .resource_py3 import Resource + + +class VirtualNetworkTap(Resource): + """Virtual Network Tap resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar network_interface_tap_configurations: Specifies the list of resource + IDs for the network interface IP configuration that needs to be tapped. + :vartype network_interface_tap_configurations: + list[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration] + :ivar resource_guid: The resourceGuid property of the virtual network tap. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + tap. Possible values are: 'Updating', 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :param destination_network_interface_ip_configuration: The reference to + the private IP Address of the collector nic that will receive the tap + :type destination_network_interface_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration + :param destination_load_balancer_front_end_ip_configuration: The reference + to the private IP address on the internal Load Balancer that will receive + the tap + :type destination_load_balancer_front_end_ip_configuration: + ~azure.mgmt.network.v2018_08_01.models.FrontendIPConfiguration + :param destination_port: The VXLAN destination port that will receive the + tapped traffic. + :type destination_port: int + :param etag: Gets a unique read-only string that changes whenever the + resource is updated. + :type etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interface_tap_configurations': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'network_interface_tap_configurations': {'key': 'properties.networkInterfaceTapConfigurations', 'type': '[NetworkInterfaceTapConfiguration]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'destination_network_interface_ip_configuration': {'key': 'properties.destinationNetworkInterfaceIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'destination_load_balancer_front_end_ip_configuration': {'key': 'properties.destinationLoadBalancerFrontEndIPConfiguration', 'type': 'FrontendIPConfiguration'}, + 'destination_port': {'key': 'properties.destinationPort', 'type': 'int'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, destination_network_interface_ip_configuration=None, destination_load_balancer_front_end_ip_configuration=None, destination_port: int=None, etag: str=None, **kwargs) -> None: + super(VirtualNetworkTap, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.network_interface_tap_configurations = None + self.resource_guid = None + self.provisioning_state = None + self.destination_network_interface_ip_configuration = destination_network_interface_ip_configuration + self.destination_load_balancer_front_end_ip_configuration = destination_load_balancer_front_end_ip_configuration + self.destination_port = destination_port + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage.py new file mode 100644 index 000000000000..a22c247ab33a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkUsage(Model): + """Usage details for subnet. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar current_value: Indicates number of IPs used from the Subnet. + :vartype current_value: float + :ivar id: Subnet identifier. + :vartype id: str + :ivar limit: Indicates the size of the subnet. + :vartype limit: float + :ivar name: The name containing common and localized value for usage. + :vartype name: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkUsageName + :ivar unit: Usage units. Returns 'Count' + :vartype unit: str + """ + + _validation = { + 'current_value': {'readonly': True}, + 'id': {'readonly': True}, + 'limit': {'readonly': True}, + 'name': {'readonly': True}, + 'unit': {'readonly': True}, + } + + _attribute_map = { + 'current_value': {'key': 'currentValue', 'type': 'float'}, + 'id': {'key': 'id', 'type': 'str'}, + 'limit': {'key': 'limit', 'type': 'float'}, + 'name': {'key': 'name', 'type': 'VirtualNetworkUsageName'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkUsage, self).__init__(**kwargs) + self.current_value = None + self.id = None + self.limit = None + self.name = None + self.unit = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_name.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_name.py new file mode 100644 index 000000000000..607ccec3b964 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_name.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkUsageName(Model): + """Usage strings container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar localized_value: Localized subnet size and usage string. + :vartype localized_value: str + :ivar value: Subnet size and usage string. + :vartype value: str + """ + + _validation = { + 'localized_value': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkUsageName, self).__init__(**kwargs) + self.localized_value = None + self.value = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_name_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_name_py3.py new file mode 100644 index 000000000000..1651ebda7e77 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_name_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkUsageName(Model): + """Usage strings container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar localized_value: Localized subnet size and usage string. + :vartype localized_value: str + :ivar value: Subnet size and usage string. + :vartype value: str + """ + + _validation = { + 'localized_value': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualNetworkUsageName, self).__init__(**kwargs) + self.localized_value = None + self.value = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_paged.py new file mode 100644 index 000000000000..d4cc84bdd609 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkUsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkUsage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkUsage]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkUsagePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_py3.py new file mode 100644 index 000000000000..0475b0b9418e --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_network_usage_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkUsage(Model): + """Usage details for subnet. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar current_value: Indicates number of IPs used from the Subnet. + :vartype current_value: float + :ivar id: Subnet identifier. + :vartype id: str + :ivar limit: Indicates the size of the subnet. + :vartype limit: float + :ivar name: The name containing common and localized value for usage. + :vartype name: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkUsageName + :ivar unit: Usage units. Returns 'Count' + :vartype unit: str + """ + + _validation = { + 'current_value': {'readonly': True}, + 'id': {'readonly': True}, + 'limit': {'readonly': True}, + 'name': {'readonly': True}, + 'unit': {'readonly': True}, + } + + _attribute_map = { + 'current_value': {'key': 'currentValue', 'type': 'float'}, + 'id': {'key': 'id', 'type': 'str'}, + 'limit': {'key': 'limit', 'type': 'float'}, + 'name': {'key': 'name', 'type': 'VirtualNetworkUsageName'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualNetworkUsage, self).__init__(**kwargs) + self.current_value = None + self.id = None + self.limit = None + self.name = None + self.unit = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan.py new file mode 100644 index 000000000000..536a04214568 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan.py @@ -0,0 +1,102 @@ +# 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 .resource import Resource + + +class VirtualWAN(Resource): + """VirtualWAN Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param disable_vpn_encryption: Vpn encryption to be disabled or not. + :type disable_vpn_encryption: bool + :ivar virtual_hubs: List of VirtualHubs in the VirtualWAN. + :vartype virtual_hubs: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar vpn_sites: + :vartype vpn_sites: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param security_provider_name: The Security Provider name. + :type security_provider_name: str + :param allow_branch_to_branch_traffic: True if branch to branch traffic is + allowed. + :type allow_branch_to_branch_traffic: bool + :param allow_vnet_to_vnet_traffic: True if Vnet to Vnet traffic is + allowed. + :type allow_vnet_to_vnet_traffic: bool + :param office365_local_breakout_category: The office local breakout + category. Possible values include: 'Optimize', 'OptimizeAndAllow', 'All', + 'None' + :type office365_local_breakout_category: str or + ~azure.mgmt.network.v2018_08_01.models.OfficeTrafficCategory + :param p2_svpn_server_configurations: list of all + P2SVpnServerConfigurations associated with the virtual wan. + :type p2_svpn_server_configurations: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfiguration] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_hubs': {'readonly': True}, + 'vpn_sites': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'disable_vpn_encryption': {'key': 'properties.disableVpnEncryption', 'type': 'bool'}, + 'virtual_hubs': {'key': 'properties.virtualHubs', 'type': '[SubResource]'}, + 'vpn_sites': {'key': 'properties.vpnSites', 'type': '[SubResource]'}, + 'security_provider_name': {'key': 'properties.securityProviderName', 'type': 'str'}, + 'allow_branch_to_branch_traffic': {'key': 'properties.allowBranchToBranchTraffic', 'type': 'bool'}, + 'allow_vnet_to_vnet_traffic': {'key': 'properties.allowVnetToVnetTraffic', 'type': 'bool'}, + 'office365_local_breakout_category': {'key': 'properties.office365LocalBreakoutCategory', 'type': 'str'}, + 'p2_svpn_server_configurations': {'key': 'properties.p2SVpnServerConfigurations', 'type': '[P2SVpnServerConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualWAN, self).__init__(**kwargs) + self.disable_vpn_encryption = kwargs.get('disable_vpn_encryption', None) + self.virtual_hubs = None + self.vpn_sites = None + self.security_provider_name = kwargs.get('security_provider_name', None) + self.allow_branch_to_branch_traffic = kwargs.get('allow_branch_to_branch_traffic', None) + self.allow_vnet_to_vnet_traffic = kwargs.get('allow_vnet_to_vnet_traffic', None) + self.office365_local_breakout_category = kwargs.get('office365_local_breakout_category', None) + self.p2_svpn_server_configurations = kwargs.get('p2_svpn_server_configurations', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_paged.py new file mode 100644 index 000000000000..d617855ad693 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualWANPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualWAN ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualWAN]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualWANPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_py3.py new file mode 100644 index 000000000000..41eb4b89c4c7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_py3.py @@ -0,0 +1,102 @@ +# 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 .resource_py3 import Resource + + +class VirtualWAN(Resource): + """VirtualWAN Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param disable_vpn_encryption: Vpn encryption to be disabled or not. + :type disable_vpn_encryption: bool + :ivar virtual_hubs: List of VirtualHubs in the VirtualWAN. + :vartype virtual_hubs: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :ivar vpn_sites: + :vartype vpn_sites: + list[~azure.mgmt.network.v2018_08_01.models.SubResource] + :param security_provider_name: The Security Provider name. + :type security_provider_name: str + :param allow_branch_to_branch_traffic: True if branch to branch traffic is + allowed. + :type allow_branch_to_branch_traffic: bool + :param allow_vnet_to_vnet_traffic: True if Vnet to Vnet traffic is + allowed. + :type allow_vnet_to_vnet_traffic: bool + :param office365_local_breakout_category: The office local breakout + category. Possible values include: 'Optimize', 'OptimizeAndAllow', 'All', + 'None' + :type office365_local_breakout_category: str or + ~azure.mgmt.network.v2018_08_01.models.OfficeTrafficCategory + :param p2_svpn_server_configurations: list of all + P2SVpnServerConfigurations associated with the virtual wan. + :type p2_svpn_server_configurations: + list[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfiguration] + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_hubs': {'readonly': True}, + 'vpn_sites': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'disable_vpn_encryption': {'key': 'properties.disableVpnEncryption', 'type': 'bool'}, + 'virtual_hubs': {'key': 'properties.virtualHubs', 'type': '[SubResource]'}, + 'vpn_sites': {'key': 'properties.vpnSites', 'type': '[SubResource]'}, + 'security_provider_name': {'key': 'properties.securityProviderName', 'type': 'str'}, + 'allow_branch_to_branch_traffic': {'key': 'properties.allowBranchToBranchTraffic', 'type': 'bool'}, + 'allow_vnet_to_vnet_traffic': {'key': 'properties.allowVnetToVnetTraffic', 'type': 'bool'}, + 'office365_local_breakout_category': {'key': 'properties.office365LocalBreakoutCategory', 'type': 'str'}, + 'p2_svpn_server_configurations': {'key': 'properties.p2SVpnServerConfigurations', 'type': '[P2SVpnServerConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, disable_vpn_encryption: bool=None, security_provider_name: str=None, allow_branch_to_branch_traffic: bool=None, allow_vnet_to_vnet_traffic: bool=None, office365_local_breakout_category=None, p2_svpn_server_configurations=None, provisioning_state=None, **kwargs) -> None: + super(VirtualWAN, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.disable_vpn_encryption = disable_vpn_encryption + self.virtual_hubs = None + self.vpn_sites = None + self.security_provider_name = security_provider_name + self.allow_branch_to_branch_traffic = allow_branch_to_branch_traffic + self.allow_vnet_to_vnet_traffic = allow_vnet_to_vnet_traffic + self.office365_local_breakout_category = office365_local_breakout_category + self.p2_svpn_server_configurations = p2_svpn_server_configurations + self.provisioning_state = provisioning_state + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_provider.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_provider.py new file mode 100644 index 000000000000..d81738442474 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_provider.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualWanSecurityProvider(Model): + """Collection of SecurityProviders. + + :param name: Name of the security provider. + :type name: str + :param url: Url of the security provider. + :type url: str + :param type: Name of the security provider. Possible values include: + 'External', 'Native' + :type type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualWanSecurityProviderType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualWanSecurityProvider, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.url = kwargs.get('url', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_provider_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_provider_py3.py new file mode 100644 index 000000000000..049088cd2f2b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_provider_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualWanSecurityProvider(Model): + """Collection of SecurityProviders. + + :param name: Name of the security provider. + :type name: str + :param url: Url of the security provider. + :type url: str + :param type: Name of the security provider. Possible values include: + 'External', 'Native' + :type type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualWanSecurityProviderType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, url: str=None, type=None, **kwargs) -> None: + super(VirtualWanSecurityProvider, self).__init__(**kwargs) + self.name = name + self.url = url + self.type = type diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_providers.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_providers.py new file mode 100644 index 000000000000..706c93fce665 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_providers.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualWanSecurityProviders(Model): + """Collection of SecurityProviders. + + :param supported_providers: + :type supported_providers: + list[~azure.mgmt.network.v2018_08_01.models.VirtualWanSecurityProvider] + """ + + _attribute_map = { + 'supported_providers': {'key': 'supportedProviders', 'type': '[VirtualWanSecurityProvider]'}, + } + + def __init__(self, **kwargs): + super(VirtualWanSecurityProviders, self).__init__(**kwargs) + self.supported_providers = kwargs.get('supported_providers', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_providers_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_providers_py3.py new file mode 100644 index 000000000000..ea87fd73d971 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/virtual_wan_security_providers_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualWanSecurityProviders(Model): + """Collection of SecurityProviders. + + :param supported_providers: + :type supported_providers: + list[~azure.mgmt.network.v2018_08_01.models.VirtualWanSecurityProvider] + """ + + _attribute_map = { + 'supported_providers': {'key': 'supportedProviders', 'type': '[VirtualWanSecurityProvider]'}, + } + + def __init__(self, *, supported_providers=None, **kwargs) -> None: + super(VirtualWanSecurityProviders, self).__init__(**kwargs) + self.supported_providers = supported_providers diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_configuration.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_configuration.py new file mode 100644 index 000000000000..de6d9aeabb46 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_configuration.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientConfiguration(Model): + """VpnClientConfiguration for P2S client. + + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param vpn_client_root_certificates: VpnClientRootCertificate for virtual + network gateway. + :type vpn_client_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.VpnClientRootCertificate] + :param vpn_client_revoked_certificates: VpnClientRevokedCertificate for + Virtual network gateway. + :type vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2018_08_01.models.VpnClientRevokedCertificate] + :param vpn_client_protocols: VpnClientProtocols for Virtual network + gateway. + :type vpn_client_protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.VpnClientProtocol] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for virtual + network gateway P2S client. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_secret: str + """ + + _attribute_map = { + 'vpn_client_address_pool': {'key': 'vpnClientAddressPool', 'type': 'AddressSpace'}, + 'vpn_client_root_certificates': {'key': 'vpnClientRootCertificates', 'type': '[VpnClientRootCertificate]'}, + 'vpn_client_revoked_certificates': {'key': 'vpnClientRevokedCertificates', 'type': '[VpnClientRevokedCertificate]'}, + 'vpn_client_protocols': {'key': 'vpnClientProtocols', 'type': '[str]'}, + 'vpn_client_ipsec_policies': {'key': 'vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'radiusServerSecret', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientConfiguration, self).__init__(**kwargs) + self.vpn_client_address_pool = kwargs.get('vpn_client_address_pool', None) + self.vpn_client_root_certificates = kwargs.get('vpn_client_root_certificates', None) + self.vpn_client_revoked_certificates = kwargs.get('vpn_client_revoked_certificates', None) + self.vpn_client_protocols = kwargs.get('vpn_client_protocols', None) + self.vpn_client_ipsec_policies = kwargs.get('vpn_client_ipsec_policies', None) + self.radius_server_address = kwargs.get('radius_server_address', None) + self.radius_server_secret = kwargs.get('radius_server_secret', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_configuration_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_configuration_py3.py new file mode 100644 index 000000000000..9a9a548960f3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_configuration_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientConfiguration(Model): + """VpnClientConfiguration for P2S client. + + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param vpn_client_root_certificates: VpnClientRootCertificate for virtual + network gateway. + :type vpn_client_root_certificates: + list[~azure.mgmt.network.v2018_08_01.models.VpnClientRootCertificate] + :param vpn_client_revoked_certificates: VpnClientRevokedCertificate for + Virtual network gateway. + :type vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2018_08_01.models.VpnClientRevokedCertificate] + :param vpn_client_protocols: VpnClientProtocols for Virtual network + gateway. + :type vpn_client_protocols: list[str or + ~azure.mgmt.network.v2018_08_01.models.VpnClientProtocol] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for virtual + network gateway P2S client. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_secret: str + """ + + _attribute_map = { + 'vpn_client_address_pool': {'key': 'vpnClientAddressPool', 'type': 'AddressSpace'}, + 'vpn_client_root_certificates': {'key': 'vpnClientRootCertificates', 'type': '[VpnClientRootCertificate]'}, + 'vpn_client_revoked_certificates': {'key': 'vpnClientRevokedCertificates', 'type': '[VpnClientRevokedCertificate]'}, + 'vpn_client_protocols': {'key': 'vpnClientProtocols', 'type': '[str]'}, + 'vpn_client_ipsec_policies': {'key': 'vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'radiusServerSecret', 'type': 'str'}, + } + + def __init__(self, *, vpn_client_address_pool=None, vpn_client_root_certificates=None, vpn_client_revoked_certificates=None, vpn_client_protocols=None, vpn_client_ipsec_policies=None, radius_server_address: str=None, radius_server_secret: str=None, **kwargs) -> None: + super(VpnClientConfiguration, self).__init__(**kwargs) + self.vpn_client_address_pool = vpn_client_address_pool + self.vpn_client_root_certificates = vpn_client_root_certificates + self.vpn_client_revoked_certificates = vpn_client_revoked_certificates + self.vpn_client_protocols = vpn_client_protocols + self.vpn_client_ipsec_policies = vpn_client_ipsec_policies + self.radius_server_address = radius_server_address + self.radius_server_secret = radius_server_secret diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_connection_health.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_connection_health.py new file mode 100644 index 000000000000..ae4271c388f9 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_connection_health.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientConnectionHealth(Model): + """VpnClientConnectionHealth properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar total_ingress_bytes_transferred: Total of the Ingress Bytes + Transferred in this P2S Vpn connection + :vartype total_ingress_bytes_transferred: long + :ivar total_egress_bytes_transferred: Total of the Egress Bytes + Transferred in this connection + :vartype total_egress_bytes_transferred: long + :param vpn_client_connections_count: The total of p2s vpn clients + connected at this time to this P2SVpnGateway. + :type vpn_client_connections_count: int + :param allocated_ip_addresses: List of allocated ip addresses to the + connected p2s vpn clients. + :type allocated_ip_addresses: list[str] + """ + + _validation = { + 'total_ingress_bytes_transferred': {'readonly': True}, + 'total_egress_bytes_transferred': {'readonly': True}, + } + + _attribute_map = { + 'total_ingress_bytes_transferred': {'key': 'totalIngressBytesTransferred', 'type': 'long'}, + 'total_egress_bytes_transferred': {'key': 'totalEgressBytesTransferred', 'type': 'long'}, + 'vpn_client_connections_count': {'key': 'vpnClientConnectionsCount', 'type': 'int'}, + 'allocated_ip_addresses': {'key': 'allocatedIpAddresses', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VpnClientConnectionHealth, self).__init__(**kwargs) + self.total_ingress_bytes_transferred = None + self.total_egress_bytes_transferred = None + self.vpn_client_connections_count = kwargs.get('vpn_client_connections_count', None) + self.allocated_ip_addresses = kwargs.get('allocated_ip_addresses', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_connection_health_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_connection_health_py3.py new file mode 100644 index 000000000000..13a73f383808 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_connection_health_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientConnectionHealth(Model): + """VpnClientConnectionHealth properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar total_ingress_bytes_transferred: Total of the Ingress Bytes + Transferred in this P2S Vpn connection + :vartype total_ingress_bytes_transferred: long + :ivar total_egress_bytes_transferred: Total of the Egress Bytes + Transferred in this connection + :vartype total_egress_bytes_transferred: long + :param vpn_client_connections_count: The total of p2s vpn clients + connected at this time to this P2SVpnGateway. + :type vpn_client_connections_count: int + :param allocated_ip_addresses: List of allocated ip addresses to the + connected p2s vpn clients. + :type allocated_ip_addresses: list[str] + """ + + _validation = { + 'total_ingress_bytes_transferred': {'readonly': True}, + 'total_egress_bytes_transferred': {'readonly': True}, + } + + _attribute_map = { + 'total_ingress_bytes_transferred': {'key': 'totalIngressBytesTransferred', 'type': 'long'}, + 'total_egress_bytes_transferred': {'key': 'totalEgressBytesTransferred', 'type': 'long'}, + 'vpn_client_connections_count': {'key': 'vpnClientConnectionsCount', 'type': 'int'}, + 'allocated_ip_addresses': {'key': 'allocatedIpAddresses', 'type': '[str]'}, + } + + def __init__(self, *, vpn_client_connections_count: int=None, allocated_ip_addresses=None, **kwargs) -> None: + super(VpnClientConnectionHealth, self).__init__(**kwargs) + self.total_ingress_bytes_transferred = None + self.total_egress_bytes_transferred = None + self.vpn_client_connections_count = vpn_client_connections_count + self.allocated_ip_addresses = allocated_ip_addresses diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_ipsec_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_ipsec_parameters.py new file mode 100644 index 000000000000..593e20578231 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_ipsec_parameters.py @@ -0,0 +1,87 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientIPsecParameters(Model): + """An IPSec parameters for a virtual network gateway P2S connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2018_08_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2018_08_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2018_08_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2018_08_01.models.IkeIntegrity + :param dh_group: Required. The DH Groups used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2018_08_01.models.DhGroup + :param pfs_group: Required. The Pfs Groups used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2018_08_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientIPsecParameters, self).__init__(**kwargs) + self.sa_life_time_seconds = kwargs.get('sa_life_time_seconds', None) + self.sa_data_size_kilobytes = kwargs.get('sa_data_size_kilobytes', None) + self.ipsec_encryption = kwargs.get('ipsec_encryption', None) + self.ipsec_integrity = kwargs.get('ipsec_integrity', None) + self.ike_encryption = kwargs.get('ike_encryption', None) + self.ike_integrity = kwargs.get('ike_integrity', None) + self.dh_group = kwargs.get('dh_group', None) + self.pfs_group = kwargs.get('pfs_group', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_ipsec_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_ipsec_parameters_py3.py new file mode 100644 index 000000000000..8ebada3c77f5 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_ipsec_parameters_py3.py @@ -0,0 +1,87 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientIPsecParameters(Model): + """An IPSec parameters for a virtual network gateway P2S connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2018_08_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2018_08_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2018_08_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2018_08_01.models.IkeIntegrity + :param dh_group: Required. The DH Groups used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2018_08_01.models.DhGroup + :param pfs_group: Required. The Pfs Groups used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2018_08_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, *, sa_life_time_seconds: int, sa_data_size_kilobytes: int, ipsec_encryption, ipsec_integrity, ike_encryption, ike_integrity, dh_group, pfs_group, **kwargs) -> None: + super(VpnClientIPsecParameters, self).__init__(**kwargs) + self.sa_life_time_seconds = sa_life_time_seconds + self.sa_data_size_kilobytes = sa_data_size_kilobytes + self.ipsec_encryption = ipsec_encryption + self.ipsec_integrity = ipsec_integrity + self.ike_encryption = ike_encryption + self.ike_integrity = ike_integrity + self.dh_group = dh_group + self.pfs_group = pfs_group diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_parameters.py new file mode 100644 index 000000000000..323a68106e36 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_parameters.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientParameters(Model): + """Vpn Client Parameters for package generation. + + :param processor_architecture: VPN client Processor Architecture. Possible + values are: 'AMD64' and 'X86'. Possible values include: 'Amd64', 'X86' + :type processor_architecture: str or + ~azure.mgmt.network.v2018_08_01.models.ProcessorArchitecture + :param authentication_method: VPN client Authentication Method. Possible + values are: 'EAPTLS' and 'EAPMSCHAPv2'. Possible values include: 'EAPTLS', + 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2018_08_01.models.AuthenticationMethod + :param radius_server_auth_certificate: The public certificate data for the + radius server authentication certificate as a Base-64 encoded string. + Required only if external radius authentication has been configured with + EAPTLS authentication. + :type radius_server_auth_certificate: str + :param client_root_certificates: A list of client root certificates public + certificate data encoded as Base-64 strings. Optional parameter for + external radius based authentication with EAPTLS. + :type client_root_certificates: list[str] + """ + + _attribute_map = { + 'processor_architecture': {'key': 'processorArchitecture', 'type': 'str'}, + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + 'radius_server_auth_certificate': {'key': 'radiusServerAuthCertificate', 'type': 'str'}, + 'client_root_certificates': {'key': 'clientRootCertificates', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VpnClientParameters, self).__init__(**kwargs) + self.processor_architecture = kwargs.get('processor_architecture', None) + self.authentication_method = kwargs.get('authentication_method', None) + self.radius_server_auth_certificate = kwargs.get('radius_server_auth_certificate', None) + self.client_root_certificates = kwargs.get('client_root_certificates', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_parameters_py3.py new file mode 100644 index 000000000000..951691f8c595 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_parameters_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnClientParameters(Model): + """Vpn Client Parameters for package generation. + + :param processor_architecture: VPN client Processor Architecture. Possible + values are: 'AMD64' and 'X86'. Possible values include: 'Amd64', 'X86' + :type processor_architecture: str or + ~azure.mgmt.network.v2018_08_01.models.ProcessorArchitecture + :param authentication_method: VPN client Authentication Method. Possible + values are: 'EAPTLS' and 'EAPMSCHAPv2'. Possible values include: 'EAPTLS', + 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2018_08_01.models.AuthenticationMethod + :param radius_server_auth_certificate: The public certificate data for the + radius server authentication certificate as a Base-64 encoded string. + Required only if external radius authentication has been configured with + EAPTLS authentication. + :type radius_server_auth_certificate: str + :param client_root_certificates: A list of client root certificates public + certificate data encoded as Base-64 strings. Optional parameter for + external radius based authentication with EAPTLS. + :type client_root_certificates: list[str] + """ + + _attribute_map = { + 'processor_architecture': {'key': 'processorArchitecture', 'type': 'str'}, + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + 'radius_server_auth_certificate': {'key': 'radiusServerAuthCertificate', 'type': 'str'}, + 'client_root_certificates': {'key': 'clientRootCertificates', 'type': '[str]'}, + } + + def __init__(self, *, processor_architecture=None, authentication_method=None, radius_server_auth_certificate: str=None, client_root_certificates=None, **kwargs) -> None: + super(VpnClientParameters, self).__init__(**kwargs) + self.processor_architecture = processor_architecture + self.authentication_method = authentication_method + self.radius_server_auth_certificate = radius_server_auth_certificate + self.client_root_certificates = client_root_certificates diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_revoked_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_revoked_certificate.py new file mode 100644 index 000000000000..1fa6f6a1ef23 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_revoked_certificate.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource import SubResource + + +class VpnClientRevokedCertificate(SubResource): + """VPN client revoked certificate of virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the VPN client revoked + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientRevokedCertificate, self).__init__(**kwargs) + self.thumbprint = kwargs.get('thumbprint', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_revoked_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_revoked_certificate_py3.py new file mode 100644 index 000000000000..e540c5ff2068 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_revoked_certificate_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .sub_resource_py3 import SubResource + + +class VpnClientRevokedCertificate(SubResource): + """VPN client revoked certificate of virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the VPN client revoked + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, thumbprint: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(VpnClientRevokedCertificate, self).__init__(id=id, **kwargs) + self.thumbprint = thumbprint + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_root_certificate.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_root_certificate.py new file mode 100644 index 000000000000..48c7033d42ec --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_root_certificate.py @@ -0,0 +1,57 @@ +# 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 .sub_resource import SubResource + + +class VpnClientRootCertificate(SubResource): + """VPN client root certificate of virtual network gateway. + + 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 id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the VPN client root + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientRootCertificate, self).__init__(**kwargs) + self.public_cert_data = kwargs.get('public_cert_data', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = kwargs.get('etag', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_root_certificate_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_root_certificate_py3.py new file mode 100644 index 000000000000..6567985eee0b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_client_root_certificate_py3.py @@ -0,0 +1,57 @@ +# 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 .sub_resource_py3 import SubResource + + +class VpnClientRootCertificate(SubResource): + """VPN client root certificate of virtual network gateway. + + 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 id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the VPN client root + certificate resource. Possible values are: 'Updating', 'Deleting', and + 'Failed'. + :vartype provisioning_state: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param etag: A unique read-only string that changes whenever the resource + is updated. + :type etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, public_cert_data: str, id: str=None, name: str=None, etag: str=None, **kwargs) -> None: + super(VpnClientRootCertificate, self).__init__(id=id, **kwargs) + self.public_cert_data = public_cert_data + self.provisioning_state = None + self.name = name + self.etag = etag diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection.py new file mode 100644 index 000000000000..535e4b1d2570 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection.py @@ -0,0 +1,106 @@ +# 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 .sub_resource import SubResource + + +class VpnConnection(SubResource): + """VpnConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param remote_vpn_site: Id of the connected vpn site. + :type remote_vpn_site: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param routing_weight: routing weight for vpn connection. + :type routing_weight: int + :param connection_status: The connection status. Possible values include: + 'Unknown', 'Connecting', 'Connected', 'NotConnected' + :type connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.VpnConnectionStatus + :param vpn_connection_protocol_type: Connection protocol used for this + connection. Possible values include: 'IKEv2', 'IKEv1' + :type vpn_connection_protocol_type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionProtocol + :ivar ingress_bytes_transferred: Ingress bytes transferred. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: Egress bytes transferred. + :vartype egress_bytes_transferred: long + :param connection_bandwidth: Expected bandwidth in MBPS. + :type connection_bandwidth: int + :param shared_key: SharedKey for the vpn connection. + :type shared_key: str + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param enable_rate_limiting: EnableBgp flag + :type enable_rate_limiting: bool + :param enable_internet_security: Enable internet security + :type enable_internet_security: bool + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'remote_vpn_site': {'key': 'properties.remoteVpnSite', 'type': 'SubResource'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'vpn_connection_protocol_type': {'key': 'properties.vpnConnectionProtocolType', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'connection_bandwidth': {'key': 'properties.connectionBandwidth', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'enable_rate_limiting': {'key': 'properties.enableRateLimiting', 'type': 'bool'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnConnection, self).__init__(**kwargs) + self.remote_vpn_site = kwargs.get('remote_vpn_site', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.connection_status = kwargs.get('connection_status', None) + self.vpn_connection_protocol_type = kwargs.get('vpn_connection_protocol_type', None) + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.connection_bandwidth = kwargs.get('connection_bandwidth', None) + self.shared_key = kwargs.get('shared_key', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.enable_rate_limiting = kwargs.get('enable_rate_limiting', None) + self.enable_internet_security = kwargs.get('enable_internet_security', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.name = kwargs.get('name', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection_paged.py new file mode 100644 index 000000000000..d113f7287908 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VpnConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnConnectionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection_py3.py new file mode 100644 index 000000000000..4b93dc0be0b1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_connection_py3.py @@ -0,0 +1,106 @@ +# 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 .sub_resource_py3 import SubResource + + +class VpnConnection(SubResource): + """VpnConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param remote_vpn_site: Id of the connected vpn site. + :type remote_vpn_site: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param routing_weight: routing weight for vpn connection. + :type routing_weight: int + :param connection_status: The connection status. Possible values include: + 'Unknown', 'Connecting', 'Connected', 'NotConnected' + :type connection_status: str or + ~azure.mgmt.network.v2018_08_01.models.VpnConnectionStatus + :param vpn_connection_protocol_type: Connection protocol used for this + connection. Possible values include: 'IKEv2', 'IKEv1' + :type vpn_connection_protocol_type: str or + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionProtocol + :ivar ingress_bytes_transferred: Ingress bytes transferred. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: Egress bytes transferred. + :vartype egress_bytes_transferred: long + :param connection_bandwidth: Expected bandwidth in MBPS. + :type connection_bandwidth: int + :param shared_key: SharedKey for the vpn connection. + :type shared_key: str + :param enable_bgp: EnableBgp flag + :type enable_bgp: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2018_08_01.models.IpsecPolicy] + :param enable_rate_limiting: EnableBgp flag + :type enable_rate_limiting: bool + :param enable_internet_security: Enable internet security + :type enable_internet_security: bool + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'remote_vpn_site': {'key': 'properties.remoteVpnSite', 'type': 'SubResource'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'vpn_connection_protocol_type': {'key': 'properties.vpnConnectionProtocolType', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'connection_bandwidth': {'key': 'properties.connectionBandwidth', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'enable_rate_limiting': {'key': 'properties.enableRateLimiting', 'type': 'bool'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, remote_vpn_site=None, routing_weight: int=None, connection_status=None, vpn_connection_protocol_type=None, connection_bandwidth: int=None, shared_key: str=None, enable_bgp: bool=None, ipsec_policies=None, enable_rate_limiting: bool=None, enable_internet_security: bool=None, provisioning_state=None, name: str=None, **kwargs) -> None: + super(VpnConnection, self).__init__(id=id, **kwargs) + self.remote_vpn_site = remote_vpn_site + self.routing_weight = routing_weight + self.connection_status = connection_status + self.vpn_connection_protocol_type = vpn_connection_protocol_type + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.connection_bandwidth = connection_bandwidth + self.shared_key = shared_key + self.enable_bgp = enable_bgp + self.ipsec_policies = ipsec_policies + self.enable_rate_limiting = enable_rate_limiting + self.enable_internet_security = enable_internet_security + self.provisioning_state = provisioning_state + self.name = name + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_device_script_parameters.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_device_script_parameters.py new file mode 100644 index 000000000000..e4f8f12701b7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_device_script_parameters.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnDeviceScriptParameters(Model): + """Vpn device configuration script generation parameters. + + :param vendor: The vendor for the vpn device. + :type vendor: str + :param device_family: The device family for the vpn device. + :type device_family: str + :param firmware_version: The firmware version for the vpn device. + :type firmware_version: str + """ + + _attribute_map = { + 'vendor': {'key': 'vendor', 'type': 'str'}, + 'device_family': {'key': 'deviceFamily', 'type': 'str'}, + 'firmware_version': {'key': 'firmwareVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnDeviceScriptParameters, self).__init__(**kwargs) + self.vendor = kwargs.get('vendor', None) + self.device_family = kwargs.get('device_family', None) + self.firmware_version = kwargs.get('firmware_version', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_device_script_parameters_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_device_script_parameters_py3.py new file mode 100644 index 000000000000..e5520ffb5a18 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_device_script_parameters_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnDeviceScriptParameters(Model): + """Vpn device configuration script generation parameters. + + :param vendor: The vendor for the vpn device. + :type vendor: str + :param device_family: The device family for the vpn device. + :type device_family: str + :param firmware_version: The firmware version for the vpn device. + :type firmware_version: str + """ + + _attribute_map = { + 'vendor': {'key': 'vendor', 'type': 'str'}, + 'device_family': {'key': 'deviceFamily', 'type': 'str'}, + 'firmware_version': {'key': 'firmwareVersion', 'type': 'str'}, + } + + def __init__(self, *, vendor: str=None, device_family: str=None, firmware_version: str=None, **kwargs) -> None: + super(VpnDeviceScriptParameters, self).__init__(**kwargs) + self.vendor = vendor + self.device_family = device_family + self.firmware_version = firmware_version diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway.py new file mode 100644 index 000000000000..43ee984e5f7a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway.py @@ -0,0 +1,76 @@ +# 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 .resource import Resource + + +class VpnGateway(Resource): + """VpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs + :type virtual_hub: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param connections: list of all vpn connections to the gateway. + :type connections: + list[~azure.mgmt.network.v2018_08_01.models.VpnConnection] + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_08_01.models.BgpSettings + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param vpn_gateway_scale_unit: The scale unit for this vpn gateway. + :type vpn_gateway_scale_unit: int + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'connections': {'key': 'properties.connections', 'type': '[VpnConnection]'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_gateway_scale_unit': {'key': 'properties.vpnGatewayScaleUnit', 'type': 'int'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnGateway, self).__init__(**kwargs) + self.virtual_hub = kwargs.get('virtual_hub', None) + self.connections = kwargs.get('connections', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.vpn_gateway_scale_unit = kwargs.get('vpn_gateway_scale_unit', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway_paged.py new file mode 100644 index 000000000000..ba64354208d0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VpnGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnGatewayPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway_py3.py new file mode 100644 index 000000000000..e478b830bc48 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_gateway_py3.py @@ -0,0 +1,76 @@ +# 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 .resource_py3 import Resource + + +class VpnGateway(Resource): + """VpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs + :type virtual_hub: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param connections: list of all vpn connections to the gateway. + :type connections: + list[~azure.mgmt.network.v2018_08_01.models.VpnConnection] + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2018_08_01.models.BgpSettings + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param vpn_gateway_scale_unit: The scale unit for this vpn gateway. + :type vpn_gateway_scale_unit: int + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'connections': {'key': 'properties.connections', 'type': '[VpnConnection]'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_gateway_scale_unit': {'key': 'properties.vpnGatewayScaleUnit', 'type': 'int'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_hub=None, connections=None, bgp_settings=None, provisioning_state=None, vpn_gateway_scale_unit: int=None, **kwargs) -> None: + super(VpnGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_hub = virtual_hub + self.connections = connections + self.bgp_settings = bgp_settings + self.provisioning_state = provisioning_state + self.vpn_gateway_scale_unit = vpn_gateway_scale_unit + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_profile_response.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_profile_response.py new file mode 100644 index 000000000000..ec8320a2d0cf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_profile_response.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnProfileResponse(Model): + """Vpn Profile Response for package generation. + + :param profile_url: URL to the VPN profile + :type profile_url: str + """ + + _attribute_map = { + 'profile_url': {'key': 'profileUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnProfileResponse, self).__init__(**kwargs) + self.profile_url = kwargs.get('profile_url', None) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_profile_response_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_profile_response_py3.py new file mode 100644 index 000000000000..96fb208bf55d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_profile_response_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnProfileResponse(Model): + """Vpn Profile Response for package generation. + + :param profile_url: URL to the VPN profile + :type profile_url: str + """ + + _attribute_map = { + 'profile_url': {'key': 'profileUrl', 'type': 'str'}, + } + + def __init__(self, *, profile_url: str=None, **kwargs) -> None: + super(VpnProfileResponse, self).__init__(**kwargs) + self.profile_url = profile_url diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site.py new file mode 100644 index 000000000000..9a55f2b4e4e4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site.py @@ -0,0 +1,89 @@ +# 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 .resource import Resource + + +class VpnSite(Resource): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the vpnSite belongs + :type virtual_wan: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param device_properties: The device properties + :type device_properties: + ~azure.mgmt.network.v2018_08_01.models.DeviceProperties + :param ip_address: The ip-address for the vpn-site. + :type ip_address: str + :param site_key: The key for vpn-site that can be used for connections. + :type site_key: str + :param address_space: The AddressSpace that contains an array of IP + address ranges. + :type address_space: ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param bgp_properties: The set of bgp properties. + :type bgp_properties: ~azure.mgmt.network.v2018_08_01.models.BgpSettings + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param is_security_site: IsSecuritySite flag + :type is_security_site: bool + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'device_properties': {'key': 'properties.deviceProperties', 'type': 'DeviceProperties'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'site_key': {'key': 'properties.siteKey', 'type': 'str'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'bgp_properties': {'key': 'properties.bgpProperties', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'is_security_site': {'key': 'properties.isSecuritySite', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnSite, self).__init__(**kwargs) + self.virtual_wan = kwargs.get('virtual_wan', None) + self.device_properties = kwargs.get('device_properties', None) + self.ip_address = kwargs.get('ip_address', None) + self.site_key = kwargs.get('site_key', None) + self.address_space = kwargs.get('address_space', None) + self.bgp_properties = kwargs.get('bgp_properties', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.is_security_site = kwargs.get('is_security_site', None) + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_id.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_id.py new file mode 100644 index 000000000000..f033d813f347 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_id.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnSiteId(Model): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vpn_site: The resource-uri of the vpn-site for which config is to be + fetched. + :vartype vpn_site: str + """ + + _validation = { + 'vpn_site': {'readonly': True}, + } + + _attribute_map = { + 'vpn_site': {'key': 'vpnSite', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnSiteId, self).__init__(**kwargs) + self.vpn_site = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_id_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_id_py3.py new file mode 100644 index 000000000000..3a12683973e3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_id_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VpnSiteId(Model): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vpn_site: The resource-uri of the vpn-site for which config is to be + fetched. + :vartype vpn_site: str + """ + + _validation = { + 'vpn_site': {'readonly': True}, + } + + _attribute_map = { + 'vpn_site': {'key': 'vpnSite', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VpnSiteId, self).__init__(**kwargs) + self.vpn_site = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_paged.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_paged.py new file mode 100644 index 000000000000..f3b4114068cb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VpnSitePaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnSite ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnSite]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnSitePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_py3.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_py3.py new file mode 100644 index 000000000000..4f11fddebe62 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/models/vpn_site_py3.py @@ -0,0 +1,89 @@ +# 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 .resource_py3 import Resource + + +class VpnSite(Resource): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the vpnSite belongs + :type virtual_wan: ~azure.mgmt.network.v2018_08_01.models.SubResource + :param device_properties: The device properties + :type device_properties: + ~azure.mgmt.network.v2018_08_01.models.DeviceProperties + :param ip_address: The ip-address for the vpn-site. + :type ip_address: str + :param site_key: The key for vpn-site that can be used for connections. + :type site_key: str + :param address_space: The AddressSpace that contains an array of IP + address ranges. + :type address_space: ~azure.mgmt.network.v2018_08_01.models.AddressSpace + :param bgp_properties: The set of bgp properties. + :type bgp_properties: ~azure.mgmt.network.v2018_08_01.models.BgpSettings + :param provisioning_state: The provisioning state of the resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2018_08_01.models.ProvisioningState + :param is_security_site: IsSecuritySite flag + :type is_security_site: bool + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'device_properties': {'key': 'properties.deviceProperties', 'type': 'DeviceProperties'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'site_key': {'key': 'properties.siteKey', 'type': 'str'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'bgp_properties': {'key': 'properties.bgpProperties', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'is_security_site': {'key': 'properties.isSecuritySite', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_wan=None, device_properties=None, ip_address: str=None, site_key: str=None, address_space=None, bgp_properties=None, provisioning_state=None, is_security_site: bool=None, **kwargs) -> None: + super(VpnSite, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_wan = virtual_wan + self.device_properties = device_properties + self.ip_address = ip_address + self.site_key = site_key + self.address_space = address_space + self.bgp_properties = bgp_properties + self.provisioning_state = provisioning_state + self.is_security_site = is_security_site + self.etag = None diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/network_management_client.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/network_management_client.py new file mode 100644 index 000000000000..5864009fbd7c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/network_management_client.py @@ -0,0 +1,532 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling +import uuid +from .operations.application_gateways_operations import ApplicationGatewaysOperations +from .operations.application_security_groups_operations import ApplicationSecurityGroupsOperations +from .operations.available_delegations_operations import AvailableDelegationsOperations +from .operations.available_resource_group_delegations_operations import AvailableResourceGroupDelegationsOperations +from .operations.azure_firewalls_operations import AzureFirewallsOperations +from .operations.azure_firewall_fqdn_tags_operations import AzureFirewallFqdnTagsOperations +from .operations.ddos_protection_plans_operations import DdosProtectionPlansOperations +from .operations.available_endpoint_services_operations import AvailableEndpointServicesOperations +from .operations.express_route_circuit_authorizations_operations import ExpressRouteCircuitAuthorizationsOperations +from .operations.express_route_circuit_peerings_operations import ExpressRouteCircuitPeeringsOperations +from .operations.express_route_circuit_connections_operations import ExpressRouteCircuitConnectionsOperations +from .operations.express_route_circuits_operations import ExpressRouteCircuitsOperations +from .operations.express_route_service_providers_operations import ExpressRouteServiceProvidersOperations +from .operations.express_route_cross_connections_operations import ExpressRouteCrossConnectionsOperations +from .operations.express_route_cross_connection_peerings_operations import ExpressRouteCrossConnectionPeeringsOperations +from .operations.express_route_gateways_operations import ExpressRouteGatewaysOperations +from .operations.express_route_connections_operations import ExpressRouteConnectionsOperations +from .operations.interface_endpoints_operations import InterfaceEndpointsOperations +from .operations.load_balancers_operations import LoadBalancersOperations +from .operations.load_balancer_backend_address_pools_operations import LoadBalancerBackendAddressPoolsOperations +from .operations.load_balancer_frontend_ip_configurations_operations import LoadBalancerFrontendIPConfigurationsOperations +from .operations.inbound_nat_rules_operations import InboundNatRulesOperations +from .operations.load_balancer_load_balancing_rules_operations import LoadBalancerLoadBalancingRulesOperations +from .operations.load_balancer_network_interfaces_operations import LoadBalancerNetworkInterfacesOperations +from .operations.load_balancer_probes_operations import LoadBalancerProbesOperations +from .operations.network_interfaces_operations import NetworkInterfacesOperations +from .operations.network_interface_ip_configurations_operations import NetworkInterfaceIPConfigurationsOperations +from .operations.network_interface_load_balancers_operations import NetworkInterfaceLoadBalancersOperations +from .operations.network_interface_tap_configurations_operations import NetworkInterfaceTapConfigurationsOperations +from .operations.network_profiles_operations import NetworkProfilesOperations +from .operations.network_security_groups_operations import NetworkSecurityGroupsOperations +from .operations.security_rules_operations import SecurityRulesOperations +from .operations.default_security_rules_operations import DefaultSecurityRulesOperations +from .operations.network_watchers_operations import NetworkWatchersOperations +from .operations.packet_captures_operations import PacketCapturesOperations +from .operations.connection_monitors_operations import ConnectionMonitorsOperations +from .operations.operations import Operations +from .operations.public_ip_addresses_operations import PublicIPAddressesOperations +from .operations.public_ip_prefixes_operations import PublicIPPrefixesOperations +from .operations.route_filters_operations import RouteFiltersOperations +from .operations.route_filter_rules_operations import RouteFilterRulesOperations +from .operations.route_tables_operations import RouteTablesOperations +from .operations.routes_operations import RoutesOperations +from .operations.bgp_service_communities_operations import BgpServiceCommunitiesOperations +from .operations.service_endpoint_policies_operations import ServiceEndpointPoliciesOperations +from .operations.service_endpoint_policy_definitions_operations import ServiceEndpointPolicyDefinitionsOperations +from .operations.usages_operations import UsagesOperations +from .operations.virtual_networks_operations import VirtualNetworksOperations +from .operations.subnets_operations import SubnetsOperations +from .operations.virtual_network_peerings_operations import VirtualNetworkPeeringsOperations +from .operations.virtual_network_taps_operations import VirtualNetworkTapsOperations +from .operations.virtual_network_gateways_operations import VirtualNetworkGatewaysOperations +from .operations.virtual_network_gateway_connections_operations import VirtualNetworkGatewayConnectionsOperations +from .operations.local_network_gateways_operations import LocalNetworkGatewaysOperations +from .operations.virtual_wans_operations import VirtualWansOperations +from .operations.vpn_sites_operations import VpnSitesOperations +from .operations.vpn_sites_configuration_operations import VpnSitesConfigurationOperations +from .operations.virtual_hubs_operations import VirtualHubsOperations +from .operations.hub_virtual_network_connections_operations import HubVirtualNetworkConnectionsOperations +from .operations.vpn_gateways_operations import VpnGatewaysOperations +from .operations.vpn_connections_operations import VpnConnectionsOperations +from .operations.p2s_vpn_server_configurations_operations import P2sVpnServerConfigurationsOperations +from .operations.p2s_vpn_gateways_operations import P2sVpnGatewaysOperations +from . import models + + +class NetworkManagementClientConfiguration(AzureConfiguration): + """Configuration for NetworkManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription credentials which uniquely + identify the Microsoft Azure subscription. The subscription ID forms part + of the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(NetworkManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-network/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class NetworkManagementClient(SDKClient): + """Network Client + + :ivar config: Configuration for client. + :vartype config: NetworkManagementClientConfiguration + + :ivar application_gateways: ApplicationGateways operations + :vartype application_gateways: azure.mgmt.network.v2018_08_01.operations.ApplicationGatewaysOperations + :ivar application_security_groups: ApplicationSecurityGroups operations + :vartype application_security_groups: azure.mgmt.network.v2018_08_01.operations.ApplicationSecurityGroupsOperations + :ivar available_delegations: AvailableDelegations operations + :vartype available_delegations: azure.mgmt.network.v2018_08_01.operations.AvailableDelegationsOperations + :ivar available_resource_group_delegations: AvailableResourceGroupDelegations operations + :vartype available_resource_group_delegations: azure.mgmt.network.v2018_08_01.operations.AvailableResourceGroupDelegationsOperations + :ivar azure_firewalls: AzureFirewalls operations + :vartype azure_firewalls: azure.mgmt.network.v2018_08_01.operations.AzureFirewallsOperations + :ivar azure_firewall_fqdn_tags: AzureFirewallFqdnTags operations + :vartype azure_firewall_fqdn_tags: azure.mgmt.network.v2018_08_01.operations.AzureFirewallFqdnTagsOperations + :ivar ddos_protection_plans: DdosProtectionPlans operations + :vartype ddos_protection_plans: azure.mgmt.network.v2018_08_01.operations.DdosProtectionPlansOperations + :ivar available_endpoint_services: AvailableEndpointServices operations + :vartype available_endpoint_services: azure.mgmt.network.v2018_08_01.operations.AvailableEndpointServicesOperations + :ivar express_route_circuit_authorizations: ExpressRouteCircuitAuthorizations operations + :vartype express_route_circuit_authorizations: azure.mgmt.network.v2018_08_01.operations.ExpressRouteCircuitAuthorizationsOperations + :ivar express_route_circuit_peerings: ExpressRouteCircuitPeerings operations + :vartype express_route_circuit_peerings: azure.mgmt.network.v2018_08_01.operations.ExpressRouteCircuitPeeringsOperations + :ivar express_route_circuit_connections: ExpressRouteCircuitConnections operations + :vartype express_route_circuit_connections: azure.mgmt.network.v2018_08_01.operations.ExpressRouteCircuitConnectionsOperations + :ivar express_route_circuits: ExpressRouteCircuits operations + :vartype express_route_circuits: azure.mgmt.network.v2018_08_01.operations.ExpressRouteCircuitsOperations + :ivar express_route_service_providers: ExpressRouteServiceProviders operations + :vartype express_route_service_providers: azure.mgmt.network.v2018_08_01.operations.ExpressRouteServiceProvidersOperations + :ivar express_route_cross_connections: ExpressRouteCrossConnections operations + :vartype express_route_cross_connections: azure.mgmt.network.v2018_08_01.operations.ExpressRouteCrossConnectionsOperations + :ivar express_route_cross_connection_peerings: ExpressRouteCrossConnectionPeerings operations + :vartype express_route_cross_connection_peerings: azure.mgmt.network.v2018_08_01.operations.ExpressRouteCrossConnectionPeeringsOperations + :ivar express_route_gateways: ExpressRouteGateways operations + :vartype express_route_gateways: azure.mgmt.network.v2018_08_01.operations.ExpressRouteGatewaysOperations + :ivar express_route_connections: ExpressRouteConnections operations + :vartype express_route_connections: azure.mgmt.network.v2018_08_01.operations.ExpressRouteConnectionsOperations + :ivar interface_endpoints: InterfaceEndpoints operations + :vartype interface_endpoints: azure.mgmt.network.v2018_08_01.operations.InterfaceEndpointsOperations + :ivar load_balancers: LoadBalancers operations + :vartype load_balancers: azure.mgmt.network.v2018_08_01.operations.LoadBalancersOperations + :ivar load_balancer_backend_address_pools: LoadBalancerBackendAddressPools operations + :vartype load_balancer_backend_address_pools: azure.mgmt.network.v2018_08_01.operations.LoadBalancerBackendAddressPoolsOperations + :ivar load_balancer_frontend_ip_configurations: LoadBalancerFrontendIPConfigurations operations + :vartype load_balancer_frontend_ip_configurations: azure.mgmt.network.v2018_08_01.operations.LoadBalancerFrontendIPConfigurationsOperations + :ivar inbound_nat_rules: InboundNatRules operations + :vartype inbound_nat_rules: azure.mgmt.network.v2018_08_01.operations.InboundNatRulesOperations + :ivar load_balancer_load_balancing_rules: LoadBalancerLoadBalancingRules operations + :vartype load_balancer_load_balancing_rules: azure.mgmt.network.v2018_08_01.operations.LoadBalancerLoadBalancingRulesOperations + :ivar load_balancer_network_interfaces: LoadBalancerNetworkInterfaces operations + :vartype load_balancer_network_interfaces: azure.mgmt.network.v2018_08_01.operations.LoadBalancerNetworkInterfacesOperations + :ivar load_balancer_probes: LoadBalancerProbes operations + :vartype load_balancer_probes: azure.mgmt.network.v2018_08_01.operations.LoadBalancerProbesOperations + :ivar network_interfaces: NetworkInterfaces operations + :vartype network_interfaces: azure.mgmt.network.v2018_08_01.operations.NetworkInterfacesOperations + :ivar network_interface_ip_configurations: NetworkInterfaceIPConfigurations operations + :vartype network_interface_ip_configurations: azure.mgmt.network.v2018_08_01.operations.NetworkInterfaceIPConfigurationsOperations + :ivar network_interface_load_balancers: NetworkInterfaceLoadBalancers operations + :vartype network_interface_load_balancers: azure.mgmt.network.v2018_08_01.operations.NetworkInterfaceLoadBalancersOperations + :ivar network_interface_tap_configurations: NetworkInterfaceTapConfigurations operations + :vartype network_interface_tap_configurations: azure.mgmt.network.v2018_08_01.operations.NetworkInterfaceTapConfigurationsOperations + :ivar network_profiles: NetworkProfiles operations + :vartype network_profiles: azure.mgmt.network.v2018_08_01.operations.NetworkProfilesOperations + :ivar network_security_groups: NetworkSecurityGroups operations + :vartype network_security_groups: azure.mgmt.network.v2018_08_01.operations.NetworkSecurityGroupsOperations + :ivar security_rules: SecurityRules operations + :vartype security_rules: azure.mgmt.network.v2018_08_01.operations.SecurityRulesOperations + :ivar default_security_rules: DefaultSecurityRules operations + :vartype default_security_rules: azure.mgmt.network.v2018_08_01.operations.DefaultSecurityRulesOperations + :ivar network_watchers: NetworkWatchers operations + :vartype network_watchers: azure.mgmt.network.v2018_08_01.operations.NetworkWatchersOperations + :ivar packet_captures: PacketCaptures operations + :vartype packet_captures: azure.mgmt.network.v2018_08_01.operations.PacketCapturesOperations + :ivar connection_monitors: ConnectionMonitors operations + :vartype connection_monitors: azure.mgmt.network.v2018_08_01.operations.ConnectionMonitorsOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.network.v2018_08_01.operations.Operations + :ivar public_ip_addresses: PublicIPAddresses operations + :vartype public_ip_addresses: azure.mgmt.network.v2018_08_01.operations.PublicIPAddressesOperations + :ivar public_ip_prefixes: PublicIPPrefixes operations + :vartype public_ip_prefixes: azure.mgmt.network.v2018_08_01.operations.PublicIPPrefixesOperations + :ivar route_filters: RouteFilters operations + :vartype route_filters: azure.mgmt.network.v2018_08_01.operations.RouteFiltersOperations + :ivar route_filter_rules: RouteFilterRules operations + :vartype route_filter_rules: azure.mgmt.network.v2018_08_01.operations.RouteFilterRulesOperations + :ivar route_tables: RouteTables operations + :vartype route_tables: azure.mgmt.network.v2018_08_01.operations.RouteTablesOperations + :ivar routes: Routes operations + :vartype routes: azure.mgmt.network.v2018_08_01.operations.RoutesOperations + :ivar bgp_service_communities: BgpServiceCommunities operations + :vartype bgp_service_communities: azure.mgmt.network.v2018_08_01.operations.BgpServiceCommunitiesOperations + :ivar service_endpoint_policies: ServiceEndpointPolicies operations + :vartype service_endpoint_policies: azure.mgmt.network.v2018_08_01.operations.ServiceEndpointPoliciesOperations + :ivar service_endpoint_policy_definitions: ServiceEndpointPolicyDefinitions operations + :vartype service_endpoint_policy_definitions: azure.mgmt.network.v2018_08_01.operations.ServiceEndpointPolicyDefinitionsOperations + :ivar usages: Usages operations + :vartype usages: azure.mgmt.network.v2018_08_01.operations.UsagesOperations + :ivar virtual_networks: VirtualNetworks operations + :vartype virtual_networks: azure.mgmt.network.v2018_08_01.operations.VirtualNetworksOperations + :ivar subnets: Subnets operations + :vartype subnets: azure.mgmt.network.v2018_08_01.operations.SubnetsOperations + :ivar virtual_network_peerings: VirtualNetworkPeerings operations + :vartype virtual_network_peerings: azure.mgmt.network.v2018_08_01.operations.VirtualNetworkPeeringsOperations + :ivar virtual_network_taps: VirtualNetworkTaps operations + :vartype virtual_network_taps: azure.mgmt.network.v2018_08_01.operations.VirtualNetworkTapsOperations + :ivar virtual_network_gateways: VirtualNetworkGateways operations + :vartype virtual_network_gateways: azure.mgmt.network.v2018_08_01.operations.VirtualNetworkGatewaysOperations + :ivar virtual_network_gateway_connections: VirtualNetworkGatewayConnections operations + :vartype virtual_network_gateway_connections: azure.mgmt.network.v2018_08_01.operations.VirtualNetworkGatewayConnectionsOperations + :ivar local_network_gateways: LocalNetworkGateways operations + :vartype local_network_gateways: azure.mgmt.network.v2018_08_01.operations.LocalNetworkGatewaysOperations + :ivar virtual_wans: VirtualWans operations + :vartype virtual_wans: azure.mgmt.network.v2018_08_01.operations.VirtualWansOperations + :ivar vpn_sites: VpnSites operations + :vartype vpn_sites: azure.mgmt.network.v2018_08_01.operations.VpnSitesOperations + :ivar vpn_sites_configuration: VpnSitesConfiguration operations + :vartype vpn_sites_configuration: azure.mgmt.network.v2018_08_01.operations.VpnSitesConfigurationOperations + :ivar virtual_hubs: VirtualHubs operations + :vartype virtual_hubs: azure.mgmt.network.v2018_08_01.operations.VirtualHubsOperations + :ivar hub_virtual_network_connections: HubVirtualNetworkConnections operations + :vartype hub_virtual_network_connections: azure.mgmt.network.v2018_08_01.operations.HubVirtualNetworkConnectionsOperations + :ivar vpn_gateways: VpnGateways operations + :vartype vpn_gateways: azure.mgmt.network.v2018_08_01.operations.VpnGatewaysOperations + :ivar vpn_connections: VpnConnections operations + :vartype vpn_connections: azure.mgmt.network.v2018_08_01.operations.VpnConnectionsOperations + :ivar p2s_vpn_server_configurations: P2sVpnServerConfigurations operations + :vartype p2s_vpn_server_configurations: azure.mgmt.network.v2018_08_01.operations.P2sVpnServerConfigurationsOperations + :ivar p2s_vpn_gateways: P2sVpnGateways operations + :vartype p2s_vpn_gateways: azure.mgmt.network.v2018_08_01.operations.P2sVpnGatewaysOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription credentials which uniquely + identify the Microsoft Azure subscription. The subscription ID forms part + of the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = NetworkManagementClientConfiguration(credentials, subscription_id, base_url) + super(NetworkManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.application_gateways = ApplicationGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.application_security_groups = ApplicationSecurityGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_delegations = AvailableDelegationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_resource_group_delegations = AvailableResourceGroupDelegationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.azure_firewalls = AzureFirewallsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.azure_firewall_fqdn_tags = AzureFirewallFqdnTagsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.ddos_protection_plans = DdosProtectionPlansOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_endpoint_services = AvailableEndpointServicesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_authorizations = ExpressRouteCircuitAuthorizationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_peerings = ExpressRouteCircuitPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_connections = ExpressRouteCircuitConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuits = ExpressRouteCircuitsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_service_providers = ExpressRouteServiceProvidersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_cross_connections = ExpressRouteCrossConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_cross_connection_peerings = ExpressRouteCrossConnectionPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_gateways = ExpressRouteGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_connections = ExpressRouteConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.interface_endpoints = InterfaceEndpointsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancers = LoadBalancersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_backend_address_pools = LoadBalancerBackendAddressPoolsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_frontend_ip_configurations = LoadBalancerFrontendIPConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.inbound_nat_rules = InboundNatRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_load_balancing_rules = LoadBalancerLoadBalancingRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_network_interfaces = LoadBalancerNetworkInterfacesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_probes = LoadBalancerProbesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interfaces = NetworkInterfacesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interface_ip_configurations = NetworkInterfaceIPConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interface_load_balancers = NetworkInterfaceLoadBalancersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interface_tap_configurations = NetworkInterfaceTapConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_profiles = NetworkProfilesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_security_groups = NetworkSecurityGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.security_rules = SecurityRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.default_security_rules = DefaultSecurityRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_watchers = NetworkWatchersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.packet_captures = PacketCapturesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.connection_monitors = ConnectionMonitorsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.public_ip_addresses = PublicIPAddressesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.public_ip_prefixes = PublicIPPrefixesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_filters = RouteFiltersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_filter_rules = RouteFilterRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_tables = RouteTablesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.routes = RoutesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.bgp_service_communities = BgpServiceCommunitiesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.service_endpoint_policies = ServiceEndpointPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.service_endpoint_policy_definitions = ServiceEndpointPolicyDefinitionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.usages = UsagesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_networks = VirtualNetworksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.subnets = SubnetsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_peerings = VirtualNetworkPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_taps = VirtualNetworkTapsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_gateways = VirtualNetworkGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_gateway_connections = VirtualNetworkGatewayConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.local_network_gateways = LocalNetworkGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_wans = VirtualWansOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_sites = VpnSitesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_sites_configuration = VpnSitesConfigurationOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_hubs = VirtualHubsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.hub_virtual_network_connections = HubVirtualNetworkConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_gateways = VpnGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_connections = VpnConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.p2s_vpn_server_configurations = P2sVpnServerConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.p2s_vpn_gateways = P2sVpnGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + + def check_dns_name_availability( + self, location, domain_name_label, custom_headers=None, raw=False, **operation_config): + """Checks whether a domain name in the cloudapp.azure.com zone is + available for use. + + :param location: The location of the domain name. + :type location: str + :param domain_name_label: The domain name to be verified. It must + conform to the following regular expression: + ^[a-z][a-z0-9-]{1,61}[a-z0-9]$. + :type domain_name_label: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DnsNameAvailabilityResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.DnsNameAvailabilityResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-08-01" + + # Construct URL + url = self.check_dns_name_availability.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['domainNameLabel'] = self._serialize.query("domain_name_label", domain_name_label, 'str') + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DnsNameAvailabilityResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_dns_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/CheckDnsNameAvailability'} + + def supported_security_providers( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + """Gives the supported security providers for the virtual wan. + + :param resource_group_name: The resource group name. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN for which + supported security providers are needed. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualWanSecurityProviders or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualWanSecurityProviders or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + api_version = "2018-08-01" + + # Construct URL + url = self.supported_security_providers.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualWanSecurityProviders', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + supported_security_providers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/__init__.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/__init__.py new file mode 100644 index 000000000000..809521775aba --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/__init__.py @@ -0,0 +1,140 @@ +# 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 .application_gateways_operations import ApplicationGatewaysOperations +from .application_security_groups_operations import ApplicationSecurityGroupsOperations +from .available_delegations_operations import AvailableDelegationsOperations +from .available_resource_group_delegations_operations import AvailableResourceGroupDelegationsOperations +from .azure_firewalls_operations import AzureFirewallsOperations +from .azure_firewall_fqdn_tags_operations import AzureFirewallFqdnTagsOperations +from .ddos_protection_plans_operations import DdosProtectionPlansOperations +from .available_endpoint_services_operations import AvailableEndpointServicesOperations +from .express_route_circuit_authorizations_operations import ExpressRouteCircuitAuthorizationsOperations +from .express_route_circuit_peerings_operations import ExpressRouteCircuitPeeringsOperations +from .express_route_circuit_connections_operations import ExpressRouteCircuitConnectionsOperations +from .express_route_circuits_operations import ExpressRouteCircuitsOperations +from .express_route_service_providers_operations import ExpressRouteServiceProvidersOperations +from .express_route_cross_connections_operations import ExpressRouteCrossConnectionsOperations +from .express_route_cross_connection_peerings_operations import ExpressRouteCrossConnectionPeeringsOperations +from .express_route_gateways_operations import ExpressRouteGatewaysOperations +from .express_route_connections_operations import ExpressRouteConnectionsOperations +from .interface_endpoints_operations import InterfaceEndpointsOperations +from .load_balancers_operations import LoadBalancersOperations +from .load_balancer_backend_address_pools_operations import LoadBalancerBackendAddressPoolsOperations +from .load_balancer_frontend_ip_configurations_operations import LoadBalancerFrontendIPConfigurationsOperations +from .inbound_nat_rules_operations import InboundNatRulesOperations +from .load_balancer_load_balancing_rules_operations import LoadBalancerLoadBalancingRulesOperations +from .load_balancer_network_interfaces_operations import LoadBalancerNetworkInterfacesOperations +from .load_balancer_probes_operations import LoadBalancerProbesOperations +from .network_interfaces_operations import NetworkInterfacesOperations +from .network_interface_ip_configurations_operations import NetworkInterfaceIPConfigurationsOperations +from .network_interface_load_balancers_operations import NetworkInterfaceLoadBalancersOperations +from .network_interface_tap_configurations_operations import NetworkInterfaceTapConfigurationsOperations +from .network_profiles_operations import NetworkProfilesOperations +from .network_security_groups_operations import NetworkSecurityGroupsOperations +from .security_rules_operations import SecurityRulesOperations +from .default_security_rules_operations import DefaultSecurityRulesOperations +from .network_watchers_operations import NetworkWatchersOperations +from .packet_captures_operations import PacketCapturesOperations +from .connection_monitors_operations import ConnectionMonitorsOperations +from .operations import Operations +from .public_ip_addresses_operations import PublicIPAddressesOperations +from .public_ip_prefixes_operations import PublicIPPrefixesOperations +from .route_filters_operations import RouteFiltersOperations +from .route_filter_rules_operations import RouteFilterRulesOperations +from .route_tables_operations import RouteTablesOperations +from .routes_operations import RoutesOperations +from .bgp_service_communities_operations import BgpServiceCommunitiesOperations +from .service_endpoint_policies_operations import ServiceEndpointPoliciesOperations +from .service_endpoint_policy_definitions_operations import ServiceEndpointPolicyDefinitionsOperations +from .usages_operations import UsagesOperations +from .virtual_networks_operations import VirtualNetworksOperations +from .subnets_operations import SubnetsOperations +from .virtual_network_peerings_operations import VirtualNetworkPeeringsOperations +from .virtual_network_taps_operations import VirtualNetworkTapsOperations +from .virtual_network_gateways_operations import VirtualNetworkGatewaysOperations +from .virtual_network_gateway_connections_operations import VirtualNetworkGatewayConnectionsOperations +from .local_network_gateways_operations import LocalNetworkGatewaysOperations +from .virtual_wans_operations import VirtualWansOperations +from .vpn_sites_operations import VpnSitesOperations +from .vpn_sites_configuration_operations import VpnSitesConfigurationOperations +from .virtual_hubs_operations import VirtualHubsOperations +from .hub_virtual_network_connections_operations import HubVirtualNetworkConnectionsOperations +from .vpn_gateways_operations import VpnGatewaysOperations +from .vpn_connections_operations import VpnConnectionsOperations +from .p2s_vpn_server_configurations_operations import P2sVpnServerConfigurationsOperations +from .p2s_vpn_gateways_operations import P2sVpnGatewaysOperations + +__all__ = [ + 'ApplicationGatewaysOperations', + 'ApplicationSecurityGroupsOperations', + 'AvailableDelegationsOperations', + 'AvailableResourceGroupDelegationsOperations', + 'AzureFirewallsOperations', + 'AzureFirewallFqdnTagsOperations', + 'DdosProtectionPlansOperations', + 'AvailableEndpointServicesOperations', + 'ExpressRouteCircuitAuthorizationsOperations', + 'ExpressRouteCircuitPeeringsOperations', + 'ExpressRouteCircuitConnectionsOperations', + 'ExpressRouteCircuitsOperations', + 'ExpressRouteServiceProvidersOperations', + 'ExpressRouteCrossConnectionsOperations', + 'ExpressRouteCrossConnectionPeeringsOperations', + 'ExpressRouteGatewaysOperations', + 'ExpressRouteConnectionsOperations', + 'InterfaceEndpointsOperations', + 'LoadBalancersOperations', + 'LoadBalancerBackendAddressPoolsOperations', + 'LoadBalancerFrontendIPConfigurationsOperations', + 'InboundNatRulesOperations', + 'LoadBalancerLoadBalancingRulesOperations', + 'LoadBalancerNetworkInterfacesOperations', + 'LoadBalancerProbesOperations', + 'NetworkInterfacesOperations', + 'NetworkInterfaceIPConfigurationsOperations', + 'NetworkInterfaceLoadBalancersOperations', + 'NetworkInterfaceTapConfigurationsOperations', + 'NetworkProfilesOperations', + 'NetworkSecurityGroupsOperations', + 'SecurityRulesOperations', + 'DefaultSecurityRulesOperations', + 'NetworkWatchersOperations', + 'PacketCapturesOperations', + 'ConnectionMonitorsOperations', + 'Operations', + 'PublicIPAddressesOperations', + 'PublicIPPrefixesOperations', + 'RouteFiltersOperations', + 'RouteFilterRulesOperations', + 'RouteTablesOperations', + 'RoutesOperations', + 'BgpServiceCommunitiesOperations', + 'ServiceEndpointPoliciesOperations', + 'ServiceEndpointPolicyDefinitionsOperations', + 'UsagesOperations', + 'VirtualNetworksOperations', + 'SubnetsOperations', + 'VirtualNetworkPeeringsOperations', + 'VirtualNetworkTapsOperations', + 'VirtualNetworkGatewaysOperations', + 'VirtualNetworkGatewayConnectionsOperations', + 'LocalNetworkGatewaysOperations', + 'VirtualWansOperations', + 'VpnSitesOperations', + 'VpnSitesConfigurationOperations', + 'VirtualHubsOperations', + 'HubVirtualNetworkConnectionsOperations', + 'VpnGatewaysOperations', + 'VpnConnectionsOperations', + 'P2sVpnServerConfigurationsOperations', + 'P2sVpnGatewaysOperations', +] diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/application_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/application_gateways_operations.py new file mode 100644 index 000000000000..7d98c7382195 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/application_gateways_operations.py @@ -0,0 +1,1019 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApplicationGatewaysOperations(object): + """ApplicationGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + def get( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ApplicationGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, application_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApplicationGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, application_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param parameters: Parameters supplied to the create or update + application gateway operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ApplicationGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ApplicationGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ApplicationGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, application_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, application_gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates the specified application gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ApplicationGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ApplicationGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ApplicationGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all application gateways in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationGateway + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayPaged[~azure.mgmt.network.v2018_08_01.models.ApplicationGateway] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the application gateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationGateway + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayPaged[~azure.mgmt.network.v2018_08_01.models.ApplicationGateway] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways'} + + + def _start_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start'} + + + def _stop_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops the specified application gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop'} + + + def _backend_health_initial( + self, resource_group_name, application_gateway_name, expand=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.backend_health.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayBackendHealth', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def backend_health( + self, resource_group_name, application_gateway_name, expand=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the backend health of the specified application gateway in a + resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param expand: Expands BackendAddressPool and BackendHttpSettings + referenced in backend health. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApplicationGatewayBackendHealth or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealth] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayBackendHealth]] + :raises: :class:`CloudError` + """ + raw_result = self._backend_health_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + expand=expand, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGatewayBackendHealth', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + backend_health.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth'} + + def list_available_waf_rule_sets( + self, custom_headers=None, raw=False, **operation_config): + """Lists all available web application firewall rule sets. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewayAvailableWafRuleSetsResult or + ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayAvailableWafRuleSetsResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_available_waf_rule_sets.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayAvailableWafRuleSetsResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_waf_rule_sets.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets'} + + def list_available_ssl_options( + self, custom_headers=None, raw=False, **operation_config): + """Lists available Ssl options for configuring Ssl policy. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewayAvailableSslOptions or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewayAvailableSslOptions + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_available_ssl_options.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayAvailableSslOptions', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_ssl_options.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default'} + + def list_available_ssl_predefined_policies( + self, custom_headers=None, raw=False, **operation_config): + """Lists all SSL predefined policies for configuring Ssl policy. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + ApplicationGatewaySslPredefinedPolicy + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPredefinedPolicyPaged[~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPredefinedPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_available_ssl_predefined_policies.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationGatewaySslPredefinedPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationGatewaySslPredefinedPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_available_ssl_predefined_policies.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies'} + + def get_ssl_predefined_policy( + self, predefined_policy_name, custom_headers=None, raw=False, **operation_config): + """Gets Ssl predefined policy with the specified policy name. + + :param predefined_policy_name: Name of Ssl predefined policy. + :type predefined_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewaySslPredefinedPolicy or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationGatewaySslPredefinedPolicy + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_ssl_predefined_policy.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'predefinedPolicyName': self._serialize.url("predefined_policy_name", predefined_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewaySslPredefinedPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_ssl_predefined_policy.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/application_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/application_security_groups_operations.py new file mode 100644 index 000000000000..9877b3ecdb5c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/application_security_groups_operations.py @@ -0,0 +1,421 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApplicationSecurityGroupsOperations(object): + """ApplicationSecurityGroupsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + application_security_group_name=application_security_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + def get( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationSecurityGroup or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + + def _create_or_update_initial( + self, resource_group_name, application_security_group_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + if response.status_code == 201: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, application_security_group_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param parameters: Parameters supplied to the create or update + ApplicationSecurityGroup operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApplicationSecurityGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + application_security_group_name=application_security_group_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all application security groups in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationSecurityGroup + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroupPaged[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the application security groups in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationSecurityGroup + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroupPaged[~azure.mgmt.network.v2018_08_01.models.ApplicationSecurityGroup] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_delegations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_delegations_operations.py new file mode 100644 index 000000000000..157ae9cc9502 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_delegations_operations.py @@ -0,0 +1,106 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailableDelegationsOperations(object): + """AvailableDelegationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets all of the available subnet delegations for this subscription in + this region. + + :param location: The location of the subnet. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailableDelegation + :rtype: + ~azure.mgmt.network.v2018_08_01.models.AvailableDelegationPaged[~azure.mgmt.network.v2018_08_01.models.AvailableDelegation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AvailableDelegationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AvailableDelegationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availableDelegations'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_endpoint_services_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_endpoint_services_operations.py new file mode 100644 index 000000000000..831f87a34a39 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_endpoint_services_operations.py @@ -0,0 +1,105 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailableEndpointServicesOperations(object): + """AvailableEndpointServicesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """List what values of endpoint services are available for use. + + :param location: The location to check available endpoint services. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of EndpointServiceResult + :rtype: + ~azure.mgmt.network.v2018_08_01.models.EndpointServiceResultPaged[~azure.mgmt.network.v2018_08_01.models.EndpointServiceResult] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.EndpointServiceResultPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.EndpointServiceResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/virtualNetworkAvailableEndpointServices'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_resource_group_delegations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_resource_group_delegations_operations.py new file mode 100644 index 000000000000..2b42c17a6d3c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/available_resource_group_delegations_operations.py @@ -0,0 +1,109 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailableResourceGroupDelegationsOperations(object): + """AvailableResourceGroupDelegationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, location, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all of the available subnet delegations for this resource group in + this region. + + :param location: The location of the domain name. + :type location: str + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailableDelegation + :rtype: + ~azure.mgmt.network.v2018_08_01.models.AvailableDelegationPaged[~azure.mgmt.network.v2018_08_01.models.AvailableDelegation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AvailableDelegationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AvailableDelegationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/azure_firewall_fqdn_tags_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/azure_firewall_fqdn_tags_operations.py new file mode 100644 index 000000000000..23267a67079b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/azure_firewall_fqdn_tags_operations.py @@ -0,0 +1,102 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AzureFirewallFqdnTagsOperations(object): + """AzureFirewallFqdnTagsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the Azure Firewall FQDN Tags in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AzureFirewallFqdnTag + :rtype: + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallFqdnTagPaged[~azure.mgmt.network.v2018_08_01.models.AzureFirewallFqdnTag] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AzureFirewallFqdnTagPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AzureFirewallFqdnTagPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewallFqdnTags'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/azure_firewalls_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/azure_firewalls_operations.py new file mode 100644 index 000000000000..998b93904784 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/azure_firewalls_operations.py @@ -0,0 +1,415 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class AzureFirewallsOperations(object): + """AzureFirewallsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + azure_firewall_name=azure_firewall_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + def get( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AzureFirewall or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.AzureFirewall or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + + def _create_or_update_initial( + self, resource_group_name, azure_firewall_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AzureFirewall') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureFirewall', response) + if response.status_code == 201: + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, azure_firewall_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param parameters: Parameters supplied to the create or update Azure + Firewall operation. + :type parameters: ~azure.mgmt.network.v2018_08_01.models.AzureFirewall + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AzureFirewall or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.AzureFirewall] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.AzureFirewall]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + azure_firewall_name=azure_firewall_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all Azure Firewalls in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AzureFirewall + :rtype: + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallPaged[~azure.mgmt.network.v2018_08_01.models.AzureFirewall] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the Azure Firewalls in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AzureFirewall + :rtype: + ~azure.mgmt.network.v2018_08_01.models.AzureFirewallPaged[~azure.mgmt.network.v2018_08_01.models.AzureFirewall] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/bgp_service_communities_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/bgp_service_communities_operations.py new file mode 100644 index 000000000000..a83641436b92 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/bgp_service_communities_operations.py @@ -0,0 +1,102 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class BgpServiceCommunitiesOperations(object): + """BgpServiceCommunitiesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the available bgp service communities. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BgpServiceCommunity + :rtype: + ~azure.mgmt.network.v2018_08_01.models.BgpServiceCommunityPaged[~azure.mgmt.network.v2018_08_01.models.BgpServiceCommunity] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.BgpServiceCommunityPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BgpServiceCommunityPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/bgpServiceCommunities'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/connection_monitors_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/connection_monitors_operations.py new file mode 100644 index 000000000000..458a08b47976 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/connection_monitors_operations.py @@ -0,0 +1,632 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ConnectionMonitorsOperations(object): + """ConnectionMonitorsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionMonitor') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorResult', response) + if response.status_code == 201: + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_watcher_name, connection_monitor_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or update a connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param parameters: Parameters that define the operation to create a + connection monitor. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitor + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectionMonitorResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + def get( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + """Gets a connection monitor by name. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionMonitorResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorResult + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + + def _stop_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop'} + + + def _start_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start'} + + + def _query_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.query.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + if response.status_code == 202: + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def query( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Query a snapshot of the most recent connection states. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name given to the connection + monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ConnectionMonitorQueryResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorQueryResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorQueryResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._query_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + query.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query'} + + def list( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Lists all connection monitors for the specified Network Watcher. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ConnectionMonitorResult + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorResultPaged[~azure.mgmt.network.v2018_08_01.models.ConnectionMonitorResult] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ConnectionMonitorResultPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ConnectionMonitorResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/ddos_protection_plans_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/ddos_protection_plans_operations.py new file mode 100644 index 000000000000..320bbdbe87ae --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/ddos_protection_plans_operations.py @@ -0,0 +1,422 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class DdosProtectionPlansOperations(object): + """DdosProtectionPlansOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + ddos_protection_plan_name=ddos_protection_plan_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + def get( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DdosProtectionPlan or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.DdosProtectionPlan or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + + def _create_or_update_initial( + self, resource_group_name, ddos_protection_plan_name, location=None, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.DdosProtectionPlan(location=location, tags=tags) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DdosProtectionPlan') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DdosProtectionPlan', response) + if response.status_code == 201: + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, ddos_protection_plan_name, location=None, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns DdosProtectionPlan or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.DdosProtectionPlan] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.DdosProtectionPlan]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + ddos_protection_plan_name=ddos_protection_plan_name, + location=location, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all DDoS protection plans in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DdosProtectionPlan + :rtype: + ~azure.mgmt.network.v2018_08_01.models.DdosProtectionPlanPaged[~azure.mgmt.network.v2018_08_01.models.DdosProtectionPlan] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the DDoS protection plans in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DdosProtectionPlan + :rtype: + ~azure.mgmt.network.v2018_08_01.models.DdosProtectionPlanPaged[~azure.mgmt.network.v2018_08_01.models.DdosProtectionPlan] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/default_security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/default_security_rules_operations.py new file mode 100644 index 000000000000..c0cf59ecccce --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/default_security_rules_operations.py @@ -0,0 +1,176 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class DefaultSecurityRulesOperations(object): + """DefaultSecurityRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all default security rules in a network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityRule + :rtype: + ~azure.mgmt.network.v2018_08_01.models.SecurityRulePaged[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules'} + + def get( + self, resource_group_name, network_security_group_name, default_security_rule_name, custom_headers=None, raw=False, **operation_config): + """Get the specified default network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param default_security_rule_name: The name of the default security + rule. + :type default_security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.SecurityRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'defaultSecurityRuleName': self._serialize.url("default_security_rule_name", default_security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_authorizations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_authorizations_operations.py new file mode 100644 index 000000000000..82a5f2d2ba79 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_authorizations_operations.py @@ -0,0 +1,372 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitAuthorizationsOperations(object): + """ExpressRouteCircuitAuthorizationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified authorization from the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + authorization_name=authorization_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + def get( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified authorization from the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitAuthorization or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitAuthorization + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, authorization_name, authorization_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, authorization_name, authorization_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an authorization in the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param authorization_parameters: Parameters supplied to the create or + update express route circuit authorization operation. + :type authorization_parameters: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitAuthorization + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitAuthorization or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitAuthorization] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitAuthorization]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + authorization_name=authorization_name, + authorization_parameters=authorization_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + def list( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all authorizations in an express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuitAuthorization + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitAuthorizationPaged[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitAuthorization] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCircuitAuthorizationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCircuitAuthorizationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_connections_operations.py new file mode 100644 index 000000000000..c18565a28bd0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_connections_operations.py @@ -0,0 +1,317 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitConnectionsOperations(object): + """ExpressRouteCircuitConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Express Route Circuit Connection from the + specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + connection_name=connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} + + def get( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Express Route Circuit Connection from the specified + express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitConnection or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, peering_name, connection_name, express_route_circuit_connection_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(express_route_circuit_connection_parameters, 'ExpressRouteCircuitConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, peering_name, connection_name, express_route_circuit_connection_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a Express Route Circuit Connection in the specified + express route circuits. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param express_route_circuit_connection_parameters: Parameters + supplied to the create or update express route circuit circuit + connection operation. + :type express_route_circuit_connection_parameters: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + connection_name=connection_name, + express_route_circuit_connection_parameters=express_route_circuit_connection_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_peerings_operations.py new file mode 100644 index 000000000000..d7969590a313 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuit_peerings_operations.py @@ -0,0 +1,368 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitPeeringsOperations(object): + """ExpressRouteCircuitPeeringsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified peering from the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + def get( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified peering for the express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitPeering or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, peering_name, peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, peering_name, peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified express route circuits. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param peering_parameters: Parameters supplied to the create or update + express route circuit peering operation. + :type peering_parameters: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitPeering or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + peering_parameters=peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + def list( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all peerings in a specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuitPeering + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeeringPaged[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPeering] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCircuitPeeringPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCircuitPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuits_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuits_operations.py new file mode 100644 index 000000000000..e0d60af95636 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_circuits_operations.py @@ -0,0 +1,958 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitsOperations(object): + """ExpressRouteCircuitsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + def get( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuit or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuit or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param parameters: Parameters supplied to the create or update express + route circuit operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuit + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteCircuit or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuit] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuit]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + + def _update_tags_initial( + self, resource_group_name, circuit_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, circuit_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates an express route circuit tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteCircuit or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuit] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuit]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + + def _list_arp_table_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_arp_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_arp_table( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised ARP table associated with the express + route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsArpTableListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsArpTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsArpTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_arp_table_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_arp_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}'} + + + def _list_routes_table_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table associated with the express + route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsRoutesTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsRoutesTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}'} + + + def _list_routes_table_summary_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table_summary.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table_summary( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table summary associated with the + express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableSummaryListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsRoutesTableSummaryListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsRoutesTableSummaryListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_summary_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table_summary.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}'} + + def get_stats( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all the stats from an express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitStats or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitStats or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_stats.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitStats', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_stats.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats'} + + def get_peering_stats( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets all stats from an express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitStats or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitStats or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_peering_stats.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitStats', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_peering_stats.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the express route circuits in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuit + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPaged[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuit] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the express route circuits in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuit + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitPaged[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuit] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_connections_operations.py new file mode 100644 index 000000000000..bc04575bf61c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_connections_operations.py @@ -0,0 +1,364 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteConnectionsOperations(object): + """ExpressRouteConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, express_route_gateway_name, connection_name, put_express_route_connection_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(put_express_route_connection_parameters, 'ExpressRouteConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, express_route_gateway_name, connection_name, put_express_route_connection_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a connection between an ExpressRoute gateway and an + ExpressRoute circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param connection_name: The name of the connection subresource. + :type connection_name: str + :param put_express_route_connection_parameters: Parameters required in + an ExpressRouteConnection PUT operation. + :type put_express_route_connection_parameters: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteConnection + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + express_route_gateway_name=express_route_gateway_name, + connection_name=connection_name, + put_express_route_connection_parameters=put_express_route_connection_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}'} + + def get( + self, resource_group_name, express_route_gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified ExpressRouteConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param connection_name: The name of the ExpressRoute connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}'} + + + def _delete_initial( + self, resource_group_name, express_route_gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, express_route_gateway_name, connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a connection to a ExpressRoute circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param connection_name: The name of the connection subresource. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + express_route_gateway_name=express_route_gateway_name, + connection_name=connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}'} + + def list( + self, resource_group_name, express_route_gateway_name, custom_headers=None, raw=False, **operation_config): + """Lists ExpressRouteConnections. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteConnectionList or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteConnectionList or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteConnectionList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_cross_connection_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_cross_connection_peerings_operations.py new file mode 100644 index 000000000000..33848a4f3136 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_cross_connection_peerings_operations.py @@ -0,0 +1,375 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCrossConnectionPeeringsOperations(object): + """ExpressRouteCrossConnectionPeeringsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, cross_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets all peerings in a specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + ExpressRouteCrossConnectionPeering + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPeeringPaged[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPeering] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCrossConnectionPeeringPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCrossConnectionPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings'} + + + def _delete_initial( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified peering from the ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} + + def get( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified peering for the ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCrossConnectionPeering or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPeering + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, cross_connection_name, peering_name, peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(peering_parameters, 'ExpressRouteCrossConnectionPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, cross_connection_name, peering_name, peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified + ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param peering_parameters: Parameters supplied to the create or update + ExpressRouteCrossConnection peering operation. + :type peering_parameters: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnectionPeering or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + peering_parameters=peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_cross_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_cross_connections_operations.py new file mode 100644 index 000000000000..1f5558348c7b --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_cross_connections_operations.py @@ -0,0 +1,757 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCrossConnectionsOperations(object): + """ExpressRouteCrossConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Retrieves all the ExpressRouteCrossConnections in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCrossConnection + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPaged[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnection] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCrossConnections'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Retrieves all the ExpressRouteCrossConnections in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCrossConnection + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionPaged[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnection] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections'} + + def get( + self, resource_group_name, cross_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets details about the specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group (peering + location of the circuit). + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection (service key of the circuit). + :type cross_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCrossConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnection or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, cross_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExpressRouteCrossConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, cross_connection_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Update the specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param parameters: Parameters supplied to the update express route + crossConnection operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + + def _update_tags_initial( + self, resource_group_name, cross_connection_name, tags=None, custom_headers=None, raw=False, **operation_config): + cross_connection_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(cross_connection_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, cross_connection_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates an express route cross connection tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the cross connection. + :type cross_connection_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + + def _list_arp_table_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_arp_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_arp_table( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised ARP table associated with the express + route cross connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsArpTableListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsArpTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsArpTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_arp_table_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_arp_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}'} + + + def _list_routes_table_summary_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table_summary.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table_summary( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the route table summary associated with the express route cross + connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnectionsRoutesTableSummaryListResult or + ClientRawResponse + if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionsRoutesTableSummaryListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCrossConnectionsRoutesTableSummaryListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_summary_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnectionsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table_summary.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}'} + + + def _list_routes_table_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table associated with the express + route cross connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsRoutesTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteCircuitsRoutesTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_gateways_operations.py new file mode 100644 index 000000000000..a8d5c40f9e03 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_gateways_operations.py @@ -0,0 +1,406 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteGatewaysOperations(object): + """ExpressRouteGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list_by_subscription( + self, custom_headers=None, raw=False, **operation_config): + """Lists ExpressRoute gateways under a given subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteGatewayList or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ExpressRouteGatewayList + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_by_subscription.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteGatewayList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteGateways'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists ExpressRoute gateways in a given resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteGatewayList or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ExpressRouteGatewayList + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteGatewayList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways'} + + + def _create_or_update_initial( + self, resource_group_name, express_route_gateway_name, put_express_route_gateway_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(put_express_route_gateway_parameters, 'ExpressRouteGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, express_route_gateway_name, put_express_route_gateway_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a ExpressRoute gateway in a specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param put_express_route_gateway_parameters: Parameters required in an + ExpressRoute gateway PUT operation. + :type put_express_route_gateway_parameters: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ExpressRouteGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ExpressRouteGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + express_route_gateway_name=express_route_gateway_name, + put_express_route_gateway_parameters=put_express_route_gateway_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}'} + + def get( + self, resource_group_name, express_route_gateway_name, custom_headers=None, raw=False, **operation_config): + """Fetches the details of a ExpressRoute gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ExpressRouteGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 404]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}'} + + + def _delete_initial( + self, resource_group_name, express_route_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, express_route_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified ExpressRoute gateway in a resource group. An + ExpressRoute gateway resource can only be deleted when there are no + connection subresources. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + express_route_gateway_name=express_route_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_service_providers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_service_providers_operations.py new file mode 100644 index 000000000000..f0e810587822 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/express_route_service_providers_operations.py @@ -0,0 +1,102 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ExpressRouteServiceProvidersOperations(object): + """ExpressRouteServiceProvidersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the available express route service providers. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteServiceProvider + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ExpressRouteServiceProviderPaged[~azure.mgmt.network.v2018_08_01.models.ExpressRouteServiceProvider] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExpressRouteServiceProviderPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExpressRouteServiceProviderPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/hub_virtual_network_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/hub_virtual_network_connections_operations.py new file mode 100644 index 000000000000..c1e0dd07725f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/hub_virtual_network_connections_operations.py @@ -0,0 +1,171 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class HubVirtualNetworkConnectionsOperations(object): + """HubVirtualNetworkConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def get( + self, resource_group_name, virtual_hub_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a HubVirtualNetworkConnection. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param connection_name: The name of the vpn connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: HubVirtualNetworkConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.HubVirtualNetworkConnection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('HubVirtualNetworkConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}'} + + def list( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of all HubVirtualNetworkConnections. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of HubVirtualNetworkConnection + :rtype: + ~azure.mgmt.network.v2018_08_01.models.HubVirtualNetworkConnectionPaged[~azure.mgmt.network.v2018_08_01.models.HubVirtualNetworkConnection] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.HubVirtualNetworkConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.HubVirtualNetworkConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/inbound_nat_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/inbound_nat_rules_operations.py new file mode 100644 index 000000000000..296ac2942623 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/inbound_nat_rules_operations.py @@ -0,0 +1,370 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class InboundNatRulesOperations(object): + """InboundNatRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the inbound nat rules in a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of InboundNatRule + :rtype: + ~azure.mgmt.network.v2018_08_01.models.InboundNatRulePaged[~azure.mgmt.network.v2018_08_01.models.InboundNatRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.InboundNatRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.InboundNatRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules'} + + + def _delete_initial( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + inbound_nat_rule_name=inbound_nat_rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} + + def get( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: InboundNatRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.InboundNatRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} + + + def _create_or_update_initial( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, inbound_nat_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InboundNatRule', response) + if response.status_code == 201: + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, inbound_nat_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param inbound_nat_rule_parameters: Parameters supplied to the create + or update inbound nat rule operation. + :type inbound_nat_rule_parameters: + ~azure.mgmt.network.v2018_08_01.models.InboundNatRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns InboundNatRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.InboundNatRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.InboundNatRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + inbound_nat_rule_name=inbound_nat_rule_name, + inbound_nat_rule_parameters=inbound_nat_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/interface_endpoints_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/interface_endpoints_operations.py new file mode 100644 index 000000000000..e283f4ce6c75 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/interface_endpoints_operations.py @@ -0,0 +1,421 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class InterfaceEndpointsOperations(object): + """InterfaceEndpointsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, interface_endpoint_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'interfaceEndpointName': self._serialize.url("interface_endpoint_name", interface_endpoint_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, interface_endpoint_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified interface endpoint. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param interface_endpoint_name: The name of the interface endpoint. + :type interface_endpoint_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + interface_endpoint_name=interface_endpoint_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/interfaceEndpoints/{interfaceEndpointName}'} + + def get( + self, resource_group_name, interface_endpoint_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified interface endpoint by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param interface_endpoint_name: The name of the interface endpoint. + :type interface_endpoint_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: InterfaceEndpoint or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'interfaceEndpointName': self._serialize.url("interface_endpoint_name", interface_endpoint_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InterfaceEndpoint', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/interfaceEndpoints/{interfaceEndpointName}'} + + + def _create_or_update_initial( + self, resource_group_name, interface_endpoint_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'interfaceEndpointName': self._serialize.url("interface_endpoint_name", interface_endpoint_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'InterfaceEndpoint') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InterfaceEndpoint', response) + if response.status_code == 201: + deserialized = self._deserialize('InterfaceEndpoint', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, interface_endpoint_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an interface endpoint in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param interface_endpoint_name: The name of the interface endpoint. + :type interface_endpoint_name: str + :param parameters: Parameters supplied to the create or update + interface endpoint operation + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns InterfaceEndpoint or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + interface_endpoint_name=interface_endpoint_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('InterfaceEndpoint', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/interfaceEndpoints/{interfaceEndpointName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all interface endpoints in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of InterfaceEndpoint + :rtype: + ~azure.mgmt.network.v2018_08_01.models.InterfaceEndpointPaged[~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.InterfaceEndpointPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.InterfaceEndpointPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/interfaceEndpoints'} + + def list_by_subscription( + self, custom_headers=None, raw=False, **operation_config): + """Gets all interface endpoints in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of InterfaceEndpoint + :rtype: + ~azure.mgmt.network.v2018_08_01.models.InterfaceEndpointPaged[~azure.mgmt.network.v2018_08_01.models.InterfaceEndpoint] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_subscription.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.InterfaceEndpointPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.InterfaceEndpointPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/interfaceEndpoints'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_backend_address_pools_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_backend_address_pools_operations.py new file mode 100644 index 000000000000..979c2e725529 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_backend_address_pools_operations.py @@ -0,0 +1,174 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerBackendAddressPoolsOperations(object): + """LoadBalancerBackendAddressPoolsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer backed address pools. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BackendAddressPool + :rtype: + ~azure.mgmt.network.v2018_08_01.models.BackendAddressPoolPaged[~azure.mgmt.network.v2018_08_01.models.BackendAddressPool] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.BackendAddressPoolPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BackendAddressPoolPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools'} + + def get( + self, resource_group_name, load_balancer_name, backend_address_pool_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer backend address pool. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param backend_address_pool_name: The name of the backend address + pool. + :type backend_address_pool_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackendAddressPool or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.BackendAddressPool or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'backendAddressPoolName': self._serialize.url("backend_address_pool_name", backend_address_pool_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackendAddressPool', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_frontend_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_frontend_ip_configurations_operations.py new file mode 100644 index 000000000000..ce8d1ba442d1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_frontend_ip_configurations_operations.py @@ -0,0 +1,174 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerFrontendIPConfigurationsOperations(object): + """LoadBalancerFrontendIPConfigurationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer frontend IP configurations. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of FrontendIPConfiguration + :rtype: + ~azure.mgmt.network.v2018_08_01.models.FrontendIPConfigurationPaged[~azure.mgmt.network.v2018_08_01.models.FrontendIPConfiguration] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.FrontendIPConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.FrontendIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations'} + + def get( + self, resource_group_name, load_balancer_name, frontend_ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer frontend IP configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param frontend_ip_configuration_name: The name of the frontend IP + configuration. + :type frontend_ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FrontendIPConfiguration or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.FrontendIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'frontendIPConfigurationName': self._serialize.url("frontend_ip_configuration_name", frontend_ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FrontendIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_load_balancing_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_load_balancing_rules_operations.py new file mode 100644 index 000000000000..26435fe17769 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_load_balancing_rules_operations.py @@ -0,0 +1,173 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerLoadBalancingRulesOperations(object): + """LoadBalancerLoadBalancingRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancing rules in a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancingRule + :rtype: + ~azure.mgmt.network.v2018_08_01.models.LoadBalancingRulePaged[~azure.mgmt.network.v2018_08_01.models.LoadBalancingRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LoadBalancingRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoadBalancingRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules'} + + def get( + self, resource_group_name, load_balancer_name, load_balancing_rule_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer load balancing rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param load_balancing_rule_name: The name of the load balancing rule. + :type load_balancing_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoadBalancingRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.LoadBalancingRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'loadBalancingRuleName': self._serialize.url("load_balancing_rule_name", load_balancing_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancingRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_network_interfaces_operations.py new file mode 100644 index 000000000000..bf6c8c5e21ba --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_network_interfaces_operations.py @@ -0,0 +1,108 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerNetworkInterfacesOperations(object): + """LoadBalancerNetworkInterfacesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets associated load balancer network interfaces. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_probes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_probes_operations.py new file mode 100644 index 000000000000..9c1b26226ed0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancer_probes_operations.py @@ -0,0 +1,173 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerProbesOperations(object): + """LoadBalancerProbesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer probes. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Probe + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ProbePaged[~azure.mgmt.network.v2018_08_01.models.Probe] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ProbePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ProbePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes'} + + def get( + self, resource_group_name, load_balancer_name, probe_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer probe. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param probe_name: The name of the probe. + :type probe_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Probe or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.Probe or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'probeName': self._serialize.url("probe_name", probe_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Probe', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancers_operations.py new file mode 100644 index 000000000000..600ec63c4ff1 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/load_balancers_operations.py @@ -0,0 +1,521 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class LoadBalancersOperations(object): + """LoadBalancersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + def get( + self, resource_group_name, load_balancer_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoadBalancer or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.LoadBalancer or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + + def _create_or_update_initial( + self, resource_group_name, load_balancer_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'LoadBalancer') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + if response.status_code == 201: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, load_balancer_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param parameters: Parameters supplied to the create or update load + balancer operation. + :type parameters: ~azure.mgmt.network.v2018_08_01.models.LoadBalancer + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LoadBalancer or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.LoadBalancer] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.LoadBalancer]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + + def _update_tags_initial( + self, resource_group_name, load_balancer_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, load_balancer_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a load balancer tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LoadBalancer or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.LoadBalancer] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.LoadBalancer]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancers in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2018_08_01.models.LoadBalancerPaged[~azure.mgmt.network.v2018_08_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancers in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2018_08_01.models.LoadBalancerPaged[~azure.mgmt.network.v2018_08_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/local_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/local_network_gateways_operations.py new file mode 100644 index 000000000000..cbcd0078512c --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/local_network_gateways_operations.py @@ -0,0 +1,459 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class LocalNetworkGatewaysOperations(object): + """LocalNetworkGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, local_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'LocalNetworkGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, local_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a local network gateway in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param parameters: Parameters supplied to the create or update local + network gateway operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LocalNetworkGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + local_network_gateway_name=local_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + def get( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified local network gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LocalNetworkGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + + def _delete_initial( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified local network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + local_network_gateway_name=local_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, local_network_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, local_network_gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a local network gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LocalNetworkGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + local_network_gateway_name=local_network_gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the local network gateways in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LocalNetworkGateway + :rtype: + ~azure.mgmt.network.v2018_08_01.models.LocalNetworkGatewayPaged[~azure.mgmt.network.v2018_08_01.models.LocalNetworkGateway] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LocalNetworkGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LocalNetworkGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_ip_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_ip_configurations_operations.py new file mode 100644 index 000000000000..13c5253c259f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_ip_configurations_operations.py @@ -0,0 +1,175 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class NetworkInterfaceIPConfigurationsOperations(object): + """NetworkInterfaceIPConfigurationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + """Get all ip configurations in a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterfaceIPConfiguration + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfigurationPaged[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations'} + + def get( + self, resource_group_name, network_interface_name, ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified network interface ip configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the ip configuration name. + :type ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterfaceIPConfiguration or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_load_balancers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_load_balancers_operations.py new file mode 100644 index 000000000000..d6b1dcf3c154 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_load_balancers_operations.py @@ -0,0 +1,108 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class NetworkInterfaceLoadBalancersOperations(object): + """NetworkInterfaceLoadBalancersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + """List all load balancers in a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2018_08_01.models.LoadBalancerPaged[~azure.mgmt.network.v2018_08_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_tap_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_tap_configurations_operations.py new file mode 100644 index 000000000000..3b78d421df2f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interface_tap_configurations_operations.py @@ -0,0 +1,370 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkInterfaceTapConfigurationsOperations(object): + """NetworkInterfaceTapConfigurationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_interface_name, tap_configuration_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'tapConfigurationName': self._serialize.url("tap_configuration_name", tap_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_interface_name, tap_configuration_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified tap configuration from the NetworkInterface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tap_configuration_name: The name of the tap configuration. + :type tap_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + tap_configuration_name=tap_configuration_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}'} + + def get( + self, resource_group_name, network_interface_name, tap_configuration_name, custom_headers=None, raw=False, **operation_config): + """Get the specified tap configuration on a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tap_configuration_name: The name of the tap configuration. + :type tap_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterfaceTapConfiguration or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'tapConfigurationName': self._serialize.url("tap_configuration_name", tap_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceTapConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_interface_name, tap_configuration_name, tap_configuration_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'tapConfigurationName': self._serialize.url("tap_configuration_name", tap_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(tap_configuration_parameters, 'NetworkInterfaceTapConfiguration') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceTapConfiguration', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkInterfaceTapConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_interface_name, tap_configuration_name, tap_configuration_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a Tap configuration in the specified + NetworkInterface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tap_configuration_name: The name of the tap configuration. + :type tap_configuration_name: str + :param tap_configuration_parameters: Parameters supplied to the create + or update tap configuration operation. + :type tap_configuration_parameters: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + NetworkInterfaceTapConfiguration or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + tap_configuration_name=tap_configuration_name, + tap_configuration_parameters=tap_configuration_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkInterfaceTapConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}'} + + def list( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + """Get all Tap configurations in a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterfaceTapConfiguration + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfigurationPaged[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceTapConfiguration] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfaceTapConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfaceTapConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interfaces_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interfaces_operations.py new file mode 100644 index 000000000000..c2d8cb5091db --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_interfaces_operations.py @@ -0,0 +1,1115 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkInterfacesOperations(object): + """NetworkInterfacesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2018-08-01" + + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + def get( + self, resource_group_name, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterface or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.NetworkInterface or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-08-01" + + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_interface_name, parameters, custom_headers=None, raw=False, **operation_config): + api_version = "2018-08-01" + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkInterface') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_interface_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param parameters: Parameters supplied to the create or update network + interface operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterface + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkInterface or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NetworkInterface]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + + def _update_tags_initial( + self, resource_group_name, network_interface_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + api_version = "2018-08-01" + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, network_interface_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a network interface tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkInterface or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NetworkInterface]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2018-08-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2018-08-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces'} + + + def _get_effective_route_table_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2018-08-01" + + # Construct URL + url = self.get_effective_route_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EffectiveRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_effective_route_table( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets all route tables applied to a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + EffectiveRouteListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.EffectiveRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.EffectiveRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_effective_route_table_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('EffectiveRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_effective_route_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable'} + + + def _list_effective_network_security_groups_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2018-08-01" + + # Construct URL + url = self.list_effective_network_security_groups.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EffectiveNetworkSecurityGroupListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_effective_network_security_groups( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets all network security groups applied to a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + EffectiveNetworkSecurityGroupListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityGroupListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.EffectiveNetworkSecurityGroupListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_effective_network_security_groups_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('EffectiveNetworkSecurityGroupListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_effective_network_security_groups.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups'} + + def list_virtual_machine_scale_set_vm_network_interfaces( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, custom_headers=None, raw=False, **operation_config): + """Gets information about all network interfaces in a virtual machine in a + virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_vm_network_interfaces.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_vm_network_interfaces.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces'} + + def list_virtual_machine_scale_set_network_interfaces( + self, resource_group_name, virtual_machine_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2018_08_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_network_interfaces.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_network_interfaces.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces'} + + def get_virtual_machine_scale_set_network_interface( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterface or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.NetworkInterface or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + # Construct URL + url = self.get_virtual_machine_scale_set_network_interface.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_network_interface.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}'} + + def list_virtual_machine_scale_set_ip_configurations( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface ip configuration in a virtual + machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterfaceIPConfiguration + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfigurationPaged[~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_ip_configurations.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_ip_configurations.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations'} + + def get_virtual_machine_scale_set_ip_configuration( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface ip configuration in a virtual + machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the ip configuration. + :type ip_configuration_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterfaceIPConfiguration or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkInterfaceIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + # Construct URL + url = self.get_virtual_machine_scale_set_ip_configuration.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_ip_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_profiles_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_profiles_operations.py new file mode 100644 index 000000000000..4a35508e3801 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_profiles_operations.py @@ -0,0 +1,522 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkProfilesOperations(object): + """NetworkProfilesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_profile_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkProfileName': self._serialize.url("network_profile_name", network_profile_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_profile_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network profile. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_profile_name: The name of the NetworkProfile. + :type network_profile_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_profile_name=network_profile_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}'} + + def get( + self, resource_group_name, network_profile_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified network profile in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_profile_name: The name of the PublicIPPrefx. + :type network_profile_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkProfile or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.NetworkProfile or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkProfileName': self._serialize.url("network_profile_name", network_profile_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_profile_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkProfileName': self._serialize.url("network_profile_name", network_profile_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkProfile') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkProfile', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_profile_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a network profile. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_profile_name: The name of the network profile. + :type network_profile_name: str + :param parameters: Parameters supplied to the create or update network + profile operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.NetworkProfile + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkProfile or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NetworkProfile] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NetworkProfile]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_profile_name=network_profile_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}'} + + + def _update_tags_initial( + self, resource_group_name, network_profile_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkProfileName': self._serialize.url("network_profile_name", network_profile_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, network_profile_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates network profile tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_profile_name: The name of the network profile. + :type network_profile_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkProfile or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NetworkProfile] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NetworkProfile]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + network_profile_name=network_profile_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the network profiles in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkProfile + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkProfilePaged[~azure.mgmt.network.v2018_08_01.models.NetworkProfile] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkProfilePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkProfilePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network profiles in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkProfile + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkProfilePaged[~azure.mgmt.network.v2018_08_01.models.NetworkProfile] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkProfilePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkProfilePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_security_groups_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_security_groups_operations.py new file mode 100644 index 000000000000..5fd79861f746 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_security_groups_operations.py @@ -0,0 +1,527 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkSecurityGroupsOperations(object): + """NetworkSecurityGroupsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + def get( + self, resource_group_name, network_security_group_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkSecurityGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_security_group_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_security_group_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a network security group in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param parameters: Parameters supplied to the create or update network + security group operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkSecurityGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + + def _update_tags_initial( + self, resource_group_name, network_security_group_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, network_security_group_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a network security group tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkSecurityGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network security groups in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkSecurityGroup + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroupPaged[~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network security groups in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkSecurityGroup + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroupPaged[~azure.mgmt.network.v2018_08_01.models.NetworkSecurityGroup] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_watchers_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_watchers_operations.py new file mode 100644 index 000000000000..8e36dcf8d031 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/network_watchers_operations.py @@ -0,0 +1,1671 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkWatchersOperations(object): + """NetworkWatchersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def create_or_update( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + """Creates or updates a network watcher in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the network watcher + resource. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.NetworkWatcher + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkWatcher') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def get( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified network watcher by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network watcher resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def update_tags( + self, resource_group_name, network_watcher_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a network watcher tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network watchers by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkWatcher + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkWatcherPaged[~azure.mgmt.network.v2018_08_01.models.NetworkWatcher] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network watchers by subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkWatcher + :rtype: + ~azure.mgmt.network.v2018_08_01.models.NetworkWatcherPaged[~azure.mgmt.network.v2018_08_01.models.NetworkWatcher] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers'} + + def get_topology( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + """Gets the current network topology by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the representation of + topology. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.TopologyParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Topology or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.Topology or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_topology.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TopologyParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Topology', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_topology.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology'} + + + def _verify_ip_flow_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.verify_ip_flow.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VerificationIPFlowResult', response) + if response.status_code == 202: + deserialized = self._deserialize('VerificationIPFlowResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def verify_ip_flow( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Verify IP flow from the specified VM to a location given the currently + configured NSG rules. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the IP flow to be verified. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.VerificationIPFlowParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VerificationIPFlowResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VerificationIPFlowResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VerificationIPFlowResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._verify_ip_flow_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VerificationIPFlowResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + verify_ip_flow.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify'} + + + def _get_next_hop_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_next_hop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NextHopParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NextHopResult', response) + if response.status_code == 202: + deserialized = self._deserialize('NextHopResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_next_hop( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the next hop from the specified VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the source and destination + endpoint. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.NextHopParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NextHopResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NextHopResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NextHopResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_next_hop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NextHopResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_next_hop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop'} + + + def _get_vm_security_rules_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.SecurityGroupViewParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_vm_security_rules.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityGroupViewResult', response) + if response.status_code == 202: + deserialized = self._deserialize('SecurityGroupViewResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vm_security_rules( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the configured and effective security group rules on the specified + VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param target_resource_id: ID of the target VM. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SecurityGroupViewResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.SecurityGroupViewResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.SecurityGroupViewResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_vm_security_rules_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('SecurityGroupViewResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vm_security_rules.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView'} + + + def _get_troubleshooting_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_troubleshooting.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TroubleshootingParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TroubleshootingResult', response) + if response.status_code == 202: + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_troubleshooting( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Initiate troubleshooting on a specified resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that define the resource to + troubleshoot. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.TroubleshootingParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns TroubleshootingResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.TroubleshootingResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.TroubleshootingResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_troubleshooting_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_troubleshooting.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot'} + + + def _get_troubleshooting_result_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.QueryTroubleshootingParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_troubleshooting_result.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TroubleshootingResult', response) + if response.status_code == 202: + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_troubleshooting_result( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Get the last completed troubleshooting result on a specified resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param target_resource_id: The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns TroubleshootingResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.TroubleshootingResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.TroubleshootingResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_troubleshooting_result_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_troubleshooting_result.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult'} + + + def _set_flow_log_configuration_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.set_flow_log_configuration.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FlowLogInformation') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FlowLogInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_flow_log_configuration( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Configures flow log and traffic analytics (optional) on a specified + resource. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that define the configuration of flow + log. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.FlowLogInformation + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FlowLogInformation or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.FlowLogInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.FlowLogInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._set_flow_log_configuration_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_flow_log_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog'} + + + def _get_flow_log_status_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.FlowLogStatusParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_flow_log_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FlowLogInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_flow_log_status( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Queries status of flow log and traffic analytics (optional) on a + specified resource. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param target_resource_id: The target resource where getting the flow + log and traffic analytics (optional) status. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FlowLogInformation or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.FlowLogInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.FlowLogInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_flow_log_status_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_flow_log_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus'} + + + def _check_connectivity_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.check_connectivity.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectivityParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectivityInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('ConnectivityInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def check_connectivity( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Verifies the possibility of establishing a direct TCP connection from a + virtual machine to a given endpoint including another VM or an + arbitrary remote server. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that determine how the connectivity + check will be performed. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.ConnectivityParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectivityInformation + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ConnectivityInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ConnectivityInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._check_connectivity_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectivityInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + check_connectivity.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck'} + + + def _get_azure_reachability_report_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_azure_reachability_report.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureReachabilityReport', response) + if response.status_code == 202: + deserialized = self._deserialize('AzureReachabilityReport', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_azure_reachability_report( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the relative latency score for internet service providers from a + specified location to Azure regions. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that determine Azure reachability report + configuration. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReportParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AzureReachabilityReport + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReport] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.AzureReachabilityReport]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_azure_reachability_report_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AzureReachabilityReport', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_azure_reachability_report.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport'} + + + def _list_available_providers_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_available_providers.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AvailableProvidersList', response) + if response.status_code == 202: + deserialized = self._deserialize('AvailableProvidersList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_available_providers( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Lists all available internet service providers for a specified Azure + region. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that scope the list of available + providers. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.AvailableProvidersListParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AvailableProvidersList + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.AvailableProvidersList] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.AvailableProvidersList]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._list_available_providers_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AvailableProvidersList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_available_providers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList'} + + + def _get_network_configuration_diagnostic_initial( + self, resource_group_name, network_watcher_name, target_resource_id, queries, custom_headers=None, raw=False, **operation_config): + parameters = models.NetworkConfigurationDiagnosticParameters(target_resource_id=target_resource_id, queries=queries) + + # Construct URL + url = self.get_network_configuration_diagnostic.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkConfigurationDiagnosticParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + if response.status_code == 202: + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_network_configuration_diagnostic( + self, resource_group_name, network_watcher_name, target_resource_id, queries, custom_headers=None, raw=False, polling=True, **operation_config): + """Get network configuration diagnostic. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param target_resource_id: The ID of the target resource to perform + network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param queries: List of traffic queries. + :type queries: + list[~azure.mgmt.network.v2018_08_01.models.TrafficQuery] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + NetworkConfigurationDiagnosticResponse or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.NetworkConfigurationDiagnosticResponse] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.NetworkConfigurationDiagnosticResponse]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_network_configuration_diagnostic_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + queries=queries, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_network_configuration_diagnostic.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/operations.py new file mode 100644 index 000000000000..4739fcbf2b05 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/operations.py @@ -0,0 +1,98 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available Network Rest API operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.network.v2018_08_01.models.OperationPaged[~azure.mgmt.network.v2018_08_01.models.Operation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.Network/operations'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/p2s_vpn_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/p2s_vpn_gateways_operations.py new file mode 100644 index 000000000000..1dc6e7d802f4 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/p2s_vpn_gateways_operations.py @@ -0,0 +1,626 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class P2sVpnGatewaysOperations(object): + """P2sVpnGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a virtual wan p2s vpn gateway. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: P2SVpnGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.P2SVpnGateway or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, gateway_name, p2_svpn_gateway_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(p2_svpn_gateway_parameters, 'P2SVpnGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, gateway_name, p2_svpn_gateway_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a virtual wan p2s vpn gateway if it doesn't exist else updates + the existing gateway. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param p2_svpn_gateway_parameters: Parameters supplied to create or + Update a virtual wan p2s vpn gateway. + :type p2_svpn_gateway_parameters: + ~azure.mgmt.network.v2018_08_01.models.P2SVpnGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns P2SVpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.P2SVpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.P2SVpnGateway]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + p2_svpn_gateway_parameters=p2_svpn_gateway_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + p2_svpn_gateway_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(p2_svpn_gateway_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates virtual wan p2s vpn gateway tags. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns P2SVpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.P2SVpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.P2SVpnGateway]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}'} + + + def _delete_initial( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a virtual wan p2s vpn gateway. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the P2SVpnGateways in a resource group. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of P2SVpnGateway + :rtype: + ~azure.mgmt.network.v2018_08_01.models.P2SVpnGatewayPaged[~azure.mgmt.network.v2018_08_01.models.P2SVpnGateway] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.P2SVpnGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.P2SVpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the P2SVpnGateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of P2SVpnGateway + :rtype: + ~azure.mgmt.network.v2018_08_01.models.P2SVpnGatewayPaged[~azure.mgmt.network.v2018_08_01.models.P2SVpnGateway] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.P2SVpnGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.P2SVpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways'} + + + def _generate_vpn_profile_initial( + self, resource_group_name, gateway_name, authentication_method=None, custom_headers=None, raw=False, **operation_config): + parameters = models.P2SVpnProfileParameters(authentication_method=authentication_method) + + # Construct URL + url = self.generate_vpn_profile.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'P2SVpnProfileParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnProfileResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generate_vpn_profile( + self, resource_group_name, gateway_name, authentication_method=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates VPN profile for P2S client of the P2SVpnGateway in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param gateway_name: The name of the P2SVpnGateway. + :type gateway_name: str + :param authentication_method: VPN client Authentication Method. + Possible values are: 'EAPTLS' and 'EAPMSCHAPv2'. Possible values + include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2018_08_01.models.AuthenticationMethod + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnProfileResponse or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VpnProfileResponse] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VpnProfileResponse]] + :raises: :class:`CloudError` + """ + raw_result = self._generate_vpn_profile_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + authentication_method=authentication_method, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnProfileResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generate_vpn_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/p2s_vpn_server_configurations_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/p2s_vpn_server_configurations_operations.py new file mode 100644 index 000000000000..66b7515263bb --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/p2s_vpn_server_configurations_operations.py @@ -0,0 +1,369 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class P2sVpnServerConfigurationsOperations(object): + """P2sVpnServerConfigurationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def get( + self, resource_group_name, virtual_wan_name, p2_svpn_server_configuration_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a P2SVpnServerConfiguration. + + :param resource_group_name: The resource group name of the + P2SVpnServerConfiguration. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWan. + :type virtual_wan_name: str + :param p2_svpn_server_configuration_name: The name of the + P2SVpnServerConfiguration. + :type p2_svpn_server_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: P2SVpnServerConfiguration or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfiguration or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWanName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str'), + 'p2SVpnServerConfigurationName': self._serialize.url("p2_svpn_server_configuration_name", p2_svpn_server_configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnServerConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWanName}/p2sVpnServerConfigurations/{p2SVpnServerConfigurationName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_wan_name, p2_svpn_server_configuration_name, p2_svpn_server_configuration_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWanName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str'), + 'p2SVpnServerConfigurationName': self._serialize.url("p2_svpn_server_configuration_name", p2_svpn_server_configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(p2_svpn_server_configuration_parameters, 'P2SVpnServerConfiguration') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnServerConfiguration', response) + if response.status_code == 201: + deserialized = self._deserialize('P2SVpnServerConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_wan_name, p2_svpn_server_configuration_name, p2_svpn_server_configuration_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a P2SVpnServerConfiguration to associate with a VirtualWan if + it doesn't exist else updates the existing P2SVpnServerConfiguration. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWan. + :type virtual_wan_name: str + :param p2_svpn_server_configuration_name: The name of the + P2SVpnServerConfiguration. + :type p2_svpn_server_configuration_name: str + :param p2_svpn_server_configuration_parameters: Parameters supplied to + create or Update a P2SVpnServerConfiguration. + :type p2_svpn_server_configuration_parameters: + ~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfiguration + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + P2SVpnServerConfiguration or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfiguration] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfiguration]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + p2_svpn_server_configuration_name=p2_svpn_server_configuration_name, + p2_svpn_server_configuration_parameters=p2_svpn_server_configuration_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('P2SVpnServerConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWanName}/p2sVpnServerConfigurations/{p2SVpnServerConfigurationName}'} + + + def _delete_initial( + self, resource_group_name, virtual_wan_name, p2_svpn_server_configuration_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWanName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str'), + 'p2SVpnServerConfigurationName': self._serialize.url("p2_svpn_server_configuration_name", p2_svpn_server_configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_wan_name, p2_svpn_server_configuration_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a P2SVpnServerConfiguration. + + :param resource_group_name: The resource group name of the + P2SVpnServerConfiguration. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWan. + :type virtual_wan_name: str + :param p2_svpn_server_configuration_name: The name of the + P2SVpnServerConfiguration. + :type p2_svpn_server_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + p2_svpn_server_configuration_name=p2_svpn_server_configuration_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWanName}/p2sVpnServerConfigurations/{p2SVpnServerConfigurationName}'} + + def list_by_virtual_wan( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + """Retrieves all P2SVpnServerConfigurations for a particular VirtualWan. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWan. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of P2SVpnServerConfiguration + :rtype: + ~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfigurationPaged[~azure.mgmt.network.v2018_08_01.models.P2SVpnServerConfiguration] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_virtual_wan.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWanName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.P2SVpnServerConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.P2SVpnServerConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_virtual_wan.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWanName}/p2sVpnServerConfigurations'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/packet_captures_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/packet_captures_operations.py new file mode 100644 index 000000000000..c1c2e75d31af --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/packet_captures_operations.py @@ -0,0 +1,540 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PacketCapturesOperations(object): + """PacketCapturesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _create_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PacketCapture') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, network_watcher_name, packet_capture_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create and start a packet capture on the specified VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param parameters: Parameters that define the create packet capture + operation. + :type parameters: ~azure.mgmt.network.v2018_08_01.models.PacketCapture + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PacketCaptureResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.PacketCaptureResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.PacketCaptureResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + def get( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + """Gets a packet capture session by name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PacketCaptureResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.PacketCaptureResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + + def _stop_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops a specified packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop'} + + + def _get_status_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + if response.status_code == 202: + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_status( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Query the status of a running packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param packet_capture_name: The name given to the packet capture + session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + PacketCaptureQueryStatusResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.PacketCaptureQueryStatusResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.PacketCaptureQueryStatusResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_status_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus'} + + def list( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Lists all packet capture sessions within the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PacketCaptureResult + :rtype: + ~azure.mgmt.network.v2018_08_01.models.PacketCaptureResultPaged[~azure.mgmt.network.v2018_08_01.models.PacketCaptureResult] + :raises: + :class:`ErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.PacketCaptureResultPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PacketCaptureResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/public_ip_addresses_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/public_ip_addresses_operations.py new file mode 100644 index 000000000000..a3cd3ce4037d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/public_ip_addresses_operations.py @@ -0,0 +1,770 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PublicIPAddressesOperations(object): + """PublicIPAddressesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + + def _delete_initial( + self, resource_group_name, public_ip_address_name, custom_headers=None, raw=False, **operation_config): + api_version = "2018-08-01" + + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, public_ip_address_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified public IP address. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the subnet. + :type public_ip_address_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + public_ip_address_name=public_ip_address_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + def get( + self, resource_group_name, public_ip_address_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified public IP address in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the subnet. + :type public_ip_address_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPAddress or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-08-01" + + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + + def _create_or_update_initial( + self, resource_group_name, public_ip_address_name, parameters, custom_headers=None, raw=False, **operation_config): + api_version = "2018-08-01" + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PublicIPAddress') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + if response.status_code == 201: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, public_ip_address_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a static or dynamic public IP address. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the public IP address. + :type public_ip_address_name: str + :param parameters: Parameters supplied to the create or update public + IP address operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPAddress or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.PublicIPAddress] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.PublicIPAddress]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + public_ip_address_name=public_ip_address_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + + def _update_tags_initial( + self, resource_group_name, public_ip_address_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + api_version = "2018-08-01" + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, public_ip_address_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates public IP address tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the public IP address. + :type public_ip_address_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPAddress or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.PublicIPAddress] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.PublicIPAddress]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + public_ip_address_name=public_ip_address_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the public IP addresses in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2018_08_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2018-08-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all public IP addresses in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2018_08_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2018-08-01" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses'} + + def list_virtual_machine_scale_set_public_ip_addresses( + self, resource_group_name, virtual_machine_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets information about all public IP addresses on a virtual machine + scale set level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2018_08_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_public_ip_addresses.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_public_ip_addresses.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses'} + + def list_virtual_machine_scale_set_vm_public_ip_addresses( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets information about all public IP addresses in a virtual machine IP + configuration in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The network interface name. + :type network_interface_name: str + :param ip_configuration_name: The IP configuration name. + :type ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2018_08_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2018_08_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_vm_public_ip_addresses.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_virtual_machine_scale_set_vm_public_ip_addresses.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses'} + + def get_virtual_machine_scale_set_public_ip_address( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, public_ip_address_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified public IP address in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the IP configuration. + :type ip_configuration_name: str + :param public_ip_address_name: The name of the public IP Address. + :type public_ip_address_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPAddress or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.PublicIPAddress or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2017-03-30" + + # Construct URL + url = self.get_virtual_machine_scale_set_public_ip_address.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_public_ip_address.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/public_ip_prefixes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/public_ip_prefixes_operations.py new file mode 100644 index 000000000000..a19b266a18c8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/public_ip_prefixes_operations.py @@ -0,0 +1,522 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PublicIPPrefixesOperations(object): + """PublicIPPrefixesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, public_ip_prefix_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, public_ip_prefix_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified public IP prefix. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the PublicIpPrefix. + :type public_ip_prefix_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + public_ip_prefix_name=public_ip_prefix_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + def get( + self, resource_group_name, public_ip_prefix_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified public IP prefix in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the PublicIPPrefx. + :type public_ip_prefix_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPPrefix or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.PublicIPPrefix or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + + def _create_or_update_initial( + self, resource_group_name, public_ip_prefix_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PublicIPPrefix') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + if response.status_code == 201: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, public_ip_prefix_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a static or dynamic public IP prefix. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the public IP prefix. + :type public_ip_prefix_name: str + :param parameters: Parameters supplied to the create or update public + IP prefix operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.PublicIPPrefix + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPPrefix or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.PublicIPPrefix] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.PublicIPPrefix]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + public_ip_prefix_name=public_ip_prefix_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + + def _update_tags_initial( + self, resource_group_name, public_ip_prefix_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, public_ip_prefix_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates public IP prefix tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the public IP prefix. + :type public_ip_prefix_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPPrefix or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.PublicIPPrefix] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.PublicIPPrefix]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + public_ip_prefix_name=public_ip_prefix_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the public IP prefixes in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPPrefix + :rtype: + ~azure.mgmt.network.v2018_08_01.models.PublicIPPrefixPaged[~azure.mgmt.network.v2018_08_01.models.PublicIPPrefix] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all public IP prefixes in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPPrefix + :rtype: + ~azure.mgmt.network.v2018_08_01.models.PublicIPPrefixPaged[~azure.mgmt.network.v2018_08_01.models.PublicIPPrefix] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_filter_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_filter_rules_operations.py new file mode 100644 index 000000000000..e4a342a080ae --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_filter_rules_operations.py @@ -0,0 +1,472 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteFilterRulesOperations(object): + """RouteFilterRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified rule from a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the rule. + :type rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + rule_name=rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + def get( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified rule from a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the rule. + :type rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteFilterRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.RouteFilterRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilterRule', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route in the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the route filter rule. + :type rule_name: str + :param route_filter_rule_parameters: Parameters supplied to the create + or update route filter rule operation. + :type route_filter_rule_parameters: + ~azure.mgmt.network.v2018_08_01.models.RouteFilterRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilterRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + rule_name=rule_name, + route_filter_rule_parameters=route_filter_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + + def _update_initial( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_rule_parameters, 'PatchRouteFilterRule') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a route in the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the route filter rule. + :type rule_name: str + :param route_filter_rule_parameters: Parameters supplied to the update + route filter rule operation. + :type route_filter_rule_parameters: + ~azure.mgmt.network.v2018_08_01.models.PatchRouteFilterRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilterRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + rule_name=rule_name, + route_filter_rule_parameters=route_filter_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + def list_by_route_filter( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, **operation_config): + """Gets all RouteFilterRules in a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilterRule + :rtype: + ~azure.mgmt.network.v2018_08_01.models.RouteFilterRulePaged[~azure.mgmt.network.v2018_08_01.models.RouteFilterRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_route_filter.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteFilterRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteFilterRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_route_filter.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_filters_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_filters_operations.py new file mode 100644 index 000000000000..c222f8d720e7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_filters_operations.py @@ -0,0 +1,522 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteFiltersOperations(object): + """RouteFiltersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + def get( + self, resource_group_name, route_filter_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param expand: Expands referenced express route bgp peering resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.RouteFilter or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route filter in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param route_filter_parameters: Parameters supplied to the create or + update route filter operation. + :type route_filter_parameters: + ~azure.mgmt.network.v2018_08_01.models.RouteFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilter or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.RouteFilter] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.RouteFilter]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + route_filter_parameters=route_filter_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + + def _update_initial( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_parameters, 'PatchRouteFilter') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a route filter in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param route_filter_parameters: Parameters supplied to the update + route filter operation. + :type route_filter_parameters: + ~azure.mgmt.network.v2018_08_01.models.PatchRouteFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilter or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.RouteFilter] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.RouteFilter]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + route_filter_parameters=route_filter_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all route filters in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilter + :rtype: + ~azure.mgmt.network.v2018_08_01.models.RouteFilterPaged[~azure.mgmt.network.v2018_08_01.models.RouteFilter] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all route filters in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilter + :rtype: + ~azure.mgmt.network.v2018_08_01.models.RouteFilterPaged[~azure.mgmt.network.v2018_08_01.models.RouteFilter] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_tables_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_tables_operations.py new file mode 100644 index 000000000000..e4ca9c452a7a --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/route_tables_operations.py @@ -0,0 +1,521 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteTablesOperations(object): + """RouteTablesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + def get( + self, resource_group_name, route_table_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteTable or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.RouteTable or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_table_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'RouteTable') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_table_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or updates a route table in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param parameters: Parameters supplied to the create or update route + table operation. + :type parameters: ~azure.mgmt.network.v2018_08_01.models.RouteTable + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteTable or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.RouteTable] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.RouteTable]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + + def _update_tags_initial( + self, resource_group_name, route_table_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, route_table_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a route table tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteTable or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.RouteTable] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.RouteTable]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all route tables in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteTable + :rtype: + ~azure.mgmt.network.v2018_08_01.models.RouteTablePaged[~azure.mgmt.network.v2018_08_01.models.RouteTable] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteTablePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteTablePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all route tables in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteTable + :rtype: + ~azure.mgmt.network.v2018_08_01.models.RouteTablePaged[~azure.mgmt.network.v2018_08_01.models.RouteTable] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RouteTablePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RouteTablePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/routes_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/routes_operations.py new file mode 100644 index 000000000000..1c8bd8d2d333 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/routes_operations.py @@ -0,0 +1,365 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RoutesOperations(object): + """RoutesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route from a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + route_name=route_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + def get( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified route from a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Route or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.Route or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_table_name, route_name, route_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_parameters, 'Route') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Route', response) + if response.status_code == 201: + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_table_name, route_name, route_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route in the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param route_parameters: Parameters supplied to the create or update + route operation. + :type route_parameters: ~azure.mgmt.network.v2018_08_01.models.Route + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Route or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.Route] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.Route]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + route_name=route_name, + route_parameters=route_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + def list( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, **operation_config): + """Gets all routes in a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Route + :rtype: + ~azure.mgmt.network.v2018_08_01.models.RoutePaged[~azure.mgmt.network.v2018_08_01.models.Route] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.RoutePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.RoutePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/security_rules_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/security_rules_operations.py new file mode 100644 index 000000000000..74a67526a4d3 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/security_rules_operations.py @@ -0,0 +1,371 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class SecurityRulesOperations(object): + """SecurityRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + security_rule_name=security_rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + def get( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, **operation_config): + """Get the specified network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.SecurityRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_security_group_name, security_rule_name, security_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + if response.status_code == 201: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_security_group_name, security_rule_name, security_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a security rule in the specified network security + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param security_rule_parameters: Parameters supplied to the create or + update network security rule operation. + :type security_rule_parameters: + ~azure.mgmt.network.v2018_08_01.models.SecurityRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SecurityRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.SecurityRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + security_rule_name=security_rule_name, + security_rule_parameters=security_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + def list( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all security rules in a network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityRule + :rtype: + ~azure.mgmt.network.v2018_08_01.models.SecurityRulePaged[~azure.mgmt.network.v2018_08_01.models.SecurityRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/service_endpoint_policies_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/service_endpoint_policies_operations.py new file mode 100644 index 000000000000..4eaf1e3c40e2 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/service_endpoint_policies_operations.py @@ -0,0 +1,527 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServiceEndpointPoliciesOperations(object): + """ServiceEndpointPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified service endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + def get( + self, resource_group_name, service_endpoint_policy_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified service Endpoint Policies in a specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceEndpointPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, service_endpoint_policy_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServiceEndpointPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + if response.status_code == 201: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_endpoint_policy_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a service Endpoint Policies. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param parameters: Parameters supplied to the create or update service + endpoint policy operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ServiceEndpointPolicy + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + + def _update_initial( + self, resource_group_name, service_endpoint_policy_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, service_endpoint_policy_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates service Endpoint Policies. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ServiceEndpointPolicy + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the service endpoint policies in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicy + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyPaged[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all service endpoint Policies in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicy + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyPaged[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/service_endpoint_policy_definitions_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/service_endpoint_policy_definitions_operations.py new file mode 100644 index 000000000000..60a16a322308 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/service_endpoint_policy_definitions_operations.py @@ -0,0 +1,379 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServiceEndpointPolicyDefinitionsOperations(object): + """ServiceEndpointPolicyDefinitionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified ServiceEndpoint policy definitions. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the Service Endpoint + Policy. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition. + :type service_endpoint_policy_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + service_endpoint_policy_definition_name=service_endpoint_policy_definition_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + def get( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, **operation_config): + """Get the specified service endpoint policy definitions from service + endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy name. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition name. + :type service_endpoint_policy_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceEndpointPolicyDefinition or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyDefinition + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + + def _create_or_update_initial( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, service_endpoint_policy_definitions, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(service_endpoint_policy_definitions, 'ServiceEndpointPolicyDefinition') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + if response.status_code == 201: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, service_endpoint_policy_definitions, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a service endpoint policy definition in the + specified service endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition name. + :type service_endpoint_policy_definition_name: str + :param service_endpoint_policy_definitions: Parameters supplied to the + create or update service endpoint policy operation. + :type service_endpoint_policy_definitions: + ~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyDefinition + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ServiceEndpointPolicyDefinition or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyDefinition] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyDefinition]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + service_endpoint_policy_definition_name=service_endpoint_policy_definition_name, + service_endpoint_policy_definitions=service_endpoint_policy_definitions, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + def list_by_resource_group( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, **operation_config): + """Gets all service endpoint policy definitions in a service end point + policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy name. + :type service_endpoint_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicyDefinition + :rtype: + ~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyDefinitionPaged[~azure.mgmt.network.v2018_08_01.models.ServiceEndpointPolicyDefinition] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServiceEndpointPolicyDefinitionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServiceEndpointPolicyDefinitionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/subnets_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/subnets_operations.py new file mode 100644 index 000000000000..62aaa11f6c51 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/subnets_operations.py @@ -0,0 +1,369 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class SubnetsOperations(object): + """SubnetsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified subnet. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + subnet_name=subnet_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + def get( + self, resource_group_name, virtual_network_name, subnet_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified subnet by virtual network and resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Subnet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.Subnet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, subnet_name, subnet_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(subnet_parameters, 'Subnet') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Subnet', response) + if response.status_code == 201: + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, subnet_name, subnet_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a subnet in the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param subnet_parameters: Parameters supplied to the create or update + subnet operation. + :type subnet_parameters: ~azure.mgmt.network.v2018_08_01.models.Subnet + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Subnet or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.Subnet] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.Subnet]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + subnet_name=subnet_name, + subnet_parameters=subnet_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + def list( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Gets all subnets in a virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Subnet + :rtype: + ~azure.mgmt.network.v2018_08_01.models.SubnetPaged[~azure.mgmt.network.v2018_08_01.models.Subnet] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SubnetPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SubnetPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/usages_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/usages_operations.py new file mode 100644 index 000000000000..38b473188d9d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/usages_operations.py @@ -0,0 +1,105 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class UsagesOperations(object): + """UsagesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """List network usages for a subscription. + + :param location: The location where resource usage is queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Usage + :rtype: + ~azure.mgmt.network.v2018_08_01.models.UsagePaged[~azure.mgmt.network.v2018_08_01.models.Usage] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._ ]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.UsagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.UsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/usages'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_hubs_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_hubs_operations.py new file mode 100644 index 000000000000..077c7bbbcb8f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_hubs_operations.py @@ -0,0 +1,514 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualHubsOperations(object): + """VirtualHubsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def get( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualHub or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VirtualHub or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_hub_name, virtual_hub_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_hub_parameters, 'VirtualHub') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_hub_name, virtual_hub_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VirtualHub resource if it doesn't exist else updates the + existing VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param virtual_hub_parameters: Parameters supplied to create or update + VirtualHub. + :type virtual_hub_parameters: + ~azure.mgmt.network.v2018_08_01.models.VirtualHub + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualHub or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualHub] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualHub]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + virtual_hub_parameters=virtual_hub_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_hub_name, tags=None, custom_headers=None, raw=False, **operation_config): + virtual_hub_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_hub_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_hub_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates VirtualHub tags. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualHub or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualHub] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualHub]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + + def _delete_initial( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualHubs in a resource group. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualHub + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualHubPaged[~azure.mgmt.network.v2018_08_01.models.VirtualHub] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualHubs in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualHub + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualHubPaged[~azure.mgmt.network.v2018_08_01.models.VirtualHub] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_gateway_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_gateway_connections_operations.py new file mode 100644 index 000000000000..e78c167a119d --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_gateway_connections_operations.py @@ -0,0 +1,749 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkGatewayConnectionsOperations(object): + """VirtualNetworkGatewayConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network gateway connection in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param parameters: Parameters supplied to the create or update virtual + network gateway connection operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualNetworkGatewayConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + def get( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network gateway connection by resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkGatewayConnection or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _delete_initial( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network Gateway connection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_network_gateway_connection_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_network_gateway_connection_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual network gateway connection tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualNetworkGatewayConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _set_shared_key_initial( + self, resource_group_name, virtual_network_gateway_connection_name, value, id=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ConnectionSharedKey(id=id, value=value) + + # Construct URL + url = self.set_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionSharedKey') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSharedKey', response) + if response.status_code == 201: + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, value, id=None, custom_headers=None, raw=False, polling=True, **operation_config): + """The Put VirtualNetworkGatewayConnectionSharedKey operation sets the + virtual network gateway connection shared key for passed virtual + network gateway connection in the specified resource group through + Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection name. + :type virtual_network_gateway_connection_name: str + :param value: The virtual network connection shared key value. + :type value: str + :param id: Resource ID. + :type id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectionSharedKey or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ConnectionSharedKey] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ConnectionSharedKey]] + :raises: :class:`CloudError` + """ + raw_result = self._set_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + value=value, + id=id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey'} + + def get_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + """The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves + information about the specified virtual network gateway connection + shared key through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection shared key name. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionSharedKey or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.ConnectionSharedKey or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """The List VirtualNetworkGatewayConnections operation retrieves all the + virtual network gateways connections created. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkGatewayConnection + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionPaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnection] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkGatewayConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkGatewayConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections'} + + + def _reset_shared_key_initial( + self, resource_group_name, virtual_network_gateway_connection_name, key_length, custom_headers=None, raw=False, **operation_config): + parameters = models.ConnectionResetSharedKey(key_length=key_length) + + # Construct URL + url = self.reset_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionResetSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def reset_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, key_length, custom_headers=None, raw=False, polling=True, **operation_config): + """The VirtualNetworkGatewayConnectionResetSharedKey operation resets the + virtual network gateway connection shared key for passed virtual + network gateway connection in the specified resource group through + Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection reset shared key Name. + :type virtual_network_gateway_connection_name: str + :param key_length: The virtual network connection reset shared key + length, should between 1 and 128. + :type key_length: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ConnectionResetSharedKey or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.ConnectionResetSharedKey] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.ConnectionResetSharedKey]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + key_length=key_length, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionResetSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_gateways_operations.py new file mode 100644 index 000000000000..4bf1f004652f --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_gateways_operations.py @@ -0,0 +1,1641 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkGatewaysOperations(object): + """VirtualNetworkGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network gateway in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to create or update virtual + network gateway operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + def get( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network gateway by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + + def _delete_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_network_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_network_gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual network gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual network gateways by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkGateway + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayPaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways'} + + def list_connections( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets all the connections in a virtual network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + VirtualNetworkGatewayConnectionListEntity + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionListEntityPaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGatewayConnectionListEntity] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_connections.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkGatewayConnectionListEntityPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkGatewayConnectionListEntityPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_connections.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections'} + + + def _reset_initial( + self, resource_group_name, virtual_network_gateway_name, gateway_vip=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reset.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if gateway_vip is not None: + query_parameters['gatewayVip'] = self._serialize.query("gateway_vip", gateway_vip, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def reset( + self, resource_group_name, virtual_network_gateway_name, gateway_vip=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Resets the primary of the virtual network gateway in the specified + resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param gateway_vip: Virtual network gateway vip address supplied to + the begin reset of the active-active feature enabled gateway. + :type gateway_vip: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + gateway_vip=gateway_vip, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset'} + + + def _reset_vpn_client_shared_key_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reset_vpn_client_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reset_vpn_client_shared_key( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Resets the VPN client shared key of the virtual network gateway in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_vpn_client_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset_vpn_client_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey'} + + + def _generatevpnclientpackage_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.generatevpnclientpackage.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnClientParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generatevpnclientpackage( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates VPN client package for P2S client of the virtual network + gateway in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to the generate virtual network + gateway VPN client package operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.VpnClientParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._generatevpnclientpackage_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generatevpnclientpackage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage'} + + + def _generate_vpn_profile_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.generate_vpn_profile.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnClientParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generate_vpn_profile( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates VPN profile for P2S client of the virtual network gateway in + the specified resource group. Used for IKEV2 and radius based + authentication. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to the generate virtual network + gateway VPN client package operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.VpnClientParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._generate_vpn_profile_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generate_vpn_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile'} + + + def _get_vpn_profile_package_url_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_vpn_profile_package_url.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vpn_profile_package_url( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets pre-generated VPN profile for P2S client of the virtual network + gateway in the specified resource group. The profile needs to be + generated first using generateVpnProfile. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._get_vpn_profile_package_url_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vpn_profile_package_url.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl'} + + + def _get_bgp_peer_status_initial( + self, resource_group_name, virtual_network_gateway_name, peer=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_bgp_peer_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if peer is not None: + query_parameters['peer'] = self._serialize.query("peer", peer, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BgpPeerStatusListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_bgp_peer_status( + self, resource_group_name, virtual_network_gateway_name, peer=None, custom_headers=None, raw=False, polling=True, **operation_config): + """The GetBgpPeerStatus operation retrieves the status of all BGP peers. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param peer: The IP address of the peer to retrieve the status of. + :type peer: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns BgpPeerStatusListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.BgpPeerStatusListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.BgpPeerStatusListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_bgp_peer_status_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + peer=peer, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('BgpPeerStatusListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_bgp_peer_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus'} + + def supported_vpn_devices( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets a xml format representation for supported vpn devices. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.supported_vpn_devices.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + supported_vpn_devices.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices'} + + + def _get_learned_routes_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_learned_routes.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_learned_routes( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation retrieves a list of routes the virtual network gateway + has learned, including routes learned from BGP peers. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns GatewayRouteListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.GatewayRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.GatewayRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_learned_routes_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_learned_routes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes'} + + + def _get_advertised_routes_initial( + self, resource_group_name, virtual_network_gateway_name, peer, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_advertised_routes.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['peer'] = self._serialize.query("peer", peer, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_advertised_routes( + self, resource_group_name, virtual_network_gateway_name, peer, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation retrieves a list of routes the virtual network gateway + is advertising to the specified peer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param peer: The IP address of the peer + :type peer: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns GatewayRouteListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.GatewayRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.GatewayRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_advertised_routes_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + peer=peer, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_advertised_routes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes'} + + + def _set_vpnclient_ipsec_parameters_initial( + self, resource_group_name, virtual_network_gateway_name, vpnclient_ipsec_params, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.set_vpnclient_ipsec_parameters.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpnclient_ipsec_params, 'VpnClientIPsecParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_vpnclient_ipsec_parameters( + self, resource_group_name, virtual_network_gateway_name, vpnclient_ipsec_params, custom_headers=None, raw=False, polling=True, **operation_config): + """The Set VpnclientIpsecParameters operation sets the vpnclient ipsec + policy for P2S client of virtual network gateway in the specified + resource group through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param vpnclient_ipsec_params: Parameters supplied to the Begin Set + vpnclient ipsec parameters of Virtual Network Gateway P2S client + operation through Network resource provider. + :type vpnclient_ipsec_params: + ~azure.mgmt.network.v2018_08_01.models.VpnClientIPsecParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VpnClientIPsecParameters or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VpnClientIPsecParameters] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VpnClientIPsecParameters]] + :raises: :class:`CloudError` + """ + raw_result = self._set_vpnclient_ipsec_parameters_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + vpnclient_ipsec_params=vpnclient_ipsec_params, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_vpnclient_ipsec_parameters.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters'} + + + def _get_vpnclient_ipsec_parameters_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_vpnclient_ipsec_parameters.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vpnclient_ipsec_parameters( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The Get VpnclientIpsecParameters operation retrieves information about + the vpnclient ipsec policy for P2S client of virtual network gateway in + the specified resource group through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The virtual network gateway name. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VpnClientIPsecParameters or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VpnClientIPsecParameters] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VpnClientIPsecParameters]] + :raises: :class:`CloudError` + """ + raw_result = self._get_vpnclient_ipsec_parameters_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vpnclient_ipsec_parameters.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters'} + + def vpn_device_configuration_script( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + """Gets a xml format representation for vpn device configuration script. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection for which the configuration script + is generated. + :type virtual_network_gateway_connection_name: str + :param parameters: Parameters supplied to the generate vpn device + script operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.VpnDeviceScriptParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.vpn_device_configuration_script.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + vpn_device_configuration_script.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_peerings_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_peerings_operations.py new file mode 100644 index 000000000000..1f9b0e947170 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_peerings_operations.py @@ -0,0 +1,368 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkPeeringsOperations(object): + """VirtualNetworkPeeringsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network peering. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the virtual network + peering. + :type virtual_network_peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + virtual_network_peering_name=virtual_network_peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + def get( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network peering. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the virtual network + peering. + :type virtual_network_peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkPeering or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeering + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, virtual_network_peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, virtual_network_peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the peering. + :type virtual_network_peering_name: str + :param virtual_network_peering_parameters: Parameters supplied to the + create or update virtual network peering operation. + :type virtual_network_peering_parameters: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkPeering + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + virtual_network_peering_name=virtual_network_peering_name, + virtual_network_peering_parameters=virtual_network_peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + def list( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual network peerings in a virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkPeering + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeeringPaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPeering] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkPeeringPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_taps_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_taps_operations.py new file mode 100644 index 000000000000..97864621c4d7 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_network_taps_operations.py @@ -0,0 +1,518 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkTapsOperations(object): + """VirtualNetworkTapsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, tap_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'tapName': self._serialize.url("tap_name", tap_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, tap_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network tap. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param tap_name: The name of the virtual network tap. + :type tap_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + tap_name=tap_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}'} + + def get( + self, resource_group_name, tap_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified virtual network tap. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param tap_name: The name of virtual network tap. + :type tap_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkTap or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'tapName': self._serialize.url("tap_name", tap_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}'} + + + def _create_or_update_initial( + self, resource_group_name, tap_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'tapName': self._serialize.url("tap_name", tap_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkTap') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkTap', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, tap_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a Virtual Network Tap. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param tap_name: The name of the virtual network tap. + :type tap_name: str + :param parameters: Parameters supplied to the create or update virtual + network tap operation. + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkTap or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + tap_name=tap_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}'} + + + def _update_tags_initial( + self, resource_group_name, tap_name, tags=None, custom_headers=None, raw=False, **operation_config): + tap_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'tapName': self._serialize.url("tap_name", tap_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(tap_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, tap_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates an VirtualNetworkTap tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param tap_name: The name of the tap. + :type tap_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkTap or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + tap_name=tap_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the VirtualNetworkTaps in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkTap + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTapPaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkTapPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkTapPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the VirtualNetworkTaps in a subscription. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkTap + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTapPaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkTap] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkTapPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkTapPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_networks_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_networks_operations.py new file mode 100644 index 000000000000..01a8ef3d9852 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_networks_operations.py @@ -0,0 +1,659 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworksOperations(object): + """VirtualNetworksOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + def get( + self, resource_group_name, virtual_network_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VirtualNetwork or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetwork') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param parameters: Parameters supplied to the create or update virtual + network operation + :type parameters: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetwork + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetwork or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetwork] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetwork]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_network_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_network_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual network tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetwork or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualNetwork] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualNetwork]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all virtual networks in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetwork + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetwork] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual networks in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetwork + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkPaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetwork] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks'} + + def check_ip_address_availability( + self, resource_group_name, virtual_network_name, ip_address=None, custom_headers=None, raw=False, **operation_config): + """Checks whether a private IP address is available for use. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param ip_address: The private IP address to be verified. + :type ip_address: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IPAddressAvailabilityResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2018_08_01.models.IPAddressAvailabilityResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.check_ip_address_availability.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if ip_address is not None: + query_parameters['ipAddress'] = self._serialize.query("ip_address", ip_address, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IPAddressAvailabilityResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_ip_address_availability.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability'} + + def list_usage( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Lists usage stats. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkUsage + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualNetworkUsagePaged[~azure.mgmt.network.v2018_08_01.models.VirtualNetworkUsage] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_usage.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkUsagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkUsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_usage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_wans_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_wans_operations.py new file mode 100644 index 000000000000..df6904905794 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/virtual_wans_operations.py @@ -0,0 +1,515 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualWansOperations(object): + """VirtualWansOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def get( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being retrieved. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualWAN or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VirtualWAN or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_wan_name, wan_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(wan_parameters, 'VirtualWAN') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_wan_name, wan_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VirtualWAN resource if it doesn't exist else updates the + existing VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being created or + updated. + :type virtual_wan_name: str + :param wan_parameters: Parameters supplied to create or update + VirtualWAN. + :type wan_parameters: + ~azure.mgmt.network.v2018_08_01.models.VirtualWAN + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualWAN or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualWAN] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualWAN]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + wan_parameters=wan_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_wan_name, tags=None, custom_headers=None, raw=False, **operation_config): + wan_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(wan_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_wan_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a VirtualWAN tags. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being updated. + :type virtual_wan_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualWAN or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VirtualWAN] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VirtualWAN]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + + def _delete_initial( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being deleted. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualWANs in a resource group. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualWAN + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualWANPaged[~azure.mgmt.network.v2018_08_01.models.VirtualWAN] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualWANs in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualWAN + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VirtualWANPaged[~azure.mgmt.network.v2018_08_01.models.VirtualWAN] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_connections_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_connections_operations.py new file mode 100644 index 000000000000..81a471a397c0 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_connections_operations.py @@ -0,0 +1,362 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnConnectionsOperations(object): + """VpnConnectionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a vpn connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the vpn connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VpnConnection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, gateway_name, connection_name, vpn_connection_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_connection_parameters, 'VpnConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, gateway_name, connection_name, vpn_connection_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a vpn connection to a scalable vpn gateway if it doesn't exist + else updates the existing connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the connection. + :type connection_name: str + :param vpn_connection_parameters: Parameters supplied to create or + Update a VPN Connection. + :type vpn_connection_parameters: + ~azure.mgmt.network.v2018_08_01.models.VpnConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VpnConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VpnConnection]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + connection_name=connection_name, + vpn_connection_parameters=vpn_connection_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + + def _delete_initial( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a vpn connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + connection_name=connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + def list_by_vpn_gateway( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + """Retrieves all vpn connections for a particular virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnConnection + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VpnConnectionPaged[~azure.mgmt.network.v2018_08_01.models.VpnConnection] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_vpn_gateway.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnConnectionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_vpn_gateway.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_gateways_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_gateways_operations.py new file mode 100644 index 000000000000..c29b8bd14ee8 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_gateways_operations.py @@ -0,0 +1,514 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnGatewaysOperations(object): + """VpnGatewaysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VpnGateway or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, gateway_name, vpn_gateway_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_gateway_parameters, 'VpnGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, gateway_name, vpn_gateway_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a virtual wan vpn gateway if it doesn't exist else updates the + existing gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param vpn_gateway_parameters: Parameters supplied to create or Update + a virtual wan vpn gateway. + :type vpn_gateway_parameters: + ~azure.mgmt.network.v2018_08_01.models.VpnGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VpnGateway]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + vpn_gateway_parameters=vpn_gateway_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + vpn_gateway_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_gateway_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates virtual wan vpn gateway tags. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VpnGateway]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _delete_initial( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnGateways in a resource group. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnGateway + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VpnGatewayPaged[~azure.mgmt.network.v2018_08_01.models.VpnGateway] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnGateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnGateway + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VpnGatewayPaged[~azure.mgmt.network.v2018_08_01.models.VpnGateway] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_sites_configuration_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_sites_configuration_operations.py new file mode 100644 index 000000000000..2d325254f479 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_sites_configuration_operations.py @@ -0,0 +1,133 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnSitesConfigurationOperations(object): + """VpnSitesConfigurationOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + + def _download_initial( + self, resource_group_name, virtual_wan_name, vpn_sites=None, output_blob_sas_url=None, custom_headers=None, raw=False, **operation_config): + request = models.GetVpnSitesConfigurationRequest(vpn_sites=vpn_sites, output_blob_sas_url=output_blob_sas_url) + + # Construct URL + url = self.download.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(request, 'GetVpnSitesConfigurationRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def download( + self, resource_group_name, virtual_wan_name, vpn_sites=None, output_blob_sas_url=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Gives the sas-url to download the configurations for vpn-sites in a + resource group. + + :param resource_group_name: The resource group name. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN for which + configuration of all vpn-sites is needed. + :type virtual_wan_name: str + :param vpn_sites: List of resource-ids of the vpn-sites for which + config is to be downloaded. + :type vpn_sites: list[str] + :param output_blob_sas_url: The sas-url to download the configurations + for vpn-sites + :type output_blob_sas_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._download_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + vpn_sites=vpn_sites, + output_blob_sas_url=output_blob_sas_url, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + download.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_sites_operations.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_sites_operations.py new file mode 100644 index 000000000000..fa9f7207d208 --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/operations/vpn_sites_operations.py @@ -0,0 +1,515 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnSitesOperations(object): + """VpnSitesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2018-08-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-08-01" + + self.config = config + + def get( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VPNsite. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being retrieved. + :type vpn_site_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnSite or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2018_08_01.models.VpnSite or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + + def _create_or_update_initial( + self, resource_group_name, vpn_site_name, vpn_site_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_site_parameters, 'VpnSite') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, vpn_site_name, vpn_site_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VpnSite resource if it doesn't exist else updates the + existing VpnSite. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being created or + updated. + :type vpn_site_name: str + :param vpn_site_parameters: Parameters supplied to create or update + VpnSite. + :type vpn_site_parameters: + ~azure.mgmt.network.v2018_08_01.models.VpnSite + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnSite or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VpnSite] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VpnSite]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + vpn_site_name=vpn_site_name, + vpn_site_parameters=vpn_site_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + + def _update_tags_initial( + self, resource_group_name, vpn_site_name, tags=None, custom_headers=None, raw=False, **operation_config): + vpn_site_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_site_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, vpn_site_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates VpnSite tags. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being updated. + :type vpn_site_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnSite or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2018_08_01.models.VpnSite] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2018_08_01.models.VpnSite]] + :raises: + :class:`ErrorException` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + vpn_site_name=vpn_site_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + + def _delete_initial( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VpnSite. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being deleted. + :type vpn_site_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vpn_site_name=vpn_site_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the vpnSites in a resource group. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnSite + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VpnSitePaged[~azure.mgmt.network.v2018_08_01.models.VpnSite] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnSitePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnSitePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnSites in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnSite + :rtype: + ~azure.mgmt.network.v2018_08_01.models.VpnSitePaged[~azure.mgmt.network.v2018_08_01.models.VpnSite] + :raises: + :class:`ErrorException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.VpnSitePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VpnSitePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites'} diff --git a/azure-mgmt-network/azure/mgmt/network/v2018_08_01/version.py b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/version.py new file mode 100644 index 000000000000..53a203f32aaf --- /dev/null +++ b/azure-mgmt-network/azure/mgmt/network/v2018_08_01/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "" + diff --git a/azure-mgmt-network/azure/mgmt/network/version.py b/azure-mgmt-network/azure/mgmt/network/version.py index 88729157c488..a6dd75d591a0 100644 --- a/azure-mgmt-network/azure/mgmt/network/version.py +++ b/azure-mgmt-network/azure/mgmt/network/version.py @@ -5,4 +5,4 @@ # license information. # -------------------------------------------------------------------------- -VERSION = "2.0.0" +VERSION = "2.2.1" diff --git a/azure-mgmt-network/azure_bdist_wheel.py b/azure-mgmt-network/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-network/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-network/setup.cfg b/azure-mgmt-network/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-network/setup.cfg +++ b/azure-mgmt-network/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-network/setup.py b/azure-mgmt-network/setup.py index 7f14edea803c..90b9416272f1 100644 --- a/azure-mgmt-network/setup.py +++ b/azure-mgmt-network/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-network" @@ -76,10 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ + 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', - 'azure-common~=1.1,>=1.1.9', + 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml index e8a3ed6e57d4..0c4e2a1e2447 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml @@ -5,19 +5,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 msrest_azure/0.4.34 azure-mgmt-network/ Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/CheckDnsNameAvailability?domainNameLabel=pydomain&api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/CheckDnsNameAvailability?domainNameLabel=pydomain&api-version=2018-08-01 response: body: {string: "{\r\n \"available\": true\r\n}"} headers: cache-control: [no-cache] content-length: ['25'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:43:50 GMT'] + date: ['Tue, 11 Sep 2018 17:26:05 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_circuit.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_circuit.yaml index 7927b8a8c9eb..e105d65d681f 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_circuit.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_circuit.yaml @@ -14,7 +14,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyexpressroute9edf1275\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275\"\ ,\r\n \"etag\": \"W/\\\"e45e8601-d726-44e8-9f37-f8d05f38500b\\\"\",\r\n \ @@ -30,7 +30,7 @@ interactions: ,\r\n \"tier\": \"Standard\",\r\n \"family\": \"MeteredData\"\r\n }\r\ \n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['1012'] content-type: [application/json; charset=utf-8] @@ -52,7 +52,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -78,7 +78,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -104,7 +104,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -130,7 +130,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8654ca36-0995-46b9-a618-d34e5cafa714?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: @@ -156,7 +156,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyexpressroute9edf1275\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275\"\ ,\r\n \"etag\": \"W/\\\"1176d85a-23a9-4ec0-8157-e66d45408679\\\"\",\r\n \ @@ -194,7 +194,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyexpressroute9edf1275\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275\"\ ,\r\n \"etag\": \"W/\\\"1176d85a-23a9-4ec0-8157-e66d45408679\\\"\",\r\n \ @@ -232,7 +232,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyexpressroute9edf1275\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275\"\ @@ -272,7 +272,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/expressRouteCircuits?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/expressRouteCircuits?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyexpressroute9edf1275\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275\"\ @@ -312,7 +312,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/stats?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/stats?api-version=2018-08-01 response: body: {string: "{\r\n \"primaryBytesIn\": 0,\r\n \"primaryBytesOut\": 0,\r\n\ \ \"secondaryBytesIn\": 0,\r\n \"secondaryBytesOut\": 0\r\n}"} @@ -342,7 +342,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"AzurePublicPeering\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering\"\ ,\r\n \"etag\": \"W/\\\"bcba0098-3521-41f7-83f3-b7967647936e\\\"\",\r\n \ @@ -352,7 +352,7 @@ interactions: secondaryPeerAddressPrefix\": \"192.168.2.0/30\",\r\n \"state\": \"Disabled\"\ ,\r\n \"vlanId\": 200,\r\n \"lastModifiedBy\": \"\"\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['647'] content-type: [application/json; charset=utf-8] @@ -374,7 +374,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -400,7 +400,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -426,7 +426,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -452,7 +452,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ae94f24d-c8ef-49b3-8904-d514e533a0a5?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: @@ -478,7 +478,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"AzurePublicPeering\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering\"\ ,\r\n \"etag\": \"W/\\\"a1d88954-a07c-4229-b9bb-06a57aed803d\\\"\",\r\n \ @@ -512,7 +512,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"AzurePublicPeering\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering\"\ ,\r\n \"etag\": \"W/\\\"a1d88954-a07c-4229-b9bb-06a57aed803d\\\"\",\r\n \ @@ -546,7 +546,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"AzurePublicPeering\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering\"\ @@ -583,7 +583,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering/stats?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering/stats?api-version=2018-08-01 response: body: {string: "{\r\n \"primaryBytesIn\": 0,\r\n \"primaryBytesOut\": 0,\r\n\ \ \"secondaryBytesIn\": 0,\r\n \"secondaryBytesOut\": 0\r\n}"} @@ -611,7 +611,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyauth9edf1275\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275\"\ ,\r\n \"etag\": \"W/\\\"4d1b174e-fdf9-4278-ba2c-348d65396d5d\\\"\",\r\n \ @@ -619,7 +619,7 @@ interactions: authorizationKey\": \"0b6299d1-471b-4a53-ae3a-4eeb523afe1d\",\r\n \"authorizationUseStatus\"\ : \"Available\"\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a6995436-4e09-46aa-ae7b-cddc6cc19116?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a6995436-4e09-46aa-ae7b-cddc6cc19116?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['494'] content-type: [application/json; charset=utf-8] @@ -641,7 +641,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a6995436-4e09-46aa-ae7b-cddc6cc19116?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a6995436-4e09-46aa-ae7b-cddc6cc19116?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: @@ -667,7 +667,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyauth9edf1275\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275\"\ ,\r\n \"etag\": \"W/\\\"e0eb9954-486c-4b4d-a8d5-e778ad032634\\\"\",\r\n \ @@ -697,7 +697,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyauth9edf1275\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275\"\ ,\r\n \"etag\": \"W/\\\"e0eb9954-486c-4b4d-a8d5-e778ad032634\\\"\",\r\n \ @@ -727,7 +727,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyauth9edf1275\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275\"\ @@ -760,16 +760,16 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/authorizations/pyauth9edf1275?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d6c026c3-a5d4-4048-b8b4-bc33320a024f?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d6c026c3-a5d4-4048-b8b4-bc33320a024f?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] date: ['Fri, 15 Sep 2017 23:22:30 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/d6c026c3-a5d4-4048-b8b4-bc33320a024f?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/d6c026c3-a5d4-4048-b8b4-bc33320a024f?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -786,7 +786,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d6c026c3-a5d4-4048-b8b4-bc33320a024f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d6c026c3-a5d4-4048-b8b4-bc33320a024f?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -812,7 +812,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d6c026c3-a5d4-4048-b8b4-bc33320a024f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d6c026c3-a5d4-4048-b8b4-bc33320a024f?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: @@ -839,16 +839,16 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275/peerings/AzurePublicPeering?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] date: ['Fri, 15 Sep 2017 23:22:52 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -865,7 +865,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -891,7 +891,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -917,7 +917,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -943,7 +943,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/734817e0-55ca-4c38-81eb-3a1cb76b07c3?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: @@ -970,16 +970,16 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_express_route_circuit9edf1275/providers/Microsoft.Network/expressRouteCircuits/pyexpressroute9edf1275?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] date: ['Fri, 15 Sep 2017 23:23:34 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -996,7 +996,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -1022,7 +1022,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -1048,7 +1048,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: @@ -1074,7 +1074,7 @@ interactions: msrest_azure/0.4.11 networkmanagementclient/1.4.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1a50917-5e2c-4512-b9ee-b90c331142ec?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml index 023a2774fc97..9efa1307ccfd 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml @@ -5,12 +5,11 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/expressRouteServiceProviders?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/expressRouteServiceProviders?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"ARM Test Provider\"\ ,\r\n \"id\": \"/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/\"\ @@ -318,7 +317,7 @@ interactions: cache-control: [no-cache] content-length: ['20273'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:44:15 GMT'] + date: ['Tue, 11 Sep 2018 17:26:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml index 98143205c58b..4db76430d8f1 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml @@ -8,26 +8,26 @@ interactions: Connection: [keep-alive] Content-Length: ['103'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"6c1c40a6-d32f-4f82-adbb-315d138460f4\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"62197b1d-c524-40ce-af7a-12b785c37375\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Updating\",\r\n \"resourceGuid\": \"05152cae-d03b-4da9-a3c9-d54681cc1910\"\ + : \"Updating\",\r\n \"resourceGuid\": \"59392ae5-6a10-4bb1-bef8-f0edd70cc100\"\ ,\r\n \"publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\"\ : \"Static\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n\ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/98f0edee-39a2-4175-ae74-24ab204a91a6?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e092b5f9-5c12-460b-be04-fa51e0e78540?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['674'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:44:21 GMT'] + date: ['Tue, 11 Sep 2018 17:26:30 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -41,17 +41,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/98f0edee-39a2-4175-ae74-24ab204a91a6?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e092b5f9-5c12-460b-be04-fa51e0e78540?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:44:25 GMT'] + date: ['Tue, 11 Sep 2018 17:26:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -66,26 +66,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"fb9deb62-0593-48e2-a7a8-aa28be924ac1\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"85d4d43f-4844-449e-b864-3b8f43846ca7\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"05152cae-d03b-4da9-a3c9-d54681cc1910\"\ - ,\r\n \"ipAddress\": \"40.118.145.73\",\r\n \"publicIPAddressVersion\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"59392ae5-6a10-4bb1-bef8-f0edd70cc100\"\ + ,\r\n \"ipAddress\": \"40.78.43.113\",\r\n \"publicIPAddressVersion\"\ : \"IPv4\",\r\n \"publicIPAllocationMethod\": \"Static\",\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"ipTags\": []\r\n },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\"\ ,\r\n \"sku\": {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\ \r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['710'] + content-length: ['709'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:44:26 GMT'] - etag: [W/"fb9deb62-0593-48e2-a7a8-aa28be924ac1"] + date: ['Tue, 11 Sep 2018 17:26:35 GMT'] + etag: [W/"85d4d43f-4844-449e-b864-3b8f43846ca7"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -118,20 +118,21 @@ interactions: Connection: [keep-alive] Content-Length: ['2374'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"bbacd7d1-48e8-4a20-9bd0-e4cfee9daca8\",\r\n \"\ + \ \"resourceGuid\": \"1e5801cb-a086-4894-8e2c-34f886392887\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ @@ -143,57 +144,63 @@ interactions: \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ \ \"backendAddressPools\": [\r\n {\r\n \"name\": \"pyapname239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ - \ \"loadBalancingRules\": [\r\n {\r\n \"name\": \"azure-sample-lb-rule\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ + \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + : false,\r\n \"enableTcpReset\": false,\r\n \"loadDistribution\"\ + : \"Default\",\r\n \"backendAddressPool\": {\r\n \"id\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ - \ \"inboundNatRules\": [\r\n {\r\n \"name\": \"azure-sample-netrule1\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ + \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + : false,\r\n \"enableTcpReset\": false\r\n }\r\n },\r\ + \n {\r\n \"name\": \"azure-sample-netrule2\",\r\n \"id\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false\r\n }\r\n }\r\n ],\r\n \"outboundRules\": [],\r\n\ - \ \"inboundNatPools\": []\r\n },\r\n \"sku\": {\r\n \"name\": \"Basic\"\ - ,\r\n \"tier\": \"Regional\"\r\n }\r\n}"} + : false,\r\n \"enableTcpReset\": false\r\n }\r\n }\r\n\ + \ ],\r\n \"outboundRules\": [],\r\n \"inboundNatPools\": []\r\n \ + \ },\r\n \"sku\": {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\ + \r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f8545e70-6ed0-4808-8649-7389054c46f7?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7240a848-b54a-452f-8919-16eb85b65bf0?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['7422'] + content-length: ['7945'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:44:29 GMT'] + date: ['Tue, 11 Sep 2018 17:26:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -207,17 +214,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f8545e70-6ed0-4808-8649-7389054c46f7?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7240a848-b54a-452f-8919-16eb85b65bf0?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:44:59 GMT'] + date: ['Tue, 11 Sep 2018 17:27:07 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -232,19 +239,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"bbacd7d1-48e8-4a20-9bd0-e4cfee9daca8\",\r\n \"\ + \ \"resourceGuid\": \"1e5801cb-a086-4894-8e2c-34f886392887\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ @@ -256,57 +264,63 @@ interactions: \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ \ \"backendAddressPools\": [\r\n {\r\n \"name\": \"pyapname239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ - \ \"loadBalancingRules\": [\r\n {\r\n \"name\": \"azure-sample-lb-rule\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ + \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + : false,\r\n \"enableTcpReset\": false,\r\n \"loadDistribution\"\ + : \"Default\",\r\n \"backendAddressPool\": {\r\n \"id\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ - \ \"inboundNatRules\": [\r\n {\r\n \"name\": \"azure-sample-netrule1\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ + \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + : false,\r\n \"enableTcpReset\": false\r\n }\r\n },\r\ + \n {\r\n \"name\": \"azure-sample-netrule2\",\r\n \"id\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false\r\n }\r\n }\r\n ],\r\n \"outboundRules\": [],\r\n\ - \ \"inboundNatPools\": []\r\n },\r\n \"sku\": {\r\n \"name\": \"Basic\"\ - ,\r\n \"tier\": \"Regional\"\r\n }\r\n}"} + : false,\r\n \"enableTcpReset\": false\r\n }\r\n }\r\n\ + \ ],\r\n \"outboundRules\": [],\r\n \"inboundNatPools\": []\r\n \ + \ },\r\n \"sku\": {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\ + \r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['7422'] + content-length: ['7945'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:00 GMT'] - etag: [W/"31e29cd3-a0c6-47a7-9a6a-348b4c654b82"] + date: ['Tue, 11 Sep 2018 17:27:08 GMT'] + etag: [W/"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -321,21 +335,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"bbacd7d1-48e8-4a20-9bd0-e4cfee9daca8\",\r\n \"\ + \ \"resourceGuid\": \"1e5801cb-a086-4894-8e2c-34f886392887\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ @@ -347,57 +361,63 @@ interactions: \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ \ \"backendAddressPools\": [\r\n {\r\n \"name\": \"pyapname239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ - \ \"loadBalancingRules\": [\r\n {\r\n \"name\": \"azure-sample-lb-rule\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ + \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + : false,\r\n \"enableTcpReset\": false,\r\n \"loadDistribution\"\ + : \"Default\",\r\n \"backendAddressPool\": {\r\n \"id\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\n ],\r\n \ - \ \"inboundNatRules\": [\r\n {\r\n \"name\": \"azure-sample-netrule1\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ + \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\"\ + : false,\r\n \"enableTcpReset\": false\r\n }\r\n },\r\ + \n {\r\n \"name\": \"azure-sample-netrule2\",\r\n \"id\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ - : false\r\n }\r\n }\r\n ],\r\n \"outboundRules\": [],\r\n\ - \ \"inboundNatPools\": []\r\n },\r\n \"sku\": {\r\n \"name\": \"Basic\"\ - ,\r\n \"tier\": \"Regional\"\r\n }\r\n}"} + : false,\r\n \"enableTcpReset\": false\r\n }\r\n }\r\n\ + \ ],\r\n \"outboundRules\": [],\r\n \"inboundNatPools\": []\r\n \ + \ },\r\n \"sku\": {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\ + \r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['7422'] + content-length: ['7945'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:01 GMT'] - etag: [W/"31e29cd3-a0c6-47a7-9a6a-348b4c654b82"] + date: ['Tue, 11 Sep 2018 17:27:08 GMT'] + etag: [W/"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -412,23 +432,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/loadBalancers?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/loadBalancers?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pylbname239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\",\r\ \n \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"bbacd7d1-48e8-4a20-9bd0-e4cfee9daca8\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"1e5801cb-a086-4894-8e2c-34f886392887\"\ ,\r\n \"frontendIPConfigurations\": [\r\n {\r\n \ \ \"name\": \"pyfipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ + \",\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"privateIPAllocationMethod\": \"Dynamic\"\ ,\r\n \"publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n \ @@ -440,65 +460,73 @@ interactions: \r\n }\r\n ]\r\n }\r\n }\r\ \n ],\r\n \"backendAddressPools\": [\r\n {\r\n \ \ \"name\": \"pyapname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"loadBalancingRules\": [\r\n \ \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\ - \n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + \r\n }\r\n ]\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\r\n \ + \ }\r\n ],\r\n \"loadBalancingRules\": [\r\n \ + \ {\r\n \"name\": \"azure-sample-lb-rule\",\r\n \"\ + id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ + \",\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \ \ \"backendPort\": 80,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ - \n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \n \"enableTcpReset\": false,\r\n \"loadDistribution\"\ + : \"Default\",\r\n \"backendAddressPool\": {\r\n \ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ \r\n },\r\n \"probe\": {\r\n \"id\"\ : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \ \ \"probes\": [\r\n {\r\n \"name\": \"pyprobename239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"protocol\": \"Http\",\r\n \ \ \"port\": 80,\r\n \"requestPath\": \"healthprobe.aspx\",\r\ \n \"intervalInSeconds\": 15,\r\n \"numberOfProbes\"\ : 4,\r\n \"loadBalancingRules\": [\r\n {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\ - \n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + \r\n }\r\n ]\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/loadBalancers/probes\"\r\n }\r\n\ + \ ],\r\n \"inboundNatRules\": [\r\n {\r\n \ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ + \",\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \ \ \"backendPort\": 22,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ - : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false\r\n\ - \ }\r\n },\r\n {\r\n \"name\": \"\ - azure-sample-netrule2\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ + \n \"enableTcpReset\": false\r\n }\r\n },\r\ + \n {\r\n \"name\": \"azure-sample-netrule2\",\r\n \ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ + \",\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \ \ \"backendPort\": 22,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ - : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false\r\n\ - \ }\r\n }\r\n ],\r\n \"outboundRules\":\ - \ [],\r\n \"inboundNatPools\": []\r\n },\r\n \"sku\": {\r\ - \n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n \ - \ }\r\n }\r\n ]\r\n}"} + : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ + \n \"enableTcpReset\": false\r\n }\r\n }\r\ + \n ],\r\n \"outboundRules\": [],\r\n \"inboundNatPools\"\ + : []\r\n },\r\n \"sku\": {\r\n \"name\": \"Basic\",\r\n \ + \ \"tier\": \"Regional\"\r\n }\r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['8011'] + content-length: ['8570'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:02 GMT'] + date: ['Tue, 11 Sep 2018 17:27:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -513,23 +541,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pylbname239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\",\r\ \n \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"bbacd7d1-48e8-4a20-9bd0-e4cfee9daca8\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"1e5801cb-a086-4894-8e2c-34f886392887\"\ ,\r\n \"frontendIPConfigurations\": [\r\n {\r\n \ \ \"name\": \"pyfipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ + \",\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"privateIPAllocationMethod\": \"Dynamic\"\ ,\r\n \"publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n \ @@ -541,65 +569,73 @@ interactions: \r\n }\r\n ]\r\n }\r\n }\r\ \n ],\r\n \"backendAddressPools\": [\r\n {\r\n \ \ \"name\": \"pyapname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"loadBalancingRules\": [\r\n \ \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\ - \n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + \r\n }\r\n ]\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\r\n \ + \ }\r\n ],\r\n \"loadBalancingRules\": [\r\n \ + \ {\r\n \"name\": \"azure-sample-lb-rule\",\r\n \"\ + id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ + \",\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \ \ \"backendPort\": 80,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ - \n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \n \"enableTcpReset\": false,\r\n \"loadDistribution\"\ + : \"Default\",\r\n \"backendAddressPool\": {\r\n \ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ \r\n },\r\n \"probe\": {\r\n \"id\"\ : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \ \ \"probes\": [\r\n {\r\n \"name\": \"pyprobename239e0f35\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"protocol\": \"Http\",\r\n \ \ \"port\": 80,\r\n \"requestPath\": \"healthprobe.aspx\",\r\ \n \"intervalInSeconds\": 15,\r\n \"numberOfProbes\"\ : 4,\r\n \"loadBalancingRules\": [\r\n {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - \r\n }\r\n ]\r\n }\r\n }\r\ - \n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + \r\n }\r\n ]\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/loadBalancers/probes\"\r\n }\r\n\ + \ ],\r\n \"inboundNatRules\": [\r\n {\r\n \ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ + \",\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \ \ \"backendPort\": 22,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ - : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false\r\n\ - \ }\r\n },\r\n {\r\n \"name\": \"\ - azure-sample-netrule2\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"31e29cd3-a0c6-47a7-9a6a-348b4c654b82\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ + \n \"enableTcpReset\": false\r\n }\r\n },\r\ + \n {\r\n \"name\": \"azure-sample-netrule2\",\r\n \ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"9c9a91ab-bc64-4b93-abfb-e59bb0c74fff\\\"\ + \",\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \ \ \"backendPort\": 22,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ - : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false\r\n\ - \ }\r\n }\r\n ],\r\n \"outboundRules\":\ - \ [],\r\n \"inboundNatPools\": []\r\n },\r\n \"sku\": {\r\ - \n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n \ - \ }\r\n }\r\n ]\r\n}"} + : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ + \n \"enableTcpReset\": false\r\n }\r\n }\r\ + \n ],\r\n \"outboundRules\": [],\r\n \"inboundNatPools\"\ + : []\r\n },\r\n \"sku\": {\r\n \"name\": \"Basic\",\r\n \ + \ \"tier\": \"Regional\"\r\n }\r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['8011'] + content-length: ['8570'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:02 GMT'] + date: ['Tue, 11 Sep 2018 17:27:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -615,26 +651,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/724703a1-2c35-4222-9074-b900a2335ec3?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dbc507ba-5104-4dfe-a203-051856c55974?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 22:45:04 GMT'] + date: ['Tue, 11 Sep 2018 17:27:10 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/724703a1-2c35-4222-9074-b900a2335ec3?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/dbc507ba-5104-4dfe-a203-051856c55974?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + x-ms-ratelimit-remaining-subscription-deletes: ['14997'] status: {code: 202, message: Accepted} - request: body: null @@ -642,17 +677,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/724703a1-2c35-4222-9074-b900a2335ec3?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dbc507ba-5104-4dfe-a203-051856c55974?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:15 GMT'] + date: ['Tue, 11 Sep 2018 17:27:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml index 9192f04a3280..d367901db14c 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml @@ -8,27 +8,27 @@ interactions: Connection: [keep-alive] Content-Length: ['92'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ - ,\r\n \"etag\": \"W/\\\"92ac17a7-8d17-4971-a4f6-06be5f4e87a8\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"4da99de8-e729-442e-8c06-48432b8cff76\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"4e07bcc2-ae93-4a75-a6eb-c6ea88bd08de\",\r\n \"\ + \ \"resourceGuid\": \"39077ec9-1d7a-41f8-840c-cca938ab517e\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\"\ : [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ : false\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e32d8a74-3a8c-44ee-90c3-9f722604526c?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/122c0073-c644-4bd9-8287-d8edf09eac68?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['693'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:22 GMT'] + date: ['Tue, 11 Sep 2018 17:27:27 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -42,17 +42,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e32d8a74-3a8c-44ee-90c3-9f722604526c?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/122c0073-c644-4bd9-8287-d8edf09eac68?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:26 GMT'] + date: ['Tue, 11 Sep 2018 17:27:30 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -67,17 +67,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e32d8a74-3a8c-44ee-90c3-9f722604526c?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/122c0073-c644-4bd9-8287-d8edf09eac68?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:38 GMT'] + date: ['Tue, 11 Sep 2018 17:27:41 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -92,16 +92,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ - ,\r\n \"etag\": \"W/\\\"7ce83db1-5771-4b9d-a33c-cc1bc7253d60\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"13ab479e-46a9-4854-80be-c7601a3b10d9\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"4e07bcc2-ae93-4a75-a6eb-c6ea88bd08de\",\r\n \"\ + \ \"resourceGuid\": \"39077ec9-1d7a-41f8-840c-cca938ab517e\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\"\ : [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ @@ -110,8 +110,8 @@ interactions: cache-control: [no-cache] content-length: ['694'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:39 GMT'] - etag: [W/"7ce83db1-5771-4b9d-a33c-cc1bc7253d60"] + date: ['Tue, 11 Sep 2018 17:27:42 GMT'] + etag: [W/"13ab479e-46a9-4854-80be-c7601a3b10d9"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -128,28 +128,29 @@ interactions: Connection: [keep-alive] Content-Length: ['48'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ - ,\r\n \"etag\": \"W/\\\"51cb272a-9ac6-4275-88c0-51d2871f9a06\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"d21fe7f1-48be-4ede-be6c-04108f870322\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": []\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f3c3eaff-1740-45e5-b150-07fd445cfcbf?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/0503eefb-111c-4264-aff6-fb811a9d36d5?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['431'] + content-length: ['487'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:41 GMT'] + date: ['Tue, 11 Sep 2018 17:27:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -157,17 +158,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f3c3eaff-1740-45e5-b150-07fd445cfcbf?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/0503eefb-111c-4264-aff6-fb811a9d36d5?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:45 GMT'] + date: ['Tue, 11 Sep 2018 17:27:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -182,21 +183,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ - ,\r\n \"etag\": \"W/\\\"9231571f-9bc5-42cb-8d3e-29ec26efe9e7\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"6ab69d74-ffaf-4012-9974-6e708d7787a0\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": []\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['432'] + content-length: ['488'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:45 GMT'] - etag: [W/"9231571f-9bc5-42cb-8d3e-29ec26efe9e7"] + date: ['Tue, 11 Sep 2018 17:27:47 GMT'] + etag: [W/"6ab69d74-ffaf-4012-9974-6e708d7787a0"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -215,19 +217,20 @@ interactions: Connection: [keep-alive] Content-Length: ['326'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ - ,\r\n \"etag\": \"W/\\\"2c8a7312-079e-43af-8f06-6029cadd2e0a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"905824d5-6e6d-4183-8a59-211f95c53ec6\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"7721c185-8f21-4d46-9929-6968baaa5915\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"1cab88d3-cfe4-4018-adb0-5e3ec5ea0ba3\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ - ,\r\n \"etag\": \"W/\\\"2c8a7312-079e-43af-8f06-6029cadd2e0a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"905824d5-6e6d-4183-8a59-211f95c53ec6\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ @@ -235,23 +238,22 @@ interactions: : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - yk4aotutvz0uvjxly1virpii1g.dx.internal.cloudapp.net\"\r\n },\r\n \"\ + zf5aool0dx2edbamzsutrk0rpg.dx.internal.cloudapp.net\"\r\n },\r\n \"\ enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"services\": null,\r\n \"virtualNetworkTapProvisioningState\": \"\ - NotProvisioned\"\r\n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\ - \r\n}"} + \n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/bf454c66-f41f-48a5-b056-4e3eaa8807c9?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dc6a1363-575f-4921-a7bb-a3c2a0e1105d?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1742'] + content-length: ['1789'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:45:47 GMT'] + date: ['Tue, 11 Sep 2018 17:27:48 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -259,17 +261,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/bf454c66-f41f-48a5-b056-4e3eaa8807c9?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dc6a1363-575f-4921-a7bb-a3c2a0e1105d?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:19 GMT'] + date: ['Tue, 11 Sep 2018 17:28:20 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -284,18 +286,19 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ - ,\r\n \"etag\": \"W/\\\"2c8a7312-079e-43af-8f06-6029cadd2e0a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"905824d5-6e6d-4183-8a59-211f95c53ec6\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"7721c185-8f21-4d46-9929-6968baaa5915\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"1cab88d3-cfe4-4018-adb0-5e3ec5ea0ba3\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ - ,\r\n \"etag\": \"W/\\\"2c8a7312-079e-43af-8f06-6029cadd2e0a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"905824d5-6e6d-4183-8a59-211f95c53ec6\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ @@ -303,17 +306,16 @@ interactions: : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - yk4aotutvz0uvjxly1virpii1g.dx.internal.cloudapp.net\"\r\n },\r\n \"\ + zf5aool0dx2edbamzsutrk0rpg.dx.internal.cloudapp.net\"\r\n },\r\n \"\ enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"services\": null,\r\n \"virtualNetworkTapProvisioningState\": \"\ - NotProvisioned\"\r\n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\ - \r\n}"} + \n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['1742'] + content-length: ['1789'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:20 GMT'] - etag: [W/"2c8a7312-079e-43af-8f06-6029cadd2e0a"] + date: ['Tue, 11 Sep 2018 17:28:19 GMT'] + etag: [W/"905824d5-6e6d-4183-8a59-211f95c53ec6"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -328,20 +330,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ - ,\r\n \"etag\": \"W/\\\"2c8a7312-079e-43af-8f06-6029cadd2e0a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"905824d5-6e6d-4183-8a59-211f95c53ec6\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"7721c185-8f21-4d46-9929-6968baaa5915\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"1cab88d3-cfe4-4018-adb0-5e3ec5ea0ba3\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ - ,\r\n \"etag\": \"W/\\\"2c8a7312-079e-43af-8f06-6029cadd2e0a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"905824d5-6e6d-4183-8a59-211f95c53ec6\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ @@ -349,17 +351,16 @@ interactions: : \"IPv4\",\r\n \"isInUseWithService\": false\r\n }\r\n \ \ }\r\n ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\n\ \ \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\": \"\ - yk4aotutvz0uvjxly1virpii1g.dx.internal.cloudapp.net\"\r\n },\r\n \"\ + zf5aool0dx2edbamzsutrk0rpg.dx.internal.cloudapp.net\"\r\n },\r\n \"\ enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\": false,\r\ - \n \"services\": null,\r\n \"virtualNetworkTapProvisioningState\": \"\ - NotProvisioned\"\r\n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\ - \r\n}"} + \n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['1742'] + content-length: ['1789'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:21 GMT'] - etag: [W/"2c8a7312-079e-43af-8f06-6029cadd2e0a"] + date: ['Tue, 11 Sep 2018 17:28:20 GMT'] + etag: [W/"905824d5-6e6d-4183-8a59-211f95c53ec6"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -374,22 +375,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pynicb046129e\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ - ,\r\n \"etag\": \"W/\\\"2c8a7312-079e-43af-8f06-6029cadd2e0a\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"905824d5-6e6d-4183-8a59-211f95c53ec6\\\"\",\r\ \n \"location\": \"westus\",\r\n \"properties\": {\r\n \"\ - provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": \"7721c185-8f21-4d46-9929-6968baaa5915\"\ + provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": \"1cab88d3-cfe4-4018-adb0-5e3ec5ea0ba3\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\"\ : \"MyIpConfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ - ,\r\n \"etag\": \"W/\\\"2c8a7312-079e-43af-8f06-6029cadd2e0a\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"905824d5-6e6d-4183-8a59-211f95c53ec6\\\"\ + \",\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n\ \ \"privateIPAllocationMethod\": \"Dynamic\",\r\n \ \ \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ @@ -397,17 +398,16 @@ interactions: \ \"privateIPAddressVersion\": \"IPv4\",\r\n \"isInUseWithService\"\ : false\r\n }\r\n }\r\n ],\r\n \"dnsSettings\"\ : {\r\n \"dnsServers\": [],\r\n \"appliedDnsServers\": [],\r\ - \n \"internalDomainNameSuffix\": \"yk4aotutvz0uvjxly1virpii1g.dx.internal.cloudapp.net\"\ + \n \"internalDomainNameSuffix\": \"zf5aool0dx2edbamzsutrk0rpg.dx.internal.cloudapp.net\"\ \r\n },\r\n \"enableAcceleratedNetworking\": false,\r\n \ - \ \"enableIPForwarding\": false,\r\n \"services\": null,\r\n \ - \ \"virtualNetworkTapProvisioningState\": \"NotProvisioned\"\r\n \ - \ },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n }\r\ - \n ]\r\n}"} + \ \"enableIPForwarding\": false,\r\n \"hostedWorkloads\": [],\r\n\ + \ \"tapConfigurations\": []\r\n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\ + \r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['1919'] + content-length: ['1970'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:22 GMT'] + date: ['Tue, 11 Sep 2018 17:28:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -422,26 +422,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkInterfaces?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkInterfaces?api-version=2018-08-01 response: - body: {string: '{"value":[{"name":"pynicb046129e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e","etag":"W/\"2c8a7312-079e-43af-8f06-6029cadd2e0a\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"7721c185-8f21-4d46-9929-6968baaa5915","ipConfigurations":[{"name":"MyIpConfig","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig","etag":"W/\"2c8a7312-079e-43af-8f06-6029cadd2e0a\"","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"yk4aotutvz0uvjxly1virpii1g.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"services":null,"virtualNetworkTapProvisioningState":"NotProvisioned"},"type":"Microsoft.Network/networkInterfaces"},{"name":"windowsvm624","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkInterfaces/windowsvm624","etag":"W/\"22e7299a-d679-4808-ad55-fc1a857a75ed\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"9b8d305c-80b3-4b95-a98d-137d99951ad4","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkInterfaces/windowsvm624/ipConfigurations/ipconfig1","etag":"W/\"22e7299a-d679-4808-ad55-fc1a857a75ed\"","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.1.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/publicIPAddresses/windowsvm-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/virtualNetworks/wilxgroup1-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"enableAcceleratedNetworking":true,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg"},"services":null,"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Compute/virtualMachines/windowsvm"},"virtualNetworkTapProvisioningState":"NotProvisioned"},"type":"Microsoft.Network/networkInterfaces"},{"name":"amareh2451","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh2451","etag":"W/\"c6de21dc-0c04-4f23-89a0-989c2dfd9091\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"cc947cd3-1806-4e0d-895b-33634842dad1","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh2451/ipConfigurations/ipconfig1","etag":"W/\"c6de21dc-0c04-4f23-89a0-989c2dfd9091\"","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.16.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/amareh2-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/amar-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-4D-EC-1B","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg"},"services":null,"virtualNetworkTapProvisioningState":"NotProvisioned"},"type":"Microsoft.Network/networkInterfaces"},{"name":"amareh3187","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh3187","etag":"W/\"a3d11fcd-2345-4a49-acfd-e751d94b6a2f\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"17b2695e-c987-466b-8be9-1a1ef092f88b","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh3187/ipConfigurations/ipconfig1","etag":"W/\"a3d11fcd-2345-4a49-acfd-e751d94b6a2f\"","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.16.6","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/amareh3-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/amar-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-18-0B-96","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg"},"services":null,"virtualNetworkTapProvisioningState":"NotProvisioned"},"type":"Microsoft.Network/networkInterfaces"},{"name":"amareh453","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh453","etag":"W/\"d9b548ca-5182-4cdf-871e-c6b1dc1b441f\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"dc4d1ab8-bc2e-405a-89a1-be9b40d3dc15","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh453/ipConfigurations/ipconfig1","etag":"W/\"d9b548ca-5182-4cdf-871e-c6b1dc1b441f\"","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/amareh4-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/amar-vnet2/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-17-8F-35","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg"},"services":null,"virtualNetworkTapProvisioningState":"NotProvisioned"},"type":"Microsoft.Network/networkInterfaces"},{"name":"amareh554","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh554","etag":"W/\"10cff3f7-f98d-4511-8432-9f32cdb178e4\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"f2b4d457-ff30-47f8-90a4-569aed23308d","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh554/ipConfigurations/ipconfig1","etag":"W/\"10cff3f7-f98d-4511-8432-9f32cdb178e4\"","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.16.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/amareh-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/amar-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-4D-F9-07","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg"},"services":null,"virtualNetworkTapProvisioningState":"NotProvisioned"},"type":"Microsoft.Network/networkInterfaces"},{"name":"lmazuel-testcapture427","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427","etag":"W/\"53003083-c398-46fa-a616-3df40521ce00\"","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"15eb6eb5-bd81-4e32-b1fd-9fc9e4b1faea","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427/ipConfigurations/ipconfig1","etag":"W/\"53003083-c398-46fa-a616-3df40521ce00\"","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.1.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/publicIPAddresses/lmazuel-testcapture-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/virtualNetworks/lmazuel-testcapture-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg"},"services":null,"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Compute/virtualMachines/lmazuel-testcapture"},"virtualNetworkTapProvisioningState":"NotProvisioned"},"type":"Microsoft.Network/networkInterfaces"}]}'} + body: {string: '{"value":[{"name":"TestVM2VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVM2VMNic","etag":"W/\"843863dd-0b9c-44b4-a5fa-5ad5ab8d2511\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f6aa49d8-7592-4638-a869-02684b983487","ipConfigurations":[{"name":"ipconfigTestVM2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVM2VMNic/ipConfigurations/ipconfigTestVM2","etag":"W/\"843863dd-0b9c-44b4-a5fa-5ad5ab8d2511\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/publicIPAddresses/TestVM2PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/virtualNetworks/TestVMVNET/subnets/TestVMSubnet"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"dcwi5f314qeefi1bbv2apblesa.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-3B-53-D9","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Compute/virtualMachines/TestVM2"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"TestVMVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVMVMNic","etag":"W/\"d8299bdd-91c5-4e59-b4e3-8b3af7b0f40d\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"bf806790-4555-437d-aafe-e9c96cf257ef","ipConfigurations":[{"name":"ipconfigTestVM","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVMVMNic/ipConfigurations/ipconfigTestVM","etag":"W/\"d8299bdd-91c5-4e59-b4e3-8b3af7b0f40d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/publicIPAddresses/TestVMPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/virtualNetworks/TestVMVNET/subnets/TestVMSubnet"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"dcwi5f314qeefi1bbv2apblesa.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-38-1F-D2","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Compute/virtualMachines/TestVM"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"pynicb046129e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e","etag":"W/\"905824d5-6e6d-4183-8a59-211f95c53ec6\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"1cab88d3-cfe4-4018-adb0-5e3ec5ea0ba3","ipConfigurations":[{"name":"MyIpConfig","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig","etag":"W/\"905824d5-6e6d-4183-8a59-211f95c53ec6\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"zf5aool0dx2edbamzsutrk0rpg.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"wilxvm1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkInterfaces/wilxvm1VMNic","etag":"W/\"0882f58e-630a-4a0b-bb78-c88b274de0ad\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5f70d3bb-243a-4fe2-b4fd-52ec0664ec58","ipConfigurations":[{"name":"ipconfigwilxvm1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkInterfaces/wilxvm1VMNic/ipConfigurations/ipconfigwilxvm1","etag":"W/\"0882f58e-630a-4a0b-bb78-c88b274de0ad\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/publicIPAddresses/wilxvm1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/virtualNetworks/wilxvm1VNET/subnets/wilxvm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"shwdf3n5115unhji4lqxpktoch.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-58-F1-B1","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Compute/virtualMachines/wilxvm1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"abunt4752","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abunt4752","etag":"W/\"adc7d560-e622-4f50-bf5f-a029a437c5ae\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"0ff8654c-3074-4f9f-b325-6385441c38c5","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abunt4752/ipConfigurations/ipconfig1","etag":"W/\"adc7d560-e622-4f50-bf5f-a029a437c5ae\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abunt4-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu3/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-4E-B9-BB","enableAcceleratedNetworking":true,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"abuntu1428","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu1428","etag":"W/\"6d827f43-0bf1-4fd1-aa11-653c6f3be097\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"716a38a6-ceb8-4ad7-9b1f-5438434af985","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu1428/ipConfigurations/ipconfig1","etag":"W/\"6d827f43-0bf1-4fd1-aa11-653c6f3be097\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu1-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abunt3/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"pvqtqejfdjjefccgdjzlqgveva.bx.internal.cloudapp.net"},"macAddress":"00-0D-3A-4F-53-66","enableAcceleratedNetworking":true,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Compute/virtualMachines/abuntu1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"abuntu259","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu259","etag":"W/\"8fe0ef11-e58c-44d6-ae9d-e2e7502bc2e7\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"6cadbeb0-01dd-41f4-ac68-74fe9deac6e8","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu259/ipConfigurations/ipconfig1","etag":"W/\"8fe0ef11-e58c-44d6-ae9d-e2e7502bc2e7\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.3.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-4E-C4-69","enableAcceleratedNetworking":true,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"abuntu2743","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2743","etag":"W/\"07c003cc-a698-4f00-b767-aafdd1cda0f3\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"89420481-6943-4502-888b-62bc46f0bef0","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2743/ipConfigurations/ipconfig1","etag":"W/\"07c003cc-a698-4f00-b767-aafdd1cda0f3\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.0.6","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu2ip781"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abunt3/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"pvqtqejfdjjefccgdjzlqgveva.bx.internal.cloudapp.net"},"macAddress":"00-0D-3A-4D-4D-0F","enableAcceleratedNetworking":true,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Compute/virtualMachines/abuntu2"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"abuntu2817","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2817","etag":"W/\"ad924d5b-9898-4390-91d1-b35fe7c3af94\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"6b98f584-1069-4334-b011-2620bb9f13c2","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2817/ipConfigurations/ipconfig1","etag":"W/\"ad924d5b-9898-4390-91d1-b35fe7c3af94\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.5.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu2-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu2/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-1A-A4-AD","enableAcceleratedNetworking":true,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"abuntu3634","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu3634","etag":"W/\"b170cb6b-8763-43b8-bf28-00176f932e44\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"1090ceba-180d-4324-a022-15875d542b2f","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu3634/ipConfigurations/ipconfig1","etag":"W/\"b170cb6b-8763-43b8-bf28-00176f932e44\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu3-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abunt3/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-4D-D6-33","enableAcceleratedNetworking":true,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"TestVMVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkInterfaces/TestVMVMNic","etag":"W/\"e1968bfe-36a6-49a3-a9d5-2bbc96b709c7\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"354e15f4-9648-4de8-add3-0a0719378992","ipConfigurations":[{"name":"ipconfigTestVM","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkInterfaces/TestVMVMNic/ipConfigurations/ipconfigTestVM","etag":"W/\"e1968bfe-36a6-49a3-a9d5-2bbc96b709c7\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/publicIPAddresses/TestVMPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/virtualNetworks/TestVMVNET/subnets/TestVMSubnet"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"2lgisbtujqhupknrag4liacwub.cx.internal.cloudapp.net"},"macAddress":"00-0D-3A-01-87-D7","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Compute/virtualMachines/TestVM"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"lmazuel-testcapture427","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427","etag":"W/\"53003083-c398-46fa-a616-3df40521ce00\"","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"15eb6eb5-bd81-4e32-b1fd-9fc9e4b1faea","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427/ipConfigurations/ipconfig1","etag":"W/\"53003083-c398-46fa-a616-3df40521ce00\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.1.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/publicIPAddresses/lmazuel-testcapture-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/virtualNetworks/lmazuel-testcapture-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4","isInUseWithService":false}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Compute/virtualMachines/lmazuel-testcapture"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"}]}'} headers: cache-control: [no-cache] - content-length: ['11082'] + content-length: ['20693'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:23 GMT'] + date: ['Tue, 11 Sep 2018 17:28:21 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-original-request-ids: [726f3d3d-6662-419c-9c08-8d56b501e72a, 68195720-ed07-49a5-964e-fa05b5e26a8a, - 12267eb1-d132-40f9-a4f2-541840e506aa] + x-ms-original-request-ids: [d51f69aa-47f1-41ef-847d-c204af18bf29, cbe085f4-683b-4c14-beeb-0bc1c43a0c24, + 42d803a8-567a-4790-993b-711071efb3d4, 8eb58fb0-22ef-4626-9907-b84d6a889580] status: {code: 200, message: OK} - request: body: null @@ -450,26 +449,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a12d6e29-1e53-4ed8-9364-cd251befe1b1?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d0eba4e0-5f23-4aee-9237-53f37cb11309?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 22:46:25 GMT'] + date: ['Tue, 11 Sep 2018 17:28:22 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/a12d6e29-1e53-4ed8-9364-cd251befe1b1?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/d0eba4e0-5f23-4aee-9237-53f37cb11309?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + x-ms-ratelimit-remaining-subscription-deletes: ['14996'] status: {code: 202, message: Accepted} - request: body: null @@ -477,17 +475,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a12d6e29-1e53-4ed8-9364-cd251befe1b1?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d0eba4e0-5f23-4aee-9237-53f37cb11309?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:36 GMT'] + date: ['Tue, 11 Sep 2018 17:28:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml index 825a98c69a4e..880f244f4661 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml @@ -10,20 +10,21 @@ interactions: Connection: [keep-alive] Content-Length: ['348'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ - ,\r\n \"etag\": \"W/\\\"1f08e085-dfb0-4e2e-a75f-a0a91dd7c17a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"f58f7955-135e-43a3-acda-092495bc88ad\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"resourceGuid\": \"6cf7eb01-67ca-4291-a158-e71f15e2513d\",\r\n \ + ,\r\n \"resourceGuid\": \"91f30cf8-1143-4469-bf12-33d7870cb432\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"1f08e085-dfb0-4e2e-a75f-a0a91dd7c17a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"f58f7955-135e-43a3-acda-092495bc88ad\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Test security rule\",\r\n \"protocol\"\ : \"Tcp\",\r\n \"sourcePortRange\": \"655\",\r\n \"destinationPortRange\"\ @@ -35,7 +36,8 @@ interactions: : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ - ,\r\n \"etag\": \"W/\\\"1f08e085-dfb0-4e2e-a75f-a0a91dd7c17a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"f58f7955-135e-43a3-acda-092495bc88ad\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Allow inbound traffic from all VMs in VNET\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -47,7 +49,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ - ,\r\n \"etag\": \"W/\\\"1f08e085-dfb0-4e2e-a75f-a0a91dd7c17a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"f58f7955-135e-43a3-acda-092495bc88ad\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Allow inbound traffic from azure load balancer\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -59,7 +62,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ - ,\r\n \"etag\": \"W/\\\"1f08e085-dfb0-4e2e-a75f-a0a91dd7c17a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"f58f7955-135e-43a3-acda-092495bc88ad\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Deny all inbound traffic\",\r\n \ \ \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\",\r\n \ @@ -70,7 +74,8 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"1f08e085-dfb0-4e2e-a75f-a0a91dd7c17a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"f58f7955-135e-43a3-acda-092495bc88ad\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to all\ \ VMs in VNET\",\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\"\ @@ -82,7 +87,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"1f08e085-dfb0-4e2e-a75f-a0a91dd7c17a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"f58f7955-135e-43a3-acda-092495bc88ad\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to Internet\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -94,7 +100,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ - ,\r\n \"etag\": \"W/\\\"1f08e085-dfb0-4e2e-a75f-a0a91dd7c17a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"f58f7955-135e-43a3-acda-092495bc88ad\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Deny all outbound traffic\",\r\n \ \ \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\",\r\n \ @@ -105,11 +112,11 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ]\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d3d237e6-cd4e-4434-8ff5-a326f4a389ed?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e96c7320-86e6-4b58-a7c8-3c2b11e787f6?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['7357'] + content-length: ['7917'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:41 GMT'] + date: ['Tue, 11 Sep 2018 17:28:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -123,17 +130,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d3d237e6-cd4e-4434-8ff5-a326f4a389ed?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e96c7320-86e6-4b58-a7c8-3c2b11e787f6?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:52 GMT'] + date: ['Tue, 11 Sep 2018 17:28:49 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -148,19 +155,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"resourceGuid\": \"6cf7eb01-67ca-4291-a158-e71f15e2513d\",\r\n \ + ,\r\n \"resourceGuid\": \"91f30cf8-1143-4469-bf12-33d7870cb432\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Test security rule\",\r\n \"protocol\"\ : \"Tcp\",\r\n \"sourcePortRange\": \"655\",\r\n \"destinationPortRange\"\ @@ -172,7 +180,8 @@ interactions: : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow inbound traffic from all VMs in VNET\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -184,7 +193,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow inbound traffic from azure load balancer\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -196,7 +206,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Deny all inbound traffic\",\r\n \ \ \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\",\r\n \ @@ -207,7 +218,8 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to all\ \ VMs in VNET\",\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\"\ @@ -219,7 +231,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to Internet\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -231,7 +244,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Deny all outbound traffic\",\r\n \ \ \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\",\r\n \ @@ -243,10 +257,10 @@ interactions: : []\r\n }\r\n }\r\n ]\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['7365'] + content-length: ['7925'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:53 GMT'] - etag: [W/"842a1e80-7a3f-421b-98c8-95e6470465c3"] + date: ['Tue, 11 Sep 2018 17:28:50 GMT'] + etag: [W/"aa0fe286-bc49-4952-9e1f-02314ec233f9"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -261,21 +275,21 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"resourceGuid\": \"6cf7eb01-67ca-4291-a158-e71f15e2513d\",\r\n \ + ,\r\n \"resourceGuid\": \"91f30cf8-1143-4469-bf12-33d7870cb432\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Test security rule\",\r\n \"protocol\"\ : \"Tcp\",\r\n \"sourcePortRange\": \"655\",\r\n \"destinationPortRange\"\ @@ -287,7 +301,8 @@ interactions: : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow inbound traffic from all VMs in VNET\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -299,7 +314,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow inbound traffic from azure load balancer\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -311,7 +327,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Deny all inbound traffic\",\r\n \ \ \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\",\r\n \ @@ -322,7 +339,8 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to all\ \ VMs in VNET\",\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\"\ @@ -334,7 +352,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to Internet\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\"\ @@ -346,7 +365,8 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Deny all outbound traffic\",\r\n \ \ \"protocol\": \"*\",\r\n \"sourcePortRange\": \"*\",\r\n \ @@ -358,10 +378,10 @@ interactions: : []\r\n }\r\n }\r\n ]\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['7365'] + content-length: ['7925'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:55 GMT'] - etag: [W/"842a1e80-7a3f-421b-98c8-95e6470465c3"] + date: ['Tue, 11 Sep 2018 17:28:51 GMT'] + etag: [W/"aa0fe286-bc49-4952-9e1f-02314ec233f9"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -376,23 +396,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysecgroupc575136b\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\",\r\ \n \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"\ location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"6cf7eb01-67ca-4291-a158-e71f15e2513d\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"91f30cf8-1143-4469-bf12-33d7870cb432\"\ ,\r\n \"securityRules\": [\r\n {\r\n \"name\":\ \ \"pysecgrouprulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\ + \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Test security rule\"\ ,\r\n \"protocol\": \"Tcp\",\r\n \"sourcePortRange\"\ : \"655\",\r\n \"destinationPortRange\": \"123-3500\",\r\n \ @@ -404,8 +424,9 @@ interactions: : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\"\ : [\r\n {\r\n \"name\": \"AllowVnetInBound\",\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\ + \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Allow inbound traffic\ \ from all VMs in VNET\",\r\n \"protocol\": \"*\",\r\n \ \ \"sourcePortRange\": \"*\",\r\n \"destinationPortRange\"\ @@ -417,8 +438,9 @@ interactions: sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ : \"AllowAzureLoadBalancerInBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\ + \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Allow inbound traffic\ \ from azure load balancer\",\r\n \"protocol\": \"*\",\r\n \ \ \"sourcePortRange\": \"*\",\r\n \"destinationPortRange\"\ @@ -430,8 +452,9 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\ \n },\r\n {\r\n \"name\": \"DenyAllInBound\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\ + \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Deny all inbound traffic\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\"\ : \"*\",\r\n \"destinationPortRange\": \"*\",\r\n \ @@ -442,8 +465,9 @@ interactions: \ \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ : \"AllowVnetOutBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\ + \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Allow outbound traffic\ \ from all VMs to all VMs in VNET\",\r\n \"protocol\": \"*\"\ ,\r\n \"sourcePortRange\": \"*\",\r\n \"destinationPortRange\"\ @@ -455,8 +479,9 @@ interactions: sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ : \"AllowInternetOutBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\ + \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Allow outbound traffic\ \ from all VMs to Internet\",\r\n \"protocol\": \"*\",\r\n \ \ \"sourcePortRange\": \"*\",\r\n \"destinationPortRange\"\ @@ -468,8 +493,9 @@ interactions: : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\ \n },\r\n {\r\n \"name\": \"DenyAllOutBound\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ - ,\r\n \"etag\": \"W/\\\"842a1e80-7a3f-421b-98c8-95e6470465c3\\\"\ - \",\r\n \"properties\": {\r\n \"provisioningState\"\ + ,\r\n \"etag\": \"W/\\\"aa0fe286-bc49-4952-9e1f-02314ec233f9\\\"\ + \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Deny all outbound traffic\"\ ,\r\n \"protocol\": \"*\",\r\n \"sourcePortRange\"\ : \"*\",\r\n \"destinationPortRange\": \"*\",\r\n \ @@ -482,9 +508,9 @@ interactions: \ ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['8038'] + content-length: ['8626'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:55 GMT'] + date: ['Tue, 11 Sep 2018 17:28:51 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -499,75 +525,154 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkSecurityGroups?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkSecurityGroups?api-version=2018-08-01 response: - body: {string: '{"value":[{"name":"pysecgroupc575136b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b","etag":"W/\"842a1e80-7a3f-421b-98c8-95e6470465c3\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"6cf7eb01-67ca-4291-a158-e71f15e2513d","securityRules":[{"name":"pysecgrouprulec575136b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b","etag":"W/\"842a1e80-7a3f-421b-98c8-95e6470465c3\"","properties":{"provisioningState":"Succeeded","description":"Test - security rule","protocol":"Tcp","sourcePortRange":"655","destinationPortRange":"123-3500","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound","etag":"W/\"842a1e80-7a3f-421b-98c8-95e6470465c3\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"842a1e80-7a3f-421b-98c8-95e6470465c3\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound","etag":"W/\"842a1e80-7a3f-421b-98c8-95e6470465c3\"","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"842a1e80-7a3f-421b-98c8-95e6470465c3\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"842a1e80-7a3f-421b-98c8-95e6470465c3\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound","etag":"W/\"842a1e80-7a3f-421b-98c8-95e6470465c3\"","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"windowsvm-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"0432a4f2-4f77-4d29-9a83-286c4a44d2d7","securityRules":[{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/securityRules/HTTP","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/securityRules/HTTPS","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/securityRules/SSH","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"MS_SQL","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/securityRules/MS_SQL","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/securityRules/RDP","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":380,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkSecurityGroups/windowsvm-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3bef9b61-2fc0-41f8-98c6-d5e8239ea289\"","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkInterfaces/windowsvm624"}]}},{"name":"ygsrcnsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Failed","resourceGuid":"34793fa9-f38a-49a4-836f-d47c2ac2f5a8","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","properties":{"provisioningState":"Failed","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","properties":{"provisioningState":"Failed","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","properties":{"provisioningState":"Failed","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","properties":{"provisioningState":"Failed","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","properties":{"provisioningState":"Failed","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","properties":{"provisioningState":"Failed","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"amareh-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"0ba19b47-4178-426e-97a7-5f69a02532cd","securityRules":[{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/HTTP","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/HTTPS","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/SSH","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/RDP","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d2f40335-c8f2-4bca-8c30-b6041d56922c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-d2f40335-c8f2-4bca-8c30-b6041d56922c","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4a89cc84-cc94-412f-989d-b9ec03956fac","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-4a89cc84-cc94-412f-989d-b9ec03956fac","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-40ecaf0f-9547-41c1-bfc6-f56169a39904","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-40ecaf0f-9547-41c1-bfc6-f56169a39904","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2c7299e0-55b8-4ef2-ab7a-d27f4df21107","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-2c7299e0-55b8-4ef2-ab7a-d27f4df21107","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-dc920f0c-2368-4797-9081-ebedddda6087","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-dc920f0c-2368-4797-9081-ebedddda6087","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f84c56ae-ceed-4929-97b0-31ceb7bcf523","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-f84c56ae-ceed-4929-97b0-31ceb7bcf523","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c31188f5-038a-483c-b75c-cc4b1558849c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-c31188f5-038a-483c-b75c-cc4b1558849c","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-aadc81eb-7617-4692-b95a-b11076faba65","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-aadc81eb-7617-4692-b95a-b11076faba65","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-133b76db-7ae8-4f5a-867d-7c5118dea7bd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-133b76db-7ae8-4f5a-867d-7c5118dea7bd","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2d68488c-7d4d-46ef-aab6-89b0e6b5598d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-2d68488c-7d4d-46ef-aab6-89b0e6b5598d","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4d58aaaf-c562-4051-890a-8675cb115371","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-4d58aaaf-c562-4051-890a-8675cb115371","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9e07b43a-1cd2-45a7-b2ff-db9b602b41ce","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-9e07b43a-1cd2-45a7-b2ff-db9b602b41ce","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-45bb8189-aa48-470e-8b29-3e2f30dac311","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-45bb8189-aa48-470e-8b29-3e2f30dac311","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-b70191c2-9ae7-4342-8cd9-e6e521a7a508","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-b70191c2-9ae7-4342-8cd9-e6e521a7a508","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e0188589-abf9-41b0-a96b-21d124a0082b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-e0188589-abf9-41b0-a96b-21d124a0082b","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-8927a228-447c-48c0-93fb-7bac39a26cb6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-8927a228-447c-48c0-93fb-7bac39a26cb6","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5dff9bfb-3e95-4bd5-9b70-0a564e6c8bf8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-5dff9bfb-3e95-4bd5-9b70-0a564e6c8bf8","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-b921323c-be25-47b7-ab97-2dbda5d0d46a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-b921323c-be25-47b7-ab97-2dbda5d0d46a","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6a9d0c02-5d31-45f4-a2ed-6d2165c98b3a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-6a9d0c02-5d31-45f4-a2ed-6d2165c98b3a","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1e2ff37d-0955-4acb-ad83-9d9f39299b21","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-1e2ff37d-0955-4acb-ad83-9d9f39299b21","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f04267c0-91ec-488e-aa20-a6ae14dfebaa","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-f04267c0-91ec-488e-aa20-a6ae14dfebaa","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-803e484d-7faa-4555-86d6-bee1d73b9290","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-803e484d-7faa-4555-86d6-bee1d73b9290","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-dfef7be4-887b-4a63-b1d0-fa6ce9ff45e1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-dfef7be4-887b-4a63-b1d0-fa6ce9ff45e1","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0447975e-0a93-4d2d-abac-2f1f2298d086","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-0447975e-0a93-4d2d-abac-2f1f2298d086","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f3eebd24-b103-4a88-b855-c254d2fc98c2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-f3eebd24-b103-4a88-b855-c254d2fc98c2","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6bfc3a2f-084d-405d-a907-ed8de808998e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-6bfc3a2f-084d-405d-a907-ed8de808998e","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-29d01d08-a764-4295-96bf-653cedc8d9c5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-29d01d08-a764-4295-96bf-653cedc8d9c5","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3e2df171-16a6-4a30-bf4d-89807ed51d59","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-3e2df171-16a6-4a30-bf4d-89807ed51d59","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-041d2b88-62c7-4ad3-99a6-49dc6944ff66","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-22-Corpnet-041d2b88-62c7-4ad3-99a6-49dc6944ff66","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-db54d149-40e4-44fe-8269-4d7fe7e9156c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-db54d149-40e4-44fe-8269-4d7fe7e9156c","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":139,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-de4d57a8-cb71-4833-b43b-c3d8239a2467","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-de4d57a8-cb71-4833-b43b-c3d8239a2467","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":140,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9f6ea0b1-97ab-43b2-9c12-f2b3dc5a4327","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-9f6ea0b1-97ab-43b2-9c12-f2b3dc5a4327","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":141,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ec9abbd4-0cfb-422b-8d46-e23205f4566e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-ec9abbd4-0cfb-422b-8d46-e23205f4566e","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":142,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-bb97ed69-e30f-49c8-8f41-6474b5507758","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-bb97ed69-e30f-49c8-8f41-6474b5507758","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":143,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-847a4ea5-abbd-415f-b287-4d3ce190badf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-847a4ea5-abbd-415f-b287-4d3ce190badf","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":144,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-2c46ef66-4f08-4766-aa9c-eb4ab14048f1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-2c46ef66-4f08-4766-aa9c-eb4ab14048f1","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":145,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7051ba76-18a0-4cd2-9f4d-2c297b504acf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-7051ba76-18a0-4cd2-9f4d-2c297b504acf","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":146,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-e7b51719-7c41-4d32-986b-46c977e4142d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-e7b51719-7c41-4d32-986b-46c977e4142d","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":147,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b3ae1482-4bc5-4271-85c7-c0676ea68243","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-b3ae1482-4bc5-4271-85c7-c0676ea68243","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":148,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-2f456a52-f6fa-4906-9220-29e403b069ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-2f456a52-f6fa-4906-9220-29e403b069ef","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":149,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-09bfadb8-4049-428c-9664-33d648c2eeec","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-09bfadb8-4049-428c-9664-33d648c2eeec","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":150,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f5316475-b3e6-4c12-8345-8e0ea2394e49","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-f5316475-b3e6-4c12-8345-8e0ea2394e49","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":151,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-52164c28-7fcc-42dd-b062-910e91c96815","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-52164c28-7fcc-42dd-b062-910e91c96815","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":152,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-1d587456-1138-4602-a493-430107458cab","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-1d587456-1138-4602-a493-430107458cab","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":153,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-39116fef-b33b-45ae-813a-83236248fe1a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-39116fef-b33b-45ae-813a-83236248fe1a","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":154,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7f008ca6-da14-4f56-b207-71fb4fb2001f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-7f008ca6-da14-4f56-b207-71fb4fb2001f","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":155,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b02db1f0-9f4b-4980-8c1d-bd766efaa402","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-b02db1f0-9f4b-4980-8c1d-bd766efaa402","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":156,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-cace201e-65ba-4de7-be61-795239a300e1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-cace201e-65ba-4de7-be61-795239a300e1","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":157,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b19fe543-83a6-4f48-a2a0-894b232badaf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-b19fe543-83a6-4f48-a2a0-894b232badaf","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":158,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-1808e536-602f-44b9-946d-cd016de6c6a7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-1808e536-602f-44b9-946d-cd016de6c6a7","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":159,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7951d568-7aec-44e1-a33a-0c9abd06e377","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-7951d568-7aec-44e1-a33a-0c9abd06e377","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":160,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9f053078-8d52-41b7-a143-eccd9a71fc4d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-9f053078-8d52-41b7-a143-eccd9a71fc4d","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":161,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-98d9c511-c8c7-4917-a8f1-8e96477a090e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-98d9c511-c8c7-4917-a8f1-8e96477a090e","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":162,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-4c2f1d98-4f33-4345-b04e-704bdd836e36","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-4c2f1d98-4f33-4345-b04e-704bdd836e36","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":163,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9c997c78-c045-4d27-85b1-9c76d4e52b16","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-9c997c78-c045-4d27-85b1-9c76d4e52b16","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":164,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b117fa56-3760-4d75-b9ba-bd5335733833","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-b117fa56-3760-4d75-b9ba-bd5335733833","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":165,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-215582b3-516e-4f2a-9207-65f05ccb046d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-215582b3-516e-4f2a-9207-65f05ccb046d","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":166,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9e7e0f00-a67a-43df-9fe0-295b80e728f5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/securityRules/Cleanuptool-3389-Corpnet-9e7e0f00-a67a-43df-9fe0-295b80e728f5","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":167,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"1d38a9e5-a4d0-4558-b229-bcc02b8629c8\"","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh554"}]}},{"name":"amareh2-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"7a7372d2-ac69-4f74-b3e3-76b85c51ec33","securityRules":[{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/RDP","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/SSH","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/HTTPS","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/HTTP","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-34b1af58-96b5-4553-99c9-33c6bef9f7e5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-34b1af58-96b5-4553-99c9-33c6bef9f7e5","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-5420b326-9c1f-4442-984d-030b9f00d2b0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-5420b326-9c1f-4442-984d-030b9f00d2b0","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-6cdb9011-dc6c-4076-aafb-036ba4b78d30","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-6cdb9011-dc6c-4076-aafb-036ba4b78d30","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-33c786c0-3813-4f57-a7a6-13f13bf7d47a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-33c786c0-3813-4f57-a7a6-13f13bf7d47a","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-74461eb8-a98f-44d6-bb66-13ec83f7fbbc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-74461eb8-a98f-44d6-bb66-13ec83f7fbbc","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-8a249c95-cea5-41d1-8266-5f237d30c025","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-8a249c95-cea5-41d1-8266-5f237d30c025","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-c3fbcb10-2ccd-4958-b247-0b2d59a096b7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-c3fbcb10-2ccd-4958-b247-0b2d59a096b7","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-2eb75624-4101-41f0-9a47-8b3e0cd22a6f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-2eb75624-4101-41f0-9a47-8b3e0cd22a6f","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-afdc97dd-c6a9-456f-9a36-654962b66824","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-afdc97dd-c6a9-456f-9a36-654962b66824","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-1c0369f1-1d70-483d-9429-b0b9e2e95265","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-1c0369f1-1d70-483d-9429-b0b9e2e95265","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-16387c8d-0dc0-439d-a25b-d11d5dc4983d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-16387c8d-0dc0-439d-a25b-d11d5dc4983d","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f2497d79-370c-4a5c-9442-383c8cd0ca3b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-f2497d79-370c-4a5c-9442-383c8cd0ca3b","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-830dfc90-3637-44d7-bda2-b6c22bf28abb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-830dfc90-3637-44d7-bda2-b6c22bf28abb","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ed07f725-a887-4a6e-9ad3-368dbe3fc01f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-ed07f725-a887-4a6e-9ad3-368dbe3fc01f","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-8186dc0e-24a7-4c97-929c-748e42fd64d6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-8186dc0e-24a7-4c97-929c-748e42fd64d6","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-17773468-94d6-4651-9f8c-73dbe10d4f91","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-17773468-94d6-4651-9f8c-73dbe10d4f91","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-040985a9-71b3-48c9-8ce5-59b2526de106","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-040985a9-71b3-48c9-8ce5-59b2526de106","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d53f0e3b-85f3-40fe-ab39-721009a4d9b1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-d53f0e3b-85f3-40fe-ab39-721009a4d9b1","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ddd38089-91e6-4695-9e29-b6310ccf200b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-ddd38089-91e6-4695-9e29-b6310ccf200b","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b75a2246-52fd-4ce8-8afb-d39bae754d5b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-b75a2246-52fd-4ce8-8afb-d39bae754d5b","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-0e8e97fb-a6f8-4c90-9ef3-c0f448f964f9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-0e8e97fb-a6f8-4c90-9ef3-c0f448f964f9","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d0a38836-3abe-424d-a06c-30d24dcda928","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-d0a38836-3abe-424d-a06c-30d24dcda928","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-4f8b1675-13c0-4e9c-9cc9-99de11a82914","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-4f8b1675-13c0-4e9c-9cc9-99de11a82914","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7f5db0cd-b198-42be-a9b7-f363f05267b5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-7f5db0cd-b198-42be-a9b7-f363f05267b5","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-49163639-d729-450c-a3ff-dfa3a42808de","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-49163639-d729-450c-a3ff-dfa3a42808de","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b2a9a290-684b-4879-9af2-74327f7a1ac3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-b2a9a290-684b-4879-9af2-74327f7a1ac3","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-fc1b63f3-b538-4427-8d5d-df268ab7c68c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-fc1b63f3-b538-4427-8d5d-df268ab7c68c","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-76f742cc-78b4-4d91-a5b2-c11bb9d5d90b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-76f742cc-78b4-4d91-a5b2-c11bb9d5d90b","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-68586b68-9c7e-42c7-a31c-f5a8e784a16c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-3389-Corpnet-68586b68-9c7e-42c7-a31c-f5a8e784a16c","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-37d26ac0-89fb-46c0-8d34-5e811281b6bd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-37d26ac0-89fb-46c0-8d34-5e811281b6bd","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":139,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a579fe02-3151-4fe1-ac41-9c44a5408846","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-a579fe02-3151-4fe1-ac41-9c44a5408846","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":140,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7e43ad4f-7769-4cbb-801b-6915c89da807","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-7e43ad4f-7769-4cbb-801b-6915c89da807","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":141,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c0cab64f-8703-477d-b19c-b8f6d6372e54","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-c0cab64f-8703-477d-b19c-b8f6d6372e54","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":142,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a33a7aa4-cf36-4973-8c53-8a58c2f7eab1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-a33a7aa4-cf36-4973-8c53-8a58c2f7eab1","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":143,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0efe35eb-e3e6-44d9-ba1b-0ece1cfba308","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-0efe35eb-e3e6-44d9-ba1b-0ece1cfba308","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":144,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-50511643-afa8-44dd-9a33-fee0c224e46b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-50511643-afa8-44dd-9a33-fee0c224e46b","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":145,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-90a7d25b-1e31-4823-ba24-2cdc738a9825","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-90a7d25b-1e31-4823-ba24-2cdc738a9825","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":146,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-61de4a59-0a8c-4578-a7a3-5f756f4ef2a1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-61de4a59-0a8c-4578-a7a3-5f756f4ef2a1","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":147,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9f926b82-1db1-43a4-a7b4-20b628740407","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-9f926b82-1db1-43a4-a7b4-20b628740407","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":148,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-08c7a6e0-aab5-4f41-8115-dcb9448b323e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-08c7a6e0-aab5-4f41-8115-dcb9448b323e","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":149,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7d290bee-4c6a-4c5d-ba17-998d0a05ded7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-7d290bee-4c6a-4c5d-ba17-998d0a05ded7","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":150,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a8cb0dbf-7414-4680-b01c-f83d87690a15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-a8cb0dbf-7414-4680-b01c-f83d87690a15","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":151,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-cc6b9477-b2a6-4481-a84f-158482f338e8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-cc6b9477-b2a6-4481-a84f-158482f338e8","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":152,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3c6ef17c-363e-4e95-b39e-af8f53681e5f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-3c6ef17c-363e-4e95-b39e-af8f53681e5f","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":153,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-eb8a4772-1b0b-4173-8126-3d4b5f5613a3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-eb8a4772-1b0b-4173-8126-3d4b5f5613a3","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":154,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-46b0b6b1-03ca-45d4-a344-6bfa4b1dc4b0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-46b0b6b1-03ca-45d4-a344-6bfa4b1dc4b0","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":155,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4ef411c0-d4a8-497f-8e23-d1c5e37906f2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-4ef411c0-d4a8-497f-8e23-d1c5e37906f2","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":156,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6063a19e-a968-4bf3-83c7-a812b5d024a3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-6063a19e-a968-4bf3-83c7-a812b5d024a3","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":157,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-94e71a09-20d0-4428-8a3d-f16508cd935e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-94e71a09-20d0-4428-8a3d-f16508cd935e","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":158,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-60542a35-5df4-46d2-9a2f-408559bb846f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-60542a35-5df4-46d2-9a2f-408559bb846f","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":159,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9a2defa8-8b0e-4171-840b-fdbc02a52385","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-9a2defa8-8b0e-4171-840b-fdbc02a52385","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":160,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-38c2addc-fd31-41d9-8490-e3b7b178f2d8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-38c2addc-fd31-41d9-8490-e3b7b178f2d8","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":161,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-56035bd2-833f-478a-8bad-b8fddaee04d9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-56035bd2-833f-478a-8bad-b8fddaee04d9","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":162,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-25dc66be-30aa-44c7-b04f-d9e25f2016cd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-25dc66be-30aa-44c7-b04f-d9e25f2016cd","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":163,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0adbdf02-36c2-42be-985a-c4775887b6c6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-0adbdf02-36c2-42be-985a-c4775887b6c6","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":164,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2dfd6291-4fdc-4299-9e9a-70bf28c5b32f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-2dfd6291-4fdc-4299-9e9a-70bf28c5b32f","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":165,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e4668a52-65eb-48bd-8123-93d29f6a836c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-e4668a52-65eb-48bd-8123-93d29f6a836c","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":166,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-10cd10d0-acf6-4536-a5a9-777ed7afc272","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/securityRules/Cleanuptool-22-Corpnet-10cd10d0-acf6-4536-a5a9-777ed7afc272","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":167,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh2-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"0cb4c39c-d3cc-4ecd-b03e-b6291bde708e\"","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh2451"}]}},{"name":"amareh3-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"e87fb0ab-c933-4dc7-ae06-f1bd52cf150c","securityRules":[{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/HTTP","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/HTTPS","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/SSH","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/RDP","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-fd1696bb-bc60-41ea-8455-76afa16ea241","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-fd1696bb-bc60-41ea-8455-76afa16ea241","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-bea66e70-e311-42c8-a061-b1489239bae4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-bea66e70-e311-42c8-a061-b1489239bae4","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-df239e43-f9cf-4371-bab0-a4d50c5278d2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-df239e43-f9cf-4371-bab0-a4d50c5278d2","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-97556cbd-9969-40e1-8cfb-c665a6867d16","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-97556cbd-9969-40e1-8cfb-c665a6867d16","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-24fca865-3cbc-4601-8d1b-da37ca8fa4d4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-24fca865-3cbc-4601-8d1b-da37ca8fa4d4","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9a928e3b-a900-4339-8f83-4c251b22f5fc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-9a928e3b-a900-4339-8f83-4c251b22f5fc","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d73665b0-f4b1-449f-9cdc-ba465c70252d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-d73665b0-f4b1-449f-9cdc-ba465c70252d","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9944af57-3210-40ef-8f2d-ae5d4d8a5d00","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-9944af57-3210-40ef-8f2d-ae5d4d8a5d00","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-722fcb87-7b32-4171-98da-eb38a3619e26","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-722fcb87-7b32-4171-98da-eb38a3619e26","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ca5df7a2-6aef-4d81-9124-12a77aeb79a7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-ca5df7a2-6aef-4d81-9124-12a77aeb79a7","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-83ec58cd-e017-4053-8c3c-e211898d6b25","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-83ec58cd-e017-4053-8c3c-e211898d6b25","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d4e2b628-fb28-4982-b4ec-9ca05f36f0d0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-d4e2b628-fb28-4982-b4ec-9ca05f36f0d0","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-313f1c0e-e4c6-4182-9b8a-de6d0acd53bc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-313f1c0e-e4c6-4182-9b8a-de6d0acd53bc","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-2c8604b6-9102-4cce-9e1b-eb9377fc44f0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-2c8604b6-9102-4cce-9e1b-eb9377fc44f0","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-bfd19ba5-0645-4a14-ae0f-c1b12976198f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-bfd19ba5-0645-4a14-ae0f-c1b12976198f","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f68c321d-cd40-46d6-98f2-00252dd172d1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-f68c321d-cd40-46d6-98f2-00252dd172d1","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b4ea2919-4a92-49f9-8871-66d2b28d93bd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-b4ea2919-4a92-49f9-8871-66d2b28d93bd","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-315da4fc-58a1-41e3-a88f-201dfa78bc02","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-315da4fc-58a1-41e3-a88f-201dfa78bc02","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-71813744-3437-45f9-88a0-e8b9a1a23d0c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-71813744-3437-45f9-88a0-e8b9a1a23d0c","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ead72397-a415-41c2-b435-48d7004893a9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-ead72397-a415-41c2-b435-48d7004893a9","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7e1e13a9-c0ab-4db0-9558-8703f21a76ad","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-7e1e13a9-c0ab-4db0-9558-8703f21a76ad","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-be9ec689-a906-4ea1-91e5-7a6ceee7ba73","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-be9ec689-a906-4ea1-91e5-7a6ceee7ba73","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-c20e9e82-0ba6-4d82-a3b7-41c2c0f3cad7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-c20e9e82-0ba6-4d82-a3b7-41c2c0f3cad7","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-20126277-2d3a-4fa5-9b91-17971d6af689","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-20126277-2d3a-4fa5-9b91-17971d6af689","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-4e79dcb9-9240-4d4d-ac4e-5851ae9c519c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-4e79dcb9-9240-4d4d-ac4e-5851ae9c519c","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9b9c672c-632e-45c6-a36e-7e703d3fecfb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-9b9c672c-632e-45c6-a36e-7e703d3fecfb","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-256895bb-ff2c-4bad-bb5a-5049f83050eb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-256895bb-ff2c-4bad-bb5a-5049f83050eb","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-07eefa72-959a-48c7-9634-9547dd5bf565","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-07eefa72-959a-48c7-9634-9547dd5bf565","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ccee5e95-9c96-4104-bf73-0c5c1d49eb4f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-3389-Corpnet-ccee5e95-9c96-4104-bf73-0c5c1d49eb4f","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d588c1c5-9705-49c6-bf87-a5794da3f979","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-d588c1c5-9705-49c6-bf87-a5794da3f979","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":139,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f668d073-8902-4455-a7d1-eb139573d13a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-f668d073-8902-4455-a7d1-eb139573d13a","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":140,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-60df5e04-36f3-45ca-af96-dc898745cde5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-60df5e04-36f3-45ca-af96-dc898745cde5","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":141,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f162eeb2-d88a-44a4-aac3-fea3e06ae511","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-f162eeb2-d88a-44a4-aac3-fea3e06ae511","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":142,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a9063996-76b8-4079-8f22-94190bb1699a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-a9063996-76b8-4079-8f22-94190bb1699a","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":143,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7aba7938-bf29-4d29-a168-1767bf300cfd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-7aba7938-bf29-4d29-a168-1767bf300cfd","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":144,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7d8714cd-f319-4fc5-b049-fa3b3b59ac17","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-7d8714cd-f319-4fc5-b049-fa3b3b59ac17","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":145,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a3a86774-efd9-4961-bb34-d4b562470830","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-a3a86774-efd9-4961-bb34-d4b562470830","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":146,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2e123231-f069-41d2-b46e-f250ca7e3ef4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-2e123231-f069-41d2-b46e-f250ca7e3ef4","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":147,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2ef089e1-c362-425c-a768-7eeb3dc1f886","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-2ef089e1-c362-425c-a768-7eeb3dc1f886","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":148,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a275ed8b-81ae-493b-8082-8491a63a7792","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-a275ed8b-81ae-493b-8082-8491a63a7792","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":149,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-022ac653-1835-4728-9fbf-d5872c706a2d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-022ac653-1835-4728-9fbf-d5872c706a2d","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":150,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-b176a3d2-6f81-4b24-88ed-064415b091f6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-b176a3d2-6f81-4b24-88ed-064415b091f6","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":151,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e7efcd24-31c5-4d93-800a-50b6fd29e098","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-e7efcd24-31c5-4d93-800a-50b6fd29e098","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":152,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-be1a7de2-e1bf-4efb-ad56-9a111723fdd6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-be1a7de2-e1bf-4efb-ad56-9a111723fdd6","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":153,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3f0a6a5c-52fb-4dfb-bb1e-fdb2015a67c3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-3f0a6a5c-52fb-4dfb-bb1e-fdb2015a67c3","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":154,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-025fb093-8137-482c-9a88-e8c41091fe6f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-025fb093-8137-482c-9a88-e8c41091fe6f","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":155,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-00357a40-6ac5-4a48-9b34-67edd0f71dc2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-00357a40-6ac5-4a48-9b34-67edd0f71dc2","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":156,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-b543e10b-dfc1-4204-bc93-0c196bab5944","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-b543e10b-dfc1-4204-bc93-0c196bab5944","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":157,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-09674965-8102-42f4-8a54-8da58a4d5cf9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-09674965-8102-42f4-8a54-8da58a4d5cf9","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":158,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0df81928-a8f4-4621-bb8d-8336d2574b14","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-0df81928-a8f4-4621-bb8d-8336d2574b14","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":159,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c23d4c37-5202-4558-9c69-d3874de138ae","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-c23d4c37-5202-4558-9c69-d3874de138ae","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":160,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a21ff307-77ab-4bc0-b50d-17c552c28341","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-a21ff307-77ab-4bc0-b50d-17c552c28341","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":161,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d9fb7013-3796-4a1e-a8a0-0c189a8d69a8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-d9fb7013-3796-4a1e-a8a0-0c189a8d69a8","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":162,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-14761f3f-19f8-4c6a-ac0f-d358ac53aa1d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-14761f3f-19f8-4c6a-ac0f-d358ac53aa1d","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":163,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9e8d6800-8e2f-48d7-810a-5f62e6573516","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-9e8d6800-8e2f-48d7-810a-5f62e6573516","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":164,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-331bb2ae-2595-4d48-b26d-8f7762dcb6aa","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-331bb2ae-2595-4d48-b26d-8f7762dcb6aa","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":165,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-cfa86583-8363-4c72-ba83-c68fbd543bc1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-cfa86583-8363-4c72-ba83-c68fbd543bc1","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":166,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9045978f-eb20-41ad-99f5-dcd260c99ed7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/securityRules/Cleanuptool-22-Corpnet-9045978f-eb20-41ad-99f5-dcd260c99ed7","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":167,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh3-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"52919c05-c66c-4f9d-83d3-85c939466e84\"","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh3187"}]}},{"name":"amareh4-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"f16ec593-1cd3-425f-96d6-be9ceb230942","securityRules":[{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/HTTP","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/HTTPS","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/SSH","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/RDP","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-0570023f-4e67-4da9-ada1-4917a6512748","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-0570023f-4e67-4da9-ada1-4917a6512748","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d960960d-43e1-4eca-97dc-b41d2090d01f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-d960960d-43e1-4eca-97dc-b41d2090d01f","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-db214194-6efd-4cc1-8963-73f8c1b76b05","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-db214194-6efd-4cc1-8963-73f8c1b76b05","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-3ac200a7-b0d0-438b-bbb1-7b6c6009db12","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-3ac200a7-b0d0-438b-bbb1-7b6c6009db12","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-061a35a0-f184-423e-93c6-bdad1ebf9905","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-061a35a0-f184-423e-93c6-bdad1ebf9905","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-389a18d6-63a4-41c3-bd6a-140d3fa4ddbd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-389a18d6-63a4-41c3-bd6a-140d3fa4ddbd","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-827471b0-0110-4439-b9eb-f49014819d92","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-827471b0-0110-4439-b9eb-f49014819d92","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f0ad268b-e2f6-4fdb-b0d6-7ba46437d0ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-f0ad268b-e2f6-4fdb-b0d6-7ba46437d0ef","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-cbe664a1-95e4-4755-99be-94e0abe1de52","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-cbe664a1-95e4-4755-99be-94e0abe1de52","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-69aa690a-d24d-4c73-993d-78d973f6bd68","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-69aa690a-d24d-4c73-993d-78d973f6bd68","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-faa29a96-b55e-4f61-973b-b1abcc5dd98e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-faa29a96-b55e-4f61-973b-b1abcc5dd98e","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-34685065-a192-4d11-9f8b-610181724610","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-34685065-a192-4d11-9f8b-610181724610","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-c2a2a994-131c-423d-b4f6-3e132840a614","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-c2a2a994-131c-423d-b4f6-3e132840a614","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-95233cda-ced6-4d4e-a2c5-f8c7634fd3de","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-95233cda-ced6-4d4e-a2c5-f8c7634fd3de","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-cdf75962-cf84-400b-97cd-bbad94a29804","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-cdf75962-cf84-400b-97cd-bbad94a29804","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-60b40a86-95c0-47f8-828d-5cd52a46dd21","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-60b40a86-95c0-47f8-828d-5cd52a46dd21","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-0ad820b6-a9bd-41d1-a9a3-5b5a626cd258","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-0ad820b6-a9bd-41d1-a9a3-5b5a626cd258","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-fd60faa6-6e5f-49a3-b730-5a47780263c3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-fd60faa6-6e5f-49a3-b730-5a47780263c3","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9f7491a0-bfa8-4630-b288-079c7f897605","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-9f7491a0-bfa8-4630-b288-079c7f897605","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9a5c7a94-af3b-449d-95e3-f78e4db69718","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-9a5c7a94-af3b-449d-95e3-f78e4db69718","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-15459dda-e723-49d5-9aa6-327ba895632c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-15459dda-e723-49d5-9aa6-327ba895632c","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-a4ed6b29-710f-417f-ab19-9770017d8e0c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-a4ed6b29-710f-417f-ab19-9770017d8e0c","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b0b5caa7-e11e-4d37-82b3-d2b1a02fc3c3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-b0b5caa7-e11e-4d37-82b3-d2b1a02fc3c3","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-0198d3ee-4bd4-4176-a14e-7dd0134408cc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-0198d3ee-4bd4-4176-a14e-7dd0134408cc","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-cebd99fc-de88-4c6a-9193-17995278c439","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-cebd99fc-de88-4c6a-9193-17995278c439","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-2dbefcad-831f-4f1f-99bb-335d660f55b2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-2dbefcad-831f-4f1f-99bb-335d660f55b2","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-67eb2571-15e1-4278-9f93-9b65100c05d0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-67eb2571-15e1-4278-9f93-9b65100c05d0","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f00a0f25-856c-45cc-a9a3-b14ceb48182b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-f00a0f25-856c-45cc-a9a3-b14ceb48182b","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9775ca5d-d552-4f66-91de-c48338d6f505","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-3389-Corpnet-9775ca5d-d552-4f66-91de-c48338d6f505","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-91720282-96df-48ec-bd5a-db9a706ac359","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-91720282-96df-48ec-bd5a-db9a706ac359","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":139,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0e54dfa4-8b32-496d-bd10-c5fe14f192a4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-0e54dfa4-8b32-496d-bd10-c5fe14f192a4","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":140,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6991927e-4ef5-44ee-b4a4-4b3c4d30d312","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-6991927e-4ef5-44ee-b4a4-4b3c4d30d312","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":141,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-521f3b34-9201-414d-bdc7-b2f97df7cb44","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-521f3b34-9201-414d-bdc7-b2f97df7cb44","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":142,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1cb951f5-c49e-4940-8082-39fbcaa6e659","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-1cb951f5-c49e-4940-8082-39fbcaa6e659","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":143,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d863be47-b692-4ae0-8858-1446fe62abbd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-d863be47-b692-4ae0-8858-1446fe62abbd","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":144,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-62624020-5a6e-406b-870f-c613a45d0e75","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-62624020-5a6e-406b-870f-c613a45d0e75","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":145,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c3a48dcf-31dc-428e-bea7-268e1fbb96ba","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-c3a48dcf-31dc-428e-bea7-268e1fbb96ba","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":146,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5a72f258-4bd2-412f-ba21-727f10af4d08","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-5a72f258-4bd2-412f-ba21-727f10af4d08","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":147,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0b808279-0164-487a-bb17-6cb4ef082847","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-0b808279-0164-487a-bb17-6cb4ef082847","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":148,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-71df94cf-2497-4bb6-9d77-a31ce7ef3652","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-71df94cf-2497-4bb6-9d77-a31ce7ef3652","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":149,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-722d4ec3-c87d-421b-aaea-7c9f3de7d8c2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-722d4ec3-c87d-421b-aaea-7c9f3de7d8c2","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":150,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c77dfd62-648e-4df0-b881-7418f59943cf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-c77dfd62-648e-4df0-b881-7418f59943cf","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":151,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c611c5ac-9ec4-405e-b999-3849dffcee18","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-c611c5ac-9ec4-405e-b999-3849dffcee18","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":152,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4c9ce0cd-74f1-4ed2-80e9-8f460a2f025c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-4c9ce0cd-74f1-4ed2-80e9-8f460a2f025c","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":153,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3ae24197-9007-442a-9f4f-335d04502a7d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-3ae24197-9007-442a-9f4f-335d04502a7d","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":154,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5dd5902d-bb6f-44c6-b831-6a17b53c8751","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-5dd5902d-bb6f-44c6-b831-6a17b53c8751","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":155,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3bfdf6f6-d120-43c0-911b-39d3e89ad29a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-3bfdf6f6-d120-43c0-911b-39d3e89ad29a","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":156,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-ae7abc19-73a0-494d-a1de-763cb77f2eb2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-ae7abc19-73a0-494d-a1de-763cb77f2eb2","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":157,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2853aefe-dab7-40a7-9d83-fda44dfda113","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-2853aefe-dab7-40a7-9d83-fda44dfda113","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":158,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5b750783-571b-4621-8392-a449bd20c660","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-5b750783-571b-4621-8392-a449bd20c660","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":159,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-350deb2a-dd6a-4a1d-b3a3-2442c839a976","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-350deb2a-dd6a-4a1d-b3a3-2442c839a976","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":160,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6fd5c7a8-0679-4dbe-8e9b-30228409142f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-6fd5c7a8-0679-4dbe-8e9b-30228409142f","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":161,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-845b32fe-802f-4f18-a3b3-a42b1234b2a3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-845b32fe-802f-4f18-a3b3-a42b1234b2a3","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":162,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c7cc8de0-d4ec-4e9d-94e2-9ebf1d97f695","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-c7cc8de0-d4ec-4e9d-94e2-9ebf1d97f695","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":163,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a42b331b-2211-47b5-aa8c-f14bc3096c32","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-a42b331b-2211-47b5-aa8c-f14bc3096c32","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":164,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3aef4891-ce6c-4dc9-b486-e6f11855e403","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-3aef4891-ce6c-4dc9-b486-e6f11855e403","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":165,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2481aba5-ea69-4e6b-bc7d-a7e468754504","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-2481aba5-ea69-4e6b-bc7d-a7e468754504","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":166,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7d5f22a4-d190-4048-b80f-c5ae74783fa3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/securityRules/Cleanuptool-22-Corpnet-7d5f22a4-d190-4048-b80f-c5ae74783fa3","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":167,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/amareh4-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"676f262d-f9aa-4320-baae-0d77be18e077\"","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh453"}]}},{"name":"lmazuel-testcapture-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg","etag":"W/\"c389a43e-c6d4-4bef-8faf-7ea0506bb096\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"4ab9af35-993c-4d93-b87a-4ef498dec35c","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/default-allow-ssh","etag":"W/\"c389a43e-c6d4-4bef-8faf-7ea0506bb096\"","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"c389a43e-c6d4-4bef-8faf-7ea0506bb096\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"c389a43e-c6d4-4bef-8faf-7ea0506bb096\"","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"c389a43e-c6d4-4bef-8faf-7ea0506bb096\"","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"c389a43e-c6d4-4bef-8faf-7ea0506bb096\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"c389a43e-c6d4-4bef-8faf-7ea0506bb096\"","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"c389a43e-c6d4-4bef-8faf-7ea0506bb096\"","properties":{"provisioningState":"Succeeded","description":"Deny + body: {string: '{"value":[{"name":"rg-cleanupservice-nsg6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d953f609-fffc-42e1-9026-12f14da4c99e","securityRules":[{"name":"Cleanuptool-Allow-4001","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/securityRules/Cleanuptool-Allow-4001","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-100","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/securityRules/Cleanuptool-Allow-100","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":["167.220.148.0/23","131.107.147.0/24","131.107.159.0/24","131.107.160.0/24","131.107.174.0/24","167.220.24.0/24","167.220.26.0/24","167.220.238.0/27","167.220.238.128/27","167.220.238.192/27","167.220.238.64/27","167.220.232.0/23","167.220.255.0/25","167.220.242.0/27","167.220.242.128/27","167.220.242.192/27","167.220.242.64/27","94.245.87.0/24","167.220.196.0/23","194.69.104.0/25","191.234.97.0/26","167.220.0.0/23","167.220.2.0/24","207.68.190.32/27","13.106.78.32/27","10.254.32.0/20","10.97.136.0/22","13.106.174.32/27","13.106.4.96/27"],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-101","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/securityRules/Cleanuptool-Allow-101","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":101,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-102","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/securityRules/Cleanuptool-Allow-102","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":102,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-103","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/securityRules/Cleanuptool-Deny-103","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":103,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/defaultSecurityRules/DenyAllInBound","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6e155d5d-f5b9-486c-8639-dfd234bf4a36\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"subnets":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/virtualNetworks/wilxvm1VNET/subnets/wilxvm1Subnet"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/virtualNetworks/TestVMVNET/subnets/TestVMSubnet"}]}},{"name":"rg-cleanupservice-nsg7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"97e4f6b2-3277-4206-b07c-6ed937cccdca","securityRules":[{"name":"Cleanuptool-Allow-4000","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-4000","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3999","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Deny-3999","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3999,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3998","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Deny-3998","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3998,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3997","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Deny-3997","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3997,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3996","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Deny-3996","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3996,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3995","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Deny-3995","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3995,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3994","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Deny-3994","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3994,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3993","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3993","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3993,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3992","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3992","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3992,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3991","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3991","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3991,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3990","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3990","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3990,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3989","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3989","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3989,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3988","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3988","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3988,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3987","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3987","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3987,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3986","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3986","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3986,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3985","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3985,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3984","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3984","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3984,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3983","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3983","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3983,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3982","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-Allow-3982","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3982,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-505bd4d1-a663-445c-8b76-e74117a55d6c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-505bd4d1-a663-445c-8b76-e74117a55d6c","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-726e7246-0e80-4c4b-9764-6fbd40bea83a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-726e7246-0e80-4c4b-9764-6fbd40bea83a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7079cb7e-4c38-4505-a82b-a1baf0c945a2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-7079cb7e-4c38-4505-a82b-a1baf0c945a2","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-a7b111e1-b0b4-4fda-81e2-fbb8a448d584","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-a7b111e1-b0b4-4fda-81e2-fbb8a448d584","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-8bc3ab11-04f1-4bfc-aebc-a9491f5f4321","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-8bc3ab11-04f1-4bfc-aebc-a9491f5f4321","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-5ba6edab-7bcf-4162-a252-1f3eb19af809","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-5ba6edab-7bcf-4162-a252-1f3eb19af809","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f2062bd7-1224-4b8d-9782-42ebb9401352","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-f2062bd7-1224-4b8d-9782-42ebb9401352","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-1a3d640e-60df-4a69-86c2-3ea2700951a6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-1a3d640e-60df-4a69-86c2-3ea2700951a6","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-037ba98d-340d-4b65-866e-9f86526f631e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-037ba98d-340d-4b65-866e-9f86526f631e","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d737cb43-1e0b-454c-8753-ea0c3ced9e0a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-d737cb43-1e0b-454c-8753-ea0c3ced9e0a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-a3703281-9467-4d8a-9da0-4b517a5630e2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-a3703281-9467-4d8a-9da0-4b517a5630e2","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f8dfd928-7c42-4ab5-9f2b-32598708eb0d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-f8dfd928-7c42-4ab5-9f2b-32598708eb0d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9cf4d919-f3f0-4a79-a4e4-05e75eadd747","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-9cf4d919-f3f0-4a79-a4e4-05e75eadd747","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-29b41117-7026-4f27-b5a3-af513b03ec3c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-29b41117-7026-4f27-b5a3-af513b03ec3c","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-5b83a9c9-3fbe-4e5a-9dc6-bde52b86120e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-5b83a9c9-3fbe-4e5a-9dc6-bde52b86120e","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-90fb96aa-1c19-4abe-8b27-c378c30b83f0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-90fb96aa-1c19-4abe-8b27-c378c30b83f0","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-af569d8b-16d7-4c17-aea3-461a726abcdd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-af569d8b-16d7-4c17-aea3-461a726abcdd","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-e5086447-40ee-4563-93a9-78f16f0fc196","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-e5086447-40ee-4563-93a9-78f16f0fc196","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-15ca0b88-955c-4771-8b92-101fa3842545","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-15ca0b88-955c-4771-8b92-101fa3842545","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-562e1357-a829-482a-a590-22fe49d0d788","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-562e1357-a829-482a-a590-22fe49d0d788","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-4236a542-61c1-4ed1-ab3d-450b6e6bdb07","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-4236a542-61c1-4ed1-ab3d-450b6e6bdb07","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-5bef9075-9bc0-46a0-9b63-2e3a310b6969","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-5bef9075-9bc0-46a0-9b63-2e3a310b6969","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-baf93a20-f58d-447f-bdd1-e86bb97a03dd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-baf93a20-f58d-447f-bdd1-e86bb97a03dd","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7222ac1c-7ef1-49cd-b502-5ea4e005c6ca","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-7222ac1c-7ef1-49cd-b502-5ea4e005c6ca","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-56368776-1db2-484c-b0ce-0663e226a10d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-56368776-1db2-484c-b0ce-0663e226a10d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-8855b901-7598-4ba8-b9ac-06023e31c5e8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-8855b901-7598-4ba8-b9ac-06023e31c5e8","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-56cfced6-510a-4791-bc43-2f295c9905fe","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-56cfced6-510a-4791-bc43-2f295c9905fe","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-a866ce1f-98d4-48b0-b534-e0c969d36ca4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-a866ce1f-98d4-48b0-b534-e0c969d36ca4","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-219fc871-ce03-4b71-b47c-c942578400a1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-3389-Corpnet-219fc871-ce03-4b71-b47c-c942578400a1","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-c44cb037-e0db-46ef-a404-19861dbf672c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-c44cb037-e0db-46ef-a404-19861dbf672c","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":139,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-163468c7-0223-488b-96bf-e5e50587bff3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-163468c7-0223-488b-96bf-e5e50587bff3","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":140,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-860c94ff-af0b-4d64-b2e5-6ec6c037dc1f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-860c94ff-af0b-4d64-b2e5-6ec6c037dc1f","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":141,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-9dc5640d-88c0-4de8-9e5b-a1bbd969fb09","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-9dc5640d-88c0-4de8-9e5b-a1bbd969fb09","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":142,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-dc717633-35a1-4710-a86b-678331c4faad","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-dc717633-35a1-4710-a86b-678331c4faad","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":143,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-3c2ab6b5-2c04-4867-bbaa-f86f96639ed6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-3c2ab6b5-2c04-4867-bbaa-f86f96639ed6","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":144,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-61e87691-a023-4d60-8bb9-78c73a981259","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-61e87691-a023-4d60-8bb9-78c73a981259","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":145,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-8bc4c7b4-d029-4fc8-8d9d-cdd8df2e0811","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-8bc4c7b4-d029-4fc8-8d9d-cdd8df2e0811","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":146,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-5e0084ca-87d0-44a6-b69f-69ac9eba9a86","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-5e0084ca-87d0-44a6-b69f-69ac9eba9a86","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":147,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-1ecab654-9904-44ce-9607-01c7a8ea0e70","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-1ecab654-9904-44ce-9607-01c7a8ea0e70","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":148,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-9bb72507-f572-451f-a28e-dccce41e6938","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-9bb72507-f572-451f-a28e-dccce41e6938","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":149,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-384accc9-382a-4c77-b178-27c6d1e1c82a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-384accc9-382a-4c77-b178-27c6d1e1c82a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":150,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-f085d03c-e1c0-4f4e-9e7b-0d38452350fe","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-f085d03c-e1c0-4f4e-9e7b-0d38452350fe","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":151,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-b5b24b7c-4282-4edd-95cb-b769b784702c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-b5b24b7c-4282-4edd-95cb-b769b784702c","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":152,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-90809972-334c-4cb8-b828-23248798eff0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-90809972-334c-4cb8-b828-23248798eff0","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":153,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-f2b3751e-af36-4a84-be38-cd8997335f74","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-f2b3751e-af36-4a84-be38-cd8997335f74","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":154,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-ded8d270-20d7-468c-93df-10904ba46e65","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-ded8d270-20d7-468c-93df-10904ba46e65","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":155,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-6006b684-adf7-4875-a212-1ecc6355dc0a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-6006b684-adf7-4875-a212-1ecc6355dc0a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":156,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-0a8688ba-a2cf-486e-8e09-5866636b4204","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-0a8688ba-a2cf-486e-8e09-5866636b4204","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":157,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-f972104a-f86b-4147-bc8a-d062ca0a16e8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-f972104a-f86b-4147-bc8a-d062ca0a16e8","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":158,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-9476f4ab-639a-4e27-9f99-2d67b2cc45ca","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-9476f4ab-639a-4e27-9f99-2d67b2cc45ca","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":159,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-b6733c5b-6a66-4328-b121-b685d92244de","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-b6733c5b-6a66-4328-b121-b685d92244de","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":160,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-3008e666-2ec5-4ecd-abe9-3eab31f99739","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-3008e666-2ec5-4ecd-abe9-3eab31f99739","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":161,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-096199ff-a1e2-4f4e-a743-523d375e0b98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-096199ff-a1e2-4f4e-a743-523d375e0b98","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":162,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-66c1ea8d-4253-4982-94e1-3e71181aa202","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-66c1ea8d-4253-4982-94e1-3e71181aa202","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":163,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-ba58c562-af7a-41ec-a063-8f6a721a2d8d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-ba58c562-af7a-41ec-a063-8f6a721a2d8d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":164,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-eec594b2-f63c-4b34-96b3-acc6c0afa187","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-eec594b2-f63c-4b34-96b3-acc6c0afa187","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":165,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-34f163c3-8d4c-4ad7-8945-f3a56450b315","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-34f163c3-8d4c-4ad7-8945-f3a56450b315","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":166,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-7f50b376-02e8-4c7d-8a33-15ee98dfa27e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-5985-5986-Corpnet-7f50b376-02e8-4c7d-8a33-15ee98dfa27e","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":167,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-aa27ea1e-5ef2-412f-a962-d03810a93a3e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-aa27ea1e-5ef2-412f-a962-d03810a93a3e","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":168,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-9ab530df-8e0e-4ce9-8a49-0ee55652069a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-9ab530df-8e0e-4ce9-8a49-0ee55652069a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":169,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-f1952a92-7b1f-43b8-9ea9-fafc9c6d705e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-f1952a92-7b1f-43b8-9ea9-fafc9c6d705e","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":170,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-1dc7d396-a2c6-42a2-99d9-16032e384181","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-1dc7d396-a2c6-42a2-99d9-16032e384181","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":171,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-ffb8849f-9845-4d1d-b207-b61c04499989","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-ffb8849f-9845-4d1d-b207-b61c04499989","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":172,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-3694f99f-9966-4a55-82df-e6fee1b54f90","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-3694f99f-9966-4a55-82df-e6fee1b54f90","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":173,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-70e59ccc-c6af-4e68-93a5-727ab9eef504","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-70e59ccc-c6af-4e68-93a5-727ab9eef504","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":174,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-feb7878b-b147-4ca4-a25f-c079c2e7b88a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-feb7878b-b147-4ca4-a25f-c079c2e7b88a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":175,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-7147375d-cc15-4af0-a277-7694003553cc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-7147375d-cc15-4af0-a277-7694003553cc","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":176,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-0839021a-c1cd-45d2-b9ed-53a1b6257e2f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-0839021a-c1cd-45d2-b9ed-53a1b6257e2f","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":177,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-59b33f13-eac2-4487-bf56-1883b953f01c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-59b33f13-eac2-4487-bf56-1883b953f01c","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":178,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b438962b-7c66-4687-bdf9-1e0932454391","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-b438962b-7c66-4687-bdf9-1e0932454391","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":179,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-a0a050f5-e363-4119-92f0-72ea984cb480","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-a0a050f5-e363-4119-92f0-72ea984cb480","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":180,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-9be43096-bb0f-49ee-9071-9fbf1e89fb35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-9be43096-bb0f-49ee-9071-9fbf1e89fb35","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":181,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-858ae6c3-b562-4d0c-bae9-b0b3f1f55dfe","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-858ae6c3-b562-4d0c-bae9-b0b3f1f55dfe","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":182,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-6825ae76-b2b3-4085-b262-1718714071ed","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-6825ae76-b2b3-4085-b262-1718714071ed","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":183,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-4442797d-fbed-4796-a1ea-b6aa635a4ad4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-4442797d-fbed-4796-a1ea-b6aa635a4ad4","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":184,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-54be0d5b-21ce-4770-9034-ca99ff3bf77d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-54be0d5b-21ce-4770-9034-ca99ff3bf77d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":185,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-e0911f0f-f96e-4c58-b305-2a1bec2c3a61","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-e0911f0f-f96e-4c58-b305-2a1bec2c3a61","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":186,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b19fcb5d-49ff-495c-b79a-373e8e76cfe6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-b19fcb5d-49ff-495c-b79a-373e8e76cfe6","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":187,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-54483918-60e7-4988-b1b6-24b889c8ab68","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-54483918-60e7-4988-b1b6-24b889c8ab68","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":188,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-d79d29f3-fdbc-41ba-8ad3-b46b00f66225","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-d79d29f3-fdbc-41ba-8ad3-b46b00f66225","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":189,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b0ea2727-70d7-4802-9ec5-af82ddb4a8cb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-b0ea2727-70d7-4802-9ec5-af82ddb4a8cb","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":190,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-66f8e7c4-75bb-45b3-a2e3-afb3dd897d30","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-66f8e7c4-75bb-45b3-a2e3-afb3dd897d30","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":191,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-e61d9da2-08a8-452a-899a-24c59f2f2ef0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-e61d9da2-08a8-452a-899a-24c59f2f2ef0","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":192,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-956fed35-1b4c-4af6-8622-484e434b5446","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-956fed35-1b4c-4af6-8622-484e434b5446","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":193,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-8f66bad6-4fdc-4590-90b4-59e88c1dc0ba","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-8f66bad6-4fdc-4590-90b4-59e88c1dc0ba","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":194,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-61671826-247d-457d-9103-63c9b20a6c39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-61671826-247d-457d-9103-63c9b20a6c39","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":195,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-0c44283c-14d2-4e1b-9ec0-840c7aad3abe","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-22-23-Corpnet-0c44283c-14d2-4e1b-9ec0-840c7aad3abe","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":196,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-6622952a-6212-41e4-b49c-f389f11c6c16","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-6622952a-6212-41e4-b49c-f389f11c6c16","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":197,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-15b7533a-0419-4bc6-b232-403793f1b6de","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-15b7533a-0419-4bc6-b232-403793f1b6de","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":198,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-da08eba0-4ef0-4817-9b1d-94cf3a934f0c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-da08eba0-4ef0-4817-9b1d-94cf3a934f0c","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":199,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-2fdeccd1-2bae-4ac6-b5b7-7b937cfa1851","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-2fdeccd1-2bae-4ac6-b5b7-7b937cfa1851","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":200,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-b1b813ac-b38b-4964-9ac3-6f584108775d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-b1b813ac-b38b-4964-9ac3-6f584108775d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":201,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-76a90ef6-36d0-466c-a12e-e8716e8cb794","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-76a90ef6-36d0-466c-a12e-e8716e8cb794","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":202,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-7e1fcb97-8bbf-458a-a74b-a36b774b30c5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-7e1fcb97-8bbf-458a-a74b-a36b774b30c5","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":203,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-27e4b2fa-3c35-417d-a1c3-08c383b12766","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-27e4b2fa-3c35-417d-a1c3-08c383b12766","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":204,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-e70b420c-e082-4f68-843e-3ed3ead0433d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-e70b420c-e082-4f68-843e-3ed3ead0433d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":205,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-ac1e71d9-d137-4335-9e40-13186553369d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-ac1e71d9-d137-4335-9e40-13186553369d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":206,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-45457c6d-83ce-4848-9045-7bed91e18dd9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-45457c6d-83ce-4848-9045-7bed91e18dd9","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":207,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-defa16e6-f3fb-4d0c-92c4-2c5194d5db39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-defa16e6-f3fb-4d0c-92c4-2c5194d5db39","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":208,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-b74675d2-bfd2-42d7-afe3-e8041000ab4f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-b74675d2-bfd2-42d7-afe3-e8041000ab4f","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":209,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-c24652b7-b08b-43fd-9068-5948b2ba290a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-c24652b7-b08b-43fd-9068-5948b2ba290a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":210,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-d5ad01aa-95a5-4efa-a568-341cbf39f2d8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-d5ad01aa-95a5-4efa-a568-341cbf39f2d8","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":211,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-d3256b5f-dddf-4f2a-817d-3f28d44d5a28","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-d3256b5f-dddf-4f2a-817d-3f28d44d5a28","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":212,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-25b2be63-0697-49fe-be84-00aa4fb0b570","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-25b2be63-0697-49fe-be84-00aa4fb0b570","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":213,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-034dccb9-47e3-493e-9582-7ca164175bea","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-034dccb9-47e3-493e-9582-7ca164175bea","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":214,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-9419d301-98b1-4c57-b7b9-9af6ac0fc099","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-9419d301-98b1-4c57-b7b9-9af6ac0fc099","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":215,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-052012fe-0ebc-4e5a-8300-add82936e2ea","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-052012fe-0ebc-4e5a-8300-add82936e2ea","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":216,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-3e557358-ee76-475c-899e-90ead9742fa6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-3e557358-ee76-475c-899e-90ead9742fa6","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":217,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-30f8d497-2a00-4e5d-b78e-b5cae56e614d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-30f8d497-2a00-4e5d-b78e-b5cae56e614d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":218,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-ec4bb0ad-ff1d-4089-a4ab-d48c2a23c6ec","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-ec4bb0ad-ff1d-4089-a4ab-d48c2a23c6ec","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":219,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-4cf1d73b-d863-4910-8d62-9b6f74d2cf8d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-4cf1d73b-d863-4910-8d62-9b6f74d2cf8d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":220,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-391d1b12-bbd0-419b-8fe9-847266d10cc7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-391d1b12-bbd0-419b-8fe9-847266d10cc7","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":221,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-6f732f61-d133-4cf6-a51c-acb079f47e95","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-6f732f61-d133-4cf6-a51c-acb079f47e95","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":222,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-7b581da6-3cc6-48ad-81e7-bfe9e5c1821d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-7b581da6-3cc6-48ad-81e7-bfe9e5c1821d","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":223,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-c5bb2602-7f80-418c-979a-48aba83dc759","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-c5bb2602-7f80-418c-979a-48aba83dc759","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":224,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-dae78364-e11d-4b12-a307-bde559c4f3ff","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-1433-Corpnet-dae78364-e11d-4b12-a307-bde559c4f3ff","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":225,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-07db793a-2809-49cd-809c-cbac1d78d920","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-07db793a-2809-49cd-809c-cbac1d78d920","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":226,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-7623d8bb-157e-44d1-a8cf-bef272097dc0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-7623d8bb-157e-44d1-a8cf-bef272097dc0","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":227,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-1f1cb34e-44d0-4997-a85c-8549c56347b1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-1f1cb34e-44d0-4997-a85c-8549c56347b1","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":228,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-5eadff45-0135-41b0-af23-87517d12922a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-5eadff45-0135-41b0-af23-87517d12922a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":229,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-82712c0c-5e2e-4947-a134-7843d86d1cba","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-82712c0c-5e2e-4947-a134-7843d86d1cba","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":230,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-7ea06896-846a-416d-a818-16df1fc03f1a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-7ea06896-846a-416d-a818-16df1fc03f1a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":231,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-e4d54614-b7ca-4017-b083-aa47df57dc99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-e4d54614-b7ca-4017-b083-aa47df57dc99","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":232,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-193ef0d5-6126-4459-925c-afccf5ecf136","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-193ef0d5-6126-4459-925c-afccf5ecf136","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":233,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-70afac30-e977-4272-b622-258dbef83403","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-70afac30-e977-4272-b622-258dbef83403","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":234,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-7d33425c-4de5-4829-a5b7-fbd512b646ed","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-7d33425c-4de5-4829-a5b7-fbd512b646ed","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":235,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-b83e868f-a1f9-4f16-a3d1-4510ff4933ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-b83e868f-a1f9-4f16-a3d1-4510ff4933ef","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":236,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-bb2c34a7-87d6-496d-8c67-af4b51af9699","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-bb2c34a7-87d6-496d-8c67-af4b51af9699","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":237,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c48ba153-50cb-4bc0-bd67-185cf32fc23e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-c48ba153-50cb-4bc0-bd67-185cf32fc23e","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":238,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-5e38f0b8-590f-4039-a811-947aade47138","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-5e38f0b8-590f-4039-a811-947aade47138","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":239,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-341ce1fc-a547-4588-bf55-8d48932eb267","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-341ce1fc-a547-4588-bf55-8d48932eb267","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":240,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-6cbb0e73-2036-4957-a865-b9ee92bcd325","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-6cbb0e73-2036-4957-a865-b9ee92bcd325","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":241,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c364cc3b-f847-447d-9a73-75b558d60a7b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-c364cc3b-f847-447d-9a73-75b558d60a7b","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":242,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-2a7ec1c6-169a-4a63-a682-7c4decc6f2ac","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-2a7ec1c6-169a-4a63-a682-7c4decc6f2ac","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":243,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-904db094-78a1-4ccb-a51f-9dd907230a60","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-904db094-78a1-4ccb-a51f-9dd907230a60","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":244,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-024b95b2-79be-43d8-b664-817046ae6c7f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-024b95b2-79be-43d8-b664-817046ae6c7f","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":245,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-400bf30e-5d73-4330-af77-c235063b8efd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-400bf30e-5d73-4330-af77-c235063b8efd","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":246,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-fcd7ec2e-65cf-4012-aac2-0d9634797fd6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-fcd7ec2e-65cf-4012-aac2-0d9634797fd6","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":247,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-8dc889b3-0da2-49e1-9f00-75c3d70ad576","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-8dc889b3-0da2-49e1-9f00-75c3d70ad576","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":248,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-d25c668f-544f-4355-9630-44aa2e9f0663","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-d25c668f-544f-4355-9630-44aa2e9f0663","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":249,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-eec264eb-c7d7-4c09-8485-0adb3aa1c495","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-eec264eb-c7d7-4c09-8485-0adb3aa1c495","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":250,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-60f3ef75-4201-433f-8e17-68fadce7bbbc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-60f3ef75-4201-433f-8e17-68fadce7bbbc","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":251,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-4ccdb5db-3e0a-4086-8e33-03f287bd9316","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-4ccdb5db-3e0a-4086-8e33-03f287bd9316","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":252,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-3172aa4f-ae77-47c7-aef4-16af83447063","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-3172aa4f-ae77-47c7-aef4-16af83447063","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":253,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-9580d464-ee74-4442-a8b7-cb55a01d7d91","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-445-Corpnet-9580d464-ee74-4442-a8b7-cb55a01d7d91","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":254,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-85930d1b-1c7f-45a3-89e3-5f24f83b2f29","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-85930d1b-1c7f-45a3-89e3-5f24f83b2f29","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":255,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-223645ce-a90d-40bf-af2d-fb26dfa64a80","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-223645ce-a90d-40bf-af2d-fb26dfa64a80","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":256,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-645b1f89-7545-4bbf-a728-d6d5d7272695","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-645b1f89-7545-4bbf-a728-d6d5d7272695","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":257,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-3ce11fea-2481-489f-a214-6bf8ec54d3b6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-3ce11fea-2481-489f-a214-6bf8ec54d3b6","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":258,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-a618327d-716b-4970-b5f1-af24298b1ca1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-a618327d-716b-4970-b5f1-af24298b1ca1","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":259,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-beaf39b6-57fb-483f-9b24-10f2ee61f66a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-beaf39b6-57fb-483f-9b24-10f2ee61f66a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":260,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-9bd493dc-5522-4191-a755-a6c479ad4da6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-9bd493dc-5522-4191-a755-a6c479ad4da6","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":261,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-7d9770c5-8900-4004-9307-249f110df402","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-7d9770c5-8900-4004-9307-249f110df402","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":262,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-f1f2899e-71fa-43ae-aa60-d7a5a4eb9e56","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-f1f2899e-71fa-43ae-aa60-d7a5a4eb9e56","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":263,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-4ca12ca7-7b79-4b4e-94da-ae6f9bc61094","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-4ca12ca7-7b79-4b4e-94da-ae6f9bc61094","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":264,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-df2c52ef-56c3-4cc5-8ae9-20878e42eda9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-df2c52ef-56c3-4cc5-8ae9-20878e42eda9","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":265,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-e2834af2-d5cd-43cd-9de6-38f045256c6a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-e2834af2-d5cd-43cd-9de6-38f045256c6a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":266,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-5638d247-381f-4273-92f4-0dd025df9cb3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-5638d247-381f-4273-92f4-0dd025df9cb3","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":267,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-3ac13732-885b-4480-b72c-2f67c5c67190","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-3ac13732-885b-4480-b72c-2f67c5c67190","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":268,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-1e4d2168-767b-4fef-9ba2-cd469b211b54","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-1e4d2168-767b-4fef-9ba2-cd469b211b54","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":269,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-ba429225-8e34-4007-af59-bf3fbd353338","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-ba429225-8e34-4007-af59-bf3fbd353338","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":270,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-0c58aab3-1091-4c70-a607-dcdbeb3036c4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-0c58aab3-1091-4c70-a607-dcdbeb3036c4","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":271,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-edba92da-0019-4cb8-b16d-b64fee3d6c6a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-edba92da-0019-4cb8-b16d-b64fee3d6c6a","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":272,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-ff8c44f1-fcc9-4eb3-825d-104092e4aee0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-ff8c44f1-fcc9-4eb3-825d-104092e4aee0","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":273,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-fe873b17-bc27-49ba-8e3a-825f7b909acf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-fe873b17-bc27-49ba-8e3a-825f7b909acf","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":274,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-ee4eef88-e47e-4e1f-b39e-877ad0efc9cb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-ee4eef88-e47e-4e1f-b39e-877ad0efc9cb","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":275,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-214b00c4-56d5-41bf-a22e-c821a5eee3f4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-214b00c4-56d5-41bf-a22e-c821a5eee3f4","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":276,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-f2821a71-20c3-43da-b532-c32ce4c0ae86","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-f2821a71-20c3-43da-b532-c32ce4c0ae86","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":277,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-bf5e2027-bbbe-4b14-928d-5fb2cf37cd73","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-bf5e2027-bbbe-4b14-928d-5fb2cf37cd73","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":278,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-f9436aa5-e1c6-484b-ab41-3e0d8c95fa83","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-f9436aa5-e1c6-484b-ab41-3e0d8c95fa83","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":279,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-69a96234-889d-468b-bce1-203e6bba6207","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-69a96234-889d-468b-bce1-203e6bba6207","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":280,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-dbb72e89-6c5a-404f-b834-a4fb49be1d01","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-dbb72e89-6c5a-404f-b834-a4fb49be1d01","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":281,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-9669ca53-8990-4941-b2c7-36acc2c51b70","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-9669ca53-8990-4941-b2c7-36acc2c51b70","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":282,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-3a3cc71a-2d52-4a2e-8d06-68530717bc02","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/securityRules/Cleanuptool-135-Corpnet-3a3cc71a-2d52-4a2e-8d06-68530717bc02","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":283,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/defaultSecurityRules/AllowVnetInBound","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/defaultSecurityRules/DenyAllInBound","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg7/defaultSecurityRules/DenyAllOutBound","etag":"W/\"2eea4f0c-7e6a-4ab4-96f1-a7ae867bf034\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"TestVM2NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG","etag":"W/\"6e7e041b-4882-4085-a4fd-df61af1143df\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0e78dca5-9996-4311-9f14-6be7a09e2a21","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG/securityRules/default-allow-ssh","etag":"W/\"6e7e041b-4882-4085-a4fd-df61af1143df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6e7e041b-4882-4085-a4fd-df61af1143df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6e7e041b-4882-4085-a4fd-df61af1143df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"6e7e041b-4882-4085-a4fd-df61af1143df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6e7e041b-4882-4085-a4fd-df61af1143df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6e7e041b-4882-4085-a4fd-df61af1143df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVM2NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6e7e041b-4882-4085-a4fd-df61af1143df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVM2VMNic"}]}},{"name":"TestVMNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG","etag":"W/\"aaa81a79-e4e1-4561-9528-d86fd729d0f3\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"7f09f716-e11d-48b8-b4f9-f8eab6478607","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/securityRules/default-allow-ssh","etag":"W/\"aaa81a79-e4e1-4561-9528-d86fd729d0f3\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"aaa81a79-e4e1-4561-9528-d86fd729d0f3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"aaa81a79-e4e1-4561-9528-d86fd729d0f3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"aaa81a79-e4e1-4561-9528-d86fd729d0f3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"aaa81a79-e4e1-4561-9528-d86fd729d0f3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"aaa81a79-e4e1-4561-9528-d86fd729d0f3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"aaa81a79-e4e1-4561-9528-d86fd729d0f3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVMVMNic"}]}},{"name":"pysecgroupc575136b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b","etag":"W/\"aa0fe286-bc49-4952-9e1f-02314ec233f9\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"91f30cf8-1143-4469-bf12-33d7870cb432","securityRules":[{"name":"pysecgrouprulec575136b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b","etag":"W/\"aa0fe286-bc49-4952-9e1f-02314ec233f9\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","description":"Test + security rule","protocol":"Tcp","sourcePortRange":"655","destinationPortRange":"123-3500","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound","etag":"W/\"aa0fe286-bc49-4952-9e1f-02314ec233f9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"aa0fe286-bc49-4952-9e1f-02314ec233f9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound","etag":"W/\"aa0fe286-bc49-4952-9e1f-02314ec233f9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"aa0fe286-bc49-4952-9e1f-02314ec233f9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"aa0fe286-bc49-4952-9e1f-02314ec233f9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound","etag":"W/\"aa0fe286-bc49-4952-9e1f-02314ec233f9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"wilxvm1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"71059020-7d6d-4c97-816c-019fe1d2d224","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/default-allow-ssh","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d5c72432-9ede-42a1-9195-d7590849c73c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-d5c72432-9ede-42a1-9195-d7590849c73c","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4af551ee-c77e-4778-b565-81c77aef3fa3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-4af551ee-c77e-4778-b565-81c77aef3fa3","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-07211417-ead7-4ea6-abea-5047d02b076f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-07211417-ead7-4ea6-abea-5047d02b076f","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6944eaa5-13c3-4204-b888-de52b54e4a15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-6944eaa5-13c3-4204-b888-de52b54e4a15","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-266aabcf-2383-4e02-933f-f0530625cfcd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-266aabcf-2383-4e02-933f-f0530625cfcd","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a0379755-d0af-4e36-b09d-aeaf7648a067","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-a0379755-d0af-4e36-b09d-aeaf7648a067","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-85368e2c-418f-4cdd-b747-1f008c93da8a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-85368e2c-418f-4cdd-b747-1f008c93da8a","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-359f8ec5-314a-4573-ac7c-6e28765ee554","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-359f8ec5-314a-4573-ac7c-6e28765ee554","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-364605cf-c0fd-41fe-879e-a2e18dbf606e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-364605cf-c0fd-41fe-879e-a2e18dbf606e","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1b687a08-1a5e-4777-91fd-9015e6c3d043","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-1b687a08-1a5e-4777-91fd-9015e6c3d043","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-db4b6694-6bb0-4cc1-aa12-dfc33f710dc4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-db4b6694-6bb0-4cc1-aa12-dfc33f710dc4","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-ff475b04-2a55-46ed-b3ce-fe9d3bf3b74f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-ff475b04-2a55-46ed-b3ce-fe9d3bf3b74f","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-26793f86-9137-4ed8-aafe-0a5e10ddb886","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-26793f86-9137-4ed8-aafe-0a5e10ddb886","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-bbabe42f-4b18-4025-bb1c-5c41e2d36116","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-bbabe42f-4b18-4025-bb1c-5c41e2d36116","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2f008199-2521-447e-a5a3-eb6784cb3c74","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-2f008199-2521-447e-a5a3-eb6784cb3c74","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5f1013a6-48f4-4aae-9b32-d8bbf725a45d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-5f1013a6-48f4-4aae-9b32-d8bbf725a45d","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f1802911-c603-42d0-a35a-2630f40eb5cb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-f1802911-c603-42d0-a35a-2630f40eb5cb","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-593e79fb-45a9-49f0-a44e-e5f79b51b339","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-593e79fb-45a9-49f0-a44e-e5f79b51b339","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f9000f47-7da3-4db5-9e76-790315bce2fe","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-f9000f47-7da3-4db5-9e76-790315bce2fe","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1e29c860-a833-4a91-8ee2-7987a646c797","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-1e29c860-a833-4a91-8ee2-7987a646c797","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-40f277e7-ad6a-4d00-a5c1-8ab383eb9474","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-40f277e7-ad6a-4d00-a5c1-8ab383eb9474","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-82345f21-1f14-4a2f-9b7a-5421d6fadd90","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-82345f21-1f14-4a2f-9b7a-5421d6fadd90","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-fe91ec23-2b53-4a31-8738-86a7bf1d9739","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-fe91ec23-2b53-4a31-8738-86a7bf1d9739","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-bbebc444-5dee-4720-b71e-9aa0583a38d5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-bbebc444-5dee-4720-b71e-9aa0583a38d5","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-66206164-a588-4887-a394-4c6c2069a143","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-66206164-a588-4887-a394-4c6c2069a143","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d9f12e44-4bd8-4ebb-9b75-1a3a635ede2b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-d9f12e44-4bd8-4ebb-9b75-1a3a635ede2b","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-ff9d2fe3-6b11-4c91-b8b4-5262590db683","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-ff9d2fe3-6b11-4c91-b8b4-5262590db683","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-cbd36734-c217-42e1-b58f-3750e2d7702b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-cbd36734-c217-42e1-b58f-3750e2d7702b","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9872ce6e-0671-4f9d-a0ff-4cc70430006b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/securityRules/Cleanuptool-22-Corpnet-9872ce6e-0671-4f9d-a0ff-4cc70430006b","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkSecurityGroups/wilxvm1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6361bd0a-d04f-4fc5-a2e7-42c53975ee7b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkInterfaces/wilxvm1VMNic"}]}},{"name":"ygsrcnsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Failed","resourceGuid":"34793fa9-f38a-49a4-836f-d47c2ac2f5a8","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Failed","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Failed","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Failed","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Failed","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Failed","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ygsrc/providers/Microsoft.Network/networkSecurityGroups/ygsrcnsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"65faf37a-6b1c-48de-bfcd-014208e87897\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Failed","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"abunt4-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"630e411d-8fe2-4a1b-89d4-2a7555b0dc94","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/SSH","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5cdd9834-5600-4ab1-80e4-d3d07f112774","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-5cdd9834-5600-4ab1-80e4-d3d07f112774","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-ff66da68-f0a1-44d6-8cf2-ddb0006a2c16","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-ff66da68-f0a1-44d6-8cf2-ddb0006a2c16","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7df13699-673d-4863-931f-566acf869f5f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-7df13699-673d-4863-931f-566acf869f5f","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1d1d09ac-24bd-48e5-b82b-914abf89dcd3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-1d1d09ac-24bd-48e5-b82b-914abf89dcd3","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a7b1318b-6e2c-4e60-8392-ce5ccbdcb4d3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-a7b1318b-6e2c-4e60-8392-ce5ccbdcb4d3","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4f34f69c-5b7f-4df7-b1fc-3cbebe6057da","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-4f34f69c-5b7f-4df7-b1fc-3cbebe6057da","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-996a7f3a-aeca-4c02-923e-65766e0c42cd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-996a7f3a-aeca-4c02-923e-65766e0c42cd","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a45fb479-2a3d-4dc9-973a-78e8f05fc1c2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-a45fb479-2a3d-4dc9-973a-78e8f05fc1c2","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e8007265-0551-4d4d-94f7-be4aa04c3ca9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-e8007265-0551-4d4d-94f7-be4aa04c3ca9","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-874e1154-7e97-4d49-9675-fe90dbd9c6f0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-874e1154-7e97-4d49-9675-fe90dbd9c6f0","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-26f87da1-85de-4995-ab9b-e0c3786481b2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-26f87da1-85de-4995-ab9b-e0c3786481b2","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-ceddcb8c-06c4-4fc2-a603-81ee82269965","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-ceddcb8c-06c4-4fc2-a603-81ee82269965","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-b7553743-4cad-4200-9906-f828122d789c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-b7553743-4cad-4200-9906-f828122d789c","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f879d372-4464-4a84-9a59-54562af11711","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-f879d372-4464-4a84-9a59-54562af11711","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0a209086-448c-4a72-a6e5-40b08c1fef90","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-0a209086-448c-4a72-a6e5-40b08c1fef90","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-68c6bd57-8e0d-4304-a11a-6820d1d70d8c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-68c6bd57-8e0d-4304-a11a-6820d1d70d8c","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-78871fda-c586-4b23-b6ba-054a7b5e9ed3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-78871fda-c586-4b23-b6ba-054a7b5e9ed3","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9967f9bd-0d62-47ca-a854-fbd8c2be3c99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-9967f9bd-0d62-47ca-a854-fbd8c2be3c99","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c379f5a4-4fe3-4097-9b42-619a56ffc040","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-c379f5a4-4fe3-4097-9b42-619a56ffc040","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6cced4e1-5eac-4622-acbc-c83af1187f6b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-6cced4e1-5eac-4622-acbc-c83af1187f6b","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3e9aca17-8b58-459f-b119-4de0538bc8ac","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-3e9aca17-8b58-459f-b119-4de0538bc8ac","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f2cb9c2c-61b6-48d1-a72f-d800fa851e1f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-f2cb9c2c-61b6-48d1-a72f-d800fa851e1f","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-27ce80ed-5371-4c16-b82c-da1b1cfb298e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-27ce80ed-5371-4c16-b82c-da1b1cfb298e","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5c6db514-aa4c-4042-b5b1-86e22ed2db5c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-5c6db514-aa4c-4042-b5b1-86e22ed2db5c","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a7675550-311a-4a08-a5b3-dfc87f49476b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-a7675550-311a-4a08-a5b3-dfc87f49476b","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e43c5bb7-c151-4f78-8405-0c0cf149fc23","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-e43c5bb7-c151-4f78-8405-0c0cf149fc23","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c161d174-cc7a-4754-ad87-d523d11cf365","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-c161d174-cc7a-4754-ad87-d523d11cf365","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d1f29312-7060-4090-8d2f-c240e11d4bc8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-d1f29312-7060-4090-8d2f-c240e11d4bc8","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-05d428e4-eb7f-4ccb-a82a-ed53175f98ee","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/securityRules/Cleanuptool-22-Corpnet-05d428e4-eb7f-4ccb-a82a-ed53175f98ee","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abunt4-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"16b6dc47-8088-464b-b81b-176a8bb73a6b\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abunt4752"}]}},{"name":"abuntu","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"848615e3-76b2-4bfb-8ba7-c4bde9830b73","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/default-allow-ssh","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-195a61bc-240e-467b-a312-e35c0ccdae7c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-195a61bc-240e-467b-a312-e35c0ccdae7c","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-659a55d1-8ed8-482a-b42c-6a8e21b9c35a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-659a55d1-8ed8-482a-b42c-6a8e21b9c35a","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-dda98c02-f55c-498b-8b08-89a22e2ff3df","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-dda98c02-f55c-498b-8b08-89a22e2ff3df","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2c40980c-9ade-4656-9c04-d6084d1340ee","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-2c40980c-9ade-4656-9c04-d6084d1340ee","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-31060668-3c09-48f8-8ee3-06e0846fe6a2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-31060668-3c09-48f8-8ee3-06e0846fe6a2","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e160fc1d-238d-4c35-88d8-58d6823fdcb6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-e160fc1d-238d-4c35-88d8-58d6823fdcb6","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7d3e4b4d-27c7-44c8-99d8-65408a5c360c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-7d3e4b4d-27c7-44c8-99d8-65408a5c360c","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6b91d914-4297-4158-8ee3-f3076d70e352","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-6b91d914-4297-4158-8ee3-f3076d70e352","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-daa487cb-4782-450f-939f-d513dfe1c98f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-daa487cb-4782-450f-939f-d513dfe1c98f","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-820a0c33-19eb-451f-859a-27cdb07eaeb5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-820a0c33-19eb-451f-859a-27cdb07eaeb5","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-986a74f0-1c01-4bd8-a466-14f72617c7ac","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-986a74f0-1c01-4bd8-a466-14f72617c7ac","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-69e9ae64-90c3-4639-922d-a59e1febf520","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-69e9ae64-90c3-4639-922d-a59e1febf520","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-42099cf1-dfac-40a5-a0c0-dd52c849e39a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-42099cf1-dfac-40a5-a0c0-dd52c849e39a","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-cc54f1dc-753f-4164-8178-16fc2997f13d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-cc54f1dc-753f-4164-8178-16fc2997f13d","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-edbf2595-c860-40e1-8d0a-ba18cbb85812","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-edbf2595-c860-40e1-8d0a-ba18cbb85812","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-adf67a93-64c0-45e5-868f-48162df16162","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-adf67a93-64c0-45e5-868f-48162df16162","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-ecdd39fd-b1c8-4988-aab4-7ecd5206a085","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-ecdd39fd-b1c8-4988-aab4-7ecd5206a085","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-833f1305-3e5e-4212-a3f8-05593fdf9033","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-833f1305-3e5e-4212-a3f8-05593fdf9033","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-fa2a4fdd-a3da-41a8-85c6-7014d6327bf5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-fa2a4fdd-a3da-41a8-85c6-7014d6327bf5","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a49968ca-5793-43f9-a1ee-3ddaa4429a2e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-a49968ca-5793-43f9-a1ee-3ddaa4429a2e","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-71529ff2-5ff3-4cbd-8755-d75011949df8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-71529ff2-5ff3-4cbd-8755-d75011949df8","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-270d608f-9770-4ccd-8a1e-b5d80f223b53","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-270d608f-9770-4ccd-8a1e-b5d80f223b53","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-8eccb1a2-c912-4cde-83ab-65ac1f977e10","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-8eccb1a2-c912-4cde-83ab-65ac1f977e10","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-378ebab8-cebb-41b7-810d-a4e0ea3a3593","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-378ebab8-cebb-41b7-810d-a4e0ea3a3593","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-376eca27-1e71-437c-b4d2-f20a254d9fc7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-376eca27-1e71-437c-b4d2-f20a254d9fc7","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5c5c7d77-5e22-49af-bcf8-196f2f1f5cfd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-5c5c7d77-5e22-49af-bcf8-196f2f1f5cfd","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-96be7e96-fecb-4027-88f9-6dce259de855","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-96be7e96-fecb-4027-88f9-6dce259de855","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-56659de6-92bf-4f1b-9587-c8aea3f8bb4e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-56659de6-92bf-4f1b-9587-c8aea3f8bb4e","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f82f2f2c-a8d4-4091-85db-ffe5f366dcdd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/securityRules/Cleanuptool-22-Corpnet-f82f2f2c-a8d4-4091-85db-ffe5f366dcdd","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/defaultSecurityRules/AllowVnetInBound","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/defaultSecurityRules/DenyAllInBound","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu/defaultSecurityRules/DenyAllOutBound","etag":"W/\"c57b47dc-22d4-49a3-9e66-f886d297df6f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu259"}]}},{"name":"abuntu1-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"67f57721-4835-4b4c-a9b9-6f5924711a38","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/SSH","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3abbdd38-c477-4296-a238-ddeb158fa811","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-3abbdd38-c477-4296-a238-ddeb158fa811","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f0743f6b-8917-4e39-bda4-878a2c6aa59e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-f0743f6b-8917-4e39-bda4-878a2c6aa59e","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d262dc41-67a6-4f8b-ac2c-2510cb849149","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-d262dc41-67a6-4f8b-ac2c-2510cb849149","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1885f6ca-98d8-4095-a7a4-9859d7ebc212","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-1885f6ca-98d8-4095-a7a4-9859d7ebc212","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-971e639d-1e1a-4442-ab24-8bbca75c7eb8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-971e639d-1e1a-4442-ab24-8bbca75c7eb8","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-8d1c57e9-cca6-4d7c-a21d-f40e346d0a84","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-8d1c57e9-cca6-4d7c-a21d-f40e346d0a84","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-cfafb526-e7ea-449d-9790-44c81a5911d9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-cfafb526-e7ea-449d-9790-44c81a5911d9","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a3e589fb-4764-46e4-98b0-2d1101df6add","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-a3e589fb-4764-46e4-98b0-2d1101df6add","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9dd22018-6d16-4eb7-b8af-ffeb5570de6b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-9dd22018-6d16-4eb7-b8af-ffeb5570de6b","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e2bab132-ddf3-4dc0-a08d-ccedcd9032c7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-e2bab132-ddf3-4dc0-a08d-ccedcd9032c7","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4f0a5ea6-bc65-4221-a7df-894ebe32ee1a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-4f0a5ea6-bc65-4221-a7df-894ebe32ee1a","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e5c67924-1816-4a96-ac65-8fdb7e68f363","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-e5c67924-1816-4a96-ac65-8fdb7e68f363","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-55f5d688-2048-4949-8bc1-57892c2b7ff3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-55f5d688-2048-4949-8bc1-57892c2b7ff3","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-91884cb3-7967-4df5-a93e-8fb6f0d95266","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-91884cb3-7967-4df5-a93e-8fb6f0d95266","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4f77576c-8e0d-4f66-9caf-7a33a554ad9e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-4f77576c-8e0d-4f66-9caf-7a33a554ad9e","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f17cd7d7-9267-4cba-ad11-1ef540536e4c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-f17cd7d7-9267-4cba-ad11-1ef540536e4c","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4a7ee1c6-744a-402d-80a0-9a19beba484b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-4a7ee1c6-744a-402d-80a0-9a19beba484b","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4a33d457-118d-4e05-8c03-57047421fedf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-4a33d457-118d-4e05-8c03-57047421fedf","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-24262458-c640-418d-ab65-2ecc03f0015a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-24262458-c640-418d-ab65-2ecc03f0015a","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2ff65d5e-9a58-447b-b9fa-b6d0e3a22aa0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-2ff65d5e-9a58-447b-b9fa-b6d0e3a22aa0","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5fe0e22d-86fb-4b81-a86f-b0f4cb4ae64b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-5fe0e22d-86fb-4b81-a86f-b0f4cb4ae64b","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-164e9e72-758d-4c57-a5b2-42809064229c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-164e9e72-758d-4c57-a5b2-42809064229c","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5cb10b6e-bf10-47b2-99fd-82fc95ff5777","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-5cb10b6e-bf10-47b2-99fd-82fc95ff5777","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-24ee6f2a-6b48-4e69-a150-30261ae821fb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-24ee6f2a-6b48-4e69-a150-30261ae821fb","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a15a74d0-2d3d-4689-8f22-0fa84008f674","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-a15a74d0-2d3d-4689-8f22-0fa84008f674","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-69698971-ab13-49f2-85cf-29b7c770224a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-69698971-ab13-49f2-85cf-29b7c770224a","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-37cfb144-1988-4ef6-9567-fea86691ede9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-37cfb144-1988-4ef6-9567-fea86691ede9","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e403f09d-cc28-4df9-9ffa-39e87e2ae9d7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-e403f09d-cc28-4df9-9ffa-39e87e2ae9d7","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a9e5106b-da03-4c4d-b7c9-b7298a26b9b7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/securityRules/Cleanuptool-22-Corpnet-a9e5106b-da03-4c4d-b7c9-b7298a26b9b7","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu1-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"b4eb8d0d-c1b9-4dc6-8e4e-c826a1a578c6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu1428"}]}},{"name":"abuntu2-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"e8761157-24af-4ef9-bed9-f2335d1264c1","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/SSH","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-716aca2d-9a8a-43ea-88d7-a82f20e9599a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-716aca2d-9a8a-43ea-88d7-a82f20e9599a","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f4b31a16-a928-40f8-90c0-125cb9beb367","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-f4b31a16-a928-40f8-90c0-125cb9beb367","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7c408158-3942-4423-acb4-499e4778960c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-7c408158-3942-4423-acb4-499e4778960c","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-ced5bfdd-449b-4b28-b852-f6d0898f48ac","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-ced5bfdd-449b-4b28-b852-f6d0898f48ac","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7241435b-a4f4-4536-980a-412b9e1f685a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-7241435b-a4f4-4536-980a-412b9e1f685a","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9d9754a5-9925-43fa-978a-e9b760b38a68","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-9d9754a5-9925-43fa-978a-e9b760b38a68","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-371326f4-c29e-4036-82b8-09d0a068b310","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-371326f4-c29e-4036-82b8-09d0a068b310","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-bde3db36-81d1-46a1-9504-d1f7fbef898c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-bde3db36-81d1-46a1-9504-d1f7fbef898c","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3beb69b5-7cfb-4033-b61a-f7e10b1f6a56","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-3beb69b5-7cfb-4033-b61a-f7e10b1f6a56","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-77d2b051-57b8-464b-bc08-63f7b457793b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-77d2b051-57b8-464b-bc08-63f7b457793b","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c65716d5-6580-4d2e-9add-5826f6319456","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-c65716d5-6580-4d2e-9add-5826f6319456","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-84849f4a-86ad-4353-b7c4-e507e2295598","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-84849f4a-86ad-4353-b7c4-e507e2295598","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2a13a913-3925-459b-a998-b3070461ce14","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-2a13a913-3925-459b-a998-b3070461ce14","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a90e142e-747c-4e03-814f-368c70b7bf08","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-a90e142e-747c-4e03-814f-368c70b7bf08","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-64463cf8-de86-42a6-8ded-4615176907e6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-64463cf8-de86-42a6-8ded-4615176907e6","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-8839ebf8-f26a-426b-86b6-2e04a53e89d2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-8839ebf8-f26a-426b-86b6-2e04a53e89d2","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-587e08ba-6ed7-4120-88cf-087440fd5497","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-587e08ba-6ed7-4120-88cf-087440fd5497","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-18eaa53f-f152-450e-b2ac-6d242fc9e65c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-18eaa53f-f152-450e-b2ac-6d242fc9e65c","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7bdcc5db-7448-4498-a3f9-1fd923a25b68","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-7bdcc5db-7448-4498-a3f9-1fd923a25b68","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-b7ef8163-3646-4ca1-bbdb-90e3ceff3bf2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-b7ef8163-3646-4ca1-bbdb-90e3ceff3bf2","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a43f4e2c-10c4-4bcf-96ed-49ded63a8f15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-a43f4e2c-10c4-4bcf-96ed-49ded63a8f15","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9579174c-eb70-4fee-81ac-fabf2b897565","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-9579174c-eb70-4fee-81ac-fabf2b897565","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-578d5161-4cf7-447e-a0b0-9e59fc926c3f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-578d5161-4cf7-447e-a0b0-9e59fc926c3f","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9345e26c-7d28-4bc2-b7b5-61805a6905bc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-9345e26c-7d28-4bc2-b7b5-61805a6905bc","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-dc6eead2-295a-4cb2-84cb-587c7c1a3b13","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-dc6eead2-295a-4cb2-84cb-587c7c1a3b13","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e101fcae-d27d-4b89-81c6-cc1c79bee159","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-e101fcae-d27d-4b89-81c6-cc1c79bee159","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-5fbe764e-1066-4cf9-bf97-8876972eb5ec","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-5fbe764e-1066-4cf9-bf97-8876972eb5ec","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e2127762-c4c3-485e-9f83-c8ac2951cf20","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-e2127762-c4c3-485e-9f83-c8ac2951cf20","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-40c6651f-ab5a-42e1-baa0-67936d3e43a2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/securityRules/Cleanuptool-22-Corpnet-40c6651f-ab5a-42e1-baa0-67936d3e43a2","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu2-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"9956222a-7b3d-4e9a-8921-da6bb52b30bc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2817"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2743"}]}},{"name":"abuntu3-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"9d4c4a37-4793-49d3-9a0f-399dcb46a5c1","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/SSH","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1d853acb-9cdc-49e0-93ad-9dbc536844d0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-1d853acb-9cdc-49e0-93ad-9dbc536844d0","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-886c155b-49be-43fd-8de7-9f0ca3e99a1e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-886c155b-49be-43fd-8de7-9f0ca3e99a1e","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c3ab1612-53e6-4ce7-bb9e-93bd354a087c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-c3ab1612-53e6-4ce7-bb9e-93bd354a087c","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-9638cf67-b153-41fb-bd84-dbd1b68eb3db","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-9638cf67-b153-41fb-bd84-dbd1b68eb3db","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e2439fef-fa0f-4f81-af3e-6a7aa8e28afd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-e2439fef-fa0f-4f81-af3e-6a7aa8e28afd","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-25e161a0-f87d-4a7c-8406-56f8a9330fb9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-25e161a0-f87d-4a7c-8406-56f8a9330fb9","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e3e08f19-2665-483b-83d9-173fe8be4758","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-e3e08f19-2665-483b-83d9-173fe8be4758","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1a783e27-46ae-4d6e-9b7e-1de191e2eb2f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-1a783e27-46ae-4d6e-9b7e-1de191e2eb2f","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-18418134-816c-47e2-9e53-bc4e87081cad","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-18418134-816c-47e2-9e53-bc4e87081cad","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-761f6c69-5e47-4076-a363-0d94f0d0b591","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-761f6c69-5e47-4076-a363-0d94f0d0b591","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-18827e79-7c41-4dae-8465-140832f14c50","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-18827e79-7c41-4dae-8465-140832f14c50","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-4a6a982c-27dc-4b05-bd29-f25231c2c86b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-4a6a982c-27dc-4b05-bd29-f25231c2c86b","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-20f1ef9b-4a8a-41db-a1df-bf39906aec61","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-20f1ef9b-4a8a-41db-a1df-bf39906aec61","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c5c9ee3a-2358-4b31-8637-ec7d2d37db73","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-c5c9ee3a-2358-4b31-8637-ec7d2d37db73","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-377a07ff-f838-4c60-9ca9-d29c912c0bac","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-377a07ff-f838-4c60-9ca9-d29c912c0bac","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-70edcdcd-6be6-4fc0-b96f-35e01a831029","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-70edcdcd-6be6-4fc0-b96f-35e01a831029","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-46d1f2fd-0acc-4bb1-a7e6-81a398d15e7b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-46d1f2fd-0acc-4bb1-a7e6-81a398d15e7b","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-32c99f03-a723-40cd-b6b8-f4f90e7500f9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-32c99f03-a723-40cd-b6b8-f4f90e7500f9","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0e2c82ea-1323-42ec-b3d7-6eaa93f2577d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-0e2c82ea-1323-42ec-b3d7-6eaa93f2577d","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-1704ba7b-546e-4824-af31-e69133920503","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-1704ba7b-546e-4824-af31-e69133920503","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-b168b955-1960-48ff-aba6-e0e1d68e4d7e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-b168b955-1960-48ff-aba6-e0e1d68e4d7e","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7e9ed925-00fe-4d2b-9a9c-bf393247f680","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-7e9ed925-00fe-4d2b-9a9c-bf393247f680","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d36f642b-cba3-47fb-9e5b-b01703a3c31e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-d36f642b-cba3-47fb-9e5b-b01703a3c31e","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-3387b28e-9c7e-42a7-9274-24d1d1ebbfd4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-3387b28e-9c7e-42a7-9274-24d1d1ebbfd4","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-12ac97a4-1c0a-4d36-a7cd-e7fc62a9f2a3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-12ac97a4-1c0a-4d36-a7cd-e7fc62a9f2a3","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c0547fa9-7a8d-4859-83a5-803fc368b1dd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-c0547fa9-7a8d-4859-83a5-803fc368b1dd","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-eb597295-4a67-450e-8069-4601660afb94","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-eb597295-4a67-450e-8069-4601660afb94","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f67ba848-20b8-4879-af74-095e25f40654","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-f67ba848-20b8-4879-af74-095e25f40654","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7f69e316-0dca-48a1-ab66-d74ec397821b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/securityRules/Cleanuptool-22-Corpnet-7f69e316-0dca-48a1-ab66-d74ec397821b","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkSecurityGroups/abuntu3-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"897e86a6-6178-4cb8-81aa-180db621663e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu3634"}]}},{"name":"rg-cleanupservice-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"c3ed34f5-c844-4318-b56c-e1338515a1df","securityRules":[{"name":"Cleanuptool-Allow-4001","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/securityRules/Cleanuptool-Allow-4001","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-100","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/securityRules/Cleanuptool-Allow-100","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":["167.220.148.0/23","131.107.147.0/24","131.107.159.0/24","131.107.160.0/24","131.107.174.0/24","167.220.24.0/24","167.220.26.0/24","167.220.238.0/27","167.220.238.128/27","167.220.238.192/27","167.220.238.64/27","167.220.232.0/23","167.220.255.0/25","167.220.242.0/27","167.220.242.128/27","167.220.242.192/27","167.220.242.64/27","94.245.87.0/24","167.220.196.0/23","194.69.104.0/25","191.234.97.0/26","167.220.0.0/23","167.220.2.0/24","207.68.190.32/27","13.106.78.32/27","10.254.32.0/20","10.97.136.0/22","13.106.174.32/27","13.106.4.96/27"],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-101","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/securityRules/Cleanuptool-Allow-101","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":101,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-102","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/securityRules/Cleanuptool-Allow-102","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":102,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-103","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/securityRules/Cleanuptool-Deny-103","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":103,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"2ef72110-3d67-4026-adc9-43c9021c9700\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"subnets":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abunt3/subnets/default"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu-vnet/subnets/default"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu2/subnets/default"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu3/subnets/default"}]}},{"name":"rg-cleanupservice-nsg3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"d58ba515-8e0a-4f3e-9355-c78461ccb451","securityRules":[{"name":"Cleanuptool-Allow-4000","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-4000","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3999","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Deny-3999","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3999,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3998","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Deny-3998","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3998,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3997","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Deny-3997","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3997,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3996","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Deny-3996","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3996,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3995","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Deny-3995","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3995,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3994","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Deny-3994","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3994,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3993","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3993","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3993,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3992","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3992","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3992,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3991","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3991","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3991,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3990","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3990","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3990,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3989","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3989","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3989,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3988","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3988","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3988,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3987","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3987","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3987,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3986","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3986","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3986,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3985","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3985,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3984","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3984","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3984,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3983","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3983","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3983,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3982","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-Allow-3982","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3982,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-0ce66014-d3df-4828-a93d-1de405540626","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-0ce66014-d3df-4828-a93d-1de405540626","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-61c2b633-ac4d-4d0a-b1b2-2d8fc7e0a0a0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-61c2b633-ac4d-4d0a-b1b2-2d8fc7e0a0a0","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-5e676e0a-eb70-4152-b89b-fd0c245ffdfa","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-5e676e0a-eb70-4152-b89b-fd0c245ffdfa","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-e3b6715d-2f8e-48a4-a2ff-72cb85d0c934","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-e3b6715d-2f8e-48a4-a2ff-72cb85d0c934","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-bab9519f-1394-448f-9825-9a15a52c443c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-bab9519f-1394-448f-9825-9a15a52c443c","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-6fa6a909-f2a4-4602-a8cd-2d95887e14d4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-6fa6a909-f2a4-4602-a8cd-2d95887e14d4","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-acc82632-7ad2-446f-8f02-1d5ff20cd706","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-acc82632-7ad2-446f-8f02-1d5ff20cd706","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-5a75d13a-1385-44cd-a20d-ab6e5e68fa24","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-5a75d13a-1385-44cd-a20d-ab6e5e68fa24","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d62ddfbf-4c81-4368-a0db-1580db8d8695","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-d62ddfbf-4c81-4368-a0db-1580db8d8695","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-49b3fe1f-a040-4eff-8885-10e532fa0fb4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-49b3fe1f-a040-4eff-8885-10e532fa0fb4","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-19e297de-70fa-4fd8-8080-551bf88746ab","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-19e297de-70fa-4fd8-8080-551bf88746ab","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-0b605035-49dc-4b14-81da-79a082eadb6b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-0b605035-49dc-4b14-81da-79a082eadb6b","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d10b52b0-b858-4722-8d09-50ec43d348c4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-d10b52b0-b858-4722-8d09-50ec43d348c4","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-47cb7d31-05f9-486d-8151-3f0d8aa9f951","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-47cb7d31-05f9-486d-8151-3f0d8aa9f951","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f4a7dbea-4930-4a35-9203-983ab1b547cb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-f4a7dbea-4930-4a35-9203-983ab1b547cb","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-87cc754e-45c9-4ce7-9ec3-486262d8cd42","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-87cc754e-45c9-4ce7-9ec3-486262d8cd42","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-fa96df43-2439-42df-ad68-134759f4d407","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-fa96df43-2439-42df-ad68-134759f4d407","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ec77cff8-21d2-452b-a73f-8ee0834607de","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-ec77cff8-21d2-452b-a73f-8ee0834607de","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-28accaee-37e4-4fc5-9e55-6b5b54d4cb69","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-28accaee-37e4-4fc5-9e55-6b5b54d4cb69","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-65c2346d-7312-4cc9-8d67-996e509c15f2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-65c2346d-7312-4cc9-8d67-996e509c15f2","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-e115c81f-b5e7-4bbc-ad9c-f76a5aecdbd3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-e115c81f-b5e7-4bbc-ad9c-f76a5aecdbd3","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ebf8494e-954e-409c-8313-a3b6b240e311","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-ebf8494e-954e-409c-8313-a3b6b240e311","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-e03b1817-a560-4800-b4d0-4c1abf1376d2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-e03b1817-a560-4800-b4d0-4c1abf1376d2","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9d4bcae1-d36a-43b7-9aa7-4a33b8d6464d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-9d4bcae1-d36a-43b7-9aa7-4a33b8d6464d","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-73f0f71d-7db3-49bc-8dd2-a4740864bba0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-73f0f71d-7db3-49bc-8dd2-a4740864bba0","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-07e49a3e-f119-4a96-927b-5dfe1bd64ff5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-07e49a3e-f119-4a96-927b-5dfe1bd64ff5","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-75efa1a8-e82b-4dfc-9751-5b650e0320e7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-75efa1a8-e82b-4dfc-9751-5b650e0320e7","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7d07936e-ddeb-425e-9695-9c034fec8936","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-7d07936e-ddeb-425e-9695-9c034fec8936","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-11e48891-3523-4273-9378-e8b640109c0e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-3389-Corpnet-11e48891-3523-4273-9378-e8b640109c0e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-09782672-9f07-4eba-873f-77e2eb1ad230","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-09782672-9f07-4eba-873f-77e2eb1ad230","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":139,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-920add84-3689-4107-af65-4e96fbca28c5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-920add84-3689-4107-af65-4e96fbca28c5","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":140,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-7bd0d519-e6bd-4761-809b-f01cb0ff5fed","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-7bd0d519-e6bd-4761-809b-f01cb0ff5fed","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":141,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-078f7496-68c2-4e0d-8baf-191ba4e70598","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-078f7496-68c2-4e0d-8baf-191ba4e70598","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":142,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-962dab4d-c084-4400-a25f-cf20bb3a3dc8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-962dab4d-c084-4400-a25f-cf20bb3a3dc8","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":143,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-c3f826db-5e5f-402c-99b4-b4f6fcd892bd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-c3f826db-5e5f-402c-99b4-b4f6fcd892bd","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":144,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-3a01ca1a-32f3-421c-9d9d-0b85aeb4e27e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-3a01ca1a-32f3-421c-9d9d-0b85aeb4e27e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":145,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-7c4d43f3-1ae4-46f7-9c5a-e9a0068e2af7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-7c4d43f3-1ae4-46f7-9c5a-e9a0068e2af7","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":146,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-e0f7417a-ef5d-416c-8031-09f9b064432b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-e0f7417a-ef5d-416c-8031-09f9b064432b","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":147,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-2b3d4a2b-830e-4903-80bf-a3886545652e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-2b3d4a2b-830e-4903-80bf-a3886545652e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":148,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-d44d2e36-0e42-42e5-b254-eac0e24a44d3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-d44d2e36-0e42-42e5-b254-eac0e24a44d3","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":149,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-9b4ffa0b-2fb1-4463-bf2e-3b6e6c5de34b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-9b4ffa0b-2fb1-4463-bf2e-3b6e6c5de34b","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":150,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-9f0097aa-8642-4db0-92b1-bd62ccfdf744","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-9f0097aa-8642-4db0-92b1-bd62ccfdf744","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":151,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-cad3066c-a0aa-49b4-b9a4-2815c3e390fa","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-cad3066c-a0aa-49b4-b9a4-2815c3e390fa","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":152,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-6b4c6f62-88fa-45b7-9fb6-413783381a69","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-6b4c6f62-88fa-45b7-9fb6-413783381a69","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":153,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-d08ff710-c382-47dd-ba12-fe89b37a79cf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-d08ff710-c382-47dd-ba12-fe89b37a79cf","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":154,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-3899692b-14c7-49a2-ad8a-8402ae65690e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-3899692b-14c7-49a2-ad8a-8402ae65690e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":155,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-4d5a3cbd-db04-4f9d-9fba-a79dab2712ab","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-4d5a3cbd-db04-4f9d-9fba-a79dab2712ab","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":156,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-cd573ed4-02ea-4f59-98b0-3a96fbd3739f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-cd573ed4-02ea-4f59-98b0-3a96fbd3739f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":157,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-d983373c-2ddd-4951-b3b1-919ac920f2c1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-d983373c-2ddd-4951-b3b1-919ac920f2c1","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":158,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-8f683262-0601-4796-8c60-e7f60e0305d6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-8f683262-0601-4796-8c60-e7f60e0305d6","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":159,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-34788a5a-2cf8-44d7-b1bf-427402328111","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-34788a5a-2cf8-44d7-b1bf-427402328111","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":160,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-6a51471e-d51c-4c9c-884e-0c14bf5e40ca","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-6a51471e-d51c-4c9c-884e-0c14bf5e40ca","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":161,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-3a4761d1-4622-45eb-809c-0c2842f13330","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-3a4761d1-4622-45eb-809c-0c2842f13330","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":162,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-77fef7e0-b725-4308-934e-acd4c83b99a0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-77fef7e0-b725-4308-934e-acd4c83b99a0","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":163,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-a9f89eb5-8c31-45e4-8d43-9f76dce6e56d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-a9f89eb5-8c31-45e4-8d43-9f76dce6e56d","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":164,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-3abf3705-7a75-4037-ade2-70c3bb9bc418","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-3abf3705-7a75-4037-ade2-70c3bb9bc418","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":165,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-2d5078c2-6c13-47bc-9663-866d9da23e50","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-2d5078c2-6c13-47bc-9663-866d9da23e50","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":166,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-d9c179ce-52cb-4806-9203-7c13c7a5102d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-5985-5986-Corpnet-d9c179ce-52cb-4806-9203-7c13c7a5102d","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":167,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-daac4d64-353c-485a-8f1c-2710b99d9414","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-daac4d64-353c-485a-8f1c-2710b99d9414","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":168,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b3fffbb5-c1d2-4ff0-890c-56bf9ea915d5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-b3fffbb5-c1d2-4ff0-890c-56bf9ea915d5","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":169,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-d832d539-8c2a-424f-8e12-073d9163ea5e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-d832d539-8c2a-424f-8e12-073d9163ea5e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":170,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-28077185-70fc-49ee-802d-113050b49f72","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-28077185-70fc-49ee-802d-113050b49f72","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":171,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-5b72dfa0-861a-48ec-9f59-d960a2dea237","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-5b72dfa0-861a-48ec-9f59-d960a2dea237","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":172,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-75ff438b-295f-485b-bed9-460504e4a711","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-75ff438b-295f-485b-bed9-460504e4a711","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":173,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b2e09dcd-ba8a-471a-a0ac-d3adc742d992","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-b2e09dcd-ba8a-471a-a0ac-d3adc742d992","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":174,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-6a1dd794-13b6-476b-88d9-bd7afdfc94f9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-6a1dd794-13b6-476b-88d9-bd7afdfc94f9","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":175,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b429b57a-6182-4ee2-9438-13093f67eba3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-b429b57a-6182-4ee2-9438-13093f67eba3","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":176,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b47b8f89-8cf3-4720-81fc-52dee9793c8c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-b47b8f89-8cf3-4720-81fc-52dee9793c8c","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":177,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-5f6d85af-c922-4abb-9bc8-20285e57c84e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-5f6d85af-c922-4abb-9bc8-20285e57c84e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":178,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-dcf05381-3fd7-4ad8-9736-4041796a5fc6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-dcf05381-3fd7-4ad8-9736-4041796a5fc6","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":179,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-3f08a83a-ab33-4254-af0f-af62f979a9be","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-3f08a83a-ab33-4254-af0f-af62f979a9be","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":180,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-e9d60b46-c13d-4355-939e-ad9a616bd5a3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-e9d60b46-c13d-4355-939e-ad9a616bd5a3","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":181,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-7922b82d-73d6-4646-90ab-3dff822854c8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-7922b82d-73d6-4646-90ab-3dff822854c8","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":182,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-d77c16b6-0025-43aa-acbb-96691d3bfe66","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-d77c16b6-0025-43aa-acbb-96691d3bfe66","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":183,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-dae730f1-e2fc-4dc7-9846-afd6c1cdb8e6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-dae730f1-e2fc-4dc7-9846-afd6c1cdb8e6","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":184,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b5458831-8c12-4593-8898-8b7ceac60975","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-b5458831-8c12-4593-8898-8b7ceac60975","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":185,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-e1fd814e-fcfb-4b17-9e13-ac207b5fd0e9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-e1fd814e-fcfb-4b17-9e13-ac207b5fd0e9","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":186,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-2297bc4d-5a59-4af7-869b-38808b56b075","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-2297bc4d-5a59-4af7-869b-38808b56b075","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":187,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-868e9402-8046-46ba-b30d-1af584b3108c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-868e9402-8046-46ba-b30d-1af584b3108c","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":188,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-ad2d0ead-43c6-4a67-bdec-43ce20998e32","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-ad2d0ead-43c6-4a67-bdec-43ce20998e32","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":189,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-8da2eb7c-caf9-453b-ae09-e6fb3b2fffd9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-8da2eb7c-caf9-453b-ae09-e6fb3b2fffd9","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":190,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-dfbc60cb-d17c-447b-9352-f8af14db6b2e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-dfbc60cb-d17c-447b-9352-f8af14db6b2e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":191,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-41cc8d9d-905a-4987-aa0f-407abe756e19","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-41cc8d9d-905a-4987-aa0f-407abe756e19","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":192,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-a508ff11-5534-4200-beef-7727dd761989","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-a508ff11-5534-4200-beef-7727dd761989","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":193,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-06dcff62-f7c9-4bd1-abbc-6754e3afd57c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-06dcff62-f7c9-4bd1-abbc-6754e3afd57c","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":194,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-58550cf1-df9e-4a3c-8337-2ad0476669e5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-58550cf1-df9e-4a3c-8337-2ad0476669e5","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":195,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-c6ddd1b0-406c-42e8-b2d3-aab60a70536f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-22-23-Corpnet-c6ddd1b0-406c-42e8-b2d3-aab60a70536f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":196,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-ca9f5fe2-fae3-4973-a394-549b679bb15e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-ca9f5fe2-fae3-4973-a394-549b679bb15e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":197,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-2746c8a6-b697-4b1c-8f2d-702054d6a0cf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-2746c8a6-b697-4b1c-8f2d-702054d6a0cf","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":198,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-aa289ad6-4326-4502-93b1-ce85c735539c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-aa289ad6-4326-4502-93b1-ce85c735539c","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":199,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-fb034f09-5f73-4f74-9651-7405063d5066","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-fb034f09-5f73-4f74-9651-7405063d5066","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":200,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-14069919-8912-4240-b329-2296c57fb5be","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-14069919-8912-4240-b329-2296c57fb5be","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":201,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-79d8a914-7eac-49a7-9f3e-6a3c38a124f2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-79d8a914-7eac-49a7-9f3e-6a3c38a124f2","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":202,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-ff382964-a980-4f3d-bb76-d19ffe497198","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-ff382964-a980-4f3d-bb76-d19ffe497198","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":203,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-78462b94-00fd-4d77-93c1-91647efd3e4a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-78462b94-00fd-4d77-93c1-91647efd3e4a","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":204,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-9f9f2cdc-3b92-4fb6-8831-ba0221ec2407","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-9f9f2cdc-3b92-4fb6-8831-ba0221ec2407","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":205,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-e2dc690f-3ddc-409d-82d5-450db9790700","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-e2dc690f-3ddc-409d-82d5-450db9790700","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":206,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-ba359fae-babf-4c56-b9da-a93ac313d288","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-ba359fae-babf-4c56-b9da-a93ac313d288","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":207,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-293ea019-9b19-4236-8816-d60f84fe5503","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-293ea019-9b19-4236-8816-d60f84fe5503","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":208,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-fdfa5e93-3fd9-460a-8faa-2f33544efbca","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-fdfa5e93-3fd9-460a-8faa-2f33544efbca","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":209,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-948bb555-e13c-4b28-9638-da14c920e5e5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-948bb555-e13c-4b28-9638-da14c920e5e5","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":210,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-24b9d7d4-5c9d-43b1-aac8-fa418d591303","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-24b9d7d4-5c9d-43b1-aac8-fa418d591303","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":211,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-6444c3e1-27d7-4ce7-85b8-e1be6d885ef5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-6444c3e1-27d7-4ce7-85b8-e1be6d885ef5","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":212,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-2ebd970e-54ab-475a-b3c8-118d1b5fba1a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-2ebd970e-54ab-475a-b3c8-118d1b5fba1a","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":213,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-35547621-edcb-4e95-8192-391f1acc271f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-35547621-edcb-4e95-8192-391f1acc271f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":214,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-443fd4c2-fcae-4a63-a52e-0decfa30957a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-443fd4c2-fcae-4a63-a52e-0decfa30957a","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":215,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-1d9061b1-937b-4c60-b49f-4778b40dc788","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-1d9061b1-937b-4c60-b49f-4778b40dc788","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":216,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-206b85ca-0b0d-42f4-8f6f-103e4a33b3e2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-206b85ca-0b0d-42f4-8f6f-103e4a33b3e2","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":217,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-d1687866-c2d7-4b55-81f2-5263aed5f221","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-d1687866-c2d7-4b55-81f2-5263aed5f221","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":218,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-088aacb8-8cbd-4eaf-a888-6a1df38043fc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-088aacb8-8cbd-4eaf-a888-6a1df38043fc","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":219,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-8a1ed5cb-d078-4f9d-b808-b5bb9e3982fd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-8a1ed5cb-d078-4f9d-b808-b5bb9e3982fd","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":220,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-79603cbe-b415-48db-a51b-e357dd6134f6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-79603cbe-b415-48db-a51b-e357dd6134f6","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":221,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-0d9e36c8-2e6e-4858-9c66-49b10a4a02e0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-0d9e36c8-2e6e-4858-9c66-49b10a4a02e0","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":222,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-f54284be-c741-45f0-a3c6-0c6383da99f0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-f54284be-c741-45f0-a3c6-0c6383da99f0","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":223,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-88e6a332-1b42-4b5f-bcc6-c96f40cfb6db","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-88e6a332-1b42-4b5f-bcc6-c96f40cfb6db","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":224,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-e57890bf-3f5c-42df-8037-0102305c106f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-1433-Corpnet-e57890bf-3f5c-42df-8037-0102305c106f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":225,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-3e34bd2f-e061-4cde-b07e-0f335137ebb8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-3e34bd2f-e061-4cde-b07e-0f335137ebb8","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":226,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-21d40535-ced8-4c3e-b0d4-9b9a579e3984","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-21d40535-ced8-4c3e-b0d4-9b9a579e3984","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":227,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-f13b1253-fad6-4f30-baca-484833e31cd6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-f13b1253-fad6-4f30-baca-484833e31cd6","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":228,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-30e0e14f-285a-4d54-8c00-d94ce4a6ae88","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-30e0e14f-285a-4d54-8c00-d94ce4a6ae88","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":229,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-44d0f0f2-4d38-44fa-93fc-1781d08e0d64","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-44d0f0f2-4d38-44fa-93fc-1781d08e0d64","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":230,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-d5e39c12-7c7a-4a6e-8cb1-9fcdd079bf81","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-d5e39c12-7c7a-4a6e-8cb1-9fcdd079bf81","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":231,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-68a20a96-3a2d-47d3-b53f-a8af1dadac55","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-68a20a96-3a2d-47d3-b53f-a8af1dadac55","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":232,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-3723868e-969c-4d54-9323-78c4799f790f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-3723868e-969c-4d54-9323-78c4799f790f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":233,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-e6a117d5-9167-4ecf-bd07-b2a9c2d3a2e1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-e6a117d5-9167-4ecf-bd07-b2a9c2d3a2e1","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":234,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-335deb9d-91cf-4c6e-9ea5-d982e9ad94a0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-335deb9d-91cf-4c6e-9ea5-d982e9ad94a0","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":235,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-b07a3bef-d1cd-4164-ba1d-58b5c83fff17","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-b07a3bef-d1cd-4164-ba1d-58b5c83fff17","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":236,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c56c9cb7-a7b5-41d3-9109-9843c736c008","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-c56c9cb7-a7b5-41d3-9109-9843c736c008","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":237,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-36c90725-65e8-43bf-ac6d-d6350f2ef831","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-36c90725-65e8-43bf-ac6d-d6350f2ef831","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":238,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-bf001714-edeb-4f94-9a25-c5a9a9545fd5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-bf001714-edeb-4f94-9a25-c5a9a9545fd5","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":239,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-d4abc525-5e4a-4151-92b0-f7b6cdb5bed2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-d4abc525-5e4a-4151-92b0-f7b6cdb5bed2","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":240,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-579f12c9-d21a-40f2-88ff-fb3a3cdd1f7e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-579f12c9-d21a-40f2-88ff-fb3a3cdd1f7e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":241,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-73a97f14-2ef6-48c1-bfa2-ff20e3995eb3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-73a97f14-2ef6-48c1-bfa2-ff20e3995eb3","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":242,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-0a5df186-17ea-46cf-9458-9bccf6bcc81e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-0a5df186-17ea-46cf-9458-9bccf6bcc81e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":243,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-d40c5f25-8517-4a64-ab99-922891fba44f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-d40c5f25-8517-4a64-ab99-922891fba44f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":244,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-01e00e1d-ea36-44f7-a0ce-36e1fa08334b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-01e00e1d-ea36-44f7-a0ce-36e1fa08334b","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":245,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-21ee1521-b90f-4003-b24c-a410af4d7e6a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-21ee1521-b90f-4003-b24c-a410af4d7e6a","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":246,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-b8024009-923c-45a0-b28b-9eac56e8bbb4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-b8024009-923c-45a0-b28b-9eac56e8bbb4","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":247,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-af7927de-de44-442d-a01d-c5bfcb15d023","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-af7927de-de44-442d-a01d-c5bfcb15d023","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":248,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-d4f6b2c9-6136-4fe5-a371-70bdc55e2b7c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-d4f6b2c9-6136-4fe5-a371-70bdc55e2b7c","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":249,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c22338bb-4618-4b90-9047-5977d916f205","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-c22338bb-4618-4b90-9047-5977d916f205","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":250,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-aa92c8a6-d6d7-4641-98a3-2c56b5dae223","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-aa92c8a6-d6d7-4641-98a3-2c56b5dae223","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":251,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-05f03461-dab8-460e-bc39-add8f395cd8b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-05f03461-dab8-460e-bc39-add8f395cd8b","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":252,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-24491714-8e22-43ca-9491-7207f15475ce","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-24491714-8e22-43ca-9491-7207f15475ce","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":253,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c89e02e1-14df-4c39-92b7-f4c81a8010bd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-445-Corpnet-c89e02e1-14df-4c39-92b7-f4c81a8010bd","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":254,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-e6cb5152-2c93-43b5-8ffd-27f11e4be626","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-e6cb5152-2c93-43b5-8ffd-27f11e4be626","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":255,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-7dbf48fb-3018-4b3a-9981-af527ec0a3ea","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-7dbf48fb-3018-4b3a-9981-af527ec0a3ea","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":256,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-3a806578-9f64-432c-a1ba-21dfe0c7b9bd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-3a806578-9f64-432c-a1ba-21dfe0c7b9bd","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":257,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-cde222d6-eac9-4a04-95ff-4e6803165402","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-cde222d6-eac9-4a04-95ff-4e6803165402","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":258,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-27858b71-b034-4970-93bf-09509296000d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-27858b71-b034-4970-93bf-09509296000d","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":259,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-b7fdaa7a-ae76-4edf-9a42-2ba1b3875580","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-b7fdaa7a-ae76-4edf-9a42-2ba1b3875580","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":260,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-dd5e4075-b3db-4c72-a1da-df0a26d96c6a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-dd5e4075-b3db-4c72-a1da-df0a26d96c6a","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":261,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-550390be-0ac2-4a96-86bc-8a9b8df90065","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-550390be-0ac2-4a96-86bc-8a9b8df90065","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":262,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-ad69f5dc-958b-4b4e-a2fa-f90a7ffbdda4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-ad69f5dc-958b-4b4e-a2fa-f90a7ffbdda4","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":263,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-f2da7295-1a16-4da4-8105-55c6c920140f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-f2da7295-1a16-4da4-8105-55c6c920140f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":264,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-29ab161d-8751-433d-89bc-db3e7381d845","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-29ab161d-8751-433d-89bc-db3e7381d845","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":265,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-80b5d81c-2795-4315-bdcf-fc450bbfbc9c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-80b5d81c-2795-4315-bdcf-fc450bbfbc9c","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":266,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-50f244af-f596-4834-a5a4-bc67063880fe","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-50f244af-f596-4834-a5a4-bc67063880fe","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":267,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-332db5cb-cf1d-4f1a-8723-12cc9f0f1c7f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-332db5cb-cf1d-4f1a-8723-12cc9f0f1c7f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":268,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-0305f8ed-a87d-4ecb-b941-42c08b049d40","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-0305f8ed-a87d-4ecb-b941-42c08b049d40","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":269,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-49d34454-0130-4cfc-bef6-426c8bd8de51","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-49d34454-0130-4cfc-bef6-426c8bd8de51","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":270,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-53dc91c0-dd11-4eec-a798-67eb7d9d8c22","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-53dc91c0-dd11-4eec-a798-67eb7d9d8c22","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":271,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-b69269c5-5605-406a-8dbe-fb630e8c849f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-b69269c5-5605-406a-8dbe-fb630e8c849f","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":272,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-254a108d-ff43-480e-8309-c697df13ec3b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-254a108d-ff43-480e-8309-c697df13ec3b","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":273,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-243a8e5f-8fe5-4e62-9860-0fd576c56c2e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-243a8e5f-8fe5-4e62-9860-0fd576c56c2e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":274,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-6ee2fef2-5be7-4d3f-892e-8797698207a3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-6ee2fef2-5be7-4d3f-892e-8797698207a3","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":275,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-d9caeaaa-2e61-4652-a6b9-0d85d0b84c79","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-d9caeaaa-2e61-4652-a6b9-0d85d0b84c79","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":276,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-af8b9e2a-9413-44c8-977c-17c04d413586","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-af8b9e2a-9413-44c8-977c-17c04d413586","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":277,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-eb7924d1-2cc8-4461-a26d-ddd9efaf6c3e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-eb7924d1-2cc8-4461-a26d-ddd9efaf6c3e","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":278,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-14244174-9cd4-4515-8ec4-0e2c01011ed7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-14244174-9cd4-4515-8ec4-0e2c01011ed7","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":279,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-027a1e47-3ea7-4ce1-b5d2-b5a425e492e4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-027a1e47-3ea7-4ce1-b5d2-b5a425e492e4","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":280,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-de8aa77e-85ef-468a-b211-fcef2bb0ab85","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-de8aa77e-85ef-468a-b211-fcef2bb0ab85","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":281,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-bb4e6b1b-9ab7-4f52-9fe6-debbec68abcc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-bb4e6b1b-9ab7-4f52-9fe6-debbec68abcc","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":282,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-8df02417-ebf4-4180-8a72-c52e1dcf3ee6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/securityRules/Cleanuptool-135-Corpnet-8df02417-ebf4-4180-8a72-c52e1dcf3ee6","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":283,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/defaultSecurityRules/AllowVnetInBound","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/defaultSecurityRules/DenyAllInBound","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg3/defaultSecurityRules/DenyAllOutBound","etag":"W/\"d278f8a2-6f7c-41dc-8716-5f56fce6d4df\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"rg-cleanupservice-nsg1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups","location":"southcentralus","properties":{"provisioningState":"Succeeded","resourceGuid":"35a08819-848a-4846-8c60-e4d794e2b442","securityRules":[{"name":"Cleanuptool-Allow-4001","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/securityRules/Cleanuptool-Allow-4001","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-100","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/securityRules/Cleanuptool-Allow-100","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":["167.220.148.0/23","131.107.147.0/24","131.107.159.0/24","131.107.160.0/24","131.107.174.0/24","167.220.24.0/24","167.220.26.0/24","167.220.238.0/27","167.220.238.128/27","167.220.238.192/27","167.220.238.64/27","167.220.232.0/23","167.220.255.0/25","167.220.242.0/27","167.220.242.128/27","167.220.242.192/27","167.220.242.64/27","94.245.87.0/24","167.220.196.0/23","194.69.104.0/25","191.234.97.0/26","167.220.0.0/23","167.220.2.0/24","207.68.190.32/27","13.106.78.32/27","10.254.32.0/20","10.97.136.0/22","13.106.174.32/27","13.106.4.96/27"],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-101","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/securityRules/Cleanuptool-Allow-101","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":101,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-102","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/securityRules/Cleanuptool-Allow-102","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":102,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-103","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/securityRules/Cleanuptool-Deny-103","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":103,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a617b2f9-ab34-4ab2-a9b1-746f9be44160\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"subnets":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitestlab1/providers/Microsoft.Network/virtualNetworks/Dtlcliautomationlab/subnets/DtlcliautomationlabSubnet"}]}},{"name":"rg-cleanupservice-nsg4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups","location":"southcentralus","properties":{"provisioningState":"Succeeded","resourceGuid":"2a6b47a5-5b2b-42a4-8344-e6254dd4c620","securityRules":[{"name":"Cleanuptool-Allow-4000","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-4000","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3999","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Deny-3999","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3999,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3998","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Deny-3998","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3998,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3997","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Deny-3997","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3997,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3996","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Deny-3996","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3996,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3995","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Deny-3995","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3995,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3994","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Deny-3994","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3994,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3993","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3993","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3993,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3992","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3992","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3992,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3991","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3991","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3991,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3990","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3990","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3990,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3989","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3989","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3989,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3988","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3988","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3988,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3987","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3987","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3987,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3986","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3986","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3986,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3985","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3985,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3984","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3984","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3984,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3983","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3983","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3983,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3982","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-Allow-3982","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3982,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-e600e027-0dd2-435d-87ce-6d5096383a51","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-e600e027-0dd2-435d-87ce-6d5096383a51","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b3c70031-7e1d-4ada-96c3-842625ad889a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-b3c70031-7e1d-4ada-96c3-842625ad889a","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b6ec514f-11c7-4d61-9220-92c36a1fc09b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-b6ec514f-11c7-4d61-9220-92c36a1fc09b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ee134e57-fa82-4592-9133-8cd7dd31a736","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-ee134e57-fa82-4592-9133-8cd7dd31a736","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-bdad70ee-eda5-47c7-a0bc-11cb91cc1b19","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-bdad70ee-eda5-47c7-a0bc-11cb91cc1b19","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-1f34859a-0758-407b-85eb-1b1d0fa1e10b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-1f34859a-0758-407b-85eb-1b1d0fa1e10b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9ca42b81-612a-49dd-a961-3c7e6bd3aa0a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-9ca42b81-612a-49dd-a961-3c7e6bd3aa0a","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ebca55e0-8f34-4eff-9bee-52c5a8ad825a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-ebca55e0-8f34-4eff-9bee-52c5a8ad825a","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-1517ba27-e534-487a-9f03-ab7ab235bc96","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-1517ba27-e534-487a-9f03-ab7ab235bc96","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-25a1ac32-0f32-419b-9fdf-0f4ebd5f1028","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-25a1ac32-0f32-419b-9fdf-0f4ebd5f1028","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f456233b-16c9-46ab-bcab-708c0095c36b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-f456233b-16c9-46ab-bcab-708c0095c36b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d35f54e9-6149-4e8c-90cc-9601bff5e427","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-d35f54e9-6149-4e8c-90cc-9601bff5e427","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-921ede18-8c73-4737-beef-1d6b0baf468c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-921ede18-8c73-4737-beef-1d6b0baf468c","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b670c2da-2845-44bc-a343-42b659d8f573","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-b670c2da-2845-44bc-a343-42b659d8f573","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f441e64f-af4b-470e-b9af-1b0f6f6f7fdb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-f441e64f-af4b-470e-b9af-1b0f6f6f7fdb","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f21e47e5-c681-4a48-8f62-3a7f3d3b5c51","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-f21e47e5-c681-4a48-8f62-3a7f3d3b5c51","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9c24a833-ff3f-494a-b6d0-d164970607e0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-9c24a833-ff3f-494a-b6d0-d164970607e0","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-4ca28bef-6a9b-4e61-bcc8-7ab7f912b740","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-4ca28bef-6a9b-4e61-bcc8-7ab7f912b740","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b98ccc1e-f685-46bc-a529-e363d14c5eb4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-b98ccc1e-f685-46bc-a529-e363d14c5eb4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-041c405f-9586-418a-9c10-d1cd3b9dd1b7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-041c405f-9586-418a-9c10-d1cd3b9dd1b7","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-905f6a89-3e57-4a4d-9f56-1a92be2f82b2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-905f6a89-3e57-4a4d-9f56-1a92be2f82b2","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b4df59a2-a3ad-49d5-942c-2fc8c13b0c92","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-b4df59a2-a3ad-49d5-942c-2fc8c13b0c92","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-1fc7f2c2-b38f-41ae-b2da-5a961a18c0bf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-1fc7f2c2-b38f-41ae-b2da-5a961a18c0bf","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-344d1fb4-25cd-4af7-a5ba-78a2db18c543","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-344d1fb4-25cd-4af7-a5ba-78a2db18c543","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-38fad1d4-05e7-4894-a52d-86ea415c7fc9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-38fad1d4-05e7-4894-a52d-86ea415c7fc9","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-a9661d7c-3747-4e24-8c82-b5ed178c2ba4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-a9661d7c-3747-4e24-8c82-b5ed178c2ba4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-3cd7a22e-3255-491b-8d18-76f34d766eda","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-3cd7a22e-3255-491b-8d18-76f34d766eda","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d51ba50a-a5c6-4447-bf81-f2cb6e8d2541","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-d51ba50a-a5c6-4447-bf81-f2cb6e8d2541","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-ab1810fa-b594-47ef-96f0-2da5921ce976","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-3389-Corpnet-ab1810fa-b594-47ef-96f0-2da5921ce976","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-69fb79e0-a961-48ec-967a-65dad9e6d4a7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-69fb79e0-a961-48ec-967a-65dad9e6d4a7","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":139,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-eaf8e91e-6691-4210-99f0-af28b21c69f2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-eaf8e91e-6691-4210-99f0-af28b21c69f2","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":140,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-ab27c6a8-a1a4-488a-817b-6d71f2e87eca","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-ab27c6a8-a1a4-488a-817b-6d71f2e87eca","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":141,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-1544243d-cb0b-4a75-bd30-339da10bac50","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-1544243d-cb0b-4a75-bd30-339da10bac50","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":142,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-e6f7d237-8205-49b5-8a73-026f1130c00f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-e6f7d237-8205-49b5-8a73-026f1130c00f","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":143,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-5e28397f-a808-4b01-b3d7-4200adc7381c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-5e28397f-a808-4b01-b3d7-4200adc7381c","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":144,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-ddb21366-bc8b-4aa0-a1b8-a1372d7878ad","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-ddb21366-bc8b-4aa0-a1b8-a1372d7878ad","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":145,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-666641b5-0065-4bc8-bb08-2ccd48211b19","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-666641b5-0065-4bc8-bb08-2ccd48211b19","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":146,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-23717814-8fcf-4435-9394-b71b941630d6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-23717814-8fcf-4435-9394-b71b941630d6","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":147,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-4fbae2ed-4575-4465-863c-71a339d39c0b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-4fbae2ed-4575-4465-863c-71a339d39c0b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":148,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-415b49e7-7f74-431c-aa99-23757524fb42","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-415b49e7-7f74-431c-aa99-23757524fb42","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":149,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-6156ac68-6e51-4de2-b6e9-3730d9da32bb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-6156ac68-6e51-4de2-b6e9-3730d9da32bb","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":150,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-e08f574d-7d4f-48c8-a5e8-732d5730b454","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-e08f574d-7d4f-48c8-a5e8-732d5730b454","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":151,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-e1e20080-4c64-4ac7-be67-263ad64ecf98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-e1e20080-4c64-4ac7-be67-263ad64ecf98","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":152,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-88645074-321e-4453-ac4a-519e9d2ad42d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-88645074-321e-4453-ac4a-519e9d2ad42d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":153,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-3d5e9a75-17c1-42a4-b7e0-db4c93c54112","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-3d5e9a75-17c1-42a4-b7e0-db4c93c54112","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":154,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-eb5a6e93-a1f3-4fb4-bfcb-6f84ea9df97e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-eb5a6e93-a1f3-4fb4-bfcb-6f84ea9df97e","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":155,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-a2b7a279-80be-4765-9319-869c0e6c7a56","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-a2b7a279-80be-4765-9319-869c0e6c7a56","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":156,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-e0617208-bf90-4005-b700-86201f659daa","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-e0617208-bf90-4005-b700-86201f659daa","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":157,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-97b5822d-23bb-48cf-ba88-8aaf6fb7d523","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-97b5822d-23bb-48cf-ba88-8aaf6fb7d523","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":158,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-ec6e19e1-baaf-4b63-9bca-2514e6de96a6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-ec6e19e1-baaf-4b63-9bca-2514e6de96a6","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":159,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-806ffac9-4d1f-40b6-8a06-78245e0eabdd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-806ffac9-4d1f-40b6-8a06-78245e0eabdd","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":160,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-ab6e3239-9cdb-4544-98c8-b34c933a2f8e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-ab6e3239-9cdb-4544-98c8-b34c933a2f8e","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":161,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-893b8e94-d708-459d-8036-c2bbb0320f17","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-893b8e94-d708-459d-8036-c2bbb0320f17","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":162,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-e39731ff-04a1-43f1-b8f0-ffde34a5fc15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-e39731ff-04a1-43f1-b8f0-ffde34a5fc15","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":163,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-0920dc55-0266-4ad4-a946-8b4b2f0add08","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-0920dc55-0266-4ad4-a946-8b4b2f0add08","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":164,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-48e97a04-a5c8-4f66-8bbb-6282ce217947","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-48e97a04-a5c8-4f66-8bbb-6282ce217947","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":165,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-4dc5dd16-2460-47c4-81e4-baf78d95b66d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-4dc5dd16-2460-47c4-81e4-baf78d95b66d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":166,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-b0d1c1e6-b47d-48e3-856b-c01e4fe76697","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-5985-5986-Corpnet-b0d1c1e6-b47d-48e3-856b-c01e4fe76697","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":167,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-9a652256-b26a-43b1-87ce-76df6fe2bb54","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-9a652256-b26a-43b1-87ce-76df6fe2bb54","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":168,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-ae6750e4-baa5-4277-937c-e649a8d60a1b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-ae6750e4-baa5-4277-937c-e649a8d60a1b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":169,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-6932e5d9-986c-436a-851b-e9acc66f8886","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-6932e5d9-986c-436a-851b-e9acc66f8886","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":170,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-bfa4d4f3-fa51-4041-a998-c78e08693cf4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-bfa4d4f3-fa51-4041-a998-c78e08693cf4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":171,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-360b16fe-5ab8-4ca1-bb38-f81102a2966c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-360b16fe-5ab8-4ca1-bb38-f81102a2966c","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":172,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-39974b3f-5baa-4116-982c-2370671fb64b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-39974b3f-5baa-4116-982c-2370671fb64b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":173,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-a41daa87-1346-4667-b73c-891621a9083f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-a41daa87-1346-4667-b73c-891621a9083f","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":174,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-aa00198f-4918-412a-859d-6fe5ef7b57f4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-aa00198f-4918-412a-859d-6fe5ef7b57f4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":175,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-318de85f-9720-4ac0-8471-f727417cea99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-318de85f-9720-4ac0-8471-f727417cea99","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":176,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-3d2aa1ad-42f5-483f-8ac2-3543171bbeea","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-3d2aa1ad-42f5-483f-8ac2-3543171bbeea","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":177,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-0e853a01-3309-46a5-9e9c-1cca8544be42","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-0e853a01-3309-46a5-9e9c-1cca8544be42","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":178,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-86e40bae-f6db-4fc4-81c3-43ce3ecf22ad","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-86e40bae-f6db-4fc4-81c3-43ce3ecf22ad","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":179,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-bf494dff-32eb-462e-b019-aa5270e1621f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-bf494dff-32eb-462e-b019-aa5270e1621f","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":180,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-93f294d5-fd87-4d16-b6e8-078966cf3247","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-93f294d5-fd87-4d16-b6e8-078966cf3247","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":181,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-2ad447de-258c-4321-8322-16125fca0839","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-2ad447de-258c-4321-8322-16125fca0839","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":182,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-fdc4766d-38db-4338-904c-89a65c534d79","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-fdc4766d-38db-4338-904c-89a65c534d79","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":183,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-80c312bb-3d38-470c-9e36-b7bf230562d6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-80c312bb-3d38-470c-9e36-b7bf230562d6","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":184,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-7944644a-5d91-47f7-a4c4-c570333450db","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-7944644a-5d91-47f7-a4c4-c570333450db","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":185,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-d845dbef-dea8-4a29-a925-3797587048ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-d845dbef-dea8-4a29-a925-3797587048ef","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":186,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-c2196082-58d2-469b-ab08-39d87bec8e18","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-c2196082-58d2-469b-ab08-39d87bec8e18","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":187,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-341cb972-38ef-4bc7-b0d9-4f885ae0fb8a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-341cb972-38ef-4bc7-b0d9-4f885ae0fb8a","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":188,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-ef0703b9-d7ba-4e8c-b7be-b1806085a245","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-ef0703b9-d7ba-4e8c-b7be-b1806085a245","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":189,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-c6532380-8a1b-46a3-9707-4b9d93cd9bf4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-c6532380-8a1b-46a3-9707-4b9d93cd9bf4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":190,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-21b711a7-e958-47b4-9e6d-dc3b19337b3e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-21b711a7-e958-47b4-9e6d-dc3b19337b3e","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":191,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b1e13c1e-8eea-4ca2-87bc-04d25e7ca923","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-b1e13c1e-8eea-4ca2-87bc-04d25e7ca923","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":192,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-621ac875-077a-4b25-82bf-6c27894220e9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-621ac875-077a-4b25-82bf-6c27894220e9","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":193,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-4a5d2669-f54a-4892-a854-b05d69de794a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-4a5d2669-f54a-4892-a854-b05d69de794a","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":194,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-9e28e3c0-7334-4486-bc5f-2aac16f8c676","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-9e28e3c0-7334-4486-bc5f-2aac16f8c676","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":195,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-9e7e1418-e5e8-4883-822f-0b27e88d8d41","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-22-23-Corpnet-9e7e1418-e5e8-4883-822f-0b27e88d8d41","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":196,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-bf541081-7332-4530-a53b-ffc0535c27d2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-bf541081-7332-4530-a53b-ffc0535c27d2","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":197,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-9747d893-184b-458d-84cc-05de755a5c11","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-9747d893-184b-458d-84cc-05de755a5c11","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":198,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-c2cbc770-4fd9-4463-95e2-dc46b20050dc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-c2cbc770-4fd9-4463-95e2-dc46b20050dc","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":199,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-113b5689-f358-41b3-afab-3586d53a610b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-113b5689-f358-41b3-afab-3586d53a610b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":200,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-8328a75a-8db8-4780-ba42-f4312838c966","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-8328a75a-8db8-4780-ba42-f4312838c966","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":201,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-d705e626-177c-4113-9082-e0dc7522cba9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-d705e626-177c-4113-9082-e0dc7522cba9","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":202,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-557b48fb-f074-460e-bea8-6f111751a25d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-557b48fb-f074-460e-bea8-6f111751a25d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":203,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-61bb800b-7e70-4021-ac38-4093761ae0fb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-61bb800b-7e70-4021-ac38-4093761ae0fb","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":204,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-447c8991-cc0d-401e-b20c-472f435349f3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-447c8991-cc0d-401e-b20c-472f435349f3","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":205,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-22a3a2b9-7cb2-4841-bdc1-da0ee057c770","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-22a3a2b9-7cb2-4841-bdc1-da0ee057c770","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":206,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-2be5d3d4-bd14-4940-b8ac-ac3108b7e2d4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-2be5d3d4-bd14-4940-b8ac-ac3108b7e2d4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":207,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-7c31297d-4137-4d02-b23d-c02eddb48054","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-7c31297d-4137-4d02-b23d-c02eddb48054","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":208,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-a74bb102-85a8-46e9-9968-fb680c2b5bdd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-a74bb102-85a8-46e9-9968-fb680c2b5bdd","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":209,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-6857601f-62bd-4853-ae6f-957a67592a61","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-6857601f-62bd-4853-ae6f-957a67592a61","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":210,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-f218eca0-2f32-46ff-b8d4-734c3c6b2638","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-f218eca0-2f32-46ff-b8d4-734c3c6b2638","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":211,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-3356b978-8167-4a1f-9d34-afa1b02e08fd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-3356b978-8167-4a1f-9d34-afa1b02e08fd","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":212,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-419fbf99-8c6a-4c6f-bd49-064e8c123b5f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-419fbf99-8c6a-4c6f-bd49-064e8c123b5f","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":213,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-e1845d2b-af4a-4f11-8f03-276e14bc17f5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-e1845d2b-af4a-4f11-8f03-276e14bc17f5","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":214,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-2027b248-cfe8-4e02-8c1d-a7ab5be7c49c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-2027b248-cfe8-4e02-8c1d-a7ab5be7c49c","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":215,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-9f78804f-ac23-45c0-aeae-e5e68fb5f8ec","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-9f78804f-ac23-45c0-aeae-e5e68fb5f8ec","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":216,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-a768782d-a7d3-4862-a2cf-39c4930d4041","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-a768782d-a7d3-4862-a2cf-39c4930d4041","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":217,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-de80374e-7b51-4351-a85d-690bb7d271f4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-de80374e-7b51-4351-a85d-690bb7d271f4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":218,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-05f98578-003d-443b-8649-84b43d2a0b15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-05f98578-003d-443b-8649-84b43d2a0b15","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":219,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-a3281bcf-c006-4260-ab00-e4dc3033262d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-a3281bcf-c006-4260-ab00-e4dc3033262d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":220,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-d1638c03-caa6-452b-ba2d-811f40b4a7f5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-d1638c03-caa6-452b-ba2d-811f40b4a7f5","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":221,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-9b0a10da-34a9-4e65-b9fe-9df0bf1fcea4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-9b0a10da-34a9-4e65-b9fe-9df0bf1fcea4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":222,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-7c8fd603-0767-4ad6-81fe-b392fe62d3e6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-7c8fd603-0767-4ad6-81fe-b392fe62d3e6","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":223,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-2e1c3371-94e2-4b3e-a3ae-2d0df1891511","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-2e1c3371-94e2-4b3e-a3ae-2d0df1891511","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":224,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-0dbefaf4-267e-4ead-8f56-eb152ab8da68","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-1433-Corpnet-0dbefaf4-267e-4ead-8f56-eb152ab8da68","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":225,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-a6bd5df8-975a-493f-b858-01f6e31a47b0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-a6bd5df8-975a-493f-b858-01f6e31a47b0","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":226,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-dd55dc66-2c6c-417d-8a46-e15b0c073c37","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-dd55dc66-2c6c-417d-8a46-e15b0c073c37","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":227,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-b69ed00d-b0e0-4146-a89c-d5510595d4da","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-b69ed00d-b0e0-4146-a89c-d5510595d4da","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":228,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-8f48cf1b-a7e6-42ba-a413-29c409071e53","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-8f48cf1b-a7e6-42ba-a413-29c409071e53","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":229,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-f9ca3cce-a1c1-45bc-8d91-eec28bfc5509","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-f9ca3cce-a1c1-45bc-8d91-eec28bfc5509","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":230,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-73db618f-9842-4628-acbe-a38fc13fba45","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-73db618f-9842-4628-acbe-a38fc13fba45","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":231,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-30ad561c-94d3-4f7e-b297-5b24cd40452d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-30ad561c-94d3-4f7e-b297-5b24cd40452d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":232,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-f92b97a0-3f3f-4239-bf16-6618fedd633e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-f92b97a0-3f3f-4239-bf16-6618fedd633e","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":233,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-e32bf2dc-601e-4575-9cf3-95686b41d56d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-e32bf2dc-601e-4575-9cf3-95686b41d56d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":234,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-3c3664b8-ca06-41d4-896f-66394991216c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-3c3664b8-ca06-41d4-896f-66394991216c","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":235,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c73416e5-5de8-46b0-a858-40e1de505453","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-c73416e5-5de8-46b0-a858-40e1de505453","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":236,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-b880a32d-5368-4c38-b83e-5a40c953ad55","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-b880a32d-5368-4c38-b83e-5a40c953ad55","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":237,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-7aa66d25-6878-4047-a297-3c6138e78367","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-7aa66d25-6878-4047-a297-3c6138e78367","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":238,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-5b72ad6c-23f8-491d-895a-b5ae79d361d2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-5b72ad6c-23f8-491d-895a-b5ae79d361d2","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":239,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-0b2c5bdc-7c2e-4db1-98bf-c18e3ee4c61d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-0b2c5bdc-7c2e-4db1-98bf-c18e3ee4c61d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":240,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-d0d99f82-1952-4183-a9cf-28cd377f5c72","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-d0d99f82-1952-4183-a9cf-28cd377f5c72","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":241,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-4f5dc973-207f-4d8d-a115-ad55d36d0c17","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-4f5dc973-207f-4d8d-a115-ad55d36d0c17","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":242,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-90e78030-f9e3-432b-a5f9-6fcb2735bee1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-90e78030-f9e3-432b-a5f9-6fcb2735bee1","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":243,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-d8d49014-baf1-4527-9352-d9bb3a571485","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-d8d49014-baf1-4527-9352-d9bb3a571485","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":244,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-6878a7ff-5412-49af-827f-497b710f90ad","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-6878a7ff-5412-49af-827f-497b710f90ad","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":245,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-ff31b8bc-4c3f-4790-9833-b02773f89362","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-ff31b8bc-4c3f-4790-9833-b02773f89362","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":246,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c5b78a5b-77dc-4e95-8b02-9d50b2e3cd05","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-c5b78a5b-77dc-4e95-8b02-9d50b2e3cd05","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":247,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-5297c78f-ce32-4bd1-b226-dcd832b132ea","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-5297c78f-ce32-4bd1-b226-dcd832b132ea","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":248,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-da76e4ac-2361-4401-b365-c5e3908655ca","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-da76e4ac-2361-4401-b365-c5e3908655ca","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":249,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-a7a5c2ce-284e-4a91-b7db-9102a157f8b1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-a7a5c2ce-284e-4a91-b7db-9102a157f8b1","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":250,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-39082186-a457-43db-a6b9-4a31698de467","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-39082186-a457-43db-a6b9-4a31698de467","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":251,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-7e923d62-0ed0-4074-a47c-b292dfe16f53","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-7e923d62-0ed0-4074-a47c-b292dfe16f53","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":252,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-5b70a444-5fef-451c-bf1d-996b8e93c2c1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-5b70a444-5fef-451c-bf1d-996b8e93c2c1","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":253,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c34c0ed1-29ed-417b-a5ae-7a9f4f0d8c4d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-445-Corpnet-c34c0ed1-29ed-417b-a5ae-7a9f4f0d8c4d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":254,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-f81d0e84-0e8a-4e3d-b348-5389451aa7e4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-f81d0e84-0e8a-4e3d-b348-5389451aa7e4","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":255,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-54dfcf76-639b-493a-bdb7-bf8e63783107","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-54dfcf76-639b-493a-bdb7-bf8e63783107","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":256,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-d3f5dd3c-f6ac-437c-82e2-2e10dc5d6b31","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-d3f5dd3c-f6ac-437c-82e2-2e10dc5d6b31","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":257,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-021ae609-cd7f-4ac1-b16e-cc1ddeb87997","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-021ae609-cd7f-4ac1-b16e-cc1ddeb87997","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":258,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-afd1997b-5214-4bb4-8d35-6a3c5966dc7b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-afd1997b-5214-4bb4-8d35-6a3c5966dc7b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":259,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-642644a8-698f-48ec-896b-ace0967522b6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-642644a8-698f-48ec-896b-ace0967522b6","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":260,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-9799fa72-76af-43b8-8511-64db2c8a0f64","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-9799fa72-76af-43b8-8511-64db2c8a0f64","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":261,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-7bc8131f-9230-4c1b-ac89-40259af8232d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-7bc8131f-9230-4c1b-ac89-40259af8232d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":262,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-b911eaf1-0076-4a13-b907-cb17bed6558b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-b911eaf1-0076-4a13-b907-cb17bed6558b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":263,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-61ed9bd0-a87c-4979-9f93-e43ec2bfeb22","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-61ed9bd0-a87c-4979-9f93-e43ec2bfeb22","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":264,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-6c3f7f15-7324-46d4-9e96-a92704045d5e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-6c3f7f15-7324-46d4-9e96-a92704045d5e","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":265,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-de644c95-9170-4384-856a-564e8aa7f648","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-de644c95-9170-4384-856a-564e8aa7f648","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":266,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-313119c5-f2ed-4d15-bf92-5f2cafed681d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-313119c5-f2ed-4d15-bf92-5f2cafed681d","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":267,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-3a272f74-cd70-48fd-a84c-3652fafd34d1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-3a272f74-cd70-48fd-a84c-3652fafd34d1","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":268,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-75dc6b76-8636-47f9-b2e4-ba802aed6fbe","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-75dc6b76-8636-47f9-b2e4-ba802aed6fbe","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":269,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-3219486c-831a-4e9e-8030-81ef2cdf6f50","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-3219486c-831a-4e9e-8030-81ef2cdf6f50","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":270,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-54a1ab8f-30d9-448f-ac86-bc5ecc5c070f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-54a1ab8f-30d9-448f-ac86-bc5ecc5c070f","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":271,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-ea5bae8b-45b4-4ebd-abd6-a07748463ce5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-ea5bae8b-45b4-4ebd-abd6-a07748463ce5","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":272,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-5207a03d-4d48-4396-ae66-90f8b1f08c08","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-5207a03d-4d48-4396-ae66-90f8b1f08c08","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":273,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-cffc7c8b-2e39-4023-baea-9833ad6f5d5b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-cffc7c8b-2e39-4023-baea-9833ad6f5d5b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":274,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-dd03595f-5e7d-45d9-b01f-16ff4726530b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-dd03595f-5e7d-45d9-b01f-16ff4726530b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":275,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-9d7ee82c-4fee-4f94-913b-a89c97ddbeef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-9d7ee82c-4fee-4f94-913b-a89c97ddbeef","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":276,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-12864414-e5f2-4d81-b5d6-fd5c6c5c0e08","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-12864414-e5f2-4d81-b5d6-fd5c6c5c0e08","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":277,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-ce4abbb1-361e-4764-b983-de4895d3bfa2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-ce4abbb1-361e-4764-b983-de4895d3bfa2","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":278,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-66c393c2-afb4-48d2-8f91-4e3123bc8dfa","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-66c393c2-afb4-48d2-8f91-4e3123bc8dfa","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":279,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-2a536667-8923-40e2-a698-427a4bf22c37","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-2a536667-8923-40e2-a698-427a4bf22c37","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":280,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-6d454f84-af42-48e2-9800-c0ab7614e8e3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-6d454f84-af42-48e2-9800-c0ab7614e8e3","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":281,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-137b24b1-9e9f-4277-8894-663dfb991c4b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-137b24b1-9e9f-4277-8894-663dfb991c4b","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":282,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-320c8fab-7287-4ca1-9b94-0e10c110ba74","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/securityRules/Cleanuptool-135-Corpnet-320c8fab-7287-4ca1-9b94-0e10c110ba74","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":283,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/defaultSecurityRules/AllowVnetInBound","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/defaultSecurityRules/DenyAllInBound","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg4/defaultSecurityRules/DenyAllOutBound","etag":"W/\"8624eece-7b94-4dbb-b250-a3e39b679cc1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"rg-cleanupservice-nsg8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"606305c8-eabe-4c41-b5b9-ee266ea3b743","securityRules":[{"name":"Cleanuptool-Allow-4001","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/securityRules/Cleanuptool-Allow-4001","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-100","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/securityRules/Cleanuptool-Allow-100","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":["167.220.148.0/23","131.107.147.0/24","131.107.159.0/24","131.107.160.0/24","131.107.174.0/24","167.220.24.0/24","167.220.26.0/24","167.220.238.0/27","167.220.238.128/27","167.220.238.192/27","167.220.238.64/27","167.220.232.0/23","167.220.255.0/25","167.220.242.0/27","167.220.242.128/27","167.220.242.192/27","167.220.242.64/27","94.245.87.0/24","167.220.196.0/23","194.69.104.0/25","191.234.97.0/26","167.220.0.0/23","167.220.2.0/24","207.68.190.32/27","13.106.78.32/27","10.254.32.0/20","10.97.136.0/22","13.106.174.32/27","13.106.4.96/27"],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-101","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/securityRules/Cleanuptool-Allow-101","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":101,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-102","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/securityRules/Cleanuptool-Allow-102","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":102,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-103","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/securityRules/Cleanuptool-Deny-103","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":103,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/defaultSecurityRules/AllowVnetInBound","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/defaultSecurityRules/DenyAllInBound","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8/defaultSecurityRules/DenyAllOutBound","etag":"W/\"5898958e-9505-40d1-985f-98f5c41cd592\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"subnets":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/virtualNetworks/TestVMVNET/subnets/TestVMSubnet"}]}},{"name":"TestVMNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG","etag":"W/\"525dcd06-3dc1-485c-91c0-5a35ad4477fd\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"bf42f030-7b2d-470b-8faa-a2e9fea149b3","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/securityRules/default-allow-ssh","etag":"W/\"525dcd06-3dc1-485c-91c0-5a35ad4477fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"525dcd06-3dc1-485c-91c0-5a35ad4477fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"525dcd06-3dc1-485c-91c0-5a35ad4477fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"525dcd06-3dc1-485c-91c0-5a35ad4477fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"525dcd06-3dc1-485c-91c0-5a35ad4477fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"525dcd06-3dc1-485c-91c0-5a35ad4477fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkSecurityGroups/TestVMNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"525dcd06-3dc1-485c-91c0-5a35ad4477fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkInterfaces/TestVMVMNic"}]}},{"name":"rg-cleanupservice-nsg2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"84d36bc6-a2b3-4fcd-bf96-fb48ff241a04","securityRules":[{"name":"Cleanuptool-Allow-4001","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/securityRules/Cleanuptool-Allow-4001","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-100","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/securityRules/Cleanuptool-Allow-100","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":["167.220.148.0/23","131.107.147.0/24","131.107.159.0/24","131.107.160.0/24","131.107.174.0/24","167.220.24.0/24","167.220.26.0/24","167.220.238.0/27","167.220.238.128/27","167.220.238.192/27","167.220.238.64/27","167.220.232.0/23","167.220.255.0/25","167.220.242.0/27","167.220.242.128/27","167.220.242.192/27","167.220.242.64/27","94.245.87.0/24","167.220.196.0/23","194.69.104.0/25","191.234.97.0/26","167.220.0.0/23","167.220.2.0/24","207.68.190.32/27","13.106.78.32/27","10.254.32.0/20","10.97.136.0/22","13.106.174.32/27","13.106.4.96/27"],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-101","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/securityRules/Cleanuptool-Allow-101","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":101,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-102","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/securityRules/Cleanuptool-Allow-102","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":102,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-103","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/securityRules/Cleanuptool-Deny-103","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":103,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":["3389","5985","5986","22","2222","1433","445","23","135"],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/defaultSecurityRules/AllowVnetInBound","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/defaultSecurityRules/DenyAllInBound","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2/defaultSecurityRules/DenyAllOutBound","etag":"W/\"57341b7e-5274-4b5b-82e6-3e051c81d145\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"subnets":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/virtualNetworks/lmazuel-testcapture-vnet/subnets/default"}]}},{"name":"rg-cleanupservice-nsg5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"e4fb2d7e-4b57-4a15-8ee6-e2629dbced94","securityRules":[{"name":"Cleanuptool-Allow-4000","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-4000","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":4000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3999","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Deny-3999","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3999,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3998","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Deny-3998","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3998,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3997","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Deny-3997","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3997,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3996","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Deny-3996","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3996,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3995","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Deny-3995","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3995,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Deny-3994","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Deny-3994","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":3994,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3993","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3993","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3993,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3992","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3992","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3992,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3991","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3991","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3991,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3990","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3990","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3990,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3989","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3989","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3989,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3988","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3988","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3988,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3987","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3987","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3987,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3986","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3986","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3986,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3985","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3985,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3984","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3984","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3984,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3983","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3983","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":3983,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-Allow-3982","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-Allow-3982","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"*","access":"Allow","priority":3982,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d8908b91-b599-4fe1-9fe2-8918bd3d0438","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-d8908b91-b599-4fe1-9fe2-8918bd3d0438","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-2d466dca-8205-4739-a66e-495e6b238443","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-2d466dca-8205-4739-a66e-495e6b238443","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-dd245bc5-1b61-4fc5-a178-d4ff20e4e0bd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-dd245bc5-1b61-4fc5-a178-d4ff20e4e0bd","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-3cb8fe71-d4fe-40cd-9e8c-03824953feb0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-3cb8fe71-d4fe-40cd-9e8c-03824953feb0","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-fce77ad6-b537-41da-9be0-08b3d4b7887d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-fce77ad6-b537-41da-9be0-08b3d4b7887d","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-3de8df4c-f94e-48a9-8244-74006c97b95c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-3de8df4c-f94e-48a9-8244-74006c97b95c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-596396cd-e693-47d3-974e-795dfea76fb3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-596396cd-e693-47d3-974e-795dfea76fb3","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-e7ac79b4-9cea-4c54-8c64-b11d20321585","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-e7ac79b4-9cea-4c54-8c64-b11d20321585","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-be00dca0-c01f-401e-9fd3-e07d5317fcf8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-be00dca0-c01f-401e-9fd3-e07d5317fcf8","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-6399ff92-8ed1-4b41-a466-ad44f29a5837","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-6399ff92-8ed1-4b41-a466-ad44f29a5837","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-a2a7dd57-0d12-429a-929f-88c6d49d9627","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-a2a7dd57-0d12-429a-929f-88c6d49d9627","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-a62edba9-c44b-4b5f-b457-e7c4f95b746f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-a62edba9-c44b-4b5f-b457-e7c4f95b746f","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-00885825-c599-428c-b780-03ddfd2ebfdd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-00885825-c599-428c-b780-03ddfd2ebfdd","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-55b3bd1a-9d47-48a7-87ab-29bcf531020e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-55b3bd1a-9d47-48a7-87ab-29bcf531020e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-30442b73-8572-4d98-a208-e3e472cbd467","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-30442b73-8572-4d98-a208-e3e472cbd467","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-d2d66ef0-e495-438d-a20f-2335cf44236f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-d2d66ef0-e495-438d-a20f-2335cf44236f","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-9e1851a5-dd2a-407c-95e4-e3e86e77c5fd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-9e1851a5-dd2a-407c-95e4-e3e86e77c5fd","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-b7e613fd-f3ac-4169-afe7-95864f892bd3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-b7e613fd-f3ac-4169-afe7-95864f892bd3","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-4a9f44ed-ea74-42ba-bb49-8b1fde5d4aa9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-4a9f44ed-ea74-42ba-bb49-8b1fde5d4aa9","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-40779dc9-5146-468c-afa9-4fcd474744cf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-40779dc9-5146-468c-afa9-4fcd474744cf","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-291d3514-7d5e-4c42-96b7-429c0ebb7684","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-291d3514-7d5e-4c42-96b7-429c0ebb7684","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f7e17e33-c2e4-4089-a4b1-875fb84cb09e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-f7e17e33-c2e4-4089-a4b1-875fb84cb09e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-7f580374-1cc3-4dee-a684-8bfbb5e95cad","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-7f580374-1cc3-4dee-a684-8bfbb5e95cad","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-f1ce30d1-227c-4f23-8bd5-f3f7dfc0de88","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-f1ce30d1-227c-4f23-8bd5-f3f7dfc0de88","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-5cf5facf-d617-49c2-b557-4b08e9a52d51","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-5cf5facf-d617-49c2-b557-4b08e9a52d51","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-e036d163-33b7-4c6e-8431-1c1f9f88e3ce","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-e036d163-33b7-4c6e-8431-1c1f9f88e3ce","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-859bf169-07b5-479d-a37e-6d1180f448dc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-859bf169-07b5-479d-a37e-6d1180f448dc","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-a6245fde-e388-4582-b962-836020fc5462","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-a6245fde-e388-4582-b962-836020fc5462","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-3389-Corpnet-12c5c1dd-f3f0-4168-9313-5a69f486b317","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-3389-Corpnet-12c5c1dd-f3f0-4168-9313-5a69f486b317","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-1e70dbca-fb2e-4671-a7c8-914b39df9a08","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-1e70dbca-fb2e-4671-a7c8-914b39df9a08","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":139,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-9f956c65-d4ab-4f92-852d-8ebb0180ee0b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-9f956c65-d4ab-4f92-852d-8ebb0180ee0b","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":140,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-417a9dd8-7c20-48ed-a612-8942ee73cb04","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-417a9dd8-7c20-48ed-a612-8942ee73cb04","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":141,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-cff007ef-ad8f-45fa-85c2-e46831ef8105","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-cff007ef-ad8f-45fa-85c2-e46831ef8105","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":142,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-98cc9126-814b-4127-8606-57187554f2e3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-98cc9126-814b-4127-8606-57187554f2e3","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":143,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-5254f700-bb9d-4870-beaa-0e0bf8d855e9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-5254f700-bb9d-4870-beaa-0e0bf8d855e9","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":144,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-4da511bc-f060-42b8-ba04-6a3ea9d60237","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-4da511bc-f060-42b8-ba04-6a3ea9d60237","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":145,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-9eb4b17b-a3c0-4294-a762-8584d65b0a10","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-9eb4b17b-a3c0-4294-a762-8584d65b0a10","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":146,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-5efac9d0-922a-43b4-87b6-1815db3bd70b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-5efac9d0-922a-43b4-87b6-1815db3bd70b","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":147,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-221ffce7-8218-4caa-b1ba-da6240e8fd81","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-221ffce7-8218-4caa-b1ba-da6240e8fd81","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":148,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-3614ac78-b613-40cf-9c07-9d98c25c90fd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-3614ac78-b613-40cf-9c07-9d98c25c90fd","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":149,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-5705a256-ef36-48aa-9118-4807fbca694f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-5705a256-ef36-48aa-9118-4807fbca694f","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":150,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-f89f70cb-9931-45f1-acfa-2e2b7aecbaa9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-f89f70cb-9931-45f1-acfa-2e2b7aecbaa9","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":151,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-4b956359-7a3a-4ff9-b010-3448c4cea1fb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-4b956359-7a3a-4ff9-b010-3448c4cea1fb","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":152,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-13f2b291-8e5f-4a6c-8176-a42f4acd6969","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-13f2b291-8e5f-4a6c-8176-a42f4acd6969","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":153,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-061fbd20-b331-4b59-91fc-28cd2e9a36a9","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-061fbd20-b331-4b59-91fc-28cd2e9a36a9","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":154,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-f1abc99b-edf5-4733-9b0f-2c97c93509be","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-f1abc99b-edf5-4733-9b0f-2c97c93509be","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":155,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-f8b875b6-dafa-4d05-b499-3f21093e7d69","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-f8b875b6-dafa-4d05-b499-3f21093e7d69","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":156,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-84ac9d8b-1b1f-4e93-a09f-1992137de5e3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-84ac9d8b-1b1f-4e93-a09f-1992137de5e3","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":157,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-5066d8ab-4c4b-47e5-8da5-28d000b57c09","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-5066d8ab-4c4b-47e5-8da5-28d000b57c09","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":158,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-0e48832d-5e5c-4f84-ab18-be6bd46c7bdf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-0e48832d-5e5c-4f84-ab18-be6bd46c7bdf","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":159,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-c631559c-d0d9-4734-b5aa-2d8acf4bcb70","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-c631559c-d0d9-4734-b5aa-2d8acf4bcb70","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":160,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-f600e011-3bb8-4438-b105-f5daf24aaa2c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-f600e011-3bb8-4438-b105-f5daf24aaa2c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":161,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-f78d1055-f4b9-4e62-b45a-37d48116da90","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-f78d1055-f4b9-4e62-b45a-37d48116da90","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":162,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-eb08d030-e02f-469a-8ee1-799cfe457d2d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-eb08d030-e02f-469a-8ee1-799cfe457d2d","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":163,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-d8390f5a-1814-44aa-ab54-f2e47c3f397c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-d8390f5a-1814-44aa-ab54-f2e47c3f397c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":164,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-b25131b3-1bff-453d-8e7f-2071a48ad519","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-b25131b3-1bff-453d-8e7f-2071a48ad519","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":165,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-c199298c-278b-4122-96c1-f8d5767d6730","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-c199298c-278b-4122-96c1-f8d5767d6730","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":166,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-5985-5986-Corpnet-24afdaf2-0e2d-47ec-a854-b4afc8d9605b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-5985-5986-Corpnet-24afdaf2-0e2d-47ec-a854-b4afc8d9605b","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985-5986","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":167,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-5e59ef75-584b-4b06-b7b2-8950530400c0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-5e59ef75-584b-4b06-b7b2-8950530400c0","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":168,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-37a264e6-fcde-4541-ba66-a6f76be0828e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-37a264e6-fcde-4541-ba66-a6f76be0828e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":169,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-56f4157e-acab-41d4-9d9e-cd4a9615d58a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-56f4157e-acab-41d4-9d9e-cd4a9615d58a","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":170,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-7a3f88c9-069c-4aa0-af37-b708178d916e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-7a3f88c9-069c-4aa0-af37-b708178d916e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":171,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b3c2fb72-b9e2-449b-8c64-977931e80f6c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-b3c2fb72-b9e2-449b-8c64-977931e80f6c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":172,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-eda898cd-c14a-4aa7-9860-39617fd80a5a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-eda898cd-c14a-4aa7-9860-39617fd80a5a","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":173,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-7c469e84-2954-4870-a979-b85071e2cce8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-7c469e84-2954-4870-a979-b85071e2cce8","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":174,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-82e9d6cc-48de-4e5b-bd75-b468ff80d35a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-82e9d6cc-48de-4e5b-bd75-b468ff80d35a","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":175,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-f835a58b-1aca-44b2-868b-050c4bab0952","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-f835a58b-1aca-44b2-868b-050c4bab0952","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":176,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-3ca9e67f-3c00-4819-849e-d932b97804a1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-3ca9e67f-3c00-4819-849e-d932b97804a1","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":177,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-ebfa4313-813e-4739-ae05-3258927992c8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-ebfa4313-813e-4739-ae05-3258927992c8","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":178,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-79eff261-80f6-4f72-b1e4-b88624f88758","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-79eff261-80f6-4f72-b1e4-b88624f88758","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":179,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-2c7fbfb2-b8b9-41cc-a378-8e4215fd9476","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-2c7fbfb2-b8b9-41cc-a378-8e4215fd9476","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":180,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-e649bcbb-4350-4b36-9252-0e5f2ea7f52b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-e649bcbb-4350-4b36-9252-0e5f2ea7f52b","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":181,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-6dedc1be-aae8-48dc-b363-d91a95a4b78c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-6dedc1be-aae8-48dc-b363-d91a95a4b78c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":182,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-ef54c807-85f5-461e-9539-51ff6dccbdc8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-ef54c807-85f5-461e-9539-51ff6dccbdc8","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":183,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-75e70e01-9e1f-43f4-b40b-bb7e748d8a63","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-75e70e01-9e1f-43f4-b40b-bb7e748d8a63","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":184,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-d500ce65-5296-44ae-91ec-575e2768a931","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-d500ce65-5296-44ae-91ec-575e2768a931","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":185,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-9034f60d-4cd9-4524-aec0-85a3ef787f62","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-9034f60d-4cd9-4524-aec0-85a3ef787f62","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":186,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-d11dfe0e-26ce-4bc0-b256-2d53806dec20","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-d11dfe0e-26ce-4bc0-b256-2d53806dec20","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":187,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-04842cf2-5568-4ab8-a95f-66810d5b3b2a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-04842cf2-5568-4ab8-a95f-66810d5b3b2a","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":188,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-da8c80dd-5475-46d2-aaa1-4ca273fcb838","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-da8c80dd-5475-46d2-aaa1-4ca273fcb838","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":189,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-4b7a09f3-333b-4d4c-b47c-d6da5c5a1880","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-4b7a09f3-333b-4d4c-b47c-d6da5c5a1880","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":190,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-b429308a-e46a-4caf-bdec-5b0c43175b6e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-b429308a-e46a-4caf-bdec-5b0c43175b6e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":191,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-02bd26f6-e296-4c69-a297-d0eddcd93d41","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-02bd26f6-e296-4c69-a297-d0eddcd93d41","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":192,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-164bea87-0d44-4b3c-986a-4109d227a580","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-164bea87-0d44-4b3c-986a-4109d227a580","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":193,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-0c011e01-9802-4314-8463-9958ab8d4d5a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-0c011e01-9802-4314-8463-9958ab8d4d5a","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":194,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-d5e8b53a-84be-416f-a143-0fecc427ce00","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-d5e8b53a-84be-416f-a143-0fecc427ce00","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":195,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-23-Corpnet-d181a1d9-86d4-4f93-8b39-e05690e76718","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-22-23-Corpnet-d181a1d9-86d4-4f93-8b39-e05690e76718","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22-23","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":196,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-fa2f4c41-45ba-42ec-9f5e-d0fea529c053","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-fa2f4c41-45ba-42ec-9f5e-d0fea529c053","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":197,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-1c05939a-0a9d-4875-b2f2-04a71c599b9e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-1c05939a-0a9d-4875-b2f2-04a71c599b9e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":198,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-16ef7633-4e41-472d-bb7b-df7a4b39bf6b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-16ef7633-4e41-472d-bb7b-df7a4b39bf6b","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":199,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-dffd3045-7984-499b-866a-4285e4411239","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-dffd3045-7984-499b-866a-4285e4411239","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":200,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-116342a7-355d-4718-b47c-84aace31b969","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-116342a7-355d-4718-b47c-84aace31b969","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":201,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-89f01525-4754-4145-8a67-3442e1573074","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-89f01525-4754-4145-8a67-3442e1573074","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":202,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-417a5a70-25c8-424c-9329-444c4956e1cd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-417a5a70-25c8-424c-9329-444c4956e1cd","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":203,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-ac316f44-6212-4bba-936a-66fa153acecc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-ac316f44-6212-4bba-936a-66fa153acecc","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":204,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-82c013d9-7dee-4606-901f-a96ea1f05c16","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-82c013d9-7dee-4606-901f-a96ea1f05c16","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":205,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-c8fd37f7-f72a-4fcc-ab88-2dbe98088c5f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-c8fd37f7-f72a-4fcc-ab88-2dbe98088c5f","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":206,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-8ca2c975-344f-4aec-9da1-823b38601e73","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-8ca2c975-344f-4aec-9da1-823b38601e73","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":207,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-1819057e-a148-46e1-af0c-767406a838b6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-1819057e-a148-46e1-af0c-767406a838b6","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":208,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-d128f0d2-8ac6-4f88-a1f7-88e57e12673c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-d128f0d2-8ac6-4f88-a1f7-88e57e12673c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":209,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-e10e65c8-d41e-4807-816f-8d6a1bfd254f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-e10e65c8-d41e-4807-816f-8d6a1bfd254f","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":210,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-040371d2-6a1c-4472-a189-f324dbab0766","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-040371d2-6a1c-4472-a189-f324dbab0766","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":211,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-c33c8010-657a-4655-9426-0e231c3e9cb5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-c33c8010-657a-4655-9426-0e231c3e9cb5","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":212,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-3f0cdca3-d1a3-4db6-9222-06de2b159fa5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-3f0cdca3-d1a3-4db6-9222-06de2b159fa5","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":213,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-e10af48e-b5f6-4a70-aaaf-8c36df2a987e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-e10af48e-b5f6-4a70-aaaf-8c36df2a987e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":214,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-029edf63-3e0c-4bc8-a276-5968c649a28e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-029edf63-3e0c-4bc8-a276-5968c649a28e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":215,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-2c82ac4f-a0a1-413a-ae36-a41b4154147c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-2c82ac4f-a0a1-413a-ae36-a41b4154147c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":216,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-a632f930-a113-4a76-8ddd-1823acb1dbaf","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-a632f930-a113-4a76-8ddd-1823acb1dbaf","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":217,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-3b2cc1e3-070d-4e7b-ad14-21284c3114c3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-3b2cc1e3-070d-4e7b-ad14-21284c3114c3","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":218,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-00ba18ab-bc80-4de3-9ac3-4f48321c86c3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-00ba18ab-bc80-4de3-9ac3-4f48321c86c3","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":219,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-362c605b-2bce-4673-8ba0-4d5fbb0853e3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-362c605b-2bce-4673-8ba0-4d5fbb0853e3","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":220,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-897eb01a-af0a-4905-872a-d82a6c3f3296","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-897eb01a-af0a-4905-872a-d82a6c3f3296","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":221,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-935f36db-c087-4725-b5cd-b15b9018c597","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-935f36db-c087-4725-b5cd-b15b9018c597","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":222,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-7dd5602d-6e6e-495d-9cc0-9499185da0b0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-7dd5602d-6e6e-495d-9cc0-9499185da0b0","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":223,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-8231326d-c13d-4b26-925e-9c9a17583a5c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-8231326d-c13d-4b26-925e-9c9a17583a5c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":224,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-1433-Corpnet-e9535993-3e4c-42a4-94e5-508cb7fab573","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-1433-Corpnet-e9535993-3e4c-42a4-94e5-508cb7fab573","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"1433","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":225,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-7fc4b487-84db-4887-ac99-225b42fd0036","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-7fc4b487-84db-4887-ac99-225b42fd0036","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":226,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-f9351d24-4ab8-4b99-980a-cb9d472309dd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-f9351d24-4ab8-4b99-980a-cb9d472309dd","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":227,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-0b568468-6a81-4696-acc8-e9cc84f8e426","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-0b568468-6a81-4696-acc8-e9cc84f8e426","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":228,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-8cbb12ea-6b2f-4d24-a945-c92d7d84613e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-8cbb12ea-6b2f-4d24-a945-c92d7d84613e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":229,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-2b475460-dbd3-49c6-a92a-d37e0d4a441e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-2b475460-dbd3-49c6-a92a-d37e0d4a441e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":230,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-6a3987b9-c8c3-4852-b3b8-8c29dcc49f50","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-6a3987b9-c8c3-4852-b3b8-8c29dcc49f50","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":231,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-1a10586f-5dc0-4faf-9abc-791ca8ff6783","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-1a10586f-5dc0-4faf-9abc-791ca8ff6783","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":232,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-a99a098d-1252-42a3-a294-d476522c9bca","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-a99a098d-1252-42a3-a294-d476522c9bca","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":233,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-818b8ba2-9595-433c-bb36-ec631bdf6658","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-818b8ba2-9595-433c-bb36-ec631bdf6658","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":234,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-8d345eb7-8117-4b1f-ad71-08046130fa8c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-8d345eb7-8117-4b1f-ad71-08046130fa8c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":235,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-58ddc476-9d12-4310-a12a-d18ca1fd5c88","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-58ddc476-9d12-4310-a12a-d18ca1fd5c88","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":236,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-c829e485-e7f1-4d9a-894a-1e6da7b1b9c7","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-c829e485-e7f1-4d9a-894a-1e6da7b1b9c7","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":237,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-062d5950-f8b1-4cb6-8605-5f8cd9feb555","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-062d5950-f8b1-4cb6-8605-5f8cd9feb555","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":238,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-15c9cedf-f528-4dff-9ae9-2fb454e5017d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-15c9cedf-f528-4dff-9ae9-2fb454e5017d","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":239,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-9dfa32e3-f83b-4dd1-a3e9-00bad9fa4886","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-9dfa32e3-f83b-4dd1-a3e9-00bad9fa4886","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":240,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-608429ed-0887-4aba-b180-7a0c17049d1a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-608429ed-0887-4aba-b180-7a0c17049d1a","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":241,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-6a51c3c1-e730-4b8e-b4d3-fc1d1691214b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-6a51c3c1-e730-4b8e-b4d3-fc1d1691214b","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":242,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-02d9f30a-581e-4c5f-8682-330214d18785","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-02d9f30a-581e-4c5f-8682-330214d18785","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":243,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-74fe1931-1927-4602-8403-6529e544b6aa","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-74fe1931-1927-4602-8403-6529e544b6aa","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":244,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-336e368e-ce4c-4771-ba94-1f1af02fc17c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-336e368e-ce4c-4771-ba94-1f1af02fc17c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":245,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-51100c9e-72fa-4c94-aa2e-8cbd1a238c2c","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-51100c9e-72fa-4c94-aa2e-8cbd1a238c2c","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":246,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-609ecfca-386c-4b7c-a79a-ee5d0d6eebe5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-609ecfca-386c-4b7c-a79a-ee5d0d6eebe5","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":247,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-9a3f5b65-d9c3-404f-b187-c4212d427d39","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-9a3f5b65-d9c3-404f-b187-c4212d427d39","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":248,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-dedb1742-0b9b-42d4-8d85-858207ee5786","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-dedb1742-0b9b-42d4-8d85-858207ee5786","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":249,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-9f46424d-afbd-413a-a0f3-d39095a1e6be","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-9f46424d-afbd-413a-a0f3-d39095a1e6be","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":250,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-27a0b2e2-f25c-409f-99a6-85f8e98ce08a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-27a0b2e2-f25c-409f-99a6-85f8e98ce08a","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":251,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-9e4d1749-cd97-48d4-b786-dd226d44ea99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-9e4d1749-cd97-48d4-b786-dd226d44ea99","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":252,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-b535d3f9-9d21-4957-957b-32d480a835d5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-b535d3f9-9d21-4957-957b-32d480a835d5","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":253,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-445-Corpnet-7365f8fe-b242-4873-bd6e-04b19a41ce75","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-445-Corpnet-7365f8fe-b242-4873-bd6e-04b19a41ce75","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"445","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":254,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-3115aa4c-0ce3-4eac-9b0c-01b17568d99e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-3115aa4c-0ce3-4eac-9b0c-01b17568d99e","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":255,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-dc0ed9d4-8bd0-4e50-a7b1-908ee751eff8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-dc0ed9d4-8bd0-4e50-a7b1-908ee751eff8","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":256,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-b797fe21-0a1b-4da5-90bb-178333fd92ab","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-b797fe21-0a1b-4da5-90bb-178333fd92ab","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":257,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-48b56a3f-3a4e-4509-9578-f2faf49b2a69","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-48b56a3f-3a4e-4509-9578-f2faf49b2a69","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":258,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-d1d656dd-f98e-4b8e-b50e-2ad5329414e6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-d1d656dd-f98e-4b8e-b50e-2ad5329414e6","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":259,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-01cd71fe-1445-4ba1-bcce-edc0fbd4e274","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-01cd71fe-1445-4ba1-bcce-edc0fbd4e274","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":260,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-08615f16-ed86-4683-8ced-c71089c9f832","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-08615f16-ed86-4683-8ced-c71089c9f832","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":261,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-02a5f9be-2f5b-4ebb-81da-04fc114b24b0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-02a5f9be-2f5b-4ebb-81da-04fc114b24b0","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":262,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-feb7fd3f-bc6f-48c1-8356-be5fc9a3274a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-feb7fd3f-bc6f-48c1-8356-be5fc9a3274a","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":263,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-2e2c4651-04f6-412b-a687-e31ae99a4e19","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-2e2c4651-04f6-412b-a687-e31ae99a4e19","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":264,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-5ec8fb30-d05b-4df7-ac4c-d4b6f46107e5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-5ec8fb30-d05b-4df7-ac4c-d4b6f46107e5","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":265,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-ad936975-f51f-4462-82c2-d821734e64ab","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-ad936975-f51f-4462-82c2-d821734e64ab","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":266,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-882fa4d8-7fa4-4912-8605-e4e0bbfdfd88","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-882fa4d8-7fa4-4912-8605-e4e0bbfdfd88","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":267,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-544a0bb3-b2a6-4b8f-84b6-8e56ca9b59e1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-544a0bb3-b2a6-4b8f-84b6-8e56ca9b59e1","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":268,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-8931bc19-9105-4d85-a546-9688660312f8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-8931bc19-9105-4d85-a546-9688660312f8","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":269,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-700f19a5-0190-4ab1-a510-240fc663069f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-700f19a5-0190-4ab1-a510-240fc663069f","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":270,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-e90abfc2-7552-471d-83af-667309d29300","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-e90abfc2-7552-471d-83af-667309d29300","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":271,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-a96ed095-eb9f-4a21-9ecc-96b3d41ff010","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-a96ed095-eb9f-4a21-9ecc-96b3d41ff010","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":272,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-075900a8-5499-4f60-a3b7-cd1f72675a2b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-075900a8-5499-4f60-a3b7-cd1f72675a2b","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":273,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-384772b0-6774-419e-ad97-fc8004e94948","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-384772b0-6774-419e-ad97-fc8004e94948","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":274,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-92053627-be23-4da6-a42f-a255c66e4906","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-92053627-be23-4da6-a42f-a255c66e4906","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":275,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-58cab740-8f09-4468-920c-7c5fc1893dfa","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-58cab740-8f09-4468-920c-7c5fc1893dfa","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":276,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-7081ce57-068e-473c-937a-22b8710888df","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-7081ce57-068e-473c-937a-22b8710888df","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":277,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-e432102f-fdd6-457f-8149-639012aeec04","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-e432102f-fdd6-457f-8149-639012aeec04","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":278,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-99fd3f5e-e7cc-44fc-be1e-8e02a8cc26be","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-99fd3f5e-e7cc-44fc-be1e-8e02a8cc26be","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":279,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-3c5f84ac-f5ae-41f6-b90e-964b67b73288","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-3c5f84ac-f5ae-41f6-b90e-964b67b73288","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":280,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-c297ffca-ecbf-469f-8131-c1fe928d72eb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-c297ffca-ecbf-469f-8131-c1fe928d72eb","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":281,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-f1310bda-580c-4000-86d8-164c5b30a1bd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-f1310bda-580c-4000-86d8-164c5b30a1bd","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":282,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-135-Corpnet-c0ecc3a9-e0e0-4630-bbeb-ed788ba0398d","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/securityRules/Cleanuptool-135-Corpnet-c0ecc3a9-e0e0-4630-bbeb-ed788ba0398d","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"135","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":283,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/defaultSecurityRules/DenyAllInBound","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg5/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a1eca5e0-8d04-417c-bbc5-061240179e9e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"lmazuel-testcapture-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"4ab9af35-993c-4d93-b87a-4ef498dec35c","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/default-allow-ssh","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-73fa47d6-13b2-4b86-814a-bb0180dd905e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-73fa47d6-13b2-4b86-814a-bb0180dd905e","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.148.0/23","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-b9c68191-28bb-40ee-82a7-8b51492173b6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-b9c68191-28bb-40ee-82a7-8b51492173b6","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.147.0/24","destinationAddressPrefix":"*","access":"Allow","priority":111,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-79d59b9d-23f1-4127-ac0b-84c9ec8c699e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-79d59b9d-23f1-4127-ac0b-84c9ec8c699e","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.159.0/24","destinationAddressPrefix":"*","access":"Allow","priority":112,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-90884fdd-91bc-4e8b-a48a-b97a2d1fcd45","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-90884fdd-91bc-4e8b-a48a-b97a2d1fcd45","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.160.0/24","destinationAddressPrefix":"*","access":"Allow","priority":113,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-ad461159-d30b-433b-99a6-6eb404fa1109","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-ad461159-d30b-433b-99a6-6eb404fa1109","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"131.107.174.0/24","destinationAddressPrefix":"*","access":"Allow","priority":114,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-c725afa1-89f5-4b48-8fbf-463283893335","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-c725afa1-89f5-4b48-8fbf-463283893335","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.24.0/24","destinationAddressPrefix":"*","access":"Allow","priority":115,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7dc7c138-d26a-4b4d-b65f-fb083a99d7fc","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-7dc7c138-d26a-4b4d-b65f-fb083a99d7fc","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.26.0/24","destinationAddressPrefix":"*","access":"Allow","priority":116,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-8fc1e4e7-4bc2-4fa2-a793-0ab0d78d1a77","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-8fc1e4e7-4bc2-4fa2-a793-0ab0d78d1a77","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.0/27","destinationAddressPrefix":"*","access":"Allow","priority":117,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-168c6bb0-828a-4195-883d-d6203699f7ae","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-168c6bb0-828a-4195-883d-d6203699f7ae","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.128/27","destinationAddressPrefix":"*","access":"Allow","priority":118,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-2a0bd94a-04e4-4038-90a7-e70bb626bf02","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-2a0bd94a-04e4-4038-90a7-e70bb626bf02","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.192/27","destinationAddressPrefix":"*","access":"Allow","priority":119,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-62eb48af-62fa-43ba-b460-b2cf6b9ee976","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-62eb48af-62fa-43ba-b460-b2cf6b9ee976","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.238.64/27","destinationAddressPrefix":"*","access":"Allow","priority":120,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-d00d59c5-4eb5-4726-a232-b55f19e8f9d6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-d00d59c5-4eb5-4726-a232-b55f19e8f9d6","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.232.0/23","destinationAddressPrefix":"*","access":"Allow","priority":121,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-452024fc-94e4-4301-8eba-03bcd3176510","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-452024fc-94e4-4301-8eba-03bcd3176510","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.0/25","destinationAddressPrefix":"*","access":"Allow","priority":122,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-a94f0d3c-de25-4036-a236-95c56f748c09","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-a94f0d3c-de25-4036-a236-95c56f748c09","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.0/27","destinationAddressPrefix":"*","access":"Allow","priority":123,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f9b176a5-b0c5-4faa-b683-7176fb1811ca","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-f9b176a5-b0c5-4faa-b683-7176fb1811ca","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.128/27","destinationAddressPrefix":"*","access":"Allow","priority":124,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-0e704e01-a66c-4d7e-b4b9-69dd8f935ddb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-0e704e01-a66c-4d7e-b4b9-69dd8f935ddb","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.192/27","destinationAddressPrefix":"*","access":"Allow","priority":125,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-6f6fd9e4-d287-4841-b960-f90a23c9fbbb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-6f6fd9e4-d287-4841-b960-f90a23c9fbbb","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.242.64/27","destinationAddressPrefix":"*","access":"Allow","priority":126,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-06915e3c-94bf-4887-b529-2d949ad97394","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-06915e3c-94bf-4887-b529-2d949ad97394","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"94.245.87.0/24","destinationAddressPrefix":"*","access":"Allow","priority":127,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-7428bafd-29d2-4923-a59d-b13c4c3b3832","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-7428bafd-29d2-4923-a59d-b13c4c3b3832","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.196.0/23","destinationAddressPrefix":"*","access":"Allow","priority":128,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-250af9cb-d40f-4630-8945-9e22bc9a378a","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-250af9cb-d40f-4630-8945-9e22bc9a378a","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"194.69.104.0/25","destinationAddressPrefix":"*","access":"Allow","priority":129,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-31a617d3-9885-4b84-8e9d-b4a1a0cb2263","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-31a617d3-9885-4b84-8e9d-b4a1a0cb2263","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"191.234.97.0/26","destinationAddressPrefix":"*","access":"Allow","priority":130,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-91796e33-4c02-4e8e-b165-a1f7b7a07b5e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-91796e33-4c02-4e8e-b165-a1f7b7a07b5e","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.0.0/23","destinationAddressPrefix":"*","access":"Allow","priority":131,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-e05da083-047a-4dcd-a753-f3bcc5f1cbf4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-e05da083-047a-4dcd-a753-f3bcc5f1cbf4","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.2.0/24","destinationAddressPrefix":"*","access":"Allow","priority":132,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-549f2fc8-b88b-412c-ba29-b11887c88c60","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-549f2fc8-b88b-412c-ba29-b11887c88c60","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"207.68.190.32/27","destinationAddressPrefix":"*","access":"Allow","priority":133,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-050547b3-c043-47fb-bdef-cc0f437a73ff","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-050547b3-c043-47fb-bdef-cc0f437a73ff","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.78.32/27","destinationAddressPrefix":"*","access":"Allow","priority":134,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-28557700-4af0-4165-96ea-e24d7be788f0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-28557700-4af0-4165-96ea-e24d7be788f0","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.254.32.0/20","destinationAddressPrefix":"*","access":"Allow","priority":135,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-41d3b9c0-7737-4a5e-bfb1-78a1d26d7dc3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-41d3b9c0-7737-4a5e-bfb1-78a1d26d7dc3","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"10.97.136.0/22","destinationAddressPrefix":"*","access":"Allow","priority":136,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-f7468dd5-81d2-430e-b3ca-3e687c381f17","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-f7468dd5-81d2-430e-b3ca-3e687c381f17","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.174.32/27","destinationAddressPrefix":"*","access":"Allow","priority":137,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Cleanuptool-22-Corpnet-353d1b94-7f89-411c-ac8e-270fe63c64a6","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/securityRules/Cleanuptool-22-Corpnet-353d1b94-7f89-411c-ac8e-270fe63c64a6","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"13.106.4.96/27","destinationAddressPrefix":"*","access":"Allow","priority":138,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkSecurityGroups/lmazuel-testcapture-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"c58b0479-56f8-4920-9393-ddaca786d8fd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427"}]}}]}'} headers: cache-control: [no-cache] - content-length: ['209883'] + content-length: ['880843'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:57 GMT'] + date: ['Tue, 11 Sep 2018 17:28:53 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-original-request-ids: [2792ebcb-a1f4-42f3-bbc5-6f6a2ab7af1b, 93f22ffc-54e3-4fb4-8c0a-76d75f268d28, - a427e808-9e52-4991-b9e3-1903abbd7e72] + x-ms-original-request-ids: [245454a8-28e7-4d7e-9ec2-b3214f716a56, b05728a5-f67d-4e25-898e-d49953a4ba45, + fab457be-3c30-4ddd-a683-1ed54dffc0c1, b3ac3e00-24e8-41a7-8a7f-1da0e87a2727, + a1194b56-1f3f-4d5e-85f4-8430785f7edf] status: {code: 200, message: OK} - request: body: '{"properties": {"description": "New Test security rule", "protocol": "Tcp", @@ -580,15 +685,16 @@ interactions: Connection: [keep-alive] Content-Length: ['260'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"ebb2367f-6b2a-4f12-a91c-d32790f0e744\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ + ,\r\n \"etag\": \"W/\\\"50cdc48f-8e38-483f-9478-86087e794897\\\"\",\r\n \ + \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ + \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ description\": \"New Test security rule\",\r\n \"protocol\": \"Tcp\",\r\ \n \"sourcePortRange\": \"655\",\r\n \"destinationPortRange\": \"123-3500\"\ ,\r\n \"sourceAddressPrefix\": \"*\",\r\n \"destinationAddressPrefix\"\ @@ -597,17 +703,17 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/5189816b-6ee7-4844-a79c-d7c425774e9c?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ba1e053b-1968-40f2-bcaa-4221d6b13aa1?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['814'] + content-length: ['882'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:46:58 GMT'] + date: ['Tue, 11 Sep 2018 17:28:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: body: null @@ -615,17 +721,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/5189816b-6ee7-4844-a79c-d7c425774e9c?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ba1e053b-1968-40f2-bcaa-4221d6b13aa1?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:10 GMT'] + date: ['Tue, 11 Sep 2018 17:29:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -640,14 +746,15 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"b8bb9d57-5871-41ec-86df-f6ae4cb9a8da\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ + ,\r\n \"etag\": \"W/\\\"b101b1d6-80b0-4af0-80cf-57fbc9b5f487\\\"\",\r\n \ + \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ description\": \"New Test security rule\",\r\n \"protocol\": \"Tcp\",\r\ \n \"sourcePortRange\": \"655\",\r\n \"destinationPortRange\": \"123-3500\"\ ,\r\n \"sourceAddressPrefix\": \"*\",\r\n \"destinationAddressPrefix\"\ @@ -657,10 +764,10 @@ interactions: : []\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['815'] + content-length: ['883'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:10 GMT'] - etag: [W/"b8bb9d57-5871-41ec-86df-f6ae4cb9a8da"] + date: ['Tue, 11 Sep 2018 17:29:05 GMT'] + etag: [W/"b101b1d6-80b0-4af0-80cf-57fbc9b5f487"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -675,16 +782,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"b8bb9d57-5871-41ec-86df-f6ae4cb9a8da\\\"\",\r\n \ - \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ + ,\r\n \"etag\": \"W/\\\"b101b1d6-80b0-4af0-80cf-57fbc9b5f487\\\"\",\r\n \ + \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ + \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ description\": \"New Test security rule\",\r\n \"protocol\": \"Tcp\",\r\ \n \"sourcePortRange\": \"655\",\r\n \"destinationPortRange\": \"123-3500\"\ ,\r\n \"sourceAddressPrefix\": \"*\",\r\n \"destinationAddressPrefix\"\ @@ -694,10 +801,10 @@ interactions: : []\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['815'] + content-length: ['883'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:11 GMT'] - etag: [W/"b8bb9d57-5871-41ec-86df-f6ae4cb9a8da"] + date: ['Tue, 11 Sep 2018 17:29:06 GMT'] + etag: [W/"b101b1d6-80b0-4af0-80cf-57fbc9b5f487"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -712,17 +819,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"b8bb9d57-5871-41ec-86df-f6ae4cb9a8da\\\"\",\r\ - \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ + ,\r\n \"etag\": \"W/\\\"b101b1d6-80b0-4af0-80cf-57fbc9b5f487\\\"\",\r\ + \n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Test security rule\",\r\n \"protocol\"\ : \"Tcp\",\r\n \"sourcePortRange\": \"655\",\r\n \"destinationPortRange\"\ : \"123-3500\",\r\n \"sourceAddressPrefix\": \"*\",\r\n \"destinationAddressPrefix\"\ @@ -731,8 +838,9 @@ interactions: \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n },\r\ \n {\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"b8bb9d57-5871-41ec-86df-f6ae4cb9a8da\\\"\",\r\ - \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ + ,\r\n \"etag\": \"W/\\\"b101b1d6-80b0-4af0-80cf-57fbc9b5f487\\\"\",\r\ + \n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ + ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"New Test security rule\",\r\n \"protocol\"\ : \"Tcp\",\r\n \"sourcePortRange\": \"655\",\r\n \"destinationPortRange\"\ : \"123-3500\",\r\n \"sourceAddressPrefix\": \"*\",\r\n \"destinationAddressPrefix\"\ @@ -743,9 +851,9 @@ interactions: \ ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['1831'] + content-length: ['1975'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:12 GMT'] + date: ['Tue, 11 Sep 2018 17:29:07 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -761,21 +869,20 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e033c4cc-c83d-465e-8851-287f6ddea0e3?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b4c093db-df76-4ae9-b6cb-b3fd07551a90?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 22:47:13 GMT'] + date: ['Tue, 11 Sep 2018 17:29:08 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/e033c4cc-c83d-465e-8851-287f6ddea0e3?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/b4c093db-df76-4ae9-b6cb-b3fd07551a90?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -788,17 +895,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e033c4cc-c83d-465e-8851-287f6ddea0e3?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b4c093db-df76-4ae9-b6cb-b3fd07551a90?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:25 GMT'] + date: ['Tue, 11 Sep 2018 17:29:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -814,21 +921,20 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/95394f98-669c-45c7-aba4-9676880e0749?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/227c7903-5339-4dce-9232-9e8608d0a094?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 22:47:26 GMT'] + date: ['Tue, 11 Sep 2018 17:29:19 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/95394f98-669c-45c7-aba4-9676880e0749?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/227c7903-5339-4dce-9232-9e8608d0a094?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -841,17 +947,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/95394f98-669c-45c7-aba4-9676880e0749?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/227c7903-5339-4dce-9232-9e8608d0a094?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:37 GMT'] + date: ['Tue, 11 Sep 2018 17:29:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml index 59849475bb86..6c02272ad623 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml @@ -8,27 +8,27 @@ interactions: Connection: [keep-alive] Content-Length: ['103'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ - ,\r\n \"etag\": \"W/\\\"48728875-ea08-46ac-a3a9-7472655c391e\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"a91c4fba-581d-4697-9cf2-84940ca78883\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\ - \n \"resourceGuid\": \"1d54011f-e473-4316-934c-bfa7487a2ee3\",\r\n \"\ + \n \"resourceGuid\": \"fe82448c-667f-46a4-9ce2-674f722bc7c7\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/49539a9a-c18c-4cb8-a373-1f53761dfa22?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ee4452f0-570d-4083-a953-0ff257c59629?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['719'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:45 GMT'] + date: ['Tue, 11 Sep 2018 17:29:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -42,17 +42,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/49539a9a-c18c-4cb8-a373-1f53761dfa22?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ee4452f0-570d-4083-a953-0ff257c59629?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:50 GMT'] + date: ['Tue, 11 Sep 2018 17:29:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -67,16 +67,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ - ,\r\n \"etag\": \"W/\\\"7f7b501b-2ae1-49fc-81f9-218315763369\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"1a6766ed-d5cd-418d-8a79-f6d238c5b7de\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ - \n \"resourceGuid\": \"1d54011f-e473-4316-934c-bfa7487a2ee3\",\r\n \"\ + \n \"resourceGuid\": \"fe82448c-667f-46a4-9ce2-674f722bc7c7\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ @@ -85,8 +85,8 @@ interactions: cache-control: [no-cache] content-length: ['720'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:50 GMT'] - etag: [W/"7f7b501b-2ae1-49fc-81f9-218315763369"] + date: ['Tue, 11 Sep 2018 17:29:43 GMT'] + etag: [W/"1a6766ed-d5cd-418d-8a79-f6d238c5b7de"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -101,18 +101,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ - ,\r\n \"etag\": \"W/\\\"7f7b501b-2ae1-49fc-81f9-218315763369\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"1a6766ed-d5cd-418d-8a79-f6d238c5b7de\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ - \n \"resourceGuid\": \"1d54011f-e473-4316-934c-bfa7487a2ee3\",\r\n \"\ + \n \"resourceGuid\": \"fe82448c-667f-46a4-9ce2-674f722bc7c7\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ @@ -121,8 +120,8 @@ interactions: cache-control: [no-cache] content-length: ['720'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:51 GMT'] - etag: [W/"7f7b501b-2ae1-49fc-81f9-218315763369"] + date: ['Tue, 11 Sep 2018 17:29:44 GMT'] + etag: [W/"1a6766ed-d5cd-418d-8a79-f6d238c5b7de"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -137,19 +136,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyipname773e115f\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ - ,\r\n \"etag\": \"W/\\\"7f7b501b-2ae1-49fc-81f9-218315763369\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"1a6766ed-d5cd-418d-8a79-f6d238c5b7de\\\"\",\r\ \n \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\"\ : \"value\"\r\n },\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"1d54011f-e473-4316-934c-bfa7487a2ee3\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"fe82448c-667f-46a4-9ce2-674f722bc7c7\"\ ,\r\n \"publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\"\ : \"Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\"\ : []\r\n },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\"\ @@ -159,7 +157,7 @@ interactions: cache-control: [no-cache] content-length: ['833'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:52 GMT'] + date: ['Tue, 11 Sep 2018 17:29:44 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -174,26 +172,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/publicIPAddresses?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/publicIPAddresses?api-version=2018-08-01 response: - body: {string: '{"value":[{"name":"pyipname773e115f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f","etag":"W/\"7f7b501b-2ae1-49fc-81f9-218315763369\"","location":"westus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","resourceGuid":"1d54011f-e473-4316-934c-bfa7487a2ee3","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"windowsvm-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/publicIPAddresses/windowsvm-ip","etag":"W/\"f2b9b052-0599-4578-9ef6-1f0d28c7ca32\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"78e35a7d-6c4d-4207-8530-a9651bf59f52","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkInterfaces/windowsvm624/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"amareh-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/amareh-ip","etag":"W/\"99dbd999-9259-4195-b98d-9db690c0b146\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"1d231f28-6472-4be6-89aa-a0c3b560979b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh554/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"amareh2-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/amareh2-ip","etag":"W/\"6d8a9d43-35c6-4099-a374-afca63d4af9f\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"405df706-42c5-44df-9927-997568bbcc3f","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh2451/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"amareh3-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/amareh3-ip","etag":"W/\"82d858f2-3ed3-497f-86b1-d1fedd3a1423\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"3d431b9d-9e97-4edd-8874-02fc9e8ebf7f","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh3187/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"amareh4-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/amareh4-ip","etag":"W/\"b1e66c1c-e868-402b-b1f7-29aae4a23367\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"7d8bd820-9e03-4e68-9efd-7b21ac3d19df","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh453/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"lmazuel-testcapture-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/publicIPAddresses/lmazuel-testcapture-ip","etag":"W/\"1d33ff0c-7e7d-4aba-8116-c2be7220c24b\"","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"d9e5b204-e9aa-408a-a3c5-4cd7d4836a0f","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}}]}'} + body: {string: '{"value":[{"name":"TestVM2PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/publicIPAddresses/TestVM2PublicIP","etag":"W/\"e1af41e6-2dd1-4d1f-aacf-3f2e16ae0c2b\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1f7eb760-9c92-4b78-9ba1-82a0f4d0660b","ipAddress":"40.83.179.84","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVM2VMNic/ipConfigurations/ipconfigTestVM2"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"TestVMPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/publicIPAddresses/TestVMPublicIP","etag":"W/\"088b8baa-d85a-456d-be79-c5f20f884702\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d72cad3d-9188-495b-a861-e377218205c6","ipAddress":"40.118.238.143","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVMVMNic/ipConfigurations/ipconfigTestVM"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pyipname773e115f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f","etag":"W/\"1a6766ed-d5cd-418d-8a79-f6d238c5b7de\"","location":"westus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","resourceGuid":"fe82448c-667f-46a4-9ce2-674f722bc7c7","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"wilxvm1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/publicIPAddresses/wilxvm1PublicIP","etag":"W/\"4dc70b4b-6ba6-4e50-b3cf-2a5c2dce8ae3\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"bd4d53aa-74bf-4f40-99e8-1ff0e208d023","ipAddress":"40.80.152.192","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkInterfaces/wilxvm1VMNic/ipConfigurations/ipconfigwilxvm1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"abunt4-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abunt4-ip","etag":"W/\"50a61b21-ec3f-4944-b6b6-357562a5493a\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"320dd781-6fa5-45bd-af3b-4fb978a4f2d7","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abunt4752/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"abuntu-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu-ip","etag":"W/\"cf3c8454-e291-446b-8cb5-4b2f7927a12c\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"73aaa5e5-7972-48d6-8d00-7938ecb0f664","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu259/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"abuntu1-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu1-ip","etag":"W/\"efcb7e38-e76d-475c-a887-dbccc1604e5e\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"cbfdb571-d357-440e-80a3-201c7f3471e5","ipAddress":"168.61.46.46","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu1428/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"abuntu2-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu2-ip","etag":"W/\"54c0c172-5ba6-4a87-9585-2846004ed39a\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5371acf8-c61a-4eed-bf05-3afd06707b1a","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2817/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"abuntu2ip781","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu2ip781","etag":"W/\"09dc6cce-8df7-4fc4-9f5d-f51c373bb2ef\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"acd13c2d-fd45-4854-9c64-528f4d7c9d8c","ipAddress":"168.62.58.31","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2743/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"abuntu3-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/publicIPAddresses/abuntu3-ip","etag":"W/\"9ea0568a-d4ec-47ff-8698-4bdbd6879b88\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"d952bf8a-2dbe-4e0d-91dd-1adad99b00bc","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu3634/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"TestVMPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/publicIPAddresses/TestVMPublicIP","etag":"W/\"4fdcf497-97bd-4456-95bb-bbf08f3627bb\"","location":"eastus2","tags":{},"zones":["3"],"properties":{"provisioningState":"Succeeded","resourceGuid":"72f4614c-4429-4fb3-8c20-97d4ca7579ba","ipAddress":"104.46.103.2","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkInterfaces/TestVMVMNic/ipConfigurations/ipconfigTestVM"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"lmazuel-testcapture-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/publicIPAddresses/lmazuel-testcapture-ip","etag":"W/\"1d33ff0c-7e7d-4aba-8116-c2be7220c24b\"","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"d9e5b204-e9aa-408a-a3c5-4cd7d4836a0f","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}}]}'} headers: cache-control: [no-cache] - content-length: ['4932'] + content-length: ['8778'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:47:53 GMT'] + date: ['Tue, 11 Sep 2018 17:29:45 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-original-request-ids: [875b3729-bc66-4c95-9606-61506b96f280, 9769e96c-9479-4fba-93b5-da3e8d1dfe27, - 7ed19770-b129-40fa-b2fe-3029c162e089] + x-ms-original-request-ids: [f00e3842-90be-4028-90fd-60388bb9bf1a, 5ab69bf8-1036-4c59-a357-fd976ee374f7, + 3e1118a3-fa4e-47e8-b402-643cb0fe7205, 7efc5030-52f8-497b-88e1-7d3153084bfb] status: {code: 200, message: OK} - request: body: null @@ -202,26 +199,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dffe5367-016f-4481-8245-05a77b31f8b8?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/24dba1c4-c973-45e4-a1dc-9792a51f174c?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 22:47:53 GMT'] + date: ['Tue, 11 Sep 2018 17:29:46 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/dffe5367-016f-4481-8245-05a77b31f8b8?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/24dba1c4-c973-45e4-a1dc-9792a51f174c?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-deletes: ['14998'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 202, message: Accepted} - request: body: null @@ -229,17 +225,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dffe5367-016f-4481-8245-05a77b31f8b8?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/24dba1c4-c973-45e4-a1dc-9792a51f174c?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:04 GMT'] + date: ['Tue, 11 Sep 2018 17:29:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -254,19 +250,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": []\r\n}"} headers: cache-control: [no-cache] content-length: ['19'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:05 GMT'] + date: ['Tue, 11 Sep 2018 17:29:57 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml index 93868d7e4682..75a257c6df73 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml @@ -7,24 +7,24 @@ interactions: Connection: [keep-alive] Content-Length: ['22'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"5d539c06-2c39-4640-b59c-3e61a0e97b05\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"c340126e-a519-4470-b522-b0055133d01e\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"c0ea3663-34fe-4993-8891-df5b1b44662d\",\r\n \"\ + \ \"resourceGuid\": \"c405fa85-a4ae-4b61-8dc8-97a2d555ba79\",\r\n \"\ disableBgpRoutePropagation\": false,\r\n \"routes\": []\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/442b0776-57ad-4f0f-a8ba-d877f0f6f498?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/31bd4173-7caa-4281-995e-9ab439cc97d5?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['526'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:13 GMT'] + date: ['Tue, 11 Sep 2018 17:30:03 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -38,17 +38,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/442b0776-57ad-4f0f-a8ba-d877f0f6f498?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/31bd4173-7caa-4281-995e-9ab439cc97d5?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:24 GMT'] + date: ['Tue, 11 Sep 2018 17:30:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -63,23 +63,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"85ac850a-7350-485b-8241-ac2355baaf36\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"b9c70fd0-692d-4724-9a7c-4491131ecbb2\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"c0ea3663-34fe-4993-8891-df5b1b44662d\",\r\n \"\ + \ \"resourceGuid\": \"c405fa85-a4ae-4b61-8dc8-97a2d555ba79\",\r\n \"\ disableBgpRoutePropagation\": false,\r\n \"routes\": []\r\n }\r\n}"} headers: cache-control: [no-cache] content-length: ['527'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:26 GMT'] - etag: [W/"85ac850a-7350-485b-8241-ac2355baaf36"] + date: ['Tue, 11 Sep 2018 17:30:14 GMT'] + etag: [W/"b9c70fd0-692d-4724-9a7c-4491131ecbb2"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -94,25 +94,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"85ac850a-7350-485b-8241-ac2355baaf36\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"b9c70fd0-692d-4724-9a7c-4491131ecbb2\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"c0ea3663-34fe-4993-8891-df5b1b44662d\",\r\n \"\ + \ \"resourceGuid\": \"c405fa85-a4ae-4b61-8dc8-97a2d555ba79\",\r\n \"\ disableBgpRoutePropagation\": false,\r\n \"routes\": []\r\n }\r\n}"} headers: cache-control: [no-cache] content-length: ['527'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:26 GMT'] - etag: [W/"85ac850a-7350-485b-8241-ac2355baaf36"] + date: ['Tue, 11 Sep 2018 17:30:15 GMT'] + etag: [W/"b9c70fd0-692d-4724-9a7c-4491131ecbb2"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -127,26 +126,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyroutetableb6760c2d\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"85ac850a-7350-485b-8241-ac2355baaf36\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"b9c70fd0-692d-4724-9a7c-4491131ecbb2\\\"\",\r\ \n \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"c0ea3663-34fe-4993-8891-df5b1b44662d\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"c405fa85-a4ae-4b61-8dc8-97a2d555ba79\"\ ,\r\n \"disableBgpRoutePropagation\": false,\r\n \"routes\"\ : []\r\n }\r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] content-length: ['604'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:27 GMT'] + date: ['Tue, 11 Sep 2018 17:30:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -161,26 +159,25 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/routeTables?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/routeTables?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyroutetableb6760c2d\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"85ac850a-7350-485b-8241-ac2355baaf36\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"b9c70fd0-692d-4724-9a7c-4491131ecbb2\\\"\",\r\ \n \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"c0ea3663-34fe-4993-8891-df5b1b44662d\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"c405fa85-a4ae-4b61-8dc8-97a2d555ba79\"\ ,\r\n \"disableBgpRoutePropagation\": false,\r\n \"routes\"\ : []\r\n }\r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] content-length: ['604'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:28 GMT'] + date: ['Tue, 11 Sep 2018 17:30:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -197,23 +194,23 @@ interactions: Connection: [keep-alive] Content-Length: ['71'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"4a36c073-008c-4e6a-9a05-3df90bb036dd\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"f226aabe-4365-4560-9428-4532dc448158\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ - addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n }\r\ - \n}"} + addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ + \n \"type\": \"Microsoft.Network/routeTables/routes\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8ef69722-a39a-43a6-9c89-d54a4a25a179?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7b2c0e0c-49e7-4720-84bb-38a8833e9082?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['418'] + content-length: ['469'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:29 GMT'] + date: ['Tue, 11 Sep 2018 17:30:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -227,17 +224,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8ef69722-a39a-43a6-9c89-d54a4a25a179?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7b2c0e0c-49e7-4720-84bb-38a8833e9082?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:40 GMT'] + date: ['Tue, 11 Sep 2018 17:30:28 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -252,22 +249,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"ad187278-49fa-4b7a-a8d7-cae450df6a8a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"c1254bf1-48c9-41fa-8222-2b09850f0011\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n }\r\ - \n}"} + addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ + \n \"type\": \"Microsoft.Network/routeTables/routes\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['419'] + content-length: ['470'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:41 GMT'] - etag: [W/"ad187278-49fa-4b7a-a8d7-cae450df6a8a"] + date: ['Tue, 11 Sep 2018 17:30:28 GMT'] + etag: [W/"c1254bf1-48c9-41fa-8222-2b09850f0011"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -282,24 +279,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"ad187278-49fa-4b7a-a8d7-cae450df6a8a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"c1254bf1-48c9-41fa-8222-2b09850f0011\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n }\r\ - \n}"} + addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ + \n \"type\": \"Microsoft.Network/routeTables/routes\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['419'] + content-length: ['470'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:43 GMT'] - etag: [W/"ad187278-49fa-4b7a-a8d7-cae450df6a8a"] + date: ['Tue, 11 Sep 2018 17:30:28 GMT'] + etag: [W/"c1254bf1-48c9-41fa-8222-2b09850f0011"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -314,24 +310,24 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyrouteb6760c2d\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"ad187278-49fa-4b7a-a8d7-cae450df6a8a\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"c1254bf1-48c9-41fa-8222-2b09850f0011\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\"\ - : \"None\"\r\n }\r\n }\r\n ]\r\n}"} + : \"None\"\r\n },\r\n \"type\": \"Microsoft.Network/routeTables/routes\"\ + \r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['484'] + content-length: ['539'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:44 GMT'] + date: ['Tue, 11 Sep 2018 17:30:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -347,26 +343,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a4f2f599-3bf5-46da-a36e-b9778cd59f8d?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/30dd66e6-08da-43a1-bafe-e6e9d7bfc063?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 22:48:45 GMT'] + date: ['Tue, 11 Sep 2018 17:30:30 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/a4f2f599-3bf5-46da-a36e-b9778cd59f8d?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/30dd66e6-08da-43a1-bafe-e6e9d7bfc063?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] status: {code: 202, message: Accepted} - request: body: null @@ -374,17 +369,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a4f2f599-3bf5-46da-a36e-b9778cd59f8d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/30dd66e6-08da-43a1-bafe-e6e9d7bfc063?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:48:56 GMT'] + date: ['Tue, 11 Sep 2018 17:30:41 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -400,26 +395,25 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/bcc870f8-b62a-401e-bf54-eb75da7916f3?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/783761de-be99-4e6e-ac9e-a30ba16bea02?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 22:48:57 GMT'] + date: ['Tue, 11 Sep 2018 17:30:41 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/bcc870f8-b62a-401e-bf54-eb75da7916f3?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/783761de-be99-4e6e-ac9e-a30ba16bea02?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-deletes: ['14999'] + x-ms-ratelimit-remaining-subscription-deletes: ['14998'] status: {code: 202, message: Accepted} - request: body: null @@ -427,17 +421,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/bcc870f8-b62a-401e-bf54-eb75da7916f3?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/783761de-be99-4e6e-ac9e-a30ba16bea02?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:08 GMT'] + date: ['Tue, 11 Sep 2018 17:30:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml index a8c5057d57cc..66e18217f128 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml @@ -10,34 +10,34 @@ interactions: Connection: [keep-alive] Content-Length: ['303'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"cba837c6-4989-4e2a-864e-bc53c64eabde\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"df417357-f9d8-4791-8e9d-9dd2b00a4b1e\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"6dfd0692-2ba9-4a0a-b1d8-3df890f7a1c5\",\r\n \"\ + \ \"resourceGuid\": \"486be941-5249-4dac-b5a4-9ff241bc1b45\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"cba837c6-4989-4e2a-864e-bc53c64eabde\\\"\"\ + ,\r\n \"etag\": \"W/\\\"df417357-f9d8-4791-8e9d-9dd2b00a4b1e\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n }\r\n ],\r\n \"virtualNetworkPeerings\":\ - \ [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ - : false\r\n }\r\n}"} + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ + : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ba975d71-d3cb-48fd-8766-b065bf7dde2e?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6633a6e3-54a8-4b50-9486-dd86210114a0?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1277'] + content-length: ['1339'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:15 GMT'] + date: ['Tue, 11 Sep 2018 17:30:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -51,17 +51,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ba975d71-d3cb-48fd-8766-b065bf7dde2e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6633a6e3-54a8-4b50-9486-dd86210114a0?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:19 GMT'] + date: ['Tue, 11 Sep 2018 17:31:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -76,17 +76,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ba975d71-d3cb-48fd-8766-b065bf7dde2e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6633a6e3-54a8-4b50-9486-dd86210114a0?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:31 GMT'] + date: ['Tue, 11 Sep 2018 17:31:12 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -101,33 +101,33 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"c85ffd65-2423-4c48-81aa-32e40648bcac\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"fe714d29-b8e1-4604-9392-f650dc7dfbee\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"6dfd0692-2ba9-4a0a-b1d8-3df890f7a1c5\",\r\n \"\ + \ \"resourceGuid\": \"486be941-5249-4dac-b5a4-9ff241bc1b45\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"c85ffd65-2423-4c48-81aa-32e40648bcac\\\"\"\ + ,\r\n \"etag\": \"W/\\\"fe714d29-b8e1-4604-9392-f650dc7dfbee\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n }\r\n ],\r\n \"virtualNetworkPeerings\":\ - \ [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ - : false\r\n }\r\n}"} + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ + : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1279'] + content-length: ['1341'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:31 GMT'] - etag: [W/"c85ffd65-2423-4c48-81aa-32e40648bcac"] + date: ['Tue, 11 Sep 2018 17:31:12 GMT'] + etag: [W/"fe714d29-b8e1-4604-9392-f650dc7dfbee"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -144,28 +144,29 @@ interactions: Connection: [keep-alive] Content-Length: ['79'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"72ae2b76-f848-4c1b-9168-2ba3347877a3\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"50085daa-8ab9-44f5-bc88-5d58f0b12d7e\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ - addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": []\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/fd6f312f-f8ba-4217-a29a-42b824b3a51d?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/adf356ca-ee88-48de-9e7d-5f7f9375fb45?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['424'] + content-length: ['480'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:33 GMT'] + date: ['Tue, 11 Sep 2018 17:31:14 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -173,17 +174,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/fd6f312f-f8ba-4217-a29a-42b824b3a51d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/adf356ca-ee88-48de-9e7d-5f7f9375fb45?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:37 GMT'] + date: ['Tue, 11 Sep 2018 17:31:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -198,21 +199,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"87c33a43-1383-4649-aa10-d80252276a1a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"471707a8-0403-427e-b680-2b8ececba098\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": []\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['425'] + content-length: ['481'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:38 GMT'] - etag: [W/"87c33a43-1383-4649-aa10-d80252276a1a"] + date: ['Tue, 11 Sep 2018 17:31:18 GMT'] + etag: [W/"471707a8-0403-427e-b680-2b8ececba098"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -227,40 +229,40 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"87c33a43-1383-4649-aa10-d80252276a1a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"471707a8-0403-427e-b680-2b8ececba098\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"6dfd0692-2ba9-4a0a-b1d8-3df890f7a1c5\",\r\n \"\ + \ \"resourceGuid\": \"486be941-5249-4dac-b5a4-9ff241bc1b45\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"87c33a43-1383-4649-aa10-d80252276a1a\\\"\"\ + ,\r\n \"etag\": \"W/\\\"471707a8-0403-427e-b680-2b8ececba098\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n },\r\n {\r\n \"name\": \"pysubnettwoc2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"87c33a43-1383-4649-aa10-d80252276a1a\\\"\"\ + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n },\r\n {\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"471707a8-0403-427e-b680-2b8ececba098\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n }\r\n ],\r\n \"virtualNetworkPeerings\":\ - \ [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ - : false\r\n }\r\n}"} + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ + : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1767'] + content-length: ['1891'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:39 GMT'] - etag: [W/"87c33a43-1383-4649-aa10-d80252276a1a"] + date: ['Tue, 11 Sep 2018 17:31:18 GMT'] + etag: [W/"471707a8-0403-427e-b680-2b8ececba098"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -275,23 +277,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"87c33a43-1383-4649-aa10-d80252276a1a\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"471707a8-0403-427e-b680-2b8ececba098\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": []\r\n },\r\n \ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['425'] + content-length: ['481'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:40 GMT'] - etag: [W/"87c33a43-1383-4649-aa10-d80252276a1a"] + date: ['Tue, 11 Sep 2018 17:31:19 GMT'] + etag: [W/"471707a8-0403-427e-b680-2b8ececba098"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -306,29 +308,30 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"87c33a43-1383-4649-aa10-d80252276a1a\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"471707a8-0403-427e-b680-2b8ececba098\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n },\r\n {\r\n \"name\": \"pysubnettwoc2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"87c33a43-1383-4649-aa10-d80252276a1a\\\"\",\r\ + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n },\r\n {\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"\ + id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"471707a8-0403-427e-b680-2b8ececba098\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n }\r\n ]\r\n}"} + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['958'] + content-length: ['1078'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:41 GMT'] + date: ['Tue, 11 Sep 2018 17:31:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -344,21 +347,20 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ba37c26b-ea5a-4d18-a22e-fbc65812ab0d?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/94f796a8-6948-4fbc-96ba-eba847a6a269?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 22:49:42 GMT'] + date: ['Tue, 11 Sep 2018 17:31:20 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/ba37c26b-ea5a-4d18-a22e-fbc65812ab0d?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/94f796a8-6948-4fbc-96ba-eba847a6a269?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -371,17 +373,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ba37c26b-ea5a-4d18-a22e-fbc65812ab0d?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/94f796a8-6948-4fbc-96ba-eba847a6a269?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:53 GMT'] + date: ['Tue, 11 Sep 2018 17:31:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml index 436b3051ee00..d2c80c0f2976 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml @@ -5,48 +5,55 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages?api-version=2018-08-01 response: - body: {string: "{\r\n \"value\": [\r\n {\r\n \"currentValue\": 2.0,\r\ + body: {string: "{\r\n \"value\": [\r\n {\r\n \"currentValue\": 3.0,\r\ \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks\"\ - ,\r\n \"limit\": 50.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 1000.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Virtual Networks\",\r\n \"value\": \"VirtualNetworks\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses\"\ - ,\r\n \"limit\": 20.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 200.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Static Public IP Addresses\",\r\n \"value\": \"StaticPublicIPAddresses\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 2.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups\"\ - ,\r\n \"limit\": 100.0,\r\n \"name\": {\r\n \"localizedValue\"\ + : 6.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups\"\ + ,\r\n \"limit\": 5000.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Security Groups\",\r\n \"value\": \"NetworkSecurityGroups\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 1.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses\"\ - ,\r\n \"limit\": 60.0,\r\n \"name\": {\r\n \"localizedValue\"\ + : 3.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses\"\ + ,\r\n \"limit\": 200.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Public IP Addresses\",\r\n \"value\": \"PublicIPAddresses\"\r\n\ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PublicIpPrefixes\"\ ,\r\n \"limit\": 2147483647.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Public Ip Prefixes\",\r\n \"value\": \"PublicIpPrefixes\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 1.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces\"\ + : 3.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces\"\ ,\r\n \"limit\": 24000.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Interfaces\",\r\n \"value\": \"NetworkInterfaces\"\r\n\ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ + : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/InterfaceEndpoints\"\ + ,\r\n \"limit\": 24000.0,\r\n \"name\": {\r\n \"localizedValue\"\ + : \"Interface Endpoints\",\r\n \"value\": \"InterfaceEndpoints\"\r\n\ + \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/LoadBalancers\"\ ,\r\n \"limit\": 100.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Load Balancers\",\r\n \"value\": \"LoadBalancers\"\r\n },\r\ \n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\":\ - \ 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways\"\ + \ 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PrivateLinkServices\"\ + ,\r\n \"limit\": 1000.0,\r\n \"name\": {\r\n \"localizedValue\"\ + : \"Private Link Services\",\r\n \"value\": \"PrivateLinkServices\"\ + \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ + : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways\"\ ,\r\n \"limit\": 50.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Application Gateways\",\r\n \"value\": \"ApplicationGateways\"\r\ \n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteTables\"\ - ,\r\n \"limit\": 100.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 200.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route Tables\",\r\n \"value\": \"RouteTables\"\r\n },\r\n\ \ \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\": 0.0,\r\ \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteFilters\"\ @@ -62,7 +69,7 @@ interactions: : \"Packet Captures\",\r\n \"value\": \"PacketCaptures\"\r\n },\r\ \n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\":\ \ 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ApplicationSecurityGroups\"\ - ,\r\n \"limit\": 500.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 3000.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Application Security Groups.\",\r\n \"value\": \"ApplicationSecurityGroups\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/DdosProtectionPlans\"\ @@ -70,27 +77,35 @@ interactions: : \"DDoS Protection Plans.\",\r\n \"value\": \"DdosProtectionPlans\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ServiceEndpointPolicies\"\ - ,\r\n \"limit\": 200.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 500.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Service Endpoint Policies\",\r\n \"value\": \"ServiceEndpointPolicies\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkIntentPolicies\"\ ,\r\n \"limit\": 200.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Intent Policies\",\r\n \"value\": \"NetworkIntentPolicies\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ + : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StandardSkuLoadBalancers\"\ + ,\r\n \"limit\": 100.0,\r\n \"name\": {\r\n \"localizedValue\"\ + : \"Standard Sku Load Balancers\",\r\n \"value\": \"StandardSkuLoadBalancers\"\ + \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ + : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StandardSkuPublicIpAddresses\"\ + ,\r\n \"limit\": 200.0,\r\n \"name\": {\r\n \"localizedValue\"\ + : \"Standard Sku Public IP Addresses\",\r\n \"value\": \"StandardSkuPublicIpAddresses\"\ + \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork\"\ - ,\r\n \"limit\": 9.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 25.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"DNS servers per Virtual Network\",\r\n \"value\": \"DnsServersPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork\"\ - ,\r\n \"limit\": 1000.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 3000.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Subnets per Virtual Network\",\r\n \"value\": \"SubnetsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork\"\ - ,\r\n \"limit\": 16384.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 65536.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"IP Configurations per Virtual Network\",\r\n \"value\": \"IPConfigurationsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork\"\ - ,\r\n \"limit\": 50.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 100.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Peerings per Virtual Network\",\r\n \"value\": \"PeeringsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup\"\ @@ -106,12 +121,12 @@ interactions: : \"Routes per Network Intent Policy\",\r\n \"value\": \"RoutesPerNetworkIntentPolicy\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup\"\ - ,\r\n \"limit\": 2000.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 4000.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Security rules addresses or ports per Network Security Group\",\r\n \ \ \"value\": \"SecurityRuleAddressesOrPortsPerNetworkSecurityGroup\"\r\ \n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer\"\ - ,\r\n \"limit\": 150.0,\r\n \"name\": {\r\n \"localizedValue\"\ + ,\r\n \"limit\": 250.0,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Inbound Rules per Load Balancer\",\r\n \"value\": \"InboundRulesPerLoadBalancer\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ : 0.0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer\"\ @@ -147,9 +162,9 @@ interactions: Count\"\r\n }\r\n ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['11750'] + content-length: ['13194'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:49:57 GMT'] + date: ['Tue, 11 Sep 2018 17:31:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml index 0e7c3effa561..f495d8dc2875 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml @@ -8,33 +8,33 @@ interactions: Connection: [keep-alive] Content-Length: ['109'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"d4ac3049-dc0a-4ab6-996e-132ecccff633\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"7e7d346d-8bd3-43b5-864a-fd152b9df12a\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"10ad6fb3-6b7f-4f58-ba8c-e3faac3c8bd5\",\r\n \"\ + \ \"resourceGuid\": \"f4e18441-91a0-49b3-88c4-fedaf21d6288\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.11.0.0/16\"\ ,\r\n \"10.12.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [],\r\ \n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false,\r\ \n \"enableVmProtection\": false\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7a282d0c-2750-4e1a-9e6d-a450f6e48f9e?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/80018aaa-f249-4b87-9452-25fd4d99f6ef?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['737'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:08 GMT'] + date: ['Tue, 11 Sep 2018 17:31:37 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1197'] status: {code: 201, message: Created} - request: body: null @@ -42,17 +42,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7a282d0c-2750-4e1a-9e6d-a450f6e48f9e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/80018aaa-f249-4b87-9452-25fd4d99f6ef?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:11 GMT'] + date: ['Tue, 11 Sep 2018 17:31:42 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -67,17 +67,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7a282d0c-2750-4e1a-9e6d-a450f6e48f9e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/80018aaa-f249-4b87-9452-25fd4d99f6ef?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:23 GMT'] + date: ['Tue, 11 Sep 2018 17:31:51 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -92,16 +92,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"b60ce455-9d35-4c6e-b638-da3e4905214c\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"6011136b-6479-4199-8974-f0bc5fd264ca\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"10ad6fb3-6b7f-4f58-ba8c-e3faac3c8bd5\",\r\n \"\ + \ \"resourceGuid\": \"f4e18441-91a0-49b3-88c4-fedaf21d6288\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.11.0.0/16\"\ ,\r\n \"10.12.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [],\r\ \n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false,\r\ @@ -110,8 +110,8 @@ interactions: cache-control: [no-cache] content-length: ['738'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:23 GMT'] - etag: [W/"b60ce455-9d35-4c6e-b638-da3e4905214c"] + date: ['Tue, 11 Sep 2018 17:31:52 GMT'] + etag: [W/"6011136b-6479-4199-8974-f0bc5fd264ca"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -128,22 +128,23 @@ interactions: Connection: [keep-alive] Content-Length: ['49'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"51f4b8bb-e6b3-45b2-9174-415beddd6cc7\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"0ca33a71-7ae7-4d36-8724-90e454359fa1\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ - addressPrefix\": \"10.11.0.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.11.0.0/24\",\r\n \"delegations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a0653983-79c6-435d-a5c3-9667adb71003?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/0c9a6083-f54f-48b6-9535-4bb90521fa35?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['451'] + content-length: ['507'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:25 GMT'] + date: ['Tue, 11 Sep 2018 17:31:53 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -157,17 +158,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a0653983-79c6-435d-a5c3-9667adb71003?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/0c9a6083-f54f-48b6-9535-4bb90521fa35?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:28 GMT'] + date: ['Tue, 11 Sep 2018 17:31:57 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -182,21 +183,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"c4e9453a-4f53-4830-b129-de2827b79dda\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"b0660063-81a5-4be7-b615-8a2c60c680e3\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.11.0.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.11.0.0/24\",\r\n \"delegations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['452'] + content-length: ['508'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:29 GMT'] - etag: [W/"c4e9453a-4f53-4830-b129-de2827b79dda"] + date: ['Tue, 11 Sep 2018 17:31:58 GMT'] + etag: [W/"b0660063-81a5-4be7-b615-8a2c60c680e3"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -213,28 +215,29 @@ interactions: Connection: [keep-alive] Content-Length: ['49'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"09538960-3ab0-4b9c-b0c0-255849e8655c\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"6c20c8b1-af25-4c40-a77e-8bc5703464b0\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ - addressPrefix\": \"10.12.0.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.12.0.0/24\",\r\n \"delegations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/32d87661-04bf-4ec6-8af5-3cd15575b7ff?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6ce35fd6-32b8-4272-a0c9-004433585b7e?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['451'] + content-length: ['507'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:30 GMT'] + date: ['Tue, 11 Sep 2018 17:31:59 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -242,17 +245,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/32d87661-04bf-4ec6-8af5-3cd15575b7ff?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6ce35fd6-32b8-4272-a0c9-004433585b7e?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:33 GMT'] + date: ['Tue, 11 Sep 2018 17:32:02 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -267,21 +270,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"5cf8dbe6-c4cf-4c1e-8bc4-d4d6eaa44643\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"c0a1c4c8-cbc2-4cce-b9e7-23daf87da649\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.12.0.0/24\",\r\n \"delegations\": []\r\n }\r\n}"} + addressPrefix\": \"10.12.0.0/24\",\r\n \"delegations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['452'] + content-length: ['508'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:34 GMT'] - etag: [W/"5cf8dbe6-c4cf-4c1e-8bc4-d4d6eaa44643"] + date: ['Tue, 11 Sep 2018 17:32:03 GMT'] + etag: [W/"c0a1c4c8-cbc2-4cce-b9e7-23daf87da649"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -298,29 +302,29 @@ interactions: Connection: [keep-alive] Content-Length: ['51'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ - ,\r\n \"etag\": \"W/\\\"b3933c77-fdeb-42ca-9d50-980a4bceec93\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"b231e357-b8fa-4882-8f0e-525e0157f09e\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ - addressPrefix\": \"10.12.255.0/27\",\r\n \"delegations\": []\r\n }\r\n\ - }"} + addressPrefix\": \"10.12.255.0/27\",\r\n \"delegations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b99b68c4-ccaa-416c-9ce2-9deeb3481e24?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/3778b612-351b-42e1-a53b-be5ed3d66e95?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['443'] + content-length: ['499'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:36 GMT'] + date: ['Tue, 11 Sep 2018 17:32:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1197'] status: {code: 201, message: Created} - request: body: null @@ -328,17 +332,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b99b68c4-ccaa-416c-9ce2-9deeb3481e24?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/3778b612-351b-42e1-a53b-be5ed3d66e95?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:40 GMT'] + date: ['Tue, 11 Sep 2018 17:32:07 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -353,22 +357,22 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ - ,\r\n \"etag\": \"W/\\\"575c727c-891c-46e7-8bb7-f35cbc6b0aab\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"5cd12e40-3cf5-4bc8-bb32-c48ef5d9ffa3\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ - addressPrefix\": \"10.12.255.0/27\",\r\n \"delegations\": []\r\n }\r\n\ - }"} + addressPrefix\": \"10.12.255.0/27\",\r\n \"delegations\": []\r\n },\r\n\ + \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}"} headers: cache-control: [no-cache] - content-length: ['444'] + content-length: ['500'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:41 GMT'] - etag: [W/"575c727c-891c-46e7-8bb7-f35cbc6b0aab"] + date: ['Tue, 11 Sep 2018 17:32:08 GMT'] + etag: [W/"5cd12e40-3cf5-4bc8-bb32-c48ef5d9ffa3"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -386,33 +390,33 @@ interactions: Connection: [keep-alive] Content-Length: ['103'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"b0a4b5e9-7d65-48c5-8bd1-7f4504e98f17\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"5f292e3c-44b8-49c2-91da-1cf1d00e4c26\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\ - \n \"resourceGuid\": \"47efb9a9-c258-4209-a661-94c154b7c7e4\",\r\n \"\ + \n \"resourceGuid\": \"056c07c6-26cf-4187-b854-ba914ac2cdcc\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/3a4932fb-401d-48ce-9616-431fb65ac247?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1495367-a1d2-44e7-8842-cf02ba29424d?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['734'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:43 GMT'] + date: ['Tue, 11 Sep 2018 17:32:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 201, message: Created} - request: body: null @@ -420,17 +424,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/3a4932fb-401d-48ce-9616-431fb65ac247?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/c1495367-a1d2-44e7-8842-cf02ba29424d?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:46 GMT'] + date: ['Tue, 11 Sep 2018 17:32:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -445,16 +449,16 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"04d5203d-c188-4bef-b6ab-a854fc535323\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"07a9092f-e03c-4813-af14-ccc9ab036cd7\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ - \n \"resourceGuid\": \"47efb9a9-c258-4209-a661-94c154b7c7e4\",\r\n \"\ + \n \"resourceGuid\": \"056c07c6-26cf-4187-b854-ba914ac2cdcc\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ @@ -463,8 +467,8 @@ interactions: cache-control: [no-cache] content-length: ['735'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:48 GMT'] - etag: [W/"04d5203d-c188-4bef-b6ab-a854fc535323"] + date: ['Tue, 11 Sep 2018 17:32:13 GMT'] + etag: [W/"07a9092f-e03c-4813-af14-ccc9ab036cd7"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -485,20 +489,21 @@ interactions: Connection: [keep-alive] Content-Length: ['732'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"907a0330-c386-4813-b506-a019f09ad0a8\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"94273992-06b9-4ef5-8394-dfc06636a742\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworkGateways\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"resourceGuid\": \"61c7d8fe-b1b6-4be9-a882-dce9e7c807d6\",\r\n \ + ,\r\n \"resourceGuid\": \"5b18375b-3171-45db-903e-a30ef80b8e61\",\r\n \ \ \"ipConfigurations\": [\r\n {\r\n \"name\": \"default\",\r\ \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ - ,\r\n \"etag\": \"W/\\\"907a0330-c386-4813-b506-a019f09ad0a8\\\"\"\ + ,\r\n \"etag\": \"W/\\\"94273992-06b9-4ef5-8394-dfc06636a742\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/virtualNetworkGateways/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ @@ -512,17 +517,17 @@ interactions: : [],\r\n \"vpnClientRevokedCertificates\": [],\r\n \"vpnClientIpsecPolicies\"\ : []\r\n }\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1996'] + content-length: ['2074'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:48 GMT'] + date: ['Tue, 11 Sep 2018 17:32:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: body: null @@ -530,17 +535,1917 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:32:25 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:32:36 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:32:46 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:32:56 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:33:07 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:33:18 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:33:29 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:33:39 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:33:50 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:34:01 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:34:11 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:34:21 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:34:32 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:34:43 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:34:54 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:35:04 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:35:15 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:35:26 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:35:36 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:35:47 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:35:58 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:36:08 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:36:19 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:36:29 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:36:40 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:36:50 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:37:01 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:37:11 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:37:22 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:37:32 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:37:43 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:37:54 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:38:05 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:38:15 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:38:26 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:38:37 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:38:48 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:38:58 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:39:08 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:39:19 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:39:30 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:39:40 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:39:51 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:40:02 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:40:12 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:40:23 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:40:33 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:40:44 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:40:55 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:41:05 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:41:17 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:41:27 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:41:38 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:41:48 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:41:59 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:42:10 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:42:20 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:42:32 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:42:42 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:42:52 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:43:03 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:43:14 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:43:25 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:43:35 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:43:46 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:43:56 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:44:07 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:44:17 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:44:27 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:44:39 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:44:49 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:45:00 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:45:11 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:45:21 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:45:31 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 + response: + body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} + headers: + cache-control: [no-cache] + content-length: ['30'] + content-type: [application/json; charset=utf-8] + date: ['Tue, 11 Sep 2018 17:45:43 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:50:59 GMT'] + date: ['Tue, 11 Sep 2018 17:45:53 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -555,17 +2460,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:51:11 GMT'] + date: ['Tue, 11 Sep 2018 17:46:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -580,17 +2485,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:51:22 GMT'] + date: ['Tue, 11 Sep 2018 17:46:14 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -605,17 +2510,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:51:33 GMT'] + date: ['Tue, 11 Sep 2018 17:46:25 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -630,17 +2535,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:51:43 GMT'] + date: ['Tue, 11 Sep 2018 17:46:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -655,17 +2560,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:51:54 GMT'] + date: ['Tue, 11 Sep 2018 17:46:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -680,17 +2585,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:52:06 GMT'] + date: ['Tue, 11 Sep 2018 17:46:57 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -705,17 +2610,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:52:17 GMT'] + date: ['Tue, 11 Sep 2018 17:47:08 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -730,17 +2635,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:52:27 GMT'] + date: ['Tue, 11 Sep 2018 17:47:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -755,17 +2660,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:52:38 GMT'] + date: ['Tue, 11 Sep 2018 17:47:30 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -780,17 +2685,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:52:49 GMT'] + date: ['Tue, 11 Sep 2018 17:47:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -805,17 +2710,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:53:00 GMT'] + date: ['Tue, 11 Sep 2018 17:47:51 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -830,17 +2735,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:53:11 GMT'] + date: ['Tue, 11 Sep 2018 17:48:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -855,17 +2760,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:53:22 GMT'] + date: ['Tue, 11 Sep 2018 17:48:12 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -880,17 +2785,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:53:32 GMT'] + date: ['Tue, 11 Sep 2018 17:48:23 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -905,17 +2810,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:53:43 GMT'] + date: ['Tue, 11 Sep 2018 17:48:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -930,17 +2835,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:53:55 GMT'] + date: ['Tue, 11 Sep 2018 17:48:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -955,17 +2860,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:54:06 GMT'] + date: ['Tue, 11 Sep 2018 17:48:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -980,17 +2885,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:54:17 GMT'] + date: ['Tue, 11 Sep 2018 17:49:05 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1005,17 +2910,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:54:28 GMT'] + date: ['Tue, 11 Sep 2018 17:49:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1030,17 +2935,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:54:39 GMT'] + date: ['Tue, 11 Sep 2018 17:49:25 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1055,17 +2960,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:54:49 GMT'] + date: ['Tue, 11 Sep 2018 17:49:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1080,17 +2985,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:55:01 GMT'] + date: ['Tue, 11 Sep 2018 17:49:47 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1105,17 +3010,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:55:12 GMT'] + date: ['Tue, 11 Sep 2018 17:49:57 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1130,17 +3035,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:55:23 GMT'] + date: ['Tue, 11 Sep 2018 17:50:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1155,17 +3060,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:55:34 GMT'] + date: ['Tue, 11 Sep 2018 17:50:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1180,17 +3085,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:55:44 GMT'] + date: ['Tue, 11 Sep 2018 17:50:30 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1205,17 +3110,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:55:55 GMT'] + date: ['Tue, 11 Sep 2018 17:50:41 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1230,17 +3135,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:56:06 GMT'] + date: ['Tue, 11 Sep 2018 17:50:51 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1255,17 +3160,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:56:17 GMT'] + date: ['Tue, 11 Sep 2018 17:51:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1280,17 +3185,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:56:28 GMT'] + date: ['Tue, 11 Sep 2018 17:51:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1305,17 +3210,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:56:39 GMT'] + date: ['Tue, 11 Sep 2018 17:51:23 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1330,17 +3235,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:56:49 GMT'] + date: ['Tue, 11 Sep 2018 17:51:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1355,17 +3260,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:57:00 GMT'] + date: ['Tue, 11 Sep 2018 17:51:44 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1380,17 +3285,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:57:12 GMT'] + date: ['Tue, 11 Sep 2018 17:51:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1405,17 +3310,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:57:22 GMT'] + date: ['Tue, 11 Sep 2018 17:52:05 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1430,17 +3335,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:57:34 GMT'] + date: ['Tue, 11 Sep 2018 17:52:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1455,17 +3360,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:57:45 GMT'] + date: ['Tue, 11 Sep 2018 17:52:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1480,17 +3385,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:57:55 GMT'] + date: ['Tue, 11 Sep 2018 17:52:37 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1505,17 +3410,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:58:06 GMT'] + date: ['Tue, 11 Sep 2018 17:52:48 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1530,17 +3435,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:58:17 GMT'] + date: ['Tue, 11 Sep 2018 17:52:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1555,17 +3460,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:58:37 GMT'] + date: ['Tue, 11 Sep 2018 17:53:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1580,17 +3485,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:58:47 GMT'] + date: ['Tue, 11 Sep 2018 17:53:20 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1605,17 +3510,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:58:58 GMT'] + date: ['Tue, 11 Sep 2018 17:53:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1630,17 +3535,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:59:09 GMT'] + date: ['Tue, 11 Sep 2018 17:53:41 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1655,17 +3560,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:59:20 GMT'] + date: ['Tue, 11 Sep 2018 17:53:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1680,17 +3585,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:59:32 GMT'] + date: ['Tue, 11 Sep 2018 17:54:02 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1705,17 +3610,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:59:43 GMT'] + date: ['Tue, 11 Sep 2018 17:54:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1730,17 +3635,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 22:59:53 GMT'] + date: ['Tue, 11 Sep 2018 17:54:23 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1755,17 +3660,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:00:04 GMT'] + date: ['Tue, 11 Sep 2018 17:54:35 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1780,17 +3685,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:00:15 GMT'] + date: ['Tue, 11 Sep 2018 17:54:45 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1805,17 +3710,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:00:25 GMT'] + date: ['Tue, 11 Sep 2018 17:54:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1830,17 +3735,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:00:37 GMT'] + date: ['Tue, 11 Sep 2018 17:55:06 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1855,17 +3760,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:00:47 GMT'] + date: ['Tue, 11 Sep 2018 17:55:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1880,17 +3785,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:00:58 GMT'] + date: ['Tue, 11 Sep 2018 17:55:28 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1905,17 +3810,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:01:09 GMT'] + date: ['Tue, 11 Sep 2018 17:55:38 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1930,17 +3835,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:01:20 GMT'] + date: ['Tue, 11 Sep 2018 17:55:49 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1955,17 +3860,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:01:32 GMT'] + date: ['Tue, 11 Sep 2018 17:56:00 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -1980,17 +3885,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:01:42 GMT'] + date: ['Tue, 11 Sep 2018 17:56:11 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2005,17 +3910,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:01:59 GMT'] + date: ['Tue, 11 Sep 2018 17:56:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2030,17 +3935,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:02:31 GMT'] + date: ['Tue, 11 Sep 2018 17:56:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2055,17 +3960,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:02:42 GMT'] + date: ['Tue, 11 Sep 2018 17:56:42 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2080,17 +3985,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:02:53 GMT'] + date: ['Tue, 11 Sep 2018 17:56:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2105,17 +4010,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:03:04 GMT'] + date: ['Tue, 11 Sep 2018 17:57:03 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2130,17 +4035,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:03:16 GMT'] + date: ['Tue, 11 Sep 2018 17:57:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2155,17 +4060,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:03:26 GMT'] + date: ['Tue, 11 Sep 2018 17:57:25 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2180,17 +4085,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:03:38 GMT'] + date: ['Tue, 11 Sep 2018 17:57:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2205,17 +4110,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:03:48 GMT'] + date: ['Tue, 11 Sep 2018 17:57:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2230,17 +4135,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:04:00 GMT'] + date: ['Tue, 11 Sep 2018 17:57:57 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2255,17 +4160,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:04:11 GMT'] + date: ['Tue, 11 Sep 2018 17:58:08 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2280,17 +4185,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:04:22 GMT'] + date: ['Tue, 11 Sep 2018 17:58:18 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2305,17 +4210,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:04:33 GMT'] + date: ['Tue, 11 Sep 2018 17:58:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2330,17 +4235,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:04:43 GMT'] + date: ['Tue, 11 Sep 2018 17:58:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2355,17 +4260,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:04:55 GMT'] + date: ['Tue, 11 Sep 2018 17:58:50 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2380,17 +4285,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:05:05 GMT'] + date: ['Tue, 11 Sep 2018 17:59:00 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2405,17 +4310,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:05:17 GMT'] + date: ['Tue, 11 Sep 2018 17:59:11 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2430,17 +4335,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:05:27 GMT'] + date: ['Tue, 11 Sep 2018 17:59:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2455,17 +4360,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:05:38 GMT'] + date: ['Tue, 11 Sep 2018 17:59:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2480,17 +4385,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:05:50 GMT'] + date: ['Tue, 11 Sep 2018 17:59:44 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2505,17 +4410,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:06:00 GMT'] + date: ['Tue, 11 Sep 2018 17:59:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2530,17 +4435,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:06:12 GMT'] + date: ['Tue, 11 Sep 2018 18:00:04 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2555,17 +4460,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:06:23 GMT'] + date: ['Tue, 11 Sep 2018 18:00:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2580,17 +4485,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:06:34 GMT'] + date: ['Tue, 11 Sep 2018 18:00:25 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2605,17 +4510,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:06:45 GMT'] + date: ['Tue, 11 Sep 2018 18:00:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2630,17 +4535,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:06:56 GMT'] + date: ['Tue, 11 Sep 2018 18:00:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2655,17 +4560,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:07:07 GMT'] + date: ['Tue, 11 Sep 2018 18:00:57 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2680,17 +4585,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:07:18 GMT'] + date: ['Tue, 11 Sep 2018 18:01:07 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2705,17 +4610,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:07:29 GMT'] + date: ['Tue, 11 Sep 2018 18:01:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2730,17 +4635,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:07:40 GMT'] + date: ['Tue, 11 Sep 2018 18:01:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2755,17 +4660,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:07:51 GMT'] + date: ['Tue, 11 Sep 2018 18:01:40 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2780,17 +4685,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:08:02 GMT'] + date: ['Tue, 11 Sep 2018 18:01:50 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2805,17 +4710,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:08:13 GMT'] + date: ['Tue, 11 Sep 2018 18:02:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2830,17 +4735,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:08:25 GMT'] + date: ['Tue, 11 Sep 2018 18:02:12 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2855,17 +4760,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:08:35 GMT'] + date: ['Tue, 11 Sep 2018 18:02:23 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2880,17 +4785,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:08:47 GMT'] + date: ['Tue, 11 Sep 2018 18:02:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2905,17 +4810,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:08:57 GMT'] + date: ['Tue, 11 Sep 2018 18:02:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2930,17 +4835,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:09:09 GMT'] + date: ['Tue, 11 Sep 2018 18:02:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2955,17 +4860,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:09:19 GMT'] + date: ['Tue, 11 Sep 2018 18:03:05 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -2980,17 +4885,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:09:31 GMT'] + date: ['Tue, 11 Sep 2018 18:03:15 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3005,17 +4910,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:09:41 GMT'] + date: ['Tue, 11 Sep 2018 18:03:26 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3030,17 +4935,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:09:52 GMT'] + date: ['Tue, 11 Sep 2018 18:03:37 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3055,17 +4960,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:10:03 GMT'] + date: ['Tue, 11 Sep 2018 18:03:47 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3080,17 +4985,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:10:14 GMT'] + date: ['Tue, 11 Sep 2018 18:03:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3105,17 +5010,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:10:26 GMT'] + date: ['Tue, 11 Sep 2018 18:04:09 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3130,17 +5035,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:10:37 GMT'] + date: ['Tue, 11 Sep 2018 18:04:20 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3155,17 +5060,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:10:47 GMT'] + date: ['Tue, 11 Sep 2018 18:04:30 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3180,17 +5085,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:10:58 GMT'] + date: ['Tue, 11 Sep 2018 18:04:41 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3205,17 +5110,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:11:10 GMT'] + date: ['Tue, 11 Sep 2018 18:04:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3230,17 +5135,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:11:21 GMT'] + date: ['Tue, 11 Sep 2018 18:05:02 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3255,17 +5160,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:11:32 GMT'] + date: ['Tue, 11 Sep 2018 18:05:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3280,17 +5185,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:11:42 GMT'] + date: ['Tue, 11 Sep 2018 18:05:23 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3305,17 +5210,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:11:53 GMT'] + date: ['Tue, 11 Sep 2018 18:05:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3330,17 +5235,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:12:04 GMT'] + date: ['Tue, 11 Sep 2018 18:05:44 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3355,17 +5260,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:12:15 GMT'] + date: ['Tue, 11 Sep 2018 18:05:55 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3380,17 +5285,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:12:27 GMT'] + date: ['Tue, 11 Sep 2018 18:06:06 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3405,17 +5310,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:12:37 GMT'] + date: ['Tue, 11 Sep 2018 18:06:16 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3430,17 +5335,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:12:48 GMT'] + date: ['Tue, 11 Sep 2018 18:06:27 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3455,17 +5360,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:13:00 GMT'] + date: ['Tue, 11 Sep 2018 18:06:38 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3480,17 +5385,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:13:09 GMT'] + date: ['Tue, 11 Sep 2018 18:06:49 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3505,17 +5410,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:13:20 GMT'] + date: ['Tue, 11 Sep 2018 18:06:59 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3530,17 +5435,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:13:31 GMT'] + date: ['Tue, 11 Sep 2018 18:07:10 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3555,17 +5460,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:13:42 GMT'] + date: ['Tue, 11 Sep 2018 18:07:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3580,17 +5485,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:13:53 GMT'] + date: ['Tue, 11 Sep 2018 18:07:31 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3605,17 +5510,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:14:05 GMT'] + date: ['Tue, 11 Sep 2018 18:07:41 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3630,17 +5535,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:14:15 GMT'] + date: ['Tue, 11 Sep 2018 18:07:52 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3655,17 +5560,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:14:26 GMT'] + date: ['Tue, 11 Sep 2018 18:08:03 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3680,17 +5585,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:14:37 GMT'] + date: ['Tue, 11 Sep 2018 18:08:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3705,17 +5610,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:14:48 GMT'] + date: ['Tue, 11 Sep 2018 18:08:25 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3730,17 +5635,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:14:59 GMT'] + date: ['Tue, 11 Sep 2018 18:08:35 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3755,17 +5660,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:15:10 GMT'] + date: ['Tue, 11 Sep 2018 18:08:45 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3780,17 +5685,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:15:21 GMT'] + date: ['Tue, 11 Sep 2018 18:08:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3805,17 +5710,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:15:32 GMT'] + date: ['Tue, 11 Sep 2018 18:09:06 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3830,17 +5735,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:15:43 GMT'] + date: ['Tue, 11 Sep 2018 18:09:17 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3855,17 +5760,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:15:54 GMT'] + date: ['Tue, 11 Sep 2018 18:09:27 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3880,17 +5785,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:16:05 GMT'] + date: ['Tue, 11 Sep 2018 18:09:38 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3905,17 +5810,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:16:16 GMT'] + date: ['Tue, 11 Sep 2018 18:09:49 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3930,17 +5835,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:16:27 GMT'] + date: ['Tue, 11 Sep 2018 18:09:59 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3955,17 +5860,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:16:38 GMT'] + date: ['Tue, 11 Sep 2018 18:10:10 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -3980,17 +5885,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6724ceed-79ba-4f6d-a4d4-fd8caa1790dd?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f1aaa3c7-8202-49d1-874f-8e6e3c1ecaaa?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:16:48 GMT'] + date: ['Tue, 11 Sep 2018 18:10:21 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -4005,19 +5910,20 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"95922104-b039-42d8-8d33-5846a9897606\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"a8b9a085-13be-43f2-a2db-55c39316be86\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworkGateways\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"resourceGuid\": \"61c7d8fe-b1b6-4be9-a882-dce9e7c807d6\",\r\n \ + ,\r\n \"resourceGuid\": \"5b18375b-3171-45db-903e-a30ef80b8e61\",\r\n \ \ \"ipConfigurations\": [\r\n {\r\n \"name\": \"default\",\r\ \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ - ,\r\n \"etag\": \"W/\\\"95922104-b039-42d8-8d33-5846a9897606\\\"\"\ + ,\r\n \"etag\": \"W/\\\"a8b9a085-13be-43f2-a2db-55c39316be86\\\"\"\ + ,\r\n \"type\": \"Microsoft.Network/virtualNetworkGateways/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ @@ -4030,9 +5936,9 @@ interactions: : \"10.12.255.30\",\r\n \"peerWeight\": 0\r\n }\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1881'] + content-length: ['1959'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:16:50 GMT'] + date: ['Tue, 11 Sep 2018 18:10:22 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml index a5151ebbe5c8..948199971d55 100644 --- a/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml +++ b/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml @@ -11,39 +11,40 @@ interactions: Connection: [keep-alive] Content-Length: ['392'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ - ,\r\n \"etag\": \"W/\\\"21875110-e789-4f16-84f8-33e77122d840\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"a31b273c-05cb-409f-ab3a-4490bb132231\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"4d7e7ab4-388d-462b-a5ea-9cf862db7a96\",\r\n \"\ + \ \"resourceGuid\": \"28fd3954-4516-434a-8e00-213bafd3db4e\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ - ,\r\n \"etag\": \"W/\\\"21875110-e789-4f16-84f8-33e77122d840\\\"\"\ + ,\r\n \"etag\": \"W/\\\"a31b273c-05cb-409f-ab3a-4490bb132231\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ - ,\r\n \"etag\": \"W/\\\"21875110-e789-4f16-84f8-33e77122d840\\\"\"\ + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"etag\": \"W/\\\"a31b273c-05cb-409f-ab3a-4490bb132231\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n }\r\n ],\r\n \"virtualNetworkPeerings\":\ - \ [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ - : false\r\n }\r\n}"} + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ + : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/1989465b-3f3c-4f11-b8af-d602fbf68db7?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/96bb1ea8-7702-4a91-a0fc-57e4eaa8efc3?api-version=2018-08-01'] cache-control: [no-cache] - content-length: ['1799'] + content-length: ['1923'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:00 GMT'] + date: ['Tue, 11 Sep 2018 18:10:29 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -57,17 +58,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/1989465b-3f3c-4f11-b8af-d602fbf68db7?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/96bb1ea8-7702-4a91-a0fc-57e4eaa8efc3?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"InProgress\"\r\n}"} headers: cache-control: [no-cache] content-length: ['30'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:04 GMT'] + date: ['Tue, 11 Sep 2018 18:10:33 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -82,17 +83,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/1989465b-3f3c-4f11-b8af-d602fbf68db7?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/96bb1ea8-7702-4a91-a0fc-57e4eaa8efc3?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:15 GMT'] + date: ['Tue, 11 Sep 2018 18:10:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -107,38 +108,39 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"4d7e7ab4-388d-462b-a5ea-9cf862db7a96\",\r\n \"\ + \ \"resourceGuid\": \"28fd3954-4516-434a-8e00-213bafd3db4e\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\"\ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\"\ + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n }\r\n ],\r\n \"virtualNetworkPeerings\":\ - \ [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ - : false\r\n }\r\n}"} + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ + : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1802'] + content-length: ['1926'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:15 GMT'] - etag: [W/"420b6ce7-4af3-4550-9800-8f3e3ee40f4f"] + date: ['Tue, 11 Sep 2018 18:10:44 GMT'] + etag: [W/"13814b45-d0c0-4753-9597-6675db4cbe39"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -153,40 +155,40 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2018-08-01 response: body: {string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\",\r\n \ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"4d7e7ab4-388d-462b-a5ea-9cf862db7a96\",\r\n \"\ + \ \"resourceGuid\": \"28fd3954-4516-434a-8e00-213bafd3db4e\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\"\ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\"\ + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ - : []\r\n }\r\n }\r\n ],\r\n \"virtualNetworkPeerings\":\ - \ [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ - : false\r\n }\r\n}"} + : []\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ + \r\n }\r\n ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ + : false,\r\n \"enableVmProtection\": false\r\n }\r\n}"} headers: cache-control: [no-cache] - content-length: ['1802'] + content-length: ['1926'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:17 GMT'] - etag: [W/"420b6ce7-4af3-4550-9800-8f3e3ee40f4f"] + date: ['Tue, 11 Sep 2018 18:10:45 GMT'] + etag: [W/"13814b45-d0c0-4753-9597-6675db4cbe39"] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -201,19 +203,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/CheckIPAddressAvailability?ipAddress=10.0.1.35&api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/CheckIPAddressAvailability?ipAddress=10.0.1.35&api-version=2018-08-01 response: body: {string: "{\r\n \"available\": true\r\n}"} headers: cache-control: [no-cache] content-length: ['25'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:18 GMT'] + date: ['Tue, 11 Sep 2018 18:10:45 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -228,43 +229,44 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks?api-version=2018-08-01 response: body: {string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyvnet4725106e\"\ ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\",\r\ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\",\r\ \n \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"4d7e7ab4-388d-462b-a5ea-9cf862db7a96\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"28fd3954-4516-434a-8e00-213bafd3db4e\"\ ,\r\n \"addressSpace\": {\r\n \"addressPrefixes\": [\r\n \ \ \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"dhcpOptions\"\ : {\r\n \"dnsServers\": [\r\n \"10.1.1.1\",\r\n \ \ \"10.1.2.4\"\r\n ]\r\n },\r\n \"subnets\": [\r\ \n {\r\n \"name\": \"pyvnetsubnetone4725106e\",\r\n \ \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n\ - \ \"delegations\": []\r\n }\r\n },\r\n \ - \ {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ - ,\r\n \"etag\": \"W/\\\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\\\"\ + \ \"delegations\": []\r\n },\r\n \"type\"\ + : \"Microsoft.Network/virtualNetworks/subnets\"\r\n },\r\n \ + \ {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\n \ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"etag\": \"W/\\\"13814b45-d0c0-4753-9597-6675db4cbe39\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n\ - \ \"delegations\": []\r\n }\r\n }\r\n \ - \ ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ + \ \"delegations\": []\r\n },\r\n \"type\"\ + : \"Microsoft.Network/virtualNetworks/subnets\"\r\n }\r\n \ + \ ],\r\n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\"\ : false,\r\n \"enableVmProtection\": false\r\n }\r\n }\r\n\ \ ]\r\n}"} headers: cache-control: [no-cache] - content-length: ['2015'] + content-length: ['2147'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:18 GMT'] + date: ['Tue, 11 Sep 2018 18:10:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] @@ -279,26 +281,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/virtualNetworks?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/virtualNetworks?api-version=2018-08-01 response: - body: {string: '{"value":[{"name":"pyvnet4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e","etag":"W/\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"4d7e7ab4-388d-462b-a5ea-9cf862db7a96","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":["10.1.1.1","10.1.2.4"]},"subnets":[{"name":"pyvnetsubnetone4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e","etag":"W/\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.1.0/24","delegations":[]}},{"name":"pyvnetsubnettwo4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e","etag":"W/\"420b6ce7-4af3-4550-9800-8f3e3ee40f4f\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","delegations":[]}}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvirtnetb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef","etag":"W/\"a5205462-b3f2-4829-8cfe-c8dd4fc0c8b7\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"10ad6fb3-6b7f-4f58-ba8c-e3faac3c8bd5","addressSpace":{"addressPrefixes":["10.11.0.0/16","10.12.0.0/16"]},"subnets":[{"name":"pysubnetfeb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef","etag":"W/\"a5205462-b3f2-4829-8cfe-c8dd4fc0c8b7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.11.0.0/24","delegations":[]}},{"name":"pysubnetbeb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef","etag":"W/\"a5205462-b3f2-4829-8cfe-c8dd4fc0c8b7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.0.0/24","delegations":[]}},{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet","etag":"W/\"a5205462-b3f2-4829-8cfe-c8dd4fc0c8b7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.255.0/27","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default"}],"delegations":[]}}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"wilxgroup1-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/virtualNetworks/wilxgroup1-vnet","etag":"W/\"3d40b43a-4ba9-4d8e-93fa-c6e88ea9da3b\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d8a0526f-c3ee-4d60-a87e-8d687ff75039","addressSpace":{"addressPrefixes":["10.1.1.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/virtualNetworks/wilxgroup1-vnet/subnets/default","etag":"W/\"3d40b43a-4ba9-4d8e-93fa-c6e88ea9da3b\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup1/providers/Microsoft.Network/networkInterfaces/windowsvm624/ipConfigurations/ipconfig1"}],"delegations":[]}}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"amar-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/amar-vnet","etag":"W/\"2cbd5448-2a06-4ad3-a9ad-95d0f96ada8e\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"56822e98-538a-4745-ba0a-65c0f7f6d5d5","addressSpace":{"addressPrefixes":["10.0.16.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/amar-vnet/subnets/default","etag":"W/\"2cbd5448-2a06-4ad3-a9ad-95d0f96ada8e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.16.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh554/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh2451/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh3187/ipConfigurations/ipconfig1"}],"delegations":[]}}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"amar-vnet2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/amar-vnet2","etag":"W/\"29b64b6f-1184-432c-878a-f3d8959d34c9\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"3c008d59-e58f-40ab-bc3b-2194a2a99d88","addressSpace":{"addressPrefixes":["10.2.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/amar-vnet2/subnets/default","etag":"W/\"29b64b6f-1184-432c-878a-f3d8959d34c9\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/amareh453/ipConfigurations/ipconfig1"}],"delegations":[]}}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"Dtlcliautomationlab","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitestlab1/providers/Microsoft.Network/virtualNetworks/Dtlcliautomationlab","etag":"W/\"dcef0c66-48df-4502-bd5b-fe1ab5484af8\"","type":"Microsoft.Network/virtualNetworks","location":"southcentralus","tags":{"hidden-DevTestLabs-LabUId":"ca9ec547-32c5-422d-b3d2-25906ed71959"},"properties":{"provisioningState":"Succeeded","resourceGuid":"b083abf5-63cf-4ba2-b6fa-55ce660ce895","addressSpace":{"addressPrefixes":["10.0.0.0/20"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"DtlcliautomationlabSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitestlab1/providers/Microsoft.Network/virtualNetworks/Dtlcliautomationlab/subnets/DtlcliautomationlabSubnet","etag":"W/\"dcef0c66-48df-4502-bd5b-fe1ab5484af8\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/20","delegations":[]}}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"lmazuel-testcapture-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/virtualNetworks/lmazuel-testcapture-vnet","etag":"W/\"092ec0ce-dfae-4ee3-a6f2-9bf813da2a88\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"a1ba5e36-4ef1-4778-bac9-826091314efa","addressSpace":{"addressPrefixes":["10.1.0.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/virtualNetworks/lmazuel-testcapture-vnet/subnets/default","etag":"W/\"092ec0ce-dfae-4ee3-a6f2-9bf813da2a88\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427/ipConfigurations/ipconfig1"}],"delegations":[]}}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}}]}'} + body: {string: '{"value":[{"name":"TestVMVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/virtualNetworks/TestVMVNET","etag":"W/\"cad7f4c7-4b78-4f10-8920-ccff926a1944\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"978fac18-f4bb-4208-a361-0d7807856490","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"TestVMSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/virtualNetworks/TestVMVNET/subnets/TestVMSubnet","etag":"W/\"cad7f4c7-4b78-4f10-8920-ccff926a1944\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6"},"ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVMVMNic/ipConfigurations/ipconfigTestVM"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaTestGroup/providers/Microsoft.Network/networkInterfaces/TestVM2VMNic/ipConfigurations/ipconfigTestVM2"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvnet4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e","etag":"W/\"13814b45-d0c0-4753-9597-6675db4cbe39\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"28fd3954-4516-434a-8e00-213bafd3db4e","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":["10.1.1.1","10.1.2.4"]},"subnets":[{"name":"pyvnetsubnetone4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e","etag":"W/\"13814b45-d0c0-4753-9597-6675db4cbe39\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.1.0/24","delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pyvnetsubnettwo4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e","etag":"W/\"13814b45-d0c0-4753-9597-6675db4cbe39\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvirtnetb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef","etag":"W/\"2c69e932-201c-40b5-8463-5b1fa6590e24\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"f4e18441-91a0-49b3-88c4-fedaf21d6288","addressSpace":{"addressPrefixes":["10.11.0.0/16","10.12.0.0/16"]},"subnets":[{"name":"pysubnetfeb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef","etag":"W/\"2c69e932-201c-40b5-8463-5b1fa6590e24\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.11.0.0/24","delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pysubnetbeb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef","etag":"W/\"2c69e932-201c-40b5-8463-5b1fa6590e24\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.0.0/24","delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet","etag":"W/\"2c69e932-201c-40b5-8463-5b1fa6590e24\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.255.0/27","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"wilxvm1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/virtualNetworks/wilxvm1VNET","etag":"W/\"1119da29-82cb-43fd-97ce-1d2f3c1a6ab0\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f532ec91-debf-46ff-9d28-f2e177aa6e17","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"wilxvm1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/virtualNetworks/wilxvm1VNET/subnets/wilxvm1Subnet","etag":"W/\"1119da29-82cb-43fd-97ce-1d2f3c1a6ab0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg6"},"ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Network/networkInterfaces/wilxvm1VMNic/ipConfigurations/ipconfigwilxvm1"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"abunt3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abunt3","etag":"W/\"0e9a2fe0-a94b-4f65-85b9-ab8fcaed8149\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"1138617d-1a25-4252-8846-1a72b81aa4a8","addressSpace":{"addressPrefixes":["10.2.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abunt3/subnets/default","etag":"W/\"0e9a2fe0-a94b-4f65-85b9-ab8fcaed8149\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.0.0/24","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg"},"ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu3634/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu1428/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2743/ipConfigurations/ipconfig1"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"abuntu-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu-vnet","etag":"W/\"5a0a8b60-b7ab-4407-9cb3-5d06b9871779\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"ac579595-763e-4053-895d-cfbed48dd172","addressSpace":{"addressPrefixes":["10.3.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu-vnet/subnets/default","etag":"W/\"5a0a8b60-b7ab-4407-9cb3-5d06b9871779\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.3.0.0/24","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg"},"ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu259/ipConfigurations/ipconfig1"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"abuntu2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu2","etag":"W/\"27aef006-e982-4285-92ba-677483aaeb03\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"8d52136d-fdf0-413b-be8e-f68a7d57eddc","addressSpace":{"addressPrefixes":["10.5.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu2/subnets/default","etag":"W/\"27aef006-e982-4285-92ba-677483aaeb03\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.5.0.0/24","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg"},"ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abuntu2817/ipConfigurations/ipconfig1"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"abuntu3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu3","etag":"W/\"e187a70d-2f97-40dc-8a5c-dae16721ddcb\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"fa919f6c-1730-4ba6-99a1-909f8ab380d0","addressSpace":{"addressPrefixes":["10.4.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/virtualNetworks/abuntu3/subnets/default","etag":"W/\"e187a70d-2f97-40dc-8a5c-dae16721ddcb\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.4.0.0/24","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg"},"ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Network/networkInterfaces/abunt4752/ipConfigurations/ipconfig1"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"Dtlcliautomationlab","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitestlab1/providers/Microsoft.Network/virtualNetworks/Dtlcliautomationlab","etag":"W/\"260bff7b-7436-49c5-8836-49b261c2e518\"","type":"Microsoft.Network/virtualNetworks","location":"southcentralus","tags":{"hidden-DevTestLabs-LabUId":"ca9ec547-32c5-422d-b3d2-25906ed71959"},"properties":{"provisioningState":"Succeeded","resourceGuid":"b083abf5-63cf-4ba2-b6fa-55ce660ce895","addressSpace":{"addressPrefixes":["10.0.0.0/20"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"DtlcliautomationlabSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitestlab1/providers/Microsoft.Network/virtualNetworks/Dtlcliautomationlab/subnets/DtlcliautomationlabSubnet","etag":"W/\"260bff7b-7436-49c5-8836-49b261c2e518\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/20","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg1"},"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"TestVMVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/virtualNetworks/TestVMVNET","etag":"W/\"e12c440b-91f5-4068-9108-4a56380ff2e2\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0689cce2-4c74-470f-a9b1-01bcb40056a1","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"TestVMSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/virtualNetworks/TestVMVNET/subnets/TestVMSubnet","etag":"W/\"e12c440b-91f5-4068-9108-4a56380ff2e2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg8"},"ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ovaZones/providers/Microsoft.Network/networkInterfaces/TestVMVMNic/ipConfigurations/ipconfigTestVM"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"lmazuel-testcapture-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/virtualNetworks/lmazuel-testcapture-vnet","etag":"W/\"e9cc42b4-8cd7-4839-ab92-fe3147b98a20\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"a1ba5e36-4ef1-4778-bac9-826091314efa","addressSpace":{"addressPrefixes":["10.1.0.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/virtualNetworks/lmazuel-testcapture-vnet/subnets/default","etag":"W/\"e9cc42b4-8cd7-4839-ab92-fe3147b98a20\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.0.0/24","networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cleanupservice/providers/Microsoft.Network/networkSecurityGroups/rg-cleanupservice-nsg2"},"ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Network/networkInterfaces/lmazuel-testcapture427/ipConfigurations/ipconfig1"}],"delegations":[]},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}}]}'} headers: cache-control: [no-cache] - content-length: ['9064'] + content-length: ['15791'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:20 GMT'] + date: ['Tue, 11 Sep 2018 18:10:47 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-original-request-ids: [0ef90879-1e5f-48e2-8c8a-52493023ae22, 3ef1e4f0-a15a-49e9-9ac9-267e964ff801, - 0b788624-82ec-4fa6-b183-f551dcb78718, 39ee7759-879e-4bd0-8755-8941fd09e5c7] + x-ms-original-request-ids: [66136c22-8ce1-4a04-9889-78e10c00ae74, 3db1bc2d-c7dd-41ec-9b3b-1486dffc8f61, + 95c00f16-b8fa-4013-8799-58ea46533053, 21199ba6-985e-433f-85a5-f4e095c136b4, + 369d4cc6-cbf9-44e5-ba9a-1d6437ce34dc] status: {code: 200, message: OK} - request: body: null @@ -307,21 +309,20 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2018-08-01 response: body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/0658042b-296d-4e7d-a9c6-8f4ce4d81127?api-version=2018-06-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/11f92986-680b-43cd-9243-f83eb11a25ea?api-version=2018-08-01'] cache-control: [no-cache] content-length: ['0'] - date: ['Fri, 27 Jul 2018 23:17:21 GMT'] + date: ['Tue, 11 Sep 2018 18:10:47 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/0658042b-296d-4e7d-a9c6-8f4ce4d81127?api-version=2018-06-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/11f92986-680b-43cd-9243-f83eb11a25ea?api-version=2018-08-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -334,17 +335,17 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 - msrest_azure/0.4.34 networkmanagementclient/2.0.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 networkmanagementclient/2.2.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/0658042b-296d-4e7d-a9c6-8f4ce4d81127?api-version=2018-06-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/11f92986-680b-43cd-9243-f83eb11a25ea?api-version=2018-08-01 response: body: {string: "{\r\n \"status\": \"Succeeded\"\r\n}"} headers: cache-control: [no-cache] content-length: ['29'] content-type: [application/json; charset=utf-8] - date: ['Fri, 27 Jul 2018 23:17:32 GMT'] + date: ['Tue, 11 Sep 2018 18:10:58 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] diff --git a/azure-mgmt-network/tests/test_mgmt_network.py b/azure-mgmt-network/tests/test_mgmt_network.py index 4c5dba8c58b4..09bcd780055e 100644 --- a/azure-mgmt-network/tests/test_mgmt_network.py +++ b/azure-mgmt-network/tests/test_mgmt_network.py @@ -8,7 +8,6 @@ import unittest import azure.mgmt.network.models -from testutils.common_recordingtestcase import record from devtools_testutils import ( AzureMgmtTestCase, ResourceGroupPreparer, @@ -70,7 +69,7 @@ def test_network_interface_card(self, resource_group, location): resource_group.name, nic_info.name ) - + nics = list(self.network_client.network_interfaces.list( resource_group.name )) @@ -637,7 +636,7 @@ def test_express_route_circuit(self, resource_group, location): 'AzurePublicPeering', { "peering_type": "AzurePublicPeering", - "peer_asn": 100, + "peer_asn": 100, "primary_peer_address_prefix": "192.168.1.0/30", "secondary_peer_address_prefix": "192.168.2.0/30", "vlan_id": 200, diff --git a/azure-mgmt-notificationhubs/MANIFEST.in b/azure-mgmt-notificationhubs/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-notificationhubs/MANIFEST.in +++ b/azure-mgmt-notificationhubs/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-notificationhubs/README.rst b/azure-mgmt-notificationhubs/README.rst index c2993d6f867c..d9d406e03c22 100644 --- a/azure-mgmt-notificationhubs/README.rst +++ b/azure-mgmt-notificationhubs/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Notification Hubs Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-notificationhubs/azure/__init__.py b/azure-mgmt-notificationhubs/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-notificationhubs/azure/__init__.py +++ b/azure-mgmt-notificationhubs/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-notificationhubs/azure/mgmt/__init__.py b/azure-mgmt-notificationhubs/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-notificationhubs/azure/mgmt/__init__.py +++ b/azure-mgmt-notificationhubs/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-notificationhubs/azure_bdist_wheel.py b/azure-mgmt-notificationhubs/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-notificationhubs/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-notificationhubs/setup.cfg b/azure-mgmt-notificationhubs/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-notificationhubs/setup.cfg +++ b/azure-mgmt-notificationhubs/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-notificationhubs/setup.py b/azure-mgmt-notificationhubs/setup.py index ddd7cd1693b1..605d8a7bc905 100644 --- a/azure-mgmt-notificationhubs/setup.py +++ b/azure-mgmt-notificationhubs/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-notificationhubs" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-nspkg/MANIFEST.in b/azure-mgmt-nspkg/MANIFEST.in index bb37a2723dae..ac87972df424 100644 --- a/azure-mgmt-nspkg/MANIFEST.in +++ b/azure-mgmt-nspkg/MANIFEST.in @@ -1 +1,3 @@ include *.rst +include azure/__init__.py +include azure/mgmt/__init__.py diff --git a/azure-mgmt-nspkg/README.rst b/azure-mgmt-nspkg/README.rst index 8a67977e4025..fb06c46afe80 100644 --- a/azure-mgmt-nspkg/README.rst +++ b/azure-mgmt-nspkg/README.rst @@ -5,6 +5,9 @@ This is the Microsoft Azure Management namespace package. This package is not intended to be installed directly by the end user. +Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 `__ as namespace package strategy. +To avoid issues with package servers that does not support `python_requires`, a Python 3 package is installed but is empty. + It provides the necessary files for other packages to extend the azure.mgmt namespace. If you are looking to install the Azure client libraries, see the diff --git a/azure-mgmt-nspkg/azure/__init__.py b/azure-mgmt-nspkg/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-nspkg/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-nspkg/azure/mgmt/__init__.py b/azure-mgmt-nspkg/azure/mgmt/__init__.py index e69de29bb2d1..0260537a02bb 100644 --- a/azure-mgmt-nspkg/azure/mgmt/__init__.py +++ b/azure-mgmt-nspkg/azure/mgmt/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-nspkg/sdk_packaging.toml b/azure-mgmt-nspkg/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-mgmt-nspkg/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-mgmt-nspkg/setup.py b/azure-mgmt-nspkg/setup.py index f6a01ad91c0c..b15e39e5c035 100644 --- a/azure-mgmt-nspkg/setup.py +++ b/azure-mgmt-nspkg/setup.py @@ -5,7 +5,7 @@ # Licensed under the MIT License. See License.txt in the project root for # license information. #-------------------------------------------------------------------------- - +import sys from setuptools import setup # azure v0.x is not compatible with this package @@ -23,14 +23,21 @@ except ImportError: pass +PACKAGES = [] +# Do an empty package on Python 3 and not python_requires, since not everybody is ready +# https://github.com/Azure/azure-sdk-for-python/issues/3447 +# https://github.com/Azure/azure-sdk-for-python/issues/3481 +if sys.version_info[0] < 3: + PACKAGES = ['azure.mgmt'] + setup( name='azure-mgmt-nspkg', - version='2.0.0', + version='3.0.2', description='Microsoft Azure Resource Management Namespace Package [Internal]', long_description=open('README.rst', 'r').read(), license='MIT License', author='Microsoft Corporation', - author_email='ptvshelp@microsoft.com', + author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ 'Development Status :: 5 - Production/Stable', @@ -38,18 +45,15 @@ 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=[ - 'azure', - 'azure.mgmt', - ], + packages=PACKAGES, install_requires=[ - 'azure-nspkg>=2.0.0', + 'azure-nspkg>=3.0.0', ] ) diff --git a/azure-mgmt-policyinsights/MANIFEST.in b/azure-mgmt-policyinsights/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-policyinsights/MANIFEST.in +++ b/azure-mgmt-policyinsights/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-policyinsights/README.rst b/azure-mgmt-policyinsights/README.rst index ed70aaf0537f..9fbe107ff456 100644 --- a/azure-mgmt-policyinsights/README.rst +++ b/azure-mgmt-policyinsights/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Policy Insights Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Policy Insights -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-policyinsights/azure/__init__.py b/azure-mgmt-policyinsights/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-policyinsights/azure/__init__.py +++ b/azure-mgmt-policyinsights/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-policyinsights/azure/mgmt/__init__.py b/azure-mgmt-policyinsights/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-policyinsights/azure/mgmt/__init__.py +++ b/azure-mgmt-policyinsights/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-policyinsights/azure_bdist_wheel.py b/azure-mgmt-policyinsights/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-policyinsights/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-policyinsights/sdk_packaging.toml b/azure-mgmt-policyinsights/sdk_packaging.toml new file mode 100644 index 000000000000..b1f106a899ce --- /dev/null +++ b/azure-mgmt-policyinsights/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-policyinsights" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Policy Insights" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-policyinsights/setup.cfg b/azure-mgmt-policyinsights/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-policyinsights/setup.cfg +++ b/azure-mgmt-policyinsights/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-policyinsights/setup.py b/azure-mgmt-policyinsights/setup.py index ed08d1623368..f8a123157ec8 100644 --- a/azure-mgmt-policyinsights/setup.py +++ b/azure-mgmt-policyinsights/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-policyinsights" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-powerbiembedded/MANIFEST.in b/azure-mgmt-powerbiembedded/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-powerbiembedded/MANIFEST.in +++ b/azure-mgmt-powerbiembedded/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-powerbiembedded/README.rst b/azure-mgmt-powerbiembedded/README.rst index f75a904d0183..b896fa1385d3 100644 --- a/azure-mgmt-powerbiembedded/README.rst +++ b/azure-mgmt-powerbiembedded/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Power BI Embedded Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-powerbiembedded/azure/__init__.py b/azure-mgmt-powerbiembedded/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-powerbiembedded/azure/__init__.py +++ b/azure-mgmt-powerbiembedded/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-powerbiembedded/azure/mgmt/__init__.py b/azure-mgmt-powerbiembedded/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-powerbiembedded/azure/mgmt/__init__.py +++ b/azure-mgmt-powerbiembedded/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-powerbiembedded/azure_bdist_wheel.py b/azure-mgmt-powerbiembedded/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-powerbiembedded/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-powerbiembedded/setup.cfg b/azure-mgmt-powerbiembedded/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-powerbiembedded/setup.cfg +++ b/azure-mgmt-powerbiembedded/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-powerbiembedded/setup.py b/azure-mgmt-powerbiembedded/setup.py index 90d75208fd7e..15725453bd9f 100644 --- a/azure-mgmt-powerbiembedded/setup.py +++ b/azure-mgmt-powerbiembedded/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-powerbiembedded" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-rdbms/HISTORY.rst b/azure-mgmt-rdbms/HISTORY.rst index e19d3057fd2b..15c09b04999f 100644 --- a/azure-mgmt-rdbms/HISTORY.rst +++ b/azure-mgmt-rdbms/HISTORY.rst @@ -3,6 +3,44 @@ Release History =============== +1.5.0 (2018-10-30) +++++++++++++++++++ + +**Features** + +- Added operation group VirtualNetworkRulesOperations for MariaDB + +1.4.1 (2018-10-16) +++++++++++++++++++ + +**Bugfix** + +- Fix sdist broken in 1.4.0. No code change. + +1.4.0 (2018-10-11) +++++++++++++++++++ + +**Features** + +- Model Server has a new parameter replication_role +- Model Server has a new parameter master_server_id +- Model Server has a new parameter replica_capacity +- Model ServerUpdateParameters has a new parameter replication_role +- Added operation group ReplicasOperations + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + +1.3.0 (2018-09-13) +++++++++++++++++++ + +**Features** + +- Added operation group ServerSecurityAlertPoliciesOperations (MySQL only) +- Added support for PostregreSQL 10.x +- Added support for MariaDB (public preview) + 1.2.0 (2018-05-30) ++++++++++++++++++ diff --git a/azure-mgmt-rdbms/MANIFEST.in b/azure-mgmt-rdbms/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-rdbms/MANIFEST.in +++ b/azure-mgmt-rdbms/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-rdbms/README.rst b/azure-mgmt-rdbms/README.rst index fd71c9b33560..fd482c8d4e95 100644 --- a/azure-mgmt-rdbms/README.rst +++ b/azure-mgmt-rdbms/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure RDBMS Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -36,12 +36,8 @@ If you see azure==0.11.0 (or any version below 1.0), uninstall it first: Usage ===== -For code examples, see `PostgreSQL -`__ -on docs.microsoft.com. - -For code examples, see `MySQL -`__ +For code examples, see `RDBMS Management +`__ on docs.microsoft.com. diff --git a/azure-mgmt-rdbms/azure/__init__.py b/azure-mgmt-rdbms/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-rdbms/azure/__init__.py +++ b/azure-mgmt-rdbms/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-rdbms/azure/mgmt/__init__.py b/azure-mgmt-rdbms/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-rdbms/azure/mgmt/__init__.py +++ b/azure-mgmt-rdbms/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/__init__.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/__init__.py new file mode 100644 index 000000000000..9aa3b679e73c --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/__init__.py @@ -0,0 +1,18 @@ +# 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 .maria_db_management_client import MariaDBManagementClient +from .version import VERSION + +__all__ = ['MariaDBManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/maria_db_management_client.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/maria_db_management_client.py new file mode 100644 index 000000000000..0181f41782d5 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/maria_db_management_client.py @@ -0,0 +1,128 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.servers_operations import ServersOperations +from .operations.firewall_rules_operations import FirewallRulesOperations +from .operations.virtual_network_rules_operations import VirtualNetworkRulesOperations +from .operations.databases_operations import DatabasesOperations +from .operations.configurations_operations import ConfigurationsOperations +from .operations.log_files_operations import LogFilesOperations +from .operations.location_based_performance_tier_operations import LocationBasedPerformanceTierOperations +from .operations.check_name_availability_operations import CheckNameAvailabilityOperations +from .operations.server_security_alert_policies_operations import ServerSecurityAlertPoliciesOperations +from .operations.operations import Operations +from . import models + + +class MariaDBManagementClientConfiguration(AzureConfiguration): + """Configuration for MariaDBManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription ID that identifies an Azure + subscription. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(MariaDBManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-rdbms/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class MariaDBManagementClient(SDKClient): + """MariaDB Client + + :ivar config: Configuration for client. + :vartype config: MariaDBManagementClientConfiguration + + :ivar servers: Servers operations + :vartype servers: azure.mgmt.rdbms.mariadb.operations.ServersOperations + :ivar firewall_rules: FirewallRules operations + :vartype firewall_rules: azure.mgmt.rdbms.mariadb.operations.FirewallRulesOperations + :ivar virtual_network_rules: VirtualNetworkRules operations + :vartype virtual_network_rules: azure.mgmt.rdbms.mariadb.operations.VirtualNetworkRulesOperations + :ivar databases: Databases operations + :vartype databases: azure.mgmt.rdbms.mariadb.operations.DatabasesOperations + :ivar configurations: Configurations operations + :vartype configurations: azure.mgmt.rdbms.mariadb.operations.ConfigurationsOperations + :ivar log_files: LogFiles operations + :vartype log_files: azure.mgmt.rdbms.mariadb.operations.LogFilesOperations + :ivar location_based_performance_tier: LocationBasedPerformanceTier operations + :vartype location_based_performance_tier: azure.mgmt.rdbms.mariadb.operations.LocationBasedPerformanceTierOperations + :ivar check_name_availability: CheckNameAvailability operations + :vartype check_name_availability: azure.mgmt.rdbms.mariadb.operations.CheckNameAvailabilityOperations + :ivar server_security_alert_policies: ServerSecurityAlertPolicies operations + :vartype server_security_alert_policies: azure.mgmt.rdbms.mariadb.operations.ServerSecurityAlertPoliciesOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.rdbms.mariadb.operations.Operations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription ID that identifies an Azure + subscription. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = MariaDBManagementClientConfiguration(credentials, subscription_id, base_url) + super(MariaDBManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2018-06-01-preview' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.servers = ServersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.firewall_rules = FirewallRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_rules = VirtualNetworkRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.databases = DatabasesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.configurations = ConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.log_files = LogFilesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.location_based_performance_tier = LocationBasedPerformanceTierOperations( + self._client, self.config, self._serialize, self._deserialize) + self.check_name_availability = CheckNameAvailabilityOperations( + self._client, self.config, self._serialize, self._deserialize) + self.server_security_alert_policies = ServerSecurityAlertPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/__init__.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/__init__.py new file mode 100644 index 000000000000..5e35abaa7759 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/__init__.py @@ -0,0 +1,120 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .proxy_resource_py3 import ProxyResource + from .tracked_resource_py3 import TrackedResource + from .storage_profile_py3 import StorageProfile + from .server_properties_for_create_py3 import ServerPropertiesForCreate + from .server_properties_for_default_create_py3 import ServerPropertiesForDefaultCreate + from .server_properties_for_restore_py3 import ServerPropertiesForRestore + from .server_properties_for_geo_restore_py3 import ServerPropertiesForGeoRestore + from .sku_py3 import Sku + from .server_py3 import Server + from .server_for_create_py3 import ServerForCreate + from .server_update_parameters_py3 import ServerUpdateParameters + from .firewall_rule_py3 import FirewallRule + from .virtual_network_rule_py3 import VirtualNetworkRule + from .database_py3 import Database + from .configuration_py3 import Configuration + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation + from .operation_list_result_py3 import OperationListResult + from .log_file_py3 import LogFile + from .performance_tier_service_level_objectives_py3 import PerformanceTierServiceLevelObjectives + from .performance_tier_properties_py3 import PerformanceTierProperties + from .name_availability_request_py3 import NameAvailabilityRequest + from .name_availability_py3 import NameAvailability + from .server_security_alert_policy_py3 import ServerSecurityAlertPolicy +except (SyntaxError, ImportError): + from .proxy_resource import ProxyResource + from .tracked_resource import TrackedResource + from .storage_profile import StorageProfile + from .server_properties_for_create import ServerPropertiesForCreate + from .server_properties_for_default_create import ServerPropertiesForDefaultCreate + from .server_properties_for_restore import ServerPropertiesForRestore + from .server_properties_for_geo_restore import ServerPropertiesForGeoRestore + from .sku import Sku + from .server import Server + from .server_for_create import ServerForCreate + from .server_update_parameters import ServerUpdateParameters + from .firewall_rule import FirewallRule + from .virtual_network_rule import VirtualNetworkRule + from .database import Database + from .configuration import Configuration + from .operation_display import OperationDisplay + from .operation import Operation + from .operation_list_result import OperationListResult + from .log_file import LogFile + from .performance_tier_service_level_objectives import PerformanceTierServiceLevelObjectives + from .performance_tier_properties import PerformanceTierProperties + from .name_availability_request import NameAvailabilityRequest + from .name_availability import NameAvailability + from .server_security_alert_policy import ServerSecurityAlertPolicy +from .server_paged import ServerPaged +from .firewall_rule_paged import FirewallRulePaged +from .virtual_network_rule_paged import VirtualNetworkRulePaged +from .database_paged import DatabasePaged +from .configuration_paged import ConfigurationPaged +from .log_file_paged import LogFilePaged +from .performance_tier_properties_paged import PerformanceTierPropertiesPaged +from .maria_db_management_client_enums import ( + ServerVersion, + SslEnforcementEnum, + ServerState, + GeoRedundantBackup, + SkuTier, + VirtualNetworkRuleState, + OperationOrigin, + ServerSecurityAlertPolicyState, +) + +__all__ = [ + 'ProxyResource', + 'TrackedResource', + 'StorageProfile', + 'ServerPropertiesForCreate', + 'ServerPropertiesForDefaultCreate', + 'ServerPropertiesForRestore', + 'ServerPropertiesForGeoRestore', + 'Sku', + 'Server', + 'ServerForCreate', + 'ServerUpdateParameters', + 'FirewallRule', + 'VirtualNetworkRule', + 'Database', + 'Configuration', + 'OperationDisplay', + 'Operation', + 'OperationListResult', + 'LogFile', + 'PerformanceTierServiceLevelObjectives', + 'PerformanceTierProperties', + 'NameAvailabilityRequest', + 'NameAvailability', + 'ServerSecurityAlertPolicy', + 'ServerPaged', + 'FirewallRulePaged', + 'VirtualNetworkRulePaged', + 'DatabasePaged', + 'ConfigurationPaged', + 'LogFilePaged', + 'PerformanceTierPropertiesPaged', + 'ServerVersion', + 'SslEnforcementEnum', + 'ServerState', + 'GeoRedundantBackup', + 'SkuTier', + 'VirtualNetworkRuleState', + 'OperationOrigin', + 'ServerSecurityAlertPolicyState', +] diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration.py new file mode 100644 index 000000000000..8d95fc4a0f25 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class Configuration(ProxyResource): + """Represents a Configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param value: Value of the configuration. + :type value: str + :ivar description: Description of the configuration. + :vartype description: str + :ivar default_value: Default value of the configuration. + :vartype default_value: str + :ivar data_type: Data type of the configuration. + :vartype data_type: str + :ivar allowed_values: Allowed values of the configuration. + :vartype allowed_values: str + :param source: Source of the configuration. + :type source: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'readonly': True}, + 'default_value': {'readonly': True}, + 'data_type': {'readonly': True}, + 'allowed_values': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'default_value': {'key': 'properties.defaultValue', 'type': 'str'}, + 'data_type': {'key': 'properties.dataType', 'type': 'str'}, + 'allowed_values': {'key': 'properties.allowedValues', 'type': 'str'}, + 'source': {'key': 'properties.source', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Configuration, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.description = None + self.default_value = None + self.data_type = None + self.allowed_values = None + self.source = kwargs.get('source', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration_paged.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration_paged.py new file mode 100644 index 000000000000..c70c45f28d4e --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Configuration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Configuration]'} + } + + def __init__(self, *args, **kwargs): + + super(ConfigurationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration_py3.py new file mode 100644 index 000000000000..59929c953a7e --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/configuration_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class Configuration(ProxyResource): + """Represents a Configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param value: Value of the configuration. + :type value: str + :ivar description: Description of the configuration. + :vartype description: str + :ivar default_value: Default value of the configuration. + :vartype default_value: str + :ivar data_type: Data type of the configuration. + :vartype data_type: str + :ivar allowed_values: Allowed values of the configuration. + :vartype allowed_values: str + :param source: Source of the configuration. + :type source: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'readonly': True}, + 'default_value': {'readonly': True}, + 'data_type': {'readonly': True}, + 'allowed_values': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'default_value': {'key': 'properties.defaultValue', 'type': 'str'}, + 'data_type': {'key': 'properties.dataType', 'type': 'str'}, + 'allowed_values': {'key': 'properties.allowedValues', 'type': 'str'}, + 'source': {'key': 'properties.source', 'type': 'str'}, + } + + def __init__(self, *, value: str=None, source: str=None, **kwargs) -> None: + super(Configuration, self).__init__(**kwargs) + self.value = value + self.description = None + self.default_value = None + self.data_type = None + self.allowed_values = None + self.source = source diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database.py new file mode 100644 index 000000000000..f503efb9fa34 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class Database(ProxyResource): + """Represents a Database. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param charset: The charset of the database. + :type charset: str + :param collation: The collation of the database. + :type collation: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'charset': {'key': 'properties.charset', 'type': 'str'}, + 'collation': {'key': 'properties.collation', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Database, self).__init__(**kwargs) + self.charset = kwargs.get('charset', None) + self.collation = kwargs.get('collation', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database_paged.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database_paged.py new file mode 100644 index 000000000000..0085e88f5c49 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DatabasePaged(Paged): + """ + A paging container for iterating over a list of :class:`Database ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Database]'} + } + + def __init__(self, *args, **kwargs): + + super(DatabasePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database_py3.py new file mode 100644 index 000000000000..af8b0ce61e7c --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/database_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class Database(ProxyResource): + """Represents a Database. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param charset: The charset of the database. + :type charset: str + :param collation: The collation of the database. + :type collation: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'charset': {'key': 'properties.charset', 'type': 'str'}, + 'collation': {'key': 'properties.collation', 'type': 'str'}, + } + + def __init__(self, *, charset: str=None, collation: str=None, **kwargs) -> None: + super(Database, self).__init__(**kwargs) + self.charset = charset + self.collation = collation diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule.py new file mode 100644 index 000000000000..af9a04f835d9 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class FirewallRule(ProxyResource): + """Represents a server firewall rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param start_ip_address: Required. The start IP address of the server + firewall rule. Must be IPv4 format. + :type start_ip_address: str + :param end_ip_address: Required. The end IP address of the server firewall + rule. Must be IPv4 format. + :type end_ip_address: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'start_ip_address': {'required': True, 'pattern': r'^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'}, + 'end_ip_address': {'required': True, 'pattern': r'^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_ip_address': {'key': 'properties.startIpAddress', 'type': 'str'}, + 'end_ip_address': {'key': 'properties.endIpAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FirewallRule, self).__init__(**kwargs) + self.start_ip_address = kwargs.get('start_ip_address', None) + self.end_ip_address = kwargs.get('end_ip_address', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule_paged.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule_paged.py new file mode 100644 index 000000000000..8b2f23768209 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class FirewallRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`FirewallRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[FirewallRule]'} + } + + def __init__(self, *args, **kwargs): + + super(FirewallRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule_py3.py new file mode 100644 index 000000000000..f5da7a6331e5 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/firewall_rule_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class FirewallRule(ProxyResource): + """Represents a server firewall rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param start_ip_address: Required. The start IP address of the server + firewall rule. Must be IPv4 format. + :type start_ip_address: str + :param end_ip_address: Required. The end IP address of the server firewall + rule. Must be IPv4 format. + :type end_ip_address: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'start_ip_address': {'required': True, 'pattern': r'^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'}, + 'end_ip_address': {'required': True, 'pattern': r'^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_ip_address': {'key': 'properties.startIpAddress', 'type': 'str'}, + 'end_ip_address': {'key': 'properties.endIpAddress', 'type': 'str'}, + } + + def __init__(self, *, start_ip_address: str, end_ip_address: str, **kwargs) -> None: + super(FirewallRule, self).__init__(**kwargs) + self.start_ip_address = start_ip_address + self.end_ip_address = end_ip_address diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file.py new file mode 100644 index 000000000000..557c79536e1d --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class LogFile(ProxyResource): + """Represents a log file. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param size_in_kb: Size of the log file. + :type size_in_kb: long + :ivar created_time: Creation timestamp of the log file. + :vartype created_time: datetime + :ivar last_modified_time: Last modified timestamp of the log file. + :vartype last_modified_time: datetime + :param log_file_type: Type of the log file. + :type log_file_type: str + :ivar url: The url to download the log file from. + :vartype url: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'created_time': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + 'url': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'size_in_kb': {'key': 'properties.sizeInKB', 'type': 'long'}, + 'created_time': {'key': 'properties.createdTime', 'type': 'iso-8601'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + 'log_file_type': {'key': 'properties.type', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LogFile, self).__init__(**kwargs) + self.size_in_kb = kwargs.get('size_in_kb', None) + self.created_time = None + self.last_modified_time = None + self.log_file_type = kwargs.get('log_file_type', None) + self.url = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file_paged.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file_paged.py new file mode 100644 index 000000000000..aaa67eb18dd9 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class LogFilePaged(Paged): + """ + A paging container for iterating over a list of :class:`LogFile ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LogFile]'} + } + + def __init__(self, *args, **kwargs): + + super(LogFilePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file_py3.py new file mode 100644 index 000000000000..c5ff4ea6d345 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/log_file_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class LogFile(ProxyResource): + """Represents a log file. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param size_in_kb: Size of the log file. + :type size_in_kb: long + :ivar created_time: Creation timestamp of the log file. + :vartype created_time: datetime + :ivar last_modified_time: Last modified timestamp of the log file. + :vartype last_modified_time: datetime + :param log_file_type: Type of the log file. + :type log_file_type: str + :ivar url: The url to download the log file from. + :vartype url: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'created_time': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + 'url': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'size_in_kb': {'key': 'properties.sizeInKB', 'type': 'long'}, + 'created_time': {'key': 'properties.createdTime', 'type': 'iso-8601'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + 'log_file_type': {'key': 'properties.type', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + } + + def __init__(self, *, size_in_kb: int=None, log_file_type: str=None, **kwargs) -> None: + super(LogFile, self).__init__(**kwargs) + self.size_in_kb = size_in_kb + self.created_time = None + self.last_modified_time = None + self.log_file_type = log_file_type + self.url = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/maria_db_management_client_enums.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/maria_db_management_client_enums.py new file mode 100644 index 000000000000..9ee8ed1ee785 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/maria_db_management_client_enums.py @@ -0,0 +1,66 @@ +# 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 enum import Enum + + +class ServerVersion(str, Enum): + + five_full_stop_six = "5.6" + five_full_stop_seven = "5.7" + + +class SslEnforcementEnum(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" + + +class ServerState(str, Enum): + + ready = "Ready" + dropping = "Dropping" + disabled = "Disabled" + + +class GeoRedundantBackup(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" + + +class SkuTier(str, Enum): + + basic = "Basic" + general_purpose = "GeneralPurpose" + memory_optimized = "MemoryOptimized" + + +class VirtualNetworkRuleState(str, Enum): + + initializing = "Initializing" + in_progress = "InProgress" + ready = "Ready" + deleting = "Deleting" + unknown = "Unknown" + + +class OperationOrigin(str, Enum): + + not_specified = "NotSpecified" + user = "user" + system = "system" + + +class ServerSecurityAlertPolicyState(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability.py new file mode 100644 index 000000000000..327a74ca8a48 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAvailability(Model): + """Represents a resource name availability. + + :param message: Error Message. + :type message: str + :param name_available: Indicates whether the resource name is available. + :type name_available: bool + :param reason: Reason for name being unavailable. + :type reason: str + """ + + _attribute_map = { + 'message': {'key': 'message', 'type': 'str'}, + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NameAvailability, self).__init__(**kwargs) + self.message = kwargs.get('message', None) + self.name_available = kwargs.get('name_available', None) + self.reason = kwargs.get('reason', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_py3.py new file mode 100644 index 000000000000..f7b52a09e29f --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAvailability(Model): + """Represents a resource name availability. + + :param message: Error Message. + :type message: str + :param name_available: Indicates whether the resource name is available. + :type name_available: bool + :param reason: Reason for name being unavailable. + :type reason: str + """ + + _attribute_map = { + 'message': {'key': 'message', 'type': 'str'}, + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'str'}, + } + + def __init__(self, *, message: str=None, name_available: bool=None, reason: str=None, **kwargs) -> None: + super(NameAvailability, self).__init__(**kwargs) + self.message = message + self.name_available = name_available + self.reason = reason diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_request.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_request.py new file mode 100644 index 000000000000..33cac8ab5308 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_request.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAvailabilityRequest(Model): + """Request from client to check resource name availability. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Resource name to verify. + :type name: str + :param type: Resource type used for verification. + :type type: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NameAvailabilityRequest, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_request_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_request_py3.py new file mode 100644 index 000000000000..ec45bb2e4730 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/name_availability_request_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAvailabilityRequest(Model): + """Request from client to check resource name availability. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Resource name to verify. + :type name: str + :param type: Resource type used for verification. + :type type: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, name: str, type: str=None, **kwargs) -> None: + super(NameAvailabilityRequest, self).__init__(**kwargs) + self.name = name + self.type = type diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation.py new file mode 100644 index 000000000000..a4d12d9c276b --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """REST API operation definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the operation being performed on this particular + object. + :vartype name: str + :ivar display: The localized display information for this particular + operation or action. + :vartype display: ~azure.mgmt.rdbms.mariadb.models.OperationDisplay + :ivar origin: The intended executor of the operation. Possible values + include: 'NotSpecified', 'user', 'system' + :vartype origin: str or ~azure.mgmt.rdbms.mariadb.models.OperationOrigin + :ivar properties: Additional descriptions for the operation. + :vartype properties: dict[str, object] + """ + + _validation = { + 'name': {'readonly': True}, + 'display': {'readonly': True}, + 'origin': {'readonly': True}, + 'properties': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': '{object}'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = None + self.display = None + self.origin = None + self.properties = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_display.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_display.py new file mode 100644 index 000000000000..98314a2871d5 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_display.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provider: Operation resource provider name. + :vartype provider: str + :ivar resource: Resource on which the operation is performed. + :vartype resource: str + :ivar operation: Localized friendly name for the operation. + :vartype operation: str + :ivar description: Operation description. + :vartype description: str + """ + + _validation = { + 'provider': {'readonly': True}, + 'resource': {'readonly': True}, + 'operation': {'readonly': True}, + 'description': {'readonly': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = None + self.resource = None + self.operation = None + self.description = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_display_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_display_py3.py new file mode 100644 index 000000000000..9b5a77c699a9 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_display_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provider: Operation resource provider name. + :vartype provider: str + :ivar resource: Resource on which the operation is performed. + :vartype resource: str + :ivar operation: Localized friendly name for the operation. + :vartype operation: str + :ivar description: Operation description. + :vartype description: str + """ + + _validation = { + 'provider': {'readonly': True}, + 'resource': {'readonly': True}, + 'operation': {'readonly': True}, + 'description': {'readonly': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(OperationDisplay, self).__init__(**kwargs) + self.provider = None + self.resource = None + self.operation = None + self.description = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_list_result.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_list_result.py new file mode 100644 index 000000000000..5d6b31a6fe76 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_list_result.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationListResult(Model): + """A list of resource provider operations. + + :param value: The list of resource provider operations. + :type value: list[~azure.mgmt.rdbms.mariadb.models.Operation] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[Operation]'}, + } + + def __init__(self, **kwargs): + super(OperationListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_list_result_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_list_result_py3.py new file mode 100644 index 000000000000..cff8b627ecd5 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_list_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationListResult(Model): + """A list of resource provider operations. + + :param value: The list of resource provider operations. + :type value: list[~azure.mgmt.rdbms.mariadb.models.Operation] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[Operation]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(OperationListResult, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_py3.py new file mode 100644 index 000000000000..fe3b01b0a8e1 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/operation_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """REST API operation definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the operation being performed on this particular + object. + :vartype name: str + :ivar display: The localized display information for this particular + operation or action. + :vartype display: ~azure.mgmt.rdbms.mariadb.models.OperationDisplay + :ivar origin: The intended executor of the operation. Possible values + include: 'NotSpecified', 'user', 'system' + :vartype origin: str or ~azure.mgmt.rdbms.mariadb.models.OperationOrigin + :ivar properties: Additional descriptions for the operation. + :vartype properties: dict[str, object] + """ + + _validation = { + 'name': {'readonly': True}, + 'display': {'readonly': True}, + 'origin': {'readonly': True}, + 'properties': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': '{object}'}, + } + + def __init__(self, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = None + self.display = None + self.origin = None + self.properties = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties.py new file mode 100644 index 000000000000..c33af34599e1 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerformanceTierProperties(Model): + """Performance tier properties. + + :param id: ID of the performance tier. + :type id: str + :param service_level_objectives: Service level objectives associated with + the performance tier + :type service_level_objectives: + list[~azure.mgmt.rdbms.mariadb.models.PerformanceTierServiceLevelObjectives] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'service_level_objectives': {'key': 'serviceLevelObjectives', 'type': '[PerformanceTierServiceLevelObjectives]'}, + } + + def __init__(self, **kwargs): + super(PerformanceTierProperties, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.service_level_objectives = kwargs.get('service_level_objectives', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties_paged.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties_paged.py new file mode 100644 index 000000000000..17c6acdcff18 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class PerformanceTierPropertiesPaged(Paged): + """ + A paging container for iterating over a list of :class:`PerformanceTierProperties ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PerformanceTierProperties]'} + } + + def __init__(self, *args, **kwargs): + + super(PerformanceTierPropertiesPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties_py3.py new file mode 100644 index 000000000000..e2839d4114ae --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_properties_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerformanceTierProperties(Model): + """Performance tier properties. + + :param id: ID of the performance tier. + :type id: str + :param service_level_objectives: Service level objectives associated with + the performance tier + :type service_level_objectives: + list[~azure.mgmt.rdbms.mariadb.models.PerformanceTierServiceLevelObjectives] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'service_level_objectives': {'key': 'serviceLevelObjectives', 'type': '[PerformanceTierServiceLevelObjectives]'}, + } + + def __init__(self, *, id: str=None, service_level_objectives=None, **kwargs) -> None: + super(PerformanceTierProperties, self).__init__(**kwargs) + self.id = id + self.service_level_objectives = service_level_objectives diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_service_level_objectives.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_service_level_objectives.py new file mode 100644 index 000000000000..4f653dc28347 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_service_level_objectives.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerformanceTierServiceLevelObjectives(Model): + """Service level objectives for performance tier. + + :param id: ID for the service level objective. + :type id: str + :param edition: Edition of the performance tier. + :type edition: str + :param v_core: vCore associated with the service level objective + :type v_core: int + :param hardware_generation: Hardware generation associated with the + service level objective + :type hardware_generation: str + :param max_backup_retention_days: Maximum Backup retention in days for the + performance tier edition + :type max_backup_retention_days: int + :param min_backup_retention_days: Minimum Backup retention in days for the + performance tier edition + :type min_backup_retention_days: int + :param max_storage_mb: Max storage allowed for a server. + :type max_storage_mb: int + :param min_storage_mb: Max storage allowed for a server. + :type min_storage_mb: int + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'edition': {'key': 'edition', 'type': 'str'}, + 'v_core': {'key': 'vCore', 'type': 'int'}, + 'hardware_generation': {'key': 'hardwareGeneration', 'type': 'str'}, + 'max_backup_retention_days': {'key': 'maxBackupRetentionDays', 'type': 'int'}, + 'min_backup_retention_days': {'key': 'minBackupRetentionDays', 'type': 'int'}, + 'max_storage_mb': {'key': 'maxStorageMB', 'type': 'int'}, + 'min_storage_mb': {'key': 'minStorageMB', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(PerformanceTierServiceLevelObjectives, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.edition = kwargs.get('edition', None) + self.v_core = kwargs.get('v_core', None) + self.hardware_generation = kwargs.get('hardware_generation', None) + self.max_backup_retention_days = kwargs.get('max_backup_retention_days', None) + self.min_backup_retention_days = kwargs.get('min_backup_retention_days', None) + self.max_storage_mb = kwargs.get('max_storage_mb', None) + self.min_storage_mb = kwargs.get('min_storage_mb', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_service_level_objectives_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_service_level_objectives_py3.py new file mode 100644 index 000000000000..083e4720ab47 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/performance_tier_service_level_objectives_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerformanceTierServiceLevelObjectives(Model): + """Service level objectives for performance tier. + + :param id: ID for the service level objective. + :type id: str + :param edition: Edition of the performance tier. + :type edition: str + :param v_core: vCore associated with the service level objective + :type v_core: int + :param hardware_generation: Hardware generation associated with the + service level objective + :type hardware_generation: str + :param max_backup_retention_days: Maximum Backup retention in days for the + performance tier edition + :type max_backup_retention_days: int + :param min_backup_retention_days: Minimum Backup retention in days for the + performance tier edition + :type min_backup_retention_days: int + :param max_storage_mb: Max storage allowed for a server. + :type max_storage_mb: int + :param min_storage_mb: Max storage allowed for a server. + :type min_storage_mb: int + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'edition': {'key': 'edition', 'type': 'str'}, + 'v_core': {'key': 'vCore', 'type': 'int'}, + 'hardware_generation': {'key': 'hardwareGeneration', 'type': 'str'}, + 'max_backup_retention_days': {'key': 'maxBackupRetentionDays', 'type': 'int'}, + 'min_backup_retention_days': {'key': 'minBackupRetentionDays', 'type': 'int'}, + 'max_storage_mb': {'key': 'maxStorageMB', 'type': 'int'}, + 'min_storage_mb': {'key': 'minStorageMB', 'type': 'int'}, + } + + def __init__(self, *, id: str=None, edition: str=None, v_core: int=None, hardware_generation: str=None, max_backup_retention_days: int=None, min_backup_retention_days: int=None, max_storage_mb: int=None, min_storage_mb: int=None, **kwargs) -> None: + super(PerformanceTierServiceLevelObjectives, self).__init__(**kwargs) + self.id = id + self.edition = edition + self.v_core = v_core + self.hardware_generation = hardware_generation + self.max_backup_retention_days = max_backup_retention_days + self.min_backup_retention_days = min_backup_retention_days + self.max_storage_mb = max_storage_mb + self.min_storage_mb = min_storage_mb diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/proxy_resource.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/proxy_resource.py new file mode 100644 index 000000000000..1223f4670fe9 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/proxy_resource.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProxyResource(Model): + """Resource properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProxyResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/proxy_resource_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/proxy_resource_py3.py new file mode 100644 index 000000000000..e0dde467e583 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/proxy_resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProxyResource(Model): + """Resource properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ProxyResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server.py new file mode 100644 index 000000000000..df51a63c87fe --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource import TrackedResource + + +class Server(TrackedResource): + """Represents a server. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mariadb.models.Sku + :param administrator_login: The administrator's login name of a server. + Can only be specified when the server is being created (and is required + for creation). + :type administrator_login: str + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param user_visible_state: A state of a server that is visible to user. + Possible values include: 'Ready', 'Dropping', 'Disabled' + :type user_visible_state: str or + ~azure.mgmt.rdbms.mariadb.models.ServerState + :param fully_qualified_domain_name: The fully qualified domain name of a + server. + :type fully_qualified_domain_name: str + :param earliest_restore_date: Earliest restore point creation time + (ISO8601 format) + :type earliest_restore_date: datetime + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'administrator_login': {'key': 'properties.administratorLogin', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'user_visible_state': {'key': 'properties.userVisibleState', 'type': 'str'}, + 'fully_qualified_domain_name': {'key': 'properties.fullyQualifiedDomainName', 'type': 'str'}, + 'earliest_restore_date': {'key': 'properties.earliestRestoreDate', 'type': 'iso-8601'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + } + + def __init__(self, **kwargs): + super(Server, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.administrator_login = kwargs.get('administrator_login', None) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.user_visible_state = kwargs.get('user_visible_state', None) + self.fully_qualified_domain_name = kwargs.get('fully_qualified_domain_name', None) + self.earliest_restore_date = kwargs.get('earliest_restore_date', None) + self.storage_profile = kwargs.get('storage_profile', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_for_create.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_for_create.py new file mode 100644 index 000000000000..50a281d34eb1 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_for_create.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerForCreate(Model): + """Represents a server to be created. + + All required parameters must be populated in order to send to Azure. + + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mariadb.models.Sku + :param properties: Required. Properties of the server. + :type properties: + ~azure.mgmt.rdbms.mariadb.models.ServerPropertiesForCreate + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'properties': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'properties': {'key': 'properties', 'type': 'ServerPropertiesForCreate'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(ServerForCreate, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.properties = kwargs.get('properties', None) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_for_create_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_for_create_py3.py new file mode 100644 index 000000000000..ecc98cbe3e11 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_for_create_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerForCreate(Model): + """Represents a server to be created. + + All required parameters must be populated in order to send to Azure. + + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mariadb.models.Sku + :param properties: Required. Properties of the server. + :type properties: + ~azure.mgmt.rdbms.mariadb.models.ServerPropertiesForCreate + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'properties': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'properties': {'key': 'properties', 'type': 'ServerPropertiesForCreate'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, properties, location: str, sku=None, tags=None, **kwargs) -> None: + super(ServerForCreate, self).__init__(**kwargs) + self.sku = sku + self.properties = properties + self.location = location + self.tags = tags diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_paged.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_paged.py new file mode 100644 index 000000000000..02a6b22a2370 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ServerPaged(Paged): + """ + A paging container for iterating over a list of :class:`Server ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Server]'} + } + + def __init__(self, *args, **kwargs): + + super(ServerPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_create.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_create.py new file mode 100644 index 000000000000..5b6ce7ecf2ae --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_create.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerPropertiesForCreate(Model): + """The properties used to create a new server. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: ServerPropertiesForDefaultCreate, + ServerPropertiesForRestore, ServerPropertiesForGeoRestore + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + """ + + _validation = { + 'create_mode': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + } + + _subtype_map = { + 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore'} + } + + def __init__(self, **kwargs): + super(ServerPropertiesForCreate, self).__init__(**kwargs) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.create_mode = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_create_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_create_py3.py new file mode 100644 index 000000000000..840a39854adf --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_create_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerPropertiesForCreate(Model): + """The properties used to create a new server. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: ServerPropertiesForDefaultCreate, + ServerPropertiesForRestore, ServerPropertiesForGeoRestore + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + """ + + _validation = { + 'create_mode': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + } + + _subtype_map = { + 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore'} + } + + def __init__(self, *, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForCreate, self).__init__(**kwargs) + self.version = version + self.ssl_enforcement = ssl_enforcement + self.storage_profile = storage_profile + self.create_mode = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_default_create.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_default_create.py new file mode 100644 index 000000000000..9f77a8e405b0 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_default_create.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): + """The properties used to create a new server. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param administrator_login: Required. The administrator's login name of a + server. Can only be specified when the server is being created (and is + required for creation). + :type administrator_login: str + :param administrator_login_password: Required. The password of the + administrator login. + :type administrator_login_password: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'administrator_login': {'required': True}, + 'administrator_login_password': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'administrator_login': {'key': 'administratorLogin', 'type': 'str'}, + 'administrator_login_password': {'key': 'administratorLoginPassword', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServerPropertiesForDefaultCreate, self).__init__(**kwargs) + self.administrator_login = kwargs.get('administrator_login', None) + self.administrator_login_password = kwargs.get('administrator_login_password', None) + self.create_mode = 'Default' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_default_create_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_default_create_py3.py new file mode 100644 index 000000000000..f2f8089ff376 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_default_create_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create_py3 import ServerPropertiesForCreate + + +class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): + """The properties used to create a new server. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param administrator_login: Required. The administrator's login name of a + server. Can only be specified when the server is being created (and is + required for creation). + :type administrator_login: str + :param administrator_login_password: Required. The password of the + administrator login. + :type administrator_login_password: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'administrator_login': {'required': True}, + 'administrator_login_password': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'administrator_login': {'key': 'administratorLogin', 'type': 'str'}, + 'administrator_login_password': {'key': 'administratorLoginPassword', 'type': 'str'}, + } + + def __init__(self, *, administrator_login: str, administrator_login_password: str, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForDefaultCreate, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.administrator_login = administrator_login + self.administrator_login_password = administrator_login_password + self.create_mode = 'Default' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_geo_restore.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_geo_restore.py new file mode 100644 index 000000000000..deb90b6ffa9e --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_geo_restore.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForGeoRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring to a different + region from a geo replicated backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServerPropertiesForGeoRestore, self).__init__(**kwargs) + self.source_server_id = kwargs.get('source_server_id', None) + self.create_mode = 'GeoRestore' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_geo_restore_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_geo_restore_py3.py new file mode 100644 index 000000000000..33ebbba962d0 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_geo_restore_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create_py3 import ServerPropertiesForCreate + + +class ServerPropertiesForGeoRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring to a different + region from a geo replicated backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + } + + def __init__(self, *, source_server_id: str, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForGeoRestore, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.source_server_id = source_server_id + self.create_mode = 'GeoRestore' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_restore.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_restore.py new file mode 100644 index 000000000000..620a7e7ba2cf --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_restore.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring from a backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + :param restore_point_in_time: Required. Restore point creation time + (ISO8601 format), specifying the time to restore from. + :type restore_point_in_time: datetime + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + 'restore_point_in_time': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + 'restore_point_in_time': {'key': 'restorePointInTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(ServerPropertiesForRestore, self).__init__(**kwargs) + self.source_server_id = kwargs.get('source_server_id', None) + self.restore_point_in_time = kwargs.get('restore_point_in_time', None) + self.create_mode = 'PointInTimeRestore' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_restore_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_restore_py3.py new file mode 100644 index 000000000000..7b6fa4702bb5 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_properties_for_restore_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create_py3 import ServerPropertiesForCreate + + +class ServerPropertiesForRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring from a backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + :param restore_point_in_time: Required. Restore point creation time + (ISO8601 format), specifying the time to restore from. + :type restore_point_in_time: datetime + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + 'restore_point_in_time': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + 'restore_point_in_time': {'key': 'restorePointInTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, source_server_id: str, restore_point_in_time, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForRestore, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.source_server_id = source_server_id + self.restore_point_in_time = restore_point_in_time + self.create_mode = 'PointInTimeRestore' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_py3.py new file mode 100644 index 000000000000..0a2ec517b6c9 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_py3.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource_py3 import TrackedResource + + +class Server(TrackedResource): + """Represents a server. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mariadb.models.Sku + :param administrator_login: The administrator's login name of a server. + Can only be specified when the server is being created (and is required + for creation). + :type administrator_login: str + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param user_visible_state: A state of a server that is visible to user. + Possible values include: 'Ready', 'Dropping', 'Disabled' + :type user_visible_state: str or + ~azure.mgmt.rdbms.mariadb.models.ServerState + :param fully_qualified_domain_name: The fully qualified domain name of a + server. + :type fully_qualified_domain_name: str + :param earliest_restore_date: Earliest restore point creation time + (ISO8601 format) + :type earliest_restore_date: datetime + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'administrator_login': {'key': 'properties.administratorLogin', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'user_visible_state': {'key': 'properties.userVisibleState', 'type': 'str'}, + 'fully_qualified_domain_name': {'key': 'properties.fullyQualifiedDomainName', 'type': 'str'}, + 'earliest_restore_date': {'key': 'properties.earliestRestoreDate', 'type': 'iso-8601'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + } + + def __init__(self, *, location: str, tags=None, sku=None, administrator_login: str=None, version=None, ssl_enforcement=None, user_visible_state=None, fully_qualified_domain_name: str=None, earliest_restore_date=None, storage_profile=None, **kwargs) -> None: + super(Server, self).__init__(location=location, tags=tags, **kwargs) + self.sku = sku + self.administrator_login = administrator_login + self.version = version + self.ssl_enforcement = ssl_enforcement + self.user_visible_state = user_visible_state + self.fully_qualified_domain_name = fully_qualified_domain_name + self.earliest_restore_date = earliest_restore_date + self.storage_profile = storage_profile diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_security_alert_policy.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_security_alert_policy.py new file mode 100644 index 000000000000..5fa0f877316a --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_security_alert_policy.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class ServerSecurityAlertPolicy(ProxyResource): + """A server security alert policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param state: Required. Specifies the state of the policy, whether it is + enabled or disabled. Possible values include: 'Enabled', 'Disabled' + :type state: str or + ~azure.mgmt.rdbms.mariadb.models.ServerSecurityAlertPolicyState + :param disabled_alerts: Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly + :type disabled_alerts: list[str] + :param email_addresses: Specifies an array of e-mail addresses to which + the alert is sent. + :type email_addresses: list[str] + :param email_account_admins: Specifies that the alert is sent to the + account administrators. + :type email_account_admins: bool + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). This blob storage will hold all + Threat Detection audit logs. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + Threat Detection audit storage account. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the Threat + Detection audit logs. + :type retention_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'ServerSecurityAlertPolicyState'}, + 'disabled_alerts': {'key': 'properties.disabledAlerts', 'type': '[str]'}, + 'email_addresses': {'key': 'properties.emailAddresses', 'type': '[str]'}, + 'email_account_admins': {'key': 'properties.emailAccountAdmins', 'type': 'bool'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ServerSecurityAlertPolicy, self).__init__(**kwargs) + self.state = kwargs.get('state', None) + self.disabled_alerts = kwargs.get('disabled_alerts', None) + self.email_addresses = kwargs.get('email_addresses', None) + self.email_account_admins = kwargs.get('email_account_admins', None) + self.storage_endpoint = kwargs.get('storage_endpoint', None) + self.storage_account_access_key = kwargs.get('storage_account_access_key', None) + self.retention_days = kwargs.get('retention_days', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_security_alert_policy_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_security_alert_policy_py3.py new file mode 100644 index 000000000000..4a44fb648913 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_security_alert_policy_py3.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class ServerSecurityAlertPolicy(ProxyResource): + """A server security alert policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param state: Required. Specifies the state of the policy, whether it is + enabled or disabled. Possible values include: 'Enabled', 'Disabled' + :type state: str or + ~azure.mgmt.rdbms.mariadb.models.ServerSecurityAlertPolicyState + :param disabled_alerts: Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly + :type disabled_alerts: list[str] + :param email_addresses: Specifies an array of e-mail addresses to which + the alert is sent. + :type email_addresses: list[str] + :param email_account_admins: Specifies that the alert is sent to the + account administrators. + :type email_account_admins: bool + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). This blob storage will hold all + Threat Detection audit logs. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + Threat Detection audit storage account. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the Threat + Detection audit logs. + :type retention_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'ServerSecurityAlertPolicyState'}, + 'disabled_alerts': {'key': 'properties.disabledAlerts', 'type': '[str]'}, + 'email_addresses': {'key': 'properties.emailAddresses', 'type': '[str]'}, + 'email_account_admins': {'key': 'properties.emailAccountAdmins', 'type': 'bool'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + } + + def __init__(self, *, state, disabled_alerts=None, email_addresses=None, email_account_admins: bool=None, storage_endpoint: str=None, storage_account_access_key: str=None, retention_days: int=None, **kwargs) -> None: + super(ServerSecurityAlertPolicy, self).__init__(**kwargs) + self.state = state + self.disabled_alerts = disabled_alerts + self.email_addresses = email_addresses + self.email_account_admins = email_account_admins + self.storage_endpoint = storage_endpoint + self.storage_account_access_key = storage_account_access_key + self.retention_days = retention_days diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_update_parameters.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_update_parameters.py new file mode 100644 index 000000000000..f9f703cf8685 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_update_parameters.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerUpdateParameters(Model): + """Parameters allowd to update for a server. + + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mariadb.models.Sku + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param administrator_login_password: The password of the administrator + login. + :type administrator_login_password: str + :param version: The version of a server. Possible values include: '5.6', + '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'administrator_login_password': {'key': 'properties.administratorLoginPassword', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(ServerUpdateParameters, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.administrator_login_password = kwargs.get('administrator_login_password', None) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_update_parameters_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_update_parameters_py3.py new file mode 100644 index 000000000000..b4ebb57dce5c --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/server_update_parameters_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerUpdateParameters(Model): + """Parameters allowd to update for a server. + + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mariadb.models.Sku + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mariadb.models.StorageProfile + :param administrator_login_password: The password of the administrator + login. + :type administrator_login_password: str + :param version: The version of a server. Possible values include: '5.6', + '5.7' + :type version: str or ~azure.mgmt.rdbms.mariadb.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mariadb.models.SslEnforcementEnum + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'administrator_login_password': {'key': 'properties.administratorLoginPassword', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, sku=None, storage_profile=None, administrator_login_password: str=None, version=None, ssl_enforcement=None, tags=None, **kwargs) -> None: + super(ServerUpdateParameters, self).__init__(**kwargs) + self.sku = sku + self.storage_profile = storage_profile + self.administrator_login_password = administrator_login_password + self.version = version + self.ssl_enforcement = ssl_enforcement + self.tags = tags diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/sku.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/sku.py new file mode 100644 index 000000000000..3652595b01c2 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/sku.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """Billing information related properties of a server. + + :param name: The name of the sku, typically, tier + family + cores, e.g. + B_Gen4_1, GP_Gen5_8. + :type name: str + :param tier: The tier of the particular SKU, e.g. Basic. Possible values + include: 'Basic', 'GeneralPurpose', 'MemoryOptimized' + :type tier: str or ~azure.mgmt.rdbms.mariadb.models.SkuTier + :param capacity: The scale up/out capacity, representing server's compute + units. + :type capacity: int + :param size: The size code, to be interpreted by resource as appropriate. + :type size: str + :param family: The family of hardware. + :type family: str + """ + + _validation = { + 'capacity': {'minimum': 0}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + 'size': {'key': 'size', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Sku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) + self.size = kwargs.get('size', None) + self.family = kwargs.get('family', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/sku_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/sku_py3.py new file mode 100644 index 000000000000..04332a36f924 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/sku_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """Billing information related properties of a server. + + :param name: The name of the sku, typically, tier + family + cores, e.g. + B_Gen4_1, GP_Gen5_8. + :type name: str + :param tier: The tier of the particular SKU, e.g. Basic. Possible values + include: 'Basic', 'GeneralPurpose', 'MemoryOptimized' + :type tier: str or ~azure.mgmt.rdbms.mariadb.models.SkuTier + :param capacity: The scale up/out capacity, representing server's compute + units. + :type capacity: int + :param size: The size code, to be interpreted by resource as appropriate. + :type size: str + :param family: The family of hardware. + :type family: str + """ + + _validation = { + 'capacity': {'minimum': 0}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + 'size': {'key': 'size', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, tier=None, capacity: int=None, size: str=None, family: str=None, **kwargs) -> None: + super(Sku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity + self.size = size + self.family = family diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/storage_profile.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/storage_profile.py new file mode 100644 index 000000000000..3af4d11079a5 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/storage_profile.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """Storage Profile properties of a server. + + :param backup_retention_days: Backup retention days for the server. + :type backup_retention_days: int + :param geo_redundant_backup: Enable Geo-redundant or not for server + backup. Possible values include: 'Enabled', 'Disabled' + :type geo_redundant_backup: str or + ~azure.mgmt.rdbms.mariadb.models.GeoRedundantBackup + :param storage_mb: Max storage allowed for a server. + :type storage_mb: int + """ + + _attribute_map = { + 'backup_retention_days': {'key': 'backupRetentionDays', 'type': 'int'}, + 'geo_redundant_backup': {'key': 'geoRedundantBackup', 'type': 'str'}, + 'storage_mb': {'key': 'storageMB', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(StorageProfile, self).__init__(**kwargs) + self.backup_retention_days = kwargs.get('backup_retention_days', None) + self.geo_redundant_backup = kwargs.get('geo_redundant_backup', None) + self.storage_mb = kwargs.get('storage_mb', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/storage_profile_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/storage_profile_py3.py new file mode 100644 index 000000000000..e231ef1873a7 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/storage_profile_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """Storage Profile properties of a server. + + :param backup_retention_days: Backup retention days for the server. + :type backup_retention_days: int + :param geo_redundant_backup: Enable Geo-redundant or not for server + backup. Possible values include: 'Enabled', 'Disabled' + :type geo_redundant_backup: str or + ~azure.mgmt.rdbms.mariadb.models.GeoRedundantBackup + :param storage_mb: Max storage allowed for a server. + :type storage_mb: int + """ + + _attribute_map = { + 'backup_retention_days': {'key': 'backupRetentionDays', 'type': 'int'}, + 'geo_redundant_backup': {'key': 'geoRedundantBackup', 'type': 'str'}, + 'storage_mb': {'key': 'storageMB', 'type': 'int'}, + } + + def __init__(self, *, backup_retention_days: int=None, geo_redundant_backup=None, storage_mb: int=None, **kwargs) -> None: + super(StorageProfile, self).__init__(**kwargs) + self.backup_retention_days = backup_retention_days + self.geo_redundant_backup = geo_redundant_backup + self.storage_mb = storage_mb diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/tracked_resource.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/tracked_resource.py new file mode 100644 index 000000000000..67e93dd79e77 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/tracked_resource.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class TrackedResource(ProxyResource): + """Resource properties including location and tags for track resources. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(TrackedResource, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/tracked_resource_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/tracked_resource_py3.py new file mode 100644 index 000000000000..0fbc3cc3edc9 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/tracked_resource_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class TrackedResource(ProxyResource): + """Resource properties including location and tags for track resources. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(TrackedResource, self).__init__(**kwargs) + self.location = location + self.tags = tags diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule.py new file mode 100644 index 000000000000..8746b864bbd7 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class VirtualNetworkRule(ProxyResource): + """A virtual network rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param virtual_network_subnet_id: Required. The ARM resource id of the + virtual network subnet. + :type virtual_network_subnet_id: str + :param ignore_missing_vnet_service_endpoint: Create firewall rule before + the virtual network has vnet service endpoint enabled. + :type ignore_missing_vnet_service_endpoint: bool + :ivar state: Virtual Network Rule State. Possible values include: + 'Initializing', 'InProgress', 'Ready', 'Deleting', 'Unknown' + :vartype state: str or + ~azure.mgmt.rdbms.mariadb.models.VirtualNetworkRuleState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_subnet_id': {'required': True}, + 'state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'virtual_network_subnet_id': {'key': 'properties.virtualNetworkSubnetId', 'type': 'str'}, + 'ignore_missing_vnet_service_endpoint': {'key': 'properties.ignoreMissingVnetServiceEndpoint', 'type': 'bool'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkRule, self).__init__(**kwargs) + self.virtual_network_subnet_id = kwargs.get('virtual_network_subnet_id', None) + self.ignore_missing_vnet_service_endpoint = kwargs.get('ignore_missing_vnet_service_endpoint', None) + self.state = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule_paged.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule_paged.py new file mode 100644 index 000000000000..c590c551cebe --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class VirtualNetworkRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkRule]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkRulePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule_py3.py new file mode 100644 index 000000000000..5cf92b6b2928 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/models/virtual_network_rule_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class VirtualNetworkRule(ProxyResource): + """A virtual network rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param virtual_network_subnet_id: Required. The ARM resource id of the + virtual network subnet. + :type virtual_network_subnet_id: str + :param ignore_missing_vnet_service_endpoint: Create firewall rule before + the virtual network has vnet service endpoint enabled. + :type ignore_missing_vnet_service_endpoint: bool + :ivar state: Virtual Network Rule State. Possible values include: + 'Initializing', 'InProgress', 'Ready', 'Deleting', 'Unknown' + :vartype state: str or + ~azure.mgmt.rdbms.mariadb.models.VirtualNetworkRuleState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_subnet_id': {'required': True}, + 'state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'virtual_network_subnet_id': {'key': 'properties.virtualNetworkSubnetId', 'type': 'str'}, + 'ignore_missing_vnet_service_endpoint': {'key': 'properties.ignoreMissingVnetServiceEndpoint', 'type': 'bool'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + } + + def __init__(self, *, virtual_network_subnet_id: str, ignore_missing_vnet_service_endpoint: bool=None, **kwargs) -> None: + super(VirtualNetworkRule, self).__init__(**kwargs) + self.virtual_network_subnet_id = virtual_network_subnet_id + self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint + self.state = None diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/__init__.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/__init__.py new file mode 100644 index 000000000000..27ac2e7b90d4 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/__init__.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .servers_operations import ServersOperations +from .firewall_rules_operations import FirewallRulesOperations +from .virtual_network_rules_operations import VirtualNetworkRulesOperations +from .databases_operations import DatabasesOperations +from .configurations_operations import ConfigurationsOperations +from .log_files_operations import LogFilesOperations +from .location_based_performance_tier_operations import LocationBasedPerformanceTierOperations +from .check_name_availability_operations import CheckNameAvailabilityOperations +from .server_security_alert_policies_operations import ServerSecurityAlertPoliciesOperations +from .operations import Operations + +__all__ = [ + 'ServersOperations', + 'FirewallRulesOperations', + 'VirtualNetworkRulesOperations', + 'DatabasesOperations', + 'ConfigurationsOperations', + 'LogFilesOperations', + 'LocationBasedPerformanceTierOperations', + 'CheckNameAvailabilityOperations', + 'ServerSecurityAlertPoliciesOperations', + 'Operations', +] diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/check_name_availability_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/check_name_availability_operations.py new file mode 100644 index 000000000000..86103593a2e9 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/check_name_availability_operations.py @@ -0,0 +1,104 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class CheckNameAvailabilityOperations(object): + """CheckNameAvailabilityOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + def execute( + self, name, type=None, custom_headers=None, raw=False, **operation_config): + """Check the availability of name for resource. + + :param name: Resource name to verify. + :type name: str + :param type: Resource type used for verification. + :type type: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NameAvailability or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mariadb.models.NameAvailability or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + name_availability_request = models.NameAvailabilityRequest(name=name, type=type) + + # Construct URL + url = self.execute.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(name_availability_request, 'NameAvailabilityRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NameAvailability', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + execute.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.DBforMariaDB/checkNameAvailability'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/configurations_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/configurations_operations.py new file mode 100644 index 000000000000..7321c3ad897d --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/configurations_operations.py @@ -0,0 +1,290 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ConfigurationsOperations(object): + """ConfigurationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, server_name, configuration_name, value=None, source=None, custom_headers=None, raw=False, **operation_config): + parameters = models.Configuration(value=value, source=source) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'configurationName': self._serialize.url("configuration_name", configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Configuration') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Configuration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, configuration_name, value=None, source=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a configuration of a server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param configuration_name: The name of the server configuration. + :type configuration_name: str + :param value: Value of the configuration. + :type value: str + :param source: Source of the configuration. + :type source: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Configuration or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mariadb.models.Configuration] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mariadb.models.Configuration]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + configuration_name=configuration_name, + value=value, + source=source, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Configuration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/configurations/{configurationName}'} + + def get( + self, resource_group_name, server_name, configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a configuration of server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param configuration_name: The name of the server configuration. + :type configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Configuration or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mariadb.models.Configuration or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'configurationName': self._serialize.url("configuration_name", configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Configuration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/configurations/{configurationName}'} + + def list_by_server( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """List all the configurations in a given server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Configuration + :rtype: + ~azure.mgmt.rdbms.mariadb.models.ConfigurationPaged[~azure.mgmt.rdbms.mariadb.models.Configuration] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_server.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ConfigurationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_server.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/configurations'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/databases_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/databases_operations.py new file mode 100644 index 000000000000..5e1d7985f4bc --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/databases_operations.py @@ -0,0 +1,377 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class DatabasesOperations(object): + """DatabasesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, server_name, database_name, charset=None, collation=None, custom_headers=None, raw=False, **operation_config): + parameters = models.Database(charset=charset, collation=collation) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'Database') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Database', response) + if response.status_code == 201: + deserialized = self._deserialize('Database', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, database_name, charset=None, collation=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a new database or updates an existing database. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param database_name: The name of the database. + :type database_name: str + :param charset: The charset of the database. + :type charset: str + :param collation: The collation of the database. + :type collation: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Database or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mariadb.models.Database] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mariadb.models.Database]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + database_name=database_name, + charset=charset, + collation=collation, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Database', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/databases/{databaseName}'} + + + def _delete_initial( + self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a database. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param database_name: The name of the database. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + server_name=server_name, + database_name=database_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/databases/{databaseName}'} + + def get( + self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a database. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param database_name: The name of the database. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Database or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mariadb.models.Database or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Database', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/databases/{databaseName}'} + + def list_by_server( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """List all the databases in a given server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Database + :rtype: + ~azure.mgmt.rdbms.mariadb.models.DatabasePaged[~azure.mgmt.rdbms.mariadb.models.Database] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_server.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DatabasePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DatabasePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_server.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/databases'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/firewall_rules_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/firewall_rules_operations.py new file mode 100644 index 000000000000..7a411597b3bd --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/firewall_rules_operations.py @@ -0,0 +1,379 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class FirewallRulesOperations(object): + """FirewallRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, server_name, firewall_rule_name, start_ip_address, end_ip_address, custom_headers=None, raw=False, **operation_config): + parameters = models.FirewallRule(start_ip_address=start_ip_address, end_ip_address=end_ip_address) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'firewallRuleName': self._serialize.url("firewall_rule_name", firewall_rule_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FirewallRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FirewallRule', response) + if response.status_code == 201: + deserialized = self._deserialize('FirewallRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, firewall_rule_name, start_ip_address, end_ip_address, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a new firewall rule or updates an existing firewall rule. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param firewall_rule_name: The name of the server firewall rule. + :type firewall_rule_name: str + :param start_ip_address: The start IP address of the server firewall + rule. Must be IPv4 format. + :type start_ip_address: str + :param end_ip_address: The end IP address of the server firewall rule. + Must be IPv4 format. + :type end_ip_address: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FirewallRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mariadb.models.FirewallRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mariadb.models.FirewallRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + firewall_rule_name=firewall_rule_name, + start_ip_address=start_ip_address, + end_ip_address=end_ip_address, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FirewallRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/firewallRules/{firewallRuleName}'} + + + def _delete_initial( + self, resource_group_name, server_name, firewall_rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'firewallRuleName': self._serialize.url("firewall_rule_name", firewall_rule_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, server_name, firewall_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a server firewall rule. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param firewall_rule_name: The name of the server firewall rule. + :type firewall_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + server_name=server_name, + firewall_rule_name=firewall_rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/firewallRules/{firewallRuleName}'} + + def get( + self, resource_group_name, server_name, firewall_rule_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a server firewall rule. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param firewall_rule_name: The name of the server firewall rule. + :type firewall_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FirewallRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mariadb.models.FirewallRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'firewallRuleName': self._serialize.url("firewall_rule_name", firewall_rule_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FirewallRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/firewallRules/{firewallRuleName}'} + + def list_by_server( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """List all the firewall rules in a given server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of FirewallRule + :rtype: + ~azure.mgmt.rdbms.mariadb.models.FirewallRulePaged[~azure.mgmt.rdbms.mariadb.models.FirewallRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_server.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.FirewallRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.FirewallRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_server.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/firewallRules'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/location_based_performance_tier_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/location_based_performance_tier_operations.py new file mode 100644 index 000000000000..bf20bf9e5f7d --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/location_based_performance_tier_operations.py @@ -0,0 +1,106 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LocationBasedPerformanceTierOperations(object): + """LocationBasedPerformanceTierOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + def list( + self, location_name, custom_headers=None, raw=False, **operation_config): + """List all the performance tiers at specified location in a given + subscription. + + :param location_name: The name of the location. + :type location_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PerformanceTierProperties + :rtype: + ~azure.mgmt.rdbms.mariadb.models.PerformanceTierPropertiesPaged[~azure.mgmt.rdbms.mariadb.models.PerformanceTierProperties] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'locationName': self._serialize.url("location_name", location_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PerformanceTierPropertiesPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PerformanceTierPropertiesPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.DBforMariaDB/locations/{locationName}/performanceTiers'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/log_files_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/log_files_operations.py new file mode 100644 index 000000000000..936807aaecd6 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/log_files_operations.py @@ -0,0 +1,110 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LogFilesOperations(object): + """LogFilesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + def list_by_server( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """List all the log files in a given server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LogFile + :rtype: + ~azure.mgmt.rdbms.mariadb.models.LogFilePaged[~azure.mgmt.rdbms.mariadb.models.LogFile] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_server.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.LogFilePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.LogFilePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_server.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/logFiles'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/operations.py new file mode 100644 index 000000000000..2953ff26f771 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/operations.py @@ -0,0 +1,90 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available REST API operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OperationListResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mariadb.models.OperationListResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('OperationListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.DBforMariaDB/operations'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/server_security_alert_policies_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/server_security_alert_policies_operations.py new file mode 100644 index 000000000000..a2814dd51ff3 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/server_security_alert_policies_operations.py @@ -0,0 +1,212 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServerSecurityAlertPoliciesOperations(object): + """ServerSecurityAlertPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar security_alert_policy_name: The name of the security alert policy. Constant value: "Default". + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.security_alert_policy_name = "Default" + self.api_version = "2018-06-01-preview" + + self.config = config + + def get( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """Get a server's security alert policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServerSecurityAlertPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mariadb.models.ServerSecurityAlertPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'securityAlertPolicyName': self._serialize.url("self.security_alert_policy_name", self.security_alert_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/securityAlertPolicies/{securityAlertPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'securityAlertPolicyName': self._serialize.url("self.security_alert_policy_name", self.security_alert_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServerSecurityAlertPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a threat detection policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param parameters: The server security alert policy. + :type parameters: + ~azure.mgmt.rdbms.mariadb.models.ServerSecurityAlertPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ServerSecurityAlertPolicy or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mariadb.models.ServerSecurityAlertPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mariadb.models.ServerSecurityAlertPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/securityAlertPolicies/{securityAlertPolicyName}'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/servers_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/servers_operations.py new file mode 100644 index 000000000000..3d654d865f0c --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/servers_operations.py @@ -0,0 +1,528 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServersOperations(object): + """ServersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + + def _create_initial( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServerForCreate') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Server', response) + if response.status_code == 201: + deserialized = self._deserialize('Server', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a new server or updates an existing server. The update action + will overwrite the existing server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param parameters: The required parameters for creating or updating a + server. + :type parameters: ~azure.mgmt.rdbms.mariadb.models.ServerForCreate + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Server or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mariadb.models.Server] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mariadb.models.Server]] + :raises: :class:`CloudError` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + server_name=server_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Server', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}'} + + + def _update_initial( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServerUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Server', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates an existing server. The request body can contain one to many of + the properties present in the normal server definition. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param parameters: The required parameters for updating a server. + :type parameters: + ~azure.mgmt.rdbms.mariadb.models.ServerUpdateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Server or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mariadb.models.Server] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mariadb.models.Server]] + :raises: :class:`CloudError` + """ + raw_result = self._update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Server', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}'} + + + def _delete_initial( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, server_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + server_name=server_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}'} + + def get( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """Gets information about a server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Server or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mariadb.models.Server or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Server', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """List all the servers in a given resource group. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Server + :rtype: + ~azure.mgmt.rdbms.mariadb.models.ServerPaged[~azure.mgmt.rdbms.mariadb.models.Server] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """List all the servers in a given subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Server + :rtype: + ~azure.mgmt.rdbms.mariadb.models.ServerPaged[~azure.mgmt.rdbms.mariadb.models.Server] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.DBforMariaDB/servers'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/virtual_network_rules_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/virtual_network_rules_operations.py new file mode 100644 index 000000000000..39d78278bb8a --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/operations/virtual_network_rules_operations.py @@ -0,0 +1,382 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkRulesOperations(object): + """VirtualNetworkRulesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2018-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-06-01-preview" + + self.config = config + + def get( + self, resource_group_name, server_name, virtual_network_rule_name, custom_headers=None, raw=False, **operation_config): + """Gets a virtual network rule. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param virtual_network_rule_name: The name of the virtual network + rule. + :type virtual_network_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mariadb.models.VirtualNetworkRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'virtualNetworkRuleName': self._serialize.url("virtual_network_rule_name", virtual_network_rule_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/virtualNetworkRules/{virtualNetworkRuleName}'} + + + def _create_or_update_initial( + self, resource_group_name, server_name, virtual_network_rule_name, virtual_network_subnet_id, ignore_missing_vnet_service_endpoint=None, custom_headers=None, raw=False, **operation_config): + parameters = models.VirtualNetworkRule(virtual_network_subnet_id=virtual_network_subnet_id, ignore_missing_vnet_service_endpoint=ignore_missing_vnet_service_endpoint) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'virtualNetworkRuleName': self._serialize.url("virtual_network_rule_name", virtual_network_rule_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkRule', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, virtual_network_rule_name, virtual_network_subnet_id, ignore_missing_vnet_service_endpoint=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an existing virtual network rule. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param virtual_network_rule_name: The name of the virtual network + rule. + :type virtual_network_rule_name: str + :param virtual_network_subnet_id: The ARM resource id of the virtual + network subnet. + :type virtual_network_subnet_id: str + :param ignore_missing_vnet_service_endpoint: Create firewall rule + before the virtual network has vnet service endpoint enabled. + :type ignore_missing_vnet_service_endpoint: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mariadb.models.VirtualNetworkRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mariadb.models.VirtualNetworkRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + virtual_network_rule_name=virtual_network_rule_name, + virtual_network_subnet_id=virtual_network_subnet_id, + ignore_missing_vnet_service_endpoint=ignore_missing_vnet_service_endpoint, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/virtualNetworkRules/{virtualNetworkRuleName}'} + + + def _delete_initial( + self, resource_group_name, server_name, virtual_network_rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'virtualNetworkRuleName': self._serialize.url("virtual_network_rule_name", virtual_network_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, server_name, virtual_network_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the virtual network rule with the given name. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param virtual_network_rule_name: The name of the virtual network + rule. + :type virtual_network_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + server_name=server_name, + virtual_network_rule_name=virtual_network_rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/virtualNetworkRules/{virtualNetworkRuleName}'} + + def list_by_server( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of virtual network rules in a server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkRule + :rtype: + ~azure.mgmt.rdbms.mariadb.models.VirtualNetworkRulePaged[~azure.mgmt.rdbms.mariadb.models.VirtualNetworkRule] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_server.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VirtualNetworkRulePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VirtualNetworkRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_server.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/virtualNetworkRules'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/version.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/version.py new file mode 100644 index 000000000000..fcb31ad1686d --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mariadb/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "2018-06-01-preview" + diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/__init__.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/__init__.py index cfc92cfd5697..7abae0f1efde 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/__init__.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/__init__.py @@ -17,6 +17,7 @@ from .server_properties_for_default_create_py3 import ServerPropertiesForDefaultCreate from .server_properties_for_restore_py3 import ServerPropertiesForRestore from .server_properties_for_geo_restore_py3 import ServerPropertiesForGeoRestore + from .server_properties_for_replica_py3 import ServerPropertiesForReplica from .sku_py3 import Sku from .server_py3 import Server from .server_for_create_py3 import ServerForCreate @@ -33,6 +34,7 @@ from .performance_tier_properties_py3 import PerformanceTierProperties from .name_availability_request_py3 import NameAvailabilityRequest from .name_availability_py3 import NameAvailability + from .server_security_alert_policy_py3 import ServerSecurityAlertPolicy except (SyntaxError, ImportError): from .proxy_resource import ProxyResource from .tracked_resource import TrackedResource @@ -41,6 +43,7 @@ from .server_properties_for_default_create import ServerPropertiesForDefaultCreate from .server_properties_for_restore import ServerPropertiesForRestore from .server_properties_for_geo_restore import ServerPropertiesForGeoRestore + from .server_properties_for_replica import ServerPropertiesForReplica from .sku import Sku from .server import Server from .server_for_create import ServerForCreate @@ -57,6 +60,7 @@ from .performance_tier_properties import PerformanceTierProperties from .name_availability_request import NameAvailabilityRequest from .name_availability import NameAvailability + from .server_security_alert_policy import ServerSecurityAlertPolicy from .server_paged import ServerPaged from .firewall_rule_paged import FirewallRulePaged from .virtual_network_rule_paged import VirtualNetworkRulePaged @@ -72,6 +76,7 @@ SkuTier, VirtualNetworkRuleState, OperationOrigin, + ServerSecurityAlertPolicyState, ) __all__ = [ @@ -82,6 +87,7 @@ 'ServerPropertiesForDefaultCreate', 'ServerPropertiesForRestore', 'ServerPropertiesForGeoRestore', + 'ServerPropertiesForReplica', 'Sku', 'Server', 'ServerForCreate', @@ -98,6 +104,7 @@ 'PerformanceTierProperties', 'NameAvailabilityRequest', 'NameAvailability', + 'ServerSecurityAlertPolicy', 'ServerPaged', 'FirewallRulePaged', 'VirtualNetworkRulePaged', @@ -112,4 +119,5 @@ 'SkuTier', 'VirtualNetworkRuleState', 'OperationOrigin', + 'ServerSecurityAlertPolicyState', ] diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/my_sql_management_client_enums.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/my_sql_management_client_enums.py index 89cda990fcd2..9ee8ed1ee785 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/my_sql_management_client_enums.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/my_sql_management_client_enums.py @@ -58,3 +58,9 @@ class OperationOrigin(str, Enum): not_specified = "NotSpecified" user = "user" system = "system" + + +class ServerSecurityAlertPolicyState(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server.py index 116986a98b90..03ac4096b901 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server.py @@ -54,6 +54,13 @@ class Server(TrackedResource): :type earliest_restore_date: datetime :param storage_profile: Storage profile of a server. :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param replication_role: The replication role of the server. + :type replication_role: str + :param master_server_id: The master server id of a relica server. + :type master_server_id: str + :param replica_capacity: The maximum number of replicas that a master + server can have. + :type replica_capacity: int """ _validation = { @@ -61,6 +68,7 @@ class Server(TrackedResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'replica_capacity': {'minimum': 0}, } _attribute_map = { @@ -77,6 +85,9 @@ class Server(TrackedResource): 'fully_qualified_domain_name': {'key': 'properties.fullyQualifiedDomainName', 'type': 'str'}, 'earliest_restore_date': {'key': 'properties.earliestRestoreDate', 'type': 'iso-8601'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'replication_role': {'key': 'properties.replicationRole', 'type': 'str'}, + 'master_server_id': {'key': 'properties.masterServerId', 'type': 'str'}, + 'replica_capacity': {'key': 'properties.replicaCapacity', 'type': 'int'}, } def __init__(self, **kwargs): @@ -89,3 +100,6 @@ def __init__(self, **kwargs): self.fully_qualified_domain_name = kwargs.get('fully_qualified_domain_name', None) self.earliest_restore_date = kwargs.get('earliest_restore_date', None) self.storage_profile = kwargs.get('storage_profile', None) + self.replication_role = kwargs.get('replication_role', None) + self.master_server_id = kwargs.get('master_server_id', None) + self.replica_capacity = kwargs.get('replica_capacity', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_create.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_create.py index 9484fd87e327..3c99ea2a4f90 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_create.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_create.py @@ -17,7 +17,8 @@ class ServerPropertiesForCreate(Model): You probably want to use the sub-classes and not this class directly. Known sub-classes are: ServerPropertiesForDefaultCreate, - ServerPropertiesForRestore, ServerPropertiesForGeoRestore + ServerPropertiesForRestore, ServerPropertiesForGeoRestore, + ServerPropertiesForReplica All required parameters must be populated in order to send to Azure. @@ -45,7 +46,7 @@ class ServerPropertiesForCreate(Model): } _subtype_map = { - 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore'} + 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore', 'Replica': 'ServerPropertiesForReplica'} } def __init__(self, **kwargs): diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_create_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_create_py3.py index 99460d06ef3d..97ae29e318f1 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_create_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_create_py3.py @@ -17,7 +17,8 @@ class ServerPropertiesForCreate(Model): You probably want to use the sub-classes and not this class directly. Known sub-classes are: ServerPropertiesForDefaultCreate, - ServerPropertiesForRestore, ServerPropertiesForGeoRestore + ServerPropertiesForRestore, ServerPropertiesForGeoRestore, + ServerPropertiesForReplica All required parameters must be populated in order to send to Azure. @@ -45,7 +46,7 @@ class ServerPropertiesForCreate(Model): } _subtype_map = { - 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore'} + 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore', 'Replica': 'ServerPropertiesForReplica'} } def __init__(self, *, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_replica.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_replica.py new file mode 100644 index 000000000000..4af6fae1e5fe --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_replica.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForReplica(ServerPropertiesForCreate): + """The properties to create a new replica. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The master server id to create replica + from. + :type source_server_id: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServerPropertiesForReplica, self).__init__(**kwargs) + self.source_server_id = kwargs.get('source_server_id', None) + self.create_mode = 'Replica' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_replica_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_replica_py3.py new file mode 100644 index 000000000000..0505acc6c8cc --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_properties_for_replica_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create_py3 import ServerPropertiesForCreate + + +class ServerPropertiesForReplica(ServerPropertiesForCreate): + """The properties to create a new replica. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The master server id to create replica + from. + :type source_server_id: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + } + + def __init__(self, *, source_server_id: str, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForReplica, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.source_server_id = source_server_id + self.create_mode = 'Replica' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_py3.py index 74b39f0e3560..157822716bdb 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_py3.py @@ -54,6 +54,13 @@ class Server(TrackedResource): :type earliest_restore_date: datetime :param storage_profile: Storage profile of a server. :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param replication_role: The replication role of the server. + :type replication_role: str + :param master_server_id: The master server id of a relica server. + :type master_server_id: str + :param replica_capacity: The maximum number of replicas that a master + server can have. + :type replica_capacity: int """ _validation = { @@ -61,6 +68,7 @@ class Server(TrackedResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, + 'replica_capacity': {'minimum': 0}, } _attribute_map = { @@ -77,9 +85,12 @@ class Server(TrackedResource): 'fully_qualified_domain_name': {'key': 'properties.fullyQualifiedDomainName', 'type': 'str'}, 'earliest_restore_date': {'key': 'properties.earliestRestoreDate', 'type': 'iso-8601'}, 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'replication_role': {'key': 'properties.replicationRole', 'type': 'str'}, + 'master_server_id': {'key': 'properties.masterServerId', 'type': 'str'}, + 'replica_capacity': {'key': 'properties.replicaCapacity', 'type': 'int'}, } - def __init__(self, *, location: str, tags=None, sku=None, administrator_login: str=None, version=None, ssl_enforcement=None, user_visible_state=None, fully_qualified_domain_name: str=None, earliest_restore_date=None, storage_profile=None, **kwargs) -> None: + def __init__(self, *, location: str, tags=None, sku=None, administrator_login: str=None, version=None, ssl_enforcement=None, user_visible_state=None, fully_qualified_domain_name: str=None, earliest_restore_date=None, storage_profile=None, replication_role: str=None, master_server_id: str=None, replica_capacity: int=None, **kwargs) -> None: super(Server, self).__init__(location=location, tags=tags, **kwargs) self.sku = sku self.administrator_login = administrator_login @@ -89,3 +100,6 @@ def __init__(self, *, location: str, tags=None, sku=None, administrator_login: s self.fully_qualified_domain_name = fully_qualified_domain_name self.earliest_restore_date = earliest_restore_date self.storage_profile = storage_profile + self.replication_role = replication_role + self.master_server_id = master_server_id + self.replica_capacity = replica_capacity diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_security_alert_policy.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_security_alert_policy.py new file mode 100644 index 000000000000..7e18687ebbf1 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_security_alert_policy.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class ServerSecurityAlertPolicy(ProxyResource): + """A server security alert policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param state: Required. Specifies the state of the policy, whether it is + enabled or disabled. Possible values include: 'Enabled', 'Disabled' + :type state: str or + ~azure.mgmt.rdbms.mysql.models.ServerSecurityAlertPolicyState + :param disabled_alerts: Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly + :type disabled_alerts: list[str] + :param email_addresses: Specifies an array of e-mail addresses to which + the alert is sent. + :type email_addresses: list[str] + :param email_account_admins: Specifies that the alert is sent to the + account administrators. + :type email_account_admins: bool + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). This blob storage will hold all + Threat Detection audit logs. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + Threat Detection audit storage account. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the Threat + Detection audit logs. + :type retention_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'ServerSecurityAlertPolicyState'}, + 'disabled_alerts': {'key': 'properties.disabledAlerts', 'type': '[str]'}, + 'email_addresses': {'key': 'properties.emailAddresses', 'type': '[str]'}, + 'email_account_admins': {'key': 'properties.emailAccountAdmins', 'type': 'bool'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ServerSecurityAlertPolicy, self).__init__(**kwargs) + self.state = kwargs.get('state', None) + self.disabled_alerts = kwargs.get('disabled_alerts', None) + self.email_addresses = kwargs.get('email_addresses', None) + self.email_account_admins = kwargs.get('email_account_admins', None) + self.storage_endpoint = kwargs.get('storage_endpoint', None) + self.storage_account_access_key = kwargs.get('storage_account_access_key', None) + self.retention_days = kwargs.get('retention_days', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_security_alert_policy_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_security_alert_policy_py3.py new file mode 100644 index 000000000000..7867dfa5fa4b --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_security_alert_policy_py3.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class ServerSecurityAlertPolicy(ProxyResource): + """A server security alert policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param state: Required. Specifies the state of the policy, whether it is + enabled or disabled. Possible values include: 'Enabled', 'Disabled' + :type state: str or + ~azure.mgmt.rdbms.mysql.models.ServerSecurityAlertPolicyState + :param disabled_alerts: Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly + :type disabled_alerts: list[str] + :param email_addresses: Specifies an array of e-mail addresses to which + the alert is sent. + :type email_addresses: list[str] + :param email_account_admins: Specifies that the alert is sent to the + account administrators. + :type email_account_admins: bool + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). This blob storage will hold all + Threat Detection audit logs. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + Threat Detection audit storage account. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the Threat + Detection audit logs. + :type retention_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'ServerSecurityAlertPolicyState'}, + 'disabled_alerts': {'key': 'properties.disabledAlerts', 'type': '[str]'}, + 'email_addresses': {'key': 'properties.emailAddresses', 'type': '[str]'}, + 'email_account_admins': {'key': 'properties.emailAccountAdmins', 'type': 'bool'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + } + + def __init__(self, *, state, disabled_alerts=None, email_addresses=None, email_account_admins: bool=None, storage_endpoint: str=None, storage_account_access_key: str=None, retention_days: int=None, **kwargs) -> None: + super(ServerSecurityAlertPolicy, self).__init__(**kwargs) + self.state = state + self.disabled_alerts = disabled_alerts + self.email_addresses = email_addresses + self.email_account_admins = email_account_admins + self.storage_endpoint = storage_endpoint + self.storage_account_access_key = storage_account_access_key + self.retention_days = retention_days diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_update_parameters.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_update_parameters.py index 08a3d3dbc8e9..222299107d6a 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_update_parameters.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_update_parameters.py @@ -29,6 +29,8 @@ class ServerUpdateParameters(Model): server. Possible values include: 'Enabled', 'Disabled' :type ssl_enforcement: str or ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param replication_role: The replication role of the server. + :type replication_role: str :param tags: Application-specific metadata in the form of key-value pairs. :type tags: dict[str, str] """ @@ -39,6 +41,7 @@ class ServerUpdateParameters(Model): 'administrator_login_password': {'key': 'properties.administratorLoginPassword', 'type': 'str'}, 'version': {'key': 'properties.version', 'type': 'str'}, 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'replication_role': {'key': 'properties.replicationRole', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, } @@ -49,4 +52,5 @@ def __init__(self, **kwargs): self.administrator_login_password = kwargs.get('administrator_login_password', None) self.version = kwargs.get('version', None) self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.replication_role = kwargs.get('replication_role', None) self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_update_parameters_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_update_parameters_py3.py index 4d06bdc1e3ca..869a81a0767e 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_update_parameters_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/models/server_update_parameters_py3.py @@ -29,6 +29,8 @@ class ServerUpdateParameters(Model): server. Possible values include: 'Enabled', 'Disabled' :type ssl_enforcement: str or ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param replication_role: The replication role of the server. + :type replication_role: str :param tags: Application-specific metadata in the form of key-value pairs. :type tags: dict[str, str] """ @@ -39,14 +41,16 @@ class ServerUpdateParameters(Model): 'administrator_login_password': {'key': 'properties.administratorLoginPassword', 'type': 'str'}, 'version': {'key': 'properties.version', 'type': 'str'}, 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'replication_role': {'key': 'properties.replicationRole', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, *, sku=None, storage_profile=None, administrator_login_password: str=None, version=None, ssl_enforcement=None, tags=None, **kwargs) -> None: + def __init__(self, *, sku=None, storage_profile=None, administrator_login_password: str=None, version=None, ssl_enforcement=None, replication_role: str=None, tags=None, **kwargs) -> None: super(ServerUpdateParameters, self).__init__(**kwargs) self.sku = sku self.storage_profile = storage_profile self.administrator_login_password = administrator_login_password self.version = version self.ssl_enforcement = ssl_enforcement + self.replication_role = replication_role self.tags = tags diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/my_sql_management_client.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/my_sql_management_client.py index 4acabe526c05..fa95461b700b 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/my_sql_management_client.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/my_sql_management_client.py @@ -14,6 +14,7 @@ from msrestazure import AzureConfiguration from .version import VERSION from .operations.servers_operations import ServersOperations +from .operations.replicas_operations import ReplicasOperations from .operations.firewall_rules_operations import FirewallRulesOperations from .operations.virtual_network_rules_operations import VirtualNetworkRulesOperations from .operations.databases_operations import DatabasesOperations @@ -21,6 +22,7 @@ from .operations.log_files_operations import LogFilesOperations from .operations.location_based_performance_tier_operations import LocationBasedPerformanceTierOperations from .operations.check_name_availability_operations import CheckNameAvailabilityOperations +from .operations.server_security_alert_policies_operations import ServerSecurityAlertPoliciesOperations from .operations.operations import Operations from . import models @@ -66,6 +68,8 @@ class MySQLManagementClient(SDKClient): :ivar servers: Servers operations :vartype servers: azure.mgmt.rdbms.mysql.operations.ServersOperations + :ivar replicas: Replicas operations + :vartype replicas: azure.mgmt.rdbms.mysql.operations.ReplicasOperations :ivar firewall_rules: FirewallRules operations :vartype firewall_rules: azure.mgmt.rdbms.mysql.operations.FirewallRulesOperations :ivar virtual_network_rules: VirtualNetworkRules operations @@ -80,6 +84,8 @@ class MySQLManagementClient(SDKClient): :vartype location_based_performance_tier: azure.mgmt.rdbms.mysql.operations.LocationBasedPerformanceTierOperations :ivar check_name_availability: CheckNameAvailability operations :vartype check_name_availability: azure.mgmt.rdbms.mysql.operations.CheckNameAvailabilityOperations + :ivar server_security_alert_policies: ServerSecurityAlertPolicies operations + :vartype server_security_alert_policies: azure.mgmt.rdbms.mysql.operations.ServerSecurityAlertPoliciesOperations :ivar operations: Operations operations :vartype operations: azure.mgmt.rdbms.mysql.operations.Operations @@ -105,6 +111,8 @@ def __init__( self.servers = ServersOperations( self._client, self.config, self._serialize, self._deserialize) + self.replicas = ReplicasOperations( + self._client, self.config, self._serialize, self._deserialize) self.firewall_rules = FirewallRulesOperations( self._client, self.config, self._serialize, self._deserialize) self.virtual_network_rules = VirtualNetworkRulesOperations( @@ -119,5 +127,7 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.check_name_availability = CheckNameAvailabilityOperations( self._client, self.config, self._serialize, self._deserialize) + self.server_security_alert_policies = ServerSecurityAlertPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) self.operations = Operations( self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/__init__.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/__init__.py index 6020f85ddf6e..ba9e371e6e75 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/__init__.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/__init__.py @@ -10,6 +10,7 @@ # -------------------------------------------------------------------------- from .servers_operations import ServersOperations +from .replicas_operations import ReplicasOperations from .firewall_rules_operations import FirewallRulesOperations from .virtual_network_rules_operations import VirtualNetworkRulesOperations from .databases_operations import DatabasesOperations @@ -17,10 +18,12 @@ from .log_files_operations import LogFilesOperations from .location_based_performance_tier_operations import LocationBasedPerformanceTierOperations from .check_name_availability_operations import CheckNameAvailabilityOperations +from .server_security_alert_policies_operations import ServerSecurityAlertPoliciesOperations from .operations import Operations __all__ = [ 'ServersOperations', + 'ReplicasOperations', 'FirewallRulesOperations', 'VirtualNetworkRulesOperations', 'DatabasesOperations', @@ -28,5 +31,6 @@ 'LogFilesOperations', 'LocationBasedPerformanceTierOperations', 'CheckNameAvailabilityOperations', + 'ServerSecurityAlertPoliciesOperations', 'Operations', ] diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/check_name_availability_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/check_name_availability_operations.py index d7212d29648d..0bff08df05c6 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/check_name_availability_operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/check_name_availability_operations.py @@ -70,6 +70,7 @@ def execute( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -82,9 +83,8 @@ def execute( body_content = self._serialize.body(name_availability_request, 'NameAvailabilityRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/configurations_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/configurations_operations.py index b71a938d376c..46b0e660308d 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/configurations_operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/configurations_operations.py @@ -60,6 +60,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -72,9 +73,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'Configuration') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -188,7 +188,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -197,8 +197,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -259,7 +259,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -268,9 +268,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/databases_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/databases_operations.py index 7746deca34c3..b1358b0f7eca 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/databases_operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/databases_operations.py @@ -60,6 +60,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -72,9 +73,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'Database') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -171,7 +171,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -180,8 +179,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -276,7 +275,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -285,8 +284,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -347,7 +346,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -356,9 +355,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/firewall_rules_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/firewall_rules_operations.py index 4dc1bb68119a..ff2681b850e5 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/firewall_rules_operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/firewall_rules_operations.py @@ -60,6 +60,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -72,9 +73,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'FirewallRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -173,7 +173,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -182,8 +181,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -278,7 +277,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -287,8 +286,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -349,7 +348,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -358,9 +357,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/location_based_performance_tier_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/location_based_performance_tier_operations.py index ad72ff2e5183..da49775ed0e7 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/location_based_performance_tier_operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/location_based_performance_tier_operations.py @@ -75,7 +75,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,9 +84,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/log_files_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/log_files_operations.py index 113a981bc874..3da6dbdeb0fa 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/log_files_operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/log_files_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/operations.py index 3e99cc4f8173..57c38cf31a69 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/operations.py @@ -60,7 +60,7 @@ def list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -69,8 +69,8 @@ def list( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/replicas_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/replicas_operations.py new file mode 100644 index 000000000000..17718800d840 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/replicas_operations.py @@ -0,0 +1,110 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ReplicasOperations(object): + """ReplicasOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2017-12-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-12-01" + + self.config = config + + def list_by_server( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """List all the replicas for a given server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Server + :rtype: + ~azure.mgmt.rdbms.mysql.models.ServerPaged[~azure.mgmt.rdbms.mysql.models.Server] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_server.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ServerPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ServerPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_server.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/replicas'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/server_security_alert_policies_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/server_security_alert_policies_operations.py new file mode 100644 index 000000000000..5c4b9e8bc395 --- /dev/null +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/server_security_alert_policies_operations.py @@ -0,0 +1,212 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServerSecurityAlertPoliciesOperations(object): + """ServerSecurityAlertPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar security_alert_policy_name: The name of the security alert policy. Constant value: "Default". + :ivar api_version: The API version to use for the request. Constant value: "2017-12-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.security_alert_policy_name = "Default" + self.api_version = "2017-12-01" + + self.config = config + + def get( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """Get a server's security alert policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServerSecurityAlertPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.rdbms.mysql.models.ServerSecurityAlertPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'securityAlertPolicyName': self._serialize.url("self.security_alert_policy_name", self.security_alert_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/securityAlertPolicies/{securityAlertPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'securityAlertPolicyName': self._serialize.url("self.security_alert_policy_name", self.security_alert_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServerSecurityAlertPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a threat detection policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param parameters: The server security alert policy. + :type parameters: + ~azure.mgmt.rdbms.mysql.models.ServerSecurityAlertPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ServerSecurityAlertPolicy or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mysql.models.ServerSecurityAlertPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mysql.models.ServerSecurityAlertPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/securityAlertPolicies/{securityAlertPolicyName}'} diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/servers_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/servers_operations.py index 46d3cb5a5d7c..709564282c97 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/servers_operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/servers_operations.py @@ -57,6 +57,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -69,9 +70,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'ServerForCreate') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -163,6 +163,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -175,9 +176,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'ServerUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -267,7 +267,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -276,8 +275,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -366,7 +365,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -375,8 +374,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -434,7 +433,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -443,9 +442,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -499,7 +497,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -508,9 +506,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/virtual_network_rules_operations.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/virtual_network_rules_operations.py index 02fc092cc3e9..3f5f9b8a3132 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/virtual_network_rules_operations.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/mysql/operations/virtual_network_rules_operations.py @@ -78,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -128,6 +128,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -140,9 +141,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -242,7 +242,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -251,8 +250,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -352,7 +351,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -361,9 +360,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/postgre_sql_management_client_enums.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/postgre_sql_management_client_enums.py index 113c45c3c003..58b3c8ce4f2b 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/postgre_sql_management_client_enums.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/postgre_sql_management_client_enums.py @@ -16,6 +16,9 @@ class ServerVersion(str, Enum): nine_full_stop_five = "9.5" nine_full_stop_six = "9.6" + one_zero = "10" + one_zero_full_stop_zero = "10.0" + one_zero_full_stop_two = "10.2" class SslEnforcementEnum(str, Enum): diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server.py index be0aabcb6fa4..4ba9b5b3df1d 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server.py @@ -36,7 +36,8 @@ class Server(TrackedResource): Can only be specified when the server is being created (and is required for creation). :type administrator_login: str - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_create.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_create.py index 8c9b8a45eb69..5ab135d7a54e 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_create.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_create.py @@ -21,7 +21,8 @@ class ServerPropertiesForCreate(Model): All required parameters must be populated in order to send to Azure. - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_create_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_create_py3.py index 5983a5bff36d..24e5f64e6511 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_create_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_create_py3.py @@ -21,7 +21,8 @@ class ServerPropertiesForCreate(Model): All required parameters must be populated in order to send to Azure. - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_default_create.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_default_create.py index 89d145f48dc1..da6fd136fecf 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_default_create.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_default_create.py @@ -17,7 +17,8 @@ class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): All required parameters must be populated in order to send to Azure. - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_default_create_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_default_create_py3.py index 0fb43758d0da..3cef4094aa1c 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_default_create_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_default_create_py3.py @@ -17,7 +17,8 @@ class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): All required parameters must be populated in order to send to Azure. - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_geo_restore.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_geo_restore.py index ccd84f7330fb..195d1fe26c04 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_geo_restore.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_geo_restore.py @@ -18,7 +18,8 @@ class ServerPropertiesForGeoRestore(ServerPropertiesForCreate): All required parameters must be populated in order to send to Azure. - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_geo_restore_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_geo_restore_py3.py index 91c47cc1418a..bc8ac2dd410f 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_geo_restore_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_geo_restore_py3.py @@ -18,7 +18,8 @@ class ServerPropertiesForGeoRestore(ServerPropertiesForCreate): All required parameters must be populated in order to send to Azure. - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_restore.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_restore.py index 31ea1129095d..95559a5fe787 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_restore.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_restore.py @@ -17,7 +17,8 @@ class ServerPropertiesForRestore(ServerPropertiesForCreate): All required parameters must be populated in order to send to Azure. - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_restore_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_restore_py3.py index c6ff05ab6077..29afafba30c4 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_restore_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_properties_for_restore_py3.py @@ -17,7 +17,8 @@ class ServerPropertiesForRestore(ServerPropertiesForCreate): All required parameters must be populated in order to send to Azure. - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_py3.py index 29cafa54507d..39e4dd240528 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_py3.py @@ -36,7 +36,8 @@ class Server(TrackedResource): Can only be specified when the server is being created (and is required for creation). :type administrator_login: str - :param version: Server version. Possible values include: '9.5', '9.6' + :param version: Server version. Possible values include: '9.5', '9.6', + '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_update_parameters.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_update_parameters.py index f806ed2151a7..98fdfa2e6b76 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_update_parameters.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_update_parameters.py @@ -23,7 +23,7 @@ class ServerUpdateParameters(Model): login. :type administrator_login_password: str :param version: The version of a server. Possible values include: '9.5', - '9.6' + '9.6', '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_update_parameters_py3.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_update_parameters_py3.py index f7f3a6a1b00b..cdcedce754c5 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_update_parameters_py3.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/postgresql/models/server_update_parameters_py3.py @@ -23,7 +23,7 @@ class ServerUpdateParameters(Model): login. :type administrator_login_password: str :param version: The version of a server. Possible values include: '9.5', - '9.6' + '9.6', '10', '10.0', '10.2' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to server. Possible values include: 'Enabled', 'Disabled' diff --git a/azure-mgmt-rdbms/azure/mgmt/rdbms/version.py b/azure-mgmt-rdbms/azure/mgmt/rdbms/version.py index aa163582f188..a4fc40fc9049 100644 --- a/azure-mgmt-rdbms/azure/mgmt/rdbms/version.py +++ b/azure-mgmt-rdbms/azure/mgmt/rdbms/version.py @@ -5,5 +5,5 @@ # license information. # -------------------------------------------------------------------------- -VERSION = "1.2.0" +VERSION = "1.5.0" diff --git a/azure-mgmt-rdbms/azure_bdist_wheel.py b/azure-mgmt-rdbms/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-rdbms/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-rdbms/sdk_packaging.toml b/azure-mgmt-rdbms/sdk_packaging.toml index d837234a8122..5f3773112840 100644 --- a/azure-mgmt-rdbms/sdk_packaging.toml +++ b/azure-mgmt-rdbms/sdk_packaging.toml @@ -2,4 +2,4 @@ package_name = "azure-mgmt-rdbms" package_pprint_name = "RDBMS Management" package_doc_id = "" -is_stable = false +is_stable = true diff --git a/azure-mgmt-rdbms/setup.cfg b/azure-mgmt-rdbms/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-rdbms/setup.cfg +++ b/azure-mgmt-rdbms/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-rdbms/setup.py b/azure-mgmt-rdbms/setup.py index 11cabf50fc31..23d641d523cb 100644 --- a/azure-mgmt-rdbms/setup.py +++ b/azure-mgmt-rdbms/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-rdbms" @@ -64,7 +58,7 @@ author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ - 'Development Status :: 4 - Beta', + 'Development Status :: 5 - Production/Stable', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-recoveryservices/MANIFEST.in b/azure-mgmt-recoveryservices/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-recoveryservices/MANIFEST.in +++ b/azure-mgmt-recoveryservices/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-recoveryservices/README.rst b/azure-mgmt-recoveryservices/README.rst index 469de038ba8d..1b3fbc27f7fb 100644 --- a/azure-mgmt-recoveryservices/README.rst +++ b/azure-mgmt-recoveryservices/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Recovery Services Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-recoveryservices/azure/__init__.py b/azure-mgmt-recoveryservices/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-recoveryservices/azure/__init__.py +++ b/azure-mgmt-recoveryservices/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-recoveryservices/azure/mgmt/__init__.py b/azure-mgmt-recoveryservices/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-recoveryservices/azure/mgmt/__init__.py +++ b/azure-mgmt-recoveryservices/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-recoveryservices/azure_bdist_wheel.py b/azure-mgmt-recoveryservices/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-recoveryservices/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-recoveryservices/setup.cfg b/azure-mgmt-recoveryservices/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-recoveryservices/setup.cfg +++ b/azure-mgmt-recoveryservices/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-recoveryservices/setup.py b/azure-mgmt-recoveryservices/setup.py index 3b8c97efed35..6e4d331da6a3 100644 --- a/azure-mgmt-recoveryservices/setup.py +++ b/azure-mgmt-recoveryservices/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-recoveryservices" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-recoveryservicesbackup/MANIFEST.in b/azure-mgmt-recoveryservicesbackup/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-recoveryservicesbackup/MANIFEST.in +++ b/azure-mgmt-recoveryservicesbackup/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-recoveryservicesbackup/README.rst b/azure-mgmt-recoveryservicesbackup/README.rst index 940d0af77f11..5594cc03800d 100644 --- a/azure-mgmt-recoveryservicesbackup/README.rst +++ b/azure-mgmt-recoveryservicesbackup/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Recovery Services Backup Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-recoveryservicesbackup/azure/__init__.py b/azure-mgmt-recoveryservicesbackup/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-recoveryservicesbackup/azure/__init__.py +++ b/azure-mgmt-recoveryservicesbackup/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-recoveryservicesbackup/azure/mgmt/__init__.py b/azure-mgmt-recoveryservicesbackup/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-recoveryservicesbackup/azure/mgmt/__init__.py +++ b/azure-mgmt-recoveryservicesbackup/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-recoveryservicesbackup/azure_bdist_wheel.py b/azure-mgmt-recoveryservicesbackup/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-recoveryservicesbackup/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-recoveryservicesbackup/setup.cfg b/azure-mgmt-recoveryservicesbackup/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-recoveryservicesbackup/setup.cfg +++ b/azure-mgmt-recoveryservicesbackup/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-recoveryservicesbackup/setup.py b/azure-mgmt-recoveryservicesbackup/setup.py index e375e8a291f5..e6d4f870be26 100644 --- a/azure-mgmt-recoveryservicesbackup/setup.py +++ b/azure-mgmt-recoveryservicesbackup/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-recoveryservicesbackup" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-redis/MANIFEST.in b/azure-mgmt-redis/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-redis/MANIFEST.in +++ b/azure-mgmt-redis/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-redis/README.rst b/azure-mgmt-redis/README.rst index af688d055ff0..a9fad04b31f7 100644 --- a/azure-mgmt-redis/README.rst +++ b/azure-mgmt-redis/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Redis Cache Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-redis/azure/__init__.py b/azure-mgmt-redis/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-redis/azure/__init__.py +++ b/azure-mgmt-redis/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-redis/azure/mgmt/__init__.py b/azure-mgmt-redis/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-redis/azure/mgmt/__init__.py +++ b/azure-mgmt-redis/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-redis/azure_bdist_wheel.py b/azure-mgmt-redis/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-redis/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-redis/sdk_packaging.toml b/azure-mgmt-redis/sdk_packaging.toml new file mode 100644 index 000000000000..697bf3080149 --- /dev/null +++ b/azure-mgmt-redis/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-redis" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Redis Cache Management" +package_doc_id = "redis" +is_stable = true +is_arm = true diff --git a/azure-mgmt-redis/setup.cfg b/azure-mgmt-redis/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-redis/setup.cfg +++ b/azure-mgmt-redis/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-redis/setup.py b/azure-mgmt-redis/setup.py index 17430393a548..e9f9148f8e99 100644 --- a/azure-mgmt-redis/setup.py +++ b/azure-mgmt-redis/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-redis" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-relay/MANIFEST.in b/azure-mgmt-relay/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-relay/MANIFEST.in +++ b/azure-mgmt-relay/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-relay/README.rst b/azure-mgmt-relay/README.rst index b1ceb983533c..ce87a46bd7c7 100644 --- a/azure-mgmt-relay/README.rst +++ b/azure-mgmt-relay/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Relay Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Relay -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-relay/azure/__init__.py b/azure-mgmt-relay/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-relay/azure/__init__.py +++ b/azure-mgmt-relay/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-relay/azure/mgmt/__init__.py b/azure-mgmt-relay/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-relay/azure/mgmt/__init__.py +++ b/azure-mgmt-relay/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-relay/azure_bdist_wheel.py b/azure-mgmt-relay/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-relay/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-relay/sdk_packaging.toml b/azure-mgmt-relay/sdk_packaging.toml new file mode 100644 index 000000000000..cef981a1a9f1 --- /dev/null +++ b/azure-mgmt-relay/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-relay" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Relay" +package_doc_id = "relay" +is_stable = false +is_arm = true diff --git a/azure-mgmt-relay/setup.cfg b/azure-mgmt-relay/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-relay/setup.cfg +++ b/azure-mgmt-relay/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-relay/setup.py b/azure-mgmt-relay/setup.py index b7242e80f597..eca5fb38f120 100644 --- a/azure-mgmt-relay/setup.py +++ b/azure-mgmt-relay/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-relay" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-reservations/HISTORY.rst b/azure-mgmt-reservations/HISTORY.rst index 55cb77c2255e..16968c4f6bd1 100644 --- a/azure-mgmt-reservations/HISTORY.rst +++ b/azure-mgmt-reservations/HISTORY.rst @@ -3,6 +3,21 @@ Release History =============== +0.3.1 (2018-11-05) +++++++++++++++++++ + +**Features** + +- Add redhat support + +0.3.0 (2018-08-22) +++++++++++++++++++ + +**Features** + +* Model Patch has a new parameter 'name' +* Enum ReservedResourceType has a new value 'cosmos_db' + 0.2.1 (2018-06-14) ++++++++++++++++++ diff --git a/azure-mgmt-reservations/MANIFEST.in b/azure-mgmt-reservations/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-reservations/MANIFEST.in +++ b/azure-mgmt-reservations/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-reservations/README.rst b/azure-mgmt-reservations/README.rst index b6e8b4249e6e..5fcb8d3294bf 100644 --- a/azure-mgmt-reservations/README.rst +++ b/azure-mgmt-reservations/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Reservations Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-reservations/azure/__init__.py b/azure-mgmt-reservations/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-reservations/azure/__init__.py +++ b/azure-mgmt-reservations/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-reservations/azure/mgmt/__init__.py b/azure-mgmt-reservations/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-reservations/azure/mgmt/__init__.py +++ b/azure-mgmt-reservations/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/azure_reservation_api.py b/azure-mgmt-reservations/azure/mgmt/reservations/azure_reservation_api.py index 7d4af5699647..2dccd62f8ab3 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/azure_reservation_api.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/azure_reservation_api.py @@ -127,7 +127,7 @@ def get_catalog( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -136,8 +136,8 @@ def get_catalog( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -186,7 +186,7 @@ def get_applied_reservation_list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -195,8 +195,8 @@ def get_applied_reservation_list( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/models/azure_reservation_api_enums.py b/azure-mgmt-reservations/azure/mgmt/reservations/models/azure_reservation_api_enums.py index 4f24e748f4b2..cd9c4cc4f785 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/models/azure_reservation_api_enums.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/models/azure_reservation_api_enums.py @@ -95,6 +95,8 @@ class ReservedResourceType(str, Enum): virtual_machines = "VirtualMachines" sql_databases = "SqlDatabases" suse_linux = "SuseLinux" + cosmos_db = "CosmosDb" + red_hat = "RedHat" class InstanceFlexibility(str, Enum): diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/models/patch.py b/azure-mgmt-reservations/azure/mgmt/reservations/models/patch.py index 2175d418e98a..c455970383a2 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/models/patch.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/models/patch.py @@ -24,12 +24,15 @@ class Patch(Model): 'NotSupported' :type instance_flexibility: str or ~azure.mgmt.reservations.models.InstanceFlexibility + :param name: Name of the Reservation + :type name: str """ _attribute_map = { 'applied_scope_type': {'key': 'properties.appliedScopeType', 'type': 'str'}, 'applied_scopes': {'key': 'properties.appliedScopes', 'type': '[str]'}, 'instance_flexibility': {'key': 'properties.instanceFlexibility', 'type': 'str'}, + 'name': {'key': 'properties.name', 'type': 'str'}, } def __init__(self, **kwargs): @@ -37,3 +40,4 @@ def __init__(self, **kwargs): self.applied_scope_type = kwargs.get('applied_scope_type', None) self.applied_scopes = kwargs.get('applied_scopes', None) self.instance_flexibility = kwargs.get('instance_flexibility', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/models/patch_py3.py b/azure-mgmt-reservations/azure/mgmt/reservations/models/patch_py3.py index 7e5a4d180951..5a02ee4558b3 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/models/patch_py3.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/models/patch_py3.py @@ -24,16 +24,20 @@ class Patch(Model): 'NotSupported' :type instance_flexibility: str or ~azure.mgmt.reservations.models.InstanceFlexibility + :param name: Name of the Reservation + :type name: str """ _attribute_map = { 'applied_scope_type': {'key': 'properties.appliedScopeType', 'type': 'str'}, 'applied_scopes': {'key': 'properties.appliedScopes', 'type': '[str]'}, 'instance_flexibility': {'key': 'properties.instanceFlexibility', 'type': 'str'}, + 'name': {'key': 'properties.name', 'type': 'str'}, } - def __init__(self, *, applied_scope_type=None, applied_scopes=None, instance_flexibility=None, **kwargs) -> None: + def __init__(self, *, applied_scope_type=None, applied_scopes=None, instance_flexibility=None, name: str=None, **kwargs) -> None: super(Patch, self).__init__(**kwargs) self.applied_scope_type = applied_scope_type self.applied_scopes = applied_scopes self.instance_flexibility = instance_flexibility + self.name = name diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/models/reservation_properties.py b/azure-mgmt-reservations/azure/mgmt/reservations/models/reservation_properties.py index da4b9d135769..bb93e99ecf3f 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/models/reservation_properties.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/models/reservation_properties.py @@ -19,7 +19,7 @@ class ReservationProperties(Model): sending a request. :param reserved_resource_type: Possible values include: 'VirtualMachines', - 'SqlDatabases', 'SuseLinux' + 'SqlDatabases', 'SuseLinux', 'CosmosDb', 'RedHat' :type reserved_resource_type: str or ~azure.mgmt.reservations.models.ReservedResourceType :param instance_flexibility: Possible values include: 'On', 'Off', diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/models/reservation_properties_py3.py b/azure-mgmt-reservations/azure/mgmt/reservations/models/reservation_properties_py3.py index db7a07c52317..adefcbc965cf 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/models/reservation_properties_py3.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/models/reservation_properties_py3.py @@ -19,7 +19,7 @@ class ReservationProperties(Model): sending a request. :param reserved_resource_type: Possible values include: 'VirtualMachines', - 'SqlDatabases', 'SuseLinux' + 'SqlDatabases', 'SuseLinux', 'CosmosDb', 'RedHat' :type reserved_resource_type: str or ~azure.mgmt.reservations.models.ReservedResourceType :param instance_flexibility: Possible values include: 'On', 'Off', diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/operations/operation_operations.py b/azure-mgmt-reservations/azure/mgmt/reservations/operations/operation_operations.py index 2ee5d9c89dc4..5598347eef11 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/operations/operation_operations.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/operations/operation_operations.py @@ -69,7 +69,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -78,9 +78,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/operations/reservation_operations.py b/azure-mgmt-reservations/azure/mgmt/reservations/operations/reservation_operations.py index 91853cadf859..4f2f06b72c33 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/operations/reservation_operations.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/operations/reservation_operations.py @@ -56,6 +56,7 @@ def _split_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -68,9 +69,8 @@ def _split_initial( body_content = self._serialize.body(body, 'SplitRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ErrorException(self._deserialize, response) @@ -162,6 +162,7 @@ def _merge_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -174,9 +175,8 @@ def _merge_initial( body_content = self._serialize.body(body, 'MergeRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ErrorException(self._deserialize, response) @@ -283,7 +283,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -292,9 +292,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -347,7 +346,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -356,8 +355,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -391,6 +390,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -403,9 +403,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'Patch') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: raise models.ErrorException(self._deserialize, response) @@ -517,7 +516,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -526,9 +525,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/operations/reservation_order_operations.py b/azure-mgmt-reservations/azure/mgmt/reservations/operations/reservation_order_operations.py index 4898d26d101e..ee76672b5963 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/operations/reservation_order_operations.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/operations/reservation_order_operations.py @@ -70,7 +70,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -79,9 +79,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) @@ -131,7 +130,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -140,8 +139,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorException(self._deserialize, response) diff --git a/azure-mgmt-reservations/azure/mgmt/reservations/version.py b/azure-mgmt-reservations/azure/mgmt/reservations/version.py index 3da0f49f071f..54fdd938c10a 100644 --- a/azure-mgmt-reservations/azure/mgmt/reservations/version.py +++ b/azure-mgmt-reservations/azure/mgmt/reservations/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.2.1" +VERSION = "0.3.1" diff --git a/azure-mgmt-reservations/azure_bdist_wheel.py b/azure-mgmt-reservations/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-reservations/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-reservations/setup.cfg b/azure-mgmt-reservations/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-reservations/setup.cfg +++ b/azure-mgmt-reservations/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-reservations/setup.py b/azure-mgmt-reservations/setup.py index 78eeffa9dfe1..99195938af80 100644 --- a/azure-mgmt-reservations/setup.py +++ b/azure-mgmt-reservations/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-reservations" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-resource/MANIFEST.in b/azure-mgmt-resource/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-resource/MANIFEST.in +++ b/azure-mgmt-resource/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-resource/README.rst b/azure-mgmt-resource/README.rst index 93b3aeb0ff3e..82592b0b6674 100644 --- a/azure-mgmt-resource/README.rst +++ b/azure-mgmt-resource/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Resource Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-resource/azure/__init__.py b/azure-mgmt-resource/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-resource/azure/__init__.py +++ b/azure-mgmt-resource/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-resource/azure/mgmt/__init__.py b/azure-mgmt-resource/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-resource/azure/mgmt/__init__.py +++ b/azure-mgmt-resource/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-resource/azure_bdist_wheel.py b/azure-mgmt-resource/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-resource/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-resource/setup.cfg b/azure-mgmt-resource/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-resource/setup.cfg +++ b/azure-mgmt-resource/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-resource/setup.py b/azure-mgmt-resource/setup.py index 39abbc5af67c..0b6289c9ebda 100644 --- a/azure-mgmt-resource/setup.py +++ b/azure-mgmt-resource/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-resource" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', - 'azure-common~=1.1,>=1.1.9', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', + 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-resourcegraph/HISTORY.rst b/azure-mgmt-resourcegraph/HISTORY.rst new file mode 100644 index 000000000000..63d28455418b --- /dev/null +++ b/azure-mgmt-resourcegraph/HISTORY.rst @@ -0,0 +1,9 @@ +.. :changelog: + +Release History +=============== + +0.1.0 (2018-09-07) +++++++++++++++++++ + +* Initial Release diff --git a/azure-mgmt-resourcegraph/MANIFEST.in b/azure-mgmt-resourcegraph/MANIFEST.in new file mode 100644 index 000000000000..bb37a2723dae --- /dev/null +++ b/azure-mgmt-resourcegraph/MANIFEST.in @@ -0,0 +1 @@ +include *.rst diff --git a/azure-mgmt-resourcegraph/README.rst b/azure-mgmt-resourcegraph/README.rst new file mode 100644 index 000000000000..96a089ff2698 --- /dev/null +++ b/azure-mgmt-resourcegraph/README.rst @@ -0,0 +1,49 @@ +Microsoft Azure SDK for Python +============================== + +This is the Microsoft Azure Resource Graph Client Library. + +Azure Resource Manager (ARM) is the next generation of management APIs that +replace the old Azure Service Management (ASM). + +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For the older Azure Service Management (ASM) libraries, see +`azure-servicemanagement-legacy `__ library. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. + + +Compatibility +============= + +**IMPORTANT**: If you have an earlier version of the azure package +(version < 1.0), you should uninstall it before installing this package. + +You can check the version using pip: + +.. code:: shell + + pip freeze + +If you see azure==0.11.0 (or any version below 1.0), uninstall it first: + +.. code:: shell + + pip uninstall azure + + +Usage +===== + +For code examples, see `Resource Graph +`__ +on docs.microsoft.com. + + +Provide Feedback +================ + +If you encounter any bugs or have suggestions, please file an issue in the +`Issues `__ +section of the project. diff --git a/azure-mgmt-resourcegraph/azure/__init__.py b/azure-mgmt-resourcegraph/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-resourcegraph/azure/mgmt/__init__.py b/azure-mgmt-resourcegraph/azure/mgmt/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/__init__.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/__init__.py new file mode 100644 index 000000000000..7cab47e782dd --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/__init__.py @@ -0,0 +1,18 @@ +# 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 .resource_graph_client import ResourceGraphClient +from .version import VERSION + +__all__ = ['ResourceGraphClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/__init__.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/__init__.py new file mode 100644 index 000000000000..b9665e9850d4 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/__init__.py @@ -0,0 +1,71 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .query_request_options_py3 import QueryRequestOptions + from .facet_request_options_py3 import FacetRequestOptions + from .facet_request_py3 import FacetRequest + from .query_request_py3 import QueryRequest + from .column_py3 import Column + from .table_py3 import Table + from .facet_py3 import Facet + from .query_response_py3 import QueryResponse + from .facet_result_py3 import FacetResult + from .error_details_py3 import ErrorDetails + from .facet_error_py3 import FacetError + from .error_py3 import Error + from .error_response_py3 import ErrorResponse, ErrorResponseException + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation +except (SyntaxError, ImportError): + from .query_request_options import QueryRequestOptions + from .facet_request_options import FacetRequestOptions + from .facet_request import FacetRequest + from .query_request import QueryRequest + from .column import Column + from .table import Table + from .facet import Facet + from .query_response import QueryResponse + from .facet_result import FacetResult + from .error_details import ErrorDetails + from .facet_error import FacetError + from .error import Error + from .error_response import ErrorResponse, ErrorResponseException + from .operation_display import OperationDisplay + from .operation import Operation +from .operation_paged import OperationPaged +from .resource_graph_client_enums import ( + FacetSortOrder, + ResultTruncated, + ColumnDataType, +) + +__all__ = [ + 'QueryRequestOptions', + 'FacetRequestOptions', + 'FacetRequest', + 'QueryRequest', + 'Column', + 'Table', + 'Facet', + 'QueryResponse', + 'FacetResult', + 'ErrorDetails', + 'FacetError', + 'Error', + 'ErrorResponse', 'ErrorResponseException', + 'OperationDisplay', + 'Operation', + 'OperationPaged', + 'FacetSortOrder', + 'ResultTruncated', + 'ColumnDataType', +] diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/column.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/column.py new file mode 100644 index 000000000000..5374aa3c8bcb --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/column.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Column(Model): + """Query result column descriptor. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Column name. + :type name: str + :param type: Required. Column data type. Possible values include: + 'string', 'integer', 'number', 'boolean', 'object' + :type type: str or ~azure.mgmt.resourcegraph.models.ColumnDataType + """ + + _validation = { + 'name': {'required': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ColumnDataType'}, + } + + def __init__(self, **kwargs): + super(Column, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/column_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/column_py3.py new file mode 100644 index 000000000000..018db7627f50 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/column_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Column(Model): + """Query result column descriptor. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Column name. + :type name: str + :param type: Required. Column data type. Possible values include: + 'string', 'integer', 'number', 'boolean', 'object' + :type type: str or ~azure.mgmt.resourcegraph.models.ColumnDataType + """ + + _validation = { + 'name': {'required': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ColumnDataType'}, + } + + def __init__(self, *, name: str, type, **kwargs) -> None: + super(Column, self).__init__(**kwargs) + self.name = name + self.type = type diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error.py new file mode 100644 index 000000000000..a636be2b606b --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Error(Model): + """Error info. + + Error details. + + All required parameters must be populated in order to send to Azure. + + :param code: Required. Error code identifying the specific error. + :type code: str + :param message: Required. A human readable error message. + :type message: str + :param details: Error details + :type details: list[~azure.mgmt.resourcegraph.models.ErrorDetails] + """ + + _validation = { + 'code': {'required': True}, + 'message': {'required': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorDetails]'}, + } + + def __init__(self, **kwargs): + super(Error, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.details = kwargs.get('details', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_details.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_details.py new file mode 100644 index 000000000000..492ef064177f --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_details.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorDetails(Model): + """Error details. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param code: Required. Error code identifying the specific error. + :type code: str + :param message: Required. A human readable error message. + :type message: str + """ + + _validation = { + 'code': {'required': True}, + 'message': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ErrorDetails, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_details_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_details_py3.py new file mode 100644 index 000000000000..9477601ee29f --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_details_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ErrorDetails(Model): + """Error details. + + All required parameters must be populated in order to send to Azure. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param code: Required. Error code identifying the specific error. + :type code: str + :param message: Required. A human readable error message. + :type message: str + """ + + _validation = { + 'code': {'required': True}, + 'message': {'required': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, code: str, message: str, additional_properties=None, **kwargs) -> None: + super(ErrorDetails, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.code = code + self.message = message diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_py3.py new file mode 100644 index 000000000000..794e64393602 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Error(Model): + """Error info. + + Error details. + + All required parameters must be populated in order to send to Azure. + + :param code: Required. Error code identifying the specific error. + :type code: str + :param message: Required. A human readable error message. + :type message: str + :param details: Error details + :type details: list[~azure.mgmt.resourcegraph.models.ErrorDetails] + """ + + _validation = { + 'code': {'required': True}, + 'message': {'required': True}, + } + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorDetails]'}, + } + + def __init__(self, *, code: str, message: str, details=None, **kwargs) -> None: + super(Error, self).__init__(**kwargs) + self.code = code + self.message = message + self.details = details diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_response.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_response.py new file mode 100644 index 000000000000..4edf5fbea873 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_response.py @@ -0,0 +1,49 @@ +# 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 + + +class ErrorResponse(Model): + """Error response. + + An error response from the API. + + All required parameters must be populated in order to send to Azure. + + :param error: Required. Error information. + :type error: ~azure.mgmt.resourcegraph.models.Error + """ + + _validation = { + 'error': {'required': True}, + } + + _attribute_map = { + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.error = kwargs.get('error', None) + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_response_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_response_py3.py new file mode 100644 index 000000000000..f29ed91e8354 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/error_response_py3.py @@ -0,0 +1,49 @@ +# 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 + + +class ErrorResponse(Model): + """Error response. + + An error response from the API. + + All required parameters must be populated in order to send to Azure. + + :param error: Required. Error information. + :type error: ~azure.mgmt.resourcegraph.models.Error + """ + + _validation = { + 'error': {'required': True}, + } + + _attribute_map = { + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, *, error, **kwargs) -> None: + super(ErrorResponse, self).__init__(**kwargs) + self.error = error + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet.py new file mode 100644 index 000000000000..9b9193356ed8 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Facet(Model): + """A facet containing additional statistics on the response of a query. Can be + either FacetResult or FacetError. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: FacetResult, FacetError + + All required parameters must be populated in order to send to Azure. + + :param expression: Required. Facet expression, same as in the + corresponding facet request. + :type expression: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'expression': {'required': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'expression': {'key': 'expression', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'FacetResult': 'FacetResult', 'FacetError': 'FacetError'} + } + + def __init__(self, **kwargs): + super(Facet, self).__init__(**kwargs) + self.expression = kwargs.get('expression', None) + self.result_type = None diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_error.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_error.py new file mode 100644 index 000000000000..aab89e709432 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_error.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .facet import Facet + + +class FacetError(Facet): + """A facet whose execution resulted in an error. + + All required parameters must be populated in order to send to Azure. + + :param expression: Required. Facet expression, same as in the + corresponding facet request. + :type expression: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param errors: Required. An array containing detected facet errors with + details. + :type errors: list[~azure.mgmt.resourcegraph.models.ErrorDetails] + """ + + _validation = { + 'expression': {'required': True}, + 'result_type': {'required': True}, + 'errors': {'required': True}, + } + + _attribute_map = { + 'expression': {'key': 'expression', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '[ErrorDetails]'}, + } + + def __init__(self, **kwargs): + super(FacetError, self).__init__(**kwargs) + self.errors = kwargs.get('errors', None) + self.result_type = 'FacetError' diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_error_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_error_py3.py new file mode 100644 index 000000000000..06da3acc4562 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_error_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .facet_py3 import Facet + + +class FacetError(Facet): + """A facet whose execution resulted in an error. + + All required parameters must be populated in order to send to Azure. + + :param expression: Required. Facet expression, same as in the + corresponding facet request. + :type expression: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param errors: Required. An array containing detected facet errors with + details. + :type errors: list[~azure.mgmt.resourcegraph.models.ErrorDetails] + """ + + _validation = { + 'expression': {'required': True}, + 'result_type': {'required': True}, + 'errors': {'required': True}, + } + + _attribute_map = { + 'expression': {'key': 'expression', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'errors': {'key': 'errors', 'type': '[ErrorDetails]'}, + } + + def __init__(self, *, expression: str, errors, **kwargs) -> None: + super(FacetError, self).__init__(expression=expression, **kwargs) + self.errors = errors + self.result_type = 'FacetError' diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_py3.py new file mode 100644 index 000000000000..ffe29392108d --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Facet(Model): + """A facet containing additional statistics on the response of a query. Can be + either FacetResult or FacetError. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: FacetResult, FacetError + + All required parameters must be populated in order to send to Azure. + + :param expression: Required. Facet expression, same as in the + corresponding facet request. + :type expression: str + :param result_type: Required. Constant filled by server. + :type result_type: str + """ + + _validation = { + 'expression': {'required': True}, + 'result_type': {'required': True}, + } + + _attribute_map = { + 'expression': {'key': 'expression', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + } + + _subtype_map = { + 'result_type': {'FacetResult': 'FacetResult', 'FacetError': 'FacetError'} + } + + def __init__(self, *, expression: str, **kwargs) -> None: + super(Facet, self).__init__(**kwargs) + self.expression = expression + self.result_type = None diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request.py new file mode 100644 index 000000000000..0f01fe8229d4 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FacetRequest(Model): + """A request to compute additional statistics (facets) over the query results. + + All required parameters must be populated in order to send to Azure. + + :param expression: Required. The column or list of columns to summarize by + :type expression: str + :param options: The options for facet evaluation + :type options: ~azure.mgmt.resourcegraph.models.FacetRequestOptions + """ + + _validation = { + 'expression': {'required': True}, + } + + _attribute_map = { + 'expression': {'key': 'expression', 'type': 'str'}, + 'options': {'key': 'options', 'type': 'FacetRequestOptions'}, + } + + def __init__(self, **kwargs): + super(FacetRequest, self).__init__(**kwargs) + self.expression = kwargs.get('expression', None) + self.options = kwargs.get('options', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_options.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_options.py new file mode 100644 index 000000000000..4ea94a3bd963 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_options.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FacetRequestOptions(Model): + """The options for facet evaluation. + + :param sort_order: The sorting order by the hit count. Possible values + include: 'asc', 'desc'. Default value: "desc" . + :type sort_order: str or ~azure.mgmt.resourcegraph.models.FacetSortOrder + :param top: The maximum number of facet rows that should be returned. + :type top: int + """ + + _validation = { + 'top': {'maximum': 1000, 'minimum': 1}, + } + + _attribute_map = { + 'sort_order': {'key': 'sortOrder', 'type': 'FacetSortOrder'}, + 'top': {'key': '$top', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(FacetRequestOptions, self).__init__(**kwargs) + self.sort_order = kwargs.get('sort_order', "desc") + self.top = kwargs.get('top', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_options_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_options_py3.py new file mode 100644 index 000000000000..677fda8ce26c --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_options_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FacetRequestOptions(Model): + """The options for facet evaluation. + + :param sort_order: The sorting order by the hit count. Possible values + include: 'asc', 'desc'. Default value: "desc" . + :type sort_order: str or ~azure.mgmt.resourcegraph.models.FacetSortOrder + :param top: The maximum number of facet rows that should be returned. + :type top: int + """ + + _validation = { + 'top': {'maximum': 1000, 'minimum': 1}, + } + + _attribute_map = { + 'sort_order': {'key': 'sortOrder', 'type': 'FacetSortOrder'}, + 'top': {'key': '$top', 'type': 'int'}, + } + + def __init__(self, *, sort_order="desc", top: int=None, **kwargs) -> None: + super(FacetRequestOptions, self).__init__(**kwargs) + self.sort_order = sort_order + self.top = top diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_py3.py new file mode 100644 index 000000000000..cc0fd8b132df --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_request_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FacetRequest(Model): + """A request to compute additional statistics (facets) over the query results. + + All required parameters must be populated in order to send to Azure. + + :param expression: Required. The column or list of columns to summarize by + :type expression: str + :param options: The options for facet evaluation + :type options: ~azure.mgmt.resourcegraph.models.FacetRequestOptions + """ + + _validation = { + 'expression': {'required': True}, + } + + _attribute_map = { + 'expression': {'key': 'expression', 'type': 'str'}, + 'options': {'key': 'options', 'type': 'FacetRequestOptions'}, + } + + def __init__(self, *, expression: str, options=None, **kwargs) -> None: + super(FacetRequest, self).__init__(**kwargs) + self.expression = expression + self.options = options diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_result.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_result.py new file mode 100644 index 000000000000..82dede8eb06f --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_result.py @@ -0,0 +1,57 @@ +# 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 .facet import Facet + + +class FacetResult(Facet): + """Successfully executed facet containing additional statistics on the + response of a query. + + All required parameters must be populated in order to send to Azure. + + :param expression: Required. Facet expression, same as in the + corresponding facet request. + :type expression: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param total_records: Required. Number of total records in the facet + results. + :type total_records: long + :param count: Required. Number of records returned in the facet response. + :type count: int + :param data: Required. A table containing the desired facets. Only present + if the facet is valid. + :type data: ~azure.mgmt.resourcegraph.models.Table + """ + + _validation = { + 'expression': {'required': True}, + 'result_type': {'required': True}, + 'total_records': {'required': True}, + 'count': {'required': True}, + 'data': {'required': True}, + } + + _attribute_map = { + 'expression': {'key': 'expression', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'total_records': {'key': 'totalRecords', 'type': 'long'}, + 'count': {'key': 'count', 'type': 'int'}, + 'data': {'key': 'data', 'type': 'Table'}, + } + + def __init__(self, **kwargs): + super(FacetResult, self).__init__(**kwargs) + self.total_records = kwargs.get('total_records', None) + self.count = kwargs.get('count', None) + self.data = kwargs.get('data', None) + self.result_type = 'FacetResult' diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_result_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_result_py3.py new file mode 100644 index 000000000000..4f3e9f499f75 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/facet_result_py3.py @@ -0,0 +1,57 @@ +# 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 .facet_py3 import Facet + + +class FacetResult(Facet): + """Successfully executed facet containing additional statistics on the + response of a query. + + All required parameters must be populated in order to send to Azure. + + :param expression: Required. Facet expression, same as in the + corresponding facet request. + :type expression: str + :param result_type: Required. Constant filled by server. + :type result_type: str + :param total_records: Required. Number of total records in the facet + results. + :type total_records: long + :param count: Required. Number of records returned in the facet response. + :type count: int + :param data: Required. A table containing the desired facets. Only present + if the facet is valid. + :type data: ~azure.mgmt.resourcegraph.models.Table + """ + + _validation = { + 'expression': {'required': True}, + 'result_type': {'required': True}, + 'total_records': {'required': True}, + 'count': {'required': True}, + 'data': {'required': True}, + } + + _attribute_map = { + 'expression': {'key': 'expression', 'type': 'str'}, + 'result_type': {'key': 'resultType', 'type': 'str'}, + 'total_records': {'key': 'totalRecords', 'type': 'long'}, + 'count': {'key': 'count', 'type': 'int'}, + 'data': {'key': 'data', 'type': 'Table'}, + } + + def __init__(self, *, expression: str, total_records: int, count: int, data, **kwargs) -> None: + super(FacetResult, self).__init__(expression=expression, **kwargs) + self.total_records = total_records + self.count = count + self.data = data + self.result_type = 'FacetResult' diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation.py new file mode 100644 index 000000000000..d824b9fd31af --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Resource Graph REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.resourcegraph.models.OperationDisplay + :param origin: The origin of operations. + :type origin: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_display.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_display.py new file mode 100644 index 000000000000..59392b296d7a --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_display.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Resource Graph. + :type provider: str + :param resource: Resource on which the operation is performed etc. + :type resource: str + :param operation: Type of operation: get, read, delete, etc. + :type operation: str + :param description: Description for the operation. + :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, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_display_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_display_py3.py new file mode 100644 index 000000000000..6d4bd89ec8cc --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_display_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Resource Graph. + :type provider: str + :param resource: Resource on which the operation is performed etc. + :type resource: str + :param operation: Type of operation: get, read, delete, etc. + :type operation: str + :param description: Description for the operation. + :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(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.resource = resource + self.operation = operation + self.description = description diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_paged.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_paged.py new file mode 100644 index 000000000000..ec7e9b01c05b --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_py3.py new file mode 100644 index 000000000000..886eb84942a7 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/operation_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Resource Graph REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.resourcegraph.models.OperationDisplay + :param origin: The origin of operations. + :type origin: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display=None, origin: str=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display + self.origin = origin diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request.py new file mode 100644 index 000000000000..e1290209ada6 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryRequest(Model): + """Describes a query to be executed. + + All required parameters must be populated in order to send to Azure. + + :param subscriptions: Required. Azure subscriptions against which to + execute the query. + :type subscriptions: list[str] + :param query: Required. The resources query. + :type query: str + :param options: The query evaluation options + :type options: ~azure.mgmt.resourcegraph.models.QueryRequestOptions + :param facets: An array of facet requests to be computed against the query + result. + :type facets: list[~azure.mgmt.resourcegraph.models.FacetRequest] + """ + + _validation = { + 'subscriptions': {'required': True}, + 'query': {'required': True}, + } + + _attribute_map = { + 'subscriptions': {'key': 'subscriptions', 'type': '[str]'}, + 'query': {'key': 'query', 'type': 'str'}, + 'options': {'key': 'options', 'type': 'QueryRequestOptions'}, + 'facets': {'key': 'facets', 'type': '[FacetRequest]'}, + } + + def __init__(self, **kwargs): + super(QueryRequest, self).__init__(**kwargs) + self.subscriptions = kwargs.get('subscriptions', None) + self.query = kwargs.get('query', None) + self.options = kwargs.get('options', None) + self.facets = kwargs.get('facets', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_options.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_options.py new file mode 100644 index 000000000000..f2a9fe75fd09 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_options.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryRequestOptions(Model): + """The options for query evaluation. + + :param skip_token: Continuation token for pagination, capturing the next + page size and offset, as well as the context of the query. + :type skip_token: str + :param top: The maximum number of rows that the query should return. + Overrides the page size when ```$skipToken``` property is present. + :type top: int + :param skip: The number of rows to skip from the beginning of the results. + Overrides the next page offset when ```$skipToken``` property is present. + :type skip: int + """ + + _validation = { + 'top': {'maximum': 1000, 'minimum': 1}, + 'skip': {'minimum': 0}, + } + + _attribute_map = { + 'skip_token': {'key': '$skipToken', 'type': 'str'}, + 'top': {'key': '$top', 'type': 'int'}, + 'skip': {'key': '$skip', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(QueryRequestOptions, self).__init__(**kwargs) + self.skip_token = kwargs.get('skip_token', None) + self.top = kwargs.get('top', None) + self.skip = kwargs.get('skip', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_options_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_options_py3.py new file mode 100644 index 000000000000..e6019a31a6fc --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_options_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryRequestOptions(Model): + """The options for query evaluation. + + :param skip_token: Continuation token for pagination, capturing the next + page size and offset, as well as the context of the query. + :type skip_token: str + :param top: The maximum number of rows that the query should return. + Overrides the page size when ```$skipToken``` property is present. + :type top: int + :param skip: The number of rows to skip from the beginning of the results. + Overrides the next page offset when ```$skipToken``` property is present. + :type skip: int + """ + + _validation = { + 'top': {'maximum': 1000, 'minimum': 1}, + 'skip': {'minimum': 0}, + } + + _attribute_map = { + 'skip_token': {'key': '$skipToken', 'type': 'str'}, + 'top': {'key': '$top', 'type': 'int'}, + 'skip': {'key': '$skip', 'type': 'int'}, + } + + def __init__(self, *, skip_token: str=None, top: int=None, skip: int=None, **kwargs) -> None: + super(QueryRequestOptions, self).__init__(**kwargs) + self.skip_token = skip_token + self.top = top + self.skip = skip diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_py3.py new file mode 100644 index 000000000000..a4e251dd1016 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_request_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryRequest(Model): + """Describes a query to be executed. + + All required parameters must be populated in order to send to Azure. + + :param subscriptions: Required. Azure subscriptions against which to + execute the query. + :type subscriptions: list[str] + :param query: Required. The resources query. + :type query: str + :param options: The query evaluation options + :type options: ~azure.mgmt.resourcegraph.models.QueryRequestOptions + :param facets: An array of facet requests to be computed against the query + result. + :type facets: list[~azure.mgmt.resourcegraph.models.FacetRequest] + """ + + _validation = { + 'subscriptions': {'required': True}, + 'query': {'required': True}, + } + + _attribute_map = { + 'subscriptions': {'key': 'subscriptions', 'type': '[str]'}, + 'query': {'key': 'query', 'type': 'str'}, + 'options': {'key': 'options', 'type': 'QueryRequestOptions'}, + 'facets': {'key': 'facets', 'type': '[FacetRequest]'}, + } + + def __init__(self, *, subscriptions, query: str, options=None, facets=None, **kwargs) -> None: + super(QueryRequest, self).__init__(**kwargs) + self.subscriptions = subscriptions + self.query = query + self.options = options + self.facets = facets diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_response.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_response.py new file mode 100644 index 000000000000..eb09fe97d757 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_response.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryResponse(Model): + """Query result. + + All required parameters must be populated in order to send to Azure. + + :param total_records: Required. Number of total records matching the + query. + :type total_records: long + :param count: Required. Number of records returned in the current + response. In the case of paging, this is the number of records in the + current page. + :type count: long + :param result_truncated: Required. Indicates whether the query results are + truncated. Possible values include: 'true', 'false' + :type result_truncated: str or + ~azure.mgmt.resourcegraph.models.ResultTruncated + :param skip_token: When present, the value can be passed to a subsequent + query call (together with the same query and subscriptions used in the + current request) to retrieve the next page of data. + :type skip_token: str + :param data: Required. Query output in tabular format. + :type data: ~azure.mgmt.resourcegraph.models.Table + :param facets: Query facets. + :type facets: list[~azure.mgmt.resourcegraph.models.Facet] + """ + + _validation = { + 'total_records': {'required': True}, + 'count': {'required': True}, + 'result_truncated': {'required': True}, + 'data': {'required': True}, + } + + _attribute_map = { + 'total_records': {'key': 'totalRecords', 'type': 'long'}, + 'count': {'key': 'count', 'type': 'long'}, + 'result_truncated': {'key': 'resultTruncated', 'type': 'ResultTruncated'}, + 'skip_token': {'key': '$skipToken', 'type': 'str'}, + 'data': {'key': 'data', 'type': 'Table'}, + 'facets': {'key': 'facets', 'type': '[Facet]'}, + } + + def __init__(self, **kwargs): + super(QueryResponse, self).__init__(**kwargs) + self.total_records = kwargs.get('total_records', None) + self.count = kwargs.get('count', None) + self.result_truncated = kwargs.get('result_truncated', None) + self.skip_token = kwargs.get('skip_token', None) + self.data = kwargs.get('data', None) + self.facets = kwargs.get('facets', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_response_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_response_py3.py new file mode 100644 index 000000000000..c86ed4df6f90 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/query_response_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class QueryResponse(Model): + """Query result. + + All required parameters must be populated in order to send to Azure. + + :param total_records: Required. Number of total records matching the + query. + :type total_records: long + :param count: Required. Number of records returned in the current + response. In the case of paging, this is the number of records in the + current page. + :type count: long + :param result_truncated: Required. Indicates whether the query results are + truncated. Possible values include: 'true', 'false' + :type result_truncated: str or + ~azure.mgmt.resourcegraph.models.ResultTruncated + :param skip_token: When present, the value can be passed to a subsequent + query call (together with the same query and subscriptions used in the + current request) to retrieve the next page of data. + :type skip_token: str + :param data: Required. Query output in tabular format. + :type data: ~azure.mgmt.resourcegraph.models.Table + :param facets: Query facets. + :type facets: list[~azure.mgmt.resourcegraph.models.Facet] + """ + + _validation = { + 'total_records': {'required': True}, + 'count': {'required': True}, + 'result_truncated': {'required': True}, + 'data': {'required': True}, + } + + _attribute_map = { + 'total_records': {'key': 'totalRecords', 'type': 'long'}, + 'count': {'key': 'count', 'type': 'long'}, + 'result_truncated': {'key': 'resultTruncated', 'type': 'ResultTruncated'}, + 'skip_token': {'key': '$skipToken', 'type': 'str'}, + 'data': {'key': 'data', 'type': 'Table'}, + 'facets': {'key': 'facets', 'type': '[Facet]'}, + } + + def __init__(self, *, total_records: int, count: int, result_truncated, data, skip_token: str=None, facets=None, **kwargs) -> None: + super(QueryResponse, self).__init__(**kwargs) + self.total_records = total_records + self.count = count + self.result_truncated = result_truncated + self.skip_token = skip_token + self.data = data + self.facets = facets diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/resource_graph_client_enums.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/resource_graph_client_enums.py new file mode 100644 index 000000000000..6973ac9c0e59 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/resource_graph_client_enums.py @@ -0,0 +1,33 @@ +# 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 enum import Enum + + +class FacetSortOrder(str, Enum): + + asc = "asc" + desc = "desc" + + +class ResultTruncated(str, Enum): + + true = "true" + false = "false" + + +class ColumnDataType(str, Enum): + + string = "string" + integer = "integer" + number = "number" + boolean = "boolean" + object_enum = "object" diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/table.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/table.py new file mode 100644 index 000000000000..03a8cd806eec --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/table.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Table(Model): + """Query output in tabular format. + + All required parameters must be populated in order to send to Azure. + + :param columns: Required. Query result column descriptors. + :type columns: list[~azure.mgmt.resourcegraph.models.Column] + :param rows: Required. Query result rows. + :type rows: list[list[object]] + """ + + _validation = { + 'columns': {'required': True}, + 'rows': {'required': True}, + } + + _attribute_map = { + 'columns': {'key': 'columns', 'type': '[Column]'}, + 'rows': {'key': 'rows', 'type': '[[object]]'}, + } + + def __init__(self, **kwargs): + super(Table, self).__init__(**kwargs) + self.columns = kwargs.get('columns', None) + self.rows = kwargs.get('rows', None) diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/table_py3.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/table_py3.py new file mode 100644 index 000000000000..e14b7dfe5790 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/models/table_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Table(Model): + """Query output in tabular format. + + All required parameters must be populated in order to send to Azure. + + :param columns: Required. Query result column descriptors. + :type columns: list[~azure.mgmt.resourcegraph.models.Column] + :param rows: Required. Query result rows. + :type rows: list[list[object]] + """ + + _validation = { + 'columns': {'required': True}, + 'rows': {'required': True}, + } + + _attribute_map = { + 'columns': {'key': 'columns', 'type': '[Column]'}, + 'rows': {'key': 'rows', 'type': '[[object]]'}, + } + + def __init__(self, *, columns, rows, **kwargs) -> None: + super(Table, self).__init__(**kwargs) + self.columns = columns + self.rows = rows diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/operations/__init__.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/operations/__init__.py new file mode 100644 index 000000000000..6bddce0d5c34 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/operations/__init__.py @@ -0,0 +1,16 @@ +# 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 .operations import Operations + +__all__ = [ + 'Operations', +] diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/operations/operations.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/operations/operations.py new file mode 100644 index 000000000000..d8ee6f0a57a1 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/operations/operations.py @@ -0,0 +1,98 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version. Constant value: "2018-09-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-09-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available REST API operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.resourcegraph.models.OperationPaged[~azure.mgmt.resourcegraph.models.Operation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.ResourceGraph/operations'} diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/resource_graph_client.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/resource_graph_client.py new file mode 100644 index 000000000000..6f5ff0e93e33 --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/resource_graph_client.py @@ -0,0 +1,135 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +import uuid +from .operations.operations import Operations +from . import models + + +class ResourceGraphClientConfiguration(AzureConfiguration): + """Configuration for ResourceGraphClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param str base_url: Service URL + """ + + def __init__( + self, credentials, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(ResourceGraphClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-resourcegraph/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + + +class ResourceGraphClient(SDKClient): + """Azure Resource Graph API Reference + + :ivar config: Configuration for client. + :vartype config: ResourceGraphClientConfiguration + + :ivar operations: Operations operations + :vartype operations: azure.mgmt.resourcegraph.operations.Operations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param str base_url: Service URL + """ + + def __init__( + self, credentials, base_url=None): + + self.config = ResourceGraphClientConfiguration(credentials, base_url) + super(ResourceGraphClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2018-09-01-preview' + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + + def resources( + self, query, custom_headers=None, raw=False, **operation_config): + """Queries the resources managed by Azure Resource Manager for all + subscriptions specified in the request. + + :param query: Request specifying query and its options. + :type query: ~azure.mgmt.resourcegraph.models.QueryRequest + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: QueryResponse or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.resourcegraph.models.QueryResponse or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.resources.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(query, 'QueryRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('QueryResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + resources.metadata = {'url': '/providers/Microsoft.ResourceGraph/resources'} diff --git a/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/version.py b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/version.py new file mode 100644 index 000000000000..e0ec669828cb --- /dev/null +++ b/azure-mgmt-resourcegraph/azure/mgmt/resourcegraph/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "0.1.0" + diff --git a/azure-mgmt-resourcegraph/sdk_packaging.toml b/azure-mgmt-resourcegraph/sdk_packaging.toml new file mode 100644 index 000000000000..d4d5cee093b4 --- /dev/null +++ b/azure-mgmt-resourcegraph/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-resourcegraph" +package_pprint_name = "Resource Graph" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-resourcegraph/setup.cfg b/azure-mgmt-resourcegraph/setup.cfg new file mode 100644 index 000000000000..3c6e79cf31da --- /dev/null +++ b/azure-mgmt-resourcegraph/setup.cfg @@ -0,0 +1,2 @@ +[bdist_wheel] +universal=1 diff --git a/azure-mgmt-resourcegraph/setup.py b/azure-mgmt-resourcegraph/setup.py new file mode 100644 index 000000000000..8670749de729 --- /dev/null +++ b/azure-mgmt-resourcegraph/setup.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python + +#------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +#-------------------------------------------------------------------------- + +import re +import os.path +from io import open +from setuptools import find_packages, setup + +# Change the PACKAGE_NAME only to change folder and different name +PACKAGE_NAME = "azure-mgmt-resourcegraph" +PACKAGE_PPRINT_NAME = "Resource Graph" + +# a-b-c => a/b/c +package_folder_path = PACKAGE_NAME.replace('-', '/') +# a-b-c => a.b.c +namespace_name = PACKAGE_NAME.replace('-', '.') + +# azure v0.x is not compatible with this package +# azure v0.x used to have a __version__ attribute (newer versions don't) +try: + import azure + try: + ver = azure.__version__ + raise Exception( + 'This package is incompatible with azure=={}. '.format(ver) + + 'Uninstall it with "pip uninstall azure".' + ) + except AttributeError: + pass +except ImportError: + pass + +# Version extraction inspired from 'requests' +with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: + version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', + fd.read(), re.MULTILINE).group(1) + +if not version: + raise RuntimeError('Cannot find version information') + +with open('README.rst', encoding='utf-8') as f: + readme = f.read() +with open('HISTORY.rst', encoding='utf-8') as f: + history = f.read() + +setup( + name=PACKAGE_NAME, + version=version, + description='Microsoft Azure {} Client Library for Python'.format(PACKAGE_PPRINT_NAME), + long_description=readme + '\n\n' + history, + license='MIT License', + author='Microsoft Corporation', + author_email='azpysdkhelp@microsoft.com', + url='https://github.com/Azure/azure-sdk-for-python', + classifiers=[ + 'Development Status :: 4 - Beta', + 'Programming Language :: Python', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'License :: OSI Approved :: MIT License', + ], + zip_safe=False, + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), + install_requires=[ + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', + 'azure-common~=1.1', + ], + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } +) diff --git a/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_basic_query.yaml b/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_basic_query.yaml new file mode 100644 index 000000000000..cad4b4aa7722 --- /dev/null +++ b/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_basic_query.yaml @@ -0,0 +1,32 @@ +interactions: +- request: + body: 'b''b\''b\\\''b\\\\\\\''{"subscriptions": ["00000000-0000-0000-0000-000000000000"], + "query": "project id, tags, properties | limit 2"}\\\\\\\''\\\''\''''' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['110'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-resourcegraph/0.6.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2018-09-01-preview + response: + body: {string: '{"totalRecords":2,"count":2,"data":{"columns":[{"name":"id","type":"string"},{"name":"tags","type":"object"},{"name":"properties","type":"object"}],"rows":[["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zarttest1faaede5-14b9-43b9-8836-3b8df81aa6f2/providers/Microsoft.StreamAnalytics/streamingjobs/zarttest28000000",{},{"provisioningState":"Succeeded","sku":{"name":"Standard"},"eventsLateArrivalMaxDelayInSeconds":5,"createdDate":"2018-07-26T01:17:29.3470000Z","compatibilityLevel":"1.0","outputErrorPolicy":"Stop","dataLocale":"en-US","jobState":"Created","package":null,"jobType":"Cloud","jobId":"00000000-0000-0000-0000-000000000000"}],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/newzarttestefd4b1a7-6480-40bb-bac5-f23376ebb04d/providers/Microsoft.Storage/storageAccounts/zarttest9b000000",{},{"provisioningState":"Succeeded","creationTime":"2018-08-04T19:23:48.4690000Z","supportsHttpsTrafficOnly":true,"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"primaryEndpoints":{"blob":"https://zarttest9b000000.blob.core.windows.net/","file":"https://zarttest9b000000.file.core.windows.net/","table":"https://zarttest9b000000.table.core.windows.net/","queue":"https://zarttest9b000000.queue.core.windows.net/"},"statusOfPrimary":"available","primaryLocation":"eastus","networkAcls":{"virtualNetworkRules":[],"defaultAction":"Allow","ipRules":[],"bypass":"AzureServices"},"encryption":{"services":{"blob":{"lastEnabledTime":"2018-08-04T19:23:48.5940000Z","enabled":true},"file":{"lastEnabledTime":"2018-08-04T19:23:48.5940000Z","enabled":true}},"keySource":"Microsoft.Storage"}}]]},"facets":[],"resultTruncated":"false"}'} + headers: + cache-control: [no-cache] + content-length: ['1679'] + content-type: [application/json; charset=utf-8] + date: ['Wed, 29 Aug 2018 02:06:58 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-tenant-writes: ['1198'] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_facet_query.yaml b/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_facet_query.yaml new file mode 100644 index 000000000000..fe886a974d58 --- /dev/null +++ b/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_facet_query.yaml @@ -0,0 +1,36 @@ +interactions: +- request: + body: 'b''b\''b\\\''b\\\\\\\''{"subscriptions": ["00000000-0000-0000-0000-000000000000"], + "query": "project id, location | limit 10", "facets": [{"expression": "location", + "options": {"sortOrder": "desc", "$top": 4}}, {"expression": "nonExistingColumn", + "options": {"sortOrder": "desc", "$top": 4}}]}\\\\\\\''\\\''\''''' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['270'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-resourcegraph/0.6.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2018-09-01-preview + response: + body: {string: '{"totalRecords":10,"count":10,"data":{"columns":[{"name":"id","type":"string"},{"name":"location","type":"string"}],"rows":[["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zarttest1f000000-14b9-43b9-8836-3b8df81aa6f2/providers/Microsoft.StreamAnalytics/streamingjobs/zarttest28000000","southcentralus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/testsouthcentralus","southcentralus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/newzarttest30000000-5d0c-432c-8652-102e3aa336b6/providers/Microsoft.Storage/storageAccounts/zarttest93000000","eastus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/backup/providers/Microsoft.ClassicCompute/domainNames/rp-a","westcentralus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test/providers/Microsoft.Storage/storageAccounts/test1","southcentralus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/k8stest_centralus/providers/Microsoft.Compute/virtualMachines/aks-default-34000000-0/extensions/cse-agent-0","centralus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pere/providers/Microsoft.Network/networkSecurityGroups/shouldFail-nsg","eastus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/newzarttestdd000000-bfc5-44f1-b6a9-aabdc7a1e614/providers/Microsoft.Storage/storageAccounts/zarttest43000000","eastus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/newzarttest60000000-3713-4c51-9e6b-c96a30f0fbb7/providers/Microsoft.Storage/storageAccounts/zarttestd2000000","eastus"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ManageRG/providers/Microsoft.EventHub/namespaces/resourceuse","eastus"]]},"facets":[{"expression":"location","totalRecords":4,"count":4,"data":{"columns":[{"name":"location","type":"string"},{"name":"count","type":"integer"}],"rows":[["eastus",5],["southcentralus",3],["centralus",1],["westcentralus",1]]},"resultType":"FacetResult"},{"expression":"nonExistingColumn","errors":[{"code":"NoValidColumns","message":"No + valid columns in facet expression."},{"code":"InvalidColumnNames","message":"Invalid + column names: [nonExistingColumn]."}],"resultType":"FacetError"}],"resultTruncated":"false"}'} + headers: + cache-control: [no-cache] + content-length: ['2472'] + content-type: [application/json; charset=utf-8] + date: ['Wed, 29 Aug 2018 02:06:59 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-tenant-writes: ['1197'] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_malformed_query.yaml b/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_malformed_query.yaml new file mode 100644 index 000000000000..135e7af84eeb --- /dev/null +++ b/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_malformed_query.yaml @@ -0,0 +1,31 @@ +interactions: +- request: + body: 'b''b\''b\\\''b\\\\\\\''{"subscriptions": ["00000000-0000-0000-0000-000000000000"], + "query": "project id, location | where where"}\\\\\\\''\\\''\''''' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['106'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-resourcegraph/0.6.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2018-09-01-preview + response: + body: {string: "{\"error\":{\"code\":\"InvalidQuery\",\"message\":\"Query validation + error\",\"details\":[{\"code\":\"ParserFailure\",\"message\":\"Parser failure\",\"line\":1,\"characterPositionInLine\":34,\"token\":\"\",\"expectedToken\":\"\u0178\"}]}}"} + headers: + cache-control: [no-cache] + content-length: ['232'] + content-type: [application/json; charset=utf-8] + date: ['Wed, 29 Aug 2018 02:47:47 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-tenant-writes: ['1197'] + status: {code: 400, message: Bad Request} +version: 1 diff --git a/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_query_options.yaml b/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_query_options.yaml new file mode 100644 index 000000000000..96d998889cc4 --- /dev/null +++ b/azure-mgmt-resourcegraph/tests/recordings/test_mgmt_resourcegraph.test_resources_query_options.yaml @@ -0,0 +1,33 @@ +interactions: +- request: + body: 'b''b\''b\\\''b\\\\\\\''{"subscriptions": ["00000000-0000-0000-0000-000000000000"], + "query": "project id", "options": {"$skipToken": "82aw3vQlArEastJ24LABY8oPgQLesIyAyzYs2g6/aOOOmJHSYFj39fODurJV5e2tTFFebWcfxn7n5edicA8u6HgSJe1GCEk5HjxwLkeJiye2LVZDC7TaValkJbsk9JqY4yv5c7iRiLqgO34RbHEeVfLJpa56u4RZu0K+GpQvnBRPyAhy3KbwhZWpU5Nnqnud2whGb5WKdlL8xF7wnQaUnUN2lns8WwqwM4rc0VK4BbQt/WfWWcYJivSAyB3m4Z5g73df1KiU4C+K8auvUMpLPYVxxnKC/YZz42YslVAWXXUmuGOaM2SfLHRO6o4O9DgXlUgYjeFWqIbAkmMiVEqU", + "$top": 4, "$skip": 8}}\\\\\\\''\\\''\''''' + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Length: ['416'] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.6.3 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.4 + msrest_azure/0.4.34 azure-mgmt-resourcegraph/0.6.0 Azure-SDK-For-Python] + accept-language: [en-US] + method: POST + uri: https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2018-09-01-preview + response: + body: {string: '{"totalRecords":743,"count":4,"data":{"columns":[{"name":"id","type":"string"}],"rows":[["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/backup/providers/Microsoft.ClassicCompute/domainNames/admin-a"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/backup/providers/Microsoft.ClassicCompute/domainNames/admin-b"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/backup/providers/Microsoft.Network/trafficmanagerprofiles/admin"],["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/RP/providers/Microsoft.ClassicCompute/domainNames/rp-a"]]},"facets":[],"resultTruncated":"false","$skipToken":"ceXHDV/5yajn1stYtSCyQ32ULLF0jGv9oazG14qvdgwdAQNDUPHjt6MIlJZ2Y/K8z7fb+qo9wguegf8QYW0c7rqwtXUghJvKkPBENcn1O17nQxtjXeq6s8sD64D8t5P9NIHntl70D95yuVUjHF6/dsvVK33wKyvORwPTCbZrSj+pfz2yd5spa93izzOu06PcyFvcvCJAzZ5scImnVDqS700hR63izVwyETJtQluoqSPYkhxAOVk/+ThWlN0DKy9OfUE34M9PZSQz2QTWXKpUK1+okRfH/B2RVdXro60ZnNMrdPtglA5w7oEs5Ivq20IE4RtPfg97UEbkfyMP9huC="}'} + headers: + cache-control: [no-cache] + content-length: ['1098'] + content-type: [application/json; charset=utf-8] + date: ['Wed, 29 Aug 2018 02:07:01 GMT'] + expires: ['-1'] + pragma: [no-cache] + server: [Microsoft-HTTPAPI/2.0] + strict-transport-security: [max-age=31536000; includeSubDomains] + transfer-encoding: [chunked] + vary: [Accept-Encoding] + x-content-type-options: [nosniff] + x-ms-ratelimit-remaining-tenant-writes: ['1199'] + status: {code: 200, message: OK} +version: 1 diff --git a/azure-mgmt-resourcegraph/tests/test_mgmt_resourcegraph.py b/azure-mgmt-resourcegraph/tests/test_mgmt_resourcegraph.py new file mode 100644 index 000000000000..d62f3d00f7b6 --- /dev/null +++ b/azure-mgmt-resourcegraph/tests/test_mgmt_resourcegraph.py @@ -0,0 +1,180 @@ +# 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. +#-------------------------------------------------------------------------- +import unittest + +from azure.mgmt.resourcegraph import ResourceGraphClient +from azure.mgmt.resourcegraph.models import * +from devtools_testutils import AzureMgmtTestCase +import six + + +class MgmtResourceGraphTest(AzureMgmtTestCase): + + def setUp(self): + super(MgmtResourceGraphTest, self).setUp() + self.resourcegraph_client = self.create_basic_client( + ResourceGraphClient + ) + + def test_resources_basic_query(self): + query = QueryRequest( + query='project id, tags, properties | limit 2', + subscriptions=[self.settings.SUBSCRIPTION_ID] + ) + + query_response = self.resourcegraph_client.resources(query) + + # Top-level response fields + self.assertEqual(query_response.count, 2) + self.assertEqual(query_response.total_records, 2) + self.assertIsNone(query_response.skip_token) + self.assertEqual(query_response.result_truncated, ResultTruncated.false) + self.assertIsNotNone(query_response.data) + self.assertIsNotNone(query_response.facets) + self.assertEqual(len(query_response.facets), 0) + + # Data columns + self.assertIsNotNone(query_response.data.columns) + self.assertEqual(len(query_response.data.columns), 3) + self.assertIsNotNone(query_response.data.columns[0].name) + self.assertIsNotNone(query_response.data.columns[1].name) + self.assertIsNotNone(query_response.data.columns[2].name) + self.assertEqual(query_response.data.columns[0].type, ColumnDataType.string) + self.assertEqual(query_response.data.columns[1].type, ColumnDataType.object_enum) + self.assertEqual(query_response.data.columns[2].type, ColumnDataType.object_enum) + + # Data rows + self.assertIsNotNone(query_response.data.rows) + self.assertEqual(len(query_response.data.rows), 2) + self.assertEqual(len(query_response.data.rows[0]), 3) + self.assertIsInstance(query_response.data.rows[0][0], six.string_types) + self.assertIsInstance(query_response.data.rows[0][1], dict) + self.assertIsInstance(query_response.data.rows[0][2], dict) + + def test_resources_query_options(self): + query = QueryRequest( + query='project id', + subscriptions=[self.settings.SUBSCRIPTION_ID], + options=QueryRequestOptions( + skip_token='82aw3vQlArEastJ24LABY8oPgQLesIyAyzYs2g6/aOOOmJHSYFj39fODurJV5e2tTFFebWcfxn7n5edicA8u6HgSJe1GCEk5HjxwLkeJiye2LVZDC7TaValkJbsk9JqY4yv5c7iRiLqgO34RbHEeVfLJpa56u4RZu0K+GpQvnBRPyAhy3KbwhZWpU5Nnqnud2whGb5WKdlL8xF7wnQaUnUN2lns8WwqwM4rc0VK4BbQt/WfWWcYJivSAyB3m4Z5g73df1KiU4C+K8auvUMpLPYVxxnKC/YZz42YslVAWXXUmuGOaM2SfLHRO6o4O9DgXlUgYjeFWqIbAkmMiVEqU', + top=4, + skip=8 + ) + ) + + query_response = self.resourcegraph_client.resources(query) + + # Top-level response fields + self.assertEqual(query_response.count, 4) + self.assertEqual(query_response.total_records, 743) + self.assertIsNotNone(query_response.skip_token) + self.assertEqual(query_response.result_truncated, ResultTruncated.false) + self.assertIsNotNone(query_response.data) + self.assertIsNotNone(query_response.facets) + self.assertEqual(len(query_response.facets), 0) + + # Data columns + self.assertIsNotNone(query_response.data.columns) + self.assertEqual(len(query_response.data.columns), 1) + self.assertIsNotNone(query_response.data.columns[0].name) + self.assertEqual(query_response.data.columns[0].type, ColumnDataType.string) + + # Data rows + self.assertIsNotNone(query_response.data.rows) + self.assertEqual(len(query_response.data.rows), 4) + self.assertEqual(len(query_response.data.rows[0]), 1) + self.assertIsInstance(query_response.data.rows[0][0], six.string_types) + + def test_resources_facet_query(self): + facet_expression0 = 'location' + facet_expression1 = 'nonExistingColumn' + + query = QueryRequest( + query='project id, location | limit 10', + subscriptions=[self.settings.SUBSCRIPTION_ID], + facets=[ + FacetRequest( + expression=facet_expression0, + options=FacetRequestOptions( + sort_order='desc', + top=4 + ) + ), + FacetRequest( + expression=facet_expression1, + options=FacetRequestOptions( + sort_order='desc', + top=4 + ) + ) + ] + ) + + query_response = self.resourcegraph_client.resources(query) + + # Top-level response fields + self.assertEqual(query_response.count, 10) + self.assertEqual(query_response.total_records, 10) + self.assertIsNone(query_response.skip_token) + self.assertEqual(query_response.result_truncated, ResultTruncated.false) + self.assertIsNotNone(query_response.data) + self.assertIsNotNone(query_response.facets) + self.assertEqual(len(query_response.facets), 2) + + # Successful facet fields + self.assertIsInstance(query_response.facets[0], FacetResult) + self.assertEqual(query_response.facets[0].expression, facet_expression0) + self.assertEqual(query_response.facets[0].total_records, 4) + self.assertEqual(query_response.facets[0].count, 4) + + # Successful facet columns + self.assertIsNotNone(query_response.facets[0].data.columns) + self.assertEqual(len(query_response.facets[0].data.columns), 2) + self.assertIsNotNone(query_response.facets[0].data.columns[0].name) + self.assertIsNotNone(query_response.facets[0].data.columns[1].name) + self.assertEqual(query_response.facets[0].data.columns[0].type, ColumnDataType.string) + self.assertEqual(query_response.facets[0].data.columns[1].type, ColumnDataType.integer) + + # Successful facet rows + self.assertIsNotNone(query_response.facets[0].data.rows) + self.assertEqual(len(query_response.facets[0].data.rows), 4) + self.assertEqual(len(query_response.facets[0].data.rows[0]), 2) + self.assertIsInstance(query_response.facets[0].data.rows[0][0], six.string_types) + self.assertIsInstance(query_response.facets[0].data.rows[0][1], six.integer_types) + + # Failed facet + self.assertIsInstance(query_response.facets[1], FacetError) + self.assertEqual(query_response.facets[1].expression, facet_expression1) + self.assertIsNotNone(query_response.facets[1].errors) + self.assertGreater(len(query_response.facets[1].errors), 0) + self.assertIsNotNone(query_response.facets[1].errors[0].code) + self.assertIsNotNone(query_response.facets[1].errors[0].message) + + def test_resources_malformed_query(self): + query = QueryRequest( + query='project id, location | where where', + subscriptions=[self.settings.SUBSCRIPTION_ID] + ) + + with self.assertRaises(ErrorResponseException) as cm: + self.resourcegraph_client.resources(query) + + error = cm.exception.error.error + self.assertIsNotNone(error.code) + self.assertIsNotNone(error.message) + self.assertIsNotNone(error.details) + self.assertGreater(len(error.details), 0) + self.assertIsNotNone(error.details[0].code) + self.assertIsNotNone(error.details[0].message) + self.assertIsNotNone(error.details[0].additional_properties) + self.assertEqual(len(error.details[0].additional_properties), 4) + + +#------------------------------------------------------------------------------ +if __name__ == '__main__': + unittest.main() diff --git a/azure-mgmt-scheduler/MANIFEST.in b/azure-mgmt-scheduler/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-scheduler/MANIFEST.in +++ b/azure-mgmt-scheduler/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-scheduler/README.rst b/azure-mgmt-scheduler/README.rst index af814a002139..f7eafff0aff6 100644 --- a/azure-mgmt-scheduler/README.rst +++ b/azure-mgmt-scheduler/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Scheduler Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-scheduler/azure/__init__.py b/azure-mgmt-scheduler/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-scheduler/azure/__init__.py +++ b/azure-mgmt-scheduler/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-scheduler/azure/mgmt/__init__.py b/azure-mgmt-scheduler/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-scheduler/azure/mgmt/__init__.py +++ b/azure-mgmt-scheduler/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-scheduler/azure_bdist_wheel.py b/azure-mgmt-scheduler/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-scheduler/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-scheduler/setup.cfg b/azure-mgmt-scheduler/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-scheduler/setup.cfg +++ b/azure-mgmt-scheduler/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-scheduler/setup.py b/azure-mgmt-scheduler/setup.py index da4e8c3223d3..878bb1ec3635 100644 --- a/azure-mgmt-scheduler/setup.py +++ b/azure-mgmt-scheduler/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-scheduler" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-search/MANIFEST.in b/azure-mgmt-search/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-search/MANIFEST.in +++ b/azure-mgmt-search/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-search/README.rst b/azure-mgmt-search/README.rst index 20f634c32590..d0a245b81b69 100644 --- a/azure-mgmt-search/README.rst +++ b/azure-mgmt-search/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Search Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-search/azure/__init__.py b/azure-mgmt-search/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-search/azure/__init__.py +++ b/azure-mgmt-search/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-search/azure/mgmt/__init__.py b/azure-mgmt-search/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-search/azure/mgmt/__init__.py +++ b/azure-mgmt-search/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-search/azure_bdist_wheel.py b/azure-mgmt-search/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-search/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-search/sdk_packaging.toml b/azure-mgmt-search/sdk_packaging.toml new file mode 100644 index 000000000000..da7f6badb68b --- /dev/null +++ b/azure-mgmt-search/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-search" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Search Management" +package_doc_id = "search" +is_stable = false +is_arm = true diff --git a/azure-mgmt-search/setup.cfg b/azure-mgmt-search/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-search/setup.cfg +++ b/azure-mgmt-search/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-search/setup.py b/azure-mgmt-search/setup.py index d9147216639b..e429c58e6314 100644 --- a/azure-mgmt-search/setup.py +++ b/azure-mgmt-search/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-search" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-security/HISTORY.rst b/azure-mgmt-security/HISTORY.rst new file mode 100644 index 000000000000..1e7b5a6824bd --- /dev/null +++ b/azure-mgmt-security/HISTORY.rst @@ -0,0 +1,9 @@ +.. :changelog: + +Release History +=============== + +0.1.0 (2018-10-29) +++++++++++++++++++ + +* Initial Release diff --git a/azure-mgmt-security/MANIFEST.in b/azure-mgmt-security/MANIFEST.in new file mode 100644 index 000000000000..6ceb27f7a96e --- /dev/null +++ b/azure-mgmt-security/MANIFEST.in @@ -0,0 +1,4 @@ +include *.rst +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-security/README.rst b/azure-mgmt-security/README.rst new file mode 100644 index 000000000000..b2ad14672aa9 --- /dev/null +++ b/azure-mgmt-security/README.rst @@ -0,0 +1,49 @@ +Microsoft Azure SDK for Python +============================== + +This is the Microsoft Azure Secutiry Center Management Client Library. + +Azure Resource Manager (ARM) is the next generation of management APIs that +replace the old Azure Service Management (ASM). + +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. + +For the older Azure Service Management (ASM) libraries, see +`azure-servicemanagement-legacy `__ library. + +For a more complete set of Azure libraries, see the `azure `__ bundle package. + + +Compatibility +============= + +**IMPORTANT**: If you have an earlier version of the azure package +(version < 1.0), you should uninstall it before installing this package. + +You can check the version using pip: + +.. code:: shell + + pip freeze + +If you see azure==0.11.0 (or any version below 1.0), uninstall it first: + +.. code:: shell + + pip uninstall azure + + +Usage +===== + +For code examples, see `Secutiry Center Management +`__ +on docs.microsoft.com. + + +Provide Feedback +================ + +If you encounter any bugs or have suggestions, please file an issue in the +`Issues `__ +section of the project. diff --git a/azure-mgmt-security/azure/__init__.py b/azure-mgmt-security/azure/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-security/azure/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-security/azure/mgmt/__init__.py b/azure-mgmt-security/azure/mgmt/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-security/azure/mgmt/security/__init__.py b/azure-mgmt-security/azure/mgmt/security/__init__.py new file mode 100644 index 000000000000..4a59cad125c7 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/__init__.py @@ -0,0 +1,18 @@ +# 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 .security_center import SecurityCenter +from .version import VERSION + +__all__ = ['SecurityCenter'] + +__version__ = VERSION + diff --git a/azure-mgmt-security/azure/mgmt/security/models/__init__.py b/azure-mgmt-security/azure/mgmt/security/models/__init__.py new file mode 100644 index 000000000000..059deadbd310 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/__init__.py @@ -0,0 +1,220 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .resource_py3 import Resource + from .kind_py3 import Kind + from .security_contact_py3 import SecurityContact + from .pricing_py3 import Pricing + from .workspace_setting_py3 import WorkspaceSetting + from .auto_provisioning_setting_py3 import AutoProvisioningSetting + from .compliance_segment_py3 import ComplianceSegment + from .compliance_py3 import Compliance + from .advanced_threat_protection_setting_py3 import AdvancedThreatProtectionSetting + from .setting_py3 import Setting + from .data_export_setting_py3 import DataExportSetting + from .setting_kind1_py3 import SettingKind1 + from .sensitivity_label_py3 import SensitivityLabel + from .information_protection_keyword_py3 import InformationProtectionKeyword + from .information_type_py3 import InformationType + from .information_protection_policy_py3 import InformationProtectionPolicy + from .location_py3 import Location + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation + from .security_task_parameters_py3 import SecurityTaskParameters + from .security_task_py3 import SecurityTask + from .asc_location_py3 import AscLocation + from .alert_entity_py3 import AlertEntity + from .alert_confidence_reason_py3 import AlertConfidenceReason + from .alert_py3 import Alert + from .discovered_security_solution_py3 import DiscoveredSecuritySolution + from .topology_single_resource_parent_py3 import TopologySingleResourceParent + from .topology_single_resource_child_py3 import TopologySingleResourceChild + from .topology_single_resource_py3 import TopologySingleResource + from .topology_resource_py3 import TopologyResource + from .jit_network_access_port_rule_py3 import JitNetworkAccessPortRule + from .jit_network_access_policy_virtual_machine_py3 import JitNetworkAccessPolicyVirtualMachine + from .jit_network_access_request_port_py3 import JitNetworkAccessRequestPort + from .jit_network_access_request_virtual_machine_py3 import JitNetworkAccessRequestVirtualMachine + from .jit_network_access_request_py3 import JitNetworkAccessRequest + from .jit_network_access_policy_py3 import JitNetworkAccessPolicy + from .jit_network_access_policy_initiate_port_py3 import JitNetworkAccessPolicyInitiatePort + from .jit_network_access_policy_initiate_virtual_machine_py3 import JitNetworkAccessPolicyInitiateVirtualMachine + from .jit_network_access_policy_initiate_request_py3 import JitNetworkAccessPolicyInitiateRequest + from .external_security_solution_py3 import ExternalSecuritySolution + from .cef_solution_properties_py3 import CefSolutionProperties + from .cef_external_security_solution_py3 import CefExternalSecuritySolution + from .ata_solution_properties_py3 import AtaSolutionProperties + from .ata_external_security_solution_py3 import AtaExternalSecuritySolution + from .connected_workspace_py3 import ConnectedWorkspace + from .aad_solution_properties_py3 import AadSolutionProperties + from .aad_external_security_solution_py3 import AadExternalSecuritySolution + from .external_security_solution_kind1_py3 import ExternalSecuritySolutionKind1 + from .external_security_solution_properties_py3 import ExternalSecuritySolutionProperties + from .aad_connectivity_state1_py3 import AadConnectivityState1 +except (SyntaxError, ImportError): + from .resource import Resource + from .kind import Kind + from .security_contact import SecurityContact + from .pricing import Pricing + from .workspace_setting import WorkspaceSetting + from .auto_provisioning_setting import AutoProvisioningSetting + from .compliance_segment import ComplianceSegment + from .compliance import Compliance + from .advanced_threat_protection_setting import AdvancedThreatProtectionSetting + from .setting import Setting + from .data_export_setting import DataExportSetting + from .setting_kind1 import SettingKind1 + from .sensitivity_label import SensitivityLabel + from .information_protection_keyword import InformationProtectionKeyword + from .information_type import InformationType + from .information_protection_policy import InformationProtectionPolicy + from .location import Location + from .operation_display import OperationDisplay + from .operation import Operation + from .security_task_parameters import SecurityTaskParameters + from .security_task import SecurityTask + from .asc_location import AscLocation + from .alert_entity import AlertEntity + from .alert_confidence_reason import AlertConfidenceReason + from .alert import Alert + from .discovered_security_solution import DiscoveredSecuritySolution + from .topology_single_resource_parent import TopologySingleResourceParent + from .topology_single_resource_child import TopologySingleResourceChild + from .topology_single_resource import TopologySingleResource + from .topology_resource import TopologyResource + from .jit_network_access_port_rule import JitNetworkAccessPortRule + from .jit_network_access_policy_virtual_machine import JitNetworkAccessPolicyVirtualMachine + from .jit_network_access_request_port import JitNetworkAccessRequestPort + from .jit_network_access_request_virtual_machine import JitNetworkAccessRequestVirtualMachine + from .jit_network_access_request import JitNetworkAccessRequest + from .jit_network_access_policy import JitNetworkAccessPolicy + from .jit_network_access_policy_initiate_port import JitNetworkAccessPolicyInitiatePort + from .jit_network_access_policy_initiate_virtual_machine import JitNetworkAccessPolicyInitiateVirtualMachine + from .jit_network_access_policy_initiate_request import JitNetworkAccessPolicyInitiateRequest + from .external_security_solution import ExternalSecuritySolution + from .cef_solution_properties import CefSolutionProperties + from .cef_external_security_solution import CefExternalSecuritySolution + from .ata_solution_properties import AtaSolutionProperties + from .ata_external_security_solution import AtaExternalSecuritySolution + from .connected_workspace import ConnectedWorkspace + from .aad_solution_properties import AadSolutionProperties + from .aad_external_security_solution import AadExternalSecuritySolution + from .external_security_solution_kind1 import ExternalSecuritySolutionKind1 + from .external_security_solution_properties import ExternalSecuritySolutionProperties + from .aad_connectivity_state1 import AadConnectivityState1 +from .pricing_paged import PricingPaged +from .security_contact_paged import SecurityContactPaged +from .workspace_setting_paged import WorkspaceSettingPaged +from .auto_provisioning_setting_paged import AutoProvisioningSettingPaged +from .compliance_paged import CompliancePaged +from .setting_paged import SettingPaged +from .information_protection_policy_paged import InformationProtectionPolicyPaged +from .operation_paged import OperationPaged +from .asc_location_paged import AscLocationPaged +from .security_task_paged import SecurityTaskPaged +from .alert_paged import AlertPaged +from .discovered_security_solution_paged import DiscoveredSecuritySolutionPaged +from .jit_network_access_policy_paged import JitNetworkAccessPolicyPaged +from .external_security_solution_paged import ExternalSecuritySolutionPaged +from .topology_resource_paged import TopologyResourcePaged +from .security_center_enums import ( + AlertNotifications, + AlertsToAdmins, + PricingTier, + AutoProvision, + SettingKind, + SecurityFamily, + Protocol, + Status, + StatusReason, + AadConnectivityState, + ExternalSecuritySolutionKind, +) + +__all__ = [ + 'Resource', + 'Kind', + 'SecurityContact', + 'Pricing', + 'WorkspaceSetting', + 'AutoProvisioningSetting', + 'ComplianceSegment', + 'Compliance', + 'AdvancedThreatProtectionSetting', + 'Setting', + 'DataExportSetting', + 'SettingKind1', + 'SensitivityLabel', + 'InformationProtectionKeyword', + 'InformationType', + 'InformationProtectionPolicy', + 'Location', + 'OperationDisplay', + 'Operation', + 'SecurityTaskParameters', + 'SecurityTask', + 'AscLocation', + 'AlertEntity', + 'AlertConfidenceReason', + 'Alert', + 'DiscoveredSecuritySolution', + 'TopologySingleResourceParent', + 'TopologySingleResourceChild', + 'TopologySingleResource', + 'TopologyResource', + 'JitNetworkAccessPortRule', + 'JitNetworkAccessPolicyVirtualMachine', + 'JitNetworkAccessRequestPort', + 'JitNetworkAccessRequestVirtualMachine', + 'JitNetworkAccessRequest', + 'JitNetworkAccessPolicy', + 'JitNetworkAccessPolicyInitiatePort', + 'JitNetworkAccessPolicyInitiateVirtualMachine', + 'JitNetworkAccessPolicyInitiateRequest', + 'ExternalSecuritySolution', + 'CefSolutionProperties', + 'CefExternalSecuritySolution', + 'AtaSolutionProperties', + 'AtaExternalSecuritySolution', + 'ConnectedWorkspace', + 'AadSolutionProperties', + 'AadExternalSecuritySolution', + 'ExternalSecuritySolutionKind1', + 'ExternalSecuritySolutionProperties', + 'AadConnectivityState1', + 'PricingPaged', + 'SecurityContactPaged', + 'WorkspaceSettingPaged', + 'AutoProvisioningSettingPaged', + 'CompliancePaged', + 'SettingPaged', + 'InformationProtectionPolicyPaged', + 'OperationPaged', + 'AscLocationPaged', + 'SecurityTaskPaged', + 'AlertPaged', + 'DiscoveredSecuritySolutionPaged', + 'JitNetworkAccessPolicyPaged', + 'ExternalSecuritySolutionPaged', + 'TopologyResourcePaged', + 'AlertNotifications', + 'AlertsToAdmins', + 'PricingTier', + 'AutoProvision', + 'SettingKind', + 'SecurityFamily', + 'Protocol', + 'Status', + 'StatusReason', + 'AadConnectivityState', + 'ExternalSecuritySolutionKind', +] diff --git a/azure-mgmt-security/azure/mgmt/security/models/aad_connectivity_state1.py b/azure-mgmt-security/azure/mgmt/security/models/aad_connectivity_state1.py new file mode 100644 index 000000000000..7feb6e549272 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/aad_connectivity_state1.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AadConnectivityState1(Model): + """Describes an Azure resource with kind. + + :param connectivity_state: The connectivity state of the external AAD + solution . Possible values include: 'Discovered', 'NotLicensed', + 'Connected' + :type connectivity_state: str or + ~azure.mgmt.security.models.AadConnectivityState + """ + + _attribute_map = { + 'connectivity_state': {'key': 'connectivityState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AadConnectivityState1, self).__init__(**kwargs) + self.connectivity_state = kwargs.get('connectivity_state', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/aad_connectivity_state1_py3.py b/azure-mgmt-security/azure/mgmt/security/models/aad_connectivity_state1_py3.py new file mode 100644 index 000000000000..7c699ec9d77e --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/aad_connectivity_state1_py3.py @@ -0,0 +1,31 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AadConnectivityState1(Model): + """Describes an Azure resource with kind. + + :param connectivity_state: The connectivity state of the external AAD + solution . Possible values include: 'Discovered', 'NotLicensed', + 'Connected' + :type connectivity_state: str or + ~azure.mgmt.security.models.AadConnectivityState + """ + + _attribute_map = { + 'connectivity_state': {'key': 'connectivityState', 'type': 'str'}, + } + + def __init__(self, *, connectivity_state=None, **kwargs) -> None: + super(AadConnectivityState1, self).__init__(**kwargs) + self.connectivity_state = connectivity_state diff --git a/azure-mgmt-security/azure/mgmt/security/models/aad_external_security_solution.py b/azure-mgmt-security/azure/mgmt/security/models/aad_external_security_solution.py new file mode 100644 index 000000000000..da55d84dfdad --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/aad_external_security_solution.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .external_security_solution import ExternalSecuritySolution + + +class AadExternalSecuritySolution(ExternalSecuritySolution): + """Represents an AAD identity protection solution which sends logs to an OMS + workspace. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param kind: Required. Constant filled by server. + :type kind: str + :param properties: + :type properties: ~azure.mgmt.security.models.AadSolutionProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AadSolutionProperties'}, + } + + def __init__(self, **kwargs): + super(AadExternalSecuritySolution, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) + self.kind = 'AAD' diff --git a/azure-mgmt-security/azure/mgmt/security/models/aad_external_security_solution_py3.py b/azure-mgmt-security/azure/mgmt/security/models/aad_external_security_solution_py3.py new file mode 100644 index 000000000000..893a2efac215 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/aad_external_security_solution_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .external_security_solution_py3 import ExternalSecuritySolution + + +class AadExternalSecuritySolution(ExternalSecuritySolution): + """Represents an AAD identity protection solution which sends logs to an OMS + workspace. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param kind: Required. Constant filled by server. + :type kind: str + :param properties: + :type properties: ~azure.mgmt.security.models.AadSolutionProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AadSolutionProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(AadExternalSecuritySolution, self).__init__(**kwargs) + self.properties = properties + self.kind = 'AAD' diff --git a/azure-mgmt-security/azure/mgmt/security/models/aad_solution_properties.py b/azure-mgmt-security/azure/mgmt/security/models/aad_solution_properties.py new file mode 100644 index 000000000000..44c62d15869c --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/aad_solution_properties.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AadSolutionProperties(Model): + """The external security solution properties for AAD solutions. + + :param device_vendor: + :type device_vendor: str + :param device_type: + :type device_type: str + :param workspace: + :type workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :param connectivity_state: The connectivity state of the external AAD + solution . Possible values include: 'Discovered', 'NotLicensed', + 'Connected' + :type connectivity_state: str or + ~azure.mgmt.security.models.AadConnectivityState + """ + + _attribute_map = { + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_type': {'key': 'deviceType', 'type': 'str'}, + 'workspace': {'key': 'workspace', 'type': 'ConnectedWorkspace'}, + 'connectivity_state': {'key': 'connectivityState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AadSolutionProperties, self).__init__(**kwargs) + self.device_vendor = kwargs.get('device_vendor', None) + self.device_type = kwargs.get('device_type', None) + self.workspace = kwargs.get('workspace', None) + self.connectivity_state = kwargs.get('connectivity_state', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/aad_solution_properties_py3.py b/azure-mgmt-security/azure/mgmt/security/models/aad_solution_properties_py3.py new file mode 100644 index 000000000000..4acc4804aa08 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/aad_solution_properties_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AadSolutionProperties(Model): + """The external security solution properties for AAD solutions. + + :param device_vendor: + :type device_vendor: str + :param device_type: + :type device_type: str + :param workspace: + :type workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :param connectivity_state: The connectivity state of the external AAD + solution . Possible values include: 'Discovered', 'NotLicensed', + 'Connected' + :type connectivity_state: str or + ~azure.mgmt.security.models.AadConnectivityState + """ + + _attribute_map = { + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_type': {'key': 'deviceType', 'type': 'str'}, + 'workspace': {'key': 'workspace', 'type': 'ConnectedWorkspace'}, + 'connectivity_state': {'key': 'connectivityState', 'type': 'str'}, + } + + def __init__(self, *, device_vendor: str=None, device_type: str=None, workspace=None, connectivity_state=None, **kwargs) -> None: + super(AadSolutionProperties, self).__init__(**kwargs) + self.device_vendor = device_vendor + self.device_type = device_type + self.workspace = workspace + self.connectivity_state = connectivity_state diff --git a/azure-mgmt-security/azure/mgmt/security/models/advanced_threat_protection_setting.py b/azure-mgmt-security/azure/mgmt/security/models/advanced_threat_protection_setting.py new file mode 100644 index 000000000000..722352481320 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/advanced_threat_protection_setting.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class AdvancedThreatProtectionSetting(Resource): + """The Advanced Threat Protection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param is_enabled: Indicates whether Advanced Threat Protection is + enabled. + :type is_enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'is_enabled': {'key': 'properties.isEnabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(AdvancedThreatProtectionSetting, self).__init__(**kwargs) + self.is_enabled = kwargs.get('is_enabled', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/advanced_threat_protection_setting_py3.py b/azure-mgmt-security/azure/mgmt/security/models/advanced_threat_protection_setting_py3.py new file mode 100644 index 000000000000..66ed9c5fe2ec --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/advanced_threat_protection_setting_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class AdvancedThreatProtectionSetting(Resource): + """The Advanced Threat Protection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param is_enabled: Indicates whether Advanced Threat Protection is + enabled. + :type is_enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'is_enabled': {'key': 'properties.isEnabled', 'type': 'bool'}, + } + + def __init__(self, *, is_enabled: bool=None, **kwargs) -> None: + super(AdvancedThreatProtectionSetting, self).__init__(**kwargs) + self.is_enabled = is_enabled diff --git a/azure-mgmt-security/azure/mgmt/security/models/alert.py b/azure-mgmt-security/azure/mgmt/security/models/alert.py new file mode 100644 index 000000000000..bdd5963a2b38 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/alert.py @@ -0,0 +1,151 @@ +# 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 .resource import Resource + + +class Alert(Resource): + """Security alert. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar state: State of the alert (Active, Dismissed etc.) + :vartype state: str + :ivar reported_time_utc: The time the incident was reported to + Microsoft.Security in UTC + :vartype reported_time_utc: datetime + :ivar vendor_name: Name of the vendor that discovered the incident + :vartype vendor_name: str + :ivar alert_name: Name of the alert type + :vartype alert_name: str + :ivar alert_display_name: Display name of the alert type + :vartype alert_display_name: str + :ivar detected_time_utc: The time the incident was detected by the vendor + :vartype detected_time_utc: datetime + :ivar description: Description of the incident and what it means + :vartype description: str + :ivar remediation_steps: Recommended steps to reradiate the incident + :vartype remediation_steps: str + :ivar action_taken: The action that was taken as a response to the alert + (Active, Blocked etc.) + :vartype action_taken: str + :ivar reported_severity: Estimated severity of this alert + :vartype reported_severity: str + :ivar compromised_entity: The entity that the incident happened on + :vartype compromised_entity: str + :ivar associated_resource: Azure resource ID of the associated resource + :vartype associated_resource: str + :param extended_properties: + :type extended_properties: dict[str, object] + :ivar system_source: The type of the alerted resource (Azure, Non-Azure) + :vartype system_source: str + :ivar can_be_investigated: Whether this alert can be investigated with + Azure Security Center + :vartype can_be_investigated: bool + :param entities: objects that are related to this alerts + :type entities: list[~azure.mgmt.security.models.AlertEntity] + :ivar confidence_score: level of confidence we have on the alert + :vartype confidence_score: float + :param confidence_reasons: reasons the alert got the confidenceScore value + :type confidence_reasons: + list[~azure.mgmt.security.models.AlertConfidenceReason] + :ivar subscription_id: Azure subscription ID of the resource that had the + security alert or the subscription ID of the workspace that this resource + reports to + :vartype subscription_id: str + :ivar instance_id: Instance ID of the alert. + :vartype instance_id: str + :ivar workspace_arm_id: Azure resource ID of the workspace that the alert + was reported to. + :vartype workspace_arm_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'readonly': True}, + 'reported_time_utc': {'readonly': True}, + 'vendor_name': {'readonly': True}, + 'alert_name': {'readonly': True}, + 'alert_display_name': {'readonly': True}, + 'detected_time_utc': {'readonly': True}, + 'description': {'readonly': True}, + 'remediation_steps': {'readonly': True}, + 'action_taken': {'readonly': True}, + 'reported_severity': {'readonly': True}, + 'compromised_entity': {'readonly': True}, + 'associated_resource': {'readonly': True}, + 'system_source': {'readonly': True}, + 'can_be_investigated': {'readonly': True}, + 'confidence_score': {'readonly': True, 'maximum': 1, 'minimum': 0}, + 'subscription_id': {'readonly': True}, + 'instance_id': {'readonly': True}, + 'workspace_arm_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'reported_time_utc': {'key': 'properties.reportedTimeUtc', 'type': 'iso-8601'}, + 'vendor_name': {'key': 'properties.vendorName', 'type': 'str'}, + 'alert_name': {'key': 'properties.alertName', 'type': 'str'}, + 'alert_display_name': {'key': 'properties.alertDisplayName', 'type': 'str'}, + 'detected_time_utc': {'key': 'properties.detectedTimeUtc', 'type': 'iso-8601'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'remediation_steps': {'key': 'properties.remediationSteps', 'type': 'str'}, + 'action_taken': {'key': 'properties.actionTaken', 'type': 'str'}, + 'reported_severity': {'key': 'properties.reportedSeverity', 'type': 'str'}, + 'compromised_entity': {'key': 'properties.compromisedEntity', 'type': 'str'}, + 'associated_resource': {'key': 'properties.associatedResource', 'type': 'str'}, + 'extended_properties': {'key': 'properties.extendedProperties', 'type': '{object}'}, + 'system_source': {'key': 'properties.systemSource', 'type': 'str'}, + 'can_be_investigated': {'key': 'properties.canBeInvestigated', 'type': 'bool'}, + 'entities': {'key': 'properties.entities', 'type': '[AlertEntity]'}, + 'confidence_score': {'key': 'properties.confidenceScore', 'type': 'float'}, + 'confidence_reasons': {'key': 'properties.confidenceReasons', 'type': '[AlertConfidenceReason]'}, + 'subscription_id': {'key': 'properties.subscriptionId', 'type': 'str'}, + 'instance_id': {'key': 'properties.instanceId', 'type': 'str'}, + 'workspace_arm_id': {'key': 'properties.workspaceArmId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Alert, self).__init__(**kwargs) + self.state = None + self.reported_time_utc = None + self.vendor_name = None + self.alert_name = None + self.alert_display_name = None + self.detected_time_utc = None + self.description = None + self.remediation_steps = None + self.action_taken = None + self.reported_severity = None + self.compromised_entity = None + self.associated_resource = None + self.extended_properties = kwargs.get('extended_properties', None) + self.system_source = None + self.can_be_investigated = None + self.entities = kwargs.get('entities', None) + self.confidence_score = None + self.confidence_reasons = kwargs.get('confidence_reasons', None) + self.subscription_id = None + self.instance_id = None + self.workspace_arm_id = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/alert_confidence_reason.py b/azure-mgmt-security/azure/mgmt/security/models/alert_confidence_reason.py new file mode 100644 index 000000000000..ddbfc3dae2ec --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/alert_confidence_reason.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertConfidenceReason(Model): + """Factors that increase our confidence that the alert is a true positive. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: Type of confidence factor + :vartype type: str + :ivar reason: description of the confidence reason + :vartype reason: str + """ + + _validation = { + 'type': {'readonly': True}, + 'reason': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'reason': {'key': 'reason', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AlertConfidenceReason, self).__init__(**kwargs) + self.type = None + self.reason = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/alert_confidence_reason_py3.py b/azure-mgmt-security/azure/mgmt/security/models/alert_confidence_reason_py3.py new file mode 100644 index 000000000000..ff57f840a16d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/alert_confidence_reason_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertConfidenceReason(Model): + """Factors that increase our confidence that the alert is a true positive. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: Type of confidence factor + :vartype type: str + :ivar reason: description of the confidence reason + :vartype reason: str + """ + + _validation = { + 'type': {'readonly': True}, + 'reason': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'reason': {'key': 'reason', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(AlertConfidenceReason, self).__init__(**kwargs) + self.type = None + self.reason = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/alert_entity.py b/azure-mgmt-security/azure/mgmt/security/models/alert_entity.py new file mode 100644 index 000000000000..1dd8ca41529a --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/alert_entity.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertEntity(Model): + """Changing set of properties depending on the entity type. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar type: Type of entity + :vartype type: str + """ + + _validation = { + 'type': {'readonly': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AlertEntity, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.type = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/alert_entity_py3.py b/azure-mgmt-security/azure/mgmt/security/models/alert_entity_py3.py new file mode 100644 index 000000000000..1f8de5415ff7 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/alert_entity_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AlertEntity(Model): + """Changing set of properties depending on the entity type. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar type: Type of entity + :vartype type: str + """ + + _validation = { + 'type': {'readonly': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, **kwargs) -> None: + super(AlertEntity, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.type = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/alert_paged.py b/azure-mgmt-security/azure/mgmt/security/models/alert_paged.py new file mode 100644 index 000000000000..8fd844916438 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/alert_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AlertPaged(Paged): + """ + A paging container for iterating over a list of :class:`Alert ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Alert]'} + } + + def __init__(self, *args, **kwargs): + + super(AlertPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/alert_py3.py b/azure-mgmt-security/azure/mgmt/security/models/alert_py3.py new file mode 100644 index 000000000000..b5c9aff63df5 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/alert_py3.py @@ -0,0 +1,151 @@ +# 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 .resource_py3 import Resource + + +class Alert(Resource): + """Security alert. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar state: State of the alert (Active, Dismissed etc.) + :vartype state: str + :ivar reported_time_utc: The time the incident was reported to + Microsoft.Security in UTC + :vartype reported_time_utc: datetime + :ivar vendor_name: Name of the vendor that discovered the incident + :vartype vendor_name: str + :ivar alert_name: Name of the alert type + :vartype alert_name: str + :ivar alert_display_name: Display name of the alert type + :vartype alert_display_name: str + :ivar detected_time_utc: The time the incident was detected by the vendor + :vartype detected_time_utc: datetime + :ivar description: Description of the incident and what it means + :vartype description: str + :ivar remediation_steps: Recommended steps to reradiate the incident + :vartype remediation_steps: str + :ivar action_taken: The action that was taken as a response to the alert + (Active, Blocked etc.) + :vartype action_taken: str + :ivar reported_severity: Estimated severity of this alert + :vartype reported_severity: str + :ivar compromised_entity: The entity that the incident happened on + :vartype compromised_entity: str + :ivar associated_resource: Azure resource ID of the associated resource + :vartype associated_resource: str + :param extended_properties: + :type extended_properties: dict[str, object] + :ivar system_source: The type of the alerted resource (Azure, Non-Azure) + :vartype system_source: str + :ivar can_be_investigated: Whether this alert can be investigated with + Azure Security Center + :vartype can_be_investigated: bool + :param entities: objects that are related to this alerts + :type entities: list[~azure.mgmt.security.models.AlertEntity] + :ivar confidence_score: level of confidence we have on the alert + :vartype confidence_score: float + :param confidence_reasons: reasons the alert got the confidenceScore value + :type confidence_reasons: + list[~azure.mgmt.security.models.AlertConfidenceReason] + :ivar subscription_id: Azure subscription ID of the resource that had the + security alert or the subscription ID of the workspace that this resource + reports to + :vartype subscription_id: str + :ivar instance_id: Instance ID of the alert. + :vartype instance_id: str + :ivar workspace_arm_id: Azure resource ID of the workspace that the alert + was reported to. + :vartype workspace_arm_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'readonly': True}, + 'reported_time_utc': {'readonly': True}, + 'vendor_name': {'readonly': True}, + 'alert_name': {'readonly': True}, + 'alert_display_name': {'readonly': True}, + 'detected_time_utc': {'readonly': True}, + 'description': {'readonly': True}, + 'remediation_steps': {'readonly': True}, + 'action_taken': {'readonly': True}, + 'reported_severity': {'readonly': True}, + 'compromised_entity': {'readonly': True}, + 'associated_resource': {'readonly': True}, + 'system_source': {'readonly': True}, + 'can_be_investigated': {'readonly': True}, + 'confidence_score': {'readonly': True, 'maximum': 1, 'minimum': 0}, + 'subscription_id': {'readonly': True}, + 'instance_id': {'readonly': True}, + 'workspace_arm_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'reported_time_utc': {'key': 'properties.reportedTimeUtc', 'type': 'iso-8601'}, + 'vendor_name': {'key': 'properties.vendorName', 'type': 'str'}, + 'alert_name': {'key': 'properties.alertName', 'type': 'str'}, + 'alert_display_name': {'key': 'properties.alertDisplayName', 'type': 'str'}, + 'detected_time_utc': {'key': 'properties.detectedTimeUtc', 'type': 'iso-8601'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'remediation_steps': {'key': 'properties.remediationSteps', 'type': 'str'}, + 'action_taken': {'key': 'properties.actionTaken', 'type': 'str'}, + 'reported_severity': {'key': 'properties.reportedSeverity', 'type': 'str'}, + 'compromised_entity': {'key': 'properties.compromisedEntity', 'type': 'str'}, + 'associated_resource': {'key': 'properties.associatedResource', 'type': 'str'}, + 'extended_properties': {'key': 'properties.extendedProperties', 'type': '{object}'}, + 'system_source': {'key': 'properties.systemSource', 'type': 'str'}, + 'can_be_investigated': {'key': 'properties.canBeInvestigated', 'type': 'bool'}, + 'entities': {'key': 'properties.entities', 'type': '[AlertEntity]'}, + 'confidence_score': {'key': 'properties.confidenceScore', 'type': 'float'}, + 'confidence_reasons': {'key': 'properties.confidenceReasons', 'type': '[AlertConfidenceReason]'}, + 'subscription_id': {'key': 'properties.subscriptionId', 'type': 'str'}, + 'instance_id': {'key': 'properties.instanceId', 'type': 'str'}, + 'workspace_arm_id': {'key': 'properties.workspaceArmId', 'type': 'str'}, + } + + def __init__(self, *, extended_properties=None, entities=None, confidence_reasons=None, **kwargs) -> None: + super(Alert, self).__init__(**kwargs) + self.state = None + self.reported_time_utc = None + self.vendor_name = None + self.alert_name = None + self.alert_display_name = None + self.detected_time_utc = None + self.description = None + self.remediation_steps = None + self.action_taken = None + self.reported_severity = None + self.compromised_entity = None + self.associated_resource = None + self.extended_properties = extended_properties + self.system_source = None + self.can_be_investigated = None + self.entities = entities + self.confidence_score = None + self.confidence_reasons = confidence_reasons + self.subscription_id = None + self.instance_id = None + self.workspace_arm_id = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/asc_location.py b/azure-mgmt-security/azure/mgmt/security/models/asc_location.py new file mode 100644 index 000000000000..c665bef0469a --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/asc_location.py @@ -0,0 +1,46 @@ +# 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 .resource import Resource + + +class AscLocation(Resource): + """The ASC location of the subscription is in the "name" field. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param properties: + :type properties: object + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(AscLocation, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/asc_location_paged.py b/azure-mgmt-security/azure/mgmt/security/models/asc_location_paged.py new file mode 100644 index 000000000000..85394884079a --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/asc_location_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AscLocationPaged(Paged): + """ + A paging container for iterating over a list of :class:`AscLocation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AscLocation]'} + } + + def __init__(self, *args, **kwargs): + + super(AscLocationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/asc_location_py3.py b/azure-mgmt-security/azure/mgmt/security/models/asc_location_py3.py new file mode 100644 index 000000000000..8ee3de84094f --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/asc_location_py3.py @@ -0,0 +1,46 @@ +# 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 .resource_py3 import Resource + + +class AscLocation(Resource): + """The ASC location of the subscription is in the "name" field. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param properties: + :type properties: object + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'object'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(AscLocation, self).__init__(**kwargs) + self.properties = properties diff --git a/azure-mgmt-security/azure/mgmt/security/models/ata_external_security_solution.py b/azure-mgmt-security/azure/mgmt/security/models/ata_external_security_solution.py new file mode 100644 index 000000000000..813dae68b0e1 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/ata_external_security_solution.py @@ -0,0 +1,57 @@ +# 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 .external_security_solution import ExternalSecuritySolution + + +class AtaExternalSecuritySolution(ExternalSecuritySolution): + """Represents an ATA security solution which sends logs to an OMS workspace. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param kind: Required. Constant filled by server. + :type kind: str + :param properties: + :type properties: ~azure.mgmt.security.models.AtaSolutionProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AtaSolutionProperties'}, + } + + def __init__(self, **kwargs): + super(AtaExternalSecuritySolution, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) + self.kind = 'ATA' diff --git a/azure-mgmt-security/azure/mgmt/security/models/ata_external_security_solution_py3.py b/azure-mgmt-security/azure/mgmt/security/models/ata_external_security_solution_py3.py new file mode 100644 index 000000000000..52b5e8b579a7 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/ata_external_security_solution_py3.py @@ -0,0 +1,57 @@ +# 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 .external_security_solution_py3 import ExternalSecuritySolution + + +class AtaExternalSecuritySolution(ExternalSecuritySolution): + """Represents an ATA security solution which sends logs to an OMS workspace. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param kind: Required. Constant filled by server. + :type kind: str + :param properties: + :type properties: ~azure.mgmt.security.models.AtaSolutionProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'AtaSolutionProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(AtaExternalSecuritySolution, self).__init__(**kwargs) + self.properties = properties + self.kind = 'ATA' diff --git a/azure-mgmt-security/azure/mgmt/security/models/ata_solution_properties.py b/azure-mgmt-security/azure/mgmt/security/models/ata_solution_properties.py new file mode 100644 index 000000000000..8067254e71fa --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/ata_solution_properties.py @@ -0,0 +1,41 @@ +# 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 .external_security_solution_properties import ExternalSecuritySolutionProperties + + +class AtaSolutionProperties(ExternalSecuritySolutionProperties): + """The external security solution properties for ATA solutions. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param device_vendor: + :type device_vendor: str + :param device_type: + :type device_type: str + :param workspace: + :type workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :param last_event_received: + :type last_event_received: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_type': {'key': 'deviceType', 'type': 'str'}, + 'workspace': {'key': 'workspace', 'type': 'ConnectedWorkspace'}, + 'last_event_received': {'key': 'lastEventReceived', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AtaSolutionProperties, self).__init__(**kwargs) + self.last_event_received = kwargs.get('last_event_received', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/ata_solution_properties_py3.py b/azure-mgmt-security/azure/mgmt/security/models/ata_solution_properties_py3.py new file mode 100644 index 000000000000..7314df45108c --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/ata_solution_properties_py3.py @@ -0,0 +1,41 @@ +# 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 .external_security_solution_properties_py3 import ExternalSecuritySolutionProperties + + +class AtaSolutionProperties(ExternalSecuritySolutionProperties): + """The external security solution properties for ATA solutions. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param device_vendor: + :type device_vendor: str + :param device_type: + :type device_type: str + :param workspace: + :type workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :param last_event_received: + :type last_event_received: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_type': {'key': 'deviceType', 'type': 'str'}, + 'workspace': {'key': 'workspace', 'type': 'ConnectedWorkspace'}, + 'last_event_received': {'key': 'lastEventReceived', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, device_vendor: str=None, device_type: str=None, workspace=None, last_event_received: str=None, **kwargs) -> None: + super(AtaSolutionProperties, self).__init__(additional_properties=additional_properties, device_vendor=device_vendor, device_type=device_type, workspace=workspace, **kwargs) + self.last_event_received = last_event_received diff --git a/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting.py b/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting.py new file mode 100644 index 000000000000..907869accb3d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class AutoProvisioningSetting(Resource): + """Auto provisioning setting. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param auto_provision: Required. Describes what kind of security agent + provisioning action to take. Possible values include: 'On', 'Off' + :type auto_provision: str or ~azure.mgmt.security.models.AutoProvision + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'auto_provision': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'auto_provision': {'key': 'properties.autoProvision', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AutoProvisioningSetting, self).__init__(**kwargs) + self.auto_provision = kwargs.get('auto_provision', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting_paged.py b/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting_paged.py new file mode 100644 index 000000000000..a618c42c075c --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class AutoProvisioningSettingPaged(Paged): + """ + A paging container for iterating over a list of :class:`AutoProvisioningSetting ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AutoProvisioningSetting]'} + } + + def __init__(self, *args, **kwargs): + + super(AutoProvisioningSettingPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting_py3.py b/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting_py3.py new file mode 100644 index 000000000000..7c86b8da5c01 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/auto_provisioning_setting_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class AutoProvisioningSetting(Resource): + """Auto provisioning setting. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param auto_provision: Required. Describes what kind of security agent + provisioning action to take. Possible values include: 'On', 'Off' + :type auto_provision: str or ~azure.mgmt.security.models.AutoProvision + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'auto_provision': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'auto_provision': {'key': 'properties.autoProvision', 'type': 'str'}, + } + + def __init__(self, *, auto_provision, **kwargs) -> None: + super(AutoProvisioningSetting, self).__init__(**kwargs) + self.auto_provision = auto_provision diff --git a/azure-mgmt-security/azure/mgmt/security/models/cef_external_security_solution.py b/azure-mgmt-security/azure/mgmt/security/models/cef_external_security_solution.py new file mode 100644 index 000000000000..513fb6de5940 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/cef_external_security_solution.py @@ -0,0 +1,57 @@ +# 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 .external_security_solution import ExternalSecuritySolution + + +class CefExternalSecuritySolution(ExternalSecuritySolution): + """Represents a security solution which sends CEF logs to an OMS workspace. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param kind: Required. Constant filled by server. + :type kind: str + :param properties: + :type properties: ~azure.mgmt.security.models.CefSolutionProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'CefSolutionProperties'}, + } + + def __init__(self, **kwargs): + super(CefExternalSecuritySolution, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) + self.kind = 'CEF' diff --git a/azure-mgmt-security/azure/mgmt/security/models/cef_external_security_solution_py3.py b/azure-mgmt-security/azure/mgmt/security/models/cef_external_security_solution_py3.py new file mode 100644 index 000000000000..930b453b72d8 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/cef_external_security_solution_py3.py @@ -0,0 +1,57 @@ +# 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 .external_security_solution_py3 import ExternalSecuritySolution + + +class CefExternalSecuritySolution(ExternalSecuritySolution): + """Represents a security solution which sends CEF logs to an OMS workspace. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param kind: Required. Constant filled by server. + :type kind: str + :param properties: + :type properties: ~azure.mgmt.security.models.CefSolutionProperties + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': 'CefSolutionProperties'}, + } + + def __init__(self, *, properties=None, **kwargs) -> None: + super(CefExternalSecuritySolution, self).__init__(**kwargs) + self.properties = properties + self.kind = 'CEF' diff --git a/azure-mgmt-security/azure/mgmt/security/models/cef_solution_properties.py b/azure-mgmt-security/azure/mgmt/security/models/cef_solution_properties.py new file mode 100644 index 000000000000..b49610a04bb0 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/cef_solution_properties.py @@ -0,0 +1,49 @@ +# 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 .external_security_solution_properties import ExternalSecuritySolutionProperties + + +class CefSolutionProperties(ExternalSecuritySolutionProperties): + """The external security solution properties for CEF solutions. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param device_vendor: + :type device_vendor: str + :param device_type: + :type device_type: str + :param workspace: + :type workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :param hostname: + :type hostname: str + :param agent: + :type agent: str + :param last_event_received: + :type last_event_received: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_type': {'key': 'deviceType', 'type': 'str'}, + 'workspace': {'key': 'workspace', 'type': 'ConnectedWorkspace'}, + 'hostname': {'key': 'hostname', 'type': 'str'}, + 'agent': {'key': 'agent', 'type': 'str'}, + 'last_event_received': {'key': 'lastEventReceived', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CefSolutionProperties, self).__init__(**kwargs) + self.hostname = kwargs.get('hostname', None) + self.agent = kwargs.get('agent', None) + self.last_event_received = kwargs.get('last_event_received', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/cef_solution_properties_py3.py b/azure-mgmt-security/azure/mgmt/security/models/cef_solution_properties_py3.py new file mode 100644 index 000000000000..390c6acba5fb --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/cef_solution_properties_py3.py @@ -0,0 +1,49 @@ +# 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 .external_security_solution_properties_py3 import ExternalSecuritySolutionProperties + + +class CefSolutionProperties(ExternalSecuritySolutionProperties): + """The external security solution properties for CEF solutions. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param device_vendor: + :type device_vendor: str + :param device_type: + :type device_type: str + :param workspace: + :type workspace: ~azure.mgmt.security.models.ConnectedWorkspace + :param hostname: + :type hostname: str + :param agent: + :type agent: str + :param last_event_received: + :type last_event_received: str + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_type': {'key': 'deviceType', 'type': 'str'}, + 'workspace': {'key': 'workspace', 'type': 'ConnectedWorkspace'}, + 'hostname': {'key': 'hostname', 'type': 'str'}, + 'agent': {'key': 'agent', 'type': 'str'}, + 'last_event_received': {'key': 'lastEventReceived', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, device_vendor: str=None, device_type: str=None, workspace=None, hostname: str=None, agent: str=None, last_event_received: str=None, **kwargs) -> None: + super(CefSolutionProperties, self).__init__(additional_properties=additional_properties, device_vendor=device_vendor, device_type=device_type, workspace=workspace, **kwargs) + self.hostname = hostname + self.agent = agent + self.last_event_received = last_event_received diff --git a/azure-mgmt-security/azure/mgmt/security/models/compliance.py b/azure-mgmt-security/azure/mgmt/security/models/compliance.py new file mode 100644 index 000000000000..f515b35211bd --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/compliance.py @@ -0,0 +1,62 @@ +# 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 .resource import Resource + + +class Compliance(Resource): + """Compliance of a scope. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar assessment_timestamp_utc_date: The timestamp when the Compliance + calculation was conducted. + :vartype assessment_timestamp_utc_date: datetime + :ivar resource_count: The resource count of the given subscription for + which the Compliance calculation was conducted (needed for Management + Group Compliance calculation). + :vartype resource_count: int + :ivar assessment_result: An array of segment, which is the actually the + compliance assessment. + :vartype assessment_result: + list[~azure.mgmt.security.models.ComplianceSegment] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'assessment_timestamp_utc_date': {'readonly': True}, + 'resource_count': {'readonly': True}, + 'assessment_result': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'assessment_timestamp_utc_date': {'key': 'properties.assessmentTimestampUtcDate', 'type': 'iso-8601'}, + 'resource_count': {'key': 'properties.resourceCount', 'type': 'int'}, + 'assessment_result': {'key': 'properties.assessmentResult', 'type': '[ComplianceSegment]'}, + } + + def __init__(self, **kwargs): + super(Compliance, self).__init__(**kwargs) + self.assessment_timestamp_utc_date = None + self.resource_count = None + self.assessment_result = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/compliance_paged.py b/azure-mgmt-security/azure/mgmt/security/models/compliance_paged.py new file mode 100644 index 000000000000..4e2030375270 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/compliance_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class CompliancePaged(Paged): + """ + A paging container for iterating over a list of :class:`Compliance ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Compliance]'} + } + + def __init__(self, *args, **kwargs): + + super(CompliancePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/compliance_py3.py b/azure-mgmt-security/azure/mgmt/security/models/compliance_py3.py new file mode 100644 index 000000000000..0e271a1351b4 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/compliance_py3.py @@ -0,0 +1,62 @@ +# 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 .resource_py3 import Resource + + +class Compliance(Resource): + """Compliance of a scope. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar assessment_timestamp_utc_date: The timestamp when the Compliance + calculation was conducted. + :vartype assessment_timestamp_utc_date: datetime + :ivar resource_count: The resource count of the given subscription for + which the Compliance calculation was conducted (needed for Management + Group Compliance calculation). + :vartype resource_count: int + :ivar assessment_result: An array of segment, which is the actually the + compliance assessment. + :vartype assessment_result: + list[~azure.mgmt.security.models.ComplianceSegment] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'assessment_timestamp_utc_date': {'readonly': True}, + 'resource_count': {'readonly': True}, + 'assessment_result': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'assessment_timestamp_utc_date': {'key': 'properties.assessmentTimestampUtcDate', 'type': 'iso-8601'}, + 'resource_count': {'key': 'properties.resourceCount', 'type': 'int'}, + 'assessment_result': {'key': 'properties.assessmentResult', 'type': '[ComplianceSegment]'}, + } + + def __init__(self, **kwargs) -> None: + super(Compliance, self).__init__(**kwargs) + self.assessment_timestamp_utc_date = None + self.resource_count = None + self.assessment_result = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/compliance_segment.py b/azure-mgmt-security/azure/mgmt/security/models/compliance_segment.py new file mode 100644 index 000000000000..ea23dc49c079 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/compliance_segment.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComplianceSegment(Model): + """A segment of a compliance assessment. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar segment_type: The segment type, e.g. compliant, non-compliance, + insufficient coverage, N/A, etc. + :vartype segment_type: str + :ivar percentage: The size (%) of the segment. + :vartype percentage: float + """ + + _validation = { + 'segment_type': {'readonly': True}, + 'percentage': {'readonly': True}, + } + + _attribute_map = { + 'segment_type': {'key': 'segmentType', 'type': 'str'}, + 'percentage': {'key': 'percentage', 'type': 'float'}, + } + + def __init__(self, **kwargs): + super(ComplianceSegment, self).__init__(**kwargs) + self.segment_type = None + self.percentage = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/compliance_segment_py3.py b/azure-mgmt-security/azure/mgmt/security/models/compliance_segment_py3.py new file mode 100644 index 000000000000..a819e7cde997 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/compliance_segment_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ComplianceSegment(Model): + """A segment of a compliance assessment. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar segment_type: The segment type, e.g. compliant, non-compliance, + insufficient coverage, N/A, etc. + :vartype segment_type: str + :ivar percentage: The size (%) of the segment. + :vartype percentage: float + """ + + _validation = { + 'segment_type': {'readonly': True}, + 'percentage': {'readonly': True}, + } + + _attribute_map = { + 'segment_type': {'key': 'segmentType', 'type': 'str'}, + 'percentage': {'key': 'percentage', 'type': 'float'}, + } + + def __init__(self, **kwargs) -> None: + super(ComplianceSegment, self).__init__(**kwargs) + self.segment_type = None + self.percentage = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/connected_workspace.py b/azure-mgmt-security/azure/mgmt/security/models/connected_workspace.py new file mode 100644 index 000000000000..6ac3212eabd9 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/connected_workspace.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectedWorkspace(Model): + """Represents an OMS workspace to which the solution is connected. + + :param id: Azure resource ID of the connected OMS workspace + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectedWorkspace, self).__init__(**kwargs) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/connected_workspace_py3.py b/azure-mgmt-security/azure/mgmt/security/models/connected_workspace_py3.py new file mode 100644 index 000000000000..5bc6960972d2 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/connected_workspace_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnectedWorkspace(Model): + """Represents an OMS workspace to which the solution is connected. + + :param id: Azure resource ID of the connected OMS workspace + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ConnectedWorkspace, self).__init__(**kwargs) + self.id = id diff --git a/azure-mgmt-security/azure/mgmt/security/models/data_export_setting.py b/azure-mgmt-security/azure/mgmt/security/models/data_export_setting.py new file mode 100644 index 000000000000..c2eb09c8bebe --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/data_export_setting.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .setting import Setting + + +class DataExportSetting(Setting): + """Represents a data export setting. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param kind: Required. Constant filled by server. + :type kind: str + :param enabled: Required. Is the data export setting is enabled + :type enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kind': {'required': True}, + 'enabled': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(DataExportSetting, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.kind = 'DataExportSetting' diff --git a/azure-mgmt-security/azure/mgmt/security/models/data_export_setting_py3.py b/azure-mgmt-security/azure/mgmt/security/models/data_export_setting_py3.py new file mode 100644 index 000000000000..adab9fae1f04 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/data_export_setting_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .setting_py3 import Setting + + +class DataExportSetting(Setting): + """Represents a data export setting. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param kind: Required. Constant filled by server. + :type kind: str + :param enabled: Required. Is the data export setting is enabled + :type enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kind': {'required': True}, + 'enabled': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + } + + def __init__(self, *, enabled: bool, **kwargs) -> None: + super(DataExportSetting, self).__init__(**kwargs) + self.enabled = enabled + self.kind = 'DataExportSetting' diff --git a/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution.py b/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution.py new file mode 100644 index 000000000000..fabb09226953 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiscoveredSecuritySolution(Model): + """DiscoveredSecuritySolution. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param security_family: Required. The security family of the discovered + solution. Possible values include: 'Waf', 'Ngfw', 'SaasWaf', 'Va' + :type security_family: str or ~azure.mgmt.security.models.SecurityFamily + :param offer: Required. The security solutions' image offer + :type offer: str + :param publisher: Required. The security solutions' image publisher + :type publisher: str + :param sku: Required. The security solutions' image sku + :type sku: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'security_family': {'required': True}, + 'offer': {'required': True}, + 'publisher': {'required': True}, + 'sku': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'security_family': {'key': 'properties.securityFamily', 'type': 'str'}, + 'offer': {'key': 'properties.offer', 'type': 'str'}, + 'publisher': {'key': 'properties.publisher', 'type': 'str'}, + 'sku': {'key': 'properties.sku', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DiscoveredSecuritySolution, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = None + self.security_family = kwargs.get('security_family', None) + self.offer = kwargs.get('offer', None) + self.publisher = kwargs.get('publisher', None) + self.sku = kwargs.get('sku', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution_paged.py b/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution_paged.py new file mode 100644 index 000000000000..9bfbb03c5409 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DiscoveredSecuritySolutionPaged(Paged): + """ + A paging container for iterating over a list of :class:`DiscoveredSecuritySolution ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DiscoveredSecuritySolution]'} + } + + def __init__(self, *args, **kwargs): + + super(DiscoveredSecuritySolutionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution_py3.py b/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution_py3.py new file mode 100644 index 000000000000..33934cab24d5 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/discovered_security_solution_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiscoveredSecuritySolution(Model): + """DiscoveredSecuritySolution. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param security_family: Required. The security family of the discovered + solution. Possible values include: 'Waf', 'Ngfw', 'SaasWaf', 'Va' + :type security_family: str or ~azure.mgmt.security.models.SecurityFamily + :param offer: Required. The security solutions' image offer + :type offer: str + :param publisher: Required. The security solutions' image publisher + :type publisher: str + :param sku: Required. The security solutions' image sku + :type sku: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'security_family': {'required': True}, + 'offer': {'required': True}, + 'publisher': {'required': True}, + 'sku': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'security_family': {'key': 'properties.securityFamily', 'type': 'str'}, + 'offer': {'key': 'properties.offer', 'type': 'str'}, + 'publisher': {'key': 'properties.publisher', 'type': 'str'}, + 'sku': {'key': 'properties.sku', 'type': 'str'}, + } + + def __init__(self, *, security_family, offer: str, publisher: str, sku: str, **kwargs) -> None: + super(DiscoveredSecuritySolution, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = None + self.security_family = security_family + self.offer = offer + self.publisher = publisher + self.sku = sku diff --git a/azure-mgmt-security/azure/mgmt/security/models/external_security_solution.py b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution.py new file mode 100644 index 000000000000..d9e655a91baa --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExternalSecuritySolution(Model): + """Represents a security solution external to Azure Security Center which + sends information to an OMS workspace and whos data is displayed by Azure + Security Center. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: CefExternalSecuritySolution, AtaExternalSecuritySolution, + AadExternalSecuritySolution + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param kind: Required. Constant filled by server. + :type kind: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + } + + _subtype_map = { + 'kind': {'CEF': 'CefExternalSecuritySolution', 'ATA': 'AtaExternalSecuritySolution', 'AAD': 'AadExternalSecuritySolution'} + } + + def __init__(self, **kwargs): + super(ExternalSecuritySolution, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = None + self.kind = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_kind1.py b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_kind1.py new file mode 100644 index 000000000000..7f736fcfc1ba --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_kind1.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExternalSecuritySolutionKind1(Model): + """Describes an Azure resource with kind. + + :param kind: The kind of the external solution. Possible values include: + 'CEF', 'ATA', 'AAD' + :type kind: str or + ~azure.mgmt.security.models.ExternalSecuritySolutionKind + """ + + _attribute_map = { + 'kind': {'key': 'kind', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExternalSecuritySolutionKind1, self).__init__(**kwargs) + self.kind = kwargs.get('kind', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_kind1_py3.py b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_kind1_py3.py new file mode 100644 index 000000000000..0d1ef240b557 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_kind1_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExternalSecuritySolutionKind1(Model): + """Describes an Azure resource with kind. + + :param kind: The kind of the external solution. Possible values include: + 'CEF', 'ATA', 'AAD' + :type kind: str or + ~azure.mgmt.security.models.ExternalSecuritySolutionKind + """ + + _attribute_map = { + 'kind': {'key': 'kind', 'type': 'str'}, + } + + def __init__(self, *, kind=None, **kwargs) -> None: + super(ExternalSecuritySolutionKind1, self).__init__(**kwargs) + self.kind = kind diff --git a/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_paged.py b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_paged.py new file mode 100644 index 000000000000..a67047ce19c0 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ExternalSecuritySolutionPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExternalSecuritySolution ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExternalSecuritySolution]'} + } + + def __init__(self, *args, **kwargs): + + super(ExternalSecuritySolutionPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_properties.py b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_properties.py new file mode 100644 index 000000000000..9ccbb179d3e4 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_properties.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExternalSecuritySolutionProperties(Model): + """The solution properties (correspond to the solution kind). + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param device_vendor: + :type device_vendor: str + :param device_type: + :type device_type: str + :param workspace: + :type workspace: ~azure.mgmt.security.models.ConnectedWorkspace + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_type': {'key': 'deviceType', 'type': 'str'}, + 'workspace': {'key': 'workspace', 'type': 'ConnectedWorkspace'}, + } + + def __init__(self, **kwargs): + super(ExternalSecuritySolutionProperties, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.device_vendor = kwargs.get('device_vendor', None) + self.device_type = kwargs.get('device_type', None) + self.workspace = kwargs.get('workspace', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_properties_py3.py b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_properties_py3.py new file mode 100644 index 000000000000..de53f50ae553 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_properties_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExternalSecuritySolutionProperties(Model): + """The solution properties (correspond to the solution kind). + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :param device_vendor: + :type device_vendor: str + :param device_type: + :type device_type: str + :param workspace: + :type workspace: ~azure.mgmt.security.models.ConnectedWorkspace + """ + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_type': {'key': 'deviceType', 'type': 'str'}, + 'workspace': {'key': 'workspace', 'type': 'ConnectedWorkspace'}, + } + + def __init__(self, *, additional_properties=None, device_vendor: str=None, device_type: str=None, workspace=None, **kwargs) -> None: + super(ExternalSecuritySolutionProperties, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.device_vendor = device_vendor + self.device_type = device_type + self.workspace = workspace diff --git a/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_py3.py b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_py3.py new file mode 100644 index 000000000000..a7495db0f8a3 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/external_security_solution_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ExternalSecuritySolution(Model): + """Represents a security solution external to Azure Security Center which + sends information to an OMS workspace and whos data is displayed by Azure + Security Center. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: CefExternalSecuritySolution, AtaExternalSecuritySolution, + AadExternalSecuritySolution + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :param kind: Required. Constant filled by server. + :type kind: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + } + + _subtype_map = { + 'kind': {'CEF': 'CefExternalSecuritySolution', 'ATA': 'AtaExternalSecuritySolution', 'AAD': 'AadExternalSecuritySolution'} + } + + def __init__(self, **kwargs) -> None: + super(ExternalSecuritySolution, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = None + self.kind = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/information_protection_keyword.py b/azure-mgmt-security/azure/mgmt/security/models/information_protection_keyword.py new file mode 100644 index 000000000000..b67a1d4cfbd1 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/information_protection_keyword.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InformationProtectionKeyword(Model): + """The information type keyword. + + :param pattern: The keyword pattern. + :type pattern: str + :param custom: Indicates whether the keyword is custom or not. + :type custom: bool + :param can_be_numeric: Indicates whether the keyword can be applied on + numeric types or not. + :type can_be_numeric: bool + :param excluded: Indicates whether the keyword is excluded or not. + :type excluded: bool + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'custom': {'key': 'custom', 'type': 'bool'}, + 'can_be_numeric': {'key': 'canBeNumeric', 'type': 'bool'}, + 'excluded': {'key': 'excluded', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(InformationProtectionKeyword, self).__init__(**kwargs) + self.pattern = kwargs.get('pattern', None) + self.custom = kwargs.get('custom', None) + self.can_be_numeric = kwargs.get('can_be_numeric', None) + self.excluded = kwargs.get('excluded', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/information_protection_keyword_py3.py b/azure-mgmt-security/azure/mgmt/security/models/information_protection_keyword_py3.py new file mode 100644 index 000000000000..52c424cd4452 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/information_protection_keyword_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InformationProtectionKeyword(Model): + """The information type keyword. + + :param pattern: The keyword pattern. + :type pattern: str + :param custom: Indicates whether the keyword is custom or not. + :type custom: bool + :param can_be_numeric: Indicates whether the keyword can be applied on + numeric types or not. + :type can_be_numeric: bool + :param excluded: Indicates whether the keyword is excluded or not. + :type excluded: bool + """ + + _attribute_map = { + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'custom': {'key': 'custom', 'type': 'bool'}, + 'can_be_numeric': {'key': 'canBeNumeric', 'type': 'bool'}, + 'excluded': {'key': 'excluded', 'type': 'bool'}, + } + + def __init__(self, *, pattern: str=None, custom: bool=None, can_be_numeric: bool=None, excluded: bool=None, **kwargs) -> None: + super(InformationProtectionKeyword, self).__init__(**kwargs) + self.pattern = pattern + self.custom = custom + self.can_be_numeric = can_be_numeric + self.excluded = excluded diff --git a/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy.py b/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy.py new file mode 100644 index 000000000000..c430a8605127 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy.py @@ -0,0 +1,57 @@ +# 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 .resource import Resource + + +class InformationProtectionPolicy(Resource): + """Information protection policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar last_modified_utc: Describes the last UTC time the policy was + modified. + :vartype last_modified_utc: datetime + :param labels: Dictionary of sensitivity labels. + :type labels: dict[str, ~azure.mgmt.security.models.SensitivityLabel] + :param information_types: The sensitivity information types. + :type information_types: dict[str, + ~azure.mgmt.security.models.InformationType] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'last_modified_utc': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'last_modified_utc': {'key': 'properties.lastModifiedUtc', 'type': 'iso-8601'}, + 'labels': {'key': 'properties.labels', 'type': '{SensitivityLabel}'}, + 'information_types': {'key': 'properties.informationTypes', 'type': '{InformationType}'}, + } + + def __init__(self, **kwargs): + super(InformationProtectionPolicy, self).__init__(**kwargs) + self.last_modified_utc = None + self.labels = kwargs.get('labels', None) + self.information_types = kwargs.get('information_types', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy_paged.py b/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy_paged.py new file mode 100644 index 000000000000..807d040d4f4b --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class InformationProtectionPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`InformationProtectionPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[InformationProtectionPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(InformationProtectionPolicyPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy_py3.py b/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy_py3.py new file mode 100644 index 000000000000..e07676bb0d27 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/information_protection_policy_py3.py @@ -0,0 +1,57 @@ +# 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 .resource_py3 import Resource + + +class InformationProtectionPolicy(Resource): + """Information protection policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar last_modified_utc: Describes the last UTC time the policy was + modified. + :vartype last_modified_utc: datetime + :param labels: Dictionary of sensitivity labels. + :type labels: dict[str, ~azure.mgmt.security.models.SensitivityLabel] + :param information_types: The sensitivity information types. + :type information_types: dict[str, + ~azure.mgmt.security.models.InformationType] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'last_modified_utc': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'last_modified_utc': {'key': 'properties.lastModifiedUtc', 'type': 'iso-8601'}, + 'labels': {'key': 'properties.labels', 'type': '{SensitivityLabel}'}, + 'information_types': {'key': 'properties.informationTypes', 'type': '{InformationType}'}, + } + + def __init__(self, *, labels=None, information_types=None, **kwargs) -> None: + super(InformationProtectionPolicy, self).__init__(**kwargs) + self.last_modified_utc = None + self.labels = labels + self.information_types = information_types diff --git a/azure-mgmt-security/azure/mgmt/security/models/information_type.py b/azure-mgmt-security/azure/mgmt/security/models/information_type.py new file mode 100644 index 000000000000..df77e7c1ff65 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/information_type.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InformationType(Model): + """The information type. + + :param display_name: The name of the information type. + :type display_name: str + :param order: The order of the information type. + :type order: float + :param recommended_label_id: The recommended label id to be associated + with this information type. + :type recommended_label_id: str + :param enabled: Indicates whether the information type is enabled or not. + :type enabled: bool + :param custom: Indicates whether the information type is custom or not. + :type custom: bool + :param keywords: The information type keywords. + :type keywords: + list[~azure.mgmt.security.models.InformationProtectionKeyword] + """ + + _attribute_map = { + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'order': {'key': 'order', 'type': 'float'}, + 'recommended_label_id': {'key': 'recommendedLabelId', 'type': 'str'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'custom': {'key': 'custom', 'type': 'bool'}, + 'keywords': {'key': 'keywords', 'type': '[InformationProtectionKeyword]'}, + } + + def __init__(self, **kwargs): + super(InformationType, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.order = kwargs.get('order', None) + self.recommended_label_id = kwargs.get('recommended_label_id', None) + self.enabled = kwargs.get('enabled', None) + self.custom = kwargs.get('custom', None) + self.keywords = kwargs.get('keywords', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/information_type_py3.py b/azure-mgmt-security/azure/mgmt/security/models/information_type_py3.py new file mode 100644 index 000000000000..b8b1ab434c82 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/information_type_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class InformationType(Model): + """The information type. + + :param display_name: The name of the information type. + :type display_name: str + :param order: The order of the information type. + :type order: float + :param recommended_label_id: The recommended label id to be associated + with this information type. + :type recommended_label_id: str + :param enabled: Indicates whether the information type is enabled or not. + :type enabled: bool + :param custom: Indicates whether the information type is custom or not. + :type custom: bool + :param keywords: The information type keywords. + :type keywords: + list[~azure.mgmt.security.models.InformationProtectionKeyword] + """ + + _attribute_map = { + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'order': {'key': 'order', 'type': 'float'}, + 'recommended_label_id': {'key': 'recommendedLabelId', 'type': 'str'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'custom': {'key': 'custom', 'type': 'bool'}, + 'keywords': {'key': 'keywords', 'type': '[InformationProtectionKeyword]'}, + } + + def __init__(self, *, display_name: str=None, order: float=None, recommended_label_id: str=None, enabled: bool=None, custom: bool=None, keywords=None, **kwargs) -> None: + super(InformationType, self).__init__(**kwargs) + self.display_name = display_name + self.order = order + self.recommended_label_id = recommended_label_id + self.enabled = enabled + self.custom = custom + self.keywords = keywords diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy.py new file mode 100644 index 000000000000..281b6e07c25d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicy(Model): + """JitNetworkAccessPolicy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param kind: Kind of the resource + :type kind: str + :ivar location: Location where the resource is stored + :vartype location: str + :param virtual_machines: Required. Configurations for + Microsoft.Compute/virtualMachines resource type. + :type virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyVirtualMachine] + :param requests: + :type requests: list[~azure.mgmt.security.models.JitNetworkAccessRequest] + :ivar provisioning_state: Gets the provisioning state of the Just-in-Time + policy. + :vartype provisioning_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'virtual_machines': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'virtual_machines': {'key': 'properties.virtualMachines', 'type': '[JitNetworkAccessPolicyVirtualMachine]'}, + 'requests': {'key': 'properties.requests', 'type': '[JitNetworkAccessRequest]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessPolicy, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.kind = kwargs.get('kind', None) + self.location = None + self.virtual_machines = kwargs.get('virtual_machines', None) + self.requests = kwargs.get('requests', None) + self.provisioning_state = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_port.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_port.py new file mode 100644 index 000000000000..b0829c87c01b --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_port.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicyInitiatePort(Model): + """JitNetworkAccessPolicyInitiatePort. + + All required parameters must be populated in order to send to Azure. + + :param number: Required. + :type number: int + :param allowed_source_address_prefix: Source of the allowed traffic. If + omitted, the request will be for the source IP address of the initiate + request. + :type allowed_source_address_prefix: str + :param end_time_utc: Required. The time to close the request in UTC + :type end_time_utc: datetime + """ + + _validation = { + 'number': {'required': True}, + 'end_time_utc': {'required': True}, + } + + _attribute_map = { + 'number': {'key': 'number', 'type': 'int'}, + 'allowed_source_address_prefix': {'key': 'allowedSourceAddressPrefix', 'type': 'str'}, + 'end_time_utc': {'key': 'endTimeUtc', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessPolicyInitiatePort, self).__init__(**kwargs) + self.number = kwargs.get('number', None) + self.allowed_source_address_prefix = kwargs.get('allowed_source_address_prefix', None) + self.end_time_utc = kwargs.get('end_time_utc', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_port_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_port_py3.py new file mode 100644 index 000000000000..65ae97d30788 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_port_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicyInitiatePort(Model): + """JitNetworkAccessPolicyInitiatePort. + + All required parameters must be populated in order to send to Azure. + + :param number: Required. + :type number: int + :param allowed_source_address_prefix: Source of the allowed traffic. If + omitted, the request will be for the source IP address of the initiate + request. + :type allowed_source_address_prefix: str + :param end_time_utc: Required. The time to close the request in UTC + :type end_time_utc: datetime + """ + + _validation = { + 'number': {'required': True}, + 'end_time_utc': {'required': True}, + } + + _attribute_map = { + 'number': {'key': 'number', 'type': 'int'}, + 'allowed_source_address_prefix': {'key': 'allowedSourceAddressPrefix', 'type': 'str'}, + 'end_time_utc': {'key': 'endTimeUtc', 'type': 'iso-8601'}, + } + + def __init__(self, *, number: int, end_time_utc, allowed_source_address_prefix: str=None, **kwargs) -> None: + super(JitNetworkAccessPolicyInitiatePort, self).__init__(**kwargs) + self.number = number + self.allowed_source_address_prefix = allowed_source_address_prefix + self.end_time_utc = end_time_utc diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_request.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_request.py new file mode 100644 index 000000000000..6d567c7aee30 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_request.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicyInitiateRequest(Model): + """JitNetworkAccessPolicyInitiateRequest. + + All required parameters must be populated in order to send to Azure. + + :param virtual_machines: Required. A list of virtual machines & ports to + open access for + :type virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateVirtualMachine] + """ + + _validation = { + 'virtual_machines': {'required': True}, + } + + _attribute_map = { + 'virtual_machines': {'key': 'virtualMachines', 'type': '[JitNetworkAccessPolicyInitiateVirtualMachine]'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessPolicyInitiateRequest, self).__init__(**kwargs) + self.virtual_machines = kwargs.get('virtual_machines', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_request_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_request_py3.py new file mode 100644 index 000000000000..ba6c6cbf2f93 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_request_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicyInitiateRequest(Model): + """JitNetworkAccessPolicyInitiateRequest. + + All required parameters must be populated in order to send to Azure. + + :param virtual_machines: Required. A list of virtual machines & ports to + open access for + :type virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateVirtualMachine] + """ + + _validation = { + 'virtual_machines': {'required': True}, + } + + _attribute_map = { + 'virtual_machines': {'key': 'virtualMachines', 'type': '[JitNetworkAccessPolicyInitiateVirtualMachine]'}, + } + + def __init__(self, *, virtual_machines, **kwargs) -> None: + super(JitNetworkAccessPolicyInitiateRequest, self).__init__(**kwargs) + self.virtual_machines = virtual_machines diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_virtual_machine.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_virtual_machine.py new file mode 100644 index 000000000000..e8581019f64d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_virtual_machine.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicyInitiateVirtualMachine(Model): + """JitNetworkAccessPolicyInitiateVirtualMachine. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. Resource ID of the virtual machine that is linked to + this policy + :type id: str + :param ports: Required. The ports to open for the resource with the `id` + :type ports: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiatePort] + """ + + _validation = { + 'id': {'required': True}, + 'ports': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ports': {'key': 'ports', 'type': '[JitNetworkAccessPolicyInitiatePort]'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessPolicyInitiateVirtualMachine, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.ports = kwargs.get('ports', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_virtual_machine_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_virtual_machine_py3.py new file mode 100644 index 000000000000..bdae532a9308 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_initiate_virtual_machine_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicyInitiateVirtualMachine(Model): + """JitNetworkAccessPolicyInitiateVirtualMachine. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. Resource ID of the virtual machine that is linked to + this policy + :type id: str + :param ports: Required. The ports to open for the resource with the `id` + :type ports: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiatePort] + """ + + _validation = { + 'id': {'required': True}, + 'ports': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ports': {'key': 'ports', 'type': '[JitNetworkAccessPolicyInitiatePort]'}, + } + + def __init__(self, *, id: str, ports, **kwargs) -> None: + super(JitNetworkAccessPolicyInitiateVirtualMachine, self).__init__(**kwargs) + self.id = id + self.ports = ports diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_paged.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_paged.py new file mode 100644 index 000000000000..87c684afb92e --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class JitNetworkAccessPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`JitNetworkAccessPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[JitNetworkAccessPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(JitNetworkAccessPolicyPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_py3.py new file mode 100644 index 000000000000..4e719184b290 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicy(Model): + """JitNetworkAccessPolicy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param kind: Kind of the resource + :type kind: str + :ivar location: Location where the resource is stored + :vartype location: str + :param virtual_machines: Required. Configurations for + Microsoft.Compute/virtualMachines resource type. + :type virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyVirtualMachine] + :param requests: + :type requests: list[~azure.mgmt.security.models.JitNetworkAccessRequest] + :ivar provisioning_state: Gets the provisioning state of the Just-in-Time + policy. + :vartype provisioning_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'virtual_machines': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'virtual_machines': {'key': 'properties.virtualMachines', 'type': '[JitNetworkAccessPolicyVirtualMachine]'}, + 'requests': {'key': 'properties.requests', 'type': '[JitNetworkAccessRequest]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, virtual_machines, kind: str=None, requests=None, **kwargs) -> None: + super(JitNetworkAccessPolicy, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.kind = kind + self.location = None + self.virtual_machines = virtual_machines + self.requests = requests + self.provisioning_state = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_virtual_machine.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_virtual_machine.py new file mode 100644 index 000000000000..49ce31c7f04e --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_virtual_machine.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicyVirtualMachine(Model): + """JitNetworkAccessPolicyVirtualMachine. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. Resource ID of the virtual machine that is linked to + this policy + :type id: str + :param ports: Required. Port configurations for the virtual machine + :type ports: list[~azure.mgmt.security.models.JitNetworkAccessPortRule] + """ + + _validation = { + 'id': {'required': True}, + 'ports': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ports': {'key': 'ports', 'type': '[JitNetworkAccessPortRule]'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessPolicyVirtualMachine, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.ports = kwargs.get('ports', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_virtual_machine_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_virtual_machine_py3.py new file mode 100644 index 000000000000..f315044fbc70 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_policy_virtual_machine_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPolicyVirtualMachine(Model): + """JitNetworkAccessPolicyVirtualMachine. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. Resource ID of the virtual machine that is linked to + this policy + :type id: str + :param ports: Required. Port configurations for the virtual machine + :type ports: list[~azure.mgmt.security.models.JitNetworkAccessPortRule] + """ + + _validation = { + 'id': {'required': True}, + 'ports': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ports': {'key': 'ports', 'type': '[JitNetworkAccessPortRule]'}, + } + + def __init__(self, *, id: str, ports, **kwargs) -> None: + super(JitNetworkAccessPolicyVirtualMachine, self).__init__(**kwargs) + self.id = id + self.ports = ports diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_port_rule.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_port_rule.py new file mode 100644 index 000000000000..4be40bf43b69 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_port_rule.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPortRule(Model): + """JitNetworkAccessPortRule. + + All required parameters must be populated in order to send to Azure. + + :param number: Required. + :type number: int + :param protocol: Required. Possible values include: 'TCP', 'UDP', 'All' + :type protocol: str or ~azure.mgmt.security.models.Protocol + :param allowed_source_address_prefix: Mutually exclusive with the + "allowedSourceAddressPrefixes" parameter. Should be an IP address or CIDR, + for example "192.168.0.3" or "192.168.0.0/16". + :type allowed_source_address_prefix: str + :param allowed_source_address_prefixes: Mutually exclusive with the + "allowedSourceAddressPrefix" parameter. + :type allowed_source_address_prefixes: list[str] + :param max_request_access_duration: Required. Maximum duration requests + can be made for. In ISO 8601 duration format. Minimum 5 minutes, maximum 1 + day + :type max_request_access_duration: str + """ + + _validation = { + 'number': {'required': True}, + 'protocol': {'required': True}, + 'max_request_access_duration': {'required': True}, + } + + _attribute_map = { + 'number': {'key': 'number', 'type': 'int'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'allowed_source_address_prefix': {'key': 'allowedSourceAddressPrefix', 'type': 'str'}, + 'allowed_source_address_prefixes': {'key': 'allowedSourceAddressPrefixes', 'type': '[str]'}, + 'max_request_access_duration': {'key': 'maxRequestAccessDuration', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessPortRule, self).__init__(**kwargs) + self.number = kwargs.get('number', None) + self.protocol = kwargs.get('protocol', None) + self.allowed_source_address_prefix = kwargs.get('allowed_source_address_prefix', None) + self.allowed_source_address_prefixes = kwargs.get('allowed_source_address_prefixes', None) + self.max_request_access_duration = kwargs.get('max_request_access_duration', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_port_rule_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_port_rule_py3.py new file mode 100644 index 000000000000..2d6c223bea49 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_port_rule_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessPortRule(Model): + """JitNetworkAccessPortRule. + + All required parameters must be populated in order to send to Azure. + + :param number: Required. + :type number: int + :param protocol: Required. Possible values include: 'TCP', 'UDP', 'All' + :type protocol: str or ~azure.mgmt.security.models.Protocol + :param allowed_source_address_prefix: Mutually exclusive with the + "allowedSourceAddressPrefixes" parameter. Should be an IP address or CIDR, + for example "192.168.0.3" or "192.168.0.0/16". + :type allowed_source_address_prefix: str + :param allowed_source_address_prefixes: Mutually exclusive with the + "allowedSourceAddressPrefix" parameter. + :type allowed_source_address_prefixes: list[str] + :param max_request_access_duration: Required. Maximum duration requests + can be made for. In ISO 8601 duration format. Minimum 5 minutes, maximum 1 + day + :type max_request_access_duration: str + """ + + _validation = { + 'number': {'required': True}, + 'protocol': {'required': True}, + 'max_request_access_duration': {'required': True}, + } + + _attribute_map = { + 'number': {'key': 'number', 'type': 'int'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'allowed_source_address_prefix': {'key': 'allowedSourceAddressPrefix', 'type': 'str'}, + 'allowed_source_address_prefixes': {'key': 'allowedSourceAddressPrefixes', 'type': '[str]'}, + 'max_request_access_duration': {'key': 'maxRequestAccessDuration', 'type': 'str'}, + } + + def __init__(self, *, number: int, protocol, max_request_access_duration: str, allowed_source_address_prefix: str=None, allowed_source_address_prefixes=None, **kwargs) -> None: + super(JitNetworkAccessPortRule, self).__init__(**kwargs) + self.number = number + self.protocol = protocol + self.allowed_source_address_prefix = allowed_source_address_prefix + self.allowed_source_address_prefixes = allowed_source_address_prefixes + self.max_request_access_duration = max_request_access_duration diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request.py new file mode 100644 index 000000000000..4e3d22353b07 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessRequest(Model): + """JitNetworkAccessRequest. + + All required parameters must be populated in order to send to Azure. + + :param virtual_machines: Required. + :type virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessRequestVirtualMachine] + :param start_time_utc: Required. The start time of the request in UTC + :type start_time_utc: datetime + :param requestor: Required. The identity of the person who made the + request + :type requestor: str + """ + + _validation = { + 'virtual_machines': {'required': True}, + 'start_time_utc': {'required': True}, + 'requestor': {'required': True}, + } + + _attribute_map = { + 'virtual_machines': {'key': 'virtualMachines', 'type': '[JitNetworkAccessRequestVirtualMachine]'}, + 'start_time_utc': {'key': 'startTimeUtc', 'type': 'iso-8601'}, + 'requestor': {'key': 'requestor', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessRequest, self).__init__(**kwargs) + self.virtual_machines = kwargs.get('virtual_machines', None) + self.start_time_utc = kwargs.get('start_time_utc', None) + self.requestor = kwargs.get('requestor', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_port.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_port.py new file mode 100644 index 000000000000..63212f65aae1 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_port.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessRequestPort(Model): + """JitNetworkAccessRequestPort. + + All required parameters must be populated in order to send to Azure. + + :param number: Required. + :type number: int + :param allowed_source_address_prefix: Mutually exclusive with the + "allowedSourceAddressPrefixes" parameter. Should be an IP address or CIDR, + for example "192.168.0.3" or "192.168.0.0/16". + :type allowed_source_address_prefix: str + :param allowed_source_address_prefixes: Mutually exclusive with the + "allowedSourceAddressPrefix" parameter. + :type allowed_source_address_prefixes: list[str] + :param end_time_utc: Required. The date & time at which the request ends + in UTC + :type end_time_utc: datetime + :param status: Required. The status of the port. Possible values include: + 'Revoked', 'Initiated' + :type status: str or ~azure.mgmt.security.models.Status + :param status_reason: Required. A description of why the `status` has its + value. Possible values include: 'Expired', 'UserRequested', + 'NewerRequestInitiated' + :type status_reason: str or ~azure.mgmt.security.models.StatusReason + """ + + _validation = { + 'number': {'required': True}, + 'end_time_utc': {'required': True}, + 'status': {'required': True}, + 'status_reason': {'required': True}, + } + + _attribute_map = { + 'number': {'key': 'number', 'type': 'int'}, + 'allowed_source_address_prefix': {'key': 'allowedSourceAddressPrefix', 'type': 'str'}, + 'allowed_source_address_prefixes': {'key': 'allowedSourceAddressPrefixes', 'type': '[str]'}, + 'end_time_utc': {'key': 'endTimeUtc', 'type': 'iso-8601'}, + 'status': {'key': 'status', 'type': 'str'}, + 'status_reason': {'key': 'statusReason', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessRequestPort, self).__init__(**kwargs) + self.number = kwargs.get('number', None) + self.allowed_source_address_prefix = kwargs.get('allowed_source_address_prefix', None) + self.allowed_source_address_prefixes = kwargs.get('allowed_source_address_prefixes', None) + self.end_time_utc = kwargs.get('end_time_utc', None) + self.status = kwargs.get('status', None) + self.status_reason = kwargs.get('status_reason', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_port_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_port_py3.py new file mode 100644 index 000000000000..957d7b08bb7a --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_port_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessRequestPort(Model): + """JitNetworkAccessRequestPort. + + All required parameters must be populated in order to send to Azure. + + :param number: Required. + :type number: int + :param allowed_source_address_prefix: Mutually exclusive with the + "allowedSourceAddressPrefixes" parameter. Should be an IP address or CIDR, + for example "192.168.0.3" or "192.168.0.0/16". + :type allowed_source_address_prefix: str + :param allowed_source_address_prefixes: Mutually exclusive with the + "allowedSourceAddressPrefix" parameter. + :type allowed_source_address_prefixes: list[str] + :param end_time_utc: Required. The date & time at which the request ends + in UTC + :type end_time_utc: datetime + :param status: Required. The status of the port. Possible values include: + 'Revoked', 'Initiated' + :type status: str or ~azure.mgmt.security.models.Status + :param status_reason: Required. A description of why the `status` has its + value. Possible values include: 'Expired', 'UserRequested', + 'NewerRequestInitiated' + :type status_reason: str or ~azure.mgmt.security.models.StatusReason + """ + + _validation = { + 'number': {'required': True}, + 'end_time_utc': {'required': True}, + 'status': {'required': True}, + 'status_reason': {'required': True}, + } + + _attribute_map = { + 'number': {'key': 'number', 'type': 'int'}, + 'allowed_source_address_prefix': {'key': 'allowedSourceAddressPrefix', 'type': 'str'}, + 'allowed_source_address_prefixes': {'key': 'allowedSourceAddressPrefixes', 'type': '[str]'}, + 'end_time_utc': {'key': 'endTimeUtc', 'type': 'iso-8601'}, + 'status': {'key': 'status', 'type': 'str'}, + 'status_reason': {'key': 'statusReason', 'type': 'str'}, + } + + def __init__(self, *, number: int, end_time_utc, status, status_reason, allowed_source_address_prefix: str=None, allowed_source_address_prefixes=None, **kwargs) -> None: + super(JitNetworkAccessRequestPort, self).__init__(**kwargs) + self.number = number + self.allowed_source_address_prefix = allowed_source_address_prefix + self.allowed_source_address_prefixes = allowed_source_address_prefixes + self.end_time_utc = end_time_utc + self.status = status + self.status_reason = status_reason diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_py3.py new file mode 100644 index 000000000000..4945c427dd93 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessRequest(Model): + """JitNetworkAccessRequest. + + All required parameters must be populated in order to send to Azure. + + :param virtual_machines: Required. + :type virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessRequestVirtualMachine] + :param start_time_utc: Required. The start time of the request in UTC + :type start_time_utc: datetime + :param requestor: Required. The identity of the person who made the + request + :type requestor: str + """ + + _validation = { + 'virtual_machines': {'required': True}, + 'start_time_utc': {'required': True}, + 'requestor': {'required': True}, + } + + _attribute_map = { + 'virtual_machines': {'key': 'virtualMachines', 'type': '[JitNetworkAccessRequestVirtualMachine]'}, + 'start_time_utc': {'key': 'startTimeUtc', 'type': 'iso-8601'}, + 'requestor': {'key': 'requestor', 'type': 'str'}, + } + + def __init__(self, *, virtual_machines, start_time_utc, requestor: str, **kwargs) -> None: + super(JitNetworkAccessRequest, self).__init__(**kwargs) + self.virtual_machines = virtual_machines + self.start_time_utc = start_time_utc + self.requestor = requestor diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_virtual_machine.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_virtual_machine.py new file mode 100644 index 000000000000..7c5ba66b2385 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_virtual_machine.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessRequestVirtualMachine(Model): + """JitNetworkAccessRequestVirtualMachine. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. Resource ID of the virtual machine that is linked to + this policy + :type id: str + :param ports: Required. The ports that were opened for the virtual machine + :type ports: list[~azure.mgmt.security.models.JitNetworkAccessRequestPort] + """ + + _validation = { + 'id': {'required': True}, + 'ports': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ports': {'key': 'ports', 'type': '[JitNetworkAccessRequestPort]'}, + } + + def __init__(self, **kwargs): + super(JitNetworkAccessRequestVirtualMachine, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.ports = kwargs.get('ports', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_virtual_machine_py3.py b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_virtual_machine_py3.py new file mode 100644 index 000000000000..7c9ddaa5a4a2 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/jit_network_access_request_virtual_machine_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class JitNetworkAccessRequestVirtualMachine(Model): + """JitNetworkAccessRequestVirtualMachine. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. Resource ID of the virtual machine that is linked to + this policy + :type id: str + :param ports: Required. The ports that were opened for the virtual machine + :type ports: list[~azure.mgmt.security.models.JitNetworkAccessRequestPort] + """ + + _validation = { + 'id': {'required': True}, + 'ports': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ports': {'key': 'ports', 'type': '[JitNetworkAccessRequestPort]'}, + } + + def __init__(self, *, id: str, ports, **kwargs) -> None: + super(JitNetworkAccessRequestVirtualMachine, self).__init__(**kwargs) + self.id = id + self.ports = ports diff --git a/azure-mgmt-security/azure/mgmt/security/models/kind.py b/azure-mgmt-security/azure/mgmt/security/models/kind.py new file mode 100644 index 000000000000..dafce6cdd7cb --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/kind.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Kind(Model): + """Describes an Azure resource with kind. + + :param kind: Kind of the resource + :type kind: str + """ + + _attribute_map = { + 'kind': {'key': 'kind', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Kind, self).__init__(**kwargs) + self.kind = kwargs.get('kind', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/kind_py3.py b/azure-mgmt-security/azure/mgmt/security/models/kind_py3.py new file mode 100644 index 000000000000..d77a28e0c975 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/kind_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Kind(Model): + """Describes an Azure resource with kind. + + :param kind: Kind of the resource + :type kind: str + """ + + _attribute_map = { + 'kind': {'key': 'kind', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(Kind, self).__init__(**kwargs) + self.kind = kind diff --git a/azure-mgmt-security/azure/mgmt/security/models/location.py b/azure-mgmt-security/azure/mgmt/security/models/location.py new file mode 100644 index 000000000000..852cd020018d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/location.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Location(Model): + """Describes an Azure resource with location. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar location: Location where the resource is stored + :vartype location: str + """ + + _validation = { + 'location': {'readonly': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Location, self).__init__(**kwargs) + self.location = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/location_py3.py b/azure-mgmt-security/azure/mgmt/security/models/location_py3.py new file mode 100644 index 000000000000..8203f9cdf30d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/location_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Location(Model): + """Describes an Azure resource with location. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar location: Location where the resource is stored + :vartype location: str + """ + + _validation = { + 'location': {'readonly': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Location, self).__init__(**kwargs) + self.location = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/operation.py b/azure-mgmt-security/azure/mgmt/security/models/operation.py new file mode 100644 index 000000000000..5b91bf6bccf4 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/operation.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Possible operation in the REST API of Microsoft.Security. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Name of the operation + :vartype name: str + :ivar origin: Where the operation is originated + :vartype origin: str + :param display: + :type display: ~azure.mgmt.security.models.OperationDisplay + """ + + _validation = { + 'name': {'readonly': True}, + 'origin': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = None + self.origin = None + self.display = kwargs.get('display', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/operation_display.py b/azure-mgmt-security/azure/mgmt/security/models/operation_display.py new file mode 100644 index 000000000000..624f831a4bfe --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/operation_display.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Security operation display. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provider: The resource provider for the operation. + :vartype provider: str + :ivar resource: The display name of the resource the operation applies to. + :vartype resource: str + :ivar operation: The display name of the security operation. + :vartype operation: str + :ivar description: The description of the operation. + :vartype description: str + """ + + _validation = { + 'provider': {'readonly': True}, + 'resource': {'readonly': True}, + 'operation': {'readonly': True}, + 'description': {'readonly': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = None + self.resource = None + self.operation = None + self.description = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/operation_display_py3.py b/azure-mgmt-security/azure/mgmt/security/models/operation_display_py3.py new file mode 100644 index 000000000000..4403ea324a9f --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/operation_display_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Security operation display. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provider: The resource provider for the operation. + :vartype provider: str + :ivar resource: The display name of the resource the operation applies to. + :vartype resource: str + :ivar operation: The display name of the security operation. + :vartype operation: str + :ivar description: The description of the operation. + :vartype description: str + """ + + _validation = { + 'provider': {'readonly': True}, + 'resource': {'readonly': True}, + 'operation': {'readonly': True}, + 'description': {'readonly': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(OperationDisplay, self).__init__(**kwargs) + self.provider = None + self.resource = None + self.operation = None + self.description = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/operation_paged.py b/azure-mgmt-security/azure/mgmt/security/models/operation_paged.py new file mode 100644 index 000000000000..c9fc34cc5505 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/operation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/operation_py3.py b/azure-mgmt-security/azure/mgmt/security/models/operation_py3.py new file mode 100644 index 000000000000..927bf356676d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/operation_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Possible operation in the REST API of Microsoft.Security. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: Name of the operation + :vartype name: str + :ivar origin: Where the operation is originated + :vartype origin: str + :param display: + :type display: ~azure.mgmt.security.models.OperationDisplay + """ + + _validation = { + 'name': {'readonly': True}, + 'origin': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + } + + def __init__(self, *, display=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = None + self.origin = None + self.display = display diff --git a/azure-mgmt-security/azure/mgmt/security/models/pricing.py b/azure-mgmt-security/azure/mgmt/security/models/pricing.py new file mode 100644 index 000000000000..320e3dc9e4dc --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/pricing.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class Pricing(Resource): + """Pricing tier will be applied for the scope based on the resource ID. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param pricing_tier: Required. Pricing tier type. Possible values include: + 'Free', 'Standard' + :type pricing_tier: str or ~azure.mgmt.security.models.PricingTier + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'pricing_tier': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'pricing_tier': {'key': 'properties.pricingTier', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Pricing, self).__init__(**kwargs) + self.pricing_tier = kwargs.get('pricing_tier', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/pricing_paged.py b/azure-mgmt-security/azure/mgmt/security/models/pricing_paged.py new file mode 100644 index 000000000000..09eee4ab69dd --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/pricing_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class PricingPaged(Paged): + """ + A paging container for iterating over a list of :class:`Pricing ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Pricing]'} + } + + def __init__(self, *args, **kwargs): + + super(PricingPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/pricing_py3.py b/azure-mgmt-security/azure/mgmt/security/models/pricing_py3.py new file mode 100644 index 000000000000..25001e835a78 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/pricing_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class Pricing(Resource): + """Pricing tier will be applied for the scope based on the resource ID. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param pricing_tier: Required. Pricing tier type. Possible values include: + 'Free', 'Standard' + :type pricing_tier: str or ~azure.mgmt.security.models.PricingTier + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'pricing_tier': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'pricing_tier': {'key': 'properties.pricingTier', 'type': 'str'}, + } + + def __init__(self, *, pricing_tier, **kwargs) -> None: + super(Pricing, self).__init__(**kwargs) + self.pricing_tier = pricing_tier diff --git a/azure-mgmt-security/azure/mgmt/security/models/resource.py b/azure-mgmt-security/azure/mgmt/security/models/resource.py new file mode 100644 index 000000000000..9c6150ed498e --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/resource.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Describes an Azure resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/resource_py3.py b/azure-mgmt-security/azure/mgmt/security/models/resource_py3.py new file mode 100644 index 000000000000..d19d439b8bc0 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Describes an Azure resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_center_enums.py b/azure-mgmt-security/azure/mgmt/security/models/security_center_enums.py new file mode 100644 index 000000000000..64f3905e4f14 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_center_enums.py @@ -0,0 +1,83 @@ +# 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 enum import Enum + + +class AlertNotifications(str, Enum): + + on = "On" #: Get notifications on new alerts + off = "Off" #: Don't get notifications on new alerts + + +class AlertsToAdmins(str, Enum): + + on = "On" #: Send notification on new alerts to the subscription's admins + off = "Off" #: Don't send notification on new alerts to the subscription's admins + + +class PricingTier(str, Enum): + + free = "Free" #: Get free Azure security center experience with basic security features + standard = "Standard" #: Get the standard Azure security center experience with advanced security features + + +class AutoProvision(str, Enum): + + on = "On" #: Install missing security agent on VMs automatically + off = "Off" #: Do not install security agent on the VMs automatically + + +class SettingKind(str, Enum): + + data_export_setting = "DataExportSetting" + + +class SecurityFamily(str, Enum): + + waf = "Waf" + ngfw = "Ngfw" + saas_waf = "SaasWaf" + va = "Va" + + +class Protocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + all = "*" + + +class Status(str, Enum): + + revoked = "Revoked" + initiated = "Initiated" + + +class StatusReason(str, Enum): + + expired = "Expired" + user_requested = "UserRequested" + newer_request_initiated = "NewerRequestInitiated" + + +class AadConnectivityState(str, Enum): + + discovered = "Discovered" + not_licensed = "NotLicensed" + connected = "Connected" + + +class ExternalSecuritySolutionKind(str, Enum): + + cef = "CEF" + ata = "ATA" + aad = "AAD" diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_contact.py b/azure-mgmt-security/azure/mgmt/security/models/security_contact.py new file mode 100644 index 000000000000..95f1211214fd --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_contact.py @@ -0,0 +1,68 @@ +# 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 .resource import Resource + + +class SecurityContact(Resource): + """Contact details for security issues. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param email: Required. The email of this security contact + :type email: str + :param phone: Required. The phone number of this security contact + :type phone: str + :param alert_notifications: Required. Whether to send security alerts + notifications to the security contact. Possible values include: 'On', + 'Off' + :type alert_notifications: str or + ~azure.mgmt.security.models.AlertNotifications + :param alerts_to_admins: Required. Whether to send security alerts + notifications to subscription admins. Possible values include: 'On', 'Off' + :type alerts_to_admins: str or ~azure.mgmt.security.models.AlertsToAdmins + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'email': {'required': True}, + 'phone': {'required': True}, + 'alert_notifications': {'required': True}, + 'alerts_to_admins': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + 'phone': {'key': 'properties.phone', 'type': 'str'}, + 'alert_notifications': {'key': 'properties.alertNotifications', 'type': 'str'}, + 'alerts_to_admins': {'key': 'properties.alertsToAdmins', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityContact, self).__init__(**kwargs) + self.email = kwargs.get('email', None) + self.phone = kwargs.get('phone', None) + self.alert_notifications = kwargs.get('alert_notifications', None) + self.alerts_to_admins = kwargs.get('alerts_to_admins', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_contact_paged.py b/azure-mgmt-security/azure/mgmt/security/models/security_contact_paged.py new file mode 100644 index 000000000000..a422f9bd58b7 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_contact_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SecurityContactPaged(Paged): + """ + A paging container for iterating over a list of :class:`SecurityContact ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SecurityContact]'} + } + + def __init__(self, *args, **kwargs): + + super(SecurityContactPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_contact_py3.py b/azure-mgmt-security/azure/mgmt/security/models/security_contact_py3.py new file mode 100644 index 000000000000..5142ff09660c --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_contact_py3.py @@ -0,0 +1,68 @@ +# 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 .resource_py3 import Resource + + +class SecurityContact(Resource): + """Contact details for security issues. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param email: Required. The email of this security contact + :type email: str + :param phone: Required. The phone number of this security contact + :type phone: str + :param alert_notifications: Required. Whether to send security alerts + notifications to the security contact. Possible values include: 'On', + 'Off' + :type alert_notifications: str or + ~azure.mgmt.security.models.AlertNotifications + :param alerts_to_admins: Required. Whether to send security alerts + notifications to subscription admins. Possible values include: 'On', 'Off' + :type alerts_to_admins: str or ~azure.mgmt.security.models.AlertsToAdmins + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'email': {'required': True}, + 'phone': {'required': True}, + 'alert_notifications': {'required': True}, + 'alerts_to_admins': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'email': {'key': 'properties.email', 'type': 'str'}, + 'phone': {'key': 'properties.phone', 'type': 'str'}, + 'alert_notifications': {'key': 'properties.alertNotifications', 'type': 'str'}, + 'alerts_to_admins': {'key': 'properties.alertsToAdmins', 'type': 'str'}, + } + + def __init__(self, *, email: str, phone: str, alert_notifications, alerts_to_admins, **kwargs) -> None: + super(SecurityContact, self).__init__(**kwargs) + self.email = email + self.phone = phone + self.alert_notifications = alert_notifications + self.alerts_to_admins = alerts_to_admins diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_task.py b/azure-mgmt-security/azure/mgmt/security/models/security_task.py new file mode 100644 index 000000000000..239a28c5e53e --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_task.py @@ -0,0 +1,68 @@ +# 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 .resource import Resource + + +class SecurityTask(Resource): + """Security task that we recommend to do in order to strengthen security. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar state: State of the task (Active, Resolved etc.) + :vartype state: str + :ivar creation_time_utc: The time this task was discovered in UTC + :vartype creation_time_utc: datetime + :param security_task_parameters: + :type security_task_parameters: + ~azure.mgmt.security.models.SecurityTaskParameters + :ivar last_state_change_time_utc: The time this task's details were last + changed in UTC + :vartype last_state_change_time_utc: datetime + :ivar sub_state: Additional data on the state of the task + :vartype sub_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'readonly': True}, + 'creation_time_utc': {'readonly': True}, + 'last_state_change_time_utc': {'readonly': True}, + 'sub_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'creation_time_utc': {'key': 'properties.creationTimeUtc', 'type': 'iso-8601'}, + 'security_task_parameters': {'key': 'properties.securityTaskParameters', 'type': 'SecurityTaskParameters'}, + 'last_state_change_time_utc': {'key': 'properties.lastStateChangeTimeUtc', 'type': 'iso-8601'}, + 'sub_state': {'key': 'properties.subState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityTask, self).__init__(**kwargs) + self.state = None + self.creation_time_utc = None + self.security_task_parameters = kwargs.get('security_task_parameters', None) + self.last_state_change_time_utc = None + self.sub_state = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_task_paged.py b/azure-mgmt-security/azure/mgmt/security/models/security_task_paged.py new file mode 100644 index 000000000000..99856db41035 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_task_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SecurityTaskPaged(Paged): + """ + A paging container for iterating over a list of :class:`SecurityTask ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SecurityTask]'} + } + + def __init__(self, *args, **kwargs): + + super(SecurityTaskPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_task_parameters.py b/azure-mgmt-security/azure/mgmt/security/models/security_task_parameters.py new file mode 100644 index 000000000000..43150ace1c41 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_task_parameters.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityTaskParameters(Model): + """Changing set of properties, depending on the task type that is derived from + the name field. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar name: Name of the task type + :vartype name: str + """ + + _validation = { + 'name': {'readonly': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityTaskParameters, self).__init__(**kwargs) + self.additional_properties = kwargs.get('additional_properties', None) + self.name = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_task_parameters_py3.py b/azure-mgmt-security/azure/mgmt/security/models/security_task_parameters_py3.py new file mode 100644 index 000000000000..e7bbe4d7bbea --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_task_parameters_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SecurityTaskParameters(Model): + """Changing set of properties, depending on the task type that is derived from + the name field. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param additional_properties: Unmatched properties from the message are + deserialized this collection + :type additional_properties: dict[str, object] + :ivar name: Name of the task type + :vartype name: str + """ + + _validation = { + 'name': {'readonly': True}, + } + + _attribute_map = { + 'additional_properties': {'key': '', 'type': '{object}'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, additional_properties=None, **kwargs) -> None: + super(SecurityTaskParameters, self).__init__(**kwargs) + self.additional_properties = additional_properties + self.name = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/security_task_py3.py b/azure-mgmt-security/azure/mgmt/security/models/security_task_py3.py new file mode 100644 index 000000000000..d29d10479772 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/security_task_py3.py @@ -0,0 +1,68 @@ +# 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 .resource_py3 import Resource + + +class SecurityTask(Resource): + """Security task that we recommend to do in order to strengthen security. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar state: State of the task (Active, Resolved etc.) + :vartype state: str + :ivar creation_time_utc: The time this task was discovered in UTC + :vartype creation_time_utc: datetime + :param security_task_parameters: + :type security_task_parameters: + ~azure.mgmt.security.models.SecurityTaskParameters + :ivar last_state_change_time_utc: The time this task's details were last + changed in UTC + :vartype last_state_change_time_utc: datetime + :ivar sub_state: Additional data on the state of the task + :vartype sub_state: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'readonly': True}, + 'creation_time_utc': {'readonly': True}, + 'last_state_change_time_utc': {'readonly': True}, + 'sub_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'creation_time_utc': {'key': 'properties.creationTimeUtc', 'type': 'iso-8601'}, + 'security_task_parameters': {'key': 'properties.securityTaskParameters', 'type': 'SecurityTaskParameters'}, + 'last_state_change_time_utc': {'key': 'properties.lastStateChangeTimeUtc', 'type': 'iso-8601'}, + 'sub_state': {'key': 'properties.subState', 'type': 'str'}, + } + + def __init__(self, *, security_task_parameters=None, **kwargs) -> None: + super(SecurityTask, self).__init__(**kwargs) + self.state = None + self.creation_time_utc = None + self.security_task_parameters = security_task_parameters + self.last_state_change_time_utc = None + self.sub_state = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/sensitivity_label.py b/azure-mgmt-security/azure/mgmt/security/models/sensitivity_label.py new file mode 100644 index 000000000000..09fd4a0bee30 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/sensitivity_label.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SensitivityLabel(Model): + """The sensitivity label. + + :param display_name: The name of the sensitivity label. + :type display_name: str + :param order: The order of the sensitivity label. + :type order: float + :param enabled: Indicates whether the label is enabled or not. + :type enabled: bool + """ + + _attribute_map = { + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'order': {'key': 'order', 'type': 'float'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SensitivityLabel, self).__init__(**kwargs) + self.display_name = kwargs.get('display_name', None) + self.order = kwargs.get('order', None) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/sensitivity_label_py3.py b/azure-mgmt-security/azure/mgmt/security/models/sensitivity_label_py3.py new file mode 100644 index 000000000000..79b0766f48c8 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/sensitivity_label_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SensitivityLabel(Model): + """The sensitivity label. + + :param display_name: The name of the sensitivity label. + :type display_name: str + :param order: The order of the sensitivity label. + :type order: float + :param enabled: Indicates whether the label is enabled or not. + :type enabled: bool + """ + + _attribute_map = { + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'order': {'key': 'order', 'type': 'float'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, display_name: str=None, order: float=None, enabled: bool=None, **kwargs) -> None: + super(SensitivityLabel, self).__init__(**kwargs) + self.display_name = display_name + self.order = order + self.enabled = enabled diff --git a/azure-mgmt-security/azure/mgmt/security/models/setting.py b/azure-mgmt-security/azure/mgmt/security/models/setting.py new file mode 100644 index 000000000000..6d9a06822f41 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/setting.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Setting(Model): + """Represents a security setting in Azure Security Center. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: DataExportSetting + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param kind: Required. Constant filled by server. + :type kind: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + } + + _subtype_map = { + 'kind': {'DataExportSetting': 'DataExportSetting'} + } + + def __init__(self, **kwargs): + super(Setting, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.kind = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/setting_kind1.py b/azure-mgmt-security/azure/mgmt/security/models/setting_kind1.py new file mode 100644 index 000000000000..4f3753aae68d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/setting_kind1.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SettingKind1(Model): + """The kind of the security setting. + + :param kind: the kind of the settings string. Possible values include: + 'DataExportSetting' + :type kind: str or ~azure.mgmt.security.models.SettingKind + """ + + _attribute_map = { + 'kind': {'key': 'kind', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SettingKind1, self).__init__(**kwargs) + self.kind = kwargs.get('kind', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/setting_kind1_py3.py b/azure-mgmt-security/azure/mgmt/security/models/setting_kind1_py3.py new file mode 100644 index 000000000000..33f8f077ff41 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/setting_kind1_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SettingKind1(Model): + """The kind of the security setting. + + :param kind: the kind of the settings string. Possible values include: + 'DataExportSetting' + :type kind: str or ~azure.mgmt.security.models.SettingKind + """ + + _attribute_map = { + 'kind': {'key': 'kind', 'type': 'str'}, + } + + def __init__(self, *, kind=None, **kwargs) -> None: + super(SettingKind1, self).__init__(**kwargs) + self.kind = kind diff --git a/azure-mgmt-security/azure/mgmt/security/models/setting_paged.py b/azure-mgmt-security/azure/mgmt/security/models/setting_paged.py new file mode 100644 index 000000000000..5ab8b2585b4a --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/setting_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SettingPaged(Paged): + """ + A paging container for iterating over a list of :class:`Setting ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Setting]'} + } + + def __init__(self, *args, **kwargs): + + super(SettingPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/setting_py3.py b/azure-mgmt-security/azure/mgmt/security/models/setting_py3.py new file mode 100644 index 000000000000..fa644684fb2f --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/setting_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Setting(Model): + """Represents a security setting in Azure Security Center. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: DataExportSetting + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param kind: Required. Constant filled by server. + :type kind: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kind': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + } + + _subtype_map = { + 'kind': {'DataExportSetting': 'DataExportSetting'} + } + + def __init__(self, **kwargs) -> None: + super(Setting, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.kind = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_resource.py b/azure-mgmt-security/azure/mgmt/security/models/topology_resource.py new file mode 100644 index 000000000000..6bf07b3d3164 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_resource.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyResource(Model): + """TopologyResource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :ivar calculated_date_time: The UTC time on which the topology was + calculated + :vartype calculated_date_time: datetime + :ivar topology_resources: Azure resources which are part of this topology + resource + :vartype topology_resources: + list[~azure.mgmt.security.models.TopologySingleResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'calculated_date_time': {'readonly': True}, + 'topology_resources': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'calculated_date_time': {'key': 'properties.calculatedDateTime', 'type': 'iso-8601'}, + 'topology_resources': {'key': 'properties.topologyResources', 'type': '[TopologySingleResource]'}, + } + + def __init__(self, **kwargs): + super(TopologyResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = None + self.calculated_date_time = None + self.topology_resources = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_resource_paged.py b/azure-mgmt-security/azure/mgmt/security/models/topology_resource_paged.py new file mode 100644 index 000000000000..8c104aa5970a --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_resource_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class TopologyResourcePaged(Paged): + """ + A paging container for iterating over a list of :class:`TopologyResource ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[TopologyResource]'} + } + + def __init__(self, *args, **kwargs): + + super(TopologyResourcePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_resource_py3.py b/azure-mgmt-security/azure/mgmt/security/models/topology_resource_py3.py new file mode 100644 index 000000000000..00cca774a552 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_resource_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologyResource(Model): + """TopologyResource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :ivar location: Location where the resource is stored + :vartype location: str + :ivar calculated_date_time: The UTC time on which the topology was + calculated + :vartype calculated_date_time: datetime + :ivar topology_resources: Azure resources which are part of this topology + resource + :vartype topology_resources: + list[~azure.mgmt.security.models.TopologySingleResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'readonly': True}, + 'calculated_date_time': {'readonly': True}, + 'topology_resources': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'calculated_date_time': {'key': 'properties.calculatedDateTime', 'type': 'iso-8601'}, + 'topology_resources': {'key': 'properties.topologyResources', 'type': '[TopologySingleResource]'}, + } + + def __init__(self, **kwargs) -> None: + super(TopologyResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = None + self.calculated_date_time = None + self.topology_resources = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource.py b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource.py new file mode 100644 index 000000000000..f79f4c0f1a73 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologySingleResource(Model): + """TopologySingleResource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_id: Azure resource id + :vartype resource_id: str + :ivar severity: The security severity of the resource + :vartype severity: str + :ivar recommendations_exist: Indicates if the resource has security + recommendations + :vartype recommendations_exist: bool + :ivar network_zones: Indicates the resource connectivity level to the + Internet (InternetFacing, Internal ,etc.) + :vartype network_zones: str + :ivar topology_score: Score of the resource based on its security severity + :vartype topology_score: int + :ivar location: The location of this resource + :vartype location: str + :ivar parents: Azure resources connected to this resource which are in + higher level in the topology view + :vartype parents: + list[~azure.mgmt.security.models.TopologySingleResourceParent] + :ivar children: Azure resources connected to this resource which are in + lower level in the topology view + :vartype children: + list[~azure.mgmt.security.models.TopologySingleResourceChild] + """ + + _validation = { + 'resource_id': {'readonly': True}, + 'severity': {'readonly': True}, + 'recommendations_exist': {'readonly': True}, + 'network_zones': {'readonly': True}, + 'topology_score': {'readonly': True}, + 'location': {'readonly': True}, + 'parents': {'readonly': True}, + 'children': {'readonly': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'recommendations_exist': {'key': 'recommendationsExist', 'type': 'bool'}, + 'network_zones': {'key': 'networkZones', 'type': 'str'}, + 'topology_score': {'key': 'topologyScore', 'type': 'int'}, + 'location': {'key': 'location', 'type': 'str'}, + 'parents': {'key': 'parents', 'type': '[TopologySingleResourceParent]'}, + 'children': {'key': 'children', 'type': '[TopologySingleResourceChild]'}, + } + + def __init__(self, **kwargs): + super(TopologySingleResource, self).__init__(**kwargs) + self.resource_id = None + self.severity = None + self.recommendations_exist = None + self.network_zones = None + self.topology_score = None + self.location = None + self.parents = None + self.children = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_child.py b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_child.py new file mode 100644 index 000000000000..257d81aab76d --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_child.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologySingleResourceChild(Model): + """TopologySingleResourceChild. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_id: Azure resource id which serves as child resource in + topology view + :vartype resource_id: str + """ + + _validation = { + 'resource_id': {'readonly': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TopologySingleResourceChild, self).__init__(**kwargs) + self.resource_id = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_child_py3.py b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_child_py3.py new file mode 100644 index 000000000000..a4e41c33fe64 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_child_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologySingleResourceChild(Model): + """TopologySingleResourceChild. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_id: Azure resource id which serves as child resource in + topology view + :vartype resource_id: str + """ + + _validation = { + 'resource_id': {'readonly': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(TopologySingleResourceChild, self).__init__(**kwargs) + self.resource_id = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_parent.py b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_parent.py new file mode 100644 index 000000000000..c79aba299feb --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_parent.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologySingleResourceParent(Model): + """TopologySingleResourceParent. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_id: Azure resource id which serves as parent resource in + topology view + :vartype resource_id: str + """ + + _validation = { + 'resource_id': {'readonly': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TopologySingleResourceParent, self).__init__(**kwargs) + self.resource_id = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_parent_py3.py b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_parent_py3.py new file mode 100644 index 000000000000..6249dcea8849 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_parent_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologySingleResourceParent(Model): + """TopologySingleResourceParent. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_id: Azure resource id which serves as parent resource in + topology view + :vartype resource_id: str + """ + + _validation = { + 'resource_id': {'readonly': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(TopologySingleResourceParent, self).__init__(**kwargs) + self.resource_id = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_py3.py b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_py3.py new file mode 100644 index 000000000000..529974e5619a --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/topology_single_resource_py3.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopologySingleResource(Model): + """TopologySingleResource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar resource_id: Azure resource id + :vartype resource_id: str + :ivar severity: The security severity of the resource + :vartype severity: str + :ivar recommendations_exist: Indicates if the resource has security + recommendations + :vartype recommendations_exist: bool + :ivar network_zones: Indicates the resource connectivity level to the + Internet (InternetFacing, Internal ,etc.) + :vartype network_zones: str + :ivar topology_score: Score of the resource based on its security severity + :vartype topology_score: int + :ivar location: The location of this resource + :vartype location: str + :ivar parents: Azure resources connected to this resource which are in + higher level in the topology view + :vartype parents: + list[~azure.mgmt.security.models.TopologySingleResourceParent] + :ivar children: Azure resources connected to this resource which are in + lower level in the topology view + :vartype children: + list[~azure.mgmt.security.models.TopologySingleResourceChild] + """ + + _validation = { + 'resource_id': {'readonly': True}, + 'severity': {'readonly': True}, + 'recommendations_exist': {'readonly': True}, + 'network_zones': {'readonly': True}, + 'topology_score': {'readonly': True}, + 'location': {'readonly': True}, + 'parents': {'readonly': True}, + 'children': {'readonly': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'recommendations_exist': {'key': 'recommendationsExist', 'type': 'bool'}, + 'network_zones': {'key': 'networkZones', 'type': 'str'}, + 'topology_score': {'key': 'topologyScore', 'type': 'int'}, + 'location': {'key': 'location', 'type': 'str'}, + 'parents': {'key': 'parents', 'type': '[TopologySingleResourceParent]'}, + 'children': {'key': 'children', 'type': '[TopologySingleResourceChild]'}, + } + + def __init__(self, **kwargs) -> None: + super(TopologySingleResource, self).__init__(**kwargs) + self.resource_id = None + self.severity = None + self.recommendations_exist = None + self.network_zones = None + self.topology_score = None + self.location = None + self.parents = None + self.children = None diff --git a/azure-mgmt-security/azure/mgmt/security/models/workspace_setting.py b/azure-mgmt-security/azure/mgmt/security/models/workspace_setting.py new file mode 100644 index 000000000000..327a5b9d8897 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/workspace_setting.py @@ -0,0 +1,57 @@ +# 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 .resource import Resource + + +class WorkspaceSetting(Resource): + """Configures where to store the OMS agent data for workspaces under a scope. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param workspace_id: Required. The full Azure ID of the workspace to save + the data in + :type workspace_id: str + :param scope: Required. All the VMs in this scope will send their security + data to the mentioned workspace unless overridden by a setting with more + specific scope + :type scope: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'workspace_id': {'required': True}, + 'scope': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'workspace_id': {'key': 'properties.workspaceId', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(WorkspaceSetting, self).__init__(**kwargs) + self.workspace_id = kwargs.get('workspace_id', None) + self.scope = kwargs.get('scope', None) diff --git a/azure-mgmt-security/azure/mgmt/security/models/workspace_setting_paged.py b/azure-mgmt-security/azure/mgmt/security/models/workspace_setting_paged.py new file mode 100644 index 000000000000..95122f57b90e --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/workspace_setting_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class WorkspaceSettingPaged(Paged): + """ + A paging container for iterating over a list of :class:`WorkspaceSetting ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[WorkspaceSetting]'} + } + + def __init__(self, *args, **kwargs): + + super(WorkspaceSettingPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-security/azure/mgmt/security/models/workspace_setting_py3.py b/azure-mgmt-security/azure/mgmt/security/models/workspace_setting_py3.py new file mode 100644 index 000000000000..aaa1be0b59a9 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/models/workspace_setting_py3.py @@ -0,0 +1,57 @@ +# 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 .resource_py3 import Resource + + +class WorkspaceSetting(Resource): + """Configures where to store the OMS agent data for workspaces under a scope. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource Id + :vartype id: str + :ivar name: Resource name + :vartype name: str + :ivar type: Resource type + :vartype type: str + :param workspace_id: Required. The full Azure ID of the workspace to save + the data in + :type workspace_id: str + :param scope: Required. All the VMs in this scope will send their security + data to the mentioned workspace unless overridden by a setting with more + specific scope + :type scope: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'workspace_id': {'required': True}, + 'scope': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'workspace_id': {'key': 'properties.workspaceId', 'type': 'str'}, + 'scope': {'key': 'properties.scope', 'type': 'str'}, + } + + def __init__(self, *, workspace_id: str, scope: str, **kwargs) -> None: + super(WorkspaceSetting, self).__init__(**kwargs) + self.workspace_id = workspace_id + self.scope = scope diff --git a/azure-mgmt-security/azure/mgmt/security/operations/__init__.py b/azure-mgmt-security/azure/mgmt/security/operations/__init__.py new file mode 100644 index 000000000000..14d284151ba7 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/__init__.py @@ -0,0 +1,46 @@ +# 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 .pricings_operations import PricingsOperations +from .security_contacts_operations import SecurityContactsOperations +from .workspace_settings_operations import WorkspaceSettingsOperations +from .auto_provisioning_settings_operations import AutoProvisioningSettingsOperations +from .compliances_operations import CompliancesOperations +from .advanced_threat_protection_operations import AdvancedThreatProtectionOperations +from .settings_operations import SettingsOperations +from .information_protection_policies_operations import InformationProtectionPoliciesOperations +from .operations import Operations +from .locations_operations import LocationsOperations +from .tasks_operations import TasksOperations +from .alerts_operations import AlertsOperations +from .discovered_security_solutions_operations import DiscoveredSecuritySolutionsOperations +from .jit_network_access_policies_operations import JitNetworkAccessPoliciesOperations +from .external_security_solutions_operations import ExternalSecuritySolutionsOperations +from .topology_operations import TopologyOperations + +__all__ = [ + 'PricingsOperations', + 'SecurityContactsOperations', + 'WorkspaceSettingsOperations', + 'AutoProvisioningSettingsOperations', + 'CompliancesOperations', + 'AdvancedThreatProtectionOperations', + 'SettingsOperations', + 'InformationProtectionPoliciesOperations', + 'Operations', + 'LocationsOperations', + 'TasksOperations', + 'AlertsOperations', + 'DiscoveredSecuritySolutionsOperations', + 'JitNetworkAccessPoliciesOperations', + 'ExternalSecuritySolutionsOperations', + 'TopologyOperations', +] diff --git a/azure-mgmt-security/azure/mgmt/security/operations/advanced_threat_protection_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/advanced_threat_protection_operations.py new file mode 100644 index 000000000000..2bdef2916fbc --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/advanced_threat_protection_operations.py @@ -0,0 +1,171 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AdvancedThreatProtectionOperations(object): + """AdvancedThreatProtectionOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2017-08-01-preview". + :ivar setting_name: Advanced Threat Protection setting name. Constant value: "current". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-08-01-preview" + self.setting_name = "current" + + self.config = config + + def get( + self, resource_id, custom_headers=None, raw=False, **operation_config): + """Gets the Advanced Threat Protection settings for the specified + resource. + + :param resource_id: The identifier of the resource. + :type resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AdvancedThreatProtectionSetting or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceId': self._serialize.url("resource_id", resource_id, 'str'), + 'settingName': self._serialize.url("self.setting_name", self.setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AdvancedThreatProtectionSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/{resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}'} + + def create( + self, resource_id, is_enabled=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates the Advanced Threat Protection settings on a + specified resource. + + :param resource_id: The identifier of the resource. + :type resource_id: str + :param is_enabled: Indicates whether Advanced Threat Protection is + enabled. + :type is_enabled: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AdvancedThreatProtectionSetting or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.security.models.AdvancedThreatProtectionSetting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + advanced_threat_protection_setting = models.AdvancedThreatProtectionSetting(is_enabled=is_enabled) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceId': self._serialize.url("resource_id", resource_id, 'str'), + 'settingName': self._serialize.url("self.setting_name", self.setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(advanced_threat_protection_setting, 'AdvancedThreatProtectionSetting') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AdvancedThreatProtectionSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create.metadata = {'url': '/{resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/alerts_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/alerts_operations.py new file mode 100644 index 000000000000..5ce45a717eb5 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/alerts_operations.py @@ -0,0 +1,593 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AlertsOperations(object): + """AlertsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2015-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-06-01-preview" + + self.config = config + + def list( + self, filter=None, select=None, expand=None, custom_headers=None, raw=False, **operation_config): + """List all the alerts that are associated with the subscription. + + :param filter: OData filter. Optional. + :type filter: str + :param select: OData select. Optional. + :type select: str + :param expand: OData expand. Optional. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Alert + :rtype: + ~azure.mgmt.security.models.AlertPaged[~azure.mgmt.security.models.Alert] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if select is not None: + query_parameters['$select'] = self._serialize.query("select", select, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AlertPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AlertPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/alerts'} + + def list_by_resource_group( + self, resource_group_name, filter=None, select=None, expand=None, custom_headers=None, raw=False, **operation_config): + """List all the alerts alerts that are associated with the resource group. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param filter: OData filter. Optional. + :type filter: str + :param select: OData select. Optional. + :type select: str + :param expand: OData expand. Optional. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Alert + :rtype: + ~azure.mgmt.security.models.AlertPaged[~azure.mgmt.security.models.Alert] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if select is not None: + query_parameters['$select'] = self._serialize.query("select", select, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AlertPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AlertPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/alerts'} + + def list_subscription_level_alerts_by_region( + self, filter=None, select=None, expand=None, custom_headers=None, raw=False, **operation_config): + """List all the alerts that are associated with the subscription that are + stored in a specific location. + + :param filter: OData filter. Optional. + :type filter: str + :param select: OData select. Optional. + :type select: str + :param expand: OData expand. Optional. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Alert + :rtype: + ~azure.mgmt.security.models.AlertPaged[~azure.mgmt.security.models.Alert] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_subscription_level_alerts_by_region.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if select is not None: + query_parameters['$select'] = self._serialize.query("select", select, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AlertPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AlertPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_subscription_level_alerts_by_region.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts'} + + def list_resource_group_level_alerts_by_region( + self, resource_group_name, filter=None, select=None, expand=None, custom_headers=None, raw=False, **operation_config): + """List all the alerts that are associated with the resource group that + are stored in a specific location. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param filter: OData filter. Optional. + :type filter: str + :param select: OData select. Optional. + :type select: str + :param expand: OData expand. Optional. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Alert + :rtype: + ~azure.mgmt.security.models.AlertPaged[~azure.mgmt.security.models.Alert] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_resource_group_level_alerts_by_region.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + if select is not None: + query_parameters['$select'] = self._serialize.query("select", select, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AlertPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AlertPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_resource_group_level_alerts_by_region.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts'} + + def get_subscription_level_alert( + self, alert_name, custom_headers=None, raw=False, **operation_config): + """Get an alert that is associated with a subscription. + + :param alert_name: Name of the alert object + :type alert_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Alert or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Alert or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_subscription_level_alert.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'alertName': self._serialize.url("alert_name", alert_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Alert', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_subscription_level_alert.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}'} + + def get_resource_group_level_alerts( + self, alert_name, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Get an alert that is associated a resource group or a resource in a + resource group. + + :param alert_name: Name of the alert object + :type alert_name: str + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Alert or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Alert or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_resource_group_level_alerts.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'alertName': self._serialize.url("alert_name", alert_name, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Alert', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_resource_group_level_alerts.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}'} + + def update_subscription_level_alert_state( + self, alert_name, alert_update_action_type, custom_headers=None, raw=False, **operation_config): + """Update the alert's state. + + :param alert_name: Name of the alert object + :type alert_name: str + :param alert_update_action_type: Type of the action to do on the + alert. Possible values include: 'Dismiss', 'Reactivate' + :type alert_update_action_type: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update_subscription_level_alert_state.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'alertName': self._serialize.url("alert_name", alert_name, 'str'), + 'alertUpdateActionType': self._serialize.url("alert_update_action_type", alert_update_action_type, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update_subscription_level_alert_state.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/{alertUpdateActionType}'} + + def update_resource_group_level_alert_state( + self, alert_name, alert_update_action_type, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Update the alert's state. + + :param alert_name: Name of the alert object + :type alert_name: str + :param alert_update_action_type: Type of the action to do on the + alert. Possible values include: 'Dismiss', 'Reactivate' + :type alert_update_action_type: str + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update_resource_group_level_alert_state.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'alertName': self._serialize.url("alert_name", alert_name, 'str'), + 'alertUpdateActionType': self._serialize.url("alert_update_action_type", alert_update_action_type, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update_resource_group_level_alert_state.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/{alertUpdateActionType}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/auto_provisioning_settings_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/auto_provisioning_settings_operations.py new file mode 100644 index 000000000000..9d6eccd8d530 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/auto_provisioning_settings_operations.py @@ -0,0 +1,229 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AutoProvisioningSettingsOperations(object): + """AutoProvisioningSettingsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2017-08-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-08-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Exposes the auto provisioning settings of the subscriptions. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AutoProvisioningSetting + :rtype: + ~azure.mgmt.security.models.AutoProvisioningSettingPaged[~azure.mgmt.security.models.AutoProvisioningSetting] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AutoProvisioningSettingPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AutoProvisioningSettingPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings'} + + def get( + self, setting_name, custom_headers=None, raw=False, **operation_config): + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key + :type setting_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AutoProvisioningSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'settingName': self._serialize.url("setting_name", setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AutoProvisioningSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings/{settingName}'} + + def create( + self, setting_name, auto_provision, custom_headers=None, raw=False, **operation_config): + """Details of a specific setting. + + :param setting_name: Auto provisioning setting key + :type setting_name: str + :param auto_provision: Describes what kind of security agent + provisioning action to take. Possible values include: 'On', 'Off' + :type auto_provision: str or ~azure.mgmt.security.models.AutoProvision + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AutoProvisioningSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.AutoProvisioningSetting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + setting = models.AutoProvisioningSetting(auto_provision=auto_provision) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'settingName': self._serialize.url("setting_name", setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(setting, 'AutoProvisioningSetting') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AutoProvisioningSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings/{settingName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/compliances_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/compliances_operations.py new file mode 100644 index 000000000000..3edc73a4fc32 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/compliances_operations.py @@ -0,0 +1,169 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class CompliancesOperations(object): + """CompliancesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2017-08-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-08-01-preview" + + self.config = config + + def list( + self, scope, custom_headers=None, raw=False, **operation_config): + """The Compliance scores of the specific management group. + + :param scope: Scope of the query, can be subscription + (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management + group (/providers/Microsoft.Management/managementGroups/mgName). + :type scope: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Compliance + :rtype: + ~azure.mgmt.security.models.CompliancePaged[~azure.mgmt.security.models.Compliance] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'scope': self._serialize.url("scope", scope, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.CompliancePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.CompliancePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/{scope}/providers/Microsoft.Security/compliances'} + + def get( + self, scope, compliance_name, custom_headers=None, raw=False, **operation_config): + """Details of a specific Compliance. + + :param scope: Scope of the query, can be subscription + (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management + group (/providers/Microsoft.Management/managementGroups/mgName). + :type scope: str + :param compliance_name: name of the Compliance + :type compliance_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Compliance or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Compliance or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'scope': self._serialize.url("scope", scope, 'str'), + 'complianceName': self._serialize.url("compliance_name", compliance_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Compliance', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/{scope}/providers/Microsoft.Security/compliances/{complianceName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/discovered_security_solutions_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/discovered_security_solutions_operations.py new file mode 100644 index 000000000000..339bbfddd5bf --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/discovered_security_solutions_operations.py @@ -0,0 +1,233 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class DiscoveredSecuritySolutionsOperations(object): + """DiscoveredSecuritySolutionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2015-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-06-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list of discovered Security Solutions for the subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DiscoveredSecuritySolution + :rtype: + ~azure.mgmt.security.models.DiscoveredSecuritySolutionPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DiscoveredSecuritySolutionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DiscoveredSecuritySolutionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/discoveredSecuritySolutions'} + + def list_by_home_region( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list of discovered Security Solutions for the subscription and + location. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DiscoveredSecuritySolution + :rtype: + ~azure.mgmt.security.models.DiscoveredSecuritySolutionPaged[~azure.mgmt.security.models.DiscoveredSecuritySolution] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_home_region.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.DiscoveredSecuritySolutionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DiscoveredSecuritySolutionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_home_region.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions'} + + def get( + self, resource_group_name, discovered_security_solution_name, custom_headers=None, raw=False, **operation_config): + """Gets a specific discovered Security Solution. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param discovered_security_solution_name: Name of a discovered + security solution. + :type discovered_security_solution_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DiscoveredSecuritySolution or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.DiscoveredSecuritySolution or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'discoveredSecuritySolutionName': self._serialize.url("discovered_security_solution_name", discovered_security_solution_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DiscoveredSecuritySolution', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions/{discoveredSecuritySolutionName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/external_security_solutions_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/external_security_solutions_operations.py new file mode 100644 index 000000000000..3286ae570426 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/external_security_solutions_operations.py @@ -0,0 +1,233 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ExternalSecuritySolutionsOperations(object): + """ExternalSecuritySolutionsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2015-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-06-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list of external security solutions for the subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExternalSecuritySolution + :rtype: + ~azure.mgmt.security.models.ExternalSecuritySolutionPaged[~azure.mgmt.security.models.ExternalSecuritySolution] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExternalSecuritySolutionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExternalSecuritySolutionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/externalSecuritySolutions'} + + def list_by_home_region( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list of external Security Solutions for the subscription and + location. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExternalSecuritySolution + :rtype: + ~azure.mgmt.security.models.ExternalSecuritySolutionPaged[~azure.mgmt.security.models.ExternalSecuritySolution] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_home_region.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ExternalSecuritySolutionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ExternalSecuritySolutionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_home_region.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions'} + + def get( + self, resource_group_name, external_security_solutions_name, custom_headers=None, raw=False, **operation_config): + """Gets a specific external Security Solution. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param external_security_solutions_name: Name of an external security + solution. + :type external_security_solutions_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExternalSecuritySolution or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.ExternalSecuritySolution or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'externalSecuritySolutionsName': self._serialize.url("external_security_solutions_name", external_security_solutions_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExternalSecuritySolution', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions/{externalSecuritySolutionsName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/information_protection_policies_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/information_protection_policies_operations.py new file mode 100644 index 000000000000..d4c5fe7329b4 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/information_protection_policies_operations.py @@ -0,0 +1,236 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class InformationProtectionPoliciesOperations(object): + """InformationProtectionPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2017-08-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-08-01-preview" + + self.config = config + + def get( + self, scope, information_protection_policy_name, custom_headers=None, raw=False, **operation_config): + """Details of the information protection policy. + + :param scope: Scope of the query, can be subscription + (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management + group (/providers/Microsoft.Management/managementGroups/mgName). + :type scope: str + :param information_protection_policy_name: Name of the information + protection policy. Possible values include: 'effective', 'custom' + :type information_protection_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: InformationProtectionPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'scope': self._serialize.url("scope", scope, 'str'), + 'informationProtectionPolicyName': self._serialize.url("information_protection_policy_name", information_protection_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InformationProtectionPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/{scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}'} + + def create_or_update( + self, scope, information_protection_policy_name, custom_headers=None, raw=False, **operation_config): + """Details of the information protection policy. + + :param scope: Scope of the query, can be subscription + (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management + group (/providers/Microsoft.Management/managementGroups/mgName). + :type scope: str + :param information_protection_policy_name: Name of the information + protection policy. Possible values include: 'effective', 'custom' + :type information_protection_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: InformationProtectionPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.InformationProtectionPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'scope': self._serialize.url("scope", scope, 'str'), + 'informationProtectionPolicyName': self._serialize.url("information_protection_policy_name", information_protection_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InformationProtectionPolicy', response) + if response.status_code == 201: + deserialized = self._deserialize('InformationProtectionPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/{scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}'} + + def list( + self, scope, custom_headers=None, raw=False, **operation_config): + """Information protection policies of a specific management group. + + :param scope: Scope of the query, can be subscription + (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management + group (/providers/Microsoft.Management/managementGroups/mgName). + :type scope: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of InformationProtectionPolicy + :rtype: + ~azure.mgmt.security.models.InformationProtectionPolicyPaged[~azure.mgmt.security.models.InformationProtectionPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'scope': self._serialize.url("scope", scope, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.InformationProtectionPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.InformationProtectionPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/{scope}/providers/Microsoft.Security/informationProtectionPolicies'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/jit_network_access_policies_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/jit_network_access_policies_operations.py new file mode 100644 index 000000000000..a8b9c88bed35 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/jit_network_access_policies_operations.py @@ -0,0 +1,580 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class JitNetworkAccessPoliciesOperations(object): + """JitNetworkAccessPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2015-06-01-preview". + :ivar jit_network_access_policy_initiate_type: Type of the action to do on the Just-in-Time access policy. Constant value: "initiate". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-06-01-preview" + self.jit_network_access_policy_initiate_type = "initiate" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Policies for protecting resources using Just-in-Time access control. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: + ~azure.mgmt.security.models.JitNetworkAccessPolicyPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.JitNetworkAccessPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.JitNetworkAccessPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/jitNetworkAccessPolicies'} + + def list_by_region( + self, custom_headers=None, raw=False, **operation_config): + """Policies for protecting resources using Just-in-Time access control for + the subscription, location. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: + ~azure.mgmt.security.models.JitNetworkAccessPolicyPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_region.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.JitNetworkAccessPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.JitNetworkAccessPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_region.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Policies for protecting resources using Just-in-Time access control for + the subscription, location. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: + ~azure.mgmt.security.models.JitNetworkAccessPolicyPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.JitNetworkAccessPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.JitNetworkAccessPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/jitNetworkAccessPolicies'} + + def list_by_resource_group_and_region( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Policies for protecting resources using Just-in-Time access control for + the subscription, location. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of JitNetworkAccessPolicy + :rtype: + ~azure.mgmt.security.models.JitNetworkAccessPolicyPaged[~azure.mgmt.security.models.JitNetworkAccessPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group_and_region.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.JitNetworkAccessPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.JitNetworkAccessPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group_and_region.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies'} + + def get( + self, resource_group_name, jit_network_access_policy_name, custom_headers=None, raw=False, **operation_config): + """Policies for protecting resources using Just-in-Time access control for + the subscription, location. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param jit_network_access_policy_name: Name of a Just-in-Time access + configuration policy. + :type jit_network_access_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: JitNetworkAccessPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'jitNetworkAccessPolicyName': self._serialize.url("jit_network_access_policy_name", jit_network_access_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('JitNetworkAccessPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}'} + + def create_or_update( + self, resource_group_name, jit_network_access_policy_name, body, custom_headers=None, raw=False, **operation_config): + """Create a policy for protecting resources using Just-in-Time access + control. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param jit_network_access_policy_name: Name of a Just-in-Time access + configuration policy. + :type jit_network_access_policy_name: str + :param body: + :type body: ~azure.mgmt.security.models.JitNetworkAccessPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: JitNetworkAccessPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.JitNetworkAccessPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'jitNetworkAccessPolicyName': self._serialize.url("jit_network_access_policy_name", jit_network_access_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(body, 'JitNetworkAccessPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('JitNetworkAccessPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}'} + + def delete( + self, resource_group_name, jit_network_access_policy_name, custom_headers=None, raw=False, **operation_config): + """Delete a Just-in-Time access control policy. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param jit_network_access_policy_name: Name of a Just-in-Time access + configuration policy. + :type jit_network_access_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'jitNetworkAccessPolicyName': self._serialize.url("jit_network_access_policy_name", jit_network_access_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}'} + + def initiate( + self, resource_group_name, jit_network_access_policy_name, virtual_machines, custom_headers=None, raw=False, **operation_config): + """Initiate a JIT access from a specific Just-in-Time policy + configuration. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param jit_network_access_policy_name: Name of a Just-in-Time access + configuration policy. + :type jit_network_access_policy_name: str + :param virtual_machines: A list of virtual machines & ports to open + access for + :type virtual_machines: + list[~azure.mgmt.security.models.JitNetworkAccessPolicyInitiateVirtualMachine] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: JitNetworkAccessRequest or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.JitNetworkAccessRequest or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + body = models.JitNetworkAccessPolicyInitiateRequest(virtual_machines=virtual_machines) + + # Construct URL + url = self.initiate.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'jitNetworkAccessPolicyName': self._serialize.url("jit_network_access_policy_name", jit_network_access_policy_name, 'str'), + 'jitNetworkAccessPolicyInitiateType': self._serialize.url("self.jit_network_access_policy_initiate_type", self.jit_network_access_policy_initiate_type, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(body, 'JitNetworkAccessPolicyInitiateRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 202: + deserialized = self._deserialize('JitNetworkAccessRequest', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + initiate.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}/{jitNetworkAccessPolicyInitiateType}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/locations_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/locations_operations.py new file mode 100644 index 000000000000..5aa7ba17569f --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/locations_operations.py @@ -0,0 +1,162 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LocationsOperations(object): + """LocationsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2015-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-06-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """The location of the responsible ASC of the specific subscription (home + region). For each subscription there is only one responsible location. + The location in the response should be used to read or write other + resources in ASC according to their ID. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AscLocation + :rtype: + ~azure.mgmt.security.models.AscLocationPaged[~azure.mgmt.security.models.AscLocation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.AscLocationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.AscLocationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations'} + + def get( + self, custom_headers=None, raw=False, **operation_config): + """Details of a specific location. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AscLocation or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.AscLocation or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AscLocation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/operations.py b/azure-mgmt-security/azure/mgmt/security/operations/operations.py new file mode 100644 index 000000000000..5a2cacc56e2f --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/operations.py @@ -0,0 +1,98 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2015-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-06-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Exposes all available operations for discovery purposes. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.security.models.OperationPaged[~azure.mgmt.security.models.Operation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.Security/operations'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/pricings_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/pricings_operations.py new file mode 100644 index 000000000000..60cc30172f7e --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/pricings_operations.py @@ -0,0 +1,433 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class PricingsOperations(object): + """PricingsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2017-08-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-08-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Security pricing configurations in the subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Pricing + :rtype: + ~azure.mgmt.security.models.PricingPaged[~azure.mgmt.security.models.Pricing] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PricingPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PricingPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Security pricing configurations in the resource group. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Pricing + :rtype: + ~azure.mgmt.security.models.PricingPaged[~azure.mgmt.security.models.Pricing] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.PricingPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.PricingPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/pricings'} + + def get_subscription_pricing( + self, pricing_name, custom_headers=None, raw=False, **operation_config): + """Security pricing configuration in the subscriptionSecurity pricing + configuration in the subscription. + + :param pricing_name: name of the pricing configuration + :type pricing_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Pricing or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Pricing or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_subscription_pricing.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'pricingName': self._serialize.url("pricing_name", pricing_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Pricing', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_subscription_pricing.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}'} + + def update_subscription_pricing( + self, pricing_name, pricing_tier, custom_headers=None, raw=False, **operation_config): + """Security pricing configuration in the subscription. + + :param pricing_name: name of the pricing configuration + :type pricing_name: str + :param pricing_tier: Pricing tier type. Possible values include: + 'Free', 'Standard' + :type pricing_tier: str or ~azure.mgmt.security.models.PricingTier + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Pricing or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Pricing or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + pricing = models.Pricing(pricing_tier=pricing_tier) + + # Construct URL + url = self.update_subscription_pricing.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'pricingName': self._serialize.url("pricing_name", pricing_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(pricing, 'Pricing') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Pricing', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_subscription_pricing.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}'} + + def get_resource_group_pricing( + self, resource_group_name, pricing_name, custom_headers=None, raw=False, **operation_config): + """Security pricing configuration in the resource group. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param pricing_name: name of the pricing configuration + :type pricing_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Pricing or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Pricing or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_resource_group_pricing.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'pricingName': self._serialize.url("pricing_name", pricing_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Pricing', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_resource_group_pricing.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/pricings/{pricingName}'} + + def create_or_update_resource_group_pricing( + self, resource_group_name, pricing_name, pricing_tier, custom_headers=None, raw=False, **operation_config): + """Security pricing configuration in the resource group. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param pricing_name: name of the pricing configuration + :type pricing_name: str + :param pricing_tier: Pricing tier type. Possible values include: + 'Free', 'Standard' + :type pricing_tier: str or ~azure.mgmt.security.models.PricingTier + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Pricing or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Pricing or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + pricing = models.Pricing(pricing_tier=pricing_tier) + + # Construct URL + url = self.create_or_update_resource_group_pricing.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'pricingName': self._serialize.url("pricing_name", pricing_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(pricing, 'Pricing') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Pricing', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update_resource_group_pricing.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/pricings/{pricingName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/security_contacts_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/security_contacts_operations.py new file mode 100644 index 000000000000..9a1c12a66205 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/security_contacts_operations.py @@ -0,0 +1,341 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class SecurityContactsOperations(object): + """SecurityContactsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2017-08-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-08-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Security contact configurations for the subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityContact + :rtype: + ~azure.mgmt.security.models.SecurityContactPaged[~azure.mgmt.security.models.SecurityContact] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SecurityContactPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecurityContactPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts'} + + def get( + self, security_contact_name, custom_headers=None, raw=False, **operation_config): + """Security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object + :type security_contact_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityContact or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.SecurityContact or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'securityContactName': self._serialize.url("security_contact_name", security_contact_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityContact', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}'} + + def create( + self, security_contact_name, security_contact, custom_headers=None, raw=False, **operation_config): + """Security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object + :type security_contact_name: str + :param security_contact: Security contact object + :type security_contact: ~azure.mgmt.security.models.SecurityContact + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityContact or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.SecurityContact or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'securityContactName': self._serialize.url("security_contact_name", security_contact_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(security_contact, 'SecurityContact') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityContact', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}'} + + def delete( + self, security_contact_name, custom_headers=None, raw=False, **operation_config): + """Security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object + :type security_contact_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'securityContactName': self._serialize.url("security_contact_name", security_contact_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}'} + + def update( + self, security_contact_name, security_contact, custom_headers=None, raw=False, **operation_config): + """Security contact configurations for the subscription. + + :param security_contact_name: Name of the security contact object + :type security_contact_name: str + :param security_contact: Security contact object + :type security_contact: ~azure.mgmt.security.models.SecurityContact + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityContact or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.SecurityContact or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'securityContactName': self._serialize.url("security_contact_name", security_contact_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(security_contact, 'SecurityContact') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityContact', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/settings_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/settings_operations.py new file mode 100644 index 000000000000..47b9c1b6d7f5 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/settings_operations.py @@ -0,0 +1,228 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class SettingsOperations(object): + """SettingsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2017-08-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-08-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Settings about different configurations in security center. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Setting + :rtype: + ~azure.mgmt.security.models.SettingPaged[~azure.mgmt.security.models.Setting] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SettingPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SettingPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings'} + + def get( + self, setting_name, custom_headers=None, raw=False, **operation_config): + """Settings of different configurations in security center. + + :param setting_name: Name of setting. Possible values include: 'MCAS', + 'WDATP' + :type setting_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Setting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Setting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'settingName': self._serialize.url("setting_name", setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Setting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings/{settingName}'} + + def update( + self, setting_name, setting, custom_headers=None, raw=False, **operation_config): + """updating settings about different configurations in security center. + + :param setting_name: Name of setting. Possible values include: 'MCAS', + 'WDATP' + :type setting_name: str + :param setting: Setting object + :type setting: ~azure.mgmt.security.models.Setting + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Setting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.Setting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'settingName': self._serialize.url("setting_name", setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(setting, 'Setting') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Setting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings/{settingName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/tasks_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/tasks_operations.py new file mode 100644 index 000000000000..fc002b8368ed --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/tasks_operations.py @@ -0,0 +1,495 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class TasksOperations(object): + """TasksOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2015-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-06-01-preview" + + self.config = config + + def list( + self, filter=None, custom_headers=None, raw=False, **operation_config): + """Recommended tasks that will help improve the security of the + subscription proactively. + + :param filter: OData filter. Optional. + :type filter: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityTask + :rtype: + ~azure.mgmt.security.models.SecurityTaskPaged[~azure.mgmt.security.models.SecurityTask] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SecurityTaskPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecurityTaskPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/tasks'} + + def list_by_home_region( + self, filter=None, custom_headers=None, raw=False, **operation_config): + """Recommended tasks that will help improve the security of the + subscription proactively. + + :param filter: OData filter. Optional. + :type filter: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityTask + :rtype: + ~azure.mgmt.security.models.SecurityTaskPaged[~azure.mgmt.security.models.SecurityTask] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_home_region.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SecurityTaskPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecurityTaskPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_home_region.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks'} + + def get_subscription_level_task( + self, task_name, custom_headers=None, raw=False, **operation_config): + """Recommended tasks that will help improve the security of the + subscription proactively. + + :param task_name: Name of the task object, will be a GUID + :type task_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityTask or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.SecurityTask or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_subscription_level_task.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'taskName': self._serialize.url("task_name", task_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityTask', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_subscription_level_task.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}'} + + def update_subscription_level_task_state( + self, task_name, task_update_action_type, custom_headers=None, raw=False, **operation_config): + """Recommended tasks that will help improve the security of the + subscription proactively. + + :param task_name: Name of the task object, will be a GUID + :type task_name: str + :param task_update_action_type: Type of the action to do on the task. + Possible values include: 'Activate', 'Dismiss', 'Start', 'Resolve', + 'Close' + :type task_update_action_type: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update_subscription_level_task_state.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'taskName': self._serialize.url("task_name", task_name, 'str'), + 'taskUpdateActionType': self._serialize.url("task_update_action_type", task_update_action_type, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update_subscription_level_task_state.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}/{taskUpdateActionType}'} + + def list_by_resource_group( + self, resource_group_name, filter=None, custom_headers=None, raw=False, **operation_config): + """Recommended tasks that will help improve the security of the + subscription proactively. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param filter: OData filter. Optional. + :type filter: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityTask + :rtype: + ~azure.mgmt.security.models.SecurityTaskPaged[~azure.mgmt.security.models.SecurityTask] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SecurityTaskPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SecurityTaskPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks'} + + def get_resource_group_level_task( + self, resource_group_name, task_name, custom_headers=None, raw=False, **operation_config): + """Recommended tasks that will help improve the security of the + subscription proactively. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param task_name: Name of the task object, will be a GUID + :type task_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityTask or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.SecurityTask or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_resource_group_level_task.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'taskName': self._serialize.url("task_name", task_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityTask', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_resource_group_level_task.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}'} + + def update_resource_group_level_task_state( + self, resource_group_name, task_name, task_update_action_type, custom_headers=None, raw=False, **operation_config): + """Recommended tasks that will help improve the security of the + subscription proactively. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param task_name: Name of the task object, will be a GUID + :type task_name: str + :param task_update_action_type: Type of the action to do on the task. + Possible values include: 'Activate', 'Dismiss', 'Start', 'Resolve', + 'Close' + :type task_update_action_type: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update_resource_group_level_task_state.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'taskName': self._serialize.url("task_name", task_name, 'str'), + 'taskUpdateActionType': self._serialize.url("task_update_action_type", task_update_action_type, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + update_resource_group_level_task_state.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}/{taskUpdateActionType}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/topology_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/topology_operations.py new file mode 100644 index 000000000000..75ba584c21f7 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/topology_operations.py @@ -0,0 +1,233 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class TopologyOperations(object): + """TopologyOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2015-06-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2015-06-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list that allows to build a topology view of a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TopologyResource + :rtype: + ~azure.mgmt.security.models.TopologyResourcePaged[~azure.mgmt.security.models.TopologyResource] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.TopologyResourcePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TopologyResourcePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/topologies'} + + def list_by_home_region( + self, custom_headers=None, raw=False, **operation_config): + """Gets a list that allows to build a topology view of a subscription and + location. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of TopologyResource + :rtype: + ~azure.mgmt.security.models.TopologyResourcePaged[~azure.mgmt.security.models.TopologyResource] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_home_region.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.TopologyResourcePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.TopologyResourcePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_home_region.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/topologies'} + + def get( + self, resource_group_name, topology_resource_name, custom_headers=None, raw=False, **operation_config): + """Gets a specific topology component. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param topology_resource_name: Name of a topology resources + collection. + :type topology_resource_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: TopologyResource or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.TopologyResource or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'ascLocation': self._serialize.url("self.config.asc_location", self.config.asc_location, 'str'), + 'topologyResourceName': self._serialize.url("topology_resource_name", topology_resource_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TopologyResource', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/topologies/{topologyResourceName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/operations/workspace_settings_operations.py b/azure-mgmt-security/azure/mgmt/security/operations/workspace_settings_operations.py new file mode 100644 index 000000000000..d92f1831e26a --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/operations/workspace_settings_operations.py @@ -0,0 +1,357 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class WorkspaceSettingsOperations(object): + """WorkspaceSettingsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API version for the operation. Constant value: "2017-08-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-08-01-preview" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Settings about where we should store your security data and logs. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of WorkspaceSetting + :rtype: + ~azure.mgmt.security.models.WorkspaceSettingPaged[~azure.mgmt.security.models.WorkspaceSetting] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.WorkspaceSettingPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.WorkspaceSettingPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings'} + + def get( + self, workspace_setting_name, custom_headers=None, raw=False, **operation_config): + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting + :type workspace_setting_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: WorkspaceSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.WorkspaceSetting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'workspaceSettingName': self._serialize.url("workspace_setting_name", workspace_setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('WorkspaceSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}'} + + def create( + self, workspace_setting_name, workspace_id, scope, custom_headers=None, raw=False, **operation_config): + """creating settings about where we should store your security data and + logs. + + :param workspace_setting_name: Name of the security setting + :type workspace_setting_name: str + :param workspace_id: The full Azure ID of the workspace to save the + data in + :type workspace_id: str + :param scope: All the VMs in this scope will send their security data + to the mentioned workspace unless overridden by a setting with more + specific scope + :type scope: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: WorkspaceSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.WorkspaceSetting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + workspace_setting = models.WorkspaceSetting(workspace_id=workspace_id, scope=scope) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'workspaceSettingName': self._serialize.url("workspace_setting_name", workspace_setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(workspace_setting, 'WorkspaceSetting') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('WorkspaceSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}'} + + def update( + self, workspace_setting_name, workspace_id, scope, custom_headers=None, raw=False, **operation_config): + """Settings about where we should store your security data and logs. + + :param workspace_setting_name: Name of the security setting + :type workspace_setting_name: str + :param workspace_id: The full Azure ID of the workspace to save the + data in + :type workspace_id: str + :param scope: All the VMs in this scope will send their security data + to the mentioned workspace unless overridden by a setting with more + specific scope + :type scope: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: WorkspaceSetting or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.security.models.WorkspaceSetting or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + workspace_setting = models.WorkspaceSetting(workspace_id=workspace_id, scope=scope) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'workspaceSettingName': self._serialize.url("workspace_setting_name", workspace_setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(workspace_setting, 'WorkspaceSetting') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('WorkspaceSetting', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}'} + + def delete( + self, workspace_setting_name, custom_headers=None, raw=False, **operation_config): + """Deletes the custom workspace settings for this subscription. new VMs + will report to the default workspace. + + :param workspace_setting_name: Name of the security setting + :type workspace_setting_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', pattern=r'^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'), + 'workspaceSettingName': self._serialize.url("workspace_setting_name", workspace_setting_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}'} diff --git a/azure-mgmt-security/azure/mgmt/security/security_center.py b/azure-mgmt-security/azure/mgmt/security/security_center.py new file mode 100644 index 000000000000..a51e73196e67 --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/security_center.py @@ -0,0 +1,164 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.pricings_operations import PricingsOperations +from .operations.security_contacts_operations import SecurityContactsOperations +from .operations.workspace_settings_operations import WorkspaceSettingsOperations +from .operations.auto_provisioning_settings_operations import AutoProvisioningSettingsOperations +from .operations.compliances_operations import CompliancesOperations +from .operations.advanced_threat_protection_operations import AdvancedThreatProtectionOperations +from .operations.settings_operations import SettingsOperations +from .operations.information_protection_policies_operations import InformationProtectionPoliciesOperations +from .operations.operations import Operations +from .operations.locations_operations import LocationsOperations +from .operations.tasks_operations import TasksOperations +from .operations.alerts_operations import AlertsOperations +from .operations.discovered_security_solutions_operations import DiscoveredSecuritySolutionsOperations +from .operations.jit_network_access_policies_operations import JitNetworkAccessPoliciesOperations +from .operations.external_security_solutions_operations import ExternalSecuritySolutionsOperations +from .operations.topology_operations import TopologyOperations +from . import models + + +class SecurityCenterConfiguration(AzureConfiguration): + """Configuration for SecurityCenter + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Azure subscription ID + :type subscription_id: str + :param asc_location: The location where ASC stores the data of the + subscription. can be retrieved from Get locations + :type asc_location: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, asc_location, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if asc_location is None: + raise ValueError("Parameter 'asc_location' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(SecurityCenterConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-security/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + self.asc_location = asc_location + + +class SecurityCenter(SDKClient): + """API spec for Microsoft.Security (Azure Security Center) resource provider + + :ivar config: Configuration for client. + :vartype config: SecurityCenterConfiguration + + :ivar pricings: Pricings operations + :vartype pricings: azure.mgmt.security.operations.PricingsOperations + :ivar security_contacts: SecurityContacts operations + :vartype security_contacts: azure.mgmt.security.operations.SecurityContactsOperations + :ivar workspace_settings: WorkspaceSettings operations + :vartype workspace_settings: azure.mgmt.security.operations.WorkspaceSettingsOperations + :ivar auto_provisioning_settings: AutoProvisioningSettings operations + :vartype auto_provisioning_settings: azure.mgmt.security.operations.AutoProvisioningSettingsOperations + :ivar compliances: Compliances operations + :vartype compliances: azure.mgmt.security.operations.CompliancesOperations + :ivar advanced_threat_protection: AdvancedThreatProtection operations + :vartype advanced_threat_protection: azure.mgmt.security.operations.AdvancedThreatProtectionOperations + :ivar settings: Settings operations + :vartype settings: azure.mgmt.security.operations.SettingsOperations + :ivar information_protection_policies: InformationProtectionPolicies operations + :vartype information_protection_policies: azure.mgmt.security.operations.InformationProtectionPoliciesOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.security.operations.Operations + :ivar locations: Locations operations + :vartype locations: azure.mgmt.security.operations.LocationsOperations + :ivar tasks: Tasks operations + :vartype tasks: azure.mgmt.security.operations.TasksOperations + :ivar alerts: Alerts operations + :vartype alerts: azure.mgmt.security.operations.AlertsOperations + :ivar discovered_security_solutions: DiscoveredSecuritySolutions operations + :vartype discovered_security_solutions: azure.mgmt.security.operations.DiscoveredSecuritySolutionsOperations + :ivar jit_network_access_policies: JitNetworkAccessPolicies operations + :vartype jit_network_access_policies: azure.mgmt.security.operations.JitNetworkAccessPoliciesOperations + :ivar external_security_solutions: ExternalSecuritySolutions operations + :vartype external_security_solutions: azure.mgmt.security.operations.ExternalSecuritySolutionsOperations + :ivar topology: Topology operations + :vartype topology: azure.mgmt.security.operations.TopologyOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: Azure subscription ID + :type subscription_id: str + :param asc_location: The location where ASC stores the data of the + subscription. can be retrieved from Get locations + :type asc_location: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, asc_location, base_url=None): + + self.config = SecurityCenterConfiguration(credentials, subscription_id, asc_location, base_url) + super(SecurityCenter, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.pricings = PricingsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.security_contacts = SecurityContactsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.workspace_settings = WorkspaceSettingsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.auto_provisioning_settings = AutoProvisioningSettingsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.compliances = CompliancesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.advanced_threat_protection = AdvancedThreatProtectionOperations( + self._client, self.config, self._serialize, self._deserialize) + self.settings = SettingsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.information_protection_policies = InformationProtectionPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.locations = LocationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.tasks = TasksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.alerts = AlertsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.discovered_security_solutions = DiscoveredSecuritySolutionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.jit_network_access_policies = JitNetworkAccessPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.external_security_solutions = ExternalSecuritySolutionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.topology = TopologyOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-security/azure/mgmt/security/version.py b/azure-mgmt-security/azure/mgmt/security/version.py new file mode 100644 index 000000000000..e0ec669828cb --- /dev/null +++ b/azure-mgmt-security/azure/mgmt/security/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "0.1.0" + diff --git a/azure-mgmt-security/sdk_packaging.toml b/azure-mgmt-security/sdk_packaging.toml new file mode 100644 index 000000000000..c03e2b8e2e26 --- /dev/null +++ b/azure-mgmt-security/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-security" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Secutiry Center Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-security/setup.cfg b/azure-mgmt-security/setup.cfg new file mode 100644 index 000000000000..3c6e79cf31da --- /dev/null +++ b/azure-mgmt-security/setup.cfg @@ -0,0 +1,2 @@ +[bdist_wheel] +universal=1 diff --git a/azure-mgmt-security/setup.py b/azure-mgmt-security/setup.py new file mode 100644 index 000000000000..0a11aadda73b --- /dev/null +++ b/azure-mgmt-security/setup.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python + +#------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +#-------------------------------------------------------------------------- + +import re +import os.path +from io import open +from setuptools import find_packages, setup + +# Change the PACKAGE_NAME only to change folder and different name +PACKAGE_NAME = "azure-mgmt-security" +PACKAGE_PPRINT_NAME = "Secutiry Center Management" + +# a-b-c => a/b/c +package_folder_path = PACKAGE_NAME.replace('-', '/') +# a-b-c => a.b.c +namespace_name = PACKAGE_NAME.replace('-', '.') + +# azure v0.x is not compatible with this package +# azure v0.x used to have a __version__ attribute (newer versions don't) +try: + import azure + try: + ver = azure.__version__ + raise Exception( + 'This package is incompatible with azure=={}. '.format(ver) + + 'Uninstall it with "pip uninstall azure".' + ) + except AttributeError: + pass +except ImportError: + pass + +# Version extraction inspired from 'requests' +with open(os.path.join(package_folder_path, 'version.py'), 'r') as fd: + version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', + fd.read(), re.MULTILINE).group(1) + +if not version: + raise RuntimeError('Cannot find version information') + +with open('README.rst', encoding='utf-8') as f: + readme = f.read() +with open('HISTORY.rst', encoding='utf-8') as f: + history = f.read() + +setup( + name=PACKAGE_NAME, + version=version, + description='Microsoft Azure {} Client Library for Python'.format(PACKAGE_PPRINT_NAME), + long_description=readme + '\n\n' + history, + license='MIT License', + author='Microsoft Corporation', + author_email='azpysdkhelp@microsoft.com', + url='https://github.com/Azure/azure-sdk-for-python', + classifiers=[ + 'Development Status :: 4 - Beta', + 'Programming Language :: Python', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'License :: OSI Approved :: MIT License', + ], + zip_safe=False, + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), + install_requires=[ + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', + 'azure-common~=1.1', + ], + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } +) diff --git a/azure-mgmt-servermanager/MANIFEST.in b/azure-mgmt-servermanager/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-servermanager/MANIFEST.in +++ b/azure-mgmt-servermanager/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-servermanager/README.rst b/azure-mgmt-servermanager/README.rst index c898ad31f4da..2d88769cf9a5 100644 --- a/azure-mgmt-servermanager/README.rst +++ b/azure-mgmt-servermanager/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Server Manager Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-servermanager/azure/__init__.py b/azure-mgmt-servermanager/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-servermanager/azure/__init__.py +++ b/azure-mgmt-servermanager/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-servermanager/azure/mgmt/__init__.py b/azure-mgmt-servermanager/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-servermanager/azure/mgmt/__init__.py +++ b/azure-mgmt-servermanager/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-servermanager/azure_bdist_wheel.py b/azure-mgmt-servermanager/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-servermanager/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-servermanager/setup.cfg b/azure-mgmt-servermanager/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-servermanager/setup.cfg +++ b/azure-mgmt-servermanager/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-servermanager/setup.py b/azure-mgmt-servermanager/setup.py index 0e4332d6a2b1..02913d1a459b 100644 --- a/azure-mgmt-servermanager/setup.py +++ b/azure-mgmt-servermanager/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-servermanager" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-servicebus/HISTORY.rst b/azure-mgmt-servicebus/HISTORY.rst index 715c219f6edf..325efcee54e2 100644 --- a/azure-mgmt-servicebus/HISTORY.rst +++ b/azure-mgmt-servicebus/HISTORY.rst @@ -3,6 +3,24 @@ Release History =============== +0.5.3 (2018-10-29) +++++++++++++++++++ + +**Bugfix** + +- Fix sdist broken in 0.5.2. No code change. + +0.5.2 (2018-09-28) +++++++++++++++++++ + +**Features** + +- Model MigrationConfigProperties has a new parameter migration_state + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + 0.5.1 (2018-07-09) ++++++++++++++++++ diff --git a/azure-mgmt-servicebus/MANIFEST.in b/azure-mgmt-servicebus/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-servicebus/MANIFEST.in +++ b/azure-mgmt-servicebus/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-servicebus/README.rst b/azure-mgmt-servicebus/README.rst index 928e43f1d77f..cdfd9e5bab7f 100644 --- a/azure-mgmt-servicebus/README.rst +++ b/azure-mgmt-servicebus/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Service Bus Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-servicebus/azure/__init__.py b/azure-mgmt-servicebus/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-servicebus/azure/__init__.py +++ b/azure-mgmt-servicebus/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-servicebus/azure/mgmt/__init__.py b/azure-mgmt-servicebus/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-servicebus/azure/mgmt/__init__.py +++ b/azure-mgmt-servicebus/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/models/migration_config_properties.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/models/migration_config_properties.py index 607238be9073..fcc461e67692 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/models/migration_config_properties.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/models/migration_config_properties.py @@ -37,6 +37,10 @@ class MigrationConfigProperties(Resource): :param post_migration_name: Required. Name to access Standard Namespace after migration :type post_migration_name: str + :ivar migration_state: State in which Standard to Premium Migration is, + possible values : Unknown, Reverting, Completing, Initiating, Syncing, + Active + :vartype migration_state: str """ _validation = { @@ -47,6 +51,7 @@ class MigrationConfigProperties(Resource): 'pending_replication_operations_count': {'readonly': True}, 'target_namespace': {'required': True}, 'post_migration_name': {'required': True}, + 'migration_state': {'readonly': True}, } _attribute_map = { @@ -57,6 +62,7 @@ class MigrationConfigProperties(Resource): 'pending_replication_operations_count': {'key': 'properties.pendingReplicationOperationsCount', 'type': 'long'}, 'target_namespace': {'key': 'properties.targetNamespace', 'type': 'str'}, 'post_migration_name': {'key': 'properties.postMigrationName', 'type': 'str'}, + 'migration_state': {'key': 'properties.migrationState', 'type': 'str'}, } def __init__(self, **kwargs): @@ -65,3 +71,4 @@ def __init__(self, **kwargs): self.pending_replication_operations_count = None self.target_namespace = kwargs.get('target_namespace', None) self.post_migration_name = kwargs.get('post_migration_name', None) + self.migration_state = None diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/models/migration_config_properties_py3.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/models/migration_config_properties_py3.py index 3df65e7dd2c4..0ea049421ed3 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/models/migration_config_properties_py3.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/models/migration_config_properties_py3.py @@ -37,6 +37,10 @@ class MigrationConfigProperties(Resource): :param post_migration_name: Required. Name to access Standard Namespace after migration :type post_migration_name: str + :ivar migration_state: State in which Standard to Premium Migration is, + possible values : Unknown, Reverting, Completing, Initiating, Syncing, + Active + :vartype migration_state: str """ _validation = { @@ -47,6 +51,7 @@ class MigrationConfigProperties(Resource): 'pending_replication_operations_count': {'readonly': True}, 'target_namespace': {'required': True}, 'post_migration_name': {'required': True}, + 'migration_state': {'readonly': True}, } _attribute_map = { @@ -57,6 +62,7 @@ class MigrationConfigProperties(Resource): 'pending_replication_operations_count': {'key': 'properties.pendingReplicationOperationsCount', 'type': 'long'}, 'target_namespace': {'key': 'properties.targetNamespace', 'type': 'str'}, 'post_migration_name': {'key': 'properties.postMigrationName', 'type': 'str'}, + 'migration_state': {'key': 'properties.migrationState', 'type': 'str'}, } def __init__(self, *, target_namespace: str, post_migration_name: str, **kwargs) -> None: @@ -65,3 +71,4 @@ def __init__(self, *, target_namespace: str, post_migration_name: str, **kwargs) self.pending_replication_operations_count = None self.target_namespace = target_namespace self.post_migration_name = post_migration_name + self.migration_state = None diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/disaster_recovery_configs_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/disaster_recovery_configs_operations.py index 07bbb40c5db5..954ba0228663 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/disaster_recovery_configs_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/disaster_recovery_configs_operations.py @@ -78,6 +78,7 @@ def check_name_availability_method( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -90,9 +91,8 @@ def check_name_availability_method( body_content = self._serialize.body(parameters, 'CheckNameAvailability') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -151,7 +151,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -160,9 +160,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -226,6 +225,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -238,9 +238,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'ArmDisasterRecovery') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorResponseException(self._deserialize, response) @@ -294,7 +293,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -303,8 +301,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -353,7 +351,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -362,8 +360,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -418,7 +416,6 @@ def break_pairing( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -427,8 +424,8 @@ def break_pairing( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -476,7 +473,6 @@ def fail_over( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -485,8 +481,8 @@ def fail_over( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -541,7 +537,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -550,9 +546,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -611,7 +606,7 @@ def get_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -620,8 +615,8 @@ def get_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -679,7 +674,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -688,8 +683,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/event_hubs_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/event_hubs_operations.py index efe2322dde90..ef36f7412fd2 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/event_hubs_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/event_hubs_operations.py @@ -78,7 +78,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,9 +87,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/migration_configs_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/migration_configs_operations.py index 1e41c3ed0093..a0df317c9ff6 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/migration_configs_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/migration_configs_operations.py @@ -82,7 +82,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,9 +91,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -132,6 +131,7 @@ def _create_and_start_migration_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -144,9 +144,8 @@ def _create_and_start_migration_initial( body_content = self._serialize.body(parameters, 'MigrationConfigProperties') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: raise models.ErrorResponseException(self._deserialize, response) @@ -256,7 +255,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -265,8 +263,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -312,7 +310,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -321,8 +319,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -377,7 +375,6 @@ def complete_migration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -386,8 +383,8 @@ def complete_migration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -432,7 +429,6 @@ def revert( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -441,8 +437,8 @@ def revert( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/namespaces_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/namespaces_operations.py index bd43b157b35e..24c24da1dfa5 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/namespaces_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/namespaces_operations.py @@ -73,6 +73,7 @@ def check_name_availability_method( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -85,9 +86,8 @@ def check_name_availability_method( body_content = self._serialize.body(parameters, 'CheckNameAvailability') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -140,7 +140,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -149,9 +149,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -208,7 +207,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -217,9 +216,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -255,6 +253,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -267,9 +266,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'SBNamespace') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: raise models.ErrorResponseException(self._deserialize, response) @@ -358,7 +356,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -367,8 +364,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -456,7 +453,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -465,8 +462,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -522,6 +519,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -534,9 +532,8 @@ def update( body_content = self._serialize.body(parameters, 'SBNamespaceUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: raise models.ErrorResponseException(self._deserialize, response) @@ -597,7 +594,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -606,9 +603,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -668,6 +664,7 @@ def create_or_update_authorization_rule( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -680,9 +677,8 @@ def create_or_update_authorization_rule( body_content = self._serialize.body(parameters, 'SBAuthorizationRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -736,7 +732,6 @@ def delete_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -745,8 +740,8 @@ def delete_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -794,7 +789,7 @@ def get_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -803,8 +798,8 @@ def get_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -859,7 +854,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -868,8 +863,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -933,6 +928,7 @@ def regenerate_keys( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -945,9 +941,8 @@ def regenerate_keys( body_content = self._serialize.body(parameters, 'RegenerateAccessKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/operations.py index 596460ca5adb..fb516c4ccb77 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/premium_messaging_regions_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/premium_messaging_regions_operations.py index f725c8ca4f1e..553cc6384ba5 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/premium_messaging_regions_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/premium_messaging_regions_operations.py @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,9 +80,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/queues_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/queues_operations.py index fa780e4abee1..67c1e1d70e91 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/queues_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/queues_operations.py @@ -90,7 +90,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -99,9 +99,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -160,6 +159,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -172,9 +172,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'SBQueue') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -228,7 +227,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +235,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -286,7 +284,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -295,8 +293,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -358,7 +356,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -367,9 +365,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -432,6 +429,7 @@ def create_or_update_authorization_rule( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -444,9 +442,8 @@ def create_or_update_authorization_rule( body_content = self._serialize.body(parameters, 'SBAuthorizationRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -503,7 +500,6 @@ def delete_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,8 +508,8 @@ def delete_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -564,7 +560,7 @@ def get_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -573,8 +569,8 @@ def get_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -632,7 +628,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -641,8 +637,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -708,6 +704,7 @@ def regenerate_keys( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -720,9 +717,8 @@ def regenerate_keys( body_content = self._serialize.body(parameters, 'RegenerateAccessKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/regions_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/regions_operations.py index 3e4e57c03f06..f600bae07285 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/regions_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/regions_operations.py @@ -74,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,9 +83,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/rules_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/rules_operations.py index 6d462efbf1a4..8685bfb37db5 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/rules_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/rules_operations.py @@ -96,7 +96,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -105,9 +105,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -171,6 +170,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -183,9 +183,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'Rule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -245,7 +244,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -254,8 +252,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -309,7 +307,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -318,8 +316,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/subscriptions_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/subscriptions_operations.py index 5b9c8eefb42f..31fcdee84b2c 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/subscriptions_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/subscriptions_operations.py @@ -93,7 +93,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -102,9 +102,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -166,6 +165,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -178,9 +178,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'SBSubscription') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -237,7 +236,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -246,8 +244,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -298,7 +296,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -307,8 +305,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/topics_operations.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/topics_operations.py index 40b3c5260a76..c23bdff1cfb0 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/topics_operations.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/operations/topics_operations.py @@ -90,7 +90,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -99,9 +99,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -159,6 +158,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -171,9 +171,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'SBTopic') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -227,7 +226,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -236,8 +234,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -285,7 +283,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -294,8 +292,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -357,7 +355,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -366,9 +364,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -431,6 +428,7 @@ def create_or_update_authorization_rule( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -443,9 +441,8 @@ def create_or_update_authorization_rule( body_content = self._serialize.body(parameters, 'SBAuthorizationRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -503,7 +500,7 @@ def get_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,8 +509,8 @@ def get_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -570,7 +567,6 @@ def delete_authorization_rule( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -579,8 +575,8 @@ def delete_authorization_rule( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: raise models.ErrorResponseException(self._deserialize, response) @@ -631,7 +627,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -640,8 +636,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) @@ -707,6 +703,7 @@ def regenerate_keys( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -719,9 +716,8 @@ def regenerate_keys( body_content = self._serialize.body(parameters, 'RegenerateAccessKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: raise models.ErrorResponseException(self._deserialize, response) diff --git a/azure-mgmt-servicebus/azure/mgmt/servicebus/version.py b/azure-mgmt-servicebus/azure/mgmt/servicebus/version.py index c9fea7678df4..f6765bdb8774 100644 --- a/azure-mgmt-servicebus/azure/mgmt/servicebus/version.py +++ b/azure-mgmt-servicebus/azure/mgmt/servicebus/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.5.1" +VERSION = "0.5.3" diff --git a/azure-mgmt-servicebus/azure_bdist_wheel.py b/azure-mgmt-servicebus/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-servicebus/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-servicebus/setup.cfg b/azure-mgmt-servicebus/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-servicebus/setup.cfg +++ b/azure-mgmt-servicebus/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-servicebus/setup.py b/azure-mgmt-servicebus/setup.py index f644ec4bbccd..01b326350489 100644 --- a/azure-mgmt-servicebus/setup.py +++ b/azure-mgmt-servicebus/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-servicebus" @@ -76,10 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-servicefabric/MANIFEST.in b/azure-mgmt-servicefabric/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-servicefabric/MANIFEST.in +++ b/azure-mgmt-servicefabric/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-servicefabric/azure/__init__.py b/azure-mgmt-servicefabric/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-servicefabric/azure/__init__.py +++ b/azure-mgmt-servicefabric/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-servicefabric/azure/mgmt/__init__.py b/azure-mgmt-servicefabric/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-servicefabric/azure/mgmt/__init__.py +++ b/azure-mgmt-servicefabric/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-servicefabric/azure_bdist_wheel.py b/azure-mgmt-servicefabric/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-servicefabric/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-servicefabric/setup.cfg b/azure-mgmt-servicefabric/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-servicefabric/setup.cfg +++ b/azure-mgmt-servicefabric/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-servicefabric/setup.py b/azure-mgmt-servicefabric/setup.py index 8be8b72dd098..16470da78edc 100644 --- a/azure-mgmt-servicefabric/setup.py +++ b/azure-mgmt-servicefabric/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-servicefabric" @@ -76,11 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-signalr/HISTORY.rst b/azure-mgmt-signalr/HISTORY.rst index e2b8d8d1fcca..e0f1b31e6063 100644 --- a/azure-mgmt-signalr/HISTORY.rst +++ b/azure-mgmt-signalr/HISTORY.rst @@ -3,6 +3,17 @@ Release History =============== +0.1.1 (2018-09-04) +++++++++++++++++++ + +**Features** + +- Model SignalRKeys has a new parameter secondary_connection_string +- Model SignalRKeys has a new parameter primary_connection_string +- Model MetricSpecification has a new parameter dimensions +- Model SignalRResource has a new parameter version +- Added operation group UsagesOperations + 0.1.0 (2018-05-07) ++++++++++++++++++ diff --git a/azure-mgmt-signalr/MANIFEST.in b/azure-mgmt-signalr/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-signalr/MANIFEST.in +++ b/azure-mgmt-signalr/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-signalr/README.rst b/azure-mgmt-signalr/README.rst index 400691184145..0af26cf550d7 100644 --- a/azure-mgmt-signalr/README.rst +++ b/azure-mgmt-signalr/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure SignalR Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `SignalR -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-signalr/azure/__init__.py b/azure-mgmt-signalr/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-signalr/azure/__init__.py +++ b/azure-mgmt-signalr/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-signalr/azure/mgmt/__init__.py b/azure-mgmt-signalr/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-signalr/azure/mgmt/__init__.py +++ b/azure-mgmt-signalr/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/__init__.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/__init__.py index 6605edb1e93e..9ba920b7ea83 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/__init__.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/__init__.py @@ -11,6 +11,7 @@ try: from .operation_display_py3 import OperationDisplay + from .dimension_py3 import Dimension from .metric_specification_py3 import MetricSpecification from .service_specification_py3 import ServiceSpecification from .operation_properties_py3 import OperationProperties @@ -26,8 +27,11 @@ from .regenerate_key_parameters_py3 import RegenerateKeyParameters from .signal_rcreate_parameters_py3 import SignalRCreateParameters from .signal_rupdate_parameters_py3 import SignalRUpdateParameters + from .signal_rusage_name_py3 import SignalRUsageName + from .signal_rusage_py3 import SignalRUsage except (SyntaxError, ImportError): from .operation_display import OperationDisplay + from .dimension import Dimension from .metric_specification import MetricSpecification from .service_specification import ServiceSpecification from .operation_properties import OperationProperties @@ -43,8 +47,11 @@ from .regenerate_key_parameters import RegenerateKeyParameters from .signal_rcreate_parameters import SignalRCreateParameters from .signal_rupdate_parameters import SignalRUpdateParameters + from .signal_rusage_name import SignalRUsageName + from .signal_rusage import SignalRUsage from .operation_paged import OperationPaged from .signal_rresource_paged import SignalRResourcePaged +from .signal_rusage_paged import SignalRUsagePaged from .signal_rmanagement_client_enums import ( SignalRSkuTier, ProvisioningState, @@ -53,6 +60,7 @@ __all__ = [ 'OperationDisplay', + 'Dimension', 'MetricSpecification', 'ServiceSpecification', 'OperationProperties', @@ -68,8 +76,11 @@ 'RegenerateKeyParameters', 'SignalRCreateParameters', 'SignalRUpdateParameters', + 'SignalRUsageName', + 'SignalRUsage', 'OperationPaged', 'SignalRResourcePaged', + 'SignalRUsagePaged', 'SignalRSkuTier', 'ProvisioningState', 'KeyType', diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/dimension.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/dimension.py new file mode 100644 index 000000000000..b85f606bcf94 --- /dev/null +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/dimension.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Dimension(Model): + """Specifications of the Dimension of metrics. + + :param name: The public facing name of the dimension. + :type name: str + :param display_name: Localized friendly display name of the dimension. + :type display_name: str + :param internal_name: Name of the dimension as it appears in MDM. + :type internal_name: str + :param to_be_exported_for_shoebox: A Boolean flag indicating whether this + dimension should be included for the shoebox export scenario. + :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, **kwargs): + super(Dimension, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.internal_name = kwargs.get('internal_name', None) + self.to_be_exported_for_shoebox = kwargs.get('to_be_exported_for_shoebox', None) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/dimension_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/dimension_py3.py new file mode 100644 index 000000000000..52390cd419c7 --- /dev/null +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/dimension_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Dimension(Model): + """Specifications of the Dimension of metrics. + + :param name: The public facing name of the dimension. + :type name: str + :param display_name: Localized friendly display name of the dimension. + :type display_name: str + :param internal_name: Name of the dimension as it appears in MDM. + :type internal_name: str + :param to_be_exported_for_shoebox: A Boolean flag indicating whether this + dimension should be included for the shoebox export scenario. + :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 diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/metric_specification.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/metric_specification.py index c54739236aef..1e36394f1aef 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/metric_specification.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/metric_specification.py @@ -36,6 +36,8 @@ class MetricSpecification(Model): :param category: The name of the metric category that the metric belongs to. A metric can only belong to a single category. :type category: str + :param dimensions: The dimensions of the metrics. + :type dimensions: list[~azure.mgmt.signalr.models.Dimension] """ _attribute_map = { @@ -46,6 +48,7 @@ class MetricSpecification(Model): 'aggregation_type': {'key': 'aggregationType', 'type': 'str'}, 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'str'}, 'category': {'key': 'category', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, } def __init__(self, **kwargs): @@ -57,3 +60,4 @@ def __init__(self, **kwargs): self.aggregation_type = kwargs.get('aggregation_type', None) self.fill_gap_with_zero = kwargs.get('fill_gap_with_zero', None) self.category = kwargs.get('category', None) + self.dimensions = kwargs.get('dimensions', None) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/metric_specification_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/metric_specification_py3.py index 21cc1d12a2e1..7ac715b718ca 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/metric_specification_py3.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/metric_specification_py3.py @@ -36,6 +36,8 @@ class MetricSpecification(Model): :param category: The name of the metric category that the metric belongs to. A metric can only belong to a single category. :type category: str + :param dimensions: The dimensions of the metrics. + :type dimensions: list[~azure.mgmt.signalr.models.Dimension] """ _attribute_map = { @@ -46,9 +48,10 @@ class MetricSpecification(Model): 'aggregation_type': {'key': 'aggregationType', 'type': 'str'}, 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'str'}, 'category': {'key': 'category', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, } - def __init__(self, *, name: str=None, display_name: str=None, display_description: str=None, unit: str=None, aggregation_type: str=None, fill_gap_with_zero: str=None, category: str=None, **kwargs) -> None: + def __init__(self, *, name: str=None, display_name: str=None, display_description: str=None, unit: str=None, aggregation_type: str=None, fill_gap_with_zero: str=None, category: str=None, dimensions=None, **kwargs) -> None: super(MetricSpecification, self).__init__(**kwargs) self.name = name self.display_name = display_name @@ -57,3 +60,4 @@ def __init__(self, *, name: str=None, display_name: str=None, display_descriptio self.aggregation_type = aggregation_type self.fill_gap_with_zero = fill_gap_with_zero self.category = category + self.dimensions = dimensions diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/resource_sku.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/resource_sku.py index 18cebb3dcfa9..40cd5e688ad4 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/resource_sku.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/resource_sku.py @@ -20,8 +20,9 @@ class ResourceSku(Model): :param name: Required. The name of the SKU. This is typically a letter + number code, such as A0 or P3. Required (if sku is specified) :type name: str - :param tier: The tier of this particular SKU. Optional. Possible values - include: 'Free', 'Basic', 'Premium' + :param tier: Optional tier of this particular SKU. `Basic` is deprecated, + use `Standard` instead for Basic tier. Possible values include: 'Free', + 'Basic', 'Standard', 'Premium' :type tier: str or ~azure.mgmt.signalr.models.SignalRSkuTier :param size: Optional, string. When the name field is the combination of tier and some other value, this would be the standalone code. diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/resource_sku_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/resource_sku_py3.py index fb2ead5223c3..1c0da513ec89 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/resource_sku_py3.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/resource_sku_py3.py @@ -20,8 +20,9 @@ class ResourceSku(Model): :param name: Required. The name of the SKU. This is typically a letter + number code, such as A0 or P3. Required (if sku is specified) :type name: str - :param tier: The tier of this particular SKU. Optional. Possible values - include: 'Free', 'Basic', 'Premium' + :param tier: Optional tier of this particular SKU. `Basic` is deprecated, + use `Standard` instead for Basic tier. Possible values include: 'Free', + 'Basic', 'Standard', 'Premium' :type tier: str or ~azure.mgmt.signalr.models.SignalRSkuTier :param size: Optional, string. When the name field is the combination of tier and some other value, this would be the standalone code. diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rcreate_parameters_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rcreate_parameters_py3.py index f58bd64a8877..23a3a44488cc 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rcreate_parameters_py3.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rcreate_parameters_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .signal_rupdate_parameters import SignalRUpdateParameters +from .signal_rupdate_parameters_py3 import SignalRUpdateParameters class SignalRCreateParameters(SignalRUpdateParameters): diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rkeys.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rkeys.py index 8549853cbc44..ff01c2aa4aeb 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rkeys.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rkeys.py @@ -19,14 +19,24 @@ class SignalRKeys(Model): :type primary_key: str :param secondary_key: The secondary access key. :type secondary_key: str + :param primary_connection_string: SignalR connection string constructed + via the primaryKey + :type primary_connection_string: str + :param secondary_connection_string: SignalR connection string constructed + via the secondaryKey + :type secondary_connection_string: str """ _attribute_map = { 'primary_key': {'key': 'primaryKey', 'type': 'str'}, 'secondary_key': {'key': 'secondaryKey', 'type': 'str'}, + 'primary_connection_string': {'key': 'primaryConnectionString', 'type': 'str'}, + 'secondary_connection_string': {'key': 'secondaryConnectionString', 'type': 'str'}, } def __init__(self, **kwargs): super(SignalRKeys, self).__init__(**kwargs) self.primary_key = kwargs.get('primary_key', None) self.secondary_key = kwargs.get('secondary_key', None) + self.primary_connection_string = kwargs.get('primary_connection_string', None) + self.secondary_connection_string = kwargs.get('secondary_connection_string', None) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rkeys_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rkeys_py3.py index 2ca3ca658857..77c5768eff41 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rkeys_py3.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rkeys_py3.py @@ -19,14 +19,24 @@ class SignalRKeys(Model): :type primary_key: str :param secondary_key: The secondary access key. :type secondary_key: str + :param primary_connection_string: SignalR connection string constructed + via the primaryKey + :type primary_connection_string: str + :param secondary_connection_string: SignalR connection string constructed + via the secondaryKey + :type secondary_connection_string: str """ _attribute_map = { 'primary_key': {'key': 'primaryKey', 'type': 'str'}, 'secondary_key': {'key': 'secondaryKey', 'type': 'str'}, + 'primary_connection_string': {'key': 'primaryConnectionString', 'type': 'str'}, + 'secondary_connection_string': {'key': 'secondaryConnectionString', 'type': 'str'}, } - def __init__(self, *, primary_key: str=None, secondary_key: str=None, **kwargs) -> None: + def __init__(self, *, primary_key: str=None, secondary_key: str=None, primary_connection_string: str=None, secondary_connection_string: str=None, **kwargs) -> None: super(SignalRKeys, self).__init__(**kwargs) self.primary_key = primary_key self.secondary_key = secondary_key + self.primary_connection_string = primary_connection_string + self.secondary_connection_string = secondary_connection_string diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rmanagement_client_enums.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rmanagement_client_enums.py index 7869b8dbfc8d..c4c1cddbb84f 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rmanagement_client_enums.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rmanagement_client_enums.py @@ -16,6 +16,7 @@ class SignalRSkuTier(str, Enum): free = "Free" basic = "Basic" + standard = "Standard" premium = "Premium" diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rresource.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rresource.py index 45edb88c3d00..ee02e4f61971 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rresource.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rresource.py @@ -54,6 +54,9 @@ class SignalRResource(TrackedResource): :ivar server_port: The publicly accessibly port of the SignalR service which is designed for customer server side usage. :vartype server_port: int + :param version: Version of the SignalR resource. Probably you need the + same or higher version of client SDKs. + :type version: str """ _validation = { @@ -80,6 +83,7 @@ class SignalRResource(TrackedResource): 'host_name': {'key': 'properties.hostName', 'type': 'str'}, 'public_port': {'key': 'properties.publicPort', 'type': 'int'}, 'server_port': {'key': 'properties.serverPort', 'type': 'int'}, + 'version': {'key': 'properties.version', 'type': 'str'}, } def __init__(self, **kwargs): @@ -91,3 +95,4 @@ def __init__(self, **kwargs): self.host_name = None self.public_port = None self.server_port = None + self.version = kwargs.get('version', None) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rresource_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rresource_py3.py index 4356b4f06b84..ba2dc5009058 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rresource_py3.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rresource_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .tracked_resource import TrackedResource +from .tracked_resource_py3 import TrackedResource class SignalRResource(TrackedResource): @@ -54,6 +54,9 @@ class SignalRResource(TrackedResource): :ivar server_port: The publicly accessibly port of the SignalR service which is designed for customer server side usage. :vartype server_port: int + :param version: Version of the SignalR resource. Probably you need the + same or higher version of client SDKs. + :type version: str """ _validation = { @@ -80,9 +83,10 @@ class SignalRResource(TrackedResource): 'host_name': {'key': 'properties.hostName', 'type': 'str'}, 'public_port': {'key': 'properties.publicPort', 'type': 'int'}, 'server_port': {'key': 'properties.serverPort', 'type': 'int'}, + 'version': {'key': 'properties.version', 'type': 'str'}, } - def __init__(self, *, location: str=None, tags=None, sku=None, host_name_prefix: str=None, **kwargs) -> None: + def __init__(self, *, location: str=None, tags=None, sku=None, host_name_prefix: str=None, version: str=None, **kwargs) -> None: super(SignalRResource, self).__init__(location=location, tags=tags, **kwargs) self.sku = sku self.host_name_prefix = host_name_prefix @@ -91,3 +95,4 @@ def __init__(self, *, location: str=None, tags=None, sku=None, host_name_prefix: self.host_name = None self.public_port = None self.server_port = None + self.version = version diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage.py new file mode 100644 index 000000000000..c745ce0603eb --- /dev/null +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SignalRUsage(Model): + """Object that describes a specific usage of SignalR resources. + + :param id: Fully qualified ARM resource id + :type id: str + :param current_value: Current value for the usage quota. + :type current_value: long + :param limit: The maximum permitted value for the usage quota. If there is + no limit, this value will be -1. + :type limit: long + :param name: Localizable String object containing the name and a localized + value. + :type name: ~azure.mgmt.signalr.models.SignalRUsageName + :param unit: Representing the units of the usage quota. Possible values + are: Count, Bytes, Seconds, Percent, CountPerSecond, BytesPerSecond. + :type unit: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'SignalRUsageName'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SignalRUsage, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.current_value = kwargs.get('current_value', None) + self.limit = kwargs.get('limit', None) + self.name = kwargs.get('name', None) + self.unit = kwargs.get('unit', None) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_name.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_name.py new file mode 100644 index 000000000000..cf1ec8c37174 --- /dev/null +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_name.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SignalRUsageName(Model): + """Localizable String object containing the name and a localized value. + + :param value: The indentifier of the usage. + :type value: str + :param localized_value: Localized name of the usage. + :type localized_value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SignalRUsageName, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.localized_value = kwargs.get('localized_value', None) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_name_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_name_py3.py new file mode 100644 index 000000000000..abaff5948d3e --- /dev/null +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_name_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SignalRUsageName(Model): + """Localizable String object containing the name and a localized value. + + :param value: The indentifier of the usage. + :type value: str + :param localized_value: Localized name of the usage. + :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(SignalRUsageName, self).__init__(**kwargs) + self.value = value + self.localized_value = localized_value diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_paged.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_paged.py new file mode 100644 index 000000000000..08faca32802b --- /dev/null +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SignalRUsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`SignalRUsage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SignalRUsage]'} + } + + def __init__(self, *args, **kwargs): + + super(SignalRUsagePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_py3.py new file mode 100644 index 000000000000..2c46b4a391de --- /dev/null +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/signal_rusage_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SignalRUsage(Model): + """Object that describes a specific usage of SignalR resources. + + :param id: Fully qualified ARM resource id + :type id: str + :param current_value: Current value for the usage quota. + :type current_value: long + :param limit: The maximum permitted value for the usage quota. If there is + no limit, this value will be -1. + :type limit: long + :param name: Localizable String object containing the name and a localized + value. + :type name: ~azure.mgmt.signalr.models.SignalRUsageName + :param unit: Representing the units of the usage quota. Possible values + are: Count, Bytes, Seconds, Percent, CountPerSecond, BytesPerSecond. + :type unit: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'SignalRUsageName'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, current_value: int=None, limit: int=None, name=None, unit: str=None, **kwargs) -> None: + super(SignalRUsage, self).__init__(**kwargs) + self.id = id + self.current_value = current_value + self.limit = limit + self.name = name + self.unit = unit diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/models/tracked_resource_py3.py b/azure-mgmt-signalr/azure/mgmt/signalr/models/tracked_resource_py3.py index 066145840c5e..80a6019f0f16 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/models/tracked_resource_py3.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/models/tracked_resource_py3.py @@ -9,7 +9,7 @@ # regenerated. # -------------------------------------------------------------------------- -from .resource import Resource +from .resource_py3 import Resource class TrackedResource(Resource): diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/operations/__init__.py b/azure-mgmt-signalr/azure/mgmt/signalr/operations/__init__.py index 6eacbb8c5db5..31c21decde4f 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/operations/__init__.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/operations/__init__.py @@ -11,8 +11,10 @@ from .operations import Operations from .signal_roperations import SignalROperations +from .usages_operations import UsagesOperations __all__ = [ 'Operations', 'SignalROperations', + 'UsagesOperations', ] diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/operations/operations.py b/azure-mgmt-signalr/azure/mgmt/signalr/operations/operations.py index e04d3eee4058..8adcd84fc537 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/operations/operations.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/operations/operations.py @@ -68,7 +68,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -77,9 +77,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/operations/signal_roperations.py b/azure-mgmt-signalr/azure/mgmt/signalr/operations/signal_roperations.py index 07d6c59a6292..8fe0c450a4c2 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/operations/signal_roperations.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/operations/signal_roperations.py @@ -79,6 +79,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -94,9 +95,8 @@ def check_name_availability( body_content = None # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -149,7 +149,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -158,9 +158,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -219,7 +218,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -228,9 +227,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -285,7 +283,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -294,8 +292,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -336,6 +334,7 @@ def _regenerate_key_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -351,9 +350,8 @@ def _regenerate_key_initial( body_content = None # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -461,7 +459,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -470,8 +468,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -508,6 +506,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -523,9 +522,8 @@ def _create_or_update_initial( body_content = None # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201, 202]: exp = CloudError(response) @@ -613,7 +611,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -622,8 +619,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -695,6 +692,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -710,9 +708,8 @@ def _update_initial( body_content = None # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/operations/usages_operations.py b/azure-mgmt-signalr/azure/mgmt/signalr/operations/usages_operations.py new file mode 100644 index 000000000000..adf39bc94d68 --- /dev/null +++ b/azure-mgmt-signalr/azure/mgmt/signalr/operations/usages_operations.py @@ -0,0 +1,105 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class UsagesOperations(object): + """UsagesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client Api Version. Constant value: "2018-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-03-01-preview" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """List usage quotas for Azure SignalR service by location. + + :param location: the location like "eastus" + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SignalRUsage + :rtype: + ~azure.mgmt.signalr.models.SignalRUsagePaged[~azure.mgmt.signalr.models.SignalRUsage] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SignalRUsagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SignalRUsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/locations/{location}/usages'} diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/signal_rmanagement_client.py b/azure-mgmt-signalr/azure/mgmt/signalr/signal_rmanagement_client.py index 166b6bff533e..fa1600676c3a 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/signal_rmanagement_client.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/signal_rmanagement_client.py @@ -15,6 +15,7 @@ from .version import VERSION from .operations.operations import Operations from .operations.signal_roperations import SignalROperations +from .operations.usages_operations import UsagesOperations from . import models @@ -62,6 +63,8 @@ class SignalRManagementClient(SDKClient): :vartype operations: azure.mgmt.signalr.operations.Operations :ivar signal_r: SignalR operations :vartype signal_r: azure.mgmt.signalr.operations.SignalROperations + :ivar usages: Usages operations + :vartype usages: azure.mgmt.signalr.operations.UsagesOperations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -88,3 +91,5 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.signal_r = SignalROperations( self._client, self.config, self._serialize, self._deserialize) + self.usages = UsagesOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-signalr/azure/mgmt/signalr/version.py b/azure-mgmt-signalr/azure/mgmt/signalr/version.py index e0ec669828cb..e7efe25ea7e0 100644 --- a/azure-mgmt-signalr/azure/mgmt/signalr/version.py +++ b/azure-mgmt-signalr/azure/mgmt/signalr/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.1.0" +VERSION = "0.1.1" diff --git a/azure-mgmt-signalr/azure_bdist_wheel.py b/azure-mgmt-signalr/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-signalr/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-signalr/sdk_packaging.toml b/azure-mgmt-signalr/sdk_packaging.toml new file mode 100644 index 000000000000..5793b05a276d --- /dev/null +++ b/azure-mgmt-signalr/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-signalr" +package_pprint_name = "SignalR" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-signalr/setup.cfg b/azure-mgmt-signalr/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-signalr/setup.cfg +++ b/azure-mgmt-signalr/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-signalr/setup.py b/azure-mgmt-signalr/setup.py index 9c5946249c46..9d0098a3cc8e 100644 --- a/azure-mgmt-signalr/setup.py +++ b/azure-mgmt-signalr/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-signalr" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-sql/HISTORY.rst b/azure-mgmt-sql/HISTORY.rst index c29eec3d663b..6f25682c3123 100644 --- a/azure-mgmt-sql/HISTORY.rst +++ b/azure-mgmt-sql/HISTORY.rst @@ -3,6 +3,41 @@ Release History =============== +0.10.0 (2018-10-18) ++++++++++++++++++++ + +**Features** + +- Model DatabaseVulnerabilityAssessment has a new parameter storage_account_access_key +- Model ManagedInstanceUpdate has a new parameter dns_zone_partner +- Model ManagedInstanceUpdate has a new parameter collation +- Model ManagedInstanceUpdate has a new parameter dns_zone +- Model ManagedInstance has a new parameter dns_zone_partner +- Model ManagedInstance has a new parameter collation +- Model ManagedInstance has a new parameter dns_zone +- Added operation BackupShortTermRetentionPoliciesOperations.list_by_database +- Added operation group ManagedDatabaseVulnerabilityAssessmentsOperations +- Added operation group ExtendedDatabaseBlobAuditingPoliciesOperations +- Added operation group TdeCertificatesOperations +- Added operation group ManagedInstanceKeysOperations +- Added operation group ServerBlobAuditingPoliciesOperations +- Added operation group ManagedInstanceEncryptionProtectorsOperations +- Added operation group ExtendedServerBlobAuditingPoliciesOperations +- Added operation group ServerSecurityAlertPoliciesOperations +- Added operation group ManagedDatabaseVulnerabilityAssessmentScansOperations +- Added operation group ManagedInstanceTdeCertificatesOperations +- Added operation group ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations + +**Breaking changes** + +- Operation DatabaseVulnerabilityAssessmentRuleBaselinesOperations.delete has a new signature +- Operation DatabaseVulnerabilityAssessmentRuleBaselinesOperations.get has a new signature +- Operation DatabaseVulnerabilityAssessmentRuleBaselinesOperations.create_or_update has a new signature + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + 0.9.1 (2018-05-24) ++++++++++++++++++ diff --git a/azure-mgmt-sql/MANIFEST.in b/azure-mgmt-sql/MANIFEST.in index 9ecaeb15de50..6ceb27f7a96e 100644 --- a/azure-mgmt-sql/MANIFEST.in +++ b/azure-mgmt-sql/MANIFEST.in @@ -1,2 +1,4 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +include azure/__init__.py +include azure/mgmt/__init__.py + diff --git a/azure-mgmt-sql/README.rst b/azure-mgmt-sql/README.rst index be2356da21f0..ba4322ebd16e 100644 --- a/azure-mgmt-sql/README.rst +++ b/azure-mgmt-sql/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure SQL Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-sql/azure/__init__.py b/azure-mgmt-sql/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-sql/azure/__init__.py +++ b/azure-mgmt-sql/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-sql/azure/mgmt/__init__.py b/azure-mgmt-sql/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-sql/azure/mgmt/__init__.py +++ b/azure-mgmt-sql/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/__init__.py b/azure-mgmt-sql/azure/mgmt/sql/models/__init__.py index fb3533b20adf..418c82c016ae 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/__init__.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/__init__.py @@ -48,7 +48,6 @@ from .transparent_data_encryption_activity_py3 import TransparentDataEncryptionActivity from .server_usage_py3 import ServerUsage from .database_usage_py3 import DatabaseUsage - from .database_blob_auditing_policy_py3 import DatabaseBlobAuditingPolicy from .automatic_tuning_options_py3 import AutomaticTuningOptions from .database_automatic_tuning_py3 import DatabaseAutomaticTuning from .encryption_protector_py3 import EncryptionProtector @@ -81,6 +80,10 @@ from .sync_member_py3 import SyncMember from .subscription_usage_py3 import SubscriptionUsage from .virtual_network_rule_py3 import VirtualNetworkRule + from .extended_database_blob_auditing_policy_py3 import ExtendedDatabaseBlobAuditingPolicy + from .extended_server_blob_auditing_policy_py3 import ExtendedServerBlobAuditingPolicy + from .server_blob_auditing_policy_py3 import ServerBlobAuditingPolicy + from .database_blob_auditing_policy_py3 import DatabaseBlobAuditingPolicy from .database_vulnerability_assessment_rule_baseline_item_py3 import DatabaseVulnerabilityAssessmentRuleBaselineItem from .database_vulnerability_assessment_rule_baseline_py3 import DatabaseVulnerabilityAssessmentRuleBaseline from .vulnerability_assessment_recurring_scans_properties_py3 import VulnerabilityAssessmentRecurringScansProperties @@ -108,6 +111,7 @@ from .server_automatic_tuning_py3 import ServerAutomaticTuning from .server_dns_alias_py3 import ServerDnsAlias from .server_dns_alias_acquisition_py3 import ServerDnsAliasAcquisition + from .server_security_alert_policy_py3 import ServerSecurityAlertPolicy from .restore_point_py3 import RestorePoint from .create_database_restore_point_definition_py3 import CreateDatabaseRestorePointDefinition from .database_operation_py3 import DatabaseOperation @@ -144,6 +148,9 @@ from .managed_instance_pair_info_py3 import ManagedInstancePairInfo from .instance_failover_group_py3 import InstanceFailoverGroup from .backup_short_term_retention_policy_py3 import BackupShortTermRetentionPolicy + from .tde_certificate_py3 import TdeCertificate + from .managed_instance_key_py3 import ManagedInstanceKey + from .managed_instance_encryption_protector_py3 import ManagedInstanceEncryptionProtector except (SyntaxError, ImportError): from .recoverable_database import RecoverableDatabase from .restorable_dropped_database import RestorableDroppedDatabase @@ -183,7 +190,6 @@ from .transparent_data_encryption_activity import TransparentDataEncryptionActivity from .server_usage import ServerUsage from .database_usage import DatabaseUsage - from .database_blob_auditing_policy import DatabaseBlobAuditingPolicy from .automatic_tuning_options import AutomaticTuningOptions from .database_automatic_tuning import DatabaseAutomaticTuning from .encryption_protector import EncryptionProtector @@ -216,6 +222,10 @@ from .sync_member import SyncMember from .subscription_usage import SubscriptionUsage from .virtual_network_rule import VirtualNetworkRule + from .extended_database_blob_auditing_policy import ExtendedDatabaseBlobAuditingPolicy + from .extended_server_blob_auditing_policy import ExtendedServerBlobAuditingPolicy + from .server_blob_auditing_policy import ServerBlobAuditingPolicy + from .database_blob_auditing_policy import DatabaseBlobAuditingPolicy from .database_vulnerability_assessment_rule_baseline_item import DatabaseVulnerabilityAssessmentRuleBaselineItem from .database_vulnerability_assessment_rule_baseline import DatabaseVulnerabilityAssessmentRuleBaseline from .vulnerability_assessment_recurring_scans_properties import VulnerabilityAssessmentRecurringScansProperties @@ -243,6 +253,7 @@ from .server_automatic_tuning import ServerAutomaticTuning from .server_dns_alias import ServerDnsAlias from .server_dns_alias_acquisition import ServerDnsAliasAcquisition + from .server_security_alert_policy import ServerSecurityAlertPolicy from .restore_point import RestorePoint from .create_database_restore_point_definition import CreateDatabaseRestorePointDefinition from .database_operation import DatabaseOperation @@ -279,6 +290,9 @@ from .managed_instance_pair_info import ManagedInstancePairInfo from .instance_failover_group import InstanceFailoverGroup from .backup_short_term_retention_policy import BackupShortTermRetentionPolicy + from .tde_certificate import TdeCertificate + from .managed_instance_key import ManagedInstanceKey + from .managed_instance_encryption_protector import ManagedInstanceEncryptionProtector from .recoverable_database_paged import RecoverableDatabasePaged from .restorable_dropped_database_paged import RestorableDroppedDatabasePaged from .server_paged import ServerPaged @@ -330,6 +344,9 @@ from .elastic_pool_operation_paged import ElasticPoolOperationPaged from .vulnerability_assessment_scan_record_paged import VulnerabilityAssessmentScanRecordPaged from .instance_failover_group_paged import InstanceFailoverGroupPaged +from .backup_short_term_retention_policy_paged import BackupShortTermRetentionPolicyPaged +from .managed_instance_key_paged import ManagedInstanceKeyPaged +from .managed_instance_encryption_protector_paged import ManagedInstanceEncryptionProtectorPaged from .sql_management_client_enums import ( CheckNameAvailabilityReason, ServerConnectionType, @@ -355,7 +372,6 @@ RecommendedIndexType, TransparentDataEncryptionStatus, TransparentDataEncryptionActivityStatus, - BlobAuditingPolicyState, AutomaticTuningMode, AutomaticTuningOptionModeDesired, AutomaticTuningOptionModeActual, @@ -374,6 +390,7 @@ SyncDirection, SyncMemberState, VirtualNetworkRuleState, + BlobAuditingPolicyState, JobAgentState, JobExecutionLifecycle, ProvisioningState, @@ -405,6 +422,7 @@ VulnerabilityAssessmentScanState, InstanceFailoverGroupReplicationRole, LongTermRetentionDatabaseState, + VulnerabilityAssessmentPolicyBaselineName, CapabilityGroup, ) @@ -447,7 +465,6 @@ 'TransparentDataEncryptionActivity', 'ServerUsage', 'DatabaseUsage', - 'DatabaseBlobAuditingPolicy', 'AutomaticTuningOptions', 'DatabaseAutomaticTuning', 'EncryptionProtector', @@ -480,6 +497,10 @@ 'SyncMember', 'SubscriptionUsage', 'VirtualNetworkRule', + 'ExtendedDatabaseBlobAuditingPolicy', + 'ExtendedServerBlobAuditingPolicy', + 'ServerBlobAuditingPolicy', + 'DatabaseBlobAuditingPolicy', 'DatabaseVulnerabilityAssessmentRuleBaselineItem', 'DatabaseVulnerabilityAssessmentRuleBaseline', 'VulnerabilityAssessmentRecurringScansProperties', @@ -507,6 +528,7 @@ 'ServerAutomaticTuning', 'ServerDnsAlias', 'ServerDnsAliasAcquisition', + 'ServerSecurityAlertPolicy', 'RestorePoint', 'CreateDatabaseRestorePointDefinition', 'DatabaseOperation', @@ -543,6 +565,9 @@ 'ManagedInstancePairInfo', 'InstanceFailoverGroup', 'BackupShortTermRetentionPolicy', + 'TdeCertificate', + 'ManagedInstanceKey', + 'ManagedInstanceEncryptionProtector', 'RecoverableDatabasePaged', 'RestorableDroppedDatabasePaged', 'ServerPaged', @@ -594,6 +619,9 @@ 'ElasticPoolOperationPaged', 'VulnerabilityAssessmentScanRecordPaged', 'InstanceFailoverGroupPaged', + 'BackupShortTermRetentionPolicyPaged', + 'ManagedInstanceKeyPaged', + 'ManagedInstanceEncryptionProtectorPaged', 'CheckNameAvailabilityReason', 'ServerConnectionType', 'SecurityAlertPolicyState', @@ -618,7 +646,6 @@ 'RecommendedIndexType', 'TransparentDataEncryptionStatus', 'TransparentDataEncryptionActivityStatus', - 'BlobAuditingPolicyState', 'AutomaticTuningMode', 'AutomaticTuningOptionModeDesired', 'AutomaticTuningOptionModeActual', @@ -637,6 +664,7 @@ 'SyncDirection', 'SyncMemberState', 'VirtualNetworkRuleState', + 'BlobAuditingPolicyState', 'JobAgentState', 'JobExecutionLifecycle', 'ProvisioningState', @@ -668,5 +696,6 @@ 'VulnerabilityAssessmentScanState', 'InstanceFailoverGroupReplicationRole', 'LongTermRetentionDatabaseState', + 'VulnerabilityAssessmentPolicyBaselineName', 'CapabilityGroup', ] diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/backup_short_term_retention_policy_paged.py b/azure-mgmt-sql/azure/mgmt/sql/models/backup_short_term_retention_policy_paged.py new file mode 100644 index 000000000000..16d31e341795 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/backup_short_term_retention_policy_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class BackupShortTermRetentionPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`BackupShortTermRetentionPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BackupShortTermRetentionPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(BackupShortTermRetentionPolicyPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/database_blob_auditing_policy.py b/azure-mgmt-sql/azure/mgmt/sql/models/database_blob_auditing_policy.py index 407713325e7d..963b7674ac16 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/database_blob_auditing_policy.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/database_blob_auditing_policy.py @@ -43,14 +43,72 @@ class DatabaseBlobAuditingPolicy(ProxyResource): :param retention_days: Specifies the number of days to keep in the audit logs. :type retention_days: int - :param audit_actions_and_groups: Specifies the Actions and Actions-Groups + :param audit_actions_and_groups: Specifies the Actions-Groups and Actions to audit. + The recommended set of action groups to use is the following combination - + this will audit all the queries and stored procedures executed against the + database, as well as successful and failed logins: + BATCH_COMPLETED_GROUP, + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, + FAILED_DATABASE_AUTHENTICATION_GROUP. + This above combination is also the set that is configured by default when + enabling auditing from the Azure portal. + The supported action groups to audit are (note: choose only specific + groups that cover your auditing needs. Using unnecessary groups could lead + to very large quantities of audit records): + APPLICATION_ROLE_CHANGE_PASSWORD_GROUP + BACKUP_RESTORE_GROUP + DATABASE_LOGOUT_GROUP + DATABASE_OBJECT_CHANGE_GROUP + DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP + DATABASE_OBJECT_PERMISSION_CHANGE_GROUP + DATABASE_OPERATION_GROUP + DATABASE_PERMISSION_CHANGE_GROUP + DATABASE_PRINCIPAL_CHANGE_GROUP + DATABASE_PRINCIPAL_IMPERSONATION_GROUP + DATABASE_ROLE_MEMBER_CHANGE_GROUP + FAILED_DATABASE_AUTHENTICATION_GROUP + SCHEMA_OBJECT_ACCESS_GROUP + SCHEMA_OBJECT_CHANGE_GROUP + SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP + SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP + USER_CHANGE_PASSWORD_GROUP + BATCH_STARTED_GROUP + BATCH_COMPLETED_GROUP + These are groups that cover all sql statements and stored procedures + executed against the database, and should not be used in combination with + other groups as this will result in duplicate audit logs. + For more information, see [Database-Level Audit Action + Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups). + For Database auditing policy, specific Actions can also be specified (note + that Actions cannot be specified for Server auditing policy). The + supported actions to audit are: + SELECT + UPDATE + INSERT + DELETE + EXECUTE + RECEIVE + REFERENCES + The general form for defining an action to be audited is: + ON BY + Note that in the above format can refer to an object like a + table, view, or stored procedure, or an entire database or schema. For the + latter cases, the forms DATABASE:: and SCHEMA:: are + used, respectively. + For example: + SELECT on dbo.myTable by public + SELECT on DATABASE::myDatabase by public + SELECT on SCHEMA::mySchema by public + For more information, see [Database-Level Audit + Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions) :type audit_actions_and_groups: list[str] :param storage_account_subscription_id: Specifies the blob storage subscription Id. :type storage_account_subscription_id: str :param is_storage_secondary_key_in_use: Specifies whether - storageAccountAccessKey value is the storage’s secondary key. + storageAccountAccessKey value is the storage's secondary key. :type is_storage_secondary_key_in_use: bool """ diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/database_blob_auditing_policy_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/database_blob_auditing_policy_py3.py index bfc95370f0fc..1c58ec560a03 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/database_blob_auditing_policy_py3.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/database_blob_auditing_policy_py3.py @@ -43,14 +43,72 @@ class DatabaseBlobAuditingPolicy(ProxyResource): :param retention_days: Specifies the number of days to keep in the audit logs. :type retention_days: int - :param audit_actions_and_groups: Specifies the Actions and Actions-Groups + :param audit_actions_and_groups: Specifies the Actions-Groups and Actions to audit. + The recommended set of action groups to use is the following combination - + this will audit all the queries and stored procedures executed against the + database, as well as successful and failed logins: + BATCH_COMPLETED_GROUP, + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, + FAILED_DATABASE_AUTHENTICATION_GROUP. + This above combination is also the set that is configured by default when + enabling auditing from the Azure portal. + The supported action groups to audit are (note: choose only specific + groups that cover your auditing needs. Using unnecessary groups could lead + to very large quantities of audit records): + APPLICATION_ROLE_CHANGE_PASSWORD_GROUP + BACKUP_RESTORE_GROUP + DATABASE_LOGOUT_GROUP + DATABASE_OBJECT_CHANGE_GROUP + DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP + DATABASE_OBJECT_PERMISSION_CHANGE_GROUP + DATABASE_OPERATION_GROUP + DATABASE_PERMISSION_CHANGE_GROUP + DATABASE_PRINCIPAL_CHANGE_GROUP + DATABASE_PRINCIPAL_IMPERSONATION_GROUP + DATABASE_ROLE_MEMBER_CHANGE_GROUP + FAILED_DATABASE_AUTHENTICATION_GROUP + SCHEMA_OBJECT_ACCESS_GROUP + SCHEMA_OBJECT_CHANGE_GROUP + SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP + SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP + USER_CHANGE_PASSWORD_GROUP + BATCH_STARTED_GROUP + BATCH_COMPLETED_GROUP + These are groups that cover all sql statements and stored procedures + executed against the database, and should not be used in combination with + other groups as this will result in duplicate audit logs. + For more information, see [Database-Level Audit Action + Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups). + For Database auditing policy, specific Actions can also be specified (note + that Actions cannot be specified for Server auditing policy). The + supported actions to audit are: + SELECT + UPDATE + INSERT + DELETE + EXECUTE + RECEIVE + REFERENCES + The general form for defining an action to be audited is: + ON BY + Note that in the above format can refer to an object like a + table, view, or stored procedure, or an entire database or schema. For the + latter cases, the forms DATABASE:: and SCHEMA:: are + used, respectively. + For example: + SELECT on dbo.myTable by public + SELECT on DATABASE::myDatabase by public + SELECT on SCHEMA::mySchema by public + For more information, see [Database-Level Audit + Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions) :type audit_actions_and_groups: list[str] :param storage_account_subscription_id: Specifies the blob storage subscription Id. :type storage_account_subscription_id: str :param is_storage_secondary_key_in_use: Specifies whether - storageAccountAccessKey value is the storage’s secondary key. + storageAccountAccessKey value is the storage's secondary key. :type is_storage_secondary_key_in_use: bool """ diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/database_security_alert_policy.py b/azure-mgmt-sql/azure/mgmt/sql/models/database_security_alert_policy.py index ce511c006b99..c425573a5a91 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/database_security_alert_policy.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/database_security_alert_policy.py @@ -36,7 +36,8 @@ class DatabaseSecurityAlertPolicy(ProxyResource): :type state: str or ~azure.mgmt.sql.models.SecurityAlertPolicyState :param disabled_alerts: Specifies the semicolon-separated list of alerts that are disabled, or empty string to disable no alerts. Possible values: - Sql_Injection; Sql_Injection_Vulnerability; Access_Anomaly; Usage_Anomaly. + Sql_Injection; Sql_Injection_Vulnerability; Access_Anomaly; + Data_Exfiltration; Unsafe_Action. :type disabled_alerts: str :param email_addresses: Specifies the semicolon-separated list of e-mail addresses to which the alert is sent. diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/database_security_alert_policy_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/database_security_alert_policy_py3.py index 8967d6a6e0f1..3d85e01a6635 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/database_security_alert_policy_py3.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/database_security_alert_policy_py3.py @@ -36,7 +36,8 @@ class DatabaseSecurityAlertPolicy(ProxyResource): :type state: str or ~azure.mgmt.sql.models.SecurityAlertPolicyState :param disabled_alerts: Specifies the semicolon-separated list of alerts that are disabled, or empty string to disable no alerts. Possible values: - Sql_Injection; Sql_Injection_Vulnerability; Access_Anomaly; Usage_Anomaly. + Sql_Injection; Sql_Injection_Vulnerability; Access_Anomaly; + Data_Exfiltration; Unsafe_Action. :type disabled_alerts: str :param email_addresses: Specifies the semicolon-separated list of e-mail addresses to which the alert is sent. diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/database_vulnerability_assessment.py b/azure-mgmt-sql/azure/mgmt/sql/models/database_vulnerability_assessment.py index a7e5921902ad..760e7166aef1 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/database_vulnerability_assessment.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/database_vulnerability_assessment.py @@ -30,10 +30,15 @@ class DatabaseVulnerabilityAssessment(ProxyResource): hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). :type storage_container_path: str - :param storage_container_sas_key: Required. A shared access signature (SAS - Key) that has write access to the blob container specified in - 'storageContainerPath' parameter. + :param storage_container_sas_key: A shared access signature (SAS Key) that + has write access to the blob container specified in 'storageContainerPath' + parameter. If 'storageAccountAccessKey' isn't specified, + StorageContainerSasKey is required. :type storage_container_sas_key: str + :param storage_account_access_key: Specifies the identifier key of the + vulnerability assessment storage account. If 'StorageContainerSasKey' + isn't specified, storageAccountAccessKey is required. + :type storage_account_access_key: str :param recurring_scans: The recurring scans settings :type recurring_scans: ~azure.mgmt.sql.models.VulnerabilityAssessmentRecurringScansProperties @@ -44,7 +49,6 @@ class DatabaseVulnerabilityAssessment(ProxyResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'storage_container_path': {'required': True}, - 'storage_container_sas_key': {'required': True}, } _attribute_map = { @@ -53,6 +57,7 @@ class DatabaseVulnerabilityAssessment(ProxyResource): 'type': {'key': 'type', 'type': 'str'}, 'storage_container_path': {'key': 'properties.storageContainerPath', 'type': 'str'}, 'storage_container_sas_key': {'key': 'properties.storageContainerSasKey', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, 'recurring_scans': {'key': 'properties.recurringScans', 'type': 'VulnerabilityAssessmentRecurringScansProperties'}, } @@ -60,4 +65,5 @@ def __init__(self, **kwargs): super(DatabaseVulnerabilityAssessment, self).__init__(**kwargs) self.storage_container_path = kwargs.get('storage_container_path', None) self.storage_container_sas_key = kwargs.get('storage_container_sas_key', None) + self.storage_account_access_key = kwargs.get('storage_account_access_key', None) self.recurring_scans = kwargs.get('recurring_scans', None) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/database_vulnerability_assessment_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/database_vulnerability_assessment_py3.py index 2dff8336ef3f..56fd72657b22 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/database_vulnerability_assessment_py3.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/database_vulnerability_assessment_py3.py @@ -30,10 +30,15 @@ class DatabaseVulnerabilityAssessment(ProxyResource): hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). :type storage_container_path: str - :param storage_container_sas_key: Required. A shared access signature (SAS - Key) that has write access to the blob container specified in - 'storageContainerPath' parameter. + :param storage_container_sas_key: A shared access signature (SAS Key) that + has write access to the blob container specified in 'storageContainerPath' + parameter. If 'storageAccountAccessKey' isn't specified, + StorageContainerSasKey is required. :type storage_container_sas_key: str + :param storage_account_access_key: Specifies the identifier key of the + vulnerability assessment storage account. If 'StorageContainerSasKey' + isn't specified, storageAccountAccessKey is required. + :type storage_account_access_key: str :param recurring_scans: The recurring scans settings :type recurring_scans: ~azure.mgmt.sql.models.VulnerabilityAssessmentRecurringScansProperties @@ -44,7 +49,6 @@ class DatabaseVulnerabilityAssessment(ProxyResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'storage_container_path': {'required': True}, - 'storage_container_sas_key': {'required': True}, } _attribute_map = { @@ -53,11 +57,13 @@ class DatabaseVulnerabilityAssessment(ProxyResource): 'type': {'key': 'type', 'type': 'str'}, 'storage_container_path': {'key': 'properties.storageContainerPath', 'type': 'str'}, 'storage_container_sas_key': {'key': 'properties.storageContainerSasKey', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, 'recurring_scans': {'key': 'properties.recurringScans', 'type': 'VulnerabilityAssessmentRecurringScansProperties'}, } - def __init__(self, *, storage_container_path: str, storage_container_sas_key: str, recurring_scans=None, **kwargs) -> None: + def __init__(self, *, storage_container_path: str, storage_container_sas_key: str=None, storage_account_access_key: str=None, recurring_scans=None, **kwargs) -> None: super(DatabaseVulnerabilityAssessment, self).__init__(**kwargs) self.storage_container_path = storage_container_path self.storage_container_sas_key = storage_container_sas_key + self.storage_account_access_key = storage_account_access_key self.recurring_scans = recurring_scans diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/extended_database_blob_auditing_policy.py b/azure-mgmt-sql/azure/mgmt/sql/models/extended_database_blob_auditing_policy.py new file mode 100644 index 000000000000..cdfb75e47f2a --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/extended_database_blob_auditing_policy.py @@ -0,0 +1,146 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class ExtendedDatabaseBlobAuditingPolicy(ProxyResource): + """An extended database blob auditing policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param predicate_expression: Specifies condition of where clause when + creating an audit. + :type predicate_expression: str + :param state: Required. Specifies the state of the policy. If state is + Enabled, storageEndpoint and storageAccountAccessKey are required. + Possible values include: 'Enabled', 'Disabled' + :type state: str or ~azure.mgmt.sql.models.BlobAuditingPolicyState + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). If state is Enabled, + storageEndpoint is required. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + auditing storage account. If state is Enabled, storageAccountAccessKey is + required. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the audit + logs. + :type retention_days: int + :param audit_actions_and_groups: Specifies the Actions-Groups and Actions + to audit. + The recommended set of action groups to use is the following combination - + this will audit all the queries and stored procedures executed against the + database, as well as successful and failed logins: + BATCH_COMPLETED_GROUP, + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, + FAILED_DATABASE_AUTHENTICATION_GROUP. + This above combination is also the set that is configured by default when + enabling auditing from the Azure portal. + The supported action groups to audit are (note: choose only specific + groups that cover your auditing needs. Using unnecessary groups could lead + to very large quantities of audit records): + APPLICATION_ROLE_CHANGE_PASSWORD_GROUP + BACKUP_RESTORE_GROUP + DATABASE_LOGOUT_GROUP + DATABASE_OBJECT_CHANGE_GROUP + DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP + DATABASE_OBJECT_PERMISSION_CHANGE_GROUP + DATABASE_OPERATION_GROUP + DATABASE_PERMISSION_CHANGE_GROUP + DATABASE_PRINCIPAL_CHANGE_GROUP + DATABASE_PRINCIPAL_IMPERSONATION_GROUP + DATABASE_ROLE_MEMBER_CHANGE_GROUP + FAILED_DATABASE_AUTHENTICATION_GROUP + SCHEMA_OBJECT_ACCESS_GROUP + SCHEMA_OBJECT_CHANGE_GROUP + SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP + SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP + USER_CHANGE_PASSWORD_GROUP + BATCH_STARTED_GROUP + BATCH_COMPLETED_GROUP + These are groups that cover all sql statements and stored procedures + executed against the database, and should not be used in combination with + other groups as this will result in duplicate audit logs. + For more information, see [Database-Level Audit Action + Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups). + For Database auditing policy, specific Actions can also be specified (note + that Actions cannot be specified for Server auditing policy). The + supported actions to audit are: + SELECT + UPDATE + INSERT + DELETE + EXECUTE + RECEIVE + REFERENCES + The general form for defining an action to be audited is: + ON BY + Note that in the above format can refer to an object like a + table, view, or stored procedure, or an entire database or schema. For the + latter cases, the forms DATABASE:: and SCHEMA:: are + used, respectively. + For example: + SELECT on dbo.myTable by public + SELECT on DATABASE::myDatabase by public + SELECT on SCHEMA::mySchema by public + For more information, see [Database-Level Audit + Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions) + :type audit_actions_and_groups: list[str] + :param storage_account_subscription_id: Specifies the blob storage + subscription Id. + :type storage_account_subscription_id: str + :param is_storage_secondary_key_in_use: Specifies whether + storageAccountAccessKey value is the storage's secondary key. + :type is_storage_secondary_key_in_use: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'predicate_expression': {'key': 'properties.predicateExpression', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'BlobAuditingPolicyState'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + 'audit_actions_and_groups': {'key': 'properties.auditActionsAndGroups', 'type': '[str]'}, + 'storage_account_subscription_id': {'key': 'properties.storageAccountSubscriptionId', 'type': 'str'}, + 'is_storage_secondary_key_in_use': {'key': 'properties.isStorageSecondaryKeyInUse', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ExtendedDatabaseBlobAuditingPolicy, self).__init__(**kwargs) + self.predicate_expression = kwargs.get('predicate_expression', None) + self.state = kwargs.get('state', None) + self.storage_endpoint = kwargs.get('storage_endpoint', None) + self.storage_account_access_key = kwargs.get('storage_account_access_key', None) + self.retention_days = kwargs.get('retention_days', None) + self.audit_actions_and_groups = kwargs.get('audit_actions_and_groups', None) + self.storage_account_subscription_id = kwargs.get('storage_account_subscription_id', None) + self.is_storage_secondary_key_in_use = kwargs.get('is_storage_secondary_key_in_use', None) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/extended_database_blob_auditing_policy_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/extended_database_blob_auditing_policy_py3.py new file mode 100644 index 000000000000..ee5ce27523e1 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/extended_database_blob_auditing_policy_py3.py @@ -0,0 +1,146 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class ExtendedDatabaseBlobAuditingPolicy(ProxyResource): + """An extended database blob auditing policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param predicate_expression: Specifies condition of where clause when + creating an audit. + :type predicate_expression: str + :param state: Required. Specifies the state of the policy. If state is + Enabled, storageEndpoint and storageAccountAccessKey are required. + Possible values include: 'Enabled', 'Disabled' + :type state: str or ~azure.mgmt.sql.models.BlobAuditingPolicyState + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). If state is Enabled, + storageEndpoint is required. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + auditing storage account. If state is Enabled, storageAccountAccessKey is + required. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the audit + logs. + :type retention_days: int + :param audit_actions_and_groups: Specifies the Actions-Groups and Actions + to audit. + The recommended set of action groups to use is the following combination - + this will audit all the queries and stored procedures executed against the + database, as well as successful and failed logins: + BATCH_COMPLETED_GROUP, + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, + FAILED_DATABASE_AUTHENTICATION_GROUP. + This above combination is also the set that is configured by default when + enabling auditing from the Azure portal. + The supported action groups to audit are (note: choose only specific + groups that cover your auditing needs. Using unnecessary groups could lead + to very large quantities of audit records): + APPLICATION_ROLE_CHANGE_PASSWORD_GROUP + BACKUP_RESTORE_GROUP + DATABASE_LOGOUT_GROUP + DATABASE_OBJECT_CHANGE_GROUP + DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP + DATABASE_OBJECT_PERMISSION_CHANGE_GROUP + DATABASE_OPERATION_GROUP + DATABASE_PERMISSION_CHANGE_GROUP + DATABASE_PRINCIPAL_CHANGE_GROUP + DATABASE_PRINCIPAL_IMPERSONATION_GROUP + DATABASE_ROLE_MEMBER_CHANGE_GROUP + FAILED_DATABASE_AUTHENTICATION_GROUP + SCHEMA_OBJECT_ACCESS_GROUP + SCHEMA_OBJECT_CHANGE_GROUP + SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP + SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP + USER_CHANGE_PASSWORD_GROUP + BATCH_STARTED_GROUP + BATCH_COMPLETED_GROUP + These are groups that cover all sql statements and stored procedures + executed against the database, and should not be used in combination with + other groups as this will result in duplicate audit logs. + For more information, see [Database-Level Audit Action + Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups). + For Database auditing policy, specific Actions can also be specified (note + that Actions cannot be specified for Server auditing policy). The + supported actions to audit are: + SELECT + UPDATE + INSERT + DELETE + EXECUTE + RECEIVE + REFERENCES + The general form for defining an action to be audited is: + ON BY + Note that in the above format can refer to an object like a + table, view, or stored procedure, or an entire database or schema. For the + latter cases, the forms DATABASE:: and SCHEMA:: are + used, respectively. + For example: + SELECT on dbo.myTable by public + SELECT on DATABASE::myDatabase by public + SELECT on SCHEMA::mySchema by public + For more information, see [Database-Level Audit + Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions) + :type audit_actions_and_groups: list[str] + :param storage_account_subscription_id: Specifies the blob storage + subscription Id. + :type storage_account_subscription_id: str + :param is_storage_secondary_key_in_use: Specifies whether + storageAccountAccessKey value is the storage's secondary key. + :type is_storage_secondary_key_in_use: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'predicate_expression': {'key': 'properties.predicateExpression', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'BlobAuditingPolicyState'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + 'audit_actions_and_groups': {'key': 'properties.auditActionsAndGroups', 'type': '[str]'}, + 'storage_account_subscription_id': {'key': 'properties.storageAccountSubscriptionId', 'type': 'str'}, + 'is_storage_secondary_key_in_use': {'key': 'properties.isStorageSecondaryKeyInUse', 'type': 'bool'}, + } + + def __init__(self, *, state, predicate_expression: str=None, storage_endpoint: str=None, storage_account_access_key: str=None, retention_days: int=None, audit_actions_and_groups=None, storage_account_subscription_id: str=None, is_storage_secondary_key_in_use: bool=None, **kwargs) -> None: + super(ExtendedDatabaseBlobAuditingPolicy, self).__init__(**kwargs) + self.predicate_expression = predicate_expression + self.state = state + self.storage_endpoint = storage_endpoint + self.storage_account_access_key = storage_account_access_key + self.retention_days = retention_days + self.audit_actions_and_groups = audit_actions_and_groups + self.storage_account_subscription_id = storage_account_subscription_id + self.is_storage_secondary_key_in_use = is_storage_secondary_key_in_use diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/extended_server_blob_auditing_policy.py b/azure-mgmt-sql/azure/mgmt/sql/models/extended_server_blob_auditing_policy.py new file mode 100644 index 000000000000..a11e18ac68b1 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/extended_server_blob_auditing_policy.py @@ -0,0 +1,146 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class ExtendedServerBlobAuditingPolicy(ProxyResource): + """An extended server blob auditing policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param predicate_expression: Specifies condition of where clause when + creating an audit. + :type predicate_expression: str + :param state: Required. Specifies the state of the policy. If state is + Enabled, storageEndpoint and storageAccountAccessKey are required. + Possible values include: 'Enabled', 'Disabled' + :type state: str or ~azure.mgmt.sql.models.BlobAuditingPolicyState + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). If state is Enabled, + storageEndpoint is required. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + auditing storage account. If state is Enabled, storageAccountAccessKey is + required. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the audit + logs. + :type retention_days: int + :param audit_actions_and_groups: Specifies the Actions-Groups and Actions + to audit. + The recommended set of action groups to use is the following combination - + this will audit all the queries and stored procedures executed against the + database, as well as successful and failed logins: + BATCH_COMPLETED_GROUP, + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, + FAILED_DATABASE_AUTHENTICATION_GROUP. + This above combination is also the set that is configured by default when + enabling auditing from the Azure portal. + The supported action groups to audit are (note: choose only specific + groups that cover your auditing needs. Using unnecessary groups could lead + to very large quantities of audit records): + APPLICATION_ROLE_CHANGE_PASSWORD_GROUP + BACKUP_RESTORE_GROUP + DATABASE_LOGOUT_GROUP + DATABASE_OBJECT_CHANGE_GROUP + DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP + DATABASE_OBJECT_PERMISSION_CHANGE_GROUP + DATABASE_OPERATION_GROUP + DATABASE_PERMISSION_CHANGE_GROUP + DATABASE_PRINCIPAL_CHANGE_GROUP + DATABASE_PRINCIPAL_IMPERSONATION_GROUP + DATABASE_ROLE_MEMBER_CHANGE_GROUP + FAILED_DATABASE_AUTHENTICATION_GROUP + SCHEMA_OBJECT_ACCESS_GROUP + SCHEMA_OBJECT_CHANGE_GROUP + SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP + SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP + USER_CHANGE_PASSWORD_GROUP + BATCH_STARTED_GROUP + BATCH_COMPLETED_GROUP + These are groups that cover all sql statements and stored procedures + executed against the database, and should not be used in combination with + other groups as this will result in duplicate audit logs. + For more information, see [Database-Level Audit Action + Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups). + For Database auditing policy, specific Actions can also be specified (note + that Actions cannot be specified for Server auditing policy). The + supported actions to audit are: + SELECT + UPDATE + INSERT + DELETE + EXECUTE + RECEIVE + REFERENCES + The general form for defining an action to be audited is: + ON BY + Note that in the above format can refer to an object like a + table, view, or stored procedure, or an entire database or schema. For the + latter cases, the forms DATABASE:: and SCHEMA:: are + used, respectively. + For example: + SELECT on dbo.myTable by public + SELECT on DATABASE::myDatabase by public + SELECT on SCHEMA::mySchema by public + For more information, see [Database-Level Audit + Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions) + :type audit_actions_and_groups: list[str] + :param storage_account_subscription_id: Specifies the blob storage + subscription Id. + :type storage_account_subscription_id: str + :param is_storage_secondary_key_in_use: Specifies whether + storageAccountAccessKey value is the storage's secondary key. + :type is_storage_secondary_key_in_use: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'predicate_expression': {'key': 'properties.predicateExpression', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'BlobAuditingPolicyState'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + 'audit_actions_and_groups': {'key': 'properties.auditActionsAndGroups', 'type': '[str]'}, + 'storage_account_subscription_id': {'key': 'properties.storageAccountSubscriptionId', 'type': 'str'}, + 'is_storage_secondary_key_in_use': {'key': 'properties.isStorageSecondaryKeyInUse', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ExtendedServerBlobAuditingPolicy, self).__init__(**kwargs) + self.predicate_expression = kwargs.get('predicate_expression', None) + self.state = kwargs.get('state', None) + self.storage_endpoint = kwargs.get('storage_endpoint', None) + self.storage_account_access_key = kwargs.get('storage_account_access_key', None) + self.retention_days = kwargs.get('retention_days', None) + self.audit_actions_and_groups = kwargs.get('audit_actions_and_groups', None) + self.storage_account_subscription_id = kwargs.get('storage_account_subscription_id', None) + self.is_storage_secondary_key_in_use = kwargs.get('is_storage_secondary_key_in_use', None) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/extended_server_blob_auditing_policy_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/extended_server_blob_auditing_policy_py3.py new file mode 100644 index 000000000000..ac522801a8dd --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/extended_server_blob_auditing_policy_py3.py @@ -0,0 +1,146 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class ExtendedServerBlobAuditingPolicy(ProxyResource): + """An extended server blob auditing policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param predicate_expression: Specifies condition of where clause when + creating an audit. + :type predicate_expression: str + :param state: Required. Specifies the state of the policy. If state is + Enabled, storageEndpoint and storageAccountAccessKey are required. + Possible values include: 'Enabled', 'Disabled' + :type state: str or ~azure.mgmt.sql.models.BlobAuditingPolicyState + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). If state is Enabled, + storageEndpoint is required. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + auditing storage account. If state is Enabled, storageAccountAccessKey is + required. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the audit + logs. + :type retention_days: int + :param audit_actions_and_groups: Specifies the Actions-Groups and Actions + to audit. + The recommended set of action groups to use is the following combination - + this will audit all the queries and stored procedures executed against the + database, as well as successful and failed logins: + BATCH_COMPLETED_GROUP, + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, + FAILED_DATABASE_AUTHENTICATION_GROUP. + This above combination is also the set that is configured by default when + enabling auditing from the Azure portal. + The supported action groups to audit are (note: choose only specific + groups that cover your auditing needs. Using unnecessary groups could lead + to very large quantities of audit records): + APPLICATION_ROLE_CHANGE_PASSWORD_GROUP + BACKUP_RESTORE_GROUP + DATABASE_LOGOUT_GROUP + DATABASE_OBJECT_CHANGE_GROUP + DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP + DATABASE_OBJECT_PERMISSION_CHANGE_GROUP + DATABASE_OPERATION_GROUP + DATABASE_PERMISSION_CHANGE_GROUP + DATABASE_PRINCIPAL_CHANGE_GROUP + DATABASE_PRINCIPAL_IMPERSONATION_GROUP + DATABASE_ROLE_MEMBER_CHANGE_GROUP + FAILED_DATABASE_AUTHENTICATION_GROUP + SCHEMA_OBJECT_ACCESS_GROUP + SCHEMA_OBJECT_CHANGE_GROUP + SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP + SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP + USER_CHANGE_PASSWORD_GROUP + BATCH_STARTED_GROUP + BATCH_COMPLETED_GROUP + These are groups that cover all sql statements and stored procedures + executed against the database, and should not be used in combination with + other groups as this will result in duplicate audit logs. + For more information, see [Database-Level Audit Action + Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups). + For Database auditing policy, specific Actions can also be specified (note + that Actions cannot be specified for Server auditing policy). The + supported actions to audit are: + SELECT + UPDATE + INSERT + DELETE + EXECUTE + RECEIVE + REFERENCES + The general form for defining an action to be audited is: + ON BY + Note that in the above format can refer to an object like a + table, view, or stored procedure, or an entire database or schema. For the + latter cases, the forms DATABASE:: and SCHEMA:: are + used, respectively. + For example: + SELECT on dbo.myTable by public + SELECT on DATABASE::myDatabase by public + SELECT on SCHEMA::mySchema by public + For more information, see [Database-Level Audit + Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions) + :type audit_actions_and_groups: list[str] + :param storage_account_subscription_id: Specifies the blob storage + subscription Id. + :type storage_account_subscription_id: str + :param is_storage_secondary_key_in_use: Specifies whether + storageAccountAccessKey value is the storage's secondary key. + :type is_storage_secondary_key_in_use: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'predicate_expression': {'key': 'properties.predicateExpression', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'BlobAuditingPolicyState'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + 'audit_actions_and_groups': {'key': 'properties.auditActionsAndGroups', 'type': '[str]'}, + 'storage_account_subscription_id': {'key': 'properties.storageAccountSubscriptionId', 'type': 'str'}, + 'is_storage_secondary_key_in_use': {'key': 'properties.isStorageSecondaryKeyInUse', 'type': 'bool'}, + } + + def __init__(self, *, state, predicate_expression: str=None, storage_endpoint: str=None, storage_account_access_key: str=None, retention_days: int=None, audit_actions_and_groups=None, storage_account_subscription_id: str=None, is_storage_secondary_key_in_use: bool=None, **kwargs) -> None: + super(ExtendedServerBlobAuditingPolicy, self).__init__(**kwargs) + self.predicate_expression = predicate_expression + self.state = state + self.storage_endpoint = storage_endpoint + self.storage_account_access_key = storage_account_access_key + self.retention_days = retention_days + self.audit_actions_and_groups = audit_actions_and_groups + self.storage_account_subscription_id = storage_account_subscription_id + self.is_storage_secondary_key_in_use = is_storage_secondary_key_in_use diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance.py index 9239f4aa347d..8a3224e3c54f 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance.py @@ -56,6 +56,13 @@ class ManagedInstance(TrackedResource): :type v_cores: int :param storage_size_in_gb: The maximum storage size in GB. :type storage_size_in_gb: int + :ivar collation: Collation of the managed instance. + :vartype collation: str + :ivar dns_zone: The Dns Zone that the managed instance is in. + :vartype dns_zone: str + :param dns_zone_partner: The resource id of another managed instance whose + DNS zone this managed instance will share after creation. + :type dns_zone_partner: str """ _validation = { @@ -65,6 +72,8 @@ class ManagedInstance(TrackedResource): 'location': {'required': True}, 'fully_qualified_domain_name': {'readonly': True}, 'state': {'readonly': True}, + 'collation': {'readonly': True}, + 'dns_zone': {'readonly': True}, } _attribute_map = { @@ -83,6 +92,9 @@ class ManagedInstance(TrackedResource): 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'v_cores': {'key': 'properties.vCores', 'type': 'int'}, 'storage_size_in_gb': {'key': 'properties.storageSizeInGB', 'type': 'int'}, + 'collation': {'key': 'properties.collation', 'type': 'str'}, + 'dns_zone': {'key': 'properties.dnsZone', 'type': 'str'}, + 'dns_zone_partner': {'key': 'properties.dnsZonePartner', 'type': 'str'}, } def __init__(self, **kwargs): @@ -97,3 +109,6 @@ def __init__(self, **kwargs): self.license_type = kwargs.get('license_type', None) self.v_cores = kwargs.get('v_cores', None) self.storage_size_in_gb = kwargs.get('storage_size_in_gb', None) + self.collation = None + self.dns_zone = None + self.dns_zone_partner = kwargs.get('dns_zone_partner', None) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector.py new file mode 100644 index 000000000000..87ffcbf35af7 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class ManagedInstanceEncryptionProtector(ProxyResource): + """The managed instance encryption protector. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :ivar kind: Kind of encryption protector. This is metadata used for the + Azure portal experience. + :vartype kind: str + :param server_key_name: The name of the managed instance key. + :type server_key_name: str + :param server_key_type: Required. The encryption protector type like + 'ServiceManaged', 'AzureKeyVault'. Possible values include: + 'ServiceManaged', 'AzureKeyVault' + :type server_key_type: str or ~azure.mgmt.sql.models.ServerKeyType + :ivar uri: The URI of the server key. + :vartype uri: str + :ivar thumbprint: Thumbprint of the server key. + :vartype thumbprint: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kind': {'readonly': True}, + 'server_key_type': {'required': True}, + 'uri': {'readonly': True}, + 'thumbprint': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'server_key_name': {'key': 'properties.serverKeyName', 'type': 'str'}, + 'server_key_type': {'key': 'properties.serverKeyType', 'type': 'str'}, + 'uri': {'key': 'properties.uri', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedInstanceEncryptionProtector, self).__init__(**kwargs) + self.kind = None + self.server_key_name = kwargs.get('server_key_name', None) + self.server_key_type = kwargs.get('server_key_type', None) + self.uri = None + self.thumbprint = None diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector_paged.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector_paged.py new file mode 100644 index 000000000000..39ba69c33e17 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ManagedInstanceEncryptionProtectorPaged(Paged): + """ + A paging container for iterating over a list of :class:`ManagedInstanceEncryptionProtector ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ManagedInstanceEncryptionProtector]'} + } + + def __init__(self, *args, **kwargs): + + super(ManagedInstanceEncryptionProtectorPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector_py3.py new file mode 100644 index 000000000000..4d45efcf8c5d --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_encryption_protector_py3.py @@ -0,0 +1,71 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class ManagedInstanceEncryptionProtector(ProxyResource): + """The managed instance encryption protector. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :ivar kind: Kind of encryption protector. This is metadata used for the + Azure portal experience. + :vartype kind: str + :param server_key_name: The name of the managed instance key. + :type server_key_name: str + :param server_key_type: Required. The encryption protector type like + 'ServiceManaged', 'AzureKeyVault'. Possible values include: + 'ServiceManaged', 'AzureKeyVault' + :type server_key_type: str or ~azure.mgmt.sql.models.ServerKeyType + :ivar uri: The URI of the server key. + :vartype uri: str + :ivar thumbprint: Thumbprint of the server key. + :vartype thumbprint: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kind': {'readonly': True}, + 'server_key_type': {'required': True}, + 'uri': {'readonly': True}, + 'thumbprint': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'server_key_name': {'key': 'properties.serverKeyName', 'type': 'str'}, + 'server_key_type': {'key': 'properties.serverKeyType', 'type': 'str'}, + 'uri': {'key': 'properties.uri', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + } + + def __init__(self, *, server_key_type, server_key_name: str=None, **kwargs) -> None: + super(ManagedInstanceEncryptionProtector, self).__init__(**kwargs) + self.kind = None + self.server_key_name = server_key_name + self.server_key_type = server_key_type + self.uri = None + self.thumbprint = None diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key.py new file mode 100644 index 000000000000..5a7ee9724f96 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class ManagedInstanceKey(ProxyResource): + """A managed instance key. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :ivar kind: Kind of encryption protector. This is metadata used for the + Azure portal experience. + :vartype kind: str + :param server_key_type: Required. The key type like 'ServiceManaged', + 'AzureKeyVault'. Possible values include: 'ServiceManaged', + 'AzureKeyVault' + :type server_key_type: str or ~azure.mgmt.sql.models.ServerKeyType + :param uri: The URI of the key. If the ServerKeyType is AzureKeyVault, + then the URI is required. + :type uri: str + :ivar thumbprint: Thumbprint of the key. + :vartype thumbprint: str + :ivar creation_date: The key creation date. + :vartype creation_date: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kind': {'readonly': True}, + 'server_key_type': {'required': True}, + 'thumbprint': {'readonly': True}, + 'creation_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'server_key_type': {'key': 'properties.serverKeyType', 'type': 'str'}, + 'uri': {'key': 'properties.uri', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'creation_date': {'key': 'properties.creationDate', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(ManagedInstanceKey, self).__init__(**kwargs) + self.kind = None + self.server_key_type = kwargs.get('server_key_type', None) + self.uri = kwargs.get('uri', None) + self.thumbprint = None + self.creation_date = None diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key_paged.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key_paged.py new file mode 100644 index 000000000000..8c730f73a383 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ManagedInstanceKeyPaged(Paged): + """ + A paging container for iterating over a list of :class:`ManagedInstanceKey ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ManagedInstanceKey]'} + } + + def __init__(self, *args, **kwargs): + + super(ManagedInstanceKeyPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key_py3.py new file mode 100644 index 000000000000..f00bafa838f2 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_key_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class ManagedInstanceKey(ProxyResource): + """A managed instance key. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :ivar kind: Kind of encryption protector. This is metadata used for the + Azure portal experience. + :vartype kind: str + :param server_key_type: Required. The key type like 'ServiceManaged', + 'AzureKeyVault'. Possible values include: 'ServiceManaged', + 'AzureKeyVault' + :type server_key_type: str or ~azure.mgmt.sql.models.ServerKeyType + :param uri: The URI of the key. If the ServerKeyType is AzureKeyVault, + then the URI is required. + :type uri: str + :ivar thumbprint: Thumbprint of the key. + :vartype thumbprint: str + :ivar creation_date: The key creation date. + :vartype creation_date: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'kind': {'readonly': True}, + 'server_key_type': {'required': True}, + 'thumbprint': {'readonly': True}, + 'creation_date': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'server_key_type': {'key': 'properties.serverKeyType', 'type': 'str'}, + 'uri': {'key': 'properties.uri', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'creation_date': {'key': 'properties.creationDate', 'type': 'iso-8601'}, + } + + def __init__(self, *, server_key_type, uri: str=None, **kwargs) -> None: + super(ManagedInstanceKey, self).__init__(**kwargs) + self.kind = None + self.server_key_type = server_key_type + self.uri = uri + self.thumbprint = None + self.creation_date = None diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_py3.py index 1cf2899bbfee..53f212f4973f 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_py3.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_py3.py @@ -56,6 +56,13 @@ class ManagedInstance(TrackedResource): :type v_cores: int :param storage_size_in_gb: The maximum storage size in GB. :type storage_size_in_gb: int + :ivar collation: Collation of the managed instance. + :vartype collation: str + :ivar dns_zone: The Dns Zone that the managed instance is in. + :vartype dns_zone: str + :param dns_zone_partner: The resource id of another managed instance whose + DNS zone this managed instance will share after creation. + :type dns_zone_partner: str """ _validation = { @@ -65,6 +72,8 @@ class ManagedInstance(TrackedResource): 'location': {'required': True}, 'fully_qualified_domain_name': {'readonly': True}, 'state': {'readonly': True}, + 'collation': {'readonly': True}, + 'dns_zone': {'readonly': True}, } _attribute_map = { @@ -83,9 +92,12 @@ class ManagedInstance(TrackedResource): 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'v_cores': {'key': 'properties.vCores', 'type': 'int'}, 'storage_size_in_gb': {'key': 'properties.storageSizeInGB', 'type': 'int'}, + 'collation': {'key': 'properties.collation', 'type': 'str'}, + 'dns_zone': {'key': 'properties.dnsZone', 'type': 'str'}, + 'dns_zone_partner': {'key': 'properties.dnsZonePartner', 'type': 'str'}, } - def __init__(self, *, location: str, tags=None, identity=None, sku=None, administrator_login: str=None, administrator_login_password: str=None, subnet_id: str=None, license_type: str=None, v_cores: int=None, storage_size_in_gb: int=None, **kwargs) -> None: + def __init__(self, *, location: str, tags=None, identity=None, sku=None, administrator_login: str=None, administrator_login_password: str=None, subnet_id: str=None, license_type: str=None, v_cores: int=None, storage_size_in_gb: int=None, dns_zone_partner: str=None, **kwargs) -> None: super(ManagedInstance, self).__init__(location=location, tags=tags, **kwargs) self.identity = identity self.sku = sku @@ -97,3 +109,6 @@ def __init__(self, *, location: str, tags=None, identity=None, sku=None, adminis self.license_type = license_type self.v_cores = v_cores self.storage_size_in_gb = storage_size_in_gb + self.collation = None + self.dns_zone = None + self.dns_zone_partner = dns_zone_partner diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_update.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_update.py index 7ea51f29ddff..1a259b1e3530 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_update.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_update.py @@ -41,6 +41,13 @@ class ManagedInstanceUpdate(Model): :type v_cores: int :param storage_size_in_gb: The maximum storage size in GB. :type storage_size_in_gb: int + :ivar collation: Collation of the managed instance. + :vartype collation: str + :ivar dns_zone: The Dns Zone that the managed instance is in. + :vartype dns_zone: str + :param dns_zone_partner: The resource id of another managed instance whose + DNS zone this managed instance will share after creation. + :type dns_zone_partner: str :param tags: Resource tags. :type tags: dict[str, str] """ @@ -48,6 +55,8 @@ class ManagedInstanceUpdate(Model): _validation = { 'fully_qualified_domain_name': {'readonly': True}, 'state': {'readonly': True}, + 'collation': {'readonly': True}, + 'dns_zone': {'readonly': True}, } _attribute_map = { @@ -60,6 +69,9 @@ class ManagedInstanceUpdate(Model): 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'v_cores': {'key': 'properties.vCores', 'type': 'int'}, 'storage_size_in_gb': {'key': 'properties.storageSizeInGB', 'type': 'int'}, + 'collation': {'key': 'properties.collation', 'type': 'str'}, + 'dns_zone': {'key': 'properties.dnsZone', 'type': 'str'}, + 'dns_zone_partner': {'key': 'properties.dnsZonePartner', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, } @@ -74,4 +86,7 @@ def __init__(self, **kwargs): self.license_type = kwargs.get('license_type', None) self.v_cores = kwargs.get('v_cores', None) self.storage_size_in_gb = kwargs.get('storage_size_in_gb', None) + self.collation = None + self.dns_zone = None + self.dns_zone_partner = kwargs.get('dns_zone_partner', None) self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_update_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_update_py3.py index 0adbe5f439f8..205b2d2063f8 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_update_py3.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/managed_instance_update_py3.py @@ -41,6 +41,13 @@ class ManagedInstanceUpdate(Model): :type v_cores: int :param storage_size_in_gb: The maximum storage size in GB. :type storage_size_in_gb: int + :ivar collation: Collation of the managed instance. + :vartype collation: str + :ivar dns_zone: The Dns Zone that the managed instance is in. + :vartype dns_zone: str + :param dns_zone_partner: The resource id of another managed instance whose + DNS zone this managed instance will share after creation. + :type dns_zone_partner: str :param tags: Resource tags. :type tags: dict[str, str] """ @@ -48,6 +55,8 @@ class ManagedInstanceUpdate(Model): _validation = { 'fully_qualified_domain_name': {'readonly': True}, 'state': {'readonly': True}, + 'collation': {'readonly': True}, + 'dns_zone': {'readonly': True}, } _attribute_map = { @@ -60,10 +69,13 @@ class ManagedInstanceUpdate(Model): 'license_type': {'key': 'properties.licenseType', 'type': 'str'}, 'v_cores': {'key': 'properties.vCores', 'type': 'int'}, 'storage_size_in_gb': {'key': 'properties.storageSizeInGB', 'type': 'int'}, + 'collation': {'key': 'properties.collation', 'type': 'str'}, + 'dns_zone': {'key': 'properties.dnsZone', 'type': 'str'}, + 'dns_zone_partner': {'key': 'properties.dnsZonePartner', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, *, sku=None, administrator_login: str=None, administrator_login_password: str=None, subnet_id: str=None, license_type: str=None, v_cores: int=None, storage_size_in_gb: int=None, tags=None, **kwargs) -> None: + def __init__(self, *, sku=None, administrator_login: str=None, administrator_login_password: str=None, subnet_id: str=None, license_type: str=None, v_cores: int=None, storage_size_in_gb: int=None, dns_zone_partner: str=None, tags=None, **kwargs) -> None: super(ManagedInstanceUpdate, self).__init__(**kwargs) self.sku = sku self.fully_qualified_domain_name = None @@ -74,4 +86,7 @@ def __init__(self, *, sku=None, administrator_login: str=None, administrator_log self.license_type = license_type self.v_cores = v_cores self.storage_size_in_gb = storage_size_in_gb + self.collation = None + self.dns_zone = None + self.dns_zone_partner = dns_zone_partner self.tags = tags diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/server_blob_auditing_policy.py b/azure-mgmt-sql/azure/mgmt/sql/models/server_blob_auditing_policy.py new file mode 100644 index 000000000000..0232582a4237 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/server_blob_auditing_policy.py @@ -0,0 +1,141 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class ServerBlobAuditingPolicy(ProxyResource): + """A server blob auditing policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param state: Required. Specifies the state of the policy. If state is + Enabled, storageEndpoint and storageAccountAccessKey are required. + Possible values include: 'Enabled', 'Disabled' + :type state: str or ~azure.mgmt.sql.models.BlobAuditingPolicyState + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). If state is Enabled, + storageEndpoint is required. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + auditing storage account. If state is Enabled, storageAccountAccessKey is + required. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the audit + logs. + :type retention_days: int + :param audit_actions_and_groups: Specifies the Actions-Groups and Actions + to audit. + The recommended set of action groups to use is the following combination - + this will audit all the queries and stored procedures executed against the + database, as well as successful and failed logins: + BATCH_COMPLETED_GROUP, + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, + FAILED_DATABASE_AUTHENTICATION_GROUP. + This above combination is also the set that is configured by default when + enabling auditing from the Azure portal. + The supported action groups to audit are (note: choose only specific + groups that cover your auditing needs. Using unnecessary groups could lead + to very large quantities of audit records): + APPLICATION_ROLE_CHANGE_PASSWORD_GROUP + BACKUP_RESTORE_GROUP + DATABASE_LOGOUT_GROUP + DATABASE_OBJECT_CHANGE_GROUP + DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP + DATABASE_OBJECT_PERMISSION_CHANGE_GROUP + DATABASE_OPERATION_GROUP + DATABASE_PERMISSION_CHANGE_GROUP + DATABASE_PRINCIPAL_CHANGE_GROUP + DATABASE_PRINCIPAL_IMPERSONATION_GROUP + DATABASE_ROLE_MEMBER_CHANGE_GROUP + FAILED_DATABASE_AUTHENTICATION_GROUP + SCHEMA_OBJECT_ACCESS_GROUP + SCHEMA_OBJECT_CHANGE_GROUP + SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP + SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP + USER_CHANGE_PASSWORD_GROUP + BATCH_STARTED_GROUP + BATCH_COMPLETED_GROUP + These are groups that cover all sql statements and stored procedures + executed against the database, and should not be used in combination with + other groups as this will result in duplicate audit logs. + For more information, see [Database-Level Audit Action + Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups). + For Database auditing policy, specific Actions can also be specified (note + that Actions cannot be specified for Server auditing policy). The + supported actions to audit are: + SELECT + UPDATE + INSERT + DELETE + EXECUTE + RECEIVE + REFERENCES + The general form for defining an action to be audited is: + ON BY + Note that in the above format can refer to an object like a + table, view, or stored procedure, or an entire database or schema. For the + latter cases, the forms DATABASE:: and SCHEMA:: are + used, respectively. + For example: + SELECT on dbo.myTable by public + SELECT on DATABASE::myDatabase by public + SELECT on SCHEMA::mySchema by public + For more information, see [Database-Level Audit + Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions) + :type audit_actions_and_groups: list[str] + :param storage_account_subscription_id: Specifies the blob storage + subscription Id. + :type storage_account_subscription_id: str + :param is_storage_secondary_key_in_use: Specifies whether + storageAccountAccessKey value is the storage's secondary key. + :type is_storage_secondary_key_in_use: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'BlobAuditingPolicyState'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + 'audit_actions_and_groups': {'key': 'properties.auditActionsAndGroups', 'type': '[str]'}, + 'storage_account_subscription_id': {'key': 'properties.storageAccountSubscriptionId', 'type': 'str'}, + 'is_storage_secondary_key_in_use': {'key': 'properties.isStorageSecondaryKeyInUse', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ServerBlobAuditingPolicy, self).__init__(**kwargs) + self.state = kwargs.get('state', None) + self.storage_endpoint = kwargs.get('storage_endpoint', None) + self.storage_account_access_key = kwargs.get('storage_account_access_key', None) + self.retention_days = kwargs.get('retention_days', None) + self.audit_actions_and_groups = kwargs.get('audit_actions_and_groups', None) + self.storage_account_subscription_id = kwargs.get('storage_account_subscription_id', None) + self.is_storage_secondary_key_in_use = kwargs.get('is_storage_secondary_key_in_use', None) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/server_blob_auditing_policy_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/server_blob_auditing_policy_py3.py new file mode 100644 index 000000000000..51dcc8c41d4c --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/server_blob_auditing_policy_py3.py @@ -0,0 +1,141 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class ServerBlobAuditingPolicy(ProxyResource): + """A server blob auditing policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param state: Required. Specifies the state of the policy. If state is + Enabled, storageEndpoint and storageAccountAccessKey are required. + Possible values include: 'Enabled', 'Disabled' + :type state: str or ~azure.mgmt.sql.models.BlobAuditingPolicyState + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). If state is Enabled, + storageEndpoint is required. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + auditing storage account. If state is Enabled, storageAccountAccessKey is + required. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the audit + logs. + :type retention_days: int + :param audit_actions_and_groups: Specifies the Actions-Groups and Actions + to audit. + The recommended set of action groups to use is the following combination - + this will audit all the queries and stored procedures executed against the + database, as well as successful and failed logins: + BATCH_COMPLETED_GROUP, + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, + FAILED_DATABASE_AUTHENTICATION_GROUP. + This above combination is also the set that is configured by default when + enabling auditing from the Azure portal. + The supported action groups to audit are (note: choose only specific + groups that cover your auditing needs. Using unnecessary groups could lead + to very large quantities of audit records): + APPLICATION_ROLE_CHANGE_PASSWORD_GROUP + BACKUP_RESTORE_GROUP + DATABASE_LOGOUT_GROUP + DATABASE_OBJECT_CHANGE_GROUP + DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP + DATABASE_OBJECT_PERMISSION_CHANGE_GROUP + DATABASE_OPERATION_GROUP + DATABASE_PERMISSION_CHANGE_GROUP + DATABASE_PRINCIPAL_CHANGE_GROUP + DATABASE_PRINCIPAL_IMPERSONATION_GROUP + DATABASE_ROLE_MEMBER_CHANGE_GROUP + FAILED_DATABASE_AUTHENTICATION_GROUP + SCHEMA_OBJECT_ACCESS_GROUP + SCHEMA_OBJECT_CHANGE_GROUP + SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP + SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP + SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP + USER_CHANGE_PASSWORD_GROUP + BATCH_STARTED_GROUP + BATCH_COMPLETED_GROUP + These are groups that cover all sql statements and stored procedures + executed against the database, and should not be used in combination with + other groups as this will result in duplicate audit logs. + For more information, see [Database-Level Audit Action + Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups). + For Database auditing policy, specific Actions can also be specified (note + that Actions cannot be specified for Server auditing policy). The + supported actions to audit are: + SELECT + UPDATE + INSERT + DELETE + EXECUTE + RECEIVE + REFERENCES + The general form for defining an action to be audited is: + ON BY + Note that in the above format can refer to an object like a + table, view, or stored procedure, or an entire database or schema. For the + latter cases, the forms DATABASE:: and SCHEMA:: are + used, respectively. + For example: + SELECT on dbo.myTable by public + SELECT on DATABASE::myDatabase by public + SELECT on SCHEMA::mySchema by public + For more information, see [Database-Level Audit + Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions) + :type audit_actions_and_groups: list[str] + :param storage_account_subscription_id: Specifies the blob storage + subscription Id. + :type storage_account_subscription_id: str + :param is_storage_secondary_key_in_use: Specifies whether + storageAccountAccessKey value is the storage's secondary key. + :type is_storage_secondary_key_in_use: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'BlobAuditingPolicyState'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + 'audit_actions_and_groups': {'key': 'properties.auditActionsAndGroups', 'type': '[str]'}, + 'storage_account_subscription_id': {'key': 'properties.storageAccountSubscriptionId', 'type': 'str'}, + 'is_storage_secondary_key_in_use': {'key': 'properties.isStorageSecondaryKeyInUse', 'type': 'bool'}, + } + + def __init__(self, *, state, storage_endpoint: str=None, storage_account_access_key: str=None, retention_days: int=None, audit_actions_and_groups=None, storage_account_subscription_id: str=None, is_storage_secondary_key_in_use: bool=None, **kwargs) -> None: + super(ServerBlobAuditingPolicy, self).__init__(**kwargs) + self.state = state + self.storage_endpoint = storage_endpoint + self.storage_account_access_key = storage_account_access_key + self.retention_days = retention_days + self.audit_actions_and_groups = audit_actions_and_groups + self.storage_account_subscription_id = storage_account_subscription_id + self.is_storage_secondary_key_in_use = is_storage_secondary_key_in_use diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/server_security_alert_policy.py b/azure-mgmt-sql/azure/mgmt/sql/models/server_security_alert_policy.py new file mode 100644 index 000000000000..04e3ddc44869 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/server_security_alert_policy.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class ServerSecurityAlertPolicy(ProxyResource): + """A server security alert policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param state: Required. Specifies the state of the policy, whether it is + enabled or disabled. Possible values include: 'New', 'Enabled', 'Disabled' + :type state: str or ~azure.mgmt.sql.models.SecurityAlertPolicyState + :param disabled_alerts: Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly, Data_Exfiltration, Unsafe_Action + :type disabled_alerts: list[str] + :param email_addresses: Specifies an array of e-mail addresses to which + the alert is sent. + :type email_addresses: list[str] + :param email_account_admins: Specifies that the alert is sent to the + account administrators. + :type email_account_admins: bool + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). This blob storage will hold all + Threat Detection audit logs. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + Threat Detection audit storage account. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the Threat + Detection audit logs. + :type retention_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'SecurityAlertPolicyState'}, + 'disabled_alerts': {'key': 'properties.disabledAlerts', 'type': '[str]'}, + 'email_addresses': {'key': 'properties.emailAddresses', 'type': '[str]'}, + 'email_account_admins': {'key': 'properties.emailAccountAdmins', 'type': 'bool'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ServerSecurityAlertPolicy, self).__init__(**kwargs) + self.state = kwargs.get('state', None) + self.disabled_alerts = kwargs.get('disabled_alerts', None) + self.email_addresses = kwargs.get('email_addresses', None) + self.email_account_admins = kwargs.get('email_account_admins', None) + self.storage_endpoint = kwargs.get('storage_endpoint', None) + self.storage_account_access_key = kwargs.get('storage_account_access_key', None) + self.retention_days = kwargs.get('retention_days', None) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/server_security_alert_policy_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/server_security_alert_policy_py3.py new file mode 100644 index 000000000000..5ae9c099f3d5 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/server_security_alert_policy_py3.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class ServerSecurityAlertPolicy(ProxyResource): + """A server security alert policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param state: Required. Specifies the state of the policy, whether it is + enabled or disabled. Possible values include: 'New', 'Enabled', 'Disabled' + :type state: str or ~azure.mgmt.sql.models.SecurityAlertPolicyState + :param disabled_alerts: Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly, Data_Exfiltration, Unsafe_Action + :type disabled_alerts: list[str] + :param email_addresses: Specifies an array of e-mail addresses to which + the alert is sent. + :type email_addresses: list[str] + :param email_account_admins: Specifies that the alert is sent to the + account administrators. + :type email_account_admins: bool + :param storage_endpoint: Specifies the blob storage endpoint (e.g. + https://MyAccount.blob.core.windows.net). This blob storage will hold all + Threat Detection audit logs. + :type storage_endpoint: str + :param storage_account_access_key: Specifies the identifier key of the + Threat Detection audit storage account. + :type storage_account_access_key: str + :param retention_days: Specifies the number of days to keep in the Threat + Detection audit logs. + :type retention_days: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'SecurityAlertPolicyState'}, + 'disabled_alerts': {'key': 'properties.disabledAlerts', 'type': '[str]'}, + 'email_addresses': {'key': 'properties.emailAddresses', 'type': '[str]'}, + 'email_account_admins': {'key': 'properties.emailAccountAdmins', 'type': 'bool'}, + 'storage_endpoint': {'key': 'properties.storageEndpoint', 'type': 'str'}, + 'storage_account_access_key': {'key': 'properties.storageAccountAccessKey', 'type': 'str'}, + 'retention_days': {'key': 'properties.retentionDays', 'type': 'int'}, + } + + def __init__(self, *, state, disabled_alerts=None, email_addresses=None, email_account_admins: bool=None, storage_endpoint: str=None, storage_account_access_key: str=None, retention_days: int=None, **kwargs) -> None: + super(ServerSecurityAlertPolicy, self).__init__(**kwargs) + self.state = state + self.disabled_alerts = disabled_alerts + self.email_addresses = email_addresses + self.email_account_admins = email_account_admins + self.storage_endpoint = storage_endpoint + self.storage_account_access_key = storage_account_access_key + self.retention_days = retention_days diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/sql_management_client_enums.py b/azure-mgmt-sql/azure/mgmt/sql/models/sql_management_client_enums.py index e4a76e0f84e5..90b01d122079 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/models/sql_management_client_enums.py +++ b/azure-mgmt-sql/azure/mgmt/sql/models/sql_management_client_enums.py @@ -264,12 +264,6 @@ class TransparentDataEncryptionActivityStatus(str, Enum): decrypting = "Decrypting" -class BlobAuditingPolicyState(str, Enum): - - enabled = "Enabled" - disabled = "Disabled" - - class AutomaticTuningMode(str, Enum): inherit = "Inherit" @@ -411,6 +405,12 @@ class VirtualNetworkRuleState(str, Enum): unknown = "Unknown" +class BlobAuditingPolicyState(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" + + class JobAgentState(str, Enum): creating = "Creating" @@ -657,6 +657,12 @@ class LongTermRetentionDatabaseState(str, Enum): deleted = "Deleted" +class VulnerabilityAssessmentPolicyBaselineName(str, Enum): + + master = "master" + default = "default" + + class CapabilityGroup(str, Enum): supported_editions = "supportedEditions" diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/tde_certificate.py b/azure-mgmt-sql/azure/mgmt/sql/models/tde_certificate.py new file mode 100644 index 000000000000..1171ee8adf94 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/tde_certificate.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class TdeCertificate(ProxyResource): + """A TDE certificate that can be uploaded into a server. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param private_blob: Required. The base64 encoded certificate private + blob. + :type private_blob: str + :param cert_password: The certificate password. + :type cert_password: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'private_blob': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'private_blob': {'key': 'properties.privateBlob', 'type': 'str'}, + 'cert_password': {'key': 'properties.certPassword', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TdeCertificate, self).__init__(**kwargs) + self.private_blob = kwargs.get('private_blob', None) + self.cert_password = kwargs.get('cert_password', None) diff --git a/azure-mgmt-sql/azure/mgmt/sql/models/tde_certificate_py3.py b/azure-mgmt-sql/azure/mgmt/sql/models/tde_certificate_py3.py new file mode 100644 index 000000000000..b4e54453cae1 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/models/tde_certificate_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource_py3 import ProxyResource + + +class TdeCertificate(ProxyResource): + """A TDE certificate that can be uploaded into a server. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param private_blob: Required. The base64 encoded certificate private + blob. + :type private_blob: str + :param cert_password: The certificate password. + :type cert_password: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'private_blob': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'private_blob': {'key': 'properties.privateBlob', 'type': 'str'}, + 'cert_password': {'key': 'properties.certPassword', 'type': 'str'}, + } + + def __init__(self, *, private_blob: str, cert_password: str=None, **kwargs) -> None: + super(TdeCertificate, self).__init__(**kwargs) + self.private_blob = private_blob + self.cert_password = cert_password diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/__init__.py b/azure-mgmt-sql/azure/mgmt/sql/operations/__init__.py index 953bb00775df..7f9a32996a5b 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/__init__.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/__init__.py @@ -32,7 +32,6 @@ from .transparent_data_encryption_activities_operations import TransparentDataEncryptionActivitiesOperations from .server_usages_operations import ServerUsagesOperations from .database_usages_operations import DatabaseUsagesOperations -from .database_blob_auditing_policies_operations import DatabaseBlobAuditingPoliciesOperations from .database_automatic_tuning_operations import DatabaseAutomaticTuningOperations from .encryption_protectors_operations import EncryptionProtectorsOperations from .failover_groups_operations import FailoverGroupsOperations @@ -44,6 +43,10 @@ from .sync_members_operations import SyncMembersOperations from .subscription_usages_operations import SubscriptionUsagesOperations from .virtual_network_rules_operations import VirtualNetworkRulesOperations +from .extended_database_blob_auditing_policies_operations import ExtendedDatabaseBlobAuditingPoliciesOperations +from .extended_server_blob_auditing_policies_operations import ExtendedServerBlobAuditingPoliciesOperations +from .server_blob_auditing_policies_operations import ServerBlobAuditingPoliciesOperations +from .database_blob_auditing_policies_operations import DatabaseBlobAuditingPoliciesOperations from .database_vulnerability_assessment_rule_baselines_operations import DatabaseVulnerabilityAssessmentRuleBaselinesOperations from .database_vulnerability_assessments_operations import DatabaseVulnerabilityAssessmentsOperations from .job_agents_operations import JobAgentsOperations @@ -60,13 +63,21 @@ from .managed_databases_operations import ManagedDatabasesOperations from .server_automatic_tuning_operations import ServerAutomaticTuningOperations from .server_dns_aliases_operations import ServerDnsAliasesOperations +from .server_security_alert_policies_operations import ServerSecurityAlertPoliciesOperations from .restore_points_operations import RestorePointsOperations from .database_operations import DatabaseOperations from .elastic_pool_operations import ElasticPoolOperations from .capabilities_operations import CapabilitiesOperations from .database_vulnerability_assessment_scans_operations import DatabaseVulnerabilityAssessmentScansOperations +from .managed_database_vulnerability_assessment_rule_baselines_operations import ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations +from .managed_database_vulnerability_assessment_scans_operations import ManagedDatabaseVulnerabilityAssessmentScansOperations +from .managed_database_vulnerability_assessments_operations import ManagedDatabaseVulnerabilityAssessmentsOperations from .instance_failover_groups_operations import InstanceFailoverGroupsOperations from .backup_short_term_retention_policies_operations import BackupShortTermRetentionPoliciesOperations +from .tde_certificates_operations import TdeCertificatesOperations +from .managed_instance_tde_certificates_operations import ManagedInstanceTdeCertificatesOperations +from .managed_instance_keys_operations import ManagedInstanceKeysOperations +from .managed_instance_encryption_protectors_operations import ManagedInstanceEncryptionProtectorsOperations __all__ = [ 'RecoverableDatabasesOperations', @@ -92,7 +103,6 @@ 'TransparentDataEncryptionActivitiesOperations', 'ServerUsagesOperations', 'DatabaseUsagesOperations', - 'DatabaseBlobAuditingPoliciesOperations', 'DatabaseAutomaticTuningOperations', 'EncryptionProtectorsOperations', 'FailoverGroupsOperations', @@ -104,6 +114,10 @@ 'SyncMembersOperations', 'SubscriptionUsagesOperations', 'VirtualNetworkRulesOperations', + 'ExtendedDatabaseBlobAuditingPoliciesOperations', + 'ExtendedServerBlobAuditingPoliciesOperations', + 'ServerBlobAuditingPoliciesOperations', + 'DatabaseBlobAuditingPoliciesOperations', 'DatabaseVulnerabilityAssessmentRuleBaselinesOperations', 'DatabaseVulnerabilityAssessmentsOperations', 'JobAgentsOperations', @@ -120,11 +134,19 @@ 'ManagedDatabasesOperations', 'ServerAutomaticTuningOperations', 'ServerDnsAliasesOperations', + 'ServerSecurityAlertPoliciesOperations', 'RestorePointsOperations', 'DatabaseOperations', 'ElasticPoolOperations', 'CapabilitiesOperations', 'DatabaseVulnerabilityAssessmentScansOperations', + 'ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations', + 'ManagedDatabaseVulnerabilityAssessmentScansOperations', + 'ManagedDatabaseVulnerabilityAssessmentsOperations', 'InstanceFailoverGroupsOperations', 'BackupShortTermRetentionPoliciesOperations', + 'TdeCertificatesOperations', + 'ManagedInstanceTdeCertificatesOperations', + 'ManagedInstanceKeysOperations', + 'ManagedInstanceEncryptionProtectorsOperations', ] diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/backup_long_term_retention_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/backup_long_term_retention_policies_operations.py index 986ea3cc4a62..c42ba1ab812b 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/backup_long_term_retention_policies_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/backup_long_term_retention_policies_operations.py @@ -81,7 +81,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,8 +90,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -130,6 +130,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -142,9 +143,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'BackupLongTermRetentionPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -257,7 +257,7 @@ def list_by_database( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -266,8 +266,8 @@ def list_by_database( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/backup_short_term_retention_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/backup_short_term_retention_policies_operations.py index e50f15c2a997..c7957810c281 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/backup_short_term_retention_policies_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/backup_short_term_retention_policies_operations.py @@ -81,7 +81,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,8 +90,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -132,6 +132,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -144,9 +145,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'BackupShortTermRetentionPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -243,6 +243,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -255,9 +256,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'BackupShortTermRetentionPolicy') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -331,3 +331,78 @@ def get_long_running_output(response): else: polling_method = polling return LROPoller(self._client, raw_result, get_long_running_output, polling_method) update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/backupShortTermRetentionPolicies/{policyName}'} + + def list_by_database( + self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, **operation_config): + """Gets a database's short term retention policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param database_name: The name of the database. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BackupShortTermRetentionPolicy + :rtype: + ~azure.mgmt.sql.models.BackupShortTermRetentionPolicyPaged[~azure.mgmt.sql.models.BackupShortTermRetentionPolicy] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_database.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.BackupShortTermRetentionPolicyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BackupShortTermRetentionPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_database.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/backupShortTermRetentionPolicies'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/capabilities_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/capabilities_operations.py index db0d68d14e73..a873a3a87f92 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/capabilities_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/capabilities_operations.py @@ -75,7 +75,7 @@ def list_by_location( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,8 +84,8 @@ def list_by_location( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/data_masking_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/data_masking_policies_operations.py index 384b2f6a6b4f..2d1099c8be0d 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/data_masking_policies_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/data_masking_policies_operations.py @@ -89,6 +89,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -101,9 +102,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'DataMaskingPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -161,7 +161,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +170,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/data_masking_rules_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/data_masking_rules_operations.py index 4e3020d9656c..c5fd4c63ab46 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/data_masking_rules_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/data_masking_rules_operations.py @@ -84,6 +84,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -96,9 +97,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'DataMaskingRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -165,7 +165,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -174,9 +174,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/database_automatic_tuning_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/database_automatic_tuning_operations.py index ba3eb4dede13..7a94b97b9546 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/database_automatic_tuning_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/database_automatic_tuning_operations.py @@ -75,7 +75,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,8 +84,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -150,6 +150,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -162,9 +163,8 @@ def update( body_content = self._serialize.body(parameters, 'DatabaseAutomaticTuning') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/database_blob_auditing_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/database_blob_auditing_policies_operations.py index fa915bf7c00d..a0c09cfd8f09 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/database_blob_auditing_policies_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/database_blob_auditing_policies_operations.py @@ -24,7 +24,7 @@ class DatabaseBlobAuditingPoliciesOperations(object): :param serializer: An object model serializer. :param deserializer: An object model deserializer. :ivar blob_auditing_policy_name: The name of the blob auditing policy. Constant value: "default". - :ivar api_version: The API version to use for the request. Constant value: "2015-05-01-preview". + :ivar api_version: The API version to use for the request. Constant value: "2017-03-01-preview". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._serialize = serializer self._deserialize = deserializer self.blob_auditing_policy_name = "default" - self.api_version = "2015-05-01-preview" + self.api_version = "2017-03-01-preview" self.config = config @@ -49,8 +49,7 @@ def get( :type resource_group_name: str :param server_name: The name of the server. :type server_name: str - :param database_name: The name of the database for which the blob - audit policy is defined. + :param database_name: The name of the database. :type database_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -79,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -118,8 +117,7 @@ def create_or_update( :type resource_group_name: str :param server_name: The name of the server. :type server_name: str - :param database_name: The name of the database for which the blob - auditing policy will be defined. + :param database_name: The name of the database. :type database_name: str :param parameters: The database blob auditing policy. :type parameters: ~azure.mgmt.sql.models.DatabaseBlobAuditingPolicy @@ -150,6 +148,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -162,9 +161,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'DatabaseBlobAuditingPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/database_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/database_operations.py index c46a648198b9..8d482411f199 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/database_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/database_operations.py @@ -77,7 +77,6 @@ def cancel( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,8 +85,8 @@ def cancel( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,9 +152,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/database_threat_detection_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/database_threat_detection_policies_operations.py index 79d0ec20f134..38501854c428 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/database_threat_detection_policies_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/database_threat_detection_policies_operations.py @@ -79,7 +79,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,8 +88,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -150,6 +150,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -162,9 +163,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'DatabaseSecurityAlertPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/database_usages_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/database_usages_operations.py index 3291bc0d88c5..543a8ba6f509 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/database_usages_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/database_usages_operations.py @@ -82,7 +82,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,9 +91,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessment_rule_baselines_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessment_rule_baselines_operations.py index 16a909e27a1a..9dba003a5ff2 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessment_rule_baselines_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessment_rule_baselines_operations.py @@ -24,7 +24,6 @@ class DatabaseVulnerabilityAssessmentRuleBaselinesOperations(object): :param serializer: An object model serializer. :param deserializer: An object model deserializer. :ivar vulnerability_assessment_name: The name of the vulnerability assessment. Constant value: "default". - :ivar baseline_name: The name of the vulnerability assessment rule baseline. Constant value: "default". :ivar api_version: The API version to use for the request. Constant value: "2017-03-01-preview". """ @@ -36,13 +35,12 @@ def __init__(self, client, config, serializer, deserializer): self._serialize = serializer self._deserialize = deserializer self.vulnerability_assessment_name = "default" - self.baseline_name = "default" self.api_version = "2017-03-01-preview" self.config = config def get( - self, resource_group_name, server_name, database_name, rule_id, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, database_name, rule_id, baseline_name, custom_headers=None, raw=False, **operation_config): """Gets a database's vulnerability assessment rule baseline. :param resource_group_name: The name of the resource group that @@ -56,6 +54,12 @@ def get( :type database_name: str :param rule_id: The vulnerability assessment rule ID. :type rule_id: str + :param baseline_name: The name of the vulnerability assessment rule + baseline (default implies a baseline on a database level rule and + master for server level rule). Possible values include: 'master', + 'default' + :type baseline_name: str or + ~azure.mgmt.sql.models.VulnerabilityAssessmentPolicyBaselineName :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -76,7 +80,7 @@ def get( 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), 'ruleId': self._serialize.url("rule_id", rule_id, 'str'), - 'baselineName': self._serialize.url("self.baseline_name", self.baseline_name, 'str'), + 'baselineName': self._serialize.url("baseline_name", baseline_name, 'VulnerabilityAssessmentPolicyBaselineName'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -87,7 +91,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -96,8 +100,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -117,7 +121,7 @@ def get( get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}'} def create_or_update( - self, resource_group_name, server_name, database_name, rule_id, baseline_results, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, database_name, rule_id, baseline_name, baseline_results, custom_headers=None, raw=False, **operation_config): """Creates or updates a database's vulnerability assessment rule baseline. :param resource_group_name: The name of the resource group that @@ -131,6 +135,12 @@ def create_or_update( :type database_name: str :param rule_id: The vulnerability assessment rule ID. :type rule_id: str + :param baseline_name: The name of the vulnerability assessment rule + baseline (default implies a baseline on a database level rule and + master for server level rule). Possible values include: 'master', + 'default' + :type baseline_name: str or + ~azure.mgmt.sql.models.VulnerabilityAssessmentPolicyBaselineName :param baseline_results: The rule baseline result :type baseline_results: list[~azure.mgmt.sql.models.DatabaseVulnerabilityAssessmentRuleBaselineItem] @@ -156,7 +166,7 @@ def create_or_update( 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), 'ruleId': self._serialize.url("rule_id", rule_id, 'str'), - 'baselineName': self._serialize.url("self.baseline_name", self.baseline_name, 'str'), + 'baselineName': self._serialize.url("baseline_name", baseline_name, 'VulnerabilityAssessmentPolicyBaselineName'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -167,6 +177,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -179,9 +190,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'DatabaseVulnerabilityAssessmentRuleBaseline') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -201,7 +211,7 @@ def create_or_update( create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}'} def delete( - self, resource_group_name, server_name, database_name, rule_id, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, database_name, rule_id, baseline_name, custom_headers=None, raw=False, **operation_config): """Removes the database's vulnerability assessment rule baseline. :param resource_group_name: The name of the resource group that @@ -215,6 +225,12 @@ def delete( :type database_name: str :param rule_id: The vulnerability assessment rule ID. :type rule_id: str + :param baseline_name: The name of the vulnerability assessment rule + baseline (default implies a baseline on a database level rule and + master for server level rule). Possible values include: 'master', + 'default' + :type baseline_name: str or + ~azure.mgmt.sql.models.VulnerabilityAssessmentPolicyBaselineName :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -232,7 +248,7 @@ def delete( 'databaseName': self._serialize.url("database_name", database_name, 'str'), 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), 'ruleId': self._serialize.url("rule_id", rule_id, 'str'), - 'baselineName': self._serialize.url("self.baseline_name", self.baseline_name, 'str'), + 'baselineName': self._serialize.url("baseline_name", baseline_name, 'VulnerabilityAssessmentPolicyBaselineName'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -243,7 +259,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -252,8 +267,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessment_scans_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessment_scans_operations.py index e1d379ff4529..624bf67fca16 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessment_scans_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessment_scans_operations.py @@ -85,7 +85,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -94,8 +94,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -135,7 +135,6 @@ def _initiate_scan_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -144,8 +143,8 @@ def _initiate_scan_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -253,7 +252,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -262,9 +261,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -329,7 +327,7 @@ def export( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -338,8 +336,8 @@ def export( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessments_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessments_operations.py index 5f923f69d777..da9db7d9402e 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessments_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/database_vulnerability_assessments_operations.py @@ -80,7 +80,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -89,8 +89,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -153,6 +153,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -165,9 +166,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'DatabaseVulnerabilityAssessment') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -227,7 +227,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -236,8 +235,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/databases_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/databases_operations.py index 61c746a203fc..3b4e01e8a397 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/databases_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/databases_operations.py @@ -59,6 +59,7 @@ def _import_method_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -71,9 +72,8 @@ def _import_method_initial( body_content = self._serialize.body(parameters, 'ImportRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -166,6 +166,7 @@ def _create_import_operation_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -178,9 +179,8 @@ def _create_import_operation_initial( body_content = self._serialize.body(parameters, 'ImportExtensionRequest') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201, 202]: exp = CloudError(response) @@ -276,6 +276,7 @@ def _export_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -288,9 +289,8 @@ def _export_initial( body_content = self._serialize.body(parameters, 'ExportRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -414,7 +414,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -423,9 +423,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -492,7 +491,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -501,9 +500,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -544,7 +542,6 @@ def _upgrade_data_warehouse_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -553,8 +550,8 @@ def _upgrade_data_warehouse_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -655,7 +652,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -664,9 +661,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -726,7 +722,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -735,8 +731,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -776,6 +772,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -788,9 +785,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'Database') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -886,7 +882,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -895,8 +890,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -974,6 +969,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -986,9 +982,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'DatabaseUpdate') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1108,7 +1103,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1117,9 +1112,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1160,7 +1154,7 @@ def _pause_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1169,8 +1163,8 @@ def _pause_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1261,7 +1255,7 @@ def _resume_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1270,8 +1264,8 @@ def _resume_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -1396,9 +1390,8 @@ def rename( body_content = self._serialize.body(parameters, 'ResourceMoveDefinition') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_activities_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_activities_operations.py index b2e826ad1551..a2d2dc49c203 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_activities_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_activities_operations.py @@ -83,7 +83,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -92,9 +92,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_database_activities_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_database_activities_operations.py index 244394a4223f..5ed1492b9615 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_database_activities_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_database_activities_operations.py @@ -82,7 +82,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,9 +91,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_operations.py index 38c35a868650..eb71face0db1 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pool_operations.py @@ -77,7 +77,6 @@ def cancel( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,8 +85,8 @@ def cancel( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -144,7 +143,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,9 +152,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pools_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pools_operations.py index 4fb8d9592740..e7fba924b0c6 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pools_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/elastic_pools_operations.py @@ -88,7 +88,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -97,9 +97,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -166,7 +165,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -175,9 +174,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -245,7 +243,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -254,9 +252,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -316,7 +313,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -325,8 +322,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -366,6 +363,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -378,9 +376,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ElasticPool') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -476,7 +473,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -485,8 +481,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -564,6 +560,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -576,9 +573,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'ElasticPoolUpdate') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/encryption_protectors_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/encryption_protectors_operations.py index 2097599d903d..d19233971f4c 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/encryption_protectors_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/encryption_protectors_operations.py @@ -83,7 +83,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -92,9 +92,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -150,7 +149,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -159,8 +158,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -198,6 +197,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -210,9 +210,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'EncryptionProtector') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/extended_database_blob_auditing_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/extended_database_blob_auditing_policies_operations.py new file mode 100644 index 000000000000..38bdfb2a0875 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/extended_database_blob_auditing_policies_operations.py @@ -0,0 +1,187 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ExtendedDatabaseBlobAuditingPoliciesOperations(object): + """ExtendedDatabaseBlobAuditingPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar blob_auditing_policy_name: The name of the blob auditing policy. Constant value: "default". + :ivar api_version: The API version to use for the request. Constant value: "2017-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.blob_auditing_policy_name = "default" + self.api_version = "2017-03-01-preview" + + self.config = config + + def get( + self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, **operation_config): + """Gets an extended database's blob auditing policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param database_name: The name of the database. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExtendedDatabaseBlobAuditingPolicy or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.sql.models.ExtendedDatabaseBlobAuditingPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'blobAuditingPolicyName': self._serialize.url("self.blob_auditing_policy_name", self.blob_auditing_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExtendedDatabaseBlobAuditingPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/extendedAuditingSettings/{blobAuditingPolicyName}'} + + def create_or_update( + self, resource_group_name, server_name, database_name, parameters, custom_headers=None, raw=False, **operation_config): + """Creates or updates an extended database's blob auditing policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param database_name: The name of the database. + :type database_name: str + :param parameters: The extended database blob auditing policy. + :type parameters: + ~azure.mgmt.sql.models.ExtendedDatabaseBlobAuditingPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExtendedDatabaseBlobAuditingPolicy or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.sql.models.ExtendedDatabaseBlobAuditingPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'blobAuditingPolicyName': self._serialize.url("self.blob_auditing_policy_name", self.blob_auditing_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExtendedDatabaseBlobAuditingPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExtendedDatabaseBlobAuditingPolicy', response) + if response.status_code == 201: + deserialized = self._deserialize('ExtendedDatabaseBlobAuditingPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/extendedAuditingSettings/{blobAuditingPolicyName}'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/extended_server_blob_auditing_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/extended_server_blob_auditing_policies_operations.py new file mode 100644 index 000000000000..64524eb42a17 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/extended_server_blob_auditing_policies_operations.py @@ -0,0 +1,213 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExtendedServerBlobAuditingPoliciesOperations(object): + """ExtendedServerBlobAuditingPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar blob_auditing_policy_name: The name of the blob auditing policy. Constant value: "default". + :ivar api_version: The API version to use for the request. Constant value: "2017-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.blob_auditing_policy_name = "default" + self.api_version = "2017-03-01-preview" + + self.config = config + + def get( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """Gets an extended server's blob auditing policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExtendedServerBlobAuditingPolicy or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.sql.models.ExtendedServerBlobAuditingPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'blobAuditingPolicyName': self._serialize.url("self.blob_auditing_policy_name", self.blob_auditing_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExtendedServerBlobAuditingPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings/{blobAuditingPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'blobAuditingPolicyName': self._serialize.url("self.blob_auditing_policy_name", self.blob_auditing_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExtendedServerBlobAuditingPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExtendedServerBlobAuditingPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an extended server's blob auditing policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param parameters: Properties of extended blob auditing policy + :type parameters: + ~azure.mgmt.sql.models.ExtendedServerBlobAuditingPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExtendedServerBlobAuditingPolicy or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.sql.models.ExtendedServerBlobAuditingPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.sql.models.ExtendedServerBlobAuditingPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExtendedServerBlobAuditingPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings/{blobAuditingPolicyName}'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/failover_groups_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/failover_groups_operations.py index a0a879610fbc..fb779255c2a8 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/failover_groups_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/failover_groups_operations.py @@ -78,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -126,6 +126,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -138,9 +139,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'FailoverGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -235,7 +235,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -244,8 +243,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -322,6 +321,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -334,9 +334,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'FailoverGroupUpdate') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -453,7 +452,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -462,9 +461,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -503,7 +501,7 @@ def _failover_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -512,8 +510,8 @@ def _failover_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -603,7 +601,7 @@ def _force_failover_allow_data_loss_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -612,8 +610,8 @@ def _force_failover_allow_data_loss_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/firewall_rules_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/firewall_rules_operations.py index 5827a0c4fa76..7f62a3fa0811 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/firewall_rules_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/firewall_rules_operations.py @@ -85,6 +85,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -97,9 +98,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'FirewallRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -157,7 +157,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -166,8 +165,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -217,7 +216,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -226,8 +225,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -288,7 +287,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -297,9 +296,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/geo_backup_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/geo_backup_policies_operations.py index d73dbf426b17..bd81aeca5fa6 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/geo_backup_policies_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/geo_backup_policies_operations.py @@ -83,6 +83,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -95,9 +96,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'GeoBackupPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -157,7 +157,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -166,8 +166,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -231,7 +231,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -240,9 +240,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/instance_failover_groups_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/instance_failover_groups_operations.py index 8e9e2c566109..795d169692ab 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/instance_failover_groups_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/instance_failover_groups_operations.py @@ -78,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -126,6 +126,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -138,9 +139,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'InstanceFailoverGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -235,7 +235,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -244,8 +243,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -346,7 +345,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -355,9 +354,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -396,7 +394,7 @@ def _failover_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +403,8 @@ def _failover_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -497,7 +495,7 @@ def _force_failover_allow_data_loss_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -506,8 +504,8 @@ def _force_failover_allow_data_loss_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/job_agents_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/job_agents_operations.py index 774fa59314ce..eaeb4480cab8 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/job_agents_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/job_agents_operations.py @@ -81,7 +81,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,9 +90,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -150,7 +149,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -159,8 +158,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -198,6 +197,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -210,9 +210,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'JobAgent') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -307,7 +306,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -316,8 +314,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -395,6 +393,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -407,9 +406,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'JobAgentUpdate') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/job_credentials_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/job_credentials_operations.py index c4bf415fe5e4..309d5212b81e 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/job_credentials_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/job_credentials_operations.py @@ -82,7 +82,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,9 +91,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -154,7 +153,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -163,8 +162,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -230,6 +229,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -242,9 +242,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'JobCredential') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -305,7 +304,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -314,8 +312,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/job_executions_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/job_executions_operations.py index 3a9c7cd1c597..e883a1b6187f 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/job_executions_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/job_executions_operations.py @@ -117,7 +117,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -126,9 +126,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -191,7 +190,6 @@ def cancel( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -200,8 +198,8 @@ def cancel( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -233,7 +231,7 @@ def _create_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -242,8 +240,8 @@ def _create_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -397,7 +395,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -406,9 +404,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -472,7 +469,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -481,8 +478,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -522,7 +519,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -531,8 +528,8 @@ def _create_or_update_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/job_step_executions_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/job_step_executions_operations.py index 3a2c37310f40..92c6442fc7e5 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/job_step_executions_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/job_step_executions_operations.py @@ -121,7 +121,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -130,9 +130,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -199,7 +198,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -208,8 +207,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/job_steps_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/job_steps_operations.py index 0cd2ba4bc13d..a37bfc3f4474 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/job_steps_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/job_steps_operations.py @@ -88,7 +88,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -97,9 +97,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -166,7 +165,7 @@ def get_by_version( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -175,8 +174,8 @@ def get_by_version( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -243,7 +242,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -252,9 +251,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -318,7 +316,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,8 +325,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -394,6 +392,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -406,9 +405,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'JobStep') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -472,7 +470,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -481,8 +478,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/job_target_executions_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/job_target_executions_operations.py index 3224d6ec2d87..6c664709c063 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/job_target_executions_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/job_target_executions_operations.py @@ -121,7 +121,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -130,9 +130,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -239,7 +238,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -248,9 +247,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -320,7 +318,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -329,8 +327,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/job_target_groups_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/job_target_groups_operations.py index 0bf98a502cb8..6a8bf6eed349 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/job_target_groups_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/job_target_groups_operations.py @@ -82,7 +82,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,9 +91,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -154,7 +153,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -163,8 +162,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -228,6 +227,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -240,9 +240,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'JobTargetGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -303,7 +302,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -312,8 +310,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/job_versions_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/job_versions_operations.py index ec9e2ff23061..d03635534ff4 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/job_versions_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/job_versions_operations.py @@ -85,7 +85,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -94,9 +94,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -160,7 +159,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -169,8 +168,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/jobs_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/jobs_operations.py index 042336e20941..2545fc1514e5 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/jobs_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/jobs_operations.py @@ -81,7 +81,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,9 +90,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -153,7 +152,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -162,8 +161,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -229,6 +228,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -241,9 +241,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'Job') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -304,7 +303,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -313,8 +311,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/long_term_retention_backups_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/long_term_retention_backups_operations.py index 3857d750063c..53882edcb02e 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/long_term_retention_backups_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/long_term_retention_backups_operations.py @@ -78,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -127,7 +127,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -136,8 +135,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -250,7 +249,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -259,9 +258,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -330,7 +328,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -339,9 +337,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -413,7 +410,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -422,9 +419,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessment_rule_baselines_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessment_rule_baselines_operations.py new file mode 100644 index 000000000000..bf5121b3707b --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessment_rule_baselines_operations.py @@ -0,0 +1,281 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations(object): + """ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar vulnerability_assessment_name: The name of the vulnerability assessment. Constant value: "default". + :ivar api_version: The API version to use for the request. Constant value: "2017-10-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.vulnerability_assessment_name = "default" + self.api_version = "2017-10-01-preview" + + self.config = config + + def get( + self, resource_group_name, managed_instance_name, database_name, rule_id, baseline_name, custom_headers=None, raw=False, **operation_config): + """Gets a database's vulnerability assessment rule baseline. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database for which the + vulnerability assessment rule baseline is defined. + :type database_name: str + :param rule_id: The vulnerability assessment rule ID. + :type rule_id: str + :param baseline_name: The name of the vulnerability assessment rule + baseline (default implies a baseline on a database level rule and + master for server level rule). Possible values include: 'master', + 'default' + :type baseline_name: str or + ~azure.mgmt.sql.models.VulnerabilityAssessmentPolicyBaselineName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DatabaseVulnerabilityAssessmentRuleBaseline or + ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.sql.models.DatabaseVulnerabilityAssessmentRuleBaseline or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'ruleId': self._serialize.url("rule_id", rule_id, 'str'), + 'baselineName': self._serialize.url("baseline_name", baseline_name, 'VulnerabilityAssessmentPolicyBaselineName'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DatabaseVulnerabilityAssessmentRuleBaseline', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}'} + + def create_or_update( + self, resource_group_name, managed_instance_name, database_name, rule_id, baseline_name, baseline_results, custom_headers=None, raw=False, **operation_config): + """Creates or updates a database's vulnerability assessment rule baseline. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database for which the + vulnerability assessment rule baseline is defined. + :type database_name: str + :param rule_id: The vulnerability assessment rule ID. + :type rule_id: str + :param baseline_name: The name of the vulnerability assessment rule + baseline (default implies a baseline on a database level rule and + master for server level rule). Possible values include: 'master', + 'default' + :type baseline_name: str or + ~azure.mgmt.sql.models.VulnerabilityAssessmentPolicyBaselineName + :param baseline_results: The rule baseline result + :type baseline_results: + list[~azure.mgmt.sql.models.DatabaseVulnerabilityAssessmentRuleBaselineItem] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DatabaseVulnerabilityAssessmentRuleBaseline or + ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.sql.models.DatabaseVulnerabilityAssessmentRuleBaseline or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.DatabaseVulnerabilityAssessmentRuleBaseline(baseline_results=baseline_results) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'ruleId': self._serialize.url("rule_id", rule_id, 'str'), + 'baselineName': self._serialize.url("baseline_name", baseline_name, 'VulnerabilityAssessmentPolicyBaselineName'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DatabaseVulnerabilityAssessmentRuleBaseline') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DatabaseVulnerabilityAssessmentRuleBaseline', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}'} + + def delete( + self, resource_group_name, managed_instance_name, database_name, rule_id, baseline_name, custom_headers=None, raw=False, **operation_config): + """Removes the database's vulnerability assessment rule baseline. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database for which the + vulnerability assessment rule baseline is defined. + :type database_name: str + :param rule_id: The vulnerability assessment rule ID. + :type rule_id: str + :param baseline_name: The name of the vulnerability assessment rule + baseline (default implies a baseline on a database level rule and + master for server level rule). Possible values include: 'master', + 'default' + :type baseline_name: str or + ~azure.mgmt.sql.models.VulnerabilityAssessmentPolicyBaselineName + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'ruleId': self._serialize.url("rule_id", rule_id, 'str'), + 'baselineName': self._serialize.url("baseline_name", baseline_name, 'VulnerabilityAssessmentPolicyBaselineName'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessment_scans_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessment_scans_operations.py new file mode 100644 index 000000000000..d45dc1beb3b7 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessment_scans_operations.py @@ -0,0 +1,359 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ManagedDatabaseVulnerabilityAssessmentScansOperations(object): + """ManagedDatabaseVulnerabilityAssessmentScansOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar vulnerability_assessment_name: The name of the vulnerability assessment. Constant value: "default". + :ivar api_version: The API version to use for the request. Constant value: "2017-10-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.vulnerability_assessment_name = "default" + self.api_version = "2017-10-01-preview" + + self.config = config + + def list_by_database( + self, resource_group_name, managed_instance_name, database_name, custom_headers=None, raw=False, **operation_config): + """Lists the vulnerability assessment scans of a database. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + VulnerabilityAssessmentScanRecord + :rtype: + ~azure.mgmt.sql.models.VulnerabilityAssessmentScanRecordPaged[~azure.mgmt.sql.models.VulnerabilityAssessmentScanRecord] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_database.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.VulnerabilityAssessmentScanRecordPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.VulnerabilityAssessmentScanRecordPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_database.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans'} + + def get( + self, resource_group_name, managed_instance_name, database_name, scan_id, custom_headers=None, raw=False, **operation_config): + """Gets a vulnerability assessment scan record of a database. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database. + :type database_name: str + :param scan_id: The vulnerability assessment scan Id of the scan to + retrieve. + :type scan_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VulnerabilityAssessmentScanRecord or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.sql.models.VulnerabilityAssessmentScanRecord or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'scanId': self._serialize.url("scan_id", scan_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VulnerabilityAssessmentScanRecord', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}'} + + + def _initiate_scan_initial( + self, resource_group_name, managed_instance_name, database_name, scan_id, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.initiate_scan.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'scanId': self._serialize.url("scan_id", scan_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def initiate_scan( + self, resource_group_name, managed_instance_name, database_name, scan_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Executes a Vulnerability Assessment database scan. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database. + :type database_name: str + :param scan_id: The vulnerability assessment scan Id of the scan to + retrieve. + :type scan_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._initiate_scan_initial( + resource_group_name=resource_group_name, + managed_instance_name=managed_instance_name, + database_name=database_name, + scan_id=scan_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + initiate_scan.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/initiateScan'} + + def export( + self, resource_group_name, managed_instance_name, database_name, scan_id, custom_headers=None, raw=False, **operation_config): + """Convert an existing scan result to a human readable format. If already + exists nothing happens. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the scanned database. + :type database_name: str + :param scan_id: The vulnerability assessment scan Id. + :type scan_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DatabaseVulnerabilityAssessmentScansExport or + ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.sql.models.DatabaseVulnerabilityAssessmentScansExport or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.export.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'scanId': self._serialize.url("scan_id", scan_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DatabaseVulnerabilityAssessmentScansExport', response) + if response.status_code == 201: + deserialized = self._deserialize('DatabaseVulnerabilityAssessmentScansExport', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + export.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/export'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessments_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessments_operations.py new file mode 100644 index 000000000000..eed38b378fe1 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_database_vulnerability_assessments_operations.py @@ -0,0 +1,249 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ManagedDatabaseVulnerabilityAssessmentsOperations(object): + """ManagedDatabaseVulnerabilityAssessmentsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar vulnerability_assessment_name: The name of the vulnerability assessment. Constant value: "default". + :ivar api_version: The API version to use for the request. Constant value: "2017-10-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.vulnerability_assessment_name = "default" + self.api_version = "2017-10-01-preview" + + self.config = config + + def get( + self, resource_group_name, managed_instance_name, database_name, custom_headers=None, raw=False, **operation_config): + """Gets the database's vulnerability assessment. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database for which the + vulnerability assessment is defined. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DatabaseVulnerabilityAssessment or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.sql.models.DatabaseVulnerabilityAssessment or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DatabaseVulnerabilityAssessment', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}'} + + def create_or_update( + self, resource_group_name, managed_instance_name, database_name, parameters, custom_headers=None, raw=False, **operation_config): + """Creates or updates the database's vulnerability assessment. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database for which the + vulnerability assessment is defined. + :type database_name: str + :param parameters: The requested resource. + :type parameters: + ~azure.mgmt.sql.models.DatabaseVulnerabilityAssessment + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DatabaseVulnerabilityAssessment or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.sql.models.DatabaseVulnerabilityAssessment or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DatabaseVulnerabilityAssessment') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DatabaseVulnerabilityAssessment', response) + if response.status_code == 201: + deserialized = self._deserialize('DatabaseVulnerabilityAssessment', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}'} + + def delete( + self, resource_group_name, managed_instance_name, database_name, custom_headers=None, raw=False, **operation_config): + """Removes the database's vulnerability assessment. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param database_name: The name of the database for which the + vulnerability assessment is defined. + :type database_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'databaseName': self._serialize.url("database_name", database_name, 'str'), + 'vulnerabilityAssessmentName': self._serialize.url("self.vulnerability_assessment_name", self.vulnerability_assessment_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_databases_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_databases_operations.py index d4d2bb29f2b5..8761e7adbc83 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_databases_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_databases_operations.py @@ -71,9 +71,8 @@ def _complete_restore_initial( body_content = self._serialize.body(parameters, 'CompleteDatabaseRestoreDefinition') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -172,7 +171,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -181,9 +180,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -241,7 +239,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -250,8 +248,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -289,6 +287,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -301,9 +300,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ManagedDatabase') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -397,7 +395,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -406,8 +403,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -483,6 +480,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -495,9 +493,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'ManagedDatabaseUpdate') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_encryption_protectors_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_encryption_protectors_operations.py new file mode 100644 index 000000000000..61ab8baa5d32 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_encryption_protectors_operations.py @@ -0,0 +1,292 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ManagedInstanceEncryptionProtectorsOperations(object): + """ManagedInstanceEncryptionProtectorsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2017-10-01-preview". + :ivar encryption_protector_name: The name of the encryption protector to be retrieved. Constant value: "current". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-10-01-preview" + self.encryption_protector_name = "current" + + self.config = config + + def list_by_instance( + self, resource_group_name, managed_instance_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of managed instance encryption protectors. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + ManagedInstanceEncryptionProtector + :rtype: + ~azure.mgmt.sql.models.ManagedInstanceEncryptionProtectorPaged[~azure.mgmt.sql.models.ManagedInstanceEncryptionProtector] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_instance.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ManagedInstanceEncryptionProtectorPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ManagedInstanceEncryptionProtectorPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_instance.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/encryptionProtector'} + + def get( + self, resource_group_name, managed_instance_name, custom_headers=None, raw=False, **operation_config): + """Gets a managed instance encryption protector. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ManagedInstanceEncryptionProtector or ClientRawResponse if + raw=true + :rtype: ~azure.mgmt.sql.models.ManagedInstanceEncryptionProtector or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'encryptionProtectorName': self._serialize.url("self.encryption_protector_name", self.encryption_protector_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ManagedInstanceEncryptionProtector', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/encryptionProtector/{encryptionProtectorName}'} + + + def _create_or_update_initial( + self, resource_group_name, managed_instance_name, server_key_type, server_key_name=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ManagedInstanceEncryptionProtector(server_key_name=server_key_name, server_key_type=server_key_type) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'encryptionProtectorName': self._serialize.url("self.encryption_protector_name", self.encryption_protector_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ManagedInstanceEncryptionProtector') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ManagedInstanceEncryptionProtector', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, managed_instance_name, server_key_type, server_key_name=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates an existing encryption protector. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param server_key_type: The encryption protector type like + 'ServiceManaged', 'AzureKeyVault'. Possible values include: + 'ServiceManaged', 'AzureKeyVault' + :type server_key_type: str or ~azure.mgmt.sql.models.ServerKeyType + :param server_key_name: The name of the managed instance key. + :type server_key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ManagedInstanceEncryptionProtector or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.sql.models.ManagedInstanceEncryptionProtector] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.sql.models.ManagedInstanceEncryptionProtector]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + managed_instance_name=managed_instance_name, + server_key_type=server_key_type, + server_key_name=server_key_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ManagedInstanceEncryptionProtector', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/encryptionProtector/{encryptionProtectorName}'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_keys_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_keys_operations.py new file mode 100644 index 000000000000..adb5c4bfa0f0 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_keys_operations.py @@ -0,0 +1,386 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ManagedInstanceKeysOperations(object): + """ManagedInstanceKeysOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2017-10-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-10-01-preview" + + self.config = config + + def list_by_instance( + self, resource_group_name, managed_instance_name, filter=None, custom_headers=None, raw=False, **operation_config): + """Gets a list of managed instance keys. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param filter: An OData filter expression that filters elements in the + collection. + :type filter: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ManagedInstanceKey + :rtype: + ~azure.mgmt.sql.models.ManagedInstanceKeyPaged[~azure.mgmt.sql.models.ManagedInstanceKey] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_instance.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ManagedInstanceKeyPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ManagedInstanceKeyPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_instance.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/keys'} + + def get( + self, resource_group_name, managed_instance_name, key_name, custom_headers=None, raw=False, **operation_config): + """Gets a managed instance key. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param key_name: The name of the managed instance key to be retrieved. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ManagedInstanceKey or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.sql.models.ManagedInstanceKey or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'keyName': self._serialize.url("key_name", key_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ManagedInstanceKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/keys/{keyName}'} + + + def _create_or_update_initial( + self, resource_group_name, managed_instance_name, key_name, server_key_type, uri=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ManagedInstanceKey(server_key_type=server_key_type, uri=uri) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'keyName': self._serialize.url("key_name", key_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ManagedInstanceKey') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ManagedInstanceKey', response) + if response.status_code == 201: + deserialized = self._deserialize('ManagedInstanceKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, managed_instance_name, key_name, server_key_type, uri=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a managed instance key. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param key_name: The name of the managed instance key to be operated + on (updated or created). + :type key_name: str + :param server_key_type: The key type like 'ServiceManaged', + 'AzureKeyVault'. Possible values include: 'ServiceManaged', + 'AzureKeyVault' + :type server_key_type: str or ~azure.mgmt.sql.models.ServerKeyType + :param uri: The URI of the key. If the ServerKeyType is AzureKeyVault, + then the URI is required. + :type uri: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ManagedInstanceKey or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.sql.models.ManagedInstanceKey] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.sql.models.ManagedInstanceKey]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + managed_instance_name=managed_instance_name, + key_name=key_name, + server_key_type=server_key_type, + uri=uri, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ManagedInstanceKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/keys/{keyName}'} + + + def _delete_initial( + self, resource_group_name, managed_instance_name, key_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'keyName': self._serialize.url("key_name", key_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, managed_instance_name, key_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the managed instance key with the given name. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param key_name: The name of the managed instance key to be deleted. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + managed_instance_name=managed_instance_name, + key_name=key_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/keys/{keyName}'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_tde_certificates_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_tde_certificates_operations.py new file mode 100644 index 000000000000..be4ee1969fdd --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instance_tde_certificates_operations.py @@ -0,0 +1,133 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ManagedInstanceTdeCertificatesOperations(object): + """ManagedInstanceTdeCertificatesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2017-10-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-10-01-preview" + + self.config = config + + + def _create_initial( + self, resource_group_name, managed_instance_name, private_blob, cert_password=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TdeCertificate(private_blob=private_blob, cert_password=cert_password) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'managedInstanceName': self._serialize.url("managed_instance_name", managed_instance_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TdeCertificate') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def create( + self, resource_group_name, managed_instance_name, private_blob, cert_password=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a TDE certificate for a given server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param managed_instance_name: The name of the managed instance. + :type managed_instance_name: str + :param private_blob: The base64 encoded certificate private blob. + :type private_blob: str + :param cert_password: The certificate password. + :type cert_password: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + managed_instance_name=managed_instance_name, + private_blob=private_blob, + cert_password=cert_password, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/tdeCertificates'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instances_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instances_operations.py index 1bd0b6a0d60c..1fee247c7c96 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instances_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/managed_instances_operations.py @@ -73,7 +73,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,9 +82,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -143,7 +142,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -152,9 +151,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -209,7 +207,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -218,8 +216,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -256,6 +254,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -268,9 +267,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ManagedInstance') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -360,7 +358,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -369,8 +366,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -442,6 +439,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -454,9 +452,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'ManagedInstanceUpdate') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/operations.py index 869264933111..5f8f397a39b9 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/recommended_elastic_pools_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/recommended_elastic_pools_operations.py index 4a776d820a8f..c6d80bad021c 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/recommended_elastic_pools_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/recommended_elastic_pools_operations.py @@ -76,7 +76,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,8 +85,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +147,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,9 +156,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -224,7 +223,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -233,9 +232,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/recoverable_databases_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/recoverable_databases_operations.py index 299ee095bd0e..87b5873c5619 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/recoverable_databases_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/recoverable_databases_operations.py @@ -76,7 +76,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,8 +85,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +147,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,9 +156,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/replication_links_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/replication_links_operations.py index 4627fe4bccbc..d3d3cee87622 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/replication_links_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/replication_links_operations.py @@ -80,7 +80,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -89,8 +88,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -143,7 +142,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -152,8 +151,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -192,7 +191,6 @@ def _failover_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -201,8 +199,8 @@ def _failover_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -284,7 +282,6 @@ def _failover_allow_data_loss_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -293,8 +290,8 @@ def _failover_allow_data_loss_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204]: exp = CloudError(response) @@ -401,7 +398,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -410,9 +407,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/restorable_dropped_databases_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/restorable_dropped_databases_operations.py index ec5a1ed9c7fa..0dfb4989691a 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/restorable_dropped_databases_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/restorable_dropped_databases_operations.py @@ -76,7 +76,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,8 +85,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +147,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,9 +156,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/restore_points_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/restore_points_operations.py index 4c0ded271cf1..e5b49d9d1ed3 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/restore_points_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/restore_points_operations.py @@ -84,7 +84,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -93,9 +93,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -136,6 +135,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -148,9 +148,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'CreateDatabaseRestorePointDefinition') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -266,7 +265,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -275,8 +274,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -335,7 +334,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -344,8 +342,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_automatic_tuning_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_automatic_tuning_operations.py index 2ce94e0e4058..675d886377c6 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/server_automatic_tuning_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_automatic_tuning_operations.py @@ -72,7 +72,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,8 +81,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -145,6 +145,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -157,9 +158,8 @@ def update( body_content = self._serialize.body(parameters, 'ServerAutomaticTuning') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_azure_ad_administrators_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_azure_ad_administrators_operations.py index 465231415dde..c7a66d57ea08 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/server_azure_ad_administrators_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_azure_ad_administrators_operations.py @@ -60,6 +60,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -72,9 +73,8 @@ def _create_or_update_initial( body_content = self._serialize.body(properties, 'ServerAzureADAdministrator') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -170,7 +170,7 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -179,8 +179,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -288,7 +288,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -297,8 +297,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -359,7 +359,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -368,9 +368,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_blob_auditing_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_blob_auditing_policies_operations.py new file mode 100644 index 000000000000..ac7c8ef280ac --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_blob_auditing_policies_operations.py @@ -0,0 +1,211 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServerBlobAuditingPoliciesOperations(object): + """ServerBlobAuditingPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar blob_auditing_policy_name: The name of the blob auditing policy. Constant value: "default". + :ivar api_version: The API version to use for the request. Constant value: "2017-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.blob_auditing_policy_name = "default" + self.api_version = "2017-03-01-preview" + + self.config = config + + def get( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """Gets a server's blob auditing policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServerBlobAuditingPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.sql.models.ServerBlobAuditingPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'blobAuditingPolicyName': self._serialize.url("self.blob_auditing_policy_name", self.blob_auditing_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServerBlobAuditingPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/auditingSettings/{blobAuditingPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'blobAuditingPolicyName': self._serialize.url("self.blob_auditing_policy_name", self.blob_auditing_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServerBlobAuditingPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServerBlobAuditingPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a server's blob auditing policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param parameters: Properties of blob auditing policy + :type parameters: ~azure.mgmt.sql.models.ServerBlobAuditingPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ServerBlobAuditingPolicy or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.sql.models.ServerBlobAuditingPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.sql.models.ServerBlobAuditingPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServerBlobAuditingPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/auditingSettings/{blobAuditingPolicyName}'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_communication_links_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_communication_links_operations.py index 5d9935bb7b88..2844c4068ea4 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/server_communication_links_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_communication_links_operations.py @@ -77,7 +77,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,8 +85,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -138,7 +137,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -147,8 +146,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -188,6 +187,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -200,9 +200,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ServerCommunicationLink') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201, 202]: exp = CloudError(response) @@ -318,7 +317,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -327,9 +326,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_connection_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_connection_policies_operations.py index e352e147a10b..c1d5c68e7f7f 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/server_connection_policies_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_connection_policies_operations.py @@ -81,6 +81,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -93,9 +94,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'ServerConnectionPolicy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -152,7 +152,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,8 +161,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_dns_aliases_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_dns_aliases_operations.py index 5b7d511666a6..a4f79dfce854 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/server_dns_aliases_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_dns_aliases_operations.py @@ -78,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -126,7 +126,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -135,8 +135,8 @@ def _create_or_update_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -228,7 +228,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -237,8 +236,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -339,7 +338,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -348,9 +347,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -403,9 +401,8 @@ def _acquire_initial( body_content = self._serialize.body(parameters, 'ServerDnsAliasAcquisition') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_keys_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_keys_operations.py index 322f982c5a71..e52b751d7eb8 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/server_keys_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_keys_operations.py @@ -81,7 +81,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -90,9 +90,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -150,7 +149,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -159,8 +158,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -198,6 +197,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -210,9 +210,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'ServerKey') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -311,7 +310,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -320,8 +318,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_security_alert_policies_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_security_alert_policies_operations.py new file mode 100644 index 000000000000..878dff3ed286 --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_security_alert_policies_operations.py @@ -0,0 +1,211 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServerSecurityAlertPoliciesOperations(object): + """ServerSecurityAlertPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar security_alert_policy_name: The name of the security alert policy. Constant value: "Default". + :ivar api_version: The API version to use for the request. Constant value: "2017-03-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.security_alert_policy_name = "Default" + self.api_version = "2017-03-01-preview" + + self.config = config + + def get( + self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + """Get a server's security alert policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServerSecurityAlertPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.sql.models.ServerSecurityAlertPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'securityAlertPolicyName': self._serialize.url("self.security_alert_policy_name", self.security_alert_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/securityAlertPolicies/{securityAlertPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'securityAlertPolicyName': self._serialize.url("self.security_alert_policy_name", self.security_alert_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServerSecurityAlertPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a threat detection policy. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param parameters: The server security alert policy. + :type parameters: ~azure.mgmt.sql.models.ServerSecurityAlertPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ServerSecurityAlertPolicy or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.sql.models.ServerSecurityAlertPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.sql.models.ServerSecurityAlertPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + server_name=server_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServerSecurityAlertPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/securityAlertPolicies/{securityAlertPolicyName}'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/server_usages_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/server_usages_operations.py index 4160b69c1f1d..4d60726ff42f 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/server_usages_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/server_usages_operations.py @@ -79,7 +79,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -88,9 +88,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/servers_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/servers_operations.py index 4e8b4510da88..7abad6723542 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/servers_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/servers_operations.py @@ -71,6 +71,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -83,9 +84,8 @@ def check_name_availability( body_content = self._serialize.body(parameters, 'CheckNameAvailabilityRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -140,7 +140,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -149,9 +149,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -212,7 +211,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -221,9 +220,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -280,7 +278,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -289,8 +287,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -329,6 +327,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -341,9 +340,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'Server') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -435,7 +433,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -444,8 +441,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -519,6 +516,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -531,9 +529,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'ServerUpdate') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/service_objectives_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/service_objectives_operations.py index 2ff770f2daec..d4f53c7313af 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/service_objectives_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/service_objectives_operations.py @@ -76,7 +76,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,8 +85,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -147,7 +147,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -156,9 +156,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/service_tier_advisors_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/service_tier_advisors_operations.py index d3075cfd97e9..cc9ba091db21 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/service_tier_advisors_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/service_tier_advisors_operations.py @@ -78,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -152,7 +152,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -161,9 +161,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/subscription_usages_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/subscription_usages_operations.py index e4b33959c152..b70973ca790e 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/subscription_usages_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/subscription_usages_operations.py @@ -75,7 +75,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,9 +84,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -140,7 +139,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -149,8 +148,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/sync_agents_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/sync_agents_operations.py index bfbcc0564d79..9ac0651a57d3 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/sync_agents_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/sync_agents_operations.py @@ -78,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -128,6 +128,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -140,9 +141,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'SyncAgent') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -238,7 +238,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -247,8 +246,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -349,7 +348,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -358,9 +357,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -419,7 +417,7 @@ def generate_key( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -428,8 +426,8 @@ def generate_key( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -494,7 +492,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -503,9 +501,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/sync_groups_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/sync_groups_operations.py index 87e80a399f67..484f24f33781 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/sync_groups_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/sync_groups_operations.py @@ -77,7 +77,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,9 +86,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -128,7 +127,6 @@ def _refresh_hub_schema_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -137,8 +135,8 @@ def _refresh_hub_schema_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -248,7 +246,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -257,9 +255,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -342,7 +339,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -351,9 +348,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -414,7 +410,6 @@ def cancel_sync( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -423,8 +418,8 @@ def cancel_sync( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -477,7 +472,6 @@ def trigger_sync( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -486,8 +480,8 @@ def trigger_sync( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -541,7 +535,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -550,8 +544,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -590,6 +584,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -602,9 +597,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'SyncGroup') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -703,7 +697,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -712,8 +705,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -794,6 +787,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -806,9 +800,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'SyncGroup') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -931,7 +924,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -940,9 +933,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/sync_members_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/sync_members_operations.py index e33d8ac88a7d..4eab11133d05 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/sync_members_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/sync_members_operations.py @@ -85,7 +85,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -94,8 +94,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -135,6 +135,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -147,9 +148,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'SyncMember') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -253,7 +253,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -262,8 +261,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -349,6 +348,7 @@ def _update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -361,9 +361,8 @@ def _update_initial( body_content = self._serialize.body(parameters, 'SyncMember') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -493,7 +492,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -502,9 +501,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -577,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -586,9 +584,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -629,7 +626,6 @@ def _refresh_member_schema_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -638,8 +634,8 @@ def _refresh_member_schema_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/tde_certificates_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/tde_certificates_operations.py new file mode 100644 index 000000000000..bc529a38043f --- /dev/null +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/tde_certificates_operations.py @@ -0,0 +1,133 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class TdeCertificatesOperations(object): + """TdeCertificatesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for the request. Constant value: "2017-10-01-preview". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2017-10-01-preview" + + self.config = config + + + def _create_initial( + self, resource_group_name, server_name, private_blob, cert_password=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TdeCertificate(private_blob=private_blob, cert_password=cert_password) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serverName': self._serialize.url("server_name", server_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TdeCertificate') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def create( + self, resource_group_name, server_name, private_blob, cert_password=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a TDE certificate for a given server. + + :param resource_group_name: The name of the resource group that + contains the resource. You can obtain this value from the Azure + Resource Manager API or the portal. + :type resource_group_name: str + :param server_name: The name of the server. + :type server_name: str + :param private_blob: The base64 encoded certificate private blob. + :type private_blob: str + :param cert_password: The certificate password. + :type cert_password: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + server_name=server_name, + private_blob=private_blob, + cert_password=cert_password, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/tdeCertificates'} diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/transparent_data_encryption_activities_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/transparent_data_encryption_activities_operations.py index d27623ba644f..ae930a401246 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/transparent_data_encryption_activities_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/transparent_data_encryption_activities_operations.py @@ -87,7 +87,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -96,9 +96,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/transparent_data_encryptions_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/transparent_data_encryptions_operations.py index a672a32bf38e..a0f3c8184f57 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/transparent_data_encryptions_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/transparent_data_encryptions_operations.py @@ -86,6 +86,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -98,9 +99,8 @@ def create_or_update( body_content = self._serialize.body(parameters, 'TransparentDataEncryption') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: exp = CloudError(response) @@ -161,7 +161,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -170,8 +170,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/operations/virtual_network_rules_operations.py b/azure-mgmt-sql/azure/mgmt/sql/operations/virtual_network_rules_operations.py index 2af3a57b2448..01bc6f5bdf3e 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/operations/virtual_network_rules_operations.py +++ b/azure-mgmt-sql/azure/mgmt/sql/operations/virtual_network_rules_operations.py @@ -78,7 +78,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -87,8 +87,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -128,6 +128,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -140,9 +141,8 @@ def _create_or_update_initial( body_content = self._serialize.body(parameters, 'VirtualNetworkRule') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 202]: exp = CloudError(response) @@ -242,7 +242,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -251,8 +250,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 204]: exp = CloudError(response) @@ -352,7 +351,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -361,9 +360,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-sql/azure/mgmt/sql/sql_management_client.py b/azure-mgmt-sql/azure/mgmt/sql/sql_management_client.py index 39a53dad15fb..2a8798e4b23d 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/sql_management_client.py +++ b/azure-mgmt-sql/azure/mgmt/sql/sql_management_client.py @@ -36,7 +36,6 @@ from .operations.transparent_data_encryption_activities_operations import TransparentDataEncryptionActivitiesOperations from .operations.server_usages_operations import ServerUsagesOperations from .operations.database_usages_operations import DatabaseUsagesOperations -from .operations.database_blob_auditing_policies_operations import DatabaseBlobAuditingPoliciesOperations from .operations.database_automatic_tuning_operations import DatabaseAutomaticTuningOperations from .operations.encryption_protectors_operations import EncryptionProtectorsOperations from .operations.failover_groups_operations import FailoverGroupsOperations @@ -48,6 +47,10 @@ from .operations.sync_members_operations import SyncMembersOperations from .operations.subscription_usages_operations import SubscriptionUsagesOperations from .operations.virtual_network_rules_operations import VirtualNetworkRulesOperations +from .operations.extended_database_blob_auditing_policies_operations import ExtendedDatabaseBlobAuditingPoliciesOperations +from .operations.extended_server_blob_auditing_policies_operations import ExtendedServerBlobAuditingPoliciesOperations +from .operations.server_blob_auditing_policies_operations import ServerBlobAuditingPoliciesOperations +from .operations.database_blob_auditing_policies_operations import DatabaseBlobAuditingPoliciesOperations from .operations.database_vulnerability_assessment_rule_baselines_operations import DatabaseVulnerabilityAssessmentRuleBaselinesOperations from .operations.database_vulnerability_assessments_operations import DatabaseVulnerabilityAssessmentsOperations from .operations.job_agents_operations import JobAgentsOperations @@ -64,13 +67,21 @@ from .operations.managed_databases_operations import ManagedDatabasesOperations from .operations.server_automatic_tuning_operations import ServerAutomaticTuningOperations from .operations.server_dns_aliases_operations import ServerDnsAliasesOperations +from .operations.server_security_alert_policies_operations import ServerSecurityAlertPoliciesOperations from .operations.restore_points_operations import RestorePointsOperations from .operations.database_operations import DatabaseOperations from .operations.elastic_pool_operations import ElasticPoolOperations from .operations.capabilities_operations import CapabilitiesOperations from .operations.database_vulnerability_assessment_scans_operations import DatabaseVulnerabilityAssessmentScansOperations +from .operations.managed_database_vulnerability_assessment_rule_baselines_operations import ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations +from .operations.managed_database_vulnerability_assessment_scans_operations import ManagedDatabaseVulnerabilityAssessmentScansOperations +from .operations.managed_database_vulnerability_assessments_operations import ManagedDatabaseVulnerabilityAssessmentsOperations from .operations.instance_failover_groups_operations import InstanceFailoverGroupsOperations from .operations.backup_short_term_retention_policies_operations import BackupShortTermRetentionPoliciesOperations +from .operations.tde_certificates_operations import TdeCertificatesOperations +from .operations.managed_instance_tde_certificates_operations import ManagedInstanceTdeCertificatesOperations +from .operations.managed_instance_keys_operations import ManagedInstanceKeysOperations +from .operations.managed_instance_encryption_protectors_operations import ManagedInstanceEncryptionProtectorsOperations from . import models @@ -159,8 +170,6 @@ class SqlManagementClient(SDKClient): :vartype server_usages: azure.mgmt.sql.operations.ServerUsagesOperations :ivar database_usages: DatabaseUsages operations :vartype database_usages: azure.mgmt.sql.operations.DatabaseUsagesOperations - :ivar database_blob_auditing_policies: DatabaseBlobAuditingPolicies operations - :vartype database_blob_auditing_policies: azure.mgmt.sql.operations.DatabaseBlobAuditingPoliciesOperations :ivar database_automatic_tuning: DatabaseAutomaticTuning operations :vartype database_automatic_tuning: azure.mgmt.sql.operations.DatabaseAutomaticTuningOperations :ivar encryption_protectors: EncryptionProtectors operations @@ -183,6 +192,14 @@ class SqlManagementClient(SDKClient): :vartype subscription_usages: azure.mgmt.sql.operations.SubscriptionUsagesOperations :ivar virtual_network_rules: VirtualNetworkRules operations :vartype virtual_network_rules: azure.mgmt.sql.operations.VirtualNetworkRulesOperations + :ivar extended_database_blob_auditing_policies: ExtendedDatabaseBlobAuditingPolicies operations + :vartype extended_database_blob_auditing_policies: azure.mgmt.sql.operations.ExtendedDatabaseBlobAuditingPoliciesOperations + :ivar extended_server_blob_auditing_policies: ExtendedServerBlobAuditingPolicies operations + :vartype extended_server_blob_auditing_policies: azure.mgmt.sql.operations.ExtendedServerBlobAuditingPoliciesOperations + :ivar server_blob_auditing_policies: ServerBlobAuditingPolicies operations + :vartype server_blob_auditing_policies: azure.mgmt.sql.operations.ServerBlobAuditingPoliciesOperations + :ivar database_blob_auditing_policies: DatabaseBlobAuditingPolicies operations + :vartype database_blob_auditing_policies: azure.mgmt.sql.operations.DatabaseBlobAuditingPoliciesOperations :ivar database_vulnerability_assessment_rule_baselines: DatabaseVulnerabilityAssessmentRuleBaselines operations :vartype database_vulnerability_assessment_rule_baselines: azure.mgmt.sql.operations.DatabaseVulnerabilityAssessmentRuleBaselinesOperations :ivar database_vulnerability_assessments: DatabaseVulnerabilityAssessments operations @@ -215,6 +232,8 @@ class SqlManagementClient(SDKClient): :vartype server_automatic_tuning: azure.mgmt.sql.operations.ServerAutomaticTuningOperations :ivar server_dns_aliases: ServerDnsAliases operations :vartype server_dns_aliases: azure.mgmt.sql.operations.ServerDnsAliasesOperations + :ivar server_security_alert_policies: ServerSecurityAlertPolicies operations + :vartype server_security_alert_policies: azure.mgmt.sql.operations.ServerSecurityAlertPoliciesOperations :ivar restore_points: RestorePoints operations :vartype restore_points: azure.mgmt.sql.operations.RestorePointsOperations :ivar database_operations: DatabaseOperations operations @@ -225,10 +244,24 @@ class SqlManagementClient(SDKClient): :vartype capabilities: azure.mgmt.sql.operations.CapabilitiesOperations :ivar database_vulnerability_assessment_scans: DatabaseVulnerabilityAssessmentScans operations :vartype database_vulnerability_assessment_scans: azure.mgmt.sql.operations.DatabaseVulnerabilityAssessmentScansOperations + :ivar managed_database_vulnerability_assessment_rule_baselines: ManagedDatabaseVulnerabilityAssessmentRuleBaselines operations + :vartype managed_database_vulnerability_assessment_rule_baselines: azure.mgmt.sql.operations.ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations + :ivar managed_database_vulnerability_assessment_scans: ManagedDatabaseVulnerabilityAssessmentScans operations + :vartype managed_database_vulnerability_assessment_scans: azure.mgmt.sql.operations.ManagedDatabaseVulnerabilityAssessmentScansOperations + :ivar managed_database_vulnerability_assessments: ManagedDatabaseVulnerabilityAssessments operations + :vartype managed_database_vulnerability_assessments: azure.mgmt.sql.operations.ManagedDatabaseVulnerabilityAssessmentsOperations :ivar instance_failover_groups: InstanceFailoverGroups operations :vartype instance_failover_groups: azure.mgmt.sql.operations.InstanceFailoverGroupsOperations :ivar backup_short_term_retention_policies: BackupShortTermRetentionPolicies operations :vartype backup_short_term_retention_policies: azure.mgmt.sql.operations.BackupShortTermRetentionPoliciesOperations + :ivar tde_certificates: TdeCertificates operations + :vartype tde_certificates: azure.mgmt.sql.operations.TdeCertificatesOperations + :ivar managed_instance_tde_certificates: ManagedInstanceTdeCertificates operations + :vartype managed_instance_tde_certificates: azure.mgmt.sql.operations.ManagedInstanceTdeCertificatesOperations + :ivar managed_instance_keys: ManagedInstanceKeys operations + :vartype managed_instance_keys: azure.mgmt.sql.operations.ManagedInstanceKeysOperations + :ivar managed_instance_encryption_protectors: ManagedInstanceEncryptionProtectors operations + :vartype managed_instance_encryption_protectors: azure.mgmt.sql.operations.ManagedInstanceEncryptionProtectorsOperations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -295,8 +328,6 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.database_usages = DatabaseUsagesOperations( self._client, self.config, self._serialize, self._deserialize) - self.database_blob_auditing_policies = DatabaseBlobAuditingPoliciesOperations( - self._client, self.config, self._serialize, self._deserialize) self.database_automatic_tuning = DatabaseAutomaticTuningOperations( self._client, self.config, self._serialize, self._deserialize) self.encryption_protectors = EncryptionProtectorsOperations( @@ -319,6 +350,14 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.virtual_network_rules = VirtualNetworkRulesOperations( self._client, self.config, self._serialize, self._deserialize) + self.extended_database_blob_auditing_policies = ExtendedDatabaseBlobAuditingPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.extended_server_blob_auditing_policies = ExtendedServerBlobAuditingPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.server_blob_auditing_policies = ServerBlobAuditingPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.database_blob_auditing_policies = DatabaseBlobAuditingPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) self.database_vulnerability_assessment_rule_baselines = DatabaseVulnerabilityAssessmentRuleBaselinesOperations( self._client, self.config, self._serialize, self._deserialize) self.database_vulnerability_assessments = DatabaseVulnerabilityAssessmentsOperations( @@ -351,6 +390,8 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.server_dns_aliases = ServerDnsAliasesOperations( self._client, self.config, self._serialize, self._deserialize) + self.server_security_alert_policies = ServerSecurityAlertPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) self.restore_points = RestorePointsOperations( self._client, self.config, self._serialize, self._deserialize) self.database_operations = DatabaseOperations( @@ -361,7 +402,21 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.database_vulnerability_assessment_scans = DatabaseVulnerabilityAssessmentScansOperations( self._client, self.config, self._serialize, self._deserialize) + self.managed_database_vulnerability_assessment_rule_baselines = ManagedDatabaseVulnerabilityAssessmentRuleBaselinesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.managed_database_vulnerability_assessment_scans = ManagedDatabaseVulnerabilityAssessmentScansOperations( + self._client, self.config, self._serialize, self._deserialize) + self.managed_database_vulnerability_assessments = ManagedDatabaseVulnerabilityAssessmentsOperations( + self._client, self.config, self._serialize, self._deserialize) self.instance_failover_groups = InstanceFailoverGroupsOperations( self._client, self.config, self._serialize, self._deserialize) self.backup_short_term_retention_policies = BackupShortTermRetentionPoliciesOperations( self._client, self.config, self._serialize, self._deserialize) + self.tde_certificates = TdeCertificatesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.managed_instance_tde_certificates = ManagedInstanceTdeCertificatesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.managed_instance_keys = ManagedInstanceKeysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.managed_instance_encryption_protectors = ManagedInstanceEncryptionProtectorsOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-sql/azure/mgmt/sql/version.py b/azure-mgmt-sql/azure/mgmt/sql/version.py index 413a68a462da..1f08862acee4 100644 --- a/azure-mgmt-sql/azure/mgmt/sql/version.py +++ b/azure-mgmt-sql/azure/mgmt/sql/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.9.1" +VERSION = "0.10.0" diff --git a/azure-mgmt-sql/azure_bdist_wheel.py b/azure-mgmt-sql/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-sql/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-sql/setup.cfg b/azure-mgmt-sql/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-sql/setup.cfg +++ b/azure-mgmt-sql/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-sql/setup.py b/azure-mgmt-sql/setup.py index c4492c11a4a0..16c6c1db50a8 100644 --- a/azure-mgmt-sql/setup.py +++ b/azure-mgmt-sql/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-sql" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-storage/HISTORY.rst b/azure-mgmt-storage/HISTORY.rst index 5836dfd0b12f..7d8682d91b59 100644 --- a/azure-mgmt-storage/HISTORY.rst +++ b/azure-mgmt-storage/HISTORY.rst @@ -3,6 +3,26 @@ Release History =============== +3.0.0 (2018-09-27) +++++++++++++++++++ + +**Features** + +- Model StorageAccount has a new parameter enable_azure_files_aad_integration +- Model StorageAccountCreateParameters has a new parameter enable_azure_files_aad_integration +- Model StorageAccountUpdateParameters has a new parameter enable_azure_files_aad_integration +- Added operation group ManagementPoliciesOperations. This is considered preview and breaking changes might happen. + +**Breaking changes** + +- "usage" has been renamed "usages", and the "list" operation has been replaced by "list_by_location". + Ability to make usage requests locally is not available anymore. + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + + 2.0.0 (2018-08-01) ++++++++++++++++++ diff --git a/azure-mgmt-storage/MANIFEST.in b/azure-mgmt-storage/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-storage/MANIFEST.in +++ b/azure-mgmt-storage/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-storage/azure/__init__.py b/azure-mgmt-storage/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-storage/azure/__init__.py +++ b/azure-mgmt-storage/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-storage/azure/mgmt/__init__.py b/azure-mgmt-storage/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-storage/azure/mgmt/__init__.py +++ b/azure-mgmt-storage/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-storage/azure/mgmt/storage/storage_management_client.py b/azure-mgmt-storage/azure/mgmt/storage/storage_management_client.py index 40b0c51a3aca..13ffe3a4b20e 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/storage_management_client.py +++ b/azure-mgmt-storage/azure/mgmt/storage/storage_management_client.py @@ -60,7 +60,7 @@ class StorageManagementClient(MultiApiClientMixin, SDKClient): By default, uses latest API version available on public Azure. For production, you should stick a particular api-version and/or profile. The profile sets a mapping between the operation group and an API version. - The api-version parameter sets the default API version if the operation + The api-version parameter sets the default API version if the operation group is not described in the profile. :ivar config: Configuration for client. @@ -80,7 +80,7 @@ class StorageManagementClient(MultiApiClientMixin, SDKClient): :type profile: azure.profiles.KnownProfiles """ - DEFAULT_API_VERSION='2018-02-01' + DEFAULT_API_VERSION='2018-07-01' _PROFILE_TAG = "azure.mgmt.storage.StorageManagementClient" LATEST_PROFILE = ProfileDefinition({ _PROFILE_TAG: { @@ -115,6 +115,7 @@ def models(cls, api_version=DEFAULT_API_VERSION): * 2017-10-01: :mod:`v2017_10_01.models` * 2018-02-01: :mod:`v2018_02_01.models` * 2018-03-01-preview: :mod:`v2018_03_01_preview.models` + * 2018-07-01: :mod:`v2018_07_01.models` """ if api_version == '2015-06-15': from .v2015_06_15 import models @@ -137,20 +138,39 @@ def models(cls, api_version=DEFAULT_API_VERSION): elif api_version == '2018-03-01-preview': from .v2018_03_01_preview import models return models + elif api_version == '2018-07-01': + from .v2018_07_01 import models + return models raise NotImplementedError("APIVersion {} is not available".format(api_version)) - + @property def blob_containers(self): """Instance depends on the API version: * 2018-02-01: :class:`BlobContainersOperations` * 2018-03-01-preview: :class:`BlobContainersOperations` + * 2018-07-01: :class:`BlobContainersOperations` """ api_version = self._get_api_version('blob_containers') if api_version == '2018-02-01': from .v2018_02_01.operations import BlobContainersOperations as OperationClass elif api_version == '2018-03-01-preview': from .v2018_03_01_preview.operations import BlobContainersOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import BlobContainersOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def management_policies(self): + """Instance depends on the API version: + + * 2018-07-01: :class:`ManagementPoliciesOperations` + """ + api_version = self._get_api_version('management_policies') + if api_version == '2018-07-01': + from .v2018_07_01.operations import ManagementPoliciesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -163,6 +183,7 @@ def operations(self): * 2017-10-01: :class:`Operations` * 2018-02-01: :class:`Operations` * 2018-03-01-preview: :class:`Operations` + * 2018-07-01: :class:`Operations` """ api_version = self._get_api_version('operations') if api_version == '2017-06-01': @@ -173,6 +194,8 @@ def operations(self): from .v2018_02_01.operations import Operations as OperationClass elif api_version == '2018-03-01-preview': from .v2018_03_01_preview.operations import Operations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import Operations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -185,6 +208,7 @@ def skus(self): * 2017-10-01: :class:`SkusOperations` * 2018-02-01: :class:`SkusOperations` * 2018-03-01-preview: :class:`SkusOperations` + * 2018-07-01: :class:`SkusOperations` """ api_version = self._get_api_version('skus') if api_version == '2017-06-01': @@ -195,6 +219,8 @@ def skus(self): from .v2018_02_01.operations import SkusOperations as OperationClass elif api_version == '2018-03-01-preview': from .v2018_03_01_preview.operations import SkusOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import SkusOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -210,6 +236,7 @@ def storage_accounts(self): * 2017-10-01: :class:`StorageAccountsOperations` * 2018-02-01: :class:`StorageAccountsOperations` * 2018-03-01-preview: :class:`StorageAccountsOperations` + * 2018-07-01: :class:`StorageAccountsOperations` """ api_version = self._get_api_version('storage_accounts') if api_version == '2015-06-15': @@ -226,6 +253,8 @@ def storage_accounts(self): from .v2018_02_01.operations import StorageAccountsOperations as OperationClass elif api_version == '2018-03-01-preview': from .v2018_03_01_preview.operations import StorageAccountsOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import StorageAccountsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -263,10 +292,13 @@ def usages(self): """Instance depends on the API version: * 2018-03-01-preview: :class:`UsagesOperations` + * 2018-07-01: :class:`UsagesOperations` """ api_version = self._get_api_version('usages') if api_version == '2018-03-01-preview': from .v2018_03_01_preview.operations import UsagesOperations as OperationClass + elif api_version == '2018-07-01': + from .v2018_07_01.operations import UsagesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15/operations/storage_accounts_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15/operations/storage_accounts_operations.py index b74fb3f18808..c44cd75ef9c8 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15/operations/storage_accounts_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15/operations/storage_accounts_operations.py @@ -74,6 +74,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -86,9 +87,8 @@ def check_name_availability( body_content = self._serialize.body(account_name, 'StorageAccountCheckNameAvailabilityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -125,6 +125,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -137,9 +138,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -251,7 +251,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -260,8 +259,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -311,7 +310,7 @@ def get_properties( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -320,8 +319,8 @@ def get_properties( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -388,6 +387,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -400,9 +400,8 @@ def update( body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -457,7 +456,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -466,9 +465,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -528,7 +526,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -537,9 +535,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -595,7 +592,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -604,8 +601,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -664,6 +661,7 @@ def regenerate_key( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -676,9 +674,8 @@ def regenerate_key( body_content = self._serialize.body(regenerate_key1, 'StorageAccountRegenerateKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15/operations/usage_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15/operations/usage_operations.py index 06a094462479..12c0cbc8f433 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15/operations/usage_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15/operations/usage_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01/operations/storage_accounts_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01/operations/storage_accounts_operations.py index 19bdbef3c91d..941708372035 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01/operations/storage_accounts_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01/operations/storage_accounts_operations.py @@ -72,6 +72,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -84,9 +85,8 @@ def check_name_availability( body_content = self._serialize.body(account_name, 'StorageAccountCheckNameAvailabilityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -123,6 +123,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -135,9 +136,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -249,7 +249,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -258,8 +257,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -309,7 +308,7 @@ def get_properties( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -318,8 +317,8 @@ def get_properties( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -386,6 +385,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -398,9 +398,8 @@ def update( body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -455,7 +454,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -464,9 +463,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -526,7 +524,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -535,9 +533,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -594,7 +591,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -603,8 +600,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -664,6 +661,7 @@ def regenerate_key( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -676,9 +674,8 @@ def regenerate_key( body_content = self._serialize.body(regenerate_key1, 'StorageAccountRegenerateKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01/operations/usage_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01/operations/usage_operations.py index d8caf7c34ffb..6a8c6b2ad368 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01/operations/usage_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01/operations/usage_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01/operations/storage_accounts_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01/operations/storage_accounts_operations.py index eb337be00bc8..18b97db3d41d 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01/operations/storage_accounts_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01/operations/storage_accounts_operations.py @@ -72,6 +72,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -84,9 +85,8 @@ def check_name_availability( body_content = self._serialize.body(account_name, 'StorageAccountCheckNameAvailabilityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -123,6 +123,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -135,9 +136,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -249,7 +249,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -258,8 +257,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -309,7 +308,7 @@ def get_properties( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -318,8 +317,8 @@ def get_properties( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -386,6 +385,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -398,9 +398,8 @@ def update( body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -455,7 +454,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -464,9 +463,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -526,7 +524,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -535,9 +533,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -594,7 +591,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -603,8 +600,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -664,6 +661,7 @@ def regenerate_key( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -676,9 +674,8 @@ def regenerate_key( body_content = self._serialize.body(regenerate_key1, 'StorageAccountRegenerateKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -737,6 +734,7 @@ def list_account_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -749,9 +747,8 @@ def list_account_sas( body_content = self._serialize.body(parameters, 'AccountSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -810,6 +807,7 @@ def list_service_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -822,9 +820,8 @@ def list_service_sas( body_content = self._serialize.body(parameters, 'ServiceSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01/operations/usage_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01/operations/usage_operations.py index 5ea32cd89d82..0fe016a11e92 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01/operations/usage_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01/operations/usage_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/operations.py index acf3fd6834e4..844fbfc04cab 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/skus_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/skus_operations.py index ace3b7af30fe..f83eb52da8bf 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/skus_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/skus_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/storage_accounts_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/storage_accounts_operations.py index 06f4b0681273..297085f294f0 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/storage_accounts_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/storage_accounts_operations.py @@ -72,6 +72,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -84,9 +85,8 @@ def check_name_availability( body_content = self._serialize.body(account_name, 'StorageAccountCheckNameAvailabilityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -123,6 +123,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -135,9 +136,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -249,7 +249,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -258,8 +257,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -309,7 +308,7 @@ def get_properties( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -318,8 +317,8 @@ def get_properties( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -386,6 +385,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -398,9 +398,8 @@ def update( body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -455,7 +454,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -464,9 +463,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -526,7 +524,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -535,9 +533,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -594,7 +591,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -603,8 +600,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -665,6 +662,7 @@ def regenerate_key( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -677,9 +675,8 @@ def regenerate_key( body_content = self._serialize.body(regenerate_key1, 'StorageAccountRegenerateKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -738,6 +735,7 @@ def list_account_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -750,9 +748,8 @@ def list_account_sas( body_content = self._serialize.body(parameters, 'AccountSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -811,6 +808,7 @@ def list_service_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -823,9 +821,8 @@ def list_service_sas( body_content = self._serialize.body(parameters, 'ServiceSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/usage_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/usage_operations.py index b67b64336173..7c27e3421f4c 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/usage_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01/operations/usage_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/operations.py index 61cb0b666c71..fe098e3575ce 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/skus_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/skus_operations.py index e207d3d64657..b24932805644 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/skus_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/skus_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/storage_accounts_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/storage_accounts_operations.py index 8f51e895b19b..80040dc1f84d 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/storage_accounts_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/storage_accounts_operations.py @@ -72,6 +72,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -84,9 +85,8 @@ def check_name_availability( body_content = self._serialize.body(account_name, 'StorageAccountCheckNameAvailabilityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -123,6 +123,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -135,9 +136,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -249,7 +249,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -258,8 +257,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -309,7 +308,7 @@ def get_properties( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -318,8 +317,8 @@ def get_properties( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -386,6 +385,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -398,9 +398,8 @@ def update( body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -455,7 +454,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -464,9 +463,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -526,7 +524,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -535,9 +533,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -594,7 +591,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -603,8 +600,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -665,6 +662,7 @@ def regenerate_key( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -677,9 +675,8 @@ def regenerate_key( body_content = self._serialize.body(regenerate_key1, 'StorageAccountRegenerateKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -738,6 +735,7 @@ def list_account_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -750,9 +748,8 @@ def list_account_sas( body_content = self._serialize.body(parameters, 'AccountSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -811,6 +808,7 @@ def list_service_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -823,9 +821,8 @@ def list_service_sas( body_content = self._serialize.body(parameters, 'ServiceSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/usage_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/usage_operations.py index 1af3b6f8d6ed..f743de91631d 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/usage_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01/operations/usage_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/blob_containers_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/blob_containers_operations.py index dcf30438e5be..5d79aa599054 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/blob_containers_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/blob_containers_operations.py @@ -76,7 +76,7 @@ def list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -85,8 +85,8 @@ def list( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -161,6 +161,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -173,9 +174,8 @@ def create( body_content = self._serialize.body(blob_container, 'BlobContainer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -249,6 +249,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -261,9 +262,8 @@ def update( body_content = self._serialize.body(blob_container, 'BlobContainer') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -325,7 +325,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -334,8 +334,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -396,7 +396,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -405,8 +404,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -468,6 +467,7 @@ def set_legal_hold( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -480,9 +480,8 @@ def set_legal_hold( body_content = self._serialize.body(legal_hold, 'LegalHold') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -551,6 +550,7 @@ def clear_legal_hold( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -563,9 +563,8 @@ def clear_legal_hold( body_content = self._serialize.body(legal_hold, 'LegalHold') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -642,6 +641,7 @@ def create_or_update_immutability_policy( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -659,9 +659,8 @@ def create_or_update_immutability_policy( body_content = None # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -735,7 +734,7 @@ def get_immutability_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -746,8 +745,8 @@ def get_immutability_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -824,7 +823,7 @@ def delete_immutability_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -834,8 +833,8 @@ def delete_immutability_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -909,7 +908,7 @@ def lock_immutability_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -919,8 +918,8 @@ def lock_immutability_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1002,6 +1001,7 @@ def extend_immutability_policy( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1018,9 +1018,8 @@ def extend_immutability_policy( body_content = None # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/operations.py index c7049ade6b06..b18726355861 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/skus_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/skus_operations.py index 16d00abe29d7..e3804a38ffc4 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/skus_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/skus_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/storage_accounts_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/storage_accounts_operations.py index 75e62a807756..38b2ae877a41 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/storage_accounts_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/storage_accounts_operations.py @@ -72,6 +72,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -84,9 +85,8 @@ def check_name_availability( body_content = self._serialize.body(account_name, 'StorageAccountCheckNameAvailabilityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -123,6 +123,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -135,9 +136,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -249,7 +249,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -258,8 +257,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -309,7 +308,7 @@ def get_properties( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -318,8 +317,8 @@ def get_properties( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -386,6 +385,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -398,9 +398,8 @@ def update( body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -455,7 +454,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -464,9 +463,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -526,7 +524,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -535,9 +533,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -594,7 +591,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -603,8 +600,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -665,6 +662,7 @@ def regenerate_key( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -677,9 +675,8 @@ def regenerate_key( body_content = self._serialize.body(regenerate_key1, 'StorageAccountRegenerateKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -738,6 +735,7 @@ def list_account_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -750,9 +748,8 @@ def list_account_sas( body_content = self._serialize.body(parameters, 'AccountSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -811,6 +808,7 @@ def list_service_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -823,9 +821,8 @@ def list_service_sas( body_content = self._serialize.body(parameters, 'ServiceSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/usage_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/usage_operations.py index 327ed44d1b84..08245d5e1201 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/usage_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01/operations/usage_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -141,7 +140,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -150,9 +149,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/blob_containers_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/blob_containers_operations.py index 56fe57423fc9..8d69bbcdf38e 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/blob_containers_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/blob_containers_operations.py @@ -77,7 +77,7 @@ def list( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -86,8 +86,8 @@ def list( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -162,6 +162,7 @@ def create( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -174,9 +175,8 @@ def create( body_content = self._serialize.body(blob_container, 'BlobContainer') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: exp = CloudError(response) @@ -250,6 +250,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -262,9 +263,8 @@ def update( body_content = self._serialize.body(blob_container, 'BlobContainer') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -326,7 +326,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -335,8 +335,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -397,7 +397,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -406,8 +405,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -469,6 +468,7 @@ def set_legal_hold( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -481,9 +481,8 @@ def set_legal_hold( body_content = self._serialize.body(legal_hold, 'LegalHold') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -552,6 +551,7 @@ def clear_legal_hold( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -564,9 +564,8 @@ def clear_legal_hold( body_content = self._serialize.body(legal_hold, 'LegalHold') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -644,6 +643,7 @@ def create_or_update_immutability_policy( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -661,9 +661,8 @@ def create_or_update_immutability_policy( body_content = None # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -738,7 +737,7 @@ def get_immutability_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -749,8 +748,8 @@ def get_immutability_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -828,7 +827,7 @@ def delete_immutability_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -838,8 +837,8 @@ def delete_immutability_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -914,7 +913,7 @@ def lock_immutability_policy( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -924,8 +923,8 @@ def lock_immutability_policy( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1008,6 +1007,7 @@ def extend_immutability_policy( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1024,9 +1024,8 @@ def extend_immutability_policy( body_content = None # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/operations.py index 445d1003e64c..3acb8e5f66f9 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/operations.py @@ -67,7 +67,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -76,9 +76,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/skus_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/skus_operations.py index e0ca2a05942d..03ba08d79b11 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/skus_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/skus_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/storage_accounts_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/storage_accounts_operations.py index 3709199456c1..51377b13f35a 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/storage_accounts_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/storage_accounts_operations.py @@ -74,6 +74,7 @@ def check_name_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -86,9 +87,8 @@ def check_name_availability( body_content = self._serialize.body(account_name, 'StorageAccountCheckNameAvailabilityParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -125,6 +125,7 @@ def _create_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -137,9 +138,8 @@ def _create_initial( body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -251,7 +251,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -260,8 +259,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -311,7 +310,7 @@ def get_properties( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -320,8 +319,8 @@ def get_properties( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -388,6 +387,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -400,9 +400,8 @@ def update( body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -457,7 +456,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -466,9 +465,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -528,7 +526,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -537,9 +535,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -596,7 +593,7 @@ def list_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -605,8 +602,8 @@ def list_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -667,6 +664,7 @@ def regenerate_key( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -679,9 +677,8 @@ def regenerate_key( body_content = self._serialize.body(regenerate_key1, 'StorageAccountRegenerateKeyParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -741,6 +738,7 @@ def list_account_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -753,9 +751,8 @@ def list_account_sas( body_content = self._serialize.body(parameters, 'AccountSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -815,6 +812,7 @@ def list_service_sas( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -827,9 +825,8 @@ def list_service_sas( body_content = self._serialize.body(parameters, 'ServiceSasParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -888,7 +885,7 @@ def get_management_policies( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -897,8 +894,8 @@ def get_management_policies( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -963,6 +960,7 @@ def create_or_update_management_policies( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -975,9 +973,8 @@ def create_or_update_management_policies( body_content = self._serialize.body(properties, 'ManagementPoliciesRulesSetParameter') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -1033,7 +1030,6 @@ def delete_management_policies( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1042,8 +1038,8 @@ def delete_management_policies( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/usages_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/usages_operations.py index 1adfde6245d0..f47d740798f0 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/usages_operations.py +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview/operations/usages_operations.py @@ -72,7 +72,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -81,9 +81,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -141,7 +140,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -150,9 +149,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/__init__.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/__init__.py new file mode 100644 index 000000000000..0854715e0c10 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/__init__.py @@ -0,0 +1,18 @@ +# 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 .storage_management_client import StorageManagementClient +from .version import VERSION + +__all__ = ['StorageManagementClient'] + +__version__ = VERSION + diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/__init__.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/__init__.py new file mode 100644 index 000000000000..7af0b0e1a1e1 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/__init__.py @@ -0,0 +1,219 @@ +# 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. +# -------------------------------------------------------------------------- + +try: + from .operation_display_py3 import OperationDisplay + from .dimension_py3 import Dimension + from .metric_specification_py3 import MetricSpecification + from .service_specification_py3 import ServiceSpecification + from .operation_py3 import Operation + from .storage_account_check_name_availability_parameters_py3 import StorageAccountCheckNameAvailabilityParameters + from .sku_capability_py3 import SKUCapability + from .restriction_py3 import Restriction + from .sku_py3 import Sku + from .check_name_availability_result_py3 import CheckNameAvailabilityResult + from .custom_domain_py3 import CustomDomain + from .encryption_service_py3 import EncryptionService + from .encryption_services_py3 import EncryptionServices + from .key_vault_properties_py3 import KeyVaultProperties + from .encryption_py3 import Encryption + from .virtual_network_rule_py3 import VirtualNetworkRule + from .ip_rule_py3 import IPRule + from .network_rule_set_py3 import NetworkRuleSet + from .identity_py3 import Identity + from .storage_account_create_parameters_py3 import StorageAccountCreateParameters + from .endpoints_py3 import Endpoints + from .storage_account_py3 import StorageAccount + from .storage_account_key_py3 import StorageAccountKey + from .storage_account_list_keys_result_py3 import StorageAccountListKeysResult + from .storage_account_regenerate_key_parameters_py3 import StorageAccountRegenerateKeyParameters + from .storage_account_update_parameters_py3 import StorageAccountUpdateParameters + from .usage_name_py3 import UsageName + from .usage_py3 import Usage + from .account_sas_parameters_py3 import AccountSasParameters + from .list_account_sas_response_py3 import ListAccountSasResponse + from .service_sas_parameters_py3 import ServiceSasParameters + from .list_service_sas_response_py3 import ListServiceSasResponse + from .proxy_resource_py3 import ProxyResource + from .azure_entity_resource_py3 import AzureEntityResource + from .resource_py3 import Resource + from .tracked_resource_py3 import TrackedResource + from .update_history_property_py3 import UpdateHistoryProperty + from .immutability_policy_properties_py3 import ImmutabilityPolicyProperties + from .tag_property_py3 import TagProperty + from .legal_hold_properties_py3 import LegalHoldProperties + from .blob_container_py3 import BlobContainer + from .immutability_policy_py3 import ImmutabilityPolicy + from .legal_hold_py3 import LegalHold + from .list_container_item_py3 import ListContainerItem + from .list_container_items_py3 import ListContainerItems + from .storage_account_management_policies_py3 import StorageAccountManagementPolicies + from .management_policies_rules_set_parameter_py3 import ManagementPoliciesRulesSetParameter +except (SyntaxError, ImportError): + from .operation_display import OperationDisplay + from .dimension import Dimension + from .metric_specification import MetricSpecification + from .service_specification import ServiceSpecification + from .operation import Operation + from .storage_account_check_name_availability_parameters import StorageAccountCheckNameAvailabilityParameters + from .sku_capability import SKUCapability + from .restriction import Restriction + from .sku import Sku + from .check_name_availability_result import CheckNameAvailabilityResult + from .custom_domain import CustomDomain + from .encryption_service import EncryptionService + from .encryption_services import EncryptionServices + from .key_vault_properties import KeyVaultProperties + from .encryption import Encryption + from .virtual_network_rule import VirtualNetworkRule + from .ip_rule import IPRule + from .network_rule_set import NetworkRuleSet + from .identity import Identity + from .storage_account_create_parameters import StorageAccountCreateParameters + from .endpoints import Endpoints + from .storage_account import StorageAccount + from .storage_account_key import StorageAccountKey + from .storage_account_list_keys_result import StorageAccountListKeysResult + from .storage_account_regenerate_key_parameters import StorageAccountRegenerateKeyParameters + from .storage_account_update_parameters import StorageAccountUpdateParameters + from .usage_name import UsageName + from .usage import Usage + from .account_sas_parameters import AccountSasParameters + from .list_account_sas_response import ListAccountSasResponse + from .service_sas_parameters import ServiceSasParameters + from .list_service_sas_response import ListServiceSasResponse + from .proxy_resource import ProxyResource + from .azure_entity_resource import AzureEntityResource + from .resource import Resource + from .tracked_resource import TrackedResource + from .update_history_property import UpdateHistoryProperty + from .immutability_policy_properties import ImmutabilityPolicyProperties + from .tag_property import TagProperty + from .legal_hold_properties import LegalHoldProperties + from .blob_container import BlobContainer + from .immutability_policy import ImmutabilityPolicy + from .legal_hold import LegalHold + from .list_container_item import ListContainerItem + from .list_container_items import ListContainerItems + from .storage_account_management_policies import StorageAccountManagementPolicies + from .management_policies_rules_set_parameter import ManagementPoliciesRulesSetParameter +from .operation_paged import OperationPaged +from .sku_paged import SkuPaged +from .storage_account_paged import StorageAccountPaged +from .usage_paged import UsagePaged +from .storage_management_client_enums import ( + ReasonCode, + SkuName, + SkuTier, + Kind, + Reason, + KeySource, + Action, + State, + Bypass, + DefaultAction, + AccessTier, + ProvisioningState, + AccountStatus, + KeyPermission, + UsageUnit, + Services, + SignedResourceTypes, + Permissions, + HttpProtocol, + SignedResource, + PublicAccess, + LeaseStatus, + LeaseState, + LeaseDuration, + ImmutabilityPolicyState, + ImmutabilityPolicyUpdateType, +) + +__all__ = [ + 'OperationDisplay', + 'Dimension', + 'MetricSpecification', + 'ServiceSpecification', + 'Operation', + 'StorageAccountCheckNameAvailabilityParameters', + 'SKUCapability', + 'Restriction', + 'Sku', + 'CheckNameAvailabilityResult', + 'CustomDomain', + 'EncryptionService', + 'EncryptionServices', + 'KeyVaultProperties', + 'Encryption', + 'VirtualNetworkRule', + 'IPRule', + 'NetworkRuleSet', + 'Identity', + 'StorageAccountCreateParameters', + 'Endpoints', + 'StorageAccount', + 'StorageAccountKey', + 'StorageAccountListKeysResult', + 'StorageAccountRegenerateKeyParameters', + 'StorageAccountUpdateParameters', + 'UsageName', + 'Usage', + 'AccountSasParameters', + 'ListAccountSasResponse', + 'ServiceSasParameters', + 'ListServiceSasResponse', + 'ProxyResource', + 'AzureEntityResource', + 'Resource', + 'TrackedResource', + 'UpdateHistoryProperty', + 'ImmutabilityPolicyProperties', + 'TagProperty', + 'LegalHoldProperties', + 'BlobContainer', + 'ImmutabilityPolicy', + 'LegalHold', + 'ListContainerItem', + 'ListContainerItems', + 'StorageAccountManagementPolicies', + 'ManagementPoliciesRulesSetParameter', + 'OperationPaged', + 'SkuPaged', + 'StorageAccountPaged', + 'UsagePaged', + 'ReasonCode', + 'SkuName', + 'SkuTier', + 'Kind', + 'Reason', + 'KeySource', + 'Action', + 'State', + 'Bypass', + 'DefaultAction', + 'AccessTier', + 'ProvisioningState', + 'AccountStatus', + 'KeyPermission', + 'UsageUnit', + 'Services', + 'SignedResourceTypes', + 'Permissions', + 'HttpProtocol', + 'SignedResource', + 'PublicAccess', + 'LeaseStatus', + 'LeaseState', + 'LeaseDuration', + 'ImmutabilityPolicyState', + 'ImmutabilityPolicyUpdateType', +] diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/account_sas_parameters.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/account_sas_parameters.py new file mode 100644 index 000000000000..2684b847f902 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/account_sas_parameters.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccountSasParameters(Model): + """The parameters to list SAS credentials of a storage account. + + All required parameters must be populated in order to send to Azure. + + :param services: Required. The signed services accessible with the account + SAS. Possible values include: Blob (b), Queue (q), Table (t), File (f). + Possible values include: 'b', 'q', 't', 'f' + :type services: str or ~azure.mgmt.storage.v2018_07_01.models.Services + :param resource_types: Required. The signed resource types that are + accessible with the account SAS. Service (s): Access to service-level + APIs; Container (c): Access to container-level APIs; Object (o): Access to + object-level APIs for blobs, queue messages, table entities, and files. + Possible values include: 's', 'c', 'o' + :type resource_types: str or + ~azure.mgmt.storage.v2018_07_01.models.SignedResourceTypes + :param permissions: Required. The signed permissions for the account SAS. + Possible values include: Read (r), Write (w), Delete (d), List (l), Add + (a), Create (c), Update (u) and Process (p). Possible values include: 'r', + 'd', 'w', 'l', 'a', 'c', 'u', 'p' + :type permissions: str or + ~azure.mgmt.storage.v2018_07_01.models.Permissions + :param ip_address_or_range: An IP address or a range of IP addresses from + which to accept requests. + :type ip_address_or_range: str + :param protocols: The protocol permitted for a request made with the + account SAS. Possible values include: 'https,http', 'https' + :type protocols: str or + ~azure.mgmt.storage.v2018_07_01.models.HttpProtocol + :param shared_access_start_time: The time at which the SAS becomes valid. + :type shared_access_start_time: datetime + :param shared_access_expiry_time: Required. The time at which the shared + access signature becomes invalid. + :type shared_access_expiry_time: datetime + :param key_to_sign: The key to sign the account SAS token with. + :type key_to_sign: str + """ + + _validation = { + 'services': {'required': True}, + 'resource_types': {'required': True}, + 'permissions': {'required': True}, + 'shared_access_expiry_time': {'required': True}, + } + + _attribute_map = { + 'services': {'key': 'signedServices', 'type': 'str'}, + 'resource_types': {'key': 'signedResourceTypes', 'type': 'str'}, + 'permissions': {'key': 'signedPermission', 'type': 'str'}, + 'ip_address_or_range': {'key': 'signedIp', 'type': 'str'}, + 'protocols': {'key': 'signedProtocol', 'type': 'HttpProtocol'}, + 'shared_access_start_time': {'key': 'signedStart', 'type': 'iso-8601'}, + 'shared_access_expiry_time': {'key': 'signedExpiry', 'type': 'iso-8601'}, + 'key_to_sign': {'key': 'keyToSign', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AccountSasParameters, self).__init__(**kwargs) + self.services = kwargs.get('services', None) + self.resource_types = kwargs.get('resource_types', None) + self.permissions = kwargs.get('permissions', None) + self.ip_address_or_range = kwargs.get('ip_address_or_range', None) + self.protocols = kwargs.get('protocols', None) + self.shared_access_start_time = kwargs.get('shared_access_start_time', None) + self.shared_access_expiry_time = kwargs.get('shared_access_expiry_time', None) + self.key_to_sign = kwargs.get('key_to_sign', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/account_sas_parameters_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/account_sas_parameters_py3.py new file mode 100644 index 000000000000..bafb5b3e65f2 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/account_sas_parameters_py3.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AccountSasParameters(Model): + """The parameters to list SAS credentials of a storage account. + + All required parameters must be populated in order to send to Azure. + + :param services: Required. The signed services accessible with the account + SAS. Possible values include: Blob (b), Queue (q), Table (t), File (f). + Possible values include: 'b', 'q', 't', 'f' + :type services: str or ~azure.mgmt.storage.v2018_07_01.models.Services + :param resource_types: Required. The signed resource types that are + accessible with the account SAS. Service (s): Access to service-level + APIs; Container (c): Access to container-level APIs; Object (o): Access to + object-level APIs for blobs, queue messages, table entities, and files. + Possible values include: 's', 'c', 'o' + :type resource_types: str or + ~azure.mgmt.storage.v2018_07_01.models.SignedResourceTypes + :param permissions: Required. The signed permissions for the account SAS. + Possible values include: Read (r), Write (w), Delete (d), List (l), Add + (a), Create (c), Update (u) and Process (p). Possible values include: 'r', + 'd', 'w', 'l', 'a', 'c', 'u', 'p' + :type permissions: str or + ~azure.mgmt.storage.v2018_07_01.models.Permissions + :param ip_address_or_range: An IP address or a range of IP addresses from + which to accept requests. + :type ip_address_or_range: str + :param protocols: The protocol permitted for a request made with the + account SAS. Possible values include: 'https,http', 'https' + :type protocols: str or + ~azure.mgmt.storage.v2018_07_01.models.HttpProtocol + :param shared_access_start_time: The time at which the SAS becomes valid. + :type shared_access_start_time: datetime + :param shared_access_expiry_time: Required. The time at which the shared + access signature becomes invalid. + :type shared_access_expiry_time: datetime + :param key_to_sign: The key to sign the account SAS token with. + :type key_to_sign: str + """ + + _validation = { + 'services': {'required': True}, + 'resource_types': {'required': True}, + 'permissions': {'required': True}, + 'shared_access_expiry_time': {'required': True}, + } + + _attribute_map = { + 'services': {'key': 'signedServices', 'type': 'str'}, + 'resource_types': {'key': 'signedResourceTypes', 'type': 'str'}, + 'permissions': {'key': 'signedPermission', 'type': 'str'}, + 'ip_address_or_range': {'key': 'signedIp', 'type': 'str'}, + 'protocols': {'key': 'signedProtocol', 'type': 'HttpProtocol'}, + 'shared_access_start_time': {'key': 'signedStart', 'type': 'iso-8601'}, + 'shared_access_expiry_time': {'key': 'signedExpiry', 'type': 'iso-8601'}, + 'key_to_sign': {'key': 'keyToSign', 'type': 'str'}, + } + + def __init__(self, *, services, resource_types, permissions, shared_access_expiry_time, ip_address_or_range: str=None, protocols=None, shared_access_start_time=None, key_to_sign: str=None, **kwargs) -> None: + super(AccountSasParameters, self).__init__(**kwargs) + self.services = services + self.resource_types = resource_types + self.permissions = permissions + self.ip_address_or_range = ip_address_or_range + self.protocols = protocols + self.shared_access_start_time = shared_access_start_time + self.shared_access_expiry_time = shared_access_expiry_time + self.key_to_sign = key_to_sign diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/azure_entity_resource.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/azure_entity_resource.py new file mode 100644 index 000000000000..3bffaab8d35b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/azure_entity_resource.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class AzureEntityResource(Resource): + """The resource model definition for a Azure Resource Manager resource with an + etag. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureEntityResource, self).__init__(**kwargs) + self.etag = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/azure_entity_resource_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/azure_entity_resource_py3.py new file mode 100644 index 000000000000..d3f80d87498a --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/azure_entity_resource_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class AzureEntityResource(Resource): + """The resource model definition for a Azure Resource Manager resource with an + etag. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(AzureEntityResource, self).__init__(**kwargs) + self.etag = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/blob_container.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/blob_container.py new file mode 100644 index 000000000000..7116fe02923d --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/blob_container.py @@ -0,0 +1,119 @@ +# 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 .azure_entity_resource import AzureEntityResource + + +class BlobContainer(AzureEntityResource): + """Properties of the blob container, including Id, resource name, resource + type, Etag. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + :param public_access: Specifies whether data in the container may be + accessed publicly and the level of access. Possible values include: + 'Container', 'Blob', 'None' + :type public_access: str or + ~azure.mgmt.storage.v2018_07_01.models.PublicAccess + :ivar last_modified_time: Returns the date and time the container was last + modified. + :vartype last_modified_time: datetime + :ivar lease_status: The lease status of the container. Possible values + include: 'Locked', 'Unlocked' + :vartype lease_status: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseStatus + :ivar lease_state: Lease state of the container. Possible values include: + 'Available', 'Leased', 'Expired', 'Breaking', 'Broken' + :vartype lease_state: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseState + :ivar lease_duration: Specifies whether the lease on a container is of + infinite or fixed duration, only when the container is leased. Possible + values include: 'Infinite', 'Fixed' + :vartype lease_duration: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseDuration + :param metadata: A name-value pair to associate with the container as + metadata. + :type metadata: dict[str, str] + :ivar immutability_policy: The ImmutabilityPolicy property of the + container. + :vartype immutability_policy: + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyProperties + :ivar legal_hold: The LegalHold property of the container. + :vartype legal_hold: + ~azure.mgmt.storage.v2018_07_01.models.LegalHoldProperties + :ivar has_legal_hold: The hasLegalHold public property is set to true by + SRP if there are at least one existing tag. The hasLegalHold public + property is set to false by SRP if all existing legal hold tags are + cleared out. There can be a maximum of 1000 blob containers with + hasLegalHold=true for a given account. + :vartype has_legal_hold: bool + :ivar has_immutability_policy: The hasImmutabilityPolicy public property + is set to true by SRP if ImmutabilityPolicy has been created for this + container. The hasImmutabilityPolicy public property is set to false by + SRP if ImmutabilityPolicy has not been created for this container. + :vartype has_immutability_policy: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + 'lease_status': {'readonly': True}, + 'lease_state': {'readonly': True}, + 'lease_duration': {'readonly': True}, + 'immutability_policy': {'readonly': True}, + 'legal_hold': {'readonly': True}, + 'has_legal_hold': {'readonly': True}, + 'has_immutability_policy': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'public_access': {'key': 'properties.publicAccess', 'type': 'PublicAccess'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + 'lease_status': {'key': 'properties.leaseStatus', 'type': 'str'}, + 'lease_state': {'key': 'properties.leaseState', 'type': 'str'}, + 'lease_duration': {'key': 'properties.leaseDuration', 'type': 'str'}, + 'metadata': {'key': 'properties.metadata', 'type': '{str}'}, + 'immutability_policy': {'key': 'properties.immutabilityPolicy', 'type': 'ImmutabilityPolicyProperties'}, + 'legal_hold': {'key': 'properties.legalHold', 'type': 'LegalHoldProperties'}, + 'has_legal_hold': {'key': 'properties.hasLegalHold', 'type': 'bool'}, + 'has_immutability_policy': {'key': 'properties.hasImmutabilityPolicy', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(BlobContainer, self).__init__(**kwargs) + self.public_access = kwargs.get('public_access', None) + self.last_modified_time = None + self.lease_status = None + self.lease_state = None + self.lease_duration = None + self.metadata = kwargs.get('metadata', None) + self.immutability_policy = None + self.legal_hold = None + self.has_legal_hold = None + self.has_immutability_policy = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/blob_container_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/blob_container_py3.py new file mode 100644 index 000000000000..c4dc0079b3ba --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/blob_container_py3.py @@ -0,0 +1,119 @@ +# 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 .azure_entity_resource_py3 import AzureEntityResource + + +class BlobContainer(AzureEntityResource): + """Properties of the blob container, including Id, resource name, resource + type, Etag. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + :param public_access: Specifies whether data in the container may be + accessed publicly and the level of access. Possible values include: + 'Container', 'Blob', 'None' + :type public_access: str or + ~azure.mgmt.storage.v2018_07_01.models.PublicAccess + :ivar last_modified_time: Returns the date and time the container was last + modified. + :vartype last_modified_time: datetime + :ivar lease_status: The lease status of the container. Possible values + include: 'Locked', 'Unlocked' + :vartype lease_status: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseStatus + :ivar lease_state: Lease state of the container. Possible values include: + 'Available', 'Leased', 'Expired', 'Breaking', 'Broken' + :vartype lease_state: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseState + :ivar lease_duration: Specifies whether the lease on a container is of + infinite or fixed duration, only when the container is leased. Possible + values include: 'Infinite', 'Fixed' + :vartype lease_duration: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseDuration + :param metadata: A name-value pair to associate with the container as + metadata. + :type metadata: dict[str, str] + :ivar immutability_policy: The ImmutabilityPolicy property of the + container. + :vartype immutability_policy: + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyProperties + :ivar legal_hold: The LegalHold property of the container. + :vartype legal_hold: + ~azure.mgmt.storage.v2018_07_01.models.LegalHoldProperties + :ivar has_legal_hold: The hasLegalHold public property is set to true by + SRP if there are at least one existing tag. The hasLegalHold public + property is set to false by SRP if all existing legal hold tags are + cleared out. There can be a maximum of 1000 blob containers with + hasLegalHold=true for a given account. + :vartype has_legal_hold: bool + :ivar has_immutability_policy: The hasImmutabilityPolicy public property + is set to true by SRP if ImmutabilityPolicy has been created for this + container. The hasImmutabilityPolicy public property is set to false by + SRP if ImmutabilityPolicy has not been created for this container. + :vartype has_immutability_policy: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + 'lease_status': {'readonly': True}, + 'lease_state': {'readonly': True}, + 'lease_duration': {'readonly': True}, + 'immutability_policy': {'readonly': True}, + 'legal_hold': {'readonly': True}, + 'has_legal_hold': {'readonly': True}, + 'has_immutability_policy': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'public_access': {'key': 'properties.publicAccess', 'type': 'PublicAccess'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + 'lease_status': {'key': 'properties.leaseStatus', 'type': 'str'}, + 'lease_state': {'key': 'properties.leaseState', 'type': 'str'}, + 'lease_duration': {'key': 'properties.leaseDuration', 'type': 'str'}, + 'metadata': {'key': 'properties.metadata', 'type': '{str}'}, + 'immutability_policy': {'key': 'properties.immutabilityPolicy', 'type': 'ImmutabilityPolicyProperties'}, + 'legal_hold': {'key': 'properties.legalHold', 'type': 'LegalHoldProperties'}, + 'has_legal_hold': {'key': 'properties.hasLegalHold', 'type': 'bool'}, + 'has_immutability_policy': {'key': 'properties.hasImmutabilityPolicy', 'type': 'bool'}, + } + + def __init__(self, *, public_access=None, metadata=None, **kwargs) -> None: + super(BlobContainer, self).__init__(**kwargs) + self.public_access = public_access + self.last_modified_time = None + self.lease_status = None + self.lease_state = None + self.lease_duration = None + self.metadata = metadata + self.immutability_policy = None + self.legal_hold = None + self.has_legal_hold = None + self.has_immutability_policy = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/check_name_availability_result.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/check_name_availability_result.py new file mode 100644 index 000000000000..80798d59633b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/check_name_availability_result.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CheckNameAvailabilityResult(Model): + """The CheckNameAvailability operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name_available: Gets a boolean value that indicates whether the name + is available for you to use. If true, the name is available. If false, the + name has already been taken or is invalid and cannot be used. + :vartype name_available: bool + :ivar reason: Gets the reason that a storage account name could not be + used. The Reason element is only returned if NameAvailable is false. + Possible values include: 'AccountNameInvalid', 'AlreadyExists' + :vartype reason: str or ~azure.mgmt.storage.v2018_07_01.models.Reason + :ivar message: Gets an error message explaining the Reason value in more + detail. + :vartype message: str + """ + + _validation = { + 'name_available': {'readonly': True}, + 'reason': {'readonly': True}, + 'message': {'readonly': True}, + } + + _attribute_map = { + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'Reason'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CheckNameAvailabilityResult, self).__init__(**kwargs) + self.name_available = None + self.reason = None + self.message = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/check_name_availability_result_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/check_name_availability_result_py3.py new file mode 100644 index 000000000000..6d09f2814e76 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/check_name_availability_result_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CheckNameAvailabilityResult(Model): + """The CheckNameAvailability operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name_available: Gets a boolean value that indicates whether the name + is available for you to use. If true, the name is available. If false, the + name has already been taken or is invalid and cannot be used. + :vartype name_available: bool + :ivar reason: Gets the reason that a storage account name could not be + used. The Reason element is only returned if NameAvailable is false. + Possible values include: 'AccountNameInvalid', 'AlreadyExists' + :vartype reason: str or ~azure.mgmt.storage.v2018_07_01.models.Reason + :ivar message: Gets an error message explaining the Reason value in more + detail. + :vartype message: str + """ + + _validation = { + 'name_available': {'readonly': True}, + 'reason': {'readonly': True}, + 'message': {'readonly': True}, + } + + _attribute_map = { + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'Reason'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(CheckNameAvailabilityResult, self).__init__(**kwargs) + self.name_available = None + self.reason = None + self.message = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/custom_domain.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/custom_domain.py new file mode 100644 index 000000000000..585480d7321a --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/custom_domain.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CustomDomain(Model): + """The custom domain assigned to this storage account. This can be set via + Update. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Gets or sets the custom domain name assigned to the + storage account. Name is the CNAME source. + :type name: str + :param use_sub_domain: Indicates whether indirect CName validation is + enabled. Default value is false. This should only be set on updates. + :type use_sub_domain: bool + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'use_sub_domain': {'key': 'useSubDomain', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(CustomDomain, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.use_sub_domain = kwargs.get('use_sub_domain', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/custom_domain_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/custom_domain_py3.py new file mode 100644 index 000000000000..4c6fe3f83e35 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/custom_domain_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CustomDomain(Model): + """The custom domain assigned to this storage account. This can be set via + Update. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Gets or sets the custom domain name assigned to the + storage account. Name is the CNAME source. + :type name: str + :param use_sub_domain: Indicates whether indirect CName validation is + enabled. Default value is false. This should only be set on updates. + :type use_sub_domain: bool + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'use_sub_domain': {'key': 'useSubDomain', 'type': 'bool'}, + } + + def __init__(self, *, name: str, use_sub_domain: bool=None, **kwargs) -> None: + super(CustomDomain, self).__init__(**kwargs) + self.name = name + self.use_sub_domain = use_sub_domain diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/dimension.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/dimension.py new file mode 100644 index 000000000000..0a0cdaf75da7 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/dimension.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Dimension(Model): + """Dimension of blobs, possiblly be blob type or access tier. + + :param name: Display name of dimension. + :type name: str + :param display_name: Display name of dimension. + :type display_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Dimension, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/dimension_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/dimension_py3.py new file mode 100644 index 000000000000..6845aa528b4b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/dimension_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Dimension(Model): + """Dimension of blobs, possiblly be blob type or access tier. + + :param name: Display name of dimension. + :type name: str + :param display_name: Display name of dimension. + :type display_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, **kwargs) -> None: + super(Dimension, self).__init__(**kwargs) + self.name = name + self.display_name = display_name diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption.py new file mode 100644 index 000000000000..b7579543feed --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Encryption(Model): + """The encryption settings on the storage account. + + All required parameters must be populated in order to send to Azure. + + :param services: List of services which support encryption. + :type services: ~azure.mgmt.storage.v2018_07_01.models.EncryptionServices + :param key_source: Required. The encryption keySource (provider). Possible + values (case-insensitive): Microsoft.Storage, Microsoft.Keyvault. + Possible values include: 'Microsoft.Storage', 'Microsoft.Keyvault'. + Default value: "Microsoft.Storage" . + :type key_source: str or ~azure.mgmt.storage.v2018_07_01.models.KeySource + :param key_vault_properties: Properties provided by key vault. + :type key_vault_properties: + ~azure.mgmt.storage.v2018_07_01.models.KeyVaultProperties + """ + + _validation = { + 'key_source': {'required': True}, + } + + _attribute_map = { + 'services': {'key': 'services', 'type': 'EncryptionServices'}, + 'key_source': {'key': 'keySource', 'type': 'str'}, + 'key_vault_properties': {'key': 'keyvaultproperties', 'type': 'KeyVaultProperties'}, + } + + def __init__(self, **kwargs): + super(Encryption, self).__init__(**kwargs) + self.services = kwargs.get('services', None) + self.key_source = kwargs.get('key_source', "Microsoft.Storage") + self.key_vault_properties = kwargs.get('key_vault_properties', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_py3.py new file mode 100644 index 000000000000..7b12b027cbe9 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Encryption(Model): + """The encryption settings on the storage account. + + All required parameters must be populated in order to send to Azure. + + :param services: List of services which support encryption. + :type services: ~azure.mgmt.storage.v2018_07_01.models.EncryptionServices + :param key_source: Required. The encryption keySource (provider). Possible + values (case-insensitive): Microsoft.Storage, Microsoft.Keyvault. + Possible values include: 'Microsoft.Storage', 'Microsoft.Keyvault'. + Default value: "Microsoft.Storage" . + :type key_source: str or ~azure.mgmt.storage.v2018_07_01.models.KeySource + :param key_vault_properties: Properties provided by key vault. + :type key_vault_properties: + ~azure.mgmt.storage.v2018_07_01.models.KeyVaultProperties + """ + + _validation = { + 'key_source': {'required': True}, + } + + _attribute_map = { + 'services': {'key': 'services', 'type': 'EncryptionServices'}, + 'key_source': {'key': 'keySource', 'type': 'str'}, + 'key_vault_properties': {'key': 'keyvaultproperties', 'type': 'KeyVaultProperties'}, + } + + def __init__(self, *, services=None, key_source="Microsoft.Storage", key_vault_properties=None, **kwargs) -> None: + super(Encryption, self).__init__(**kwargs) + self.services = services + self.key_source = key_source + self.key_vault_properties = key_vault_properties diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_service.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_service.py new file mode 100644 index 000000000000..3a020c468f64 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_service.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EncryptionService(Model): + """A service that allows server-side encryption to be used. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: A boolean indicating whether or not the service encrypts + the data as it is stored. + :type enabled: bool + :ivar last_enabled_time: Gets a rough estimate of the date/time when the + encryption was last enabled by the user. Only returned when encryption is + enabled. There might be some unencrypted blobs which were written after + this time, as it is just a rough estimate. + :vartype last_enabled_time: datetime + """ + + _validation = { + 'last_enabled_time': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'last_enabled_time': {'key': 'lastEnabledTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(EncryptionService, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.last_enabled_time = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_service_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_service_py3.py new file mode 100644 index 000000000000..0566050c6155 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_service_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EncryptionService(Model): + """A service that allows server-side encryption to be used. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param enabled: A boolean indicating whether or not the service encrypts + the data as it is stored. + :type enabled: bool + :ivar last_enabled_time: Gets a rough estimate of the date/time when the + encryption was last enabled by the user. Only returned when encryption is + enabled. There might be some unencrypted blobs which were written after + this time, as it is just a rough estimate. + :vartype last_enabled_time: datetime + """ + + _validation = { + 'last_enabled_time': {'readonly': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'last_enabled_time': {'key': 'lastEnabledTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(EncryptionService, self).__init__(**kwargs) + self.enabled = enabled + self.last_enabled_time = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_services.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_services.py new file mode 100644 index 000000000000..12606368487d --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_services.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EncryptionServices(Model): + """A list of services that support encryption. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param blob: The encryption function of the blob storage service. + :type blob: ~azure.mgmt.storage.v2018_07_01.models.EncryptionService + :param file: The encryption function of the file storage service. + :type file: ~azure.mgmt.storage.v2018_07_01.models.EncryptionService + :ivar table: The encryption function of the table storage service. + :vartype table: ~azure.mgmt.storage.v2018_07_01.models.EncryptionService + :ivar queue: The encryption function of the queue storage service. + :vartype queue: ~azure.mgmt.storage.v2018_07_01.models.EncryptionService + """ + + _validation = { + 'table': {'readonly': True}, + 'queue': {'readonly': True}, + } + + _attribute_map = { + 'blob': {'key': 'blob', 'type': 'EncryptionService'}, + 'file': {'key': 'file', 'type': 'EncryptionService'}, + 'table': {'key': 'table', 'type': 'EncryptionService'}, + 'queue': {'key': 'queue', 'type': 'EncryptionService'}, + } + + def __init__(self, **kwargs): + super(EncryptionServices, self).__init__(**kwargs) + self.blob = kwargs.get('blob', None) + self.file = kwargs.get('file', None) + self.table = None + self.queue = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_services_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_services_py3.py new file mode 100644 index 000000000000..2385b58cd95b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/encryption_services_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EncryptionServices(Model): + """A list of services that support encryption. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param blob: The encryption function of the blob storage service. + :type blob: ~azure.mgmt.storage.v2018_07_01.models.EncryptionService + :param file: The encryption function of the file storage service. + :type file: ~azure.mgmt.storage.v2018_07_01.models.EncryptionService + :ivar table: The encryption function of the table storage service. + :vartype table: ~azure.mgmt.storage.v2018_07_01.models.EncryptionService + :ivar queue: The encryption function of the queue storage service. + :vartype queue: ~azure.mgmt.storage.v2018_07_01.models.EncryptionService + """ + + _validation = { + 'table': {'readonly': True}, + 'queue': {'readonly': True}, + } + + _attribute_map = { + 'blob': {'key': 'blob', 'type': 'EncryptionService'}, + 'file': {'key': 'file', 'type': 'EncryptionService'}, + 'table': {'key': 'table', 'type': 'EncryptionService'}, + 'queue': {'key': 'queue', 'type': 'EncryptionService'}, + } + + def __init__(self, *, blob=None, file=None, **kwargs) -> None: + super(EncryptionServices, self).__init__(**kwargs) + self.blob = blob + self.file = file + self.table = None + self.queue = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/endpoints.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/endpoints.py new file mode 100644 index 000000000000..66b1c3459a5e --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/endpoints.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Endpoints(Model): + """The URIs that are used to perform a retrieval of a public blob, queue, + table, web or dfs object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar blob: Gets the blob endpoint. + :vartype blob: str + :ivar queue: Gets the queue endpoint. + :vartype queue: str + :ivar table: Gets the table endpoint. + :vartype table: str + :ivar file: Gets the file endpoint. + :vartype file: str + :ivar web: Gets the web endpoint. + :vartype web: str + :ivar dfs: Gets the dfs endpoint. + :vartype dfs: str + """ + + _validation = { + 'blob': {'readonly': True}, + 'queue': {'readonly': True}, + 'table': {'readonly': True}, + 'file': {'readonly': True}, + 'web': {'readonly': True}, + 'dfs': {'readonly': True}, + } + + _attribute_map = { + 'blob': {'key': 'blob', 'type': 'str'}, + 'queue': {'key': 'queue', 'type': 'str'}, + 'table': {'key': 'table', 'type': 'str'}, + 'file': {'key': 'file', 'type': 'str'}, + 'web': {'key': 'web', 'type': 'str'}, + 'dfs': {'key': 'dfs', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Endpoints, self).__init__(**kwargs) + self.blob = None + self.queue = None + self.table = None + self.file = None + self.web = None + self.dfs = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/endpoints_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/endpoints_py3.py new file mode 100644 index 000000000000..ced561acd85b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/endpoints_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Endpoints(Model): + """The URIs that are used to perform a retrieval of a public blob, queue, + table, web or dfs object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar blob: Gets the blob endpoint. + :vartype blob: str + :ivar queue: Gets the queue endpoint. + :vartype queue: str + :ivar table: Gets the table endpoint. + :vartype table: str + :ivar file: Gets the file endpoint. + :vartype file: str + :ivar web: Gets the web endpoint. + :vartype web: str + :ivar dfs: Gets the dfs endpoint. + :vartype dfs: str + """ + + _validation = { + 'blob': {'readonly': True}, + 'queue': {'readonly': True}, + 'table': {'readonly': True}, + 'file': {'readonly': True}, + 'web': {'readonly': True}, + 'dfs': {'readonly': True}, + } + + _attribute_map = { + 'blob': {'key': 'blob', 'type': 'str'}, + 'queue': {'key': 'queue', 'type': 'str'}, + 'table': {'key': 'table', 'type': 'str'}, + 'file': {'key': 'file', 'type': 'str'}, + 'web': {'key': 'web', 'type': 'str'}, + 'dfs': {'key': 'dfs', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Endpoints, self).__init__(**kwargs) + self.blob = None + self.queue = None + self.table = None + self.file = None + self.web = None + self.dfs = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/identity.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/identity.py new file mode 100644 index 000000000000..f526b986fc70 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/identity.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Identity(Model): + """Identity for the resource. + + 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 principal_id: The principal ID of resource identity. + :vartype principal_id: str + :ivar tenant_id: The tenant ID of resource. + :vartype tenant_id: str + :ivar type: Required. The identity type. Default value: "SystemAssigned" . + :vartype type: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + 'type': {'required': True, 'constant': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + type = "SystemAssigned" + + def __init__(self, **kwargs): + super(Identity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/identity_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/identity_py3.py new file mode 100644 index 000000000000..22d25fdd85b7 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/identity_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Identity(Model): + """Identity for the resource. + + 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 principal_id: The principal ID of resource identity. + :vartype principal_id: str + :ivar tenant_id: The tenant ID of resource. + :vartype tenant_id: str + :ivar type: Required. The identity type. Default value: "SystemAssigned" . + :vartype type: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + 'type': {'required': True, 'constant': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + type = "SystemAssigned" + + def __init__(self, **kwargs) -> None: + super(Identity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy.py new file mode 100644 index 000000000000..a1fd181e57f7 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy.py @@ -0,0 +1,66 @@ +# 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 .azure_entity_resource import AzureEntityResource + + +class ImmutabilityPolicy(AzureEntityResource): + """The ImmutabilityPolicy property of a blob container, including Id, resource + name, resource type, Etag. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + :param immutability_period_since_creation_in_days: Required. The + immutability period for the blobs in the container since the policy + creation, in days. + :type immutability_period_since_creation_in_days: int + :ivar state: The ImmutabilityPolicy state of a blob container, possible + values include: Locked and Unlocked. Possible values include: 'Locked', + 'Unlocked' + :vartype state: str or + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + 'immutability_period_since_creation_in_days': {'required': True}, + 'state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'immutability_period_since_creation_in_days': {'key': 'properties.immutabilityPeriodSinceCreationInDays', 'type': 'int'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ImmutabilityPolicy, self).__init__(**kwargs) + self.immutability_period_since_creation_in_days = kwargs.get('immutability_period_since_creation_in_days', None) + self.state = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_properties.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_properties.py new file mode 100644 index 000000000000..dd21a8a48d65 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_properties.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImmutabilityPolicyProperties(Model): + """The properties of an ImmutabilityPolicy of a blob container. + + 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 immutability_period_since_creation_in_days: Required. The + immutability period for the blobs in the container since the policy + creation, in days. + :type immutability_period_since_creation_in_days: int + :ivar state: The ImmutabilityPolicy state of a blob container, possible + values include: Locked and Unlocked. Possible values include: 'Locked', + 'Unlocked' + :vartype state: str or + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyState + :ivar etag: ImmutabilityPolicy Etag. + :vartype etag: str + :ivar update_history: The ImmutabilityPolicy update history of the blob + container. + :vartype update_history: + list[~azure.mgmt.storage.v2018_07_01.models.UpdateHistoryProperty] + """ + + _validation = { + 'immutability_period_since_creation_in_days': {'required': True}, + 'state': {'readonly': True}, + 'etag': {'readonly': True}, + 'update_history': {'readonly': True}, + } + + _attribute_map = { + 'immutability_period_since_creation_in_days': {'key': 'properties.immutabilityPeriodSinceCreationInDays', 'type': 'int'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'update_history': {'key': 'updateHistory', 'type': '[UpdateHistoryProperty]'}, + } + + def __init__(self, **kwargs): + super(ImmutabilityPolicyProperties, self).__init__(**kwargs) + self.immutability_period_since_creation_in_days = kwargs.get('immutability_period_since_creation_in_days', None) + self.state = None + self.etag = None + self.update_history = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_properties_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_properties_py3.py new file mode 100644 index 000000000000..32ff9c58ae2b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_properties_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ImmutabilityPolicyProperties(Model): + """The properties of an ImmutabilityPolicy of a blob container. + + 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 immutability_period_since_creation_in_days: Required. The + immutability period for the blobs in the container since the policy + creation, in days. + :type immutability_period_since_creation_in_days: int + :ivar state: The ImmutabilityPolicy state of a blob container, possible + values include: Locked and Unlocked. Possible values include: 'Locked', + 'Unlocked' + :vartype state: str or + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyState + :ivar etag: ImmutabilityPolicy Etag. + :vartype etag: str + :ivar update_history: The ImmutabilityPolicy update history of the blob + container. + :vartype update_history: + list[~azure.mgmt.storage.v2018_07_01.models.UpdateHistoryProperty] + """ + + _validation = { + 'immutability_period_since_creation_in_days': {'required': True}, + 'state': {'readonly': True}, + 'etag': {'readonly': True}, + 'update_history': {'readonly': True}, + } + + _attribute_map = { + 'immutability_period_since_creation_in_days': {'key': 'properties.immutabilityPeriodSinceCreationInDays', 'type': 'int'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'update_history': {'key': 'updateHistory', 'type': '[UpdateHistoryProperty]'}, + } + + def __init__(self, *, immutability_period_since_creation_in_days: int, **kwargs) -> None: + super(ImmutabilityPolicyProperties, self).__init__(**kwargs) + self.immutability_period_since_creation_in_days = immutability_period_since_creation_in_days + self.state = None + self.etag = None + self.update_history = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_py3.py new file mode 100644 index 000000000000..1c17d360cc01 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/immutability_policy_py3.py @@ -0,0 +1,66 @@ +# 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 .azure_entity_resource_py3 import AzureEntityResource + + +class ImmutabilityPolicy(AzureEntityResource): + """The ImmutabilityPolicy property of a blob container, including Id, resource + name, resource type, Etag. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + :param immutability_period_since_creation_in_days: Required. The + immutability period for the blobs in the container since the policy + creation, in days. + :type immutability_period_since_creation_in_days: int + :ivar state: The ImmutabilityPolicy state of a blob container, possible + values include: Locked and Unlocked. Possible values include: 'Locked', + 'Unlocked' + :vartype state: str or + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + 'immutability_period_since_creation_in_days': {'required': True}, + 'state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'immutability_period_since_creation_in_days': {'key': 'properties.immutabilityPeriodSinceCreationInDays', 'type': 'int'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + } + + def __init__(self, *, immutability_period_since_creation_in_days: int, **kwargs) -> None: + super(ImmutabilityPolicy, self).__init__(**kwargs) + self.immutability_period_since_creation_in_days = immutability_period_since_creation_in_days + self.state = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/ip_rule.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/ip_rule.py new file mode 100644 index 000000000000..decfb4bec67c --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/ip_rule.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IPRule(Model): + """IP rule with specific IP or IP range in CIDR format. + + All required parameters must be populated in order to send to Azure. + + :param ip_address_or_range: Required. Specifies the IP or IP range in CIDR + format. Only IPV4 address is allowed. + :type ip_address_or_range: str + :param action: The action of IP ACL rule. Possible values include: + 'Allow'. Default value: "Allow" . + :type action: str or ~azure.mgmt.storage.v2018_07_01.models.Action + """ + + _validation = { + 'ip_address_or_range': {'required': True}, + } + + _attribute_map = { + 'ip_address_or_range': {'key': 'value', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'Action'}, + } + + def __init__(self, **kwargs): + super(IPRule, self).__init__(**kwargs) + self.ip_address_or_range = kwargs.get('ip_address_or_range', None) + self.action = kwargs.get('action', "Allow") diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/ip_rule_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/ip_rule_py3.py new file mode 100644 index 000000000000..6cc874cb6e8e --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/ip_rule_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class IPRule(Model): + """IP rule with specific IP or IP range in CIDR format. + + All required parameters must be populated in order to send to Azure. + + :param ip_address_or_range: Required. Specifies the IP or IP range in CIDR + format. Only IPV4 address is allowed. + :type ip_address_or_range: str + :param action: The action of IP ACL rule. Possible values include: + 'Allow'. Default value: "Allow" . + :type action: str or ~azure.mgmt.storage.v2018_07_01.models.Action + """ + + _validation = { + 'ip_address_or_range': {'required': True}, + } + + _attribute_map = { + 'ip_address_or_range': {'key': 'value', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'Action'}, + } + + def __init__(self, *, ip_address_or_range: str, action="Allow", **kwargs) -> None: + super(IPRule, self).__init__(**kwargs) + self.ip_address_or_range = ip_address_or_range + self.action = action diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/key_vault_properties.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/key_vault_properties.py new file mode 100644 index 000000000000..44eaf379f6f2 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/key_vault_properties.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultProperties(Model): + """Properties of key vault. + + :param key_name: The name of KeyVault key. + :type key_name: str + :param key_version: The version of KeyVault key. + :type key_version: str + :param key_vault_uri: The Uri of KeyVault. + :type key_vault_uri: str + """ + + _attribute_map = { + 'key_name': {'key': 'keyname', 'type': 'str'}, + 'key_version': {'key': 'keyversion', 'type': 'str'}, + 'key_vault_uri': {'key': 'keyvaulturi', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(KeyVaultProperties, self).__init__(**kwargs) + self.key_name = kwargs.get('key_name', None) + self.key_version = kwargs.get('key_version', None) + self.key_vault_uri = kwargs.get('key_vault_uri', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/key_vault_properties_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/key_vault_properties_py3.py new file mode 100644 index 000000000000..9e6350eec898 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/key_vault_properties_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class KeyVaultProperties(Model): + """Properties of key vault. + + :param key_name: The name of KeyVault key. + :type key_name: str + :param key_version: The version of KeyVault key. + :type key_version: str + :param key_vault_uri: The Uri of KeyVault. + :type key_vault_uri: str + """ + + _attribute_map = { + 'key_name': {'key': 'keyname', 'type': 'str'}, + 'key_version': {'key': 'keyversion', 'type': 'str'}, + 'key_vault_uri': {'key': 'keyvaulturi', 'type': 'str'}, + } + + def __init__(self, *, key_name: str=None, key_version: str=None, key_vault_uri: str=None, **kwargs) -> None: + super(KeyVaultProperties, self).__init__(**kwargs) + self.key_name = key_name + self.key_version = key_version + self.key_vault_uri = key_vault_uri diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold.py new file mode 100644 index 000000000000..4eb93df1d9fe --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LegalHold(Model): + """The LegalHold property of a blob container. + + 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 has_legal_hold: The hasLegalHold public property is set to true by + SRP if there are at least one existing tag. The hasLegalHold public + property is set to false by SRP if all existing legal hold tags are + cleared out. There can be a maximum of 1000 blob containers with + hasLegalHold=true for a given account. + :vartype has_legal_hold: bool + :param tags: Required. Each tag should be 3 to 23 alphanumeric characters + and is normalized to lower case at SRP. + :type tags: list[str] + """ + + _validation = { + 'has_legal_hold': {'readonly': True}, + 'tags': {'required': True}, + } + + _attribute_map = { + 'has_legal_hold': {'key': 'hasLegalHold', 'type': 'bool'}, + 'tags': {'key': 'tags', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(LegalHold, self).__init__(**kwargs) + self.has_legal_hold = None + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_properties.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_properties.py new file mode 100644 index 000000000000..fcf2cd1a681b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_properties.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LegalHoldProperties(Model): + """The LegalHold property of a blob container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar has_legal_hold: The hasLegalHold public property is set to true by + SRP if there are at least one existing tag. The hasLegalHold public + property is set to false by SRP if all existing legal hold tags are + cleared out. There can be a maximum of 1000 blob containers with + hasLegalHold=true for a given account. + :vartype has_legal_hold: bool + :param tags: The list of LegalHold tags of a blob container. + :type tags: list[~azure.mgmt.storage.v2018_07_01.models.TagProperty] + """ + + _validation = { + 'has_legal_hold': {'readonly': True}, + } + + _attribute_map = { + 'has_legal_hold': {'key': 'hasLegalHold', 'type': 'bool'}, + 'tags': {'key': 'tags', 'type': '[TagProperty]'}, + } + + def __init__(self, **kwargs): + super(LegalHoldProperties, self).__init__(**kwargs) + self.has_legal_hold = None + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_properties_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_properties_py3.py new file mode 100644 index 000000000000..e6066c97b396 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_properties_py3.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LegalHoldProperties(Model): + """The LegalHold property of a blob container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar has_legal_hold: The hasLegalHold public property is set to true by + SRP if there are at least one existing tag. The hasLegalHold public + property is set to false by SRP if all existing legal hold tags are + cleared out. There can be a maximum of 1000 blob containers with + hasLegalHold=true for a given account. + :vartype has_legal_hold: bool + :param tags: The list of LegalHold tags of a blob container. + :type tags: list[~azure.mgmt.storage.v2018_07_01.models.TagProperty] + """ + + _validation = { + 'has_legal_hold': {'readonly': True}, + } + + _attribute_map = { + 'has_legal_hold': {'key': 'hasLegalHold', 'type': 'bool'}, + 'tags': {'key': 'tags', 'type': '[TagProperty]'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(LegalHoldProperties, self).__init__(**kwargs) + self.has_legal_hold = None + self.tags = tags diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_py3.py new file mode 100644 index 000000000000..a4bc196cb604 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/legal_hold_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LegalHold(Model): + """The LegalHold property of a blob container. + + 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 has_legal_hold: The hasLegalHold public property is set to true by + SRP if there are at least one existing tag. The hasLegalHold public + property is set to false by SRP if all existing legal hold tags are + cleared out. There can be a maximum of 1000 blob containers with + hasLegalHold=true for a given account. + :vartype has_legal_hold: bool + :param tags: Required. Each tag should be 3 to 23 alphanumeric characters + and is normalized to lower case at SRP. + :type tags: list[str] + """ + + _validation = { + 'has_legal_hold': {'readonly': True}, + 'tags': {'required': True}, + } + + _attribute_map = { + 'has_legal_hold': {'key': 'hasLegalHold', 'type': 'bool'}, + 'tags': {'key': 'tags', 'type': '[str]'}, + } + + def __init__(self, *, tags, **kwargs) -> None: + super(LegalHold, self).__init__(**kwargs) + self.has_legal_hold = None + self.tags = tags diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_account_sas_response.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_account_sas_response.py new file mode 100644 index 000000000000..a56e959a34bd --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_account_sas_response.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ListAccountSasResponse(Model): + """The List SAS credentials operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar account_sas_token: List SAS credentials of storage account. + :vartype account_sas_token: str + """ + + _validation = { + 'account_sas_token': {'readonly': True}, + } + + _attribute_map = { + 'account_sas_token': {'key': 'accountSasToken', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ListAccountSasResponse, self).__init__(**kwargs) + self.account_sas_token = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_account_sas_response_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_account_sas_response_py3.py new file mode 100644 index 000000000000..b8b9a314d9f6 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_account_sas_response_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ListAccountSasResponse(Model): + """The List SAS credentials operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar account_sas_token: List SAS credentials of storage account. + :vartype account_sas_token: str + """ + + _validation = { + 'account_sas_token': {'readonly': True}, + } + + _attribute_map = { + 'account_sas_token': {'key': 'accountSasToken', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ListAccountSasResponse, self).__init__(**kwargs) + self.account_sas_token = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_item.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_item.py new file mode 100644 index 000000000000..5fe7cc1b0ce7 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_item.py @@ -0,0 +1,118 @@ +# 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 .azure_entity_resource import AzureEntityResource + + +class ListContainerItem(AzureEntityResource): + """The blob container properties be listed out. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + :param public_access: Specifies whether data in the container may be + accessed publicly and the level of access. Possible values include: + 'Container', 'Blob', 'None' + :type public_access: str or + ~azure.mgmt.storage.v2018_07_01.models.PublicAccess + :ivar last_modified_time: Returns the date and time the container was last + modified. + :vartype last_modified_time: datetime + :ivar lease_status: The lease status of the container. Possible values + include: 'Locked', 'Unlocked' + :vartype lease_status: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseStatus + :ivar lease_state: Lease state of the container. Possible values include: + 'Available', 'Leased', 'Expired', 'Breaking', 'Broken' + :vartype lease_state: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseState + :ivar lease_duration: Specifies whether the lease on a container is of + infinite or fixed duration, only when the container is leased. Possible + values include: 'Infinite', 'Fixed' + :vartype lease_duration: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseDuration + :param metadata: A name-value pair to associate with the container as + metadata. + :type metadata: dict[str, str] + :ivar immutability_policy: The ImmutabilityPolicy property of the + container. + :vartype immutability_policy: + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyProperties + :ivar legal_hold: The LegalHold property of the container. + :vartype legal_hold: + ~azure.mgmt.storage.v2018_07_01.models.LegalHoldProperties + :ivar has_legal_hold: The hasLegalHold public property is set to true by + SRP if there are at least one existing tag. The hasLegalHold public + property is set to false by SRP if all existing legal hold tags are + cleared out. There can be a maximum of 1000 blob containers with + hasLegalHold=true for a given account. + :vartype has_legal_hold: bool + :ivar has_immutability_policy: The hasImmutabilityPolicy public property + is set to true by SRP if ImmutabilityPolicy has been created for this + container. The hasImmutabilityPolicy public property is set to false by + SRP if ImmutabilityPolicy has not been created for this container. + :vartype has_immutability_policy: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + 'lease_status': {'readonly': True}, + 'lease_state': {'readonly': True}, + 'lease_duration': {'readonly': True}, + 'immutability_policy': {'readonly': True}, + 'legal_hold': {'readonly': True}, + 'has_legal_hold': {'readonly': True}, + 'has_immutability_policy': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'public_access': {'key': 'properties.publicAccess', 'type': 'PublicAccess'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + 'lease_status': {'key': 'properties.leaseStatus', 'type': 'str'}, + 'lease_state': {'key': 'properties.leaseState', 'type': 'str'}, + 'lease_duration': {'key': 'properties.leaseDuration', 'type': 'str'}, + 'metadata': {'key': 'properties.metadata', 'type': '{str}'}, + 'immutability_policy': {'key': 'properties.immutabilityPolicy', 'type': 'ImmutabilityPolicyProperties'}, + 'legal_hold': {'key': 'properties.legalHold', 'type': 'LegalHoldProperties'}, + 'has_legal_hold': {'key': 'properties.hasLegalHold', 'type': 'bool'}, + 'has_immutability_policy': {'key': 'properties.hasImmutabilityPolicy', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ListContainerItem, self).__init__(**kwargs) + self.public_access = kwargs.get('public_access', None) + self.last_modified_time = None + self.lease_status = None + self.lease_state = None + self.lease_duration = None + self.metadata = kwargs.get('metadata', None) + self.immutability_policy = None + self.legal_hold = None + self.has_legal_hold = None + self.has_immutability_policy = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_item_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_item_py3.py new file mode 100644 index 000000000000..1e67232a5a61 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_item_py3.py @@ -0,0 +1,118 @@ +# 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 .azure_entity_resource_py3 import AzureEntityResource + + +class ListContainerItem(AzureEntityResource): + """The blob container properties be listed out. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :ivar etag: Resource Etag. + :vartype etag: str + :param public_access: Specifies whether data in the container may be + accessed publicly and the level of access. Possible values include: + 'Container', 'Blob', 'None' + :type public_access: str or + ~azure.mgmt.storage.v2018_07_01.models.PublicAccess + :ivar last_modified_time: Returns the date and time the container was last + modified. + :vartype last_modified_time: datetime + :ivar lease_status: The lease status of the container. Possible values + include: 'Locked', 'Unlocked' + :vartype lease_status: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseStatus + :ivar lease_state: Lease state of the container. Possible values include: + 'Available', 'Leased', 'Expired', 'Breaking', 'Broken' + :vartype lease_state: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseState + :ivar lease_duration: Specifies whether the lease on a container is of + infinite or fixed duration, only when the container is leased. Possible + values include: 'Infinite', 'Fixed' + :vartype lease_duration: str or + ~azure.mgmt.storage.v2018_07_01.models.LeaseDuration + :param metadata: A name-value pair to associate with the container as + metadata. + :type metadata: dict[str, str] + :ivar immutability_policy: The ImmutabilityPolicy property of the + container. + :vartype immutability_policy: + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyProperties + :ivar legal_hold: The LegalHold property of the container. + :vartype legal_hold: + ~azure.mgmt.storage.v2018_07_01.models.LegalHoldProperties + :ivar has_legal_hold: The hasLegalHold public property is set to true by + SRP if there are at least one existing tag. The hasLegalHold public + property is set to false by SRP if all existing legal hold tags are + cleared out. There can be a maximum of 1000 blob containers with + hasLegalHold=true for a given account. + :vartype has_legal_hold: bool + :ivar has_immutability_policy: The hasImmutabilityPolicy public property + is set to true by SRP if ImmutabilityPolicy has been created for this + container. The hasImmutabilityPolicy public property is set to false by + SRP if ImmutabilityPolicy has not been created for this container. + :vartype has_immutability_policy: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + 'lease_status': {'readonly': True}, + 'lease_state': {'readonly': True}, + 'lease_duration': {'readonly': True}, + 'immutability_policy': {'readonly': True}, + 'legal_hold': {'readonly': True}, + 'has_legal_hold': {'readonly': True}, + 'has_immutability_policy': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'public_access': {'key': 'properties.publicAccess', 'type': 'PublicAccess'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + 'lease_status': {'key': 'properties.leaseStatus', 'type': 'str'}, + 'lease_state': {'key': 'properties.leaseState', 'type': 'str'}, + 'lease_duration': {'key': 'properties.leaseDuration', 'type': 'str'}, + 'metadata': {'key': 'properties.metadata', 'type': '{str}'}, + 'immutability_policy': {'key': 'properties.immutabilityPolicy', 'type': 'ImmutabilityPolicyProperties'}, + 'legal_hold': {'key': 'properties.legalHold', 'type': 'LegalHoldProperties'}, + 'has_legal_hold': {'key': 'properties.hasLegalHold', 'type': 'bool'}, + 'has_immutability_policy': {'key': 'properties.hasImmutabilityPolicy', 'type': 'bool'}, + } + + def __init__(self, *, public_access=None, metadata=None, **kwargs) -> None: + super(ListContainerItem, self).__init__(**kwargs) + self.public_access = public_access + self.last_modified_time = None + self.lease_status = None + self.lease_state = None + self.lease_duration = None + self.metadata = metadata + self.immutability_policy = None + self.legal_hold = None + self.has_legal_hold = None + self.has_immutability_policy = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_items.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_items.py new file mode 100644 index 000000000000..9fc5346e5102 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_items.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ListContainerItems(Model): + """The list of blob containers. + + :param value: The list of blob containers. + :type value: + list[~azure.mgmt.storage.v2018_07_01.models.ListContainerItem] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ListContainerItem]'}, + } + + def __init__(self, **kwargs): + super(ListContainerItems, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_items_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_items_py3.py new file mode 100644 index 000000000000..a689dc1e3f14 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_container_items_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ListContainerItems(Model): + """The list of blob containers. + + :param value: The list of blob containers. + :type value: + list[~azure.mgmt.storage.v2018_07_01.models.ListContainerItem] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ListContainerItem]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ListContainerItems, self).__init__(**kwargs) + self.value = value diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_service_sas_response.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_service_sas_response.py new file mode 100644 index 000000000000..800c0298af61 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_service_sas_response.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ListServiceSasResponse(Model): + """The List service SAS credentials operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar service_sas_token: List service SAS credentials of speicific + resource. + :vartype service_sas_token: str + """ + + _validation = { + 'service_sas_token': {'readonly': True}, + } + + _attribute_map = { + 'service_sas_token': {'key': 'serviceSasToken', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ListServiceSasResponse, self).__init__(**kwargs) + self.service_sas_token = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_service_sas_response_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_service_sas_response_py3.py new file mode 100644 index 000000000000..cffd962e2041 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/list_service_sas_response_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ListServiceSasResponse(Model): + """The List service SAS credentials operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar service_sas_token: List service SAS credentials of speicific + resource. + :vartype service_sas_token: str + """ + + _validation = { + 'service_sas_token': {'readonly': True}, + } + + _attribute_map = { + 'service_sas_token': {'key': 'serviceSasToken', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ListServiceSasResponse, self).__init__(**kwargs) + self.service_sas_token = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/management_policies_rules_set_parameter.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/management_policies_rules_set_parameter.py new file mode 100644 index 000000000000..c814a5b9391f --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/management_policies_rules_set_parameter.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ManagementPoliciesRulesSetParameter(Model): + """The Storage Account ManagementPolicies Rules, in JSON format. See more + details in: + https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts. + + :param policy: The Storage Account ManagementPolicies Rules, in JSON + format. See more details in: + https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts. + :type policy: object + """ + + _attribute_map = { + 'policy': {'key': 'properties.policy', 'type': 'object'}, + } + + def __init__(self, **kwargs): + super(ManagementPoliciesRulesSetParameter, self).__init__(**kwargs) + self.policy = kwargs.get('policy', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/management_policies_rules_set_parameter_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/management_policies_rules_set_parameter_py3.py new file mode 100644 index 000000000000..7fb665877844 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/management_policies_rules_set_parameter_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ManagementPoliciesRulesSetParameter(Model): + """The Storage Account ManagementPolicies Rules, in JSON format. See more + details in: + https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts. + + :param policy: The Storage Account ManagementPolicies Rules, in JSON + format. See more details in: + https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts. + :type policy: object + """ + + _attribute_map = { + 'policy': {'key': 'properties.policy', 'type': 'object'}, + } + + def __init__(self, *, policy=None, **kwargs) -> None: + super(ManagementPoliciesRulesSetParameter, self).__init__(**kwargs) + self.policy = policy diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/metric_specification.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/metric_specification.py new file mode 100644 index 000000000000..0b12a11ef865 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/metric_specification.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricSpecification(Model): + """Metric specification of operation. + + :param name: Name of metric specification. + :type name: str + :param display_name: Display name of metric specification. + :type display_name: str + :param display_description: Display description of metric specification. + :type display_description: str + :param unit: Unit could be Bytes or Count. + :type unit: str + :param dimensions: Dimensions of blobs, including blob type and access + tier. + :type dimensions: list[~azure.mgmt.storage.v2018_07_01.models.Dimension] + :param aggregation_type: Aggregation type could be Average. + :type aggregation_type: str + :param fill_gap_with_zero: The property to decide fill gap with zero or + not. + :type fill_gap_with_zero: bool + :param category: The category this metric specification belong to, could + be Capacity. + :type category: str + :param resource_id_dimension_name_override: Account Resource Id. + :type resource_id_dimension_name_override: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'display_description': {'key': 'displayDescription', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, + 'aggregation_type': {'key': 'aggregationType', 'type': 'str'}, + 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'}, + 'category': {'key': 'category', 'type': 'str'}, + 'resource_id_dimension_name_override': {'key': 'resourceIdDimensionNameOverride', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MetricSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.display_description = kwargs.get('display_description', None) + self.unit = kwargs.get('unit', None) + self.dimensions = kwargs.get('dimensions', None) + self.aggregation_type = kwargs.get('aggregation_type', None) + self.fill_gap_with_zero = kwargs.get('fill_gap_with_zero', None) + self.category = kwargs.get('category', None) + self.resource_id_dimension_name_override = kwargs.get('resource_id_dimension_name_override', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/metric_specification_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/metric_specification_py3.py new file mode 100644 index 000000000000..7a2c4777e90b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/metric_specification_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricSpecification(Model): + """Metric specification of operation. + + :param name: Name of metric specification. + :type name: str + :param display_name: Display name of metric specification. + :type display_name: str + :param display_description: Display description of metric specification. + :type display_description: str + :param unit: Unit could be Bytes or Count. + :type unit: str + :param dimensions: Dimensions of blobs, including blob type and access + tier. + :type dimensions: list[~azure.mgmt.storage.v2018_07_01.models.Dimension] + :param aggregation_type: Aggregation type could be Average. + :type aggregation_type: str + :param fill_gap_with_zero: The property to decide fill gap with zero or + not. + :type fill_gap_with_zero: bool + :param category: The category this metric specification belong to, could + be Capacity. + :type category: str + :param resource_id_dimension_name_override: Account Resource Id. + :type resource_id_dimension_name_override: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'display_description': {'key': 'displayDescription', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, + 'aggregation_type': {'key': 'aggregationType', 'type': 'str'}, + 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'}, + 'category': {'key': 'category', 'type': 'str'}, + 'resource_id_dimension_name_override': {'key': 'resourceIdDimensionNameOverride', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, display_description: str=None, unit: str=None, dimensions=None, aggregation_type: str=None, fill_gap_with_zero: bool=None, category: str=None, resource_id_dimension_name_override: str=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.dimensions = dimensions + self.aggregation_type = aggregation_type + self.fill_gap_with_zero = fill_gap_with_zero + self.category = category + self.resource_id_dimension_name_override = resource_id_dimension_name_override diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/network_rule_set.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/network_rule_set.py new file mode 100644 index 000000000000..9ec169475870 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/network_rule_set.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkRuleSet(Model): + """Network rule set. + + All required parameters must be populated in order to send to Azure. + + :param bypass: Specifies whether traffic is bypassed for + Logging/Metrics/AzureServices. Possible values are any combination of + Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None + to bypass none of those traffics. Possible values include: 'None', + 'Logging', 'Metrics', 'AzureServices'. Default value: "AzureServices" . + :type bypass: str or ~azure.mgmt.storage.v2018_07_01.models.Bypass + :param virtual_network_rules: Sets the virtual network rules + :type virtual_network_rules: + list[~azure.mgmt.storage.v2018_07_01.models.VirtualNetworkRule] + :param ip_rules: Sets the IP ACL rules + :type ip_rules: list[~azure.mgmt.storage.v2018_07_01.models.IPRule] + :param default_action: Required. Specifies the default action of allow or + deny when no other rules match. Possible values include: 'Allow', 'Deny'. + Default value: "Allow" . + :type default_action: str or + ~azure.mgmt.storage.v2018_07_01.models.DefaultAction + """ + + _validation = { + 'default_action': {'required': True}, + } + + _attribute_map = { + 'bypass': {'key': 'bypass', 'type': 'str'}, + 'virtual_network_rules': {'key': 'virtualNetworkRules', 'type': '[VirtualNetworkRule]'}, + 'ip_rules': {'key': 'ipRules', 'type': '[IPRule]'}, + 'default_action': {'key': 'defaultAction', 'type': 'DefaultAction'}, + } + + def __init__(self, **kwargs): + super(NetworkRuleSet, self).__init__(**kwargs) + self.bypass = kwargs.get('bypass', "AzureServices") + self.virtual_network_rules = kwargs.get('virtual_network_rules', None) + self.ip_rules = kwargs.get('ip_rules', None) + self.default_action = kwargs.get('default_action', "Allow") diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/network_rule_set_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/network_rule_set_py3.py new file mode 100644 index 000000000000..50fc223d26f6 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/network_rule_set_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkRuleSet(Model): + """Network rule set. + + All required parameters must be populated in order to send to Azure. + + :param bypass: Specifies whether traffic is bypassed for + Logging/Metrics/AzureServices. Possible values are any combination of + Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None + to bypass none of those traffics. Possible values include: 'None', + 'Logging', 'Metrics', 'AzureServices'. Default value: "AzureServices" . + :type bypass: str or ~azure.mgmt.storage.v2018_07_01.models.Bypass + :param virtual_network_rules: Sets the virtual network rules + :type virtual_network_rules: + list[~azure.mgmt.storage.v2018_07_01.models.VirtualNetworkRule] + :param ip_rules: Sets the IP ACL rules + :type ip_rules: list[~azure.mgmt.storage.v2018_07_01.models.IPRule] + :param default_action: Required. Specifies the default action of allow or + deny when no other rules match. Possible values include: 'Allow', 'Deny'. + Default value: "Allow" . + :type default_action: str or + ~azure.mgmt.storage.v2018_07_01.models.DefaultAction + """ + + _validation = { + 'default_action': {'required': True}, + } + + _attribute_map = { + 'bypass': {'key': 'bypass', 'type': 'str'}, + 'virtual_network_rules': {'key': 'virtualNetworkRules', 'type': '[VirtualNetworkRule]'}, + 'ip_rules': {'key': 'ipRules', 'type': '[IPRule]'}, + 'default_action': {'key': 'defaultAction', 'type': 'DefaultAction'}, + } + + def __init__(self, *, bypass="AzureServices", virtual_network_rules=None, ip_rules=None, default_action="Allow", **kwargs) -> None: + super(NetworkRuleSet, self).__init__(**kwargs) + self.bypass = bypass + self.virtual_network_rules = virtual_network_rules + self.ip_rules = ip_rules + self.default_action = default_action diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation.py new file mode 100644 index 000000000000..b75742f63b76 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Storage REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.storage.v2018_07_01.models.OperationDisplay + :param origin: The origin of operations. + :type origin: str + :param service_specification: One property of operation, include metric + specifications. + :type service_specification: + ~azure.mgmt.storage.v2018_07_01.models.ServiceSpecification + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'ServiceSpecification'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.service_specification = kwargs.get('service_specification', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_display.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_display.py new file mode 100644 index 000000000000..029cfa2a8304 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_display.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Storage. + :type provider: str + :param resource: Resource on which the operation is performed etc. + :type resource: str + :param operation: Type of operation: get, read, delete, etc. + :type operation: str + :param description: Description of the operation. + :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, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_display_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_display_py3.py new file mode 100644 index 000000000000..318ba2236d3e --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_display_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Storage. + :type provider: str + :param resource: Resource on which the operation is performed etc. + :type resource: str + :param operation: Type of operation: get, read, delete, etc. + :type operation: str + :param description: Description of the operation. + :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(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.resource = resource + self.operation = operation + self.description = description diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_paged.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_paged.py new file mode 100644 index 000000000000..a24f58ac96c1 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_py3.py new file mode 100644 index 000000000000..b89d9bd94606 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/operation_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """Storage REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation} + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.storage.v2018_07_01.models.OperationDisplay + :param origin: The origin of operations. + :type origin: str + :param service_specification: One property of operation, include metric + specifications. + :type service_specification: + ~azure.mgmt.storage.v2018_07_01.models.ServiceSpecification + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'ServiceSpecification'}, + } + + def __init__(self, *, name: str=None, display=None, origin: str=None, service_specification=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display + self.origin = origin + self.service_specification = service_specification diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/proxy_resource.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/proxy_resource.py new file mode 100644 index 000000000000..0de8fb6bd420 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/proxy_resource.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class ProxyResource(Resource): + """The resource model definition for a ARM proxy resource. It will have + everything other than required location and tags. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProxyResource, self).__init__(**kwargs) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/proxy_resource_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/proxy_resource_py3.py new file mode 100644 index 000000000000..2e8391f912d6 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/proxy_resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class ProxyResource(Resource): + """The resource model definition for a ARM proxy resource. It will have + everything other than required location and tags. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ProxyResource, self).__init__(**kwargs) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/resource.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/resource.py new file mode 100644 index 000000000000..9333a2ac49ef --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/resource.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/resource_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/resource_py3.py new file mode 100644 index 000000000000..370e6c506581 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/resource_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Resource(Model): + """Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/restriction.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/restriction.py new file mode 100644 index 000000000000..f23b0c7f6f1a --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/restriction.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Restriction(Model): + """The restriction because of which SKU cannot be used. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: The type of restrictions. As of now only possible value for + this is location. + :vartype type: str + :ivar values: The value of restrictions. If the restriction type is set to + location. This would be different locations where the SKU is restricted. + :vartype values: list[str] + :param reason_code: The reason for the restriction. As of now this can be + "QuotaId" or "NotAvailableForSubscription". Quota Id is set when the SKU + has requiredQuotas parameter as the subscription does not belong to that + quota. The "NotAvailableForSubscription" is related to capacity at DC. + Possible values include: 'QuotaId', 'NotAvailableForSubscription' + :type reason_code: str or + ~azure.mgmt.storage.v2018_07_01.models.ReasonCode + """ + + _validation = { + 'type': {'readonly': True}, + 'values': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + 'reason_code': {'key': 'reasonCode', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Restriction, self).__init__(**kwargs) + self.type = None + self.values = None + self.reason_code = kwargs.get('reason_code', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/restriction_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/restriction_py3.py new file mode 100644 index 000000000000..35b1b47b8988 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/restriction_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Restriction(Model): + """The restriction because of which SKU cannot be used. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: The type of restrictions. As of now only possible value for + this is location. + :vartype type: str + :ivar values: The value of restrictions. If the restriction type is set to + location. This would be different locations where the SKU is restricted. + :vartype values: list[str] + :param reason_code: The reason for the restriction. As of now this can be + "QuotaId" or "NotAvailableForSubscription". Quota Id is set when the SKU + has requiredQuotas parameter as the subscription does not belong to that + quota. The "NotAvailableForSubscription" is related to capacity at DC. + Possible values include: 'QuotaId', 'NotAvailableForSubscription' + :type reason_code: str or + ~azure.mgmt.storage.v2018_07_01.models.ReasonCode + """ + + _validation = { + 'type': {'readonly': True}, + 'values': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[str]'}, + 'reason_code': {'key': 'reasonCode', 'type': 'str'}, + } + + def __init__(self, *, reason_code=None, **kwargs) -> None: + super(Restriction, self).__init__(**kwargs) + self.type = None + self.values = None + self.reason_code = reason_code diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_sas_parameters.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_sas_parameters.py new file mode 100644 index 000000000000..d40e43b44a6e --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_sas_parameters.py @@ -0,0 +1,120 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceSasParameters(Model): + """The parameters to list service SAS credentials of a speicific resource. + + All required parameters must be populated in order to send to Azure. + + :param canonicalized_resource: Required. The canonical path to the signed + resource. + :type canonicalized_resource: str + :param resource: The signed services accessible with the service SAS. + Possible values include: Blob (b), Container (c), File (f), Share (s). + Possible values include: 'b', 'c', 'f', 's' + :type resource: str or + ~azure.mgmt.storage.v2018_07_01.models.SignedResource + :param permissions: The signed permissions for the service SAS. Possible + values include: Read (r), Write (w), Delete (d), List (l), Add (a), Create + (c), Update (u) and Process (p). Possible values include: 'r', 'd', 'w', + 'l', 'a', 'c', 'u', 'p' + :type permissions: str or + ~azure.mgmt.storage.v2018_07_01.models.Permissions + :param ip_address_or_range: An IP address or a range of IP addresses from + which to accept requests. + :type ip_address_or_range: str + :param protocols: The protocol permitted for a request made with the + account SAS. Possible values include: 'https,http', 'https' + :type protocols: str or + ~azure.mgmt.storage.v2018_07_01.models.HttpProtocol + :param shared_access_start_time: The time at which the SAS becomes valid. + :type shared_access_start_time: datetime + :param shared_access_expiry_time: The time at which the shared access + signature becomes invalid. + :type shared_access_expiry_time: datetime + :param identifier: A unique value up to 64 characters in length that + correlates to an access policy specified for the container, queue, or + table. + :type identifier: str + :param partition_key_start: The start of partition key. + :type partition_key_start: str + :param partition_key_end: The end of partition key. + :type partition_key_end: str + :param row_key_start: The start of row key. + :type row_key_start: str + :param row_key_end: The end of row key. + :type row_key_end: str + :param key_to_sign: The key to sign the account SAS token with. + :type key_to_sign: str + :param cache_control: The response header override for cache control. + :type cache_control: str + :param content_disposition: The response header override for content + disposition. + :type content_disposition: str + :param content_encoding: The response header override for content + encoding. + :type content_encoding: str + :param content_language: The response header override for content + language. + :type content_language: str + :param content_type: The response header override for content type. + :type content_type: str + """ + + _validation = { + 'canonicalized_resource': {'required': True}, + 'identifier': {'max_length': 64}, + } + + _attribute_map = { + 'canonicalized_resource': {'key': 'canonicalizedResource', 'type': 'str'}, + 'resource': {'key': 'signedResource', 'type': 'str'}, + 'permissions': {'key': 'signedPermission', 'type': 'str'}, + 'ip_address_or_range': {'key': 'signedIp', 'type': 'str'}, + 'protocols': {'key': 'signedProtocol', 'type': 'HttpProtocol'}, + 'shared_access_start_time': {'key': 'signedStart', 'type': 'iso-8601'}, + 'shared_access_expiry_time': {'key': 'signedExpiry', 'type': 'iso-8601'}, + 'identifier': {'key': 'signedIdentifier', 'type': 'str'}, + 'partition_key_start': {'key': 'startPk', 'type': 'str'}, + 'partition_key_end': {'key': 'endPk', 'type': 'str'}, + 'row_key_start': {'key': 'startRk', 'type': 'str'}, + 'row_key_end': {'key': 'endRk', 'type': 'str'}, + 'key_to_sign': {'key': 'keyToSign', 'type': 'str'}, + 'cache_control': {'key': 'rscc', 'type': 'str'}, + 'content_disposition': {'key': 'rscd', 'type': 'str'}, + 'content_encoding': {'key': 'rsce', 'type': 'str'}, + 'content_language': {'key': 'rscl', 'type': 'str'}, + 'content_type': {'key': 'rsct', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceSasParameters, self).__init__(**kwargs) + self.canonicalized_resource = kwargs.get('canonicalized_resource', None) + self.resource = kwargs.get('resource', None) + self.permissions = kwargs.get('permissions', None) + self.ip_address_or_range = kwargs.get('ip_address_or_range', None) + self.protocols = kwargs.get('protocols', None) + self.shared_access_start_time = kwargs.get('shared_access_start_time', None) + self.shared_access_expiry_time = kwargs.get('shared_access_expiry_time', None) + self.identifier = kwargs.get('identifier', None) + self.partition_key_start = kwargs.get('partition_key_start', None) + self.partition_key_end = kwargs.get('partition_key_end', None) + self.row_key_start = kwargs.get('row_key_start', None) + self.row_key_end = kwargs.get('row_key_end', None) + self.key_to_sign = kwargs.get('key_to_sign', None) + self.cache_control = kwargs.get('cache_control', None) + self.content_disposition = kwargs.get('content_disposition', None) + self.content_encoding = kwargs.get('content_encoding', None) + self.content_language = kwargs.get('content_language', None) + self.content_type = kwargs.get('content_type', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_sas_parameters_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_sas_parameters_py3.py new file mode 100644 index 000000000000..3d528f6664e8 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_sas_parameters_py3.py @@ -0,0 +1,120 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceSasParameters(Model): + """The parameters to list service SAS credentials of a speicific resource. + + All required parameters must be populated in order to send to Azure. + + :param canonicalized_resource: Required. The canonical path to the signed + resource. + :type canonicalized_resource: str + :param resource: The signed services accessible with the service SAS. + Possible values include: Blob (b), Container (c), File (f), Share (s). + Possible values include: 'b', 'c', 'f', 's' + :type resource: str or + ~azure.mgmt.storage.v2018_07_01.models.SignedResource + :param permissions: The signed permissions for the service SAS. Possible + values include: Read (r), Write (w), Delete (d), List (l), Add (a), Create + (c), Update (u) and Process (p). Possible values include: 'r', 'd', 'w', + 'l', 'a', 'c', 'u', 'p' + :type permissions: str or + ~azure.mgmt.storage.v2018_07_01.models.Permissions + :param ip_address_or_range: An IP address or a range of IP addresses from + which to accept requests. + :type ip_address_or_range: str + :param protocols: The protocol permitted for a request made with the + account SAS. Possible values include: 'https,http', 'https' + :type protocols: str or + ~azure.mgmt.storage.v2018_07_01.models.HttpProtocol + :param shared_access_start_time: The time at which the SAS becomes valid. + :type shared_access_start_time: datetime + :param shared_access_expiry_time: The time at which the shared access + signature becomes invalid. + :type shared_access_expiry_time: datetime + :param identifier: A unique value up to 64 characters in length that + correlates to an access policy specified for the container, queue, or + table. + :type identifier: str + :param partition_key_start: The start of partition key. + :type partition_key_start: str + :param partition_key_end: The end of partition key. + :type partition_key_end: str + :param row_key_start: The start of row key. + :type row_key_start: str + :param row_key_end: The end of row key. + :type row_key_end: str + :param key_to_sign: The key to sign the account SAS token with. + :type key_to_sign: str + :param cache_control: The response header override for cache control. + :type cache_control: str + :param content_disposition: The response header override for content + disposition. + :type content_disposition: str + :param content_encoding: The response header override for content + encoding. + :type content_encoding: str + :param content_language: The response header override for content + language. + :type content_language: str + :param content_type: The response header override for content type. + :type content_type: str + """ + + _validation = { + 'canonicalized_resource': {'required': True}, + 'identifier': {'max_length': 64}, + } + + _attribute_map = { + 'canonicalized_resource': {'key': 'canonicalizedResource', 'type': 'str'}, + 'resource': {'key': 'signedResource', 'type': 'str'}, + 'permissions': {'key': 'signedPermission', 'type': 'str'}, + 'ip_address_or_range': {'key': 'signedIp', 'type': 'str'}, + 'protocols': {'key': 'signedProtocol', 'type': 'HttpProtocol'}, + 'shared_access_start_time': {'key': 'signedStart', 'type': 'iso-8601'}, + 'shared_access_expiry_time': {'key': 'signedExpiry', 'type': 'iso-8601'}, + 'identifier': {'key': 'signedIdentifier', 'type': 'str'}, + 'partition_key_start': {'key': 'startPk', 'type': 'str'}, + 'partition_key_end': {'key': 'endPk', 'type': 'str'}, + 'row_key_start': {'key': 'startRk', 'type': 'str'}, + 'row_key_end': {'key': 'endRk', 'type': 'str'}, + 'key_to_sign': {'key': 'keyToSign', 'type': 'str'}, + 'cache_control': {'key': 'rscc', 'type': 'str'}, + 'content_disposition': {'key': 'rscd', 'type': 'str'}, + 'content_encoding': {'key': 'rsce', 'type': 'str'}, + 'content_language': {'key': 'rscl', 'type': 'str'}, + 'content_type': {'key': 'rsct', 'type': 'str'}, + } + + def __init__(self, *, canonicalized_resource: str, resource=None, permissions=None, ip_address_or_range: str=None, protocols=None, shared_access_start_time=None, shared_access_expiry_time=None, identifier: str=None, partition_key_start: str=None, partition_key_end: str=None, row_key_start: str=None, row_key_end: str=None, key_to_sign: str=None, cache_control: str=None, content_disposition: str=None, content_encoding: str=None, content_language: str=None, content_type: str=None, **kwargs) -> None: + super(ServiceSasParameters, self).__init__(**kwargs) + self.canonicalized_resource = canonicalized_resource + self.resource = resource + self.permissions = permissions + self.ip_address_or_range = ip_address_or_range + self.protocols = protocols + self.shared_access_start_time = shared_access_start_time + self.shared_access_expiry_time = shared_access_expiry_time + self.identifier = identifier + self.partition_key_start = partition_key_start + self.partition_key_end = partition_key_end + self.row_key_start = row_key_start + self.row_key_end = row_key_end + self.key_to_sign = key_to_sign + self.cache_control = cache_control + self.content_disposition = content_disposition + self.content_encoding = content_encoding + self.content_language = content_language + self.content_type = content_type diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_specification.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_specification.py new file mode 100644 index 000000000000..f2def7472dc0 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_specification.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceSpecification(Model): + """One property of operation, include metric specifications. + + :param metric_specifications: Metric specifications of operation. + :type metric_specifications: + list[~azure.mgmt.storage.v2018_07_01.models.MetricSpecification] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + } + + def __init__(self, **kwargs): + super(ServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = kwargs.get('metric_specifications', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_specification_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_specification_py3.py new file mode 100644 index 000000000000..aa4f6e34f791 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/service_specification_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceSpecification(Model): + """One property of operation, include metric specifications. + + :param metric_specifications: Metric specifications of operation. + :type metric_specifications: + list[~azure.mgmt.storage.v2018_07_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 diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku.py new file mode 100644 index 000000000000..b3040e8a6031 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """The SKU of the storage account. + + 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. Gets or sets the sku name. Required for account + creation; optional for update. Note that in older versions, sku name was + called accountType. Possible values include: 'Standard_LRS', + 'Standard_GRS', 'Standard_RAGRS', 'Standard_ZRS', 'Premium_LRS', + 'Premium_ZRS' + :type name: str or ~azure.mgmt.storage.v2018_07_01.models.SkuName + :ivar tier: Gets the sku tier. This is based on the SKU name. Possible + values include: 'Standard', 'Premium' + :vartype tier: str or ~azure.mgmt.storage.v2018_07_01.models.SkuTier + :ivar resource_type: The type of the resource, usually it is + 'storageAccounts'. + :vartype resource_type: str + :ivar kind: Indicates the type of storage account. Possible values + include: 'Storage', 'StorageV2', 'BlobStorage', 'FileStorage', + 'BlockBlobStorage' + :vartype kind: str or ~azure.mgmt.storage.v2018_07_01.models.Kind + :ivar locations: The set of locations that the SKU is available. This will + be supported and registered Azure Geo Regions (e.g. West US, East US, + Southeast Asia, etc.). + :vartype locations: list[str] + :ivar capabilities: The capability information in the specified sku, + including file encryption, network acls, change notification, etc. + :vartype capabilities: + list[~azure.mgmt.storage.v2018_07_01.models.SKUCapability] + :param restrictions: The restrictions because of which SKU cannot be used. + This is empty if there are no restrictions. + :type restrictions: + list[~azure.mgmt.storage.v2018_07_01.models.Restriction] + """ + + _validation = { + 'name': {'required': True}, + 'tier': {'readonly': True}, + 'resource_type': {'readonly': True}, + 'kind': {'readonly': True}, + 'locations': {'readonly': True}, + 'capabilities': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'SkuName'}, + 'tier': {'key': 'tier', 'type': 'SkuTier'}, + 'resource_type': {'key': 'resourceType', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'Kind'}, + 'locations': {'key': 'locations', 'type': '[str]'}, + 'capabilities': {'key': 'capabilities', 'type': '[SKUCapability]'}, + 'restrictions': {'key': 'restrictions', 'type': '[Restriction]'}, + } + + def __init__(self, **kwargs): + super(Sku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = None + self.resource_type = None + self.kind = None + self.locations = None + self.capabilities = None + self.restrictions = kwargs.get('restrictions', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_capability.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_capability.py new file mode 100644 index 000000000000..b8fa68ce7778 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_capability.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SKUCapability(Model): + """The capability information in the specified sku, including file encryption, + network acls, change notification, etc. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of capability, The capability information in the + specified sku, including file encryption, network acls, change + notification, etc. + :vartype name: str + :ivar value: A string value to indicate states of given capability. + Possibly 'true' or 'false'. + :vartype value: str + """ + + _validation = { + 'name': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SKUCapability, self).__init__(**kwargs) + self.name = None + self.value = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_capability_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_capability_py3.py new file mode 100644 index 000000000000..f349a08eda21 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_capability_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SKUCapability(Model): + """The capability information in the specified sku, including file encryption, + network acls, change notification, etc. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of capability, The capability information in the + specified sku, including file encryption, network acls, change + notification, etc. + :vartype name: str + :ivar value: A string value to indicate states of given capability. + Possibly 'true' or 'false'. + :vartype value: str + """ + + _validation = { + 'name': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(SKUCapability, self).__init__(**kwargs) + self.name = None + self.value = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_paged.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_paged.py new file mode 100644 index 000000000000..8956385239ae --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class SkuPaged(Paged): + """ + A paging container for iterating over a list of :class:`Sku ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Sku]'} + } + + def __init__(self, *args, **kwargs): + + super(SkuPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_py3.py new file mode 100644 index 000000000000..6a55d280f547 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/sku_py3.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """The SKU of the storage account. + + 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. Gets or sets the sku name. Required for account + creation; optional for update. Note that in older versions, sku name was + called accountType. Possible values include: 'Standard_LRS', + 'Standard_GRS', 'Standard_RAGRS', 'Standard_ZRS', 'Premium_LRS', + 'Premium_ZRS' + :type name: str or ~azure.mgmt.storage.v2018_07_01.models.SkuName + :ivar tier: Gets the sku tier. This is based on the SKU name. Possible + values include: 'Standard', 'Premium' + :vartype tier: str or ~azure.mgmt.storage.v2018_07_01.models.SkuTier + :ivar resource_type: The type of the resource, usually it is + 'storageAccounts'. + :vartype resource_type: str + :ivar kind: Indicates the type of storage account. Possible values + include: 'Storage', 'StorageV2', 'BlobStorage', 'FileStorage', + 'BlockBlobStorage' + :vartype kind: str or ~azure.mgmt.storage.v2018_07_01.models.Kind + :ivar locations: The set of locations that the SKU is available. This will + be supported and registered Azure Geo Regions (e.g. West US, East US, + Southeast Asia, etc.). + :vartype locations: list[str] + :ivar capabilities: The capability information in the specified sku, + including file encryption, network acls, change notification, etc. + :vartype capabilities: + list[~azure.mgmt.storage.v2018_07_01.models.SKUCapability] + :param restrictions: The restrictions because of which SKU cannot be used. + This is empty if there are no restrictions. + :type restrictions: + list[~azure.mgmt.storage.v2018_07_01.models.Restriction] + """ + + _validation = { + 'name': {'required': True}, + 'tier': {'readonly': True}, + 'resource_type': {'readonly': True}, + 'kind': {'readonly': True}, + 'locations': {'readonly': True}, + 'capabilities': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'SkuName'}, + 'tier': {'key': 'tier', 'type': 'SkuTier'}, + 'resource_type': {'key': 'resourceType', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'Kind'}, + 'locations': {'key': 'locations', 'type': '[str]'}, + 'capabilities': {'key': 'capabilities', 'type': '[SKUCapability]'}, + 'restrictions': {'key': 'restrictions', 'type': '[Restriction]'}, + } + + def __init__(self, *, name, restrictions=None, **kwargs) -> None: + super(Sku, self).__init__(**kwargs) + self.name = name + self.tier = None + self.resource_type = None + self.kind = None + self.locations = None + self.capabilities = None + self.restrictions = restrictions diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account.py new file mode 100644 index 000000000000..379f54fc2b9f --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account.py @@ -0,0 +1,179 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource import TrackedResource + + +class StorageAccount(TrackedResource): + """The storage account. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + :ivar sku: Gets the SKU. + :vartype sku: ~azure.mgmt.storage.v2018_07_01.models.Sku + :ivar kind: Gets the Kind. Possible values include: 'Storage', + 'StorageV2', 'BlobStorage', 'FileStorage', 'BlockBlobStorage' + :vartype kind: str or ~azure.mgmt.storage.v2018_07_01.models.Kind + :param identity: The identity of the resource. + :type identity: ~azure.mgmt.storage.v2018_07_01.models.Identity + :ivar provisioning_state: Gets the status of the storage account at the + time the operation was called. Possible values include: 'Creating', + 'ResolvingDNS', 'Succeeded' + :vartype provisioning_state: str or + ~azure.mgmt.storage.v2018_07_01.models.ProvisioningState + :ivar primary_endpoints: Gets the URLs that are used to perform a + retrieval of a public blob, queue, or table object. Note that Standard_ZRS + and Premium_LRS accounts only return the blob endpoint. + :vartype primary_endpoints: + ~azure.mgmt.storage.v2018_07_01.models.Endpoints + :ivar primary_location: Gets the location of the primary data center for + the storage account. + :vartype primary_location: str + :ivar status_of_primary: Gets the status indicating whether the primary + location of the storage account is available or unavailable. Possible + values include: 'available', 'unavailable' + :vartype status_of_primary: str or + ~azure.mgmt.storage.v2018_07_01.models.AccountStatus + :ivar last_geo_failover_time: Gets the timestamp of the most recent + instance of a failover to the secondary location. Only the most recent + timestamp is retained. This element is not returned if there has never + been a failover instance. Only available if the accountType is + Standard_GRS or Standard_RAGRS. + :vartype last_geo_failover_time: datetime + :ivar secondary_location: Gets the location of the geo-replicated + secondary for the storage account. Only available if the accountType is + Standard_GRS or Standard_RAGRS. + :vartype secondary_location: str + :ivar status_of_secondary: Gets the status indicating whether the + secondary location of the storage account is available or unavailable. + Only available if the SKU name is Standard_GRS or Standard_RAGRS. Possible + values include: 'available', 'unavailable' + :vartype status_of_secondary: str or + ~azure.mgmt.storage.v2018_07_01.models.AccountStatus + :ivar creation_time: Gets the creation date and time of the storage + account in UTC. + :vartype creation_time: datetime + :ivar custom_domain: Gets the custom domain the user assigned to this + storage account. + :vartype custom_domain: + ~azure.mgmt.storage.v2018_07_01.models.CustomDomain + :ivar secondary_endpoints: Gets the URLs that are used to perform a + retrieval of a public blob, queue, or table object from the secondary + location of the storage account. Only available if the SKU name is + Standard_RAGRS. + :vartype secondary_endpoints: + ~azure.mgmt.storage.v2018_07_01.models.Endpoints + :ivar encryption: Gets the encryption settings on the account. If + unspecified, the account is unencrypted. + :vartype encryption: ~azure.mgmt.storage.v2018_07_01.models.Encryption + :ivar access_tier: Required for storage accounts where kind = BlobStorage. + The access tier used for billing. Possible values include: 'Hot', 'Cool' + :vartype access_tier: str or + ~azure.mgmt.storage.v2018_07_01.models.AccessTier + :param enable_azure_files_aad_integration: Enables Azure Files AAD + Integration for SMB if sets to true. + :type enable_azure_files_aad_integration: bool + :param enable_https_traffic_only: Allows https traffic only to storage + service if sets to true. + :type enable_https_traffic_only: bool + :ivar network_rule_set: Network rule set + :vartype network_rule_set: + ~azure.mgmt.storage.v2018_07_01.models.NetworkRuleSet + :param is_hns_enabled: Account HierarchicalNamespace enabled if sets to + true. + :type is_hns_enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'sku': {'readonly': True}, + 'kind': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'primary_endpoints': {'readonly': True}, + 'primary_location': {'readonly': True}, + 'status_of_primary': {'readonly': True}, + 'last_geo_failover_time': {'readonly': True}, + 'secondary_location': {'readonly': True}, + 'status_of_secondary': {'readonly': True}, + 'creation_time': {'readonly': True}, + 'custom_domain': {'readonly': True}, + 'secondary_endpoints': {'readonly': True}, + 'encryption': {'readonly': True}, + 'access_tier': {'readonly': True}, + 'network_rule_set': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'Kind'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'}, + 'primary_endpoints': {'key': 'properties.primaryEndpoints', 'type': 'Endpoints'}, + 'primary_location': {'key': 'properties.primaryLocation', 'type': 'str'}, + 'status_of_primary': {'key': 'properties.statusOfPrimary', 'type': 'AccountStatus'}, + 'last_geo_failover_time': {'key': 'properties.lastGeoFailoverTime', 'type': 'iso-8601'}, + 'secondary_location': {'key': 'properties.secondaryLocation', 'type': 'str'}, + 'status_of_secondary': {'key': 'properties.statusOfSecondary', 'type': 'AccountStatus'}, + 'creation_time': {'key': 'properties.creationTime', 'type': 'iso-8601'}, + 'custom_domain': {'key': 'properties.customDomain', 'type': 'CustomDomain'}, + 'secondary_endpoints': {'key': 'properties.secondaryEndpoints', 'type': 'Endpoints'}, + 'encryption': {'key': 'properties.encryption', 'type': 'Encryption'}, + 'access_tier': {'key': 'properties.accessTier', 'type': 'AccessTier'}, + 'enable_azure_files_aad_integration': {'key': 'properties.azureFilesAadIntegration', 'type': 'bool'}, + 'enable_https_traffic_only': {'key': 'properties.supportsHttpsTrafficOnly', 'type': 'bool'}, + 'network_rule_set': {'key': 'properties.networkAcls', 'type': 'NetworkRuleSet'}, + 'is_hns_enabled': {'key': 'properties.isHnsEnabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(StorageAccount, self).__init__(**kwargs) + self.sku = None + self.kind = None + self.identity = kwargs.get('identity', None) + self.provisioning_state = None + self.primary_endpoints = None + self.primary_location = None + self.status_of_primary = None + self.last_geo_failover_time = None + self.secondary_location = None + self.status_of_secondary = None + self.creation_time = None + self.custom_domain = None + self.secondary_endpoints = None + self.encryption = None + self.access_tier = None + self.enable_azure_files_aad_integration = kwargs.get('enable_azure_files_aad_integration', None) + self.enable_https_traffic_only = kwargs.get('enable_https_traffic_only', None) + self.network_rule_set = None + self.is_hns_enabled = kwargs.get('is_hns_enabled', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_check_name_availability_parameters.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_check_name_availability_parameters.py new file mode 100644 index 000000000000..42cf88a074a0 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_check_name_availability_parameters.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountCheckNameAvailabilityParameters(Model): + """The parameters used to check the availabity of the storage account name. + + 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. The storage account name. + :type name: str + :ivar type: Required. The type of resource, + Microsoft.Storage/storageAccounts. Default value: + "Microsoft.Storage/storageAccounts" . + :vartype type: str + """ + + _validation = { + 'name': {'required': True}, + 'type': {'required': True, 'constant': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + type = "Microsoft.Storage/storageAccounts" + + def __init__(self, **kwargs): + super(StorageAccountCheckNameAvailabilityParameters, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_check_name_availability_parameters_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_check_name_availability_parameters_py3.py new file mode 100644 index 000000000000..e6f50a456902 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_check_name_availability_parameters_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountCheckNameAvailabilityParameters(Model): + """The parameters used to check the availabity of the storage account name. + + 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. The storage account name. + :type name: str + :ivar type: Required. The type of resource, + Microsoft.Storage/storageAccounts. Default value: + "Microsoft.Storage/storageAccounts" . + :vartype type: str + """ + + _validation = { + 'name': {'required': True}, + 'type': {'required': True, 'constant': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + type = "Microsoft.Storage/storageAccounts" + + def __init__(self, *, name: str, **kwargs) -> None: + super(StorageAccountCheckNameAvailabilityParameters, self).__init__(**kwargs) + self.name = name diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_create_parameters.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_create_parameters.py new file mode 100644 index 000000000000..35623ebc3ce3 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_create_parameters.py @@ -0,0 +1,102 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountCreateParameters(Model): + """The parameters used when creating a storage account. + + All required parameters must be populated in order to send to Azure. + + :param sku: Required. Required. Gets or sets the sku name. + :type sku: ~azure.mgmt.storage.v2018_07_01.models.Sku + :param kind: Required. Required. Indicates the type of storage account. + Possible values include: 'Storage', 'StorageV2', 'BlobStorage', + 'FileStorage', 'BlockBlobStorage' + :type kind: str or ~azure.mgmt.storage.v2018_07_01.models.Kind + :param location: Required. Required. Gets or sets the location of the + resource. This will be one of the supported and registered Azure Geo + Regions (e.g. West US, East US, Southeast Asia, etc.). The geo region of a + resource cannot be changed once it is created, but if an identical geo + region is specified on update, the request will succeed. + :type location: str + :param tags: Gets or sets a list of key value pairs that describe the + resource. These tags can be used for viewing and grouping this resource + (across resource groups). A maximum of 15 tags can be provided for a + resource. Each tag must have a key with a length no greater than 128 + characters and a value with a length no greater than 256 characters. + :type tags: dict[str, str] + :param identity: The identity of the resource. + :type identity: ~azure.mgmt.storage.v2018_07_01.models.Identity + :param custom_domain: User domain assigned to the storage account. Name is + the CNAME source. Only one custom domain is supported per storage account + at this time. To clear the existing custom domain, use an empty string for + the custom domain name property. + :type custom_domain: ~azure.mgmt.storage.v2018_07_01.models.CustomDomain + :param encryption: Provides the encryption settings on the account. If + left unspecified the account encryption settings will remain the same. The + default setting is unencrypted. + :type encryption: ~azure.mgmt.storage.v2018_07_01.models.Encryption + :param network_rule_set: Network rule set + :type network_rule_set: + ~azure.mgmt.storage.v2018_07_01.models.NetworkRuleSet + :param access_tier: Required for storage accounts where kind = + BlobStorage. The access tier used for billing. Possible values include: + 'Hot', 'Cool' + :type access_tier: str or + ~azure.mgmt.storage.v2018_07_01.models.AccessTier + :param enable_azure_files_aad_integration: Enables Azure Files AAD + Integration for SMB if sets to true. + :type enable_azure_files_aad_integration: bool + :param enable_https_traffic_only: Allows https traffic only to storage + service if sets to true. + :type enable_https_traffic_only: bool + :param is_hns_enabled: Account HierarchicalNamespace enabled if sets to + true. + :type is_hns_enabled: bool + """ + + _validation = { + 'sku': {'required': True}, + 'kind': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'Kind'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, + 'custom_domain': {'key': 'properties.customDomain', 'type': 'CustomDomain'}, + 'encryption': {'key': 'properties.encryption', 'type': 'Encryption'}, + 'network_rule_set': {'key': 'properties.networkAcls', 'type': 'NetworkRuleSet'}, + 'access_tier': {'key': 'properties.accessTier', 'type': 'AccessTier'}, + 'enable_azure_files_aad_integration': {'key': 'properties.azureFilesAadIntegration', 'type': 'bool'}, + 'enable_https_traffic_only': {'key': 'properties.supportsHttpsTrafficOnly', 'type': 'bool'}, + 'is_hns_enabled': {'key': 'properties.isHnsEnabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(StorageAccountCreateParameters, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.kind = kwargs.get('kind', None) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.identity = kwargs.get('identity', None) + self.custom_domain = kwargs.get('custom_domain', None) + self.encryption = kwargs.get('encryption', None) + self.network_rule_set = kwargs.get('network_rule_set', None) + self.access_tier = kwargs.get('access_tier', None) + self.enable_azure_files_aad_integration = kwargs.get('enable_azure_files_aad_integration', None) + self.enable_https_traffic_only = kwargs.get('enable_https_traffic_only', None) + self.is_hns_enabled = kwargs.get('is_hns_enabled', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_create_parameters_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_create_parameters_py3.py new file mode 100644 index 000000000000..404ad6f14db0 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_create_parameters_py3.py @@ -0,0 +1,102 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountCreateParameters(Model): + """The parameters used when creating a storage account. + + All required parameters must be populated in order to send to Azure. + + :param sku: Required. Required. Gets or sets the sku name. + :type sku: ~azure.mgmt.storage.v2018_07_01.models.Sku + :param kind: Required. Required. Indicates the type of storage account. + Possible values include: 'Storage', 'StorageV2', 'BlobStorage', + 'FileStorage', 'BlockBlobStorage' + :type kind: str or ~azure.mgmt.storage.v2018_07_01.models.Kind + :param location: Required. Required. Gets or sets the location of the + resource. This will be one of the supported and registered Azure Geo + Regions (e.g. West US, East US, Southeast Asia, etc.). The geo region of a + resource cannot be changed once it is created, but if an identical geo + region is specified on update, the request will succeed. + :type location: str + :param tags: Gets or sets a list of key value pairs that describe the + resource. These tags can be used for viewing and grouping this resource + (across resource groups). A maximum of 15 tags can be provided for a + resource. Each tag must have a key with a length no greater than 128 + characters and a value with a length no greater than 256 characters. + :type tags: dict[str, str] + :param identity: The identity of the resource. + :type identity: ~azure.mgmt.storage.v2018_07_01.models.Identity + :param custom_domain: User domain assigned to the storage account. Name is + the CNAME source. Only one custom domain is supported per storage account + at this time. To clear the existing custom domain, use an empty string for + the custom domain name property. + :type custom_domain: ~azure.mgmt.storage.v2018_07_01.models.CustomDomain + :param encryption: Provides the encryption settings on the account. If + left unspecified the account encryption settings will remain the same. The + default setting is unencrypted. + :type encryption: ~azure.mgmt.storage.v2018_07_01.models.Encryption + :param network_rule_set: Network rule set + :type network_rule_set: + ~azure.mgmt.storage.v2018_07_01.models.NetworkRuleSet + :param access_tier: Required for storage accounts where kind = + BlobStorage. The access tier used for billing. Possible values include: + 'Hot', 'Cool' + :type access_tier: str or + ~azure.mgmt.storage.v2018_07_01.models.AccessTier + :param enable_azure_files_aad_integration: Enables Azure Files AAD + Integration for SMB if sets to true. + :type enable_azure_files_aad_integration: bool + :param enable_https_traffic_only: Allows https traffic only to storage + service if sets to true. + :type enable_https_traffic_only: bool + :param is_hns_enabled: Account HierarchicalNamespace enabled if sets to + true. + :type is_hns_enabled: bool + """ + + _validation = { + 'sku': {'required': True}, + 'kind': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'Kind'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, + 'custom_domain': {'key': 'properties.customDomain', 'type': 'CustomDomain'}, + 'encryption': {'key': 'properties.encryption', 'type': 'Encryption'}, + 'network_rule_set': {'key': 'properties.networkAcls', 'type': 'NetworkRuleSet'}, + 'access_tier': {'key': 'properties.accessTier', 'type': 'AccessTier'}, + 'enable_azure_files_aad_integration': {'key': 'properties.azureFilesAadIntegration', 'type': 'bool'}, + 'enable_https_traffic_only': {'key': 'properties.supportsHttpsTrafficOnly', 'type': 'bool'}, + 'is_hns_enabled': {'key': 'properties.isHnsEnabled', 'type': 'bool'}, + } + + def __init__(self, *, sku, kind, location: str, tags=None, identity=None, custom_domain=None, encryption=None, network_rule_set=None, access_tier=None, enable_azure_files_aad_integration: bool=None, enable_https_traffic_only: bool=None, is_hns_enabled: bool=None, **kwargs) -> None: + super(StorageAccountCreateParameters, self).__init__(**kwargs) + self.sku = sku + self.kind = kind + self.location = location + self.tags = tags + self.identity = identity + self.custom_domain = custom_domain + self.encryption = encryption + self.network_rule_set = network_rule_set + self.access_tier = access_tier + self.enable_azure_files_aad_integration = enable_azure_files_aad_integration + self.enable_https_traffic_only = enable_https_traffic_only + self.is_hns_enabled = is_hns_enabled diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_key.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_key.py new file mode 100644 index 000000000000..5fafecd6a4ce --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_key.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountKey(Model): + """An access key for the storage account. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar key_name: Name of the key. + :vartype key_name: str + :ivar value: Base 64-encoded value of the key. + :vartype value: str + :ivar permissions: Permissions for the key -- read-only or full + permissions. Possible values include: 'Read', 'Full' + :vartype permissions: str or + ~azure.mgmt.storage.v2018_07_01.models.KeyPermission + """ + + _validation = { + 'key_name': {'readonly': True}, + 'value': {'readonly': True}, + 'permissions': {'readonly': True}, + } + + _attribute_map = { + 'key_name': {'key': 'keyName', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + 'permissions': {'key': 'permissions', 'type': 'KeyPermission'}, + } + + def __init__(self, **kwargs): + super(StorageAccountKey, self).__init__(**kwargs) + self.key_name = None + self.value = None + self.permissions = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_key_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_key_py3.py new file mode 100644 index 000000000000..7ee7e99f2bdf --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_key_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountKey(Model): + """An access key for the storage account. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar key_name: Name of the key. + :vartype key_name: str + :ivar value: Base 64-encoded value of the key. + :vartype value: str + :ivar permissions: Permissions for the key -- read-only or full + permissions. Possible values include: 'Read', 'Full' + :vartype permissions: str or + ~azure.mgmt.storage.v2018_07_01.models.KeyPermission + """ + + _validation = { + 'key_name': {'readonly': True}, + 'value': {'readonly': True}, + 'permissions': {'readonly': True}, + } + + _attribute_map = { + 'key_name': {'key': 'keyName', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + 'permissions': {'key': 'permissions', 'type': 'KeyPermission'}, + } + + def __init__(self, **kwargs) -> None: + super(StorageAccountKey, self).__init__(**kwargs) + self.key_name = None + self.value = None + self.permissions = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_list_keys_result.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_list_keys_result.py new file mode 100644 index 000000000000..0d5d0cbbe0bf --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_list_keys_result.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountListKeysResult(Model): + """The response from the ListKeys operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar keys: Gets the list of storage account keys and their properties for + the specified storage account. + :vartype keys: + list[~azure.mgmt.storage.v2018_07_01.models.StorageAccountKey] + """ + + _validation = { + 'keys': {'readonly': True}, + } + + _attribute_map = { + 'keys': {'key': 'keys', 'type': '[StorageAccountKey]'}, + } + + def __init__(self, **kwargs): + super(StorageAccountListKeysResult, self).__init__(**kwargs) + self.keys = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_list_keys_result_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_list_keys_result_py3.py new file mode 100644 index 000000000000..d14a6efa05c6 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_list_keys_result_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountListKeysResult(Model): + """The response from the ListKeys operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar keys: Gets the list of storage account keys and their properties for + the specified storage account. + :vartype keys: + list[~azure.mgmt.storage.v2018_07_01.models.StorageAccountKey] + """ + + _validation = { + 'keys': {'readonly': True}, + } + + _attribute_map = { + 'keys': {'key': 'keys', 'type': '[StorageAccountKey]'}, + } + + def __init__(self, **kwargs) -> None: + super(StorageAccountListKeysResult, self).__init__(**kwargs) + self.keys = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_management_policies.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_management_policies.py new file mode 100644 index 000000000000..59ee515d9a04 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_management_policies.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource import Resource + + +class StorageAccountManagementPolicies(Resource): + """The Get Storage Account ManagementPolicies operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param policy: The Storage Account ManagementPolicies Rules, in JSON + format. See more details in: + https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts. + :type policy: object + :ivar last_modified_time: Returns the date and time the ManagementPolicies + was last modified. + :vartype last_modified_time: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'policy': {'key': 'properties.policy', 'type': 'object'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(StorageAccountManagementPolicies, self).__init__(**kwargs) + self.policy = kwargs.get('policy', None) + self.last_modified_time = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_management_policies_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_management_policies_py3.py new file mode 100644 index 000000000000..3dc977624949 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_management_policies_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .resource_py3 import Resource + + +class StorageAccountManagementPolicies(Resource): + """The Get Storage Account ManagementPolicies operation response. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param policy: The Storage Account ManagementPolicies Rules, in JSON + format. See more details in: + https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts. + :type policy: object + :ivar last_modified_time: Returns the date and time the ManagementPolicies + was last modified. + :vartype last_modified_time: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'policy': {'key': 'properties.policy', 'type': 'object'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, policy=None, **kwargs) -> None: + super(StorageAccountManagementPolicies, self).__init__(**kwargs) + self.policy = policy + self.last_modified_time = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_paged.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_paged.py new file mode 100644 index 000000000000..28b37472e3cb --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class StorageAccountPaged(Paged): + """ + A paging container for iterating over a list of :class:`StorageAccount ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[StorageAccount]'} + } + + def __init__(self, *args, **kwargs): + + super(StorageAccountPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_py3.py new file mode 100644 index 000000000000..b83276b42715 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_py3.py @@ -0,0 +1,179 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource_py3 import TrackedResource + + +class StorageAccount(TrackedResource): + """The storage account. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + :ivar sku: Gets the SKU. + :vartype sku: ~azure.mgmt.storage.v2018_07_01.models.Sku + :ivar kind: Gets the Kind. Possible values include: 'Storage', + 'StorageV2', 'BlobStorage', 'FileStorage', 'BlockBlobStorage' + :vartype kind: str or ~azure.mgmt.storage.v2018_07_01.models.Kind + :param identity: The identity of the resource. + :type identity: ~azure.mgmt.storage.v2018_07_01.models.Identity + :ivar provisioning_state: Gets the status of the storage account at the + time the operation was called. Possible values include: 'Creating', + 'ResolvingDNS', 'Succeeded' + :vartype provisioning_state: str or + ~azure.mgmt.storage.v2018_07_01.models.ProvisioningState + :ivar primary_endpoints: Gets the URLs that are used to perform a + retrieval of a public blob, queue, or table object. Note that Standard_ZRS + and Premium_LRS accounts only return the blob endpoint. + :vartype primary_endpoints: + ~azure.mgmt.storage.v2018_07_01.models.Endpoints + :ivar primary_location: Gets the location of the primary data center for + the storage account. + :vartype primary_location: str + :ivar status_of_primary: Gets the status indicating whether the primary + location of the storage account is available or unavailable. Possible + values include: 'available', 'unavailable' + :vartype status_of_primary: str or + ~azure.mgmt.storage.v2018_07_01.models.AccountStatus + :ivar last_geo_failover_time: Gets the timestamp of the most recent + instance of a failover to the secondary location. Only the most recent + timestamp is retained. This element is not returned if there has never + been a failover instance. Only available if the accountType is + Standard_GRS or Standard_RAGRS. + :vartype last_geo_failover_time: datetime + :ivar secondary_location: Gets the location of the geo-replicated + secondary for the storage account. Only available if the accountType is + Standard_GRS or Standard_RAGRS. + :vartype secondary_location: str + :ivar status_of_secondary: Gets the status indicating whether the + secondary location of the storage account is available or unavailable. + Only available if the SKU name is Standard_GRS or Standard_RAGRS. Possible + values include: 'available', 'unavailable' + :vartype status_of_secondary: str or + ~azure.mgmt.storage.v2018_07_01.models.AccountStatus + :ivar creation_time: Gets the creation date and time of the storage + account in UTC. + :vartype creation_time: datetime + :ivar custom_domain: Gets the custom domain the user assigned to this + storage account. + :vartype custom_domain: + ~azure.mgmt.storage.v2018_07_01.models.CustomDomain + :ivar secondary_endpoints: Gets the URLs that are used to perform a + retrieval of a public blob, queue, or table object from the secondary + location of the storage account. Only available if the SKU name is + Standard_RAGRS. + :vartype secondary_endpoints: + ~azure.mgmt.storage.v2018_07_01.models.Endpoints + :ivar encryption: Gets the encryption settings on the account. If + unspecified, the account is unencrypted. + :vartype encryption: ~azure.mgmt.storage.v2018_07_01.models.Encryption + :ivar access_tier: Required for storage accounts where kind = BlobStorage. + The access tier used for billing. Possible values include: 'Hot', 'Cool' + :vartype access_tier: str or + ~azure.mgmt.storage.v2018_07_01.models.AccessTier + :param enable_azure_files_aad_integration: Enables Azure Files AAD + Integration for SMB if sets to true. + :type enable_azure_files_aad_integration: bool + :param enable_https_traffic_only: Allows https traffic only to storage + service if sets to true. + :type enable_https_traffic_only: bool + :ivar network_rule_set: Network rule set + :vartype network_rule_set: + ~azure.mgmt.storage.v2018_07_01.models.NetworkRuleSet + :param is_hns_enabled: Account HierarchicalNamespace enabled if sets to + true. + :type is_hns_enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + 'sku': {'readonly': True}, + 'kind': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'primary_endpoints': {'readonly': True}, + 'primary_location': {'readonly': True}, + 'status_of_primary': {'readonly': True}, + 'last_geo_failover_time': {'readonly': True}, + 'secondary_location': {'readonly': True}, + 'status_of_secondary': {'readonly': True}, + 'creation_time': {'readonly': True}, + 'custom_domain': {'readonly': True}, + 'secondary_endpoints': {'readonly': True}, + 'encryption': {'readonly': True}, + 'access_tier': {'readonly': True}, + 'network_rule_set': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'kind': {'key': 'kind', 'type': 'Kind'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'}, + 'primary_endpoints': {'key': 'properties.primaryEndpoints', 'type': 'Endpoints'}, + 'primary_location': {'key': 'properties.primaryLocation', 'type': 'str'}, + 'status_of_primary': {'key': 'properties.statusOfPrimary', 'type': 'AccountStatus'}, + 'last_geo_failover_time': {'key': 'properties.lastGeoFailoverTime', 'type': 'iso-8601'}, + 'secondary_location': {'key': 'properties.secondaryLocation', 'type': 'str'}, + 'status_of_secondary': {'key': 'properties.statusOfSecondary', 'type': 'AccountStatus'}, + 'creation_time': {'key': 'properties.creationTime', 'type': 'iso-8601'}, + 'custom_domain': {'key': 'properties.customDomain', 'type': 'CustomDomain'}, + 'secondary_endpoints': {'key': 'properties.secondaryEndpoints', 'type': 'Endpoints'}, + 'encryption': {'key': 'properties.encryption', 'type': 'Encryption'}, + 'access_tier': {'key': 'properties.accessTier', 'type': 'AccessTier'}, + 'enable_azure_files_aad_integration': {'key': 'properties.azureFilesAadIntegration', 'type': 'bool'}, + 'enable_https_traffic_only': {'key': 'properties.supportsHttpsTrafficOnly', 'type': 'bool'}, + 'network_rule_set': {'key': 'properties.networkAcls', 'type': 'NetworkRuleSet'}, + 'is_hns_enabled': {'key': 'properties.isHnsEnabled', 'type': 'bool'}, + } + + def __init__(self, *, location: str, tags=None, identity=None, enable_azure_files_aad_integration: bool=None, enable_https_traffic_only: bool=None, is_hns_enabled: bool=None, **kwargs) -> None: + super(StorageAccount, self).__init__(tags=tags, location=location, **kwargs) + self.sku = None + self.kind = None + self.identity = identity + self.provisioning_state = None + self.primary_endpoints = None + self.primary_location = None + self.status_of_primary = None + self.last_geo_failover_time = None + self.secondary_location = None + self.status_of_secondary = None + self.creation_time = None + self.custom_domain = None + self.secondary_endpoints = None + self.encryption = None + self.access_tier = None + self.enable_azure_files_aad_integration = enable_azure_files_aad_integration + self.enable_https_traffic_only = enable_https_traffic_only + self.network_rule_set = None + self.is_hns_enabled = is_hns_enabled diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_regenerate_key_parameters.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_regenerate_key_parameters.py new file mode 100644 index 000000000000..ca7f33b25112 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_regenerate_key_parameters.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountRegenerateKeyParameters(Model): + """The parameters used to regenerate the storage account key. + + All required parameters must be populated in order to send to Azure. + + :param key_name: Required. The name of storage keys that want to be + regenerated, possible vaules are key1, key2. + :type key_name: str + """ + + _validation = { + 'key_name': {'required': True}, + } + + _attribute_map = { + 'key_name': {'key': 'keyName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(StorageAccountRegenerateKeyParameters, self).__init__(**kwargs) + self.key_name = kwargs.get('key_name', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_regenerate_key_parameters_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_regenerate_key_parameters_py3.py new file mode 100644 index 000000000000..42f3c0b2e94a --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_regenerate_key_parameters_py3.py @@ -0,0 +1,35 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountRegenerateKeyParameters(Model): + """The parameters used to regenerate the storage account key. + + All required parameters must be populated in order to send to Azure. + + :param key_name: Required. The name of storage keys that want to be + regenerated, possible vaules are key1, key2. + :type key_name: str + """ + + _validation = { + 'key_name': {'required': True}, + } + + _attribute_map = { + 'key_name': {'key': 'keyName', 'type': 'str'}, + } + + def __init__(self, *, key_name: str, **kwargs) -> None: + super(StorageAccountRegenerateKeyParameters, self).__init__(**kwargs) + self.key_name = key_name diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_update_parameters.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_update_parameters.py new file mode 100644 index 000000000000..12377448b5f3 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_update_parameters.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountUpdateParameters(Model): + """The parameters that can be provided when updating the storage account + properties. + + :param sku: Gets or sets the SKU name. Note that the SKU name cannot be + updated to Standard_ZRS, Premium_LRS or Premium_ZRS, nor can accounts of + those sku names be updated to any other value. + :type sku: ~azure.mgmt.storage.v2018_07_01.models.Sku + :param tags: Gets or sets a list of key value pairs that describe the + resource. These tags can be used in viewing and grouping this resource + (across resource groups). A maximum of 15 tags can be provided for a + resource. Each tag must have a key no greater in length than 128 + characters and a value no greater in length than 256 characters. + :type tags: dict[str, str] + :param identity: The identity of the resource. + :type identity: ~azure.mgmt.storage.v2018_07_01.models.Identity + :param custom_domain: Custom domain assigned to the storage account by the + user. Name is the CNAME source. Only one custom domain is supported per + storage account at this time. To clear the existing custom domain, use an + empty string for the custom domain name property. + :type custom_domain: ~azure.mgmt.storage.v2018_07_01.models.CustomDomain + :param encryption: Provides the encryption settings on the account. The + default setting is unencrypted. + :type encryption: ~azure.mgmt.storage.v2018_07_01.models.Encryption + :param access_tier: Required for storage accounts where kind = + BlobStorage. The access tier used for billing. Possible values include: + 'Hot', 'Cool' + :type access_tier: str or + ~azure.mgmt.storage.v2018_07_01.models.AccessTier + :param enable_azure_files_aad_integration: Enables Azure Files AAD + Integration for SMB if sets to true. + :type enable_azure_files_aad_integration: bool + :param enable_https_traffic_only: Allows https traffic only to storage + service if sets to true. + :type enable_https_traffic_only: bool + :param network_rule_set: Network rule set + :type network_rule_set: + ~azure.mgmt.storage.v2018_07_01.models.NetworkRuleSet + :param kind: Optional. Indicates the type of storage account. Currently + only StorageV2 value supported by server. Possible values include: + 'Storage', 'StorageV2', 'BlobStorage', 'FileStorage', 'BlockBlobStorage' + :type kind: str or ~azure.mgmt.storage.v2018_07_01.models.Kind + """ + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, + 'custom_domain': {'key': 'properties.customDomain', 'type': 'CustomDomain'}, + 'encryption': {'key': 'properties.encryption', 'type': 'Encryption'}, + 'access_tier': {'key': 'properties.accessTier', 'type': 'AccessTier'}, + 'enable_azure_files_aad_integration': {'key': 'properties.azureFilesAadIntegration', 'type': 'bool'}, + 'enable_https_traffic_only': {'key': 'properties.supportsHttpsTrafficOnly', 'type': 'bool'}, + 'network_rule_set': {'key': 'properties.networkAcls', 'type': 'NetworkRuleSet'}, + 'kind': {'key': 'kind', 'type': 'Kind'}, + } + + def __init__(self, **kwargs): + super(StorageAccountUpdateParameters, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.tags = kwargs.get('tags', None) + self.identity = kwargs.get('identity', None) + self.custom_domain = kwargs.get('custom_domain', None) + self.encryption = kwargs.get('encryption', None) + self.access_tier = kwargs.get('access_tier', None) + self.enable_azure_files_aad_integration = kwargs.get('enable_azure_files_aad_integration', None) + self.enable_https_traffic_only = kwargs.get('enable_https_traffic_only', None) + self.network_rule_set = kwargs.get('network_rule_set', None) + self.kind = kwargs.get('kind', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_update_parameters_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_update_parameters_py3.py new file mode 100644 index 000000000000..db33745b807b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_account_update_parameters_py3.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageAccountUpdateParameters(Model): + """The parameters that can be provided when updating the storage account + properties. + + :param sku: Gets or sets the SKU name. Note that the SKU name cannot be + updated to Standard_ZRS, Premium_LRS or Premium_ZRS, nor can accounts of + those sku names be updated to any other value. + :type sku: ~azure.mgmt.storage.v2018_07_01.models.Sku + :param tags: Gets or sets a list of key value pairs that describe the + resource. These tags can be used in viewing and grouping this resource + (across resource groups). A maximum of 15 tags can be provided for a + resource. Each tag must have a key no greater in length than 128 + characters and a value no greater in length than 256 characters. + :type tags: dict[str, str] + :param identity: The identity of the resource. + :type identity: ~azure.mgmt.storage.v2018_07_01.models.Identity + :param custom_domain: Custom domain assigned to the storage account by the + user. Name is the CNAME source. Only one custom domain is supported per + storage account at this time. To clear the existing custom domain, use an + empty string for the custom domain name property. + :type custom_domain: ~azure.mgmt.storage.v2018_07_01.models.CustomDomain + :param encryption: Provides the encryption settings on the account. The + default setting is unencrypted. + :type encryption: ~azure.mgmt.storage.v2018_07_01.models.Encryption + :param access_tier: Required for storage accounts where kind = + BlobStorage. The access tier used for billing. Possible values include: + 'Hot', 'Cool' + :type access_tier: str or + ~azure.mgmt.storage.v2018_07_01.models.AccessTier + :param enable_azure_files_aad_integration: Enables Azure Files AAD + Integration for SMB if sets to true. + :type enable_azure_files_aad_integration: bool + :param enable_https_traffic_only: Allows https traffic only to storage + service if sets to true. + :type enable_https_traffic_only: bool + :param network_rule_set: Network rule set + :type network_rule_set: + ~azure.mgmt.storage.v2018_07_01.models.NetworkRuleSet + :param kind: Optional. Indicates the type of storage account. Currently + only StorageV2 value supported by server. Possible values include: + 'Storage', 'StorageV2', 'BlobStorage', 'FileStorage', 'BlockBlobStorage' + :type kind: str or ~azure.mgmt.storage.v2018_07_01.models.Kind + """ + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, + 'custom_domain': {'key': 'properties.customDomain', 'type': 'CustomDomain'}, + 'encryption': {'key': 'properties.encryption', 'type': 'Encryption'}, + 'access_tier': {'key': 'properties.accessTier', 'type': 'AccessTier'}, + 'enable_azure_files_aad_integration': {'key': 'properties.azureFilesAadIntegration', 'type': 'bool'}, + 'enable_https_traffic_only': {'key': 'properties.supportsHttpsTrafficOnly', 'type': 'bool'}, + 'network_rule_set': {'key': 'properties.networkAcls', 'type': 'NetworkRuleSet'}, + 'kind': {'key': 'kind', 'type': 'Kind'}, + } + + def __init__(self, *, sku=None, tags=None, identity=None, custom_domain=None, encryption=None, access_tier=None, enable_azure_files_aad_integration: bool=None, enable_https_traffic_only: bool=None, network_rule_set=None, kind=None, **kwargs) -> None: + super(StorageAccountUpdateParameters, self).__init__(**kwargs) + self.sku = sku + self.tags = tags + self.identity = identity + self.custom_domain = custom_domain + self.encryption = encryption + self.access_tier = access_tier + self.enable_azure_files_aad_integration = enable_azure_files_aad_integration + self.enable_https_traffic_only = enable_https_traffic_only + self.network_rule_set = network_rule_set + self.kind = kind diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_management_client_enums.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_management_client_enums.py new file mode 100644 index 000000000000..aa998284e397 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/storage_management_client_enums.py @@ -0,0 +1,200 @@ +# 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 enum import Enum + + +class ReasonCode(str, Enum): + + quota_id = "QuotaId" + not_available_for_subscription = "NotAvailableForSubscription" + + +class SkuName(str, Enum): + + standard_lrs = "Standard_LRS" + standard_grs = "Standard_GRS" + standard_ragrs = "Standard_RAGRS" + standard_zrs = "Standard_ZRS" + premium_lrs = "Premium_LRS" + premium_zrs = "Premium_ZRS" + + +class SkuTier(str, Enum): + + standard = "Standard" + premium = "Premium" + + +class Kind(str, Enum): + + storage = "Storage" + storage_v2 = "StorageV2" + blob_storage = "BlobStorage" + file_storage = "FileStorage" + block_blob_storage = "BlockBlobStorage" + + +class Reason(str, Enum): + + account_name_invalid = "AccountNameInvalid" + already_exists = "AlreadyExists" + + +class KeySource(str, Enum): + + microsoft_storage = "Microsoft.Storage" + microsoft_keyvault = "Microsoft.Keyvault" + + +class Action(str, Enum): + + allow = "Allow" + + +class State(str, Enum): + + provisioning = "provisioning" + deprovisioning = "deprovisioning" + succeeded = "succeeded" + failed = "failed" + network_source_deleted = "networkSourceDeleted" + + +class Bypass(str, Enum): + + none = "None" + logging = "Logging" + metrics = "Metrics" + azure_services = "AzureServices" + + +class DefaultAction(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class AccessTier(str, Enum): + + hot = "Hot" + cool = "Cool" + + +class ProvisioningState(str, Enum): + + creating = "Creating" + resolving_dns = "ResolvingDNS" + succeeded = "Succeeded" + + +class AccountStatus(str, Enum): + + available = "available" + unavailable = "unavailable" + + +class KeyPermission(str, Enum): + + read = "Read" + full = "Full" + + +class UsageUnit(str, Enum): + + count = "Count" + bytes = "Bytes" + seconds = "Seconds" + percent = "Percent" + counts_per_second = "CountsPerSecond" + bytes_per_second = "BytesPerSecond" + + +class Services(str, Enum): + + b = "b" + q = "q" + t = "t" + f = "f" + + +class SignedResourceTypes(str, Enum): + + s = "s" + c = "c" + o = "o" + + +class Permissions(str, Enum): + + r = "r" + d = "d" + w = "w" + l = "l" + a = "a" + c = "c" + u = "u" + p = "p" + + +class HttpProtocol(str, Enum): + + httpshttp = "https,http" + https = "https" + + +class SignedResource(str, Enum): + + b = "b" + c = "c" + f = "f" + s = "s" + + +class PublicAccess(str, Enum): + + container = "Container" + blob = "Blob" + none = "None" + + +class LeaseStatus(str, Enum): + + locked = "Locked" + unlocked = "Unlocked" + + +class LeaseState(str, Enum): + + available = "Available" + leased = "Leased" + expired = "Expired" + breaking = "Breaking" + broken = "Broken" + + +class LeaseDuration(str, Enum): + + infinite = "Infinite" + fixed = "Fixed" + + +class ImmutabilityPolicyState(str, Enum): + + locked = "Locked" + unlocked = "Unlocked" + + +class ImmutabilityPolicyUpdateType(str, Enum): + + put = "put" + lock = "lock" + extend = "extend" diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tag_property.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tag_property.py new file mode 100644 index 000000000000..3b879061fd2b --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tag_property.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagProperty(Model): + """A tag of the LegalHold of a blob container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar tag: The tag value. + :vartype tag: str + :ivar timestamp: Returns the date and time the tag was added. + :vartype timestamp: datetime + :ivar object_identifier: Returns the Object ID of the user who added the + tag. + :vartype object_identifier: str + :ivar tenant_id: Returns the Tenant ID that issued the token for the user + who added the tag. + :vartype tenant_id: str + :ivar upn: Returns the User Principal Name of the user who added the tag. + :vartype upn: str + """ + + _validation = { + 'tag': {'readonly': True}, + 'timestamp': {'readonly': True}, + 'object_identifier': {'readonly': True}, + 'tenant_id': {'readonly': True}, + 'upn': {'readonly': True}, + } + + _attribute_map = { + 'tag': {'key': 'tag', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'object_identifier': {'key': 'objectIdentifier', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'upn': {'key': 'upn', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TagProperty, self).__init__(**kwargs) + self.tag = None + self.timestamp = None + self.object_identifier = None + self.tenant_id = None + self.upn = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tag_property_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tag_property_py3.py new file mode 100644 index 000000000000..22aaf6cb82ba --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tag_property_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TagProperty(Model): + """A tag of the LegalHold of a blob container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar tag: The tag value. + :vartype tag: str + :ivar timestamp: Returns the date and time the tag was added. + :vartype timestamp: datetime + :ivar object_identifier: Returns the Object ID of the user who added the + tag. + :vartype object_identifier: str + :ivar tenant_id: Returns the Tenant ID that issued the token for the user + who added the tag. + :vartype tenant_id: str + :ivar upn: Returns the User Principal Name of the user who added the tag. + :vartype upn: str + """ + + _validation = { + 'tag': {'readonly': True}, + 'timestamp': {'readonly': True}, + 'object_identifier': {'readonly': True}, + 'tenant_id': {'readonly': True}, + 'upn': {'readonly': True}, + } + + _attribute_map = { + 'tag': {'key': 'tag', 'type': 'str'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'object_identifier': {'key': 'objectIdentifier', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'upn': {'key': 'upn', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(TagProperty, self).__init__(**kwargs) + self.tag = None + self.timestamp = None + self.object_identifier = None + self.tenant_id = None + self.upn = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tracked_resource.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tracked_resource.py new file mode 100644 index 000000000000..27ab94c7a8dd --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tracked_resource.py @@ -0,0 +1,55 @@ +# 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 .resource import Resource + + +class TrackedResource(Resource): + """The resource model definition for a ARM tracked top level resource. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TrackedResource, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + self.location = kwargs.get('location', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tracked_resource_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tracked_resource_py3.py new file mode 100644 index 000000000000..b28cc1859448 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/tracked_resource_py3.py @@ -0,0 +1,55 @@ +# 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 .resource_py3 import Resource + + +class TrackedResource(Resource): + """The resource model definition for a ARM tracked top level resource. + + 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: Fully qualified resource Id for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + :vartype id: str + :ivar name: The name of the resource + :vartype name: str + :ivar type: The type of the resource. Ex- + Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param location: Required. The geo-location where the resource lives + :type location: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'location': {'key': 'location', 'type': 'str'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(TrackedResource, self).__init__(**kwargs) + self.tags = tags + self.location = location diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/update_history_property.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/update_history_property.py new file mode 100644 index 000000000000..e8e07b3db664 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/update_history_property.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpdateHistoryProperty(Model): + """An update history of the ImmutabilityPolicy of a blob container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar update: The ImmutabilityPolicy update type of a blob container, + possible values include: put, lock and extend. Possible values include: + 'put', 'lock', 'extend' + :vartype update: str or + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyUpdateType + :ivar immutability_period_since_creation_in_days: The immutability period + for the blobs in the container since the policy creation, in days. + :vartype immutability_period_since_creation_in_days: int + :ivar timestamp: Returns the date and time the ImmutabilityPolicy was + updated. + :vartype timestamp: datetime + :ivar object_identifier: Returns the Object ID of the user who updated the + ImmutabilityPolicy. + :vartype object_identifier: str + :ivar tenant_id: Returns the Tenant ID that issued the token for the user + who updated the ImmutabilityPolicy. + :vartype tenant_id: str + :ivar upn: Returns the User Principal Name of the user who updated the + ImmutabilityPolicy. + :vartype upn: str + """ + + _validation = { + 'update': {'readonly': True}, + 'immutability_period_since_creation_in_days': {'readonly': True}, + 'timestamp': {'readonly': True}, + 'object_identifier': {'readonly': True}, + 'tenant_id': {'readonly': True}, + 'upn': {'readonly': True}, + } + + _attribute_map = { + 'update': {'key': 'update', 'type': 'str'}, + 'immutability_period_since_creation_in_days': {'key': 'immutabilityPeriodSinceCreationInDays', 'type': 'int'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'object_identifier': {'key': 'objectIdentifier', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'upn': {'key': 'upn', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UpdateHistoryProperty, self).__init__(**kwargs) + self.update = None + self.immutability_period_since_creation_in_days = None + self.timestamp = None + self.object_identifier = None + self.tenant_id = None + self.upn = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/update_history_property_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/update_history_property_py3.py new file mode 100644 index 000000000000..d503f9b91344 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/update_history_property_py3.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UpdateHistoryProperty(Model): + """An update history of the ImmutabilityPolicy of a blob container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar update: The ImmutabilityPolicy update type of a blob container, + possible values include: put, lock and extend. Possible values include: + 'put', 'lock', 'extend' + :vartype update: str or + ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicyUpdateType + :ivar immutability_period_since_creation_in_days: The immutability period + for the blobs in the container since the policy creation, in days. + :vartype immutability_period_since_creation_in_days: int + :ivar timestamp: Returns the date and time the ImmutabilityPolicy was + updated. + :vartype timestamp: datetime + :ivar object_identifier: Returns the Object ID of the user who updated the + ImmutabilityPolicy. + :vartype object_identifier: str + :ivar tenant_id: Returns the Tenant ID that issued the token for the user + who updated the ImmutabilityPolicy. + :vartype tenant_id: str + :ivar upn: Returns the User Principal Name of the user who updated the + ImmutabilityPolicy. + :vartype upn: str + """ + + _validation = { + 'update': {'readonly': True}, + 'immutability_period_since_creation_in_days': {'readonly': True}, + 'timestamp': {'readonly': True}, + 'object_identifier': {'readonly': True}, + 'tenant_id': {'readonly': True}, + 'upn': {'readonly': True}, + } + + _attribute_map = { + 'update': {'key': 'update', 'type': 'str'}, + 'immutability_period_since_creation_in_days': {'key': 'immutabilityPeriodSinceCreationInDays', 'type': 'int'}, + 'timestamp': {'key': 'timestamp', 'type': 'iso-8601'}, + 'object_identifier': {'key': 'objectIdentifier', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'upn': {'key': 'upn', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(UpdateHistoryProperty, self).__init__(**kwargs) + self.update = None + self.immutability_period_since_creation_in_days = None + self.timestamp = None + self.object_identifier = None + self.tenant_id = None + self.upn = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage.py new file mode 100644 index 000000000000..ca31da73d629 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """Describes Storage Resource Usage. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar unit: Gets the unit of measurement. Possible values include: + 'Count', 'Bytes', 'Seconds', 'Percent', 'CountsPerSecond', + 'BytesPerSecond' + :vartype unit: str or ~azure.mgmt.storage.v2018_07_01.models.UsageUnit + :ivar current_value: Gets the current count of the allocated resources in + the subscription. + :vartype current_value: int + :ivar limit: Gets the maximum count of the resources that can be allocated + in the subscription. + :vartype limit: int + :ivar name: Gets the name of the type of usage. + :vartype name: ~azure.mgmt.storage.v2018_07_01.models.UsageName + """ + + _validation = { + 'unit': {'readonly': True}, + 'current_value': {'readonly': True}, + 'limit': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'unit': {'key': 'unit', 'type': 'UsageUnit'}, + 'current_value': {'key': 'currentValue', 'type': 'int'}, + 'limit': {'key': 'limit', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + def __init__(self, **kwargs): + super(Usage, self).__init__(**kwargs) + self.unit = None + self.current_value = None + self.limit = None + self.name = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_name.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_name.py new file mode 100644 index 000000000000..e4082bf52384 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_name.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageName(Model): + """The usage names that can be used; currently limited to StorageAccount. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: Gets a string describing the resource name. + :vartype value: str + :ivar localized_value: Gets a localized string describing the resource + name. + :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): + super(UsageName, self).__init__(**kwargs) + self.value = None + self.localized_value = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_name_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_name_py3.py new file mode 100644 index 000000000000..f519bb5072b1 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_name_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class UsageName(Model): + """The usage names that can be used; currently limited to StorageAccount. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar value: Gets a string describing the resource name. + :vartype value: str + :ivar localized_value: Gets a localized string describing the resource + name. + :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(UsageName, self).__init__(**kwargs) + self.value = None + self.localized_value = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_paged.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_paged.py new file mode 100644 index 000000000000..d5b106fd2757 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class UsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`Usage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Usage]'} + } + + def __init__(self, *args, **kwargs): + + super(UsagePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_py3.py new file mode 100644 index 000000000000..7115cd739ce7 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/usage_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Usage(Model): + """Describes Storage Resource Usage. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar unit: Gets the unit of measurement. Possible values include: + 'Count', 'Bytes', 'Seconds', 'Percent', 'CountsPerSecond', + 'BytesPerSecond' + :vartype unit: str or ~azure.mgmt.storage.v2018_07_01.models.UsageUnit + :ivar current_value: Gets the current count of the allocated resources in + the subscription. + :vartype current_value: int + :ivar limit: Gets the maximum count of the resources that can be allocated + in the subscription. + :vartype limit: int + :ivar name: Gets the name of the type of usage. + :vartype name: ~azure.mgmt.storage.v2018_07_01.models.UsageName + """ + + _validation = { + 'unit': {'readonly': True}, + 'current_value': {'readonly': True}, + 'limit': {'readonly': True}, + 'name': {'readonly': True}, + } + + _attribute_map = { + 'unit': {'key': 'unit', 'type': 'UsageUnit'}, + 'current_value': {'key': 'currentValue', 'type': 'int'}, + 'limit': {'key': 'limit', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + def __init__(self, **kwargs) -> None: + super(Usage, self).__init__(**kwargs) + self.unit = None + self.current_value = None + self.limit = None + self.name = None diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/virtual_network_rule.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/virtual_network_rule.py new file mode 100644 index 000000000000..22e2c834dfc0 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/virtual_network_rule.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkRule(Model): + """Virtual Network rule. + + All required parameters must be populated in order to send to Azure. + + :param virtual_network_resource_id: Required. Resource ID of a subnet, for + example: + /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}. + :type virtual_network_resource_id: str + :param action: The action of virtual network rule. Possible values + include: 'Allow'. Default value: "Allow" . + :type action: str or ~azure.mgmt.storage.v2018_07_01.models.Action + :param state: Gets the state of virtual network rule. Possible values + include: 'provisioning', 'deprovisioning', 'succeeded', 'failed', + 'networkSourceDeleted' + :type state: str or ~azure.mgmt.storage.v2018_07_01.models.State + """ + + _validation = { + 'virtual_network_resource_id': {'required': True}, + } + + _attribute_map = { + 'virtual_network_resource_id': {'key': 'id', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'Action'}, + 'state': {'key': 'state', 'type': 'State'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkRule, self).__init__(**kwargs) + self.virtual_network_resource_id = kwargs.get('virtual_network_resource_id', None) + self.action = kwargs.get('action', "Allow") + self.state = kwargs.get('state', None) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/virtual_network_rule_py3.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/virtual_network_rule_py3.py new file mode 100644 index 000000000000..b1401da53ba4 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/models/virtual_network_rule_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class VirtualNetworkRule(Model): + """Virtual Network rule. + + All required parameters must be populated in order to send to Azure. + + :param virtual_network_resource_id: Required. Resource ID of a subnet, for + example: + /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}. + :type virtual_network_resource_id: str + :param action: The action of virtual network rule. Possible values + include: 'Allow'. Default value: "Allow" . + :type action: str or ~azure.mgmt.storage.v2018_07_01.models.Action + :param state: Gets the state of virtual network rule. Possible values + include: 'provisioning', 'deprovisioning', 'succeeded', 'failed', + 'networkSourceDeleted' + :type state: str or ~azure.mgmt.storage.v2018_07_01.models.State + """ + + _validation = { + 'virtual_network_resource_id': {'required': True}, + } + + _attribute_map = { + 'virtual_network_resource_id': {'key': 'id', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'Action'}, + 'state': {'key': 'state', 'type': 'State'}, + } + + def __init__(self, *, virtual_network_resource_id: str, action="Allow", state=None, **kwargs) -> None: + super(VirtualNetworkRule, self).__init__(**kwargs) + self.virtual_network_resource_id = virtual_network_resource_id + self.action = action + self.state = state diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/__init__.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/__init__.py new file mode 100644 index 000000000000..455c0dc48e1c --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/__init__.py @@ -0,0 +1,26 @@ +# 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 .operations import Operations +from .skus_operations import SkusOperations +from .storage_accounts_operations import StorageAccountsOperations +from .usages_operations import UsagesOperations +from .blob_containers_operations import BlobContainersOperations +from .management_policies_operations import ManagementPoliciesOperations + +__all__ = [ + 'Operations', + 'SkusOperations', + 'StorageAccountsOperations', + 'UsagesOperations', + 'BlobContainersOperations', + 'ManagementPoliciesOperations', +] diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/blob_containers_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/blob_containers_operations.py new file mode 100644 index 000000000000..cb251bb1aec7 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/blob_containers_operations.py @@ -0,0 +1,1044 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class BlobContainersOperations(object): + """BlobContainersOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for this operation. Constant value: "2018-07-01". + :ivar immutability_policy_name: The name of the blob container immutabilityPolicy within the specified storage account. ImmutabilityPolicy Name must be 'default'. Constant value: "default". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + self.immutability_policy_name = "default" + + self.config = config + + def list( + self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): + """Lists all containers and does not support a prefix like data plane. + Also SRP today does not return continuation token. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ListContainerItems or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.ListContainerItems or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ListContainerItems', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers'} + + def create( + self, resource_group_name, account_name, container_name, public_access=None, metadata=None, custom_headers=None, raw=False, **operation_config): + """Creates a new container under the specified account as described by + request body. The container resource includes metadata and properties + for that container. It does not include a list of the blobs contained + by the container. . + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param public_access: Specifies whether data in the container may be + accessed publicly and the level of access. Possible values include: + 'Container', 'Blob', 'None' + :type public_access: str or + ~azure.mgmt.storage.v2018_07_01.models.PublicAccess + :param metadata: A name-value pair to associate with the container as + metadata. + :type metadata: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BlobContainer or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.BlobContainer or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + blob_container = models.BlobContainer(public_access=public_access, metadata=metadata) + + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(blob_container, 'BlobContainer') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('BlobContainer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}'} + + def update( + self, resource_group_name, account_name, container_name, public_access=None, metadata=None, custom_headers=None, raw=False, **operation_config): + """Updates container properties as specified in request body. Properties + not mentioned in the request will be unchanged. Update fails if the + specified container doesn't already exist. . + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param public_access: Specifies whether data in the container may be + accessed publicly and the level of access. Possible values include: + 'Container', 'Blob', 'None' + :type public_access: str or + ~azure.mgmt.storage.v2018_07_01.models.PublicAccess + :param metadata: A name-value pair to associate with the container as + metadata. + :type metadata: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BlobContainer or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.BlobContainer or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + blob_container = models.BlobContainer(public_access=public_access, metadata=metadata) + + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(blob_container, 'BlobContainer') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BlobContainer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}'} + + def get( + self, resource_group_name, account_name, container_name, custom_headers=None, raw=False, **operation_config): + """Gets properties of a specified container. . + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BlobContainer or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.BlobContainer or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BlobContainer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}'} + + def delete( + self, resource_group_name, account_name, container_name, custom_headers=None, raw=False, **operation_config): + """Deletes specified container under its account. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}'} + + def set_legal_hold( + self, resource_group_name, account_name, container_name, tags, custom_headers=None, raw=False, **operation_config): + """Sets legal hold tags. Setting the same tag results in an idempotent + operation. SetLegalHold follows an append pattern and does not clear + out the existing tags that are not specified in the request. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param tags: Each tag should be 3 to 23 alphanumeric characters and is + normalized to lower case at SRP. + :type tags: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LegalHold or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.LegalHold or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + legal_hold = models.LegalHold(tags=tags) + + # Construct URL + url = self.set_legal_hold.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(legal_hold, 'LegalHold') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LegalHold', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + set_legal_hold.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold'} + + def clear_legal_hold( + self, resource_group_name, account_name, container_name, tags, custom_headers=None, raw=False, **operation_config): + """Clears legal hold tags. Clearing the same or non-existent tag results + in an idempotent operation. ClearLegalHold clears out only the + specified tags in the request. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param tags: Each tag should be 3 to 23 alphanumeric characters and is + normalized to lower case at SRP. + :type tags: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LegalHold or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.LegalHold or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + legal_hold = models.LegalHold(tags=tags) + + # Construct URL + url = self.clear_legal_hold.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(legal_hold, 'LegalHold') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LegalHold', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + clear_legal_hold.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold'} + + def create_or_update_immutability_policy( + self, resource_group_name, account_name, container_name, immutability_period_since_creation_in_days, if_match=None, custom_headers=None, raw=False, **operation_config): + """Creates or updates an unlocked immutability policy. ETag in If-Match is + honored if given but not required for this operation. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param immutability_period_since_creation_in_days: The immutability + period for the blobs in the container since the policy creation, in + days. + :type immutability_period_since_creation_in_days: int + :param if_match: The entity state (ETag) version of the immutability + policy to update. A value of "*" can be used to apply the operation + only if the immutability policy already exists. If omitted, this + operation will always be applied. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ImmutabilityPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = None + if immutability_period_since_creation_in_days is not None: + parameters = models.ImmutabilityPolicy(immutability_period_since_creation_in_days=immutability_period_since_creation_in_days) + + # Construct URL + url = self.create_or_update_immutability_policy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'immutabilityPolicyName': self._serialize.url("self.immutability_policy_name", self.immutability_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if parameters is not None: + body_content = self._serialize.body(parameters, 'ImmutabilityPolicy') + else: + body_content = None + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ImmutabilityPolicy', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + create_or_update_immutability_policy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}'} + + def get_immutability_policy( + self, resource_group_name, account_name, container_name, if_match=None, custom_headers=None, raw=False, **operation_config): + """Gets the existing immutability policy along with the corresponding ETag + in response headers and body. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param if_match: The entity state (ETag) version of the immutability + policy to update. A value of "*" can be used to apply the operation + only if the immutability policy already exists. If omitted, this + operation will always be applied. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ImmutabilityPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_immutability_policy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'immutabilityPolicyName': self._serialize.url("self.immutability_policy_name", self.immutability_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if if_match is not None: + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ImmutabilityPolicy', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + get_immutability_policy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}'} + + def delete_immutability_policy( + self, resource_group_name, account_name, container_name, if_match, custom_headers=None, raw=False, **operation_config): + """Aborts an unlocked immutability policy. The response of delete has + immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is + required for this operation. Deleting a locked immutability policy is + not allowed, only way is to delete the container after deleting all + blobs inside the container. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param if_match: The entity state (ETag) version of the immutability + policy to update. A value of "*" can be used to apply the operation + only if the immutability policy already exists. If omitted, this + operation will always be applied. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ImmutabilityPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete_immutability_policy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'immutabilityPolicyName': self._serialize.url("self.immutability_policy_name", self.immutability_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ImmutabilityPolicy', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + delete_immutability_policy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}'} + + def lock_immutability_policy( + self, resource_group_name, account_name, container_name, if_match, custom_headers=None, raw=False, **operation_config): + """Sets the ImmutabilityPolicy to Locked state. The only action allowed on + a Locked policy is ExtendImmutabilityPolicy action. ETag in If-Match is + required for this operation. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param if_match: The entity state (ETag) version of the immutability + policy to update. A value of "*" can be used to apply the operation + only if the immutability policy already exists. If omitted, this + operation will always be applied. + :type if_match: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ImmutabilityPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.lock_immutability_policy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ImmutabilityPolicy', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + lock_immutability_policy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/lock'} + + def extend_immutability_policy( + self, resource_group_name, account_name, container_name, if_match, immutability_period_since_creation_in_days, custom_headers=None, raw=False, **operation_config): + """Extends the immutabilityPeriodSinceCreationInDays of a locked + immutabilityPolicy. The only action allowed on a Locked policy will be + this action. ETag in If-Match is required for this operation. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param container_name: The name of the blob container within the + specified storage account. Blob container names must be between 3 and + 63 characters in length and use numbers, lower-case letters and dash + (-) only. Every dash (-) character must be immediately preceded and + followed by a letter or number. + :type container_name: str + :param if_match: The entity state (ETag) version of the immutability + policy to update. A value of "*" can be used to apply the operation + only if the immutability policy already exists. If omitted, this + operation will always be applied. + :type if_match: str + :param immutability_period_since_creation_in_days: The immutability + period for the blobs in the container since the policy creation, in + days. + :type immutability_period_since_creation_in_days: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ImmutabilityPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.ImmutabilityPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = None + if immutability_period_since_creation_in_days is not None: + parameters = models.ImmutabilityPolicy(immutability_period_since_creation_in_days=immutability_period_since_creation_in_days) + + # Construct URL + url = self.extend_immutability_policy.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'containerName': self._serialize.url("container_name", container_name, 'str', max_length=63, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + header_parameters['If-Match'] = self._serialize.header("if_match", if_match, 'str') + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if parameters is not None: + body_content = self._serialize.body(parameters, 'ImmutabilityPolicy') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + header_dict = {} + + if response.status_code == 200: + deserialized = self._deserialize('ImmutabilityPolicy', response) + header_dict = { + 'ETag': 'str', + } + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response.add_headers(header_dict) + return client_raw_response + + return deserialized + extend_immutability_policy.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/extend'} diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/management_policies_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/management_policies_operations.py new file mode 100644 index 000000000000..d81c7619fee4 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/management_policies_operations.py @@ -0,0 +1,246 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ManagementPoliciesOperations(object): + """ManagementPoliciesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for this operation. Constant value: "2018-03-01-preview". + :ivar management_policy_name: The name of the Storage Account Management Policy. It should always be 'default'. Constant value: "default". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-03-01-preview" + self.management_policy_name = "default" + + self.config = config + + def get( + self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): + """Gets the data policy rules associated with the specified storage + account. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageAccountManagementPolicies or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.StorageAccountManagementPolicies + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1), + 'managementPolicyName': self._serialize.url("self.management_policy_name", self.management_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageAccountManagementPolicies', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}'} + + def create_or_update( + self, resource_group_name, account_name, policy=None, custom_headers=None, raw=False, **operation_config): + """Sets the data policy rules associated with the specified storage + account. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param policy: The Storage Account ManagementPolicies Rules, in JSON + format. See more details in: + https://docs.microsoft.com/en-us/azure/storage/common/storage-lifecycle-managment-concepts. + :type policy: object + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageAccountManagementPolicies or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.StorageAccountManagementPolicies + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + properties = models.ManagementPoliciesRulesSetParameter(policy=policy) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1), + 'managementPolicyName': self._serialize.url("self.management_policy_name", self.management_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(properties, 'ManagementPoliciesRulesSetParameter') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageAccountManagementPolicies', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}'} + + def delete( + self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): + """Deletes the data policy rules associated with the specified storage + account. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1), + 'managementPolicyName': self._serialize.url("self.management_policy_name", self.management_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}'} diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/operations.py new file mode 100644 index 000000000000..e10e2242f7fc --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/operations.py @@ -0,0 +1,98 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for this operation. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available Storage Rest API operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.OperationPaged[~azure.mgmt.storage.v2018_07_01.models.Operation] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/providers/Microsoft.Storage/operations'} diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/skus_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/skus_operations.py new file mode 100644 index 000000000000..248eaa0bdeca --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/skus_operations.py @@ -0,0 +1,103 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class SkusOperations(object): + """SkusOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for this operation. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists the available SKUs supported by Microsoft.Storage for given + subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Sku + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.SkuPaged[~azure.mgmt.storage.v2018_07_01.models.Sku] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.SkuPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.SkuPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Storage/skus'} diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/storage_accounts_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/storage_accounts_operations.py new file mode 100644 index 000000000000..7b34e2cada26 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/storage_accounts_operations.py @@ -0,0 +1,842 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class StorageAccountsOperations(object): + """StorageAccountsOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for this operation. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def check_name_availability( + self, name, custom_headers=None, raw=False, **operation_config): + """Checks that the storage account name is valid and is not already in + use. + + :param name: The storage account name. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CheckNameAvailabilityResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.CheckNameAvailabilityResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + account_name = models.StorageAccountCheckNameAvailabilityParameters(name=name) + + # Construct URL + url = self.check_name_availability.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(account_name, 'StorageAccountCheckNameAvailabilityParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CheckNameAvailabilityResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Storage/checkNameAvailability'} + + + def _create_initial( + self, resource_group_name, account_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageAccountCreateParameters') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageAccount', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, account_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Asynchronously creates a new storage account with the specified + parameters. If an account is already created and a subsequent create + request is issued with different properties, the account properties + will be updated. If an account is already created and a subsequent + create or update request is issued with the exact same set of + properties, the request will succeed. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param parameters: The parameters to provide for the created account. + :type parameters: + ~azure.mgmt.storage.v2018_07_01.models.StorageAccountCreateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns StorageAccount or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.storage.v2018_07_01.models.StorageAccount] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.storage.v2018_07_01.models.StorageAccount]] + :raises: :class:`CloudError` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + account_name=account_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('StorageAccount', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}'} + + def delete( + self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): + """Deletes a storage account in Microsoft Azure. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}'} + + def get_properties( + self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): + """Returns the properties for the specified storage account including but + not limited to name, SKU name, location, and account status. The + ListKeys operation should be used to retrieve storage keys. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageAccount or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.StorageAccount or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_properties.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageAccount', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_properties.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}'} + + def update( + self, resource_group_name, account_name, parameters, custom_headers=None, raw=False, **operation_config): + """The update operation can be used to update the SKU, encryption, access + tier, or tags for a storage account. It can also be used to map the + account to a custom domain. Only one custom domain is supported per + storage account; the replacement/change of custom domain is not + supported. In order to replace an old custom domain, the old value must + be cleared/unregistered before a new value can be set. The update of + multiple properties is supported. This call does not change the storage + keys for the account. If you want to change the storage account keys, + use the regenerate keys operation. The location and name of the storage + account cannot be changed after creation. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param parameters: The parameters to provide for the updated account. + :type parameters: + ~azure.mgmt.storage.v2018_07_01.models.StorageAccountUpdateParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageAccount or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.StorageAccount or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'StorageAccountUpdateParameters') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageAccount', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the storage accounts available under the subscription. Note + that storage keys are not returned; use the ListKeys operation for + this. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of StorageAccount + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.StorageAccountPaged[~azure.mgmt.storage.v2018_07_01.models.StorageAccount] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.StorageAccountPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.StorageAccountPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Storage/storageAccounts'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the storage accounts available under the given resource + group. Note that storage keys are not returned; use the ListKeys + operation for this. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of StorageAccount + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.StorageAccountPaged[~azure.mgmt.storage.v2018_07_01.models.StorageAccount] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.StorageAccountPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.StorageAccountPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts'} + + def list_keys( + self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config): + """Lists the access keys for the specified storage account. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageAccountListKeysResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.StorageAccountListKeysResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_keys.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageAccountListKeysResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_keys.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listKeys'} + + def regenerate_key( + self, resource_group_name, account_name, key_name, custom_headers=None, raw=False, **operation_config): + """Regenerates one of the access keys for the specified storage account. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param key_name: The name of storage keys that want to be regenerated, + possible vaules are key1, key2. + :type key_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: StorageAccountListKeysResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.StorageAccountListKeysResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + regenerate_key1 = models.StorageAccountRegenerateKeyParameters(key_name=key_name) + + # Construct URL + url = self.regenerate_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(regenerate_key1, 'StorageAccountRegenerateKeyParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('StorageAccountListKeysResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + regenerate_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey'} + + def list_account_sas( + self, resource_group_name, account_name, parameters, custom_headers=None, raw=False, **operation_config): + """List SAS credentials of a storage account. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param parameters: The parameters to provide to list SAS credentials + for the storage account. + :type parameters: + ~azure.mgmt.storage.v2018_07_01.models.AccountSasParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ListAccountSasResponse or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.ListAccountSasResponse + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_account_sas.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AccountSasParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ListAccountSasResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_account_sas.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListAccountSas'} + + def list_service_sas( + self, resource_group_name, account_name, parameters, custom_headers=None, raw=False, **operation_config): + """List service SAS credentials of a specific resource. + + :param resource_group_name: The name of the resource group within the + user's subscription. The name is case insensitive. + :type resource_group_name: str + :param account_name: The name of the storage account within the + specified resource group. Storage account names must be between 3 and + 24 characters in length and use numbers and lower-case letters only. + :type account_name: str + :param parameters: The parameters to provide to list service SAS + credentials. + :type parameters: + ~azure.mgmt.storage.v2018_07_01.models.ServiceSasParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ListServiceSasResponse or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.storage.v2018_07_01.models.ListServiceSasResponse + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_service_sas.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+$'), + 'accountName': self._serialize.url("account_name", account_name, 'str', max_length=24, min_length=3), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1) + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServiceSasParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ListServiceSasResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_service_sas.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListServiceSas'} diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/usages_operations.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/usages_operations.py new file mode 100644 index 000000000000..9f16af2fc35d --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/operations/usages_operations.py @@ -0,0 +1,106 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class UsagesOperations(object): + """UsagesOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: The API version to use for this operation. Constant value: "2018-07-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-07-01" + + self.config = config + + def list_by_location( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets the current usage count and the limit for the resources of the + location under the subscription. + + :param location: The location of the Azure Storage resource. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Usage + :rtype: + ~azure.mgmt.storage.v2018_07_01.models.UsagePaged[~azure.mgmt.storage.v2018_07_01.models.Usage] + :raises: :class:`CloudError` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_location.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str', min_length=1), + 'location': self._serialize.url("location", location, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1) + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.UsagePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.UsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_location.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/usages'} diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/storage_management_client.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/storage_management_client.py new file mode 100644 index 000000000000..9158bf02e751 --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/storage_management_client.py @@ -0,0 +1,105 @@ +# 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.service_client import SDKClient +from msrest import Serializer, Deserializer +from msrestazure import AzureConfiguration +from .version import VERSION +from .operations.operations import Operations +from .operations.skus_operations import SkusOperations +from .operations.storage_accounts_operations import StorageAccountsOperations +from .operations.usages_operations import UsagesOperations +from .operations.blob_containers_operations import BlobContainersOperations +from .operations.management_policies_operations import ManagementPoliciesOperations +from . import models + + +class StorageManagementClientConfiguration(AzureConfiguration): + """Configuration for StorageManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The ID of the target subscription. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(StorageManagementClientConfiguration, self).__init__(base_url) + + self.add_user_agent('azure-mgmt-storage/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id + + +class StorageManagementClient(SDKClient): + """The Azure Storage Management API. + + :ivar config: Configuration for client. + :vartype config: StorageManagementClientConfiguration + + :ivar operations: Operations operations + :vartype operations: azure.mgmt.storage.v2018_07_01.operations.Operations + :ivar skus: Skus operations + :vartype skus: azure.mgmt.storage.v2018_07_01.operations.SkusOperations + :ivar storage_accounts: StorageAccounts operations + :vartype storage_accounts: azure.mgmt.storage.v2018_07_01.operations.StorageAccountsOperations + :ivar usages: Usages operations + :vartype usages: azure.mgmt.storage.v2018_07_01.operations.UsagesOperations + :ivar blob_containers: BlobContainers operations + :vartype blob_containers: azure.mgmt.storage.v2018_07_01.operations.BlobContainersOperations + :ivar management_policies: ManagementPolicies operations + :vartype management_policies: azure.mgmt.storage.v2018_07_01.operations.ManagementPoliciesOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The ID of the target subscription. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = StorageManagementClientConfiguration(credentials, subscription_id, base_url) + super(StorageManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.skus = SkusOperations( + self._client, self.config, self._serialize, self._deserialize) + self.storage_accounts = StorageAccountsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.usages = UsagesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.blob_containers = BlobContainersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.management_policies = ManagementPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/version.py b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/version.py new file mode 100644 index 000000000000..53a203f32aaf --- /dev/null +++ b/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01/version.py @@ -0,0 +1,13 @@ +# 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. +# -------------------------------------------------------------------------- + +VERSION = "" + diff --git a/azure-mgmt-storage/azure/mgmt/storage/version.py b/azure-mgmt-storage/azure/mgmt/storage/version.py index 88729157c488..63bcd0444b12 100644 --- a/azure-mgmt-storage/azure/mgmt/storage/version.py +++ b/azure-mgmt-storage/azure/mgmt/storage/version.py @@ -5,4 +5,4 @@ # license information. # -------------------------------------------------------------------------- -VERSION = "2.0.0" +VERSION = "3.0.0" diff --git a/azure-mgmt-storage/azure_bdist_wheel.py b/azure-mgmt-storage/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-storage/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-storage/setup.cfg b/azure-mgmt-storage/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-storage/setup.cfg +++ b/azure-mgmt-storage/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-storage/setup.py b/azure-mgmt-storage/setup.py index 67df7c1540bd..09b444b48d6c 100644 --- a/azure-mgmt-storage/setup.py +++ b/azure-mgmt-storage/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-storage" @@ -76,10 +70,18 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ + 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', - 'azure-common~=1.1,>=1.1.10', + 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-storage/tests/recordings/test_mgmt_storage.test_storage_accounts.yaml b/azure-mgmt-storage/tests/recordings/test_mgmt_storage.test_storage_accounts.yaml index e7453b78395d..d23975b1b652 100644 --- a/azure-mgmt-storage/tests/recordings/test_mgmt_storage.test_storage_accounts.yaml +++ b/azure-mgmt-storage/tests/recordings/test_mgmt_storage.test_storage_accounts.yaml @@ -7,18 +7,18 @@ interactions: Connection: [keep-alive] Content-Length: ['77'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/checkNameAvailability?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/checkNameAvailability?api-version=2018-07-01 response: body: {string: '{"nameAvailable":true}'} headers: cache-control: [no-cache] content-length: ['22'] content-type: [application/json] - date: ['Fri, 11 May 2018 18:03:46 GMT'] + date: ['Thu, 27 Sep 2018 18:10:57 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -30,27 +30,27 @@ interactions: status: {code: 200, message: OK} - request: body: '{"sku": {"name": "Standard_LRS"}, "kind": "Storage", "location": "westus", - "properties": {"supportsHttpsTrafficOnly": false}}' + "properties": {"supportsHttpsTrafficOnly": false, "isHnsEnabled": false}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Length: ['125'] + Content-Length: ['148'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a?api-version=2018-07-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] content-type: [text/plain; charset=utf-8] - date: ['Fri, 11 May 2018 18:03:48 GMT'] + date: ['Thu, 27 Sep 2018 18:10:58 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/000544cc-9ef1-439d-89e8-373c9fe4f64d?monitor=true&api-version=2018-02-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/2df9768b-c3b4-48ed-9da8-c6a8715212b7?monitor=true&api-version=2018-07-01'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0'] @@ -64,17 +64,67 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/000544cc-9ef1-439d-89e8-373c9fe4f64d?monitor=true&api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/2df9768b-c3b4-48ed-9da8-c6a8715212b7?monitor=true&api-version=2018-07-01 response: - body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-11T18:03:48.5381511Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} + body: {string: ''} + headers: + cache-control: [no-cache] + content-length: ['0'] + content-type: [text/plain; charset=utf-8] + date: ['Thu, 27 Sep 2018 18:11:15 GMT'] + expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/2df9768b-c3b4-48ed-9da8-c6a8715212b7?monitor=true&api-version=2018-07-01'] + pragma: [no-cache] + server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 + Microsoft-HTTPAPI/2.0'] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/2df9768b-c3b4-48ed-9da8-c6a8715212b7?monitor=true&api-version=2018-07-01 + response: + body: {string: ''} headers: cache-control: [no-cache] - content-length: ['1179'] + content-length: ['0'] + content-type: [text/plain; charset=utf-8] + date: ['Thu, 27 Sep 2018 18:11:18 GMT'] + expires: ['-1'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/2df9768b-c3b4-48ed-9da8-c6a8715212b7?monitor=true&api-version=2018-07-01'] + pragma: [no-cache] + server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 + Microsoft-HTTPAPI/2.0'] + strict-transport-security: [max-age=31536000; includeSubDomains] + x-content-type-options: [nosniff] + status: {code: 202, message: Accepted} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/westus/asyncoperations/2df9768b-c3b4-48ed-9da8-c6a8715212b7?monitor=true&api-version=2018-07-01 + response: + body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-09-27T18:10:58.3451412Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} + headers: + cache-control: [no-cache] + content-length: ['1200'] content-type: [application/json] - date: ['Fri, 11 May 2018 18:04:06 GMT'] + date: ['Thu, 27 Sep 2018 18:11:22 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -90,19 +140,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a?api-version=2018-07-01 response: - body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-11T18:03:48.5381511Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} + body: {string: '{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-09-27T18:10:58.3451412Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} headers: cache-control: [no-cache] - content-length: ['1179'] + content-length: ['1200'] content-type: [application/json] - date: ['Fri, 11 May 2018 18:04:06 GMT'] + date: ['Thu, 27 Sep 2018 18:11:22 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -119,19 +168,18 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a/listKeys?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a/listKeys?api-version=2018-07-01 response: - body: {string: '{"keys":[{"keyName":"key1","value":"l2CRy4Wij++CAbDZ+iMjGqoGduAcEqIoKP3opSqc+RV/3jKTrspJVvDqvlzjVqEH/zS9yoZoYbqYvFM5eUheYQ==","permissions":"FULL"},{"keyName":"key2","value":"j3EeTZL2yrgSC25KU7ViA3hwwiQKsh6diRw1F5mA1a8gjGX8+VYOgiCdueor0gn1+OoTh70JhDvhkBRNTW22vA==","permissions":"FULL"}]}'} + body: {string: '{"keys":[{"keyName":"key1","value":"hGeduuyFkXOYTR5kAmxUgzbr2oYC1CJVhS9iwk1thfcEI5jSIabYAsgJ9aQvRrTWXcKWURHDLM3qfWFNj3xhJA==","permissions":"FULL"},{"keyName":"key2","value":"y4i6h3CpPIoMMEodfuyhaz7us0XuUaukNcBzI6lEGiLSZr2zLRGpQfnpKYBiEcixu4AUpzHUQSmIVdgA9JFl0w==","permissions":"FULL"}]}'} headers: cache-control: [no-cache] content-length: ['288'] content-type: [application/json] - date: ['Fri, 11 May 2018 18:04:07 GMT'] + date: ['Thu, 27 Sep 2018 18:11:23 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -140,7 +188,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: '{"keyName": "key1"}' @@ -150,18 +198,18 @@ interactions: Connection: [keep-alive] Content-Length: ['19'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: POST - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a/regenerateKey?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a/regenerateKey?api-version=2018-07-01 response: - body: {string: '{"keys":[{"keyName":"key1","value":"zk3m8DlVoFcqilPAA2VRQr17ZJ8PA/dyTbkrgiauEkUf23q/a6amZpswuSh8KvEnZzAV9T4Eyjz60/d7sEK53Q==","permissions":"FULL"},{"keyName":"key2","value":"j3EeTZL2yrgSC25KU7ViA3hwwiQKsh6diRw1F5mA1a8gjGX8+VYOgiCdueor0gn1+OoTh70JhDvhkBRNTW22vA==","permissions":"FULL"}]}'} + body: {string: '{"keys":[{"keyName":"key1","value":"a30TfeA3LJIb2/gz0uTMtoJ+aJNGEjYWA3FjcsRy2NAlZXzxwhJMo4YYHxriGkTUvl/VEj5eltlksgFx3jpc8w==","permissions":"FULL"},{"keyName":"key2","value":"y4i6h3CpPIoMMEodfuyhaz7us0XuUaukNcBzI6lEGiLSZr2zLRGpQfnpKYBiEcixu4AUpzHUQSmIVdgA9JFl0w==","permissions":"FULL"}]}'} headers: cache-control: [no-cache] content-length: ['288'] content-type: [application/json] - date: ['Fri, 11 May 2018 18:04:09 GMT'] + date: ['Thu, 27 Sep 2018 18:11:23 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -170,7 +218,7 @@ interactions: transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 200, message: OK} - request: body: null @@ -178,19 +226,18 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts?api-version=2018-07-01 response: - body: {string: '{"value":[{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-11T18:03:48.5381511Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}]}'} + body: {string: '{"value":[{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-09-27T18:10:58.3451412Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}]}'} headers: cache-control: [no-cache] - content-length: ['1191'] + content-length: ['1212'] content-type: [application/json] - date: ['Fri, 11 May 2018 18:04:10 GMT'] + date: ['Thu, 27 Sep 2018 18:11:23 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -206,26 +253,26 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/storageAccounts?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/storageAccounts?api-version=2018-07-01 response: - body: {string: '{"value":[{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-11T18:03:48.5381511Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitestlab1/providers/Microsoft.Storage/storageAccounts/acliautomationlab8902","name":"acliautomationlab8902","type":"Microsoft.Storage/storageAccounts","location":"southcentralus","tags":{"hidden-DevTestLabs-LabUId":"ca9ec547-32c5-422d-b3d2-25906ed71959"},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T16:51:47.2662871Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T16:51:47.2662871Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T16:51:47.2194106Z","primaryEndpoints":{"web":"https://acliautomationlab8902.web.core.windows.net/","blob":"https://acliautomationlab8902.blob.core.windows.net/","queue":"https://acliautomationlab8902.queue.core.windows.net/","table":"https://acliautomationlab8902.table.core.windows.net/","file":"https://acliautomationlab8902.file.core.windows.net/"},"primaryLocation":"southcentralus","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup2/providers/Microsoft.Storage/storageAccounts/wilxstorage0","name":"wilxstorage0","type":"Microsoft.Storage/storageAccounts","location":"westus2","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-13T01:05:28.4648959Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-13T01:05:28.4648959Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-04-13T01:05:28.4023820Z","primaryEndpoints":{"web":"https://wilxstorage0.z5.web.core.windows.net/","blob":"https://wilxstorage0.blob.core.windows.net/","queue":"https://wilxstorage0.queue.core.windows.net/","table":"https://wilxstorage0.table.core.windows.net/","file":"https://wilxstorage0.file.core.windows.net/"},"primaryLocation":"westus2","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgmr6jo34yofyafj3n6gjbhrgmrd6pwgguthc2u235qfle6y6ztyzrlkuqn544s7cop/providers/Microsoft.Storage/storageAccounts/clitestnlmd52jlcmr4ce7b4","name":"clitestnlmd52jlcmr4ce7b4","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T20:14:07.3500611Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T20:14:07.3500611Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T20:14:07.3188286Z","primaryEndpoints":{"web":"https://clitestnlmd52jlcmr4ce7b4.web.core.windows.net/","blob":"https://clitestnlmd52jlcmr4ce7b4.blob.core.windows.net/","queue":"https://clitestnlmd52jlcmr4ce7b4.queue.core.windows.net/","table":"https://clitestnlmd52jlcmr4ce7b4.table.core.windows.net/","file":"https://clitestnlmd52jlcmr4ce7b4.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup3/providers/Microsoft.Storage/storageAccounts/wilxstorageworm","name":"wilxstorageworm","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-13T22:36:53.1534839Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-13T22:36:53.1534839Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-13T22:36:53.0909769Z","primaryEndpoints":{"web":"https://wilxstorageworm.web.core.windows.net/","blob":"https://wilxstorageworm.blob.core.windows.net/","queue":"https://wilxstorageworm.queue.core.windows.net/","table":"https://wilxstorageworm.table.core.windows.net/","file":"https://wilxstorageworm.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available","secondaryLocation":"centraluseuap","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://wilxstorageworm-secondary.web.core.windows.net/","blob":"https://wilxstorageworm-secondary.blob.core.windows.net/","queue":"https://wilxstorageworm-secondary.queue.core.windows.net/","table":"https://wilxstorageworm-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg326oxnqqn33y3n42vz6x5xol5rvvw3z4o6tladwwtkmcntnsxhhxxtddtrxwm2edj/providers/Microsoft.Storage/storageAccounts/clitestjwzkdsfuou3niutbd","name":"clitestjwzkdsfuou3niutbd","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T20:07:33.1021018Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T20:07:33.1021018Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T20:07:33.0552270Z","primaryEndpoints":{"web":"https://clitestjwzkdsfuou3niutbd.web.core.windows.net/","blob":"https://clitestjwzkdsfuou3niutbd.blob.core.windows.net/","queue":"https://clitestjwzkdsfuou3niutbd.queue.core.windows.net/","table":"https://clitestjwzkdsfuou3niutbd.table.core.windows.net/","file":"https://clitestjwzkdsfuou3niutbd.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgldagdmcl4pklmwzmr3wftx2kidhw7johz6d7tl6m7raetzzfhpqhrfffu5vwqtfxo/providers/Microsoft.Storage/storageAccounts/clitestt6pqb7xneswrh2sp6","name":"clitestt6pqb7xneswrh2sp6","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T17:51:14.8730435Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T17:51:14.8730435Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T17:51:14.8105336Z","primaryEndpoints":{"web":"https://clitestt6pqb7xneswrh2sp6.web.core.windows.net/","blob":"https://clitestt6pqb7xneswrh2sp6.blob.core.windows.net/","queue":"https://clitestt6pqb7xneswrh2sp6.queue.core.windows.net/","table":"https://clitestt6pqb7xneswrh2sp6.table.core.windows.net/","file":"https://clitestt6pqb7xneswrh2sp6.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgf3er5m4irbxsxhyil42jxq3t5ehzphmdzn2gortdlrzyw4i6tlgswx2xrcgldp6oh/providers/Microsoft.Storage/storageAccounts/clitestpabilv4yd6qxvguml","name":"clitestpabilv4yd6qxvguml","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T19:20:22.2758006Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T19:20:22.2758006Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T19:20:22.2445526Z","primaryEndpoints":{"web":"https://clitestpabilv4yd6qxvguml.web.core.windows.net/","blob":"https://clitestpabilv4yd6qxvguml.blob.core.windows.net/","queue":"https://clitestpabilv4yd6qxvguml.queue.core.windows.net/","table":"https://clitestpabilv4yd6qxvguml.table.core.windows.net/","file":"https://clitestpabilv4yd6qxvguml.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgwxiadyatfxsixayqfinia7ybjwo5cfoyw65qpuna3alx3x2diwukx4tkcpwir2mbq/providers/Microsoft.Storage/storageAccounts/clitesta2lvllqz23rgasyf7","name":"clitesta2lvllqz23rgasyf7","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T17:57:25.6818153Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T17:57:25.6818153Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T17:57:25.6193002Z","primaryEndpoints":{"web":"https://clitesta2lvllqz23rgasyf7.web.core.windows.net/","blob":"https://clitesta2lvllqz23rgasyf7.blob.core.windows.net/","queue":"https://clitesta2lvllqz23rgasyf7.queue.core.windows.net/","table":"https://clitesta2lvllqz23rgasyf7.table.core.windows.net/","file":"https://clitesta2lvllqz23rgasyf7.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgoo2qxqtbb56w7uujqzhodrozdh7fxg5wxscql4ndybxkardgqzqvheltadic2zoxf/providers/Microsoft.Storage/storageAccounts/clitestfyixx74gs3loj3isf","name":"clitestfyixx74gs3loj3isf","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T20:34:26.6293927Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T20:34:26.6293927Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T20:34:26.5668681Z","primaryEndpoints":{"web":"https://clitestfyixx74gs3loj3isf.web.core.windows.net/","blob":"https://clitestfyixx74gs3loj3isf.blob.core.windows.net/","queue":"https://clitestfyixx74gs3loj3isf.queue.core.windows.net/","table":"https://clitestfyixx74gs3loj3isf.table.core.windows.net/","file":"https://clitestfyixx74gs3loj3isf.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgd5ygu6mbq43qw57ncgznekmhwaqlrowjc6dggyk2h6cfwioigvtt3bg7ayqckcwvk/providers/Microsoft.Storage/storageAccounts/clitestixsogcl5p5af5w2p3","name":"clitestixsogcl5p5af5w2p3","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T18:00:02.2397791Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T18:00:02.2397791Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T18:00:02.2087326Z","primaryEndpoints":{"web":"https://clitestixsogcl5p5af5w2p3.web.core.windows.net/","blob":"https://clitestixsogcl5p5af5w2p3.blob.core.windows.net/","queue":"https://clitestixsogcl5p5af5w2p3.queue.core.windows.net/","table":"https://clitestixsogcl5p5af5w2p3.table.core.windows.net/","file":"https://clitestixsogcl5p5af5w2p3.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgeyg7p46zydk24opv23uowejjybhvp2nqcyqpnmknbs7o3w5c3tocuuygkogbvxz5f/providers/Microsoft.Storage/storageAccounts/clitestcrdofae6jvibomf2w","name":"clitestcrdofae6jvibomf2w","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-20T01:19:55.8214506Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-20T01:19:55.8214506Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-20T01:19:55.7120798Z","primaryEndpoints":{"web":"https://clitestcrdofae6jvibomf2w.web.core.windows.net/","blob":"https://clitestcrdofae6jvibomf2w.blob.core.windows.net/","queue":"https://clitestcrdofae6jvibomf2w.queue.core.windows.net/","table":"https://clitestcrdofae6jvibomf2w.table.core.windows.net/","file":"https://clitestcrdofae6jvibomf2w.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgeblmtd6pv6car44ga6qwvicwjyuxydhhkaharam4nad6uekgqgm2uiisw7v4a3czx/providers/Microsoft.Storage/storageAccounts/clitestcdx4bwlcvgviotc2p","name":"clitestcdx4bwlcvgviotc2p","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T22:26:49.0369320Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T22:26:49.0369320Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T22:26:48.9744081Z","primaryEndpoints":{"web":"https://clitestcdx4bwlcvgviotc2p.web.core.windows.net/","blob":"https://clitestcdx4bwlcvgviotc2p.blob.core.windows.net/","queue":"https://clitestcdx4bwlcvgviotc2p.queue.core.windows.net/","table":"https://clitestcdx4bwlcvgviotc2p.table.core.windows.net/","file":"https://clitestcdx4bwlcvgviotc2p.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}}]}'} + body: {string: '{"value":[{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Storage/storageAccounts/amardiag596","name":"amardiag596","type":"Microsoft.Storage/storageAccounts","location":"eastus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-08T16:10:29.0593763Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-08T16:10:29.0593763Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-08-08T16:10:28.8562508Z","primaryEndpoints":{"blob":"https://amardiag596.blob.core.windows.net/","queue":"https://amardiag596.queue.core.windows.net/","table":"https://amardiag596.table.core.windows.net/","file":"https://amardiag596.file.core.windows.net/"},"primaryLocation":"eastus","statusOfPrimary":"available"}},{"sku":{"name":"Standard_GRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/amar/providers/Microsoft.Storage/storageAccounts/nodetest12","name":"nodetest12","type":"Microsoft.Storage/storageAccounts","location":"eastus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-06-11T22:34:54.8545695Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-06-11T22:34:54.8545695Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-06-11T22:34:54.6358258Z","primaryEndpoints":{"dfs":"https://nodetest12.dfs.core.windows.net/","web":"https://nodetest12.z13.web.core.windows.net/","blob":"https://nodetest12.blob.core.windows.net/","queue":"https://nodetest12.queue.core.windows.net/","table":"https://nodetest12.table.core.windows.net/","file":"https://nodetest12.file.core.windows.net/"},"primaryLocation":"eastus","statusOfPrimary":"available","secondaryLocation":"westus","statusOfSecondary":"available"}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgvazkuv27uljwvz2tmnmecw5nuqramhayk7uqkl67gjxfsjfpxhfyxg45cxg2lqz6u/providers/Microsoft.Storage/storageAccounts/clistoragevi5fudbnsq","name":"clistoragevi5fudbnsq","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-14T21:27:33.4336328Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-14T21:27:33.4336328Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-14T21:27:33.3241912Z","primaryEndpoints":{"web":"https://clistoragevi5fudbnsq.z22.web.core.windows.net/","blob":"https://clistoragevi5fudbnsq.blob.core.windows.net/","queue":"https://clistoragevi5fudbnsq.queue.core.windows.net/","table":"https://clistoragevi5fudbnsq.table.core.windows.net/","file":"https://clistoragevi5fudbnsq.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistoragevi5fudbnsq-secondary.z22.web.core.windows.net/","blob":"https://clistoragevi5fudbnsq-secondary.blob.core.windows.net/","queue":"https://clistoragevi5fudbnsq-secondary.queue.core.windows.net/","table":"https://clistoragevi5fudbnsq-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgelvypcebie75casshjcdfo3gxybms7xn6zp46gdvihhxdcqaqcrmdtbx2ldm7e7l2/providers/Microsoft.Storage/storageAccounts/clistorageqnmno3yrja","name":"clistorageqnmno3yrja","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-22T17:36:54.9267813Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-22T17:36:54.9267813Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-22T17:36:54.7702516Z","primaryEndpoints":{"web":"https://clistorageqnmno3yrja.z22.web.core.windows.net/","blob":"https://clistorageqnmno3yrja.blob.core.windows.net/","queue":"https://clistorageqnmno3yrja.queue.core.windows.net/","table":"https://clistorageqnmno3yrja.table.core.windows.net/","file":"https://clistorageqnmno3yrja.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistorageqnmno3yrja-secondary.z22.web.core.windows.net/","blob":"https://clistorageqnmno3yrja-secondary.blob.core.windows.net/","queue":"https://clistorageqnmno3yrja-secondary.queue.core.windows.net/","table":"https://clistorageqnmno3yrja-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-09-27T18:10:58.3451412Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg6lcblrcfuy56nybdtlwez5kpklvczltjbt5u6yqiamvlkisyw53gbzepfvipm6opr/providers/Microsoft.Storage/storageAccounts/clistoragenwbh6jsk37","name":"clistoragenwbh6jsk37","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-16T00:11:59.1916112Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-16T00:11:59.1916112Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-16T00:11:59.0978516Z","primaryEndpoints":{"web":"https://clistoragenwbh6jsk37.z22.web.core.windows.net/","blob":"https://clistoragenwbh6jsk37.blob.core.windows.net/","queue":"https://clistoragenwbh6jsk37.queue.core.windows.net/","table":"https://clistoragenwbh6jsk37.table.core.windows.net/","file":"https://clistoragenwbh6jsk37.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistoragenwbh6jsk37-secondary.z22.web.core.windows.net/","blob":"https://clistoragenwbh6jsk37-secondary.blob.core.windows.net/","queue":"https://clistoragenwbh6jsk37-secondary.queue.core.windows.net/","table":"https://clistoragenwbh6jsk37-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgxjfd2y6zx7tea3hqe3tqomekc5vxp3tgo6gpuoledm6wo3a2ugtowyy4waukv5rjy/providers/Microsoft.Storage/storageAccounts/clistoragevkmaf7jdkq","name":"clistoragevkmaf7jdkq","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-14T01:00:09.5288450Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-14T01:00:09.5288450Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-14T01:00:09.4192315Z","primaryEndpoints":{"web":"https://clistoragevkmaf7jdkq.z22.web.core.windows.net/","blob":"https://clistoragevkmaf7jdkq.blob.core.windows.net/","queue":"https://clistoragevkmaf7jdkq.queue.core.windows.net/","table":"https://clistoragevkmaf7jdkq.table.core.windows.net/","file":"https://clistoragevkmaf7jdkq.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistoragevkmaf7jdkq-secondary.z22.web.core.windows.net/","blob":"https://clistoragevkmaf7jdkq-secondary.blob.core.windows.net/","queue":"https://clistoragevkmaf7jdkq-secondary.queue.core.windows.net/","table":"https://clistoragevkmaf7jdkq-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgck524lxhki2ki4rxnew5gl7cjisgc3nch5mdttubhuzu6qbdipbf2uhoe73wtyzhn/providers/Microsoft.Storage/storageAccounts/clistoragehda7raqo3s","name":"clistoragehda7raqo3s","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-16T17:49:00.7139157Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-16T17:49:00.7139157Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-16T17:49:00.4482840Z","primaryEndpoints":{"web":"https://clistoragehda7raqo3s.z22.web.core.windows.net/","blob":"https://clistoragehda7raqo3s.blob.core.windows.net/","queue":"https://clistoragehda7raqo3s.queue.core.windows.net/","table":"https://clistoragehda7raqo3s.table.core.windows.net/","file":"https://clistoragehda7raqo3s.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistoragehda7raqo3s-secondary.z22.web.core.windows.net/","blob":"https://clistoragehda7raqo3s-secondary.blob.core.windows.net/","queue":"https://clistoragehda7raqo3s-secondary.queue.core.windows.net/","table":"https://clistoragehda7raqo3s-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgmtgeyhv55fxzhqjkb3ynjqw5ljlhjp3btqdavs7hcmx33z7vu6ytan6ere7n5c4x5/providers/Microsoft.Storage/storageAccounts/clistoragejqhqxuct23","name":"clistoragejqhqxuct23","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-10T22:36:17.3820701Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-10T22:36:17.3820701Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-10T22:36:17.2883235Z","primaryEndpoints":{"web":"https://clistoragejqhqxuct23.z22.web.core.windows.net/","blob":"https://clistoragejqhqxuct23.blob.core.windows.net/","queue":"https://clistoragejqhqxuct23.queue.core.windows.net/","table":"https://clistoragejqhqxuct23.table.core.windows.net/","file":"https://clistoragejqhqxuct23.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistoragejqhqxuct23-secondary.z22.web.core.windows.net/","blob":"https://clistoragejqhqxuct23-secondary.blob.core.windows.net/","queue":"https://clistoragejqhqxuct23-secondary.queue.core.windows.net/","table":"https://clistoragejqhqxuct23-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgpamvtezmteh7zp2bdt3y4idc7mmbzvf6sdzjynqmht26jisd4amljydqqa32zckbx/providers/Microsoft.Storage/storageAccounts/clistoragewr2qjfjhzb","name":"clistoragewr2qjfjhzb","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-16T00:13:04.0707837Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-16T00:13:04.0707837Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-16T00:13:03.9614281Z","primaryEndpoints":{"web":"https://clistoragewr2qjfjhzb.z22.web.core.windows.net/","blob":"https://clistoragewr2qjfjhzb.blob.core.windows.net/","queue":"https://clistoragewr2qjfjhzb.queue.core.windows.net/","table":"https://clistoragewr2qjfjhzb.table.core.windows.net/","file":"https://clistoragewr2qjfjhzb.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistoragewr2qjfjhzb-secondary.z22.web.core.windows.net/","blob":"https://clistoragewr2qjfjhzb-secondary.blob.core.windows.net/","queue":"https://clistoragewr2qjfjhzb-secondary.queue.core.windows.net/","table":"https://clistoragewr2qjfjhzb-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgooetcw3locipbmar4742ebvhztivldtfcwdo5kmhnouyr44vufpxzhgplrrvk56gs/providers/Microsoft.Storage/storageAccounts/clistorage5uh2sd5di6","name":"clistorage5uh2sd5di6","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-10T21:53:58.5156654Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-10T21:53:58.5156654Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-10T21:53:58.4219023Z","primaryEndpoints":{"web":"https://clistorage5uh2sd5di6.z22.web.core.windows.net/","blob":"https://clistorage5uh2sd5di6.blob.core.windows.net/","queue":"https://clistorage5uh2sd5di6.queue.core.windows.net/","table":"https://clistorage5uh2sd5di6.table.core.windows.net/","file":"https://clistorage5uh2sd5di6.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistorage5uh2sd5di6-secondary.z22.web.core.windows.net/","blob":"https://clistorage5uh2sd5di6-secondary.blob.core.windows.net/","queue":"https://clistorage5uh2sd5di6-secondary.queue.core.windows.net/","table":"https://clistorage5uh2sd5di6-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgtg6bh4bbk6ihd7m24ktzhvdb5oqztkv4zx63r7xqkiggambffyitl2m2yx2fssywe/providers/Microsoft.Storage/storageAccounts/clistorage7jvvytqmtd","name":"clistorage7jvvytqmtd","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-11T23:59:47.3696626Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-11T23:59:47.3696626Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-09-11T23:59:46.6511608Z","primaryEndpoints":{"web":"https://clistorage7jvvytqmtd.z22.web.core.windows.net/","blob":"https://clistorage7jvvytqmtd.blob.core.windows.net/","queue":"https://clistorage7jvvytqmtd.queue.core.windows.net/","table":"https://clistorage7jvvytqmtd.table.core.windows.net/","file":"https://clistorage7jvvytqmtd.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistorage7jvvytqmtd-secondary.z22.web.core.windows.net/","blob":"https://clistorage7jvvytqmtd-secondary.blob.core.windows.net/","queue":"https://clistorage7jvvytqmtd-secondary.queue.core.windows.net/","table":"https://clistorage7jvvytqmtd-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgypr6blmisj5pyxrjphnwbifkmsdyk3igstozydzondjnuhgq2e5zirlvz5rl3n6gk/providers/Microsoft.Storage/storageAccounts/clistorage7de3dm4xlr","name":"clistorage7de3dm4xlr","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-14T20:49:50.7380783Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-14T20:49:50.7380783Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-14T20:49:50.6443644Z","primaryEndpoints":{"web":"https://clistorage7de3dm4xlr.z22.web.core.windows.net/","blob":"https://clistorage7de3dm4xlr.blob.core.windows.net/","queue":"https://clistorage7de3dm4xlr.queue.core.windows.net/","table":"https://clistorage7de3dm4xlr.table.core.windows.net/","file":"https://clistorage7de3dm4xlr.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistorage7de3dm4xlr-secondary.z22.web.core.windows.net/","blob":"https://clistorage7de3dm4xlr-secondary.blob.core.windows.net/","queue":"https://clistorage7de3dm4xlr-secondary.queue.core.windows.net/","table":"https://clistorage7de3dm4xlr-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgi2biwne2krt426d7syiwaouiedbqykuhgys7oag2c3twjzz4c7pup26vc226txaua/providers/Microsoft.Storage/storageAccounts/clistorageayl5jkq6ty","name":"clistorageayl5jkq6ty","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-14T16:54:41.5707757Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-14T16:54:41.5707757Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-08-14T16:54:41.4614062Z","primaryEndpoints":{"web":"https://clistorageayl5jkq6ty.z22.web.core.windows.net/","blob":"https://clistorageayl5jkq6ty.blob.core.windows.net/","queue":"https://clistorageayl5jkq6ty.queue.core.windows.net/","table":"https://clistorageayl5jkq6ty.table.core.windows.net/","file":"https://clistorageayl5jkq6ty.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistorageayl5jkq6ty-secondary.z22.web.core.windows.net/","blob":"https://clistorageayl5jkq6ty-secondary.blob.core.windows.net/","queue":"https://clistorageayl5jkq6ty-secondary.queue.core.windows.net/","table":"https://clistorageayl5jkq6ty-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxtest/providers/Microsoft.Storage/storageAccounts/wilxtesting","name":"wilxtesting","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-08-28T17:41:10.2771663Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-08-28T17:41:10.2771663Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-08-28T17:41:10.1061835Z","primaryEndpoints":{"blob":"https://wilxtesting.blob.core.windows.net/","queue":"https://wilxtesting.queue.core.windows.net/","table":"https://wilxtesting.table.core.windows.net/","file":"https://wilxtesting.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"blob":"https://wilxtesting-secondary.blob.core.windows.net/","queue":"https://wilxtesting-secondary.queue.core.windows.net/","table":"https://wilxtesting-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rglwtxxxotabpblyephsiknmarmfjl325ixoojyprquq6ehxx5b2wokoysglc4meehl/providers/Microsoft.Storage/storageAccounts/clistorage2jbmemj6cj","name":"clistorage2jbmemj6cj","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-12T19:25:59.1461511Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-12T19:25:59.1461511Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-09-12T19:25:58.8961261Z","primaryEndpoints":{"web":"https://clistorage2jbmemj6cj.z22.web.core.windows.net/","blob":"https://clistorage2jbmemj6cj.blob.core.windows.net/","queue":"https://clistorage2jbmemj6cj.queue.core.windows.net/","table":"https://clistorage2jbmemj6cj.table.core.windows.net/","file":"https://clistorage2jbmemj6cj.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistorage2jbmemj6cj-secondary.z22.web.core.windows.net/","blob":"https://clistorage2jbmemj6cj-secondary.blob.core.windows.net/","queue":"https://clistorage2jbmemj6cj-secondary.queue.core.windows.net/","table":"https://clistorage2jbmemj6cj-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgwrwfwfeym72qee3nah2tasiw4z3ccr3lo6xnpbdlmiuzm4hs574o7lgzayesgwffv/providers/Microsoft.Storage/storageAccounts/clistoragehhbuuxg3tu","name":"clistoragehhbuuxg3tu","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-06-27T00:17:56.8422453Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-06-27T00:17:56.8422453Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-06-27T00:17:56.7015542Z","primaryEndpoints":{"web":"https://clistoragehhbuuxg3tu.z22.web.core.windows.net/","blob":"https://clistoragehhbuuxg3tu.blob.core.windows.net/","queue":"https://clistoragehhbuuxg3tu.queue.core.windows.net/","table":"https://clistoragehhbuuxg3tu.table.core.windows.net/","file":"https://clistoragehhbuuxg3tu.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://clistoragehhbuuxg3tu-secondary.z22.web.core.windows.net/","blob":"https://clistoragehhbuuxg3tu-secondary.blob.core.windows.net/","queue":"https://clistoragehhbuuxg3tu-secondary.queue.core.windows.net/","table":"https://clistoragehhbuuxg3tu-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitestlab1/providers/Microsoft.Storage/storageAccounts/acliautomationlab8902","name":"acliautomationlab8902","type":"Microsoft.Storage/storageAccounts","location":"southcentralus","tags":{"hidden-DevTestLabs-LabUId":"ca9ec547-32c5-422d-b3d2-25906ed71959"},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T16:51:47.2662871Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T16:51:47.2662871Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T16:51:47.2194106Z","primaryEndpoints":{"blob":"https://acliautomationlab8902.blob.core.windows.net/","queue":"https://acliautomationlab8902.queue.core.windows.net/","table":"https://acliautomationlab8902.table.core.windows.net/","file":"https://acliautomationlab8902.file.core.windows.net/"},"primaryLocation":"southcentralus","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-eventgridtesting/providers/Microsoft.Storage/storageAccounts/eventgridtestin9c1e","name":"eventgridtestin9c1e","type":"Microsoft.Storage/storageAccounts","location":"centralus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-30T22:57:11.1008680Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-30T22:57:11.1008680Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-30T22:57:10.9915110Z","primaryEndpoints":{"blob":"https://eventgridtestin9c1e.blob.core.windows.net/","queue":"https://eventgridtestin9c1e.queue.core.windows.net/","table":"https://eventgridtestin9c1e.table.core.windows.net/","file":"https://eventgridtestin9c1e.file.core.windows.net/"},"primaryLocation":"centralus","statusOfPrimary":"available"}},{"sku":{"name":"Premium_LRS","tier":"Premium"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/lmazuel-testcapture/providers/Microsoft.Storage/storageAccounts/lmazueltestcapture451","name":"lmazueltestcapture451","type":"Microsoft.Storage/storageAccounts","location":"westus2","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-06-06T16:46:02.5308824Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-06-06T16:46:02.5308824Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-06-06T16:46:02.4527298Z","primaryEndpoints":{"blob":"https://lmazueltestcapture451.blob.core.windows.net/"},"primaryLocation":"westus2","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup2/providers/Microsoft.Storage/storageAccounts/wilxstorage0","name":"wilxstorage0","type":"Microsoft.Storage/storageAccounts","location":"westus2","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-13T01:05:28.4648959Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-13T01:05:28.4648959Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-04-13T01:05:28.4023820Z","primaryEndpoints":{"dfs":"https://wilxstorage0.dfs.core.windows.net/","web":"https://wilxstorage0.z5.web.core.windows.net/","blob":"https://wilxstorage0.blob.core.windows.net/","queue":"https://wilxstorage0.queue.core.windows.net/","table":"https://wilxstorage0.table.core.windows.net/","file":"https://wilxstorage0.file.core.windows.net/"},"primaryLocation":"westus2","statusOfPrimary":"available"}},{"sku":{"name":"Standard_RAGRS","tier":"Standard"},"kind":"StorageV2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/wilxgroup3/providers/Microsoft.Storage/storageAccounts/wilxstorageworm","name":"wilxstorageworm","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-13T22:36:53.1534839Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-13T22:36:53.1534839Z"}},"keySource":"Microsoft.Storage"},"accessTier":"Hot","provisioningState":"Succeeded","creationTime":"2018-04-13T22:36:53.0909769Z","primaryEndpoints":{"web":"https://wilxstorageworm.z3.web.core.windows.net/","blob":"https://wilxstorageworm.blob.core.windows.net/","queue":"https://wilxstorageworm.queue.core.windows.net/","table":"https://wilxstorageworm.table.core.windows.net/","file":"https://wilxstorageworm.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available","secondaryLocation":"centraluseuap","statusOfSecondary":"available","secondaryEndpoints":{"web":"https://wilxstorageworm-secondary.z3.web.core.windows.net/","blob":"https://wilxstorageworm-secondary.blob.core.windows.net/","queue":"https://wilxstorageworm-secondary.queue.core.windows.net/","table":"https://wilxstorageworm-secondary.table.core.windows.net/"}}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgjzhnckmw5ftoqmm2b5gezwgslvfm2dqg7ldpwvuukicy7ca4unquohsptfrbddr2a/providers/Microsoft.Storage/storageAccounts/clitestvjlqxa4ctzkwwpg4b","name":"clitestvjlqxa4ctzkwwpg4b","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-29T19:38:19.5634738Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-29T19:38:19.5634738Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-29T19:38:19.5165939Z","primaryEndpoints":{"blob":"https://clitestvjlqxa4ctzkwwpg4b.blob.core.windows.net/","queue":"https://clitestvjlqxa4ctzkwwpg4b.queue.core.windows.net/","table":"https://clitestvjlqxa4ctzkwwpg4b.table.core.windows.net/","file":"https://clitestvjlqxa4ctzkwwpg4b.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg326oxnqqn33y3n42vz6x5xol5rvvw3z4o6tladwwtkmcntnsxhhxxtddtrxwm2edj/providers/Microsoft.Storage/storageAccounts/clitestjwzkdsfuou3niutbd","name":"clitestjwzkdsfuou3niutbd","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T20:07:33.1021018Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T20:07:33.1021018Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T20:07:33.0552270Z","primaryEndpoints":{"blob":"https://clitestjwzkdsfuou3niutbd.blob.core.windows.net/","queue":"https://clitestjwzkdsfuou3niutbd.queue.core.windows.net/","table":"https://clitestjwzkdsfuou3niutbd.table.core.windows.net/","file":"https://clitestjwzkdsfuou3niutbd.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgf3er5m4irbxsxhyil42jxq3t5ehzphmdzn2gortdlrzyw4i6tlgswx2xrcgldp6oh/providers/Microsoft.Storage/storageAccounts/clitestpabilv4yd6qxvguml","name":"clitestpabilv4yd6qxvguml","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T19:20:22.2758006Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T19:20:22.2758006Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T19:20:22.2445526Z","primaryEndpoints":{"blob":"https://clitestpabilv4yd6qxvguml.blob.core.windows.net/","queue":"https://clitestpabilv4yd6qxvguml.queue.core.windows.net/","table":"https://clitestpabilv4yd6qxvguml.table.core.windows.net/","file":"https://clitestpabilv4yd6qxvguml.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgmr6jo34yofyafj3n6gjbhrgmrd6pwgguthc2u235qfle6y6ztyzrlkuqn544s7cop/providers/Microsoft.Storage/storageAccounts/clitestnlmd52jlcmr4ce7b4","name":"clitestnlmd52jlcmr4ce7b4","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T20:14:07.3500611Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T20:14:07.3500611Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T20:14:07.3188286Z","primaryEndpoints":{"blob":"https://clitestnlmd52jlcmr4ce7b4.blob.core.windows.net/","queue":"https://clitestnlmd52jlcmr4ce7b4.queue.core.windows.net/","table":"https://clitestnlmd52jlcmr4ce7b4.table.core.windows.net/","file":"https://clitestnlmd52jlcmr4ce7b4.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgeyg7p46zydk24opv23uowejjybhvp2nqcyqpnmknbs7o3w5c3tocuuygkogbvxz5f/providers/Microsoft.Storage/storageAccounts/clitestcrdofae6jvibomf2w","name":"clitestcrdofae6jvibomf2w","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-20T01:19:55.8214506Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-20T01:19:55.8214506Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-20T01:19:55.7120798Z","primaryEndpoints":{"blob":"https://clitestcrdofae6jvibomf2w.blob.core.windows.net/","queue":"https://clitestcrdofae6jvibomf2w.queue.core.windows.net/","table":"https://clitestcrdofae6jvibomf2w.table.core.windows.net/","file":"https://clitestcrdofae6jvibomf2w.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgldagdmcl4pklmwzmr3wftx2kidhw7johz6d7tl6m7raetzzfhpqhrfffu5vwqtfxo/providers/Microsoft.Storage/storageAccounts/clitestt6pqb7xneswrh2sp6","name":"clitestt6pqb7xneswrh2sp6","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T17:51:14.8730435Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T17:51:14.8730435Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T17:51:14.8105336Z","primaryEndpoints":{"blob":"https://clitestt6pqb7xneswrh2sp6.blob.core.windows.net/","queue":"https://clitestt6pqb7xneswrh2sp6.queue.core.windows.net/","table":"https://clitestt6pqb7xneswrh2sp6.table.core.windows.net/","file":"https://clitestt6pqb7xneswrh2sp6.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgd5ygu6mbq43qw57ncgznekmhwaqlrowjc6dggyk2h6cfwioigvtt3bg7ayqckcwvk/providers/Microsoft.Storage/storageAccounts/clitestixsogcl5p5af5w2p3","name":"clitestixsogcl5p5af5w2p3","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T18:00:02.2397791Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T18:00:02.2397791Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T18:00:02.2087326Z","primaryEndpoints":{"blob":"https://clitestixsogcl5p5af5w2p3.blob.core.windows.net/","queue":"https://clitestixsogcl5p5af5w2p3.queue.core.windows.net/","table":"https://clitestixsogcl5p5af5w2p3.table.core.windows.net/","file":"https://clitestixsogcl5p5af5w2p3.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgv6extdlzddtno2qf5o37e5g2n2d2x5ah4gq2olmpqezmxibj4h36focak4y6dose7/providers/Microsoft.Storage/storageAccounts/clitestcushmpfbtkste2a2a","name":"clitestcushmpfbtkste2a2a","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-25T01:20:25.1414518Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-25T01:20:25.1414518Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-25T01:20:25.0780033Z","primaryEndpoints":{"blob":"https://clitestcushmpfbtkste2a2a.blob.core.windows.net/","queue":"https://clitestcushmpfbtkste2a2a.queue.core.windows.net/","table":"https://clitestcushmpfbtkste2a2a.table.core.windows.net/","file":"https://clitestcushmpfbtkste2a2a.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg6xf4idvnxclgamrcp2ezv54qhk3doyffriwiegbm7ouxjbfmd2cj7izni3bhdv4wf/providers/Microsoft.Storage/storageAccounts/clitestoj23vdhimampujgji","name":"clitestoj23vdhimampujgji","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-15T02:09:49.4622185Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-15T02:09:49.4622185Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-15T02:09:49.3684695Z","primaryEndpoints":{"blob":"https://clitestoj23vdhimampujgji.blob.core.windows.net/","queue":"https://clitestoj23vdhimampujgji.queue.core.windows.net/","table":"https://clitestoj23vdhimampujgji.table.core.windows.net/","file":"https://clitestoj23vdhimampujgji.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgoo2qxqtbb56w7uujqzhodrozdh7fxg5wxscql4ndybxkardgqzqvheltadic2zoxf/providers/Microsoft.Storage/storageAccounts/clitestfyixx74gs3loj3isf","name":"clitestfyixx74gs3loj3isf","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T20:34:26.6293927Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T20:34:26.6293927Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T20:34:26.5668681Z","primaryEndpoints":{"blob":"https://clitestfyixx74gs3loj3isf.blob.core.windows.net/","queue":"https://clitestfyixx74gs3loj3isf.queue.core.windows.net/","table":"https://clitestfyixx74gs3loj3isf.table.core.windows.net/","file":"https://clitestfyixx74gs3loj3isf.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgpfhep77mmcmcn3afvnvskjk3g27ybc7gq6kh5c6vu7ugy7e3ykawkib6u7st25kbi/providers/Microsoft.Storage/storageAccounts/clitest5o5upfigqe5aenkc3","name":"clitest5o5upfigqe5aenkc3","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-25T01:22:12.5013507Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-25T01:22:12.5013507Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-25T01:22:12.4388487Z","primaryEndpoints":{"blob":"https://clitest5o5upfigqe5aenkc3.blob.core.windows.net/","queue":"https://clitest5o5upfigqe5aenkc3.queue.core.windows.net/","table":"https://clitest5o5upfigqe5aenkc3.table.core.windows.net/","file":"https://clitest5o5upfigqe5aenkc3.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgeblmtd6pv6car44ga6qwvicwjyuxydhhkaharam4nad6uekgqgm2uiisw7v4a3czx/providers/Microsoft.Storage/storageAccounts/clitestcdx4bwlcvgviotc2p","name":"clitestcdx4bwlcvgviotc2p","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T22:26:49.0369320Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T22:26:49.0369320Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T22:26:48.9744081Z","primaryEndpoints":{"blob":"https://clitestcdx4bwlcvgviotc2p.blob.core.windows.net/","queue":"https://clitestcdx4bwlcvgviotc2p.queue.core.windows.net/","table":"https://clitestcdx4bwlcvgviotc2p.table.core.windows.net/","file":"https://clitestcdx4bwlcvgviotc2p.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgwxiadyatfxsixayqfinia7ybjwo5cfoyw65qpuna3alx3x2diwukx4tkcpwir2mbq/providers/Microsoft.Storage/storageAccounts/clitesta2lvllqz23rgasyf7","name":"clitesta2lvllqz23rgasyf7","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-04-19T17:57:25.6818153Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-04-19T17:57:25.6818153Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-04-19T17:57:25.6193002Z","primaryEndpoints":{"blob":"https://clitesta2lvllqz23rgasyf7.blob.core.windows.net/","queue":"https://clitesta2lvllqz23rgasyf7.queue.core.windows.net/","table":"https://clitesta2lvllqz23rgasyf7.table.core.windows.net/","file":"https://clitesta2lvllqz23rgasyf7.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}},{"sku":{"name":"Standard_LRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgnipcxreywyorqhptpg4lmvsb6sqsef3mezozbrenqq6ufmd3hrh7plmdnorjt5y5x/providers/Microsoft.Storage/storageAccounts/clitestshv4qcdkeictveped","name":"clitestshv4qcdkeictveped","type":"Microsoft.Storage/storageAccounts","location":"eastus2euap","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-14T19:04:11.4311113Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-14T19:04:11.4311113Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-14T19:04:11.3686065Z","primaryEndpoints":{"blob":"https://clitestshv4qcdkeictveped.blob.core.windows.net/","queue":"https://clitestshv4qcdkeictveped.queue.core.windows.net/","table":"https://clitestshv4qcdkeictveped.table.core.windows.net/","file":"https://clitestshv4qcdkeictveped.file.core.windows.net/"},"primaryLocation":"eastus2euap","statusOfPrimary":"available"}}]}'} headers: cache-control: [no-cache] - content-length: ['16936'] + content-length: ['50407'] content-type: [application/json; charset=utf-8] - date: ['Fri, 11 May 2018 18:04:10 GMT'] + date: ['Thu, 27 Sep 2018 18:11:24 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] vary: [Accept-Encoding] x-content-type-options: [nosniff] - x-ms-original-request-ids: [3266e908-116e-4ac8-81ff-4dca9df87e64, 12008abe-fb84-47bf-b0f5-b74f9000f5fa, - 15e2564f-fd4d-44ba-89a5-c68942cc7682, 6c0eed41-810c-47f0-a1bb-61f89ee50541] + x-ms-original-request-ids: [6a23af80-2786-434f-b83d-73bb57fc1d2c, 5db7bb3c-b831-4eb1-b3f1-555fc86cb57c, + 23d7d277-274b-4f36-bad7-0c15dc927d2c, 4e2e6687-3d80-4615-a720-715ba0ef13f0, + a74c38da-b68d-45eb-bdcc-8abd531ad5a5, f59b0fd4-038f-4662-84c1-772d64f3ddc1] status: {code: 200, message: OK} - request: body: '{"sku": {"name": "Standard_GRS"}, "properties": {"supportsHttpsTrafficOnly": @@ -236,18 +283,18 @@ interactions: Connection: [keep-alive] Content-Length: ['84'] Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a?api-version=2018-07-01 response: - body: {string: '{"sku":{"name":"Standard_GRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-05-11T18:03:48.6162454Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-05-11T18:03:48.5381511Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available"}}'} + body: {string: '{"sku":{"name":"Standard_GRS","tier":"Standard"},"kind":"Storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a","name":"pyarmstorage43b8102a","type":"Microsoft.Storage/storageAccounts","location":"westus","tags":{},"properties":{"isHnsEnabled":false,"networkAcls":{"bypass":"AzureServices","virtualNetworkRules":[],"ipRules":[],"defaultAction":"Allow"},"trustedDirectories":["72f988bf-86f1-41af-91ab-2d7cd011db47"],"supportsHttpsTrafficOnly":false,"encryption":{"services":{"file":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"},"blob":{"enabled":true,"lastEnabledTime":"2018-09-27T18:10:58.4390222Z"}},"keySource":"Microsoft.Storage"},"provisioningState":"Succeeded","creationTime":"2018-09-27T18:10:58.3451412Z","primaryEndpoints":{"blob":"https://pyarmstorage43b8102a.blob.core.windows.net/","queue":"https://pyarmstorage43b8102a.queue.core.windows.net/","table":"https://pyarmstorage43b8102a.table.core.windows.net/","file":"https://pyarmstorage43b8102a.file.core.windows.net/"},"primaryLocation":"westus","statusOfPrimary":"available","secondaryLocation":"eastus","statusOfSecondary":"available"}}'} headers: cache-control: [no-cache] - content-length: ['1179'] + content-length: ['1261'] content-type: [application/json] - date: ['Fri, 11 May 2018 18:04:13 GMT'] + date: ['Thu, 27 Sep 2018 18:11:24 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 @@ -265,25 +312,24 @@ interactions: Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_storage_test_storage_accounts43b8102a/providers/Microsoft.Storage/storageAccounts/pyarmstorage43b8102a?api-version=2018-07-01 response: body: {string: ''} headers: cache-control: [no-cache] content-length: ['0'] content-type: [text/plain; charset=utf-8] - date: ['Fri, 11 May 2018 18:04:15 GMT'] + date: ['Thu, 27 Sep 2018 18:11:26 GMT'] expires: ['-1'] pragma: [no-cache] server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 Microsoft-HTTPAPI/2.0'] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-deletes: ['14998'] + x-ms-ratelimit-remaining-subscription-deletes: ['14999'] status: {code: 200, message: OK} version: 1 diff --git a/azure-mgmt-storage/tests/recordings/test_mgmt_storage.test_storage_usage.yaml b/azure-mgmt-storage/tests/recordings/test_mgmt_storage.test_storage_usage.yaml index 4ef40602bb67..d78b091c119c 100644 --- a/azure-mgmt-storage/tests/recordings/test_mgmt_storage.test_storage_usage.yaml +++ b/azure-mgmt-storage/tests/recordings/test_mgmt_storage.test_storage_usage.yaml @@ -5,25 +5,23 @@ interactions: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.2 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.29 - msrest_azure/0.4.29 azure-mgmt-storage/1.5.0 Azure-SDK-For-Python] + User-Agent: [python/3.6.4 (Windows-10-10.0.17134-SP0) requests/2.19.1 msrest/0.5.5 + msrest_azure/0.4.34 azure-mgmt-storage/2.0.0 Azure-SDK-For-Python] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/usages?api-version=2018-02-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/locations/eastus/usages?api-version=2018-07-01 response: - body: {string: "{\r\n \"value\": [\r\n {\r\n \"unit\": \"Count\",\r\n\ - \ \"currentValue\": 0,\r\n \"limit\": 250,\r\n \"name\": {\r\ - \n \"value\": \"StorageAccounts\",\r\n \"localizedValue\": \"\ - Storage Accounts\"\r\n }\r\n }\r\n ]\r\n}"} + body: {string: '{"value":[{"unit":"Count","currentValue":2,"limit":250,"name":{"value":"StorageAccounts","localizedValue":"Storage + Accounts"}}]}'} headers: cache-control: [no-cache] - content-length: ['217'] + content-length: ['128'] content-type: [application/json] - date: ['Fri, 11 May 2018 17:54:43 GMT'] + date: ['Thu, 27 Sep 2018 18:11:28 GMT'] expires: ['-1'] pragma: [no-cache] - server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0] + server: ['Microsoft-Azure-Storage-Resource-Provider/1.0,Microsoft-HTTPAPI/2.0 + Microsoft-HTTPAPI/2.0'] strict-transport-security: [max-age=31536000; includeSubDomains] transfer-encoding: [chunked] vary: [Accept-Encoding] diff --git a/azure-mgmt-storage/tests/test_mgmt_storage.py b/azure-mgmt-storage/tests/test_mgmt_storage.py index db41537cc543..ba6b5db4c002 100644 --- a/azure-mgmt-storage/tests/test_mgmt_storage.py +++ b/azure-mgmt-storage/tests/test_mgmt_storage.py @@ -21,7 +21,7 @@ def setUp(self): ) def test_storage_usage(self): - usages = list(self.storage_client.usage.list()) + usages = list(self.storage_client.usages.list_by_location("eastus")) self.assertGreater(len(usages), 0) @ResourceGroupPreparer() diff --git a/azure-mgmt-subscription/MANIFEST.in b/azure-mgmt-subscription/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-subscription/MANIFEST.in +++ b/azure-mgmt-subscription/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-subscription/README.rst b/azure-mgmt-subscription/README.rst index 24a1ed35f195..7b10f46ab760 100644 --- a/azure-mgmt-subscription/README.rst +++ b/azure-mgmt-subscription/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Subscription Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Subscription Management -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-subscription/azure/__init__.py b/azure-mgmt-subscription/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-subscription/azure/__init__.py +++ b/azure-mgmt-subscription/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-subscription/azure/mgmt/__init__.py b/azure-mgmt-subscription/azure/mgmt/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-mgmt-subscription/azure/mgmt/__init__.py +++ b/azure-mgmt-subscription/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-subscription/azure_bdist_wheel.py b/azure-mgmt-subscription/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-subscription/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-subscription/sdk_packaging.toml b/azure-mgmt-subscription/sdk_packaging.toml new file mode 100644 index 000000000000..2f5ab7bab8bd --- /dev/null +++ b/azure-mgmt-subscription/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-mgmt-subscription" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Subscription Management" +package_doc_id = "" +is_stable = false +is_arm = true diff --git a/azure-mgmt-subscription/setup.cfg b/azure-mgmt-subscription/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-subscription/setup.cfg +++ b/azure-mgmt-subscription/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-subscription/setup.py b/azure-mgmt-subscription/setup.py index e390e5391cd6..65141593bea4 100644 --- a/azure-mgmt-subscription/setup.py +++ b/azure-mgmt-subscription/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-subscription" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-subscription/tests/test_mgmt_subscription.py b/azure-mgmt-subscription/tests/test_mgmt_subscription.py index c1046fec2f39..677dc183e539 100644 --- a/azure-mgmt-subscription/tests/test_mgmt_subscription.py +++ b/azure-mgmt-subscription/tests/test_mgmt_subscription.py @@ -9,7 +9,6 @@ import azure.mgmt.billing import azure.mgmt.subscription -from testutils.common_recordingtestcase import record from devtools_testutils import AzureMgmtTestCase class MgmtSubscriptionTest(AzureMgmtTestCase): diff --git a/azure-mgmt-trafficmanager/MANIFEST.in b/azure-mgmt-trafficmanager/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-trafficmanager/MANIFEST.in +++ b/azure-mgmt-trafficmanager/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-trafficmanager/README.rst b/azure-mgmt-trafficmanager/README.rst index 947b56fed25d..f88aa0a76dbd 100644 --- a/azure-mgmt-trafficmanager/README.rst +++ b/azure-mgmt-trafficmanager/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Traffic Manager Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. diff --git a/azure-mgmt-trafficmanager/azure/__init__.py b/azure-mgmt-trafficmanager/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-trafficmanager/azure/__init__.py +++ b/azure-mgmt-trafficmanager/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-trafficmanager/azure/mgmt/__init__.py b/azure-mgmt-trafficmanager/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-trafficmanager/azure/mgmt/__init__.py +++ b/azure-mgmt-trafficmanager/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-trafficmanager/azure_bdist_wheel.py b/azure-mgmt-trafficmanager/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-trafficmanager/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-trafficmanager/setup.cfg b/azure-mgmt-trafficmanager/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-trafficmanager/setup.cfg +++ b/azure-mgmt-trafficmanager/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-trafficmanager/setup.py b/azure-mgmt-trafficmanager/setup.py index c126f5565201..d063a2765fa8 100644 --- a/azure-mgmt-trafficmanager/setup.py +++ b/azure-mgmt-trafficmanager/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-trafficmanager" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.27,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt-web/HISTORY.rst b/azure-mgmt-web/HISTORY.rst index 77bd5a76ce86..481f24e65132 100644 --- a/azure-mgmt-web/HISTORY.rst +++ b/azure-mgmt-web/HISTORY.rst @@ -3,6 +3,245 @@ Release History =============== +0.40.0 (2018-08-28) ++++++++++++++++++++ + +**General Breaking changes** + +This version uses a next-generation code generator that *might* introduce breaking changes. + +- Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments. + To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments. +- Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered. + While this is not a breaking change, the distinctions are important, and are documented here: + https://docs.python.org/3/library/enum.html#others + At a glance: + + - "is" should not be used at all. + - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered. + +- New Long Running Operation: + + - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same. + - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used. + - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`, + without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`. + - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`, + the response of the initial call will be returned without polling. + - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`. + - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away. + + +**General Features** + +- Client class can be used as a context manager to keep the underlying HTTP session open for performance + +**Features** + +- Model ValidateRequest has a new parameter is_xenon +- Model SiteConfigResource has a new parameter reserved_instance_count +- Model SiteConfigResource has a new parameter windows_fx_version +- Model SiteConfigResource has a new parameter azure_storage_accounts +- Model SiteConfigResource has a new parameter x_managed_service_identity_id +- Model SiteConfigResource has a new parameter managed_service_identity_id +- Model SiteConfigResource has a new parameter ftps_state +- Model TriggeredWebJob has a new parameter web_job_type +- Model CsmPublishingProfileOptions has a new parameter include_disaster_recovery_endpoints +- Model SitePatchResource has a new parameter hyper_v +- Model SitePatchResource has a new parameter is_xenon +- Model StampCapacity has a new parameter is_linux +- Model User has a new parameter scm_uri +- Model SiteConfigurationSnapshotInfo has a new parameter snapshot_id +- Model AppServiceEnvironmentPatchResource has a new parameter ssl_cert_key_vault_secret_name +- Model AppServiceEnvironmentPatchResource has a new parameter has_linux_workers +- Model AppServiceEnvironmentPatchResource has a new parameter ssl_cert_key_vault_id +- Model BackupRequest has a new parameter backup_name +- Model RecommendationRule has a new parameter id +- Model RecommendationRule has a new parameter recommendation_name +- Model RecommendationRule has a new parameter kind +- Model RecommendationRule has a new parameter type +- Model RecommendationRule has a new parameter category_tags +- Model Site has a new parameter hyper_v +- Model Site has a new parameter is_xenon +- Model TriggeredJobRun has a new parameter web_job_id +- Model TriggeredJobRun has a new parameter web_job_name +- Model CertificateOrderAction has a new parameter action_type +- Model SiteExtensionInfo has a new parameter installer_command_line_params +- Model SiteExtensionInfo has a new parameter extension_id +- Model SiteExtensionInfo has a new parameter extension_type +- Model SiteAuthSettings has a new parameter validate_issuer +- Model TriggeredJobHistory has a new parameter runs +- Model ProcessInfo has a new parameter minidump +- Model ProcessInfo has a new parameter total_cpu_time +- Model ProcessInfo has a new parameter non_paged_system_memory +- Model ProcessInfo has a new parameter working_set +- Model ProcessInfo has a new parameter paged_memory +- Model ProcessInfo has a new parameter private_memory +- Model ProcessInfo has a new parameter user_cpu_time +- Model ProcessInfo has a new parameter deployment_name +- Model ProcessInfo has a new parameter peak_paged_memory +- Model ProcessInfo has a new parameter peak_working_set +- Model ProcessInfo has a new parameter peak_virtual_memory +- Model ProcessInfo has a new parameter is_webjob +- Model ProcessInfo has a new parameter privileged_cpu_time +- Model ProcessInfo has a new parameter identifier +- Model ProcessInfo has a new parameter paged_system_memory +- Model ProcessInfo has a new parameter virtual_memory +- Model ServiceSpecification has a new parameter log_specifications +- Model ProcessThreadInfo has a new parameter identifier +- Model ManagedServiceIdentity has a new parameter identity_ids +- Model AppServicePlan has a new parameter free_offer_expiration_time +- Model AppServicePlan has a new parameter hyper_v +- Model AppServicePlan has a new parameter is_xenon +- Model SiteConfig has a new parameter reserved_instance_count +- Model SiteConfig has a new parameter windows_fx_version +- Model SiteConfig has a new parameter azure_storage_accounts +- Model SiteConfig has a new parameter x_managed_service_identity_id +- Model SiteConfig has a new parameter managed_service_identity_id +- Model SiteConfig has a new parameter ftps_state +- Model WebJob has a new parameter web_job_type +- Model Recommendation has a new parameter name +- Model Recommendation has a new parameter id +- Model Recommendation has a new parameter kind +- Model Recommendation has a new parameter enabled +- Model Recommendation has a new parameter type +- Model Recommendation has a new parameter states +- Model Recommendation has a new parameter category_tags +- Model SlotConfigNamesResource has a new parameter azure_storage_config_names +- Model SlotDifference has a new parameter level +- Model AppServiceEnvironment has a new parameter ssl_cert_key_vault_secret_name +- Model AppServiceEnvironment has a new parameter has_linux_workers +- Model AppServiceEnvironment has a new parameter ssl_cert_key_vault_id +- Model ContinuousWebJob has a new parameter web_job_type +- Model AppServiceEnvironmentResource has a new parameter ssl_cert_key_vault_secret_name +- Model AppServiceEnvironmentResource has a new parameter has_linux_workers +- Model AppServiceEnvironmentResource has a new parameter ssl_cert_key_vault_id +- Model AppServicePlanPatchResource has a new parameter free_offer_expiration_time +- Model AppServicePlanPatchResource has a new parameter hyper_v +- Model AppServicePlanPatchResource has a new parameter is_xenon +- Model DeletedSite has a new parameter deleted_site_name +- Model DeletedSite has a new parameter deleted_site_kind +- Model DeletedSite has a new parameter kind +- Model DeletedSite has a new parameter type +- Model DeletedSite has a new parameter deleted_site_id +- Added operation WebAppsOperations.put_private_access_vnet +- Added operation WebAppsOperations.create_or_update_swift_virtual_network_connection +- Added operation WebAppsOperations.update_azure_storage_accounts +- Added operation WebAppsOperations.update_premier_add_on_slot +- Added operation WebAppsOperations.get_container_logs_zip_slot +- Added operation WebAppsOperations.discover_backup_slot +- Added operation WebAppsOperations.update_swift_virtual_network_connection_slot +- Added operation WebAppsOperations.get_private_access +- Added operation WebAppsOperations.discover_backup +- Added operation WebAppsOperations.create_or_update_swift_virtual_network_connection_slot +- Added operation WebAppsOperations.delete_swift_virtual_network +- Added operation WebAppsOperations.put_private_access_vnet_slot +- Added operation WebAppsOperations.restore_from_deleted_app +- Added operation WebAppsOperations.restore_from_backup_blob +- Added operation WebAppsOperations.delete_swift_virtual_network_slot +- Added operation WebAppsOperations.list_azure_storage_accounts +- Added operation WebAppsOperations.list_azure_storage_accounts_slot +- Added operation WebAppsOperations.restore_from_backup_blob_slot +- Added operation WebAppsOperations.get_swift_virtual_network_connection +- Added operation WebAppsOperations.get_swift_virtual_network_connection_slot +- Added operation WebAppsOperations.get_container_logs_zip +- Added operation WebAppsOperations.restore_snapshot +- Added operation WebAppsOperations.update_swift_virtual_network_connection +- Added operation WebAppsOperations.restore_snapshot_slot +- Added operation WebAppsOperations.restore_from_deleted_app_slot +- Added operation WebAppsOperations.update_azure_storage_accounts_slot +- Added operation WebAppsOperations.get_private_access_slot +- Added operation WebAppsOperations.update_premier_add_on +- Added operation AppServiceEnvironmentsOperations.change_vnet +- Added operation DiagnosticsOperations.list_site_detector_responses_slot +- Added operation DiagnosticsOperations.get_site_detector_response_slot +- Added operation DiagnosticsOperations.get_site_detector_response +- Added operation DiagnosticsOperations.get_hosting_environment_detector_response +- Added operation DiagnosticsOperations.list_site_detector_responses +- Added operation DiagnosticsOperations.list_hosting_environment_detector_responses +- Added operation RecommendationsOperations.disable_recommendation_for_subscription +- Added operation RecommendationsOperations.disable_recommendation_for_site +- Added operation group ResourceHealthMetadataOperations + +**Breaking changes** + +- Operation RecommendationsOperations.get_rule_details_by_web_app has a new signature +- Operation WebAppsOperations.list_publishing_profile_xml_with_secrets has a new signature +- Operation WebAppsOperations.list_publishing_profile_xml_with_secrets_slot has a new signature +- Operation WebAppsOperations.delete_slot has a new signature +- Operation WebAppsOperations.delete has a new signature +- Operation RecommendationsOperations.list_history_for_web_app has a new signature +- Operation WebAppsOperations.update_slot has a new signature +- Operation WebAppsOperations.create_or_update_slot has a new signature +- Operation WebAppsOperations.create_or_update has a new signature +- Operation WebAppsOperations.update has a new signature +- Model TriggeredWebJob no longer has parameter triggered_web_job_name +- Model TriggeredWebJob no longer has parameter job_type +- Model SitePatchResource no longer has parameter snapshot_info +- Model User no longer has parameter user_name +- Model SiteConfigurationSnapshotInfo no longer has parameter site_configuration_snapshot_info_id +- Model BackupRequest no longer has parameter backup_request_name +- Model BackupRequest no longer has parameter backup_request_type +- Model ResourceMetricDefinition no longer has parameter resource_metric_definition_id +- Model ResourceMetricDefinition no longer has parameter resource_metric_definition_name +- Model RecommendationRule no longer has parameter tags +- Model SourceControl no longer has parameter source_control_name +- Model Site no longer has parameter snapshot_info +- Model VnetRoute no longer has parameter vnet_route_name +- Model Certificate no longer has parameter geo_region +- Model TriggeredJobRun no longer has parameter triggered_job_run_id +- Model TriggeredJobRun no longer has parameter triggered_job_run_name +- Model CertificateOrderAction no longer has parameter certificate_order_action_type +- Model SiteExtensionInfo no longer has parameter site_extension_info_id +- Model SiteExtensionInfo no longer has parameter installation_args +- Model SiteExtensionInfo no longer has parameter site_extension_info_type +- Model PremierAddOnOffer no longer has parameter premier_add_on_offer_name +- Model TriggeredJobHistory no longer has parameter triggered_job_runs +- Model ProcessInfo no longer has parameter total_processor_time +- Model ProcessInfo no longer has parameter user_processor_time +- Model ProcessInfo no longer has parameter peak_paged_memory_size64 +- Model ProcessInfo no longer has parameter privileged_processor_time +- Model ProcessInfo no longer has parameter paged_system_memory_size64 +- Model ProcessInfo no longer has parameter process_info_name +- Model ProcessInfo no longer has parameter peak_working_set64 +- Model ProcessInfo no longer has parameter virtual_memory_size64 +- Model ProcessInfo no longer has parameter mini_dump +- Model ProcessInfo no longer has parameter is_web_job +- Model ProcessInfo no longer has parameter private_memory_size64 +- Model ProcessInfo no longer has parameter nonpaged_system_memory_size64 +- Model ProcessInfo no longer has parameter working_set64 +- Model ProcessInfo no longer has parameter process_info_id +- Model ProcessInfo no longer has parameter paged_memory_size64 +- Model ProcessInfo no longer has parameter peak_virtual_memory_size64 +- Model GeoRegion no longer has parameter geo_region_name +- Model FunctionEnvelope no longer has parameter function_envelope_name +- Model ProcessThreadInfo no longer has parameter process_thread_info_id +- Model CloningInfo no longer has parameter ignore_quotas +- Model AppServicePlan no longer has parameter app_service_plan_name +- Model CertificatePatchResource no longer has parameter geo_region +- Model WebJob no longer has parameter job_type +- Model WebJob no longer has parameter web_job_name +- Model Usage no longer has parameter usage_name +- Model Deployment no longer has parameter deployment_id +- Model Recommendation no longer has parameter tags +- Model PremierAddOn no longer has parameter premier_add_on_tags +- Model PremierAddOn no longer has parameter premier_add_on_location +- Model PremierAddOn no longer has parameter premier_add_on_name +- Model SlotDifference no longer has parameter slot_difference_type +- Model ContinuousWebJob no longer has parameter continuous_web_job_name +- Model ContinuousWebJob no longer has parameter job_type +- Model TopLevelDomain no longer has parameter domain_name +- Model AppServicePlanPatchResource no longer has parameter app_service_plan_patch_resource_name +- Model MetricDefinition no longer has parameter metric_definition_name +- Model PerfMonSample no longer has parameter core_count +- Removed operation WebAppsOperations.recover +- Removed operation WebAppsOperations.recover_slot +- Removed operation WebAppsOperations.get_web_site_container_logs_zip +- Removed operation WebAppsOperations.get_web_site_container_logs_zip_slot +- Removed operation WebAppsOperations.discover_restore +- Removed operation WebAppsOperations.discover_restore_slot +- Model IpSecurityRestriction has a new signature + 0.35.0 (2018-02-20) +++++++++++++++++++ diff --git a/azure-mgmt-web/MANIFEST.in b/azure-mgmt-web/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-mgmt-web/MANIFEST.in +++ b/azure-mgmt-web/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-mgmt-web/README.rst b/azure-mgmt-web/README.rst index b4665a2dfaae..68611479f5c6 100644 --- a/azure-mgmt-web/README.rst +++ b/azure-mgmt-web/README.rst @@ -6,7 +6,7 @@ This is the Microsoft Azure Web Apps Management Client Library. Azure Resource Manager (ARM) is the next generation of management APIs that replace the old Azure Service Management (ASM). -This package has been tested with Python 2.7, 3.4, 3.5 and 3.6. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For the older Azure Service Management (ASM) libraries, see `azure-servicemanagement-legacy `__ library. @@ -37,7 +37,7 @@ Usage ===== For code examples, see `Web Apps Management -`__ +`__ on docs.microsoft.com. diff --git a/azure-mgmt-web/azure/__init__.py b/azure-mgmt-web/azure/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-web/azure/__init__.py +++ b/azure-mgmt-web/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-web/azure/mgmt/__init__.py b/azure-mgmt-web/azure/mgmt/__init__.py index 849489fca33c..0260537a02bb 100644 --- a/azure-mgmt-web/azure/mgmt/__init__.py +++ b/azure-mgmt-web/azure/mgmt/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-mgmt-web/azure/mgmt/web/models/__init__.py b/azure-mgmt-web/azure/mgmt/web/models/__init__.py index a50f89c31cf9..25af3a3d7bbe 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/__init__.py +++ b/azure-mgmt-web/azure/mgmt/web/models/__init__.py @@ -9,208 +9,448 @@ # regenerated. # -------------------------------------------------------------------------- -from .app_service_certificate import AppServiceCertificate -from .app_service_certificate_resource import AppServiceCertificateResource -from .certificate_details import CertificateDetails -from .app_service_certificate_order import AppServiceCertificateOrder -from .app_service_certificate_order_patch_resource import AppServiceCertificateOrderPatchResource -from .app_service_certificate_patch_resource import AppServiceCertificatePatchResource -from .certificate_email import CertificateEmail -from .certificate_order_action import CertificateOrderAction -from .reissue_certificate_order_request import ReissueCertificateOrderRequest -from .renew_certificate_order_request import RenewCertificateOrderRequest -from .site_seal import SiteSeal -from .site_seal_request import SiteSealRequest -from .vnet_route import VnetRoute -from .vnet_info import VnetInfo -from .vnet_gateway import VnetGateway -from .user import User -from .snapshot_recovery_target import SnapshotRecoveryTarget -from .snapshot_recovery_request import SnapshotRecoveryRequest -from .resource_metric_availability import ResourceMetricAvailability -from .resource_metric_name import ResourceMetricName -from .resource_metric_definition import ResourceMetricDefinition -from .push_settings import PushSettings -from .identifier import Identifier -from .hybrid_connection_key import HybridConnectionKey -from .hybrid_connection import HybridConnection -from .proxy_only_resource import ProxyOnlyResource -from .managed_service_identity import ManagedServiceIdentity -from .slot_swap_status import SlotSwapStatus -from .cloning_info import CloningInfo -from .hosting_environment_profile import HostingEnvironmentProfile -from .ip_security_restriction import IpSecurityRestriction -from .api_definition_info import ApiDefinitionInfo -from .cors_settings import CorsSettings -from .auto_heal_custom_action import AutoHealCustomAction -from .auto_heal_actions import AutoHealActions -from .slow_requests_based_trigger import SlowRequestsBasedTrigger -from .status_codes_based_trigger import StatusCodesBasedTrigger -from .requests_based_trigger import RequestsBasedTrigger -from .auto_heal_triggers import AutoHealTriggers -from .auto_heal_rules import AutoHealRules -from .site_limits import SiteLimits -from .ramp_up_rule import RampUpRule -from .experiments import Experiments -from .virtual_directory import VirtualDirectory -from .virtual_application import VirtualApplication -from .handler_mapping import HandlerMapping -from .site_machine_key import SiteMachineKey -from .conn_string_info import ConnStringInfo -from .name_value_pair import NameValuePair -from .site_config import SiteConfig -from .host_name_ssl_state import HostNameSslState -from .site import Site -from .capability import Capability -from .sku_capacity import SkuCapacity -from .sku_description import SkuDescription -from .app_service_plan import AppServicePlan -from .resource import Resource -from .name_identifier import NameIdentifier -from .metric_availability import MetricAvailability -from .dimension import Dimension -from .metric_specification import MetricSpecification -from .service_specification import ServiceSpecification -from .csm_operation_description_properties import CsmOperationDescriptionProperties -from .csm_operation_display import CsmOperationDisplay -from .csm_operation_description import CsmOperationDescription -from .address import Address -from .contact import Contact -from .host_name import HostName -from .domain_purchase_consent import DomainPurchaseConsent -from .domain import Domain -from .domain_availablility_check_result import DomainAvailablilityCheckResult -from .domain_control_center_sso_request import DomainControlCenterSsoRequest -from .domain_ownership_identifier import DomainOwnershipIdentifier -from .domain_patch_resource import DomainPatchResource -from .domain_recommendation_search_parameters import DomainRecommendationSearchParameters -from .error_response import ErrorResponse, ErrorResponseException -from .tld_legal_agreement import TldLegalAgreement -from .top_level_domain import TopLevelDomain -from .top_level_domain_agreement_option import TopLevelDomainAgreementOption -from .certificate import Certificate -from .certificate_patch_resource import CertificatePatchResource -from .virtual_network_profile import VirtualNetworkProfile -from .worker_pool import WorkerPool -from .virtual_ip_mapping import VirtualIPMapping -from .stamp_capacity import StampCapacity -from .network_access_control_entry import NetworkAccessControlEntry -from .app_service_environment import AppServiceEnvironment -from .localizable_string import LocalizableString -from .csm_usage_quota import CsmUsageQuota -from .error_entity import ErrorEntity -from .operation import Operation -from .resource_metric_property import ResourceMetricProperty -from .resource_metric_value import ResourceMetricValue -from .resource_metric import ResourceMetric -from .web_app_collection import WebAppCollection -from .deleted_site import DeletedSite -from .solution import Solution -from .detector_abnormal_time_period import DetectorAbnormalTimePeriod -from .abnormal_time_period import AbnormalTimePeriod -from .detector_definition import DetectorDefinition -from .diagnostic_metric_sample import DiagnosticMetricSample -from .diagnostic_metric_set import DiagnosticMetricSet -from .data_source import DataSource -from .response_meta_data import ResponseMetaData -from .analysis_data import AnalysisData -from .analysis_definition import AnalysisDefinition -from .diagnostic_analysis import DiagnosticAnalysis -from .diagnostic_category import DiagnosticCategory -from .diagnostic_detector_response import DiagnosticDetectorResponse -from .stack_minor_version import StackMinorVersion -from .stack_major_version import StackMajorVersion -from .application_stack import ApplicationStack -from .recommendation import Recommendation -from .recommendation_rule import RecommendationRule -from .csm_move_resource_envelope import CsmMoveResourceEnvelope -from .geo_region import GeoRegion -from .hosting_environment_deployment_info import HostingEnvironmentDeploymentInfo -from .deployment_locations import DeploymentLocations -from .global_csm_sku_description import GlobalCsmSkuDescription -from .premier_add_on_offer import PremierAddOnOffer -from .resource_name_availability import ResourceNameAvailability -from .resource_name_availability_request import ResourceNameAvailabilityRequest -from .sku_infos import SkuInfos -from .source_control import SourceControl -from .validate_request import ValidateRequest -from .validate_response_error import ValidateResponseError -from .validate_response import ValidateResponse -from .vnet_parameters import VnetParameters -from .vnet_validation_test_failure import VnetValidationTestFailure -from .vnet_validation_failure_details import VnetValidationFailureDetails -from .file_system_application_logs_config import FileSystemApplicationLogsConfig -from .azure_table_storage_application_logs_config import AzureTableStorageApplicationLogsConfig -from .azure_blob_storage_application_logs_config import AzureBlobStorageApplicationLogsConfig -from .application_logs_config import ApplicationLogsConfig -from .azure_blob_storage_http_logs_config import AzureBlobStorageHttpLogsConfig -from .database_backup_setting import DatabaseBackupSetting -from .backup_item import BackupItem -from .backup_schedule import BackupSchedule -from .backup_request import BackupRequest -from .conn_string_value_type_pair import ConnStringValueTypePair -from .connection_string_dictionary import ConnectionStringDictionary -from .continuous_web_job import ContinuousWebJob -from .csm_publishing_profile_options import CsmPublishingProfileOptions -from .csm_slot_entity import CsmSlotEntity -from .custom_hostname_analysis_result import CustomHostnameAnalysisResult -from .deployment import Deployment -from .enabled_config import EnabledConfig -from .file_system_http_logs_config import FileSystemHttpLogsConfig -from .function_envelope import FunctionEnvelope -from .function_secrets import FunctionSecrets -from .host_name_binding import HostNameBinding -from .http_logs_config import HttpLogsConfig -from .ms_deploy import MSDeploy -from .ms_deploy_log_entry import MSDeployLogEntry -from .ms_deploy_log import MSDeployLog -from .ms_deploy_status import MSDeployStatus -from .migrate_my_sql_request import MigrateMySqlRequest -from .migrate_my_sql_status import MigrateMySqlStatus -from .relay_service_connection_entity import RelayServiceConnectionEntity -from .network_features import NetworkFeatures -from .perf_mon_sample import PerfMonSample -from .perf_mon_set import PerfMonSet -from .perf_mon_response import PerfMonResponse -from .premier_add_on import PremierAddOn -from .process_thread_info import ProcessThreadInfo -from .process_module_info import ProcessModuleInfo -from .process_info import ProcessInfo -from .public_certificate import PublicCertificate -from .restore_request import RestoreRequest -from .restore_response import RestoreResponse -from .site_auth_settings import SiteAuthSettings -from .site_cloneability_criterion import SiteCloneabilityCriterion -from .site_cloneability import SiteCloneability -from .site_config_resource import SiteConfigResource -from .site_configuration_snapshot_info import SiteConfigurationSnapshotInfo -from .site_extension_info import SiteExtensionInfo -from .site_instance import SiteInstance -from .site_logs_config import SiteLogsConfig -from .site_patch_resource import SitePatchResource -from .site_php_error_log_flag import SitePhpErrorLogFlag -from .site_source_control import SiteSourceControl -from .slot_config_names_resource import SlotConfigNamesResource -from .slot_difference import SlotDifference -from .snapshot import Snapshot -from .storage_migration_options import StorageMigrationOptions -from .storage_migration_response import StorageMigrationResponse -from .string_dictionary import StringDictionary -from .triggered_job_run import TriggeredJobRun -from .triggered_job_history import TriggeredJobHistory -from .triggered_web_job import TriggeredWebJob -from .web_job import WebJob -from .address_response import AddressResponse -from .app_service_environment_resource import AppServiceEnvironmentResource -from .app_service_environment_patch_resource import AppServiceEnvironmentPatchResource -from .hosting_environment_diagnostics import HostingEnvironmentDiagnostics -from .metric_availabilily import MetricAvailabilily -from .metric_definition import MetricDefinition -from .sku_info import SkuInfo -from .usage import Usage -from .worker_pool_resource import WorkerPoolResource -from .app_service_plan_patch_resource import AppServicePlanPatchResource -from .hybrid_connection_limits import HybridConnectionLimits +try: + from .app_service_certificate_py3 import AppServiceCertificate + from .app_service_certificate_resource_py3 import AppServiceCertificateResource + from .certificate_details_py3 import CertificateDetails + from .app_service_certificate_order_py3 import AppServiceCertificateOrder + from .app_service_certificate_order_patch_resource_py3 import AppServiceCertificateOrderPatchResource + from .app_service_certificate_patch_resource_py3 import AppServiceCertificatePatchResource + from .certificate_email_py3 import CertificateEmail + from .certificate_order_action_py3 import CertificateOrderAction + from .reissue_certificate_order_request_py3 import ReissueCertificateOrderRequest + from .renew_certificate_order_request_py3 import RenewCertificateOrderRequest + from .site_seal_py3 import SiteSeal + from .site_seal_request_py3 import SiteSealRequest + from .vnet_route_py3 import VnetRoute + from .vnet_info_py3 import VnetInfo + from .vnet_gateway_py3 import VnetGateway + from .user_py3 import User + from .snapshot_py3 import Snapshot + from .resource_metric_availability_py3 import ResourceMetricAvailability + from .resource_metric_definition_py3 import ResourceMetricDefinition + from .push_settings_py3 import PushSettings + from .identifier_py3 import Identifier + from .hybrid_connection_key_py3 import HybridConnectionKey + from .hybrid_connection_py3 import HybridConnection + from .deleted_site_py3 import DeletedSite + from .proxy_only_resource_py3 import ProxyOnlyResource + from .managed_service_identity_py3 import ManagedServiceIdentity + from .slot_swap_status_py3 import SlotSwapStatus + from .cloning_info_py3 import CloningInfo + from .hosting_environment_profile_py3 import HostingEnvironmentProfile + from .ip_security_restriction_py3 import IpSecurityRestriction + from .api_definition_info_py3 import ApiDefinitionInfo + from .cors_settings_py3 import CorsSettings + from .auto_heal_custom_action_py3 import AutoHealCustomAction + from .auto_heal_actions_py3 import AutoHealActions + from .slow_requests_based_trigger_py3 import SlowRequestsBasedTrigger + from .status_codes_based_trigger_py3 import StatusCodesBasedTrigger + from .requests_based_trigger_py3 import RequestsBasedTrigger + from .auto_heal_triggers_py3 import AutoHealTriggers + from .auto_heal_rules_py3 import AutoHealRules + from .site_limits_py3 import SiteLimits + from .ramp_up_rule_py3 import RampUpRule + from .experiments_py3 import Experiments + from .virtual_directory_py3 import VirtualDirectory + from .virtual_application_py3 import VirtualApplication + from .handler_mapping_py3 import HandlerMapping + from .site_machine_key_py3 import SiteMachineKey + from .conn_string_info_py3 import ConnStringInfo + from .azure_storage_info_value_py3 import AzureStorageInfoValue + from .name_value_pair_py3 import NameValuePair + from .site_config_py3 import SiteConfig + from .host_name_ssl_state_py3 import HostNameSslState + from .site_py3 import Site + from .capability_py3 import Capability + from .sku_capacity_py3 import SkuCapacity + from .sku_description_py3 import SkuDescription + from .app_service_plan_py3 import AppServicePlan + from .resource_py3 import Resource + from .default_error_response_error_details_item_py3 import DefaultErrorResponseErrorDetailsItem + from .default_error_response_error_py3 import DefaultErrorResponseError + from .default_error_response_py3 import DefaultErrorResponse, DefaultErrorResponseException + from .name_identifier_py3 import NameIdentifier + from .log_specification_py3 import LogSpecification + from .metric_availability_py3 import MetricAvailability + from .dimension_py3 import Dimension + from .metric_specification_py3 import MetricSpecification + from .service_specification_py3 import ServiceSpecification + from .csm_operation_description_properties_py3 import CsmOperationDescriptionProperties + from .csm_operation_display_py3 import CsmOperationDisplay + from .csm_operation_description_py3 import CsmOperationDescription + from .address_py3 import Address + from .contact_py3 import Contact + from .host_name_py3 import HostName + from .domain_purchase_consent_py3 import DomainPurchaseConsent + from .domain_py3 import Domain + from .domain_availablility_check_result_py3 import DomainAvailablilityCheckResult + from .domain_control_center_sso_request_py3 import DomainControlCenterSsoRequest + from .domain_ownership_identifier_py3 import DomainOwnershipIdentifier + from .domain_patch_resource_py3 import DomainPatchResource + from .domain_recommendation_search_parameters_py3 import DomainRecommendationSearchParameters + from .tld_legal_agreement_py3 import TldLegalAgreement + from .top_level_domain_py3 import TopLevelDomain + from .top_level_domain_agreement_option_py3 import TopLevelDomainAgreementOption + from .certificate_py3 import Certificate + from .certificate_patch_resource_py3 import CertificatePatchResource + from .virtual_network_profile_py3 import VirtualNetworkProfile + from .worker_pool_py3 import WorkerPool + from .virtual_ip_mapping_py3 import VirtualIPMapping + from .stamp_capacity_py3 import StampCapacity + from .network_access_control_entry_py3 import NetworkAccessControlEntry + from .app_service_environment_py3 import AppServiceEnvironment + from .localizable_string_py3 import LocalizableString + from .csm_usage_quota_py3 import CsmUsageQuota + from .error_entity_py3 import ErrorEntity + from .operation_py3 import Operation + from .resource_metric_name_py3 import ResourceMetricName + from .resource_metric_property_py3 import ResourceMetricProperty + from .resource_metric_value_py3 import ResourceMetricValue + from .resource_metric_py3 import ResourceMetric + from .web_app_collection_py3 import WebAppCollection + from .solution_py3 import Solution + from .detector_abnormal_time_period_py3 import DetectorAbnormalTimePeriod + from .abnormal_time_period_py3 import AbnormalTimePeriod + from .detector_definition_py3 import DetectorDefinition + from .diagnostic_metric_sample_py3 import DiagnosticMetricSample + from .diagnostic_metric_set_py3 import DiagnosticMetricSet + from .data_source_py3 import DataSource + from .response_meta_data_py3 import ResponseMetaData + from .analysis_data_py3 import AnalysisData + from .analysis_definition_py3 import AnalysisDefinition + from .data_table_response_column_py3 import DataTableResponseColumn + from .data_table_response_object_py3 import DataTableResponseObject + from .detector_info_py3 import DetectorInfo + from .rendering_py3 import Rendering + from .diagnostic_data_py3 import DiagnosticData + from .detector_response_py3 import DetectorResponse + from .diagnostic_analysis_py3 import DiagnosticAnalysis + from .diagnostic_category_py3 import DiagnosticCategory + from .diagnostic_detector_response_py3 import DiagnosticDetectorResponse + from .stack_minor_version_py3 import StackMinorVersion + from .stack_major_version_py3 import StackMajorVersion + from .application_stack_py3 import ApplicationStack + from .recommendation_py3 import Recommendation + from .recommendation_rule_py3 import RecommendationRule + from .billing_meter_py3 import BillingMeter + from .csm_move_resource_envelope_py3 import CsmMoveResourceEnvelope + from .geo_region_py3 import GeoRegion + from .hosting_environment_deployment_info_py3 import HostingEnvironmentDeploymentInfo + from .deployment_locations_py3 import DeploymentLocations + from .global_csm_sku_description_py3 import GlobalCsmSkuDescription + from .premier_add_on_offer_py3 import PremierAddOnOffer + from .resource_name_availability_py3 import ResourceNameAvailability + from .resource_name_availability_request_py3 import ResourceNameAvailabilityRequest + from .sku_infos_py3 import SkuInfos + from .source_control_py3 import SourceControl + from .validate_request_py3 import ValidateRequest + from .validate_response_error_py3 import ValidateResponseError + from .validate_response_py3 import ValidateResponse + from .vnet_parameters_py3 import VnetParameters + from .vnet_validation_test_failure_py3 import VnetValidationTestFailure + from .vnet_validation_failure_details_py3 import VnetValidationFailureDetails + from .file_system_application_logs_config_py3 import FileSystemApplicationLogsConfig + from .azure_table_storage_application_logs_config_py3 import AzureTableStorageApplicationLogsConfig + from .azure_blob_storage_application_logs_config_py3 import AzureBlobStorageApplicationLogsConfig + from .application_logs_config_py3 import ApplicationLogsConfig + from .azure_blob_storage_http_logs_config_py3 import AzureBlobStorageHttpLogsConfig + from .azure_storage_property_dictionary_resource_py3 import AzureStoragePropertyDictionaryResource + from .database_backup_setting_py3 import DatabaseBackupSetting + from .backup_item_py3 import BackupItem + from .backup_schedule_py3 import BackupSchedule + from .backup_request_py3 import BackupRequest + from .conn_string_value_type_pair_py3 import ConnStringValueTypePair + from .connection_string_dictionary_py3 import ConnectionStringDictionary + from .continuous_web_job_py3 import ContinuousWebJob + from .csm_publishing_profile_options_py3 import CsmPublishingProfileOptions + from .csm_slot_entity_py3 import CsmSlotEntity + from .custom_hostname_analysis_result_py3 import CustomHostnameAnalysisResult + from .deleted_app_restore_request_py3 import DeletedAppRestoreRequest + from .deployment_py3 import Deployment + from .enabled_config_py3 import EnabledConfig + from .file_system_http_logs_config_py3 import FileSystemHttpLogsConfig + from .function_envelope_py3 import FunctionEnvelope + from .function_secrets_py3 import FunctionSecrets + from .host_name_binding_py3 import HostNameBinding + from .http_logs_config_py3 import HttpLogsConfig + from .ms_deploy_py3 import MSDeploy + from .ms_deploy_log_entry_py3 import MSDeployLogEntry + from .ms_deploy_log_py3 import MSDeployLog + from .ms_deploy_status_py3 import MSDeployStatus + from .migrate_my_sql_request_py3 import MigrateMySqlRequest + from .migrate_my_sql_status_py3 import MigrateMySqlStatus + from .relay_service_connection_entity_py3 import RelayServiceConnectionEntity + from .network_features_py3 import NetworkFeatures + from .perf_mon_sample_py3 import PerfMonSample + from .perf_mon_set_py3 import PerfMonSet + from .perf_mon_response_py3 import PerfMonResponse + from .premier_add_on_py3 import PremierAddOn + from .premier_add_on_patch_resource_py3 import PremierAddOnPatchResource + from .private_access_subnet_py3 import PrivateAccessSubnet + from .private_access_virtual_network_py3 import PrivateAccessVirtualNetwork + from .private_access_py3 import PrivateAccess + from .process_thread_info_py3 import ProcessThreadInfo + from .process_module_info_py3 import ProcessModuleInfo + from .process_info_py3 import ProcessInfo + from .public_certificate_py3 import PublicCertificate + from .restore_request_py3 import RestoreRequest + from .site_auth_settings_py3 import SiteAuthSettings + from .site_cloneability_criterion_py3 import SiteCloneabilityCriterion + from .site_cloneability_py3 import SiteCloneability + from .site_config_resource_py3 import SiteConfigResource + from .site_configuration_snapshot_info_py3 import SiteConfigurationSnapshotInfo + from .site_extension_info_py3 import SiteExtensionInfo + from .site_instance_py3 import SiteInstance + from .site_logs_config_py3 import SiteLogsConfig + from .site_patch_resource_py3 import SitePatchResource + from .site_php_error_log_flag_py3 import SitePhpErrorLogFlag + from .site_source_control_py3 import SiteSourceControl + from .slot_config_names_resource_py3 import SlotConfigNamesResource + from .slot_difference_py3 import SlotDifference + from .snapshot_recovery_source_py3 import SnapshotRecoverySource + from .snapshot_restore_request_py3 import SnapshotRestoreRequest + from .storage_migration_options_py3 import StorageMigrationOptions + from .storage_migration_response_py3 import StorageMigrationResponse + from .string_dictionary_py3 import StringDictionary + from .swift_virtual_network_py3 import SwiftVirtualNetwork + from .triggered_job_run_py3 import TriggeredJobRun + from .triggered_job_history_py3 import TriggeredJobHistory + from .triggered_web_job_py3 import TriggeredWebJob + from .web_job_py3 import WebJob + from .address_response_py3 import AddressResponse + from .app_service_environment_resource_py3 import AppServiceEnvironmentResource + from .app_service_environment_patch_resource_py3 import AppServiceEnvironmentPatchResource + from .hosting_environment_diagnostics_py3 import HostingEnvironmentDiagnostics + from .metric_availabilily_py3 import MetricAvailabilily + from .metric_definition_py3 import MetricDefinition + from .sku_info_py3 import SkuInfo + from .usage_py3 import Usage + from .worker_pool_resource_py3 import WorkerPoolResource + from .app_service_plan_patch_resource_py3 import AppServicePlanPatchResource + from .hybrid_connection_limits_py3 import HybridConnectionLimits + from .resource_health_metadata_py3 import ResourceHealthMetadata +except (SyntaxError, ImportError): + from .app_service_certificate import AppServiceCertificate + from .app_service_certificate_resource import AppServiceCertificateResource + from .certificate_details import CertificateDetails + from .app_service_certificate_order import AppServiceCertificateOrder + from .app_service_certificate_order_patch_resource import AppServiceCertificateOrderPatchResource + from .app_service_certificate_patch_resource import AppServiceCertificatePatchResource + from .certificate_email import CertificateEmail + from .certificate_order_action import CertificateOrderAction + from .reissue_certificate_order_request import ReissueCertificateOrderRequest + from .renew_certificate_order_request import RenewCertificateOrderRequest + from .site_seal import SiteSeal + from .site_seal_request import SiteSealRequest + from .vnet_route import VnetRoute + from .vnet_info import VnetInfo + from .vnet_gateway import VnetGateway + from .user import User + from .snapshot import Snapshot + from .resource_metric_availability import ResourceMetricAvailability + from .resource_metric_definition import ResourceMetricDefinition + from .push_settings import PushSettings + from .identifier import Identifier + from .hybrid_connection_key import HybridConnectionKey + from .hybrid_connection import HybridConnection + from .deleted_site import DeletedSite + from .proxy_only_resource import ProxyOnlyResource + from .managed_service_identity import ManagedServiceIdentity + from .slot_swap_status import SlotSwapStatus + from .cloning_info import CloningInfo + from .hosting_environment_profile import HostingEnvironmentProfile + from .ip_security_restriction import IpSecurityRestriction + from .api_definition_info import ApiDefinitionInfo + from .cors_settings import CorsSettings + from .auto_heal_custom_action import AutoHealCustomAction + from .auto_heal_actions import AutoHealActions + from .slow_requests_based_trigger import SlowRequestsBasedTrigger + from .status_codes_based_trigger import StatusCodesBasedTrigger + from .requests_based_trigger import RequestsBasedTrigger + from .auto_heal_triggers import AutoHealTriggers + from .auto_heal_rules import AutoHealRules + from .site_limits import SiteLimits + from .ramp_up_rule import RampUpRule + from .experiments import Experiments + from .virtual_directory import VirtualDirectory + from .virtual_application import VirtualApplication + from .handler_mapping import HandlerMapping + from .site_machine_key import SiteMachineKey + from .conn_string_info import ConnStringInfo + from .azure_storage_info_value import AzureStorageInfoValue + from .name_value_pair import NameValuePair + from .site_config import SiteConfig + from .host_name_ssl_state import HostNameSslState + from .site import Site + from .capability import Capability + from .sku_capacity import SkuCapacity + from .sku_description import SkuDescription + from .app_service_plan import AppServicePlan + from .resource import Resource + from .default_error_response_error_details_item import DefaultErrorResponseErrorDetailsItem + from .default_error_response_error import DefaultErrorResponseError + from .default_error_response import DefaultErrorResponse, DefaultErrorResponseException + from .name_identifier import NameIdentifier + from .log_specification import LogSpecification + from .metric_availability import MetricAvailability + from .dimension import Dimension + from .metric_specification import MetricSpecification + from .service_specification import ServiceSpecification + from .csm_operation_description_properties import CsmOperationDescriptionProperties + from .csm_operation_display import CsmOperationDisplay + from .csm_operation_description import CsmOperationDescription + from .address import Address + from .contact import Contact + from .host_name import HostName + from .domain_purchase_consent import DomainPurchaseConsent + from .domain import Domain + from .domain_availablility_check_result import DomainAvailablilityCheckResult + from .domain_control_center_sso_request import DomainControlCenterSsoRequest + from .domain_ownership_identifier import DomainOwnershipIdentifier + from .domain_patch_resource import DomainPatchResource + from .domain_recommendation_search_parameters import DomainRecommendationSearchParameters + from .tld_legal_agreement import TldLegalAgreement + from .top_level_domain import TopLevelDomain + from .top_level_domain_agreement_option import TopLevelDomainAgreementOption + from .certificate import Certificate + from .certificate_patch_resource import CertificatePatchResource + from .virtual_network_profile import VirtualNetworkProfile + from .worker_pool import WorkerPool + from .virtual_ip_mapping import VirtualIPMapping + from .stamp_capacity import StampCapacity + from .network_access_control_entry import NetworkAccessControlEntry + from .app_service_environment import AppServiceEnvironment + from .localizable_string import LocalizableString + from .csm_usage_quota import CsmUsageQuota + from .error_entity import ErrorEntity + from .operation import Operation + from .resource_metric_name import ResourceMetricName + from .resource_metric_property import ResourceMetricProperty + from .resource_metric_value import ResourceMetricValue + from .resource_metric import ResourceMetric + from .web_app_collection import WebAppCollection + from .solution import Solution + from .detector_abnormal_time_period import DetectorAbnormalTimePeriod + from .abnormal_time_period import AbnormalTimePeriod + from .detector_definition import DetectorDefinition + from .diagnostic_metric_sample import DiagnosticMetricSample + from .diagnostic_metric_set import DiagnosticMetricSet + from .data_source import DataSource + from .response_meta_data import ResponseMetaData + from .analysis_data import AnalysisData + from .analysis_definition import AnalysisDefinition + from .data_table_response_column import DataTableResponseColumn + from .data_table_response_object import DataTableResponseObject + from .detector_info import DetectorInfo + from .rendering import Rendering + from .diagnostic_data import DiagnosticData + from .detector_response import DetectorResponse + from .diagnostic_analysis import DiagnosticAnalysis + from .diagnostic_category import DiagnosticCategory + from .diagnostic_detector_response import DiagnosticDetectorResponse + from .stack_minor_version import StackMinorVersion + from .stack_major_version import StackMajorVersion + from .application_stack import ApplicationStack + from .recommendation import Recommendation + from .recommendation_rule import RecommendationRule + from .billing_meter import BillingMeter + from .csm_move_resource_envelope import CsmMoveResourceEnvelope + from .geo_region import GeoRegion + from .hosting_environment_deployment_info import HostingEnvironmentDeploymentInfo + from .deployment_locations import DeploymentLocations + from .global_csm_sku_description import GlobalCsmSkuDescription + from .premier_add_on_offer import PremierAddOnOffer + from .resource_name_availability import ResourceNameAvailability + from .resource_name_availability_request import ResourceNameAvailabilityRequest + from .sku_infos import SkuInfos + from .source_control import SourceControl + from .validate_request import ValidateRequest + from .validate_response_error import ValidateResponseError + from .validate_response import ValidateResponse + from .vnet_parameters import VnetParameters + from .vnet_validation_test_failure import VnetValidationTestFailure + from .vnet_validation_failure_details import VnetValidationFailureDetails + from .file_system_application_logs_config import FileSystemApplicationLogsConfig + from .azure_table_storage_application_logs_config import AzureTableStorageApplicationLogsConfig + from .azure_blob_storage_application_logs_config import AzureBlobStorageApplicationLogsConfig + from .application_logs_config import ApplicationLogsConfig + from .azure_blob_storage_http_logs_config import AzureBlobStorageHttpLogsConfig + from .azure_storage_property_dictionary_resource import AzureStoragePropertyDictionaryResource + from .database_backup_setting import DatabaseBackupSetting + from .backup_item import BackupItem + from .backup_schedule import BackupSchedule + from .backup_request import BackupRequest + from .conn_string_value_type_pair import ConnStringValueTypePair + from .connection_string_dictionary import ConnectionStringDictionary + from .continuous_web_job import ContinuousWebJob + from .csm_publishing_profile_options import CsmPublishingProfileOptions + from .csm_slot_entity import CsmSlotEntity + from .custom_hostname_analysis_result import CustomHostnameAnalysisResult + from .deleted_app_restore_request import DeletedAppRestoreRequest + from .deployment import Deployment + from .enabled_config import EnabledConfig + from .file_system_http_logs_config import FileSystemHttpLogsConfig + from .function_envelope import FunctionEnvelope + from .function_secrets import FunctionSecrets + from .host_name_binding import HostNameBinding + from .http_logs_config import HttpLogsConfig + from .ms_deploy import MSDeploy + from .ms_deploy_log_entry import MSDeployLogEntry + from .ms_deploy_log import MSDeployLog + from .ms_deploy_status import MSDeployStatus + from .migrate_my_sql_request import MigrateMySqlRequest + from .migrate_my_sql_status import MigrateMySqlStatus + from .relay_service_connection_entity import RelayServiceConnectionEntity + from .network_features import NetworkFeatures + from .perf_mon_sample import PerfMonSample + from .perf_mon_set import PerfMonSet + from .perf_mon_response import PerfMonResponse + from .premier_add_on import PremierAddOn + from .premier_add_on_patch_resource import PremierAddOnPatchResource + from .private_access_subnet import PrivateAccessSubnet + from .private_access_virtual_network import PrivateAccessVirtualNetwork + from .private_access import PrivateAccess + from .process_thread_info import ProcessThreadInfo + from .process_module_info import ProcessModuleInfo + from .process_info import ProcessInfo + from .public_certificate import PublicCertificate + from .restore_request import RestoreRequest + from .site_auth_settings import SiteAuthSettings + from .site_cloneability_criterion import SiteCloneabilityCriterion + from .site_cloneability import SiteCloneability + from .site_config_resource import SiteConfigResource + from .site_configuration_snapshot_info import SiteConfigurationSnapshotInfo + from .site_extension_info import SiteExtensionInfo + from .site_instance import SiteInstance + from .site_logs_config import SiteLogsConfig + from .site_patch_resource import SitePatchResource + from .site_php_error_log_flag import SitePhpErrorLogFlag + from .site_source_control import SiteSourceControl + from .slot_config_names_resource import SlotConfigNamesResource + from .slot_difference import SlotDifference + from .snapshot_recovery_source import SnapshotRecoverySource + from .snapshot_restore_request import SnapshotRestoreRequest + from .storage_migration_options import StorageMigrationOptions + from .storage_migration_response import StorageMigrationResponse + from .string_dictionary import StringDictionary + from .swift_virtual_network import SwiftVirtualNetwork + from .triggered_job_run import TriggeredJobRun + from .triggered_job_history import TriggeredJobHistory + from .triggered_web_job import TriggeredWebJob + from .web_job import WebJob + from .address_response import AddressResponse + from .app_service_environment_resource import AppServiceEnvironmentResource + from .app_service_environment_patch_resource import AppServiceEnvironmentPatchResource + from .hosting_environment_diagnostics import HostingEnvironmentDiagnostics + from .metric_availabilily import MetricAvailabilily + from .metric_definition import MetricDefinition + from .sku_info import SkuInfo + from .usage import Usage + from .worker_pool_resource import WorkerPoolResource + from .app_service_plan_patch_resource import AppServicePlanPatchResource + from .hybrid_connection_limits import HybridConnectionLimits + from .resource_health_metadata import ResourceHealthMetadata from .app_service_certificate_order_paged import AppServiceCertificateOrderPaged from .app_service_certificate_resource_paged import AppServiceCertificateResourcePaged from .csm_operation_description_paged import CsmOperationDescriptionPaged @@ -221,11 +461,14 @@ from .tld_legal_agreement_paged import TldLegalAgreementPaged from .certificate_paged import CertificatePaged from .deleted_site_paged import DeletedSitePaged +from .detector_response_paged import DetectorResponsePaged from .diagnostic_category_paged import DiagnosticCategoryPaged from .analysis_definition_paged import AnalysisDefinitionPaged from .detector_definition_paged import DetectorDefinitionPaged from .application_stack_paged import ApplicationStackPaged +from .recommendation_paged import RecommendationPaged from .source_control_paged import SourceControlPaged +from .billing_meter_paged import BillingMeterPaged from .geo_region_paged import GeoRegionPaged from .identifier_paged import IdentifierPaged from .premier_add_on_offer_paged import PremierAddOnOfferPaged @@ -260,6 +503,7 @@ from .app_service_plan_paged import AppServicePlanPaged from .str_paged import StrPaged from .hybrid_connection_paged import HybridConnectionPaged +from .resource_health_metadata_paged import ResourceHealthMetadataPaged from .web_site_management_client_enums import ( KeyVaultSecretStatus, CertificateProductType, @@ -267,12 +511,17 @@ CertificateOrderStatus, CertificateOrderActionType, RouteType, + ManagedServiceIdentityType, + IpFilterTag, AutoHealActionType, ConnectionStringType, + AzureStorageType, + AzureStorageState, ScmType, ManagedPipelineMode, SiteLoadBalancing, SupportedTlsVersions, + FtpsState, SslState, HostType, UsageState, @@ -292,6 +541,7 @@ OperationStatus, IssueType, SolutionType, + RenderingType, ResourceScopeType, NotificationLevel, Channels, @@ -303,7 +553,6 @@ BackupItemStatus, DatabaseType, FrequencyUnit, - BackupRestoreOperationType, ContinuousWebJobStatus, WebJobType, PublishingProfileFormat, @@ -312,6 +561,7 @@ MSDeployProvisioningState, MySqlMigrationType, PublicCertificateLocation, + BackupRestoreOperationType, UnauthenticatedClientAction, BuiltInAuthenticationProvider, CloneAbilityResult, @@ -337,15 +587,14 @@ 'VnetInfo', 'VnetGateway', 'User', - 'SnapshotRecoveryTarget', - 'SnapshotRecoveryRequest', + 'Snapshot', 'ResourceMetricAvailability', - 'ResourceMetricName', 'ResourceMetricDefinition', 'PushSettings', 'Identifier', 'HybridConnectionKey', 'HybridConnection', + 'DeletedSite', 'ProxyOnlyResource', 'ManagedServiceIdentity', 'SlotSwapStatus', @@ -369,6 +618,7 @@ 'HandlerMapping', 'SiteMachineKey', 'ConnStringInfo', + 'AzureStorageInfoValue', 'NameValuePair', 'SiteConfig', 'HostNameSslState', @@ -378,7 +628,11 @@ 'SkuDescription', 'AppServicePlan', 'Resource', + 'DefaultErrorResponseErrorDetailsItem', + 'DefaultErrorResponseError', + 'DefaultErrorResponse', 'DefaultErrorResponseException', 'NameIdentifier', + 'LogSpecification', 'MetricAvailability', 'Dimension', 'MetricSpecification', @@ -396,7 +650,6 @@ 'DomainOwnershipIdentifier', 'DomainPatchResource', 'DomainRecommendationSearchParameters', - 'ErrorResponse', 'ErrorResponseException', 'TldLegalAgreement', 'TopLevelDomain', 'TopLevelDomainAgreementOption', @@ -412,11 +665,11 @@ 'CsmUsageQuota', 'ErrorEntity', 'Operation', + 'ResourceMetricName', 'ResourceMetricProperty', 'ResourceMetricValue', 'ResourceMetric', 'WebAppCollection', - 'DeletedSite', 'Solution', 'DetectorAbnormalTimePeriod', 'AbnormalTimePeriod', @@ -427,6 +680,12 @@ 'ResponseMetaData', 'AnalysisData', 'AnalysisDefinition', + 'DataTableResponseColumn', + 'DataTableResponseObject', + 'DetectorInfo', + 'Rendering', + 'DiagnosticData', + 'DetectorResponse', 'DiagnosticAnalysis', 'DiagnosticCategory', 'DiagnosticDetectorResponse', @@ -435,6 +694,7 @@ 'ApplicationStack', 'Recommendation', 'RecommendationRule', + 'BillingMeter', 'CsmMoveResourceEnvelope', 'GeoRegion', 'HostingEnvironmentDeploymentInfo', @@ -456,6 +716,7 @@ 'AzureBlobStorageApplicationLogsConfig', 'ApplicationLogsConfig', 'AzureBlobStorageHttpLogsConfig', + 'AzureStoragePropertyDictionaryResource', 'DatabaseBackupSetting', 'BackupItem', 'BackupSchedule', @@ -466,6 +727,7 @@ 'CsmPublishingProfileOptions', 'CsmSlotEntity', 'CustomHostnameAnalysisResult', + 'DeletedAppRestoreRequest', 'Deployment', 'EnabledConfig', 'FileSystemHttpLogsConfig', @@ -485,12 +747,15 @@ 'PerfMonSet', 'PerfMonResponse', 'PremierAddOn', + 'PremierAddOnPatchResource', + 'PrivateAccessSubnet', + 'PrivateAccessVirtualNetwork', + 'PrivateAccess', 'ProcessThreadInfo', 'ProcessModuleInfo', 'ProcessInfo', 'PublicCertificate', 'RestoreRequest', - 'RestoreResponse', 'SiteAuthSettings', 'SiteCloneabilityCriterion', 'SiteCloneability', @@ -504,10 +769,12 @@ 'SiteSourceControl', 'SlotConfigNamesResource', 'SlotDifference', - 'Snapshot', + 'SnapshotRecoverySource', + 'SnapshotRestoreRequest', 'StorageMigrationOptions', 'StorageMigrationResponse', 'StringDictionary', + 'SwiftVirtualNetwork', 'TriggeredJobRun', 'TriggeredJobHistory', 'TriggeredWebJob', @@ -523,6 +790,7 @@ 'WorkerPoolResource', 'AppServicePlanPatchResource', 'HybridConnectionLimits', + 'ResourceHealthMetadata', 'AppServiceCertificateOrderPaged', 'AppServiceCertificateResourcePaged', 'CsmOperationDescriptionPaged', @@ -533,11 +801,14 @@ 'TldLegalAgreementPaged', 'CertificatePaged', 'DeletedSitePaged', + 'DetectorResponsePaged', 'DiagnosticCategoryPaged', 'AnalysisDefinitionPaged', 'DetectorDefinitionPaged', 'ApplicationStackPaged', + 'RecommendationPaged', 'SourceControlPaged', + 'BillingMeterPaged', 'GeoRegionPaged', 'IdentifierPaged', 'PremierAddOnOfferPaged', @@ -572,18 +843,24 @@ 'AppServicePlanPaged', 'StrPaged', 'HybridConnectionPaged', + 'ResourceHealthMetadataPaged', 'KeyVaultSecretStatus', 'CertificateProductType', 'ProvisioningState', 'CertificateOrderStatus', 'CertificateOrderActionType', 'RouteType', + 'ManagedServiceIdentityType', + 'IpFilterTag', 'AutoHealActionType', 'ConnectionStringType', + 'AzureStorageType', + 'AzureStorageState', 'ScmType', 'ManagedPipelineMode', 'SiteLoadBalancing', 'SupportedTlsVersions', + 'FtpsState', 'SslState', 'HostType', 'UsageState', @@ -603,6 +880,7 @@ 'OperationStatus', 'IssueType', 'SolutionType', + 'RenderingType', 'ResourceScopeType', 'NotificationLevel', 'Channels', @@ -614,7 +892,6 @@ 'BackupItemStatus', 'DatabaseType', 'FrequencyUnit', - 'BackupRestoreOperationType', 'ContinuousWebJobStatus', 'WebJobType', 'PublishingProfileFormat', @@ -623,6 +900,7 @@ 'MSDeployProvisioningState', 'MySqlMigrationType', 'PublicCertificateLocation', + 'BackupRestoreOperationType', 'UnauthenticatedClientAction', 'BuiltInAuthenticationProvider', 'CloneAbilityResult', diff --git a/azure-mgmt-web/azure/mgmt/web/models/abnormal_time_period.py b/azure-mgmt-web/azure/mgmt/web/models/abnormal_time_period.py index d2b01c9e5999..1e2a3eebde83 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/abnormal_time_period.py +++ b/azure-mgmt-web/azure/mgmt/web/models/abnormal_time_period.py @@ -32,9 +32,9 @@ class AbnormalTimePeriod(Model): 'solutions': {'key': 'solutions', 'type': '[Solution]'}, } - def __init__(self, start_time=None, end_time=None, events=None, solutions=None): - super(AbnormalTimePeriod, self).__init__() - self.start_time = start_time - self.end_time = end_time - self.events = events - self.solutions = solutions + def __init__(self, **kwargs): + super(AbnormalTimePeriod, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.events = kwargs.get('events', None) + self.solutions = kwargs.get('solutions', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/abnormal_time_period_py3.py b/azure-mgmt-web/azure/mgmt/web/models/abnormal_time_period_py3.py new file mode 100644 index 000000000000..7b621b2aa297 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/abnormal_time_period_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.DetectorAbnormalTimePeriod] + :param solutions: List of proposed solutions + :type solutions: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/address.py b/azure-mgmt-web/azure/mgmt/web/models/address.py index 9b8956e9ed18..712c11c55bf6 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/address.py +++ b/azure-mgmt-web/azure/mgmt/web/models/address.py @@ -15,17 +15,19 @@ class Address(Model): """Address information for domain registration. - :param address1: First line of an Address. + All required parameters must be populated in order to send to Azure. + + :param address1: Required. First line of an Address. :type address1: str :param address2: The second line of the Address. Optional. :type address2: str - :param city: The city for the address. + :param city: Required. The city for the address. :type city: str - :param country: The country for the address. + :param country: Required. The country for the address. :type country: str - :param postal_code: The postal code for the address. + :param postal_code: Required. The postal code for the address. :type postal_code: str - :param state: The state or province for the address. + :param state: Required. The state or province for the address. :type state: str """ @@ -46,11 +48,11 @@ class Address(Model): 'state': {'key': 'state', 'type': 'str'}, } - def __init__(self, address1, city, country, postal_code, state, address2=None): - super(Address, self).__init__() - self.address1 = address1 - self.address2 = address2 - self.city = city - self.country = country - self.postal_code = postal_code - self.state = state + def __init__(self, **kwargs): + super(Address, self).__init__(**kwargs) + self.address1 = kwargs.get('address1', None) + self.address2 = kwargs.get('address2', None) + self.city = kwargs.get('city', None) + self.country = kwargs.get('country', None) + self.postal_code = kwargs.get('postal_code', None) + self.state = kwargs.get('state', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/address_py3.py b/azure-mgmt-web/azure/mgmt/web/models/address_py3.py new file mode 100644 index 000000000000..5f7c235ed217 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/address_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Address(Model): + """Address information for domain registration. + + All required parameters must be populated in order to send to Azure. + + :param address1: Required. First line of an Address. + :type address1: str + :param address2: The second line of the Address. Optional. + :type address2: str + :param city: Required. The city for the address. + :type city: str + :param country: Required. The country for the address. + :type country: str + :param postal_code: Required. The postal code for the address. + :type postal_code: str + :param state: Required. The state or province for the address. + :type state: str + """ + + _validation = { + 'address1': {'required': True}, + 'city': {'required': True}, + 'country': {'required': True}, + 'postal_code': {'required': True}, + 'state': {'required': True}, + } + + _attribute_map = { + 'address1': {'key': 'address1', 'type': 'str'}, + 'address2': {'key': 'address2', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + 'country': {'key': 'country', 'type': 'str'}, + 'postal_code': {'key': 'postalCode', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, *, address1: str, city: str, country: str, postal_code: str, state: str, address2: str=None, **kwargs) -> None: + super(Address, self).__init__(**kwargs) + self.address1 = address1 + self.address2 = address2 + self.city = city + self.country = country + self.postal_code = postal_code + self.state = state diff --git a/azure-mgmt-web/azure/mgmt/web/models/address_response.py b/azure-mgmt-web/azure/mgmt/web/models/address_response.py index 7bb9c356952b..851a713cc4ee 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/address_response.py +++ b/azure-mgmt-web/azure/mgmt/web/models/address_response.py @@ -34,9 +34,9 @@ class AddressResponse(Model): 'vip_mappings': {'key': 'vipMappings', 'type': '[VirtualIPMapping]'}, } - def __init__(self, service_ip_address=None, internal_ip_address=None, outbound_ip_addresses=None, vip_mappings=None): - super(AddressResponse, self).__init__() - self.service_ip_address = service_ip_address - self.internal_ip_address = internal_ip_address - self.outbound_ip_addresses = outbound_ip_addresses - self.vip_mappings = vip_mappings + def __init__(self, **kwargs): + super(AddressResponse, self).__init__(**kwargs) + self.service_ip_address = kwargs.get('service_ip_address', None) + self.internal_ip_address = kwargs.get('internal_ip_address', None) + self.outbound_ip_addresses = kwargs.get('outbound_ip_addresses', None) + self.vip_mappings = kwargs.get('vip_mappings', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/address_response_py3.py b/azure-mgmt-web/azure/mgmt/web/models/address_response_py3.py new file mode 100644 index 000000000000..5268c2dce078 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/address_response_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AddressResponse(Model): + """Describes main public IP address and any extra virtual IPs. + + :param service_ip_address: Main public virtual IP. + :type service_ip_address: str + :param internal_ip_address: Virtual Network internal IP address of the App + Service Environment if it is in internal load-balancing mode. + :type internal_ip_address: str + :param outbound_ip_addresses: IP addresses appearing on outbound + connections. + :type outbound_ip_addresses: list[str] + :param vip_mappings: Additional virtual IPs. + :type vip_mappings: list[~azure.mgmt.web.models.VirtualIPMapping] + """ + + _attribute_map = { + 'service_ip_address': {'key': 'serviceIpAddress', 'type': 'str'}, + 'internal_ip_address': {'key': 'internalIpAddress', 'type': 'str'}, + 'outbound_ip_addresses': {'key': 'outboundIpAddresses', 'type': '[str]'}, + 'vip_mappings': {'key': 'vipMappings', 'type': '[VirtualIPMapping]'}, + } + + def __init__(self, *, service_ip_address: str=None, internal_ip_address: str=None, outbound_ip_addresses=None, vip_mappings=None, **kwargs) -> None: + super(AddressResponse, self).__init__(**kwargs) + self.service_ip_address = service_ip_address + self.internal_ip_address = internal_ip_address + self.outbound_ip_addresses = outbound_ip_addresses + self.vip_mappings = vip_mappings diff --git a/azure-mgmt-web/azure/mgmt/web/models/analysis_data.py b/azure-mgmt-web/azure/mgmt/web/models/analysis_data.py index 648935998a8f..0c2606f3ba50 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/analysis_data.py +++ b/azure-mgmt-web/azure/mgmt/web/models/analysis_data.py @@ -35,10 +35,10 @@ class AnalysisData(Model): 'detector_meta_data': {'key': 'detectorMetaData', 'type': 'ResponseMetaData'}, } - def __init__(self, source=None, detector_definition=None, metrics=None, data=None, detector_meta_data=None): - super(AnalysisData, self).__init__() - self.source = source - self.detector_definition = detector_definition - self.metrics = metrics - self.data = data - self.detector_meta_data = detector_meta_data + def __init__(self, **kwargs): + super(AnalysisData, self).__init__(**kwargs) + self.source = kwargs.get('source', None) + self.detector_definition = kwargs.get('detector_definition', None) + self.metrics = kwargs.get('metrics', None) + self.data = kwargs.get('data', None) + self.detector_meta_data = kwargs.get('detector_meta_data', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/analysis_data_py3.py b/azure-mgmt-web/azure/mgmt/web/models/analysis_data_py3.py new file mode 100644 index 000000000000..38d0cb227509 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/analysis_data_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.DetectorDefinition + :param metrics: Source Metrics + :type metrics: list[~azure.mgmt.web.models.DiagnosticMetricSet] + :param data: Additional Source Data + :type data: list[list[~azure.mgmt.web.models.NameValuePair]] + :param detector_meta_data: Detector Meta Data + :type detector_meta_data: ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/analysis_definition.py b/azure-mgmt-web/azure/mgmt/web/models/analysis_definition.py index 3cdc5f3bf839..58943eea9d91 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/analysis_definition.py +++ b/azure-mgmt-web/azure/mgmt/web/models/analysis_definition.py @@ -45,6 +45,6 @@ class AnalysisDefinition(ProxyOnlyResource): 'description': {'key': 'properties.description', 'type': 'str'}, } - def __init__(self, kind=None): - super(AnalysisDefinition, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(AnalysisDefinition, self).__init__(**kwargs) self.description = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/analysis_definition_py3.py b/azure-mgmt-web/azure/mgmt/web/models/analysis_definition_py3.py new file mode 100644 index 000000000000..f3697219fad0 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/analysis_definition_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/api_definition_info.py b/azure-mgmt-web/azure/mgmt/web/models/api_definition_info.py index 63d8e2be4c4e..ea39cea45caf 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/api_definition_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/api_definition_info.py @@ -23,6 +23,6 @@ class ApiDefinitionInfo(Model): 'url': {'key': 'url', 'type': 'str'}, } - def __init__(self, url=None): - super(ApiDefinitionInfo, self).__init__() - self.url = url + def __init__(self, **kwargs): + super(ApiDefinitionInfo, self).__init__(**kwargs) + self.url = kwargs.get('url', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/api_definition_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/api_definition_info_py3.py new file mode 100644 index 000000000000..c871cfac7df2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/api_definition_info_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate.py index ddeb88a33f07..a678f8540c30 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate.py @@ -42,8 +42,8 @@ class AppServiceCertificate(Model): 'provisioning_state': {'key': 'provisioningState', 'type': 'KeyVaultSecretStatus'}, } - def __init__(self, key_vault_id=None, key_vault_secret_name=None): - super(AppServiceCertificate, self).__init__() - self.key_vault_id = key_vault_id - self.key_vault_secret_name = key_vault_secret_name + def __init__(self, **kwargs): + super(AppServiceCertificate, self).__init__(**kwargs) + self.key_vault_id = kwargs.get('key_vault_id', None) + self.key_vault_secret_name = kwargs.get('key_vault_secret_name', None) self.provisioning_state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order.py index bf72656661c5..187b8ef08aca 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order.py @@ -18,13 +18,15 @@ class AppServiceCertificateOrder(Resource): 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: Resource Location. + :param location: Required. Resource Location. :type location: str :ivar type: Resource type. :vartype type: str @@ -42,8 +44,9 @@ class AppServiceCertificateOrder(Resource): :type validity_in_years: int :param key_size: Certificate key size. Default value: 2048 . :type key_size: int - :param product_type: Certificate product type. Possible values include: - 'StandardDomainValidatedSsl', 'StandardDomainValidatedWildCardSsl' + :param product_type: Required. Certificate product type. Possible values + include: 'StandardDomainValidatedSsl', + 'StandardDomainValidatedWildCardSsl' :type product_type: str or ~azure.mgmt.web.models.CertificateProductType :param auto_renew: true if the certificate should be automatically renewed when it expires; otherwise, false. @@ -131,19 +134,19 @@ class AppServiceCertificateOrder(Resource): 'next_auto_renewal_time_stamp': {'key': 'properties.nextAutoRenewalTimeStamp', 'type': 'iso-8601'}, } - def __init__(self, location, product_type, kind=None, tags=None, certificates=None, distinguished_name=None, validity_in_years=1, key_size=2048, auto_renew=True, csr=None): - super(AppServiceCertificateOrder, self).__init__(kind=kind, location=location, tags=tags) - self.certificates = certificates - self.distinguished_name = distinguished_name + def __init__(self, **kwargs): + super(AppServiceCertificateOrder, self).__init__(**kwargs) + self.certificates = kwargs.get('certificates', None) + self.distinguished_name = kwargs.get('distinguished_name', None) self.domain_verification_token = None - self.validity_in_years = validity_in_years - self.key_size = key_size - self.product_type = product_type - self.auto_renew = auto_renew + self.validity_in_years = kwargs.get('validity_in_years', 1) + self.key_size = kwargs.get('key_size', 2048) + self.product_type = kwargs.get('product_type', None) + self.auto_renew = kwargs.get('auto_renew', True) self.provisioning_state = None self.status = None self.signed_certificate = None - self.csr = csr + self.csr = kwargs.get('csr', None) self.intermediate = None self.root = None self.serial_number = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_patch_resource.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_patch_resource.py index d8e89475dd34..131e707b8ac6 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_patch_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_patch_resource.py @@ -18,6 +18,8 @@ class AppServiceCertificateOrderPatchResource(ProxyOnlyResource): 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. @@ -38,8 +40,9 @@ class AppServiceCertificateOrderPatchResource(ProxyOnlyResource): :type validity_in_years: int :param key_size: Certificate key size. Default value: 2048 . :type key_size: int - :param product_type: Certificate product type. Possible values include: - 'StandardDomainValidatedSsl', 'StandardDomainValidatedWildCardSsl' + :param product_type: Required. Certificate product type. Possible values + include: 'StandardDomainValidatedSsl', + 'StandardDomainValidatedWildCardSsl' :type product_type: str or ~azure.mgmt.web.models.CertificateProductType :param auto_renew: true if the certificate should be automatically renewed when it expires; otherwise, false. @@ -124,19 +127,19 @@ class AppServiceCertificateOrderPatchResource(ProxyOnlyResource): 'next_auto_renewal_time_stamp': {'key': 'properties.nextAutoRenewalTimeStamp', 'type': 'iso-8601'}, } - def __init__(self, product_type, kind=None, certificates=None, distinguished_name=None, validity_in_years=1, key_size=2048, auto_renew=True, csr=None): - super(AppServiceCertificateOrderPatchResource, self).__init__(kind=kind) - self.certificates = certificates - self.distinguished_name = distinguished_name + def __init__(self, **kwargs): + super(AppServiceCertificateOrderPatchResource, self).__init__(**kwargs) + self.certificates = kwargs.get('certificates', None) + self.distinguished_name = kwargs.get('distinguished_name', None) self.domain_verification_token = None - self.validity_in_years = validity_in_years - self.key_size = key_size - self.product_type = product_type - self.auto_renew = auto_renew + self.validity_in_years = kwargs.get('validity_in_years', 1) + self.key_size = kwargs.get('key_size', 2048) + self.product_type = kwargs.get('product_type', None) + self.auto_renew = kwargs.get('auto_renew', True) self.provisioning_state = None self.status = None self.signed_certificate = None - self.csr = csr + self.csr = kwargs.get('csr', None) self.intermediate = None self.root = None self.serial_number = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_patch_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_patch_resource_py3.py new file mode 100644 index 000000000000..650d9bf98f18 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_patch_resource_py3.py @@ -0,0 +1,150 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class AppServiceCertificateOrderPatchResource(ProxyOnlyResource): + """ARM resource for a certificate order that is purchased through Azure. + + 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 certificates: State of the Key Vault secret. + :type certificates: dict[str, + ~azure.mgmt.web.models.AppServiceCertificate] + :param distinguished_name: Certificate distinguished name. + :type distinguished_name: str + :ivar domain_verification_token: Domain verification token. + :vartype domain_verification_token: str + :param validity_in_years: Duration in years (must be between 1 and 3). + Default value: 1 . + :type validity_in_years: int + :param key_size: Certificate key size. Default value: 2048 . + :type key_size: int + :param product_type: Required. Certificate product type. Possible values + include: 'StandardDomainValidatedSsl', + 'StandardDomainValidatedWildCardSsl' + :type product_type: str or ~azure.mgmt.web.models.CertificateProductType + :param auto_renew: true if the certificate should be + automatically renewed when it expires; otherwise, false. + Default value: True . + :type auto_renew: bool + :ivar provisioning_state: Status of certificate order. Possible values + include: 'Succeeded', 'Failed', 'Canceled', 'InProgress', 'Deleting' + :vartype provisioning_state: str or + ~azure.mgmt.web.models.ProvisioningState + :ivar status: Current order status. Possible values include: + 'Pendingissuance', 'Issued', 'Revoked', 'Canceled', 'Denied', + 'Pendingrevocation', 'PendingRekey', 'Unused', 'Expired', 'NotSubmitted' + :vartype status: str or ~azure.mgmt.web.models.CertificateOrderStatus + :ivar signed_certificate: Signed certificate. + :vartype signed_certificate: ~azure.mgmt.web.models.CertificateDetails + :param csr: Last CSR that was created for this order. + :type csr: str + :ivar intermediate: Intermediate certificate. + :vartype intermediate: ~azure.mgmt.web.models.CertificateDetails + :ivar root: Root certificate. + :vartype root: ~azure.mgmt.web.models.CertificateDetails + :ivar serial_number: Current serial number of the certificate. + :vartype serial_number: str + :ivar last_certificate_issuance_time: Certificate last issuance time. + :vartype last_certificate_issuance_time: datetime + :ivar expiration_time: Certificate expiration time. + :vartype expiration_time: datetime + :ivar is_private_key_external: true if private key is + external; otherwise, false. + :vartype is_private_key_external: bool + :ivar app_service_certificate_not_renewable_reasons: Reasons why App + Service Certificate is not renewable at the current moment. + :vartype app_service_certificate_not_renewable_reasons: list[str] + :ivar next_auto_renewal_time_stamp: Time stamp when the certificate would + be auto renewed next + :vartype next_auto_renewal_time_stamp: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'domain_verification_token': {'readonly': True}, + 'validity_in_years': {'maximum': 3, 'minimum': 1}, + 'product_type': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'status': {'readonly': True}, + 'signed_certificate': {'readonly': True}, + 'intermediate': {'readonly': True}, + 'root': {'readonly': True}, + 'serial_number': {'readonly': True}, + 'last_certificate_issuance_time': {'readonly': True}, + 'expiration_time': {'readonly': True}, + 'is_private_key_external': {'readonly': True}, + 'app_service_certificate_not_renewable_reasons': {'readonly': True}, + 'next_auto_renewal_time_stamp': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'certificates': {'key': 'properties.certificates', 'type': '{AppServiceCertificate}'}, + 'distinguished_name': {'key': 'properties.distinguishedName', 'type': 'str'}, + 'domain_verification_token': {'key': 'properties.domainVerificationToken', 'type': 'str'}, + 'validity_in_years': {'key': 'properties.validityInYears', 'type': 'int'}, + 'key_size': {'key': 'properties.keySize', 'type': 'int'}, + 'product_type': {'key': 'properties.productType', 'type': 'CertificateProductType'}, + 'auto_renew': {'key': 'properties.autoRenew', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'}, + 'status': {'key': 'properties.status', 'type': 'CertificateOrderStatus'}, + 'signed_certificate': {'key': 'properties.signedCertificate', 'type': 'CertificateDetails'}, + 'csr': {'key': 'properties.csr', 'type': 'str'}, + 'intermediate': {'key': 'properties.intermediate', 'type': 'CertificateDetails'}, + 'root': {'key': 'properties.root', 'type': 'CertificateDetails'}, + 'serial_number': {'key': 'properties.serialNumber', 'type': 'str'}, + 'last_certificate_issuance_time': {'key': 'properties.lastCertificateIssuanceTime', 'type': 'iso-8601'}, + 'expiration_time': {'key': 'properties.expirationTime', 'type': 'iso-8601'}, + 'is_private_key_external': {'key': 'properties.isPrivateKeyExternal', 'type': 'bool'}, + 'app_service_certificate_not_renewable_reasons': {'key': 'properties.appServiceCertificateNotRenewableReasons', 'type': '[str]'}, + 'next_auto_renewal_time_stamp': {'key': 'properties.nextAutoRenewalTimeStamp', 'type': 'iso-8601'}, + } + + def __init__(self, *, product_type, kind: str=None, certificates=None, distinguished_name: str=None, validity_in_years: int=1, key_size: int=2048, auto_renew: bool=True, csr: str=None, **kwargs) -> None: + super(AppServiceCertificateOrderPatchResource, self).__init__(kind=kind, **kwargs) + self.certificates = certificates + self.distinguished_name = distinguished_name + self.domain_verification_token = None + self.validity_in_years = validity_in_years + self.key_size = key_size + self.product_type = product_type + self.auto_renew = auto_renew + self.provisioning_state = None + self.status = None + self.signed_certificate = None + self.csr = csr + self.intermediate = None + self.root = None + self.serial_number = None + self.last_certificate_issuance_time = None + self.expiration_time = None + self.is_private_key_external = None + self.app_service_certificate_not_renewable_reasons = None + self.next_auto_renewal_time_stamp = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_py3.py new file mode 100644 index 000000000000..f4c276d210b2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_order_py3.py @@ -0,0 +1,157 @@ +# 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 .resource_py3 import Resource + + +class AppServiceCertificateOrder(Resource): + """SSL certificate purchase order. + + 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 certificates: State of the Key Vault secret. + :type certificates: dict[str, + ~azure.mgmt.web.models.AppServiceCertificate] + :param distinguished_name: Certificate distinguished name. + :type distinguished_name: str + :ivar domain_verification_token: Domain verification token. + :vartype domain_verification_token: str + :param validity_in_years: Duration in years (must be between 1 and 3). + Default value: 1 . + :type validity_in_years: int + :param key_size: Certificate key size. Default value: 2048 . + :type key_size: int + :param product_type: Required. Certificate product type. Possible values + include: 'StandardDomainValidatedSsl', + 'StandardDomainValidatedWildCardSsl' + :type product_type: str or ~azure.mgmt.web.models.CertificateProductType + :param auto_renew: true if the certificate should be + automatically renewed when it expires; otherwise, false. + Default value: True . + :type auto_renew: bool + :ivar provisioning_state: Status of certificate order. Possible values + include: 'Succeeded', 'Failed', 'Canceled', 'InProgress', 'Deleting' + :vartype provisioning_state: str or + ~azure.mgmt.web.models.ProvisioningState + :ivar status: Current order status. Possible values include: + 'Pendingissuance', 'Issued', 'Revoked', 'Canceled', 'Denied', + 'Pendingrevocation', 'PendingRekey', 'Unused', 'Expired', 'NotSubmitted' + :vartype status: str or ~azure.mgmt.web.models.CertificateOrderStatus + :ivar signed_certificate: Signed certificate. + :vartype signed_certificate: ~azure.mgmt.web.models.CertificateDetails + :param csr: Last CSR that was created for this order. + :type csr: str + :ivar intermediate: Intermediate certificate. + :vartype intermediate: ~azure.mgmt.web.models.CertificateDetails + :ivar root: Root certificate. + :vartype root: ~azure.mgmt.web.models.CertificateDetails + :ivar serial_number: Current serial number of the certificate. + :vartype serial_number: str + :ivar last_certificate_issuance_time: Certificate last issuance time. + :vartype last_certificate_issuance_time: datetime + :ivar expiration_time: Certificate expiration time. + :vartype expiration_time: datetime + :ivar is_private_key_external: true if private key is + external; otherwise, false. + :vartype is_private_key_external: bool + :ivar app_service_certificate_not_renewable_reasons: Reasons why App + Service Certificate is not renewable at the current moment. + :vartype app_service_certificate_not_renewable_reasons: list[str] + :ivar next_auto_renewal_time_stamp: Time stamp when the certificate would + be auto renewed next + :vartype next_auto_renewal_time_stamp: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'location': {'required': True}, + 'type': {'readonly': True}, + 'domain_verification_token': {'readonly': True}, + 'validity_in_years': {'maximum': 3, 'minimum': 1}, + 'product_type': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'status': {'readonly': True}, + 'signed_certificate': {'readonly': True}, + 'intermediate': {'readonly': True}, + 'root': {'readonly': True}, + 'serial_number': {'readonly': True}, + 'last_certificate_issuance_time': {'readonly': True}, + 'expiration_time': {'readonly': True}, + 'is_private_key_external': {'readonly': True}, + 'app_service_certificate_not_renewable_reasons': {'readonly': True}, + 'next_auto_renewal_time_stamp': {'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}'}, + 'certificates': {'key': 'properties.certificates', 'type': '{AppServiceCertificate}'}, + 'distinguished_name': {'key': 'properties.distinguishedName', 'type': 'str'}, + 'domain_verification_token': {'key': 'properties.domainVerificationToken', 'type': 'str'}, + 'validity_in_years': {'key': 'properties.validityInYears', 'type': 'int'}, + 'key_size': {'key': 'properties.keySize', 'type': 'int'}, + 'product_type': {'key': 'properties.productType', 'type': 'CertificateProductType'}, + 'auto_renew': {'key': 'properties.autoRenew', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'}, + 'status': {'key': 'properties.status', 'type': 'CertificateOrderStatus'}, + 'signed_certificate': {'key': 'properties.signedCertificate', 'type': 'CertificateDetails'}, + 'csr': {'key': 'properties.csr', 'type': 'str'}, + 'intermediate': {'key': 'properties.intermediate', 'type': 'CertificateDetails'}, + 'root': {'key': 'properties.root', 'type': 'CertificateDetails'}, + 'serial_number': {'key': 'properties.serialNumber', 'type': 'str'}, + 'last_certificate_issuance_time': {'key': 'properties.lastCertificateIssuanceTime', 'type': 'iso-8601'}, + 'expiration_time': {'key': 'properties.expirationTime', 'type': 'iso-8601'}, + 'is_private_key_external': {'key': 'properties.isPrivateKeyExternal', 'type': 'bool'}, + 'app_service_certificate_not_renewable_reasons': {'key': 'properties.appServiceCertificateNotRenewableReasons', 'type': '[str]'}, + 'next_auto_renewal_time_stamp': {'key': 'properties.nextAutoRenewalTimeStamp', 'type': 'iso-8601'}, + } + + def __init__(self, *, location: str, product_type, kind: str=None, tags=None, certificates=None, distinguished_name: str=None, validity_in_years: int=1, key_size: int=2048, auto_renew: bool=True, csr: str=None, **kwargs) -> None: + super(AppServiceCertificateOrder, self).__init__(kind=kind, location=location, tags=tags, **kwargs) + self.certificates = certificates + self.distinguished_name = distinguished_name + self.domain_verification_token = None + self.validity_in_years = validity_in_years + self.key_size = key_size + self.product_type = product_type + self.auto_renew = auto_renew + self.provisioning_state = None + self.status = None + self.signed_certificate = None + self.csr = csr + self.intermediate = None + self.root = None + self.serial_number = None + self.last_certificate_issuance_time = None + self.expiration_time = None + self.is_private_key_external = None + self.app_service_certificate_not_renewable_reasons = None + self.next_auto_renewal_time_stamp = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_patch_resource.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_patch_resource.py index 396fb0c5a54b..fb6bea6358a4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_patch_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_patch_resource.py @@ -58,8 +58,8 @@ class AppServiceCertificatePatchResource(ProxyOnlyResource): 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'KeyVaultSecretStatus'}, } - def __init__(self, kind=None, key_vault_id=None, key_vault_secret_name=None): - super(AppServiceCertificatePatchResource, self).__init__(kind=kind) - self.key_vault_id = key_vault_id - self.key_vault_secret_name = key_vault_secret_name + def __init__(self, **kwargs): + super(AppServiceCertificatePatchResource, self).__init__(**kwargs) + self.key_vault_id = kwargs.get('key_vault_id', None) + self.key_vault_secret_name = kwargs.get('key_vault_secret_name', None) self.provisioning_state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_patch_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_patch_resource_py3.py new file mode 100644 index 000000000000..73d3ebb90422 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_patch_resource_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class AppServiceCertificatePatchResource(ProxyOnlyResource): + """Key Vault container ARM resource for a certificate that is purchased + through Azure. + + 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 key_vault_id: Key Vault resource Id. + :type key_vault_id: str + :param key_vault_secret_name: Key Vault secret name. + :type key_vault_secret_name: str + :ivar provisioning_state: Status of the Key Vault secret. Possible values + include: 'Initialized', 'WaitingOnCertificateOrder', 'Succeeded', + 'CertificateOrderFailed', 'OperationNotPermittedOnKeyVault', + 'AzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultDoesNotExist', + 'KeyVaultSecretDoesNotExist', 'UnknownError', 'ExternalPrivateKey', + 'Unknown' + :vartype provisioning_state: str or + ~azure.mgmt.web.models.KeyVaultSecretStatus + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'key_vault_id': {'key': 'properties.keyVaultId', 'type': 'str'}, + 'key_vault_secret_name': {'key': 'properties.keyVaultSecretName', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'KeyVaultSecretStatus'}, + } + + def __init__(self, *, kind: str=None, key_vault_id: str=None, key_vault_secret_name: str=None, **kwargs) -> None: + super(AppServiceCertificatePatchResource, self).__init__(kind=kind, **kwargs) + self.key_vault_id = key_vault_id + self.key_vault_secret_name = key_vault_secret_name + self.provisioning_state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_py3.py new file mode 100644 index 000000000000..e30db2b48566 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AppServiceCertificate(Model): + """Key Vault container for a certificate that is purchased through Azure. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param key_vault_id: Key Vault resource Id. + :type key_vault_id: str + :param key_vault_secret_name: Key Vault secret name. + :type key_vault_secret_name: str + :ivar provisioning_state: Status of the Key Vault secret. Possible values + include: 'Initialized', 'WaitingOnCertificateOrder', 'Succeeded', + 'CertificateOrderFailed', 'OperationNotPermittedOnKeyVault', + 'AzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultDoesNotExist', + 'KeyVaultSecretDoesNotExist', 'UnknownError', 'ExternalPrivateKey', + 'Unknown' + :vartype provisioning_state: str or + ~azure.mgmt.web.models.KeyVaultSecretStatus + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'key_vault_id': {'key': 'keyVaultId', 'type': 'str'}, + 'key_vault_secret_name': {'key': 'keyVaultSecretName', 'type': 'str'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'KeyVaultSecretStatus'}, + } + + def __init__(self, *, key_vault_id: str=None, key_vault_secret_name: str=None, **kwargs) -> None: + super(AppServiceCertificate, self).__init__(**kwargs) + self.key_vault_id = key_vault_id + self.key_vault_secret_name = key_vault_secret_name + self.provisioning_state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_resource.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_resource.py index b326f42f3a47..be01e27689f9 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_resource.py @@ -19,13 +19,15 @@ class AppServiceCertificateResource(Resource): 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: Resource Location. + :param location: Required. Resource Location. :type location: str :ivar type: Resource type. :vartype type: str @@ -65,8 +67,8 @@ class AppServiceCertificateResource(Resource): 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'KeyVaultSecretStatus'}, } - def __init__(self, location, kind=None, tags=None, key_vault_id=None, key_vault_secret_name=None): - super(AppServiceCertificateResource, self).__init__(kind=kind, location=location, tags=tags) - self.key_vault_id = key_vault_id - self.key_vault_secret_name = key_vault_secret_name + def __init__(self, **kwargs): + super(AppServiceCertificateResource, self).__init__(**kwargs) + self.key_vault_id = kwargs.get('key_vault_id', None) + self.key_vault_secret_name = kwargs.get('key_vault_secret_name', None) self.provisioning_state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_resource_py3.py new file mode 100644 index 000000000000..2b55619d18a3 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_certificate_resource_py3.py @@ -0,0 +1,74 @@ +# 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 .resource_py3 import Resource + + +class AppServiceCertificateResource(Resource): + """Key Vault container ARM resource for a certificate that is purchased + through Azure. + + 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 key_vault_id: Key Vault resource Id. + :type key_vault_id: str + :param key_vault_secret_name: Key Vault secret name. + :type key_vault_secret_name: str + :ivar provisioning_state: Status of the Key Vault secret. Possible values + include: 'Initialized', 'WaitingOnCertificateOrder', 'Succeeded', + 'CertificateOrderFailed', 'OperationNotPermittedOnKeyVault', + 'AzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultDoesNotExist', + 'KeyVaultSecretDoesNotExist', 'UnknownError', 'ExternalPrivateKey', + 'Unknown' + :vartype provisioning_state: str or + ~azure.mgmt.web.models.KeyVaultSecretStatus + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'location': {'required': True}, + 'type': {'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}'}, + 'key_vault_id': {'key': 'properties.keyVaultId', 'type': 'str'}, + 'key_vault_secret_name': {'key': 'properties.keyVaultSecretName', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'KeyVaultSecretStatus'}, + } + + def __init__(self, *, location: str, kind: str=None, tags=None, key_vault_id: str=None, key_vault_secret_name: str=None, **kwargs) -> None: + super(AppServiceCertificateResource, self).__init__(kind=kind, location=location, tags=tags, **kwargs) + self.key_vault_id = key_vault_id + self.key_vault_secret_name = key_vault_secret_name + self.provisioning_state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment.py index db13b73e5f00..357c0b6d603f 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment.py @@ -18,9 +18,12 @@ class AppServiceEnvironment(Model): Variables are only populated by the server, and will be ignored when sending a request. - :param name: Name of the App Service Environment. + 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: Location of the App Service Environment, e.g. "West US". + :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', @@ -37,7 +40,7 @@ class AppServiceEnvironment(Model): :type vnet_resource_group_name: str :param vnet_subnet_name: Subnet of the Virtual Network. :type vnet_subnet_name: str - :param virtual_network: Description of the Virtual Network. + :param virtual_network: Required. Description of the Virtual Network. :type virtual_network: ~azure.mgmt.web.models.VirtualNetworkProfile :param internal_load_balancing_mode: Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. @@ -48,8 +51,8 @@ class AppServiceEnvironment(Model): :type multi_size: str :param multi_role_count: Number of front-end instances. :type multi_role_count: int - :param worker_pools: Description of worker pools with worker size IDs, VM - sizes, and number of workers in each pool. + :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.models.WorkerPool] :param ipssl_address_count: Number of IP SSL addresses reserved for the App Service Environment. @@ -123,6 +126,15 @@ class AppServiceEnvironment(Model): :param user_whitelisted_ip_ranges: User added ip ranges to whitelist on ASE db :type user_whitelisted_ip_ranges: list[str] + :param has_linux_workers: Flag that displays whether an ASE has linux + workers or not + :type has_linux_workers: bool + :param ssl_cert_key_vault_id: Key Vault ID for ILB App Service Environment + default SSL certificate + :type ssl_cert_key_vault_id: str + :param ssl_cert_key_vault_secret_name: Key Vault Secret Name for ILB App + Service Environment default SSL certificate + :type ssl_cert_key_vault_secret_name: str """ _validation = { @@ -186,28 +198,31 @@ class AppServiceEnvironment(Model): 'dynamic_cache_enabled': {'key': 'dynamicCacheEnabled', 'type': 'bool'}, 'cluster_settings': {'key': 'clusterSettings', 'type': '[NameValuePair]'}, 'user_whitelisted_ip_ranges': {'key': 'userWhitelistedIpRanges', 'type': '[str]'}, + 'has_linux_workers': {'key': 'hasLinuxWorkers', 'type': 'bool'}, + 'ssl_cert_key_vault_id': {'key': 'sslCertKeyVaultId', 'type': 'str'}, + 'ssl_cert_key_vault_secret_name': {'key': 'sslCertKeyVaultSecretName', 'type': 'str'}, } - def __init__(self, name, location, virtual_network, worker_pools, vnet_name=None, vnet_resource_group_name=None, vnet_subnet_name=None, internal_load_balancing_mode=None, multi_size=None, multi_role_count=None, ipssl_address_count=None, dns_suffix=None, network_access_control_list=None, front_end_scale_factor=None, api_management_account_id=None, suspended=None, dynamic_cache_enabled=None, cluster_settings=None, user_whitelisted_ip_ranges=None): - super(AppServiceEnvironment, self).__init__() - self.name = name - self.location = location + def __init__(self, **kwargs): + super(AppServiceEnvironment, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.location = kwargs.get('location', None) 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.vnet_name = kwargs.get('vnet_name', None) + self.vnet_resource_group_name = kwargs.get('vnet_resource_group_name', None) + self.vnet_subnet_name = kwargs.get('vnet_subnet_name', None) + self.virtual_network = kwargs.get('virtual_network', None) + self.internal_load_balancing_mode = kwargs.get('internal_load_balancing_mode', None) + self.multi_size = kwargs.get('multi_size', None) + self.multi_role_count = kwargs.get('multi_role_count', None) + self.worker_pools = kwargs.get('worker_pools', None) + self.ipssl_address_count = kwargs.get('ipssl_address_count', None) self.database_edition = None self.database_service_objective = None self.upgrade_domains = None self.subscription_id = None - self.dns_suffix = dns_suffix + self.dns_suffix = kwargs.get('dns_suffix', None) self.last_action = None self.last_action_result = None self.allowed_multi_sizes = None @@ -215,14 +230,17 @@ def __init__(self, name, location, virtual_network, worker_pools, vnet_name=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.network_access_control_list = kwargs.get('network_access_control_list', None) self.environment_is_healthy = None self.environment_status = None self.resource_group = None - self.front_end_scale_factor = front_end_scale_factor + self.front_end_scale_factor = kwargs.get('front_end_scale_factor', None) 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 + self.api_management_account_id = kwargs.get('api_management_account_id', None) + self.suspended = kwargs.get('suspended', None) + self.dynamic_cache_enabled = kwargs.get('dynamic_cache_enabled', None) + self.cluster_settings = kwargs.get('cluster_settings', None) + self.user_whitelisted_ip_ranges = kwargs.get('user_whitelisted_ip_ranges', None) + self.has_linux_workers = kwargs.get('has_linux_workers', None) + self.ssl_cert_key_vault_id = kwargs.get('ssl_cert_key_vault_id', None) + self.ssl_cert_key_vault_secret_name = kwargs.get('ssl_cert_key_vault_secret_name', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_patch_resource.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_patch_resource.py index fc92893eb4f4..4a4f9b8a267d 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_patch_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_patch_resource.py @@ -18,6 +18,8 @@ class AppServiceEnvironmentPatchResource(ProxyOnlyResource): 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. @@ -26,10 +28,11 @@ class AppServiceEnvironmentPatchResource(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param app_service_environment_patch_resource_name: Name of the App - Service Environment. + :param app_service_environment_patch_resource_name: Required. Name of the + App Service Environment. :type app_service_environment_patch_resource_name: str - :param location: Location of the App Service Environment, e.g. "West US". + :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', @@ -46,7 +49,7 @@ class AppServiceEnvironmentPatchResource(ProxyOnlyResource): :type vnet_resource_group_name: str :param vnet_subnet_name: Subnet of the Virtual Network. :type vnet_subnet_name: str - :param virtual_network: Description of the Virtual Network. + :param virtual_network: Required. Description of the Virtual Network. :type virtual_network: ~azure.mgmt.web.models.VirtualNetworkProfile :param internal_load_balancing_mode: Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. @@ -57,8 +60,8 @@ class AppServiceEnvironmentPatchResource(ProxyOnlyResource): :type multi_size: str :param multi_role_count: Number of front-end instances. :type multi_role_count: int - :param worker_pools: Description of worker pools with worker size IDs, VM - sizes, and number of workers in each pool. + :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.models.WorkerPool] :param ipssl_address_count: Number of IP SSL addresses reserved for the App Service Environment. @@ -132,6 +135,15 @@ class AppServiceEnvironmentPatchResource(ProxyOnlyResource): :param user_whitelisted_ip_ranges: User added ip ranges to whitelist on ASE db :type user_whitelisted_ip_ranges: list[str] + :param has_linux_workers: Flag that displays whether an ASE has linux + workers or not + :type has_linux_workers: bool + :param ssl_cert_key_vault_id: Key Vault ID for ILB App Service Environment + default SSL certificate + :type ssl_cert_key_vault_id: str + :param ssl_cert_key_vault_secret_name: Key Vault Secret Name for ILB App + Service Environment default SSL certificate + :type ssl_cert_key_vault_secret_name: str """ _validation = { @@ -202,28 +214,31 @@ class AppServiceEnvironmentPatchResource(ProxyOnlyResource): 'dynamic_cache_enabled': {'key': 'properties.dynamicCacheEnabled', 'type': 'bool'}, 'cluster_settings': {'key': 'properties.clusterSettings', 'type': '[NameValuePair]'}, 'user_whitelisted_ip_ranges': {'key': 'properties.userWhitelistedIpRanges', 'type': '[str]'}, + 'has_linux_workers': {'key': 'properties.hasLinuxWorkers', 'type': 'bool'}, + 'ssl_cert_key_vault_id': {'key': 'properties.sslCertKeyVaultId', 'type': 'str'}, + 'ssl_cert_key_vault_secret_name': {'key': 'properties.sslCertKeyVaultSecretName', 'type': 'str'}, } - def __init__(self, app_service_environment_patch_resource_name, location, virtual_network, worker_pools, kind=None, vnet_name=None, vnet_resource_group_name=None, vnet_subnet_name=None, internal_load_balancing_mode=None, multi_size=None, multi_role_count=None, ipssl_address_count=None, dns_suffix=None, network_access_control_list=None, front_end_scale_factor=None, api_management_account_id=None, suspended=None, dynamic_cache_enabled=None, cluster_settings=None, user_whitelisted_ip_ranges=None): - super(AppServiceEnvironmentPatchResource, self).__init__(kind=kind) - self.app_service_environment_patch_resource_name = app_service_environment_patch_resource_name - self.location = location + def __init__(self, **kwargs): + super(AppServiceEnvironmentPatchResource, self).__init__(**kwargs) + self.app_service_environment_patch_resource_name = kwargs.get('app_service_environment_patch_resource_name', None) + self.location = kwargs.get('location', None) 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.vnet_name = kwargs.get('vnet_name', None) + self.vnet_resource_group_name = kwargs.get('vnet_resource_group_name', None) + self.vnet_subnet_name = kwargs.get('vnet_subnet_name', None) + self.virtual_network = kwargs.get('virtual_network', None) + self.internal_load_balancing_mode = kwargs.get('internal_load_balancing_mode', None) + self.multi_size = kwargs.get('multi_size', None) + self.multi_role_count = kwargs.get('multi_role_count', None) + self.worker_pools = kwargs.get('worker_pools', None) + self.ipssl_address_count = kwargs.get('ipssl_address_count', None) self.database_edition = None self.database_service_objective = None self.upgrade_domains = None self.subscription_id = None - self.dns_suffix = dns_suffix + self.dns_suffix = kwargs.get('dns_suffix', None) self.last_action = None self.last_action_result = None self.allowed_multi_sizes = None @@ -231,14 +246,17 @@ def __init__(self, app_service_environment_patch_resource_name, location, virtua self.maximum_number_of_machines = None self.vip_mappings = None self.environment_capacities = None - self.network_access_control_list = network_access_control_list + self.network_access_control_list = kwargs.get('network_access_control_list', None) self.environment_is_healthy = None self.environment_status = None self.resource_group = None - self.front_end_scale_factor = front_end_scale_factor + self.front_end_scale_factor = kwargs.get('front_end_scale_factor', None) 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 + self.api_management_account_id = kwargs.get('api_management_account_id', None) + self.suspended = kwargs.get('suspended', None) + self.dynamic_cache_enabled = kwargs.get('dynamic_cache_enabled', None) + self.cluster_settings = kwargs.get('cluster_settings', None) + self.user_whitelisted_ip_ranges = kwargs.get('user_whitelisted_ip_ranges', None) + self.has_linux_workers = kwargs.get('has_linux_workers', None) + self.ssl_cert_key_vault_id = kwargs.get('ssl_cert_key_vault_id', None) + self.ssl_cert_key_vault_secret_name = kwargs.get('ssl_cert_key_vault_secret_name', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_patch_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_patch_resource_py3.py new file mode 100644 index 000000000000..f017aff5069e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_patch_resource_py3.py @@ -0,0 +1,262 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class AppServiceEnvironmentPatchResource(ProxyOnlyResource): + """ARM resource for a app service enviroment. + + 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 app_service_environment_patch_resource_name: Required. Name of the + App Service Environment. + :type app_service_environment_patch_resource_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.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.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.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.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.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.models.VirtualIPMapping] + :ivar environment_capacities: Current total, used, and available worker + capacities. + :vartype environment_capacities: + list[~azure.mgmt.web.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.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: true if the App Service Environment is + suspended; otherwise, false. 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.models.NameValuePair] + :param user_whitelisted_ip_ranges: User added ip ranges to whitelist on + ASE db + :type user_whitelisted_ip_ranges: list[str] + :param has_linux_workers: Flag that displays whether an ASE has linux + workers or not + :type has_linux_workers: bool + :param ssl_cert_key_vault_id: Key Vault ID for ILB App Service Environment + default SSL certificate + :type ssl_cert_key_vault_id: str + :param ssl_cert_key_vault_secret_name: Key Vault Secret Name for ILB App + Service Environment default SSL certificate + :type ssl_cert_key_vault_secret_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'app_service_environment_patch_resource_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 = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'app_service_environment_patch_resource_name': {'key': 'properties.name', 'type': 'str'}, + 'location': {'key': 'properties.location', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'}, + 'status': {'key': 'properties.status', 'type': 'HostingEnvironmentStatus'}, + 'vnet_name': {'key': 'properties.vnetName', 'type': 'str'}, + 'vnet_resource_group_name': {'key': 'properties.vnetResourceGroupName', 'type': 'str'}, + 'vnet_subnet_name': {'key': 'properties.vnetSubnetName', 'type': 'str'}, + 'virtual_network': {'key': 'properties.virtualNetwork', 'type': 'VirtualNetworkProfile'}, + 'internal_load_balancing_mode': {'key': 'properties.internalLoadBalancingMode', 'type': 'InternalLoadBalancingMode'}, + 'multi_size': {'key': 'properties.multiSize', 'type': 'str'}, + 'multi_role_count': {'key': 'properties.multiRoleCount', 'type': 'int'}, + 'worker_pools': {'key': 'properties.workerPools', 'type': '[WorkerPool]'}, + 'ipssl_address_count': {'key': 'properties.ipsslAddressCount', 'type': 'int'}, + 'database_edition': {'key': 'properties.databaseEdition', 'type': 'str'}, + 'database_service_objective': {'key': 'properties.databaseServiceObjective', 'type': 'str'}, + 'upgrade_domains': {'key': 'properties.upgradeDomains', 'type': 'int'}, + 'subscription_id': {'key': 'properties.subscriptionId', 'type': 'str'}, + 'dns_suffix': {'key': 'properties.dnsSuffix', 'type': 'str'}, + 'last_action': {'key': 'properties.lastAction', 'type': 'str'}, + 'last_action_result': {'key': 'properties.lastActionResult', 'type': 'str'}, + 'allowed_multi_sizes': {'key': 'properties.allowedMultiSizes', 'type': 'str'}, + 'allowed_worker_sizes': {'key': 'properties.allowedWorkerSizes', 'type': 'str'}, + 'maximum_number_of_machines': {'key': 'properties.maximumNumberOfMachines', 'type': 'int'}, + 'vip_mappings': {'key': 'properties.vipMappings', 'type': '[VirtualIPMapping]'}, + 'environment_capacities': {'key': 'properties.environmentCapacities', 'type': '[StampCapacity]'}, + 'network_access_control_list': {'key': 'properties.networkAccessControlList', 'type': '[NetworkAccessControlEntry]'}, + 'environment_is_healthy': {'key': 'properties.environmentIsHealthy', 'type': 'bool'}, + 'environment_status': {'key': 'properties.environmentStatus', 'type': 'str'}, + 'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'}, + 'front_end_scale_factor': {'key': 'properties.frontEndScaleFactor', 'type': 'int'}, + 'default_front_end_scale_factor': {'key': 'properties.defaultFrontEndScaleFactor', 'type': 'int'}, + 'api_management_account_id': {'key': 'properties.apiManagementAccountId', 'type': 'str'}, + 'suspended': {'key': 'properties.suspended', 'type': 'bool'}, + 'dynamic_cache_enabled': {'key': 'properties.dynamicCacheEnabled', 'type': 'bool'}, + 'cluster_settings': {'key': 'properties.clusterSettings', 'type': '[NameValuePair]'}, + 'user_whitelisted_ip_ranges': {'key': 'properties.userWhitelistedIpRanges', 'type': '[str]'}, + 'has_linux_workers': {'key': 'properties.hasLinuxWorkers', 'type': 'bool'}, + 'ssl_cert_key_vault_id': {'key': 'properties.sslCertKeyVaultId', 'type': 'str'}, + 'ssl_cert_key_vault_secret_name': {'key': 'properties.sslCertKeyVaultSecretName', 'type': 'str'}, + } + + def __init__(self, *, app_service_environment_patch_resource_name: str, location: str, virtual_network, worker_pools, kind: str=None, 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, has_linux_workers: bool=None, ssl_cert_key_vault_id: str=None, ssl_cert_key_vault_secret_name: str=None, **kwargs) -> None: + super(AppServiceEnvironmentPatchResource, self).__init__(kind=kind, **kwargs) + self.app_service_environment_patch_resource_name = app_service_environment_patch_resource_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 + self.has_linux_workers = has_linux_workers + self.ssl_cert_key_vault_id = ssl_cert_key_vault_id + self.ssl_cert_key_vault_secret_name = ssl_cert_key_vault_secret_name diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_py3.py new file mode 100644 index 000000000000..7445b370c96d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_py3.py @@ -0,0 +1,246 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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.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.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.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.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.models.VirtualIPMapping] + :ivar environment_capacities: Current total, used, and available worker + capacities. + :vartype environment_capacities: + list[~azure.mgmt.web.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.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: true if the App Service Environment is + suspended; otherwise, false. 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.models.NameValuePair] + :param user_whitelisted_ip_ranges: User added ip ranges to whitelist on + ASE db + :type user_whitelisted_ip_ranges: list[str] + :param has_linux_workers: Flag that displays whether an ASE has linux + workers or not + :type has_linux_workers: bool + :param ssl_cert_key_vault_id: Key Vault ID for ILB App Service Environment + default SSL certificate + :type ssl_cert_key_vault_id: str + :param ssl_cert_key_vault_secret_name: Key Vault Secret Name for ILB App + Service Environment default SSL certificate + :type ssl_cert_key_vault_secret_name: 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]'}, + 'has_linux_workers': {'key': 'hasLinuxWorkers', 'type': 'bool'}, + 'ssl_cert_key_vault_id': {'key': 'sslCertKeyVaultId', 'type': 'str'}, + 'ssl_cert_key_vault_secret_name': {'key': 'sslCertKeyVaultSecretName', '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, has_linux_workers: bool=None, ssl_cert_key_vault_id: str=None, ssl_cert_key_vault_secret_name: str=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 + self.has_linux_workers = has_linux_workers + self.ssl_cert_key_vault_id = ssl_cert_key_vault_id + self.ssl_cert_key_vault_secret_name = ssl_cert_key_vault_secret_name diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_resource.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_resource.py index 58ebede0b657..5f48a8459372 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_resource.py @@ -18,23 +18,25 @@ class AppServiceEnvironmentResource(Resource): 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: Resource Location. + :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_environment_resource_name: Name of the App Service - Environment. + :param app_service_environment_resource_name: Required. Name of the App + Service Environment. :type app_service_environment_resource_name: str - :param app_service_environment_resource_location: Location of the App - Service Environment, e.g. "West US". + :param app_service_environment_resource_location: Required. Location of + the App Service Environment, e.g. "West US". :type app_service_environment_resource_location: str :ivar provisioning_state: Provisioning state of the App Service Environment. Possible values include: 'Succeeded', 'Failed', 'Canceled', @@ -51,7 +53,7 @@ class AppServiceEnvironmentResource(Resource): :type vnet_resource_group_name: str :param vnet_subnet_name: Subnet of the Virtual Network. :type vnet_subnet_name: str - :param virtual_network: Description of the Virtual Network. + :param virtual_network: Required. Description of the Virtual Network. :type virtual_network: ~azure.mgmt.web.models.VirtualNetworkProfile :param internal_load_balancing_mode: Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. @@ -62,8 +64,8 @@ class AppServiceEnvironmentResource(Resource): :type multi_size: str :param multi_role_count: Number of front-end instances. :type multi_role_count: int - :param worker_pools: Description of worker pools with worker size IDs, VM - sizes, and number of workers in each pool. + :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.models.WorkerPool] :param ipssl_address_count: Number of IP SSL addresses reserved for the App Service Environment. @@ -137,6 +139,15 @@ class AppServiceEnvironmentResource(Resource): :param user_whitelisted_ip_ranges: User added ip ranges to whitelist on ASE db :type user_whitelisted_ip_ranges: list[str] + :param has_linux_workers: Flag that displays whether an ASE has linux + workers or not + :type has_linux_workers: bool + :param ssl_cert_key_vault_id: Key Vault ID for ILB App Service Environment + default SSL certificate + :type ssl_cert_key_vault_id: str + :param ssl_cert_key_vault_secret_name: Key Vault Secret Name for ILB App + Service Environment default SSL certificate + :type ssl_cert_key_vault_secret_name: str """ _validation = { @@ -210,28 +221,31 @@ class AppServiceEnvironmentResource(Resource): 'dynamic_cache_enabled': {'key': 'properties.dynamicCacheEnabled', 'type': 'bool'}, 'cluster_settings': {'key': 'properties.clusterSettings', 'type': '[NameValuePair]'}, 'user_whitelisted_ip_ranges': {'key': 'properties.userWhitelistedIpRanges', 'type': '[str]'}, + 'has_linux_workers': {'key': 'properties.hasLinuxWorkers', 'type': 'bool'}, + 'ssl_cert_key_vault_id': {'key': 'properties.sslCertKeyVaultId', 'type': 'str'}, + 'ssl_cert_key_vault_secret_name': {'key': 'properties.sslCertKeyVaultSecretName', 'type': 'str'}, } - def __init__(self, location, app_service_environment_resource_name, app_service_environment_resource_location, virtual_network, worker_pools, kind=None, tags=None, vnet_name=None, vnet_resource_group_name=None, vnet_subnet_name=None, internal_load_balancing_mode=None, multi_size=None, multi_role_count=None, ipssl_address_count=None, dns_suffix=None, network_access_control_list=None, front_end_scale_factor=None, api_management_account_id=None, suspended=None, dynamic_cache_enabled=None, cluster_settings=None, user_whitelisted_ip_ranges=None): - super(AppServiceEnvironmentResource, self).__init__(kind=kind, location=location, tags=tags) - self.app_service_environment_resource_name = app_service_environment_resource_name - self.app_service_environment_resource_location = app_service_environment_resource_location + def __init__(self, **kwargs): + super(AppServiceEnvironmentResource, self).__init__(**kwargs) + self.app_service_environment_resource_name = kwargs.get('app_service_environment_resource_name', None) + self.app_service_environment_resource_location = kwargs.get('app_service_environment_resource_location', None) 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.vnet_name = kwargs.get('vnet_name', None) + self.vnet_resource_group_name = kwargs.get('vnet_resource_group_name', None) + self.vnet_subnet_name = kwargs.get('vnet_subnet_name', None) + self.virtual_network = kwargs.get('virtual_network', None) + self.internal_load_balancing_mode = kwargs.get('internal_load_balancing_mode', None) + self.multi_size = kwargs.get('multi_size', None) + self.multi_role_count = kwargs.get('multi_role_count', None) + self.worker_pools = kwargs.get('worker_pools', None) + self.ipssl_address_count = kwargs.get('ipssl_address_count', None) self.database_edition = None self.database_service_objective = None self.upgrade_domains = None self.subscription_id = None - self.dns_suffix = dns_suffix + self.dns_suffix = kwargs.get('dns_suffix', None) self.last_action = None self.last_action_result = None self.allowed_multi_sizes = None @@ -239,14 +253,17 @@ def __init__(self, location, app_service_environment_resource_name, app_service_ self.maximum_number_of_machines = None self.vip_mappings = None self.environment_capacities = None - self.network_access_control_list = network_access_control_list + self.network_access_control_list = kwargs.get('network_access_control_list', None) self.environment_is_healthy = None self.environment_status = None self.resource_group = None - self.front_end_scale_factor = front_end_scale_factor + self.front_end_scale_factor = kwargs.get('front_end_scale_factor', None) 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 + self.api_management_account_id = kwargs.get('api_management_account_id', None) + self.suspended = kwargs.get('suspended', None) + self.dynamic_cache_enabled = kwargs.get('dynamic_cache_enabled', None) + self.cluster_settings = kwargs.get('cluster_settings', None) + self.user_whitelisted_ip_ranges = kwargs.get('user_whitelisted_ip_ranges', None) + self.has_linux_workers = kwargs.get('has_linux_workers', None) + self.ssl_cert_key_vault_id = kwargs.get('ssl_cert_key_vault_id', None) + self.ssl_cert_key_vault_secret_name = kwargs.get('ssl_cert_key_vault_secret_name', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_resource_py3.py new file mode 100644 index 000000000000..5ae07af3ea8b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_environment_resource_py3.py @@ -0,0 +1,269 @@ +# 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 .resource_py3 import Resource + + +class AppServiceEnvironmentResource(Resource): + """App Service Environment ARM resource. + + 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_environment_resource_name: Required. Name of the App + Service Environment. + :type app_service_environment_resource_name: str + :param app_service_environment_resource_location: Required. Location of + the App Service Environment, e.g. "West US". + :type app_service_environment_resource_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.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.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.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.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.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.models.VirtualIPMapping] + :ivar environment_capacities: Current total, used, and available worker + capacities. + :vartype environment_capacities: + list[~azure.mgmt.web.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.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: true if the App Service Environment is + suspended; otherwise, false. 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.models.NameValuePair] + :param user_whitelisted_ip_ranges: User added ip ranges to whitelist on + ASE db + :type user_whitelisted_ip_ranges: list[str] + :param has_linux_workers: Flag that displays whether an ASE has linux + workers or not + :type has_linux_workers: bool + :param ssl_cert_key_vault_id: Key Vault ID for ILB App Service Environment + default SSL certificate + :type ssl_cert_key_vault_id: str + :param ssl_cert_key_vault_secret_name: Key Vault Secret Name for ILB App + Service Environment default SSL certificate + :type ssl_cert_key_vault_secret_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'location': {'required': True}, + 'type': {'readonly': True}, + 'app_service_environment_resource_name': {'required': True}, + 'app_service_environment_resource_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 = { + '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_environment_resource_name': {'key': 'properties.name', 'type': 'str'}, + 'app_service_environment_resource_location': {'key': 'properties.location', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'}, + 'status': {'key': 'properties.status', 'type': 'HostingEnvironmentStatus'}, + 'vnet_name': {'key': 'properties.vnetName', 'type': 'str'}, + 'vnet_resource_group_name': {'key': 'properties.vnetResourceGroupName', 'type': 'str'}, + 'vnet_subnet_name': {'key': 'properties.vnetSubnetName', 'type': 'str'}, + 'virtual_network': {'key': 'properties.virtualNetwork', 'type': 'VirtualNetworkProfile'}, + 'internal_load_balancing_mode': {'key': 'properties.internalLoadBalancingMode', 'type': 'InternalLoadBalancingMode'}, + 'multi_size': {'key': 'properties.multiSize', 'type': 'str'}, + 'multi_role_count': {'key': 'properties.multiRoleCount', 'type': 'int'}, + 'worker_pools': {'key': 'properties.workerPools', 'type': '[WorkerPool]'}, + 'ipssl_address_count': {'key': 'properties.ipsslAddressCount', 'type': 'int'}, + 'database_edition': {'key': 'properties.databaseEdition', 'type': 'str'}, + 'database_service_objective': {'key': 'properties.databaseServiceObjective', 'type': 'str'}, + 'upgrade_domains': {'key': 'properties.upgradeDomains', 'type': 'int'}, + 'subscription_id': {'key': 'properties.subscriptionId', 'type': 'str'}, + 'dns_suffix': {'key': 'properties.dnsSuffix', 'type': 'str'}, + 'last_action': {'key': 'properties.lastAction', 'type': 'str'}, + 'last_action_result': {'key': 'properties.lastActionResult', 'type': 'str'}, + 'allowed_multi_sizes': {'key': 'properties.allowedMultiSizes', 'type': 'str'}, + 'allowed_worker_sizes': {'key': 'properties.allowedWorkerSizes', 'type': 'str'}, + 'maximum_number_of_machines': {'key': 'properties.maximumNumberOfMachines', 'type': 'int'}, + 'vip_mappings': {'key': 'properties.vipMappings', 'type': '[VirtualIPMapping]'}, + 'environment_capacities': {'key': 'properties.environmentCapacities', 'type': '[StampCapacity]'}, + 'network_access_control_list': {'key': 'properties.networkAccessControlList', 'type': '[NetworkAccessControlEntry]'}, + 'environment_is_healthy': {'key': 'properties.environmentIsHealthy', 'type': 'bool'}, + 'environment_status': {'key': 'properties.environmentStatus', 'type': 'str'}, + 'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'}, + 'front_end_scale_factor': {'key': 'properties.frontEndScaleFactor', 'type': 'int'}, + 'default_front_end_scale_factor': {'key': 'properties.defaultFrontEndScaleFactor', 'type': 'int'}, + 'api_management_account_id': {'key': 'properties.apiManagementAccountId', 'type': 'str'}, + 'suspended': {'key': 'properties.suspended', 'type': 'bool'}, + 'dynamic_cache_enabled': {'key': 'properties.dynamicCacheEnabled', 'type': 'bool'}, + 'cluster_settings': {'key': 'properties.clusterSettings', 'type': '[NameValuePair]'}, + 'user_whitelisted_ip_ranges': {'key': 'properties.userWhitelistedIpRanges', 'type': '[str]'}, + 'has_linux_workers': {'key': 'properties.hasLinuxWorkers', 'type': 'bool'}, + 'ssl_cert_key_vault_id': {'key': 'properties.sslCertKeyVaultId', 'type': 'str'}, + 'ssl_cert_key_vault_secret_name': {'key': 'properties.sslCertKeyVaultSecretName', 'type': 'str'}, + } + + def __init__(self, *, location: str, app_service_environment_resource_name: str, app_service_environment_resource_location: str, virtual_network, worker_pools, kind: str=None, tags=None, 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, has_linux_workers: bool=None, ssl_cert_key_vault_id: str=None, ssl_cert_key_vault_secret_name: str=None, **kwargs) -> None: + super(AppServiceEnvironmentResource, self).__init__(kind=kind, location=location, tags=tags, **kwargs) + self.app_service_environment_resource_name = app_service_environment_resource_name + self.app_service_environment_resource_location = app_service_environment_resource_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 + self.has_linux_workers = has_linux_workers + self.ssl_cert_key_vault_id = ssl_cert_key_vault_id + self.ssl_cert_key_vault_secret_name = ssl_cert_key_vault_secret_name diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_plan.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_plan.py index 69647b08d17a..c34010da2706 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_plan.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_plan.py @@ -18,20 +18,20 @@ class AppServicePlan(Resource): 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: Resource Location. + :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: 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 @@ -64,11 +64,20 @@ class AppServicePlan(Resource): :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 + :param free_offer_expiration_time: The time when the server farm free + offer expires. + :type free_offer_expiration_time: datetime :ivar resource_group: Resource group of the App Service plan. :vartype resource_group: str :param reserved: If Linux app service plan true, false otherwise. Default value: False . :type reserved: bool + :param is_xenon: Obsolete: If Hyper-V container app service plan + true, false otherwise. Default value: False . + :type is_xenon: bool + :param hyper_v: If Hyper-V container app service plan true, + false otherwise. Default value: False . + :type hyper_v: bool :param target_worker_count: Scaling worker count. :type target_worker_count: int :param target_worker_size_id: Scaling worker size ID. @@ -87,7 +96,6 @@ class AppServicePlan(Resource): '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}, @@ -104,7 +112,6 @@ class AppServicePlan(Resource): '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'}, @@ -116,31 +123,36 @@ class AppServicePlan(Resource): 'number_of_sites': {'key': 'properties.numberOfSites', 'type': 'int'}, 'is_spot': {'key': 'properties.isSpot', 'type': 'bool'}, 'spot_expiration_time': {'key': 'properties.spotExpirationTime', 'type': 'iso-8601'}, + 'free_offer_expiration_time': {'key': 'properties.freeOfferExpirationTime', 'type': 'iso-8601'}, 'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'}, 'reserved': {'key': 'properties.reserved', 'type': 'bool'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + 'hyper_v': {'key': 'properties.hyperV', '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, app_service_plan_name, kind=None, tags=None, worker_tier_name=None, admin_site_name=None, hosting_environment_profile=None, per_site_scaling=False, is_spot=None, spot_expiration_time=None, reserved=False, target_worker_count=None, target_worker_size_id=None, sku=None): - super(AppServicePlan, self).__init__(kind=kind, location=location, tags=tags) - self.app_service_plan_name = app_service_plan_name - self.worker_tier_name = worker_tier_name + def __init__(self, **kwargs): + super(AppServicePlan, self).__init__(**kwargs) + self.worker_tier_name = kwargs.get('worker_tier_name', None) self.status = None self.subscription = None - self.admin_site_name = admin_site_name - self.hosting_environment_profile = hosting_environment_profile + self.admin_site_name = kwargs.get('admin_site_name', None) + self.hosting_environment_profile = kwargs.get('hosting_environment_profile', None) self.maximum_number_of_workers = None self.geo_region = None - self.per_site_scaling = per_site_scaling + self.per_site_scaling = kwargs.get('per_site_scaling', False) self.number_of_sites = None - self.is_spot = is_spot - self.spot_expiration_time = spot_expiration_time + self.is_spot = kwargs.get('is_spot', None) + self.spot_expiration_time = kwargs.get('spot_expiration_time', None) + self.free_offer_expiration_time = kwargs.get('free_offer_expiration_time', None) self.resource_group = None - self.reserved = reserved - self.target_worker_count = target_worker_count - self.target_worker_size_id = target_worker_size_id + self.reserved = kwargs.get('reserved', False) + self.is_xenon = kwargs.get('is_xenon', False) + self.hyper_v = kwargs.get('hyper_v', False) + self.target_worker_count = kwargs.get('target_worker_count', None) + self.target_worker_size_id = kwargs.get('target_worker_size_id', None) self.provisioning_state = None - self.sku = sku + self.sku = kwargs.get('sku', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_patch_resource.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_patch_resource.py index a2a773a5469e..fe641394a178 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_patch_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_patch_resource.py @@ -26,9 +26,6 @@ class AppServicePlanPatchResource(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param app_service_plan_patch_resource_name: Name for the App Service - plan. - :type app_service_plan_patch_resource_name: str :param worker_tier_name: Target worker tier assigned to the App Service plan. :type worker_tier_name: str @@ -61,11 +58,20 @@ class AppServicePlanPatchResource(ProxyOnlyResource): :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 + :param free_offer_expiration_time: The time when the server farm free + offer expires. + :type free_offer_expiration_time: datetime :ivar resource_group: Resource group of the App Service plan. :vartype resource_group: str :param reserved: If Linux app service plan true, false otherwise. Default value: False . :type reserved: bool + :param is_xenon: Obsolete: If Hyper-V container app service plan + true, false otherwise. Default value: False . + :type is_xenon: bool + :param hyper_v: If Hyper-V container app service plan true, + false otherwise. Default value: False . + :type hyper_v: bool :param target_worker_count: Scaling worker count. :type target_worker_count: int :param target_worker_size_id: Scaling worker size ID. @@ -81,7 +87,6 @@ class AppServicePlanPatchResource(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'app_service_plan_patch_resource_name': {'required': True}, 'status': {'readonly': True}, 'subscription': {'readonly': True}, 'maximum_number_of_workers': {'readonly': True}, @@ -96,7 +101,6 @@ class AppServicePlanPatchResource(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'app_service_plan_patch_resource_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'}, @@ -108,29 +112,34 @@ class AppServicePlanPatchResource(ProxyOnlyResource): 'number_of_sites': {'key': 'properties.numberOfSites', 'type': 'int'}, 'is_spot': {'key': 'properties.isSpot', 'type': 'bool'}, 'spot_expiration_time': {'key': 'properties.spotExpirationTime', 'type': 'iso-8601'}, + 'free_offer_expiration_time': {'key': 'properties.freeOfferExpirationTime', 'type': 'iso-8601'}, 'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'}, 'reserved': {'key': 'properties.reserved', 'type': 'bool'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + 'hyper_v': {'key': 'properties.hyperV', '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'}, } - def __init__(self, app_service_plan_patch_resource_name, kind=None, worker_tier_name=None, admin_site_name=None, hosting_environment_profile=None, per_site_scaling=False, is_spot=None, spot_expiration_time=None, reserved=False, target_worker_count=None, target_worker_size_id=None): - super(AppServicePlanPatchResource, self).__init__(kind=kind) - self.app_service_plan_patch_resource_name = app_service_plan_patch_resource_name - self.worker_tier_name = worker_tier_name + def __init__(self, **kwargs): + super(AppServicePlanPatchResource, self).__init__(**kwargs) + self.worker_tier_name = kwargs.get('worker_tier_name', None) self.status = None self.subscription = None - self.admin_site_name = admin_site_name - self.hosting_environment_profile = hosting_environment_profile + self.admin_site_name = kwargs.get('admin_site_name', None) + self.hosting_environment_profile = kwargs.get('hosting_environment_profile', None) self.maximum_number_of_workers = None self.geo_region = None - self.per_site_scaling = per_site_scaling + self.per_site_scaling = kwargs.get('per_site_scaling', False) self.number_of_sites = None - self.is_spot = is_spot - self.spot_expiration_time = spot_expiration_time + self.is_spot = kwargs.get('is_spot', None) + self.spot_expiration_time = kwargs.get('spot_expiration_time', None) + self.free_offer_expiration_time = kwargs.get('free_offer_expiration_time', None) self.resource_group = None - self.reserved = reserved - self.target_worker_count = target_worker_count - self.target_worker_size_id = target_worker_size_id + self.reserved = kwargs.get('reserved', False) + self.is_xenon = kwargs.get('is_xenon', False) + self.hyper_v = kwargs.get('hyper_v', False) + self.target_worker_count = kwargs.get('target_worker_count', None) + self.target_worker_size_id = kwargs.get('target_worker_size_id', None) self.provisioning_state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_patch_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_patch_resource_py3.py new file mode 100644 index 000000000000..0d04154d0093 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_patch_resource_py3.py @@ -0,0 +1,145 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class AppServicePlanPatchResource(ProxyOnlyResource): + """ARM resource for a app service plan. + + 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 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.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.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 true, apps assigned to this App + Service plan can be scaled independently. + If false, 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 true, 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 + :param free_offer_expiration_time: The time when the server farm free + offer expires. + :type free_offer_expiration_time: datetime + :ivar resource_group: Resource group of the App Service plan. + :vartype resource_group: str + :param reserved: If Linux app service plan true, + false otherwise. Default value: False . + :type reserved: bool + :param is_xenon: Obsolete: If Hyper-V container app service plan + true, false otherwise. Default value: False . + :type is_xenon: bool + :param hyper_v: If Hyper-V container app service plan true, + false otherwise. Default value: False . + :type hyper_v: 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.models.ProvisioningState + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': 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'}, + 'type': {'key': 'type', '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'}, + 'free_offer_expiration_time': {'key': 'properties.freeOfferExpirationTime', 'type': 'iso-8601'}, + 'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'}, + 'reserved': {'key': 'properties.reserved', 'type': 'bool'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + 'hyper_v': {'key': 'properties.hyperV', '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'}, + } + + def __init__(self, *, kind: str=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, free_offer_expiration_time=None, reserved: bool=False, is_xenon: bool=False, hyper_v: bool=False, target_worker_count: int=None, target_worker_size_id: int=None, **kwargs) -> None: + super(AppServicePlanPatchResource, self).__init__(kind=kind, **kwargs) + 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.free_offer_expiration_time = free_offer_expiration_time + self.resource_group = None + self.reserved = reserved + self.is_xenon = is_xenon + self.hyper_v = hyper_v + self.target_worker_count = target_worker_count + self.target_worker_size_id = target_worker_size_id + self.provisioning_state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_py3.py b/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_py3.py new file mode 100644 index 000000000000..3a8d6e22c267 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/app_service_plan_py3.py @@ -0,0 +1,158 @@ +# 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 .resource_py3 import Resource + + +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 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.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.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 true, apps assigned to this App + Service plan can be scaled independently. + If false, 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 true, 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 + :param free_offer_expiration_time: The time when the server farm free + offer expires. + :type free_offer_expiration_time: datetime + :ivar resource_group: Resource group of the App Service plan. + :vartype resource_group: str + :param reserved: If Linux app service plan true, + false otherwise. Default value: False . + :type reserved: bool + :param is_xenon: Obsolete: If Hyper-V container app service plan + true, false otherwise. Default value: False . + :type is_xenon: bool + :param hyper_v: If Hyper-V container app service plan true, + false otherwise. Default value: False . + :type hyper_v: 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.models.ProvisioningState + :param sku: + :type sku: ~azure.mgmt.web.models.SkuDescription + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'location': {'required': True}, + 'type': {'readonly': 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}'}, + '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'}, + 'free_offer_expiration_time': {'key': 'properties.freeOfferExpirationTime', 'type': 'iso-8601'}, + 'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'}, + 'reserved': {'key': 'properties.reserved', 'type': 'bool'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + 'hyper_v': {'key': 'properties.hyperV', '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, 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, free_offer_expiration_time=None, reserved: bool=False, is_xenon: bool=False, hyper_v: 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.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.free_offer_expiration_time = free_offer_expiration_time + self.resource_group = None + self.reserved = reserved + self.is_xenon = is_xenon + self.hyper_v = hyper_v + self.target_worker_count = target_worker_count + self.target_worker_size_id = target_worker_size_id + self.provisioning_state = None + self.sku = sku diff --git a/azure-mgmt-web/azure/mgmt/web/models/application_logs_config.py b/azure-mgmt-web/azure/mgmt/web/models/application_logs_config.py index b9a7bb1ebb58..d6a74fa876db 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/application_logs_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/application_logs_config.py @@ -32,8 +32,8 @@ class ApplicationLogsConfig(Model): 'azure_blob_storage': {'key': 'azureBlobStorage', 'type': 'AzureBlobStorageApplicationLogsConfig'}, } - def __init__(self, file_system=None, azure_table_storage=None, azure_blob_storage=None): - super(ApplicationLogsConfig, self).__init__() - self.file_system = file_system - self.azure_table_storage = azure_table_storage - self.azure_blob_storage = azure_blob_storage + def __init__(self, **kwargs): + super(ApplicationLogsConfig, self).__init__(**kwargs) + self.file_system = kwargs.get('file_system', None) + self.azure_table_storage = kwargs.get('azure_table_storage', None) + self.azure_blob_storage = kwargs.get('azure_blob_storage', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/application_logs_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/application_logs_config_py3.py new file mode 100644 index 000000000000..a548ed73ad7c --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/application_logs_config_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ApplicationLogsConfig(Model): + """Application logs configuration. + + :param file_system: Application logs to file system configuration. + :type file_system: ~azure.mgmt.web.models.FileSystemApplicationLogsConfig + :param azure_table_storage: Application logs to azure table storage + configuration. + :type azure_table_storage: + ~azure.mgmt.web.models.AzureTableStorageApplicationLogsConfig + :param azure_blob_storage: Application logs to blob storage configuration. + :type azure_blob_storage: + ~azure.mgmt.web.models.AzureBlobStorageApplicationLogsConfig + """ + + _attribute_map = { + 'file_system': {'key': 'fileSystem', 'type': 'FileSystemApplicationLogsConfig'}, + 'azure_table_storage': {'key': 'azureTableStorage', 'type': 'AzureTableStorageApplicationLogsConfig'}, + 'azure_blob_storage': {'key': 'azureBlobStorage', 'type': 'AzureBlobStorageApplicationLogsConfig'}, + } + + def __init__(self, *, file_system=None, azure_table_storage=None, azure_blob_storage=None, **kwargs) -> None: + super(ApplicationLogsConfig, self).__init__(**kwargs) + self.file_system = file_system + self.azure_table_storage = azure_table_storage + self.azure_blob_storage = azure_blob_storage diff --git a/azure-mgmt-web/azure/mgmt/web/models/application_stack.py b/azure-mgmt-web/azure/mgmt/web/models/application_stack.py index ba8fceaef641..5611a8e82717 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/application_stack.py +++ b/azure-mgmt-web/azure/mgmt/web/models/application_stack.py @@ -35,10 +35,10 @@ class ApplicationStack(Model): 'frameworks': {'key': 'frameworks', 'type': '[ApplicationStack]'}, } - def __init__(self, name=None, display=None, dependency=None, major_versions=None, frameworks=None): - super(ApplicationStack, self).__init__() - self.name = name - self.display = display - self.dependency = dependency - self.major_versions = major_versions - self.frameworks = frameworks + def __init__(self, **kwargs): + super(ApplicationStack, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.dependency = kwargs.get('dependency', None) + self.major_versions = kwargs.get('major_versions', None) + self.frameworks = kwargs.get('frameworks', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/application_stack_py3.py b/azure-mgmt-web/azure/mgmt/web/models/application_stack_py3.py new file mode 100644 index 000000000000..38aac1d8aa47 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/application_stack_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.StackMajorVersion] + :param frameworks: List of frameworks associated with application stack. + :type frameworks: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_actions.py b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_actions.py index f1595e9be056..01626a1790e4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_actions.py +++ b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_actions.py @@ -31,8 +31,8 @@ class AutoHealActions(Model): 'min_process_execution_time': {'key': 'minProcessExecutionTime', 'type': 'str'}, } - def __init__(self, action_type=None, custom_action=None, min_process_execution_time=None): - super(AutoHealActions, self).__init__() - self.action_type = action_type - self.custom_action = custom_action - self.min_process_execution_time = min_process_execution_time + def __init__(self, **kwargs): + super(AutoHealActions, self).__init__(**kwargs) + self.action_type = kwargs.get('action_type', None) + self.custom_action = kwargs.get('custom_action', None) + self.min_process_execution_time = kwargs.get('min_process_execution_time', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_actions_py3.py b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_actions_py3.py new file mode 100644 index 000000000000..c02ab3fea6f9 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_actions_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.AutoHealActionType + :param custom_action: Custom action to be taken. + :type custom_action: ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_custom_action.py b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_custom_action.py index e015fce2b903..d034dc301007 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_custom_action.py +++ b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_custom_action.py @@ -27,7 +27,7 @@ class AutoHealCustomAction(Model): 'parameters': {'key': 'parameters', 'type': 'str'}, } - def __init__(self, exe=None, parameters=None): - super(AutoHealCustomAction, self).__init__() - self.exe = exe - self.parameters = parameters + def __init__(self, **kwargs): + super(AutoHealCustomAction, self).__init__(**kwargs) + self.exe = kwargs.get('exe', None) + self.parameters = kwargs.get('parameters', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_custom_action_py3.py b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_custom_action_py3.py new file mode 100644 index 000000000000..bd1f4208adb2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_custom_action_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_rules.py b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_rules.py index 2cdc14a5fead..0c751d639275 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_rules.py +++ b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_rules.py @@ -27,7 +27,7 @@ class AutoHealRules(Model): 'actions': {'key': 'actions', 'type': 'AutoHealActions'}, } - def __init__(self, triggers=None, actions=None): - super(AutoHealRules, self).__init__() - self.triggers = triggers - self.actions = actions + def __init__(self, **kwargs): + super(AutoHealRules, self).__init__(**kwargs) + self.triggers = kwargs.get('triggers', None) + self.actions = kwargs.get('actions', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_rules_py3.py b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_rules_py3.py new file mode 100644 index 000000000000..38fe260c3d88 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_rules_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.AutoHealTriggers + :param actions: Actions to be executed when a rule is triggered. + :type actions: ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_triggers.py b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_triggers.py index 4d41496e95f1..6e86339d57eb 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_triggers.py +++ b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_triggers.py @@ -32,9 +32,9 @@ class AutoHealTriggers(Model): 'slow_requests': {'key': 'slowRequests', 'type': 'SlowRequestsBasedTrigger'}, } - def __init__(self, requests=None, private_bytes_in_kb=None, status_codes=None, slow_requests=None): - super(AutoHealTriggers, self).__init__() - self.requests = requests - self.private_bytes_in_kb = private_bytes_in_kb - self.status_codes = status_codes - self.slow_requests = slow_requests + def __init__(self, **kwargs): + super(AutoHealTriggers, self).__init__(**kwargs) + self.requests = kwargs.get('requests', None) + self.private_bytes_in_kb = kwargs.get('private_bytes_in_kb', None) + self.status_codes = kwargs.get('status_codes', None) + self.slow_requests = kwargs.get('slow_requests', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/auto_heal_triggers_py3.py b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_triggers_py3.py new file mode 100644 index 000000000000..59947d2fc4b3 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/auto_heal_triggers_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AutoHealTriggers(Model): + """Triggers for auto-heal. + + :param requests: A rule based on total requests. + :type requests: ~azure.mgmt.web.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.models.StatusCodesBasedTrigger] + :param slow_requests: A rule based on request execution time. + :type slow_requests: ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_application_logs_config.py b/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_application_logs_config.py index 0038c7d09545..f159f61ec92d 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_application_logs_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_application_logs_config.py @@ -33,8 +33,8 @@ class AzureBlobStorageApplicationLogsConfig(Model): 'retention_in_days': {'key': 'retentionInDays', 'type': 'int'}, } - def __init__(self, level=None, sas_url=None, retention_in_days=None): - super(AzureBlobStorageApplicationLogsConfig, self).__init__() - self.level = level - self.sas_url = sas_url - self.retention_in_days = retention_in_days + def __init__(self, **kwargs): + super(AzureBlobStorageApplicationLogsConfig, self).__init__(**kwargs) + self.level = kwargs.get('level', None) + self.sas_url = kwargs.get('sas_url', None) + self.retention_in_days = kwargs.get('retention_in_days', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_application_logs_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_application_logs_config_py3.py new file mode 100644 index 000000000000..9d8ec9a8d181 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_application_logs_config_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureBlobStorageApplicationLogsConfig(Model): + """Application logs azure blob storage configuration. + + :param level: Log level. Possible values include: 'Off', 'Verbose', + 'Information', 'Warning', 'Error' + :type level: str or ~azure.mgmt.web.models.LogLevel + :param sas_url: SAS url to a azure blob container with + read/write/list/delete permissions. + :type sas_url: str + :param retention_in_days: Retention in days. + Remove blobs older than X days. + 0 or lower means no retention. + :type retention_in_days: int + """ + + _attribute_map = { + 'level': {'key': 'level', 'type': 'LogLevel'}, + 'sas_url': {'key': 'sasUrl', 'type': 'str'}, + 'retention_in_days': {'key': 'retentionInDays', 'type': 'int'}, + } + + def __init__(self, *, level=None, sas_url: str=None, retention_in_days: int=None, **kwargs) -> None: + super(AzureBlobStorageApplicationLogsConfig, self).__init__(**kwargs) + self.level = level + self.sas_url = sas_url + self.retention_in_days = retention_in_days diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_http_logs_config.py b/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_http_logs_config.py index 44f0f1fe8cfe..23b4be2198f2 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_http_logs_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_http_logs_config.py @@ -33,8 +33,8 @@ class AzureBlobStorageHttpLogsConfig(Model): 'enabled': {'key': 'enabled', 'type': 'bool'}, } - def __init__(self, sas_url=None, retention_in_days=None, enabled=None): - super(AzureBlobStorageHttpLogsConfig, self).__init__() - self.sas_url = sas_url - self.retention_in_days = retention_in_days - self.enabled = enabled + def __init__(self, **kwargs): + super(AzureBlobStorageHttpLogsConfig, self).__init__(**kwargs) + self.sas_url = kwargs.get('sas_url', None) + self.retention_in_days = kwargs.get('retention_in_days', None) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_http_logs_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_http_logs_config_py3.py new file mode 100644 index 000000000000..92ceaa1208a6 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_blob_storage_http_logs_config_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureBlobStorageHttpLogsConfig(Model): + """Http logs to azure blob storage configuration. + + :param sas_url: SAS url to a azure blob container with + read/write/list/delete permissions. + :type sas_url: str + :param retention_in_days: Retention in days. + Remove blobs older than X days. + 0 or lower means no retention. + :type retention_in_days: int + :param enabled: True if configuration is enabled, false if it is disabled + and null if configuration is not set. + :type enabled: bool + """ + + _attribute_map = { + 'sas_url': {'key': 'sasUrl', 'type': 'str'}, + 'retention_in_days': {'key': 'retentionInDays', 'type': 'int'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, sas_url: str=None, retention_in_days: int=None, enabled: bool=None, **kwargs) -> None: + super(AzureBlobStorageHttpLogsConfig, self).__init__(**kwargs) + self.sas_url = sas_url + self.retention_in_days = retention_in_days + self.enabled = enabled diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_storage_info_value.py b/azure-mgmt-web/azure/mgmt/web/models/azure_storage_info_value.py new file mode 100644 index 000000000000..82f36284d597 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_storage_info_value.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureStorageInfoValue(Model): + """Azure Files or Blob Storage access information value for dictionary + storage. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param type: Type of storage. Possible values include: 'AzureFiles', + 'AzureBlob' + :type type: str or ~azure.mgmt.web.models.AzureStorageType + :param account_name: Name of the storage account. + :type account_name: str + :param share_name: Name of the file share (container name, for Blob + storage). + :type share_name: str + :param access_key: Access key for the storage account. + :type access_key: str + :param mount_path: Path to mount the storage within the site's runtime + environment. + :type mount_path: str + :ivar state: State of the storage account. Possible values include: 'Ok', + 'InvalidCredentials', 'InvalidShare' + :vartype state: str or ~azure.mgmt.web.models.AzureStorageState + """ + + _validation = { + 'state': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'AzureStorageType'}, + 'account_name': {'key': 'accountName', 'type': 'str'}, + 'share_name': {'key': 'shareName', 'type': 'str'}, + 'access_key': {'key': 'accessKey', 'type': 'str'}, + 'mount_path': {'key': 'mountPath', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'AzureStorageState'}, + } + + def __init__(self, **kwargs): + super(AzureStorageInfoValue, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.account_name = kwargs.get('account_name', None) + self.share_name = kwargs.get('share_name', None) + self.access_key = kwargs.get('access_key', None) + self.mount_path = kwargs.get('mount_path', None) + self.state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_storage_info_value_py3.py b/azure-mgmt-web/azure/mgmt/web/models/azure_storage_info_value_py3.py new file mode 100644 index 000000000000..dfe58a7bbf0e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_storage_info_value_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureStorageInfoValue(Model): + """Azure Files or Blob Storage access information value for dictionary + storage. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param type: Type of storage. Possible values include: 'AzureFiles', + 'AzureBlob' + :type type: str or ~azure.mgmt.web.models.AzureStorageType + :param account_name: Name of the storage account. + :type account_name: str + :param share_name: Name of the file share (container name, for Blob + storage). + :type share_name: str + :param access_key: Access key for the storage account. + :type access_key: str + :param mount_path: Path to mount the storage within the site's runtime + environment. + :type mount_path: str + :ivar state: State of the storage account. Possible values include: 'Ok', + 'InvalidCredentials', 'InvalidShare' + :vartype state: str or ~azure.mgmt.web.models.AzureStorageState + """ + + _validation = { + 'state': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'AzureStorageType'}, + 'account_name': {'key': 'accountName', 'type': 'str'}, + 'share_name': {'key': 'shareName', 'type': 'str'}, + 'access_key': {'key': 'accessKey', 'type': 'str'}, + 'mount_path': {'key': 'mountPath', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'AzureStorageState'}, + } + + def __init__(self, *, type=None, account_name: str=None, share_name: str=None, access_key: str=None, mount_path: str=None, **kwargs) -> None: + super(AzureStorageInfoValue, self).__init__(**kwargs) + self.type = type + self.account_name = account_name + self.share_name = share_name + self.access_key = access_key + self.mount_path = mount_path + self.state = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_storage_property_dictionary_resource.py b/azure-mgmt-web/azure/mgmt/web/models/azure_storage_property_dictionary_resource.py new file mode 100644 index 000000000000..c3b0153b8d54 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_storage_property_dictionary_resource.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +class AzureStoragePropertyDictionaryResource(ProxyOnlyResource): + """AzureStorageInfo dictionary resource. + + 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 properties: Azure storage accounts. + :type properties: dict[str, ~azure.mgmt.web.models.AzureStorageInfoValue] + """ + + _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'}, + 'properties': {'key': 'properties', 'type': '{AzureStorageInfoValue}'}, + } + + def __init__(self, **kwargs): + super(AzureStoragePropertyDictionaryResource, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_storage_property_dictionary_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/azure_storage_property_dictionary_resource_py3.py new file mode 100644 index 000000000000..d00f95cb753f --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_storage_property_dictionary_resource_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class AzureStoragePropertyDictionaryResource(ProxyOnlyResource): + """AzureStorageInfo dictionary resource. + + 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 properties: Azure storage accounts. + :type properties: dict[str, ~azure.mgmt.web.models.AzureStorageInfoValue] + """ + + _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'}, + 'properties': {'key': 'properties', 'type': '{AzureStorageInfoValue}'}, + } + + def __init__(self, *, kind: str=None, properties=None, **kwargs) -> None: + super(AzureStoragePropertyDictionaryResource, self).__init__(kind=kind, **kwargs) + self.properties = properties diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_table_storage_application_logs_config.py b/azure-mgmt-web/azure/mgmt/web/models/azure_table_storage_application_logs_config.py index 67326ab3ed8e..0586a88e2334 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/azure_table_storage_application_logs_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_table_storage_application_logs_config.py @@ -15,10 +15,12 @@ class AzureTableStorageApplicationLogsConfig(Model): """Application logs to Azure table storage configuration. + All required parameters must be populated in order to send to Azure. + :param level: Log level. Possible values include: 'Off', 'Verbose', 'Information', 'Warning', 'Error' :type level: str or ~azure.mgmt.web.models.LogLevel - :param sas_url: SAS URL to an Azure table with add/query/delete + :param sas_url: Required. SAS URL to an Azure table with add/query/delete permissions. :type sas_url: str """ @@ -32,7 +34,7 @@ class AzureTableStorageApplicationLogsConfig(Model): 'sas_url': {'key': 'sasUrl', 'type': 'str'}, } - def __init__(self, sas_url, level=None): - super(AzureTableStorageApplicationLogsConfig, self).__init__() - self.level = level - self.sas_url = sas_url + def __init__(self, **kwargs): + super(AzureTableStorageApplicationLogsConfig, self).__init__(**kwargs) + self.level = kwargs.get('level', None) + self.sas_url = kwargs.get('sas_url', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/azure_table_storage_application_logs_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/azure_table_storage_application_logs_config_py3.py new file mode 100644 index 000000000000..5ebf91d3de72 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/azure_table_storage_application_logs_config_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class AzureTableStorageApplicationLogsConfig(Model): + """Application logs to Azure table storage configuration. + + All required parameters must be populated in order to send to Azure. + + :param level: Log level. Possible values include: 'Off', 'Verbose', + 'Information', 'Warning', 'Error' + :type level: str or ~azure.mgmt.web.models.LogLevel + :param sas_url: Required. SAS URL to an Azure table with add/query/delete + permissions. + :type sas_url: str + """ + + _validation = { + 'sas_url': {'required': True}, + } + + _attribute_map = { + 'level': {'key': 'level', 'type': 'LogLevel'}, + 'sas_url': {'key': 'sasUrl', 'type': 'str'}, + } + + def __init__(self, *, sas_url: str, level=None, **kwargs) -> None: + super(AzureTableStorageApplicationLogsConfig, self).__init__(**kwargs) + self.level = level + self.sas_url = sas_url diff --git a/azure-mgmt-web/azure/mgmt/web/models/backup_item.py b/azure-mgmt-web/azure/mgmt/web/models/backup_item.py index c51f778fb347..0ad7297687cb 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/backup_item.py +++ b/azure-mgmt-web/azure/mgmt/web/models/backup_item.py @@ -104,8 +104,8 @@ class BackupItem(ProxyOnlyResource): 'website_size_in_bytes': {'key': 'properties.websiteSizeInBytes', 'type': 'long'}, } - def __init__(self, kind=None): - super(BackupItem, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(BackupItem, self).__init__(**kwargs) self.backup_id = None self.storage_account_url = None self.blob_name = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/backup_item_py3.py b/azure-mgmt-web/azure/mgmt/web/models/backup_item_py3.py new file mode 100644 index 000000000000..24d6406bef80 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/backup_item_py3.py @@ -0,0 +1,122 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class BackupItem(ProxyOnlyResource): + """Backup description. + + 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 backup_id: Id of the backup. + :vartype backup_id: int + :ivar storage_account_url: SAS URL for the storage account container which + contains this backup. + :vartype storage_account_url: str + :ivar blob_name: Name of the blob which contains data for this backup. + :vartype blob_name: str + :ivar backup_item_name: Name of this backup. + :vartype backup_item_name: str + :ivar status: Backup status. Possible values include: 'InProgress', + 'Failed', 'Succeeded', 'TimedOut', 'Created', 'Skipped', + 'PartiallySucceeded', 'DeleteInProgress', 'DeleteFailed', 'Deleted' + :vartype status: str or ~azure.mgmt.web.models.BackupItemStatus + :ivar size_in_bytes: Size of the backup in bytes. + :vartype size_in_bytes: long + :ivar created: Timestamp of the backup creation. + :vartype created: datetime + :ivar log: Details regarding this backup. Might contain an error message. + :vartype log: str + :ivar databases: List of databases included in the backup. + :vartype databases: list[~azure.mgmt.web.models.DatabaseBackupSetting] + :ivar scheduled: True if this backup has been created due to a schedule + being triggered. + :vartype scheduled: bool + :ivar last_restore_time_stamp: Timestamp of a last restore operation which + used this backup. + :vartype last_restore_time_stamp: datetime + :ivar finished_time_stamp: Timestamp when this backup finished. + :vartype finished_time_stamp: datetime + :ivar correlation_id: Unique correlation identifier. Please use this along + with the timestamp while communicating with Azure support. + :vartype correlation_id: str + :ivar website_size_in_bytes: Size of the original web app which has been + backed up. + :vartype website_size_in_bytes: long + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'backup_id': {'readonly': True}, + 'storage_account_url': {'readonly': True}, + 'blob_name': {'readonly': True}, + 'backup_item_name': {'readonly': True}, + 'status': {'readonly': True}, + 'size_in_bytes': {'readonly': True}, + 'created': {'readonly': True}, + 'log': {'readonly': True}, + 'databases': {'readonly': True}, + 'scheduled': {'readonly': True}, + 'last_restore_time_stamp': {'readonly': True}, + 'finished_time_stamp': {'readonly': True}, + 'correlation_id': {'readonly': True}, + 'website_size_in_bytes': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'backup_id': {'key': 'properties.id', 'type': 'int'}, + 'storage_account_url': {'key': 'properties.storageAccountUrl', 'type': 'str'}, + 'blob_name': {'key': 'properties.blobName', 'type': 'str'}, + 'backup_item_name': {'key': 'properties.name', 'type': 'str'}, + 'status': {'key': 'properties.status', 'type': 'BackupItemStatus'}, + 'size_in_bytes': {'key': 'properties.sizeInBytes', 'type': 'long'}, + 'created': {'key': 'properties.created', 'type': 'iso-8601'}, + 'log': {'key': 'properties.log', 'type': 'str'}, + 'databases': {'key': 'properties.databases', 'type': '[DatabaseBackupSetting]'}, + 'scheduled': {'key': 'properties.scheduled', 'type': 'bool'}, + 'last_restore_time_stamp': {'key': 'properties.lastRestoreTimeStamp', 'type': 'iso-8601'}, + 'finished_time_stamp': {'key': 'properties.finishedTimeStamp', 'type': 'iso-8601'}, + 'correlation_id': {'key': 'properties.correlationId', 'type': 'str'}, + 'website_size_in_bytes': {'key': 'properties.websiteSizeInBytes', 'type': 'long'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(BackupItem, self).__init__(kind=kind, **kwargs) + self.backup_id = None + self.storage_account_url = None + self.blob_name = None + self.backup_item_name = None + self.status = None + self.size_in_bytes = None + self.created = None + self.log = None + self.databases = None + self.scheduled = None + self.last_restore_time_stamp = None + self.finished_time_stamp = None + self.correlation_id = None + self.website_size_in_bytes = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/backup_request.py b/azure-mgmt-web/azure/mgmt/web/models/backup_request.py index d3e9df59b00d..496fc5bd9251 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/backup_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/backup_request.py @@ -18,6 +18,8 @@ class BackupRequest(ProxyOnlyResource): 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. @@ -26,29 +28,24 @@ class BackupRequest(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param backup_request_name: Name of the backup. - :type backup_request_name: str + :param backup_name: Name of the backup. + :type backup_name: str :param enabled: True if the backup schedule is enabled (must be included in that case), false if the backup schedule should be disabled. :type enabled: bool - :param storage_account_url: SAS URL to the container. + :param storage_account_url: Required. SAS URL to the container. :type storage_account_url: str :param backup_schedule: Schedule for the backup if it is executed periodically. :type backup_schedule: ~azure.mgmt.web.models.BackupSchedule :param databases: Databases included in the backup. :type databases: list[~azure.mgmt.web.models.DatabaseBackupSetting] - :param backup_request_type: Type of the backup. Possible values include: - 'Default', 'Clone', 'Relocation', 'Snapshot' - :type backup_request_type: str or - ~azure.mgmt.web.models.BackupRestoreOperationType """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'backup_request_name': {'required': True}, 'storage_account_url': {'required': True}, } @@ -57,19 +54,17 @@ class BackupRequest(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'backup_request_name': {'key': 'properties.name', 'type': 'str'}, + 'backup_name': {'key': 'properties.backupName', 'type': 'str'}, 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, 'storage_account_url': {'key': 'properties.storageAccountUrl', 'type': 'str'}, 'backup_schedule': {'key': 'properties.backupSchedule', 'type': 'BackupSchedule'}, 'databases': {'key': 'properties.databases', 'type': '[DatabaseBackupSetting]'}, - 'backup_request_type': {'key': 'properties.type', 'type': 'BackupRestoreOperationType'}, } - def __init__(self, backup_request_name, storage_account_url, kind=None, enabled=None, backup_schedule=None, databases=None, backup_request_type=None): - super(BackupRequest, self).__init__(kind=kind) - self.backup_request_name = backup_request_name - self.enabled = enabled - self.storage_account_url = storage_account_url - self.backup_schedule = backup_schedule - self.databases = databases - self.backup_request_type = backup_request_type + def __init__(self, **kwargs): + super(BackupRequest, self).__init__(**kwargs) + self.backup_name = kwargs.get('backup_name', None) + self.enabled = kwargs.get('enabled', None) + self.storage_account_url = kwargs.get('storage_account_url', None) + self.backup_schedule = kwargs.get('backup_schedule', None) + self.databases = kwargs.get('databases', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/backup_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/backup_request_py3.py new file mode 100644 index 000000000000..9eaad232bb94 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/backup_request_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class BackupRequest(ProxyOnlyResource): + """Description of a backup which will be performed. + + 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 backup_name: Name of the backup. + :type backup_name: str + :param enabled: True if the backup schedule is enabled (must be included + in that case), false if the backup schedule should be disabled. + :type enabled: bool + :param storage_account_url: Required. SAS URL to the container. + :type storage_account_url: str + :param backup_schedule: Schedule for the backup if it is executed + periodically. + :type backup_schedule: ~azure.mgmt.web.models.BackupSchedule + :param databases: Databases included in the backup. + :type databases: list[~azure.mgmt.web.models.DatabaseBackupSetting] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'storage_account_url': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'backup_name': {'key': 'properties.backupName', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'storage_account_url': {'key': 'properties.storageAccountUrl', 'type': 'str'}, + 'backup_schedule': {'key': 'properties.backupSchedule', 'type': 'BackupSchedule'}, + 'databases': {'key': 'properties.databases', 'type': '[DatabaseBackupSetting]'}, + } + + def __init__(self, *, storage_account_url: str, kind: str=None, backup_name: str=None, enabled: bool=None, backup_schedule=None, databases=None, **kwargs) -> None: + super(BackupRequest, self).__init__(kind=kind, **kwargs) + self.backup_name = backup_name + self.enabled = enabled + self.storage_account_url = storage_account_url + self.backup_schedule = backup_schedule + self.databases = databases diff --git a/azure-mgmt-web/azure/mgmt/web/models/backup_schedule.py b/azure-mgmt-web/azure/mgmt/web/models/backup_schedule.py index c1267a13c4f0..12cda3fe6bc1 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/backup_schedule.py +++ b/azure-mgmt-web/azure/mgmt/web/models/backup_schedule.py @@ -19,21 +19,23 @@ class BackupSchedule(Model): Variables are only populated by the server, and will be ignored when sending a request. - :param frequency_interval: How often the backup should be executed (e.g. - for weekly backup, this should be set to 7 and FrequencyUnit should be set - to Day). Default value: 7 . + All required parameters must be populated in order to send to Azure. + + :param frequency_interval: Required. How often the backup should be + executed (e.g. for weekly backup, this should be set to 7 and + FrequencyUnit should be set to Day). Default value: 7 . :type frequency_interval: int - :param frequency_unit: The unit of time for how often the backup should be - executed (e.g. for weekly backup, this should be set to Day and + :param frequency_unit: Required. The unit of time for how often the backup + should be executed (e.g. for weekly backup, this should be set to Day and FrequencyInterval should be set to 7). Possible values include: 'Day', 'Hour'. Default value: "Day" . :type frequency_unit: str or ~azure.mgmt.web.models.FrequencyUnit - :param keep_at_least_one_backup: True if the retention policy should - always keep at least one backup in the storage account, regardless how old - it is; false otherwise. Default value: True . + :param keep_at_least_one_backup: Required. True if the retention policy + should always keep at least one backup in the storage account, regardless + how old it is; false otherwise. Default value: True . :type keep_at_least_one_backup: bool - :param retention_period_in_days: After how many days backups should be - deleted. Default value: 30 . + :param retention_period_in_days: Required. After how many days backups + should be deleted. Default value: 30 . :type retention_period_in_days: int :param start_time: When the schedule should start working. :type start_time: datetime @@ -58,11 +60,11 @@ class BackupSchedule(Model): 'last_execution_time': {'key': 'lastExecutionTime', 'type': 'iso-8601'}, } - def __init__(self, frequency_interval=7, frequency_unit="Day", keep_at_least_one_backup=True, retention_period_in_days=30, start_time=None): - super(BackupSchedule, self).__init__() - self.frequency_interval = frequency_interval - self.frequency_unit = frequency_unit - self.keep_at_least_one_backup = keep_at_least_one_backup - self.retention_period_in_days = retention_period_in_days - self.start_time = start_time + def __init__(self, **kwargs): + super(BackupSchedule, self).__init__(**kwargs) + self.frequency_interval = kwargs.get('frequency_interval', 7) + self.frequency_unit = kwargs.get('frequency_unit', "Day") + self.keep_at_least_one_backup = kwargs.get('keep_at_least_one_backup', True) + self.retention_period_in_days = kwargs.get('retention_period_in_days', 30) + self.start_time = kwargs.get('start_time', None) self.last_execution_time = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/backup_schedule_py3.py b/azure-mgmt-web/azure/mgmt/web/models/backup_schedule_py3.py new file mode 100644 index 000000000000..4b8b0d39d163 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/backup_schedule_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class BackupSchedule(Model): + """Description of a backup schedule. Describes how often should be the backup + performed and what should be the retention policy. + + 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 frequency_interval: Required. How often the backup should be + executed (e.g. for weekly backup, this should be set to 7 and + FrequencyUnit should be set to Day). Default value: 7 . + :type frequency_interval: int + :param frequency_unit: Required. The unit of time for how often the backup + should be executed (e.g. for weekly backup, this should be set to Day and + FrequencyInterval should be set to 7). Possible values include: 'Day', + 'Hour'. Default value: "Day" . + :type frequency_unit: str or ~azure.mgmt.web.models.FrequencyUnit + :param keep_at_least_one_backup: Required. True if the retention policy + should always keep at least one backup in the storage account, regardless + how old it is; false otherwise. Default value: True . + :type keep_at_least_one_backup: bool + :param retention_period_in_days: Required. After how many days backups + should be deleted. Default value: 30 . + :type retention_period_in_days: int + :param start_time: When the schedule should start working. + :type start_time: datetime + :ivar last_execution_time: Last time when this schedule was triggered. + :vartype last_execution_time: datetime + """ + + _validation = { + 'frequency_interval': {'required': True}, + 'frequency_unit': {'required': True}, + 'keep_at_least_one_backup': {'required': True}, + 'retention_period_in_days': {'required': True}, + 'last_execution_time': {'readonly': True}, + } + + _attribute_map = { + 'frequency_interval': {'key': 'frequencyInterval', 'type': 'int'}, + 'frequency_unit': {'key': 'frequencyUnit', 'type': 'FrequencyUnit'}, + 'keep_at_least_one_backup': {'key': 'keepAtLeastOneBackup', 'type': 'bool'}, + 'retention_period_in_days': {'key': 'retentionPeriodInDays', 'type': 'int'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'last_execution_time': {'key': 'lastExecutionTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, frequency_interval: int=7, frequency_unit="Day", keep_at_least_one_backup: bool=True, retention_period_in_days: int=30, start_time=None, **kwargs) -> None: + super(BackupSchedule, self).__init__(**kwargs) + self.frequency_interval = frequency_interval + self.frequency_unit = frequency_unit + self.keep_at_least_one_backup = keep_at_least_one_backup + self.retention_period_in_days = retention_period_in_days + self.start_time = start_time + self.last_execution_time = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/billing_meter.py b/azure-mgmt-web/azure/mgmt/web/models/billing_meter.py new file mode 100644 index 000000000000..580c168f394a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/billing_meter.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +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 ResourceType meter used for + :type resource_type: str + :param os_type: App Service OS type meter used for + :type os_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'}, + 'os_type': {'key': 'properties.osType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BillingMeter, self).__init__(**kwargs) + self.meter_id = kwargs.get('meter_id', None) + self.billing_location = kwargs.get('billing_location', None) + self.short_name = kwargs.get('short_name', None) + self.friendly_name = kwargs.get('friendly_name', None) + self.resource_type = kwargs.get('resource_type', None) + self.os_type = kwargs.get('os_type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/billing_meter_paged.py b/azure-mgmt-web/azure/mgmt/web/models/billing_meter_paged.py new file mode 100644 index 000000000000..cb7b9103b59d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/billing_meter_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class BillingMeterPaged(Paged): + """ + A paging container for iterating over a list of :class:`BillingMeter ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BillingMeter]'} + } + + def __init__(self, *args, **kwargs): + + super(BillingMeterPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-web/azure/mgmt/web/models/billing_meter_py3.py b/azure-mgmt-web/azure/mgmt/web/models/billing_meter_py3.py new file mode 100644 index 000000000000..4d44fbd9f2df --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/billing_meter_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 ResourceType meter used for + :type resource_type: str + :param os_type: App Service OS type meter used for + :type os_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'}, + 'os_type': {'key': 'properties.osType', '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, os_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 + self.os_type = os_type diff --git a/azure-mgmt-web/azure/mgmt/web/models/capability.py b/azure-mgmt-web/azure/mgmt/web/models/capability.py index d69bc114238c..798ed866cbcf 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/capability.py +++ b/azure-mgmt-web/azure/mgmt/web/models/capability.py @@ -29,8 +29,8 @@ class Capability(Model): 'reason': {'key': 'reason', 'type': 'str'}, } - def __init__(self, name=None, value=None, reason=None): - super(Capability, self).__init__() - self.name = name - self.value = value - self.reason = reason + def __init__(self, **kwargs): + super(Capability, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) + self.reason = kwargs.get('reason', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/capability_py3.py b/azure-mgmt-web/azure/mgmt/web/models/capability_py3.py new file mode 100644 index 000000000000..3445faa1b7c8 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/capability_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate.py b/azure-mgmt-web/azure/mgmt/web/models/certificate.py index 5183a1ad5dca..bd2c25e366d8 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/certificate.py +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate.py @@ -18,13 +18,15 @@ class Certificate(Resource): 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: Resource Location. + :param location: Required. Resource Location. :type location: str :ivar type: Resource type. :vartype type: str @@ -48,7 +50,7 @@ class Certificate(Resource): :vartype issue_date: datetime :ivar expiration_date: Certificate expriration date. :vartype expiration_date: datetime - :param password: Certificate password. + :param password: Required. Certificate password. :type password: str :ivar thumbprint: Certificate thumbprint. :vartype thumbprint: str @@ -74,8 +76,6 @@ class Certificate(Resource): 'Unknown' :vartype key_vault_secret_status: str or ~azure.mgmt.web.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}". @@ -101,7 +101,6 @@ class Certificate(Resource): 'public_key_hash': {'readonly': True}, 'hosting_environment_profile': {'readonly': True}, 'key_vault_secret_status': {'readonly': True}, - 'geo_region': {'readonly': True}, } _attribute_map = { @@ -129,29 +128,27 @@ class Certificate(Resource): '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, password, kind=None, tags=None, host_names=None, pfx_blob=None, key_vault_id=None, key_vault_secret_name=None, server_farm_id=None): - super(Certificate, self).__init__(kind=kind, location=location, tags=tags) + def __init__(self, **kwargs): + super(Certificate, self).__init__(**kwargs) self.friendly_name = None self.subject_name = None - self.host_names = host_names - self.pfx_blob = pfx_blob + self.host_names = kwargs.get('host_names', None) + self.pfx_blob = kwargs.get('pfx_blob', None) self.site_name = None self.self_link = None self.issuer = None self.issue_date = None self.expiration_date = None - self.password = password + self.password = kwargs.get('password', None) 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_id = kwargs.get('key_vault_id', None) + self.key_vault_secret_name = kwargs.get('key_vault_secret_name', None) self.key_vault_secret_status = None - self.geo_region = None - self.server_farm_id = server_farm_id + self.server_farm_id = kwargs.get('server_farm_id', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_details.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_details.py index fecd8e11d4e7..847767cc4b40 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/certificate_details.py +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_details.py @@ -62,8 +62,8 @@ class CertificateDetails(Model): 'raw_data': {'key': 'rawData', 'type': 'str'}, } - def __init__(self): - super(CertificateDetails, self).__init__() + def __init__(self, **kwargs): + super(CertificateDetails, self).__init__(**kwargs) self.version = None self.serial_number = None self.thumbprint = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_details_py3.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_details_py3.py new file mode 100644 index 000000000000..6ea61e10ca94 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_details_py3.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CertificateDetails(Model): + """SSL certificate details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar version: Certificate Version. + :vartype version: int + :ivar serial_number: Certificate Serial Number. + :vartype serial_number: str + :ivar thumbprint: Certificate Thumbprint. + :vartype thumbprint: str + :ivar subject: Certificate Subject. + :vartype subject: str + :ivar not_before: Date Certificate is valid from. + :vartype not_before: datetime + :ivar not_after: Date Certificate is valid to. + :vartype not_after: datetime + :ivar signature_algorithm: Certificate Signature algorithm. + :vartype signature_algorithm: str + :ivar issuer: Certificate Issuer. + :vartype issuer: str + :ivar raw_data: Raw certificate data. + :vartype raw_data: str + """ + + _validation = { + 'version': {'readonly': True}, + 'serial_number': {'readonly': True}, + 'thumbprint': {'readonly': True}, + 'subject': {'readonly': True}, + 'not_before': {'readonly': True}, + 'not_after': {'readonly': True}, + 'signature_algorithm': {'readonly': True}, + 'issuer': {'readonly': True}, + 'raw_data': {'readonly': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'int'}, + 'serial_number': {'key': 'serialNumber', 'type': 'str'}, + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + 'subject': {'key': 'subject', 'type': 'str'}, + 'not_before': {'key': 'notBefore', 'type': 'iso-8601'}, + 'not_after': {'key': 'notAfter', 'type': 'iso-8601'}, + 'signature_algorithm': {'key': 'signatureAlgorithm', 'type': 'str'}, + 'issuer': {'key': 'issuer', 'type': 'str'}, + 'raw_data': {'key': 'rawData', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(CertificateDetails, self).__init__(**kwargs) + self.version = None + self.serial_number = None + self.thumbprint = None + self.subject = None + self.not_before = None + self.not_after = None + self.signature_algorithm = None + self.issuer = None + self.raw_data = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_email.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_email.py index 674c722acc58..a7a1b8666e48 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/certificate_email.py +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_email.py @@ -47,7 +47,7 @@ class CertificateEmail(ProxyOnlyResource): 'time_stamp': {'key': 'properties.timeStamp', 'type': 'iso-8601'}, } - def __init__(self, kind=None, email_id=None, time_stamp=None): - super(CertificateEmail, self).__init__(kind=kind) - self.email_id = email_id - self.time_stamp = time_stamp + def __init__(self, **kwargs): + super(CertificateEmail, self).__init__(**kwargs) + self.email_id = kwargs.get('email_id', None) + self.time_stamp = kwargs.get('time_stamp', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_email_py3.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_email_py3.py new file mode 100644 index 000000000000..32255dff53a6 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_email_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class CertificateEmail(ProxyOnlyResource): + """SSL certificate email. + + 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 email_id: Email id. + :type email_id: str + :param time_stamp: Time stamp. + :type time_stamp: 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'}, + 'email_id': {'key': 'properties.emailId', 'type': 'str'}, + 'time_stamp': {'key': 'properties.timeStamp', 'type': 'iso-8601'}, + } + + def __init__(self, *, kind: str=None, email_id: str=None, time_stamp=None, **kwargs) -> None: + super(CertificateEmail, self).__init__(kind=kind, **kwargs) + self.email_id = email_id + self.time_stamp = time_stamp diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_order_action.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_order_action.py index 3144e61ed987..2331dd37d7f8 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/certificate_order_action.py +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_order_action.py @@ -26,22 +26,24 @@ class CertificateOrderAction(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param certificate_order_action_type: Action type. Possible values - include: 'CertificateIssued', 'CertificateOrderCanceled', + :ivar action_type: Action type. Possible values include: + 'CertificateIssued', 'CertificateOrderCanceled', 'CertificateOrderCreated', 'CertificateRevoked', 'DomainValidationComplete', 'FraudDetected', 'OrgNameChange', 'OrgValidationComplete', 'SanDrop', 'FraudCleared', 'CertificateExpired', 'CertificateExpirationWarning', 'FraudDocumentationRequired', 'Unknown' - :type certificate_order_action_type: str or + :vartype action_type: str or ~azure.mgmt.web.models.CertificateOrderActionType - :param created_at: Time at which the certificate action was performed. - :type created_at: datetime + :ivar created_at: Time at which the certificate action was performed. + :vartype created_at: datetime """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'action_type': {'readonly': True}, + 'created_at': {'readonly': True}, } _attribute_map = { @@ -49,11 +51,11 @@ class CertificateOrderAction(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'certificate_order_action_type': {'key': 'properties.type', 'type': 'CertificateOrderActionType'}, + 'action_type': {'key': 'properties.actionType', 'type': 'CertificateOrderActionType'}, 'created_at': {'key': 'properties.createdAt', 'type': 'iso-8601'}, } - def __init__(self, kind=None, certificate_order_action_type=None, created_at=None): - super(CertificateOrderAction, self).__init__(kind=kind) - self.certificate_order_action_type = certificate_order_action_type - self.created_at = created_at + def __init__(self, **kwargs): + super(CertificateOrderAction, self).__init__(**kwargs) + self.action_type = None + self.created_at = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_order_action_py3.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_order_action_py3.py new file mode 100644 index 000000000000..d6bc846e4ab1 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_order_action_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class CertificateOrderAction(ProxyOnlyResource): + """Certificate order action. + + 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 action_type: Action type. Possible values include: + 'CertificateIssued', 'CertificateOrderCanceled', + 'CertificateOrderCreated', 'CertificateRevoked', + 'DomainValidationComplete', 'FraudDetected', 'OrgNameChange', + 'OrgValidationComplete', 'SanDrop', 'FraudCleared', 'CertificateExpired', + 'CertificateExpirationWarning', 'FraudDocumentationRequired', 'Unknown' + :vartype action_type: str or + ~azure.mgmt.web.models.CertificateOrderActionType + :ivar created_at: Time at which the certificate action was performed. + :vartype created_at: datetime + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'action_type': {'readonly': True}, + 'created_at': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'action_type': {'key': 'properties.actionType', 'type': 'CertificateOrderActionType'}, + 'created_at': {'key': 'properties.createdAt', 'type': 'iso-8601'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(CertificateOrderAction, self).__init__(kind=kind, **kwargs) + self.action_type = None + self.created_at = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_patch_resource.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_patch_resource.py index 3492c509073c..00640f893069 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/certificate_patch_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_patch_resource.py @@ -18,6 +18,8 @@ class CertificatePatchResource(ProxyOnlyResource): 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. @@ -44,7 +46,7 @@ class CertificatePatchResource(ProxyOnlyResource): :vartype issue_date: datetime :ivar expiration_date: Certificate expriration date. :vartype expiration_date: datetime - :param password: Certificate password. + :param password: Required. Certificate password. :type password: str :ivar thumbprint: Certificate thumbprint. :vartype thumbprint: str @@ -70,8 +72,6 @@ class CertificatePatchResource(ProxyOnlyResource): 'Unknown' :vartype key_vault_secret_status: str or ~azure.mgmt.web.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}". @@ -96,7 +96,6 @@ class CertificatePatchResource(ProxyOnlyResource): 'public_key_hash': {'readonly': True}, 'hosting_environment_profile': {'readonly': True}, 'key_vault_secret_status': {'readonly': True}, - 'geo_region': {'readonly': True}, } _attribute_map = { @@ -122,29 +121,27 @@ class CertificatePatchResource(ProxyOnlyResource): '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, kind=None, host_names=None, pfx_blob=None, key_vault_id=None, key_vault_secret_name=None, server_farm_id=None): - super(CertificatePatchResource, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(CertificatePatchResource, self).__init__(**kwargs) self.friendly_name = None self.subject_name = None - self.host_names = host_names - self.pfx_blob = pfx_blob + self.host_names = kwargs.get('host_names', None) + self.pfx_blob = kwargs.get('pfx_blob', None) self.site_name = None self.self_link = None self.issuer = None self.issue_date = None self.expiration_date = None - self.password = password + self.password = kwargs.get('password', None) 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_id = kwargs.get('key_vault_id', None) + self.key_vault_secret_name = kwargs.get('key_vault_secret_name', None) self.key_vault_secret_status = None - self.geo_region = None - self.server_farm_id = server_farm_id + self.server_farm_id = kwargs.get('server_farm_id', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_patch_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_patch_resource_py3.py new file mode 100644 index 000000000000..afe00d21362b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_patch_resource_py3.py @@ -0,0 +1,147 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 expriration 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.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.models.KeyVaultSecretStatus + :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}, + } + + _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'}, + '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.server_farm_id = server_farm_id diff --git a/azure-mgmt-web/azure/mgmt/web/models/certificate_py3.py b/azure-mgmt-web/azure/mgmt/web/models/certificate_py3.py new file mode 100644 index 000000000000..e18577a8f98c --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/certificate_py3.py @@ -0,0 +1,154 @@ +# 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 .resource_py3 import Resource + + +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 expriration 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.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.models.KeyVaultSecretStatus + :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}, + } + + _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'}, + '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.server_farm_id = server_farm_id diff --git a/azure-mgmt-web/azure/mgmt/web/models/cloning_info.py b/azure-mgmt-web/azure/mgmt/web/models/cloning_info.py index 193c1610ef4d..8402c4680845 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/cloning_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/cloning_info.py @@ -15,6 +15,8 @@ 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. @@ -28,8 +30,8 @@ class CloningInfo(Model): :param clone_source_control: true to clone source control from source app; otherwise, false. :type clone_source_control: bool - :param source_web_app_id: ARM resource ID of the source app. App resource - ID is of the form + :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} @@ -53,9 +55,6 @@ class CloningInfo(Model): create. This is only needed if Traffic Manager profile does not already exist. :type traffic_manager_profile_name: str - :param ignore_quotas: true if quotas should be ignored; - otherwise, false. - :type ignore_quotas: bool """ _validation = { @@ -73,19 +72,17 @@ class CloningInfo(Model): '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, correlation_id=None, overwrite=None, clone_custom_host_names=None, clone_source_control=None, hosting_environment=None, app_settings_overrides=None, configure_load_balancing=None, traffic_manager_profile_id=None, traffic_manager_profile_name=None, ignore_quotas=None): - super(CloningInfo, self).__init__() - 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 + def __init__(self, **kwargs): + super(CloningInfo, self).__init__(**kwargs) + self.correlation_id = kwargs.get('correlation_id', None) + self.overwrite = kwargs.get('overwrite', None) + self.clone_custom_host_names = kwargs.get('clone_custom_host_names', None) + self.clone_source_control = kwargs.get('clone_source_control', None) + self.source_web_app_id = kwargs.get('source_web_app_id', None) + self.hosting_environment = kwargs.get('hosting_environment', None) + self.app_settings_overrides = kwargs.get('app_settings_overrides', None) + self.configure_load_balancing = kwargs.get('configure_load_balancing', None) + self.traffic_manager_profile_id = kwargs.get('traffic_manager_profile_id', None) + self.traffic_manager_profile_name = kwargs.get('traffic_manager_profile_name', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/cloning_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/cloning_info_py3.py new file mode 100644 index 000000000000..1fbc28e74499 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/cloning_info_py3.py @@ -0,0 +1,88 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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: true to overwrite destination app; + otherwise, false. + :type overwrite: bool + :param clone_custom_host_names: true to clone custom + hostnames from source app; otherwise, false. + :type clone_custom_host_names: bool + :param clone_source_control: true to clone source control + from source app; otherwise, false. + :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: true 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 + """ + + _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'}, + } + + 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, **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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/conn_string_info.py b/azure-mgmt-web/azure/mgmt/web/models/conn_string_info.py index 85f5c197d14e..040fbea5e920 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/conn_string_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/conn_string_info.py @@ -31,8 +31,8 @@ class ConnStringInfo(Model): 'type': {'key': 'type', 'type': 'ConnectionStringType'}, } - def __init__(self, name=None, connection_string=None, type=None): - super(ConnStringInfo, self).__init__() - self.name = name - self.connection_string = connection_string - self.type = type + def __init__(self, **kwargs): + super(ConnStringInfo, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.connection_string = kwargs.get('connection_string', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/conn_string_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/conn_string_info_py3.py new file mode 100644 index 000000000000..24d38593fded --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/conn_string_info_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/conn_string_value_type_pair.py b/azure-mgmt-web/azure/mgmt/web/models/conn_string_value_type_pair.py index a06aab9a003c..8fc0ffe591dd 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/conn_string_value_type_pair.py +++ b/azure-mgmt-web/azure/mgmt/web/models/conn_string_value_type_pair.py @@ -15,9 +15,11 @@ class ConnStringValueTypePair(Model): """Database connection string value to type pair. - :param value: Value of pair. + All required parameters must be populated in order to send to Azure. + + :param value: Required. Value of pair. :type value: str - :param type: Type of database. Possible values include: 'MySql', + :param type: Required. Type of database. Possible values include: 'MySql', 'SQLServer', 'SQLAzure', 'Custom', 'NotificationHub', 'ServiceBus', 'EventHub', 'ApiHub', 'DocDb', 'RedisCache', 'PostgreSQL' :type type: str or ~azure.mgmt.web.models.ConnectionStringType @@ -33,7 +35,7 @@ class ConnStringValueTypePair(Model): 'type': {'key': 'type', 'type': 'ConnectionStringType'}, } - def __init__(self, value, type): - super(ConnStringValueTypePair, self).__init__() - self.value = value - self.type = type + def __init__(self, **kwargs): + super(ConnStringValueTypePair, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.type = kwargs.get('type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/conn_string_value_type_pair_py3.py b/azure-mgmt-web/azure/mgmt/web/models/conn_string_value_type_pair_py3.py new file mode 100644 index 000000000000..e45cabb73a39 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/conn_string_value_type_pair_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ConnStringValueTypePair(Model): + """Database connection string value to type pair. + + All required parameters must be populated in order to send to Azure. + + :param value: Required. Value of pair. + :type value: str + :param type: Required. Type of database. Possible values include: 'MySql', + 'SQLServer', 'SQLAzure', 'Custom', 'NotificationHub', 'ServiceBus', + 'EventHub', 'ApiHub', 'DocDb', 'RedisCache', 'PostgreSQL' + :type type: str or ~azure.mgmt.web.models.ConnectionStringType + """ + + _validation = { + 'value': {'required': True}, + 'type': {'required': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ConnectionStringType'}, + } + + def __init__(self, *, value: str, type, **kwargs) -> None: + super(ConnStringValueTypePair, self).__init__(**kwargs) + self.value = value + self.type = type diff --git a/azure-mgmt-web/azure/mgmt/web/models/connection_string_dictionary.py b/azure-mgmt-web/azure/mgmt/web/models/connection_string_dictionary.py index 600fb4f02001..d2e4a7bc5f1a 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/connection_string_dictionary.py +++ b/azure-mgmt-web/azure/mgmt/web/models/connection_string_dictionary.py @@ -45,6 +45,6 @@ class ConnectionStringDictionary(ProxyOnlyResource): 'properties': {'key': 'properties', 'type': '{ConnStringValueTypePair}'}, } - def __init__(self, kind=None, properties=None): - super(ConnectionStringDictionary, self).__init__(kind=kind) - self.properties = properties + def __init__(self, **kwargs): + super(ConnectionStringDictionary, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/connection_string_dictionary_py3.py b/azure-mgmt-web/azure/mgmt/web/models/connection_string_dictionary_py3.py new file mode 100644 index 000000000000..37848b56ba68 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/connection_string_dictionary_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class ConnectionStringDictionary(ProxyOnlyResource): + """String dictionary resource. + + 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 properties: Connection strings. + :type properties: dict[str, + ~azure.mgmt.web.models.ConnStringValueTypePair] + """ + + _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'}, + 'properties': {'key': 'properties', 'type': '{ConnStringValueTypePair}'}, + } + + def __init__(self, *, kind: str=None, properties=None, **kwargs) -> None: + super(ConnectionStringDictionary, self).__init__(kind=kind, **kwargs) + self.properties = properties diff --git a/azure-mgmt-web/azure/mgmt/web/models/contact.py b/azure-mgmt-web/azure/mgmt/web/models/contact.py index 28b3c6749af2..a18a023642d0 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/contact.py +++ b/azure-mgmt-web/azure/mgmt/web/models/contact.py @@ -18,23 +18,25 @@ class Contact(Model): through the Whois directories as per ICANN requirements. + All required parameters must be populated in order to send to Azure. + :param address_mailing: Mailing address. :type address_mailing: ~azure.mgmt.web.models.Address - :param email: Email address. + :param email: Required. Email address. :type email: str :param fax: Fax number. :type fax: str :param job_title: Job title. :type job_title: str - :param name_first: First name. + :param name_first: Required. First name. :type name_first: str - :param name_last: Last name. + :param name_last: Required. Last name. :type name_last: str :param name_middle: Middle name. :type name_middle: str :param organization: Organization contact belongs to. :type organization: str - :param phone: Phone number. + :param phone: Required. Phone number. :type phone: str """ @@ -57,14 +59,14 @@ class Contact(Model): 'phone': {'key': 'phone', 'type': 'str'}, } - def __init__(self, email, name_first, name_last, phone, address_mailing=None, fax=None, job_title=None, name_middle=None, organization=None): - super(Contact, self).__init__() - self.address_mailing = address_mailing - self.email = email - self.fax = fax - self.job_title = job_title - self.name_first = name_first - self.name_last = name_last - self.name_middle = name_middle - self.organization = organization - self.phone = phone + def __init__(self, **kwargs): + super(Contact, self).__init__(**kwargs) + self.address_mailing = kwargs.get('address_mailing', None) + self.email = kwargs.get('email', None) + self.fax = kwargs.get('fax', None) + self.job_title = kwargs.get('job_title', None) + self.name_first = kwargs.get('name_first', None) + self.name_last = kwargs.get('name_last', None) + self.name_middle = kwargs.get('name_middle', None) + self.organization = kwargs.get('organization', None) + self.phone = kwargs.get('phone', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/contact_py3.py b/azure-mgmt-web/azure/mgmt/web/models/contact_py3.py new file mode 100644 index 000000000000..5567ac2cd1b4 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/contact_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Contact(Model): + """Contact information for domain registration. If 'Domain Privacy' option is + not selected then the contact information is made publicly available + through the Whois + directories as per ICANN requirements. + + All required parameters must be populated in order to send to Azure. + + :param address_mailing: Mailing address. + :type address_mailing: ~azure.mgmt.web.models.Address + :param email: Required. Email address. + :type email: str + :param fax: Fax number. + :type fax: str + :param job_title: Job title. + :type job_title: str + :param name_first: Required. First name. + :type name_first: str + :param name_last: Required. Last name. + :type name_last: str + :param name_middle: Middle name. + :type name_middle: str + :param organization: Organization contact belongs to. + :type organization: str + :param phone: Required. Phone number. + :type phone: str + """ + + _validation = { + 'email': {'required': True}, + 'name_first': {'required': True}, + 'name_last': {'required': True}, + 'phone': {'required': True}, + } + + _attribute_map = { + 'address_mailing': {'key': 'addressMailing', 'type': 'Address'}, + 'email': {'key': 'email', 'type': 'str'}, + 'fax': {'key': 'fax', 'type': 'str'}, + 'job_title': {'key': 'jobTitle', 'type': 'str'}, + 'name_first': {'key': 'nameFirst', 'type': 'str'}, + 'name_last': {'key': 'nameLast', 'type': 'str'}, + 'name_middle': {'key': 'nameMiddle', 'type': 'str'}, + 'organization': {'key': 'organization', 'type': 'str'}, + 'phone': {'key': 'phone', 'type': 'str'}, + } + + def __init__(self, *, email: str, name_first: str, name_last: str, phone: str, address_mailing=None, fax: str=None, job_title: str=None, name_middle: str=None, organization: str=None, **kwargs) -> None: + super(Contact, self).__init__(**kwargs) + self.address_mailing = address_mailing + self.email = email + self.fax = fax + self.job_title = job_title + self.name_first = name_first + self.name_last = name_last + self.name_middle = name_middle + self.organization = organization + self.phone = phone diff --git a/azure-mgmt-web/azure/mgmt/web/models/continuous_web_job.py b/azure-mgmt-web/azure/mgmt/web/models/continuous_web_job.py index d8df3ee5ea9a..fa05a6d53c26 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/continuous_web_job.py +++ b/azure-mgmt-web/azure/mgmt/web/models/continuous_web_job.py @@ -33,18 +33,15 @@ class ContinuousWebJob(ProxyOnlyResource): :type detailed_status: str :param log_url: Log URL. :type log_url: str - :ivar continuous_web_job_name: Job name. Used as job identifier in ARM - resource URI. - :vartype continuous_web_job_name: str :param run_command: Run command. :type run_command: str :param url: Job URL. :type url: str :param extra_info_url: Extra Info URL. :type extra_info_url: str - :param job_type: Job type. Possible values include: 'Continuous', + :param web_job_type: Job type. Possible values include: 'Continuous', 'Triggered' - :type job_type: str or ~azure.mgmt.web.models.WebJobType + :type web_job_type: str or ~azure.mgmt.web.models.WebJobType :param error: Error information. :type error: str :param using_sdk: Using SDK? @@ -57,7 +54,6 @@ class ContinuousWebJob(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'continuous_web_job_name': {'readonly': True}, } _attribute_map = { @@ -66,28 +62,26 @@ class ContinuousWebJob(ProxyOnlyResource): 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'status': {'key': 'properties.status', 'type': 'ContinuousWebJobStatus'}, - 'detailed_status': {'key': 'properties.detailedStatus', 'type': 'str'}, - 'log_url': {'key': 'properties.logUrl', 'type': 'str'}, - 'continuous_web_job_name': {'key': 'properties.name', 'type': 'str'}, - 'run_command': {'key': 'properties.runCommand', 'type': 'str'}, + 'detailed_status': {'key': 'properties.detailed_status', 'type': 'str'}, + 'log_url': {'key': 'properties.log_url', 'type': 'str'}, + 'run_command': {'key': 'properties.run_command', 'type': 'str'}, 'url': {'key': 'properties.url', 'type': 'str'}, - 'extra_info_url': {'key': 'properties.extraInfoUrl', 'type': 'str'}, - 'job_type': {'key': 'properties.jobType', 'type': 'WebJobType'}, + 'extra_info_url': {'key': 'properties.extra_info_url', 'type': 'str'}, + 'web_job_type': {'key': 'properties.web_job_type', 'type': 'WebJobType'}, 'error': {'key': 'properties.error', 'type': 'str'}, - 'using_sdk': {'key': 'properties.usingSdk', 'type': 'bool'}, + 'using_sdk': {'key': 'properties.using_sdk', 'type': 'bool'}, 'settings': {'key': 'properties.settings', 'type': '{object}'}, } - def __init__(self, kind=None, status=None, detailed_status=None, log_url=None, run_command=None, url=None, extra_info_url=None, job_type=None, error=None, using_sdk=None, settings=None): - super(ContinuousWebJob, self).__init__(kind=kind) - self.status = status - self.detailed_status = detailed_status - self.log_url = log_url - self.continuous_web_job_name = None - self.run_command = run_command - self.url = url - self.extra_info_url = extra_info_url - self.job_type = job_type - self.error = error - self.using_sdk = using_sdk - self.settings = settings + def __init__(self, **kwargs): + super(ContinuousWebJob, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.detailed_status = kwargs.get('detailed_status', None) + self.log_url = kwargs.get('log_url', None) + self.run_command = kwargs.get('run_command', None) + self.url = kwargs.get('url', None) + self.extra_info_url = kwargs.get('extra_info_url', None) + self.web_job_type = kwargs.get('web_job_type', None) + self.error = kwargs.get('error', None) + self.using_sdk = kwargs.get('using_sdk', None) + self.settings = kwargs.get('settings', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/continuous_web_job_py3.py b/azure-mgmt-web/azure/mgmt/web/models/continuous_web_job_py3.py new file mode 100644 index 000000000000..4dcc908c916a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/continuous_web_job_py3.py @@ -0,0 +1,87 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class ContinuousWebJob(ProxyOnlyResource): + """Continuous Web Job Information. + + 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 status: Job status. Possible values include: 'Initializing', + 'Starting', 'Running', 'PendingRestart', 'Stopped' + :type status: str or ~azure.mgmt.web.models.ContinuousWebJobStatus + :param detailed_status: Detailed status. + :type detailed_status: str + :param log_url: Log URL. + :type log_url: str + :param run_command: Run command. + :type run_command: str + :param url: Job URL. + :type url: str + :param extra_info_url: Extra Info URL. + :type extra_info_url: str + :param web_job_type: Job type. Possible values include: 'Continuous', + 'Triggered' + :type web_job_type: str or ~azure.mgmt.web.models.WebJobType + :param error: Error information. + :type error: str + :param using_sdk: Using SDK? + :type using_sdk: bool + :param settings: Job settings. + :type settings: dict[str, object] + """ + + _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'}, + 'status': {'key': 'properties.status', 'type': 'ContinuousWebJobStatus'}, + 'detailed_status': {'key': 'properties.detailed_status', 'type': 'str'}, + 'log_url': {'key': 'properties.log_url', 'type': 'str'}, + 'run_command': {'key': 'properties.run_command', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'extra_info_url': {'key': 'properties.extra_info_url', 'type': 'str'}, + 'web_job_type': {'key': 'properties.web_job_type', 'type': 'WebJobType'}, + 'error': {'key': 'properties.error', 'type': 'str'}, + 'using_sdk': {'key': 'properties.using_sdk', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': '{object}'}, + } + + def __init__(self, *, kind: str=None, status=None, detailed_status: str=None, log_url: str=None, run_command: str=None, url: str=None, extra_info_url: str=None, web_job_type=None, error: str=None, using_sdk: bool=None, settings=None, **kwargs) -> None: + super(ContinuousWebJob, self).__init__(kind=kind, **kwargs) + self.status = status + self.detailed_status = detailed_status + self.log_url = log_url + self.run_command = run_command + self.url = url + self.extra_info_url = extra_info_url + self.web_job_type = web_job_type + self.error = error + self.using_sdk = using_sdk + self.settings = settings diff --git a/azure-mgmt-web/azure/mgmt/web/models/cors_settings.py b/azure-mgmt-web/azure/mgmt/web/models/cors_settings.py index 8b4de3fca608..5096932c5327 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/cors_settings.py +++ b/azure-mgmt-web/azure/mgmt/web/models/cors_settings.py @@ -25,6 +25,6 @@ class CorsSettings(Model): 'allowed_origins': {'key': 'allowedOrigins', 'type': '[str]'}, } - def __init__(self, allowed_origins=None): - super(CorsSettings, self).__init__() - self.allowed_origins = allowed_origins + def __init__(self, **kwargs): + super(CorsSettings, self).__init__(**kwargs) + self.allowed_origins = kwargs.get('allowed_origins', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/cors_settings_py3.py b/azure-mgmt-web/azure/mgmt/web/models/cors_settings_py3.py new file mode 100644 index 000000000000..17c530afdd67 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/cors_settings_py3.py @@ -0,0 +1,30 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CorsSettings(Model): + """Cross-Origin Resource Sharing (CORS) settings for the app. + + :param allowed_origins: Gets or sets the list of origins that should be + allowed to make cross-origin + calls (for example: http://example.com:12345). Use "*" to allow all. + :type allowed_origins: list[str] + """ + + _attribute_map = { + 'allowed_origins': {'key': 'allowedOrigins', 'type': '[str]'}, + } + + def __init__(self, *, allowed_origins=None, **kwargs) -> None: + super(CorsSettings, self).__init__(**kwargs) + self.allowed_origins = allowed_origins diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_move_resource_envelope.py b/azure-mgmt-web/azure/mgmt/web/models/csm_move_resource_envelope.py index 8c3093e3fba0..7b8a19d7ca27 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/csm_move_resource_envelope.py +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_move_resource_envelope.py @@ -31,7 +31,7 @@ class CsmMoveResourceEnvelope(Model): 'resources': {'key': 'resources', 'type': '[str]'}, } - def __init__(self, target_resource_group=None, resources=None): - super(CsmMoveResourceEnvelope, self).__init__() - self.target_resource_group = target_resource_group - self.resources = resources + def __init__(self, **kwargs): + super(CsmMoveResourceEnvelope, self).__init__(**kwargs) + self.target_resource_group = kwargs.get('target_resource_group', None) + self.resources = kwargs.get('resources', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_move_resource_envelope_py3.py b/azure-mgmt-web/azure/mgmt/web/models/csm_move_resource_envelope_py3.py new file mode 100644 index 000000000000..45dd9ab318d6 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_move_resource_envelope_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description.py b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description.py index 89ee09ec7fae..d1d7494ac89f 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description.py +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description.py @@ -32,9 +32,9 @@ class CsmOperationDescription(Model): 'properties': {'key': 'properties', 'type': 'CsmOperationDescriptionProperties'}, } - def __init__(self, name=None, display=None, origin=None, properties=None): - super(CsmOperationDescription, self).__init__() - self.name = name - self.display = display - self.origin = origin - self.properties = properties + def __init__(self, **kwargs): + super(CsmOperationDescription, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_properties.py b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_properties.py index 9cce3fb92aeb..6362aada58a3 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_properties.py +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_properties.py @@ -23,6 +23,6 @@ class CsmOperationDescriptionProperties(Model): 'service_specification': {'key': 'serviceSpecification', 'type': 'ServiceSpecification'}, } - def __init__(self, service_specification=None): - super(CsmOperationDescriptionProperties, self).__init__() - self.service_specification = service_specification + def __init__(self, **kwargs): + super(CsmOperationDescriptionProperties, self).__init__(**kwargs) + self.service_specification = kwargs.get('service_specification', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_properties_py3.py b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_properties_py3.py new file mode 100644 index 000000000000..0dff6ebe4d7b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_properties_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CsmOperationDescriptionProperties(Model): + """Properties available for a Microsoft.Web resource provider operation. + + :param service_specification: + :type service_specification: ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_py3.py b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_py3.py new file mode 100644 index 000000000000..ee5aaaae36bb --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_description_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CsmOperationDescription(Model): + """Description of an operation available for Microsoft.Web resource provider. + + :param name: + :type name: str + :param display: + :type display: ~azure.mgmt.web.models.CsmOperationDisplay + :param origin: + :type origin: str + :param properties: + :type properties: ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_display.py b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_display.py index f0906307021f..82f7c5b55b83 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_display.py +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_display.py @@ -32,9 +32,9 @@ class CsmOperationDisplay(Model): 'description': {'key': 'description', 'type': 'str'}, } - def __init__(self, provider=None, resource=None, operation=None, description=None): - super(CsmOperationDisplay, self).__init__() - self.provider = provider - self.resource = resource - self.operation = operation - self.description = description + def __init__(self, **kwargs): + super(CsmOperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_operation_display_py3.py b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_display_py3.py new file mode 100644 index 000000000000..f5645fe2e6cf --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_operation_display_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_publishing_profile_options.py b/azure-mgmt-web/azure/mgmt/web/models/csm_publishing_profile_options.py index 67897e676cf3..58bd445d5db2 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/csm_publishing_profile_options.py +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_publishing_profile_options.py @@ -20,12 +20,17 @@ class CsmPublishingProfileOptions(Model): WebDeploy -- default Ftp. Possible values include: 'FileZilla3', 'WebDeploy', 'Ftp' :type format: str or ~azure.mgmt.web.models.PublishingProfileFormat + :param include_disaster_recovery_endpoints: Include the DisasterRecover + endpoint if true + :type include_disaster_recovery_endpoints: bool """ _attribute_map = { 'format': {'key': 'format', 'type': 'str'}, + 'include_disaster_recovery_endpoints': {'key': 'includeDisasterRecoveryEndpoints', 'type': 'bool'}, } - def __init__(self, format=None): - super(CsmPublishingProfileOptions, self).__init__() - self.format = format + def __init__(self, **kwargs): + super(CsmPublishingProfileOptions, self).__init__(**kwargs) + self.format = kwargs.get('format', None) + self.include_disaster_recovery_endpoints = kwargs.get('include_disaster_recovery_endpoints', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_publishing_profile_options_py3.py b/azure-mgmt-web/azure/mgmt/web/models/csm_publishing_profile_options_py3.py new file mode 100644 index 000000000000..d6f1f6a64ae1 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_publishing_profile_options_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CsmPublishingProfileOptions(Model): + """Publishing options for requested profile. + + :param format: Name of the format. Valid values are: + FileZilla3 + WebDeploy -- default + Ftp. Possible values include: 'FileZilla3', 'WebDeploy', 'Ftp' + :type format: str or ~azure.mgmt.web.models.PublishingProfileFormat + :param include_disaster_recovery_endpoints: Include the DisasterRecover + endpoint if true + :type include_disaster_recovery_endpoints: bool + """ + + _attribute_map = { + 'format': {'key': 'format', 'type': 'str'}, + 'include_disaster_recovery_endpoints': {'key': 'includeDisasterRecoveryEndpoints', 'type': 'bool'}, + } + + def __init__(self, *, format=None, include_disaster_recovery_endpoints: bool=None, **kwargs) -> None: + super(CsmPublishingProfileOptions, self).__init__(**kwargs) + self.format = format + self.include_disaster_recovery_endpoints = include_disaster_recovery_endpoints diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_slot_entity.py b/azure-mgmt-web/azure/mgmt/web/models/csm_slot_entity.py index 06446508086b..4f2b0eb519f7 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/csm_slot_entity.py +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_slot_entity.py @@ -15,10 +15,13 @@ class CsmSlotEntity(Model): """Deployment slot parameters. - :param target_slot: Destination deployment slot during swap operation. + All required parameters must be populated in order to send to Azure. + + :param target_slot: Required. Destination deployment slot during swap + operation. :type target_slot: str - :param preserve_vnet: true to preserve Virtual Network to the - slot during swap; otherwise, false. + :param preserve_vnet: Required. true to preserve Virtual + Network to the slot during swap; otherwise, false. :type preserve_vnet: bool """ @@ -32,7 +35,7 @@ class CsmSlotEntity(Model): 'preserve_vnet': {'key': 'preserveVnet', 'type': 'bool'}, } - def __init__(self, target_slot, preserve_vnet): - super(CsmSlotEntity, self).__init__() - self.target_slot = target_slot - self.preserve_vnet = preserve_vnet + def __init__(self, **kwargs): + super(CsmSlotEntity, self).__init__(**kwargs) + self.target_slot = kwargs.get('target_slot', None) + self.preserve_vnet = kwargs.get('preserve_vnet', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_slot_entity_py3.py b/azure-mgmt-web/azure/mgmt/web/models/csm_slot_entity_py3.py new file mode 100644 index 000000000000..e367bd554d0b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_slot_entity_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CsmSlotEntity(Model): + """Deployment slot parameters. + + All required parameters must be populated in order to send to Azure. + + :param target_slot: Required. Destination deployment slot during swap + operation. + :type target_slot: str + :param preserve_vnet: Required. true to preserve Virtual + Network to the slot during swap; otherwise, false. + :type preserve_vnet: bool + """ + + _validation = { + 'target_slot': {'required': True}, + 'preserve_vnet': {'required': True}, + } + + _attribute_map = { + 'target_slot': {'key': 'targetSlot', 'type': 'str'}, + 'preserve_vnet': {'key': 'preserveVnet', 'type': 'bool'}, + } + + def __init__(self, *, target_slot: str, preserve_vnet: bool, **kwargs) -> None: + super(CsmSlotEntity, self).__init__(**kwargs) + self.target_slot = target_slot + self.preserve_vnet = preserve_vnet diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_usage_quota.py b/azure-mgmt-web/azure/mgmt/web/models/csm_usage_quota.py index ce6e4773da6c..6ec31a0dbbab 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/csm_usage_quota.py +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_usage_quota.py @@ -35,10 +35,10 @@ class CsmUsageQuota(Model): 'name': {'key': 'name', 'type': 'LocalizableString'}, } - def __init__(self, unit=None, next_reset_time=None, current_value=None, limit=None, name=None): - super(CsmUsageQuota, self).__init__() - self.unit = unit - self.next_reset_time = next_reset_time - self.current_value = current_value - self.limit = limit - self.name = name + def __init__(self, **kwargs): + super(CsmUsageQuota, self).__init__(**kwargs) + self.unit = kwargs.get('unit', None) + self.next_reset_time = kwargs.get('next_reset_time', None) + self.current_value = kwargs.get('current_value', None) + self.limit = kwargs.get('limit', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/csm_usage_quota_py3.py b/azure-mgmt-web/azure/mgmt/web/models/csm_usage_quota_py3.py new file mode 100644 index 000000000000..ec46c5675a51 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/csm_usage_quota_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class CsmUsageQuota(Model): + """Usage of the quota resource. + + :param unit: Units of measurement for the quota resourse. + :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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/custom_hostname_analysis_result.py b/azure-mgmt-web/azure/mgmt/web/models/custom_hostname_analysis_result.py index 6b29a631fb1e..caad9e011ea0 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/custom_hostname_analysis_result.py +++ b/azure-mgmt-web/azure/mgmt/web/models/custom_hostname_analysis_result.py @@ -90,16 +90,16 @@ class CustomHostnameAnalysisResult(ProxyOnlyResource): 'alternate_txt_records': {'key': 'properties.alternateTxtRecords', 'type': '[str]'}, } - def __init__(self, kind=None, c_name_records=None, txt_records=None, a_records=None, alternate_cname_records=None, alternate_txt_records=None): - super(CustomHostnameAnalysisResult, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(CustomHostnameAnalysisResult, self).__init__(**kwargs) self.is_hostname_already_verified = None self.custom_domain_verification_test = None self.custom_domain_verification_failure_info = None self.has_conflict_on_scale_unit = None self.has_conflict_across_subscription = None self.conflicting_app_resource_id = None - self.c_name_records = c_name_records - self.txt_records = txt_records - self.a_records = a_records - self.alternate_cname_records = alternate_cname_records - self.alternate_txt_records = alternate_txt_records + self.c_name_records = kwargs.get('c_name_records', None) + self.txt_records = kwargs.get('txt_records', None) + self.a_records = kwargs.get('a_records', None) + self.alternate_cname_records = kwargs.get('alternate_cname_records', None) + self.alternate_txt_records = kwargs.get('alternate_txt_records', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/custom_hostname_analysis_result_py3.py b/azure-mgmt-web/azure/mgmt/web/models/custom_hostname_analysis_result_py3.py new file mode 100644 index 000000000000..0646bccb298a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/custom_hostname_analysis_result_py3.py @@ -0,0 +1,105 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class CustomHostnameAnalysisResult(ProxyOnlyResource): + """Custom domain 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 is_hostname_already_verified: true if hostname is + already verified; otherwise, false. + :vartype is_hostname_already_verified: bool + :ivar custom_domain_verification_test: DNS verification test result. + Possible values include: 'Passed', 'Failed', 'Skipped' + :vartype custom_domain_verification_test: str or + ~azure.mgmt.web.models.DnsVerificationTestResult + :ivar custom_domain_verification_failure_info: Raw failure information if + DNS verification fails. + :vartype custom_domain_verification_failure_info: + ~azure.mgmt.web.models.ErrorEntity + :ivar has_conflict_on_scale_unit: true if there is a conflict + on a scale unit; otherwise, false. + :vartype has_conflict_on_scale_unit: bool + :ivar has_conflict_across_subscription: true if htere is a + conflict across subscriptions; otherwise, false. + :vartype has_conflict_across_subscription: bool + :ivar conflicting_app_resource_id: Name of the conflicting app on scale + unit if it's within the same subscription. + :vartype conflicting_app_resource_id: str + :param c_name_records: CName records controller can see for this hostname. + :type c_name_records: list[str] + :param txt_records: TXT records controller can see for this hostname. + :type txt_records: list[str] + :param a_records: A records controller can see for this hostname. + :type a_records: list[str] + :param alternate_cname_records: Alternate CName records controller can see + for this hostname. + :type alternate_cname_records: list[str] + :param alternate_txt_records: Alternate TXT records controller can see for + this hostname. + :type alternate_txt_records: list[str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'is_hostname_already_verified': {'readonly': True}, + 'custom_domain_verification_test': {'readonly': True}, + 'custom_domain_verification_failure_info': {'readonly': True}, + 'has_conflict_on_scale_unit': {'readonly': True}, + 'has_conflict_across_subscription': {'readonly': True}, + 'conflicting_app_resource_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'is_hostname_already_verified': {'key': 'properties.isHostnameAlreadyVerified', 'type': 'bool'}, + 'custom_domain_verification_test': {'key': 'properties.customDomainVerificationTest', 'type': 'DnsVerificationTestResult'}, + 'custom_domain_verification_failure_info': {'key': 'properties.customDomainVerificationFailureInfo', 'type': 'ErrorEntity'}, + 'has_conflict_on_scale_unit': {'key': 'properties.hasConflictOnScaleUnit', 'type': 'bool'}, + 'has_conflict_across_subscription': {'key': 'properties.hasConflictAcrossSubscription', 'type': 'bool'}, + 'conflicting_app_resource_id': {'key': 'properties.conflictingAppResourceId', 'type': 'str'}, + 'c_name_records': {'key': 'properties.cNameRecords', 'type': '[str]'}, + 'txt_records': {'key': 'properties.txtRecords', 'type': '[str]'}, + 'a_records': {'key': 'properties.aRecords', 'type': '[str]'}, + 'alternate_cname_records': {'key': 'properties.alternateCNameRecords', 'type': '[str]'}, + 'alternate_txt_records': {'key': 'properties.alternateTxtRecords', 'type': '[str]'}, + } + + def __init__(self, *, kind: str=None, c_name_records=None, txt_records=None, a_records=None, alternate_cname_records=None, alternate_txt_records=None, **kwargs) -> None: + super(CustomHostnameAnalysisResult, self).__init__(kind=kind, **kwargs) + self.is_hostname_already_verified = None + self.custom_domain_verification_test = None + self.custom_domain_verification_failure_info = None + self.has_conflict_on_scale_unit = None + self.has_conflict_across_subscription = None + self.conflicting_app_resource_id = None + self.c_name_records = c_name_records + self.txt_records = txt_records + self.a_records = a_records + self.alternate_cname_records = alternate_cname_records + self.alternate_txt_records = alternate_txt_records diff --git a/azure-mgmt-web/azure/mgmt/web/models/data_source.py b/azure-mgmt-web/azure/mgmt/web/models/data_source.py index 03793780359a..7a2c50d6e370 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/data_source.py +++ b/azure-mgmt-web/azure/mgmt/web/models/data_source.py @@ -26,7 +26,7 @@ class DataSource(Model): 'data_source_uri': {'key': 'dataSourceUri', 'type': '[NameValuePair]'}, } - def __init__(self, instructions=None, data_source_uri=None): - super(DataSource, self).__init__() - self.instructions = instructions - self.data_source_uri = data_source_uri + def __init__(self, **kwargs): + super(DataSource, self).__init__(**kwargs) + self.instructions = kwargs.get('instructions', None) + self.data_source_uri = kwargs.get('data_source_uri', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/data_source_py3.py b/azure-mgmt-web/azure/mgmt/web/models/data_source_py3.py new file mode 100644 index 000000000000..b6db5b64ff21 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/data_source_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DataSource(Model): + """Class representing data source used by the detectors. + + :param instructions: Instrunctions 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/data_table_response_column.py b/azure-mgmt-web/azure/mgmt/web/models/data_table_response_column.py new file mode 100644 index 000000000000..8a6230c72956 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/data_table_response_column.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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, **kwargs): + super(DataTableResponseColumn, self).__init__(**kwargs) + self.column_name = kwargs.get('column_name', None) + self.data_type = kwargs.get('data_type', None) + self.column_type = kwargs.get('column_type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/data_table_response_column_py3.py b/azure-mgmt-web/azure/mgmt/web/models/data_table_response_column_py3.py new file mode 100644 index 000000000000..a8a0fa2b1209 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/data_table_response_column_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/data_table_response_object.py b/azure-mgmt-web/azure/mgmt/web/models/data_table_response_object.py new file mode 100644 index 000000000000..28efd2e527f8 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/data_table_response_object.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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, **kwargs): + super(DataTableResponseObject, self).__init__(**kwargs) + self.table_name = kwargs.get('table_name', None) + self.columns = kwargs.get('columns', None) + self.rows = kwargs.get('rows', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/data_table_response_object_py3.py b/azure-mgmt-web/azure/mgmt/web/models/data_table_response_object_py3.py new file mode 100644 index 000000000000..c5a45a8f311a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/data_table_response_object_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/database_backup_setting.py b/azure-mgmt-web/azure/mgmt/web/models/database_backup_setting.py index bd54f5fde4a4..a9ea496e18bc 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/database_backup_setting.py +++ b/azure-mgmt-web/azure/mgmt/web/models/database_backup_setting.py @@ -15,8 +15,10 @@ class DatabaseBackupSetting(Model): """Database backup settings. - :param database_type: Database type (e.g. SqlAzure / MySql). Possible - values include: 'SqlAzure', 'MySql', 'LocalMySql', 'PostgreSql' + All required parameters must be populated in order to send to Azure. + + :param database_type: Required. Database type (e.g. SqlAzure / MySql). + Possible values include: 'SqlAzure', 'MySql', 'LocalMySql', 'PostgreSql' :type database_type: str or ~azure.mgmt.web.models.DatabaseType :param name: :type name: str @@ -41,9 +43,9 @@ class DatabaseBackupSetting(Model): 'connection_string': {'key': 'connectionString', 'type': 'str'}, } - def __init__(self, database_type, name=None, connection_string_name=None, connection_string=None): - super(DatabaseBackupSetting, self).__init__() - self.database_type = database_type - self.name = name - self.connection_string_name = connection_string_name - self.connection_string = connection_string + def __init__(self, **kwargs): + super(DatabaseBackupSetting, self).__init__(**kwargs) + self.database_type = kwargs.get('database_type', None) + self.name = kwargs.get('name', None) + self.connection_string_name = kwargs.get('connection_string_name', None) + self.connection_string = kwargs.get('connection_string', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/database_backup_setting_py3.py b/azure-mgmt-web/azure/mgmt/web/models/database_backup_setting_py3.py new file mode 100644 index 000000000000..caeb63246f45 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/database_backup_setting_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DatabaseBackupSetting(Model): + """Database backup settings. + + All required parameters must be populated in order to send to Azure. + + :param database_type: Required. Database type (e.g. SqlAzure / MySql). + Possible values include: 'SqlAzure', 'MySql', 'LocalMySql', 'PostgreSql' + :type database_type: str or ~azure.mgmt.web.models.DatabaseType + :param name: + :type name: str + :param connection_string_name: Contains a connection string name that is + linked to the SiteConfig.ConnectionStrings. + This is used during restore with overwrite connection strings options. + :type connection_string_name: str + :param connection_string: Contains a connection string to a database which + is being backed up or restored. If the restore should happen to a new + database, the database name inside is the new one. + :type connection_string: str + """ + + _validation = { + 'database_type': {'required': True}, + } + + _attribute_map = { + 'database_type': {'key': 'databaseType', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'connection_string_name': {'key': 'connectionStringName', 'type': 'str'}, + 'connection_string': {'key': 'connectionString', 'type': 'str'}, + } + + def __init__(self, *, database_type, name: str=None, connection_string_name: str=None, connection_string: str=None, **kwargs) -> None: + super(DatabaseBackupSetting, self).__init__(**kwargs) + self.database_type = database_type + self.name = name + self.connection_string_name = connection_string_name + self.connection_string = connection_string diff --git a/azure-mgmt-web/azure/mgmt/web/models/default_error_response.py b/azure-mgmt-web/azure/mgmt/web/models/default_error_response.py new file mode 100644 index 000000000000..438128e5fc67 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/default_error_response.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +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.models.DefaultErrorResponseError + """ + + _validation = { + 'error': {'readonly': True}, + } + + _attribute_map = { + 'error': {'key': 'error', 'type': 'DefaultErrorResponseError'}, + } + + def __init__(self, **kwargs): + super(DefaultErrorResponse, self).__init__(**kwargs) + self.error = None + + +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) diff --git a/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error.py b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error.py new file mode 100644 index 000000000000..df5d32e35563 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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, **kwargs): + super(DefaultErrorResponseError, self).__init__(**kwargs) + self.code = None + self.message = None + self.target = None + self.details = kwargs.get('details', None) + self.innererror = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_details_item.py b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_details_item.py new file mode 100644 index 000000000000..7fb1c5ded635 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_details_item.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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): + super(DefaultErrorResponseErrorDetailsItem, self).__init__(**kwargs) + self.code = None + self.message = None + self.target = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_details_item_py3.py b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_details_item_py3.py new file mode 100644 index 000000000000..9a4deb14b49e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_details_item_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_py3.py b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_py3.py new file mode 100644 index 000000000000..b8666a06f08a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_error_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/default_error_response_py3.py b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_py3.py new file mode 100644 index 000000000000..f121af5f03b0 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/default_error_response_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +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.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 + + +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) diff --git a/azure-mgmt-web/azure/mgmt/web/models/deleted_app_restore_request.py b/azure-mgmt-web/azure/mgmt/web/models/deleted_app_restore_request.py new file mode 100644 index 000000000000..0fe0f903f66d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/deleted_app_restore_request.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +class DeletedAppRestoreRequest(ProxyOnlyResource): + """Details about restoring a deleted app. + + 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 deleted_site_id: ARM resource ID of the deleted app. Example: + /subscriptions/{subId}/providers/Microsoft.Web/deletedSites/{deletedSiteId} + :type deleted_site_id: str + :param recover_configuration: If true, deleted site configuration, in + addition to content, will be restored. + :type recover_configuration: bool + :param snapshot_time: Point in time to restore the deleted app from, + formatted as a DateTime string. + If unspecified, default value is the time that the app was deleted. + :type snapshot_time: 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'}, + 'deleted_site_id': {'key': 'properties.deletedSiteId', 'type': 'str'}, + 'recover_configuration': {'key': 'properties.recoverConfiguration', 'type': 'bool'}, + 'snapshot_time': {'key': 'properties.snapshotTime', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DeletedAppRestoreRequest, self).__init__(**kwargs) + self.deleted_site_id = kwargs.get('deleted_site_id', None) + self.recover_configuration = kwargs.get('recover_configuration', None) + self.snapshot_time = kwargs.get('snapshot_time', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/deleted_app_restore_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/deleted_app_restore_request_py3.py new file mode 100644 index 000000000000..69ca457e864b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/deleted_app_restore_request_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class DeletedAppRestoreRequest(ProxyOnlyResource): + """Details about restoring a deleted app. + + 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 deleted_site_id: ARM resource ID of the deleted app. Example: + /subscriptions/{subId}/providers/Microsoft.Web/deletedSites/{deletedSiteId} + :type deleted_site_id: str + :param recover_configuration: If true, deleted site configuration, in + addition to content, will be restored. + :type recover_configuration: bool + :param snapshot_time: Point in time to restore the deleted app from, + formatted as a DateTime string. + If unspecified, default value is the time that the app was deleted. + :type snapshot_time: 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'}, + 'deleted_site_id': {'key': 'properties.deletedSiteId', 'type': 'str'}, + 'recover_configuration': {'key': 'properties.recoverConfiguration', 'type': 'bool'}, + 'snapshot_time': {'key': 'properties.snapshotTime', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, deleted_site_id: str=None, recover_configuration: bool=None, snapshot_time: str=None, **kwargs) -> None: + super(DeletedAppRestoreRequest, self).__init__(kind=kind, **kwargs) + self.deleted_site_id = deleted_site_id + self.recover_configuration = recover_configuration + self.snapshot_time = snapshot_time diff --git a/azure-mgmt-web/azure/mgmt/web/models/deleted_site.py b/azure-mgmt-web/azure/mgmt/web/models/deleted_site.py index 19a9102156d8..cab4d170ab91 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/deleted_site.py +++ b/azure-mgmt-web/azure/mgmt/web/models/deleted_site.py @@ -9,51 +9,72 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.serialization import Model +from .proxy_only_resource import ProxyOnlyResource -class DeletedSite(Model): +class DeletedSite(ProxyOnlyResource): """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 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 deleted_site_id: Numeric id for the deleted site + :vartype deleted_site_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 deleted_site_name: Name of the deleted site + :vartype deleted_site_name: str :ivar slot: Slot of the deleted site :vartype slot: str + :ivar deleted_site_kind: Kind of site that was deleted + :vartype deleted_site_kind: str """ _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'deleted_site_id': {'readonly': True}, 'deleted_timestamp': {'readonly': True}, 'subscription': {'readonly': True}, 'resource_group': {'readonly': True}, - 'name': {'readonly': True}, + 'deleted_site_name': {'readonly': True}, 'slot': {'readonly': True}, + 'deleted_site_kind': {'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'}, + 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, - 'slot': {'key': 'slot', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'deleted_site_id': {'key': 'properties.deletedSiteId', 'type': 'int'}, + 'deleted_timestamp': {'key': 'properties.deletedTimestamp', 'type': 'str'}, + 'subscription': {'key': 'properties.subscription', 'type': 'str'}, + 'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'}, + 'deleted_site_name': {'key': 'properties.deletedSiteName', 'type': 'str'}, + 'slot': {'key': 'properties.slot', 'type': 'str'}, + 'deleted_site_kind': {'key': 'properties.kind', 'type': 'str'}, } - def __init__(self, id=None): - super(DeletedSite, self).__init__() - self.id = id + def __init__(self, **kwargs): + super(DeletedSite, self).__init__(**kwargs) + self.deleted_site_id = None self.deleted_timestamp = None self.subscription = None self.resource_group = None - self.name = None + self.deleted_site_name = None self.slot = None + self.deleted_site_kind = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/deleted_site_py3.py b/azure-mgmt-web/azure/mgmt/web/models/deleted_site_py3.py new file mode 100644 index 000000000000..85152fdd18f8 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/deleted_site_py3.py @@ -0,0 +1,80 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class DeletedSite(ProxyOnlyResource): + """A deleted app. + + 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 deleted_site_id: Numeric id for the deleted site + :vartype deleted_site_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 deleted_site_name: Name of the deleted site + :vartype deleted_site_name: str + :ivar slot: Slot of the deleted site + :vartype slot: str + :ivar deleted_site_kind: Kind of site that was deleted + :vartype deleted_site_kind: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'deleted_site_id': {'readonly': True}, + 'deleted_timestamp': {'readonly': True}, + 'subscription': {'readonly': True}, + 'resource_group': {'readonly': True}, + 'deleted_site_name': {'readonly': True}, + 'slot': {'readonly': True}, + 'deleted_site_kind': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'deleted_site_id': {'key': 'properties.deletedSiteId', 'type': 'int'}, + 'deleted_timestamp': {'key': 'properties.deletedTimestamp', 'type': 'str'}, + 'subscription': {'key': 'properties.subscription', 'type': 'str'}, + 'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'}, + 'deleted_site_name': {'key': 'properties.deletedSiteName', 'type': 'str'}, + 'slot': {'key': 'properties.slot', 'type': 'str'}, + 'deleted_site_kind': {'key': 'properties.kind', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(DeletedSite, self).__init__(kind=kind, **kwargs) + self.deleted_site_id = None + self.deleted_timestamp = None + self.subscription = None + self.resource_group = None + self.deleted_site_name = None + self.slot = None + self.deleted_site_kind = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/deployment.py b/azure-mgmt-web/azure/mgmt/web/models/deployment.py index 27ce8941211f..75a3a6e26b9e 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/deployment.py +++ b/azure-mgmt-web/azure/mgmt/web/models/deployment.py @@ -26,8 +26,6 @@ class Deployment(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param deployment_id: Identifier for deployment. - :type deployment_id: str :param status: Deployment status. :type status: int :param message: Details about deployment status. @@ -60,27 +58,25 @@ class Deployment(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'deployment_id': {'key': 'properties.id', 'type': 'str'}, 'status': {'key': 'properties.status', 'type': 'int'}, 'message': {'key': 'properties.message', 'type': 'str'}, 'author': {'key': 'properties.author', 'type': 'str'}, 'deployer': {'key': 'properties.deployer', 'type': 'str'}, - 'author_email': {'key': 'properties.authorEmail', 'type': 'str'}, - 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, - 'end_time': {'key': 'properties.endTime', 'type': 'iso-8601'}, + 'author_email': {'key': 'properties.author_email', 'type': 'str'}, + 'start_time': {'key': 'properties.start_time', 'type': 'iso-8601'}, + 'end_time': {'key': 'properties.end_time', 'type': 'iso-8601'}, 'active': {'key': 'properties.active', 'type': 'bool'}, 'details': {'key': 'properties.details', 'type': 'str'}, } - def __init__(self, kind=None, deployment_id=None, status=None, message=None, author=None, deployer=None, author_email=None, start_time=None, end_time=None, active=None, details=None): - super(Deployment, self).__init__(kind=kind) - self.deployment_id = deployment_id - self.status = status - self.message = message - self.author = author - self.deployer = deployer - self.author_email = author_email - self.start_time = start_time - self.end_time = end_time - self.active = active - self.details = details + def __init__(self, **kwargs): + super(Deployment, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.message = kwargs.get('message', None) + self.author = kwargs.get('author', None) + self.deployer = kwargs.get('deployer', None) + self.author_email = kwargs.get('author_email', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.active = kwargs.get('active', None) + self.details = kwargs.get('details', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/deployment_locations.py b/azure-mgmt-web/azure/mgmt/web/models/deployment_locations.py index edda1454a99c..f7cf08b81fa3 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/deployment_locations.py +++ b/azure-mgmt-web/azure/mgmt/web/models/deployment_locations.py @@ -34,8 +34,8 @@ class DeploymentLocations(Model): 'hosting_environment_deployment_infos': {'key': 'hostingEnvironmentDeploymentInfos', 'type': '[HostingEnvironmentDeploymentInfo]'}, } - def __init__(self, locations=None, hosting_environments=None, hosting_environment_deployment_infos=None): - super(DeploymentLocations, self).__init__() - self.locations = locations - self.hosting_environments = hosting_environments - self.hosting_environment_deployment_infos = hosting_environment_deployment_infos + def __init__(self, **kwargs): + super(DeploymentLocations, self).__init__(**kwargs) + self.locations = kwargs.get('locations', None) + self.hosting_environments = kwargs.get('hosting_environments', None) + self.hosting_environment_deployment_infos = kwargs.get('hosting_environment_deployment_infos', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/deployment_locations_py3.py b/azure-mgmt-web/azure/mgmt/web/models/deployment_locations_py3.py new file mode 100644 index 000000000000..19167455ae81 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/deployment_locations_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.GeoRegion] + :param hosting_environments: Available App Service Environments with full + descriptions of the environments. + :type hosting_environments: + list[~azure.mgmt.web.models.AppServiceEnvironment] + :param hosting_environment_deployment_infos: Available App Service + Environments with basic information. + :type hosting_environment_deployment_infos: + list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/deployment_py3.py b/azure-mgmt-web/azure/mgmt/web/models/deployment_py3.py new file mode 100644 index 000000000000..abc4448dc021 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/deployment_py3.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class Deployment(ProxyOnlyResource): + """User crendentials used for publishing activity. + + 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 status: Deployment status. + :type status: int + :param message: Details about deployment status. + :type message: str + :param author: Who authored the deployment. + :type author: str + :param deployer: Who performed the deployment. + :type deployer: str + :param author_email: Author email. + :type author_email: str + :param start_time: Start time. + :type start_time: datetime + :param end_time: End time. + :type end_time: datetime + :param active: True if deployment is currently active, false if completed + and null if not started. + :type active: bool + :param details: Details on deployment. + :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'}, + 'status': {'key': 'properties.status', 'type': 'int'}, + 'message': {'key': 'properties.message', 'type': 'str'}, + 'author': {'key': 'properties.author', 'type': 'str'}, + 'deployer': {'key': 'properties.deployer', 'type': 'str'}, + 'author_email': {'key': 'properties.author_email', 'type': 'str'}, + 'start_time': {'key': 'properties.start_time', 'type': 'iso-8601'}, + 'end_time': {'key': 'properties.end_time', 'type': 'iso-8601'}, + 'active': {'key': 'properties.active', 'type': 'bool'}, + 'details': {'key': 'properties.details', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, status: int=None, message: str=None, author: str=None, deployer: str=None, author_email: str=None, start_time=None, end_time=None, active: bool=None, details: str=None, **kwargs) -> None: + super(Deployment, self).__init__(kind=kind, **kwargs) + self.status = status + self.message = message + self.author = author + self.deployer = deployer + self.author_email = author_email + self.start_time = start_time + self.end_time = end_time + self.active = active + self.details = details diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_abnormal_time_period.py b/azure-mgmt-web/azure/mgmt/web/models/detector_abnormal_time_period.py index d1bdbc1cb0c8..79d6784e465e 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/detector_abnormal_time_period.py +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_abnormal_time_period.py @@ -46,13 +46,13 @@ class DetectorAbnormalTimePeriod(Model): 'solutions': {'key': 'solutions', 'type': '[Solution]'}, } - def __init__(self, start_time=None, end_time=None, message=None, source=None, priority=None, meta_data=None, type=None, solutions=None): - super(DetectorAbnormalTimePeriod, self).__init__() - 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 + def __init__(self, **kwargs): + super(DetectorAbnormalTimePeriod, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.message = kwargs.get('message', None) + self.source = kwargs.get('source', None) + self.priority = kwargs.get('priority', None) + self.meta_data = kwargs.get('meta_data', None) + self.type = kwargs.get('type', None) + self.solutions = kwargs.get('solutions', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_abnormal_time_period_py3.py b/azure-mgmt-web/azure/mgmt/web/models/detector_abnormal_time_period_py3.py new file mode 100644 index 000000000000..63507c374c07 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_abnormal_time_period_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DetectorAbnormalTimePeriod(Model): + """Class representing Abnormal Time Period detected. + + :param start_time: Start time of the corelated event + :type start_time: datetime + :param end_time: End time of the corelated 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.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.models.IssueType + :param solutions: List of proposed solutions + :type solutions: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_definition.py b/azure-mgmt-web/azure/mgmt/web/models/detector_definition.py index 5cfa7e58126f..df4be4fcf342 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/detector_definition.py +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_definition.py @@ -57,8 +57,8 @@ class DetectorDefinition(ProxyOnlyResource): 'is_enabled': {'key': 'properties.isEnabled', 'type': 'bool'}, } - def __init__(self, kind=None): - super(DetectorDefinition, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(DetectorDefinition, self).__init__(**kwargs) self.display_name = None self.description = None self.rank = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_definition_py3.py b/azure-mgmt-web/azure/mgmt/web/models/detector_definition_py3.py new file mode 100644 index 000000000000..0f4e5a33e49c --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_definition_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_info.py b/azure-mgmt-web/azure/mgmt/web/models/detector_info.py new file mode 100644 index 000000000000..2cc5f88f8eb8 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_info.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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): + super(DetectorInfo, self).__init__(**kwargs) + self.description = None + self.category = None + self.sub_category = None + self.support_topic_id = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/detector_info_py3.py new file mode 100644 index 000000000000..0343c78a5c09 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_info_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_response.py b/azure-mgmt-web/azure/mgmt/web/models/detector_response.py new file mode 100644 index 000000000000..65a27080a7aa --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_response.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +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.models.DetectorInfo + :param dataset: Data Set + :type dataset: list[~azure.mgmt.web.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, **kwargs): + super(DetectorResponse, self).__init__(**kwargs) + self.metadata = kwargs.get('metadata', None) + self.dataset = kwargs.get('dataset', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_response_paged.py b/azure-mgmt-web/azure/mgmt/web/models/detector_response_paged.py new file mode 100644 index 000000000000..57ed8d9b2788 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_response_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class DetectorResponsePaged(Paged): + """ + A paging container for iterating over a list of :class:`DetectorResponse ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DetectorResponse]'} + } + + def __init__(self, *args, **kwargs): + + super(DetectorResponsePaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-web/azure/mgmt/web/models/detector_response_py3.py b/azure-mgmt-web/azure/mgmt/web/models/detector_response_py3.py new file mode 100644 index 000000000000..62ee24bac96e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/detector_response_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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.models.DetectorInfo + :param dataset: Data Set + :type dataset: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_analysis.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_analysis.py index a902a69adfac..4f81c2feea2d 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_analysis.py +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_analysis.py @@ -59,10 +59,10 @@ class DiagnosticAnalysis(ProxyOnlyResource): 'non_correlated_detectors': {'key': 'properties.nonCorrelatedDetectors', 'type': '[DetectorDefinition]'}, } - def __init__(self, kind=None, start_time=None, end_time=None, abnormal_time_periods=None, payload=None, non_correlated_detectors=None): - super(DiagnosticAnalysis, self).__init__(kind=kind) - 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 + def __init__(self, **kwargs): + super(DiagnosticAnalysis, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.abnormal_time_periods = kwargs.get('abnormal_time_periods', None) + self.payload = kwargs.get('payload', None) + self.non_correlated_detectors = kwargs.get('non_correlated_detectors', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_analysis_py3.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_analysis_py3.py new file mode 100644 index 000000000000..db37d477914b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_analysis_py3.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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.models.AbnormalTimePeriod] + :param payload: Data by each detector + :type payload: list[~azure.mgmt.web.models.AnalysisData] + :param non_correlated_detectors: Data by each detector for detectors that + did not corelate + :type non_correlated_detectors: + list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_category.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_category.py index 9bf7d74e5641..12254857ac08 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_category.py +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_category.py @@ -45,6 +45,6 @@ class DiagnosticCategory(ProxyOnlyResource): 'description': {'key': 'properties.description', 'type': 'str'}, } - def __init__(self, kind=None): - super(DiagnosticCategory, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(DiagnosticCategory, self).__init__(**kwargs) self.description = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_category_py3.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_category_py3.py new file mode 100644 index 000000000000..615efcf62549 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_category_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_data.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_data.py new file mode 100644 index 000000000000..96cd3ed7d5e2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_data.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiagnosticData(Model): + """Set of data with rendering instructions. + + :param table: Data in table form + :type table: ~azure.mgmt.web.models.DataTableResponseObject + :param rendering_properties: Properties that describe how the table should + be rendered + :type rendering_properties: ~azure.mgmt.web.models.Rendering + """ + + _attribute_map = { + 'table': {'key': 'table', 'type': 'DataTableResponseObject'}, + 'rendering_properties': {'key': 'renderingProperties', 'type': 'Rendering'}, + } + + def __init__(self, **kwargs): + super(DiagnosticData, self).__init__(**kwargs) + self.table = kwargs.get('table', None) + self.rendering_properties = kwargs.get('rendering_properties', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_data_py3.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_data_py3.py new file mode 100644 index 000000000000..bc45e433b578 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_data_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DiagnosticData(Model): + """Set of data with rendering instructions. + + :param table: Data in table form + :type table: ~azure.mgmt.web.models.DataTableResponseObject + :param rendering_properties: Properties that describe how the table should + be rendered + :type rendering_properties: ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_detector_response.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_detector_response.py index 78d94e8718e5..54efec97da7b 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_detector_response.py +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_detector_response.py @@ -67,13 +67,13 @@ class DiagnosticDetectorResponse(ProxyOnlyResource): 'response_meta_data': {'key': 'properties.responseMetaData', 'type': 'ResponseMetaData'}, } - def __init__(self, kind=None, start_time=None, end_time=None, issue_detected=None, detector_definition=None, metrics=None, abnormal_time_periods=None, data=None, response_meta_data=None): - super(DiagnosticDetectorResponse, self).__init__(kind=kind) - 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 + def __init__(self, **kwargs): + super(DiagnosticDetectorResponse, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.issue_detected = kwargs.get('issue_detected', None) + self.detector_definition = kwargs.get('detector_definition', None) + self.metrics = kwargs.get('metrics', None) + self.abnormal_time_periods = kwargs.get('abnormal_time_periods', None) + self.data = kwargs.get('data', None) + self.response_meta_data = kwargs.get('response_meta_data', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_detector_response_py3.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_detector_response_py3.py new file mode 100644 index 000000000000..165d011ecccc --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_detector_response_py3.py @@ -0,0 +1,79 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class DiagnosticDetectorResponse(ProxyOnlyResource): + """Class representing Reponse 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.models.DetectorDefinition + :param metrics: Metrics provided by the detector + :type metrics: list[~azure.mgmt.web.models.DiagnosticMetricSet] + :param abnormal_time_periods: List of Correlated events found by the + detector + :type abnormal_time_periods: + list[~azure.mgmt.web.models.DetectorAbnormalTimePeriod] + :param data: Additional Data that detector wants to send. + :type data: list[list[~azure.mgmt.web.models.NameValuePair]] + :param response_meta_data: Meta Data + :type response_meta_data: ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_sample.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_sample.py index 3b43cd9a42d6..fba987dbfbb2 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_sample.py +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_sample.py @@ -46,11 +46,11 @@ class DiagnosticMetricSample(Model): 'is_aggregated': {'key': 'isAggregated', 'type': 'bool'}, } - def __init__(self, timestamp=None, role_instance=None, total=None, maximum=None, minimum=None, is_aggregated=None): - super(DiagnosticMetricSample, self).__init__() - self.timestamp = timestamp - self.role_instance = role_instance - self.total = total - self.maximum = maximum - self.minimum = minimum - self.is_aggregated = is_aggregated + def __init__(self, **kwargs): + super(DiagnosticMetricSample, self).__init__(**kwargs) + self.timestamp = kwargs.get('timestamp', None) + self.role_instance = kwargs.get('role_instance', None) + self.total = kwargs.get('total', None) + self.maximum = kwargs.get('maximum', None) + self.minimum = kwargs.get('minimum', None) + self.is_aggregated = kwargs.get('is_aggregated', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_sample_py3.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_sample_py3.py new file mode 100644 index 000000000000..c558571a8ea9 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_sample_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_set.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_set.py index e6c97e7d4711..52f58b0931f9 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_set.py +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_set.py @@ -41,11 +41,11 @@ class DiagnosticMetricSet(Model): 'values': {'key': 'values', 'type': '[DiagnosticMetricSample]'}, } - def __init__(self, name=None, unit=None, start_time=None, end_time=None, time_grain=None, values=None): - super(DiagnosticMetricSet, self).__init__() - self.name = name - self.unit = unit - self.start_time = start_time - self.end_time = end_time - self.time_grain = time_grain - self.values = values + def __init__(self, **kwargs): + super(DiagnosticMetricSet, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.unit = kwargs.get('unit', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.time_grain = kwargs.get('time_grain', None) + self.values = kwargs.get('values', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_set_py3.py b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_set_py3.py new file mode 100644 index 000000000000..1af57065bf85 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/diagnostic_metric_set_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/dimension.py b/azure-mgmt-web/azure/mgmt/web/models/dimension.py index 4ae55e1a1931..d4c844f865ca 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/dimension.py +++ b/azure-mgmt-web/azure/mgmt/web/models/dimension.py @@ -34,9 +34,9 @@ class Dimension(Model): 'to_be_exported_for_shoebox': {'key': 'toBeExportedForShoebox', 'type': 'bool'}, } - def __init__(self, name=None, display_name=None, internal_name=None, to_be_exported_for_shoebox=None): - super(Dimension, self).__init__() - self.name = name - self.display_name = display_name - self.internal_name = internal_name - self.to_be_exported_for_shoebox = to_be_exported_for_shoebox + def __init__(self, **kwargs): + super(Dimension, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.internal_name = kwargs.get('internal_name', None) + self.to_be_exported_for_shoebox = kwargs.get('to_be_exported_for_shoebox', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/dimension_py3.py b/azure-mgmt-web/azure/mgmt/web/models/dimension_py3.py new file mode 100644 index 000000000000..6ea1212b77fb --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/dimension_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain.py b/azure-mgmt-web/azure/mgmt/web/models/domain.py index e53ec56f2283..68526b10ca81 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/domain.py +++ b/azure-mgmt-web/azure/mgmt/web/models/domain.py @@ -18,25 +18,27 @@ class Domain(Resource): 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: Resource Location. + :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 contact_admin: Administrative contact. + :param contact_admin: Required. Administrative contact. :type contact_admin: ~azure.mgmt.web.models.Contact - :param contact_billing: Billing contact. + :param contact_billing: Required. Billing contact. :type contact_billing: ~azure.mgmt.web.models.Contact - :param contact_registrant: Registrant contact. + :param contact_registrant: Required. Registrant contact. :type contact_registrant: ~azure.mgmt.web.models.Contact - :param contact_tech: Technical contact. + :param contact_tech: Required. Technical contact. :type contact_tech: ~azure.mgmt.web.models.Contact :ivar registration_status: Domain registration status. Possible values include: 'Active', 'Awaiting', 'Cancelled', 'Confiscated', 'Disabled', @@ -71,7 +73,7 @@ class Domain(Resource): :ivar managed_host_names: All hostnames derived from the domain and assigned to Azure resources. :vartype managed_host_names: list[~azure.mgmt.web.models.HostName] - :param consent: Legal agreement consent. + :param consent: Required. Legal agreement consent. :type consent: ~azure.mgmt.web.models.DomainPurchaseConsent :ivar domain_not_renewable_reasons: Reasons why domain is not renewable. :vartype domain_not_renewable_reasons: list[str] @@ -137,25 +139,25 @@ class Domain(Resource): 'auth_code': {'key': 'properties.authCode', 'type': 'str'}, } - def __init__(self, location, contact_admin, contact_billing, contact_registrant, contact_tech, consent, kind=None, tags=None, privacy=None, auto_renew=True, dns_type=None, dns_zone_id=None, target_dns_type=None, auth_code=None): - super(Domain, self).__init__(kind=kind, location=location, tags=tags) - self.contact_admin = contact_admin - self.contact_billing = contact_billing - self.contact_registrant = contact_registrant - self.contact_tech = contact_tech + def __init__(self, **kwargs): + super(Domain, self).__init__(**kwargs) + self.contact_admin = kwargs.get('contact_admin', None) + self.contact_billing = kwargs.get('contact_billing', None) + self.contact_registrant = kwargs.get('contact_registrant', None) + self.contact_tech = kwargs.get('contact_tech', None) self.registration_status = None self.provisioning_state = None self.name_servers = None - self.privacy = privacy + self.privacy = kwargs.get('privacy', None) self.created_time = None self.expiration_time = None self.last_renewed_time = None - self.auto_renew = auto_renew + self.auto_renew = kwargs.get('auto_renew', True) self.ready_for_dns_record_management = None self.managed_host_names = None - self.consent = consent + self.consent = kwargs.get('consent', None) self.domain_not_renewable_reasons = None - self.dns_type = dns_type - self.dns_zone_id = dns_zone_id - self.target_dns_type = target_dns_type - self.auth_code = auth_code + self.dns_type = kwargs.get('dns_type', None) + self.dns_zone_id = kwargs.get('dns_zone_id', None) + self.target_dns_type = kwargs.get('target_dns_type', None) + self.auth_code = kwargs.get('auth_code', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_availablility_check_result.py b/azure-mgmt-web/azure/mgmt/web/models/domain_availablility_check_result.py index 19132caf64e5..45ea1738a52f 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/domain_availablility_check_result.py +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_availablility_check_result.py @@ -33,8 +33,8 @@ class DomainAvailablilityCheckResult(Model): 'domain_type': {'key': 'domainType', 'type': 'DomainType'}, } - def __init__(self, name=None, available=None, domain_type=None): - super(DomainAvailablilityCheckResult, self).__init__() - self.name = name - self.available = available - self.domain_type = domain_type + def __init__(self, **kwargs): + super(DomainAvailablilityCheckResult, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.available = kwargs.get('available', None) + self.domain_type = kwargs.get('domain_type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_availablility_check_result_py3.py b/azure-mgmt-web/azure/mgmt/web/models/domain_availablility_check_result_py3.py new file mode 100644 index 000000000000..58bc30851baf --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_availablility_check_result_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainAvailablilityCheckResult(Model): + """Domain availablility check result. + + :param name: Name of the domain. + :type name: str + :param available: true if domain can be purchased using + CreateDomain API; otherwise, false. + :type available: bool + :param domain_type: Valid values are Regular domain: Azure will charge the + full price of domain registration, SoftDeleted: Purchasing this domain + will simply restore it and this operation will not cost anything. Possible + values include: 'Regular', 'SoftDeleted' + :type domain_type: str or ~azure.mgmt.web.models.DomainType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'available': {'key': 'available', 'type': 'bool'}, + 'domain_type': {'key': 'domainType', 'type': 'DomainType'}, + } + + def __init__(self, *, name: str=None, available: bool=None, domain_type=None, **kwargs) -> None: + super(DomainAvailablilityCheckResult, self).__init__(**kwargs) + self.name = name + self.available = available + self.domain_type = domain_type diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_control_center_sso_request.py b/azure-mgmt-web/azure/mgmt/web/models/domain_control_center_sso_request.py index 056e5420c991..f132412df926 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/domain_control_center_sso_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_control_center_sso_request.py @@ -39,8 +39,8 @@ class DomainControlCenterSsoRequest(Model): 'post_parameter_value': {'key': 'postParameterValue', 'type': 'str'}, } - def __init__(self): - super(DomainControlCenterSsoRequest, self).__init__() + def __init__(self, **kwargs): + super(DomainControlCenterSsoRequest, self).__init__(**kwargs) self.url = None self.post_parameter_key = None self.post_parameter_value = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_control_center_sso_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/domain_control_center_sso_request_py3.py new file mode 100644 index 000000000000..0e3c71311a22 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_control_center_sso_request_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainControlCenterSsoRequest(Model): + """Single sign-on request information for domain management. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar url: URL where the single sign-on request is to be made. + :vartype url: str + :ivar post_parameter_key: Post parameter key. + :vartype post_parameter_key: str + :ivar post_parameter_value: Post parameter value. Client should use + 'application/x-www-form-urlencoded' encoding for this value. + :vartype post_parameter_value: str + """ + + _validation = { + 'url': {'readonly': True}, + 'post_parameter_key': {'readonly': True}, + 'post_parameter_value': {'readonly': True}, + } + + _attribute_map = { + 'url': {'key': 'url', 'type': 'str'}, + 'post_parameter_key': {'key': 'postParameterKey', 'type': 'str'}, + 'post_parameter_value': {'key': 'postParameterValue', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(DomainControlCenterSsoRequest, self).__init__(**kwargs) + self.url = None + self.post_parameter_key = None + self.post_parameter_value = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_ownership_identifier.py b/azure-mgmt-web/azure/mgmt/web/models/domain_ownership_identifier.py index 14df644e0911..863d26cede05 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/domain_ownership_identifier.py +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_ownership_identifier.py @@ -44,6 +44,6 @@ class DomainOwnershipIdentifier(ProxyOnlyResource): 'ownership_id': {'key': 'properties.ownershipId', 'type': 'str'}, } - def __init__(self, kind=None, ownership_id=None): - super(DomainOwnershipIdentifier, self).__init__(kind=kind) - self.ownership_id = ownership_id + def __init__(self, **kwargs): + super(DomainOwnershipIdentifier, self).__init__(**kwargs) + self.ownership_id = kwargs.get('ownership_id', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_ownership_identifier_py3.py b/azure-mgmt-web/azure/mgmt/web/models/domain_ownership_identifier_py3.py new file mode 100644 index 000000000000..1cb2ea8a81dc --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_ownership_identifier_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class DomainOwnershipIdentifier(ProxyOnlyResource): + """Domain ownership 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 ownership_id: Ownership Id. + :type ownership_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'}, + 'ownership_id': {'key': 'properties.ownershipId', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, ownership_id: str=None, **kwargs) -> None: + super(DomainOwnershipIdentifier, self).__init__(kind=kind, **kwargs) + self.ownership_id = ownership_id diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_patch_resource.py b/azure-mgmt-web/azure/mgmt/web/models/domain_patch_resource.py index 1e14116bb04f..84a451a6ef12 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/domain_patch_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_patch_resource.py @@ -18,6 +18,8 @@ class DomainPatchResource(ProxyOnlyResource): 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. @@ -26,13 +28,13 @@ class DomainPatchResource(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param contact_admin: Administrative contact. + :param contact_admin: Required. Administrative contact. :type contact_admin: ~azure.mgmt.web.models.Contact - :param contact_billing: Billing contact. + :param contact_billing: Required. Billing contact. :type contact_billing: ~azure.mgmt.web.models.Contact - :param contact_registrant: Registrant contact. + :param contact_registrant: Required. Registrant contact. :type contact_registrant: ~azure.mgmt.web.models.Contact - :param contact_tech: Technical contact. + :param contact_tech: Required. Technical contact. :type contact_tech: ~azure.mgmt.web.models.Contact :ivar registration_status: Domain registration status. Possible values include: 'Active', 'Awaiting', 'Cancelled', 'Confiscated', 'Disabled', @@ -67,7 +69,7 @@ class DomainPatchResource(ProxyOnlyResource): :ivar managed_host_names: All hostnames derived from the domain and assigned to Azure resources. :vartype managed_host_names: list[~azure.mgmt.web.models.HostName] - :param consent: Legal agreement consent. + :param consent: Required. Legal agreement consent. :type consent: ~azure.mgmt.web.models.DomainPurchaseConsent :ivar domain_not_renewable_reasons: Reasons why domain is not renewable. :vartype domain_not_renewable_reasons: list[str] @@ -130,25 +132,25 @@ class DomainPatchResource(ProxyOnlyResource): 'auth_code': {'key': 'properties.authCode', 'type': 'str'}, } - def __init__(self, contact_admin, contact_billing, contact_registrant, contact_tech, consent, kind=None, privacy=None, auto_renew=True, dns_type=None, dns_zone_id=None, target_dns_type=None, auth_code=None): - super(DomainPatchResource, self).__init__(kind=kind) - self.contact_admin = contact_admin - self.contact_billing = contact_billing - self.contact_registrant = contact_registrant - self.contact_tech = contact_tech + def __init__(self, **kwargs): + super(DomainPatchResource, self).__init__(**kwargs) + self.contact_admin = kwargs.get('contact_admin', None) + self.contact_billing = kwargs.get('contact_billing', None) + self.contact_registrant = kwargs.get('contact_registrant', None) + self.contact_tech = kwargs.get('contact_tech', None) self.registration_status = None self.provisioning_state = None self.name_servers = None - self.privacy = privacy + self.privacy = kwargs.get('privacy', None) self.created_time = None self.expiration_time = None self.last_renewed_time = None - self.auto_renew = auto_renew + self.auto_renew = kwargs.get('auto_renew', True) self.ready_for_dns_record_management = None self.managed_host_names = None - self.consent = consent + self.consent = kwargs.get('consent', None) self.domain_not_renewable_reasons = None - self.dns_type = dns_type - self.dns_zone_id = dns_zone_id - self.target_dns_type = target_dns_type - self.auth_code = auth_code + self.dns_type = kwargs.get('dns_type', None) + self.dns_zone_id = kwargs.get('dns_zone_id', None) + self.target_dns_type = kwargs.get('target_dns_type', None) + self.auth_code = kwargs.get('auth_code', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_patch_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/domain_patch_resource_py3.py new file mode 100644 index 000000000000..d3369591df85 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_patch_resource_py3.py @@ -0,0 +1,156 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class DomainPatchResource(ProxyOnlyResource): + """ARM resource for a domain. + + 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 contact_admin: Required. Administrative contact. + :type contact_admin: ~azure.mgmt.web.models.Contact + :param contact_billing: Required. Billing contact. + :type contact_billing: ~azure.mgmt.web.models.Contact + :param contact_registrant: Required. Registrant contact. + :type contact_registrant: ~azure.mgmt.web.models.Contact + :param contact_tech: Required. Technical contact. + :type contact_tech: ~azure.mgmt.web.models.Contact + :ivar registration_status: Domain registration status. Possible values + include: 'Active', 'Awaiting', 'Cancelled', 'Confiscated', 'Disabled', + 'Excluded', 'Expired', 'Failed', 'Held', 'Locked', 'Parked', 'Pending', + 'Reserved', 'Reverted', 'Suspended', 'Transferred', 'Unknown', 'Unlocked', + 'Unparked', 'Updated', 'JsonConverterFailed' + :vartype registration_status: str or ~azure.mgmt.web.models.DomainStatus + :ivar provisioning_state: Domain provisioning state. Possible values + include: 'Succeeded', 'Failed', 'Canceled', 'InProgress', 'Deleting' + :vartype provisioning_state: str or + ~azure.mgmt.web.models.ProvisioningState + :ivar name_servers: Name servers. + :vartype name_servers: list[str] + :param privacy: true if domain privacy is enabled for this + domain; otherwise, false. + :type privacy: bool + :ivar created_time: Domain creation timestamp. + :vartype created_time: datetime + :ivar expiration_time: Domain expiration timestamp. + :vartype expiration_time: datetime + :ivar last_renewed_time: Timestamp when the domain was renewed last time. + :vartype last_renewed_time: datetime + :param auto_renew: true if the domain should be automatically + renewed; otherwise, false. Default value: True . + :type auto_renew: bool + :ivar ready_for_dns_record_management: true if Azure can + assign this domain to App Service apps; otherwise, false. + This value will be true if domain registration status is + active and + it is hosted on name servers Azure has programmatic access to. + :vartype ready_for_dns_record_management: bool + :ivar managed_host_names: All hostnames derived from the domain and + assigned to Azure resources. + :vartype managed_host_names: list[~azure.mgmt.web.models.HostName] + :param consent: Required. Legal agreement consent. + :type consent: ~azure.mgmt.web.models.DomainPurchaseConsent + :ivar domain_not_renewable_reasons: Reasons why domain is not renewable. + :vartype domain_not_renewable_reasons: list[str] + :param dns_type: Current DNS type. Possible values include: 'AzureDns', + 'DefaultDomainRegistrarDns' + :type dns_type: str or ~azure.mgmt.web.models.DnsType + :param dns_zone_id: Azure DNS Zone to use + :type dns_zone_id: str + :param target_dns_type: Target DNS type (would be used for migration). + Possible values include: 'AzureDns', 'DefaultDomainRegistrarDns' + :type target_dns_type: str or ~azure.mgmt.web.models.DnsType + :param auth_code: + :type auth_code: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'contact_admin': {'required': True}, + 'contact_billing': {'required': True}, + 'contact_registrant': {'required': True}, + 'contact_tech': {'required': True}, + 'registration_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'name_servers': {'readonly': True}, + 'created_time': {'readonly': True}, + 'expiration_time': {'readonly': True}, + 'last_renewed_time': {'readonly': True}, + 'ready_for_dns_record_management': {'readonly': True}, + 'managed_host_names': {'readonly': True}, + 'consent': {'required': True}, + 'domain_not_renewable_reasons': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'contact_admin': {'key': 'properties.contactAdmin', 'type': 'Contact'}, + 'contact_billing': {'key': 'properties.contactBilling', 'type': 'Contact'}, + 'contact_registrant': {'key': 'properties.contactRegistrant', 'type': 'Contact'}, + 'contact_tech': {'key': 'properties.contactTech', 'type': 'Contact'}, + 'registration_status': {'key': 'properties.registrationStatus', 'type': 'DomainStatus'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'}, + 'name_servers': {'key': 'properties.nameServers', 'type': '[str]'}, + 'privacy': {'key': 'properties.privacy', 'type': 'bool'}, + 'created_time': {'key': 'properties.createdTime', 'type': 'iso-8601'}, + 'expiration_time': {'key': 'properties.expirationTime', 'type': 'iso-8601'}, + 'last_renewed_time': {'key': 'properties.lastRenewedTime', 'type': 'iso-8601'}, + 'auto_renew': {'key': 'properties.autoRenew', 'type': 'bool'}, + 'ready_for_dns_record_management': {'key': 'properties.readyForDnsRecordManagement', 'type': 'bool'}, + 'managed_host_names': {'key': 'properties.managedHostNames', 'type': '[HostName]'}, + 'consent': {'key': 'properties.consent', 'type': 'DomainPurchaseConsent'}, + 'domain_not_renewable_reasons': {'key': 'properties.domainNotRenewableReasons', 'type': '[str]'}, + 'dns_type': {'key': 'properties.dnsType', 'type': 'DnsType'}, + 'dns_zone_id': {'key': 'properties.dnsZoneId', 'type': 'str'}, + 'target_dns_type': {'key': 'properties.targetDnsType', 'type': 'DnsType'}, + 'auth_code': {'key': 'properties.authCode', 'type': 'str'}, + } + + def __init__(self, *, contact_admin, contact_billing, contact_registrant, contact_tech, consent, kind: str=None, privacy: bool=None, auto_renew: bool=True, dns_type=None, dns_zone_id: str=None, target_dns_type=None, auth_code: str=None, **kwargs) -> None: + super(DomainPatchResource, self).__init__(kind=kind, **kwargs) + self.contact_admin = contact_admin + self.contact_billing = contact_billing + self.contact_registrant = contact_registrant + self.contact_tech = contact_tech + self.registration_status = None + self.provisioning_state = None + self.name_servers = None + self.privacy = privacy + self.created_time = None + self.expiration_time = None + self.last_renewed_time = None + self.auto_renew = auto_renew + self.ready_for_dns_record_management = None + self.managed_host_names = None + self.consent = consent + self.domain_not_renewable_reasons = None + self.dns_type = dns_type + self.dns_zone_id = dns_zone_id + self.target_dns_type = target_dns_type + self.auth_code = auth_code diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_purchase_consent.py b/azure-mgmt-web/azure/mgmt/web/models/domain_purchase_consent.py index 856204af4921..af78bf0a076b 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/domain_purchase_consent.py +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_purchase_consent.py @@ -32,8 +32,8 @@ class DomainPurchaseConsent(Model): 'agreed_at': {'key': 'agreedAt', 'type': 'iso-8601'}, } - def __init__(self, agreement_keys=None, agreed_by=None, agreed_at=None): - super(DomainPurchaseConsent, self).__init__() - self.agreement_keys = agreement_keys - self.agreed_by = agreed_by - self.agreed_at = agreed_at + def __init__(self, **kwargs): + super(DomainPurchaseConsent, self).__init__(**kwargs) + self.agreement_keys = kwargs.get('agreement_keys', None) + self.agreed_by = kwargs.get('agreed_by', None) + self.agreed_at = kwargs.get('agreed_at', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_purchase_consent_py3.py b/azure-mgmt-web/azure/mgmt/web/models/domain_purchase_consent_py3.py new file mode 100644 index 000000000000..4a88053cccf3 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_purchase_consent_py3.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainPurchaseConsent(Model): + """Domain purchase consent object, representing acceptance of applicable legal + agreements. + + :param agreement_keys: List of applicable legal agreement keys. This list + can be retrieved using ListLegalAgreements API under + TopLevelDomain resource. + :type agreement_keys: list[str] + :param agreed_by: Client IP address. + :type agreed_by: str + :param agreed_at: Timestamp when the agreements were accepted. + :type agreed_at: datetime + """ + + _attribute_map = { + 'agreement_keys': {'key': 'agreementKeys', 'type': '[str]'}, + 'agreed_by': {'key': 'agreedBy', 'type': 'str'}, + 'agreed_at': {'key': 'agreedAt', 'type': 'iso-8601'}, + } + + def __init__(self, *, agreement_keys=None, agreed_by: str=None, agreed_at=None, **kwargs) -> None: + super(DomainPurchaseConsent, self).__init__(**kwargs) + self.agreement_keys = agreement_keys + self.agreed_by = agreed_by + self.agreed_at = agreed_at diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_py3.py b/azure-mgmt-web/azure/mgmt/web/models/domain_py3.py new file mode 100644 index 000000000000..51a886759b12 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_py3.py @@ -0,0 +1,163 @@ +# 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 .resource_py3 import Resource + + +class Domain(Resource): + """Information about a domain. + + 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 contact_admin: Required. Administrative contact. + :type contact_admin: ~azure.mgmt.web.models.Contact + :param contact_billing: Required. Billing contact. + :type contact_billing: ~azure.mgmt.web.models.Contact + :param contact_registrant: Required. Registrant contact. + :type contact_registrant: ~azure.mgmt.web.models.Contact + :param contact_tech: Required. Technical contact. + :type contact_tech: ~azure.mgmt.web.models.Contact + :ivar registration_status: Domain registration status. Possible values + include: 'Active', 'Awaiting', 'Cancelled', 'Confiscated', 'Disabled', + 'Excluded', 'Expired', 'Failed', 'Held', 'Locked', 'Parked', 'Pending', + 'Reserved', 'Reverted', 'Suspended', 'Transferred', 'Unknown', 'Unlocked', + 'Unparked', 'Updated', 'JsonConverterFailed' + :vartype registration_status: str or ~azure.mgmt.web.models.DomainStatus + :ivar provisioning_state: Domain provisioning state. Possible values + include: 'Succeeded', 'Failed', 'Canceled', 'InProgress', 'Deleting' + :vartype provisioning_state: str or + ~azure.mgmt.web.models.ProvisioningState + :ivar name_servers: Name servers. + :vartype name_servers: list[str] + :param privacy: true if domain privacy is enabled for this + domain; otherwise, false. + :type privacy: bool + :ivar created_time: Domain creation timestamp. + :vartype created_time: datetime + :ivar expiration_time: Domain expiration timestamp. + :vartype expiration_time: datetime + :ivar last_renewed_time: Timestamp when the domain was renewed last time. + :vartype last_renewed_time: datetime + :param auto_renew: true if the domain should be automatically + renewed; otherwise, false. Default value: True . + :type auto_renew: bool + :ivar ready_for_dns_record_management: true if Azure can + assign this domain to App Service apps; otherwise, false. + This value will be true if domain registration status is + active and + it is hosted on name servers Azure has programmatic access to. + :vartype ready_for_dns_record_management: bool + :ivar managed_host_names: All hostnames derived from the domain and + assigned to Azure resources. + :vartype managed_host_names: list[~azure.mgmt.web.models.HostName] + :param consent: Required. Legal agreement consent. + :type consent: ~azure.mgmt.web.models.DomainPurchaseConsent + :ivar domain_not_renewable_reasons: Reasons why domain is not renewable. + :vartype domain_not_renewable_reasons: list[str] + :param dns_type: Current DNS type. Possible values include: 'AzureDns', + 'DefaultDomainRegistrarDns' + :type dns_type: str or ~azure.mgmt.web.models.DnsType + :param dns_zone_id: Azure DNS Zone to use + :type dns_zone_id: str + :param target_dns_type: Target DNS type (would be used for migration). + Possible values include: 'AzureDns', 'DefaultDomainRegistrarDns' + :type target_dns_type: str or ~azure.mgmt.web.models.DnsType + :param auth_code: + :type auth_code: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'location': {'required': True}, + 'type': {'readonly': True}, + 'contact_admin': {'required': True}, + 'contact_billing': {'required': True}, + 'contact_registrant': {'required': True}, + 'contact_tech': {'required': True}, + 'registration_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'name_servers': {'readonly': True}, + 'created_time': {'readonly': True}, + 'expiration_time': {'readonly': True}, + 'last_renewed_time': {'readonly': True}, + 'ready_for_dns_record_management': {'readonly': True}, + 'managed_host_names': {'readonly': True}, + 'consent': {'required': True}, + 'domain_not_renewable_reasons': {'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}'}, + 'contact_admin': {'key': 'properties.contactAdmin', 'type': 'Contact'}, + 'contact_billing': {'key': 'properties.contactBilling', 'type': 'Contact'}, + 'contact_registrant': {'key': 'properties.contactRegistrant', 'type': 'Contact'}, + 'contact_tech': {'key': 'properties.contactTech', 'type': 'Contact'}, + 'registration_status': {'key': 'properties.registrationStatus', 'type': 'DomainStatus'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'}, + 'name_servers': {'key': 'properties.nameServers', 'type': '[str]'}, + 'privacy': {'key': 'properties.privacy', 'type': 'bool'}, + 'created_time': {'key': 'properties.createdTime', 'type': 'iso-8601'}, + 'expiration_time': {'key': 'properties.expirationTime', 'type': 'iso-8601'}, + 'last_renewed_time': {'key': 'properties.lastRenewedTime', 'type': 'iso-8601'}, + 'auto_renew': {'key': 'properties.autoRenew', 'type': 'bool'}, + 'ready_for_dns_record_management': {'key': 'properties.readyForDnsRecordManagement', 'type': 'bool'}, + 'managed_host_names': {'key': 'properties.managedHostNames', 'type': '[HostName]'}, + 'consent': {'key': 'properties.consent', 'type': 'DomainPurchaseConsent'}, + 'domain_not_renewable_reasons': {'key': 'properties.domainNotRenewableReasons', 'type': '[str]'}, + 'dns_type': {'key': 'properties.dnsType', 'type': 'DnsType'}, + 'dns_zone_id': {'key': 'properties.dnsZoneId', 'type': 'str'}, + 'target_dns_type': {'key': 'properties.targetDnsType', 'type': 'DnsType'}, + 'auth_code': {'key': 'properties.authCode', 'type': 'str'}, + } + + def __init__(self, *, location: str, contact_admin, contact_billing, contact_registrant, contact_tech, consent, kind: str=None, tags=None, privacy: bool=None, auto_renew: bool=True, dns_type=None, dns_zone_id: str=None, target_dns_type=None, auth_code: str=None, **kwargs) -> None: + super(Domain, self).__init__(kind=kind, location=location, tags=tags, **kwargs) + self.contact_admin = contact_admin + self.contact_billing = contact_billing + self.contact_registrant = contact_registrant + self.contact_tech = contact_tech + self.registration_status = None + self.provisioning_state = None + self.name_servers = None + self.privacy = privacy + self.created_time = None + self.expiration_time = None + self.last_renewed_time = None + self.auto_renew = auto_renew + self.ready_for_dns_record_management = None + self.managed_host_names = None + self.consent = consent + self.domain_not_renewable_reasons = None + self.dns_type = dns_type + self.dns_zone_id = dns_zone_id + self.target_dns_type = target_dns_type + self.auth_code = auth_code diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_recommendation_search_parameters.py b/azure-mgmt-web/azure/mgmt/web/models/domain_recommendation_search_parameters.py index 98a31de25204..fe006b4ba3e6 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/domain_recommendation_search_parameters.py +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_recommendation_search_parameters.py @@ -27,7 +27,7 @@ class DomainRecommendationSearchParameters(Model): 'max_domain_recommendations': {'key': 'maxDomainRecommendations', 'type': 'int'}, } - def __init__(self, keywords=None, max_domain_recommendations=None): - super(DomainRecommendationSearchParameters, self).__init__() - self.keywords = keywords - self.max_domain_recommendations = max_domain_recommendations + def __init__(self, **kwargs): + super(DomainRecommendationSearchParameters, self).__init__(**kwargs) + self.keywords = kwargs.get('keywords', None) + self.max_domain_recommendations = kwargs.get('max_domain_recommendations', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/domain_recommendation_search_parameters_py3.py b/azure-mgmt-web/azure/mgmt/web/models/domain_recommendation_search_parameters_py3.py new file mode 100644 index 000000000000..8ea9729bb72e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/domain_recommendation_search_parameters_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class DomainRecommendationSearchParameters(Model): + """Domain recommendation search parameters. + + :param keywords: Keywords to be used for generating domain + recommendations. + :type keywords: str + :param max_domain_recommendations: Maximum number of recommendations. + :type max_domain_recommendations: int + """ + + _attribute_map = { + 'keywords': {'key': 'keywords', 'type': 'str'}, + 'max_domain_recommendations': {'key': 'maxDomainRecommendations', 'type': 'int'}, + } + + def __init__(self, *, keywords: str=None, max_domain_recommendations: int=None, **kwargs) -> None: + super(DomainRecommendationSearchParameters, self).__init__(**kwargs) + self.keywords = keywords + self.max_domain_recommendations = max_domain_recommendations diff --git a/azure-mgmt-web/azure/mgmt/web/models/enabled_config.py b/azure-mgmt-web/azure/mgmt/web/models/enabled_config.py index 5d44efc6b8ad..81b4f06c3045 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/enabled_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/enabled_config.py @@ -24,6 +24,6 @@ class EnabledConfig(Model): 'enabled': {'key': 'enabled', 'type': 'bool'}, } - def __init__(self, enabled=None): - super(EnabledConfig, self).__init__() - self.enabled = enabled + def __init__(self, **kwargs): + super(EnabledConfig, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/enabled_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/enabled_config_py3.py new file mode 100644 index 000000000000..226726aabf4c --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/enabled_config_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class EnabledConfig(Model): + """Enabled configuration. + + :param enabled: True if configuration is enabled, false if it is disabled + and null if configuration is not set. + :type enabled: bool + """ + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, enabled: bool=None, **kwargs) -> None: + super(EnabledConfig, self).__init__(**kwargs) + self.enabled = enabled diff --git a/azure-mgmt-web/azure/mgmt/web/models/error_entity.py b/azure-mgmt-web/azure/mgmt/web/models/error_entity.py index f909bd59f684..08f037c599f2 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/error_entity.py +++ b/azure-mgmt-web/azure/mgmt/web/models/error_entity.py @@ -38,11 +38,11 @@ class ErrorEntity(Model): 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, extended_code=None, message_template=None, parameters=None, inner_errors=None, code=None, message=None): - super(ErrorEntity, self).__init__() - self.extended_code = extended_code - self.message_template = message_template - self.parameters = parameters - self.inner_errors = inner_errors - self.code = code - self.message = message + def __init__(self, **kwargs): + super(ErrorEntity, self).__init__(**kwargs) + self.extended_code = kwargs.get('extended_code', None) + self.message_template = kwargs.get('message_template', None) + self.parameters = kwargs.get('parameters', None) + self.inner_errors = kwargs.get('inner_errors', None) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/error_entity_py3.py b/azure-mgmt-web/azure/mgmt/web/models/error_entity_py3.py new file mode 100644 index 000000000000..d60fe281db68 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/error_entity_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/error_response.py b/azure-mgmt-web/azure/mgmt/web/models/error_response.py deleted file mode 100644 index 97176b87f7b3..000000000000 --- a/azure-mgmt-web/azure/mgmt/web/models/error_response.py +++ /dev/null @@ -1,45 +0,0 @@ -# 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 - - -class ErrorResponse(Model): - """Error Response. - - :param code: Error code. - :type code: str - :param message: Error message indicating why the operation failed. - :type message: str - """ - - _attribute_map = { - 'code': {'key': 'code', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - } - - def __init__(self, code=None, message=None): - super(ErrorResponse, self).__init__() - self.code = code - self.message = message - - -class ErrorResponseException(HttpOperationError): - """Server responsed with exception of type: 'ErrorResponse'. - - :param deserialize: A deserializer - :param response: Server response to be deserialized. - """ - - def __init__(self, deserialize, response, *args): - - super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) diff --git a/azure-mgmt-web/azure/mgmt/web/models/experiments.py b/azure-mgmt-web/azure/mgmt/web/models/experiments.py index 231d82f98a5d..4a74bcf8f935 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/experiments.py +++ b/azure-mgmt-web/azure/mgmt/web/models/experiments.py @@ -23,6 +23,6 @@ class Experiments(Model): 'ramp_up_rules': {'key': 'rampUpRules', 'type': '[RampUpRule]'}, } - def __init__(self, ramp_up_rules=None): - super(Experiments, self).__init__() - self.ramp_up_rules = ramp_up_rules + def __init__(self, **kwargs): + super(Experiments, self).__init__(**kwargs) + self.ramp_up_rules = kwargs.get('ramp_up_rules', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/experiments_py3.py b/azure-mgmt-web/azure/mgmt/web/models/experiments_py3.py new file mode 100644 index 000000000000..16bd1d5ccf09 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/experiments_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Experiments(Model): + """Routing rules in production experiments. + + :param ramp_up_rules: List of ramp-up rules. + :type ramp_up_rules: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/file_system_application_logs_config.py b/azure-mgmt-web/azure/mgmt/web/models/file_system_application_logs_config.py index b8ecc8372cc5..469a1bee8590 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/file_system_application_logs_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/file_system_application_logs_config.py @@ -24,6 +24,6 @@ class FileSystemApplicationLogsConfig(Model): 'level': {'key': 'level', 'type': 'LogLevel'}, } - def __init__(self, level="Off"): - super(FileSystemApplicationLogsConfig, self).__init__() - self.level = level + def __init__(self, **kwargs): + super(FileSystemApplicationLogsConfig, self).__init__(**kwargs) + self.level = kwargs.get('level', "Off") diff --git a/azure-mgmt-web/azure/mgmt/web/models/file_system_application_logs_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/file_system_application_logs_config_py3.py new file mode 100644 index 000000000000..d18bbfa42a33 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/file_system_application_logs_config_py3.py @@ -0,0 +1,29 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileSystemApplicationLogsConfig(Model): + """Application logs to file system configuration. + + :param level: Log level. Possible values include: 'Off', 'Verbose', + 'Information', 'Warning', 'Error'. Default value: "Off" . + :type level: str or ~azure.mgmt.web.models.LogLevel + """ + + _attribute_map = { + 'level': {'key': 'level', 'type': 'LogLevel'}, + } + + def __init__(self, *, level="Off", **kwargs) -> None: + super(FileSystemApplicationLogsConfig, self).__init__(**kwargs) + self.level = level diff --git a/azure-mgmt-web/azure/mgmt/web/models/file_system_http_logs_config.py b/azure-mgmt-web/azure/mgmt/web/models/file_system_http_logs_config.py index 0c38657cac46..d7be6474900f 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/file_system_http_logs_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/file_system_http_logs_config.py @@ -39,8 +39,8 @@ class FileSystemHttpLogsConfig(Model): 'enabled': {'key': 'enabled', 'type': 'bool'}, } - def __init__(self, retention_in_mb=None, retention_in_days=None, enabled=None): - super(FileSystemHttpLogsConfig, self).__init__() - self.retention_in_mb = retention_in_mb - self.retention_in_days = retention_in_days - self.enabled = enabled + def __init__(self, **kwargs): + super(FileSystemHttpLogsConfig, self).__init__(**kwargs) + self.retention_in_mb = kwargs.get('retention_in_mb', None) + self.retention_in_days = kwargs.get('retention_in_days', None) + self.enabled = kwargs.get('enabled', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/file_system_http_logs_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/file_system_http_logs_config_py3.py new file mode 100644 index 000000000000..b5101a8c103d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/file_system_http_logs_config_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class FileSystemHttpLogsConfig(Model): + """Http logs to file system configuration. + + :param retention_in_mb: Maximum size in megabytes that http log files can + use. + When reached old log files will be removed to make space for new ones. + Value can range between 25 and 100. + :type retention_in_mb: int + :param retention_in_days: Retention in days. + Remove files older than X days. + 0 or lower means no retention. + :type retention_in_days: int + :param enabled: True if configuration is enabled, false if it is disabled + and null if configuration is not set. + :type enabled: bool + """ + + _validation = { + 'retention_in_mb': {'maximum': 100, 'minimum': 25}, + } + + _attribute_map = { + 'retention_in_mb': {'key': 'retentionInMb', 'type': 'int'}, + 'retention_in_days': {'key': 'retentionInDays', 'type': 'int'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, retention_in_mb: int=None, retention_in_days: int=None, enabled: bool=None, **kwargs) -> None: + super(FileSystemHttpLogsConfig, self).__init__(**kwargs) + self.retention_in_mb = retention_in_mb + self.retention_in_days = retention_in_days + self.enabled = enabled diff --git a/azure-mgmt-web/azure/mgmt/web/models/function_envelope.py b/azure-mgmt-web/azure/mgmt/web/models/function_envelope.py index e68f283aefb7..94725f15457b 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/function_envelope.py +++ b/azure-mgmt-web/azure/mgmt/web/models/function_envelope.py @@ -26,10 +26,8 @@ class FunctionEnvelope(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :ivar function_envelope_name: Function name. - :vartype function_envelope_name: str - :ivar function_app_id: Function App ID. - :vartype function_app_id: str + :param function_app_id: Function App ID. + :type function_app_id: str :param script_root_path_href: Script root path URI. :type script_root_path_href: str :param script_href: Script URI. @@ -52,8 +50,6 @@ class FunctionEnvelope(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'function_envelope_name': {'readonly': True}, - 'function_app_id': {'readonly': True}, } _attribute_map = { @@ -61,27 +57,25 @@ class FunctionEnvelope(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'function_envelope_name': {'key': 'properties.name', 'type': 'str'}, - 'function_app_id': {'key': 'properties.functionAppId', 'type': 'str'}, - 'script_root_path_href': {'key': 'properties.scriptRootPathHref', 'type': 'str'}, - 'script_href': {'key': 'properties.scriptHref', 'type': 'str'}, - 'config_href': {'key': 'properties.configHref', 'type': 'str'}, - 'secrets_file_href': {'key': 'properties.secretsFileHref', 'type': 'str'}, + 'function_app_id': {'key': 'properties.function_app_id', 'type': 'str'}, + 'script_root_path_href': {'key': 'properties.script_root_path_href', 'type': 'str'}, + 'script_href': {'key': 'properties.script_href', 'type': 'str'}, + 'config_href': {'key': 'properties.config_href', 'type': 'str'}, + 'secrets_file_href': {'key': 'properties.secrets_file_href', 'type': 'str'}, 'href': {'key': 'properties.href', 'type': 'str'}, 'config': {'key': 'properties.config', 'type': 'object'}, 'files': {'key': 'properties.files', 'type': '{str}'}, - 'test_data': {'key': 'properties.testData', 'type': 'str'}, + 'test_data': {'key': 'properties.test_data', 'type': 'str'}, } - def __init__(self, kind=None, script_root_path_href=None, script_href=None, config_href=None, secrets_file_href=None, href=None, config=None, files=None, test_data=None): - super(FunctionEnvelope, self).__init__(kind=kind) - self.function_envelope_name = None - self.function_app_id = None - self.script_root_path_href = script_root_path_href - self.script_href = script_href - self.config_href = config_href - self.secrets_file_href = secrets_file_href - self.href = href - self.config = config - self.files = files - self.test_data = test_data + def __init__(self, **kwargs): + super(FunctionEnvelope, self).__init__(**kwargs) + self.function_app_id = kwargs.get('function_app_id', None) + self.script_root_path_href = kwargs.get('script_root_path_href', None) + self.script_href = kwargs.get('script_href', None) + self.config_href = kwargs.get('config_href', None) + self.secrets_file_href = kwargs.get('secrets_file_href', None) + self.href = kwargs.get('href', None) + self.config = kwargs.get('config', None) + self.files = kwargs.get('files', None) + self.test_data = kwargs.get('test_data', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/function_envelope_py3.py b/azure-mgmt-web/azure/mgmt/web/models/function_envelope_py3.py new file mode 100644 index 000000000000..4cc49ab6b0aa --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/function_envelope_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class FunctionEnvelope(ProxyOnlyResource): + """Web Job Information. + + 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 function_app_id: Function App ID. + :type function_app_id: str + :param script_root_path_href: Script root path URI. + :type script_root_path_href: str + :param script_href: Script URI. + :type script_href: str + :param config_href: Config URI. + :type config_href: str + :param secrets_file_href: Secrets file URI. + :type secrets_file_href: str + :param href: Function URI. + :type href: str + :param config: Config information. + :type config: object + :param files: File list. + :type files: dict[str, str] + :param test_data: Test data used when testing via the Azure Portal. + :type test_data: 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'}, + 'function_app_id': {'key': 'properties.function_app_id', 'type': 'str'}, + 'script_root_path_href': {'key': 'properties.script_root_path_href', 'type': 'str'}, + 'script_href': {'key': 'properties.script_href', 'type': 'str'}, + 'config_href': {'key': 'properties.config_href', 'type': 'str'}, + 'secrets_file_href': {'key': 'properties.secrets_file_href', 'type': 'str'}, + 'href': {'key': 'properties.href', 'type': 'str'}, + 'config': {'key': 'properties.config', 'type': 'object'}, + 'files': {'key': 'properties.files', 'type': '{str}'}, + 'test_data': {'key': 'properties.test_data', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, function_app_id: str=None, script_root_path_href: str=None, script_href: str=None, config_href: str=None, secrets_file_href: str=None, href: str=None, config=None, files=None, test_data: str=None, **kwargs) -> None: + super(FunctionEnvelope, self).__init__(kind=kind, **kwargs) + self.function_app_id = function_app_id + self.script_root_path_href = script_root_path_href + self.script_href = script_href + self.config_href = config_href + self.secrets_file_href = secrets_file_href + self.href = href + self.config = config + self.files = files + self.test_data = test_data diff --git a/azure-mgmt-web/azure/mgmt/web/models/function_secrets.py b/azure-mgmt-web/azure/mgmt/web/models/function_secrets.py index 86cf03927c63..aab991c49289 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/function_secrets.py +++ b/azure-mgmt-web/azure/mgmt/web/models/function_secrets.py @@ -44,10 +44,10 @@ class FunctionSecrets(ProxyOnlyResource): 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'key': {'key': 'properties.key', 'type': 'str'}, - 'trigger_url': {'key': 'properties.triggerUrl', 'type': 'str'}, + 'trigger_url': {'key': 'properties.trigger_url', 'type': 'str'}, } - def __init__(self, kind=None, key=None, trigger_url=None): - super(FunctionSecrets, self).__init__(kind=kind) - self.key = key - self.trigger_url = trigger_url + def __init__(self, **kwargs): + super(FunctionSecrets, self).__init__(**kwargs) + self.key = kwargs.get('key', None) + self.trigger_url = kwargs.get('trigger_url', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/function_secrets_py3.py b/azure-mgmt-web/azure/mgmt/web/models/function_secrets_py3.py new file mode 100644 index 000000000000..e559db2773b6 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/function_secrets_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class FunctionSecrets(ProxyOnlyResource): + """Function secrets. + + 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 key: Secret key. + :type key: str + :param trigger_url: Trigger URL. + :type trigger_url: 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'}, + 'key': {'key': 'properties.key', 'type': 'str'}, + 'trigger_url': {'key': 'properties.trigger_url', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, key: str=None, trigger_url: str=None, **kwargs) -> None: + super(FunctionSecrets, self).__init__(kind=kind, **kwargs) + self.key = key + self.trigger_url = trigger_url diff --git a/azure-mgmt-web/azure/mgmt/web/models/geo_region.py b/azure-mgmt-web/azure/mgmt/web/models/geo_region.py index 0cd677eef4a6..2bc435a404a8 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/geo_region.py +++ b/azure-mgmt-web/azure/mgmt/web/models/geo_region.py @@ -26,8 +26,6 @@ class GeoRegion(ProxyOnlyResource): :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. @@ -38,7 +36,6 @@ class GeoRegion(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'geo_region_name': {'readonly': True}, 'description': {'readonly': True}, 'display_name': {'readonly': True}, } @@ -48,13 +45,11 @@ class GeoRegion(ProxyOnlyResource): '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=None): - super(GeoRegion, self).__init__(kind=kind) - self.geo_region_name = None + def __init__(self, **kwargs): + super(GeoRegion, self).__init__(**kwargs) self.description = None self.display_name = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/geo_region_py3.py b/azure-mgmt-web/azure/mgmt/web/models/geo_region_py3.py new file mode 100644 index 000000000000..774b350eb460 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/geo_region_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 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}, + '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'}, + '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.description = None + self.display_name = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/global_csm_sku_description.py b/azure-mgmt-web/azure/mgmt/web/models/global_csm_sku_description.py index c47cd7e4511b..3e360b658faf 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/global_csm_sku_description.py +++ b/azure-mgmt-web/azure/mgmt/web/models/global_csm_sku_description.py @@ -42,12 +42,12 @@ class GlobalCsmSkuDescription(Model): 'capabilities': {'key': 'capabilities', 'type': '[Capability]'}, } - def __init__(self, name=None, tier=None, size=None, family=None, capacity=None, locations=None, capabilities=None): - super(GlobalCsmSkuDescription, self).__init__() - self.name = name - self.tier = tier - self.size = size - self.family = family - self.capacity = capacity - self.locations = locations - self.capabilities = capabilities + def __init__(self, **kwargs): + super(GlobalCsmSkuDescription, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.size = kwargs.get('size', None) + self.family = kwargs.get('family', None) + self.capacity = kwargs.get('capacity', None) + self.locations = kwargs.get('locations', None) + self.capabilities = kwargs.get('capabilities', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/global_csm_sku_description_py3.py b/azure-mgmt-web/azure/mgmt/web/models/global_csm_sku_description_py3.py new file mode 100644 index 000000000000..4ee7bee2a0f0 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/global_csm_sku_description_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/handler_mapping.py b/azure-mgmt-web/azure/mgmt/web/models/handler_mapping.py index fd3819684997..842f09c77aa4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/handler_mapping.py +++ b/azure-mgmt-web/azure/mgmt/web/models/handler_mapping.py @@ -34,8 +34,8 @@ class HandlerMapping(Model): 'arguments': {'key': 'arguments', 'type': 'str'}, } - def __init__(self, extension=None, script_processor=None, arguments=None): - super(HandlerMapping, self).__init__() - self.extension = extension - self.script_processor = script_processor - self.arguments = arguments + def __init__(self, **kwargs): + super(HandlerMapping, self).__init__(**kwargs) + self.extension = kwargs.get('extension', None) + self.script_processor = kwargs.get('script_processor', None) + self.arguments = kwargs.get('arguments', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/handler_mapping_py3.py b/azure-mgmt-web/azure/mgmt/web/models/handler_mapping_py3.py new file mode 100644 index 000000000000..a2facf93b3fa --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/handler_mapping_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/host_name.py b/azure-mgmt-web/azure/mgmt/web/models/host_name.py index 3df8649876dd..35dd11a2ff51 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/host_name.py +++ b/azure-mgmt-web/azure/mgmt/web/models/host_name.py @@ -46,11 +46,11 @@ class HostName(Model): 'host_name_type': {'key': 'hostNameType', 'type': 'HostNameType'}, } - def __init__(self, name=None, site_names=None, azure_resource_name=None, azure_resource_type=None, custom_host_name_dns_record_type=None, host_name_type=None): - super(HostName, self).__init__() - self.name = name - self.site_names = site_names - self.azure_resource_name = azure_resource_name - self.azure_resource_type = azure_resource_type - self.custom_host_name_dns_record_type = custom_host_name_dns_record_type - self.host_name_type = host_name_type + def __init__(self, **kwargs): + super(HostName, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.site_names = kwargs.get('site_names', None) + self.azure_resource_name = kwargs.get('azure_resource_name', None) + self.azure_resource_type = kwargs.get('azure_resource_type', None) + self.custom_host_name_dns_record_type = kwargs.get('custom_host_name_dns_record_type', None) + self.host_name_type = kwargs.get('host_name_type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/host_name_binding.py b/azure-mgmt-web/azure/mgmt/web/models/host_name_binding.py index a494c196dbe6..6d728d0a158b 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/host_name_binding.py +++ b/azure-mgmt-web/azure/mgmt/web/models/host_name_binding.py @@ -75,14 +75,14 @@ class HostNameBinding(ProxyOnlyResource): 'virtual_ip': {'key': 'properties.virtualIP', 'type': 'str'}, } - def __init__(self, kind=None, site_name=None, domain_id=None, azure_resource_name=None, azure_resource_type=None, custom_host_name_dns_record_type=None, host_name_type=None, ssl_state=None, thumbprint=None): - super(HostNameBinding, self).__init__(kind=kind) - self.site_name = site_name - self.domain_id = domain_id - self.azure_resource_name = azure_resource_name - self.azure_resource_type = azure_resource_type - self.custom_host_name_dns_record_type = custom_host_name_dns_record_type - self.host_name_type = host_name_type - self.ssl_state = ssl_state - self.thumbprint = thumbprint + def __init__(self, **kwargs): + super(HostNameBinding, self).__init__(**kwargs) + self.site_name = kwargs.get('site_name', None) + self.domain_id = kwargs.get('domain_id', None) + self.azure_resource_name = kwargs.get('azure_resource_name', None) + self.azure_resource_type = kwargs.get('azure_resource_type', None) + self.custom_host_name_dns_record_type = kwargs.get('custom_host_name_dns_record_type', None) + self.host_name_type = kwargs.get('host_name_type', None) + self.ssl_state = kwargs.get('ssl_state', None) + self.thumbprint = kwargs.get('thumbprint', None) self.virtual_ip = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/host_name_binding_py3.py b/azure-mgmt-web/azure/mgmt/web/models/host_name_binding_py3.py new file mode 100644 index 000000000000..a22b74356b87 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/host_name_binding_py3.py @@ -0,0 +1,88 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class HostNameBinding(ProxyOnlyResource): + """A hostname binding object. + + 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 site_name: App Service app name. + :type site_name: str + :param domain_id: Fully qualified ARM domain resource URI. + :type domain_id: str + :param azure_resource_name: Azure resource name. + :type azure_resource_name: str + :param azure_resource_type: Azure resource type. Possible values include: + 'Website', 'TrafficManager' + :type azure_resource_type: str or ~azure.mgmt.web.models.AzureResourceType + :param custom_host_name_dns_record_type: Custom DNS record type. Possible + values include: 'CName', 'A' + :type custom_host_name_dns_record_type: str or + ~azure.mgmt.web.models.CustomHostNameDnsRecordType + :param host_name_type: Hostname type. Possible values include: 'Verified', + 'Managed' + :type host_name_type: str or ~azure.mgmt.web.models.HostNameType + :param ssl_state: SSL type. Possible values include: 'Disabled', + 'SniEnabled', 'IpBasedEnabled' + :type ssl_state: str or ~azure.mgmt.web.models.SslState + :param thumbprint: SSL certificate thumbprint + :type thumbprint: str + :ivar virtual_ip: Virtual IP address assigned to the hostname if IP based + SSL is enabled. + :vartype virtual_ip: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_ip': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'site_name': {'key': 'properties.siteName', 'type': 'str'}, + 'domain_id': {'key': 'properties.domainId', 'type': 'str'}, + 'azure_resource_name': {'key': 'properties.azureResourceName', 'type': 'str'}, + 'azure_resource_type': {'key': 'properties.azureResourceType', 'type': 'AzureResourceType'}, + 'custom_host_name_dns_record_type': {'key': 'properties.customHostNameDnsRecordType', 'type': 'CustomHostNameDnsRecordType'}, + 'host_name_type': {'key': 'properties.hostNameType', 'type': 'HostNameType'}, + 'ssl_state': {'key': 'properties.sslState', 'type': 'SslState'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'virtual_ip': {'key': 'properties.virtualIP', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, site_name: str=None, domain_id: str=None, azure_resource_name: str=None, azure_resource_type=None, custom_host_name_dns_record_type=None, host_name_type=None, ssl_state=None, thumbprint: str=None, **kwargs) -> None: + super(HostNameBinding, self).__init__(kind=kind, **kwargs) + self.site_name = site_name + self.domain_id = domain_id + self.azure_resource_name = azure_resource_name + self.azure_resource_type = azure_resource_type + self.custom_host_name_dns_record_type = custom_host_name_dns_record_type + self.host_name_type = host_name_type + self.ssl_state = ssl_state + self.thumbprint = thumbprint + self.virtual_ip = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/host_name_py3.py b/azure-mgmt-web/azure/mgmt/web/models/host_name_py3.py new file mode 100644 index 000000000000..7ba3d8375ff2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/host_name_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HostName(Model): + """Details of a hostname derived from a domain. + + :param name: Name of the hostname. + :type name: str + :param site_names: List of apps the hostname is assigned to. This list + will have more than one app only if the hostname is pointing to a Traffic + Manager. + :type site_names: list[str] + :param azure_resource_name: Name of the Azure resource the hostname is + assigned to. If it is assigned to a Traffic Manager then it will be the + Traffic Manager name otherwise it will be the app name. + :type azure_resource_name: str + :param azure_resource_type: Type of the Azure resource the hostname is + assigned to. Possible values include: 'Website', 'TrafficManager' + :type azure_resource_type: str or ~azure.mgmt.web.models.AzureResourceType + :param custom_host_name_dns_record_type: Type of the DNS record. Possible + values include: 'CName', 'A' + :type custom_host_name_dns_record_type: str or + ~azure.mgmt.web.models.CustomHostNameDnsRecordType + :param host_name_type: Type of the hostname. Possible values include: + 'Verified', 'Managed' + :type host_name_type: str or ~azure.mgmt.web.models.HostNameType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'site_names': {'key': 'siteNames', 'type': '[str]'}, + 'azure_resource_name': {'key': 'azureResourceName', 'type': 'str'}, + 'azure_resource_type': {'key': 'azureResourceType', 'type': 'AzureResourceType'}, + 'custom_host_name_dns_record_type': {'key': 'customHostNameDnsRecordType', 'type': 'CustomHostNameDnsRecordType'}, + 'host_name_type': {'key': 'hostNameType', 'type': 'HostNameType'}, + } + + def __init__(self, *, name: str=None, site_names=None, azure_resource_name: str=None, azure_resource_type=None, custom_host_name_dns_record_type=None, host_name_type=None, **kwargs) -> None: + super(HostName, self).__init__(**kwargs) + self.name = name + self.site_names = site_names + self.azure_resource_name = azure_resource_name + self.azure_resource_type = azure_resource_type + self.custom_host_name_dns_record_type = custom_host_name_dns_record_type + self.host_name_type = host_name_type diff --git a/azure-mgmt-web/azure/mgmt/web/models/host_name_ssl_state.py b/azure-mgmt-web/azure/mgmt/web/models/host_name_ssl_state.py index 1a95322cf81e..3b0c32f1f108 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/host_name_ssl_state.py +++ b/azure-mgmt-web/azure/mgmt/web/models/host_name_ssl_state.py @@ -41,11 +41,11 @@ class HostNameSslState(Model): 'host_type': {'key': 'hostType', 'type': 'HostType'}, } - def __init__(self, name=None, ssl_state=None, virtual_ip=None, thumbprint=None, to_update=None, host_type=None): - super(HostNameSslState, self).__init__() - 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 + def __init__(self, **kwargs): + super(HostNameSslState, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.ssl_state = kwargs.get('ssl_state', None) + self.virtual_ip = kwargs.get('virtual_ip', None) + self.thumbprint = kwargs.get('thumbprint', None) + self.to_update = kwargs.get('to_update', None) + self.host_type = kwargs.get('host_type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/host_name_ssl_state_py3.py b/azure-mgmt-web/azure/mgmt/web/models/host_name_ssl_state_py3.py new file mode 100644 index 000000000000..422e32c25371 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/host_name_ssl_state_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 true 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_deployment_info.py b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_deployment_info.py index c625f9361fb9..d0d634503293 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_deployment_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_deployment_info.py @@ -26,7 +26,7 @@ class HostingEnvironmentDeploymentInfo(Model): 'location': {'key': 'location', 'type': 'str'}, } - def __init__(self, name=None, location=None): - super(HostingEnvironmentDeploymentInfo, self).__init__() - self.name = name - self.location = location + def __init__(self, **kwargs): + super(HostingEnvironmentDeploymentInfo, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.location = kwargs.get('location', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_deployment_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_deployment_info_py3.py new file mode 100644 index 000000000000..10e6b5a03d4e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_deployment_info_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_diagnostics.py b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_diagnostics.py index 648e8704252a..26dc8c283fc7 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_diagnostics.py +++ b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_diagnostics.py @@ -26,7 +26,7 @@ class HostingEnvironmentDiagnostics(Model): 'diagnosics_output': {'key': 'diagnosicsOutput', 'type': 'str'}, } - def __init__(self, name=None, diagnosics_output=None): - super(HostingEnvironmentDiagnostics, self).__init__() - self.name = name - self.diagnosics_output = diagnosics_output + def __init__(self, **kwargs): + super(HostingEnvironmentDiagnostics, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.diagnosics_output = kwargs.get('diagnosics_output', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_diagnostics_py3.py b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_diagnostics_py3.py new file mode 100644 index 000000000000..35ecd49c8939 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_diagnostics_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HostingEnvironmentDiagnostics(Model): + """Diagnostics for an App Service Environment. + + :param name: Name/identifier of the diagnostics. + :type name: str + :param diagnosics_output: Diagnostics output. + :type diagnosics_output: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'diagnosics_output': {'key': 'diagnosicsOutput', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, diagnosics_output: str=None, **kwargs) -> None: + super(HostingEnvironmentDiagnostics, self).__init__(**kwargs) + self.name = name + self.diagnosics_output = diagnosics_output diff --git a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_profile.py b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_profile.py index f40f022aba2b..de68d8bc558e 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_profile.py +++ b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_profile.py @@ -37,8 +37,8 @@ class HostingEnvironmentProfile(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self, id=None): - super(HostingEnvironmentProfile, self).__init__() - self.id = id + def __init__(self, **kwargs): + super(HostingEnvironmentProfile, self).__init__(**kwargs) + self.id = kwargs.get('id', None) self.name = None self.type = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_profile_py3.py b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_profile_py3.py new file mode 100644 index 000000000000..1440d596bbdc --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/hosting_environment_profile_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/http_logs_config.py b/azure-mgmt-web/azure/mgmt/web/models/http_logs_config.py index 95cb408652f5..505bf25e8aab 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/http_logs_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/http_logs_config.py @@ -27,7 +27,7 @@ class HttpLogsConfig(Model): 'azure_blob_storage': {'key': 'azureBlobStorage', 'type': 'AzureBlobStorageHttpLogsConfig'}, } - def __init__(self, file_system=None, azure_blob_storage=None): - super(HttpLogsConfig, self).__init__() - self.file_system = file_system - self.azure_blob_storage = azure_blob_storage + def __init__(self, **kwargs): + super(HttpLogsConfig, self).__init__(**kwargs) + self.file_system = kwargs.get('file_system', None) + self.azure_blob_storage = kwargs.get('azure_blob_storage', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/http_logs_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/http_logs_config_py3.py new file mode 100644 index 000000000000..5169867f67c3 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/http_logs_config_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class HttpLogsConfig(Model): + """Http logs configuration. + + :param file_system: Http logs to file system configuration. + :type file_system: ~azure.mgmt.web.models.FileSystemHttpLogsConfig + :param azure_blob_storage: Http logs to azure blob storage configuration. + :type azure_blob_storage: + ~azure.mgmt.web.models.AzureBlobStorageHttpLogsConfig + """ + + _attribute_map = { + 'file_system': {'key': 'fileSystem', 'type': 'FileSystemHttpLogsConfig'}, + 'azure_blob_storage': {'key': 'azureBlobStorage', 'type': 'AzureBlobStorageHttpLogsConfig'}, + } + + def __init__(self, *, file_system=None, azure_blob_storage=None, **kwargs) -> None: + super(HttpLogsConfig, self).__init__(**kwargs) + self.file_system = file_system + self.azure_blob_storage = azure_blob_storage diff --git a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection.py b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection.py index 3f9b259f4082..7397552b22f8 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection.py +++ b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection.py @@ -69,13 +69,13 @@ class HybridConnection(ProxyOnlyResource): 'service_bus_suffix': {'key': 'properties.serviceBusSuffix', 'type': 'str'}, } - def __init__(self, kind=None, service_bus_namespace=None, relay_name=None, relay_arm_uri=None, hostname=None, port=None, send_key_name=None, send_key_value=None, service_bus_suffix=None): - super(HybridConnection, self).__init__(kind=kind) - 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 + def __init__(self, **kwargs): + super(HybridConnection, self).__init__(**kwargs) + self.service_bus_namespace = kwargs.get('service_bus_namespace', None) + self.relay_name = kwargs.get('relay_name', None) + self.relay_arm_uri = kwargs.get('relay_arm_uri', None) + self.hostname = kwargs.get('hostname', None) + self.port = kwargs.get('port', None) + self.send_key_name = kwargs.get('send_key_name', None) + self.send_key_value = kwargs.get('send_key_value', None) + self.service_bus_suffix = kwargs.get('service_bus_suffix', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_key.py b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_key.py index 6cf7f1f35bff..a0a0b0d9ac2e 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_key.py +++ b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_key.py @@ -50,7 +50,7 @@ class HybridConnectionKey(ProxyOnlyResource): 'send_key_value': {'key': 'properties.sendKeyValue', 'type': 'str'}, } - def __init__(self, kind=None): - super(HybridConnectionKey, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(HybridConnectionKey, self).__init__(**kwargs) self.send_key_name = None self.send_key_value = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_key_py3.py b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_key_py3.py new file mode 100644 index 000000000000..530723c95418 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_key_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_limits.py b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_limits.py index c0a32902b946..60a219ea069a 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_limits.py +++ b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_limits.py @@ -50,7 +50,7 @@ class HybridConnectionLimits(ProxyOnlyResource): 'maximum': {'key': 'properties.maximum', 'type': 'int'}, } - def __init__(self, kind=None): - super(HybridConnectionLimits, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(HybridConnectionLimits, self).__init__(**kwargs) self.current = None self.maximum = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_limits_py3.py b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_limits_py3.py new file mode 100644 index 000000000000..4049c9f85c0d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_limits_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class HybridConnectionLimits(ProxyOnlyResource): + """Hybrid Connection limits contract. This is used to return the plan limits + of Hybrid Connections. + + 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 current: The current number of Hybrid Connections. + :vartype current: int + :ivar maximum: The maximum number of Hybrid Connections allowed. + :vartype maximum: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'current': {'readonly': True}, + 'maximum': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'current': {'key': 'properties.current', 'type': 'int'}, + 'maximum': {'key': 'properties.maximum', 'type': 'int'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(HybridConnectionLimits, self).__init__(kind=kind, **kwargs) + self.current = None + self.maximum = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_py3.py b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_py3.py new file mode 100644 index 000000000000..6136525e9fb7 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/hybrid_connection_py3.py @@ -0,0 +1,81 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/identifier.py b/azure-mgmt-web/azure/mgmt/web/models/identifier.py index e1c7f9e1b847..061636f5e53d 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/identifier.py +++ b/azure-mgmt-web/azure/mgmt/web/models/identifier.py @@ -44,6 +44,6 @@ class Identifier(ProxyOnlyResource): 'identifier_id': {'key': 'properties.id', 'type': 'str'}, } - def __init__(self, kind=None, identifier_id=None): - super(Identifier, self).__init__(kind=kind) - self.identifier_id = identifier_id + def __init__(self, **kwargs): + super(Identifier, self).__init__(**kwargs) + self.identifier_id = kwargs.get('identifier_id', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/identifier_py3.py b/azure-mgmt-web/azure/mgmt/web/models/identifier_py3.py new file mode 100644 index 000000000000..12771f227839 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/identifier_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/ip_security_restriction.py b/azure-mgmt-web/azure/mgmt/web/models/ip_security_restriction.py index de6ad1d3c6ab..d74f523c3fe7 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/ip_security_restriction.py +++ b/azure-mgmt-web/azure/mgmt/web/models/ip_security_restriction.py @@ -15,11 +15,29 @@ class IpSecurityRestriction(Model): """IP security restriction on an app. - :param ip_address: IP address the security restriction is valid for. + All required parameters must be populated in order to send to Azure. + + :param ip_address: Required. IP address the security restriction is valid + for. + It can be in form of pure ipv4 address (required SubnetMask property) or + CIDR notation such as ipv4/mask (leading bit match). For CIDR, + SubnetMask property must not be specified. :type ip_address: str :param subnet_mask: Subnet mask for the range of IP addresses the restriction is valid for. :type subnet_mask: str + :param action: Allow or Deny access for this IP range. + :type action: str + :param tag: Defines what this IP filter will be used for. This is to + support IP filtering on proxies. Possible values include: 'Default', + 'XffProxy' + :type tag: str or ~azure.mgmt.web.models.IpFilterTag + :param priority: Priority of IP restriction rule. + :type priority: int + :param name: IP restriction rule name. + :type name: str + :param description: IP restriction rule description. + :type description: str """ _validation = { @@ -29,9 +47,19 @@ class IpSecurityRestriction(Model): _attribute_map = { 'ip_address': {'key': 'ipAddress', 'type': 'str'}, 'subnet_mask': {'key': 'subnetMask', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'IpFilterTag'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, } - def __init__(self, ip_address, subnet_mask=None): - super(IpSecurityRestriction, self).__init__() - self.ip_address = ip_address - self.subnet_mask = subnet_mask + def __init__(self, **kwargs): + super(IpSecurityRestriction, self).__init__(**kwargs) + self.ip_address = kwargs.get('ip_address', None) + self.subnet_mask = kwargs.get('subnet_mask', None) + self.action = kwargs.get('action', None) + self.tag = kwargs.get('tag', None) + self.priority = kwargs.get('priority', None) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/ip_security_restriction_py3.py b/azure-mgmt-web/azure/mgmt/web/models/ip_security_restriction_py3.py new file mode 100644 index 000000000000..a494599a9ba0 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/ip_security_restriction_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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. + It can be in form of pure ipv4 address (required SubnetMask property) or + CIDR notation such as ipv4/mask (leading bit match). For CIDR, + SubnetMask property must not be specified. + :type ip_address: str + :param subnet_mask: Subnet mask for the range of IP addresses the + restriction is valid for. + :type subnet_mask: str + :param action: Allow or Deny access for this IP range. + :type action: str + :param tag: Defines what this IP filter will be used for. This is to + support IP filtering on proxies. Possible values include: 'Default', + 'XffProxy' + :type tag: str or ~azure.mgmt.web.models.IpFilterTag + :param priority: Priority of IP restriction rule. + :type priority: int + :param name: IP restriction rule name. + :type name: str + :param description: IP restriction rule description. + :type description: str + """ + + _validation = { + 'ip_address': {'required': True}, + } + + _attribute_map = { + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'subnet_mask': {'key': 'subnetMask', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'IpFilterTag'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, ip_address: str, subnet_mask: str=None, action: str=None, tag=None, priority: int=None, name: str=None, description: str=None, **kwargs) -> None: + super(IpSecurityRestriction, self).__init__(**kwargs) + self.ip_address = ip_address + self.subnet_mask = subnet_mask + self.action = action + self.tag = tag + self.priority = priority + self.name = name + self.description = description diff --git a/azure-mgmt-web/azure/mgmt/web/models/localizable_string.py b/azure-mgmt-web/azure/mgmt/web/models/localizable_string.py index 05f0ad489a22..528d58067000 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/localizable_string.py +++ b/azure-mgmt-web/azure/mgmt/web/models/localizable_string.py @@ -26,7 +26,7 @@ class LocalizableString(Model): 'localized_value': {'key': 'localizedValue', 'type': 'str'}, } - def __init__(self, value=None, localized_value=None): - super(LocalizableString, self).__init__() - self.value = value - self.localized_value = localized_value + def __init__(self, **kwargs): + super(LocalizableString, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.localized_value = kwargs.get('localized_value', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/localizable_string_py3.py b/azure-mgmt-web/azure/mgmt/web/models/localizable_string_py3.py new file mode 100644 index 000000000000..156fcfd26d33 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/localizable_string_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/log_specification.py b/azure-mgmt-web/azure/mgmt/web/models/log_specification.py new file mode 100644 index 000000000000..77ec75c5496a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/log_specification.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogSpecification(Model): + """Log Definition of a single resource metric. + + :param name: + :type name: str + :param display_name: + :type display_name: str + :param blob_duration: + :type blob_duration: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LogSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.blob_duration = kwargs.get('blob_duration', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/log_specification_py3.py b/azure-mgmt-web/azure/mgmt/web/models/log_specification_py3.py new file mode 100644 index 000000000000..8c9ae74d7f86 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/log_specification_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class LogSpecification(Model): + """Log Definition of a single resource metric. + + :param name: + :type name: str + :param display_name: + :type display_name: str + :param blob_duration: + :type blob_duration: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, blob_duration: str=None, **kwargs) -> None: + super(LogSpecification, self).__init__(**kwargs) + self.name = name + self.display_name = display_name + self.blob_duration = blob_duration diff --git a/azure-mgmt-web/azure/mgmt/web/models/managed_service_identity.py b/azure-mgmt-web/azure/mgmt/web/models/managed_service_identity.py index 1b611d7b49f2..d9f06eedc9e5 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/managed_service_identity.py +++ b/azure-mgmt-web/azure/mgmt/web/models/managed_service_identity.py @@ -18,12 +18,15 @@ class ManagedServiceIdentity(Model): Variables are only populated by the server, and will be ignored when sending a request. - :param type: Type of managed service identity. - :type type: object + :param type: Type of managed service identity. Possible values include: + 'SystemAssigned', 'UserAssigned' + :type type: str or ~azure.mgmt.web.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 + :param identity_ids: Array of UserAssigned managed service identities. + :type identity_ids: list[str] """ _validation = { @@ -32,13 +35,15 @@ class ManagedServiceIdentity(Model): } _attribute_map = { - 'type': {'key': 'type', 'type': 'object'}, + 'type': {'key': 'type', 'type': 'str'}, 'tenant_id': {'key': 'tenantId', 'type': 'str'}, 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'identity_ids': {'key': 'identityIds', 'type': '[str]'}, } - def __init__(self, type=None): - super(ManagedServiceIdentity, self).__init__() - self.type = type + def __init__(self, **kwargs): + super(ManagedServiceIdentity, self).__init__(**kwargs) + self.type = kwargs.get('type', None) self.tenant_id = None self.principal_id = None + self.identity_ids = kwargs.get('identity_ids', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/managed_service_identity_py3.py b/azure-mgmt-web/azure/mgmt/web/models/managed_service_identity_py3.py new file mode 100644 index 000000000000..ae59c0b21029 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/managed_service_identity_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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', 'UserAssigned' + :type type: str or ~azure.mgmt.web.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 + :param identity_ids: Array of UserAssigned managed service identities. + :type identity_ids: list[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'}, + 'identity_ids': {'key': 'identityIds', 'type': '[str]'}, + } + + def __init__(self, *, type=None, identity_ids=None, **kwargs) -> None: + super(ManagedServiceIdentity, self).__init__(**kwargs) + self.type = type + self.tenant_id = None + self.principal_id = None + self.identity_ids = identity_ids diff --git a/azure-mgmt-web/azure/mgmt/web/models/metric_availabilily.py b/azure-mgmt-web/azure/mgmt/web/models/metric_availabilily.py index 7524fb413748..2b6ea5bbedd4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/metric_availabilily.py +++ b/azure-mgmt-web/azure/mgmt/web/models/metric_availabilily.py @@ -26,7 +26,7 @@ class MetricAvailabilily(Model): 'retention': {'key': 'retention', 'type': 'str'}, } - def __init__(self, time_grain=None, retention=None): - super(MetricAvailabilily, self).__init__() - self.time_grain = time_grain - self.retention = retention + def __init__(self, **kwargs): + super(MetricAvailabilily, self).__init__(**kwargs) + self.time_grain = kwargs.get('time_grain', None) + self.retention = kwargs.get('retention', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/metric_availabilily_py3.py b/azure-mgmt-web/azure/mgmt/web/models/metric_availabilily_py3.py new file mode 100644 index 000000000000..1e9eb6c69e48 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/metric_availabilily_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MetricAvailabilily(Model): + """Metric availability and retention. + + :param time_grain: Time grain. + :type time_grain: str + :param retention: Retention period for the current time grain. + :type retention: str + """ + + _attribute_map = { + 'time_grain': {'key': 'timeGrain', 'type': 'str'}, + 'retention': {'key': 'retention', 'type': 'str'}, + } + + def __init__(self, *, time_grain: str=None, retention: str=None, **kwargs) -> None: + super(MetricAvailabilily, self).__init__(**kwargs) + self.time_grain = time_grain + self.retention = retention diff --git a/azure-mgmt-web/azure/mgmt/web/models/metric_availability.py b/azure-mgmt-web/azure/mgmt/web/models/metric_availability.py index 36213f96530a..895c406bbbee 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/metric_availability.py +++ b/azure-mgmt-web/azure/mgmt/web/models/metric_availability.py @@ -26,7 +26,7 @@ class MetricAvailability(Model): 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, } - def __init__(self, time_grain=None, blob_duration=None): - super(MetricAvailability, self).__init__() - self.time_grain = time_grain - self.blob_duration = blob_duration + def __init__(self, **kwargs): + super(MetricAvailability, self).__init__(**kwargs) + self.time_grain = kwargs.get('time_grain', None) + self.blob_duration = kwargs.get('blob_duration', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/metric_availability_py3.py b/azure-mgmt-web/azure/mgmt/web/models/metric_availability_py3.py new file mode 100644 index 000000000000..67057c02aa1f --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/metric_availability_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/metric_definition.py b/azure-mgmt-web/azure/mgmt/web/models/metric_definition.py index 2b1ca6a6fcd9..5dbd639fe069 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/metric_definition.py +++ b/azure-mgmt-web/azure/mgmt/web/models/metric_definition.py @@ -26,8 +26,6 @@ class MetricDefinition(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :ivar metric_definition_name: Name of the metric. - :vartype metric_definition_name: str :ivar unit: Unit of the metric. :vartype unit: str :ivar primary_aggregation_type: Primary aggregation type. @@ -44,7 +42,6 @@ class MetricDefinition(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'metric_definition_name': {'readonly': True}, 'unit': {'readonly': True}, 'primary_aggregation_type': {'readonly': True}, 'metric_availabilities': {'readonly': True}, @@ -56,16 +53,14 @@ class MetricDefinition(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'metric_definition_name': {'key': 'properties.name', 'type': 'str'}, 'unit': {'key': 'properties.unit', 'type': 'str'}, 'primary_aggregation_type': {'key': 'properties.primaryAggregationType', 'type': 'str'}, 'metric_availabilities': {'key': 'properties.metricAvailabilities', 'type': '[MetricAvailabilily]'}, 'display_name': {'key': 'properties.displayName', 'type': 'str'}, } - def __init__(self, kind=None): - super(MetricDefinition, self).__init__(kind=kind) - self.metric_definition_name = None + def __init__(self, **kwargs): + super(MetricDefinition, self).__init__(**kwargs) self.unit = None self.primary_aggregation_type = None self.metric_availabilities = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/metric_definition_py3.py b/azure-mgmt-web/azure/mgmt/web/models/metric_definition_py3.py new file mode 100644 index 000000000000..0771757d742d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/metric_definition_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class MetricDefinition(ProxyOnlyResource): + """Metadata for a metric. + + 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 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.models.MetricAvailabilily] + :ivar display_name: Friendly name shown in the UI. + :vartype display_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'unit': {'readonly': True}, + 'primary_aggregation_type': {'readonly': True}, + 'metric_availabilities': {'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'}, + 'unit': {'key': 'properties.unit', 'type': 'str'}, + 'primary_aggregation_type': {'key': 'properties.primaryAggregationType', 'type': 'str'}, + 'metric_availabilities': {'key': 'properties.metricAvailabilities', 'type': '[MetricAvailabilily]'}, + 'display_name': {'key': 'properties.displayName', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(MetricDefinition, self).__init__(kind=kind, **kwargs) + self.unit = None + self.primary_aggregation_type = None + self.metric_availabilities = None + self.display_name = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/metric_specification.py b/azure-mgmt-web/azure/mgmt/web/models/metric_specification.py index 5d7b06ad95cf..2238547b4a22 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/metric_specification.py +++ b/azure-mgmt-web/azure/mgmt/web/models/metric_specification.py @@ -65,20 +65,20 @@ class MetricSpecification(Model): 'availabilities': {'key': 'availabilities', 'type': '[MetricAvailability]'}, } - def __init__(self, name=None, display_name=None, display_description=None, unit=None, aggregation_type=None, supports_instance_level_aggregation=None, enable_regional_mdm_account=None, source_mdm_account=None, source_mdm_namespace=None, metric_filter_pattern=None, fill_gap_with_zero=None, is_internal=None, dimensions=None, category=None, availabilities=None): - super(MetricSpecification, self).__init__() - 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 + def __init__(self, **kwargs): + super(MetricSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.display_description = kwargs.get('display_description', None) + self.unit = kwargs.get('unit', None) + self.aggregation_type = kwargs.get('aggregation_type', None) + self.supports_instance_level_aggregation = kwargs.get('supports_instance_level_aggregation', None) + self.enable_regional_mdm_account = kwargs.get('enable_regional_mdm_account', None) + self.source_mdm_account = kwargs.get('source_mdm_account', None) + self.source_mdm_namespace = kwargs.get('source_mdm_namespace', None) + self.metric_filter_pattern = kwargs.get('metric_filter_pattern', None) + self.fill_gap_with_zero = kwargs.get('fill_gap_with_zero', None) + self.is_internal = kwargs.get('is_internal', None) + self.dimensions = kwargs.get('dimensions', None) + self.category = kwargs.get('category', None) + self.availabilities = kwargs.get('availabilities', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/metric_specification_py3.py b/azure-mgmt-web/azure/mgmt/web/models/metric_specification_py3.py new file mode 100644 index 000000000000..95e68beb7c4e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/metric_specification_py3.py @@ -0,0 +1,84 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.Dimension] + :param category: + :type category: str + :param availabilities: + :type availabilities: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_request.py b/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_request.py index b9a98043e997..92a54e815858 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_request.py @@ -18,6 +18,8 @@ class MigrateMySqlRequest(ProxyOnlyResource): 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. @@ -26,10 +28,11 @@ class MigrateMySqlRequest(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param connection_string: Connection string to the remote MySQL database. + :param connection_string: Required. Connection string to the remote MySQL + database. :type connection_string: str - :param migration_type: The type of migration operation to be done. - Possible values include: 'LocalToRemote', 'RemoteToLocal' + :param migration_type: Required. The type of migration operation to be + done. Possible values include: 'LocalToRemote', 'RemoteToLocal' :type migration_type: str or ~azure.mgmt.web.models.MySqlMigrationType """ @@ -50,7 +53,7 @@ class MigrateMySqlRequest(ProxyOnlyResource): 'migration_type': {'key': 'properties.migrationType', 'type': 'MySqlMigrationType'}, } - def __init__(self, connection_string, migration_type, kind=None): - super(MigrateMySqlRequest, self).__init__(kind=kind) - self.connection_string = connection_string - self.migration_type = migration_type + def __init__(self, **kwargs): + super(MigrateMySqlRequest, self).__init__(**kwargs) + self.connection_string = kwargs.get('connection_string', None) + self.migration_type = kwargs.get('migration_type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_request_py3.py new file mode 100644 index 000000000000..6b0f07c19f7e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_request_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class MigrateMySqlRequest(ProxyOnlyResource): + """MySQL migration request. + + 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 connection_string: Required. Connection string to the remote MySQL + database. + :type connection_string: str + :param migration_type: Required. The type of migration operation to be + done. Possible values include: 'LocalToRemote', 'RemoteToLocal' + :type migration_type: str or ~azure.mgmt.web.models.MySqlMigrationType + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'connection_string': {'required': True}, + 'migration_type': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'connection_string': {'key': 'properties.connectionString', 'type': 'str'}, + 'migration_type': {'key': 'properties.migrationType', 'type': 'MySqlMigrationType'}, + } + + def __init__(self, *, connection_string: str, migration_type, kind: str=None, **kwargs) -> None: + super(MigrateMySqlRequest, self).__init__(kind=kind, **kwargs) + self.connection_string = connection_string + self.migration_type = migration_type diff --git a/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_status.py b/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_status.py index e0842f2b4f33..9970ba240603 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_status.py +++ b/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_status.py @@ -55,8 +55,8 @@ class MigrateMySqlStatus(ProxyOnlyResource): 'local_my_sql_enabled': {'key': 'properties.localMySqlEnabled', 'type': 'bool'}, } - def __init__(self, kind=None): - super(MigrateMySqlStatus, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(MigrateMySqlStatus, self).__init__(**kwargs) self.migration_operation_status = None self.operation_id = None self.local_my_sql_enabled = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_status_py3.py b/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_status_py3.py new file mode 100644 index 000000000000..e35882fcd27d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/migrate_my_sql_status_py3.py @@ -0,0 +1,62 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class MigrateMySqlStatus(ProxyOnlyResource): + """MySQL migration status. + + 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 migration_operation_status: Status of the migration task. Possible + values include: 'InProgress', 'Failed', 'Succeeded', 'TimedOut', 'Created' + :vartype migration_operation_status: str or + ~azure.mgmt.web.models.OperationStatus + :ivar operation_id: Operation ID for the migration task. + :vartype operation_id: str + :ivar local_my_sql_enabled: True if the web app has in app MySql enabled + :vartype local_my_sql_enabled: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'migration_operation_status': {'readonly': True}, + 'operation_id': {'readonly': True}, + 'local_my_sql_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'}, + 'migration_operation_status': {'key': 'properties.migrationOperationStatus', 'type': 'OperationStatus'}, + 'operation_id': {'key': 'properties.operationId', 'type': 'str'}, + 'local_my_sql_enabled': {'key': 'properties.localMySqlEnabled', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(MigrateMySqlStatus, self).__init__(kind=kind, **kwargs) + self.migration_operation_status = None + self.operation_id = None + self.local_my_sql_enabled = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy.py b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy.py index 28c4c4594ebd..1a481f2596fc 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy.py +++ b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy.py @@ -72,12 +72,12 @@ class MSDeploy(ProxyOnlyResource): 'app_offline': {'key': 'properties.appOffline', 'type': 'bool'}, } - def __init__(self, kind=None, package_uri=None, connection_string=None, db_type=None, set_parameters_xml_file_uri=None, set_parameters=None, skip_app_data=None, app_offline=None): - super(MSDeploy, self).__init__(kind=kind) - self.package_uri = package_uri - self.connection_string = connection_string - self.db_type = db_type - self.set_parameters_xml_file_uri = set_parameters_xml_file_uri - self.set_parameters = set_parameters - self.skip_app_data = skip_app_data - self.app_offline = app_offline + def __init__(self, **kwargs): + super(MSDeploy, self).__init__(**kwargs) + self.package_uri = kwargs.get('package_uri', None) + self.connection_string = kwargs.get('connection_string', None) + self.db_type = kwargs.get('db_type', None) + self.set_parameters_xml_file_uri = kwargs.get('set_parameters_xml_file_uri', None) + self.set_parameters = kwargs.get('set_parameters', None) + self.skip_app_data = kwargs.get('skip_app_data', None) + self.app_offline = kwargs.get('app_offline', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log.py b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log.py index df7088ddf559..59b147b5285f 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log.py +++ b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log.py @@ -45,6 +45,6 @@ class MSDeployLog(ProxyOnlyResource): 'entries': {'key': 'properties.entries', 'type': '[MSDeployLogEntry]'}, } - def __init__(self, kind=None): - super(MSDeployLog, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(MSDeployLog, self).__init__(**kwargs) self.entries = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_entry.py b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_entry.py index 8037d67f531d..0995ed12ee4a 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_entry.py +++ b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_entry.py @@ -39,8 +39,8 @@ class MSDeployLogEntry(Model): 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self): - super(MSDeployLogEntry, self).__init__() + def __init__(self, **kwargs): + super(MSDeployLogEntry, self).__init__(**kwargs) self.time = None self.type = None self.message = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_entry_py3.py b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_entry_py3.py new file mode 100644 index 000000000000..5b45f11a6cbb --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_entry_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class MSDeployLogEntry(Model): + """MSDeploy log entry. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar time: Timestamp of log entry + :vartype time: datetime + :ivar type: Log entry type. Possible values include: 'Message', 'Warning', + 'Error' + :vartype type: str or ~azure.mgmt.web.models.MSDeployLogEntryType + :ivar message: Log entry message + :vartype message: str + """ + + _validation = { + 'time': {'readonly': True}, + 'type': {'readonly': True}, + 'message': {'readonly': True}, + } + + _attribute_map = { + 'time': {'key': 'time', 'type': 'iso-8601'}, + 'type': {'key': 'type', 'type': 'MSDeployLogEntryType'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(MSDeployLogEntry, self).__init__(**kwargs) + self.time = None + self.type = None + self.message = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_py3.py b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_py3.py new file mode 100644 index 000000000000..9a087a46e372 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_log_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class MSDeployLog(ProxyOnlyResource): + """MSDeploy log. + + 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 entries: List of log entry messages + :vartype entries: list[~azure.mgmt.web.models.MSDeployLogEntry] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'entries': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'entries': {'key': 'properties.entries', 'type': '[MSDeployLogEntry]'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(MSDeployLog, self).__init__(kind=kind, **kwargs) + self.entries = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_py3.py b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_py3.py new file mode 100644 index 000000000000..13c3a742dc66 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_py3.py @@ -0,0 +1,83 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class MSDeploy(ProxyOnlyResource): + """MSDeploy ARM PUT information. + + 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 package_uri: Package URI + :type package_uri: str + :param connection_string: SQL Connection String + :type connection_string: str + :param db_type: Database Type + :type db_type: str + :param set_parameters_xml_file_uri: URI of MSDeploy Parameters file. Must + not be set if SetParameters is used. + :type set_parameters_xml_file_uri: str + :param set_parameters: MSDeploy Parameters. Must not be set if + SetParametersXmlFileUri is used. + :type set_parameters: dict[str, str] + :param skip_app_data: Controls whether the MSDeploy operation skips the + App_Data directory. + If set to true, the existing App_Data directory on the + destination + will not be deleted, and any App_Data directory in the source will be + ignored. + Setting is false by default. + :type skip_app_data: bool + :param app_offline: Sets the AppOffline rule while the MSDeploy operation + executes. + Setting is false by default. + :type app_offline: bool + """ + + _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'}, + 'package_uri': {'key': 'properties.packageUri', 'type': 'str'}, + 'connection_string': {'key': 'properties.connectionString', 'type': 'str'}, + 'db_type': {'key': 'properties.dbType', 'type': 'str'}, + 'set_parameters_xml_file_uri': {'key': 'properties.setParametersXmlFileUri', 'type': 'str'}, + 'set_parameters': {'key': 'properties.setParameters', 'type': '{str}'}, + 'skip_app_data': {'key': 'properties.skipAppData', 'type': 'bool'}, + 'app_offline': {'key': 'properties.appOffline', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, package_uri: str=None, connection_string: str=None, db_type: str=None, set_parameters_xml_file_uri: str=None, set_parameters=None, skip_app_data: bool=None, app_offline: bool=None, **kwargs) -> None: + super(MSDeploy, self).__init__(kind=kind, **kwargs) + self.package_uri = package_uri + self.connection_string = connection_string + self.db_type = db_type + self.set_parameters_xml_file_uri = set_parameters_xml_file_uri + self.set_parameters = set_parameters + self.skip_app_data = skip_app_data + self.app_offline = app_offline diff --git a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_status.py b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_status.py index d18f357a754d..eecea2c691af 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_status.py +++ b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_status.py @@ -63,8 +63,8 @@ class MSDeployStatus(ProxyOnlyResource): 'complete': {'key': 'properties.complete', 'type': 'bool'}, } - def __init__(self, kind=None): - super(MSDeployStatus, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(MSDeployStatus, self).__init__(**kwargs) self.deployer = None self.provisioning_state = None self.start_time = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_status_py3.py b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_status_py3.py new file mode 100644 index 000000000000..5a45d0afa408 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/ms_deploy_status_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class MSDeployStatus(ProxyOnlyResource): + """MSDeploy ARM response. + + 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 deployer: Username of deployer + :vartype deployer: str + :ivar provisioning_state: Provisioning state. Possible values include: + 'accepted', 'running', 'succeeded', 'failed', 'canceled' + :vartype provisioning_state: str or + ~azure.mgmt.web.models.MSDeployProvisioningState + :ivar start_time: Start time of deploy operation + :vartype start_time: datetime + :ivar end_time: End time of deploy operation + :vartype end_time: datetime + :ivar complete: Whether the deployment operation has completed + :vartype complete: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'deployer': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'start_time': {'readonly': True}, + 'end_time': {'readonly': True}, + 'complete': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'deployer': {'key': 'properties.deployer', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'MSDeployProvisioningState'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'properties.endTime', 'type': 'iso-8601'}, + 'complete': {'key': 'properties.complete', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(MSDeployStatus, self).__init__(kind=kind, **kwargs) + self.deployer = None + self.provisioning_state = None + self.start_time = None + self.end_time = None + self.complete = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/name_identifier.py b/azure-mgmt-web/azure/mgmt/web/models/name_identifier.py index e539125ff5d2..cfc47d475f44 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/name_identifier.py +++ b/azure-mgmt-web/azure/mgmt/web/models/name_identifier.py @@ -23,6 +23,6 @@ class NameIdentifier(Model): 'name': {'key': 'name', 'type': 'str'}, } - def __init__(self, name=None): - super(NameIdentifier, self).__init__() - self.name = name + def __init__(self, **kwargs): + super(NameIdentifier, self).__init__(**kwargs) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/name_identifier_py3.py b/azure-mgmt-web/azure/mgmt/web/models/name_identifier_py3.py new file mode 100644 index 000000000000..5eb7d2fa73f1 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/name_identifier_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/name_value_pair.py b/azure-mgmt-web/azure/mgmt/web/models/name_value_pair.py index 649b62089621..c199f066bb33 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/name_value_pair.py +++ b/azure-mgmt-web/azure/mgmt/web/models/name_value_pair.py @@ -26,7 +26,7 @@ class NameValuePair(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, name=None, value=None): - super(NameValuePair, self).__init__() - self.name = name - self.value = value + def __init__(self, **kwargs): + super(NameValuePair, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/name_value_pair_py3.py b/azure-mgmt-web/azure/mgmt/web/models/name_value_pair_py3.py new file mode 100644 index 000000000000..5c5ff6300715 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/name_value_pair_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/network_access_control_entry.py b/azure-mgmt-web/azure/mgmt/web/models/network_access_control_entry.py index d6688e09ad4e..2a0409421970 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/network_access_control_entry.py +++ b/azure-mgmt-web/azure/mgmt/web/models/network_access_control_entry.py @@ -32,9 +32,9 @@ class NetworkAccessControlEntry(Model): 'remote_subnet': {'key': 'remoteSubnet', 'type': 'str'}, } - def __init__(self, action=None, description=None, order=None, remote_subnet=None): - super(NetworkAccessControlEntry, self).__init__() - self.action = action - self.description = description - self.order = order - self.remote_subnet = remote_subnet + def __init__(self, **kwargs): + super(NetworkAccessControlEntry, self).__init__(**kwargs) + self.action = kwargs.get('action', None) + self.description = kwargs.get('description', None) + self.order = kwargs.get('order', None) + self.remote_subnet = kwargs.get('remote_subnet', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/network_access_control_entry_py3.py b/azure-mgmt-web/azure/mgmt/web/models/network_access_control_entry_py3.py new file mode 100644 index 000000000000..7bec93865b8a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/network_access_control_entry_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NetworkAccessControlEntry(Model): + """Network access control entry. + + :param action: Action object. Possible values include: 'Permit', 'Deny' + :type action: str or ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/network_features.py b/azure-mgmt-web/azure/mgmt/web/models/network_features.py index 332bde6a2de7..9e6e0472f730 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/network_features.py +++ b/azure-mgmt-web/azure/mgmt/web/models/network_features.py @@ -60,8 +60,8 @@ class NetworkFeatures(ProxyOnlyResource): 'hybrid_connections_v2': {'key': 'properties.hybridConnectionsV2', 'type': '[HybridConnection]'}, } - def __init__(self, kind=None): - super(NetworkFeatures, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(NetworkFeatures, self).__init__(**kwargs) self.virtual_network_name = None self.virtual_network_connection = None self.hybrid_connections = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/network_features_py3.py b/azure-mgmt-web/azure/mgmt/web/models/network_features_py3.py new file mode 100644 index 000000000000..c5913cb9e91b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/network_features_py3.py @@ -0,0 +1,68 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class NetworkFeatures(ProxyOnlyResource): + """Full view of network features for an app (presently VNET integration and + Hybrid Connections). + + 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 virtual_network_name: The Virtual Network name. + :vartype virtual_network_name: str + :ivar virtual_network_connection: The Virtual Network summary view. + :vartype virtual_network_connection: ~azure.mgmt.web.models.VnetInfo + :ivar hybrid_connections: The Hybrid Connections summary view. + :vartype hybrid_connections: + list[~azure.mgmt.web.models.RelayServiceConnectionEntity] + :ivar hybrid_connections_v2: The Hybrid Connection V2 (Service Bus) view. + :vartype hybrid_connections_v2: + list[~azure.mgmt.web.models.HybridConnection] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_name': {'readonly': True}, + 'virtual_network_connection': {'readonly': True}, + 'hybrid_connections': {'readonly': True}, + 'hybrid_connections_v2': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'virtual_network_name': {'key': 'properties.virtualNetworkName', 'type': 'str'}, + 'virtual_network_connection': {'key': 'properties.virtualNetworkConnection', 'type': 'VnetInfo'}, + 'hybrid_connections': {'key': 'properties.hybridConnections', 'type': '[RelayServiceConnectionEntity]'}, + 'hybrid_connections_v2': {'key': 'properties.hybridConnectionsV2', 'type': '[HybridConnection]'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(NetworkFeatures, self).__init__(kind=kind, **kwargs) + self.virtual_network_name = None + self.virtual_network_connection = None + self.hybrid_connections = None + self.hybrid_connections_v2 = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/operation.py b/azure-mgmt-web/azure/mgmt/web/models/operation.py index 36d0e4253d22..4decbf424068 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/operation.py +++ b/azure-mgmt-web/azure/mgmt/web/models/operation.py @@ -45,13 +45,13 @@ class Operation(Model): 'geo_master_operation_id': {'key': 'geoMasterOperationId', 'type': 'str'}, } - def __init__(self, id=None, name=None, status=None, errors=None, created_time=None, modified_time=None, expiration_time=None, geo_master_operation_id=None): - super(Operation, self).__init__() - 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 + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = kwargs.get('name', None) + self.status = kwargs.get('status', None) + self.errors = kwargs.get('errors', None) + self.created_time = kwargs.get('created_time', None) + self.modified_time = kwargs.get('modified_time', None) + self.expiration_time = kwargs.get('expiration_time', None) + self.geo_master_operation_id = kwargs.get('geo_master_operation_id', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/operation_py3.py b/azure-mgmt-web/azure/mgmt/web/models/operation_py3.py new file mode 100644 index 000000000000..2c22ca4513d3 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/operation_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """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.models.OperationStatus + :param errors: Any errors associate with the operation. + :type errors: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_response.py b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_response.py index b3e8a5864d52..13b539362a90 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_response.py +++ b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_response.py @@ -29,8 +29,8 @@ class PerfMonResponse(Model): 'data': {'key': 'data', 'type': 'PerfMonSet'}, } - def __init__(self, code=None, message=None, data=None): - super(PerfMonResponse, self).__init__() - self.code = code - self.message = message - self.data = data + def __init__(self, **kwargs): + super(PerfMonResponse, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.data = kwargs.get('data', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_response_py3.py b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_response_py3.py new file mode 100644 index 000000000000..7c4f8a6d6026 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_response_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerfMonResponse(Model): + """Performance monitor API response. + + :param code: The response code. + :type code: str + :param message: The message. + :type message: str + :param data: The performance monitor counters. + :type data: ~azure.mgmt.web.models.PerfMonSet + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'data': {'key': 'data', 'type': 'PerfMonSet'}, + } + + def __init__(self, *, code: str=None, message: str=None, data=None, **kwargs) -> None: + super(PerfMonResponse, self).__init__(**kwargs) + self.code = code + self.message = message + self.data = data diff --git a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_sample.py b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_sample.py index bdff69d727cd..83a1d71f9571 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_sample.py +++ b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_sample.py @@ -21,20 +21,16 @@ class PerfMonSample(Model): :type instance_name: str :param value: Value of counter at a certain time. :type value: float - :param core_count: Core Count of worker. Not a data member - :type core_count: int """ _attribute_map = { 'time': {'key': 'time', 'type': 'iso-8601'}, 'instance_name': {'key': 'instanceName', 'type': 'str'}, 'value': {'key': 'value', 'type': 'float'}, - 'core_count': {'key': 'coreCount', 'type': 'int'}, } - def __init__(self, time=None, instance_name=None, value=None, core_count=None): - super(PerfMonSample, self).__init__() - self.time = time - self.instance_name = instance_name - self.value = value - self.core_count = core_count + def __init__(self, **kwargs): + super(PerfMonSample, self).__init__(**kwargs) + self.time = kwargs.get('time', None) + self.instance_name = kwargs.get('instance_name', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_sample_py3.py b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_sample_py3.py new file mode 100644 index 000000000000..106ee15ca2fd --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_sample_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerfMonSample(Model): + """Performance monitor sample in a set. + + :param time: Point in time for which counter was measured. + :type time: datetime + :param instance_name: Name of the server on which the measurement is made. + :type instance_name: str + :param value: Value of counter at a certain time. + :type value: float + """ + + _attribute_map = { + 'time': {'key': 'time', 'type': 'iso-8601'}, + 'instance_name': {'key': 'instanceName', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'float'}, + } + + def __init__(self, *, time=None, instance_name: str=None, value: float=None, **kwargs) -> None: + super(PerfMonSample, self).__init__(**kwargs) + self.time = time + self.instance_name = instance_name + self.value = value diff --git a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_set.py b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_set.py index 6325d0cf6cfd..dc21bb4f164a 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_set.py +++ b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_set.py @@ -35,10 +35,10 @@ class PerfMonSet(Model): 'values': {'key': 'values', 'type': '[PerfMonSample]'}, } - def __init__(self, name=None, start_time=None, end_time=None, time_grain=None, values=None): - super(PerfMonSet, self).__init__() - self.name = name - self.start_time = start_time - self.end_time = end_time - self.time_grain = time_grain - self.values = values + def __init__(self, **kwargs): + super(PerfMonSet, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.time_grain = kwargs.get('time_grain', None) + self.values = kwargs.get('values', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/perf_mon_set_py3.py b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_set_py3.py new file mode 100644 index 000000000000..18e840f54568 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/perf_mon_set_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerfMonSet(Model): + """Metric information. + + :param name: Unique key name of the counter. + :type name: 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. + :type time_grain: str + :param values: Collection of workers that are active during this time. + :type values: list[~azure.mgmt.web.models.PerfMonSample] + """ + + _attribute_map = { + 'name': {'key': 'name', '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': '[PerfMonSample]'}, + } + + def __init__(self, *, name: str=None, start_time=None, end_time=None, time_grain: str=None, values=None, **kwargs) -> None: + super(PerfMonSet, self).__init__(**kwargs) + self.name = name + self.start_time = start_time + self.end_time = end_time + self.time_grain = time_grain + self.values = values diff --git a/azure-mgmt-web/azure/mgmt/web/models/premier_add_on.py b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on.py index 7efae4b643eb..e04bf6d23140 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/premier_add_on.py +++ b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on.py @@ -18,13 +18,15 @@ class PremierAddOn(Resource): 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: Resource Location. + :param location: Required. Resource Location. :type location: str :ivar type: Resource type. :vartype type: str @@ -36,12 +38,6 @@ class PremierAddOn(Resource): :type product: str :param vendor: Premier add on Vendor. :type vendor: str - :param premier_add_on_name: Premier add on Name. - :type premier_add_on_name: str - :param premier_add_on_location: Premier add on Location. - :type premier_add_on_location: str - :param premier_add_on_tags: Premier add on Tags. - :type premier_add_on_tags: dict[str, str] :param marketplace_publisher: Premier add on Marketplace publisher. :type marketplace_publisher: str :param marketplace_offer: Premier add on Marketplace offer. @@ -65,20 +61,14 @@ class PremierAddOn(Resource): 'sku': {'key': 'properties.sku', 'type': 'str'}, 'product': {'key': 'properties.product', 'type': 'str'}, 'vendor': {'key': 'properties.vendor', 'type': 'str'}, - 'premier_add_on_name': {'key': 'properties.name', 'type': 'str'}, - 'premier_add_on_location': {'key': 'properties.location', 'type': 'str'}, - 'premier_add_on_tags': {'key': 'properties.tags', 'type': '{str}'}, 'marketplace_publisher': {'key': 'properties.marketplacePublisher', 'type': 'str'}, 'marketplace_offer': {'key': 'properties.marketplaceOffer', 'type': 'str'}, } - def __init__(self, location, kind=None, tags=None, sku=None, product=None, vendor=None, premier_add_on_name=None, premier_add_on_location=None, premier_add_on_tags=None, marketplace_publisher=None, marketplace_offer=None): - super(PremierAddOn, self).__init__(kind=kind, location=location, tags=tags) - self.sku = sku - self.product = product - self.vendor = vendor - self.premier_add_on_name = premier_add_on_name - self.premier_add_on_location = premier_add_on_location - self.premier_add_on_tags = premier_add_on_tags - self.marketplace_publisher = marketplace_publisher - self.marketplace_offer = marketplace_offer + def __init__(self, **kwargs): + super(PremierAddOn, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.product = kwargs.get('product', None) + self.vendor = kwargs.get('vendor', None) + self.marketplace_publisher = kwargs.get('marketplace_publisher', None) + self.marketplace_offer = kwargs.get('marketplace_offer', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_offer.py b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_offer.py index 4fb08ec1e518..d2cbd4494680 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_offer.py +++ b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_offer.py @@ -32,8 +32,6 @@ class PremierAddOnOffer(ProxyOnlyResource): :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: true if promotion code is required; otherwise, false. :type promo_code_required: bool @@ -68,7 +66,6 @@ class PremierAddOnOffer(ProxyOnlyResource): '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'}, @@ -78,16 +75,15 @@ class PremierAddOnOffer(ProxyOnlyResource): 'marketplace_offer': {'key': 'properties.marketplaceOffer', 'type': 'str'}, } - def __init__(self, kind=None, sku=None, product=None, vendor=None, premier_add_on_offer_name=None, promo_code_required=None, quota=None, web_hosting_plan_restrictions=None, privacy_policy_url=None, legal_terms_url=None, marketplace_publisher=None, marketplace_offer=None): - super(PremierAddOnOffer, self).__init__(kind=kind) - 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 + def __init__(self, **kwargs): + super(PremierAddOnOffer, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.product = kwargs.get('product', None) + self.vendor = kwargs.get('vendor', None) + self.promo_code_required = kwargs.get('promo_code_required', None) + self.quota = kwargs.get('quota', None) + self.web_hosting_plan_restrictions = kwargs.get('web_hosting_plan_restrictions', None) + self.privacy_policy_url = kwargs.get('privacy_policy_url', None) + self.legal_terms_url = kwargs.get('legal_terms_url', None) + self.marketplace_publisher = kwargs.get('marketplace_publisher', None) + self.marketplace_offer = kwargs.get('marketplace_offer', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_offer_py3.py b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_offer_py3.py new file mode 100644 index 000000000000..b32044596b64 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_offer_py3.py @@ -0,0 +1,89 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 promo_code_required: true if promotion code is + required; otherwise, false. + :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.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'}, + '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, 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_patch_resource.py b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_patch_resource.py new file mode 100644 index 000000000000..2365c7546578 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_patch_resource.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +class PremierAddOnPatchResource(ProxyOnlyResource): + """ARM resource for a PremierAddOn. + + 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 Product. + :type product: str + :param vendor: Premier add on Vendor. + :type vendor: str + :param marketplace_publisher: Premier add on Marketplace publisher. + :type marketplace_publisher: str + :param marketplace_offer: Premier add on 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'}, + 'marketplace_publisher': {'key': 'properties.marketplacePublisher', 'type': 'str'}, + 'marketplace_offer': {'key': 'properties.marketplaceOffer', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PremierAddOnPatchResource, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.product = kwargs.get('product', None) + self.vendor = kwargs.get('vendor', None) + self.marketplace_publisher = kwargs.get('marketplace_publisher', None) + self.marketplace_offer = kwargs.get('marketplace_offer', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_patch_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_patch_resource_py3.py new file mode 100644 index 000000000000..7f3ef23a46e0 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_patch_resource_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class PremierAddOnPatchResource(ProxyOnlyResource): + """ARM resource for a PremierAddOn. + + 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 Product. + :type product: str + :param vendor: Premier add on Vendor. + :type vendor: str + :param marketplace_publisher: Premier add on Marketplace publisher. + :type marketplace_publisher: str + :param marketplace_offer: Premier add on 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'}, + '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, marketplace_publisher: str=None, marketplace_offer: str=None, **kwargs) -> None: + super(PremierAddOnPatchResource, self).__init__(kind=kind, **kwargs) + self.sku = sku + self.product = product + self.vendor = vendor + self.marketplace_publisher = marketplace_publisher + self.marketplace_offer = marketplace_offer diff --git a/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_py3.py b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_py3.py new file mode 100644 index 000000000000..e52675f59da8 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/premier_add_on_py3.py @@ -0,0 +1,74 @@ +# 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 .resource_py3 import Resource + + +class PremierAddOn(Resource): + """Premier add-on. + + 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 sku: Premier add on SKU. + :type sku: str + :param product: Premier add on Product. + :type product: str + :param vendor: Premier add on Vendor. + :type vendor: str + :param marketplace_publisher: Premier add on Marketplace publisher. + :type marketplace_publisher: str + :param marketplace_offer: Premier add on Marketplace offer. + :type marketplace_offer: 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}'}, + 'sku': {'key': 'properties.sku', 'type': 'str'}, + 'product': {'key': 'properties.product', 'type': 'str'}, + 'vendor': {'key': 'properties.vendor', 'type': 'str'}, + 'marketplace_publisher': {'key': 'properties.marketplacePublisher', 'type': 'str'}, + 'marketplace_offer': {'key': 'properties.marketplaceOffer', 'type': 'str'}, + } + + def __init__(self, *, location: str, kind: str=None, tags=None, sku: str=None, product: str=None, vendor: str=None, marketplace_publisher: str=None, marketplace_offer: str=None, **kwargs) -> None: + super(PremierAddOn, self).__init__(kind=kind, location=location, tags=tags, **kwargs) + self.sku = sku + self.product = product + self.vendor = vendor + self.marketplace_publisher = marketplace_publisher + self.marketplace_offer = marketplace_offer diff --git a/azure-mgmt-web/azure/mgmt/web/models/private_access.py b/azure-mgmt-web/azure/mgmt/web/models/private_access.py new file mode 100644 index 000000000000..09aa73f722dc --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/private_access.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +class PrivateAccess(ProxyOnlyResource): + """Description of the parameters of Private Access for a Web Site. + + 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 enabled: Whether private access is enabled or not. + :type enabled: bool + :param virtual_networks: The Virtual Networks (and subnets) allowed to + access the site privately. + :type virtual_networks: + list[~azure.mgmt.web.models.PrivateAccessVirtualNetwork] + """ + + _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'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'virtual_networks': {'key': 'properties.virtualNetworks', 'type': '[PrivateAccessVirtualNetwork]'}, + } + + def __init__(self, **kwargs): + super(PrivateAccess, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.virtual_networks = kwargs.get('virtual_networks', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/private_access_py3.py b/azure-mgmt-web/azure/mgmt/web/models/private_access_py3.py new file mode 100644 index 000000000000..44dfced0920b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/private_access_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class PrivateAccess(ProxyOnlyResource): + """Description of the parameters of Private Access for a Web Site. + + 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 enabled: Whether private access is enabled or not. + :type enabled: bool + :param virtual_networks: The Virtual Networks (and subnets) allowed to + access the site privately. + :type virtual_networks: + list[~azure.mgmt.web.models.PrivateAccessVirtualNetwork] + """ + + _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'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'virtual_networks': {'key': 'properties.virtualNetworks', 'type': '[PrivateAccessVirtualNetwork]'}, + } + + def __init__(self, *, kind: str=None, enabled: bool=None, virtual_networks=None, **kwargs) -> None: + super(PrivateAccess, self).__init__(kind=kind, **kwargs) + self.enabled = enabled + self.virtual_networks = virtual_networks diff --git a/azure-mgmt-web/azure/mgmt/web/models/private_access_subnet.py b/azure-mgmt-web/azure/mgmt/web/models/private_access_subnet.py new file mode 100644 index 000000000000..7107b2414157 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/private_access_subnet.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrivateAccessSubnet(Model): + """Description of a Virtual Network subnet that is useable for private site + access. + + :param name: The name of the subnet. + :type name: str + :param key: The key (ID) of the subnet. + :type key: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'key': {'key': 'key', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(PrivateAccessSubnet, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.key = kwargs.get('key', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/private_access_subnet_py3.py b/azure-mgmt-web/azure/mgmt/web/models/private_access_subnet_py3.py new file mode 100644 index 000000000000..c232743ce98e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/private_access_subnet_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrivateAccessSubnet(Model): + """Description of a Virtual Network subnet that is useable for private site + access. + + :param name: The name of the subnet. + :type name: str + :param key: The key (ID) of the subnet. + :type key: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'key': {'key': 'key', 'type': 'int'}, + } + + def __init__(self, *, name: str=None, key: int=None, **kwargs) -> None: + super(PrivateAccessSubnet, self).__init__(**kwargs) + self.name = name + self.key = key diff --git a/azure-mgmt-web/azure/mgmt/web/models/private_access_virtual_network.py b/azure-mgmt-web/azure/mgmt/web/models/private_access_virtual_network.py new file mode 100644 index 000000000000..c9b0fa5d54dd --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/private_access_virtual_network.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrivateAccessVirtualNetwork(Model): + """Description of a Virtual Network that is useable for private site access. + + :param name: The name of the Virtual Network. + :type name: str + :param key: The key (ID) of the Virtual Network. + :type key: int + :param resource_id: The ARM uri of the Virtual Network + :type resource_id: str + :param subnets: A List of subnets that access is allowed to on this + Virtual Network. An empty array (but not null) is interpreted to mean that + all subnets are allowed within this Virtual Network. + :type subnets: list[~azure.mgmt.web.models.PrivateAccessSubnet] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'key': {'key': 'key', 'type': 'int'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'subnets': {'key': 'subnets', 'type': '[PrivateAccessSubnet]'}, + } + + def __init__(self, **kwargs): + super(PrivateAccessVirtualNetwork, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.key = kwargs.get('key', None) + self.resource_id = kwargs.get('resource_id', None) + self.subnets = kwargs.get('subnets', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/private_access_virtual_network_py3.py b/azure-mgmt-web/azure/mgmt/web/models/private_access_virtual_network_py3.py new file mode 100644 index 000000000000..62b1bdfc91b9 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/private_access_virtual_network_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PrivateAccessVirtualNetwork(Model): + """Description of a Virtual Network that is useable for private site access. + + :param name: The name of the Virtual Network. + :type name: str + :param key: The key (ID) of the Virtual Network. + :type key: int + :param resource_id: The ARM uri of the Virtual Network + :type resource_id: str + :param subnets: A List of subnets that access is allowed to on this + Virtual Network. An empty array (but not null) is interpreted to mean that + all subnets are allowed within this Virtual Network. + :type subnets: list[~azure.mgmt.web.models.PrivateAccessSubnet] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'key': {'key': 'key', 'type': 'int'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'subnets': {'key': 'subnets', 'type': '[PrivateAccessSubnet]'}, + } + + def __init__(self, *, name: str=None, key: int=None, resource_id: str=None, subnets=None, **kwargs) -> None: + super(PrivateAccessVirtualNetwork, self).__init__(**kwargs) + self.name = name + self.key = key + self.resource_id = resource_id + self.subnets = subnets diff --git a/azure-mgmt-web/azure/mgmt/web/models/process_info.py b/azure-mgmt-web/azure/mgmt/web/models/process_info.py index ac9316ca7fb6..8b2d416b7c1f 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/process_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/process_info.py @@ -26,14 +26,14 @@ class ProcessInfo(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param process_info_id: ARM Identifier for deployment. - :type process_info_id: int - :param process_info_name: Deployment name. - :type process_info_name: str + :ivar identifier: ARM Identifier for deployment. + :vartype identifier: int + :param deployment_name: Deployment name. + :type deployment_name: str :param href: HRef URI. :type href: str - :param mini_dump: Minidump URI. - :type mini_dump: str + :param minidump: Minidump URI. + :type minidump: str :param is_profile_running: Is profile running? :type is_profile_running: bool :param is_iis_profile_running: Is the IIS Profile running? @@ -64,38 +64,38 @@ class ProcessInfo(ProxyOnlyResource): :type thread_count: int :param start_time: Start time. :type start_time: datetime - :param total_processor_time: Total CPU time. - :type total_processor_time: str - :param user_processor_time: User CPU time. - :type user_processor_time: str - :param privileged_processor_time: Privileged CPU time. - :type privileged_processor_time: str - :param working_set64: Working set. - :type working_set64: long - :param peak_working_set64: Peak working set. - :type peak_working_set64: long - :param private_memory_size64: Private memory size. - :type private_memory_size64: long - :param virtual_memory_size64: Virtual memory size. - :type virtual_memory_size64: long - :param peak_virtual_memory_size64: Peak virtual memory usage. - :type peak_virtual_memory_size64: long - :param paged_system_memory_size64: Paged system memory. - :type paged_system_memory_size64: long - :param nonpaged_system_memory_size64: Non-paged system memory. - :type nonpaged_system_memory_size64: long - :param paged_memory_size64: Paged memory. - :type paged_memory_size64: long - :param peak_paged_memory_size64: Peak paged memory. - :type peak_paged_memory_size64: long + :param total_cpu_time: Total CPU time. + :type total_cpu_time: str + :param user_cpu_time: User CPU time. + :type user_cpu_time: str + :param privileged_cpu_time: Privileged CPU time. + :type privileged_cpu_time: str + :param working_set: Working set. + :type working_set: long + :param peak_working_set: Peak working set. + :type peak_working_set: long + :param private_memory: Private memory size. + :type private_memory: long + :param virtual_memory: Virtual memory size. + :type virtual_memory: long + :param peak_virtual_memory: Peak virtual memory usage. + :type peak_virtual_memory: long + :param paged_system_memory: Paged system memory. + :type paged_system_memory: long + :param non_paged_system_memory: Non-paged system memory. + :type non_paged_system_memory: long + :param paged_memory: Paged memory. + :type paged_memory: long + :param peak_paged_memory: Peak paged memory. + :type peak_paged_memory: long :param time_stamp: Time stamp. :type time_stamp: datetime :param environment_variables: List of environment variables. :type environment_variables: dict[str, str] :param is_scm_site: Is this the SCM site? :type is_scm_site: bool - :param is_web_job: Is this a Web Job? - :type is_web_job: bool + :param is_webjob: Is this a Web Job? + :type is_webjob: bool :param description: Description of process. :type description: str """ @@ -104,6 +104,7 @@ class ProcessInfo(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'identifier': {'readonly': True}, } _attribute_map = { @@ -111,79 +112,79 @@ class ProcessInfo(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'process_info_id': {'key': 'properties.id', 'type': 'int'}, - 'process_info_name': {'key': 'properties.name', 'type': 'str'}, + 'identifier': {'key': 'properties.identifier', 'type': 'int'}, + 'deployment_name': {'key': 'properties.deployment_name', 'type': 'str'}, 'href': {'key': 'properties.href', 'type': 'str'}, - 'mini_dump': {'key': 'properties.miniDump', 'type': 'str'}, - 'is_profile_running': {'key': 'properties.isProfileRunning', 'type': 'bool'}, - 'is_iis_profile_running': {'key': 'properties.isIisProfileRunning', 'type': 'bool'}, - 'iis_profile_timeout_in_seconds': {'key': 'properties.iisProfileTimeoutInSeconds', 'type': 'float'}, + 'minidump': {'key': 'properties.minidump', 'type': 'str'}, + 'is_profile_running': {'key': 'properties.is_profile_running', 'type': 'bool'}, + 'is_iis_profile_running': {'key': 'properties.is_iis_profile_running', 'type': 'bool'}, + 'iis_profile_timeout_in_seconds': {'key': 'properties.iis_profile_timeout_in_seconds', 'type': 'float'}, 'parent': {'key': 'properties.parent', 'type': 'str'}, 'children': {'key': 'properties.children', 'type': '[str]'}, 'threads': {'key': 'properties.threads', 'type': '[ProcessThreadInfo]'}, - 'open_file_handles': {'key': 'properties.openFileHandles', 'type': '[str]'}, + 'open_file_handles': {'key': 'properties.open_file_handles', 'type': '[str]'}, 'modules': {'key': 'properties.modules', 'type': '[ProcessModuleInfo]'}, - 'file_name': {'key': 'properties.fileName', 'type': 'str'}, - 'command_line': {'key': 'properties.commandLine', 'type': 'str'}, - 'user_name': {'key': 'properties.userName', 'type': 'str'}, - 'handle_count': {'key': 'properties.handleCount', 'type': 'int'}, - 'module_count': {'key': 'properties.moduleCount', 'type': 'int'}, - 'thread_count': {'key': 'properties.threadCount', 'type': 'int'}, - 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, - 'total_processor_time': {'key': 'properties.totalProcessorTime', 'type': 'str'}, - 'user_processor_time': {'key': 'properties.userProcessorTime', 'type': 'str'}, - 'privileged_processor_time': {'key': 'properties.privilegedProcessorTime', 'type': 'str'}, - 'working_set64': {'key': 'properties.workingSet64', 'type': 'long'}, - 'peak_working_set64': {'key': 'properties.peakWorkingSet64', 'type': 'long'}, - 'private_memory_size64': {'key': 'properties.privateMemorySize64', 'type': 'long'}, - 'virtual_memory_size64': {'key': 'properties.virtualMemorySize64', 'type': 'long'}, - 'peak_virtual_memory_size64': {'key': 'properties.peakVirtualMemorySize64', 'type': 'long'}, - 'paged_system_memory_size64': {'key': 'properties.pagedSystemMemorySize64', 'type': 'long'}, - 'nonpaged_system_memory_size64': {'key': 'properties.nonpagedSystemMemorySize64', 'type': 'long'}, - 'paged_memory_size64': {'key': 'properties.pagedMemorySize64', 'type': 'long'}, - 'peak_paged_memory_size64': {'key': 'properties.peakPagedMemorySize64', 'type': 'long'}, - 'time_stamp': {'key': 'properties.timeStamp', 'type': 'iso-8601'}, - 'environment_variables': {'key': 'properties.environmentVariables', 'type': '{str}'}, - 'is_scm_site': {'key': 'properties.isScmSite', 'type': 'bool'}, - 'is_web_job': {'key': 'properties.isWebJob', 'type': 'bool'}, + 'file_name': {'key': 'properties.file_name', 'type': 'str'}, + 'command_line': {'key': 'properties.command_line', 'type': 'str'}, + 'user_name': {'key': 'properties.user_name', 'type': 'str'}, + 'handle_count': {'key': 'properties.handle_count', 'type': 'int'}, + 'module_count': {'key': 'properties.module_count', 'type': 'int'}, + 'thread_count': {'key': 'properties.thread_count', 'type': 'int'}, + 'start_time': {'key': 'properties.start_time', 'type': 'iso-8601'}, + 'total_cpu_time': {'key': 'properties.total_cpu_time', 'type': 'str'}, + 'user_cpu_time': {'key': 'properties.user_cpu_time', 'type': 'str'}, + 'privileged_cpu_time': {'key': 'properties.privileged_cpu_time', 'type': 'str'}, + 'working_set': {'key': 'properties.working_set', 'type': 'long'}, + 'peak_working_set': {'key': 'properties.peak_working_set', 'type': 'long'}, + 'private_memory': {'key': 'properties.private_memory', 'type': 'long'}, + 'virtual_memory': {'key': 'properties.virtual_memory', 'type': 'long'}, + 'peak_virtual_memory': {'key': 'properties.peak_virtual_memory', 'type': 'long'}, + 'paged_system_memory': {'key': 'properties.paged_system_memory', 'type': 'long'}, + 'non_paged_system_memory': {'key': 'properties.non_paged_system_memory', 'type': 'long'}, + 'paged_memory': {'key': 'properties.paged_memory', 'type': 'long'}, + 'peak_paged_memory': {'key': 'properties.peak_paged_memory', 'type': 'long'}, + 'time_stamp': {'key': 'properties.time_stamp', 'type': 'iso-8601'}, + 'environment_variables': {'key': 'properties.environment_variables', 'type': '{str}'}, + 'is_scm_site': {'key': 'properties.is_scm_site', 'type': 'bool'}, + 'is_webjob': {'key': 'properties.is_webjob', 'type': 'bool'}, 'description': {'key': 'properties.description', 'type': 'str'}, } - def __init__(self, kind=None, process_info_id=None, process_info_name=None, href=None, mini_dump=None, is_profile_running=None, is_iis_profile_running=None, iis_profile_timeout_in_seconds=None, parent=None, children=None, threads=None, open_file_handles=None, modules=None, file_name=None, command_line=None, user_name=None, handle_count=None, module_count=None, thread_count=None, start_time=None, total_processor_time=None, user_processor_time=None, privileged_processor_time=None, working_set64=None, peak_working_set64=None, private_memory_size64=None, virtual_memory_size64=None, peak_virtual_memory_size64=None, paged_system_memory_size64=None, nonpaged_system_memory_size64=None, paged_memory_size64=None, peak_paged_memory_size64=None, time_stamp=None, environment_variables=None, is_scm_site=None, is_web_job=None, description=None): - super(ProcessInfo, self).__init__(kind=kind) - self.process_info_id = process_info_id - self.process_info_name = process_info_name - self.href = href - self.mini_dump = mini_dump - self.is_profile_running = is_profile_running - self.is_iis_profile_running = is_iis_profile_running - self.iis_profile_timeout_in_seconds = iis_profile_timeout_in_seconds - self.parent = parent - self.children = children - self.threads = threads - self.open_file_handles = open_file_handles - self.modules = modules - self.file_name = file_name - self.command_line = command_line - self.user_name = user_name - self.handle_count = handle_count - self.module_count = module_count - self.thread_count = thread_count - self.start_time = start_time - self.total_processor_time = total_processor_time - self.user_processor_time = user_processor_time - self.privileged_processor_time = privileged_processor_time - self.working_set64 = working_set64 - self.peak_working_set64 = peak_working_set64 - self.private_memory_size64 = private_memory_size64 - self.virtual_memory_size64 = virtual_memory_size64 - self.peak_virtual_memory_size64 = peak_virtual_memory_size64 - self.paged_system_memory_size64 = paged_system_memory_size64 - self.nonpaged_system_memory_size64 = nonpaged_system_memory_size64 - self.paged_memory_size64 = paged_memory_size64 - self.peak_paged_memory_size64 = peak_paged_memory_size64 - self.time_stamp = time_stamp - self.environment_variables = environment_variables - self.is_scm_site = is_scm_site - self.is_web_job = is_web_job - self.description = description + def __init__(self, **kwargs): + super(ProcessInfo, self).__init__(**kwargs) + self.identifier = None + self.deployment_name = kwargs.get('deployment_name', None) + self.href = kwargs.get('href', None) + self.minidump = kwargs.get('minidump', None) + self.is_profile_running = kwargs.get('is_profile_running', None) + self.is_iis_profile_running = kwargs.get('is_iis_profile_running', None) + self.iis_profile_timeout_in_seconds = kwargs.get('iis_profile_timeout_in_seconds', None) + self.parent = kwargs.get('parent', None) + self.children = kwargs.get('children', None) + self.threads = kwargs.get('threads', None) + self.open_file_handles = kwargs.get('open_file_handles', None) + self.modules = kwargs.get('modules', None) + self.file_name = kwargs.get('file_name', None) + self.command_line = kwargs.get('command_line', None) + self.user_name = kwargs.get('user_name', None) + self.handle_count = kwargs.get('handle_count', None) + self.module_count = kwargs.get('module_count', None) + self.thread_count = kwargs.get('thread_count', None) + self.start_time = kwargs.get('start_time', None) + self.total_cpu_time = kwargs.get('total_cpu_time', None) + self.user_cpu_time = kwargs.get('user_cpu_time', None) + self.privileged_cpu_time = kwargs.get('privileged_cpu_time', None) + self.working_set = kwargs.get('working_set', None) + self.peak_working_set = kwargs.get('peak_working_set', None) + self.private_memory = kwargs.get('private_memory', None) + self.virtual_memory = kwargs.get('virtual_memory', None) + self.peak_virtual_memory = kwargs.get('peak_virtual_memory', None) + self.paged_system_memory = kwargs.get('paged_system_memory', None) + self.non_paged_system_memory = kwargs.get('non_paged_system_memory', None) + self.paged_memory = kwargs.get('paged_memory', None) + self.peak_paged_memory = kwargs.get('peak_paged_memory', None) + self.time_stamp = kwargs.get('time_stamp', None) + self.environment_variables = kwargs.get('environment_variables', None) + self.is_scm_site = kwargs.get('is_scm_site', None) + self.is_webjob = kwargs.get('is_webjob', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/process_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/process_info_py3.py new file mode 100644 index 000000000000..5b22a5a7e35a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/process_info_py3.py @@ -0,0 +1,190 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class ProcessInfo(ProxyOnlyResource): + """Process Information. + + 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 identifier: ARM Identifier for deployment. + :vartype identifier: int + :param deployment_name: Deployment name. + :type deployment_name: str + :param href: HRef URI. + :type href: str + :param minidump: Minidump URI. + :type minidump: str + :param is_profile_running: Is profile running? + :type is_profile_running: bool + :param is_iis_profile_running: Is the IIS Profile running? + :type is_iis_profile_running: bool + :param iis_profile_timeout_in_seconds: IIS Profile timeout (seconds). + :type iis_profile_timeout_in_seconds: float + :param parent: Parent process. + :type parent: str + :param children: Child process list. + :type children: list[str] + :param threads: Thread list. + :type threads: list[~azure.mgmt.web.models.ProcessThreadInfo] + :param open_file_handles: List of open files. + :type open_file_handles: list[str] + :param modules: List of modules. + :type modules: list[~azure.mgmt.web.models.ProcessModuleInfo] + :param file_name: File name of this process. + :type file_name: str + :param command_line: Command line. + :type command_line: str + :param user_name: User name. + :type user_name: str + :param handle_count: Handle count. + :type handle_count: int + :param module_count: Module count. + :type module_count: int + :param thread_count: Thread count. + :type thread_count: int + :param start_time: Start time. + :type start_time: datetime + :param total_cpu_time: Total CPU time. + :type total_cpu_time: str + :param user_cpu_time: User CPU time. + :type user_cpu_time: str + :param privileged_cpu_time: Privileged CPU time. + :type privileged_cpu_time: str + :param working_set: Working set. + :type working_set: long + :param peak_working_set: Peak working set. + :type peak_working_set: long + :param private_memory: Private memory size. + :type private_memory: long + :param virtual_memory: Virtual memory size. + :type virtual_memory: long + :param peak_virtual_memory: Peak virtual memory usage. + :type peak_virtual_memory: long + :param paged_system_memory: Paged system memory. + :type paged_system_memory: long + :param non_paged_system_memory: Non-paged system memory. + :type non_paged_system_memory: long + :param paged_memory: Paged memory. + :type paged_memory: long + :param peak_paged_memory: Peak paged memory. + :type peak_paged_memory: long + :param time_stamp: Time stamp. + :type time_stamp: datetime + :param environment_variables: List of environment variables. + :type environment_variables: dict[str, str] + :param is_scm_site: Is this the SCM site? + :type is_scm_site: bool + :param is_webjob: Is this a Web Job? + :type is_webjob: bool + :param description: Description of process. + :type description: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'identifier': {'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': {'key': 'properties.identifier', 'type': 'int'}, + 'deployment_name': {'key': 'properties.deployment_name', 'type': 'str'}, + 'href': {'key': 'properties.href', 'type': 'str'}, + 'minidump': {'key': 'properties.minidump', 'type': 'str'}, + 'is_profile_running': {'key': 'properties.is_profile_running', 'type': 'bool'}, + 'is_iis_profile_running': {'key': 'properties.is_iis_profile_running', 'type': 'bool'}, + 'iis_profile_timeout_in_seconds': {'key': 'properties.iis_profile_timeout_in_seconds', 'type': 'float'}, + 'parent': {'key': 'properties.parent', 'type': 'str'}, + 'children': {'key': 'properties.children', 'type': '[str]'}, + 'threads': {'key': 'properties.threads', 'type': '[ProcessThreadInfo]'}, + 'open_file_handles': {'key': 'properties.open_file_handles', 'type': '[str]'}, + 'modules': {'key': 'properties.modules', 'type': '[ProcessModuleInfo]'}, + 'file_name': {'key': 'properties.file_name', 'type': 'str'}, + 'command_line': {'key': 'properties.command_line', 'type': 'str'}, + 'user_name': {'key': 'properties.user_name', 'type': 'str'}, + 'handle_count': {'key': 'properties.handle_count', 'type': 'int'}, + 'module_count': {'key': 'properties.module_count', 'type': 'int'}, + 'thread_count': {'key': 'properties.thread_count', 'type': 'int'}, + 'start_time': {'key': 'properties.start_time', 'type': 'iso-8601'}, + 'total_cpu_time': {'key': 'properties.total_cpu_time', 'type': 'str'}, + 'user_cpu_time': {'key': 'properties.user_cpu_time', 'type': 'str'}, + 'privileged_cpu_time': {'key': 'properties.privileged_cpu_time', 'type': 'str'}, + 'working_set': {'key': 'properties.working_set', 'type': 'long'}, + 'peak_working_set': {'key': 'properties.peak_working_set', 'type': 'long'}, + 'private_memory': {'key': 'properties.private_memory', 'type': 'long'}, + 'virtual_memory': {'key': 'properties.virtual_memory', 'type': 'long'}, + 'peak_virtual_memory': {'key': 'properties.peak_virtual_memory', 'type': 'long'}, + 'paged_system_memory': {'key': 'properties.paged_system_memory', 'type': 'long'}, + 'non_paged_system_memory': {'key': 'properties.non_paged_system_memory', 'type': 'long'}, + 'paged_memory': {'key': 'properties.paged_memory', 'type': 'long'}, + 'peak_paged_memory': {'key': 'properties.peak_paged_memory', 'type': 'long'}, + 'time_stamp': {'key': 'properties.time_stamp', 'type': 'iso-8601'}, + 'environment_variables': {'key': 'properties.environment_variables', 'type': '{str}'}, + 'is_scm_site': {'key': 'properties.is_scm_site', 'type': 'bool'}, + 'is_webjob': {'key': 'properties.is_webjob', 'type': 'bool'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, deployment_name: str=None, href: str=None, minidump: str=None, is_profile_running: bool=None, is_iis_profile_running: bool=None, iis_profile_timeout_in_seconds: float=None, parent: str=None, children=None, threads=None, open_file_handles=None, modules=None, file_name: str=None, command_line: str=None, user_name: str=None, handle_count: int=None, module_count: int=None, thread_count: int=None, start_time=None, total_cpu_time: str=None, user_cpu_time: str=None, privileged_cpu_time: str=None, working_set: int=None, peak_working_set: int=None, private_memory: int=None, virtual_memory: int=None, peak_virtual_memory: int=None, paged_system_memory: int=None, non_paged_system_memory: int=None, paged_memory: int=None, peak_paged_memory: int=None, time_stamp=None, environment_variables=None, is_scm_site: bool=None, is_webjob: bool=None, description: str=None, **kwargs) -> None: + super(ProcessInfo, self).__init__(kind=kind, **kwargs) + self.identifier = None + self.deployment_name = deployment_name + self.href = href + self.minidump = minidump + self.is_profile_running = is_profile_running + self.is_iis_profile_running = is_iis_profile_running + self.iis_profile_timeout_in_seconds = iis_profile_timeout_in_seconds + self.parent = parent + self.children = children + self.threads = threads + self.open_file_handles = open_file_handles + self.modules = modules + self.file_name = file_name + self.command_line = command_line + self.user_name = user_name + self.handle_count = handle_count + self.module_count = module_count + self.thread_count = thread_count + self.start_time = start_time + self.total_cpu_time = total_cpu_time + self.user_cpu_time = user_cpu_time + self.privileged_cpu_time = privileged_cpu_time + self.working_set = working_set + self.peak_working_set = peak_working_set + self.private_memory = private_memory + self.virtual_memory = virtual_memory + self.peak_virtual_memory = peak_virtual_memory + self.paged_system_memory = paged_system_memory + self.non_paged_system_memory = non_paged_system_memory + self.paged_memory = paged_memory + self.peak_paged_memory = peak_paged_memory + self.time_stamp = time_stamp + self.environment_variables = environment_variables + self.is_scm_site = is_scm_site + self.is_webjob = is_webjob + self.description = description diff --git a/azure-mgmt-web/azure/mgmt/web/models/process_module_info.py b/azure-mgmt-web/azure/mgmt/web/models/process_module_info.py index 5607da524700..f57e5396f6dd 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/process_module_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/process_module_info.py @@ -62,29 +62,29 @@ class ProcessModuleInfo(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'base_address': {'key': 'properties.baseAddress', 'type': 'str'}, - 'file_name': {'key': 'properties.fileName', 'type': 'str'}, + 'base_address': {'key': 'properties.base_address', 'type': 'str'}, + 'file_name': {'key': 'properties.file_name', 'type': 'str'}, 'href': {'key': 'properties.href', 'type': 'str'}, - 'file_path': {'key': 'properties.filePath', 'type': 'str'}, - 'module_memory_size': {'key': 'properties.moduleMemorySize', 'type': 'int'}, - 'file_version': {'key': 'properties.fileVersion', 'type': 'str'}, - 'file_description': {'key': 'properties.fileDescription', 'type': 'str'}, + 'file_path': {'key': 'properties.file_path', 'type': 'str'}, + 'module_memory_size': {'key': 'properties.module_memory_size', 'type': 'int'}, + 'file_version': {'key': 'properties.file_version', 'type': 'str'}, + 'file_description': {'key': 'properties.file_description', 'type': 'str'}, 'product': {'key': 'properties.product', 'type': 'str'}, - 'product_version': {'key': 'properties.productVersion', 'type': 'str'}, - 'is_debug': {'key': 'properties.isDebug', 'type': 'bool'}, + 'product_version': {'key': 'properties.product_version', 'type': 'str'}, + 'is_debug': {'key': 'properties.is_debug', 'type': 'bool'}, 'language': {'key': 'properties.language', 'type': 'str'}, } - def __init__(self, kind=None, base_address=None, file_name=None, href=None, file_path=None, module_memory_size=None, file_version=None, file_description=None, product=None, product_version=None, is_debug=None, language=None): - super(ProcessModuleInfo, self).__init__(kind=kind) - self.base_address = base_address - self.file_name = file_name - self.href = href - self.file_path = file_path - self.module_memory_size = module_memory_size - self.file_version = file_version - self.file_description = file_description - self.product = product - self.product_version = product_version - self.is_debug = is_debug - self.language = language + def __init__(self, **kwargs): + super(ProcessModuleInfo, self).__init__(**kwargs) + self.base_address = kwargs.get('base_address', None) + self.file_name = kwargs.get('file_name', None) + self.href = kwargs.get('href', None) + self.file_path = kwargs.get('file_path', None) + self.module_memory_size = kwargs.get('module_memory_size', None) + self.file_version = kwargs.get('file_version', None) + self.file_description = kwargs.get('file_description', None) + self.product = kwargs.get('product', None) + self.product_version = kwargs.get('product_version', None) + self.is_debug = kwargs.get('is_debug', None) + self.language = kwargs.get('language', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/process_module_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/process_module_info_py3.py new file mode 100644 index 000000000000..458d7777a922 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/process_module_info_py3.py @@ -0,0 +1,90 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class ProcessModuleInfo(ProxyOnlyResource): + """Process Module Information. + + 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 base_address: Base address. Used as module identifier in ARM + resource URI. + :type base_address: str + :param file_name: File name. + :type file_name: str + :param href: HRef URI. + :type href: str + :param file_path: File path. + :type file_path: str + :param module_memory_size: Module memory size. + :type module_memory_size: int + :param file_version: File version. + :type file_version: str + :param file_description: File description. + :type file_description: str + :param product: Product name. + :type product: str + :param product_version: Product version. + :type product_version: str + :param is_debug: Is debug? + :type is_debug: bool + :param language: Module language (locale). + :type language: 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'}, + 'base_address': {'key': 'properties.base_address', 'type': 'str'}, + 'file_name': {'key': 'properties.file_name', 'type': 'str'}, + 'href': {'key': 'properties.href', 'type': 'str'}, + 'file_path': {'key': 'properties.file_path', 'type': 'str'}, + 'module_memory_size': {'key': 'properties.module_memory_size', 'type': 'int'}, + 'file_version': {'key': 'properties.file_version', 'type': 'str'}, + 'file_description': {'key': 'properties.file_description', 'type': 'str'}, + 'product': {'key': 'properties.product', 'type': 'str'}, + 'product_version': {'key': 'properties.product_version', 'type': 'str'}, + 'is_debug': {'key': 'properties.is_debug', 'type': 'bool'}, + 'language': {'key': 'properties.language', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, base_address: str=None, file_name: str=None, href: str=None, file_path: str=None, module_memory_size: int=None, file_version: str=None, file_description: str=None, product: str=None, product_version: str=None, is_debug: bool=None, language: str=None, **kwargs) -> None: + super(ProcessModuleInfo, self).__init__(kind=kind, **kwargs) + self.base_address = base_address + self.file_name = file_name + self.href = href + self.file_path = file_path + self.module_memory_size = module_memory_size + self.file_version = file_version + self.file_description = file_description + self.product = product + self.product_version = product_version + self.is_debug = is_debug + self.language = language diff --git a/azure-mgmt-web/azure/mgmt/web/models/process_thread_info.py b/azure-mgmt-web/azure/mgmt/web/models/process_thread_info.py index e7ba64aafca8..fa19e32d621c 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/process_thread_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/process_thread_info.py @@ -26,8 +26,8 @@ class ProcessThreadInfo(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param process_thread_info_id: ARM Identifier for deployment. - :type process_thread_info_id: int + :ivar identifier: Site extension ID. + :vartype identifier: int :param href: HRef URI. :type href: str :param process: Process URI. @@ -58,6 +58,7 @@ class ProcessThreadInfo(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, + 'identifier': {'readonly': True}, } _attribute_map = { @@ -65,33 +66,33 @@ class ProcessThreadInfo(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'process_thread_info_id': {'key': 'properties.id', 'type': 'int'}, + 'identifier': {'key': 'properties.identifier', 'type': 'int'}, 'href': {'key': 'properties.href', 'type': 'str'}, 'process': {'key': 'properties.process', 'type': 'str'}, - 'start_address': {'key': 'properties.startAddress', 'type': 'str'}, - 'current_priority': {'key': 'properties.currentPriority', 'type': 'int'}, - 'priority_level': {'key': 'properties.priorityLevel', 'type': 'str'}, - 'base_priority': {'key': 'properties.basePriority', 'type': 'int'}, - 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, - 'total_processor_time': {'key': 'properties.totalProcessorTime', 'type': 'str'}, - 'user_processor_time': {'key': 'properties.userProcessorTime', 'type': 'str'}, - 'priviledged_processor_time': {'key': 'properties.priviledgedProcessorTime', 'type': 'str'}, + 'start_address': {'key': 'properties.start_address', 'type': 'str'}, + 'current_priority': {'key': 'properties.current_priority', 'type': 'int'}, + 'priority_level': {'key': 'properties.priority_level', 'type': 'str'}, + 'base_priority': {'key': 'properties.base_priority', 'type': 'int'}, + 'start_time': {'key': 'properties.start_time', 'type': 'iso-8601'}, + 'total_processor_time': {'key': 'properties.total_processor_time', 'type': 'str'}, + 'user_processor_time': {'key': 'properties.user_processor_time', 'type': 'str'}, + 'priviledged_processor_time': {'key': 'properties.priviledged_processor_time', 'type': 'str'}, 'state': {'key': 'properties.state', 'type': 'str'}, - 'wait_reason': {'key': 'properties.waitReason', 'type': 'str'}, + 'wait_reason': {'key': 'properties.wait_reason', 'type': 'str'}, } - def __init__(self, kind=None, process_thread_info_id=None, href=None, process=None, start_address=None, current_priority=None, priority_level=None, base_priority=None, start_time=None, total_processor_time=None, user_processor_time=None, priviledged_processor_time=None, state=None, wait_reason=None): - super(ProcessThreadInfo, self).__init__(kind=kind) - self.process_thread_info_id = process_thread_info_id - self.href = href - self.process = process - self.start_address = start_address - self.current_priority = current_priority - self.priority_level = priority_level - self.base_priority = base_priority - self.start_time = start_time - self.total_processor_time = total_processor_time - self.user_processor_time = user_processor_time - self.priviledged_processor_time = priviledged_processor_time - self.state = state - self.wait_reason = wait_reason + def __init__(self, **kwargs): + super(ProcessThreadInfo, self).__init__(**kwargs) + self.identifier = None + self.href = kwargs.get('href', None) + self.process = kwargs.get('process', None) + self.start_address = kwargs.get('start_address', None) + self.current_priority = kwargs.get('current_priority', None) + self.priority_level = kwargs.get('priority_level', None) + self.base_priority = kwargs.get('base_priority', None) + self.start_time = kwargs.get('start_time', None) + self.total_processor_time = kwargs.get('total_processor_time', None) + self.user_processor_time = kwargs.get('user_processor_time', None) + self.priviledged_processor_time = kwargs.get('priviledged_processor_time', None) + self.state = kwargs.get('state', None) + self.wait_reason = kwargs.get('wait_reason', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/process_thread_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/process_thread_info_py3.py new file mode 100644 index 000000000000..573193cc1855 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/process_thread_info_py3.py @@ -0,0 +1,98 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class ProcessThreadInfo(ProxyOnlyResource): + """Process Thread Information. + + 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 identifier: Site extension ID. + :vartype identifier: int + :param href: HRef URI. + :type href: str + :param process: Process URI. + :type process: str + :param start_address: Start address. + :type start_address: str + :param current_priority: Current thread priority. + :type current_priority: int + :param priority_level: Thread priority level. + :type priority_level: str + :param base_priority: Base priority. + :type base_priority: int + :param start_time: Start time. + :type start_time: datetime + :param total_processor_time: Total processor time. + :type total_processor_time: str + :param user_processor_time: User processor time. + :type user_processor_time: str + :param priviledged_processor_time: Priviledged processor time. + :type priviledged_processor_time: str + :param state: Thread state. + :type state: str + :param wait_reason: Wait reason. + :type wait_reason: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'identifier': {'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': {'key': 'properties.identifier', 'type': 'int'}, + 'href': {'key': 'properties.href', 'type': 'str'}, + 'process': {'key': 'properties.process', 'type': 'str'}, + 'start_address': {'key': 'properties.start_address', 'type': 'str'}, + 'current_priority': {'key': 'properties.current_priority', 'type': 'int'}, + 'priority_level': {'key': 'properties.priority_level', 'type': 'str'}, + 'base_priority': {'key': 'properties.base_priority', 'type': 'int'}, + 'start_time': {'key': 'properties.start_time', 'type': 'iso-8601'}, + 'total_processor_time': {'key': 'properties.total_processor_time', 'type': 'str'}, + 'user_processor_time': {'key': 'properties.user_processor_time', 'type': 'str'}, + 'priviledged_processor_time': {'key': 'properties.priviledged_processor_time', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'wait_reason': {'key': 'properties.wait_reason', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, href: str=None, process: str=None, start_address: str=None, current_priority: int=None, priority_level: str=None, base_priority: int=None, start_time=None, total_processor_time: str=None, user_processor_time: str=None, priviledged_processor_time: str=None, state: str=None, wait_reason: str=None, **kwargs) -> None: + super(ProcessThreadInfo, self).__init__(kind=kind, **kwargs) + self.identifier = None + self.href = href + self.process = process + self.start_address = start_address + self.current_priority = current_priority + self.priority_level = priority_level + self.base_priority = base_priority + self.start_time = start_time + self.total_processor_time = total_processor_time + self.user_processor_time = user_processor_time + self.priviledged_processor_time = priviledged_processor_time + self.state = state + self.wait_reason = wait_reason diff --git a/azure-mgmt-web/azure/mgmt/web/models/proxy_only_resource.py b/azure-mgmt-web/azure/mgmt/web/models/proxy_only_resource.py index 0a2fbf5b4f9d..88ed8c60bc89 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/proxy_only_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/proxy_only_resource.py @@ -42,9 +42,9 @@ class ProxyOnlyResource(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self, kind=None): - super(ProxyOnlyResource, self).__init__() + def __init__(self, **kwargs): + super(ProxyOnlyResource, self).__init__(**kwargs) self.id = None self.name = None - self.kind = kind + self.kind = kwargs.get('kind', None) self.type = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/proxy_only_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/proxy_only_resource_py3.py new file mode 100644 index 000000000000..a5566fb3e5fa --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/proxy_only_resource_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/public_certificate.py b/azure-mgmt-web/azure/mgmt/web/models/public_certificate.py index d58a48285391..effb23e18695 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/public_certificate.py +++ b/azure-mgmt-web/azure/mgmt/web/models/public_certificate.py @@ -53,8 +53,8 @@ class PublicCertificate(ProxyOnlyResource): 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, } - def __init__(self, kind=None, blob=None, public_certificate_location=None): - super(PublicCertificate, self).__init__(kind=kind) - self.blob = blob - self.public_certificate_location = public_certificate_location + def __init__(self, **kwargs): + super(PublicCertificate, self).__init__(**kwargs) + self.blob = kwargs.get('blob', None) + self.public_certificate_location = kwargs.get('public_certificate_location', None) self.thumbprint = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/public_certificate_py3.py b/azure-mgmt-web/azure/mgmt/web/models/public_certificate_py3.py new file mode 100644 index 000000000000..1f12e72350ee --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/public_certificate_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class PublicCertificate(ProxyOnlyResource): + """Public certificate object. + + 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 blob: Public Certificate byte array + :type blob: bytearray + :param public_certificate_location: Public Certificate Location. Possible + values include: 'CurrentUserMy', 'LocalMachineMy', 'Unknown' + :type public_certificate_location: str or + ~azure.mgmt.web.models.PublicCertificateLocation + :ivar thumbprint: Certificate Thumbprint + :vartype thumbprint: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'thumbprint': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'blob': {'key': 'properties.blob', 'type': 'bytearray'}, + 'public_certificate_location': {'key': 'properties.publicCertificateLocation', 'type': 'PublicCertificateLocation'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, blob: bytearray=None, public_certificate_location=None, **kwargs) -> None: + super(PublicCertificate, self).__init__(kind=kind, **kwargs) + self.blob = blob + self.public_certificate_location = public_certificate_location + self.thumbprint = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/push_settings.py b/azure-mgmt-web/azure/mgmt/web/models/push_settings.py index 9c89aa6540ca..acb3cad6ac63 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/push_settings.py +++ b/azure-mgmt-web/azure/mgmt/web/models/push_settings.py @@ -18,6 +18,8 @@ class PushSettings(ProxyOnlyResource): 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. @@ -26,8 +28,8 @@ class PushSettings(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param is_push_enabled: Gets or sets a flag indicating whether the Push - endpoint is enabled. + :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. @@ -63,9 +65,9 @@ class PushSettings(ProxyOnlyResource): 'dynamic_tags_json': {'key': 'properties.dynamicTagsJson', 'type': 'str'}, } - def __init__(self, is_push_enabled, kind=None, tag_whitelist_json=None, tags_requiring_auth=None, dynamic_tags_json=None): - super(PushSettings, self).__init__(kind=kind) - 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 + def __init__(self, **kwargs): + super(PushSettings, self).__init__(**kwargs) + self.is_push_enabled = kwargs.get('is_push_enabled', None) + self.tag_whitelist_json = kwargs.get('tag_whitelist_json', None) + self.tags_requiring_auth = kwargs.get('tags_requiring_auth', None) + self.dynamic_tags_json = kwargs.get('dynamic_tags_json', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/push_settings_py3.py b/azure-mgmt-web/azure/mgmt/web/models/push_settings_py3.py new file mode 100644 index 000000000000..8d41beb1a99d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/push_settings_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/ramp_up_rule.py b/azure-mgmt-web/azure/mgmt/web/models/ramp_up_rule.py index ea9c98a44b32..beac73be59d5 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/ramp_up_rule.py +++ b/azure-mgmt-web/azure/mgmt/web/models/ramp_up_rule.py @@ -60,13 +60,13 @@ class RampUpRule(Model): 'name': {'key': 'name', 'type': 'str'}, } - def __init__(self, action_host_name=None, reroute_percentage=None, change_step=None, change_interval_in_minutes=None, min_reroute_percentage=None, max_reroute_percentage=None, change_decision_callback_url=None, name=None): - super(RampUpRule, self).__init__() - 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 + def __init__(self, **kwargs): + super(RampUpRule, self).__init__(**kwargs) + self.action_host_name = kwargs.get('action_host_name', None) + self.reroute_percentage = kwargs.get('reroute_percentage', None) + self.change_step = kwargs.get('change_step', None) + self.change_interval_in_minutes = kwargs.get('change_interval_in_minutes', None) + self.min_reroute_percentage = kwargs.get('min_reroute_percentage', None) + self.max_reroute_percentage = kwargs.get('max_reroute_percentage', None) + self.change_decision_callback_url = kwargs.get('change_decision_callback_url', None) + self.name = kwargs.get('name', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/ramp_up_rule_py3.py b/azure-mgmt-web/azure/mgmt/web/models/ramp_up_rule_py3.py new file mode 100644 index 000000000000..224fea9b4023 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/ramp_up_rule_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 ActionHostName. + :type reroute_percentage: float + :param change_step: In auto ramp up scenario this is the step to to + add/remove from ReroutePercentage until it reaches + MinReroutePercentage or MaxReroutePercentage. + Site metrics are checked every N minutes specificed in + ChangeIntervalInMinutes. + Custom decision algorithm can be provided in TiPCallback site extension + which URL can be specified in ChangeDecisionCallbackUrl. + :type change_step: float + :param change_interval_in_minutes: Specifies interval in mimuntes 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/recommendation.py b/azure-mgmt-web/azure/mgmt/web/models/recommendation.py index f53222b7f41d..05e942d4c9dc 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/recommendation.py +++ b/azure-mgmt-web/azure/mgmt/web/models/recommendation.py @@ -9,12 +9,23 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.serialization import Model +from .proxy_only_resource import ProxyOnlyResource -class Recommendation(Model): +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 @@ -40,11 +51,17 @@ class Recommendation(Model): :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.models.Channels - :param tags: The list of category tags that this recommendation belongs - to. - :type tags: list[str] + :ivar category_tags: The list of category tags that this recommendation + belongs to. + :vartype category_tags: list[str] :param action_name: Name of action recommended by this object. :type action_name: str + :param enabled: True if this recommendation is still valid (i.e. + "actionable"). False if it is invalid. + :type enabled: int + :param states: The list of states of this recommendation. If it's null + then it shoud be considered "Active". + :type states: list[str] :param start_time: The beginning time in UTC of a range that the recommendation refers to. :type start_time: datetime @@ -74,50 +91,65 @@ class Recommendation(Model): :type forward_link: str """ + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'category_tags': {'readonly': True}, + } + _attribute_map = { - 'creation_time': {'key': 'creationTime', 'type': 'iso-8601'}, - 'recommendation_id': {'key': 'recommendationId', 'type': 'str'}, - 'resource_id': {'key': 'resourceId', 'type': 'str'}, - 'resource_scope': {'key': 'resourceScope', 'type': 'str'}, - 'rule_name': {'key': 'ruleName', 'type': 'str'}, - 'display_name': {'key': 'displayName', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'level': {'key': 'level', 'type': 'NotificationLevel'}, - 'channels': {'key': 'channels', 'type': 'Channels'}, - 'tags': {'key': 'tags', 'type': '[str]'}, - 'action_name': {'key': 'actionName', 'type': 'str'}, - 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, - 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, - 'next_notification_time': {'key': 'nextNotificationTime', 'type': 'iso-8601'}, - 'notification_expiration_time': {'key': 'notificationExpirationTime', 'type': 'iso-8601'}, - 'notified_time': {'key': 'notifiedTime', 'type': 'iso-8601'}, - 'score': {'key': 'score', 'type': 'float'}, - 'is_dynamic': {'key': 'isDynamic', 'type': 'bool'}, - 'extension_name': {'key': 'extensionName', 'type': 'str'}, - 'blade_name': {'key': 'bladeName', 'type': 'str'}, - 'forward_link': {'key': 'forwardLink', 'type': 'str'}, + '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'}, + 'category_tags': {'key': 'properties.categoryTags', 'type': '[str]'}, + 'action_name': {'key': 'properties.actionName', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'int'}, + 'states': {'key': 'properties.states', '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, creation_time=None, recommendation_id=None, resource_id=None, resource_scope=None, rule_name=None, display_name=None, message=None, level=None, channels=None, tags=None, action_name=None, start_time=None, end_time=None, next_notification_time=None, notification_expiration_time=None, notified_time=None, score=None, is_dynamic=None, extension_name=None, blade_name=None, forward_link=None): - super(Recommendation, self).__init__() - 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 + def __init__(self, **kwargs): + super(Recommendation, self).__init__(**kwargs) + self.creation_time = kwargs.get('creation_time', None) + self.recommendation_id = kwargs.get('recommendation_id', None) + self.resource_id = kwargs.get('resource_id', None) + self.resource_scope = kwargs.get('resource_scope', None) + self.rule_name = kwargs.get('rule_name', None) + self.display_name = kwargs.get('display_name', None) + self.message = kwargs.get('message', None) + self.level = kwargs.get('level', None) + self.channels = kwargs.get('channels', None) + self.category_tags = None + self.action_name = kwargs.get('action_name', None) + self.enabled = kwargs.get('enabled', None) + self.states = kwargs.get('states', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.next_notification_time = kwargs.get('next_notification_time', None) + self.notification_expiration_time = kwargs.get('notification_expiration_time', None) + self.notified_time = kwargs.get('notified_time', None) + self.score = kwargs.get('score', None) + self.is_dynamic = kwargs.get('is_dynamic', None) + self.extension_name = kwargs.get('extension_name', None) + self.blade_name = kwargs.get('blade_name', None) + self.forward_link = kwargs.get('forward_link', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/recommendation_paged.py b/azure-mgmt-web/azure/mgmt/web/models/recommendation_paged.py new file mode 100644 index 000000000000..2eaf7b6d2ebd --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/recommendation_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class RecommendationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Recommendation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Recommendation]'} + } + + def __init__(self, *args, **kwargs): + + super(RecommendationPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-web/azure/mgmt/web/models/recommendation_py3.py b/azure-mgmt-web/azure/mgmt/web/models/recommendation_py3.py new file mode 100644 index 000000000000..02241485d2d1 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/recommendation_py3.py @@ -0,0 +1,155 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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.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.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.models.Channels + :ivar category_tags: The list of category tags that this recommendation + belongs to. + :vartype category_tags: list[str] + :param action_name: Name of action recommended by this object. + :type action_name: str + :param enabled: True if this recommendation is still valid (i.e. + "actionable"). False if it is invalid. + :type enabled: int + :param states: The list of states of this recommendation. If it's null + then it shoud be considered "Active". + :type states: list[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}, + 'category_tags': {'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'}, + 'category_tags': {'key': 'properties.categoryTags', 'type': '[str]'}, + 'action_name': {'key': 'properties.actionName', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'int'}, + 'states': {'key': 'properties.states', '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, action_name: str=None, enabled: int=None, states=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.category_tags = None + self.action_name = action_name + self.enabled = enabled + self.states = states + 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/recommendation_rule.py b/azure-mgmt-web/azure/mgmt/web/models/recommendation_rule.py index d8e666053a44..75df7b4a8508 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/recommendation_rule.py +++ b/azure-mgmt-web/azure/mgmt/web/models/recommendation_rule.py @@ -9,15 +9,26 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.serialization import Model +from .proxy_only_resource import ProxyOnlyResource -class RecommendationRule(Model): +class RecommendationRule(ProxyOnlyResource): """Represents a recommendation rule that the recommendation engine can perform. - :param name: Unique name of the rule. - :type name: str + 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_name: Unique name of the rule. + :type recommendation_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). @@ -38,8 +49,9 @@ class RecommendationRule(Model): :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.models.Channels - :param tags: An array of category tags that the rule contains. - :type tags: list[str] + :ivar category_tags: The list of category tags that this recommendation + rule belongs to. + :vartype category_tags: list[str] :param is_dynamic: True if this is associated with a dynamically added rule :type is_dynamic: bool @@ -54,34 +66,45 @@ class RecommendationRule(Model): :type forward_link: str """ + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'category_tags': {'readonly': True}, + } + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, - 'display_name': {'key': 'displayName', 'type': 'str'}, - 'message': {'key': 'message', 'type': 'str'}, - 'recommendation_id': {'key': 'recommendationId', 'type': 'str'}, - 'description': {'key': 'description', 'type': 'str'}, - 'action_name': {'key': 'actionName', 'type': 'str'}, - 'level': {'key': 'level', 'type': 'NotificationLevel'}, - 'channels': {'key': 'channels', 'type': 'Channels'}, - 'tags': {'key': 'tags', 'type': '[str]'}, - 'is_dynamic': {'key': 'isDynamic', 'type': 'bool'}, - 'extension_name': {'key': 'extensionName', 'type': 'str'}, - 'blade_name': {'key': 'bladeName', 'type': 'str'}, - 'forward_link': {'key': 'forwardLink', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'recommendation_name': {'key': 'properties.recommendationName', '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'}, + 'category_tags': {'key': 'properties.categoryTags', '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, name=None, display_name=None, message=None, recommendation_id=None, description=None, action_name=None, level=None, channels=None, tags=None, is_dynamic=None, extension_name=None, blade_name=None, forward_link=None): - super(RecommendationRule, self).__init__() - self.name = 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 + def __init__(self, **kwargs): + super(RecommendationRule, self).__init__(**kwargs) + self.recommendation_name = kwargs.get('recommendation_name', None) + self.display_name = kwargs.get('display_name', None) + self.message = kwargs.get('message', None) + self.recommendation_id = kwargs.get('recommendation_id', None) + self.description = kwargs.get('description', None) + self.action_name = kwargs.get('action_name', None) + self.level = kwargs.get('level', None) + self.channels = kwargs.get('channels', None) + self.category_tags = None + self.is_dynamic = kwargs.get('is_dynamic', None) + self.extension_name = kwargs.get('extension_name', None) + self.blade_name = kwargs.get('blade_name', None) + self.forward_link = kwargs.get('forward_link', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/recommendation_rule_py3.py b/azure-mgmt-web/azure/mgmt/web/models/recommendation_rule_py3.py new file mode 100644 index 000000000000..2626ea719e72 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/recommendation_rule_py3.py @@ -0,0 +1,110 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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_name: Unique name of the rule. + :type recommendation_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.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.models.Channels + :ivar category_tags: The list of category tags that this recommendation + rule belongs to. + :vartype category_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}, + 'category_tags': {'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_name': {'key': 'properties.recommendationName', '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'}, + 'category_tags': {'key': 'properties.categoryTags', '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_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, 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_name = recommendation_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.category_tags = None + self.is_dynamic = is_dynamic + self.extension_name = extension_name + self.blade_name = blade_name + self.forward_link = forward_link diff --git a/azure-mgmt-web/azure/mgmt/web/models/reissue_certificate_order_request.py b/azure-mgmt-web/azure/mgmt/web/models/reissue_certificate_order_request.py index 3f7713649730..d2748321940a 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/reissue_certificate_order_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/reissue_certificate_order_request.py @@ -55,9 +55,9 @@ class ReissueCertificateOrderRequest(ProxyOnlyResource): 'is_private_key_external': {'key': 'properties.isPrivateKeyExternal', 'type': 'bool'}, } - def __init__(self, kind=None, key_size=None, delay_existing_revoke_in_hours=None, csr=None, is_private_key_external=None): - super(ReissueCertificateOrderRequest, self).__init__(kind=kind) - self.key_size = key_size - self.delay_existing_revoke_in_hours = delay_existing_revoke_in_hours - self.csr = csr - self.is_private_key_external = is_private_key_external + def __init__(self, **kwargs): + super(ReissueCertificateOrderRequest, self).__init__(**kwargs) + self.key_size = kwargs.get('key_size', None) + self.delay_existing_revoke_in_hours = kwargs.get('delay_existing_revoke_in_hours', None) + self.csr = kwargs.get('csr', None) + self.is_private_key_external = kwargs.get('is_private_key_external', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/reissue_certificate_order_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/reissue_certificate_order_request_py3.py new file mode 100644 index 000000000000..d79a1364aa17 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/reissue_certificate_order_request_py3.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class ReissueCertificateOrderRequest(ProxyOnlyResource): + """Class representing certificate reissue request. + + 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 key_size: Certificate Key Size. + :type key_size: int + :param delay_existing_revoke_in_hours: Delay in hours to revoke existing + certificate after the new certificate is issued. + :type delay_existing_revoke_in_hours: int + :param csr: Csr to be used for re-key operation. + :type csr: str + :param is_private_key_external: Should we change the ASC type (from + managed private key to external private key and vice versa). + :type is_private_key_external: bool + """ + + _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'}, + 'key_size': {'key': 'properties.keySize', 'type': 'int'}, + 'delay_existing_revoke_in_hours': {'key': 'properties.delayExistingRevokeInHours', 'type': 'int'}, + 'csr': {'key': 'properties.csr', 'type': 'str'}, + 'is_private_key_external': {'key': 'properties.isPrivateKeyExternal', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, key_size: int=None, delay_existing_revoke_in_hours: int=None, csr: str=None, is_private_key_external: bool=None, **kwargs) -> None: + super(ReissueCertificateOrderRequest, self).__init__(kind=kind, **kwargs) + self.key_size = key_size + self.delay_existing_revoke_in_hours = delay_existing_revoke_in_hours + self.csr = csr + self.is_private_key_external = is_private_key_external diff --git a/azure-mgmt-web/azure/mgmt/web/models/relay_service_connection_entity.py b/azure-mgmt-web/azure/mgmt/web/models/relay_service_connection_entity.py index a3dcf67f25c0..d67437d392e4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/relay_service_connection_entity.py +++ b/azure-mgmt-web/azure/mgmt/web/models/relay_service_connection_entity.py @@ -62,12 +62,12 @@ class RelayServiceConnectionEntity(ProxyOnlyResource): 'biztalk_uri': {'key': 'properties.biztalkUri', 'type': 'str'}, } - def __init__(self, kind=None, entity_name=None, entity_connection_string=None, resource_type=None, resource_connection_string=None, hostname=None, port=None, biztalk_uri=None): - super(RelayServiceConnectionEntity, self).__init__(kind=kind) - self.entity_name = entity_name - self.entity_connection_string = entity_connection_string - self.resource_type = resource_type - self.resource_connection_string = resource_connection_string - self.hostname = hostname - self.port = port - self.biztalk_uri = biztalk_uri + def __init__(self, **kwargs): + super(RelayServiceConnectionEntity, self).__init__(**kwargs) + self.entity_name = kwargs.get('entity_name', None) + self.entity_connection_string = kwargs.get('entity_connection_string', None) + self.resource_type = kwargs.get('resource_type', None) + self.resource_connection_string = kwargs.get('resource_connection_string', None) + self.hostname = kwargs.get('hostname', None) + self.port = kwargs.get('port', None) + self.biztalk_uri = kwargs.get('biztalk_uri', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/relay_service_connection_entity_py3.py b/azure-mgmt-web/azure/mgmt/web/models/relay_service_connection_entity_py3.py new file mode 100644 index 000000000000..a31c498d377a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/relay_service_connection_entity_py3.py @@ -0,0 +1,73 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class RelayServiceConnectionEntity(ProxyOnlyResource): + """Hybrid Connection for an App Service app. + + 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 entity_name: + :type entity_name: str + :param entity_connection_string: + :type entity_connection_string: str + :param resource_type: + :type resource_type: str + :param resource_connection_string: + :type resource_connection_string: str + :param hostname: + :type hostname: str + :param port: + :type port: int + :param biztalk_uri: + :type biztalk_uri: 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'}, + 'entity_name': {'key': 'properties.entityName', 'type': 'str'}, + 'entity_connection_string': {'key': 'properties.entityConnectionString', 'type': 'str'}, + 'resource_type': {'key': 'properties.resourceType', 'type': 'str'}, + 'resource_connection_string': {'key': 'properties.resourceConnectionString', 'type': 'str'}, + 'hostname': {'key': 'properties.hostname', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'biztalk_uri': {'key': 'properties.biztalkUri', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, entity_name: str=None, entity_connection_string: str=None, resource_type: str=None, resource_connection_string: str=None, hostname: str=None, port: int=None, biztalk_uri: str=None, **kwargs) -> None: + super(RelayServiceConnectionEntity, self).__init__(kind=kind, **kwargs) + self.entity_name = entity_name + self.entity_connection_string = entity_connection_string + self.resource_type = resource_type + self.resource_connection_string = resource_connection_string + self.hostname = hostname + self.port = port + self.biztalk_uri = biztalk_uri diff --git a/azure-mgmt-web/azure/mgmt/web/models/rendering.py b/azure-mgmt-web/azure/mgmt/web/models/rendering.py new file mode 100644 index 000000000000..e2327cb854ef --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/rendering.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Rendering(Model): + """Instructions for rendering the data. + + :param type: Rendering Type. Possible values include: 'NoGraph', 'Table', + 'TimeSeries', 'TimeSeriesPerInstance' + :type type: str or ~azure.mgmt.web.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 = { + 'type': {'key': 'type', 'type': 'RenderingType'}, + 'title': {'key': 'title', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Rendering, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.title = kwargs.get('title', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/rendering_py3.py b/azure-mgmt-web/azure/mgmt/web/models/rendering_py3.py new file mode 100644 index 000000000000..7b2a87cf5a00 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/rendering_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Rendering(Model): + """Instructions for rendering the data. + + :param type: Rendering Type. Possible values include: 'NoGraph', 'Table', + 'TimeSeries', 'TimeSeriesPerInstance' + :type type: str or ~azure.mgmt.web.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 = { + 'type': {'key': 'type', 'type': 'RenderingType'}, + 'title': {'key': 'title', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, type=None, title: str=None, description: str=None, **kwargs) -> None: + super(Rendering, self).__init__(**kwargs) + self.type = type + self.title = title + self.description = description diff --git a/azure-mgmt-web/azure/mgmt/web/models/renew_certificate_order_request.py b/azure-mgmt-web/azure/mgmt/web/models/renew_certificate_order_request.py index db5bb60f35b3..c7de239be427 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/renew_certificate_order_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/renew_certificate_order_request.py @@ -51,8 +51,8 @@ class RenewCertificateOrderRequest(ProxyOnlyResource): 'is_private_key_external': {'key': 'properties.isPrivateKeyExternal', 'type': 'bool'}, } - def __init__(self, kind=None, key_size=None, csr=None, is_private_key_external=None): - super(RenewCertificateOrderRequest, self).__init__(kind=kind) - self.key_size = key_size - self.csr = csr - self.is_private_key_external = is_private_key_external + def __init__(self, **kwargs): + super(RenewCertificateOrderRequest, self).__init__(**kwargs) + self.key_size = kwargs.get('key_size', None) + self.csr = kwargs.get('csr', None) + self.is_private_key_external = kwargs.get('is_private_key_external', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/renew_certificate_order_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/renew_certificate_order_request_py3.py new file mode 100644 index 000000000000..fe1a28ed0225 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/renew_certificate_order_request_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class RenewCertificateOrderRequest(ProxyOnlyResource): + """Class representing certificate renew request. + + 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 key_size: Certificate Key Size. + :type key_size: int + :param csr: Csr to be used for re-key operation. + :type csr: str + :param is_private_key_external: Should we change the ASC type (from + managed private key to external private key and vice versa). + :type is_private_key_external: bool + """ + + _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'}, + 'key_size': {'key': 'properties.keySize', 'type': 'int'}, + 'csr': {'key': 'properties.csr', 'type': 'str'}, + 'is_private_key_external': {'key': 'properties.isPrivateKeyExternal', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, key_size: int=None, csr: str=None, is_private_key_external: bool=None, **kwargs) -> None: + super(RenewCertificateOrderRequest, self).__init__(kind=kind, **kwargs) + self.key_size = key_size + self.csr = csr + self.is_private_key_external = is_private_key_external diff --git a/azure-mgmt-web/azure/mgmt/web/models/requests_based_trigger.py b/azure-mgmt-web/azure/mgmt/web/models/requests_based_trigger.py index 9452b8342824..ce0c0e4a16f7 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/requests_based_trigger.py +++ b/azure-mgmt-web/azure/mgmt/web/models/requests_based_trigger.py @@ -26,7 +26,7 @@ class RequestsBasedTrigger(Model): 'time_interval': {'key': 'timeInterval', 'type': 'str'}, } - def __init__(self, count=None, time_interval=None): - super(RequestsBasedTrigger, self).__init__() - self.count = count - self.time_interval = time_interval + def __init__(self, **kwargs): + super(RequestsBasedTrigger, self).__init__(**kwargs) + self.count = kwargs.get('count', None) + self.time_interval = kwargs.get('time_interval', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/requests_based_trigger_py3.py b/azure-mgmt-web/azure/mgmt/web/models/requests_based_trigger_py3.py new file mode 100644 index 000000000000..a729212c6372 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/requests_based_trigger_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource.py b/azure-mgmt-web/azure/mgmt/web/models/resource.py index 0f01dbf64c7c..cadebebdd489 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource.py @@ -18,13 +18,15 @@ class Resource(Model): 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: Resource Location. + :param location: Required. Resource Location. :type location: str :ivar type: Resource type. :vartype type: str @@ -48,11 +50,11 @@ class Resource(Model): 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, location, kind=None, tags=None): - super(Resource, self).__init__() + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) self.id = None self.name = None - self.kind = kind - self.location = location + self.kind = kwargs.get('kind', None) + self.location = kwargs.get('location', None) self.type = None - self.tags = tags + self.tags = kwargs.get('tags', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata.py b/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata.py new file mode 100644 index 000000000000..0c6c14f68dc4 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +class ResourceHealthMetadata(ProxyOnlyResource): + """Used for getting ResourceHealthCheck settings. + + 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 category: The category that the resource matches in the RHC Policy + File + :type category: str + :param signal_availability: Is there a health signal for the resource + :type signal_availability: bool + """ + + _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'}, + 'category': {'key': 'properties.category', 'type': 'str'}, + 'signal_availability': {'key': 'properties.signalAvailability', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ResourceHealthMetadata, self).__init__(**kwargs) + self.category = kwargs.get('category', None) + self.signal_availability = kwargs.get('signal_availability', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata_paged.py b/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata_paged.py new file mode 100644 index 000000000000..45c9b8c4945b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata_paged.py @@ -0,0 +1,27 @@ +# 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.paging import Paged + + +class ResourceHealthMetadataPaged(Paged): + """ + A paging container for iterating over a list of :class:`ResourceHealthMetadata ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ResourceHealthMetadata]'} + } + + def __init__(self, *args, **kwargs): + + super(ResourceHealthMetadataPaged, self).__init__(*args, **kwargs) diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata_py3.py new file mode 100644 index 000000000000..1e151f270086 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_health_metadata_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class ResourceHealthMetadata(ProxyOnlyResource): + """Used for getting ResourceHealthCheck settings. + + 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 category: The category that the resource matches in the RHC Policy + File + :type category: str + :param signal_availability: Is there a health signal for the resource + :type signal_availability: bool + """ + + _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'}, + 'category': {'key': 'properties.category', 'type': 'str'}, + 'signal_availability': {'key': 'properties.signalAvailability', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, category: str=None, signal_availability: bool=None, **kwargs) -> None: + super(ResourceHealthMetadata, self).__init__(kind=kind, **kwargs) + self.category = category + self.signal_availability = signal_availability diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric.py index e90d84de81f6..83510a981a62 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource_metric.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric.py @@ -62,8 +62,8 @@ class ResourceMetric(Model): 'properties': {'key': 'properties', 'type': '[ResourceMetricProperty]'}, } - def __init__(self): - super(ResourceMetric, self).__init__() + def __init__(self, **kwargs): + super(ResourceMetric, self).__init__(**kwargs) self.name = None self.unit = None self.time_grain = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_availability.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_availability.py index 7736a639de6e..b93c0c5b442e 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_availability.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_availability.py @@ -34,7 +34,7 @@ class ResourceMetricAvailability(Model): 'retention': {'key': 'retention', 'type': 'str'}, } - def __init__(self): - super(ResourceMetricAvailability, self).__init__() + def __init__(self, **kwargs): + super(ResourceMetricAvailability, self).__init__(**kwargs) self.time_grain = None self.retention = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_availability_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_availability_py3.py new file mode 100644 index 000000000000..abd5414ebb1b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_availability_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_definition.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_definition.py index bcfd2baf221b..fa01c3611c5d 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_definition.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_definition.py @@ -26,9 +26,6 @@ class ResourceMetricDefinition(ProxyOnlyResource): :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.models.ResourceMetricName :ivar unit: Unit of the metric. :vartype unit: str :ivar primary_aggregation_type: Primary aggregation type. @@ -39,8 +36,6 @@ class ResourceMetricDefinition(ProxyOnlyResource): list[~azure.mgmt.web.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] """ @@ -49,12 +44,10 @@ class ResourceMetricDefinition(ProxyOnlyResource): '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}, } @@ -63,21 +56,17 @@ class ResourceMetricDefinition(ProxyOnlyResource): '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=None): - super(ResourceMetricDefinition, self).__init__(kind=kind) - self.resource_metric_definition_name = None + def __init__(self, **kwargs): + super(ResourceMetricDefinition, self).__init__(**kwargs) 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_definition_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_definition_py3.py new file mode 100644 index 000000000000..bde300209a34 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_definition_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 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.models.ResourceMetricAvailability] + :ivar resource_uri: Resource URI. + :vartype resource_uri: str + :ivar properties: Resource metric definition properties. + :vartype properties: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'unit': {'readonly': True}, + 'primary_aggregation_type': {'readonly': True}, + 'metric_availabilities': {'readonly': True}, + 'resource_uri': {'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'}, + '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'}, + 'properties': {'key': 'properties.properties', 'type': '{str}'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(ResourceMetricDefinition, self).__init__(kind=kind, **kwargs) + self.unit = None + self.primary_aggregation_type = None + self.metric_availabilities = None + self.resource_uri = None + self.properties = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_name.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_name.py index fc3985dd48f7..a9bc7e08f9e0 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_name.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_name.py @@ -34,7 +34,7 @@ class ResourceMetricName(Model): 'localized_value': {'key': 'localizedValue', 'type': 'str'}, } - def __init__(self): - super(ResourceMetricName, self).__init__() + def __init__(self, **kwargs): + super(ResourceMetricName, self).__init__(**kwargs) self.value = None self.localized_value = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_name_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_name_py3.py new file mode 100644 index 000000000000..cefb840267a1 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_name_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_property.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_property.py index f9bd040c6801..0a82e61acfe3 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_property.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_property.py @@ -26,7 +26,7 @@ class ResourceMetricProperty(Model): 'value': {'key': 'value', 'type': 'str'}, } - def __init__(self, key=None, value=None): - super(ResourceMetricProperty, self).__init__() - self.key = key - self.value = value + def __init__(self, **kwargs): + super(ResourceMetricProperty, self).__init__(**kwargs) + self.key = kwargs.get('key', None) + self.value = kwargs.get('value', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_property_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_property_py3.py new file mode 100644 index 000000000000..a31a4d44862d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_property_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_py3.py new file mode 100644 index 000000000000..e15c19f17b07 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_py3.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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.models.ResourceMetricValue] + :ivar properties: Resource metric properties collection. + :vartype properties: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_value.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_value.py index fc4db86574cc..0253d46bebfc 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_value.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_value.py @@ -54,8 +54,8 @@ class ResourceMetricValue(Model): 'properties': {'key': 'properties', 'type': '[ResourceMetricProperty]'}, } - def __init__(self): - super(ResourceMetricValue, self).__init__() + def __init__(self, **kwargs): + super(ResourceMetricValue, self).__init__(**kwargs) self.timestamp = None self.average = None self.minimum = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_metric_value_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_value_py3.py new file mode 100644 index 000000000000..4037a249c04f --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_metric_value_py3.py @@ -0,0 +1,65 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability.py b/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability.py index 456eb9416870..00e19a02dfe2 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability.py @@ -38,8 +38,8 @@ class ResourceNameAvailability(Model): 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, name_available=None, reason=None, message=None): - super(ResourceNameAvailability, self).__init__() - self.name_available = name_available - self.reason = reason - self.message = message + def __init__(self, **kwargs): + super(ResourceNameAvailability, self).__init__(**kwargs) + self.name_available = kwargs.get('name_available', None) + self.reason = kwargs.get('reason', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_py3.py new file mode 100644 index 000000000000..29684bed5cd3 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResourceNameAvailability(Model): + """Information regarding availbility of a resource name. + + :param name_available: true indicates name is valid and + available. false indicates the name is invalid, unavailable, + or both. + :type name_available: bool + :param reason: Invalid indicates the name provided does not + match Azure App Service naming requirements. AlreadyExists + indicates that the name is already in use and is therefore unavailable. + Possible values include: 'Invalid', 'AlreadyExists' + :type reason: str or ~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_request.py b/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_request.py index 2f7ddebe9493..58bd2ae08060 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_request.py @@ -15,10 +15,12 @@ class ResourceNameAvailabilityRequest(Model): """Resource name availability request content. - :param name: Resource name to verify. + All required parameters must be populated in order to send to Azure. + + :param name: Required. Resource name to verify. :type name: str - :param type: Resource type used for verification. Possible values include: - 'Site', 'Slot', 'HostingEnvironment', 'PublishingUser', + :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.models.CheckNameResourceTypes @@ -37,8 +39,8 @@ class ResourceNameAvailabilityRequest(Model): 'is_fqdn': {'key': 'isFqdn', 'type': 'bool'}, } - def __init__(self, name, type, is_fqdn=None): - super(ResourceNameAvailabilityRequest, self).__init__() - self.name = name - self.type = type - self.is_fqdn = is_fqdn + def __init__(self, **kwargs): + super(ResourceNameAvailabilityRequest, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) + self.is_fqdn = kwargs.get('is_fqdn', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_request_py3.py new file mode 100644 index 000000000000..52674f7583c9 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_name_availability_request_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/resource_py3.py new file mode 100644 index 000000000000..76c166da271d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/resource_py3.py @@ -0,0 +1,60 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/response_meta_data.py b/azure-mgmt-web/azure/mgmt/web/models/response_meta_data.py index 308db7d8a619..00614b9e4ebb 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/response_meta_data.py +++ b/azure-mgmt-web/azure/mgmt/web/models/response_meta_data.py @@ -23,6 +23,6 @@ class ResponseMetaData(Model): 'data_source': {'key': 'dataSource', 'type': 'DataSource'}, } - def __init__(self, data_source=None): - super(ResponseMetaData, self).__init__() - self.data_source = data_source + def __init__(self, **kwargs): + super(ResponseMetaData, self).__init__(**kwargs) + self.data_source = kwargs.get('data_source', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/response_meta_data_py3.py b/azure-mgmt-web/azure/mgmt/web/models/response_meta_data_py3.py new file mode 100644 index 000000000000..2245b81dc0d2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/response_meta_data_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ResponseMetaData(Model): + """ResponseMetaData. + + :param data_source: Source of the Data + :type data_source: ~azure.mgmt.web.models.DataSource + """ + + _attribute_map = { + 'data_source': {'key': 'dataSource', 'type': 'DataSource'}, + } + + def __init__(self, *, data_source=None, **kwargs) -> None: + super(ResponseMetaData, self).__init__(**kwargs) + self.data_source = data_source diff --git a/azure-mgmt-web/azure/mgmt/web/models/restore_request.py b/azure-mgmt-web/azure/mgmt/web/models/restore_request.py index 72c3ccec6db0..8decaf97ba5e 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/restore_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/restore_request.py @@ -18,6 +18,8 @@ class RestoreRequest(ProxyOnlyResource): 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. @@ -26,13 +28,13 @@ class RestoreRequest(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param storage_account_url: SAS URL to the container. + :param storage_account_url: Required. SAS URL to the container. :type storage_account_url: str :param blob_name: Name of a blob which contains the backup. :type blob_name: str - :param overwrite: true if the restore operation can overwrite - target app; otherwise, false. true is needed if - trying to restore over an existing app. + :param overwrite: Required. true if the restore operation can + overwrite target app; otherwise, false. true is + needed if trying to restore over an existing app. :type overwrite: bool :param site_name: Name of an app. :type site_name: str @@ -52,7 +54,7 @@ class RestoreRequest(ProxyOnlyResource): site. :type app_service_plan: str :param operation_type: Operation type. Possible values include: 'Default', - 'Clone', 'Relocation', 'Snapshot'. Default value: "Default" . + 'Clone', 'Relocation', 'Snapshot', 'CloudFS'. Default value: "Default" . :type operation_type: str or ~azure.mgmt.web.models.BackupRestoreOperationType :param adjust_connection_strings: true if @@ -90,16 +92,16 @@ class RestoreRequest(ProxyOnlyResource): 'hosting_environment': {'key': 'properties.hostingEnvironment', 'type': 'str'}, } - def __init__(self, storage_account_url, overwrite, kind=None, blob_name=None, site_name=None, databases=None, ignore_conflicting_host_names=False, ignore_databases=False, app_service_plan=None, operation_type="Default", adjust_connection_strings=None, hosting_environment=None): - super(RestoreRequest, self).__init__(kind=kind) - self.storage_account_url = storage_account_url - self.blob_name = blob_name - self.overwrite = overwrite - self.site_name = site_name - self.databases = databases - self.ignore_conflicting_host_names = ignore_conflicting_host_names - self.ignore_databases = ignore_databases - self.app_service_plan = app_service_plan - self.operation_type = operation_type - self.adjust_connection_strings = adjust_connection_strings - self.hosting_environment = hosting_environment + def __init__(self, **kwargs): + super(RestoreRequest, self).__init__(**kwargs) + self.storage_account_url = kwargs.get('storage_account_url', None) + self.blob_name = kwargs.get('blob_name', None) + self.overwrite = kwargs.get('overwrite', None) + self.site_name = kwargs.get('site_name', None) + self.databases = kwargs.get('databases', None) + self.ignore_conflicting_host_names = kwargs.get('ignore_conflicting_host_names', False) + self.ignore_databases = kwargs.get('ignore_databases', False) + self.app_service_plan = kwargs.get('app_service_plan', None) + self.operation_type = kwargs.get('operation_type', "Default") + self.adjust_connection_strings = kwargs.get('adjust_connection_strings', None) + self.hosting_environment = kwargs.get('hosting_environment', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/restore_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/restore_request_py3.py new file mode 100644 index 000000000000..33d11d7c2eef --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/restore_request_py3.py @@ -0,0 +1,107 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class RestoreRequest(ProxyOnlyResource): + """Description of a restore request. + + 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 storage_account_url: Required. SAS URL to the container. + :type storage_account_url: str + :param blob_name: Name of a blob which contains the backup. + :type blob_name: str + :param overwrite: Required. true if the restore operation can + overwrite target app; otherwise, false. true is + needed if trying to restore over an existing app. + :type overwrite: bool + :param site_name: Name of an app. + :type site_name: str + :param databases: Collection of databases which should be restored. This + list has to match the list of databases included in the backup. + :type databases: list[~azure.mgmt.web.models.DatabaseBackupSetting] + :param ignore_conflicting_host_names: Changes a logic when restoring an + app with custom domains. true to remove custom domains + automatically. If false, custom domains are added to + the app's object when it is being restored, but that might fail due to + conflicts during the operation. Default value: False . + :type ignore_conflicting_host_names: bool + :param ignore_databases: Ignore the databases and only restore the site + content. Default value: False . + :type ignore_databases: bool + :param app_service_plan: Specify app service plan that will own restored + site. + :type app_service_plan: str + :param operation_type: Operation type. Possible values include: 'Default', + 'Clone', 'Relocation', 'Snapshot', 'CloudFS'. Default value: "Default" . + :type operation_type: str or + ~azure.mgmt.web.models.BackupRestoreOperationType + :param adjust_connection_strings: true if + SiteConfig.ConnectionStrings should be set in new app; otherwise, + false. + :type adjust_connection_strings: bool + :param hosting_environment: App Service Environment name, if needed (only + when restoring an app to an App Service Environment). + :type hosting_environment: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'storage_account_url': {'required': 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'}, + 'storage_account_url': {'key': 'properties.storageAccountUrl', 'type': 'str'}, + 'blob_name': {'key': 'properties.blobName', 'type': 'str'}, + 'overwrite': {'key': 'properties.overwrite', 'type': 'bool'}, + 'site_name': {'key': 'properties.siteName', 'type': 'str'}, + 'databases': {'key': 'properties.databases', 'type': '[DatabaseBackupSetting]'}, + 'ignore_conflicting_host_names': {'key': 'properties.ignoreConflictingHostNames', 'type': 'bool'}, + 'ignore_databases': {'key': 'properties.ignoreDatabases', 'type': 'bool'}, + 'app_service_plan': {'key': 'properties.appServicePlan', 'type': 'str'}, + 'operation_type': {'key': 'properties.operationType', 'type': 'BackupRestoreOperationType'}, + 'adjust_connection_strings': {'key': 'properties.adjustConnectionStrings', 'type': 'bool'}, + 'hosting_environment': {'key': 'properties.hostingEnvironment', 'type': 'str'}, + } + + def __init__(self, *, storage_account_url: str, overwrite: bool, kind: str=None, blob_name: str=None, site_name: str=None, databases=None, ignore_conflicting_host_names: bool=False, ignore_databases: bool=False, app_service_plan: str=None, operation_type="Default", adjust_connection_strings: bool=None, hosting_environment: str=None, **kwargs) -> None: + super(RestoreRequest, self).__init__(kind=kind, **kwargs) + self.storage_account_url = storage_account_url + self.blob_name = blob_name + self.overwrite = overwrite + self.site_name = site_name + self.databases = databases + self.ignore_conflicting_host_names = ignore_conflicting_host_names + self.ignore_databases = ignore_databases + self.app_service_plan = app_service_plan + self.operation_type = operation_type + self.adjust_connection_strings = adjust_connection_strings + self.hosting_environment = hosting_environment diff --git a/azure-mgmt-web/azure/mgmt/web/models/restore_response.py b/azure-mgmt-web/azure/mgmt/web/models/restore_response.py deleted file mode 100644 index 3be8e1f1a0a5..000000000000 --- a/azure-mgmt-web/azure/mgmt/web/models/restore_response.py +++ /dev/null @@ -1,51 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .proxy_only_resource import ProxyOnlyResource - - -class RestoreResponse(ProxyOnlyResource): - """Response for an app restore request. - - 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 operation_id: When server starts the restore process, it will return - an operation ID identifying that particular restore operation. - :vartype operation_id: str - """ - - _validation = { - 'id': {'readonly': True}, - 'name': {'readonly': True}, - 'type': {'readonly': True}, - 'operation_id': {'readonly': True}, - } - - _attribute_map = { - 'id': {'key': 'id', 'type': 'str'}, - 'name': {'key': 'name', 'type': 'str'}, - 'kind': {'key': 'kind', 'type': 'str'}, - 'type': {'key': 'type', 'type': 'str'}, - 'operation_id': {'key': 'properties.operationId', 'type': 'str'}, - } - - def __init__(self, kind=None): - super(RestoreResponse, self).__init__(kind=kind) - self.operation_id = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/service_specification.py b/azure-mgmt-web/azure/mgmt/web/models/service_specification.py index 3dae8a238d72..f0a1c80fe7ae 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/service_specification.py +++ b/azure-mgmt-web/azure/mgmt/web/models/service_specification.py @@ -18,12 +18,16 @@ class ServiceSpecification(Model): :param metric_specifications: :type metric_specifications: list[~azure.mgmt.web.models.MetricSpecification] + :param log_specifications: + :type log_specifications: list[~azure.mgmt.web.models.LogSpecification] """ _attribute_map = { 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + 'log_specifications': {'key': 'logSpecifications', 'type': '[LogSpecification]'}, } - def __init__(self, metric_specifications=None): - super(ServiceSpecification, self).__init__() - self.metric_specifications = metric_specifications + def __init__(self, **kwargs): + super(ServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = kwargs.get('metric_specifications', None) + self.log_specifications = kwargs.get('log_specifications', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/service_specification_py3.py b/azure-mgmt-web/azure/mgmt/web/models/service_specification_py3.py new file mode 100644 index 000000000000..9845f59148e5 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/service_specification_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServiceSpecification(Model): + """Resource metrics service provided by Microsoft.Insights resource provider. + + :param metric_specifications: + :type metric_specifications: + list[~azure.mgmt.web.models.MetricSpecification] + :param log_specifications: + :type log_specifications: list[~azure.mgmt.web.models.LogSpecification] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + 'log_specifications': {'key': 'logSpecifications', 'type': '[LogSpecification]'}, + } + + def __init__(self, *, metric_specifications=None, log_specifications=None, **kwargs) -> None: + super(ServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = metric_specifications + self.log_specifications = log_specifications diff --git a/azure-mgmt-web/azure/mgmt/web/models/site.py b/azure-mgmt-web/azure/mgmt/web/models/site.py index 44ddd0d3ff08..0bf04d727a18 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site.py @@ -18,13 +18,15 @@ class Site(Resource): 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: Resource Location. + :param location: Required. Resource Location. :type location: str :ivar type: Resource type. :vartype type: str @@ -62,6 +64,10 @@ class Site(Resource): :param reserved: true if reserved; otherwise, false. Default value: False . :type reserved: bool + :param is_xenon: Obsolete: Hyper-V sandbox. Default value: False . + :type is_xenon: bool + :param hyper_v: Hyper-V sandbox. Default value: False . + :type hyper_v: bool :ivar last_modified_time_utc: Last time the app was modified, in UTC. Read-only. :vartype last_modified_time_utc: datetime @@ -117,9 +123,6 @@ class Site(Resource): :param cloning_info: If specified during app creation, the app is cloned from a source app. :type cloning_info: ~azure.mgmt.web.models.CloningInfo - :param snapshot_info: If specified during app creation, the app is created - from a previous snapshot. - :type snapshot_info: ~azure.mgmt.web.models.SnapshotRecoveryRequest :ivar resource_group: Name of the resource group the app belongs to. Read-only. :vartype resource_group: str @@ -179,6 +182,8 @@ class Site(Resource): 'host_name_ssl_states': {'key': 'properties.hostNameSslStates', 'type': '[HostNameSslState]'}, 'server_farm_id': {'key': 'properties.serverFarmId', 'type': 'str'}, 'reserved': {'key': 'properties.reserved', 'type': 'bool'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + 'hyper_v': {'key': 'properties.hyperV', '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]'}, @@ -195,7 +200,6 @@ class Site(Resource): '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'}, @@ -204,38 +208,39 @@ class Site(Resource): 'identity': {'key': 'identity', 'type': 'ManagedServiceIdentity'}, } - def __init__(self, location, kind=None, tags=None, enabled=None, host_name_ssl_states=None, server_farm_id=None, reserved=False, site_config=None, scm_site_also_stopped=False, hosting_environment_profile=None, client_affinity_enabled=None, client_cert_enabled=None, host_names_disabled=None, container_size=None, daily_memory_time_quota=None, cloning_info=None, snapshot_info=None, https_only=None, identity=None): - super(Site, self).__init__(kind=kind, location=location, tags=tags) + def __init__(self, **kwargs): + super(Site, self).__init__(**kwargs) self.state = None self.host_names = None self.repository_site_name = None self.usage_state = None - self.enabled = enabled + self.enabled = kwargs.get('enabled', None) 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.host_name_ssl_states = kwargs.get('host_name_ssl_states', None) + self.server_farm_id = kwargs.get('server_farm_id', None) + self.reserved = kwargs.get('reserved', False) + self.is_xenon = kwargs.get('is_xenon', False) + self.hyper_v = kwargs.get('hyper_v', False) self.last_modified_time_utc = None - self.site_config = site_config + self.site_config = kwargs.get('site_config', None) self.traffic_manager_host_names = None - self.scm_site_also_stopped = scm_site_also_stopped + self.scm_site_also_stopped = kwargs.get('scm_site_also_stopped', False) 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.hosting_environment_profile = kwargs.get('hosting_environment_profile', None) + self.client_affinity_enabled = kwargs.get('client_affinity_enabled', None) + self.client_cert_enabled = kwargs.get('client_cert_enabled', None) + self.host_names_disabled = kwargs.get('host_names_disabled', None) 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.container_size = kwargs.get('container_size', None) + self.daily_memory_time_quota = kwargs.get('daily_memory_time_quota', None) self.suspended_till = None self.max_number_of_workers = None - self.cloning_info = cloning_info - self.snapshot_info = snapshot_info + self.cloning_info = kwargs.get('cloning_info', None) 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 + self.https_only = kwargs.get('https_only', None) + self.identity = kwargs.get('identity', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_auth_settings.py b/azure-mgmt-web/azure/mgmt/web/models/site_auth_settings.py index ad9faca40f10..c280193927e4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_auth_settings.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_auth_settings.py @@ -90,6 +90,9 @@ class SiteAuthSettings(ProxyOnlyResource): More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html :type issuer: str + :param validate_issuer: Gets a value indicating whether the issuer should + be a valid HTTPS url and be validated as such. + :type validate_issuer: bool :param allowed_audiences: Allowed audience values to consider when validating JWTs issued by Azure Active Directory. Note that the ClientID value is @@ -188,6 +191,7 @@ class SiteAuthSettings(ProxyOnlyResource): 'client_id': {'key': 'properties.clientId', 'type': 'str'}, 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, 'issuer': {'key': 'properties.issuer', 'type': 'str'}, + 'validate_issuer': {'key': 'properties.validateIssuer', 'type': 'bool'}, 'allowed_audiences': {'key': 'properties.allowedAudiences', 'type': '[str]'}, 'additional_login_params': {'key': 'properties.additionalLoginParams', 'type': '[str]'}, 'google_client_id': {'key': 'properties.googleClientId', 'type': 'str'}, @@ -203,28 +207,29 @@ class SiteAuthSettings(ProxyOnlyResource): 'microsoft_account_oauth_scopes': {'key': 'properties.microsoftAccountOAuthScopes', 'type': '[str]'}, } - def __init__(self, kind=None, enabled=None, runtime_version=None, unauthenticated_client_action=None, token_store_enabled=None, allowed_external_redirect_urls=None, default_provider=None, token_refresh_extension_hours=None, client_id=None, client_secret=None, issuer=None, allowed_audiences=None, additional_login_params=None, google_client_id=None, google_client_secret=None, google_oauth_scopes=None, facebook_app_id=None, facebook_app_secret=None, facebook_oauth_scopes=None, twitter_consumer_key=None, twitter_consumer_secret=None, microsoft_account_client_id=None, microsoft_account_client_secret=None, microsoft_account_oauth_scopes=None): - super(SiteAuthSettings, self).__init__(kind=kind) - self.enabled = enabled - self.runtime_version = runtime_version - self.unauthenticated_client_action = unauthenticated_client_action - self.token_store_enabled = token_store_enabled - self.allowed_external_redirect_urls = allowed_external_redirect_urls - self.default_provider = default_provider - self.token_refresh_extension_hours = token_refresh_extension_hours - self.client_id = client_id - self.client_secret = client_secret - self.issuer = issuer - self.allowed_audiences = allowed_audiences - self.additional_login_params = additional_login_params - self.google_client_id = google_client_id - self.google_client_secret = google_client_secret - self.google_oauth_scopes = google_oauth_scopes - self.facebook_app_id = facebook_app_id - self.facebook_app_secret = facebook_app_secret - self.facebook_oauth_scopes = facebook_oauth_scopes - self.twitter_consumer_key = twitter_consumer_key - self.twitter_consumer_secret = twitter_consumer_secret - self.microsoft_account_client_id = microsoft_account_client_id - self.microsoft_account_client_secret = microsoft_account_client_secret - self.microsoft_account_oauth_scopes = microsoft_account_oauth_scopes + def __init__(self, **kwargs): + super(SiteAuthSettings, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.runtime_version = kwargs.get('runtime_version', None) + self.unauthenticated_client_action = kwargs.get('unauthenticated_client_action', None) + self.token_store_enabled = kwargs.get('token_store_enabled', None) + self.allowed_external_redirect_urls = kwargs.get('allowed_external_redirect_urls', None) + self.default_provider = kwargs.get('default_provider', None) + self.token_refresh_extension_hours = kwargs.get('token_refresh_extension_hours', None) + self.client_id = kwargs.get('client_id', None) + self.client_secret = kwargs.get('client_secret', None) + self.issuer = kwargs.get('issuer', None) + self.validate_issuer = kwargs.get('validate_issuer', None) + self.allowed_audiences = kwargs.get('allowed_audiences', None) + self.additional_login_params = kwargs.get('additional_login_params', None) + self.google_client_id = kwargs.get('google_client_id', None) + self.google_client_secret = kwargs.get('google_client_secret', None) + self.google_oauth_scopes = kwargs.get('google_oauth_scopes', None) + self.facebook_app_id = kwargs.get('facebook_app_id', None) + self.facebook_app_secret = kwargs.get('facebook_app_secret', None) + self.facebook_oauth_scopes = kwargs.get('facebook_oauth_scopes', None) + self.twitter_consumer_key = kwargs.get('twitter_consumer_key', None) + self.twitter_consumer_secret = kwargs.get('twitter_consumer_secret', None) + self.microsoft_account_client_id = kwargs.get('microsoft_account_client_id', None) + self.microsoft_account_client_secret = kwargs.get('microsoft_account_client_secret', None) + self.microsoft_account_oauth_scopes = kwargs.get('microsoft_account_oauth_scopes', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_auth_settings_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_auth_settings_py3.py new file mode 100644 index 000000000000..b2b246e30079 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_auth_settings_py3.py @@ -0,0 +1,235 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SiteAuthSettings(ProxyOnlyResource): + """Configuration settings for the Azure App Service Authentication / + Authorization feature. + + 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 enabled: true if the Authentication / Authorization + feature is enabled for the current app; otherwise, false. + :type enabled: bool + :param runtime_version: The RuntimeVersion of the Authentication / + Authorization feature in use for the current app. + The setting in this value can control the behavior of certain features in + the Authentication / Authorization module. + :type runtime_version: str + :param unauthenticated_client_action: The action to take when an + unauthenticated client attempts to access the app. Possible values + include: 'RedirectToLoginPage', 'AllowAnonymous' + :type unauthenticated_client_action: str or + ~azure.mgmt.web.models.UnauthenticatedClientAction + :param token_store_enabled: true to durably store + platform-specific security tokens that are obtained during login flows; + otherwise, false. + The default is false. + :type token_store_enabled: bool + :param allowed_external_redirect_urls: External URLs that can be + redirected to as part of logging in or logging out of the app. Note that + the query string part of the URL is ignored. + This is an advanced setting typically only needed by Windows Store + application backends. + Note that URLs within the current domain are always implicitly allowed. + :type allowed_external_redirect_urls: list[str] + :param default_provider: The default authentication provider to use when + multiple providers are configured. + This setting is only needed if multiple providers are configured and the + unauthenticated client + action is set to "RedirectToLoginPage". Possible values include: + 'AzureActiveDirectory', 'Facebook', 'Google', 'MicrosoftAccount', + 'Twitter' + :type default_provider: str or + ~azure.mgmt.web.models.BuiltInAuthenticationProvider + :param token_refresh_extension_hours: The number of hours after session + token expiration that a session token can be used to + call the token refresh API. The default is 72 hours. + :type token_refresh_extension_hours: float + :param client_id: The Client ID of this relying party application, known + as the client_id. + This setting is required for enabling OpenID Connection authentication + with Azure Active Directory or + other 3rd party OpenID Connect providers. + More information on OpenID Connect: + http://openid.net/specs/openid-connect-core-1_0.html + :type client_id: str + :param client_secret: The Client Secret of this relying party application + (in Azure Active Directory, this is also referred to as the Key). + This setting is optional. If no client secret is configured, the OpenID + Connect implicit auth flow is used to authenticate end users. + Otherwise, the OpenID Connect Authorization Code Flow is used to + authenticate end users. + More information on OpenID Connect: + http://openid.net/specs/openid-connect-core-1_0.html + :type client_secret: str + :param issuer: The OpenID Connect Issuer URI that represents the entity + which issues access tokens for this application. + When using Azure Active Directory, this value is the URI of the directory + tenant, e.g. https://sts.windows.net/{tenant-guid}/. + This URI is a case-sensitive identifier for the token issuer. + More information on OpenID Connect Discovery: + http://openid.net/specs/openid-connect-discovery-1_0.html + :type issuer: str + :param validate_issuer: Gets a value indicating whether the issuer should + be a valid HTTPS url and be validated as such. + :type validate_issuer: bool + :param allowed_audiences: Allowed audience values to consider when + validating JWTs issued by + Azure Active Directory. Note that the ClientID value is + always considered an + allowed audience, regardless of this setting. + :type allowed_audiences: list[str] + :param additional_login_params: Login parameters to send to the OpenID + Connect authorization endpoint when + a user logs in. Each parameter must be in the form "key=value". + :type additional_login_params: list[str] + :param google_client_id: The OpenID Connect Client ID for the Google web + application. + This setting is required for enabling Google Sign-In. + Google Sign-In documentation: + https://developers.google.com/identity/sign-in/web/ + :type google_client_id: str + :param google_client_secret: The client secret associated with the Google + web application. + This setting is required for enabling Google Sign-In. + Google Sign-In documentation: + https://developers.google.com/identity/sign-in/web/ + :type google_client_secret: str + :param google_oauth_scopes: The OAuth 2.0 scopes that will be requested as + part of Google Sign-In authentication. + This setting is optional. If not specified, "openid", "profile", and + "email" are used as default scopes. + Google Sign-In documentation: + https://developers.google.com/identity/sign-in/web/ + :type google_oauth_scopes: list[str] + :param facebook_app_id: The App ID of the Facebook app used for login. + This setting is required for enabling Facebook Login. + Facebook Login documentation: + https://developers.facebook.com/docs/facebook-login + :type facebook_app_id: str + :param facebook_app_secret: The App Secret of the Facebook app used for + Facebook Login. + This setting is required for enabling Facebook Login. + Facebook Login documentation: + https://developers.facebook.com/docs/facebook-login + :type facebook_app_secret: str + :param facebook_oauth_scopes: The OAuth 2.0 scopes that will be requested + as part of Facebook Login authentication. + This setting is optional. + Facebook Login documentation: + https://developers.facebook.com/docs/facebook-login + :type facebook_oauth_scopes: list[str] + :param twitter_consumer_key: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. + This setting is required for enabling Twitter Sign-In. + Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in + :type twitter_consumer_key: str + :param twitter_consumer_secret: The OAuth 1.0a consumer secret of the + Twitter application used for sign-in. + This setting is required for enabling Twitter Sign-In. + Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in + :type twitter_consumer_secret: str + :param microsoft_account_client_id: The OAuth 2.0 client ID that was + created for the app used for authentication. + This setting is required for enabling Microsoft Account authentication. + Microsoft Account OAuth documentation: + https://dev.onedrive.com/auth/msa_oauth.htm + :type microsoft_account_client_id: str + :param microsoft_account_client_secret: The OAuth 2.0 client secret that + was created for the app used for authentication. + This setting is required for enabling Microsoft Account authentication. + Microsoft Account OAuth documentation: + https://dev.onedrive.com/auth/msa_oauth.htm + :type microsoft_account_client_secret: str + :param microsoft_account_oauth_scopes: The OAuth 2.0 scopes that will be + requested as part of Microsoft Account authentication. + This setting is optional. If not specified, "wl.basic" is used as the + default scope. + Microsoft Account Scopes and permissions documentation: + https://msdn.microsoft.com/en-us/library/dn631845.aspx + :type microsoft_account_oauth_scopes: list[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'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'runtime_version': {'key': 'properties.runtimeVersion', 'type': 'str'}, + 'unauthenticated_client_action': {'key': 'properties.unauthenticatedClientAction', 'type': 'UnauthenticatedClientAction'}, + 'token_store_enabled': {'key': 'properties.tokenStoreEnabled', 'type': 'bool'}, + 'allowed_external_redirect_urls': {'key': 'properties.allowedExternalRedirectUrls', 'type': '[str]'}, + 'default_provider': {'key': 'properties.defaultProvider', 'type': 'BuiltInAuthenticationProvider'}, + 'token_refresh_extension_hours': {'key': 'properties.tokenRefreshExtensionHours', 'type': 'float'}, + 'client_id': {'key': 'properties.clientId', 'type': 'str'}, + 'client_secret': {'key': 'properties.clientSecret', 'type': 'str'}, + 'issuer': {'key': 'properties.issuer', 'type': 'str'}, + 'validate_issuer': {'key': 'properties.validateIssuer', 'type': 'bool'}, + 'allowed_audiences': {'key': 'properties.allowedAudiences', 'type': '[str]'}, + 'additional_login_params': {'key': 'properties.additionalLoginParams', 'type': '[str]'}, + 'google_client_id': {'key': 'properties.googleClientId', 'type': 'str'}, + 'google_client_secret': {'key': 'properties.googleClientSecret', 'type': 'str'}, + 'google_oauth_scopes': {'key': 'properties.googleOAuthScopes', 'type': '[str]'}, + 'facebook_app_id': {'key': 'properties.facebookAppId', 'type': 'str'}, + 'facebook_app_secret': {'key': 'properties.facebookAppSecret', 'type': 'str'}, + 'facebook_oauth_scopes': {'key': 'properties.facebookOAuthScopes', 'type': '[str]'}, + 'twitter_consumer_key': {'key': 'properties.twitterConsumerKey', 'type': 'str'}, + 'twitter_consumer_secret': {'key': 'properties.twitterConsumerSecret', 'type': 'str'}, + 'microsoft_account_client_id': {'key': 'properties.microsoftAccountClientId', 'type': 'str'}, + 'microsoft_account_client_secret': {'key': 'properties.microsoftAccountClientSecret', 'type': 'str'}, + 'microsoft_account_oauth_scopes': {'key': 'properties.microsoftAccountOAuthScopes', 'type': '[str]'}, + } + + def __init__(self, *, kind: str=None, enabled: bool=None, runtime_version: str=None, unauthenticated_client_action=None, token_store_enabled: bool=None, allowed_external_redirect_urls=None, default_provider=None, token_refresh_extension_hours: float=None, client_id: str=None, client_secret: str=None, issuer: str=None, validate_issuer: bool=None, allowed_audiences=None, additional_login_params=None, google_client_id: str=None, google_client_secret: str=None, google_oauth_scopes=None, facebook_app_id: str=None, facebook_app_secret: str=None, facebook_oauth_scopes=None, twitter_consumer_key: str=None, twitter_consumer_secret: str=None, microsoft_account_client_id: str=None, microsoft_account_client_secret: str=None, microsoft_account_oauth_scopes=None, **kwargs) -> None: + super(SiteAuthSettings, self).__init__(kind=kind, **kwargs) + self.enabled = enabled + self.runtime_version = runtime_version + self.unauthenticated_client_action = unauthenticated_client_action + self.token_store_enabled = token_store_enabled + self.allowed_external_redirect_urls = allowed_external_redirect_urls + self.default_provider = default_provider + self.token_refresh_extension_hours = token_refresh_extension_hours + self.client_id = client_id + self.client_secret = client_secret + self.issuer = issuer + self.validate_issuer = validate_issuer + self.allowed_audiences = allowed_audiences + self.additional_login_params = additional_login_params + self.google_client_id = google_client_id + self.google_client_secret = google_client_secret + self.google_oauth_scopes = google_oauth_scopes + self.facebook_app_id = facebook_app_id + self.facebook_app_secret = facebook_app_secret + self.facebook_oauth_scopes = facebook_oauth_scopes + self.twitter_consumer_key = twitter_consumer_key + self.twitter_consumer_secret = twitter_consumer_secret + self.microsoft_account_client_id = microsoft_account_client_id + self.microsoft_account_client_secret = microsoft_account_client_secret + self.microsoft_account_oauth_scopes = microsoft_account_oauth_scopes diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_cloneability.py b/azure-mgmt-web/azure/mgmt/web/models/site_cloneability.py index b58b934354c4..37d68387f3b3 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_cloneability.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_cloneability.py @@ -40,9 +40,9 @@ class SiteCloneability(Model): 'blocking_characteristics': {'key': 'blockingCharacteristics', 'type': '[SiteCloneabilityCriterion]'}, } - def __init__(self, result=None, blocking_features=None, unsupported_features=None, blocking_characteristics=None): - super(SiteCloneability, self).__init__() - self.result = result - self.blocking_features = blocking_features - self.unsupported_features = unsupported_features - self.blocking_characteristics = blocking_characteristics + def __init__(self, **kwargs): + super(SiteCloneability, self).__init__(**kwargs) + self.result = kwargs.get('result', None) + self.blocking_features = kwargs.get('blocking_features', None) + self.unsupported_features = kwargs.get('unsupported_features', None) + self.blocking_characteristics = kwargs.get('blocking_characteristics', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_criterion.py b/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_criterion.py index 8e6bf29ccb39..619ec823c8a8 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_criterion.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_criterion.py @@ -26,7 +26,7 @@ class SiteCloneabilityCriterion(Model): 'description': {'key': 'description', 'type': 'str'}, } - def __init__(self, name=None, description=None): - super(SiteCloneabilityCriterion, self).__init__() - self.name = name - self.description = description + def __init__(self, **kwargs): + super(SiteCloneabilityCriterion, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_criterion_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_criterion_py3.py new file mode 100644 index 000000000000..fcca5c64c56f --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_criterion_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SiteCloneabilityCriterion(Model): + """An app cloneability criterion. + + :param name: Name of criterion. + :type name: str + :param description: Description of criterion. + :type description: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, description: str=None, **kwargs) -> None: + super(SiteCloneabilityCriterion, self).__init__(**kwargs) + self.name = name + self.description = description diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_py3.py new file mode 100644 index 000000000000..87d084d5e5e4 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_cloneability_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SiteCloneability(Model): + """Represents whether or not an app is cloneable. + + :param result: Name of app. Possible values include: 'Cloneable', + 'PartiallyCloneable', 'NotCloneable' + :type result: str or ~azure.mgmt.web.models.CloneAbilityResult + :param blocking_features: List of features enabled on app that prevent + cloning. + :type blocking_features: + list[~azure.mgmt.web.models.SiteCloneabilityCriterion] + :param unsupported_features: List of features enabled on app that are + non-blocking but cannot be cloned. The app can still be cloned + but the features in this list will not be set up on cloned app. + :type unsupported_features: + list[~azure.mgmt.web.models.SiteCloneabilityCriterion] + :param blocking_characteristics: List of blocking application + characteristics. + :type blocking_characteristics: + list[~azure.mgmt.web.models.SiteCloneabilityCriterion] + """ + + _attribute_map = { + 'result': {'key': 'result', 'type': 'CloneAbilityResult'}, + 'blocking_features': {'key': 'blockingFeatures', 'type': '[SiteCloneabilityCriterion]'}, + 'unsupported_features': {'key': 'unsupportedFeatures', 'type': '[SiteCloneabilityCriterion]'}, + 'blocking_characteristics': {'key': 'blockingCharacteristics', 'type': '[SiteCloneabilityCriterion]'}, + } + + def __init__(self, *, result=None, blocking_features=None, unsupported_features=None, blocking_characteristics=None, **kwargs) -> None: + super(SiteCloneability, self).__init__(**kwargs) + self.result = result + self.blocking_features = blocking_features + self.unsupported_features = unsupported_features + self.blocking_characteristics = blocking_characteristics diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_config.py b/azure-mgmt-web/azure/mgmt/web/models/site_config.py index 48b3fdb973a1..759ff0876aaa 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_config.py @@ -33,6 +33,8 @@ class SiteConfig(Model): :type node_version: str :param linux_fx_version: Linux App Framework and version :type linux_fx_version: str + :param windows_fx_version: Xenon App Framework and version + :type windows_fx_version: str :param request_tracing_enabled: true if request tracing is enabled; otherwise, false. :type request_tracing_enabled: bool @@ -55,6 +57,9 @@ class SiteConfig(Model): :type publishing_username: str :param app_settings: Application settings. :type app_settings: list[~azure.mgmt.web.models.NameValuePair] + :param azure_storage_accounts: User-provided Azure storage accounts. + :type azure_storage_accounts: dict[str, + ~azure.mgmt.web.models.AzureStorageInfoValue] :param connection_strings: Connection strings. :type connection_strings: list[~azure.mgmt.web.models.ConnStringInfo] :ivar machine_key: Site MachineKey. @@ -120,6 +125,10 @@ class SiteConfig(Model): :param local_my_sql_enabled: true to enable local MySQL; otherwise, false. Default value: False . :type local_my_sql_enabled: bool + :param managed_service_identity_id: Managed Service Identity Id + :type managed_service_identity_id: int + :param x_managed_service_identity_id: Explicit Managed Service Identity Id + :type x_managed_service_identity_id: int :param ip_security_restrictions: IP security restrictions. :type ip_security_restrictions: list[~azure.mgmt.web.models.IpSecurityRestriction] @@ -130,10 +139,17 @@ class SiteConfig(Model): TLS required for SSL requests. Possible values include: '1.0', '1.1', '1.2' :type min_tls_version: str or ~azure.mgmt.web.models.SupportedTlsVersions + :param ftps_state: State of FTP / FTPS service. Possible values include: + 'AllAllowed', 'FtpsOnly', 'Disabled' + :type ftps_state: str or ~azure.mgmt.web.models.FtpsState + :param reserved_instance_count: Number of reserved instances. + This setting only applies to the Consumption Plan + :type reserved_instance_count: int """ _validation = { 'machine_key': {'readonly': True}, + 'reserved_instance_count': {'maximum': 10, 'minimum': 0}, } _attribute_map = { @@ -144,6 +160,7 @@ class SiteConfig(Model): 'python_version': {'key': 'pythonVersion', 'type': 'str'}, 'node_version': {'key': 'nodeVersion', 'type': 'str'}, 'linux_fx_version': {'key': 'linuxFxVersion', 'type': 'str'}, + 'windows_fx_version': {'key': 'windowsFxVersion', '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'}, @@ -153,6 +170,7 @@ class SiteConfig(Model): 'detailed_error_logging_enabled': {'key': 'detailedErrorLoggingEnabled', 'type': 'bool'}, 'publishing_username': {'key': 'publishingUsername', 'type': 'str'}, 'app_settings': {'key': 'appSettings', 'type': '[NameValuePair]'}, + 'azure_storage_accounts': {'key': 'azureStorageAccounts', 'type': '{AzureStorageInfoValue}'}, 'connection_strings': {'key': 'connectionStrings', 'type': '[ConnStringInfo]'}, 'machine_key': {'key': 'machineKey', 'type': 'SiteMachineKey'}, 'handler_mappings': {'key': 'handlerMappings', 'type': '[HandlerMapping]'}, @@ -179,55 +197,65 @@ class SiteConfig(Model): 'api_definition': {'key': 'apiDefinition', 'type': 'ApiDefinitionInfo'}, 'auto_swap_slot_name': {'key': 'autoSwapSlotName', 'type': 'str'}, 'local_my_sql_enabled': {'key': 'localMySqlEnabled', 'type': 'bool'}, + 'managed_service_identity_id': {'key': 'managedServiceIdentityId', 'type': 'int'}, + 'x_managed_service_identity_id': {'key': 'xManagedServiceIdentityId', 'type': 'int'}, 'ip_security_restrictions': {'key': 'ipSecurityRestrictions', 'type': '[IpSecurityRestriction]'}, 'http20_enabled': {'key': 'http20Enabled', 'type': 'bool'}, 'min_tls_version': {'key': 'minTlsVersion', 'type': 'str'}, + 'ftps_state': {'key': 'ftpsState', 'type': 'str'}, + 'reserved_instance_count': {'key': 'reservedInstanceCount', 'type': 'int'}, } - def __init__(self, number_of_workers=None, default_documents=None, net_framework_version="v4.6", php_version=None, python_version=None, node_version=None, linux_fx_version=None, request_tracing_enabled=None, request_tracing_expiration_time=None, remote_debugging_enabled=None, remote_debugging_version=None, http_logging_enabled=None, logs_directory_size_limit=None, detailed_error_logging_enabled=None, publishing_username=None, app_settings=None, connection_strings=None, handler_mappings=None, document_root=None, scm_type=None, use32_bit_worker_process=None, web_sockets_enabled=None, always_on=None, java_version=None, java_container=None, java_container_version=None, app_command_line=None, managed_pipeline_mode=None, virtual_applications=None, load_balancing=None, experiments=None, limits=None, auto_heal_enabled=None, auto_heal_rules=None, tracing_options=None, vnet_name=None, cors=None, push=None, api_definition=None, auto_swap_slot_name=None, local_my_sql_enabled=False, ip_security_restrictions=None, http20_enabled=True, min_tls_version=None): - super(SiteConfig, self).__init__() - 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 + def __init__(self, **kwargs): + super(SiteConfig, self).__init__(**kwargs) + self.number_of_workers = kwargs.get('number_of_workers', None) + self.default_documents = kwargs.get('default_documents', None) + self.net_framework_version = kwargs.get('net_framework_version', "v4.6") + self.php_version = kwargs.get('php_version', None) + self.python_version = kwargs.get('python_version', None) + self.node_version = kwargs.get('node_version', None) + self.linux_fx_version = kwargs.get('linux_fx_version', None) + self.windows_fx_version = kwargs.get('windows_fx_version', None) + self.request_tracing_enabled = kwargs.get('request_tracing_enabled', None) + self.request_tracing_expiration_time = kwargs.get('request_tracing_expiration_time', None) + self.remote_debugging_enabled = kwargs.get('remote_debugging_enabled', None) + self.remote_debugging_version = kwargs.get('remote_debugging_version', None) + self.http_logging_enabled = kwargs.get('http_logging_enabled', None) + self.logs_directory_size_limit = kwargs.get('logs_directory_size_limit', None) + self.detailed_error_logging_enabled = kwargs.get('detailed_error_logging_enabled', None) + self.publishing_username = kwargs.get('publishing_username', None) + self.app_settings = kwargs.get('app_settings', None) + self.azure_storage_accounts = kwargs.get('azure_storage_accounts', None) + self.connection_strings = kwargs.get('connection_strings', None) 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 + self.handler_mappings = kwargs.get('handler_mappings', None) + self.document_root = kwargs.get('document_root', None) + self.scm_type = kwargs.get('scm_type', None) + self.use32_bit_worker_process = kwargs.get('use32_bit_worker_process', None) + self.web_sockets_enabled = kwargs.get('web_sockets_enabled', None) + self.always_on = kwargs.get('always_on', None) + self.java_version = kwargs.get('java_version', None) + self.java_container = kwargs.get('java_container', None) + self.java_container_version = kwargs.get('java_container_version', None) + self.app_command_line = kwargs.get('app_command_line', None) + self.managed_pipeline_mode = kwargs.get('managed_pipeline_mode', None) + self.virtual_applications = kwargs.get('virtual_applications', None) + self.load_balancing = kwargs.get('load_balancing', None) + self.experiments = kwargs.get('experiments', None) + self.limits = kwargs.get('limits', None) + self.auto_heal_enabled = kwargs.get('auto_heal_enabled', None) + self.auto_heal_rules = kwargs.get('auto_heal_rules', None) + self.tracing_options = kwargs.get('tracing_options', None) + self.vnet_name = kwargs.get('vnet_name', None) + self.cors = kwargs.get('cors', None) + self.push = kwargs.get('push', None) + self.api_definition = kwargs.get('api_definition', None) + self.auto_swap_slot_name = kwargs.get('auto_swap_slot_name', None) + self.local_my_sql_enabled = kwargs.get('local_my_sql_enabled', False) + self.managed_service_identity_id = kwargs.get('managed_service_identity_id', None) + self.x_managed_service_identity_id = kwargs.get('x_managed_service_identity_id', None) + self.ip_security_restrictions = kwargs.get('ip_security_restrictions', None) + self.http20_enabled = kwargs.get('http20_enabled', True) + self.min_tls_version = kwargs.get('min_tls_version', None) + self.ftps_state = kwargs.get('ftps_state', None) + self.reserved_instance_count = kwargs.get('reserved_instance_count', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_config_py3.py new file mode 100644 index 000000000000..a8534e4686b4 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_config_py3.py @@ -0,0 +1,261 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 windows_fx_version: Xenon App Framework and version + :type windows_fx_version: str + :param request_tracing_enabled: true if request tracing is + enabled; otherwise, false. + :type request_tracing_enabled: bool + :param request_tracing_expiration_time: Request tracing expiration time. + :type request_tracing_expiration_time: datetime + :param remote_debugging_enabled: true if remote debugging is + enabled; otherwise, false. + :type remote_debugging_enabled: bool + :param remote_debugging_version: Remote debugging version. + :type remote_debugging_version: str + :param http_logging_enabled: true if HTTP logging is enabled; + otherwise, false. + :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: true if detailed error + logging is enabled; otherwise, false. + :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.models.NameValuePair] + :param azure_storage_accounts: User-provided Azure storage accounts. + :type azure_storage_accounts: dict[str, + ~azure.mgmt.web.models.AzureStorageInfoValue] + :param connection_strings: Connection strings. + :type connection_strings: list[~azure.mgmt.web.models.ConnStringInfo] + :ivar machine_key: Site MachineKey. + :vartype machine_key: ~azure.mgmt.web.models.SiteMachineKey + :param handler_mappings: Handler mappings. + :type handler_mappings: list[~azure.mgmt.web.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.models.ScmType + :param use32_bit_worker_process: true to use 32-bit worker + process; otherwise, false. + :type use32_bit_worker_process: bool + :param web_sockets_enabled: true if WebSocket is enabled; + otherwise, false. + :type web_sockets_enabled: bool + :param always_on: true if Always On is enabled; otherwise, + false. + :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.models.ManagedPipelineMode + :param virtual_applications: Virtual applications. + :type virtual_applications: + list[~azure.mgmt.web.models.VirtualApplication] + :param load_balancing: Site load balancing. Possible values include: + 'WeightedRoundRobin', 'LeastRequests', 'LeastResponseTime', + 'WeightedTotalTraffic', 'RequestHash' + :type load_balancing: str or ~azure.mgmt.web.models.SiteLoadBalancing + :param experiments: This is work around for polymophic types. + :type experiments: ~azure.mgmt.web.models.Experiments + :param limits: Site limits. + :type limits: ~azure.mgmt.web.models.SiteLimits + :param auto_heal_enabled: true if Auto Heal is enabled; + otherwise, false. + :type auto_heal_enabled: bool + :param auto_heal_rules: Auto Heal rules. + :type auto_heal_rules: ~azure.mgmt.web.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.models.CorsSettings + :param push: Push endpoint settings. + :type push: ~azure.mgmt.web.models.PushSettings + :param api_definition: Information about the formal API definition for the + app. + :type api_definition: ~azure.mgmt.web.models.ApiDefinitionInfo + :param auto_swap_slot_name: Auto-swap slot name. + :type auto_swap_slot_name: str + :param local_my_sql_enabled: true to enable local MySQL; + otherwise, false. Default value: False . + :type local_my_sql_enabled: bool + :param managed_service_identity_id: Managed Service Identity Id + :type managed_service_identity_id: int + :param x_managed_service_identity_id: Explicit Managed Service Identity Id + :type x_managed_service_identity_id: int + :param ip_security_restrictions: IP security restrictions. + :type ip_security_restrictions: + list[~azure.mgmt.web.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.models.SupportedTlsVersions + :param ftps_state: State of FTP / FTPS service. Possible values include: + 'AllAllowed', 'FtpsOnly', 'Disabled' + :type ftps_state: str or ~azure.mgmt.web.models.FtpsState + :param reserved_instance_count: Number of reserved instances. + This setting only applies to the Consumption Plan + :type reserved_instance_count: int + """ + + _validation = { + 'machine_key': {'readonly': True}, + 'reserved_instance_count': {'maximum': 10, 'minimum': 0}, + } + + _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'}, + 'windows_fx_version': {'key': 'windowsFxVersion', '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]'}, + 'azure_storage_accounts': {'key': 'azureStorageAccounts', 'type': '{AzureStorageInfoValue}'}, + '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'}, + 'managed_service_identity_id': {'key': 'managedServiceIdentityId', 'type': 'int'}, + 'x_managed_service_identity_id': {'key': 'xManagedServiceIdentityId', 'type': 'int'}, + 'ip_security_restrictions': {'key': 'ipSecurityRestrictions', 'type': '[IpSecurityRestriction]'}, + 'http20_enabled': {'key': 'http20Enabled', 'type': 'bool'}, + 'min_tls_version': {'key': 'minTlsVersion', 'type': 'str'}, + 'ftps_state': {'key': 'ftpsState', 'type': 'str'}, + 'reserved_instance_count': {'key': 'reservedInstanceCount', 'type': 'int'}, + } + + 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, windows_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, azure_storage_accounts=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, managed_service_identity_id: int=None, x_managed_service_identity_id: int=None, ip_security_restrictions=None, http20_enabled: bool=True, min_tls_version=None, ftps_state=None, reserved_instance_count: int=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.windows_fx_version = windows_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.azure_storage_accounts = azure_storage_accounts + 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.managed_service_identity_id = managed_service_identity_id + self.x_managed_service_identity_id = x_managed_service_identity_id + self.ip_security_restrictions = ip_security_restrictions + self.http20_enabled = http20_enabled + self.min_tls_version = min_tls_version + self.ftps_state = ftps_state + self.reserved_instance_count = reserved_instance_count diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_config_resource.py b/azure-mgmt-web/azure/mgmt/web/models/site_config_resource.py index 23a88e94d737..1c4b3bc66086 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_config_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_config_resource.py @@ -41,6 +41,8 @@ class SiteConfigResource(ProxyOnlyResource): :type node_version: str :param linux_fx_version: Linux App Framework and version :type linux_fx_version: str + :param windows_fx_version: Xenon App Framework and version + :type windows_fx_version: str :param request_tracing_enabled: true if request tracing is enabled; otherwise, false. :type request_tracing_enabled: bool @@ -63,6 +65,9 @@ class SiteConfigResource(ProxyOnlyResource): :type publishing_username: str :param app_settings: Application settings. :type app_settings: list[~azure.mgmt.web.models.NameValuePair] + :param azure_storage_accounts: User-provided Azure storage accounts. + :type azure_storage_accounts: dict[str, + ~azure.mgmt.web.models.AzureStorageInfoValue] :param connection_strings: Connection strings. :type connection_strings: list[~azure.mgmt.web.models.ConnStringInfo] :ivar machine_key: Site MachineKey. @@ -128,6 +133,10 @@ class SiteConfigResource(ProxyOnlyResource): :param local_my_sql_enabled: true to enable local MySQL; otherwise, false. Default value: False . :type local_my_sql_enabled: bool + :param managed_service_identity_id: Managed Service Identity Id + :type managed_service_identity_id: int + :param x_managed_service_identity_id: Explicit Managed Service Identity Id + :type x_managed_service_identity_id: int :param ip_security_restrictions: IP security restrictions. :type ip_security_restrictions: list[~azure.mgmt.web.models.IpSecurityRestriction] @@ -138,6 +147,12 @@ class SiteConfigResource(ProxyOnlyResource): TLS required for SSL requests. Possible values include: '1.0', '1.1', '1.2' :type min_tls_version: str or ~azure.mgmt.web.models.SupportedTlsVersions + :param ftps_state: State of FTP / FTPS service. Possible values include: + 'AllAllowed', 'FtpsOnly', 'Disabled' + :type ftps_state: str or ~azure.mgmt.web.models.FtpsState + :param reserved_instance_count: Number of reserved instances. + This setting only applies to the Consumption Plan + :type reserved_instance_count: int """ _validation = { @@ -145,6 +160,7 @@ class SiteConfigResource(ProxyOnlyResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'machine_key': {'readonly': True}, + 'reserved_instance_count': {'maximum': 10, 'minimum': 0}, } _attribute_map = { @@ -159,6 +175,7 @@ class SiteConfigResource(ProxyOnlyResource): 'python_version': {'key': 'properties.pythonVersion', 'type': 'str'}, 'node_version': {'key': 'properties.nodeVersion', 'type': 'str'}, 'linux_fx_version': {'key': 'properties.linuxFxVersion', 'type': 'str'}, + 'windows_fx_version': {'key': 'properties.windowsFxVersion', 'type': 'str'}, 'request_tracing_enabled': {'key': 'properties.requestTracingEnabled', 'type': 'bool'}, 'request_tracing_expiration_time': {'key': 'properties.requestTracingExpirationTime', 'type': 'iso-8601'}, 'remote_debugging_enabled': {'key': 'properties.remoteDebuggingEnabled', 'type': 'bool'}, @@ -168,6 +185,7 @@ class SiteConfigResource(ProxyOnlyResource): 'detailed_error_logging_enabled': {'key': 'properties.detailedErrorLoggingEnabled', 'type': 'bool'}, 'publishing_username': {'key': 'properties.publishingUsername', 'type': 'str'}, 'app_settings': {'key': 'properties.appSettings', 'type': '[NameValuePair]'}, + 'azure_storage_accounts': {'key': 'properties.azureStorageAccounts', 'type': '{AzureStorageInfoValue}'}, 'connection_strings': {'key': 'properties.connectionStrings', 'type': '[ConnStringInfo]'}, 'machine_key': {'key': 'properties.machineKey', 'type': 'SiteMachineKey'}, 'handler_mappings': {'key': 'properties.handlerMappings', 'type': '[HandlerMapping]'}, @@ -194,55 +212,65 @@ class SiteConfigResource(ProxyOnlyResource): 'api_definition': {'key': 'properties.apiDefinition', 'type': 'ApiDefinitionInfo'}, 'auto_swap_slot_name': {'key': 'properties.autoSwapSlotName', 'type': 'str'}, 'local_my_sql_enabled': {'key': 'properties.localMySqlEnabled', 'type': 'bool'}, + 'managed_service_identity_id': {'key': 'properties.managedServiceIdentityId', 'type': 'int'}, + 'x_managed_service_identity_id': {'key': 'properties.xManagedServiceIdentityId', 'type': 'int'}, 'ip_security_restrictions': {'key': 'properties.ipSecurityRestrictions', 'type': '[IpSecurityRestriction]'}, 'http20_enabled': {'key': 'properties.http20Enabled', 'type': 'bool'}, 'min_tls_version': {'key': 'properties.minTlsVersion', 'type': 'str'}, + 'ftps_state': {'key': 'properties.ftpsState', 'type': 'str'}, + 'reserved_instance_count': {'key': 'properties.reservedInstanceCount', 'type': 'int'}, } - def __init__(self, kind=None, number_of_workers=None, default_documents=None, net_framework_version="v4.6", php_version=None, python_version=None, node_version=None, linux_fx_version=None, request_tracing_enabled=None, request_tracing_expiration_time=None, remote_debugging_enabled=None, remote_debugging_version=None, http_logging_enabled=None, logs_directory_size_limit=None, detailed_error_logging_enabled=None, publishing_username=None, app_settings=None, connection_strings=None, handler_mappings=None, document_root=None, scm_type=None, use32_bit_worker_process=None, web_sockets_enabled=None, always_on=None, java_version=None, java_container=None, java_container_version=None, app_command_line=None, managed_pipeline_mode=None, virtual_applications=None, load_balancing=None, experiments=None, limits=None, auto_heal_enabled=None, auto_heal_rules=None, tracing_options=None, vnet_name=None, cors=None, push=None, api_definition=None, auto_swap_slot_name=None, local_my_sql_enabled=False, ip_security_restrictions=None, http20_enabled=True, min_tls_version=None): - super(SiteConfigResource, self).__init__(kind=kind) - 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 + def __init__(self, **kwargs): + super(SiteConfigResource, self).__init__(**kwargs) + self.number_of_workers = kwargs.get('number_of_workers', None) + self.default_documents = kwargs.get('default_documents', None) + self.net_framework_version = kwargs.get('net_framework_version', "v4.6") + self.php_version = kwargs.get('php_version', None) + self.python_version = kwargs.get('python_version', None) + self.node_version = kwargs.get('node_version', None) + self.linux_fx_version = kwargs.get('linux_fx_version', None) + self.windows_fx_version = kwargs.get('windows_fx_version', None) + self.request_tracing_enabled = kwargs.get('request_tracing_enabled', None) + self.request_tracing_expiration_time = kwargs.get('request_tracing_expiration_time', None) + self.remote_debugging_enabled = kwargs.get('remote_debugging_enabled', None) + self.remote_debugging_version = kwargs.get('remote_debugging_version', None) + self.http_logging_enabled = kwargs.get('http_logging_enabled', None) + self.logs_directory_size_limit = kwargs.get('logs_directory_size_limit', None) + self.detailed_error_logging_enabled = kwargs.get('detailed_error_logging_enabled', None) + self.publishing_username = kwargs.get('publishing_username', None) + self.app_settings = kwargs.get('app_settings', None) + self.azure_storage_accounts = kwargs.get('azure_storage_accounts', None) + self.connection_strings = kwargs.get('connection_strings', None) 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 + self.handler_mappings = kwargs.get('handler_mappings', None) + self.document_root = kwargs.get('document_root', None) + self.scm_type = kwargs.get('scm_type', None) + self.use32_bit_worker_process = kwargs.get('use32_bit_worker_process', None) + self.web_sockets_enabled = kwargs.get('web_sockets_enabled', None) + self.always_on = kwargs.get('always_on', None) + self.java_version = kwargs.get('java_version', None) + self.java_container = kwargs.get('java_container', None) + self.java_container_version = kwargs.get('java_container_version', None) + self.app_command_line = kwargs.get('app_command_line', None) + self.managed_pipeline_mode = kwargs.get('managed_pipeline_mode', None) + self.virtual_applications = kwargs.get('virtual_applications', None) + self.load_balancing = kwargs.get('load_balancing', None) + self.experiments = kwargs.get('experiments', None) + self.limits = kwargs.get('limits', None) + self.auto_heal_enabled = kwargs.get('auto_heal_enabled', None) + self.auto_heal_rules = kwargs.get('auto_heal_rules', None) + self.tracing_options = kwargs.get('tracing_options', None) + self.vnet_name = kwargs.get('vnet_name', None) + self.cors = kwargs.get('cors', None) + self.push = kwargs.get('push', None) + self.api_definition = kwargs.get('api_definition', None) + self.auto_swap_slot_name = kwargs.get('auto_swap_slot_name', None) + self.local_my_sql_enabled = kwargs.get('local_my_sql_enabled', False) + self.managed_service_identity_id = kwargs.get('managed_service_identity_id', None) + self.x_managed_service_identity_id = kwargs.get('x_managed_service_identity_id', None) + self.ip_security_restrictions = kwargs.get('ip_security_restrictions', None) + self.http20_enabled = kwargs.get('http20_enabled', True) + self.min_tls_version = kwargs.get('min_tls_version', None) + self.ftps_state = kwargs.get('ftps_state', None) + self.reserved_instance_count = kwargs.get('reserved_instance_count', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_config_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_config_resource_py3.py new file mode 100644 index 000000000000..e766a1a891b2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_config_resource_py3.py @@ -0,0 +1,276 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SiteConfigResource(ProxyOnlyResource): + """Web app configuration ARM resource. + + 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 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 windows_fx_version: Xenon App Framework and version + :type windows_fx_version: str + :param request_tracing_enabled: true if request tracing is + enabled; otherwise, false. + :type request_tracing_enabled: bool + :param request_tracing_expiration_time: Request tracing expiration time. + :type request_tracing_expiration_time: datetime + :param remote_debugging_enabled: true if remote debugging is + enabled; otherwise, false. + :type remote_debugging_enabled: bool + :param remote_debugging_version: Remote debugging version. + :type remote_debugging_version: str + :param http_logging_enabled: true if HTTP logging is enabled; + otherwise, false. + :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: true if detailed error + logging is enabled; otherwise, false. + :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.models.NameValuePair] + :param azure_storage_accounts: User-provided Azure storage accounts. + :type azure_storage_accounts: dict[str, + ~azure.mgmt.web.models.AzureStorageInfoValue] + :param connection_strings: Connection strings. + :type connection_strings: list[~azure.mgmt.web.models.ConnStringInfo] + :ivar machine_key: Site MachineKey. + :vartype machine_key: ~azure.mgmt.web.models.SiteMachineKey + :param handler_mappings: Handler mappings. + :type handler_mappings: list[~azure.mgmt.web.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.models.ScmType + :param use32_bit_worker_process: true to use 32-bit worker + process; otherwise, false. + :type use32_bit_worker_process: bool + :param web_sockets_enabled: true if WebSocket is enabled; + otherwise, false. + :type web_sockets_enabled: bool + :param always_on: true if Always On is enabled; otherwise, + false. + :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.models.ManagedPipelineMode + :param virtual_applications: Virtual applications. + :type virtual_applications: + list[~azure.mgmt.web.models.VirtualApplication] + :param load_balancing: Site load balancing. Possible values include: + 'WeightedRoundRobin', 'LeastRequests', 'LeastResponseTime', + 'WeightedTotalTraffic', 'RequestHash' + :type load_balancing: str or ~azure.mgmt.web.models.SiteLoadBalancing + :param experiments: This is work around for polymophic types. + :type experiments: ~azure.mgmt.web.models.Experiments + :param limits: Site limits. + :type limits: ~azure.mgmt.web.models.SiteLimits + :param auto_heal_enabled: true if Auto Heal is enabled; + otherwise, false. + :type auto_heal_enabled: bool + :param auto_heal_rules: Auto Heal rules. + :type auto_heal_rules: ~azure.mgmt.web.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.models.CorsSettings + :param push: Push endpoint settings. + :type push: ~azure.mgmt.web.models.PushSettings + :param api_definition: Information about the formal API definition for the + app. + :type api_definition: ~azure.mgmt.web.models.ApiDefinitionInfo + :param auto_swap_slot_name: Auto-swap slot name. + :type auto_swap_slot_name: str + :param local_my_sql_enabled: true to enable local MySQL; + otherwise, false. Default value: False . + :type local_my_sql_enabled: bool + :param managed_service_identity_id: Managed Service Identity Id + :type managed_service_identity_id: int + :param x_managed_service_identity_id: Explicit Managed Service Identity Id + :type x_managed_service_identity_id: int + :param ip_security_restrictions: IP security restrictions. + :type ip_security_restrictions: + list[~azure.mgmt.web.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.models.SupportedTlsVersions + :param ftps_state: State of FTP / FTPS service. Possible values include: + 'AllAllowed', 'FtpsOnly', 'Disabled' + :type ftps_state: str or ~azure.mgmt.web.models.FtpsState + :param reserved_instance_count: Number of reserved instances. + This setting only applies to the Consumption Plan + :type reserved_instance_count: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'machine_key': {'readonly': True}, + 'reserved_instance_count': {'maximum': 10, 'minimum': 0}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'number_of_workers': {'key': 'properties.numberOfWorkers', 'type': 'int'}, + 'default_documents': {'key': 'properties.defaultDocuments', 'type': '[str]'}, + 'net_framework_version': {'key': 'properties.netFrameworkVersion', 'type': 'str'}, + 'php_version': {'key': 'properties.phpVersion', 'type': 'str'}, + 'python_version': {'key': 'properties.pythonVersion', 'type': 'str'}, + 'node_version': {'key': 'properties.nodeVersion', 'type': 'str'}, + 'linux_fx_version': {'key': 'properties.linuxFxVersion', 'type': 'str'}, + 'windows_fx_version': {'key': 'properties.windowsFxVersion', 'type': 'str'}, + 'request_tracing_enabled': {'key': 'properties.requestTracingEnabled', 'type': 'bool'}, + 'request_tracing_expiration_time': {'key': 'properties.requestTracingExpirationTime', 'type': 'iso-8601'}, + 'remote_debugging_enabled': {'key': 'properties.remoteDebuggingEnabled', 'type': 'bool'}, + 'remote_debugging_version': {'key': 'properties.remoteDebuggingVersion', 'type': 'str'}, + 'http_logging_enabled': {'key': 'properties.httpLoggingEnabled', 'type': 'bool'}, + 'logs_directory_size_limit': {'key': 'properties.logsDirectorySizeLimit', 'type': 'int'}, + 'detailed_error_logging_enabled': {'key': 'properties.detailedErrorLoggingEnabled', 'type': 'bool'}, + 'publishing_username': {'key': 'properties.publishingUsername', 'type': 'str'}, + 'app_settings': {'key': 'properties.appSettings', 'type': '[NameValuePair]'}, + 'azure_storage_accounts': {'key': 'properties.azureStorageAccounts', 'type': '{AzureStorageInfoValue}'}, + 'connection_strings': {'key': 'properties.connectionStrings', 'type': '[ConnStringInfo]'}, + 'machine_key': {'key': 'properties.machineKey', 'type': 'SiteMachineKey'}, + 'handler_mappings': {'key': 'properties.handlerMappings', 'type': '[HandlerMapping]'}, + 'document_root': {'key': 'properties.documentRoot', 'type': 'str'}, + 'scm_type': {'key': 'properties.scmType', 'type': 'str'}, + 'use32_bit_worker_process': {'key': 'properties.use32BitWorkerProcess', 'type': 'bool'}, + 'web_sockets_enabled': {'key': 'properties.webSocketsEnabled', 'type': 'bool'}, + 'always_on': {'key': 'properties.alwaysOn', 'type': 'bool'}, + 'java_version': {'key': 'properties.javaVersion', 'type': 'str'}, + 'java_container': {'key': 'properties.javaContainer', 'type': 'str'}, + 'java_container_version': {'key': 'properties.javaContainerVersion', 'type': 'str'}, + 'app_command_line': {'key': 'properties.appCommandLine', 'type': 'str'}, + 'managed_pipeline_mode': {'key': 'properties.managedPipelineMode', 'type': 'ManagedPipelineMode'}, + 'virtual_applications': {'key': 'properties.virtualApplications', 'type': '[VirtualApplication]'}, + 'load_balancing': {'key': 'properties.loadBalancing', 'type': 'SiteLoadBalancing'}, + 'experiments': {'key': 'properties.experiments', 'type': 'Experiments'}, + 'limits': {'key': 'properties.limits', 'type': 'SiteLimits'}, + 'auto_heal_enabled': {'key': 'properties.autoHealEnabled', 'type': 'bool'}, + 'auto_heal_rules': {'key': 'properties.autoHealRules', 'type': 'AutoHealRules'}, + 'tracing_options': {'key': 'properties.tracingOptions', 'type': 'str'}, + 'vnet_name': {'key': 'properties.vnetName', 'type': 'str'}, + 'cors': {'key': 'properties.cors', 'type': 'CorsSettings'}, + 'push': {'key': 'properties.push', 'type': 'PushSettings'}, + 'api_definition': {'key': 'properties.apiDefinition', 'type': 'ApiDefinitionInfo'}, + 'auto_swap_slot_name': {'key': 'properties.autoSwapSlotName', 'type': 'str'}, + 'local_my_sql_enabled': {'key': 'properties.localMySqlEnabled', 'type': 'bool'}, + 'managed_service_identity_id': {'key': 'properties.managedServiceIdentityId', 'type': 'int'}, + 'x_managed_service_identity_id': {'key': 'properties.xManagedServiceIdentityId', 'type': 'int'}, + 'ip_security_restrictions': {'key': 'properties.ipSecurityRestrictions', 'type': '[IpSecurityRestriction]'}, + 'http20_enabled': {'key': 'properties.http20Enabled', 'type': 'bool'}, + 'min_tls_version': {'key': 'properties.minTlsVersion', 'type': 'str'}, + 'ftps_state': {'key': 'properties.ftpsState', 'type': 'str'}, + 'reserved_instance_count': {'key': 'properties.reservedInstanceCount', 'type': 'int'}, + } + + def __init__(self, *, kind: str=None, 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, windows_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, azure_storage_accounts=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, managed_service_identity_id: int=None, x_managed_service_identity_id: int=None, ip_security_restrictions=None, http20_enabled: bool=True, min_tls_version=None, ftps_state=None, reserved_instance_count: int=None, **kwargs) -> None: + super(SiteConfigResource, self).__init__(kind=kind, **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.windows_fx_version = windows_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.azure_storage_accounts = azure_storage_accounts + 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.managed_service_identity_id = managed_service_identity_id + self.x_managed_service_identity_id = x_managed_service_identity_id + self.ip_security_restrictions = ip_security_restrictions + self.http20_enabled = http20_enabled + self.min_tls_version = min_tls_version + self.ftps_state = ftps_state + self.reserved_instance_count = reserved_instance_count diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_configuration_snapshot_info.py b/azure-mgmt-web/azure/mgmt/web/models/site_configuration_snapshot_info.py index 6cb6fb32764f..75c2e76208dd 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_configuration_snapshot_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_configuration_snapshot_info.py @@ -28,8 +28,8 @@ class SiteConfigurationSnapshotInfo(ProxyOnlyResource): :vartype type: str :ivar time: The time the snapshot was taken. :vartype time: datetime - :ivar site_configuration_snapshot_info_id: The id of the snapshot - :vartype site_configuration_snapshot_info_id: int + :ivar snapshot_id: The id of the snapshot + :vartype snapshot_id: int """ _validation = { @@ -37,7 +37,7 @@ class SiteConfigurationSnapshotInfo(ProxyOnlyResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'time': {'readonly': True}, - 'site_configuration_snapshot_info_id': {'readonly': True}, + 'snapshot_id': {'readonly': True}, } _attribute_map = { @@ -46,10 +46,10 @@ class SiteConfigurationSnapshotInfo(ProxyOnlyResource): 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'time': {'key': 'properties.time', 'type': 'iso-8601'}, - 'site_configuration_snapshot_info_id': {'key': 'properties.id', 'type': 'int'}, + 'snapshot_id': {'key': 'properties.snapshotId', 'type': 'int'}, } - def __init__(self, kind=None): - super(SiteConfigurationSnapshotInfo, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(SiteConfigurationSnapshotInfo, self).__init__(**kwargs) self.time = None - self.site_configuration_snapshot_info_id = None + self.snapshot_id = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_configuration_snapshot_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_configuration_snapshot_info_py3.py new file mode 100644 index 000000000000..e43d434c2d75 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_configuration_snapshot_info_py3.py @@ -0,0 +1,55 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SiteConfigurationSnapshotInfo(ProxyOnlyResource): + """A snapshot of a web app configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource Id. + :vartype id: str + :ivar name: Resource Name. + :vartype name: str + :param kind: Kind of resource. + :type kind: str + :ivar type: Resource type. + :vartype type: str + :ivar time: The time the snapshot was taken. + :vartype time: datetime + :ivar snapshot_id: The id of the snapshot + :vartype snapshot_id: int + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'time': {'readonly': True}, + 'snapshot_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'time': {'key': 'properties.time', 'type': 'iso-8601'}, + 'snapshot_id': {'key': 'properties.snapshotId', 'type': 'int'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(SiteConfigurationSnapshotInfo, self).__init__(kind=kind, **kwargs) + self.time = None + self.snapshot_id = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_extension_info.py b/azure-mgmt-web/azure/mgmt/web/models/site_extension_info.py index f09fd23f9e9e..2084a3facb71 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_extension_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_extension_info.py @@ -26,14 +26,13 @@ class SiteExtensionInfo(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param site_extension_info_id: Site extension ID. - :type site_extension_info_id: str - :param title: Site extension title. + :param extension_id: Site extension ID. + :type extension_id: str + :param title: :type title: str - :param site_extension_info_type: Site extension type. Possible values - include: 'Gallery', 'WebRoot' - :type site_extension_info_type: str or - ~azure.mgmt.web.models.SiteExtensionType + :param extension_type: Site extension type. Possible values include: + 'Gallery', 'WebRoot' + :type extension_type: str or ~azure.mgmt.web.models.SiteExtensionType :param summary: Summary description. :type summary: str :param description: Detailed description. @@ -52,8 +51,8 @@ class SiteExtensionInfo(ProxyOnlyResource): :type feed_url: str :param authors: List of authors. :type authors: list[str] - :param installation_args: Installer command line parameters. - :type installation_args: str + :param installer_command_line_params: Installer command line parameters. + :type installer_command_line_params: str :param published_date_time: Published timestamp. :type published_date_time: datetime :param download_count: Count of downloads. @@ -82,47 +81,47 @@ class SiteExtensionInfo(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'site_extension_info_id': {'key': 'properties.id', 'type': 'str'}, + 'extension_id': {'key': 'properties.extension_id', 'type': 'str'}, 'title': {'key': 'properties.title', 'type': 'str'}, - 'site_extension_info_type': {'key': 'properties.type', 'type': 'SiteExtensionType'}, + 'extension_type': {'key': 'properties.extension_type', 'type': 'SiteExtensionType'}, 'summary': {'key': 'properties.summary', 'type': 'str'}, 'description': {'key': 'properties.description', 'type': 'str'}, 'version': {'key': 'properties.version', 'type': 'str'}, - 'extension_url': {'key': 'properties.extensionUrl', 'type': 'str'}, - 'project_url': {'key': 'properties.projectUrl', 'type': 'str'}, - 'icon_url': {'key': 'properties.iconUrl', 'type': 'str'}, - 'license_url': {'key': 'properties.licenseUrl', 'type': 'str'}, - 'feed_url': {'key': 'properties.feedUrl', 'type': 'str'}, + 'extension_url': {'key': 'properties.extension_url', 'type': 'str'}, + 'project_url': {'key': 'properties.project_url', 'type': 'str'}, + 'icon_url': {'key': 'properties.icon_url', 'type': 'str'}, + 'license_url': {'key': 'properties.license_url', 'type': 'str'}, + 'feed_url': {'key': 'properties.feed_url', 'type': 'str'}, 'authors': {'key': 'properties.authors', 'type': '[str]'}, - 'installation_args': {'key': 'properties.installationArgs', 'type': 'str'}, - 'published_date_time': {'key': 'properties.publishedDateTime', 'type': 'iso-8601'}, - 'download_count': {'key': 'properties.downloadCount', 'type': 'int'}, - 'local_is_latest_version': {'key': 'properties.localIsLatestVersion', 'type': 'bool'}, - 'local_path': {'key': 'properties.localPath', 'type': 'str'}, - 'installed_date_time': {'key': 'properties.installedDateTime', 'type': 'iso-8601'}, + 'installer_command_line_params': {'key': 'properties.installer_command_line_params', 'type': 'str'}, + 'published_date_time': {'key': 'properties.published_date_time', 'type': 'iso-8601'}, + 'download_count': {'key': 'properties.download_count', 'type': 'int'}, + 'local_is_latest_version': {'key': 'properties.local_is_latest_version', 'type': 'bool'}, + 'local_path': {'key': 'properties.local_path', 'type': 'str'}, + 'installed_date_time': {'key': 'properties.installed_date_time', 'type': 'iso-8601'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'comment': {'key': 'properties.comment', 'type': 'str'}, } - def __init__(self, kind=None, site_extension_info_id=None, title=None, site_extension_info_type=None, summary=None, description=None, version=None, extension_url=None, project_url=None, icon_url=None, license_url=None, feed_url=None, authors=None, installation_args=None, published_date_time=None, download_count=None, local_is_latest_version=None, local_path=None, installed_date_time=None, provisioning_state=None, comment=None): - super(SiteExtensionInfo, self).__init__(kind=kind) - self.site_extension_info_id = site_extension_info_id - self.title = title - self.site_extension_info_type = site_extension_info_type - self.summary = summary - self.description = description - self.version = version - self.extension_url = extension_url - self.project_url = project_url - self.icon_url = icon_url - self.license_url = license_url - self.feed_url = feed_url - self.authors = authors - self.installation_args = installation_args - self.published_date_time = published_date_time - self.download_count = download_count - self.local_is_latest_version = local_is_latest_version - self.local_path = local_path - self.installed_date_time = installed_date_time - self.provisioning_state = provisioning_state - self.comment = comment + def __init__(self, **kwargs): + super(SiteExtensionInfo, self).__init__(**kwargs) + self.extension_id = kwargs.get('extension_id', None) + self.title = kwargs.get('title', None) + self.extension_type = kwargs.get('extension_type', None) + self.summary = kwargs.get('summary', None) + self.description = kwargs.get('description', None) + self.version = kwargs.get('version', None) + self.extension_url = kwargs.get('extension_url', None) + self.project_url = kwargs.get('project_url', None) + self.icon_url = kwargs.get('icon_url', None) + self.license_url = kwargs.get('license_url', None) + self.feed_url = kwargs.get('feed_url', None) + self.authors = kwargs.get('authors', None) + self.installer_command_line_params = kwargs.get('installer_command_line_params', None) + self.published_date_time = kwargs.get('published_date_time', None) + self.download_count = kwargs.get('download_count', None) + self.local_is_latest_version = kwargs.get('local_is_latest_version', None) + self.local_path = kwargs.get('local_path', None) + self.installed_date_time = kwargs.get('installed_date_time', None) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.comment = kwargs.get('comment', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_extension_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_extension_info_py3.py new file mode 100644 index 000000000000..b4bb23a9631f --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_extension_info_py3.py @@ -0,0 +1,127 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SiteExtensionInfo(ProxyOnlyResource): + """Site Extension Information. + + 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 extension_id: Site extension ID. + :type extension_id: str + :param title: + :type title: str + :param extension_type: Site extension type. Possible values include: + 'Gallery', 'WebRoot' + :type extension_type: str or ~azure.mgmt.web.models.SiteExtensionType + :param summary: Summary description. + :type summary: str + :param description: Detailed description. + :type description: str + :param version: Version information. + :type version: str + :param extension_url: Extension URL. + :type extension_url: str + :param project_url: Project URL. + :type project_url: str + :param icon_url: Icon URL. + :type icon_url: str + :param license_url: License URL. + :type license_url: str + :param feed_url: Feed URL. + :type feed_url: str + :param authors: List of authors. + :type authors: list[str] + :param installer_command_line_params: Installer command line parameters. + :type installer_command_line_params: str + :param published_date_time: Published timestamp. + :type published_date_time: datetime + :param download_count: Count of downloads. + :type download_count: int + :param local_is_latest_version: true if the local version is + the latest version; false otherwise. + :type local_is_latest_version: bool + :param local_path: Local path. + :type local_path: str + :param installed_date_time: Installed timestamp. + :type installed_date_time: datetime + :param provisioning_state: Provisioning state. + :type provisioning_state: str + :param comment: Site Extension comment. + :type comment: 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'}, + 'extension_id': {'key': 'properties.extension_id', 'type': 'str'}, + 'title': {'key': 'properties.title', 'type': 'str'}, + 'extension_type': {'key': 'properties.extension_type', 'type': 'SiteExtensionType'}, + 'summary': {'key': 'properties.summary', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'extension_url': {'key': 'properties.extension_url', 'type': 'str'}, + 'project_url': {'key': 'properties.project_url', 'type': 'str'}, + 'icon_url': {'key': 'properties.icon_url', 'type': 'str'}, + 'license_url': {'key': 'properties.license_url', 'type': 'str'}, + 'feed_url': {'key': 'properties.feed_url', 'type': 'str'}, + 'authors': {'key': 'properties.authors', 'type': '[str]'}, + 'installer_command_line_params': {'key': 'properties.installer_command_line_params', 'type': 'str'}, + 'published_date_time': {'key': 'properties.published_date_time', 'type': 'iso-8601'}, + 'download_count': {'key': 'properties.download_count', 'type': 'int'}, + 'local_is_latest_version': {'key': 'properties.local_is_latest_version', 'type': 'bool'}, + 'local_path': {'key': 'properties.local_path', 'type': 'str'}, + 'installed_date_time': {'key': 'properties.installed_date_time', 'type': 'iso-8601'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'comment': {'key': 'properties.comment', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, extension_id: str=None, title: str=None, extension_type=None, summary: str=None, description: str=None, version: str=None, extension_url: str=None, project_url: str=None, icon_url: str=None, license_url: str=None, feed_url: str=None, authors=None, installer_command_line_params: str=None, published_date_time=None, download_count: int=None, local_is_latest_version: bool=None, local_path: str=None, installed_date_time=None, provisioning_state: str=None, comment: str=None, **kwargs) -> None: + super(SiteExtensionInfo, self).__init__(kind=kind, **kwargs) + self.extension_id = extension_id + self.title = title + self.extension_type = extension_type + self.summary = summary + self.description = description + self.version = version + self.extension_url = extension_url + self.project_url = project_url + self.icon_url = icon_url + self.license_url = license_url + self.feed_url = feed_url + self.authors = authors + self.installer_command_line_params = installer_command_line_params + self.published_date_time = published_date_time + self.download_count = download_count + self.local_is_latest_version = local_is_latest_version + self.local_path = local_path + self.installed_date_time = installed_date_time + self.provisioning_state = provisioning_state + self.comment = comment diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_instance.py b/azure-mgmt-web/azure/mgmt/web/models/site_instance.py index dfd3fc7c4fd3..708d731a2e67 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_instance.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_instance.py @@ -42,9 +42,9 @@ class SiteInstance(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'site_instance_name': {'key': 'properties.name', 'type': 'str'}, + 'site_instance_name': {'key': 'properties.siteInstanceName', 'type': 'str'}, } - def __init__(self, kind=None): - super(SiteInstance, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(SiteInstance, self).__init__(**kwargs) self.site_instance_name = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_instance_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_instance_py3.py new file mode 100644 index 000000000000..d6a93ac4600e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_instance_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SiteInstance(ProxyOnlyResource): + """Instance of an app. + + 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 site_instance_name: Name of instance. + :vartype site_instance_name: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'site_instance_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'}, + 'site_instance_name': {'key': 'properties.siteInstanceName', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(SiteInstance, self).__init__(kind=kind, **kwargs) + self.site_instance_name = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_limits.py b/azure-mgmt-web/azure/mgmt/web/models/site_limits.py index f1e9cca487a1..d56d77d48e01 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_limits.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_limits.py @@ -29,8 +29,8 @@ class SiteLimits(Model): 'max_disk_size_in_mb': {'key': 'maxDiskSizeInMb', 'type': 'long'}, } - def __init__(self, max_percentage_cpu=None, max_memory_in_mb=None, max_disk_size_in_mb=None): - super(SiteLimits, self).__init__() - 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 + def __init__(self, **kwargs): + super(SiteLimits, self).__init__(**kwargs) + self.max_percentage_cpu = kwargs.get('max_percentage_cpu', None) + self.max_memory_in_mb = kwargs.get('max_memory_in_mb', None) + self.max_disk_size_in_mb = kwargs.get('max_disk_size_in_mb', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_limits_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_limits_py3.py new file mode 100644 index 000000000000..2f58a349bca9 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_limits_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_logs_config.py b/azure-mgmt-web/azure/mgmt/web/models/site_logs_config.py index 8a5be995652d..c637d918bb78 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_logs_config.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_logs_config.py @@ -53,9 +53,9 @@ class SiteLogsConfig(ProxyOnlyResource): 'detailed_error_messages': {'key': 'properties.detailedErrorMessages', 'type': 'EnabledConfig'}, } - def __init__(self, kind=None, application_logs=None, http_logs=None, failed_requests_tracing=None, detailed_error_messages=None): - super(SiteLogsConfig, self).__init__(kind=kind) - self.application_logs = application_logs - self.http_logs = http_logs - self.failed_requests_tracing = failed_requests_tracing - self.detailed_error_messages = detailed_error_messages + def __init__(self, **kwargs): + super(SiteLogsConfig, self).__init__(**kwargs) + self.application_logs = kwargs.get('application_logs', None) + self.http_logs = kwargs.get('http_logs', None) + self.failed_requests_tracing = kwargs.get('failed_requests_tracing', None) + self.detailed_error_messages = kwargs.get('detailed_error_messages', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_logs_config_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_logs_config_py3.py new file mode 100644 index 000000000000..77bd46db1b1f --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_logs_config_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SiteLogsConfig(ProxyOnlyResource): + """Configuration of App Service site logs. + + 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 application_logs: Application logs configuration. + :type application_logs: ~azure.mgmt.web.models.ApplicationLogsConfig + :param http_logs: HTTP logs configuration. + :type http_logs: ~azure.mgmt.web.models.HttpLogsConfig + :param failed_requests_tracing: Failed requests tracing configuration. + :type failed_requests_tracing: ~azure.mgmt.web.models.EnabledConfig + :param detailed_error_messages: Detailed error messages configuration. + :type detailed_error_messages: ~azure.mgmt.web.models.EnabledConfig + """ + + _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'}, + 'application_logs': {'key': 'properties.applicationLogs', 'type': 'ApplicationLogsConfig'}, + 'http_logs': {'key': 'properties.httpLogs', 'type': 'HttpLogsConfig'}, + 'failed_requests_tracing': {'key': 'properties.failedRequestsTracing', 'type': 'EnabledConfig'}, + 'detailed_error_messages': {'key': 'properties.detailedErrorMessages', 'type': 'EnabledConfig'}, + } + + def __init__(self, *, kind: str=None, application_logs=None, http_logs=None, failed_requests_tracing=None, detailed_error_messages=None, **kwargs) -> None: + super(SiteLogsConfig, self).__init__(kind=kind, **kwargs) + self.application_logs = application_logs + self.http_logs = http_logs + self.failed_requests_tracing = failed_requests_tracing + self.detailed_error_messages = detailed_error_messages diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_machine_key.py b/azure-mgmt-web/azure/mgmt/web/models/site_machine_key.py index 4da2087e595d..46c20e72b102 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_machine_key.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_machine_key.py @@ -32,9 +32,9 @@ class SiteMachineKey(Model): 'decryption_key': {'key': 'decryptionKey', 'type': 'str'}, } - def __init__(self, validation=None, validation_key=None, decryption=None, decryption_key=None): - super(SiteMachineKey, self).__init__() - self.validation = validation - self.validation_key = validation_key - self.decryption = decryption - self.decryption_key = decryption_key + def __init__(self, **kwargs): + super(SiteMachineKey, self).__init__(**kwargs) + self.validation = kwargs.get('validation', None) + self.validation_key = kwargs.get('validation_key', None) + self.decryption = kwargs.get('decryption', None) + self.decryption_key = kwargs.get('decryption_key', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_machine_key_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_machine_key_py3.py new file mode 100644 index 000000000000..55b1f1f0798f --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_machine_key_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_patch_resource.py b/azure-mgmt-web/azure/mgmt/web/models/site_patch_resource.py index 02d64d06af90..392b54229183 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_patch_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_patch_resource.py @@ -58,6 +58,10 @@ class SitePatchResource(ProxyOnlyResource): :param reserved: true if reserved; otherwise, false. Default value: False . :type reserved: bool + :param is_xenon: Obsolete: Hyper-V sandbox. Default value: False . + :type is_xenon: bool + :param hyper_v: Hyper-V sandbox. Default value: False . + :type hyper_v: bool :ivar last_modified_time_utc: Last time the app was modified, in UTC. Read-only. :vartype last_modified_time_utc: datetime @@ -113,9 +117,6 @@ class SitePatchResource(ProxyOnlyResource): :param cloning_info: If specified during app creation, the app is cloned from a source app. :type cloning_info: ~azure.mgmt.web.models.CloningInfo - :param snapshot_info: If specified during app creation, the app is created - from a previous snapshot. - :type snapshot_info: ~azure.mgmt.web.models.SnapshotRecoveryRequest :ivar resource_group: Name of the resource group the app belongs to. Read-only. :vartype resource_group: str @@ -170,6 +171,8 @@ class SitePatchResource(ProxyOnlyResource): 'host_name_ssl_states': {'key': 'properties.hostNameSslStates', 'type': '[HostNameSslState]'}, 'server_farm_id': {'key': 'properties.serverFarmId', 'type': 'str'}, 'reserved': {'key': 'properties.reserved', 'type': 'bool'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + 'hyper_v': {'key': 'properties.hyperV', '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]'}, @@ -186,7 +189,6 @@ class SitePatchResource(ProxyOnlyResource): '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'}, @@ -194,37 +196,38 @@ class SitePatchResource(ProxyOnlyResource): 'https_only': {'key': 'properties.httpsOnly', 'type': 'bool'}, } - def __init__(self, kind=None, enabled=None, host_name_ssl_states=None, server_farm_id=None, reserved=False, site_config=None, scm_site_also_stopped=False, hosting_environment_profile=None, client_affinity_enabled=None, client_cert_enabled=None, host_names_disabled=None, container_size=None, daily_memory_time_quota=None, cloning_info=None, snapshot_info=None, https_only=None): - super(SitePatchResource, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(SitePatchResource, self).__init__(**kwargs) self.state = None self.host_names = None self.repository_site_name = None self.usage_state = None - self.enabled = enabled + self.enabled = kwargs.get('enabled', None) 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.host_name_ssl_states = kwargs.get('host_name_ssl_states', None) + self.server_farm_id = kwargs.get('server_farm_id', None) + self.reserved = kwargs.get('reserved', False) + self.is_xenon = kwargs.get('is_xenon', False) + self.hyper_v = kwargs.get('hyper_v', False) self.last_modified_time_utc = None - self.site_config = site_config + self.site_config = kwargs.get('site_config', None) self.traffic_manager_host_names = None - self.scm_site_also_stopped = scm_site_also_stopped + self.scm_site_also_stopped = kwargs.get('scm_site_also_stopped', False) 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.hosting_environment_profile = kwargs.get('hosting_environment_profile', None) + self.client_affinity_enabled = kwargs.get('client_affinity_enabled', None) + self.client_cert_enabled = kwargs.get('client_cert_enabled', None) + self.host_names_disabled = kwargs.get('host_names_disabled', None) 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.container_size = kwargs.get('container_size', None) + self.daily_memory_time_quota = kwargs.get('daily_memory_time_quota', None) self.suspended_till = None self.max_number_of_workers = None - self.cloning_info = cloning_info - self.snapshot_info = snapshot_info + self.cloning_info = kwargs.get('cloning_info', None) 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.https_only = kwargs.get('https_only', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_patch_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_patch_resource_py3.py new file mode 100644 index 000000000000..e459e6d70bbd --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_patch_resource_py3.py @@ -0,0 +1,233 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SitePatchResource(ProxyOnlyResource): + """ARM resource for a site. + + 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 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.models.UsageState + :param enabled: true if the app is enabled; otherwise, + false. 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.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.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: true if reserved; otherwise, + false. Default value: False . + :type reserved: bool + :param is_xenon: Obsolete: Hyper-V sandbox. Default value: False . + :type is_xenon: bool + :param hyper_v: Hyper-V sandbox. Default value: False . + :type hyper_v: 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.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: true to stop SCM (KUDU) site + when the app is stopped; otherwise, false. The default is + false. 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.models.HostingEnvironmentProfile + :param client_affinity_enabled: true to enable client + affinity; false to stop sending session affinity cookies, + which route client requests in the same session to the same instance. + Default is true. + :type client_affinity_enabled: bool + :param client_cert_enabled: true to enable client certificate + authentication (TLS mutual authentication); otherwise, false. + Default is false. + :type client_cert_enabled: bool + :param host_names_disabled: true to disable the public + hostnames of the app; otherwise, false. + If true, 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.models.CloningInfo + :ivar resource_group: Name of the resource group the app belongs to. + Read-only. + :vartype resource_group: str + :ivar is_default_container: true if the app is a default + container; otherwise, false. + :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.models.SlotSwapStatus + :param https_only: HttpsOnly: configures a web site to accept only https + requests. Issues redirect for + http requests + :type https_only: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': 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'}, + 'type': {'key': 'type', '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'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + 'hyper_v': {'key': 'properties.hyperV', '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'}, + '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'}, + } + + def __init__(self, *, kind: str=None, enabled: bool=None, host_name_ssl_states=None, server_farm_id: str=None, reserved: bool=False, is_xenon: bool=False, hyper_v: 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, https_only: bool=None, **kwargs) -> None: + super(SitePatchResource, self).__init__(kind=kind, **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.is_xenon = is_xenon + self.hyper_v = hyper_v + 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.resource_group = None + self.is_default_container = None + self.default_host_name = None + self.slot_swap_status = None + self.https_only = https_only diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_php_error_log_flag.py b/azure-mgmt-web/azure/mgmt/web/models/site_php_error_log_flag.py index b957e542f038..717ea82d2c8a 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_php_error_log_flag.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_php_error_log_flag.py @@ -53,9 +53,9 @@ class SitePhpErrorLogFlag(ProxyOnlyResource): 'master_log_errors_max_length': {'key': 'properties.masterLogErrorsMaxLength', 'type': 'str'}, } - def __init__(self, kind=None, local_log_errors=None, master_log_errors=None, local_log_errors_max_length=None, master_log_errors_max_length=None): - super(SitePhpErrorLogFlag, self).__init__(kind=kind) - self.local_log_errors = local_log_errors - self.master_log_errors = master_log_errors - self.local_log_errors_max_length = local_log_errors_max_length - self.master_log_errors_max_length = master_log_errors_max_length + def __init__(self, **kwargs): + super(SitePhpErrorLogFlag, self).__init__(**kwargs) + self.local_log_errors = kwargs.get('local_log_errors', None) + self.master_log_errors = kwargs.get('master_log_errors', None) + self.local_log_errors_max_length = kwargs.get('local_log_errors_max_length', None) + self.master_log_errors_max_length = kwargs.get('master_log_errors_max_length', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_php_error_log_flag_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_php_error_log_flag_py3.py new file mode 100644 index 000000000000..d13f3def0fe5 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_php_error_log_flag_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SitePhpErrorLogFlag(ProxyOnlyResource): + """Used for getting PHP error logging flag. + + 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 local_log_errors: Local log_errors setting. + :type local_log_errors: str + :param master_log_errors: Master log_errors setting. + :type master_log_errors: str + :param local_log_errors_max_length: Local log_errors_max_len setting. + :type local_log_errors_max_length: str + :param master_log_errors_max_length: Master log_errors_max_len setting. + :type master_log_errors_max_length: 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'}, + 'local_log_errors': {'key': 'properties.localLogErrors', 'type': 'str'}, + 'master_log_errors': {'key': 'properties.masterLogErrors', 'type': 'str'}, + 'local_log_errors_max_length': {'key': 'properties.localLogErrorsMaxLength', 'type': 'str'}, + 'master_log_errors_max_length': {'key': 'properties.masterLogErrorsMaxLength', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, local_log_errors: str=None, master_log_errors: str=None, local_log_errors_max_length: str=None, master_log_errors_max_length: str=None, **kwargs) -> None: + super(SitePhpErrorLogFlag, self).__init__(kind=kind, **kwargs) + self.local_log_errors = local_log_errors + self.master_log_errors = master_log_errors + self.local_log_errors_max_length = local_log_errors_max_length + self.master_log_errors_max_length = master_log_errors_max_length diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_py3.py new file mode 100644 index 000000000000..d4ec907a9c06 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_py3.py @@ -0,0 +1,246 @@ +# 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 .resource_py3 import Resource + + +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.models.UsageState + :param enabled: true if the app is enabled; otherwise, + false. 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.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.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: true if reserved; otherwise, + false. Default value: False . + :type reserved: bool + :param is_xenon: Obsolete: Hyper-V sandbox. Default value: False . + :type is_xenon: bool + :param hyper_v: Hyper-V sandbox. Default value: False . + :type hyper_v: 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.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: true to stop SCM (KUDU) site + when the app is stopped; otherwise, false. The default is + false. 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.models.HostingEnvironmentProfile + :param client_affinity_enabled: true to enable client + affinity; false to stop sending session affinity cookies, + which route client requests in the same session to the same instance. + Default is true. + :type client_affinity_enabled: bool + :param client_cert_enabled: true to enable client certificate + authentication (TLS mutual authentication); otherwise, false. + Default is false. + :type client_cert_enabled: bool + :param host_names_disabled: true to disable the public + hostnames of the app; otherwise, false. + If true, 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.models.CloningInfo + :ivar resource_group: Name of the resource group the app belongs to. + Read-only. + :vartype resource_group: str + :ivar is_default_container: true if the app is a default + container; otherwise, false. + :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.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.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'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + 'hyper_v': {'key': 'properties.hyperV', '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'}, + '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, is_xenon: bool=False, hyper_v: 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, 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.is_xenon = is_xenon + self.hyper_v = hyper_v + 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_seal.py b/azure-mgmt-web/azure/mgmt/web/models/site_seal.py index 8512e5255443..c06f92634aaa 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_seal.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_seal.py @@ -15,7 +15,9 @@ class SiteSeal(Model): """Site seal. - :param html: HTML snippet + All required parameters must be populated in order to send to Azure. + + :param html: Required. HTML snippet :type html: str """ @@ -27,6 +29,6 @@ class SiteSeal(Model): 'html': {'key': 'html', 'type': 'str'}, } - def __init__(self, html): - super(SiteSeal, self).__init__() - self.html = html + def __init__(self, **kwargs): + super(SiteSeal, self).__init__(**kwargs) + self.html = kwargs.get('html', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_seal_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_seal_py3.py new file mode 100644 index 000000000000..141f0f214753 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_seal_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SiteSeal(Model): + """Site seal. + + All required parameters must be populated in order to send to Azure. + + :param html: Required. HTML snippet + :type html: str + """ + + _validation = { + 'html': {'required': True}, + } + + _attribute_map = { + 'html': {'key': 'html', 'type': 'str'}, + } + + def __init__(self, *, html: str, **kwargs) -> None: + super(SiteSeal, self).__init__(**kwargs) + self.html = html diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_seal_request.py b/azure-mgmt-web/azure/mgmt/web/models/site_seal_request.py index d2bbd785edeb..039baebd82e9 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_seal_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_seal_request.py @@ -27,7 +27,7 @@ class SiteSealRequest(Model): 'locale': {'key': 'locale', 'type': 'str'}, } - def __init__(self, light_theme=None, locale=None): - super(SiteSealRequest, self).__init__() - self.light_theme = light_theme - self.locale = locale + def __init__(self, **kwargs): + super(SiteSealRequest, self).__init__(**kwargs) + self.light_theme = kwargs.get('light_theme', None) + self.locale = kwargs.get('locale', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_seal_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_seal_request_py3.py new file mode 100644 index 000000000000..033e32201928 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_seal_request_py3.py @@ -0,0 +1,33 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SiteSealRequest(Model): + """Site seal request. + + :param light_theme: If true use the light color theme for + site seal; otherwise, use the default color theme. + :type light_theme: bool + :param locale: Locale of site seal. + :type locale: str + """ + + _attribute_map = { + 'light_theme': {'key': 'lightTheme', 'type': 'bool'}, + 'locale': {'key': 'locale', 'type': 'str'}, + } + + def __init__(self, *, light_theme: bool=None, locale: str=None, **kwargs) -> None: + super(SiteSealRequest, self).__init__(**kwargs) + self.light_theme = light_theme + self.locale = locale diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_source_control.py b/azure-mgmt-web/azure/mgmt/web/models/site_source_control.py index 5d296b1d9ccc..97e16982b305 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/site_source_control.py +++ b/azure-mgmt-web/azure/mgmt/web/models/site_source_control.py @@ -60,10 +60,10 @@ class SiteSourceControl(ProxyOnlyResource): 'is_mercurial': {'key': 'properties.isMercurial', 'type': 'bool'}, } - def __init__(self, kind=None, repo_url=None, branch=None, is_manual_integration=None, deployment_rollback_enabled=None, is_mercurial=None): - super(SiteSourceControl, self).__init__(kind=kind) - self.repo_url = repo_url - self.branch = branch - self.is_manual_integration = is_manual_integration - self.deployment_rollback_enabled = deployment_rollback_enabled - self.is_mercurial = is_mercurial + def __init__(self, **kwargs): + super(SiteSourceControl, self).__init__(**kwargs) + self.repo_url = kwargs.get('repo_url', None) + self.branch = kwargs.get('branch', None) + self.is_manual_integration = kwargs.get('is_manual_integration', None) + self.deployment_rollback_enabled = kwargs.get('deployment_rollback_enabled', None) + self.is_mercurial = kwargs.get('is_mercurial', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/site_source_control_py3.py b/azure-mgmt-web/azure/mgmt/web/models/site_source_control_py3.py new file mode 100644 index 000000000000..7397edd38638 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/site_source_control_py3.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SiteSourceControl(ProxyOnlyResource): + """Source control configuration for an app. + + 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 repo_url: Repository or source control URL. + :type repo_url: str + :param branch: Name of branch to use for deployment. + :type branch: str + :param is_manual_integration: true to limit to manual + integration; false to enable continuous integration (which + configures webhooks into online repos like GitHub). + :type is_manual_integration: bool + :param deployment_rollback_enabled: true to enable deployment + rollback; otherwise, false. + :type deployment_rollback_enabled: bool + :param is_mercurial: true for a Mercurial repository; + false for a Git repository. + :type is_mercurial: bool + """ + + _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'}, + 'repo_url': {'key': 'properties.repoUrl', 'type': 'str'}, + 'branch': {'key': 'properties.branch', 'type': 'str'}, + 'is_manual_integration': {'key': 'properties.isManualIntegration', 'type': 'bool'}, + 'deployment_rollback_enabled': {'key': 'properties.deploymentRollbackEnabled', 'type': 'bool'}, + 'is_mercurial': {'key': 'properties.isMercurial', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, repo_url: str=None, branch: str=None, is_manual_integration: bool=None, deployment_rollback_enabled: bool=None, is_mercurial: bool=None, **kwargs) -> None: + super(SiteSourceControl, self).__init__(kind=kind, **kwargs) + self.repo_url = repo_url + self.branch = branch + self.is_manual_integration = is_manual_integration + self.deployment_rollback_enabled = deployment_rollback_enabled + self.is_mercurial = is_mercurial diff --git a/azure-mgmt-web/azure/mgmt/web/models/sku_capacity.py b/azure-mgmt-web/azure/mgmt/web/models/sku_capacity.py index 6e3ca3b8378c..1badcfdc803c 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/sku_capacity.py +++ b/azure-mgmt-web/azure/mgmt/web/models/sku_capacity.py @@ -32,9 +32,9 @@ class SkuCapacity(Model): 'scale_type': {'key': 'scaleType', 'type': 'str'}, } - def __init__(self, minimum=None, maximum=None, default=None, scale_type=None): - super(SkuCapacity, self).__init__() - self.minimum = minimum - self.maximum = maximum - self.default = default - self.scale_type = scale_type + def __init__(self, **kwargs): + super(SkuCapacity, self).__init__(**kwargs) + self.minimum = kwargs.get('minimum', None) + self.maximum = kwargs.get('maximum', None) + self.default = kwargs.get('default', None) + self.scale_type = kwargs.get('scale_type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/sku_capacity_py3.py b/azure-mgmt-web/azure/mgmt/web/models/sku_capacity_py3.py new file mode 100644 index 000000000000..527a1414a2d5 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/sku_capacity_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/sku_description.py b/azure-mgmt-web/azure/mgmt/web/models/sku_description.py index 4e5ac3fc4498..3e086dfb73d9 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/sku_description.py +++ b/azure-mgmt-web/azure/mgmt/web/models/sku_description.py @@ -45,13 +45,13 @@ class SkuDescription(Model): 'capabilities': {'key': 'capabilities', 'type': '[Capability]'}, } - def __init__(self, name=None, tier=None, size=None, family=None, capacity=None, sku_capacity=None, locations=None, capabilities=None): - super(SkuDescription, self).__init__() - 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 + def __init__(self, **kwargs): + super(SkuDescription, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.size = kwargs.get('size', None) + self.family = kwargs.get('family', None) + self.capacity = kwargs.get('capacity', None) + self.sku_capacity = kwargs.get('sku_capacity', None) + self.locations = kwargs.get('locations', None) + self.capabilities = kwargs.get('capabilities', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/sku_description_py3.py b/azure-mgmt-web/azure/mgmt/web/models/sku_description_py3.py new file mode 100644 index 000000000000..1c23aeb7e2c5 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/sku_description_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/sku_info.py b/azure-mgmt-web/azure/mgmt/web/models/sku_info.py index 04431f22a4a1..b4935ef3a0e8 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/sku_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/sku_info.py @@ -29,8 +29,8 @@ class SkuInfo(Model): 'capacity': {'key': 'capacity', 'type': 'SkuCapacity'}, } - def __init__(self, resource_type=None, sku=None, capacity=None): - super(SkuInfo, self).__init__() - self.resource_type = resource_type - self.sku = sku - self.capacity = capacity + def __init__(self, **kwargs): + super(SkuInfo, self).__init__(**kwargs) + self.resource_type = kwargs.get('resource_type', None) + self.sku = kwargs.get('sku', None) + self.capacity = kwargs.get('capacity', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/sku_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/sku_info_py3.py new file mode 100644 index 000000000000..58c940e0c367 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/sku_info_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SkuInfo(Model): + """SKU discovery information. + + :param resource_type: Resource type that this SKU applies to. + :type resource_type: str + :param sku: Name and tier of the SKU. + :type sku: ~azure.mgmt.web.models.SkuDescription + :param capacity: Min, max, and default scale values of the SKU. + :type capacity: ~azure.mgmt.web.models.SkuCapacity + """ + + _attribute_map = { + 'resource_type': {'key': 'resourceType', 'type': 'str'}, + 'sku': {'key': 'sku', 'type': 'SkuDescription'}, + 'capacity': {'key': 'capacity', 'type': 'SkuCapacity'}, + } + + def __init__(self, *, resource_type: str=None, sku=None, capacity=None, **kwargs) -> None: + super(SkuInfo, self).__init__(**kwargs) + self.resource_type = resource_type + self.sku = sku + self.capacity = capacity diff --git a/azure-mgmt-web/azure/mgmt/web/models/sku_infos.py b/azure-mgmt-web/azure/mgmt/web/models/sku_infos.py index f5f9fbadd447..3c1c17aa7392 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/sku_infos.py +++ b/azure-mgmt-web/azure/mgmt/web/models/sku_infos.py @@ -26,7 +26,7 @@ class SkuInfos(Model): 'skus': {'key': 'skus', 'type': '[GlobalCsmSkuDescription]'}, } - def __init__(self, resource_type=None, skus=None): - super(SkuInfos, self).__init__() - self.resource_type = resource_type - self.skus = skus + def __init__(self, **kwargs): + super(SkuInfos, self).__init__(**kwargs) + self.resource_type = kwargs.get('resource_type', None) + self.skus = kwargs.get('skus', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/sku_infos_py3.py b/azure-mgmt-web/azure/mgmt/web/models/sku_infos_py3.py new file mode 100644 index 000000000000..e51bc7df9809 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/sku_infos_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/slot_config_names_resource.py b/azure-mgmt-web/azure/mgmt/web/models/slot_config_names_resource.py index 1bb9f07e671b..072c2237aa45 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/slot_config_names_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/slot_config_names_resource.py @@ -30,6 +30,9 @@ class SlotConfigNamesResource(ProxyOnlyResource): :type connection_string_names: list[str] :param app_setting_names: List of application settings names. :type app_setting_names: list[str] + :param azure_storage_config_names: List of external Azure storage account + identifiers. + :type azure_storage_config_names: list[str] """ _validation = { @@ -45,9 +48,11 @@ class SlotConfigNamesResource(ProxyOnlyResource): 'type': {'key': 'type', 'type': 'str'}, 'connection_string_names': {'key': 'properties.connectionStringNames', 'type': '[str]'}, 'app_setting_names': {'key': 'properties.appSettingNames', 'type': '[str]'}, + 'azure_storage_config_names': {'key': 'properties.azureStorageConfigNames', 'type': '[str]'}, } - def __init__(self, kind=None, connection_string_names=None, app_setting_names=None): - super(SlotConfigNamesResource, self).__init__(kind=kind) - self.connection_string_names = connection_string_names - self.app_setting_names = app_setting_names + def __init__(self, **kwargs): + super(SlotConfigNamesResource, self).__init__(**kwargs) + self.connection_string_names = kwargs.get('connection_string_names', None) + self.app_setting_names = kwargs.get('app_setting_names', None) + self.azure_storage_config_names = kwargs.get('azure_storage_config_names', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/slot_config_names_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/slot_config_names_resource_py3.py new file mode 100644 index 000000000000..44e1587a66f7 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/slot_config_names_resource_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SlotConfigNamesResource(ProxyOnlyResource): + """Slot Config names azure resource. + + 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 connection_string_names: List of connection string names. + :type connection_string_names: list[str] + :param app_setting_names: List of application settings names. + :type app_setting_names: list[str] + :param azure_storage_config_names: List of external Azure storage account + identifiers. + :type azure_storage_config_names: list[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'}, + 'connection_string_names': {'key': 'properties.connectionStringNames', 'type': '[str]'}, + 'app_setting_names': {'key': 'properties.appSettingNames', 'type': '[str]'}, + 'azure_storage_config_names': {'key': 'properties.azureStorageConfigNames', 'type': '[str]'}, + } + + def __init__(self, *, kind: str=None, connection_string_names=None, app_setting_names=None, azure_storage_config_names=None, **kwargs) -> None: + super(SlotConfigNamesResource, self).__init__(kind=kind, **kwargs) + self.connection_string_names = connection_string_names + self.app_setting_names = app_setting_names + self.azure_storage_config_names = azure_storage_config_names diff --git a/azure-mgmt-web/azure/mgmt/web/models/slot_difference.py b/azure-mgmt-web/azure/mgmt/web/models/slot_difference.py index 58b2c975a0a3..26b9c0e541b0 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/slot_difference.py +++ b/azure-mgmt-web/azure/mgmt/web/models/slot_difference.py @@ -26,9 +26,8 @@ class SlotDifference(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :ivar slot_difference_type: Type of the difference: Information, Warning - or Error. - :vartype slot_difference_type: str + :ivar level: Level of the difference: Information, Warning or Error. + :vartype level: str :ivar setting_type: The type of the setting: General, AppSetting or ConnectionString. :vartype setting_type: str @@ -49,7 +48,7 @@ class SlotDifference(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'slot_difference_type': {'readonly': True}, + 'level': {'readonly': True}, 'setting_type': {'readonly': True}, 'diff_rule': {'readonly': True}, 'setting_name': {'readonly': True}, @@ -63,7 +62,7 @@ class SlotDifference(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'slot_difference_type': {'key': 'properties.type', 'type': 'str'}, + 'level': {'key': 'properties.level', 'type': 'str'}, 'setting_type': {'key': 'properties.settingType', 'type': 'str'}, 'diff_rule': {'key': 'properties.diffRule', 'type': 'str'}, 'setting_name': {'key': 'properties.settingName', 'type': 'str'}, @@ -72,9 +71,9 @@ class SlotDifference(ProxyOnlyResource): 'description': {'key': 'properties.description', 'type': 'str'}, } - def __init__(self, kind=None): - super(SlotDifference, self).__init__(kind=kind) - self.slot_difference_type = None + def __init__(self, **kwargs): + super(SlotDifference, self).__init__(**kwargs) + self.level = None self.setting_type = None self.diff_rule = None self.setting_name = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/slot_difference_py3.py b/azure-mgmt-web/azure/mgmt/web/models/slot_difference_py3.py new file mode 100644 index 000000000000..e2cb4e6fc1c5 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/slot_difference_py3.py @@ -0,0 +1,82 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SlotDifference(ProxyOnlyResource): + """A setting difference between two deployment slots of an app. + + 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 level: Level of the difference: Information, Warning or Error. + :vartype level: str + :ivar setting_type: The type of the setting: General, AppSetting or + ConnectionString. + :vartype setting_type: str + :ivar diff_rule: Rule that describes how to process the setting difference + during a slot swap. + :vartype diff_rule: str + :ivar setting_name: Name of the setting. + :vartype setting_name: str + :ivar value_in_current_slot: Value of the setting in the current slot. + :vartype value_in_current_slot: str + :ivar value_in_target_slot: Value of the setting in the target slot. + :vartype value_in_target_slot: str + :ivar description: Description of the setting difference. + :vartype description: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'level': {'readonly': True}, + 'setting_type': {'readonly': True}, + 'diff_rule': {'readonly': True}, + 'setting_name': {'readonly': True}, + 'value_in_current_slot': {'readonly': True}, + 'value_in_target_slot': {'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'}, + 'level': {'key': 'properties.level', 'type': 'str'}, + 'setting_type': {'key': 'properties.settingType', 'type': 'str'}, + 'diff_rule': {'key': 'properties.diffRule', 'type': 'str'}, + 'setting_name': {'key': 'properties.settingName', 'type': 'str'}, + 'value_in_current_slot': {'key': 'properties.valueInCurrentSlot', 'type': 'str'}, + 'value_in_target_slot': {'key': 'properties.valueInTargetSlot', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(SlotDifference, self).__init__(kind=kind, **kwargs) + self.level = None + self.setting_type = None + self.diff_rule = None + self.setting_name = None + self.value_in_current_slot = None + self.value_in_target_slot = None + self.description = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/slot_swap_status.py b/azure-mgmt-web/azure/mgmt/web/models/slot_swap_status.py index fa0589c5c1d3..73c238d3fd5b 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/slot_swap_status.py +++ b/azure-mgmt-web/azure/mgmt/web/models/slot_swap_status.py @@ -39,8 +39,8 @@ class SlotSwapStatus(Model): 'destination_slot_name': {'key': 'destinationSlotName', 'type': 'str'}, } - def __init__(self): - super(SlotSwapStatus, self).__init__() + def __init__(self, **kwargs): + super(SlotSwapStatus, self).__init__(**kwargs) self.timestamp_utc = None self.source_slot_name = None self.destination_slot_name = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/slot_swap_status_py3.py b/azure-mgmt-web/azure/mgmt/web/models/slot_swap_status_py3.py new file mode 100644 index 000000000000..9d555a5fe6f2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/slot_swap_status_py3.py @@ -0,0 +1,46 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SlotSwapStatus(Model): + """The status of the last successfull 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/slow_requests_based_trigger.py b/azure-mgmt-web/azure/mgmt/web/models/slow_requests_based_trigger.py index 3995123a0e1d..b2e7cb1168f3 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/slow_requests_based_trigger.py +++ b/azure-mgmt-web/azure/mgmt/web/models/slow_requests_based_trigger.py @@ -29,8 +29,8 @@ class SlowRequestsBasedTrigger(Model): 'time_interval': {'key': 'timeInterval', 'type': 'str'}, } - def __init__(self, time_taken=None, count=None, time_interval=None): - super(SlowRequestsBasedTrigger, self).__init__() - self.time_taken = time_taken - self.count = count - self.time_interval = time_interval + def __init__(self, **kwargs): + super(SlowRequestsBasedTrigger, self).__init__(**kwargs) + self.time_taken = kwargs.get('time_taken', None) + self.count = kwargs.get('count', None) + self.time_interval = kwargs.get('time_interval', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/slow_requests_based_trigger_py3.py b/azure-mgmt-web/azure/mgmt/web/models/slow_requests_based_trigger_py3.py new file mode 100644 index 000000000000..5288e5b100d6 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/slow_requests_based_trigger_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/snapshot.py b/azure-mgmt-web/azure/mgmt/web/models/snapshot.py index 066eae59ceb1..fb9d95fd5ff7 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/snapshot.py +++ b/azure-mgmt-web/azure/mgmt/web/models/snapshot.py @@ -45,6 +45,6 @@ class Snapshot(ProxyOnlyResource): 'time': {'key': 'properties.time', 'type': 'str'}, } - def __init__(self, kind=None): - super(Snapshot, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(Snapshot, self).__init__(**kwargs) self.time = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/snapshot_py3.py b/azure-mgmt-web/azure/mgmt/web/models/snapshot_py3.py new file mode 100644 index 000000000000..d1837cfef8bd --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/snapshot_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class Snapshot(ProxyOnlyResource): + """A snapshot of an app. + + 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 time: The time the snapshot was taken. + :vartype time: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'time': {'key': 'properties.time', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(Snapshot, self).__init__(kind=kind, **kwargs) + self.time = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_request.py b/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_request.py deleted file mode 100644 index 594a87aa73ac..000000000000 --- a/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_request.py +++ /dev/null @@ -1,72 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from .proxy_only_resource import ProxyOnlyResource - - -class SnapshotRecoveryRequest(ProxyOnlyResource): - """Details about app recovery operation. - - 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 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.models.SnapshotRecoveryTarget - :param overwrite: If true the recovery operation can - overwrite source app; otherwise, false. - :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, kind=None, snapshot_time=None, recovery_target=None, recover_configuration=None, ignore_conflicting_host_names=None): - super(SnapshotRecoveryRequest, self).__init__(kind=kind) - 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_source.py b/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_source.py new file mode 100644 index 000000000000..94034c76d0ed --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_source.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SnapshotRecoverySource(Model): + """Specifies the web app that snapshot contents will be retrieved from. + + :param location: Geographical location of the source web app, e.g. + SouthEastAsia, SouthCentralUS + :type location: str + :param id: ARM resource ID of the source 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, **kwargs): + super(SnapshotRecoverySource, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.id = kwargs.get('id', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_source_py3.py b/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_source_py3.py new file mode 100644 index 000000000000..bfb6ee873dae --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_source_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class SnapshotRecoverySource(Model): + """Specifies the web app that snapshot contents will be retrieved from. + + :param location: Geographical location of the source web app, e.g. + SouthEastAsia, SouthCentralUS + :type location: str + :param id: ARM resource ID of the source 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(SnapshotRecoverySource, self).__init__(**kwargs) + self.location = location + self.id = id diff --git a/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_target.py b/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_target.py deleted file mode 100644 index 86e831e9a8b7..000000000000 --- a/azure-mgmt-web/azure/mgmt/web/models/snapshot_recovery_target.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is -# regenerated. -# -------------------------------------------------------------------------- - -from msrest.serialization import Model - - -class 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=None, id=None): - super(SnapshotRecoveryTarget, self).__init__() - self.location = location - self.id = id diff --git a/azure-mgmt-web/azure/mgmt/web/models/snapshot_restore_request.py b/azure-mgmt-web/azure/mgmt/web/models/snapshot_restore_request.py new file mode 100644 index 000000000000..ef65405d81ab --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/snapshot_restore_request.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +class SnapshotRestoreRequest(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 restore should be + done, formatted as a DateTime string. + :type snapshot_time: str + :param recovery_source: Optional. Specifies the web app that snapshot + contents will be retrieved from. + If empty, the targeted web app will be used as the source. + :type recovery_source: ~azure.mgmt.web.models.SnapshotRecoverySource + :param overwrite: Required. If true the restore operation can + overwrite source app; otherwise, false. + :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_source': {'key': 'properties.recoverySource', 'type': 'SnapshotRecoverySource'}, + '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, **kwargs): + super(SnapshotRestoreRequest, self).__init__(**kwargs) + self.snapshot_time = kwargs.get('snapshot_time', None) + self.recovery_source = kwargs.get('recovery_source', None) + self.overwrite = kwargs.get('overwrite', None) + self.recover_configuration = kwargs.get('recover_configuration', None) + self.ignore_conflicting_host_names = kwargs.get('ignore_conflicting_host_names', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/snapshot_restore_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/snapshot_restore_request_py3.py new file mode 100644 index 000000000000..e32f278bc028 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/snapshot_restore_request_py3.py @@ -0,0 +1,75 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SnapshotRestoreRequest(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 restore should be + done, formatted as a DateTime string. + :type snapshot_time: str + :param recovery_source: Optional. Specifies the web app that snapshot + contents will be retrieved from. + If empty, the targeted web app will be used as the source. + :type recovery_source: ~azure.mgmt.web.models.SnapshotRecoverySource + :param overwrite: Required. If true the restore operation can + overwrite source app; otherwise, false. + :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_source': {'key': 'properties.recoverySource', 'type': 'SnapshotRecoverySource'}, + '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_source=None, recover_configuration: bool=None, ignore_conflicting_host_names: bool=None, **kwargs) -> None: + super(SnapshotRestoreRequest, self).__init__(kind=kind, **kwargs) + self.snapshot_time = snapshot_time + self.recovery_source = recovery_source + self.overwrite = overwrite + self.recover_configuration = recover_configuration + self.ignore_conflicting_host_names = ignore_conflicting_host_names diff --git a/azure-mgmt-web/azure/mgmt/web/models/solution.py b/azure-mgmt-web/azure/mgmt/web/models/solution.py index 931fdc999138..cca3a08776a4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/solution.py +++ b/azure-mgmt-web/azure/mgmt/web/models/solution.py @@ -42,12 +42,12 @@ class Solution(Model): 'metadata': {'key': 'metadata', 'type': '[[NameValuePair]]'}, } - def __init__(self, id=None, display_name=None, order=None, description=None, type=None, data=None, metadata=None): - super(Solution, self).__init__() - self.id = id - self.display_name = display_name - self.order = order - self.description = description - self.type = type - self.data = data - self.metadata = metadata + def __init__(self, **kwargs): + super(Solution, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.display_name = kwargs.get('display_name', None) + self.order = kwargs.get('order', None) + self.description = kwargs.get('description', None) + self.type = kwargs.get('type', None) + self.data = kwargs.get('data', None) + self.metadata = kwargs.get('metadata', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/solution_py3.py b/azure-mgmt-web/azure/mgmt/web/models/solution_py3.py new file mode 100644 index 000000000000..ebc38ca34a18 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/solution_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.SolutionType + :param data: Solution Data. + :type data: list[list[~azure.mgmt.web.models.NameValuePair]] + :param metadata: Solution Metadata. + :type metadata: list[list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/source_control.py b/azure-mgmt-web/azure/mgmt/web/models/source_control.py index 154659566101..b6897f5cd8f7 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/source_control.py +++ b/azure-mgmt-web/azure/mgmt/web/models/source_control.py @@ -26,8 +26,6 @@ class SourceControl(ProxyOnlyResource): :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. @@ -49,17 +47,15 @@ class SourceControl(ProxyOnlyResource): '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=None, source_control_name=None, token=None, token_secret=None, refresh_token=None, expiration_time=None): - super(SourceControl, self).__init__(kind=kind) - 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 + def __init__(self, **kwargs): + super(SourceControl, self).__init__(**kwargs) + self.token = kwargs.get('token', None) + self.token_secret = kwargs.get('token_secret', None) + self.refresh_token = kwargs.get('refresh_token', None) + self.expiration_time = kwargs.get('expiration_time', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/source_control_py3.py b/azure-mgmt-web/azure/mgmt/web/models/source_control_py3.py new file mode 100644 index 000000000000..be9ec85d95b1 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/source_control_py3.py @@ -0,0 +1,61 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 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'}, + '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, token: str=None, token_secret: str=None, refresh_token: str=None, expiration_time=None, **kwargs) -> None: + super(SourceControl, self).__init__(kind=kind, **kwargs) + self.token = token + self.token_secret = token_secret + self.refresh_token = refresh_token + self.expiration_time = expiration_time diff --git a/azure-mgmt-web/azure/mgmt/web/models/stack_major_version.py b/azure-mgmt-web/azure/mgmt/web/models/stack_major_version.py index 6ed47577e8ec..d5faa48be425 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/stack_major_version.py +++ b/azure-mgmt-web/azure/mgmt/web/models/stack_major_version.py @@ -33,9 +33,9 @@ class StackMajorVersion(Model): 'minor_versions': {'key': 'minorVersions', 'type': '[StackMinorVersion]'}, } - def __init__(self, display_version=None, runtime_version=None, is_default=None, minor_versions=None): - super(StackMajorVersion, self).__init__() - self.display_version = display_version - self.runtime_version = runtime_version - self.is_default = is_default - self.minor_versions = minor_versions + def __init__(self, **kwargs): + super(StackMajorVersion, self).__init__(**kwargs) + self.display_version = kwargs.get('display_version', None) + self.runtime_version = kwargs.get('runtime_version', None) + self.is_default = kwargs.get('is_default', None) + self.minor_versions = kwargs.get('minor_versions', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/stack_major_version_py3.py b/azure-mgmt-web/azure/mgmt/web/models/stack_major_version_py3.py new file mode 100644 index 000000000000..d53e57163b0d --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/stack_major_version_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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: true if this is the default major version; + otherwise, false. + :type is_default: bool + :param minor_versions: Minor versions associated with the major version. + :type minor_versions: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/stack_minor_version.py b/azure-mgmt-web/azure/mgmt/web/models/stack_minor_version.py index 543fd44a5f23..f732bbb506a0 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/stack_minor_version.py +++ b/azure-mgmt-web/azure/mgmt/web/models/stack_minor_version.py @@ -30,8 +30,8 @@ class StackMinorVersion(Model): 'is_default': {'key': 'isDefault', 'type': 'bool'}, } - def __init__(self, display_version=None, runtime_version=None, is_default=None): - super(StackMinorVersion, self).__init__() - self.display_version = display_version - self.runtime_version = runtime_version - self.is_default = is_default + def __init__(self, **kwargs): + super(StackMinorVersion, self).__init__(**kwargs) + self.display_version = kwargs.get('display_version', None) + self.runtime_version = kwargs.get('runtime_version', None) + self.is_default = kwargs.get('is_default', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/stack_minor_version_py3.py b/azure-mgmt-web/azure/mgmt/web/models/stack_minor_version_py3.py new file mode 100644 index 000000000000..3d1d4741da2c --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/stack_minor_version_py3.py @@ -0,0 +1,37 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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: true if this is the default minor version; + otherwise, false. + :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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/stamp_capacity.py b/azure-mgmt-web/azure/mgmt/web/models/stamp_capacity.py index 8ee3fa14d24b..0366dae90070 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/stamp_capacity.py +++ b/azure-mgmt-web/azure/mgmt/web/models/stamp_capacity.py @@ -29,7 +29,7 @@ class StampCapacity(Model): 'Shared', 'Dedicated', 'Dynamic' :type compute_mode: str or ~azure.mgmt.web.models.ComputeModeOptions :param worker_size: Size of the machines. Possible values include: - 'Default', 'Small', 'Medium', 'Large', 'D1', 'D2', 'D3' + 'Small', 'Medium', 'Large', 'D1', 'D2', 'D3', 'Default' :type worker_size: str or ~azure.mgmt.web.models.WorkerSizeOptions :param worker_size_id: Size ID of machines: 0 - Small @@ -45,6 +45,8 @@ class StampCapacity(Model): :type is_applicable_for_all_compute_modes: bool :param site_mode: Shared or Dedicated. :type site_mode: str + :param is_linux: Is this a linux stamp capacity + :type is_linux: bool """ _attribute_map = { @@ -58,17 +60,19 @@ class StampCapacity(Model): 'exclude_from_capacity_allocation': {'key': 'excludeFromCapacityAllocation', 'type': 'bool'}, 'is_applicable_for_all_compute_modes': {'key': 'isApplicableForAllComputeModes', 'type': 'bool'}, 'site_mode': {'key': 'siteMode', 'type': 'str'}, + 'is_linux': {'key': 'isLinux', 'type': 'bool'}, } - def __init__(self, name=None, available_capacity=None, total_capacity=None, unit=None, compute_mode=None, worker_size=None, worker_size_id=None, exclude_from_capacity_allocation=None, is_applicable_for_all_compute_modes=None, site_mode=None): - super(StampCapacity, self).__init__() - 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 + def __init__(self, **kwargs): + super(StampCapacity, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.available_capacity = kwargs.get('available_capacity', None) + self.total_capacity = kwargs.get('total_capacity', None) + self.unit = kwargs.get('unit', None) + self.compute_mode = kwargs.get('compute_mode', None) + self.worker_size = kwargs.get('worker_size', None) + self.worker_size_id = kwargs.get('worker_size_id', None) + self.exclude_from_capacity_allocation = kwargs.get('exclude_from_capacity_allocation', None) + self.is_applicable_for_all_compute_modes = kwargs.get('is_applicable_for_all_compute_modes', None) + self.site_mode = kwargs.get('site_mode', None) + self.is_linux = kwargs.get('is_linux', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/stamp_capacity_py3.py b/azure-mgmt-web/azure/mgmt/web/models/stamp_capacity_py3.py new file mode 100644 index 000000000000..2b0bd5ade14e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/stamp_capacity_py3.py @@ -0,0 +1,78 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.models.ComputeModeOptions + :param worker_size: Size of the machines. Possible values include: + 'Small', 'Medium', 'Large', 'D1', 'D2', 'D3', 'Default' + :type worker_size: str or ~azure.mgmt.web.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 true, 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: true if capacity + is applicable for all apps; otherwise, false. + :type is_applicable_for_all_compute_modes: bool + :param site_mode: Shared or Dedicated. + :type site_mode: str + :param is_linux: Is this a linux stamp capacity + :type is_linux: bool + """ + + _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'}, + 'is_linux': {'key': 'isLinux', 'type': 'bool'}, + } + + 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, is_linux: bool=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 + self.is_linux = is_linux diff --git a/azure-mgmt-web/azure/mgmt/web/models/status_codes_based_trigger.py b/azure-mgmt-web/azure/mgmt/web/models/status_codes_based_trigger.py index 32389ee7253d..d1776ce91bc0 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/status_codes_based_trigger.py +++ b/azure-mgmt-web/azure/mgmt/web/models/status_codes_based_trigger.py @@ -35,10 +35,10 @@ class StatusCodesBasedTrigger(Model): 'time_interval': {'key': 'timeInterval', 'type': 'str'}, } - def __init__(self, status=None, sub_status=None, win32_status=None, count=None, time_interval=None): - super(StatusCodesBasedTrigger, self).__init__() - self.status = status - self.sub_status = sub_status - self.win32_status = win32_status - self.count = count - self.time_interval = time_interval + def __init__(self, **kwargs): + super(StatusCodesBasedTrigger, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.sub_status = kwargs.get('sub_status', None) + self.win32_status = kwargs.get('win32_status', None) + self.count = kwargs.get('count', None) + self.time_interval = kwargs.get('time_interval', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/status_codes_based_trigger_py3.py b/azure-mgmt-web/azure/mgmt/web/models/status_codes_based_trigger_py3.py new file mode 100644 index 000000000000..939a950c1d37 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/status_codes_based_trigger_py3.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/storage_migration_options.py b/azure-mgmt-web/azure/mgmt/web/models/storage_migration_options.py index e92a9f06c9b2..faaeabd58089 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/storage_migration_options.py +++ b/azure-mgmt-web/azure/mgmt/web/models/storage_migration_options.py @@ -18,6 +18,8 @@ class StorageMigrationOptions(ProxyOnlyResource): 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. @@ -26,9 +28,10 @@ class StorageMigrationOptions(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param azurefiles_connection_string: AzureFiles connection string. + :param azurefiles_connection_string: Required. AzureFiles connection + string. :type azurefiles_connection_string: str - :param azurefiles_share: AzureFiles share. + :param azurefiles_share: Required. AzureFiles share. :type azurefiles_share: str :param switch_site_after_migration: trueif the app should be switched over; otherwise, false. Default value: False . @@ -58,9 +61,9 @@ class StorageMigrationOptions(ProxyOnlyResource): 'block_write_access_to_site': {'key': 'properties.blockWriteAccessToSite', 'type': 'bool'}, } - def __init__(self, azurefiles_connection_string, azurefiles_share, kind=None, switch_site_after_migration=False, block_write_access_to_site=False): - super(StorageMigrationOptions, self).__init__(kind=kind) - self.azurefiles_connection_string = azurefiles_connection_string - self.azurefiles_share = azurefiles_share - self.switch_site_after_migration = switch_site_after_migration - self.block_write_access_to_site = block_write_access_to_site + def __init__(self, **kwargs): + super(StorageMigrationOptions, self).__init__(**kwargs) + self.azurefiles_connection_string = kwargs.get('azurefiles_connection_string', None) + self.azurefiles_share = kwargs.get('azurefiles_share', None) + self.switch_site_after_migration = kwargs.get('switch_site_after_migration', False) + self.block_write_access_to_site = kwargs.get('block_write_access_to_site', False) diff --git a/azure-mgmt-web/azure/mgmt/web/models/storage_migration_options_py3.py b/azure-mgmt-web/azure/mgmt/web/models/storage_migration_options_py3.py new file mode 100644 index 000000000000..0d86033f921b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/storage_migration_options_py3.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class StorageMigrationOptions(ProxyOnlyResource): + """Options for app content migration. + + 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 azurefiles_connection_string: Required. AzureFiles connection + string. + :type azurefiles_connection_string: str + :param azurefiles_share: Required. AzureFiles share. + :type azurefiles_share: str + :param switch_site_after_migration: trueif the app should be + switched over; otherwise, false. Default value: False . + :type switch_site_after_migration: bool + :param block_write_access_to_site: true if the app should be + read only during copy operation; otherwise, false. Default + value: False . + :type block_write_access_to_site: bool + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'azurefiles_connection_string': {'required': True}, + 'azurefiles_share': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'azurefiles_connection_string': {'key': 'properties.azurefilesConnectionString', 'type': 'str'}, + 'azurefiles_share': {'key': 'properties.azurefilesShare', 'type': 'str'}, + 'switch_site_after_migration': {'key': 'properties.switchSiteAfterMigration', 'type': 'bool'}, + 'block_write_access_to_site': {'key': 'properties.blockWriteAccessToSite', 'type': 'bool'}, + } + + def __init__(self, *, azurefiles_connection_string: str, azurefiles_share: str, kind: str=None, switch_site_after_migration: bool=False, block_write_access_to_site: bool=False, **kwargs) -> None: + super(StorageMigrationOptions, self).__init__(kind=kind, **kwargs) + self.azurefiles_connection_string = azurefiles_connection_string + self.azurefiles_share = azurefiles_share + self.switch_site_after_migration = switch_site_after_migration + self.block_write_access_to_site = block_write_access_to_site diff --git a/azure-mgmt-web/azure/mgmt/web/models/storage_migration_response.py b/azure-mgmt-web/azure/mgmt/web/models/storage_migration_response.py index eda75c3f5171..f528db53bae5 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/storage_migration_response.py +++ b/azure-mgmt-web/azure/mgmt/web/models/storage_migration_response.py @@ -46,6 +46,6 @@ class StorageMigrationResponse(ProxyOnlyResource): 'operation_id': {'key': 'properties.operationId', 'type': 'str'}, } - def __init__(self, kind=None): - super(StorageMigrationResponse, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(StorageMigrationResponse, self).__init__(**kwargs) self.operation_id = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/storage_migration_response_py3.py b/azure-mgmt-web/azure/mgmt/web/models/storage_migration_response_py3.py new file mode 100644 index 000000000000..96dabf439e79 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/storage_migration_response_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class StorageMigrationResponse(ProxyOnlyResource): + """Response for a migration of app content request. + + 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 operation_id: When server starts the migration process, it will + return an operation ID identifying that particular migration operation. + :vartype operation_id: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'operation_id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'operation_id': {'key': 'properties.operationId', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(StorageMigrationResponse, self).__init__(kind=kind, **kwargs) + self.operation_id = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/string_dictionary.py b/azure-mgmt-web/azure/mgmt/web/models/string_dictionary.py index 875d8325abaf..de492106f79c 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/string_dictionary.py +++ b/azure-mgmt-web/azure/mgmt/web/models/string_dictionary.py @@ -44,6 +44,6 @@ class StringDictionary(ProxyOnlyResource): 'properties': {'key': 'properties', 'type': '{str}'}, } - def __init__(self, kind=None, properties=None): - super(StringDictionary, self).__init__(kind=kind) - self.properties = properties + def __init__(self, **kwargs): + super(StringDictionary, self).__init__(**kwargs) + self.properties = kwargs.get('properties', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/string_dictionary_py3.py b/azure-mgmt-web/azure/mgmt/web/models/string_dictionary_py3.py new file mode 100644 index 000000000000..7a2e90bd44ff --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/string_dictionary_py3.py @@ -0,0 +1,49 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class StringDictionary(ProxyOnlyResource): + """String dictionary resource. + + 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 properties: Settings. + :type properties: dict[str, 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'}, + 'properties': {'key': 'properties', 'type': '{str}'}, + } + + def __init__(self, *, kind: str=None, properties=None, **kwargs) -> None: + super(StringDictionary, self).__init__(kind=kind, **kwargs) + self.properties = properties diff --git a/azure-mgmt-web/azure/mgmt/web/models/swift_virtual_network.py b/azure-mgmt-web/azure/mgmt/web/models/swift_virtual_network.py new file mode 100644 index 000000000000..a4ee784810b8 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/swift_virtual_network.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource import ProxyOnlyResource + + +class SwiftVirtualNetwork(ProxyOnlyResource): + """Swift Virtual Network Contract. This is used to enable the new Swift way of + doing virtual network integration. + + 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 subnet_resource_id: The Virtual Network subnet's resource ID. This + is the subnet that this Web App will join. This subnet must have a + delegation to Microsoft.Web/serverFarms defined first. + :type subnet_resource_id: str + :param swift_supported: A flag that specifies if the scale unit this Web + App is on supports Swift integration. + :type swift_supported: bool + """ + + _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'}, + 'subnet_resource_id': {'key': 'properties.subnetResourceId', 'type': 'str'}, + 'swift_supported': {'key': 'properties.swiftSupported', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(SwiftVirtualNetwork, self).__init__(**kwargs) + self.subnet_resource_id = kwargs.get('subnet_resource_id', None) + self.swift_supported = kwargs.get('swift_supported', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/swift_virtual_network_py3.py b/azure-mgmt-web/azure/mgmt/web/models/swift_virtual_network_py3.py new file mode 100644 index 000000000000..30c7551eef50 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/swift_virtual_network_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class SwiftVirtualNetwork(ProxyOnlyResource): + """Swift Virtual Network Contract. This is used to enable the new Swift way of + doing virtual network integration. + + 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 subnet_resource_id: The Virtual Network subnet's resource ID. This + is the subnet that this Web App will join. This subnet must have a + delegation to Microsoft.Web/serverFarms defined first. + :type subnet_resource_id: str + :param swift_supported: A flag that specifies if the scale unit this Web + App is on supports Swift integration. + :type swift_supported: bool + """ + + _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'}, + 'subnet_resource_id': {'key': 'properties.subnetResourceId', 'type': 'str'}, + 'swift_supported': {'key': 'properties.swiftSupported', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, subnet_resource_id: str=None, swift_supported: bool=None, **kwargs) -> None: + super(SwiftVirtualNetwork, self).__init__(kind=kind, **kwargs) + self.subnet_resource_id = subnet_resource_id + self.swift_supported = swift_supported diff --git a/azure-mgmt-web/azure/mgmt/web/models/tld_legal_agreement.py b/azure-mgmt-web/azure/mgmt/web/models/tld_legal_agreement.py index c7ac735feb00..ebe9ca9add5c 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/tld_legal_agreement.py +++ b/azure-mgmt-web/azure/mgmt/web/models/tld_legal_agreement.py @@ -15,11 +15,13 @@ class TldLegalAgreement(Model): """Legal agreement for a top level domain. - :param agreement_key: Unique identifier for the agreement. + All required parameters must be populated in order to send to Azure. + + :param agreement_key: Required. Unique identifier for the agreement. :type agreement_key: str - :param title: Agreement title. + :param title: Required. Agreement title. :type title: str - :param content: Agreement details. + :param content: Required. Agreement details. :type content: str :param url: URL where a copy of the agreement details is hosted. :type url: str @@ -38,9 +40,9 @@ class TldLegalAgreement(Model): 'url': {'key': 'url', 'type': 'str'}, } - def __init__(self, agreement_key, title, content, url=None): - super(TldLegalAgreement, self).__init__() - self.agreement_key = agreement_key - self.title = title - self.content = content - self.url = url + def __init__(self, **kwargs): + super(TldLegalAgreement, self).__init__(**kwargs) + self.agreement_key = kwargs.get('agreement_key', None) + self.title = kwargs.get('title', None) + self.content = kwargs.get('content', None) + self.url = kwargs.get('url', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/tld_legal_agreement_py3.py b/azure-mgmt-web/azure/mgmt/web/models/tld_legal_agreement_py3.py new file mode 100644 index 000000000000..a32633d0e8d6 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/tld_legal_agreement_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TldLegalAgreement(Model): + """Legal agreement for a top level domain. + + All required parameters must be populated in order to send to Azure. + + :param agreement_key: Required. Unique identifier for the agreement. + :type agreement_key: str + :param title: Required. Agreement title. + :type title: str + :param content: Required. Agreement details. + :type content: str + :param url: URL where a copy of the agreement details is hosted. + :type url: str + """ + + _validation = { + 'agreement_key': {'required': True}, + 'title': {'required': True}, + 'content': {'required': True}, + } + + _attribute_map = { + 'agreement_key': {'key': 'agreementKey', 'type': 'str'}, + 'title': {'key': 'title', 'type': 'str'}, + 'content': {'key': 'content', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + } + + def __init__(self, *, agreement_key: str, title: str, content: str, url: str=None, **kwargs) -> None: + super(TldLegalAgreement, self).__init__(**kwargs) + self.agreement_key = agreement_key + self.title = title + self.content = content + self.url = url diff --git a/azure-mgmt-web/azure/mgmt/web/models/top_level_domain.py b/azure-mgmt-web/azure/mgmt/web/models/top_level_domain.py index c5b5397e3d90..a7d255ea8ecd 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/top_level_domain.py +++ b/azure-mgmt-web/azure/mgmt/web/models/top_level_domain.py @@ -26,8 +26,6 @@ class TopLevelDomain(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :ivar domain_name: Name of the top level domain. - :vartype domain_name: str :param privacy: If true, then the top level domain supports domain privacy; otherwise, false. :type privacy: bool @@ -37,7 +35,6 @@ class TopLevelDomain(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'domain_name': {'readonly': True}, } _attribute_map = { @@ -45,11 +42,9 @@ class TopLevelDomain(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'domain_name': {'key': 'properties.name', 'type': 'str'}, 'privacy': {'key': 'properties.privacy', 'type': 'bool'}, } - def __init__(self, kind=None, privacy=None): - super(TopLevelDomain, self).__init__(kind=kind) - self.domain_name = None - self.privacy = privacy + def __init__(self, **kwargs): + super(TopLevelDomain, self).__init__(**kwargs) + self.privacy = kwargs.get('privacy', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_agreement_option.py b/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_agreement_option.py index c22b5dfd1948..94be4b55cfd3 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_agreement_option.py +++ b/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_agreement_option.py @@ -30,7 +30,7 @@ class TopLevelDomainAgreementOption(Model): 'for_transfer': {'key': 'forTransfer', 'type': 'bool'}, } - def __init__(self, include_privacy=None, for_transfer=None): - super(TopLevelDomainAgreementOption, self).__init__() - self.include_privacy = include_privacy - self.for_transfer = for_transfer + def __init__(self, **kwargs): + super(TopLevelDomainAgreementOption, self).__init__(**kwargs) + self.include_privacy = kwargs.get('include_privacy', None) + self.for_transfer = kwargs.get('for_transfer', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_agreement_option_py3.py b/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_agreement_option_py3.py new file mode 100644 index 000000000000..88bde7894d0f --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_agreement_option_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class TopLevelDomainAgreementOption(Model): + """Options for retrieving the list of top level domain legal agreements. + + :param include_privacy: If true, then the list of agreements + will include agreements for domain privacy as well; otherwise, + false. + :type include_privacy: bool + :param for_transfer: If true, then the list of agreements + will include agreements for domain transfer as well; otherwise, + false. + :type for_transfer: bool + """ + + _attribute_map = { + 'include_privacy': {'key': 'includePrivacy', 'type': 'bool'}, + 'for_transfer': {'key': 'forTransfer', 'type': 'bool'}, + } + + def __init__(self, *, include_privacy: bool=None, for_transfer: bool=None, **kwargs) -> None: + super(TopLevelDomainAgreementOption, self).__init__(**kwargs) + self.include_privacy = include_privacy + self.for_transfer = for_transfer diff --git a/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_py3.py b/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_py3.py new file mode 100644 index 000000000000..4af488b1730a --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/top_level_domain_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class TopLevelDomain(ProxyOnlyResource): + """A top level domain object. + + 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 privacy: If true, then the top level domain supports + domain privacy; otherwise, false. + :type privacy: bool + """ + + _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'}, + 'privacy': {'key': 'properties.privacy', 'type': 'bool'}, + } + + def __init__(self, *, kind: str=None, privacy: bool=None, **kwargs) -> None: + super(TopLevelDomain, self).__init__(kind=kind, **kwargs) + self.privacy = privacy diff --git a/azure-mgmt-web/azure/mgmt/web/models/triggered_job_history.py b/azure-mgmt-web/azure/mgmt/web/models/triggered_job_history.py index 52afa075ca28..0e585f4b9c8d 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/triggered_job_history.py +++ b/azure-mgmt-web/azure/mgmt/web/models/triggered_job_history.py @@ -27,8 +27,8 @@ class TriggeredJobHistory(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param triggered_job_runs: List of triggered web job runs. - :type triggered_job_runs: list[~azure.mgmt.web.models.TriggeredJobRun] + :param runs: List of triggered web job runs. + :type runs: list[~azure.mgmt.web.models.TriggeredJobRun] """ _validation = { @@ -42,9 +42,9 @@ class TriggeredJobHistory(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'triggered_job_runs': {'key': 'properties.triggeredJobRuns', 'type': '[TriggeredJobRun]'}, + 'runs': {'key': 'properties.runs', 'type': '[TriggeredJobRun]'}, } - def __init__(self, kind=None, triggered_job_runs=None): - super(TriggeredJobHistory, self).__init__(kind=kind) - self.triggered_job_runs = triggered_job_runs + def __init__(self, **kwargs): + super(TriggeredJobHistory, self).__init__(**kwargs) + self.runs = kwargs.get('runs', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/triggered_job_history_py3.py b/azure-mgmt-web/azure/mgmt/web/models/triggered_job_history_py3.py new file mode 100644 index 000000000000..e5da0604cde4 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/triggered_job_history_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class TriggeredJobHistory(ProxyOnlyResource): + """Triggered Web Job History. List of Triggered Web Job Run Information + elements. + + 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 runs: List of triggered web job runs. + :type runs: list[~azure.mgmt.web.models.TriggeredJobRun] + """ + + _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'}, + 'runs': {'key': 'properties.runs', 'type': '[TriggeredJobRun]'}, + } + + def __init__(self, *, kind: str=None, runs=None, **kwargs) -> None: + super(TriggeredJobHistory, self).__init__(kind=kind, **kwargs) + self.runs = runs diff --git a/azure-mgmt-web/azure/mgmt/web/models/triggered_job_run.py b/azure-mgmt-web/azure/mgmt/web/models/triggered_job_run.py index 3b9bef7b7671..1caecf94e018 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/triggered_job_run.py +++ b/azure-mgmt-web/azure/mgmt/web/models/triggered_job_run.py @@ -26,10 +26,10 @@ class TriggeredJobRun(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param triggered_job_run_id: Job ID. - :type triggered_job_run_id: str - :ivar triggered_job_run_name: Job name. - :vartype triggered_job_run_name: str + :param web_job_id: Job ID. + :type web_job_id: str + :param web_job_name: Job name. + :type web_job_name: str :param status: Job status. Possible values include: 'Success', 'Failed', 'Error' :type status: str or ~azure.mgmt.web.models.TriggeredWebJobStatus @@ -55,7 +55,6 @@ class TriggeredJobRun(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'triggered_job_run_name': {'readonly': True}, } _attribute_map = { @@ -63,29 +62,29 @@ class TriggeredJobRun(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'triggered_job_run_id': {'key': 'properties.id', 'type': 'str'}, - 'triggered_job_run_name': {'key': 'properties.name', 'type': 'str'}, + 'web_job_id': {'key': 'properties.web_job_id', 'type': 'str'}, + 'web_job_name': {'key': 'properties.web_job_name', 'type': 'str'}, 'status': {'key': 'properties.status', 'type': 'TriggeredWebJobStatus'}, - 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, - 'end_time': {'key': 'properties.endTime', 'type': 'iso-8601'}, + 'start_time': {'key': 'properties.start_time', 'type': 'iso-8601'}, + 'end_time': {'key': 'properties.end_time', 'type': 'iso-8601'}, 'duration': {'key': 'properties.duration', 'type': 'str'}, - 'output_url': {'key': 'properties.outputUrl', 'type': 'str'}, - 'error_url': {'key': 'properties.errorUrl', 'type': 'str'}, + 'output_url': {'key': 'properties.output_url', 'type': 'str'}, + 'error_url': {'key': 'properties.error_url', 'type': 'str'}, 'url': {'key': 'properties.url', 'type': 'str'}, - 'job_name': {'key': 'properties.jobName', 'type': 'str'}, + 'job_name': {'key': 'properties.job_name', 'type': 'str'}, 'trigger': {'key': 'properties.trigger', 'type': 'str'}, } - def __init__(self, kind=None, triggered_job_run_id=None, status=None, start_time=None, end_time=None, duration=None, output_url=None, error_url=None, url=None, job_name=None, trigger=None): - super(TriggeredJobRun, self).__init__(kind=kind) - self.triggered_job_run_id = triggered_job_run_id - self.triggered_job_run_name = None - self.status = status - self.start_time = start_time - self.end_time = end_time - self.duration = duration - self.output_url = output_url - self.error_url = error_url - self.url = url - self.job_name = job_name - self.trigger = trigger + def __init__(self, **kwargs): + super(TriggeredJobRun, self).__init__(**kwargs) + self.web_job_id = kwargs.get('web_job_id', None) + self.web_job_name = kwargs.get('web_job_name', None) + self.status = kwargs.get('status', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.duration = kwargs.get('duration', None) + self.output_url = kwargs.get('output_url', None) + self.error_url = kwargs.get('error_url', None) + self.url = kwargs.get('url', None) + self.job_name = kwargs.get('job_name', None) + self.trigger = kwargs.get('trigger', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/triggered_job_run_py3.py b/azure-mgmt-web/azure/mgmt/web/models/triggered_job_run_py3.py new file mode 100644 index 000000000000..e939a2017f08 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/triggered_job_run_py3.py @@ -0,0 +1,90 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class TriggeredJobRun(ProxyOnlyResource): + """Triggered Web Job Run Information. + + 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 web_job_id: Job ID. + :type web_job_id: str + :param web_job_name: Job name. + :type web_job_name: str + :param status: Job status. Possible values include: 'Success', 'Failed', + 'Error' + :type status: str or ~azure.mgmt.web.models.TriggeredWebJobStatus + :param start_time: Start time. + :type start_time: datetime + :param end_time: End time. + :type end_time: datetime + :param duration: Job duration. + :type duration: str + :param output_url: Output URL. + :type output_url: str + :param error_url: Error URL. + :type error_url: str + :param url: Job URL. + :type url: str + :param job_name: Job name. + :type job_name: str + :param trigger: Job trigger. + :type trigger: 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'}, + 'web_job_id': {'key': 'properties.web_job_id', 'type': 'str'}, + 'web_job_name': {'key': 'properties.web_job_name', 'type': 'str'}, + 'status': {'key': 'properties.status', 'type': 'TriggeredWebJobStatus'}, + 'start_time': {'key': 'properties.start_time', 'type': 'iso-8601'}, + 'end_time': {'key': 'properties.end_time', 'type': 'iso-8601'}, + 'duration': {'key': 'properties.duration', 'type': 'str'}, + 'output_url': {'key': 'properties.output_url', 'type': 'str'}, + 'error_url': {'key': 'properties.error_url', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'job_name': {'key': 'properties.job_name', 'type': 'str'}, + 'trigger': {'key': 'properties.trigger', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, web_job_id: str=None, web_job_name: str=None, status=None, start_time=None, end_time=None, duration: str=None, output_url: str=None, error_url: str=None, url: str=None, job_name: str=None, trigger: str=None, **kwargs) -> None: + super(TriggeredJobRun, self).__init__(kind=kind, **kwargs) + self.web_job_id = web_job_id + self.web_job_name = web_job_name + self.status = status + self.start_time = start_time + self.end_time = end_time + self.duration = duration + self.output_url = output_url + self.error_url = error_url + self.url = url + self.job_name = job_name + self.trigger = trigger diff --git a/azure-mgmt-web/azure/mgmt/web/models/triggered_web_job.py b/azure-mgmt-web/azure/mgmt/web/models/triggered_web_job.py index a64ffb9c9bb9..7c5bf24dbff4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/triggered_web_job.py +++ b/azure-mgmt-web/azure/mgmt/web/models/triggered_web_job.py @@ -32,18 +32,15 @@ class TriggeredWebJob(ProxyOnlyResource): :type history_url: str :param scheduler_logs_url: Scheduler Logs URL. :type scheduler_logs_url: str - :ivar triggered_web_job_name: Job name. Used as job identifier in ARM - resource URI. - :vartype triggered_web_job_name: str :param run_command: Run command. :type run_command: str :param url: Job URL. :type url: str :param extra_info_url: Extra Info URL. :type extra_info_url: str - :param job_type: Job type. Possible values include: 'Continuous', + :param web_job_type: Job type. Possible values include: 'Continuous', 'Triggered' - :type job_type: str or ~azure.mgmt.web.models.WebJobType + :type web_job_type: str or ~azure.mgmt.web.models.WebJobType :param error: Error information. :type error: str :param using_sdk: Using SDK? @@ -56,7 +53,6 @@ class TriggeredWebJob(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'triggered_web_job_name': {'readonly': True}, } _attribute_map = { @@ -64,29 +60,27 @@ class TriggeredWebJob(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'latest_run': {'key': 'properties.latestRun', 'type': 'TriggeredJobRun'}, - 'history_url': {'key': 'properties.historyUrl', 'type': 'str'}, - 'scheduler_logs_url': {'key': 'properties.schedulerLogsUrl', 'type': 'str'}, - 'triggered_web_job_name': {'key': 'properties.name', 'type': 'str'}, - 'run_command': {'key': 'properties.runCommand', 'type': 'str'}, + 'latest_run': {'key': 'properties.latest_run', 'type': 'TriggeredJobRun'}, + 'history_url': {'key': 'properties.history_url', 'type': 'str'}, + 'scheduler_logs_url': {'key': 'properties.scheduler_logs_url', 'type': 'str'}, + 'run_command': {'key': 'properties.run_command', 'type': 'str'}, 'url': {'key': 'properties.url', 'type': 'str'}, - 'extra_info_url': {'key': 'properties.extraInfoUrl', 'type': 'str'}, - 'job_type': {'key': 'properties.jobType', 'type': 'WebJobType'}, + 'extra_info_url': {'key': 'properties.extra_info_url', 'type': 'str'}, + 'web_job_type': {'key': 'properties.web_job_type', 'type': 'WebJobType'}, 'error': {'key': 'properties.error', 'type': 'str'}, - 'using_sdk': {'key': 'properties.usingSdk', 'type': 'bool'}, + 'using_sdk': {'key': 'properties.using_sdk', 'type': 'bool'}, 'settings': {'key': 'properties.settings', 'type': '{object}'}, } - def __init__(self, kind=None, latest_run=None, history_url=None, scheduler_logs_url=None, run_command=None, url=None, extra_info_url=None, job_type=None, error=None, using_sdk=None, settings=None): - super(TriggeredWebJob, self).__init__(kind=kind) - self.latest_run = latest_run - self.history_url = history_url - self.scheduler_logs_url = scheduler_logs_url - self.triggered_web_job_name = None - self.run_command = run_command - self.url = url - self.extra_info_url = extra_info_url - self.job_type = job_type - self.error = error - self.using_sdk = using_sdk - self.settings = settings + def __init__(self, **kwargs): + super(TriggeredWebJob, self).__init__(**kwargs) + self.latest_run = kwargs.get('latest_run', None) + self.history_url = kwargs.get('history_url', None) + self.scheduler_logs_url = kwargs.get('scheduler_logs_url', None) + self.run_command = kwargs.get('run_command', None) + self.url = kwargs.get('url', None) + self.extra_info_url = kwargs.get('extra_info_url', None) + self.web_job_type = kwargs.get('web_job_type', None) + self.error = kwargs.get('error', None) + self.using_sdk = kwargs.get('using_sdk', None) + self.settings = kwargs.get('settings', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/triggered_web_job_py3.py b/azure-mgmt-web/azure/mgmt/web/models/triggered_web_job_py3.py new file mode 100644 index 000000000000..3701608eafe0 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/triggered_web_job_py3.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class TriggeredWebJob(ProxyOnlyResource): + """Triggered Web Job Information. + + 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 latest_run: Latest job run information. + :type latest_run: ~azure.mgmt.web.models.TriggeredJobRun + :param history_url: History URL. + :type history_url: str + :param scheduler_logs_url: Scheduler Logs URL. + :type scheduler_logs_url: str + :param run_command: Run command. + :type run_command: str + :param url: Job URL. + :type url: str + :param extra_info_url: Extra Info URL. + :type extra_info_url: str + :param web_job_type: Job type. Possible values include: 'Continuous', + 'Triggered' + :type web_job_type: str or ~azure.mgmt.web.models.WebJobType + :param error: Error information. + :type error: str + :param using_sdk: Using SDK? + :type using_sdk: bool + :param settings: Job settings. + :type settings: dict[str, object] + """ + + _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'}, + 'latest_run': {'key': 'properties.latest_run', 'type': 'TriggeredJobRun'}, + 'history_url': {'key': 'properties.history_url', 'type': 'str'}, + 'scheduler_logs_url': {'key': 'properties.scheduler_logs_url', 'type': 'str'}, + 'run_command': {'key': 'properties.run_command', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'extra_info_url': {'key': 'properties.extra_info_url', 'type': 'str'}, + 'web_job_type': {'key': 'properties.web_job_type', 'type': 'WebJobType'}, + 'error': {'key': 'properties.error', 'type': 'str'}, + 'using_sdk': {'key': 'properties.using_sdk', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': '{object}'}, + } + + def __init__(self, *, kind: str=None, latest_run=None, history_url: str=None, scheduler_logs_url: str=None, run_command: str=None, url: str=None, extra_info_url: str=None, web_job_type=None, error: str=None, using_sdk: bool=None, settings=None, **kwargs) -> None: + super(TriggeredWebJob, self).__init__(kind=kind, **kwargs) + self.latest_run = latest_run + self.history_url = history_url + self.scheduler_logs_url = scheduler_logs_url + self.run_command = run_command + self.url = url + self.extra_info_url = extra_info_url + self.web_job_type = web_job_type + self.error = error + self.using_sdk = using_sdk + self.settings = settings diff --git a/azure-mgmt-web/azure/mgmt/web/models/usage.py b/azure-mgmt-web/azure/mgmt/web/models/usage.py index 7ae5ab1dba10..54f3cc94538c 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/usage.py +++ b/azure-mgmt-web/azure/mgmt/web/models/usage.py @@ -28,8 +28,6 @@ class Usage(ProxyOnlyResource): :vartype type: str :ivar display_name: Friendly name shown in the UI. :vartype display_name: str - :ivar usage_name: Name of the quota. - :vartype usage_name: str :ivar resource_name: Name of the quota resource. :vartype resource_name: str :ivar unit: Units of measurement for the quota resource. @@ -52,7 +50,6 @@ class Usage(ProxyOnlyResource): 'name': {'readonly': True}, 'type': {'readonly': True}, 'display_name': {'readonly': True}, - 'usage_name': {'readonly': True}, 'resource_name': {'readonly': True}, 'unit': {'readonly': True}, 'current_value': {'readonly': True}, @@ -68,7 +65,6 @@ class Usage(ProxyOnlyResource): 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'display_name': {'key': 'properties.displayName', 'type': 'str'}, - 'usage_name': {'key': 'properties.name', 'type': 'str'}, 'resource_name': {'key': 'properties.resourceName', 'type': 'str'}, 'unit': {'key': 'properties.unit', 'type': 'str'}, 'current_value': {'key': 'properties.currentValue', 'type': 'long'}, @@ -78,10 +74,9 @@ class Usage(ProxyOnlyResource): 'site_mode': {'key': 'properties.siteMode', 'type': 'str'}, } - def __init__(self, kind=None): - super(Usage, self).__init__(kind=kind) + def __init__(self, **kwargs): + super(Usage, self).__init__(**kwargs) self.display_name = None - self.usage_name = None self.resource_name = None self.unit = None self.current_value = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/usage_py3.py b/azure-mgmt-web/azure/mgmt/web/models/usage_py3.py new file mode 100644 index 000000000000..81c94d115bd8 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/usage_py3.py @@ -0,0 +1,86 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class Usage(ProxyOnlyResource): + """Usage of the quota resource. + + 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: Friendly name shown in the UI. + :vartype display_name: str + :ivar resource_name: Name of the quota resource. + :vartype resource_name: str + :ivar unit: Units of measurement for the quota resource. + :vartype unit: str + :ivar current_value: The current value of the resource counter. + :vartype current_value: long + :ivar limit: The resource limit. + :vartype limit: long + :ivar next_reset_time: Next reset time for the resource counter. + :vartype next_reset_time: datetime + :ivar compute_mode: Compute mode used for this usage. Possible values + include: 'Shared', 'Dedicated', 'Dynamic' + :vartype compute_mode: str or ~azure.mgmt.web.models.ComputeModeOptions + :ivar site_mode: Site mode used for this usage. + :vartype site_mode: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'display_name': {'readonly': True}, + 'resource_name': {'readonly': True}, + 'unit': {'readonly': True}, + 'current_value': {'readonly': True}, + 'limit': {'readonly': True}, + 'next_reset_time': {'readonly': True}, + 'compute_mode': {'readonly': True}, + 'site_mode': {'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'}, + 'resource_name': {'key': 'properties.resourceName', 'type': 'str'}, + 'unit': {'key': 'properties.unit', 'type': 'str'}, + 'current_value': {'key': 'properties.currentValue', 'type': 'long'}, + 'limit': {'key': 'properties.limit', 'type': 'long'}, + 'next_reset_time': {'key': 'properties.nextResetTime', 'type': 'iso-8601'}, + 'compute_mode': {'key': 'properties.computeMode', 'type': 'ComputeModeOptions'}, + 'site_mode': {'key': 'properties.siteMode', 'type': 'str'}, + } + + def __init__(self, *, kind: str=None, **kwargs) -> None: + super(Usage, self).__init__(kind=kind, **kwargs) + self.display_name = None + self.resource_name = None + self.unit = None + self.current_value = None + self.limit = None + self.next_reset_time = None + self.compute_mode = None + self.site_mode = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/user.py b/azure-mgmt-web/azure/mgmt/web/models/user.py index bb48fef75395..548b51584a9e 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/user.py +++ b/azure-mgmt-web/azure/mgmt/web/models/user.py @@ -18,6 +18,8 @@ class User(ProxyOnlyResource): 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. @@ -26,9 +28,7 @@ class User(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :param user_name: Username - :type user_name: str - :param publishing_user_name: Username used for publishing. + :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 @@ -37,6 +37,8 @@ class User(ProxyOnlyResource): :param publishing_password_hash_salt: Password hash salt used for publishing. :type publishing_password_hash_salt: str + :param scm_uri: Url of SCM site. + :type scm_uri: str """ _validation = { @@ -51,17 +53,17 @@ class User(ProxyOnlyResource): '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'}, + 'scm_uri': {'key': 'properties.scmUri', 'type': 'str'}, } - def __init__(self, publishing_user_name, kind=None, user_name=None, publishing_password=None, publishing_password_hash=None, publishing_password_hash_salt=None): - super(User, self).__init__(kind=kind) - 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 + def __init__(self, **kwargs): + super(User, self).__init__(**kwargs) + self.publishing_user_name = kwargs.get('publishing_user_name', None) + self.publishing_password = kwargs.get('publishing_password', None) + self.publishing_password_hash = kwargs.get('publishing_password_hash', None) + self.publishing_password_hash_salt = kwargs.get('publishing_password_hash_salt', None) + self.scm_uri = kwargs.get('scm_uri', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/user_py3.py b/azure-mgmt-web/azure/mgmt/web/models/user_py3.py new file mode 100644 index 000000000000..6f57069f740b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/user_py3.py @@ -0,0 +1,69 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class User(ProxyOnlyResource): + """User crendentials 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 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 + :param scm_uri: Url of SCM site. + :type scm_uri: 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'}, + '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'}, + 'scm_uri': {'key': 'properties.scmUri', 'type': 'str'}, + } + + def __init__(self, *, publishing_user_name: str, kind: str=None, publishing_password: str=None, publishing_password_hash: str=None, publishing_password_hash_salt: str=None, scm_uri: str=None, **kwargs) -> None: + super(User, self).__init__(kind=kind, **kwargs) + 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 + self.scm_uri = scm_uri diff --git a/azure-mgmt-web/azure/mgmt/web/models/validate_request.py b/azure-mgmt-web/azure/mgmt/web/models/validate_request.py index d34b163fd640..6d1deca2bc5e 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/validate_request.py +++ b/azure-mgmt-web/azure/mgmt/web/models/validate_request.py @@ -15,12 +15,14 @@ class ValidateRequest(Model): """Resource validation request content. - :param name: Resource name to verify. + All required parameters must be populated in order to send to Azure. + + :param name: Required. Resource name to verify. :type name: str - :param type: Resource type used for verification. Possible values include: - 'ServerFarm', 'Site' + :param type: Required. Resource type used for verification. Possible + values include: 'ServerFarm', 'Site' :type type: str or ~azure.mgmt.web.models.ValidateResourceTypes - :param location: Expected location of the resource. + :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. @@ -38,6 +40,9 @@ class ValidateRequest(Model): :param hosting_environment: Name of App Service Environment where app or App Service plan should be created. :type hosting_environment: str + :param is_xenon: true if App Service plan is running as a + windows container + :type is_xenon: bool """ _validation = { @@ -57,16 +62,18 @@ class ValidateRequest(Model): 'is_spot': {'key': 'properties.isSpot', 'type': 'bool'}, 'capacity': {'key': 'properties.capacity', 'type': 'int'}, 'hosting_environment': {'key': 'properties.hostingEnvironment', 'type': 'str'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, } - def __init__(self, name, type, location, server_farm_id=None, sku_name=None, need_linux_workers=None, is_spot=None, capacity=None, hosting_environment=None): - super(ValidateRequest, self).__init__() - 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 + def __init__(self, **kwargs): + super(ValidateRequest, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) + self.location = kwargs.get('location', None) + self.server_farm_id = kwargs.get('server_farm_id', None) + self.sku_name = kwargs.get('sku_name', None) + self.need_linux_workers = kwargs.get('need_linux_workers', None) + self.is_spot = kwargs.get('is_spot', None) + self.capacity = kwargs.get('capacity', None) + self.hosting_environment = kwargs.get('hosting_environment', None) + self.is_xenon = kwargs.get('is_xenon', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/validate_request_py3.py b/azure-mgmt-web/azure/mgmt/web/models/validate_request_py3.py new file mode 100644 index 000000000000..848236c53bd2 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/validate_request_py3.py @@ -0,0 +1,79 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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: true if App Service plan is for + Linux workers; otherwise, false. + :type need_linux_workers: bool + :param is_spot: true if App Service plan is for Spot + instances; otherwise, false. + :type is_spot: bool + :param capacity: Target capacity of the App Service plan (number of VM's). + :type capacity: int + :param hosting_environment: Name of App Service Environment where app or + App Service plan should be created. + :type hosting_environment: str + :param is_xenon: true if App Service plan is running as a + windows container + :type is_xenon: bool + """ + + _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'}, + 'is_xenon': {'key': 'properties.isXenon', 'type': 'bool'}, + } + + 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, is_xenon: bool=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 + self.is_xenon = is_xenon diff --git a/azure-mgmt-web/azure/mgmt/web/models/validate_response.py b/azure-mgmt-web/azure/mgmt/web/models/validate_response.py index 72e3aebdcb3b..473d45b816ca 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/validate_response.py +++ b/azure-mgmt-web/azure/mgmt/web/models/validate_response.py @@ -26,7 +26,7 @@ class ValidateResponse(Model): 'error': {'key': 'error', 'type': 'ValidateResponseError'}, } - def __init__(self, status=None, error=None): - super(ValidateResponse, self).__init__() - self.status = status - self.error = error + def __init__(self, **kwargs): + super(ValidateResponse, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.error = kwargs.get('error', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/validate_response_error.py b/azure-mgmt-web/azure/mgmt/web/models/validate_response_error.py index 6186f924e892..3d265a67be07 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/validate_response_error.py +++ b/azure-mgmt-web/azure/mgmt/web/models/validate_response_error.py @@ -26,7 +26,7 @@ class ValidateResponseError(Model): 'message': {'key': 'message', 'type': 'str'}, } - def __init__(self, code=None, message=None): - super(ValidateResponseError, self).__init__() - self.code = code - self.message = message + def __init__(self, **kwargs): + super(ValidateResponseError, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/validate_response_error_py3.py b/azure-mgmt-web/azure/mgmt/web/models/validate_response_error_py3.py new file mode 100644 index 000000000000..8c52675c3356 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/validate_response_error_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/validate_response_py3.py b/azure-mgmt-web/azure/mgmt/web/models/validate_response_py3.py new file mode 100644 index 000000000000..7c21b066f7cc --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/validate_response_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/virtual_application.py b/azure-mgmt-web/azure/mgmt/web/models/virtual_application.py index 6394e8f4a0dd..7b5538859ff9 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/virtual_application.py +++ b/azure-mgmt-web/azure/mgmt/web/models/virtual_application.py @@ -33,9 +33,9 @@ class VirtualApplication(Model): 'virtual_directories': {'key': 'virtualDirectories', 'type': '[VirtualDirectory]'}, } - def __init__(self, virtual_path=None, physical_path=None, preload_enabled=None, virtual_directories=None): - super(VirtualApplication, self).__init__() - self.virtual_path = virtual_path - self.physical_path = physical_path - self.preload_enabled = preload_enabled - self.virtual_directories = virtual_directories + def __init__(self, **kwargs): + super(VirtualApplication, self).__init__(**kwargs) + self.virtual_path = kwargs.get('virtual_path', None) + self.physical_path = kwargs.get('physical_path', None) + self.preload_enabled = kwargs.get('preload_enabled', None) + self.virtual_directories = kwargs.get('virtual_directories', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/virtual_application_py3.py b/azure-mgmt-web/azure/mgmt/web/models/virtual_application_py3.py new file mode 100644 index 000000000000..9fb6d7595fb6 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/virtual_application_py3.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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: true if preloading is enabled; + otherwise, false. + :type preload_enabled: bool + :param virtual_directories: Virtual directories for virtual application. + :type virtual_directories: list[~azure.mgmt.web.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/virtual_directory.py b/azure-mgmt-web/azure/mgmt/web/models/virtual_directory.py index 8742aa28ba2d..e29d6e124afe 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/virtual_directory.py +++ b/azure-mgmt-web/azure/mgmt/web/models/virtual_directory.py @@ -26,7 +26,7 @@ class VirtualDirectory(Model): 'physical_path': {'key': 'physicalPath', 'type': 'str'}, } - def __init__(self, virtual_path=None, physical_path=None): - super(VirtualDirectory, self).__init__() - self.virtual_path = virtual_path - self.physical_path = physical_path + def __init__(self, **kwargs): + super(VirtualDirectory, self).__init__(**kwargs) + self.virtual_path = kwargs.get('virtual_path', None) + self.physical_path = kwargs.get('physical_path', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/virtual_directory_py3.py b/azure-mgmt-web/azure/mgmt/web/models/virtual_directory_py3.py new file mode 100644 index 000000000000..d24e93b8e0e4 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/virtual_directory_py3.py @@ -0,0 +1,32 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/virtual_ip_mapping.py b/azure-mgmt-web/azure/mgmt/web/models/virtual_ip_mapping.py index 6a8674d29b36..60c9a80fd16a 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/virtual_ip_mapping.py +++ b/azure-mgmt-web/azure/mgmt/web/models/virtual_ip_mapping.py @@ -32,9 +32,9 @@ class VirtualIPMapping(Model): 'in_use': {'key': 'inUse', 'type': 'bool'}, } - def __init__(self, virtual_ip=None, internal_http_port=None, internal_https_port=None, in_use=None): - super(VirtualIPMapping, self).__init__() - self.virtual_ip = virtual_ip - self.internal_http_port = internal_http_port - self.internal_https_port = internal_https_port - self.in_use = in_use + def __init__(self, **kwargs): + super(VirtualIPMapping, self).__init__(**kwargs) + self.virtual_ip = kwargs.get('virtual_ip', None) + self.internal_http_port = kwargs.get('internal_http_port', None) + self.internal_https_port = kwargs.get('internal_https_port', None) + self.in_use = kwargs.get('in_use', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/virtual_ip_mapping_py3.py b/azure-mgmt-web/azure/mgmt/web/models/virtual_ip_mapping_py3.py new file mode 100644 index 000000000000..5f77859f5068 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/virtual_ip_mapping_py3.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/virtual_network_profile.py b/azure-mgmt-web/azure/mgmt/web/models/virtual_network_profile.py index f4d62a216f3c..decb7f8737c8 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/virtual_network_profile.py +++ b/azure-mgmt-web/azure/mgmt/web/models/virtual_network_profile.py @@ -40,9 +40,9 @@ class VirtualNetworkProfile(Model): 'subnet': {'key': 'subnet', 'type': 'str'}, } - def __init__(self, id=None, subnet=None): - super(VirtualNetworkProfile, self).__init__() - self.id = id + def __init__(self, **kwargs): + super(VirtualNetworkProfile, self).__init__(**kwargs) + self.id = kwargs.get('id', None) self.name = None self.type = None - self.subnet = subnet + self.subnet = kwargs.get('subnet', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/virtual_network_profile_py3.py b/azure-mgmt-web/azure/mgmt/web/models/virtual_network_profile_py3.py new file mode 100644 index 000000000000..a45c1060294e --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/virtual_network_profile_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_gateway.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_gateway.py index 2f48fa8b30cf..104f9bab1405 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/vnet_gateway.py +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_gateway.py @@ -19,6 +19,8 @@ class VnetGateway(ProxyOnlyResource): 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. @@ -29,7 +31,8 @@ class VnetGateway(ProxyOnlyResource): :vartype type: str :param vnet_name: The Virtual Network name. :type vnet_name: str - :param vpn_package_uri: The URI where the VPN package can be downloaded. + :param vpn_package_uri: Required. The URI where the VPN package can be + downloaded. :type vpn_package_uri: str """ @@ -49,7 +52,7 @@ class VnetGateway(ProxyOnlyResource): 'vpn_package_uri': {'key': 'properties.vpnPackageUri', 'type': 'str'}, } - def __init__(self, vpn_package_uri, kind=None, vnet_name=None): - super(VnetGateway, self).__init__(kind=kind) - self.vnet_name = vnet_name - self.vpn_package_uri = vpn_package_uri + def __init__(self, **kwargs): + super(VnetGateway, self).__init__(**kwargs) + self.vnet_name = kwargs.get('vnet_name', None) + self.vpn_package_uri = kwargs.get('vpn_package_uri', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_gateway_py3.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_gateway_py3.py new file mode 100644 index 000000000000..60a9ab744fa9 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_gateway_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_info.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_info.py index 14915ba9a7fd..2a6527234b04 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/vnet_info.py +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_info.py @@ -66,11 +66,11 @@ class VnetInfo(ProxyOnlyResource): 'dns_servers': {'key': 'properties.dnsServers', 'type': 'str'}, } - def __init__(self, kind=None, vnet_resource_id=None, cert_blob=None, dns_servers=None): - super(VnetInfo, self).__init__(kind=kind) - self.vnet_resource_id = vnet_resource_id + def __init__(self, **kwargs): + super(VnetInfo, self).__init__(**kwargs) + self.vnet_resource_id = kwargs.get('vnet_resource_id', None) self.cert_thumbprint = None - self.cert_blob = cert_blob + self.cert_blob = kwargs.get('cert_blob', None) self.routes = None self.resync_required = None - self.dns_servers = dns_servers + self.dns_servers = kwargs.get('dns_servers', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_info_py3.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_info_py3.py new file mode 100644 index 000000000000..2aad16e2d9dc --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_info_py3.py @@ -0,0 +1,76 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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.models.VnetRoute] + :ivar resync_required: true if a resync is required; + otherwise, false. + :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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_parameters.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_parameters.py index 1226c3ef1b27..493b96c7daa1 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/vnet_parameters.py +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_parameters.py @@ -50,8 +50,8 @@ class VnetParameters(ProxyOnlyResource): 'vnet_subnet_name': {'key': 'properties.vnetSubnetName', 'type': 'str'}, } - def __init__(self, kind=None, vnet_resource_group=None, vnet_name=None, vnet_subnet_name=None): - super(VnetParameters, self).__init__(kind=kind) - self.vnet_resource_group = vnet_resource_group - self.vnet_name = vnet_name - self.vnet_subnet_name = vnet_subnet_name + def __init__(self, **kwargs): + super(VnetParameters, self).__init__(**kwargs) + self.vnet_resource_group = kwargs.get('vnet_resource_group', None) + self.vnet_name = kwargs.get('vnet_name', None) + self.vnet_subnet_name = kwargs.get('vnet_subnet_name', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_parameters_py3.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_parameters_py3.py new file mode 100644 index 000000000000..342af4a4e5a5 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_parameters_py3.py @@ -0,0 +1,57 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_route.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_route.py index ef511e8fb23b..8e0158098ceb 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/vnet_route.py +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_route.py @@ -27,9 +27,6 @@ class VnetRoute(ProxyOnlyResource): :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. @@ -58,15 +55,13 @@ class VnetRoute(ProxyOnlyResource): '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=None, vnet_route_name=None, start_address=None, end_address=None, route_type=None): - super(VnetRoute, self).__init__(kind=kind) - self.vnet_route_name = vnet_route_name - self.start_address = start_address - self.end_address = end_address - self.route_type = route_type + def __init__(self, **kwargs): + super(VnetRoute, self).__init__(**kwargs) + self.start_address = kwargs.get('start_address', None) + self.end_address = kwargs.get('end_address', None) + self.route_type = kwargs.get('route_type', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_route_py3.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_route_py3.py new file mode 100644 index 000000000000..1816fa5834c9 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_route_py3.py @@ -0,0 +1,67 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 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.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'}, + '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, start_address: str=None, end_address: str=None, route_type=None, **kwargs) -> None: + super(VnetRoute, self).__init__(kind=kind, **kwargs) + self.start_address = start_address + self.end_address = end_address + self.route_type = route_type diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_failure_details.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_failure_details.py index 4ac9adf0d201..f980264509d3 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_failure_details.py +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_failure_details.py @@ -47,7 +47,7 @@ class VnetValidationFailureDetails(ProxyOnlyResource): 'failed_tests': {'key': 'properties.failedTests', 'type': '[VnetValidationTestFailure]'}, } - def __init__(self, kind=None, failed=None, failed_tests=None): - super(VnetValidationFailureDetails, self).__init__(kind=kind) - self.failed = failed - self.failed_tests = failed_tests + def __init__(self, **kwargs): + super(VnetValidationFailureDetails, self).__init__(**kwargs) + self.failed = kwargs.get('failed', None) + self.failed_tests = kwargs.get('failed_tests', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_failure_details_py3.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_failure_details_py3.py new file mode 100644 index 000000000000..6d0fcd6b6ae8 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_failure_details_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_test_failure.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_test_failure.py index c0d453c1b53a..25326a68951a 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_test_failure.py +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_test_failure.py @@ -48,7 +48,7 @@ class VnetValidationTestFailure(ProxyOnlyResource): 'details': {'key': 'properties.details', 'type': 'str'}, } - def __init__(self, kind=None, test_name=None, details=None): - super(VnetValidationTestFailure, self).__init__(kind=kind) - self.test_name = test_name - self.details = details + def __init__(self, **kwargs): + super(VnetValidationTestFailure, self).__init__(**kwargs) + self.test_name = kwargs.get('test_name', None) + self.details = kwargs.get('details', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_test_failure_py3.py b/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_test_failure_py3.py new file mode 100644 index 000000000000..e8d1d9854a18 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/vnet_validation_test_failure_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/web_app_collection.py b/azure-mgmt-web/azure/mgmt/web/models/web_app_collection.py index 3c53315ca4e7..a74350b0d7a4 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/web_app_collection.py +++ b/azure-mgmt-web/azure/mgmt/web/models/web_app_collection.py @@ -18,7 +18,9 @@ class WebAppCollection(Model): Variables are only populated by the server, and will be ignored when sending a request. - :param value: Collection of resources. + All required parameters must be populated in order to send to Azure. + + :param value: Required. Collection of resources. :type value: list[~azure.mgmt.web.models.Site] :ivar next_link: Link to next page of resources. :vartype next_link: str @@ -34,7 +36,7 @@ class WebAppCollection(Model): 'next_link': {'key': 'nextLink', 'type': 'str'}, } - def __init__(self, value): - super(WebAppCollection, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(WebAppCollection, self).__init__(**kwargs) + self.value = kwargs.get('value', None) self.next_link = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/web_app_collection_py3.py b/azure-mgmt-web/azure/mgmt/web/models/web_app_collection_py3.py new file mode 100644 index 000000000000..855f2095a1a3 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/web_app_collection_py3.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/web_job.py b/azure-mgmt-web/azure/mgmt/web/models/web_job.py index 5a3caa921631..d162868885d3 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/web_job.py +++ b/azure-mgmt-web/azure/mgmt/web/models/web_job.py @@ -26,17 +26,15 @@ class WebJob(ProxyOnlyResource): :type kind: str :ivar type: Resource type. :vartype type: str - :ivar web_job_name: Job name. Used as job identifier in ARM resource URI. - :vartype web_job_name: str :param run_command: Run command. :type run_command: str :param url: Job URL. :type url: str :param extra_info_url: Extra Info URL. :type extra_info_url: str - :param job_type: Job type. Possible values include: 'Continuous', + :param web_job_type: Job type. Possible values include: 'Continuous', 'Triggered' - :type job_type: str or ~azure.mgmt.web.models.WebJobType + :type web_job_type: str or ~azure.mgmt.web.models.WebJobType :param error: Error information. :type error: str :param using_sdk: Using SDK? @@ -49,7 +47,6 @@ class WebJob(ProxyOnlyResource): 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, - 'web_job_name': {'readonly': True}, } _attribute_map = { @@ -57,23 +54,21 @@ class WebJob(ProxyOnlyResource): 'name': {'key': 'name', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, - 'web_job_name': {'key': 'properties.name', 'type': 'str'}, - 'run_command': {'key': 'properties.runCommand', 'type': 'str'}, + 'run_command': {'key': 'properties.run_command', 'type': 'str'}, 'url': {'key': 'properties.url', 'type': 'str'}, - 'extra_info_url': {'key': 'properties.extraInfoUrl', 'type': 'str'}, - 'job_type': {'key': 'properties.jobType', 'type': 'WebJobType'}, + 'extra_info_url': {'key': 'properties.extra_info_url', 'type': 'str'}, + 'web_job_type': {'key': 'properties.web_job_type', 'type': 'WebJobType'}, 'error': {'key': 'properties.error', 'type': 'str'}, - 'using_sdk': {'key': 'properties.usingSdk', 'type': 'bool'}, + 'using_sdk': {'key': 'properties.using_sdk', 'type': 'bool'}, 'settings': {'key': 'properties.settings', 'type': '{object}'}, } - def __init__(self, kind=None, run_command=None, url=None, extra_info_url=None, job_type=None, error=None, using_sdk=None, settings=None): - super(WebJob, self).__init__(kind=kind) - self.web_job_name = None - self.run_command = run_command - self.url = url - self.extra_info_url = extra_info_url - self.job_type = job_type - self.error = error - self.using_sdk = using_sdk - self.settings = settings + def __init__(self, **kwargs): + super(WebJob, self).__init__(**kwargs) + self.run_command = kwargs.get('run_command', None) + self.url = kwargs.get('url', None) + self.extra_info_url = kwargs.get('extra_info_url', None) + self.web_job_type = kwargs.get('web_job_type', None) + self.error = kwargs.get('error', None) + self.using_sdk = kwargs.get('using_sdk', None) + self.settings = kwargs.get('settings', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/web_job_py3.py b/azure-mgmt-web/azure/mgmt/web/models/web_job_py3.py new file mode 100644 index 000000000000..47bb10e340b6 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/web_job_py3.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class WebJob(ProxyOnlyResource): + """Web Job Information. + + 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 run_command: Run command. + :type run_command: str + :param url: Job URL. + :type url: str + :param extra_info_url: Extra Info URL. + :type extra_info_url: str + :param web_job_type: Job type. Possible values include: 'Continuous', + 'Triggered' + :type web_job_type: str or ~azure.mgmt.web.models.WebJobType + :param error: Error information. + :type error: str + :param using_sdk: Using SDK? + :type using_sdk: bool + :param settings: Job settings. + :type settings: dict[str, object] + """ + + _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'}, + 'run_command': {'key': 'properties.run_command', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + 'extra_info_url': {'key': 'properties.extra_info_url', 'type': 'str'}, + 'web_job_type': {'key': 'properties.web_job_type', 'type': 'WebJobType'}, + 'error': {'key': 'properties.error', 'type': 'str'}, + 'using_sdk': {'key': 'properties.using_sdk', 'type': 'bool'}, + 'settings': {'key': 'properties.settings', 'type': '{object}'}, + } + + def __init__(self, *, kind: str=None, run_command: str=None, url: str=None, extra_info_url: str=None, web_job_type=None, error: str=None, using_sdk: bool=None, settings=None, **kwargs) -> None: + super(WebJob, self).__init__(kind=kind, **kwargs) + self.run_command = run_command + self.url = url + self.extra_info_url = extra_info_url + self.web_job_type = web_job_type + self.error = error + self.using_sdk = using_sdk + self.settings = settings diff --git a/azure-mgmt-web/azure/mgmt/web/models/web_site_management_client_enums.py b/azure-mgmt-web/azure/mgmt/web/models/web_site_management_client_enums.py index 732822bd5a3f..ab38e3030187 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/web_site_management_client_enums.py +++ b/azure-mgmt-web/azure/mgmt/web/models/web_site_management_client_enums.py @@ -12,7 +12,7 @@ from enum import Enum -class KeyVaultSecretStatus(Enum): +class KeyVaultSecretStatus(str, Enum): initialized = "Initialized" waiting_on_certificate_order = "WaitingOnCertificateOrder" @@ -27,13 +27,13 @@ class KeyVaultSecretStatus(Enum): unknown = "Unknown" -class CertificateProductType(Enum): +class CertificateProductType(str, Enum): standard_domain_validated_ssl = "StandardDomainValidatedSsl" standard_domain_validated_wild_card_ssl = "StandardDomainValidatedWildCardSsl" -class ProvisioningState(Enum): +class ProvisioningState(str, Enum): succeeded = "Succeeded" failed = "Failed" @@ -42,7 +42,7 @@ class ProvisioningState(Enum): deleting = "Deleting" -class CertificateOrderStatus(Enum): +class CertificateOrderStatus(str, Enum): pendingissuance = "Pendingissuance" issued = "Issued" @@ -56,7 +56,7 @@ class CertificateOrderStatus(Enum): not_submitted = "NotSubmitted" -class CertificateOrderActionType(Enum): +class CertificateOrderActionType(str, Enum): certificate_issued = "CertificateIssued" certificate_order_canceled = "CertificateOrderCanceled" @@ -74,21 +74,33 @@ class CertificateOrderActionType(Enum): unknown = "Unknown" -class RouteType(Enum): +class RouteType(str, Enum): default = "DEFAULT" inherited = "INHERITED" static = "STATIC" -class AutoHealActionType(Enum): +class ManagedServiceIdentityType(str, Enum): + + system_assigned = "SystemAssigned" + user_assigned = "UserAssigned" + + +class IpFilterTag(str, Enum): + + default = "Default" + xff_proxy = "XffProxy" + + +class AutoHealActionType(str, Enum): recycle = "Recycle" log_event = "LogEvent" custom_action = "CustomAction" -class ConnectionStringType(Enum): +class ConnectionStringType(str, Enum): my_sql = "MySql" sql_server = "SQLServer" @@ -103,7 +115,20 @@ class ConnectionStringType(Enum): postgre_sql = "PostgreSQL" -class ScmType(Enum): +class AzureStorageType(str, Enum): + + azure_files = "AzureFiles" + azure_blob = "AzureBlob" + + +class AzureStorageState(str, Enum): + + ok = "Ok" + invalid_credentials = "InvalidCredentials" + invalid_share = "InvalidShare" + + +class ScmType(str, Enum): none = "None" dropbox = "Dropbox" @@ -120,13 +145,13 @@ class ScmType(Enum): vso = "VSO" -class ManagedPipelineMode(Enum): +class ManagedPipelineMode(str, Enum): integrated = "Integrated" classic = "Classic" -class SiteLoadBalancing(Enum): +class SiteLoadBalancing(str, Enum): weighted_round_robin = "WeightedRoundRobin" least_requests = "LeastRequests" @@ -135,47 +160,54 @@ class SiteLoadBalancing(Enum): request_hash = "RequestHash" -class SupportedTlsVersions(Enum): +class SupportedTlsVersions(str, Enum): one_full_stop_zero = "1.0" one_full_stop_one = "1.1" one_full_stop_two = "1.2" -class SslState(Enum): +class FtpsState(str, Enum): + + all_allowed = "AllAllowed" + ftps_only = "FtpsOnly" + disabled = "Disabled" + + +class SslState(str, Enum): disabled = "Disabled" sni_enabled = "SniEnabled" ip_based_enabled = "IpBasedEnabled" -class HostType(Enum): +class HostType(str, Enum): standard = "Standard" repository = "Repository" -class UsageState(Enum): +class UsageState(str, Enum): normal = "Normal" exceeded = "Exceeded" -class SiteAvailabilityState(Enum): +class SiteAvailabilityState(str, Enum): normal = "Normal" limited = "Limited" disaster_recovery_mode = "DisasterRecoveryMode" -class StatusOptions(Enum): +class StatusOptions(str, Enum): ready = "Ready" pending = "Pending" creating = "Creating" -class DomainStatus(Enum): +class DomainStatus(str, Enum): active = "Active" awaiting = "Awaiting" @@ -200,37 +232,37 @@ class DomainStatus(Enum): json_converter_failed = "JsonConverterFailed" -class AzureResourceType(Enum): +class AzureResourceType(str, Enum): website = "Website" traffic_manager = "TrafficManager" -class CustomHostNameDnsRecordType(Enum): +class CustomHostNameDnsRecordType(str, Enum): cname = "CName" a = "A" -class HostNameType(Enum): +class HostNameType(str, Enum): verified = "Verified" managed = "Managed" -class DnsType(Enum): +class DnsType(str, Enum): azure_dns = "AzureDns" default_domain_registrar_dns = "DefaultDomainRegistrarDns" -class DomainType(Enum): +class DomainType(str, Enum): regular = "Regular" soft_deleted = "SoftDeleted" -class HostingEnvironmentStatus(Enum): +class HostingEnvironmentStatus(str, Enum): preparing = "Preparing" ready = "Ready" @@ -238,38 +270,38 @@ class HostingEnvironmentStatus(Enum): deleting = "Deleting" -class InternalLoadBalancingMode(Enum): +class InternalLoadBalancingMode(str, Enum): none = "None" web = "Web" publishing = "Publishing" -class ComputeModeOptions(Enum): +class ComputeModeOptions(str, Enum): shared = "Shared" dedicated = "Dedicated" dynamic = "Dynamic" -class WorkerSizeOptions(Enum): +class WorkerSizeOptions(str, Enum): - default = "Default" small = "Small" medium = "Medium" large = "Large" d1 = "D1" d2 = "D2" d3 = "D3" + default = "Default" -class AccessControlEntryAction(Enum): +class AccessControlEntryAction(str, Enum): permit = "Permit" deny = "Deny" -class OperationStatus(Enum): +class OperationStatus(str, Enum): in_progress = "InProgress" failed = "Failed" @@ -278,7 +310,7 @@ class OperationStatus(Enum): created = "Created" -class IssueType(Enum): +class IssueType(str, Enum): service_incident = "ServiceIncident" app_deployment = "AppDeployment" @@ -290,21 +322,29 @@ class IssueType(Enum): other = "Other" -class SolutionType(Enum): +class SolutionType(str, Enum): quick_solution = "QuickSolution" deep_investigation = "DeepInvestigation" best_practices = "BestPractices" -class ResourceScopeType(Enum): +class RenderingType(str, Enum): + + no_graph = "NoGraph" + table = "Table" + time_series = "TimeSeries" + time_series_per_instance = "TimeSeriesPerInstance" + + +class ResourceScopeType(str, Enum): server_farm = "ServerFarm" subscription = "Subscription" web_site = "WebSite" -class NotificationLevel(Enum): +class NotificationLevel(str, Enum): critical = "Critical" warning = "Warning" @@ -312,7 +352,7 @@ class NotificationLevel(Enum): non_urgent_suggestion = "NonUrgentSuggestion" -class Channels(Enum): +class Channels(str, Enum): notification = "Notification" api = "Api" @@ -321,7 +361,7 @@ class Channels(Enum): all = "All" -class AppServicePlanRestrictions(Enum): +class AppServicePlanRestrictions(str, Enum): none = "None" free = "Free" @@ -331,13 +371,13 @@ class AppServicePlanRestrictions(Enum): premium = "Premium" -class InAvailabilityReasonType(Enum): +class InAvailabilityReasonType(str, Enum): invalid = "Invalid" already_exists = "AlreadyExists" -class CheckNameResourceTypes(Enum): +class CheckNameResourceTypes(str, Enum): site = "Site" slot = "Slot" @@ -349,13 +389,13 @@ class CheckNameResourceTypes(Enum): microsoft_webpublishing_users = "Microsoft.Web/publishingUsers" -class ValidateResourceTypes(Enum): +class ValidateResourceTypes(str, Enum): server_farm = "ServerFarm" site = "Site" -class LogLevel(Enum): +class LogLevel(str, Enum): off = "Off" verbose = "Verbose" @@ -364,7 +404,7 @@ class LogLevel(Enum): error = "Error" -class BackupItemStatus(Enum): +class BackupItemStatus(str, Enum): in_progress = "InProgress" failed = "Failed" @@ -378,7 +418,7 @@ class BackupItemStatus(Enum): deleted = "Deleted" -class DatabaseType(Enum): +class DatabaseType(str, Enum): sql_azure = "SqlAzure" my_sql = "MySql" @@ -386,21 +426,13 @@ class DatabaseType(Enum): postgre_sql = "PostgreSql" -class FrequencyUnit(Enum): +class FrequencyUnit(str, Enum): day = "Day" hour = "Hour" -class BackupRestoreOperationType(Enum): - - default = "Default" - clone = "Clone" - relocation = "Relocation" - snapshot = "Snapshot" - - -class ContinuousWebJobStatus(Enum): +class ContinuousWebJobStatus(str, Enum): initializing = "Initializing" starting = "Starting" @@ -409,34 +441,34 @@ class ContinuousWebJobStatus(Enum): stopped = "Stopped" -class WebJobType(Enum): +class WebJobType(str, Enum): continuous = "Continuous" triggered = "Triggered" -class PublishingProfileFormat(Enum): +class PublishingProfileFormat(str, Enum): file_zilla3 = "FileZilla3" web_deploy = "WebDeploy" ftp = "Ftp" -class DnsVerificationTestResult(Enum): +class DnsVerificationTestResult(str, Enum): passed = "Passed" failed = "Failed" skipped = "Skipped" -class MSDeployLogEntryType(Enum): +class MSDeployLogEntryType(str, Enum): message = "Message" warning = "Warning" error = "Error" -class MSDeployProvisioningState(Enum): +class MSDeployProvisioningState(str, Enum): accepted = "accepted" running = "running" @@ -445,26 +477,35 @@ class MSDeployProvisioningState(Enum): canceled = "canceled" -class MySqlMigrationType(Enum): +class MySqlMigrationType(str, Enum): local_to_remote = "LocalToRemote" remote_to_local = "RemoteToLocal" -class PublicCertificateLocation(Enum): +class PublicCertificateLocation(str, Enum): current_user_my = "CurrentUserMy" local_machine_my = "LocalMachineMy" unknown = "Unknown" -class UnauthenticatedClientAction(Enum): +class BackupRestoreOperationType(str, Enum): + + default = "Default" + clone = "Clone" + relocation = "Relocation" + snapshot = "Snapshot" + cloud_fs = "CloudFS" + + +class UnauthenticatedClientAction(str, Enum): redirect_to_login_page = "RedirectToLoginPage" allow_anonymous = "AllowAnonymous" -class BuiltInAuthenticationProvider(Enum): +class BuiltInAuthenticationProvider(str, Enum): azure_active_directory = "AzureActiveDirectory" facebook = "Facebook" @@ -473,33 +514,33 @@ class BuiltInAuthenticationProvider(Enum): twitter = "Twitter" -class CloneAbilityResult(Enum): +class CloneAbilityResult(str, Enum): cloneable = "Cloneable" partially_cloneable = "PartiallyCloneable" not_cloneable = "NotCloneable" -class SiteExtensionType(Enum): +class SiteExtensionType(str, Enum): gallery = "Gallery" web_root = "WebRoot" -class TriggeredWebJobStatus(Enum): +class TriggeredWebJobStatus(str, Enum): success = "Success" failed = "Failed" error = "Error" -class SkuName(Enum): +class SkuName(str, Enum): free = "Free" shared = "Shared" basic = "Basic" standard = "Standard" premium = "Premium" - premium_v2 = "PremiumV2" dynamic = "Dynamic" isolated = "Isolated" + premium_v2 = "PremiumV2" diff --git a/azure-mgmt-web/azure/mgmt/web/models/worker_pool.py b/azure-mgmt-web/azure/mgmt/web/models/worker_pool.py index c26d02899ed2..74b28651e46c 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/worker_pool.py +++ b/azure-mgmt-web/azure/mgmt/web/models/worker_pool.py @@ -44,10 +44,10 @@ class WorkerPool(Model): 'instance_names': {'key': 'instanceNames', 'type': '[str]'}, } - def __init__(self, worker_size_id=None, compute_mode=None, worker_size=None, worker_count=None): - super(WorkerPool, self).__init__() - self.worker_size_id = worker_size_id - self.compute_mode = compute_mode - self.worker_size = worker_size - self.worker_count = worker_count + def __init__(self, **kwargs): + super(WorkerPool, self).__init__(**kwargs) + self.worker_size_id = kwargs.get('worker_size_id', None) + self.compute_mode = kwargs.get('compute_mode', None) + self.worker_size = kwargs.get('worker_size', None) + self.worker_count = kwargs.get('worker_count', None) self.instance_names = None diff --git a/azure-mgmt-web/azure/mgmt/web/models/worker_pool_py3.py b/azure-mgmt-web/azure/mgmt/web/models/worker_pool_py3.py new file mode 100644 index 000000000000..d320043e70b9 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/worker_pool_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class 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.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 diff --git a/azure-mgmt-web/azure/mgmt/web/models/worker_pool_resource.py b/azure-mgmt-web/azure/mgmt/web/models/worker_pool_resource.py index 869353189d58..ca90bf8d794d 100644 --- a/azure-mgmt-web/azure/mgmt/web/models/worker_pool_resource.py +++ b/azure-mgmt-web/azure/mgmt/web/models/worker_pool_resource.py @@ -62,11 +62,11 @@ class WorkerPoolResource(ProxyOnlyResource): 'sku': {'key': 'sku', 'type': 'SkuDescription'}, } - def __init__(self, kind=None, worker_size_id=None, compute_mode=None, worker_size=None, worker_count=None, sku=None): - super(WorkerPoolResource, self).__init__(kind=kind) - self.worker_size_id = worker_size_id - self.compute_mode = compute_mode - self.worker_size = worker_size - self.worker_count = worker_count + def __init__(self, **kwargs): + super(WorkerPoolResource, self).__init__(**kwargs) + self.worker_size_id = kwargs.get('worker_size_id', None) + self.compute_mode = kwargs.get('compute_mode', None) + self.worker_size = kwargs.get('worker_size', None) + self.worker_count = kwargs.get('worker_count', None) self.instance_names = None - self.sku = sku + self.sku = kwargs.get('sku', None) diff --git a/azure-mgmt-web/azure/mgmt/web/models/worker_pool_resource_py3.py b/azure-mgmt-web/azure/mgmt/web/models/worker_pool_resource_py3.py new file mode 100644 index 000000000000..ab2c8333804b --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/models/worker_pool_resource_py3.py @@ -0,0 +1,72 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_only_resource_py3 import ProxyOnlyResource + + +class WorkerPoolResource(ProxyOnlyResource): + """Worker pool of an App Service Environment ARM resource. + + 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 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.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] + :param sku: + :type sku: ~azure.mgmt.web.models.SkuDescription + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'instance_names': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'kind': {'key': 'kind', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'worker_size_id': {'key': 'properties.workerSizeId', 'type': 'int'}, + 'compute_mode': {'key': 'properties.computeMode', 'type': 'ComputeModeOptions'}, + 'worker_size': {'key': 'properties.workerSize', 'type': 'str'}, + 'worker_count': {'key': 'properties.workerCount', 'type': 'int'}, + 'instance_names': {'key': 'properties.instanceNames', 'type': '[str]'}, + 'sku': {'key': 'sku', 'type': 'SkuDescription'}, + } + + def __init__(self, *, kind: str=None, worker_size_id: int=None, compute_mode=None, worker_size: str=None, worker_count: int=None, sku=None, **kwargs) -> None: + super(WorkerPoolResource, self).__init__(kind=kind, **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 + self.sku = sku diff --git a/azure-mgmt-web/azure/mgmt/web/operations/__init__.py b/azure-mgmt-web/azure/mgmt/web/operations/__init__.py index 93d9712f46bd..20bb873098b3 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/__init__.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/__init__.py @@ -22,6 +22,7 @@ from .web_apps_operations import WebAppsOperations from .app_service_environments_operations import AppServiceEnvironmentsOperations from .app_service_plans_operations import AppServicePlansOperations +from .resource_health_metadata_operations import ResourceHealthMetadataOperations __all__ = [ 'AppServiceCertificateOrdersOperations', @@ -37,4 +38,5 @@ 'WebAppsOperations', 'AppServiceEnvironmentsOperations', 'AppServicePlansOperations', + 'ResourceHealthMetadataOperations', ] diff --git a/azure-mgmt-web/azure/mgmt/web/operations/app_service_certificate_orders_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/app_service_certificate_orders_operations.py index e1cc7214d1cb..a9e97191b87f 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/app_service_certificate_orders_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/app_service_certificate_orders_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -25,7 +25,7 @@ class AppServiceCertificateOrdersOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2015-08-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2015-08-01" + self.api_version = "2018-02-01" self.config = config @@ -53,7 +53,8 @@ def list( :return: An iterator like instance of AppServiceCertificateOrder :rtype: ~azure.mgmt.web.models.AppServiceCertificateOrderPaged[~azure.mgmt.web.models.AppServiceCertificateOrder] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -75,7 +76,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,14 +85,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -150,9 +148,8 @@ def validate_purchase_information( body_content = self._serialize.body(app_service_certificate_order, 'AppServiceCertificateOrder') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -181,7 +178,8 @@ def list_by_resource_group( :return: An iterator like instance of AppServiceCertificateOrder :rtype: ~azure.mgmt.web.models.AppServiceCertificateOrderPaged[~azure.mgmt.web.models.AppServiceCertificateOrder] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -204,7 +202,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -213,14 +211,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -254,7 +249,8 @@ def get( :return: AppServiceCertificateOrder or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.AppServiceCertificateOrder or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get.metadata['url'] @@ -271,7 +267,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -280,13 +276,11 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -318,6 +312,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -330,14 +325,11 @@ def _create_or_update_initial( body_content = self._serialize.body(certificate_distinguished_name, 'AppServiceCertificateOrder') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -353,7 +345,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, certificate_order_name, certificate_distinguished_name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, certificate_order_name, certificate_distinguished_name, custom_headers=None, raw=False, polling=True, **operation_config): """Create or update a certificate purchase order. Create or update a certificate purchase order. @@ -368,14 +360,19 @@ def create_or_update( :type certificate_distinguished_name: ~azure.mgmt.web.models.AppServiceCertificateOrder :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - AppServiceCertificateOrder or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + AppServiceCertificateOrder or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.AppServiceCertificateOrder] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.AppServiceCertificateOrder]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, @@ -385,30 +382,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('AppServiceCertificateOrder', response) if raw: @@ -417,12 +392,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}'} def delete( @@ -460,7 +436,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -469,8 +444,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -505,7 +480,8 @@ def update( :return: AppServiceCertificateOrder or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.AppServiceCertificateOrder or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update.metadata['url'] @@ -522,6 +498,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -534,14 +511,11 @@ def update( body_content = self._serialize.body(certificate_distinguished_name, 'AppServiceCertificateOrderPatchResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -576,7 +550,8 @@ def list_certificates( :return: An iterator like instance of AppServiceCertificateResource :rtype: ~azure.mgmt.web.models.AppServiceCertificateResourcePaged[~azure.mgmt.web.models.AppServiceCertificateResource] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -600,7 +575,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -609,14 +584,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -653,7 +625,8 @@ def get_certificate( raw=true :rtype: ~azure.mgmt.web.models.AppServiceCertificateResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_certificate.metadata['url'] @@ -671,7 +644,7 @@ def get_certificate( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -680,13 +653,11 @@ def get_certificate( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -719,6 +690,7 @@ def _create_or_update_certificate_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -731,14 +703,11 @@ def _create_or_update_certificate_initial( body_content = self._serialize.body(key_vault_certificate, 'AppServiceCertificateResource') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -754,7 +723,7 @@ def _create_or_update_certificate_initial( return deserialized def create_or_update_certificate( - self, resource_group_name, certificate_order_name, name, key_vault_certificate, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, certificate_order_name, name, key_vault_certificate, custom_headers=None, raw=False, polling=True, **operation_config): """Creates or updates a certificate and associates with key vault secret. Creates or updates a certificate and associates with key vault secret. @@ -770,14 +739,19 @@ def create_or_update_certificate( :type key_vault_certificate: ~azure.mgmt.web.models.AppServiceCertificateResource :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - AppServiceCertificateResource or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + AppServiceCertificateResource or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.AppServiceCertificateResource] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.AppServiceCertificateResource]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_or_update_certificate_initial( resource_group_name=resource_group_name, @@ -788,30 +762,8 @@ def create_or_update_certificate( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('AppServiceCertificateResource', response) if raw: @@ -820,12 +772,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update_certificate.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/certificates/{name}'} def delete_certificate( @@ -866,7 +819,6 @@ def delete_certificate( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -875,8 +827,8 @@ def delete_certificate( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -913,7 +865,8 @@ def update_certificate( raw=true :rtype: ~azure.mgmt.web.models.AppServiceCertificateResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_certificate.metadata['url'] @@ -931,6 +884,7 @@ def update_certificate( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -943,14 +897,11 @@ def update_certificate( body_content = self._serialize.body(key_vault_certificate, 'AppServiceCertificatePatchResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1016,9 +967,8 @@ def reissue( body_content = self._serialize.body(reissue_certificate_order_request, 'ReissueCertificateOrderRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -1080,9 +1030,8 @@ def renew( body_content = self._serialize.body(renew_certificate_order_request, 'RenewCertificateOrderRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -1129,7 +1078,6 @@ def resend_email( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1138,8 +1086,8 @@ def resend_email( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -1202,9 +1150,8 @@ def resend_request_emails( body_content = self._serialize.body(name_identifier, 'NameIdentifier') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -1240,7 +1187,8 @@ def retrieve_site_seal( :return: SiteSeal or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteSeal or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ site_seal_request = models.SiteSealRequest(light_theme=light_theme, locale=locale) @@ -1259,6 +1207,7 @@ def retrieve_site_seal( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1271,14 +1220,11 @@ def retrieve_site_seal( body_content = self._serialize.body(site_seal_request, 'SiteSealRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1327,7 +1273,6 @@ def verify_domain_ownership( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1336,8 +1281,8 @@ def verify_domain_ownership( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -1368,7 +1313,8 @@ def retrieve_certificate_actions( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.CertificateOrderAction] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.retrieve_certificate_actions.metadata['url'] @@ -1385,7 +1331,7 @@ def retrieve_certificate_actions( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1394,13 +1340,11 @@ def retrieve_certificate_actions( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1433,7 +1377,8 @@ def retrieve_certificate_email_history( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.CertificateEmail] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.retrieve_certificate_email_history.metadata['url'] @@ -1450,7 +1395,7 @@ def retrieve_certificate_email_history( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1459,13 +1404,11 @@ def retrieve_certificate_email_history( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None diff --git a/azure-mgmt-web/azure/mgmt/web/operations/app_service_environments_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/app_service_environments_operations.py index f4c683d13e7b..5b1752bf432a 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/app_service_environments_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/app_service_environments_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -25,7 +25,7 @@ class AppServiceEnvironmentsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2016-09-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2016-09-01" + self.api_version = "2018-02-01" self.config = config @@ -53,7 +53,8 @@ def list( :return: An iterator like instance of AppServiceEnvironmentResource :rtype: ~azure.mgmt.web.models.AppServiceEnvironmentResourcePaged[~azure.mgmt.web.models.AppServiceEnvironmentResource] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -75,7 +76,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -84,14 +85,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -123,7 +121,8 @@ def list_by_resource_group( :return: An iterator like instance of AppServiceEnvironmentResource :rtype: ~azure.mgmt.web.models.AppServiceEnvironmentResourcePaged[~azure.mgmt.web.models.AppServiceEnvironmentResource] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -146,7 +145,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -155,14 +154,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -197,7 +193,8 @@ def get( raw=true :rtype: ~azure.mgmt.web.models.AppServiceEnvironmentResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get.metadata['url'] @@ -214,7 +211,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -223,13 +220,11 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -261,6 +256,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -273,9 +269,8 @@ def _create_or_update_initial( body_content = self._serialize.body(hosting_environment_envelope, 'AppServiceEnvironmentResource') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 400, 404, 409]: exp = CloudError(response) @@ -296,7 +291,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, name, hosting_environment_envelope, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, hosting_environment_envelope, custom_headers=None, raw=False, polling=True, **operation_config): """Create or update an App Service Environment. Create or update an App Service Environment. @@ -311,13 +306,17 @@ def create_or_update( :type hosting_environment_envelope: ~azure.mgmt.web.models.AppServiceEnvironmentResource :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - AppServiceEnvironmentResource or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + AppServiceEnvironmentResource or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.AppServiceEnvironmentResource] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.AppServiceEnvironmentResource]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_initial( @@ -328,30 +327,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 400, 404, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('AppServiceEnvironmentResource', response) if raw: @@ -360,12 +337,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}'} @@ -388,7 +366,6 @@ def _delete_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -397,8 +374,8 @@ def _delete_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 204, 400, 404, 409]: exp = CloudError(response) @@ -410,7 +387,7 @@ def _delete_initial( return client_raw_response def delete( - self, resource_group_name, name, force_delete=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, force_delete=None, custom_headers=None, raw=False, polling=True, **operation_config): """Delete an App Service Environment. Delete an App Service Environment. @@ -425,12 +402,14 @@ def delete( false. :type force_delete: bool :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._delete_initial( @@ -441,40 +420,19 @@ def delete( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [202, 204, 400, 404, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}'} def update( @@ -518,6 +476,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -530,9 +489,8 @@ def update( body_content = self._serialize.body(hosting_environment_envelope, 'AppServiceEnvironmentPatchResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 400, 404, 409]: exp = CloudError(response) @@ -574,7 +532,8 @@ def list_capacities( :return: An iterator like instance of StampCapacity :rtype: ~azure.mgmt.web.models.StampCapacityPaged[~azure.mgmt.web.models.StampCapacity] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -598,7 +557,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -607,14 +566,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -648,7 +604,8 @@ def list_vips( :return: AddressResponse or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.AddressResponse or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_vips.metadata['url'] @@ -665,7 +622,7 @@ def list_vips( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -674,13 +631,11 @@ def list_vips( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -694,6 +649,115 @@ def list_vips( return deserialized list_vips.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/capacities/virtualip'} + + def _change_vnet_initial( + self, resource_group_name, name, id=None, subnet=None, custom_headers=None, raw=False, **operation_config): + vnet_info = models.VirtualNetworkProfile(id=id, subnet=subnet) + + # Construct URL + url = self.change_vnet.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vnet_info, 'VirtualNetworkProfile') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('WebAppCollection', response) + if response.status_code == 202: + deserialized = self._deserialize('WebAppCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def change_vnet( + self, resource_group_name, name, id=None, subnet=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Move an App Service Environment to a different VNET. + + Move an App Service Environment to a different VNET. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the App Service Environment. + :type name: str + :param id: Resource id of the Virtual Network. + :type id: str + :param subnet: Subnet within the Virtual Network. + :type subnet: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns WebAppCollection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.WebAppCollection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.WebAppCollection]] + :raises: + :class:`DefaultErrorResponseException` + """ + raw_result = self._change_vnet_initial( + resource_group_name=resource_group_name, + name=name, + id=id, + subnet=subnet, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('WebAppCollection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + change_vnet.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/changeVirtualNetwork'} + def list_diagnostics( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): """Get diagnostic information for an App Service Environment. @@ -713,7 +777,8 @@ def list_diagnostics( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.HostingEnvironmentDiagnostics] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_diagnostics.metadata['url'] @@ -730,7 +795,7 @@ def list_diagnostics( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -739,13 +804,11 @@ def list_diagnostics( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -781,7 +844,8 @@ def get_diagnostics_item( raw=true :rtype: ~azure.mgmt.web.models.HostingEnvironmentDiagnostics or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_diagnostics_item.metadata['url'] @@ -799,7 +863,7 @@ def get_diagnostics_item( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -808,13 +872,11 @@ def get_diagnostics_item( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -847,7 +909,8 @@ def list_metric_definitions( :return: MetricDefinition or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.MetricDefinition or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_metric_definitions.metadata['url'] @@ -864,7 +927,7 @@ def list_metric_definitions( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -873,13 +936,11 @@ def list_metric_definitions( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -910,8 +971,8 @@ def list_metrics( :param filter: Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq - '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[Hour|Minute|Day]'. + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -921,7 +982,8 @@ def list_metrics( :return: An iterator like instance of ResourceMetric :rtype: ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -949,7 +1011,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -958,14 +1020,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -999,7 +1058,8 @@ def list_multi_role_pools( :return: An iterator like instance of WorkerPoolResource :rtype: ~azure.mgmt.web.models.WorkerPoolResourcePaged[~azure.mgmt.web.models.WorkerPoolResource] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1023,7 +1083,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1032,14 +1092,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1073,7 +1130,8 @@ def get_multi_role_pool( :return: WorkerPoolResource or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.WorkerPoolResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_multi_role_pool.metadata['url'] @@ -1090,7 +1148,7 @@ def get_multi_role_pool( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1099,13 +1157,11 @@ def get_multi_role_pool( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1137,6 +1193,7 @@ def _create_or_update_multi_role_pool_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1149,9 +1206,8 @@ def _create_or_update_multi_role_pool_initial( body_content = self._serialize.body(multi_role_pool_envelope, 'WorkerPoolResource') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 400, 404, 409]: exp = CloudError(response) @@ -1172,7 +1228,7 @@ def _create_or_update_multi_role_pool_initial( return deserialized def create_or_update_multi_role_pool( - self, resource_group_name, name, multi_role_pool_envelope, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, multi_role_pool_envelope, custom_headers=None, raw=False, polling=True, **operation_config): """Create or update a multi-role pool. Create or update a multi-role pool. @@ -1186,13 +1242,16 @@ def create_or_update_multi_role_pool( :type multi_role_pool_envelope: ~azure.mgmt.web.models.WorkerPoolResource :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - WorkerPoolResource or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns WorkerPoolResource or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.WorkerPoolResource] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.WorkerPoolResource]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_multi_role_pool_initial( @@ -1203,30 +1262,8 @@ def create_or_update_multi_role_pool( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 400, 404, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('WorkerPoolResource', response) if raw: @@ -1235,12 +1272,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update_multi_role_pool.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default'} def update_multi_role_pool( @@ -1282,6 +1320,7 @@ def update_multi_role_pool( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1294,9 +1333,8 @@ def update_multi_role_pool( body_content = self._serialize.body(multi_role_pool_envelope, 'WorkerPoolResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 400, 404, 409]: exp = CloudError(response) @@ -1340,7 +1378,8 @@ def list_multi_role_pool_instance_metric_definitions( :return: An iterator like instance of ResourceMetricDefinition :rtype: ~azure.mgmt.web.models.ResourceMetricDefinitionPaged[~azure.mgmt.web.models.ResourceMetricDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1365,7 +1404,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1374,14 +1413,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1422,7 +1458,8 @@ def list_multi_role_pool_instance_metrics( :return: An iterator like instance of ResourceMetric :rtype: ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1449,7 +1486,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1458,14 +1495,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1478,7 +1512,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized - list_multi_role_pool_instance_metrics.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/instances/{instance}metrics'} + list_multi_role_pool_instance_metrics.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/multiRolePools/default/instances/{instance}/metrics'} def list_multi_role_metric_definitions( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): @@ -1501,7 +1535,8 @@ def list_multi_role_metric_definitions( :return: An iterator like instance of ResourceMetricDefinition :rtype: ~azure.mgmt.web.models.ResourceMetricDefinitionPaged[~azure.mgmt.web.models.ResourceMetricDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1525,7 +1560,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1534,14 +1569,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1579,8 +1611,8 @@ def list_multi_role_metrics( :param filter: Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq - '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[Hour|Minute|Day]'. + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -1590,7 +1622,8 @@ def list_multi_role_metrics( :return: An iterator like instance of ResourceMetric :rtype: ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1624,7 +1657,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1633,14 +1666,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1674,7 +1704,8 @@ def list_multi_role_pool_skus( :return: An iterator like instance of SkuInfo :rtype: ~azure.mgmt.web.models.SkuInfoPaged[~azure.mgmt.web.models.SkuInfo] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1698,7 +1729,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1707,14 +1738,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1748,7 +1776,8 @@ def list_multi_role_usages( :return: An iterator like instance of Usage :rtype: ~azure.mgmt.web.models.UsagePaged[~azure.mgmt.web.models.Usage] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1772,7 +1801,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1781,14 +1810,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1822,7 +1848,8 @@ def list_operations( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.Operation] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_operations.metadata['url'] @@ -1839,7 +1866,7 @@ def list_operations( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1848,13 +1875,11 @@ def list_operations( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1903,7 +1928,6 @@ def reboot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1912,8 +1936,8 @@ def reboot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [202, 400, 404, 409]: exp = CloudError(response) @@ -1943,7 +1967,7 @@ def _resume_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1952,13 +1976,11 @@ def _resume_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1974,7 +1996,7 @@ def _resume_initial( return deserialized def resume( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, custom_headers=None, raw=False, polling=True, **operation_config): """Resume an App Service Environment. Resume an App Service Environment. @@ -1985,14 +2007,18 @@ def resume( :param name: Name of the App Service Environment. :type name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - WebAppCollection or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns WebAppCollection or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.WebAppCollection] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.WebAppCollection]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._resume_initial( resource_group_name=resource_group_name, @@ -2001,30 +2027,8 @@ def resume( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('WebAppCollection', response) if raw: @@ -2033,12 +2037,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) resume.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/resume'} def list_app_service_plans( @@ -2060,7 +2065,8 @@ def list_app_service_plans( :return: An iterator like instance of AppServicePlan :rtype: ~azure.mgmt.web.models.AppServicePlanPaged[~azure.mgmt.web.models.AppServicePlan] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -2084,7 +2090,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2093,14 +2099,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -2136,7 +2139,8 @@ def list_web_apps( overrides`. :return: An iterator like instance of Site :rtype: ~azure.mgmt.web.models.SitePaged[~azure.mgmt.web.models.Site] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -2162,7 +2166,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2171,14 +2175,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -2211,7 +2212,7 @@ def _suspend_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2220,13 +2221,11 @@ def _suspend_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2242,7 +2241,7 @@ def _suspend_initial( return deserialized def suspend( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, custom_headers=None, raw=False, polling=True, **operation_config): """Suspend an App Service Environment. Suspend an App Service Environment. @@ -2253,14 +2252,18 @@ def suspend( :param name: Name of the App Service Environment. :type name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - WebAppCollection or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns WebAppCollection or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.WebAppCollection] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.WebAppCollection]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._suspend_initial( resource_group_name=resource_group_name, @@ -2269,30 +2272,8 @@ def suspend( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('WebAppCollection', response) if raw: @@ -2301,12 +2282,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) suspend.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/suspend'} def list_usages( @@ -2323,8 +2305,8 @@ def list_usages( :param filter: Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq - '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[Hour|Minute|Day]'. + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -2334,7 +2316,8 @@ def list_usages( :return: An iterator like instance of CsmUsageQuota :rtype: ~azure.mgmt.web.models.CsmUsageQuotaPaged[~azure.mgmt.web.models.CsmUsageQuota] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -2360,7 +2343,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2369,14 +2352,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -2410,7 +2390,8 @@ def list_worker_pools( :return: An iterator like instance of WorkerPoolResource :rtype: ~azure.mgmt.web.models.WorkerPoolResourcePaged[~azure.mgmt.web.models.WorkerPoolResource] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -2434,7 +2415,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2443,14 +2424,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -2486,7 +2464,8 @@ def get_worker_pool( :return: WorkerPoolResource or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.WorkerPoolResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_worker_pool.metadata['url'] @@ -2504,7 +2483,7 @@ def get_worker_pool( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2513,13 +2492,11 @@ def get_worker_pool( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2552,6 +2529,7 @@ def _create_or_update_worker_pool_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2564,9 +2542,8 @@ def _create_or_update_worker_pool_initial( body_content = self._serialize.body(worker_pool_envelope, 'WorkerPoolResource') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 400, 404, 409]: exp = CloudError(response) @@ -2587,7 +2564,7 @@ def _create_or_update_worker_pool_initial( return deserialized def create_or_update_worker_pool( - self, resource_group_name, name, worker_pool_name, worker_pool_envelope, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, worker_pool_name, worker_pool_envelope, custom_headers=None, raw=False, polling=True, **operation_config): """Create or update a worker pool. Create or update a worker pool. @@ -2602,13 +2579,16 @@ def create_or_update_worker_pool( :param worker_pool_envelope: Properties of the worker pool. :type worker_pool_envelope: ~azure.mgmt.web.models.WorkerPoolResource :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - WorkerPoolResource or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns WorkerPoolResource or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.WorkerPoolResource] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.WorkerPoolResource]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_worker_pool_initial( @@ -2620,30 +2600,8 @@ def create_or_update_worker_pool( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 400, 404, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('WorkerPoolResource', response) if raw: @@ -2652,12 +2610,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update_worker_pool.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}'} def update_worker_pool( @@ -2701,6 +2660,7 @@ def update_worker_pool( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2713,9 +2673,8 @@ def update_worker_pool( body_content = self._serialize.body(worker_pool_envelope, 'WorkerPoolResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 400, 404, 409]: exp = CloudError(response) @@ -2761,7 +2720,8 @@ def list_worker_pool_instance_metric_definitions( :return: An iterator like instance of ResourceMetricDefinition :rtype: ~azure.mgmt.web.models.ResourceMetricDefinitionPaged[~azure.mgmt.web.models.ResourceMetricDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -2787,7 +2747,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2796,14 +2756,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -2841,8 +2798,8 @@ def list_worker_pool_instance_metrics( :param filter: Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq - '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[Hour|Minute|Day]'. + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -2852,7 +2809,8 @@ def list_worker_pool_instance_metrics( :return: An iterator like instance of ResourceMetric :rtype: ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -2882,7 +2840,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2891,14 +2849,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -2911,7 +2866,7 @@ def internal_paging(next_link=None, raw=False): return client_raw_response return deserialized - list_worker_pool_instance_metrics.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/instances/{instance}metrics'} + list_worker_pool_instance_metrics.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/workerPools/{workerPoolName}/instances/{instance}/metrics'} def list_web_worker_metric_definitions( self, resource_group_name, name, worker_pool_name, custom_headers=None, raw=False, **operation_config): @@ -2934,7 +2889,8 @@ def list_web_worker_metric_definitions( :return: An iterator like instance of ResourceMetricDefinition :rtype: ~azure.mgmt.web.models.ResourceMetricDefinitionPaged[~azure.mgmt.web.models.ResourceMetricDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -2959,7 +2915,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2968,14 +2924,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -3011,8 +2964,8 @@ def list_web_worker_metrics( :param filter: Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq - '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[Hour|Minute|Day]'. + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -3022,7 +2975,8 @@ def list_web_worker_metrics( :return: An iterator like instance of ResourceMetric :rtype: ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -3051,7 +3005,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3060,14 +3014,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -3103,7 +3054,8 @@ def list_worker_pool_skus( :return: An iterator like instance of SkuInfo :rtype: ~azure.mgmt.web.models.SkuInfoPaged[~azure.mgmt.web.models.SkuInfo] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -3128,7 +3080,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3137,14 +3089,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -3180,7 +3129,8 @@ def list_web_worker_usages( :return: An iterator like instance of Usage :rtype: ~azure.mgmt.web.models.UsagePaged[~azure.mgmt.web.models.Usage] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -3205,7 +3155,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3214,14 +3164,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response diff --git a/azure-mgmt-web/azure/mgmt/web/operations/app_service_plans_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/app_service_plans_operations.py index 49c88aa0afd4..e9089ba1c008 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/app_service_plans_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/app_service_plans_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -25,7 +25,7 @@ class AppServicePlansOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2016-09-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2016-09-01" + self.api_version = "2018-02-01" self.config = config @@ -58,7 +58,8 @@ def list( :return: An iterator like instance of AppServicePlan :rtype: ~azure.mgmt.web.models.AppServicePlanPaged[~azure.mgmt.web.models.AppServicePlan] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -82,7 +83,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -91,14 +92,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -130,7 +128,8 @@ def list_by_resource_group( :return: An iterator like instance of AppServicePlan :rtype: ~azure.mgmt.web.models.AppServicePlanPaged[~azure.mgmt.web.models.AppServicePlan] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -153,7 +152,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -162,14 +161,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -220,7 +216,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -229,8 +225,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -267,6 +263,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -279,14 +276,11 @@ def _create_or_update_initial( body_content = self._serialize.body(app_service_plan, 'AppServicePlan') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -302,7 +296,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, name, app_service_plan, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, app_service_plan, custom_headers=None, raw=False, polling=True, **operation_config): """Creates or updates an App Service Plan. Creates or updates an App Service Plan. @@ -315,14 +309,18 @@ def create_or_update( :param app_service_plan: Details of the App Service plan. :type app_service_plan: ~azure.mgmt.web.models.AppServicePlan :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - AppServicePlan or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AppServicePlan or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.AppServicePlan] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.AppServicePlan]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, @@ -332,30 +330,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('AppServicePlan', response) if raw: @@ -364,12 +340,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/serverfarms/{name}'} def delete( @@ -407,7 +384,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -416,8 +392,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -451,7 +427,8 @@ def update( :return: AppServicePlan or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.AppServicePlan or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update.metadata['url'] @@ -468,6 +445,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -480,14 +458,11 @@ def update( body_content = self._serialize.body(app_service_plan, 'AppServicePlanPatchResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -522,7 +497,8 @@ def list_capabilities( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.Capability] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_capabilities.metadata['url'] @@ -539,7 +515,7 @@ def list_capabilities( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -548,13 +524,11 @@ def list_capabilities( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -591,7 +565,8 @@ def get_hybrid_connection( :return: HybridConnection or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HybridConnection or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_hybrid_connection.metadata['url'] @@ -610,7 +585,7 @@ def get_hybrid_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -619,13 +594,11 @@ def get_hybrid_connection( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -680,7 +653,6 @@ def delete_hybrid_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -689,8 +661,8 @@ def delete_hybrid_connection( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -725,7 +697,8 @@ def list_hybrid_connection_keys( :return: HybridConnectionKey or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HybridConnectionKey or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_hybrid_connection_keys.metadata['url'] @@ -744,7 +717,7 @@ def list_hybrid_connection_keys( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -753,13 +726,11 @@ def list_hybrid_connection_keys( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -795,7 +766,8 @@ def list_web_apps_by_hybrid_connection( overrides`. :return: An iterator like instance of str :rtype: ~azure.mgmt.web.models.StrPaged[str] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -821,7 +793,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -830,14 +802,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -873,7 +842,8 @@ def get_hybrid_connection_plan_limit( :return: HybridConnectionLimits or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HybridConnectionLimits or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_hybrid_connection_plan_limit.metadata['url'] @@ -890,7 +860,7 @@ def get_hybrid_connection_plan_limit( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -899,13 +869,11 @@ def get_hybrid_connection_plan_limit( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -938,7 +906,8 @@ def list_hybrid_connections( :return: An iterator like instance of HybridConnection :rtype: ~azure.mgmt.web.models.HybridConnectionPaged[~azure.mgmt.web.models.HybridConnection] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -962,7 +931,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -971,14 +940,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1014,7 +980,8 @@ def list_metric_defintions( :return: An iterator like instance of ResourceMetricDefinition :rtype: ~azure.mgmt.web.models.ResourceMetricDefinitionPaged[~azure.mgmt.web.models.ResourceMetricDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1038,7 +1005,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1047,14 +1014,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1086,8 +1050,8 @@ def list_metrics( :param filter: Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(name.value eq 'Metric1' or name.value eq 'Metric2') and startTime eq - '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[Hour|Minute|Day]'. + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -1097,7 +1061,8 @@ def list_metrics( :return: An iterator like instance of ResourceMetric :rtype: ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1125,7 +1090,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1134,14 +1099,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1198,7 +1160,6 @@ def restart_web_apps( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1207,8 +1168,8 @@ def restart_web_apps( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -1248,7 +1209,8 @@ def list_web_apps( overrides`. :return: An iterator like instance of Site :rtype: ~azure.mgmt.web.models.SitePaged[~azure.mgmt.web.models.Site] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1278,7 +1240,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1287,14 +1249,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1327,7 +1286,8 @@ def get_server_farm_skus( overrides`. :return: object or ClientRawResponse if raw=true :rtype: object or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_server_farm_skus.metadata['url'] @@ -1344,7 +1304,7 @@ def get_server_farm_skus( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1353,13 +1313,11 @@ def get_server_farm_skus( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1396,7 +1354,8 @@ def list_usages( :return: An iterator like instance of CsmUsageQuota :rtype: ~azure.mgmt.web.models.CsmUsageQuotaPaged[~azure.mgmt.web.models.CsmUsageQuota] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1422,7 +1381,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1431,14 +1390,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1472,7 +1428,8 @@ def list_vnets( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.VnetInfo] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_vnets.metadata['url'] @@ -1489,7 +1446,7 @@ def list_vnets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1498,13 +1455,11 @@ def list_vnets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1557,7 +1512,7 @@ def get_vnet_from_server_farm( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1566,8 +1521,8 @@ def get_vnet_from_server_farm( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -1610,7 +1565,8 @@ def get_vnet_gateway( :return: VnetGateway or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetGateway or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_vnet_gateway.metadata['url'] @@ -1629,7 +1585,7 @@ def get_vnet_gateway( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1638,13 +1594,11 @@ def get_vnet_gateway( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1684,7 +1638,8 @@ def update_vnet_gateway( :return: VnetGateway or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetGateway or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_vnet_gateway.metadata['url'] @@ -1703,6 +1658,7 @@ def update_vnet_gateway( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1715,14 +1671,11 @@ def update_vnet_gateway( body_content = self._serialize.body(connection_envelope, 'VnetGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1759,7 +1712,8 @@ def list_routes_for_vnet( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.VnetRoute] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_routes_for_vnet.metadata['url'] @@ -1777,7 +1731,7 @@ def list_routes_for_vnet( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1786,13 +1740,11 @@ def list_routes_for_vnet( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1848,7 +1800,7 @@ def get_route_for_vnet( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1857,8 +1809,8 @@ def get_route_for_vnet( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -1921,6 +1873,7 @@ def create_or_update_vnet_route( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1933,9 +1886,8 @@ def create_or_update_vnet_route( body_content = self._serialize.body(route, 'VnetRoute') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 400, 404]: exp = CloudError(response) @@ -1995,7 +1947,6 @@ def delete_vnet_route( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2004,8 +1955,8 @@ def delete_vnet_route( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -2061,6 +2012,7 @@ def update_vnet_route( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2073,9 +2025,8 @@ def update_vnet_route( body_content = self._serialize.body(route, 'VnetRoute') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 400, 404]: exp = CloudError(response) @@ -2133,7 +2084,6 @@ def reboot_worker( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2142,8 +2092,8 @@ def reboot_worker( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) diff --git a/azure-mgmt-web/azure/mgmt/web/operations/certificate_registration_provider_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/certificate_registration_provider_operations.py index efea44179bf3..4e8e3626ecfb 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/certificate_registration_provider_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/certificate_registration_provider_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from .. import models @@ -23,7 +22,7 @@ class CertificateRegistrationProviderOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2015-08-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -33,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2015-08-01" + self.api_version = "2018-02-01" self.config = config @@ -53,7 +52,8 @@ def list_operations( :return: An iterator like instance of CsmOperationDescription :rtype: ~azure.mgmt.web.models.CsmOperationDescriptionPaged[~azure.mgmt.web.models.CsmOperationDescription] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,14 +80,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response diff --git a/azure-mgmt-web/azure/mgmt/web/operations/certificates_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/certificates_operations.py index c1dc2463d2dd..8784295f79b5 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/certificates_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/certificates_operations.py @@ -23,7 +23,7 @@ class CertificatesOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2016-03-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -33,7 +33,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2016-03-01" + self.api_version = "2018-02-01" self.config = config @@ -51,7 +51,8 @@ def list( :return: An iterator like instance of Certificate :rtype: ~azure.mgmt.web.models.CertificatePaged[~azure.mgmt.web.models.Certificate] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -73,7 +74,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,14 +83,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -121,7 +119,8 @@ def list_by_resource_group( :return: An iterator like instance of Certificate :rtype: ~azure.mgmt.web.models.CertificatePaged[~azure.mgmt.web.models.Certificate] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -144,7 +143,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -153,14 +152,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -194,7 +190,8 @@ def get( :return: Certificate or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Certificate or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get.metadata['url'] @@ -211,7 +208,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -220,13 +217,11 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -262,7 +257,8 @@ def create_or_update( :return: Certificate or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Certificate or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update.metadata['url'] @@ -279,6 +275,7 @@ def create_or_update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -291,14 +288,11 @@ def create_or_update( body_content = self._serialize.body(certificate_envelope, 'Certificate') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -347,7 +341,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -356,8 +349,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -392,7 +385,8 @@ def update( :return: Certificate or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Certificate or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update.metadata['url'] @@ -409,6 +403,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -421,14 +416,11 @@ def update( body_content = self._serialize.body(certificate_envelope, 'CertificatePatchResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None diff --git a/azure-mgmt-web/azure/mgmt/web/operations/deleted_web_apps_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/deleted_web_apps_operations.py index dadbb2822b87..f0dc46979898 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/deleted_web_apps_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/deleted_web_apps_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from .. import models @@ -23,7 +22,7 @@ class DeletedWebAppsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2016-03-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -33,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2016-03-01" + self.api_version = "2018-02-01" self.config = config @@ -51,7 +50,8 @@ def list( :return: An iterator like instance of DeletedSite :rtype: ~azure.mgmt.web.models.DeletedSitePaged[~azure.mgmt.web.models.DeletedSite] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -73,7 +73,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,14 +82,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response diff --git a/azure-mgmt-web/azure/mgmt/web/operations/diagnostics_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/diagnostics_operations.py index 1e912118452c..f7a952870293 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/diagnostics_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/diagnostics_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from .. import models @@ -23,7 +22,7 @@ class DiagnosticsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2016-03-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -33,10 +32,312 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2016-03-01" + self.api_version = "2018-02-01" self.config = config + def list_hosting_environment_detector_responses( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """List Hosting Environment Detector Responses. + + List Hosting Environment Detector Responses. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Site Name + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DetectorResponse + :rtype: + ~azure.mgmt.web.models.DetectorResponsePaged[~azure.mgmt.web.models.DetectorResponse] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_hosting_environment_detector_responses.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DetectorResponsePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DetectorResponsePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_hosting_environment_detector_responses.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/detectors'} + + def get_hosting_environment_detector_response( + self, resource_group_name, name, detector_name, start_time=None, end_time=None, time_grain=None, custom_headers=None, raw=False, **operation_config): + """Get Hosting Environment Detector Response. + + Get Hosting Environment Detector Response. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: App Service Environment Name + :type name: str + :param detector_name: Detector Resource Name + :type detector_name: str + :param start_time: Start Time + :type start_time: datetime + :param end_time: End Time + :type end_time: datetime + :param time_grain: Time Grain + :type time_grain: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DetectorResponse or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.DetectorResponse or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.get_hosting_environment_detector_response.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'detectorName': self._serialize.url("detector_name", detector_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if start_time is not None: + query_parameters['startTime'] = self._serialize.query("start_time", start_time, 'iso-8601') + if end_time is not None: + query_parameters['endTime'] = self._serialize.query("end_time", end_time, 'iso-8601') + if time_grain is not None: + query_parameters['timeGrain'] = self._serialize.query("time_grain", time_grain, 'str', pattern=r'PT[1-9][0-9]+[SMH]') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DetectorResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_hosting_environment_detector_response.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/hostingEnvironments/{name}/detectors/{detectorName}'} + + def list_site_detector_responses( + self, resource_group_name, site_name, custom_headers=None, raw=False, **operation_config): + """List Site Detector Responses. + + List Site Detector Responses. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param site_name: Site Name + :type site_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DetectorResponse + :rtype: + ~azure.mgmt.web.models.DetectorResponsePaged[~azure.mgmt.web.models.DetectorResponse] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_site_detector_responses.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'siteName': self._serialize.url("site_name", site_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DetectorResponsePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DetectorResponsePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_site_detector_responses.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/detectors'} + + def get_site_detector_response( + self, resource_group_name, site_name, detector_name, start_time=None, end_time=None, time_grain=None, custom_headers=None, raw=False, **operation_config): + """Get site detector response. + + Get site detector response. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param site_name: Site Name + :type site_name: str + :param detector_name: Detector Resource Name + :type detector_name: str + :param start_time: Start Time + :type start_time: datetime + :param end_time: End Time + :type end_time: datetime + :param time_grain: Time Grain + :type time_grain: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DetectorResponse or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.DetectorResponse or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.get_site_detector_response.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'siteName': self._serialize.url("site_name", site_name, 'str'), + 'detectorName': self._serialize.url("detector_name", detector_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if start_time is not None: + query_parameters['startTime'] = self._serialize.query("start_time", start_time, 'iso-8601') + if end_time is not None: + query_parameters['endTime'] = self._serialize.query("end_time", end_time, 'iso-8601') + if time_grain is not None: + query_parameters['timeGrain'] = self._serialize.query("time_grain", time_grain, 'str', pattern=r'PT[1-9][0-9]+[SMH]') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DetectorResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_site_detector_response.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/detectors/{detectorName}'} + def list_site_diagnostic_categories( self, resource_group_name, site_name, custom_headers=None, raw=False, **operation_config): """Get Diagnostics Categories. @@ -56,7 +357,8 @@ def list_site_diagnostic_categories( :return: An iterator like instance of DiagnosticCategory :rtype: ~azure.mgmt.web.models.DiagnosticCategoryPaged[~azure.mgmt.web.models.DiagnosticCategory] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -80,7 +382,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -89,14 +391,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -132,7 +431,8 @@ def get_site_diagnostic_category( :return: DiagnosticCategory or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DiagnosticCategory or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_site_diagnostic_category.metadata['url'] @@ -150,7 +450,7 @@ def get_site_diagnostic_category( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -159,13 +459,11 @@ def get_site_diagnostic_category( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -200,7 +498,8 @@ def list_site_analyses( :return: An iterator like instance of AnalysisDefinition :rtype: ~azure.mgmt.web.models.AnalysisDefinitionPaged[~azure.mgmt.web.models.AnalysisDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -225,7 +524,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -234,14 +533,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -279,7 +575,8 @@ def get_site_analysis( :return: DiagnosticAnalysis or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DiagnosticAnalysis or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_site_analysis.metadata['url'] @@ -298,7 +595,7 @@ def get_site_analysis( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -307,13 +604,11 @@ def get_site_analysis( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -356,7 +651,8 @@ def execute_site_analysis( :return: DiagnosticAnalysis or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DiagnosticAnalysis or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.execute_site_analysis.metadata['url'] @@ -381,7 +677,7 @@ def execute_site_analysis( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -390,13 +686,11 @@ def execute_site_analysis( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -431,7 +725,8 @@ def list_site_detectors( :return: An iterator like instance of DetectorDefinition :rtype: ~azure.mgmt.web.models.DetectorDefinitionPaged[~azure.mgmt.web.models.DetectorDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -456,7 +751,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -465,14 +760,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -510,7 +802,8 @@ def get_site_detector( :return: An iterator like instance of DetectorDefinition :rtype: ~azure.mgmt.web.models.DetectorDefinitionPaged[~azure.mgmt.web.models.DetectorDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -536,7 +829,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -545,14 +838,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -596,7 +886,8 @@ def execute_site_detector( :return: DiagnosticDetectorResponse or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DiagnosticDetectorResponse or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.execute_site_detector.metadata['url'] @@ -621,7 +912,7 @@ def execute_site_detector( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -630,13 +921,11 @@ def execute_site_detector( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -650,6 +939,163 @@ def execute_site_detector( return deserialized execute_site_detector.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/diagnostics/{diagnosticCategory}/detectors/{detectorName}/execute'} + def list_site_detector_responses_slot( + self, resource_group_name, site_name, slot, custom_headers=None, raw=False, **operation_config): + """List Site Detector Responses. + + List Site Detector Responses. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param site_name: Site Name + :type site_name: str + :param slot: Slot Name + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DetectorResponse + :rtype: + ~azure.mgmt.web.models.DetectorResponsePaged[~azure.mgmt.web.models.DetectorResponse] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_site_detector_responses_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'siteName': self._serialize.url("site_name", site_name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.DetectorResponsePaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.DetectorResponsePaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_site_detector_responses_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/detectors'} + + def get_site_detector_response_slot( + self, resource_group_name, site_name, detector_name, slot, start_time=None, end_time=None, time_grain=None, custom_headers=None, raw=False, **operation_config): + """Get site detector response. + + Get site detector response. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param site_name: Site Name + :type site_name: str + :param detector_name: Detector Resource Name + :type detector_name: str + :param slot: Slot Name + :type slot: str + :param start_time: Start Time + :type start_time: datetime + :param end_time: End Time + :type end_time: datetime + :param time_grain: Time Grain + :type time_grain: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DetectorResponse or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.DetectorResponse or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.get_site_detector_response_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'siteName': self._serialize.url("site_name", site_name, 'str'), + 'detectorName': self._serialize.url("detector_name", detector_name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if start_time is not None: + query_parameters['startTime'] = self._serialize.query("start_time", start_time, 'iso-8601') + if end_time is not None: + query_parameters['endTime'] = self._serialize.query("end_time", end_time, 'iso-8601') + if time_grain is not None: + query_parameters['timeGrain'] = self._serialize.query("time_grain", time_grain, 'str', pattern=r'PT[1-9][0-9]+[SMH]') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DetectorResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_site_detector_response_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slot}/detectors/{detectorName}'} + def list_site_diagnostic_categories_slot( self, resource_group_name, site_name, slot, custom_headers=None, raw=False, **operation_config): """Get Diagnostics Categories. @@ -671,7 +1117,8 @@ def list_site_diagnostic_categories_slot( :return: An iterator like instance of DiagnosticCategory :rtype: ~azure.mgmt.web.models.DiagnosticCategoryPaged[~azure.mgmt.web.models.DiagnosticCategory] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -696,7 +1143,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -705,14 +1152,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -750,7 +1194,8 @@ def get_site_diagnostic_category_slot( :return: DiagnosticCategory or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DiagnosticCategory or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_site_diagnostic_category_slot.metadata['url'] @@ -769,7 +1214,7 @@ def get_site_diagnostic_category_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -778,13 +1223,11 @@ def get_site_diagnostic_category_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -821,7 +1264,8 @@ def list_site_analyses_slot( :return: An iterator like instance of AnalysisDefinition :rtype: ~azure.mgmt.web.models.AnalysisDefinitionPaged[~azure.mgmt.web.models.AnalysisDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -847,7 +1291,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -856,14 +1300,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -903,7 +1344,8 @@ def get_site_analysis_slot( :return: DiagnosticAnalysis or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DiagnosticAnalysis or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_site_analysis_slot.metadata['url'] @@ -923,7 +1365,7 @@ def get_site_analysis_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -932,13 +1374,11 @@ def get_site_analysis_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -983,7 +1423,8 @@ def execute_site_analysis_slot( :return: DiagnosticAnalysis or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DiagnosticAnalysis or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.execute_site_analysis_slot.metadata['url'] @@ -1009,7 +1450,7 @@ def execute_site_analysis_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1018,13 +1459,11 @@ def execute_site_analysis_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1061,7 +1500,8 @@ def list_site_detectors_slot( :return: An iterator like instance of DetectorDefinition :rtype: ~azure.mgmt.web.models.DetectorDefinitionPaged[~azure.mgmt.web.models.DetectorDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1087,7 +1527,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1096,14 +1536,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1143,7 +1580,8 @@ def get_site_detector_slot( :return: An iterator like instance of DetectorDefinition :rtype: ~azure.mgmt.web.models.DetectorDefinitionPaged[~azure.mgmt.web.models.DetectorDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1170,7 +1608,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1179,14 +1617,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1232,7 +1667,8 @@ def execute_site_detector_slot( :return: DiagnosticDetectorResponse or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DiagnosticDetectorResponse or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.execute_site_detector_slot.metadata['url'] @@ -1258,7 +1694,7 @@ def execute_site_detector_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1267,13 +1703,11 @@ def execute_site_detector_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None diff --git a/azure-mgmt-web/azure/mgmt/web/operations/domain_registration_provider_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/domain_registration_provider_operations.py index 03e425c85bb8..c8e9a1ae3147 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/domain_registration_provider_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/domain_registration_provider_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from .. import models @@ -23,7 +22,7 @@ class DomainRegistrationProviderOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2015-04-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -33,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2015-04-01" + self.api_version = "2018-02-01" self.config = config @@ -53,7 +52,8 @@ def list_operations( :return: An iterator like instance of CsmOperationDescription :rtype: ~azure.mgmt.web.models.CsmOperationDescriptionPaged[~azure.mgmt.web.models.CsmOperationDescription] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -71,7 +71,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -80,14 +80,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response diff --git a/azure-mgmt-web/azure/mgmt/web/operations/domains_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/domains_operations.py index 2f3b2b1c3ae3..cc1a1664e313 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/domains_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/domains_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -25,7 +25,7 @@ class DomainsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2015-04-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2015-04-01" + self.api_version = "2018-02-01" self.config = config @@ -56,7 +56,8 @@ def check_availability( raw=true :rtype: ~azure.mgmt.web.models.DomainAvailablilityCheckResult or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ identifier = models.NameIdentifier(name=name) @@ -73,6 +74,7 @@ def check_availability( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -85,14 +87,11 @@ def check_availability( body_content = self._serialize.body(identifier, 'NameIdentifier') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -120,7 +119,8 @@ def list( :return: An iterator like instance of Domain :rtype: ~azure.mgmt.web.models.DomainPaged[~azure.mgmt.web.models.Domain] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -142,7 +142,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -151,14 +151,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -188,7 +185,8 @@ def get_control_center_sso_request( raw=true :rtype: ~azure.mgmt.web.models.DomainControlCenterSsoRequest or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_control_center_sso_request.metadata['url'] @@ -203,7 +201,7 @@ def get_control_center_sso_request( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -212,13 +210,11 @@ def get_control_center_sso_request( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -251,7 +247,8 @@ def list_recommendations( :return: An iterator like instance of NameIdentifier :rtype: ~azure.mgmt.web.models.NameIdentifierPaged[~azure.mgmt.web.models.NameIdentifier] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ parameters = models.DomainRecommendationSearchParameters(keywords=keywords, max_domain_recommendations=max_domain_recommendations) @@ -275,6 +272,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -287,14 +285,11 @@ def internal_paging(next_link=None, raw=False): body_content = self._serialize.body(parameters, 'DomainRecommendationSearchParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -326,7 +321,8 @@ def list_by_resource_group( :return: An iterator like instance of Domain :rtype: ~azure.mgmt.web.models.DomainPaged[~azure.mgmt.web.models.Domain] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -349,7 +345,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -358,14 +354,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -399,7 +392,8 @@ def get( :return: Domain or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Domain or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get.metadata['url'] @@ -416,7 +410,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -425,13 +419,11 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -463,6 +455,7 @@ def _create_or_update_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -475,14 +468,11 @@ def _create_or_update_initial( body_content = self._serialize.body(domain, 'Domain') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -498,7 +488,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, domain_name, domain, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, domain_name, domain, custom_headers=None, raw=False, polling=True, **operation_config): """Creates or updates a domain. Creates or updates a domain. @@ -511,14 +501,18 @@ def create_or_update( :param domain: Domain registration information. :type domain: ~azure.mgmt.web.models.Domain :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Domain or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Domain or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.Domain] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.Domain]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, @@ -528,30 +522,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Domain', response) if raw: @@ -560,12 +532,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}'} def delete( @@ -609,7 +582,6 @@ def delete( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -618,8 +590,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -652,7 +624,8 @@ def update( :return: Domain or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Domain or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update.metadata['url'] @@ -669,6 +642,7 @@ def update( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -681,14 +655,11 @@ def update( body_content = self._serialize.body(domain, 'DomainPatchResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -723,7 +694,8 @@ def list_ownership_identifiers( :return: An iterator like instance of DomainOwnershipIdentifier :rtype: ~azure.mgmt.web.models.DomainOwnershipIdentifierPaged[~azure.mgmt.web.models.DomainOwnershipIdentifier] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -747,7 +719,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -756,14 +728,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -799,7 +768,8 @@ def get_ownership_identifier( :return: DomainOwnershipIdentifier or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DomainOwnershipIdentifier or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_ownership_identifier.metadata['url'] @@ -817,7 +787,7 @@ def get_ownership_identifier( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -826,13 +796,11 @@ def get_ownership_identifier( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -873,7 +841,8 @@ def create_or_update_ownership_identifier( :return: DomainOwnershipIdentifier or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DomainOwnershipIdentifier or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ domain_ownership_identifier = models.DomainOwnershipIdentifier(kind=kind, ownership_id=ownership_id) @@ -893,6 +862,7 @@ def create_or_update_ownership_identifier( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -905,14 +875,11 @@ def create_or_update_ownership_identifier( body_content = self._serialize.body(domain_ownership_identifier, 'DomainOwnershipIdentifier') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -964,7 +931,6 @@ def delete_ownership_identifier( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -973,8 +939,8 @@ def delete_ownership_identifier( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -1013,7 +979,8 @@ def update_ownership_identifier( :return: DomainOwnershipIdentifier or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DomainOwnershipIdentifier or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ domain_ownership_identifier = models.DomainOwnershipIdentifier(kind=kind, ownership_id=ownership_id) @@ -1033,6 +1000,7 @@ def update_ownership_identifier( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1045,14 +1013,11 @@ def update_ownership_identifier( body_content = self._serialize.body(domain_ownership_identifier, 'DomainOwnershipIdentifier') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1084,8 +1049,7 @@ def renew( overrides`. :return: None or ClientRawResponse if raw=true :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: - :class:`ErrorResponseException` + :raises: :class:`CloudError` """ # Construct URL url = self.renew.metadata['url'] @@ -1102,7 +1066,6 @@ def renew( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1111,11 +1074,13 @@ def renew( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 202, 204]: - raise models.ErrorResponseException(self._deserialize, response) + if response.status_code not in [200, 202, 204, 400, 500]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp if raw: client_raw_response = ClientRawResponse(None, response) diff --git a/azure-mgmt-web/azure/mgmt/web/operations/provider_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/provider_operations.py index 3e88a13473a6..19430e11b82f 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/provider_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/provider_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from .. import models @@ -23,7 +22,7 @@ class ProviderOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2016-03-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -33,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2016-03-01" + self.api_version = "2018-02-01" self.config = config @@ -53,7 +52,8 @@ def get_available_stacks( :return: An iterator like instance of ApplicationStack :rtype: ~azure.mgmt.web.models.ApplicationStackPaged[~azure.mgmt.web.models.ApplicationStack] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -73,7 +73,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,14 +82,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -120,7 +117,8 @@ def list_operations( :return: An iterator like instance of CsmOperationDescription :rtype: ~azure.mgmt.web.models.CsmOperationDescriptionPaged[~azure.mgmt.web.models.CsmOperationDescription] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -138,7 +136,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -147,14 +145,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -185,7 +180,8 @@ def get_available_stacks_on_prem( :return: An iterator like instance of ApplicationStack :rtype: ~azure.mgmt.web.models.ApplicationStackPaged[~azure.mgmt.web.models.ApplicationStack] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -209,7 +205,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -218,14 +214,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response diff --git a/azure-mgmt-web/azure/mgmt/web/operations/recommendations_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/recommendations_operations.py index 737ad36f893a..b9a3f4e147d2 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/recommendations_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/recommendations_operations.py @@ -23,7 +23,7 @@ class RecommendationsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2016-03-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -33,7 +33,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2016-03-01" + self.api_version = "2018-02-01" self.config = config @@ -48,61 +48,68 @@ def list( returns all recommendations. :type featured: bool :param filter: Filter is specified by using OData syntax. Example: - $filter=channels eq 'Api' or channel eq 'Notification' and startTime - eq '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[PT1H|PT1M|P1D] + $filter=channel eq 'Api' or channel eq 'Notification' and startTime eq + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[PT1H|PT1M|P1D] :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: list or ClientRawResponse if raw=true - :rtype: list[~azure.mgmt.web.models.Recommendation] or - ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: An iterator like instance of Recommendation + :rtype: + ~azure.mgmt.web.models.RecommendationPaged[~azure.mgmt.web.models.Recommendation] + :raises: + :class:`DefaultErrorResponseException` """ - # Construct URL - url = self.list.metadata['url'] - path_format_arguments = { - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if featured is not None: - query_parameters['featured'] = self._serialize.query("featured", featured, 'bool') - if filter is not None: - query_parameters['$filter'] = self._serialize.query("filter", filter, 'str', skip_quote=True) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('[Recommendation]', response) + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if featured is not None: + query_parameters['featured'] = self._serialize.query("featured", featured, 'bool') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str', skip_quote=True) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.RecommendationPaged(internal_paging, self._deserialize.dependencies) if raw: - client_raw_response = ClientRawResponse(deserialized, response) + header_dict = {} + client_raw_response = models.RecommendationPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized @@ -136,7 +143,6 @@ def reset_all_filters( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -145,8 +151,8 @@ def reset_all_filters( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -158,52 +164,39 @@ def reset_all_filters( return client_raw_response reset_all_filters.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Web/recommendations/reset'} - def list_history_for_web_app( - self, resource_group_name, site_name, filter=None, custom_headers=None, raw=False, **operation_config): - """Get past recommendations for an app, optionally specified by the time - range. + def disable_recommendation_for_subscription( + self, name, custom_headers=None, raw=False, **operation_config): + """Disables the specified rule so it will not apply to a subscription in + the future. - Get past recommendations for an app, optionally specified by the time - range. + Disables the specified rule so it will not apply to a subscription in + the future. - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param site_name: Name of the app. - :type site_name: str - :param filter: Filter is specified by using OData syntax. Example: - $filter=channels eq 'Api' or channel eq 'Notification' and startTime - eq '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[PT1H|PT1M|P1D] - :type filter: str + :param name: Rule name + :type name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: list or ClientRawResponse if raw=true - :rtype: list[~azure.mgmt.web.models.Recommendation] or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.list_history_for_web_app.metadata['url'] + url = self.disable_recommendation_for_subscription.metadata['url'] path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'siteName': self._serialize.url("site_name", site_name, 'str'), + 'name': self._serialize.url("name", name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) # Construct parameters query_parameters = {} - if filter is not None: - query_parameters['$filter'] = self._serialize.query("filter", filter, 'str', skip_quote=True) query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -212,21 +205,101 @@ def list_history_for_web_app( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + disable_recommendation_for_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Web/recommendations/{name}/disable'} - if response.status_code == 200: - deserialized = self._deserialize('[Recommendation]', response) + def list_history_for_web_app( + self, resource_group_name, site_name, expired_only=None, filter=None, custom_headers=None, raw=False, **operation_config): + """Get past recommendations for an app, optionally specified by the time + range. + + Get past recommendations for an app, optionally specified by the time + range. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param site_name: Name of the app. + :type site_name: str + :param expired_only: Specify false to return all + recommendations. The default is true, which returns only + expired recommendations. + :type expired_only: bool + :param filter: Filter is specified by using OData syntax. Example: + $filter=channel eq 'Api' or channel eq 'Notification' and startTime eq + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[PT1H|PT1M|P1D] + :type filter: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Recommendation + :rtype: + ~azure.mgmt.web.models.RecommendationPaged[~azure.mgmt.web.models.Recommendation] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_history_for_web_app.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'siteName': self._serialize.url("site_name", site_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if expired_only is not None: + query_parameters['expiredOnly'] = self._serialize.query("expired_only", expired_only, 'bool') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str', skip_quote=True) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.RecommendationPaged(internal_paging, self._deserialize.dependencies) if raw: - client_raw_response = ClientRawResponse(deserialized, response) + header_dict = {} + client_raw_response = models.RecommendationPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized @@ -248,7 +321,7 @@ def list_recommended_rules_for_web_app( returns all recommendations. :type featured: bool :param filter: Return only channels specified in the filter. Filter is - specified by using OData syntax. Example: $filter=channels eq 'Api' or + specified by using OData syntax. Example: $filter=channel eq 'Api' or channel eq 'Notification' :type filter: str :param dict custom_headers: headers that will be added to the request @@ -256,54 +329,61 @@ def list_recommended_rules_for_web_app( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: list or ClientRawResponse if raw=true - :rtype: list[~azure.mgmt.web.models.Recommendation] or - ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: An iterator like instance of Recommendation + :rtype: + ~azure.mgmt.web.models.RecommendationPaged[~azure.mgmt.web.models.Recommendation] + :raises: + :class:`DefaultErrorResponseException` """ - # Construct URL - url = self.list_recommended_rules_for_web_app.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'siteName': self._serialize.url("site_name", site_name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - if featured is not None: - query_parameters['featured'] = self._serialize.query("featured", featured, 'bool') - if filter is not None: - query_parameters['$filter'] = self._serialize.query("filter", filter, 'str', skip_quote=True) - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('[Recommendation]', response) + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_recommended_rules_for_web_app.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'siteName': self._serialize.url("site_name", site_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if featured is not None: + query_parameters['featured'] = self._serialize.query("featured", featured, 'bool') + if filter is not None: + query_parameters['$filter'] = self._serialize.query("filter", filter, 'str', skip_quote=True) + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.RecommendationPaged(internal_paging, self._deserialize.dependencies) if raw: - client_raw_response = ClientRawResponse(deserialized, response) + header_dict = {} + client_raw_response = models.RecommendationPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized @@ -344,7 +424,6 @@ def disable_all_for_web_app( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -353,8 +432,8 @@ def disable_all_for_web_app( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -401,7 +480,6 @@ def reset_all_filters_for_web_app( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -410,8 +488,8 @@ def reset_all_filters_for_web_app( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -424,7 +502,7 @@ def reset_all_filters_for_web_app( reset_all_filters_for_web_app.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/reset'} def get_rule_details_by_web_app( - self, resource_group_name, site_name, name, update_seen=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, site_name, name, update_seen=None, recommendation_id=None, custom_headers=None, raw=False, **operation_config): """Get a recommendation rule for an app. Get a recommendation rule for an app. @@ -439,6 +517,10 @@ def get_rule_details_by_web_app( :param update_seen: Specify true to update the last-seen timestamp of the recommendation object. :type update_seen: bool + :param recommendation_id: The GUID of the recommedation object if you + query an expired one. You don't need to specify it to query an active + entry. + :type recommendation_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -447,7 +529,8 @@ def get_rule_details_by_web_app( :return: RecommendationRule or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.RecommendationRule or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_rule_details_by_web_app.metadata['url'] @@ -463,11 +546,13 @@ def get_rule_details_by_web_app( query_parameters = {} if update_seen is not None: query_parameters['updateSeen'] = self._serialize.query("update_seen", update_seen, 'bool') + if recommendation_id is not None: + query_parameters['recommendationId'] = self._serialize.query("recommendation_id", recommendation_id, 'str') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -476,13 +561,11 @@ def get_rule_details_by_web_app( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -495,3 +578,62 @@ def get_rule_details_by_web_app( return deserialized get_rule_details_by_web_app.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/{name}'} + + def disable_recommendation_for_site( + self, resource_group_name, site_name, name, custom_headers=None, raw=False, **operation_config): + """Disables the specific rule for a web site permanently. + + Disables the specific rule for a web site permanently. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param site_name: Site name + :type site_name: str + :param name: Rule name + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.disable_recommendation_for_site.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'siteName': self._serialize.url("site_name", site_name, 'str'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + disable_recommendation_for_site.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/recommendations/{name}/disable'} diff --git a/azure-mgmt-web/azure/mgmt/web/operations/resource_health_metadata_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/resource_health_metadata_operations.py new file mode 100644 index 000000000000..65648c293f07 --- /dev/null +++ b/azure-mgmt-web/azure/mgmt/web/operations/resource_health_metadata_operations.py @@ -0,0 +1,457 @@ +# 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. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse + +from .. import models + + +class ResourceHealthMetadataOperations(object): + """ResourceHealthMetadataOperations operations. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: API Version. Constant value: "2018-02-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2018-02-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """List all ResourceHealthMetadata for all sites in the subscription. + + List all ResourceHealthMetadata for all sites in the subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ResourceHealthMetadata + :rtype: + ~azure.mgmt.web.models.ResourceHealthMetadataPaged[~azure.mgmt.web.models.ResourceHealthMetadata] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ResourceHealthMetadataPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ResourceHealthMetadataPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Web/resourceHealthMetadata'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """List all ResourceHealthMetadata for all sites in the resource group in + the subscription. + + List all ResourceHealthMetadata for all sites in the resource group in + the subscription. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ResourceHealthMetadata + :rtype: + ~azure.mgmt.web.models.ResourceHealthMetadataPaged[~azure.mgmt.web.models.ResourceHealthMetadata] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ResourceHealthMetadataPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ResourceHealthMetadataPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/resourceHealthMetadata'} + + def list_by_site( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Gets the category of ResourceHealthMetadata to use for the given site + as a collection. + + Gets the category of ResourceHealthMetadata to use for the given site + as a collection. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ResourceHealthMetadata + :rtype: + ~azure.mgmt.web.models.ResourceHealthMetadataPaged[~azure.mgmt.web.models.ResourceHealthMetadata] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_site.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ResourceHealthMetadataPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ResourceHealthMetadataPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_site.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resourceHealthMetadata'} + + def get_by_site( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Gets the category of ResourceHealthMetadata to use for the given site. + + Gets the category of ResourceHealthMetadata to use for the given site. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ResourceHealthMetadata or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.ResourceHealthMetadata or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.get_by_site.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ResourceHealthMetadata', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_by_site.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resourceHealthMetadata/default'} + + def list_by_site_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets the category of ResourceHealthMetadata to use for the given site + as a collection. + + Gets the category of ResourceHealthMetadata to use for the given site + as a collection. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app. + :type name: str + :param slot: Name of web app slot. If not specified then will default + to production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ResourceHealthMetadata + :rtype: + ~azure.mgmt.web.models.ResourceHealthMetadataPaged[~azure.mgmt.web.models.ResourceHealthMetadata] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_by_site_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ResourceHealthMetadataPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ResourceHealthMetadataPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_by_site_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resourceHealthMetadata'} + + def get_by_site_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets the category of ResourceHealthMetadata to use for the given site. + + Gets the category of ResourceHealthMetadata to use for the given site. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app + :type name: str + :param slot: Name of web app slot. If not specified then will default + to production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ResourceHealthMetadata or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.ResourceHealthMetadata or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.get_by_site_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ResourceHealthMetadata', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_by_site_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resourceHealthMetadata/default'} diff --git a/azure-mgmt-web/azure/mgmt/web/operations/top_level_domains_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/top_level_domains_operations.py index ff0497fd60be..a6c561eadc91 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/top_level_domains_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/top_level_domains_operations.py @@ -11,7 +11,6 @@ import uuid from msrest.pipeline import ClientRawResponse -from msrestazure.azure_exceptions import CloudError from .. import models @@ -23,7 +22,7 @@ class TopLevelDomainsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2015-04-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -33,7 +32,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2015-04-01" + self.api_version = "2018-02-01" self.config = config @@ -51,7 +50,8 @@ def list( :return: An iterator like instance of TopLevelDomain :rtype: ~azure.mgmt.web.models.TopLevelDomainPaged[~azure.mgmt.web.models.TopLevelDomain] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -73,7 +73,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -82,14 +82,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -120,7 +117,8 @@ def get( :return: TopLevelDomain or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.TopLevelDomain or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get.metadata['url'] @@ -136,7 +134,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -145,13 +143,11 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -191,7 +187,8 @@ def list_agreements( :return: An iterator like instance of TldLegalAgreement :rtype: ~azure.mgmt.web.models.TldLegalAgreementPaged[~azure.mgmt.web.models.TldLegalAgreement] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ agreement_option = models.TopLevelDomainAgreementOption(include_privacy=include_privacy, for_transfer=for_transfer) @@ -216,6 +213,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -228,14 +226,11 @@ def internal_paging(next_link=None, raw=False): body_content = self._serialize.body(agreement_option, 'TopLevelDomainAgreementOption') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response diff --git a/azure-mgmt-web/azure/mgmt/web/operations/web_apps_operations.py b/azure-mgmt-web/azure/mgmt/web/operations/web_apps_operations.py index 3bf64d3266ad..16fba6036b43 100644 --- a/azure-mgmt-web/azure/mgmt/web/operations/web_apps_operations.py +++ b/azure-mgmt-web/azure/mgmt/web/operations/web_apps_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -25,7 +25,7 @@ class WebAppsOperations(object): :param config: Configuration of service client. :param serializer: An object model serializer. :param deserializer: An object model deserializer. - :ivar api_version: API Version. Constant value: "2016-08-01". + :ivar api_version: API Version. Constant value: "2018-02-01". """ models = models @@ -35,7 +35,7 @@ def __init__(self, client, config, serializer, deserializer): self._client = client self._serialize = serializer self._deserialize = deserializer - self.api_version = "2016-08-01" + self.api_version = "2018-02-01" self.config = config @@ -52,7 +52,8 @@ def list( overrides`. :return: An iterator like instance of Site :rtype: ~azure.mgmt.web.models.SitePaged[~azure.mgmt.web.models.Site] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -74,7 +75,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -83,14 +84,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -125,7 +123,8 @@ def list_by_resource_group( overrides`. :return: An iterator like instance of Site :rtype: ~azure.mgmt.web.models.SitePaged[~azure.mgmt.web.models.Site] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -150,7 +149,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -159,14 +158,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -217,7 +213,7 @@ def get( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -226,8 +222,8 @@ def get( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -248,7 +244,7 @@ def get( def _create_or_update_initial( - self, resource_group_name, name, site_envelope, skip_dns_registration=None, skip_custom_domain_verification=None, force_dns_registration=None, ttl_in_seconds=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_envelope, custom_headers=None, raw=False, **operation_config): # Construct URL url = self.create_or_update.metadata['url'] path_format_arguments = { @@ -260,18 +256,11 @@ def _create_or_update_initial( # Construct parameters query_parameters = {} - if skip_dns_registration is not None: - query_parameters['skipDnsRegistration'] = self._serialize.query("skip_dns_registration", skip_dns_registration, 'bool') - if skip_custom_domain_verification is not None: - query_parameters['skipCustomDomainVerification'] = self._serialize.query("skip_custom_domain_verification", skip_custom_domain_verification, 'bool') - if force_dns_registration is not None: - query_parameters['forceDnsRegistration'] = self._serialize.query("force_dns_registration", force_dns_registration, 'bool') - if ttl_in_seconds is not None: - query_parameters['ttlInSeconds'] = self._serialize.query("ttl_in_seconds", ttl_in_seconds, 'str') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -284,14 +273,11 @@ def _create_or_update_initial( body_content = self._serialize.body(site_envelope, 'Site') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -307,7 +293,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, name, site_envelope, skip_dns_registration=None, skip_custom_domain_verification=None, force_dns_registration=None, ttl_in_seconds=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_envelope, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new web, mobile, or API app in an existing resource group, or updates an existing app. @@ -323,65 +309,30 @@ def create_or_update( :param site_envelope: A JSON representation of the app properties. See example. :type site_envelope: ~azure.mgmt.web.models.Site - :param skip_dns_registration: If true web app hostname is not - registered with DNS on creation. This parameter is - only used for app creation. - :type skip_dns_registration: bool - :param skip_custom_domain_verification: If true, custom (non - *.azurewebsites.net) domains associated with web app are not verified. - :type skip_custom_domain_verification: bool - :param force_dns_registration: If true, web app hostname is force - registered with DNS. - :type force_dns_registration: bool - :param ttl_in_seconds: Time to live in seconds for web app's default - domain name. - :type ttl_in_seconds: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Site or - ClientRawResponse if raw=true + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Site or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.Site] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.Site]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, name=name, site_envelope=site_envelope, - skip_dns_registration=skip_dns_registration, - skip_custom_domain_verification=skip_custom_domain_verification, - force_dns_registration=force_dns_registration, - ttl_in_seconds=ttl_in_seconds, custom_headers=custom_headers, raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Site', response) if raw: @@ -390,16 +341,17 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}'} def delete( - self, resource_group_name, name, delete_metrics=None, delete_empty_server_farm=None, skip_dns_registration=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, delete_metrics=None, delete_empty_server_farm=None, custom_headers=None, raw=False, **operation_config): """Deletes a web, mobile, or API app, or one of the deployment slots. Deletes a web, mobile, or API app, or one of the deployment slots. @@ -415,8 +367,6 @@ def delete( will be empty after app deletion and you want to delete the empty App Service plan. By default, the empty App Service plan is not deleted. :type delete_empty_server_farm: bool - :param skip_dns_registration: If true, DNS registration is skipped. - :type skip_dns_registration: bool :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -441,13 +391,10 @@ def delete( query_parameters['deleteMetrics'] = self._serialize.query("delete_metrics", delete_metrics, 'bool') if delete_empty_server_farm is not None: query_parameters['deleteEmptyServerFarm'] = self._serialize.query("delete_empty_server_farm", delete_empty_server_farm, 'bool') - if skip_dns_registration is not None: - query_parameters['skipDnsRegistration'] = self._serialize.query("skip_dns_registration", skip_dns_registration, 'bool') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -456,8 +403,8 @@ def delete( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204, 404]: exp = CloudError(response) @@ -470,7 +417,7 @@ def delete( delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}'} def update( - self, resource_group_name, name, site_envelope, skip_dns_registration=None, skip_custom_domain_verification=None, force_dns_registration=None, ttl_in_seconds=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_envelope, custom_headers=None, raw=False, **operation_config): """Creates a new web, mobile, or API app in an existing resource group, or updates an existing app. @@ -486,19 +433,6 @@ def update( :param site_envelope: A JSON representation of the app properties. See example. :type site_envelope: ~azure.mgmt.web.models.SitePatchResource - :param skip_dns_registration: If true web app hostname is not - registered with DNS on creation. This parameter is - only used for app creation. - :type skip_dns_registration: bool - :param skip_custom_domain_verification: If true, custom (non - *.azurewebsites.net) domains associated with web app are not verified. - :type skip_custom_domain_verification: bool - :param force_dns_registration: If true, web app hostname is force - registered with DNS. - :type force_dns_registration: bool - :param ttl_in_seconds: Time to live in seconds for web app's default - domain name. - :type ttl_in_seconds: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -507,7 +441,8 @@ def update( :return: Site or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Site or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update.metadata['url'] @@ -520,18 +455,11 @@ def update( # Construct parameters query_parameters = {} - if skip_dns_registration is not None: - query_parameters['skipDnsRegistration'] = self._serialize.query("skip_dns_registration", skip_dns_registration, 'bool') - if skip_custom_domain_verification is not None: - query_parameters['skipCustomDomainVerification'] = self._serialize.query("skip_custom_domain_verification", skip_custom_domain_verification, 'bool') - if force_dns_registration is not None: - query_parameters['forceDnsRegistration'] = self._serialize.query("force_dns_registration", force_dns_registration, 'bool') - if ttl_in_seconds is not None: - query_parameters['ttlInSeconds'] = self._serialize.query("ttl_in_seconds", ttl_in_seconds, 'str') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -544,14 +472,11 @@ def update( body_content = self._serialize.body(site_envelope, 'SitePatchResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -588,7 +513,8 @@ def analyze_custom_hostname( :return: CustomHostnameAnalysisResult or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.CustomHostnameAnalysisResult or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.analyze_custom_hostname.metadata['url'] @@ -607,7 +533,7 @@ def analyze_custom_hostname( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -616,13 +542,11 @@ def analyze_custom_hostname( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -692,9 +616,8 @@ def apply_slot_config_to_production( body_content = self._serialize.body(slot_swap_entity, 'CsmSlotEntity') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -728,7 +651,8 @@ def backup( :return: BackupItem or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.BackupItem or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.backup.metadata['url'] @@ -745,6 +669,7 @@ def backup( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -757,14 +682,11 @@ def backup( body_content = self._serialize.body(request, 'BackupRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -797,7 +719,8 @@ def list_backups( :return: An iterator like instance of BackupItem :rtype: ~azure.mgmt.web.models.BackupItemPaged[~azure.mgmt.web.models.BackupItem] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -821,7 +744,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -830,14 +753,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -852,80 +772,6 @@ def internal_paging(next_link=None, raw=False): return deserialized list_backups.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups'} - def discover_restore( - self, resource_group_name, name, request, custom_headers=None, raw=False, **operation_config): - """Discovers an existing app backup that can be restored from a blob in - Azure storage. - - Discovers an existing app backup that can be restored from a blob in - Azure storage. - - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Name of the app. - :type name: str - :param request: A RestoreRequest object that includes Azure storage - URL and blog name for discovery of backup. - :type request: ~azure.mgmt.web.models.RestoreRequest - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: RestoreRequest or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.RestoreRequest or - ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ - # Construct URL - url = self.discover_restore.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct body - body_content = self._serialize.body(request, 'RestoreRequest') - - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('RestoreRequest', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - discover_restore.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups/discover'} - def get_backup_status( self, resource_group_name, name, backup_id, custom_headers=None, raw=False, **operation_config): """Gets a backup of an app by its ID. @@ -947,7 +793,8 @@ def get_backup_status( :return: BackupItem or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.BackupItem or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_backup_status.metadata['url'] @@ -965,7 +812,7 @@ def get_backup_status( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -974,13 +821,11 @@ def get_backup_status( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1032,7 +877,6 @@ def delete_backup( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1041,8 +885,8 @@ def delete_backup( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -1083,7 +927,8 @@ def list_backup_status_secrets( :return: BackupItem or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.BackupItem or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_backup_status_secrets.metadata['url'] @@ -1101,6 +946,7 @@ def list_backup_status_secrets( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1113,14 +959,11 @@ def list_backup_status_secrets( body_content = self._serialize.body(request, 'BackupRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1165,28 +1008,20 @@ def _restore_initial( body_content = self._serialize.body(request, 'RestoreRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 202]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('RestoreResponse', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response - return deserialized - def restore( - self, resource_group_name, name, backup_id, request, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, backup_id, request, custom_headers=None, raw=False, polling=True, **operation_config): """Restores a specific backup to another app (or deployment slot, if specified). @@ -1203,13 +1038,14 @@ def restore( :param request: Information on restore request . :type request: ~azure.mgmt.web.models.RestoreRequest :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - RestoreResponse or ClientRawResponse if raw=true - :rtype: - ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.RestoreResponse] - or ~msrest.pipeline.ClientRawResponse + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._restore_initial( @@ -1221,44 +1057,19 @@ def restore( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - deserialized = self._deserialize('RestoreResponse', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response - return deserialized - - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) restore.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/backups/{backupId}/restore'} def list_configurations( @@ -1280,7 +1091,8 @@ def list_configurations( :return: An iterator like instance of SiteConfigResource :rtype: ~azure.mgmt.web.models.SiteConfigResourcePaged[~azure.mgmt.web.models.SiteConfigResource] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -1304,7 +1116,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1313,14 +1125,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -1358,7 +1167,8 @@ def update_application_settings( :return: StringDictionary or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.StringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ app_settings = models.StringDictionary(kind=kind, properties=properties) @@ -1377,6 +1187,7 @@ def update_application_settings( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1389,14 +1200,11 @@ def update_application_settings( body_content = self._serialize.body(app_settings, 'StringDictionary') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1429,7 +1237,8 @@ def list_application_settings( :return: StringDictionary or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.StringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_application_settings.metadata['url'] @@ -1446,7 +1255,7 @@ def list_application_settings( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1455,13 +1264,11 @@ def list_application_settings( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1498,7 +1305,8 @@ def update_auth_settings( :return: SiteAuthSettings or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteAuthSettings or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_auth_settings.metadata['url'] @@ -1515,6 +1323,7 @@ def update_auth_settings( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1527,14 +1336,11 @@ def update_auth_settings( body_content = self._serialize.body(site_auth_settings, 'SiteAuthSettings') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1567,7 +1373,8 @@ def get_auth_settings( :return: SiteAuthSettings or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteAuthSettings or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_auth_settings.metadata['url'] @@ -1584,7 +1391,7 @@ def get_auth_settings( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1593,13 +1400,11 @@ def get_auth_settings( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1613,31 +1418,38 @@ def get_auth_settings( return deserialized get_auth_settings.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettings/list'} - def update_backup_configuration( - self, resource_group_name, name, request, custom_headers=None, raw=False, **operation_config): - """Updates the backup configuration of an app. + def update_azure_storage_accounts( + self, resource_group_name, name, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): + """Updates the Azure storage account configurations of an app. - Updates the backup configuration of an app. + Updates the Azure storage account configurations of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param request: Edited backup configuration. - :type request: ~azure.mgmt.web.models.BackupRequest + :param kind: Kind of resource. + :type kind: str + :param properties: Azure storage accounts. + :type properties: dict[str, + ~azure.mgmt.web.models.AzureStorageInfoValue] :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: BackupRequest or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.BackupRequest or - ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: AzureStoragePropertyDictionaryResource or ClientRawResponse + if raw=true + :rtype: ~azure.mgmt.web.models.AzureStoragePropertyDictionaryResource + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ + azure_storage_accounts = models.AzureStoragePropertyDictionaryResource(kind=kind, properties=properties) + # Construct URL - url = self.update_backup_configuration.metadata['url'] + url = self.update_azure_storage_accounts.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -1651,6 +1463,7 @@ def update_backup_configuration( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1660,35 +1473,32 @@ def update_backup_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(request, 'BackupRequest') + body_content = self._serialize.body(azure_storage_accounts, 'AzureStoragePropertyDictionaryResource') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('BackupRequest', response) + deserialized = self._deserialize('AzureStoragePropertyDictionaryResource', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_backup_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup'} + update_azure_storage_accounts.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/azurestorageaccounts'} - def delete_backup_configuration( + def list_azure_storage_accounts( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Deletes the backup configuration of an app. + """Gets the Azure storage account configurations of an app. - Deletes the backup configuration of an app. + Gets the Azure storage account configurations of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -1700,12 +1510,15 @@ def delete_backup_configuration( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: AzureStoragePropertyDictionaryResource or ClientRawResponse + if raw=true + :rtype: ~azure.mgmt.web.models.AzureStoragePropertyDictionaryResource + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.delete_backup_configuration.metadata['url'] + url = self.list_azure_storage_accounts.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -1719,7 +1532,7 @@ def delete_backup_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1728,30 +1541,37 @@ def delete_backup_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureStoragePropertyDictionaryResource', response) if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - delete_backup_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup'} - def get_backup_configuration( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Gets the backup configuration of an app. + return deserialized + list_azure_storage_accounts.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/azurestorageaccounts/list'} - Gets the backup configuration of an app. + def update_backup_configuration( + self, resource_group_name, name, request, custom_headers=None, raw=False, **operation_config): + """Updates the backup configuration of an app. + + Updates the backup configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str + :param request: Edited backup configuration. + :type request: ~azure.mgmt.web.models.BackupRequest :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -1760,10 +1580,11 @@ def get_backup_configuration( :return: BackupRequest or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.BackupRequest or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_backup_configuration.metadata['url'] + url = self.update_backup_configuration.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -1777,6 +1598,7 @@ def get_backup_configuration( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1785,14 +1607,15 @@ def get_backup_configuration( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(request, 'BackupRequest') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1804,23 +1627,143 @@ def get_backup_configuration( return client_raw_response return deserialized - get_backup_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup/list'} + update_backup_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup'} - def update_connection_strings( - self, resource_group_name, name, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): - """Replaces the connection strings of an app. + def delete_backup_configuration( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Deletes the backup configuration of an app. - Replaces the connection strings of an app. + Deletes the backup configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param kind: Kind of resource. - :type kind: str - :param properties: Connection strings. - :type properties: dict[str, + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete_backup_configuration.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete_backup_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup'} + + def get_backup_configuration( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Gets the backup configuration of an app. + + Gets the backup configuration of an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackupRequest or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.BackupRequest or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.get_backup_configuration.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackupRequest', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_backup_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/backup/list'} + + def update_connection_strings( + self, resource_group_name, name, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): + """Replaces the connection strings of an app. + + Replaces the connection strings of an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param kind: Kind of resource. + :type kind: str + :param properties: Connection strings. + :type properties: dict[str, ~azure.mgmt.web.models.ConnStringValueTypePair] :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -1830,7 +1773,8 @@ def update_connection_strings( :return: ConnectionStringDictionary or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.ConnectionStringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ connection_strings = models.ConnectionStringDictionary(kind=kind, properties=properties) @@ -1849,6 +1793,7 @@ def update_connection_strings( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1861,14 +1806,11 @@ def update_connection_strings( body_content = self._serialize.body(connection_strings, 'ConnectionStringDictionary') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1901,7 +1843,8 @@ def list_connection_strings( :return: ConnectionStringDictionary or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.ConnectionStringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_connection_strings.metadata['url'] @@ -1918,7 +1861,7 @@ def list_connection_strings( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1927,13 +1870,11 @@ def list_connection_strings( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1966,7 +1907,8 @@ def get_diagnostic_logs_configuration( :return: SiteLogsConfig or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteLogsConfig or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_diagnostic_logs_configuration.metadata['url'] @@ -1983,7 +1925,7 @@ def get_diagnostic_logs_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -1992,13 +1934,11 @@ def get_diagnostic_logs_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2034,7 +1974,8 @@ def update_diagnostic_logs_config( :return: SiteLogsConfig or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteLogsConfig or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_diagnostic_logs_config.metadata['url'] @@ -2051,6 +1992,7 @@ def update_diagnostic_logs_config( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2063,14 +2005,11 @@ def update_diagnostic_logs_config( body_content = self._serialize.body(site_logs_config, 'SiteLogsConfig') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2107,7 +2046,8 @@ def update_metadata( :return: StringDictionary or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.StringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ metadata = models.StringDictionary(kind=kind, properties=properties) @@ -2126,6 +2066,7 @@ def update_metadata( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2138,14 +2079,11 @@ def update_metadata( body_content = self._serialize.body(metadata, 'StringDictionary') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2178,7 +2116,8 @@ def list_metadata( :return: StringDictionary or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.StringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_metadata.metadata['url'] @@ -2195,7 +2134,7 @@ def list_metadata( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2204,13 +2143,11 @@ def list_metadata( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2242,7 +2179,7 @@ def _list_publishing_credentials_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2251,13 +2188,11 @@ def _list_publishing_credentials_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2271,7 +2206,7 @@ def _list_publishing_credentials_initial( return deserialized def list_publishing_credentials( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, custom_headers=None, raw=False, polling=True, **operation_config): """Gets the Git/FTP publishing credentials of an app. Gets the Git/FTP publishing credentials of an app. @@ -2282,14 +2217,18 @@ def list_publishing_credentials( :param name: Name of the app. :type name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns User or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns User or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.User] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.User]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._list_publishing_credentials_initial( resource_group_name=resource_group_name, @@ -2298,30 +2237,8 @@ def list_publishing_credentials( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('User', response) if raw: @@ -2330,12 +2247,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) list_publishing_credentials.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/publishingcredentials/list'} def update_site_push_settings( @@ -2359,7 +2277,8 @@ def update_site_push_settings( :return: PushSettings or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PushSettings or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_site_push_settings.metadata['url'] @@ -2376,6 +2295,7 @@ def update_site_push_settings( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2388,14 +2308,11 @@ def update_site_push_settings( body_content = self._serialize.body(push_settings, 'PushSettings') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2428,7 +2345,8 @@ def list_site_push_settings( :return: PushSettings or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PushSettings or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_site_push_settings.metadata['url'] @@ -2445,7 +2363,7 @@ def list_site_push_settings( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2454,13 +2372,11 @@ def list_site_push_settings( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2495,7 +2411,8 @@ def list_slot_configuration_names( :return: SlotConfigNamesResource or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SlotConfigNamesResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_slot_configuration_names.metadata['url'] @@ -2512,7 +2429,7 @@ def list_slot_configuration_names( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2521,13 +2438,11 @@ def list_slot_configuration_names( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2566,7 +2481,8 @@ def update_slot_configuration_names( :return: SlotConfigNamesResource or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SlotConfigNamesResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_slot_configuration_names.metadata['url'] @@ -2583,6 +2499,7 @@ def update_slot_configuration_names( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2595,14 +2512,11 @@ def update_slot_configuration_names( body_content = self._serialize.body(slot_config_names, 'SlotConfigNamesResource') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -2616,13 +2530,11 @@ def update_slot_configuration_names( return deserialized update_slot_configuration_names.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/slotConfigNames'} - def get_configuration( + def get_swift_virtual_network_connection( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Gets the configuration of an app, such as platform version and bitness, - default documents, virtual applications, Always On, etc. + """Gets a Swift Virtual Network connection. - Gets the configuration of an app, such as platform version and bitness, - default documents, virtual applications, Always On, etc. + Gets a Swift Virtual Network connection. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -2634,13 +2546,14 @@ def get_configuration( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: SiteConfigResource or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteConfigResource or + :return: SwiftVirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SwiftVirtualNetwork or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_configuration.metadata['url'] + url = self.get_swift_virtual_network_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -2654,7 +2567,7 @@ def get_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2663,52 +2576,57 @@ def get_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('SiteConfigResource', response) + deserialized = self._deserialize('SwiftVirtualNetwork', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web'} + get_swift_virtual_network_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/virtualNetwork'} - def create_or_update_configuration( - self, resource_group_name, name, site_config, custom_headers=None, raw=False, **operation_config): - """Updates the configuration of an app. + def create_or_update_swift_virtual_network_connection( + self, resource_group_name, name, connection_envelope, custom_headers=None, raw=False, **operation_config): + """Integrates this Web App with a Virtual Network. This requires that 1) + "swiftSupported" is true when doing a GET against this resource, and 2) + that the target Subnet has already been delegated, and is not + in use by another App Service Plan other than the one this App is in. - Updates the configuration of an app. + Integrates this Web App with a Virtual Network. This requires that 1) + "swiftSupported" is true when doing a GET against this resource, and 2) + that the target Subnet has already been delegated, and is not + in use by another App Service Plan other than the one this App is in. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param site_config: JSON representation of a SiteConfig object. See - example. - :type site_config: ~azure.mgmt.web.models.SiteConfigResource + :param connection_envelope: Properties of the Virtual Network + connection. See example. + :type connection_envelope: ~azure.mgmt.web.models.SwiftVirtualNetwork :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: SiteConfigResource or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteConfigResource or + :return: SwiftVirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SwiftVirtualNetwork or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.create_or_update_configuration.metadata['url'] + url = self.create_or_update_swift_virtual_network_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -2722,6 +2640,7 @@ def create_or_update_configuration( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2731,56 +2650,51 @@ def create_or_update_configuration( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(site_config, 'SiteConfigResource') + body_content = self._serialize.body(connection_envelope, 'SwiftVirtualNetwork') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('SiteConfigResource', response) + deserialized = self._deserialize('SwiftVirtualNetwork', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - create_or_update_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web'} + create_or_update_swift_virtual_network_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/virtualNetwork'} - def update_configuration( - self, resource_group_name, name, site_config, custom_headers=None, raw=False, **operation_config): - """Updates the configuration of an app. + def delete_swift_virtual_network( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Deletes a Swift Virtual Network connection from an app (or deployment + slot). - Updates the configuration of an app. + Deletes a Swift Virtual Network connection from an app (or deployment + slot). :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param site_config: JSON representation of a SiteConfig object. See - example. - :type site_config: ~azure.mgmt.web.models.SiteConfigResource :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: SiteConfigResource or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteConfigResource or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.update_configuration.metadata['url'] + url = self.delete_swift_virtual_network.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -2794,7 +2708,6 @@ def update_configuration( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -2802,138 +2715,56 @@ def update_configuration( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(site_config, 'SiteConfigResource') - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('SiteConfigResource', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_swift_virtual_network.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/virtualNetwork'} - return deserialized - update_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web'} - - def list_configuration_snapshot_info( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Gets a list of web app configuration snapshots identifiers. Each - element of the list contains a timestamp and the ID of the snapshot. + def update_swift_virtual_network_connection( + self, resource_group_name, name, connection_envelope, custom_headers=None, raw=False, **operation_config): + """Integrates this Web App with a Virtual Network. This requires that 1) + "swiftSupported" is true when doing a GET against this resource, and 2) + that the target Subnet has already been delegated, and is not + in use by another App Service Plan other than the one this App is in. - Gets a list of web app configuration snapshots identifiers. Each - element of the list contains a timestamp and the ID of the snapshot. + Integrates this Web App with a Virtual Network. This requires that 1) + "swiftSupported" is true when doing a GET against this resource, and 2) + that the target Subnet has already been delegated, and is not + in use by another App Service Plan other than the one this App is in. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str + :param connection_envelope: Properties of the Virtual Network + connection. See example. + :type connection_envelope: ~azure.mgmt.web.models.SwiftVirtualNetwork :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of SiteConfigurationSnapshotInfo - :rtype: - ~azure.mgmt.web.models.SiteConfigurationSnapshotInfoPaged[~azure.mgmt.web.models.SiteConfigurationSnapshotInfo] - :raises: :class:`CloudError` - """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.list_configuration_snapshot_info.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - return response - - # Deserialize response - deserialized = models.SiteConfigurationSnapshotInfoPaged(internal_paging, self._deserialize.dependencies) - - if raw: - header_dict = {} - client_raw_response = models.SiteConfigurationSnapshotInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) - return client_raw_response - - return deserialized - list_configuration_snapshot_info.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots'} - - def get_configuration_snapshot( - self, resource_group_name, name, snapshot_id, custom_headers=None, raw=False, **operation_config): - """Gets a snapshot of the configuration of an app at a previous point in - time. - - Gets a snapshot of the configuration of an app at a previous point in - time. - - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Name of the app. - :type name: str - :param snapshot_id: The ID of the snapshot to read. - :type snapshot_id: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SiteConfigResource or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteConfigResource or + :return: SwiftVirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SwiftVirtualNetwork or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_configuration_snapshot.metadata['url'] + url = self.update_swift_virtual_network_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'snapshotId': self._serialize.url("snapshot_id", snapshot_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -2944,6 +2775,7 @@ def get_configuration_snapshot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -2952,55 +2784,57 @@ def get_configuration_snapshot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(connection_envelope, 'SwiftVirtualNetwork') + # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('SiteConfigResource', response) + deserialized = self._deserialize('SwiftVirtualNetwork', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_configuration_snapshot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots/{snapshotId}'} + update_swift_virtual_network_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/virtualNetwork'} - def recover_site_configuration_snapshot( - self, resource_group_name, name, snapshot_id, custom_headers=None, raw=False, **operation_config): - """Reverts the configuration of an app to a previous snapshot. + def get_configuration( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Gets the configuration of an app, such as platform version and bitness, + default documents, virtual applications, Always On, etc. - Reverts the configuration of an app to a previous snapshot. + Gets the configuration of an app, such as platform version and bitness, + default documents, virtual applications, Always On, etc. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param snapshot_id: The ID of the snapshot to read. - :type snapshot_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: SiteConfigResource or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteConfigResource or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.recover_site_configuration_snapshot.metadata['url'] + url = self.get_configuration.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'snapshotId': self._serialize.url("snapshot_id", snapshot_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3011,7 +2845,7 @@ def recover_site_configuration_snapshot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3020,46 +2854,51 @@ def recover_site_configuration_snapshot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SiteConfigResource', response) if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - recover_site_configuration_snapshot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots/{snapshotId}/recover'} - def get_web_site_container_logs( - self, resource_group_name, name, custom_headers=None, raw=False, callback=None, **operation_config): - """Gets the last lines of docker logs for the given site. + return deserialized + get_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web'} - Gets the last lines of docker logs for the given site. + def create_or_update_configuration( + self, resource_group_name, name, site_config, custom_headers=None, raw=False, **operation_config): + """Updates the configuration of an app. + + Updates the configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str + :param site_config: JSON representation of a SiteConfig object. See + example. + :type site_config: ~azure.mgmt.web.models.SiteConfigResource :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response - :param callback: When specified, will be called with each chunk of - data that is streamed. The callback should take two arguments, the - bytes of the current chunk of data and the response object. If the - data is uploading, response will be None. - :type callback: Callable[Bytes, response=None] :param operation_config: :ref:`Operation configuration overrides`. - :return: object or ClientRawResponse if raw=true - :rtype: Generator or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: SiteConfigResource or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteConfigResource or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_web_site_container_logs.metadata['url'] + url = self.create_or_update_configuration.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -3073,6 +2912,7 @@ def get_web_site_container_logs( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -3081,54 +2921,55 @@ def get_web_site_container_logs( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(site_config, 'SiteConfigResource') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._client.stream_download(response, callback) + deserialized = self._deserialize('SiteConfigResource', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_web_site_container_logs.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/containerlogs'} + create_or_update_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web'} - def get_web_site_container_logs_zip( - self, resource_group_name, name, custom_headers=None, raw=False, callback=None, **operation_config): - """Gets the ZIP archived docker log files for the given site. + def update_configuration( + self, resource_group_name, name, site_config, custom_headers=None, raw=False, **operation_config): + """Updates the configuration of an app. - Gets the ZIP archived docker log files for the given site. + Updates the configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str + :param site_config: JSON representation of a SiteConfig object. See + example. + :type site_config: ~azure.mgmt.web.models.SiteConfigResource :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response - :param callback: When specified, will be called with each chunk of - data that is streamed. The callback should take two arguments, the - bytes of the current chunk of data and the response object. If the - data is uploading, response will be None. - :type callback: Callable[Bytes, response=None] :param operation_config: :ref:`Operation configuration overrides`. - :return: object or ClientRawResponse if raw=true - :rtype: Generator or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: SiteConfigResource or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteConfigResource or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_web_site_container_logs_zip.metadata['url'] + url = self.update_configuration.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -3142,6 +2983,7 @@ def get_web_site_container_logs_zip( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -3150,53 +2992,57 @@ def get_web_site_container_logs_zip( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(site_config, 'SiteConfigResource') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._client.stream_download(response, callback) + deserialized = self._deserialize('SiteConfigResource', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_web_site_container_logs_zip.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/containerlogs/zip/download'} + update_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web'} - def list_continuous_web_jobs( + def list_configuration_snapshot_info( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """List continuous web jobs for an app, or a deployment slot. + """Gets a list of web app configuration snapshots identifiers. Each + element of the list contains a timestamp and the ID of the snapshot. - List continuous web jobs for an app, or a deployment slot. + Gets a list of web app configuration snapshots identifiers. Each + element of the list contains a timestamp and the ID of the snapshot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of the app. :type name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of ContinuousWebJob + :return: An iterator like instance of SiteConfigurationSnapshotInfo :rtype: - ~azure.mgmt.web.models.ContinuousWebJobPaged[~azure.mgmt.web.models.ContinuousWebJob] - :raises: :class:`CloudError` + ~azure.mgmt.web.models.SiteConfigurationSnapshotInfoPaged[~azure.mgmt.web.models.SiteConfigurationSnapshotInfo] + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_continuous_web_jobs.metadata['url'] + url = self.list_configuration_snapshot_info.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -3214,7 +3060,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3223,57 +3069,57 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response # Deserialize response - deserialized = models.ContinuousWebJobPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.SiteConfigurationSnapshotInfoPaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.ContinuousWebJobPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.SiteConfigurationSnapshotInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - list_continuous_web_jobs.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs'} + list_configuration_snapshot_info.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots'} - def get_continuous_web_job( - self, resource_group_name, name, web_job_name, custom_headers=None, raw=False, **operation_config): - """Gets a continuous web job by its ID for an app, or a deployment slot. + def get_configuration_snapshot( + self, resource_group_name, name, snapshot_id, custom_headers=None, raw=False, **operation_config): + """Gets a snapshot of the configuration of an app at a previous point in + time. - Gets a continuous web job by its ID for an app, or a deployment slot. + Gets a snapshot of the configuration of an app at a previous point in + time. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of the app. :type name: str - :param web_job_name: Name of Web Job. - :type web_job_name: str + :param snapshot_id: The ID of the snapshot to read. + :type snapshot_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: ContinuousWebJob or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.ContinuousWebJob or + :return: SiteConfigResource or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteConfigResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_continuous_web_job.metadata['url'] + url = self.get_configuration_snapshot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'webJobName': self._serialize.url("web_job_name", web_job_name, 'str'), + 'snapshotId': self._serialize.url("snapshot_id", snapshot_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3284,7 +3130,7 @@ def get_continuous_web_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3293,39 +3139,37 @@ def get_continuous_web_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('ContinuousWebJob', response) + deserialized = self._deserialize('SiteConfigResource', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_continuous_web_job.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}'} + get_configuration_snapshot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots/{snapshotId}'} - def delete_continuous_web_job( - self, resource_group_name, name, web_job_name, custom_headers=None, raw=False, **operation_config): - """Delete a continuous web job by its ID for an app, or a deployment slot. + def recover_site_configuration_snapshot( + self, resource_group_name, name, snapshot_id, custom_headers=None, raw=False, **operation_config): + """Reverts the configuration of an app to a previous snapshot. - Delete a continuous web job by its ID for an app, or a deployment slot. + Reverts the configuration of an app to a previous snapshot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of the app. :type name: str - :param web_job_name: Name of Web Job. - :type web_job_name: str + :param snapshot_id: The ID of the snapshot to read. + :type snapshot_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -3336,11 +3180,11 @@ def delete_continuous_web_job( :raises: :class:`CloudError` """ # Construct URL - url = self.delete_continuous_web_job.metadata['url'] + url = self.recover_site_configuration_snapshot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'webJobName': self._serialize.url("web_job_name", web_job_name, 'str'), + 'snapshotId': self._serialize.url("snapshot_id", snapshot_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3351,7 +3195,6 @@ def delete_continuous_web_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3360,10 +3203,10 @@ def delete_continuous_web_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 204]: + if response.status_code not in [204]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -3371,36 +3214,38 @@ def delete_continuous_web_job( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - delete_continuous_web_job.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}'} + recover_site_configuration_snapshot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/web/snapshots/{snapshotId}/recover'} - def start_continuous_web_job( - self, resource_group_name, name, web_job_name, custom_headers=None, raw=False, **operation_config): - """Start a continuous web job for an app, or a deployment slot. + def get_web_site_container_logs( + self, resource_group_name, name, custom_headers=None, raw=False, callback=None, **operation_config): + """Gets the last lines of docker logs for the given site. - Start a continuous web job for an app, or a deployment slot. + Gets the last lines of docker logs for the given site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of web app. :type name: str - :param web_job_name: Name of Web Job. - :type web_job_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response + :param callback: When specified, will be called with each chunk of + data that is streamed. The callback should take two arguments, the + bytes of the current chunk of data and the response object. If the + data is uploading, response will be None. + :type callback: Callable[Bytes, response=None] :param operation_config: :ref:`Operation configuration overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse + :return: object or ClientRawResponse if raw=true + :rtype: Generator or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.start_continuous_web_job.metadata['url'] + url = self.get_web_site_container_logs.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'webJobName': self._serialize.url("web_job_name", web_job_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3411,7 +3256,7 @@ def start_continuous_web_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/octet-stream' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3420,47 +3265,56 @@ def start_continuous_web_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) - if response.status_code not in [200, 404]: + if response.status_code not in [200, 204]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp + deserialized = None + + if response.status_code == 200: + deserialized = self._client.stream_download(response, callback) + if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - start_continuous_web_job.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/start'} - def stop_continuous_web_job( - self, resource_group_name, name, web_job_name, custom_headers=None, raw=False, **operation_config): - """Stop a continuous web job for an app, or a deployment slot. + return deserialized + get_web_site_container_logs.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/containerlogs'} - Stop a continuous web job for an app, or a deployment slot. + def get_container_logs_zip( + self, resource_group_name, name, custom_headers=None, raw=False, callback=None, **operation_config): + """Gets the ZIP archived docker log files for the given site. + + Gets the ZIP archived docker log files for the given site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of web app. :type name: str - :param web_job_name: Name of Web Job. - :type web_job_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response + :param callback: When specified, will be called with each chunk of + data that is streamed. The callback should take two arguments, the + bytes of the current chunk of data and the response object. If the + data is uploading, response will be None. + :type callback: Callable[Bytes, response=None] :param operation_config: :ref:`Operation configuration overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse + :return: object or ClientRawResponse if raw=true + :rtype: Generator or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.stop_continuous_web_job.metadata['url'] + url = self.get_container_logs_zip.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'webJobName': self._serialize.url("web_job_name", web_job_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3471,7 +3325,7 @@ def stop_continuous_web_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/zip' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3480,45 +3334,53 @@ def stop_continuous_web_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) - if response.status_code not in [200, 404]: + if response.status_code not in [200, 204]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp + deserialized = None + + if response.status_code == 200: + deserialized = self._client.stream_download(response, callback) + if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - stop_continuous_web_job.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/stop'} - def list_deployments( + return deserialized + get_container_logs_zip.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/containerlogs/zip/download'} + + def list_continuous_web_jobs( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """List deployments for an app, or a deployment slot. + """List continuous web jobs for an app, or a deployment slot. - List deployments for an app, or a deployment slot. + List continuous web jobs for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of Deployment + :return: An iterator like instance of ContinuousWebJob :rtype: - ~azure.mgmt.web.models.DeploymentPaged[~azure.mgmt.web.models.Deployment] - :raises: :class:`CloudError` + ~azure.mgmt.web.models.ContinuousWebJobPaged[~azure.mgmt.web.models.ContinuousWebJob] + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_deployments.metadata['url'] + url = self.list_continuous_web_jobs.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -3536,7 +3398,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3545,57 +3407,54 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response # Deserialize response - deserialized = models.DeploymentPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.ContinuousWebJobPaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.DeploymentPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.ContinuousWebJobPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - list_deployments.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments'} + list_continuous_web_jobs.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs'} - def get_deployment( - self, resource_group_name, name, id, custom_headers=None, raw=False, **operation_config): - """Get a deployment by its ID for an app, or a deployment slot. + def get_continuous_web_job( + self, resource_group_name, name, web_job_name, custom_headers=None, raw=False, **operation_config): + """Gets a continuous web job by its ID for an app, or a deployment slot. - Get a deployment by its ID for an app, or a deployment slot. + Gets a continuous web job by its ID for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str - :param id: Deployment ID. - :type id: str + :param web_job_name: Name of Web Job. + :type web_job_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: Deployment or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.Deployment or + :return: ContinuousWebJob or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.ContinuousWebJob or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.get_deployment.metadata['url'] + url = self.get_continuous_web_job.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'id': self._serialize.url("id", id, 'str'), + 'webJobName': self._serialize.url("web_job_name", web_job_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3606,7 +3465,7 @@ def get_deployment( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3615,10 +3474,10 @@ def get_deployment( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -3626,46 +3485,43 @@ def get_deployment( deserialized = None if response.status_code == 200: - deserialized = self._deserialize('Deployment', response) + deserialized = self._deserialize('ContinuousWebJob', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_deployment.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}'} + get_continuous_web_job.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}'} - def create_deployment( - self, resource_group_name, name, id, deployment, custom_headers=None, raw=False, **operation_config): - """Create a deployment for an app, or a deployment slot. + def delete_continuous_web_job( + self, resource_group_name, name, web_job_name, custom_headers=None, raw=False, **operation_config): + """Delete a continuous web job by its ID for an app, or a deployment slot. - Create a deployment for an app, or a deployment slot. + Delete a continuous web job by its ID for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str - :param id: ID of an existing deployment. - :type id: str - :param deployment: Deployment details. - :type deployment: ~azure.mgmt.web.models.Deployment + :param web_job_name: Name of Web Job. + :type web_job_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: Deployment or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.Deployment or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.create_deployment.metadata['url'] + url = self.delete_continuous_web_job.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'id': self._serialize.url("id", id, 'str'), + 'webJobName': self._serialize.url("web_job_name", web_job_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3676,7 +3532,6 @@ def create_deployment( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3684,44 +3539,33 @@ def create_deployment( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(deployment, 'Deployment') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 204]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Deployment', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_continuous_web_job.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}'} - return deserialized - create_deployment.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}'} - - def delete_deployment( - self, resource_group_name, name, id, custom_headers=None, raw=False, **operation_config): - """Delete a deployment by its ID for an app, or a deployment slot. + def start_continuous_web_job( + self, resource_group_name, name, web_job_name, custom_headers=None, raw=False, **operation_config): + """Start a continuous web job for an app, or a deployment slot. - Delete a deployment by its ID for an app, or a deployment slot. + Start a continuous web job for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str - :param id: Deployment ID. - :type id: str + :param web_job_name: Name of Web Job. + :type web_job_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -3732,11 +3576,11 @@ def delete_deployment( :raises: :class:`CloudError` """ # Construct URL - url = self.delete_deployment.metadata['url'] + url = self.start_continuous_web_job.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'id': self._serialize.url("id", id, 'str'), + 'webJobName': self._serialize.url("web_job_name", web_job_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3747,7 +3591,6 @@ def delete_deployment( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3756,10 +3599,10 @@ def delete_deployment( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 204]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -3767,41 +3610,36 @@ def delete_deployment( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - delete_deployment.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}'} + start_continuous_web_job.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/start'} - def list_deployment_log( - self, resource_group_name, name, id, custom_headers=None, raw=False, **operation_config): - """List deployment log for specific deployment for an app, or a deployment - slot. + def stop_continuous_web_job( + self, resource_group_name, name, web_job_name, custom_headers=None, raw=False, **operation_config): + """Stop a continuous web job for an app, or a deployment slot. - List deployment log for specific deployment for an app, or a deployment - slot. + Stop a continuous web job for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str - :param id: The ID of a specific deployment. This is the value of the - name property in the JSON response from "GET - /api/sites/{siteName}/deployments". - :type id: str + :param web_job_name: Name of Web Job. + :type web_job_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: Deployment or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.Deployment or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.list_deployment_log.metadata['url'] + url = self.stop_continuous_web_job.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'id': self._serialize.url("id", id, 'str'), + 'webJobName': self._serialize.url("web_job_name", web_job_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3812,7 +3650,6 @@ def list_deployment_log( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3821,31 +3658,24 @@ def list_deployment_log( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('Deployment', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + stop_continuous_web_job.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/stop'} - return deserialized - list_deployment_log.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}/log'} - - def list_domain_ownership_identifiers( + def list_deployments( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Lists ownership identifiers for domain associated with web app. + """List deployments for an app, or a deployment slot. - Lists ownership identifiers for domain associated with web app. + List deployments for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -3857,16 +3687,17 @@ def list_domain_ownership_identifiers( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of Identifier + :return: An iterator like instance of Deployment :rtype: - ~azure.mgmt.web.models.IdentifierPaged[~azure.mgmt.web.models.Identifier] - :raises: :class:`CloudError` + ~azure.mgmt.web.models.DeploymentPaged[~azure.mgmt.web.models.Deployment] + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_domain_ownership_identifiers.metadata['url'] + url = self.list_deployments.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -3884,7 +3715,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3893,58 +3724,55 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response # Deserialize response - deserialized = models.IdentifierPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.DeploymentPaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.IdentifierPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.DeploymentPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - list_domain_ownership_identifiers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers'} + list_deployments.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments'} - def get_domain_ownership_identifier( - self, resource_group_name, name, domain_ownership_identifier_name, custom_headers=None, raw=False, **operation_config): - """Get domain ownership identifier for web app. + def get_deployment( + self, resource_group_name, name, id, custom_headers=None, raw=False, **operation_config): + """Get a deployment by its ID for an app, or a deployment slot. - Get domain ownership identifier for web app. + Get a deployment by its ID for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param domain_ownership_identifier_name: Name of domain ownership - identifier. - :type domain_ownership_identifier_name: str + :param id: Deployment ID. + :type id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: Identifier or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.Identifier or + :return: Deployment or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.Deployment or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_domain_ownership_identifier.metadata['url'] + url = self.get_deployment.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'domainOwnershipIdentifierName': self._serialize.url("domain_ownership_identifier_name", domain_ownership_identifier_name, 'str'), + 'id': self._serialize.url("id", id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -3955,7 +3783,7 @@ def get_domain_ownership_identifier( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -3964,64 +3792,56 @@ def get_domain_ownership_identifier( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('Identifier', response) + deserialized = self._deserialize('Deployment', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_domain_ownership_identifier.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}'} + get_deployment.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}'} - def create_or_update_domain_ownership_identifier( - self, resource_group_name, name, domain_ownership_identifier_name, kind=None, identifier_id=None, custom_headers=None, raw=False, **operation_config): - """Creates a domain ownership identifier for web app, or updates an - existing ownership identifier. + def create_deployment( + self, resource_group_name, name, id, deployment, custom_headers=None, raw=False, **operation_config): + """Create a deployment for an app, or a deployment slot. - Creates a domain ownership identifier for web app, or updates an - existing ownership identifier. + Create a deployment for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param domain_ownership_identifier_name: Name of domain ownership - identifier. - :type domain_ownership_identifier_name: str - :param kind: Kind of resource. - :type kind: str - :param identifier_id: String representation of the identity. - :type identifier_id: str + :param id: ID of an existing deployment. + :type id: str + :param deployment: Deployment details. + :type deployment: ~azure.mgmt.web.models.Deployment :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: Identifier or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.Identifier or + :return: Deployment or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.Deployment or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - domain_ownership_identifier = models.Identifier(kind=kind, identifier_id=identifier_id) - # Construct URL - url = self.create_or_update_domain_ownership_identifier.metadata['url'] + url = self.create_deployment.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'domainOwnershipIdentifierName': self._serialize.url("domain_ownership_identifier_name", domain_ownership_identifier_name, 'str'), + 'id': self._serialize.url("id", id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -4032,6 +3852,7 @@ def create_or_update_domain_ownership_identifier( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -4041,44 +3862,40 @@ def create_or_update_domain_ownership_identifier( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(domain_ownership_identifier, 'Identifier') + body_content = self._serialize.body(deployment, 'Deployment') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('Identifier', response) + deserialized = self._deserialize('Deployment', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - create_or_update_domain_ownership_identifier.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}'} + create_deployment.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}'} - def delete_domain_ownership_identifier( - self, resource_group_name, name, domain_ownership_identifier_name, custom_headers=None, raw=False, **operation_config): - """Deletes a domain ownership identifier for a web app. + def delete_deployment( + self, resource_group_name, name, id, custom_headers=None, raw=False, **operation_config): + """Delete a deployment by its ID for an app, or a deployment slot. - Deletes a domain ownership identifier for a web app. + Delete a deployment by its ID for an app, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param domain_ownership_identifier_name: Name of domain ownership - identifier. - :type domain_ownership_identifier_name: str + :param id: Deployment ID. + :type id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -4089,11 +3906,11 @@ def delete_domain_ownership_identifier( :raises: :class:`CloudError` """ # Construct URL - url = self.delete_domain_ownership_identifier.metadata['url'] + url = self.delete_deployment.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'domainOwnershipIdentifierName': self._serialize.url("domain_ownership_identifier_name", domain_ownership_identifier_name, 'str'), + 'id': self._serialize.url("id", id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -4104,7 +3921,6 @@ def delete_domain_ownership_identifier( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -4113,8 +3929,8 @@ def delete_domain_ownership_identifier( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -4124,46 +3940,42 @@ def delete_domain_ownership_identifier( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - delete_domain_ownership_identifier.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}'} + delete_deployment.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}'} - def update_domain_ownership_identifier( - self, resource_group_name, name, domain_ownership_identifier_name, kind=None, identifier_id=None, custom_headers=None, raw=False, **operation_config): - """Creates a domain ownership identifier for web app, or updates an - existing ownership identifier. + def list_deployment_log( + self, resource_group_name, name, id, custom_headers=None, raw=False, **operation_config): + """List deployment log for specific deployment for an app, or a deployment + slot. - Creates a domain ownership identifier for web app, or updates an - existing ownership identifier. + List deployment log for specific deployment for an app, or a deployment + slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param domain_ownership_identifier_name: Name of domain ownership - identifier. - :type domain_ownership_identifier_name: str - :param kind: Kind of resource. - :type kind: str - :param identifier_id: String representation of the identity. - :type identifier_id: str + :param id: The ID of a specific deployment. This is the value of the + name property in the JSON response from "GET + /api/sites/{siteName}/deployments". + :type id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: Identifier or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.Identifier or + :return: Deployment or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.Deployment or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - domain_ownership_identifier = models.Identifier(kind=kind, identifier_id=identifier_id) - # Construct URL - url = self.update_domain_ownership_identifier.metadata['url'] + url = self.list_deployment_log.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'domainOwnershipIdentifierName': self._serialize.url("domain_ownership_identifier_name", domain_ownership_identifier_name, 'str'), + 'id': self._serialize.url("id", id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -4174,7 +3986,7 @@ def update_domain_ownership_identifier( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -4182,101 +3994,56 @@ def update_domain_ownership_identifier( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(domain_ownership_identifier, 'Identifier') - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('Identifier', response) + deserialized = self._deserialize('Deployment', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_domain_ownership_identifier.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}'} + list_deployment_log.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/deployments/{id}/log'} - def get_ms_deploy_status( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Get the status of the last MSDeploy operation. + def discover_backup( + self, resource_group_name, name, request, custom_headers=None, raw=False, **operation_config): + """Discovers an existing app backup that can be restored from a blob in + Azure storage. Use this to get information about the databases stored + in a backup. - Get the status of the last MSDeploy operation. + Discovers an existing app backup that can be restored from a blob in + Azure storage. Use this to get information about the databases stored + in a backup. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str + :param request: A RestoreRequest object that includes Azure storage + URL and blog name for discovery of backup. + :type request: ~azure.mgmt.web.models.RestoreRequest :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: MSDeployStatus or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.MSDeployStatus or + :return: RestoreRequest or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.RestoreRequest or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_ms_deploy_status.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('MSDeployStatus', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - get_ms_deploy_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy'} - - - def _create_ms_deploy_operation_initial( - self, resource_group_name, name, ms_deploy, custom_headers=None, raw=False, **operation_config): - # Construct URL - url = self.create_ms_deploy_operation.metadata['url'] + url = self.discover_backup.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -4290,6 +4057,7 @@ def _create_ms_deploy_operation_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -4299,126 +4067,130 @@ def _create_ms_deploy_operation_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(ms_deploy, 'MSDeploy') + body_content = self._serialize.body(request, 'RestoreRequest') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [201, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None - if response.status_code == 201: - deserialized = self._deserialize('MSDeployStatus', response) + if response.status_code == 200: + deserialized = self._deserialize('RestoreRequest', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized + discover_backup.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/discoverbackup'} - def create_ms_deploy_operation( - self, resource_group_name, name, ms_deploy, custom_headers=None, raw=False, **operation_config): - """Invoke the MSDeploy web app extension. + def list_domain_ownership_identifiers( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Lists ownership identifiers for domain associated with web app. - Invoke the MSDeploy web app extension. + Lists ownership identifiers for domain associated with web app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param ms_deploy: Details of MSDeploy operation - :type ms_deploy: ~azure.mgmt.web.models.MSDeploy :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response - :return: An instance of AzureOperationPoller that returns - MSDeployStatus or ClientRawResponse if raw=true + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Identifier :rtype: - ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.MSDeployStatus] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + ~azure.mgmt.web.models.IdentifierPaged[~azure.mgmt.web.models.Identifier] + :raises: + :class:`DefaultErrorResponseException` """ - raw_result = self._create_ms_deploy_operation_initial( - resource_group_name=resource_group_name, - name=name, - ms_deploy=ms_deploy, - custom_headers=custom_headers, - raw=True, - **operation_config - ) - if raw: - return raw_result + def internal_paging(next_link=None, raw=False): - # Construct and send request - def long_running_send(): - return raw_result.response + if not next_link: + # Construct URL + url = self.list_domain_ownership_identifiers.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - def get_long_running_status(status_link, headers=None): + else: + url = next_link + query_parameters = {} - request = self._client.get(status_link) - if headers: - request.headers.update(headers) + # Construct headers header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - def get_long_running_output(response): + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [201, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) - deserialized = self._deserialize('MSDeployStatus', response) + return response - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response + # Deserialize response + deserialized = models.IdentifierPaged(internal_paging, self._deserialize.dependencies) - return deserialized + if raw: + header_dict = {} + client_raw_response = models.IdentifierPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response - long_running_operation_timeout = operation_config.get( - 'long_running_operation_timeout', - self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) - create_ms_deploy_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy'} + return deserialized + list_domain_ownership_identifiers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers'} - def get_ms_deploy_log( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Get the MSDeploy Log for the last MSDeploy operation. + def get_domain_ownership_identifier( + self, resource_group_name, name, domain_ownership_identifier_name, custom_headers=None, raw=False, **operation_config): + """Get domain ownership identifier for web app. - Get the MSDeploy Log for the last MSDeploy operation. + Get domain ownership identifier for web app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str + :param domain_ownership_identifier_name: Name of domain ownership + identifier. + :type domain_ownership_identifier_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: MSDeployLog or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.MSDeployLog or + :return: Identifier or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.Identifier or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_ms_deploy_log.metadata['url'] + url = self.get_domain_ownership_identifier.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'domainOwnershipIdentifierName': self._serialize.url("domain_ownership_identifier_name", domain_ownership_identifier_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -4429,7 +4201,7 @@ def get_ms_deploy_log( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -4438,125 +4210,133 @@ def get_ms_deploy_log( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('MSDeployLog', response) + deserialized = self._deserialize('Identifier', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_ms_deploy_log.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy/log'} + get_domain_ownership_identifier.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}'} - def list_functions( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """List the functions for a web site, or a deployment slot. + def create_or_update_domain_ownership_identifier( + self, resource_group_name, name, domain_ownership_identifier_name, kind=None, identifier_id=None, custom_headers=None, raw=False, **operation_config): + """Creates a domain ownership identifier for web app, or updates an + existing ownership identifier. - List the functions for a web site, or a deployment slot. + Creates a domain ownership identifier for web app, or updates an + existing ownership identifier. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of the app. :type name: str + :param domain_ownership_identifier_name: Name of domain ownership + identifier. + :type domain_ownership_identifier_name: str + :param kind: Kind of resource. + :type kind: str + :param identifier_id: String representation of the identity. + :type identifier_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of FunctionEnvelope - :rtype: - ~azure.mgmt.web.models.FunctionEnvelopePaged[~azure.mgmt.web.models.FunctionEnvelope] - :raises: :class:`CloudError` + :return: Identifier or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.Identifier or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ - def internal_paging(next_link=None, raw=False): + domain_ownership_identifier = models.Identifier(kind=kind, identifier_id=identifier_id) - if not next_link: - # Construct URL - url = self.list_functions.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) + # Construct URL + url = self.create_or_update_domain_ownership_identifier.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'domainOwnershipIdentifierName': self._serialize.url("domain_ownership_identifier_name", domain_ownership_identifier_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - else: - url = next_link - query_parameters = {} + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(domain_ownership_identifier, 'Identifier') - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) - return response + deserialized = None - # Deserialize response - deserialized = models.FunctionEnvelopePaged(internal_paging, self._deserialize.dependencies) + if response.status_code == 200: + deserialized = self._deserialize('Identifier', response) if raw: - header_dict = {} - client_raw_response = models.FunctionEnvelopePaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_functions.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions'} + create_or_update_domain_ownership_identifier.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}'} - def get_functions_admin_token( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Fetch a short lived token that can be exchanged for a master key. + def delete_domain_ownership_identifier( + self, resource_group_name, name, domain_ownership_identifier_name, custom_headers=None, raw=False, **operation_config): + """Deletes a domain ownership identifier for a web app. - Fetch a short lived token that can be exchanged for a master key. + Deletes a domain ownership identifier for a web app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str + :param domain_ownership_identifier_name: Name of domain ownership + identifier. + :type domain_ownership_identifier_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: str or ClientRawResponse if raw=true - :rtype: str or ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.get_functions_admin_token.metadata['url'] + url = self.delete_domain_ownership_identifier.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'domainOwnershipIdentifierName': self._serialize.url("domain_ownership_identifier_name", domain_ownership_identifier_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -4567,7 +4347,6 @@ def get_functions_admin_token( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -4576,55 +4355,58 @@ def get_functions_admin_token( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 204]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('str', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_domain_ownership_identifier.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}'} - return deserialized - get_functions_admin_token.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/admin/token'} - - def get_function( - self, resource_group_name, name, function_name, custom_headers=None, raw=False, **operation_config): - """Get function information by its ID for web site, or a deployment slot. + def update_domain_ownership_identifier( + self, resource_group_name, name, domain_ownership_identifier_name, kind=None, identifier_id=None, custom_headers=None, raw=False, **operation_config): + """Creates a domain ownership identifier for web app, or updates an + existing ownership identifier. - Get function information by its ID for web site, or a deployment slot. + Creates a domain ownership identifier for web app, or updates an + existing ownership identifier. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of the app. :type name: str - :param function_name: Function name. - :type function_name: str + :param domain_ownership_identifier_name: Name of domain ownership + identifier. + :type domain_ownership_identifier_name: str + :param kind: Kind of resource. + :type kind: str + :param identifier_id: String representation of the identity. + :type identifier_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: FunctionEnvelope or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.FunctionEnvelope or + :return: Identifier or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.Identifier or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ + domain_ownership_identifier = models.Identifier(kind=kind, identifier_id=identifier_id) + # Construct URL - url = self.get_function.metadata['url'] + url = self.update_domain_ownership_identifier.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'functionName': self._serialize.url("function_name", function_name, 'str'), + 'domainOwnershipIdentifierName': self._serialize.url("domain_ownership_identifier_name", domain_ownership_identifier_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -4635,6 +4417,7 @@ def get_function( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -4643,36 +4426,100 @@ def get_function( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(domain_ownership_identifier, 'Identifier') + # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('FunctionEnvelope', response) + deserialized = self._deserialize('Identifier', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_function.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}'} + update_domain_ownership_identifier.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/domainOwnershipIdentifiers/{domainOwnershipIdentifierName}'} + + def get_ms_deploy_status( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Get the status of the last MSDeploy operation. + Get the status of the last MSDeploy operation. - def _create_function_initial( - self, resource_group_name, name, function_name, function_envelope, custom_headers=None, raw=False, **operation_config): + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: MSDeployStatus or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.MSDeployStatus or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ # Construct URL - url = self.create_function.metadata['url'] + url = self.get_ms_deploy_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('MSDeployStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_ms_deploy_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy'} + + + def _create_ms_deploy_operation_initial( + self, resource_group_name, name, ms_deploy, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_ms_deploy_operation.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'functionName': self._serialize.url("function_name", function_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -4683,6 +4530,7 @@ def _create_function_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -4692,14 +4540,13 @@ def _create_function_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(function_envelope, 'FunctionEnvelope') + body_content = self._serialize.body(ms_deploy, 'MSDeploy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [201]: + if response.status_code not in [201, 409]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -4707,7 +4554,7 @@ def _create_function_initial( deserialized = None if response.status_code == 201: - deserialized = self._deserialize('FunctionEnvelope', response) + deserialized = self._deserialize('MSDeployStatus', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -4715,65 +4562,43 @@ def _create_function_initial( return deserialized - def create_function( - self, resource_group_name, name, function_name, function_envelope, custom_headers=None, raw=False, **operation_config): - """Create function for web site, or a deployment slot. + def create_ms_deploy_operation( + self, resource_group_name, name, ms_deploy, custom_headers=None, raw=False, polling=True, **operation_config): + """Invoke the MSDeploy web app extension. - Create function for web site, or a deployment slot. + Invoke the MSDeploy web app extension. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of web app. :type name: str - :param function_name: Function name. - :type function_name: str - :param function_envelope: Function details. - :type function_envelope: ~azure.mgmt.web.models.FunctionEnvelope + :param ms_deploy: Details of MSDeploy operation + :type ms_deploy: ~azure.mgmt.web.models.MSDeploy :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - FunctionEnvelope or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns MSDeployStatus or + ClientRawResponse if raw==True :rtype: - ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.FunctionEnvelope] - or ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.MSDeployStatus] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.MSDeployStatus]] :raises: :class:`CloudError` """ - raw_result = self._create_function_initial( + raw_result = self._create_ms_deploy_operation_initial( resource_group_name=resource_group_name, name=name, - function_name=function_name, - function_envelope=function_envelope, + ms_deploy=ms_deploy, custom_headers=custom_headers, raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - deserialized = self._deserialize('FunctionEnvelope', response) + deserialized = self._deserialize('MSDeployStatus', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -4781,105 +4606,41 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) - create_function.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}'} - - def delete_function( - self, resource_group_name, name, function_name, custom_headers=None, raw=False, **operation_config): - """Delete a function for web site, or a deployment slot. - - Delete a function for web site, or a deployment slot. - - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Site name. - :type name: str - :param function_name: Function name. - :type function_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ - # Construct URL - url = self.delete_function.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'functionName': self._serialize.url("function_name", function_name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [204, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - delete_function.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}'} + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_ms_deploy_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy'} - def list_function_secrets( - self, resource_group_name, name, function_name, custom_headers=None, raw=False, **operation_config): - """Get function secrets for a function in a web site, or a deployment - slot. + def get_ms_deploy_log( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Get the MSDeploy Log for the last MSDeploy operation. - Get function secrets for a function in a web site, or a deployment - slot. + Get the MSDeploy Log for the last MSDeploy operation. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of web app. :type name: str - :param function_name: Function name. - :type function_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: FunctionSecrets or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.FunctionSecrets or + :return: MSDeployLog or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.MSDeployLog or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.list_function_secrets.metadata['url'] + url = self.get_ms_deploy_log.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'functionName': self._serialize.url("function_name", function_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -4890,7 +4651,7 @@ def list_function_secrets( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -4899,10 +4660,10 @@ def list_function_secrets( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -4910,41 +4671,41 @@ def list_function_secrets( deserialized = None if response.status_code == 200: - deserialized = self._deserialize('FunctionSecrets', response) + deserialized = self._deserialize('MSDeployLog', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_function_secrets.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets'} + get_ms_deploy_log.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/extensions/MSDeploy/log'} - def list_host_name_bindings( + def list_functions( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Get hostname bindings for an app or a deployment slot. + """List the functions for a web site, or a deployment slot. - Get hostname bindings for an app or a deployment slot. + List the functions for a web site, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of HostNameBinding + :return: An iterator like instance of FunctionEnvelope :rtype: - ~azure.mgmt.web.models.HostNameBindingPaged[~azure.mgmt.web.models.HostNameBinding] + ~azure.mgmt.web.models.FunctionEnvelopePaged[~azure.mgmt.web.models.FunctionEnvelope] :raises: :class:`CloudError` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_host_name_bindings.metadata['url'] + url = self.list_functions.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -4962,7 +4723,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -4971,11 +4732,10 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -4983,47 +4743,42 @@ def internal_paging(next_link=None, raw=False): return response # Deserialize response - deserialized = models.HostNameBindingPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.FunctionEnvelopePaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.HostNameBindingPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.FunctionEnvelopePaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - list_host_name_bindings.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings'} + list_functions.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions'} - def get_host_name_binding( - self, resource_group_name, name, host_name, custom_headers=None, raw=False, **operation_config): - """Get the named hostname binding for an app (or deployment slot, if - specified). + def get_functions_admin_token( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Fetch a short lived token that can be exchanged for a master key. - Get the named hostname binding for an app (or deployment slot, if - specified). + Fetch a short lived token that can be exchanged for a master key. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Name of web app. :type name: str - :param host_name: Hostname in the hostname binding. - :type host_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: HostNameBinding or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.HostNameBinding or - ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_host_name_binding.metadata['url'] + url = self.get_functions_admin_token.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'hostName': self._serialize.url("host_name", host_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5034,7 +4789,7 @@ def get_host_name_binding( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5043,58 +4798,53 @@ def get_host_name_binding( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('HostNameBinding', response) + deserialized = self._deserialize('str', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_host_name_binding.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}'} - - def create_or_update_host_name_binding( - self, resource_group_name, name, host_name, host_name_binding, custom_headers=None, raw=False, **operation_config): - """Creates a hostname binding for an app. + get_functions_admin_token.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/admin/token'} - Creates a hostname binding for an app. + def get_function( + self, resource_group_name, name, function_name, custom_headers=None, raw=False, **operation_config): + """Get function information by its ID for web site, or a deployment slot. + + Get function information by its ID for web site, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str - :param host_name: Hostname in the hostname binding. - :type host_name: str - :param host_name_binding: Binding details. This is the JSON - representation of a HostNameBinding object. - :type host_name_binding: ~azure.mgmt.web.models.HostNameBinding + :param function_name: Function name. + :type function_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: HostNameBinding or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.HostNameBinding or + :return: FunctionEnvelope or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.FunctionEnvelope or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.create_or_update_host_name_binding.metadata['url'] + url = self.get_function.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'hostName': self._serialize.url("host_name", host_name, 'str'), + 'functionName': self._serialize.url("function_name", function_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5105,7 +4855,7 @@ def create_or_update_host_name_binding( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5113,15 +4863,11 @@ def create_or_update_host_name_binding( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(host_name_binding, 'HostNameBinding') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -5129,43 +4875,24 @@ def create_or_update_host_name_binding( deserialized = None if response.status_code == 200: - deserialized = self._deserialize('HostNameBinding', response) + deserialized = self._deserialize('FunctionEnvelope', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - create_or_update_host_name_binding.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}'} - - def delete_host_name_binding( - self, resource_group_name, name, host_name, custom_headers=None, raw=False, **operation_config): - """Deletes a hostname binding for an app. + get_function.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}'} - Deletes a hostname binding for an app. - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Name of the app. - :type name: str - :param host_name: Hostname in the hostname binding. - :type host_name: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ + def _create_function_initial( + self, resource_group_name, name, function_name, function_envelope, custom_headers=None, raw=False, **operation_config): # Construct URL - url = self.delete_host_name_binding.metadata['url'] + url = self.create_function.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'hostName': self._serialize.url("host_name", host_name, 'str'), + 'functionName': self._serialize.url("function_name", function_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5176,6 +4903,7 @@ def delete_host_name_binding( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -5184,54 +4912,112 @@ def delete_host_name_binding( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(function_envelope, 'FunctionEnvelope') + # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [201]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('FunctionEnvelope', response) if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - delete_host_name_binding.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}'} - def get_hybrid_connection( - self, resource_group_name, name, namespace_name, relay_name, custom_headers=None, raw=False, **operation_config): - """Retrieves a specific Service Bus Hybrid Connection used by this Web - App. + return deserialized - Retrieves a specific Service Bus Hybrid Connection used by this Web - App. + def create_function( + self, resource_group_name, name, function_name, function_envelope, custom_headers=None, raw=False, polling=True, **operation_config): + """Create function for web site, or a deployment slot. + + Create function for web site, or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: The name of the web app. + :param name: Site name. :type name: str - :param namespace_name: The namespace for this hybrid connection. - :type namespace_name: str - :param relay_name: The relay name for this hybrid connection. - :type relay_name: str + :param function_name: Function name. + :type function_name: str + :param function_envelope: Function details. + :type function_envelope: ~azure.mgmt.web.models.FunctionEnvelope + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FunctionEnvelope or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.FunctionEnvelope] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.FunctionEnvelope]] + :raises: + :class:`DefaultErrorResponseException` + """ + raw_result = self._create_function_initial( + resource_group_name=resource_group_name, + name=name, + function_name=function_name, + function_envelope=function_envelope, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FunctionEnvelope', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_function.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}'} + + def delete_function( + self, resource_group_name, name, function_name, custom_headers=None, raw=False, **operation_config): + """Delete a function for web site, or a deployment slot. + + Delete a function for web site, or a deployment slot. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Site name. + :type name: str + :param function_name: Function name. + :type function_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: HybridConnection or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.HybridConnection or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.get_hybrid_connection.metadata['url'] + url = self.delete_function.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), - 'relayName': self._serialize.url("relay_name", relay_name, 'str'), + 'functionName': self._serialize.url("function_name", function_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5242,7 +5028,6 @@ def get_hybrid_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5251,60 +5036,51 @@ def get_hybrid_connection( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [204, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('HybridConnection', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_function.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}'} - return deserialized - get_hybrid_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}'} - - def create_or_update_hybrid_connection( - self, resource_group_name, name, namespace_name, relay_name, connection_envelope, custom_headers=None, raw=False, **operation_config): - """Creates a new Hybrid Connection using a Service Bus relay. + def list_function_secrets( + self, resource_group_name, name, function_name, custom_headers=None, raw=False, **operation_config): + """Get function secrets for a function in a web site, or a deployment + slot. - Creates a new Hybrid Connection using a Service Bus relay. + Get function secrets for a function in a web site, or a deployment + slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: The name of the web app. + :param name: Site name. :type name: str - :param namespace_name: The namespace for this hybrid connection. - :type namespace_name: str - :param relay_name: The relay name for this hybrid connection. - :type relay_name: str - :param connection_envelope: The details of the hybrid connection. - :type connection_envelope: ~azure.mgmt.web.models.HybridConnection + :param function_name: Function name. + :type function_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: HybridConnection or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.HybridConnection or + :return: FunctionSecrets or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.FunctionSecrets or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.create_or_update_hybrid_connection.metadata['url'] + url = self.list_function_secrets.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), - 'relayName': self._serialize.url("relay_name", relay_name, 'str'), + 'functionName': self._serialize.url("function_name", function_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5315,7 +5091,7 @@ def create_or_update_hybrid_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5323,128 +5099,129 @@ def create_or_update_hybrid_connection( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(connection_envelope, 'HybridConnection') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('HybridConnection', response) + deserialized = self._deserialize('FunctionSecrets', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - create_or_update_hybrid_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}'} + list_function_secrets.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets'} - def delete_hybrid_connection( - self, resource_group_name, name, namespace_name, relay_name, custom_headers=None, raw=False, **operation_config): - """Removes a Hybrid Connection from this site. + def list_host_name_bindings( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Get hostname bindings for an app or a deployment slot. - Removes a Hybrid Connection from this site. + Get hostname bindings for an app or a deployment slot. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: The name of the web app. + :param name: Name of the app. :type name: str - :param namespace_name: The namespace for this hybrid connection. - :type namespace_name: str - :param relay_name: The relay name for this hybrid connection. - :type relay_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: An iterator like instance of HostNameBinding + :rtype: + ~azure.mgmt.web.models.HostNameBindingPaged[~azure.mgmt.web.models.HostNameBinding] + :raises: + :class:`DefaultErrorResponseException` """ - # Construct URL - url = self.delete_hybrid_connection.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), - 'relayName': self._serialize.url("relay_name", relay_name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + def internal_paging(next_link=None, raw=False): - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + if not next_link: + # Construct URL + url = self.list_host_name_bindings.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.HostNameBindingPaged(internal_paging, self._deserialize.dependencies) if raw: - client_raw_response = ClientRawResponse(None, response) + header_dict = {} + client_raw_response = models.HostNameBindingPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response - delete_hybrid_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}'} - def update_hybrid_connection( - self, resource_group_name, name, namespace_name, relay_name, connection_envelope, custom_headers=None, raw=False, **operation_config): - """Creates a new Hybrid Connection using a Service Bus relay. + return deserialized + list_host_name_bindings.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings'} - Creates a new Hybrid Connection using a Service Bus relay. + def get_host_name_binding( + self, resource_group_name, name, host_name, custom_headers=None, raw=False, **operation_config): + """Get the named hostname binding for an app (or deployment slot, if + specified). + + Get the named hostname binding for an app (or deployment slot, if + specified). :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: The name of the web app. + :param name: Name of the app. :type name: str - :param namespace_name: The namespace for this hybrid connection. - :type namespace_name: str - :param relay_name: The relay name for this hybrid connection. - :type relay_name: str - :param connection_envelope: The details of the hybrid connection. - :type connection_envelope: ~azure.mgmt.web.models.HybridConnection + :param host_name: Hostname in the hostname binding. + :type host_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: HybridConnection or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.HybridConnection or + :return: HostNameBinding or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.HostNameBinding or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.update_hybrid_connection.metadata['url'] + url = self.get_host_name_binding.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), - 'relayName': self._serialize.url("relay_name", relay_name, 'str'), + 'hostName': self._serialize.url("host_name", host_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5455,7 +5232,7 @@ def update_hybrid_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5463,63 +5240,58 @@ def update_hybrid_connection( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(connection_envelope, 'HybridConnection') - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('HybridConnection', response) + deserialized = self._deserialize('HostNameBinding', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_hybrid_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}'} + get_host_name_binding.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}'} - def list_hybrid_connection_keys( - self, resource_group_name, name, namespace_name, relay_name, custom_headers=None, raw=False, **operation_config): - """Gets the send key name and value for a Hybrid Connection. + def create_or_update_host_name_binding( + self, resource_group_name, name, host_name, host_name_binding, custom_headers=None, raw=False, **operation_config): + """Creates a hostname binding for an app. - Gets the send key name and value for a Hybrid Connection. + Creates a hostname binding for an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: The name of the web app. + :param name: Name of the app. :type name: str - :param namespace_name: The namespace for this hybrid connection. - :type namespace_name: str - :param relay_name: The relay name for this hybrid connection. - :type relay_name: str + :param host_name: Hostname in the hostname binding. + :type host_name: str + :param host_name_binding: Binding details. This is the JSON + representation of a HostNameBinding object. + :type host_name_binding: ~azure.mgmt.web.models.HostNameBinding :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: HybridConnectionKey or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.HybridConnectionKey or + :return: HostNameBinding or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.HostNameBinding or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.list_hybrid_connection_keys.metadata['url'] + url = self.create_or_update_host_name_binding.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), - 'relayName': self._serialize.url("relay_name", relay_name, 'str'), + 'hostName': self._serialize.url("host_name", host_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5530,6 +5302,7 @@ def list_hybrid_connection_keys( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -5538,53 +5311,56 @@ def list_hybrid_connection_keys( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(host_name_binding, 'HostNameBinding') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('HybridConnectionKey', response) + deserialized = self._deserialize('HostNameBinding', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_hybrid_connection_keys.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}/listKeys'} + create_or_update_host_name_binding.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}'} - def list_hybrid_connections( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Retrieves all Service Bus Hybrid Connections used by this Web App. + def delete_host_name_binding( + self, resource_group_name, name, host_name, custom_headers=None, raw=False, **operation_config): + """Deletes a hostname binding for an app. - Retrieves all Service Bus Hybrid Connections used by this Web App. + Deletes a hostname binding for an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: The name of the web app. + :param name: Name of the app. :type name: str + :param host_name: Hostname in the hostname binding. + :type host_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: HybridConnection or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.HybridConnection or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.list_hybrid_connections.metadata['url'] + url = self.delete_host_name_binding.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'hostName': self._serialize.url("host_name", host_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5595,7 +5371,6 @@ def list_hybrid_connections( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5604,54 +5379,54 @@ def list_hybrid_connections( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 204]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('HybridConnection', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_host_name_binding.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings/{hostName}'} - return deserialized - list_hybrid_connections.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionRelays'} - - def list_relay_service_connections( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Gets hybrid connections configured for an app (or deployment slot, if - specified). + def get_hybrid_connection( + self, resource_group_name, name, namespace_name, relay_name, custom_headers=None, raw=False, **operation_config): + """Retrieves a specific Service Bus Hybrid Connection used by this Web + App. - Gets hybrid connections configured for an app (or deployment slot, if - specified). + Retrieves a specific Service Bus Hybrid Connection used by this Web + App. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: The name of the web app. :type name: str + :param namespace_name: The namespace for this hybrid connection. + :type namespace_name: str + :param relay_name: The relay name for this hybrid connection. + :type relay_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or + :return: HybridConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.HybridConnection or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.list_relay_service_connections.metadata['url'] + url = self.get_hybrid_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), + 'relayName': self._serialize.url("relay_name", relay_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5662,7 +5437,7 @@ def list_relay_service_connections( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5671,55 +5446,59 @@ def list_relay_service_connections( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('RelayServiceConnectionEntity', response) + deserialized = self._deserialize('HybridConnection', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_relay_service_connections.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection'} + get_hybrid_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}'} - def get_relay_service_connection( - self, resource_group_name, name, entity_name, custom_headers=None, raw=False, **operation_config): - """Gets a hybrid connection configuration by its name. + def create_or_update_hybrid_connection( + self, resource_group_name, name, namespace_name, relay_name, connection_envelope, custom_headers=None, raw=False, **operation_config): + """Creates a new Hybrid Connection using a Service Bus relay. - Gets a hybrid connection configuration by its name. + Creates a new Hybrid Connection using a Service Bus relay. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: The name of the web app. :type name: str - :param entity_name: Name of the hybrid connection. - :type entity_name: str + :param namespace_name: The namespace for this hybrid connection. + :type namespace_name: str + :param relay_name: The relay name for this hybrid connection. + :type relay_name: str + :param connection_envelope: The details of the hybrid connection. + :type connection_envelope: ~azure.mgmt.web.models.HybridConnection :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or + :return: HybridConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.HybridConnection or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_relay_service_connection.metadata['url'] + url = self.create_or_update_hybrid_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'entityName': self._serialize.url("entity_name", entity_name, 'str'), + 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), + 'relayName': self._serialize.url("relay_name", relay_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5730,6 +5509,7 @@ def get_relay_service_connection( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -5738,62 +5518,59 @@ def get_relay_service_connection( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(connection_envelope, 'HybridConnection') + # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('RelayServiceConnectionEntity', response) + deserialized = self._deserialize('HybridConnection', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_relay_service_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}'} + create_or_update_hybrid_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}'} - def create_or_update_relay_service_connection( - self, resource_group_name, name, entity_name, connection_envelope, custom_headers=None, raw=False, **operation_config): - """Creates a new hybrid connection configuration (PUT), or updates an - existing one (PATCH). + def delete_hybrid_connection( + self, resource_group_name, name, namespace_name, relay_name, custom_headers=None, raw=False, **operation_config): + """Removes a Hybrid Connection from this site. - Creates a new hybrid connection configuration (PUT), or updates an - existing one (PATCH). + Removes a Hybrid Connection from this site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: The name of the web app. :type name: str - :param entity_name: Name of the hybrid connection configuration. - :type entity_name: str - :param connection_envelope: Details of the hybrid connection - configuration. - :type connection_envelope: - ~azure.mgmt.web.models.RelayServiceConnectionEntity + :param namespace_name: The namespace for this hybrid connection. + :type namespace_name: str + :param relay_name: The relay name for this hybrid connection. + :type relay_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.create_or_update_relay_service_connection.metadata['url'] + url = self.delete_hybrid_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'entityName': self._serialize.url("entity_name", entity_name, 'str'), + 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), + 'relayName': self._serialize.url("relay_name", relay_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5804,7 +5581,6 @@ def create_or_update_relay_service_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5812,59 +5588,55 @@ def create_or_update_relay_service_connection( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(connection_envelope, 'RelayServiceConnectionEntity') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('RelayServiceConnectionEntity', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_hybrid_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}'} - return deserialized - create_or_update_relay_service_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}'} - - def delete_relay_service_connection( - self, resource_group_name, name, entity_name, custom_headers=None, raw=False, **operation_config): - """Deletes a relay service connection by its name. + def update_hybrid_connection( + self, resource_group_name, name, namespace_name, relay_name, connection_envelope, custom_headers=None, raw=False, **operation_config): + """Creates a new Hybrid Connection using a Service Bus relay. - Deletes a relay service connection by its name. + Creates a new Hybrid Connection using a Service Bus relay. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: The name of the web app. :type name: str - :param entity_name: Name of the hybrid connection configuration. - :type entity_name: str + :param namespace_name: The namespace for this hybrid connection. + :type namespace_name: str + :param relay_name: The relay name for this hybrid connection. + :type relay_name: str + :param connection_envelope: The details of the hybrid connection. + :type connection_envelope: ~azure.mgmt.web.models.HybridConnection :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: HybridConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.HybridConnection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.delete_relay_service_connection.metadata['url'] + url = self.update_hybrid_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'entityName': self._serialize.url("entity_name", entity_name, 'str'), + 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), + 'relayName': self._serialize.url("relay_name", relay_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5875,6 +5647,7 @@ def delete_relay_service_connection( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -5883,55 +5656,61 @@ def delete_relay_service_connection( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(connection_envelope, 'HybridConnection') + # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('HybridConnection', response) if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - delete_relay_service_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}'} - def update_relay_service_connection( - self, resource_group_name, name, entity_name, connection_envelope, custom_headers=None, raw=False, **operation_config): - """Creates a new hybrid connection configuration (PUT), or updates an - existing one (PATCH). + return deserialized + update_hybrid_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}'} - Creates a new hybrid connection configuration (PUT), or updates an - existing one (PATCH). + def list_hybrid_connection_keys( + self, resource_group_name, name, namespace_name, relay_name, custom_headers=None, raw=False, **operation_config): + """Gets the send key name and value for a Hybrid Connection. + + Gets the send key name and value for a Hybrid Connection. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: The name of the web app. :type name: str - :param entity_name: Name of the hybrid connection configuration. - :type entity_name: str - :param connection_envelope: Details of the hybrid connection - configuration. - :type connection_envelope: - ~azure.mgmt.web.models.RelayServiceConnectionEntity + :param namespace_name: The namespace for this hybrid connection. + :type namespace_name: str + :param relay_name: The relay name for this hybrid connection. + :type relay_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or + :return: HybridConnectionKey or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.HybridConnectionKey or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.update_relay_service_connection.metadata['url'] + url = self.list_hybrid_connection_keys.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'entityName': self._serialize.url("entity_name", entity_name, 'str'), + 'namespaceName': self._serialize.url("namespace_name", namespace_name, 'str'), + 'relayName': self._serialize.url("relay_name", relay_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -5942,7 +5721,7 @@ def update_relay_service_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -5950,134 +5729,118 @@ def update_relay_service_connection( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(connection_envelope, 'RelayServiceConnectionEntity') - # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('RelayServiceConnectionEntity', response) + deserialized = self._deserialize('HybridConnectionKey', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_relay_service_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}'} + list_hybrid_connection_keys.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionNamespaces/{namespaceName}/relays/{relayName}/listKeys'} - def list_instance_identifiers( + def list_hybrid_connections( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Gets all scale-out instances of an app. + """Retrieves all Service Bus Hybrid Connections used by this Web App. - Gets all scale-out instances of an app. + Retrieves all Service Bus Hybrid Connections used by this Web App. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: The name of the web app. :type name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of SiteInstance - :rtype: - ~azure.mgmt.web.models.SiteInstancePaged[~azure.mgmt.web.models.SiteInstance] - :raises: :class:`CloudError` + :return: HybridConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.HybridConnection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.list_instance_identifiers.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + # Construct URL + url = self.list_hybrid_connections.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - else: - url = next_link - query_parameters = {} + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) - return response + deserialized = None - # Deserialize response - deserialized = models.SiteInstancePaged(internal_paging, self._deserialize.dependencies) + if response.status_code == 200: + deserialized = self._deserialize('HybridConnection', response) if raw: - header_dict = {} - client_raw_response = models.SiteInstancePaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_instance_identifiers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances'} + list_hybrid_connections.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridConnectionRelays'} - def get_instance_ms_deploy_status( - self, resource_group_name, name, instance_id, custom_headers=None, raw=False, **operation_config): - """Get the status of the last MSDeploy operation. + def list_relay_service_connections( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Gets hybrid connections configured for an app (or deployment slot, if + specified). - Get the status of the last MSDeploy operation. + Gets hybrid connections configured for an app (or deployment slot, if + specified). :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param instance_id: ID of web app instance. - :type instance_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: MSDeployStatus or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.MSDeployStatus or + :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_instance_ms_deploy_status.metadata['url'] + url = self.list_relay_service_connections.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -6088,7 +5851,7 @@ def get_instance_ms_deploy_status( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6097,35 +5860,54 @@ def get_instance_ms_deploy_status( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('MSDeployStatus', response) + deserialized = self._deserialize('RelayServiceConnectionEntity', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_instance_ms_deploy_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy'} + list_relay_service_connections.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection'} + + def get_relay_service_connection( + self, resource_group_name, name, entity_name, custom_headers=None, raw=False, **operation_config): + """Gets a hybrid connection configuration by its name. + Gets a hybrid connection configuration by its name. - def _create_instance_ms_deploy_operation_initial( - self, resource_group_name, name, instance_id, ms_deploy, custom_headers=None, raw=False, **operation_config): + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param entity_name: Name of the hybrid connection. + :type entity_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ # Construct URL - url = self.create_instance_ms_deploy_operation.metadata['url'] + url = self.get_relay_service_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'entityName': self._serialize.url("entity_name", entity_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -6136,7 +5918,7 @@ def _create_instance_ms_deploy_operation_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6144,133 +5926,130 @@ def _create_instance_ms_deploy_operation_initial( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(ms_deploy, 'MSDeploy') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [201, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None - if response.status_code == 201: - deserialized = self._deserialize('MSDeployStatus', response) + if response.status_code == 200: + deserialized = self._deserialize('RelayServiceConnectionEntity', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized + get_relay_service_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}'} - def create_instance_ms_deploy_operation( - self, resource_group_name, name, instance_id, ms_deploy, custom_headers=None, raw=False, **operation_config): - """Invoke the MSDeploy web app extension. + def create_or_update_relay_service_connection( + self, resource_group_name, name, entity_name, connection_envelope, custom_headers=None, raw=False, **operation_config): + """Creates a new hybrid connection configuration (PUT), or updates an + existing one (PATCH). - Invoke the MSDeploy web app extension. + Creates a new hybrid connection configuration (PUT), or updates an + existing one (PATCH). :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param instance_id: ID of web app instance. - :type instance_id: str - :param ms_deploy: Details of MSDeploy operation - :type ms_deploy: ~azure.mgmt.web.models.MSDeploy + :param entity_name: Name of the hybrid connection configuration. + :type entity_name: str + :param connection_envelope: Details of the hybrid connection + configuration. + :type connection_envelope: + ~azure.mgmt.web.models.RelayServiceConnectionEntity :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response - :return: An instance of AzureOperationPoller that returns - MSDeployStatus or ClientRawResponse if raw=true - :rtype: - ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.MSDeployStatus] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ - raw_result = self._create_instance_ms_deploy_operation_initial( - resource_group_name=resource_group_name, - name=name, - instance_id=instance_id, - ms_deploy=ms_deploy, - custom_headers=custom_headers, - raw=True, - **operation_config - ) - if raw: - return raw_result + # Construct URL + url = self.create_or_update_relay_service_connection.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'entityName': self._serialize.url("entity_name", entity_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - # Construct and send request - def long_running_send(): - return raw_result.response + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - def get_long_running_status(status_link, headers=None): + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) + # Construct body + body_content = self._serialize.body(connection_envelope, 'RelayServiceConnectionEntity') - def get_long_running_output(response): + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [201, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) - deserialized = self._deserialize('MSDeployStatus', response) + deserialized = None - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response + if response.status_code == 200: + deserialized = self._deserialize('RelayServiceConnectionEntity', response) - return deserialized + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response - long_running_operation_timeout = operation_config.get( - 'long_running_operation_timeout', - self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) - create_instance_ms_deploy_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy'} + return deserialized + create_or_update_relay_service_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}'} - def get_instance_ms_deploy_log( - self, resource_group_name, name, instance_id, custom_headers=None, raw=False, **operation_config): - """Get the MSDeploy Log for the last MSDeploy operation. + def delete_relay_service_connection( + self, resource_group_name, name, entity_name, custom_headers=None, raw=False, **operation_config): + """Deletes a relay service connection by its name. - Get the MSDeploy Log for the last MSDeploy operation. + Deletes a relay service connection by its name. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param instance_id: ID of web app instance. - :type instance_id: str + :param entity_name: Name of the hybrid connection configuration. + :type entity_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: MSDeployLog or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.MSDeployLog or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.get_instance_ms_deploy_log.metadata['url'] + url = self.delete_relay_service_connection.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'entityName': self._serialize.url("entity_name", entity_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -6281,7 +6060,6 @@ def get_instance_ms_deploy_log( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6290,62 +6068,126 @@ def get_instance_ms_deploy_log( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete_relay_service_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}'} + + def update_relay_service_connection( + self, resource_group_name, name, entity_name, connection_envelope, custom_headers=None, raw=False, **operation_config): + """Creates a new hybrid connection configuration (PUT), or updates an + existing one (PATCH). + + Creates a new hybrid connection configuration (PUT), or updates an + existing one (PATCH). + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param entity_name: Name of the hybrid connection configuration. + :type entity_name: str + :param connection_envelope: Details of the hybrid connection + configuration. + :type connection_envelope: + ~azure.mgmt.web.models.RelayServiceConnectionEntity + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.update_relay_service_connection.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'entityName': self._serialize.url("entity_name", entity_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(connection_envelope, 'RelayServiceConnectionEntity') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + deserialized = None if response.status_code == 200: - deserialized = self._deserialize('MSDeployLog', response) + deserialized = self._deserialize('RelayServiceConnectionEntity', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_instance_ms_deploy_log.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy/log'} + update_relay_service_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hybridconnection/{entityName}'} - def list_instance_processes( - self, resource_group_name, name, instance_id, custom_headers=None, raw=False, **operation_config): - """Get list of processes for a web site, or a deployment slot, or for a - specific scaled-out instance in a web site. + def list_instance_identifiers( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Gets all scale-out instances of an app. - Get list of processes for a web site, or a deployment slot, or for a - specific scaled-out instance in a web site. + Gets all scale-out instances of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of the app. :type name: str - :param instance_id: ID of a specific scaled-out instance. This is the - value of the name property in the JSON response from "GET - api/sites/{siteName}/instances". - :type instance_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of ProcessInfo + :return: An iterator like instance of SiteInstance :rtype: - ~azure.mgmt.web.models.ProcessInfoPaged[~azure.mgmt.web.models.ProcessInfo] - :raises: :class:`CloudError` + ~azure.mgmt.web.models.SiteInstancePaged[~azure.mgmt.web.models.SiteInstance] + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_instance_processes.metadata['url'] + url = self.list_instance_identifiers.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -6360,7 +6202,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6369,63 +6211,54 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) return response # Deserialize response - deserialized = models.ProcessInfoPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.SiteInstancePaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.ProcessInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.SiteInstancePaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - list_instance_processes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes'} + list_instance_identifiers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances'} - def get_instance_process( - self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, **operation_config): - """Get process information by its ID for a specific scaled-out instance in - a web site. + def get_instance_ms_deploy_status( + self, resource_group_name, name, instance_id, custom_headers=None, raw=False, **operation_config): + """Get the status of the last MSDeploy operation. - Get process information by its ID for a specific scaled-out instance in - a web site. + Get the status of the last MSDeploy operation. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of web app. :type name: str - :param process_id: PID. - :type process_id: str - :param instance_id: ID of a specific scaled-out instance. This is the - value of the name property in the JSON response from "GET - api/sites/{siteName}/instances". + :param instance_id: ID of web app instance. :type instance_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: ProcessInfo or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.ProcessInfo or + :return: MSDeployStatus or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.MSDeployStatus or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_instance_process.metadata['url'] + url = self.get_instance_ms_deploy_status.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'processId': self._serialize.url("process_id", process_id, 'str'), 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -6437,7 +6270,7 @@ def get_instance_process( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6446,60 +6279,32 @@ def get_instance_process( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('ProcessInfo', response) + deserialized = self._deserialize('MSDeployStatus', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_instance_process.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}'} + get_instance_ms_deploy_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy'} - def delete_instance_process( - self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, **operation_config): - """Terminate a process by its ID for a web site, or a deployment slot, or - specific scaled-out instance in a web site. - Terminate a process by its ID for a web site, or a deployment slot, or - specific scaled-out instance in a web site. - - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Site name. - :type name: str - :param process_id: PID. - :type process_id: str - :param instance_id: ID of a specific scaled-out instance. This is the - value of the name property in the JSON response from "GET - api/sites/{siteName}/instances". - :type instance_id: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ + def _create_instance_ms_deploy_operation_initial( + self, resource_group_name, name, instance_id, ms_deploy, custom_headers=None, raw=False, **operation_config): # Construct URL - url = self.delete_instance_process.metadata['url'] + url = self.create_instance_ms_deploy_operation.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'processId': self._serialize.url("process_id", process_id, 'str'), 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -6511,6 +6316,7 @@ def delete_instance_process( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -6519,59 +6325,113 @@ def delete_instance_process( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(ms_deploy, 'MSDeploy') + # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [204, 404]: + if response.status_code not in [201, 409]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('MSDeployStatus', response) + if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - delete_instance_process.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}'} - def get_instance_process_dump( - self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, callback=None, **operation_config): - """Get a memory dump of a process by its ID for a specific scaled-out - instance in a web site. + return deserialized - Get a memory dump of a process by its ID for a specific scaled-out - instance in a web site. + def create_instance_ms_deploy_operation( + self, resource_group_name, name, instance_id, ms_deploy, custom_headers=None, raw=False, polling=True, **operation_config): + """Invoke the MSDeploy web app extension. + + Invoke the MSDeploy web app extension. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Site name. + :param name: Name of web app. :type name: str - :param process_id: PID. - :type process_id: str - :param instance_id: ID of a specific scaled-out instance. This is the - value of the name property in the JSON response from "GET - api/sites/{siteName}/instances". + :param instance_id: ID of web app instance. + :type instance_id: str + :param ms_deploy: Details of MSDeploy operation + :type ms_deploy: ~azure.mgmt.web.models.MSDeploy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns MSDeployStatus or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.MSDeployStatus] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.MSDeployStatus]] + :raises: :class:`CloudError` + """ + raw_result = self._create_instance_ms_deploy_operation_initial( + resource_group_name=resource_group_name, + name=name, + instance_id=instance_id, + ms_deploy=ms_deploy, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('MSDeployStatus', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_instance_ms_deploy_operation.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy'} + + def get_instance_ms_deploy_log( + self, resource_group_name, name, instance_id, custom_headers=None, raw=False, **operation_config): + """Get the MSDeploy Log for the last MSDeploy operation. + + Get the MSDeploy Log for the last MSDeploy operation. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app. + :type name: str + :param instance_id: ID of web app instance. :type instance_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response - :param callback: When specified, will be called with each chunk of - data that is streamed. The callback should take two arguments, the - bytes of the current chunk of data and the response object. If the - data is uploading, response will be None. - :type callback: Callable[Bytes, response=None] :param operation_config: :ref:`Operation configuration overrides`. - :return: object or ClientRawResponse if raw=true - :rtype: Generator or ~msrest.pipeline.ClientRawResponse + :return: MSDeployLog or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.MSDeployLog or + ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.get_instance_process_dump.metadata['url'] + url = self.get_instance_ms_deploy_log.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'processId': self._serialize.url("process_id", process_id, 'str'), 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -6583,7 +6443,7 @@ def get_instance_process_dump( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6592,8 +6452,8 @@ def get_instance_process_dump( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -6603,30 +6463,28 @@ def get_instance_process_dump( deserialized = None if response.status_code == 200: - deserialized = self._client.stream_download(response, callback) + deserialized = self._deserialize('MSDeployLog', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_instance_process_dump.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/dump'} + get_instance_ms_deploy_log.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/extensions/MSDeploy/log'} - def list_instance_process_modules( - self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, **operation_config): - """List module information for a process by its ID for a specific - scaled-out instance in a web site. + def list_instance_processes( + self, resource_group_name, name, instance_id, custom_headers=None, raw=False, **operation_config): + """Get list of processes for a web site, or a deployment slot, or for a + specific scaled-out instance in a web site. - List module information for a process by its ID for a specific - scaled-out instance in a web site. + Get list of processes for a web site, or a deployment slot, or for a + specific scaled-out instance in a web site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Site name. :type name: str - :param process_id: PID. - :type process_id: str :param instance_id: ID of a specific scaled-out instance. This is the value of the name property in the JSON response from "GET api/sites/{siteName}/instances". @@ -6636,20 +6494,19 @@ def list_instance_process_modules( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of ProcessModuleInfo + :return: An iterator like instance of ProcessInfo :rtype: - ~azure.mgmt.web.models.ProcessModuleInfoPaged[~azure.mgmt.web.models.ProcessModuleInfo] + ~azure.mgmt.web.models.ProcessInfoPaged[~azure.mgmt.web.models.ProcessInfo] :raises: :class:`CloudError` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_instance_process_modules.metadata['url'] + url = self.list_instance_processes.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'processId': self._serialize.url("process_id", process_id, 'str'), 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -6665,7 +6522,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6674,9 +6531,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -6686,18 +6542,18 @@ def internal_paging(next_link=None, raw=False): return response # Deserialize response - deserialized = models.ProcessModuleInfoPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.ProcessInfoPaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.ProcessModuleInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.ProcessInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - list_instance_process_modules.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules'} + list_instance_processes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes'} - def get_instance_process_module( - self, resource_group_name, name, process_id, base_address, instance_id, custom_headers=None, raw=False, **operation_config): + def get_instance_process( + self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, **operation_config): """Get process information by its ID for a specific scaled-out instance in a web site. @@ -6711,8 +6567,6 @@ def get_instance_process_module( :type name: str :param process_id: PID. :type process_id: str - :param base_address: Module base address. - :type base_address: str :param instance_id: ID of a specific scaled-out instance. This is the value of the name property in the JSON response from "GET api/sites/{siteName}/instances". @@ -6722,18 +6576,17 @@ def get_instance_process_module( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: ProcessModuleInfo or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.ProcessModuleInfo or + :return: ProcessInfo or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.ProcessInfo or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.get_instance_process_module.metadata['url'] + url = self.get_instance_process.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), 'processId': self._serialize.url("process_id", process_id, 'str'), - 'baseAddress': self._serialize.url("base_address", base_address, 'str'), 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -6745,7 +6598,7 @@ def get_instance_process_module( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6754,8 +6607,8 @@ def get_instance_process_module( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -6765,22 +6618,22 @@ def get_instance_process_module( deserialized = None if response.status_code == 200: - deserialized = self._deserialize('ProcessModuleInfo', response) + deserialized = self._deserialize('ProcessInfo', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_instance_process_module.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules/{baseAddress}'} + get_instance_process.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}'} - def list_instance_process_threads( + def delete_instance_process( self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, **operation_config): - """List the threads in a process by its ID for a specific scaled-out - instance in a web site. + """Terminate a process by its ID for a web site, or a deployment slot, or + specific scaled-out instance in a web site. - List the threads in a process by its ID for a specific scaled-out - instance in a web site. + Terminate a process by its ID for a web site, or a deployment slot, or + specific scaled-out instance in a web site. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -6798,73 +6651,55 @@ def list_instance_process_threads( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of ProcessThreadInfo - :rtype: - ~azure.mgmt.web.models.ProcessThreadInfoPaged[~azure.mgmt.web.models.ProcessThreadInfo] + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.list_instance_process_threads.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'processId': self._serialize.url("process_id", process_id, 'str'), - 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - else: - url = next_link - query_parameters = {} - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct URL + url = self.delete_instance_process.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'processId': self._serialize.url("process_id", process_id, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - return response + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - # Deserialize response - deserialized = models.ProcessThreadInfoPaged(internal_paging, self._deserialize.dependencies) + if response.status_code not in [204, 404]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp if raw: - header_dict = {} - client_raw_response = models.ProcessThreadInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_instance_process.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}'} - return deserialized - list_instance_process_threads.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads'} - - def get_instance_process_thread( - self, resource_group_name, name, process_id, thread_id, instance_id, custom_headers=None, raw=False, **operation_config): - """Get thread information by Thread ID for a specific process, in a - specific scaled-out instance in a web site. + def get_instance_process_dump( + self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, callback=None, **operation_config): + """Get a memory dump of a process by its ID for a specific scaled-out + instance in a web site. - Get thread information by Thread ID for a specific process, in a - specific scaled-out instance in a web site. + Get a memory dump of a process by its ID for a specific scaled-out + instance in a web site. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -6873,8 +6708,6 @@ def get_instance_process_thread( :type name: str :param process_id: PID. :type process_id: str - :param thread_id: TID. - :type thread_id: str :param instance_id: ID of a specific scaled-out instance. This is the value of the name property in the JSON response from "GET api/sites/{siteName}/instances". @@ -6882,20 +6715,23 @@ def get_instance_process_thread( :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response + :param callback: When specified, will be called with each chunk of + data that is streamed. The callback should take two arguments, the + bytes of the current chunk of data and the response object. If the + data is uploading, response will be None. + :type callback: Callable[Bytes, response=None] :param operation_config: :ref:`Operation configuration overrides`. - :return: ProcessThreadInfo or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.ProcessThreadInfo or - ~msrest.pipeline.ClientRawResponse + :return: object or ClientRawResponse if raw=true + :rtype: Generator or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.get_instance_process_thread.metadata['url'] + url = self.get_instance_process_dump.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), 'processId': self._serialize.url("process_id", process_id, 'str'), - 'threadId': self._serialize.url("thread_id", thread_id, 'str'), 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -6907,7 +6743,7 @@ def get_instance_process_thread( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -6916,8 +6752,8 @@ def get_instance_process_thread( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -6927,108 +6763,137 @@ def get_instance_process_thread( deserialized = None if response.status_code == 200: - deserialized = self._deserialize('ProcessThreadInfo', response) + deserialized = self._client.stream_download(response, callback) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_instance_process_thread.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads/{threadId}'} + get_instance_process_dump.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/dump'} - def is_cloneable( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Shows whether an app can be cloned to another resource group or - subscription. + def list_instance_process_modules( + self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, **operation_config): + """List module information for a process by its ID for a specific + scaled-out instance in a web site. - Shows whether an app can be cloned to another resource group or - subscription. + List module information for a process by its ID for a specific + scaled-out instance in a web site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str + :param process_id: PID. + :type process_id: str + :param instance_id: ID of a specific scaled-out instance. This is the + value of the name property in the JSON response from "GET + api/sites/{siteName}/instances". + :type instance_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: SiteCloneability or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteCloneability or - ~msrest.pipeline.ClientRawResponse + :return: An iterator like instance of ProcessModuleInfo + :rtype: + ~azure.mgmt.web.models.ProcessModuleInfoPaged[~azure.mgmt.web.models.ProcessModuleInfo] :raises: :class:`CloudError` """ - # Construct URL - url = self.is_cloneable.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) + def internal_paging(next_link=None, raw=False): - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if not next_link: + # Construct URL + url = self.list_instance_process_modules.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'processId': self._serialize.url("process_id", process_id, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + else: + url = next_link + query_parameters = {} - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - deserialized = None + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code == 200: - deserialized = self._deserialize('SiteCloneability', response) + if response.status_code not in [200, 404]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + deserialized = models.ProcessModuleInfoPaged(internal_paging, self._deserialize.dependencies) if raw: - client_raw_response = ClientRawResponse(deserialized, response) + header_dict = {} + client_raw_response = models.ProcessModuleInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - is_cloneable.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/iscloneable'} + list_instance_process_modules.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules'} - def list_sync_function_triggers( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """This is to allow calling via powershell and ARM template. + def get_instance_process_module( + self, resource_group_name, name, process_id, base_address, instance_id, custom_headers=None, raw=False, **operation_config): + """Get process information by its ID for a specific scaled-out instance in + a web site. - This is to allow calling via powershell and ARM template. + Get process information by its ID for a specific scaled-out instance in + a web site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str + :param process_id: PID. + :type process_id: str + :param base_address: Module base address. + :type base_address: str + :param instance_id: ID of a specific scaled-out instance. This is the + value of the name property in the JSON response from "GET + api/sites/{siteName}/instances". + :type instance_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: FunctionSecrets or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.FunctionSecrets or + :return: ProcessModuleInfo or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.ProcessModuleInfo or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.list_sync_function_triggers.metadata['url'] + url = self.get_instance_process_module.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'processId': self._serialize.url("process_id", process_id, 'str'), + 'baseAddress': self._serialize.url("base_address", base_address, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -7039,7 +6904,7 @@ def list_sync_function_triggers( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7048,10 +6913,10 @@ def list_sync_function_triggers( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -7059,46 +6924,54 @@ def list_sync_function_triggers( deserialized = None if response.status_code == 200: - deserialized = self._deserialize('FunctionSecrets', response) + deserialized = self._deserialize('ProcessModuleInfo', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_sync_function_triggers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/listsyncfunctiontriggerstatus'} + get_instance_process_module.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/modules/{baseAddress}'} - def list_metric_definitions( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Gets all metric definitions of an app (or deployment slot, if - specified). + def list_instance_process_threads( + self, resource_group_name, name, process_id, instance_id, custom_headers=None, raw=False, **operation_config): + """List the threads in a process by its ID for a specific scaled-out + instance in a web site. - Gets all metric definitions of an app (or deployment slot, if - specified). + List the threads in a process by its ID for a specific scaled-out + instance in a web site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str + :param process_id: PID. + :type process_id: str + :param instance_id: ID of a specific scaled-out instance. This is the + value of the name property in the JSON response from "GET + api/sites/{siteName}/instances". + :type instance_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of ResourceMetricDefinition + :return: An iterator like instance of ProcessThreadInfo :rtype: - ~azure.mgmt.web.models.ResourceMetricDefinitionPaged[~azure.mgmt.web.models.ResourceMetricDefinition] + ~azure.mgmt.web.models.ProcessThreadInfoPaged[~azure.mgmt.web.models.ProcessThreadInfo] :raises: :class:`CloudError` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_metric_definitions.metadata['url'] + url = self.list_instance_process_threads.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'processId': self._serialize.url("process_id", process_id, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -7113,7 +6986,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7122,11 +6995,10 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -7134,59 +7006,342 @@ def internal_paging(next_link=None, raw=False): return response # Deserialize response - deserialized = models.ResourceMetricDefinitionPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.ProcessThreadInfoPaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.ResourceMetricDefinitionPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.ProcessThreadInfoPaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - list_metric_definitions.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/metricdefinitions'} + list_instance_process_threads.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads'} - def list_metrics( - self, resource_group_name, name, details=None, filter=None, custom_headers=None, raw=False, **operation_config): - """Gets performance metrics of an app (or deployment slot, if specified). + def get_instance_process_thread( + self, resource_group_name, name, process_id, thread_id, instance_id, custom_headers=None, raw=False, **operation_config): + """Get thread information by Thread ID for a specific process, in a + specific scaled-out instance in a web site. - Gets performance metrics of an app (or deployment slot, if specified). + Get thread information by Thread ID for a specific process, in a + specific scaled-out instance in a web site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Site name. :type name: str - :param details: Specify "true" to include metric details in the - response. It is "false" by default. - :type details: bool - :param filter: Return only metrics specified in the filter (using - OData syntax). For example: $filter=(name.value eq 'Metric1' or - name.value eq 'Metric2') and startTime eq '2014-01-01T00:00:00Z' and - endTime eq '2014-12-31T23:59:59Z' and timeGrain eq - duration'[Hour|Minute|Day]'. - :type filter: str + :param process_id: PID. + :type process_id: str + :param thread_id: TID. + :type thread_id: str + :param instance_id: ID of a specific scaled-out instance. This is the + value of the name property in the JSON response from "GET + api/sites/{siteName}/instances". + :type instance_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of ResourceMetric - :rtype: - ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] + :return: ProcessThreadInfo or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.ProcessThreadInfo or + ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ - def internal_paging(next_link=None, raw=False): + # Construct URL + url = self.get_instance_process_thread.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'processId': self._serialize.url("process_id", process_id, 'str'), + 'threadId': self._serialize.url("thread_id", thread_id, 'str'), + 'instanceId': self._serialize.url("instance_id", instance_id, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - if not next_link: - # Construct URL - url = self.list_metrics.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - # Construct parameters + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 404]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ProcessThreadInfo', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_instance_process_thread.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/instances/{instanceId}/processes/{processId}/threads/{threadId}'} + + def is_cloneable( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Shows whether an app can be cloned to another resource group or + subscription. + + Shows whether an app can be cloned to another resource group or + subscription. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SiteCloneability or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteCloneability or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.is_cloneable.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SiteCloneability', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + is_cloneable.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/iscloneable'} + + def list_sync_function_triggers( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """This is to allow calling via powershell and ARM template. + + This is to allow calling via powershell and ARM template. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FunctionSecrets or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.FunctionSecrets or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.list_sync_function_triggers.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FunctionSecrets', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_sync_function_triggers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/listsyncfunctiontriggerstatus'} + + def list_metric_definitions( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Gets all metric definitions of an app (or deployment slot, if + specified). + + Gets all metric definitions of an app (or deployment slot, if + specified). + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ResourceMetricDefinition + :rtype: + ~azure.mgmt.web.models.ResourceMetricDefinitionPaged[~azure.mgmt.web.models.ResourceMetricDefinition] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_metric_definitions.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.ResourceMetricDefinitionPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.ResourceMetricDefinitionPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_metric_definitions.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/metricdefinitions'} + + def list_metrics( + self, resource_group_name, name, details=None, filter=None, custom_headers=None, raw=False, **operation_config): + """Gets performance metrics of an app (or deployment slot, if specified). + + Gets performance metrics of an app (or deployment slot, if specified). + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param details: Specify "true" to include metric details in the + response. It is "false" by default. + :type details: bool + :param filter: Return only metrics specified in the filter (using + OData syntax). For example: $filter=(name.value eq 'Metric1' or + name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and + endTime eq 2014-12-31T23:59:59Z and timeGrain eq + duration'[Hour|Minute|Day]'. + :type filter: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ResourceMetric + :rtype: + ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_metrics.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters query_parameters = {} if details is not None: query_parameters['details'] = self._serialize.query("details", details, 'bool') @@ -7200,7 +7355,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7209,14 +7364,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -7250,6 +7402,7 @@ def _migrate_storage_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -7262,14 +7415,11 @@ def _migrate_storage_initial( body_content = self._serialize.body(migration_options, 'StorageMigrationOptions') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -7283,7 +7433,7 @@ def _migrate_storage_initial( return deserialized def migrate_storage( - self, subscription_name, resource_group_name, name, migration_options, custom_headers=None, raw=False, **operation_config): + self, subscription_name, resource_group_name, name, migration_options, custom_headers=None, raw=False, polling=True, **operation_config): """Restores a web app. Restores a web app. @@ -7298,15 +7448,20 @@ def migrate_storage( :param migration_options: Migration migrationOptions. :type migration_options: ~azure.mgmt.web.models.StorageMigrationOptions - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - StorageMigrationResponse or ClientRawResponse if raw=true + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + StorageMigrationResponse or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.StorageMigrationResponse] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.StorageMigrationResponse]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._migrate_storage_initial( subscription_name=subscription_name, @@ -7317,30 +7472,8 @@ def migrate_storage( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('StorageMigrationResponse', response) if raw: @@ -7349,12 +7482,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) migrate_storage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migrate'} @@ -7375,6 +7509,7 @@ def _migrate_my_sql_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -7387,14 +7522,11 @@ def _migrate_my_sql_initial( body_content = self._serialize.body(migration_request_envelope, 'MigrateMySqlRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -7408,7 +7540,7 @@ def _migrate_my_sql_initial( return deserialized def migrate_my_sql( - self, resource_group_name, name, migration_request_envelope, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, migration_request_envelope, custom_headers=None, raw=False, polling=True, **operation_config): """Migrates a local (in-app) MySql database to a remote MySql database. Migrates a local (in-app) MySql database to a remote MySql database. @@ -7422,14 +7554,18 @@ def migrate_my_sql( :type migration_request_envelope: ~azure.mgmt.web.models.MigrateMySqlRequest :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Operation or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Operation or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.Operation] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.Operation]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._migrate_my_sql_initial( resource_group_name=resource_group_name, @@ -7439,30 +7575,8 @@ def migrate_my_sql( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Operation', response) if raw: @@ -7471,12 +7585,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) migrate_my_sql.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migratemysql'} def get_migrate_my_sql_status( @@ -7500,7 +7615,8 @@ def get_migrate_my_sql_status( :return: MigrateMySqlStatus or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.MigrateMySqlStatus or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_migrate_my_sql_status.metadata['url'] @@ -7517,7 +7633,7 @@ def get_migrate_my_sql_status( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7526,13 +7642,11 @@ def get_migrate_my_sql_status( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -7588,7 +7702,7 @@ def list_network_features( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7597,8 +7711,8 @@ def list_network_features( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -7641,7 +7755,8 @@ def start_web_site_network_trace( overrides`. :return: str or ClientRawResponse if raw=true :rtype: str or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.start_web_site_network_trace.metadata['url'] @@ -7664,7 +7779,7 @@ def start_web_site_network_trace( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7673,13 +7788,11 @@ def start_web_site_network_trace( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -7711,7 +7824,8 @@ def stop_web_site_network_trace( overrides`. :return: str or ClientRawResponse if raw=true :rtype: str or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.stop_web_site_network_trace.metadata['url'] @@ -7728,7 +7842,7 @@ def stop_web_site_network_trace( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7737,13 +7851,11 @@ def stop_web_site_network_trace( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -7794,7 +7906,6 @@ def generate_new_site_publishing_password( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7803,8 +7914,8 @@ def generate_new_site_publishing_password( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -7829,8 +7940,8 @@ def list_perf_mon_counters( :type name: str :param filter: Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(startTime eq - '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[Hour|Minute|Day]'. + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -7840,7 +7951,8 @@ def list_perf_mon_counters( :return: An iterator like instance of PerfMonResponse :rtype: ~azure.mgmt.web.models.PerfMonResponsePaged[~azure.mgmt.web.models.PerfMonResponse] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -7866,7 +7978,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7875,14 +7987,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -7916,7 +8025,8 @@ def get_site_php_error_log_flag( :return: SitePhpErrorLogFlag or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SitePhpErrorLogFlag or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_site_php_error_log_flag.metadata['url'] @@ -7933,7 +8043,7 @@ def get_site_php_error_log_flag( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -7942,13 +8052,11 @@ def get_site_php_error_log_flag( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -7981,7 +8089,8 @@ def list_premier_add_ons( :return: PremierAddOn or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PremierAddOn or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_premier_add_ons.metadata['url'] @@ -7998,7 +8107,7 @@ def list_premier_add_ons( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8007,13 +8116,11 @@ def list_premier_add_ons( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -8048,7 +8155,8 @@ def get_premier_add_on( :return: PremierAddOn or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PremierAddOn or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_premier_add_on.metadata['url'] @@ -8066,7 +8174,7 @@ def get_premier_add_on( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8075,13 +8183,11 @@ def get_premier_add_on( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -8119,7 +8225,8 @@ def add_premier_add_on( :return: PremierAddOn or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PremierAddOn or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.add_premier_add_on.metadata['url'] @@ -8137,6 +8244,7 @@ def add_premier_add_on( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -8149,14 +8257,11 @@ def add_premier_add_on( body_content = self._serialize.body(premier_add_on, 'PremierAddOn') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -8208,7 +8313,6 @@ def delete_premier_add_on( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8217,8 +8321,8 @@ def delete_premier_add_on( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -8230,6 +8334,218 @@ def delete_premier_add_on( return client_raw_response delete_premier_add_on.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons/{premierAddOnName}'} + def update_premier_add_on( + self, resource_group_name, name, premier_add_on_name, premier_add_on, custom_headers=None, raw=False, **operation_config): + """Updates a named add-on of an app. + + Updates a named add-on of an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param premier_add_on_name: Add-on name. + :type premier_add_on_name: str + :param premier_add_on: A JSON representation of the edited premier + add-on. + :type premier_add_on: ~azure.mgmt.web.models.PremierAddOnPatchResource + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PremierAddOn or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PremierAddOn or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.update_premier_add_on.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'premierAddOnName': self._serialize.url("premier_add_on_name", premier_add_on_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(premier_add_on, 'PremierAddOnPatchResource') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PremierAddOn', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_premier_add_on.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/premieraddons/{premierAddOnName}'} + + def get_private_access( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Gets data around private site access enablement and authorized Virtual + Networks that can access the site. + + Gets data around private site access enablement and authorized Virtual + Networks that can access the site. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: The name of the web app. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrivateAccess or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PrivateAccess or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.get_private_access.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PrivateAccess', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_private_access.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateAccess/virtualNetworks'} + + def put_private_access_vnet( + self, resource_group_name, name, access, custom_headers=None, raw=False, **operation_config): + """Sets data around private site access enablement and authorized Virtual + Networks that can access the site. + + Sets data around private site access enablement and authorized Virtual + Networks that can access the site. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: The name of the web app. + :type name: str + :param access: The information for the private access + :type access: ~azure.mgmt.web.models.PrivateAccess + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrivateAccess or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PrivateAccess or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.put_private_access_vnet.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(access, 'PrivateAccess') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PrivateAccess', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + put_private_access_vnet.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateAccess/virtualNetworks'} + def list_processes( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): """Get list of processes for a web site, or a deployment slot, or for a @@ -8275,7 +8591,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8284,9 +8600,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -8347,7 +8662,7 @@ def get_process( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8356,8 +8671,8 @@ def get_process( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -8416,7 +8731,6 @@ def delete_process( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8425,8 +8739,8 @@ def delete_process( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204, 404]: exp = CloudError(response) @@ -8483,7 +8797,7 @@ def get_process_dump( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8492,8 +8806,8 @@ def get_process_dump( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -8560,7 +8874,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8569,9 +8883,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -8635,7 +8948,7 @@ def get_process_module( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8644,8 +8957,8 @@ def get_process_module( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -8712,7 +9025,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8721,9 +9034,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -8787,7 +9099,7 @@ def get_process_thread( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8796,8 +9108,8 @@ def get_process_thread( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -8835,7 +9147,8 @@ def list_public_certificates( :return: An iterator like instance of PublicCertificate :rtype: ~azure.mgmt.web.models.PublicCertificatePaged[~azure.mgmt.web.models.PublicCertificate] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -8859,7 +9172,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8868,14 +9181,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -8913,7 +9223,8 @@ def get_public_certificate( :return: PublicCertificate or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PublicCertificate or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_public_certificate.metadata['url'] @@ -8931,7 +9242,7 @@ def get_public_certificate( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -8940,13 +9251,11 @@ def get_public_certificate( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -8984,7 +9293,8 @@ def create_or_update_public_certificate( :return: PublicCertificate or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PublicCertificate or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_public_certificate.metadata['url'] @@ -9002,6 +9312,7 @@ def create_or_update_public_certificate( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -9014,14 +9325,11 @@ def create_or_update_public_certificate( body_content = self._serialize.body(public_certificate, 'PublicCertificate') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -9073,7 +9381,6 @@ def delete_public_certificate( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -9082,8 +9389,8 @@ def delete_public_certificate( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -9096,7 +9403,7 @@ def delete_public_certificate( delete_public_certificate.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publicCertificates/{publicCertificateName}'} def list_publishing_profile_xml_with_secrets( - self, resource_group_name, name, format=None, custom_headers=None, raw=False, callback=None, **operation_config): + self, resource_group_name, name, format=None, include_disaster_recovery_endpoints=None, custom_headers=None, raw=False, callback=None, **operation_config): """Gets the publishing profile for an app (or deployment slot, if specified). @@ -9113,6 +9420,9 @@ def list_publishing_profile_xml_with_secrets( WebDeploy -- default Ftp. Possible values include: 'FileZilla3', 'WebDeploy', 'Ftp' :type format: str or ~azure.mgmt.web.models.PublishingProfileFormat + :param include_disaster_recovery_endpoints: Include the + DisasterRecover endpoint if true + :type include_disaster_recovery_endpoints: bool :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -9125,9 +9435,10 @@ def list_publishing_profile_xml_with_secrets( overrides`. :return: object or ClientRawResponse if raw=true :rtype: Generator or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - publishing_profile_options = models.CsmPublishingProfileOptions(format=format) + publishing_profile_options = models.CsmPublishingProfileOptions(format=format, include_disaster_recovery_endpoints=include_disaster_recovery_endpoints) # Construct URL url = self.list_publishing_profile_xml_with_secrets.metadata['url'] @@ -9144,6 +9455,7 @@ def list_publishing_profile_xml_with_secrets( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/xml' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -9156,14 +9468,11 @@ def list_publishing_profile_xml_with_secrets( body_content = self._serialize.body(publishing_profile_options, 'CsmPublishingProfileOptions') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=True, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -9177,11 +9486,30 @@ def list_publishing_profile_xml_with_secrets( return deserialized list_publishing_profile_xml_with_secrets.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/publishxml'} + def reset_production_slot_config( + self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): + """Resets the configuration settings of the current slot if they were + previously modified by calling the API with POST. + + Resets the configuration settings of the current slot if they were + previously modified by calling the API with POST. - def _recover_initial( - self, resource_group_name, name, recovery_entity, custom_headers=None, raw=False, **operation_config): + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ # Construct URL - url = self.recover.metadata['url'] + url = self.reset_production_slot_config.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -9195,7 +9523,6 @@ def _recover_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -9203,15 +9530,11 @@ def _recover_initial( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(recovery_entity, 'SnapshotRecoveryRequest') - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 202]: + if response.status_code not in [200]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -9219,99 +9542,170 @@ def _recover_initial( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response + reset_production_slot_config.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resetSlotConfig'} - def recover( - self, resource_group_name, name, recovery_entity, custom_headers=None, raw=False, **operation_config): - """Recovers a web app to a previous snapshot. + def restart( + self, resource_group_name, name, soft_restart=None, synchronous=None, custom_headers=None, raw=False, **operation_config): + """Restarts an app (or deployment slot, if specified). - Recovers a web app to a previous snapshot. + Restarts an app (or deployment slot, if specified). :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param recovery_entity: Snapshot data used for web app recovery. - Snapshot information can be obtained by calling GetDeletedSites or - GetSiteSnapshots API. - :type recovery_entity: ~azure.mgmt.web.models.SnapshotRecoveryRequest + :param soft_restart: Specify true to apply the configuration settings + and restarts the app only if necessary. By default, the API always + restarts and reprovisions the app. + :type soft_restart: bool + :param synchronous: Specify true to block until the app is restarted. + By default, it is set to false, and the API responds immediately + (asynchronous). + :type synchronous: bool :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true - :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ - raw_result = self._recover_initial( - resource_group_name=resource_group_name, - name=name, - recovery_entity=recovery_entity, - custom_headers=custom_headers, - raw=True, - **operation_config - ) - if raw: - return raw_result + # Construct URL + url = self.restart.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if soft_restart is not None: + query_parameters['softRestart'] = self._serialize.query("soft_restart", soft_restart, 'bool') + if synchronous is not None: + query_parameters['synchronous'] = self._serialize.query("synchronous", synchronous, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - def long_running_send(): - return raw_result.response + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - def get_long_running_status(status_link, headers=None): + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + restart.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restart'} - def get_long_running_output(response): - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + def _restore_from_backup_blob_initial( + self, resource_group_name, name, request, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.restore_from_backup_blob.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - long_running_operation_timeout = operation_config.get( - 'long_running_operation_timeout', - self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) - recover.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/recover'} + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - def reset_production_slot_config( - self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): - """Resets the configuration settings of the current slot if they were - previously modified by calling the API with POST. + # Construct body + body_content = self._serialize.body(request, 'RestoreRequest') - Resets the configuration settings of the current slot if they were - previously modified by calling the API with POST. + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def restore_from_backup_blob( + self, resource_group_name, name, request, custom_headers=None, raw=False, polling=True, **operation_config): + """Restores an app from a backup blob in Azure Storage. + + Restores an app from a backup blob in Azure Storage. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str + :param request: Information on restore request . + :type request: ~azure.mgmt.web.models.RestoreRequest :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ + raw_result = self._restore_from_backup_blob_initial( + resource_group_name=resource_group_name, + name=name, + request=request, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restore_from_backup_blob.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromBackupBlob'} + + + def _restore_from_deleted_app_initial( + self, resource_group_name, name, restore_request, custom_headers=None, raw=False, **operation_config): # Construct URL - url = self.reset_production_slot_config.metadata['url'] + url = self.restore_from_deleted_app.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -9333,11 +9727,14 @@ def reset_production_slot_config( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(restore_request, 'DeletedAppRestoreRequest') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 202]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -9345,38 +9742,59 @@ def reset_production_slot_config( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - reset_production_slot_config.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/resetSlotConfig'} - def restart( - self, resource_group_name, name, soft_restart=None, synchronous=None, custom_headers=None, raw=False, **operation_config): - """Restarts an app (or deployment slot, if specified). + def restore_from_deleted_app( + self, resource_group_name, name, restore_request, custom_headers=None, raw=False, polling=True, **operation_config): + """Restores a deleted web app to this web app. - Restarts an app (or deployment slot, if specified). + Restores a deleted web app to this web app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Name of web app. :type name: str - :param soft_restart: Specify true to apply the configuration settings - and restarts the app only if necessary. By default, the API always - restarts and reprovisions the app. - :type soft_restart: bool - :param synchronous: Specify true to block until the app is restarted. - By default, it is set to false, and the API responds immediately - (asynchronous). - :type synchronous: bool + :param restore_request: Deleted web app restore information. + :type restore_request: ~azure.mgmt.web.models.DeletedAppRestoreRequest :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ + raw_result = self._restore_from_deleted_app_initial( + resource_group_name=resource_group_name, + name=name, + restore_request=restore_request, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restore_from_deleted_app.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreFromDeletedApp'} + + + def _restore_snapshot_initial( + self, resource_group_name, name, restore_request, custom_headers=None, raw=False, **operation_config): # Construct URL - url = self.restart.metadata['url'] + url = self.restore_snapshot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -9386,10 +9804,6 @@ def restart( # Construct parameters query_parameters = {} - if soft_restart is not None: - query_parameters['softRestart'] = self._serialize.query("soft_restart", soft_restart, 'bool') - if synchronous is not None: - query_parameters['synchronous'] = self._serialize.query("synchronous", synchronous, 'bool') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers @@ -9402,19 +9816,70 @@ def restart( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(restore_request, 'SnapshotRestoreRequest') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 202]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - restart.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restart'} + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def restore_snapshot( + self, resource_group_name, name, restore_request, custom_headers=None, raw=False, polling=True, **operation_config): + """Restores a web app from a snapshot. + + Restores a web app from a snapshot. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app. + :type name: str + :param restore_request: Snapshot restore settings. Snapshot + information can be obtained by calling GetDeletedSites or + GetSiteSnapshots API. + :type restore_request: ~azure.mgmt.web.models.SnapshotRestoreRequest + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._restore_snapshot_initial( + resource_group_name=resource_group_name, + name=name, + restore_request=restore_request, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restore_snapshot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/restoreSnapshot'} def list_site_extensions( self, resource_group_name, name, custom_headers=None, raw=False, **operation_config): @@ -9459,7 +9924,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -9468,9 +9933,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -9531,7 +9995,7 @@ def get_site_extension( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -9540,8 +10004,8 @@ def get_site_extension( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -9579,7 +10043,7 @@ def _install_site_extension_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -9588,8 +10052,8 @@ def _install_site_extension_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 429]: exp = CloudError(response) @@ -9610,7 +10074,7 @@ def _install_site_extension_initial( return deserialized def install_site_extension( - self, resource_group_name, name, site_extension_id, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_extension_id, custom_headers=None, raw=False, polling=True, **operation_config): """Install site extension on a web site, or a deployment slot. Install site extension on a web site, or a deployment slot. @@ -9623,13 +10087,16 @@ def install_site_extension( :param site_extension_id: Site extension name. :type site_extension_id: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - SiteExtensionInfo or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SiteExtensionInfo or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.SiteExtensionInfo] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.SiteExtensionInfo]] :raises: :class:`CloudError` """ raw_result = self._install_site_extension_initial( @@ -9640,30 +10107,8 @@ def install_site_extension( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201, 429]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('SiteExtensionInfo', response) if raw: @@ -9672,12 +10117,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) install_site_extension.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/siteextensions/{siteExtensionId}'} def delete_site_extension( @@ -9718,7 +10164,6 @@ def delete_site_extension( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -9727,8 +10172,8 @@ def delete_site_extension( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204, 404]: exp = CloudError(response) @@ -9758,7 +10203,8 @@ def list_slots( overrides`. :return: An iterator like instance of Site :rtype: ~azure.mgmt.web.models.SitePaged[~azure.mgmt.web.models.Site] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -9782,7 +10228,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -9791,14 +10237,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -9853,7 +10296,7 @@ def get_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -9862,8 +10305,8 @@ def get_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -9884,7 +10327,7 @@ def get_slot( def _create_or_update_slot_initial( - self, resource_group_name, name, site_envelope, slot, skip_dns_registration=None, skip_custom_domain_verification=None, force_dns_registration=None, ttl_in_seconds=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_envelope, slot, custom_headers=None, raw=False, **operation_config): # Construct URL url = self.create_or_update_slot.metadata['url'] path_format_arguments = { @@ -9897,18 +10340,11 @@ def _create_or_update_slot_initial( # Construct parameters query_parameters = {} - if skip_dns_registration is not None: - query_parameters['skipDnsRegistration'] = self._serialize.query("skip_dns_registration", skip_dns_registration, 'bool') - if skip_custom_domain_verification is not None: - query_parameters['skipCustomDomainVerification'] = self._serialize.query("skip_custom_domain_verification", skip_custom_domain_verification, 'bool') - if force_dns_registration is not None: - query_parameters['forceDnsRegistration'] = self._serialize.query("force_dns_registration", force_dns_registration, 'bool') - if ttl_in_seconds is not None: - query_parameters['ttlInSeconds'] = self._serialize.query("ttl_in_seconds", ttl_in_seconds, 'str') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -9921,14 +10357,11 @@ def _create_or_update_slot_initial( body_content = self._serialize.body(site_envelope, 'Site') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -9944,7 +10377,7 @@ def _create_or_update_slot_initial( return deserialized def create_or_update_slot( - self, resource_group_name, name, site_envelope, slot, skip_dns_registration=None, skip_custom_domain_verification=None, force_dns_registration=None, ttl_in_seconds=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_envelope, slot, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new web, mobile, or API app in an existing resource group, or updates an existing app. @@ -9963,66 +10396,31 @@ def create_or_update_slot( :param slot: Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot. :type slot: str - :param skip_dns_registration: If true web app hostname is not - registered with DNS on creation. This parameter is - only used for app creation. - :type skip_dns_registration: bool - :param skip_custom_domain_verification: If true, custom (non - *.azurewebsites.net) domains associated with web app are not verified. - :type skip_custom_domain_verification: bool - :param force_dns_registration: If true, web app hostname is force - registered with DNS. - :type force_dns_registration: bool - :param ttl_in_seconds: Time to live in seconds for web app's default - domain name. - :type ttl_in_seconds: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Site or - ClientRawResponse if raw=true + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Site or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.Site] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.Site]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_or_update_slot_initial( resource_group_name=resource_group_name, name=name, site_envelope=site_envelope, slot=slot, - skip_dns_registration=skip_dns_registration, - skip_custom_domain_verification=skip_custom_domain_verification, - force_dns_registration=force_dns_registration, - ttl_in_seconds=ttl_in_seconds, custom_headers=custom_headers, raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Site', response) if raw: @@ -10031,16 +10429,17 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}'} def delete_slot( - self, resource_group_name, name, slot, delete_metrics=None, delete_empty_server_farm=None, skip_dns_registration=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, slot, delete_metrics=None, delete_empty_server_farm=None, custom_headers=None, raw=False, **operation_config): """Deletes a web, mobile, or API app, or one of the deployment slots. Deletes a web, mobile, or API app, or one of the deployment slots. @@ -10059,8 +10458,6 @@ def delete_slot( will be empty after app deletion and you want to delete the empty App Service plan. By default, the empty App Service plan is not deleted. :type delete_empty_server_farm: bool - :param skip_dns_registration: If true, DNS registration is skipped. - :type skip_dns_registration: bool :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -10086,13 +10483,10 @@ def delete_slot( query_parameters['deleteMetrics'] = self._serialize.query("delete_metrics", delete_metrics, 'bool') if delete_empty_server_farm is not None: query_parameters['deleteEmptyServerFarm'] = self._serialize.query("delete_empty_server_farm", delete_empty_server_farm, 'bool') - if skip_dns_registration is not None: - query_parameters['skipDnsRegistration'] = self._serialize.query("skip_dns_registration", skip_dns_registration, 'bool') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -10101,8 +10495,8 @@ def delete_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204, 404]: exp = CloudError(response) @@ -10115,50 +10509,260 @@ def delete_slot( delete_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}'} def update_slot( - self, resource_group_name, name, site_envelope, slot, skip_dns_registration=None, skip_custom_domain_verification=None, force_dns_registration=None, ttl_in_seconds=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_envelope, slot, custom_headers=None, raw=False, **operation_config): """Creates a new web, mobile, or API app in an existing resource group, or updates an existing app. - Creates a new web, mobile, or API app in an existing resource group, or - updates an existing app. + Creates a new web, mobile, or API app in an existing resource group, or + updates an existing app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Unique name of the app to create or update. To create or + update a deployment slot, use the {slot} parameter. + :type name: str + :param site_envelope: A JSON representation of the app properties. See + example. + :type site_envelope: ~azure.mgmt.web.models.SitePatchResource + :param slot: Name of the deployment slot to create or update. By + default, this API attempts to create or modify the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Site or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.Site or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.update_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(site_envelope, 'SitePatchResource') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Site', response) + if response.status_code == 202: + deserialized = self._deserialize('Site', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}'} + + def analyze_custom_hostname_slot( + self, resource_group_name, name, slot, host_name=None, custom_headers=None, raw=False, **operation_config): + """Analyze a custom hostname. + + Analyze a custom hostname. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app. + :type name: str + :param slot: Name of web app slot. If not specified then will default + to production slot. + :type slot: str + :param host_name: Custom hostname. + :type host_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: CustomHostnameAnalysisResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.CustomHostnameAnalysisResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.analyze_custom_hostname_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if host_name is not None: + query_parameters['hostName'] = self._serialize.query("host_name", host_name, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('CustomHostnameAnalysisResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + analyze_custom_hostname_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/analyzeCustomHostname'} + + def apply_slot_configuration_slot( + self, resource_group_name, name, slot, target_slot, preserve_vnet, custom_headers=None, raw=False, **operation_config): + """Applies the configuration settings from the target slot onto the + current slot. + + Applies the configuration settings from the target slot onto the + current slot. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param slot: Name of the source slot. If a slot is not specified, the + production slot is used as the source slot. + :type slot: str + :param target_slot: Destination deployment slot during swap operation. + :type target_slot: str + :param preserve_vnet: true to preserve Virtual Network to + the slot during swap; otherwise, false. + :type preserve_vnet: bool + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + slot_swap_entity = models.CsmSlotEntity(target_slot=target_slot, preserve_vnet=preserve_vnet) + + # Construct URL + url = self.apply_slot_configuration_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(slot_swap_entity, 'CsmSlotEntity') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + apply_slot_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/applySlotConfig'} + + def backup_slot( + self, resource_group_name, name, request, slot, custom_headers=None, raw=False, **operation_config): + """Creates a backup of an app. + + Creates a backup of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Unique name of the app to create or update. To create or - update a deployment slot, use the {slot} parameter. + :param name: Name of the app. :type name: str - :param site_envelope: A JSON representation of the app properties. See - example. - :type site_envelope: ~azure.mgmt.web.models.SitePatchResource - :param slot: Name of the deployment slot to create or update. By - default, this API attempts to create or modify the production slot. + :param request: Backup configuration. You can use the JSON response + from the POST action as input here. + :type request: ~azure.mgmt.web.models.BackupRequest + :param slot: Name of the deployment slot. If a slot is not specified, + the API will create a backup for the production slot. :type slot: str - :param skip_dns_registration: If true web app hostname is not - registered with DNS on creation. This parameter is - only used for app creation. - :type skip_dns_registration: bool - :param skip_custom_domain_verification: If true, custom (non - *.azurewebsites.net) domains associated with web app are not verified. - :type skip_custom_domain_verification: bool - :param force_dns_registration: If true, web app hostname is force - registered with DNS. - :type force_dns_registration: bool - :param ttl_in_seconds: Time to live in seconds for web app's default - domain name. - :type ttl_in_seconds: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: Site or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.Site or + :return: BackupItem or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.BackupItem or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.update_slot.metadata['url'] + url = self.backup_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -10169,18 +10773,11 @@ def update_slot( # Construct parameters query_parameters = {} - if skip_dns_registration is not None: - query_parameters['skipDnsRegistration'] = self._serialize.query("skip_dns_registration", skip_dns_registration, 'bool') - if skip_custom_domain_verification is not None: - query_parameters['skipCustomDomainVerification'] = self._serialize.query("skip_custom_domain_verification", skip_custom_domain_verification, 'bool') - if force_dns_registration is not None: - query_parameters['forceDnsRegistration'] = self._serialize.query("force_dns_registration", force_dns_registration, 'bool') - if ttl_in_seconds is not None: - query_parameters['ttlInSeconds'] = self._serialize.query("ttl_in_seconds", ttl_in_seconds, 'str') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -10190,63 +10787,136 @@ def update_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(site_envelope, 'SitePatchResource') + body_content = self._serialize.body(request, 'BackupRequest') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('Site', response) - if response.status_code == 202: - deserialized = self._deserialize('Site', response) + deserialized = self._deserialize('BackupItem', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}'} + backup_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backup'} - def analyze_custom_hostname_slot( - self, resource_group_name, name, slot, host_name=None, custom_headers=None, raw=False, **operation_config): - """Analyze a custom hostname. + def list_backups_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets existing backups of an app. - Analyze a custom hostname. + Gets existing backups of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param slot: Name of web app slot. If not specified then will default - to production slot. + :param slot: Name of the deployment slot. If a slot is not specified, + the API will get backups of the production slot. :type slot: str - :param host_name: Custom hostname. - :type host_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: CustomHostnameAnalysisResult or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.CustomHostnameAnalysisResult or + :return: An iterator like instance of BackupItem + :rtype: + ~azure.mgmt.web.models.BackupItemPaged[~azure.mgmt.web.models.BackupItem] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_backups_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.BackupItemPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BackupItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_backups_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups'} + + def get_backup_status_slot( + self, resource_group_name, name, backup_id, slot, custom_headers=None, raw=False, **operation_config): + """Gets a backup of an app by its ID. + + Gets a backup of an app by its ID. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param backup_id: ID of the backup. + :type backup_id: str + :param slot: Name of the deployment slot. If a slot is not specified, + the API will get a backup of the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackupItem or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.BackupItem or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.analyze_custom_hostname_slot.metadata['url'] + url = self.get_backup_status_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'backupId': self._serialize.url("backup_id", backup_id, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -10254,13 +10924,11 @@ def analyze_custom_hostname_slot( # Construct parameters query_parameters = {} - if host_name is not None: - query_parameters['hostName'] = self._serialize.query("host_name", host_name, 'str') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -10269,47 +10937,40 @@ def analyze_custom_hostname_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('CustomHostnameAnalysisResult', response) + deserialized = self._deserialize('BackupItem', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - analyze_custom_hostname_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/analyzeCustomHostname'} + get_backup_status_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}'} - def apply_slot_configuration_slot( - self, resource_group_name, name, slot, target_slot, preserve_vnet, custom_headers=None, raw=False, **operation_config): - """Applies the configuration settings from the target slot onto the - current slot. + def delete_backup_slot( + self, resource_group_name, name, backup_id, slot, custom_headers=None, raw=False, **operation_config): + """Deletes a backup of an app by its ID. - Applies the configuration settings from the target slot onto the - current slot. + Deletes a backup of an app by its ID. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param slot: Name of the source slot. If a slot is not specified, the - production slot is used as the source slot. + :param backup_id: ID of the backup. + :type backup_id: str + :param slot: Name of the deployment slot. If a slot is not specified, + the API will delete a backup of the production slot. :type slot: str - :param target_slot: Destination deployment slot during swap operation. - :type target_slot: str - :param preserve_vnet: true to preserve Virtual Network to - the slot during swap; otherwise, false. - :type preserve_vnet: bool :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -10319,13 +10980,12 @@ def apply_slot_configuration_slot( :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ - slot_swap_entity = models.CsmSlotEntity(target_slot=target_slot, preserve_vnet=preserve_vnet) - # Construct URL - url = self.apply_slot_configuration_slot.metadata['url'] + url = self.delete_backup_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'backupId': self._serialize.url("backup_id", backup_id, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -10337,7 +10997,6 @@ def apply_slot_configuration_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -10345,15 +11004,11 @@ def apply_slot_configuration_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(slot_swap_entity, 'CsmSlotEntity') - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -10361,24 +11016,31 @@ def apply_slot_configuration_slot( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - apply_slot_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/applySlotConfig'} + delete_backup_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}'} - def backup_slot( - self, resource_group_name, name, request, slot, custom_headers=None, raw=False, **operation_config): - """Creates a backup of an app. + def list_backup_status_secrets_slot( + self, resource_group_name, name, backup_id, request, slot, custom_headers=None, raw=False, **operation_config): + """Gets status of a web app backup that may be in progress, including + secrets associated with the backup, such as the Azure Storage SAS URL. + Also can be used to update the SAS URL for the backup if a new URL is + passed in the request body. - Creates a backup of an app. + Gets status of a web app backup that may be in progress, including + secrets associated with the backup, such as the Azure Storage SAS URL. + Also can be used to update the SAS URL for the backup if a new URL is + passed in the request body. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Name of web app. :type name: str - :param request: Backup configuration. You can use the JSON response - from the POST action as input here. + :param backup_id: ID of backup. + :type backup_id: str + :param request: Information on backup request. :type request: ~azure.mgmt.web.models.BackupRequest - :param slot: Name of the deployment slot. If a slot is not specified, - the API will create a backup for the production slot. + :param slot: Name of web app slot. If not specified then will default + to production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -10388,13 +11050,66 @@ def backup_slot( :return: BackupItem or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.BackupItem or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.backup_slot.metadata['url'] + url = self.list_backup_status_secrets_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'backupId': self._serialize.url("backup_id", backup_id, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(request, 'BackupRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BackupItem', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_backup_status_secrets_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/list'} + + + def _restore_slot_initial( + self, resource_group_name, name, backup_id, request, slot, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.restore_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'backupId': self._serialize.url("backup_id", backup_id, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -10415,35 +11130,82 @@ def backup_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(request, 'BackupRequest') + body_content = self._serialize.body(request, 'RestoreRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 202]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('BackupItem', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response - return deserialized - backup_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backup'} + def restore_slot( + self, resource_group_name, name, backup_id, request, slot, custom_headers=None, raw=False, polling=True, **operation_config): + """Restores a specific backup to another app (or deployment slot, if + specified). - def list_backups_slot( + Restores a specific backup to another app (or deployment slot, if + specified). + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param backup_id: ID of the backup. + :type backup_id: str + :param request: Information on restore request . + :type request: ~azure.mgmt.web.models.RestoreRequest + :param slot: Name of the deployment slot. If a slot is not specified, + the API will restore a backup of the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._restore_slot_initial( + resource_group_name=resource_group_name, + name=name, + backup_id=backup_id, + request=request, + slot=slot, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restore_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/restore'} + + def list_configurations_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets existing backups of an app. + """List the configurations of an app. - Gets existing backups of an app. + List the configurations of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -10451,23 +11213,24 @@ def list_backups_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get backups of the production slot. + the API will return configuration for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of BackupItem + :return: An iterator like instance of SiteConfigResource :rtype: - ~azure.mgmt.web.models.BackupItemPaged[~azure.mgmt.web.models.BackupItem] - :raises: :class:`CloudError` + ~azure.mgmt.web.models.SiteConfigResourcePaged[~azure.mgmt.web.models.SiteConfigResource] + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): if not next_link: # Construct URL - url = self.list_backups_slot.metadata['url'] + url = self.list_configurations_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -10486,7 +11249,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -10495,59 +11258,58 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response # Deserialize response - deserialized = models.BackupItemPaged(internal_paging, self._deserialize.dependencies) + deserialized = models.SiteConfigResourcePaged(internal_paging, self._deserialize.dependencies) if raw: header_dict = {} - client_raw_response = models.BackupItemPaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = models.SiteConfigResourcePaged(internal_paging, self._deserialize.dependencies, header_dict) return client_raw_response return deserialized - list_backups_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups'} + list_configurations_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config'} - def discover_restore_slot( - self, resource_group_name, name, request, slot, custom_headers=None, raw=False, **operation_config): - """Discovers an existing app backup that can be restored from a blob in - Azure storage. + def update_application_settings_slot( + self, resource_group_name, name, slot, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): + """Replaces the application settings of an app. - Discovers an existing app backup that can be restored from a blob in - Azure storage. + Replaces the application settings of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param request: A RestoreRequest object that includes Azure storage - URL and blog name for discovery of backup. - :type request: ~azure.mgmt.web.models.RestoreRequest :param slot: Name of the deployment slot. If a slot is not specified, - the API will perform discovery for the production slot. + the API will update the application settings for the production slot. :type slot: str + :param kind: Kind of resource. + :type kind: str + :param properties: Settings. + :type properties: dict[str, str] :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: RestoreRequest or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.RestoreRequest or + :return: StringDictionary or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.StringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ + app_settings = models.StringDictionary(kind=kind, properties=properties) + # Construct URL - url = self.discover_restore_slot.metadata['url'] + url = self.update_application_settings_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -10562,6 +11324,7 @@ def discover_restore_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -10571,62 +11334,57 @@ def discover_restore_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(request, 'RestoreRequest') + body_content = self._serialize.body(app_settings, 'StringDictionary') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('RestoreRequest', response) + deserialized = self._deserialize('StringDictionary', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - discover_restore_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/discover'} + update_application_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings'} - def get_backup_status_slot( - self, resource_group_name, name, backup_id, slot, custom_headers=None, raw=False, **operation_config): - """Gets a backup of an app by its ID. + def list_application_settings_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets the application settings of an app. - Gets a backup of an app by its ID. + Gets the application settings of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param backup_id: ID of the backup. - :type backup_id: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get a backup of the production slot. + the API will get the application settings for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: BackupItem or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.BackupItem or + :return: StringDictionary or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.StringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_backup_status_slot.metadata['url'] + url = self.list_application_settings_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'backupId': self._serialize.url("backup_id", backup_id, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -10638,7 +11396,7 @@ def get_backup_status_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -10647,111 +11405,39 @@ def get_backup_status_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('BackupItem', response) + deserialized = self._deserialize('StringDictionary', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_backup_status_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}'} - - def delete_backup_slot( - self, resource_group_name, name, backup_id, slot, custom_headers=None, raw=False, **operation_config): - """Deletes a backup of an app by its ID. - - Deletes a backup of an app by its ID. - - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Name of the app. - :type name: str - :param backup_id: ID of the backup. - :type backup_id: str - :param slot: Name of the deployment slot. If a slot is not specified, - the API will delete a backup of the production slot. - :type slot: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ - # Construct URL - url = self.delete_backup_slot.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'backupId': self._serialize.url("backup_id", backup_id, 'str'), - 'slot': self._serialize.url("slot", slot, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - - # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200, 404]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - if raw: - client_raw_response = ClientRawResponse(None, response) - return client_raw_response - delete_backup_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}'} + list_application_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings/list'} - def list_backup_status_secrets_slot( - self, resource_group_name, name, backup_id, request, slot, custom_headers=None, raw=False, **operation_config): - """Gets status of a web app backup that may be in progress, including - secrets associated with the backup, such as the Azure Storage SAS URL. - Also can be used to update the SAS URL for the backup if a new URL is - passed in the request body. + def update_auth_settings_slot( + self, resource_group_name, name, site_auth_settings, slot, custom_headers=None, raw=False, **operation_config): + """Updates the Authentication / Authorization settings associated with web + app. - Gets status of a web app backup that may be in progress, including - secrets associated with the backup, such as the Azure Storage SAS URL. - Also can be used to update the SAS URL for the backup if a new URL is - passed in the request body. + Updates the Authentication / Authorization settings associated with web + app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of web app. :type name: str - :param backup_id: ID of backup. - :type backup_id: str - :param request: Information on backup request. - :type request: ~azure.mgmt.web.models.BackupRequest + :param site_auth_settings: Auth settings associated with web app. + :type site_auth_settings: ~azure.mgmt.web.models.SiteAuthSettings :param slot: Name of web app slot. If not specified then will default to production slot. :type slot: str @@ -10760,17 +11446,17 @@ def list_backup_status_secrets_slot( deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: BackupItem or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.BackupItem or + :return: SiteAuthSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteAuthSettings or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.list_backup_status_secrets_slot.metadata['url'] + url = self.update_auth_settings_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'backupId': self._serialize.url("backup_id", backup_id, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -10782,6 +11468,7 @@ def list_backup_status_secrets_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -10791,39 +11478,57 @@ def list_backup_status_secrets_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(request, 'BackupRequest') + body_content = self._serialize.body(site_auth_settings, 'SiteAuthSettings') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('BackupItem', response) + deserialized = self._deserialize('SiteAuthSettings', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_backup_status_secrets_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/list'} + update_auth_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings'} + + def get_auth_settings_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets the Authentication/Authorization settings of an app. + Gets the Authentication/Authorization settings of an app. - def _restore_slot_initial( - self, resource_group_name, name, backup_id, request, slot, custom_headers=None, raw=False, **operation_config): + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param slot: Name of the deployment slot. If a slot is not specified, + the API will get the settings for the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SiteAuthSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteAuthSettings or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ # Construct URL - url = self.restore_slot.metadata['url'] + url = self.get_auth_settings_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'backupId': self._serialize.url("backup_id", backup_id, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -10835,7 +11540,7 @@ def _restore_slot_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -10843,115 +11548,111 @@ def _restore_slot_initial( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(request, 'RestoreRequest') - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('RestoreResponse', response) + deserialized = self._deserialize('SiteAuthSettings', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized + get_auth_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings/list'} - def restore_slot( - self, resource_group_name, name, backup_id, request, slot, custom_headers=None, raw=False, **operation_config): - """Restores a specific backup to another app (or deployment slot, if - specified). + def update_azure_storage_accounts_slot( + self, resource_group_name, name, slot, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): + """Updates the Azure storage account configurations of an app. - Restores a specific backup to another app (or deployment slot, if - specified). + Updates the Azure storage account configurations of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param backup_id: ID of the backup. - :type backup_id: str - :param request: Information on restore request . - :type request: ~azure.mgmt.web.models.RestoreRequest :param slot: Name of the deployment slot. If a slot is not specified, - the API will restore a backup of the production slot. + the API will update the Azure storage account configurations for the + production slot. :type slot: str + :param kind: Kind of resource. + :type kind: str + :param properties: Azure storage accounts. + :type properties: dict[str, + ~azure.mgmt.web.models.AzureStorageInfoValue] :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response - :return: An instance of AzureOperationPoller that returns - RestoreResponse or ClientRawResponse if raw=true - :rtype: - ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.RestoreResponse] + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AzureStoragePropertyDictionaryResource or ClientRawResponse + if raw=true + :rtype: ~azure.mgmt.web.models.AzureStoragePropertyDictionaryResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - raw_result = self._restore_slot_initial( - resource_group_name=resource_group_name, - name=name, - backup_id=backup_id, - request=request, - slot=slot, - custom_headers=custom_headers, - raw=True, - **operation_config - ) - if raw: - return raw_result + azure_storage_accounts = models.AzureStoragePropertyDictionaryResource(kind=kind, properties=properties) - # Construct and send request - def long_running_send(): - return raw_result.response + # Construct URL + url = self.update_azure_storage_accounts_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - def get_long_running_status(status_link, headers=None): + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) + # Construct body + body_content = self._serialize.body(azure_storage_accounts, 'AzureStoragePropertyDictionaryResource') - def get_long_running_output(response): + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) - deserialized = self._deserialize('RestoreResponse', response) + deserialized = None - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response + if response.status_code == 200: + deserialized = self._deserialize('AzureStoragePropertyDictionaryResource', response) - return deserialized + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response - long_running_operation_timeout = operation_config.get( - 'long_running_operation_timeout', - self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) - restore_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/backups/{backupId}/restore'} + return deserialized + update_azure_storage_accounts_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts'} - def list_configurations_slot( + def list_azure_storage_accounts_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """List the configurations of an app. + """Gets the Azure storage account configurations of an app. - List the configurations of an app. + Gets the Azure storage account configurations of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -10959,104 +11660,93 @@ def list_configurations_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will return configuration for the production slot. + the API will update the Azure storage account configurations for the + production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: An iterator like instance of SiteConfigResource - :rtype: - ~azure.mgmt.web.models.SiteConfigResourcePaged[~azure.mgmt.web.models.SiteConfigResource] - :raises: :class:`CloudError` + :return: AzureStoragePropertyDictionaryResource or ClientRawResponse + if raw=true + :rtype: ~azure.mgmt.web.models.AzureStoragePropertyDictionaryResource + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ - def internal_paging(next_link=None, raw=False): - - if not next_link: - # Construct URL - url = self.list_configurations_slot.metadata['url'] - path_format_arguments = { - 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), - 'name': self._serialize.url("name", name, 'str'), - 'slot': self._serialize.url("slot", slot, 'str'), - 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') - } - url = self._client.format_url(url, **path_format_arguments) - - # Construct parameters - query_parameters = {} - query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + # Construct URL + url = self.list_azure_storage_accounts_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) - else: - url = next_link - query_parameters = {} + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') - # Construct headers - header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' - if self.config.generate_client_request_id: - header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) - if custom_headers: - header_parameters.update(custom_headers) - if self.config.accept_language is not None: - header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) - return response + deserialized = None - # Deserialize response - deserialized = models.SiteConfigResourcePaged(internal_paging, self._deserialize.dependencies) + if response.status_code == 200: + deserialized = self._deserialize('AzureStoragePropertyDictionaryResource', response) if raw: - header_dict = {} - client_raw_response = models.SiteConfigResourcePaged(internal_paging, self._deserialize.dependencies, header_dict) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_configurations_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config'} + list_azure_storage_accounts_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/azurestorageaccounts/list'} - def update_application_settings_slot( - self, resource_group_name, name, slot, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): - """Replaces the application settings of an app. + def update_backup_configuration_slot( + self, resource_group_name, name, request, slot, custom_headers=None, raw=False, **operation_config): + """Updates the backup configuration of an app. - Replaces the application settings of an app. + Updates the backup configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str + :param request: Edited backup configuration. + :type request: ~azure.mgmt.web.models.BackupRequest :param slot: Name of the deployment slot. If a slot is not specified, - the API will update the application settings for the production slot. + the API will update the backup configuration for the production slot. :type slot: str - :param kind: Kind of resource. - :type kind: str - :param properties: Settings. - :type properties: dict[str, str] :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: StringDictionary or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.StringDictionary or + :return: BackupRequest or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.BackupRequest or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - app_settings = models.StringDictionary(kind=kind, properties=properties) - # Construct URL - url = self.update_application_settings_slot.metadata['url'] + url = self.update_backup_configuration_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11071,6 +11761,7 @@ def update_application_settings_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -11080,35 +11771,32 @@ def update_application_settings_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(app_settings, 'StringDictionary') + body_content = self._serialize.body(request, 'BackupRequest') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('StringDictionary', response) + deserialized = self._deserialize('BackupRequest', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_application_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings'} + update_backup_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup'} - def list_application_settings_slot( + def delete_backup_configuration_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets the application settings of an app. + """Deletes the backup configuration of an app. - Gets the application settings of an app. + Deletes the backup configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -11116,20 +11804,19 @@ def list_application_settings_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the application settings for the production slot. + the API will delete the backup configuration for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: StringDictionary or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.StringDictionary or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.list_application_settings_slot.metadata['url'] + url = self.delete_backup_configuration_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11144,7 +11831,6 @@ def list_application_settings_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -11153,56 +11839,46 @@ def list_application_settings_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('StringDictionary', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_backup_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup'} - return deserialized - list_application_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/appsettings/list'} - - def update_auth_settings_slot( - self, resource_group_name, name, site_auth_settings, slot, custom_headers=None, raw=False, **operation_config): - """Updates the Authentication / Authorization settings associated with web - app. + def get_backup_configuration_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets the backup configuration of an app. - Updates the Authentication / Authorization settings associated with web - app. + Gets the backup configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param site_auth_settings: Auth settings associated with web app. - :type site_auth_settings: ~azure.mgmt.web.models.SiteAuthSettings - :param slot: Name of web app slot. If not specified then will default - to production slot. + :param slot: Name of the deployment slot. If a slot is not specified, + the API will get the backup configuration for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: SiteAuthSettings or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteAuthSettings or + :return: BackupRequest or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.BackupRequest or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.update_auth_settings_slot.metadata['url'] + url = self.get_backup_configuration_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11217,7 +11893,7 @@ def update_auth_settings_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -11225,36 +11901,30 @@ def update_auth_settings_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(site_auth_settings, 'SiteAuthSettings') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('SiteAuthSettings', response) + deserialized = self._deserialize('BackupRequest', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_auth_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings'} + get_backup_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup/list'} - def get_auth_settings_slot( - self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets the Authentication/Authorization settings of an app. + def update_connection_strings_slot( + self, resource_group_name, name, slot, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): + """Replaces the connection strings of an app. - Gets the Authentication/Authorization settings of an app. + Replaces the connection strings of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -11262,20 +11932,28 @@ def get_auth_settings_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the settings for the production slot. + the API will update the connection settings for the production slot. :type slot: str + :param kind: Kind of resource. + :type kind: str + :param properties: Connection strings. + :type properties: dict[str, + ~azure.mgmt.web.models.ConnStringValueTypePair] :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: SiteAuthSettings or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteAuthSettings or + :return: ConnectionStringDictionary or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.ConnectionStringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ + connection_strings = models.ConnectionStringDictionary(kind=kind, properties=properties) + # Construct URL - url = self.get_auth_settings_slot.metadata['url'] + url = self.update_connection_strings_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11290,6 +11968,7 @@ def get_auth_settings_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -11298,55 +11977,55 @@ def get_auth_settings_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(connection_strings, 'ConnectionStringDictionary') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('SiteAuthSettings', response) + deserialized = self._deserialize('ConnectionStringDictionary', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_auth_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/authsettings/list'} + update_connection_strings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings'} - def update_backup_configuration_slot( - self, resource_group_name, name, request, slot, custom_headers=None, raw=False, **operation_config): - """Updates the backup configuration of an app. + def list_connection_strings_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets the connection strings of an app. - Updates the backup configuration of an app. + Gets the connection strings of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param request: Edited backup configuration. - :type request: ~azure.mgmt.web.models.BackupRequest :param slot: Name of the deployment slot. If a slot is not specified, - the API will update the backup configuration for the production slot. + the API will get the connection settings for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: BackupRequest or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.BackupRequest or + :return: ConnectionStringDictionary or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.ConnectionStringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.update_backup_configuration_slot.metadata['url'] + url = self.list_connection_strings_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11361,7 +12040,7 @@ def update_backup_configuration_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -11369,36 +12048,30 @@ def update_backup_configuration_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(request, 'BackupRequest') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('BackupRequest', response) + deserialized = self._deserialize('ConnectionStringDictionary', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_backup_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup'} + list_connection_strings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings/list'} - def delete_backup_configuration_slot( + def get_diagnostic_logs_configuration_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Deletes the backup configuration of an app. + """Gets the logging configuration of an app. - Deletes the backup configuration of an app. + Gets the logging configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -11406,19 +12079,21 @@ def delete_backup_configuration_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will delete the backup configuration for the production slot. + the API will get the logging configuration for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: SiteLogsConfig or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteLogsConfig or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.delete_backup_configuration_slot.metadata['url'] + url = self.get_diagnostic_logs_configuration_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11433,7 +12108,7 @@ def delete_backup_configuration_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -11442,45 +12117,54 @@ def delete_backup_configuration_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SiteLogsConfig', response) if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - delete_backup_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup'} - def get_backup_configuration_slot( - self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets the backup configuration of an app. + return deserialized + get_diagnostic_logs_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/logs'} - Gets the backup configuration of an app. + def update_diagnostic_logs_config_slot( + self, resource_group_name, name, site_logs_config, slot, custom_headers=None, raw=False, **operation_config): + """Updates the logging configuration of an app. + + Updates the logging configuration of an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str + :param site_logs_config: A SiteLogsConfig JSON object that contains + the logging configuration to change in the "properties" property. + :type site_logs_config: ~azure.mgmt.web.models.SiteLogsConfig :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the backup configuration for the production slot. + the API will update the logging configuration for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: BackupRequest or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.BackupRequest or + :return: SiteLogsConfig or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SiteLogsConfig or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_backup_configuration_slot.metadata['url'] + url = self.update_diagnostic_logs_config_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11495,6 +12179,7 @@ def get_backup_configuration_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -11503,32 +12188,33 @@ def get_backup_configuration_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(site_logs_config, 'SiteLogsConfig') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('BackupRequest', response) + deserialized = self._deserialize('SiteLogsConfig', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - get_backup_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/backup/list'} + update_diagnostic_logs_config_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/logs'} - def update_connection_strings_slot( + def update_metadata_slot( self, resource_group_name, name, slot, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): - """Replaces the connection strings of an app. + """Replaces the metadata of an app. - Replaces the connection strings of an app. + Replaces the metadata of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -11536,27 +12222,27 @@ def update_connection_strings_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will update the connection settings for the production slot. + the API will update the metadata for the production slot. :type slot: str :param kind: Kind of resource. :type kind: str - :param properties: Connection strings. - :type properties: dict[str, - ~azure.mgmt.web.models.ConnStringValueTypePair] + :param properties: Settings. + :type properties: dict[str, str] :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: ConnectionStringDictionary or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.ConnectionStringDictionary or + :return: StringDictionary or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.StringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - connection_strings = models.ConnectionStringDictionary(kind=kind, properties=properties) + metadata = models.StringDictionary(kind=kind, properties=properties) # Construct URL - url = self.update_connection_strings_slot.metadata['url'] + url = self.update_metadata_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11571,6 +12257,7 @@ def update_connection_strings_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -11580,35 +12267,32 @@ def update_connection_strings_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(connection_strings, 'ConnectionStringDictionary') + body_content = self._serialize.body(metadata, 'StringDictionary') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('ConnectionStringDictionary', response) + deserialized = self._deserialize('StringDictionary', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_connection_strings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings'} + update_metadata_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata'} - def list_connection_strings_slot( + def list_metadata_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets the connection strings of an app. + """Gets the metadata of an app. - Gets the connection strings of an app. + Gets the metadata of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -11616,20 +12300,21 @@ def list_connection_strings_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the connection settings for the production slot. + the API will get the metadata for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: ConnectionStringDictionary or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.ConnectionStringDictionary or + :return: StringDictionary or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.StringDictionary or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.list_connection_strings_slot.metadata['url'] + url = self.list_metadata_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11644,7 +12329,7 @@ def list_connection_strings_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -11653,52 +12338,29 @@ def list_connection_strings_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('ConnectionStringDictionary', response) + deserialized = self._deserialize('StringDictionary', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_connection_strings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/connectionstrings/list'} - - def get_diagnostic_logs_configuration_slot( - self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets the logging configuration of an app. + list_metadata_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata/list'} - Gets the logging configuration of an app. - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Name of the app. - :type name: str - :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the logging configuration for the production slot. - :type slot: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: SiteLogsConfig or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteLogsConfig or - ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ + def _list_publishing_credentials_slot_initial( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): # Construct URL - url = self.get_diagnostic_logs_configuration_slot.metadata['url'] + url = self.list_publishing_credentials_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11713,7 +12375,7 @@ def get_diagnostic_logs_configuration_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -11722,55 +12384,107 @@ def get_diagnostic_logs_configuration_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('SiteLogsConfig', response) + deserialized = self._deserialize('User', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - return deserialized - get_diagnostic_logs_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/logs'} + return deserialized + + def list_publishing_credentials_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the Git/FTP publishing credentials of an app. + + Gets the Git/FTP publishing credentials of an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param slot: Name of the deployment slot. If a slot is not specified, + the API will get the publishing credentials for the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns User or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.User] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.User]] + :raises: + :class:`DefaultErrorResponseException` + """ + raw_result = self._list_publishing_credentials_slot_initial( + resource_group_name=resource_group_name, + name=name, + slot=slot, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('User', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized - def update_diagnostic_logs_config_slot( - self, resource_group_name, name, site_logs_config, slot, custom_headers=None, raw=False, **operation_config): - """Updates the logging configuration of an app. + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_publishing_credentials_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/publishingcredentials/list'} - Updates the logging configuration of an app. + def update_site_push_settings_slot( + self, resource_group_name, name, push_settings, slot, custom_headers=None, raw=False, **operation_config): + """Updates the Push settings associated with web app. + + Updates the Push settings associated with web app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Name of web app. :type name: str - :param site_logs_config: A SiteLogsConfig JSON object that contains - the logging configuration to change in the "properties" property. - :type site_logs_config: ~azure.mgmt.web.models.SiteLogsConfig - :param slot: Name of the deployment slot. If a slot is not specified, - the API will update the logging configuration for the production slot. + :param push_settings: Push settings associated with web app. + :type push_settings: ~azure.mgmt.web.models.PushSettings + :param slot: Name of web app slot. If not specified then will default + to production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: SiteLogsConfig or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.SiteLogsConfig or + :return: PushSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PushSettings or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.update_diagnostic_logs_config_slot.metadata['url'] + url = self.update_site_push_settings_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11785,6 +12499,7 @@ def update_diagnostic_logs_config_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -11794,62 +12509,54 @@ def update_diagnostic_logs_config_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(site_logs_config, 'SiteLogsConfig') + body_content = self._serialize.body(push_settings, 'PushSettings') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('SiteLogsConfig', response) + deserialized = self._deserialize('PushSettings', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_diagnostic_logs_config_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/logs'} + update_site_push_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings'} - def update_metadata_slot( - self, resource_group_name, name, slot, kind=None, properties=None, custom_headers=None, raw=False, **operation_config): - """Replaces the metadata of an app. + def list_site_push_settings_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets the Push settings associated with web app. - Replaces the metadata of an app. + Gets the Push settings associated with web app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Name of web app. :type name: str - :param slot: Name of the deployment slot. If a slot is not specified, - the API will update the metadata for the production slot. + :param slot: Name of web app slot. If not specified then will default + to production slot. :type slot: str - :param kind: Kind of resource. - :type kind: str - :param properties: Settings. - :type properties: dict[str, str] :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: StringDictionary or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.StringDictionary or + :return: PushSettings or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PushSettings or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - metadata = models.StringDictionary(kind=kind, properties=properties) - # Construct URL - url = self.update_metadata_slot.metadata['url'] + url = self.list_site_push_settings_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11864,7 +12571,7 @@ def update_metadata_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -11872,36 +12579,30 @@ def update_metadata_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(metadata, 'StringDictionary') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('StringDictionary', response) + deserialized = self._deserialize('PushSettings', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - update_metadata_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata'} + list_site_push_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings/list'} - def list_metadata_slot( + def get_swift_virtual_network_connection_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets the metadata of an app. + """Gets a Swift Virtual Network connection. - Gets the metadata of an app. + Gets a Swift Virtual Network connection. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -11909,20 +12610,21 @@ def list_metadata_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the metadata for the production slot. + the API will get a gateway for the production slot's Virtual Network. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: StringDictionary or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.StringDictionary or + :return: SwiftVirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SwiftVirtualNetwork or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.list_metadata_slot.metadata['url'] + url = self.get_swift_virtual_network_connection_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11937,7 +12639,7 @@ def list_metadata_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -11946,31 +12648,60 @@ def list_metadata_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('StringDictionary', response) + deserialized = self._deserialize('SwiftVirtualNetwork', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_metadata_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/metadata/list'} + get_swift_virtual_network_connection_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/virtualNetwork'} + def create_or_update_swift_virtual_network_connection_slot( + self, resource_group_name, name, connection_envelope, slot, custom_headers=None, raw=False, **operation_config): + """Integrates this Web App with a Virtual Network. This requires that 1) + "swiftSupported" is true when doing a GET against this resource, and 2) + that the target Subnet has already been delegated, and is not + in use by another App Service Plan other than the one this App is in. - def _list_publishing_credentials_slot_initial( - self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + Integrates this Web App with a Virtual Network. This requires that 1) + "swiftSupported" is true when doing a GET against this resource, and 2) + that the target Subnet has already been delegated, and is not + in use by another App Service Plan other than the one this App is in. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param connection_envelope: Properties of the Virtual Network + connection. See example. + :type connection_envelope: ~azure.mgmt.web.models.SwiftVirtualNetwork + :param slot: Name of the deployment slot. If a slot is not specified, + the API will add or update connections for the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SwiftVirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SwiftVirtualNetwork or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ # Construct URL - url = self.list_publishing_credentials_slot.metadata['url'] + url = self.create_or_update_swift_virtual_network_connection_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -11985,6 +12716,7 @@ def _list_publishing_credentials_slot_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -11993,31 +12725,35 @@ def _list_publishing_credentials_slot_initial( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(connection_envelope, 'SwiftVirtualNetwork') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('User', response) + deserialized = self._deserialize('SwiftVirtualNetwork', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized + create_or_update_swift_virtual_network_connection_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/virtualNetwork'} - def list_publishing_credentials_slot( + def delete_swift_virtual_network_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets the Git/FTP publishing credentials of an app. + """Deletes a Swift Virtual Network connection from an app (or deployment + slot). - Gets the Git/FTP publishing credentials of an app. + Deletes a Swift Virtual Network connection from an app (or deployment + slot). :param resource_group_name: Name of the resource group to which the resource belongs. @@ -12025,94 +12761,19 @@ def list_publishing_credentials_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the publishing credentials for the production slot. - :type slot: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns User or - ClientRawResponse if raw=true - :rtype: - ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.User] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ - raw_result = self._list_publishing_credentials_slot_initial( - resource_group_name=resource_group_name, - name=name, - slot=slot, - custom_headers=custom_headers, - raw=True, - **operation_config - ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) - - def get_long_running_output(response): - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - - deserialized = self._deserialize('User', response) - - if raw: - client_raw_response = ClientRawResponse(deserialized, response) - return client_raw_response - - return deserialized - - long_running_operation_timeout = operation_config.get( - 'long_running_operation_timeout', - self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) - list_publishing_credentials_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/publishingcredentials/list'} - - def update_site_push_settings_slot( - self, resource_group_name, name, push_settings, slot, custom_headers=None, raw=False, **operation_config): - """Updates the Push settings associated with web app. - - Updates the Push settings associated with web app. - - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Name of web app. - :type name: str - :param push_settings: Push settings associated with web app. - :type push_settings: ~azure.mgmt.web.models.PushSettings - :param slot: Name of web app slot. If not specified then will default - to production slot. + the API will delete the connection for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: PushSettings or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.PushSettings or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.update_site_push_settings_slot.metadata['url'] + url = self.delete_swift_virtual_network_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -12127,7 +12788,6 @@ def update_site_push_settings_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12135,57 +12795,56 @@ def update_site_push_settings_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(push_settings, 'PushSettings') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 404]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('PushSettings', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_swift_virtual_network_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/virtualNetwork'} - return deserialized - update_site_push_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings'} - - def list_site_push_settings_slot( - self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Gets the Push settings associated with web app. + def update_swift_virtual_network_connection_slot( + self, resource_group_name, name, connection_envelope, slot, custom_headers=None, raw=False, **operation_config): + """Integrates this Web App with a Virtual Network. This requires that 1) + "swiftSupported" is true when doing a GET against this resource, and 2) + that the target Subnet has already been delegated, and is not + in use by another App Service Plan other than the one this App is in. - Gets the Push settings associated with web app. + Integrates this Web App with a Virtual Network. This requires that 1) + "swiftSupported" is true when doing a GET against this resource, and 2) + that the target Subnet has already been delegated, and is not + in use by another App Service Plan other than the one this App is in. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param slot: Name of web app slot. If not specified then will default - to production slot. + :param connection_envelope: Properties of the Virtual Network + connection. See example. + :type connection_envelope: ~azure.mgmt.web.models.SwiftVirtualNetwork + :param slot: Name of the deployment slot. If a slot is not specified, + the API will add or update connections for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: PushSettings or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.PushSettings or + :return: SwiftVirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.SwiftVirtualNetwork or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.list_site_push_settings_slot.metadata['url'] + url = self.update_swift_virtual_network_connection_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -12200,6 +12859,7 @@ def list_site_push_settings_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -12208,26 +12868,27 @@ def list_site_push_settings_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(connection_envelope, 'SwiftVirtualNetwork') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('PushSettings', response) + deserialized = self._deserialize('SwiftVirtualNetwork', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - list_site_push_settings_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/pushsettings/list'} + update_swift_virtual_network_connection_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/config/virtualNetwork'} def get_configuration_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): @@ -12253,7 +12914,8 @@ def get_configuration_slot( :return: SiteConfigResource or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteConfigResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_configuration_slot.metadata['url'] @@ -12271,7 +12933,7 @@ def get_configuration_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12280,13 +12942,11 @@ def get_configuration_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -12325,7 +12985,8 @@ def create_or_update_configuration_slot( :return: SiteConfigResource or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteConfigResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_configuration_slot.metadata['url'] @@ -12343,6 +13004,7 @@ def create_or_update_configuration_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -12355,14 +13017,11 @@ def create_or_update_configuration_slot( body_content = self._serialize.body(site_config, 'SiteConfigResource') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -12401,7 +13060,8 @@ def update_configuration_slot( :return: SiteConfigResource or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteConfigResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_configuration_slot.metadata['url'] @@ -12419,6 +13079,7 @@ def update_configuration_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -12431,14 +13092,11 @@ def update_configuration_slot( body_content = self._serialize.body(site_config, 'SiteConfigResource') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -12476,7 +13134,8 @@ def list_configuration_snapshot_info_slot( :return: An iterator like instance of SiteConfigurationSnapshotInfo :rtype: ~azure.mgmt.web.models.SiteConfigurationSnapshotInfoPaged[~azure.mgmt.web.models.SiteConfigurationSnapshotInfo] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -12501,7 +13160,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12510,14 +13169,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -12558,7 +13214,8 @@ def get_configuration_snapshot_slot( :return: SiteConfigResource or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteConfigResource or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_configuration_snapshot_slot.metadata['url'] @@ -12577,7 +13234,7 @@ def get_configuration_snapshot_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12586,13 +13243,11 @@ def get_configuration_snapshot_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) - - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -12648,7 +13303,6 @@ def recover_site_configuration_snapshot_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12657,8 +13311,8 @@ def recover_site_configuration_snapshot_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -12714,7 +13368,7 @@ def get_web_site_container_logs_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/octet-stream' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12723,8 +13377,8 @@ def get_web_site_container_logs_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -12743,7 +13397,7 @@ def get_web_site_container_logs_slot( return deserialized get_web_site_container_logs_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs'} - def get_web_site_container_logs_zip_slot( + def get_container_logs_zip_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, callback=None, **operation_config): """Gets the ZIP archived docker log files for the given site. @@ -12772,7 +13426,7 @@ def get_web_site_container_logs_zip_slot( :raises: :class:`CloudError` """ # Construct URL - url = self.get_web_site_container_logs_zip_slot.metadata['url'] + url = self.get_container_logs_zip_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -12787,7 +13441,7 @@ def get_web_site_container_logs_zip_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/zip' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12796,8 +13450,8 @@ def get_web_site_container_logs_zip_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -12814,7 +13468,7 @@ def get_web_site_container_logs_zip_slot( return client_raw_response return deserialized - get_web_site_container_logs_zip_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs/zip/download'} + get_container_logs_zip_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/containerlogs/zip/download'} def list_continuous_web_jobs_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): @@ -12838,7 +13492,8 @@ def list_continuous_web_jobs_slot( :return: An iterator like instance of ContinuousWebJob :rtype: ~azure.mgmt.web.models.ContinuousWebJobPaged[~azure.mgmt.web.models.ContinuousWebJob] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -12863,7 +13518,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12872,14 +13527,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -12937,7 +13589,7 @@ def get_continuous_web_job_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -12946,8 +13598,8 @@ def get_continuous_web_job_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -13008,7 +13660,6 @@ def delete_continuous_web_job_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13017,8 +13668,8 @@ def delete_continuous_web_job_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -13072,7 +13723,6 @@ def start_continuous_web_job_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13081,8 +13731,8 @@ def start_continuous_web_job_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -13136,7 +13786,6 @@ def stop_continuous_web_job_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13145,8 +13794,8 @@ def stop_continuous_web_job_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -13180,7 +13829,8 @@ def list_deployments_slot( :return: An iterator like instance of Deployment :rtype: ~azure.mgmt.web.models.DeploymentPaged[~azure.mgmt.web.models.Deployment] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -13205,7 +13855,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13214,14 +13864,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -13260,7 +13907,8 @@ def get_deployment_slot( :return: Deployment or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Deployment or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_deployment_slot.metadata['url'] @@ -13279,7 +13927,7 @@ def get_deployment_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13288,13 +13936,11 @@ def get_deployment_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -13334,7 +13980,8 @@ def create_deployment_slot( :return: Deployment or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Deployment or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_deployment_slot.metadata['url'] @@ -13353,6 +14000,7 @@ def create_deployment_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -13365,14 +14013,11 @@ def create_deployment_slot( body_content = self._serialize.body(deployment, 'Deployment') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -13428,7 +14073,6 @@ def delete_deployment_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13437,8 +14081,8 @@ def delete_deployment_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -13478,7 +14122,8 @@ def list_deployment_log_slot( :return: Deployment or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Deployment or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_deployment_log_slot.metadata['url'] @@ -13497,7 +14142,7 @@ def list_deployment_log_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13506,13 +14151,11 @@ def list_deployment_log_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -13526,6 +14169,85 @@ def list_deployment_log_slot( return deserialized list_deployment_log_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/deployments/{id}/log'} + def discover_backup_slot( + self, resource_group_name, name, request, slot, custom_headers=None, raw=False, **operation_config): + """Discovers an existing app backup that can be restored from a blob in + Azure storage. Use this to get information about the databases stored + in a backup. + + Discovers an existing app backup that can be restored from a blob in + Azure storage. Use this to get information about the databases stored + in a backup. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param request: A RestoreRequest object that includes Azure storage + URL and blog name for discovery of backup. + :type request: ~azure.mgmt.web.models.RestoreRequest + :param slot: Name of the deployment slot. If a slot is not specified, + the API will perform discovery for the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RestoreRequest or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.RestoreRequest or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.discover_backup_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(request, 'RestoreRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RestoreRequest', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + discover_backup_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/discoverbackup'} + def list_domain_ownership_identifiers_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): """Lists ownership identifiers for domain associated with web app. @@ -13548,7 +14270,8 @@ def list_domain_ownership_identifiers_slot( :return: An iterator like instance of Identifier :rtype: ~azure.mgmt.web.models.IdentifierPaged[~azure.mgmt.web.models.Identifier] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -13573,7 +14296,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13582,14 +14305,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -13629,7 +14349,8 @@ def get_domain_ownership_identifier_slot( :return: Identifier or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Identifier or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_domain_ownership_identifier_slot.metadata['url'] @@ -13648,7 +14369,7 @@ def get_domain_ownership_identifier_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13657,13 +14378,11 @@ def get_domain_ownership_identifier_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -13708,7 +14427,8 @@ def create_or_update_domain_ownership_identifier_slot( :return: Identifier or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Identifier or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ domain_ownership_identifier = models.Identifier(kind=kind, identifier_id=identifier_id) @@ -13729,6 +14449,7 @@ def create_or_update_domain_ownership_identifier_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -13741,14 +14462,11 @@ def create_or_update_domain_ownership_identifier_slot( body_content = self._serialize.body(domain_ownership_identifier, 'Identifier') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -13805,7 +14523,6 @@ def delete_domain_ownership_identifier_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13814,8 +14531,8 @@ def delete_domain_ownership_identifier_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -13858,7 +14575,8 @@ def update_domain_ownership_identifier_slot( :return: Identifier or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.Identifier or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ domain_ownership_identifier = models.Identifier(kind=kind, identifier_id=identifier_id) @@ -13879,6 +14597,7 @@ def update_domain_ownership_identifier_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -13891,14 +14610,11 @@ def update_domain_ownership_identifier_slot( body_content = self._serialize.body(domain_ownership_identifier, 'Identifier') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -13934,7 +14650,8 @@ def get_ms_deploy_status_slot( :return: MSDeployStatus or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.MSDeployStatus or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_ms_deploy_status_slot.metadata['url'] @@ -13952,7 +14669,7 @@ def get_ms_deploy_status_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -13961,13 +14678,11 @@ def get_ms_deploy_status_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -14000,6 +14715,7 @@ def _create_ms_deploy_operation_slot_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -14012,9 +14728,8 @@ def _create_ms_deploy_operation_slot_initial( body_content = self._serialize.body(ms_deploy, 'MSDeploy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201, 409]: exp = CloudError(response) @@ -14033,7 +14748,7 @@ def _create_ms_deploy_operation_slot_initial( return deserialized def create_ms_deploy_operation_slot( - self, resource_group_name, name, slot, ms_deploy, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, slot, ms_deploy, custom_headers=None, raw=False, polling=True, **operation_config): """Invoke the MSDeploy web app extension. Invoke the MSDeploy web app extension. @@ -14049,13 +14764,16 @@ def create_ms_deploy_operation_slot( :param ms_deploy: Details of MSDeploy operation :type ms_deploy: ~azure.mgmt.web.models.MSDeploy :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - MSDeployStatus or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns MSDeployStatus or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.MSDeployStatus] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.MSDeployStatus]] :raises: :class:`CloudError` """ raw_result = self._create_ms_deploy_operation_slot_initial( @@ -14067,30 +14785,8 @@ def create_ms_deploy_operation_slot( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [201, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('MSDeployStatus', response) if raw: @@ -14099,12 +14795,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_ms_deploy_operation_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/extensions/MSDeploy'} def get_ms_deploy_log_slot( @@ -14147,7 +14844,7 @@ def get_ms_deploy_log_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14156,8 +14853,8 @@ def get_ms_deploy_log_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -14223,7 +14920,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14232,9 +14929,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -14275,7 +14971,8 @@ def get_functions_admin_token_slot( overrides`. :return: str or ClientRawResponse if raw=true :rtype: str or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_functions_admin_token_slot.metadata['url'] @@ -14293,7 +14990,7 @@ def get_functions_admin_token_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14302,13 +14999,11 @@ def get_functions_admin_token_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -14365,7 +15060,7 @@ def get_instance_function_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14374,8 +15069,8 @@ def get_instance_function_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -14414,6 +15109,7 @@ def _create_instance_function_slot_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -14426,14 +15122,11 @@ def _create_instance_function_slot_initial( body_content = self._serialize.body(function_envelope, 'FunctionEnvelope') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -14447,7 +15140,7 @@ def _create_instance_function_slot_initial( return deserialized def create_instance_function_slot( - self, resource_group_name, name, function_name, slot, function_envelope, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, function_name, slot, function_envelope, custom_headers=None, raw=False, polling=True, **operation_config): """Create function for web site, or a deployment slot. Create function for web site, or a deployment slot. @@ -14465,14 +15158,18 @@ def create_instance_function_slot( :param function_envelope: Function details. :type function_envelope: ~azure.mgmt.web.models.FunctionEnvelope :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - FunctionEnvelope or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FunctionEnvelope or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.FunctionEnvelope] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.FunctionEnvelope]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_instance_function_slot_initial( resource_group_name=resource_group_name, @@ -14484,30 +15181,8 @@ def create_instance_function_slot( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('FunctionEnvelope', response) if raw: @@ -14516,12 +15191,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_instance_function_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}'} def delete_instance_function_slot( @@ -14566,7 +15242,6 @@ def delete_instance_function_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14575,8 +15250,8 @@ def delete_instance_function_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204, 404]: exp = CloudError(response) @@ -14614,7 +15289,8 @@ def list_function_secrets_slot( :return: FunctionSecrets or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.FunctionSecrets or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_function_secrets_slot.metadata['url'] @@ -14633,7 +15309,7 @@ def list_function_secrets_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14642,13 +15318,11 @@ def list_function_secrets_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -14684,7 +15358,8 @@ def list_host_name_bindings_slot( :return: An iterator like instance of HostNameBinding :rtype: ~azure.mgmt.web.models.HostNameBindingPaged[~azure.mgmt.web.models.HostNameBinding] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -14709,7 +15384,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14718,14 +15393,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -14766,7 +15438,8 @@ def get_host_name_binding_slot( :return: HostNameBinding or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HostNameBinding or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_host_name_binding_slot.metadata['url'] @@ -14785,7 +15458,7 @@ def get_host_name_binding_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14794,13 +15467,11 @@ def get_host_name_binding_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -14841,7 +15512,8 @@ def create_or_update_host_name_binding_slot( :return: HostNameBinding or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HostNameBinding or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_host_name_binding_slot.metadata['url'] @@ -14860,6 +15532,7 @@ def create_or_update_host_name_binding_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -14872,14 +15545,11 @@ def create_or_update_host_name_binding_slot( body_content = self._serialize.body(host_name_binding, 'HostNameBinding') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -14935,7 +15605,6 @@ def delete_host_name_binding_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -14944,8 +15613,8 @@ def delete_host_name_binding_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -14984,7 +15653,8 @@ def get_hybrid_connection_slot( :return: HybridConnection or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HybridConnection or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_hybrid_connection_slot.metadata['url'] @@ -15004,7 +15674,7 @@ def get_hybrid_connection_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15013,13 +15683,11 @@ def get_hybrid_connection_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15060,7 +15728,8 @@ def create_or_update_hybrid_connection_slot( :return: HybridConnection or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HybridConnection or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_hybrid_connection_slot.metadata['url'] @@ -15080,6 +15749,7 @@ def create_or_update_hybrid_connection_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -15092,14 +15762,11 @@ def create_or_update_hybrid_connection_slot( body_content = self._serialize.body(connection_envelope, 'HybridConnection') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15157,7 +15824,6 @@ def delete_hybrid_connection_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15166,8 +15832,8 @@ def delete_hybrid_connection_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -15206,7 +15872,8 @@ def update_hybrid_connection_slot( :return: HybridConnection or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HybridConnection or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_hybrid_connection_slot.metadata['url'] @@ -15226,6 +15893,7 @@ def update_hybrid_connection_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -15238,14 +15906,11 @@ def update_hybrid_connection_slot( body_content = self._serialize.body(connection_envelope, 'HybridConnection') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15284,7 +15949,8 @@ def list_hybrid_connection_keys_slot( :return: HybridConnectionKey or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HybridConnectionKey or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_hybrid_connection_keys_slot.metadata['url'] @@ -15304,7 +15970,7 @@ def list_hybrid_connection_keys_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15313,13 +15979,11 @@ def list_hybrid_connection_keys_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15354,7 +16018,8 @@ def list_hybrid_connections_slot( :return: HybridConnection or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.HybridConnection or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_hybrid_connections_slot.metadata['url'] @@ -15372,7 +16037,7 @@ def list_hybrid_connections_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15381,13 +16046,11 @@ def list_hybrid_connections_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15425,7 +16088,8 @@ def list_relay_service_connections_slot( :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_relay_service_connections_slot.metadata['url'] @@ -15443,7 +16107,7 @@ def list_relay_service_connections_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15452,13 +16116,11 @@ def list_relay_service_connections_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15496,7 +16158,8 @@ def get_relay_service_connection_slot( :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_relay_service_connection_slot.metadata['url'] @@ -15515,7 +16178,7 @@ def get_relay_service_connection_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15524,13 +16187,11 @@ def get_relay_service_connection_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15575,7 +16236,8 @@ def create_or_update_relay_service_connection_slot( :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_relay_service_connection_slot.metadata['url'] @@ -15594,6 +16256,7 @@ def create_or_update_relay_service_connection_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -15606,14 +16269,11 @@ def create_or_update_relay_service_connection_slot( body_content = self._serialize.body(connection_envelope, 'RelayServiceConnectionEntity') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15669,7 +16329,6 @@ def delete_relay_service_connection_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15678,8 +16337,8 @@ def delete_relay_service_connection_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -15722,7 +16381,8 @@ def update_relay_service_connection_slot( :return: RelayServiceConnectionEntity or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.RelayServiceConnectionEntity or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_relay_service_connection_slot.metadata['url'] @@ -15741,6 +16401,7 @@ def update_relay_service_connection_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -15753,14 +16414,11 @@ def update_relay_service_connection_slot( body_content = self._serialize.body(connection_envelope, 'RelayServiceConnectionEntity') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15796,7 +16454,8 @@ def list_instance_identifiers_slot( :return: An iterator like instance of SiteInstance :rtype: ~azure.mgmt.web.models.SiteInstancePaged[~azure.mgmt.web.models.SiteInstance] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -15821,7 +16480,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15830,14 +16489,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -15876,7 +16532,8 @@ def get_instance_ms_deploy_status_slot( :return: MSDeployStatus or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.MSDeployStatus or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_instance_ms_deploy_status_slot.metadata['url'] @@ -15895,7 +16552,7 @@ def get_instance_ms_deploy_status_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -15904,13 +16561,11 @@ def get_instance_ms_deploy_status_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -15944,6 +16599,7 @@ def _create_instance_ms_deploy_operation_slot_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -15956,9 +16612,8 @@ def _create_instance_ms_deploy_operation_slot_initial( body_content = self._serialize.body(ms_deploy, 'MSDeploy') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [201, 409]: exp = CloudError(response) @@ -15977,7 +16632,7 @@ def _create_instance_ms_deploy_operation_slot_initial( return deserialized def create_instance_ms_deploy_operation_slot( - self, resource_group_name, name, slot, instance_id, ms_deploy, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, slot, instance_id, ms_deploy, custom_headers=None, raw=False, polling=True, **operation_config): """Invoke the MSDeploy web app extension. Invoke the MSDeploy web app extension. @@ -15995,13 +16650,16 @@ def create_instance_ms_deploy_operation_slot( :param ms_deploy: Details of MSDeploy operation :type ms_deploy: ~azure.mgmt.web.models.MSDeploy :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - MSDeployStatus or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns MSDeployStatus or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.MSDeployStatus] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.MSDeployStatus]] :raises: :class:`CloudError` """ raw_result = self._create_instance_ms_deploy_operation_slot_initial( @@ -16014,30 +16672,8 @@ def create_instance_ms_deploy_operation_slot( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) - - def get_long_running_output(response): - - if response.status_code not in [201, 409]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + def get_long_running_output(response): deserialized = self._deserialize('MSDeployStatus', response) if raw: @@ -16046,12 +16682,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_instance_ms_deploy_operation_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/instances/{instanceId}/extensions/MSDeploy'} def get_instance_ms_deploy_log_slot( @@ -16097,7 +16734,7 @@ def get_instance_ms_deploy_log_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16106,8 +16743,8 @@ def get_instance_ms_deploy_log_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -16180,7 +16817,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16189,9 +16826,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -16261,7 +16897,7 @@ def get_instance_process_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16270,8 +16906,8 @@ def get_instance_process_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -16339,7 +16975,6 @@ def delete_instance_process_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16348,8 +16983,8 @@ def delete_instance_process_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204, 404]: exp = CloudError(response) @@ -16415,7 +17050,7 @@ def get_instance_process_dump_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16424,8 +17059,8 @@ def get_instance_process_dump_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -16501,7 +17136,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16510,9 +17145,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -16585,7 +17219,7 @@ def get_instance_process_module_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16594,8 +17228,8 @@ def get_instance_process_module_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -16671,7 +17305,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16680,9 +17314,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -16755,7 +17388,7 @@ def get_instance_process_thread_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16764,8 +17397,8 @@ def get_instance_process_thread_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -16808,7 +17441,8 @@ def is_cloneable_slot( :return: SiteCloneability or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteCloneability or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.is_cloneable_slot.metadata['url'] @@ -16826,7 +17460,7 @@ def is_cloneable_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16835,13 +17469,11 @@ def is_cloneable_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -16877,7 +17509,8 @@ def list_sync_function_triggers_slot( :return: FunctionSecrets or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.FunctionSecrets or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_sync_function_triggers_slot.metadata['url'] @@ -16895,7 +17528,7 @@ def list_sync_function_triggers_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16904,13 +17537,11 @@ def list_sync_function_triggers_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -16948,7 +17579,8 @@ def list_metric_definitions_slot( :return: An iterator like instance of ResourceMetricDefinition :rtype: ~azure.mgmt.web.models.ResourceMetricDefinitionPaged[~azure.mgmt.web.models.ResourceMetricDefinition] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -16973,7 +17605,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -16982,14 +17614,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -17023,8 +17652,8 @@ def list_metrics_slot( :type details: bool :param filter: Return only metrics specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or - name.value eq 'Metric2') and startTime eq '2014-01-01T00:00:00Z' and - endTime eq '2014-12-31T23:59:59Z' and timeGrain eq + name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and + endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request @@ -17035,7 +17664,8 @@ def list_metrics_slot( :return: An iterator like instance of ResourceMetric :rtype: ~azure.mgmt.web.models.ResourceMetricPaged[~azure.mgmt.web.models.ResourceMetric] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -17064,7 +17694,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17073,14 +17703,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -17118,7 +17745,8 @@ def get_migrate_my_sql_status_slot( :return: MigrateMySqlStatus or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.MigrateMySqlStatus or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_migrate_my_sql_status_slot.metadata['url'] @@ -17136,7 +17764,7 @@ def get_migrate_my_sql_status_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17145,13 +17773,11 @@ def get_migrate_my_sql_status_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -17211,7 +17837,7 @@ def list_network_features_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17220,8 +17846,8 @@ def list_network_features_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -17266,7 +17892,8 @@ def start_web_site_network_trace_slot( overrides`. :return: str or ClientRawResponse if raw=true :rtype: str or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.start_web_site_network_trace_slot.metadata['url'] @@ -17290,7 +17917,7 @@ def start_web_site_network_trace_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17299,13 +17926,11 @@ def start_web_site_network_trace_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -17339,7 +17964,8 @@ def stop_web_site_network_trace_slot( overrides`. :return: str or ClientRawResponse if raw=true :rtype: str or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.stop_web_site_network_trace_slot.metadata['url'] @@ -17357,7 +17983,7 @@ def stop_web_site_network_trace_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17366,13 +17992,11 @@ def stop_web_site_network_trace_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -17427,7 +18051,6 @@ def generate_new_site_publishing_password_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17436,8 +18059,8 @@ def generate_new_site_publishing_password_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -17465,8 +18088,8 @@ def list_perf_mon_counters_slot( :type slot: str :param filter: Return only usages/metrics specified in the filter. Filter conforms to odata syntax. Example: $filter=(startTime eq - '2014-01-01T00:00:00Z' and endTime eq '2014-12-31T23:59:59Z' and - timeGrain eq duration'[Hour|Minute|Day]'. + 2014-01-01T00:00:00Z and endTime eq 2014-12-31T23:59:59Z and timeGrain + eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -17476,7 +18099,8 @@ def list_perf_mon_counters_slot( :return: An iterator like instance of PerfMonResponse :rtype: ~azure.mgmt.web.models.PerfMonResponsePaged[~azure.mgmt.web.models.PerfMonResponse] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -17503,7 +18127,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17512,14 +18136,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -17556,7 +18177,8 @@ def get_site_php_error_log_flag_slot( :return: SitePhpErrorLogFlag or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SitePhpErrorLogFlag or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_site_php_error_log_flag_slot.metadata['url'] @@ -17574,7 +18196,7 @@ def get_site_php_error_log_flag_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17583,13 +18205,11 @@ def get_site_php_error_log_flag_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -17607,31 +18227,250 @@ def list_premier_add_ons_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): """Gets the premier add-ons of an app. - Gets the premier add-ons of an app. + Gets the premier add-ons of an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param slot: Name of the deployment slot. If a slot is not specified, + the API will get the premier add-ons for the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PremierAddOn or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PremierAddOn or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.list_premier_add_ons_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PremierAddOn', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_premier_add_ons_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons'} + + def get_premier_add_on_slot( + self, resource_group_name, name, premier_add_on_name, slot, custom_headers=None, raw=False, **operation_config): + """Gets a named add-on of an app. + + Gets a named add-on of an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param premier_add_on_name: Add-on name. + :type premier_add_on_name: str + :param slot: Name of the deployment slot. If a slot is not specified, + the API will get the named add-on for the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PremierAddOn or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PremierAddOn or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.get_premier_add_on_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'premierAddOnName': self._serialize.url("premier_add_on_name", premier_add_on_name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PremierAddOn', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_premier_add_on_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}'} + + def add_premier_add_on_slot( + self, resource_group_name, name, premier_add_on_name, premier_add_on, slot, custom_headers=None, raw=False, **operation_config): + """Updates a named add-on of an app. + + Updates a named add-on of an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param premier_add_on_name: Add-on name. + :type premier_add_on_name: str + :param premier_add_on: A JSON representation of the edited premier + add-on. + :type premier_add_on: ~azure.mgmt.web.models.PremierAddOn + :param slot: Name of the deployment slot. If a slot is not specified, + the API will update the named add-on for the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PremierAddOn or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PremierAddOn or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.add_premier_add_on_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'premierAddOnName': self._serialize.url("premier_add_on_name", premier_add_on_name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(premier_add_on, 'PremierAddOn') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PremierAddOn', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + add_premier_add_on_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}'} + + def delete_premier_add_on_slot( + self, resource_group_name, name, premier_add_on_name, slot, custom_headers=None, raw=False, **operation_config): + """Delete a premier add-on from an app. + + Delete a premier add-on from an app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str + :param premier_add_on_name: Add-on name. + :type premier_add_on_name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the premier add-ons for the production slot. + the API will delete the named add-on for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: PremierAddOn or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.PremierAddOn or - ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ # Construct URL - url = self.list_premier_add_ons_slot.metadata['url'] + url = self.delete_premier_add_on_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), + 'premierAddOnName': self._serialize.url("premier_add_on_name", premier_add_on_name, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -17643,7 +18482,6 @@ def list_premier_add_ons_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17652,31 +18490,24 @@ def list_premier_add_ons_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._deserialize('PremierAddOn', response) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response + delete_premier_add_on_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}'} - return deserialized - list_premier_add_ons_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons'} - - def get_premier_add_on_slot( - self, resource_group_name, name, premier_add_on_name, slot, custom_headers=None, raw=False, **operation_config): - """Gets a named add-on of an app. + def update_premier_add_on_slot( + self, resource_group_name, name, premier_add_on_name, premier_add_on, slot, custom_headers=None, raw=False, **operation_config): + """Updates a named add-on of an app. - Gets a named add-on of an app. + Updates a named add-on of an app. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -17685,8 +18516,11 @@ def get_premier_add_on_slot( :type name: str :param premier_add_on_name: Add-on name. :type premier_add_on_name: str + :param premier_add_on: A JSON representation of the edited premier + add-on. + :type premier_add_on: ~azure.mgmt.web.models.PremierAddOnPatchResource :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the named add-on for the production slot. + the API will update the named add-on for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -17696,10 +18530,11 @@ def get_premier_add_on_slot( :return: PremierAddOn or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PremierAddOn or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.get_premier_add_on_slot.metadata['url'] + url = self.update_premier_add_on_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -17715,6 +18550,7 @@ def get_premier_add_on_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -17723,14 +18559,15 @@ def get_premier_add_on_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(premier_add_on, 'PremierAddOnPatchResource') + # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -17742,43 +18579,39 @@ def get_premier_add_on_slot( return client_raw_response return deserialized - get_premier_add_on_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}'} + update_premier_add_on_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}'} - def add_premier_add_on_slot( - self, resource_group_name, name, premier_add_on_name, premier_add_on, slot, custom_headers=None, raw=False, **operation_config): - """Updates a named add-on of an app. + def get_private_access_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Gets data around private site access enablement and authorized Virtual + Networks that can access the site. - Updates a named add-on of an app. + Gets data around private site access enablement and authorized Virtual + Networks that can access the site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: The name of the web app. :type name: str - :param premier_add_on_name: Add-on name. - :type premier_add_on_name: str - :param premier_add_on: A JSON representation of the edited premier - add-on. - :type premier_add_on: ~azure.mgmt.web.models.PremierAddOn - :param slot: Name of the deployment slot. If a slot is not specified, - the API will update the named add-on for the production slot. + :param slot: The name of the slot for the web app. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: PremierAddOn or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.PremierAddOn or + :return: PrivateAccess or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PrivateAccess or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.add_premier_add_on_slot.metadata['url'] + url = self.get_private_access_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'premierAddOnName': self._serialize.url("premier_add_on_name", premier_add_on_name, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -17790,7 +18623,7 @@ def add_premier_add_on_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17798,62 +18631,58 @@ def add_premier_add_on_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(premier_add_on, 'PremierAddOn') - # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('PremierAddOn', response) + deserialized = self._deserialize('PrivateAccess', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - add_premier_add_on_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}'} + get_private_access_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateAccess/virtualNetworks'} - def delete_premier_add_on_slot( - self, resource_group_name, name, premier_add_on_name, slot, custom_headers=None, raw=False, **operation_config): - """Delete a premier add-on from an app. + def put_private_access_vnet_slot( + self, resource_group_name, name, access, slot, custom_headers=None, raw=False, **operation_config): + """Sets data around private site access enablement and authorized Virtual + Networks that can access the site. - Delete a premier add-on from an app. + Sets data around private site access enablement and authorized Virtual + Networks that can access the site. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: The name of the web app. :type name: str - :param premier_add_on_name: Add-on name. - :type premier_add_on_name: str - :param slot: Name of the deployment slot. If a slot is not specified, - the API will delete the named add-on for the production slot. + :param access: The information for the private access + :type access: ~azure.mgmt.web.models.PrivateAccess + :param slot: The name of the slot for the web app. :type slot: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response :param operation_config: :ref:`Operation configuration overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: PrivateAccess or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PrivateAccess or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL - url = self.delete_premier_add_on_slot.metadata['url'] + url = self.put_private_access_vnet_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'premierAddOnName': self._serialize.url("premier_add_on_name", premier_add_on_name, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -17865,6 +18694,7 @@ def delete_premier_add_on_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -17873,19 +18703,27 @@ def delete_premier_add_on_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(access, 'PrivateAccess') + # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PrivateAccess', response) if raw: - client_raw_response = ClientRawResponse(None, response) + client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response - delete_premier_add_on_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/premieraddons/{premierAddOnName}'} + + return deserialized + put_private_access_vnet_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/privateAccess/virtualNetworks'} def list_processes_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): @@ -17936,7 +18774,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -17945,9 +18783,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -18012,7 +18849,7 @@ def get_process_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18021,8 +18858,8 @@ def get_process_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -18085,7 +18922,6 @@ def delete_process_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18094,8 +18930,8 @@ def delete_process_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204, 404]: exp = CloudError(response) @@ -18156,7 +18992,7 @@ def get_process_dump_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18165,8 +19001,8 @@ def get_process_dump_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=True, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -18237,7 +19073,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18246,9 +19082,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -18316,7 +19151,7 @@ def get_process_module_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18325,8 +19160,8 @@ def get_process_module_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -18397,7 +19232,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18406,9 +19241,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -18476,7 +19310,7 @@ def get_process_thread_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18485,8 +19319,8 @@ def get_process_thread_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -18527,7 +19361,8 @@ def list_public_certificates_slot( :return: An iterator like instance of PublicCertificate :rtype: ~azure.mgmt.web.models.PublicCertificatePaged[~azure.mgmt.web.models.PublicCertificate] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -18552,7 +19387,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18561,14 +19396,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -18609,7 +19441,8 @@ def get_public_certificate_slot( :return: PublicCertificate or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.PublicCertificate or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_public_certificate_slot.metadata['url'] @@ -18628,7 +19461,7 @@ def get_public_certificate_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18637,13 +19470,11 @@ def get_public_certificate_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -18661,37 +19492,189 @@ def create_or_update_public_certificate_slot( self, resource_group_name, name, public_certificate_name, public_certificate, slot, custom_headers=None, raw=False, **operation_config): """Creates a hostname binding for an app. - Creates a hostname binding for an app. + Creates a hostname binding for an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param public_certificate_name: Public certificate name. + :type public_certificate_name: str + :param public_certificate: Public certificate details. This is the + JSON representation of a PublicCertificate object. + :type public_certificate: ~azure.mgmt.web.models.PublicCertificate + :param slot: Name of the deployment slot. If a slot is not specified, + the API will create a binding for the production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicCertificate or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.web.models.PublicCertificate or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` + """ + # Construct URL + url = self.create_or_update_public_certificate_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'publicCertificateName': self._serialize.url("public_certificate_name", public_certificate_name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(public_certificate, 'PublicCertificate') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicCertificate', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update_public_certificate_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publicCertificates/{publicCertificateName}'} + + def delete_public_certificate_slot( + self, resource_group_name, name, slot, public_certificate_name, custom_headers=None, raw=False, **operation_config): + """Deletes a hostname binding for an app. + + Deletes a hostname binding for an app. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of the app. + :type name: str + :param slot: Name of the deployment slot. If a slot is not specified, + the API will delete the binding for the production slot. + :type slot: str + :param public_certificate_name: Public certificate name. + :type public_certificate_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.delete_public_certificate_slot.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), + 'name': self._serialize.url("name", name, 'str'), + 'slot': self._serialize.url("slot", slot, 'str'), + 'publicCertificateName': self._serialize.url("public_certificate_name", public_certificate_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + delete_public_certificate_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publicCertificates/{publicCertificateName}'} + + def list_publishing_profile_xml_with_secrets_slot( + self, resource_group_name, name, slot, format=None, include_disaster_recovery_endpoints=None, custom_headers=None, raw=False, callback=None, **operation_config): + """Gets the publishing profile for an app (or deployment slot, if + specified). + + Gets the publishing profile for an app (or deployment slot, if + specified). :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str :param name: Name of the app. :type name: str - :param public_certificate_name: Public certificate name. - :type public_certificate_name: str - :param public_certificate: Public certificate details. This is the - JSON representation of a PublicCertificate object. - :type public_certificate: ~azure.mgmt.web.models.PublicCertificate :param slot: Name of the deployment slot. If a slot is not specified, - the API will create a binding for the production slot. + the API will get the publishing profile for the production slot. :type slot: str + :param format: Name of the format. Valid values are: + FileZilla3 + WebDeploy -- default + Ftp. Possible values include: 'FileZilla3', 'WebDeploy', 'Ftp' + :type format: str or ~azure.mgmt.web.models.PublishingProfileFormat + :param include_disaster_recovery_endpoints: Include the + DisasterRecover endpoint if true + :type include_disaster_recovery_endpoints: bool :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response + :param callback: When specified, will be called with each chunk of + data that is streamed. The callback should take two arguments, the + bytes of the current chunk of data and the response object. If the + data is uploading, response will be None. + :type callback: Callable[Bytes, response=None] :param operation_config: :ref:`Operation configuration overrides`. - :return: PublicCertificate or ClientRawResponse if raw=true - :rtype: ~azure.mgmt.web.models.PublicCertificate or - ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :return: object or ClientRawResponse if raw=true + :rtype: Generator or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`DefaultErrorResponseException` """ + publishing_profile_options = models.CsmPublishingProfileOptions(format=format, include_disaster_recovery_endpoints=include_disaster_recovery_endpoints) + # Construct URL - url = self.create_or_update_public_certificate_slot.metadata['url'] + url = self.list_publishing_profile_xml_with_secrets_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), - 'publicCertificateName': self._serialize.url("public_certificate_name", public_certificate_name, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } @@ -18703,6 +19686,7 @@ def create_or_update_public_certificate_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/xml' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -18712,35 +19696,34 @@ def create_or_update_public_certificate_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(public_certificate, 'PublicCertificate') + body_content = self._serialize.body(publishing_profile_options, 'CsmPublishingProfileOptions') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=True, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: - deserialized = self._deserialize('PublicCertificate', response) + deserialized = self._client.stream_download(response, callback) if raw: client_raw_response = ClientRawResponse(deserialized, response) return client_raw_response return deserialized - create_or_update_public_certificate_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publicCertificates/{publicCertificateName}'} + list_publishing_profile_xml_with_secrets_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publishxml'} - def delete_public_certificate_slot( - self, resource_group_name, name, slot, public_certificate_name, custom_headers=None, raw=False, **operation_config): - """Deletes a hostname binding for an app. + def reset_slot_configuration_slot( + self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): + """Resets the configuration settings of the current slot if they were + previously modified by calling the API with POST. - Deletes a hostname binding for an app. + Resets the configuration settings of the current slot if they were + previously modified by calling the API with POST. :param resource_group_name: Name of the resource group to which the resource belongs. @@ -18748,10 +19731,8 @@ def delete_public_certificate_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will delete the binding for the production slot. + the API resets configuration settings for the production slot. :type slot: str - :param public_certificate_name: Public certificate name. - :type public_certificate_name: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -18762,12 +19743,11 @@ def delete_public_certificate_slot( :raises: :class:`CloudError` """ # Construct URL - url = self.delete_public_certificate_slot.metadata['url'] + url = self.reset_slot_configuration_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), 'slot': self._serialize.url("slot", slot, 'str'), - 'publicCertificateName': self._serialize.url("public_certificate_name", public_certificate_name, 'str'), 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') } url = self._client.format_url(url, **path_format_arguments) @@ -18778,7 +19758,6 @@ def delete_public_certificate_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18787,10 +19766,10 @@ def delete_public_certificate_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 204]: + if response.status_code not in [200]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -18798,15 +19777,13 @@ def delete_public_certificate_slot( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - delete_public_certificate_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publicCertificates/{publicCertificateName}'} + reset_slot_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resetSlotConfig'} - def list_publishing_profile_xml_with_secrets_slot( - self, resource_group_name, name, slot, format=None, custom_headers=None, raw=False, callback=None, **operation_config): - """Gets the publishing profile for an app (or deployment slot, if - specified). + def restart_slot( + self, resource_group_name, name, slot, soft_restart=None, synchronous=None, custom_headers=None, raw=False, **operation_config): + """Restarts an app (or deployment slot, if specified). - Gets the publishing profile for an app (or deployment slot, if - specified). + Restarts an app (or deployment slot, if specified). :param resource_group_name: Name of the resource group to which the resource belongs. @@ -18814,31 +19791,27 @@ def list_publishing_profile_xml_with_secrets_slot( :param name: Name of the app. :type name: str :param slot: Name of the deployment slot. If a slot is not specified, - the API will get the publishing profile for the production slot. + the API will restart the production slot. :type slot: str - :param format: Name of the format. Valid values are: - FileZilla3 - WebDeploy -- default - Ftp. Possible values include: 'FileZilla3', 'WebDeploy', 'Ftp' - :type format: str or ~azure.mgmt.web.models.PublishingProfileFormat + :param soft_restart: Specify true to apply the configuration settings + and restarts the app only if necessary. By default, the API always + restarts and reprovisions the app. + :type soft_restart: bool + :param synchronous: Specify true to block until the app is restarted. + By default, it is set to false, and the API responds immediately + (asynchronous). + :type synchronous: bool :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response - :param callback: When specified, will be called with each chunk of - data that is streamed. The callback should take two arguments, the - bytes of the current chunk of data and the response object. If the - data is uploading, response will be None. - :type callback: Callable[Bytes, response=None] :param operation_config: :ref:`Operation configuration overrides`. - :return: object or ClientRawResponse if raw=true - :rtype: Generator or ~msrest.pipeline.ClientRawResponse + :return: None or ClientRawResponse if raw=true + :rtype: None or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` """ - publishing_profile_options = models.CsmPublishingProfileOptions(format=format) - # Construct URL - url = self.list_publishing_profile_xml_with_secrets_slot.metadata['url'] + url = self.restart_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -18849,11 +19822,14 @@ def list_publishing_profile_xml_with_secrets_slot( # Construct parameters query_parameters = {} + if soft_restart is not None: + query_parameters['softRestart'] = self._serialize.query("soft_restart", soft_restart, 'bool') + if synchronous is not None: + query_parameters['synchronous'] = self._serialize.query("synchronous", synchronous, 'bool') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -18861,36 +19837,25 @@ def list_publishing_profile_xml_with_secrets_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') - # Construct body - body_content = self._serialize.body(publishing_profile_options, 'CsmPublishingProfileOptions') - # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=True, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp - deserialized = None - - if response.status_code == 200: - deserialized = self._client.stream_download(response, callback) - if raw: - client_raw_response = ClientRawResponse(deserialized, response) + client_raw_response = ClientRawResponse(None, response) return client_raw_response - - return deserialized - list_publishing_profile_xml_with_secrets_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/publishxml'} + restart_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restart'} - def _recover_slot_initial( - self, resource_group_name, name, recovery_entity, slot, custom_headers=None, raw=False, **operation_config): + def _restore_from_backup_blob_slot_initial( + self, resource_group_name, name, request, slot, custom_headers=None, raw=False, **operation_config): # Construct URL - url = self.recover_slot.metadata['url'] + url = self.restore_from_backup_blob_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -18914,12 +19879,11 @@ def _recover_slot_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct body - body_content = self._serialize.body(recovery_entity, 'SnapshotRecoveryRequest') + body_content = self._serialize.body(request, 'RestoreRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -18930,105 +19894,62 @@ def _recover_slot_initial( client_raw_response = ClientRawResponse(None, response) return client_raw_response - def recover_slot( - self, resource_group_name, name, recovery_entity, slot, custom_headers=None, raw=False, **operation_config): - """Recovers a web app to a previous snapshot. + def restore_from_backup_blob_slot( + self, resource_group_name, name, request, slot, custom_headers=None, raw=False, polling=True, **operation_config): + """Restores an app from a backup blob in Azure Storage. - Recovers a web app to a previous snapshot. + Restores an app from a backup blob in Azure Storage. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of web app. + :param name: Name of the app. :type name: str - :param recovery_entity: Snapshot data used for web app recovery. - Snapshot information can be obtained by calling GetDeletedSites or - GetSiteSnapshots API. - :type recovery_entity: ~azure.mgmt.web.models.SnapshotRecoveryRequest - :param slot: Name of web app slot. If not specified then will default - to production slot. + :param request: Information on restore request . + :type request: ~azure.mgmt.web.models.RestoreRequest + :param slot: Name of the deployment slot. If a slot is not specified, + the API will restore a backup of the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ - raw_result = self._recover_slot_initial( + raw_result = self._restore_from_backup_blob_slot_initial( resource_group_name=resource_group_name, name=name, - recovery_entity=recovery_entity, + request=request, slot=slot, custom_headers=custom_headers, raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) - recover_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/recover'} - - def reset_slot_configuration_slot( - self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): - """Resets the configuration settings of the current slot if they were - previously modified by calling the API with POST. + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restore_from_backup_blob_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreFromBackupBlob'} - Resets the configuration settings of the current slot if they were - previously modified by calling the API with POST. - :param resource_group_name: Name of the resource group to which the - resource belongs. - :type resource_group_name: str - :param name: Name of the app. - :type name: str - :param slot: Name of the deployment slot. If a slot is not specified, - the API resets configuration settings for the production slot. - :type slot: str - :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` - """ + def _restore_from_deleted_app_slot_initial( + self, resource_group_name, name, restore_request, slot, custom_headers=None, raw=False, **operation_config): # Construct URL - url = self.reset_slot_configuration_slot.metadata['url'] + url = self.restore_from_deleted_app_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -19051,11 +19972,14 @@ def reset_slot_configuration_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(restore_request, 'DeletedAppRestoreRequest') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 202]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -19063,41 +19987,63 @@ def reset_slot_configuration_slot( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - reset_slot_configuration_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/resetSlotConfig'} - def restart_slot( - self, resource_group_name, name, slot, soft_restart=None, synchronous=None, custom_headers=None, raw=False, **operation_config): - """Restarts an app (or deployment slot, if specified). + def restore_from_deleted_app_slot( + self, resource_group_name, name, restore_request, slot, custom_headers=None, raw=False, polling=True, **operation_config): + """Restores a deleted web app to this web app. - Restarts an app (or deployment slot, if specified). + Restores a deleted web app to this web app. :param resource_group_name: Name of the resource group to which the resource belongs. :type resource_group_name: str - :param name: Name of the app. + :param name: Name of web app. :type name: str - :param slot: Name of the deployment slot. If a slot is not specified, - the API will restart the production slot. + :param restore_request: Deleted web app restore information. + :type restore_request: ~azure.mgmt.web.models.DeletedAppRestoreRequest + :param slot: Name of web app slot. If not specified then will default + to production slot. :type slot: str - :param soft_restart: Specify true to apply the configuration settings - and restarts the app only if necessary. By default, the API always - restarts and reprovisions the app. - :type soft_restart: bool - :param synchronous: Specify true to block until the app is restarted. - By default, it is set to false, and the API responds immediately - (asynchronous). - :type synchronous: bool :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :param operation_config: :ref:`Operation configuration - overrides`. - :return: None or ClientRawResponse if raw=true - :rtype: None or ~msrest.pipeline.ClientRawResponse + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ + raw_result = self._restore_from_deleted_app_slot_initial( + resource_group_name=resource_group_name, + name=name, + restore_request=restore_request, + slot=slot, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restore_from_deleted_app_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreFromDeletedApp'} + + + def _restore_snapshot_slot_initial( + self, resource_group_name, name, restore_request, slot, custom_headers=None, raw=False, **operation_config): # Construct URL - url = self.restart_slot.metadata['url'] + url = self.restore_snapshot_slot.metadata['url'] path_format_arguments = { 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern=r'^[-\w\._\(\)]+[^\.]$'), 'name': self._serialize.url("name", name, 'str'), @@ -19108,10 +20054,6 @@ def restart_slot( # Construct parameters query_parameters = {} - if soft_restart is not None: - query_parameters['softRestart'] = self._serialize.query("soft_restart", soft_restart, 'bool') - if synchronous is not None: - query_parameters['synchronous'] = self._serialize.query("synchronous", synchronous, 'bool') query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers @@ -19124,11 +20066,14 @@ def restart_slot( if self.config.accept_language is not None: header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + # Construct body + body_content = self._serialize.body(restore_request, 'SnapshotRestoreRequest') + # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: + if response.status_code not in [200, 202]: exp = CloudError(response) exp.request_id = response.headers.get('x-ms-request-id') raise exp @@ -19136,7 +20081,59 @@ def restart_slot( if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - restart_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restart'} + + def restore_snapshot_slot( + self, resource_group_name, name, restore_request, slot, custom_headers=None, raw=False, polling=True, **operation_config): + """Restores a web app from a snapshot. + + Restores a web app from a snapshot. + + :param resource_group_name: Name of the resource group to which the + resource belongs. + :type resource_group_name: str + :param name: Name of web app. + :type name: str + :param restore_request: Snapshot restore settings. Snapshot + information can be obtained by calling GetDeletedSites or + GetSiteSnapshots API. + :type restore_request: ~azure.mgmt.web.models.SnapshotRestoreRequest + :param slot: Name of web app slot. If not specified then will default + to production slot. + :type slot: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._restore_snapshot_slot_initial( + resource_group_name=resource_group_name, + name=name, + restore_request=restore_request, + slot=slot, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + restore_snapshot_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/restoreSnapshot'} def list_site_extensions_slot( self, resource_group_name, name, slot, custom_headers=None, raw=False, **operation_config): @@ -19185,7 +20182,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -19194,9 +20191,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -19261,7 +20257,7 @@ def get_site_extension_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -19270,8 +20266,8 @@ def get_site_extension_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -19310,7 +20306,7 @@ def _install_site_extension_slot_initial( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -19319,8 +20315,8 @@ def _install_site_extension_slot_initial( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 201, 429]: exp = CloudError(response) @@ -19341,7 +20337,7 @@ def _install_site_extension_slot_initial( return deserialized def install_site_extension_slot( - self, resource_group_name, name, site_extension_id, slot, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_extension_id, slot, custom_headers=None, raw=False, polling=True, **operation_config): """Install site extension on a web site, or a deployment slot. Install site extension on a web site, or a deployment slot. @@ -19357,13 +20353,16 @@ def install_site_extension_slot( the API deletes a deployment for the production slot. :type slot: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - SiteExtensionInfo or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SiteExtensionInfo or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.SiteExtensionInfo] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.SiteExtensionInfo]] :raises: :class:`CloudError` """ raw_result = self._install_site_extension_slot_initial( @@ -19375,30 +20374,8 @@ def install_site_extension_slot( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201, 429]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('SiteExtensionInfo', response) if raw: @@ -19407,12 +20384,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) install_site_extension_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/siteextensions/{siteExtensionId}'} def delete_site_extension_slot( @@ -19457,7 +20435,6 @@ def delete_site_extension_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -19466,8 +20443,8 @@ def delete_site_extension_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204, 404]: exp = CloudError(response) @@ -19506,7 +20483,8 @@ def list_slot_differences_slot( :return: An iterator like instance of SlotDifference :rtype: ~azure.mgmt.web.models.SlotDifferencePaged[~azure.mgmt.web.models.SlotDifference] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ slot_swap_entity = models.CsmSlotEntity(target_slot=target_slot, preserve_vnet=preserve_vnet) @@ -19533,6 +20511,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -19545,14 +20524,11 @@ def internal_paging(next_link=None, raw=False): body_content = self._serialize.body(slot_swap_entity, 'CsmSlotEntity') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -19600,9 +20576,8 @@ def _swap_slot_slot_initial( body_content = self._serialize.body(slot_swap_entity, 'CsmSlotEntity') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -19614,7 +20589,7 @@ def _swap_slot_slot_initial( return client_raw_response def swap_slot_slot( - self, resource_group_name, name, slot, target_slot, preserve_vnet, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, slot, target_slot, preserve_vnet, custom_headers=None, raw=False, polling=True, **operation_config): """Swaps two deployment slots of an app. Swaps two deployment slots of an app. @@ -19633,12 +20608,14 @@ def swap_slot_slot( the slot during swap; otherwise, false. :type preserve_vnet: bool :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._swap_slot_slot_initial( @@ -19651,40 +20628,19 @@ def swap_slot_slot( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) swap_slot_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/slotsswap'} def list_snapshots_slot( @@ -19708,7 +20664,8 @@ def list_snapshots_slot( :return: An iterator like instance of Snapshot :rtype: ~azure.mgmt.web.models.SnapshotPaged[~azure.mgmt.web.models.Snapshot] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -19733,7 +20690,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -19742,14 +20699,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -19787,7 +20741,8 @@ def get_source_control_slot( :return: SiteSourceControl or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteSourceControl or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_source_control_slot.metadata['url'] @@ -19805,7 +20760,7 @@ def get_source_control_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -19814,18 +20769,20 @@ def get_source_control_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200, 201, 202]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: deserialized = self._deserialize('SiteSourceControl', response) + if response.status_code == 201: + deserialized = self._deserialize('SiteSourceControl', response) + if response.status_code == 202: + deserialized = self._deserialize('SiteSourceControl', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -19853,6 +20810,7 @@ def _create_or_update_source_control_slot_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -19865,14 +20823,11 @@ def _create_or_update_source_control_slot_initial( body_content = self._serialize.body(site_source_control, 'SiteSourceControl') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200, 201, 202]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -19880,6 +20835,8 @@ def _create_or_update_source_control_slot_initial( deserialized = self._deserialize('SiteSourceControl', response) if response.status_code == 201: deserialized = self._deserialize('SiteSourceControl', response) + if response.status_code == 202: + deserialized = self._deserialize('SiteSourceControl', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -19888,7 +20845,7 @@ def _create_or_update_source_control_slot_initial( return deserialized def create_or_update_source_control_slot( - self, resource_group_name, name, site_source_control, slot, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_source_control, slot, custom_headers=None, raw=False, polling=True, **operation_config): """Updates the source control configuration of an app. Updates the source control configuration of an app. @@ -19906,14 +20863,18 @@ def create_or_update_source_control_slot( production slot. :type slot: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - SiteSourceControl or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SiteSourceControl or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.SiteSourceControl] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.SiteSourceControl]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_or_update_source_control_slot_initial( resource_group_name=resource_group_name, @@ -19924,30 +20885,8 @@ def create_or_update_source_control_slot( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('SiteSourceControl', response) if raw: @@ -19956,12 +20895,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update_source_control_slot.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/sourcecontrols/web'} def delete_source_control_slot( @@ -20004,7 +20944,6 @@ def delete_source_control_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20013,8 +20952,8 @@ def delete_source_control_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 404]: exp = CloudError(response) @@ -20052,7 +20991,8 @@ def update_source_control_slot( :return: SiteSourceControl or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteSourceControl or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_source_control_slot.metadata['url'] @@ -20070,6 +21010,7 @@ def update_source_control_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -20082,14 +21023,11 @@ def update_source_control_slot( body_content = self._serialize.body(site_source_control, 'SiteSourceControl') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200, 201, 202]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -20097,6 +21035,8 @@ def update_source_control_slot( deserialized = self._deserialize('SiteSourceControl', response) if response.status_code == 201: deserialized = self._deserialize('SiteSourceControl', response) + if response.status_code == 202: + deserialized = self._deserialize('SiteSourceControl', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -20144,7 +21084,6 @@ def start_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20153,8 +21092,8 @@ def start_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -20205,7 +21144,6 @@ def stop_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20214,8 +21152,8 @@ def stop_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -20266,7 +21204,6 @@ def sync_repository_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20275,8 +21212,8 @@ def sync_repository_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -20327,7 +21264,6 @@ def sync_function_triggers_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20336,8 +21272,8 @@ def sync_function_triggers_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -20371,7 +21307,8 @@ def list_triggered_web_jobs_slot( :return: An iterator like instance of TriggeredWebJob :rtype: ~azure.mgmt.web.models.TriggeredWebJobPaged[~azure.mgmt.web.models.TriggeredWebJob] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -20396,7 +21333,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20405,14 +21342,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -20470,7 +21404,7 @@ def get_triggered_web_job_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20479,8 +21413,8 @@ def get_triggered_web_job_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -20541,7 +21475,6 @@ def delete_triggered_web_job_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20550,8 +21483,8 @@ def delete_triggered_web_job_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -20613,7 +21546,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20622,9 +21555,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -20692,7 +21624,7 @@ def get_triggered_web_job_history_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20701,8 +21633,8 @@ def get_triggered_web_job_history_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -20763,7 +21695,6 @@ def run_triggered_web_job_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20772,8 +21703,8 @@ def run_triggered_web_job_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -20803,8 +21734,8 @@ def list_usages_slot( :type slot: str :param filter: Return only information specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or - name.value eq 'Metric2') and startTime eq '2014-01-01T00:00:00Z' and - endTime eq '2014-12-31T23:59:59Z' and timeGrain eq + name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and + endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request @@ -20815,7 +21746,8 @@ def list_usages_slot( :return: An iterator like instance of CsmUsageQuota :rtype: ~azure.mgmt.web.models.CsmUsageQuotaPaged[~azure.mgmt.web.models.CsmUsageQuota] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -20842,7 +21774,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20851,14 +21783,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -20895,7 +21824,8 @@ def list_vnet_connections_slot( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.VnetInfo] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_vnet_connections_slot.metadata['url'] @@ -20913,7 +21843,7 @@ def list_vnet_connections_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20922,13 +21852,11 @@ def list_vnet_connections_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -20968,7 +21896,8 @@ def get_vnet_connection_slot( :return: VnetInfo or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetInfo or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_vnet_connection_slot.metadata['url'] @@ -20987,7 +21916,7 @@ def get_vnet_connection_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -20996,13 +21925,11 @@ def get_vnet_connection_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -21045,7 +21972,8 @@ def create_or_update_vnet_connection_slot( :return: VnetInfo or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetInfo or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_vnet_connection_slot.metadata['url'] @@ -21064,6 +21992,7 @@ def create_or_update_vnet_connection_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -21076,14 +22005,11 @@ def create_or_update_vnet_connection_slot( body_content = self._serialize.body(connection_envelope, 'VnetInfo') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -21141,7 +22067,6 @@ def delete_vnet_connection_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -21150,8 +22075,8 @@ def delete_vnet_connection_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -21192,7 +22117,8 @@ def update_vnet_connection_slot( :return: VnetInfo or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetInfo or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_vnet_connection_slot.metadata['url'] @@ -21211,6 +22137,7 @@ def update_vnet_connection_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -21223,14 +22150,11 @@ def update_vnet_connection_slot( body_content = self._serialize.body(connection_envelope, 'VnetInfo') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -21291,7 +22215,7 @@ def get_vnet_connection_gateway_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -21300,8 +22224,8 @@ def get_vnet_connection_gateway_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -21353,7 +22277,8 @@ def create_or_update_vnet_connection_gateway_slot( :return: VnetGateway or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetGateway or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_vnet_connection_gateway_slot.metadata['url'] @@ -21373,6 +22298,7 @@ def create_or_update_vnet_connection_gateway_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -21385,14 +22311,11 @@ def create_or_update_vnet_connection_gateway_slot( body_content = self._serialize.body(connection_envelope, 'VnetGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -21439,7 +22362,8 @@ def update_vnet_connection_gateway_slot( :return: VnetGateway or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetGateway or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_vnet_connection_gateway_slot.metadata['url'] @@ -21459,6 +22383,7 @@ def update_vnet_connection_gateway_slot( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -21471,14 +22396,11 @@ def update_vnet_connection_gateway_slot( body_content = self._serialize.body(connection_envelope, 'VnetGateway') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -21514,7 +22436,8 @@ def list_web_jobs_slot( :return: An iterator like instance of WebJob :rtype: ~azure.mgmt.web.models.WebJobPaged[~azure.mgmt.web.models.WebJob] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -21539,7 +22462,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -21548,14 +22471,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -21594,7 +22514,8 @@ def get_web_job_slot( :return: WebJob or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.WebJob or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_web_job_slot.metadata['url'] @@ -21613,7 +22534,7 @@ def get_web_job_slot( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -21622,13 +22543,11 @@ def get_web_job_slot( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -21666,7 +22585,8 @@ def list_slot_differences_from_production( :return: An iterator like instance of SlotDifference :rtype: ~azure.mgmt.web.models.SlotDifferencePaged[~azure.mgmt.web.models.SlotDifference] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ slot_swap_entity = models.CsmSlotEntity(target_slot=target_slot, preserve_vnet=preserve_vnet) @@ -21692,6 +22612,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -21704,14 +22625,11 @@ def internal_paging(next_link=None, raw=False): body_content = self._serialize.body(slot_swap_entity, 'CsmSlotEntity') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -21758,9 +22676,8 @@ def _swap_slot_with_production_initial( body_content = self._serialize.body(slot_swap_entity, 'CsmSlotEntity') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202]: exp = CloudError(response) @@ -21772,7 +22689,7 @@ def _swap_slot_with_production_initial( return client_raw_response def swap_slot_with_production( - self, resource_group_name, name, target_slot, preserve_vnet, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, target_slot, preserve_vnet, custom_headers=None, raw=False, polling=True, **operation_config): """Swaps two deployment slots of an app. Swaps two deployment slots of an app. @@ -21788,12 +22705,14 @@ def swap_slot_with_production( the slot during swap; otherwise, false. :type preserve_vnet: bool :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._swap_slot_with_production_initial( @@ -21805,40 +22724,19 @@ def swap_slot_with_production( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) swap_slot_with_production.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slotsswap'} def list_snapshots( @@ -21860,7 +22758,8 @@ def list_snapshots( :return: An iterator like instance of Snapshot :rtype: ~azure.mgmt.web.models.SnapshotPaged[~azure.mgmt.web.models.Snapshot] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -21884,7 +22783,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -21893,14 +22792,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -21934,7 +22830,8 @@ def get_source_control( :return: SiteSourceControl or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteSourceControl or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_source_control.metadata['url'] @@ -21951,7 +22848,7 @@ def get_source_control( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -21960,18 +22857,20 @@ def get_source_control( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200, 201, 202]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None if response.status_code == 200: deserialized = self._deserialize('SiteSourceControl', response) + if response.status_code == 201: + deserialized = self._deserialize('SiteSourceControl', response) + if response.status_code == 202: + deserialized = self._deserialize('SiteSourceControl', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -21998,6 +22897,7 @@ def _create_or_update_source_control_initial( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -22010,14 +22910,11 @@ def _create_or_update_source_control_initial( body_content = self._serialize.body(site_source_control, 'SiteSourceControl') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200, 201, 202]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -22025,6 +22922,8 @@ def _create_or_update_source_control_initial( deserialized = self._deserialize('SiteSourceControl', response) if response.status_code == 201: deserialized = self._deserialize('SiteSourceControl', response) + if response.status_code == 202: + deserialized = self._deserialize('SiteSourceControl', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -22033,7 +22932,7 @@ def _create_or_update_source_control_initial( return deserialized def create_or_update_source_control( - self, resource_group_name, name, site_source_control, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, name, site_source_control, custom_headers=None, raw=False, polling=True, **operation_config): """Updates the source control configuration of an app. Updates the source control configuration of an app. @@ -22047,14 +22946,18 @@ def create_or_update_source_control( object. See example. :type site_source_control: ~azure.mgmt.web.models.SiteSourceControl :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - SiteSourceControl or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SiteSourceControl or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.web.models.SiteSourceControl] - or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.web.models.SiteSourceControl]] + :raises: + :class:`DefaultErrorResponseException` """ raw_result = self._create_or_update_source_control_initial( resource_group_name=resource_group_name, @@ -22064,30 +22967,8 @@ def create_or_update_source_control( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('SiteSourceControl', response) if raw: @@ -22096,12 +22977,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update_source_control.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/sourcecontrols/web'} def delete_source_control( @@ -22139,7 +23021,6 @@ def delete_source_control( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22148,8 +23029,8 @@ def delete_source_control( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 202, 404]: exp = CloudError(response) @@ -22183,7 +23064,8 @@ def update_source_control( :return: SiteSourceControl or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SiteSourceControl or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_source_control.metadata['url'] @@ -22200,6 +23082,7 @@ def update_source_control( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -22212,14 +23095,11 @@ def update_source_control( body_content = self._serialize.body(site_source_control, 'SiteSourceControl') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) - if response.status_code not in [200, 201]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + if response.status_code not in [200, 201, 202]: + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -22227,6 +23107,8 @@ def update_source_control( deserialized = self._deserialize('SiteSourceControl', response) if response.status_code == 201: deserialized = self._deserialize('SiteSourceControl', response) + if response.status_code == 202: + deserialized = self._deserialize('SiteSourceControl', response) if raw: client_raw_response = ClientRawResponse(deserialized, response) @@ -22270,7 +23152,6 @@ def start( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22279,8 +23160,8 @@ def start( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -22327,7 +23208,6 @@ def stop( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22336,8 +23216,8 @@ def stop( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -22384,7 +23264,6 @@ def sync_repository( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22393,8 +23272,8 @@ def sync_repository( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: exp = CloudError(response) @@ -22441,7 +23320,6 @@ def sync_function_triggers( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22450,8 +23328,8 @@ def sync_function_triggers( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -22482,7 +23360,8 @@ def list_triggered_web_jobs( :return: An iterator like instance of TriggeredWebJob :rtype: ~azure.mgmt.web.models.TriggeredWebJobPaged[~azure.mgmt.web.models.TriggeredWebJob] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -22506,7 +23385,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22515,14 +23394,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -22576,7 +23452,7 @@ def get_triggered_web_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22585,8 +23461,8 @@ def get_triggered_web_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -22643,7 +23519,6 @@ def delete_triggered_web_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22652,8 +23527,8 @@ def delete_triggered_web_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 204]: exp = CloudError(response) @@ -22711,7 +23586,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22720,9 +23595,8 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -22786,7 +23660,7 @@ def get_triggered_web_job_history( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22795,8 +23669,8 @@ def get_triggered_web_job_history( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -22853,7 +23727,6 @@ def run_triggered_web_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22862,8 +23735,8 @@ def run_triggered_web_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -22890,8 +23763,8 @@ def list_usages( :type name: str :param filter: Return only information specified in the filter (using OData syntax). For example: $filter=(name.value eq 'Metric1' or - name.value eq 'Metric2') and startTime eq '2014-01-01T00:00:00Z' and - endTime eq '2014-12-31T23:59:59Z' and timeGrain eq + name.value eq 'Metric2') and startTime eq 2014-01-01T00:00:00Z and + endTime eq 2014-12-31T23:59:59Z and timeGrain eq duration'[Hour|Minute|Day]'. :type filter: str :param dict custom_headers: headers that will be added to the request @@ -22902,7 +23775,8 @@ def list_usages( :return: An iterator like instance of CsmUsageQuota :rtype: ~azure.mgmt.web.models.CsmUsageQuotaPaged[~azure.mgmt.web.models.CsmUsageQuota] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -22928,7 +23802,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -22937,14 +23811,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -22978,7 +23849,8 @@ def list_vnet_connections( :return: list or ClientRawResponse if raw=true :rtype: list[~azure.mgmt.web.models.VnetInfo] or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.list_vnet_connections.metadata['url'] @@ -22995,7 +23867,7 @@ def list_vnet_connections( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -23004,13 +23876,11 @@ def list_vnet_connections( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -23047,7 +23917,8 @@ def get_vnet_connection( :return: VnetInfo or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetInfo or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_vnet_connection.metadata['url'] @@ -23065,7 +23936,7 @@ def get_vnet_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -23074,13 +23945,11 @@ def get_vnet_connection( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -23120,7 +23989,8 @@ def create_or_update_vnet_connection( :return: VnetInfo or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetInfo or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_vnet_connection.metadata['url'] @@ -23138,6 +24008,7 @@ def create_or_update_vnet_connection( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -23150,14 +24021,11 @@ def create_or_update_vnet_connection( body_content = self._serialize.body(connection_envelope, 'VnetInfo') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -23211,7 +24079,6 @@ def delete_vnet_connection( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -23220,8 +24087,8 @@ def delete_vnet_connection( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.delete(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -23259,7 +24126,8 @@ def update_vnet_connection( :return: VnetInfo or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetInfo or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_vnet_connection.metadata['url'] @@ -23277,6 +24145,7 @@ def update_vnet_connection( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -23289,14 +24158,11 @@ def update_vnet_connection( body_content = self._serialize.body(connection_envelope, 'VnetInfo') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -23353,7 +24219,7 @@ def get_vnet_connection_gateway( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -23362,8 +24228,8 @@ def get_vnet_connection_gateway( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200, 404]: exp = CloudError(response) @@ -23411,7 +24277,8 @@ def create_or_update_vnet_connection_gateway( :return: VnetGateway or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetGateway or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.create_or_update_vnet_connection_gateway.metadata['url'] @@ -23430,6 +24297,7 @@ def create_or_update_vnet_connection_gateway( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -23442,14 +24310,11 @@ def create_or_update_vnet_connection_gateway( body_content = self._serialize.body(connection_envelope, 'VnetGateway') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -23492,7 +24357,8 @@ def update_vnet_connection_gateway( :return: VnetGateway or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetGateway or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.update_vnet_connection_gateway.metadata['url'] @@ -23511,6 +24377,7 @@ def update_vnet_connection_gateway( # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -23523,14 +24390,11 @@ def update_vnet_connection_gateway( body_content = self._serialize.body(connection_envelope, 'VnetGateway') # Construct and send request - request = self._client.patch(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -23563,7 +24427,8 @@ def list_web_jobs( :return: An iterator like instance of WebJob :rtype: ~azure.mgmt.web.models.WebJobPaged[~azure.mgmt.web.models.WebJob] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ def internal_paging(next_link=None, raw=False): @@ -23587,7 +24452,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -23596,14 +24461,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -23639,7 +24501,8 @@ def get_web_job( :return: WebJob or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.WebJob or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ # Construct URL url = self.get_web_job.metadata['url'] @@ -23657,7 +24520,7 @@ def get_web_job( # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -23666,13 +24529,11 @@ def get_web_job( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None diff --git a/azure-mgmt-web/azure/mgmt/web/version.py b/azure-mgmt-web/azure/mgmt/web/version.py index a39f64422a75..57866fdf17d0 100644 --- a/azure-mgmt-web/azure/mgmt/web/version.py +++ b/azure-mgmt-web/azure/mgmt/web/version.py @@ -9,5 +9,5 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.35.0" +VERSION = "0.40.0" diff --git a/azure-mgmt-web/azure/mgmt/web/web_site_management_client.py b/azure-mgmt-web/azure/mgmt/web/web_site_management_client.py index a7da435b33ab..5574e1ff74b6 100644 --- a/azure-mgmt-web/azure/mgmt/web/web_site_management_client.py +++ b/azure-mgmt-web/azure/mgmt/web/web_site_management_client.py @@ -9,13 +9,14 @@ # regenerated. # -------------------------------------------------------------------------- -from msrest.service_client import ServiceClient +from msrest.service_client import SDKClient from msrest import Serializer, Deserializer from msrestazure import AzureConfiguration from .version import VERSION from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling import uuid from .operations.app_service_certificate_orders_operations import AppServiceCertificateOrdersOperations from .operations.certificate_registration_provider_operations import CertificateRegistrationProviderOperations @@ -30,6 +31,7 @@ from .operations.web_apps_operations import WebAppsOperations from .operations.app_service_environments_operations import AppServiceEnvironmentsOperations from .operations.app_service_plans_operations import AppServicePlansOperations +from .operations.resource_health_metadata_operations import ResourceHealthMetadataOperations from . import models @@ -66,7 +68,7 @@ def __init__( self.subscription_id = subscription_id -class WebSiteManagementClient(object): +class WebSiteManagementClient(SDKClient): """WebSite Management Client :ivar config: Configuration for client. @@ -98,6 +100,8 @@ class WebSiteManagementClient(object): :vartype app_service_environments: azure.mgmt.web.operations.AppServiceEnvironmentsOperations :ivar app_service_plans: AppServicePlans operations :vartype app_service_plans: azure.mgmt.web.operations.AppServicePlansOperations + :ivar resource_health_metadata: ResourceHealthMetadata operations + :vartype resource_health_metadata: azure.mgmt.web.operations.ResourceHealthMetadataOperations :param credentials: Credentials needed for the client to connect to Azure. :type credentials: :mod:`A msrestazure Credentials @@ -112,9 +116,10 @@ def __init__( self, credentials, subscription_id, base_url=None): self.config = WebSiteManagementClientConfiguration(credentials, subscription_id, base_url) - self._client = ServiceClient(self.config.credentials, self.config) + super(WebSiteManagementClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self.api_version = '2018-02-01' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) @@ -144,6 +149,8 @@ def __init__( self._client, self.config, self._serialize, self._deserialize) self.app_service_plans = AppServicePlansOperations( self._client, self.config, self._serialize, self._deserialize) + self.resource_health_metadata = ResourceHealthMetadataOperations( + self._client, self.config, self._serialize, self._deserialize) def get_publishing_user( self, custom_headers=None, raw=False, **operation_config): @@ -159,20 +166,19 @@ def get_publishing_user( :return: User or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.User or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - # Construct URL url = self.get_publishing_user.metadata['url'] # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -181,13 +187,11 @@ def get_publishing_user( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -217,19 +221,19 @@ def update_publishing_user( :return: User or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.User or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - # Construct URL url = self.update_publishing_user.metadata['url'] # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -242,14 +246,11 @@ def update_publishing_user( body_content = self._serialize.body(user_details, 'User') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -277,10 +278,9 @@ def list_source_controls( :return: An iterator like instance of SourceControl :rtype: ~azure.mgmt.web.models.SourceControlPaged[~azure.mgmt.web.models.SourceControl] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - def internal_paging(next_link=None, raw=False): if not next_link: @@ -289,7 +289,7 @@ def internal_paging(next_link=None, raw=False): # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') else: url = next_link @@ -297,7 +297,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -306,14 +306,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -344,10 +341,9 @@ def get_source_control( :return: SourceControl or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SourceControl or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - # Construct URL url = self.get_source_control.metadata['url'] path_format_arguments = { @@ -357,11 +353,11 @@ def get_source_control( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -370,13 +366,11 @@ def get_source_control( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -408,10 +402,9 @@ def update_source_control( :return: SourceControl or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SourceControl or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - # Construct URL url = self.update_source_control.metadata['url'] path_format_arguments = { @@ -421,10 +414,11 @@ def update_source_control( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -437,14 +431,11 @@ def update_source_control( body_content = self._serialize.body(request_message, 'SourceControl') # Construct and send request - request = self._client.put(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -458,6 +449,79 @@ def update_source_control( return deserialized update_source_control.metadata = {'url': '/providers/Microsoft.Web/sourcecontrols/{sourceControlType}'} + def list_billing_meters( + self, billing_location=None, os_type=None, custom_headers=None, raw=False, **operation_config): + """Gets a list of meters for a given location. + + Gets a list of meters for a given location. + + :param billing_location: Azure Location of billable resource + :type billing_location: str + :param os_type: App Service OS type meters used for + :type os_type: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BillingMeter + :rtype: + ~azure.mgmt.web.models.BillingMeterPaged[~azure.mgmt.web.models.BillingMeter] + :raises: + :class:`DefaultErrorResponseException` + """ + def internal_paging(next_link=None, raw=False): + + if not next_link: + # Construct URL + url = self.list_billing_meters.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if billing_location is not None: + query_parameters['billingLocation'] = self._serialize.query("billing_location", billing_location, 'str') + if os_type is not None: + query_parameters['osType'] = self._serialize.query("os_type", os_type, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.DefaultErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + deserialized = models.BillingMeterPaged(internal_paging, self._deserialize.dependencies) + + if raw: + header_dict = {} + client_raw_response = models.BillingMeterPaged(internal_paging, self._deserialize.dependencies, header_dict) + return client_raw_response + + return deserialized + list_billing_meters.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Web/billingMeters'} + def check_name_availability( self, name, type, is_fqdn=None, custom_headers=None, raw=False, **operation_config): """Check if a resource name is available. @@ -481,12 +545,11 @@ def check_name_availability( :return: ResourceNameAvailability or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.ResourceNameAvailability or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ request = models.ResourceNameAvailabilityRequest(name=name, type=type, is_fqdn=is_fqdn) - api_version = "2016-03-01" - # Construct URL url = self.check_name_availability.metadata['url'] path_format_arguments = { @@ -496,10 +559,11 @@ def check_name_availability( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -512,14 +576,11 @@ def check_name_availability( body_content = self._serialize.body(request, 'ResourceNameAvailabilityRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -547,10 +608,9 @@ def get_subscription_deployment_locations( :return: DeploymentLocations or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.DeploymentLocations or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - # Construct URL url = self.get_subscription_deployment_locations.metadata['url'] path_format_arguments = { @@ -560,11 +620,11 @@ def get_subscription_deployment_locations( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -573,13 +633,11 @@ def get_subscription_deployment_locations( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -594,18 +652,21 @@ def get_subscription_deployment_locations( get_subscription_deployment_locations.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Web/deploymentLocations'} def list_geo_regions( - self, sku=None, linux_workers_enabled=None, custom_headers=None, raw=False, **operation_config): + self, sku=None, linux_workers_enabled=None, xenon_workers_enabled=None, custom_headers=None, raw=False, **operation_config): """Get a list of available geographical regions. Get a list of available geographical regions. :param sku: Name of SKU used to filter the regions. Possible values - include: 'Free', 'Shared', 'Basic', 'Standard', 'Premium', - 'PremiumV2', 'Dynamic', 'Isolated' + include: 'Free', 'Shared', 'Basic', 'Standard', 'Premium', 'Dynamic', + 'Isolated', 'PremiumV2' :type sku: str or ~azure.mgmt.web.models.SkuName :param linux_workers_enabled: Specify true if you want to filter to only regions that support Linux workers. :type linux_workers_enabled: bool + :param xenon_workers_enabled: Specify true if you want to + filter to only regions that support Xenon workers. + :type xenon_workers_enabled: bool :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -614,10 +675,9 @@ def list_geo_regions( :return: An iterator like instance of GeoRegion :rtype: ~azure.mgmt.web.models.GeoRegionPaged[~azure.mgmt.web.models.GeoRegion] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - def internal_paging(next_link=None, raw=False): if not next_link: @@ -634,7 +694,9 @@ def internal_paging(next_link=None, raw=False): query_parameters['sku'] = self._serialize.query("sku", sku, 'str') if linux_workers_enabled is not None: query_parameters['linuxWorkersEnabled'] = self._serialize.query("linux_workers_enabled", linux_workers_enabled, 'bool') - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if xenon_workers_enabled is not None: + query_parameters['xenonWorkersEnabled'] = self._serialize.query("xenon_workers_enabled", xenon_workers_enabled, 'bool') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') else: url = next_link @@ -642,7 +704,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -651,14 +713,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -689,12 +748,11 @@ def list_site_identifiers_assigned_to_host_name( :return: An iterator like instance of Identifier :rtype: ~azure.mgmt.web.models.IdentifierPaged[~azure.mgmt.web.models.Identifier] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ name_identifier = models.NameIdentifier(name=name) - api_version = "2016-03-01" - def internal_paging(next_link=None, raw=False): if not next_link: @@ -707,7 +765,7 @@ def internal_paging(next_link=None, raw=False): # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') else: url = next_link @@ -715,6 +773,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -727,14 +786,11 @@ def internal_paging(next_link=None, raw=False): body_content = self._serialize.body(name_identifier, 'NameIdentifier') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -763,10 +819,9 @@ def list_premier_add_on_offers( :return: An iterator like instance of PremierAddOnOffer :rtype: ~azure.mgmt.web.models.PremierAddOnOfferPaged[~azure.mgmt.web.models.PremierAddOnOffer] - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - def internal_paging(next_link=None, raw=False): if not next_link: @@ -779,7 +834,7 @@ def internal_paging(next_link=None, raw=False): # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') else: url = next_link @@ -787,7 +842,7 @@ def internal_paging(next_link=None, raw=False): # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -796,14 +851,11 @@ def internal_paging(next_link=None, raw=False): header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send( - request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) return response @@ -832,10 +884,9 @@ def list_skus( :return: SkuInfos or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.SkuInfos or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - # Construct URL url = self.list_skus.metadata['url'] path_format_arguments = { @@ -845,11 +896,11 @@ def list_skus( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} - header_parameters['Content-Type'] = 'application/json; charset=utf-8' + header_parameters['Accept'] = 'application/json' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) if custom_headers: @@ -858,13 +909,11 @@ def list_skus( header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') # Construct and send request - request = self._client.get(url, query_parameters) - response = self._client.send(request, header_parameters, stream=False, **operation_config) + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -896,10 +945,9 @@ def verify_hosting_environment_vnet( :return: VnetValidationFailureDetails or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.VnetValidationFailureDetails or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - # Construct URL url = self.verify_hosting_environment_vnet.metadata['url'] path_format_arguments = { @@ -909,10 +957,11 @@ def verify_hosting_environment_vnet( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -925,14 +974,11 @@ def verify_hosting_environment_vnet( body_content = self._serialize.body(parameters, 'VnetParameters') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -970,8 +1016,6 @@ def move( """ move_resource_envelope = models.CsmMoveResourceEnvelope(target_resource_group=target_resource_group, resources=resources) - api_version = "2016-03-01" - # Construct URL url = self.move.metadata['url'] path_format_arguments = { @@ -982,7 +1026,7 @@ def move( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} @@ -998,9 +1042,8 @@ def move( body_content = self._serialize.body(move_resource_envelope, 'CsmMoveResourceEnvelope') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) @@ -1031,10 +1074,9 @@ def validate( :return: ValidateResponse or ClientRawResponse if raw=true :rtype: ~azure.mgmt.web.models.ValidateResponse or ~msrest.pipeline.ClientRawResponse - :raises: :class:`CloudError` + :raises: + :class:`DefaultErrorResponseException` """ - api_version = "2016-03-01" - # Construct URL url = self.validate.metadata['url'] path_format_arguments = { @@ -1045,10 +1087,11 @@ def validate( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} + header_parameters['Accept'] = 'application/json' header_parameters['Content-Type'] = 'application/json; charset=utf-8' if self.config.generate_client_request_id: header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) @@ -1061,14 +1104,11 @@ def validate( body_content = self._serialize.body(validate_request, 'ValidateRequest') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [200]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp + raise models.DefaultErrorResponseException(self._deserialize, response) deserialized = None @@ -1106,8 +1146,6 @@ def validate_move( """ move_resource_envelope = models.CsmMoveResourceEnvelope(target_resource_group=target_resource_group, resources=resources) - api_version = "2016-03-01" - # Construct URL url = self.validate_move.metadata['url'] path_format_arguments = { @@ -1118,7 +1156,7 @@ def validate_move( # Construct parameters query_parameters = {} - query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') # Construct headers header_parameters = {} @@ -1134,9 +1172,8 @@ def validate_move( body_content = self._serialize.body(move_resource_envelope, 'CsmMoveResourceEnvelope') # Construct and send request - request = self._client.post(url, query_parameters) - response = self._client.send( - request, header_parameters, body_content, stream=False, **operation_config) + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) if response.status_code not in [204]: exp = CloudError(response) diff --git a/azure-mgmt-web/azure_bdist_wheel.py b/azure-mgmt-web/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-mgmt-web/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-mgmt-web/build.json b/azure-mgmt-web/build.json deleted file mode 100644 index d5356f60b700..000000000000 --- a/azure-mgmt-web/build.json +++ /dev/null @@ -1,225 +0,0 @@ -{ - "autorest": [ - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest-core", - "version": "2.0.4168", - "engines": { - "node": ">=7.10.0" - }, - "dependencies": {}, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/async-io": "~1.0.22", - "@microsoft.azure/extension": "~1.2.12", - "@types/commonmark": "^0.27.0", - "@types/jsonpath": "^0.1.29", - "@types/node": "^8.0.28", - "@types/pify": "0.0.28", - "@types/source-map": "^0.5.0", - "@types/yargs": "^8.0.2", - "commonmark": "^0.27.0", - "file-url": "^2.0.2", - "get-uri": "^2.0.0", - "jsonpath": "^0.2.11", - "linq-es2015": "^2.4.25", - "mocha": "3.4.2", - "mocha-typescript": "1.1.5", - "pify": "^3.0.0", - "safe-eval": "^0.3.0", - "shx": "^0.2.2", - "source-map": "^0.5.6", - "source-map-support": "^0.4.15", - "strip-bom": "^3.0.0", - "typescript": "2.5.3", - "untildify": "^3.0.2", - "urijs": "^1.18.10", - "vscode-jsonrpc": "^3.3.1", - "yaml-ast-parser": "https://github.com/olydis/yaml-ast-parser/releases/download/0.0.34/yaml-ast-parser-0.0.34.tgz", - "yargs": "^8.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "_shasum": "33813111fc9bfa488bd600fbba48bc53cc9182c7", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest-core@2.0.4168", - "_from": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core", - "_where": "/root/.autorest/@microsoft.azure_autorest-core@2.0.4168/node_modules/@microsoft.azure/autorest-core" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.0.21", - "dependencies": { - "dotnet-2.0.0": "^1.3.2" - }, - "optionalDependencies": {}, - "devDependencies": { - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.1.1", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "3ce7d3939124b31830be15e5de99b9b7768afb90", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.0.21", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.0.21/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.modeler", - "version": "2.1.22", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_shasum": "ca425289fa38a210d279729048a4a91673f09c67", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.modeler@2.1.22", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler", - "_where": "/root/.autorest/@microsoft.azure_autorest.modeler@2.1.22/node_modules/@microsoft.azure/autorest.modeler" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - }, - { - "resolvedInfo": null, - "packageMetadata": { - "name": "@microsoft.azure/autorest.python", - "version": "2.0.19", - "dependencies": { - "dotnet-2.0.0": "^1.4.4" - }, - "optionalDependencies": {}, - "devDependencies": { - "@microsoft.azure/autorest.testserver": "^1.9.0", - "autorest": "^2.0.0", - "coffee-script": "^1.11.1", - "dotnet-sdk-2.0.0": "^1.4.4", - "gulp": "^3.9.1", - "gulp-filter": "^5.0.0", - "gulp-line-ending-corrector": "^1.0.1", - "iced-coffee-script": "^108.0.11", - "marked": "^0.3.6", - "marked-terminal": "^2.0.0", - "moment": "^2.17.1", - "run-sequence": "*", - "shx": "^0.2.2", - "through2-parallel": "^0.1.3", - "yargs": "^8.0.2", - "yarn": "^1.0.2" - }, - "bundleDependencies": false, - "peerDependencies": {}, - "deprecated": false, - "_resolved": "/root/.autorest/@microsoft.azure_autorest.python@2.0.19/node_modules/@microsoft.azure/autorest.python", - "_shasum": "e069166c16fd903c8e1fdf9395b433f3043cb6e3", - "_shrinkwrap": null, - "bin": null, - "_id": "@microsoft.azure/autorest.python@2.0.19", - "_from": "file:/root/.autorest/@microsoft.azure_autorest.python@2.0.19/node_modules/@microsoft.azure/autorest.python", - "_requested": { - "type": "directory", - "where": "/git-restapi", - "raw": "/root/.autorest/@microsoft.azure_autorest.python@2.0.19/node_modules/@microsoft.azure/autorest.python", - "rawSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.19/node_modules/@microsoft.azure/autorest.python", - "saveSpec": "file:/root/.autorest/@microsoft.azure_autorest.python@2.0.19/node_modules/@microsoft.azure/autorest.python", - "fetchSpec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.19/node_modules/@microsoft.azure/autorest.python" - }, - "_spec": "/root/.autorest/@microsoft.azure_autorest.python@2.0.19/node_modules/@microsoft.azure/autorest.python", - "_where": "/root/.autorest/@microsoft.azure_autorest.python@2.0.19/node_modules/@microsoft.azure/autorest.python" - }, - "extensionManager": { - "installationPath": "/root/.autorest", - "dotnetPath": "/root/.dotnet" - }, - "installationPath": "/root/.autorest" - } - ], - "autorest_bootstrap": {} -} \ No newline at end of file diff --git a/azure-mgmt-web/sdk_packaging.toml b/azure-mgmt-web/sdk_packaging.toml new file mode 100644 index 000000000000..a7fd66d6fcb9 --- /dev/null +++ b/azure-mgmt-web/sdk_packaging.toml @@ -0,0 +1,6 @@ +[packaging] +package_name = "azure-mgmt-web" +package_pprint_name = "Web Apps Management" +package_doc_id = "webapps" +is_stable = false +is_arm = true diff --git a/azure-mgmt-web/setup.cfg b/azure-mgmt-web/setup.cfg index 856f4164982c..3c6e79cf31da 100644 --- a/azure-mgmt-web/setup.cfg +++ b/azure-mgmt-web/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-mgmt-nspkg \ No newline at end of file diff --git a/azure-mgmt-web/setup.py b/azure-mgmt-web/setup.py index f47af623f2af..66576ec32411 100644 --- a/azure-mgmt-web/setup.py +++ b/azure-mgmt-web/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-mgmt-web" @@ -72,13 +66,22 @@ 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + 'azure.mgmt', + ]), install_requires=[ - 'msrestazure>=0.4.20,<2.0.0', + 'msrest>=0.5.0', + 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-mgmt-nspkg'], + } ) diff --git a/azure-mgmt/sdk_packaging.toml b/azure-mgmt/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-mgmt/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-nspkg/MANIFEST.in b/azure-nspkg/MANIFEST.in new file mode 100644 index 000000000000..0b7e52aea79a --- /dev/null +++ b/azure-nspkg/MANIFEST.in @@ -0,0 +1,2 @@ +include *.rst +include azure/__init__.py diff --git a/azure-nspkg/README.rst b/azure-nspkg/README.rst index 0600e296bfdf..3579bfd1a94b 100644 --- a/azure-nspkg/README.rst +++ b/azure-nspkg/README.rst @@ -5,6 +5,9 @@ This is the Microsoft Azure namespace package. This package is not intended to be installed directly by the end user. +Since version 3.0, this is Python 2 package only, Python 3.x SDKs will use `PEP420 `__ as namespace package strategy. +To avoid issues with package servers that does not support `python_requires`, a Python 3 package is installed but is empty. + It provides the necessary files for other packages to extend the azure namespace. If you are looking to install the Azure client libraries, see the diff --git a/azure-nspkg/azure/__init__.py b/azure-nspkg/azure/__init__.py index 5f282702bb03..0260537a02bb 100644 --- a/azure-nspkg/azure/__init__.py +++ b/azure-nspkg/azure/__init__.py @@ -1 +1 @@ - \ No newline at end of file +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-nspkg/sdk_packaging.toml b/azure-nspkg/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-nspkg/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-nspkg/setup.py b/azure-nspkg/setup.py index 67337a82f326..a2d4db47a00e 100644 --- a/azure-nspkg/setup.py +++ b/azure-nspkg/setup.py @@ -5,7 +5,7 @@ # Licensed under the MIT License. See License.txt in the project root for # license information. #-------------------------------------------------------------------------- - +import sys from setuptools import setup # azure v0.x is not compatible with this package @@ -23,14 +23,21 @@ except ImportError: pass +PACKAGES = [] +# Do an empty package on Python 3 and not python_requires, since not everybody is ready +# https://github.com/Azure/azure-sdk-for-python/issues/3447 +# https://github.com/Azure/azure-sdk-for-python/issues/3481 +if sys.version_info[0] < 3: + PACKAGES = ['azure'] + setup( name='azure-nspkg', - version='2.0.0', + version='3.0.2', description='Microsoft Azure Namespace Package [Internal]', long_description=open('README.rst', 'r').read(), license='MIT License', author='Microsoft Corporation', - author_email='ptvshelp@microsoft.com', + author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ 'Development Status :: 5 - Production/Stable', @@ -38,14 +45,12 @@ 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=[ - 'azure', - ], + packages=PACKAGES ) diff --git a/azure-sdk-tools/changelog_generics.rst b/azure-sdk-tools/changelog_generics.rst index f0374878e1ac..b27c480d33ac 100644 --- a/azure-sdk-tools/changelog_generics.rst +++ b/azure-sdk-tools/changelog_generics.rst @@ -1,3 +1,9 @@ +PEP420 + +**Note** + +- azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package) + Autorest context manager **Features** @@ -35,4 +41,4 @@ Misc **Bugfixes** -- Compatibility of the sdist with wheel 0.31.0 \ No newline at end of file +- Compatibility of the sdist with wheel 0.31.0 diff --git a/azure-sdk-tools/packaging_tools/__init__.py b/azure-sdk-tools/packaging_tools/__init__.py index f49b398e93ce..fe6260c26f7b 100644 --- a/azure-sdk-tools/packaging_tools/__init__.py +++ b/azure-sdk-tools/packaging_tools/__init__.py @@ -1,6 +1,8 @@ +from contextlib import suppress import logging +import os from pathlib import Path -from typing import Dict, Any +from typing import Dict, Any, Optional, List from jinja2 import Template, PackageLoader, Environment from .conf import read_conf, build_default_conf, CONF_NAME @@ -22,14 +24,49 @@ def build_config(config : Dict[str, Any]) -> Dict[str, str]: result["classifier"] = "Development Status :: 4 - Beta" # Manage the nspkg package_name = result["package_name"] - result["package_nspkg"] = package_name[:package_name.rindex('-')]+"-nspkg" + result["package_nspkg"] = result.pop( + "package_nspkg", + package_name[:package_name.rindex('-')]+"-nspkg" + ) # ARM? result['is_arm'] = result.pop("is_arm", True) + # Pre-compute some Jinja variable that are complicated to do inside the templates + package_parts = result["package_nspkg"][:-len('-nspkg')].split('-') + result['nspkg_names'] = [ + ".".join(package_parts[:i+1]) + for i in range(len(package_parts)) + ] + result['init_names'] = [ + "/".join(package_parts[:i+1])+"/__init__.py" + for i in range(len(package_parts)) + ] + # Return result return result -def build_packaging(package_name: str, output_folder: str, build_conf: bool = False) -> None: + +def build_packaging(output_folder: str, gh_token: Optional[str]=None, jenkins: bool = False, packages: List[str]=None, build_conf: bool = False) -> None: + package_names = set(packages) or set() + if jenkins: + sdk_id = os.environ["ghprbGhRepository"] + pr_number = int(os.environ["ghprbPullId"]) + + from github import Github + con = Github(gh_token) + repo = con.get_repo(sdk_id) + sdk_pr = repo.get_pull(pr_number) + # "get_files" of Github only download the first 300 files. Might not be enough. + package_names |= {f.filename.split('/')[0] for f in sdk_pr.get_files() if f.filename.startswith("azure")} + + if not package_names: + raise ValueError("Was unable to find out the package names.") + + for package_name in package_names: + build_packaging_by_package_name(package_name, output_folder, build_conf) + + +def build_packaging_by_package_name(package_name: str, output_folder: str, build_conf: bool = False) -> None: _LOGGER.info("Building template %s", package_name) package_folder = Path(output_folder) / Path(package_name) @@ -40,6 +77,10 @@ def build_packaging(package_name: str, output_folder: str, build_conf: bool = Fa if not conf: raise ValueError("Create a {} file before calling this script".format(package_folder / CONF_NAME)) + if not conf.get("auto_update", True): + _LOGGER.info(f"Package {package_name} has no auto-packaging update enabled") + return + env = Environment( loader=PackageLoader('packaging_tools', 'templates'), keep_trailing_newline=True @@ -58,7 +99,25 @@ def build_packaging(package_name: str, output_folder: str, build_conf: bool = Fa template = env.get_template(template_name) result = template.render(**conf) - with open(Path(output_folder) / package_name / template_name, "w") as fd: + # __init__.py is a weird one + if template_name == "__init__.py": + split_package_name = package_name.split("-")[:-1] + for i in range(len(split_package_name)): + init_path = Path(output_folder).joinpath( + package_name, + *split_package_name[:i+1], + template_name + ) + with open(init_path, "w") as fd: + fd.write(result) + + continue + + with open(future_filepath, "w") as fd: fd.write(result) + # azure_bdist_wheel had been removed, but need to delete it manually + with suppress(FileNotFoundError): + (Path(output_folder) / package_name / "azure_bdist_wheel.py").unlink() + _LOGGER.info("Template done %s", package_name) \ No newline at end of file diff --git a/azure-sdk-tools/packaging_tools/__main__.py b/azure-sdk-tools/packaging_tools/__main__.py index 2faec6d52012..da4c398b19d3 100644 --- a/azure-sdk-tools/packaging_tools/__main__.py +++ b/azure-sdk-tools/packaging_tools/__main__.py @@ -1,5 +1,6 @@ import argparse import logging +import os import sys from . import build_packaging @@ -23,7 +24,10 @@ parser.add_argument("--build-conf", dest="build_conf", action="store_true", help="Build a default TOML file, with package name, fake pretty name, as beta package and no doc page. Do nothing if the file exists, remove manually the file if needed.") -parser.add_argument('package_name', help='The package name.') +parser.add_argument("--jenkins", + dest="jenkins", action="store_true", + help="In Jenkins mode, try to find what to generate from Jenkins env variables. Package names are then optional.") +parser.add_argument('package_names', nargs='*', help='The package name.') args = parser.parse_args() @@ -31,8 +35,17 @@ logging.basicConfig() main_logger.setLevel(logging.DEBUG if args.debug else logging.INFO) +if not args.package_names and not args.jenkins: + raise ValueError("At least one package name or Jenkins mode is required") + try: - build_packaging(args.package_name, args.output, build_conf=args.build_conf) + build_packaging( + args.output, + os.environ.get("GH_TOKEN", None), + args.jenkins, + args.package_names, + build_conf=args.build_conf + ) except Exception as err: if args.debug: _LOGGER.exception(err) diff --git a/azure-sdk-tools/packaging_tools/change_log.py b/azure-sdk-tools/packaging_tools/change_log.py index 42dabcf50939..7518ffe496b5 100644 --- a/azure-sdk-tools/packaging_tools/change_log.py +++ b/azure-sdk-tools/packaging_tools/change_log.py @@ -150,46 +150,52 @@ def build_change_log(old_report, new_report): return change_log +def get_report_from_parameter(input_parameter): + if ":" in input_parameter: + package_name, version = input_parameter.split(":") + from .code_report import main + result = main( + package_name, + version=version if version not in ["pypi", "latest"] else None, + last_pypi=version == "pypi" + ) + if not result: + raise ValueError("Was not able to build a report") + if len(result) == 1: + with open(result[0], "r") as fd: + return json.load(fd) + + raise NotImplementedError("Multi-api changelog not yet implemented") + + with open(input_parameter, "r") as fd: + return json.load(fd) + if __name__ == "__main__": import argparse parser = argparse.ArgumentParser( description='ChangeLog computation', - formatter_class=argparse.RawTextHelpFormatter, - epilog="Package Name and Package Print are mutually exclusive and at least one must be provided" ) - parser.add_argument('base_input', - help='Input base fingerprint') - parser.add_argument('--package-name', '-n', - dest='package_name', - help='Package name to test. Must be importable.') - parser.add_argument('--package-print', '-p', - dest='package_print', - help='Package name to test. Must be importable.') + parser.add_argument('base', + help='Base. Could be a file path, or :. Version can be pypi, latest or a real version') + parser.add_argument('latest', + help='Latest. Could be a file path, or :. Version can be pypi, latest or a real version') + parser.add_argument("--debug", dest="debug", action="store_true", help="Verbosity in DEBUG mode") args = parser.parse_args() - main_logger = logging.getLogger() - logging.basicConfig() - main_logger.setLevel(logging.DEBUG if args.debug else logging.INFO) - - if args.package_name: - raise NotImplementedError("FIXME") + logging.basicConfig(level=logging.DEBUG if args.debug else logging.INFO) - if args.package_print: - with open(args.package_print) as fd: - new_report = json.load(fd) + old_report = get_report_from_parameter(args.base) + new_report = get_report_from_parameter(args.latest) - with open(args.base_input) as fd: - old_report = json.load(fd) - - result = diff(old_report, new_report) - with open("result.json", "w") as fd: - json.dump(result, fd) + # result = diff(old_report, new_report) + # with open("result.json", "w") as fd: + # json.dump(result, fd) change_log = build_change_log(old_report, new_report) print(change_log.build_md()) diff --git a/azure-sdk-tools/packaging_tools/code_report.py b/azure-sdk-tools/packaging_tools/code_report.py index c64234ad97f6..1bd416d5fd3c 100644 --- a/azure-sdk-tools/packaging_tools/code_report.py +++ b/azure-sdk-tools/packaging_tools/code_report.py @@ -2,8 +2,20 @@ import inspect import json import logging +import pkgutil +from pathlib import Path +import subprocess import types -from typing import Dict, Any +from typing import Dict, Any, Optional + +# Because I'm subprocessing myself, I need to do weird thing as import. +try: + # If I'm started as a module __main__ + from .venvtools import create_venv_with_package +except ModuleNotFoundError: + # If I'm started by my main directly + from venvtools import create_venv_with_package + _LOGGER = logging.getLogger(__name__) @@ -39,7 +51,12 @@ def create_report(module_name: str) -> Dict[str, Any]: else: report["models"]["enums"][model_name] = create_model_report(model_cls) # Look for operation groups - operations_classes = [op_name for op_name in dir(module_to_generate.operations) if op_name[0].isupper()] + try: + operations_classes = [op_name for op_name in dir(module_to_generate.operations) if op_name[0].isupper()] + except AttributeError: + # This guy has no "operations", this is possible (Cognitive Services). Just skip it then. + operations_classes = [] + for op_name in operations_classes: op_content = {'name': op_name} op_cls = getattr(module_to_generate.operations, op_name) @@ -97,12 +114,104 @@ def create_report_from_func(function_attr): }) return func_content -def main(input_parameter: str, output_filename: str): - _, module_name = parse_input(input_parameter) - report = create_report(module_name) +def main(input_parameter: str, version: Optional[str] = None, no_venv: bool = False, pypi: bool = False, last_pypi: bool = False): + package_name, module_name = parse_input(input_parameter) + + if (version or pypi or last_pypi) and not no_venv: + if version: + versions = [version] + else: + _LOGGER.info(f"Download versions of {package_name} on PyPI") + from .pypi import PyPIClient + client = PyPIClient() + versions = [str(v) for v in client.get_ordered_versions(package_name)] + _LOGGER.info(f"Got {versions}") + if last_pypi: + _LOGGER.info(f"Only keep last PyPI version") + versions = [versions[-1]] + + for version in versions: + _LOGGER.info(f"Installing version {version} of {package_name} in a venv") + with create_venv_with_package([f"{package_name}=={version}"]) as venv: + args = [ + venv.env_exe, + __file__, + "--no-venv", + "--version", + version, + input_parameter + ] + try: + subprocess.check_call(args) + except subprocess.CalledProcessError: + # If it fail, just assume this version is too old to get an Autorest report + _LOGGER.warning(f"Version {version} seems to be too old to build a report (probably not Autorest based)") + # Files have been written by the subprocess + return + + modules = find_autorest_generated_folder(module_name) + result = [] + for module_name in modules: + _LOGGER.info(f"Working on {module_name}") + + report = create_report(module_name) + version = version or "latest" + + output_filename = Path(package_name) / Path("code_reports") / Path(version) + + module_for_path = get_sub_module_part(package_name, module_name) + if module_for_path: + output_filename /= Path(module_for_path+".json") + else: + output_filename /= Path("report.json") + + output_filename.parent.mkdir(parents=True, exist_ok=True) + + with open(output_filename, "w") as fd: + json.dump(report, fd, indent=2) + _LOGGER.info(f"Report written to {output_filename}") + result.append(output_filename) + return result + +def find_autorest_generated_folder(module_prefix="azure"): + """Find all Autorest generated code in that module prefix. + This actually looks for a "models" package only (not file). We could be smarter if necessary. + """ + _LOGGER.info(f"Looking for Autorest generated package in {module_prefix}") + + # Manually skip some namespaces for now + if module_prefix in ["azure.cli", "azure.storage", "azure.servicemanagement", "azure.servicebus"]: + _LOGGER.info(f"Skip {module_prefix}") + return [] + + result = [] + try: + _LOGGER.debug(f"Try {module_prefix}") + model_module = importlib.import_module(".models", module_prefix) + # If not exception, we MIGHT have found it, but cannot be a file. + # Keep continue to try to break it, file module have no __path__ + model_module.__path__ + _LOGGER.info(f"Found {module_prefix}") + result.append(module_prefix) + except (ModuleNotFoundError, AttributeError): + # No model, might dig deeper + prefix_module = importlib.import_module(module_prefix) + for _, sub_package, ispkg in pkgutil.iter_modules(prefix_module.__path__, module_prefix+"."): + if ispkg: + result += find_autorest_generated_folder(sub_package) + return result + + +def get_sub_module_part(package_name, module_name): + """Assuming package is azure-mgmt-compute and module name is azure.mgmt.compute.v2018-08-01 + will return v2018-08-01 + """ + sub_module_from_package = package_name.replace("-", ".") + if not module_name.startswith(sub_module_from_package): + _LOGGER.warning(f"Submodule {module_name} does not start with package name {package_name}") + return + return module_name[len(sub_module_from_package)+1:] - with open(output_filename, "w") as fd: - json.dump(report, fd, indent=2) if __name__ == "__main__": import argparse @@ -112,18 +221,25 @@ def main(input_parameter: str, output_filename: str): formatter_class=argparse.RawTextHelpFormatter, ) parser.add_argument('package_name', - help='Package name') - parser.add_argument('--output-file', '-o', - dest='output_file', default='./report.json', - help='Output file. [default: %(default)s]') + help='Package name.') + parser.add_argument('--version', '-v', + dest='version', + help='The version of the package you want. By default, latest and current branch.') + parser.add_argument('--no-venv', + dest='no_venv', action="store_true", + help="If version is provided, this will assume the current accessible package is already this version. You should probably not use it.") + parser.add_argument('--pypi', + dest='pypi', action="store_true", + help="If provided, build report for all versions on pypi of this package.") + parser.add_argument('--last-pypi', + dest='last_pypi', action="store_true", + help="If provided, build report for last version on pypi of this package.") parser.add_argument("--debug", dest="debug", action="store_true", help="Verbosity in DEBUG mode") args = parser.parse_args() - main_logger = logging.getLogger() - logging.basicConfig() - main_logger.setLevel(logging.DEBUG if args.debug else logging.INFO) + logging.basicConfig(level=logging.DEBUG if args.debug else logging.INFO) - main(args.package_name, args.output_file) + main(args.package_name, args.version, args.no_venv, args.pypi, args.last_pypi) diff --git a/azure-sdk-tools/packaging_tools/conf.py b/azure-sdk-tools/packaging_tools/conf.py index 783de37c1f51..2059ccfdddac 100644 --- a/azure-sdk-tools/packaging_tools/conf.py +++ b/azure-sdk-tools/packaging_tools/conf.py @@ -12,6 +12,7 @@ # Default conf _CONFIG = { "package_name": "packagename", + "package_nspkg": "packagenspkg", "package_pprint_name": "MyService Management", "package_doc_id": "", "is_stable": False, @@ -35,6 +36,7 @@ def build_default_conf(folder: Path, package_name: str) -> None: _LOGGER.info("Build default conf for %s", package_name) conf = {_SECTION: _CONFIG.copy()} conf[_SECTION]["package_name"] = package_name + conf[_SECTION]["package_nspkg"] = package_name[:package_name.rindex('-')]+"-nspkg" with open(conf_path, "w") as fd: toml.dump(conf, fd) diff --git a/azure-sdk-tools/packaging_tools/pypi.py b/azure-sdk-tools/packaging_tools/pypi.py new file mode 100644 index 000000000000..30c2c14044b1 --- /dev/null +++ b/azure-sdk-tools/packaging_tools/pypi.py @@ -0,0 +1,58 @@ +from typing import Optional + +from packaging.version import parse as Version, InvalidVersion + +import requests + +def get_pypi_xmlrpc_client(): + """This is actually deprecated client. + """ + import xmlrpc.client + return xmlrpc.client.ServerProxy("https://pypi.python.org/pypi", use_datetime=True) + +class PyPIClient: + def __init__(self, host: str = "https://pypi.org"): + self._host = host + self._session = requests.Session() + + def project(self, package_name: str): + response = self._session.get( + "{host}/pypi/{project_name}/json".format( + host=self._host, + project_name=package_name + ) + ) + response.raise_for_status() + return response.json() + + def project_release(self, package_name: str, version: str): + response = self._session.get( + "{host}/pypi/{project_name}/{version}/json".format( + host=self._host, + project_name=package_name, + version=version + ) + ) + response.raise_for_status() + return response.json() + + def get_ordered_versions(self, package_name: str): + project = self.project(package_name) + versions = [ + Version(package_version) + for package_version + in project["releases"].keys() + ] + versions.sort() + return versions + + def get_relevant_versions(self, package_name: str): + """Return a tuple: (latest release, latest stable) + If there are different, it means the latest is not a stable + """ + versions = self.get_ordered_versions(package_name) + pre_releases = [version for version in versions if not version.is_prerelease] + return ( + versions[-1], + pre_releases[-1] + ) \ No newline at end of file diff --git a/azure-sdk-tools/packaging_tools/templates/MANIFEST.in b/azure-sdk-tools/packaging_tools/templates/MANIFEST.in index 9ecaeb15de50..f3f9b2822540 100644 --- a/azure-sdk-tools/packaging_tools/templates/MANIFEST.in +++ b/azure-sdk-tools/packaging_tools/templates/MANIFEST.in @@ -1,2 +1,5 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file +{%- for init_name in init_names %} +include {{ init_name }} +{%- endfor %} + diff --git a/azure-sdk-tools/packaging_tools/templates/__init__.py b/azure-sdk-tools/packaging_tools/templates/__init__.py new file mode 100644 index 000000000000..0260537a02bb --- /dev/null +++ b/azure-sdk-tools/packaging_tools/templates/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-sdk-tools/packaging_tools/templates/azure_bdist_wheel.py b/azure-sdk-tools/packaging_tools/templates/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-sdk-tools/packaging_tools/templates/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-sdk-tools/packaging_tools/templates/setup.cfg b/azure-sdk-tools/packaging_tools/templates/setup.cfg index 57c8683c0b05..3c6e79cf31da 100644 --- a/azure-sdk-tools/packaging_tools/templates/setup.cfg +++ b/azure-sdk-tools/packaging_tools/templates/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package={{package_nspkg}} \ No newline at end of file diff --git a/azure-sdk-tools/packaging_tools/templates/setup.py b/azure-sdk-tools/packaging_tools/templates/setup.py index eeb4bd3d35ce..89be50d5dfb9 100644 --- a/azure-sdk-tools/packaging_tools/templates/setup.py +++ b/azure-sdk-tools/packaging_tools/templates/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "{{package_name}}" @@ -76,11 +70,19 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + {%- for nspkg_name in nspkg_names %} + '{{ nspkg_name }}', + {%- endfor %} + ]), install_requires=[ 'msrest>=0.5.0', 'msrestazure>=0.4.32,<2.0.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['{{package_nspkg}}'], + } ) diff --git a/azure-sdk-tools/packaging_tools/update_pr.py b/azure-sdk-tools/packaging_tools/update_pr.py new file mode 100644 index 000000000000..9b2c3b30dc6e --- /dev/null +++ b/azure-sdk-tools/packaging_tools/update_pr.py @@ -0,0 +1,92 @@ +import argparse +import logging +import os +from pathlib import Path +import tempfile + +from azure_devtools.ci_tools.git_tools import ( + do_commit, +) +from azure_devtools.ci_tools.github_tools import ( + manage_git_folder, + configure_user +) + +from git import Repo +from github import Github + +from . import build_packaging_by_package_name + + +_LOGGER = logging.getLogger(__name__) + + +def update_pr(gh_token, repo_id, pr_number): + from github import Github + con = Github(gh_token) + repo = con.get_repo(repo_id) + sdk_pr = repo.get_pull(pr_number) + # "get_files" of Github only download the first 300 files. Might not be enough. + package_names = {f.filename.split('/')[0] for f in sdk_pr.get_files() if f.filename.startswith("azure")} + + # Get PR branch to push + head_repo = sdk_pr.head.repo.full_name + head_branch = sdk_pr.head.ref + branched_index = "{}@{}".format(head_repo, head_branch) + + with tempfile.TemporaryDirectory() as temp_dir, \ + manage_git_folder(gh_token, Path(temp_dir) / Path("sdk"), branched_index) as sdk_folder: + + sdk_repo = Repo(str(sdk_folder)) + configure_user(gh_token, sdk_repo) + + for package_name in package_names: + if package_name.endswith("nspkg"): + _LOGGER.info("Skip nspkg packages for update PR") + continue + + # Rebuild packaging + build_packaging_by_package_name(package_name, sdk_folder, build_conf=True) + # Commit that + do_commit( + sdk_repo, + "Packaging update of {}".format(package_name), + head_branch, + None # Unused + ) + # Push all commits at once + sdk_repo.git.push('origin', head_branch, set_upstream=True) + +def update_pr_main(): + """Main method""" + + parser = argparse.ArgumentParser( + description='Build package.', + formatter_class=argparse.RawTextHelpFormatter) + parser.add_argument('--pr-number', '-p', + dest='pr_number', type=int, required=True, + help='PR number') + parser.add_argument('--repo', '-r', + dest='repo_id', default="Azure/azure-sdk-for-python", + help='Repo id. [default: %(default)s]') + parser.add_argument("-v", "--verbose", + dest="verbose", action="store_true", + help="Verbosity in INFO mode") + parser.add_argument("--debug", + dest="debug", action="store_true", + help="Verbosity in DEBUG mode") + + args = parser.parse_args() + main_logger = logging.getLogger() + if args.verbose or args.debug: + logging.basicConfig() + main_logger.setLevel(logging.DEBUG if args.debug else logging.INFO) + + update_pr( + os.environ.get("GH_TOKEN", None), + args.repo_id, + int(args.pr_number), + ) + +if __name__ == "__main__": + update_pr_main() diff --git a/azure-sdk-tools/packaging_tools/venvtools.py b/azure-sdk-tools/packaging_tools/venvtools.py new file mode 100644 index 000000000000..714b7aa29320 --- /dev/null +++ b/azure-sdk-tools/packaging_tools/venvtools.py @@ -0,0 +1,46 @@ +from contextlib import contextmanager +import tempfile +import subprocess +import venv + +class ExtendedEnvBuilder(venv.EnvBuilder): + """An extended env builder which saves the context, to have access + easily to bin path and such. + """ + + def __init__(self, *args, **kwargs): + self.context = None + super(ExtendedEnvBuilder, self).__init__(*args, **kwargs) + + def ensure_directories(self, env_dir): + self.context = super(ExtendedEnvBuilder, self).ensure_directories(env_dir) + return self.context + + +def create(env_dir, system_site_packages=False, clear=False, + symlinks=False, with_pip=False, prompt=None): + """Create a virtual environment in a directory.""" + builder = ExtendedEnvBuilder(system_site_packages=system_site_packages, + clear=clear, symlinks=symlinks, with_pip=with_pip, + prompt=prompt) + builder.create(env_dir) + return builder.context + +@contextmanager +def create_venv_with_package(packages): + """Create a venv with these packages in a temp dir and yielf the env. + + packages should be an iterable of pip version instructio (e.g. package~=1.2.3) + """ + with tempfile.TemporaryDirectory() as tempdir: + myenv = create(tempdir, with_pip=True) + pip_call = [ + myenv.env_exe, + "-m", + "pip", + "install", + ] + subprocess.check_call(pip_call + ['-U', 'pip']) + if packages: + subprocess.check_call(pip_call + packages) + yield myenv \ No newline at end of file diff --git a/azure-sdk-tools/sdk_packaging.toml b/azure-sdk-tools/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-sdk-tools/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-servicebus/azure/__init__.py b/azure-servicebus/azure/__init__.py index 849489fca33c..56200e1b95c5 100644 --- a/azure-servicebus/azure/__init__.py +++ b/azure-servicebus/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-servicebus/sdk_packaging.toml b/azure-servicebus/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-servicebus/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure-servicefabric/MANIFEST.in b/azure-servicefabric/MANIFEST.in index 9ecaeb15de50..bb37a2723dae 100644 --- a/azure-servicefabric/MANIFEST.in +++ b/azure-servicefabric/MANIFEST.in @@ -1,2 +1 @@ include *.rst -include azure_bdist_wheel.py \ No newline at end of file diff --git a/azure-servicefabric/README.rst b/azure-servicefabric/README.rst index cdb9d23af0aa..4fffdefcfcc5 100644 --- a/azure-servicefabric/README.rst +++ b/azure-servicefabric/README.rst @@ -3,13 +3,7 @@ Microsoft Azure SDK for Python This is the Microsoft Azure Service Fabric Client Library. -Azure Resource Manager (ARM) is the next generation of management APIs that -replace the old Azure Service Management (ASM). - -This package has been tested with Python 2.7, 3.4, 3.5, 3.6, and 3.7. - -For the older Azure Service Management (ASM) libraries, see -`azure-servicemanagement-legacy `__ library. +This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7. For a more complete set of Azure libraries, see the `azure `__ bundle package. @@ -37,7 +31,7 @@ Usage ===== For code examples, see `Service Fabric -`__ +`__ on docs.microsoft.com. diff --git a/azure-servicefabric/azure/__init__.py b/azure-servicefabric/azure/__init__.py index de40ea7ca058..0260537a02bb 100644 --- a/azure-servicefabric/azure/__init__.py +++ b/azure-servicefabric/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-servicefabric/azure/servicefabric/models/service_placement_prefer_primary_domain_policy_description.py b/azure-servicefabric/azure/servicefabric/models/service_placement_prefer_primary_domain_policy_description.py index 5607a81b9f46..0c9aa1261e3d 100644 --- a/azure-servicefabric/azure/servicefabric/models/service_placement_prefer_primary_domain_policy_description.py +++ b/azure-servicefabric/azure/servicefabric/models/service_placement_prefer_primary_domain_policy_description.py @@ -18,7 +18,7 @@ class ServicePlacementPreferPrimaryDomainPolicyDescription(ServicePlacementPolic particular domain. This placement policy is usually used with fault domains in scenarios where the Service Fabric cluster is geographically distributed in order to - indicate that a service�s primary replica should be located in a particular + indicate that a service's primary replica should be located in a particular fault domain, which in geo-distributed scenarios usually aligns with regional or datacenter boundaries. Note that since this is an optimization it is possible that the Primary replica may not end up located in this diff --git a/azure-servicefabric/azure/servicefabric/models/service_placement_prefer_primary_domain_policy_description_py3.py b/azure-servicefabric/azure/servicefabric/models/service_placement_prefer_primary_domain_policy_description_py3.py index cc4c1f2053d3..da420383e958 100644 --- a/azure-servicefabric/azure/servicefabric/models/service_placement_prefer_primary_domain_policy_description_py3.py +++ b/azure-servicefabric/azure/servicefabric/models/service_placement_prefer_primary_domain_policy_description_py3.py @@ -18,7 +18,7 @@ class ServicePlacementPreferPrimaryDomainPolicyDescription(ServicePlacementPolic particular domain. This placement policy is usually used with fault domains in scenarios where the Service Fabric cluster is geographically distributed in order to - indicate that a service�s primary replica should be located in a particular + indicate that a service's primary replica should be located in a particular fault domain, which in geo-distributed scenarios usually aligns with regional or datacenter boundaries. Note that since this is an optimization it is possible that the Primary replica may not end up located in this diff --git a/azure-servicefabric/azure_bdist_wheel.py b/azure-servicefabric/azure_bdist_wheel.py deleted file mode 100644 index 8a81d1b61775..000000000000 --- a/azure-servicefabric/azure_bdist_wheel.py +++ /dev/null @@ -1,54 +0,0 @@ -#------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -#-------------------------------------------------------------------------- - -from distutils import log as logger -import os.path - -from wheel.bdist_wheel import bdist_wheel -class azure_bdist_wheel(bdist_wheel): - """The purpose of this class is to build wheel a little differently than the sdist, - without requiring to build the wheel from the sdist (i.e. you can build the wheel - directly from source). - """ - - description = "Create an Azure wheel distribution" - - user_options = bdist_wheel.user_options + \ - [('azure-namespace-package=', None, - "Name of the deepest nspkg used")] - - def initialize_options(self): - bdist_wheel.initialize_options(self) - self.azure_namespace_package = None - - def finalize_options(self): - bdist_wheel.finalize_options(self) - if self.azure_namespace_package and not self.azure_namespace_package.endswith("-nspkg"): - raise ValueError("azure_namespace_package must finish by -nspkg") - - def run(self): - if not self.distribution.install_requires: - self.distribution.install_requires = [] - self.distribution.install_requires.append( - "{}>=2.0.0".format(self.azure_namespace_package)) - bdist_wheel.run(self) - - def write_record(self, bdist_dir, distinfo_dir): - if self.azure_namespace_package: - # Split and remove last part, assuming it's "nspkg" - subparts = self.azure_namespace_package.split('-')[0:-1] - folder_with_init = [os.path.join(*subparts[0:i+1]) for i in range(len(subparts))] - for azure_sub_package in folder_with_init: - init_file = os.path.join(bdist_dir, azure_sub_package, '__init__.py') - if os.path.isfile(init_file): - logger.info("manually remove {} while building the wheel".format(init_file)) - os.remove(init_file) - else: - raise ValueError("Unable to find {}. Are you sure of your namespace package?".format(init_file)) - bdist_wheel.write_record(self, bdist_dir, distinfo_dir) -cmdclass = { - 'bdist_wheel': azure_bdist_wheel, -} diff --git a/azure-servicefabric/sdk_packaging.toml b/azure-servicefabric/sdk_packaging.toml new file mode 100644 index 000000000000..c1ff0e94edcf --- /dev/null +++ b/azure-servicefabric/sdk_packaging.toml @@ -0,0 +1,7 @@ +[packaging] +package_name = "azure-servicefabric" +package_nspkg = "azure-nspkg" +package_pprint_name = "Service Fabric" +package_doc_id = "servicefabric" +is_stable = true +is_arm = false diff --git a/azure-servicefabric/setup.cfg b/azure-servicefabric/setup.cfg index 669e94e63df3..3c6e79cf31da 100644 --- a/azure-servicefabric/setup.cfg +++ b/azure-servicefabric/setup.cfg @@ -1,3 +1,2 @@ [bdist_wheel] universal=1 -azure-namespace-package=azure-nspkg \ No newline at end of file diff --git a/azure-servicefabric/setup.py b/azure-servicefabric/setup.py index 97cd51c0089d..ae9d865d3229 100644 --- a/azure-servicefabric/setup.py +++ b/azure-servicefabric/setup.py @@ -10,12 +10,6 @@ import os.path from io import open from setuptools import find_packages, setup -try: - from azure_bdist_wheel import cmdclass -except ImportError: - from distutils import log as logger - logger.warn("Wheel is not available, disabling bdist_wheel hook") - cmdclass = {} # Change the PACKAGE_NAME only to change folder and different name PACKAGE_NAME = "azure-servicefabric" @@ -64,7 +58,7 @@ author_email='azpysdkhelp@microsoft.com', url='https://github.com/Azure/azure-sdk-for-python', classifiers=[ - 'Development Status :: 4 - Beta', + 'Development Status :: 5 - Production/Stable', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', @@ -76,10 +70,16 @@ 'License :: OSI Approved :: MIT License', ], zip_safe=False, - packages=find_packages(exclude=["tests"]), + packages=find_packages(exclude=[ + 'tests', + # Exclude packages that will be covered by PEP420 or nspkg + 'azure', + ]), install_requires=[ - 'msrest>=0.4.26,<2.0.0', + 'msrest>=0.5.0', 'azure-common~=1.1', ], - cmdclass=cmdclass + extras_require={ + ":python_version<'3.0'": ['azure-nspkg'], + } ) diff --git a/azure-servicemanagement-legacy/azure/__init__.py b/azure-servicemanagement-legacy/azure/__init__.py index 849489fca33c..56200e1b95c5 100644 --- a/azure-servicemanagement-legacy/azure/__init__.py +++ b/azure-servicemanagement-legacy/azure/__init__.py @@ -1 +1 @@ -__import__('pkg_resources').declare_namespace(__name__) +__path__ = __import__('pkgutil').extend_path(__path__, __name__) \ No newline at end of file diff --git a/azure-servicemanagement-legacy/sdk_packaging.toml b/azure-servicemanagement-legacy/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure-servicemanagement-legacy/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/azure/sdk_packaging.toml b/azure/sdk_packaging.toml new file mode 100644 index 000000000000..e7687fdae93b --- /dev/null +++ b/azure/sdk_packaging.toml @@ -0,0 +1,2 @@ +[packaging] +auto_update = false \ No newline at end of file diff --git a/scripts/dev_setup.py b/scripts/dev_setup.py index 8313070dc14f..df018002b902 100644 --- a/scripts/dev_setup.py +++ b/scripts/dev_setup.py @@ -15,14 +15,15 @@ root_dir = os.path.abspath(os.path.join(os.path.abspath(__file__), '..', '..')) -def pip_command(command): +def pip_command(command, error_ok=False): try: print('Executing: ' + command) check_call([sys.executable, '-m', 'pip'] + command.split(), cwd=root_dir) print() except CalledProcessError as err: print(err, file=sys.stderr) - sys.exit(1) + if not error_ok: + sys.exit(1) packages = [os.path.dirname(p) for p in glob.glob('azure*/setup.py')] @@ -30,24 +31,35 @@ def pip_command(command): nspkg_packages = [p for p in packages if "nspkg" in p] nspkg_packages.sort(key = lambda x: len([c for c in x if c == '-'])) -# Consider "azure-common" as a power nspkg : has to be installed after nspkg -nspkg_packages.append("azure-common") - # Manually push meta-packages at the end, in reverse dependency order meta_packages = ['azure-mgmt', 'azure'] content_packages = [p for p in packages if p not in nspkg_packages+meta_packages] +# Put azure-common in front +content_packages.remove("azure-common") +content_packages.insert(0, "azure-common") print('Running dev setup...') print('Root directory \'{}\'\n'.format(root_dir)) +# install private whls if there are any +privates_dir = os.path.join(root_dir, 'privates') +if os.path.isdir(privates_dir) and os.listdir(privates_dir): + whl_list = ' '.join([os.path.join(privates_dir, f) for f in os.listdir(privates_dir)]) + pip_command('install {}'.format(whl_list)) + +# install nspkg only on py2, but in wheel mode (not editable mode) +if sys.version_info < (3, ): + for package_name in nspkg_packages: + pip_command('install ./{}/'.format(package_name)) + # install packages -for package_list in [nspkg_packages, content_packages]: - for package_name in package_list: - pip_command('install -e {}'.format(package_name)) - -# Ensure that the site package's azure/__init__.py has the old style namespace -# package declaration by installing the old namespace package -pip_command('install --force-reinstall azure-mgmt-nspkg==1.0.0') -pip_command('install --force-reinstall azure-nspkg==1.0.0') +for package_name in content_packages: + pip_command('install --ignore-requires-python -e {}'.format(package_name)) + +# On Python 3, uninstall azure-nspkg if he got installed +if sys.version_info >= (3, ): + pip_command('uninstall -y azure-nspkg', error_ok=True) + + print('Finished dev setup.') diff --git a/scripts/multiapi_init_gen.py b/scripts/multiapi_init_gen.py index a6e169d1a6b5..8f20c47be124 100644 --- a/scripts/multiapi_init_gen.py +++ b/scripts/multiapi_init_gen.py @@ -1,4 +1,8 @@ +import ast import importlib +import inspect +import ast +import logging import os import pkgutil import re @@ -25,6 +29,9 @@ _GENERATE_MARKER = "############ Generated from here ############\n" +_LOGGER = logging.getLogger(__name__) + + def parse_input(input_parameter): """From a syntax like package_name#submodule, build a package name and complete module name. @@ -48,26 +55,79 @@ def get_versionned_modules(package_name, module_name, sdk_root=None): for (_, label, ispkg) in pkgutil.iter_modules(module_to_generate.__path__) if label.startswith("v20") and ispkg] +class ApiVersionExtractor(ast.NodeVisitor): + def __init__(self, *args, **kwargs): + self.api_version = None + super(ApiVersionExtractor, self).__init__(*args, **kwargs) + + def visit_Assign(self, node): + try: + if node.targets[0].id == "api_version": + self.api_version = node.value.s + except Exception: + pass + + +def extract_api_version_from_code(function): + """Will extract from __code__ the API version. Should be use if you use this is an operation group with no constant api_version. + """ + try: + srccode = inspect.getsource(function) + try: + ast_tree = ast.parse(srccode) + except IndentationError: + ast_tree = ast.parse('with 0:\n'+srccode) + + api_version_visitor = ApiVersionExtractor() + api_version_visitor.visit(ast_tree) + return api_version_visitor.api_version + except Exception: + raise + def build_operation_meta(versionned_modules): version_dict = {} mod_to_api_version = {} for versionned_label, versionned_mod in versionned_modules: - extracted_api_version = None + extracted_api_versions = set() client_doc = versionned_mod.__dict__[versionned_mod.__all__[0]].__doc__ operations = list(re.finditer(r':ivar (?P[a-z_]+): \w+ operations\n\s+:vartype (?P=attr): .*.operations.(?P\w+)\n', client_doc)) for operation in operations: attr, clsname = operation.groups() + _LOGGER.debug("Class name: %s", clsname) version_dict.setdefault(attr, []).append((versionned_label, clsname)) - if not extracted_api_version: - # Create a fake operation group to extract easily the real api version - try: - extracted_api_version = versionned_mod.operations.__dict__[clsname](None, None, None, None).api_version - except Exception: - # Should not happen. I guess it mixed operation groups like VMSS Network... - pass - if not extracted_api_version: - sys.exit("Was not able to extract api_version of %s" % versionned_label) - mod_to_api_version[versionned_label] = extracted_api_version + + # Create a fake operation group to extract easily the real api version + extracted_api_version = None + try: + extracted_api_version = versionned_mod.operations.__dict__[clsname](None, None, None, None).api_version + _LOGGER.debug("Found an obvious API version: %s", extracted_api_version) + if extracted_api_version: + extracted_api_versions.add(extracted_api_version) + except Exception: + _LOGGER.debug("Should not happen. I guess it mixed operation groups like VMSS Network...") + for func_name, function in versionned_mod.operations.__dict__[clsname].__dict__.items(): + if not func_name.startswith("__"): + _LOGGER.debug("Try to extract API version from: %s", func_name) + extracted_api_version = extract_api_version_from_code(function) + _LOGGER.debug("Extracted API version: %s", extracted_api_version) + if extracted_api_version: + extracted_api_versions.add(extracted_api_version) + + if not extracted_api_versions: + sys.exit("Was not able to extract api_version of {}".format(versionned_label)) + if len(extracted_api_versions) >= 2: + # Mixed operation group, try to figure out what we want to use + final_api_version = None + _LOGGER.warning("Found too much API version: {} in label {}".format(extracted_api_versions, versionned_label)) + for candidate_api_version in extracted_api_versions: + if "v{}".format(candidate_api_version.replace("-", "_")) == versionned_label: + final_api_version = candidate_api_version + _LOGGER.warning("Guessing you want {} based on label {}".format(final_api_version, versionned_label)) + break + else: + sys.exit("Unble to match {} to label {}".format(extracted_api_versions, versionned_label)) + extracted_api_versions = {final_api_version} + mod_to_api_version[versionned_label] = extracted_api_versions.pop() # latest: api_version=mod_to_api_version[versions[-1][0]] @@ -84,7 +144,7 @@ def models(cls, api_version=DEFAULT_API_VERSION): from .{api_version_module} import models return models""" template_models_end_def = """ raise NotImplementedError("APIVersion {} is not available".format(api_version)) - """ +""" template_intro_doc= ' """Module depends on the API version:\n' template_inside_doc=" * {api_version}: :mod:`{api_version_module}.models<{module_name}.{api_version_module}.models>`" @@ -160,6 +220,8 @@ def _models_dict(cls, api_version): """ if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + package_name, module_name = parse_input(sys.argv[1]) versionned_modules = get_versionned_modules(package_name, module_name) version_dict, mod_to_api_version = build_operation_meta(versionned_modules) diff --git a/swagger_to_sdk_config.json b/swagger_to_sdk_config.json index 9083259187d9..87c5ea3883bc 100644 --- a/swagger_to_sdk_config.json +++ b/swagger_to_sdk_config.json @@ -1,4 +1,5 @@ { + "$schema": "https://raw.githubusercontent.com/lmazuel/swagger-to-sdk/master/swagger_to_sdk_config.schema.json", "meta": { "autorest_options": { "version": "preview", @@ -18,15 +19,6 @@ "wrapper_filesOrDirs": [ "azure-batch/azure/batch/batch_auth.py" ] - }, - "keyvault.data": { - "build_dir": "azure-keyvault", - "markdown": "specification/keyvault/data-plane/readme.md", - "wrapper_filesOrDirs": [ - "azure-keyvault/azure/keyvault/custom", - "azure-keyvault/azure/keyvault/generated", - "azure-keyvault/azure/keyvault/__init__.py" - ] } } }